[2026-06-22 00:00:01,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:00:01,863.863 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-22 00:00:06,816.816 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:00:06,819.819 INFO    ] Checking for system updates...
[2026-06-22 00:00:06,875.875 INFO    ] 200
[2026-06-22 00:00:06,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:00:06,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:00:06,978.978 INFO    ] No update needed
[2026-06-22 00:00:06,983.983 INFO    ] Checking for camera pi updates...
[2026-06-22 00:00:07,039.039 INFO    ] 200
[2026-06-22 00:00:07,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:00:07,115.115 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:00:07,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:00:07,220.220 INFO    ] No camera update needed
[2026-06-22 00:00:07,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:00:07,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:00:07,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:00:07,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:00:09,285.285 INFO    ] ================================================
[2026-06-22 00:00:09,303.303 INFO    ] Launching Daemon at Mon Jun 22 00:00:09 IST 2026
[2026-06-22 00:00:09,315.315 INFO    ] ================================================
[2026-06-22 00:00:09,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:00:09
[2026-06-22 00:00:10,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:00:10,864.864 INFO    ] Initializing speech engine...
[2026-06-22 00:00:10,875.875 INFO    ] 2026-06-22 00:00:10
[2026-06-22 00:00:11,147.147 INFO    ] 2026-06-22 00:00:11
[2026-06-22 00:00:11,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:00:11,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:00:11,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:00:11,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:00:11,637.637 INFO    ] time= 22/06/2026 00:00:11
[2026-06-22 00:00:11,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:00:11,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:00:11,788.788 INFO    ] No existing commands found in stream
[2026-06-22 00:00:16,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:00:16,804.804 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-22 00:00:17,637.637 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:00:17,640.640 INFO    ] Checking for system updates...
[2026-06-22 00:00:17,675.675 INFO    ] 200
[2026-06-22 00:00:17,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:00:17,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:00:17,732.732 INFO    ] No update needed
[2026-06-22 00:00:17,734.734 INFO    ] Checking for camera pi updates...
[2026-06-22 00:00:17,768.768 INFO    ] 200
[2026-06-22 00:00:17,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:00:17,811.811 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:00:17,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:00:17,860.860 INFO    ] No camera update needed
[2026-06-22 00:00:17,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:00:17,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:00:17,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:00:17,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:00:19,916.916 INFO    ] ================================================
[2026-06-22 00:00:25,458.458 INFO    ] Launching Daemon at Mon Jun 22 00:00:25 IST 2026
[2026-06-22 00:00:25,470.470 INFO    ] ================================================
[2026-06-22 00:00:26,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:00:26
[2026-06-22 00:00:26,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:00:27,109.109 INFO    ] Initializing speech engine...
[2026-06-22 00:00:27,120.120 INFO    ] 2026-06-22 00:00:27
[2026-06-22 00:00:27,417.417 INFO    ] 2026-06-22 00:00:27
[2026-06-22 00:00:27,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:00:27,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:00:27,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:00:27,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:00:27,834.834 INFO    ] time= 22/06/2026 00:00:27
[2026-06-22 00:00:27,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:00:27,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:00:28,003.003 INFO    ] No existing commands found in stream
[2026-06-22 00:00:33,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:00:33,031.031 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-22 00:00:35,741.741 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:00:35,744.744 INFO    ] Checking for system updates...
[2026-06-22 00:00:35,784.784 INFO    ] 200
[2026-06-22 00:00:35,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:00:35,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:00:35,850.850 INFO    ] No update needed
[2026-06-22 00:00:35,853.853 INFO    ] Checking for camera pi updates...
[2026-06-22 00:00:35,888.888 INFO    ] 200
[2026-06-22 00:00:35,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:00:35,932.932 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:00:36,015.015 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:00:36,018.018 INFO    ] No camera update needed
[2026-06-22 00:00:36,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:00:36,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:00:36,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:00:36,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:00:38,077.077 INFO    ] ================================================
[2026-06-22 00:00:38,106.106 INFO    ] Launching Daemon at Mon Jun 22 00:00:38 IST 2026
[2026-06-22 00:00:38,118.118 INFO    ] ================================================
[2026-06-22 00:00:38,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:00:38
[2026-06-22 00:00:39,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:00:39,614.614 INFO    ] Initializing speech engine...
[2026-06-22 00:00:39,622.622 INFO    ] 2026-06-22 00:00:39
[2026-06-22 00:00:39,898.898 INFO    ] 2026-06-22 00:00:39
[2026-06-22 00:00:39,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:00:40,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:00:40,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:00:40,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:00:40,362.362 INFO    ] time= 22/06/2026 00:00:40
[2026-06-22 00:00:40,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:00:40,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:00:40,501.501 INFO    ] No existing commands found in stream
[2026-06-22 00:00:45,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:00:45,516.516 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-22 00:00:49,346.346 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:00:49,352.352 INFO    ] Checking for system updates...
[2026-06-22 00:00:49,373.373 INFO    ] 200
[2026-06-22 00:00:49,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:00:49,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:00:49,407.407 INFO    ] No update needed
[2026-06-22 00:00:49,408.408 INFO    ] Checking for camera pi updates...
[2026-06-22 00:00:49,428.428 INFO    ] 200
[2026-06-22 00:00:49,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:00:49,459.459 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:00:49,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:00:49,533.533 INFO    ] No camera update needed
[2026-06-22 00:00:49,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:00:49,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:00:49,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:00:49,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:00:51,589.589 INFO    ] ================================================
[2026-06-22 00:00:51,605.605 INFO    ] Launching Daemon at Mon Jun 22 00:00:51 IST 2026
[2026-06-22 00:00:51,616.616 INFO    ] ================================================
[2026-06-22 00:00:52,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:00:52
[2026-06-22 00:00:52,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:00:53,031.031 INFO    ] Initializing speech engine...
[2026-06-22 00:00:53,044.044 INFO    ] 2026-06-22 00:00:53
[2026-06-22 00:00:53,322.322 INFO    ] 2026-06-22 00:00:53
[2026-06-22 00:00:53,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:00:53,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:00:53,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:00:53,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:00:53,860.860 INFO    ] time= 22/06/2026 00:00:53
[2026-06-22 00:00:53,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:00:53,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:00:53,995.995 INFO    ] No existing commands found in stream
[2026-06-22 00:00:59,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:00:59,027.027 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-22 00:01:00,827.827 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:01:00,830.830 INFO    ] Checking for system updates...
[2026-06-22 00:01:00,872.872 INFO    ] 200
[2026-06-22 00:01:00,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:01:00,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:01:00,931.931 INFO    ] No update needed
[2026-06-22 00:01:00,934.934 INFO    ] Checking for camera pi updates...
[2026-06-22 00:01:00,969.969 INFO    ] 200
[2026-06-22 00:01:00,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:01:01,013.013 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:01:01,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:01:01,104.104 INFO    ] No camera update needed
[2026-06-22 00:01:01,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:01:01,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:01:01,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:01:01,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:01:03,195.195 INFO    ] ================================================
[2026-06-22 00:01:03,210.210 INFO    ] Launching Daemon at Mon Jun 22 00:01:03 IST 2026
[2026-06-22 00:01:03,221.221 INFO    ] ================================================
[2026-06-22 00:01:03,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:01:03
[2026-06-22 00:01:04,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:01:04,625.625 INFO    ] Initializing speech engine...
[2026-06-22 00:01:04,630.630 INFO    ] 2026-06-22 00:01:04
[2026-06-22 00:01:04,904.904 INFO    ] 2026-06-22 00:01:04
[2026-06-22 00:01:04,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:01:05,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:01:05,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:01:05,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:01:05,356.356 INFO    ] time= 22/06/2026 00:01:05
[2026-06-22 00:01:05,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:01:05,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:01:05,533.533 INFO    ] No existing commands found in stream
[2026-06-22 00:01:10,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:01:10,548.548 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-22 00:01:13,090.090 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:01:13,093.093 INFO    ] Checking for system updates...
[2026-06-22 00:01:13,130.130 INFO    ] 200
[2026-06-22 00:01:13,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:01:13,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:01:13,189.189 INFO    ] No update needed
[2026-06-22 00:01:13,191.191 INFO    ] Checking for camera pi updates...
[2026-06-22 00:01:13,225.225 INFO    ] 200
[2026-06-22 00:01:13,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:01:13,274.274 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:01:13,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:01:13,350.350 INFO    ] No camera update needed
[2026-06-22 00:01:13,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:01:13,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:01:13,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:01:13,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:01:15,414.414 INFO    ] ================================================
[2026-06-22 00:01:15,429.429 INFO    ] Launching Daemon at Mon Jun 22 00:01:15 IST 2026
[2026-06-22 00:01:15,440.440 INFO    ] ================================================
[2026-06-22 00:01:16,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:01:16
[2026-06-22 00:01:16,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:01:16,913.913 INFO    ] Initializing speech engine...
[2026-06-22 00:01:16,920.920 INFO    ] 2026-06-22 00:01:16
[2026-06-22 00:01:17,194.194 INFO    ] 2026-06-22 00:01:17
[2026-06-22 00:01:17,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:01:17,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:01:17,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:01:17,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:01:17,674.674 INFO    ] time= 22/06/2026 00:01:17
[2026-06-22 00:01:17,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:01:17,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:01:17,870.870 INFO    ] No existing commands found in stream
[2026-06-22 00:01:22,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:01:22,906.906 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-22 00:01:25,988.988 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:01:25,991.991 INFO    ] Checking for system updates...
[2026-06-22 00:01:26,030.030 INFO    ] 200
[2026-06-22 00:01:26,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:01:26,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:01:26,091.091 INFO    ] No update needed
[2026-06-22 00:01:26,094.094 INFO    ] Checking for camera pi updates...
[2026-06-22 00:01:26,131.131 INFO    ] 200
[2026-06-22 00:01:26,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:01:26,179.179 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:01:26,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:01:26,229.229 INFO    ] No camera update needed
[2026-06-22 00:01:26,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:01:26,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:01:26,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:01:26,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:01:28,286.286 INFO    ] ================================================
[2026-06-22 00:01:28,302.302 INFO    ] Launching Daemon at Mon Jun 22 00:01:28 IST 2026
[2026-06-22 00:01:28,312.312 INFO    ] ================================================
[2026-06-22 00:01:28,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:01:28
[2026-06-22 00:01:29,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:01:29,628.628 INFO    ] Initializing speech engine...
[2026-06-22 00:01:29,634.634 INFO    ] 2026-06-22 00:01:29
[2026-06-22 00:01:29,922.922 INFO    ] 2026-06-22 00:01:29
[2026-06-22 00:01:29,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:01:30,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:01:30,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:01:30,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:01:30,305.305 INFO    ] time= 22/06/2026 00:01:30
[2026-06-22 00:01:30,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:01:30,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:01:30,408.408 INFO    ] No existing commands found in stream
[2026-06-22 00:01:35,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:01:35,424.424 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-22 00:01:39,036.036 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:01:39,038.038 INFO    ] Checking for system updates...
[2026-06-22 00:01:39,074.074 INFO    ] 200
[2026-06-22 00:01:39,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:01:39,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:01:39,135.135 INFO    ] No update needed
[2026-06-22 00:01:39,137.137 INFO    ] Checking for camera pi updates...
[2026-06-22 00:01:39,169.169 INFO    ] 200
[2026-06-22 00:01:39,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:01:39,201.201 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:01:39,282.282 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:01:39,284.284 INFO    ] No camera update needed
[2026-06-22 00:01:39,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:01:39,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:01:39,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:01:39,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:01:41,339.339 INFO    ] ================================================
[2026-06-22 00:01:41,354.354 INFO    ] Launching Daemon at Mon Jun 22 00:01:41 IST 2026
[2026-06-22 00:01:41,365.365 INFO    ] ================================================
[2026-06-22 00:01:41,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:01:41
[2026-06-22 00:01:42,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:01:42,949.949 INFO    ] Initializing speech engine...
[2026-06-22 00:01:42,962.962 INFO    ] 2026-06-22 00:01:42
[2026-06-22 00:01:43,237.237 INFO    ] 2026-06-22 00:01:43
[2026-06-22 00:01:43,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:01:43,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:01:43,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:01:43,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:01:43,775.775 INFO    ] time= 22/06/2026 00:01:43
[2026-06-22 00:01:43,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:01:43,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:01:43,916.916 INFO    ] No existing commands found in stream
[2026-06-22 00:01:48,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:01:48,944.944 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-22 00:01:50,602.602 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:01:50,605.605 INFO    ] Checking for system updates...
[2026-06-22 00:01:50,642.642 INFO    ] 200
[2026-06-22 00:01:50,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:01:50,697.697 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:01:50,699.699 INFO    ] No update needed
[2026-06-22 00:01:50,702.702 INFO    ] Checking for camera pi updates...
[2026-06-22 00:01:50,739.739 INFO    ] 200
[2026-06-22 00:01:50,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:01:50,782.782 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:01:50,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:01:50,965.965 INFO    ] No camera update needed
[2026-06-22 00:01:50,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:01:50,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:01:50,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:01:50,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:01:53,021.021 INFO    ] ================================================
[2026-06-22 00:01:53,037.037 INFO    ] Launching Daemon at Mon Jun 22 00:01:53 IST 2026
[2026-06-22 00:01:53,047.047 INFO    ] ================================================
[2026-06-22 00:01:53,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:01:53
[2026-06-22 00:01:54,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:01:54,570.570 INFO    ] Initializing speech engine...
[2026-06-22 00:01:54,584.584 INFO    ] 2026-06-22 00:01:54
[2026-06-22 00:01:54,864.864 INFO    ] 2026-06-22 00:01:54
[2026-06-22 00:01:54,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:01:55,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:01:55,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:01:55,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:01:55,330.330 INFO    ] time= 22/06/2026 00:01:55
[2026-06-22 00:01:55,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:01:55,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:01:55,499.499 INFO    ] No existing commands found in stream
[2026-06-22 00:02:00,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:02:00,515.515 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-22 00:02:03,064.064 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:02:03,067.067 INFO    ] Checking for system updates...
[2026-06-22 00:02:03,110.110 INFO    ] 200
[2026-06-22 00:02:03,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:02:03,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:02:03,178.178 INFO    ] No update needed
[2026-06-22 00:02:03,181.181 INFO    ] Checking for camera pi updates...
[2026-06-22 00:02:03,221.221 INFO    ] 200
[2026-06-22 00:02:03,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:02:03,280.280 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:02:03,333.333 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:02:03,337.337 INFO    ] No camera update needed
[2026-06-22 00:02:03,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:02:03,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:02:03,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:02:03,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:02:05,409.409 INFO    ] ================================================
[2026-06-22 00:02:05,425.425 INFO    ] Launching Daemon at Mon Jun 22 00:02:05 IST 2026
[2026-06-22 00:02:05,436.436 INFO    ] ================================================
[2026-06-22 00:02:06,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:02:06
[2026-06-22 00:02:06,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:02:07,159.159 INFO    ] Initializing speech engine...
[2026-06-22 00:02:07,171.171 INFO    ] 2026-06-22 00:02:07
[2026-06-22 00:02:07,459.459 INFO    ] 2026-06-22 00:02:07
[2026-06-22 00:02:07,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:02:07,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:02:07,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:02:07,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:02:07,954.954 INFO    ] time= 22/06/2026 00:02:07
[2026-06-22 00:02:08,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:02:08,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:02:08,135.135 INFO    ] No existing commands found in stream
[2026-06-22 00:02:13,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:02:13,172.172 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-22 00:02:15,368.368 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:02:15,371.371 INFO    ] Checking for system updates...
[2026-06-22 00:02:15,408.408 INFO    ] 200
[2026-06-22 00:02:15,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:02:15,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:02:15,468.468 INFO    ] No update needed
[2026-06-22 00:02:15,471.471 INFO    ] Checking for camera pi updates...
[2026-06-22 00:02:15,510.510 INFO    ] 200
[2026-06-22 00:02:15,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:02:15,555.555 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:02:15,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:02:15,634.634 INFO    ] No camera update needed
[2026-06-22 00:02:15,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:02:15,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:02:15,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:02:15,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:02:17,694.694 INFO    ] ================================================
[2026-06-22 00:02:17,710.710 INFO    ] Launching Daemon at Mon Jun 22 00:02:17 IST 2026
[2026-06-22 00:02:17,720.720 INFO    ] ================================================
[2026-06-22 00:02:18,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:02:18
[2026-06-22 00:02:18,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:02:19,059.059 INFO    ] Initializing speech engine...
[2026-06-22 00:02:19,067.067 INFO    ] 2026-06-22 00:02:19
[2026-06-22 00:02:19,368.368 INFO    ] 2026-06-22 00:02:19
[2026-06-22 00:02:19,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:02:19,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:02:19,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:02:19,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:02:19,754.754 INFO    ] time= 22/06/2026 00:02:19
[2026-06-22 00:02:19,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:02:19,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:02:19,882.882 INFO    ] No existing commands found in stream
[2026-06-22 00:02:24,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:02:24,897.897 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-22 00:02:27,163.163 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:02:27,166.166 INFO    ] Checking for system updates...
[2026-06-22 00:02:27,201.201 INFO    ] 200
[2026-06-22 00:02:27,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:02:27,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:02:27,245.245 INFO    ] No update needed
[2026-06-22 00:02:27,246.246 INFO    ] Checking for camera pi updates...
[2026-06-22 00:02:27,266.266 INFO    ] 200
[2026-06-22 00:02:27,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:02:27,291.291 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:02:27,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:02:27,368.368 INFO    ] No camera update needed
[2026-06-22 00:02:27,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:02:27,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:02:27,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:02:27,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:02:29,425.425 INFO    ] ================================================
[2026-06-22 00:02:29,440.440 INFO    ] Launching Daemon at Mon Jun 22 00:02:29 IST 2026
[2026-06-22 00:02:29,451.451 INFO    ] ================================================
[2026-06-22 00:02:30,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:02:30
[2026-06-22 00:02:30,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:02:30,825.825 INFO    ] Initializing speech engine...
[2026-06-22 00:02:30,844.844 INFO    ] 2026-06-22 00:02:30
[2026-06-22 00:02:31,122.122 INFO    ] 2026-06-22 00:02:31
[2026-06-22 00:02:31,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:02:31,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:02:31,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:02:31,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:02:31,506.506 INFO    ] time= 22/06/2026 00:02:31
[2026-06-22 00:02:31,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:02:31,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:02:31,636.636 INFO    ] No existing commands found in stream
[2026-06-22 00:02:36,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:02:36,649.649 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-22 00:02:39,507.507 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:02:39,510.510 INFO    ] Checking for system updates...
[2026-06-22 00:02:39,550.550 INFO    ] 200
[2026-06-22 00:02:39,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:02:39,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:02:39,610.610 INFO    ] No update needed
[2026-06-22 00:02:39,613.613 INFO    ] Checking for camera pi updates...
[2026-06-22 00:02:39,650.650 INFO    ] 200
[2026-06-22 00:02:39,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:02:39,699.699 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:02:39,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:02:39,783.783 INFO    ] No camera update needed
[2026-06-22 00:02:39,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:02:39,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:02:39,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:02:39,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:02:41,840.840 INFO    ] ================================================
[2026-06-22 00:02:41,855.855 INFO    ] Launching Daemon at Mon Jun 22 00:02:41 IST 2026
[2026-06-22 00:02:41,866.866 INFO    ] ================================================
[2026-06-22 00:02:42,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:02:42
[2026-06-22 00:02:43,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:02:43,497.497 INFO    ] Initializing speech engine...
[2026-06-22 00:02:43,504.504 INFO    ] 2026-06-22 00:02:43
[2026-06-22 00:02:43,786.786 INFO    ] 2026-06-22 00:02:43
[2026-06-22 00:02:43,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:02:44,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:02:44,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:02:44,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:02:44,156.156 INFO    ] time= 22/06/2026 00:02:44
[2026-06-22 00:02:44,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:02:44,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:02:44,239.239 INFO    ] No existing commands found in stream
[2026-06-22 00:02:49,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:02:49,253.253 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-22 00:02:52,895.895 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:02:52,896.896 INFO    ] Checking for system updates...
[2026-06-22 00:02:52,917.917 INFO    ] 200
[2026-06-22 00:02:52,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:02:52,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:02:52,957.957 INFO    ] No update needed
[2026-06-22 00:02:52,959.959 INFO    ] Checking for camera pi updates...
[2026-06-22 00:02:52,993.993 INFO    ] 200
[2026-06-22 00:02:52,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:02:53,036.036 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:02:53,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:02:53,120.120 INFO    ] No camera update needed
[2026-06-22 00:02:53,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:02:53,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:02:53,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:02:53,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:02:55,176.176 INFO    ] ================================================
[2026-06-22 00:02:55,193.193 INFO    ] Launching Daemon at Mon Jun 22 00:02:55 IST 2026
[2026-06-22 00:02:55,204.204 INFO    ] ================================================
[2026-06-22 00:02:55,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:02:55
[2026-06-22 00:02:56,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:02:56,745.745 INFO    ] Initializing speech engine...
[2026-06-22 00:02:56,754.754 INFO    ] 2026-06-22 00:02:56
[2026-06-22 00:02:57,006.006 INFO    ] 2026-06-22 00:02:56
[2026-06-22 00:02:57,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:02:57,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:02:57,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:02:57,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:02:57,492.492 INFO    ] time= 22/06/2026 00:02:57
[2026-06-22 00:02:57,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:02:57,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:02:57,642.642 INFO    ] No existing commands found in stream
[2026-06-22 00:03:02,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:03:02,658.658 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-22 00:03:05,541.541 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:03:05,544.544 INFO    ] Checking for system updates...
[2026-06-22 00:03:05,580.580 INFO    ] 200
[2026-06-22 00:03:05,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:03:05,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:03:05,638.638 INFO    ] No update needed
[2026-06-22 00:03:05,640.640 INFO    ] Checking for camera pi updates...
[2026-06-22 00:03:05,675.675 INFO    ] 200
[2026-06-22 00:03:05,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:03:05,723.723 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:03:05,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:03:05,828.828 INFO    ] No camera update needed
[2026-06-22 00:03:05,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:03:05,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:03:05,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:03:05,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:03:07,884.884 INFO    ] ================================================
[2026-06-22 00:03:07,900.900 INFO    ] Launching Daemon at Mon Jun 22 00:03:07 IST 2026
[2026-06-22 00:03:07,912.912 INFO    ] ================================================
[2026-06-22 00:03:08,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:03:08
[2026-06-22 00:03:09,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:03:09,369.369 INFO    ] Initializing speech engine...
[2026-06-22 00:03:09,380.380 INFO    ] 2026-06-22 00:03:09
[2026-06-22 00:03:09,630.630 INFO    ] 2026-06-22 00:03:09
[2026-06-22 00:03:09,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:03:09,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:03:09,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:03:09,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:03:10,004.004 INFO    ] time= 22/06/2026 00:03:09
[2026-06-22 00:03:10,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:03:10,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:03:10,201.201 INFO    ] No existing commands found in stream
[2026-06-22 00:03:15,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:03:15,215.215 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-22 00:03:17,988.988 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:03:17,991.991 INFO    ] Checking for system updates...
[2026-06-22 00:03:18,050.050 INFO    ] 200
[2026-06-22 00:03:18,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:03:18,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:03:18,117.117 INFO    ] No update needed
[2026-06-22 00:03:18,121.121 INFO    ] Checking for camera pi updates...
[2026-06-22 00:03:18,160.160 INFO    ] 200
[2026-06-22 00:03:18,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:03:18,210.210 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:03:18,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:03:18,293.293 INFO    ] No camera update needed
[2026-06-22 00:03:18,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:03:18,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:03:18,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:03:18,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:03:20,351.351 INFO    ] ================================================
[2026-06-22 00:03:20,367.367 INFO    ] Launching Daemon at Mon Jun 22 00:03:20 IST 2026
[2026-06-22 00:03:20,379.379 INFO    ] ================================================
[2026-06-22 00:03:20,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:03:20
[2026-06-22 00:03:21,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:03:21,815.815 INFO    ] Initializing speech engine...
[2026-06-22 00:03:21,824.824 INFO    ] 2026-06-22 00:03:21
[2026-06-22 00:03:22,082.082 INFO    ] 2026-06-22 00:03:22
[2026-06-22 00:03:22,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:03:22,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:03:22,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:03:22,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:03:22,566.566 INFO    ] time= 22/06/2026 00:03:22
[2026-06-22 00:03:22,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:03:22,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:03:22,767.767 INFO    ] No existing commands found in stream
[2026-06-22 00:03:27,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:03:27,795.795 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-22 00:03:29,271.271 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:03:29,273.273 INFO    ] Checking for system updates...
[2026-06-22 00:03:29,312.312 INFO    ] 200
[2026-06-22 00:03:29,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:03:29,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:03:29,378.378 INFO    ] No update needed
[2026-06-22 00:03:29,380.380 INFO    ] Checking for camera pi updates...
[2026-06-22 00:03:29,419.419 INFO    ] 200
[2026-06-22 00:03:29,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:03:29,470.470 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:03:29,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:03:29,569.569 INFO    ] No camera update needed
[2026-06-22 00:03:29,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:03:29,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:03:29,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:03:29,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:03:31,630.630 INFO    ] ================================================
[2026-06-22 00:03:31,646.646 INFO    ] Launching Daemon at Mon Jun 22 00:03:31 IST 2026
[2026-06-22 00:03:31,658.658 INFO    ] ================================================
[2026-06-22 00:03:32,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:03:32
[2026-06-22 00:03:32,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:03:33,141.141 INFO    ] Initializing speech engine...
[2026-06-22 00:03:33,151.151 INFO    ] 2026-06-22 00:03:33
[2026-06-22 00:03:33,459.459 INFO    ] 2026-06-22 00:03:33
[2026-06-22 00:03:33,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:03:33,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:03:33,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:03:33,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:03:33,832.832 INFO    ] time= 22/06/2026 00:03:33
[2026-06-22 00:03:33,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:03:33,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:03:33,957.957 INFO    ] No existing commands found in stream
[2026-06-22 00:03:38,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:03:38,969.969 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-22 00:03:42,283.283 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:03:42,285.285 INFO    ] Checking for system updates...
[2026-06-22 00:03:42,322.322 INFO    ] 200
[2026-06-22 00:03:42,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:03:42,379.379 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:03:42,382.382 INFO    ] No update needed
[2026-06-22 00:03:42,385.385 INFO    ] Checking for camera pi updates...
[2026-06-22 00:03:42,423.423 INFO    ] 200
[2026-06-22 00:03:42,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:03:42,472.472 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:03:42,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:03:42,550.550 INFO    ] No camera update needed
[2026-06-22 00:03:42,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:03:42,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:03:42,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:03:42,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:03:44,610.610 INFO    ] ================================================
[2026-06-22 00:03:44,625.625 INFO    ] Launching Daemon at Mon Jun 22 00:03:44 IST 2026
[2026-06-22 00:03:44,637.637 INFO    ] ================================================
[2026-06-22 00:03:45,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:03:45
[2026-06-22 00:03:45,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:03:46,003.003 INFO    ] Initializing speech engine...
[2026-06-22 00:03:46,018.018 INFO    ] 2026-06-22 00:03:46
[2026-06-22 00:03:46,301.301 INFO    ] 2026-06-22 00:03:46
[2026-06-22 00:03:46,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:03:46,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:03:46,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:03:46,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:03:46,698.698 INFO    ] time= 22/06/2026 00:03:46
[2026-06-22 00:03:46,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:03:46,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:03:46,804.804 INFO    ] No existing commands found in stream
[2026-06-22 00:03:51,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:03:51,819.819 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-22 00:03:52,738.738 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:03:52,740.740 INFO    ] Checking for system updates...
[2026-06-22 00:03:52,786.786 INFO    ] 200
[2026-06-22 00:03:52,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:03:52,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:03:52,851.851 INFO    ] No update needed
[2026-06-22 00:03:52,853.853 INFO    ] Checking for camera pi updates...
[2026-06-22 00:03:52,891.891 INFO    ] 200
[2026-06-22 00:03:52,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:03:52,935.935 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:03:53,125.125 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:03:53,127.127 INFO    ] No camera update needed
[2026-06-22 00:03:53,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:03:53,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:03:53,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:03:53,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:03:55,184.184 INFO    ] ================================================
[2026-06-22 00:03:55,203.203 INFO    ] Launching Daemon at Mon Jun 22 00:03:55 IST 2026
[2026-06-22 00:03:55,214.214 INFO    ] ================================================
[2026-06-22 00:03:55,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:03:55
[2026-06-22 00:03:56,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:03:56,769.769 INFO    ] Initializing speech engine...
[2026-06-22 00:03:56,783.783 INFO    ] 2026-06-22 00:03:56
[2026-06-22 00:03:57,066.066 INFO    ] 2026-06-22 00:03:57
[2026-06-22 00:03:57,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:03:57,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:03:57,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:03:57,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:03:57,528.528 INFO    ] time= 22/06/2026 00:03:57
[2026-06-22 00:03:57,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:03:57,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:03:57,729.729 INFO    ] No existing commands found in stream
[2026-06-22 00:04:02,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:04:02,761.761 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-22 00:04:04,470.470 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:04:04,473.473 INFO    ] Checking for system updates...
[2026-06-22 00:04:04,511.511 INFO    ] 200
[2026-06-22 00:04:04,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:04:04,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:04:04,570.570 INFO    ] No update needed
[2026-06-22 00:04:04,573.573 INFO    ] Checking for camera pi updates...
[2026-06-22 00:04:04,609.609 INFO    ] 200
[2026-06-22 00:04:04,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:04:04,653.653 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:04:04,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:04:04,703.703 INFO    ] No camera update needed
[2026-06-22 00:04:04,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:04:04,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:04:04,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:04:04,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:04:06,761.761 INFO    ] ================================================
[2026-06-22 00:04:06,777.777 INFO    ] Launching Daemon at Mon Jun 22 00:04:06 IST 2026
[2026-06-22 00:04:06,789.789 INFO    ] ================================================
[2026-06-22 00:04:07,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:04:07
[2026-06-22 00:04:08,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:04:08,414.414 INFO    ] Initializing speech engine...
[2026-06-22 00:04:08,420.420 INFO    ] 2026-06-22 00:04:08
[2026-06-22 00:04:08,693.693 INFO    ] 2026-06-22 00:04:08
[2026-06-22 00:04:08,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:04:08,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:04:08,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:04:09,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:04:09,160.160 INFO    ] time= 22/06/2026 00:04:09
[2026-06-22 00:04:09,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:04:09,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:04:09,328.328 INFO    ] No existing commands found in stream
[2026-06-22 00:04:14,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:04:14,365.365 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-22 00:04:15,845.845 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:04:15,848.848 INFO    ] Checking for system updates...
[2026-06-22 00:04:15,885.885 INFO    ] 200
[2026-06-22 00:04:15,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:04:15,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:04:15,951.951 INFO    ] No update needed
[2026-06-22 00:04:15,953.953 INFO    ] Checking for camera pi updates...
[2026-06-22 00:04:15,989.989 INFO    ] 200
[2026-06-22 00:04:15,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:04:16,036.036 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:04:16,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:04:16,139.139 INFO    ] No camera update needed
[2026-06-22 00:04:16,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:04:16,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:04:16,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:04:16,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:04:18,195.195 INFO    ] ================================================
[2026-06-22 00:04:18,210.210 INFO    ] Launching Daemon at Mon Jun 22 00:04:18 IST 2026
[2026-06-22 00:04:18,222.222 INFO    ] ================================================
[2026-06-22 00:04:18,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:04:18
[2026-06-22 00:04:19,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:04:19,561.561 INFO    ] Initializing speech engine...
[2026-06-22 00:04:19,566.566 INFO    ] 2026-06-22 00:04:19
[2026-06-22 00:04:19,811.811 INFO    ] 2026-06-22 00:04:19
[2026-06-22 00:04:19,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:04:20,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:04:20,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:04:20,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:04:20,180.180 INFO    ] time= 22/06/2026 00:04:20
[2026-06-22 00:04:20,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:04:20,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:04:20,348.348 INFO    ] No existing commands found in stream
[2026-06-22 00:04:25,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:04:25,387.387 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-22 00:04:28,645.645 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:04:28,648.648 INFO    ] Checking for system updates...
[2026-06-22 00:04:28,684.684 INFO    ] 200
[2026-06-22 00:04:28,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:04:28,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:04:28,741.741 INFO    ] No update needed
[2026-06-22 00:04:28,744.744 INFO    ] Checking for camera pi updates...
[2026-06-22 00:04:28,778.778 INFO    ] 200
[2026-06-22 00:04:28,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:04:28,809.809 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:04:28,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:04:28,911.911 INFO    ] No camera update needed
[2026-06-22 00:04:28,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:04:28,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:04:28,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:04:28,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:04:30,969.969 INFO    ] ================================================
[2026-06-22 00:04:30,984.984 INFO    ] Launching Daemon at Mon Jun 22 00:04:30 IST 2026
[2026-06-22 00:04:31,995.995 INFO    ] ================================================
[2026-06-22 00:04:31,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:04:31
[2026-06-22 00:04:32,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:04:32,521.521 INFO    ] Initializing speech engine...
[2026-06-22 00:04:32,537.537 INFO    ] 2026-06-22 00:04:32
[2026-06-22 00:04:32,826.826 INFO    ] 2026-06-22 00:04:32
[2026-06-22 00:04:32,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:04:33,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:04:33,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:04:33,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:04:33,228.228 INFO    ] time= 22/06/2026 00:04:33
[2026-06-22 00:04:33,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:04:33,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:04:33,394.394 INFO    ] No existing commands found in stream
[2026-06-22 00:04:38,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:04:38,428.428 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-22 00:04:42,728.728 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:04:42,729.729 INFO    ] Checking for system updates...
[2026-06-22 00:04:42,750.750 INFO    ] 200
[2026-06-22 00:04:42,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:04:42,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:04:42,784.784 INFO    ] No update needed
[2026-06-22 00:04:42,786.786 INFO    ] Checking for camera pi updates...
[2026-06-22 00:04:42,806.806 INFO    ] 200
[2026-06-22 00:04:42,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:04:42,841.841 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:04:42,921.921 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:04:42,923.923 INFO    ] No camera update needed
[2026-06-22 00:04:42,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:04:42,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:04:42,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:04:42,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:04:44,978.978 INFO    ] ================================================
[2026-06-22 00:04:44,994.994 INFO    ] Launching Daemon at Mon Jun 22 00:04:44 IST 2026
[2026-06-22 00:04:45,004.004 INFO    ] ================================================
[2026-06-22 00:04:45,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:04:45
[2026-06-22 00:04:46,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:04:46,415.415 INFO    ] Initializing speech engine...
[2026-06-22 00:04:46,423.423 INFO    ] 2026-06-22 00:04:46
[2026-06-22 00:04:46,700.700 INFO    ] 2026-06-22 00:04:46
[2026-06-22 00:04:46,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:04:46,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:04:46,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:04:47,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:04:47,097.097 INFO    ] time= 22/06/2026 00:04:47
[2026-06-22 00:04:47,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:04:47,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:04:47,184.184 INFO    ] No existing commands found in stream
[2026-06-22 00:04:52,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:04:52,202.202 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-22 00:04:53,848.848 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:04:53,851.851 INFO    ] Checking for system updates...
[2026-06-22 00:04:53,886.886 INFO    ] 200
[2026-06-22 00:04:53,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:04:53,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:04:53,950.950 INFO    ] No update needed
[2026-06-22 00:04:53,952.952 INFO    ] Checking for camera pi updates...
[2026-06-22 00:04:53,989.989 INFO    ] 200
[2026-06-22 00:04:53,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:04:54,036.036 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:04:54,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:04:54,126.126 INFO    ] No camera update needed
[2026-06-22 00:04:54,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:04:54,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:04:54,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:04:54,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:04:56,184.184 INFO    ] ================================================
[2026-06-22 00:04:56,200.200 INFO    ] Launching Daemon at Mon Jun 22 00:04:56 IST 2026
[2026-06-22 00:04:56,210.210 INFO    ] ================================================
[2026-06-22 00:04:56,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:04:56
[2026-06-22 00:04:57,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:04:57,727.727 INFO    ] Initializing speech engine...
[2026-06-22 00:04:57,736.736 INFO    ] 2026-06-22 00:04:57
[2026-06-22 00:04:58,009.009 INFO    ] 2026-06-22 00:04:58
[2026-06-22 00:04:58,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:04:58,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:04:58,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:04:58,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:04:58,503.503 INFO    ] time= 22/06/2026 00:04:58
[2026-06-22 00:04:58,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:04:58,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:04:58,705.705 INFO    ] No existing commands found in stream
[2026-06-22 00:05:03,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:05:03,730.730 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-22 00:05:04,505.505 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:05:04,508.508 INFO    ] Checking for system updates...
[2026-06-22 00:05:04,546.546 INFO    ] 200
[2026-06-22 00:05:04,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:05:04,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:05:04,606.606 INFO    ] No update needed
[2026-06-22 00:05:04,609.609 INFO    ] Checking for camera pi updates...
[2026-06-22 00:05:04,644.644 INFO    ] 200
[2026-06-22 00:05:04,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:05:04,690.690 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:05:04,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:05:04,768.768 INFO    ] No camera update needed
[2026-06-22 00:05:04,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:05:04,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:05:04,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:05:04,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:05:06,826.826 INFO    ] ================================================
[2026-06-22 00:05:06,842.842 INFO    ] Launching Daemon at Mon Jun 22 00:05:06 IST 2026
[2026-06-22 00:05:06,853.853 INFO    ] ================================================
[2026-06-22 00:05:07,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:05:07
[2026-06-22 00:05:08,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:05:08,292.292 INFO    ] Initializing speech engine...
[2026-06-22 00:05:08,302.302 INFO    ] 2026-06-22 00:05:08
[2026-06-22 00:05:08,568.568 INFO    ] 2026-06-22 00:05:08
[2026-06-22 00:05:08,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:05:08,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:05:08,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:05:08,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:05:08,981.981 INFO    ] time= 22/06/2026 00:05:08
[2026-06-22 00:05:08,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:05:08,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:05:09,065.065 INFO    ] No existing commands found in stream
[2026-06-22 00:05:14,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:05:14,081.081 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-22 00:05:15,938.938 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:05:15,941.941 INFO    ] Checking for system updates...
[2026-06-22 00:05:15,977.977 INFO    ] 200
[2026-06-22 00:05:15,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:05:16,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:05:16,035.035 INFO    ] No update needed
[2026-06-22 00:05:16,038.038 INFO    ] Checking for camera pi updates...
[2026-06-22 00:05:16,071.071 INFO    ] 200
[2026-06-22 00:05:16,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:05:16,119.119 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:05:16,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:05:16,198.198 INFO    ] No camera update needed
[2026-06-22 00:05:16,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:05:16,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:05:16,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:05:16,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:05:18,252.252 INFO    ] ================================================
[2026-06-22 00:05:18,268.268 INFO    ] Launching Daemon at Mon Jun 22 00:05:18 IST 2026
[2026-06-22 00:05:18,279.279 INFO    ] ================================================
[2026-06-22 00:05:18,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:05:18
[2026-06-22 00:05:19,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:05:19,764.764 INFO    ] Initializing speech engine...
[2026-06-22 00:05:19,770.770 INFO    ] 2026-06-22 00:05:19
[2026-06-22 00:05:20,041.041 INFO    ] 2026-06-22 00:05:20
[2026-06-22 00:05:20,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:05:20,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:05:20,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:05:20,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:05:20,535.535 INFO    ] time= 22/06/2026 00:05:20
[2026-06-22 00:05:20,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:05:20,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:05:20,733.733 INFO    ] No existing commands found in stream
[2026-06-22 00:05:25,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:05:25,772.772 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-22 00:05:29,924.924 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:05:29,926.926 INFO    ] Checking for system updates...
[2026-06-22 00:05:29,955.955 INFO    ] 200
[2026-06-22 00:05:29,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:05:30,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:05:30,020.020 INFO    ] No update needed
[2026-06-22 00:05:30,023.023 INFO    ] Checking for camera pi updates...
[2026-06-22 00:05:30,057.057 INFO    ] 200
[2026-06-22 00:05:30,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:05:30,104.104 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:05:30,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:05:30,200.200 INFO    ] No camera update needed
[2026-06-22 00:05:30,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:05:30,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:05:30,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:05:30,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:05:32,258.258 INFO    ] ================================================
[2026-06-22 00:05:32,274.274 INFO    ] Launching Daemon at Mon Jun 22 00:05:32 IST 2026
[2026-06-22 00:05:32,285.285 INFO    ] ================================================
[2026-06-22 00:05:32,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:05:32
[2026-06-22 00:05:33,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:05:33,750.750 INFO    ] Initializing speech engine...
[2026-06-22 00:05:33,762.762 INFO    ] 2026-06-22 00:05:33
[2026-06-22 00:05:34,031.031 INFO    ] 2026-06-22 00:05:34
[2026-06-22 00:05:34,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:05:34,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:05:34,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:05:34,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:05:34,527.527 INFO    ] time= 22/06/2026 00:05:34
[2026-06-22 00:05:34,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:05:34,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:05:34,706.706 INFO    ] No existing commands found in stream
[2026-06-22 00:05:39,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:05:39,740.740 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-22 00:05:40,742.742 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:05:40,744.744 INFO    ] Checking for system updates...
[2026-06-22 00:05:40,780.780 INFO    ] 200
[2026-06-22 00:05:40,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:05:40,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:05:40,839.839 INFO    ] No update needed
[2026-06-22 00:05:40,841.841 INFO    ] Checking for camera pi updates...
[2026-06-22 00:05:40,875.875 INFO    ] 200
[2026-06-22 00:05:40,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:05:40,917.917 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:05:41,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:05:41,009.009 INFO    ] No camera update needed
[2026-06-22 00:05:41,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:05:41,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:05:41,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:05:41,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:05:43,066.066 INFO    ] ================================================
[2026-06-22 00:05:43,084.084 INFO    ] Launching Daemon at Mon Jun 22 00:05:43 IST 2026
[2026-06-22 00:05:43,095.095 INFO    ] ================================================
[2026-06-22 00:05:43,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:05:43
[2026-06-22 00:05:44,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:05:44,420.420 INFO    ] Initializing speech engine...
[2026-06-22 00:05:44,445.445 INFO    ] 2026-06-22 00:05:44
[2026-06-22 00:05:44,713.713 INFO    ] 2026-06-22 00:05:44
[2026-06-22 00:05:44,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:05:44,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:05:44,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:05:45,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:05:45,081.081 INFO    ] time= 22/06/2026 00:05:45
[2026-06-22 00:05:45,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:05:45,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:05:45,205.205 INFO    ] No existing commands found in stream
[2026-06-22 00:05:50,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:05:50,220.220 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-22 00:05:50,746.746 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:05:50,749.749 INFO    ] Checking for system updates...
[2026-06-22 00:05:50,791.791 INFO    ] 200
[2026-06-22 00:05:50,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:05:50,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:05:50,862.862 INFO    ] No update needed
[2026-06-22 00:05:50,865.865 INFO    ] Checking for camera pi updates...
[2026-06-22 00:05:50,905.905 INFO    ] 200
[2026-06-22 00:05:50,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:05:50,969.969 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:05:51,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:05:51,073.073 INFO    ] No camera update needed
[2026-06-22 00:05:51,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:05:51,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:05:51,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:05:51,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:05:53,131.131 INFO    ] ================================================
[2026-06-22 00:05:53,147.147 INFO    ] Launching Daemon at Mon Jun 22 00:05:53 IST 2026
[2026-06-22 00:05:53,158.158 INFO    ] ================================================
[2026-06-22 00:05:53,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:05:53
[2026-06-22 00:05:54,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:05:54,623.623 INFO    ] Initializing speech engine...
[2026-06-22 00:05:54,630.630 INFO    ] 2026-06-22 00:05:54
[2026-06-22 00:05:54,903.903 INFO    ] 2026-06-22 00:05:54
[2026-06-22 00:05:54,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:05:55,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:05:55,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:05:55,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:05:55,393.393 INFO    ] time= 22/06/2026 00:05:55
[2026-06-22 00:05:55,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:05:55,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:05:55,602.602 INFO    ] No existing commands found in stream
[2026-06-22 00:06:00,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:06:00,632.632 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-22 00:06:03,384.384 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:06:03,387.387 INFO    ] Checking for system updates...
[2026-06-22 00:06:03,432.432 INFO    ] 200
[2026-06-22 00:06:03,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:06:03,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:06:03,503.503 INFO    ] No update needed
[2026-06-22 00:06:03,506.506 INFO    ] Checking for camera pi updates...
[2026-06-22 00:06:03,548.548 INFO    ] 200
[2026-06-22 00:06:03,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:06:03,597.597 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:06:03,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:06:03,682.682 INFO    ] No camera update needed
[2026-06-22 00:06:03,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:06:03,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:06:03,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:06:03,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:06:05,742.742 INFO    ] ================================================
[2026-06-22 00:06:05,758.758 INFO    ] Launching Daemon at Mon Jun 22 00:06:05 IST 2026
[2026-06-22 00:06:05,769.769 INFO    ] ================================================
[2026-06-22 00:06:06,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:06:06
[2026-06-22 00:06:07,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:06:07,353.353 INFO    ] Initializing speech engine...
[2026-06-22 00:06:07,362.362 INFO    ] 2026-06-22 00:06:07
[2026-06-22 00:06:07,638.638 INFO    ] 2026-06-22 00:06:07
[2026-06-22 00:06:07,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:06:07,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:06:07,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:06:08,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:06:08,126.126 INFO    ] time= 22/06/2026 00:06:08
[2026-06-22 00:06:08,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:06:08,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:06:08,311.311 INFO    ] No existing commands found in stream
[2026-06-22 00:06:13,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:06:13,350.350 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-22 00:06:13,988.988 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:06:13,989.989 INFO    ] Checking for system updates...
[2026-06-22 00:06:14,010.010 INFO    ] 200
[2026-06-22 00:06:14,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:06:14,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:06:14,056.056 INFO    ] No update needed
[2026-06-22 00:06:14,058.058 INFO    ] Checking for camera pi updates...
[2026-06-22 00:06:14,092.092 INFO    ] 200
[2026-06-22 00:06:14,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:06:14,136.136 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:06:14,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:06:14,215.215 INFO    ] No camera update needed
[2026-06-22 00:06:14,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:06:14,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:06:14,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:06:14,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:06:16,270.270 INFO    ] ================================================
[2026-06-22 00:06:16,285.285 INFO    ] Launching Daemon at Mon Jun 22 00:06:16 IST 2026
[2026-06-22 00:06:16,296.296 INFO    ] ================================================
[2026-06-22 00:06:16,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:06:16
[2026-06-22 00:06:17,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:06:17,673.673 INFO    ] Initializing speech engine...
[2026-06-22 00:06:17,680.680 INFO    ] 2026-06-22 00:06:17
[2026-06-22 00:06:17,940.940 INFO    ] 2026-06-22 00:06:17
[2026-06-22 00:06:17,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:06:18,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:06:18,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:06:18,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:06:18,346.346 INFO    ] time= 22/06/2026 00:06:18
[2026-06-22 00:06:18,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:06:18,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:06:18,525.525 INFO    ] No existing commands found in stream
[2026-06-22 00:06:23,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:06:23,554.554 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-22 00:06:28,007.007 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:06:28,010.010 INFO    ] Checking for system updates...
[2026-06-22 00:06:28,047.047 INFO    ] 200
[2026-06-22 00:06:28,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:06:28,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:06:28,131.131 INFO    ] No update needed
[2026-06-22 00:06:28,133.133 INFO    ] Checking for camera pi updates...
[2026-06-22 00:06:28,189.189 INFO    ] 200
[2026-06-22 00:06:28,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:06:28,232.232 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:06:28,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:06:28,324.324 INFO    ] No camera update needed
[2026-06-22 00:06:28,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:06:28,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:06:28,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:06:28,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:06:30,381.381 INFO    ] ================================================
[2026-06-22 00:06:30,397.397 INFO    ] Launching Daemon at Mon Jun 22 00:06:30 IST 2026
[2026-06-22 00:06:30,408.408 INFO    ] ================================================
[2026-06-22 00:06:30,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:06:30
[2026-06-22 00:06:31,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:06:31,871.871 INFO    ] Initializing speech engine...
[2026-06-22 00:06:31,876.876 INFO    ] 2026-06-22 00:06:31
[2026-06-22 00:06:32,166.166 INFO    ] 2026-06-22 00:06:32
[2026-06-22 00:06:32,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:06:32,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:06:32,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:06:32,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:06:32,542.542 INFO    ] time= 22/06/2026 00:06:32
[2026-06-22 00:06:32,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:06:32,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:06:32,629.629 INFO    ] No existing commands found in stream
[2026-06-22 00:06:37,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:06:37,673.673 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-22 00:06:39,191.191 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:06:39,193.193 INFO    ] Checking for system updates...
[2026-06-22 00:06:39,230.230 INFO    ] 200
[2026-06-22 00:06:39,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:06:39,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:06:39,288.288 INFO    ] No update needed
[2026-06-22 00:06:39,290.290 INFO    ] Checking for camera pi updates...
[2026-06-22 00:06:39,323.323 INFO    ] 200
[2026-06-22 00:06:39,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:06:39,363.363 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:06:39,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:06:39,437.437 INFO    ] No camera update needed
[2026-06-22 00:06:39,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:06:39,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:06:39,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:06:39,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:06:41,492.492 INFO    ] ================================================
[2026-06-22 00:06:41,508.508 INFO    ] Launching Daemon at Mon Jun 22 00:06:41 IST 2026
[2026-06-22 00:06:41,518.518 INFO    ] ================================================
[2026-06-22 00:06:42,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:06:42
[2026-06-22 00:06:42,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:06:42,927.927 INFO    ] Initializing speech engine...
[2026-06-22 00:06:42,943.943 INFO    ] 2026-06-22 00:06:42
[2026-06-22 00:06:43,231.231 INFO    ] 2026-06-22 00:06:43
[2026-06-22 00:06:43,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:06:43,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:06:43,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:06:43,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:06:43,618.618 INFO    ] time= 22/06/2026 00:06:43
[2026-06-22 00:06:43,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:06:43,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:06:43,743.743 INFO    ] No existing commands found in stream
[2026-06-22 00:06:48,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:06:48,758.758 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-22 00:06:52,260.260 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:06:52,263.263 INFO    ] Checking for system updates...
[2026-06-22 00:06:52,300.300 INFO    ] 200
[2026-06-22 00:06:52,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:06:52,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:06:52,365.365 INFO    ] No update needed
[2026-06-22 00:06:52,367.367 INFO    ] Checking for camera pi updates...
[2026-06-22 00:06:52,401.401 INFO    ] 200
[2026-06-22 00:06:52,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:06:52,449.449 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:06:52,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:06:52,534.534 INFO    ] No camera update needed
[2026-06-22 00:06:52,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:06:52,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:06:52,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:06:52,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:06:54,589.589 INFO    ] ================================================
[2026-06-22 00:06:54,604.604 INFO    ] Launching Daemon at Mon Jun 22 00:06:54 IST 2026
[2026-06-22 00:06:54,615.615 INFO    ] ================================================
[2026-06-22 00:06:55,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:06:55
[2026-06-22 00:06:55,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:06:56,095.095 INFO    ] Initializing speech engine...
[2026-06-22 00:06:56,103.103 INFO    ] 2026-06-22 00:06:56
[2026-06-22 00:06:56,366.366 INFO    ] 2026-06-22 00:06:56
[2026-06-22 00:06:56,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:06:56,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:06:56,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:06:56,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:06:56,820.820 INFO    ] time= 22/06/2026 00:06:56
[2026-06-22 00:06:56,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:06:56,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:06:56,971.971 INFO    ] No existing commands found in stream
[2026-06-22 00:07:01,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:07:01,990.990 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-22 00:07:07,994.994 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:07:07,997.997 INFO    ] Checking for system updates...
[2026-06-22 00:07:08,033.033 INFO    ] 200
[2026-06-22 00:07:08,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 00:07:08,038.038 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-22 00:07:08,041.041 INFO    ] Checking for camera pi updates...
[2026-06-22 00:07:08,080.080 INFO    ] 200
[2026-06-22 00:07:08,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 00:07:08,085.085 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-22 00:07:08,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:07:08,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:07:08,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:07:08,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:07:10,143.143 INFO    ] ================================================
[2026-06-22 00:07:10,158.158 INFO    ] Launching Daemon at Mon Jun 22 00:07:10 IST 2026
[2026-06-22 00:07:10,169.169 INFO    ] ================================================
[2026-06-22 00:07:10,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:07:10
[2026-06-22 00:07:11,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:07:11,600.600 INFO    ] Initializing speech engine...
[2026-06-22 00:07:11,608.608 INFO    ] 2026-06-22 00:07:11
[2026-06-22 00:07:11,907.907 INFO    ] 2026-06-22 00:07:11
[2026-06-22 00:07:11,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:07:12,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:07:12,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:07:12,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:07:12,296.296 INFO    ] time= 22/06/2026 00:07:12
[2026-06-22 00:07:12,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:07:12,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:07:12,423.423 INFO    ] No existing commands found in stream
[2026-06-22 00:07:17,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:07:17,438.438 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-22 00:07:21,454.454 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:07:21,457.457 INFO    ] Checking for system updates...
[2026-06-22 00:07:21,493.493 INFO    ] 200
[2026-06-22 00:07:21,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:07:21,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:07:21,554.554 INFO    ] No update needed
[2026-06-22 00:07:21,557.557 INFO    ] Checking for camera pi updates...
[2026-06-22 00:07:21,592.592 INFO    ] 200
[2026-06-22 00:07:21,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:07:21,637.637 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:07:21,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:07:21,735.735 INFO    ] No camera update needed
[2026-06-22 00:07:21,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:07:21,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:07:21,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:07:21,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:07:23,795.795 INFO    ] ================================================
[2026-06-22 00:07:23,811.811 INFO    ] Launching Daemon at Mon Jun 22 00:07:23 IST 2026
[2026-06-22 00:07:23,823.823 INFO    ] ================================================
[2026-06-22 00:07:24,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:07:24
[2026-06-22 00:07:24,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:07:25,248.248 INFO    ] Initializing speech engine...
[2026-06-22 00:07:25,255.255 INFO    ] 2026-06-22 00:07:25
[2026-06-22 00:07:25,523.523 INFO    ] 2026-06-22 00:07:25
[2026-06-22 00:07:25,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:07:25,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:07:25,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:07:25,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:07:25,986.986 INFO    ] time= 22/06/2026 00:07:25
[2026-06-22 00:07:26,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:07:26,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:07:26,191.191 INFO    ] No existing commands found in stream
[2026-06-22 00:07:31,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:07:31,206.206 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-22 00:07:32,194.194 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:07:32,197.197 INFO    ] Checking for system updates...
[2026-06-22 00:07:32,245.245 INFO    ] 200
[2026-06-22 00:07:32,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:07:32,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:07:32,321.321 INFO    ] No update needed
[2026-06-22 00:07:32,325.325 INFO    ] Checking for camera pi updates...
[2026-06-22 00:07:32,388.388 INFO    ] 200
[2026-06-22 00:07:32,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:07:32,444.444 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:07:32,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:07:32,502.502 INFO    ] No camera update needed
[2026-06-22 00:07:32,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:07:32,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:07:32,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:07:32,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:07:34,566.566 INFO    ] ================================================
[2026-06-22 00:07:34,581.581 INFO    ] Launching Daemon at Mon Jun 22 00:07:34 IST 2026
[2026-06-22 00:07:34,592.592 INFO    ] ================================================
[2026-06-22 00:07:35,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:07:35
[2026-06-22 00:07:35,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:07:36,000.000 INFO    ] Initializing speech engine...
[2026-06-22 00:07:36,022.022 INFO    ] 2026-06-22 00:07:36
[2026-06-22 00:07:36,282.282 INFO    ] 2026-06-22 00:07:36
[2026-06-22 00:07:36,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:07:36,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:07:36,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:07:36,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:07:36,759.759 INFO    ] time= 22/06/2026 00:07:36
[2026-06-22 00:07:36,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:07:36,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:07:36,887.887 INFO    ] No existing commands found in stream
[2026-06-22 00:07:41,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:07:41,917.917 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-22 00:07:45,188.188 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:07:45,189.189 INFO    ] Checking for system updates...
[2026-06-22 00:07:45,213.213 INFO    ] 200
[2026-06-22 00:07:45,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:07:45,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:07:45,251.251 INFO    ] No update needed
[2026-06-22 00:07:45,253.253 INFO    ] Checking for camera pi updates...
[2026-06-22 00:07:45,287.287 INFO    ] 200
[2026-06-22 00:07:45,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:07:45,330.330 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:07:45,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:07:45,413.413 INFO    ] No camera update needed
[2026-06-22 00:07:45,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:07:45,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:07:45,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:07:45,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:07:47,471.471 INFO    ] ================================================
[2026-06-22 00:07:47,486.486 INFO    ] Launching Daemon at Mon Jun 22 00:07:47 IST 2026
[2026-06-22 00:07:47,497.497 INFO    ] ================================================
[2026-06-22 00:07:48,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:07:48
[2026-06-22 00:07:48,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:07:48,905.905 INFO    ] Initializing speech engine...
[2026-06-22 00:07:48,921.921 INFO    ] 2026-06-22 00:07:48
[2026-06-22 00:07:49,199.199 INFO    ] 2026-06-22 00:07:49
[2026-06-22 00:07:49,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:07:49,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:07:49,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:07:49,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:07:49,569.569 INFO    ] time= 22/06/2026 00:07:49
[2026-06-22 00:07:49,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:07:49,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:07:49,691.691 INFO    ] No existing commands found in stream
[2026-06-22 00:07:54,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:07:54,706.706 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-22 00:07:55,223.223 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:07:55,226.226 INFO    ] Checking for system updates...
[2026-06-22 00:07:55,262.262 INFO    ] 200
[2026-06-22 00:07:55,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:07:55,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:07:55,321.321 INFO    ] No update needed
[2026-06-22 00:07:55,323.323 INFO    ] Checking for camera pi updates...
[2026-06-22 00:07:55,357.357 INFO    ] 200
[2026-06-22 00:07:55,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:07:55,404.404 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:07:55,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:07:55,497.497 INFO    ] No camera update needed
[2026-06-22 00:07:55,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:07:55,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:07:55,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:07:55,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:07:57,552.552 INFO    ] ================================================
[2026-06-22 00:07:57,568.568 INFO    ] Launching Daemon at Mon Jun 22 00:07:57 IST 2026
[2026-06-22 00:07:57,579.579 INFO    ] ================================================
[2026-06-22 00:07:58,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:07:58
[2026-06-22 00:07:58,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:07:58,961.961 INFO    ] Initializing speech engine...
[2026-06-22 00:07:58,973.973 INFO    ] 2026-06-22 00:07:58
[2026-06-22 00:07:59,251.251 INFO    ] 2026-06-22 00:07:59
[2026-06-22 00:07:59,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:07:59,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:07:59,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:07:59,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:07:59,785.785 INFO    ] time= 22/06/2026 00:07:59
[2026-06-22 00:07:59,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:07:59,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:07:59,945.945 INFO    ] No existing commands found in stream
[2026-06-22 00:08:04,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:08:04,973.973 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-22 00:08:05,636.636 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:08:05,639.639 INFO    ] Checking for system updates...
[2026-06-22 00:08:05,677.677 INFO    ] 200
[2026-06-22 00:08:05,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:08:05,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:08:05,745.745 INFO    ] No update needed
[2026-06-22 00:08:05,748.748 INFO    ] Checking for camera pi updates...
[2026-06-22 00:08:05,788.788 INFO    ] 200
[2026-06-22 00:08:05,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:08:05,833.833 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:08:06,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:08:06,008.008 INFO    ] No camera update needed
[2026-06-22 00:08:06,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:08:06,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:08:06,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:08:06,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:08:08,070.070 INFO    ] ================================================
[2026-06-22 00:08:08,086.086 INFO    ] Launching Daemon at Mon Jun 22 00:08:08 IST 2026
[2026-06-22 00:08:08,097.097 INFO    ] ================================================
[2026-06-22 00:08:08,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:08:08
[2026-06-22 00:08:09,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:08:09,554.554 INFO    ] Initializing speech engine...
[2026-06-22 00:08:09,572.572 INFO    ] 2026-06-22 00:08:09
[2026-06-22 00:08:09,849.849 INFO    ] 2026-06-22 00:08:09
[2026-06-22 00:08:09,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:08:10,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:08:10,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:08:10,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:08:10,206.206 INFO    ] time= 22/06/2026 00:08:10
[2026-06-22 00:08:10,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:08:10,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:08:10,274.274 INFO    ] No existing commands found in stream
[2026-06-22 00:08:15,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:08:15,287.287 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-22 00:08:18,119.119 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:08:18,122.122 INFO    ] Checking for system updates...
[2026-06-22 00:08:18,158.158 INFO    ] 200
[2026-06-22 00:08:18,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:08:18,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:08:18,216.216 INFO    ] No update needed
[2026-06-22 00:08:18,218.218 INFO    ] Checking for camera pi updates...
[2026-06-22 00:08:18,252.252 INFO    ] 200
[2026-06-22 00:08:18,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:08:18,296.296 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:08:18,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:08:18,375.375 INFO    ] No camera update needed
[2026-06-22 00:08:18,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:08:18,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:08:18,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:08:18,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:08:20,432.432 INFO    ] ================================================
[2026-06-22 00:08:20,448.448 INFO    ] Launching Daemon at Mon Jun 22 00:08:20 IST 2026
[2026-06-22 00:08:20,459.459 INFO    ] ================================================
[2026-06-22 00:08:21,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:08:21
[2026-06-22 00:08:21,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:08:21,889.889 INFO    ] Initializing speech engine...
[2026-06-22 00:08:21,900.900 INFO    ] 2026-06-22 00:08:21
[2026-06-22 00:08:22,147.147 INFO    ] 2026-06-22 00:08:22
[2026-06-22 00:08:22,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:08:22,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:08:22,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:08:22,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:08:22,703.703 INFO    ] time= 22/06/2026 00:08:22
[2026-06-22 00:08:22,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:08:22,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:08:22,843.843 INFO    ] No existing commands found in stream
[2026-06-22 00:08:27,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:08:27,870.870 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-22 00:08:31,796.796 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:08:31,799.799 INFO    ] Checking for system updates...
[2026-06-22 00:08:31,839.839 INFO    ] 200
[2026-06-22 00:08:31,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:08:31,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:08:31,905.905 INFO    ] No update needed
[2026-06-22 00:08:31,908.908 INFO    ] Checking for camera pi updates...
[2026-06-22 00:08:31,946.946 INFO    ] 200
[2026-06-22 00:08:31,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:08:31,994.994 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:08:32,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:08:32,062.062 INFO    ] No camera update needed
[2026-06-22 00:08:32,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:08:32,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:08:32,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:08:32,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:08:34,123.123 INFO    ] ================================================
[2026-06-22 00:08:34,139.139 INFO    ] Launching Daemon at Mon Jun 22 00:08:34 IST 2026
[2026-06-22 00:08:34,149.149 INFO    ] ================================================
[2026-06-22 00:08:34,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:08:34
[2026-06-22 00:08:35,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:08:35,562.562 INFO    ] Initializing speech engine...
[2026-06-22 00:08:35,577.577 INFO    ] 2026-06-22 00:08:35
[2026-06-22 00:08:35,863.863 INFO    ] 2026-06-22 00:08:35
[2026-06-22 00:08:35,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:08:36,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:08:36,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:08:36,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:08:36,383.383 INFO    ] time= 22/06/2026 00:08:36
[2026-06-22 00:08:36,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:08:36,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:08:36,528.528 INFO    ] No existing commands found in stream
[2026-06-22 00:08:41,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:08:41,553.553 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-22 00:08:43,850.850 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:08:43,852.852 INFO    ] Checking for system updates...
[2026-06-22 00:08:43,881.881 INFO    ] 200
[2026-06-22 00:08:43,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:08:43,938.938 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:08:43,940.940 INFO    ] No update needed
[2026-06-22 00:08:43,943.943 INFO    ] Checking for camera pi updates...
[2026-06-22 00:08:43,977.977 INFO    ] 200
[2026-06-22 00:08:43,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:08:44,020.020 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:08:44,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:08:44,092.092 INFO    ] No camera update needed
[2026-06-22 00:08:44,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:08:44,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:08:44,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:08:44,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:08:46,149.149 INFO    ] ================================================
[2026-06-22 00:08:46,164.164 INFO    ] Launching Daemon at Mon Jun 22 00:08:46 IST 2026
[2026-06-22 00:08:46,175.175 INFO    ] ================================================
[2026-06-22 00:08:46,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:08:46
[2026-06-22 00:08:47,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:08:47,723.723 INFO    ] Initializing speech engine...
[2026-06-22 00:08:47,735.735 INFO    ] 2026-06-22 00:08:47
[2026-06-22 00:08:48,022.022 INFO    ] 2026-06-22 00:08:48
[2026-06-22 00:08:48,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:08:48,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:08:48,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:08:48,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:08:48,555.555 INFO    ] time= 22/06/2026 00:08:48
[2026-06-22 00:08:48,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:08:48,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:08:48,709.709 INFO    ] No existing commands found in stream
[2026-06-22 00:08:53,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:08:53,729.729 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-22 00:08:54,214.214 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:08:54,216.216 INFO    ] Checking for system updates...
[2026-06-22 00:08:54,237.237 INFO    ] 200
[2026-06-22 00:08:54,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:08:54,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:08:54,284.284 INFO    ] No update needed
[2026-06-22 00:08:54,287.287 INFO    ] Checking for camera pi updates...
[2026-06-22 00:08:54,321.321 INFO    ] 200
[2026-06-22 00:08:54,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:08:54,370.370 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:08:54,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:08:54,453.453 INFO    ] No camera update needed
[2026-06-22 00:08:54,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:08:54,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:08:54,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:08:54,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:08:56,511.511 INFO    ] ================================================
[2026-06-22 00:08:56,526.526 INFO    ] Launching Daemon at Mon Jun 22 00:08:56 IST 2026
[2026-06-22 00:08:56,537.537 INFO    ] ================================================
[2026-06-22 00:08:57,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:08:57
[2026-06-22 00:08:57,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:08:57,892.892 INFO    ] Initializing speech engine...
[2026-06-22 00:08:57,906.906 INFO    ] 2026-06-22 00:08:57
[2026-06-22 00:08:58,193.193 INFO    ] 2026-06-22 00:08:58
[2026-06-22 00:08:58,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:08:58,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:08:58,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:08:58,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:08:58,581.581 INFO    ] time= 22/06/2026 00:08:58
[2026-06-22 00:08:58,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:08:58,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:08:58,766.766 INFO    ] No existing commands found in stream
[2026-06-22 00:09:03,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:09:03,788.788 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-22 00:09:05,964.964 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:09:05,967.967 INFO    ] Checking for system updates...
[2026-06-22 00:09:06,003.003 INFO    ] 200
[2026-06-22 00:09:06,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:09:06,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:09:06,063.063 INFO    ] No update needed
[2026-06-22 00:09:06,064.064 INFO    ] Checking for camera pi updates...
[2026-06-22 00:09:06,083.083 INFO    ] 200
[2026-06-22 00:09:06,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:09:06,109.109 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:09:06,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:09:06,187.187 INFO    ] No camera update needed
[2026-06-22 00:09:06,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:09:06,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:09:06,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:09:06,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:09:08,242.242 INFO    ] ================================================
[2026-06-22 00:09:08,257.257 INFO    ] Launching Daemon at Mon Jun 22 00:09:08 IST 2026
[2026-06-22 00:09:08,267.267 INFO    ] ================================================
[2026-06-22 00:09:08,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:09:08
[2026-06-22 00:09:09,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:09:09,686.686 INFO    ] Initializing speech engine...
[2026-06-22 00:09:09,700.700 INFO    ] 2026-06-22 00:09:09
[2026-06-22 00:09:09,966.966 INFO    ] 2026-06-22 00:09:09
[2026-06-22 00:09:10,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:09:10,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:09:10,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:09:10,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:09:10,372.372 INFO    ] time= 22/06/2026 00:09:10
[2026-06-22 00:09:10,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:09:10,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:09:10,545.545 INFO    ] No existing commands found in stream
[2026-06-22 00:09:15,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:09:15,572.572 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-22 00:09:17,536.536 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:09:17,538.538 INFO    ] Checking for system updates...
[2026-06-22 00:09:17,559.559 INFO    ] 200
[2026-06-22 00:09:17,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:09:17,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:09:17,620.620 INFO    ] No update needed
[2026-06-22 00:09:17,623.623 INFO    ] Checking for camera pi updates...
[2026-06-22 00:09:17,656.656 INFO    ] 200
[2026-06-22 00:09:17,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:09:17,700.700 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:09:17,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:09:17,802.802 INFO    ] No camera update needed
[2026-06-22 00:09:17,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:09:17,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:09:17,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:09:17,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:09:19,863.863 INFO    ] ================================================
[2026-06-22 00:09:19,878.878 INFO    ] Launching Daemon at Mon Jun 22 00:09:19 IST 2026
[2026-06-22 00:09:19,889.889 INFO    ] ================================================
[2026-06-22 00:09:20,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:09:20
[2026-06-22 00:09:21,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:09:21,348.348 INFO    ] Initializing speech engine...
[2026-06-22 00:09:21,354.354 INFO    ] 2026-06-22 00:09:21
[2026-06-22 00:09:21,624.624 INFO    ] 2026-06-22 00:09:21
[2026-06-22 00:09:21,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:09:21,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:09:21,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:09:22,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:09:22,099.099 INFO    ] time= 22/06/2026 00:09:22
[2026-06-22 00:09:22,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:09:22,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:09:22,250.250 INFO    ] No existing commands found in stream
[2026-06-22 00:09:27,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:09:27,273.273 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-22 00:09:29,649.649 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:09:29,650.650 INFO    ] Checking for system updates...
[2026-06-22 00:09:29,673.673 INFO    ] 200
[2026-06-22 00:09:29,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:09:29,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:09:29,737.737 INFO    ] No update needed
[2026-06-22 00:09:29,740.740 INFO    ] Checking for camera pi updates...
[2026-06-22 00:09:29,775.775 INFO    ] 200
[2026-06-22 00:09:29,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:09:29,820.820 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:09:29,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:09:29,905.905 INFO    ] No camera update needed
[2026-06-22 00:09:29,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:09:29,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:09:29,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:09:29,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:09:31,966.966 INFO    ] ================================================
[2026-06-22 00:09:31,983.983 INFO    ] Launching Daemon at Mon Jun 22 00:09:31 IST 2026
[2026-06-22 00:09:32,995.995 INFO    ] ================================================
[2026-06-22 00:09:32,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:09:32
[2026-06-22 00:09:33,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:09:33,617.617 INFO    ] Initializing speech engine...
[2026-06-22 00:09:33,624.624 INFO    ] 2026-06-22 00:09:33
[2026-06-22 00:09:33,904.904 INFO    ] 2026-06-22 00:09:33
[2026-06-22 00:09:33,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:09:34,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:09:34,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:09:34,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:09:34,437.437 INFO    ] time= 22/06/2026 00:09:34
[2026-06-22 00:09:34,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:09:34,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:09:34,588.588 INFO    ] No existing commands found in stream
[2026-06-22 00:09:39,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:09:39,607.607 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-22 00:09:42,223.223 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:09:42,225.225 INFO    ] Checking for system updates...
[2026-06-22 00:09:42,247.247 INFO    ] 200
[2026-06-22 00:09:42,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:09:42,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:09:42,285.285 INFO    ] No update needed
[2026-06-22 00:09:42,288.288 INFO    ] Checking for camera pi updates...
[2026-06-22 00:09:42,326.326 INFO    ] 200
[2026-06-22 00:09:42,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:09:42,375.375 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:09:42,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:09:42,461.461 INFO    ] No camera update needed
[2026-06-22 00:09:42,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:09:42,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:09:42,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:09:42,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:09:44,520.520 INFO    ] ================================================
[2026-06-22 00:09:44,535.535 INFO    ] Launching Daemon at Mon Jun 22 00:09:44 IST 2026
[2026-06-22 00:09:44,546.546 INFO    ] ================================================
[2026-06-22 00:09:45,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:09:45
[2026-06-22 00:09:45,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:09:46,009.009 INFO    ] Initializing speech engine...
[2026-06-22 00:09:46,017.017 INFO    ] 2026-06-22 00:09:46
[2026-06-22 00:09:46,279.279 INFO    ] 2026-06-22 00:09:46
[2026-06-22 00:09:46,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:09:46,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:09:46,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:09:46,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:09:46,674.674 INFO    ] time= 22/06/2026 00:09:46
[2026-06-22 00:09:46,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:09:46,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:09:46,829.829 INFO    ] No existing commands found in stream
[2026-06-22 00:09:51,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:09:51,857.857 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-22 00:09:53,417.417 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:09:53,419.419 INFO    ] Checking for system updates...
[2026-06-22 00:09:53,440.440 INFO    ] 200
[2026-06-22 00:09:53,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:09:53,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:09:53,473.473 INFO    ] No update needed
[2026-06-22 00:09:53,475.475 INFO    ] Checking for camera pi updates...
[2026-06-22 00:09:53,506.506 INFO    ] 200
[2026-06-22 00:09:53,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:09:53,554.554 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:09:53,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:09:53,625.625 INFO    ] No camera update needed
[2026-06-22 00:09:53,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:09:53,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:09:53,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:09:53,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:09:55,684.684 INFO    ] ================================================
[2026-06-22 00:09:55,700.700 INFO    ] Launching Daemon at Mon Jun 22 00:09:55 IST 2026
[2026-06-22 00:09:55,712.712 INFO    ] ================================================
[2026-06-22 00:09:56,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:09:56
[2026-06-22 00:09:56,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:09:57,124.124 INFO    ] Initializing speech engine...
[2026-06-22 00:09:57,137.137 INFO    ] 2026-06-22 00:09:57
[2026-06-22 00:09:57,422.422 INFO    ] 2026-06-22 00:09:57
[2026-06-22 00:09:57,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:09:57,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:09:57,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:09:57,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:09:57,889.889 INFO    ] time= 22/06/2026 00:09:57
[2026-06-22 00:09:57,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:09:58,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:09:58,108.108 INFO    ] No existing commands found in stream
[2026-06-22 00:10:03,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:10:03,120.120 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-22 00:10:08,538.538 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:10:08,540.540 INFO    ] Checking for system updates...
[2026-06-22 00:10:08,577.577 INFO    ] 200
[2026-06-22 00:10:08,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:10:08,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:10:08,635.635 INFO    ] No update needed
[2026-06-22 00:10:08,638.638 INFO    ] Checking for camera pi updates...
[2026-06-22 00:10:08,672.672 INFO    ] 200
[2026-06-22 00:10:08,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:10:08,716.716 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:10:08,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:10:08,915.915 INFO    ] No camera update needed
[2026-06-22 00:10:08,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:10:08,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:10:08,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:10:08,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:10:10,973.973 INFO    ] ================================================
[2026-06-22 00:10:10,989.989 INFO    ] Launching Daemon at Mon Jun 22 00:10:10 IST 2026
[2026-06-22 00:10:11,001.001 INFO    ] ================================================
[2026-06-22 00:10:11,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:10:11
[2026-06-22 00:10:12,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:10:12,428.428 INFO    ] Initializing speech engine...
[2026-06-22 00:10:12,437.437 INFO    ] 2026-06-22 00:10:12
[2026-06-22 00:10:12,687.687 INFO    ] 2026-06-22 00:10:12
[2026-06-22 00:10:12,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:10:12,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:10:12,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:10:13,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:10:13,060.060 INFO    ] time= 22/06/2026 00:10:13
[2026-06-22 00:10:13,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:10:13,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:10:13,222.222 INFO    ] No existing commands found in stream
[2026-06-22 00:10:18,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:10:18,238.238 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-22 00:10:20,502.502 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:10:20,505.505 INFO    ] Checking for system updates...
[2026-06-22 00:10:20,546.546 INFO    ] 200
[2026-06-22 00:10:20,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:10:20,605.605 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:10:20,607.607 INFO    ] No update needed
[2026-06-22 00:10:20,610.610 INFO    ] Checking for camera pi updates...
[2026-06-22 00:10:20,645.645 INFO    ] 200
[2026-06-22 00:10:20,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:10:20,701.701 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:10:20,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:10:20,773.773 INFO    ] No camera update needed
[2026-06-22 00:10:20,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:10:20,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:10:20,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:10:20,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:10:22,835.835 INFO    ] ================================================
[2026-06-22 00:10:22,851.851 INFO    ] Launching Daemon at Mon Jun 22 00:10:22 IST 2026
[2026-06-22 00:10:22,862.862 INFO    ] ================================================
[2026-06-22 00:10:23,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:10:23
[2026-06-22 00:10:23,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:10:24,219.219 INFO    ] Initializing speech engine...
[2026-06-22 00:10:24,234.234 INFO    ] 2026-06-22 00:10:24
[2026-06-22 00:10:24,502.502 INFO    ] 2026-06-22 00:10:24
[2026-06-22 00:10:24,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:10:24,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:10:24,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:10:24,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:10:25,017.017 INFO    ] time= 22/06/2026 00:10:24
[2026-06-22 00:10:25,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:10:25,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:10:25,149.149 INFO    ] No existing commands found in stream
[2026-06-22 00:10:30,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:10:30,171.171 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-22 00:10:34,360.360 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:10:34,363.363 INFO    ] Checking for system updates...
[2026-06-22 00:10:34,399.399 INFO    ] 200
[2026-06-22 00:10:34,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:10:34,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:10:34,458.458 INFO    ] No update needed
[2026-06-22 00:10:34,461.461 INFO    ] Checking for camera pi updates...
[2026-06-22 00:10:34,494.494 INFO    ] 200
[2026-06-22 00:10:34,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:10:34,541.541 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:10:34,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:10:34,628.628 INFO    ] No camera update needed
[2026-06-22 00:10:34,630.630 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:10:34,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:10:34,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:10:34,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:10:36,685.685 INFO    ] ================================================
[2026-06-22 00:10:36,700.700 INFO    ] Launching Daemon at Mon Jun 22 00:10:36 IST 2026
[2026-06-22 00:10:36,711.711 INFO    ] ================================================
[2026-06-22 00:10:37,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:10:37
[2026-06-22 00:10:37,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:10:38,227.227 INFO    ] Initializing speech engine...
[2026-06-22 00:10:38,240.240 INFO    ] 2026-06-22 00:10:38
[2026-06-22 00:10:38,504.504 INFO    ] 2026-06-22 00:10:38
[2026-06-22 00:10:38,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:10:38,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:10:38,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:10:38,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:10:38,989.989 INFO    ] time= 22/06/2026 00:10:38
[2026-06-22 00:10:39,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:10:39,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:10:39,179.179 INFO    ] No existing commands found in stream
[2026-06-22 00:10:44,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:10:44,216.216 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-22 00:10:46,563.563 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:10:46,567.567 INFO    ] Checking for system updates...
[2026-06-22 00:10:46,610.610 INFO    ] 200
[2026-06-22 00:10:46,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:10:46,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:10:46,663.663 INFO    ] No update needed
[2026-06-22 00:10:46,664.664 INFO    ] Checking for camera pi updates...
[2026-06-22 00:10:46,684.684 INFO    ] 200
[2026-06-22 00:10:46,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:10:46,709.709 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:10:46,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:10:46,792.792 INFO    ] No camera update needed
[2026-06-22 00:10:46,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:10:46,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:10:46,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:10:46,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:10:48,851.851 INFO    ] ================================================
[2026-06-22 00:10:48,866.866 INFO    ] Launching Daemon at Mon Jun 22 00:10:48 IST 2026
[2026-06-22 00:10:48,876.876 INFO    ] ================================================
[2026-06-22 00:10:49,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:10:49
[2026-06-22 00:10:49,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:10:50,239.239 INFO    ] Initializing speech engine...
[2026-06-22 00:10:50,255.255 INFO    ] 2026-06-22 00:10:50
[2026-06-22 00:10:50,541.541 INFO    ] 2026-06-22 00:10:50
[2026-06-22 00:10:50,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:10:50,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:10:50,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:10:50,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:10:50,933.933 INFO    ] time= 22/06/2026 00:10:50
[2026-06-22 00:10:50,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:10:50,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:10:51,040.040 INFO    ] No existing commands found in stream
[2026-06-22 00:10:56,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:10:56,056.056 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-22 00:11:00,365.365 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:11:00,367.367 INFO    ] Checking for system updates...
[2026-06-22 00:11:00,402.402 INFO    ] 200
[2026-06-22 00:11:00,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:11:00,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:11:00,460.460 INFO    ] No update needed
[2026-06-22 00:11:00,462.462 INFO    ] Checking for camera pi updates...
[2026-06-22 00:11:00,497.497 INFO    ] 200
[2026-06-22 00:11:00,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:11:00,541.541 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:11:00,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:11:00,631.631 INFO    ] No camera update needed
[2026-06-22 00:11:00,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:11:00,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:11:00,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:11:00,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:11:02,689.689 INFO    ] ================================================
[2026-06-22 00:11:02,711.711 INFO    ] Launching Daemon at Mon Jun 22 00:11:02 IST 2026
[2026-06-22 00:11:02,727.727 INFO    ] ================================================
[2026-06-22 00:11:03,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:11:03
[2026-06-22 00:11:03,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:11:04,254.254 INFO    ] Initializing speech engine...
[2026-06-22 00:11:04,262.262 INFO    ] 2026-06-22 00:11:04
[2026-06-22 00:11:04,556.556 INFO    ] 2026-06-22 00:11:04
[2026-06-22 00:11:04,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:11:04,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:11:04,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:11:04,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:11:04,974.974 INFO    ] time= 22/06/2026 00:11:04
[2026-06-22 00:11:04,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:11:04,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:11:05,057.057 INFO    ] No existing commands found in stream
[2026-06-22 00:11:10,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:11:10,072.072 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-22 00:11:12,986.986 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:11:12,988.988 INFO    ] Checking for system updates...
[2026-06-22 00:11:13,008.008 INFO    ] 200
[2026-06-22 00:11:13,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:11:13,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:11:13,043.043 INFO    ] No update needed
[2026-06-22 00:11:13,045.045 INFO    ] Checking for camera pi updates...
[2026-06-22 00:11:13,066.066 INFO    ] 200
[2026-06-22 00:11:13,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:11:13,096.096 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:11:13,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:11:13,175.175 INFO    ] No camera update needed
[2026-06-22 00:11:13,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:11:13,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:11:13,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:11:13,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:11:15,231.231 INFO    ] ================================================
[2026-06-22 00:11:15,246.246 INFO    ] Launching Daemon at Mon Jun 22 00:11:15 IST 2026
[2026-06-22 00:11:15,257.257 INFO    ] ================================================
[2026-06-22 00:11:15,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:11:15
[2026-06-22 00:11:16,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:11:16,632.632 INFO    ] Initializing speech engine...
[2026-06-22 00:11:16,637.637 INFO    ] 2026-06-22 00:11:16
[2026-06-22 00:11:16,903.903 INFO    ] 2026-06-22 00:11:16
[2026-06-22 00:11:16,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:11:17,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:11:17,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:11:17,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:11:17,394.394 INFO    ] time= 22/06/2026 00:11:17
[2026-06-22 00:11:17,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:11:17,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:11:17,539.539 INFO    ] No existing commands found in stream
[2026-06-22 00:11:22,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:11:22,553.553 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-22 00:11:25,023.023 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:11:25,024.024 INFO    ] Checking for system updates...
[2026-06-22 00:11:25,045.045 INFO    ] 200
[2026-06-22 00:11:25,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:11:25,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:11:25,082.082 INFO    ] No update needed
[2026-06-22 00:11:25,084.084 INFO    ] Checking for camera pi updates...
[2026-06-22 00:11:25,114.114 INFO    ] 200
[2026-06-22 00:11:25,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:11:25,157.157 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:11:25,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:11:25,237.237 INFO    ] No camera update needed
[2026-06-22 00:11:25,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:11:25,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:11:25,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:11:25,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:11:27,296.296 INFO    ] ================================================
[2026-06-22 00:11:27,312.312 INFO    ] Launching Daemon at Mon Jun 22 00:11:27 IST 2026
[2026-06-22 00:11:27,323.323 INFO    ] ================================================
[2026-06-22 00:11:27,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:11:27
[2026-06-22 00:11:28,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:11:28,837.837 INFO    ] Initializing speech engine...
[2026-06-22 00:11:28,858.858 INFO    ] 2026-06-22 00:11:28
[2026-06-22 00:11:29,118.118 INFO    ] 2026-06-22 00:11:29
[2026-06-22 00:11:29,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:11:29,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:11:29,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:11:29,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:11:29,497.497 INFO    ] time= 22/06/2026 00:11:29
[2026-06-22 00:11:29,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:11:29,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:11:29,668.668 INFO    ] No existing commands found in stream
[2026-06-22 00:11:34,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:11:34,691.691 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-22 00:11:35,768.768 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:11:35,770.770 INFO    ] Checking for system updates...
[2026-06-22 00:11:35,795.795 INFO    ] 200
[2026-06-22 00:11:35,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:11:35,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:11:35,852.852 INFO    ] No update needed
[2026-06-22 00:11:35,855.855 INFO    ] Checking for camera pi updates...
[2026-06-22 00:11:35,889.889 INFO    ] 200
[2026-06-22 00:11:35,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:11:35,933.933 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:11:36,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:11:36,012.012 INFO    ] No camera update needed
[2026-06-22 00:11:36,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:11:36,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:11:36,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:11:36,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:11:38,068.068 INFO    ] ================================================
[2026-06-22 00:11:38,083.083 INFO    ] Launching Daemon at Mon Jun 22 00:11:38 IST 2026
[2026-06-22 00:11:38,094.094 INFO    ] ================================================
[2026-06-22 00:11:38,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:11:38
[2026-06-22 00:11:39,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:11:39,464.464 INFO    ] Initializing speech engine...
[2026-06-22 00:11:39,475.475 INFO    ] 2026-06-22 00:11:39
[2026-06-22 00:11:39,750.750 INFO    ] 2026-06-22 00:11:39
[2026-06-22 00:11:39,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:11:39,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:11:40,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:11:40,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:11:40,149.149 INFO    ] time= 22/06/2026 00:11:40
[2026-06-22 00:11:40,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:11:40,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:11:40,270.270 INFO    ] No existing commands found in stream
[2026-06-22 00:11:45,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:11:45,292.292 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-22 00:11:45,964.964 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:11:45,966.966 INFO    ] Checking for system updates...
[2026-06-22 00:11:46,003.003 INFO    ] 200
[2026-06-22 00:11:46,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:11:46,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:11:46,062.062 INFO    ] No update needed
[2026-06-22 00:11:46,065.065 INFO    ] Checking for camera pi updates...
[2026-06-22 00:11:46,098.098 INFO    ] 200
[2026-06-22 00:11:46,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:11:46,146.146 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:11:46,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:11:46,213.213 INFO    ] No camera update needed
[2026-06-22 00:11:46,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:11:46,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:11:46,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:11:46,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:11:48,270.270 INFO    ] ================================================
[2026-06-22 00:11:48,285.285 INFO    ] Launching Daemon at Mon Jun 22 00:11:48 IST 2026
[2026-06-22 00:11:48,296.296 INFO    ] ================================================
[2026-06-22 00:11:48,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:11:48
[2026-06-22 00:11:49,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:11:49,676.676 INFO    ] Initializing speech engine...
[2026-06-22 00:11:49,683.683 INFO    ] 2026-06-22 00:11:49
[2026-06-22 00:11:49,945.945 INFO    ] 2026-06-22 00:11:49
[2026-06-22 00:11:49,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:11:50,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:11:50,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:11:50,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:11:50,405.405 INFO    ] time= 22/06/2026 00:11:50
[2026-06-22 00:11:50,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:11:50,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:11:50,608.608 INFO    ] No existing commands found in stream
[2026-06-22 00:11:55,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:11:55,638.638 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-22 00:11:58,721.721 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:11:58,723.723 INFO    ] Checking for system updates...
[2026-06-22 00:11:58,760.760 INFO    ] 200
[2026-06-22 00:11:58,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:11:58,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:11:58,820.820 INFO    ] No update needed
[2026-06-22 00:11:58,822.822 INFO    ] Checking for camera pi updates...
[2026-06-22 00:11:58,859.859 INFO    ] 200
[2026-06-22 00:11:58,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:11:58,906.906 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:11:58,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:11:58,995.995 INFO    ] No camera update needed
[2026-06-22 00:11:58,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:11:59,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:11:59,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:11:59,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:12:01,050.050 INFO    ] ================================================
[2026-06-22 00:12:01,065.065 INFO    ] Launching Daemon at Mon Jun 22 00:12:01 IST 2026
[2026-06-22 00:12:01,076.076 INFO    ] ================================================
[2026-06-22 00:12:01,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:12:01
[2026-06-22 00:12:02,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:12:02,905.905 INFO    ] Initializing speech engine...
[2026-06-22 00:12:02,913.913 INFO    ] 2026-06-22 00:12:02
[2026-06-22 00:12:03,330.330 INFO    ] 2026-06-22 00:12:03
[2026-06-22 00:12:03,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:12:03,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:12:03,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:12:03,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:12:03,824.824 INFO    ] time= 22/06/2026 00:12:03
[2026-06-22 00:12:03,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:12:03,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:12:03,968.968 INFO    ] No existing commands found in stream
[2026-06-22 00:12:08,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:12:08,992.992 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-22 00:12:11,796.796 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:12:11,798.798 INFO    ] Checking for system updates...
[2026-06-22 00:12:11,834.834 INFO    ] 200
[2026-06-22 00:12:11,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:12:11,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:12:11,892.892 INFO    ] No update needed
[2026-06-22 00:12:11,895.895 INFO    ] Checking for camera pi updates...
[2026-06-22 00:12:11,928.928 INFO    ] 200
[2026-06-22 00:12:11,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:12:11,971.971 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:12:12,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:12:12,186.186 INFO    ] No camera update needed
[2026-06-22 00:12:12,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:12:12,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:12:12,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:12:12,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:12:14,242.242 INFO    ] ================================================
[2026-06-22 00:12:14,258.258 INFO    ] Launching Daemon at Mon Jun 22 00:12:14 IST 2026
[2026-06-22 00:12:14,269.269 INFO    ] ================================================
[2026-06-22 00:12:14,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:12:14
[2026-06-22 00:12:15,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:12:15,592.592 INFO    ] Initializing speech engine...
[2026-06-22 00:12:15,602.602 INFO    ] 2026-06-22 00:12:15
[2026-06-22 00:12:15,897.897 INFO    ] 2026-06-22 00:12:15
[2026-06-22 00:12:15,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:12:16,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:12:16,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:12:16,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:12:16,317.317 INFO    ] time= 22/06/2026 00:12:16
[2026-06-22 00:12:16,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:12:16,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:12:16,410.410 INFO    ] No existing commands found in stream
[2026-06-22 00:12:21,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:12:21,423.423 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-22 00:12:23,945.945 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:12:23,948.948 INFO    ] Checking for system updates...
[2026-06-22 00:12:23,983.983 INFO    ] 200
[2026-06-22 00:12:23,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:12:24,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:12:24,042.042 INFO    ] No update needed
[2026-06-22 00:12:24,044.044 INFO    ] Checking for camera pi updates...
[2026-06-22 00:12:24,082.082 INFO    ] 200
[2026-06-22 00:12:24,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:12:24,126.126 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:12:24,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:12:24,217.217 INFO    ] No camera update needed
[2026-06-22 00:12:24,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:12:24,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:12:24,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:12:24,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:12:26,276.276 INFO    ] ================================================
[2026-06-22 00:12:26,291.291 INFO    ] Launching Daemon at Mon Jun 22 00:12:26 IST 2026
[2026-06-22 00:12:26,303.303 INFO    ] ================================================
[2026-06-22 00:12:26,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:12:26
[2026-06-22 00:12:27,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:12:27,957.957 INFO    ] Initializing speech engine...
[2026-06-22 00:12:27,969.969 INFO    ] 2026-06-22 00:12:27
[2026-06-22 00:12:28,266.266 INFO    ] 2026-06-22 00:12:28
[2026-06-22 00:12:28,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:12:28,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:12:28,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:12:28,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:12:28,714.714 INFO    ] time= 22/06/2026 00:12:28
[2026-06-22 00:12:28,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:12:28,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:12:28,852.852 INFO    ] No existing commands found in stream
[2026-06-22 00:12:33,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:12:33,876.876 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-22 00:12:37,747.747 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:12:37,750.750 INFO    ] Checking for system updates...
[2026-06-22 00:12:37,788.788 INFO    ] 200
[2026-06-22 00:12:37,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:12:37,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:12:37,855.855 INFO    ] No update needed
[2026-06-22 00:12:37,859.859 INFO    ] Checking for camera pi updates...
[2026-06-22 00:12:37,898.898 INFO    ] 200
[2026-06-22 00:12:37,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:12:37,946.946 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:12:37,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:12:37,997.997 INFO    ] No camera update needed
[2026-06-22 00:12:37,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:12:38,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:12:38,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:12:38,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:12:40,054.054 INFO    ] ================================================
[2026-06-22 00:12:40,070.070 INFO    ] Launching Daemon at Mon Jun 22 00:12:40 IST 2026
[2026-06-22 00:12:40,080.080 INFO    ] ================================================
[2026-06-22 00:12:40,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:12:40
[2026-06-22 00:12:41,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:12:41,427.427 INFO    ] Initializing speech engine...
[2026-06-22 00:12:41,436.436 INFO    ] 2026-06-22 00:12:41
[2026-06-22 00:12:41,731.731 INFO    ] 2026-06-22 00:12:41
[2026-06-22 00:12:41,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:12:41,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:12:41,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:12:42,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:12:42,115.115 INFO    ] time= 22/06/2026 00:12:42
[2026-06-22 00:12:42,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:12:42,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:12:42,241.241 INFO    ] No existing commands found in stream
[2026-06-22 00:12:47,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:12:47,256.256 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-22 00:12:49,998.998 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:12:50,000.000 INFO    ] Checking for system updates...
[2026-06-22 00:12:50,036.036 INFO    ] 200
[2026-06-22 00:12:50,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:12:50,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:12:50,099.099 INFO    ] No update needed
[2026-06-22 00:12:50,101.101 INFO    ] Checking for camera pi updates...
[2026-06-22 00:12:50,136.136 INFO    ] 200
[2026-06-22 00:12:50,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:12:50,180.180 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:12:50,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:12:50,260.260 INFO    ] No camera update needed
[2026-06-22 00:12:50,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:12:50,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:12:50,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:12:50,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:12:52,318.318 INFO    ] ================================================
[2026-06-22 00:12:52,333.333 INFO    ] Launching Daemon at Mon Jun 22 00:12:52 IST 2026
[2026-06-22 00:12:52,344.344 INFO    ] ================================================
[2026-06-22 00:12:52,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:12:52
[2026-06-22 00:12:53,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:12:53,712.712 INFO    ] Initializing speech engine...
[2026-06-22 00:12:53,720.720 INFO    ] 2026-06-22 00:12:53
[2026-06-22 00:12:53,973.973 INFO    ] 2026-06-22 00:12:53
[2026-06-22 00:12:54,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:12:54,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:12:54,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:12:54,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:12:54,454.454 INFO    ] time= 22/06/2026 00:12:54
[2026-06-22 00:12:54,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:12:54,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:12:54,614.614 INFO    ] No existing commands found in stream
[2026-06-22 00:12:59,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:12:59,650.650 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-22 00:13:02,116.116 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:13:02,121.121 INFO    ] Checking for system updates...
[2026-06-22 00:13:02,175.175 INFO    ] 200
[2026-06-22 00:13:02,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:13:02,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:13:02,241.241 INFO    ] No update needed
[2026-06-22 00:13:02,244.244 INFO    ] Checking for camera pi updates...
[2026-06-22 00:13:02,284.284 INFO    ] 200
[2026-06-22 00:13:02,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:13:02,336.336 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:13:02,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:13:02,389.389 INFO    ] No camera update needed
[2026-06-22 00:13:02,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:13:02,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:13:02,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:13:02,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:13:04,450.450 INFO    ] ================================================
[2026-06-22 00:13:04,465.465 INFO    ] Launching Daemon at Mon Jun 22 00:13:04 IST 2026
[2026-06-22 00:13:04,476.476 INFO    ] ================================================
[2026-06-22 00:13:05,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:13:05
[2026-06-22 00:13:05,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:13:05,907.907 INFO    ] Initializing speech engine...
[2026-06-22 00:13:05,915.915 INFO    ] 2026-06-22 00:13:05
[2026-06-22 00:13:06,215.215 INFO    ] 2026-06-22 00:13:06
[2026-06-22 00:13:06,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:13:06,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:13:06,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:13:06,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:13:06,571.571 INFO    ] time= 22/06/2026 00:13:06
[2026-06-22 00:13:06,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:13:06,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:13:06,643.643 INFO    ] No existing commands found in stream
[2026-06-22 00:13:11,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:13:11,659.659 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-22 00:13:15,593.593 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:13:15,596.596 INFO    ] Checking for system updates...
[2026-06-22 00:13:15,636.636 INFO    ] 200
[2026-06-22 00:13:15,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:13:15,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:13:15,695.695 INFO    ] No update needed
[2026-06-22 00:13:15,698.698 INFO    ] Checking for camera pi updates...
[2026-06-22 00:13:15,731.731 INFO    ] 200
[2026-06-22 00:13:15,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:13:15,779.779 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:13:15,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:13:15,877.877 INFO    ] No camera update needed
[2026-06-22 00:13:15,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:13:15,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:13:15,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:13:15,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:13:17,934.934 INFO    ] ================================================
[2026-06-22 00:13:17,949.949 INFO    ] Launching Daemon at Mon Jun 22 00:13:17 IST 2026
[2026-06-22 00:13:17,960.960 INFO    ] ================================================
[2026-06-22 00:13:18,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:13:18
[2026-06-22 00:13:18,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:13:19,173.173 INFO    ] Initializing speech engine...
[2026-06-22 00:13:19,180.180 INFO    ] 2026-06-22 00:13:19
[2026-06-22 00:13:19,444.444 INFO    ] 2026-06-22 00:13:19
[2026-06-22 00:13:19,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:13:19,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:13:19,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:13:19,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:13:19,919.919 INFO    ] time= 22/06/2026 00:13:19
[2026-06-22 00:13:19,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:13:19,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:13:20,134.134 INFO    ] No existing commands found in stream
[2026-06-22 00:13:25,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:13:25,159.159 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-22 00:13:26,709.709 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:13:26,710.710 INFO    ] Checking for system updates...
[2026-06-22 00:13:26,732.732 INFO    ] 200
[2026-06-22 00:13:26,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:13:26,764.764 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:13:26,766.766 INFO    ] No update needed
[2026-06-22 00:13:26,767.767 INFO    ] Checking for camera pi updates...
[2026-06-22 00:13:26,802.802 INFO    ] 200
[2026-06-22 00:13:26,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:13:26,847.847 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:13:26,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:13:26,934.934 INFO    ] No camera update needed
[2026-06-22 00:13:26,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:13:26,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:13:26,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:13:26,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:13:29,995.995 INFO    ] ================================================
[2026-06-22 00:13:29,013.013 INFO    ] Launching Daemon at Mon Jun 22 00:13:29 IST 2026
[2026-06-22 00:13:29,029.029 INFO    ] ================================================
[2026-06-22 00:13:29,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:13:29
[2026-06-22 00:13:30,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:13:30,560.560 INFO    ] Initializing speech engine...
[2026-06-22 00:13:30,568.568 INFO    ] 2026-06-22 00:13:30
[2026-06-22 00:13:30,858.858 INFO    ] 2026-06-22 00:13:30
[2026-06-22 00:13:30,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:13:31,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:13:31,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:13:31,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:13:31,326.326 INFO    ] time= 22/06/2026 00:13:31
[2026-06-22 00:13:31,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:13:31,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:13:31,536.536 INFO    ] No existing commands found in stream
[2026-06-22 00:13:36,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:13:36,565.565 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-22 00:13:38,423.423 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:13:38,426.426 INFO    ] Checking for system updates...
[2026-06-22 00:13:38,466.466 INFO    ] 200
[2026-06-22 00:13:38,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:13:38,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:13:38,530.530 INFO    ] No update needed
[2026-06-22 00:13:38,532.532 INFO    ] Checking for camera pi updates...
[2026-06-22 00:13:38,567.567 INFO    ] 200
[2026-06-22 00:13:38,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:13:38,613.613 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:13:38,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:13:38,662.662 INFO    ] No camera update needed
[2026-06-22 00:13:38,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:13:38,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:13:38,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:13:38,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:13:40,720.720 INFO    ] ================================================
[2026-06-22 00:13:40,735.735 INFO    ] Launching Daemon at Mon Jun 22 00:13:40 IST 2026
[2026-06-22 00:13:40,745.745 INFO    ] ================================================
[2026-06-22 00:13:41,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:13:41
[2026-06-22 00:13:41,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:13:42,213.213 INFO    ] Initializing speech engine...
[2026-06-22 00:13:42,222.222 INFO    ] 2026-06-22 00:13:42
[2026-06-22 00:13:42,491.491 INFO    ] 2026-06-22 00:13:42
[2026-06-22 00:13:42,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:13:42,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:13:42,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:13:42,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:13:43,009.009 INFO    ] time= 22/06/2026 00:13:42
[2026-06-22 00:13:43,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:13:43,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:13:43,197.197 INFO    ] No existing commands found in stream
[2026-06-22 00:13:48,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:13:48,227.227 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-22 00:13:49,541.541 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:13:49,544.544 INFO    ] Checking for system updates...
[2026-06-22 00:13:49,585.585 INFO    ] 200
[2026-06-22 00:13:49,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:13:49,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:13:49,649.649 INFO    ] No update needed
[2026-06-22 00:13:49,653.653 INFO    ] Checking for camera pi updates...
[2026-06-22 00:13:49,688.688 INFO    ] 200
[2026-06-22 00:13:49,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:13:49,735.735 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:13:49,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:13:49,806.806 INFO    ] No camera update needed
[2026-06-22 00:13:49,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:13:49,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:13:49,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:13:49,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:13:51,861.861 INFO    ] ================================================
[2026-06-22 00:13:51,876.876 INFO    ] Launching Daemon at Mon Jun 22 00:13:51 IST 2026
[2026-06-22 00:13:51,887.887 INFO    ] ================================================
[2026-06-22 00:13:52,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:13:52
[2026-06-22 00:13:52,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:13:53,207.207 INFO    ] Initializing speech engine...
[2026-06-22 00:13:53,230.230 INFO    ] 2026-06-22 00:13:53
[2026-06-22 00:13:53,485.485 INFO    ] 2026-06-22 00:13:53
[2026-06-22 00:13:53,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:13:53,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:13:53,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:13:53,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:13:53,960.960 INFO    ] time= 22/06/2026 00:13:53
[2026-06-22 00:13:54,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:13:54,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:13:54,112.112 INFO    ] No existing commands found in stream
[2026-06-22 00:13:59,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:13:59,159.159 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-22 00:14:02,171.171 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:14:02,175.175 INFO    ] Checking for system updates...
[2026-06-22 00:14:02,214.214 INFO    ] 200
[2026-06-22 00:14:02,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:14:02,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:14:02,289.289 INFO    ] No update needed
[2026-06-22 00:14:02,292.292 INFO    ] Checking for camera pi updates...
[2026-06-22 00:14:02,356.356 INFO    ] 200
[2026-06-22 00:14:02,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:14:02,416.416 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:14:02,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:14:02,473.473 INFO    ] No camera update needed
[2026-06-22 00:14:02,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:14:02,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:14:02,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:14:02,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:14:04,535.535 INFO    ] ================================================
[2026-06-22 00:14:04,550.550 INFO    ] Launching Daemon at Mon Jun 22 00:14:04 IST 2026
[2026-06-22 00:14:04,561.561 INFO    ] ================================================
[2026-06-22 00:14:05,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:14:05
[2026-06-22 00:14:05,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:14:05,992.992 INFO    ] Initializing speech engine...
[2026-06-22 00:14:06,002.002 INFO    ] 2026-06-22 00:14:05
[2026-06-22 00:14:06,288.288 INFO    ] 2026-06-22 00:14:06
[2026-06-22 00:14:06,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:14:06,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:14:06,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:14:06,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:14:06,752.752 INFO    ] time= 22/06/2026 00:14:06
[2026-06-22 00:14:06,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:14:06,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:14:06,904.904 INFO    ] No existing commands found in stream
[2026-06-22 00:14:11,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:14:11,921.921 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-22 00:14:13,910.910 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:14:13,912.912 INFO    ] Checking for system updates...
[2026-06-22 00:14:13,933.933 INFO    ] 200
[2026-06-22 00:14:13,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:14:13,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:14:13,966.966 INFO    ] No update needed
[2026-06-22 00:14:13,967.967 INFO    ] Checking for camera pi updates...
[2026-06-22 00:14:13,986.986 INFO    ] 200
[2026-06-22 00:14:13,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:14:14,034.034 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:14:14,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:14:14,226.226 INFO    ] No camera update needed
[2026-06-22 00:14:14,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:14:14,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:14:14,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:14:14,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:14:16,283.283 INFO    ] ================================================
[2026-06-22 00:14:16,298.298 INFO    ] Launching Daemon at Mon Jun 22 00:14:16 IST 2026
[2026-06-22 00:14:16,309.309 INFO    ] ================================================
[2026-06-22 00:14:16,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:14:16
[2026-06-22 00:14:17,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:14:17,681.681 INFO    ] Initializing speech engine...
[2026-06-22 00:14:17,688.688 INFO    ] 2026-06-22 00:14:17
[2026-06-22 00:14:17,951.951 INFO    ] 2026-06-22 00:14:17
[2026-06-22 00:14:18,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:14:18,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:14:18,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:14:18,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:14:18,438.438 INFO    ] time= 22/06/2026 00:14:18
[2026-06-22 00:14:18,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:14:18,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:14:18,574.574 INFO    ] No existing commands found in stream
[2026-06-22 00:14:23,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:14:23,589.589 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-22 00:14:26,742.742 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:14:26,744.744 INFO    ] Checking for system updates...
[2026-06-22 00:14:26,765.765 INFO    ] 200
[2026-06-22 00:14:26,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:14:26,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:14:26,798.798 INFO    ] No update needed
[2026-06-22 00:14:26,799.799 INFO    ] Checking for camera pi updates...
[2026-06-22 00:14:26,835.835 INFO    ] 200
[2026-06-22 00:14:26,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:14:26,878.878 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:14:26,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:14:26,956.956 INFO    ] No camera update needed
[2026-06-22 00:14:26,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:14:26,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:14:26,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:14:26,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:14:29,012.012 INFO    ] ================================================
[2026-06-22 00:14:29,027.027 INFO    ] Launching Daemon at Mon Jun 22 00:14:29 IST 2026
[2026-06-22 00:14:29,038.038 INFO    ] ================================================
[2026-06-22 00:14:29,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:14:29
[2026-06-22 00:14:30,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:14:30,492.492 INFO    ] Initializing speech engine...
[2026-06-22 00:14:30,511.511 INFO    ] 2026-06-22 00:14:30
[2026-06-22 00:14:30,773.773 INFO    ] 2026-06-22 00:14:30
[2026-06-22 00:14:30,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:14:30,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:14:30,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:14:31,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:14:31,158.158 INFO    ] time= 22/06/2026 00:14:31
[2026-06-22 00:14:31,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:14:31,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:14:31,237.237 INFO    ] No existing commands found in stream
[2026-06-22 00:14:36,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:14:36,269.269 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-22 00:14:40,264.264 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:14:40,267.267 INFO    ] Checking for system updates...
[2026-06-22 00:14:40,303.303 INFO    ] 200
[2026-06-22 00:14:40,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:14:40,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:14:40,360.360 INFO    ] No update needed
[2026-06-22 00:14:40,362.362 INFO    ] Checking for camera pi updates...
[2026-06-22 00:14:40,400.400 INFO    ] 200
[2026-06-22 00:14:40,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:14:40,447.447 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:14:40,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:14:40,532.532 INFO    ] No camera update needed
[2026-06-22 00:14:40,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:14:40,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:14:40,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:14:40,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:14:42,592.592 INFO    ] ================================================
[2026-06-22 00:14:42,607.607 INFO    ] Launching Daemon at Mon Jun 22 00:14:42 IST 2026
[2026-06-22 00:14:42,618.618 INFO    ] ================================================
[2026-06-22 00:14:43,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:14:43
[2026-06-22 00:14:43,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:14:44,080.080 INFO    ] Initializing speech engine...
[2026-06-22 00:14:44,093.093 INFO    ] 2026-06-22 00:14:44
[2026-06-22 00:14:44,378.378 INFO    ] 2026-06-22 00:14:44
[2026-06-22 00:14:44,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:14:44,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:14:44,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:14:44,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:14:44,908.908 INFO    ] time= 22/06/2026 00:14:44
[2026-06-22 00:14:44,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:14:45,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:14:45,124.124 INFO    ] No existing commands found in stream
[2026-06-22 00:14:50,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:14:50,157.157 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-22 00:14:54,148.148 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:14:54,150.150 INFO    ] Checking for system updates...
[2026-06-22 00:14:54,190.190 INFO    ] 200
[2026-06-22 00:14:54,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:14:54,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:14:54,248.248 INFO    ] No update needed
[2026-06-22 00:14:54,251.251 INFO    ] Checking for camera pi updates...
[2026-06-22 00:14:54,284.284 INFO    ] 200
[2026-06-22 00:14:54,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:14:54,328.328 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:14:54,409.409 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:14:54,412.412 INFO    ] No camera update needed
[2026-06-22 00:14:54,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:14:54,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:14:54,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:14:54,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:14:56,468.468 INFO    ] ================================================
[2026-06-22 00:14:56,484.484 INFO    ] Launching Daemon at Mon Jun 22 00:14:56 IST 2026
[2026-06-22 00:14:56,495.495 INFO    ] ================================================
[2026-06-22 00:14:56,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:14:56
[2026-06-22 00:14:57,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:14:57,843.843 INFO    ] Initializing speech engine...
[2026-06-22 00:14:57,850.850 INFO    ] 2026-06-22 00:14:57
[2026-06-22 00:14:58,151.151 INFO    ] 2026-06-22 00:14:58
[2026-06-22 00:14:58,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:14:58,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:14:58,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:14:58,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:14:58,532.532 INFO    ] time= 22/06/2026 00:14:58
[2026-06-22 00:14:58,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:14:58,573.573 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:14:58,658.658 INFO    ] No existing commands found in stream
[2026-06-22 00:15:03,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:15:03,670.670 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-22 00:15:07,622.622 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:15:07,625.625 INFO    ] Checking for system updates...
[2026-06-22 00:15:07,662.662 INFO    ] 200
[2026-06-22 00:15:07,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:15:07,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:15:07,722.722 INFO    ] No update needed
[2026-06-22 00:15:07,725.725 INFO    ] Checking for camera pi updates...
[2026-06-22 00:15:07,760.760 INFO    ] 200
[2026-06-22 00:15:07,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:15:07,811.811 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:15:07,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:15:07,892.892 INFO    ] No camera update needed
[2026-06-22 00:15:07,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:15:07,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:15:07,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:15:07,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:15:09,949.949 INFO    ] ================================================
[2026-06-22 00:15:09,965.965 INFO    ] Launching Daemon at Mon Jun 22 00:15:09 IST 2026
[2026-06-22 00:15:09,976.976 INFO    ] ================================================
[2026-06-22 00:15:10,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:15:10
[2026-06-22 00:15:11,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:15:11,423.423 INFO    ] Initializing speech engine...
[2026-06-22 00:15:11,446.446 INFO    ] 2026-06-22 00:15:11
[2026-06-22 00:15:11,703.703 INFO    ] 2026-06-22 00:15:11
[2026-06-22 00:15:11,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:15:11,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:15:11,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:15:12,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:15:12,076.076 INFO    ] time= 22/06/2026 00:15:12
[2026-06-22 00:15:12,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:15:12,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:15:12,264.264 INFO    ] No existing commands found in stream
[2026-06-22 00:15:17,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:15:17,287.287 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-22 00:15:20,489.489 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:15:20,492.492 INFO    ] Checking for system updates...
[2026-06-22 00:15:20,529.529 INFO    ] 200
[2026-06-22 00:15:20,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:15:20,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:15:20,594.594 INFO    ] No update needed
[2026-06-22 00:15:20,597.597 INFO    ] Checking for camera pi updates...
[2026-06-22 00:15:20,631.631 INFO    ] 200
[2026-06-22 00:15:20,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:15:20,655.655 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:15:20,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:15:20,731.731 INFO    ] No camera update needed
[2026-06-22 00:15:20,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:15:20,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:15:20,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:15:20,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:15:22,789.789 INFO    ] ================================================
[2026-06-22 00:15:22,806.806 INFO    ] Launching Daemon at Mon Jun 22 00:15:22 IST 2026
[2026-06-22 00:15:22,818.818 INFO    ] ================================================
[2026-06-22 00:15:23,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:15:23
[2026-06-22 00:15:23,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:15:24,146.146 INFO    ] Initializing speech engine...
[2026-06-22 00:15:24,161.161 INFO    ] 2026-06-22 00:15:24
[2026-06-22 00:15:24,424.424 INFO    ] 2026-06-22 00:15:24
[2026-06-22 00:15:24,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:15:24,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:15:24,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:15:24,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:15:24,812.812 INFO    ] time= 22/06/2026 00:15:24
[2026-06-22 00:15:24,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:15:24,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:15:24,974.974 INFO    ] No existing commands found in stream
[2026-06-22 00:15:30,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:15:30,007.007 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-22 00:15:33,017.017 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:15:33,019.019 INFO    ] Checking for system updates...
[2026-06-22 00:15:33,055.055 INFO    ] 200
[2026-06-22 00:15:33,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:15:33,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:15:33,113.113 INFO    ] No update needed
[2026-06-22 00:15:33,116.116 INFO    ] Checking for camera pi updates...
[2026-06-22 00:15:33,150.150 INFO    ] 200
[2026-06-22 00:15:33,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:15:33,199.199 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:15:33,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:15:33,277.277 INFO    ] No camera update needed
[2026-06-22 00:15:33,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:15:33,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:15:33,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:15:33,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:15:35,335.335 INFO    ] ================================================
[2026-06-22 00:15:35,350.350 INFO    ] Launching Daemon at Mon Jun 22 00:15:35 IST 2026
[2026-06-22 00:15:35,361.361 INFO    ] ================================================
[2026-06-22 00:15:35,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:15:35
[2026-06-22 00:15:36,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:15:36,672.672 INFO    ] Initializing speech engine...
[2026-06-22 00:15:36,695.695 INFO    ] 2026-06-22 00:15:36
[2026-06-22 00:15:36,948.948 INFO    ] 2026-06-22 00:15:36
[2026-06-22 00:15:36,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:15:37,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:15:37,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:15:37,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:15:37,398.398 INFO    ] time= 22/06/2026 00:15:37
[2026-06-22 00:15:37,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:15:37,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:15:37,569.569 INFO    ] No existing commands found in stream
[2026-06-22 00:15:42,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:15:42,584.584 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-22 00:15:44,282.282 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:15:44,284.284 INFO    ] Checking for system updates...
[2026-06-22 00:15:44,324.324 INFO    ] 200
[2026-06-22 00:15:44,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:15:44,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:15:44,388.388 INFO    ] No update needed
[2026-06-22 00:15:44,390.390 INFO    ] Checking for camera pi updates...
[2026-06-22 00:15:44,428.428 INFO    ] 200
[2026-06-22 00:15:44,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:15:44,471.471 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:15:44,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:15:44,547.547 INFO    ] No camera update needed
[2026-06-22 00:15:44,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:15:44,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:15:44,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:15:44,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:15:46,602.602 INFO    ] ================================================
[2026-06-22 00:15:46,618.618 INFO    ] Launching Daemon at Mon Jun 22 00:15:46 IST 2026
[2026-06-22 00:15:46,629.629 INFO    ] ================================================
[2026-06-22 00:15:47,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:15:47
[2026-06-22 00:15:47,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:15:47,967.967 INFO    ] Initializing speech engine...
[2026-06-22 00:15:47,972.972 INFO    ] 2026-06-22 00:15:47
[2026-06-22 00:15:48,220.220 INFO    ] 2026-06-22 00:15:48
[2026-06-22 00:15:48,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:15:48,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:15:48,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:15:48,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:15:48,704.704 INFO    ] time= 22/06/2026 00:15:48
[2026-06-22 00:15:48,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:15:48,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:15:48,842.842 INFO    ] No existing commands found in stream
[2026-06-22 00:15:53,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:15:53,857.857 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-22 00:15:57,413.413 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:15:57,416.416 INFO    ] Checking for system updates...
[2026-06-22 00:15:57,457.457 INFO    ] 200
[2026-06-22 00:15:57,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:15:57,520.520 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:15:57,523.523 INFO    ] No update needed
[2026-06-22 00:15:57,525.525 INFO    ] Checking for camera pi updates...
[2026-06-22 00:15:57,559.559 INFO    ] 200
[2026-06-22 00:15:57,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:15:57,602.602 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:15:57,684.684 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:15:57,687.687 INFO    ] No camera update needed
[2026-06-22 00:15:57,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:15:57,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:15:57,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:15:57,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:15:59,742.742 INFO    ] ================================================
[2026-06-22 00:15:59,758.758 INFO    ] Launching Daemon at Mon Jun 22 00:15:59 IST 2026
[2026-06-22 00:15:59,770.770 INFO    ] ================================================
[2026-06-22 00:16:00,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:16:00
[2026-06-22 00:16:01,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:16:01,293.293 INFO    ] Initializing speech engine...
[2026-06-22 00:16:01,298.298 INFO    ] 2026-06-22 00:16:01
[2026-06-22 00:16:01,587.587 INFO    ] 2026-06-22 00:16:01
[2026-06-22 00:16:01,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:16:01,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:16:01,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:16:01,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:16:01,986.986 INFO    ] time= 22/06/2026 00:16:01
[2026-06-22 00:16:01,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:16:01,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:16:02,076.076 INFO    ] No existing commands found in stream
[2026-06-22 00:16:07,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:16:07,089.089 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-22 00:16:09,643.643 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:16:09,644.644 INFO    ] Checking for system updates...
[2026-06-22 00:16:09,666.666 INFO    ] 200
[2026-06-22 00:16:09,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:16:09,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:16:09,701.701 INFO    ] No update needed
[2026-06-22 00:16:09,703.703 INFO    ] Checking for camera pi updates...
[2026-06-22 00:16:09,740.740 INFO    ] 200
[2026-06-22 00:16:09,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:16:09,798.798 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:16:09,878.878 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:16:09,881.881 INFO    ] No camera update needed
[2026-06-22 00:16:09,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:16:09,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:16:09,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:16:09,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:16:11,938.938 INFO    ] ================================================
[2026-06-22 00:16:11,954.954 INFO    ] Launching Daemon at Mon Jun 22 00:16:11 IST 2026
[2026-06-22 00:16:11,966.966 INFO    ] ================================================
[2026-06-22 00:16:12,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:16:12
[2026-06-22 00:16:13,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:16:13,408.408 INFO    ] Initializing speech engine...
[2026-06-22 00:16:13,424.424 INFO    ] 2026-06-22 00:16:13
[2026-06-22 00:16:13,718.718 INFO    ] 2026-06-22 00:16:13
[2026-06-22 00:16:13,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:16:13,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:16:13,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:16:14,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:16:14,116.116 INFO    ] time= 22/06/2026 00:16:14
[2026-06-22 00:16:14,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:16:14,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:16:14,246.246 INFO    ] No existing commands found in stream
[2026-06-22 00:16:19,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:16:19,261.261 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-22 00:16:23,417.417 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:16:23,420.420 INFO    ] Checking for system updates...
[2026-06-22 00:16:23,457.457 INFO    ] 200
[2026-06-22 00:16:23,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:16:23,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:16:23,530.530 INFO    ] No update needed
[2026-06-22 00:16:23,532.532 INFO    ] Checking for camera pi updates...
[2026-06-22 00:16:23,572.572 INFO    ] 200
[2026-06-22 00:16:23,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:16:23,629.629 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:16:23,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:16:23,839.839 INFO    ] No camera update needed
[2026-06-22 00:16:23,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:16:23,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:16:23,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:16:23,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:16:25,897.897 INFO    ] ================================================
[2026-06-22 00:16:25,914.914 INFO    ] Launching Daemon at Mon Jun 22 00:16:25 IST 2026
[2026-06-22 00:16:25,925.925 INFO    ] ================================================
[2026-06-22 00:16:26,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:16:26
[2026-06-22 00:16:27,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:16:27,288.288 INFO    ] Initializing speech engine...
[2026-06-22 00:16:27,298.298 INFO    ] 2026-06-22 00:16:27
[2026-06-22 00:16:27,548.548 INFO    ] 2026-06-22 00:16:27
[2026-06-22 00:16:27,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:16:27,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:16:27,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:16:28,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:16:28,120.120 INFO    ] time= 22/06/2026 00:16:28
[2026-06-22 00:16:28,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:16:28,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:16:28,249.249 INFO    ] No existing commands found in stream
[2026-06-22 00:16:33,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:16:33,287.287 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-22 00:16:35,125.125 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:16:35,128.128 INFO    ] Checking for system updates...
[2026-06-22 00:16:35,165.165 INFO    ] 200
[2026-06-22 00:16:35,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:16:35,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:16:35,225.225 INFO    ] No update needed
[2026-06-22 00:16:35,227.227 INFO    ] Checking for camera pi updates...
[2026-06-22 00:16:35,267.267 INFO    ] 200
[2026-06-22 00:16:35,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:16:35,310.310 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:16:35,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:16:35,368.368 INFO    ] No camera update needed
[2026-06-22 00:16:35,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:16:35,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:16:35,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:16:35,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:16:37,428.428 INFO    ] ================================================
[2026-06-22 00:16:37,444.444 INFO    ] Launching Daemon at Mon Jun 22 00:16:37 IST 2026
[2026-06-22 00:16:37,455.455 INFO    ] ================================================
[2026-06-22 00:16:38,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:16:38
[2026-06-22 00:16:38,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:16:38,775.775 INFO    ] Initializing speech engine...
[2026-06-22 00:16:38,783.783 INFO    ] 2026-06-22 00:16:38
[2026-06-22 00:16:39,058.058 INFO    ] 2026-06-22 00:16:39
[2026-06-22 00:16:39,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:16:39,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:16:39,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:16:39,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:16:39,514.514 INFO    ] time= 22/06/2026 00:16:39
[2026-06-22 00:16:39,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:16:39,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:16:39,680.680 INFO    ] No existing commands found in stream
[2026-06-22 00:16:44,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:16:44,703.703 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-22 00:16:46,783.783 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:16:46,786.786 INFO    ] Checking for system updates...
[2026-06-22 00:16:46,823.823 INFO    ] 200
[2026-06-22 00:16:46,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:16:46,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:16:46,894.894 INFO    ] No update needed
[2026-06-22 00:16:46,897.897 INFO    ] Checking for camera pi updates...
[2026-06-22 00:16:46,936.936 INFO    ] 200
[2026-06-22 00:16:46,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:16:46,986.986 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:16:47,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:16:47,041.041 INFO    ] No camera update needed
[2026-06-22 00:16:47,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:16:47,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:16:47,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:16:47,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:16:49,099.099 INFO    ] ================================================
[2026-06-22 00:16:49,115.115 INFO    ] Launching Daemon at Mon Jun 22 00:16:49 IST 2026
[2026-06-22 00:16:49,126.126 INFO    ] ================================================
[2026-06-22 00:16:49,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:16:49
[2026-06-22 00:16:50,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:16:50,569.569 INFO    ] Initializing speech engine...
[2026-06-22 00:16:50,585.585 INFO    ] 2026-06-22 00:16:50
[2026-06-22 00:16:50,867.867 INFO    ] 2026-06-22 00:16:50
[2026-06-22 00:16:50,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:16:51,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:16:51,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:16:51,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:16:51,301.301 INFO    ] time= 22/06/2026 00:16:51
[2026-06-22 00:16:51,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:16:51,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:16:51,388.388 INFO    ] No existing commands found in stream
[2026-06-22 00:16:56,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:16:56,403.403 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-22 00:16:59,033.033 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:16:59,035.035 INFO    ] Checking for system updates...
[2026-06-22 00:16:59,076.076 INFO    ] 200
[2026-06-22 00:16:59,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:16:59,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:16:59,134.134 INFO    ] No update needed
[2026-06-22 00:16:59,137.137 INFO    ] Checking for camera pi updates...
[2026-06-22 00:16:59,175.175 INFO    ] 200
[2026-06-22 00:16:59,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:16:59,218.218 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:16:59,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:16:59,311.311 INFO    ] No camera update needed
[2026-06-22 00:16:59,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:16:59,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:16:59,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:16:59,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:17:01,369.369 INFO    ] ================================================
[2026-06-22 00:17:01,385.385 INFO    ] Launching Daemon at Mon Jun 22 00:17:01 IST 2026
[2026-06-22 00:17:01,397.397 INFO    ] ================================================
[2026-06-22 00:17:02,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:17:02
[2026-06-22 00:17:02,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:17:03,389.389 INFO    ] Initializing speech engine...
[2026-06-22 00:17:03,400.400 INFO    ] 2026-06-22 00:17:03
[2026-06-22 00:17:03,719.719 INFO    ] 2026-06-22 00:17:03
[2026-06-22 00:17:03,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:17:04,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:17:04,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:17:04,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:17:04,222.222 INFO    ] time= 22/06/2026 00:17:04
[2026-06-22 00:17:04,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:17:04,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:17:04,359.359 INFO    ] No existing commands found in stream
[2026-06-22 00:17:09,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:17:09,391.391 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-22 00:17:13,398.398 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:17:13,401.401 INFO    ] Checking for system updates...
[2026-06-22 00:17:13,437.437 INFO    ] 200
[2026-06-22 00:17:13,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:17:13,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:17:13,505.505 INFO    ] No update needed
[2026-06-22 00:17:13,508.508 INFO    ] Checking for camera pi updates...
[2026-06-22 00:17:13,542.542 INFO    ] 200
[2026-06-22 00:17:13,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:17:13,586.586 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:17:13,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:17:13,668.668 INFO    ] No camera update needed
[2026-06-22 00:17:13,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:17:13,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:17:13,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:17:13,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:17:15,724.724 INFO    ] ================================================
[2026-06-22 00:17:15,741.741 INFO    ] Launching Daemon at Mon Jun 22 00:17:15 IST 2026
[2026-06-22 00:17:15,752.752 INFO    ] ================================================
[2026-06-22 00:17:16,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:17:16
[2026-06-22 00:17:16,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:17:17,065.065 INFO    ] Initializing speech engine...
[2026-06-22 00:17:17,088.088 INFO    ] 2026-06-22 00:17:17
[2026-06-22 00:17:17,342.342 INFO    ] 2026-06-22 00:17:17
[2026-06-22 00:17:17,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:17:17,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:17:17,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:17:17,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:17:17,819.819 INFO    ] time= 22/06/2026 00:17:17
[2026-06-22 00:17:17,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:17:17,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:17:17,963.963 INFO    ] No existing commands found in stream
[2026-06-22 00:17:22,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:17:22,977.977 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-22 00:17:25,031.031 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:17:25,034.034 INFO    ] Checking for system updates...
[2026-06-22 00:17:25,070.070 INFO    ] 200
[2026-06-22 00:17:25,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:17:25,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:17:25,147.147 INFO    ] No update needed
[2026-06-22 00:17:25,149.149 INFO    ] Checking for camera pi updates...
[2026-06-22 00:17:25,187.187 INFO    ] 200
[2026-06-22 00:17:25,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:17:25,234.234 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:17:25,294.294 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:17:25,296.296 INFO    ] No camera update needed
[2026-06-22 00:17:25,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:17:25,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:17:25,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:17:25,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:17:27,354.354 INFO    ] ================================================
[2026-06-22 00:17:27,370.370 INFO    ] Launching Daemon at Mon Jun 22 00:17:27 IST 2026
[2026-06-22 00:17:27,381.381 INFO    ] ================================================
[2026-06-22 00:17:27,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:17:27
[2026-06-22 00:17:28,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:17:28,744.744 INFO    ] Initializing speech engine...
[2026-06-22 00:17:28,753.753 INFO    ] 2026-06-22 00:17:28
[2026-06-22 00:17:29,049.049 INFO    ] 2026-06-22 00:17:29
[2026-06-22 00:17:29,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:17:29,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:17:29,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:17:29,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:17:29,425.425 INFO    ] time= 22/06/2026 00:17:29
[2026-06-22 00:17:29,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:17:29,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:17:29,549.549 INFO    ] No existing commands found in stream
[2026-06-22 00:17:34,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:17:34,565.565 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-22 00:17:38,691.691 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:17:38,693.693 INFO    ] Checking for system updates...
[2026-06-22 00:17:38,730.730 INFO    ] 200
[2026-06-22 00:17:38,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:17:38,795.795 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:17:38,798.798 INFO    ] No update needed
[2026-06-22 00:17:38,801.801 INFO    ] Checking for camera pi updates...
[2026-06-22 00:17:38,836.836 INFO    ] 200
[2026-06-22 00:17:38,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:17:38,885.885 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:17:38,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:17:38,969.969 INFO    ] No camera update needed
[2026-06-22 00:17:38,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:17:38,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:17:38,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:17:38,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:17:41,025.025 INFO    ] ================================================
[2026-06-22 00:17:41,041.041 INFO    ] Launching Daemon at Mon Jun 22 00:17:41 IST 2026
[2026-06-22 00:17:41,052.052 INFO    ] ================================================
[2026-06-22 00:17:41,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:17:41
[2026-06-22 00:17:42,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:17:42,667.667 INFO    ] Initializing speech engine...
[2026-06-22 00:17:42,680.680 INFO    ] 2026-06-22 00:17:42
[2026-06-22 00:17:42,963.963 INFO    ] 2026-06-22 00:17:42
[2026-06-22 00:17:43,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:17:43,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:17:43,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:17:43,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:17:43,464.464 INFO    ] time= 22/06/2026 00:17:43
[2026-06-22 00:17:43,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:17:43,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:17:43,646.646 INFO    ] No existing commands found in stream
[2026-06-22 00:17:48,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:17:48,681.681 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-22 00:17:52,220.220 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:17:52,223.223 INFO    ] Checking for system updates...
[2026-06-22 00:17:52,260.260 INFO    ] 200
[2026-06-22 00:17:52,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:17:52,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:17:52,325.325 INFO    ] No update needed
[2026-06-22 00:17:52,328.328 INFO    ] Checking for camera pi updates...
[2026-06-22 00:17:52,365.365 INFO    ] 200
[2026-06-22 00:17:52,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:17:52,415.415 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:17:52,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:17:52,507.507 INFO    ] No camera update needed
[2026-06-22 00:17:52,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:17:52,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:17:52,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:17:52,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:17:54,565.565 INFO    ] ================================================
[2026-06-22 00:17:54,580.580 INFO    ] Launching Daemon at Mon Jun 22 00:17:54 IST 2026
[2026-06-22 00:17:54,591.591 INFO    ] ================================================
[2026-06-22 00:17:55,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:17:55
[2026-06-22 00:17:55,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:17:56,027.027 INFO    ] Initializing speech engine...
[2026-06-22 00:17:56,061.061 INFO    ] 2026-06-22 00:17:56
[2026-06-22 00:17:56,335.335 INFO    ] 2026-06-22 00:17:56
[2026-06-22 00:17:56,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:17:56,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:17:56,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:17:56,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:17:56,749.749 INFO    ] time= 22/06/2026 00:17:56
[2026-06-22 00:17:56,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:17:56,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:17:56,935.935 INFO    ] No existing commands found in stream
[2026-06-22 00:18:01,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:18:01,953.953 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-22 00:18:04,561.561 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:18:04,563.563 INFO    ] Checking for system updates...
[2026-06-22 00:18:04,603.603 INFO    ] 200
[2026-06-22 00:18:04,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:18:04,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:18:04,665.665 INFO    ] No update needed
[2026-06-22 00:18:04,667.667 INFO    ] Checking for camera pi updates...
[2026-06-22 00:18:04,703.703 INFO    ] 200
[2026-06-22 00:18:04,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:18:04,749.749 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:18:04,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:18:04,827.827 INFO    ] No camera update needed
[2026-06-22 00:18:04,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:18:04,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:18:04,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:18:04,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:18:06,887.887 INFO    ] ================================================
[2026-06-22 00:18:06,907.907 INFO    ] Launching Daemon at Mon Jun 22 00:18:06 IST 2026
[2026-06-22 00:18:06,918.918 INFO    ] ================================================
[2026-06-22 00:18:07,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:18:07
[2026-06-22 00:18:08,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:18:08,382.382 INFO    ] Initializing speech engine...
[2026-06-22 00:18:08,391.391 INFO    ] 2026-06-22 00:18:08
[2026-06-22 00:18:08,636.636 INFO    ] 2026-06-22 00:18:08
[2026-06-22 00:18:08,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:18:08,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:18:08,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:18:09,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:18:09,080.080 INFO    ] time= 22/06/2026 00:18:09
[2026-06-22 00:18:09,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:18:09,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:18:09,254.254 INFO    ] No existing commands found in stream
[2026-06-22 00:18:14,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:18:14,268.268 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-22 00:18:15,937.937 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:18:15,940.940 INFO    ] Checking for system updates...
[2026-06-22 00:18:15,978.978 INFO    ] 200
[2026-06-22 00:18:15,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:18:16,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:18:16,035.035 INFO    ] No update needed
[2026-06-22 00:18:16,037.037 INFO    ] Checking for camera pi updates...
[2026-06-22 00:18:16,075.075 INFO    ] 200
[2026-06-22 00:18:16,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:18:16,117.117 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:18:16,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:18:16,199.199 INFO    ] No camera update needed
[2026-06-22 00:18:16,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:18:16,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:18:16,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:18:16,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:18:18,259.259 INFO    ] ================================================
[2026-06-22 00:18:18,275.275 INFO    ] Launching Daemon at Mon Jun 22 00:18:18 IST 2026
[2026-06-22 00:18:18,286.286 INFO    ] ================================================
[2026-06-22 00:18:18,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:18:18
[2026-06-22 00:18:19,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:18:19,708.708 INFO    ] Initializing speech engine...
[2026-06-22 00:18:19,722.722 INFO    ] 2026-06-22 00:18:19
[2026-06-22 00:18:19,988.988 INFO    ] 2026-06-22 00:18:19
[2026-06-22 00:18:20,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:18:20,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:18:20,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:18:20,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:18:20,340.340 INFO    ] time= 22/06/2026 00:18:20
[2026-06-22 00:18:20,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:18:20,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:18:20,437.437 INFO    ] No existing commands found in stream
[2026-06-22 00:18:25,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:18:25,452.452 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-22 00:18:29,556.556 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:18:29,558.558 INFO    ] Checking for system updates...
[2026-06-22 00:18:29,602.602 INFO    ] 200
[2026-06-22 00:18:29,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:18:29,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:18:29,673.673 INFO    ] No update needed
[2026-06-22 00:18:29,676.676 INFO    ] Checking for camera pi updates...
[2026-06-22 00:18:29,713.713 INFO    ] 200
[2026-06-22 00:18:29,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:18:29,762.762 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:18:29,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:18:29,958.958 INFO    ] No camera update needed
[2026-06-22 00:18:29,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:18:29,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:18:29,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:18:29,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:18:32,015.015 INFO    ] ================================================
[2026-06-22 00:18:32,033.033 INFO    ] Launching Daemon at Mon Jun 22 00:18:32 IST 2026
[2026-06-22 00:18:32,045.045 INFO    ] ================================================
[2026-06-22 00:18:32,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:18:32
[2026-06-22 00:18:33,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:18:33,533.533 INFO    ] Initializing speech engine...
[2026-06-22 00:18:33,543.543 INFO    ] 2026-06-22 00:18:33
[2026-06-22 00:18:33,791.791 INFO    ] 2026-06-22 00:18:33
[2026-06-22 00:18:33,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:18:33,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:18:34,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:18:34,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:18:34,161.161 INFO    ] time= 22/06/2026 00:18:34
[2026-06-22 00:18:34,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:18:34,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:18:34,334.334 INFO    ] No existing commands found in stream
[2026-06-22 00:18:39,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:18:39,367.367 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-22 00:18:40,770.770 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:18:40,772.772 INFO    ] Checking for system updates...
[2026-06-22 00:18:40,793.793 INFO    ] 200
[2026-06-22 00:18:40,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:18:40,825.825 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:18:40,826.826 INFO    ] No update needed
[2026-06-22 00:18:40,828.828 INFO    ] Checking for camera pi updates...
[2026-06-22 00:18:40,847.847 INFO    ] 200
[2026-06-22 00:18:40,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:18:40,900.900 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:18:40,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:18:40,996.996 INFO    ] No camera update needed
[2026-06-22 00:18:40,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:18:41,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:18:41,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:18:41,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:18:43,055.055 INFO    ] ================================================
[2026-06-22 00:18:43,071.071 INFO    ] Launching Daemon at Mon Jun 22 00:18:43 IST 2026
[2026-06-22 00:18:43,082.082 INFO    ] ================================================
[2026-06-22 00:18:43,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:18:43
[2026-06-22 00:18:44,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:18:44,424.424 INFO    ] Initializing speech engine...
[2026-06-22 00:18:44,448.448 INFO    ] 2026-06-22 00:18:44
[2026-06-22 00:18:44,715.715 INFO    ] 2026-06-22 00:18:44
[2026-06-22 00:18:44,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:18:44,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:18:44,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:18:45,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:18:45,115.115 INFO    ] time= 22/06/2026 00:18:45
[2026-06-22 00:18:45,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:18:45,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:18:45,195.195 INFO    ] No existing commands found in stream
[2026-06-22 00:18:50,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:18:50,211.211 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-22 00:18:53,898.898 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:18:53,901.901 INFO    ] Checking for system updates...
[2026-06-22 00:18:53,937.937 INFO    ] 200
[2026-06-22 00:18:53,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:18:53,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:18:53,999.999 INFO    ] No update needed
[2026-06-22 00:18:54,001.001 INFO    ] Checking for camera pi updates...
[2026-06-22 00:18:54,038.038 INFO    ] 200
[2026-06-22 00:18:54,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:18:54,084.084 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:18:54,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:18:54,153.153 INFO    ] No camera update needed
[2026-06-22 00:18:54,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:18:54,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:18:54,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:18:54,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:18:56,208.208 INFO    ] ================================================
[2026-06-22 00:18:56,223.223 INFO    ] Launching Daemon at Mon Jun 22 00:18:56 IST 2026
[2026-06-22 00:18:56,234.234 INFO    ] ================================================
[2026-06-22 00:18:56,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:18:56
[2026-06-22 00:18:57,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:18:57,728.728 INFO    ] Initializing speech engine...
[2026-06-22 00:18:57,741.741 INFO    ] 2026-06-22 00:18:57
[2026-06-22 00:18:58,023.023 INFO    ] 2026-06-22 00:18:58
[2026-06-22 00:18:58,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:18:58,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:18:58,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:18:58,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:18:58,475.475 INFO    ] time= 22/06/2026 00:18:58
[2026-06-22 00:18:58,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:18:58,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:18:58,617.617 INFO    ] No existing commands found in stream
[2026-06-22 00:19:03,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:19:03,650.650 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-22 00:19:06,451.451 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:19:06,454.454 INFO    ] Checking for system updates...
[2026-06-22 00:19:06,491.491 INFO    ] 200
[2026-06-22 00:19:06,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:19:06,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:19:06,550.550 INFO    ] No update needed
[2026-06-22 00:19:06,552.552 INFO    ] Checking for camera pi updates...
[2026-06-22 00:19:06,590.590 INFO    ] 200
[2026-06-22 00:19:06,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:19:06,633.633 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:19:06,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:19:06,690.690 INFO    ] No camera update needed
[2026-06-22 00:19:06,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:19:06,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:19:06,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:19:06,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:19:08,748.748 INFO    ] ================================================
[2026-06-22 00:19:08,764.764 INFO    ] Launching Daemon at Mon Jun 22 00:19:08 IST 2026
[2026-06-22 00:19:08,776.776 INFO    ] ================================================
[2026-06-22 00:19:09,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:19:09
[2026-06-22 00:19:09,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:19:10,220.220 INFO    ] Initializing speech engine...
[2026-06-22 00:19:10,226.226 INFO    ] 2026-06-22 00:19:10
[2026-06-22 00:19:10,473.473 INFO    ] 2026-06-22 00:19:10
[2026-06-22 00:19:10,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:19:10,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:19:10,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:19:10,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:19:10,941.941 INFO    ] time= 22/06/2026 00:19:10
[2026-06-22 00:19:10,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:19:11,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:19:11,109.109 INFO    ] No existing commands found in stream
[2026-06-22 00:19:16,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:19:16,124.124 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-22 00:19:18,383.383 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:19:18,386.386 INFO    ] Checking for system updates...
[2026-06-22 00:19:18,408.408 INFO    ] 200
[2026-06-22 00:19:18,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:19:18,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:19:18,443.443 INFO    ] No update needed
[2026-06-22 00:19:18,444.444 INFO    ] Checking for camera pi updates...
[2026-06-22 00:19:18,464.464 INFO    ] 200
[2026-06-22 00:19:18,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:19:18,490.490 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:19:18,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:19:18,573.573 INFO    ] No camera update needed
[2026-06-22 00:19:18,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:19:18,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:19:18,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:19:18,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:19:20,629.629 INFO    ] ================================================
[2026-06-22 00:19:20,645.645 INFO    ] Launching Daemon at Mon Jun 22 00:19:20 IST 2026
[2026-06-22 00:19:20,656.656 INFO    ] ================================================
[2026-06-22 00:19:21,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:19:21
[2026-06-22 00:19:21,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:19:22,171.171 INFO    ] Initializing speech engine...
[2026-06-22 00:19:22,180.180 INFO    ] 2026-06-22 00:19:22
[2026-06-22 00:19:22,449.449 INFO    ] 2026-06-22 00:19:22
[2026-06-22 00:19:22,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:19:22,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:19:22,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:19:22,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:19:22,999.999 INFO    ] time= 22/06/2026 00:19:22
[2026-06-22 00:19:23,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:19:23,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:19:23,155.155 INFO    ] No existing commands found in stream
[2026-06-22 00:19:28,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:19:28,170.170 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-22 00:19:29,410.410 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:19:29,411.411 INFO    ] Checking for system updates...
[2026-06-22 00:19:29,435.435 INFO    ] 200
[2026-06-22 00:19:29,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:19:29,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:19:29,471.471 INFO    ] No update needed
[2026-06-22 00:19:29,472.472 INFO    ] Checking for camera pi updates...
[2026-06-22 00:19:29,503.503 INFO    ] 200
[2026-06-22 00:19:29,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:19:29,551.551 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:19:29,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:19:29,631.631 INFO    ] No camera update needed
[2026-06-22 00:19:29,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:19:29,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:19:29,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:19:29,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:19:31,696.696 INFO    ] ================================================
[2026-06-22 00:19:31,715.715 INFO    ] Launching Daemon at Mon Jun 22 00:19:31 IST 2026
[2026-06-22 00:19:31,728.728 INFO    ] ================================================
[2026-06-22 00:19:32,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:19:32
[2026-06-22 00:19:32,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:19:33,215.215 INFO    ] Initializing speech engine...
[2026-06-22 00:19:33,222.222 INFO    ] 2026-06-22 00:19:33
[2026-06-22 00:19:33,515.515 INFO    ] 2026-06-22 00:19:33
[2026-06-22 00:19:33,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:19:33,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:19:33,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:19:33,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:19:33,942.942 INFO    ] time= 22/06/2026 00:19:33
[2026-06-22 00:19:33,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:19:33,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:19:34,030.030 INFO    ] No existing commands found in stream
[2026-06-22 00:19:39,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:19:39,046.046 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-22 00:19:40,474.474 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:19:40,477.477 INFO    ] Checking for system updates...
[2026-06-22 00:19:40,513.513 INFO    ] 200
[2026-06-22 00:19:40,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:19:40,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:19:40,570.570 INFO    ] No update needed
[2026-06-22 00:19:40,572.572 INFO    ] Checking for camera pi updates...
[2026-06-22 00:19:40,606.606 INFO    ] 200
[2026-06-22 00:19:40,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:19:40,660.660 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:19:40,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:19:40,767.767 INFO    ] No camera update needed
[2026-06-22 00:19:40,769.769 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:19:40,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:19:40,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:19:40,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:19:42,823.823 INFO    ] ================================================
[2026-06-22 00:19:42,839.839 INFO    ] Launching Daemon at Mon Jun 22 00:19:42 IST 2026
[2026-06-22 00:19:42,849.849 INFO    ] ================================================
[2026-06-22 00:19:43,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:19:43
[2026-06-22 00:19:43,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:19:44,190.190 INFO    ] Initializing speech engine...
[2026-06-22 00:19:44,199.199 INFO    ] 2026-06-22 00:19:44
[2026-06-22 00:19:44,456.456 INFO    ] 2026-06-22 00:19:44
[2026-06-22 00:19:44,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:19:44,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:19:44,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:19:44,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:19:44,909.909 INFO    ] time= 22/06/2026 00:19:44
[2026-06-22 00:19:44,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:19:45,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:19:45,063.063 INFO    ] No existing commands found in stream
[2026-06-22 00:19:50,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:19:50,077.077 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-22 00:19:53,084.084 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:19:53,087.087 INFO    ] Checking for system updates...
[2026-06-22 00:19:53,126.126 INFO    ] 200
[2026-06-22 00:19:53,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:19:53,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:19:53,190.190 INFO    ] No update needed
[2026-06-22 00:19:53,192.192 INFO    ] Checking for camera pi updates...
[2026-06-22 00:19:53,229.229 INFO    ] 200
[2026-06-22 00:19:53,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:19:53,273.273 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:19:53,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:19:53,321.321 INFO    ] No camera update needed
[2026-06-22 00:19:53,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:19:53,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:19:53,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:19:53,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:19:55,378.378 INFO    ] ================================================
[2026-06-22 00:19:55,393.393 INFO    ] Launching Daemon at Mon Jun 22 00:19:55 IST 2026
[2026-06-22 00:19:55,404.404 INFO    ] ================================================
[2026-06-22 00:19:56,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:19:56
[2026-06-22 00:19:56,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:19:56,901.901 INFO    ] Initializing speech engine...
[2026-06-22 00:19:56,911.911 INFO    ] 2026-06-22 00:19:56
[2026-06-22 00:19:57,181.181 INFO    ] 2026-06-22 00:19:57
[2026-06-22 00:19:57,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:19:57,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:19:57,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:19:57,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:19:57,650.650 INFO    ] time= 22/06/2026 00:19:57
[2026-06-22 00:19:57,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:19:57,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:19:57,796.796 INFO    ] No existing commands found in stream
[2026-06-22 00:20:02,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:20:02,821.821 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-22 00:20:09,102.102 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:20:09,105.105 INFO    ] Checking for system updates...
[2026-06-22 00:20:09,148.148 INFO    ] 200
[2026-06-22 00:20:09,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:20:09,205.205 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:20:09,208.208 INFO    ] No update needed
[2026-06-22 00:20:09,210.210 INFO    ] Checking for camera pi updates...
[2026-06-22 00:20:09,245.245 INFO    ] 200
[2026-06-22 00:20:09,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:20:09,284.284 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:20:09,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:20:09,366.366 INFO    ] No camera update needed
[2026-06-22 00:20:09,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:20:09,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:20:09,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:20:09,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:20:11,427.427 INFO    ] ================================================
[2026-06-22 00:20:11,444.444 INFO    ] Launching Daemon at Mon Jun 22 00:20:11 IST 2026
[2026-06-22 00:20:11,455.455 INFO    ] ================================================
[2026-06-22 00:20:12,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:20:12
[2026-06-22 00:20:12,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:20:12,885.885 INFO    ] Initializing speech engine...
[2026-06-22 00:20:12,891.891 INFO    ] 2026-06-22 00:20:12
[2026-06-22 00:20:13,163.163 INFO    ] 2026-06-22 00:20:13
[2026-06-22 00:20:13,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:20:13,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:20:13,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:20:13,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:20:13,630.630 INFO    ] time= 22/06/2026 00:20:13
[2026-06-22 00:20:13,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:20:13,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:20:13,782.782 INFO    ] No existing commands found in stream
[2026-06-22 00:20:18,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:20:18,797.797 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-22 00:20:19,597.597 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:20:19,600.600 INFO    ] Checking for system updates...
[2026-06-22 00:20:19,645.645 INFO    ] 200
[2026-06-22 00:20:19,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 00:20:19,651.651 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-22 00:20:19,653.653 INFO    ] Checking for camera pi updates...
[2026-06-22 00:20:19,703.703 INFO    ] 200
[2026-06-22 00:20:19,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 00:20:19,708.708 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-22 00:20:19,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:20:19,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:20:19,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:20:19,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:20:21,769.769 INFO    ] ================================================
[2026-06-22 00:20:21,784.784 INFO    ] Launching Daemon at Mon Jun 22 00:20:21 IST 2026
[2026-06-22 00:20:21,795.795 INFO    ] ================================================
[2026-06-22 00:20:22,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:20:22
[2026-06-22 00:20:23,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:20:23,328.328 INFO    ] Initializing speech engine...
[2026-06-22 00:20:23,337.337 INFO    ] 2026-06-22 00:20:23
[2026-06-22 00:20:23,595.595 INFO    ] 2026-06-22 00:20:23
[2026-06-22 00:20:23,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:20:23,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:20:23,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:20:23,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:20:23,968.968 INFO    ] time= 22/06/2026 00:20:23
[2026-06-22 00:20:24,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:20:24,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:20:24,162.162 INFO    ] No existing commands found in stream
[2026-06-22 00:20:29,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:20:29,176.176 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-22 00:20:30,157.157 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:20:30,159.159 INFO    ] Checking for system updates...
[2026-06-22 00:20:30,200.200 INFO    ] 200
[2026-06-22 00:20:30,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:20:30,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:20:30,245.245 INFO    ] No update needed
[2026-06-22 00:20:30,247.247 INFO    ] Checking for camera pi updates...
[2026-06-22 00:20:30,266.266 INFO    ] 200
[2026-06-22 00:20:30,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:20:30,292.292 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:20:30,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:20:30,400.400 INFO    ] No camera update needed
[2026-06-22 00:20:30,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:20:30,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:20:30,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:20:30,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:20:32,457.457 INFO    ] ================================================
[2026-06-22 00:20:32,474.474 INFO    ] Launching Daemon at Mon Jun 22 00:20:32 IST 2026
[2026-06-22 00:20:32,487.487 INFO    ] ================================================
[2026-06-22 00:20:33,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:20:33
[2026-06-22 00:20:33,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:20:33,974.974 INFO    ] Initializing speech engine...
[2026-06-22 00:20:33,984.984 INFO    ] 2026-06-22 00:20:33
[2026-06-22 00:20:34,264.264 INFO    ] 2026-06-22 00:20:34
[2026-06-22 00:20:34,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:20:34,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:20:34,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:20:34,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:20:34,603.603 INFO    ] time= 22/06/2026 00:20:34
[2026-06-22 00:20:34,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:20:34,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:20:34,731.731 INFO    ] No existing commands found in stream
[2026-06-22 00:20:39,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:20:39,764.764 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-22 00:20:42,065.065 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:20:42,067.067 INFO    ] Checking for system updates...
[2026-06-22 00:20:42,104.104 INFO    ] 200
[2026-06-22 00:20:42,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:20:42,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:20:42,171.171 INFO    ] No update needed
[2026-06-22 00:20:42,174.174 INFO    ] Checking for camera pi updates...
[2026-06-22 00:20:42,213.213 INFO    ] 200
[2026-06-22 00:20:42,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:20:42,262.262 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:20:42,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:20:42,352.352 INFO    ] No camera update needed
[2026-06-22 00:20:42,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:20:42,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:20:42,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:20:42,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:20:44,412.412 INFO    ] ================================================
[2026-06-22 00:20:44,428.428 INFO    ] Launching Daemon at Mon Jun 22 00:20:44 IST 2026
[2026-06-22 00:20:44,439.439 INFO    ] ================================================
[2026-06-22 00:20:45,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:20:45
[2026-06-22 00:20:45,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:20:45,931.931 INFO    ] Initializing speech engine...
[2026-06-22 00:20:45,945.945 INFO    ] 2026-06-22 00:20:45
[2026-06-22 00:20:46,238.238 INFO    ] 2026-06-22 00:20:46
[2026-06-22 00:20:46,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:20:46,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:20:46,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:20:46,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:20:46,578.578 INFO    ] time= 22/06/2026 00:20:46
[2026-06-22 00:20:46,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:20:46,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:20:46,712.712 INFO    ] No existing commands found in stream
[2026-06-22 00:20:51,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:20:51,727.727 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-22 00:20:52,287.287 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:20:52,289.289 INFO    ] Checking for system updates...
[2026-06-22 00:20:52,310.310 INFO    ] 200
[2026-06-22 00:20:52,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:20:52,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:20:52,365.365 INFO    ] No update needed
[2026-06-22 00:20:52,368.368 INFO    ] Checking for camera pi updates...
[2026-06-22 00:20:52,406.406 INFO    ] 200
[2026-06-22 00:20:52,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:20:52,452.452 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:20:52,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:20:52,533.533 INFO    ] No camera update needed
[2026-06-22 00:20:52,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:20:52,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:20:52,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:20:52,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:20:54,591.591 INFO    ] ================================================
[2026-06-22 00:20:54,606.606 INFO    ] Launching Daemon at Mon Jun 22 00:20:54 IST 2026
[2026-06-22 00:20:54,617.617 INFO    ] ================================================
[2026-06-22 00:20:55,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:20:55
[2026-06-22 00:20:55,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:20:56,088.088 INFO    ] Initializing speech engine...
[2026-06-22 00:20:56,097.097 INFO    ] 2026-06-22 00:20:56
[2026-06-22 00:20:56,346.346 INFO    ] 2026-06-22 00:20:56
[2026-06-22 00:20:56,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:20:56,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:20:56,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:20:56,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:20:56,759.759 INFO    ] time= 22/06/2026 00:20:56
[2026-06-22 00:20:56,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:20:56,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:20:56,928.928 INFO    ] No existing commands found in stream
[2026-06-22 00:21:01,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:21:01,958.958 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-22 00:21:03,346.346 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:21:03,349.349 INFO    ] Checking for system updates...
[2026-06-22 00:21:03,388.388 INFO    ] 200
[2026-06-22 00:21:03,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:21:03,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:21:03,451.451 INFO    ] No update needed
[2026-06-22 00:21:03,454.454 INFO    ] Checking for camera pi updates...
[2026-06-22 00:21:03,490.490 INFO    ] 200
[2026-06-22 00:21:03,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:21:03,535.535 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:21:03,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:21:03,618.618 INFO    ] No camera update needed
[2026-06-22 00:21:03,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:21:03,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:21:03,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:21:03,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:21:05,676.676 INFO    ] ================================================
[2026-06-22 00:21:05,691.691 INFO    ] Launching Daemon at Mon Jun 22 00:21:05 IST 2026
[2026-06-22 00:21:05,702.702 INFO    ] ================================================
[2026-06-22 00:21:06,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:21:06
[2026-06-22 00:21:06,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:21:07,172.172 INFO    ] Initializing speech engine...
[2026-06-22 00:21:07,179.179 INFO    ] 2026-06-22 00:21:07
[2026-06-22 00:21:07,474.474 INFO    ] 2026-06-22 00:21:07
[2026-06-22 00:21:07,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:21:07,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:21:07,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:21:07,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:21:07,865.865 INFO    ] time= 22/06/2026 00:21:07
[2026-06-22 00:21:07,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:21:07,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:21:07,994.994 INFO    ] No existing commands found in stream
[2026-06-22 00:21:13,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:21:13,010.010 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-22 00:21:15,923.923 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:21:15,924.924 INFO    ] Checking for system updates...
[2026-06-22 00:21:15,955.955 INFO    ] 200
[2026-06-22 00:21:15,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:21:16,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:21:16,013.013 INFO    ] No update needed
[2026-06-22 00:21:16,016.016 INFO    ] Checking for camera pi updates...
[2026-06-22 00:21:16,052.052 INFO    ] 200
[2026-06-22 00:21:16,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:21:16,101.101 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:21:16,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:21:16,173.173 INFO    ] No camera update needed
[2026-06-22 00:21:16,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:21:16,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:21:16,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:21:16,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:21:18,230.230 INFO    ] ================================================
[2026-06-22 00:21:18,245.245 INFO    ] Launching Daemon at Mon Jun 22 00:21:18 IST 2026
[2026-06-22 00:21:18,255.255 INFO    ] ================================================
[2026-06-22 00:21:18,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:21:18
[2026-06-22 00:21:19,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:21:19,758.758 INFO    ] Initializing speech engine...
[2026-06-22 00:21:19,772.772 INFO    ] 2026-06-22 00:21:19
[2026-06-22 00:21:20,081.081 INFO    ] 2026-06-22 00:21:20
[2026-06-22 00:21:20,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:21:20,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:21:20,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:21:20,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:21:20,517.517 INFO    ] time= 22/06/2026 00:21:20
[2026-06-22 00:21:20,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:21:20,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:21:20,664.664 INFO    ] No existing commands found in stream
[2026-06-22 00:21:25,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:21:25,688.688 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-22 00:21:26,482.482 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:21:26,485.485 INFO    ] Checking for system updates...
[2026-06-22 00:21:26,522.522 INFO    ] 200
[2026-06-22 00:21:26,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:21:26,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:21:26,588.588 INFO    ] No update needed
[2026-06-22 00:21:26,591.591 INFO    ] Checking for camera pi updates...
[2026-06-22 00:21:26,628.628 INFO    ] 200
[2026-06-22 00:21:26,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:21:26,681.681 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:21:26,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:21:26,761.761 INFO    ] No camera update needed
[2026-06-22 00:21:26,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:21:26,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:21:26,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:21:26,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:21:28,818.818 INFO    ] ================================================
[2026-06-22 00:21:28,833.833 INFO    ] Launching Daemon at Mon Jun 22 00:21:28 IST 2026
[2026-06-22 00:21:28,845.845 INFO    ] ================================================
[2026-06-22 00:21:29,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:21:29
[2026-06-22 00:21:29,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:21:30,165.165 INFO    ] Initializing speech engine...
[2026-06-22 00:21:30,174.174 INFO    ] 2026-06-22 00:21:30
[2026-06-22 00:21:30,455.455 INFO    ] 2026-06-22 00:21:30
[2026-06-22 00:21:30,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:21:30,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:21:30,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:21:30,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:21:30,846.846 INFO    ] time= 22/06/2026 00:21:30
[2026-06-22 00:21:30,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:21:30,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:21:31,035.035 INFO    ] No existing commands found in stream
[2026-06-22 00:21:36,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:21:36,068.068 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-22 00:21:38,626.626 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:21:38,628.628 INFO    ] Checking for system updates...
[2026-06-22 00:21:38,667.667 INFO    ] 200
[2026-06-22 00:21:38,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:21:38,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:21:38,728.728 INFO    ] No update needed
[2026-06-22 00:21:38,730.730 INFO    ] Checking for camera pi updates...
[2026-06-22 00:21:38,764.764 INFO    ] 200
[2026-06-22 00:21:38,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:21:38,807.807 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:21:38,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:21:38,892.892 INFO    ] No camera update needed
[2026-06-22 00:21:38,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:21:38,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:21:38,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:21:38,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:21:40,947.947 INFO    ] ================================================
[2026-06-22 00:21:40,963.963 INFO    ] Launching Daemon at Mon Jun 22 00:21:40 IST 2026
[2026-06-22 00:21:40,973.973 INFO    ] ================================================
[2026-06-22 00:21:41,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:21:41
[2026-06-22 00:21:42,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:21:42,463.463 INFO    ] Initializing speech engine...
[2026-06-22 00:21:42,476.476 INFO    ] 2026-06-22 00:21:42
[2026-06-22 00:21:42,744.744 INFO    ] 2026-06-22 00:21:42
[2026-06-22 00:21:42,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:21:42,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:21:42,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:21:43,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:21:43,123.123 INFO    ] time= 22/06/2026 00:21:43
[2026-06-22 00:21:43,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:21:43,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:21:43,306.306 INFO    ] No existing commands found in stream
[2026-06-22 00:21:48,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:21:48,334.334 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-22 00:21:52,344.344 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:21:52,347.347 INFO    ] Checking for system updates...
[2026-06-22 00:21:52,382.382 INFO    ] 200
[2026-06-22 00:21:52,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:21:52,442.442 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:21:52,444.444 INFO    ] No update needed
[2026-06-22 00:21:52,447.447 INFO    ] Checking for camera pi updates...
[2026-06-22 00:21:52,483.483 INFO    ] 200
[2026-06-22 00:21:52,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:21:52,529.529 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:21:52,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:21:52,608.608 INFO    ] No camera update needed
[2026-06-22 00:21:52,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:21:52,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:21:52,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:21:52,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:21:54,664.664 INFO    ] ================================================
[2026-06-22 00:21:54,678.678 INFO    ] Launching Daemon at Mon Jun 22 00:21:54 IST 2026
[2026-06-22 00:21:54,689.689 INFO    ] ================================================
[2026-06-22 00:21:55,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:21:55
[2026-06-22 00:21:55,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:21:56,154.154 INFO    ] Initializing speech engine...
[2026-06-22 00:21:56,169.169 INFO    ] 2026-06-22 00:21:56
[2026-06-22 00:21:56,436.436 INFO    ] 2026-06-22 00:21:56
[2026-06-22 00:21:56,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:21:56,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:21:56,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:21:56,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:21:56,910.910 INFO    ] time= 22/06/2026 00:21:56
[2026-06-22 00:21:56,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:21:56,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:21:57,050.050 INFO    ] No existing commands found in stream
[2026-06-22 00:22:02,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:22:02,079.079 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-22 00:22:05,955.955 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:22:05,956.956 INFO    ] Checking for system updates...
[2026-06-22 00:22:05,978.978 INFO    ] 200
[2026-06-22 00:22:05,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:22:06,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:22:06,041.041 INFO    ] No update needed
[2026-06-22 00:22:06,044.044 INFO    ] Checking for camera pi updates...
[2026-06-22 00:22:06,080.080 INFO    ] 200
[2026-06-22 00:22:06,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:22:06,127.127 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:22:06,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:22:06,211.211 INFO    ] No camera update needed
[2026-06-22 00:22:06,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:22:06,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:22:06,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:22:06,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:22:08,273.273 INFO    ] ================================================
[2026-06-22 00:22:08,289.289 INFO    ] Launching Daemon at Mon Jun 22 00:22:08 IST 2026
[2026-06-22 00:22:08,301.301 INFO    ] ================================================
[2026-06-22 00:22:08,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:22:08
[2026-06-22 00:22:09,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:22:09,653.653 INFO    ] Initializing speech engine...
[2026-06-22 00:22:09,668.668 INFO    ] 2026-06-22 00:22:09
[2026-06-22 00:22:09,951.951 INFO    ] 2026-06-22 00:22:09
[2026-06-22 00:22:09,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:22:10,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:22:10,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:22:10,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:22:10,319.319 INFO    ] time= 22/06/2026 00:22:10
[2026-06-22 00:22:10,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:22:10,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:22:10,440.440 INFO    ] No existing commands found in stream
[2026-06-22 00:22:15,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:22:15,455.455 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-22 00:22:16,577.577 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:22:16,579.579 INFO    ] Checking for system updates...
[2026-06-22 00:22:16,618.618 INFO    ] 200
[2026-06-22 00:22:16,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:22:16,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:22:16,681.681 INFO    ] No update needed
[2026-06-22 00:22:16,683.683 INFO    ] Checking for camera pi updates...
[2026-06-22 00:22:16,720.720 INFO    ] 200
[2026-06-22 00:22:16,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:22:16,763.763 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:22:16,820.820 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:22:16,823.823 INFO    ] No camera update needed
[2026-06-22 00:22:16,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:22:16,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:22:16,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:22:16,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:22:18,880.880 INFO    ] ================================================
[2026-06-22 00:22:18,895.895 INFO    ] Launching Daemon at Mon Jun 22 00:22:18 IST 2026
[2026-06-22 00:22:18,907.907 INFO    ] ================================================
[2026-06-22 00:22:19,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:22:19
[2026-06-22 00:22:20,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:22:20,292.292 INFO    ] Initializing speech engine...
[2026-06-22 00:22:20,300.300 INFO    ] 2026-06-22 00:22:20
[2026-06-22 00:22:20,572.572 INFO    ] 2026-06-22 00:22:20
[2026-06-22 00:22:20,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:22:20,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:22:20,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:22:20,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:22:21,036.036 INFO    ] time= 22/06/2026 00:22:20
[2026-06-22 00:22:21,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:22:21,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:22:21,197.197 INFO    ] No existing commands found in stream
[2026-06-22 00:22:26,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:22:26,237.237 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-22 00:22:27,830.830 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:22:27,832.832 INFO    ] Checking for system updates...
[2026-06-22 00:22:27,873.873 INFO    ] 200
[2026-06-22 00:22:27,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:22:27,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:22:27,938.938 INFO    ] No update needed
[2026-06-22 00:22:27,940.940 INFO    ] Checking for camera pi updates...
[2026-06-22 00:22:27,977.977 INFO    ] 200
[2026-06-22 00:22:27,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:22:28,020.020 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:22:28,066.066 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:22:28,069.069 INFO    ] No camera update needed
[2026-06-22 00:22:28,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:22:28,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:22:28,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:22:28,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:22:30,125.125 INFO    ] ================================================
[2026-06-22 00:22:30,141.141 INFO    ] Launching Daemon at Mon Jun 22 00:22:30 IST 2026
[2026-06-22 00:22:30,152.152 INFO    ] ================================================
[2026-06-22 00:22:30,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:22:30
[2026-06-22 00:22:31,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:22:31,616.616 INFO    ] Initializing speech engine...
[2026-06-22 00:22:31,624.624 INFO    ] 2026-06-22 00:22:31
[2026-06-22 00:22:31,950.950 INFO    ] 2026-06-22 00:22:31
[2026-06-22 00:22:32,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:22:32,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:22:32,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:22:32,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:22:32,386.386 INFO    ] time= 22/06/2026 00:22:32
[2026-06-22 00:22:32,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:22:32,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:22:32,563.563 INFO    ] No existing commands found in stream
[2026-06-22 00:22:37,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:22:37,578.578 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-22 00:22:41,833.833 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:22:41,836.836 INFO    ] Checking for system updates...
[2026-06-22 00:22:41,875.875 INFO    ] 200
[2026-06-22 00:22:41,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:22:41,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:22:41,939.939 INFO    ] No update needed
[2026-06-22 00:22:41,941.941 INFO    ] Checking for camera pi updates...
[2026-06-22 00:22:41,978.978 INFO    ] 200
[2026-06-22 00:22:41,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:22:42,020.020 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:22:42,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:22:42,223.223 INFO    ] No camera update needed
[2026-06-22 00:22:42,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:22:42,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:22:42,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:22:42,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:22:44,282.282 INFO    ] ================================================
[2026-06-22 00:22:44,299.299 INFO    ] Launching Daemon at Mon Jun 22 00:22:44 IST 2026
[2026-06-22 00:22:44,310.310 INFO    ] ================================================
[2026-06-22 00:22:44,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:22:44
[2026-06-22 00:22:45,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:22:45,743.743 INFO    ] Initializing speech engine...
[2026-06-22 00:22:45,753.753 INFO    ] 2026-06-22 00:22:45
[2026-06-22 00:22:46,015.015 INFO    ] 2026-06-22 00:22:46
[2026-06-22 00:22:46,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:22:46,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:22:46,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:22:46,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:22:46,419.419 INFO    ] time= 22/06/2026 00:22:46
[2026-06-22 00:22:46,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:22:46,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:22:46,552.552 INFO    ] No existing commands found in stream
[2026-06-22 00:22:51,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:22:51,580.580 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-22 00:22:55,538.538 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:22:55,541.541 INFO    ] Checking for system updates...
[2026-06-22 00:22:55,576.576 INFO    ] 200
[2026-06-22 00:22:55,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:22:55,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:22:55,638.638 INFO    ] No update needed
[2026-06-22 00:22:55,640.640 INFO    ] Checking for camera pi updates...
[2026-06-22 00:22:55,676.676 INFO    ] 200
[2026-06-22 00:22:55,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:22:55,722.722 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:22:55,802.802 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:22:55,805.805 INFO    ] No camera update needed
[2026-06-22 00:22:55,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:22:55,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:22:55,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:22:55,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:22:57,862.862 INFO    ] ================================================
[2026-06-22 00:22:57,878.878 INFO    ] Launching Daemon at Mon Jun 22 00:22:57 IST 2026
[2026-06-22 00:22:57,889.889 INFO    ] ================================================
[2026-06-22 00:22:58,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:22:58
[2026-06-22 00:22:59,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:22:59,301.301 INFO    ] Initializing speech engine...
[2026-06-22 00:22:59,311.311 INFO    ] 2026-06-22 00:22:59
[2026-06-22 00:22:59,568.568 INFO    ] 2026-06-22 00:22:59
[2026-06-22 00:22:59,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:22:59,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:22:59,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:22:59,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:22:59,948.948 INFO    ] time= 22/06/2026 00:22:59
[2026-06-22 00:22:59,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:22:59,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:23:00,053.053 INFO    ] No existing commands found in stream
[2026-06-22 00:23:05,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:23:05,067.067 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-22 00:23:08,204.204 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:23:08,206.206 INFO    ] Checking for system updates...
[2026-06-22 00:23:08,226.226 INFO    ] 200
[2026-06-22 00:23:08,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:23:08,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:23:08,281.281 INFO    ] No update needed
[2026-06-22 00:23:08,284.284 INFO    ] Checking for camera pi updates...
[2026-06-22 00:23:08,320.320 INFO    ] 200
[2026-06-22 00:23:08,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:23:08,368.368 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:23:08,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:23:08,446.446 INFO    ] No camera update needed
[2026-06-22 00:23:08,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:23:08,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:23:08,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:23:08,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:23:10,502.502 INFO    ] ================================================
[2026-06-22 00:23:10,518.518 INFO    ] Launching Daemon at Mon Jun 22 00:23:10 IST 2026
[2026-06-22 00:23:10,529.529 INFO    ] ================================================
[2026-06-22 00:23:11,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:23:11
[2026-06-22 00:23:11,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:23:12,018.018 INFO    ] Initializing speech engine...
[2026-06-22 00:23:12,025.025 INFO    ] 2026-06-22 00:23:12
[2026-06-22 00:23:12,291.291 INFO    ] 2026-06-22 00:23:12
[2026-06-22 00:23:12,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:23:12,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:23:12,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:23:12,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:23:12,811.811 INFO    ] time= 22/06/2026 00:23:12
[2026-06-22 00:23:12,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:23:12,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:23:12,982.982 INFO    ] No existing commands found in stream
[2026-06-22 00:23:18,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:23:18,020.020 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-22 00:23:21,746.746 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:23:21,748.748 INFO    ] Checking for system updates...
[2026-06-22 00:23:21,781.781 INFO    ] 200
[2026-06-22 00:23:21,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:23:21,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:23:21,846.846 INFO    ] No update needed
[2026-06-22 00:23:21,849.849 INFO    ] Checking for camera pi updates...
[2026-06-22 00:23:21,888.888 INFO    ] 200
[2026-06-22 00:23:21,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:23:21,935.935 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:23:22,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:23:22,019.019 INFO    ] No camera update needed
[2026-06-22 00:23:22,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:23:22,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:23:22,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:23:22,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:23:24,075.075 INFO    ] ================================================
[2026-06-22 00:23:24,094.094 INFO    ] Launching Daemon at Mon Jun 22 00:23:24 IST 2026
[2026-06-22 00:23:24,106.106 INFO    ] ================================================
[2026-06-22 00:23:24,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:23:24
[2026-06-22 00:23:25,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:23:25,702.702 INFO    ] Initializing speech engine...
[2026-06-22 00:23:25,715.715 INFO    ] 2026-06-22 00:23:25
[2026-06-22 00:23:25,990.990 INFO    ] 2026-06-22 00:23:25
[2026-06-22 00:23:26,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:23:26,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:23:26,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:23:26,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:23:26,525.525 INFO    ] time= 22/06/2026 00:23:26
[2026-06-22 00:23:26,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:23:26,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:23:26,656.656 INFO    ] No existing commands found in stream
[2026-06-22 00:23:31,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:23:31,692.692 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-22 00:23:35,305.305 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:23:35,309.309 INFO    ] Checking for system updates...
[2026-06-22 00:23:35,356.356 INFO    ] 200
[2026-06-22 00:23:35,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:23:35,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:23:35,432.432 INFO    ] No update needed
[2026-06-22 00:23:35,435.435 INFO    ] Checking for camera pi updates...
[2026-06-22 00:23:35,475.475 INFO    ] 200
[2026-06-22 00:23:35,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:23:35,526.526 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:23:35,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:23:35,606.606 INFO    ] No camera update needed
[2026-06-22 00:23:35,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:23:35,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:23:35,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:23:35,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:23:37,663.663 INFO    ] ================================================
[2026-06-22 00:23:37,679.679 INFO    ] Launching Daemon at Mon Jun 22 00:23:37 IST 2026
[2026-06-22 00:23:37,691.691 INFO    ] ================================================
[2026-06-22 00:23:38,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:23:38
[2026-06-22 00:23:38,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:23:39,032.032 INFO    ] Initializing speech engine...
[2026-06-22 00:23:39,041.041 INFO    ] 2026-06-22 00:23:39
[2026-06-22 00:23:39,332.332 INFO    ] 2026-06-22 00:23:39
[2026-06-22 00:23:39,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:23:39,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:23:39,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:23:39,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:23:39,707.707 INFO    ] time= 22/06/2026 00:23:39
[2026-06-22 00:23:39,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:23:39,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:23:39,830.830 INFO    ] No existing commands found in stream
[2026-06-22 00:23:44,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:23:44,846.846 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-22 00:23:45,621.621 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:23:45,624.624 INFO    ] Checking for system updates...
[2026-06-22 00:23:45,660.660 INFO    ] 200
[2026-06-22 00:23:45,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:23:45,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:23:45,723.723 INFO    ] No update needed
[2026-06-22 00:23:45,726.726 INFO    ] Checking for camera pi updates...
[2026-06-22 00:23:45,763.763 INFO    ] 200
[2026-06-22 00:23:45,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:23:45,810.810 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:23:45,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:23:45,886.886 INFO    ] No camera update needed
[2026-06-22 00:23:45,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:23:45,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:23:45,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:23:45,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:23:47,942.942 INFO    ] ================================================
[2026-06-22 00:23:47,957.957 INFO    ] Launching Daemon at Mon Jun 22 00:23:47 IST 2026
[2026-06-22 00:23:47,968.968 INFO    ] ================================================
[2026-06-22 00:23:48,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:23:48
[2026-06-22 00:23:49,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:23:49,380.380 INFO    ] Initializing speech engine...
[2026-06-22 00:23:49,396.396 INFO    ] 2026-06-22 00:23:49
[2026-06-22 00:23:49,651.651 INFO    ] 2026-06-22 00:23:49
[2026-06-22 00:23:49,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:23:49,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:23:49,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:23:50,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:23:50,023.023 INFO    ] time= 22/06/2026 00:23:50
[2026-06-22 00:23:50,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:23:50,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:23:50,201.201 INFO    ] No existing commands found in stream
[2026-06-22 00:23:55,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:23:55,233.233 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-22 00:23:57,743.743 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:23:57,746.746 INFO    ] Checking for system updates...
[2026-06-22 00:23:57,784.784 INFO    ] 200
[2026-06-22 00:23:57,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:23:57,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:23:57,849.849 INFO    ] No update needed
[2026-06-22 00:23:57,852.852 INFO    ] Checking for camera pi updates...
[2026-06-22 00:23:57,895.895 INFO    ] 200
[2026-06-22 00:23:57,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:23:57,946.946 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:23:58,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:23:58,025.025 INFO    ] No camera update needed
[2026-06-22 00:23:58,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:23:58,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:23:58,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:23:58,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:24:00,085.085 INFO    ] ================================================
[2026-06-22 00:24:00,101.101 INFO    ] Launching Daemon at Mon Jun 22 00:24:00 IST 2026
[2026-06-22 00:24:00,112.112 INFO    ] ================================================
[2026-06-22 00:24:00,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:24:00
[2026-06-22 00:24:01,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:24:01,853.853 INFO    ] Initializing speech engine...
[2026-06-22 00:24:01,859.859 INFO    ] 2026-06-22 00:24:01
[2026-06-22 00:24:02,232.232 INFO    ] 2026-06-22 00:24:02
[2026-06-22 00:24:02,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:24:02,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:24:02,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:24:02,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:24:02,714.714 INFO    ] time= 22/06/2026 00:24:02
[2026-06-22 00:24:02,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:24:02,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:24:02,885.885 INFO    ] No existing commands found in stream
[2026-06-22 00:24:07,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:24:07,915.915 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-22 00:24:09,413.413 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:24:09,416.416 INFO    ] Checking for system updates...
[2026-06-22 00:24:09,456.456 INFO    ] 200
[2026-06-22 00:24:09,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:24:09,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:24:09,514.514 INFO    ] No update needed
[2026-06-22 00:24:09,517.517 INFO    ] Checking for camera pi updates...
[2026-06-22 00:24:09,551.551 INFO    ] 200
[2026-06-22 00:24:09,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:24:09,599.599 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:24:09,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:24:09,677.677 INFO    ] No camera update needed
[2026-06-22 00:24:09,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:24:09,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:24:09,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:24:09,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:24:11,740.740 INFO    ] ================================================
[2026-06-22 00:24:11,756.756 INFO    ] Launching Daemon at Mon Jun 22 00:24:11 IST 2026
[2026-06-22 00:24:11,767.767 INFO    ] ================================================
[2026-06-22 00:24:12,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:24:12
[2026-06-22 00:24:13,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:24:13,292.292 INFO    ] Initializing speech engine...
[2026-06-22 00:24:13,299.299 INFO    ] 2026-06-22 00:24:13
[2026-06-22 00:24:13,573.573 INFO    ] 2026-06-22 00:24:13
[2026-06-22 00:24:13,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:24:13,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:24:13,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:24:14,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:24:14,072.072 INFO    ] time= 22/06/2026 00:24:14
[2026-06-22 00:24:14,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:24:14,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:24:14,206.206 INFO    ] No existing commands found in stream
[2026-06-22 00:24:19,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:24:19,222.222 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-22 00:24:22,016.016 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:24:22,019.019 INFO    ] Checking for system updates...
[2026-06-22 00:24:22,060.060 INFO    ] 200
[2026-06-22 00:24:22,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:24:22,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:24:22,127.127 INFO    ] No update needed
[2026-06-22 00:24:22,131.131 INFO    ] Checking for camera pi updates...
[2026-06-22 00:24:22,179.179 INFO    ] 200
[2026-06-22 00:24:22,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:24:22,224.224 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:24:22,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:24:22,308.308 INFO    ] No camera update needed
[2026-06-22 00:24:22,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:24:22,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:24:22,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:24:22,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:24:24,369.369 INFO    ] ================================================
[2026-06-22 00:24:24,384.384 INFO    ] Launching Daemon at Mon Jun 22 00:24:24 IST 2026
[2026-06-22 00:24:24,395.395 INFO    ] ================================================
[2026-06-22 00:24:24,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:24:24
[2026-06-22 00:24:25,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:24:25,776.776 INFO    ] Initializing speech engine...
[2026-06-22 00:24:25,785.785 INFO    ] 2026-06-22 00:24:25
[2026-06-22 00:24:26,079.079 INFO    ] 2026-06-22 00:24:26
[2026-06-22 00:24:26,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:24:26,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:24:26,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:24:26,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:24:26,460.460 INFO    ] time= 22/06/2026 00:24:26
[2026-06-22 00:24:26,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:24:26,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:24:26,591.591 INFO    ] No existing commands found in stream
[2026-06-22 00:24:31,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:24:31,625.625 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-22 00:24:32,195.195 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:24:32,198.198 INFO    ] Checking for system updates...
[2026-06-22 00:24:32,256.256 INFO    ] 200
[2026-06-22 00:24:32,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:24:32,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:24:32,337.337 INFO    ] No update needed
[2026-06-22 00:24:32,339.339 INFO    ] Checking for camera pi updates...
[2026-06-22 00:24:32,375.375 INFO    ] 200
[2026-06-22 00:24:32,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:24:32,426.426 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:24:32,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:24:32,483.483 INFO    ] No camera update needed
[2026-06-22 00:24:32,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:24:32,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:24:32,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:24:32,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:24:34,542.542 INFO    ] ================================================
[2026-06-22 00:24:34,558.558 INFO    ] Launching Daemon at Mon Jun 22 00:24:34 IST 2026
[2026-06-22 00:24:34,569.569 INFO    ] ================================================
[2026-06-22 00:24:35,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:24:35
[2026-06-22 00:24:35,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:24:35,966.966 INFO    ] Initializing speech engine...
[2026-06-22 00:24:35,975.975 INFO    ] 2026-06-22 00:24:35
[2026-06-22 00:24:36,249.249 INFO    ] 2026-06-22 00:24:36
[2026-06-22 00:24:36,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:24:36,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:24:36,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:24:36,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:24:36,743.743 INFO    ] time= 22/06/2026 00:24:36
[2026-06-22 00:24:36,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:24:36,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:24:36,879.879 INFO    ] No existing commands found in stream
[2026-06-22 00:24:41,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:24:41,895.895 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-22 00:24:45,407.407 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:24:45,410.410 INFO    ] Checking for system updates...
[2026-06-22 00:24:45,447.447 INFO    ] 200
[2026-06-22 00:24:45,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:24:45,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:24:45,507.507 INFO    ] No update needed
[2026-06-22 00:24:45,510.510 INFO    ] Checking for camera pi updates...
[2026-06-22 00:24:45,545.545 INFO    ] 200
[2026-06-22 00:24:45,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:24:45,588.588 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:24:45,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:24:45,766.766 INFO    ] No camera update needed
[2026-06-22 00:24:45,769.769 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:24:45,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:24:45,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:24:45,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:24:47,825.825 INFO    ] ================================================
[2026-06-22 00:24:47,841.841 INFO    ] Launching Daemon at Mon Jun 22 00:24:47 IST 2026
[2026-06-22 00:24:47,852.852 INFO    ] ================================================
[2026-06-22 00:24:48,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:24:48
[2026-06-22 00:24:49,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:24:49,381.381 INFO    ] Initializing speech engine...
[2026-06-22 00:24:49,393.393 INFO    ] 2026-06-22 00:24:49
[2026-06-22 00:24:49,674.674 INFO    ] 2026-06-22 00:24:49
[2026-06-22 00:24:49,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:24:49,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:24:49,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:24:50,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:24:50,139.139 INFO    ] time= 22/06/2026 00:24:50
[2026-06-22 00:24:50,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:24:50,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:24:50,321.321 INFO    ] No existing commands found in stream
[2026-06-22 00:24:55,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:24:55,362.362 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-22 00:24:58,766.766 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:24:58,769.769 INFO    ] Checking for system updates...
[2026-06-22 00:24:58,806.806 INFO    ] 200
[2026-06-22 00:24:58,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:24:58,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:24:58,864.864 INFO    ] No update needed
[2026-06-22 00:24:58,866.866 INFO    ] Checking for camera pi updates...
[2026-06-22 00:24:58,903.903 INFO    ] 200
[2026-06-22 00:24:58,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:24:58,947.947 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:24:59,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:24:59,024.024 INFO    ] No camera update needed
[2026-06-22 00:24:59,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:24:59,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:24:59,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:24:59,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:25:01,081.081 INFO    ] ================================================
[2026-06-22 00:25:01,097.097 INFO    ] Launching Daemon at Mon Jun 22 00:25:01 IST 2026
[2026-06-22 00:25:01,109.109 INFO    ] ================================================
[2026-06-22 00:25:01,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:25:01
[2026-06-22 00:25:02,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:25:02,880.880 INFO    ] Initializing speech engine...
[2026-06-22 00:25:02,901.901 INFO    ] 2026-06-22 00:25:02
[2026-06-22 00:25:03,211.211 INFO    ] 2026-06-22 00:25:03
[2026-06-22 00:25:03,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:25:03,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:25:03,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:25:03,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:25:03,630.630 INFO    ] time= 22/06/2026 00:25:03
[2026-06-22 00:25:03,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:25:03,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:25:03,813.813 INFO    ] No existing commands found in stream
[2026-06-22 00:25:08,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:25:08,848.848 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-22 00:25:11,799.799 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:25:11,800.800 INFO    ] Checking for system updates...
[2026-06-22 00:25:11,821.821 INFO    ] 200
[2026-06-22 00:25:11,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:25:11,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:25:11,880.880 INFO    ] No update needed
[2026-06-22 00:25:11,882.882 INFO    ] Checking for camera pi updates...
[2026-06-22 00:25:11,917.917 INFO    ] 200
[2026-06-22 00:25:11,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:25:11,961.961 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:25:12,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:25:12,016.016 INFO    ] No camera update needed
[2026-06-22 00:25:12,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:25:12,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:25:12,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:25:12,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:25:14,077.077 INFO    ] ================================================
[2026-06-22 00:25:14,091.091 INFO    ] Launching Daemon at Mon Jun 22 00:25:14 IST 2026
[2026-06-22 00:25:14,103.103 INFO    ] ================================================
[2026-06-22 00:25:14,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:25:14
[2026-06-22 00:25:15,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:25:15,458.458 INFO    ] Initializing speech engine...
[2026-06-22 00:25:15,465.465 INFO    ] 2026-06-22 00:25:15
[2026-06-22 00:25:15,726.726 INFO    ] 2026-06-22 00:25:15
[2026-06-22 00:25:15,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:25:16,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:25:16,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:25:16,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:25:16,186.186 INFO    ] time= 22/06/2026 00:25:16
[2026-06-22 00:25:16,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:25:16,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:25:16,333.333 INFO    ] No existing commands found in stream
[2026-06-22 00:25:21,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:25:21,348.348 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-22 00:25:21,776.776 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:25:21,779.779 INFO    ] Checking for system updates...
[2026-06-22 00:25:21,815.815 INFO    ] 200
[2026-06-22 00:25:21,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:25:21,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:25:21,879.879 INFO    ] No update needed
[2026-06-22 00:25:21,881.881 INFO    ] Checking for camera pi updates...
[2026-06-22 00:25:21,919.919 INFO    ] 200
[2026-06-22 00:25:21,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:25:21,967.967 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:25:22,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:25:22,067.067 INFO    ] No camera update needed
[2026-06-22 00:25:22,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:25:22,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:25:22,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:25:22,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:25:24,122.122 INFO    ] ================================================
[2026-06-22 00:25:24,138.138 INFO    ] Launching Daemon at Mon Jun 22 00:25:24 IST 2026
[2026-06-22 00:25:24,148.148 INFO    ] ================================================
[2026-06-22 00:25:24,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:25:24
[2026-06-22 00:25:25,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:25:25,686.686 INFO    ] Initializing speech engine...
[2026-06-22 00:25:25,698.698 INFO    ] 2026-06-22 00:25:25
[2026-06-22 00:25:25,984.984 INFO    ] 2026-06-22 00:25:25
[2026-06-22 00:25:26,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:25:26,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:25:26,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:25:26,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:25:26,516.516 INFO    ] time= 22/06/2026 00:25:26
[2026-06-22 00:25:26,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:25:26,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:25:26,662.662 INFO    ] No existing commands found in stream
[2026-06-22 00:25:31,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:25:31,687.687 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-22 00:25:34,619.619 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:25:34,622.622 INFO    ] Checking for system updates...
[2026-06-22 00:25:34,660.660 INFO    ] 200
[2026-06-22 00:25:34,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:25:34,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:25:34,719.719 INFO    ] No update needed
[2026-06-22 00:25:34,722.722 INFO    ] Checking for camera pi updates...
[2026-06-22 00:25:34,758.758 INFO    ] 200
[2026-06-22 00:25:34,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:25:34,802.802 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:25:34,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:25:34,877.877 INFO    ] No camera update needed
[2026-06-22 00:25:34,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:25:34,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:25:34,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:25:34,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:25:36,927.927 INFO    ] ================================================
[2026-06-22 00:25:36,942.942 INFO    ] Launching Daemon at Mon Jun 22 00:25:36 IST 2026
[2026-06-22 00:25:36,953.953 INFO    ] ================================================
[2026-06-22 00:25:37,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:25:37
[2026-06-22 00:25:38,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:25:38,306.306 INFO    ] Initializing speech engine...
[2026-06-22 00:25:38,329.329 INFO    ] 2026-06-22 00:25:38
[2026-06-22 00:25:38,583.583 INFO    ] 2026-06-22 00:25:38
[2026-06-22 00:25:38,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:25:38,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:25:38,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:25:39,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:25:39,055.055 INFO    ] time= 22/06/2026 00:25:39
[2026-06-22 00:25:39,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:25:39,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:25:39,211.211 INFO    ] No existing commands found in stream
[2026-06-22 00:25:44,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:25:44,243.243 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-22 00:25:48,153.153 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:25:48,156.156 INFO    ] Checking for system updates...
[2026-06-22 00:25:48,192.192 INFO    ] 200
[2026-06-22 00:25:48,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:25:48,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:25:48,250.250 INFO    ] No update needed
[2026-06-22 00:25:48,253.253 INFO    ] Checking for camera pi updates...
[2026-06-22 00:25:48,287.287 INFO    ] 200
[2026-06-22 00:25:48,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:25:48,330.330 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:25:48,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:25:48,414.414 INFO    ] No camera update needed
[2026-06-22 00:25:48,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:25:48,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:25:48,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:25:48,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:25:50,471.471 INFO    ] ================================================
[2026-06-22 00:25:50,487.487 INFO    ] Launching Daemon at Mon Jun 22 00:25:50 IST 2026
[2026-06-22 00:25:50,497.497 INFO    ] ================================================
[2026-06-22 00:25:51,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:25:51
[2026-06-22 00:25:51,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:25:51,983.983 INFO    ] Initializing speech engine...
[2026-06-22 00:25:51,991.991 INFO    ] 2026-06-22 00:25:51
[2026-06-22 00:25:52,238.238 INFO    ] 2026-06-22 00:25:52
[2026-06-22 00:25:52,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:25:52,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:25:52,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:25:52,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:25:52,694.694 INFO    ] time= 22/06/2026 00:25:52
[2026-06-22 00:25:52,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:25:52,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:25:52,868.868 INFO    ] No existing commands found in stream
[2026-06-22 00:25:57,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:25:57,883.883 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-22 00:25:59,058.058 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:25:59,060.060 INFO    ] Checking for system updates...
[2026-06-22 00:25:59,080.080 INFO    ] 200
[2026-06-22 00:25:59,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:25:59,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:25:59,113.113 INFO    ] No update needed
[2026-06-22 00:25:59,114.114 INFO    ] Checking for camera pi updates...
[2026-06-22 00:25:59,136.136 INFO    ] 200
[2026-06-22 00:25:59,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:25:59,177.177 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:25:59,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:25:59,254.254 INFO    ] No camera update needed
[2026-06-22 00:25:59,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:25:59,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:25:59,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:25:59,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:26:01,310.310 INFO    ] ================================================
[2026-06-22 00:26:01,326.326 INFO    ] Launching Daemon at Mon Jun 22 00:26:01 IST 2026
[2026-06-22 00:26:01,336.336 INFO    ] ================================================
[2026-06-22 00:26:02,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:26:02
[2026-06-22 00:26:02,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:26:03,300.300 INFO    ] Initializing speech engine...
[2026-06-22 00:26:03,329.329 INFO    ] 2026-06-22 00:26:03
[2026-06-22 00:26:03,630.630 INFO    ] 2026-06-22 00:26:03
[2026-06-22 00:26:03,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:26:03,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:26:03,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:26:04,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:26:04,048.048 INFO    ] time= 22/06/2026 00:26:04
[2026-06-22 00:26:04,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:26:04,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:26:04,139.139 INFO    ] No existing commands found in stream
[2026-06-22 00:26:09,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:26:09,154.154 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-22 00:26:12,376.376 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:26:12,379.379 INFO    ] Checking for system updates...
[2026-06-22 00:26:12,416.416 INFO    ] 200
[2026-06-22 00:26:12,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:26:12,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:26:12,475.475 INFO    ] No update needed
[2026-06-22 00:26:12,478.478 INFO    ] Checking for camera pi updates...
[2026-06-22 00:26:12,511.511 INFO    ] 200
[2026-06-22 00:26:12,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:26:12,558.558 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:26:12,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:26:12,645.645 INFO    ] No camera update needed
[2026-06-22 00:26:12,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:26:12,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:26:12,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:26:12,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:26:14,705.705 INFO    ] ================================================
[2026-06-22 00:26:14,721.721 INFO    ] Launching Daemon at Mon Jun 22 00:26:14 IST 2026
[2026-06-22 00:26:14,732.732 INFO    ] ================================================
[2026-06-22 00:26:15,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:26:15
[2026-06-22 00:26:15,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:26:16,063.063 INFO    ] Initializing speech engine...
[2026-06-22 00:26:16,089.089 INFO    ] 2026-06-22 00:26:16
[2026-06-22 00:26:16,361.361 INFO    ] 2026-06-22 00:26:16
[2026-06-22 00:26:16,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:26:16,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:26:16,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:26:16,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:26:16,779.779 INFO    ] time= 22/06/2026 00:26:16
[2026-06-22 00:26:16,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:26:16,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:26:16,868.868 INFO    ] No existing commands found in stream
[2026-06-22 00:26:21,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:26:21,880.880 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-22 00:26:23,897.897 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:26:23,899.899 INFO    ] Checking for system updates...
[2026-06-22 00:26:23,919.919 INFO    ] 200
[2026-06-22 00:26:23,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:26:23,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:26:23,952.952 INFO    ] No update needed
[2026-06-22 00:26:23,954.954 INFO    ] Checking for camera pi updates...
[2026-06-22 00:26:23,978.978 INFO    ] 200
[2026-06-22 00:26:23,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:26:24,021.021 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:26:24,085.085 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:26:24,088.088 INFO    ] No camera update needed
[2026-06-22 00:26:24,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:26:24,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:26:24,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:26:24,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:26:26,143.143 INFO    ] ================================================
[2026-06-22 00:26:26,159.159 INFO    ] Launching Daemon at Mon Jun 22 00:26:26 IST 2026
[2026-06-22 00:26:26,170.170 INFO    ] ================================================
[2026-06-22 00:26:26,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:26:26
[2026-06-22 00:26:27,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:26:27,579.579 INFO    ] Initializing speech engine...
[2026-06-22 00:26:27,598.598 INFO    ] 2026-06-22 00:26:27
[2026-06-22 00:26:27,860.860 INFO    ] 2026-06-22 00:26:27
[2026-06-22 00:26:27,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:26:28,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:26:28,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:26:28,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:26:28,347.347 INFO    ] time= 22/06/2026 00:26:28
[2026-06-22 00:26:28,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:26:28,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:26:28,498.498 INFO    ] No existing commands found in stream
[2026-06-22 00:26:33,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:26:33,512.512 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-22 00:26:35,652.652 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:26:35,655.655 INFO    ] Checking for system updates...
[2026-06-22 00:26:35,691.691 INFO    ] 200
[2026-06-22 00:26:35,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:26:35,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:26:35,749.749 INFO    ] No update needed
[2026-06-22 00:26:35,751.751 INFO    ] Checking for camera pi updates...
[2026-06-22 00:26:35,789.789 INFO    ] 200
[2026-06-22 00:26:35,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:26:35,837.837 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:26:35,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:26:35,912.912 INFO    ] No camera update needed
[2026-06-22 00:26:35,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:26:35,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:26:35,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:26:35,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:26:37,965.965 INFO    ] ================================================
[2026-06-22 00:26:37,981.981 INFO    ] Launching Daemon at Mon Jun 22 00:26:37 IST 2026
[2026-06-22 00:26:37,992.992 INFO    ] ================================================
[2026-06-22 00:26:38,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:26:38
[2026-06-22 00:26:39,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:26:39,426.426 INFO    ] Initializing speech engine...
[2026-06-22 00:26:39,435.435 INFO    ] 2026-06-22 00:26:39
[2026-06-22 00:26:39,682.682 INFO    ] 2026-06-22 00:26:39
[2026-06-22 00:26:39,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:26:39,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:26:39,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:26:40,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:26:40,126.126 INFO    ] time= 22/06/2026 00:26:40
[2026-06-22 00:26:40,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:26:40,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:26:40,287.287 INFO    ] No existing commands found in stream
[2026-06-22 00:26:45,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:26:45,314.314 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-22 00:26:47,106.106 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:26:47,107.107 INFO    ] Checking for system updates...
[2026-06-22 00:26:47,128.128 INFO    ] 200
[2026-06-22 00:26:47,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:26:47,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:26:47,166.166 INFO    ] No update needed
[2026-06-22 00:26:47,168.168 INFO    ] Checking for camera pi updates...
[2026-06-22 00:26:47,204.204 INFO    ] 200
[2026-06-22 00:26:47,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:26:47,257.257 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:26:47,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:26:47,359.359 INFO    ] No camera update needed
[2026-06-22 00:26:47,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:26:47,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:26:47,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:26:47,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:26:49,416.416 INFO    ] ================================================
[2026-06-22 00:26:49,432.432 INFO    ] Launching Daemon at Mon Jun 22 00:26:49 IST 2026
[2026-06-22 00:26:49,444.444 INFO    ] ================================================
[2026-06-22 00:26:50,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:26:50
[2026-06-22 00:26:50,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:26:50,906.906 INFO    ] Initializing speech engine...
[2026-06-22 00:26:50,913.913 INFO    ] 2026-06-22 00:26:50
[2026-06-22 00:26:51,175.175 INFO    ] 2026-06-22 00:26:51
[2026-06-22 00:26:51,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:26:51,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:26:51,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:26:51,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:26:51,627.627 INFO    ] time= 22/06/2026 00:26:51
[2026-06-22 00:26:51,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:26:51,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:26:51,778.778 INFO    ] No existing commands found in stream
[2026-06-22 00:26:56,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:26:56,795.795 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-22 00:27:00,314.314 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:27:00,316.316 INFO    ] Checking for system updates...
[2026-06-22 00:27:00,352.352 INFO    ] 200
[2026-06-22 00:27:00,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:27:00,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:27:00,412.412 INFO    ] No update needed
[2026-06-22 00:27:00,415.415 INFO    ] Checking for camera pi updates...
[2026-06-22 00:27:00,450.450 INFO    ] 200
[2026-06-22 00:27:00,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:27:00,494.494 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:27:00,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:27:00,692.692 INFO    ] No camera update needed
[2026-06-22 00:27:00,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:27:00,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:27:00,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:27:00,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:27:02,765.765 INFO    ] ================================================
[2026-06-22 00:27:02,786.786 INFO    ] Launching Daemon at Mon Jun 22 00:27:02 IST 2026
[2026-06-22 00:27:02,802.802 INFO    ] ================================================
[2026-06-22 00:27:03,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:27:03
[2026-06-22 00:27:04,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:27:04,349.349 INFO    ] Initializing speech engine...
[2026-06-22 00:27:04,365.365 INFO    ] 2026-06-22 00:27:04
[2026-06-22 00:27:04,639.639 INFO    ] 2026-06-22 00:27:04
[2026-06-22 00:27:04,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:27:04,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:27:04,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:27:05,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:27:05,052.052 INFO    ] time= 22/06/2026 00:27:05
[2026-06-22 00:27:05,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:27:05,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:27:05,219.219 INFO    ] No existing commands found in stream
[2026-06-22 00:27:10,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:27:10,250.250 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-22 00:27:12,308.308 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:27:12,310.310 INFO    ] Checking for system updates...
[2026-06-22 00:27:12,347.347 INFO    ] 200
[2026-06-22 00:27:12,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:27:12,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:27:12,410.410 INFO    ] No update needed
[2026-06-22 00:27:12,412.412 INFO    ] Checking for camera pi updates...
[2026-06-22 00:27:12,449.449 INFO    ] 200
[2026-06-22 00:27:12,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:27:12,492.492 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:27:12,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:27:12,587.587 INFO    ] No camera update needed
[2026-06-22 00:27:12,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:27:12,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:27:12,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:27:12,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:27:14,646.646 INFO    ] ================================================
[2026-06-22 00:27:14,662.662 INFO    ] Launching Daemon at Mon Jun 22 00:27:14 IST 2026
[2026-06-22 00:27:14,673.673 INFO    ] ================================================
[2026-06-22 00:27:15,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:27:15
[2026-06-22 00:27:15,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:27:16,043.043 INFO    ] Initializing speech engine...
[2026-06-22 00:27:16,053.053 INFO    ] 2026-06-22 00:27:16
[2026-06-22 00:27:16,311.311 INFO    ] 2026-06-22 00:27:16
[2026-06-22 00:27:16,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:27:16,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:27:16,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:27:16,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:27:16,752.752 INFO    ] time= 22/06/2026 00:27:16
[2026-06-22 00:27:16,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:27:16,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:27:16,921.921 INFO    ] No existing commands found in stream
[2026-06-22 00:27:21,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:27:21,934.934 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-22 00:27:22,360.360 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:27:22,363.363 INFO    ] Checking for system updates...
[2026-06-22 00:27:22,402.402 INFO    ] 200
[2026-06-22 00:27:22,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:27:22,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:27:22,461.461 INFO    ] No update needed
[2026-06-22 00:27:22,463.463 INFO    ] Checking for camera pi updates...
[2026-06-22 00:27:22,500.500 INFO    ] 200
[2026-06-22 00:27:22,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:27:22,543.543 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:27:22,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:27:22,628.628 INFO    ] No camera update needed
[2026-06-22 00:27:22,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:27:22,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:27:22,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:27:22,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:27:24,686.686 INFO    ] ================================================
[2026-06-22 00:27:24,701.701 INFO    ] Launching Daemon at Mon Jun 22 00:27:24 IST 2026
[2026-06-22 00:27:24,713.713 INFO    ] ================================================
[2026-06-22 00:27:25,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:27:25
[2026-06-22 00:27:25,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:27:26,035.035 INFO    ] Initializing speech engine...
[2026-06-22 00:27:26,058.058 INFO    ] 2026-06-22 00:27:26
[2026-06-22 00:27:26,315.315 INFO    ] 2026-06-22 00:27:26
[2026-06-22 00:27:26,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:27:26,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:27:26,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:27:26,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:27:26,692.692 INFO    ] time= 22/06/2026 00:27:26
[2026-06-22 00:27:26,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:27:26,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:27:26,863.863 INFO    ] No existing commands found in stream
[2026-06-22 00:27:31,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:27:31,891.891 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-22 00:27:35,790.790 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:27:35,793.793 INFO    ] Checking for system updates...
[2026-06-22 00:27:35,828.828 INFO    ] 200
[2026-06-22 00:27:35,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:27:35,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:27:35,890.890 INFO    ] No update needed
[2026-06-22 00:27:35,892.892 INFO    ] Checking for camera pi updates...
[2026-06-22 00:27:35,926.926 INFO    ] 200
[2026-06-22 00:27:35,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:27:35,972.972 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:27:36,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:27:36,049.049 INFO    ] No camera update needed
[2026-06-22 00:27:36,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:27:36,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:27:36,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:27:36,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:27:38,106.106 INFO    ] ================================================
[2026-06-22 00:27:38,122.122 INFO    ] Launching Daemon at Mon Jun 22 00:27:38 IST 2026
[2026-06-22 00:27:38,133.133 INFO    ] ================================================
[2026-06-22 00:27:38,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:27:38
[2026-06-22 00:27:39,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:27:39,557.557 INFO    ] Initializing speech engine...
[2026-06-22 00:27:39,567.567 INFO    ] 2026-06-22 00:27:39
[2026-06-22 00:27:39,816.816 INFO    ] 2026-06-22 00:27:39
[2026-06-22 00:27:39,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:27:40,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:27:40,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:27:40,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:27:40,193.193 INFO    ] time= 22/06/2026 00:27:40
[2026-06-22 00:27:40,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:27:40,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:27:40,342.342 INFO    ] No existing commands found in stream
[2026-06-22 00:27:45,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:27:45,375.375 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-22 00:27:45,731.731 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:27:45,734.734 INFO    ] Checking for system updates...
[2026-06-22 00:27:45,770.770 INFO    ] 200
[2026-06-22 00:27:45,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:27:45,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:27:45,827.827 INFO    ] No update needed
[2026-06-22 00:27:45,830.830 INFO    ] Checking for camera pi updates...
[2026-06-22 00:27:45,866.866 INFO    ] 200
[2026-06-22 00:27:45,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:27:45,910.910 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:27:45,981.981 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:27:45,983.983 INFO    ] No camera update needed
[2026-06-22 00:27:45,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:27:45,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:27:45,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:27:45,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:27:48,043.043 INFO    ] ================================================
[2026-06-22 00:27:48,059.059 INFO    ] Launching Daemon at Mon Jun 22 00:27:48 IST 2026
[2026-06-22 00:27:48,070.070 INFO    ] ================================================
[2026-06-22 00:27:48,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:27:48
[2026-06-22 00:27:49,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:27:49,432.432 INFO    ] Initializing speech engine...
[2026-06-22 00:27:49,441.441 INFO    ] 2026-06-22 00:27:49
[2026-06-22 00:27:49,690.690 INFO    ] 2026-06-22 00:27:49
[2026-06-22 00:27:49,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:27:49,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:27:49,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:27:50,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:27:50,061.061 INFO    ] time= 22/06/2026 00:27:50
[2026-06-22 00:27:50,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:27:50,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:27:50,242.242 INFO    ] No existing commands found in stream
[2026-06-22 00:27:55,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:27:55,269.269 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-22 00:27:56,326.326 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:27:56,328.328 INFO    ] Checking for system updates...
[2026-06-22 00:27:56,365.365 INFO    ] 200
[2026-06-22 00:27:56,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:27:56,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:27:56,422.422 INFO    ] No update needed
[2026-06-22 00:27:56,425.425 INFO    ] Checking for camera pi updates...
[2026-06-22 00:27:56,460.460 INFO    ] 200
[2026-06-22 00:27:56,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:27:56,511.511 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:27:56,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:27:56,586.586 INFO    ] No camera update needed
[2026-06-22 00:27:56,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:27:56,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:27:56,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:27:56,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:27:58,643.643 INFO    ] ================================================
[2026-06-22 00:27:58,659.659 INFO    ] Launching Daemon at Mon Jun 22 00:27:58 IST 2026
[2026-06-22 00:27:58,670.670 INFO    ] ================================================
[2026-06-22 00:27:59,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:27:59
[2026-06-22 00:27:59,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:28:00,026.026 INFO    ] Initializing speech engine...
[2026-06-22 00:28:00,045.045 INFO    ] 2026-06-22 00:28:00
[2026-06-22 00:28:00,295.295 INFO    ] 2026-06-22 00:28:00
[2026-06-22 00:28:00,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:28:00,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:28:00,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:28:00,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:28:00,779.779 INFO    ] time= 22/06/2026 00:28:00
[2026-06-22 00:28:00,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:28:00,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:28:00,940.940 INFO    ] No existing commands found in stream
[2026-06-22 00:28:05,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:28:05,978.978 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-22 00:28:08,353.353 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:28:08,356.356 INFO    ] Checking for system updates...
[2026-06-22 00:28:08,391.391 INFO    ] 200
[2026-06-22 00:28:08,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:28:08,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:28:08,450.450 INFO    ] No update needed
[2026-06-22 00:28:08,452.452 INFO    ] Checking for camera pi updates...
[2026-06-22 00:28:08,489.489 INFO    ] 200
[2026-06-22 00:28:08,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:28:08,536.536 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:28:08,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:28:08,638.638 INFO    ] No camera update needed
[2026-06-22 00:28:08,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:28:08,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:28:08,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:28:08,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:28:10,697.697 INFO    ] ================================================
[2026-06-22 00:28:10,712.712 INFO    ] Launching Daemon at Mon Jun 22 00:28:10 IST 2026
[2026-06-22 00:28:10,723.723 INFO    ] ================================================
[2026-06-22 00:28:11,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:28:11
[2026-06-22 00:28:11,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:28:12,090.090 INFO    ] Initializing speech engine...
[2026-06-22 00:28:12,099.099 INFO    ] 2026-06-22 00:28:12
[2026-06-22 00:28:12,345.345 INFO    ] 2026-06-22 00:28:12
[2026-06-22 00:28:12,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:28:12,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:28:12,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:28:12,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:28:12,722.722 INFO    ] time= 22/06/2026 00:28:12
[2026-06-22 00:28:12,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:28:12,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:28:12,887.887 INFO    ] No existing commands found in stream
[2026-06-22 00:28:17,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:28:17,915.915 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-22 00:28:21,304.304 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:28:21,305.305 INFO    ] Checking for system updates...
[2026-06-22 00:28:21,326.326 INFO    ] 200
[2026-06-22 00:28:21,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:28:21,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:28:21,361.361 INFO    ] No update needed
[2026-06-22 00:28:21,362.362 INFO    ] Checking for camera pi updates...
[2026-06-22 00:28:21,381.381 INFO    ] 200
[2026-06-22 00:28:21,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:28:21,409.409 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:28:21,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:28:21,480.480 INFO    ] No camera update needed
[2026-06-22 00:28:21,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:28:21,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:28:21,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:28:21,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:28:23,541.541 INFO    ] ================================================
[2026-06-22 00:28:23,557.557 INFO    ] Launching Daemon at Mon Jun 22 00:28:23 IST 2026
[2026-06-22 00:28:23,567.567 INFO    ] ================================================
[2026-06-22 00:28:24,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:28:24
[2026-06-22 00:28:24,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:28:25,076.076 INFO    ] Initializing speech engine...
[2026-06-22 00:28:25,090.090 INFO    ] 2026-06-22 00:28:25
[2026-06-22 00:28:25,379.379 INFO    ] 2026-06-22 00:28:25
[2026-06-22 00:28:25,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:28:25,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:28:25,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:28:25,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:28:25,926.926 INFO    ] time= 22/06/2026 00:28:25
[2026-06-22 00:28:25,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:28:25,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:28:26,081.081 INFO    ] No existing commands found in stream
[2026-06-22 00:28:31,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:28:31,100.100 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-22 00:28:35,260.260 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:28:35,262.262 INFO    ] Checking for system updates...
[2026-06-22 00:28:35,283.283 INFO    ] 200
[2026-06-22 00:28:35,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:28:35,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:28:35,317.317 INFO    ] No update needed
[2026-06-22 00:28:35,318.318 INFO    ] Checking for camera pi updates...
[2026-06-22 00:28:35,346.346 INFO    ] 200
[2026-06-22 00:28:35,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:28:35,390.390 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:28:35,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:28:35,468.468 INFO    ] No camera update needed
[2026-06-22 00:28:35,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:28:35,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:28:35,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:28:35,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:28:37,523.523 INFO    ] ================================================
[2026-06-22 00:28:37,539.539 INFO    ] Launching Daemon at Mon Jun 22 00:28:37 IST 2026
[2026-06-22 00:28:37,549.549 INFO    ] ================================================
[2026-06-22 00:28:38,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:28:38
[2026-06-22 00:28:38,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:28:38,920.920 INFO    ] Initializing speech engine...
[2026-06-22 00:28:38,930.930 INFO    ] 2026-06-22 00:28:38
[2026-06-22 00:28:39,194.194 INFO    ] 2026-06-22 00:28:39
[2026-06-22 00:28:39,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:28:39,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:28:39,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:28:39,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:28:39,560.560 INFO    ] time= 22/06/2026 00:28:39
[2026-06-22 00:28:39,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:28:39,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:28:39,684.684 INFO    ] No existing commands found in stream
[2026-06-22 00:28:44,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:28:44,698.698 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-22 00:28:45,917.917 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:28:45,918.918 INFO    ] Checking for system updates...
[2026-06-22 00:28:45,951.951 INFO    ] 200
[2026-06-22 00:28:45,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:28:46,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:28:46,010.010 INFO    ] No update needed
[2026-06-22 00:28:46,012.012 INFO    ] Checking for camera pi updates...
[2026-06-22 00:28:46,047.047 INFO    ] 200
[2026-06-22 00:28:46,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:28:46,099.099 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:28:46,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:28:46,178.178 INFO    ] No camera update needed
[2026-06-22 00:28:46,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:28:46,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:28:46,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:28:46,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:28:48,236.236 INFO    ] ================================================
[2026-06-22 00:28:48,252.252 INFO    ] Launching Daemon at Mon Jun 22 00:28:48 IST 2026
[2026-06-22 00:28:48,263.263 INFO    ] ================================================
[2026-06-22 00:28:48,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:28:48
[2026-06-22 00:28:49,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:28:49,688.688 INFO    ] Initializing speech engine...
[2026-06-22 00:28:49,694.694 INFO    ] 2026-06-22 00:28:49
[2026-06-22 00:28:49,939.939 INFO    ] 2026-06-22 00:28:49
[2026-06-22 00:28:49,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:28:50,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:28:50,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:28:50,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:28:50,318.318 INFO    ] time= 22/06/2026 00:28:50
[2026-06-22 00:28:50,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:28:50,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:28:50,444.444 INFO    ] No existing commands found in stream
[2026-06-22 00:28:55,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:28:55,459.459 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-22 00:28:57,470.470 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:28:57,472.472 INFO    ] Checking for system updates...
[2026-06-22 00:28:57,512.512 INFO    ] 200
[2026-06-22 00:28:57,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:28:57,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:28:57,569.569 INFO    ] No update needed
[2026-06-22 00:28:57,572.572 INFO    ] Checking for camera pi updates...
[2026-06-22 00:28:57,610.610 INFO    ] 200
[2026-06-22 00:28:57,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:28:57,654.654 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:28:57,733.733 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:28:57,735.735 INFO    ] No camera update needed
[2026-06-22 00:28:57,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:28:57,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:28:57,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:28:57,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:28:59,793.793 INFO    ] ================================================
[2026-06-22 00:28:59,808.808 INFO    ] Launching Daemon at Mon Jun 22 00:28:59 IST 2026
[2026-06-22 00:28:59,820.820 INFO    ] ================================================
[2026-06-22 00:29:00,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:29:00
[2026-06-22 00:29:00,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:29:01,184.184 INFO    ] Initializing speech engine...
[2026-06-22 00:29:01,209.209 INFO    ] 2026-06-22 00:29:01
[2026-06-22 00:29:01,474.474 INFO    ] 2026-06-22 00:29:01
[2026-06-22 00:29:01,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:29:01,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:29:01,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:29:01,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:29:01,988.988 INFO    ] time= 22/06/2026 00:29:01
[2026-06-22 00:29:02,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:29:02,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:29:02,073.073 INFO    ] No existing commands found in stream
[2026-06-22 00:29:07,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:29:07,088.088 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-22 00:29:08,401.401 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:29:08,404.404 INFO    ] Checking for system updates...
[2026-06-22 00:29:08,441.441 INFO    ] 200
[2026-06-22 00:29:08,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:29:08,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:29:08,512.512 INFO    ] No update needed
[2026-06-22 00:29:08,515.515 INFO    ] Checking for camera pi updates...
[2026-06-22 00:29:08,548.548 INFO    ] 200
[2026-06-22 00:29:08,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:29:08,594.594 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:29:08,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:29:08,797.797 INFO    ] No camera update needed
[2026-06-22 00:29:08,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:29:08,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:29:08,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:29:08,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:29:10,852.852 INFO    ] ================================================
[2026-06-22 00:29:10,867.867 INFO    ] Launching Daemon at Mon Jun 22 00:29:10 IST 2026
[2026-06-22 00:29:10,878.878 INFO    ] ================================================
[2026-06-22 00:29:11,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:29:11
[2026-06-22 00:29:12,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:29:12,289.289 INFO    ] Initializing speech engine...
[2026-06-22 00:29:12,295.295 INFO    ] 2026-06-22 00:29:12
[2026-06-22 00:29:12,588.588 INFO    ] 2026-06-22 00:29:12
[2026-06-22 00:29:12,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:29:12,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:29:12,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:29:12,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:29:12,963.963 INFO    ] time= 22/06/2026 00:29:12
[2026-06-22 00:29:12,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:29:13,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:29:13,086.086 INFO    ] No existing commands found in stream
[2026-06-22 00:29:18,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:29:18,100.100 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-22 00:29:20,580.580 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:29:20,581.581 INFO    ] Checking for system updates...
[2026-06-22 00:29:20,602.602 INFO    ] 200
[2026-06-22 00:29:20,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:29:20,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:29:20,640.640 INFO    ] No update needed
[2026-06-22 00:29:20,643.643 INFO    ] Checking for camera pi updates...
[2026-06-22 00:29:20,680.680 INFO    ] 200
[2026-06-22 00:29:20,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:29:20,727.727 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:29:20,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:29:20,815.815 INFO    ] No camera update needed
[2026-06-22 00:29:20,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:29:20,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:29:20,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:29:20,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:29:22,871.871 INFO    ] ================================================
[2026-06-22 00:29:22,887.887 INFO    ] Launching Daemon at Mon Jun 22 00:29:22 IST 2026
[2026-06-22 00:29:22,898.898 INFO    ] ================================================
[2026-06-22 00:29:23,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:29:23
[2026-06-22 00:29:23,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:29:24,267.267 INFO    ] Initializing speech engine...
[2026-06-22 00:29:24,273.273 INFO    ] 2026-06-22 00:29:24
[2026-06-22 00:29:24,535.535 INFO    ] 2026-06-22 00:29:24
[2026-06-22 00:29:24,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:29:24,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:29:24,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:29:24,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:29:24,992.992 INFO    ] time= 22/06/2026 00:29:24
[2026-06-22 00:29:25,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:29:25,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:29:25,140.140 INFO    ] No existing commands found in stream
[2026-06-22 00:29:30,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:29:30,155.155 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-22 00:29:34,085.085 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:29:34,088.088 INFO    ] Checking for system updates...
[2026-06-22 00:29:34,123.123 INFO    ] 200
[2026-06-22 00:29:34,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:29:34,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:29:34,187.187 INFO    ] No update needed
[2026-06-22 00:29:34,190.190 INFO    ] Checking for camera pi updates...
[2026-06-22 00:29:34,224.224 INFO    ] 200
[2026-06-22 00:29:34,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:29:34,272.272 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:29:34,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:29:34,374.374 INFO    ] No camera update needed
[2026-06-22 00:29:34,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:29:34,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:29:34,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:29:34,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:29:36,430.430 INFO    ] ================================================
[2026-06-22 00:29:36,445.445 INFO    ] Launching Daemon at Mon Jun 22 00:29:36 IST 2026
[2026-06-22 00:29:36,456.456 INFO    ] ================================================
[2026-06-22 00:29:37,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:29:37
[2026-06-22 00:29:37,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:29:37,940.940 INFO    ] Initializing speech engine...
[2026-06-22 00:29:37,953.953 INFO    ] 2026-06-22 00:29:37
[2026-06-22 00:29:38,219.219 INFO    ] 2026-06-22 00:29:38
[2026-06-22 00:29:38,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:29:38,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:29:38,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:29:38,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:29:38,567.567 INFO    ] time= 22/06/2026 00:29:38
[2026-06-22 00:29:38,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:29:38,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:29:38,685.685 INFO    ] No existing commands found in stream
[2026-06-22 00:29:43,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:29:43,724.724 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-22 00:29:44,986.986 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:29:44,987.987 INFO    ] Checking for system updates...
[2026-06-22 00:29:45,009.009 INFO    ] 200
[2026-06-22 00:29:45,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:29:45,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:29:45,046.046 INFO    ] No update needed
[2026-06-22 00:29:45,047.047 INFO    ] Checking for camera pi updates...
[2026-06-22 00:29:45,083.083 INFO    ] 200
[2026-06-22 00:29:45,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:29:45,133.133 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:29:45,212.212 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:29:45,215.215 INFO    ] No camera update needed
[2026-06-22 00:29:45,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:29:45,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:29:45,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:29:45,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:29:47,272.272 INFO    ] ================================================
[2026-06-22 00:29:47,287.287 INFO    ] Launching Daemon at Mon Jun 22 00:29:47 IST 2026
[2026-06-22 00:29:47,298.298 INFO    ] ================================================
[2026-06-22 00:29:47,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:29:47
[2026-06-22 00:29:48,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:29:48,658.658 INFO    ] Initializing speech engine...
[2026-06-22 00:29:48,671.671 INFO    ] 2026-06-22 00:29:48
[2026-06-22 00:29:48,954.954 INFO    ] 2026-06-22 00:29:48
[2026-06-22 00:29:48,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:29:49,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:29:49,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:29:49,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:29:49,336.336 INFO    ] time= 22/06/2026 00:29:49
[2026-06-22 00:29:49,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:29:49,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:29:49,417.417 INFO    ] No existing commands found in stream
[2026-06-22 00:29:54,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:29:54,432.432 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-22 00:29:56,063.063 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:29:56,066.066 INFO    ] Checking for system updates...
[2026-06-22 00:29:56,102.102 INFO    ] 200
[2026-06-22 00:29:56,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:29:56,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:29:56,161.161 INFO    ] No update needed
[2026-06-22 00:29:56,163.163 INFO    ] Checking for camera pi updates...
[2026-06-22 00:29:56,198.198 INFO    ] 200
[2026-06-22 00:29:56,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:29:56,232.232 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:29:56,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:29:56,308.308 INFO    ] No camera update needed
[2026-06-22 00:29:56,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:29:56,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:29:56,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:29:56,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:29:58,363.363 INFO    ] ================================================
[2026-06-22 00:29:58,379.379 INFO    ] Launching Daemon at Mon Jun 22 00:29:58 IST 2026
[2026-06-22 00:29:58,389.389 INFO    ] ================================================
[2026-06-22 00:29:59,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:29:58
[2026-06-22 00:29:59,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:29:59,838.838 INFO    ] Initializing speech engine...
[2026-06-22 00:29:59,859.859 INFO    ] 2026-06-22 00:29:59
[2026-06-22 00:30:00,126.126 INFO    ] 2026-06-22 00:30:00
[2026-06-22 00:30:00,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:30:00,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:30:00,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:30:00,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:30:00,518.518 INFO    ] time= 22/06/2026 00:30:00
[2026-06-22 00:30:00,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:30:00,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:30:00,646.646 INFO    ] No existing commands found in stream
[2026-06-22 00:30:05,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:30:05,659.659 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-22 00:30:08,105.105 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:30:08,108.108 INFO    ] Checking for system updates...
[2026-06-22 00:30:08,149.149 INFO    ] 200
[2026-06-22 00:30:08,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:30:08,214.214 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:30:08,217.217 INFO    ] No update needed
[2026-06-22 00:30:08,219.219 INFO    ] Checking for camera pi updates...
[2026-06-22 00:30:08,257.257 INFO    ] 200
[2026-06-22 00:30:08,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:30:08,300.300 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:30:08,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:30:08,381.381 INFO    ] No camera update needed
[2026-06-22 00:30:08,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:30:08,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:30:08,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:30:08,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:30:10,437.437 INFO    ] ================================================
[2026-06-22 00:30:10,452.452 INFO    ] Launching Daemon at Mon Jun 22 00:30:10 IST 2026
[2026-06-22 00:30:10,463.463 INFO    ] ================================================
[2026-06-22 00:30:11,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:30:11
[2026-06-22 00:30:11,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:30:11,879.879 INFO    ] Initializing speech engine...
[2026-06-22 00:30:11,888.888 INFO    ] 2026-06-22 00:30:11
[2026-06-22 00:30:12,140.140 INFO    ] 2026-06-22 00:30:12
[2026-06-22 00:30:12,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:30:12,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:30:12,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:30:12,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:30:12,651.651 INFO    ] time= 22/06/2026 00:30:12
[2026-06-22 00:30:12,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:30:12,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:30:12,779.779 INFO    ] No existing commands found in stream
[2026-06-22 00:30:17,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:30:17,794.794 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-22 00:30:19,292.292 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:30:19,295.295 INFO    ] Checking for system updates...
[2026-06-22 00:30:19,335.335 INFO    ] 200
[2026-06-22 00:30:19,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:30:19,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:30:19,401.401 INFO    ] No update needed
[2026-06-22 00:30:19,404.404 INFO    ] Checking for camera pi updates...
[2026-06-22 00:30:19,437.437 INFO    ] 200
[2026-06-22 00:30:19,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:30:19,486.486 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:30:19,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:30:19,565.565 INFO    ] No camera update needed
[2026-06-22 00:30:19,568.568 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:30:19,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:30:19,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:30:19,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:30:21,621.621 INFO    ] ================================================
[2026-06-22 00:30:21,636.636 INFO    ] Launching Daemon at Mon Jun 22 00:30:21 IST 2026
[2026-06-22 00:30:21,647.647 INFO    ] ================================================
[2026-06-22 00:30:22,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:30:22
[2026-06-22 00:30:22,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:30:23,227.227 INFO    ] Initializing speech engine...
[2026-06-22 00:30:23,235.235 INFO    ] 2026-06-22 00:30:23
[2026-06-22 00:30:23,511.511 INFO    ] 2026-06-22 00:30:23
[2026-06-22 00:30:23,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:30:23,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:30:23,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:30:23,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:30:23,982.982 INFO    ] time= 22/06/2026 00:30:23
[2026-06-22 00:30:23,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:30:24,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:30:24,141.141 INFO    ] No existing commands found in stream
[2026-06-22 00:30:29,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:30:29,155.155 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-22 00:30:32,435.435 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:30:32,438.438 INFO    ] Checking for system updates...
[2026-06-22 00:30:32,476.476 INFO    ] 200
[2026-06-22 00:30:32,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:30:32,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:30:32,548.548 INFO    ] No update needed
[2026-06-22 00:30:32,551.551 INFO    ] Checking for camera pi updates...
[2026-06-22 00:30:32,586.586 INFO    ] 200
[2026-06-22 00:30:32,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:30:32,640.640 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:30:32,693.693 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:30:32,696.696 INFO    ] No camera update needed
[2026-06-22 00:30:32,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:30:32,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:30:32,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:30:32,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:30:34,759.759 INFO    ] ================================================
[2026-06-22 00:30:34,774.774 INFO    ] Launching Daemon at Mon Jun 22 00:30:34 IST 2026
[2026-06-22 00:30:34,784.784 INFO    ] ================================================
[2026-06-22 00:30:35,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:30:35
[2026-06-22 00:30:36,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:30:36,356.356 INFO    ] Initializing speech engine...
[2026-06-22 00:30:36,375.375 INFO    ] 2026-06-22 00:30:36
[2026-06-22 00:30:36,669.669 INFO    ] 2026-06-22 00:30:36
[2026-06-22 00:30:36,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:30:36,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:30:36,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:30:37,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:30:37,038.038 INFO    ] time= 22/06/2026 00:30:37
[2026-06-22 00:30:37,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:30:37,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:30:37,183.183 INFO    ] No existing commands found in stream
[2026-06-22 00:30:42,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:30:42,206.206 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-22 00:30:45,778.778 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:30:45,781.781 INFO    ] Checking for system updates...
[2026-06-22 00:30:45,817.817 INFO    ] 200
[2026-06-22 00:30:45,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:30:45,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:30:45,877.877 INFO    ] No update needed
[2026-06-22 00:30:45,879.879 INFO    ] Checking for camera pi updates...
[2026-06-22 00:30:45,918.918 INFO    ] 200
[2026-06-22 00:30:45,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:30:45,962.962 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:30:46,042.042 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:30:46,045.045 INFO    ] No camera update needed
[2026-06-22 00:30:46,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:30:46,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:30:46,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:30:46,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:30:48,101.101 INFO    ] ================================================
[2026-06-22 00:30:48,116.116 INFO    ] Launching Daemon at Mon Jun 22 00:30:48 IST 2026
[2026-06-22 00:30:48,127.127 INFO    ] ================================================
[2026-06-22 00:30:48,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:30:48
[2026-06-22 00:30:49,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:30:49,595.595 INFO    ] Initializing speech engine...
[2026-06-22 00:30:49,602.602 INFO    ] 2026-06-22 00:30:49
[2026-06-22 00:30:49,863.863 INFO    ] 2026-06-22 00:30:49
[2026-06-22 00:30:49,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:30:50,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:30:50,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:30:50,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:30:50,321.321 INFO    ] time= 22/06/2026 00:30:50
[2026-06-22 00:30:50,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:30:50,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:30:50,472.472 INFO    ] No existing commands found in stream
[2026-06-22 00:30:55,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:30:55,489.489 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-22 00:30:58,256.256 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:30:58,259.259 INFO    ] Checking for system updates...
[2026-06-22 00:30:58,309.309 INFO    ] 200
[2026-06-22 00:30:58,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:30:58,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:30:58,377.377 INFO    ] No update needed
[2026-06-22 00:30:58,380.380 INFO    ] Checking for camera pi updates...
[2026-06-22 00:30:58,422.422 INFO    ] 200
[2026-06-22 00:30:58,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:30:58,472.472 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:30:58,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:30:58,574.574 INFO    ] No camera update needed
[2026-06-22 00:30:58,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:30:58,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:30:58,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:30:58,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:31:00,630.630 INFO    ] ================================================
[2026-06-22 00:31:00,645.645 INFO    ] Launching Daemon at Mon Jun 22 00:31:00 IST 2026
[2026-06-22 00:31:00,656.656 INFO    ] ================================================
[2026-06-22 00:31:01,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:31:01
[2026-06-22 00:31:02,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:31:02,365.365 INFO    ] Initializing speech engine...
[2026-06-22 00:31:02,378.378 INFO    ] 2026-06-22 00:31:02
[2026-06-22 00:31:02,683.683 INFO    ] 2026-06-22 00:31:02
[2026-06-22 00:31:02,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:31:02,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:31:02,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:31:03,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:31:03,140.140 INFO    ] time= 22/06/2026 00:31:03
[2026-06-22 00:31:03,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:31:03,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:31:03,223.223 INFO    ] No existing commands found in stream
[2026-06-22 00:31:08,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:31:08,238.238 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-22 00:31:08,617.617 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:31:08,620.620 INFO    ] Checking for system updates...
[2026-06-22 00:31:08,659.659 INFO    ] 200
[2026-06-22 00:31:08,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:31:08,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:31:08,723.723 INFO    ] No update needed
[2026-06-22 00:31:08,726.726 INFO    ] Checking for camera pi updates...
[2026-06-22 00:31:08,763.763 INFO    ] 200
[2026-06-22 00:31:08,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:31:08,810.810 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:31:08,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:31:08,887.887 INFO    ] No camera update needed
[2026-06-22 00:31:08,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:31:08,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:31:08,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:31:08,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:31:10,942.942 INFO    ] ================================================
[2026-06-22 00:31:10,958.958 INFO    ] Launching Daemon at Mon Jun 22 00:31:10 IST 2026
[2026-06-22 00:31:10,970.970 INFO    ] ================================================
[2026-06-22 00:31:11,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:31:11
[2026-06-22 00:31:12,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:31:12,341.341 INFO    ] Initializing speech engine...
[2026-06-22 00:31:12,351.351 INFO    ] 2026-06-22 00:31:12
[2026-06-22 00:31:12,607.607 INFO    ] 2026-06-22 00:31:12
[2026-06-22 00:31:12,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:31:12,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:31:12,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:31:13,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:31:13,074.074 INFO    ] time= 22/06/2026 00:31:13
[2026-06-22 00:31:13,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:31:13,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:31:13,225.225 INFO    ] No existing commands found in stream
[2026-06-22 00:31:18,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:31:18,239.239 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-22 00:31:22,145.145 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:31:22,148.148 INFO    ] Checking for system updates...
[2026-06-22 00:31:22,184.184 INFO    ] 200
[2026-06-22 00:31:22,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:31:22,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:31:22,252.252 INFO    ] No update needed
[2026-06-22 00:31:22,255.255 INFO    ] Checking for camera pi updates...
[2026-06-22 00:31:22,294.294 INFO    ] 200
[2026-06-22 00:31:22,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:31:22,340.340 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:31:22,521.521 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:31:22,524.524 INFO    ] No camera update needed
[2026-06-22 00:31:22,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:31:22,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:31:22,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:31:22,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:31:24,586.586 INFO    ] ================================================
[2026-06-22 00:31:24,602.602 INFO    ] Launching Daemon at Mon Jun 22 00:31:24 IST 2026
[2026-06-22 00:31:24,613.613 INFO    ] ================================================
[2026-06-22 00:31:25,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:31:25
[2026-06-22 00:31:25,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:31:26,179.179 INFO    ] Initializing speech engine...
[2026-06-22 00:31:26,191.191 INFO    ] 2026-06-22 00:31:26
[2026-06-22 00:31:26,479.479 INFO    ] 2026-06-22 00:31:26
[2026-06-22 00:31:26,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:31:26,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:31:26,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:31:26,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:31:26,964.964 INFO    ] time= 22/06/2026 00:31:26
[2026-06-22 00:31:27,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:31:27,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:31:27,163.163 INFO    ] No existing commands found in stream
[2026-06-22 00:31:32,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:31:32,190.190 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-22 00:31:34,494.494 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:31:34,497.497 INFO    ] Checking for system updates...
[2026-06-22 00:31:34,535.535 INFO    ] 200
[2026-06-22 00:31:34,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:31:34,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:31:34,602.602 INFO    ] No update needed
[2026-06-22 00:31:34,605.605 INFO    ] Checking for camera pi updates...
[2026-06-22 00:31:34,644.644 INFO    ] 200
[2026-06-22 00:31:34,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:31:34,694.694 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:31:34,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:31:34,769.769 INFO    ] No camera update needed
[2026-06-22 00:31:34,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:31:34,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:31:34,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:31:34,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:31:36,829.829 INFO    ] ================================================
[2026-06-22 00:31:36,845.845 INFO    ] Launching Daemon at Mon Jun 22 00:31:36 IST 2026
[2026-06-22 00:31:36,856.856 INFO    ] ================================================
[2026-06-22 00:31:37,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:31:37
[2026-06-22 00:31:38,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:31:38,292.292 INFO    ] Initializing speech engine...
[2026-06-22 00:31:38,301.301 INFO    ] 2026-06-22 00:31:38
[2026-06-22 00:31:38,597.597 INFO    ] 2026-06-22 00:31:38
[2026-06-22 00:31:38,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:31:38,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:31:38,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:31:38,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:31:38,991.991 INFO    ] time= 22/06/2026 00:31:38
[2026-06-22 00:31:38,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:31:39,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:31:39,068.068 INFO    ] No existing commands found in stream
[2026-06-22 00:31:44,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:31:44,083.083 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-22 00:31:48,025.025 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:31:48,027.027 INFO    ] Checking for system updates...
[2026-06-22 00:31:48,054.054 INFO    ] 200
[2026-06-22 00:31:48,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:31:48,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:31:48,121.121 INFO    ] No update needed
[2026-06-22 00:31:48,125.125 INFO    ] Checking for camera pi updates...
[2026-06-22 00:31:48,160.160 INFO    ] 200
[2026-06-22 00:31:48,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:31:48,211.211 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:31:48,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:31:48,261.261 INFO    ] No camera update needed
[2026-06-22 00:31:48,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:31:48,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:31:48,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:31:48,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:31:50,321.321 INFO    ] ================================================
[2026-06-22 00:31:50,337.337 INFO    ] Launching Daemon at Mon Jun 22 00:31:50 IST 2026
[2026-06-22 00:31:50,348.348 INFO    ] ================================================
[2026-06-22 00:31:50,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:31:50
[2026-06-22 00:31:51,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:31:51,683.683 INFO    ] Initializing speech engine...
[2026-06-22 00:31:51,693.693 INFO    ] 2026-06-22 00:31:51
[2026-06-22 00:31:51,942.942 INFO    ] 2026-06-22 00:31:51
[2026-06-22 00:31:51,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:31:52,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:31:52,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:31:52,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:31:52,423.423 INFO    ] time= 22/06/2026 00:31:52
[2026-06-22 00:31:52,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:31:52,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:31:52,572.572 INFO    ] No existing commands found in stream
[2026-06-22 00:31:57,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:31:57,587.587 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-22 00:31:59,142.142 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:31:59,146.146 INFO    ] Checking for system updates...
[2026-06-22 00:31:59,193.193 INFO    ] 200
[2026-06-22 00:31:59,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:31:59,262.262 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:31:59,265.265 INFO    ] No update needed
[2026-06-22 00:31:59,268.268 INFO    ] Checking for camera pi updates...
[2026-06-22 00:31:59,303.303 INFO    ] 200
[2026-06-22 00:31:59,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:31:59,348.348 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:31:59,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:31:59,426.426 INFO    ] No camera update needed
[2026-06-22 00:31:59,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:31:59,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:31:59,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:31:59,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:32:01,500.500 INFO    ] ================================================
[2026-06-22 00:32:01,533.533 INFO    ] Launching Daemon at Mon Jun 22 00:32:01 IST 2026
[2026-06-22 00:32:01,554.554 INFO    ] ================================================
[2026-06-22 00:32:02,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:32:02
[2026-06-22 00:32:03,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:32:03,274.274 INFO    ] Initializing speech engine...
[2026-06-22 00:32:03,282.282 INFO    ] 2026-06-22 00:32:03
[2026-06-22 00:32:03,575.575 INFO    ] 2026-06-22 00:32:03
[2026-06-22 00:32:03,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:32:03,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:32:03,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:32:03,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:32:03,954.954 INFO    ] time= 22/06/2026 00:32:03
[2026-06-22 00:32:03,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:32:03,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:32:04,079.079 INFO    ] No existing commands found in stream
[2026-06-22 00:32:09,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:32:09,094.094 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-22 00:32:09,983.983 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:32:09,984.984 INFO    ] Checking for system updates...
[2026-06-22 00:32:10,005.005 INFO    ] 200
[2026-06-22 00:32:10,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:32:10,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:32:10,041.041 INFO    ] No update needed
[2026-06-22 00:32:10,044.044 INFO    ] Checking for camera pi updates...
[2026-06-22 00:32:10,079.079 INFO    ] 200
[2026-06-22 00:32:10,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:32:10,122.122 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:32:10,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:32:10,179.179 INFO    ] No camera update needed
[2026-06-22 00:32:10,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:32:10,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:32:10,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:32:10,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:32:12,234.234 INFO    ] ================================================
[2026-06-22 00:32:12,249.249 INFO    ] Launching Daemon at Mon Jun 22 00:32:12 IST 2026
[2026-06-22 00:32:12,261.261 INFO    ] ================================================
[2026-06-22 00:32:12,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:32:12
[2026-06-22 00:32:13,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:32:13,631.631 INFO    ] Initializing speech engine...
[2026-06-22 00:32:13,642.642 INFO    ] 2026-06-22 00:32:13
[2026-06-22 00:32:13,902.902 INFO    ] 2026-06-22 00:32:13
[2026-06-22 00:32:13,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:32:14,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:32:14,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:32:14,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:32:14,364.364 INFO    ] time= 22/06/2026 00:32:14
[2026-06-22 00:32:14,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:32:14,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:32:14,577.577 INFO    ] No existing commands found in stream
[2026-06-22 00:32:19,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:32:19,609.609 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-22 00:32:21,039.039 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:32:21,040.040 INFO    ] Checking for system updates...
[2026-06-22 00:32:21,061.061 INFO    ] 200
[2026-06-22 00:32:21,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:32:21,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:32:21,095.095 INFO    ] No update needed
[2026-06-22 00:32:21,096.096 INFO    ] Checking for camera pi updates...
[2026-06-22 00:32:21,116.116 INFO    ] 200
[2026-06-22 00:32:21,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:32:21,149.149 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:32:21,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:32:21,232.232 INFO    ] No camera update needed
[2026-06-22 00:32:21,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:32:21,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:32:21,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:32:21,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:32:23,290.290 INFO    ] ================================================
[2026-06-22 00:32:23,305.305 INFO    ] Launching Daemon at Mon Jun 22 00:32:23 IST 2026
[2026-06-22 00:32:23,316.316 INFO    ] ================================================
[2026-06-22 00:32:23,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:32:23
[2026-06-22 00:32:24,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:32:24,774.774 INFO    ] Initializing speech engine...
[2026-06-22 00:32:24,782.782 INFO    ] 2026-06-22 00:32:24
[2026-06-22 00:32:25,080.080 INFO    ] 2026-06-22 00:32:25
[2026-06-22 00:32:25,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:32:25,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:32:25,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:32:25,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:32:25,456.456 INFO    ] time= 22/06/2026 00:32:25
[2026-06-22 00:32:25,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:32:25,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:32:25,582.582 INFO    ] No existing commands found in stream
[2026-06-22 00:32:30,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:32:30,595.595 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-22 00:32:32,004.004 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:32:32,007.007 INFO    ] Checking for system updates...
[2026-06-22 00:32:32,046.046 INFO    ] 200
[2026-06-22 00:32:32,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:32:32,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:32:32,113.113 INFO    ] No update needed
[2026-06-22 00:32:32,116.116 INFO    ] Checking for camera pi updates...
[2026-06-22 00:32:32,152.152 INFO    ] 200
[2026-06-22 00:32:32,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:32:32,204.204 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:32:32,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:32:32,283.283 INFO    ] No camera update needed
[2026-06-22 00:32:32,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:32:32,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:32:32,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:32:32,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:32:34,342.342 INFO    ] ================================================
[2026-06-22 00:32:34,357.357 INFO    ] Launching Daemon at Mon Jun 22 00:32:34 IST 2026
[2026-06-22 00:32:34,369.369 INFO    ] ================================================
[2026-06-22 00:32:34,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:32:34
[2026-06-22 00:32:35,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:32:35,715.715 INFO    ] Initializing speech engine...
[2026-06-22 00:32:35,724.724 INFO    ] 2026-06-22 00:32:35
[2026-06-22 00:32:35,970.970 INFO    ] 2026-06-22 00:32:35
[2026-06-22 00:32:36,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:32:36,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:32:36,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:32:36,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:32:36,343.343 INFO    ] time= 22/06/2026 00:32:36
[2026-06-22 00:32:36,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:32:36,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:32:36,422.422 INFO    ] No existing commands found in stream
[2026-06-22 00:32:41,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:32:41,456.456 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-22 00:32:45,420.420 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:32:45,422.422 INFO    ] Checking for system updates...
[2026-06-22 00:32:45,460.460 INFO    ] 200
[2026-06-22 00:32:45,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:32:45,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:32:45,521.521 INFO    ] No update needed
[2026-06-22 00:32:45,524.524 INFO    ] Checking for camera pi updates...
[2026-06-22 00:32:45,559.559 INFO    ] 200
[2026-06-22 00:32:45,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:32:45,605.605 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:32:45,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:32:45,683.683 INFO    ] No camera update needed
[2026-06-22 00:32:45,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:32:45,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:32:45,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:32:45,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:32:47,745.745 INFO    ] ================================================
[2026-06-22 00:32:47,760.760 INFO    ] Launching Daemon at Mon Jun 22 00:32:47 IST 2026
[2026-06-22 00:32:47,771.771 INFO    ] ================================================
[2026-06-22 00:32:48,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:32:48
[2026-06-22 00:32:48,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:32:49,175.175 INFO    ] Initializing speech engine...
[2026-06-22 00:32:49,198.198 INFO    ] 2026-06-22 00:32:49
[2026-06-22 00:32:49,451.451 INFO    ] 2026-06-22 00:32:49
[2026-06-22 00:32:49,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:32:49,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:32:49,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:32:49,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:32:49,936.936 INFO    ] time= 22/06/2026 00:32:49
[2026-06-22 00:32:49,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:32:50,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:32:50,080.080 INFO    ] No existing commands found in stream
[2026-06-22 00:32:55,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:32:55,095.095 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-22 00:32:58,054.054 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:32:58,057.057 INFO    ] Checking for system updates...
[2026-06-22 00:32:58,097.097 INFO    ] 200
[2026-06-22 00:32:58,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:32:58,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:32:58,177.177 INFO    ] No update needed
[2026-06-22 00:32:58,179.179 INFO    ] Checking for camera pi updates...
[2026-06-22 00:32:58,224.224 INFO    ] 200
[2026-06-22 00:32:58,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:32:58,268.268 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:32:58,345.345 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:32:58,348.348 INFO    ] No camera update needed
[2026-06-22 00:32:58,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:32:58,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:32:58,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:32:58,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:33:00,406.406 INFO    ] ================================================
[2026-06-22 00:33:00,422.422 INFO    ] Launching Daemon at Mon Jun 22 00:33:00 IST 2026
[2026-06-22 00:33:00,432.432 INFO    ] ================================================
[2026-06-22 00:33:01,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:33:01
[2026-06-22 00:33:01,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:33:02,087.087 INFO    ] Initializing speech engine...
[2026-06-22 00:33:02,109.109 INFO    ] 2026-06-22 00:33:02
[2026-06-22 00:33:02,412.412 INFO    ] 2026-06-22 00:33:02
[2026-06-22 00:33:02,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:33:02,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:33:02,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:33:02,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:33:02,834.834 INFO    ] time= 22/06/2026 00:33:02
[2026-06-22 00:33:02,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:33:02,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:33:02,967.967 INFO    ] No existing commands found in stream
[2026-06-22 00:33:07,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:33:07,981.981 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-22 00:33:11,435.435 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:33:11,438.438 INFO    ] Checking for system updates...
[2026-06-22 00:33:11,476.476 INFO    ] 200
[2026-06-22 00:33:11,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:33:11,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:33:11,542.542 INFO    ] No update needed
[2026-06-22 00:33:11,544.544 INFO    ] Checking for camera pi updates...
[2026-06-22 00:33:11,579.579 INFO    ] 200
[2026-06-22 00:33:11,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:33:11,626.626 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:33:11,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:33:11,701.701 INFO    ] No camera update needed
[2026-06-22 00:33:11,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:33:11,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:33:11,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:33:11,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:33:13,750.750 INFO    ] ================================================
[2026-06-22 00:33:13,766.766 INFO    ] Launching Daemon at Mon Jun 22 00:33:13 IST 2026
[2026-06-22 00:33:13,777.777 INFO    ] ================================================
[2026-06-22 00:33:14,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:33:14
[2026-06-22 00:33:14,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:33:15,259.259 INFO    ] Initializing speech engine...
[2026-06-22 00:33:15,271.271 INFO    ] 2026-06-22 00:33:15
[2026-06-22 00:33:15,535.535 INFO    ] 2026-06-22 00:33:15
[2026-06-22 00:33:15,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:33:15,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:33:15,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:33:15,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:33:15,897.897 INFO    ] time= 22/06/2026 00:33:15
[2026-06-22 00:33:15,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:33:15,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:33:16,069.069 INFO    ] No existing commands found in stream
[2026-06-22 00:33:21,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:33:21,102.102 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-22 00:33:22,226.226 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:33:22,227.227 INFO    ] Checking for system updates...
[2026-06-22 00:33:22,249.249 INFO    ] 200
[2026-06-22 00:33:22,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:33:22,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:33:22,290.290 INFO    ] No update needed
[2026-06-22 00:33:22,292.292 INFO    ] Checking for camera pi updates...
[2026-06-22 00:33:22,326.326 INFO    ] 200
[2026-06-22 00:33:22,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:33:22,369.369 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:33:22,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:33:22,437.437 INFO    ] No camera update needed
[2026-06-22 00:33:22,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:33:22,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:33:22,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:33:22,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:33:24,493.493 INFO    ] ================================================
[2026-06-22 00:33:24,508.508 INFO    ] Launching Daemon at Mon Jun 22 00:33:24 IST 2026
[2026-06-22 00:33:24,519.519 INFO    ] ================================================
[2026-06-22 00:33:25,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:33:25
[2026-06-22 00:33:25,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:33:25,990.990 INFO    ] Initializing speech engine...
[2026-06-22 00:33:25,998.998 INFO    ] 2026-06-22 00:33:25
[2026-06-22 00:33:26,260.260 INFO    ] 2026-06-22 00:33:26
[2026-06-22 00:33:26,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:33:26,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:33:26,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:33:26,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:33:26,771.771 INFO    ] time= 22/06/2026 00:33:26
[2026-06-22 00:33:26,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:33:26,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:33:26,985.985 INFO    ] No existing commands found in stream
[2026-06-22 00:33:31,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:33:31,999.999 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-22 00:33:35,841.841 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:33:35,842.842 INFO    ] Checking for system updates...
[2026-06-22 00:33:35,865.865 INFO    ] 200
[2026-06-22 00:33:35,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:33:35,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:33:35,897.897 INFO    ] No update needed
[2026-06-22 00:33:35,900.900 INFO    ] Checking for camera pi updates...
[2026-06-22 00:33:35,934.934 INFO    ] 200
[2026-06-22 00:33:35,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:33:35,978.978 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:33:36,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:33:36,035.035 INFO    ] No camera update needed
[2026-06-22 00:33:36,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:33:36,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:33:36,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:33:36,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:33:38,090.090 INFO    ] ================================================
[2026-06-22 00:33:38,106.106 INFO    ] Launching Daemon at Mon Jun 22 00:33:38 IST 2026
[2026-06-22 00:33:38,116.116 INFO    ] ================================================
[2026-06-22 00:33:38,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:33:38
[2026-06-22 00:33:39,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:33:39,550.550 INFO    ] Initializing speech engine...
[2026-06-22 00:33:39,559.559 INFO    ] 2026-06-22 00:33:39
[2026-06-22 00:33:39,812.812 INFO    ] 2026-06-22 00:33:39
[2026-06-22 00:33:39,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:33:40,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:33:40,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:33:40,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:33:40,315.315 INFO    ] time= 22/06/2026 00:33:40
[2026-06-22 00:33:40,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:33:40,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:33:40,548.548 INFO    ] No existing commands found in stream
[2026-06-22 00:33:45,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:33:45,567.567 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-22 00:33:46,635.635 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:33:46,636.636 INFO    ] Checking for system updates...
[2026-06-22 00:33:46,657.657 INFO    ] 200
[2026-06-22 00:33:46,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:33:46,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:33:46,691.691 INFO    ] No update needed
[2026-06-22 00:33:46,693.693 INFO    ] Checking for camera pi updates...
[2026-06-22 00:33:46,731.731 INFO    ] 200
[2026-06-22 00:33:46,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:33:46,786.786 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:33:46,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:33:46,871.871 INFO    ] No camera update needed
[2026-06-22 00:33:46,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:33:46,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:33:46,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:33:46,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:33:48,931.931 INFO    ] ================================================
[2026-06-22 00:33:48,948.948 INFO    ] Launching Daemon at Mon Jun 22 00:33:48 IST 2026
[2026-06-22 00:33:48,959.959 INFO    ] ================================================
[2026-06-22 00:33:49,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:33:49
[2026-06-22 00:33:50,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:33:50,404.404 INFO    ] Initializing speech engine...
[2026-06-22 00:33:50,427.427 INFO    ] 2026-06-22 00:33:50
[2026-06-22 00:33:50,684.684 INFO    ] 2026-06-22 00:33:50
[2026-06-22 00:33:50,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:33:50,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:33:50,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:33:51,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:33:51,130.130 INFO    ] time= 22/06/2026 00:33:51
[2026-06-22 00:33:51,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:33:51,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:33:51,315.315 INFO    ] No existing commands found in stream
[2026-06-22 00:33:56,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:33:56,329.329 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-22 00:33:59,804.804 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:33:59,806.806 INFO    ] Checking for system updates...
[2026-06-22 00:33:59,843.843 INFO    ] 200
[2026-06-22 00:33:59,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:33:59,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:33:59,904.904 INFO    ] No update needed
[2026-06-22 00:33:59,907.907 INFO    ] Checking for camera pi updates...
[2026-06-22 00:33:59,943.943 INFO    ] 200
[2026-06-22 00:33:59,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:33:59,998.998 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:34:00,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:34:00,081.081 INFO    ] No camera update needed
[2026-06-22 00:34:00,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:34:00,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:34:00,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:34:00,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:34:02,133.133 INFO    ] ================================================
[2026-06-22 00:34:02,152.152 INFO    ] Launching Daemon at Mon Jun 22 00:34:02 IST 2026
[2026-06-22 00:34:02,168.168 INFO    ] ================================================
[2026-06-22 00:34:02,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:34:02
[2026-06-22 00:34:03,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:34:03,809.809 INFO    ] Initializing speech engine...
[2026-06-22 00:34:03,815.815 INFO    ] 2026-06-22 00:34:03
[2026-06-22 00:34:04,112.112 INFO    ] 2026-06-22 00:34:04
[2026-06-22 00:34:04,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:34:04,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:34:04,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:34:04,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:34:04,510.510 INFO    ] time= 22/06/2026 00:34:04
[2026-06-22 00:34:04,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:34:04,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:34:04,673.673 INFO    ] No existing commands found in stream
[2026-06-22 00:34:09,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:34:09,707.707 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-22 00:34:13,189.189 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:34:13,191.191 INFO    ] Checking for system updates...
[2026-06-22 00:34:13,227.227 INFO    ] 200
[2026-06-22 00:34:13,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:34:13,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:34:13,286.286 INFO    ] No update needed
[2026-06-22 00:34:13,289.289 INFO    ] Checking for camera pi updates...
[2026-06-22 00:34:13,322.322 INFO    ] 200
[2026-06-22 00:34:13,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:34:13,367.367 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:34:13,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:34:13,473.473 INFO    ] No camera update needed
[2026-06-22 00:34:13,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:34:13,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:34:13,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:34:13,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:34:15,531.531 INFO    ] ================================================
[2026-06-22 00:34:15,547.547 INFO    ] Launching Daemon at Mon Jun 22 00:34:15 IST 2026
[2026-06-22 00:34:15,558.558 INFO    ] ================================================
[2026-06-22 00:34:16,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:34:16
[2026-06-22 00:34:16,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:34:17,011.011 INFO    ] Initializing speech engine...
[2026-06-22 00:34:17,036.036 INFO    ] 2026-06-22 00:34:17
[2026-06-22 00:34:17,287.287 INFO    ] 2026-06-22 00:34:17
[2026-06-22 00:34:17,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:34:17,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:34:17,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:34:17,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:34:17,713.713 INFO    ] time= 22/06/2026 00:34:17
[2026-06-22 00:34:17,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:34:17,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:34:17,846.846 INFO    ] No existing commands found in stream
[2026-06-22 00:34:22,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:34:22,860.860 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-22 00:34:23,485.485 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:34:23,488.488 INFO    ] Checking for system updates...
[2026-06-22 00:34:23,524.524 INFO    ] 200
[2026-06-22 00:34:23,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:34:23,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:34:23,590.590 INFO    ] No update needed
[2026-06-22 00:34:23,593.593 INFO    ] Checking for camera pi updates...
[2026-06-22 00:34:23,628.628 INFO    ] 200
[2026-06-22 00:34:23,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:34:23,672.672 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:34:23,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:34:23,774.774 INFO    ] No camera update needed
[2026-06-22 00:34:23,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:34:23,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:34:23,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:34:23,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:34:25,834.834 INFO    ] ================================================
[2026-06-22 00:34:25,849.849 INFO    ] Launching Daemon at Mon Jun 22 00:34:25 IST 2026
[2026-06-22 00:34:25,859.859 INFO    ] ================================================
[2026-06-22 00:34:26,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:34:26
[2026-06-22 00:34:26,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:34:27,230.230 INFO    ] Initializing speech engine...
[2026-06-22 00:34:27,239.239 INFO    ] 2026-06-22 00:34:27
[2026-06-22 00:34:27,497.497 INFO    ] 2026-06-22 00:34:27
[2026-06-22 00:34:27,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:34:27,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:34:27,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:34:27,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:34:27,935.935 INFO    ] time= 22/06/2026 00:34:27
[2026-06-22 00:34:28,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:34:28,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:34:28,166.166 INFO    ] No existing commands found in stream
[2026-06-22 00:34:33,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:34:33,200.200 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-22 00:34:35,096.096 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:34:35,098.098 INFO    ] Checking for system updates...
[2026-06-22 00:34:35,138.138 INFO    ] 200
[2026-06-22 00:34:35,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:34:35,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:34:35,213.213 INFO    ] No update needed
[2026-06-22 00:34:35,216.216 INFO    ] Checking for camera pi updates...
[2026-06-22 00:34:35,249.249 INFO    ] 200
[2026-06-22 00:34:35,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:34:35,292.292 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:34:35,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:34:35,397.397 INFO    ] No camera update needed
[2026-06-22 00:34:35,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:34:35,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:34:35,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:34:35,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:34:37,454.454 INFO    ] ================================================
[2026-06-22 00:34:37,468.468 INFO    ] Launching Daemon at Mon Jun 22 00:34:37 IST 2026
[2026-06-22 00:34:37,480.480 INFO    ] ================================================
[2026-06-22 00:34:38,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:34:38
[2026-06-22 00:34:38,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:34:39,036.036 INFO    ] Initializing speech engine...
[2026-06-22 00:34:39,045.045 INFO    ] 2026-06-22 00:34:39
[2026-06-22 00:34:39,291.291 INFO    ] 2026-06-22 00:34:39
[2026-06-22 00:34:39,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:34:39,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:34:39,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:34:39,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:34:39,776.776 INFO    ] time= 22/06/2026 00:34:39
[2026-06-22 00:34:39,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:34:39,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:34:39,903.903 INFO    ] No existing commands found in stream
[2026-06-22 00:34:44,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:34:44,918.918 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-22 00:34:48,943.943 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:34:48,946.946 INFO    ] Checking for system updates...
[2026-06-22 00:34:48,993.993 INFO    ] 200
[2026-06-22 00:34:48,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:34:49,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:34:49,076.076 INFO    ] No update needed
[2026-06-22 00:34:49,080.080 INFO    ] Checking for camera pi updates...
[2026-06-22 00:34:49,114.114 INFO    ] 200
[2026-06-22 00:34:49,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:34:49,158.158 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:34:49,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:34:49,259.259 INFO    ] No camera update needed
[2026-06-22 00:34:49,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:34:49,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:34:49,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:34:49,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:34:51,316.316 INFO    ] ================================================
[2026-06-22 00:34:51,331.331 INFO    ] Launching Daemon at Mon Jun 22 00:34:51 IST 2026
[2026-06-22 00:34:51,342.342 INFO    ] ================================================
[2026-06-22 00:34:51,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:34:51
[2026-06-22 00:34:52,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:34:52,829.829 INFO    ] Initializing speech engine...
[2026-06-22 00:34:52,834.834 INFO    ] 2026-06-22 00:34:52
[2026-06-22 00:34:53,099.099 INFO    ] 2026-06-22 00:34:53
[2026-06-22 00:34:53,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:34:53,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:34:53,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:34:53,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:34:53,564.564 INFO    ] time= 22/06/2026 00:34:53
[2026-06-22 00:34:53,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:34:53,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:34:53,715.715 INFO    ] No existing commands found in stream
[2026-06-22 00:34:58,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:34:58,750.750 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-22 00:35:01,803.803 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:35:01,807.807 INFO    ] Checking for system updates...
[2026-06-22 00:35:01,866.866 INFO    ] 200
[2026-06-22 00:35:01,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:35:01,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:35:01,939.939 INFO    ] No update needed
[2026-06-22 00:35:01,942.942 INFO    ] Checking for camera pi updates...
[2026-06-22 00:35:01,987.987 INFO    ] 200
[2026-06-22 00:35:01,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:35:02,046.046 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:35:02,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:35:02,130.130 INFO    ] No camera update needed
[2026-06-22 00:35:02,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:35:02,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:35:02,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:35:02,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:35:04,192.192 INFO    ] ================================================
[2026-06-22 00:35:04,208.208 INFO    ] Launching Daemon at Mon Jun 22 00:35:04 IST 2026
[2026-06-22 00:35:04,218.218 INFO    ] ================================================
[2026-06-22 00:35:04,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:35:04
[2026-06-22 00:35:05,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:35:05,695.695 INFO    ] Initializing speech engine...
[2026-06-22 00:35:05,704.704 INFO    ] 2026-06-22 00:35:05
[2026-06-22 00:35:05,973.973 INFO    ] 2026-06-22 00:35:05
[2026-06-22 00:35:06,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:35:06,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:35:06,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:35:06,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:35:06,470.470 INFO    ] time= 22/06/2026 00:35:06
[2026-06-22 00:35:06,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:35:06,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:35:06,619.619 INFO    ] No existing commands found in stream
[2026-06-22 00:35:11,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:35:11,633.633 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-22 00:35:15,295.295 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:35:15,297.297 INFO    ] Checking for system updates...
[2026-06-22 00:35:15,334.334 INFO    ] 200
[2026-06-22 00:35:15,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:35:15,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:35:15,407.407 INFO    ] No update needed
[2026-06-22 00:35:15,410.410 INFO    ] Checking for camera pi updates...
[2026-06-22 00:35:15,443.443 INFO    ] 200
[2026-06-22 00:35:15,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:35:15,487.487 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:35:15,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:35:15,574.574 INFO    ] No camera update needed
[2026-06-22 00:35:15,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:35:15,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:35:15,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:35:15,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:35:17,630.630 INFO    ] ================================================
[2026-06-22 00:35:17,644.644 INFO    ] Launching Daemon at Mon Jun 22 00:35:17 IST 2026
[2026-06-22 00:35:17,655.655 INFO    ] ================================================
[2026-06-22 00:35:18,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:35:18
[2026-06-22 00:35:18,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:35:18,980.980 INFO    ] Initializing speech engine...
[2026-06-22 00:35:19,003.003 INFO    ] 2026-06-22 00:35:18
[2026-06-22 00:35:19,259.259 INFO    ] 2026-06-22 00:35:19
[2026-06-22 00:35:19,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:35:19,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:35:19,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:35:19,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:35:19,750.750 INFO    ] time= 22/06/2026 00:35:19
[2026-06-22 00:35:19,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:35:19,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:35:19,893.893 INFO    ] No existing commands found in stream
[2026-06-22 00:35:24,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:35:24,908.908 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-22 00:35:27,013.013 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:35:27,014.014 INFO    ] Checking for system updates...
[2026-06-22 00:35:27,037.037 INFO    ] 200
[2026-06-22 00:35:27,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:35:27,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:35:27,072.072 INFO    ] No update needed
[2026-06-22 00:35:27,073.073 INFO    ] Checking for camera pi updates...
[2026-06-22 00:35:27,101.101 INFO    ] 200
[2026-06-22 00:35:27,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:35:27,146.146 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:35:27,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:35:27,219.219 INFO    ] No camera update needed
[2026-06-22 00:35:27,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:35:27,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:35:27,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:35:27,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:35:29,278.278 INFO    ] ================================================
[2026-06-22 00:35:29,294.294 INFO    ] Launching Daemon at Mon Jun 22 00:35:29 IST 2026
[2026-06-22 00:35:29,306.306 INFO    ] ================================================
[2026-06-22 00:35:29,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:35:29
[2026-06-22 00:35:30,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:35:30,684.684 INFO    ] Initializing speech engine...
[2026-06-22 00:35:30,691.691 INFO    ] 2026-06-22 00:35:30
[2026-06-22 00:35:30,952.952 INFO    ] 2026-06-22 00:35:30
[2026-06-22 00:35:30,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:35:31,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:35:31,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:35:31,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:35:31,433.433 INFO    ] time= 22/06/2026 00:35:31
[2026-06-22 00:35:31,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:35:31,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:35:31,679.679 INFO    ] No existing commands found in stream
[2026-06-22 00:35:36,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:35:36,712.712 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-22 00:35:40,786.786 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:35:40,789.789 INFO    ] Checking for system updates...
[2026-06-22 00:35:40,825.825 INFO    ] 200
[2026-06-22 00:35:40,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:35:40,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:35:40,883.883 INFO    ] No update needed
[2026-06-22 00:35:40,885.885 INFO    ] Checking for camera pi updates...
[2026-06-22 00:35:40,919.919 INFO    ] 200
[2026-06-22 00:35:40,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:35:40,967.967 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:35:41,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:35:41,053.053 INFO    ] No camera update needed
[2026-06-22 00:35:41,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:35:41,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:35:41,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:35:41,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:35:43,111.111 INFO    ] ================================================
[2026-06-22 00:35:43,127.127 INFO    ] Launching Daemon at Mon Jun 22 00:35:43 IST 2026
[2026-06-22 00:35:43,137.137 INFO    ] ================================================
[2026-06-22 00:35:43,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:35:43
[2026-06-22 00:35:44,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:35:44,606.606 INFO    ] Initializing speech engine...
[2026-06-22 00:35:44,632.632 INFO    ] 2026-06-22 00:35:44
[2026-06-22 00:35:44,892.892 INFO    ] 2026-06-22 00:35:44
[2026-06-22 00:35:44,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:35:45,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:35:45,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:35:45,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:35:45,268.268 INFO    ] time= 22/06/2026 00:35:45
[2026-06-22 00:35:45,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:35:45,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:35:45,447.447 INFO    ] No existing commands found in stream
[2026-06-22 00:35:50,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:35:50,486.486 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-22 00:35:51,705.705 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:35:51,708.708 INFO    ] Checking for system updates...
[2026-06-22 00:35:51,746.746 INFO    ] 200
[2026-06-22 00:35:51,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:35:51,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:35:51,805.805 INFO    ] No update needed
[2026-06-22 00:35:51,807.807 INFO    ] Checking for camera pi updates...
[2026-06-22 00:35:51,841.841 INFO    ] 200
[2026-06-22 00:35:51,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:35:51,884.884 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:35:52,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:35:52,049.049 INFO    ] No camera update needed
[2026-06-22 00:35:52,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:35:52,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:35:52,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:35:52,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:35:54,110.110 INFO    ] ================================================
[2026-06-22 00:35:54,126.126 INFO    ] Launching Daemon at Mon Jun 22 00:35:54 IST 2026
[2026-06-22 00:35:54,137.137 INFO    ] ================================================
[2026-06-22 00:35:54,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:35:54
[2026-06-22 00:35:55,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:35:55,670.670 INFO    ] Initializing speech engine...
[2026-06-22 00:35:55,678.678 INFO    ] 2026-06-22 00:35:55
[2026-06-22 00:35:55,972.972 INFO    ] 2026-06-22 00:35:55
[2026-06-22 00:35:56,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:35:56,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:35:56,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:35:56,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:35:56,377.377 INFO    ] time= 22/06/2026 00:35:56
[2026-06-22 00:35:56,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:35:56,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:35:56,535.535 INFO    ] No existing commands found in stream
[2026-06-22 00:36:01,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:36:01,571.571 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-22 00:36:02,732.732 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:36:02,735.735 INFO    ] Checking for system updates...
[2026-06-22 00:36:02,782.782 INFO    ] 200
[2026-06-22 00:36:02,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:36:02,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:36:02,851.851 INFO    ] No update needed
[2026-06-22 00:36:02,854.854 INFO    ] Checking for camera pi updates...
[2026-06-22 00:36:02,887.887 INFO    ] 200
[2026-06-22 00:36:02,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:36:02,935.935 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:36:02,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:36:02,994.994 INFO    ] No camera update needed
[2026-06-22 00:36:02,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:36:02,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:36:03,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:36:03,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:36:05,058.058 INFO    ] ================================================
[2026-06-22 00:36:05,075.075 INFO    ] Launching Daemon at Mon Jun 22 00:36:05 IST 2026
[2026-06-22 00:36:05,086.086 INFO    ] ================================================
[2026-06-22 00:36:05,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:36:05
[2026-06-22 00:36:06,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:36:06,548.548 INFO    ] Initializing speech engine...
[2026-06-22 00:36:06,559.559 INFO    ] 2026-06-22 00:36:06
[2026-06-22 00:36:06,828.828 INFO    ] 2026-06-22 00:36:06
[2026-06-22 00:36:06,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:36:07,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:36:07,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:36:07,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:36:07,294.294 INFO    ] time= 22/06/2026 00:36:07
[2026-06-22 00:36:07,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:36:07,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:36:07,461.461 INFO    ] No existing commands found in stream
[2026-06-22 00:36:12,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:36:12,476.476 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-22 00:36:13,774.774 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:36:13,777.777 INFO    ] Checking for system updates...
[2026-06-22 00:36:13,816.816 INFO    ] 200
[2026-06-22 00:36:13,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:36:13,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:36:13,882.882 INFO    ] No update needed
[2026-06-22 00:36:13,884.884 INFO    ] Checking for camera pi updates...
[2026-06-22 00:36:13,918.918 INFO    ] 200
[2026-06-22 00:36:13,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:36:13,962.962 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:36:14,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:36:14,062.062 INFO    ] No camera update needed
[2026-06-22 00:36:14,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:36:14,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:36:14,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:36:14,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:36:16,120.120 INFO    ] ================================================
[2026-06-22 00:36:16,137.137 INFO    ] Launching Daemon at Mon Jun 22 00:36:16 IST 2026
[2026-06-22 00:36:16,147.147 INFO    ] ================================================
[2026-06-22 00:36:16,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:36:16
[2026-06-22 00:36:17,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:36:17,539.539 INFO    ] Initializing speech engine...
[2026-06-22 00:36:17,548.548 INFO    ] 2026-06-22 00:36:17
[2026-06-22 00:36:17,810.810 INFO    ] 2026-06-22 00:36:17
[2026-06-22 00:36:17,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:36:18,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:36:18,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:36:18,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:36:18,289.289 INFO    ] time= 22/06/2026 00:36:18
[2026-06-22 00:36:18,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:36:18,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:36:18,433.433 INFO    ] No existing commands found in stream
[2026-06-22 00:36:23,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:36:23,448.448 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-22 00:36:27,725.725 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:36:27,728.728 INFO    ] Checking for system updates...
[2026-06-22 00:36:27,770.770 INFO    ] 200
[2026-06-22 00:36:27,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:36:27,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:36:27,842.842 INFO    ] No update needed
[2026-06-22 00:36:27,845.845 INFO    ] Checking for camera pi updates...
[2026-06-22 00:36:27,908.908 INFO    ] 200
[2026-06-22 00:36:27,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:36:27,963.963 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:36:28,053.053 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:36:28,056.056 INFO    ] No camera update needed
[2026-06-22 00:36:28,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:36:28,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:36:28,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:36:28,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:36:30,117.117 INFO    ] ================================================
[2026-06-22 00:36:30,133.133 INFO    ] Launching Daemon at Mon Jun 22 00:36:30 IST 2026
[2026-06-22 00:36:30,145.145 INFO    ] ================================================
[2026-06-22 00:36:30,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:36:30
[2026-06-22 00:36:31,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:36:31,726.726 INFO    ] Initializing speech engine...
[2026-06-22 00:36:31,735.735 INFO    ] 2026-06-22 00:36:31
[2026-06-22 00:36:32,045.045 INFO    ] 2026-06-22 00:36:32
[2026-06-22 00:36:32,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:36:32,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:36:32,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:36:32,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:36:32,606.606 INFO    ] time= 22/06/2026 00:36:32
[2026-06-22 00:36:32,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:36:32,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:36:32,758.758 INFO    ] No existing commands found in stream
[2026-06-22 00:36:37,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:36:37,788.788 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-22 00:36:42,071.071 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:36:42,074.074 INFO    ] Checking for system updates...
[2026-06-22 00:36:42,111.111 INFO    ] 200
[2026-06-22 00:36:42,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:36:42,170.170 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:36:42,173.173 INFO    ] No update needed
[2026-06-22 00:36:42,176.176 INFO    ] Checking for camera pi updates...
[2026-06-22 00:36:42,210.210 INFO    ] 200
[2026-06-22 00:36:42,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:36:42,254.254 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:36:42,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:36:42,341.341 INFO    ] No camera update needed
[2026-06-22 00:36:42,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:36:42,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:36:42,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:36:42,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:36:44,397.397 INFO    ] ================================================
[2026-06-22 00:36:44,413.413 INFO    ] Launching Daemon at Mon Jun 22 00:36:44 IST 2026
[2026-06-22 00:36:44,424.424 INFO    ] ================================================
[2026-06-22 00:36:44,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:36:44
[2026-06-22 00:36:45,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:36:45,834.834 INFO    ] Initializing speech engine...
[2026-06-22 00:36:45,844.844 INFO    ] 2026-06-22 00:36:45
[2026-06-22 00:36:46,107.107 INFO    ] 2026-06-22 00:36:46
[2026-06-22 00:36:46,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:36:46,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:36:46,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:36:46,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:36:46,507.507 INFO    ] time= 22/06/2026 00:36:46
[2026-06-22 00:36:46,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:36:46,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:36:46,700.700 INFO    ] No existing commands found in stream
[2026-06-22 00:36:51,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:36:51,718.718 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-22 00:36:53,382.382 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:36:53,385.385 INFO    ] Checking for system updates...
[2026-06-22 00:36:53,426.426 INFO    ] 200
[2026-06-22 00:36:53,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:36:53,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:36:53,484.484 INFO    ] No update needed
[2026-06-22 00:36:53,487.487 INFO    ] Checking for camera pi updates...
[2026-06-22 00:36:53,521.521 INFO    ] 200
[2026-06-22 00:36:53,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:36:53,571.571 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:36:53,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:36:53,658.658 INFO    ] No camera update needed
[2026-06-22 00:36:53,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:36:53,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:36:53,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:36:53,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:36:55,716.716 INFO    ] ================================================
[2026-06-22 00:36:55,732.732 INFO    ] Launching Daemon at Mon Jun 22 00:36:55 IST 2026
[2026-06-22 00:36:55,743.743 INFO    ] ================================================
[2026-06-22 00:36:56,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:36:56
[2026-06-22 00:36:56,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:36:57,123.123 INFO    ] Initializing speech engine...
[2026-06-22 00:36:57,132.132 INFO    ] 2026-06-22 00:36:57
[2026-06-22 00:36:57,395.395 INFO    ] 2026-06-22 00:36:57
[2026-06-22 00:36:57,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:36:57,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:36:57,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:36:57,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:36:57,861.861 INFO    ] time= 22/06/2026 00:36:57
[2026-06-22 00:36:57,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:36:57,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:36:58,007.007 INFO    ] No existing commands found in stream
[2026-06-22 00:37:03,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:37:03,026.026 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-22 00:37:03,446.446 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:37:03,449.449 INFO    ] Checking for system updates...
[2026-06-22 00:37:03,495.495 INFO    ] 200
[2026-06-22 00:37:03,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:37:03,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:37:03,554.554 INFO    ] No update needed
[2026-06-22 00:37:03,557.557 INFO    ] Checking for camera pi updates...
[2026-06-22 00:37:03,593.593 INFO    ] 200
[2026-06-22 00:37:03,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:37:03,652.652 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:37:03,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:37:03,731.731 INFO    ] No camera update needed
[2026-06-22 00:37:03,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:37:03,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:37:03,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:37:03,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:37:05,789.789 INFO    ] ================================================
[2026-06-22 00:37:05,805.805 INFO    ] Launching Daemon at Mon Jun 22 00:37:05 IST 2026
[2026-06-22 00:37:05,816.816 INFO    ] ================================================
[2026-06-22 00:37:06,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:37:06
[2026-06-22 00:37:07,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:37:07,373.373 INFO    ] Initializing speech engine...
[2026-06-22 00:37:07,384.384 INFO    ] 2026-06-22 00:37:07
[2026-06-22 00:37:07,672.672 INFO    ] 2026-06-22 00:37:07
[2026-06-22 00:37:07,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:37:07,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:37:08,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:37:08,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:37:08,203.203 INFO    ] time= 22/06/2026 00:37:08
[2026-06-22 00:37:08,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:37:08,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:37:08,341.341 INFO    ] No existing commands found in stream
[2026-06-22 00:37:13,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:37:13,369.369 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-22 00:37:16,625.625 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:37:16,629.629 INFO    ] Checking for system updates...
[2026-06-22 00:37:16,667.667 INFO    ] 200
[2026-06-22 00:37:16,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:37:16,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:37:16,728.728 INFO    ] No update needed
[2026-06-22 00:37:16,731.731 INFO    ] Checking for camera pi updates...
[2026-06-22 00:37:16,767.767 INFO    ] 200
[2026-06-22 00:37:16,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:37:16,826.826 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:37:16,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:37:16,906.906 INFO    ] No camera update needed
[2026-06-22 00:37:16,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:37:16,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:37:16,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:37:16,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:37:18,967.967 INFO    ] ================================================
[2026-06-22 00:37:18,983.983 INFO    ] Launching Daemon at Mon Jun 22 00:37:18 IST 2026
[2026-06-22 00:37:19,994.994 INFO    ] ================================================
[2026-06-22 00:37:19,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:37:19
[2026-06-22 00:37:20,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:37:20,450.450 INFO    ] Initializing speech engine...
[2026-06-22 00:37:20,457.457 INFO    ] 2026-06-22 00:37:20
[2026-06-22 00:37:20,717.717 INFO    ] 2026-06-22 00:37:20
[2026-06-22 00:37:20,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:37:20,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:37:21,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:37:21,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:37:21,156.156 INFO    ] time= 22/06/2026 00:37:21
[2026-06-22 00:37:21,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:37:21,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:37:21,396.396 INFO    ] No existing commands found in stream
[2026-06-22 00:37:26,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:37:26,425.425 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-22 00:37:29,907.907 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:37:29,910.910 INFO    ] Checking for system updates...
[2026-06-22 00:37:29,946.946 INFO    ] 200
[2026-06-22 00:37:29,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:37:30,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:37:30,003.003 INFO    ] No update needed
[2026-06-22 00:37:30,006.006 INFO    ] Checking for camera pi updates...
[2026-06-22 00:37:30,053.053 INFO    ] 200
[2026-06-22 00:37:30,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:37:30,098.098 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:37:30,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:37:30,200.200 INFO    ] No camera update needed
[2026-06-22 00:37:30,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:37:30,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:37:30,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:37:30,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:37:32,263.263 INFO    ] ================================================
[2026-06-22 00:37:32,280.280 INFO    ] Launching Daemon at Mon Jun 22 00:37:32 IST 2026
[2026-06-22 00:37:32,295.295 INFO    ] ================================================
[2026-06-22 00:37:32,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:37:32
[2026-06-22 00:37:33,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:37:33,717.717 INFO    ] Initializing speech engine...
[2026-06-22 00:37:33,723.723 INFO    ] 2026-06-22 00:37:33
[2026-06-22 00:37:34,015.015 INFO    ] 2026-06-22 00:37:33
[2026-06-22 00:37:34,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:37:34,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:37:34,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:37:34,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:37:34,417.417 INFO    ] time= 22/06/2026 00:37:34
[2026-06-22 00:37:34,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:37:34,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:37:34,548.548 INFO    ] No existing commands found in stream
[2026-06-22 00:37:39,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:37:39,563.563 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-22 00:37:41,915.915 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:37:41,918.918 INFO    ] Checking for system updates...
[2026-06-22 00:37:41,953.953 INFO    ] 200
[2026-06-22 00:37:41,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:37:42,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:37:42,011.011 INFO    ] No update needed
[2026-06-22 00:37:42,013.013 INFO    ] Checking for camera pi updates...
[2026-06-22 00:37:42,048.048 INFO    ] 200
[2026-06-22 00:37:42,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:37:42,091.091 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:37:42,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:37:42,180.180 INFO    ] No camera update needed
[2026-06-22 00:37:42,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:37:42,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:37:42,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:37:42,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:37:44,236.236 INFO    ] ================================================
[2026-06-22 00:37:44,251.251 INFO    ] Launching Daemon at Mon Jun 22 00:37:44 IST 2026
[2026-06-22 00:37:44,262.262 INFO    ] ================================================
[2026-06-22 00:37:44,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:37:44
[2026-06-22 00:37:45,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:37:45,632.632 INFO    ] Initializing speech engine...
[2026-06-22 00:37:45,648.648 INFO    ] 2026-06-22 00:37:45
[2026-06-22 00:37:45,936.936 INFO    ] 2026-06-22 00:37:45
[2026-06-22 00:37:45,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:37:46,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:37:46,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:37:46,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:37:46,326.326 INFO    ] time= 22/06/2026 00:37:46
[2026-06-22 00:37:46,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:37:46,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:37:46,442.442 INFO    ] No existing commands found in stream
[2026-06-22 00:37:51,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:37:51,456.456 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-22 00:37:53,768.768 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:37:53,769.769 INFO    ] Checking for system updates...
[2026-06-22 00:37:53,799.799 INFO    ] 200
[2026-06-22 00:37:53,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:37:53,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:37:53,858.858 INFO    ] No update needed
[2026-06-22 00:37:53,861.861 INFO    ] Checking for camera pi updates...
[2026-06-22 00:37:53,895.895 INFO    ] 200
[2026-06-22 00:37:53,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:37:53,939.939 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:37:54,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:37:54,125.125 INFO    ] No camera update needed
[2026-06-22 00:37:54,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:37:54,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:37:54,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:37:54,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:37:56,181.181 INFO    ] ================================================
[2026-06-22 00:37:56,199.199 INFO    ] Launching Daemon at Mon Jun 22 00:37:56 IST 2026
[2026-06-22 00:37:56,211.211 INFO    ] ================================================
[2026-06-22 00:37:56,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:37:56
[2026-06-22 00:37:57,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:37:57,746.746 INFO    ] Initializing speech engine...
[2026-06-22 00:37:57,755.755 INFO    ] 2026-06-22 00:37:57
[2026-06-22 00:37:58,005.005 INFO    ] 2026-06-22 00:37:57
[2026-06-22 00:37:58,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:37:58,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:37:58,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:37:58,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:37:58,436.436 INFO    ] time= 22/06/2026 00:37:58
[2026-06-22 00:37:58,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:37:58,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:37:58,621.621 INFO    ] No existing commands found in stream
[2026-06-22 00:38:03,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:38:03,655.655 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-22 00:38:06,337.337 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:38:06,340.340 INFO    ] Checking for system updates...
[2026-06-22 00:38:06,377.377 INFO    ] 200
[2026-06-22 00:38:06,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:38:06,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:38:06,440.440 INFO    ] No update needed
[2026-06-22 00:38:06,443.443 INFO    ] Checking for camera pi updates...
[2026-06-22 00:38:06,480.480 INFO    ] 200
[2026-06-22 00:38:06,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:38:06,528.528 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:38:06,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:38:06,613.613 INFO    ] No camera update needed
[2026-06-22 00:38:06,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:38:06,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:38:06,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:38:06,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:38:08,671.671 INFO    ] ================================================
[2026-06-22 00:38:08,686.686 INFO    ] Launching Daemon at Mon Jun 22 00:38:08 IST 2026
[2026-06-22 00:38:08,697.697 INFO    ] ================================================
[2026-06-22 00:38:09,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:38:09
[2026-06-22 00:38:09,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:38:10,122.122 INFO    ] Initializing speech engine...
[2026-06-22 00:38:10,131.131 INFO    ] 2026-06-22 00:38:10
[2026-06-22 00:38:10,379.379 INFO    ] 2026-06-22 00:38:10
[2026-06-22 00:38:10,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:38:10,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:38:10,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:38:10,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:38:10,874.874 INFO    ] time= 22/06/2026 00:38:10
[2026-06-22 00:38:10,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:38:10,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:38:11,076.076 INFO    ] No existing commands found in stream
[2026-06-22 00:38:16,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:38:16,104.104 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-22 00:38:16,530.530 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:38:16,532.532 INFO    ] Checking for system updates...
[2026-06-22 00:38:16,569.569 INFO    ] 200
[2026-06-22 00:38:16,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:38:16,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:38:16,631.631 INFO    ] No update needed
[2026-06-22 00:38:16,633.633 INFO    ] Checking for camera pi updates...
[2026-06-22 00:38:16,667.667 INFO    ] 200
[2026-06-22 00:38:16,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:38:16,718.718 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:38:16,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:38:16,803.803 INFO    ] No camera update needed
[2026-06-22 00:38:16,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:38:16,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:38:16,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:38:16,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:38:18,859.859 INFO    ] ================================================
[2026-06-22 00:38:18,875.875 INFO    ] Launching Daemon at Mon Jun 22 00:38:18 IST 2026
[2026-06-22 00:38:18,886.886 INFO    ] ================================================
[2026-06-22 00:38:19,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:38:19
[2026-06-22 00:38:19,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:38:20,208.208 INFO    ] Initializing speech engine...
[2026-06-22 00:38:20,231.231 INFO    ] 2026-06-22 00:38:20
[2026-06-22 00:38:20,484.484 INFO    ] 2026-06-22 00:38:20
[2026-06-22 00:38:20,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:38:23,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:38:23,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:38:23,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:38:23,879.879 INFO    ] time= 22/06/2026 00:38:23
[2026-06-22 00:38:23,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:38:23,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:38:23,934.934 INFO    ] No existing commands found in stream
[2026-06-22 00:38:28,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:38:28,946.946 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-22 00:38:32,916.916 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:38:32,918.918 INFO    ] Checking for system updates...
[2026-06-22 00:38:32,955.955 INFO    ] 200
[2026-06-22 00:38:32,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:38:33,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:38:33,013.013 INFO    ] No update needed
[2026-06-22 00:38:33,016.016 INFO    ] Checking for camera pi updates...
[2026-06-22 00:38:33,051.051 INFO    ] 200
[2026-06-22 00:38:33,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:38:33,098.098 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:38:33,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:38:33,189.189 INFO    ] No camera update needed
[2026-06-22 00:38:33,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:38:33,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:38:33,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:38:33,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:38:35,247.247 INFO    ] ================================================
[2026-06-22 00:38:35,262.262 INFO    ] Launching Daemon at Mon Jun 22 00:38:35 IST 2026
[2026-06-22 00:38:35,273.273 INFO    ] ================================================
[2026-06-22 00:38:35,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:38:35
[2026-06-22 00:38:36,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:38:36,712.712 INFO    ] Initializing speech engine...
[2026-06-22 00:38:36,718.718 INFO    ] 2026-06-22 00:38:36
[2026-06-22 00:38:36,962.962 INFO    ] 2026-06-22 00:38:36
[2026-06-22 00:38:37,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:38:37,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:38:37,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:38:37,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:38:37,461.461 INFO    ] time= 22/06/2026 00:38:37
[2026-06-22 00:38:37,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:38:37,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:38:37,651.651 INFO    ] No existing commands found in stream
[2026-06-22 00:38:42,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:38:42,686.686 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-22 00:38:45,889.889 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:38:45,892.892 INFO    ] Checking for system updates...
[2026-06-22 00:38:45,928.928 INFO    ] 200
[2026-06-22 00:38:45,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:38:45,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:38:45,995.995 INFO    ] No update needed
[2026-06-22 00:38:45,998.998 INFO    ] Checking for camera pi updates...
[2026-06-22 00:38:46,035.035 INFO    ] 200
[2026-06-22 00:38:46,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:38:46,083.083 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:38:46,186.186 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:38:46,188.188 INFO    ] No camera update needed
[2026-06-22 00:38:46,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:38:46,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:38:46,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:38:46,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:38:48,243.243 INFO    ] ================================================
[2026-06-22 00:38:48,258.258 INFO    ] Launching Daemon at Mon Jun 22 00:38:48 IST 2026
[2026-06-22 00:38:48,269.269 INFO    ] ================================================
[2026-06-22 00:38:48,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:38:48
[2026-06-22 00:38:49,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:38:49,770.770 INFO    ] Initializing speech engine...
[2026-06-22 00:38:49,784.784 INFO    ] 2026-06-22 00:38:49
[2026-06-22 00:38:50,049.049 INFO    ] 2026-06-22 00:38:50
[2026-06-22 00:38:50,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:38:50,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:38:50,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:38:50,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:38:50,527.527 INFO    ] time= 22/06/2026 00:38:50
[2026-06-22 00:38:50,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:38:50,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:38:50,729.729 INFO    ] No existing commands found in stream
[2026-06-22 00:38:55,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:38:55,763.763 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-22 00:38:56,910.910 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:38:56,913.913 INFO    ] Checking for system updates...
[2026-06-22 00:38:56,955.955 INFO    ] 200
[2026-06-22 00:38:56,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:38:57,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:38:57,022.022 INFO    ] No update needed
[2026-06-22 00:38:57,026.026 INFO    ] Checking for camera pi updates...
[2026-06-22 00:38:57,063.063 INFO    ] 200
[2026-06-22 00:38:57,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:38:57,107.107 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:38:57,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:38:57,218.218 INFO    ] No camera update needed
[2026-06-22 00:38:57,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:38:57,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:38:57,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:38:57,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:38:59,273.273 INFO    ] ================================================
[2026-06-22 00:38:59,289.289 INFO    ] Launching Daemon at Mon Jun 22 00:38:59 IST 2026
[2026-06-22 00:38:59,300.300 INFO    ] ================================================
[2026-06-22 00:38:59,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:38:59
[2026-06-22 00:39:00,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:39:00,618.618 INFO    ] Initializing speech engine...
[2026-06-22 00:39:00,639.639 INFO    ] 2026-06-22 00:39:00
[2026-06-22 00:39:00,899.899 INFO    ] 2026-06-22 00:39:00
[2026-06-22 00:39:00,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:39:01,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:39:01,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:39:01,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:39:01,276.276 INFO    ] time= 22/06/2026 00:39:01
[2026-06-22 00:39:01,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:39:01,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:39:01,658.658 INFO    ] No existing commands found in stream
[2026-06-22 00:39:06,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:39:06,688.688 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-22 00:39:07,815.815 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:39:07,818.818 INFO    ] Checking for system updates...
[2026-06-22 00:39:07,859.859 INFO    ] 200
[2026-06-22 00:39:07,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:39:07,917.917 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:39:07,920.920 INFO    ] No update needed
[2026-06-22 00:39:07,922.922 INFO    ] Checking for camera pi updates...
[2026-06-22 00:39:07,961.961 INFO    ] 200
[2026-06-22 00:39:07,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:39:08,015.015 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:39:08,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:39:08,104.104 INFO    ] No camera update needed
[2026-06-22 00:39:08,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:39:08,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:39:08,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:39:08,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:39:10,160.160 INFO    ] ================================================
[2026-06-22 00:39:10,175.175 INFO    ] Launching Daemon at Mon Jun 22 00:39:10 IST 2026
[2026-06-22 00:39:10,186.186 INFO    ] ================================================
[2026-06-22 00:39:10,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:39:10
[2026-06-22 00:39:11,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:39:11,540.540 INFO    ] Initializing speech engine...
[2026-06-22 00:39:11,546.546 INFO    ] 2026-06-22 00:39:11
[2026-06-22 00:39:11,776.776 INFO    ] 2026-06-22 00:39:11
[2026-06-22 00:39:11,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:39:12,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:39:12,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:39:12,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:39:12,225.225 INFO    ] time= 22/06/2026 00:39:12
[2026-06-22 00:39:12,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:39:12,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:39:12,356.356 INFO    ] No existing commands found in stream
[2026-06-22 00:39:17,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:39:17,371.371 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-22 00:39:19,150.150 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:39:19,153.153 INFO    ] Checking for system updates...
[2026-06-22 00:39:19,197.197 INFO    ] 200
[2026-06-22 00:39:19,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:39:19,267.267 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:39:19,270.270 INFO    ] No update needed
[2026-06-22 00:39:19,273.273 INFO    ] Checking for camera pi updates...
[2026-06-22 00:39:19,307.307 INFO    ] 200
[2026-06-22 00:39:19,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:39:19,363.363 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:39:19,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:39:19,458.458 INFO    ] No camera update needed
[2026-06-22 00:39:19,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:39:19,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:39:19,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:39:19,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:39:21,522.522 INFO    ] ================================================
[2026-06-22 00:39:21,537.537 INFO    ] Launching Daemon at Mon Jun 22 00:39:21 IST 2026
[2026-06-22 00:39:21,548.548 INFO    ] ================================================
[2026-06-22 00:39:22,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:39:22
[2026-06-22 00:39:22,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:39:23,038.038 INFO    ] Initializing speech engine...
[2026-06-22 00:39:23,047.047 INFO    ] 2026-06-22 00:39:23
[2026-06-22 00:39:23,306.306 INFO    ] 2026-06-22 00:39:23
[2026-06-22 00:39:23,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:39:23,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:39:23,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:39:23,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:39:23,765.765 INFO    ] time= 22/06/2026 00:39:23
[2026-06-22 00:39:23,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:39:23,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:39:23,912.912 INFO    ] No existing commands found in stream
[2026-06-22 00:39:28,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:39:28,927.927 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-22 00:39:30,241.241 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:39:30,244.244 INFO    ] Checking for system updates...
[2026-06-22 00:39:30,287.287 INFO    ] 200
[2026-06-22 00:39:30,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:39:30,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:39:30,358.358 INFO    ] No update needed
[2026-06-22 00:39:30,361.361 INFO    ] Checking for camera pi updates...
[2026-06-22 00:39:30,397.397 INFO    ] 200
[2026-06-22 00:39:30,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:39:30,444.444 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:39:30,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:39:30,531.531 INFO    ] No camera update needed
[2026-06-22 00:39:30,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:39:30,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:39:30,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:39:30,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:39:32,590.590 INFO    ] ================================================
[2026-06-22 00:39:32,607.607 INFO    ] Launching Daemon at Mon Jun 22 00:39:32 IST 2026
[2026-06-22 00:39:32,618.618 INFO    ] ================================================
[2026-06-22 00:39:33,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:39:33
[2026-06-22 00:39:33,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:39:34,098.098 INFO    ] Initializing speech engine...
[2026-06-22 00:39:34,107.107 INFO    ] 2026-06-22 00:39:34
[2026-06-22 00:39:34,369.369 INFO    ] 2026-06-22 00:39:34
[2026-06-22 00:39:34,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:39:34,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:39:34,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:39:34,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:39:34,839.839 INFO    ] time= 22/06/2026 00:39:34
[2026-06-22 00:39:34,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:39:34,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:39:35,016.016 INFO    ] No existing commands found in stream
[2026-06-22 00:39:40,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:39:40,051.051 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-22 00:39:44,344.344 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:39:44,347.347 INFO    ] Checking for system updates...
[2026-06-22 00:39:44,388.388 INFO    ] 200
[2026-06-22 00:39:44,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:39:44,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:39:44,448.448 INFO    ] No update needed
[2026-06-22 00:39:44,451.451 INFO    ] Checking for camera pi updates...
[2026-06-22 00:39:44,490.490 INFO    ] 200
[2026-06-22 00:39:44,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:39:44,541.541 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:39:44,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:39:44,632.632 INFO    ] No camera update needed
[2026-06-22 00:39:44,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:39:44,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:39:44,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:39:44,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:39:46,688.688 INFO    ] ================================================
[2026-06-22 00:39:46,703.703 INFO    ] Launching Daemon at Mon Jun 22 00:39:46 IST 2026
[2026-06-22 00:39:46,713.713 INFO    ] ================================================
[2026-06-22 00:39:47,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:39:47
[2026-06-22 00:39:47,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:39:48,145.145 INFO    ] Initializing speech engine...
[2026-06-22 00:39:48,156.156 INFO    ] 2026-06-22 00:39:48
[2026-06-22 00:39:48,401.401 INFO    ] 2026-06-22 00:39:48
[2026-06-22 00:39:48,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:39:48,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:39:48,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:39:48,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:39:48,883.883 INFO    ] time= 22/06/2026 00:39:48
[2026-06-22 00:39:48,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:39:48,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:39:49,022.022 INFO    ] No existing commands found in stream
[2026-06-22 00:39:54,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:39:54,037.037 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-22 00:39:57,784.784 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:39:57,786.786 INFO    ] Checking for system updates...
[2026-06-22 00:39:57,823.823 INFO    ] 200
[2026-06-22 00:39:57,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:39:57,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:39:57,880.880 INFO    ] No update needed
[2026-06-22 00:39:57,882.882 INFO    ] Checking for camera pi updates...
[2026-06-22 00:39:57,901.901 INFO    ] 200
[2026-06-22 00:39:57,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:39:57,928.928 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:39:58,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:39:58,082.082 INFO    ] No camera update needed
[2026-06-22 00:39:58,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:39:58,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:39:58,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:39:58,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:40:00,141.141 INFO    ] ================================================
[2026-06-22 00:40:00,156.156 INFO    ] Launching Daemon at Mon Jun 22 00:40:00 IST 2026
[2026-06-22 00:40:00,167.167 INFO    ] ================================================
[2026-06-22 00:40:00,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:40:00
[2026-06-22 00:40:01,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:40:02,131.131 INFO    ] Initializing speech engine...
[2026-06-22 00:40:02,135.135 INFO    ] 2026-06-22 00:40:02
[2026-06-22 00:40:02,560.560 INFO    ] 2026-06-22 00:40:02
[2026-06-22 00:40:02,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:40:02,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:40:02,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:40:02,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:40:02,875.875 INFO    ] time= 22/06/2026 00:40:02
[2026-06-22 00:40:02,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:40:02,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:40:02,941.941 INFO    ] No existing commands found in stream
[2026-06-22 00:40:07,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:40:07,953.953 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-22 00:40:10,689.689 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:40:10,692.692 INFO    ] Checking for system updates...
[2026-06-22 00:40:10,731.731 INFO    ] 200
[2026-06-22 00:40:10,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:40:10,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:40:10,789.789 INFO    ] No update needed
[2026-06-22 00:40:10,791.791 INFO    ] Checking for camera pi updates...
[2026-06-22 00:40:10,826.826 INFO    ] 200
[2026-06-22 00:40:10,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:40:10,874.874 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:40:10,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:40:10,964.964 INFO    ] No camera update needed
[2026-06-22 00:40:10,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:40:10,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:40:10,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:40:10,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:40:13,020.020 INFO    ] ================================================
[2026-06-22 00:40:13,035.035 INFO    ] Launching Daemon at Mon Jun 22 00:40:13 IST 2026
[2026-06-22 00:40:13,046.046 INFO    ] ================================================
[2026-06-22 00:40:13,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:40:13
[2026-06-22 00:40:14,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:40:14,608.608 INFO    ] Initializing speech engine...
[2026-06-22 00:40:14,614.614 INFO    ] 2026-06-22 00:40:14
[2026-06-22 00:40:14,924.924 INFO    ] 2026-06-22 00:40:14
[2026-06-22 00:40:15,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:40:15,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:40:15,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:40:15,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:40:15,443.443 INFO    ] time= 22/06/2026 00:40:15
[2026-06-22 00:40:15,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:40:15,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:40:15,587.587 INFO    ] No existing commands found in stream
[2026-06-22 00:40:20,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:40:20,618.618 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-22 00:40:24,348.348 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:40:24,350.350 INFO    ] Checking for system updates...
[2026-06-22 00:40:24,371.371 INFO    ] 200
[2026-06-22 00:40:24,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:40:24,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:40:24,405.405 INFO    ] No update needed
[2026-06-22 00:40:24,406.406 INFO    ] Checking for camera pi updates...
[2026-06-22 00:40:24,435.435 INFO    ] 200
[2026-06-22 00:40:24,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:40:24,479.479 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:40:24,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:40:24,570.570 INFO    ] No camera update needed
[2026-06-22 00:40:24,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:40:24,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:40:24,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:40:24,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:40:26,625.625 INFO    ] ================================================
[2026-06-22 00:40:26,640.640 INFO    ] Launching Daemon at Mon Jun 22 00:40:26 IST 2026
[2026-06-22 00:40:26,651.651 INFO    ] ================================================
[2026-06-22 00:40:27,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:40:27
[2026-06-22 00:40:27,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:40:28,177.177 INFO    ] Initializing speech engine...
[2026-06-22 00:40:28,191.191 INFO    ] 2026-06-22 00:40:28
[2026-06-22 00:40:28,483.483 INFO    ] 2026-06-22 00:40:28
[2026-06-22 00:40:28,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:40:28,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:40:28,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:40:28,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:40:28,990.990 INFO    ] time= 22/06/2026 00:40:28
[2026-06-22 00:40:29,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:40:29,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:40:29,122.122 INFO    ] No existing commands found in stream
[2026-06-22 00:40:34,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:40:34,153.153 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-22 00:40:38,469.469 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:40:38,471.471 INFO    ] Checking for system updates...
[2026-06-22 00:40:38,494.494 INFO    ] 200
[2026-06-22 00:40:38,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:40:38,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:40:38,527.527 INFO    ] No update needed
[2026-06-22 00:40:38,529.529 INFO    ] Checking for camera pi updates...
[2026-06-22 00:40:38,555.555 INFO    ] 200
[2026-06-22 00:40:38,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:40:38,598.598 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:40:38,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:40:38,688.688 INFO    ] No camera update needed
[2026-06-22 00:40:38,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:40:38,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:40:38,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:40:38,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:40:40,745.745 INFO    ] ================================================
[2026-06-22 00:40:40,761.761 INFO    ] Launching Daemon at Mon Jun 22 00:40:40 IST 2026
[2026-06-22 00:40:40,771.771 INFO    ] ================================================
[2026-06-22 00:40:41,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:40:41
[2026-06-22 00:40:41,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:40:42,157.157 INFO    ] Initializing speech engine...
[2026-06-22 00:40:42,166.166 INFO    ] 2026-06-22 00:40:42
[2026-06-22 00:40:42,432.432 INFO    ] 2026-06-22 00:40:42
[2026-06-22 00:40:42,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:40:42,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:40:42,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:40:42,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:40:42,912.912 INFO    ] time= 22/06/2026 00:40:42
[2026-06-22 00:40:42,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:40:43,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:40:43,095.095 INFO    ] No existing commands found in stream
[2026-06-22 00:40:48,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:40:48,128.128 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-22 00:40:51,015.015 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:40:51,016.016 INFO    ] Checking for system updates...
[2026-06-22 00:40:51,037.037 INFO    ] 200
[2026-06-22 00:40:51,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:40:51,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:40:51,085.085 INFO    ] No update needed
[2026-06-22 00:40:51,087.087 INFO    ] Checking for camera pi updates...
[2026-06-22 00:40:51,124.124 INFO    ] 200
[2026-06-22 00:40:51,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:40:51,172.172 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:40:51,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:40:51,256.256 INFO    ] No camera update needed
[2026-06-22 00:40:51,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:40:51,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:40:51,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:40:51,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:40:53,310.310 INFO    ] ================================================
[2026-06-22 00:40:53,325.325 INFO    ] Launching Daemon at Mon Jun 22 00:40:53 IST 2026
[2026-06-22 00:40:53,339.339 INFO    ] ================================================
[2026-06-22 00:40:53,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:40:53
[2026-06-22 00:40:54,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:40:54,849.849 INFO    ] Initializing speech engine...
[2026-06-22 00:40:54,856.856 INFO    ] 2026-06-22 00:40:54
[2026-06-22 00:40:55,128.128 INFO    ] 2026-06-22 00:40:55
[2026-06-22 00:40:55,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:40:55,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:40:55,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:40:55,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:40:55,580.580 INFO    ] time= 22/06/2026 00:40:55
[2026-06-22 00:40:55,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:40:55,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:40:55,725.725 INFO    ] No existing commands found in stream
[2026-06-22 00:41:00,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:41:00,739.739 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-22 00:41:04,577.577 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:41:04,580.580 INFO    ] Checking for system updates...
[2026-06-22 00:41:04,617.617 INFO    ] 200
[2026-06-22 00:41:04,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:41:04,672.672 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:41:04,675.675 INFO    ] No update needed
[2026-06-22 00:41:04,677.677 INFO    ] Checking for camera pi updates...
[2026-06-22 00:41:04,714.714 INFO    ] 200
[2026-06-22 00:41:04,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:41:04,762.762 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:41:04,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:41:04,851.851 INFO    ] No camera update needed
[2026-06-22 00:41:04,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:41:04,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:41:04,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:41:04,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:41:06,907.907 INFO    ] ================================================
[2026-06-22 00:41:06,922.922 INFO    ] Launching Daemon at Mon Jun 22 00:41:06 IST 2026
[2026-06-22 00:41:06,933.933 INFO    ] ================================================
[2026-06-22 00:41:07,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:41:07
[2026-06-22 00:41:08,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:41:08,304.304 INFO    ] Initializing speech engine...
[2026-06-22 00:41:08,314.314 INFO    ] 2026-06-22 00:41:08
[2026-06-22 00:41:08,580.580 INFO    ] 2026-06-22 00:41:08
[2026-06-22 00:41:08,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:41:08,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:41:08,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:41:08,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:41:08,949.949 INFO    ] time= 22/06/2026 00:41:08
[2026-06-22 00:41:08,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:41:08,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:41:09,071.071 INFO    ] No existing commands found in stream
[2026-06-22 00:41:14,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:41:14,086.086 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-22 00:41:17,599.599 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:41:17,601.601 INFO    ] Checking for system updates...
[2026-06-22 00:41:17,638.638 INFO    ] 200
[2026-06-22 00:41:17,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:41:17,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:41:17,700.700 INFO    ] No update needed
[2026-06-22 00:41:17,702.702 INFO    ] Checking for camera pi updates...
[2026-06-22 00:41:17,736.736 INFO    ] 200
[2026-06-22 00:41:17,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:41:17,783.783 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:41:17,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:41:17,864.864 INFO    ] No camera update needed
[2026-06-22 00:41:17,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:41:17,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:41:17,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:41:17,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:41:19,920.920 INFO    ] ================================================
[2026-06-22 00:41:19,935.935 INFO    ] Launching Daemon at Mon Jun 22 00:41:19 IST 2026
[2026-06-22 00:41:19,946.946 INFO    ] ================================================
[2026-06-22 00:41:20,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:41:20
[2026-06-22 00:41:21,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:41:21,330.330 INFO    ] Initializing speech engine...
[2026-06-22 00:41:21,343.343 INFO    ] 2026-06-22 00:41:21
[2026-06-22 00:41:21,612.612 INFO    ] 2026-06-22 00:41:21
[2026-06-22 00:41:21,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:41:21,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:41:21,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:41:22,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:41:22,079.079 INFO    ] time= 22/06/2026 00:41:22
[2026-06-22 00:41:22,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:41:22,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:41:22,239.239 INFO    ] No existing commands found in stream
[2026-06-22 00:41:27,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:41:27,254.254 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-22 00:41:28,233.233 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:41:28,236.236 INFO    ] Checking for system updates...
[2026-06-22 00:41:28,273.273 INFO    ] 200
[2026-06-22 00:41:28,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:41:28,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:41:28,336.336 INFO    ] No update needed
[2026-06-22 00:41:28,338.338 INFO    ] Checking for camera pi updates...
[2026-06-22 00:41:28,375.375 INFO    ] 200
[2026-06-22 00:41:28,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:41:28,425.425 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:41:28,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:41:28,488.488 INFO    ] No camera update needed
[2026-06-22 00:41:28,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:41:28,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:41:28,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:41:28,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:41:30,544.544 INFO    ] ================================================
[2026-06-22 00:41:30,559.559 INFO    ] Launching Daemon at Mon Jun 22 00:41:30 IST 2026
[2026-06-22 00:41:30,570.570 INFO    ] ================================================
[2026-06-22 00:41:31,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:41:31
[2026-06-22 00:41:31,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:41:32,017.017 INFO    ] Initializing speech engine...
[2026-06-22 00:41:32,025.025 INFO    ] 2026-06-22 00:41:32
[2026-06-22 00:41:32,310.310 INFO    ] 2026-06-22 00:41:32
[2026-06-22 00:41:32,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:41:32,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:41:32,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:41:32,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:41:32,709.709 INFO    ] time= 22/06/2026 00:41:32
[2026-06-22 00:41:32,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:41:32,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:41:32,839.839 INFO    ] No existing commands found in stream
[2026-06-22 00:41:37,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:41:37,854.854 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-22 00:41:40,133.133 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:41:40,136.136 INFO    ] Checking for system updates...
[2026-06-22 00:41:40,176.176 INFO    ] 200
[2026-06-22 00:41:40,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:41:40,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:41:40,234.234 INFO    ] No update needed
[2026-06-22 00:41:40,236.236 INFO    ] Checking for camera pi updates...
[2026-06-22 00:41:40,272.272 INFO    ] 200
[2026-06-22 00:41:40,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:41:40,320.320 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:41:40,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:41:40,407.407 INFO    ] No camera update needed
[2026-06-22 00:41:40,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:41:40,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:41:40,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:41:40,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:41:42,465.465 INFO    ] ================================================
[2026-06-22 00:41:42,481.481 INFO    ] Launching Daemon at Mon Jun 22 00:41:42 IST 2026
[2026-06-22 00:41:42,492.492 INFO    ] ================================================
[2026-06-22 00:41:43,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:41:43
[2026-06-22 00:41:43,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:41:44,077.077 INFO    ] Initializing speech engine...
[2026-06-22 00:41:44,085.085 INFO    ] 2026-06-22 00:41:44
[2026-06-22 00:41:44,355.355 INFO    ] 2026-06-22 00:41:44
[2026-06-22 00:41:44,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:41:44,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:41:44,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:41:44,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:41:44,816.816 INFO    ] time= 22/06/2026 00:41:44
[2026-06-22 00:41:44,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:41:44,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:41:44,968.968 INFO    ] No existing commands found in stream
[2026-06-22 00:41:49,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:41:49,989.989 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-22 00:41:52,970.970 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:41:52,972.972 INFO    ] Checking for system updates...
[2026-06-22 00:41:53,007.007 INFO    ] 200
[2026-06-22 00:41:53,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:41:53,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:41:53,041.041 INFO    ] No update needed
[2026-06-22 00:41:53,042.042 INFO    ] Checking for camera pi updates...
[2026-06-22 00:41:53,062.062 INFO    ] 200
[2026-06-22 00:41:53,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:41:53,087.087 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:41:53,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:41:53,181.181 INFO    ] No camera update needed
[2026-06-22 00:41:53,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:41:53,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:41:53,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:41:53,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:41:55,237.237 INFO    ] ================================================
[2026-06-22 00:41:55,252.252 INFO    ] Launching Daemon at Mon Jun 22 00:41:55 IST 2026
[2026-06-22 00:41:55,263.263 INFO    ] ================================================
[2026-06-22 00:41:55,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:41:55
[2026-06-22 00:41:56,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:41:56,596.596 INFO    ] Initializing speech engine...
[2026-06-22 00:41:56,615.615 INFO    ] 2026-06-22 00:41:56
[2026-06-22 00:41:56,867.867 INFO    ] 2026-06-22 00:41:56
[2026-06-22 00:41:56,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:41:57,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:41:57,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:41:57,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:41:57,249.249 INFO    ] time= 22/06/2026 00:41:57
[2026-06-22 00:41:57,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:41:57,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:41:57,394.394 INFO    ] No existing commands found in stream
[2026-06-22 00:42:02,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:42:02,433.433 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-22 00:42:06,234.234 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:42:06,237.237 INFO    ] Checking for system updates...
[2026-06-22 00:42:06,278.278 INFO    ] 200
[2026-06-22 00:42:06,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:42:06,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:42:06,344.344 INFO    ] No update needed
[2026-06-22 00:42:06,347.347 INFO    ] Checking for camera pi updates...
[2026-06-22 00:42:06,385.385 INFO    ] 200
[2026-06-22 00:42:06,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:42:06,429.429 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:42:06,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:42:06,526.526 INFO    ] No camera update needed
[2026-06-22 00:42:06,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:42:06,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:42:06,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:42:06,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:42:08,583.583 INFO    ] ================================================
[2026-06-22 00:42:08,599.599 INFO    ] Launching Daemon at Mon Jun 22 00:42:08 IST 2026
[2026-06-22 00:42:08,611.611 INFO    ] ================================================
[2026-06-22 00:42:09,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:42:09
[2026-06-22 00:42:09,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:42:09,951.951 INFO    ] Initializing speech engine...
[2026-06-22 00:42:09,957.957 INFO    ] 2026-06-22 00:42:09
[2026-06-22 00:42:10,201.201 INFO    ] 2026-06-22 00:42:10
[2026-06-22 00:42:10,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:42:10,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:42:10,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:42:10,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:42:10,569.569 INFO    ] time= 22/06/2026 00:42:10
[2026-06-22 00:42:10,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:42:10,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:42:10,739.739 INFO    ] No existing commands found in stream
[2026-06-22 00:42:15,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:42:15,772.772 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-22 00:42:18,656.656 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:42:18,657.657 INFO    ] Checking for system updates...
[2026-06-22 00:42:18,678.678 INFO    ] 200
[2026-06-22 00:42:18,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:42:18,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:42:18,711.711 INFO    ] No update needed
[2026-06-22 00:42:18,713.713 INFO    ] Checking for camera pi updates...
[2026-06-22 00:42:18,735.735 INFO    ] 200
[2026-06-22 00:42:18,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:42:18,783.783 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:42:18,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:42:18,934.934 INFO    ] No camera update needed
[2026-06-22 00:42:18,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:42:18,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:42:18,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:42:18,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:42:20,990.990 INFO    ] ================================================
[2026-06-22 00:42:21,005.005 INFO    ] Launching Daemon at Mon Jun 22 00:42:20 IST 2026
[2026-06-22 00:42:21,016.016 INFO    ] ================================================
[2026-06-22 00:42:21,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:42:21
[2026-06-22 00:42:22,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:42:22,393.393 INFO    ] Initializing speech engine...
[2026-06-22 00:42:22,413.413 INFO    ] 2026-06-22 00:42:22
[2026-06-22 00:42:22,676.676 INFO    ] 2026-06-22 00:42:22
[2026-06-22 00:42:22,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:42:22,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:42:22,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:42:23,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:42:23,051.051 INFO    ] time= 22/06/2026 00:42:23
[2026-06-22 00:42:23,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:42:23,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:42:23,215.215 INFO    ] No existing commands found in stream
[2026-06-22 00:42:28,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:42:28,248.248 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-22 00:42:30,662.662 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:42:30,664.664 INFO    ] Checking for system updates...
[2026-06-22 00:42:30,701.701 INFO    ] 200
[2026-06-22 00:42:30,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:42:30,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:42:30,760.760 INFO    ] No update needed
[2026-06-22 00:42:30,762.762 INFO    ] Checking for camera pi updates...
[2026-06-22 00:42:30,796.796 INFO    ] 200
[2026-06-22 00:42:30,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:42:30,844.844 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:42:30,914.914 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:42:30,916.916 INFO    ] No camera update needed
[2026-06-22 00:42:30,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:42:30,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:42:30,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:42:30,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:42:32,976.976 INFO    ] ================================================
[2026-06-22 00:42:32,993.993 INFO    ] Launching Daemon at Mon Jun 22 00:42:32 IST 2026
[2026-06-22 00:42:33,007.007 INFO    ] ================================================
[2026-06-22 00:42:33,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:42:33
[2026-06-22 00:42:34,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:42:34,446.446 INFO    ] Initializing speech engine...
[2026-06-22 00:42:34,454.454 INFO    ] 2026-06-22 00:42:34
[2026-06-22 00:42:34,714.714 INFO    ] 2026-06-22 00:42:34
[2026-06-22 00:42:34,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:42:34,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:42:34,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:42:35,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:42:35,072.072 INFO    ] time= 22/06/2026 00:42:35
[2026-06-22 00:42:35,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:42:35,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:42:35,174.174 INFO    ] No existing commands found in stream
[2026-06-22 00:42:40,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:42:40,187.187 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-22 00:42:41,455.455 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:42:41,458.458 INFO    ] Checking for system updates...
[2026-06-22 00:42:41,494.494 INFO    ] 200
[2026-06-22 00:42:41,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:42:41,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:42:41,558.558 INFO    ] No update needed
[2026-06-22 00:42:41,561.561 INFO    ] Checking for camera pi updates...
[2026-06-22 00:42:41,599.599 INFO    ] 200
[2026-06-22 00:42:41,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:42:41,648.648 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:42:41,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:42:41,730.730 INFO    ] No camera update needed
[2026-06-22 00:42:41,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:42:41,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:42:41,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:42:41,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:42:43,785.785 INFO    ] ================================================
[2026-06-22 00:42:43,800.800 INFO    ] Launching Daemon at Mon Jun 22 00:42:43 IST 2026
[2026-06-22 00:42:43,811.811 INFO    ] ================================================
[2026-06-22 00:42:44,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:42:44
[2026-06-22 00:42:44,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:42:45,124.124 INFO    ] Initializing speech engine...
[2026-06-22 00:42:45,130.130 INFO    ] 2026-06-22 00:42:45
[2026-06-22 00:42:45,434.434 INFO    ] 2026-06-22 00:42:45
[2026-06-22 00:42:45,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:42:45,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:42:45,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:42:45,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:42:45,801.801 INFO    ] time= 22/06/2026 00:42:45
[2026-06-22 00:42:45,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:42:45,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:42:45,899.899 INFO    ] No existing commands found in stream
[2026-06-22 00:42:50,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:42:50,913.913 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-22 00:42:55,018.018 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:42:55,021.021 INFO    ] Checking for system updates...
[2026-06-22 00:42:55,061.061 INFO    ] 200
[2026-06-22 00:42:55,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:42:55,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:42:55,120.120 INFO    ] No update needed
[2026-06-22 00:42:55,123.123 INFO    ] Checking for camera pi updates...
[2026-06-22 00:42:55,157.157 INFO    ] 200
[2026-06-22 00:42:55,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:42:55,206.206 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:42:55,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:42:55,297.297 INFO    ] No camera update needed
[2026-06-22 00:42:55,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:42:55,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:42:55,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:42:55,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:42:57,353.353 INFO    ] ================================================
[2026-06-22 00:42:57,368.368 INFO    ] Launching Daemon at Mon Jun 22 00:42:57 IST 2026
[2026-06-22 00:42:57,379.379 INFO    ] ================================================
[2026-06-22 00:42:57,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:42:57
[2026-06-22 00:42:58,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:42:58,786.786 INFO    ] Initializing speech engine...
[2026-06-22 00:42:58,800.800 INFO    ] 2026-06-22 00:42:58
[2026-06-22 00:42:59,067.067 INFO    ] 2026-06-22 00:42:59
[2026-06-22 00:42:59,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:42:59,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:42:59,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:42:59,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:42:59,446.446 INFO    ] time= 22/06/2026 00:42:59
[2026-06-22 00:42:59,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:42:59,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:42:59,620.620 INFO    ] No existing commands found in stream
[2026-06-22 00:43:04,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:43:04,649.649 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-22 00:43:08,993.993 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:43:08,996.996 INFO    ] Checking for system updates...
[2026-06-22 00:43:09,036.036 INFO    ] 200
[2026-06-22 00:43:09,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:43:09,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:43:09,095.095 INFO    ] No update needed
[2026-06-22 00:43:09,098.098 INFO    ] Checking for camera pi updates...
[2026-06-22 00:43:09,132.132 INFO    ] 200
[2026-06-22 00:43:09,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:43:09,181.181 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:43:09,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:43:09,235.235 INFO    ] No camera update needed
[2026-06-22 00:43:09,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:43:09,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:43:09,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:43:09,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:43:11,290.290 INFO    ] ================================================
[2026-06-22 00:43:11,305.305 INFO    ] Launching Daemon at Mon Jun 22 00:43:11 IST 2026
[2026-06-22 00:43:11,316.316 INFO    ] ================================================
[2026-06-22 00:43:11,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:43:11
[2026-06-22 00:43:12,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:43:12,785.785 INFO    ] Initializing speech engine...
[2026-06-22 00:43:12,792.792 INFO    ] 2026-06-22 00:43:12
[2026-06-22 00:43:13,052.052 INFO    ] 2026-06-22 00:43:13
[2026-06-22 00:43:13,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:43:13,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:43:13,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:43:13,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:43:13,513.513 INFO    ] time= 22/06/2026 00:43:13
[2026-06-22 00:43:13,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:43:13,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:43:13,662.662 INFO    ] No existing commands found in stream
[2026-06-22 00:43:18,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:43:18,677.677 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-22 00:43:21,448.448 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:43:21,450.450 INFO    ] Checking for system updates...
[2026-06-22 00:43:21,472.472 INFO    ] 200
[2026-06-22 00:43:21,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:43:21,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:43:21,521.521 INFO    ] No update needed
[2026-06-22 00:43:21,524.524 INFO    ] Checking for camera pi updates...
[2026-06-22 00:43:21,562.562 INFO    ] 200
[2026-06-22 00:43:21,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:43:21,606.606 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:43:21,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:43:21,692.692 INFO    ] No camera update needed
[2026-06-22 00:43:21,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:43:21,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:43:21,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:43:21,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:43:23,748.748 INFO    ] ================================================
[2026-06-22 00:43:23,763.763 INFO    ] Launching Daemon at Mon Jun 22 00:43:23 IST 2026
[2026-06-22 00:43:23,774.774 INFO    ] ================================================
[2026-06-22 00:43:24,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:43:24
[2026-06-22 00:43:25,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:43:25,266.266 INFO    ] Initializing speech engine...
[2026-06-22 00:43:25,279.279 INFO    ] 2026-06-22 00:43:25
[2026-06-22 00:43:25,546.546 INFO    ] 2026-06-22 00:43:25
[2026-06-22 00:43:25,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:43:25,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:43:25,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:43:25,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:43:25,923.923 INFO    ] time= 22/06/2026 00:43:25
[2026-06-22 00:43:25,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:43:25,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:43:26,001.001 INFO    ] No existing commands found in stream
[2026-06-22 00:43:31,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:43:31,016.016 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-22 00:43:35,055.055 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:43:35,057.057 INFO    ] Checking for system updates...
[2026-06-22 00:43:35,079.079 INFO    ] 200
[2026-06-22 00:43:35,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:43:35,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:43:35,122.122 INFO    ] No update needed
[2026-06-22 00:43:35,125.125 INFO    ] Checking for camera pi updates...
[2026-06-22 00:43:35,160.160 INFO    ] 200
[2026-06-22 00:43:35,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:43:35,206.206 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:43:35,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:43:35,269.269 INFO    ] No camera update needed
[2026-06-22 00:43:35,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:43:35,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:43:35,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:43:35,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:43:37,330.330 INFO    ] ================================================
[2026-06-22 00:43:37,345.345 INFO    ] Launching Daemon at Mon Jun 22 00:43:37 IST 2026
[2026-06-22 00:43:37,355.355 INFO    ] ================================================
[2026-06-22 00:43:37,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:43:37
[2026-06-22 00:43:38,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:43:38,680.680 INFO    ] Initializing speech engine...
[2026-06-22 00:43:38,696.696 INFO    ] 2026-06-22 00:43:38
[2026-06-22 00:43:38,952.952 INFO    ] 2026-06-22 00:43:38
[2026-06-22 00:43:38,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:43:39,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:43:39,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:43:39,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:43:39,438.438 INFO    ] time= 22/06/2026 00:43:39
[2026-06-22 00:43:39,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:43:39,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:43:39,579.579 INFO    ] No existing commands found in stream
[2026-06-22 00:43:44,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:43:44,593.593 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-22 00:43:45,585.585 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:43:45,587.587 INFO    ] Checking for system updates...
[2026-06-22 00:43:45,608.608 INFO    ] 200
[2026-06-22 00:43:45,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:43:45,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:43:45,676.676 INFO    ] No update needed
[2026-06-22 00:43:45,679.679 INFO    ] Checking for camera pi updates...
[2026-06-22 00:43:45,715.715 INFO    ] 200
[2026-06-22 00:43:45,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:43:45,761.761 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:43:45,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:43:45,845.845 INFO    ] No camera update needed
[2026-06-22 00:43:45,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:43:45,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:43:45,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:43:45,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:43:47,905.905 INFO    ] ================================================
[2026-06-22 00:43:47,925.925 INFO    ] Launching Daemon at Mon Jun 22 00:43:47 IST 2026
[2026-06-22 00:43:47,936.936 INFO    ] ================================================
[2026-06-22 00:43:48,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:43:48
[2026-06-22 00:43:49,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:43:49,391.391 INFO    ] Initializing speech engine...
[2026-06-22 00:43:49,402.402 INFO    ] 2026-06-22 00:43:49
[2026-06-22 00:43:49,664.664 INFO    ] 2026-06-22 00:43:49
[2026-06-22 00:43:49,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:43:49,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:43:49,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:43:50,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:43:50,024.024 INFO    ] time= 22/06/2026 00:43:50
[2026-06-22 00:43:50,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:43:50,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:43:50,201.201 INFO    ] No existing commands found in stream
[2026-06-22 00:43:55,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:43:55,234.234 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-22 00:43:58,830.830 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:43:58,832.832 INFO    ] Checking for system updates...
[2026-06-22 00:43:58,873.873 INFO    ] 200
[2026-06-22 00:43:58,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:43:58,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:43:58,938.938 INFO    ] No update needed
[2026-06-22 00:43:58,940.940 INFO    ] Checking for camera pi updates...
[2026-06-22 00:43:58,978.978 INFO    ] 200
[2026-06-22 00:43:58,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:43:59,027.027 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:43:59,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:43:59,125.125 INFO    ] No camera update needed
[2026-06-22 00:43:59,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:43:59,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:43:59,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:43:59,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:44:01,181.181 INFO    ] ================================================
[2026-06-22 00:44:01,196.196 INFO    ] Launching Daemon at Mon Jun 22 00:44:01 IST 2026
[2026-06-22 00:44:01,207.207 INFO    ] ================================================
[2026-06-22 00:44:01,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:44:01
[2026-06-22 00:44:02,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:44:02,982.982 INFO    ] Initializing speech engine...
[2026-06-22 00:44:03,005.005 INFO    ] 2026-06-22 00:44:02
[2026-06-22 00:44:03,326.326 INFO    ] 2026-06-22 00:44:03
[2026-06-22 00:44:03,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:44:03,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:44:03,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:44:03,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:44:03,683.683 INFO    ] time= 22/06/2026 00:44:03
[2026-06-22 00:44:03,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:44:03,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:44:03,785.785 INFO    ] No existing commands found in stream
[2026-06-22 00:44:08,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:44:08,818.818 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-22 00:44:12,981.981 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:44:12,983.983 INFO    ] Checking for system updates...
[2026-06-22 00:44:13,036.036 INFO    ] 200
[2026-06-22 00:44:13,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:44:13,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:44:13,099.099 INFO    ] No update needed
[2026-06-22 00:44:13,102.102 INFO    ] Checking for camera pi updates...
[2026-06-22 00:44:13,136.136 INFO    ] 200
[2026-06-22 00:44:13,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:44:13,180.180 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:44:13,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:44:13,286.286 INFO    ] No camera update needed
[2026-06-22 00:44:13,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:44:13,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:44:13,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:44:13,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:44:15,342.342 INFO    ] ================================================
[2026-06-22 00:44:15,357.357 INFO    ] Launching Daemon at Mon Jun 22 00:44:15 IST 2026
[2026-06-22 00:44:15,368.368 INFO    ] ================================================
[2026-06-22 00:44:16,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:44:15
[2026-06-22 00:44:16,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:44:16,897.897 INFO    ] Initializing speech engine...
[2026-06-22 00:44:16,909.909 INFO    ] 2026-06-22 00:44:16
[2026-06-22 00:44:17,189.189 INFO    ] 2026-06-22 00:44:17
[2026-06-22 00:44:17,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:44:17,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:44:17,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:44:17,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:44:17,655.655 INFO    ] time= 22/06/2026 00:44:17
[2026-06-22 00:44:17,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:44:17,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:44:17,856.856 INFO    ] No existing commands found in stream
[2026-06-22 00:44:22,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:44:22,890.890 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-22 00:44:25,501.501 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:44:25,503.503 INFO    ] Checking for system updates...
[2026-06-22 00:44:25,525.525 INFO    ] 200
[2026-06-22 00:44:25,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:44:25,560.560 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:44:25,562.562 INFO    ] No update needed
[2026-06-22 00:44:25,564.564 INFO    ] Checking for camera pi updates...
[2026-06-22 00:44:25,606.606 INFO    ] 200
[2026-06-22 00:44:25,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:44:25,656.656 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:44:25,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:44:25,838.838 INFO    ] No camera update needed
[2026-06-22 00:44:25,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:44:25,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:44:25,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:44:25,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:44:27,899.899 INFO    ] ================================================
[2026-06-22 00:44:27,914.914 INFO    ] Launching Daemon at Mon Jun 22 00:44:27 IST 2026
[2026-06-22 00:44:27,924.924 INFO    ] ================================================
[2026-06-22 00:44:28,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:44:28
[2026-06-22 00:44:29,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:44:29,260.260 INFO    ] Initializing speech engine...
[2026-06-22 00:44:29,276.276 INFO    ] 2026-06-22 00:44:29
[2026-06-22 00:44:29,563.563 INFO    ] 2026-06-22 00:44:29
[2026-06-22 00:44:29,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:44:29,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:44:29,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:44:29,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:44:29,920.920 INFO    ] time= 22/06/2026 00:44:29
[2026-06-22 00:44:29,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:44:29,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:44:29,999.999 INFO    ] No existing commands found in stream
[2026-06-22 00:44:35,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:44:35,014.014 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-22 00:44:37,671.671 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:44:37,673.673 INFO    ] Checking for system updates...
[2026-06-22 00:44:37,693.693 INFO    ] 200
[2026-06-22 00:44:37,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:44:37,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:44:37,729.729 INFO    ] No update needed
[2026-06-22 00:44:37,730.730 INFO    ] Checking for camera pi updates...
[2026-06-22 00:44:37,749.749 INFO    ] 200
[2026-06-22 00:44:37,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:44:37,776.776 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:44:37,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:44:37,873.873 INFO    ] No camera update needed
[2026-06-22 00:44:37,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:44:37,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:44:37,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:44:37,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:44:39,929.929 INFO    ] ================================================
[2026-06-22 00:44:39,945.945 INFO    ] Launching Daemon at Mon Jun 22 00:44:39 IST 2026
[2026-06-22 00:44:39,956.956 INFO    ] ================================================
[2026-06-22 00:44:40,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:44:40
[2026-06-22 00:44:41,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:44:41,422.422 INFO    ] Initializing speech engine...
[2026-06-22 00:44:41,435.435 INFO    ] 2026-06-22 00:44:41
[2026-06-22 00:44:41,714.714 INFO    ] 2026-06-22 00:44:41
[2026-06-22 00:44:41,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:44:41,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:44:41,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:44:42,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:44:42,185.185 INFO    ] time= 22/06/2026 00:44:42
[2026-06-22 00:44:42,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:44:42,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:44:42,381.381 INFO    ] No existing commands found in stream
[2026-06-22 00:44:47,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:44:47,415.415 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-22 00:44:51,779.779 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:44:51,780.780 INFO    ] Checking for system updates...
[2026-06-22 00:44:51,806.806 INFO    ] 200
[2026-06-22 00:44:51,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:44:51,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:44:51,867.867 INFO    ] No update needed
[2026-06-22 00:44:51,870.870 INFO    ] Checking for camera pi updates...
[2026-06-22 00:44:51,906.906 INFO    ] 200
[2026-06-22 00:44:51,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:44:51,952.952 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:44:52,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:44:52,036.036 INFO    ] No camera update needed
[2026-06-22 00:44:52,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:44:52,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:44:52,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:44:52,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:44:54,095.095 INFO    ] ================================================
[2026-06-22 00:44:54,110.110 INFO    ] Launching Daemon at Mon Jun 22 00:44:54 IST 2026
[2026-06-22 00:44:54,121.121 INFO    ] ================================================
[2026-06-22 00:44:54,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:44:54
[2026-06-22 00:44:55,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:44:55,442.442 INFO    ] Initializing speech engine...
[2026-06-22 00:44:55,450.450 INFO    ] 2026-06-22 00:44:55
[2026-06-22 00:44:55,747.747 INFO    ] 2026-06-22 00:44:55
[2026-06-22 00:44:55,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:44:55,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:44:55,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:44:56,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:44:56,103.103 INFO    ] time= 22/06/2026 00:44:56
[2026-06-22 00:44:56,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:44:56,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:44:56,180.180 INFO    ] No existing commands found in stream
[2026-06-22 00:45:01,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:45:01,195.195 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-22 00:45:02,298.298 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:45:02,301.301 INFO    ] Checking for system updates...
[2026-06-22 00:45:02,354.354 INFO    ] 200
[2026-06-22 00:45:02,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:45:02,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:45:02,435.435 INFO    ] No update needed
[2026-06-22 00:45:02,438.438 INFO    ] Checking for camera pi updates...
[2026-06-22 00:45:02,479.479 INFO    ] 200
[2026-06-22 00:45:02,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:45:02,547.547 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:45:02,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:45:02,628.628 INFO    ] No camera update needed
[2026-06-22 00:45:02,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:45:02,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:45:02,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:45:02,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:45:04,693.693 INFO    ] ================================================
[2026-06-22 00:45:04,709.709 INFO    ] Launching Daemon at Mon Jun 22 00:45:04 IST 2026
[2026-06-22 00:45:04,719.719 INFO    ] ================================================
[2026-06-22 00:45:05,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:45:05
[2026-06-22 00:45:05,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:45:06,127.127 INFO    ] Initializing speech engine...
[2026-06-22 00:45:06,136.136 INFO    ] 2026-06-22 00:45:06
[2026-06-22 00:45:06,430.430 INFO    ] 2026-06-22 00:45:06
[2026-06-22 00:45:06,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:45:06,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:45:06,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:45:06,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:45:06,734.734 INFO    ] time= 22/06/2026 00:45:06
[2026-06-22 00:45:06,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:45:06,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:45:06,849.849 INFO    ] No existing commands found in stream
[2026-06-22 00:45:11,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:45:11,867.867 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-22 00:45:13,732.732 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:45:13,736.736 INFO    ] Checking for system updates...
[2026-06-22 00:45:13,773.773 INFO    ] 200
[2026-06-22 00:45:13,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:45:13,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:45:13,834.834 INFO    ] No update needed
[2026-06-22 00:45:13,837.837 INFO    ] Checking for camera pi updates...
[2026-06-22 00:45:13,872.872 INFO    ] 200
[2026-06-22 00:45:13,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:45:13,923.923 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:45:14,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:45:14,014.014 INFO    ] No camera update needed
[2026-06-22 00:45:14,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:45:14,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:45:14,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:45:14,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:45:16,075.075 INFO    ] ================================================
[2026-06-22 00:45:16,090.090 INFO    ] Launching Daemon at Mon Jun 22 00:45:16 IST 2026
[2026-06-22 00:45:16,101.101 INFO    ] ================================================
[2026-06-22 00:45:16,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:45:16
[2026-06-22 00:45:17,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:45:17,421.421 INFO    ] Initializing speech engine...
[2026-06-22 00:45:17,430.430 INFO    ] 2026-06-22 00:45:17
[2026-06-22 00:45:17,712.712 INFO    ] 2026-06-22 00:45:17
[2026-06-22 00:45:17,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:45:18,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:45:18,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:45:18,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:45:18,191.191 INFO    ] time= 22/06/2026 00:45:18
[2026-06-22 00:45:18,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:45:18,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:45:18,341.341 INFO    ] No existing commands found in stream
[2026-06-22 00:45:23,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:45:23,399.399 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-22 00:45:24,128.128 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:45:24,130.130 INFO    ] Checking for system updates...
[2026-06-22 00:45:24,151.151 INFO    ] 200
[2026-06-22 00:45:24,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:45:24,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:45:24,185.185 INFO    ] No update needed
[2026-06-22 00:45:24,188.188 INFO    ] Checking for camera pi updates...
[2026-06-22 00:45:24,223.223 INFO    ] 200
[2026-06-22 00:45:24,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:45:24,268.268 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:45:24,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:45:24,355.355 INFO    ] No camera update needed
[2026-06-22 00:45:24,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:45:24,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:45:24,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:45:24,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:45:26,415.415 INFO    ] ================================================
[2026-06-22 00:45:26,431.431 INFO    ] Launching Daemon at Mon Jun 22 00:45:26 IST 2026
[2026-06-22 00:45:26,442.442 INFO    ] ================================================
[2026-06-22 00:45:27,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:45:27
[2026-06-22 00:45:27,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:45:27,868.868 INFO    ] Initializing speech engine...
[2026-06-22 00:45:27,877.877 INFO    ] 2026-06-22 00:45:27
[2026-06-22 00:45:28,123.123 INFO    ] 2026-06-22 00:45:28
[2026-06-22 00:45:28,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:45:28,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:45:28,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:45:28,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:45:28,567.567 INFO    ] time= 22/06/2026 00:45:28
[2026-06-22 00:45:28,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:45:28,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:45:28,751.751 INFO    ] No existing commands found in stream
[2026-06-22 00:45:33,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:45:33,766.766 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-22 00:45:37,398.398 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:45:37,400.400 INFO    ] Checking for system updates...
[2026-06-22 00:45:37,421.421 INFO    ] 200
[2026-06-22 00:45:37,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:45:37,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:45:37,454.454 INFO    ] No update needed
[2026-06-22 00:45:37,455.455 INFO    ] Checking for camera pi updates...
[2026-06-22 00:45:37,474.474 INFO    ] 200
[2026-06-22 00:45:37,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:45:37,499.499 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:45:37,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:45:37,600.600 INFO    ] No camera update needed
[2026-06-22 00:45:37,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:45:37,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:45:37,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:45:37,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:45:39,657.657 INFO    ] ================================================
[2026-06-22 00:45:39,672.672 INFO    ] Launching Daemon at Mon Jun 22 00:45:39 IST 2026
[2026-06-22 00:45:39,683.683 INFO    ] ================================================
[2026-06-22 00:45:40,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:45:40
[2026-06-22 00:45:40,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:45:41,115.115 INFO    ] Initializing speech engine...
[2026-06-22 00:45:41,130.130 INFO    ] 2026-06-22 00:45:41
[2026-06-22 00:45:41,417.417 INFO    ] 2026-06-22 00:45:41
[2026-06-22 00:45:41,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:45:41,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:45:41,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:45:41,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:45:41,831.831 INFO    ] time= 22/06/2026 00:45:41
[2026-06-22 00:45:41,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:45:41,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:45:41,915.915 INFO    ] No existing commands found in stream
[2026-06-22 00:45:46,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:45:46,930.930 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-22 00:45:48,473.473 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:45:48,475.475 INFO    ] Checking for system updates...
[2026-06-22 00:45:48,496.496 INFO    ] 200
[2026-06-22 00:45:48,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:45:48,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:45:48,560.560 INFO    ] No update needed
[2026-06-22 00:45:48,562.562 INFO    ] Checking for camera pi updates...
[2026-06-22 00:45:48,596.596 INFO    ] 200
[2026-06-22 00:45:48,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:45:48,639.639 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:45:48,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:45:48,722.722 INFO    ] No camera update needed
[2026-06-22 00:45:48,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:45:48,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:45:48,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:45:48,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:45:50,779.779 INFO    ] ================================================
[2026-06-22 00:45:50,794.794 INFO    ] Launching Daemon at Mon Jun 22 00:45:50 IST 2026
[2026-06-22 00:45:50,804.804 INFO    ] ================================================
[2026-06-22 00:45:51,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:45:51
[2026-06-22 00:45:51,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:45:52,240.240 INFO    ] Initializing speech engine...
[2026-06-22 00:45:52,250.250 INFO    ] 2026-06-22 00:45:52
[2026-06-22 00:45:52,496.496 INFO    ] 2026-06-22 00:45:52
[2026-06-22 00:45:52,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:45:52,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:45:52,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:45:52,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:45:52,967.967 INFO    ] time= 22/06/2026 00:45:52
[2026-06-22 00:45:53,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:45:53,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:45:53,113.113 INFO    ] No existing commands found in stream
[2026-06-22 00:45:58,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:45:58,128.128 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-22 00:45:58,488.488 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:45:58,490.490 INFO    ] Checking for system updates...
[2026-06-22 00:45:58,510.510 INFO    ] 200
[2026-06-22 00:45:58,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:45:58,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:45:58,546.546 INFO    ] No update needed
[2026-06-22 00:45:58,547.547 INFO    ] Checking for camera pi updates...
[2026-06-22 00:45:58,574.574 INFO    ] 200
[2026-06-22 00:45:58,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:45:58,610.610 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:45:58,715.715 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:45:58,718.718 INFO    ] No camera update needed
[2026-06-22 00:45:58,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:45:58,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:45:58,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:45:58,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:46:00,778.778 INFO    ] ================================================
[2026-06-22 00:46:00,794.794 INFO    ] Launching Daemon at Mon Jun 22 00:46:00 IST 2026
[2026-06-22 00:46:00,805.805 INFO    ] ================================================
[2026-06-22 00:46:01,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:46:01
[2026-06-22 00:46:01,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:46:02,524.524 INFO    ] Initializing speech engine...
[2026-06-22 00:46:02,548.548 INFO    ] 2026-06-22 00:46:02
[2026-06-22 00:46:02,935.935 INFO    ] 2026-06-22 00:46:02
[2026-06-22 00:46:02,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:46:03,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:46:03,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:46:03,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:46:03,394.394 INFO    ] time= 22/06/2026 00:46:03
[2026-06-22 00:46:03,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:46:03,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:46:03,571.571 INFO    ] No existing commands found in stream
[2026-06-22 00:46:08,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:46:08,602.602 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-22 00:46:12,279.279 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:46:12,281.281 INFO    ] Checking for system updates...
[2026-06-22 00:46:12,301.301 INFO    ] 200
[2026-06-22 00:46:12,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:46:12,352.352 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:46:12,355.355 INFO    ] No update needed
[2026-06-22 00:46:12,357.357 INFO    ] Checking for camera pi updates...
[2026-06-22 00:46:12,391.391 INFO    ] 200
[2026-06-22 00:46:12,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:46:12,436.436 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:46:12,532.532 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:46:12,535.535 INFO    ] No camera update needed
[2026-06-22 00:46:12,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:46:12,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:46:12,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:46:12,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:46:14,590.590 INFO    ] ================================================
[2026-06-22 00:46:14,605.605 INFO    ] Launching Daemon at Mon Jun 22 00:46:14 IST 2026
[2026-06-22 00:46:14,616.616 INFO    ] ================================================
[2026-06-22 00:46:15,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:46:15
[2026-06-22 00:46:15,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:46:15,978.978 INFO    ] Initializing speech engine...
[2026-06-22 00:46:15,987.987 INFO    ] 2026-06-22 00:46:15
[2026-06-22 00:46:16,246.246 INFO    ] 2026-06-22 00:46:16
[2026-06-22 00:46:16,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:46:16,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:46:16,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:46:16,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:46:16,679.679 INFO    ] time= 22/06/2026 00:46:16
[2026-06-22 00:46:16,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:46:16,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:46:16,847.847 INFO    ] No existing commands found in stream
[2026-06-22 00:46:21,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:46:21,861.861 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-22 00:46:25,106.106 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:46:25,108.108 INFO    ] Checking for system updates...
[2026-06-22 00:46:25,144.144 INFO    ] 200
[2026-06-22 00:46:25,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:46:25,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:46:25,201.201 INFO    ] No update needed
[2026-06-22 00:46:25,204.204 INFO    ] Checking for camera pi updates...
[2026-06-22 00:46:25,238.238 INFO    ] 200
[2026-06-22 00:46:25,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:46:25,282.282 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:46:25,355.355 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:46:25,358.358 INFO    ] No camera update needed
[2026-06-22 00:46:25,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:46:25,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:46:25,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:46:25,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:46:27,415.415 INFO    ] ================================================
[2026-06-22 00:46:27,430.430 INFO    ] Launching Daemon at Mon Jun 22 00:46:27 IST 2026
[2026-06-22 00:46:27,441.441 INFO    ] ================================================
[2026-06-22 00:46:28,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:46:28
[2026-06-22 00:46:28,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:46:28,886.886 INFO    ] Initializing speech engine...
[2026-06-22 00:46:28,898.898 INFO    ] 2026-06-22 00:46:28
[2026-06-22 00:46:29,150.150 INFO    ] 2026-06-22 00:46:29
[2026-06-22 00:46:29,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:46:29,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:46:29,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:46:29,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:46:29,526.526 INFO    ] time= 22/06/2026 00:46:29
[2026-06-22 00:46:29,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:46:29,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:46:29,694.694 INFO    ] No existing commands found in stream
[2026-06-22 00:46:34,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:46:34,732.732 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-22 00:46:35,462.462 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:46:35,465.465 INFO    ] Checking for system updates...
[2026-06-22 00:46:35,504.504 INFO    ] 200
[2026-06-22 00:46:35,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:46:35,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:46:35,562.562 INFO    ] No update needed
[2026-06-22 00:46:35,564.564 INFO    ] Checking for camera pi updates...
[2026-06-22 00:46:35,598.598 INFO    ] 200
[2026-06-22 00:46:35,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:46:35,640.640 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:46:35,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:46:35,698.698 INFO    ] No camera update needed
[2026-06-22 00:46:35,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:46:35,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:46:35,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:46:35,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:46:37,752.752 INFO    ] ================================================
[2026-06-22 00:46:37,767.767 INFO    ] Launching Daemon at Mon Jun 22 00:46:37 IST 2026
[2026-06-22 00:46:37,778.778 INFO    ] ================================================
[2026-06-22 00:46:38,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:46:38
[2026-06-22 00:46:38,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:46:39,229.229 INFO    ] Initializing speech engine...
[2026-06-22 00:46:39,239.239 INFO    ] 2026-06-22 00:46:39
[2026-06-22 00:46:39,509.509 INFO    ] 2026-06-22 00:46:39
[2026-06-22 00:46:39,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:46:39,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:46:39,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:46:39,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:46:39,983.983 INFO    ] time= 22/06/2026 00:46:39
[2026-06-22 00:46:40,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:46:40,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:46:40,187.187 INFO    ] No existing commands found in stream
[2026-06-22 00:46:45,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:46:45,218.218 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-22 00:46:46,922.922 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:46:46,924.924 INFO    ] Checking for system updates...
[2026-06-22 00:46:46,945.945 INFO    ] 200
[2026-06-22 00:46:46,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:46:46,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:46:46,978.978 INFO    ] No update needed
[2026-06-22 00:46:46,980.980 INFO    ] Checking for camera pi updates...
[2026-06-22 00:46:47,001.001 INFO    ] 200
[2026-06-22 00:46:47,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:46:47,032.032 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:46:47,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:46:47,122.122 INFO    ] No camera update needed
[2026-06-22 00:46:47,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:46:47,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:46:47,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:46:47,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:46:49,181.181 INFO    ] ================================================
[2026-06-22 00:46:49,196.196 INFO    ] Launching Daemon at Mon Jun 22 00:46:49 IST 2026
[2026-06-22 00:46:49,207.207 INFO    ] ================================================
[2026-06-22 00:46:49,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:46:49
[2026-06-22 00:46:50,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:46:50,544.544 INFO    ] Initializing speech engine...
[2026-06-22 00:46:50,559.559 INFO    ] 2026-06-22 00:46:50
[2026-06-22 00:46:50,830.830 INFO    ] 2026-06-22 00:46:50
[2026-06-22 00:46:50,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:46:51,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:46:51,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:46:51,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:46:51,193.193 INFO    ] time= 22/06/2026 00:46:51
[2026-06-22 00:46:51,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:46:51,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:46:51,314.314 INFO    ] No existing commands found in stream
[2026-06-22 00:46:56,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:46:56,329.329 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-22 00:47:00,442.442 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:47:00,443.443 INFO    ] Checking for system updates...
[2026-06-22 00:47:00,465.465 INFO    ] 200
[2026-06-22 00:47:00,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:47:00,496.496 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:47:00,498.498 INFO    ] No update needed
[2026-06-22 00:47:00,499.499 INFO    ] Checking for camera pi updates...
[2026-06-22 00:47:00,519.519 INFO    ] 200
[2026-06-22 00:47:00,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:47:00,547.547 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:47:00,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:47:00,658.658 INFO    ] No camera update needed
[2026-06-22 00:47:00,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:47:00,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:47:00,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:47:00,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:47:02,718.718 INFO    ] ================================================
[2026-06-22 00:47:02,736.736 INFO    ] Launching Daemon at Mon Jun 22 00:47:02 IST 2026
[2026-06-22 00:47:02,750.750 INFO    ] ================================================
[2026-06-22 00:47:03,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:47:03
[2026-06-22 00:47:03,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:47:04,241.241 INFO    ] Initializing speech engine...
[2026-06-22 00:47:04,249.249 INFO    ] 2026-06-22 00:47:04
[2026-06-22 00:47:04,523.523 INFO    ] 2026-06-22 00:47:04
[2026-06-22 00:47:04,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:47:04,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:47:04,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:47:04,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:47:04,901.901 INFO    ] time= 22/06/2026 00:47:04
[2026-06-22 00:47:04,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:47:04,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:47:05,073.073 INFO    ] No existing commands found in stream
[2026-06-22 00:47:10,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:47:10,100.100 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-22 00:47:12,399.399 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:47:12,402.402 INFO    ] Checking for system updates...
[2026-06-22 00:47:12,438.438 INFO    ] 200
[2026-06-22 00:47:12,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:47:12,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:47:12,495.495 INFO    ] No update needed
[2026-06-22 00:47:12,497.497 INFO    ] Checking for camera pi updates...
[2026-06-22 00:47:12,530.530 INFO    ] 200
[2026-06-22 00:47:12,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:47:12,576.576 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:47:12,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:47:12,688.688 INFO    ] No camera update needed
[2026-06-22 00:47:12,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:47:12,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:47:12,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:47:12,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:47:14,745.745 INFO    ] ================================================
[2026-06-22 00:47:14,759.759 INFO    ] Launching Daemon at Mon Jun 22 00:47:14 IST 2026
[2026-06-22 00:47:14,770.770 INFO    ] ================================================
[2026-06-22 00:47:15,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:47:15
[2026-06-22 00:47:15,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:47:16,197.197 INFO    ] Initializing speech engine...
[2026-06-22 00:47:16,202.202 INFO    ] 2026-06-22 00:47:16
[2026-06-22 00:47:16,461.461 INFO    ] 2026-06-22 00:47:16
[2026-06-22 00:47:16,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:47:16,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:47:16,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:47:16,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:47:16,901.901 INFO    ] time= 22/06/2026 00:47:16
[2026-06-22 00:47:16,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:47:16,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:47:17,033.033 INFO    ] No existing commands found in stream
[2026-06-22 00:47:22,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:47:22,049.049 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-22 00:47:23,744.744 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:47:23,746.746 INFO    ] Checking for system updates...
[2026-06-22 00:47:23,767.767 INFO    ] 200
[2026-06-22 00:47:23,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:47:23,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:47:23,801.801 INFO    ] No update needed
[2026-06-22 00:47:23,802.802 INFO    ] Checking for camera pi updates...
[2026-06-22 00:47:23,823.823 INFO    ] 200
[2026-06-22 00:47:23,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:47:23,849.849 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:47:23,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:47:23,931.931 INFO    ] No camera update needed
[2026-06-22 00:47:23,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:47:23,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:47:23,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:47:23,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:47:25,992.992 INFO    ] ================================================
[2026-06-22 00:47:26,007.007 INFO    ] Launching Daemon at Mon Jun 22 00:47:26 IST 2026
[2026-06-22 00:47:26,018.018 INFO    ] ================================================
[2026-06-22 00:47:26,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:47:26
[2026-06-22 00:47:27,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:47:27,337.337 INFO    ] Initializing speech engine...
[2026-06-22 00:47:27,360.360 INFO    ] 2026-06-22 00:47:27
[2026-06-22 00:47:27,618.618 INFO    ] 2026-06-22 00:47:27
[2026-06-22 00:47:27,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:47:27,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:47:27,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:47:27,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:47:27,999.999 INFO    ] time= 22/06/2026 00:47:27
[2026-06-22 00:47:28,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:47:28,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:47:28,168.168 INFO    ] No existing commands found in stream
[2026-06-22 00:47:33,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:47:33,207.207 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-22 00:47:37,111.111 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:47:37,114.114 INFO    ] Checking for system updates...
[2026-06-22 00:47:37,150.150 INFO    ] 200
[2026-06-22 00:47:37,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:47:37,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:47:37,209.209 INFO    ] No update needed
[2026-06-22 00:47:37,211.211 INFO    ] Checking for camera pi updates...
[2026-06-22 00:47:37,245.245 INFO    ] 200
[2026-06-22 00:47:37,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:47:37,293.293 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:47:37,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:47:37,381.381 INFO    ] No camera update needed
[2026-06-22 00:47:37,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:47:37,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:47:37,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:47:37,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:47:39,438.438 INFO    ] ================================================
[2026-06-22 00:47:39,454.454 INFO    ] Launching Daemon at Mon Jun 22 00:47:39 IST 2026
[2026-06-22 00:47:39,464.464 INFO    ] ================================================
[2026-06-22 00:47:40,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:47:40
[2026-06-22 00:47:40,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:47:40,897.897 INFO    ] Initializing speech engine...
[2026-06-22 00:47:40,906.906 INFO    ] 2026-06-22 00:47:40
[2026-06-22 00:47:41,156.156 INFO    ] 2026-06-22 00:47:41
[2026-06-22 00:47:41,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:47:41,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:47:41,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:47:41,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:47:41,533.533 INFO    ] time= 22/06/2026 00:47:41
[2026-06-22 00:47:41,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:47:41,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:47:41,688.688 INFO    ] No existing commands found in stream
[2026-06-22 00:47:46,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:47:46,716.716 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-22 00:47:47,966.966 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:47:47,967.967 INFO    ] Checking for system updates...
[2026-06-22 00:47:47,989.989 INFO    ] 200
[2026-06-22 00:47:47,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:47:48,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:47:48,021.021 INFO    ] No update needed
[2026-06-22 00:47:48,023.023 INFO    ] Checking for camera pi updates...
[2026-06-22 00:47:48,042.042 INFO    ] 200
[2026-06-22 00:47:48,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:47:48,070.070 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:47:48,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:47:48,176.176 INFO    ] No camera update needed
[2026-06-22 00:47:48,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:47:48,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:47:48,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:47:48,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:47:50,231.231 INFO    ] ================================================
[2026-06-22 00:47:50,246.246 INFO    ] Launching Daemon at Mon Jun 22 00:47:50 IST 2026
[2026-06-22 00:47:50,257.257 INFO    ] ================================================
[2026-06-22 00:47:50,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:47:50
[2026-06-22 00:47:51,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:47:51,698.698 INFO    ] Initializing speech engine...
[2026-06-22 00:47:51,707.707 INFO    ] 2026-06-22 00:47:51
[2026-06-22 00:47:51,968.968 INFO    ] 2026-06-22 00:47:51
[2026-06-22 00:47:52,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:47:52,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:47:52,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:47:52,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:47:52,378.378 INFO    ] time= 22/06/2026 00:47:52
[2026-06-22 00:47:52,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:47:52,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:47:52,505.505 INFO    ] No existing commands found in stream
[2026-06-22 00:47:57,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:47:57,520.520 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-22 00:47:58,263.263 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:47:58,266.266 INFO    ] Checking for system updates...
[2026-06-22 00:47:58,305.305 INFO    ] 200
[2026-06-22 00:47:58,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:47:58,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:47:58,361.361 INFO    ] No update needed
[2026-06-22 00:47:58,364.364 INFO    ] Checking for camera pi updates...
[2026-06-22 00:47:58,399.399 INFO    ] 200
[2026-06-22 00:47:58,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:47:58,443.443 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:47:58,541.541 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:47:58,544.544 INFO    ] No camera update needed
[2026-06-22 00:47:58,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:47:58,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:47:58,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:47:58,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:48:00,598.598 INFO    ] ================================================
[2026-06-22 00:48:00,613.613 INFO    ] Launching Daemon at Mon Jun 22 00:48:00 IST 2026
[2026-06-22 00:48:00,624.624 INFO    ] ================================================
[2026-06-22 00:48:01,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:48:01
[2026-06-22 00:48:01,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:48:02,127.127 INFO    ] Initializing speech engine...
[2026-06-22 00:48:02,138.138 INFO    ] 2026-06-22 00:48:02
[2026-06-22 00:48:02,533.533 INFO    ] 2026-06-22 00:48:02
[2026-06-22 00:48:02,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:48:02,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:48:02,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:48:02,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:48:02,893.893 INFO    ] time= 22/06/2026 00:48:02
[2026-06-22 00:48:02,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:48:02,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:48:03,040.040 INFO    ] No existing commands found in stream
[2026-06-22 00:48:08,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:48:08,068.068 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-22 00:48:11,600.600 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:48:11,602.602 INFO    ] Checking for system updates...
[2026-06-22 00:48:11,641.641 INFO    ] 200
[2026-06-22 00:48:11,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:48:11,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:48:11,701.701 INFO    ] No update needed
[2026-06-22 00:48:11,703.703 INFO    ] Checking for camera pi updates...
[2026-06-22 00:48:11,737.737 INFO    ] 200
[2026-06-22 00:48:11,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:48:11,780.780 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:48:11,878.878 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:48:11,881.881 INFO    ] No camera update needed
[2026-06-22 00:48:11,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:48:11,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:48:11,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:48:11,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:48:13,938.938 INFO    ] ================================================
[2026-06-22 00:48:13,953.953 INFO    ] Launching Daemon at Mon Jun 22 00:48:13 IST 2026
[2026-06-22 00:48:13,964.964 INFO    ] ================================================
[2026-06-22 00:48:14,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:48:14
[2026-06-22 00:48:15,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:48:15,408.408 INFO    ] Initializing speech engine...
[2026-06-22 00:48:15,427.427 INFO    ] 2026-06-22 00:48:15
[2026-06-22 00:48:15,687.687 INFO    ] 2026-06-22 00:48:15
[2026-06-22 00:48:15,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:48:15,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:48:15,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:48:16,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:48:16,065.065 INFO    ] time= 22/06/2026 00:48:16
[2026-06-22 00:48:16,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:48:16,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:48:16,214.214 INFO    ] No existing commands found in stream
[2026-06-22 00:48:21,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:48:21,247.247 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-22 00:48:25,176.176 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:48:25,178.178 INFO    ] Checking for system updates...
[2026-06-22 00:48:25,214.214 INFO    ] 200
[2026-06-22 00:48:25,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:48:25,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:48:25,287.287 INFO    ] No update needed
[2026-06-22 00:48:25,289.289 INFO    ] Checking for camera pi updates...
[2026-06-22 00:48:25,323.323 INFO    ] 200
[2026-06-22 00:48:25,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:48:25,366.366 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:48:25,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:48:25,468.468 INFO    ] No camera update needed
[2026-06-22 00:48:25,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:48:25,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:48:25,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:48:25,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:48:27,525.525 INFO    ] ================================================
[2026-06-22 00:48:27,541.541 INFO    ] Launching Daemon at Mon Jun 22 00:48:27 IST 2026
[2026-06-22 00:48:27,552.552 INFO    ] ================================================
[2026-06-22 00:48:28,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:48:28
[2026-06-22 00:48:28,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:48:28,916.916 INFO    ] Initializing speech engine...
[2026-06-22 00:48:28,926.926 INFO    ] 2026-06-22 00:48:28
[2026-06-22 00:48:29,173.173 INFO    ] 2026-06-22 00:48:29
[2026-06-22 00:48:29,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:48:29,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:48:29,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:48:29,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:48:29,650.650 INFO    ] time= 22/06/2026 00:48:29
[2026-06-22 00:48:29,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:48:29,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:48:29,794.794 INFO    ] No existing commands found in stream
[2026-06-22 00:48:34,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:48:34,809.809 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-22 00:48:38,079.079 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:48:38,080.080 INFO    ] Checking for system updates...
[2026-06-22 00:48:38,101.101 INFO    ] 200
[2026-06-22 00:48:38,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:48:38,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:48:38,158.158 INFO    ] No update needed
[2026-06-22 00:48:38,160.160 INFO    ] Checking for camera pi updates...
[2026-06-22 00:48:38,198.198 INFO    ] 200
[2026-06-22 00:48:38,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:48:38,241.241 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:48:38,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:48:38,399.399 INFO    ] No camera update needed
[2026-06-22 00:48:38,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:48:38,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:48:38,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:48:38,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:48:40,455.455 INFO    ] ================================================
[2026-06-22 00:48:40,470.470 INFO    ] Launching Daemon at Mon Jun 22 00:48:40 IST 2026
[2026-06-22 00:48:40,481.481 INFO    ] ================================================
[2026-06-22 00:48:41,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:48:41
[2026-06-22 00:48:41,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:48:41,819.819 INFO    ] Initializing speech engine...
[2026-06-22 00:48:41,829.829 INFO    ] 2026-06-22 00:48:41
[2026-06-22 00:48:42,086.086 INFO    ] 2026-06-22 00:48:42
[2026-06-22 00:48:42,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:48:42,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:48:42,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:48:42,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:48:42,537.537 INFO    ] time= 22/06/2026 00:48:42
[2026-06-22 00:48:42,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:48:42,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:48:42,697.697 INFO    ] No existing commands found in stream
[2026-06-22 00:48:47,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:48:47,711.711 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-22 00:48:49,997.997 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:48:50,000.000 INFO    ] Checking for system updates...
[2026-06-22 00:48:50,039.039 INFO    ] 200
[2026-06-22 00:48:50,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:48:50,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:48:50,097.097 INFO    ] No update needed
[2026-06-22 00:48:50,099.099 INFO    ] Checking for camera pi updates...
[2026-06-22 00:48:50,133.133 INFO    ] 200
[2026-06-22 00:48:50,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:48:50,177.177 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:48:50,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:48:50,265.265 INFO    ] No camera update needed
[2026-06-22 00:48:50,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:48:50,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:48:50,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:48:50,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:48:52,323.323 INFO    ] ================================================
[2026-06-22 00:48:52,338.338 INFO    ] Launching Daemon at Mon Jun 22 00:48:52 IST 2026
[2026-06-22 00:48:52,349.349 INFO    ] ================================================
[2026-06-22 00:48:52,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:48:52
[2026-06-22 00:48:53,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:48:53,684.684 INFO    ] Initializing speech engine...
[2026-06-22 00:48:53,690.690 INFO    ] 2026-06-22 00:48:53
[2026-06-22 00:48:53,934.934 INFO    ] 2026-06-22 00:48:53
[2026-06-22 00:48:53,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:48:54,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:48:54,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:48:54,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:48:54,298.298 INFO    ] time= 22/06/2026 00:48:54
[2026-06-22 00:48:54,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:48:54,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:48:54,378.378 INFO    ] No existing commands found in stream
[2026-06-22 00:48:59,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:48:59,397.397 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-22 00:49:00,161.161 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:49:00,163.163 INFO    ] Checking for system updates...
[2026-06-22 00:49:00,200.200 INFO    ] 200
[2026-06-22 00:49:00,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:49:00,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:49:00,266.266 INFO    ] No update needed
[2026-06-22 00:49:00,268.268 INFO    ] Checking for camera pi updates...
[2026-06-22 00:49:00,302.302 INFO    ] 200
[2026-06-22 00:49:00,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:49:00,351.351 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:49:00,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:49:00,434.434 INFO    ] No camera update needed
[2026-06-22 00:49:00,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:49:00,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:49:00,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:49:00,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:49:02,493.493 INFO    ] ================================================
[2026-06-22 00:49:02,510.510 INFO    ] Launching Daemon at Mon Jun 22 00:49:02 IST 2026
[2026-06-22 00:49:02,527.527 INFO    ] ================================================
[2026-06-22 00:49:03,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:49:03
[2026-06-22 00:49:03,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:49:04,024.024 INFO    ] Initializing speech engine...
[2026-06-22 00:49:04,031.031 INFO    ] 2026-06-22 00:49:04
[2026-06-22 00:49:04,321.321 INFO    ] 2026-06-22 00:49:04
[2026-06-22 00:49:04,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:49:04,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:49:04,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:49:04,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:49:04,647.647 INFO    ] time= 22/06/2026 00:49:04
[2026-06-22 00:49:04,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:49:04,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:49:04,782.782 INFO    ] No existing commands found in stream
[2026-06-22 00:49:09,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:49:09,796.796 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-22 00:49:10,622.622 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:49:10,624.624 INFO    ] Checking for system updates...
[2026-06-22 00:49:10,660.660 INFO    ] 200
[2026-06-22 00:49:10,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:49:10,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:49:10,723.723 INFO    ] No update needed
[2026-06-22 00:49:10,725.725 INFO    ] Checking for camera pi updates...
[2026-06-22 00:49:10,761.761 INFO    ] 200
[2026-06-22 00:49:10,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:49:10,807.807 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:49:10,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:49:10,889.889 INFO    ] No camera update needed
[2026-06-22 00:49:10,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:49:10,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:49:10,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:49:10,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:49:12,945.945 INFO    ] ================================================
[2026-06-22 00:49:12,960.960 INFO    ] Launching Daemon at Mon Jun 22 00:49:12 IST 2026
[2026-06-22 00:49:12,971.971 INFO    ] ================================================
[2026-06-22 00:49:13,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:49:13
[2026-06-22 00:49:14,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:49:14,398.398 INFO    ] Initializing speech engine...
[2026-06-22 00:49:14,407.407 INFO    ] 2026-06-22 00:49:14
[2026-06-22 00:49:14,660.660 INFO    ] 2026-06-22 00:49:14
[2026-06-22 00:49:14,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:49:14,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:49:14,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:49:15,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:49:15,167.167 INFO    ] time= 22/06/2026 00:49:15
[2026-06-22 00:49:15,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:49:15,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:49:15,347.347 INFO    ] No existing commands found in stream
[2026-06-22 00:49:20,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:49:20,380.380 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-22 00:49:24,266.266 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:49:24,267.267 INFO    ] Checking for system updates...
[2026-06-22 00:49:24,290.290 INFO    ] 200
[2026-06-22 00:49:24,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:49:24,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:49:24,332.332 INFO    ] No update needed
[2026-06-22 00:49:24,335.335 INFO    ] Checking for camera pi updates...
[2026-06-22 00:49:24,371.371 INFO    ] 200
[2026-06-22 00:49:24,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:49:24,417.417 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:49:24,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:49:24,498.498 INFO    ] No camera update needed
[2026-06-22 00:49:24,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:49:24,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:49:24,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:49:24,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:49:26,557.557 INFO    ] ================================================
[2026-06-22 00:49:26,572.572 INFO    ] Launching Daemon at Mon Jun 22 00:49:26 IST 2026
[2026-06-22 00:49:26,582.582 INFO    ] ================================================
[2026-06-22 00:49:27,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:49:27
[2026-06-22 00:49:27,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:49:27,892.892 INFO    ] Initializing speech engine...
[2026-06-22 00:49:27,913.913 INFO    ] 2026-06-22 00:49:27
[2026-06-22 00:49:28,169.169 INFO    ] 2026-06-22 00:49:28
[2026-06-22 00:49:28,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:49:28,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:49:28,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:49:28,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:49:28,537.537 INFO    ] time= 22/06/2026 00:49:28
[2026-06-22 00:49:28,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:49:28,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:49:28,688.688 INFO    ] No existing commands found in stream
[2026-06-22 00:49:33,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:49:33,716.716 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-22 00:49:36,317.317 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:49:36,318.318 INFO    ] Checking for system updates...
[2026-06-22 00:49:36,339.339 INFO    ] 200
[2026-06-22 00:49:36,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:49:36,372.372 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:49:36,374.374 INFO    ] No update needed
[2026-06-22 00:49:36,375.375 INFO    ] Checking for camera pi updates...
[2026-06-22 00:49:36,395.395 INFO    ] 200
[2026-06-22 00:49:36,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:49:36,421.421 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:49:36,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:49:36,512.512 INFO    ] No camera update needed
[2026-06-22 00:49:36,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:49:36,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:49:36,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:49:36,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:49:38,568.568 INFO    ] ================================================
[2026-06-22 00:49:38,583.583 INFO    ] Launching Daemon at Mon Jun 22 00:49:38 IST 2026
[2026-06-22 00:49:38,594.594 INFO    ] ================================================
[2026-06-22 00:49:39,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:49:39
[2026-06-22 00:49:39,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:49:40,011.011 INFO    ] Initializing speech engine...
[2026-06-22 00:49:40,019.019 INFO    ] 2026-06-22 00:49:40
[2026-06-22 00:49:40,301.301 INFO    ] 2026-06-22 00:49:40
[2026-06-22 00:49:40,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:49:40,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:49:40,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:49:40,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:49:40,785.785 INFO    ] time= 22/06/2026 00:49:40
[2026-06-22 00:49:40,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:49:40,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:49:40,975.975 INFO    ] No existing commands found in stream
[2026-06-22 00:49:46,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:49:46,003.003 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-22 00:49:48,665.665 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:49:48,666.666 INFO    ] Checking for system updates...
[2026-06-22 00:49:48,688.688 INFO    ] 200
[2026-06-22 00:49:48,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:49:48,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:49:48,721.721 INFO    ] No update needed
[2026-06-22 00:49:48,722.722 INFO    ] Checking for camera pi updates...
[2026-06-22 00:49:48,756.756 INFO    ] 200
[2026-06-22 00:49:48,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:49:48,804.804 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:49:48,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:49:48,898.898 INFO    ] No camera update needed
[2026-06-22 00:49:48,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:49:48,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:49:48,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:49:48,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:49:50,956.956 INFO    ] ================================================
[2026-06-22 00:49:50,971.971 INFO    ] Launching Daemon at Mon Jun 22 00:49:50 IST 2026
[2026-06-22 00:49:50,982.982 INFO    ] ================================================
[2026-06-22 00:49:51,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:49:51
[2026-06-22 00:49:52,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:49:52,474.474 INFO    ] Initializing speech engine...
[2026-06-22 00:49:52,484.484 INFO    ] 2026-06-22 00:49:52
[2026-06-22 00:49:52,753.753 INFO    ] 2026-06-22 00:49:52
[2026-06-22 00:49:52,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:49:53,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:49:53,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:49:53,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:49:53,243.243 INFO    ] time= 22/06/2026 00:49:53
[2026-06-22 00:49:53,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:49:53,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:49:53,438.438 INFO    ] No existing commands found in stream
[2026-06-22 00:49:58,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:49:58,472.472 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-22 00:50:02,544.544 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:50:02,558.558 INFO    ] Checking for system updates...
[2026-06-22 00:50:02,614.614 INFO    ] 200
[2026-06-22 00:50:02,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:50:02,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:50:02,704.704 INFO    ] No update needed
[2026-06-22 00:50:02,707.707 INFO    ] Checking for camera pi updates...
[2026-06-22 00:50:02,765.765 INFO    ] 200
[2026-06-22 00:50:02,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:50:02,836.836 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:50:02,899.899 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:50:02,902.902 INFO    ] No camera update needed
[2026-06-22 00:50:02,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:50:02,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:50:02,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:50:02,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:50:04,966.966 INFO    ] ================================================
[2026-06-22 00:50:04,981.981 INFO    ] Launching Daemon at Mon Jun 22 00:50:04 IST 2026
[2026-06-22 00:50:04,992.992 INFO    ] ================================================
[2026-06-22 00:50:05,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:50:05
[2026-06-22 00:50:06,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:50:06,442.442 INFO    ] Initializing speech engine...
[2026-06-22 00:50:06,450.450 INFO    ] 2026-06-22 00:50:06
[2026-06-22 00:50:06,737.737 INFO    ] 2026-06-22 00:50:06
[2026-06-22 00:50:06,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:50:06,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:50:06,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:50:07,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:50:07,118.118 INFO    ] time= 22/06/2026 00:50:07
[2026-06-22 00:50:07,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:50:07,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:50:07,315.315 INFO    ] No existing commands found in stream
[2026-06-22 00:50:12,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:50:12,339.339 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-22 00:50:13,947.947 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:50:13,949.949 INFO    ] Checking for system updates...
[2026-06-22 00:50:13,971.971 INFO    ] 200
[2026-06-22 00:50:13,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:50:14,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:50:14,007.007 INFO    ] No update needed
[2026-06-22 00:50:14,008.008 INFO    ] Checking for camera pi updates...
[2026-06-22 00:50:14,028.028 INFO    ] 200
[2026-06-22 00:50:14,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:50:14,055.055 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:50:14,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:50:14,153.153 INFO    ] No camera update needed
[2026-06-22 00:50:14,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:50:14,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:50:14,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:50:14,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:50:16,214.214 INFO    ] ================================================
[2026-06-22 00:50:16,230.230 INFO    ] Launching Daemon at Mon Jun 22 00:50:16 IST 2026
[2026-06-22 00:50:16,240.240 INFO    ] ================================================
[2026-06-22 00:50:16,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:50:16
[2026-06-22 00:50:17,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:50:17,633.633 INFO    ] Initializing speech engine...
[2026-06-22 00:50:17,644.644 INFO    ] 2026-06-22 00:50:17
[2026-06-22 00:50:17,903.903 INFO    ] 2026-06-22 00:50:17
[2026-06-22 00:50:17,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:50:18,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:50:18,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:50:18,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:50:18,362.362 INFO    ] time= 22/06/2026 00:50:18
[2026-06-22 00:50:18,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:50:18,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:50:18,557.557 INFO    ] No existing commands found in stream
[2026-06-22 00:50:23,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:50:23,587.587 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-22 00:50:26,131.131 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:50:26,134.134 INFO    ] Checking for system updates...
[2026-06-22 00:50:26,170.170 INFO    ] 200
[2026-06-22 00:50:26,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:50:26,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:50:26,233.233 INFO    ] No update needed
[2026-06-22 00:50:26,236.236 INFO    ] Checking for camera pi updates...
[2026-06-22 00:50:26,270.270 INFO    ] 200
[2026-06-22 00:50:26,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:50:26,318.318 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:50:26,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:50:26,402.402 INFO    ] No camera update needed
[2026-06-22 00:50:26,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:50:26,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:50:26,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:50:26,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:50:28,458.458 INFO    ] ================================================
[2026-06-22 00:50:28,473.473 INFO    ] Launching Daemon at Mon Jun 22 00:50:28 IST 2026
[2026-06-22 00:50:28,485.485 INFO    ] ================================================
[2026-06-22 00:50:29,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:50:29
[2026-06-22 00:50:29,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:50:29,918.918 INFO    ] Initializing speech engine...
[2026-06-22 00:50:29,926.926 INFO    ] 2026-06-22 00:50:29
[2026-06-22 00:50:30,201.201 INFO    ] 2026-06-22 00:50:30
[2026-06-22 00:50:30,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:50:30,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:50:30,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:50:30,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:50:30,544.544 INFO    ] time= 22/06/2026 00:50:30
[2026-06-22 00:50:30,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:50:30,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:50:30,659.659 INFO    ] No existing commands found in stream
[2026-06-22 00:50:35,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:50:35,679.679 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-22 00:50:39,650.650 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:50:39,652.652 INFO    ] Checking for system updates...
[2026-06-22 00:50:39,691.691 INFO    ] 200
[2026-06-22 00:50:39,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:50:39,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:50:39,748.748 INFO    ] No update needed
[2026-06-22 00:50:39,751.751 INFO    ] Checking for camera pi updates...
[2026-06-22 00:50:39,785.785 INFO    ] 200
[2026-06-22 00:50:39,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:50:39,832.832 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:50:39,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:50:39,993.993 INFO    ] No camera update needed
[2026-06-22 00:50:39,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:50:39,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:50:40,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:50:40,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:50:42,050.050 INFO    ] ================================================
[2026-06-22 00:50:42,065.065 INFO    ] Launching Daemon at Mon Jun 22 00:50:42 IST 2026
[2026-06-22 00:50:42,076.076 INFO    ] ================================================
[2026-06-22 00:50:42,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:50:42
[2026-06-22 00:50:43,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:50:43,399.399 INFO    ] Initializing speech engine...
[2026-06-22 00:50:43,408.408 INFO    ] 2026-06-22 00:50:43
[2026-06-22 00:50:43,697.697 INFO    ] 2026-06-22 00:50:43
[2026-06-22 00:50:43,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:50:43,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:50:43,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:50:44,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:50:44,108.108 INFO    ] time= 22/06/2026 00:50:44
[2026-06-22 00:50:44,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:50:44,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:50:44,191.191 INFO    ] No existing commands found in stream
[2026-06-22 00:50:49,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:50:49,207.207 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-22 00:50:53,291.291 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:50:53,293.293 INFO    ] Checking for system updates...
[2026-06-22 00:50:53,332.332 INFO    ] 200
[2026-06-22 00:50:53,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:50:53,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:50:53,390.390 INFO    ] No update needed
[2026-06-22 00:50:53,392.392 INFO    ] Checking for camera pi updates...
[2026-06-22 00:50:53,426.426 INFO    ] 200
[2026-06-22 00:50:53,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:50:53,470.470 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:50:53,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:50:53,554.554 INFO    ] No camera update needed
[2026-06-22 00:50:53,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:50:53,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:50:53,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:50:53,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:50:55,608.608 INFO    ] ================================================
[2026-06-22 00:50:55,625.625 INFO    ] Launching Daemon at Mon Jun 22 00:50:55 IST 2026
[2026-06-22 00:50:55,635.635 INFO    ] ================================================
[2026-06-22 00:50:56,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:50:56
[2026-06-22 00:50:56,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:50:57,125.125 INFO    ] Initializing speech engine...
[2026-06-22 00:50:57,134.134 INFO    ] 2026-06-22 00:50:57
[2026-06-22 00:50:57,410.410 INFO    ] 2026-06-22 00:50:57
[2026-06-22 00:50:57,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:50:57,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:50:57,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:50:57,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:50:57,908.908 INFO    ] time= 22/06/2026 00:50:57
[2026-06-22 00:50:57,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:50:57,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:50:58,082.082 INFO    ] No existing commands found in stream
[2026-06-22 00:51:03,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:51:03,111.111 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-22 00:51:06,694.694 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:51:06,697.697 INFO    ] Checking for system updates...
[2026-06-22 00:51:06,736.736 INFO    ] 200
[2026-06-22 00:51:06,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:51:06,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:51:06,795.795 INFO    ] No update needed
[2026-06-22 00:51:06,798.798 INFO    ] Checking for camera pi updates...
[2026-06-22 00:51:06,832.832 INFO    ] 200
[2026-06-22 00:51:06,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:51:06,880.880 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:51:06,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:51:06,963.963 INFO    ] No camera update needed
[2026-06-22 00:51:06,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:51:06,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:51:06,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:51:06,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:51:09,019.019 INFO    ] ================================================
[2026-06-22 00:51:09,035.035 INFO    ] Launching Daemon at Mon Jun 22 00:51:09 IST 2026
[2026-06-22 00:51:09,046.046 INFO    ] ================================================
[2026-06-22 00:51:09,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:51:09
[2026-06-22 00:51:10,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:51:10,594.594 INFO    ] Initializing speech engine...
[2026-06-22 00:51:10,609.609 INFO    ] 2026-06-22 00:51:10
[2026-06-22 00:51:10,898.898 INFO    ] 2026-06-22 00:51:10
[2026-06-22 00:51:10,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:51:11,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:51:11,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:51:11,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:51:11,285.285 INFO    ] time= 22/06/2026 00:51:11
[2026-06-22 00:51:11,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:51:11,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:51:11,411.411 INFO    ] No existing commands found in stream
[2026-06-22 00:51:16,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:51:16,426.426 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-22 00:51:19,500.500 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:51:19,502.502 INFO    ] Checking for system updates...
[2026-06-22 00:51:19,523.523 INFO    ] 200
[2026-06-22 00:51:19,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:51:19,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:51:19,573.573 INFO    ] No update needed
[2026-06-22 00:51:19,576.576 INFO    ] Checking for camera pi updates...
[2026-06-22 00:51:19,613.613 INFO    ] 200
[2026-06-22 00:51:19,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:51:19,657.657 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:51:19,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:51:19,753.753 INFO    ] No camera update needed
[2026-06-22 00:51:19,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:51:19,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:51:19,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:51:19,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:51:21,809.809 INFO    ] ================================================
[2026-06-22 00:51:21,825.825 INFO    ] Launching Daemon at Mon Jun 22 00:51:21 IST 2026
[2026-06-22 00:51:21,836.836 INFO    ] ================================================
[2026-06-22 00:51:22,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:51:22
[2026-06-22 00:51:22,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:51:23,195.195 INFO    ] Initializing speech engine...
[2026-06-22 00:51:23,207.207 INFO    ] 2026-06-22 00:51:23
[2026-06-22 00:51:23,460.460 INFO    ] 2026-06-22 00:51:23
[2026-06-22 00:51:23,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:51:23,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:51:23,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:51:23,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:51:23,915.915 INFO    ] time= 22/06/2026 00:51:23
[2026-06-22 00:51:23,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:51:24,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:51:24,086.086 INFO    ] No existing commands found in stream
[2026-06-22 00:51:29,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:51:29,100.100 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-22 00:51:31,839.839 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:51:31,843.843 INFO    ] Checking for system updates...
[2026-06-22 00:51:31,884.884 INFO    ] 200
[2026-06-22 00:51:31,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:51:31,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:51:31,948.948 INFO    ] No update needed
[2026-06-22 00:51:31,952.952 INFO    ] Checking for camera pi updates...
[2026-06-22 00:51:31,994.994 INFO    ] 200
[2026-06-22 00:51:31,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:51:32,054.054 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:51:32,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:51:32,117.117 INFO    ] No camera update needed
[2026-06-22 00:51:32,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:51:32,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:51:32,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:51:32,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:51:34,179.179 INFO    ] ================================================
[2026-06-22 00:51:34,195.195 INFO    ] Launching Daemon at Mon Jun 22 00:51:34 IST 2026
[2026-06-22 00:51:34,206.206 INFO    ] ================================================
[2026-06-22 00:51:34,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:51:34
[2026-06-22 00:51:35,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:51:35,748.748 INFO    ] Initializing speech engine...
[2026-06-22 00:51:35,758.758 INFO    ] 2026-06-22 00:51:35
[2026-06-22 00:51:36,024.024 INFO    ] 2026-06-22 00:51:36
[2026-06-22 00:51:36,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:51:36,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:51:36,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:51:36,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:51:36,470.470 INFO    ] time= 22/06/2026 00:51:36
[2026-06-22 00:51:36,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:51:36,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:51:36,615.615 INFO    ] No existing commands found in stream
[2026-06-22 00:51:41,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:51:41,639.639 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-22 00:51:44,771.771 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:51:44,773.773 INFO    ] Checking for system updates...
[2026-06-22 00:51:44,795.795 INFO    ] 200
[2026-06-22 00:51:44,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:51:44,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:51:44,829.829 INFO    ] No update needed
[2026-06-22 00:51:44,830.830 INFO    ] Checking for camera pi updates...
[2026-06-22 00:51:44,851.851 INFO    ] 200
[2026-06-22 00:51:44,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:51:44,891.891 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:51:44,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:51:44,982.982 INFO    ] No camera update needed
[2026-06-22 00:51:44,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:51:44,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:51:44,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:51:44,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:51:47,038.038 INFO    ] ================================================
[2026-06-22 00:51:47,054.054 INFO    ] Launching Daemon at Mon Jun 22 00:51:47 IST 2026
[2026-06-22 00:51:47,065.065 INFO    ] ================================================
[2026-06-22 00:51:47,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:51:47
[2026-06-22 00:51:48,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:51:48,439.439 INFO    ] Initializing speech engine...
[2026-06-22 00:51:48,449.449 INFO    ] 2026-06-22 00:51:48
[2026-06-22 00:51:48,708.708 INFO    ] 2026-06-22 00:51:48
[2026-06-22 00:51:48,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:51:48,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:51:48,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:51:49,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:51:49,173.173 INFO    ] time= 22/06/2026 00:51:49
[2026-06-22 00:51:49,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:51:49,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:51:49,317.317 INFO    ] No existing commands found in stream
[2026-06-22 00:51:54,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:51:54,331.331 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-22 00:51:55,768.768 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:51:55,770.770 INFO    ] Checking for system updates...
[2026-06-22 00:51:55,806.806 INFO    ] 200
[2026-06-22 00:51:55,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:51:55,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:51:55,864.864 INFO    ] No update needed
[2026-06-22 00:51:55,867.867 INFO    ] Checking for camera pi updates...
[2026-06-22 00:51:55,901.901 INFO    ] 200
[2026-06-22 00:51:55,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:51:55,946.946 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:51:56,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:51:56,042.042 INFO    ] No camera update needed
[2026-06-22 00:51:56,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:51:56,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:51:56,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:51:56,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:51:58,102.102 INFO    ] ================================================
[2026-06-22 00:51:58,117.117 INFO    ] Launching Daemon at Mon Jun 22 00:51:58 IST 2026
[2026-06-22 00:51:58,128.128 INFO    ] ================================================
[2026-06-22 00:51:58,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:51:58
[2026-06-22 00:51:59,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:51:59,498.498 INFO    ] Initializing speech engine...
[2026-06-22 00:51:59,504.504 INFO    ] 2026-06-22 00:51:59
[2026-06-22 00:51:59,805.805 INFO    ] 2026-06-22 00:51:59
[2026-06-22 00:51:59,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:52:00,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:52:00,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:52:00,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:52:00,187.187 INFO    ] time= 22/06/2026 00:52:00
[2026-06-22 00:52:00,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:52:00,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:52:00,267.267 INFO    ] No existing commands found in stream
[2026-06-22 00:52:05,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:52:05,279.279 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-22 00:52:09,286.286 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:52:09,289.289 INFO    ] Checking for system updates...
[2026-06-22 00:52:09,330.330 INFO    ] 200
[2026-06-22 00:52:09,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:52:09,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:52:09,397.397 INFO    ] No update needed
[2026-06-22 00:52:09,400.400 INFO    ] Checking for camera pi updates...
[2026-06-22 00:52:09,434.434 INFO    ] 200
[2026-06-22 00:52:09,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:52:09,479.479 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:52:09,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:52:09,554.554 INFO    ] No camera update needed
[2026-06-22 00:52:09,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:52:09,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:52:09,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:52:09,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:52:11,613.613 INFO    ] ================================================
[2026-06-22 00:52:11,629.629 INFO    ] Launching Daemon at Mon Jun 22 00:52:11 IST 2026
[2026-06-22 00:52:11,640.640 INFO    ] ================================================
[2026-06-22 00:52:12,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:52:12
[2026-06-22 00:52:12,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:52:12,976.976 INFO    ] Initializing speech engine...
[2026-06-22 00:52:12,982.982 INFO    ] 2026-06-22 00:52:12
[2026-06-22 00:52:13,280.280 INFO    ] 2026-06-22 00:52:13
[2026-06-22 00:52:13,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:52:13,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:52:13,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:52:13,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:52:13,660.660 INFO    ] time= 22/06/2026 00:52:13
[2026-06-22 00:52:13,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:52:13,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:52:13,789.789 INFO    ] No existing commands found in stream
[2026-06-22 00:52:18,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:52:18,805.805 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-22 00:52:22,866.866 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:52:22,869.869 INFO    ] Checking for system updates...
[2026-06-22 00:52:22,905.905 INFO    ] 200
[2026-06-22 00:52:22,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:52:22,968.968 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:52:22,970.970 INFO    ] No update needed
[2026-06-22 00:52:22,973.973 INFO    ] Checking for camera pi updates...
[2026-06-22 00:52:23,006.006 INFO    ] 200
[2026-06-22 00:52:23,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:52:23,055.055 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:52:23,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:52:23,137.137 INFO    ] No camera update needed
[2026-06-22 00:52:23,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:52:23,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:52:23,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:52:23,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:52:25,195.195 INFO    ] ================================================
[2026-06-22 00:52:25,211.211 INFO    ] Launching Daemon at Mon Jun 22 00:52:25 IST 2026
[2026-06-22 00:52:25,222.222 INFO    ] ================================================
[2026-06-22 00:52:25,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:52:25
[2026-06-22 00:52:26,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:52:26,667.667 INFO    ] Initializing speech engine...
[2026-06-22 00:52:26,676.676 INFO    ] 2026-06-22 00:52:26
[2026-06-22 00:52:26,924.924 INFO    ] 2026-06-22 00:52:26
[2026-06-22 00:52:26,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:52:27,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:52:27,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:52:27,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:52:27,404.404 INFO    ] time= 22/06/2026 00:52:27
[2026-06-22 00:52:27,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:52:27,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:52:27,544.544 INFO    ] No existing commands found in stream
[2026-06-22 00:52:32,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:52:32,560.560 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-22 00:52:34,553.553 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:52:34,556.556 INFO    ] Checking for system updates...
[2026-06-22 00:52:34,591.591 INFO    ] 200
[2026-06-22 00:52:34,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:52:34,646.646 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:52:34,649.649 INFO    ] No update needed
[2026-06-22 00:52:34,652.652 INFO    ] Checking for camera pi updates...
[2026-06-22 00:52:34,687.687 INFO    ] 200
[2026-06-22 00:52:34,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:52:34,735.735 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:52:34,818.818 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:52:34,821.821 INFO    ] No camera update needed
[2026-06-22 00:52:34,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:52:34,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:52:34,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:52:34,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:52:36,885.885 INFO    ] ================================================
[2026-06-22 00:52:36,900.900 INFO    ] Launching Daemon at Mon Jun 22 00:52:36 IST 2026
[2026-06-22 00:52:36,912.912 INFO    ] ================================================
[2026-06-22 00:52:37,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:52:37
[2026-06-22 00:52:38,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:52:38,463.463 INFO    ] Initializing speech engine...
[2026-06-22 00:52:38,474.474 INFO    ] 2026-06-22 00:52:38
[2026-06-22 00:52:38,750.750 INFO    ] 2026-06-22 00:52:38
[2026-06-22 00:52:38,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:52:39,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:52:39,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:52:39,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:52:39,255.255 INFO    ] time= 22/06/2026 00:52:39
[2026-06-22 00:52:39,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:52:39,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:52:39,399.399 INFO    ] No existing commands found in stream
[2026-06-22 00:52:44,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:52:44,415.415 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-22 00:52:47,785.785 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:52:47,786.786 INFO    ] Checking for system updates...
[2026-06-22 00:52:47,807.807 INFO    ] 200
[2026-06-22 00:52:47,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:52:47,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:52:47,861.861 INFO    ] No update needed
[2026-06-22 00:52:47,863.863 INFO    ] Checking for camera pi updates...
[2026-06-22 00:52:47,902.902 INFO    ] 200
[2026-06-22 00:52:47,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:52:47,946.946 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:52:48,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:52:48,031.031 INFO    ] No camera update needed
[2026-06-22 00:52:48,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:52:48,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:52:48,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:52:48,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:52:50,088.088 INFO    ] ================================================
[2026-06-22 00:52:50,103.103 INFO    ] Launching Daemon at Mon Jun 22 00:52:50 IST 2026
[2026-06-22 00:52:50,114.114 INFO    ] ================================================
[2026-06-22 00:52:50,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:52:50
[2026-06-22 00:52:51,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:52:51,450.450 INFO    ] Initializing speech engine...
[2026-06-22 00:52:51,459.459 INFO    ] 2026-06-22 00:52:51
[2026-06-22 00:52:51,738.738 INFO    ] 2026-06-22 00:52:51
[2026-06-22 00:52:51,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:52:52,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:52:52,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:52:52,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:52:52,185.185 INFO    ] time= 22/06/2026 00:52:52
[2026-06-22 00:52:52,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:52:52,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:52:52,336.336 INFO    ] No existing commands found in stream
[2026-06-22 00:52:57,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:52:57,351.351 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-22 00:52:58,007.007 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:52:58,009.009 INFO    ] Checking for system updates...
[2026-06-22 00:52:58,031.031 INFO    ] 200
[2026-06-22 00:52:58,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:52:58,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:52:58,067.067 INFO    ] No update needed
[2026-06-22 00:52:58,069.069 INFO    ] Checking for camera pi updates...
[2026-06-22 00:52:58,090.090 INFO    ] 200
[2026-06-22 00:52:58,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:52:58,122.122 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:52:58,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:52:58,182.182 INFO    ] No camera update needed
[2026-06-22 00:52:58,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:52:58,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:52:58,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:52:58,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:53:00,243.243 INFO    ] ================================================
[2026-06-22 00:53:00,259.259 INFO    ] Launching Daemon at Mon Jun 22 00:53:00 IST 2026
[2026-06-22 00:53:00,269.269 INFO    ] ================================================
[2026-06-22 00:53:00,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:53:00
[2026-06-22 00:53:01,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:53:01,634.634 INFO    ] Initializing speech engine...
[2026-06-22 00:53:01,638.638 INFO    ] 2026-06-22 00:53:01
[2026-06-22 00:53:02,173.173 INFO    ] 2026-06-22 00:53:02
[2026-06-22 00:53:02,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:53:02,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:53:02,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:53:02,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:53:02,544.544 INFO    ] time= 22/06/2026 00:53:02
[2026-06-22 00:53:02,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:53:02,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:53:02,736.736 INFO    ] No existing commands found in stream
[2026-06-22 00:53:07,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:53:07,759.759 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-22 00:53:10,388.388 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:53:10,391.391 INFO    ] Checking for system updates...
[2026-06-22 00:53:10,428.428 INFO    ] 200
[2026-06-22 00:53:10,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:53:10,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:53:10,485.485 INFO    ] No update needed
[2026-06-22 00:53:10,487.487 INFO    ] Checking for camera pi updates...
[2026-06-22 00:53:10,525.525 INFO    ] 200
[2026-06-22 00:53:10,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:53:10,591.591 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:53:10,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:53:10,684.684 INFO    ] No camera update needed
[2026-06-22 00:53:10,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:53:10,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:53:10,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:53:10,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:53:12,740.740 INFO    ] ================================================
[2026-06-22 00:53:12,756.756 INFO    ] Launching Daemon at Mon Jun 22 00:53:12 IST 2026
[2026-06-22 00:53:12,766.766 INFO    ] ================================================
[2026-06-22 00:53:13,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:53:13
[2026-06-22 00:53:13,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:53:14,164.164 INFO    ] Initializing speech engine...
[2026-06-22 00:53:14,177.177 INFO    ] 2026-06-22 00:53:14
[2026-06-22 00:53:14,426.426 INFO    ] 2026-06-22 00:53:14
[2026-06-22 00:53:14,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:53:14,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:53:14,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:53:14,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:53:14,894.894 INFO    ] time= 22/06/2026 00:53:14
[2026-06-22 00:53:14,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:53:14,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:53:15,043.043 INFO    ] No existing commands found in stream
[2026-06-22 00:53:20,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:53:20,057.057 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-22 00:53:20,464.464 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:53:20,467.467 INFO    ] Checking for system updates...
[2026-06-22 00:53:20,507.507 INFO    ] 200
[2026-06-22 00:53:20,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:53:20,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:53:20,573.573 INFO    ] No update needed
[2026-06-22 00:53:20,576.576 INFO    ] Checking for camera pi updates...
[2026-06-22 00:53:20,621.621 INFO    ] 200
[2026-06-22 00:53:20,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:53:20,670.670 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:53:20,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:53:20,768.768 INFO    ] No camera update needed
[2026-06-22 00:53:20,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:53:20,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:53:20,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:53:20,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:53:22,830.830 INFO    ] ================================================
[2026-06-22 00:53:22,846.846 INFO    ] Launching Daemon at Mon Jun 22 00:53:22 IST 2026
[2026-06-22 00:53:22,857.857 INFO    ] ================================================
[2026-06-22 00:53:23,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:53:23
[2026-06-22 00:53:23,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:53:24,203.203 INFO    ] Initializing speech engine...
[2026-06-22 00:53:24,212.212 INFO    ] 2026-06-22 00:53:24
[2026-06-22 00:53:24,459.459 INFO    ] 2026-06-22 00:53:24
[2026-06-22 00:53:24,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:53:24,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:53:24,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:53:24,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:53:24,827.827 INFO    ] time= 22/06/2026 00:53:24
[2026-06-22 00:53:24,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:53:24,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:53:24,997.997 INFO    ] No existing commands found in stream
[2026-06-22 00:53:30,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:53:30,030.030 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-22 00:53:30,723.723 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:53:30,727.727 INFO    ] Checking for system updates...
[2026-06-22 00:53:30,764.764 INFO    ] 200
[2026-06-22 00:53:30,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:53:30,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:53:30,831.831 INFO    ] No update needed
[2026-06-22 00:53:30,834.834 INFO    ] Checking for camera pi updates...
[2026-06-22 00:53:30,869.869 INFO    ] 200
[2026-06-22 00:53:30,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:53:30,920.920 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:53:31,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:53:31,023.023 INFO    ] No camera update needed
[2026-06-22 00:53:31,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:53:31,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:53:31,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:53:31,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:53:33,085.085 INFO    ] ================================================
[2026-06-22 00:53:33,100.100 INFO    ] Launching Daemon at Mon Jun 22 00:53:33 IST 2026
[2026-06-22 00:53:33,111.111 INFO    ] ================================================
[2026-06-22 00:53:33,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:53:33
[2026-06-22 00:53:34,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:53:34,515.515 INFO    ] Initializing speech engine...
[2026-06-22 00:53:34,530.530 INFO    ] 2026-06-22 00:53:34
[2026-06-22 00:53:34,799.799 INFO    ] 2026-06-22 00:53:34
[2026-06-22 00:53:34,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:53:35,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:53:35,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:53:35,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:53:35,153.153 INFO    ] time= 22/06/2026 00:53:35
[2026-06-22 00:53:35,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:53:35,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:53:35,251.251 INFO    ] No existing commands found in stream
[2026-06-22 00:53:40,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:53:40,266.266 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-22 00:53:41,087.087 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:53:41,089.089 INFO    ] Checking for system updates...
[2026-06-22 00:53:41,126.126 INFO    ] 200
[2026-06-22 00:53:41,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:53:41,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:53:41,185.185 INFO    ] No update needed
[2026-06-22 00:53:41,187.187 INFO    ] Checking for camera pi updates...
[2026-06-22 00:53:41,221.221 INFO    ] 200
[2026-06-22 00:53:41,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:53:41,270.270 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:53:41,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:53:41,353.353 INFO    ] No camera update needed
[2026-06-22 00:53:41,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:53:41,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:53:41,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:53:41,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:53:43,409.409 INFO    ] ================================================
[2026-06-22 00:53:43,424.424 INFO    ] Launching Daemon at Mon Jun 22 00:53:43 IST 2026
[2026-06-22 00:53:43,435.435 INFO    ] ================================================
[2026-06-22 00:53:44,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:53:44
[2026-06-22 00:53:44,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:53:44,859.859 INFO    ] Initializing speech engine...
[2026-06-22 00:53:44,865.865 INFO    ] 2026-06-22 00:53:44
[2026-06-22 00:53:45,139.139 INFO    ] 2026-06-22 00:53:45
[2026-06-22 00:53:45,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:53:45,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:53:45,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:53:45,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:53:45,515.515 INFO    ] time= 22/06/2026 00:53:45
[2026-06-22 00:53:45,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:53:45,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:53:45,639.639 INFO    ] No existing commands found in stream
[2026-06-22 00:53:50,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:53:50,651.651 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-22 00:53:54,140.140 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:53:54,143.143 INFO    ] Checking for system updates...
[2026-06-22 00:53:54,183.183 INFO    ] 200
[2026-06-22 00:53:54,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:53:54,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:53:54,243.243 INFO    ] No update needed
[2026-06-22 00:53:54,245.245 INFO    ] Checking for camera pi updates...
[2026-06-22 00:53:54,279.279 INFO    ] 200
[2026-06-22 00:53:54,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:53:54,323.323 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:53:54,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:53:54,408.408 INFO    ] No camera update needed
[2026-06-22 00:53:54,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:53:54,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:53:54,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:53:54,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:53:56,469.469 INFO    ] ================================================
[2026-06-22 00:53:56,484.484 INFO    ] Launching Daemon at Mon Jun 22 00:53:56 IST 2026
[2026-06-22 00:53:56,496.496 INFO    ] ================================================
[2026-06-22 00:53:57,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:53:57
[2026-06-22 00:53:57,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:53:57,947.947 INFO    ] Initializing speech engine...
[2026-06-22 00:53:57,958.958 INFO    ] 2026-06-22 00:53:57
[2026-06-22 00:53:58,209.209 INFO    ] 2026-06-22 00:53:58
[2026-06-22 00:53:58,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:53:58,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:53:58,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:53:58,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:53:58,569.569 INFO    ] time= 22/06/2026 00:53:58
[2026-06-22 00:53:58,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:53:58,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:53:58,668.668 INFO    ] No existing commands found in stream
[2026-06-22 00:54:03,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:54:03,684.684 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-22 00:54:04,534.534 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:54:04,537.537 INFO    ] Checking for system updates...
[2026-06-22 00:54:04,573.573 INFO    ] 200
[2026-06-22 00:54:04,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:54:04,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:54:04,633.633 INFO    ] No update needed
[2026-06-22 00:54:04,635.635 INFO    ] Checking for camera pi updates...
[2026-06-22 00:54:04,669.669 INFO    ] 200
[2026-06-22 00:54:04,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:54:04,713.713 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:54:04,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:54:04,807.807 INFO    ] No camera update needed
[2026-06-22 00:54:04,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:54:04,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:54:04,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:54:04,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:54:06,867.867 INFO    ] ================================================
[2026-06-22 00:54:06,883.883 INFO    ] Launching Daemon at Mon Jun 22 00:54:06 IST 2026
[2026-06-22 00:54:06,894.894 INFO    ] ================================================
[2026-06-22 00:54:07,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:54:07
[2026-06-22 00:54:08,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:54:08,296.296 INFO    ] Initializing speech engine...
[2026-06-22 00:54:08,304.304 INFO    ] 2026-06-22 00:54:08
[2026-06-22 00:54:08,558.558 INFO    ] 2026-06-22 00:54:08
[2026-06-22 00:54:08,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:54:08,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:54:08,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:54:08,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:54:09,035.035 INFO    ] time= 22/06/2026 00:54:08
[2026-06-22 00:54:09,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:54:09,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:54:09,176.176 INFO    ] No existing commands found in stream
[2026-06-22 00:54:14,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:54:14,192.192 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-22 00:54:16,221.221 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:54:16,223.223 INFO    ] Checking for system updates...
[2026-06-22 00:54:16,244.244 INFO    ] 200
[2026-06-22 00:54:16,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:54:16,278.278 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:54:16,279.279 INFO    ] No update needed
[2026-06-22 00:54:16,280.280 INFO    ] Checking for camera pi updates...
[2026-06-22 00:54:16,301.301 INFO    ] 200
[2026-06-22 00:54:16,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:54:16,346.346 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:54:16,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:54:16,431.431 INFO    ] No camera update needed
[2026-06-22 00:54:16,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:54:16,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:54:16,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:54:16,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:54:18,487.487 INFO    ] ================================================
[2026-06-22 00:54:18,503.503 INFO    ] Launching Daemon at Mon Jun 22 00:54:18 IST 2026
[2026-06-22 00:54:18,515.515 INFO    ] ================================================
[2026-06-22 00:54:19,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:54:19
[2026-06-22 00:54:19,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:54:20,027.027 INFO    ] Initializing speech engine...
[2026-06-22 00:54:20,040.040 INFO    ] 2026-06-22 00:54:20
[2026-06-22 00:54:20,322.322 INFO    ] 2026-06-22 00:54:20
[2026-06-22 00:54:20,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:54:20,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:54:20,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:54:20,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:54:20,798.798 INFO    ] time= 22/06/2026 00:54:20
[2026-06-22 00:54:20,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:54:20,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:54:20,942.942 INFO    ] No existing commands found in stream
[2026-06-22 00:54:25,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:54:25,958.958 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-22 00:54:28,744.744 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:54:28,746.746 INFO    ] Checking for system updates...
[2026-06-22 00:54:28,767.767 INFO    ] 200
[2026-06-22 00:54:28,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:54:28,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:54:28,800.800 INFO    ] No update needed
[2026-06-22 00:54:28,801.801 INFO    ] Checking for camera pi updates...
[2026-06-22 00:54:28,825.825 INFO    ] 200
[2026-06-22 00:54:28,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:54:28,868.868 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:54:29,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:54:29,075.075 INFO    ] No camera update needed
[2026-06-22 00:54:29,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:54:29,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:54:29,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:54:29,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:54:31,131.131 INFO    ] ================================================
[2026-06-22 00:54:31,146.146 INFO    ] Launching Daemon at Mon Jun 22 00:54:31 IST 2026
[2026-06-22 00:54:31,158.158 INFO    ] ================================================
[2026-06-22 00:54:31,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:54:31
[2026-06-22 00:54:32,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:54:32,660.660 INFO    ] Initializing speech engine...
[2026-06-22 00:54:32,676.676 INFO    ] 2026-06-22 00:54:32
[2026-06-22 00:54:32,966.966 INFO    ] 2026-06-22 00:54:32
[2026-06-22 00:54:32,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:54:33,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:54:33,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:54:33,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:54:33,340.340 INFO    ] time= 22/06/2026 00:54:33
[2026-06-22 00:54:33,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:54:33,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:54:33,416.416 INFO    ] No existing commands found in stream
[2026-06-22 00:54:38,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:54:38,430.430 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-22 00:54:39,928.928 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:54:39,930.930 INFO    ] Checking for system updates...
[2026-06-22 00:54:39,951.951 INFO    ] 200
[2026-06-22 00:54:39,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:54:39,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:54:39,984.984 INFO    ] No update needed
[2026-06-22 00:54:39,985.985 INFO    ] Checking for camera pi updates...
[2026-06-22 00:54:40,005.005 INFO    ] 200
[2026-06-22 00:54:40,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:54:40,041.041 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:54:40,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:54:40,128.128 INFO    ] No camera update needed
[2026-06-22 00:54:40,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:54:40,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:54:40,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:54:40,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:54:42,186.186 INFO    ] ================================================
[2026-06-22 00:54:42,201.201 INFO    ] Launching Daemon at Mon Jun 22 00:54:42 IST 2026
[2026-06-22 00:54:42,212.212 INFO    ] ================================================
[2026-06-22 00:54:42,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:54:42
[2026-06-22 00:54:43,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:54:43,754.754 INFO    ] Initializing speech engine...
[2026-06-22 00:54:43,763.763 INFO    ] 2026-06-22 00:54:43
[2026-06-22 00:54:44,055.055 INFO    ] 2026-06-22 00:54:44
[2026-06-22 00:54:44,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:54:44,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:54:44,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:54:44,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:54:44,602.602 INFO    ] time= 22/06/2026 00:54:44
[2026-06-22 00:54:44,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:54:44,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:54:44,754.754 INFO    ] No existing commands found in stream
[2026-06-22 00:54:49,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:54:49,786.786 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-22 00:54:50,477.477 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:54:50,480.480 INFO    ] Checking for system updates...
[2026-06-22 00:54:50,518.518 INFO    ] 200
[2026-06-22 00:54:50,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:54:50,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:54:50,576.576 INFO    ] No update needed
[2026-06-22 00:54:50,579.579 INFO    ] Checking for camera pi updates...
[2026-06-22 00:54:50,617.617 INFO    ] 200
[2026-06-22 00:54:50,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:54:50,667.667 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:54:50,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:54:50,748.748 INFO    ] No camera update needed
[2026-06-22 00:54:50,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:54:50,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:54:50,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:54:50,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:54:52,805.805 INFO    ] ================================================
[2026-06-22 00:54:52,819.819 INFO    ] Launching Daemon at Mon Jun 22 00:54:52 IST 2026
[2026-06-22 00:54:52,830.830 INFO    ] ================================================
[2026-06-22 00:54:53,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:54:53
[2026-06-22 00:54:53,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:54:54,277.277 INFO    ] Initializing speech engine...
[2026-06-22 00:54:54,290.290 INFO    ] 2026-06-22 00:54:54
[2026-06-22 00:54:54,573.573 INFO    ] 2026-06-22 00:54:54
[2026-06-22 00:54:54,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:54:54,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:54:54,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:54:55,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:54:55,045.045 INFO    ] time= 22/06/2026 00:54:55
[2026-06-22 00:54:55,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:54:55,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:54:55,200.200 INFO    ] No existing commands found in stream
[2026-06-22 00:55:00,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:55:00,214.214 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-22 00:55:03,747.747 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:55:03,749.749 INFO    ] Checking for system updates...
[2026-06-22 00:55:03,786.786 INFO    ] 200
[2026-06-22 00:55:03,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:55:03,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:55:03,848.848 INFO    ] No update needed
[2026-06-22 00:55:03,850.850 INFO    ] Checking for camera pi updates...
[2026-06-22 00:55:03,886.886 INFO    ] 200
[2026-06-22 00:55:03,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:55:03,936.936 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:55:04,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:55:04,022.022 INFO    ] No camera update needed
[2026-06-22 00:55:04,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:55:04,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:55:04,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:55:04,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:55:06,085.085 INFO    ] ================================================
[2026-06-22 00:55:06,100.100 INFO    ] Launching Daemon at Mon Jun 22 00:55:06 IST 2026
[2026-06-22 00:55:06,111.111 INFO    ] ================================================
[2026-06-22 00:55:06,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:55:06
[2026-06-22 00:55:07,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:55:07,618.618 INFO    ] Initializing speech engine...
[2026-06-22 00:55:07,633.633 INFO    ] 2026-06-22 00:55:07
[2026-06-22 00:55:07,918.918 INFO    ] 2026-06-22 00:55:07
[2026-06-22 00:55:08,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:55:08,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:55:08,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:55:08,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:55:08,463.463 INFO    ] time= 22/06/2026 00:55:08
[2026-06-22 00:55:08,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:55:08,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:55:08,609.609 INFO    ] No existing commands found in stream
[2026-06-22 00:55:13,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:55:13,648.648 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-22 00:55:17,349.349 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:55:17,353.353 INFO    ] Checking for system updates...
[2026-06-22 00:55:17,395.395 INFO    ] 200
[2026-06-22 00:55:17,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:55:17,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:55:17,462.462 INFO    ] No update needed
[2026-06-22 00:55:17,465.465 INFO    ] Checking for camera pi updates...
[2026-06-22 00:55:17,505.505 INFO    ] 200
[2026-06-22 00:55:17,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:55:17,556.556 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:55:17,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:55:17,649.649 INFO    ] No camera update needed
[2026-06-22 00:55:17,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:55:17,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:55:17,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:55:17,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:55:19,708.708 INFO    ] ================================================
[2026-06-22 00:55:19,723.723 INFO    ] Launching Daemon at Mon Jun 22 00:55:19 IST 2026
[2026-06-22 00:55:19,734.734 INFO    ] ================================================
[2026-06-22 00:55:20,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:55:20
[2026-06-22 00:55:20,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:55:21,301.301 INFO    ] Initializing speech engine...
[2026-06-22 00:55:21,452.452 INFO    ] 2026-06-22 00:55:21
[2026-06-22 00:55:21,775.775 INFO    ] 2026-06-22 00:55:21
[2026-06-22 00:55:21,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:55:22,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:55:22,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:55:22,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:55:22,398.398 INFO    ] time= 22/06/2026 00:55:22
[2026-06-22 00:55:22,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:55:22,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:55:22,561.561 INFO    ] No existing commands found in stream
[2026-06-22 00:55:27,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:55:27,597.597 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-22 00:55:28,193.193 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:55:28,195.195 INFO    ] Checking for system updates...
[2026-06-22 00:55:28,216.216 INFO    ] 200
[2026-06-22 00:55:28,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:55:28,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:55:28,251.251 INFO    ] No update needed
[2026-06-22 00:55:28,254.254 INFO    ] Checking for camera pi updates...
[2026-06-22 00:55:28,293.293 INFO    ] 200
[2026-06-22 00:55:28,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:55:28,339.339 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:55:28,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:55:28,426.426 INFO    ] No camera update needed
[2026-06-22 00:55:28,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:55:28,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:55:28,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:55:28,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:55:30,485.485 INFO    ] ================================================
[2026-06-22 00:55:30,500.500 INFO    ] Launching Daemon at Mon Jun 22 00:55:30 IST 2026
[2026-06-22 00:55:30,511.511 INFO    ] ================================================
[2026-06-22 00:55:31,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:55:31
[2026-06-22 00:55:31,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:55:31,881.881 INFO    ] Initializing speech engine...
[2026-06-22 00:55:31,890.890 INFO    ] 2026-06-22 00:55:31
[2026-06-22 00:55:32,181.181 INFO    ] 2026-06-22 00:55:32
[2026-06-22 00:55:32,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:55:32,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:55:32,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:55:32,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:55:32,582.582 INFO    ] time= 22/06/2026 00:55:32
[2026-06-22 00:55:32,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:55:32,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:55:32,670.670 INFO    ] No existing commands found in stream
[2026-06-22 00:55:37,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:55:37,707.707 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-22 00:55:40,502.502 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:55:40,503.503 INFO    ] Checking for system updates...
[2026-06-22 00:55:40,525.525 INFO    ] 200
[2026-06-22 00:55:40,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:55:40,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:55:40,562.562 INFO    ] No update needed
[2026-06-22 00:55:40,564.564 INFO    ] Checking for camera pi updates...
[2026-06-22 00:55:40,599.599 INFO    ] 200
[2026-06-22 00:55:40,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:55:40,643.643 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:55:40,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:55:40,752.752 INFO    ] No camera update needed
[2026-06-22 00:55:40,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:55:40,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:55:40,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:55:40,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:55:42,809.809 INFO    ] ================================================
[2026-06-22 00:55:42,824.824 INFO    ] Launching Daemon at Mon Jun 22 00:55:42 IST 2026
[2026-06-22 00:55:42,835.835 INFO    ] ================================================
[2026-06-22 00:55:43,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:55:43
[2026-06-22 00:55:43,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:55:44,164.164 INFO    ] Initializing speech engine...
[2026-06-22 00:55:44,189.189 INFO    ] 2026-06-22 00:55:44
[2026-06-22 00:55:44,467.467 INFO    ] 2026-06-22 00:55:44
[2026-06-22 00:55:44,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:55:44,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:55:44,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:55:44,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:55:44,892.892 INFO    ] time= 22/06/2026 00:55:44
[2026-06-22 00:55:44,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:55:44,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:55:44,979.979 INFO    ] No existing commands found in stream
[2026-06-22 00:55:49,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:55:49,994.994 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-22 00:55:51,399.399 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:55:51,402.402 INFO    ] Checking for system updates...
[2026-06-22 00:55:51,438.438 INFO    ] 200
[2026-06-22 00:55:51,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:55:51,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:55:51,497.497 INFO    ] No update needed
[2026-06-22 00:55:51,499.499 INFO    ] Checking for camera pi updates...
[2026-06-22 00:55:51,534.534 INFO    ] 200
[2026-06-22 00:55:51,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:55:51,577.577 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:55:51,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:55:51,678.678 INFO    ] No camera update needed
[2026-06-22 00:55:51,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:55:51,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:55:51,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:55:51,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:55:53,733.733 INFO    ] ================================================
[2026-06-22 00:55:53,748.748 INFO    ] Launching Daemon at Mon Jun 22 00:55:53 IST 2026
[2026-06-22 00:55:53,759.759 INFO    ] ================================================
[2026-06-22 00:55:54,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:55:54
[2026-06-22 00:55:54,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:55:55,075.075 INFO    ] Initializing speech engine...
[2026-06-22 00:55:55,090.090 INFO    ] 2026-06-22 00:55:55
[2026-06-22 00:55:55,357.357 INFO    ] 2026-06-22 00:55:55
[2026-06-22 00:55:55,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:55:55,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:55:55,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:55:55,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:55:55,733.733 INFO    ] time= 22/06/2026 00:55:55
[2026-06-22 00:55:55,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:55:55,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:55:55,884.884 INFO    ] No existing commands found in stream
[2026-06-22 00:56:00,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:56:00,917.917 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-22 00:56:05,097.097 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:56:05,100.100 INFO    ] Checking for system updates...
[2026-06-22 00:56:05,137.137 INFO    ] 200
[2026-06-22 00:56:05,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:56:05,197.197 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:56:05,200.200 INFO    ] No update needed
[2026-06-22 00:56:05,202.202 INFO    ] Checking for camera pi updates...
[2026-06-22 00:56:05,237.237 INFO    ] 200
[2026-06-22 00:56:05,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:56:05,280.280 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:56:05,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:56:05,378.378 INFO    ] No camera update needed
[2026-06-22 00:56:05,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:56:05,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:56:05,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:56:05,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:56:07,436.436 INFO    ] ================================================
[2026-06-22 00:56:07,451.451 INFO    ] Launching Daemon at Mon Jun 22 00:56:07 IST 2026
[2026-06-22 00:56:07,461.461 INFO    ] ================================================
[2026-06-22 00:56:07,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:56:07
[2026-06-22 00:56:08,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:56:08,944.944 INFO    ] Initializing speech engine...
[2026-06-22 00:56:08,958.958 INFO    ] 2026-06-22 00:56:08
[2026-06-22 00:56:09,240.240 INFO    ] 2026-06-22 00:56:09
[2026-06-22 00:56:09,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:56:09,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:56:09,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:56:09,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:56:09,699.699 INFO    ] time= 22/06/2026 00:56:09
[2026-06-22 00:56:09,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:56:09,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:56:09,853.853 INFO    ] No existing commands found in stream
[2026-06-22 00:56:14,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:56:14,869.869 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-22 00:56:19,015.015 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:56:19,017.017 INFO    ] Checking for system updates...
[2026-06-22 00:56:19,038.038 INFO    ] 200
[2026-06-22 00:56:19,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:56:19,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:56:19,071.071 INFO    ] No update needed
[2026-06-22 00:56:19,072.072 INFO    ] Checking for camera pi updates...
[2026-06-22 00:56:19,092.092 INFO    ] 200
[2026-06-22 00:56:19,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:56:19,126.126 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:56:19,182.182 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:56:19,185.185 INFO    ] No camera update needed
[2026-06-22 00:56:19,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:56:19,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:56:19,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:56:19,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:56:21,245.245 INFO    ] ================================================
[2026-06-22 00:56:21,260.260 INFO    ] Launching Daemon at Mon Jun 22 00:56:21 IST 2026
[2026-06-22 00:56:21,271.271 INFO    ] ================================================
[2026-06-22 00:56:21,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:56:21
[2026-06-22 00:56:22,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:56:22,640.640 INFO    ] Initializing speech engine...
[2026-06-22 00:56:22,654.654 INFO    ] 2026-06-22 00:56:22
[2026-06-22 00:56:22,938.938 INFO    ] 2026-06-22 00:56:22
[2026-06-22 00:56:22,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:56:23,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:56:23,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:56:23,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:56:23,355.355 INFO    ] time= 22/06/2026 00:56:23
[2026-06-22 00:56:23,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:56:23,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:56:23,439.439 INFO    ] No existing commands found in stream
[2026-06-22 00:56:28,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:56:28,455.455 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-22 00:56:30,486.486 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:56:30,489.489 INFO    ] Checking for system updates...
[2026-06-22 00:56:30,525.525 INFO    ] 200
[2026-06-22 00:56:30,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:56:30,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:56:30,584.584 INFO    ] No update needed
[2026-06-22 00:56:30,587.587 INFO    ] Checking for camera pi updates...
[2026-06-22 00:56:30,621.621 INFO    ] 200
[2026-06-22 00:56:30,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:56:30,670.670 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:56:30,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:56:30,822.822 INFO    ] No camera update needed
[2026-06-22 00:56:30,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:56:30,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:56:30,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:56:30,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:56:32,882.882 INFO    ] ================================================
[2026-06-22 00:56:32,898.898 INFO    ] Launching Daemon at Mon Jun 22 00:56:32 IST 2026
[2026-06-22 00:56:32,908.908 INFO    ] ================================================
[2026-06-22 00:56:33,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:56:33
[2026-06-22 00:56:34,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:56:34,375.375 INFO    ] Initializing speech engine...
[2026-06-22 00:56:34,382.382 INFO    ] 2026-06-22 00:56:34
[2026-06-22 00:56:34,672.672 INFO    ] 2026-06-22 00:56:34
[2026-06-22 00:56:34,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:56:34,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:56:35,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:56:35,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:56:35,222.222 INFO    ] time= 22/06/2026 00:56:35
[2026-06-22 00:56:35,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:56:35,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:56:35,382.382 INFO    ] No existing commands found in stream
[2026-06-22 00:56:40,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:56:40,414.414 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-22 00:56:43,252.252 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:56:43,254.254 INFO    ] Checking for system updates...
[2026-06-22 00:56:43,275.275 INFO    ] 200
[2026-06-22 00:56:43,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:56:43,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:56:43,308.308 INFO    ] No update needed
[2026-06-22 00:56:43,310.310 INFO    ] Checking for camera pi updates...
[2026-06-22 00:56:43,334.334 INFO    ] 200
[2026-06-22 00:56:43,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:56:43,379.379 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:56:43,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:56:43,462.462 INFO    ] No camera update needed
[2026-06-22 00:56:43,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:56:43,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:56:43,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:56:43,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:56:45,521.521 INFO    ] ================================================
[2026-06-22 00:56:45,536.536 INFO    ] Launching Daemon at Mon Jun 22 00:56:45 IST 2026
[2026-06-22 00:56:45,546.546 INFO    ] ================================================
[2026-06-22 00:56:46,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:56:46
[2026-06-22 00:56:46,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:56:46,957.957 INFO    ] Initializing speech engine...
[2026-06-22 00:56:46,960.960 INFO    ] 2026-06-22 00:56:46
[2026-06-22 00:56:47,240.240 INFO    ] 2026-06-22 00:56:47
[2026-06-22 00:56:47,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:56:47,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:56:47,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:56:47,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:56:47,617.617 INFO    ] time= 22/06/2026 00:56:47
[2026-06-22 00:56:47,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:56:47,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:56:47,767.767 INFO    ] No existing commands found in stream
[2026-06-22 00:56:52,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:56:52,795.795 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-22 00:56:55,835.835 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:56:55,837.837 INFO    ] Checking for system updates...
[2026-06-22 00:56:55,857.857 INFO    ] 200
[2026-06-22 00:56:55,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:56:55,889.889 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:56:55,890.890 INFO    ] No update needed
[2026-06-22 00:56:55,892.892 INFO    ] Checking for camera pi updates...
[2026-06-22 00:56:55,911.911 INFO    ] 200
[2026-06-22 00:56:55,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:56:55,935.935 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:56:56,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:56:56,035.035 INFO    ] No camera update needed
[2026-06-22 00:56:56,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:56:56,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:56:56,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:56:56,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:56:58,097.097 INFO    ] ================================================
[2026-06-22 00:56:58,112.112 INFO    ] Launching Daemon at Mon Jun 22 00:56:58 IST 2026
[2026-06-22 00:56:58,123.123 INFO    ] ================================================
[2026-06-22 00:56:58,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:56:58
[2026-06-22 00:56:59,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:56:59,455.455 INFO    ] Initializing speech engine...
[2026-06-22 00:56:59,471.471 INFO    ] 2026-06-22 00:56:59
[2026-06-22 00:56:59,754.754 INFO    ] 2026-06-22 00:56:59
[2026-06-22 00:56:59,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:56:59,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:57:00,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:57:00,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:57:00,169.169 INFO    ] time= 22/06/2026 00:57:00
[2026-06-22 00:57:00,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:57:00,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:57:00,334.334 INFO    ] No existing commands found in stream
[2026-06-22 00:57:05,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:57:05,362.362 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-22 00:57:07,766.766 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:57:07,768.768 INFO    ] Checking for system updates...
[2026-06-22 00:57:07,804.804 INFO    ] 200
[2026-06-22 00:57:07,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:57:07,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:57:07,865.865 INFO    ] No update needed
[2026-06-22 00:57:07,868.868 INFO    ] Checking for camera pi updates...
[2026-06-22 00:57:07,905.905 INFO    ] 200
[2026-06-22 00:57:07,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:57:07,952.952 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:57:08,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:57:08,049.049 INFO    ] No camera update needed
[2026-06-22 00:57:08,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:57:08,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:57:08,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:57:08,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:57:10,105.105 INFO    ] ================================================
[2026-06-22 00:57:10,121.121 INFO    ] Launching Daemon at Mon Jun 22 00:57:10 IST 2026
[2026-06-22 00:57:10,132.132 INFO    ] ================================================
[2026-06-22 00:57:10,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:57:10
[2026-06-22 00:57:11,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:57:11,581.581 INFO    ] Initializing speech engine...
[2026-06-22 00:57:11,590.590 INFO    ] 2026-06-22 00:57:11
[2026-06-22 00:57:11,883.883 INFO    ] 2026-06-22 00:57:11
[2026-06-22 00:57:11,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:57:12,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:57:12,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:57:12,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:57:12,303.303 INFO    ] time= 22/06/2026 00:57:12
[2026-06-22 00:57:12,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:57:12,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:57:12,465.465 INFO    ] No existing commands found in stream
[2026-06-22 00:57:17,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:57:17,493.493 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-22 00:57:21,674.674 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:57:21,677.677 INFO    ] Checking for system updates...
[2026-06-22 00:57:21,713.713 INFO    ] 200
[2026-06-22 00:57:21,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:57:21,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:57:21,780.780 INFO    ] No update needed
[2026-06-22 00:57:21,782.782 INFO    ] Checking for camera pi updates...
[2026-06-22 00:57:21,817.817 INFO    ] 200
[2026-06-22 00:57:21,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:57:21,861.861 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:57:21,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:57:21,943.943 INFO    ] No camera update needed
[2026-06-22 00:57:21,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:57:21,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:57:21,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:57:21,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:57:24,998.998 INFO    ] ================================================
[2026-06-22 00:57:24,013.013 INFO    ] Launching Daemon at Mon Jun 22 00:57:24 IST 2026
[2026-06-22 00:57:24,024.024 INFO    ] ================================================
[2026-06-22 00:57:24,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:57:24
[2026-06-22 00:57:25,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:57:25,365.365 INFO    ] Initializing speech engine...
[2026-06-22 00:57:25,374.374 INFO    ] 2026-06-22 00:57:25
[2026-06-22 00:57:25,635.635 INFO    ] 2026-06-22 00:57:25
[2026-06-22 00:57:25,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:57:25,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:57:25,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:57:26,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:57:26,122.122 INFO    ] time= 22/06/2026 00:57:26
[2026-06-22 00:57:26,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:57:26,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:57:26,267.267 INFO    ] No existing commands found in stream
[2026-06-22 00:57:31,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:57:31,306.306 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-22 00:57:32,812.812 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:57:32,816.816 INFO    ] Checking for system updates...
[2026-06-22 00:57:32,854.854 INFO    ] 200
[2026-06-22 00:57:32,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:57:32,911.911 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:57:32,913.913 INFO    ] No update needed
[2026-06-22 00:57:32,916.916 INFO    ] Checking for camera pi updates...
[2026-06-22 00:57:32,950.950 INFO    ] 200
[2026-06-22 00:57:32,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:57:32,996.996 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:57:33,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:57:33,092.092 INFO    ] No camera update needed
[2026-06-22 00:57:33,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:57:33,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:57:33,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:57:33,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:57:35,151.151 INFO    ] ================================================
[2026-06-22 00:57:35,166.166 INFO    ] Launching Daemon at Mon Jun 22 00:57:35 IST 2026
[2026-06-22 00:57:35,176.176 INFO    ] ================================================
[2026-06-22 00:57:35,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:57:35
[2026-06-22 00:57:36,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:57:36,527.527 INFO    ] Initializing speech engine...
[2026-06-22 00:57:36,534.534 INFO    ] 2026-06-22 00:57:36
[2026-06-22 00:57:36,796.796 INFO    ] 2026-06-22 00:57:36
[2026-06-22 00:57:36,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:57:37,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:57:37,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:57:37,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:57:37,296.296 INFO    ] time= 22/06/2026 00:57:37
[2026-06-22 00:57:37,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:57:37,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:57:37,467.467 INFO    ] No existing commands found in stream
[2026-06-22 00:57:42,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:57:42,497.497 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-22 00:57:43,578.578 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:57:43,580.580 INFO    ] Checking for system updates...
[2026-06-22 00:57:43,619.619 INFO    ] 200
[2026-06-22 00:57:43,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:57:43,675.675 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:57:43,677.677 INFO    ] No update needed
[2026-06-22 00:57:43,679.679 INFO    ] Checking for camera pi updates...
[2026-06-22 00:57:43,714.714 INFO    ] 200
[2026-06-22 00:57:43,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:57:43,761.761 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:57:43,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:57:43,856.856 INFO    ] No camera update needed
[2026-06-22 00:57:43,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:57:43,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:57:43,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:57:43,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:57:45,912.912 INFO    ] ================================================
[2026-06-22 00:57:45,927.927 INFO    ] Launching Daemon at Mon Jun 22 00:57:45 IST 2026
[2026-06-22 00:57:45,938.938 INFO    ] ================================================
[2026-06-22 00:57:46,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:57:46
[2026-06-22 00:57:47,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:57:47,262.262 INFO    ] Initializing speech engine...
[2026-06-22 00:57:47,270.270 INFO    ] 2026-06-22 00:57:47
[2026-06-22 00:57:47,562.562 INFO    ] 2026-06-22 00:57:47
[2026-06-22 00:57:47,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:57:47,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:57:47,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:57:47,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:57:47,954.954 INFO    ] time= 22/06/2026 00:57:47
[2026-06-22 00:57:47,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:57:47,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:57:48,064.064 INFO    ] No existing commands found in stream
[2026-06-22 00:57:53,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:57:53,082.082 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-22 00:57:57,332.332 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 00:57:57,335.335 INFO    ] Checking for system updates...
[2026-06-22 00:57:57,372.372 INFO    ] 200
[2026-06-22 00:57:57,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:57:57,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:57:57,430.430 INFO    ] No update needed
[2026-06-22 00:57:57,432.432 INFO    ] Checking for camera pi updates...
[2026-06-22 00:57:57,466.466 INFO    ] 200
[2026-06-22 00:57:57,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:57:57,510.510 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:57:57,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:57:57,595.595 INFO    ] No camera update needed
[2026-06-22 00:57:57,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:57:57,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:57:57,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:57:57,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:57:59,649.649 INFO    ] ================================================
[2026-06-22 00:57:59,665.665 INFO    ] Launching Daemon at Mon Jun 22 00:57:59 IST 2026
[2026-06-22 00:57:59,675.675 INFO    ] ================================================
[2026-06-22 00:58:00,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:58:00
[2026-06-22 00:58:00,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:58:01,160.160 INFO    ] Initializing speech engine...
[2026-06-22 00:58:01,170.170 INFO    ] 2026-06-22 00:58:01
[2026-06-22 00:58:01,449.449 INFO    ] 2026-06-22 00:58:01
[2026-06-22 00:58:01,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:58:01,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:58:01,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:58:01,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:58:01,917.917 INFO    ] time= 22/06/2026 00:58:01
[2026-06-22 00:58:01,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:58:01,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:58:02,033.033 INFO    ] No existing commands found in stream
[2026-06-22 00:58:07,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:58:07,050.050 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-22 00:58:10,459.459 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:58:10,462.462 INFO    ] Checking for system updates...
[2026-06-22 00:58:10,499.499 INFO    ] 200
[2026-06-22 00:58:10,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:58:10,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:58:10,565.565 INFO    ] No update needed
[2026-06-22 00:58:10,568.568 INFO    ] Checking for camera pi updates...
[2026-06-22 00:58:10,603.603 INFO    ] 200
[2026-06-22 00:58:10,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:58:10,628.628 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:58:10,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:58:10,733.733 INFO    ] No camera update needed
[2026-06-22 00:58:10,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:58:10,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:58:10,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:58:10,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:58:12,790.790 INFO    ] ================================================
[2026-06-22 00:58:12,805.805 INFO    ] Launching Daemon at Mon Jun 22 00:58:12 IST 2026
[2026-06-22 00:58:12,816.816 INFO    ] ================================================
[2026-06-22 00:58:13,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:58:13
[2026-06-22 00:58:13,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:58:14,131.131 INFO    ] Initializing speech engine...
[2026-06-22 00:58:14,138.138 INFO    ] 2026-06-22 00:58:14
[2026-06-22 00:58:14,412.412 INFO    ] 2026-06-22 00:58:14
[2026-06-22 00:58:14,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:58:14,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:58:14,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:58:14,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:58:14,788.788 INFO    ] time= 22/06/2026 00:58:14
[2026-06-22 00:58:14,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:58:14,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:58:14,867.867 INFO    ] No existing commands found in stream
[2026-06-22 00:58:19,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:58:19,900.900 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-22 00:58:21,128.128 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:58:21,130.130 INFO    ] Checking for system updates...
[2026-06-22 00:58:21,166.166 INFO    ] 200
[2026-06-22 00:58:21,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:58:21,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:58:21,223.223 INFO    ] No update needed
[2026-06-22 00:58:21,225.225 INFO    ] Checking for camera pi updates...
[2026-06-22 00:58:21,262.262 INFO    ] 200
[2026-06-22 00:58:21,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:58:21,309.309 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:58:21,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:58:21,414.414 INFO    ] No camera update needed
[2026-06-22 00:58:21,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:58:21,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:58:21,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:58:21,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:58:23,471.471 INFO    ] ================================================
[2026-06-22 00:58:23,486.486 INFO    ] Launching Daemon at Mon Jun 22 00:58:23 IST 2026
[2026-06-22 00:58:23,497.497 INFO    ] ================================================
[2026-06-22 00:58:24,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:58:24
[2026-06-22 00:58:24,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:58:24,819.819 INFO    ] Initializing speech engine...
[2026-06-22 00:58:24,832.832 INFO    ] 2026-06-22 00:58:24
[2026-06-22 00:58:25,113.113 INFO    ] 2026-06-22 00:58:25
[2026-06-22 00:58:25,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:58:25,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:58:25,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:58:25,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:58:25,463.463 INFO    ] time= 22/06/2026 00:58:25
[2026-06-22 00:58:25,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:58:25,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:58:25,547.547 INFO    ] No existing commands found in stream
[2026-06-22 00:58:30,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:58:30,576.576 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-22 00:58:33,260.260 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:58:33,263.263 INFO    ] Checking for system updates...
[2026-06-22 00:58:33,299.299 INFO    ] 200
[2026-06-22 00:58:33,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:58:33,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:58:33,356.356 INFO    ] No update needed
[2026-06-22 00:58:33,359.359 INFO    ] Checking for camera pi updates...
[2026-06-22 00:58:33,392.392 INFO    ] 200
[2026-06-22 00:58:33,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:58:33,436.436 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:58:33,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:58:33,529.529 INFO    ] No camera update needed
[2026-06-22 00:58:33,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:58:33,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:58:33,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:58:33,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:58:35,585.585 INFO    ] ================================================
[2026-06-22 00:58:35,600.600 INFO    ] Launching Daemon at Mon Jun 22 00:58:35 IST 2026
[2026-06-22 00:58:35,611.611 INFO    ] ================================================
[2026-06-22 00:58:36,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:58:36
[2026-06-22 00:58:36,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:58:37,190.190 INFO    ] Initializing speech engine...
[2026-06-22 00:58:37,199.199 INFO    ] 2026-06-22 00:58:37
[2026-06-22 00:58:37,477.477 INFO    ] 2026-06-22 00:58:37
[2026-06-22 00:58:37,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:58:37,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:58:37,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:58:37,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:58:37,913.913 INFO    ] time= 22/06/2026 00:58:37
[2026-06-22 00:58:37,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:58:38,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:58:38,101.101 INFO    ] No existing commands found in stream
[2026-06-22 00:58:43,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:58:43,118.118 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-22 00:58:44,251.251 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:58:44,253.253 INFO    ] Checking for system updates...
[2026-06-22 00:58:44,274.274 INFO    ] 200
[2026-06-22 00:58:44,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:58:44,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:58:44,307.307 INFO    ] No update needed
[2026-06-22 00:58:44,309.309 INFO    ] Checking for camera pi updates...
[2026-06-22 00:58:44,343.343 INFO    ] 200
[2026-06-22 00:58:44,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:58:44,388.388 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:58:44,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:58:44,568.568 INFO    ] No camera update needed
[2026-06-22 00:58:44,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:58:44,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:58:44,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:58:44,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:58:46,624.624 INFO    ] ================================================
[2026-06-22 00:58:46,638.638 INFO    ] Launching Daemon at Mon Jun 22 00:58:46 IST 2026
[2026-06-22 00:58:46,649.649 INFO    ] ================================================
[2026-06-22 00:58:47,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:58:47
[2026-06-22 00:58:47,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:58:48,005.005 INFO    ] Initializing speech engine...
[2026-06-22 00:58:48,021.021 INFO    ] 2026-06-22 00:58:48
[2026-06-22 00:58:48,276.276 INFO    ] 2026-06-22 00:58:48
[2026-06-22 00:58:48,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:58:48,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:58:48,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:58:48,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:58:48,646.646 INFO    ] time= 22/06/2026 00:58:48
[2026-06-22 00:58:48,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:58:48,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:58:48,827.827 INFO    ] No existing commands found in stream
[2026-06-22 00:58:53,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:58:53,859.859 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-22 00:58:56,337.337 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 00:58:56,340.340 INFO    ] Checking for system updates...
[2026-06-22 00:58:56,379.379 INFO    ] 200
[2026-06-22 00:58:56,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:58:56,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:58:56,437.437 INFO    ] No update needed
[2026-06-22 00:58:56,439.439 INFO    ] Checking for camera pi updates...
[2026-06-22 00:58:56,473.473 INFO    ] 200
[2026-06-22 00:58:56,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:58:56,521.521 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:58:56,608.608 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:58:56,611.611 INFO    ] No camera update needed
[2026-06-22 00:58:56,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:58:56,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:58:56,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:58:56,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:58:58,666.666 INFO    ] ================================================
[2026-06-22 00:58:58,682.682 INFO    ] Launching Daemon at Mon Jun 22 00:58:58 IST 2026
[2026-06-22 00:58:58,692.692 INFO    ] ================================================
[2026-06-22 00:58:59,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:58:59
[2026-06-22 00:58:59,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:59:00,151.151 INFO    ] Initializing speech engine...
[2026-06-22 00:59:00,161.161 INFO    ] 2026-06-22 00:59:00
[2026-06-22 00:59:00,423.423 INFO    ] 2026-06-22 00:59:00
[2026-06-22 00:59:00,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:59:00,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:59:00,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:59:00,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:59:00,880.880 INFO    ] time= 22/06/2026 00:59:00
[2026-06-22 00:59:00,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:59:00,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:59:01,101.101 INFO    ] No existing commands found in stream
[2026-06-22 00:59:06,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:59:06,135.135 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-22 00:59:07,049.049 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 00:59:07,052.052 INFO    ] Checking for system updates...
[2026-06-22 00:59:07,089.089 INFO    ] 200
[2026-06-22 00:59:07,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:59:07,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:59:07,151.151 INFO    ] No update needed
[2026-06-22 00:59:07,153.153 INFO    ] Checking for camera pi updates...
[2026-06-22 00:59:07,187.187 INFO    ] 200
[2026-06-22 00:59:07,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:59:07,230.230 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:59:07,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:59:07,314.314 INFO    ] No camera update needed
[2026-06-22 00:59:07,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:59:07,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:59:07,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:59:07,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:59:09,369.369 INFO    ] ================================================
[2026-06-22 00:59:09,385.385 INFO    ] Launching Daemon at Mon Jun 22 00:59:09 IST 2026
[2026-06-22 00:59:09,395.395 INFO    ] ================================================
[2026-06-22 00:59:09,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:59:09
[2026-06-22 00:59:10,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:59:10,717.717 INFO    ] Initializing speech engine...
[2026-06-22 00:59:10,722.722 INFO    ] 2026-06-22 00:59:10
[2026-06-22 00:59:11,012.012 INFO    ] 2026-06-22 00:59:10
[2026-06-22 00:59:11,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:59:11,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:59:11,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:59:11,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:59:11,384.384 INFO    ] time= 22/06/2026 00:59:11
[2026-06-22 00:59:11,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:59:11,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:59:11,509.509 INFO    ] No existing commands found in stream
[2026-06-22 00:59:16,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:59:16,537.537 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-22 00:59:20,352.352 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:59:20,354.354 INFO    ] Checking for system updates...
[2026-06-22 00:59:20,374.374 INFO    ] 200
[2026-06-22 00:59:20,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:59:20,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:59:20,407.407 INFO    ] No update needed
[2026-06-22 00:59:20,408.408 INFO    ] Checking for camera pi updates...
[2026-06-22 00:59:20,429.429 INFO    ] 200
[2026-06-22 00:59:20,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:59:20,471.471 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:59:20,553.553 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:59:20,556.556 INFO    ] No camera update needed
[2026-06-22 00:59:20,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:59:20,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:59:20,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:59:20,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:59:22,611.611 INFO    ] ================================================
[2026-06-22 00:59:22,628.628 INFO    ] Launching Daemon at Mon Jun 22 00:59:22 IST 2026
[2026-06-22 00:59:22,639.639 INFO    ] ================================================
[2026-06-22 00:59:23,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:59:23
[2026-06-22 00:59:23,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:59:24,111.111 INFO    ] Initializing speech engine...
[2026-06-22 00:59:24,119.119 INFO    ] 2026-06-22 00:59:24
[2026-06-22 00:59:24,378.378 INFO    ] 2026-06-22 00:59:24
[2026-06-22 00:59:24,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:59:24,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:59:24,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:59:24,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:59:24,869.869 INFO    ] time= 22/06/2026 00:59:24
[2026-06-22 00:59:24,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:59:24,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:59:25,058.058 INFO    ] No existing commands found in stream
[2026-06-22 00:59:30,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:59:30,088.088 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-22 00:59:34,347.347 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 00:59:34,350.350 INFO    ] Checking for system updates...
[2026-06-22 00:59:34,385.385 INFO    ] 200
[2026-06-22 00:59:34,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:59:34,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:59:34,445.445 INFO    ] No update needed
[2026-06-22 00:59:34,447.447 INFO    ] Checking for camera pi updates...
[2026-06-22 00:59:34,489.489 INFO    ] 200
[2026-06-22 00:59:34,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:59:34,535.535 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:59:34,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:59:34,614.614 INFO    ] No camera update needed
[2026-06-22 00:59:34,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:59:34,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:59:34,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:59:34,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:59:36,669.669 INFO    ] ================================================
[2026-06-22 00:59:36,684.684 INFO    ] Launching Daemon at Mon Jun 22 00:59:36 IST 2026
[2026-06-22 00:59:36,695.695 INFO    ] ================================================
[2026-06-22 00:59:37,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:59:37
[2026-06-22 00:59:37,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:59:38,240.240 INFO    ] Initializing speech engine...
[2026-06-22 00:59:38,248.248 INFO    ] 2026-06-22 00:59:38
[2026-06-22 00:59:38,536.536 INFO    ] 2026-06-22 00:59:38
[2026-06-22 00:59:38,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:59:38,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:59:38,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:59:39,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:59:39,067.067 INFO    ] time= 22/06/2026 00:59:39
[2026-06-22 00:59:39,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:59:39,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:59:39,206.206 INFO    ] No existing commands found in stream
[2026-06-22 00:59:44,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:59:44,235.235 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-22 00:59:46,180.180 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 00:59:46,181.181 INFO    ] Checking for system updates...
[2026-06-22 00:59:46,202.202 INFO    ] 200
[2026-06-22 00:59:46,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:59:46,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:59:46,235.235 INFO    ] No update needed
[2026-06-22 00:59:46,237.237 INFO    ] Checking for camera pi updates...
[2026-06-22 00:59:46,257.257 INFO    ] 200
[2026-06-22 00:59:46,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:59:46,301.301 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 00:59:46,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 00:59:46,386.386 INFO    ] No camera update needed
[2026-06-22 00:59:46,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-22 00:59:46,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 00:59:46,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 00:59:46,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 00:59:48,443.443 INFO    ] ================================================
[2026-06-22 00:59:48,458.458 INFO    ] Launching Daemon at Mon Jun 22 00:59:48 IST 2026
[2026-06-22 00:59:48,469.469 INFO    ] ================================================
[2026-06-22 00:59:49,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 00:59:49
[2026-06-22 00:59:49,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 00:59:49,792.792 INFO    ] Initializing speech engine...
[2026-06-22 00:59:49,798.798 INFO    ] 2026-06-22 00:59:49
[2026-06-22 00:59:50,089.089 INFO    ] 2026-06-22 00:59:50
[2026-06-22 00:59:50,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 00:59:50,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 00:59:50,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 00:59:50,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 00:59:50,460.460 INFO    ] time= 22/06/2026 00:59:50
[2026-06-22 00:59:50,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 00:59:50,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-22 00:59:50,583.583 INFO    ] No existing commands found in stream
[2026-06-22 00:59:55,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 00:59:55,598.598 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-22 00:59:59,921.921 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 00:59:59,922.922 INFO    ] Checking for system updates...
[2026-06-22 00:59:59,943.943 INFO    ] 200
[2026-06-22 00:59:59,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 00:59:59,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 00:59:59,977.977 INFO    ] No update needed
[2026-06-22 00:59:59,978.978 INFO    ] Checking for camera pi updates...
[2026-06-22 01:00:00,015.015 INFO    ] 200
[2026-06-22 01:00:00,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:00:00,068.068 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:00:00,148.148 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:00:00,151.151 INFO    ] No camera update needed
[2026-06-22 01:00:00,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:00:00,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:00:00,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:00:00,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:00:02,238.238 INFO    ] ================================================
[2026-06-22 01:00:02,356.356 INFO    ] Launching Daemon at Mon Jun 22 01:00:02 IST 2026
[2026-06-22 01:00:02,417.417 INFO    ] ================================================
[2026-06-22 01:00:04,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:00:04
[2026-06-22 01:00:06,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:00:06,448.448 INFO    ] Initializing speech engine...
[2026-06-22 01:00:06,463.463 INFO    ] 2026-06-22 01:00:06
[2026-06-22 01:00:06,742.742 INFO    ] 2026-06-22 01:00:06
[2026-06-22 01:00:06,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:00:07,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:00:07,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:00:07,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:00:07,222.222 INFO    ] time= 22/06/2026 01:00:07
[2026-06-22 01:00:07,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:00:07,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:00:07,367.367 INFO    ] No existing commands found in stream
[2026-06-22 01:00:12,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:00:12,382.382 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-22 01:00:14,062.062 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:00:14,063.063 INFO    ] Checking for system updates...
[2026-06-22 01:00:14,086.086 INFO    ] 200
[2026-06-22 01:00:14,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:00:14,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:00:14,132.132 INFO    ] No update needed
[2026-06-22 01:00:14,135.135 INFO    ] Checking for camera pi updates...
[2026-06-22 01:00:14,176.176 INFO    ] 200
[2026-06-22 01:00:14,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:00:14,226.226 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:00:14,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:00:14,319.319 INFO    ] No camera update needed
[2026-06-22 01:00:14,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:00:14,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:00:14,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:00:14,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:00:16,379.379 INFO    ] ================================================
[2026-06-22 01:00:16,395.395 INFO    ] Launching Daemon at Mon Jun 22 01:00:16 IST 2026
[2026-06-22 01:00:16,406.406 INFO    ] ================================================
[2026-06-22 01:00:17,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:00:17
[2026-06-22 01:00:17,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:00:17,942.942 INFO    ] Initializing speech engine...
[2026-06-22 01:00:17,950.950 INFO    ] 2026-06-22 01:00:17
[2026-06-22 01:00:18,252.252 INFO    ] 2026-06-22 01:00:18
[2026-06-22 01:00:18,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:00:18,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:00:18,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:00:18,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:00:18,715.715 INFO    ] time= 22/06/2026 01:00:18
[2026-06-22 01:00:18,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:00:18,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:00:18,859.859 INFO    ] No existing commands found in stream
[2026-06-22 01:00:23,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:00:23,875.875 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-22 01:00:26,315.315 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:00:26,318.318 INFO    ] Checking for system updates...
[2026-06-22 01:00:26,354.354 INFO    ] 200
[2026-06-22 01:00:26,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:00:26,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:00:26,412.412 INFO    ] No update needed
[2026-06-22 01:00:26,414.414 INFO    ] Checking for camera pi updates...
[2026-06-22 01:00:26,452.452 INFO    ] 200
[2026-06-22 01:00:26,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:00:26,495.495 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:00:26,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:00:26,583.583 INFO    ] No camera update needed
[2026-06-22 01:00:26,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:00:26,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:00:26,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:00:26,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:00:28,639.639 INFO    ] ================================================
[2026-06-22 01:00:28,654.654 INFO    ] Launching Daemon at Mon Jun 22 01:00:28 IST 2026
[2026-06-22 01:00:28,665.665 INFO    ] ================================================
[2026-06-22 01:00:29,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:00:29
[2026-06-22 01:00:29,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:00:30,079.079 INFO    ] Initializing speech engine...
[2026-06-22 01:00:30,085.085 INFO    ] 2026-06-22 01:00:30
[2026-06-22 01:00:30,388.388 INFO    ] 2026-06-22 01:00:30
[2026-06-22 01:00:30,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:00:30,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:00:30,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:00:30,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:00:30,777.777 INFO    ] time= 22/06/2026 01:00:30
[2026-06-22 01:00:30,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:00:30,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:00:30,905.905 INFO    ] No existing commands found in stream
[2026-06-22 01:00:35,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:00:35,920.920 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-22 01:00:36,284.284 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:00:36,287.287 INFO    ] Checking for system updates...
[2026-06-22 01:00:36,327.327 INFO    ] 200
[2026-06-22 01:00:36,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:00:36,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:00:36,386.386 INFO    ] No update needed
[2026-06-22 01:00:36,388.388 INFO    ] Checking for camera pi updates...
[2026-06-22 01:00:36,423.423 INFO    ] 200
[2026-06-22 01:00:36,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:00:36,472.472 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:00:36,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:00:36,570.570 INFO    ] No camera update needed
[2026-06-22 01:00:36,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:00:36,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:00:36,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:00:36,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:00:38,625.625 INFO    ] ================================================
[2026-06-22 01:00:38,798.798 INFO    ] Launching Daemon at Mon Jun 22 01:00:38 IST 2026
[2026-06-22 01:00:38,811.811 INFO    ] ================================================
[2026-06-22 01:00:39,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:00:39
[2026-06-22 01:00:40,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:00:40,281.281 INFO    ] Initializing speech engine...
[2026-06-22 01:00:40,290.290 INFO    ] 2026-06-22 01:00:40
[2026-06-22 01:00:40,552.552 INFO    ] 2026-06-22 01:00:40
[2026-06-22 01:00:40,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:00:40,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:00:40,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:00:40,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:00:41,019.019 INFO    ] time= 22/06/2026 01:00:40
[2026-06-22 01:00:41,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:00:41,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:00:41,165.165 INFO    ] No existing commands found in stream
[2026-06-22 01:00:46,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:00:46,179.179 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-22 01:00:49,214.214 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:00:49,216.216 INFO    ] Checking for system updates...
[2026-06-22 01:00:49,237.237 INFO    ] 200
[2026-06-22 01:00:49,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:00:49,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:00:49,270.270 INFO    ] No update needed
[2026-06-22 01:00:49,272.272 INFO    ] Checking for camera pi updates...
[2026-06-22 01:00:49,291.291 INFO    ] 200
[2026-06-22 01:00:49,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:00:49,318.318 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:00:49,501.501 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:00:49,504.504 INFO    ] No camera update needed
[2026-06-22 01:00:49,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:00:49,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:00:49,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:00:49,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:00:51,565.565 INFO    ] ================================================
[2026-06-22 01:00:51,580.580 INFO    ] Launching Daemon at Mon Jun 22 01:00:51 IST 2026
[2026-06-22 01:00:51,591.591 INFO    ] ================================================
[2026-06-22 01:00:52,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:00:52
[2026-06-22 01:00:52,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:00:52,959.959 INFO    ] Initializing speech engine...
[2026-06-22 01:00:52,968.968 INFO    ] 2026-06-22 01:00:52
[2026-06-22 01:00:53,230.230 INFO    ] 2026-06-22 01:00:53
[2026-06-22 01:00:53,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:00:53,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:00:53,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:00:53,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:00:53,690.690 INFO    ] time= 22/06/2026 01:00:53
[2026-06-22 01:00:53,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:00:53,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:00:53,834.834 INFO    ] No existing commands found in stream
[2026-06-22 01:00:58,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:00:58,891.891 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-22 01:01:00,060.060 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:01:00,063.063 INFO    ] Checking for system updates...
[2026-06-22 01:01:00,101.101 INFO    ] 200
[2026-06-22 01:01:00,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:01:00,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:01:00,161.161 INFO    ] No update needed
[2026-06-22 01:01:00,163.163 INFO    ] Checking for camera pi updates...
[2026-06-22 01:01:00,197.197 INFO    ] 200
[2026-06-22 01:01:00,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:01:00,248.248 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:01:00,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:01:00,332.332 INFO    ] No camera update needed
[2026-06-22 01:01:00,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:01:00,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:01:00,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:01:00,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:01:02,409.409 INFO    ] ================================================
[2026-06-22 01:01:02,428.428 INFO    ] Launching Daemon at Mon Jun 22 01:01:02 IST 2026
[2026-06-22 01:01:02,446.446 INFO    ] ================================================
[2026-06-22 01:01:03,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:01:03
[2026-06-22 01:01:03,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:01:03,982.982 INFO    ] Initializing speech engine...
[2026-06-22 01:01:03,992.992 INFO    ] 2026-06-22 01:01:03
[2026-06-22 01:01:04,240.240 INFO    ] 2026-06-22 01:01:04
[2026-06-22 01:01:04,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:01:04,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:01:04,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:01:04,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:01:04,610.610 INFO    ] time= 22/06/2026 01:01:04
[2026-06-22 01:01:04,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:01:04,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:01:04,770.770 INFO    ] No existing commands found in stream
[2026-06-22 01:01:09,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:01:09,798.798 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-22 01:01:15,470.470 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:01:15,473.473 INFO    ] Checking for system updates...
[2026-06-22 01:01:15,510.510 INFO    ] 200
[2026-06-22 01:01:15,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:01:15,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:01:15,574.574 INFO    ] No update needed
[2026-06-22 01:01:15,577.577 INFO    ] Checking for camera pi updates...
[2026-06-22 01:01:15,612.612 INFO    ] 200
[2026-06-22 01:01:15,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:01:15,655.655 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:01:15,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:01:15,740.740 INFO    ] No camera update needed
[2026-06-22 01:01:15,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:01:15,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:01:15,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:01:15,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:01:17,788.788 INFO    ] ================================================
[2026-06-22 01:01:17,804.804 INFO    ] Launching Daemon at Mon Jun 22 01:01:17 IST 2026
[2026-06-22 01:01:17,815.815 INFO    ] ================================================
[2026-06-22 01:01:18,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:01:18
[2026-06-22 01:01:18,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:01:19,177.177 INFO    ] Initializing speech engine...
[2026-06-22 01:01:19,182.182 INFO    ] 2026-06-22 01:01:19
[2026-06-22 01:01:19,480.480 INFO    ] 2026-06-22 01:01:19
[2026-06-22 01:01:19,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:01:19,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:01:19,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:01:19,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:01:19,858.858 INFO    ] time= 22/06/2026 01:01:19
[2026-06-22 01:01:19,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:01:19,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:01:19,980.980 INFO    ] No existing commands found in stream
[2026-06-22 01:01:24,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:01:24,993.993 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-22 01:01:27,772.772 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:01:27,774.774 INFO    ] Checking for system updates...
[2026-06-22 01:01:27,794.794 INFO    ] 200
[2026-06-22 01:01:27,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:01:27,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:01:27,830.830 INFO    ] No update needed
[2026-06-22 01:01:27,831.831 INFO    ] Checking for camera pi updates...
[2026-06-22 01:01:27,851.851 INFO    ] 200
[2026-06-22 01:01:27,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:01:27,889.889 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:01:27,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:01:27,969.969 INFO    ] No camera update needed
[2026-06-22 01:01:27,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:01:27,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:01:27,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:01:27,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:01:30,029.029 INFO    ] ================================================
[2026-06-22 01:01:30,043.043 INFO    ] Launching Daemon at Mon Jun 22 01:01:30 IST 2026
[2026-06-22 01:01:30,054.054 INFO    ] ================================================
[2026-06-22 01:01:30,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:01:30
[2026-06-22 01:01:31,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:01:31,434.434 INFO    ] Initializing speech engine...
[2026-06-22 01:01:31,445.445 INFO    ] 2026-06-22 01:01:31
[2026-06-22 01:01:31,719.719 INFO    ] 2026-06-22 01:01:31
[2026-06-22 01:01:31,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:01:32,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:01:32,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:01:32,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:01:32,227.227 INFO    ] time= 22/06/2026 01:01:32
[2026-06-22 01:01:32,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:01:32,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:01:32,410.410 INFO    ] No existing commands found in stream
[2026-06-22 01:01:37,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:01:37,443.443 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-22 01:01:40,780.780 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:01:40,782.782 INFO    ] Checking for system updates...
[2026-06-22 01:01:40,818.818 INFO    ] 200
[2026-06-22 01:01:40,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:01:40,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:01:40,876.876 INFO    ] No update needed
[2026-06-22 01:01:40,878.878 INFO    ] Checking for camera pi updates...
[2026-06-22 01:01:40,912.912 INFO    ] 200
[2026-06-22 01:01:40,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:01:40,955.955 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:01:41,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:01:41,009.009 INFO    ] No camera update needed
[2026-06-22 01:01:41,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:01:41,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:01:41,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:01:41,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:01:43,065.065 INFO    ] ================================================
[2026-06-22 01:01:43,081.081 INFO    ] Launching Daemon at Mon Jun 22 01:01:43 IST 2026
[2026-06-22 01:01:43,091.091 INFO    ] ================================================
[2026-06-22 01:01:43,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:01:43
[2026-06-22 01:01:44,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:01:44,543.543 INFO    ] Initializing speech engine...
[2026-06-22 01:01:44,553.553 INFO    ] 2026-06-22 01:01:44
[2026-06-22 01:01:44,802.802 INFO    ] 2026-06-22 01:01:44
[2026-06-22 01:01:44,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:01:45,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:01:45,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:01:45,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:01:45,181.181 INFO    ] time= 22/06/2026 01:01:45
[2026-06-22 01:01:45,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:01:45,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:01:45,341.341 INFO    ] No existing commands found in stream
[2026-06-22 01:01:50,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:01:50,374.374 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-22 01:01:51,727.727 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:01:51,729.729 INFO    ] Checking for system updates...
[2026-06-22 01:01:51,749.749 INFO    ] 200
[2026-06-22 01:01:51,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:01:51,790.790 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:01:51,792.792 INFO    ] No update needed
[2026-06-22 01:01:51,795.795 INFO    ] Checking for camera pi updates...
[2026-06-22 01:01:51,830.830 INFO    ] 200
[2026-06-22 01:01:51,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:01:51,874.874 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:01:51,970.970 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:01:51,972.972 INFO    ] No camera update needed
[2026-06-22 01:01:51,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:01:51,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:01:51,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:01:51,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:01:54,030.030 INFO    ] ================================================
[2026-06-22 01:01:54,046.046 INFO    ] Launching Daemon at Mon Jun 22 01:01:54 IST 2026
[2026-06-22 01:01:54,057.057 INFO    ] ================================================
[2026-06-22 01:01:54,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:01:54
[2026-06-22 01:01:55,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:01:55,523.523 INFO    ] Initializing speech engine...
[2026-06-22 01:01:55,531.531 INFO    ] 2026-06-22 01:01:55
[2026-06-22 01:01:55,779.779 INFO    ] 2026-06-22 01:01:55
[2026-06-22 01:01:55,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:01:55,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:01:55,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:01:56,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:01:56,147.147 INFO    ] time= 22/06/2026 01:01:56
[2026-06-22 01:01:56,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:01:56,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:01:56,224.224 INFO    ] No existing commands found in stream
[2026-06-22 01:02:01,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:02:01,261.261 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-22 01:02:02,799.799 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:02:02,803.803 INFO    ] Checking for system updates...
[2026-06-22 01:02:02,853.853 INFO    ] 200
[2026-06-22 01:02:02,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:02:02,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:02:02,917.917 INFO    ] No update needed
[2026-06-22 01:02:02,920.920 INFO    ] Checking for camera pi updates...
[2026-06-22 01:02:02,955.955 INFO    ] 200
[2026-06-22 01:02:02,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:02:03,000.000 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:02:03,050.050 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:02:03,052.052 INFO    ] No camera update needed
[2026-06-22 01:02:03,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:02:03,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:02:03,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:02:03,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:02:05,111.111 INFO    ] ================================================
[2026-06-22 01:02:05,126.126 INFO    ] Launching Daemon at Mon Jun 22 01:02:05 IST 2026
[2026-06-22 01:02:05,137.137 INFO    ] ================================================
[2026-06-22 01:02:05,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:02:05
[2026-06-22 01:02:06,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:02:06,514.514 INFO    ] Initializing speech engine...
[2026-06-22 01:02:06,523.523 INFO    ] 2026-06-22 01:02:06
[2026-06-22 01:02:06,773.773 INFO    ] 2026-06-22 01:02:06
[2026-06-22 01:02:06,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:02:07,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:02:07,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:02:07,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:02:07,199.199 INFO    ] time= 22/06/2026 01:02:07
[2026-06-22 01:02:07,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:02:07,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:02:07,359.359 INFO    ] No existing commands found in stream
[2026-06-22 01:02:12,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:02:12,372.372 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-22 01:02:13,686.686 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:02:13,688.688 INFO    ] Checking for system updates...
[2026-06-22 01:02:13,725.725 INFO    ] 200
[2026-06-22 01:02:13,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:02:13,782.782 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:02:13,784.784 INFO    ] No update needed
[2026-06-22 01:02:13,787.787 INFO    ] Checking for camera pi updates...
[2026-06-22 01:02:13,822.822 INFO    ] 200
[2026-06-22 01:02:13,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:02:13,866.866 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:02:13,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:02:13,950.950 INFO    ] No camera update needed
[2026-06-22 01:02:13,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:02:13,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:02:13,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:02:13,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:02:16,007.007 INFO    ] ================================================
[2026-06-22 01:02:16,022.022 INFO    ] Launching Daemon at Mon Jun 22 01:02:16 IST 2026
[2026-06-22 01:02:16,033.033 INFO    ] ================================================
[2026-06-22 01:02:16,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:02:16
[2026-06-22 01:02:17,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:02:17,540.540 INFO    ] Initializing speech engine...
[2026-06-22 01:02:17,550.550 INFO    ] 2026-06-22 01:02:17
[2026-06-22 01:02:17,825.825 INFO    ] 2026-06-22 01:02:17
[2026-06-22 01:02:17,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:02:18,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:02:18,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:02:18,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:02:18,305.305 INFO    ] time= 22/06/2026 01:02:18
[2026-06-22 01:02:18,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:02:18,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:02:18,456.456 INFO    ] No existing commands found in stream
[2026-06-22 01:02:23,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:02:23,472.472 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-22 01:02:23,988.988 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:02:23,990.990 INFO    ] Checking for system updates...
[2026-06-22 01:02:24,011.011 INFO    ] 200
[2026-06-22 01:02:24,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:02:24,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:02:24,045.045 INFO    ] No update needed
[2026-06-22 01:02:24,046.046 INFO    ] Checking for camera pi updates...
[2026-06-22 01:02:24,075.075 INFO    ] 200
[2026-06-22 01:02:24,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:02:24,118.118 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:02:24,226.226 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:02:24,228.228 INFO    ] No camera update needed
[2026-06-22 01:02:24,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:02:24,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:02:24,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:02:24,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:02:26,286.286 INFO    ] ================================================
[2026-06-22 01:02:26,301.301 INFO    ] Launching Daemon at Mon Jun 22 01:02:26 IST 2026
[2026-06-22 01:02:26,312.312 INFO    ] ================================================
[2026-06-22 01:02:26,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:02:26
[2026-06-22 01:02:27,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:02:27,778.778 INFO    ] Initializing speech engine...
[2026-06-22 01:02:27,786.786 INFO    ] 2026-06-22 01:02:27
[2026-06-22 01:02:28,049.049 INFO    ] 2026-06-22 01:02:28
[2026-06-22 01:02:28,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:02:28,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:02:28,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:02:28,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:02:28,514.514 INFO    ] time= 22/06/2026 01:02:28
[2026-06-22 01:02:28,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:02:28,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:02:28,653.653 INFO    ] No existing commands found in stream
[2026-06-22 01:02:33,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:02:33,681.681 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-22 01:02:34,705.705 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:02:34,707.707 INFO    ] Checking for system updates...
[2026-06-22 01:02:34,743.743 INFO    ] 200
[2026-06-22 01:02:34,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:02:34,798.798 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:02:34,800.800 INFO    ] No update needed
[2026-06-22 01:02:34,803.803 INFO    ] Checking for camera pi updates...
[2026-06-22 01:02:34,836.836 INFO    ] 200
[2026-06-22 01:02:34,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:02:34,891.891 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:02:34,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:02:34,954.954 INFO    ] No camera update needed
[2026-06-22 01:02:34,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:02:34,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:02:34,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:02:34,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:02:37,009.009 INFO    ] ================================================
[2026-06-22 01:02:37,024.024 INFO    ] Launching Daemon at Mon Jun 22 01:02:37 IST 2026
[2026-06-22 01:02:37,035.035 INFO    ] ================================================
[2026-06-22 01:02:37,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:02:37
[2026-06-22 01:02:38,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:02:38,368.368 INFO    ] Initializing speech engine...
[2026-06-22 01:02:38,383.383 INFO    ] 2026-06-22 01:02:38
[2026-06-22 01:02:38,653.653 INFO    ] 2026-06-22 01:02:38
[2026-06-22 01:02:38,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:02:38,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:02:38,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:02:39,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:02:39,063.063 INFO    ] time= 22/06/2026 01:02:39
[2026-06-22 01:02:39,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:02:39,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:02:39,145.145 INFO    ] No existing commands found in stream
[2026-06-22 01:02:44,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:02:44,160.160 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-22 01:02:47,511.511 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:02:47,512.512 INFO    ] Checking for system updates...
[2026-06-22 01:02:47,533.533 INFO    ] 200
[2026-06-22 01:02:47,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:02:47,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:02:47,567.567 INFO    ] No update needed
[2026-06-22 01:02:47,570.570 INFO    ] Checking for camera pi updates...
[2026-06-22 01:02:47,608.608 INFO    ] 200
[2026-06-22 01:02:47,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:02:47,650.650 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:02:47,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:02:47,738.738 INFO    ] No camera update needed
[2026-06-22 01:02:47,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:02:47,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:02:47,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:02:47,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:02:49,793.793 INFO    ] ================================================
[2026-06-22 01:02:49,808.808 INFO    ] Launching Daemon at Mon Jun 22 01:02:49 IST 2026
[2026-06-22 01:02:49,819.819 INFO    ] ================================================
[2026-06-22 01:02:50,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:02:50
[2026-06-22 01:02:51,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:02:51,367.367 INFO    ] Initializing speech engine...
[2026-06-22 01:02:51,373.373 INFO    ] 2026-06-22 01:02:51
[2026-06-22 01:02:51,645.645 INFO    ] 2026-06-22 01:02:51
[2026-06-22 01:02:51,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:02:51,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:02:51,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:02:52,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:02:52,011.011 INFO    ] time= 22/06/2026 01:02:52
[2026-06-22 01:02:52,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:02:52,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:02:52,130.130 INFO    ] No existing commands found in stream
[2026-06-22 01:02:57,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:02:57,145.145 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-22 01:03:00,353.353 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:03:00,355.355 INFO    ] Checking for system updates...
[2026-06-22 01:03:00,391.391 INFO    ] 200
[2026-06-22 01:03:00,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:03:00,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:03:00,450.450 INFO    ] No update needed
[2026-06-22 01:03:00,452.452 INFO    ] Checking for camera pi updates...
[2026-06-22 01:03:00,486.486 INFO    ] 200
[2026-06-22 01:03:00,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:03:00,530.530 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:03:00,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:03:00,720.720 INFO    ] No camera update needed
[2026-06-22 01:03:00,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:03:00,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:03:00,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:03:00,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:03:02,781.781 INFO    ] ================================================
[2026-06-22 01:03:02,800.800 INFO    ] Launching Daemon at Mon Jun 22 01:03:02 IST 2026
[2026-06-22 01:03:02,816.816 INFO    ] ================================================
[2026-06-22 01:03:03,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:03:03
[2026-06-22 01:03:04,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:03:04,581.581 INFO    ] Initializing speech engine...
[2026-06-22 01:03:04,592.592 INFO    ] 2026-06-22 01:03:04
[2026-06-22 01:03:04,868.868 INFO    ] 2026-06-22 01:03:04
[2026-06-22 01:03:04,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:03:05,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:03:05,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:03:05,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:03:05,376.376 INFO    ] time= 22/06/2026 01:03:05
[2026-06-22 01:03:05,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:03:05,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:03:05,514.514 INFO    ] No existing commands found in stream
[2026-06-22 01:03:10,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:03:10,553.553 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-22 01:03:12,519.519 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:03:12,522.522 INFO    ] Checking for system updates...
[2026-06-22 01:03:12,564.564 INFO    ] 200
[2026-06-22 01:03:12,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:03:12,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:03:12,626.626 INFO    ] No update needed
[2026-06-22 01:03:12,629.629 INFO    ] Checking for camera pi updates...
[2026-06-22 01:03:12,668.668 INFO    ] 200
[2026-06-22 01:03:12,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:03:12,713.713 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:03:12,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:03:12,801.801 INFO    ] No camera update needed
[2026-06-22 01:03:12,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:03:12,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:03:12,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:03:12,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:03:14,851.851 INFO    ] ================================================
[2026-06-22 01:03:14,866.866 INFO    ] Launching Daemon at Mon Jun 22 01:03:14 IST 2026
[2026-06-22 01:03:14,877.877 INFO    ] ================================================
[2026-06-22 01:03:15,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:03:15
[2026-06-22 01:03:15,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:03:16,238.238 INFO    ] Initializing speech engine...
[2026-06-22 01:03:16,251.251 INFO    ] 2026-06-22 01:03:16
[2026-06-22 01:03:16,540.540 INFO    ] 2026-06-22 01:03:16
[2026-06-22 01:03:16,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:03:16,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:03:16,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:03:16,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:03:16,927.927 INFO    ] time= 22/06/2026 01:03:16
[2026-06-22 01:03:16,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:03:16,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:03:17,054.054 INFO    ] No existing commands found in stream
[2026-06-22 01:03:22,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:03:22,070.070 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-22 01:03:24,434.434 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:03:24,436.436 INFO    ] Checking for system updates...
[2026-06-22 01:03:24,456.456 INFO    ] 200
[2026-06-22 01:03:24,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:03:24,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:03:24,489.489 INFO    ] No update needed
[2026-06-22 01:03:24,490.490 INFO    ] Checking for camera pi updates...
[2026-06-22 01:03:24,523.523 INFO    ] 200
[2026-06-22 01:03:24,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:03:24,567.567 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:03:24,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:03:24,655.655 INFO    ] No camera update needed
[2026-06-22 01:03:24,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:03:24,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:03:24,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:03:24,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:03:26,711.711 INFO    ] ================================================
[2026-06-22 01:03:26,727.727 INFO    ] Launching Daemon at Mon Jun 22 01:03:26 IST 2026
[2026-06-22 01:03:26,738.738 INFO    ] ================================================
[2026-06-22 01:03:27,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:03:27
[2026-06-22 01:03:27,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:03:28,068.068 INFO    ] Initializing speech engine...
[2026-06-22 01:03:28,075.075 INFO    ] 2026-06-22 01:03:28
[2026-06-22 01:03:28,375.375 INFO    ] 2026-06-22 01:03:28
[2026-06-22 01:03:28,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:03:28,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:03:28,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:03:28,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:03:28,736.736 INFO    ] time= 22/06/2026 01:03:28
[2026-06-22 01:03:28,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:03:28,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:03:28,821.821 INFO    ] No existing commands found in stream
[2026-06-22 01:03:33,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:03:33,850.850 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-22 01:03:36,174.174 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:03:36,176.176 INFO    ] Checking for system updates...
[2026-06-22 01:03:36,197.197 INFO    ] 200
[2026-06-22 01:03:36,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:03:36,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:03:36,266.266 INFO    ] No update needed
[2026-06-22 01:03:36,269.269 INFO    ] Checking for camera pi updates...
[2026-06-22 01:03:36,304.304 INFO    ] 200
[2026-06-22 01:03:36,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:03:36,350.350 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:03:36,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:03:36,458.458 INFO    ] No camera update needed
[2026-06-22 01:03:36,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:03:36,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:03:36,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:03:36,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:03:38,517.517 INFO    ] ================================================
[2026-06-22 01:03:38,532.532 INFO    ] Launching Daemon at Mon Jun 22 01:03:38 IST 2026
[2026-06-22 01:03:38,543.543 INFO    ] ================================================
[2026-06-22 01:03:39,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:03:39
[2026-06-22 01:03:39,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:03:39,878.878 INFO    ] Initializing speech engine...
[2026-06-22 01:03:39,886.886 INFO    ] 2026-06-22 01:03:39
[2026-06-22 01:03:40,161.161 INFO    ] 2026-06-22 01:03:40
[2026-06-22 01:03:40,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:03:40,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:03:40,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:03:40,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:03:40,638.638 INFO    ] time= 22/06/2026 01:03:40
[2026-06-22 01:03:40,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:03:40,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:03:40,783.783 INFO    ] No existing commands found in stream
[2026-06-22 01:03:45,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:03:45,799.799 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-22 01:03:46,358.358 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:03:46,361.361 INFO    ] Checking for system updates...
[2026-06-22 01:03:46,398.398 INFO    ] 200
[2026-06-22 01:03:46,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:03:46,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:03:46,458.458 INFO    ] No update needed
[2026-06-22 01:03:46,461.461 INFO    ] Checking for camera pi updates...
[2026-06-22 01:03:46,495.495 INFO    ] 200
[2026-06-22 01:03:46,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:03:46,540.540 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:03:46,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:03:46,636.636 INFO    ] No camera update needed
[2026-06-22 01:03:46,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:03:46,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:03:46,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:03:46,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:03:48,698.698 INFO    ] ================================================
[2026-06-22 01:03:48,714.714 INFO    ] Launching Daemon at Mon Jun 22 01:03:48 IST 2026
[2026-06-22 01:03:48,724.724 INFO    ] ================================================
[2026-06-22 01:03:49,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:03:49
[2026-06-22 01:03:49,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:03:50,111.111 INFO    ] Initializing speech engine...
[2026-06-22 01:03:50,118.118 INFO    ] 2026-06-22 01:03:50
[2026-06-22 01:03:50,382.382 INFO    ] 2026-06-22 01:03:50
[2026-06-22 01:03:50,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:03:50,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:03:50,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:03:50,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:03:50,860.860 INFO    ] time= 22/06/2026 01:03:50
[2026-06-22 01:03:50,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:03:50,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:03:51,011.011 INFO    ] No existing commands found in stream
[2026-06-22 01:03:56,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:03:56,025.025 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-22 01:03:58,625.625 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:03:58,626.626 INFO    ] Checking for system updates...
[2026-06-22 01:03:58,647.647 INFO    ] 200
[2026-06-22 01:03:58,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:03:58,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:03:58,680.680 INFO    ] No update needed
[2026-06-22 01:03:58,684.684 INFO    ] Checking for camera pi updates...
[2026-06-22 01:03:58,711.711 INFO    ] 200
[2026-06-22 01:03:58,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:03:58,753.753 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:03:58,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:03:58,843.843 INFO    ] No camera update needed
[2026-06-22 01:03:58,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:03:58,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:03:58,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:03:58,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:04:00,899.899 INFO    ] ================================================
[2026-06-22 01:04:00,914.914 INFO    ] Launching Daemon at Mon Jun 22 01:04:00 IST 2026
[2026-06-22 01:04:00,924.924 INFO    ] ================================================
[2026-06-22 01:04:01,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:04:01
[2026-06-22 01:04:02,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:04:02,528.528 INFO    ] Initializing speech engine...
[2026-06-22 01:04:02,537.537 INFO    ] 2026-06-22 01:04:02
[2026-06-22 01:04:02,839.839 INFO    ] 2026-06-22 01:04:02
[2026-06-22 01:04:02,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:04:03,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:04:03,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:04:03,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:04:03,299.299 INFO    ] time= 22/06/2026 01:04:03
[2026-06-22 01:04:03,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:04:03,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:04:03,473.473 INFO    ] No existing commands found in stream
[2026-06-22 01:04:08,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:04:08,489.489 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-22 01:04:12,228.228 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:04:12,231.231 INFO    ] Checking for system updates...
[2026-06-22 01:04:12,268.268 INFO    ] 200
[2026-06-22 01:04:12,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:04:12,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:04:12,329.329 INFO    ] No update needed
[2026-06-22 01:04:12,332.332 INFO    ] Checking for camera pi updates...
[2026-06-22 01:04:12,367.367 INFO    ] 200
[2026-06-22 01:04:12,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:04:12,411.411 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:04:12,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:04:12,494.494 INFO    ] No camera update needed
[2026-06-22 01:04:12,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:04:12,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:04:12,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:04:12,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:04:14,553.553 INFO    ] ================================================
[2026-06-22 01:04:14,569.569 INFO    ] Launching Daemon at Mon Jun 22 01:04:14 IST 2026
[2026-06-22 01:04:14,580.580 INFO    ] ================================================
[2026-06-22 01:04:15,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:04:15
[2026-06-22 01:04:15,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:04:16,177.177 INFO    ] Initializing speech engine...
[2026-06-22 01:04:16,184.184 INFO    ] 2026-06-22 01:04:16
[2026-06-22 01:04:16,457.457 INFO    ] 2026-06-22 01:04:16
[2026-06-22 01:04:16,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:04:16,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:04:16,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:04:16,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:04:16,959.959 INFO    ] time= 22/06/2026 01:04:16
[2026-06-22 01:04:17,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:04:17,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:04:17,157.157 INFO    ] No existing commands found in stream
[2026-06-22 01:04:22,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:04:22,191.191 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-22 01:04:22,772.772 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:04:22,775.775 INFO    ] Checking for system updates...
[2026-06-22 01:04:22,811.811 INFO    ] 200
[2026-06-22 01:04:22,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:04:22,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:04:22,871.871 INFO    ] No update needed
[2026-06-22 01:04:22,873.873 INFO    ] Checking for camera pi updates...
[2026-06-22 01:04:22,908.908 INFO    ] 200
[2026-06-22 01:04:22,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:04:22,957.957 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:04:23,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:04:23,050.050 INFO    ] No camera update needed
[2026-06-22 01:04:23,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:04:23,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:04:23,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:04:23,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:04:25,107.107 INFO    ] ================================================
[2026-06-22 01:04:25,122.122 INFO    ] Launching Daemon at Mon Jun 22 01:04:25 IST 2026
[2026-06-22 01:04:25,133.133 INFO    ] ================================================
[2026-06-22 01:04:25,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:04:25
[2026-06-22 01:04:26,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:04:26,600.600 INFO    ] Initializing speech engine...
[2026-06-22 01:04:26,606.606 INFO    ] 2026-06-22 01:04:26
[2026-06-22 01:04:26,900.900 INFO    ] 2026-06-22 01:04:26
[2026-06-22 01:04:26,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:04:27,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:04:27,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:04:27,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:04:27,275.275 INFO    ] time= 22/06/2026 01:04:27
[2026-06-22 01:04:27,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:04:27,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:04:27,399.399 INFO    ] No existing commands found in stream
[2026-06-22 01:04:32,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:04:32,415.415 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-22 01:04:36,675.675 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:04:36,677.677 INFO    ] Checking for system updates...
[2026-06-22 01:04:36,713.713 INFO    ] 200
[2026-06-22 01:04:36,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:04:36,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:04:36,772.772 INFO    ] No update needed
[2026-06-22 01:04:36,774.774 INFO    ] Checking for camera pi updates...
[2026-06-22 01:04:36,808.808 INFO    ] 200
[2026-06-22 01:04:36,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:04:36,856.856 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:04:36,943.943 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:04:36,945.945 INFO    ] No camera update needed
[2026-06-22 01:04:36,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:04:36,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:04:36,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:04:36,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:04:39,001.001 INFO    ] ================================================
[2026-06-22 01:04:39,015.015 INFO    ] Launching Daemon at Mon Jun 22 01:04:39 IST 2026
[2026-06-22 01:04:39,026.026 INFO    ] ================================================
[2026-06-22 01:04:39,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:04:39
[2026-06-22 01:04:40,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:04:40,491.491 INFO    ] Initializing speech engine...
[2026-06-22 01:04:40,501.501 INFO    ] 2026-06-22 01:04:40
[2026-06-22 01:04:40,751.751 INFO    ] 2026-06-22 01:04:40
[2026-06-22 01:04:40,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:04:40,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:04:40,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:04:41,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:04:41,124.124 INFO    ] time= 22/06/2026 01:04:41
[2026-06-22 01:04:41,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:04:41,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:04:41,234.234 INFO    ] No existing commands found in stream
[2026-06-22 01:04:46,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:04:46,270.270 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-22 01:04:49,801.801 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:04:49,804.804 INFO    ] Checking for system updates...
[2026-06-22 01:04:49,841.841 INFO    ] 200
[2026-06-22 01:04:49,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:04:49,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:04:49,900.900 INFO    ] No update needed
[2026-06-22 01:04:49,902.902 INFO    ] Checking for camera pi updates...
[2026-06-22 01:04:49,940.940 INFO    ] 200
[2026-06-22 01:04:49,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:04:49,984.984 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:04:50,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:04:50,060.060 INFO    ] No camera update needed
[2026-06-22 01:04:50,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:04:50,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:04:50,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:04:50,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:04:52,117.117 INFO    ] ================================================
[2026-06-22 01:04:52,132.132 INFO    ] Launching Daemon at Mon Jun 22 01:04:52 IST 2026
[2026-06-22 01:04:52,143.143 INFO    ] ================================================
[2026-06-22 01:04:52,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:04:52
[2026-06-22 01:04:53,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:04:53,581.581 INFO    ] Initializing speech engine...
[2026-06-22 01:04:53,589.589 INFO    ] 2026-06-22 01:04:53
[2026-06-22 01:04:53,860.860 INFO    ] 2026-06-22 01:04:53
[2026-06-22 01:04:53,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:04:54,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:04:54,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:04:54,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:04:54,345.345 INFO    ] time= 22/06/2026 01:04:54
[2026-06-22 01:04:54,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:04:54,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:04:54,480.480 INFO    ] No existing commands found in stream
[2026-06-22 01:04:59,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:04:59,496.496 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-22 01:05:00,776.776 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:05:00,777.777 INFO    ] Checking for system updates...
[2026-06-22 01:05:00,798.798 INFO    ] 200
[2026-06-22 01:05:00,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:05:00,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:05:00,832.832 INFO    ] No update needed
[2026-06-22 01:05:00,833.833 INFO    ] Checking for camera pi updates...
[2026-06-22 01:05:00,860.860 INFO    ] 200
[2026-06-22 01:05:00,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:05:00,904.904 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:05:00,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:05:00,999.999 INFO    ] No camera update needed
[2026-06-22 01:05:01,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:05:01,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:05:01,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:05:01,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:05:03,083.083 INFO    ] ================================================
[2026-06-22 01:05:03,106.106 INFO    ] Launching Daemon at Mon Jun 22 01:05:03 IST 2026
[2026-06-22 01:05:03,123.123 INFO    ] ================================================
[2026-06-22 01:05:03,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:05:03
[2026-06-22 01:05:04,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:05:04,620.620 INFO    ] Initializing speech engine...
[2026-06-22 01:05:04,627.627 INFO    ] 2026-06-22 01:05:04
[2026-06-22 01:05:04,925.925 INFO    ] 2026-06-22 01:05:04
[2026-06-22 01:05:04,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:05:05,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:05:05,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:05:05,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:05:05,293.293 INFO    ] time= 22/06/2026 01:05:05
[2026-06-22 01:05:05,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:05:05,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:05:05,410.410 INFO    ] No existing commands found in stream
[2026-06-22 01:05:10,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:05:10,423.423 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-22 01:05:14,296.296 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:05:14,298.298 INFO    ] Checking for system updates...
[2026-06-22 01:05:14,318.318 INFO    ] 200
[2026-06-22 01:05:14,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:05:14,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:05:14,351.351 INFO    ] No update needed
[2026-06-22 01:05:14,352.352 INFO    ] Checking for camera pi updates...
[2026-06-22 01:05:14,382.382 INFO    ] 200
[2026-06-22 01:05:14,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:05:14,430.430 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:05:14,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:05:14,614.614 INFO    ] No camera update needed
[2026-06-22 01:05:14,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:05:14,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:05:14,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:05:14,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:05:16,671.671 INFO    ] ================================================
[2026-06-22 01:05:16,686.686 INFO    ] Launching Daemon at Mon Jun 22 01:05:16 IST 2026
[2026-06-22 01:05:16,697.697 INFO    ] ================================================
[2026-06-22 01:05:17,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:05:17
[2026-06-22 01:05:17,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:05:18,036.036 INFO    ] Initializing speech engine...
[2026-06-22 01:05:18,045.045 INFO    ] 2026-06-22 01:05:18
[2026-06-22 01:05:18,318.318 INFO    ] 2026-06-22 01:05:18
[2026-06-22 01:05:18,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:05:18,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:05:18,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:05:18,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:05:18,795.795 INFO    ] time= 22/06/2026 01:05:18
[2026-06-22 01:05:18,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:05:18,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:05:18,940.940 INFO    ] No existing commands found in stream
[2026-06-22 01:05:23,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:05:23,955.955 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-22 01:05:24,851.851 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:05:24,852.852 INFO    ] Checking for system updates...
[2026-06-22 01:05:24,884.884 INFO    ] 200
[2026-06-22 01:05:24,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:05:24,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:05:24,943.943 INFO    ] No update needed
[2026-06-22 01:05:24,946.946 INFO    ] Checking for camera pi updates...
[2026-06-22 01:05:24,980.980 INFO    ] 200
[2026-06-22 01:05:24,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:05:25,024.024 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:05:25,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:05:25,107.107 INFO    ] No camera update needed
[2026-06-22 01:05:25,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:05:25,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:05:25,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:05:25,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:05:27,166.166 INFO    ] ================================================
[2026-06-22 01:05:27,181.181 INFO    ] Launching Daemon at Mon Jun 22 01:05:27 IST 2026
[2026-06-22 01:05:27,192.192 INFO    ] ================================================
[2026-06-22 01:05:27,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:05:27
[2026-06-22 01:05:28,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:05:28,564.564 INFO    ] Initializing speech engine...
[2026-06-22 01:05:28,573.573 INFO    ] 2026-06-22 01:05:28
[2026-06-22 01:05:28,828.828 INFO    ] 2026-06-22 01:05:28
[2026-06-22 01:05:28,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:05:29,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:05:29,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:05:29,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:05:29,317.317 INFO    ] time= 22/06/2026 01:05:29
[2026-06-22 01:05:29,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:05:29,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:05:29,516.516 INFO    ] No existing commands found in stream
[2026-06-22 01:05:34,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:05:34,544.544 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-22 01:05:35,590.590 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:05:35,592.592 INFO    ] Checking for system updates...
[2026-06-22 01:05:35,613.613 INFO    ] 200
[2026-06-22 01:05:35,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:05:35,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:05:35,646.646 INFO    ] No update needed
[2026-06-22 01:05:35,648.648 INFO    ] Checking for camera pi updates...
[2026-06-22 01:05:35,677.677 INFO    ] 200
[2026-06-22 01:05:35,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:05:35,721.721 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:05:35,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:05:35,804.804 INFO    ] No camera update needed
[2026-06-22 01:05:35,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:05:35,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:05:35,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:05:35,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:05:37,865.865 INFO    ] ================================================
[2026-06-22 01:05:37,880.880 INFO    ] Launching Daemon at Mon Jun 22 01:05:37 IST 2026
[2026-06-22 01:05:37,892.892 INFO    ] ================================================
[2026-06-22 01:05:38,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:05:38
[2026-06-22 01:05:38,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:05:39,272.272 INFO    ] Initializing speech engine...
[2026-06-22 01:05:39,281.281 INFO    ] 2026-06-22 01:05:39
[2026-06-22 01:05:39,540.540 INFO    ] 2026-06-22 01:05:39
[2026-06-22 01:05:39,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:05:39,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:05:39,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:05:39,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:05:40,003.003 INFO    ] time= 22/06/2026 01:05:39
[2026-06-22 01:05:40,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:05:40,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:05:40,146.146 INFO    ] No existing commands found in stream
[2026-06-22 01:05:45,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:05:45,160.160 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-22 01:05:45,581.581 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:05:45,583.583 INFO    ] Checking for system updates...
[2026-06-22 01:05:45,604.604 INFO    ] 200
[2026-06-22 01:05:45,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:05:45,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:05:45,638.638 INFO    ] No update needed
[2026-06-22 01:05:45,639.639 INFO    ] Checking for camera pi updates...
[2026-06-22 01:05:45,669.669 INFO    ] 200
[2026-06-22 01:05:45,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:05:45,719.719 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:05:45,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:05:45,797.797 INFO    ] No camera update needed
[2026-06-22 01:05:45,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:05:45,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:05:45,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:05:45,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:05:47,857.857 INFO    ] ================================================
[2026-06-22 01:05:47,872.872 INFO    ] Launching Daemon at Mon Jun 22 01:05:47 IST 2026
[2026-06-22 01:05:47,883.883 INFO    ] ================================================
[2026-06-22 01:05:48,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:05:48
[2026-06-22 01:05:49,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:05:49,430.430 INFO    ] Initializing speech engine...
[2026-06-22 01:05:49,442.442 INFO    ] 2026-06-22 01:05:49
[2026-06-22 01:05:49,757.757 INFO    ] 2026-06-22 01:05:49
[2026-06-22 01:05:49,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:05:50,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:05:50,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:05:50,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:05:50,260.260 INFO    ] time= 22/06/2026 01:05:50
[2026-06-22 01:05:50,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:05:50,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:05:50,416.416 INFO    ] No existing commands found in stream
[2026-06-22 01:05:55,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:05:55,436.436 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-22 01:05:59,018.018 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:05:59,020.020 INFO    ] Checking for system updates...
[2026-06-22 01:05:59,041.041 INFO    ] 200
[2026-06-22 01:05:59,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:05:59,080.080 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:05:59,083.083 INFO    ] No update needed
[2026-06-22 01:05:59,085.085 INFO    ] Checking for camera pi updates...
[2026-06-22 01:05:59,120.120 INFO    ] 200
[2026-06-22 01:05:59,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:05:59,164.164 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:05:59,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:05:59,262.262 INFO    ] No camera update needed
[2026-06-22 01:05:59,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:05:59,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:05:59,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:05:59,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:06:01,324.324 INFO    ] ================================================
[2026-06-22 01:06:01,340.340 INFO    ] Launching Daemon at Mon Jun 22 01:06:01 IST 2026
[2026-06-22 01:06:01,351.351 INFO    ] ================================================
[2026-06-22 01:06:01,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:06:01
[2026-06-22 01:06:02,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:06:03,097.097 INFO    ] Initializing speech engine...
[2026-06-22 01:06:03,106.106 INFO    ] 2026-06-22 01:06:03
[2026-06-22 01:06:03,382.382 INFO    ] 2026-06-22 01:06:03
[2026-06-22 01:06:03,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:06:03,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:06:03,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:06:03,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:06:03,873.873 INFO    ] time= 22/06/2026 01:06:03
[2026-06-22 01:06:03,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:06:03,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:06:04,056.056 INFO    ] No existing commands found in stream
[2026-06-22 01:06:09,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:06:09,070.070 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-22 01:06:12,577.577 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:06:12,580.580 INFO    ] Checking for system updates...
[2026-06-22 01:06:12,620.620 INFO    ] 200
[2026-06-22 01:06:12,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:06:12,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:06:12,678.678 INFO    ] No update needed
[2026-06-22 01:06:12,680.680 INFO    ] Checking for camera pi updates...
[2026-06-22 01:06:12,714.714 INFO    ] 200
[2026-06-22 01:06:12,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:06:12,757.757 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:06:12,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:06:12,845.845 INFO    ] No camera update needed
[2026-06-22 01:06:12,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:06:12,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:06:12,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:06:12,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:06:14,900.900 INFO    ] ================================================
[2026-06-22 01:06:14,916.916 INFO    ] Launching Daemon at Mon Jun 22 01:06:14 IST 2026
[2026-06-22 01:06:14,927.927 INFO    ] ================================================
[2026-06-22 01:06:15,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:06:15
[2026-06-22 01:06:16,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:06:16,430.430 INFO    ] Initializing speech engine...
[2026-06-22 01:06:16,437.437 INFO    ] 2026-06-22 01:06:16
[2026-06-22 01:06:16,721.721 INFO    ] 2026-06-22 01:06:16
[2026-06-22 01:06:16,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:06:16,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:06:16,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:06:17,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:06:17,193.193 INFO    ] time= 22/06/2026 01:06:17
[2026-06-22 01:06:17,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:06:17,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:06:17,320.320 INFO    ] No existing commands found in stream
[2026-06-22 01:06:22,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:06:22,336.336 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-22 01:06:26,762.762 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:06:26,765.765 INFO    ] Checking for system updates...
[2026-06-22 01:06:26,803.803 INFO    ] 200
[2026-06-22 01:06:26,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:06:26,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:06:26,863.863 INFO    ] No update needed
[2026-06-22 01:06:26,866.866 INFO    ] Checking for camera pi updates...
[2026-06-22 01:06:26,900.900 INFO    ] 200
[2026-06-22 01:06:26,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:06:26,948.948 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:06:27,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:06:27,027.027 INFO    ] No camera update needed
[2026-06-22 01:06:27,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:06:27,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:06:27,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:06:27,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:06:29,086.086 INFO    ] ================================================
[2026-06-22 01:06:29,102.102 INFO    ] Launching Daemon at Mon Jun 22 01:06:29 IST 2026
[2026-06-22 01:06:29,113.113 INFO    ] ================================================
[2026-06-22 01:06:29,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:06:29
[2026-06-22 01:06:30,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:06:30,435.435 INFO    ] Initializing speech engine...
[2026-06-22 01:06:30,441.441 INFO    ] 2026-06-22 01:06:30
[2026-06-22 01:06:30,743.743 INFO    ] 2026-06-22 01:06:30
[2026-06-22 01:06:30,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:06:30,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:06:30,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:06:31,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:06:31,130.130 INFO    ] time= 22/06/2026 01:06:31
[2026-06-22 01:06:31,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:06:31,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:06:31,258.258 INFO    ] No existing commands found in stream
[2026-06-22 01:06:36,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:06:36,272.272 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-22 01:06:37,094.094 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:06:37,096.096 INFO    ] Checking for system updates...
[2026-06-22 01:06:37,129.129 INFO    ] 200
[2026-06-22 01:06:37,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:06:37,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:06:37,187.187 INFO    ] No update needed
[2026-06-22 01:06:37,190.190 INFO    ] Checking for camera pi updates...
[2026-06-22 01:06:37,228.228 INFO    ] 200
[2026-06-22 01:06:37,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:06:37,271.271 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:06:37,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:06:37,359.359 INFO    ] No camera update needed
[2026-06-22 01:06:37,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:06:37,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:06:37,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:06:37,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:06:39,415.415 INFO    ] ================================================
[2026-06-22 01:06:39,430.430 INFO    ] Launching Daemon at Mon Jun 22 01:06:39 IST 2026
[2026-06-22 01:06:39,442.442 INFO    ] ================================================
[2026-06-22 01:06:40,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:06:40
[2026-06-22 01:06:40,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:06:41,029.029 INFO    ] Initializing speech engine...
[2026-06-22 01:06:41,035.035 INFO    ] 2026-06-22 01:06:41
[2026-06-22 01:06:41,325.325 INFO    ] 2026-06-22 01:06:41
[2026-06-22 01:06:41,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:06:41,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:06:41,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:06:41,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:06:41,792.792 INFO    ] time= 22/06/2026 01:06:41
[2026-06-22 01:06:41,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:06:41,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:06:41,935.935 INFO    ] No existing commands found in stream
[2026-06-22 01:06:46,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:06:46,951.951 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-22 01:06:48,768.768 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:06:48,771.771 INFO    ] Checking for system updates...
[2026-06-22 01:06:48,809.809 INFO    ] 200
[2026-06-22 01:06:48,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:06:48,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:06:48,867.867 INFO    ] No update needed
[2026-06-22 01:06:48,870.870 INFO    ] Checking for camera pi updates...
[2026-06-22 01:06:48,904.904 INFO    ] 200
[2026-06-22 01:06:48,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:06:48,948.948 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:06:49,033.033 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:06:49,036.036 INFO    ] No camera update needed
[2026-06-22 01:06:49,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:06:49,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:06:49,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:06:49,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:06:51,094.094 INFO    ] ================================================
[2026-06-22 01:06:51,116.116 INFO    ] Launching Daemon at Mon Jun 22 01:06:51 IST 2026
[2026-06-22 01:06:51,127.127 INFO    ] ================================================
[2026-06-22 01:06:51,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:06:51
[2026-06-22 01:06:52,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:06:52,703.703 INFO    ] Initializing speech engine...
[2026-06-22 01:06:52,715.715 INFO    ] 2026-06-22 01:06:52
[2026-06-22 01:06:53,003.003 INFO    ] 2026-06-22 01:06:52
[2026-06-22 01:06:53,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:06:53,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:06:53,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:06:53,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:06:53,535.535 INFO    ] time= 22/06/2026 01:06:53
[2026-06-22 01:06:53,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:06:53,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:06:53,677.677 INFO    ] No existing commands found in stream
[2026-06-22 01:06:58,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:06:58,708.708 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-22 01:07:00,031.031 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:07:00,032.032 INFO    ] Checking for system updates...
[2026-06-22 01:07:00,056.056 INFO    ] 200
[2026-06-22 01:07:00,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:07:00,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:07:00,090.090 INFO    ] No update needed
[2026-06-22 01:07:00,091.091 INFO    ] Checking for camera pi updates...
[2026-06-22 01:07:00,117.117 INFO    ] 200
[2026-06-22 01:07:00,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:07:00,160.160 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:07:00,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:07:00,243.243 INFO    ] No camera update needed
[2026-06-22 01:07:00,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:07:00,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:07:00,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:07:00,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:07:02,307.307 INFO    ] ================================================
[2026-06-22 01:07:02,327.327 INFO    ] Launching Daemon at Mon Jun 22 01:07:02 IST 2026
[2026-06-22 01:07:02,354.354 INFO    ] ================================================
[2026-06-22 01:07:03,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:07:03
[2026-06-22 01:07:03,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:07:04,217.217 INFO    ] Initializing speech engine...
[2026-06-22 01:07:04,231.231 INFO    ] 2026-06-22 01:07:04
[2026-06-22 01:07:04,545.545 INFO    ] 2026-06-22 01:07:04
[2026-06-22 01:07:04,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:07:04,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:07:04,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:07:05,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:07:05,055.055 INFO    ] time= 22/06/2026 01:07:05
[2026-06-22 01:07:05,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:07:05,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:07:05,206.206 INFO    ] No existing commands found in stream
[2026-06-22 01:07:10,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:07:10,230.230 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-22 01:07:12,294.294 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:07:12,298.298 INFO    ] Checking for system updates...
[2026-06-22 01:07:12,335.335 INFO    ] 200
[2026-06-22 01:07:12,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:07:12,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:07:12,402.402 INFO    ] No update needed
[2026-06-22 01:07:12,404.404 INFO    ] Checking for camera pi updates...
[2026-06-22 01:07:12,439.439 INFO    ] 200
[2026-06-22 01:07:12,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:07:12,482.482 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:07:12,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:07:12,574.574 INFO    ] No camera update needed
[2026-06-22 01:07:12,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:07:12,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:07:12,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:07:12,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:07:14,630.630 INFO    ] ================================================
[2026-06-22 01:07:14,647.647 INFO    ] Launching Daemon at Mon Jun 22 01:07:14 IST 2026
[2026-06-22 01:07:14,659.659 INFO    ] ================================================
[2026-06-22 01:07:15,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:07:15
[2026-06-22 01:07:16,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:07:16,317.317 INFO    ] Initializing speech engine...
[2026-06-22 01:07:16,328.328 INFO    ] 2026-06-22 01:07:16
[2026-06-22 01:07:16,612.612 INFO    ] 2026-06-22 01:07:16
[2026-06-22 01:07:16,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:07:16,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:07:16,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:07:17,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:07:17,096.096 INFO    ] time= 22/06/2026 01:07:17
[2026-06-22 01:07:17,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:07:17,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:07:17,287.287 INFO    ] No existing commands found in stream
[2026-06-22 01:07:22,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:07:22,321.321 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-22 01:07:22,936.936 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:07:22,937.937 INFO    ] Checking for system updates...
[2026-06-22 01:07:22,958.958 INFO    ] 200
[2026-06-22 01:07:22,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:07:22,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:07:22,994.994 INFO    ] No update needed
[2026-06-22 01:07:22,995.995 INFO    ] Checking for camera pi updates...
[2026-06-22 01:07:23,022.022 INFO    ] 200
[2026-06-22 01:07:23,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:07:23,075.075 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:07:23,274.274 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:07:23,276.276 INFO    ] No camera update needed
[2026-06-22 01:07:23,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:07:23,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:07:23,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:07:23,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:07:25,332.332 INFO    ] ================================================
[2026-06-22 01:07:25,348.348 INFO    ] Launching Daemon at Mon Jun 22 01:07:25 IST 2026
[2026-06-22 01:07:25,360.360 INFO    ] ================================================
[2026-06-22 01:07:26,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:07:26
[2026-06-22 01:07:26,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:07:26,922.922 INFO    ] Initializing speech engine...
[2026-06-22 01:07:26,935.935 INFO    ] 2026-06-22 01:07:26
[2026-06-22 01:07:27,252.252 INFO    ] 2026-06-22 01:07:27
[2026-06-22 01:07:27,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:07:27,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:07:27,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:07:27,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:07:27,756.756 INFO    ] time= 22/06/2026 01:07:27
[2026-06-22 01:07:27,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:07:27,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:07:27,909.909 INFO    ] No existing commands found in stream
[2026-06-22 01:07:32,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:07:32,926.926 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-22 01:07:35,905.905 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:07:35,917.917 INFO    ] Checking for system updates...
[2026-06-22 01:07:35,955.955 INFO    ] 200
[2026-06-22 01:07:35,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:07:36,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:07:36,013.013 INFO    ] No update needed
[2026-06-22 01:07:36,015.015 INFO    ] Checking for camera pi updates...
[2026-06-22 01:07:36,054.054 INFO    ] 200
[2026-06-22 01:07:36,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:07:36,097.097 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:07:36,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:07:36,179.179 INFO    ] No camera update needed
[2026-06-22 01:07:36,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:07:36,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:07:36,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:07:36,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:07:38,236.236 INFO    ] ================================================
[2026-06-22 01:07:38,251.251 INFO    ] Launching Daemon at Mon Jun 22 01:07:38 IST 2026
[2026-06-22 01:07:38,262.262 INFO    ] ================================================
[2026-06-22 01:07:38,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:07:38
[2026-06-22 01:07:39,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:07:39,611.611 INFO    ] Initializing speech engine...
[2026-06-22 01:07:39,620.620 INFO    ] 2026-06-22 01:07:39
[2026-06-22 01:07:39,920.920 INFO    ] 2026-06-22 01:07:39
[2026-06-22 01:07:39,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:07:40,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:07:40,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:07:40,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:07:40,282.282 INFO    ] time= 22/06/2026 01:07:40
[2026-06-22 01:07:40,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:07:40,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:07:40,415.415 INFO    ] No existing commands found in stream
[2026-06-22 01:07:45,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:07:45,443.443 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-22 01:07:48,445.445 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:07:48,446.446 INFO    ] Checking for system updates...
[2026-06-22 01:07:48,467.467 INFO    ] 200
[2026-06-22 01:07:48,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:07:48,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:07:48,502.502 INFO    ] No update needed
[2026-06-22 01:07:48,504.504 INFO    ] Checking for camera pi updates...
[2026-06-22 01:07:48,524.524 INFO    ] 200
[2026-06-22 01:07:48,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:07:48,562.562 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:07:48,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:07:48,641.641 INFO    ] No camera update needed
[2026-06-22 01:07:48,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:07:48,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:07:48,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:07:48,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:07:50,697.697 INFO    ] ================================================
[2026-06-22 01:07:50,713.713 INFO    ] Launching Daemon at Mon Jun 22 01:07:50 IST 2026
[2026-06-22 01:07:50,724.724 INFO    ] ================================================
[2026-06-22 01:07:51,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:07:51
[2026-06-22 01:07:51,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:07:52,279.279 INFO    ] Initializing speech engine...
[2026-06-22 01:07:52,286.286 INFO    ] 2026-06-22 01:07:52
[2026-06-22 01:07:52,568.568 INFO    ] 2026-06-22 01:07:52
[2026-06-22 01:07:52,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:07:52,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:07:52,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:07:53,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:07:53,033.033 INFO    ] time= 22/06/2026 01:07:53
[2026-06-22 01:07:53,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:07:53,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:07:53,201.201 INFO    ] No existing commands found in stream
[2026-06-22 01:07:58,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:07:58,218.218 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-22 01:08:00,490.490 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:08:00,491.491 INFO    ] Checking for system updates...
[2026-06-22 01:08:00,514.514 INFO    ] 200
[2026-06-22 01:08:00,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:08:00,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:08:00,554.554 INFO    ] No update needed
[2026-06-22 01:08:00,557.557 INFO    ] Checking for camera pi updates...
[2026-06-22 01:08:00,596.596 INFO    ] 200
[2026-06-22 01:08:00,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:08:00,646.646 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:08:00,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:08:00,728.728 INFO    ] No camera update needed
[2026-06-22 01:08:00,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:08:00,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:08:00,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:08:00,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:08:02,791.791 INFO    ] ================================================
[2026-06-22 01:08:02,812.812 INFO    ] Launching Daemon at Mon Jun 22 01:08:02 IST 2026
[2026-06-22 01:08:02,826.826 INFO    ] ================================================
[2026-06-22 01:08:03,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:08:03
[2026-06-22 01:08:04,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:08:04,362.362 INFO    ] Initializing speech engine...
[2026-06-22 01:08:04,368.368 INFO    ] 2026-06-22 01:08:04
[2026-06-22 01:08:04,612.612 INFO    ] 2026-06-22 01:08:04
[2026-06-22 01:08:04,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:08:04,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:08:04,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:08:04,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:08:04,979.979 INFO    ] time= 22/06/2026 01:08:04
[2026-06-22 01:08:04,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:08:05,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:08:05,143.143 INFO    ] No existing commands found in stream
[2026-06-22 01:08:10,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:08:10,177.177 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-22 01:08:11,821.821 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:08:11,824.824 INFO    ] Checking for system updates...
[2026-06-22 01:08:11,860.860 INFO    ] 200
[2026-06-22 01:08:11,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:08:11,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:08:11,926.926 INFO    ] No update needed
[2026-06-22 01:08:11,929.929 INFO    ] Checking for camera pi updates...
[2026-06-22 01:08:11,962.962 INFO    ] 200
[2026-06-22 01:08:11,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:08:12,010.010 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:08:12,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:08:12,094.094 INFO    ] No camera update needed
[2026-06-22 01:08:12,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:08:12,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:08:12,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:08:12,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:08:14,151.151 INFO    ] ================================================
[2026-06-22 01:08:14,167.167 INFO    ] Launching Daemon at Mon Jun 22 01:08:14 IST 2026
[2026-06-22 01:08:14,178.178 INFO    ] ================================================
[2026-06-22 01:08:14,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:08:14
[2026-06-22 01:08:15,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:08:15,517.517 INFO    ] Initializing speech engine...
[2026-06-22 01:08:15,527.527 INFO    ] 2026-06-22 01:08:15
[2026-06-22 01:08:15,772.772 INFO    ] 2026-06-22 01:08:15
[2026-06-22 01:08:15,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:08:16,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:08:16,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:08:16,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:08:16,253.253 INFO    ] time= 22/06/2026 01:08:16
[2026-06-22 01:08:16,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:08:16,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:08:16,398.398 INFO    ] No existing commands found in stream
[2026-06-22 01:08:21,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:08:21,426.426 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-22 01:08:24,968.968 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:08:24,970.970 INFO    ] Checking for system updates...
[2026-06-22 01:08:25,007.007 INFO    ] 200
[2026-06-22 01:08:25,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:08:25,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:08:25,064.064 INFO    ] No update needed
[2026-06-22 01:08:25,067.067 INFO    ] Checking for camera pi updates...
[2026-06-22 01:08:25,100.100 INFO    ] 200
[2026-06-22 01:08:25,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:08:25,142.142 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:08:25,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:08:25,236.236 INFO    ] No camera update needed
[2026-06-22 01:08:25,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:08:25,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:08:25,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:08:25,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:08:27,293.293 INFO    ] ================================================
[2026-06-22 01:08:27,309.309 INFO    ] Launching Daemon at Mon Jun 22 01:08:27 IST 2026
[2026-06-22 01:08:27,320.320 INFO    ] ================================================
[2026-06-22 01:08:27,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:08:27
[2026-06-22 01:08:28,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:08:28,924.924 INFO    ] Initializing speech engine...
[2026-06-22 01:08:28,938.938 INFO    ] 2026-06-22 01:08:28
[2026-06-22 01:08:29,245.245 INFO    ] 2026-06-22 01:08:29
[2026-06-22 01:08:29,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:08:29,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:08:29,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:08:29,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:08:29,796.796 INFO    ] time= 22/06/2026 01:08:29
[2026-06-22 01:08:29,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:08:29,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:08:30,016.016 INFO    ] No existing commands found in stream
[2026-06-22 01:08:35,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:08:35,051.051 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-22 01:08:36,091.091 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:08:36,094.094 INFO    ] Checking for system updates...
[2026-06-22 01:08:36,131.131 INFO    ] 200
[2026-06-22 01:08:36,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:08:36,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:08:36,211.211 INFO    ] No update needed
[2026-06-22 01:08:36,214.214 INFO    ] Checking for camera pi updates...
[2026-06-22 01:08:36,250.250 INFO    ] 200
[2026-06-22 01:08:36,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:08:36,298.298 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:08:36,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:08:36,397.397 INFO    ] No camera update needed
[2026-06-22 01:08:36,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:08:36,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:08:36,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:08:36,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:08:38,447.447 INFO    ] ================================================
[2026-06-22 01:08:38,462.462 INFO    ] Launching Daemon at Mon Jun 22 01:08:38 IST 2026
[2026-06-22 01:08:38,473.473 INFO    ] ================================================
[2026-06-22 01:08:39,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:08:39
[2026-06-22 01:08:39,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:08:39,875.875 INFO    ] Initializing speech engine...
[2026-06-22 01:08:39,883.883 INFO    ] 2026-06-22 01:08:39
[2026-06-22 01:08:40,177.177 INFO    ] 2026-06-22 01:08:40
[2026-06-22 01:08:40,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:08:40,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:08:40,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:08:40,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:08:40,555.555 INFO    ] time= 22/06/2026 01:08:40
[2026-06-22 01:08:40,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:08:40,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:08:40,678.678 INFO    ] No existing commands found in stream
[2026-06-22 01:08:45,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:08:45,693.693 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-22 01:08:49,133.133 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:08:49,135.135 INFO    ] Checking for system updates...
[2026-06-22 01:08:49,156.156 INFO    ] 200
[2026-06-22 01:08:49,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:08:49,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:08:49,211.211 INFO    ] No update needed
[2026-06-22 01:08:49,214.214 INFO    ] Checking for camera pi updates...
[2026-06-22 01:08:49,249.249 INFO    ] 200
[2026-06-22 01:08:49,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:08:49,294.294 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:08:49,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:08:49,356.356 INFO    ] No camera update needed
[2026-06-22 01:08:49,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:08:49,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:08:49,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:08:49,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:08:51,417.417 INFO    ] ================================================
[2026-06-22 01:08:51,432.432 INFO    ] Launching Daemon at Mon Jun 22 01:08:51 IST 2026
[2026-06-22 01:08:51,443.443 INFO    ] ================================================
[2026-06-22 01:08:52,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:08:52
[2026-06-22 01:08:52,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:08:52,759.759 INFO    ] Initializing speech engine...
[2026-06-22 01:08:52,768.768 INFO    ] 2026-06-22 01:08:52
[2026-06-22 01:08:53,059.059 INFO    ] 2026-06-22 01:08:53
[2026-06-22 01:08:53,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:08:53,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:08:53,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:08:53,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:08:53,475.475 INFO    ] time= 22/06/2026 01:08:53
[2026-06-22 01:08:53,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:08:53,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:08:53,633.633 INFO    ] No existing commands found in stream
[2026-06-22 01:08:58,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:08:58,656.656 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-22 01:08:59,115.115 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:08:59,116.116 INFO    ] Checking for system updates...
[2026-06-22 01:08:59,137.137 INFO    ] 200
[2026-06-22 01:08:59,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:08:59,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:08:59,176.176 INFO    ] No update needed
[2026-06-22 01:08:59,179.179 INFO    ] Checking for camera pi updates...
[2026-06-22 01:08:59,212.212 INFO    ] 200
[2026-06-22 01:08:59,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:08:59,259.259 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:08:59,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:08:59,311.311 INFO    ] No camera update needed
[2026-06-22 01:08:59,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:08:59,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:08:59,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:08:59,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:09:01,368.368 INFO    ] ================================================
[2026-06-22 01:09:01,384.384 INFO    ] Launching Daemon at Mon Jun 22 01:09:01 IST 2026
[2026-06-22 01:09:01,395.395 INFO    ] ================================================
[2026-06-22 01:09:02,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:09:02
[2026-06-22 01:09:02,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:09:03,066.066 INFO    ] Initializing speech engine...
[2026-06-22 01:09:03,081.081 INFO    ] 2026-06-22 01:09:03
[2026-06-22 01:09:03,398.398 INFO    ] 2026-06-22 01:09:03
[2026-06-22 01:09:03,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:09:03,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:09:03,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:09:03,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:09:03,788.788 INFO    ] time= 22/06/2026 01:09:03
[2026-06-22 01:09:03,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:09:03,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:09:03,905.905 INFO    ] No existing commands found in stream
[2026-06-22 01:09:08,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:09:08,920.920 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-22 01:09:11,357.357 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:09:11,360.360 INFO    ] Checking for system updates...
[2026-06-22 01:09:11,396.396 INFO    ] 200
[2026-06-22 01:09:11,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:09:11,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:09:11,456.456 INFO    ] No update needed
[2026-06-22 01:09:11,459.459 INFO    ] Checking for camera pi updates...
[2026-06-22 01:09:11,493.493 INFO    ] 200
[2026-06-22 01:09:11,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:09:11,536.536 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:09:11,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:09:11,613.613 INFO    ] No camera update needed
[2026-06-22 01:09:11,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:09:11,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:09:11,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:09:11,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:09:13,672.672 INFO    ] ================================================
[2026-06-22 01:09:13,687.687 INFO    ] Launching Daemon at Mon Jun 22 01:09:13 IST 2026
[2026-06-22 01:09:13,698.698 INFO    ] ================================================
[2026-06-22 01:09:14,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:09:14
[2026-06-22 01:09:14,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:09:15,128.128 INFO    ] Initializing speech engine...
[2026-06-22 01:09:15,138.138 INFO    ] 2026-06-22 01:09:15
[2026-06-22 01:09:15,400.400 INFO    ] 2026-06-22 01:09:15
[2026-06-22 01:09:15,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:09:15,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:09:15,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:09:15,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:09:15,861.861 INFO    ] time= 22/06/2026 01:09:15
[2026-06-22 01:09:15,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:09:15,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:09:16,011.011 INFO    ] No existing commands found in stream
[2026-06-22 01:09:21,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:09:21,035.035 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-22 01:09:21,681.681 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:09:21,683.683 INFO    ] Checking for system updates...
[2026-06-22 01:09:21,704.704 INFO    ] 200
[2026-06-22 01:09:21,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:09:21,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:09:21,738.738 INFO    ] No update needed
[2026-06-22 01:09:21,740.740 INFO    ] Checking for camera pi updates...
[2026-06-22 01:09:21,761.761 INFO    ] 200
[2026-06-22 01:09:21,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:09:21,807.807 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:09:21,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:09:21,909.909 INFO    ] No camera update needed
[2026-06-22 01:09:21,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:09:21,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:09:21,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:09:21,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:09:23,969.969 INFO    ] ================================================
[2026-06-22 01:09:23,986.986 INFO    ] Launching Daemon at Mon Jun 22 01:09:23 IST 2026
[2026-06-22 01:09:24,998.998 INFO    ] ================================================
[2026-06-22 01:09:24,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:09:24
[2026-06-22 01:09:25,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:09:25,509.509 INFO    ] Initializing speech engine...
[2026-06-22 01:09:25,522.522 INFO    ] 2026-06-22 01:09:25
[2026-06-22 01:09:25,802.802 INFO    ] 2026-06-22 01:09:25
[2026-06-22 01:09:25,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:09:26,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:09:26,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:09:26,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:09:26,270.270 INFO    ] time= 22/06/2026 01:09:26
[2026-06-22 01:09:26,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:09:26,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:09:26,434.434 INFO    ] No existing commands found in stream
[2026-06-22 01:09:31,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:09:31,458.458 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-22 01:09:34,731.731 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:09:34,733.733 INFO    ] Checking for system updates...
[2026-06-22 01:09:34,770.770 INFO    ] 200
[2026-06-22 01:09:34,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:09:34,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:09:34,829.829 INFO    ] No update needed
[2026-06-22 01:09:34,832.832 INFO    ] Checking for camera pi updates...
[2026-06-22 01:09:34,869.869 INFO    ] 200
[2026-06-22 01:09:34,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:09:34,920.920 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:09:35,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:09:35,018.018 INFO    ] No camera update needed
[2026-06-22 01:09:35,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:09:35,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:09:35,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:09:35,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:09:37,077.077 INFO    ] ================================================
[2026-06-22 01:09:37,093.093 INFO    ] Launching Daemon at Mon Jun 22 01:09:37 IST 2026
[2026-06-22 01:09:37,106.106 INFO    ] ================================================
[2026-06-22 01:09:37,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:09:37
[2026-06-22 01:09:38,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:09:38,579.579 INFO    ] Initializing speech engine...
[2026-06-22 01:09:38,588.588 INFO    ] 2026-06-22 01:09:38
[2026-06-22 01:09:38,871.871 INFO    ] 2026-06-22 01:09:38
[2026-06-22 01:09:38,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:09:39,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:09:39,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:09:39,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:09:39,321.321 INFO    ] time= 22/06/2026 01:09:39
[2026-06-22 01:09:39,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:09:39,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:09:39,465.465 INFO    ] No existing commands found in stream
[2026-06-22 01:09:44,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:09:44,480.480 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-22 01:09:48,471.471 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:09:48,473.473 INFO    ] Checking for system updates...
[2026-06-22 01:09:48,493.493 INFO    ] 200
[2026-06-22 01:09:48,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:09:48,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:09:48,551.551 INFO    ] No update needed
[2026-06-22 01:09:48,554.554 INFO    ] Checking for camera pi updates...
[2026-06-22 01:09:48,589.589 INFO    ] 200
[2026-06-22 01:09:48,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:09:48,634.634 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:09:48,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:09:48,726.726 INFO    ] No camera update needed
[2026-06-22 01:09:48,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:09:48,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:09:48,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:09:48,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:09:50,785.785 INFO    ] ================================================
[2026-06-22 01:09:50,801.801 INFO    ] Launching Daemon at Mon Jun 22 01:09:50 IST 2026
[2026-06-22 01:09:50,812.812 INFO    ] ================================================
[2026-06-22 01:09:51,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:09:51
[2026-06-22 01:09:51,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:09:52,298.298 INFO    ] Initializing speech engine...
[2026-06-22 01:09:52,312.312 INFO    ] 2026-06-22 01:09:52
[2026-06-22 01:09:52,595.595 INFO    ] 2026-06-22 01:09:52
[2026-06-22 01:09:52,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:09:52,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:09:52,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:09:53,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:09:53,089.089 INFO    ] time= 22/06/2026 01:09:53
[2026-06-22 01:09:53,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:09:53,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:09:53,299.299 INFO    ] No existing commands found in stream
[2026-06-22 01:09:58,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:09:58,325.325 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-22 01:09:59,369.369 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:09:59,371.371 INFO    ] Checking for system updates...
[2026-06-22 01:09:59,392.392 INFO    ] 200
[2026-06-22 01:09:59,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:09:59,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:09:59,451.451 INFO    ] No update needed
[2026-06-22 01:09:59,454.454 INFO    ] Checking for camera pi updates...
[2026-06-22 01:09:59,490.490 INFO    ] 200
[2026-06-22 01:09:59,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:09:59,534.534 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:09:59,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:09:59,618.618 INFO    ] No camera update needed
[2026-06-22 01:09:59,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:09:59,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:09:59,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:09:59,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:10:01,677.677 INFO    ] ================================================
[2026-06-22 01:10:01,693.693 INFO    ] Launching Daemon at Mon Jun 22 01:10:01 IST 2026
[2026-06-22 01:10:01,703.703 INFO    ] ================================================
[2026-06-22 01:10:02,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:10:02
[2026-06-22 01:10:03,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:10:03,792.792 INFO    ] Initializing speech engine...
[2026-06-22 01:10:03,829.829 INFO    ] 2026-06-22 01:10:03
[2026-06-22 01:10:04,113.113 INFO    ] 2026-06-22 01:10:04
[2026-06-22 01:10:04,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:10:04,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:10:04,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:10:04,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:10:04,456.456 INFO    ] time= 22/06/2026 01:10:04
[2026-06-22 01:10:04,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:10:04,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:10:04,592.592 INFO    ] No existing commands found in stream
[2026-06-22 01:10:09,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:10:09,606.606 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-22 01:10:12,371.371 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:10:12,373.373 INFO    ] Checking for system updates...
[2026-06-22 01:10:12,409.409 INFO    ] 200
[2026-06-22 01:10:12,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:10:12,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:10:12,468.468 INFO    ] No update needed
[2026-06-22 01:10:12,470.470 INFO    ] Checking for camera pi updates...
[2026-06-22 01:10:12,504.504 INFO    ] 200
[2026-06-22 01:10:12,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:10:12,548.548 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:10:12,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:10:12,632.632 INFO    ] No camera update needed
[2026-06-22 01:10:12,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:10:12,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:10:12,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:10:12,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:10:14,687.687 INFO    ] ================================================
[2026-06-22 01:10:14,704.704 INFO    ] Launching Daemon at Mon Jun 22 01:10:14 IST 2026
[2026-06-22 01:10:14,715.715 INFO    ] ================================================
[2026-06-22 01:10:15,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:10:15
[2026-06-22 01:10:15,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:10:16,148.148 INFO    ] Initializing speech engine...
[2026-06-22 01:10:16,153.153 INFO    ] 2026-06-22 01:10:16
[2026-06-22 01:10:16,400.400 INFO    ] 2026-06-22 01:10:16
[2026-06-22 01:10:16,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:10:16,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:10:16,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:10:16,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:10:16,756.756 INFO    ] time= 22/06/2026 01:10:16
[2026-06-22 01:10:16,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:10:16,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:10:16,879.879 INFO    ] No existing commands found in stream
[2026-06-22 01:10:21,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:10:21,895.895 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-22 01:10:22,961.961 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:10:22,964.964 INFO    ] Checking for system updates...
[2026-06-22 01:10:23,001.001 INFO    ] 200
[2026-06-22 01:10:23,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:10:23,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:10:23,060.060 INFO    ] No update needed
[2026-06-22 01:10:23,062.062 INFO    ] Checking for camera pi updates...
[2026-06-22 01:10:23,096.096 INFO    ] 200
[2026-06-22 01:10:23,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:10:23,140.140 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:10:23,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:10:23,228.228 INFO    ] No camera update needed
[2026-06-22 01:10:23,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:10:23,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:10:23,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:10:23,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:10:25,285.285 INFO    ] ================================================
[2026-06-22 01:10:25,300.300 INFO    ] Launching Daemon at Mon Jun 22 01:10:25 IST 2026
[2026-06-22 01:10:25,311.311 INFO    ] ================================================
[2026-06-22 01:10:25,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:10:25
[2026-06-22 01:10:26,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:10:26,820.820 INFO    ] Initializing speech engine...
[2026-06-22 01:10:26,828.828 INFO    ] 2026-06-22 01:10:26
[2026-06-22 01:10:27,125.125 INFO    ] 2026-06-22 01:10:27
[2026-06-22 01:10:27,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:10:27,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:10:27,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:10:27,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:10:27,677.677 INFO    ] time= 22/06/2026 01:10:27
[2026-06-22 01:10:27,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:10:27,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:10:27,825.825 INFO    ] No existing commands found in stream
[2026-06-22 01:10:32,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:10:32,850.850 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-22 01:10:33,409.409 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:10:33,411.411 INFO    ] Checking for system updates...
[2026-06-22 01:10:33,448.448 INFO    ] 200
[2026-06-22 01:10:33,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:10:33,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:10:33,505.505 INFO    ] No update needed
[2026-06-22 01:10:33,508.508 INFO    ] Checking for camera pi updates...
[2026-06-22 01:10:33,542.542 INFO    ] 200
[2026-06-22 01:10:33,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:10:33,587.587 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:10:33,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:10:33,678.678 INFO    ] No camera update needed
[2026-06-22 01:10:33,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:10:33,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:10:33,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:10:33,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:10:35,733.733 INFO    ] ================================================
[2026-06-22 01:10:35,748.748 INFO    ] Launching Daemon at Mon Jun 22 01:10:35 IST 2026
[2026-06-22 01:10:35,759.759 INFO    ] ================================================
[2026-06-22 01:10:36,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:10:36
[2026-06-22 01:10:37,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:10:37,320.320 INFO    ] Initializing speech engine...
[2026-06-22 01:10:37,334.334 INFO    ] 2026-06-22 01:10:37
[2026-06-22 01:10:37,611.611 INFO    ] 2026-06-22 01:10:37
[2026-06-22 01:10:37,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:10:37,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:10:37,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:10:38,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:10:38,082.082 INFO    ] time= 22/06/2026 01:10:38
[2026-06-22 01:10:38,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:10:38,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:10:38,211.211 INFO    ] No existing commands found in stream
[2026-06-22 01:10:43,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:10:43,227.227 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-22 01:10:43,831.831 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:10:43,834.834 INFO    ] Checking for system updates...
[2026-06-22 01:10:43,873.873 INFO    ] 200
[2026-06-22 01:10:43,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:10:43,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:10:43,931.931 INFO    ] No update needed
[2026-06-22 01:10:43,934.934 INFO    ] Checking for camera pi updates...
[2026-06-22 01:10:43,969.969 INFO    ] 200
[2026-06-22 01:10:43,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:10:44,017.017 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:10:44,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:10:44,107.107 INFO    ] No camera update needed
[2026-06-22 01:10:44,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:10:44,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:10:44,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:10:44,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:10:46,163.163 INFO    ] ================================================
[2026-06-22 01:10:46,178.178 INFO    ] Launching Daemon at Mon Jun 22 01:10:46 IST 2026
[2026-06-22 01:10:46,189.189 INFO    ] ================================================
[2026-06-22 01:10:46,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:10:46
[2026-06-22 01:10:47,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:10:47,498.498 INFO    ] Initializing speech engine...
[2026-06-22 01:10:47,505.505 INFO    ] 2026-06-22 01:10:47
[2026-06-22 01:10:47,802.802 INFO    ] 2026-06-22 01:10:47
[2026-06-22 01:10:47,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:10:48,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:10:48,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:10:48,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:10:48,179.179 INFO    ] time= 22/06/2026 01:10:48
[2026-06-22 01:10:48,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:10:48,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:10:48,301.301 INFO    ] No existing commands found in stream
[2026-06-22 01:10:53,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:10:53,317.317 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-22 01:10:54,272.272 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:10:54,275.275 INFO    ] Checking for system updates...
[2026-06-22 01:10:54,316.316 INFO    ] 200
[2026-06-22 01:10:54,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:10:54,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:10:54,376.376 INFO    ] No update needed
[2026-06-22 01:10:54,378.378 INFO    ] Checking for camera pi updates...
[2026-06-22 01:10:54,414.414 INFO    ] 200
[2026-06-22 01:10:54,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:10:54,461.461 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:10:54,545.545 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:10:54,547.547 INFO    ] No camera update needed
[2026-06-22 01:10:54,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:10:54,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:10:54,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:10:54,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:10:56,604.604 INFO    ] ================================================
[2026-06-22 01:10:56,619.619 INFO    ] Launching Daemon at Mon Jun 22 01:10:56 IST 2026
[2026-06-22 01:10:56,630.630 INFO    ] ================================================
[2026-06-22 01:10:57,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:10:57
[2026-06-22 01:10:57,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:10:57,946.946 INFO    ] Initializing speech engine...
[2026-06-22 01:10:57,955.955 INFO    ] 2026-06-22 01:10:57
[2026-06-22 01:10:58,232.232 INFO    ] 2026-06-22 01:10:58
[2026-06-22 01:10:58,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:10:58,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:10:58,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:10:58,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:10:58,615.615 INFO    ] time= 22/06/2026 01:10:58
[2026-06-22 01:10:58,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:10:58,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:10:58,791.791 INFO    ] No existing commands found in stream
[2026-06-22 01:11:03,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:11:03,819.819 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-22 01:11:04,252.252 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:11:04,255.255 INFO    ] Checking for system updates...
[2026-06-22 01:11:04,290.290 INFO    ] 200
[2026-06-22 01:11:04,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:11:04,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:11:04,347.347 INFO    ] No update needed
[2026-06-22 01:11:04,350.350 INFO    ] Checking for camera pi updates...
[2026-06-22 01:11:04,383.383 INFO    ] 200
[2026-06-22 01:11:04,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:11:04,427.427 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:11:04,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:11:04,575.575 INFO    ] No camera update needed
[2026-06-22 01:11:04,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:11:04,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:11:04,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:11:04,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:11:06,633.633 INFO    ] ================================================
[2026-06-22 01:11:06,648.648 INFO    ] Launching Daemon at Mon Jun 22 01:11:06 IST 2026
[2026-06-22 01:11:06,659.659 INFO    ] ================================================
[2026-06-22 01:11:07,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:11:07
[2026-06-22 01:11:07,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:11:08,017.017 INFO    ] Initializing speech engine...
[2026-06-22 01:11:08,026.026 INFO    ] 2026-06-22 01:11:08
[2026-06-22 01:11:08,290.290 INFO    ] 2026-06-22 01:11:08
[2026-06-22 01:11:08,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:11:08,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:11:08,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:11:08,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:11:08,769.769 INFO    ] time= 22/06/2026 01:11:08
[2026-06-22 01:11:08,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:11:08,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:11:08,899.899 INFO    ] No existing commands found in stream
[2026-06-22 01:11:13,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:11:13,927.927 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-22 01:11:17,259.259 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:11:17,260.260 INFO    ] Checking for system updates...
[2026-06-22 01:11:17,281.281 INFO    ] 200
[2026-06-22 01:11:17,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:11:17,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:11:17,336.336 INFO    ] No update needed
[2026-06-22 01:11:17,338.338 INFO    ] Checking for camera pi updates...
[2026-06-22 01:11:17,372.372 INFO    ] 200
[2026-06-22 01:11:17,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:11:17,416.416 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:11:17,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:11:17,509.509 INFO    ] No camera update needed
[2026-06-22 01:11:17,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:11:17,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:11:17,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:11:17,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:11:19,567.567 INFO    ] ================================================
[2026-06-22 01:11:19,583.583 INFO    ] Launching Daemon at Mon Jun 22 01:11:19 IST 2026
[2026-06-22 01:11:19,595.595 INFO    ] ================================================
[2026-06-22 01:11:20,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:11:20
[2026-06-22 01:11:20,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:11:20,997.997 INFO    ] Initializing speech engine...
[2026-06-22 01:11:21,005.005 INFO    ] 2026-06-22 01:11:20
[2026-06-22 01:11:21,253.253 INFO    ] 2026-06-22 01:11:21
[2026-06-22 01:11:21,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:11:21,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:11:21,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:11:21,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:11:21,621.621 INFO    ] time= 22/06/2026 01:11:21
[2026-06-22 01:11:21,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:11:21,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:11:21,698.698 INFO    ] No existing commands found in stream
[2026-06-22 01:11:26,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:11:26,731.731 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-22 01:11:30,228.228 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:11:30,229.229 INFO    ] Checking for system updates...
[2026-06-22 01:11:30,252.252 INFO    ] 200
[2026-06-22 01:11:30,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:11:30,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:11:30,285.285 INFO    ] No update needed
[2026-06-22 01:11:30,287.287 INFO    ] Checking for camera pi updates...
[2026-06-22 01:11:30,309.309 INFO    ] 200
[2026-06-22 01:11:30,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:11:30,353.353 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:11:30,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:11:30,455.455 INFO    ] No camera update needed
[2026-06-22 01:11:30,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:11:30,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:11:30,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:11:30,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:11:32,519.519 INFO    ] ================================================
[2026-06-22 01:11:32,536.536 INFO    ] Launching Daemon at Mon Jun 22 01:11:32 IST 2026
[2026-06-22 01:11:32,548.548 INFO    ] ================================================
[2026-06-22 01:11:33,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:11:33
[2026-06-22 01:11:33,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:11:33,968.968 INFO    ] Initializing speech engine...
[2026-06-22 01:11:33,991.991 INFO    ] 2026-06-22 01:11:33
[2026-06-22 01:11:34,247.247 INFO    ] 2026-06-22 01:11:34
[2026-06-22 01:11:34,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:11:34,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:11:34,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:11:34,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:11:34,621.621 INFO    ] time= 22/06/2026 01:11:34
[2026-06-22 01:11:34,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:11:34,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:11:34,788.788 INFO    ] No existing commands found in stream
[2026-06-22 01:11:39,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:11:39,816.816 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-22 01:11:45,418.418 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:11:45,421.421 INFO    ] Checking for system updates...
[2026-06-22 01:11:45,457.457 INFO    ] 200
[2026-06-22 01:11:45,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:11:45,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:11:45,502.502 INFO    ] No update needed
[2026-06-22 01:11:45,503.503 INFO    ] Checking for camera pi updates...
[2026-06-22 01:11:45,523.523 INFO    ] 200
[2026-06-22 01:11:45,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:11:45,560.560 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:11:45,735.735 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:11:45,737.737 INFO    ] No camera update needed
[2026-06-22 01:11:45,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:11:45,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:11:45,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:11:45,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:11:47,792.792 INFO    ] ================================================
[2026-06-22 01:11:47,808.808 INFO    ] Launching Daemon at Mon Jun 22 01:11:47 IST 2026
[2026-06-22 01:11:47,822.822 INFO    ] ================================================
[2026-06-22 01:11:48,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:11:48
[2026-06-22 01:11:48,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:11:49,174.174 INFO    ] Initializing speech engine...
[2026-06-22 01:11:49,183.183 INFO    ] 2026-06-22 01:11:49
[2026-06-22 01:11:49,433.433 INFO    ] 2026-06-22 01:11:49
[2026-06-22 01:11:49,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:11:49,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:11:49,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:11:49,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:11:49,918.918 INFO    ] time= 22/06/2026 01:11:49
[2026-06-22 01:11:49,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:11:49,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:11:50,050.050 INFO    ] No existing commands found in stream
[2026-06-22 01:11:55,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:11:55,065.065 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-22 01:11:58,104.104 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:11:58,107.107 INFO    ] Checking for system updates...
[2026-06-22 01:11:58,149.149 INFO    ] 200
[2026-06-22 01:11:58,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:11:58,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:11:58,213.213 INFO    ] No update needed
[2026-06-22 01:11:58,215.215 INFO    ] Checking for camera pi updates...
[2026-06-22 01:11:58,253.253 INFO    ] 200
[2026-06-22 01:11:58,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:11:58,302.302 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:11:58,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:11:58,373.373 INFO    ] No camera update needed
[2026-06-22 01:11:58,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:11:58,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:11:58,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:11:58,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:12:00,430.430 INFO    ] ================================================
[2026-06-22 01:12:00,446.446 INFO    ] Launching Daemon at Mon Jun 22 01:12:00 IST 2026
[2026-06-22 01:12:00,457.457 INFO    ] ================================================
[2026-06-22 01:12:01,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:12:01
[2026-06-22 01:12:01,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:12:02,198.198 INFO    ] Initializing speech engine...
[2026-06-22 01:12:02,208.208 INFO    ] 2026-06-22 01:12:02
[2026-06-22 01:12:02,564.564 INFO    ] 2026-06-22 01:12:02
[2026-06-22 01:12:02,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:12:02,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:12:02,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:12:03,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:12:03,050.050 INFO    ] time= 22/06/2026 01:12:03
[2026-06-22 01:12:03,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:12:03,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:12:03,217.217 INFO    ] No existing commands found in stream
[2026-06-22 01:12:08,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:12:08,231.231 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-22 01:12:11,858.858 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:12:11,861.861 INFO    ] Checking for system updates...
[2026-06-22 01:12:11,909.909 INFO    ] 200
[2026-06-22 01:12:11,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:12:11,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:12:11,971.971 INFO    ] No update needed
[2026-06-22 01:12:11,974.974 INFO    ] Checking for camera pi updates...
[2026-06-22 01:12:12,016.016 INFO    ] 200
[2026-06-22 01:12:12,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:12:12,063.063 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:12:12,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:12:12,164.164 INFO    ] No camera update needed
[2026-06-22 01:12:12,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:12:12,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:12:12,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:12:12,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:12:14,225.225 INFO    ] ================================================
[2026-06-22 01:12:14,240.240 INFO    ] Launching Daemon at Mon Jun 22 01:12:14 IST 2026
[2026-06-22 01:12:14,251.251 INFO    ] ================================================
[2026-06-22 01:12:14,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:12:14
[2026-06-22 01:12:15,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:12:15,655.655 INFO    ] Initializing speech engine...
[2026-06-22 01:12:15,667.667 INFO    ] 2026-06-22 01:12:15
[2026-06-22 01:12:15,920.920 INFO    ] 2026-06-22 01:12:15
[2026-06-22 01:12:15,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:12:16,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:12:16,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:12:16,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:12:16,296.296 INFO    ] time= 22/06/2026 01:12:16
[2026-06-22 01:12:16,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:12:16,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:12:16,442.442 INFO    ] No existing commands found in stream
[2026-06-22 01:12:21,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:12:21,470.470 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-22 01:12:23,927.927 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:12:23,930.930 INFO    ] Checking for system updates...
[2026-06-22 01:12:23,971.971 INFO    ] 200
[2026-06-22 01:12:23,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:12:24,029.029 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:12:24,031.031 INFO    ] No update needed
[2026-06-22 01:12:24,034.034 INFO    ] Checking for camera pi updates...
[2026-06-22 01:12:24,069.069 INFO    ] 200
[2026-06-22 01:12:24,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:12:24,113.113 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:12:24,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:12:24,211.211 INFO    ] No camera update needed
[2026-06-22 01:12:24,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:12:24,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:12:24,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:12:24,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:12:26,270.270 INFO    ] ================================================
[2026-06-22 01:12:26,285.285 INFO    ] Launching Daemon at Mon Jun 22 01:12:26 IST 2026
[2026-06-22 01:12:26,295.295 INFO    ] ================================================
[2026-06-22 01:12:26,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:12:26
[2026-06-22 01:12:27,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:12:27,691.691 INFO    ] Initializing speech engine...
[2026-06-22 01:12:27,705.705 INFO    ] 2026-06-22 01:12:27
[2026-06-22 01:12:27,992.992 INFO    ] 2026-06-22 01:12:27
[2026-06-22 01:12:28,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:12:28,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:12:28,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:12:28,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:12:28,534.534 INFO    ] time= 22/06/2026 01:12:28
[2026-06-22 01:12:28,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:12:28,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:12:28,688.688 INFO    ] No existing commands found in stream
[2026-06-22 01:12:33,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:12:33,710.710 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-22 01:12:36,288.288 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:12:36,289.289 INFO    ] Checking for system updates...
[2026-06-22 01:12:36,310.310 INFO    ] 200
[2026-06-22 01:12:36,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:12:36,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:12:36,350.350 INFO    ] No update needed
[2026-06-22 01:12:36,351.351 INFO    ] Checking for camera pi updates...
[2026-06-22 01:12:36,374.374 INFO    ] 200
[2026-06-22 01:12:36,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:12:36,410.410 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:12:36,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:12:36,511.511 INFO    ] No camera update needed
[2026-06-22 01:12:36,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:12:36,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:12:36,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:12:36,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:12:38,572.572 INFO    ] ================================================
[2026-06-22 01:12:38,588.588 INFO    ] Launching Daemon at Mon Jun 22 01:12:38 IST 2026
[2026-06-22 01:12:38,598.598 INFO    ] ================================================
[2026-06-22 01:12:39,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:12:39
[2026-06-22 01:12:39,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:12:39,970.970 INFO    ] Initializing speech engine...
[2026-06-22 01:12:39,978.978 INFO    ] 2026-06-22 01:12:39
[2026-06-22 01:12:40,240.240 INFO    ] 2026-06-22 01:12:40
[2026-06-22 01:12:40,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:12:40,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:12:40,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:12:40,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:12:40,689.689 INFO    ] time= 22/06/2026 01:12:40
[2026-06-22 01:12:40,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:12:40,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:12:40,848.848 INFO    ] No existing commands found in stream
[2026-06-22 01:12:45,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:12:45,862.862 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-22 01:12:48,853.853 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:12:48,855.855 INFO    ] Checking for system updates...
[2026-06-22 01:12:48,876.876 INFO    ] 200
[2026-06-22 01:12:48,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:12:48,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:12:48,916.916 INFO    ] No update needed
[2026-06-22 01:12:48,919.919 INFO    ] Checking for camera pi updates...
[2026-06-22 01:12:48,956.956 INFO    ] 200
[2026-06-22 01:12:48,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:12:49,004.004 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:12:49,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:12:49,109.109 INFO    ] No camera update needed
[2026-06-22 01:12:49,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:12:49,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:12:49,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:12:49,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:12:51,166.166 INFO    ] ================================================
[2026-06-22 01:12:51,181.181 INFO    ] Launching Daemon at Mon Jun 22 01:12:51 IST 2026
[2026-06-22 01:12:51,191.191 INFO    ] ================================================
[2026-06-22 01:12:51,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:12:51
[2026-06-22 01:12:52,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:12:52,649.649 INFO    ] Initializing speech engine...
[2026-06-22 01:12:52,659.659 INFO    ] 2026-06-22 01:12:52
[2026-06-22 01:12:52,909.909 INFO    ] 2026-06-22 01:12:52
[2026-06-22 01:12:52,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:12:53,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:12:53,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:12:53,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:12:53,386.386 INFO    ] time= 22/06/2026 01:12:53
[2026-06-22 01:12:53,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:12:53,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:12:53,534.534 INFO    ] No existing commands found in stream
[2026-06-22 01:12:58,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:12:58,549.549 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-22 01:13:02,486.486 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:13:02,491.491 INFO    ] Checking for system updates...
[2026-06-22 01:13:02,540.540 INFO    ] 200
[2026-06-22 01:13:02,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:13:02,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:13:02,618.618 INFO    ] No update needed
[2026-06-22 01:13:02,625.625 INFO    ] Checking for camera pi updates...
[2026-06-22 01:13:02,681.681 INFO    ] 200
[2026-06-22 01:13:02,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:13:02,739.739 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:13:02,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:13:02,804.804 INFO    ] No camera update needed
[2026-06-22 01:13:02,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:13:02,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:13:02,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:13:02,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:13:04,861.861 INFO    ] ================================================
[2026-06-22 01:13:04,876.876 INFO    ] Launching Daemon at Mon Jun 22 01:13:04 IST 2026
[2026-06-22 01:13:04,887.887 INFO    ] ================================================
[2026-06-22 01:13:05,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:13:05
[2026-06-22 01:13:06,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:13:06,256.256 INFO    ] Initializing speech engine...
[2026-06-22 01:13:06,263.263 INFO    ] 2026-06-22 01:13:06
[2026-06-22 01:13:06,573.573 INFO    ] 2026-06-22 01:13:06
[2026-06-22 01:13:06,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:13:06,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:13:06,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:13:06,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:13:06,960.960 INFO    ] time= 22/06/2026 01:13:06
[2026-06-22 01:13:06,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:13:07,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:13:07,088.088 INFO    ] No existing commands found in stream
[2026-06-22 01:13:12,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:13:12,102.102 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-22 01:13:16,392.392 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:13:16,394.394 INFO    ] Checking for system updates...
[2026-06-22 01:13:16,431.431 INFO    ] 200
[2026-06-22 01:13:16,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:13:16,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:13:16,490.490 INFO    ] No update needed
[2026-06-22 01:13:16,492.492 INFO    ] Checking for camera pi updates...
[2026-06-22 01:13:16,527.527 INFO    ] 200
[2026-06-22 01:13:16,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:13:16,576.576 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:13:16,657.657 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:13:16,660.660 INFO    ] No camera update needed
[2026-06-22 01:13:16,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:13:16,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:13:16,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:13:16,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:13:18,714.714 INFO    ] ================================================
[2026-06-22 01:13:18,729.729 INFO    ] Launching Daemon at Mon Jun 22 01:13:18 IST 2026
[2026-06-22 01:13:18,741.741 INFO    ] ================================================
[2026-06-22 01:13:19,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:13:19
[2026-06-22 01:13:19,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:13:20,123.123 INFO    ] Initializing speech engine...
[2026-06-22 01:13:20,130.130 INFO    ] 2026-06-22 01:13:20
[2026-06-22 01:13:20,391.391 INFO    ] 2026-06-22 01:13:20
[2026-06-22 01:13:20,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:13:20,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:13:20,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:13:20,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:13:20,868.868 INFO    ] time= 22/06/2026 01:13:20
[2026-06-22 01:13:20,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:13:20,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:13:21,000.000 INFO    ] No existing commands found in stream
[2026-06-22 01:13:26,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:13:26,014.014 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-22 01:13:27,222.222 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:13:27,223.223 INFO    ] Checking for system updates...
[2026-06-22 01:13:27,246.246 INFO    ] 200
[2026-06-22 01:13:27,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:13:27,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:13:27,312.312 INFO    ] No update needed
[2026-06-22 01:13:27,315.315 INFO    ] Checking for camera pi updates...
[2026-06-22 01:13:27,353.353 INFO    ] 200
[2026-06-22 01:13:27,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:13:27,402.402 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:13:27,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:13:27,480.480 INFO    ] No camera update needed
[2026-06-22 01:13:27,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:13:27,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:13:27,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:13:27,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:13:29,541.541 INFO    ] ================================================
[2026-06-22 01:13:29,557.557 INFO    ] Launching Daemon at Mon Jun 22 01:13:29 IST 2026
[2026-06-22 01:13:29,568.568 INFO    ] ================================================
[2026-06-22 01:13:30,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:13:30
[2026-06-22 01:13:30,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:13:31,117.117 INFO    ] Initializing speech engine...
[2026-06-22 01:13:31,138.138 INFO    ] 2026-06-22 01:13:31
[2026-06-22 01:13:31,437.437 INFO    ] 2026-06-22 01:13:31
[2026-06-22 01:13:31,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:13:31,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:13:31,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:13:31,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:13:31,955.955 INFO    ] time= 22/06/2026 01:13:31
[2026-06-22 01:13:32,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:13:32,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:13:32,177.177 INFO    ] No existing commands found in stream
[2026-06-22 01:13:37,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:13:37,206.206 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-22 01:13:38,257.257 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:13:38,259.259 INFO    ] Checking for system updates...
[2026-06-22 01:13:38,296.296 INFO    ] 200
[2026-06-22 01:13:38,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:13:38,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:13:38,356.356 INFO    ] No update needed
[2026-06-22 01:13:38,359.359 INFO    ] Checking for camera pi updates...
[2026-06-22 01:13:38,395.395 INFO    ] 200
[2026-06-22 01:13:38,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:13:38,445.445 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:13:38,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:13:38,533.533 INFO    ] No camera update needed
[2026-06-22 01:13:38,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:13:38,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:13:38,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:13:38,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:13:40,592.592 INFO    ] ================================================
[2026-06-22 01:13:40,608.608 INFO    ] Launching Daemon at Mon Jun 22 01:13:40 IST 2026
[2026-06-22 01:13:40,618.618 INFO    ] ================================================
[2026-06-22 01:13:41,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:13:41
[2026-06-22 01:13:41,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:13:42,177.177 INFO    ] Initializing speech engine...
[2026-06-22 01:13:42,185.185 INFO    ] 2026-06-22 01:13:42
[2026-06-22 01:13:42,479.479 INFO    ] 2026-06-22 01:13:42
[2026-06-22 01:13:42,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:13:42,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:13:42,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:13:42,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:13:42,940.940 INFO    ] time= 22/06/2026 01:13:42
[2026-06-22 01:13:42,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:13:43,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:13:43,083.083 INFO    ] No existing commands found in stream
[2026-06-22 01:13:48,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:13:48,099.099 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-22 01:13:50,303.303 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:13:50,307.307 INFO    ] Checking for system updates...
[2026-06-22 01:13:50,345.345 INFO    ] 200
[2026-06-22 01:13:50,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:13:50,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:13:50,406.406 INFO    ] No update needed
[2026-06-22 01:13:50,409.409 INFO    ] Checking for camera pi updates...
[2026-06-22 01:13:50,445.445 INFO    ] 200
[2026-06-22 01:13:50,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:13:50,491.491 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:13:50,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:13:50,684.684 INFO    ] No camera update needed
[2026-06-22 01:13:50,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:13:50,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:13:50,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:13:50,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:13:52,745.745 INFO    ] ================================================
[2026-06-22 01:13:52,760.760 INFO    ] Launching Daemon at Mon Jun 22 01:13:52 IST 2026
[2026-06-22 01:13:52,771.771 INFO    ] ================================================
[2026-06-22 01:13:53,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:13:53
[2026-06-22 01:13:54,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:13:54,433.433 INFO    ] Initializing speech engine...
[2026-06-22 01:13:54,440.440 INFO    ] 2026-06-22 01:13:54
[2026-06-22 01:13:54,725.725 INFO    ] 2026-06-22 01:13:54
[2026-06-22 01:13:54,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:13:55,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:13:55,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:13:55,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:13:55,180.180 INFO    ] time= 22/06/2026 01:13:55
[2026-06-22 01:13:55,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:13:55,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:13:55,319.319 INFO    ] No existing commands found in stream
[2026-06-22 01:14:00,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:14:00,340.340 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-22 01:14:03,673.673 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:14:03,676.676 INFO    ] Checking for system updates...
[2026-06-22 01:14:03,717.717 INFO    ] 200
[2026-06-22 01:14:03,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:14:03,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:14:03,786.786 INFO    ] No update needed
[2026-06-22 01:14:03,790.790 INFO    ] Checking for camera pi updates...
[2026-06-22 01:14:03,829.829 INFO    ] 200
[2026-06-22 01:14:03,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:14:03,879.879 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:14:03,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:14:03,959.959 INFO    ] No camera update needed
[2026-06-22 01:14:03,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:14:03,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:14:03,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:14:03,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:14:06,015.015 INFO    ] ================================================
[2026-06-22 01:14:06,030.030 INFO    ] Launching Daemon at Mon Jun 22 01:14:06 IST 2026
[2026-06-22 01:14:06,041.041 INFO    ] ================================================
[2026-06-22 01:14:06,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:14:06
[2026-06-22 01:14:07,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:14:07,432.432 INFO    ] Initializing speech engine...
[2026-06-22 01:14:07,441.441 INFO    ] 2026-06-22 01:14:07
[2026-06-22 01:14:07,728.728 INFO    ] 2026-06-22 01:14:07
[2026-06-22 01:14:07,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:14:07,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:14:07,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:14:08,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:14:08,111.111 INFO    ] time= 22/06/2026 01:14:08
[2026-06-22 01:14:08,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:14:08,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:14:08,285.285 INFO    ] No existing commands found in stream
[2026-06-22 01:14:13,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:14:13,318.318 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-22 01:14:14,682.682 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:14:14,685.685 INFO    ] Checking for system updates...
[2026-06-22 01:14:14,720.720 INFO    ] 200
[2026-06-22 01:14:14,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:14:14,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:14:14,777.777 INFO    ] No update needed
[2026-06-22 01:14:14,780.780 INFO    ] Checking for camera pi updates...
[2026-06-22 01:14:14,813.813 INFO    ] 200
[2026-06-22 01:14:14,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:14:14,862.862 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:14:14,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:14:14,948.948 INFO    ] No camera update needed
[2026-06-22 01:14:14,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:14:14,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:14:14,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:14:14,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:14:17,003.003 INFO    ] ================================================
[2026-06-22 01:14:17,018.018 INFO    ] Launching Daemon at Mon Jun 22 01:14:17 IST 2026
[2026-06-22 01:14:17,030.030 INFO    ] ================================================
[2026-06-22 01:14:17,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:14:17
[2026-06-22 01:14:18,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:14:18,444.444 INFO    ] Initializing speech engine...
[2026-06-22 01:14:18,467.467 INFO    ] 2026-06-22 01:14:18
[2026-06-22 01:14:18,722.722 INFO    ] 2026-06-22 01:14:18
[2026-06-22 01:14:18,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:14:18,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:14:18,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:14:19,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:14:19,099.099 INFO    ] time= 22/06/2026 01:14:19
[2026-06-22 01:14:19,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:14:19,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:14:19,273.273 INFO    ] No existing commands found in stream
[2026-06-22 01:14:24,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:14:24,306.306 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-22 01:14:26,063.063 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:14:26,066.066 INFO    ] Checking for system updates...
[2026-06-22 01:14:26,104.104 INFO    ] 200
[2026-06-22 01:14:26,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:14:26,162.162 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:14:26,165.165 INFO    ] No update needed
[2026-06-22 01:14:26,167.167 INFO    ] Checking for camera pi updates...
[2026-06-22 01:14:26,203.203 INFO    ] 200
[2026-06-22 01:14:26,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:14:26,252.252 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:14:26,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:14:26,349.349 INFO    ] No camera update needed
[2026-06-22 01:14:26,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:14:26,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:14:26,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:14:26,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:14:28,408.408 INFO    ] ================================================
[2026-06-22 01:14:28,424.424 INFO    ] Launching Daemon at Mon Jun 22 01:14:28 IST 2026
[2026-06-22 01:14:28,435.435 INFO    ] ================================================
[2026-06-22 01:14:29,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:14:29
[2026-06-22 01:14:29,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:14:29,785.785 INFO    ] Initializing speech engine...
[2026-06-22 01:14:29,798.798 INFO    ] 2026-06-22 01:14:29
[2026-06-22 01:14:30,089.089 INFO    ] 2026-06-22 01:14:30
[2026-06-22 01:14:30,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:14:30,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:14:30,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:14:30,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:14:30,448.448 INFO    ] time= 22/06/2026 01:14:30
[2026-06-22 01:14:30,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:14:30,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:14:30,535.535 INFO    ] No existing commands found in stream
[2026-06-22 01:14:35,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:14:35,579.579 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-22 01:14:38,414.414 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:14:38,417.417 INFO    ] Checking for system updates...
[2026-06-22 01:14:38,453.453 INFO    ] 200
[2026-06-22 01:14:38,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:14:38,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:14:38,511.511 INFO    ] No update needed
[2026-06-22 01:14:38,514.514 INFO    ] Checking for camera pi updates...
[2026-06-22 01:14:38,547.547 INFO    ] 200
[2026-06-22 01:14:38,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:14:38,590.590 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:14:38,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:14:38,685.685 INFO    ] No camera update needed
[2026-06-22 01:14:38,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:14:38,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:14:38,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:14:38,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:14:40,740.740 INFO    ] ================================================
[2026-06-22 01:14:40,756.756 INFO    ] Launching Daemon at Mon Jun 22 01:14:40 IST 2026
[2026-06-22 01:14:40,766.766 INFO    ] ================================================
[2026-06-22 01:14:41,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:14:41
[2026-06-22 01:14:41,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:14:42,270.270 INFO    ] Initializing speech engine...
[2026-06-22 01:14:42,278.278 INFO    ] 2026-06-22 01:14:42
[2026-06-22 01:14:42,556.556 INFO    ] 2026-06-22 01:14:42
[2026-06-22 01:14:42,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:14:42,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:14:42,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:14:42,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:14:43,050.050 INFO    ] time= 22/06/2026 01:14:43
[2026-06-22 01:14:43,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:14:43,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:14:43,193.193 INFO    ] No existing commands found in stream
[2026-06-22 01:14:48,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:14:48,222.222 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-22 01:14:52,489.489 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:14:52,492.492 INFO    ] Checking for system updates...
[2026-06-22 01:14:52,529.529 INFO    ] 200
[2026-06-22 01:14:52,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:14:52,586.586 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:14:52,589.589 INFO    ] No update needed
[2026-06-22 01:14:52,591.591 INFO    ] Checking for camera pi updates...
[2026-06-22 01:14:52,625.625 INFO    ] 200
[2026-06-22 01:14:52,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:14:52,669.669 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:14:52,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:14:52,749.749 INFO    ] No camera update needed
[2026-06-22 01:14:52,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:14:52,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:14:52,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:14:52,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:14:54,803.803 INFO    ] ================================================
[2026-06-22 01:14:54,818.818 INFO    ] Launching Daemon at Mon Jun 22 01:14:54 IST 2026
[2026-06-22 01:14:54,829.829 INFO    ] ================================================
[2026-06-22 01:14:55,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:14:55
[2026-06-22 01:14:56,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:14:56,363.363 INFO    ] Initializing speech engine...
[2026-06-22 01:14:56,378.378 INFO    ] 2026-06-22 01:14:56
[2026-06-22 01:14:56,647.647 INFO    ] 2026-06-22 01:14:56
[2026-06-22 01:14:56,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:14:56,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:14:56,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:14:57,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:14:57,115.115 INFO    ] time= 22/06/2026 01:14:57
[2026-06-22 01:14:57,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:14:57,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:14:57,269.269 INFO    ] No existing commands found in stream
[2026-06-22 01:15:02,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:15:02,290.290 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-22 01:15:06,574.574 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:15:06,577.577 INFO    ] Checking for system updates...
[2026-06-22 01:15:06,614.614 INFO    ] 200
[2026-06-22 01:15:06,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:15:06,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:15:06,672.672 INFO    ] No update needed
[2026-06-22 01:15:06,674.674 INFO    ] Checking for camera pi updates...
[2026-06-22 01:15:06,709.709 INFO    ] 200
[2026-06-22 01:15:06,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:15:06,751.751 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:15:06,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:15:06,838.838 INFO    ] No camera update needed
[2026-06-22 01:15:06,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:15:06,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:15:06,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:15:06,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:15:08,893.893 INFO    ] ================================================
[2026-06-22 01:15:08,908.908 INFO    ] Launching Daemon at Mon Jun 22 01:15:08 IST 2026
[2026-06-22 01:15:08,919.919 INFO    ] ================================================
[2026-06-22 01:15:09,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:15:09
[2026-06-22 01:15:10,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:15:10,413.413 INFO    ] Initializing speech engine...
[2026-06-22 01:15:10,419.419 INFO    ] 2026-06-22 01:15:10
[2026-06-22 01:15:10,733.733 INFO    ] 2026-06-22 01:15:10
[2026-06-22 01:15:10,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:15:11,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:15:11,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:15:11,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:15:11,239.239 INFO    ] time= 22/06/2026 01:15:11
[2026-06-22 01:15:11,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:15:11,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:15:11,385.385 INFO    ] No existing commands found in stream
[2026-06-22 01:15:16,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:15:16,410.410 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-22 01:15:19,301.301 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:15:19,303.303 INFO    ] Checking for system updates...
[2026-06-22 01:15:19,324.324 INFO    ] 200
[2026-06-22 01:15:19,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:15:19,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:15:19,383.383 INFO    ] No update needed
[2026-06-22 01:15:19,386.386 INFO    ] Checking for camera pi updates...
[2026-06-22 01:15:19,423.423 INFO    ] 200
[2026-06-22 01:15:19,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:15:19,466.466 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:15:19,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:15:19,549.549 INFO    ] No camera update needed
[2026-06-22 01:15:19,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:15:19,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:15:19,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:15:19,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:15:21,605.605 INFO    ] ================================================
[2026-06-22 01:15:21,620.620 INFO    ] Launching Daemon at Mon Jun 22 01:15:21 IST 2026
[2026-06-22 01:15:21,630.630 INFO    ] ================================================
[2026-06-22 01:15:22,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:15:22
[2026-06-22 01:15:22,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:15:23,114.114 INFO    ] Initializing speech engine...
[2026-06-22 01:15:23,126.126 INFO    ] 2026-06-22 01:15:23
[2026-06-22 01:15:23,404.404 INFO    ] 2026-06-22 01:15:23
[2026-06-22 01:15:23,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:15:23,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:15:23,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:15:23,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:15:23,928.928 INFO    ] time= 22/06/2026 01:15:23
[2026-06-22 01:15:23,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:15:23,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:15:24,062.062 INFO    ] No existing commands found in stream
[2026-06-22 01:15:29,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:15:29,090.090 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-22 01:15:30,247.247 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:15:30,248.248 INFO    ] Checking for system updates...
[2026-06-22 01:15:30,269.269 INFO    ] 200
[2026-06-22 01:15:30,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:15:30,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:15:30,306.306 INFO    ] No update needed
[2026-06-22 01:15:30,307.307 INFO    ] Checking for camera pi updates...
[2026-06-22 01:15:30,327.327 INFO    ] 200
[2026-06-22 01:15:30,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:15:30,366.366 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:15:30,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:15:30,436.436 INFO    ] No camera update needed
[2026-06-22 01:15:30,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:15:30,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:15:30,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:15:30,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:15:32,495.495 INFO    ] ================================================
[2026-06-22 01:15:32,512.512 INFO    ] Launching Daemon at Mon Jun 22 01:15:32 IST 2026
[2026-06-22 01:15:32,524.524 INFO    ] ================================================
[2026-06-22 01:15:33,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:15:33
[2026-06-22 01:15:33,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:15:34,123.123 INFO    ] Initializing speech engine...
[2026-06-22 01:15:34,130.130 INFO    ] 2026-06-22 01:15:34
[2026-06-22 01:15:34,400.400 INFO    ] 2026-06-22 01:15:34
[2026-06-22 01:15:34,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:15:34,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:15:34,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:15:34,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:15:34,867.867 INFO    ] time= 22/06/2026 01:15:34
[2026-06-22 01:15:34,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:15:34,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:15:35,007.007 INFO    ] No existing commands found in stream
[2026-06-22 01:15:40,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:15:40,022.022 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-22 01:15:42,664.664 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:15:42,665.665 INFO    ] Checking for system updates...
[2026-06-22 01:15:42,687.687 INFO    ] 200
[2026-06-22 01:15:42,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:15:42,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:15:42,721.721 INFO    ] No update needed
[2026-06-22 01:15:42,723.723 INFO    ] Checking for camera pi updates...
[2026-06-22 01:15:42,742.742 INFO    ] 200
[2026-06-22 01:15:42,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:15:42,784.784 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:15:42,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:15:42,867.867 INFO    ] No camera update needed
[2026-06-22 01:15:42,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:15:42,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:15:42,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:15:42,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:15:44,924.924 INFO    ] ================================================
[2026-06-22 01:15:44,939.939 INFO    ] Launching Daemon at Mon Jun 22 01:15:44 IST 2026
[2026-06-22 01:15:44,950.950 INFO    ] ================================================
[2026-06-22 01:15:45,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:15:45
[2026-06-22 01:15:46,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:15:46,330.330 INFO    ] Initializing speech engine...
[2026-06-22 01:15:46,338.338 INFO    ] 2026-06-22 01:15:46
[2026-06-22 01:15:46,599.599 INFO    ] 2026-06-22 01:15:46
[2026-06-22 01:15:46,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:15:46,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:15:46,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:15:47,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:15:47,068.068 INFO    ] time= 22/06/2026 01:15:47
[2026-06-22 01:15:47,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:15:47,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:15:47,236.236 INFO    ] No existing commands found in stream
[2026-06-22 01:15:52,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:15:52,276.276 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-22 01:15:56,432.432 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:15:56,435.435 INFO    ] Checking for system updates...
[2026-06-22 01:15:56,471.471 INFO    ] 200
[2026-06-22 01:15:56,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:15:56,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:15:56,528.528 INFO    ] No update needed
[2026-06-22 01:15:56,531.531 INFO    ] Checking for camera pi updates...
[2026-06-22 01:15:56,568.568 INFO    ] 200
[2026-06-22 01:15:56,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:15:56,614.614 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:15:56,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:15:56,805.805 INFO    ] No camera update needed
[2026-06-22 01:15:56,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:15:56,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:15:56,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:15:56,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:15:58,863.863 INFO    ] ================================================
[2026-06-22 01:15:58,878.878 INFO    ] Launching Daemon at Mon Jun 22 01:15:58 IST 2026
[2026-06-22 01:15:58,889.889 INFO    ] ================================================
[2026-06-22 01:15:59,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:15:59
[2026-06-22 01:16:00,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:16:00,315.315 INFO    ] Initializing speech engine...
[2026-06-22 01:16:00,324.324 INFO    ] 2026-06-22 01:16:00
[2026-06-22 01:16:00,574.574 INFO    ] 2026-06-22 01:16:00
[2026-06-22 01:16:00,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:16:00,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:16:00,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:16:01,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:16:01,066.066 INFO    ] time= 22/06/2026 01:16:01
[2026-06-22 01:16:01,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:16:01,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:16:01,192.192 INFO    ] No existing commands found in stream
[2026-06-22 01:16:06,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:16:06,209.209 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-22 01:16:10,274.274 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:16:10,276.276 INFO    ] Checking for system updates...
[2026-06-22 01:16:10,296.296 INFO    ] 200
[2026-06-22 01:16:10,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:16:10,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:16:10,330.330 INFO    ] No update needed
[2026-06-22 01:16:10,331.331 INFO    ] Checking for camera pi updates...
[2026-06-22 01:16:10,351.351 INFO    ] 200
[2026-06-22 01:16:10,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:16:10,377.377 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:16:10,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:16:10,459.459 INFO    ] No camera update needed
[2026-06-22 01:16:10,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:16:10,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:16:10,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:16:10,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:16:12,517.517 INFO    ] ================================================
[2026-06-22 01:16:12,533.533 INFO    ] Launching Daemon at Mon Jun 22 01:16:12 IST 2026
[2026-06-22 01:16:12,543.543 INFO    ] ================================================
[2026-06-22 01:16:13,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:16:13
[2026-06-22 01:16:13,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:16:13,980.980 INFO    ] Initializing speech engine...
[2026-06-22 01:16:13,996.996 INFO    ] 2026-06-22 01:16:13
[2026-06-22 01:16:14,287.287 INFO    ] 2026-06-22 01:16:14
[2026-06-22 01:16:14,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:16:14,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:16:14,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:16:14,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:16:14,815.815 INFO    ] time= 22/06/2026 01:16:14
[2026-06-22 01:16:14,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:16:14,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:16:14,996.996 INFO    ] No existing commands found in stream
[2026-06-22 01:16:20,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:16:20,012.012 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-22 01:16:23,450.450 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:16:23,453.453 INFO    ] Checking for system updates...
[2026-06-22 01:16:23,489.489 INFO    ] 200
[2026-06-22 01:16:23,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:16:23,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:16:23,546.546 INFO    ] No update needed
[2026-06-22 01:16:23,549.549 INFO    ] Checking for camera pi updates...
[2026-06-22 01:16:23,582.582 INFO    ] 200
[2026-06-22 01:16:23,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:16:23,625.625 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:16:23,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:16:23,727.727 INFO    ] No camera update needed
[2026-06-22 01:16:23,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:16:23,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:16:23,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:16:23,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:16:25,784.784 INFO    ] ================================================
[2026-06-22 01:16:25,799.799 INFO    ] Launching Daemon at Mon Jun 22 01:16:25 IST 2026
[2026-06-22 01:16:25,810.810 INFO    ] ================================================
[2026-06-22 01:16:26,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:16:26
[2026-06-22 01:16:26,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:16:27,135.135 INFO    ] Initializing speech engine...
[2026-06-22 01:16:27,151.151 INFO    ] 2026-06-22 01:16:27
[2026-06-22 01:16:27,438.438 INFO    ] 2026-06-22 01:16:27
[2026-06-22 01:16:27,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:16:27,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:16:27,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:16:27,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:16:27,863.863 INFO    ] time= 22/06/2026 01:16:27
[2026-06-22 01:16:27,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:16:27,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:16:28,034.034 INFO    ] No existing commands found in stream
[2026-06-22 01:16:33,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:16:33,057.057 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-22 01:16:35,264.264 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:16:35,267.267 INFO    ] Checking for system updates...
[2026-06-22 01:16:35,321.321 INFO    ] 200
[2026-06-22 01:16:35,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 01:16:35,328.328 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-22 01:16:35,331.331 INFO    ] Checking for camera pi updates...
[2026-06-22 01:16:35,377.377 INFO    ] 200
[2026-06-22 01:16:35,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 01:16:35,383.383 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-22 01:16:35,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:16:35,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:16:35,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:16:35,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:16:37,443.443 INFO    ] ================================================
[2026-06-22 01:16:37,458.458 INFO    ] Launching Daemon at Mon Jun 22 01:16:37 IST 2026
[2026-06-22 01:16:37,470.470 INFO    ] ================================================
[2026-06-22 01:16:38,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:16:38
[2026-06-22 01:16:38,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:16:38,837.837 INFO    ] Initializing speech engine...
[2026-06-22 01:16:38,857.857 INFO    ] 2026-06-22 01:16:38
[2026-06-22 01:16:39,133.133 INFO    ] 2026-06-22 01:16:39
[2026-06-22 01:16:39,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:16:39,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:16:39,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:16:39,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:16:39,487.487 INFO    ] time= 22/06/2026 01:16:39
[2026-06-22 01:16:39,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:16:39,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:16:39,568.568 INFO    ] No existing commands found in stream
[2026-06-22 01:16:44,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:16:44,581.581 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-22 01:16:47,310.310 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:16:47,312.312 INFO    ] Checking for system updates...
[2026-06-22 01:16:47,347.347 INFO    ] 200
[2026-06-22 01:16:47,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:16:47,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:16:47,405.405 INFO    ] No update needed
[2026-06-22 01:16:47,408.408 INFO    ] Checking for camera pi updates...
[2026-06-22 01:16:47,441.441 INFO    ] 200
[2026-06-22 01:16:47,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:16:47,485.485 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:16:47,555.555 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:16:47,557.557 INFO    ] No camera update needed
[2026-06-22 01:16:47,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:16:47,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:16:47,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:16:47,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:16:49,612.612 INFO    ] ================================================
[2026-06-22 01:16:49,628.628 INFO    ] Launching Daemon at Mon Jun 22 01:16:49 IST 2026
[2026-06-22 01:16:49,639.639 INFO    ] ================================================
[2026-06-22 01:16:50,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:16:50
[2026-06-22 01:16:50,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:16:51,007.007 INFO    ] Initializing speech engine...
[2026-06-22 01:16:51,027.027 INFO    ] 2026-06-22 01:16:51
[2026-06-22 01:16:51,297.297 INFO    ] 2026-06-22 01:16:51
[2026-06-22 01:16:51,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:16:51,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:16:51,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:16:51,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:16:51,681.681 INFO    ] time= 22/06/2026 01:16:51
[2026-06-22 01:16:51,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:16:51,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:16:51,806.806 INFO    ] No existing commands found in stream
[2026-06-22 01:16:56,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:16:56,822.822 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-22 01:16:57,315.315 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:16:57,317.317 INFO    ] Checking for system updates...
[2026-06-22 01:16:57,337.337 INFO    ] 200
[2026-06-22 01:16:57,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:16:57,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:16:57,371.371 INFO    ] No update needed
[2026-06-22 01:16:57,372.372 INFO    ] Checking for camera pi updates...
[2026-06-22 01:16:57,391.391 INFO    ] 200
[2026-06-22 01:16:57,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:16:57,422.422 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:16:57,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:16:57,506.506 INFO    ] No camera update needed
[2026-06-22 01:16:57,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:16:57,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:16:57,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:16:57,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:16:59,561.561 INFO    ] ================================================
[2026-06-22 01:16:59,577.577 INFO    ] Launching Daemon at Mon Jun 22 01:16:59 IST 2026
[2026-06-22 01:16:59,588.588 INFO    ] ================================================
[2026-06-22 01:17:00,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:17:00
[2026-06-22 01:17:00,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:17:01,098.098 INFO    ] Initializing speech engine...
[2026-06-22 01:17:01,107.107 INFO    ] 2026-06-22 01:17:01
[2026-06-22 01:17:01,388.388 INFO    ] 2026-06-22 01:17:01
[2026-06-22 01:17:01,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:17:01,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:17:01,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:17:01,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:17:01,895.895 INFO    ] time= 22/06/2026 01:17:01
[2026-06-22 01:17:01,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:17:01,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:17:02,022.022 INFO    ] No existing commands found in stream
[2026-06-22 01:17:07,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:17:07,062.062 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-22 01:17:09,512.512 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:17:09,515.515 INFO    ] Checking for system updates...
[2026-06-22 01:17:09,575.575 INFO    ] 200
[2026-06-22 01:17:09,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:17:09,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:17:09,633.633 INFO    ] No update needed
[2026-06-22 01:17:09,635.635 INFO    ] Checking for camera pi updates...
[2026-06-22 01:17:09,669.669 INFO    ] 200
[2026-06-22 01:17:09,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:17:09,716.716 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:17:09,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:17:09,822.822 INFO    ] No camera update needed
[2026-06-22 01:17:09,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:17:09,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:17:09,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:17:09,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:17:11,878.878 INFO    ] ================================================
[2026-06-22 01:17:11,893.893 INFO    ] Launching Daemon at Mon Jun 22 01:17:11 IST 2026
[2026-06-22 01:17:11,904.904 INFO    ] ================================================
[2026-06-22 01:17:12,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:17:12
[2026-06-22 01:17:12,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:17:13,226.226 INFO    ] Initializing speech engine...
[2026-06-22 01:17:13,251.251 INFO    ] 2026-06-22 01:17:13
[2026-06-22 01:17:13,510.510 INFO    ] 2026-06-22 01:17:13
[2026-06-22 01:17:13,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:17:13,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:17:13,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:17:14,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:17:14,082.082 INFO    ] time= 22/06/2026 01:17:14
[2026-06-22 01:17:14,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:17:14,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:17:14,209.209 INFO    ] No existing commands found in stream
[2026-06-22 01:17:19,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:17:19,233.233 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-22 01:17:19,721.721 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:17:19,724.724 INFO    ] Checking for system updates...
[2026-06-22 01:17:19,760.760 INFO    ] 200
[2026-06-22 01:17:19,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:17:19,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:17:19,822.822 INFO    ] No update needed
[2026-06-22 01:17:19,824.824 INFO    ] Checking for camera pi updates...
[2026-06-22 01:17:19,858.858 INFO    ] 200
[2026-06-22 01:17:19,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:17:19,901.901 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:17:19,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:17:19,967.967 INFO    ] No camera update needed
[2026-06-22 01:17:19,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:17:19,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:17:19,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:17:19,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:17:22,024.024 INFO    ] ================================================
[2026-06-22 01:17:22,040.040 INFO    ] Launching Daemon at Mon Jun 22 01:17:22 IST 2026
[2026-06-22 01:17:22,050.050 INFO    ] ================================================
[2026-06-22 01:17:22,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:17:22
[2026-06-22 01:17:23,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:17:23,394.394 INFO    ] Initializing speech engine...
[2026-06-22 01:17:23,402.402 INFO    ] 2026-06-22 01:17:23
[2026-06-22 01:17:23,656.656 INFO    ] 2026-06-22 01:17:23
[2026-06-22 01:17:23,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:17:23,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:17:23,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:17:24,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:17:24,042.042 INFO    ] time= 22/06/2026 01:17:24
[2026-06-22 01:17:24,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:17:24,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:17:24,218.218 INFO    ] No existing commands found in stream
[2026-06-22 01:17:29,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:17:29,258.258 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-22 01:17:29,660.660 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:17:29,663.663 INFO    ] Checking for system updates...
[2026-06-22 01:17:29,701.701 INFO    ] 200
[2026-06-22 01:17:29,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:17:29,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:17:29,759.759 INFO    ] No update needed
[2026-06-22 01:17:29,762.762 INFO    ] Checking for camera pi updates...
[2026-06-22 01:17:29,800.800 INFO    ] 200
[2026-06-22 01:17:29,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:17:29,846.846 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:17:29,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:17:29,929.929 INFO    ] No camera update needed
[2026-06-22 01:17:29,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:17:29,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:17:29,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:17:29,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:17:31,990.990 INFO    ] ================================================
[2026-06-22 01:17:32,007.007 INFO    ] Launching Daemon at Mon Jun 22 01:17:32 IST 2026
[2026-06-22 01:17:32,019.019 INFO    ] ================================================
[2026-06-22 01:17:32,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:17:32
[2026-06-22 01:17:33,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:17:33,514.514 INFO    ] Initializing speech engine...
[2026-06-22 01:17:33,524.524 INFO    ] 2026-06-22 01:17:33
[2026-06-22 01:17:33,791.791 INFO    ] 2026-06-22 01:17:33
[2026-06-22 01:17:33,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:17:34,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:17:34,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:17:34,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:17:34,164.164 INFO    ] time= 22/06/2026 01:17:34
[2026-06-22 01:17:34,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:17:34,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:17:34,289.289 INFO    ] No existing commands found in stream
[2026-06-22 01:17:39,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:17:39,302.302 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-22 01:17:41,953.953 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:17:41,956.956 INFO    ] Checking for system updates...
[2026-06-22 01:17:41,993.993 INFO    ] 200
[2026-06-22 01:17:41,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:17:42,051.051 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:17:42,054.054 INFO    ] No update needed
[2026-06-22 01:17:42,057.057 INFO    ] Checking for camera pi updates...
[2026-06-22 01:17:42,091.091 INFO    ] 200
[2026-06-22 01:17:42,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:17:42,136.136 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:17:42,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:17:42,240.240 INFO    ] No camera update needed
[2026-06-22 01:17:42,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:17:42,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:17:42,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:17:42,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:17:44,301.301 INFO    ] ================================================
[2026-06-22 01:17:44,317.317 INFO    ] Launching Daemon at Mon Jun 22 01:17:44 IST 2026
[2026-06-22 01:17:44,328.328 INFO    ] ================================================
[2026-06-22 01:17:44,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:17:44
[2026-06-22 01:17:45,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:17:45,855.855 INFO    ] Initializing speech engine...
[2026-06-22 01:17:45,869.869 INFO    ] 2026-06-22 01:17:45
[2026-06-22 01:17:46,179.179 INFO    ] 2026-06-22 01:17:46
[2026-06-22 01:17:46,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:17:46,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:17:46,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:17:46,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:17:46,692.692 INFO    ] time= 22/06/2026 01:17:46
[2026-06-22 01:17:46,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:17:46,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:17:46,848.848 INFO    ] No existing commands found in stream
[2026-06-22 01:17:51,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:17:51,882.882 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-22 01:17:54,565.565 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:17:54,566.566 INFO    ] Checking for system updates...
[2026-06-22 01:17:54,587.587 INFO    ] 200
[2026-06-22 01:17:54,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:17:54,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:17:54,622.622 INFO    ] No update needed
[2026-06-22 01:17:54,625.625 INFO    ] Checking for camera pi updates...
[2026-06-22 01:17:54,661.661 INFO    ] 200
[2026-06-22 01:17:54,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:17:54,706.706 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:17:54,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:17:54,792.792 INFO    ] No camera update needed
[2026-06-22 01:17:54,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:17:54,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:17:54,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:17:54,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:17:56,851.851 INFO    ] ================================================
[2026-06-22 01:17:56,866.866 INFO    ] Launching Daemon at Mon Jun 22 01:17:56 IST 2026
[2026-06-22 01:17:56,877.877 INFO    ] ================================================
[2026-06-22 01:17:57,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:17:57
[2026-06-22 01:17:57,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:17:58,203.203 INFO    ] Initializing speech engine...
[2026-06-22 01:17:58,210.210 INFO    ] 2026-06-22 01:17:58
[2026-06-22 01:17:58,503.503 INFO    ] 2026-06-22 01:17:58
[2026-06-22 01:17:58,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:17:58,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:17:58,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:17:58,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:17:58,886.886 INFO    ] time= 22/06/2026 01:17:58
[2026-06-22 01:17:58,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:17:58,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:17:59,011.011 INFO    ] No existing commands found in stream
[2026-06-22 01:18:04,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:18:04,027.027 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-22 01:18:06,193.193 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:18:06,196.196 INFO    ] Checking for system updates...
[2026-06-22 01:18:06,231.231 INFO    ] 200
[2026-06-22 01:18:06,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:18:06,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:18:06,291.291 INFO    ] No update needed
[2026-06-22 01:18:06,294.294 INFO    ] Checking for camera pi updates...
[2026-06-22 01:18:06,328.328 INFO    ] 200
[2026-06-22 01:18:06,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:18:06,376.376 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:18:06,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:18:06,458.458 INFO    ] No camera update needed
[2026-06-22 01:18:06,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:18:06,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:18:06,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:18:06,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:18:08,514.514 INFO    ] ================================================
[2026-06-22 01:18:08,530.530 INFO    ] Launching Daemon at Mon Jun 22 01:18:08 IST 2026
[2026-06-22 01:18:08,540.540 INFO    ] ================================================
[2026-06-22 01:18:09,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:18:09
[2026-06-22 01:18:09,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:18:09,870.870 INFO    ] Initializing speech engine...
[2026-06-22 01:18:09,879.879 INFO    ] 2026-06-22 01:18:09
[2026-06-22 01:18:10,128.128 INFO    ] 2026-06-22 01:18:10
[2026-06-22 01:18:10,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:18:10,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:18:10,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:18:10,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:18:10,503.503 INFO    ] time= 22/06/2026 01:18:10
[2026-06-22 01:18:10,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:18:10,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:18:10,665.665 INFO    ] No existing commands found in stream
[2026-06-22 01:18:15,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:18:15,692.692 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-22 01:18:17,279.279 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:18:17,282.282 INFO    ] Checking for system updates...
[2026-06-22 01:18:17,318.318 INFO    ] 200
[2026-06-22 01:18:17,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:18:17,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:18:17,375.375 INFO    ] No update needed
[2026-06-22 01:18:17,378.378 INFO    ] Checking for camera pi updates...
[2026-06-22 01:18:17,411.411 INFO    ] 200
[2026-06-22 01:18:17,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:18:17,456.456 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:18:17,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:18:17,542.542 INFO    ] No camera update needed
[2026-06-22 01:18:17,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:18:17,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:18:17,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:18:17,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:18:19,600.600 INFO    ] ================================================
[2026-06-22 01:18:19,616.616 INFO    ] Launching Daemon at Mon Jun 22 01:18:19 IST 2026
[2026-06-22 01:18:19,627.627 INFO    ] ================================================
[2026-06-22 01:18:20,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:18:20
[2026-06-22 01:18:20,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:18:21,095.095 INFO    ] Initializing speech engine...
[2026-06-22 01:18:21,104.104 INFO    ] 2026-06-22 01:18:21
[2026-06-22 01:18:21,352.352 INFO    ] 2026-06-22 01:18:21
[2026-06-22 01:18:21,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:18:21,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:18:21,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:18:21,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:18:21,723.723 INFO    ] time= 22/06/2026 01:18:21
[2026-06-22 01:18:21,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:18:21,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:18:21,888.888 INFO    ] No existing commands found in stream
[2026-06-22 01:18:26,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:18:26,922.922 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-22 01:18:28,445.445 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:18:28,447.447 INFO    ] Checking for system updates...
[2026-06-22 01:18:28,467.467 INFO    ] 200
[2026-06-22 01:18:28,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:18:28,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:18:28,502.502 INFO    ] No update needed
[2026-06-22 01:18:28,504.504 INFO    ] Checking for camera pi updates...
[2026-06-22 01:18:28,524.524 INFO    ] 200
[2026-06-22 01:18:28,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:18:28,571.571 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:18:28,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:18:28,636.636 INFO    ] No camera update needed
[2026-06-22 01:18:28,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:18:28,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:18:28,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:18:28,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:18:30,691.691 INFO    ] ================================================
[2026-06-22 01:18:30,706.706 INFO    ] Launching Daemon at Mon Jun 22 01:18:30 IST 2026
[2026-06-22 01:18:30,717.717 INFO    ] ================================================
[2026-06-22 01:18:31,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:18:31
[2026-06-22 01:18:31,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:18:32,199.199 INFO    ] Initializing speech engine...
[2026-06-22 01:18:32,222.222 INFO    ] 2026-06-22 01:18:32
[2026-06-22 01:18:32,495.495 INFO    ] 2026-06-22 01:18:32
[2026-06-22 01:18:32,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:18:32,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:18:32,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:18:32,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:18:32,873.873 INFO    ] time= 22/06/2026 01:18:32
[2026-06-22 01:18:32,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:18:32,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:18:32,971.971 INFO    ] No existing commands found in stream
[2026-06-22 01:18:37,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:18:37,986.986 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-22 01:18:38,323.323 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:18:38,324.324 INFO    ] Checking for system updates...
[2026-06-22 01:18:38,345.345 INFO    ] 200
[2026-06-22 01:18:38,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:18:38,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:18:38,378.378 INFO    ] No update needed
[2026-06-22 01:18:38,380.380 INFO    ] Checking for camera pi updates...
[2026-06-22 01:18:38,401.401 INFO    ] 200
[2026-06-22 01:18:38,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:18:38,438.438 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:18:38,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:18:38,525.525 INFO    ] No camera update needed
[2026-06-22 01:18:38,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:18:38,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:18:38,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:18:38,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:18:40,586.586 INFO    ] ================================================
[2026-06-22 01:18:40,601.601 INFO    ] Launching Daemon at Mon Jun 22 01:18:40 IST 2026
[2026-06-22 01:18:40,612.612 INFO    ] ================================================
[2026-06-22 01:18:41,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:18:41
[2026-06-22 01:18:41,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:18:42,124.124 INFO    ] Initializing speech engine...
[2026-06-22 01:18:42,138.138 INFO    ] 2026-06-22 01:18:42
[2026-06-22 01:18:42,426.426 INFO    ] 2026-06-22 01:18:42
[2026-06-22 01:18:42,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:18:42,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:18:42,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:18:42,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:18:42,960.960 INFO    ] time= 22/06/2026 01:18:42
[2026-06-22 01:18:42,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:18:42,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:18:43,113.113 INFO    ] No existing commands found in stream
[2026-06-22 01:18:48,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:18:48,134.134 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-22 01:18:51,538.538 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:18:51,541.541 INFO    ] Checking for system updates...
[2026-06-22 01:18:51,578.578 INFO    ] 200
[2026-06-22 01:18:51,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:18:51,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:18:51,638.638 INFO    ] No update needed
[2026-06-22 01:18:51,641.641 INFO    ] Checking for camera pi updates...
[2026-06-22 01:18:51,677.677 INFO    ] 200
[2026-06-22 01:18:51,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:18:51,721.721 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:18:51,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:18:51,805.805 INFO    ] No camera update needed
[2026-06-22 01:18:51,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:18:51,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:18:51,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:18:51,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:18:53,866.866 INFO    ] ================================================
[2026-06-22 01:18:53,881.881 INFO    ] Launching Daemon at Mon Jun 22 01:18:53 IST 2026
[2026-06-22 01:18:53,892.892 INFO    ] ================================================
[2026-06-22 01:18:54,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:18:54
[2026-06-22 01:18:55,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:18:55,441.441 INFO    ] Initializing speech engine...
[2026-06-22 01:18:55,453.453 INFO    ] 2026-06-22 01:18:55
[2026-06-22 01:18:55,766.766 INFO    ] 2026-06-22 01:18:55
[2026-06-22 01:18:55,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:18:56,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:18:56,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:18:56,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:18:56,200.200 INFO    ] time= 22/06/2026 01:18:56
[2026-06-22 01:18:56,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:18:56,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:18:56,352.352 INFO    ] No existing commands found in stream
[2026-06-22 01:19:01,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:19:01,371.371 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-22 01:19:03,039.039 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:19:03,042.042 INFO    ] Checking for system updates...
[2026-06-22 01:19:03,079.079 INFO    ] 200
[2026-06-22 01:19:03,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:19:03,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:19:03,139.139 INFO    ] No update needed
[2026-06-22 01:19:03,142.142 INFO    ] Checking for camera pi updates...
[2026-06-22 01:19:03,181.181 INFO    ] 200
[2026-06-22 01:19:03,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:19:03,232.232 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:19:03,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:19:03,293.293 INFO    ] No camera update needed
[2026-06-22 01:19:03,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:19:03,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:19:03,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:19:03,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:19:05,354.354 INFO    ] ================================================
[2026-06-22 01:19:05,369.369 INFO    ] Launching Daemon at Mon Jun 22 01:19:05 IST 2026
[2026-06-22 01:19:05,379.379 INFO    ] ================================================
[2026-06-22 01:19:05,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:19:05
[2026-06-22 01:19:06,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:19:06,761.761 INFO    ] Initializing speech engine...
[2026-06-22 01:19:06,768.768 INFO    ] 2026-06-22 01:19:06
[2026-06-22 01:19:07,071.071 INFO    ] 2026-06-22 01:19:07
[2026-06-22 01:19:07,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:19:07,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:19:07,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:19:07,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:19:07,459.459 INFO    ] time= 22/06/2026 01:19:07
[2026-06-22 01:19:07,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:19:07,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:19:07,587.587 INFO    ] No existing commands found in stream
[2026-06-22 01:19:12,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:19:12,602.602 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-22 01:19:16,495.495 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:19:16,497.497 INFO    ] Checking for system updates...
[2026-06-22 01:19:16,518.518 INFO    ] 200
[2026-06-22 01:19:16,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:19:16,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:19:16,557.557 INFO    ] No update needed
[2026-06-22 01:19:16,559.559 INFO    ] Checking for camera pi updates...
[2026-06-22 01:19:16,593.593 INFO    ] 200
[2026-06-22 01:19:16,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:19:16,637.637 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:19:16,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:19:16,715.715 INFO    ] No camera update needed
[2026-06-22 01:19:16,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:19:16,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:19:16,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:19:16,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:19:18,771.771 INFO    ] ================================================
[2026-06-22 01:19:18,786.786 INFO    ] Launching Daemon at Mon Jun 22 01:19:18 IST 2026
[2026-06-22 01:19:18,797.797 INFO    ] ================================================
[2026-06-22 01:19:19,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:19:19
[2026-06-22 01:19:19,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:19:20,149.149 INFO    ] Initializing speech engine...
[2026-06-22 01:19:20,155.155 INFO    ] 2026-06-22 01:19:20
[2026-06-22 01:19:20,403.403 INFO    ] 2026-06-22 01:19:20
[2026-06-22 01:19:20,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:19:20,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:19:20,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:19:20,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:19:20,777.777 INFO    ] time= 22/06/2026 01:19:20
[2026-06-22 01:19:20,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:19:20,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:19:20,857.857 INFO    ] No existing commands found in stream
[2026-06-22 01:19:25,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:19:25,872.872 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-22 01:19:27,945.945 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:19:27,948.948 INFO    ] Checking for system updates...
[2026-06-22 01:19:27,986.986 INFO    ] 200
[2026-06-22 01:19:27,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:19:28,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:19:28,045.045 INFO    ] No update needed
[2026-06-22 01:19:28,047.047 INFO    ] Checking for camera pi updates...
[2026-06-22 01:19:28,082.082 INFO    ] 200
[2026-06-22 01:19:28,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:19:28,128.128 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:19:28,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:19:28,207.207 INFO    ] No camera update needed
[2026-06-22 01:19:28,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:19:28,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:19:28,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:19:28,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:19:30,268.268 INFO    ] ================================================
[2026-06-22 01:19:30,283.283 INFO    ] Launching Daemon at Mon Jun 22 01:19:30 IST 2026
[2026-06-22 01:19:30,294.294 INFO    ] ================================================
[2026-06-22 01:19:30,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:19:30
[2026-06-22 01:19:31,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:19:31,693.693 INFO    ] Initializing speech engine...
[2026-06-22 01:19:31,701.701 INFO    ] 2026-06-22 01:19:31
[2026-06-22 01:19:31,975.975 INFO    ] 2026-06-22 01:19:31
[2026-06-22 01:19:32,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:19:32,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:19:32,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:19:32,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:19:32,524.524 INFO    ] time= 22/06/2026 01:19:32
[2026-06-22 01:19:32,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:19:32,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:19:32,628.628 INFO    ] No existing commands found in stream
[2026-06-22 01:19:37,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:19:37,642.642 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-22 01:19:40,433.433 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:19:40,435.435 INFO    ] Checking for system updates...
[2026-06-22 01:19:40,456.456 INFO    ] 200
[2026-06-22 01:19:40,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:19:40,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:19:40,510.510 INFO    ] No update needed
[2026-06-22 01:19:40,512.512 INFO    ] Checking for camera pi updates...
[2026-06-22 01:19:40,546.546 INFO    ] 200
[2026-06-22 01:19:40,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:19:40,589.589 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:19:40,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:19:40,696.696 INFO    ] No camera update needed
[2026-06-22 01:19:40,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:19:40,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:19:40,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:19:40,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:19:42,755.755 INFO    ] ================================================
[2026-06-22 01:19:42,770.770 INFO    ] Launching Daemon at Mon Jun 22 01:19:42 IST 2026
[2026-06-22 01:19:42,781.781 INFO    ] ================================================
[2026-06-22 01:19:43,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:19:43
[2026-06-22 01:19:44,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:19:44,310.310 INFO    ] Initializing speech engine...
[2026-06-22 01:19:44,326.326 INFO    ] 2026-06-22 01:19:44
[2026-06-22 01:19:44,612.612 INFO    ] 2026-06-22 01:19:44
[2026-06-22 01:19:44,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:19:44,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:19:44,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:19:45,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:19:45,163.163 INFO    ] time= 22/06/2026 01:19:45
[2026-06-22 01:19:45,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:19:45,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:19:45,318.318 INFO    ] No existing commands found in stream
[2026-06-22 01:19:50,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:19:50,339.339 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-22 01:19:53,234.234 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:19:53,235.235 INFO    ] Checking for system updates...
[2026-06-22 01:19:53,256.256 INFO    ] 200
[2026-06-22 01:19:53,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:19:53,298.298 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:19:53,301.301 INFO    ] No update needed
[2026-06-22 01:19:53,304.304 INFO    ] Checking for camera pi updates...
[2026-06-22 01:19:53,343.343 INFO    ] 200
[2026-06-22 01:19:53,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:19:53,388.388 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:19:53,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:19:53,468.468 INFO    ] No camera update needed
[2026-06-22 01:19:53,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:19:53,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:19:53,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:19:53,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:19:55,527.527 INFO    ] ================================================
[2026-06-22 01:19:55,543.543 INFO    ] Launching Daemon at Mon Jun 22 01:19:55 IST 2026
[2026-06-22 01:19:55,553.553 INFO    ] ================================================
[2026-06-22 01:19:56,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:19:56
[2026-06-22 01:19:56,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:19:56,920.920 INFO    ] Initializing speech engine...
[2026-06-22 01:19:56,929.929 INFO    ] 2026-06-22 01:19:56
[2026-06-22 01:19:57,192.192 INFO    ] 2026-06-22 01:19:57
[2026-06-22 01:19:57,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:19:57,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:19:57,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:19:57,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:19:57,651.651 INFO    ] time= 22/06/2026 01:19:57
[2026-06-22 01:19:57,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:19:57,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:19:57,797.797 INFO    ] No existing commands found in stream
[2026-06-22 01:20:02,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:20:02,811.811 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-22 01:20:07,822.822 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:20:07,824.824 INFO    ] Checking for system updates...
[2026-06-22 01:20:07,862.862 INFO    ] 200
[2026-06-22 01:20:07,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:20:07,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:20:07,908.908 INFO    ] No update needed
[2026-06-22 01:20:07,911.911 INFO    ] Checking for camera pi updates...
[2026-06-22 01:20:07,945.945 INFO    ] 200
[2026-06-22 01:20:07,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:20:07,988.988 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:20:08,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:20:08,172.172 INFO    ] No camera update needed
[2026-06-22 01:20:08,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:20:08,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:20:08,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:20:08,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:20:10,230.230 INFO    ] ================================================
[2026-06-22 01:20:10,245.245 INFO    ] Launching Daemon at Mon Jun 22 01:20:10 IST 2026
[2026-06-22 01:20:10,256.256 INFO    ] ================================================
[2026-06-22 01:20:10,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:20:10
[2026-06-22 01:20:11,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:20:11,616.616 INFO    ] Initializing speech engine...
[2026-06-22 01:20:11,625.625 INFO    ] 2026-06-22 01:20:11
[2026-06-22 01:20:11,876.876 INFO    ] 2026-06-22 01:20:11
[2026-06-22 01:20:11,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:20:12,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:20:12,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:20:12,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:20:12,256.256 INFO    ] time= 22/06/2026 01:20:12
[2026-06-22 01:20:12,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:20:12,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:20:12,424.424 INFO    ] No existing commands found in stream
[2026-06-22 01:20:17,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:20:17,452.452 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-22 01:20:21,479.479 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:20:21,481.481 INFO    ] Checking for system updates...
[2026-06-22 01:20:21,503.503 INFO    ] 200
[2026-06-22 01:20:21,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:20:21,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:20:21,545.545 INFO    ] No update needed
[2026-06-22 01:20:21,548.548 INFO    ] Checking for camera pi updates...
[2026-06-22 01:20:21,581.581 INFO    ] 200
[2026-06-22 01:20:21,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:20:21,625.625 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:20:21,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:20:21,715.715 INFO    ] No camera update needed
[2026-06-22 01:20:21,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:20:21,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:20:21,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:20:21,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:20:23,771.771 INFO    ] ================================================
[2026-06-22 01:20:23,786.786 INFO    ] Launching Daemon at Mon Jun 22 01:20:23 IST 2026
[2026-06-22 01:20:23,797.797 INFO    ] ================================================
[2026-06-22 01:20:24,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:20:24
[2026-06-22 01:20:24,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:20:25,216.216 INFO    ] Initializing speech engine...
[2026-06-22 01:20:25,234.234 INFO    ] 2026-06-22 01:20:25
[2026-06-22 01:20:25,484.484 INFO    ] 2026-06-22 01:20:25
[2026-06-22 01:20:25,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:20:25,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:20:25,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:20:25,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:20:25,863.863 INFO    ] time= 22/06/2026 01:20:25
[2026-06-22 01:20:25,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:20:25,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:20:26,044.044 INFO    ] No existing commands found in stream
[2026-06-22 01:20:31,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:20:31,072.072 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-22 01:20:33,107.107 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:20:33,110.110 INFO    ] Checking for system updates...
[2026-06-22 01:20:33,154.154 INFO    ] 200
[2026-06-22 01:20:33,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:20:33,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:20:33,235.235 INFO    ] No update needed
[2026-06-22 01:20:33,239.239 INFO    ] Checking for camera pi updates...
[2026-06-22 01:20:33,280.280 INFO    ] 200
[2026-06-22 01:20:33,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:20:33,325.325 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:20:33,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:20:33,414.414 INFO    ] No camera update needed
[2026-06-22 01:20:33,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:20:33,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:20:33,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:20:33,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:20:35,475.475 INFO    ] ================================================
[2026-06-22 01:20:35,490.490 INFO    ] Launching Daemon at Mon Jun 22 01:20:35 IST 2026
[2026-06-22 01:20:35,501.501 INFO    ] ================================================
[2026-06-22 01:20:36,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:20:36
[2026-06-22 01:20:36,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:20:36,772.772 INFO    ] Initializing speech engine...
[2026-06-22 01:20:36,796.796 INFO    ] 2026-06-22 01:20:36
[2026-06-22 01:20:37,052.052 INFO    ] 2026-06-22 01:20:37
[2026-06-22 01:20:37,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:20:37,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:20:37,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:20:37,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:20:37,424.424 INFO    ] time= 22/06/2026 01:20:37
[2026-06-22 01:20:37,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:20:37,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:20:37,586.586 INFO    ] No existing commands found in stream
[2026-06-22 01:20:42,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:20:42,614.614 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-22 01:20:44,154.154 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:20:44,155.155 INFO    ] Checking for system updates...
[2026-06-22 01:20:44,177.177 INFO    ] 200
[2026-06-22 01:20:44,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:20:44,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:20:44,210.210 INFO    ] No update needed
[2026-06-22 01:20:44,211.211 INFO    ] Checking for camera pi updates...
[2026-06-22 01:20:44,241.241 INFO    ] 200
[2026-06-22 01:20:44,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:20:44,290.290 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:20:44,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:20:44,391.391 INFO    ] No camera update needed
[2026-06-22 01:20:44,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:20:44,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:20:44,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:20:44,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:20:46,451.451 INFO    ] ================================================
[2026-06-22 01:20:46,466.466 INFO    ] Launching Daemon at Mon Jun 22 01:20:46 IST 2026
[2026-06-22 01:20:46,477.477 INFO    ] ================================================
[2026-06-22 01:20:47,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:20:47
[2026-06-22 01:20:47,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:20:47,832.832 INFO    ] Initializing speech engine...
[2026-06-22 01:20:47,838.838 INFO    ] 2026-06-22 01:20:47
[2026-06-22 01:20:48,132.132 INFO    ] 2026-06-22 01:20:48
[2026-06-22 01:20:48,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:20:48,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:20:48,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:20:48,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:20:48,504.504 INFO    ] time= 22/06/2026 01:20:48
[2026-06-22 01:20:48,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:20:48,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:20:48,673.673 INFO    ] No existing commands found in stream
[2026-06-22 01:20:53,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:20:53,707.707 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-22 01:20:55,767.767 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:20:55,769.769 INFO    ] Checking for system updates...
[2026-06-22 01:20:55,806.806 INFO    ] 200
[2026-06-22 01:20:55,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:20:55,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:20:55,864.864 INFO    ] No update needed
[2026-06-22 01:20:55,866.866 INFO    ] Checking for camera pi updates...
[2026-06-22 01:20:55,904.904 INFO    ] 200
[2026-06-22 01:20:55,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:20:55,949.949 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:20:56,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:20:56,038.038 INFO    ] No camera update needed
[2026-06-22 01:20:56,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:20:56,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:20:56,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:20:56,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:20:58,093.093 INFO    ] ================================================
[2026-06-22 01:20:58,108.108 INFO    ] Launching Daemon at Mon Jun 22 01:20:58 IST 2026
[2026-06-22 01:20:58,119.119 INFO    ] ================================================
[2026-06-22 01:20:58,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:20:58
[2026-06-22 01:20:59,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:20:59,583.583 INFO    ] Initializing speech engine...
[2026-06-22 01:20:59,597.597 INFO    ] 2026-06-22 01:20:59
[2026-06-22 01:20:59,883.883 INFO    ] 2026-06-22 01:20:59
[2026-06-22 01:20:59,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:21:00,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:21:00,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:21:00,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:21:00,347.347 INFO    ] time= 22/06/2026 01:21:00
[2026-06-22 01:21:00,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:21:00,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:21:00,507.507 INFO    ] No existing commands found in stream
[2026-06-22 01:21:05,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:21:05,522.522 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-22 01:21:09,022.022 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:21:09,025.025 INFO    ] Checking for system updates...
[2026-06-22 01:21:09,065.065 INFO    ] 200
[2026-06-22 01:21:09,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:21:09,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:21:09,129.129 INFO    ] No update needed
[2026-06-22 01:21:09,131.131 INFO    ] Checking for camera pi updates...
[2026-06-22 01:21:09,169.169 INFO    ] 200
[2026-06-22 01:21:09,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:21:09,217.217 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:21:09,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:21:09,272.272 INFO    ] No camera update needed
[2026-06-22 01:21:09,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:21:09,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:21:09,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:21:09,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:21:11,328.328 INFO    ] ================================================
[2026-06-22 01:21:11,343.343 INFO    ] Launching Daemon at Mon Jun 22 01:21:11 IST 2026
[2026-06-22 01:21:11,354.354 INFO    ] ================================================
[2026-06-22 01:21:11,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:21:11
[2026-06-22 01:21:12,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:21:12,758.758 INFO    ] Initializing speech engine...
[2026-06-22 01:21:12,781.781 INFO    ] 2026-06-22 01:21:12
[2026-06-22 01:21:13,032.032 INFO    ] 2026-06-22 01:21:13
[2026-06-22 01:21:13,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:21:13,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:21:13,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:21:13,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:21:13,506.506 INFO    ] time= 22/06/2026 01:21:13
[2026-06-22 01:21:13,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:21:13,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:21:13,653.653 INFO    ] No existing commands found in stream
[2026-06-22 01:21:18,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:21:18,677.677 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-22 01:21:21,962.962 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:21:21,965.965 INFO    ] Checking for system updates...
[2026-06-22 01:21:22,002.002 INFO    ] 200
[2026-06-22 01:21:22,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:21:22,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:21:22,059.059 INFO    ] No update needed
[2026-06-22 01:21:22,062.062 INFO    ] Checking for camera pi updates...
[2026-06-22 01:21:22,099.099 INFO    ] 200
[2026-06-22 01:21:22,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:21:22,142.142 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:21:22,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:21:22,227.227 INFO    ] No camera update needed
[2026-06-22 01:21:22,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:21:22,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:21:22,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:21:22,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:21:24,283.283 INFO    ] ================================================
[2026-06-22 01:21:24,304.304 INFO    ] Launching Daemon at Mon Jun 22 01:21:24 IST 2026
[2026-06-22 01:21:24,315.315 INFO    ] ================================================
[2026-06-22 01:21:24,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:21:24
[2026-06-22 01:21:25,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:21:25,657.657 INFO    ] Initializing speech engine...
[2026-06-22 01:21:25,673.673 INFO    ] 2026-06-22 01:21:25
[2026-06-22 01:21:25,928.928 INFO    ] 2026-06-22 01:21:25
[2026-06-22 01:21:25,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:21:26,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:21:26,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:21:26,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:21:26,297.297 INFO    ] time= 22/06/2026 01:21:26
[2026-06-22 01:21:26,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:21:26,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:21:26,468.468 INFO    ] No existing commands found in stream
[2026-06-22 01:21:31,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:21:31,507.507 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-22 01:21:33,339.339 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:21:33,341.341 INFO    ] Checking for system updates...
[2026-06-22 01:21:33,377.377 INFO    ] 200
[2026-06-22 01:21:33,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:21:33,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:21:33,435.435 INFO    ] No update needed
[2026-06-22 01:21:33,438.438 INFO    ] Checking for camera pi updates...
[2026-06-22 01:21:33,472.472 INFO    ] 200
[2026-06-22 01:21:33,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:21:33,515.515 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:21:33,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:21:33,593.593 INFO    ] No camera update needed
[2026-06-22 01:21:33,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:21:33,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:21:33,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:21:33,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:21:35,653.653 INFO    ] ================================================
[2026-06-22 01:21:35,668.668 INFO    ] Launching Daemon at Mon Jun 22 01:21:35 IST 2026
[2026-06-22 01:21:35,679.679 INFO    ] ================================================
[2026-06-22 01:21:36,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:21:36
[2026-06-22 01:21:36,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:21:37,081.081 INFO    ] Initializing speech engine...
[2026-06-22 01:21:37,100.100 INFO    ] 2026-06-22 01:21:37
[2026-06-22 01:21:37,353.353 INFO    ] 2026-06-22 01:21:37
[2026-06-22 01:21:37,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:21:37,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:21:37,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:21:37,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:21:37,711.711 INFO    ] time= 22/06/2026 01:21:37
[2026-06-22 01:21:37,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:21:37,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:21:37,811.811 INFO    ] No existing commands found in stream
[2026-06-22 01:21:42,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:21:42,828.828 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-22 01:21:46,896.896 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:21:46,897.897 INFO    ] Checking for system updates...
[2026-06-22 01:21:46,919.919 INFO    ] 200
[2026-06-22 01:21:46,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:21:46,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:21:46,953.953 INFO    ] No update needed
[2026-06-22 01:21:46,955.955 INFO    ] Checking for camera pi updates...
[2026-06-22 01:21:46,975.975 INFO    ] 200
[2026-06-22 01:21:46,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:21:47,013.013 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:21:47,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:21:47,112.112 INFO    ] No camera update needed
[2026-06-22 01:21:47,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:21:47,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:21:47,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:21:47,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:21:49,170.170 INFO    ] ================================================
[2026-06-22 01:21:49,184.184 INFO    ] Launching Daemon at Mon Jun 22 01:21:49 IST 2026
[2026-06-22 01:21:49,195.195 INFO    ] ================================================
[2026-06-22 01:21:49,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:21:49
[2026-06-22 01:21:50,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:21:50,794.794 INFO    ] Initializing speech engine...
[2026-06-22 01:21:50,806.806 INFO    ] 2026-06-22 01:21:50
[2026-06-22 01:21:51,104.104 INFO    ] 2026-06-22 01:21:51
[2026-06-22 01:21:51,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:21:51,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:21:51,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:21:51,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:21:51,520.520 INFO    ] time= 22/06/2026 01:21:51
[2026-06-22 01:21:51,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:21:51,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:21:51,672.672 INFO    ] No existing commands found in stream
[2026-06-22 01:21:56,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:21:56,705.705 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-22 01:21:59,792.792 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:21:59,795.795 INFO    ] Checking for system updates...
[2026-06-22 01:21:59,831.831 INFO    ] 200
[2026-06-22 01:21:59,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:21:59,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:21:59,898.898 INFO    ] No update needed
[2026-06-22 01:21:59,900.900 INFO    ] Checking for camera pi updates...
[2026-06-22 01:21:59,937.937 INFO    ] 200
[2026-06-22 01:21:59,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:21:59,979.979 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:22:00,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:22:00,066.066 INFO    ] No camera update needed
[2026-06-22 01:22:00,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:22:00,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:22:00,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:22:00,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:22:02,141.141 INFO    ] ================================================
[2026-06-22 01:22:02,163.163 INFO    ] Launching Daemon at Mon Jun 22 01:22:02 IST 2026
[2026-06-22 01:22:02,179.179 INFO    ] ================================================
[2026-06-22 01:22:02,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:22:02
[2026-06-22 01:22:03,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:22:03,710.710 INFO    ] Initializing speech engine...
[2026-06-22 01:22:03,732.732 INFO    ] 2026-06-22 01:22:03
[2026-06-22 01:22:03,991.991 INFO    ] 2026-06-22 01:22:03
[2026-06-22 01:22:04,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:22:04,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:22:04,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:22:04,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:22:04,336.336 INFO    ] time= 22/06/2026 01:22:04
[2026-06-22 01:22:04,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:22:04,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:22:04,448.448 INFO    ] No existing commands found in stream
[2026-06-22 01:22:09,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:22:09,463.463 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-22 01:22:09,923.923 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:22:09,924.924 INFO    ] Checking for system updates...
[2026-06-22 01:22:09,946.946 INFO    ] 200
[2026-06-22 01:22:09,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:22:09,978.978 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:22:09,979.979 INFO    ] No update needed
[2026-06-22 01:22:09,981.981 INFO    ] Checking for camera pi updates...
[2026-06-22 01:22:10,011.011 INFO    ] 200
[2026-06-22 01:22:10,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:22:10,058.058 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:22:10,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:22:10,245.245 INFO    ] No camera update needed
[2026-06-22 01:22:10,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:22:10,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:22:10,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:22:10,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:22:12,303.303 INFO    ] ================================================
[2026-06-22 01:22:12,318.318 INFO    ] Launching Daemon at Mon Jun 22 01:22:12 IST 2026
[2026-06-22 01:22:12,329.329 INFO    ] ================================================
[2026-06-22 01:22:12,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:22:12
[2026-06-22 01:22:13,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:22:13,807.807 INFO    ] Initializing speech engine...
[2026-06-22 01:22:13,815.815 INFO    ] 2026-06-22 01:22:13
[2026-06-22 01:22:14,124.124 INFO    ] 2026-06-22 01:22:14
[2026-06-22 01:22:14,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:22:14,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:22:14,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:22:14,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:22:14,628.628 INFO    ] time= 22/06/2026 01:22:14
[2026-06-22 01:22:14,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:22:14,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:22:14,763.763 INFO    ] No existing commands found in stream
[2026-06-22 01:22:19,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:22:19,792.792 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-22 01:22:22,648.648 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:22:22,651.651 INFO    ] Checking for system updates...
[2026-06-22 01:22:22,691.691 INFO    ] 200
[2026-06-22 01:22:22,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:22:22,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:22:22,755.755 INFO    ] No update needed
[2026-06-22 01:22:22,757.757 INFO    ] Checking for camera pi updates...
[2026-06-22 01:22:22,791.791 INFO    ] 200
[2026-06-22 01:22:22,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:22:22,837.837 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:22:22,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:22:22,900.900 INFO    ] No camera update needed
[2026-06-22 01:22:22,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:22:22,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:22:22,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:22:22,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:22:24,954.954 INFO    ] ================================================
[2026-06-22 01:22:24,970.970 INFO    ] Launching Daemon at Mon Jun 22 01:22:24 IST 2026
[2026-06-22 01:22:24,980.980 INFO    ] ================================================
[2026-06-22 01:22:25,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:22:25
[2026-06-22 01:22:26,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:22:26,338.338 INFO    ] Initializing speech engine...
[2026-06-22 01:22:26,344.344 INFO    ] 2026-06-22 01:22:26
[2026-06-22 01:22:26,591.591 INFO    ] 2026-06-22 01:22:26
[2026-06-22 01:22:26,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:22:27,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:22:27,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:22:27,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:22:27,322.322 INFO    ] time= 22/06/2026 01:22:27
[2026-06-22 01:22:27,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:22:27,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:22:27,522.522 INFO    ] No existing commands found in stream
[2026-06-22 01:22:32,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:22:32,548.548 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-22 01:22:33,293.293 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:22:33,296.296 INFO    ] Checking for system updates...
[2026-06-22 01:22:33,336.336 INFO    ] 200
[2026-06-22 01:22:33,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:22:33,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:22:33,398.398 INFO    ] No update needed
[2026-06-22 01:22:33,400.400 INFO    ] Checking for camera pi updates...
[2026-06-22 01:22:33,434.434 INFO    ] 200
[2026-06-22 01:22:33,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:22:33,478.478 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:22:33,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:22:33,534.534 INFO    ] No camera update needed
[2026-06-22 01:22:33,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:22:33,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:22:33,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:22:33,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:22:35,590.590 INFO    ] ================================================
[2026-06-22 01:22:35,605.605 INFO    ] Launching Daemon at Mon Jun 22 01:22:35 IST 2026
[2026-06-22 01:22:35,615.615 INFO    ] ================================================
[2026-06-22 01:22:36,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:22:36
[2026-06-22 01:22:36,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:22:37,119.119 INFO    ] Initializing speech engine...
[2026-06-22 01:22:37,125.125 INFO    ] 2026-06-22 01:22:37
[2026-06-22 01:22:37,384.384 INFO    ] 2026-06-22 01:22:37
[2026-06-22 01:22:37,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:22:37,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:22:37,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:22:37,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:22:37,871.871 INFO    ] time= 22/06/2026 01:22:37
[2026-06-22 01:22:37,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:22:37,947.947 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:22:38,063.063 INFO    ] No existing commands found in stream
[2026-06-22 01:22:43,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:22:43,096.096 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-22 01:22:45,662.662 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:22:45,663.663 INFO    ] Checking for system updates...
[2026-06-22 01:22:45,686.686 INFO    ] 200
[2026-06-22 01:22:45,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:22:45,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:22:45,731.731 INFO    ] No update needed
[2026-06-22 01:22:45,733.733 INFO    ] Checking for camera pi updates...
[2026-06-22 01:22:45,766.766 INFO    ] 200
[2026-06-22 01:22:45,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:22:45,815.815 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:22:45,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:22:45,889.889 INFO    ] No camera update needed
[2026-06-22 01:22:45,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:22:45,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:22:45,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:22:45,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:22:47,945.945 INFO    ] ================================================
[2026-06-22 01:22:47,960.960 INFO    ] Launching Daemon at Mon Jun 22 01:22:47 IST 2026
[2026-06-22 01:22:47,971.971 INFO    ] ================================================
[2026-06-22 01:22:48,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:22:48
[2026-06-22 01:22:49,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:22:49,349.349 INFO    ] Initializing speech engine...
[2026-06-22 01:22:49,361.361 INFO    ] 2026-06-22 01:22:49
[2026-06-22 01:22:49,628.628 INFO    ] 2026-06-22 01:22:49
[2026-06-22 01:22:49,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:22:49,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:22:49,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:22:50,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:22:50,095.095 INFO    ] time= 22/06/2026 01:22:50
[2026-06-22 01:22:50,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:22:50,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:22:50,343.343 INFO    ] No existing commands found in stream
[2026-06-22 01:22:55,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:22:55,378.378 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-22 01:22:56,691.691 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:22:56,692.692 INFO    ] Checking for system updates...
[2026-06-22 01:22:56,725.725 INFO    ] 200
[2026-06-22 01:22:56,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:22:56,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:22:56,782.782 INFO    ] No update needed
[2026-06-22 01:22:56,785.785 INFO    ] Checking for camera pi updates...
[2026-06-22 01:22:56,821.821 INFO    ] 200
[2026-06-22 01:22:56,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:22:56,868.868 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:22:56,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:22:56,973.973 INFO    ] No camera update needed
[2026-06-22 01:22:56,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:22:56,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:22:56,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:22:56,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:22:59,030.030 INFO    ] ================================================
[2026-06-22 01:22:59,048.048 INFO    ] Launching Daemon at Mon Jun 22 01:22:59 IST 2026
[2026-06-22 01:22:59,059.059 INFO    ] ================================================
[2026-06-22 01:22:59,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:22:59
[2026-06-22 01:23:00,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:23:00,395.395 INFO    ] Initializing speech engine...
[2026-06-22 01:23:00,417.417 INFO    ] 2026-06-22 01:23:00
[2026-06-22 01:23:00,677.677 INFO    ] 2026-06-22 01:23:00
[2026-06-22 01:23:00,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:23:00,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:23:00,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:23:01,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:23:01,152.152 INFO    ] time= 22/06/2026 01:23:01
[2026-06-22 01:23:01,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:23:01,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:23:01,292.292 INFO    ] No existing commands found in stream
[2026-06-22 01:23:06,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:23:06,307.307 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-22 01:23:07,401.401 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:23:07,404.404 INFO    ] Checking for system updates...
[2026-06-22 01:23:07,439.439 INFO    ] 200
[2026-06-22 01:23:07,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:23:07,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:23:07,507.507 INFO    ] No update needed
[2026-06-22 01:23:07,509.509 INFO    ] Checking for camera pi updates...
[2026-06-22 01:23:07,546.546 INFO    ] 200
[2026-06-22 01:23:07,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:23:07,592.592 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:23:07,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:23:07,677.677 INFO    ] No camera update needed
[2026-06-22 01:23:07,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:23:07,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:23:07,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:23:07,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:23:09,734.734 INFO    ] ================================================
[2026-06-22 01:23:09,750.750 INFO    ] Launching Daemon at Mon Jun 22 01:23:09 IST 2026
[2026-06-22 01:23:09,761.761 INFO    ] ================================================
[2026-06-22 01:23:10,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:23:10
[2026-06-22 01:23:10,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:23:11,221.221 INFO    ] Initializing speech engine...
[2026-06-22 01:23:11,235.235 INFO    ] 2026-06-22 01:23:11
[2026-06-22 01:23:11,497.497 INFO    ] 2026-06-22 01:23:11
[2026-06-22 01:23:11,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:23:11,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:23:11,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:23:11,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:23:11,859.859 INFO    ] time= 22/06/2026 01:23:11
[2026-06-22 01:23:11,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:23:11,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:23:11,979.979 INFO    ] No existing commands found in stream
[2026-06-22 01:23:16,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:23:16,993.993 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-22 01:23:20,162.162 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:23:20,164.164 INFO    ] Checking for system updates...
[2026-06-22 01:23:20,184.184 INFO    ] 200
[2026-06-22 01:23:20,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:23:20,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:23:20,226.226 INFO    ] No update needed
[2026-06-22 01:23:20,228.228 INFO    ] Checking for camera pi updates...
[2026-06-22 01:23:20,264.264 INFO    ] 200
[2026-06-22 01:23:20,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:23:20,307.307 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:23:20,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:23:20,440.440 INFO    ] No camera update needed
[2026-06-22 01:23:20,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:23:20,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:23:20,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:23:20,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:23:22,497.497 INFO    ] ================================================
[2026-06-22 01:23:22,512.512 INFO    ] Launching Daemon at Mon Jun 22 01:23:22 IST 2026
[2026-06-22 01:23:22,523.523 INFO    ] ================================================
[2026-06-22 01:23:23,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:23:23
[2026-06-22 01:23:23,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:23:23,837.837 INFO    ] Initializing speech engine...
[2026-06-22 01:23:23,846.846 INFO    ] 2026-06-22 01:23:23
[2026-06-22 01:23:24,130.130 INFO    ] 2026-06-22 01:23:24
[2026-06-22 01:23:24,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:23:24,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:23:24,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:23:24,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:23:24,508.508 INFO    ] time= 22/06/2026 01:23:24
[2026-06-22 01:23:24,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:23:24,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:23:24,611.611 INFO    ] No existing commands found in stream
[2026-06-22 01:23:29,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:23:29,631.631 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-22 01:23:32,754.754 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:23:32,757.757 INFO    ] Checking for system updates...
[2026-06-22 01:23:32,799.799 INFO    ] 200
[2026-06-22 01:23:32,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:23:32,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:23:32,861.861 INFO    ] No update needed
[2026-06-22 01:23:32,864.864 INFO    ] Checking for camera pi updates...
[2026-06-22 01:23:32,910.910 INFO    ] 200
[2026-06-22 01:23:32,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:23:32,961.961 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:23:33,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:23:33,015.015 INFO    ] No camera update needed
[2026-06-22 01:23:33,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:23:33,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:23:33,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:23:33,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:23:35,073.073 INFO    ] ================================================
[2026-06-22 01:23:35,089.089 INFO    ] Launching Daemon at Mon Jun 22 01:23:35 IST 2026
[2026-06-22 01:23:35,100.100 INFO    ] ================================================
[2026-06-22 01:23:35,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:23:35
[2026-06-22 01:23:36,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:23:36,591.591 INFO    ] Initializing speech engine...
[2026-06-22 01:23:36,605.605 INFO    ] 2026-06-22 01:23:36
[2026-06-22 01:23:36,886.886 INFO    ] 2026-06-22 01:23:36
[2026-06-22 01:23:36,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:23:37,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:23:37,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:23:37,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:23:37,271.271 INFO    ] time= 22/06/2026 01:23:37
[2026-06-22 01:23:37,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:23:37,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:23:37,356.356 INFO    ] No existing commands found in stream
[2026-06-22 01:23:42,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:23:42,372.372 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-22 01:23:45,171.171 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:23:45,173.173 INFO    ] Checking for system updates...
[2026-06-22 01:23:45,193.193 INFO    ] 200
[2026-06-22 01:23:45,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:23:45,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:23:45,227.227 INFO    ] No update needed
[2026-06-22 01:23:45,229.229 INFO    ] Checking for camera pi updates...
[2026-06-22 01:23:45,263.263 INFO    ] 200
[2026-06-22 01:23:45,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:23:45,311.311 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:23:45,408.408 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:23:45,410.410 INFO    ] No camera update needed
[2026-06-22 01:23:45,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:23:45,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:23:45,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:23:45,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:23:47,469.469 INFO    ] ================================================
[2026-06-22 01:23:47,485.485 INFO    ] Launching Daemon at Mon Jun 22 01:23:47 IST 2026
[2026-06-22 01:23:47,495.495 INFO    ] ================================================
[2026-06-22 01:23:48,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:23:48
[2026-06-22 01:23:48,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:23:48,841.841 INFO    ] Initializing speech engine...
[2026-06-22 01:23:48,862.862 INFO    ] 2026-06-22 01:23:48
[2026-06-22 01:23:49,137.137 INFO    ] 2026-06-22 01:23:49
[2026-06-22 01:23:49,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:23:49,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:23:49,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:23:49,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:23:49,612.612 INFO    ] time= 22/06/2026 01:23:49
[2026-06-22 01:23:49,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:23:49,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:23:49,785.785 INFO    ] No existing commands found in stream
[2026-06-22 01:23:54,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:23:54,801.801 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-22 01:23:57,603.603 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:23:57,604.604 INFO    ] Checking for system updates...
[2026-06-22 01:23:57,625.625 INFO    ] 200
[2026-06-22 01:23:57,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:23:57,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:23:57,679.679 INFO    ] No update needed
[2026-06-22 01:23:57,681.681 INFO    ] Checking for camera pi updates...
[2026-06-22 01:23:57,719.719 INFO    ] 200
[2026-06-22 01:23:57,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:23:57,766.766 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:23:57,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:23:57,878.878 INFO    ] No camera update needed
[2026-06-22 01:23:57,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:23:57,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:23:57,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:23:57,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:23:59,933.933 INFO    ] ================================================
[2026-06-22 01:23:59,949.949 INFO    ] Launching Daemon at Mon Jun 22 01:23:59 IST 2026
[2026-06-22 01:23:59,960.960 INFO    ] ================================================
[2026-06-22 01:24:00,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:24:00
[2026-06-22 01:24:01,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:24:01,421.421 INFO    ] Initializing speech engine...
[2026-06-22 01:24:01,428.428 INFO    ] 2026-06-22 01:24:01
[2026-06-22 01:24:01,688.688 INFO    ] 2026-06-22 01:24:01
[2026-06-22 01:24:01,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:24:01,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:24:01,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:24:02,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:24:02,085.085 INFO    ] time= 22/06/2026 01:24:02
[2026-06-22 01:24:02,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:24:02,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:24:02,153.153 INFO    ] No existing commands found in stream
[2026-06-22 01:24:07,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:24:07,167.167 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-22 01:24:09,128.128 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:24:09,131.131 INFO    ] Checking for system updates...
[2026-06-22 01:24:09,167.167 INFO    ] 200
[2026-06-22 01:24:09,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:24:09,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:24:09,231.231 INFO    ] No update needed
[2026-06-22 01:24:09,233.233 INFO    ] Checking for camera pi updates...
[2026-06-22 01:24:09,267.267 INFO    ] 200
[2026-06-22 01:24:09,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:24:09,313.313 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:24:09,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:24:09,401.401 INFO    ] No camera update needed
[2026-06-22 01:24:09,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:24:09,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:24:09,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:24:09,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:24:11,456.456 INFO    ] ================================================
[2026-06-22 01:24:11,472.472 INFO    ] Launching Daemon at Mon Jun 22 01:24:11 IST 2026
[2026-06-22 01:24:11,483.483 INFO    ] ================================================
[2026-06-22 01:24:12,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:24:12
[2026-06-22 01:24:12,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:24:12,920.920 INFO    ] Initializing speech engine...
[2026-06-22 01:24:12,929.929 INFO    ] 2026-06-22 01:24:12
[2026-06-22 01:24:13,178.178 INFO    ] 2026-06-22 01:24:13
[2026-06-22 01:24:13,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:24:13,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:24:13,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:24:13,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:24:13,666.666 INFO    ] time= 22/06/2026 01:24:13
[2026-06-22 01:24:13,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:24:13,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:24:13,805.805 INFO    ] No existing commands found in stream
[2026-06-22 01:24:18,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:24:18,821.821 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-22 01:24:19,392.392 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:24:19,394.394 INFO    ] Checking for system updates...
[2026-06-22 01:24:19,415.415 INFO    ] 200
[2026-06-22 01:24:19,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:24:19,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:24:19,461.461 INFO    ] No update needed
[2026-06-22 01:24:19,463.463 INFO    ] Checking for camera pi updates...
[2026-06-22 01:24:19,497.497 INFO    ] 200
[2026-06-22 01:24:19,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:24:19,545.545 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:24:19,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:24:19,757.757 INFO    ] No camera update needed
[2026-06-22 01:24:19,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:24:19,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:24:19,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:24:19,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:24:21,813.813 INFO    ] ================================================
[2026-06-22 01:24:21,829.829 INFO    ] Launching Daemon at Mon Jun 22 01:24:21 IST 2026
[2026-06-22 01:24:21,840.840 INFO    ] ================================================
[2026-06-22 01:24:22,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:24:22
[2026-06-22 01:24:22,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:24:23,207.207 INFO    ] Initializing speech engine...
[2026-06-22 01:24:23,215.215 INFO    ] 2026-06-22 01:24:23
[2026-06-22 01:24:23,478.478 INFO    ] 2026-06-22 01:24:23
[2026-06-22 01:24:23,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:24:23,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:24:23,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:24:23,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:24:23,947.947 INFO    ] time= 22/06/2026 01:24:23
[2026-06-22 01:24:23,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:24:24,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:24:24,081.081 INFO    ] No existing commands found in stream
[2026-06-22 01:24:29,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:24:29,096.096 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-22 01:24:31,182.182 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:24:31,185.185 INFO    ] Checking for system updates...
[2026-06-22 01:24:31,221.221 INFO    ] 200
[2026-06-22 01:24:31,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:24:31,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:24:31,288.288 INFO    ] No update needed
[2026-06-22 01:24:31,290.290 INFO    ] Checking for camera pi updates...
[2026-06-22 01:24:31,323.323 INFO    ] 200
[2026-06-22 01:24:31,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:24:31,366.366 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:24:31,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:24:31,453.453 INFO    ] No camera update needed
[2026-06-22 01:24:31,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:24:31,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:24:31,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:24:31,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:24:33,511.511 INFO    ] ================================================
[2026-06-22 01:24:33,527.527 INFO    ] Launching Daemon at Mon Jun 22 01:24:33 IST 2026
[2026-06-22 01:24:33,538.538 INFO    ] ================================================
[2026-06-22 01:24:34,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:24:34
[2026-06-22 01:24:34,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:24:34,858.858 INFO    ] Initializing speech engine...
[2026-06-22 01:24:34,863.863 INFO    ] 2026-06-22 01:24:34
[2026-06-22 01:24:35,139.139 INFO    ] 2026-06-22 01:24:35
[2026-06-22 01:24:35,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:24:35,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:24:35,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:24:35,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:24:35,512.512 INFO    ] time= 22/06/2026 01:24:35
[2026-06-22 01:24:35,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:24:35,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:24:35,592.592 INFO    ] No existing commands found in stream
[2026-06-22 01:24:40,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:24:40,608.608 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-22 01:24:44,143.143 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:24:44,145.145 INFO    ] Checking for system updates...
[2026-06-22 01:24:44,179.179 INFO    ] 200
[2026-06-22 01:24:44,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:24:44,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:24:44,238.238 INFO    ] No update needed
[2026-06-22 01:24:44,241.241 INFO    ] Checking for camera pi updates...
[2026-06-22 01:24:44,275.275 INFO    ] 200
[2026-06-22 01:24:44,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:24:44,320.320 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:24:44,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:24:44,404.404 INFO    ] No camera update needed
[2026-06-22 01:24:44,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:24:44,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:24:44,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:24:44,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:24:46,462.462 INFO    ] ================================================
[2026-06-22 01:24:46,478.478 INFO    ] Launching Daemon at Mon Jun 22 01:24:46 IST 2026
[2026-06-22 01:24:46,490.490 INFO    ] ================================================
[2026-06-22 01:24:47,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:24:47
[2026-06-22 01:24:47,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:24:47,858.858 INFO    ] Initializing speech engine...
[2026-06-22 01:24:47,869.869 INFO    ] 2026-06-22 01:24:47
[2026-06-22 01:24:48,128.128 INFO    ] 2026-06-22 01:24:48
[2026-06-22 01:24:48,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:24:48,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:24:48,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:24:48,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:24:48,584.584 INFO    ] time= 22/06/2026 01:24:48
[2026-06-22 01:24:48,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:24:48,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:24:48,771.771 INFO    ] No existing commands found in stream
[2026-06-22 01:24:53,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:24:53,785.785 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-22 01:24:56,149.149 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:24:56,151.151 INFO    ] Checking for system updates...
[2026-06-22 01:24:56,173.173 INFO    ] 200
[2026-06-22 01:24:56,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:24:56,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:24:56,206.206 INFO    ] No update needed
[2026-06-22 01:24:56,207.207 INFO    ] Checking for camera pi updates...
[2026-06-22 01:24:56,227.227 INFO    ] 200
[2026-06-22 01:24:56,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:24:56,251.251 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:24:56,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:24:56,332.332 INFO    ] No camera update needed
[2026-06-22 01:24:56,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:24:56,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:24:56,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:24:56,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:24:58,391.391 INFO    ] ================================================
[2026-06-22 01:24:58,407.407 INFO    ] Launching Daemon at Mon Jun 22 01:24:58 IST 2026
[2026-06-22 01:24:58,418.418 INFO    ] ================================================
[2026-06-22 01:24:58,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:24:58
[2026-06-22 01:24:59,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:24:59,744.744 INFO    ] Initializing speech engine...
[2026-06-22 01:24:59,753.753 INFO    ] 2026-06-22 01:24:59
[2026-06-22 01:25:00,047.047 INFO    ] 2026-06-22 01:25:00
[2026-06-22 01:25:00,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:25:00,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:25:00,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:25:00,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:25:00,403.403 INFO    ] time= 22/06/2026 01:25:00
[2026-06-22 01:25:00,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:25:00,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:25:00,486.486 INFO    ] No existing commands found in stream
[2026-06-22 01:25:05,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:25:05,500.500 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-22 01:25:08,111.111 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:25:08,113.113 INFO    ] Checking for system updates...
[2026-06-22 01:25:08,151.151 INFO    ] 200
[2026-06-22 01:25:08,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:25:08,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:25:08,209.209 INFO    ] No update needed
[2026-06-22 01:25:08,211.211 INFO    ] Checking for camera pi updates...
[2026-06-22 01:25:08,245.245 INFO    ] 200
[2026-06-22 01:25:08,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:25:08,288.288 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:25:08,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:25:08,394.394 INFO    ] No camera update needed
[2026-06-22 01:25:08,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:25:08,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:25:08,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:25:08,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:25:10,449.449 INFO    ] ================================================
[2026-06-22 01:25:10,464.464 INFO    ] Launching Daemon at Mon Jun 22 01:25:10 IST 2026
[2026-06-22 01:25:10,475.475 INFO    ] ================================================
[2026-06-22 01:25:11,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:25:11
[2026-06-22 01:25:11,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:25:12,050.050 INFO    ] Initializing speech engine...
[2026-06-22 01:25:12,057.057 INFO    ] 2026-06-22 01:25:12
[2026-06-22 01:25:12,307.307 INFO    ] 2026-06-22 01:25:12
[2026-06-22 01:25:12,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:25:12,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:25:12,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:25:12,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:25:12,769.769 INFO    ] time= 22/06/2026 01:25:12
[2026-06-22 01:25:12,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:25:12,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:25:12,923.923 INFO    ] No existing commands found in stream
[2026-06-22 01:25:17,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:25:17,955.955 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-22 01:25:20,530.530 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:25:20,532.532 INFO    ] Checking for system updates...
[2026-06-22 01:25:20,554.554 INFO    ] 200
[2026-06-22 01:25:20,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:25:20,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:25:20,610.610 INFO    ] No update needed
[2026-06-22 01:25:20,612.612 INFO    ] Checking for camera pi updates...
[2026-06-22 01:25:20,649.649 INFO    ] 200
[2026-06-22 01:25:20,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:25:20,691.691 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:25:20,786.786 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:25:20,789.789 INFO    ] No camera update needed
[2026-06-22 01:25:20,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:25:20,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:25:20,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:25:20,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:25:22,845.845 INFO    ] ================================================
[2026-06-22 01:25:22,860.860 INFO    ] Launching Daemon at Mon Jun 22 01:25:22 IST 2026
[2026-06-22 01:25:22,871.871 INFO    ] ================================================
[2026-06-22 01:25:23,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:25:23
[2026-06-22 01:25:23,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:25:24,188.188 INFO    ] Initializing speech engine...
[2026-06-22 01:25:24,194.194 INFO    ] 2026-06-22 01:25:24
[2026-06-22 01:25:24,486.486 INFO    ] 2026-06-22 01:25:24
[2026-06-22 01:25:24,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:25:24,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:25:24,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:25:24,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:25:24,838.838 INFO    ] time= 22/06/2026 01:25:24
[2026-06-22 01:25:24,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:25:24,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:25:24,917.917 INFO    ] No existing commands found in stream
[2026-06-22 01:25:29,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:25:29,930.930 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-22 01:25:30,446.446 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:25:30,449.449 INFO    ] Checking for system updates...
[2026-06-22 01:25:30,484.484 INFO    ] 200
[2026-06-22 01:25:30,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:25:30,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:25:30,547.547 INFO    ] No update needed
[2026-06-22 01:25:30,550.550 INFO    ] Checking for camera pi updates...
[2026-06-22 01:25:30,589.589 INFO    ] 200
[2026-06-22 01:25:30,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:25:30,616.616 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:25:30,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:25:30,674.674 INFO    ] No camera update needed
[2026-06-22 01:25:30,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:25:30,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:25:30,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:25:30,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:25:32,731.731 INFO    ] ================================================
[2026-06-22 01:25:32,747.747 INFO    ] Launching Daemon at Mon Jun 22 01:25:32 IST 2026
[2026-06-22 01:25:32,759.759 INFO    ] ================================================
[2026-06-22 01:25:33,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:25:33
[2026-06-22 01:25:34,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:25:34,262.262 INFO    ] Initializing speech engine...
[2026-06-22 01:25:34,268.268 INFO    ] 2026-06-22 01:25:34
[2026-06-22 01:25:34,561.561 INFO    ] 2026-06-22 01:25:34
[2026-06-22 01:25:34,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:25:34,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:25:34,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:25:35,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:25:35,048.048 INFO    ] time= 22/06/2026 01:25:35
[2026-06-22 01:25:35,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:25:35,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:25:35,198.198 INFO    ] No existing commands found in stream
[2026-06-22 01:25:40,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:25:40,212.212 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-22 01:25:42,821.821 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:25:42,822.822 INFO    ] Checking for system updates...
[2026-06-22 01:25:42,843.843 INFO    ] 200
[2026-06-22 01:25:42,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:25:42,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:25:42,882.882 INFO    ] No update needed
[2026-06-22 01:25:42,885.885 INFO    ] Checking for camera pi updates...
[2026-06-22 01:25:42,921.921 INFO    ] 200
[2026-06-22 01:25:42,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:25:42,969.969 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:25:43,019.019 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:25:43,022.022 INFO    ] No camera update needed
[2026-06-22 01:25:43,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:25:43,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:25:43,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:25:43,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:25:45,078.078 INFO    ] ================================================
[2026-06-22 01:25:45,093.093 INFO    ] Launching Daemon at Mon Jun 22 01:25:45 IST 2026
[2026-06-22 01:25:45,103.103 INFO    ] ================================================
[2026-06-22 01:25:45,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:25:45
[2026-06-22 01:25:46,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:25:46,477.477 INFO    ] Initializing speech engine...
[2026-06-22 01:25:46,485.485 INFO    ] 2026-06-22 01:25:46
[2026-06-22 01:25:46,745.745 INFO    ] 2026-06-22 01:25:46
[2026-06-22 01:25:46,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:25:47,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:25:47,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:25:47,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:25:47,218.218 INFO    ] time= 22/06/2026 01:25:47
[2026-06-22 01:25:47,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:25:47,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:25:47,350.350 INFO    ] No existing commands found in stream
[2026-06-22 01:25:52,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:25:52,364.364 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-22 01:25:56,522.522 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:25:56,523.523 INFO    ] Checking for system updates...
[2026-06-22 01:25:56,543.543 INFO    ] 200
[2026-06-22 01:25:56,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:25:56,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:25:56,576.576 INFO    ] No update needed
[2026-06-22 01:25:56,577.577 INFO    ] Checking for camera pi updates...
[2026-06-22 01:25:56,602.602 INFO    ] 200
[2026-06-22 01:25:56,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:25:56,650.650 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:25:56,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:25:56,732.732 INFO    ] No camera update needed
[2026-06-22 01:25:56,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:25:56,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:25:56,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:25:56,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:25:58,788.788 INFO    ] ================================================
[2026-06-22 01:25:58,803.803 INFO    ] Launching Daemon at Mon Jun 22 01:25:58 IST 2026
[2026-06-22 01:25:58,814.814 INFO    ] ================================================
[2026-06-22 01:25:59,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:25:59
[2026-06-22 01:25:59,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:26:00,146.146 INFO    ] Initializing speech engine...
[2026-06-22 01:26:00,155.155 INFO    ] 2026-06-22 01:26:00
[2026-06-22 01:26:00,448.448 INFO    ] 2026-06-22 01:26:00
[2026-06-22 01:26:00,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:26:00,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:26:00,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:26:00,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:26:00,828.828 INFO    ] time= 22/06/2026 01:26:00
[2026-06-22 01:26:00,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:26:00,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:26:00,953.953 INFO    ] No existing commands found in stream
[2026-06-22 01:26:05,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:26:05,975.975 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-22 01:26:08,343.343 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:26:08,346.346 INFO    ] Checking for system updates...
[2026-06-22 01:26:08,388.388 INFO    ] 200
[2026-06-22 01:26:08,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:26:08,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:26:08,447.447 INFO    ] No update needed
[2026-06-22 01:26:08,450.450 INFO    ] Checking for camera pi updates...
[2026-06-22 01:26:08,485.485 INFO    ] 200
[2026-06-22 01:26:08,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:26:08,531.531 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:26:08,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:26:08,621.621 INFO    ] No camera update needed
[2026-06-22 01:26:08,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:26:08,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:26:08,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:26:08,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:26:10,680.680 INFO    ] ================================================
[2026-06-22 01:26:10,695.695 INFO    ] Launching Daemon at Mon Jun 22 01:26:10 IST 2026
[2026-06-22 01:26:10,706.706 INFO    ] ================================================
[2026-06-22 01:26:11,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:26:11
[2026-06-22 01:26:11,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:26:12,098.098 INFO    ] Initializing speech engine...
[2026-06-22 01:26:12,107.107 INFO    ] 2026-06-22 01:26:12
[2026-06-22 01:26:12,372.372 INFO    ] 2026-06-22 01:26:12
[2026-06-22 01:26:12,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:26:12,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:26:12,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:26:12,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:26:12,836.836 INFO    ] time= 22/06/2026 01:26:12
[2026-06-22 01:26:12,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:26:12,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:26:13,027.027 INFO    ] No existing commands found in stream
[2026-06-22 01:26:18,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:26:18,041.041 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-22 01:26:19,962.962 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:26:19,963.963 INFO    ] Checking for system updates...
[2026-06-22 01:26:19,984.984 INFO    ] 200
[2026-06-22 01:26:19,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:26:20,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:26:20,042.042 INFO    ] No update needed
[2026-06-22 01:26:20,044.044 INFO    ] Checking for camera pi updates...
[2026-06-22 01:26:20,083.083 INFO    ] 200
[2026-06-22 01:26:20,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:26:20,127.127 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:26:20,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:26:20,206.206 INFO    ] No camera update needed
[2026-06-22 01:26:20,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:26:20,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:26:20,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:26:20,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:26:22,263.263 INFO    ] ================================================
[2026-06-22 01:26:22,278.278 INFO    ] Launching Daemon at Mon Jun 22 01:26:22 IST 2026
[2026-06-22 01:26:22,289.289 INFO    ] ================================================
[2026-06-22 01:26:22,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:26:22
[2026-06-22 01:26:23,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:26:23,716.716 INFO    ] Initializing speech engine...
[2026-06-22 01:26:23,725.725 INFO    ] 2026-06-22 01:26:23
[2026-06-22 01:26:23,975.975 INFO    ] 2026-06-22 01:26:23
[2026-06-22 01:26:24,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:26:24,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:26:24,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:26:24,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:26:24,352.352 INFO    ] time= 22/06/2026 01:26:24
[2026-06-22 01:26:24,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:26:24,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:26:24,428.428 INFO    ] No existing commands found in stream
[2026-06-22 01:26:29,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:26:29,443.443 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-22 01:26:32,290.290 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:26:32,293.293 INFO    ] Checking for system updates...
[2026-06-22 01:26:32,343.343 INFO    ] 200
[2026-06-22 01:26:32,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:26:32,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:26:32,421.421 INFO    ] No update needed
[2026-06-22 01:26:32,424.424 INFO    ] Checking for camera pi updates...
[2026-06-22 01:26:32,464.464 INFO    ] 200
[2026-06-22 01:26:32,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:26:32,510.510 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:26:32,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:26:32,574.574 INFO    ] No camera update needed
[2026-06-22 01:26:32,578.578 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:26:32,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:26:32,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:26:32,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:26:34,638.638 INFO    ] ================================================
[2026-06-22 01:26:34,653.653 INFO    ] Launching Daemon at Mon Jun 22 01:26:34 IST 2026
[2026-06-22 01:26:34,665.665 INFO    ] ================================================
[2026-06-22 01:26:35,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:26:35
[2026-06-22 01:26:36,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:26:36,356.356 INFO    ] Initializing speech engine...
[2026-06-22 01:26:36,366.366 INFO    ] 2026-06-22 01:26:36
[2026-06-22 01:26:36,650.650 INFO    ] 2026-06-22 01:26:36
[2026-06-22 01:26:36,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:26:36,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:26:36,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:26:37,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:26:37,184.184 INFO    ] time= 22/06/2026 01:26:37
[2026-06-22 01:26:37,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:26:37,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:26:37,337.337 INFO    ] No existing commands found in stream
[2026-06-22 01:26:42,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:26:42,367.367 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-22 01:26:44,472.472 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:26:44,475.475 INFO    ] Checking for system updates...
[2026-06-22 01:26:44,513.513 INFO    ] 200
[2026-06-22 01:26:44,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:26:44,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:26:44,573.573 INFO    ] No update needed
[2026-06-22 01:26:44,576.576 INFO    ] Checking for camera pi updates...
[2026-06-22 01:26:44,611.611 INFO    ] 200
[2026-06-22 01:26:44,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:26:44,656.656 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:26:44,744.744 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:26:44,747.747 INFO    ] No camera update needed
[2026-06-22 01:26:44,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:26:44,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:26:44,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:26:44,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:26:46,807.807 INFO    ] ================================================
[2026-06-22 01:26:46,823.823 INFO    ] Launching Daemon at Mon Jun 22 01:26:46 IST 2026
[2026-06-22 01:26:46,835.835 INFO    ] ================================================
[2026-06-22 01:26:47,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:26:47
[2026-06-22 01:26:48,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:26:48,415.415 INFO    ] Initializing speech engine...
[2026-06-22 01:26:48,427.427 INFO    ] 2026-06-22 01:26:48
[2026-06-22 01:26:48,713.713 INFO    ] 2026-06-22 01:26:48
[2026-06-22 01:26:48,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:26:48,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:26:48,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:26:49,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:26:49,192.192 INFO    ] time= 22/06/2026 01:26:49
[2026-06-22 01:26:49,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:26:49,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:26:49,390.390 INFO    ] No existing commands found in stream
[2026-06-22 01:26:54,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:26:54,422.422 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-22 01:26:56,537.537 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:26:56,540.540 INFO    ] Checking for system updates...
[2026-06-22 01:26:56,577.577 INFO    ] 200
[2026-06-22 01:26:56,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:26:56,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:26:56,638.638 INFO    ] No update needed
[2026-06-22 01:26:56,641.641 INFO    ] Checking for camera pi updates...
[2026-06-22 01:26:56,681.681 INFO    ] 200
[2026-06-22 01:26:56,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:26:56,732.732 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:26:56,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:26:56,826.826 INFO    ] No camera update needed
[2026-06-22 01:26:56,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:26:56,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:26:56,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:26:56,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:26:58,886.886 INFO    ] ================================================
[2026-06-22 01:26:58,902.902 INFO    ] Launching Daemon at Mon Jun 22 01:26:58 IST 2026
[2026-06-22 01:26:58,913.913 INFO    ] ================================================
[2026-06-22 01:26:59,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:26:59
[2026-06-22 01:27:00,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:27:00,371.371 INFO    ] Initializing speech engine...
[2026-06-22 01:27:00,385.385 INFO    ] 2026-06-22 01:27:00
[2026-06-22 01:27:00,697.697 INFO    ] 2026-06-22 01:27:00
[2026-06-22 01:27:00,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:27:00,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:27:01,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:27:01,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:27:01,165.165 INFO    ] time= 22/06/2026 01:27:01
[2026-06-22 01:27:01,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:27:01,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:27:01,237.237 INFO    ] No existing commands found in stream
[2026-06-22 01:27:06,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:27:06,249.249 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-22 01:27:08,498.498 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:27:08,501.501 INFO    ] Checking for system updates...
[2026-06-22 01:27:08,537.537 INFO    ] 200
[2026-06-22 01:27:08,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:27:08,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:27:08,600.600 INFO    ] No update needed
[2026-06-22 01:27:08,602.602 INFO    ] Checking for camera pi updates...
[2026-06-22 01:27:08,640.640 INFO    ] 200
[2026-06-22 01:27:08,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:27:08,688.688 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:27:08,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:27:08,780.780 INFO    ] No camera update needed
[2026-06-22 01:27:08,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:27:08,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:27:08,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:27:08,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:27:10,836.836 INFO    ] ================================================
[2026-06-22 01:27:10,852.852 INFO    ] Launching Daemon at Mon Jun 22 01:27:10 IST 2026
[2026-06-22 01:27:10,863.863 INFO    ] ================================================
[2026-06-22 01:27:11,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:27:11
[2026-06-22 01:27:12,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:27:12,424.424 INFO    ] Initializing speech engine...
[2026-06-22 01:27:12,436.436 INFO    ] 2026-06-22 01:27:12
[2026-06-22 01:27:12,727.727 INFO    ] 2026-06-22 01:27:12
[2026-06-22 01:27:12,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:27:12,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:27:13,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:27:13,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:27:13,188.188 INFO    ] time= 22/06/2026 01:27:13
[2026-06-22 01:27:13,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:27:13,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:27:13,335.335 INFO    ] No existing commands found in stream
[2026-06-22 01:27:18,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:27:18,351.351 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-22 01:27:20,002.002 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:27:20,004.004 INFO    ] Checking for system updates...
[2026-06-22 01:27:20,025.025 INFO    ] 200
[2026-06-22 01:27:20,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:27:20,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:27:20,085.085 INFO    ] No update needed
[2026-06-22 01:27:20,088.088 INFO    ] Checking for camera pi updates...
[2026-06-22 01:27:20,123.123 INFO    ] 200
[2026-06-22 01:27:20,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:27:20,168.168 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:27:20,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:27:20,252.252 INFO    ] No camera update needed
[2026-06-22 01:27:20,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:27:20,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:27:20,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:27:20,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:27:22,313.313 INFO    ] ================================================
[2026-06-22 01:27:22,328.328 INFO    ] Launching Daemon at Mon Jun 22 01:27:22 IST 2026
[2026-06-22 01:27:22,340.340 INFO    ] ================================================
[2026-06-22 01:27:22,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:27:22
[2026-06-22 01:27:23,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:27:23,721.721 INFO    ] Initializing speech engine...
[2026-06-22 01:27:23,728.728 INFO    ] 2026-06-22 01:27:23
[2026-06-22 01:27:23,990.990 INFO    ] 2026-06-22 01:27:23
[2026-06-22 01:27:24,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:27:24,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:27:24,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:27:24,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:27:24,397.397 INFO    ] time= 22/06/2026 01:27:24
[2026-06-22 01:27:24,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:27:24,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:27:24,483.483 INFO    ] No existing commands found in stream
[2026-06-22 01:27:29,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:27:29,496.496 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-22 01:27:31,328.328 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:27:31,331.331 INFO    ] Checking for system updates...
[2026-06-22 01:27:31,370.370 INFO    ] 200
[2026-06-22 01:27:31,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:27:31,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:27:31,433.433 INFO    ] No update needed
[2026-06-22 01:27:31,436.436 INFO    ] Checking for camera pi updates...
[2026-06-22 01:27:31,472.472 INFO    ] 200
[2026-06-22 01:27:31,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:27:31,519.519 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:27:31,575.575 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:27:31,578.578 INFO    ] No camera update needed
[2026-06-22 01:27:31,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:27:31,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:27:31,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:27:31,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:27:33,639.639 INFO    ] ================================================
[2026-06-22 01:27:33,655.655 INFO    ] Launching Daemon at Mon Jun 22 01:27:33 IST 2026
[2026-06-22 01:27:33,667.667 INFO    ] ================================================
[2026-06-22 01:27:34,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:27:34
[2026-06-22 01:27:34,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:27:35,226.226 INFO    ] Initializing speech engine...
[2026-06-22 01:27:35,238.238 INFO    ] 2026-06-22 01:27:35
[2026-06-22 01:27:35,530.530 INFO    ] 2026-06-22 01:27:35
[2026-06-22 01:27:35,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:27:35,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:27:35,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:27:36,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:27:36,076.076 INFO    ] time= 22/06/2026 01:27:36
[2026-06-22 01:27:36,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:27:36,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:27:36,221.221 INFO    ] No existing commands found in stream
[2026-06-22 01:27:41,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:27:41,251.251 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-22 01:27:43,418.418 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:27:43,422.422 INFO    ] Checking for system updates...
[2026-06-22 01:27:43,460.460 INFO    ] 200
[2026-06-22 01:27:43,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:27:43,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:27:43,520.520 INFO    ] No update needed
[2026-06-22 01:27:43,523.523 INFO    ] Checking for camera pi updates...
[2026-06-22 01:27:43,562.562 INFO    ] 200
[2026-06-22 01:27:43,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:27:43,607.607 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:27:43,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:27:43,698.698 INFO    ] No camera update needed
[2026-06-22 01:27:43,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:27:43,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:27:43,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:27:43,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:27:45,756.756 INFO    ] ================================================
[2026-06-22 01:27:45,772.772 INFO    ] Launching Daemon at Mon Jun 22 01:27:45 IST 2026
[2026-06-22 01:27:45,783.783 INFO    ] ================================================
[2026-06-22 01:27:46,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:27:46
[2026-06-22 01:27:46,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:27:47,246.246 INFO    ] Initializing speech engine...
[2026-06-22 01:27:47,255.255 INFO    ] 2026-06-22 01:27:47
[2026-06-22 01:27:47,505.505 INFO    ] 2026-06-22 01:27:47
[2026-06-22 01:27:47,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:27:47,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:27:47,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:27:47,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:27:47,959.959 INFO    ] time= 22/06/2026 01:27:47
[2026-06-22 01:27:48,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:27:48,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:27:48,126.126 INFO    ] No existing commands found in stream
[2026-06-22 01:27:53,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:27:53,140.140 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-22 01:27:57,252.252 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:27:57,254.254 INFO    ] Checking for system updates...
[2026-06-22 01:27:57,286.286 INFO    ] 200
[2026-06-22 01:27:57,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:27:57,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:27:57,345.345 INFO    ] No update needed
[2026-06-22 01:27:57,347.347 INFO    ] Checking for camera pi updates...
[2026-06-22 01:27:57,382.382 INFO    ] 200
[2026-06-22 01:27:57,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:27:57,426.426 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:27:57,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:27:57,508.508 INFO    ] No camera update needed
[2026-06-22 01:27:57,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:27:57,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:27:57,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:27:57,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:27:59,566.566 INFO    ] ================================================
[2026-06-22 01:27:59,582.582 INFO    ] Launching Daemon at Mon Jun 22 01:27:59 IST 2026
[2026-06-22 01:27:59,593.593 INFO    ] ================================================
[2026-06-22 01:28:00,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:28:00
[2026-06-22 01:28:00,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:28:01,382.382 INFO    ] Initializing speech engine...
[2026-06-22 01:28:01,393.393 INFO    ] 2026-06-22 01:28:01
[2026-06-22 01:28:01,797.797 INFO    ] 2026-06-22 01:28:01
[2026-06-22 01:28:01,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:28:02,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:28:02,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:28:02,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:28:02,281.281 INFO    ] time= 22/06/2026 01:28:02
[2026-06-22 01:28:02,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:28:02,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:28:02,485.485 INFO    ] No existing commands found in stream
[2026-06-22 01:28:07,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:28:07,515.515 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-22 01:28:10,918.918 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:28:10,920.920 INFO    ] Checking for system updates...
[2026-06-22 01:28:10,957.957 INFO    ] 200
[2026-06-22 01:28:10,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:28:11,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:28:11,021.021 INFO    ] No update needed
[2026-06-22 01:28:11,023.023 INFO    ] Checking for camera pi updates...
[2026-06-22 01:28:11,057.057 INFO    ] 200
[2026-06-22 01:28:11,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:28:11,100.100 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:28:11,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:28:11,200.200 INFO    ] No camera update needed
[2026-06-22 01:28:11,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:28:11,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:28:11,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:28:11,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:28:13,257.257 INFO    ] ================================================
[2026-06-22 01:28:13,273.273 INFO    ] Launching Daemon at Mon Jun 22 01:28:13 IST 2026
[2026-06-22 01:28:13,284.284 INFO    ] ================================================
[2026-06-22 01:28:13,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:28:13
[2026-06-22 01:28:14,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:28:14,599.599 INFO    ] Initializing speech engine...
[2026-06-22 01:28:14,621.621 INFO    ] 2026-06-22 01:28:14
[2026-06-22 01:28:14,876.876 INFO    ] 2026-06-22 01:28:14
[2026-06-22 01:28:14,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:28:15,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:28:15,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:28:15,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:28:15,358.358 INFO    ] time= 22/06/2026 01:28:15
[2026-06-22 01:28:15,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:28:15,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:28:15,508.508 INFO    ] No existing commands found in stream
[2026-06-22 01:28:20,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:28:20,522.522 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-22 01:28:23,088.088 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:28:23,089.089 INFO    ] Checking for system updates...
[2026-06-22 01:28:23,110.110 INFO    ] 200
[2026-06-22 01:28:23,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:28:23,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:28:23,142.142 INFO    ] No update needed
[2026-06-22 01:28:23,144.144 INFO    ] Checking for camera pi updates...
[2026-06-22 01:28:23,164.164 INFO    ] 200
[2026-06-22 01:28:23,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:28:23,189.189 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:28:23,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:28:23,271.271 INFO    ] No camera update needed
[2026-06-22 01:28:23,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:28:23,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:28:23,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:28:23,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:28:25,329.329 INFO    ] ================================================
[2026-06-22 01:28:25,345.345 INFO    ] Launching Daemon at Mon Jun 22 01:28:25 IST 2026
[2026-06-22 01:28:25,356.356 INFO    ] ================================================
[2026-06-22 01:28:25,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:28:25
[2026-06-22 01:28:26,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:28:26,963.963 INFO    ] Initializing speech engine...
[2026-06-22 01:28:26,969.969 INFO    ] 2026-06-22 01:28:26
[2026-06-22 01:28:27,241.241 INFO    ] 2026-06-22 01:28:27
[2026-06-22 01:28:27,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:28:27,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:28:27,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:28:27,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:28:27,731.731 INFO    ] time= 22/06/2026 01:28:27
[2026-06-22 01:28:27,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:28:27,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:28:27,873.873 INFO    ] No existing commands found in stream
[2026-06-22 01:28:32,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:28:32,890.890 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-22 01:28:33,315.315 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:28:33,318.318 INFO    ] Checking for system updates...
[2026-06-22 01:28:33,356.356 INFO    ] 200
[2026-06-22 01:28:33,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:28:33,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:28:33,426.426 INFO    ] No update needed
[2026-06-22 01:28:33,429.429 INFO    ] Checking for camera pi updates...
[2026-06-22 01:28:33,463.463 INFO    ] 200
[2026-06-22 01:28:33,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:28:33,506.506 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:28:33,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:28:33,586.586 INFO    ] No camera update needed
[2026-06-22 01:28:33,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:28:33,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:28:33,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:28:33,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:28:35,644.644 INFO    ] ================================================
[2026-06-22 01:28:35,659.659 INFO    ] Launching Daemon at Mon Jun 22 01:28:35 IST 2026
[2026-06-22 01:28:35,671.671 INFO    ] ================================================
[2026-06-22 01:28:36,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:28:36
[2026-06-22 01:28:36,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:28:37,133.133 INFO    ] Initializing speech engine...
[2026-06-22 01:28:37,143.143 INFO    ] 2026-06-22 01:28:37
[2026-06-22 01:28:37,410.410 INFO    ] 2026-06-22 01:28:37
[2026-06-22 01:28:37,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:28:37,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:28:37,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:28:37,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:28:37,786.786 INFO    ] time= 22/06/2026 01:28:37
[2026-06-22 01:28:37,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:28:37,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:28:37,910.910 INFO    ] No existing commands found in stream
[2026-06-22 01:28:42,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:28:42,926.926 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-22 01:28:44,082.082 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:28:44,084.084 INFO    ] Checking for system updates...
[2026-06-22 01:28:44,106.106 INFO    ] 200
[2026-06-22 01:28:44,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:28:44,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:28:44,139.139 INFO    ] No update needed
[2026-06-22 01:28:44,140.140 INFO    ] Checking for camera pi updates...
[2026-06-22 01:28:44,159.159 INFO    ] 200
[2026-06-22 01:28:44,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:28:44,188.188 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:28:44,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:28:44,376.376 INFO    ] No camera update needed
[2026-06-22 01:28:44,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:28:44,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:28:44,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:28:44,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:28:46,434.434 INFO    ] ================================================
[2026-06-22 01:28:46,450.450 INFO    ] Launching Daemon at Mon Jun 22 01:28:46 IST 2026
[2026-06-22 01:28:46,461.461 INFO    ] ================================================
[2026-06-22 01:28:47,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:28:47
[2026-06-22 01:28:47,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:28:47,812.812 INFO    ] Initializing speech engine...
[2026-06-22 01:28:47,822.822 INFO    ] 2026-06-22 01:28:47
[2026-06-22 01:28:48,097.097 INFO    ] 2026-06-22 01:28:48
[2026-06-22 01:28:48,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:28:48,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:28:48,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:28:48,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:28:48,581.581 INFO    ] time= 22/06/2026 01:28:48
[2026-06-22 01:28:48,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:28:48,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:28:48,726.726 INFO    ] No existing commands found in stream
[2026-06-22 01:28:53,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:28:53,742.742 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-22 01:28:58,089.089 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:28:58,091.091 INFO    ] Checking for system updates...
[2026-06-22 01:28:58,121.121 INFO    ] 200
[2026-06-22 01:28:58,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:28:58,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:28:58,183.183 INFO    ] No update needed
[2026-06-22 01:28:58,185.185 INFO    ] Checking for camera pi updates...
[2026-06-22 01:28:58,219.219 INFO    ] 200
[2026-06-22 01:28:58,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:28:58,261.261 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:28:58,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:28:58,346.346 INFO    ] No camera update needed
[2026-06-22 01:28:58,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:28:58,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:28:58,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:28:58,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:29:00,401.401 INFO    ] ================================================
[2026-06-22 01:29:00,416.416 INFO    ] Launching Daemon at Mon Jun 22 01:29:00 IST 2026
[2026-06-22 01:29:00,427.427 INFO    ] ================================================
[2026-06-22 01:29:01,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:29:01
[2026-06-22 01:29:01,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:29:02,197.197 INFO    ] Initializing speech engine...
[2026-06-22 01:29:02,207.207 INFO    ] 2026-06-22 01:29:02
[2026-06-22 01:29:02,507.507 INFO    ] 2026-06-22 01:29:02
[2026-06-22 01:29:02,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:29:02,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:29:02,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:29:02,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:29:02,939.939 INFO    ] time= 22/06/2026 01:29:02
[2026-06-22 01:29:02,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:29:02,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:29:03,023.023 INFO    ] No existing commands found in stream
[2026-06-22 01:29:08,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:29:08,061.061 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-22 01:29:12,110.110 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:29:12,113.113 INFO    ] Checking for system updates...
[2026-06-22 01:29:12,152.152 INFO    ] 200
[2026-06-22 01:29:12,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:29:12,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:29:12,216.216 INFO    ] No update needed
[2026-06-22 01:29:12,218.218 INFO    ] Checking for camera pi updates...
[2026-06-22 01:29:12,253.253 INFO    ] 200
[2026-06-22 01:29:12,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:29:12,297.297 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:29:12,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:29:12,395.395 INFO    ] No camera update needed
[2026-06-22 01:29:12,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:29:12,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:29:12,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:29:12,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:29:14,451.451 INFO    ] ================================================
[2026-06-22 01:29:14,467.467 INFO    ] Launching Daemon at Mon Jun 22 01:29:14 IST 2026
[2026-06-22 01:29:14,478.478 INFO    ] ================================================
[2026-06-22 01:29:15,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:29:15
[2026-06-22 01:29:15,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:29:16,058.058 INFO    ] Initializing speech engine...
[2026-06-22 01:29:16,072.072 INFO    ] 2026-06-22 01:29:16
[2026-06-22 01:29:16,359.359 INFO    ] 2026-06-22 01:29:16
[2026-06-22 01:29:16,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:29:16,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:29:16,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:29:16,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:29:16,820.820 INFO    ] time= 22/06/2026 01:29:16
[2026-06-22 01:29:16,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:29:16,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:29:16,970.970 INFO    ] No existing commands found in stream
[2026-06-22 01:29:21,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:29:21,995.995 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-22 01:29:25,216.216 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:29:25,218.218 INFO    ] Checking for system updates...
[2026-06-22 01:29:25,239.239 INFO    ] 200
[2026-06-22 01:29:25,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:29:25,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:29:25,296.296 INFO    ] No update needed
[2026-06-22 01:29:25,299.299 INFO    ] Checking for camera pi updates...
[2026-06-22 01:29:25,333.333 INFO    ] 200
[2026-06-22 01:29:25,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:29:25,378.378 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:29:25,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:29:25,459.459 INFO    ] No camera update needed
[2026-06-22 01:29:25,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:29:25,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:29:25,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:29:25,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:29:27,520.520 INFO    ] ================================================
[2026-06-22 01:29:27,536.536 INFO    ] Launching Daemon at Mon Jun 22 01:29:27 IST 2026
[2026-06-22 01:29:27,553.553 INFO    ] ================================================
[2026-06-22 01:29:28,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:29:28
[2026-06-22 01:29:28,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:29:28,870.870 INFO    ] Initializing speech engine...
[2026-06-22 01:29:28,889.889 INFO    ] 2026-06-22 01:29:28
[2026-06-22 01:29:29,136.136 INFO    ] 2026-06-22 01:29:29
[2026-06-22 01:29:29,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:29:29,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:29:29,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:29:29,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:29:29,515.515 INFO    ] time= 22/06/2026 01:29:29
[2026-06-22 01:29:29,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:29:29,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:29:29,667.667 INFO    ] No existing commands found in stream
[2026-06-22 01:29:34,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:29:34,700.700 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-22 01:29:36,790.790 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:29:36,792.792 INFO    ] Checking for system updates...
[2026-06-22 01:29:36,829.829 INFO    ] 200
[2026-06-22 01:29:36,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:29:36,883.883 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:29:36,886.886 INFO    ] No update needed
[2026-06-22 01:29:36,888.888 INFO    ] Checking for camera pi updates...
[2026-06-22 01:29:36,922.922 INFO    ] 200
[2026-06-22 01:29:36,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:29:36,965.965 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:29:37,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:29:37,023.023 INFO    ] No camera update needed
[2026-06-22 01:29:37,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:29:37,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:29:37,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:29:37,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:29:39,079.079 INFO    ] ================================================
[2026-06-22 01:29:39,095.095 INFO    ] Launching Daemon at Mon Jun 22 01:29:39 IST 2026
[2026-06-22 01:29:39,107.107 INFO    ] ================================================
[2026-06-22 01:29:39,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:29:39
[2026-06-22 01:29:40,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:29:40,463.463 INFO    ] Initializing speech engine...
[2026-06-22 01:29:40,472.472 INFO    ] 2026-06-22 01:29:40
[2026-06-22 01:29:40,737.737 INFO    ] 2026-06-22 01:29:40
[2026-06-22 01:29:40,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:29:40,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:29:40,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:29:41,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:29:41,116.116 INFO    ] time= 22/06/2026 01:29:41
[2026-06-22 01:29:41,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:29:41,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:29:41,240.240 INFO    ] No existing commands found in stream
[2026-06-22 01:29:46,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:29:46,255.255 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-22 01:29:47,751.751 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:29:47,754.754 INFO    ] Checking for system updates...
[2026-06-22 01:29:47,790.790 INFO    ] 200
[2026-06-22 01:29:47,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:29:47,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:29:47,853.853 INFO    ] No update needed
[2026-06-22 01:29:47,855.855 INFO    ] Checking for camera pi updates...
[2026-06-22 01:29:47,892.892 INFO    ] 200
[2026-06-22 01:29:47,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:29:47,939.939 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:29:48,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:29:48,026.026 INFO    ] No camera update needed
[2026-06-22 01:29:48,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:29:48,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:29:48,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:29:48,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:29:50,084.084 INFO    ] ================================================
[2026-06-22 01:29:50,099.099 INFO    ] Launching Daemon at Mon Jun 22 01:29:50 IST 2026
[2026-06-22 01:29:50,110.110 INFO    ] ================================================
[2026-06-22 01:29:50,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:29:50
[2026-06-22 01:29:51,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:29:51,645.645 INFO    ] Initializing speech engine...
[2026-06-22 01:29:51,658.658 INFO    ] 2026-06-22 01:29:51
[2026-06-22 01:29:51,965.965 INFO    ] 2026-06-22 01:29:51
[2026-06-22 01:29:52,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:29:52,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:29:52,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:29:52,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:29:52,467.467 INFO    ] time= 22/06/2026 01:29:52
[2026-06-22 01:29:52,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:29:52,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:29:52,603.603 INFO    ] No existing commands found in stream
[2026-06-22 01:29:57,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:29:57,628.628 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-22 01:29:59,421.421 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:29:59,423.423 INFO    ] Checking for system updates...
[2026-06-22 01:29:59,445.445 INFO    ] 200
[2026-06-22 01:29:59,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:29:59,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:29:59,503.503 INFO    ] No update needed
[2026-06-22 01:29:59,506.506 INFO    ] Checking for camera pi updates...
[2026-06-22 01:29:59,545.545 INFO    ] 200
[2026-06-22 01:29:59,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:29:59,593.593 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:29:59,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:29:59,690.690 INFO    ] No camera update needed
[2026-06-22 01:29:59,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:29:59,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:29:59,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:29:59,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:30:01,808.808 INFO    ] ================================================
[2026-06-22 01:30:01,843.843 INFO    ] Launching Daemon at Mon Jun 22 01:30:01 IST 2026
[2026-06-22 01:30:01,897.897 INFO    ] ================================================
[2026-06-22 01:30:02,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:30:02
[2026-06-22 01:30:03,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:30:03,774.774 INFO    ] Initializing speech engine...
[2026-06-22 01:30:03,783.783 INFO    ] 2026-06-22 01:30:03
[2026-06-22 01:30:04,050.050 INFO    ] 2026-06-22 01:30:04
[2026-06-22 01:30:04,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:30:04,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:30:04,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:30:04,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:30:04,531.531 INFO    ] time= 22/06/2026 01:30:04
[2026-06-22 01:30:04,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:30:04,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:30:04,686.686 INFO    ] No existing commands found in stream
[2026-06-22 01:30:09,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:30:09,702.702 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-22 01:30:13,254.254 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:30:13,257.257 INFO    ] Checking for system updates...
[2026-06-22 01:30:13,294.294 INFO    ] 200
[2026-06-22 01:30:13,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:30:13,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:30:13,351.351 INFO    ] No update needed
[2026-06-22 01:30:13,354.354 INFO    ] Checking for camera pi updates...
[2026-06-22 01:30:13,388.388 INFO    ] 200
[2026-06-22 01:30:13,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:30:13,435.435 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:30:13,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:30:13,523.523 INFO    ] No camera update needed
[2026-06-22 01:30:13,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:30:13,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:30:13,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:30:13,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:30:15,578.578 INFO    ] ================================================
[2026-06-22 01:30:15,594.594 INFO    ] Launching Daemon at Mon Jun 22 01:30:15 IST 2026
[2026-06-22 01:30:15,605.605 INFO    ] ================================================
[2026-06-22 01:30:16,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:30:16
[2026-06-22 01:30:16,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:30:17,027.027 INFO    ] Initializing speech engine...
[2026-06-22 01:30:17,036.036 INFO    ] 2026-06-22 01:30:17
[2026-06-22 01:30:17,285.285 INFO    ] 2026-06-22 01:30:17
[2026-06-22 01:30:17,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:30:17,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:30:17,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:30:17,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:30:17,660.660 INFO    ] time= 22/06/2026 01:30:17
[2026-06-22 01:30:17,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:30:17,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:30:17,844.844 INFO    ] No existing commands found in stream
[2026-06-22 01:30:22,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:30:22,872.872 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-22 01:30:25,936.936 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:30:25,937.937 INFO    ] Checking for system updates...
[2026-06-22 01:30:25,959.959 INFO    ] 200
[2026-06-22 01:30:25,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:30:26,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:30:26,002.002 INFO    ] No update needed
[2026-06-22 01:30:26,005.005 INFO    ] Checking for camera pi updates...
[2026-06-22 01:30:26,038.038 INFO    ] 200
[2026-06-22 01:30:26,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:30:26,082.082 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:30:26,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:30:26,173.173 INFO    ] No camera update needed
[2026-06-22 01:30:26,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:30:26,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:30:26,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:30:26,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:30:28,232.232 INFO    ] ================================================
[2026-06-22 01:30:28,248.248 INFO    ] Launching Daemon at Mon Jun 22 01:30:28 IST 2026
[2026-06-22 01:30:28,260.260 INFO    ] ================================================
[2026-06-22 01:30:28,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:30:28
[2026-06-22 01:30:29,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:30:29,635.635 INFO    ] Initializing speech engine...
[2026-06-22 01:30:29,644.644 INFO    ] 2026-06-22 01:30:29
[2026-06-22 01:30:29,890.890 INFO    ] 2026-06-22 01:30:29
[2026-06-22 01:30:29,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:30:30,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:30:30,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:30:30,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:30:30,238.238 INFO    ] time= 22/06/2026 01:30:30
[2026-06-22 01:30:30,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:30:30,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:30:30,333.333 INFO    ] No existing commands found in stream
[2026-06-22 01:30:35,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:30:35,353.353 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-22 01:30:39,202.202 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:30:39,205.205 INFO    ] Checking for system updates...
[2026-06-22 01:30:39,241.241 INFO    ] 200
[2026-06-22 01:30:39,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:30:39,298.298 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:30:39,300.300 INFO    ] No update needed
[2026-06-22 01:30:39,303.303 INFO    ] Checking for camera pi updates...
[2026-06-22 01:30:39,341.341 INFO    ] 200
[2026-06-22 01:30:39,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:30:39,393.393 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:30:39,484.484 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:30:39,487.487 INFO    ] No camera update needed
[2026-06-22 01:30:39,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:30:39,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:30:39,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:30:39,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:30:41,551.551 INFO    ] ================================================
[2026-06-22 01:30:41,645.645 INFO    ] Launching Daemon at Mon Jun 22 01:30:41 IST 2026
[2026-06-22 01:30:41,656.656 INFO    ] ================================================
[2026-06-22 01:30:42,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:30:42
[2026-06-22 01:30:42,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:30:43,241.241 INFO    ] Initializing speech engine...
[2026-06-22 01:30:43,260.260 INFO    ] 2026-06-22 01:30:43
[2026-06-22 01:30:43,518.518 INFO    ] 2026-06-22 01:30:43
[2026-06-22 01:30:43,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:30:43,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:30:43,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:30:43,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:30:43,889.889 INFO    ] time= 22/06/2026 01:30:43
[2026-06-22 01:30:43,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:30:43,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:30:44,057.057 INFO    ] No existing commands found in stream
[2026-06-22 01:30:49,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:30:49,096.096 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-22 01:30:52,304.304 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:30:52,307.307 INFO    ] Checking for system updates...
[2026-06-22 01:30:52,347.347 INFO    ] 200
[2026-06-22 01:30:52,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:30:52,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:30:52,412.412 INFO    ] No update needed
[2026-06-22 01:30:52,415.415 INFO    ] Checking for camera pi updates...
[2026-06-22 01:30:52,453.453 INFO    ] 200
[2026-06-22 01:30:52,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:30:52,501.501 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:30:52,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:30:52,685.685 INFO    ] No camera update needed
[2026-06-22 01:30:52,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:30:52,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:30:52,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:30:52,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:30:54,742.742 INFO    ] ================================================
[2026-06-22 01:30:54,759.759 INFO    ] Launching Daemon at Mon Jun 22 01:30:54 IST 2026
[2026-06-22 01:30:54,771.771 INFO    ] ================================================
[2026-06-22 01:30:55,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:30:55
[2026-06-22 01:30:55,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:30:56,213.213 INFO    ] Initializing speech engine...
[2026-06-22 01:30:56,220.220 INFO    ] 2026-06-22 01:30:56
[2026-06-22 01:30:56,471.471 INFO    ] 2026-06-22 01:30:56
[2026-06-22 01:30:56,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:30:56,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:30:56,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:30:56,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:30:56,933.933 INFO    ] time= 22/06/2026 01:30:56
[2026-06-22 01:30:57,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:30:57,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:30:57,079.079 INFO    ] No existing commands found in stream
[2026-06-22 01:31:02,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:31:02,090.090 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-22 01:31:04,247.247 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:31:04,250.250 INFO    ] Checking for system updates...
[2026-06-22 01:31:04,286.286 INFO    ] 200
[2026-06-22 01:31:04,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:31:04,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:31:04,344.344 INFO    ] No update needed
[2026-06-22 01:31:04,346.346 INFO    ] Checking for camera pi updates...
[2026-06-22 01:31:04,381.381 INFO    ] 200
[2026-06-22 01:31:04,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:31:04,426.426 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:31:04,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:31:04,511.511 INFO    ] No camera update needed
[2026-06-22 01:31:04,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:31:04,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:31:04,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:31:04,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:31:06,571.571 INFO    ] ================================================
[2026-06-22 01:31:06,592.592 INFO    ] Launching Daemon at Mon Jun 22 01:31:06 IST 2026
[2026-06-22 01:31:06,604.604 INFO    ] ================================================
[2026-06-22 01:31:07,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:31:07
[2026-06-22 01:31:07,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:31:08,097.097 INFO    ] Initializing speech engine...
[2026-06-22 01:31:08,103.103 INFO    ] 2026-06-22 01:31:08
[2026-06-22 01:31:08,362.362 INFO    ] 2026-06-22 01:31:08
[2026-06-22 01:31:08,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:31:08,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:31:08,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:31:08,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:31:08,807.807 INFO    ] time= 22/06/2026 01:31:08
[2026-06-22 01:31:08,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:31:08,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:31:08,949.949 INFO    ] No existing commands found in stream
[2026-06-22 01:31:13,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:31:13,964.964 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-22 01:31:16,513.513 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:31:16,516.516 INFO    ] Checking for system updates...
[2026-06-22 01:31:16,559.559 INFO    ] 200
[2026-06-22 01:31:16,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:31:16,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:31:16,635.635 INFO    ] No update needed
[2026-06-22 01:31:16,638.638 INFO    ] Checking for camera pi updates...
[2026-06-22 01:31:16,682.682 INFO    ] 200
[2026-06-22 01:31:16,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:31:16,748.748 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:31:16,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:31:16,849.849 INFO    ] No camera update needed
[2026-06-22 01:31:16,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:31:16,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:31:16,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:31:16,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:31:18,909.909 INFO    ] ================================================
[2026-06-22 01:31:18,924.924 INFO    ] Launching Daemon at Mon Jun 22 01:31:18 IST 2026
[2026-06-22 01:31:18,935.935 INFO    ] ================================================
[2026-06-22 01:31:19,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:31:19
[2026-06-22 01:31:20,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:31:20,375.375 INFO    ] Initializing speech engine...
[2026-06-22 01:31:20,385.385 INFO    ] 2026-06-22 01:31:20
[2026-06-22 01:31:20,631.631 INFO    ] 2026-06-22 01:31:20
[2026-06-22 01:31:20,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:31:20,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:31:20,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:31:21,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:31:21,040.040 INFO    ] time= 22/06/2026 01:31:21
[2026-06-22 01:31:21,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:31:21,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:31:21,118.118 INFO    ] No existing commands found in stream
[2026-06-22 01:31:26,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:31:26,156.156 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-22 01:31:28,690.690 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:31:28,693.693 INFO    ] Checking for system updates...
[2026-06-22 01:31:28,731.731 INFO    ] 200
[2026-06-22 01:31:28,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:31:28,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:31:28,797.797 INFO    ] No update needed
[2026-06-22 01:31:28,800.800 INFO    ] Checking for camera pi updates...
[2026-06-22 01:31:28,839.839 INFO    ] 200
[2026-06-22 01:31:28,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:31:28,883.883 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:31:28,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:31:28,977.977 INFO    ] No camera update needed
[2026-06-22 01:31:28,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:31:28,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:31:28,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:31:28,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:31:31,033.033 INFO    ] ================================================
[2026-06-22 01:31:31,048.048 INFO    ] Launching Daemon at Mon Jun 22 01:31:31 IST 2026
[2026-06-22 01:31:31,059.059 INFO    ] ================================================
[2026-06-22 01:31:31,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:31:31
[2026-06-22 01:31:32,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:31:32,776.776 INFO    ] Initializing speech engine...
[2026-06-22 01:31:32,790.790 INFO    ] 2026-06-22 01:31:32
[2026-06-22 01:31:33,069.069 INFO    ] 2026-06-22 01:31:33
[2026-06-22 01:31:33,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:31:33,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:31:33,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:31:33,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:31:33,520.520 INFO    ] time= 22/06/2026 01:31:33
[2026-06-22 01:31:33,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:31:33,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:31:33,659.659 INFO    ] No existing commands found in stream
[2026-06-22 01:31:38,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:31:38,674.674 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-22 01:31:42,319.319 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:31:42,320.320 INFO    ] Checking for system updates...
[2026-06-22 01:31:42,341.341 INFO    ] 200
[2026-06-22 01:31:42,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:31:42,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:31:42,392.392 INFO    ] No update needed
[2026-06-22 01:31:42,394.394 INFO    ] Checking for camera pi updates...
[2026-06-22 01:31:42,432.432 INFO    ] 200
[2026-06-22 01:31:42,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:31:42,480.480 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:31:42,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:31:42,536.536 INFO    ] No camera update needed
[2026-06-22 01:31:42,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:31:42,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:31:42,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:31:42,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:31:44,592.592 INFO    ] ================================================
[2026-06-22 01:31:44,607.607 INFO    ] Launching Daemon at Mon Jun 22 01:31:44 IST 2026
[2026-06-22 01:31:44,617.617 INFO    ] ================================================
[2026-06-22 01:31:45,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:31:45
[2026-06-22 01:31:45,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:31:46,094.094 INFO    ] Initializing speech engine...
[2026-06-22 01:31:46,101.101 INFO    ] 2026-06-22 01:31:46
[2026-06-22 01:31:46,360.360 INFO    ] 2026-06-22 01:31:46
[2026-06-22 01:31:46,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:31:46,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:31:46,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:31:46,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:31:46,721.721 INFO    ] time= 22/06/2026 01:31:46
[2026-06-22 01:31:46,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:31:46,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:31:46,800.800 INFO    ] No existing commands found in stream
[2026-06-22 01:31:51,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:31:51,822.822 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-22 01:31:52,408.408 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:31:52,411.411 INFO    ] Checking for system updates...
[2026-06-22 01:31:52,448.448 INFO    ] 200
[2026-06-22 01:31:52,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:31:52,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:31:52,510.510 INFO    ] No update needed
[2026-06-22 01:31:52,513.513 INFO    ] Checking for camera pi updates...
[2026-06-22 01:31:52,552.552 INFO    ] 200
[2026-06-22 01:31:52,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:31:52,597.597 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:31:52,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:31:52,709.709 INFO    ] No camera update needed
[2026-06-22 01:31:52,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:31:52,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:31:52,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:31:52,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:31:54,770.770 INFO    ] ================================================
[2026-06-22 01:31:54,786.786 INFO    ] Launching Daemon at Mon Jun 22 01:31:54 IST 2026
[2026-06-22 01:31:54,797.797 INFO    ] ================================================
[2026-06-22 01:31:55,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:31:55
[2026-06-22 01:31:56,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:31:56,371.371 INFO    ] Initializing speech engine...
[2026-06-22 01:31:56,381.381 INFO    ] 2026-06-22 01:31:56
[2026-06-22 01:31:56,644.644 INFO    ] 2026-06-22 01:31:56
[2026-06-22 01:31:56,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:31:56,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:31:56,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:31:57,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:31:57,091.091 INFO    ] time= 22/06/2026 01:31:57
[2026-06-22 01:31:57,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:31:57,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:31:57,249.249 INFO    ] No existing commands found in stream
[2026-06-22 01:32:02,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:32:02,265.265 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-22 01:32:03,684.684 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:32:03,687.687 INFO    ] Checking for system updates...
[2026-06-22 01:32:03,723.723 INFO    ] 200
[2026-06-22 01:32:03,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:32:03,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:32:03,781.781 INFO    ] No update needed
[2026-06-22 01:32:03,786.786 INFO    ] Checking for camera pi updates...
[2026-06-22 01:32:03,826.826 INFO    ] 200
[2026-06-22 01:32:03,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:32:03,869.869 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:32:03,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:32:03,952.952 INFO    ] No camera update needed
[2026-06-22 01:32:03,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:32:03,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:32:03,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:32:03,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:32:06,009.009 INFO    ] ================================================
[2026-06-22 01:32:06,025.025 INFO    ] Launching Daemon at Mon Jun 22 01:32:06 IST 2026
[2026-06-22 01:32:06,036.036 INFO    ] ================================================
[2026-06-22 01:32:06,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:32:06
[2026-06-22 01:32:07,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:32:07,441.441 INFO    ] Initializing speech engine...
[2026-06-22 01:32:07,449.449 INFO    ] 2026-06-22 01:32:07
[2026-06-22 01:32:07,746.746 INFO    ] 2026-06-22 01:32:07
[2026-06-22 01:32:07,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:32:07,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:32:07,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:32:08,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:32:08,123.123 INFO    ] time= 22/06/2026 01:32:08
[2026-06-22 01:32:08,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:32:08,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:32:08,214.214 INFO    ] No existing commands found in stream
[2026-06-22 01:32:13,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:32:13,251.251 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-22 01:32:15,556.556 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:32:15,559.559 INFO    ] Checking for system updates...
[2026-06-22 01:32:15,599.599 INFO    ] 200
[2026-06-22 01:32:15,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:32:15,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:32:15,664.664 INFO    ] No update needed
[2026-06-22 01:32:15,666.666 INFO    ] Checking for camera pi updates...
[2026-06-22 01:32:15,704.704 INFO    ] 200
[2026-06-22 01:32:15,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:32:15,753.753 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:32:15,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:32:15,842.842 INFO    ] No camera update needed
[2026-06-22 01:32:15,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:32:15,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:32:15,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:32:15,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:32:17,897.897 INFO    ] ================================================
[2026-06-22 01:32:17,913.913 INFO    ] Launching Daemon at Mon Jun 22 01:32:17 IST 2026
[2026-06-22 01:32:17,924.924 INFO    ] ================================================
[2026-06-22 01:32:18,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:32:18
[2026-06-22 01:32:19,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:32:19,507.507 INFO    ] Initializing speech engine...
[2026-06-22 01:32:19,512.512 INFO    ] 2026-06-22 01:32:19
[2026-06-22 01:32:19,790.790 INFO    ] 2026-06-22 01:32:19
[2026-06-22 01:32:19,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:32:20,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:32:20,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:32:20,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:32:20,278.278 INFO    ] time= 22/06/2026 01:32:20
[2026-06-22 01:32:20,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:32:20,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:32:20,481.481 INFO    ] No existing commands found in stream
[2026-06-22 01:32:25,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:32:25,512.512 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-22 01:32:29,567.567 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:32:29,568.568 INFO    ] Checking for system updates...
[2026-06-22 01:32:29,602.602 INFO    ] 200
[2026-06-22 01:32:29,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:32:29,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:32:29,663.663 INFO    ] No update needed
[2026-06-22 01:32:29,666.666 INFO    ] Checking for camera pi updates...
[2026-06-22 01:32:29,702.702 INFO    ] 200
[2026-06-22 01:32:29,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:32:29,751.751 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:32:29,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:32:29,839.839 INFO    ] No camera update needed
[2026-06-22 01:32:29,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:32:29,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:32:29,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:32:29,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:32:31,897.897 INFO    ] ================================================
[2026-06-22 01:32:31,914.914 INFO    ] Launching Daemon at Mon Jun 22 01:32:31 IST 2026
[2026-06-22 01:32:31,926.926 INFO    ] ================================================
[2026-06-22 01:32:32,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:32:32
[2026-06-22 01:32:33,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:32:33,702.702 INFO    ] Initializing speech engine...
[2026-06-22 01:32:33,716.716 INFO    ] 2026-06-22 01:32:33
[2026-06-22 01:32:34,035.035 INFO    ] 2026-06-22 01:32:34
[2026-06-22 01:32:34,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:32:34,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:32:34,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:32:34,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:32:34,475.475 INFO    ] time= 22/06/2026 01:32:34
[2026-06-22 01:32:34,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:32:34,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:32:34,618.618 INFO    ] No existing commands found in stream
[2026-06-22 01:32:39,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:32:39,633.633 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-22 01:32:42,243.243 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:32:42,246.246 INFO    ] Checking for system updates...
[2026-06-22 01:32:42,283.283 INFO    ] 200
[2026-06-22 01:32:42,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:32:42,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:32:42,348.348 INFO    ] No update needed
[2026-06-22 01:32:42,350.350 INFO    ] Checking for camera pi updates...
[2026-06-22 01:32:42,384.384 INFO    ] 200
[2026-06-22 01:32:42,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:32:42,430.430 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:32:42,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:32:42,516.516 INFO    ] No camera update needed
[2026-06-22 01:32:42,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:32:42,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:32:42,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:32:42,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:32:44,571.571 INFO    ] ================================================
[2026-06-22 01:32:44,586.586 INFO    ] Launching Daemon at Mon Jun 22 01:32:44 IST 2026
[2026-06-22 01:32:44,597.597 INFO    ] ================================================
[2026-06-22 01:32:45,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:32:45
[2026-06-22 01:32:45,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:32:46,213.213 INFO    ] Initializing speech engine...
[2026-06-22 01:32:46,226.226 INFO    ] 2026-06-22 01:32:46
[2026-06-22 01:32:46,537.537 INFO    ] 2026-06-22 01:32:46
[2026-06-22 01:32:46,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:32:46,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:32:46,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:32:47,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:32:47,043.043 INFO    ] time= 22/06/2026 01:32:47
[2026-06-22 01:32:47,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:32:47,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:32:47,194.194 INFO    ] No existing commands found in stream
[2026-06-22 01:32:52,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:32:52,212.212 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-22 01:32:53,855.855 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:32:53,858.858 INFO    ] Checking for system updates...
[2026-06-22 01:32:53,896.896 INFO    ] 200
[2026-06-22 01:32:53,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:32:53,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:32:53,960.960 INFO    ] No update needed
[2026-06-22 01:32:53,962.962 INFO    ] Checking for camera pi updates...
[2026-06-22 01:32:53,999.999 INFO    ] 200
[2026-06-22 01:32:54,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:32:54,042.042 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:32:54,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:32:54,098.098 INFO    ] No camera update needed
[2026-06-22 01:32:54,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:32:54,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:32:54,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:32:54,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:32:56,154.154 INFO    ] ================================================
[2026-06-22 01:32:56,170.170 INFO    ] Launching Daemon at Mon Jun 22 01:32:56 IST 2026
[2026-06-22 01:32:56,181.181 INFO    ] ================================================
[2026-06-22 01:32:56,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:32:56
[2026-06-22 01:32:57,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:32:57,503.503 INFO    ] Initializing speech engine...
[2026-06-22 01:32:57,512.512 INFO    ] 2026-06-22 01:32:57
[2026-06-22 01:32:57,808.808 INFO    ] 2026-06-22 01:32:57
[2026-06-22 01:32:57,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:32:58,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:32:58,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:32:58,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:32:58,194.194 INFO    ] time= 22/06/2026 01:32:58
[2026-06-22 01:32:58,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:32:58,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:32:58,323.323 INFO    ] No existing commands found in stream
[2026-06-22 01:33:03,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:33:03,338.338 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-22 01:33:04,142.142 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:33:04,145.145 INFO    ] Checking for system updates...
[2026-06-22 01:33:04,186.186 INFO    ] 200
[2026-06-22 01:33:04,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:33:04,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:33:04,244.244 INFO    ] No update needed
[2026-06-22 01:33:04,246.246 INFO    ] Checking for camera pi updates...
[2026-06-22 01:33:04,280.280 INFO    ] 200
[2026-06-22 01:33:04,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:33:04,324.324 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:33:04,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:33:04,407.407 INFO    ] No camera update needed
[2026-06-22 01:33:04,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:33:04,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:33:04,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:33:04,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:33:06,463.463 INFO    ] ================================================
[2026-06-22 01:33:06,480.480 INFO    ] Launching Daemon at Mon Jun 22 01:33:06 IST 2026
[2026-06-22 01:33:06,491.491 INFO    ] ================================================
[2026-06-22 01:33:07,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:33:07
[2026-06-22 01:33:07,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:33:07,920.920 INFO    ] Initializing speech engine...
[2026-06-22 01:33:07,927.927 INFO    ] 2026-06-22 01:33:07
[2026-06-22 01:33:08,189.189 INFO    ] 2026-06-22 01:33:08
[2026-06-22 01:33:08,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:33:08,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:33:08,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:33:08,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:33:08,649.649 INFO    ] time= 22/06/2026 01:33:08
[2026-06-22 01:33:08,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:33:08,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:33:08,799.799 INFO    ] No existing commands found in stream
[2026-06-22 01:33:13,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:33:13,816.816 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-22 01:33:17,371.371 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:33:17,372.372 INFO    ] Checking for system updates...
[2026-06-22 01:33:17,393.393 INFO    ] 200
[2026-06-22 01:33:17,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:33:17,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:33:17,448.448 INFO    ] No update needed
[2026-06-22 01:33:17,450.450 INFO    ] Checking for camera pi updates...
[2026-06-22 01:33:17,484.484 INFO    ] 200
[2026-06-22 01:33:17,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:33:17,533.533 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:33:17,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:33:17,617.617 INFO    ] No camera update needed
[2026-06-22 01:33:17,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:33:17,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:33:17,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:33:17,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:33:19,676.676 INFO    ] ================================================
[2026-06-22 01:33:19,692.692 INFO    ] Launching Daemon at Mon Jun 22 01:33:19 IST 2026
[2026-06-22 01:33:19,703.703 INFO    ] ================================================
[2026-06-22 01:33:20,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:33:20
[2026-06-22 01:33:20,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:33:21,018.018 INFO    ] Initializing speech engine...
[2026-06-22 01:33:21,041.041 INFO    ] 2026-06-22 01:33:21
[2026-06-22 01:33:21,297.297 INFO    ] 2026-06-22 01:33:21
[2026-06-22 01:33:21,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:33:21,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:33:21,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:33:21,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:33:21,771.771 INFO    ] time= 22/06/2026 01:33:21
[2026-06-22 01:33:21,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:33:21,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:33:21,936.936 INFO    ] No existing commands found in stream
[2026-06-22 01:33:26,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:33:26,952.952 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-22 01:33:28,504.504 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:33:28,507.507 INFO    ] Checking for system updates...
[2026-06-22 01:33:28,545.545 INFO    ] 200
[2026-06-22 01:33:28,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:33:28,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:33:28,619.619 INFO    ] No update needed
[2026-06-22 01:33:28,621.621 INFO    ] Checking for camera pi updates...
[2026-06-22 01:33:28,655.655 INFO    ] 200
[2026-06-22 01:33:28,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:33:28,698.698 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:33:28,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:33:28,781.781 INFO    ] No camera update needed
[2026-06-22 01:33:28,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:33:28,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:33:28,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:33:28,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:33:30,840.840 INFO    ] ================================================
[2026-06-22 01:33:30,855.855 INFO    ] Launching Daemon at Mon Jun 22 01:33:30 IST 2026
[2026-06-22 01:33:30,866.866 INFO    ] ================================================
[2026-06-22 01:33:31,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:33:31
[2026-06-22 01:33:32,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:33:32,341.341 INFO    ] Initializing speech engine...
[2026-06-22 01:33:32,364.364 INFO    ] 2026-06-22 01:33:32
[2026-06-22 01:33:32,656.656 INFO    ] 2026-06-22 01:33:32
[2026-06-22 01:33:32,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:33:32,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:33:32,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:33:33,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:33:33,043.043 INFO    ] time= 22/06/2026 01:33:33
[2026-06-22 01:33:33,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:33:33,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:33:33,171.171 INFO    ] No existing commands found in stream
[2026-06-22 01:33:38,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:33:38,186.186 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-22 01:33:39,551.551 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:33:39,553.553 INFO    ] Checking for system updates...
[2026-06-22 01:33:39,575.575 INFO    ] 200
[2026-06-22 01:33:39,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:33:39,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:33:39,611.611 INFO    ] No update needed
[2026-06-22 01:33:39,613.613 INFO    ] Checking for camera pi updates...
[2026-06-22 01:33:39,648.648 INFO    ] 200
[2026-06-22 01:33:39,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:33:39,697.697 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:33:39,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:33:39,780.780 INFO    ] No camera update needed
[2026-06-22 01:33:39,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:33:39,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:33:39,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:33:39,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:33:41,835.835 INFO    ] ================================================
[2026-06-22 01:33:41,850.850 INFO    ] Launching Daemon at Mon Jun 22 01:33:41 IST 2026
[2026-06-22 01:33:41,861.861 INFO    ] ================================================
[2026-06-22 01:33:42,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:33:42
[2026-06-22 01:33:42,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:33:43,290.290 INFO    ] Initializing speech engine...
[2026-06-22 01:33:43,310.310 INFO    ] 2026-06-22 01:33:43
[2026-06-22 01:33:43,579.579 INFO    ] 2026-06-22 01:33:43
[2026-06-22 01:33:43,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:33:43,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:33:43,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:33:44,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:33:44,090.090 INFO    ] time= 22/06/2026 01:33:44
[2026-06-22 01:33:44,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:33:44,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:33:44,224.224 INFO    ] No existing commands found in stream
[2026-06-22 01:33:49,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:33:49,239.239 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-22 01:33:50,307.307 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:33:50,309.309 INFO    ] Checking for system updates...
[2026-06-22 01:33:50,330.330 INFO    ] 200
[2026-06-22 01:33:50,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:33:50,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:33:50,364.364 INFO    ] No update needed
[2026-06-22 01:33:50,366.366 INFO    ] Checking for camera pi updates...
[2026-06-22 01:33:50,387.387 INFO    ] 200
[2026-06-22 01:33:50,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:33:50,424.424 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:33:50,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:33:50,509.509 INFO    ] No camera update needed
[2026-06-22 01:33:50,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:33:50,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:33:50,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:33:50,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:33:52,566.566 INFO    ] ================================================
[2026-06-22 01:33:52,583.583 INFO    ] Launching Daemon at Mon Jun 22 01:33:52 IST 2026
[2026-06-22 01:33:52,594.594 INFO    ] ================================================
[2026-06-22 01:33:53,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:33:53
[2026-06-22 01:33:53,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:33:53,954.954 INFO    ] Initializing speech engine...
[2026-06-22 01:33:53,974.974 INFO    ] 2026-06-22 01:33:53
[2026-06-22 01:33:54,232.232 INFO    ] 2026-06-22 01:33:54
[2026-06-22 01:33:54,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:33:54,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:33:54,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:33:54,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:33:54,601.601 INFO    ] time= 22/06/2026 01:33:54
[2026-06-22 01:33:54,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:33:54,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:33:54,763.763 INFO    ] No existing commands found in stream
[2026-06-22 01:33:59,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:33:59,792.792 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-22 01:34:02,008.008 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:34:02,012.012 INFO    ] Checking for system updates...
[2026-06-22 01:34:02,057.057 INFO    ] 200
[2026-06-22 01:34:02,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:34:02,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:34:02,127.127 INFO    ] No update needed
[2026-06-22 01:34:02,131.131 INFO    ] Checking for camera pi updates...
[2026-06-22 01:34:02,170.170 INFO    ] 200
[2026-06-22 01:34:02,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:34:02,231.231 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:34:02,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:34:02,309.309 INFO    ] No camera update needed
[2026-06-22 01:34:02,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:34:02,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:34:02,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:34:02,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:34:04,380.380 INFO    ] ================================================
[2026-06-22 01:34:04,395.395 INFO    ] Launching Daemon at Mon Jun 22 01:34:04 IST 2026
[2026-06-22 01:34:04,406.406 INFO    ] ================================================
[2026-06-22 01:34:05,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:34:05
[2026-06-22 01:34:05,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:34:06,072.072 INFO    ] Initializing speech engine...
[2026-06-22 01:34:06,082.082 INFO    ] 2026-06-22 01:34:06
[2026-06-22 01:34:06,368.368 INFO    ] 2026-06-22 01:34:06
[2026-06-22 01:34:06,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:34:06,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:34:06,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:34:06,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:34:06,843.843 INFO    ] time= 22/06/2026 01:34:06
[2026-06-22 01:34:06,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:34:06,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:34:06,975.975 INFO    ] No existing commands found in stream
[2026-06-22 01:34:11,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:34:11,999.999 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-22 01:34:15,463.463 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:34:15,467.467 INFO    ] Checking for system updates...
[2026-06-22 01:34:15,504.504 INFO    ] 200
[2026-06-22 01:34:15,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:34:15,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:34:15,571.571 INFO    ] No update needed
[2026-06-22 01:34:15,574.574 INFO    ] Checking for camera pi updates...
[2026-06-22 01:34:15,613.613 INFO    ] 200
[2026-06-22 01:34:15,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:34:15,668.668 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:34:15,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:34:15,769.769 INFO    ] No camera update needed
[2026-06-22 01:34:15,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:34:15,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:34:15,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:34:15,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:34:17,830.830 INFO    ] ================================================
[2026-06-22 01:34:17,847.847 INFO    ] Launching Daemon at Mon Jun 22 01:34:17 IST 2026
[2026-06-22 01:34:17,858.858 INFO    ] ================================================
[2026-06-22 01:34:18,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:34:18
[2026-06-22 01:34:18,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:34:19,206.206 INFO    ] Initializing speech engine...
[2026-06-22 01:34:19,215.215 INFO    ] 2026-06-22 01:34:19
[2026-06-22 01:34:19,465.465 INFO    ] 2026-06-22 01:34:19
[2026-06-22 01:34:19,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:34:19,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:34:19,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:34:19,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:34:19,956.956 INFO    ] time= 22/06/2026 01:34:19
[2026-06-22 01:34:20,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:34:20,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:34:20,099.099 INFO    ] No existing commands found in stream
[2026-06-22 01:34:25,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:34:25,113.113 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-22 01:34:27,419.419 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:34:27,422.422 INFO    ] Checking for system updates...
[2026-06-22 01:34:27,460.460 INFO    ] 200
[2026-06-22 01:34:27,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:34:27,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:34:27,527.527 INFO    ] No update needed
[2026-06-22 01:34:27,530.530 INFO    ] Checking for camera pi updates...
[2026-06-22 01:34:27,565.565 INFO    ] 200
[2026-06-22 01:34:27,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:34:27,615.615 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:34:27,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:34:27,691.691 INFO    ] No camera update needed
[2026-06-22 01:34:27,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:34:27,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:34:27,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:34:27,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:34:29,750.750 INFO    ] ================================================
[2026-06-22 01:34:29,766.766 INFO    ] Launching Daemon at Mon Jun 22 01:34:29 IST 2026
[2026-06-22 01:34:29,777.777 INFO    ] ================================================
[2026-06-22 01:34:30,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:34:30
[2026-06-22 01:34:31,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:34:31,370.370 INFO    ] Initializing speech engine...
[2026-06-22 01:34:31,383.383 INFO    ] 2026-06-22 01:34:31
[2026-06-22 01:34:31,718.718 INFO    ] 2026-06-22 01:34:31
[2026-06-22 01:34:31,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:34:31,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:34:31,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:34:32,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:34:32,141.141 INFO    ] time= 22/06/2026 01:34:32
[2026-06-22 01:34:32,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:34:32,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:34:32,300.300 INFO    ] No existing commands found in stream
[2026-06-22 01:34:37,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:34:37,315.315 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-22 01:34:39,810.810 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:34:39,813.813 INFO    ] Checking for system updates...
[2026-06-22 01:34:39,849.849 INFO    ] 200
[2026-06-22 01:34:39,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:34:39,904.904 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:34:39,907.907 INFO    ] No update needed
[2026-06-22 01:34:39,909.909 INFO    ] Checking for camera pi updates...
[2026-06-22 01:34:39,943.943 INFO    ] 200
[2026-06-22 01:34:39,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:34:39,987.987 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:34:40,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:34:40,073.073 INFO    ] No camera update needed
[2026-06-22 01:34:40,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:34:40,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:34:40,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:34:40,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:34:42,128.128 INFO    ] ================================================
[2026-06-22 01:34:42,143.143 INFO    ] Launching Daemon at Mon Jun 22 01:34:42 IST 2026
[2026-06-22 01:34:42,155.155 INFO    ] ================================================
[2026-06-22 01:34:42,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:34:42
[2026-06-22 01:34:43,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:34:43,715.715 INFO    ] Initializing speech engine...
[2026-06-22 01:34:43,728.728 INFO    ] 2026-06-22 01:34:43
[2026-06-22 01:34:44,023.023 INFO    ] 2026-06-22 01:34:44
[2026-06-22 01:34:44,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:34:44,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:34:44,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:34:44,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:34:44,569.569 INFO    ] time= 22/06/2026 01:34:44
[2026-06-22 01:34:44,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:34:44,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:34:44,732.732 INFO    ] No existing commands found in stream
[2026-06-22 01:34:49,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:34:49,760.760 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-22 01:34:52,797.797 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:34:52,799.799 INFO    ] Checking for system updates...
[2026-06-22 01:34:52,820.820 INFO    ] 200
[2026-06-22 01:34:52,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:34:52,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:34:52,856.856 INFO    ] No update needed
[2026-06-22 01:34:52,858.858 INFO    ] Checking for camera pi updates...
[2026-06-22 01:34:52,893.893 INFO    ] 200
[2026-06-22 01:34:52,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:34:52,939.939 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:34:53,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:34:53,029.029 INFO    ] No camera update needed
[2026-06-22 01:34:53,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:34:53,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:34:53,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:34:53,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:34:55,088.088 INFO    ] ================================================
[2026-06-22 01:34:55,103.103 INFO    ] Launching Daemon at Mon Jun 22 01:34:55 IST 2026
[2026-06-22 01:34:55,114.114 INFO    ] ================================================
[2026-06-22 01:34:55,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:34:55
[2026-06-22 01:34:56,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:34:56,574.574 INFO    ] Initializing speech engine...
[2026-06-22 01:34:56,588.588 INFO    ] 2026-06-22 01:34:56
[2026-06-22 01:34:56,868.868 INFO    ] 2026-06-22 01:34:56
[2026-06-22 01:34:56,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:34:57,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:34:57,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:34:57,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:34:57,410.410 INFO    ] time= 22/06/2026 01:34:57
[2026-06-22 01:34:57,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:34:57,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:34:57,565.565 INFO    ] No existing commands found in stream
[2026-06-22 01:35:02,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:35:02,591.591 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-22 01:35:03,162.162 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:35:03,166.166 INFO    ] Checking for system updates...
[2026-06-22 01:35:03,209.209 INFO    ] 200
[2026-06-22 01:35:03,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:35:03,271.271 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:35:03,275.275 INFO    ] No update needed
[2026-06-22 01:35:03,278.278 INFO    ] Checking for camera pi updates...
[2026-06-22 01:35:03,316.316 INFO    ] 200
[2026-06-22 01:35:03,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:35:03,366.366 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:35:03,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:35:03,464.464 INFO    ] No camera update needed
[2026-06-22 01:35:03,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:35:03,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:35:03,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:35:03,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:35:05,527.527 INFO    ] ================================================
[2026-06-22 01:35:05,546.546 INFO    ] Launching Daemon at Mon Jun 22 01:35:05 IST 2026
[2026-06-22 01:35:05,557.557 INFO    ] ================================================
[2026-06-22 01:35:06,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:35:06
[2026-06-22 01:35:06,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:35:07,006.006 INFO    ] Initializing speech engine...
[2026-06-22 01:35:07,016.016 INFO    ] 2026-06-22 01:35:07
[2026-06-22 01:35:07,266.266 INFO    ] 2026-06-22 01:35:07
[2026-06-22 01:35:07,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:35:07,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:35:07,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:35:07,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:35:07,608.608 INFO    ] time= 22/06/2026 01:35:07
[2026-06-22 01:35:07,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:35:07,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:35:07,721.721 INFO    ] No existing commands found in stream
[2026-06-22 01:35:12,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:35:12,742.742 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-22 01:35:13,484.484 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:35:13,486.486 INFO    ] Checking for system updates...
[2026-06-22 01:35:13,508.508 INFO    ] 200
[2026-06-22 01:35:13,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:35:13,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:35:13,543.543 INFO    ] No update needed
[2026-06-22 01:35:13,544.544 INFO    ] Checking for camera pi updates...
[2026-06-22 01:35:13,576.576 INFO    ] 200
[2026-06-22 01:35:13,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:35:13,621.621 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:35:13,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:35:13,808.808 INFO    ] No camera update needed
[2026-06-22 01:35:13,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:35:13,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:35:13,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:35:13,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:35:15,869.869 INFO    ] ================================================
[2026-06-22 01:35:15,885.885 INFO    ] Launching Daemon at Mon Jun 22 01:35:15 IST 2026
[2026-06-22 01:35:15,896.896 INFO    ] ================================================
[2026-06-22 01:35:16,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:35:16
[2026-06-22 01:35:17,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:35:17,410.410 INFO    ] Initializing speech engine...
[2026-06-22 01:35:17,419.419 INFO    ] 2026-06-22 01:35:17
[2026-06-22 01:35:17,706.706 INFO    ] 2026-06-22 01:35:17
[2026-06-22 01:35:17,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:35:17,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:35:17,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:35:18,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:35:18,195.195 INFO    ] time= 22/06/2026 01:35:18
[2026-06-22 01:35:18,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:35:18,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:35:18,392.392 INFO    ] No existing commands found in stream
[2026-06-22 01:35:23,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:35:23,421.421 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-22 01:35:26,885.885 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:35:26,888.888 INFO    ] Checking for system updates...
[2026-06-22 01:35:26,925.925 INFO    ] 200
[2026-06-22 01:35:26,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:35:26,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:35:26,984.984 INFO    ] No update needed
[2026-06-22 01:35:26,987.987 INFO    ] Checking for camera pi updates...
[2026-06-22 01:35:27,025.025 INFO    ] 200
[2026-06-22 01:35:27,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:35:27,070.070 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:35:27,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:35:27,160.160 INFO    ] No camera update needed
[2026-06-22 01:35:27,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:35:27,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:35:27,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:35:27,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:35:29,218.218 INFO    ] ================================================
[2026-06-22 01:35:29,233.233 INFO    ] Launching Daemon at Mon Jun 22 01:35:29 IST 2026
[2026-06-22 01:35:29,244.244 INFO    ] ================================================
[2026-06-22 01:35:29,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:35:29
[2026-06-22 01:35:30,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:35:30,749.749 INFO    ] Initializing speech engine...
[2026-06-22 01:35:30,758.758 INFO    ] 2026-06-22 01:35:30
[2026-06-22 01:35:31,047.047 INFO    ] 2026-06-22 01:35:31
[2026-06-22 01:35:31,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:35:31,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:35:31,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:35:31,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:35:31,535.535 INFO    ] time= 22/06/2026 01:35:31
[2026-06-22 01:35:31,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:35:31,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:35:31,658.658 INFO    ] No existing commands found in stream
[2026-06-22 01:35:36,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:35:36,675.675 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-22 01:35:38,586.586 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:35:38,588.588 INFO    ] Checking for system updates...
[2026-06-22 01:35:38,608.608 INFO    ] 200
[2026-06-22 01:35:38,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:35:38,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:35:38,642.642 INFO    ] No update needed
[2026-06-22 01:35:38,643.643 INFO    ] Checking for camera pi updates...
[2026-06-22 01:35:38,663.663 INFO    ] 200
[2026-06-22 01:35:38,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:35:38,701.701 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:35:38,782.782 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:35:38,785.785 INFO    ] No camera update needed
[2026-06-22 01:35:38,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:35:38,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:35:38,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:35:38,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:35:40,845.845 INFO    ] ================================================
[2026-06-22 01:35:40,860.860 INFO    ] Launching Daemon at Mon Jun 22 01:35:40 IST 2026
[2026-06-22 01:35:40,871.871 INFO    ] ================================================
[2026-06-22 01:35:41,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:35:41
[2026-06-22 01:35:41,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:35:42,261.261 INFO    ] Initializing speech engine...
[2026-06-22 01:35:42,271.271 INFO    ] 2026-06-22 01:35:42
[2026-06-22 01:35:42,538.538 INFO    ] 2026-06-22 01:35:42
[2026-06-22 01:35:42,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:35:42,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:35:42,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:35:42,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:35:42,912.912 INFO    ] time= 22/06/2026 01:35:42
[2026-06-22 01:35:42,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:35:42,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:35:43,035.035 INFO    ] No existing commands found in stream
[2026-06-22 01:35:48,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:35:48,051.051 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-22 01:35:52,259.259 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:35:52,261.261 INFO    ] Checking for system updates...
[2026-06-22 01:35:52,283.283 INFO    ] 200
[2026-06-22 01:35:52,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:35:52,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:35:52,337.337 INFO    ] No update needed
[2026-06-22 01:35:52,340.340 INFO    ] Checking for camera pi updates...
[2026-06-22 01:35:52,375.375 INFO    ] 200
[2026-06-22 01:35:52,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:35:52,419.419 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:35:52,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:35:52,519.519 INFO    ] No camera update needed
[2026-06-22 01:35:52,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:35:52,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:35:52,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:35:52,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:35:54,577.577 INFO    ] ================================================
[2026-06-22 01:35:54,592.592 INFO    ] Launching Daemon at Mon Jun 22 01:35:54 IST 2026
[2026-06-22 01:35:54,603.603 INFO    ] ================================================
[2026-06-22 01:35:55,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:35:55
[2026-06-22 01:35:55,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:35:55,954.954 INFO    ] Initializing speech engine...
[2026-06-22 01:35:55,964.964 INFO    ] 2026-06-22 01:35:55
[2026-06-22 01:35:56,229.229 INFO    ] 2026-06-22 01:35:56
[2026-06-22 01:35:56,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:35:56,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:35:56,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:35:56,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:35:56,606.606 INFO    ] time= 22/06/2026 01:35:56
[2026-06-22 01:35:56,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:35:56,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:35:56,731.731 INFO    ] No existing commands found in stream
[2026-06-22 01:36:01,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:36:01,748.748 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-22 01:36:02,139.139 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:36:02,142.142 INFO    ] Checking for system updates...
[2026-06-22 01:36:02,186.186 INFO    ] 200
[2026-06-22 01:36:02,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:36:02,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:36:02,255.255 INFO    ] No update needed
[2026-06-22 01:36:02,259.259 INFO    ] Checking for camera pi updates...
[2026-06-22 01:36:02,298.298 INFO    ] 200
[2026-06-22 01:36:02,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:36:02,359.359 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:36:02,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:36:02,427.427 INFO    ] No camera update needed
[2026-06-22 01:36:02,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:36:02,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:36:02,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:36:02,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:36:04,489.489 INFO    ] ================================================
[2026-06-22 01:36:04,505.505 INFO    ] Launching Daemon at Mon Jun 22 01:36:04 IST 2026
[2026-06-22 01:36:04,515.515 INFO    ] ================================================
[2026-06-22 01:36:05,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:36:05
[2026-06-22 01:36:05,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:36:05,839.839 INFO    ] Initializing speech engine...
[2026-06-22 01:36:05,843.843 INFO    ] 2026-06-22 01:36:05
[2026-06-22 01:36:06,136.136 INFO    ] 2026-06-22 01:36:06
[2026-06-22 01:36:06,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:36:06,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:36:06,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:36:06,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:36:06,513.513 INFO    ] time= 22/06/2026 01:36:06
[2026-06-22 01:36:06,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:36:06,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:36:06,696.696 INFO    ] No existing commands found in stream
[2026-06-22 01:36:11,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:36:11,723.723 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-22 01:36:13,460.460 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:36:13,463.463 INFO    ] Checking for system updates...
[2026-06-22 01:36:13,498.498 INFO    ] 200
[2026-06-22 01:36:13,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:36:13,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:36:13,556.556 INFO    ] No update needed
[2026-06-22 01:36:13,558.558 INFO    ] Checking for camera pi updates...
[2026-06-22 01:36:13,593.593 INFO    ] 200
[2026-06-22 01:36:13,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:36:13,636.636 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:36:13,721.721 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:36:13,723.723 INFO    ] No camera update needed
[2026-06-22 01:36:13,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:36:13,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:36:13,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:36:13,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:36:15,779.779 INFO    ] ================================================
[2026-06-22 01:36:15,795.795 INFO    ] Launching Daemon at Mon Jun 22 01:36:15 IST 2026
[2026-06-22 01:36:15,806.806 INFO    ] ================================================
[2026-06-22 01:36:16,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:36:16
[2026-06-22 01:36:17,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:36:17,300.300 INFO    ] Initializing speech engine...
[2026-06-22 01:36:17,309.309 INFO    ] 2026-06-22 01:36:17
[2026-06-22 01:36:17,555.555 INFO    ] 2026-06-22 01:36:17
[2026-06-22 01:36:17,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:36:17,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:36:17,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:36:17,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:36:18,032.032 INFO    ] time= 22/06/2026 01:36:17
[2026-06-22 01:36:18,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:36:18,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:36:18,236.236 INFO    ] No existing commands found in stream
[2026-06-22 01:36:23,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:36:23,266.266 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-22 01:36:27,013.013 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:36:27,015.015 INFO    ] Checking for system updates...
[2026-06-22 01:36:27,036.036 INFO    ] 200
[2026-06-22 01:36:27,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:36:27,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:36:27,070.070 INFO    ] No update needed
[2026-06-22 01:36:27,071.071 INFO    ] Checking for camera pi updates...
[2026-06-22 01:36:27,091.091 INFO    ] 200
[2026-06-22 01:36:27,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:36:27,124.124 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:36:27,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:36:27,233.233 INFO    ] No camera update needed
[2026-06-22 01:36:27,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:36:27,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:36:27,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:36:27,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:36:29,292.292 INFO    ] ================================================
[2026-06-22 01:36:29,307.307 INFO    ] Launching Daemon at Mon Jun 22 01:36:29 IST 2026
[2026-06-22 01:36:29,317.317 INFO    ] ================================================
[2026-06-22 01:36:29,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:36:29
[2026-06-22 01:36:30,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:36:30,689.689 INFO    ] Initializing speech engine...
[2026-06-22 01:36:30,698.698 INFO    ] 2026-06-22 01:36:30
[2026-06-22 01:36:30,948.948 INFO    ] 2026-06-22 01:36:30
[2026-06-22 01:36:30,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:36:31,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:36:31,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:36:31,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:36:31,534.534 INFO    ] time= 22/06/2026 01:36:31
[2026-06-22 01:36:31,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:36:31,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:36:31,692.692 INFO    ] No existing commands found in stream
[2026-06-22 01:36:36,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:36:36,720.720 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-22 01:36:40,664.664 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:36:40,667.667 INFO    ] Checking for system updates...
[2026-06-22 01:36:40,704.704 INFO    ] 200
[2026-06-22 01:36:40,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:36:40,760.760 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:36:40,762.762 INFO    ] No update needed
[2026-06-22 01:36:40,764.764 INFO    ] Checking for camera pi updates...
[2026-06-22 01:36:40,798.798 INFO    ] 200
[2026-06-22 01:36:40,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:36:40,841.841 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:36:40,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:36:40,923.923 INFO    ] No camera update needed
[2026-06-22 01:36:40,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:36:40,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:36:40,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:36:40,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:36:42,980.980 INFO    ] ================================================
[2026-06-22 01:36:43,995.995 INFO    ] Launching Daemon at Mon Jun 22 01:36:42 IST 2026
[2026-06-22 01:36:43,007.007 INFO    ] ================================================
[2026-06-22 01:36:43,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:36:43
[2026-06-22 01:36:44,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:36:44,382.382 INFO    ] Initializing speech engine...
[2026-06-22 01:36:44,388.388 INFO    ] 2026-06-22 01:36:44
[2026-06-22 01:36:44,651.651 INFO    ] 2026-06-22 01:36:44
[2026-06-22 01:36:44,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:36:44,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:36:44,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:36:45,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:36:45,131.131 INFO    ] time= 22/06/2026 01:36:45
[2026-06-22 01:36:45,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:36:45,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:36:45,261.261 INFO    ] No existing commands found in stream
[2026-06-22 01:36:50,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:36:50,277.277 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-22 01:36:52,076.076 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:36:52,077.077 INFO    ] Checking for system updates...
[2026-06-22 01:36:52,100.100 INFO    ] 200
[2026-06-22 01:36:52,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:36:52,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:36:52,133.133 INFO    ] No update needed
[2026-06-22 01:36:52,135.135 INFO    ] Checking for camera pi updates...
[2026-06-22 01:36:52,169.169 INFO    ] 200
[2026-06-22 01:36:52,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:36:52,213.213 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:36:52,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:36:52,287.287 INFO    ] No camera update needed
[2026-06-22 01:36:52,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:36:52,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:36:52,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:36:52,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:36:54,343.343 INFO    ] ================================================
[2026-06-22 01:36:54,358.358 INFO    ] Launching Daemon at Mon Jun 22 01:36:54 IST 2026
[2026-06-22 01:36:54,369.369 INFO    ] ================================================
[2026-06-22 01:36:54,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:36:54
[2026-06-22 01:36:55,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:36:55,692.692 INFO    ] Initializing speech engine...
[2026-06-22 01:36:55,705.705 INFO    ] 2026-06-22 01:36:55
[2026-06-22 01:36:55,971.971 INFO    ] 2026-06-22 01:36:55
[2026-06-22 01:36:56,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:36:56,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:36:56,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:36:56,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:36:56,417.417 INFO    ] time= 22/06/2026 01:36:56
[2026-06-22 01:36:56,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:36:56,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:36:56,601.601 INFO    ] No existing commands found in stream
[2026-06-22 01:37:01,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:37:01,615.615 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-22 01:37:03,455.455 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:37:03,458.458 INFO    ] Checking for system updates...
[2026-06-22 01:37:03,498.498 INFO    ] 200
[2026-06-22 01:37:03,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:37:03,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:37:03,573.573 INFO    ] No update needed
[2026-06-22 01:37:03,575.575 INFO    ] Checking for camera pi updates...
[2026-06-22 01:37:03,616.616 INFO    ] 200
[2026-06-22 01:37:03,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:37:03,662.662 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:37:03,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:37:03,764.764 INFO    ] No camera update needed
[2026-06-22 01:37:03,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:37:03,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:37:03,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:37:03,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:37:05,818.818 INFO    ] ================================================
[2026-06-22 01:37:05,833.833 INFO    ] Launching Daemon at Mon Jun 22 01:37:05 IST 2026
[2026-06-22 01:37:05,845.845 INFO    ] ================================================
[2026-06-22 01:37:06,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:37:06
[2026-06-22 01:37:07,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:37:07,329.329 INFO    ] Initializing speech engine...
[2026-06-22 01:37:07,345.345 INFO    ] 2026-06-22 01:37:07
[2026-06-22 01:37:07,623.623 INFO    ] 2026-06-22 01:37:07
[2026-06-22 01:37:07,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:37:07,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:37:07,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:37:08,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:37:08,016.016 INFO    ] time= 22/06/2026 01:37:08
[2026-06-22 01:37:08,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:37:08,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:37:08,202.202 INFO    ] No existing commands found in stream
[2026-06-22 01:37:13,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:37:13,226.226 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-22 01:37:16,695.695 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:37:16,697.697 INFO    ] Checking for system updates...
[2026-06-22 01:37:16,733.733 INFO    ] 200
[2026-06-22 01:37:16,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:37:16,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:37:16,799.799 INFO    ] No update needed
[2026-06-22 01:37:16,801.801 INFO    ] Checking for camera pi updates...
[2026-06-22 01:37:16,836.836 INFO    ] 200
[2026-06-22 01:37:16,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:37:16,879.879 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:37:17,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:37:17,062.062 INFO    ] No camera update needed
[2026-06-22 01:37:17,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:37:17,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:37:17,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:37:17,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:37:19,119.119 INFO    ] ================================================
[2026-06-22 01:37:19,134.134 INFO    ] Launching Daemon at Mon Jun 22 01:37:19 IST 2026
[2026-06-22 01:37:19,145.145 INFO    ] ================================================
[2026-06-22 01:37:19,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:37:19
[2026-06-22 01:37:20,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:37:20,494.494 INFO    ] Initializing speech engine...
[2026-06-22 01:37:20,516.516 INFO    ] 2026-06-22 01:37:20
[2026-06-22 01:37:20,774.774 INFO    ] 2026-06-22 01:37:20
[2026-06-22 01:37:20,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:37:20,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:37:20,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:37:21,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:37:21,144.144 INFO    ] time= 22/06/2026 01:37:21
[2026-06-22 01:37:21,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:37:21,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:37:21,326.326 INFO    ] No existing commands found in stream
[2026-06-22 01:37:26,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:37:26,356.356 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-22 01:37:28,523.523 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:37:28,526.526 INFO    ] Checking for system updates...
[2026-06-22 01:37:28,562.562 INFO    ] 200
[2026-06-22 01:37:28,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:37:28,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:37:28,620.620 INFO    ] No update needed
[2026-06-22 01:37:28,622.622 INFO    ] Checking for camera pi updates...
[2026-06-22 01:37:28,657.657 INFO    ] 200
[2026-06-22 01:37:28,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:37:28,701.701 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:37:28,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:37:28,812.812 INFO    ] No camera update needed
[2026-06-22 01:37:28,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:37:28,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:37:28,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:37:28,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:37:30,869.869 INFO    ] ================================================
[2026-06-22 01:37:30,885.885 INFO    ] Launching Daemon at Mon Jun 22 01:37:30 IST 2026
[2026-06-22 01:37:30,896.896 INFO    ] ================================================
[2026-06-22 01:37:31,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:37:31
[2026-06-22 01:37:31,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:37:32,316.316 INFO    ] Initializing speech engine...
[2026-06-22 01:37:32,322.322 INFO    ] 2026-06-22 01:37:32
[2026-06-22 01:37:32,577.577 INFO    ] 2026-06-22 01:37:32
[2026-06-22 01:37:32,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:37:32,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:37:32,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:37:32,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:37:32,959.959 INFO    ] time= 22/06/2026 01:37:32
[2026-06-22 01:37:32,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:37:33,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:37:33,129.129 INFO    ] No existing commands found in stream
[2026-06-22 01:37:38,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:37:38,163.163 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-22 01:37:38,626.626 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:37:38,627.627 INFO    ] Checking for system updates...
[2026-06-22 01:37:38,651.651 INFO    ] 200
[2026-06-22 01:37:38,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:37:38,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:37:38,709.709 INFO    ] No update needed
[2026-06-22 01:37:38,711.711 INFO    ] Checking for camera pi updates...
[2026-06-22 01:37:38,747.747 INFO    ] 200
[2026-06-22 01:37:38,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:37:38,790.790 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:37:38,880.880 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:37:38,882.882 INFO    ] No camera update needed
[2026-06-22 01:37:38,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:37:38,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:37:38,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:37:38,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:37:40,938.938 INFO    ] ================================================
[2026-06-22 01:37:40,953.953 INFO    ] Launching Daemon at Mon Jun 22 01:37:40 IST 2026
[2026-06-22 01:37:40,965.965 INFO    ] ================================================
[2026-06-22 01:37:41,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:37:41
[2026-06-22 01:37:42,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:37:42,553.553 INFO    ] Initializing speech engine...
[2026-06-22 01:37:42,566.566 INFO    ] 2026-06-22 01:37:42
[2026-06-22 01:37:42,853.853 INFO    ] 2026-06-22 01:37:42
[2026-06-22 01:37:42,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:37:43,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:37:43,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:37:43,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:37:43,203.203 INFO    ] time= 22/06/2026 01:37:43
[2026-06-22 01:37:43,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:37:43,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:37:43,280.280 INFO    ] No existing commands found in stream
[2026-06-22 01:37:48,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:37:48,327.327 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-22 01:37:50,080.080 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:37:50,081.081 INFO    ] Checking for system updates...
[2026-06-22 01:37:50,102.102 INFO    ] 200
[2026-06-22 01:37:50,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:37:50,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:37:50,135.135 INFO    ] No update needed
[2026-06-22 01:37:50,136.136 INFO    ] Checking for camera pi updates...
[2026-06-22 01:37:50,169.169 INFO    ] 200
[2026-06-22 01:37:50,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:37:50,212.212 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:37:50,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:37:50,271.271 INFO    ] No camera update needed
[2026-06-22 01:37:50,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:37:50,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:37:50,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:37:50,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:37:52,327.327 INFO    ] ================================================
[2026-06-22 01:37:52,342.342 INFO    ] Launching Daemon at Mon Jun 22 01:37:52 IST 2026
[2026-06-22 01:37:52,353.353 INFO    ] ================================================
[2026-06-22 01:37:53,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:37:53
[2026-06-22 01:37:53,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:37:53,886.886 INFO    ] Initializing speech engine...
[2026-06-22 01:37:53,896.896 INFO    ] 2026-06-22 01:37:53
[2026-06-22 01:37:54,190.190 INFO    ] 2026-06-22 01:37:54
[2026-06-22 01:37:54,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:37:54,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:37:54,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:37:54,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:37:54,672.672 INFO    ] time= 22/06/2026 01:37:54
[2026-06-22 01:37:54,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:37:54,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:37:54,898.898 INFO    ] No existing commands found in stream
[2026-06-22 01:37:59,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:37:59,920.920 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-22 01:38:00,727.727 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:38:00,729.729 INFO    ] Checking for system updates...
[2026-06-22 01:38:00,757.757 INFO    ] 200
[2026-06-22 01:38:00,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:38:00,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:38:00,815.815 INFO    ] No update needed
[2026-06-22 01:38:00,818.818 INFO    ] Checking for camera pi updates...
[2026-06-22 01:38:00,851.851 INFO    ] 200
[2026-06-22 01:38:00,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:38:00,900.900 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:38:01,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:38:01,010.010 INFO    ] No camera update needed
[2026-06-22 01:38:01,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:38:01,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:38:01,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:38:01,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:38:03,087.087 INFO    ] ================================================
[2026-06-22 01:38:03,109.109 INFO    ] Launching Daemon at Mon Jun 22 01:38:03 IST 2026
[2026-06-22 01:38:03,128.128 INFO    ] ================================================
[2026-06-22 01:38:03,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:38:03
[2026-06-22 01:38:04,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:38:04,651.651 INFO    ] Initializing speech engine...
[2026-06-22 01:38:04,660.660 INFO    ] 2026-06-22 01:38:04
[2026-06-22 01:38:04,910.910 INFO    ] 2026-06-22 01:38:04
[2026-06-22 01:38:04,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:38:05,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:38:05,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:38:05,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:38:05,367.367 INFO    ] time= 22/06/2026 01:38:05
[2026-06-22 01:38:05,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:38:05,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:38:05,533.533 INFO    ] No existing commands found in stream
[2026-06-22 01:38:10,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:38:10,548.548 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-22 01:38:14,591.591 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:38:14,592.592 INFO    ] Checking for system updates...
[2026-06-22 01:38:14,613.613 INFO    ] 200
[2026-06-22 01:38:14,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:38:14,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:38:14,648.648 INFO    ] No update needed
[2026-06-22 01:38:14,650.650 INFO    ] Checking for camera pi updates...
[2026-06-22 01:38:14,670.670 INFO    ] 200
[2026-06-22 01:38:14,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:38:14,713.713 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:38:14,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:38:14,812.812 INFO    ] No camera update needed
[2026-06-22 01:38:14,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:38:14,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:38:14,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:38:14,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:38:16,873.873 INFO    ] ================================================
[2026-06-22 01:38:16,889.889 INFO    ] Launching Daemon at Mon Jun 22 01:38:16 IST 2026
[2026-06-22 01:38:16,901.901 INFO    ] ================================================
[2026-06-22 01:38:17,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:38:17
[2026-06-22 01:38:17,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:38:18,236.236 INFO    ] Initializing speech engine...
[2026-06-22 01:38:18,255.255 INFO    ] 2026-06-22 01:38:18
[2026-06-22 01:38:18,507.507 INFO    ] 2026-06-22 01:38:18
[2026-06-22 01:38:18,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:38:18,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:38:18,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:38:18,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:38:18,885.885 INFO    ] time= 22/06/2026 01:38:18
[2026-06-22 01:38:18,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:38:18,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:38:19,058.058 INFO    ] No existing commands found in stream
[2026-06-22 01:38:24,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:38:24,091.091 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-22 01:38:25,109.109 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:38:25,111.111 INFO    ] Checking for system updates...
[2026-06-22 01:38:25,147.147 INFO    ] 200
[2026-06-22 01:38:25,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:38:25,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:38:25,214.214 INFO    ] No update needed
[2026-06-22 01:38:25,217.217 INFO    ] Checking for camera pi updates...
[2026-06-22 01:38:25,259.259 INFO    ] 200
[2026-06-22 01:38:25,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:38:25,302.302 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:38:25,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:38:25,377.377 INFO    ] No camera update needed
[2026-06-22 01:38:25,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:38:25,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:38:25,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:38:25,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:38:27,432.432 INFO    ] ================================================
[2026-06-22 01:38:27,447.447 INFO    ] Launching Daemon at Mon Jun 22 01:38:27 IST 2026
[2026-06-22 01:38:27,459.459 INFO    ] ================================================
[2026-06-22 01:38:28,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:38:28
[2026-06-22 01:38:28,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:38:28,866.866 INFO    ] Initializing speech engine...
[2026-06-22 01:38:28,879.879 INFO    ] 2026-06-22 01:38:28
[2026-06-22 01:38:29,141.141 INFO    ] 2026-06-22 01:38:29
[2026-06-22 01:38:29,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:38:29,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:38:29,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:38:29,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:38:29,587.587 INFO    ] time= 22/06/2026 01:38:29
[2026-06-22 01:38:29,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:38:29,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:38:29,755.755 INFO    ] No existing commands found in stream
[2026-06-22 01:38:34,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:38:34,770.770 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-22 01:38:35,760.760 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:38:35,763.763 INFO    ] Checking for system updates...
[2026-06-22 01:38:35,803.803 INFO    ] 200
[2026-06-22 01:38:35,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:38:35,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:38:35,869.869 INFO    ] No update needed
[2026-06-22 01:38:35,872.872 INFO    ] Checking for camera pi updates...
[2026-06-22 01:38:35,910.910 INFO    ] 200
[2026-06-22 01:38:35,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:38:35,952.952 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:38:36,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:38:36,034.034 INFO    ] No camera update needed
[2026-06-22 01:38:36,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:38:36,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:38:36,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:38:36,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:38:38,091.091 INFO    ] ================================================
[2026-06-22 01:38:38,107.107 INFO    ] Launching Daemon at Mon Jun 22 01:38:38 IST 2026
[2026-06-22 01:38:38,119.119 INFO    ] ================================================
[2026-06-22 01:38:38,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:38:38
[2026-06-22 01:38:39,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:38:39,495.495 INFO    ] Initializing speech engine...
[2026-06-22 01:38:39,502.502 INFO    ] 2026-06-22 01:38:39
[2026-06-22 01:38:39,764.764 INFO    ] 2026-06-22 01:38:39
[2026-06-22 01:38:39,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:38:40,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:38:40,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:38:40,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:38:40,222.222 INFO    ] time= 22/06/2026 01:38:40
[2026-06-22 01:38:40,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:38:40,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:38:40,375.375 INFO    ] No existing commands found in stream
[2026-06-22 01:38:45,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:38:45,389.389 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-22 01:38:46,746.746 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:38:46,749.749 INFO    ] Checking for system updates...
[2026-06-22 01:38:46,792.792 INFO    ] 200
[2026-06-22 01:38:46,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:38:46,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:38:46,855.855 INFO    ] No update needed
[2026-06-22 01:38:46,858.858 INFO    ] Checking for camera pi updates...
[2026-06-22 01:38:46,898.898 INFO    ] 200
[2026-06-22 01:38:46,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:38:46,941.941 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:38:47,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:38:47,024.024 INFO    ] No camera update needed
[2026-06-22 01:38:47,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:38:47,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:38:47,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:38:47,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:38:49,081.081 INFO    ] ================================================
[2026-06-22 01:38:49,097.097 INFO    ] Launching Daemon at Mon Jun 22 01:38:49 IST 2026
[2026-06-22 01:38:49,109.109 INFO    ] ================================================
[2026-06-22 01:38:49,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:38:49
[2026-06-22 01:38:50,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:38:50,589.589 INFO    ] Initializing speech engine...
[2026-06-22 01:38:50,596.596 INFO    ] 2026-06-22 01:38:50
[2026-06-22 01:38:50,867.867 INFO    ] 2026-06-22 01:38:50
[2026-06-22 01:38:50,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:38:51,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:38:51,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:38:51,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:38:51,320.320 INFO    ] time= 22/06/2026 01:38:51
[2026-06-22 01:38:51,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:38:51,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:38:51,528.528 INFO    ] No existing commands found in stream
[2026-06-22 01:38:56,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:38:56,565.565 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-22 01:39:00,604.604 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:39:00,607.607 INFO    ] Checking for system updates...
[2026-06-22 01:39:00,650.650 INFO    ] 200
[2026-06-22 01:39:00,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:39:00,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:39:00,718.718 INFO    ] No update needed
[2026-06-22 01:39:00,722.722 INFO    ] Checking for camera pi updates...
[2026-06-22 01:39:00,761.761 INFO    ] 200
[2026-06-22 01:39:00,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:39:00,817.817 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:39:00,923.923 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:39:00,926.926 INFO    ] No camera update needed
[2026-06-22 01:39:00,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:39:00,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:39:00,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:39:00,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:39:03,002.002 INFO    ] ================================================
[2026-06-22 01:39:03,025.025 INFO    ] Launching Daemon at Mon Jun 22 01:39:03 IST 2026
[2026-06-22 01:39:03,041.041 INFO    ] ================================================
[2026-06-22 01:39:03,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:39:03
[2026-06-22 01:39:04,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:39:04,670.670 INFO    ] Initializing speech engine...
[2026-06-22 01:39:04,679.679 INFO    ] 2026-06-22 01:39:04
[2026-06-22 01:39:04,941.941 INFO    ] 2026-06-22 01:39:04
[2026-06-22 01:39:04,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:39:05,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:39:05,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:39:05,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:39:05,393.393 INFO    ] time= 22/06/2026 01:39:05
[2026-06-22 01:39:05,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:39:05,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:39:05,549.549 INFO    ] No existing commands found in stream
[2026-06-22 01:39:10,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:39:10,562.562 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-22 01:39:13,806.806 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:39:13,808.808 INFO    ] Checking for system updates...
[2026-06-22 01:39:13,844.844 INFO    ] 200
[2026-06-22 01:39:13,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:39:13,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:39:13,902.902 INFO    ] No update needed
[2026-06-22 01:39:13,905.905 INFO    ] Checking for camera pi updates...
[2026-06-22 01:39:13,943.943 INFO    ] 200
[2026-06-22 01:39:13,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:39:13,993.993 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:39:14,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:39:14,076.076 INFO    ] No camera update needed
[2026-06-22 01:39:14,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:39:14,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:39:14,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:39:14,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:39:16,132.132 INFO    ] ================================================
[2026-06-22 01:39:16,147.147 INFO    ] Launching Daemon at Mon Jun 22 01:39:16 IST 2026
[2026-06-22 01:39:16,158.158 INFO    ] ================================================
[2026-06-22 01:39:16,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:39:16
[2026-06-22 01:39:17,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:39:17,493.493 INFO    ] Initializing speech engine...
[2026-06-22 01:39:17,502.502 INFO    ] 2026-06-22 01:39:17
[2026-06-22 01:39:17,760.760 INFO    ] 2026-06-22 01:39:17
[2026-06-22 01:39:17,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:39:17,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:39:17,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:39:18,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:39:18,118.118 INFO    ] time= 22/06/2026 01:39:18
[2026-06-22 01:39:18,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:39:18,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:39:18,300.300 INFO    ] No existing commands found in stream
[2026-06-22 01:39:23,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:39:23,328.328 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-22 01:39:24,780.780 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:39:24,782.782 INFO    ] Checking for system updates...
[2026-06-22 01:39:24,822.822 INFO    ] 200
[2026-06-22 01:39:24,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:39:24,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:39:24,880.880 INFO    ] No update needed
[2026-06-22 01:39:24,882.882 INFO    ] Checking for camera pi updates...
[2026-06-22 01:39:24,920.920 INFO    ] 200
[2026-06-22 01:39:24,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:39:24,969.969 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:39:25,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:39:25,134.134 INFO    ] No camera update needed
[2026-06-22 01:39:25,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:39:25,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:39:25,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:39:25,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:39:27,192.192 INFO    ] ================================================
[2026-06-22 01:39:27,207.207 INFO    ] Launching Daemon at Mon Jun 22 01:39:27 IST 2026
[2026-06-22 01:39:27,219.219 INFO    ] ================================================
[2026-06-22 01:39:27,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:39:27
[2026-06-22 01:39:28,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:39:28,646.646 INFO    ] Initializing speech engine...
[2026-06-22 01:39:28,655.655 INFO    ] 2026-06-22 01:39:28
[2026-06-22 01:39:28,901.901 INFO    ] 2026-06-22 01:39:28
[2026-06-22 01:39:28,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:39:29,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:39:29,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:39:29,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:39:29,372.372 INFO    ] time= 22/06/2026 01:39:29
[2026-06-22 01:39:29,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:39:29,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:39:29,520.520 INFO    ] No existing commands found in stream
[2026-06-22 01:39:34,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:39:34,534.534 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-22 01:39:35,180.180 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:39:35,182.182 INFO    ] Checking for system updates...
[2026-06-22 01:39:35,203.203 INFO    ] 200
[2026-06-22 01:39:35,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:39:35,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:39:35,240.240 INFO    ] No update needed
[2026-06-22 01:39:35,241.241 INFO    ] Checking for camera pi updates...
[2026-06-22 01:39:35,260.260 INFO    ] 200
[2026-06-22 01:39:35,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:39:35,292.292 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:39:35,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:39:35,387.387 INFO    ] No camera update needed
[2026-06-22 01:39:35,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:39:35,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:39:35,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:39:35,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:39:37,447.447 INFO    ] ================================================
[2026-06-22 01:39:37,463.463 INFO    ] Launching Daemon at Mon Jun 22 01:39:37 IST 2026
[2026-06-22 01:39:37,474.474 INFO    ] ================================================
[2026-06-22 01:39:38,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:39:38
[2026-06-22 01:39:38,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:39:38,868.868 INFO    ] Initializing speech engine...
[2026-06-22 01:39:38,873.873 INFO    ] 2026-06-22 01:39:38
[2026-06-22 01:39:39,138.138 INFO    ] 2026-06-22 01:39:39
[2026-06-22 01:39:39,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:39:39,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:39:39,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:39:39,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:39:39,593.593 INFO    ] time= 22/06/2026 01:39:39
[2026-06-22 01:39:39,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:39:39,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:39:39,743.743 INFO    ] No existing commands found in stream
[2026-06-22 01:39:44,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:39:44,758.758 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-22 01:39:46,325.325 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:39:46,328.328 INFO    ] Checking for system updates...
[2026-06-22 01:39:46,364.364 INFO    ] 200
[2026-06-22 01:39:46,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:39:46,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:39:46,430.430 INFO    ] No update needed
[2026-06-22 01:39:46,432.432 INFO    ] Checking for camera pi updates...
[2026-06-22 01:39:46,470.470 INFO    ] 200
[2026-06-22 01:39:46,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:39:46,514.514 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:39:46,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:39:46,610.610 INFO    ] No camera update needed
[2026-06-22 01:39:46,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:39:46,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:39:46,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:39:46,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:39:48,667.667 INFO    ] ================================================
[2026-06-22 01:39:48,683.683 INFO    ] Launching Daemon at Mon Jun 22 01:39:48 IST 2026
[2026-06-22 01:39:48,695.695 INFO    ] ================================================
[2026-06-22 01:39:49,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:39:49
[2026-06-22 01:39:49,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:39:50,271.271 INFO    ] Initializing speech engine...
[2026-06-22 01:39:50,285.285 INFO    ] 2026-06-22 01:39:50
[2026-06-22 01:39:50,574.574 INFO    ] 2026-06-22 01:39:50
[2026-06-22 01:39:50,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:39:50,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:39:50,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:39:51,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:39:51,106.106 INFO    ] time= 22/06/2026 01:39:51
[2026-06-22 01:39:51,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:39:51,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:39:51,261.261 INFO    ] No existing commands found in stream
[2026-06-22 01:39:56,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:39:56,286.286 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-22 01:39:56,771.771 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:39:56,774.774 INFO    ] Checking for system updates...
[2026-06-22 01:39:56,812.812 INFO    ] 200
[2026-06-22 01:39:56,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:39:56,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:39:56,880.880 INFO    ] No update needed
[2026-06-22 01:39:56,883.883 INFO    ] Checking for camera pi updates...
[2026-06-22 01:39:56,922.922 INFO    ] 200
[2026-06-22 01:39:56,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:39:56,967.967 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:39:57,049.049 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:39:57,052.052 INFO    ] No camera update needed
[2026-06-22 01:39:57,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:39:57,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:39:57,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:39:57,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:39:59,115.115 INFO    ] ================================================
[2026-06-22 01:39:59,132.132 INFO    ] Launching Daemon at Mon Jun 22 01:39:59 IST 2026
[2026-06-22 01:39:59,144.144 INFO    ] ================================================
[2026-06-22 01:39:59,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:39:59
[2026-06-22 01:40:00,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:40:00,645.645 INFO    ] Initializing speech engine...
[2026-06-22 01:40:00,657.657 INFO    ] 2026-06-22 01:40:00
[2026-06-22 01:40:00,945.945 INFO    ] 2026-06-22 01:40:00
[2026-06-22 01:40:01,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:40:01,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:40:01,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:40:01,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:40:01,477.477 INFO    ] time= 22/06/2026 01:40:01
[2026-06-22 01:40:01,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:40:01,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:40:01,623.623 INFO    ] No existing commands found in stream
[2026-06-22 01:40:06,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:40:06,648.648 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-22 01:40:08,661.661 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:40:08,663.663 INFO    ] Checking for system updates...
[2026-06-22 01:40:08,692.692 INFO    ] 200
[2026-06-22 01:40:08,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:40:08,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:40:08,753.753 INFO    ] No update needed
[2026-06-22 01:40:08,756.756 INFO    ] Checking for camera pi updates...
[2026-06-22 01:40:08,791.791 INFO    ] 200
[2026-06-22 01:40:08,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:40:08,842.842 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:40:08,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:40:08,929.929 INFO    ] No camera update needed
[2026-06-22 01:40:08,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:40:08,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:40:08,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:40:08,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:40:10,989.989 INFO    ] ================================================
[2026-06-22 01:40:11,006.006 INFO    ] Launching Daemon at Mon Jun 22 01:40:11 IST 2026
[2026-06-22 01:40:11,016.016 INFO    ] ================================================
[2026-06-22 01:40:11,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:40:11
[2026-06-22 01:40:12,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:40:12,340.340 INFO    ] Initializing speech engine...
[2026-06-22 01:40:12,353.353 INFO    ] 2026-06-22 01:40:12
[2026-06-22 01:40:12,620.620 INFO    ] 2026-06-22 01:40:12
[2026-06-22 01:40:12,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:40:12,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:40:12,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:40:12,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:40:12,995.995 INFO    ] time= 22/06/2026 01:40:12
[2026-06-22 01:40:13,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:40:13,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:40:13,153.153 INFO    ] No existing commands found in stream
[2026-06-22 01:40:18,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:40:18,186.186 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-22 01:40:20,205.205 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:40:20,207.207 INFO    ] Checking for system updates...
[2026-06-22 01:40:20,244.244 INFO    ] 200
[2026-06-22 01:40:20,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:40:20,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:40:20,303.303 INFO    ] No update needed
[2026-06-22 01:40:20,305.305 INFO    ] Checking for camera pi updates...
[2026-06-22 01:40:20,339.339 INFO    ] 200
[2026-06-22 01:40:20,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:40:20,383.383 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:40:20,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:40:20,458.458 INFO    ] No camera update needed
[2026-06-22 01:40:20,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:40:20,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:40:20,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:40:20,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:40:22,516.516 INFO    ] ================================================
[2026-06-22 01:40:22,532.532 INFO    ] Launching Daemon at Mon Jun 22 01:40:22 IST 2026
[2026-06-22 01:40:22,544.544 INFO    ] ================================================
[2026-06-22 01:40:23,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:40:23
[2026-06-22 01:40:23,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:40:24,120.120 INFO    ] Initializing speech engine...
[2026-06-22 01:40:24,129.129 INFO    ] 2026-06-22 01:40:24
[2026-06-22 01:40:24,419.419 INFO    ] 2026-06-22 01:40:24
[2026-06-22 01:40:24,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:40:24,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:40:24,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:40:24,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:40:24,882.882 INFO    ] time= 22/06/2026 01:40:24
[2026-06-22 01:40:24,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:40:24,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:40:25,036.036 INFO    ] No existing commands found in stream
[2026-06-22 01:40:30,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:40:30,052.052 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-22 01:40:33,859.859 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:40:33,862.862 INFO    ] Checking for system updates...
[2026-06-22 01:40:33,899.899 INFO    ] 200
[2026-06-22 01:40:33,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:40:33,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:40:33,959.959 INFO    ] No update needed
[2026-06-22 01:40:33,962.962 INFO    ] Checking for camera pi updates...
[2026-06-22 01:40:34,000.000 INFO    ] 200
[2026-06-22 01:40:34,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:40:34,043.043 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:40:34,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:40:34,153.153 INFO    ] No camera update needed
[2026-06-22 01:40:34,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:40:34,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:40:34,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:40:34,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:40:36,209.209 INFO    ] ================================================
[2026-06-22 01:40:36,225.225 INFO    ] Launching Daemon at Mon Jun 22 01:40:36 IST 2026
[2026-06-22 01:40:36,236.236 INFO    ] ================================================
[2026-06-22 01:40:36,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:40:36
[2026-06-22 01:40:37,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:40:37,627.627 INFO    ] Initializing speech engine...
[2026-06-22 01:40:37,635.635 INFO    ] 2026-06-22 01:40:37
[2026-06-22 01:40:37,898.898 INFO    ] 2026-06-22 01:40:37
[2026-06-22 01:40:37,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:40:38,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:40:38,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:40:38,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:40:38,338.338 INFO    ] time= 22/06/2026 01:40:38
[2026-06-22 01:40:38,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:40:38,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:40:38,502.502 INFO    ] No existing commands found in stream
[2026-06-22 01:40:43,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:40:43,518.518 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-22 01:40:46,288.288 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:40:46,291.291 INFO    ] Checking for system updates...
[2026-06-22 01:40:46,328.328 INFO    ] 200
[2026-06-22 01:40:46,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:40:46,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:40:46,395.395 INFO    ] No update needed
[2026-06-22 01:40:46,397.397 INFO    ] Checking for camera pi updates...
[2026-06-22 01:40:46,431.431 INFO    ] 200
[2026-06-22 01:40:46,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:40:46,475.475 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:40:46,569.569 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:40:46,572.572 INFO    ] No camera update needed
[2026-06-22 01:40:46,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:40:46,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:40:46,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:40:46,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:40:48,629.629 INFO    ] ================================================
[2026-06-22 01:40:48,645.645 INFO    ] Launching Daemon at Mon Jun 22 01:40:48 IST 2026
[2026-06-22 01:40:48,656.656 INFO    ] ================================================
[2026-06-22 01:40:49,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:40:49
[2026-06-22 01:40:49,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:40:49,978.978 INFO    ] Initializing speech engine...
[2026-06-22 01:40:50,001.001 INFO    ] 2026-06-22 01:40:49
[2026-06-22 01:40:50,257.257 INFO    ] 2026-06-22 01:40:50
[2026-06-22 01:40:50,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:40:50,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:40:50,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:40:50,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:40:50,636.636 INFO    ] time= 22/06/2026 01:40:50
[2026-06-22 01:40:50,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:40:50,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:40:50,797.797 INFO    ] No existing commands found in stream
[2026-06-22 01:40:55,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:40:55,830.830 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-22 01:40:57,629.629 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:40:57,631.631 INFO    ] Checking for system updates...
[2026-06-22 01:40:57,672.672 INFO    ] 200
[2026-06-22 01:40:57,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:40:57,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:40:57,731.731 INFO    ] No update needed
[2026-06-22 01:40:57,733.733 INFO    ] Checking for camera pi updates...
[2026-06-22 01:40:57,767.767 INFO    ] 200
[2026-06-22 01:40:57,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:40:57,810.810 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:40:57,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:40:57,906.906 INFO    ] No camera update needed
[2026-06-22 01:40:57,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:40:57,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:40:57,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:40:57,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:40:59,963.963 INFO    ] ================================================
[2026-06-22 01:40:59,978.978 INFO    ] Launching Daemon at Mon Jun 22 01:40:59 IST 2026
[2026-06-22 01:40:59,989.989 INFO    ] ================================================
[2026-06-22 01:41:00,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:41:00
[2026-06-22 01:41:01,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:41:01,731.731 INFO    ] Initializing speech engine...
[2026-06-22 01:41:01,741.741 INFO    ] 2026-06-22 01:41:01
[2026-06-22 01:41:02,018.018 INFO    ] 2026-06-22 01:41:02
[2026-06-22 01:41:02,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:41:02,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:41:02,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:41:02,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:41:02,432.432 INFO    ] time= 22/06/2026 01:41:02
[2026-06-22 01:41:02,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:41:02,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:41:02,643.643 INFO    ] No existing commands found in stream
[2026-06-22 01:41:07,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:41:07,666.666 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-22 01:41:08,347.347 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:41:08,350.350 INFO    ] Checking for system updates...
[2026-06-22 01:41:08,387.387 INFO    ] 200
[2026-06-22 01:41:08,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:41:08,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:41:08,456.456 INFO    ] No update needed
[2026-06-22 01:41:08,459.459 INFO    ] Checking for camera pi updates...
[2026-06-22 01:41:08,495.495 INFO    ] 200
[2026-06-22 01:41:08,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:41:08,543.543 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:41:08,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:41:08,627.627 INFO    ] No camera update needed
[2026-06-22 01:41:08,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:41:08,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:41:08,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:41:08,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:41:10,683.683 INFO    ] ================================================
[2026-06-22 01:41:10,706.706 INFO    ] Launching Daemon at Mon Jun 22 01:41:10 IST 2026
[2026-06-22 01:41:10,717.717 INFO    ] ================================================
[2026-06-22 01:41:11,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:41:11
[2026-06-22 01:41:11,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:41:12,163.163 INFO    ] Initializing speech engine...
[2026-06-22 01:41:12,185.185 INFO    ] 2026-06-22 01:41:12
[2026-06-22 01:41:12,443.443 INFO    ] 2026-06-22 01:41:12
[2026-06-22 01:41:12,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:41:12,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:41:12,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:41:12,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:41:12,916.916 INFO    ] time= 22/06/2026 01:41:12
[2026-06-22 01:41:12,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:41:13,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:41:13,061.061 INFO    ] No existing commands found in stream
[2026-06-22 01:41:18,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:41:18,076.076 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-22 01:41:21,090.090 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:41:21,092.092 INFO    ] Checking for system updates...
[2026-06-22 01:41:21,112.112 INFO    ] 200
[2026-06-22 01:41:21,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:41:21,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:41:21,159.159 INFO    ] No update needed
[2026-06-22 01:41:21,161.161 INFO    ] Checking for camera pi updates...
[2026-06-22 01:41:21,195.195 INFO    ] 200
[2026-06-22 01:41:21,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:41:21,242.242 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:41:21,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:41:21,310.310 INFO    ] No camera update needed
[2026-06-22 01:41:21,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:41:21,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:41:21,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:41:21,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:41:23,365.365 INFO    ] ================================================
[2026-06-22 01:41:23,381.381 INFO    ] Launching Daemon at Mon Jun 22 01:41:23 IST 2026
[2026-06-22 01:41:23,391.391 INFO    ] ================================================
[2026-06-22 01:41:23,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:41:23
[2026-06-22 01:41:24,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:41:24,724.724 INFO    ] Initializing speech engine...
[2026-06-22 01:41:24,749.749 INFO    ] 2026-06-22 01:41:24
[2026-06-22 01:41:25,018.018 INFO    ] 2026-06-22 01:41:24
[2026-06-22 01:41:25,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:41:25,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:41:25,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:41:25,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:41:25,420.420 INFO    ] time= 22/06/2026 01:41:25
[2026-06-22 01:41:25,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:41:25,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:41:25,549.549 INFO    ] No existing commands found in stream
[2026-06-22 01:41:30,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:41:30,582.582 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-22 01:41:34,407.407 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:41:34,410.410 INFO    ] Checking for system updates...
[2026-06-22 01:41:34,446.446 INFO    ] 200
[2026-06-22 01:41:34,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:41:34,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:41:34,506.506 INFO    ] No update needed
[2026-06-22 01:41:34,508.508 INFO    ] Checking for camera pi updates...
[2026-06-22 01:41:34,542.542 INFO    ] 200
[2026-06-22 01:41:34,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:41:34,588.588 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:41:34,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:41:34,650.650 INFO    ] No camera update needed
[2026-06-22 01:41:34,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:41:34,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:41:34,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:41:34,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:41:36,699.699 INFO    ] ================================================
[2026-06-22 01:41:36,715.715 INFO    ] Launching Daemon at Mon Jun 22 01:41:36 IST 2026
[2026-06-22 01:41:36,725.725 INFO    ] ================================================
[2026-06-22 01:41:37,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:41:37
[2026-06-22 01:41:37,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:41:38,243.243 INFO    ] Initializing speech engine...
[2026-06-22 01:41:38,251.251 INFO    ] 2026-06-22 01:41:38
[2026-06-22 01:41:38,518.518 INFO    ] 2026-06-22 01:41:38
[2026-06-22 01:41:38,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:41:38,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:41:38,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:41:38,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:41:39,000.000 INFO    ] time= 22/06/2026 01:41:38
[2026-06-22 01:41:39,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:41:39,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:41:39,146.146 INFO    ] No existing commands found in stream
[2026-06-22 01:41:44,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:41:44,161.161 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-22 01:41:45,852.852 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:41:45,855.855 INFO    ] Checking for system updates...
[2026-06-22 01:41:45,900.900 INFO    ] 200
[2026-06-22 01:41:45,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:41:45,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:41:45,960.960 INFO    ] No update needed
[2026-06-22 01:41:45,963.963 INFO    ] Checking for camera pi updates...
[2026-06-22 01:41:45,999.999 INFO    ] 200
[2026-06-22 01:41:46,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:41:46,052.052 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:41:46,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:41:46,138.138 INFO    ] No camera update needed
[2026-06-22 01:41:46,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:41:46,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:41:46,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:41:46,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:41:48,197.197 INFO    ] ================================================
[2026-06-22 01:41:48,212.212 INFO    ] Launching Daemon at Mon Jun 22 01:41:48 IST 2026
[2026-06-22 01:41:48,223.223 INFO    ] ================================================
[2026-06-22 01:41:48,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:41:48
[2026-06-22 01:41:49,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:41:49,640.640 INFO    ] Initializing speech engine...
[2026-06-22 01:41:49,649.649 INFO    ] 2026-06-22 01:41:49
[2026-06-22 01:41:49,898.898 INFO    ] 2026-06-22 01:41:49
[2026-06-22 01:41:49,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:41:50,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:41:50,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:41:50,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:41:50,275.275 INFO    ] time= 22/06/2026 01:41:50
[2026-06-22 01:41:50,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:41:50,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:41:50,440.440 INFO    ] No existing commands found in stream
[2026-06-22 01:41:55,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:41:55,468.468 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-22 01:41:56,349.349 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:41:56,352.352 INFO    ] Checking for system updates...
[2026-06-22 01:41:56,389.389 INFO    ] 200
[2026-06-22 01:41:56,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:41:56,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:41:56,449.449 INFO    ] No update needed
[2026-06-22 01:41:56,452.452 INFO    ] Checking for camera pi updates...
[2026-06-22 01:41:56,486.486 INFO    ] 200
[2026-06-22 01:41:56,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:41:56,533.533 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:41:56,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:41:56,592.592 INFO    ] No camera update needed
[2026-06-22 01:41:56,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:41:56,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:41:56,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:41:56,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:41:58,648.648 INFO    ] ================================================
[2026-06-22 01:41:58,664.664 INFO    ] Launching Daemon at Mon Jun 22 01:41:58 IST 2026
[2026-06-22 01:41:58,675.675 INFO    ] ================================================
[2026-06-22 01:41:59,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:41:59
[2026-06-22 01:41:59,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:42:00,136.136 INFO    ] Initializing speech engine...
[2026-06-22 01:42:00,150.150 INFO    ] 2026-06-22 01:42:00
[2026-06-22 01:42:00,426.426 INFO    ] 2026-06-22 01:42:00
[2026-06-22 01:42:00,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:42:00,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:42:00,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:42:00,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:42:00,890.890 INFO    ] time= 22/06/2026 01:42:00
[2026-06-22 01:42:00,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:42:00,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:42:01,033.033 INFO    ] No existing commands found in stream
[2026-06-22 01:42:06,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:42:06,049.049 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-22 01:42:08,632.632 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:42:08,634.634 INFO    ] Checking for system updates...
[2026-06-22 01:42:08,656.656 INFO    ] 200
[2026-06-22 01:42:08,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:42:08,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:42:08,715.715 INFO    ] No update needed
[2026-06-22 01:42:08,717.717 INFO    ] Checking for camera pi updates...
[2026-06-22 01:42:08,752.752 INFO    ] 200
[2026-06-22 01:42:08,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:42:08,797.797 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:42:08,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:42:08,884.884 INFO    ] No camera update needed
[2026-06-22 01:42:08,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:42:08,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:42:08,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:42:08,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:42:10,942.942 INFO    ] ================================================
[2026-06-22 01:42:10,958.958 INFO    ] Launching Daemon at Mon Jun 22 01:42:10 IST 2026
[2026-06-22 01:42:10,968.968 INFO    ] ================================================
[2026-06-22 01:42:11,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:42:11
[2026-06-22 01:42:12,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:42:12,506.506 INFO    ] Initializing speech engine...
[2026-06-22 01:42:12,522.522 INFO    ] 2026-06-22 01:42:12
[2026-06-22 01:42:12,803.803 INFO    ] 2026-06-22 01:42:12
[2026-06-22 01:42:12,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:42:13,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:42:13,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:42:13,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:42:13,183.183 INFO    ] time= 22/06/2026 01:42:13
[2026-06-22 01:42:13,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:42:13,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:42:13,305.305 INFO    ] No existing commands found in stream
[2026-06-22 01:42:18,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:42:18,320.320 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-22 01:42:20,383.383 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:42:20,385.385 INFO    ] Checking for system updates...
[2026-06-22 01:42:20,422.422 INFO    ] 200
[2026-06-22 01:42:20,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:42:20,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:42:20,479.479 INFO    ] No update needed
[2026-06-22 01:42:20,482.482 INFO    ] Checking for camera pi updates...
[2026-06-22 01:42:20,519.519 INFO    ] 200
[2026-06-22 01:42:20,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:42:20,565.565 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:42:20,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:42:20,656.656 INFO    ] No camera update needed
[2026-06-22 01:42:20,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:42:20,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:42:20,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:42:20,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:42:22,716.716 INFO    ] ================================================
[2026-06-22 01:42:22,733.733 INFO    ] Launching Daemon at Mon Jun 22 01:42:22 IST 2026
[2026-06-22 01:42:22,744.744 INFO    ] ================================================
[2026-06-22 01:42:23,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:42:23
[2026-06-22 01:42:23,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:42:24,185.185 INFO    ] Initializing speech engine...
[2026-06-22 01:42:24,193.193 INFO    ] 2026-06-22 01:42:24
[2026-06-22 01:42:24,450.450 INFO    ] 2026-06-22 01:42:24
[2026-06-22 01:42:24,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:42:24,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:42:24,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:42:24,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:42:24,947.947 INFO    ] time= 22/06/2026 01:42:24
[2026-06-22 01:42:25,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:42:25,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:42:25,100.100 INFO    ] No existing commands found in stream
[2026-06-22 01:42:30,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:42:30,116.116 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-22 01:42:31,199.199 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:42:31,200.200 INFO    ] Checking for system updates...
[2026-06-22 01:42:31,222.222 INFO    ] 200
[2026-06-22 01:42:31,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:42:31,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:42:31,256.256 INFO    ] No update needed
[2026-06-22 01:42:31,257.257 INFO    ] Checking for camera pi updates...
[2026-06-22 01:42:31,294.294 INFO    ] 200
[2026-06-22 01:42:31,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:42:31,346.346 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:42:31,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:42:31,411.411 INFO    ] No camera update needed
[2026-06-22 01:42:31,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:42:31,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:42:31,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:42:31,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:42:33,470.470 INFO    ] ================================================
[2026-06-22 01:42:33,485.485 INFO    ] Launching Daemon at Mon Jun 22 01:42:33 IST 2026
[2026-06-22 01:42:33,496.496 INFO    ] ================================================
[2026-06-22 01:42:34,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:42:34
[2026-06-22 01:42:34,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:42:34,924.924 INFO    ] Initializing speech engine...
[2026-06-22 01:42:34,932.932 INFO    ] 2026-06-22 01:42:34
[2026-06-22 01:42:35,150.150 INFO    ] 2026-06-22 01:42:35
[2026-06-22 01:42:35,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:42:35,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:42:35,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:42:35,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:42:35,509.509 INFO    ] time= 22/06/2026 01:42:35
[2026-06-22 01:42:35,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:42:35,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:42:35,581.581 INFO    ] No existing commands found in stream
[2026-06-22 01:42:40,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:42:40,594.594 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-22 01:42:44,235.235 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:42:44,238.238 INFO    ] Checking for system updates...
[2026-06-22 01:42:44,275.275 INFO    ] 200
[2026-06-22 01:42:44,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:42:44,329.329 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:42:44,332.332 INFO    ] No update needed
[2026-06-22 01:42:44,334.334 INFO    ] Checking for camera pi updates...
[2026-06-22 01:42:44,369.369 INFO    ] 200
[2026-06-22 01:42:44,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:42:44,411.411 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:42:44,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:42:44,501.501 INFO    ] No camera update needed
[2026-06-22 01:42:44,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:42:44,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:42:44,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:42:44,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:42:46,557.557 INFO    ] ================================================
[2026-06-22 01:42:46,572.572 INFO    ] Launching Daemon at Mon Jun 22 01:42:46 IST 2026
[2026-06-22 01:42:46,583.583 INFO    ] ================================================
[2026-06-22 01:42:47,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:42:47
[2026-06-22 01:42:47,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:42:48,070.070 INFO    ] Initializing speech engine...
[2026-06-22 01:42:48,077.077 INFO    ] 2026-06-22 01:42:48
[2026-06-22 01:42:48,348.348 INFO    ] 2026-06-22 01:42:48
[2026-06-22 01:42:48,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:42:48,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:42:48,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:42:48,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:42:48,797.797 INFO    ] time= 22/06/2026 01:42:48
[2026-06-22 01:42:48,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:42:48,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:42:48,963.963 INFO    ] No existing commands found in stream
[2026-06-22 01:42:53,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:42:53,980.980 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-22 01:42:56,122.122 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:42:56,123.123 INFO    ] Checking for system updates...
[2026-06-22 01:42:56,144.144 INFO    ] 200
[2026-06-22 01:42:56,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:42:56,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:42:56,177.177 INFO    ] No update needed
[2026-06-22 01:42:56,178.178 INFO    ] Checking for camera pi updates...
[2026-06-22 01:42:56,210.210 INFO    ] 200
[2026-06-22 01:42:56,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:42:56,253.253 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:42:56,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:42:56,344.344 INFO    ] No camera update needed
[2026-06-22 01:42:56,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:42:56,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:42:56,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:42:56,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:42:58,400.400 INFO    ] ================================================
[2026-06-22 01:42:58,415.415 INFO    ] Launching Daemon at Mon Jun 22 01:42:58 IST 2026
[2026-06-22 01:42:58,426.426 INFO    ] ================================================
[2026-06-22 01:42:59,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:42:59
[2026-06-22 01:42:59,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:42:59,780.780 INFO    ] Initializing speech engine...
[2026-06-22 01:42:59,796.796 INFO    ] 2026-06-22 01:42:59
[2026-06-22 01:43:00,077.077 INFO    ] 2026-06-22 01:43:00
[2026-06-22 01:43:00,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:43:00,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:43:00,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:43:00,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:43:00,443.443 INFO    ] time= 22/06/2026 01:43:00
[2026-06-22 01:43:00,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:43:00,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:43:00,556.556 INFO    ] No existing commands found in stream
[2026-06-22 01:43:05,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:43:05,595.595 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-22 01:43:06,530.530 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:43:06,531.531 INFO    ] Checking for system updates...
[2026-06-22 01:43:06,552.552 INFO    ] 200
[2026-06-22 01:43:06,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:43:06,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:43:06,596.596 INFO    ] No update needed
[2026-06-22 01:43:06,599.599 INFO    ] Checking for camera pi updates...
[2026-06-22 01:43:06,637.637 INFO    ] 200
[2026-06-22 01:43:06,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:43:06,681.681 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:43:06,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:43:06,772.772 INFO    ] No camera update needed
[2026-06-22 01:43:06,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:43:06,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:43:06,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:43:06,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:43:08,828.828 INFO    ] ================================================
[2026-06-22 01:43:08,843.843 INFO    ] Launching Daemon at Mon Jun 22 01:43:08 IST 2026
[2026-06-22 01:43:08,854.854 INFO    ] ================================================
[2026-06-22 01:43:09,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:43:09
[2026-06-22 01:43:09,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:43:10,203.203 INFO    ] Initializing speech engine...
[2026-06-22 01:43:10,212.212 INFO    ] 2026-06-22 01:43:10
[2026-06-22 01:43:10,508.508 INFO    ] 2026-06-22 01:43:10
[2026-06-22 01:43:10,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:43:10,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:43:10,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:43:10,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:43:10,883.883 INFO    ] time= 22/06/2026 01:43:10
[2026-06-22 01:43:10,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:43:10,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:43:11,009.009 INFO    ] No existing commands found in stream
[2026-06-22 01:43:16,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:43:16,019.019 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-22 01:43:18,137.137 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:43:18,138.138 INFO    ] Checking for system updates...
[2026-06-22 01:43:18,159.159 INFO    ] 200
[2026-06-22 01:43:18,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:43:18,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:43:18,205.205 INFO    ] No update needed
[2026-06-22 01:43:18,208.208 INFO    ] Checking for camera pi updates...
[2026-06-22 01:43:18,243.243 INFO    ] 200
[2026-06-22 01:43:18,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:43:18,293.293 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:43:18,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:43:18,402.402 INFO    ] No camera update needed
[2026-06-22 01:43:18,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:43:18,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:43:18,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:43:18,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:43:20,460.460 INFO    ] ================================================
[2026-06-22 01:43:20,475.475 INFO    ] Launching Daemon at Mon Jun 22 01:43:20 IST 2026
[2026-06-22 01:43:20,486.486 INFO    ] ================================================
[2026-06-22 01:43:21,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:43:21
[2026-06-22 01:43:21,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:43:21,807.807 INFO    ] Initializing speech engine...
[2026-06-22 01:43:21,813.813 INFO    ] 2026-06-22 01:43:21
[2026-06-22 01:43:22,111.111 INFO    ] 2026-06-22 01:43:22
[2026-06-22 01:43:22,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:43:22,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:43:22,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:43:22,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:43:22,487.487 INFO    ] time= 22/06/2026 01:43:22
[2026-06-22 01:43:22,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:43:22,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:43:22,610.610 INFO    ] No existing commands found in stream
[2026-06-22 01:43:27,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:43:27,625.625 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-22 01:43:28,561.561 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:43:28,564.564 INFO    ] Checking for system updates...
[2026-06-22 01:43:28,601.601 INFO    ] 200
[2026-06-22 01:43:28,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:43:28,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:43:28,658.658 INFO    ] No update needed
[2026-06-22 01:43:28,660.660 INFO    ] Checking for camera pi updates...
[2026-06-22 01:43:28,694.694 INFO    ] 200
[2026-06-22 01:43:28,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:43:28,738.738 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:43:28,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:43:28,833.833 INFO    ] No camera update needed
[2026-06-22 01:43:28,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:43:28,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:43:28,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:43:28,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:43:30,888.888 INFO    ] ================================================
[2026-06-22 01:43:30,903.903 INFO    ] Launching Daemon at Mon Jun 22 01:43:30 IST 2026
[2026-06-22 01:43:30,913.913 INFO    ] ================================================
[2026-06-22 01:43:31,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:43:31
[2026-06-22 01:43:32,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:43:32,468.468 INFO    ] Initializing speech engine...
[2026-06-22 01:43:32,482.482 INFO    ] 2026-06-22 01:43:32
[2026-06-22 01:43:32,754.754 INFO    ] 2026-06-22 01:43:32
[2026-06-22 01:43:32,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:43:33,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:43:33,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:43:33,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:43:33,174.174 INFO    ] time= 22/06/2026 01:43:33
[2026-06-22 01:43:33,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:43:33,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:43:33,346.346 INFO    ] No existing commands found in stream
[2026-06-22 01:43:38,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:43:38,361.361 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-22 01:43:42,334.334 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:43:42,336.336 INFO    ] Checking for system updates...
[2026-06-22 01:43:42,358.358 INFO    ] 200
[2026-06-22 01:43:42,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:43:42,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:43:42,392.392 INFO    ] No update needed
[2026-06-22 01:43:42,394.394 INFO    ] Checking for camera pi updates...
[2026-06-22 01:43:42,428.428 INFO    ] 200
[2026-06-22 01:43:42,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:43:42,471.471 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:43:42,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:43:42,648.648 INFO    ] No camera update needed
[2026-06-22 01:43:42,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:43:42,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:43:42,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:43:42,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:43:44,704.704 INFO    ] ================================================
[2026-06-22 01:43:44,719.719 INFO    ] Launching Daemon at Mon Jun 22 01:43:44 IST 2026
[2026-06-22 01:43:44,730.730 INFO    ] ================================================
[2026-06-22 01:43:45,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:43:45
[2026-06-22 01:43:45,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:43:46,243.243 INFO    ] Initializing speech engine...
[2026-06-22 01:43:46,250.250 INFO    ] 2026-06-22 01:43:46
[2026-06-22 01:43:46,556.556 INFO    ] 2026-06-22 01:43:46
[2026-06-22 01:43:46,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:43:46,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:43:46,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:43:46,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:43:47,033.033 INFO    ] time= 22/06/2026 01:43:46
[2026-06-22 01:43:47,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:43:47,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:43:47,226.226 INFO    ] No existing commands found in stream
[2026-06-22 01:43:52,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:43:52,245.245 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-22 01:43:57,304.304 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:43:57,307.307 INFO    ] Checking for system updates...
[2026-06-22 01:43:57,344.344 INFO    ] 200
[2026-06-22 01:43:57,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:43:57,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:43:57,403.403 INFO    ] No update needed
[2026-06-22 01:43:57,406.406 INFO    ] Checking for camera pi updates...
[2026-06-22 01:43:57,433.433 INFO    ] 200
[2026-06-22 01:43:57,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:43:57,459.459 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:43:57,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:43:57,540.540 INFO    ] No camera update needed
[2026-06-22 01:43:57,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:43:57,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:43:57,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:43:57,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:43:59,600.600 INFO    ] ================================================
[2026-06-22 01:43:59,615.615 INFO    ] Launching Daemon at Mon Jun 22 01:43:59 IST 2026
[2026-06-22 01:43:59,628.628 INFO    ] ================================================
[2026-06-22 01:44:00,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:44:00
[2026-06-22 01:44:00,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:44:01,070.070 INFO    ] Initializing speech engine...
[2026-06-22 01:44:01,075.075 INFO    ] 2026-06-22 01:44:01
[2026-06-22 01:44:01,520.520 INFO    ] 2026-06-22 01:44:01
[2026-06-22 01:44:01,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:44:01,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:44:01,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:44:01,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:44:01,969.969 INFO    ] time= 22/06/2026 01:44:01
[2026-06-22 01:44:02,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:44:02,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:44:02,135.135 INFO    ] No existing commands found in stream
[2026-06-22 01:44:07,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:44:07,163.163 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-22 01:44:08,202.202 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:44:08,205.205 INFO    ] Checking for system updates...
[2026-06-22 01:44:08,241.241 INFO    ] 200
[2026-06-22 01:44:08,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:44:08,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:44:08,299.299 INFO    ] No update needed
[2026-06-22 01:44:08,301.301 INFO    ] Checking for camera pi updates...
[2026-06-22 01:44:08,336.336 INFO    ] 200
[2026-06-22 01:44:08,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:44:08,384.384 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:44:08,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:44:08,472.472 INFO    ] No camera update needed
[2026-06-22 01:44:08,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:44:08,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:44:08,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:44:08,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:44:10,528.528 INFO    ] ================================================
[2026-06-22 01:44:10,543.543 INFO    ] Launching Daemon at Mon Jun 22 01:44:10 IST 2026
[2026-06-22 01:44:10,554.554 INFO    ] ================================================
[2026-06-22 01:44:11,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:44:11
[2026-06-22 01:44:11,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:44:12,024.024 INFO    ] Initializing speech engine...
[2026-06-22 01:44:12,038.038 INFO    ] 2026-06-22 01:44:12
[2026-06-22 01:44:12,307.307 INFO    ] 2026-06-22 01:44:12
[2026-06-22 01:44:12,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:44:12,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:44:12,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:44:12,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:44:12,691.691 INFO    ] time= 22/06/2026 01:44:12
[2026-06-22 01:44:12,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:44:12,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:44:12,818.818 INFO    ] No existing commands found in stream
[2026-06-22 01:44:17,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:44:17,835.835 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-22 01:44:19,507.507 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:44:19,510.510 INFO    ] Checking for system updates...
[2026-06-22 01:44:19,546.546 INFO    ] 200
[2026-06-22 01:44:19,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:44:19,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:44:19,605.605 INFO    ] No update needed
[2026-06-22 01:44:19,608.608 INFO    ] Checking for camera pi updates...
[2026-06-22 01:44:19,642.642 INFO    ] 200
[2026-06-22 01:44:19,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:44:19,686.686 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:44:19,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:44:19,772.772 INFO    ] No camera update needed
[2026-06-22 01:44:19,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:44:19,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:44:19,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:44:19,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:44:21,828.828 INFO    ] ================================================
[2026-06-22 01:44:21,842.842 INFO    ] Launching Daemon at Mon Jun 22 01:44:21 IST 2026
[2026-06-22 01:44:21,853.853 INFO    ] ================================================
[2026-06-22 01:44:22,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:44:22
[2026-06-22 01:44:23,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:44:23,274.274 INFO    ] Initializing speech engine...
[2026-06-22 01:44:23,280.280 INFO    ] 2026-06-22 01:44:23
[2026-06-22 01:44:23,580.580 INFO    ] 2026-06-22 01:44:23
[2026-06-22 01:44:23,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:44:23,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:44:23,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:44:23,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:44:23,942.942 INFO    ] time= 22/06/2026 01:44:23
[2026-06-22 01:44:23,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:44:23,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:44:24,025.025 INFO    ] No existing commands found in stream
[2026-06-22 01:44:29,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:44:29,040.040 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-22 01:44:32,636.636 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:44:32,639.639 INFO    ] Checking for system updates...
[2026-06-22 01:44:32,674.674 INFO    ] 200
[2026-06-22 01:44:32,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:44:32,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:44:32,732.732 INFO    ] No update needed
[2026-06-22 01:44:32,734.734 INFO    ] Checking for camera pi updates...
[2026-06-22 01:44:32,769.769 INFO    ] 200
[2026-06-22 01:44:32,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:44:32,813.813 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:44:32,896.896 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:44:32,899.899 INFO    ] No camera update needed
[2026-06-22 01:44:32,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:44:32,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:44:32,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:44:32,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:44:34,954.954 INFO    ] ================================================
[2026-06-22 01:44:34,969.969 INFO    ] Launching Daemon at Mon Jun 22 01:44:34 IST 2026
[2026-06-22 01:44:34,980.980 INFO    ] ================================================
[2026-06-22 01:44:35,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:44:35
[2026-06-22 01:44:36,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:44:36,323.323 INFO    ] Initializing speech engine...
[2026-06-22 01:44:36,332.332 INFO    ] 2026-06-22 01:44:36
[2026-06-22 01:44:36,582.582 INFO    ] 2026-06-22 01:44:36
[2026-06-22 01:44:36,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:44:36,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:44:36,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:44:36,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:44:36,959.959 INFO    ] time= 22/06/2026 01:44:36
[2026-06-22 01:44:36,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:44:36,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:44:37,035.035 INFO    ] No existing commands found in stream
[2026-06-22 01:44:42,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:44:42,050.050 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-22 01:44:44,335.335 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:44:44,337.337 INFO    ] Checking for system updates...
[2026-06-22 01:44:44,357.357 INFO    ] 200
[2026-06-22 01:44:44,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:44:44,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:44:44,391.391 INFO    ] No update needed
[2026-06-22 01:44:44,392.392 INFO    ] Checking for camera pi updates...
[2026-06-22 01:44:44,413.413 INFO    ] 200
[2026-06-22 01:44:44,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:44:44,442.442 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:44:44,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:44:44,514.514 INFO    ] No camera update needed
[2026-06-22 01:44:44,516.516 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:44:44,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:44:44,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:44:44,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:44:46,576.576 INFO    ] ================================================
[2026-06-22 01:44:46,591.591 INFO    ] Launching Daemon at Mon Jun 22 01:44:46 IST 2026
[2026-06-22 01:44:46,602.602 INFO    ] ================================================
[2026-06-22 01:44:47,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:44:47
[2026-06-22 01:44:47,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:44:48,155.155 INFO    ] Initializing speech engine...
[2026-06-22 01:44:48,165.165 INFO    ] 2026-06-22 01:44:48
[2026-06-22 01:44:48,473.473 INFO    ] 2026-06-22 01:44:48
[2026-06-22 01:44:48,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:44:48,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:44:48,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:44:48,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:44:48,995.995 INFO    ] time= 22/06/2026 01:44:48
[2026-06-22 01:44:49,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:44:49,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:44:49,149.149 INFO    ] No existing commands found in stream
[2026-06-22 01:44:54,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:44:54,171.171 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-22 01:44:54,916.916 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:44:54,918.918 INFO    ] Checking for system updates...
[2026-06-22 01:44:54,942.942 INFO    ] 200
[2026-06-22 01:44:54,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:44:54,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:44:54,978.978 INFO    ] No update needed
[2026-06-22 01:44:54,980.980 INFO    ] Checking for camera pi updates...
[2026-06-22 01:44:54,999.999 INFO    ] 200
[2026-06-22 01:44:55,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:44:55,024.024 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:44:55,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:44:55,125.125 INFO    ] No camera update needed
[2026-06-22 01:44:55,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:44:55,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:44:55,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:44:55,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:44:57,187.187 INFO    ] ================================================
[2026-06-22 01:44:57,201.201 INFO    ] Launching Daemon at Mon Jun 22 01:44:57 IST 2026
[2026-06-22 01:44:57,212.212 INFO    ] ================================================
[2026-06-22 01:44:57,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:44:57
[2026-06-22 01:44:58,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:44:58,556.556 INFO    ] Initializing speech engine...
[2026-06-22 01:44:58,565.565 INFO    ] 2026-06-22 01:44:58
[2026-06-22 01:44:58,817.817 INFO    ] 2026-06-22 01:44:58
[2026-06-22 01:44:58,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:44:59,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:44:59,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:44:59,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:44:59,195.195 INFO    ] time= 22/06/2026 01:44:59
[2026-06-22 01:44:59,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:44:59,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:44:59,351.351 INFO    ] No existing commands found in stream
[2026-06-22 01:45:04,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:45:04,384.384 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-22 01:45:07,317.317 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:45:07,320.320 INFO    ] Checking for system updates...
[2026-06-22 01:45:07,357.357 INFO    ] 200
[2026-06-22 01:45:07,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:45:07,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:45:07,417.417 INFO    ] No update needed
[2026-06-22 01:45:07,419.419 INFO    ] Checking for camera pi updates...
[2026-06-22 01:45:07,454.454 INFO    ] 200
[2026-06-22 01:45:07,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:45:07,497.497 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:45:07,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:45:07,579.579 INFO    ] No camera update needed
[2026-06-22 01:45:07,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:45:07,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:45:07,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:45:07,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:45:09,636.636 INFO    ] ================================================
[2026-06-22 01:45:09,652.652 INFO    ] Launching Daemon at Mon Jun 22 01:45:09 IST 2026
[2026-06-22 01:45:09,663.663 INFO    ] ================================================
[2026-06-22 01:45:10,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:45:10
[2026-06-22 01:45:10,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:45:10,988.988 INFO    ] Initializing speech engine...
[2026-06-22 01:45:10,995.995 INFO    ] 2026-06-22 01:45:10
[2026-06-22 01:45:11,299.299 INFO    ] 2026-06-22 01:45:11
[2026-06-22 01:45:11,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:45:11,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:45:11,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:45:11,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:45:11,662.662 INFO    ] time= 22/06/2026 01:45:11
[2026-06-22 01:45:11,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:45:11,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:45:11,744.744 INFO    ] No existing commands found in stream
[2026-06-22 01:45:16,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:45:16,758.758 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-22 01:45:17,583.583 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:45:17,585.585 INFO    ] Checking for system updates...
[2026-06-22 01:45:17,627.627 INFO    ] 200
[2026-06-22 01:45:17,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:45:17,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:45:17,685.685 INFO    ] No update needed
[2026-06-22 01:45:17,687.687 INFO    ] Checking for camera pi updates...
[2026-06-22 01:45:17,721.721 INFO    ] 200
[2026-06-22 01:45:17,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:45:17,764.764 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:45:17,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:45:17,859.859 INFO    ] No camera update needed
[2026-06-22 01:45:17,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:45:17,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:45:17,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:45:17,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:45:19,914.914 INFO    ] ================================================
[2026-06-22 01:45:19,930.930 INFO    ] Launching Daemon at Mon Jun 22 01:45:19 IST 2026
[2026-06-22 01:45:19,941.941 INFO    ] ================================================
[2026-06-22 01:45:20,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:45:20
[2026-06-22 01:45:21,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:45:21,537.537 INFO    ] Initializing speech engine...
[2026-06-22 01:45:21,548.548 INFO    ] 2026-06-22 01:45:21
[2026-06-22 01:45:21,862.862 INFO    ] 2026-06-22 01:45:21
[2026-06-22 01:45:21,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:45:22,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:45:22,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:45:22,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:45:22,377.377 INFO    ] time= 22/06/2026 01:45:22
[2026-06-22 01:45:22,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:45:22,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:45:22,525.525 INFO    ] No existing commands found in stream
[2026-06-22 01:45:27,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:45:27,557.557 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-22 01:45:30,783.783 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:45:30,785.785 INFO    ] Checking for system updates...
[2026-06-22 01:45:30,806.806 INFO    ] 200
[2026-06-22 01:45:30,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:45:30,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:45:30,843.843 INFO    ] No update needed
[2026-06-22 01:45:30,845.845 INFO    ] Checking for camera pi updates...
[2026-06-22 01:45:30,882.882 INFO    ] 200
[2026-06-22 01:45:30,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:45:30,928.928 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:45:31,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:45:31,014.014 INFO    ] No camera update needed
[2026-06-22 01:45:31,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:45:31,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:45:31,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:45:31,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:45:33,078.078 INFO    ] ================================================
[2026-06-22 01:45:33,095.095 INFO    ] Launching Daemon at Mon Jun 22 01:45:33 IST 2026
[2026-06-22 01:45:33,106.106 INFO    ] ================================================
[2026-06-22 01:45:33,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:45:33
[2026-06-22 01:45:34,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:45:34,595.595 INFO    ] Initializing speech engine...
[2026-06-22 01:45:34,606.606 INFO    ] 2026-06-22 01:45:34
[2026-06-22 01:45:34,911.911 INFO    ] 2026-06-22 01:45:34
[2026-06-22 01:45:34,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:45:35,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:45:35,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:45:35,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:45:35,306.306 INFO    ] time= 22/06/2026 01:45:35
[2026-06-22 01:45:35,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:45:35,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:45:35,434.434 INFO    ] No existing commands found in stream
[2026-06-22 01:45:40,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:45:40,449.449 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-22 01:45:42,713.713 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:45:42,715.715 INFO    ] Checking for system updates...
[2026-06-22 01:45:42,736.736 INFO    ] 200
[2026-06-22 01:45:42,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:45:42,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:45:42,780.780 INFO    ] No update needed
[2026-06-22 01:45:42,782.782 INFO    ] Checking for camera pi updates...
[2026-06-22 01:45:42,820.820 INFO    ] 200
[2026-06-22 01:45:42,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:45:42,873.873 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:45:42,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:45:42,986.986 INFO    ] No camera update needed
[2026-06-22 01:45:42,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:45:42,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:45:42,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:45:43,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:45:45,043.043 INFO    ] ================================================
[2026-06-22 01:45:45,059.059 INFO    ] Launching Daemon at Mon Jun 22 01:45:45 IST 2026
[2026-06-22 01:45:45,070.070 INFO    ] ================================================
[2026-06-22 01:45:45,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:45:45
[2026-06-22 01:45:46,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:45:46,393.393 INFO    ] Initializing speech engine...
[2026-06-22 01:45:46,401.401 INFO    ] 2026-06-22 01:45:46
[2026-06-22 01:45:46,677.677 INFO    ] 2026-06-22 01:45:46
[2026-06-22 01:45:46,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:45:46,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:45:46,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:45:47,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:45:47,056.056 INFO    ] time= 22/06/2026 01:45:47
[2026-06-22 01:45:47,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:45:47,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:45:47,133.133 INFO    ] No existing commands found in stream
[2026-06-22 01:45:52,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:45:52,148.148 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-22 01:45:55,218.218 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:45:55,220.220 INFO    ] Checking for system updates...
[2026-06-22 01:45:55,256.256 INFO    ] 200
[2026-06-22 01:45:55,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:45:55,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:45:55,314.314 INFO    ] No update needed
[2026-06-22 01:45:55,317.317 INFO    ] Checking for camera pi updates...
[2026-06-22 01:45:55,350.350 INFO    ] 200
[2026-06-22 01:45:55,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:45:55,394.394 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:45:55,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:45:55,577.577 INFO    ] No camera update needed
[2026-06-22 01:45:55,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:45:55,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:45:55,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:45:55,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:45:57,632.632 INFO    ] ================================================
[2026-06-22 01:45:57,648.648 INFO    ] Launching Daemon at Mon Jun 22 01:45:57 IST 2026
[2026-06-22 01:45:57,659.659 INFO    ] ================================================
[2026-06-22 01:45:58,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:45:58
[2026-06-22 01:45:58,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:45:59,229.229 INFO    ] Initializing speech engine...
[2026-06-22 01:45:59,243.243 INFO    ] 2026-06-22 01:45:59
[2026-06-22 01:45:59,556.556 INFO    ] 2026-06-22 01:45:59
[2026-06-22 01:45:59,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:45:59,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:45:59,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:46:00,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:46:00,072.072 INFO    ] time= 22/06/2026 01:46:00
[2026-06-22 01:46:00,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:46:00,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:46:00,228.228 INFO    ] No existing commands found in stream
[2026-06-22 01:46:05,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:46:05,244.244 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-22 01:46:08,351.351 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:46:08,354.354 INFO    ] Checking for system updates...
[2026-06-22 01:46:08,392.392 INFO    ] 200
[2026-06-22 01:46:08,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:46:08,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:46:08,453.453 INFO    ] No update needed
[2026-06-22 01:46:08,455.455 INFO    ] Checking for camera pi updates...
[2026-06-22 01:46:08,492.492 INFO    ] 200
[2026-06-22 01:46:08,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:46:08,537.537 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:46:08,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:46:08,618.618 INFO    ] No camera update needed
[2026-06-22 01:46:08,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:46:08,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:46:08,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:46:08,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:46:10,678.678 INFO    ] ================================================
[2026-06-22 01:46:10,693.693 INFO    ] Launching Daemon at Mon Jun 22 01:46:10 IST 2026
[2026-06-22 01:46:10,703.703 INFO    ] ================================================
[2026-06-22 01:46:11,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:46:11
[2026-06-22 01:46:11,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:46:12,112.112 INFO    ] Initializing speech engine...
[2026-06-22 01:46:12,121.121 INFO    ] 2026-06-22 01:46:12
[2026-06-22 01:46:12,369.369 INFO    ] 2026-06-22 01:46:12
[2026-06-22 01:46:12,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:46:12,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:46:12,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:46:12,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:46:12,840.840 INFO    ] time= 22/06/2026 01:46:12
[2026-06-22 01:46:12,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:46:12,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:46:12,988.988 INFO    ] No existing commands found in stream
[2026-06-22 01:46:18,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:46:18,003.003 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-22 01:46:19,738.738 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:46:19,740.740 INFO    ] Checking for system updates...
[2026-06-22 01:46:19,781.781 INFO    ] 200
[2026-06-22 01:46:19,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:46:19,845.845 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:46:19,848.848 INFO    ] No update needed
[2026-06-22 01:46:19,850.850 INFO    ] Checking for camera pi updates...
[2026-06-22 01:46:19,889.889 INFO    ] 200
[2026-06-22 01:46:19,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:46:19,937.937 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:46:20,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:46:20,024.024 INFO    ] No camera update needed
[2026-06-22 01:46:20,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:46:20,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:46:20,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:46:20,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:46:22,082.082 INFO    ] ================================================
[2026-06-22 01:46:22,097.097 INFO    ] Launching Daemon at Mon Jun 22 01:46:22 IST 2026
[2026-06-22 01:46:22,108.108 INFO    ] ================================================
[2026-06-22 01:46:22,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:46:22
[2026-06-22 01:46:23,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:46:23,519.519 INFO    ] Initializing speech engine...
[2026-06-22 01:46:23,542.542 INFO    ] 2026-06-22 01:46:23
[2026-06-22 01:46:23,795.795 INFO    ] 2026-06-22 01:46:23
[2026-06-22 01:46:23,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:46:24,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:46:24,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:46:24,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:46:24,241.241 INFO    ] time= 22/06/2026 01:46:24
[2026-06-22 01:46:24,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:46:24,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:46:24,410.410 INFO    ] No existing commands found in stream
[2026-06-22 01:46:29,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:46:29,424.424 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-22 01:46:33,051.051 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:46:33,053.053 INFO    ] Checking for system updates...
[2026-06-22 01:46:33,093.093 INFO    ] 200
[2026-06-22 01:46:33,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:46:33,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:46:33,159.159 INFO    ] No update needed
[2026-06-22 01:46:33,161.161 INFO    ] Checking for camera pi updates...
[2026-06-22 01:46:33,200.200 INFO    ] 200
[2026-06-22 01:46:33,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:46:33,244.244 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:46:33,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:46:33,360.360 INFO    ] No camera update needed
[2026-06-22 01:46:33,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:46:33,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:46:33,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:46:33,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:46:35,418.418 INFO    ] ================================================
[2026-06-22 01:46:35,434.434 INFO    ] Launching Daemon at Mon Jun 22 01:46:35 IST 2026
[2026-06-22 01:46:35,445.445 INFO    ] ================================================
[2026-06-22 01:46:36,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:46:36
[2026-06-22 01:46:36,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:46:36,980.980 INFO    ] Initializing speech engine...
[2026-06-22 01:46:36,987.987 INFO    ] 2026-06-22 01:46:36
[2026-06-22 01:46:37,248.248 INFO    ] 2026-06-22 01:46:37
[2026-06-22 01:46:37,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:46:37,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:46:37,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:46:37,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:46:37,692.692 INFO    ] time= 22/06/2026 01:46:37
[2026-06-22 01:46:37,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:46:37,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:46:37,858.858 INFO    ] No existing commands found in stream
[2026-06-22 01:46:42,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:46:42,872.872 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-22 01:46:45,954.954 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:46:45,956.956 INFO    ] Checking for system updates...
[2026-06-22 01:46:45,977.977 INFO    ] 200
[2026-06-22 01:46:45,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:46:46,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:46:46,010.010 INFO    ] No update needed
[2026-06-22 01:46:46,011.011 INFO    ] Checking for camera pi updates...
[2026-06-22 01:46:46,051.051 INFO    ] 200
[2026-06-22 01:46:46,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:46:46,096.096 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:46:46,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:46:46,183.183 INFO    ] No camera update needed
[2026-06-22 01:46:46,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:46:46,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:46:46,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:46:46,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:46:48,240.240 INFO    ] ================================================
[2026-06-22 01:46:48,255.255 INFO    ] Launching Daemon at Mon Jun 22 01:46:48 IST 2026
[2026-06-22 01:46:48,267.267 INFO    ] ================================================
[2026-06-22 01:46:48,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:46:48
[2026-06-22 01:46:49,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:46:49,802.802 INFO    ] Initializing speech engine...
[2026-06-22 01:46:49,808.808 INFO    ] 2026-06-22 01:46:49
[2026-06-22 01:46:50,085.085 INFO    ] 2026-06-22 01:46:50
[2026-06-22 01:46:50,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:46:50,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:46:50,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:46:50,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:46:50,539.539 INFO    ] time= 22/06/2026 01:46:50
[2026-06-22 01:46:50,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:46:50,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:46:50,719.719 INFO    ] No existing commands found in stream
[2026-06-22 01:46:55,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:46:55,736.736 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-22 01:46:58,075.075 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:46:58,079.079 INFO    ] Checking for system updates...
[2026-06-22 01:46:58,121.121 INFO    ] 200
[2026-06-22 01:46:58,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:46:58,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:46:58,190.190 INFO    ] No update needed
[2026-06-22 01:46:58,195.195 INFO    ] Checking for camera pi updates...
[2026-06-22 01:46:58,233.233 INFO    ] 200
[2026-06-22 01:46:58,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:46:58,276.276 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:46:58,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:46:58,361.361 INFO    ] No camera update needed
[2026-06-22 01:46:58,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:46:58,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:46:58,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:46:58,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:47:00,416.416 INFO    ] ================================================
[2026-06-22 01:47:00,431.431 INFO    ] Launching Daemon at Mon Jun 22 01:47:00 IST 2026
[2026-06-22 01:47:00,442.442 INFO    ] ================================================
[2026-06-22 01:47:01,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:47:01
[2026-06-22 01:47:01,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:47:02,012.012 INFO    ] Initializing speech engine...
[2026-06-22 01:47:02,026.026 INFO    ] 2026-06-22 01:47:02
[2026-06-22 01:47:02,318.318 INFO    ] 2026-06-22 01:47:02
[2026-06-22 01:47:02,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:47:02,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:47:02,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:47:02,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:47:02,867.867 INFO    ] time= 22/06/2026 01:47:02
[2026-06-22 01:47:02,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:47:02,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:47:03,040.040 INFO    ] No existing commands found in stream
[2026-06-22 01:47:08,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:47:08,075.075 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-22 01:47:12,351.351 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:47:12,354.354 INFO    ] Checking for system updates...
[2026-06-22 01:47:12,392.392 INFO    ] 200
[2026-06-22 01:47:12,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:47:12,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:47:12,452.452 INFO    ] No update needed
[2026-06-22 01:47:12,454.454 INFO    ] Checking for camera pi updates...
[2026-06-22 01:47:12,489.489 INFO    ] 200
[2026-06-22 01:47:12,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:47:12,538.538 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:47:12,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:47:12,631.631 INFO    ] No camera update needed
[2026-06-22 01:47:12,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:47:12,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:47:12,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:47:12,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:47:14,686.686 INFO    ] ================================================
[2026-06-22 01:47:14,701.701 INFO    ] Launching Daemon at Mon Jun 22 01:47:14 IST 2026
[2026-06-22 01:47:14,712.712 INFO    ] ================================================
[2026-06-22 01:47:15,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:47:15
[2026-06-22 01:47:15,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:47:16,211.211 INFO    ] Initializing speech engine...
[2026-06-22 01:47:16,223.223 INFO    ] 2026-06-22 01:47:16
[2026-06-22 01:47:16,502.502 INFO    ] 2026-06-22 01:47:16
[2026-06-22 01:47:16,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:47:16,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:47:16,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:47:16,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:47:16,969.969 INFO    ] time= 22/06/2026 01:47:16
[2026-06-22 01:47:17,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:47:17,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:47:17,171.171 INFO    ] No existing commands found in stream
[2026-06-22 01:47:22,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:47:22,200.200 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-22 01:47:24,156.156 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:47:24,159.159 INFO    ] Checking for system updates...
[2026-06-22 01:47:24,199.199 INFO    ] 200
[2026-06-22 01:47:24,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:47:24,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:47:24,263.263 INFO    ] No update needed
[2026-06-22 01:47:24,266.266 INFO    ] Checking for camera pi updates...
[2026-06-22 01:47:24,301.301 INFO    ] 200
[2026-06-22 01:47:24,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:47:24,348.348 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:47:24,410.410 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:47:24,412.412 INFO    ] No camera update needed
[2026-06-22 01:47:24,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:47:24,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:47:24,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:47:24,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:47:26,468.468 INFO    ] ================================================
[2026-06-22 01:47:26,483.483 INFO    ] Launching Daemon at Mon Jun 22 01:47:26 IST 2026
[2026-06-22 01:47:26,494.494 INFO    ] ================================================
[2026-06-22 01:47:27,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:47:27
[2026-06-22 01:47:27,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:47:28,003.003 INFO    ] Initializing speech engine...
[2026-06-22 01:47:28,011.011 INFO    ] 2026-06-22 01:47:28
[2026-06-22 01:47:28,282.282 INFO    ] 2026-06-22 01:47:28
[2026-06-22 01:47:28,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:47:28,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:47:28,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:47:28,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:47:28,741.741 INFO    ] time= 22/06/2026 01:47:28
[2026-06-22 01:47:28,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:47:28,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:47:28,899.899 INFO    ] No existing commands found in stream
[2026-06-22 01:47:33,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:47:33,929.929 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-22 01:47:34,858.858 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:47:34,860.860 INFO    ] Checking for system updates...
[2026-06-22 01:47:34,884.884 INFO    ] 200
[2026-06-22 01:47:34,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:47:34,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:47:34,920.920 INFO    ] No update needed
[2026-06-22 01:47:34,922.922 INFO    ] Checking for camera pi updates...
[2026-06-22 01:47:34,945.945 INFO    ] 200
[2026-06-22 01:47:34,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:47:35,003.003 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:47:35,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:47:35,095.095 INFO    ] No camera update needed
[2026-06-22 01:47:35,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:47:35,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:47:35,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:47:35,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:47:37,151.151 INFO    ] ================================================
[2026-06-22 01:47:37,167.167 INFO    ] Launching Daemon at Mon Jun 22 01:47:37 IST 2026
[2026-06-22 01:47:37,177.177 INFO    ] ================================================
[2026-06-22 01:47:37,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:47:37
[2026-06-22 01:47:38,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:47:38,527.527 INFO    ] Initializing speech engine...
[2026-06-22 01:47:38,536.536 INFO    ] 2026-06-22 01:47:38
[2026-06-22 01:47:38,784.784 INFO    ] 2026-06-22 01:47:38
[2026-06-22 01:47:38,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:47:39,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:47:39,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:47:39,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:47:39,257.257 INFO    ] time= 22/06/2026 01:47:39
[2026-06-22 01:47:39,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:47:39,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:47:39,402.402 INFO    ] No existing commands found in stream
[2026-06-22 01:47:44,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:47:44,417.417 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-22 01:47:47,467.467 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:47:47,469.469 INFO    ] Checking for system updates...
[2026-06-22 01:47:47,508.508 INFO    ] 200
[2026-06-22 01:47:47,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:47:47,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:47:47,566.566 INFO    ] No update needed
[2026-06-22 01:47:47,569.569 INFO    ] Checking for camera pi updates...
[2026-06-22 01:47:47,603.603 INFO    ] 200
[2026-06-22 01:47:47,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:47:47,646.646 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:47:47,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:47:47,725.725 INFO    ] No camera update needed
[2026-06-22 01:47:47,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:47:47,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:47:47,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:47:47,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:47:49,779.779 INFO    ] ================================================
[2026-06-22 01:47:49,795.795 INFO    ] Launching Daemon at Mon Jun 22 01:47:49 IST 2026
[2026-06-22 01:47:49,805.805 INFO    ] ================================================
[2026-06-22 01:47:50,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:47:50
[2026-06-22 01:47:50,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:47:51,214.214 INFO    ] Initializing speech engine...
[2026-06-22 01:47:51,229.229 INFO    ] 2026-06-22 01:47:51
[2026-06-22 01:47:51,483.483 INFO    ] 2026-06-22 01:47:51
[2026-06-22 01:47:51,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:47:51,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:47:51,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:47:51,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:47:51,822.822 INFO    ] time= 22/06/2026 01:47:51
[2026-06-22 01:47:51,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:47:51,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:47:51,937.937 INFO    ] No existing commands found in stream
[2026-06-22 01:47:56,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:47:56,955.955 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-22 01:48:00,953.953 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:48:00,955.955 INFO    ] Checking for system updates...
[2026-06-22 01:48:00,976.976 INFO    ] 200
[2026-06-22 01:48:00,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:48:01,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:48:01,036.036 INFO    ] No update needed
[2026-06-22 01:48:01,039.039 INFO    ] Checking for camera pi updates...
[2026-06-22 01:48:01,075.075 INFO    ] 200
[2026-06-22 01:48:01,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:48:01,123.123 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:48:01,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:48:01,324.324 INFO    ] No camera update needed
[2026-06-22 01:48:01,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:48:01,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:48:01,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:48:01,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:48:03,384.384 INFO    ] ================================================
[2026-06-22 01:48:03,400.400 INFO    ] Launching Daemon at Mon Jun 22 01:48:03 IST 2026
[2026-06-22 01:48:03,410.410 INFO    ] ================================================
[2026-06-22 01:48:03,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:48:03
[2026-06-22 01:48:04,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:48:04,826.826 INFO    ] Initializing speech engine...
[2026-06-22 01:48:04,835.835 INFO    ] 2026-06-22 01:48:04
[2026-06-22 01:48:05,081.081 INFO    ] 2026-06-22 01:48:05
[2026-06-22 01:48:05,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:48:05,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:48:05,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:48:05,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:48:05,429.429 INFO    ] time= 22/06/2026 01:48:05
[2026-06-22 01:48:05,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:48:05,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:48:05,524.524 INFO    ] No existing commands found in stream
[2026-06-22 01:48:10,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:48:10,539.539 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-22 01:48:12,759.759 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:48:12,762.762 INFO    ] Checking for system updates...
[2026-06-22 01:48:12,800.800 INFO    ] 200
[2026-06-22 01:48:12,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:48:12,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:48:12,862.862 INFO    ] No update needed
[2026-06-22 01:48:12,864.864 INFO    ] Checking for camera pi updates...
[2026-06-22 01:48:12,898.898 INFO    ] 200
[2026-06-22 01:48:12,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:48:12,942.942 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:48:13,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:48:13,028.028 INFO    ] No camera update needed
[2026-06-22 01:48:13,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:48:13,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:48:13,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:48:13,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:48:15,083.083 INFO    ] ================================================
[2026-06-22 01:48:15,099.099 INFO    ] Launching Daemon at Mon Jun 22 01:48:15 IST 2026
[2026-06-22 01:48:15,110.110 INFO    ] ================================================
[2026-06-22 01:48:15,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:48:15
[2026-06-22 01:48:16,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:48:16,559.559 INFO    ] Initializing speech engine...
[2026-06-22 01:48:16,564.564 INFO    ] 2026-06-22 01:48:16
[2026-06-22 01:48:16,828.828 INFO    ] 2026-06-22 01:48:16
[2026-06-22 01:48:16,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:48:17,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:48:17,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:48:17,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:48:17,303.303 INFO    ] time= 22/06/2026 01:48:17
[2026-06-22 01:48:17,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:48:17,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:48:17,442.442 INFO    ] No existing commands found in stream
[2026-06-22 01:48:22,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:48:22,458.458 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-22 01:48:23,486.486 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:48:23,489.489 INFO    ] Checking for system updates...
[2026-06-22 01:48:23,529.529 INFO    ] 200
[2026-06-22 01:48:23,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:48:23,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:48:23,599.599 INFO    ] No update needed
[2026-06-22 01:48:23,601.601 INFO    ] Checking for camera pi updates...
[2026-06-22 01:48:23,636.636 INFO    ] 200
[2026-06-22 01:48:23,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:48:23,685.685 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:48:23,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:48:23,770.770 INFO    ] No camera update needed
[2026-06-22 01:48:23,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:48:23,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:48:23,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:48:23,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:48:25,829.829 INFO    ] ================================================
[2026-06-22 01:48:25,845.845 INFO    ] Launching Daemon at Mon Jun 22 01:48:25 IST 2026
[2026-06-22 01:48:25,856.856 INFO    ] ================================================
[2026-06-22 01:48:26,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:48:26
[2026-06-22 01:48:26,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:48:27,198.198 INFO    ] Initializing speech engine...
[2026-06-22 01:48:27,204.204 INFO    ] 2026-06-22 01:48:27
[2026-06-22 01:48:27,448.448 INFO    ] 2026-06-22 01:48:27
[2026-06-22 01:48:27,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:48:27,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:48:27,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:48:27,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:48:27,942.942 INFO    ] time= 22/06/2026 01:48:27
[2026-06-22 01:48:28,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:48:28,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:48:28,136.136 INFO    ] No existing commands found in stream
[2026-06-22 01:48:33,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:48:33,166.166 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-22 01:48:36,611.611 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:48:36,612.612 INFO    ] Checking for system updates...
[2026-06-22 01:48:36,632.632 INFO    ] 200
[2026-06-22 01:48:36,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:48:36,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:48:36,667.667 INFO    ] No update needed
[2026-06-22 01:48:36,668.668 INFO    ] Checking for camera pi updates...
[2026-06-22 01:48:36,688.688 INFO    ] 200
[2026-06-22 01:48:36,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:48:36,730.730 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:48:36,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:48:36,820.820 INFO    ] No camera update needed
[2026-06-22 01:48:36,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:48:36,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:48:36,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:48:36,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:48:38,876.876 INFO    ] ================================================
[2026-06-22 01:48:38,892.892 INFO    ] Launching Daemon at Mon Jun 22 01:48:38 IST 2026
[2026-06-22 01:48:38,903.903 INFO    ] ================================================
[2026-06-22 01:48:39,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:48:39
[2026-06-22 01:48:39,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:48:40,235.235 INFO    ] Initializing speech engine...
[2026-06-22 01:48:40,248.248 INFO    ] 2026-06-22 01:48:40
[2026-06-22 01:48:40,502.502 INFO    ] 2026-06-22 01:48:40
[2026-06-22 01:48:40,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:48:40,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:48:40,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:48:40,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:48:40,973.973 INFO    ] time= 22/06/2026 01:48:40
[2026-06-22 01:48:41,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:48:41,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:48:41,121.121 INFO    ] No existing commands found in stream
[2026-06-22 01:48:46,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:48:46,155.155 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-22 01:48:46,637.637 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:48:46,639.639 INFO    ] Checking for system updates...
[2026-06-22 01:48:46,661.661 INFO    ] 200
[2026-06-22 01:48:46,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:48:46,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:48:46,707.707 INFO    ] No update needed
[2026-06-22 01:48:46,710.710 INFO    ] Checking for camera pi updates...
[2026-06-22 01:48:46,749.749 INFO    ] 200
[2026-06-22 01:48:46,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:48:46,798.798 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:48:46,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:48:46,883.883 INFO    ] No camera update needed
[2026-06-22 01:48:46,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:48:46,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:48:46,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:48:46,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:48:48,943.943 INFO    ] ================================================
[2026-06-22 01:48:48,958.958 INFO    ] Launching Daemon at Mon Jun 22 01:48:48 IST 2026
[2026-06-22 01:48:48,969.969 INFO    ] ================================================
[2026-06-22 01:48:49,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:48:49
[2026-06-22 01:48:50,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:48:50,304.304 INFO    ] Initializing speech engine...
[2026-06-22 01:48:50,312.312 INFO    ] 2026-06-22 01:48:50
[2026-06-22 01:48:50,562.562 INFO    ] 2026-06-22 01:48:50
[2026-06-22 01:48:50,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:48:50,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:48:50,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:48:50,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:48:50,938.938 INFO    ] time= 22/06/2026 01:48:50
[2026-06-22 01:48:50,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:48:50,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:48:51,108.108 INFO    ] No existing commands found in stream
[2026-06-22 01:48:56,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:48:56,142.142 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-22 01:48:58,997.997 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:48:58,998.998 INFO    ] Checking for system updates...
[2026-06-22 01:48:59,020.020 INFO    ] 200
[2026-06-22 01:48:59,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:48:59,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:48:59,055.055 INFO    ] No update needed
[2026-06-22 01:48:59,056.056 INFO    ] Checking for camera pi updates...
[2026-06-22 01:48:59,076.076 INFO    ] 200
[2026-06-22 01:48:59,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:48:59,103.103 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:48:59,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:48:59,183.183 INFO    ] No camera update needed
[2026-06-22 01:48:59,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:48:59,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:48:59,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:48:59,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:49:01,239.239 INFO    ] ================================================
[2026-06-22 01:49:01,254.254 INFO    ] Launching Daemon at Mon Jun 22 01:49:01 IST 2026
[2026-06-22 01:49:01,265.265 INFO    ] ================================================
[2026-06-22 01:49:02,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:49:02
[2026-06-22 01:49:02,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:49:03,093.093 INFO    ] Initializing speech engine...
[2026-06-22 01:49:03,102.102 INFO    ] 2026-06-22 01:49:03
[2026-06-22 01:49:03,401.401 INFO    ] 2026-06-22 01:49:03
[2026-06-22 01:49:03,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:49:03,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:49:03,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:49:03,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:49:03,826.826 INFO    ] time= 22/06/2026 01:49:03
[2026-06-22 01:49:03,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:49:03,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:49:03,973.973 INFO    ] No existing commands found in stream
[2026-06-22 01:49:08,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:49:08,989.989 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-22 01:49:09,565.565 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:49:09,568.568 INFO    ] Checking for system updates...
[2026-06-22 01:49:09,609.609 INFO    ] 200
[2026-06-22 01:49:09,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:49:09,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:49:09,666.666 INFO    ] No update needed
[2026-06-22 01:49:09,669.669 INFO    ] Checking for camera pi updates...
[2026-06-22 01:49:09,707.707 INFO    ] 200
[2026-06-22 01:49:09,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:49:09,750.750 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:49:09,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:49:09,838.838 INFO    ] No camera update needed
[2026-06-22 01:49:09,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:49:09,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:49:09,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:49:09,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:49:11,896.896 INFO    ] ================================================
[2026-06-22 01:49:11,912.912 INFO    ] Launching Daemon at Mon Jun 22 01:49:11 IST 2026
[2026-06-22 01:49:11,923.923 INFO    ] ================================================
[2026-06-22 01:49:12,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:49:12
[2026-06-22 01:49:13,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:49:13,615.615 INFO    ] Initializing speech engine...
[2026-06-22 01:49:13,621.621 INFO    ] 2026-06-22 01:49:13
[2026-06-22 01:49:13,888.888 INFO    ] 2026-06-22 01:49:13
[2026-06-22 01:49:13,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:49:14,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:49:14,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:49:14,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:49:14,260.260 INFO    ] time= 22/06/2026 01:49:14
[2026-06-22 01:49:14,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:49:14,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:49:14,342.342 INFO    ] No existing commands found in stream
[2026-06-22 01:49:19,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:49:19,354.354 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-22 01:49:21,278.278 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:49:21,281.281 INFO    ] Checking for system updates...
[2026-06-22 01:49:21,316.316 INFO    ] 200
[2026-06-22 01:49:21,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:49:21,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:49:21,383.383 INFO    ] No update needed
[2026-06-22 01:49:21,386.386 INFO    ] Checking for camera pi updates...
[2026-06-22 01:49:21,420.420 INFO    ] 200
[2026-06-22 01:49:21,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:49:21,465.465 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:49:21,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:49:21,551.551 INFO    ] No camera update needed
[2026-06-22 01:49:21,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:49:21,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:49:21,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:49:21,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:49:23,607.607 INFO    ] ================================================
[2026-06-22 01:49:23,623.623 INFO    ] Launching Daemon at Mon Jun 22 01:49:23 IST 2026
[2026-06-22 01:49:23,639.639 INFO    ] ================================================
[2026-06-22 01:49:24,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:49:24
[2026-06-22 01:49:24,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:49:24,983.983 INFO    ] Initializing speech engine...
[2026-06-22 01:49:24,993.993 INFO    ] 2026-06-22 01:49:24
[2026-06-22 01:49:25,244.244 INFO    ] 2026-06-22 01:49:25
[2026-06-22 01:49:25,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:49:25,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:49:25,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:49:25,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:49:25,617.617 INFO    ] time= 22/06/2026 01:49:25
[2026-06-22 01:49:25,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:49:25,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:49:25,762.762 INFO    ] No existing commands found in stream
[2026-06-22 01:49:30,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:49:30,791.791 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-22 01:49:31,270.270 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:49:31,273.273 INFO    ] Checking for system updates...
[2026-06-22 01:49:31,316.316 INFO    ] 200
[2026-06-22 01:49:31,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:49:31,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:49:31,374.374 INFO    ] No update needed
[2026-06-22 01:49:31,376.376 INFO    ] Checking for camera pi updates...
[2026-06-22 01:49:31,416.416 INFO    ] 200
[2026-06-22 01:49:31,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:49:31,470.470 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:49:31,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:49:31,544.544 INFO    ] No camera update needed
[2026-06-22 01:49:31,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:49:31,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:49:31,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:49:31,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:49:33,609.609 INFO    ] ================================================
[2026-06-22 01:49:33,625.625 INFO    ] Launching Daemon at Mon Jun 22 01:49:33 IST 2026
[2026-06-22 01:49:33,637.637 INFO    ] ================================================
[2026-06-22 01:49:34,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:49:34
[2026-06-22 01:49:34,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:49:35,114.114 INFO    ] Initializing speech engine...
[2026-06-22 01:49:35,135.135 INFO    ] 2026-06-22 01:49:35
[2026-06-22 01:49:35,396.396 INFO    ] 2026-06-22 01:49:35
[2026-06-22 01:49:35,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:49:35,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:49:35,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:49:35,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:49:35,741.741 INFO    ] time= 22/06/2026 01:49:35
[2026-06-22 01:49:35,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:49:35,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:49:35,854.854 INFO    ] No existing commands found in stream
[2026-06-22 01:49:40,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:49:40,870.870 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-22 01:49:42,228.228 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:49:42,230.230 INFO    ] Checking for system updates...
[2026-06-22 01:49:42,266.266 INFO    ] 200
[2026-06-22 01:49:42,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:49:42,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:49:42,332.332 INFO    ] No update needed
[2026-06-22 01:49:42,334.334 INFO    ] Checking for camera pi updates...
[2026-06-22 01:49:42,368.368 INFO    ] 200
[2026-06-22 01:49:42,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:49:42,421.421 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:49:42,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:49:42,510.510 INFO    ] No camera update needed
[2026-06-22 01:49:42,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:49:42,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:49:42,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:49:42,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:49:44,567.567 INFO    ] ================================================
[2026-06-22 01:49:44,584.584 INFO    ] Launching Daemon at Mon Jun 22 01:49:44 IST 2026
[2026-06-22 01:49:44,595.595 INFO    ] ================================================
[2026-06-22 01:49:45,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:49:45
[2026-06-22 01:49:45,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:49:46,135.135 INFO    ] Initializing speech engine...
[2026-06-22 01:49:46,144.144 INFO    ] 2026-06-22 01:49:46
[2026-06-22 01:49:46,390.390 INFO    ] 2026-06-22 01:49:46
[2026-06-22 01:49:46,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:49:46,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:49:46,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:49:46,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:49:46,858.858 INFO    ] time= 22/06/2026 01:49:46
[2026-06-22 01:49:46,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:49:46,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:49:47,005.005 INFO    ] No existing commands found in stream
[2026-06-22 01:49:52,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:49:52,020.020 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-22 01:49:56,241.241 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:49:56,245.245 INFO    ] Checking for system updates...
[2026-06-22 01:49:56,289.289 INFO    ] 200
[2026-06-22 01:49:56,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:49:56,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:49:56,363.363 INFO    ] No update needed
[2026-06-22 01:49:56,365.365 INFO    ] Checking for camera pi updates...
[2026-06-22 01:49:56,402.402 INFO    ] 200
[2026-06-22 01:49:56,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:49:56,448.448 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:49:56,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:49:56,558.558 INFO    ] No camera update needed
[2026-06-22 01:49:56,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:49:56,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:49:56,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:49:56,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:49:58,619.619 INFO    ] ================================================
[2026-06-22 01:49:58,635.635 INFO    ] Launching Daemon at Mon Jun 22 01:49:58 IST 2026
[2026-06-22 01:49:58,646.646 INFO    ] ================================================
[2026-06-22 01:49:59,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:49:59
[2026-06-22 01:49:59,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:50:00,209.209 INFO    ] Initializing speech engine...
[2026-06-22 01:50:00,217.217 INFO    ] 2026-06-22 01:50:00
[2026-06-22 01:50:00,466.466 INFO    ] 2026-06-22 01:50:00
[2026-06-22 01:50:00,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:50:00,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:50:00,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:50:00,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:50:00,814.814 INFO    ] time= 22/06/2026 01:50:00
[2026-06-22 01:50:00,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:50:00,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:50:00,911.911 INFO    ] No existing commands found in stream
[2026-06-22 01:50:05,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:50:05,924.924 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-22 01:50:08,464.464 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:50:08,467.467 INFO    ] Checking for system updates...
[2026-06-22 01:50:08,531.531 INFO    ] 200
[2026-06-22 01:50:08,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:50:08,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:50:08,673.673 INFO    ] No update needed
[2026-06-22 01:50:08,676.676 INFO    ] Checking for camera pi updates...
[2026-06-22 01:50:08,711.711 INFO    ] 200
[2026-06-22 01:50:08,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:50:08,763.763 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:50:08,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:50:08,857.857 INFO    ] No camera update needed
[2026-06-22 01:50:08,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:50:08,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:50:08,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:50:08,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:50:10,919.919 INFO    ] ================================================
[2026-06-22 01:50:10,935.935 INFO    ] Launching Daemon at Mon Jun 22 01:50:10 IST 2026
[2026-06-22 01:50:10,946.946 INFO    ] ================================================
[2026-06-22 01:50:11,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:50:11
[2026-06-22 01:50:12,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:50:12,296.296 INFO    ] Initializing speech engine...
[2026-06-22 01:50:12,302.302 INFO    ] 2026-06-22 01:50:12
[2026-06-22 01:50:12,554.554 INFO    ] 2026-06-22 01:50:12
[2026-06-22 01:50:12,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:50:12,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:50:12,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:50:12,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:50:12,929.929 INFO    ] time= 22/06/2026 01:50:12
[2026-06-22 01:50:12,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:50:12,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:50:13,011.011 INFO    ] No existing commands found in stream
[2026-06-22 01:50:18,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:50:18,034.034 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-22 01:50:18,919.919 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:50:18,922.922 INFO    ] Checking for system updates...
[2026-06-22 01:50:18,960.960 INFO    ] 200
[2026-06-22 01:50:18,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:50:19,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:50:19,018.018 INFO    ] No update needed
[2026-06-22 01:50:19,020.020 INFO    ] Checking for camera pi updates...
[2026-06-22 01:50:19,058.058 INFO    ] 200
[2026-06-22 01:50:19,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:50:19,102.102 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:50:19,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:50:19,155.155 INFO    ] No camera update needed
[2026-06-22 01:50:19,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:50:19,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:50:19,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:50:19,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:50:21,214.214 INFO    ] ================================================
[2026-06-22 01:50:21,230.230 INFO    ] Launching Daemon at Mon Jun 22 01:50:21 IST 2026
[2026-06-22 01:50:21,241.241 INFO    ] ================================================
[2026-06-22 01:50:21,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:50:21
[2026-06-22 01:50:22,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:50:22,564.564 INFO    ] Initializing speech engine...
[2026-06-22 01:50:22,572.572 INFO    ] 2026-06-22 01:50:22
[2026-06-22 01:50:22,870.870 INFO    ] 2026-06-22 01:50:22
[2026-06-22 01:50:22,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:50:23,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:50:23,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:50:23,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:50:23,225.225 INFO    ] time= 22/06/2026 01:50:23
[2026-06-22 01:50:23,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:50:23,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:50:23,304.304 INFO    ] No existing commands found in stream
[2026-06-22 01:50:28,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:50:28,319.319 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-22 01:50:31,120.120 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:50:31,122.122 INFO    ] Checking for system updates...
[2026-06-22 01:50:31,158.158 INFO    ] 200
[2026-06-22 01:50:31,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:50:31,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:50:31,223.223 INFO    ] No update needed
[2026-06-22 01:50:31,226.226 INFO    ] Checking for camera pi updates...
[2026-06-22 01:50:31,263.263 INFO    ] 200
[2026-06-22 01:50:31,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:50:31,312.312 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:50:31,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:50:31,399.399 INFO    ] No camera update needed
[2026-06-22 01:50:31,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:50:31,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:50:31,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:50:31,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:50:33,456.456 INFO    ] ================================================
[2026-06-22 01:50:33,473.473 INFO    ] Launching Daemon at Mon Jun 22 01:50:33 IST 2026
[2026-06-22 01:50:33,484.484 INFO    ] ================================================
[2026-06-22 01:50:34,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:50:34
[2026-06-22 01:50:34,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:50:35,010.010 INFO    ] Initializing speech engine...
[2026-06-22 01:50:35,025.025 INFO    ] 2026-06-22 01:50:35
[2026-06-22 01:50:35,336.336 INFO    ] 2026-06-22 01:50:35
[2026-06-22 01:50:35,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:50:35,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:50:35,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:50:35,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:50:35,759.759 INFO    ] time= 22/06/2026 01:50:35
[2026-06-22 01:50:35,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:50:35,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:50:35,917.917 INFO    ] No existing commands found in stream
[2026-06-22 01:50:40,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:50:40,964.964 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-22 01:50:43,095.095 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:50:43,096.096 INFO    ] Checking for system updates...
[2026-06-22 01:50:43,117.117 INFO    ] 200
[2026-06-22 01:50:43,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:50:43,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:50:43,169.169 INFO    ] No update needed
[2026-06-22 01:50:43,171.171 INFO    ] Checking for camera pi updates...
[2026-06-22 01:50:43,209.209 INFO    ] 200
[2026-06-22 01:50:43,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:50:43,252.252 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:50:43,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:50:43,337.337 INFO    ] No camera update needed
[2026-06-22 01:50:43,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:50:43,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:50:43,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:50:43,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:50:45,395.395 INFO    ] ================================================
[2026-06-22 01:50:45,412.412 INFO    ] Launching Daemon at Mon Jun 22 01:50:45 IST 2026
[2026-06-22 01:50:45,424.424 INFO    ] ================================================
[2026-06-22 01:50:45,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:50:45
[2026-06-22 01:50:46,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:50:46,832.832 INFO    ] Initializing speech engine...
[2026-06-22 01:50:46,838.838 INFO    ] 2026-06-22 01:50:46
[2026-06-22 01:50:47,138.138 INFO    ] 2026-06-22 01:50:47
[2026-06-22 01:50:47,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:50:47,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:50:47,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:50:47,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:50:47,520.520 INFO    ] time= 22/06/2026 01:50:47
[2026-06-22 01:50:47,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:50:47,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:50:47,645.645 INFO    ] No existing commands found in stream
[2026-06-22 01:50:52,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:50:52,663.663 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-22 01:50:55,228.228 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:50:55,231.231 INFO    ] Checking for system updates...
[2026-06-22 01:50:55,272.272 INFO    ] 200
[2026-06-22 01:50:55,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:50:55,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:50:55,329.329 INFO    ] No update needed
[2026-06-22 01:50:55,332.332 INFO    ] Checking for camera pi updates...
[2026-06-22 01:50:55,365.365 INFO    ] 200
[2026-06-22 01:50:55,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:50:55,414.414 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:50:55,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:50:55,498.498 INFO    ] No camera update needed
[2026-06-22 01:50:55,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:50:55,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:50:55,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:50:55,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:50:57,555.555 INFO    ] ================================================
[2026-06-22 01:50:57,570.570 INFO    ] Launching Daemon at Mon Jun 22 01:50:57 IST 2026
[2026-06-22 01:50:57,582.582 INFO    ] ================================================
[2026-06-22 01:50:58,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:50:58
[2026-06-22 01:50:58,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:50:58,906.906 INFO    ] Initializing speech engine...
[2026-06-22 01:50:58,915.915 INFO    ] 2026-06-22 01:50:58
[2026-06-22 01:50:59,208.208 INFO    ] 2026-06-22 01:50:59
[2026-06-22 01:50:59,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:50:59,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:50:59,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:50:59,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:50:59,585.585 INFO    ] time= 22/06/2026 01:50:59
[2026-06-22 01:50:59,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:50:59,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:50:59,711.711 INFO    ] No existing commands found in stream
[2026-06-22 01:51:04,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:51:04,726.726 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-22 01:51:07,121.121 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:51:07,123.123 INFO    ] Checking for system updates...
[2026-06-22 01:51:07,163.163 INFO    ] 200
[2026-06-22 01:51:07,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:51:07,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:51:07,228.228 INFO    ] No update needed
[2026-06-22 01:51:07,230.230 INFO    ] Checking for camera pi updates...
[2026-06-22 01:51:07,267.267 INFO    ] 200
[2026-06-22 01:51:07,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:51:07,315.315 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:51:07,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:51:07,409.409 INFO    ] No camera update needed
[2026-06-22 01:51:07,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:51:07,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:51:07,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:51:07,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:51:09,465.465 INFO    ] ================================================
[2026-06-22 01:51:09,488.488 INFO    ] Launching Daemon at Mon Jun 22 01:51:09 IST 2026
[2026-06-22 01:51:09,498.498 INFO    ] ================================================
[2026-06-22 01:51:10,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:51:10
[2026-06-22 01:51:10,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:51:10,861.861 INFO    ] Initializing speech engine...
[2026-06-22 01:51:10,871.871 INFO    ] 2026-06-22 01:51:10
[2026-06-22 01:51:11,156.156 INFO    ] 2026-06-22 01:51:11
[2026-06-22 01:51:11,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:51:11,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:51:11,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:51:11,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:51:11,612.612 INFO    ] time= 22/06/2026 01:51:11
[2026-06-22 01:51:11,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:51:11,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:51:11,756.756 INFO    ] No existing commands found in stream
[2026-06-22 01:51:16,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:51:16,771.771 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-22 01:51:19,203.203 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:51:19,207.207 INFO    ] Checking for system updates...
[2026-06-22 01:51:19,256.256 INFO    ] 200
[2026-06-22 01:51:19,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 01:51:19,263.263 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-22 01:51:19,266.266 INFO    ] Checking for camera pi updates...
[2026-06-22 01:51:19,307.307 INFO    ] 200
[2026-06-22 01:51:19,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 01:51:19,313.313 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-22 01:51:19,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:51:19,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:51:19,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:51:19,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:51:21,375.375 INFO    ] ================================================
[2026-06-22 01:51:21,391.391 INFO    ] Launching Daemon at Mon Jun 22 01:51:21 IST 2026
[2026-06-22 01:51:21,403.403 INFO    ] ================================================
[2026-06-22 01:51:22,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:51:22
[2026-06-22 01:51:22,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:51:22,948.948 INFO    ] Initializing speech engine...
[2026-06-22 01:51:22,963.963 INFO    ] 2026-06-22 01:51:22
[2026-06-22 01:51:23,237.237 INFO    ] 2026-06-22 01:51:23
[2026-06-22 01:51:23,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:51:23,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:51:23,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:51:23,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:51:23,613.613 INFO    ] time= 22/06/2026 01:51:23
[2026-06-22 01:51:23,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:51:23,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:51:23,740.740 INFO    ] No existing commands found in stream
[2026-06-22 01:51:28,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:51:28,755.755 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-22 01:51:32,630.630 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:51:32,633.633 INFO    ] Checking for system updates...
[2026-06-22 01:51:32,676.676 INFO    ] 200
[2026-06-22 01:51:32,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:51:32,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:51:32,739.739 INFO    ] No update needed
[2026-06-22 01:51:32,741.741 INFO    ] Checking for camera pi updates...
[2026-06-22 01:51:32,783.783 INFO    ] 200
[2026-06-22 01:51:32,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:51:32,830.830 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:51:32,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:51:32,884.884 INFO    ] No camera update needed
[2026-06-22 01:51:32,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:51:32,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:51:32,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:51:32,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:51:34,943.943 INFO    ] ================================================
[2026-06-22 01:51:34,958.958 INFO    ] Launching Daemon at Mon Jun 22 01:51:34 IST 2026
[2026-06-22 01:51:34,970.970 INFO    ] ================================================
[2026-06-22 01:51:35,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:51:35
[2026-06-22 01:51:36,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:51:36,288.288 INFO    ] Initializing speech engine...
[2026-06-22 01:51:36,303.303 INFO    ] 2026-06-22 01:51:36
[2026-06-22 01:51:36,567.567 INFO    ] 2026-06-22 01:51:36
[2026-06-22 01:51:36,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:51:36,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:51:36,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:51:36,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:51:36,911.911 INFO    ] time= 22/06/2026 01:51:36
[2026-06-22 01:51:36,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:51:36,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:51:37,028.028 INFO    ] No existing commands found in stream
[2026-06-22 01:51:42,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:51:42,061.061 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-22 01:51:45,816.816 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:51:45,818.818 INFO    ] Checking for system updates...
[2026-06-22 01:51:45,858.858 INFO    ] 200
[2026-06-22 01:51:45,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:51:45,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:51:45,922.922 INFO    ] No update needed
[2026-06-22 01:51:45,924.924 INFO    ] Checking for camera pi updates...
[2026-06-22 01:51:45,961.961 INFO    ] 200
[2026-06-22 01:51:45,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:51:46,004.004 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:51:46,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:51:46,095.095 INFO    ] No camera update needed
[2026-06-22 01:51:46,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:51:46,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:51:46,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:51:46,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:51:48,150.150 INFO    ] ================================================
[2026-06-22 01:51:48,165.165 INFO    ] Launching Daemon at Mon Jun 22 01:51:48 IST 2026
[2026-06-22 01:51:48,176.176 INFO    ] ================================================
[2026-06-22 01:51:48,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:51:48
[2026-06-22 01:51:49,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:51:49,698.698 INFO    ] Initializing speech engine...
[2026-06-22 01:51:49,707.707 INFO    ] 2026-06-22 01:51:49
[2026-06-22 01:51:49,996.996 INFO    ] 2026-06-22 01:51:49
[2026-06-22 01:51:50,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:51:50,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:51:50,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:51:50,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:51:50,489.489 INFO    ] time= 22/06/2026 01:51:50
[2026-06-22 01:51:50,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:51:50,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:51:50,663.663 INFO    ] No existing commands found in stream
[2026-06-22 01:51:55,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:51:55,690.690 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-22 01:51:58,403.403 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:51:58,406.406 INFO    ] Checking for system updates...
[2026-06-22 01:51:58,442.442 INFO    ] 200
[2026-06-22 01:51:58,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:51:58,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:51:58,501.501 INFO    ] No update needed
[2026-06-22 01:51:58,503.503 INFO    ] Checking for camera pi updates...
[2026-06-22 01:51:58,538.538 INFO    ] 200
[2026-06-22 01:51:58,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:51:58,580.580 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:51:58,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:51:58,675.675 INFO    ] No camera update needed
[2026-06-22 01:51:58,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:51:58,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:51:58,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:51:58,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:52:00,730.730 INFO    ] ================================================
[2026-06-22 01:52:00,746.746 INFO    ] Launching Daemon at Mon Jun 22 01:52:00 IST 2026
[2026-06-22 01:52:00,757.757 INFO    ] ================================================
[2026-06-22 01:52:01,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:52:01
[2026-06-22 01:52:01,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:52:02,481.481 INFO    ] Initializing speech engine...
[2026-06-22 01:52:02,487.487 INFO    ] 2026-06-22 01:52:02
[2026-06-22 01:52:02,855.855 INFO    ] 2026-06-22 01:52:02
[2026-06-22 01:52:02,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:52:03,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:52:03,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:52:03,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:52:03,329.329 INFO    ] time= 22/06/2026 01:52:03
[2026-06-22 01:52:03,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:52:03,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:52:03,573.573 INFO    ] No existing commands found in stream
[2026-06-22 01:52:08,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:52:08,595.595 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-22 01:52:12,904.904 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:52:12,907.907 INFO    ] Checking for system updates...
[2026-06-22 01:52:12,944.944 INFO    ] 200
[2026-06-22 01:52:12,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:52:13,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:52:13,009.009 INFO    ] No update needed
[2026-06-22 01:52:13,012.012 INFO    ] Checking for camera pi updates...
[2026-06-22 01:52:13,051.051 INFO    ] 200
[2026-06-22 01:52:13,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:52:13,101.101 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:52:13,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:52:13,292.292 INFO    ] No camera update needed
[2026-06-22 01:52:13,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:52:13,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:52:13,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:52:13,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:52:15,348.348 INFO    ] ================================================
[2026-06-22 01:52:15,364.364 INFO    ] Launching Daemon at Mon Jun 22 01:52:15 IST 2026
[2026-06-22 01:52:15,375.375 INFO    ] ================================================
[2026-06-22 01:52:15,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:52:15
[2026-06-22 01:52:16,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:52:16,744.744 INFO    ] Initializing speech engine...
[2026-06-22 01:52:16,752.752 INFO    ] 2026-06-22 01:52:16
[2026-06-22 01:52:17,011.011 INFO    ] 2026-06-22 01:52:17
[2026-06-22 01:52:17,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:52:17,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:52:17,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:52:17,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:52:17,449.449 INFO    ] time= 22/06/2026 01:52:17
[2026-06-22 01:52:17,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:52:17,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:52:17,615.615 INFO    ] No existing commands found in stream
[2026-06-22 01:52:22,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:52:22,630.630 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-22 01:52:26,443.443 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:52:26,445.445 INFO    ] Checking for system updates...
[2026-06-22 01:52:26,479.479 INFO    ] 200
[2026-06-22 01:52:26,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:52:26,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:52:26,542.542 INFO    ] No update needed
[2026-06-22 01:52:26,544.544 INFO    ] Checking for camera pi updates...
[2026-06-22 01:52:26,578.578 INFO    ] 200
[2026-06-22 01:52:26,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:52:26,622.622 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:52:26,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:52:26,726.726 INFO    ] No camera update needed
[2026-06-22 01:52:26,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:52:26,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:52:26,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:52:26,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:52:28,785.785 INFO    ] ================================================
[2026-06-22 01:52:28,800.800 INFO    ] Launching Daemon at Mon Jun 22 01:52:28 IST 2026
[2026-06-22 01:52:28,812.812 INFO    ] ================================================
[2026-06-22 01:52:29,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:52:29
[2026-06-22 01:52:29,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:52:30,257.257 INFO    ] Initializing speech engine...
[2026-06-22 01:52:30,262.262 INFO    ] 2026-06-22 01:52:30
[2026-06-22 01:52:30,511.511 INFO    ] 2026-06-22 01:52:30
[2026-06-22 01:52:30,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:52:30,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:52:30,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:52:30,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:52:30,852.852 INFO    ] time= 22/06/2026 01:52:30
[2026-06-22 01:52:30,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:52:30,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:52:30,965.965 INFO    ] No existing commands found in stream
[2026-06-22 01:52:35,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:52:35,980.980 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-22 01:52:36,783.783 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:52:36,785.785 INFO    ] Checking for system updates...
[2026-06-22 01:52:36,822.822 INFO    ] 200
[2026-06-22 01:52:36,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:52:36,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:52:36,884.884 INFO    ] No update needed
[2026-06-22 01:52:36,887.887 INFO    ] Checking for camera pi updates...
[2026-06-22 01:52:36,921.921 INFO    ] 200
[2026-06-22 01:52:36,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:52:36,968.968 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:52:37,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:52:37,053.053 INFO    ] No camera update needed
[2026-06-22 01:52:37,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:52:37,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:52:37,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:52:37,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:52:39,111.111 INFO    ] ================================================
[2026-06-22 01:52:39,127.127 INFO    ] Launching Daemon at Mon Jun 22 01:52:39 IST 2026
[2026-06-22 01:52:39,138.138 INFO    ] ================================================
[2026-06-22 01:52:39,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:52:39
[2026-06-22 01:52:40,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:52:40,570.570 INFO    ] Initializing speech engine...
[2026-06-22 01:52:40,575.575 INFO    ] 2026-06-22 01:52:40
[2026-06-22 01:52:40,824.824 INFO    ] 2026-06-22 01:52:40
[2026-06-22 01:52:40,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:52:41,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:52:41,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:52:41,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:52:41,202.202 INFO    ] time= 22/06/2026 01:52:41
[2026-06-22 01:52:41,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:52:41,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:52:41,378.378 INFO    ] No existing commands found in stream
[2026-06-22 01:52:46,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:52:46,406.406 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-22 01:52:50,674.674 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:52:50,676.676 INFO    ] Checking for system updates...
[2026-06-22 01:52:50,716.716 INFO    ] 200
[2026-06-22 01:52:50,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:52:50,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:52:50,774.774 INFO    ] No update needed
[2026-06-22 01:52:50,776.776 INFO    ] Checking for camera pi updates...
[2026-06-22 01:52:50,814.814 INFO    ] 200
[2026-06-22 01:52:50,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:52:50,857.857 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:52:50,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:52:50,945.945 INFO    ] No camera update needed
[2026-06-22 01:52:50,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:52:50,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:52:50,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:52:50,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:52:53,003.003 INFO    ] ================================================
[2026-06-22 01:52:53,019.019 INFO    ] Launching Daemon at Mon Jun 22 01:52:53 IST 2026
[2026-06-22 01:52:53,029.029 INFO    ] ================================================
[2026-06-22 01:52:53,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:52:53
[2026-06-22 01:52:54,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:52:54,499.499 INFO    ] Initializing speech engine...
[2026-06-22 01:52:54,514.514 INFO    ] 2026-06-22 01:52:54
[2026-06-22 01:52:54,777.777 INFO    ] 2026-06-22 01:52:54
[2026-06-22 01:52:54,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:52:55,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:52:55,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:52:55,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:52:55,248.248 INFO    ] time= 22/06/2026 01:52:55
[2026-06-22 01:52:55,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:52:55,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:52:55,394.394 INFO    ] No existing commands found in stream
[2026-06-22 01:53:00,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:53:00,409.409 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-22 01:53:04,431.431 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:53:04,434.434 INFO    ] Checking for system updates...
[2026-06-22 01:53:04,476.476 INFO    ] 200
[2026-06-22 01:53:04,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:53:04,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:53:04,536.536 INFO    ] No update needed
[2026-06-22 01:53:04,539.539 INFO    ] Checking for camera pi updates...
[2026-06-22 01:53:04,579.579 INFO    ] 200
[2026-06-22 01:53:04,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:53:04,628.628 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:53:04,723.723 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:53:04,726.726 INFO    ] No camera update needed
[2026-06-22 01:53:04,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:53:04,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:53:04,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:53:04,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:53:06,786.786 INFO    ] ================================================
[2026-06-22 01:53:06,802.802 INFO    ] Launching Daemon at Mon Jun 22 01:53:06 IST 2026
[2026-06-22 01:53:06,814.814 INFO    ] ================================================
[2026-06-22 01:53:07,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:53:07
[2026-06-22 01:53:07,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:53:08,272.272 INFO    ] Initializing speech engine...
[2026-06-22 01:53:08,281.281 INFO    ] 2026-06-22 01:53:08
[2026-06-22 01:53:08,502.502 INFO    ] 2026-06-22 01:53:08
[2026-06-22 01:53:08,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:53:08,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:53:08,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:53:08,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:53:08,998.998 INFO    ] time= 22/06/2026 01:53:08
[2026-06-22 01:53:09,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:53:09,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:53:09,139.139 INFO    ] No existing commands found in stream
[2026-06-22 01:53:14,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:53:14,169.169 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-22 01:53:17,155.155 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:53:17,158.158 INFO    ] Checking for system updates...
[2026-06-22 01:53:17,194.194 INFO    ] 200
[2026-06-22 01:53:17,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:53:17,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:53:17,253.253 INFO    ] No update needed
[2026-06-22 01:53:17,255.255 INFO    ] Checking for camera pi updates...
[2026-06-22 01:53:17,292.292 INFO    ] 200
[2026-06-22 01:53:17,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:53:17,337.337 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:53:17,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:53:17,425.425 INFO    ] No camera update needed
[2026-06-22 01:53:17,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:53:17,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:53:17,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:53:17,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:53:19,486.486 INFO    ] ================================================
[2026-06-22 01:53:19,504.504 INFO    ] Launching Daemon at Mon Jun 22 01:53:19 IST 2026
[2026-06-22 01:53:19,516.516 INFO    ] ================================================
[2026-06-22 01:53:20,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:53:20
[2026-06-22 01:53:20,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:53:21,119.119 INFO    ] Initializing speech engine...
[2026-06-22 01:53:21,128.128 INFO    ] 2026-06-22 01:53:21
[2026-06-22 01:53:21,415.415 INFO    ] 2026-06-22 01:53:21
[2026-06-22 01:53:21,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:53:21,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:53:21,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:53:21,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:53:21,903.903 INFO    ] time= 22/06/2026 01:53:21
[2026-06-22 01:53:21,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:53:21,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:53:22,030.030 INFO    ] No existing commands found in stream
[2026-06-22 01:53:27,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:53:27,046.046 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-22 01:53:27,797.797 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:53:27,798.798 INFO    ] Checking for system updates...
[2026-06-22 01:53:27,833.833 INFO    ] 200
[2026-06-22 01:53:27,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:53:27,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:53:27,901.901 INFO    ] No update needed
[2026-06-22 01:53:27,903.903 INFO    ] Checking for camera pi updates...
[2026-06-22 01:53:27,937.937 INFO    ] 200
[2026-06-22 01:53:27,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:53:27,988.988 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:53:28,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:53:28,077.077 INFO    ] No camera update needed
[2026-06-22 01:53:28,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:53:28,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:53:28,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:53:28,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:53:30,132.132 INFO    ] ================================================
[2026-06-22 01:53:30,147.147 INFO    ] Launching Daemon at Mon Jun 22 01:53:30 IST 2026
[2026-06-22 01:53:30,158.158 INFO    ] ================================================
[2026-06-22 01:53:30,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:53:30
[2026-06-22 01:53:31,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:53:31,522.522 INFO    ] Initializing speech engine...
[2026-06-22 01:53:31,528.528 INFO    ] 2026-06-22 01:53:31
[2026-06-22 01:53:31,790.790 INFO    ] 2026-06-22 01:53:31
[2026-06-22 01:53:31,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:53:32,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:53:32,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:53:32,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:53:32,279.279 INFO    ] time= 22/06/2026 01:53:32
[2026-06-22 01:53:32,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:53:32,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:53:32,434.434 INFO    ] No existing commands found in stream
[2026-06-22 01:53:37,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:53:37,459.459 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-22 01:53:38,103.103 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:53:38,105.105 INFO    ] Checking for system updates...
[2026-06-22 01:53:38,125.125 INFO    ] 200
[2026-06-22 01:53:38,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:53:38,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:53:38,160.160 INFO    ] No update needed
[2026-06-22 01:53:38,161.161 INFO    ] Checking for camera pi updates...
[2026-06-22 01:53:38,183.183 INFO    ] 200
[2026-06-22 01:53:38,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:53:38,225.225 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:53:38,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:53:38,327.327 INFO    ] No camera update needed
[2026-06-22 01:53:38,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:53:38,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:53:38,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:53:38,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:53:40,386.386 INFO    ] ================================================
[2026-06-22 01:53:40,401.401 INFO    ] Launching Daemon at Mon Jun 22 01:53:40 IST 2026
[2026-06-22 01:53:40,412.412 INFO    ] ================================================
[2026-06-22 01:53:41,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:53:41
[2026-06-22 01:53:41,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:53:41,789.789 INFO    ] Initializing speech engine...
[2026-06-22 01:53:41,801.801 INFO    ] 2026-06-22 01:53:41
[2026-06-22 01:53:42,078.078 INFO    ] 2026-06-22 01:53:42
[2026-06-22 01:53:42,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:53:42,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:53:42,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:53:42,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:53:42,535.535 INFO    ] time= 22/06/2026 01:53:42
[2026-06-22 01:53:42,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:53:42,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:53:42,685.685 INFO    ] No existing commands found in stream
[2026-06-22 01:53:47,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:53:47,700.700 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-22 01:53:49,400.400 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:53:49,402.402 INFO    ] Checking for system updates...
[2026-06-22 01:53:49,425.425 INFO    ] 200
[2026-06-22 01:53:49,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:53:49,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:53:49,461.461 INFO    ] No update needed
[2026-06-22 01:53:49,462.462 INFO    ] Checking for camera pi updates...
[2026-06-22 01:53:49,481.481 INFO    ] 200
[2026-06-22 01:53:49,483.483 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:53:49,514.514 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:53:49,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:53:49,608.608 INFO    ] No camera update needed
[2026-06-22 01:53:49,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:53:49,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:53:49,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:53:49,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:53:51,670.670 INFO    ] ================================================
[2026-06-22 01:53:51,686.686 INFO    ] Launching Daemon at Mon Jun 22 01:53:51 IST 2026
[2026-06-22 01:53:51,696.696 INFO    ] ================================================
[2026-06-22 01:53:52,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:53:52
[2026-06-22 01:53:52,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:53:53,185.185 INFO    ] Initializing speech engine...
[2026-06-22 01:53:53,199.199 INFO    ] 2026-06-22 01:53:53
[2026-06-22 01:53:53,481.481 INFO    ] 2026-06-22 01:53:53
[2026-06-22 01:53:53,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:53:53,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:53:53,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:53:53,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:53:53,928.928 INFO    ] time= 22/06/2026 01:53:53
[2026-06-22 01:53:53,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:53:54,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:53:54,071.071 INFO    ] No existing commands found in stream
[2026-06-22 01:53:59,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:53:59,088.088 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-22 01:54:01,064.064 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:54:01,066.066 INFO    ] Checking for system updates...
[2026-06-22 01:54:01,088.088 INFO    ] 200
[2026-06-22 01:54:01,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:54:01,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:54:01,134.134 INFO    ] No update needed
[2026-06-22 01:54:01,137.137 INFO    ] Checking for camera pi updates...
[2026-06-22 01:54:01,175.175 INFO    ] 200
[2026-06-22 01:54:01,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:54:01,218.218 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:54:01,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:54:01,309.309 INFO    ] No camera update needed
[2026-06-22 01:54:01,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:54:01,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:54:01,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:54:01,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:54:03,367.367 INFO    ] ================================================
[2026-06-22 01:54:03,383.383 INFO    ] Launching Daemon at Mon Jun 22 01:54:03 IST 2026
[2026-06-22 01:54:03,394.394 INFO    ] ================================================
[2026-06-22 01:54:04,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:54:04
[2026-06-22 01:54:04,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:54:04,958.958 INFO    ] Initializing speech engine...
[2026-06-22 01:54:04,966.966 INFO    ] 2026-06-22 01:54:04
[2026-06-22 01:54:05,223.223 INFO    ] 2026-06-22 01:54:05
[2026-06-22 01:54:05,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:54:05,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:54:05,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:54:05,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:54:05,649.649 INFO    ] time= 22/06/2026 01:54:05
[2026-06-22 01:54:05,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:54:05,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:54:05,831.831 INFO    ] No existing commands found in stream
[2026-06-22 01:54:10,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:54:10,846.846 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-22 01:54:12,075.075 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:54:12,078.078 INFO    ] Checking for system updates...
[2026-06-22 01:54:12,117.117 INFO    ] 200
[2026-06-22 01:54:12,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:54:12,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:54:12,181.181 INFO    ] No update needed
[2026-06-22 01:54:12,183.183 INFO    ] Checking for camera pi updates...
[2026-06-22 01:54:12,217.217 INFO    ] 200
[2026-06-22 01:54:12,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:54:12,265.265 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:54:12,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:54:12,374.374 INFO    ] No camera update needed
[2026-06-22 01:54:12,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:54:12,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:54:12,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:54:12,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:54:14,431.431 INFO    ] ================================================
[2026-06-22 01:54:14,446.446 INFO    ] Launching Daemon at Mon Jun 22 01:54:14 IST 2026
[2026-06-22 01:54:14,457.457 INFO    ] ================================================
[2026-06-22 01:54:15,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:54:15
[2026-06-22 01:54:15,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:54:15,792.792 INFO    ] Initializing speech engine...
[2026-06-22 01:54:15,801.801 INFO    ] 2026-06-22 01:54:15
[2026-06-22 01:54:16,054.054 INFO    ] 2026-06-22 01:54:16
[2026-06-22 01:54:16,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:54:16,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:54:16,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:54:16,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:54:16,497.497 INFO    ] time= 22/06/2026 01:54:16
[2026-06-22 01:54:16,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:54:16,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:54:16,660.660 INFO    ] No existing commands found in stream
[2026-06-22 01:54:21,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:54:21,675.675 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-22 01:54:23,191.191 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:54:23,192.192 INFO    ] Checking for system updates...
[2026-06-22 01:54:23,228.228 INFO    ] 200
[2026-06-22 01:54:23,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:54:23,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:54:23,293.293 INFO    ] No update needed
[2026-06-22 01:54:23,296.296 INFO    ] Checking for camera pi updates...
[2026-06-22 01:54:23,336.336 INFO    ] 200
[2026-06-22 01:54:23,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:54:23,386.386 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:54:23,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:54:23,569.569 INFO    ] No camera update needed
[2026-06-22 01:54:23,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:54:23,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:54:23,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:54:23,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:54:25,629.629 INFO    ] ================================================
[2026-06-22 01:54:25,644.644 INFO    ] Launching Daemon at Mon Jun 22 01:54:25 IST 2026
[2026-06-22 01:54:25,654.654 INFO    ] ================================================
[2026-06-22 01:54:26,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:54:26
[2026-06-22 01:54:26,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:54:27,187.187 INFO    ] Initializing speech engine...
[2026-06-22 01:54:27,200.200 INFO    ] 2026-06-22 01:54:27
[2026-06-22 01:54:27,482.482 INFO    ] 2026-06-22 01:54:27
[2026-06-22 01:54:27,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:54:27,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:54:27,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:54:27,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:54:27,934.934 INFO    ] time= 22/06/2026 01:54:27
[2026-06-22 01:54:27,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:54:28,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:54:28,086.086 INFO    ] No existing commands found in stream
[2026-06-22 01:54:33,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:54:33,110.110 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-22 01:54:37,605.605 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:54:37,608.608 INFO    ] Checking for system updates...
[2026-06-22 01:54:37,649.649 INFO    ] 200
[2026-06-22 01:54:37,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:54:37,704.704 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:54:37,707.707 INFO    ] No update needed
[2026-06-22 01:54:37,709.709 INFO    ] Checking for camera pi updates...
[2026-06-22 01:54:37,747.747 INFO    ] 200
[2026-06-22 01:54:37,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:54:37,794.794 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:54:37,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:54:37,854.854 INFO    ] No camera update needed
[2026-06-22 01:54:37,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:54:37,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:54:37,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:54:37,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:54:39,909.909 INFO    ] ================================================
[2026-06-22 01:54:39,923.923 INFO    ] Launching Daemon at Mon Jun 22 01:54:39 IST 2026
[2026-06-22 01:54:39,934.934 INFO    ] ================================================
[2026-06-22 01:54:40,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:54:40
[2026-06-22 01:54:41,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:54:41,343.343 INFO    ] Initializing speech engine...
[2026-06-22 01:54:41,351.351 INFO    ] 2026-06-22 01:54:41
[2026-06-22 01:54:41,612.612 INFO    ] 2026-06-22 01:54:41
[2026-06-22 01:54:41,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:54:41,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:54:41,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:54:42,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:54:42,071.071 INFO    ] time= 22/06/2026 01:54:42
[2026-06-22 01:54:42,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:54:42,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:54:42,219.219 INFO    ] No existing commands found in stream
[2026-06-22 01:54:47,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:54:47,234.234 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-22 01:54:50,448.448 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:54:50,449.449 INFO    ] Checking for system updates...
[2026-06-22 01:54:50,471.471 INFO    ] 200
[2026-06-22 01:54:50,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:54:50,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:54:50,505.505 INFO    ] No update needed
[2026-06-22 01:54:50,506.506 INFO    ] Checking for camera pi updates...
[2026-06-22 01:54:50,527.527 INFO    ] 200
[2026-06-22 01:54:50,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:54:50,556.556 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:54:50,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:54:50,631.631 INFO    ] No camera update needed
[2026-06-22 01:54:50,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:54:50,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:54:50,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:54:50,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:54:52,689.689 INFO    ] ================================================
[2026-06-22 01:54:52,704.704 INFO    ] Launching Daemon at Mon Jun 22 01:54:52 IST 2026
[2026-06-22 01:54:52,715.715 INFO    ] ================================================
[2026-06-22 01:54:53,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:54:53
[2026-06-22 01:54:53,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:54:54,060.060 INFO    ] Initializing speech engine...
[2026-06-22 01:54:54,065.065 INFO    ] 2026-06-22 01:54:54
[2026-06-22 01:54:54,310.310 INFO    ] 2026-06-22 01:54:54
[2026-06-22 01:54:54,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:54:54,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:54:54,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:54:54,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:54:54,785.785 INFO    ] time= 22/06/2026 01:54:54
[2026-06-22 01:54:54,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:54:54,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:54:54,925.925 INFO    ] No existing commands found in stream
[2026-06-22 01:54:59,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:54:59,960.960 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-22 01:55:00,679.679 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:55:00,682.682 INFO    ] Checking for system updates...
[2026-06-22 01:55:00,719.719 INFO    ] 200
[2026-06-22 01:55:00,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:55:00,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:55:00,778.778 INFO    ] No update needed
[2026-06-22 01:55:00,780.780 INFO    ] Checking for camera pi updates...
[2026-06-22 01:55:00,814.814 INFO    ] 200
[2026-06-22 01:55:00,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:55:00,862.862 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:55:00,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:55:00,933.933 INFO    ] No camera update needed
[2026-06-22 01:55:00,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:55:00,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:55:00,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:55:00,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:55:03,020.020 INFO    ] ================================================
[2026-06-22 01:55:03,043.043 INFO    ] Launching Daemon at Mon Jun 22 01:55:03 IST 2026
[2026-06-22 01:55:03,061.061 INFO    ] ================================================
[2026-06-22 01:55:03,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:55:03
[2026-06-22 01:55:04,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:55:04,566.566 INFO    ] Initializing speech engine...
[2026-06-22 01:55:04,581.581 INFO    ] 2026-06-22 01:55:04
[2026-06-22 01:55:04,853.853 INFO    ] 2026-06-22 01:55:04
[2026-06-22 01:55:04,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:55:05,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:55:05,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:55:05,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:55:05,225.225 INFO    ] time= 22/06/2026 01:55:05
[2026-06-22 01:55:05,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:55:05,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:55:05,375.375 INFO    ] No existing commands found in stream
[2026-06-22 01:55:10,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:55:10,408.408 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-22 01:55:12,470.470 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:55:12,472.472 INFO    ] Checking for system updates...
[2026-06-22 01:55:12,512.512 INFO    ] 200
[2026-06-22 01:55:12,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:55:12,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:55:12,570.570 INFO    ] No update needed
[2026-06-22 01:55:12,572.572 INFO    ] Checking for camera pi updates...
[2026-06-22 01:55:12,610.610 INFO    ] 200
[2026-06-22 01:55:12,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:55:12,652.652 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:55:12,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:55:12,740.740 INFO    ] No camera update needed
[2026-06-22 01:55:12,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:55:12,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:55:12,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:55:12,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:55:14,796.796 INFO    ] ================================================
[2026-06-22 01:55:14,812.812 INFO    ] Launching Daemon at Mon Jun 22 01:55:14 IST 2026
[2026-06-22 01:55:14,824.824 INFO    ] ================================================
[2026-06-22 01:55:15,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:55:15
[2026-06-22 01:55:16,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:55:16,277.277 INFO    ] Initializing speech engine...
[2026-06-22 01:55:16,290.290 INFO    ] 2026-06-22 01:55:16
[2026-06-22 01:55:16,578.578 INFO    ] 2026-06-22 01:55:16
[2026-06-22 01:55:16,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:55:16,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:55:16,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:55:16,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:55:16,957.957 INFO    ] time= 22/06/2026 01:55:16
[2026-06-22 01:55:16,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:55:16,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:55:17,081.081 INFO    ] No existing commands found in stream
[2026-06-22 01:55:22,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:55:22,095.095 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-22 01:55:25,050.050 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:55:25,051.051 INFO    ] Checking for system updates...
[2026-06-22 01:55:25,076.076 INFO    ] 200
[2026-06-22 01:55:25,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:55:25,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:55:25,118.118 INFO    ] No update needed
[2026-06-22 01:55:25,120.120 INFO    ] Checking for camera pi updates...
[2026-06-22 01:55:25,140.140 INFO    ] 200
[2026-06-22 01:55:25,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:55:25,176.176 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:55:25,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:55:25,261.261 INFO    ] No camera update needed
[2026-06-22 01:55:25,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:55:25,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:55:25,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:55:25,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:55:27,322.322 INFO    ] ================================================
[2026-06-22 01:55:27,337.337 INFO    ] Launching Daemon at Mon Jun 22 01:55:27 IST 2026
[2026-06-22 01:55:27,348.348 INFO    ] ================================================
[2026-06-22 01:55:27,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:55:27
[2026-06-22 01:55:28,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:55:28,704.704 INFO    ] Initializing speech engine...
[2026-06-22 01:55:28,710.710 INFO    ] 2026-06-22 01:55:28
[2026-06-22 01:55:29,006.006 INFO    ] 2026-06-22 01:55:28
[2026-06-22 01:55:29,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:55:29,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:55:29,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:55:29,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:55:29,382.382 INFO    ] time= 22/06/2026 01:55:29
[2026-06-22 01:55:29,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:55:29,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:55:29,506.506 INFO    ] No existing commands found in stream
[2026-06-22 01:55:34,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:55:34,527.527 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-22 01:55:36,748.748 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:55:36,750.750 INFO    ] Checking for system updates...
[2026-06-22 01:55:36,789.789 INFO    ] 200
[2026-06-22 01:55:36,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:55:36,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:55:36,849.849 INFO    ] No update needed
[2026-06-22 01:55:36,851.851 INFO    ] Checking for camera pi updates...
[2026-06-22 01:55:36,889.889 INFO    ] 200
[2026-06-22 01:55:36,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:55:36,932.932 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:55:37,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:55:37,031.031 INFO    ] No camera update needed
[2026-06-22 01:55:37,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:55:37,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:55:37,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:55:37,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:55:39,087.087 INFO    ] ================================================
[2026-06-22 01:55:39,103.103 INFO    ] Launching Daemon at Mon Jun 22 01:55:39 IST 2026
[2026-06-22 01:55:39,113.113 INFO    ] ================================================
[2026-06-22 01:55:39,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:55:39
[2026-06-22 01:55:40,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:55:40,617.617 INFO    ] Initializing speech engine...
[2026-06-22 01:55:40,625.625 INFO    ] 2026-06-22 01:55:40
[2026-06-22 01:55:40,894.894 INFO    ] 2026-06-22 01:55:40
[2026-06-22 01:55:40,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:55:41,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:55:41,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:55:41,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:55:41,381.381 INFO    ] time= 22/06/2026 01:55:41
[2026-06-22 01:55:41,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:55:41,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:55:41,525.525 INFO    ] No existing commands found in stream
[2026-06-22 01:55:46,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:55:46,541.541 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-22 01:55:47,626.626 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:55:47,628.628 INFO    ] Checking for system updates...
[2026-06-22 01:55:47,649.649 INFO    ] 200
[2026-06-22 01:55:47,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:55:47,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:55:47,703.703 INFO    ] No update needed
[2026-06-22 01:55:47,706.706 INFO    ] Checking for camera pi updates...
[2026-06-22 01:55:47,741.741 INFO    ] 200
[2026-06-22 01:55:47,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:55:47,789.789 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:55:47,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:55:47,882.882 INFO    ] No camera update needed
[2026-06-22 01:55:47,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:55:47,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:55:47,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:55:47,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:55:49,939.939 INFO    ] ================================================
[2026-06-22 01:55:49,954.954 INFO    ] Launching Daemon at Mon Jun 22 01:55:49 IST 2026
[2026-06-22 01:55:49,965.965 INFO    ] ================================================
[2026-06-22 01:55:50,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:55:50
[2026-06-22 01:55:51,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:55:51,450.450 INFO    ] Initializing speech engine...
[2026-06-22 01:55:51,463.463 INFO    ] 2026-06-22 01:55:51
[2026-06-22 01:55:51,742.742 INFO    ] 2026-06-22 01:55:51
[2026-06-22 01:55:51,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:55:52,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:55:52,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:55:52,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:55:52,201.201 INFO    ] time= 22/06/2026 01:55:52
[2026-06-22 01:55:52,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:55:52,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:55:52,350.350 INFO    ] No existing commands found in stream
[2026-06-22 01:55:57,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:55:57,366.366 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-22 01:56:01,105.105 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:56:01,106.106 INFO    ] Checking for system updates...
[2026-06-22 01:56:01,127.127 INFO    ] 200
[2026-06-22 01:56:01,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:56:01,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:56:01,160.160 INFO    ] No update needed
[2026-06-22 01:56:01,161.161 INFO    ] Checking for camera pi updates...
[2026-06-22 01:56:01,184.184 INFO    ] 200
[2026-06-22 01:56:01,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:56:01,227.227 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:56:01,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:56:01,335.335 INFO    ] No camera update needed
[2026-06-22 01:56:01,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:56:01,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:56:01,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:56:01,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:56:03,399.399 INFO    ] ================================================
[2026-06-22 01:56:03,415.415 INFO    ] Launching Daemon at Mon Jun 22 01:56:03 IST 2026
[2026-06-22 01:56:03,425.425 INFO    ] ================================================
[2026-06-22 01:56:04,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:56:04
[2026-06-22 01:56:04,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:56:05,054.054 INFO    ] Initializing speech engine...
[2026-06-22 01:56:05,067.067 INFO    ] 2026-06-22 01:56:05
[2026-06-22 01:56:05,349.349 INFO    ] 2026-06-22 01:56:05
[2026-06-22 01:56:05,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:56:05,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:56:05,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:56:05,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:56:05,805.805 INFO    ] time= 22/06/2026 01:56:05
[2026-06-22 01:56:05,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:56:05,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:56:05,953.953 INFO    ] No existing commands found in stream
[2026-06-22 01:56:10,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:56:10,968.968 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-22 01:56:13,798.798 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:56:13,800.800 INFO    ] Checking for system updates...
[2026-06-22 01:56:13,821.821 INFO    ] 200
[2026-06-22 01:56:13,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:56:13,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:56:13,858.858 INFO    ] No update needed
[2026-06-22 01:56:13,859.859 INFO    ] Checking for camera pi updates...
[2026-06-22 01:56:13,878.878 INFO    ] 200
[2026-06-22 01:56:13,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:56:13,916.916 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:56:13,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:56:13,993.993 INFO    ] No camera update needed
[2026-06-22 01:56:13,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:56:13,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:56:14,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:56:14,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:56:16,048.048 INFO    ] ================================================
[2026-06-22 01:56:16,063.063 INFO    ] Launching Daemon at Mon Jun 22 01:56:16 IST 2026
[2026-06-22 01:56:16,073.073 INFO    ] ================================================
[2026-06-22 01:56:16,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:56:16
[2026-06-22 01:56:17,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:56:17,403.403 INFO    ] Initializing speech engine...
[2026-06-22 01:56:17,412.412 INFO    ] 2026-06-22 01:56:17
[2026-06-22 01:56:17,702.702 INFO    ] 2026-06-22 01:56:17
[2026-06-22 01:56:17,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:56:17,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:56:17,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:56:18,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:56:18,071.071 INFO    ] time= 22/06/2026 01:56:18
[2026-06-22 01:56:18,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:56:18,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:56:18,193.193 INFO    ] No existing commands found in stream
[2026-06-22 01:56:23,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:56:23,208.208 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-22 01:56:25,883.883 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:56:25,886.886 INFO    ] Checking for system updates...
[2026-06-22 01:56:25,924.924 INFO    ] 200
[2026-06-22 01:56:25,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:56:25,981.981 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:56:25,984.984 INFO    ] No update needed
[2026-06-22 01:56:25,987.987 INFO    ] Checking for camera pi updates...
[2026-06-22 01:56:26,021.021 INFO    ] 200
[2026-06-22 01:56:26,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:56:26,066.066 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:56:26,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:56:26,250.250 INFO    ] No camera update needed
[2026-06-22 01:56:26,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:56:26,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:56:26,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:56:26,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:56:28,307.307 INFO    ] ================================================
[2026-06-22 01:56:28,322.322 INFO    ] Launching Daemon at Mon Jun 22 01:56:28 IST 2026
[2026-06-22 01:56:28,333.333 INFO    ] ================================================
[2026-06-22 01:56:28,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:56:28
[2026-06-22 01:56:29,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:56:29,827.827 INFO    ] Initializing speech engine...
[2026-06-22 01:56:29,837.837 INFO    ] 2026-06-22 01:56:29
[2026-06-22 01:56:30,123.123 INFO    ] 2026-06-22 01:56:30
[2026-06-22 01:56:30,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:56:30,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:56:30,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:56:30,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:56:30,593.593 INFO    ] time= 22/06/2026 01:56:30
[2026-06-22 01:56:30,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:56:30,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:56:30,738.738 INFO    ] No existing commands found in stream
[2026-06-22 01:56:35,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:56:35,753.753 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-22 01:56:36,834.834 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:56:36,837.837 INFO    ] Checking for system updates...
[2026-06-22 01:56:36,874.874 INFO    ] 200
[2026-06-22 01:56:36,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:56:36,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:56:36,934.934 INFO    ] No update needed
[2026-06-22 01:56:36,936.936 INFO    ] Checking for camera pi updates...
[2026-06-22 01:56:36,974.974 INFO    ] 200
[2026-06-22 01:56:36,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:56:37,023.023 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:56:37,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:56:37,110.110 INFO    ] No camera update needed
[2026-06-22 01:56:37,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:56:37,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:56:37,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:56:37,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:56:39,169.169 INFO    ] ================================================
[2026-06-22 01:56:39,185.185 INFO    ] Launching Daemon at Mon Jun 22 01:56:39 IST 2026
[2026-06-22 01:56:39,195.195 INFO    ] ================================================
[2026-06-22 01:56:39,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:56:39
[2026-06-22 01:56:40,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:56:40,556.556 INFO    ] Initializing speech engine...
[2026-06-22 01:56:40,565.565 INFO    ] 2026-06-22 01:56:40
[2026-06-22 01:56:40,817.817 INFO    ] 2026-06-22 01:56:40
[2026-06-22 01:56:40,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:56:41,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:56:41,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:56:41,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:56:41,194.194 INFO    ] time= 22/06/2026 01:56:41
[2026-06-22 01:56:41,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:56:41,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:56:41,365.365 INFO    ] No existing commands found in stream
[2026-06-22 01:56:46,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:56:46,398.398 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-22 01:56:49,906.906 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:56:49,907.907 INFO    ] Checking for system updates...
[2026-06-22 01:56:49,941.941 INFO    ] 200
[2026-06-22 01:56:49,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:56:49,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:56:49,999.999 INFO    ] No update needed
[2026-06-22 01:56:50,001.001 INFO    ] Checking for camera pi updates...
[2026-06-22 01:56:50,038.038 INFO    ] 200
[2026-06-22 01:56:50,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:56:50,081.081 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:56:50,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:56:50,180.180 INFO    ] No camera update needed
[2026-06-22 01:56:50,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:56:50,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:56:50,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:56:50,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:56:52,237.237 INFO    ] ================================================
[2026-06-22 01:56:52,254.254 INFO    ] Launching Daemon at Mon Jun 22 01:56:52 IST 2026
[2026-06-22 01:56:52,265.265 INFO    ] ================================================
[2026-06-22 01:56:52,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:56:52
[2026-06-22 01:56:53,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:56:53,630.630 INFO    ] Initializing speech engine...
[2026-06-22 01:56:53,638.638 INFO    ] 2026-06-22 01:56:53
[2026-06-22 01:56:53,899.899 INFO    ] 2026-06-22 01:56:53
[2026-06-22 01:56:53,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:56:54,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:56:54,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:56:54,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:56:54,348.348 INFO    ] time= 22/06/2026 01:56:54
[2026-06-22 01:56:54,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:56:54,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:56:54,507.507 INFO    ] No existing commands found in stream
[2026-06-22 01:56:59,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:56:59,520.520 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-22 01:57:00,705.705 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:57:00,708.708 INFO    ] Checking for system updates...
[2026-06-22 01:57:00,746.746 INFO    ] 200
[2026-06-22 01:57:00,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:57:00,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:57:00,806.806 INFO    ] No update needed
[2026-06-22 01:57:00,809.809 INFO    ] Checking for camera pi updates...
[2026-06-22 01:57:00,843.843 INFO    ] 200
[2026-06-22 01:57:00,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:57:00,888.888 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:57:00,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:57:00,976.976 INFO    ] No camera update needed
[2026-06-22 01:57:00,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:57:00,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:57:00,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:57:00,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:57:03,046.046 INFO    ] ================================================
[2026-06-22 01:57:03,069.069 INFO    ] Launching Daemon at Mon Jun 22 01:57:03 IST 2026
[2026-06-22 01:57:03,089.089 INFO    ] ================================================
[2026-06-22 01:57:03,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:57:03
[2026-06-22 01:57:04,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:57:04,593.593 INFO    ] Initializing speech engine...
[2026-06-22 01:57:04,601.601 INFO    ] 2026-06-22 01:57:04
[2026-06-22 01:57:04,851.851 INFO    ] 2026-06-22 01:57:04
[2026-06-22 01:57:04,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:57:05,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:57:05,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:57:05,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:57:05,227.227 INFO    ] time= 22/06/2026 01:57:05
[2026-06-22 01:57:05,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:57:05,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:57:05,361.361 INFO    ] No existing commands found in stream
[2026-06-22 01:57:10,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:57:10,389.389 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-22 01:57:11,410.410 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:57:11,413.413 INFO    ] Checking for system updates...
[2026-06-22 01:57:11,448.448 INFO    ] 200
[2026-06-22 01:57:11,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:57:11,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:57:11,507.507 INFO    ] No update needed
[2026-06-22 01:57:11,510.510 INFO    ] Checking for camera pi updates...
[2026-06-22 01:57:11,544.544 INFO    ] 200
[2026-06-22 01:57:11,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:57:11,587.587 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:57:11,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:57:11,676.676 INFO    ] No camera update needed
[2026-06-22 01:57:11,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:57:11,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:57:11,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:57:11,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:57:13,735.735 INFO    ] ================================================
[2026-06-22 01:57:13,752.752 INFO    ] Launching Daemon at Mon Jun 22 01:57:13 IST 2026
[2026-06-22 01:57:13,763.763 INFO    ] ================================================
[2026-06-22 01:57:14,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:57:14
[2026-06-22 01:57:14,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:57:15,091.091 INFO    ] Initializing speech engine...
[2026-06-22 01:57:15,114.114 INFO    ] 2026-06-22 01:57:15
[2026-06-22 01:57:15,370.370 INFO    ] 2026-06-22 01:57:15
[2026-06-22 01:57:15,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:57:15,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:57:15,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:57:15,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:57:15,832.832 INFO    ] time= 22/06/2026 01:57:15
[2026-06-22 01:57:15,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:57:15,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:57:16,000.000 INFO    ] No existing commands found in stream
[2026-06-22 01:57:21,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:57:21,015.015 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-22 01:57:25,233.233 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 01:57:25,235.235 INFO    ] Checking for system updates...
[2026-06-22 01:57:25,256.256 INFO    ] 200
[2026-06-22 01:57:25,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:57:25,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:57:25,292.292 INFO    ] No update needed
[2026-06-22 01:57:25,293.293 INFO    ] Checking for camera pi updates...
[2026-06-22 01:57:25,312.312 INFO    ] 200
[2026-06-22 01:57:25,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:57:25,339.339 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:57:25,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:57:25,429.429 INFO    ] No camera update needed
[2026-06-22 01:57:25,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:57:25,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:57:25,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:57:25,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:57:27,486.486 INFO    ] ================================================
[2026-06-22 01:57:27,501.501 INFO    ] Launching Daemon at Mon Jun 22 01:57:27 IST 2026
[2026-06-22 01:57:27,512.512 INFO    ] ================================================
[2026-06-22 01:57:28,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:57:28
[2026-06-22 01:57:28,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:57:28,994.994 INFO    ] Initializing speech engine...
[2026-06-22 01:57:29,008.008 INFO    ] 2026-06-22 01:57:28
[2026-06-22 01:57:29,270.270 INFO    ] 2026-06-22 01:57:29
[2026-06-22 01:57:29,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:57:29,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:57:29,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:57:29,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:57:29,709.709 INFO    ] time= 22/06/2026 01:57:29
[2026-06-22 01:57:29,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:57:29,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:57:29,890.890 INFO    ] No existing commands found in stream
[2026-06-22 01:57:34,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:57:34,904.904 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-22 01:57:36,030.030 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:57:36,033.033 INFO    ] Checking for system updates...
[2026-06-22 01:57:36,083.083 INFO    ] 200
[2026-06-22 01:57:36,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:57:36,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:57:36,141.141 INFO    ] No update needed
[2026-06-22 01:57:36,144.144 INFO    ] Checking for camera pi updates...
[2026-06-22 01:57:36,177.177 INFO    ] 200
[2026-06-22 01:57:36,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:57:36,220.220 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:57:36,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:57:36,307.307 INFO    ] No camera update needed
[2026-06-22 01:57:36,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:57:36,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:57:36,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:57:36,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:57:38,365.365 INFO    ] ================================================
[2026-06-22 01:57:38,381.381 INFO    ] Launching Daemon at Mon Jun 22 01:57:38 IST 2026
[2026-06-22 01:57:38,392.392 INFO    ] ================================================
[2026-06-22 01:57:38,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:57:38
[2026-06-22 01:57:39,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:57:39,755.755 INFO    ] Initializing speech engine...
[2026-06-22 01:57:39,765.765 INFO    ] 2026-06-22 01:57:39
[2026-06-22 01:57:40,013.013 INFO    ] 2026-06-22 01:57:40
[2026-06-22 01:57:40,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:57:40,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:57:40,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:57:40,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:57:40,492.492 INFO    ] time= 22/06/2026 01:57:40
[2026-06-22 01:57:40,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:57:40,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:57:40,631.631 INFO    ] No existing commands found in stream
[2026-06-22 01:57:45,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:57:45,646.646 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-22 01:57:47,457.457 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:57:47,460.460 INFO    ] Checking for system updates...
[2026-06-22 01:57:47,496.496 INFO    ] 200
[2026-06-22 01:57:47,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:57:47,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:57:47,561.561 INFO    ] No update needed
[2026-06-22 01:57:47,564.564 INFO    ] Checking for camera pi updates...
[2026-06-22 01:57:47,601.601 INFO    ] 200
[2026-06-22 01:57:47,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:57:47,650.650 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:57:47,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:57:47,775.775 INFO    ] No camera update needed
[2026-06-22 01:57:47,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:57:47,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:57:47,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:57:47,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:57:49,831.831 INFO    ] ================================================
[2026-06-22 01:57:49,847.847 INFO    ] Launching Daemon at Mon Jun 22 01:57:49 IST 2026
[2026-06-22 01:57:49,858.858 INFO    ] ================================================
[2026-06-22 01:57:50,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:57:50
[2026-06-22 01:57:51,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:57:51,369.369 INFO    ] Initializing speech engine...
[2026-06-22 01:57:51,379.379 INFO    ] 2026-06-22 01:57:51
[2026-06-22 01:57:51,649.649 INFO    ] 2026-06-22 01:57:51
[2026-06-22 01:57:51,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:57:51,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:57:51,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:57:52,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:57:52,123.123 INFO    ] time= 22/06/2026 01:57:52
[2026-06-22 01:57:52,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:57:52,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:57:52,280.280 INFO    ] No existing commands found in stream
[2026-06-22 01:57:57,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:57:57,296.296 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-22 01:58:01,229.229 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 01:58:01,231.231 INFO    ] Checking for system updates...
[2026-06-22 01:58:01,253.253 INFO    ] 200
[2026-06-22 01:58:01,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:58:01,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:58:01,314.314 INFO    ] No update needed
[2026-06-22 01:58:01,317.317 INFO    ] Checking for camera pi updates...
[2026-06-22 01:58:01,355.355 INFO    ] 200
[2026-06-22 01:58:01,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:58:01,405.405 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:58:01,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:58:01,479.479 INFO    ] No camera update needed
[2026-06-22 01:58:01,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:58:01,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:58:01,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:58:01,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:58:03,542.542 INFO    ] ================================================
[2026-06-22 01:58:03,557.557 INFO    ] Launching Daemon at Mon Jun 22 01:58:03 IST 2026
[2026-06-22 01:58:03,568.568 INFO    ] ================================================
[2026-06-22 01:58:04,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:58:04
[2026-06-22 01:58:04,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:58:05,021.021 INFO    ] Initializing speech engine...
[2026-06-22 01:58:05,042.042 INFO    ] 2026-06-22 01:58:05
[2026-06-22 01:58:05,305.305 INFO    ] 2026-06-22 01:58:05
[2026-06-22 01:58:05,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:58:05,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:58:05,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:58:05,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:58:05,706.706 INFO    ] time= 22/06/2026 01:58:05
[2026-06-22 01:58:05,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:58:05,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:58:05,789.789 INFO    ] No existing commands found in stream
[2026-06-22 01:58:10,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:58:10,806.806 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-22 01:58:13,355.355 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:58:13,357.357 INFO    ] Checking for system updates...
[2026-06-22 01:58:13,393.393 INFO    ] 200
[2026-06-22 01:58:13,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:58:13,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:58:13,450.450 INFO    ] No update needed
[2026-06-22 01:58:13,453.453 INFO    ] Checking for camera pi updates...
[2026-06-22 01:58:13,487.487 INFO    ] 200
[2026-06-22 01:58:13,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:58:13,530.530 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:58:13,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:58:13,587.587 INFO    ] No camera update needed
[2026-06-22 01:58:13,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:58:13,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:58:13,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:58:13,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:58:15,641.641 INFO    ] ================================================
[2026-06-22 01:58:15,656.656 INFO    ] Launching Daemon at Mon Jun 22 01:58:15 IST 2026
[2026-06-22 01:58:15,667.667 INFO    ] ================================================
[2026-06-22 01:58:16,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:58:16
[2026-06-22 01:58:16,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:58:17,128.128 INFO    ] Initializing speech engine...
[2026-06-22 01:58:17,135.135 INFO    ] 2026-06-22 01:58:17
[2026-06-22 01:58:17,422.422 INFO    ] 2026-06-22 01:58:17
[2026-06-22 01:58:17,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:58:17,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:58:17,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:58:17,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:58:17,858.858 INFO    ] time= 22/06/2026 01:58:17
[2026-06-22 01:58:17,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:58:17,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:58:18,033.033 INFO    ] No existing commands found in stream
[2026-06-22 01:58:23,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:58:23,048.048 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-22 01:58:25,377.377 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:58:25,378.378 INFO    ] Checking for system updates...
[2026-06-22 01:58:25,400.400 INFO    ] 200
[2026-06-22 01:58:25,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:58:25,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:58:25,437.437 INFO    ] No update needed
[2026-06-22 01:58:25,439.439 INFO    ] Checking for camera pi updates...
[2026-06-22 01:58:25,459.459 INFO    ] 200
[2026-06-22 01:58:25,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:58:25,493.493 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:58:25,575.575 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:58:25,578.578 INFO    ] No camera update needed
[2026-06-22 01:58:25,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:58:25,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:58:25,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:58:25,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:58:27,637.637 INFO    ] ================================================
[2026-06-22 01:58:27,652.652 INFO    ] Launching Daemon at Mon Jun 22 01:58:27 IST 2026
[2026-06-22 01:58:27,663.663 INFO    ] ================================================
[2026-06-22 01:58:28,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:58:28
[2026-06-22 01:58:28,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:58:29,003.003 INFO    ] Initializing speech engine...
[2026-06-22 01:58:29,013.013 INFO    ] 2026-06-22 01:58:29
[2026-06-22 01:58:29,265.265 INFO    ] 2026-06-22 01:58:29
[2026-06-22 01:58:29,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:58:29,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:58:29,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:58:29,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:58:29,732.732 INFO    ] time= 22/06/2026 01:58:29
[2026-06-22 01:58:29,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:58:29,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:58:29,897.897 INFO    ] No existing commands found in stream
[2026-06-22 01:58:34,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:58:34,911.911 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-22 01:58:37,912.912 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:58:37,914.914 INFO    ] Checking for system updates...
[2026-06-22 01:58:37,950.950 INFO    ] 200
[2026-06-22 01:58:37,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:58:38,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:58:38,011.011 INFO    ] No update needed
[2026-06-22 01:58:38,014.014 INFO    ] Checking for camera pi updates...
[2026-06-22 01:58:38,047.047 INFO    ] 200
[2026-06-22 01:58:38,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:58:38,091.091 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:58:38,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:58:38,193.193 INFO    ] No camera update needed
[2026-06-22 01:58:38,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:58:38,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:58:38,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:58:38,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:58:40,249.249 INFO    ] ================================================
[2026-06-22 01:58:40,265.265 INFO    ] Launching Daemon at Mon Jun 22 01:58:40 IST 2026
[2026-06-22 01:58:40,275.275 INFO    ] ================================================
[2026-06-22 01:58:40,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:58:40
[2026-06-22 01:58:41,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:58:41,600.600 INFO    ] Initializing speech engine...
[2026-06-22 01:58:41,618.618 INFO    ] 2026-06-22 01:58:41
[2026-06-22 01:58:41,871.871 INFO    ] 2026-06-22 01:58:41
[2026-06-22 01:58:41,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:58:42,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:58:42,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:58:42,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:58:42,349.349 INFO    ] time= 22/06/2026 01:58:42
[2026-06-22 01:58:42,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:58:42,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:58:42,494.494 INFO    ] No existing commands found in stream
[2026-06-22 01:58:47,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:58:47,508.508 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-22 01:58:51,701.701 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:58:51,703.703 INFO    ] Checking for system updates...
[2026-06-22 01:58:51,737.737 INFO    ] 200
[2026-06-22 01:58:51,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:58:51,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:58:51,796.796 INFO    ] No update needed
[2026-06-22 01:58:51,799.799 INFO    ] Checking for camera pi updates...
[2026-06-22 01:58:51,833.833 INFO    ] 200
[2026-06-22 01:58:51,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:58:51,877.877 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:58:51,954.954 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:58:51,957.957 INFO    ] No camera update needed
[2026-06-22 01:58:51,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:58:51,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:58:51,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:58:51,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:58:54,015.015 INFO    ] ================================================
[2026-06-22 01:58:54,030.030 INFO    ] Launching Daemon at Mon Jun 22 01:58:54 IST 2026
[2026-06-22 01:58:54,041.041 INFO    ] ================================================
[2026-06-22 01:58:54,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:58:54
[2026-06-22 01:58:55,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:58:55,401.401 INFO    ] Initializing speech engine...
[2026-06-22 01:58:55,409.409 INFO    ] 2026-06-22 01:58:55
[2026-06-22 01:58:55,654.654 INFO    ] 2026-06-22 01:58:55
[2026-06-22 01:58:55,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:58:55,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:58:55,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:58:56,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:58:56,107.107 INFO    ] time= 22/06/2026 01:58:56
[2026-06-22 01:58:56,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:58:56,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:58:56,282.282 INFO    ] No existing commands found in stream
[2026-06-22 01:59:01,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:59:01,297.297 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-22 01:59:01,955.955 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:59:01,959.959 INFO    ] Checking for system updates...
[2026-06-22 01:59:02,032.032 INFO    ] 200
[2026-06-22 01:59:02,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:59:02,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:59:02,112.112 INFO    ] No update needed
[2026-06-22 01:59:02,115.115 INFO    ] Checking for camera pi updates...
[2026-06-22 01:59:02,158.158 INFO    ] 200
[2026-06-22 01:59:02,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:59:02,207.207 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:59:02,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 01:59:02,262.262 INFO    ] No camera update needed
[2026-06-22 01:59:02,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:59:02,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:59:02,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:59:02,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:59:04,324.324 INFO    ] ================================================
[2026-06-22 01:59:04,340.340 INFO    ] Launching Daemon at Mon Jun 22 01:59:04 IST 2026
[2026-06-22 01:59:04,353.353 INFO    ] ================================================
[2026-06-22 01:59:04,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:59:04
[2026-06-22 01:59:05,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:59:05,802.802 INFO    ] Initializing speech engine...
[2026-06-22 01:59:05,817.817 INFO    ] 2026-06-22 01:59:05
[2026-06-22 01:59:06,102.102 INFO    ] 2026-06-22 01:59:06
[2026-06-22 01:59:06,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:59:06,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:59:06,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:59:06,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:59:06,523.523 INFO    ] time= 22/06/2026 01:59:06
[2026-06-22 01:59:06,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:59:06,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:59:06,623.623 INFO    ] No existing commands found in stream
[2026-06-22 01:59:11,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:59:11,639.639 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-22 01:59:14,830.830 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 01:59:14,831.831 INFO    ] Checking for system updates...
[2026-06-22 01:59:14,853.853 INFO    ] 200
[2026-06-22 01:59:14,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:59:14,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:59:14,886.886 INFO    ] No update needed
[2026-06-22 01:59:14,887.887 INFO    ] Checking for camera pi updates...
[2026-06-22 01:59:14,907.907 INFO    ] 200
[2026-06-22 01:59:14,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:59:14,943.943 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:59:15,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:59:15,028.028 INFO    ] No camera update needed
[2026-06-22 01:59:15,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:59:15,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:59:15,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:59:15,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:59:17,082.082 INFO    ] ================================================
[2026-06-22 01:59:17,097.097 INFO    ] Launching Daemon at Mon Jun 22 01:59:17 IST 2026
[2026-06-22 01:59:17,108.108 INFO    ] ================================================
[2026-06-22 01:59:17,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:59:17
[2026-06-22 01:59:18,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:59:18,490.490 INFO    ] Initializing speech engine...
[2026-06-22 01:59:18,497.497 INFO    ] 2026-06-22 01:59:18
[2026-06-22 01:59:18,758.758 INFO    ] 2026-06-22 01:59:18
[2026-06-22 01:59:18,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:59:19,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:59:19,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:59:19,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:59:19,199.199 INFO    ] time= 22/06/2026 01:59:19
[2026-06-22 01:59:19,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:59:19,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:59:19,372.372 INFO    ] No existing commands found in stream
[2026-06-22 01:59:24,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:59:24,395.395 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-22 01:59:25,817.817 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 01:59:25,819.819 INFO    ] Checking for system updates...
[2026-06-22 01:59:25,840.840 INFO    ] 200
[2026-06-22 01:59:25,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:59:25,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:59:25,876.876 INFO    ] No update needed
[2026-06-22 01:59:25,878.878 INFO    ] Checking for camera pi updates...
[2026-06-22 01:59:25,898.898 INFO    ] 200
[2026-06-22 01:59:25,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:59:25,929.929 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:59:26,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:59:26,012.012 INFO    ] No camera update needed
[2026-06-22 01:59:26,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:59:26,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:59:26,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:59:26,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:59:28,072.072 INFO    ] ================================================
[2026-06-22 01:59:28,087.087 INFO    ] Launching Daemon at Mon Jun 22 01:59:28 IST 2026
[2026-06-22 01:59:28,098.098 INFO    ] ================================================
[2026-06-22 01:59:28,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:59:28
[2026-06-22 01:59:29,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:59:29,506.506 INFO    ] Initializing speech engine...
[2026-06-22 01:59:29,512.512 INFO    ] 2026-06-22 01:59:29
[2026-06-22 01:59:29,788.788 INFO    ] 2026-06-22 01:59:29
[2026-06-22 01:59:29,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:59:29,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:59:30,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:59:30,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:59:30,163.163 INFO    ] time= 22/06/2026 01:59:30
[2026-06-22 01:59:30,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:59:30,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:59:30,348.348 INFO    ] No existing commands found in stream
[2026-06-22 01:59:35,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:59:35,378.378 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-22 01:59:37,184.184 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:59:37,187.187 INFO    ] Checking for system updates...
[2026-06-22 01:59:37,227.227 INFO    ] 200
[2026-06-22 01:59:37,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:59:37,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:59:37,291.291 INFO    ] No update needed
[2026-06-22 01:59:37,294.294 INFO    ] Checking for camera pi updates...
[2026-06-22 01:59:37,327.327 INFO    ] 200
[2026-06-22 01:59:37,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:59:37,370.370 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:59:37,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:59:37,453.453 INFO    ] No camera update needed
[2026-06-22 01:59:37,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:59:37,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:59:37,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:59:37,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:59:39,511.511 INFO    ] ================================================
[2026-06-22 01:59:39,526.526 INFO    ] Launching Daemon at Mon Jun 22 01:59:39 IST 2026
[2026-06-22 01:59:39,537.537 INFO    ] ================================================
[2026-06-22 01:59:40,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:59:40
[2026-06-22 01:59:40,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:59:41,048.048 INFO    ] Initializing speech engine...
[2026-06-22 01:59:41,055.055 INFO    ] 2026-06-22 01:59:41
[2026-06-22 01:59:41,301.301 INFO    ] 2026-06-22 01:59:41
[2026-06-22 01:59:41,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:59:41,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:59:41,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:59:41,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:59:41,764.764 INFO    ] time= 22/06/2026 01:59:41
[2026-06-22 01:59:41,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:59:41,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:59:41,937.937 INFO    ] No existing commands found in stream
[2026-06-22 01:59:46,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:59:46,952.952 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-22 01:59:48,225.225 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 01:59:48,227.227 INFO    ] Checking for system updates...
[2026-06-22 01:59:48,248.248 INFO    ] 200
[2026-06-22 01:59:48,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:59:48,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:59:48,284.284 INFO    ] No update needed
[2026-06-22 01:59:48,285.285 INFO    ] Checking for camera pi updates...
[2026-06-22 01:59:48,308.308 INFO    ] 200
[2026-06-22 01:59:48,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:59:48,348.348 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:59:48,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:59:48,434.434 INFO    ] No camera update needed
[2026-06-22 01:59:48,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:59:48,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:59:48,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:59:48,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 01:59:50,495.495 INFO    ] ================================================
[2026-06-22 01:59:50,511.511 INFO    ] Launching Daemon at Mon Jun 22 01:59:50 IST 2026
[2026-06-22 01:59:50,522.522 INFO    ] ================================================
[2026-06-22 01:59:51,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 01:59:51
[2026-06-22 01:59:51,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 01:59:51,967.967 INFO    ] Initializing speech engine...
[2026-06-22 01:59:51,978.978 INFO    ] 2026-06-22 01:59:51
[2026-06-22 01:59:52,224.224 INFO    ] 2026-06-22 01:59:52
[2026-06-22 01:59:52,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 01:59:52,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 01:59:52,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 01:59:52,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 01:59:52,726.726 INFO    ] time= 22/06/2026 01:59:52
[2026-06-22 01:59:52,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 01:59:52,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-22 01:59:52,914.914 INFO    ] No existing commands found in stream
[2026-06-22 01:59:57,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 01:59:57,947.947 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-22 01:59:59,383.383 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 01:59:59,385.385 INFO    ] Checking for system updates...
[2026-06-22 01:59:59,406.406 INFO    ] 200
[2026-06-22 01:59:59,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:59:59,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:59:59,458.458 INFO    ] No update needed
[2026-06-22 01:59:59,460.460 INFO    ] Checking for camera pi updates...
[2026-06-22 01:59:59,498.498 INFO    ] 200
[2026-06-22 01:59:59,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 01:59:59,542.542 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 01:59:59,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 01:59:59,649.649 INFO    ] No camera update needed
[2026-06-22 01:59:59,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-22 01:59:59,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 01:59:59,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 01:59:59,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:00:01,761.761 INFO    ] ================================================
[2026-06-22 02:00:01,837.837 INFO    ] Launching Daemon at Mon Jun 22 02:00:01 IST 2026
[2026-06-22 02:00:01,952.952 INFO    ] ================================================
[2026-06-22 02:00:04,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:00:04
[2026-06-22 02:00:06,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:00:06,719.719 INFO    ] Initializing speech engine...
[2026-06-22 02:00:06,724.724 INFO    ] 2026-06-22 02:00:06
[2026-06-22 02:00:07,019.019 INFO    ] 2026-06-22 02:00:06
[2026-06-22 02:00:07,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:00:07,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:00:07,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:00:07,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:00:07,451.451 INFO    ] time= 22/06/2026 02:00:07
[2026-06-22 02:00:07,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:00:07,542.542 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:00:07,668.668 INFO    ] No existing commands found in stream
[2026-06-22 02:00:12,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:00:12,700.700 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-22 02:00:16,568.568 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:00:16,570.570 INFO    ] Checking for system updates...
[2026-06-22 02:00:16,607.607 INFO    ] 200
[2026-06-22 02:00:16,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:00:16,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:00:16,667.667 INFO    ] No update needed
[2026-06-22 02:00:16,669.669 INFO    ] Checking for camera pi updates...
[2026-06-22 02:00:16,704.704 INFO    ] 200
[2026-06-22 02:00:16,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:00:16,748.748 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:00:16,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:00:16,832.832 INFO    ] No camera update needed
[2026-06-22 02:00:16,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:00:16,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:00:16,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:00:16,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:00:18,889.889 INFO    ] ================================================
[2026-06-22 02:00:18,904.904 INFO    ] Launching Daemon at Mon Jun 22 02:00:18 IST 2026
[2026-06-22 02:00:18,915.915 INFO    ] ================================================
[2026-06-22 02:00:19,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:00:19
[2026-06-22 02:00:20,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:00:20,412.412 INFO    ] Initializing speech engine...
[2026-06-22 02:00:20,418.418 INFO    ] 2026-06-22 02:00:20
[2026-06-22 02:00:20,678.678 INFO    ] 2026-06-22 02:00:20
[2026-06-22 02:00:20,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:00:20,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:00:20,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:00:21,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:00:21,035.035 INFO    ] time= 22/06/2026 02:00:21
[2026-06-22 02:00:21,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:00:21,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:00:21,206.206 INFO    ] No existing commands found in stream
[2026-06-22 02:00:26,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:00:26,239.239 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-22 02:00:29,942.942 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:00:29,943.943 INFO    ] Checking for system updates...
[2026-06-22 02:00:29,964.964 INFO    ] 200
[2026-06-22 02:00:29,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:00:30,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:00:30,012.012 INFO    ] No update needed
[2026-06-22 02:00:30,014.014 INFO    ] Checking for camera pi updates...
[2026-06-22 02:00:30,051.051 INFO    ] 200
[2026-06-22 02:00:30,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:00:30,099.099 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:00:30,186.186 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:00:30,188.188 INFO    ] No camera update needed
[2026-06-22 02:00:30,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:00:30,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:00:30,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:00:30,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:00:32,245.245 INFO    ] ================================================
[2026-06-22 02:00:32,261.261 INFO    ] Launching Daemon at Mon Jun 22 02:00:32 IST 2026
[2026-06-22 02:00:32,272.272 INFO    ] ================================================
[2026-06-22 02:00:32,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:00:32
[2026-06-22 02:00:33,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:00:33,847.847 INFO    ] Initializing speech engine...
[2026-06-22 02:00:33,856.856 INFO    ] 2026-06-22 02:00:33
[2026-06-22 02:00:34,127.127 INFO    ] 2026-06-22 02:00:34
[2026-06-22 02:00:34,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:00:34,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:00:34,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:00:34,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:00:34,604.604 INFO    ] time= 22/06/2026 02:00:34
[2026-06-22 02:00:34,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:00:34,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:00:34,751.751 INFO    ] No existing commands found in stream
[2026-06-22 02:00:39,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:00:39,767.767 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-22 02:00:43,040.040 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:00:43,042.042 INFO    ] Checking for system updates...
[2026-06-22 02:00:43,063.063 INFO    ] 200
[2026-06-22 02:00:43,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:00:43,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:00:43,097.097 INFO    ] No update needed
[2026-06-22 02:00:43,099.099 INFO    ] Checking for camera pi updates...
[2026-06-22 02:00:43,131.131 INFO    ] 200
[2026-06-22 02:00:43,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:00:43,179.179 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:00:43,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:00:43,362.362 INFO    ] No camera update needed
[2026-06-22 02:00:43,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:00:43,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:00:43,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:00:43,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:00:45,419.419 INFO    ] ================================================
[2026-06-22 02:00:45,433.433 INFO    ] Launching Daemon at Mon Jun 22 02:00:45 IST 2026
[2026-06-22 02:00:45,444.444 INFO    ] ================================================
[2026-06-22 02:00:46,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:00:46
[2026-06-22 02:00:46,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:00:46,766.766 INFO    ] Initializing speech engine...
[2026-06-22 02:00:46,771.771 INFO    ] 2026-06-22 02:00:46
[2026-06-22 02:00:47,067.067 INFO    ] 2026-06-22 02:00:47
[2026-06-22 02:00:47,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:00:47,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:00:47,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:00:47,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:00:47,439.439 INFO    ] time= 22/06/2026 02:00:47
[2026-06-22 02:00:47,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:00:47,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:00:47,560.560 INFO    ] No existing commands found in stream
[2026-06-22 02:00:52,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:00:52,575.575 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-22 02:00:53,780.780 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:00:53,783.783 INFO    ] Checking for system updates...
[2026-06-22 02:00:53,819.819 INFO    ] 200
[2026-06-22 02:00:53,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:00:53,875.875 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:00:53,878.878 INFO    ] No update needed
[2026-06-22 02:00:53,881.881 INFO    ] Checking for camera pi updates...
[2026-06-22 02:00:53,914.914 INFO    ] 200
[2026-06-22 02:00:53,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:00:53,957.957 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:00:54,033.033 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:00:54,036.036 INFO    ] No camera update needed
[2026-06-22 02:00:54,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:00:54,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:00:54,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:00:54,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:00:56,093.093 INFO    ] ================================================
[2026-06-22 02:00:56,108.108 INFO    ] Launching Daemon at Mon Jun 22 02:00:56 IST 2026
[2026-06-22 02:00:56,118.118 INFO    ] ================================================
[2026-06-22 02:00:56,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:00:56
[2026-06-22 02:00:57,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:00:57,502.502 INFO    ] Initializing speech engine...
[2026-06-22 02:00:57,511.511 INFO    ] 2026-06-22 02:00:57
[2026-06-22 02:00:57,779.779 INFO    ] 2026-06-22 02:00:57
[2026-06-22 02:00:57,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:00:58,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:00:58,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:00:58,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:00:58,149.149 INFO    ] time= 22/06/2026 02:00:58
[2026-06-22 02:00:58,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:00:58,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:00:58,272.272 INFO    ] No existing commands found in stream
[2026-06-22 02:01:03,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:01:03,288.288 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-22 02:01:04,582.582 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:01:04,585.585 INFO    ] Checking for system updates...
[2026-06-22 02:01:04,625.625 INFO    ] 200
[2026-06-22 02:01:04,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:01:04,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:01:04,689.689 INFO    ] No update needed
[2026-06-22 02:01:04,691.691 INFO    ] Checking for camera pi updates...
[2026-06-22 02:01:04,729.729 INFO    ] 200
[2026-06-22 02:01:04,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:01:04,776.776 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:01:04,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:01:04,835.835 INFO    ] No camera update needed
[2026-06-22 02:01:04,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:01:04,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:01:04,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:01:04,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:01:06,891.891 INFO    ] ================================================
[2026-06-22 02:01:06,906.906 INFO    ] Launching Daemon at Mon Jun 22 02:01:06 IST 2026
[2026-06-22 02:01:06,917.917 INFO    ] ================================================
[2026-06-22 02:01:07,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:01:07
[2026-06-22 02:01:08,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:01:08,466.466 INFO    ] Initializing speech engine...
[2026-06-22 02:01:08,479.479 INFO    ] 2026-06-22 02:01:08
[2026-06-22 02:01:08,762.762 INFO    ] 2026-06-22 02:01:08
[2026-06-22 02:01:08,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:01:09,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:01:09,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:01:09,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:01:09,310.310 INFO    ] time= 22/06/2026 02:01:09
[2026-06-22 02:01:09,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:01:09,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:01:09,436.436 INFO    ] No existing commands found in stream
[2026-06-22 02:01:14,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:01:14,468.468 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-22 02:01:17,564.564 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:01:17,566.566 INFO    ] Checking for system updates...
[2026-06-22 02:01:17,587.587 INFO    ] 200
[2026-06-22 02:01:17,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:01:17,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:01:17,629.629 INFO    ] No update needed
[2026-06-22 02:01:17,632.632 INFO    ] Checking for camera pi updates...
[2026-06-22 02:01:17,670.670 INFO    ] 200
[2026-06-22 02:01:17,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:01:17,720.720 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:01:17,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:01:17,821.821 INFO    ] No camera update needed
[2026-06-22 02:01:17,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:01:17,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:01:17,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:01:17,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:01:19,886.886 INFO    ] ================================================
[2026-06-22 02:01:19,905.905 INFO    ] Launching Daemon at Mon Jun 22 02:01:19 IST 2026
[2026-06-22 02:01:19,918.918 INFO    ] ================================================
[2026-06-22 02:01:20,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:01:20
[2026-06-22 02:01:21,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:01:21,461.461 INFO    ] Initializing speech engine...
[2026-06-22 02:01:21,471.471 INFO    ] 2026-06-22 02:01:21
[2026-06-22 02:01:21,764.764 INFO    ] 2026-06-22 02:01:21
[2026-06-22 02:01:21,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:01:21,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:01:21,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:01:22,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:01:22,148.148 INFO    ] time= 22/06/2026 02:01:22
[2026-06-22 02:01:22,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:01:22,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:01:22,229.229 INFO    ] No existing commands found in stream
[2026-06-22 02:01:27,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:01:27,244.244 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-22 02:01:31,319.319 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:01:31,320.320 INFO    ] Checking for system updates...
[2026-06-22 02:01:31,355.355 INFO    ] 200
[2026-06-22 02:01:31,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:01:31,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:01:31,421.421 INFO    ] No update needed
[2026-06-22 02:01:31,424.424 INFO    ] Checking for camera pi updates...
[2026-06-22 02:01:31,458.458 INFO    ] 200
[2026-06-22 02:01:31,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:01:31,502.502 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:01:31,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:01:31,589.589 INFO    ] No camera update needed
[2026-06-22 02:01:31,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:01:31,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:01:31,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:01:31,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:01:33,652.652 INFO    ] ================================================
[2026-06-22 02:01:33,667.667 INFO    ] Launching Daemon at Mon Jun 22 02:01:33 IST 2026
[2026-06-22 02:01:33,679.679 INFO    ] ================================================
[2026-06-22 02:01:34,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:01:34
[2026-06-22 02:01:34,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:01:35,153.153 INFO    ] Initializing speech engine...
[2026-06-22 02:01:35,164.164 INFO    ] 2026-06-22 02:01:35
[2026-06-22 02:01:35,454.454 INFO    ] 2026-06-22 02:01:35
[2026-06-22 02:01:35,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:01:35,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:01:35,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:01:35,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:01:35,802.802 INFO    ] time= 22/06/2026 02:01:35
[2026-06-22 02:01:35,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:01:35,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:01:35,948.948 INFO    ] No existing commands found in stream
[2026-06-22 02:01:40,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:01:40,964.964 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-22 02:01:42,423.423 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:01:42,424.424 INFO    ] Checking for system updates...
[2026-06-22 02:01:42,459.459 INFO    ] 200
[2026-06-22 02:01:42,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:01:42,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:01:42,524.524 INFO    ] No update needed
[2026-06-22 02:01:42,527.527 INFO    ] Checking for camera pi updates...
[2026-06-22 02:01:42,565.565 INFO    ] 200
[2026-06-22 02:01:42,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:01:42,608.608 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:01:42,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:01:42,698.698 INFO    ] No camera update needed
[2026-06-22 02:01:42,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:01:42,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:01:42,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:01:42,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:01:44,754.754 INFO    ] ================================================
[2026-06-22 02:01:44,770.770 INFO    ] Launching Daemon at Mon Jun 22 02:01:44 IST 2026
[2026-06-22 02:01:44,781.781 INFO    ] ================================================
[2026-06-22 02:01:45,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:01:45
[2026-06-22 02:01:45,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:01:46,135.135 INFO    ] Initializing speech engine...
[2026-06-22 02:01:46,141.141 INFO    ] 2026-06-22 02:01:46
[2026-06-22 02:01:46,438.438 INFO    ] 2026-06-22 02:01:46
[2026-06-22 02:01:46,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:01:46,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:01:46,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:01:46,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:01:46,839.839 INFO    ] time= 22/06/2026 02:01:46
[2026-06-22 02:01:46,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:01:46,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:01:46,948.948 INFO    ] No existing commands found in stream
[2026-06-22 02:01:51,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:01:51,963.963 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-22 02:01:54,458.458 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:01:54,461.461 INFO    ] Checking for system updates...
[2026-06-22 02:01:54,501.501 INFO    ] 200
[2026-06-22 02:01:54,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:01:54,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:01:54,576.576 INFO    ] No update needed
[2026-06-22 02:01:54,579.579 INFO    ] Checking for camera pi updates...
[2026-06-22 02:01:54,621.621 INFO    ] 200
[2026-06-22 02:01:54,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:01:54,669.669 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:01:54,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:01:54,760.760 INFO    ] No camera update needed
[2026-06-22 02:01:54,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:01:54,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:01:54,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:01:54,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:01:56,825.825 INFO    ] ================================================
[2026-06-22 02:01:56,841.841 INFO    ] Launching Daemon at Mon Jun 22 02:01:56 IST 2026
[2026-06-22 02:01:56,852.852 INFO    ] ================================================
[2026-06-22 02:01:57,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:01:57
[2026-06-22 02:01:58,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:01:58,273.273 INFO    ] Initializing speech engine...
[2026-06-22 02:01:58,292.292 INFO    ] 2026-06-22 02:01:58
[2026-06-22 02:01:58,545.545 INFO    ] 2026-06-22 02:01:58
[2026-06-22 02:01:58,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:01:58,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:01:58,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:01:58,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:01:59,024.024 INFO    ] time= 22/06/2026 02:01:58
[2026-06-22 02:01:59,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:01:59,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:01:59,153.153 INFO    ] No existing commands found in stream
[2026-06-22 02:02:04,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:02:04,186.186 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-22 02:02:07,414.414 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:02:07,416.416 INFO    ] Checking for system updates...
[2026-06-22 02:02:07,459.459 INFO    ] 200
[2026-06-22 02:02:07,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:02:07,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:02:07,525.525 INFO    ] No update needed
[2026-06-22 02:02:07,527.527 INFO    ] Checking for camera pi updates...
[2026-06-22 02:02:07,565.565 INFO    ] 200
[2026-06-22 02:02:07,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:02:07,590.590 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:02:07,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:02:07,677.677 INFO    ] No camera update needed
[2026-06-22 02:02:07,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:02:07,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:02:07,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:02:07,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:02:09,735.735 INFO    ] ================================================
[2026-06-22 02:02:09,750.750 INFO    ] Launching Daemon at Mon Jun 22 02:02:09 IST 2026
[2026-06-22 02:02:09,761.761 INFO    ] ================================================
[2026-06-22 02:02:10,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:02:10
[2026-06-22 02:02:10,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:02:11,080.080 INFO    ] Initializing speech engine...
[2026-06-22 02:02:11,087.087 INFO    ] 2026-06-22 02:02:11
[2026-06-22 02:02:11,395.395 INFO    ] 2026-06-22 02:02:11
[2026-06-22 02:02:11,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:02:11,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:02:11,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:02:11,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:02:11,803.803 INFO    ] time= 22/06/2026 02:02:11
[2026-06-22 02:02:11,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:02:11,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:02:11,916.916 INFO    ] No existing commands found in stream
[2026-06-22 02:02:16,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:02:16,931.931 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-22 02:02:19,055.055 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:02:19,058.058 INFO    ] Checking for system updates...
[2026-06-22 02:02:19,096.096 INFO    ] 200
[2026-06-22 02:02:19,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:02:19,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:02:19,165.165 INFO    ] No update needed
[2026-06-22 02:02:19,169.169 INFO    ] Checking for camera pi updates...
[2026-06-22 02:02:19,204.204 INFO    ] 200
[2026-06-22 02:02:19,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:02:19,256.256 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:02:19,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:02:19,350.350 INFO    ] No camera update needed
[2026-06-22 02:02:19,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:02:19,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:02:19,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:02:19,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:02:21,406.406 INFO    ] ================================================
[2026-06-22 02:02:21,422.422 INFO    ] Launching Daemon at Mon Jun 22 02:02:21 IST 2026
[2026-06-22 02:02:21,433.433 INFO    ] ================================================
[2026-06-22 02:02:22,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:02:22
[2026-06-22 02:02:22,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:02:23,019.019 INFO    ] Initializing speech engine...
[2026-06-22 02:02:23,036.036 INFO    ] 2026-06-22 02:02:23
[2026-06-22 02:02:23,317.317 INFO    ] 2026-06-22 02:02:23
[2026-06-22 02:02:23,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:02:23,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:02:23,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:02:23,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:02:23,798.798 INFO    ] time= 22/06/2026 02:02:23
[2026-06-22 02:02:23,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:02:23,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:02:23,983.983 INFO    ] No existing commands found in stream
[2026-06-22 02:02:29,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:02:29,013.013 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-22 02:02:30,669.669 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:02:30,672.672 INFO    ] Checking for system updates...
[2026-06-22 02:02:30,707.707 INFO    ] 200
[2026-06-22 02:02:30,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:02:30,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:02:30,765.765 INFO    ] No update needed
[2026-06-22 02:02:30,767.767 INFO    ] Checking for camera pi updates...
[2026-06-22 02:02:30,801.801 INFO    ] 200
[2026-06-22 02:02:30,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:02:30,850.850 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:02:30,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:02:30,922.922 INFO    ] No camera update needed
[2026-06-22 02:02:30,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:02:30,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:02:30,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:02:30,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:02:32,981.981 INFO    ] ================================================
[2026-06-22 02:02:33,998.998 INFO    ] Launching Daemon at Mon Jun 22 02:02:32 IST 2026
[2026-06-22 02:02:33,011.011 INFO    ] ================================================
[2026-06-22 02:02:33,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:02:33
[2026-06-22 02:02:34,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:02:34,468.468 INFO    ] Initializing speech engine...
[2026-06-22 02:02:34,494.494 INFO    ] 2026-06-22 02:02:34
[2026-06-22 02:02:34,773.773 INFO    ] 2026-06-22 02:02:34
[2026-06-22 02:02:34,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:02:35,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:02:35,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:02:35,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:02:35,167.167 INFO    ] time= 22/06/2026 02:02:35
[2026-06-22 02:02:35,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:02:35,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:02:35,309.309 INFO    ] No existing commands found in stream
[2026-06-22 02:02:40,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:02:40,326.326 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-22 02:02:42,029.029 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:02:42,032.032 INFO    ] Checking for system updates...
[2026-06-22 02:02:42,073.073 INFO    ] 200
[2026-06-22 02:02:42,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:02:42,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:02:42,140.140 INFO    ] No update needed
[2026-06-22 02:02:42,143.143 INFO    ] Checking for camera pi updates...
[2026-06-22 02:02:42,177.177 INFO    ] 200
[2026-06-22 02:02:42,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:02:42,220.220 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:02:42,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:02:42,303.303 INFO    ] No camera update needed
[2026-06-22 02:02:42,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:02:42,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:02:42,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:02:42,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:02:44,363.363 INFO    ] ================================================
[2026-06-22 02:02:44,379.379 INFO    ] Launching Daemon at Mon Jun 22 02:02:44 IST 2026
[2026-06-22 02:02:44,389.389 INFO    ] ================================================
[2026-06-22 02:02:44,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:02:44
[2026-06-22 02:02:45,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:02:45,720.720 INFO    ] Initializing speech engine...
[2026-06-22 02:02:45,727.727 INFO    ] 2026-06-22 02:02:45
[2026-06-22 02:02:45,988.988 INFO    ] 2026-06-22 02:02:45
[2026-06-22 02:02:46,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:02:46,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:02:46,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:02:46,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:02:46,373.373 INFO    ] time= 22/06/2026 02:02:46
[2026-06-22 02:02:46,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:02:46,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:02:46,456.456 INFO    ] No existing commands found in stream
[2026-06-22 02:02:51,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:02:51,472.472 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-22 02:02:53,584.584 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:02:53,587.587 INFO    ] Checking for system updates...
[2026-06-22 02:02:53,629.629 INFO    ] 200
[2026-06-22 02:02:53,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:02:53,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:02:53,689.689 INFO    ] No update needed
[2026-06-22 02:02:53,692.692 INFO    ] Checking for camera pi updates...
[2026-06-22 02:02:53,732.732 INFO    ] 200
[2026-06-22 02:02:53,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:02:53,789.789 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:02:53,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:02:53,977.977 INFO    ] No camera update needed
[2026-06-22 02:02:53,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:02:53,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:02:53,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:02:53,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:02:56,038.038 INFO    ] ================================================
[2026-06-22 02:02:56,053.053 INFO    ] Launching Daemon at Mon Jun 22 02:02:56 IST 2026
[2026-06-22 02:02:56,064.064 INFO    ] ================================================
[2026-06-22 02:02:56,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:02:56
[2026-06-22 02:02:57,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:02:57,434.434 INFO    ] Initializing speech engine...
[2026-06-22 02:02:57,445.445 INFO    ] 2026-06-22 02:02:57
[2026-06-22 02:02:57,713.713 INFO    ] 2026-06-22 02:02:57
[2026-06-22 02:02:57,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:02:57,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:02:57,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:02:58,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:02:58,101.101 INFO    ] time= 22/06/2026 02:02:58
[2026-06-22 02:02:58,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:02:58,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:02:58,231.231 INFO    ] No existing commands found in stream
[2026-06-22 02:03:03,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:03:03,245.245 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-22 02:03:06,608.608 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:03:06,617.617 INFO    ] Checking for system updates...
[2026-06-22 02:03:06,657.657 INFO    ] 200
[2026-06-22 02:03:06,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:03:06,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:03:06,720.720 INFO    ] No update needed
[2026-06-22 02:03:06,723.723 INFO    ] Checking for camera pi updates...
[2026-06-22 02:03:06,760.760 INFO    ] 200
[2026-06-22 02:03:06,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:03:06,808.808 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:03:06,882.882 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:03:06,885.885 INFO    ] No camera update needed
[2026-06-22 02:03:06,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:03:06,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:03:06,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:03:06,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:03:08,940.940 INFO    ] ================================================
[2026-06-22 02:03:08,955.955 INFO    ] Launching Daemon at Mon Jun 22 02:03:08 IST 2026
[2026-06-22 02:03:08,966.966 INFO    ] ================================================
[2026-06-22 02:03:09,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:03:09
[2026-06-22 02:03:10,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:03:10,432.432 INFO    ] Initializing speech engine...
[2026-06-22 02:03:10,442.442 INFO    ] 2026-06-22 02:03:10
[2026-06-22 02:03:10,692.692 INFO    ] 2026-06-22 02:03:10
[2026-06-22 02:03:10,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:03:10,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:03:10,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:03:11,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:03:11,172.172 INFO    ] time= 22/06/2026 02:03:11
[2026-06-22 02:03:11,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:03:11,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:03:11,312.312 INFO    ] No existing commands found in stream
[2026-06-22 02:03:16,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:03:16,328.328 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-22 02:03:19,592.592 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:03:19,594.594 INFO    ] Checking for system updates...
[2026-06-22 02:03:19,627.627 INFO    ] 200
[2026-06-22 02:03:19,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:03:19,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:03:19,685.685 INFO    ] No update needed
[2026-06-22 02:03:19,688.688 INFO    ] Checking for camera pi updates...
[2026-06-22 02:03:19,722.722 INFO    ] 200
[2026-06-22 02:03:19,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:03:19,766.766 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:03:19,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:03:19,833.833 INFO    ] No camera update needed
[2026-06-22 02:03:19,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:03:19,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:03:19,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:03:19,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:03:21,890.890 INFO    ] ================================================
[2026-06-22 02:03:21,904.904 INFO    ] Launching Daemon at Mon Jun 22 02:03:21 IST 2026
[2026-06-22 02:03:21,915.915 INFO    ] ================================================
[2026-06-22 02:03:22,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:03:22
[2026-06-22 02:03:23,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:03:23,342.342 INFO    ] Initializing speech engine...
[2026-06-22 02:03:23,348.348 INFO    ] 2026-06-22 02:03:23
[2026-06-22 02:03:23,642.642 INFO    ] 2026-06-22 02:03:23
[2026-06-22 02:03:23,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:03:23,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:03:23,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:03:24,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:03:24,021.021 INFO    ] time= 22/06/2026 02:03:24
[2026-06-22 02:03:24,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:03:24,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:03:24,149.149 INFO    ] No existing commands found in stream
[2026-06-22 02:03:29,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:03:29,163.163 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-22 02:03:33,047.047 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:03:33,049.049 INFO    ] Checking for system updates...
[2026-06-22 02:03:33,086.086 INFO    ] 200
[2026-06-22 02:03:33,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:03:33,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:03:33,150.150 INFO    ] No update needed
[2026-06-22 02:03:33,152.152 INFO    ] Checking for camera pi updates...
[2026-06-22 02:03:33,186.186 INFO    ] 200
[2026-06-22 02:03:33,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:03:33,229.229 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:03:33,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:03:33,312.312 INFO    ] No camera update needed
[2026-06-22 02:03:33,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:03:33,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:03:33,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:03:33,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:03:35,367.367 INFO    ] ================================================
[2026-06-22 02:03:35,382.382 INFO    ] Launching Daemon at Mon Jun 22 02:03:35 IST 2026
[2026-06-22 02:03:35,393.393 INFO    ] ================================================
[2026-06-22 02:03:35,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:03:35
[2026-06-22 02:03:36,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:03:36,924.924 INFO    ] Initializing speech engine...
[2026-06-22 02:03:36,939.939 INFO    ] 2026-06-22 02:03:36
[2026-06-22 02:03:37,248.248 INFO    ] 2026-06-22 02:03:37
[2026-06-22 02:03:37,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:03:37,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:03:37,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:03:37,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:03:37,761.761 INFO    ] time= 22/06/2026 02:03:37
[2026-06-22 02:03:37,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:03:37,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:03:37,916.916 INFO    ] No existing commands found in stream
[2026-06-22 02:03:42,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:03:42,933.933 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-22 02:03:43,916.916 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:03:43,919.919 INFO    ] Checking for system updates...
[2026-06-22 02:03:43,957.957 INFO    ] 200
[2026-06-22 02:03:43,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:03:44,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:03:44,023.023 INFO    ] No update needed
[2026-06-22 02:03:44,026.026 INFO    ] Checking for camera pi updates...
[2026-06-22 02:03:44,065.065 INFO    ] 200
[2026-06-22 02:03:44,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:03:44,115.115 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:03:44,188.188 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:03:44,191.191 INFO    ] No camera update needed
[2026-06-22 02:03:44,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:03:44,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:03:44,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:03:44,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:03:46,249.249 INFO    ] ================================================
[2026-06-22 02:03:46,264.264 INFO    ] Launching Daemon at Mon Jun 22 02:03:46 IST 2026
[2026-06-22 02:03:46,276.276 INFO    ] ================================================
[2026-06-22 02:03:46,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:03:46
[2026-06-22 02:03:47,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:03:47,739.739 INFO    ] Initializing speech engine...
[2026-06-22 02:03:47,745.745 INFO    ] 2026-06-22 02:03:47
[2026-06-22 02:03:48,022.022 INFO    ] 2026-06-22 02:03:48
[2026-06-22 02:03:48,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:03:48,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:03:48,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:03:48,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:03:48,514.514 INFO    ] time= 22/06/2026 02:03:48
[2026-06-22 02:03:48,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:03:48,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:03:48,700.700 INFO    ] No existing commands found in stream
[2026-06-22 02:03:53,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:03:53,731.731 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-22 02:03:57,176.176 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:03:57,179.179 INFO    ] Checking for system updates...
[2026-06-22 02:03:57,216.216 INFO    ] 200
[2026-06-22 02:03:57,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:03:57,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:03:57,276.276 INFO    ] No update needed
[2026-06-22 02:03:57,279.279 INFO    ] Checking for camera pi updates...
[2026-06-22 02:03:57,313.313 INFO    ] 200
[2026-06-22 02:03:57,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:03:57,360.360 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:03:57,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:03:57,441.441 INFO    ] No camera update needed
[2026-06-22 02:03:57,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:03:57,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:03:57,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:03:57,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:03:59,499.499 INFO    ] ================================================
[2026-06-22 02:03:59,514.514 INFO    ] Launching Daemon at Mon Jun 22 02:03:59 IST 2026
[2026-06-22 02:03:59,525.525 INFO    ] ================================================
[2026-06-22 02:04:00,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:04:00
[2026-06-22 02:04:00,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:04:00,857.857 INFO    ] Initializing speech engine...
[2026-06-22 02:04:00,866.866 INFO    ] 2026-06-22 02:04:00
[2026-06-22 02:04:01,160.160 INFO    ] 2026-06-22 02:04:01
[2026-06-22 02:04:01,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:04:01,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:04:01,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:04:01,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:04:01,565.565 INFO    ] time= 22/06/2026 02:04:01
[2026-06-22 02:04:01,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:04:01,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:04:01,707.707 INFO    ] No existing commands found in stream
[2026-06-22 02:04:06,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:04:06,721.721 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-22 02:04:07,420.420 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:04:07,423.423 INFO    ] Checking for system updates...
[2026-06-22 02:04:07,463.463 INFO    ] 200
[2026-06-22 02:04:07,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:04:07,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:04:07,521.521 INFO    ] No update needed
[2026-06-22 02:04:07,523.523 INFO    ] Checking for camera pi updates...
[2026-06-22 02:04:07,557.557 INFO    ] 200
[2026-06-22 02:04:07,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:04:07,601.601 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:04:07,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:04:07,686.686 INFO    ] No camera update needed
[2026-06-22 02:04:07,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:04:07,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:04:07,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:04:07,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:04:09,744.744 INFO    ] ================================================
[2026-06-22 02:04:09,759.759 INFO    ] Launching Daemon at Mon Jun 22 02:04:09 IST 2026
[2026-06-22 02:04:09,770.770 INFO    ] ================================================
[2026-06-22 02:04:10,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:04:10
[2026-06-22 02:04:10,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:04:11,154.154 INFO    ] Initializing speech engine...
[2026-06-22 02:04:11,163.163 INFO    ] 2026-06-22 02:04:11
[2026-06-22 02:04:11,424.424 INFO    ] 2026-06-22 02:04:11
[2026-06-22 02:04:11,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:04:11,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:04:11,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:04:11,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:04:11,873.873 INFO    ] time= 22/06/2026 02:04:11
[2026-06-22 02:04:11,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:04:11,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:04:12,034.034 INFO    ] No existing commands found in stream
[2026-06-22 02:04:17,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:04:17,051.051 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-22 02:04:19,933.933 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:04:19,934.934 INFO    ] Checking for system updates...
[2026-06-22 02:04:19,968.968 INFO    ] 200
[2026-06-22 02:04:19,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:04:20,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:04:20,032.032 INFO    ] No update needed
[2026-06-22 02:04:20,034.034 INFO    ] Checking for camera pi updates...
[2026-06-22 02:04:20,069.069 INFO    ] 200
[2026-06-22 02:04:20,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:04:20,120.120 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:04:20,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:04:20,220.220 INFO    ] No camera update needed
[2026-06-22 02:04:20,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:04:20,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:04:20,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:04:20,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:04:22,277.277 INFO    ] ================================================
[2026-06-22 02:04:22,293.293 INFO    ] Launching Daemon at Mon Jun 22 02:04:22 IST 2026
[2026-06-22 02:04:22,304.304 INFO    ] ================================================
[2026-06-22 02:04:22,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:04:22
[2026-06-22 02:04:23,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:04:23,723.723 INFO    ] Initializing speech engine...
[2026-06-22 02:04:23,738.738 INFO    ] 2026-06-22 02:04:23
[2026-06-22 02:04:24,005.005 INFO    ] 2026-06-22 02:04:23
[2026-06-22 02:04:24,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:04:24,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:04:24,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:04:24,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:04:24,381.381 INFO    ] time= 22/06/2026 02:04:24
[2026-06-22 02:04:24,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:04:24,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:04:24,456.456 INFO    ] No existing commands found in stream
[2026-06-22 02:04:29,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:04:29,471.471 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-22 02:04:33,105.105 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:04:33,108.108 INFO    ] Checking for system updates...
[2026-06-22 02:04:33,143.143 INFO    ] 200
[2026-06-22 02:04:33,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:04:33,198.198 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:04:33,201.201 INFO    ] No update needed
[2026-06-22 02:04:33,203.203 INFO    ] Checking for camera pi updates...
[2026-06-22 02:04:33,238.238 INFO    ] 200
[2026-06-22 02:04:33,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:04:33,281.281 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:04:33,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:04:33,371.371 INFO    ] No camera update needed
[2026-06-22 02:04:33,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:04:33,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:04:33,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:04:33,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:04:35,427.427 INFO    ] ================================================
[2026-06-22 02:04:35,442.442 INFO    ] Launching Daemon at Mon Jun 22 02:04:35 IST 2026
[2026-06-22 02:04:35,453.453 INFO    ] ================================================
[2026-06-22 02:04:35,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:04:35
[2026-06-22 02:04:36,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:04:36,845.845 INFO    ] Initializing speech engine...
[2026-06-22 02:04:36,860.860 INFO    ] 2026-06-22 02:04:36
[2026-06-22 02:04:37,126.126 INFO    ] 2026-06-22 02:04:37
[2026-06-22 02:04:37,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:04:37,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:04:37,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:04:37,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:04:37,497.497 INFO    ] time= 22/06/2026 02:04:37
[2026-06-22 02:04:37,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:04:37,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:04:37,679.679 INFO    ] No existing commands found in stream
[2026-06-22 02:04:42,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:04:42,709.709 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-22 02:04:46,964.964 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:04:46,966.966 INFO    ] Checking for system updates...
[2026-06-22 02:04:46,994.994 INFO    ] 200
[2026-06-22 02:04:46,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:04:47,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:04:47,060.060 INFO    ] No update needed
[2026-06-22 02:04:47,062.062 INFO    ] Checking for camera pi updates...
[2026-06-22 02:04:47,096.096 INFO    ] 200
[2026-06-22 02:04:47,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:04:47,138.138 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:04:47,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:04:47,208.208 INFO    ] No camera update needed
[2026-06-22 02:04:47,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:04:47,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:04:47,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:04:47,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:04:49,266.266 INFO    ] ================================================
[2026-06-22 02:04:49,281.281 INFO    ] Launching Daemon at Mon Jun 22 02:04:49 IST 2026
[2026-06-22 02:04:49,292.292 INFO    ] ================================================
[2026-06-22 02:04:49,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:04:49
[2026-06-22 02:04:50,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:04:50,773.773 INFO    ] Initializing speech engine...
[2026-06-22 02:04:50,796.796 INFO    ] 2026-06-22 02:04:50
[2026-06-22 02:04:51,069.069 INFO    ] 2026-06-22 02:04:51
[2026-06-22 02:04:51,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:04:51,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:04:51,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:04:51,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:04:51,566.566 INFO    ] time= 22/06/2026 02:04:51
[2026-06-22 02:04:51,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:04:51,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:04:51,765.765 INFO    ] No existing commands found in stream
[2026-06-22 02:04:56,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:04:56,800.800 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-22 02:04:57,795.795 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:04:57,797.797 INFO    ] Checking for system updates...
[2026-06-22 02:04:57,817.817 INFO    ] 200
[2026-06-22 02:04:57,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:04:57,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:04:57,852.852 INFO    ] No update needed
[2026-06-22 02:04:57,853.853 INFO    ] Checking for camera pi updates...
[2026-06-22 02:04:57,873.873 INFO    ] 200
[2026-06-22 02:04:57,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:04:57,918.918 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:04:58,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:04:58,094.094 INFO    ] No camera update needed
[2026-06-22 02:04:58,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:04:58,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:04:58,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:04:58,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:05:00,154.154 INFO    ] ================================================
[2026-06-22 02:05:00,169.169 INFO    ] Launching Daemon at Mon Jun 22 02:05:00 IST 2026
[2026-06-22 02:05:00,180.180 INFO    ] ================================================
[2026-06-22 02:05:00,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:05:00
[2026-06-22 02:05:01,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:05:02,254.254 INFO    ] Initializing speech engine...
[2026-06-22 02:05:02,264.264 INFO    ] 2026-06-22 02:05:02
[2026-06-22 02:05:02,635.635 INFO    ] 2026-06-22 02:05:02
[2026-06-22 02:05:02,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:05:02,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:05:02,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:05:03,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:05:03,177.177 INFO    ] time= 22/06/2026 02:05:03
[2026-06-22 02:05:03,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:05:03,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:05:03,352.352 INFO    ] No existing commands found in stream
[2026-06-22 02:05:08,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:05:08,391.391 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-22 02:05:12,405.405 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:05:12,408.408 INFO    ] Checking for system updates...
[2026-06-22 02:05:12,445.445 INFO    ] 200
[2026-06-22 02:05:12,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:05:12,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:05:12,503.503 INFO    ] No update needed
[2026-06-22 02:05:12,505.505 INFO    ] Checking for camera pi updates...
[2026-06-22 02:05:12,544.544 INFO    ] 200
[2026-06-22 02:05:12,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:05:12,593.593 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:05:12,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:05:12,702.702 INFO    ] No camera update needed
[2026-06-22 02:05:12,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:05:12,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:05:12,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:05:12,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:05:14,757.757 INFO    ] ================================================
[2026-06-22 02:05:14,773.773 INFO    ] Launching Daemon at Mon Jun 22 02:05:14 IST 2026
[2026-06-22 02:05:14,784.784 INFO    ] ================================================
[2026-06-22 02:05:15,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:05:15
[2026-06-22 02:05:15,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:05:16,164.164 INFO    ] Initializing speech engine...
[2026-06-22 02:05:16,170.170 INFO    ] 2026-06-22 02:05:16
[2026-06-22 02:05:16,455.455 INFO    ] 2026-06-22 02:05:16
[2026-06-22 02:05:16,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:05:16,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:05:16,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:05:16,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:05:16,938.938 INFO    ] time= 22/06/2026 02:05:16
[2026-06-22 02:05:17,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:05:17,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:05:17,146.146 INFO    ] No existing commands found in stream
[2026-06-22 02:05:22,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:05:22,180.180 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-22 02:05:25,263.263 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:05:25,267.267 INFO    ] Checking for system updates...
[2026-06-22 02:05:25,305.305 INFO    ] 200
[2026-06-22 02:05:25,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:05:25,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:05:25,363.363 INFO    ] No update needed
[2026-06-22 02:05:25,366.366 INFO    ] Checking for camera pi updates...
[2026-06-22 02:05:25,400.400 INFO    ] 200
[2026-06-22 02:05:25,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:05:25,435.435 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:05:25,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:05:25,521.521 INFO    ] No camera update needed
[2026-06-22 02:05:25,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:05:25,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:05:25,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:05:25,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:05:27,576.576 INFO    ] ================================================
[2026-06-22 02:05:27,592.592 INFO    ] Launching Daemon at Mon Jun 22 02:05:27 IST 2026
[2026-06-22 02:05:27,603.603 INFO    ] ================================================
[2026-06-22 02:05:28,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:05:28
[2026-06-22 02:05:28,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:05:29,132.132 INFO    ] Initializing speech engine...
[2026-06-22 02:05:29,145.145 INFO    ] 2026-06-22 02:05:29
[2026-06-22 02:05:29,392.392 INFO    ] 2026-06-22 02:05:29
[2026-06-22 02:05:29,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:05:29,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:05:29,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:05:29,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:05:29,723.723 INFO    ] time= 22/06/2026 02:05:29
[2026-06-22 02:05:29,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:05:29,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:05:29,803.803 INFO    ] No existing commands found in stream
[2026-06-22 02:05:34,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:05:34,817.817 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-22 02:05:36,203.203 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:05:36,206.206 INFO    ] Checking for system updates...
[2026-06-22 02:05:36,243.243 INFO    ] 200
[2026-06-22 02:05:36,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:05:36,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:05:36,308.308 INFO    ] No update needed
[2026-06-22 02:05:36,311.311 INFO    ] Checking for camera pi updates...
[2026-06-22 02:05:36,346.346 INFO    ] 200
[2026-06-22 02:05:36,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:05:36,395.395 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:05:36,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:05:36,448.448 INFO    ] No camera update needed
[2026-06-22 02:05:36,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:05:36,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:05:36,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:05:36,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:05:38,505.505 INFO    ] ================================================
[2026-06-22 02:05:38,521.521 INFO    ] Launching Daemon at Mon Jun 22 02:05:38 IST 2026
[2026-06-22 02:05:38,532.532 INFO    ] ================================================
[2026-06-22 02:05:39,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:05:39
[2026-06-22 02:05:39,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:05:39,898.898 INFO    ] Initializing speech engine...
[2026-06-22 02:05:39,904.904 INFO    ] 2026-06-22 02:05:39
[2026-06-22 02:05:40,204.204 INFO    ] 2026-06-22 02:05:40
[2026-06-22 02:05:40,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:05:40,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:05:40,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:05:40,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:05:40,565.565 INFO    ] time= 22/06/2026 02:05:40
[2026-06-22 02:05:40,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:05:40,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:05:40,646.646 INFO    ] No existing commands found in stream
[2026-06-22 02:05:45,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:05:45,660.660 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-22 02:05:47,488.488 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:05:47,489.489 INFO    ] Checking for system updates...
[2026-06-22 02:05:47,510.510 INFO    ] 200
[2026-06-22 02:05:47,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:05:47,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:05:47,569.569 INFO    ] No update needed
[2026-06-22 02:05:47,572.572 INFO    ] Checking for camera pi updates...
[2026-06-22 02:05:47,605.605 INFO    ] 200
[2026-06-22 02:05:47,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:05:47,654.654 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:05:47,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:05:47,742.742 INFO    ] No camera update needed
[2026-06-22 02:05:47,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:05:47,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:05:47,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:05:47,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:05:49,800.800 INFO    ] ================================================
[2026-06-22 02:05:49,816.816 INFO    ] Launching Daemon at Mon Jun 22 02:05:49 IST 2026
[2026-06-22 02:05:49,826.826 INFO    ] ================================================
[2026-06-22 02:05:50,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:05:50
[2026-06-22 02:05:50,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:05:51,249.249 INFO    ] Initializing speech engine...
[2026-06-22 02:05:51,270.270 INFO    ] 2026-06-22 02:05:51
[2026-06-22 02:05:51,552.552 INFO    ] 2026-06-22 02:05:51
[2026-06-22 02:05:51,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:05:51,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:05:51,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:05:51,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:05:51,953.953 INFO    ] time= 22/06/2026 02:05:51
[2026-06-22 02:05:51,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:05:51,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:05:52,061.061 INFO    ] No existing commands found in stream
[2026-06-22 02:05:57,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:05:57,076.076 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-22 02:05:58,577.577 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:05:58,580.580 INFO    ] Checking for system updates...
[2026-06-22 02:05:58,618.618 INFO    ] 200
[2026-06-22 02:05:58,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:05:58,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:05:58,678.678 INFO    ] No update needed
[2026-06-22 02:05:58,680.680 INFO    ] Checking for camera pi updates...
[2026-06-22 02:05:58,716.716 INFO    ] 200
[2026-06-22 02:05:58,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:05:58,749.749 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:05:58,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:05:58,838.838 INFO    ] No camera update needed
[2026-06-22 02:05:58,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:05:58,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:05:58,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:05:58,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:06:00,900.900 INFO    ] ================================================
[2026-06-22 02:06:00,917.917 INFO    ] Launching Daemon at Mon Jun 22 02:06:00 IST 2026
[2026-06-22 02:06:00,928.928 INFO    ] ================================================
[2026-06-22 02:06:01,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:06:01
[2026-06-22 02:06:02,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:06:02,591.591 INFO    ] Initializing speech engine...
[2026-06-22 02:06:02,616.616 INFO    ] 2026-06-22 02:06:02
[2026-06-22 02:06:02,900.900 INFO    ] 2026-06-22 02:06:02
[2026-06-22 02:06:02,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:06:03,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:06:03,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:06:03,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:06:03,327.327 INFO    ] time= 22/06/2026 02:06:03
[2026-06-22 02:06:03,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:06:03,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:06:03,433.433 INFO    ] No existing commands found in stream
[2026-06-22 02:06:08,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:06:08,471.471 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-22 02:06:10,068.068 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:06:10,071.071 INFO    ] Checking for system updates...
[2026-06-22 02:06:10,107.107 INFO    ] 200
[2026-06-22 02:06:10,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:06:10,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:06:10,174.174 INFO    ] No update needed
[2026-06-22 02:06:10,177.177 INFO    ] Checking for camera pi updates...
[2026-06-22 02:06:10,210.210 INFO    ] 200
[2026-06-22 02:06:10,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:06:10,259.259 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:06:10,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:06:10,334.334 INFO    ] No camera update needed
[2026-06-22 02:06:10,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:06:10,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:06:10,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:06:10,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:06:12,390.390 INFO    ] ================================================
[2026-06-22 02:06:12,407.407 INFO    ] Launching Daemon at Mon Jun 22 02:06:12 IST 2026
[2026-06-22 02:06:12,419.419 INFO    ] ================================================
[2026-06-22 02:06:12,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:06:12
[2026-06-22 02:06:13,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:06:13,852.852 INFO    ] Initializing speech engine...
[2026-06-22 02:06:13,867.867 INFO    ] 2026-06-22 02:06:13
[2026-06-22 02:06:14,155.155 INFO    ] 2026-06-22 02:06:14
[2026-06-22 02:06:14,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:06:14,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:06:14,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:06:14,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:06:14,536.536 INFO    ] time= 22/06/2026 02:06:14
[2026-06-22 02:06:14,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:06:14,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:06:14,663.663 INFO    ] No existing commands found in stream
[2026-06-22 02:06:19,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:06:19,678.678 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-22 02:06:21,932.932 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:06:21,935.935 INFO    ] Checking for system updates...
[2026-06-22 02:06:21,971.971 INFO    ] 200
[2026-06-22 02:06:21,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:06:22,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:06:22,029.029 INFO    ] No update needed
[2026-06-22 02:06:22,032.032 INFO    ] Checking for camera pi updates...
[2026-06-22 02:06:22,066.066 INFO    ] 200
[2026-06-22 02:06:22,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:06:22,109.109 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:06:22,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:06:22,196.196 INFO    ] No camera update needed
[2026-06-22 02:06:22,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:06:22,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:06:22,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:06:22,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:06:24,253.253 INFO    ] ================================================
[2026-06-22 02:06:24,269.269 INFO    ] Launching Daemon at Mon Jun 22 02:06:24 IST 2026
[2026-06-22 02:06:24,281.281 INFO    ] ================================================
[2026-06-22 02:06:24,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:06:24
[2026-06-22 02:06:25,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:06:25,641.641 INFO    ] Initializing speech engine...
[2026-06-22 02:06:25,656.656 INFO    ] 2026-06-22 02:06:25
[2026-06-22 02:06:25,942.942 INFO    ] 2026-06-22 02:06:25
[2026-06-22 02:06:25,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:06:26,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:06:26,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:06:26,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:06:26,322.322 INFO    ] time= 22/06/2026 02:06:26
[2026-06-22 02:06:26,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:06:26,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:06:26,449.449 INFO    ] No existing commands found in stream
[2026-06-22 02:06:31,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:06:31,464.464 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-22 02:06:34,256.256 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:06:34,258.258 INFO    ] Checking for system updates...
[2026-06-22 02:06:34,295.295 INFO    ] 200
[2026-06-22 02:06:34,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:06:34,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:06:34,359.359 INFO    ] No update needed
[2026-06-22 02:06:34,361.361 INFO    ] Checking for camera pi updates...
[2026-06-22 02:06:34,399.399 INFO    ] 200
[2026-06-22 02:06:34,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:06:34,442.442 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:06:34,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:06:34,536.536 INFO    ] No camera update needed
[2026-06-22 02:06:34,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:06:34,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:06:34,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:06:34,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:06:36,592.592 INFO    ] ================================================
[2026-06-22 02:06:36,608.608 INFO    ] Launching Daemon at Mon Jun 22 02:06:36 IST 2026
[2026-06-22 02:06:36,619.619 INFO    ] ================================================
[2026-06-22 02:06:37,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:06:37
[2026-06-22 02:06:37,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:06:38,238.238 INFO    ] Initializing speech engine...
[2026-06-22 02:06:38,250.250 INFO    ] 2026-06-22 02:06:38
[2026-06-22 02:06:38,534.534 INFO    ] 2026-06-22 02:06:38
[2026-06-22 02:06:38,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:06:38,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:06:38,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:06:38,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:06:38,978.978 INFO    ] time= 22/06/2026 02:06:38
[2026-06-22 02:06:39,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:06:39,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:06:39,147.147 INFO    ] No existing commands found in stream
[2026-06-22 02:06:44,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:06:44,163.163 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-22 02:06:45,848.848 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:06:45,851.851 INFO    ] Checking for system updates...
[2026-06-22 02:06:45,889.889 INFO    ] 200
[2026-06-22 02:06:45,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:06:45,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:06:45,980.980 INFO    ] No update needed
[2026-06-22 02:06:45,984.984 INFO    ] Checking for camera pi updates...
[2026-06-22 02:06:46,027.027 INFO    ] 200
[2026-06-22 02:06:46,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:06:46,082.082 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:06:46,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:06:46,166.166 INFO    ] No camera update needed
[2026-06-22 02:06:46,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:06:46,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:06:46,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:06:46,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:06:48,222.222 INFO    ] ================================================
[2026-06-22 02:06:48,237.237 INFO    ] Launching Daemon at Mon Jun 22 02:06:48 IST 2026
[2026-06-22 02:06:48,248.248 INFO    ] ================================================
[2026-06-22 02:06:48,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:06:48
[2026-06-22 02:06:49,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:06:49,599.599 INFO    ] Initializing speech engine...
[2026-06-22 02:06:49,606.606 INFO    ] 2026-06-22 02:06:49
[2026-06-22 02:06:49,851.851 INFO    ] 2026-06-22 02:06:49
[2026-06-22 02:06:49,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:06:50,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:06:50,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:06:50,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:06:50,325.325 INFO    ] time= 22/06/2026 02:06:50
[2026-06-22 02:06:50,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:06:50,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:06:50,471.471 INFO    ] No existing commands found in stream
[2026-06-22 02:06:55,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:06:55,486.486 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-22 02:06:57,010.010 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:06:57,012.012 INFO    ] Checking for system updates...
[2026-06-22 02:06:57,049.049 INFO    ] 200
[2026-06-22 02:06:57,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:06:57,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:06:57,106.106 INFO    ] No update needed
[2026-06-22 02:06:57,109.109 INFO    ] Checking for camera pi updates...
[2026-06-22 02:06:57,143.143 INFO    ] 200
[2026-06-22 02:06:57,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:06:57,187.187 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:06:57,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:06:57,282.282 INFO    ] No camera update needed
[2026-06-22 02:06:57,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:06:57,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:06:57,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:06:57,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:06:59,338.338 INFO    ] ================================================
[2026-06-22 02:06:59,355.355 INFO    ] Launching Daemon at Mon Jun 22 02:06:59 IST 2026
[2026-06-22 02:06:59,367.367 INFO    ] ================================================
[2026-06-22 02:06:59,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:06:59
[2026-06-22 02:07:00,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:07:00,699.699 INFO    ] Initializing speech engine...
[2026-06-22 02:07:00,711.711 INFO    ] 2026-06-22 02:07:00
[2026-06-22 02:07:00,976.976 INFO    ] 2026-06-22 02:07:00
[2026-06-22 02:07:01,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:07:01,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:07:01,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:07:01,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:07:01,371.371 INFO    ] time= 22/06/2026 02:07:01
[2026-06-22 02:07:01,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:07:01,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:07:01,481.481 INFO    ] No existing commands found in stream
[2026-06-22 02:07:06,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:07:06,497.497 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-22 02:07:10,209.209 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:07:10,210.210 INFO    ] Checking for system updates...
[2026-06-22 02:07:10,231.231 INFO    ] 200
[2026-06-22 02:07:10,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:07:10,267.267 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:07:10,270.270 INFO    ] No update needed
[2026-06-22 02:07:10,272.272 INFO    ] Checking for camera pi updates...
[2026-06-22 02:07:10,306.306 INFO    ] 200
[2026-06-22 02:07:10,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:07:10,349.349 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:07:10,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:07:10,436.436 INFO    ] No camera update needed
[2026-06-22 02:07:10,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:07:10,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:07:10,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:07:10,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:07:12,491.491 INFO    ] ================================================
[2026-06-22 02:07:12,507.507 INFO    ] Launching Daemon at Mon Jun 22 02:07:12 IST 2026
[2026-06-22 02:07:12,518.518 INFO    ] ================================================
[2026-06-22 02:07:13,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:07:13
[2026-06-22 02:07:13,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:07:13,948.948 INFO    ] Initializing speech engine...
[2026-06-22 02:07:13,957.957 INFO    ] 2026-06-22 02:07:13
[2026-06-22 02:07:14,206.206 INFO    ] 2026-06-22 02:07:14
[2026-06-22 02:07:14,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:07:14,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:07:14,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:07:14,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:07:14,642.642 INFO    ] time= 22/06/2026 02:07:14
[2026-06-22 02:07:14,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:07:14,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:07:14,815.815 INFO    ] No existing commands found in stream
[2026-06-22 02:07:19,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:07:19,828.828 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-22 02:07:23,986.986 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:07:23,989.989 INFO    ] Checking for system updates...
[2026-06-22 02:07:24,025.025 INFO    ] 200
[2026-06-22 02:07:24,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:07:24,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:07:24,091.091 INFO    ] No update needed
[2026-06-22 02:07:24,093.093 INFO    ] Checking for camera pi updates...
[2026-06-22 02:07:24,132.132 INFO    ] 200
[2026-06-22 02:07:24,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:07:24,176.176 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:07:24,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:07:24,265.265 INFO    ] No camera update needed
[2026-06-22 02:07:24,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:07:24,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:07:24,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:07:24,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:07:26,322.322 INFO    ] ================================================
[2026-06-22 02:07:26,337.337 INFO    ] Launching Daemon at Mon Jun 22 02:07:26 IST 2026
[2026-06-22 02:07:26,348.348 INFO    ] ================================================
[2026-06-22 02:07:26,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:07:26
[2026-06-22 02:07:27,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:07:27,686.686 INFO    ] Initializing speech engine...
[2026-06-22 02:07:27,695.695 INFO    ] 2026-06-22 02:07:27
[2026-06-22 02:07:27,946.946 INFO    ] 2026-06-22 02:07:27
[2026-06-22 02:07:27,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:07:28,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:07:28,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:07:28,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:07:28,433.433 INFO    ] time= 22/06/2026 02:07:28
[2026-06-22 02:07:28,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:07:28,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:07:28,584.584 INFO    ] No existing commands found in stream
[2026-06-22 02:07:33,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:07:33,600.600 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-22 02:07:36,507.507 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:07:36,509.509 INFO    ] Checking for system updates...
[2026-06-22 02:07:36,530.530 INFO    ] 200
[2026-06-22 02:07:36,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:07:36,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:07:36,564.564 INFO    ] No update needed
[2026-06-22 02:07:36,566.566 INFO    ] Checking for camera pi updates...
[2026-06-22 02:07:36,586.586 INFO    ] 200
[2026-06-22 02:07:36,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:07:36,625.625 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:07:36,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:07:36,727.727 INFO    ] No camera update needed
[2026-06-22 02:07:36,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:07:36,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:07:36,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:07:36,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:07:38,785.785 INFO    ] ================================================
[2026-06-22 02:07:38,800.800 INFO    ] Launching Daemon at Mon Jun 22 02:07:38 IST 2026
[2026-06-22 02:07:38,811.811 INFO    ] ================================================
[2026-06-22 02:07:39,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:07:39
[2026-06-22 02:07:39,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:07:40,238.238 INFO    ] Initializing speech engine...
[2026-06-22 02:07:40,247.247 INFO    ] 2026-06-22 02:07:40
[2026-06-22 02:07:40,493.493 INFO    ] 2026-06-22 02:07:40
[2026-06-22 02:07:40,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:07:40,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:07:40,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:07:40,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:07:40,966.966 INFO    ] time= 22/06/2026 02:07:40
[2026-06-22 02:07:41,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:07:41,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:07:41,118.118 INFO    ] No existing commands found in stream
[2026-06-22 02:07:46,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:07:46,133.133 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-22 02:07:49,077.077 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:07:49,079.079 INFO    ] Checking for system updates...
[2026-06-22 02:07:49,101.101 INFO    ] 200
[2026-06-22 02:07:49,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:07:49,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:07:49,151.151 INFO    ] No update needed
[2026-06-22 02:07:49,153.153 INFO    ] Checking for camera pi updates...
[2026-06-22 02:07:49,187.187 INFO    ] 200
[2026-06-22 02:07:49,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:07:49,231.231 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:07:49,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:07:49,333.333 INFO    ] No camera update needed
[2026-06-22 02:07:49,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:07:49,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:07:49,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:07:49,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:07:51,388.388 INFO    ] ================================================
[2026-06-22 02:07:51,404.404 INFO    ] Launching Daemon at Mon Jun 22 02:07:51 IST 2026
[2026-06-22 02:07:51,414.414 INFO    ] ================================================
[2026-06-22 02:07:52,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:07:52
[2026-06-22 02:07:52,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:07:52,889.889 INFO    ] Initializing speech engine...
[2026-06-22 02:07:52,905.905 INFO    ] 2026-06-22 02:07:52
[2026-06-22 02:07:53,159.159 INFO    ] 2026-06-22 02:07:53
[2026-06-22 02:07:53,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:07:53,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:07:53,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:07:53,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:07:53,529.529 INFO    ] time= 22/06/2026 02:07:53
[2026-06-22 02:07:53,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:07:53,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:07:53,711.711 INFO    ] No existing commands found in stream
[2026-06-22 02:07:58,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:07:58,738.738 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-22 02:07:59,880.880 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:07:59,881.881 INFO    ] Checking for system updates...
[2026-06-22 02:07:59,903.903 INFO    ] 200
[2026-06-22 02:07:59,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:07:59,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:07:59,964.964 INFO    ] No update needed
[2026-06-22 02:07:59,966.966 INFO    ] Checking for camera pi updates...
[2026-06-22 02:08:00,000.000 INFO    ] 200
[2026-06-22 02:08:00,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:08:00,043.043 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:08:00,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:08:00,133.133 INFO    ] No camera update needed
[2026-06-22 02:08:00,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:08:00,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:08:00,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:08:00,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:08:02,191.191 INFO    ] ================================================
[2026-06-22 02:08:02,211.211 INFO    ] Launching Daemon at Mon Jun 22 02:08:02 IST 2026
[2026-06-22 02:08:02,227.227 INFO    ] ================================================
[2026-06-22 02:08:02,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:08:02
[2026-06-22 02:08:03,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:08:03,855.855 INFO    ] Initializing speech engine...
[2026-06-22 02:08:03,869.869 INFO    ] 2026-06-22 02:08:03
[2026-06-22 02:08:04,139.139 INFO    ] 2026-06-22 02:08:04
[2026-06-22 02:08:04,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:08:04,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:08:04,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:08:04,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:08:04,516.516 INFO    ] time= 22/06/2026 02:08:04
[2026-06-22 02:08:04,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:08:04,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:08:04,690.690 INFO    ] No existing commands found in stream
[2026-06-22 02:08:09,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:08:09,723.723 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-22 02:08:10,798.798 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:08:10,800.800 INFO    ] Checking for system updates...
[2026-06-22 02:08:10,836.836 INFO    ] 200
[2026-06-22 02:08:10,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:08:10,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:08:10,902.902 INFO    ] No update needed
[2026-06-22 02:08:10,904.904 INFO    ] Checking for camera pi updates...
[2026-06-22 02:08:10,942.942 INFO    ] 200
[2026-06-22 02:08:10,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:08:10,991.991 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:08:11,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:08:11,078.078 INFO    ] No camera update needed
[2026-06-22 02:08:11,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:08:11,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:08:11,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:08:11,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:08:13,135.135 INFO    ] ================================================
[2026-06-22 02:08:13,151.151 INFO    ] Launching Daemon at Mon Jun 22 02:08:13 IST 2026
[2026-06-22 02:08:13,162.162 INFO    ] ================================================
[2026-06-22 02:08:13,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:08:13
[2026-06-22 02:08:14,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:08:14,496.496 INFO    ] Initializing speech engine...
[2026-06-22 02:08:14,505.505 INFO    ] 2026-06-22 02:08:14
[2026-06-22 02:08:14,755.755 INFO    ] 2026-06-22 02:08:14
[2026-06-22 02:08:14,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:08:14,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:08:15,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:08:15,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:08:15,201.201 INFO    ] time= 22/06/2026 02:08:15
[2026-06-22 02:08:15,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:08:15,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:08:15,385.385 INFO    ] No existing commands found in stream
[2026-06-22 02:08:20,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:08:20,400.400 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-22 02:08:21,113.113 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:08:21,114.114 INFO    ] Checking for system updates...
[2026-06-22 02:08:21,136.136 INFO    ] 200
[2026-06-22 02:08:21,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:08:21,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:08:21,169.169 INFO    ] No update needed
[2026-06-22 02:08:21,171.171 INFO    ] Checking for camera pi updates...
[2026-06-22 02:08:21,192.192 INFO    ] 200
[2026-06-22 02:08:21,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:08:21,240.240 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:08:21,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:08:21,328.328 INFO    ] No camera update needed
[2026-06-22 02:08:21,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:08:21,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:08:21,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:08:21,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:08:23,388.388 INFO    ] ================================================
[2026-06-22 02:08:23,403.403 INFO    ] Launching Daemon at Mon Jun 22 02:08:23 IST 2026
[2026-06-22 02:08:23,414.414 INFO    ] ================================================
[2026-06-22 02:08:24,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:08:24
[2026-06-22 02:08:24,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:08:24,990.990 INFO    ] Initializing speech engine...
[2026-06-22 02:08:24,996.996 INFO    ] 2026-06-22 02:08:24
[2026-06-22 02:08:25,275.275 INFO    ] 2026-06-22 02:08:25
[2026-06-22 02:08:25,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:08:25,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:08:25,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:08:25,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:08:25,747.747 INFO    ] time= 22/06/2026 02:08:25
[2026-06-22 02:08:25,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:08:25,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:08:25,895.895 INFO    ] No existing commands found in stream
[2026-06-22 02:08:30,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:08:30,919.919 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-22 02:08:32,656.656 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:08:32,659.659 INFO    ] Checking for system updates...
[2026-06-22 02:08:32,699.699 INFO    ] 200
[2026-06-22 02:08:32,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:08:32,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:08:32,765.765 INFO    ] No update needed
[2026-06-22 02:08:32,768.768 INFO    ] Checking for camera pi updates...
[2026-06-22 02:08:32,805.805 INFO    ] 200
[2026-06-22 02:08:32,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:08:32,855.855 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:08:32,914.914 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:08:32,918.918 INFO    ] No camera update needed
[2026-06-22 02:08:32,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:08:32,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:08:32,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:08:32,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:08:34,984.984 INFO    ] ================================================
[2026-06-22 02:08:35,000.000 INFO    ] Launching Daemon at Mon Jun 22 02:08:34 IST 2026
[2026-06-22 02:08:35,012.012 INFO    ] ================================================
[2026-06-22 02:08:35,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:08:35
[2026-06-22 02:08:36,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:08:36,348.348 INFO    ] Initializing speech engine...
[2026-06-22 02:08:36,359.359 INFO    ] 2026-06-22 02:08:36
[2026-06-22 02:08:36,608.608 INFO    ] 2026-06-22 02:08:36
[2026-06-22 02:08:36,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:08:36,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:08:36,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:08:36,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:08:36,951.951 INFO    ] time= 22/06/2026 02:08:36
[2026-06-22 02:08:36,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:08:36,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:08:37,064.064 INFO    ] No existing commands found in stream
[2026-06-22 02:08:42,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:08:42,078.078 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-22 02:08:42,516.516 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:08:42,517.517 INFO    ] Checking for system updates...
[2026-06-22 02:08:42,540.540 INFO    ] 200
[2026-06-22 02:08:42,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:08:42,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:08:42,579.579 INFO    ] No update needed
[2026-06-22 02:08:42,580.580 INFO    ] Checking for camera pi updates...
[2026-06-22 02:08:42,617.617 INFO    ] 200
[2026-06-22 02:08:42,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:08:42,668.668 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:08:42,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:08:42,760.760 INFO    ] No camera update needed
[2026-06-22 02:08:42,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:08:42,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:08:42,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:08:42,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:08:44,821.821 INFO    ] ================================================
[2026-06-22 02:08:44,837.837 INFO    ] Launching Daemon at Mon Jun 22 02:08:44 IST 2026
[2026-06-22 02:08:44,848.848 INFO    ] ================================================
[2026-06-22 02:08:45,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:08:45
[2026-06-22 02:08:46,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:08:46,347.347 INFO    ] Initializing speech engine...
[2026-06-22 02:08:46,355.355 INFO    ] 2026-06-22 02:08:46
[2026-06-22 02:08:46,647.647 INFO    ] 2026-06-22 02:08:46
[2026-06-22 02:08:46,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:08:46,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:08:46,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:08:47,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:08:47,136.136 INFO    ] time= 22/06/2026 02:08:47
[2026-06-22 02:08:47,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:08:47,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:08:47,328.328 INFO    ] No existing commands found in stream
[2026-06-22 02:08:52,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:08:52,363.363 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-22 02:08:53,161.161 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:08:53,163.163 INFO    ] Checking for system updates...
[2026-06-22 02:08:53,186.186 INFO    ] 200
[2026-06-22 02:08:53,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:08:53,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:08:53,247.247 INFO    ] No update needed
[2026-06-22 02:08:53,250.250 INFO    ] Checking for camera pi updates...
[2026-06-22 02:08:53,285.285 INFO    ] 200
[2026-06-22 02:08:53,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:08:53,335.335 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:08:53,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:08:53,440.440 INFO    ] No camera update needed
[2026-06-22 02:08:53,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:08:53,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:08:53,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:08:53,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:08:55,499.499 INFO    ] ================================================
[2026-06-22 02:08:55,515.515 INFO    ] Launching Daemon at Mon Jun 22 02:08:55 IST 2026
[2026-06-22 02:08:55,526.526 INFO    ] ================================================
[2026-06-22 02:08:56,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:08:56
[2026-06-22 02:08:56,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:08:56,940.940 INFO    ] Initializing speech engine...
[2026-06-22 02:08:56,962.962 INFO    ] 2026-06-22 02:08:56
[2026-06-22 02:08:57,225.225 INFO    ] 2026-06-22 02:08:57
[2026-06-22 02:08:57,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:08:57,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:08:57,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:08:57,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:08:57,601.601 INFO    ] time= 22/06/2026 02:08:57
[2026-06-22 02:08:57,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:08:57,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:08:57,777.777 INFO    ] No existing commands found in stream
[2026-06-22 02:09:02,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:09:02,806.806 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-22 02:09:06,989.989 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:09:06,992.992 INFO    ] Checking for system updates...
[2026-06-22 02:09:07,029.029 INFO    ] 200
[2026-06-22 02:09:07,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:09:07,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:09:07,092.092 INFO    ] No update needed
[2026-06-22 02:09:07,094.094 INFO    ] Checking for camera pi updates...
[2026-06-22 02:09:07,131.131 INFO    ] 200
[2026-06-22 02:09:07,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:09:07,177.177 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:09:07,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:09:07,360.360 INFO    ] No camera update needed
[2026-06-22 02:09:07,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:09:07,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:09:07,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:09:07,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:09:09,416.416 INFO    ] ================================================
[2026-06-22 02:09:09,432.432 INFO    ] Launching Daemon at Mon Jun 22 02:09:09 IST 2026
[2026-06-22 02:09:09,443.443 INFO    ] ================================================
[2026-06-22 02:09:10,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:09:10
[2026-06-22 02:09:10,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:09:10,771.771 INFO    ] Initializing speech engine...
[2026-06-22 02:09:10,779.779 INFO    ] 2026-06-22 02:09:10
[2026-06-22 02:09:11,070.070 INFO    ] 2026-06-22 02:09:11
[2026-06-22 02:09:11,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:09:11,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:09:11,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:09:11,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:09:11,443.443 INFO    ] time= 22/06/2026 02:09:11
[2026-06-22 02:09:11,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:09:11,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:09:11,565.565 INFO    ] No existing commands found in stream
[2026-06-22 02:09:16,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:09:16,580.580 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-22 02:09:20,203.203 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:09:20,206.206 INFO    ] Checking for system updates...
[2026-06-22 02:09:20,243.243 INFO    ] 200
[2026-06-22 02:09:20,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:09:20,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:09:20,309.309 INFO    ] No update needed
[2026-06-22 02:09:20,311.311 INFO    ] Checking for camera pi updates...
[2026-06-22 02:09:20,346.346 INFO    ] 200
[2026-06-22 02:09:20,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:09:20,390.390 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:09:20,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:09:20,474.474 INFO    ] No camera update needed
[2026-06-22 02:09:20,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:09:20,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:09:20,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:09:20,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:09:22,532.532 INFO    ] ================================================
[2026-06-22 02:09:22,548.548 INFO    ] Launching Daemon at Mon Jun 22 02:09:22 IST 2026
[2026-06-22 02:09:22,559.559 INFO    ] ================================================
[2026-06-22 02:09:23,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:09:23
[2026-06-22 02:09:23,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:09:23,889.889 INFO    ] Initializing speech engine...
[2026-06-22 02:09:23,897.897 INFO    ] 2026-06-22 02:09:23
[2026-06-22 02:09:24,185.185 INFO    ] 2026-06-22 02:09:24
[2026-06-22 02:09:24,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:09:24,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:09:24,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:09:24,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:09:24,558.558 INFO    ] time= 22/06/2026 02:09:24
[2026-06-22 02:09:24,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:09:24,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:09:24,681.681 INFO    ] No existing commands found in stream
[2026-06-22 02:09:29,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:09:29,696.696 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-22 02:09:30,239.239 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:09:30,241.241 INFO    ] Checking for system updates...
[2026-06-22 02:09:30,277.277 INFO    ] 200
[2026-06-22 02:09:30,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:09:30,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:09:30,339.339 INFO    ] No update needed
[2026-06-22 02:09:30,342.342 INFO    ] Checking for camera pi updates...
[2026-06-22 02:09:30,386.386 INFO    ] 200
[2026-06-22 02:09:30,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:09:30,436.436 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:09:30,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:09:30,507.507 INFO    ] No camera update needed
[2026-06-22 02:09:30,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:09:30,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:09:30,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:09:30,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:09:32,568.568 INFO    ] ================================================
[2026-06-22 02:09:32,588.588 INFO    ] Launching Daemon at Mon Jun 22 02:09:32 IST 2026
[2026-06-22 02:09:32,604.604 INFO    ] ================================================
[2026-06-22 02:09:33,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:09:33
[2026-06-22 02:09:33,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:09:34,078.078 INFO    ] Initializing speech engine...
[2026-06-22 02:09:34,087.087 INFO    ] 2026-06-22 02:09:34
[2026-06-22 02:09:34,376.376 INFO    ] 2026-06-22 02:09:34
[2026-06-22 02:09:34,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:09:34,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:09:34,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:09:34,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:09:34,737.737 INFO    ] time= 22/06/2026 02:09:34
[2026-06-22 02:09:34,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:09:34,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:09:34,825.825 INFO    ] No existing commands found in stream
[2026-06-22 02:09:39,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:09:39,839.839 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-22 02:09:42,709.709 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:09:42,711.711 INFO    ] Checking for system updates...
[2026-06-22 02:09:42,747.747 INFO    ] 200
[2026-06-22 02:09:42,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:09:42,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:09:42,809.809 INFO    ] No update needed
[2026-06-22 02:09:42,811.811 INFO    ] Checking for camera pi updates...
[2026-06-22 02:09:42,848.848 INFO    ] 200
[2026-06-22 02:09:42,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:09:42,895.895 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:09:42,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:09:42,985.985 INFO    ] No camera update needed
[2026-06-22 02:09:42,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:09:42,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:09:42,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:09:43,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:09:45,040.040 INFO    ] ================================================
[2026-06-22 02:09:45,056.056 INFO    ] Launching Daemon at Mon Jun 22 02:09:45 IST 2026
[2026-06-22 02:09:45,067.067 INFO    ] ================================================
[2026-06-22 02:09:45,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:09:45
[2026-06-22 02:09:46,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:09:46,483.483 INFO    ] Initializing speech engine...
[2026-06-22 02:09:46,492.492 INFO    ] 2026-06-22 02:09:46
[2026-06-22 02:09:46,783.783 INFO    ] 2026-06-22 02:09:46
[2026-06-22 02:09:46,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:09:47,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:09:47,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:09:47,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:09:47,193.193 INFO    ] time= 22/06/2026 02:09:47
[2026-06-22 02:09:47,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:09:47,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:09:47,278.278 INFO    ] No existing commands found in stream
[2026-06-22 02:09:52,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:09:52,293.293 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-22 02:09:56,039.039 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:09:56,041.041 INFO    ] Checking for system updates...
[2026-06-22 02:09:56,078.078 INFO    ] 200
[2026-06-22 02:09:56,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:09:56,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:09:56,141.141 INFO    ] No update needed
[2026-06-22 02:09:56,143.143 INFO    ] Checking for camera pi updates...
[2026-06-22 02:09:56,178.178 INFO    ] 200
[2026-06-22 02:09:56,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:09:56,221.221 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:09:56,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:09:56,308.308 INFO    ] No camera update needed
[2026-06-22 02:09:56,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:09:56,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:09:56,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:09:56,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:09:58,368.368 INFO    ] ================================================
[2026-06-22 02:09:58,384.384 INFO    ] Launching Daemon at Mon Jun 22 02:09:58 IST 2026
[2026-06-22 02:09:58,395.395 INFO    ] ================================================
[2026-06-22 02:09:58,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:09:58
[2026-06-22 02:09:59,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:09:59,714.714 INFO    ] Initializing speech engine...
[2026-06-22 02:09:59,720.720 INFO    ] 2026-06-22 02:09:59
[2026-06-22 02:10:00,017.017 INFO    ] 2026-06-22 02:09:59
[2026-06-22 02:10:00,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:10:00,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:10:00,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:10:00,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:10:00,397.397 INFO    ] time= 22/06/2026 02:10:00
[2026-06-22 02:10:00,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:10:00,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:10:00,479.479 INFO    ] No existing commands found in stream
[2026-06-22 02:10:05,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:10:05,497.497 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-22 02:10:08,197.197 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:10:08,199.199 INFO    ] Checking for system updates...
[2026-06-22 02:10:08,237.237 INFO    ] 200
[2026-06-22 02:10:08,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:10:08,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:10:08,295.295 INFO    ] No update needed
[2026-06-22 02:10:08,298.298 INFO    ] Checking for camera pi updates...
[2026-06-22 02:10:08,331.331 INFO    ] 200
[2026-06-22 02:10:08,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:10:08,375.375 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:10:08,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:10:08,440.440 INFO    ] No camera update needed
[2026-06-22 02:10:08,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:10:08,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:10:08,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:10:08,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:10:10,496.496 INFO    ] ================================================
[2026-06-22 02:10:10,511.511 INFO    ] Launching Daemon at Mon Jun 22 02:10:10 IST 2026
[2026-06-22 02:10:10,522.522 INFO    ] ================================================
[2026-06-22 02:10:11,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:10:11
[2026-06-22 02:10:11,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:10:11,935.935 INFO    ] Initializing speech engine...
[2026-06-22 02:10:11,945.945 INFO    ] 2026-06-22 02:10:11
[2026-06-22 02:10:12,194.194 INFO    ] 2026-06-22 02:10:12
[2026-06-22 02:10:12,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:10:12,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:10:12,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:10:12,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:10:12,652.652 INFO    ] time= 22/06/2026 02:10:12
[2026-06-22 02:10:12,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:10:12,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:10:12,804.804 INFO    ] No existing commands found in stream
[2026-06-22 02:10:17,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:10:17,819.819 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-22 02:10:19,364.364 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:10:19,366.366 INFO    ] Checking for system updates...
[2026-06-22 02:10:19,391.391 INFO    ] 200
[2026-06-22 02:10:19,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:10:19,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:10:19,426.426 INFO    ] No update needed
[2026-06-22 02:10:19,427.427 INFO    ] Checking for camera pi updates...
[2026-06-22 02:10:19,447.447 INFO    ] 200
[2026-06-22 02:10:19,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:10:19,489.489 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:10:19,593.593 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:10:19,596.596 INFO    ] No camera update needed
[2026-06-22 02:10:19,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:10:19,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:10:19,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:10:19,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:10:21,652.652 INFO    ] ================================================
[2026-06-22 02:10:21,668.668 INFO    ] Launching Daemon at Mon Jun 22 02:10:21 IST 2026
[2026-06-22 02:10:21,679.679 INFO    ] ================================================
[2026-06-22 02:10:22,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:10:22
[2026-06-22 02:10:22,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:10:23,091.091 INFO    ] Initializing speech engine...
[2026-06-22 02:10:23,099.099 INFO    ] 2026-06-22 02:10:23
[2026-06-22 02:10:23,357.357 INFO    ] 2026-06-22 02:10:23
[2026-06-22 02:10:23,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:10:23,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:10:23,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:10:23,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:10:23,808.808 INFO    ] time= 22/06/2026 02:10:23
[2026-06-22 02:10:23,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:10:23,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:10:23,971.971 INFO    ] No existing commands found in stream
[2026-06-22 02:10:28,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:10:28,985.985 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-22 02:10:31,682.682 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:10:31,686.686 INFO    ] Checking for system updates...
[2026-06-22 02:10:31,731.731 INFO    ] 200
[2026-06-22 02:10:31,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:10:31,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:10:31,801.801 INFO    ] No update needed
[2026-06-22 02:10:31,804.804 INFO    ] Checking for camera pi updates...
[2026-06-22 02:10:31,841.841 INFO    ] 200
[2026-06-22 02:10:31,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:10:31,892.892 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:10:31,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:10:31,955.955 INFO    ] No camera update needed
[2026-06-22 02:10:31,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:10:31,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:10:31,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:10:31,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:10:34,012.012 INFO    ] ================================================
[2026-06-22 02:10:34,028.028 INFO    ] Launching Daemon at Mon Jun 22 02:10:34 IST 2026
[2026-06-22 02:10:34,039.039 INFO    ] ================================================
[2026-06-22 02:10:34,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:10:34
[2026-06-22 02:10:35,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:10:35,420.420 INFO    ] Initializing speech engine...
[2026-06-22 02:10:35,435.435 INFO    ] 2026-06-22 02:10:35
[2026-06-22 02:10:35,700.700 INFO    ] 2026-06-22 02:10:35
[2026-06-22 02:10:35,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:10:35,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:10:35,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:10:36,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:10:36,143.143 INFO    ] time= 22/06/2026 02:10:36
[2026-06-22 02:10:36,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:10:36,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:10:36,322.322 INFO    ] No existing commands found in stream
[2026-06-22 02:10:41,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:10:41,338.338 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-22 02:10:42,169.169 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:10:42,171.171 INFO    ] Checking for system updates...
[2026-06-22 02:10:42,192.192 INFO    ] 200
[2026-06-22 02:10:42,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:10:42,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:10:42,227.227 INFO    ] No update needed
[2026-06-22 02:10:42,228.228 INFO    ] Checking for camera pi updates...
[2026-06-22 02:10:42,248.248 INFO    ] 200
[2026-06-22 02:10:42,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:10:42,290.290 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:10:42,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:10:42,377.377 INFO    ] No camera update needed
[2026-06-22 02:10:42,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:10:42,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:10:42,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:10:42,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:10:44,433.433 INFO    ] ================================================
[2026-06-22 02:10:44,449.449 INFO    ] Launching Daemon at Mon Jun 22 02:10:44 IST 2026
[2026-06-22 02:10:44,460.460 INFO    ] ================================================
[2026-06-22 02:10:45,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:10:45
[2026-06-22 02:10:45,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:10:45,960.960 INFO    ] Initializing speech engine...
[2026-06-22 02:10:45,974.974 INFO    ] 2026-06-22 02:10:45
[2026-06-22 02:10:46,238.238 INFO    ] 2026-06-22 02:10:46
[2026-06-22 02:10:46,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:10:46,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:10:46,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:10:46,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:10:46,746.746 INFO    ] time= 22/06/2026 02:10:46
[2026-06-22 02:10:46,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:10:46,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:10:46,876.876 INFO    ] No existing commands found in stream
[2026-06-22 02:10:51,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:10:51,893.893 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-22 02:10:56,929.929 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:10:56,931.931 INFO    ] Checking for system updates...
[2026-06-22 02:10:56,972.972 INFO    ] 200
[2026-06-22 02:10:56,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:10:57,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:10:57,030.030 INFO    ] No update needed
[2026-06-22 02:10:57,032.032 INFO    ] Checking for camera pi updates...
[2026-06-22 02:10:57,069.069 INFO    ] 200
[2026-06-22 02:10:57,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:10:57,112.112 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:10:57,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:10:57,197.197 INFO    ] No camera update needed
[2026-06-22 02:10:57,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:10:57,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:10:57,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:10:57,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:10:59,245.245 INFO    ] ================================================
[2026-06-22 02:10:59,261.261 INFO    ] Launching Daemon at Mon Jun 22 02:10:59 IST 2026
[2026-06-22 02:10:59,272.272 INFO    ] ================================================
[2026-06-22 02:10:59,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:10:59
[2026-06-22 02:11:00,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:11:00,620.620 INFO    ] Initializing speech engine...
[2026-06-22 02:11:00,630.630 INFO    ] 2026-06-22 02:11:00
[2026-06-22 02:11:00,881.881 INFO    ] 2026-06-22 02:11:00
[2026-06-22 02:11:00,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:11:01,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:11:01,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:11:01,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:11:01,221.221 INFO    ] time= 22/06/2026 02:11:01
[2026-06-22 02:11:01,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:11:01,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:11:01,336.336 INFO    ] No existing commands found in stream
[2026-06-22 02:11:06,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:11:06,355.355 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-22 02:11:10,049.049 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:11:10,051.051 INFO    ] Checking for system updates...
[2026-06-22 02:11:10,091.091 INFO    ] 200
[2026-06-22 02:11:10,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:11:10,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:11:10,150.150 INFO    ] No update needed
[2026-06-22 02:11:10,152.152 INFO    ] Checking for camera pi updates...
[2026-06-22 02:11:10,189.189 INFO    ] 200
[2026-06-22 02:11:10,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:11:10,236.236 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:11:10,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:11:10,412.412 INFO    ] No camera update needed
[2026-06-22 02:11:10,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:11:10,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:11:10,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:11:10,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:11:12,469.469 INFO    ] ================================================
[2026-06-22 02:11:12,485.485 INFO    ] Launching Daemon at Mon Jun 22 02:11:12 IST 2026
[2026-06-22 02:11:12,497.497 INFO    ] ================================================
[2026-06-22 02:11:13,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:11:13
[2026-06-22 02:11:13,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:11:14,105.105 INFO    ] Initializing speech engine...
[2026-06-22 02:11:14,113.113 INFO    ] 2026-06-22 02:11:14
[2026-06-22 02:11:14,383.383 INFO    ] 2026-06-22 02:11:14
[2026-06-22 02:11:14,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:11:14,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:11:14,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:11:14,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:11:14,892.892 INFO    ] time= 22/06/2026 02:11:14
[2026-06-22 02:11:14,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:11:14,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:11:15,016.016 INFO    ] No existing commands found in stream
[2026-06-22 02:11:20,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:11:20,047.047 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-22 02:11:21,658.658 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:11:21,661.661 INFO    ] Checking for system updates...
[2026-06-22 02:11:21,701.701 INFO    ] 200
[2026-06-22 02:11:21,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:11:21,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:11:21,762.762 INFO    ] No update needed
[2026-06-22 02:11:21,765.765 INFO    ] Checking for camera pi updates...
[2026-06-22 02:11:21,802.802 INFO    ] 200
[2026-06-22 02:11:21,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:11:21,851.851 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:11:21,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:11:21,956.956 INFO    ] No camera update needed
[2026-06-22 02:11:21,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:11:21,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:11:21,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:11:21,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:11:24,012.012 INFO    ] ================================================
[2026-06-22 02:11:24,028.028 INFO    ] Launching Daemon at Mon Jun 22 02:11:24 IST 2026
[2026-06-22 02:11:24,039.039 INFO    ] ================================================
[2026-06-22 02:11:24,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:11:24
[2026-06-22 02:11:25,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:11:25,547.547 INFO    ] Initializing speech engine...
[2026-06-22 02:11:25,561.561 INFO    ] 2026-06-22 02:11:25
[2026-06-22 02:11:25,843.843 INFO    ] 2026-06-22 02:11:25
[2026-06-22 02:11:25,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:11:26,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:11:26,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:11:26,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:11:26,319.319 INFO    ] time= 22/06/2026 02:11:26
[2026-06-22 02:11:26,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:11:26,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:11:26,457.457 INFO    ] No existing commands found in stream
[2026-06-22 02:11:31,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:11:31,473.473 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-22 02:11:31,870.870 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:11:31,871.871 INFO    ] Checking for system updates...
[2026-06-22 02:11:31,892.892 INFO    ] 200
[2026-06-22 02:11:31,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:11:31,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:11:31,950.950 INFO    ] No update needed
[2026-06-22 02:11:31,953.953 INFO    ] Checking for camera pi updates...
[2026-06-22 02:11:31,994.994 INFO    ] 200
[2026-06-22 02:11:31,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:11:32,057.057 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:11:32,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:11:32,118.118 INFO    ] No camera update needed
[2026-06-22 02:11:32,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:11:32,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:11:32,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:11:32,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:11:34,180.180 INFO    ] ================================================
[2026-06-22 02:11:34,196.196 INFO    ] Launching Daemon at Mon Jun 22 02:11:34 IST 2026
[2026-06-22 02:11:34,207.207 INFO    ] ================================================
[2026-06-22 02:11:34,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:11:34
[2026-06-22 02:11:35,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:11:35,671.671 INFO    ] Initializing speech engine...
[2026-06-22 02:11:35,681.681 INFO    ] 2026-06-22 02:11:35
[2026-06-22 02:11:35,933.933 INFO    ] 2026-06-22 02:11:35
[2026-06-22 02:11:35,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:11:36,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:11:36,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:11:36,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:11:36,418.418 INFO    ] time= 22/06/2026 02:11:36
[2026-06-22 02:11:36,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:11:36,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:11:36,555.555 INFO    ] No existing commands found in stream
[2026-06-22 02:11:41,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:11:41,570.570 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-22 02:11:43,752.752 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:11:43,755.755 INFO    ] Checking for system updates...
[2026-06-22 02:11:43,791.791 INFO    ] 200
[2026-06-22 02:11:43,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:11:43,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:11:43,854.854 INFO    ] No update needed
[2026-06-22 02:11:43,856.856 INFO    ] Checking for camera pi updates...
[2026-06-22 02:11:43,891.891 INFO    ] 200
[2026-06-22 02:11:43,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:11:43,938.938 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:11:44,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:11:44,024.024 INFO    ] No camera update needed
[2026-06-22 02:11:44,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:11:44,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:11:44,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:11:44,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:11:46,081.081 INFO    ] ================================================
[2026-06-22 02:11:46,097.097 INFO    ] Launching Daemon at Mon Jun 22 02:11:46 IST 2026
[2026-06-22 02:11:46,108.108 INFO    ] ================================================
[2026-06-22 02:11:46,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:11:46
[2026-06-22 02:11:47,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:11:47,478.478 INFO    ] Initializing speech engine...
[2026-06-22 02:11:47,502.502 INFO    ] 2026-06-22 02:11:47
[2026-06-22 02:11:47,774.774 INFO    ] 2026-06-22 02:11:47
[2026-06-22 02:11:47,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:11:48,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:11:48,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:11:48,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:11:48,151.151 INFO    ] time= 22/06/2026 02:11:48
[2026-06-22 02:11:48,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:11:48,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:11:48,273.273 INFO    ] No existing commands found in stream
[2026-06-22 02:11:53,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:11:53,289.289 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-22 02:11:55,443.443 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:11:55,444.444 INFO    ] Checking for system updates...
[2026-06-22 02:11:55,466.466 INFO    ] 200
[2026-06-22 02:11:55,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:11:55,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:11:55,499.499 INFO    ] No update needed
[2026-06-22 02:11:55,501.501 INFO    ] Checking for camera pi updates...
[2026-06-22 02:11:55,526.526 INFO    ] 200
[2026-06-22 02:11:55,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:11:55,570.570 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:11:55,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:11:55,677.677 INFO    ] No camera update needed
[2026-06-22 02:11:55,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:11:55,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:11:55,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:11:55,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:11:57,734.734 INFO    ] ================================================
[2026-06-22 02:11:57,750.750 INFO    ] Launching Daemon at Mon Jun 22 02:11:57 IST 2026
[2026-06-22 02:11:57,761.761 INFO    ] ================================================
[2026-06-22 02:11:58,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:11:58
[2026-06-22 02:11:58,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:11:59,138.138 INFO    ] Initializing speech engine...
[2026-06-22 02:11:59,144.144 INFO    ] 2026-06-22 02:11:59
[2026-06-22 02:11:59,405.405 INFO    ] 2026-06-22 02:11:59
[2026-06-22 02:11:59,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:11:59,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:11:59,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:11:59,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:11:59,865.865 INFO    ] time= 22/06/2026 02:11:59
[2026-06-22 02:11:59,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:11:59,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:12:00,012.012 INFO    ] No existing commands found in stream
[2026-06-22 02:12:05,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:12:05,028.028 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-22 02:12:06,709.709 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:12:06,712.712 INFO    ] Checking for system updates...
[2026-06-22 02:12:06,758.758 INFO    ] 200
[2026-06-22 02:12:06,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:12:06,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:12:06,823.823 INFO    ] No update needed
[2026-06-22 02:12:06,826.826 INFO    ] Checking for camera pi updates...
[2026-06-22 02:12:06,859.859 INFO    ] 200
[2026-06-22 02:12:06,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:12:06,907.907 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:12:06,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:12:06,984.984 INFO    ] No camera update needed
[2026-06-22 02:12:06,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:12:06,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:12:06,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:12:07,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:12:09,042.042 INFO    ] ================================================
[2026-06-22 02:12:09,057.057 INFO    ] Launching Daemon at Mon Jun 22 02:12:09 IST 2026
[2026-06-22 02:12:09,068.068 INFO    ] ================================================
[2026-06-22 02:12:09,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:12:09
[2026-06-22 02:12:10,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:12:10,442.442 INFO    ] Initializing speech engine...
[2026-06-22 02:12:10,448.448 INFO    ] 2026-06-22 02:12:10
[2026-06-22 02:12:10,709.709 INFO    ] 2026-06-22 02:12:10
[2026-06-22 02:12:10,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:12:10,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:12:10,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:12:11,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:12:11,166.166 INFO    ] time= 22/06/2026 02:12:11
[2026-06-22 02:12:11,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:12:11,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:12:11,319.319 INFO    ] No existing commands found in stream
[2026-06-22 02:12:16,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:12:16,333.333 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-22 02:12:18,756.756 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:12:18,759.759 INFO    ] Checking for system updates...
[2026-06-22 02:12:18,798.798 INFO    ] 200
[2026-06-22 02:12:18,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:12:18,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:12:18,856.856 INFO    ] No update needed
[2026-06-22 02:12:18,859.859 INFO    ] Checking for camera pi updates...
[2026-06-22 02:12:18,897.897 INFO    ] 200
[2026-06-22 02:12:18,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:12:18,945.945 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:12:19,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:12:19,040.040 INFO    ] No camera update needed
[2026-06-22 02:12:19,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:12:19,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:12:19,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:12:19,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:12:21,098.098 INFO    ] ================================================
[2026-06-22 02:12:21,115.115 INFO    ] Launching Daemon at Mon Jun 22 02:12:21 IST 2026
[2026-06-22 02:12:21,128.128 INFO    ] ================================================
[2026-06-22 02:12:21,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:12:21
[2026-06-22 02:12:22,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:12:22,547.547 INFO    ] Initializing speech engine...
[2026-06-22 02:12:22,555.555 INFO    ] 2026-06-22 02:12:22
[2026-06-22 02:12:22,830.830 INFO    ] 2026-06-22 02:12:22
[2026-06-22 02:12:22,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:12:23,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:12:23,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:12:23,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:12:23,211.211 INFO    ] time= 22/06/2026 02:12:23
[2026-06-22 02:12:23,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:12:23,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:12:23,333.333 INFO    ] No existing commands found in stream
[2026-06-22 02:12:28,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:12:28,361.361 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-22 02:12:32,601.601 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:12:32,605.605 INFO    ] Checking for system updates...
[2026-06-22 02:12:32,649.649 INFO    ] 200
[2026-06-22 02:12:32,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:12:32,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:12:32,712.712 INFO    ] No update needed
[2026-06-22 02:12:32,715.715 INFO    ] Checking for camera pi updates...
[2026-06-22 02:12:32,751.751 INFO    ] 200
[2026-06-22 02:12:32,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:12:32,807.807 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:12:32,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:12:32,868.868 INFO    ] No camera update needed
[2026-06-22 02:12:32,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:12:32,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:12:32,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:12:32,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:12:34,929.929 INFO    ] ================================================
[2026-06-22 02:12:34,944.944 INFO    ] Launching Daemon at Mon Jun 22 02:12:34 IST 2026
[2026-06-22 02:12:34,955.955 INFO    ] ================================================
[2026-06-22 02:12:35,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:12:35
[2026-06-22 02:12:36,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:12:36,428.428 INFO    ] Initializing speech engine...
[2026-06-22 02:12:36,442.442 INFO    ] 2026-06-22 02:12:36
[2026-06-22 02:12:36,753.753 INFO    ] 2026-06-22 02:12:36
[2026-06-22 02:12:36,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:12:37,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:12:37,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:12:37,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:12:37,200.200 INFO    ] time= 22/06/2026 02:12:37
[2026-06-22 02:12:37,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:12:37,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:12:37,385.385 INFO    ] No existing commands found in stream
[2026-06-22 02:12:42,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:12:42,417.417 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-22 02:12:44,114.114 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:12:44,116.116 INFO    ] Checking for system updates...
[2026-06-22 02:12:44,137.137 INFO    ] 200
[2026-06-22 02:12:44,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:12:44,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:12:44,190.190 INFO    ] No update needed
[2026-06-22 02:12:44,192.192 INFO    ] Checking for camera pi updates...
[2026-06-22 02:12:44,230.230 INFO    ] 200
[2026-06-22 02:12:44,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:12:44,274.274 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:12:44,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:12:44,381.381 INFO    ] No camera update needed
[2026-06-22 02:12:44,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:12:44,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:12:44,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:12:44,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:12:46,440.440 INFO    ] ================================================
[2026-06-22 02:12:46,456.456 INFO    ] Launching Daemon at Mon Jun 22 02:12:46 IST 2026
[2026-06-22 02:12:46,466.466 INFO    ] ================================================
[2026-06-22 02:12:47,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:12:47
[2026-06-22 02:12:47,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:12:47,793.793 INFO    ] Initializing speech engine...
[2026-06-22 02:12:47,802.802 INFO    ] 2026-06-22 02:12:47
[2026-06-22 02:12:48,096.096 INFO    ] 2026-06-22 02:12:48
[2026-06-22 02:12:48,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:12:48,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:12:48,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:12:48,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:12:48,474.474 INFO    ] time= 22/06/2026 02:12:48
[2026-06-22 02:12:48,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:12:48,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:12:48,599.599 INFO    ] No existing commands found in stream
[2026-06-22 02:12:53,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:12:53,614.614 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-22 02:12:55,367.367 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:12:55,369.369 INFO    ] Checking for system updates...
[2026-06-22 02:12:55,392.392 INFO    ] 200
[2026-06-22 02:12:55,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:12:55,431.431 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:12:55,433.433 INFO    ] No update needed
[2026-06-22 02:12:55,434.434 INFO    ] Checking for camera pi updates...
[2026-06-22 02:12:55,460.460 INFO    ] 200
[2026-06-22 02:12:55,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:12:55,509.509 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:12:55,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:12:55,612.612 INFO    ] No camera update needed
[2026-06-22 02:12:55,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:12:55,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:12:55,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:12:55,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:12:57,671.671 INFO    ] ================================================
[2026-06-22 02:12:57,687.687 INFO    ] Launching Daemon at Mon Jun 22 02:12:57 IST 2026
[2026-06-22 02:12:57,699.699 INFO    ] ================================================
[2026-06-22 02:12:58,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:12:58
[2026-06-22 02:12:58,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:12:59,018.018 INFO    ] Initializing speech engine...
[2026-06-22 02:12:59,033.033 INFO    ] 2026-06-22 02:12:59
[2026-06-22 02:12:59,300.300 INFO    ] 2026-06-22 02:12:59
[2026-06-22 02:12:59,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:12:59,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:12:59,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:12:59,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:12:59,640.640 INFO    ] time= 22/06/2026 02:12:59
[2026-06-22 02:12:59,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:12:59,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:12:59,754.754 INFO    ] No existing commands found in stream
[2026-06-22 02:13:04,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:13:04,772.772 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-22 02:13:06,752.752 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:13:06,755.755 INFO    ] Checking for system updates...
[2026-06-22 02:13:06,791.791 INFO    ] 200
[2026-06-22 02:13:06,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:13:06,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:13:06,848.848 INFO    ] No update needed
[2026-06-22 02:13:06,851.851 INFO    ] Checking for camera pi updates...
[2026-06-22 02:13:06,887.887 INFO    ] 200
[2026-06-22 02:13:06,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:13:06,930.930 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:13:07,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:13:07,013.013 INFO    ] No camera update needed
[2026-06-22 02:13:07,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:13:07,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:13:07,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:13:07,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:13:09,070.070 INFO    ] ================================================
[2026-06-22 02:13:09,086.086 INFO    ] Launching Daemon at Mon Jun 22 02:13:09 IST 2026
[2026-06-22 02:13:09,097.097 INFO    ] ================================================
[2026-06-22 02:13:09,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:13:09
[2026-06-22 02:13:10,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:13:10,455.455 INFO    ] Initializing speech engine...
[2026-06-22 02:13:10,463.463 INFO    ] 2026-06-22 02:13:10
[2026-06-22 02:13:10,715.715 INFO    ] 2026-06-22 02:13:10
[2026-06-22 02:13:10,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:13:11,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:13:11,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:13:11,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:13:11,191.191 INFO    ] time= 22/06/2026 02:13:11
[2026-06-22 02:13:11,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:13:11,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:13:11,332.332 INFO    ] No existing commands found in stream
[2026-06-22 02:13:16,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:13:16,347.347 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-22 02:13:18,878.878 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:13:18,881.881 INFO    ] Checking for system updates...
[2026-06-22 02:13:18,917.917 INFO    ] 200
[2026-06-22 02:13:18,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:13:18,972.972 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:13:18,974.974 INFO    ] No update needed
[2026-06-22 02:13:18,977.977 INFO    ] Checking for camera pi updates...
[2026-06-22 02:13:19,010.010 INFO    ] 200
[2026-06-22 02:13:19,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:13:19,059.059 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:13:19,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:13:19,260.260 INFO    ] No camera update needed
[2026-06-22 02:13:19,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:13:19,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:13:19,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:13:19,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:13:21,317.317 INFO    ] ================================================
[2026-06-22 02:13:21,333.333 INFO    ] Launching Daemon at Mon Jun 22 02:13:21 IST 2026
[2026-06-22 02:13:21,344.344 INFO    ] ================================================
[2026-06-22 02:13:21,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:13:21
[2026-06-22 02:13:22,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:13:22,656.656 INFO    ] Initializing speech engine...
[2026-06-22 02:13:22,681.681 INFO    ] 2026-06-22 02:13:22
[2026-06-22 02:13:22,936.936 INFO    ] 2026-06-22 02:13:22
[2026-06-22 02:13:22,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:13:23,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:13:23,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:13:23,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:13:23,291.291 INFO    ] time= 22/06/2026 02:13:23
[2026-06-22 02:13:23,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:13:23,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:13:23,391.391 INFO    ] No existing commands found in stream
[2026-06-22 02:13:28,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:13:28,429.429 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-22 02:13:29,540.540 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:13:29,543.543 INFO    ] Checking for system updates...
[2026-06-22 02:13:29,580.580 INFO    ] 200
[2026-06-22 02:13:29,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:13:29,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:13:29,639.639 INFO    ] No update needed
[2026-06-22 02:13:29,642.642 INFO    ] Checking for camera pi updates...
[2026-06-22 02:13:29,676.676 INFO    ] 200
[2026-06-22 02:13:29,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:13:29,727.727 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:13:29,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:13:29,811.811 INFO    ] No camera update needed
[2026-06-22 02:13:29,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:13:29,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:13:29,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:13:29,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:13:31,869.869 INFO    ] ================================================
[2026-06-22 02:13:31,885.885 INFO    ] Launching Daemon at Mon Jun 22 02:13:31 IST 2026
[2026-06-22 02:13:31,898.898 INFO    ] ================================================
[2026-06-22 02:13:32,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:13:32
[2026-06-22 02:13:33,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:13:33,396.396 INFO    ] Initializing speech engine...
[2026-06-22 02:13:33,403.403 INFO    ] 2026-06-22 02:13:33
[2026-06-22 02:13:33,696.696 INFO    ] 2026-06-22 02:13:33
[2026-06-22 02:13:33,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:13:33,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:13:33,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:13:34,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:13:34,093.093 INFO    ] time= 22/06/2026 02:13:34
[2026-06-22 02:13:34,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:13:34,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:13:34,201.201 INFO    ] No existing commands found in stream
[2026-06-22 02:13:39,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:13:39,217.217 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-22 02:13:41,047.047 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:13:41,049.049 INFO    ] Checking for system updates...
[2026-06-22 02:13:41,087.087 INFO    ] 200
[2026-06-22 02:13:41,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:13:41,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:13:41,145.145 INFO    ] No update needed
[2026-06-22 02:13:41,148.148 INFO    ] Checking for camera pi updates...
[2026-06-22 02:13:41,181.181 INFO    ] 200
[2026-06-22 02:13:41,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:13:41,229.229 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:13:41,324.324 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:13:41,326.326 INFO    ] No camera update needed
[2026-06-22 02:13:41,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:13:41,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:13:41,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:13:41,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:13:43,382.382 INFO    ] ================================================
[2026-06-22 02:13:43,398.398 INFO    ] Launching Daemon at Mon Jun 22 02:13:43 IST 2026
[2026-06-22 02:13:43,408.408 INFO    ] ================================================
[2026-06-22 02:13:43,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:13:43
[2026-06-22 02:13:44,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:13:44,779.779 INFO    ] Initializing speech engine...
[2026-06-22 02:13:44,789.789 INFO    ] 2026-06-22 02:13:44
[2026-06-22 02:13:45,048.048 INFO    ] 2026-06-22 02:13:45
[2026-06-22 02:13:45,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:13:45,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:13:45,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:13:45,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:13:45,508.508 INFO    ] time= 22/06/2026 02:13:45
[2026-06-22 02:13:45,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:13:45,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:13:45,659.659 INFO    ] No existing commands found in stream
[2026-06-22 02:13:50,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:13:50,674.674 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-22 02:13:54,831.831 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:13:54,832.832 INFO    ] Checking for system updates...
[2026-06-22 02:13:54,854.854 INFO    ] 200
[2026-06-22 02:13:54,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:13:54,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:13:54,894.894 INFO    ] No update needed
[2026-06-22 02:13:54,897.897 INFO    ] Checking for camera pi updates...
[2026-06-22 02:13:54,932.932 INFO    ] 200
[2026-06-22 02:13:54,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:13:54,975.975 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:13:55,074.074 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:13:55,077.077 INFO    ] No camera update needed
[2026-06-22 02:13:55,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:13:55,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:13:55,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:13:55,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:13:57,135.135 INFO    ] ================================================
[2026-06-22 02:13:57,150.150 INFO    ] Launching Daemon at Mon Jun 22 02:13:57 IST 2026
[2026-06-22 02:13:57,161.161 INFO    ] ================================================
[2026-06-22 02:13:57,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:13:57
[2026-06-22 02:13:58,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:13:58,666.666 INFO    ] Initializing speech engine...
[2026-06-22 02:13:58,677.677 INFO    ] 2026-06-22 02:13:58
[2026-06-22 02:13:58,952.952 INFO    ] 2026-06-22 02:13:58
[2026-06-22 02:13:59,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:13:59,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:13:59,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:13:59,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:13:59,420.420 INFO    ] time= 22/06/2026 02:13:59
[2026-06-22 02:13:59,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:13:59,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:13:59,570.570 INFO    ] No existing commands found in stream
[2026-06-22 02:14:04,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:14:04,586.586 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-22 02:14:08,526.526 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:14:08,528.528 INFO    ] Checking for system updates...
[2026-06-22 02:14:08,549.549 INFO    ] 200
[2026-06-22 02:14:08,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:14:08,583.583 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:14:08,585.585 INFO    ] No update needed
[2026-06-22 02:14:08,586.586 INFO    ] Checking for camera pi updates...
[2026-06-22 02:14:08,617.617 INFO    ] 200
[2026-06-22 02:14:08,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:14:08,667.667 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:14:08,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:14:08,755.755 INFO    ] No camera update needed
[2026-06-22 02:14:08,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:14:08,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:14:08,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:14:08,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:14:10,814.814 INFO    ] ================================================
[2026-06-22 02:14:10,829.829 INFO    ] Launching Daemon at Mon Jun 22 02:14:10 IST 2026
[2026-06-22 02:14:10,840.840 INFO    ] ================================================
[2026-06-22 02:14:11,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:14:11
[2026-06-22 02:14:11,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:14:12,210.210 INFO    ] Initializing speech engine...
[2026-06-22 02:14:12,218.218 INFO    ] 2026-06-22 02:14:12
[2026-06-22 02:14:12,476.476 INFO    ] 2026-06-22 02:14:12
[2026-06-22 02:14:12,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:14:12,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:14:12,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:14:12,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:14:12,936.936 INFO    ] time= 22/06/2026 02:14:12
[2026-06-22 02:14:12,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:14:13,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:14:13,082.082 INFO    ] No existing commands found in stream
[2026-06-22 02:14:18,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:14:18,097.097 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-22 02:14:20,520.520 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:14:20,522.522 INFO    ] Checking for system updates...
[2026-06-22 02:14:20,559.559 INFO    ] 200
[2026-06-22 02:14:20,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:14:20,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:14:20,617.617 INFO    ] No update needed
[2026-06-22 02:14:20,619.619 INFO    ] Checking for camera pi updates...
[2026-06-22 02:14:20,657.657 INFO    ] 200
[2026-06-22 02:14:20,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:14:20,700.700 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:14:20,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:14:20,796.796 INFO    ] No camera update needed
[2026-06-22 02:14:20,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:14:20,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:14:20,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:14:20,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:14:22,853.853 INFO    ] ================================================
[2026-06-22 02:14:22,869.869 INFO    ] Launching Daemon at Mon Jun 22 02:14:22 IST 2026
[2026-06-22 02:14:22,880.880 INFO    ] ================================================
[2026-06-22 02:14:23,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:14:23
[2026-06-22 02:14:23,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:14:24,218.218 INFO    ] Initializing speech engine...
[2026-06-22 02:14:24,226.226 INFO    ] 2026-06-22 02:14:24
[2026-06-22 02:14:24,479.479 INFO    ] 2026-06-22 02:14:24
[2026-06-22 02:14:24,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:14:24,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:14:24,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:14:24,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:14:24,820.820 INFO    ] time= 22/06/2026 02:14:24
[2026-06-22 02:14:24,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:14:24,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:14:24,932.932 INFO    ] No existing commands found in stream
[2026-06-22 02:14:29,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:14:29,947.947 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-22 02:14:31,117.117 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:14:31,120.120 INFO    ] Checking for system updates...
[2026-06-22 02:14:31,156.156 INFO    ] 200
[2026-06-22 02:14:31,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:14:31,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:14:31,214.214 INFO    ] No update needed
[2026-06-22 02:14:31,216.216 INFO    ] Checking for camera pi updates...
[2026-06-22 02:14:31,250.250 INFO    ] 200
[2026-06-22 02:14:31,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:14:31,298.298 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:14:31,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:14:31,404.404 INFO    ] No camera update needed
[2026-06-22 02:14:31,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:14:31,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:14:31,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:14:31,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:14:33,464.464 INFO    ] ================================================
[2026-06-22 02:14:33,479.479 INFO    ] Launching Daemon at Mon Jun 22 02:14:33 IST 2026
[2026-06-22 02:14:33,490.490 INFO    ] ================================================
[2026-06-22 02:14:33,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:14:33
[2026-06-22 02:14:34,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:14:34,808.808 INFO    ] Initializing speech engine...
[2026-06-22 02:14:34,817.817 INFO    ] 2026-06-22 02:14:34
[2026-06-22 02:14:35,093.093 INFO    ] 2026-06-22 02:14:35
[2026-06-22 02:14:35,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:14:35,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:14:35,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:14:35,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:14:35,451.451 INFO    ] time= 22/06/2026 02:14:35
[2026-06-22 02:14:35,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:14:35,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:14:35,551.551 INFO    ] No existing commands found in stream
[2026-06-22 02:14:40,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:14:40,569.569 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-22 02:14:44,677.677 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:14:44,680.680 INFO    ] Checking for system updates...
[2026-06-22 02:14:44,716.716 INFO    ] 200
[2026-06-22 02:14:44,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:14:44,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:14:44,774.774 INFO    ] No update needed
[2026-06-22 02:14:44,777.777 INFO    ] Checking for camera pi updates...
[2026-06-22 02:14:44,816.816 INFO    ] 200
[2026-06-22 02:14:44,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:14:44,865.865 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:14:44,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:14:44,974.974 INFO    ] No camera update needed
[2026-06-22 02:14:44,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:14:44,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:14:44,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:14:44,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:14:47,032.032 INFO    ] ================================================
[2026-06-22 02:14:47,048.048 INFO    ] Launching Daemon at Mon Jun 22 02:14:47 IST 2026
[2026-06-22 02:14:47,059.059 INFO    ] ================================================
[2026-06-22 02:14:47,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:14:47
[2026-06-22 02:14:48,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:14:48,420.420 INFO    ] Initializing speech engine...
[2026-06-22 02:14:48,428.428 INFO    ] 2026-06-22 02:14:48
[2026-06-22 02:14:48,697.697 INFO    ] 2026-06-22 02:14:48
[2026-06-22 02:14:48,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:14:49,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:14:49,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:14:49,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:14:49,407.407 INFO    ] time= 22/06/2026 02:14:49
[2026-06-22 02:14:49,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:14:49,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:14:49,629.629 INFO    ] No existing commands found in stream
[2026-06-22 02:14:54,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:14:54,669.669 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-22 02:14:56,694.694 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:14:56,695.695 INFO    ] Checking for system updates...
[2026-06-22 02:14:56,716.716 INFO    ] 200
[2026-06-22 02:14:56,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:14:56,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:14:56,765.765 INFO    ] No update needed
[2026-06-22 02:14:56,767.767 INFO    ] Checking for camera pi updates...
[2026-06-22 02:14:56,801.801 INFO    ] 200
[2026-06-22 02:14:56,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:14:56,851.851 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:14:56,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:14:56,934.934 INFO    ] No camera update needed
[2026-06-22 02:14:56,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:14:56,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:14:56,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:14:56,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:14:58,991.991 INFO    ] ================================================
[2026-06-22 02:14:59,007.007 INFO    ] Launching Daemon at Mon Jun 22 02:14:59 IST 2026
[2026-06-22 02:14:59,018.018 INFO    ] ================================================
[2026-06-22 02:14:59,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:14:59
[2026-06-22 02:15:00,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:15:00,374.374 INFO    ] Initializing speech engine...
[2026-06-22 02:15:00,383.383 INFO    ] 2026-06-22 02:15:00
[2026-06-22 02:15:00,655.655 INFO    ] 2026-06-22 02:15:00
[2026-06-22 02:15:00,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:15:00,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:15:00,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:15:01,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:15:01,041.041 INFO    ] time= 22/06/2026 02:15:01
[2026-06-22 02:15:01,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:15:01,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:15:01,211.211 INFO    ] No existing commands found in stream
[2026-06-22 02:15:06,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:15:06,245.245 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-22 02:15:06,911.911 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:15:06,914.914 INFO    ] Checking for system updates...
[2026-06-22 02:15:06,957.957 INFO    ] 200
[2026-06-22 02:15:06,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:15:07,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:15:07,022.022 INFO    ] No update needed
[2026-06-22 02:15:07,025.025 INFO    ] Checking for camera pi updates...
[2026-06-22 02:15:07,045.045 INFO    ] 200
[2026-06-22 02:15:07,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:15:07,084.084 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:15:07,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:15:07,170.170 INFO    ] No camera update needed
[2026-06-22 02:15:07,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:15:07,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:15:07,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:15:07,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:15:09,229.229 INFO    ] ================================================
[2026-06-22 02:15:09,245.245 INFO    ] Launching Daemon at Mon Jun 22 02:15:09 IST 2026
[2026-06-22 02:15:09,257.257 INFO    ] ================================================
[2026-06-22 02:15:09,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:15:09
[2026-06-22 02:15:10,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:15:10,711.711 INFO    ] Initializing speech engine...
[2026-06-22 02:15:10,723.723 INFO    ] 2026-06-22 02:15:10
[2026-06-22 02:15:10,992.992 INFO    ] 2026-06-22 02:15:10
[2026-06-22 02:15:11,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:15:11,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:15:11,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:15:11,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:15:11,446.446 INFO    ] time= 22/06/2026 02:15:11
[2026-06-22 02:15:11,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:15:11,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:15:11,618.618 INFO    ] No existing commands found in stream
[2026-06-22 02:15:16,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:15:16,633.633 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-22 02:15:17,114.114 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:15:17,117.117 INFO    ] Checking for system updates...
[2026-06-22 02:15:17,158.158 INFO    ] 200
[2026-06-22 02:15:17,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:15:17,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:15:17,218.218 INFO    ] No update needed
[2026-06-22 02:15:17,220.220 INFO    ] Checking for camera pi updates...
[2026-06-22 02:15:17,256.256 INFO    ] 200
[2026-06-22 02:15:17,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:15:17,310.310 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:15:17,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:15:17,416.416 INFO    ] No camera update needed
[2026-06-22 02:15:17,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:15:17,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:15:17,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:15:17,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:15:19,477.477 INFO    ] ================================================
[2026-06-22 02:15:19,493.493 INFO    ] Launching Daemon at Mon Jun 22 02:15:19 IST 2026
[2026-06-22 02:15:19,508.508 INFO    ] ================================================
[2026-06-22 02:15:20,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:15:20
[2026-06-22 02:15:20,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:15:21,154.154 INFO    ] Initializing speech engine...
[2026-06-22 02:15:21,163.163 INFO    ] 2026-06-22 02:15:21
[2026-06-22 02:15:21,463.463 INFO    ] 2026-06-22 02:15:21
[2026-06-22 02:15:21,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:15:21,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:15:21,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:15:21,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:15:21,817.817 INFO    ] time= 22/06/2026 02:15:21
[2026-06-22 02:15:21,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:15:21,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:15:21,882.882 INFO    ] No existing commands found in stream
[2026-06-22 02:15:26,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:15:26,896.896 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-22 02:15:28,594.594 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:15:28,597.597 INFO    ] Checking for system updates...
[2026-06-22 02:15:28,637.637 INFO    ] 200
[2026-06-22 02:15:28,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:15:28,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:15:28,697.697 INFO    ] No update needed
[2026-06-22 02:15:28,700.700 INFO    ] Checking for camera pi updates...
[2026-06-22 02:15:28,735.735 INFO    ] 200
[2026-06-22 02:15:28,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:15:28,780.780 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:15:28,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:15:28,988.988 INFO    ] No camera update needed
[2026-06-22 02:15:28,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:15:28,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:15:29,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:15:29,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:15:31,046.046 INFO    ] ================================================
[2026-06-22 02:15:31,061.061 INFO    ] Launching Daemon at Mon Jun 22 02:15:31 IST 2026
[2026-06-22 02:15:31,072.072 INFO    ] ================================================
[2026-06-22 02:15:31,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:15:31
[2026-06-22 02:15:32,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:15:32,719.719 INFO    ] Initializing speech engine...
[2026-06-22 02:15:32,730.730 INFO    ] 2026-06-22 02:15:32
[2026-06-22 02:15:33,030.030 INFO    ] 2026-06-22 02:15:33
[2026-06-22 02:15:33,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:15:33,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:15:33,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:15:33,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:15:33,534.534 INFO    ] time= 22/06/2026 02:15:33
[2026-06-22 02:15:33,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:15:33,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:15:33,711.711 INFO    ] No existing commands found in stream
[2026-06-22 02:15:38,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:15:38,746.746 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-22 02:15:40,854.854 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:15:40,856.856 INFO    ] Checking for system updates...
[2026-06-22 02:15:40,878.878 INFO    ] 200
[2026-06-22 02:15:40,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:15:40,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:15:40,911.911 INFO    ] No update needed
[2026-06-22 02:15:40,912.912 INFO    ] Checking for camera pi updates...
[2026-06-22 02:15:40,932.932 INFO    ] 200
[2026-06-22 02:15:40,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:15:40,981.981 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:15:41,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:15:41,067.067 INFO    ] No camera update needed
[2026-06-22 02:15:41,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:15:41,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:15:41,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:15:41,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:15:43,123.123 INFO    ] ================================================
[2026-06-22 02:15:43,138.138 INFO    ] Launching Daemon at Mon Jun 22 02:15:43 IST 2026
[2026-06-22 02:15:43,149.149 INFO    ] ================================================
[2026-06-22 02:15:43,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:15:43
[2026-06-22 02:15:44,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:15:44,719.719 INFO    ] Initializing speech engine...
[2026-06-22 02:15:44,727.727 INFO    ] 2026-06-22 02:15:44
[2026-06-22 02:15:45,006.006 INFO    ] 2026-06-22 02:15:44
[2026-06-22 02:15:45,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:15:45,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:15:45,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:15:45,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:15:45,479.479 INFO    ] time= 22/06/2026 02:15:45
[2026-06-22 02:15:45,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:15:45,573.573 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:15:45,631.631 INFO    ] No existing commands found in stream
[2026-06-22 02:15:50,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:15:50,647.647 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-22 02:15:51,426.426 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:15:51,429.429 INFO    ] Checking for system updates...
[2026-06-22 02:15:51,471.471 INFO    ] 200
[2026-06-22 02:15:51,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:15:51,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:15:51,538.538 INFO    ] No update needed
[2026-06-22 02:15:51,540.540 INFO    ] Checking for camera pi updates...
[2026-06-22 02:15:51,578.578 INFO    ] 200
[2026-06-22 02:15:51,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:15:51,622.622 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:15:51,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:15:51,712.712 INFO    ] No camera update needed
[2026-06-22 02:15:51,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:15:51,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:15:51,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:15:51,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:15:53,769.769 INFO    ] ================================================
[2026-06-22 02:15:53,792.792 INFO    ] Launching Daemon at Mon Jun 22 02:15:53 IST 2026
[2026-06-22 02:15:53,804.804 INFO    ] ================================================
[2026-06-22 02:15:54,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:15:54
[2026-06-22 02:15:55,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:15:55,348.348 INFO    ] Initializing speech engine...
[2026-06-22 02:15:55,357.357 INFO    ] 2026-06-22 02:15:55
[2026-06-22 02:15:55,618.618 INFO    ] 2026-06-22 02:15:55
[2026-06-22 02:15:55,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:15:55,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:15:55,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:15:55,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:15:56,011.011 INFO    ] time= 22/06/2026 02:15:56
[2026-06-22 02:15:56,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:15:56,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:15:56,169.169 INFO    ] No existing commands found in stream
[2026-06-22 02:16:01,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:16:01,197.197 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-22 02:16:03,829.829 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:16:03,831.831 INFO    ] Checking for system updates...
[2026-06-22 02:16:03,867.867 INFO    ] 200
[2026-06-22 02:16:03,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:16:03,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:16:03,928.928 INFO    ] No update needed
[2026-06-22 02:16:03,931.931 INFO    ] Checking for camera pi updates...
[2026-06-22 02:16:03,968.968 INFO    ] 200
[2026-06-22 02:16:03,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:16:04,010.010 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:16:04,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:16:04,065.065 INFO    ] No camera update needed
[2026-06-22 02:16:04,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:16:04,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:16:04,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:16:04,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:16:06,119.119 INFO    ] ================================================
[2026-06-22 02:16:06,135.135 INFO    ] Launching Daemon at Mon Jun 22 02:16:06 IST 2026
[2026-06-22 02:16:06,145.145 INFO    ] ================================================
[2026-06-22 02:16:06,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:16:06
[2026-06-22 02:16:07,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:16:07,479.479 INFO    ] Initializing speech engine...
[2026-06-22 02:16:07,486.486 INFO    ] 2026-06-22 02:16:07
[2026-06-22 02:16:07,779.779 INFO    ] 2026-06-22 02:16:07
[2026-06-22 02:16:07,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:16:08,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:16:08,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:16:08,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:16:08,131.131 INFO    ] time= 22/06/2026 02:16:08
[2026-06-22 02:16:08,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:16:08,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:16:08,210.210 INFO    ] No existing commands found in stream
[2026-06-22 02:16:13,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:16:13,222.222 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-22 02:16:14,220.220 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:16:14,223.223 INFO    ] Checking for system updates...
[2026-06-22 02:16:14,262.262 INFO    ] 200
[2026-06-22 02:16:14,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:16:14,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:16:14,319.319 INFO    ] No update needed
[2026-06-22 02:16:14,322.322 INFO    ] Checking for camera pi updates...
[2026-06-22 02:16:14,359.359 INFO    ] 200
[2026-06-22 02:16:14,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:16:14,407.407 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:16:14,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:16:14,501.501 INFO    ] No camera update needed
[2026-06-22 02:16:14,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:16:14,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:16:14,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:16:14,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:16:16,558.558 INFO    ] ================================================
[2026-06-22 02:16:16,573.573 INFO    ] Launching Daemon at Mon Jun 22 02:16:16 IST 2026
[2026-06-22 02:16:16,584.584 INFO    ] ================================================
[2026-06-22 02:16:17,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:16:17
[2026-06-22 02:16:17,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:16:18,193.193 INFO    ] Initializing speech engine...
[2026-06-22 02:16:18,198.198 INFO    ] 2026-06-22 02:16:18
[2026-06-22 02:16:18,513.513 INFO    ] 2026-06-22 02:16:18
[2026-06-22 02:16:18,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:16:18,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:16:18,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:16:19,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:16:19,068.068 INFO    ] time= 22/06/2026 02:16:19
[2026-06-22 02:16:19,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:16:19,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:16:19,202.202 INFO    ] No existing commands found in stream
[2026-06-22 02:16:24,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:16:24,234.234 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-22 02:16:26,725.725 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:16:26,727.727 INFO    ] Checking for system updates...
[2026-06-22 02:16:26,748.748 INFO    ] 200
[2026-06-22 02:16:26,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:16:26,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:16:26,781.781 INFO    ] No update needed
[2026-06-22 02:16:26,782.782 INFO    ] Checking for camera pi updates...
[2026-06-22 02:16:26,802.802 INFO    ] 200
[2026-06-22 02:16:26,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:16:26,827.827 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:16:26,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:16:26,913.913 INFO    ] No camera update needed
[2026-06-22 02:16:26,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:16:26,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:16:26,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:16:26,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:16:28,972.972 INFO    ] ================================================
[2026-06-22 02:16:28,987.987 INFO    ] Launching Daemon at Mon Jun 22 02:16:28 IST 2026
[2026-06-22 02:16:29,999.999 INFO    ] ================================================
[2026-06-22 02:16:29,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:16:29
[2026-06-22 02:16:30,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:16:30,432.432 INFO    ] Initializing speech engine...
[2026-06-22 02:16:30,440.440 INFO    ] 2026-06-22 02:16:30
[2026-06-22 02:16:30,711.711 INFO    ] 2026-06-22 02:16:30
[2026-06-22 02:16:30,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:16:30,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:16:30,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:16:31,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:16:31,195.195 INFO    ] time= 22/06/2026 02:16:31
[2026-06-22 02:16:31,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:16:31,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:16:31,342.342 INFO    ] No existing commands found in stream
[2026-06-22 02:16:36,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:16:36,358.358 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-22 02:16:40,440.440 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:16:40,442.442 INFO    ] Checking for system updates...
[2026-06-22 02:16:40,464.464 INFO    ] 200
[2026-06-22 02:16:40,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:16:40,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:16:40,521.521 INFO    ] No update needed
[2026-06-22 02:16:40,523.523 INFO    ] Checking for camera pi updates...
[2026-06-22 02:16:40,561.561 INFO    ] 200
[2026-06-22 02:16:40,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:16:40,603.603 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:16:40,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:16:40,695.695 INFO    ] No camera update needed
[2026-06-22 02:16:40,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:16:40,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:16:40,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:16:40,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:16:42,751.751 INFO    ] ================================================
[2026-06-22 02:16:42,766.766 INFO    ] Launching Daemon at Mon Jun 22 02:16:42 IST 2026
[2026-06-22 02:16:42,777.777 INFO    ] ================================================
[2026-06-22 02:16:43,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:16:43
[2026-06-22 02:16:43,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:16:44,100.100 INFO    ] Initializing speech engine...
[2026-06-22 02:16:44,107.107 INFO    ] 2026-06-22 02:16:44
[2026-06-22 02:16:44,392.392 INFO    ] 2026-06-22 02:16:44
[2026-06-22 02:16:44,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:16:44,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:16:44,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:16:44,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:16:44,771.771 INFO    ] time= 22/06/2026 02:16:44
[2026-06-22 02:16:44,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:16:44,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:16:44,929.929 INFO    ] No existing commands found in stream
[2026-06-22 02:16:49,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:16:49,962.962 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-22 02:16:51,824.824 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:16:51,826.826 INFO    ] Checking for system updates...
[2026-06-22 02:16:51,848.848 INFO    ] 200
[2026-06-22 02:16:51,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:16:51,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:16:51,904.904 INFO    ] No update needed
[2026-06-22 02:16:51,908.908 INFO    ] Checking for camera pi updates...
[2026-06-22 02:16:51,944.944 INFO    ] 200
[2026-06-22 02:16:51,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:16:51,994.994 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:16:52,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:16:52,087.087 INFO    ] No camera update needed
[2026-06-22 02:16:52,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:16:52,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:16:52,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:16:52,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:16:54,147.147 INFO    ] ================================================
[2026-06-22 02:16:54,164.164 INFO    ] Launching Daemon at Mon Jun 22 02:16:54 IST 2026
[2026-06-22 02:16:54,174.174 INFO    ] ================================================
[2026-06-22 02:16:54,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:16:54
[2026-06-22 02:16:55,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:16:55,519.519 INFO    ] Initializing speech engine...
[2026-06-22 02:16:55,529.529 INFO    ] 2026-06-22 02:16:55
[2026-06-22 02:16:55,778.778 INFO    ] 2026-06-22 02:16:55
[2026-06-22 02:16:55,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:16:55,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:16:56,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:16:56,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:16:56,118.118 INFO    ] time= 22/06/2026 02:16:56
[2026-06-22 02:16:56,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:16:56,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:16:56,230.230 INFO    ] No existing commands found in stream
[2026-06-22 02:17:01,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:17:01,245.245 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-22 02:17:04,966.966 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:17:04,969.969 INFO    ] Checking for system updates...
[2026-06-22 02:17:05,005.005 INFO    ] 200
[2026-06-22 02:17:05,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:17:05,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:17:05,062.062 INFO    ] No update needed
[2026-06-22 02:17:05,065.065 INFO    ] Checking for camera pi updates...
[2026-06-22 02:17:05,099.099 INFO    ] 200
[2026-06-22 02:17:05,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:17:05,147.147 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:17:05,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:17:05,218.218 INFO    ] No camera update needed
[2026-06-22 02:17:05,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:17:05,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:17:05,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:17:05,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:17:07,275.275 INFO    ] ================================================
[2026-06-22 02:17:07,291.291 INFO    ] Launching Daemon at Mon Jun 22 02:17:07 IST 2026
[2026-06-22 02:17:07,303.303 INFO    ] ================================================
[2026-06-22 02:17:07,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:17:07
[2026-06-22 02:17:08,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:17:08,929.929 INFO    ] Initializing speech engine...
[2026-06-22 02:17:08,936.936 INFO    ] 2026-06-22 02:17:08
[2026-06-22 02:17:09,216.216 INFO    ] 2026-06-22 02:17:09
[2026-06-22 02:17:09,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:17:09,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:17:09,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:17:09,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:17:09,692.692 INFO    ] time= 22/06/2026 02:17:09
[2026-06-22 02:17:09,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:17:09,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:17:09,831.831 INFO    ] No existing commands found in stream
[2026-06-22 02:17:14,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:17:14,848.848 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-22 02:17:17,636.636 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:17:17,639.639 INFO    ] Checking for system updates...
[2026-06-22 02:17:17,685.685 INFO    ] 200
[2026-06-22 02:17:17,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:17:17,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:17:17,757.757 INFO    ] No update needed
[2026-06-22 02:17:17,761.761 INFO    ] Checking for camera pi updates...
[2026-06-22 02:17:17,804.804 INFO    ] 200
[2026-06-22 02:17:17,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:17:17,856.856 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:17:17,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:17:17,959.959 INFO    ] No camera update needed
[2026-06-22 02:17:17,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:17:17,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:17:17,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:17:17,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:17:20,020.020 INFO    ] ================================================
[2026-06-22 02:17:20,036.036 INFO    ] Launching Daemon at Mon Jun 22 02:17:20 IST 2026
[2026-06-22 02:17:20,047.047 INFO    ] ================================================
[2026-06-22 02:17:20,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:17:20
[2026-06-22 02:17:21,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:17:21,687.687 INFO    ] Initializing speech engine...
[2026-06-22 02:17:21,694.694 INFO    ] 2026-06-22 02:17:21
[2026-06-22 02:17:21,956.956 INFO    ] 2026-06-22 02:17:21
[2026-06-22 02:17:22,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:17:22,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:17:22,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:17:22,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:17:22,403.403 INFO    ] time= 22/06/2026 02:17:22
[2026-06-22 02:17:22,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:17:22,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:17:22,575.575 INFO    ] No existing commands found in stream
[2026-06-22 02:17:27,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:17:27,589.589 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-22 02:17:29,382.382 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:17:29,384.384 INFO    ] Checking for system updates...
[2026-06-22 02:17:29,414.414 INFO    ] 200
[2026-06-22 02:17:29,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:17:29,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:17:29,477.477 INFO    ] No update needed
[2026-06-22 02:17:29,479.479 INFO    ] Checking for camera pi updates...
[2026-06-22 02:17:29,517.517 INFO    ] 200
[2026-06-22 02:17:29,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:17:29,560.560 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:17:29,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:17:29,646.646 INFO    ] No camera update needed
[2026-06-22 02:17:29,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:17:29,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:17:29,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:17:29,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:17:31,703.703 INFO    ] ================================================
[2026-06-22 02:17:31,719.719 INFO    ] Launching Daemon at Mon Jun 22 02:17:31 IST 2026
[2026-06-22 02:17:31,729.729 INFO    ] ================================================
[2026-06-22 02:17:32,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:17:32
[2026-06-22 02:17:32,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:17:33,213.213 INFO    ] Initializing speech engine...
[2026-06-22 02:17:33,229.229 INFO    ] 2026-06-22 02:17:33
[2026-06-22 02:17:33,516.516 INFO    ] 2026-06-22 02:17:33
[2026-06-22 02:17:33,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:17:33,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:17:33,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:17:33,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:17:33,986.986 INFO    ] time= 22/06/2026 02:17:33
[2026-06-22 02:17:34,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:17:34,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:17:34,131.131 INFO    ] No existing commands found in stream
[2026-06-22 02:17:39,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:17:39,145.145 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-22 02:17:39,743.743 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:17:39,747.747 INFO    ] Checking for system updates...
[2026-06-22 02:17:39,784.784 INFO    ] 200
[2026-06-22 02:17:39,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:17:39,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:17:39,843.843 INFO    ] No update needed
[2026-06-22 02:17:39,846.846 INFO    ] Checking for camera pi updates...
[2026-06-22 02:17:39,885.885 INFO    ] 200
[2026-06-22 02:17:39,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:17:39,934.934 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:17:40,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:17:40,047.047 INFO    ] No camera update needed
[2026-06-22 02:17:40,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:17:40,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:17:40,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:17:40,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:17:42,107.107 INFO    ] ================================================
[2026-06-22 02:17:42,123.123 INFO    ] Launching Daemon at Mon Jun 22 02:17:42 IST 2026
[2026-06-22 02:17:42,135.135 INFO    ] ================================================
[2026-06-22 02:17:42,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:17:42
[2026-06-22 02:17:43,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:17:43,466.466 INFO    ] Initializing speech engine...
[2026-06-22 02:17:43,485.485 INFO    ] 2026-06-22 02:17:43
[2026-06-22 02:17:43,731.731 INFO    ] 2026-06-22 02:17:43
[2026-06-22 02:17:43,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:17:44,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:17:44,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:17:44,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:17:44,190.190 INFO    ] time= 22/06/2026 02:17:44
[2026-06-22 02:17:44,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:17:44,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:17:44,339.339 INFO    ] No existing commands found in stream
[2026-06-22 02:17:49,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:17:49,355.355 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-22 02:17:52,530.530 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:17:52,532.532 INFO    ] Checking for system updates...
[2026-06-22 02:17:52,553.553 INFO    ] 200
[2026-06-22 02:17:52,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:17:52,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:17:52,586.586 INFO    ] No update needed
[2026-06-22 02:17:52,587.587 INFO    ] Checking for camera pi updates...
[2026-06-22 02:17:52,614.614 INFO    ] 200
[2026-06-22 02:17:52,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:17:52,658.658 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:17:52,745.745 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:17:52,748.748 INFO    ] No camera update needed
[2026-06-22 02:17:52,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:17:52,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:17:52,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:17:52,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:17:54,807.807 INFO    ] ================================================
[2026-06-22 02:17:54,823.823 INFO    ] Launching Daemon at Mon Jun 22 02:17:54 IST 2026
[2026-06-22 02:17:54,835.835 INFO    ] ================================================
[2026-06-22 02:17:55,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:17:55
[2026-06-22 02:17:55,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:17:56,213.213 INFO    ] Initializing speech engine...
[2026-06-22 02:17:56,219.219 INFO    ] 2026-06-22 02:17:56
[2026-06-22 02:17:56,485.485 INFO    ] 2026-06-22 02:17:56
[2026-06-22 02:17:56,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:17:56,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:17:56,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:17:56,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:17:56,941.941 INFO    ] time= 22/06/2026 02:17:56
[2026-06-22 02:17:57,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:17:57,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:17:57,098.098 INFO    ] No existing commands found in stream
[2026-06-22 02:18:02,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:18:02,112.112 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-22 02:18:06,043.043 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:18:06,046.046 INFO    ] Checking for system updates...
[2026-06-22 02:18:06,083.083 INFO    ] 200
[2026-06-22 02:18:06,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:18:06,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:18:06,147.147 INFO    ] No update needed
[2026-06-22 02:18:06,149.149 INFO    ] Checking for camera pi updates...
[2026-06-22 02:18:06,183.183 INFO    ] 200
[2026-06-22 02:18:06,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:18:06,227.227 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:18:06,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:18:06,331.331 INFO    ] No camera update needed
[2026-06-22 02:18:06,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:18:06,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:18:06,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:18:06,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:18:08,388.388 INFO    ] ================================================
[2026-06-22 02:18:08,404.404 INFO    ] Launching Daemon at Mon Jun 22 02:18:08 IST 2026
[2026-06-22 02:18:08,416.416 INFO    ] ================================================
[2026-06-22 02:18:08,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:18:08
[2026-06-22 02:18:09,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:18:09,846.846 INFO    ] Initializing speech engine...
[2026-06-22 02:18:09,856.856 INFO    ] 2026-06-22 02:18:09
[2026-06-22 02:18:10,107.107 INFO    ] 2026-06-22 02:18:10
[2026-06-22 02:18:10,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:18:10,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:18:10,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:18:10,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:18:10,485.485 INFO    ] time= 22/06/2026 02:18:10
[2026-06-22 02:18:10,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:18:10,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:18:10,650.650 INFO    ] No existing commands found in stream
[2026-06-22 02:18:15,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:18:15,683.683 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-22 02:18:18,899.899 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:18:18,900.900 INFO    ] Checking for system updates...
[2026-06-22 02:18:18,922.922 INFO    ] 200
[2026-06-22 02:18:18,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:18:18,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:18:18,978.978 INFO    ] No update needed
[2026-06-22 02:18:18,985.985 INFO    ] Checking for camera pi updates...
[2026-06-22 02:18:19,018.018 INFO    ] 200
[2026-06-22 02:18:19,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:18:19,069.069 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:18:19,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:18:19,152.152 INFO    ] No camera update needed
[2026-06-22 02:18:19,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:18:19,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:18:19,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:18:19,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:18:21,208.208 INFO    ] ================================================
[2026-06-22 02:18:21,223.223 INFO    ] Launching Daemon at Mon Jun 22 02:18:21 IST 2026
[2026-06-22 02:18:21,234.234 INFO    ] ================================================
[2026-06-22 02:18:21,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:18:21
[2026-06-22 02:18:22,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:18:22,655.655 INFO    ] Initializing speech engine...
[2026-06-22 02:18:22,663.663 INFO    ] 2026-06-22 02:18:22
[2026-06-22 02:18:22,955.955 INFO    ] 2026-06-22 02:18:22
[2026-06-22 02:18:22,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:18:23,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:18:23,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:18:23,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:18:23,328.328 INFO    ] time= 22/06/2026 02:18:23
[2026-06-22 02:18:23,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:18:23,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:18:23,451.451 INFO    ] No existing commands found in stream
[2026-06-22 02:18:28,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:18:28,467.467 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-22 02:18:32,450.450 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:18:32,453.453 INFO    ] Checking for system updates...
[2026-06-22 02:18:32,495.495 INFO    ] 200
[2026-06-22 02:18:32,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:18:32,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:18:32,569.569 INFO    ] No update needed
[2026-06-22 02:18:32,571.571 INFO    ] Checking for camera pi updates...
[2026-06-22 02:18:32,610.610 INFO    ] 200
[2026-06-22 02:18:32,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:18:32,658.658 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:18:32,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:18:32,743.743 INFO    ] No camera update needed
[2026-06-22 02:18:32,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:18:32,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:18:32,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:18:32,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:18:34,802.802 INFO    ] ================================================
[2026-06-22 02:18:34,817.817 INFO    ] Launching Daemon at Mon Jun 22 02:18:34 IST 2026
[2026-06-22 02:18:34,828.828 INFO    ] ================================================
[2026-06-22 02:18:35,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:18:35
[2026-06-22 02:18:35,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:18:36,231.231 INFO    ] Initializing speech engine...
[2026-06-22 02:18:36,238.238 INFO    ] 2026-06-22 02:18:36
[2026-06-22 02:18:36,504.504 INFO    ] 2026-06-22 02:18:36
[2026-06-22 02:18:36,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:18:36,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:18:36,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:18:36,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:18:36,880.880 INFO    ] time= 22/06/2026 02:18:36
[2026-06-22 02:18:36,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:18:36,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:18:37,007.007 INFO    ] No existing commands found in stream
[2026-06-22 02:18:42,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:18:42,022.022 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-22 02:18:44,562.562 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:18:44,565.565 INFO    ] Checking for system updates...
[2026-06-22 02:18:44,608.608 INFO    ] 200
[2026-06-22 02:18:44,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:18:44,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:18:44,665.665 INFO    ] No update needed
[2026-06-22 02:18:44,667.667 INFO    ] Checking for camera pi updates...
[2026-06-22 02:18:44,704.704 INFO    ] 200
[2026-06-22 02:18:44,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:18:44,747.747 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:18:44,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:18:44,842.842 INFO    ] No camera update needed
[2026-06-22 02:18:44,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:18:44,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:18:44,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:18:44,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:18:46,898.898 INFO    ] ================================================
[2026-06-22 02:18:46,914.914 INFO    ] Launching Daemon at Mon Jun 22 02:18:46 IST 2026
[2026-06-22 02:18:46,925.925 INFO    ] ================================================
[2026-06-22 02:18:47,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:18:47
[2026-06-22 02:18:48,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:18:48,543.543 INFO    ] Initializing speech engine...
[2026-06-22 02:18:48,555.555 INFO    ] 2026-06-22 02:18:48
[2026-06-22 02:18:48,834.834 INFO    ] 2026-06-22 02:18:48
[2026-06-22 02:18:48,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:18:49,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:18:49,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:18:49,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:18:49,325.325 INFO    ] time= 22/06/2026 02:18:49
[2026-06-22 02:18:49,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:18:49,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:18:49,526.526 INFO    ] No existing commands found in stream
[2026-06-22 02:18:54,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:18:54,552.552 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-22 02:18:58,685.685 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:18:58,686.686 INFO    ] Checking for system updates...
[2026-06-22 02:18:58,707.707 INFO    ] 200
[2026-06-22 02:18:58,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:18:58,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:18:58,741.741 INFO    ] No update needed
[2026-06-22 02:18:58,742.742 INFO    ] Checking for camera pi updates...
[2026-06-22 02:18:58,763.763 INFO    ] 200
[2026-06-22 02:18:58,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:18:58,791.791 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:18:58,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:18:58,898.898 INFO    ] No camera update needed
[2026-06-22 02:18:58,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:18:58,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:18:58,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:18:58,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:19:00,957.957 INFO    ] ================================================
[2026-06-22 02:19:00,973.973 INFO    ] Launching Daemon at Mon Jun 22 02:19:00 IST 2026
[2026-06-22 02:19:00,984.984 INFO    ] ================================================
[2026-06-22 02:19:01,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:19:01
[2026-06-22 02:19:02,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:19:02,601.601 INFO    ] Initializing speech engine...
[2026-06-22 02:19:02,606.606 INFO    ] 2026-06-22 02:19:02
[2026-06-22 02:19:02,925.925 INFO    ] 2026-06-22 02:19:02
[2026-06-22 02:19:02,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:19:03,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:19:03,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:19:03,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:19:03,446.446 INFO    ] time= 22/06/2026 02:19:03
[2026-06-22 02:19:03,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:19:03,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:19:03,658.658 INFO    ] No existing commands found in stream
[2026-06-22 02:19:08,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:19:08,689.689 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-22 02:19:12,099.099 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:19:12,102.102 INFO    ] Checking for system updates...
[2026-06-22 02:19:12,140.140 INFO    ] 200
[2026-06-22 02:19:12,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:19:12,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:19:12,199.199 INFO    ] No update needed
[2026-06-22 02:19:12,201.201 INFO    ] Checking for camera pi updates...
[2026-06-22 02:19:12,236.236 INFO    ] 200
[2026-06-22 02:19:12,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:19:12,280.280 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:19:12,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:19:12,344.344 INFO    ] No camera update needed
[2026-06-22 02:19:12,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:19:12,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:19:12,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:19:12,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:19:14,402.402 INFO    ] ================================================
[2026-06-22 02:19:14,417.417 INFO    ] Launching Daemon at Mon Jun 22 02:19:14 IST 2026
[2026-06-22 02:19:14,429.429 INFO    ] ================================================
[2026-06-22 02:19:15,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:19:15
[2026-06-22 02:19:15,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:19:15,902.902 INFO    ] Initializing speech engine...
[2026-06-22 02:19:15,911.911 INFO    ] 2026-06-22 02:19:15
[2026-06-22 02:19:16,172.172 INFO    ] 2026-06-22 02:19:16
[2026-06-22 02:19:16,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:19:16,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:19:16,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:19:16,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:19:16,613.613 INFO    ] time= 22/06/2026 02:19:16
[2026-06-22 02:19:16,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:19:16,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:19:16,779.779 INFO    ] No existing commands found in stream
[2026-06-22 02:19:21,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:19:21,794.794 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-22 02:19:22,204.204 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:19:22,207.207 INFO    ] Checking for system updates...
[2026-06-22 02:19:22,243.243 INFO    ] 200
[2026-06-22 02:19:22,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:19:22,299.299 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:19:22,301.301 INFO    ] No update needed
[2026-06-22 02:19:22,303.303 INFO    ] Checking for camera pi updates...
[2026-06-22 02:19:22,337.337 INFO    ] 200
[2026-06-22 02:19:22,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:19:22,381.381 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:19:22,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:19:22,470.470 INFO    ] No camera update needed
[2026-06-22 02:19:22,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:19:22,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:19:22,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:19:22,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:19:24,528.528 INFO    ] ================================================
[2026-06-22 02:19:24,543.543 INFO    ] Launching Daemon at Mon Jun 22 02:19:24 IST 2026
[2026-06-22 02:19:24,553.553 INFO    ] ================================================
[2026-06-22 02:19:25,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:19:25
[2026-06-22 02:19:25,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:19:25,933.933 INFO    ] Initializing speech engine...
[2026-06-22 02:19:25,941.941 INFO    ] 2026-06-22 02:19:25
[2026-06-22 02:19:26,200.200 INFO    ] 2026-06-22 02:19:26
[2026-06-22 02:19:26,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:19:26,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:19:26,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:19:26,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:19:26,667.667 INFO    ] time= 22/06/2026 02:19:26
[2026-06-22 02:19:26,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:19:26,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:19:26,805.805 INFO    ] No existing commands found in stream
[2026-06-22 02:19:31,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:19:31,819.819 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-22 02:19:35,699.699 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:19:35,701.701 INFO    ] Checking for system updates...
[2026-06-22 02:19:35,737.737 INFO    ] 200
[2026-06-22 02:19:35,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:19:35,792.792 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:19:35,795.795 INFO    ] No update needed
[2026-06-22 02:19:35,797.797 INFO    ] Checking for camera pi updates...
[2026-06-22 02:19:35,832.832 INFO    ] 200
[2026-06-22 02:19:35,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:19:35,874.874 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:19:36,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:19:36,059.059 INFO    ] No camera update needed
[2026-06-22 02:19:36,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:19:36,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:19:36,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:19:36,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:19:38,115.115 INFO    ] ================================================
[2026-06-22 02:19:38,131.131 INFO    ] Launching Daemon at Mon Jun 22 02:19:38 IST 2026
[2026-06-22 02:19:38,141.141 INFO    ] ================================================
[2026-06-22 02:19:38,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:19:38
[2026-06-22 02:19:39,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:19:39,465.465 INFO    ] Initializing speech engine...
[2026-06-22 02:19:39,488.488 INFO    ] 2026-06-22 02:19:39
[2026-06-22 02:19:39,750.750 INFO    ] 2026-06-22 02:19:39
[2026-06-22 02:19:39,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:19:39,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:19:40,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:19:40,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:19:40,209.209 INFO    ] time= 22/06/2026 02:19:40
[2026-06-22 02:19:40,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:19:40,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:19:40,369.369 INFO    ] No existing commands found in stream
[2026-06-22 02:19:45,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:19:45,384.384 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-22 02:19:46,816.816 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:19:46,818.818 INFO    ] Checking for system updates...
[2026-06-22 02:19:46,854.854 INFO    ] 200
[2026-06-22 02:19:46,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:19:46,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:19:46,918.918 INFO    ] No update needed
[2026-06-22 02:19:46,921.921 INFO    ] Checking for camera pi updates...
[2026-06-22 02:19:47,274.274 INFO    ] 200
[2026-06-22 02:19:47,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:19:47,317.317 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:19:47,407.407 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:19:47,409.409 INFO    ] No camera update needed
[2026-06-22 02:19:47,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:19:47,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:19:47,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:19:47,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:19:49,467.467 INFO    ] ================================================
[2026-06-22 02:19:49,482.482 INFO    ] Launching Daemon at Mon Jun 22 02:19:49 IST 2026
[2026-06-22 02:19:49,493.493 INFO    ] ================================================
[2026-06-22 02:19:50,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:19:50
[2026-06-22 02:19:50,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:19:50,870.870 INFO    ] Initializing speech engine...
[2026-06-22 02:19:50,876.876 INFO    ] 2026-06-22 02:19:50
[2026-06-22 02:19:51,123.123 INFO    ] 2026-06-22 02:19:51
[2026-06-22 02:19:51,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:19:51,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:19:51,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:19:51,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:19:51,600.600 INFO    ] time= 22/06/2026 02:19:51
[2026-06-22 02:19:51,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:19:51,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:19:51,745.745 INFO    ] No existing commands found in stream
[2026-06-22 02:19:56,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:19:56,760.760 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-22 02:19:58,674.674 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:19:58,677.677 INFO    ] Checking for system updates...
[2026-06-22 02:19:58,713.713 INFO    ] 200
[2026-06-22 02:19:58,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:19:58,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:19:58,772.772 INFO    ] No update needed
[2026-06-22 02:19:58,774.774 INFO    ] Checking for camera pi updates...
[2026-06-22 02:19:58,808.808 INFO    ] 200
[2026-06-22 02:19:58,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:19:58,855.855 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:19:58,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:19:58,940.940 INFO    ] No camera update needed
[2026-06-22 02:19:58,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:19:58,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:19:58,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:19:58,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:20:01,998.998 INFO    ] ================================================
[2026-06-22 02:20:01,013.013 INFO    ] Launching Daemon at Mon Jun 22 02:20:01 IST 2026
[2026-06-22 02:20:01,024.024 INFO    ] ================================================
[2026-06-22 02:20:01,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:20:01
[2026-06-22 02:20:02,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:20:03,073.073 INFO    ] Initializing speech engine...
[2026-06-22 02:20:03,077.077 INFO    ] 2026-06-22 02:20:03
[2026-06-22 02:20:03,431.431 INFO    ] 2026-06-22 02:20:03
[2026-06-22 02:20:03,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:20:03,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:20:03,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:20:03,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:20:03,810.810 INFO    ] time= 22/06/2026 02:20:03
[2026-06-22 02:20:03,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:20:03,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:20:03,990.990 INFO    ] No existing commands found in stream
[2026-06-22 02:20:09,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:20:09,006.006 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-22 02:20:12,367.367 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:20:12,376.376 INFO    ] Checking for system updates...
[2026-06-22 02:20:12,398.398 INFO    ] 200
[2026-06-22 02:20:12,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:20:12,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:20:12,435.435 INFO    ] No update needed
[2026-06-22 02:20:12,436.436 INFO    ] Checking for camera pi updates...
[2026-06-22 02:20:12,468.468 INFO    ] 200
[2026-06-22 02:20:12,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:20:12,518.518 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:20:12,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:20:12,605.605 INFO    ] No camera update needed
[2026-06-22 02:20:12,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:20:12,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:20:12,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:20:12,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:20:14,661.661 INFO    ] ================================================
[2026-06-22 02:20:14,677.677 INFO    ] Launching Daemon at Mon Jun 22 02:20:14 IST 2026
[2026-06-22 02:20:14,688.688 INFO    ] ================================================
[2026-06-22 02:20:15,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:20:15
[2026-06-22 02:20:15,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:20:16,038.038 INFO    ] Initializing speech engine...
[2026-06-22 02:20:16,048.048 INFO    ] 2026-06-22 02:20:16
[2026-06-22 02:20:16,295.295 INFO    ] 2026-06-22 02:20:16
[2026-06-22 02:20:16,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:20:16,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:20:16,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:20:16,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:20:16,770.770 INFO    ] time= 22/06/2026 02:20:16
[2026-06-22 02:20:16,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:20:16,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:20:16,914.914 INFO    ] No existing commands found in stream
[2026-06-22 02:20:21,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:20:21,928.928 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-22 02:20:24,113.113 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:20:24,116.116 INFO    ] Checking for system updates...
[2026-06-22 02:20:24,153.153 INFO    ] 200
[2026-06-22 02:20:24,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:20:24,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:20:24,210.210 INFO    ] No update needed
[2026-06-22 02:20:24,213.213 INFO    ] Checking for camera pi updates...
[2026-06-22 02:20:24,246.246 INFO    ] 200
[2026-06-22 02:20:24,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:20:24,290.290 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:20:24,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:20:24,394.394 INFO    ] No camera update needed
[2026-06-22 02:20:24,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:20:24,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:20:24,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:20:24,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:20:26,452.452 INFO    ] ================================================
[2026-06-22 02:20:26,467.467 INFO    ] Launching Daemon at Mon Jun 22 02:20:26 IST 2026
[2026-06-22 02:20:26,478.478 INFO    ] ================================================
[2026-06-22 02:20:27,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:20:27
[2026-06-22 02:20:27,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:20:27,893.893 INFO    ] Initializing speech engine...
[2026-06-22 02:20:27,908.908 INFO    ] 2026-06-22 02:20:27
[2026-06-22 02:20:28,217.217 INFO    ] 2026-06-22 02:20:28
[2026-06-22 02:20:28,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:20:28,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:20:28,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:20:28,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:20:28,717.717 INFO    ] time= 22/06/2026 02:20:28
[2026-06-22 02:20:28,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:20:28,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:20:28,870.870 INFO    ] No existing commands found in stream
[2026-06-22 02:20:33,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:20:33,896.896 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-22 02:20:34,845.845 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:20:34,848.848 INFO    ] Checking for system updates...
[2026-06-22 02:20:34,891.891 INFO    ] 200
[2026-06-22 02:20:34,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:20:34,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:20:34,955.955 INFO    ] No update needed
[2026-06-22 02:20:34,958.958 INFO    ] Checking for camera pi updates...
[2026-06-22 02:20:34,993.993 INFO    ] 200
[2026-06-22 02:20:34,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:20:35,038.038 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:20:35,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:20:35,133.133 INFO    ] No camera update needed
[2026-06-22 02:20:35,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:20:35,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:20:35,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:20:35,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:20:37,190.190 INFO    ] ================================================
[2026-06-22 02:20:37,205.205 INFO    ] Launching Daemon at Mon Jun 22 02:20:37 IST 2026
[2026-06-22 02:20:37,216.216 INFO    ] ================================================
[2026-06-22 02:20:37,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:20:37
[2026-06-22 02:20:38,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:20:38,582.582 INFO    ] Initializing speech engine...
[2026-06-22 02:20:38,591.591 INFO    ] 2026-06-22 02:20:38
[2026-06-22 02:20:38,845.845 INFO    ] 2026-06-22 02:20:38
[2026-06-22 02:20:38,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:20:39,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:20:39,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:20:39,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:20:39,308.308 INFO    ] time= 22/06/2026 02:20:39
[2026-06-22 02:20:39,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:20:39,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:20:39,453.453 INFO    ] No existing commands found in stream
[2026-06-22 02:20:44,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:20:44,468.468 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-22 02:20:45,184.184 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:20:45,186.186 INFO    ] Checking for system updates...
[2026-06-22 02:20:45,222.222 INFO    ] 200
[2026-06-22 02:20:45,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:20:45,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:20:45,279.279 INFO    ] No update needed
[2026-06-22 02:20:45,282.282 INFO    ] Checking for camera pi updates...
[2026-06-22 02:20:45,319.319 INFO    ] 200
[2026-06-22 02:20:45,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:20:45,367.367 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:20:45,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:20:45,453.453 INFO    ] No camera update needed
[2026-06-22 02:20:45,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:20:45,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:20:45,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:20:45,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:20:47,509.509 INFO    ] ================================================
[2026-06-22 02:20:47,524.524 INFO    ] Launching Daemon at Mon Jun 22 02:20:47 IST 2026
[2026-06-22 02:20:47,535.535 INFO    ] ================================================
[2026-06-22 02:20:48,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:20:48
[2026-06-22 02:20:48,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:20:49,081.081 INFO    ] Initializing speech engine...
[2026-06-22 02:20:49,093.093 INFO    ] 2026-06-22 02:20:49
[2026-06-22 02:20:49,378.378 INFO    ] 2026-06-22 02:20:49
[2026-06-22 02:20:49,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:20:49,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:20:49,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:20:49,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:20:49,833.833 INFO    ] time= 22/06/2026 02:20:49
[2026-06-22 02:20:49,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:20:49,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:20:50,033.033 INFO    ] No existing commands found in stream
[2026-06-22 02:20:55,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:20:55,073.073 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-22 02:20:56,005.005 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:20:56,007.007 INFO    ] Checking for system updates...
[2026-06-22 02:20:56,027.027 INFO    ] 200
[2026-06-22 02:20:56,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:20:56,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:20:56,085.085 INFO    ] No update needed
[2026-06-22 02:20:56,087.087 INFO    ] Checking for camera pi updates...
[2026-06-22 02:20:56,122.122 INFO    ] 200
[2026-06-22 02:20:56,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:20:56,170.170 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:20:56,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:20:56,256.256 INFO    ] No camera update needed
[2026-06-22 02:20:56,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:20:56,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:20:56,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:20:56,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:20:58,314.314 INFO    ] ================================================
[2026-06-22 02:20:58,329.329 INFO    ] Launching Daemon at Mon Jun 22 02:20:58 IST 2026
[2026-06-22 02:20:58,339.339 INFO    ] ================================================
[2026-06-22 02:20:59,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:20:58
[2026-06-22 02:20:59,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:20:59,896.896 INFO    ] Initializing speech engine...
[2026-06-22 02:20:59,902.902 INFO    ] 2026-06-22 02:20:59
[2026-06-22 02:21:00,212.212 INFO    ] 2026-06-22 02:21:00
[2026-06-22 02:21:00,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:21:00,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:21:00,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:21:00,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:21:00,723.723 INFO    ] time= 22/06/2026 02:21:00
[2026-06-22 02:21:00,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:21:00,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:21:00,874.874 INFO    ] No existing commands found in stream
[2026-06-22 02:21:05,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:21:05,894.894 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-22 02:21:09,450.450 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:21:09,453.453 INFO    ] Checking for system updates...
[2026-06-22 02:21:09,494.494 INFO    ] 200
[2026-06-22 02:21:09,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:21:09,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:21:09,551.551 INFO    ] No update needed
[2026-06-22 02:21:09,552.552 INFO    ] Checking for camera pi updates...
[2026-06-22 02:21:09,572.572 INFO    ] 200
[2026-06-22 02:21:09,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:21:09,597.597 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:21:09,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:21:09,681.681 INFO    ] No camera update needed
[2026-06-22 02:21:09,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:21:09,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:21:09,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:21:09,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:21:11,736.736 INFO    ] ================================================
[2026-06-22 02:21:11,751.751 INFO    ] Launching Daemon at Mon Jun 22 02:21:11 IST 2026
[2026-06-22 02:21:11,762.762 INFO    ] ================================================
[2026-06-22 02:21:12,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:21:12
[2026-06-22 02:21:12,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:21:13,226.226 INFO    ] Initializing speech engine...
[2026-06-22 02:21:13,244.244 INFO    ] 2026-06-22 02:21:13
[2026-06-22 02:21:13,518.518 INFO    ] 2026-06-22 02:21:13
[2026-06-22 02:21:13,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:21:13,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:21:13,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:21:13,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:21:13,876.876 INFO    ] time= 22/06/2026 02:21:13
[2026-06-22 02:21:13,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:21:13,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:21:13,962.962 INFO    ] No existing commands found in stream
[2026-06-22 02:21:18,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:21:19,000.000 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-22 02:21:21,860.860 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:21:21,863.863 INFO    ] Checking for system updates...
[2026-06-22 02:21:21,899.899 INFO    ] 200
[2026-06-22 02:21:21,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:21:21,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:21:21,964.964 INFO    ] No update needed
[2026-06-22 02:21:21,967.967 INFO    ] Checking for camera pi updates...
[2026-06-22 02:21:21,996.996 INFO    ] 200
[2026-06-22 02:21:21,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:21:22,021.021 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:21:22,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:21:22,081.081 INFO    ] No camera update needed
[2026-06-22 02:21:22,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:21:22,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:21:22,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:21:22,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:21:24,137.137 INFO    ] ================================================
[2026-06-22 02:21:24,152.152 INFO    ] Launching Daemon at Mon Jun 22 02:21:24 IST 2026
[2026-06-22 02:21:24,163.163 INFO    ] ================================================
[2026-06-22 02:21:24,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:21:24
[2026-06-22 02:21:25,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:21:25,518.518 INFO    ] Initializing speech engine...
[2026-06-22 02:21:25,530.530 INFO    ] 2026-06-22 02:21:25
[2026-06-22 02:21:25,778.778 INFO    ] 2026-06-22 02:21:25
[2026-06-22 02:21:25,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:21:25,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:21:25,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:21:26,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:21:26,148.148 INFO    ] time= 22/06/2026 02:21:26
[2026-06-22 02:21:26,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:21:26,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:21:26,318.318 INFO    ] No existing commands found in stream
[2026-06-22 02:21:31,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:21:31,351.351 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-22 02:21:35,456.456 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:21:35,457.457 INFO    ] Checking for system updates...
[2026-06-22 02:21:35,478.478 INFO    ] 200
[2026-06-22 02:21:35,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:21:35,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:21:35,537.537 INFO    ] No update needed
[2026-06-22 02:21:35,540.540 INFO    ] Checking for camera pi updates...
[2026-06-22 02:21:35,578.578 INFO    ] 200
[2026-06-22 02:21:35,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:21:35,629.629 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:21:35,715.715 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:21:35,718.718 INFO    ] No camera update needed
[2026-06-22 02:21:35,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:21:35,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:21:35,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:21:35,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:21:37,775.775 INFO    ] ================================================
[2026-06-22 02:21:37,790.790 INFO    ] Launching Daemon at Mon Jun 22 02:21:37 IST 2026
[2026-06-22 02:21:37,805.805 INFO    ] ================================================
[2026-06-22 02:21:38,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:21:38
[2026-06-22 02:21:38,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:21:39,217.217 INFO    ] Initializing speech engine...
[2026-06-22 02:21:39,223.223 INFO    ] 2026-06-22 02:21:39
[2026-06-22 02:21:39,525.525 INFO    ] 2026-06-22 02:21:39
[2026-06-22 02:21:39,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:21:39,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:21:39,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:21:39,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:21:39,883.883 INFO    ] time= 22/06/2026 02:21:39
[2026-06-22 02:21:39,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:21:39,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:21:39,959.959 INFO    ] No existing commands found in stream
[2026-06-22 02:21:44,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:21:44,974.974 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-22 02:21:48,325.325 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:21:48,328.328 INFO    ] Checking for system updates...
[2026-06-22 02:21:48,365.365 INFO    ] 200
[2026-06-22 02:21:48,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:21:48,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:21:48,429.429 INFO    ] No update needed
[2026-06-22 02:21:48,431.431 INFO    ] Checking for camera pi updates...
[2026-06-22 02:21:48,450.450 INFO    ] 200
[2026-06-22 02:21:48,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:21:48,477.477 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:21:48,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:21:48,645.645 INFO    ] No camera update needed
[2026-06-22 02:21:48,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:21:48,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:21:48,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:21:48,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:21:50,700.700 INFO    ] ================================================
[2026-06-22 02:21:50,716.716 INFO    ] Launching Daemon at Mon Jun 22 02:21:50 IST 2026
[2026-06-22 02:21:50,727.727 INFO    ] ================================================
[2026-06-22 02:21:51,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:21:51
[2026-06-22 02:21:51,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:21:52,280.280 INFO    ] Initializing speech engine...
[2026-06-22 02:21:52,288.288 INFO    ] 2026-06-22 02:21:52
[2026-06-22 02:21:52,602.602 INFO    ] 2026-06-22 02:21:52
[2026-06-22 02:21:52,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:21:52,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:21:52,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:21:53,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:21:53,107.107 INFO    ] time= 22/06/2026 02:21:53
[2026-06-22 02:21:53,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:21:53,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:21:53,239.239 INFO    ] No existing commands found in stream
[2026-06-22 02:21:58,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:21:58,273.273 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-22 02:22:02,431.431 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:22:02,435.435 INFO    ] Checking for system updates...
[2026-06-22 02:22:02,479.479 INFO    ] 200
[2026-06-22 02:22:02,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:22:02,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:22:02,546.546 INFO    ] No update needed
[2026-06-22 02:22:02,549.549 INFO    ] Checking for camera pi updates...
[2026-06-22 02:22:02,592.592 INFO    ] 200
[2026-06-22 02:22:02,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:22:02,650.650 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:22:02,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:22:02,707.707 INFO    ] No camera update needed
[2026-06-22 02:22:02,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:22:02,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:22:02,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:22:02,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:22:04,770.770 INFO    ] ================================================
[2026-06-22 02:22:04,786.786 INFO    ] Launching Daemon at Mon Jun 22 02:22:04 IST 2026
[2026-06-22 02:22:04,797.797 INFO    ] ================================================
[2026-06-22 02:22:05,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:22:05
[2026-06-22 02:22:05,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:22:06,225.225 INFO    ] Initializing speech engine...
[2026-06-22 02:22:06,238.238 INFO    ] 2026-06-22 02:22:06
[2026-06-22 02:22:06,503.503 INFO    ] 2026-06-22 02:22:06
[2026-06-22 02:22:06,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:22:06,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:22:06,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:22:06,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:22:06,871.871 INFO    ] time= 22/06/2026 02:22:06
[2026-06-22 02:22:06,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:22:06,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:22:06,998.998 INFO    ] No existing commands found in stream
[2026-06-22 02:22:12,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:22:12,013.013 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-22 02:22:14,223.223 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:22:14,225.225 INFO    ] Checking for system updates...
[2026-06-22 02:22:14,247.247 INFO    ] 200
[2026-06-22 02:22:14,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:22:14,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:22:14,280.280 INFO    ] No update needed
[2026-06-22 02:22:14,281.281 INFO    ] Checking for camera pi updates...
[2026-06-22 02:22:14,301.301 INFO    ] 200
[2026-06-22 02:22:14,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:22:14,330.330 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:22:14,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:22:14,415.415 INFO    ] No camera update needed
[2026-06-22 02:22:14,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:22:14,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:22:14,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:22:14,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:22:16,470.470 INFO    ] ================================================
[2026-06-22 02:22:16,487.487 INFO    ] Launching Daemon at Mon Jun 22 02:22:16 IST 2026
[2026-06-22 02:22:16,498.498 INFO    ] ================================================
[2026-06-22 02:22:17,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:22:17
[2026-06-22 02:22:17,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:22:17,953.953 INFO    ] Initializing speech engine...
[2026-06-22 02:22:17,970.970 INFO    ] 2026-06-22 02:22:17
[2026-06-22 02:22:18,264.264 INFO    ] 2026-06-22 02:22:18
[2026-06-22 02:22:18,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:22:18,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:22:18,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:22:18,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:22:18,656.656 INFO    ] time= 22/06/2026 02:22:18
[2026-06-22 02:22:18,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:22:18,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:22:18,784.784 INFO    ] No existing commands found in stream
[2026-06-22 02:22:23,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:22:23,798.798 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-22 02:22:26,417.417 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:22:26,419.419 INFO    ] Checking for system updates...
[2026-06-22 02:22:26,460.460 INFO    ] 200
[2026-06-22 02:22:26,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:22:26,516.516 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:22:26,518.518 INFO    ] No update needed
[2026-06-22 02:22:26,520.520 INFO    ] Checking for camera pi updates...
[2026-06-22 02:22:26,554.554 INFO    ] 200
[2026-06-22 02:22:26,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:22:26,597.597 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:22:26,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:22:26,681.681 INFO    ] No camera update needed
[2026-06-22 02:22:26,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:22:26,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:22:26,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:22:26,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:22:28,738.738 INFO    ] ================================================
[2026-06-22 02:22:28,753.753 INFO    ] Launching Daemon at Mon Jun 22 02:22:28 IST 2026
[2026-06-22 02:22:28,765.765 INFO    ] ================================================
[2026-06-22 02:22:29,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:22:29
[2026-06-22 02:22:30,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:22:30,355.355 INFO    ] Initializing speech engine...
[2026-06-22 02:22:30,361.361 INFO    ] 2026-06-22 02:22:30
[2026-06-22 02:22:30,652.652 INFO    ] 2026-06-22 02:22:30
[2026-06-22 02:22:30,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:22:30,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:22:30,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:22:31,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:22:31,186.186 INFO    ] time= 22/06/2026 02:22:31
[2026-06-22 02:22:31,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:22:31,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:22:31,341.341 INFO    ] No existing commands found in stream
[2026-06-22 02:22:36,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:22:36,360.360 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-22 02:22:38,257.257 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:22:38,258.258 INFO    ] Checking for system updates...
[2026-06-22 02:22:38,280.280 INFO    ] 200
[2026-06-22 02:22:38,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:22:38,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:22:38,314.314 INFO    ] No update needed
[2026-06-22 02:22:38,316.316 INFO    ] Checking for camera pi updates...
[2026-06-22 02:22:38,338.338 INFO    ] 200
[2026-06-22 02:22:38,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:22:38,383.383 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:22:38,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:22:38,472.472 INFO    ] No camera update needed
[2026-06-22 02:22:38,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:22:38,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:22:38,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:22:38,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:22:40,532.532 INFO    ] ================================================
[2026-06-22 02:22:40,547.547 INFO    ] Launching Daemon at Mon Jun 22 02:22:40 IST 2026
[2026-06-22 02:22:40,558.558 INFO    ] ================================================
[2026-06-22 02:22:41,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:22:41
[2026-06-22 02:22:41,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:22:41,931.931 INFO    ] Initializing speech engine...
[2026-06-22 02:22:41,941.941 INFO    ] 2026-06-22 02:22:41
[2026-06-22 02:22:42,200.200 INFO    ] 2026-06-22 02:22:42
[2026-06-22 02:22:42,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:22:42,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:22:42,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:22:42,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:22:42,633.633 INFO    ] time= 22/06/2026 02:22:42
[2026-06-22 02:22:42,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:22:42,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:22:42,803.803 INFO    ] No existing commands found in stream
[2026-06-22 02:22:47,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:22:47,818.818 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-22 02:22:50,502.502 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:22:50,504.504 INFO    ] Checking for system updates...
[2026-06-22 02:22:50,526.526 INFO    ] 200
[2026-06-22 02:22:50,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:22:50,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:22:50,578.578 INFO    ] No update needed
[2026-06-22 02:22:50,581.581 INFO    ] Checking for camera pi updates...
[2026-06-22 02:22:50,615.615 INFO    ] 200
[2026-06-22 02:22:50,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:22:50,658.658 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:22:50,745.745 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:22:50,748.748 INFO    ] No camera update needed
[2026-06-22 02:22:50,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:22:50,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:22:50,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:22:50,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:22:52,803.803 INFO    ] ================================================
[2026-06-22 02:22:52,818.818 INFO    ] Launching Daemon at Mon Jun 22 02:22:52 IST 2026
[2026-06-22 02:22:52,829.829 INFO    ] ================================================
[2026-06-22 02:22:53,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:22:53
[2026-06-22 02:22:53,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:22:54,170.170 INFO    ] Initializing speech engine...
[2026-06-22 02:22:54,178.178 INFO    ] 2026-06-22 02:22:54
[2026-06-22 02:22:54,432.432 INFO    ] 2026-06-22 02:22:54
[2026-06-22 02:22:54,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:22:54,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:22:54,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:22:54,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:22:54,875.875 INFO    ] time= 22/06/2026 02:22:54
[2026-06-22 02:22:54,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:22:54,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:22:55,038.038 INFO    ] No existing commands found in stream
[2026-06-22 02:23:00,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:23:00,052.052 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-22 02:23:01,583.583 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:23:01,587.587 INFO    ] Checking for system updates...
[2026-06-22 02:23:01,656.656 INFO    ] 200
[2026-06-22 02:23:01,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:23:01,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:23:01,776.776 INFO    ] No update needed
[2026-06-22 02:23:01,779.779 INFO    ] Checking for camera pi updates...
[2026-06-22 02:23:01,817.817 INFO    ] 200
[2026-06-22 02:23:01,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:23:01,866.866 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:23:01,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:23:01,937.937 INFO    ] No camera update needed
[2026-06-22 02:23:01,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:23:01,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:23:01,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:23:01,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:23:04,003.003 INFO    ] ================================================
[2026-06-22 02:23:04,020.020 INFO    ] Launching Daemon at Mon Jun 22 02:23:04 IST 2026
[2026-06-22 02:23:04,030.030 INFO    ] ================================================
[2026-06-22 02:23:04,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:23:04
[2026-06-22 02:23:05,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:23:05,498.498 INFO    ] Initializing speech engine...
[2026-06-22 02:23:05,506.506 INFO    ] 2026-06-22 02:23:05
[2026-06-22 02:23:05,766.766 INFO    ] 2026-06-22 02:23:05
[2026-06-22 02:23:05,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:23:06,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:23:06,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:23:06,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:23:06,206.206 INFO    ] time= 22/06/2026 02:23:06
[2026-06-22 02:23:06,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:23:06,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:23:06,333.333 INFO    ] No existing commands found in stream
[2026-06-22 02:23:11,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:23:11,348.348 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-22 02:23:13,941.941 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:23:13,944.944 INFO    ] Checking for system updates...
[2026-06-22 02:23:13,982.982 INFO    ] 200
[2026-06-22 02:23:13,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:23:14,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:23:14,042.042 INFO    ] No update needed
[2026-06-22 02:23:14,045.045 INFO    ] Checking for camera pi updates...
[2026-06-22 02:23:14,080.080 INFO    ] 200
[2026-06-22 02:23:14,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:23:14,128.128 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:23:14,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:23:14,229.229 INFO    ] No camera update needed
[2026-06-22 02:23:14,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:23:14,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:23:14,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:23:14,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:23:16,288.288 INFO    ] ================================================
[2026-06-22 02:23:16,303.303 INFO    ] Launching Daemon at Mon Jun 22 02:23:16 IST 2026
[2026-06-22 02:23:16,313.313 INFO    ] ================================================
[2026-06-22 02:23:16,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:23:16
[2026-06-22 02:23:17,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:23:17,802.802 INFO    ] Initializing speech engine...
[2026-06-22 02:23:17,814.814 INFO    ] 2026-06-22 02:23:17
[2026-06-22 02:23:18,064.064 INFO    ] 2026-06-22 02:23:18
[2026-06-22 02:23:18,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:23:18,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:23:18,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:23:18,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:23:18,458.458 INFO    ] time= 22/06/2026 02:23:18
[2026-06-22 02:23:18,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:23:18,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:23:18,540.540 INFO    ] No existing commands found in stream
[2026-06-22 02:23:23,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:23:23,555.555 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-22 02:23:27,634.634 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:23:27,637.637 INFO    ] Checking for system updates...
[2026-06-22 02:23:27,674.674 INFO    ] 200
[2026-06-22 02:23:27,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:23:27,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:23:27,733.733 INFO    ] No update needed
[2026-06-22 02:23:27,735.735 INFO    ] Checking for camera pi updates...
[2026-06-22 02:23:27,772.772 INFO    ] 200
[2026-06-22 02:23:27,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:23:27,816.816 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:23:27,921.921 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:23:27,923.923 INFO    ] No camera update needed
[2026-06-22 02:23:27,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:23:27,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:23:27,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:23:27,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:23:30,998.998 INFO    ] ================================================
[2026-06-22 02:23:30,013.013 INFO    ] Launching Daemon at Mon Jun 22 02:23:30 IST 2026
[2026-06-22 02:23:30,024.024 INFO    ] ================================================
[2026-06-22 02:23:30,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:23:30
[2026-06-22 02:23:31,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:23:31,588.588 INFO    ] Initializing speech engine...
[2026-06-22 02:23:31,598.598 INFO    ] 2026-06-22 02:23:31
[2026-06-22 02:23:31,862.862 INFO    ] 2026-06-22 02:23:31
[2026-06-22 02:23:31,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:23:32,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:23:32,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:23:32,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:23:32,253.253 INFO    ] time= 22/06/2026 02:23:32
[2026-06-22 02:23:32,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:23:32,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:23:32,421.421 INFO    ] No existing commands found in stream
[2026-06-22 02:23:37,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:23:37,450.450 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-22 02:23:40,704.704 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:23:40,707.707 INFO    ] Checking for system updates...
[2026-06-22 02:23:40,743.743 INFO    ] 200
[2026-06-22 02:23:40,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:23:40,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:23:40,803.803 INFO    ] No update needed
[2026-06-22 02:23:40,805.805 INFO    ] Checking for camera pi updates...
[2026-06-22 02:23:40,840.840 INFO    ] 200
[2026-06-22 02:23:40,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:23:40,886.886 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:23:40,980.980 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:23:40,983.983 INFO    ] No camera update needed
[2026-06-22 02:23:40,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:23:40,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:23:40,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:23:40,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:23:43,032.032 INFO    ] ================================================
[2026-06-22 02:23:43,048.048 INFO    ] Launching Daemon at Mon Jun 22 02:23:43 IST 2026
[2026-06-22 02:23:43,059.059 INFO    ] ================================================
[2026-06-22 02:23:43,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:23:43
[2026-06-22 02:23:44,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:23:44,462.462 INFO    ] Initializing speech engine...
[2026-06-22 02:23:44,472.472 INFO    ] 2026-06-22 02:23:44
[2026-06-22 02:23:44,719.719 INFO    ] 2026-06-22 02:23:44
[2026-06-22 02:23:44,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:23:45,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:23:45,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:23:45,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:23:45,196.196 INFO    ] time= 22/06/2026 02:23:45
[2026-06-22 02:23:45,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:23:45,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:23:45,336.336 INFO    ] No existing commands found in stream
[2026-06-22 02:23:50,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:23:50,351.351 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-22 02:23:53,921.921 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:23:53,924.924 INFO    ] Checking for system updates...
[2026-06-22 02:23:53,968.968 INFO    ] 200
[2026-06-22 02:23:53,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:23:54,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:23:54,032.032 INFO    ] No update needed
[2026-06-22 02:23:54,034.034 INFO    ] Checking for camera pi updates...
[2026-06-22 02:23:54,070.070 INFO    ] 200
[2026-06-22 02:23:54,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:23:54,117.117 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:23:54,299.299 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:23:54,303.303 INFO    ] No camera update needed
[2026-06-22 02:23:54,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:23:54,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:23:54,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:23:54,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:23:56,368.368 INFO    ] ================================================
[2026-06-22 02:23:56,383.383 INFO    ] Launching Daemon at Mon Jun 22 02:23:56 IST 2026
[2026-06-22 02:23:56,394.394 INFO    ] ================================================
[2026-06-22 02:23:56,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:23:56
[2026-06-22 02:23:57,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:23:57,804.804 INFO    ] Initializing speech engine...
[2026-06-22 02:23:57,810.810 INFO    ] 2026-06-22 02:23:57
[2026-06-22 02:23:58,074.074 INFO    ] 2026-06-22 02:23:58
[2026-06-22 02:23:58,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:23:58,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:23:58,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:23:58,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:23:58,396.396 INFO    ] time= 22/06/2026 02:23:58
[2026-06-22 02:23:58,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:23:58,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:23:58,502.502 INFO    ] No existing commands found in stream
[2026-06-22 02:24:03,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:24:03,518.518 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-22 02:24:05,634.634 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:24:05,637.637 INFO    ] Checking for system updates...
[2026-06-22 02:24:05,673.673 INFO    ] 200
[2026-06-22 02:24:05,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:24:05,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:24:05,730.730 INFO    ] No update needed
[2026-06-22 02:24:05,733.733 INFO    ] Checking for camera pi updates...
[2026-06-22 02:24:05,770.770 INFO    ] 200
[2026-06-22 02:24:05,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:24:05,811.811 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:24:05,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:24:05,894.894 INFO    ] No camera update needed
[2026-06-22 02:24:05,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:24:05,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:24:05,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:24:05,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:24:07,941.941 INFO    ] ================================================
[2026-06-22 02:24:07,957.957 INFO    ] Launching Daemon at Mon Jun 22 02:24:07 IST 2026
[2026-06-22 02:24:07,968.968 INFO    ] ================================================
[2026-06-22 02:24:08,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:24:08
[2026-06-22 02:24:09,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:24:09,356.356 INFO    ] Initializing speech engine...
[2026-06-22 02:24:09,375.375 INFO    ] 2026-06-22 02:24:09
[2026-06-22 02:24:09,650.650 INFO    ] 2026-06-22 02:24:09
[2026-06-22 02:24:09,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:24:09,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:24:09,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:24:10,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:24:10,032.032 INFO    ] time= 22/06/2026 02:24:10
[2026-06-22 02:24:10,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:24:10,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:24:10,158.158 INFO    ] No existing commands found in stream
[2026-06-22 02:24:15,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:24:15,174.174 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-22 02:24:18,988.988 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:24:18,989.989 INFO    ] Checking for system updates...
[2026-06-22 02:24:19,010.010 INFO    ] 200
[2026-06-22 02:24:19,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:24:19,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:24:19,058.058 INFO    ] No update needed
[2026-06-22 02:24:19,060.060 INFO    ] Checking for camera pi updates...
[2026-06-22 02:24:19,095.095 INFO    ] 200
[2026-06-22 02:24:19,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:24:19,144.144 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:24:19,229.229 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:24:19,231.231 INFO    ] No camera update needed
[2026-06-22 02:24:19,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:24:19,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:24:19,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:24:19,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:24:21,287.287 INFO    ] ================================================
[2026-06-22 02:24:21,302.302 INFO    ] Launching Daemon at Mon Jun 22 02:24:21 IST 2026
[2026-06-22 02:24:21,313.313 INFO    ] ================================================
[2026-06-22 02:24:21,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:24:21
[2026-06-22 02:24:22,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:24:22,650.650 INFO    ] Initializing speech engine...
[2026-06-22 02:24:22,664.664 INFO    ] 2026-06-22 02:24:22
[2026-06-22 02:24:22,949.949 INFO    ] 2026-06-22 02:24:22
[2026-06-22 02:24:22,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:24:23,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:24:23,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:24:23,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:24:23,369.369 INFO    ] time= 22/06/2026 02:24:23
[2026-06-22 02:24:23,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:24:23,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:24:23,462.462 INFO    ] No existing commands found in stream
[2026-06-22 02:24:28,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:24:28,480.480 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-22 02:24:29,900.900 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:24:29,903.903 INFO    ] Checking for system updates...
[2026-06-22 02:24:29,941.941 INFO    ] 200
[2026-06-22 02:24:29,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:24:29,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:24:30,001.001 INFO    ] No update needed
[2026-06-22 02:24:30,004.004 INFO    ] Checking for camera pi updates...
[2026-06-22 02:24:30,039.039 INFO    ] 200
[2026-06-22 02:24:30,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:24:30,085.085 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:24:30,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:24:30,178.178 INFO    ] No camera update needed
[2026-06-22 02:24:30,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:24:30,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:24:30,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:24:30,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:24:32,243.243 INFO    ] ================================================
[2026-06-22 02:24:32,260.260 INFO    ] Launching Daemon at Mon Jun 22 02:24:32 IST 2026
[2026-06-22 02:24:32,271.271 INFO    ] ================================================
[2026-06-22 02:24:32,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:24:32
[2026-06-22 02:24:33,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:24:33,737.737 INFO    ] Initializing speech engine...
[2026-06-22 02:24:33,751.751 INFO    ] 2026-06-22 02:24:33
[2026-06-22 02:24:34,037.037 INFO    ] 2026-06-22 02:24:34
[2026-06-22 02:24:34,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:24:34,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:24:34,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:24:34,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:24:34,414.414 INFO    ] time= 22/06/2026 02:24:34
[2026-06-22 02:24:34,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:24:34,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:24:34,480.480 INFO    ] No existing commands found in stream
[2026-06-22 02:24:39,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:24:39,524.524 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-22 02:24:41,978.978 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:24:41,981.981 INFO    ] Checking for system updates...
[2026-06-22 02:24:42,018.018 INFO    ] 200
[2026-06-22 02:24:42,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:24:42,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:24:42,079.079 INFO    ] No update needed
[2026-06-22 02:24:42,082.082 INFO    ] Checking for camera pi updates...
[2026-06-22 02:24:42,117.117 INFO    ] 200
[2026-06-22 02:24:42,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:24:42,166.166 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:24:42,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:24:42,273.273 INFO    ] No camera update needed
[2026-06-22 02:24:42,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:24:42,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:24:42,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:24:42,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:24:44,328.328 INFO    ] ================================================
[2026-06-22 02:24:44,343.343 INFO    ] Launching Daemon at Mon Jun 22 02:24:44 IST 2026
[2026-06-22 02:24:44,354.354 INFO    ] ================================================
[2026-06-22 02:24:44,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:24:44
[2026-06-22 02:24:45,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:24:45,910.910 INFO    ] Initializing speech engine...
[2026-06-22 02:24:45,923.923 INFO    ] 2026-06-22 02:24:45
[2026-06-22 02:24:46,206.206 INFO    ] 2026-06-22 02:24:46
[2026-06-22 02:24:46,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:24:46,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:24:46,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:24:46,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:24:46,664.664 INFO    ] time= 22/06/2026 02:24:46
[2026-06-22 02:24:46,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:24:46,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:24:46,812.812 INFO    ] No existing commands found in stream
[2026-06-22 02:24:51,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:24:51,828.828 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-22 02:24:53,951.951 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:24:53,953.953 INFO    ] Checking for system updates...
[2026-06-22 02:24:53,976.976 INFO    ] 200
[2026-06-22 02:24:53,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:24:54,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:24:54,009.009 INFO    ] No update needed
[2026-06-22 02:24:54,010.010 INFO    ] Checking for camera pi updates...
[2026-06-22 02:24:54,029.029 INFO    ] 200
[2026-06-22 02:24:54,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:24:54,074.074 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:24:54,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:24:54,174.174 INFO    ] No camera update needed
[2026-06-22 02:24:54,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:24:54,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:24:54,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:24:54,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:24:56,230.230 INFO    ] ================================================
[2026-06-22 02:24:56,245.245 INFO    ] Launching Daemon at Mon Jun 22 02:24:56 IST 2026
[2026-06-22 02:24:56,256.256 INFO    ] ================================================
[2026-06-22 02:24:56,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:24:56
[2026-06-22 02:24:57,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:24:57,776.776 INFO    ] Initializing speech engine...
[2026-06-22 02:24:57,784.784 INFO    ] 2026-06-22 02:24:57
[2026-06-22 02:24:58,045.045 INFO    ] 2026-06-22 02:24:58
[2026-06-22 02:24:58,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:24:58,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:24:58,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:24:58,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:24:58,528.528 INFO    ] time= 22/06/2026 02:24:58
[2026-06-22 02:24:58,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:24:58,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:24:58,718.718 INFO    ] No existing commands found in stream
[2026-06-22 02:25:03,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:25:03,749.749 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-22 02:25:07,830.830 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:25:07,831.831 INFO    ] Checking for system updates...
[2026-06-22 02:25:07,853.853 INFO    ] 200
[2026-06-22 02:25:07,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:25:07,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:25:07,909.909 INFO    ] No update needed
[2026-06-22 02:25:07,912.912 INFO    ] Checking for camera pi updates...
[2026-06-22 02:25:07,946.946 INFO    ] 200
[2026-06-22 02:25:07,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:25:07,989.989 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:25:08,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:25:08,081.081 INFO    ] No camera update needed
[2026-06-22 02:25:08,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:25:08,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:25:08,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:25:08,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:25:10,139.139 INFO    ] ================================================
[2026-06-22 02:25:10,155.155 INFO    ] Launching Daemon at Mon Jun 22 02:25:10 IST 2026
[2026-06-22 02:25:10,165.165 INFO    ] ================================================
[2026-06-22 02:25:10,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:25:10
[2026-06-22 02:25:11,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:25:11,541.541 INFO    ] Initializing speech engine...
[2026-06-22 02:25:11,551.551 INFO    ] 2026-06-22 02:25:11
[2026-06-22 02:25:11,799.799 INFO    ] 2026-06-22 02:25:11
[2026-06-22 02:25:11,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:25:12,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:25:12,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:25:12,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:25:12,168.168 INFO    ] time= 22/06/2026 02:25:12
[2026-06-22 02:25:12,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:25:12,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:25:12,346.346 INFO    ] No existing commands found in stream
[2026-06-22 02:25:17,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:25:17,380.380 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-22 02:25:19,469.469 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:25:19,470.470 INFO    ] Checking for system updates...
[2026-06-22 02:25:19,492.492 INFO    ] 200
[2026-06-22 02:25:19,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:25:19,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:25:19,525.525 INFO    ] No update needed
[2026-06-22 02:25:19,526.526 INFO    ] Checking for camera pi updates...
[2026-06-22 02:25:19,546.546 INFO    ] 200
[2026-06-22 02:25:19,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:25:19,578.578 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:25:19,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:25:19,658.658 INFO    ] No camera update needed
[2026-06-22 02:25:19,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:25:19,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:25:19,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:25:19,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:25:21,714.714 INFO    ] ================================================
[2026-06-22 02:25:21,730.730 INFO    ] Launching Daemon at Mon Jun 22 02:25:21 IST 2026
[2026-06-22 02:25:21,741.741 INFO    ] ================================================
[2026-06-22 02:25:22,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:25:22
[2026-06-22 02:25:22,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:25:23,142.142 INFO    ] Initializing speech engine...
[2026-06-22 02:25:23,156.156 INFO    ] 2026-06-22 02:25:23
[2026-06-22 02:25:23,420.420 INFO    ] 2026-06-22 02:25:23
[2026-06-22 02:25:23,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:25:23,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:25:23,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:25:23,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:25:23,799.799 INFO    ] time= 22/06/2026 02:25:23
[2026-06-22 02:25:23,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:25:23,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:25:23,976.976 INFO    ] No existing commands found in stream
[2026-06-22 02:25:29,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:25:29,009.009 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-22 02:25:32,622.622 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:25:32,625.625 INFO    ] Checking for system updates...
[2026-06-22 02:25:32,672.672 INFO    ] 200
[2026-06-22 02:25:32,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:25:32,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:25:32,739.739 INFO    ] No update needed
[2026-06-22 02:25:32,742.742 INFO    ] Checking for camera pi updates...
[2026-06-22 02:25:32,778.778 INFO    ] 200
[2026-06-22 02:25:32,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:25:32,825.825 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:25:32,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:25:32,905.905 INFO    ] No camera update needed
[2026-06-22 02:25:32,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:25:32,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:25:32,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:25:32,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:25:34,965.965 INFO    ] ================================================
[2026-06-22 02:25:34,980.980 INFO    ] Launching Daemon at Mon Jun 22 02:25:34 IST 2026
[2026-06-22 02:25:34,991.991 INFO    ] ================================================
[2026-06-22 02:25:35,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:25:35
[2026-06-22 02:25:36,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:25:36,329.329 INFO    ] Initializing speech engine...
[2026-06-22 02:25:36,337.337 INFO    ] 2026-06-22 02:25:36
[2026-06-22 02:25:36,592.592 INFO    ] 2026-06-22 02:25:36
[2026-06-22 02:25:36,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:25:36,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:25:36,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:25:37,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:25:37,036.036 INFO    ] time= 22/06/2026 02:25:37
[2026-06-22 02:25:37,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:25:37,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:25:37,200.200 INFO    ] No existing commands found in stream
[2026-06-22 02:25:42,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:25:42,215.215 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-22 02:25:44,708.708 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:25:44,709.709 INFO    ] Checking for system updates...
[2026-06-22 02:25:44,732.732 INFO    ] 200
[2026-06-22 02:25:44,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:25:44,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:25:44,769.769 INFO    ] No update needed
[2026-06-22 02:25:44,771.771 INFO    ] Checking for camera pi updates...
[2026-06-22 02:25:44,802.802 INFO    ] 200
[2026-06-22 02:25:44,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:25:44,847.847 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:25:44,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:25:44,931.931 INFO    ] No camera update needed
[2026-06-22 02:25:44,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:25:44,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:25:44,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:25:44,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:25:46,992.992 INFO    ] ================================================
[2026-06-22 02:25:47,008.008 INFO    ] Launching Daemon at Mon Jun 22 02:25:47 IST 2026
[2026-06-22 02:25:47,018.018 INFO    ] ================================================
[2026-06-22 02:25:47,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:25:47
[2026-06-22 02:25:48,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:25:48,342.342 INFO    ] Initializing speech engine...
[2026-06-22 02:25:48,365.365 INFO    ] 2026-06-22 02:25:48
[2026-06-22 02:25:48,622.622 INFO    ] 2026-06-22 02:25:48
[2026-06-22 02:25:48,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:25:48,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:25:48,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:25:48,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:25:49,000.000 INFO    ] time= 22/06/2026 02:25:48
[2026-06-22 02:25:49,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:25:49,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:25:49,080.080 INFO    ] No existing commands found in stream
[2026-06-22 02:25:54,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:25:54,097.097 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-22 02:25:57,928.928 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:25:57,929.929 INFO    ] Checking for system updates...
[2026-06-22 02:25:57,950.950 INFO    ] 200
[2026-06-22 02:25:57,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:25:57,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:25:57,986.986 INFO    ] No update needed
[2026-06-22 02:25:57,987.987 INFO    ] Checking for camera pi updates...
[2026-06-22 02:25:58,011.011 INFO    ] 200
[2026-06-22 02:25:58,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:25:58,056.056 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:25:58,237.237 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:25:58,240.240 INFO    ] No camera update needed
[2026-06-22 02:25:58,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:25:58,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:25:58,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:25:58,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:26:00,300.300 INFO    ] ================================================
[2026-06-22 02:26:00,315.315 INFO    ] Launching Daemon at Mon Jun 22 02:26:00 IST 2026
[2026-06-22 02:26:00,325.325 INFO    ] ================================================
[2026-06-22 02:26:00,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:26:00
[2026-06-22 02:26:01,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:26:01,701.701 INFO    ] Initializing speech engine...
[2026-06-22 02:26:01,708.708 INFO    ] 2026-06-22 02:26:01
[2026-06-22 02:26:01,972.972 INFO    ] 2026-06-22 02:26:01
[2026-06-22 02:26:02,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:26:02,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:26:02,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:26:02,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:26:02,439.439 INFO    ] time= 22/06/2026 02:26:02
[2026-06-22 02:26:02,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:26:02,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:26:02,536.536 INFO    ] No existing commands found in stream
[2026-06-22 02:26:07,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:26:07,550.550 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-22 02:26:07,950.950 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:26:07,953.953 INFO    ] Checking for system updates...
[2026-06-22 02:26:07,991.991 INFO    ] 200
[2026-06-22 02:26:07,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:26:08,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:26:08,057.057 INFO    ] No update needed
[2026-06-22 02:26:08,059.059 INFO    ] Checking for camera pi updates...
[2026-06-22 02:26:08,092.092 INFO    ] 200
[2026-06-22 02:26:08,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:26:08,117.117 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:26:08,199.199 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:26:08,202.202 INFO    ] No camera update needed
[2026-06-22 02:26:08,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:26:08,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:26:08,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:26:08,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:26:10,259.259 INFO    ] ================================================
[2026-06-22 02:26:10,274.274 INFO    ] Launching Daemon at Mon Jun 22 02:26:10 IST 2026
[2026-06-22 02:26:10,284.284 INFO    ] ================================================
[2026-06-22 02:26:10,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:26:10
[2026-06-22 02:26:11,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:26:11,599.599 INFO    ] Initializing speech engine...
[2026-06-22 02:26:11,608.608 INFO    ] 2026-06-22 02:26:11
[2026-06-22 02:26:11,904.904 INFO    ] 2026-06-22 02:26:11
[2026-06-22 02:26:11,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:26:12,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:26:12,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:26:12,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:26:12,286.286 INFO    ] time= 22/06/2026 02:26:12
[2026-06-22 02:26:12,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:26:12,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:26:12,413.413 INFO    ] No existing commands found in stream
[2026-06-22 02:26:17,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:26:17,426.426 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-22 02:26:20,402.402 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:26:20,404.404 INFO    ] Checking for system updates...
[2026-06-22 02:26:20,444.444 INFO    ] 200
[2026-06-22 02:26:20,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:26:20,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:26:20,502.502 INFO    ] No update needed
[2026-06-22 02:26:20,505.505 INFO    ] Checking for camera pi updates...
[2026-06-22 02:26:20,538.538 INFO    ] 200
[2026-06-22 02:26:20,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:26:20,586.586 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:26:20,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:26:20,684.684 INFO    ] No camera update needed
[2026-06-22 02:26:20,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:26:20,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:26:20,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:26:20,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:26:22,739.739 INFO    ] ================================================
[2026-06-22 02:26:22,755.755 INFO    ] Launching Daemon at Mon Jun 22 02:26:22 IST 2026
[2026-06-22 02:26:22,766.766 INFO    ] ================================================
[2026-06-22 02:26:23,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:26:23
[2026-06-22 02:26:23,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:26:24,097.097 INFO    ] Initializing speech engine...
[2026-06-22 02:26:24,107.107 INFO    ] 2026-06-22 02:26:24
[2026-06-22 02:26:24,352.352 INFO    ] 2026-06-22 02:26:24
[2026-06-22 02:26:24,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:26:24,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:26:24,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:26:24,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:26:24,800.800 INFO    ] time= 22/06/2026 02:26:24
[2026-06-22 02:26:24,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:26:24,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:26:24,967.967 INFO    ] No existing commands found in stream
[2026-06-22 02:26:29,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:26:29,981.981 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-22 02:26:30,876.876 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:26:30,879.879 INFO    ] Checking for system updates...
[2026-06-22 02:26:30,920.920 INFO    ] 200
[2026-06-22 02:26:30,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:26:30,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:26:30,977.977 INFO    ] No update needed
[2026-06-22 02:26:30,979.979 INFO    ] Checking for camera pi updates...
[2026-06-22 02:26:31,013.013 INFO    ] 200
[2026-06-22 02:26:31,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:26:31,055.055 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:26:31,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:26:31,143.143 INFO    ] No camera update needed
[2026-06-22 02:26:31,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:26:31,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:26:31,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:26:31,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:26:33,201.201 INFO    ] ================================================
[2026-06-22 02:26:33,217.217 INFO    ] Launching Daemon at Mon Jun 22 02:26:33 IST 2026
[2026-06-22 02:26:33,228.228 INFO    ] ================================================
[2026-06-22 02:26:33,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:26:33
[2026-06-22 02:26:34,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:26:34,655.655 INFO    ] Initializing speech engine...
[2026-06-22 02:26:34,671.671 INFO    ] 2026-06-22 02:26:34
[2026-06-22 02:26:34,959.959 INFO    ] 2026-06-22 02:26:34
[2026-06-22 02:26:35,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:26:35,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:26:35,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:26:35,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:26:35,342.342 INFO    ] time= 22/06/2026 02:26:35
[2026-06-22 02:26:35,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:26:35,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:26:35,471.471 INFO    ] No existing commands found in stream
[2026-06-22 02:26:40,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:26:40,484.484 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-22 02:26:41,586.586 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:26:41,587.587 INFO    ] Checking for system updates...
[2026-06-22 02:26:41,620.620 INFO    ] 200
[2026-06-22 02:26:41,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:26:41,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:26:41,677.677 INFO    ] No update needed
[2026-06-22 02:26:41,680.680 INFO    ] Checking for camera pi updates...
[2026-06-22 02:26:41,713.713 INFO    ] 200
[2026-06-22 02:26:41,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:26:41,763.763 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:26:41,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:26:41,847.847 INFO    ] No camera update needed
[2026-06-22 02:26:41,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:26:41,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:26:41,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:26:41,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:26:43,904.904 INFO    ] ================================================
[2026-06-22 02:26:43,919.919 INFO    ] Launching Daemon at Mon Jun 22 02:26:43 IST 2026
[2026-06-22 02:26:43,929.929 INFO    ] ================================================
[2026-06-22 02:26:44,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:26:44
[2026-06-22 02:26:45,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:26:45,402.402 INFO    ] Initializing speech engine...
[2026-06-22 02:26:45,409.409 INFO    ] 2026-06-22 02:26:45
[2026-06-22 02:26:45,657.657 INFO    ] 2026-06-22 02:26:45
[2026-06-22 02:26:45,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:26:45,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:26:45,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:26:46,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:26:46,135.135 INFO    ] time= 22/06/2026 02:26:46
[2026-06-22 02:26:46,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:26:46,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:26:46,275.275 INFO    ] No existing commands found in stream
[2026-06-22 02:26:51,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:26:51,290.290 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-22 02:26:54,745.745 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:26:54,746.746 INFO    ] Checking for system updates...
[2026-06-22 02:26:54,768.768 INFO    ] 200
[2026-06-22 02:26:54,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:26:54,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:26:54,801.801 INFO    ] No update needed
[2026-06-22 02:26:54,803.803 INFO    ] Checking for camera pi updates...
[2026-06-22 02:26:54,839.839 INFO    ] 200
[2026-06-22 02:26:54,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:26:54,883.883 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:26:54,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:26:54,973.973 INFO    ] No camera update needed
[2026-06-22 02:26:54,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:26:54,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:26:54,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:26:54,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:26:57,034.034 INFO    ] ================================================
[2026-06-22 02:26:57,049.049 INFO    ] Launching Daemon at Mon Jun 22 02:26:57 IST 2026
[2026-06-22 02:26:57,060.060 INFO    ] ================================================
[2026-06-22 02:26:57,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:26:57
[2026-06-22 02:26:58,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:26:58,729.729 INFO    ] Initializing speech engine...
[2026-06-22 02:26:58,736.736 INFO    ] 2026-06-22 02:26:58
[2026-06-22 02:26:59,012.012 INFO    ] 2026-06-22 02:26:59
[2026-06-22 02:26:59,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:26:59,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:26:59,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:26:59,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:26:59,397.397 INFO    ] time= 22/06/2026 02:26:59
[2026-06-22 02:26:59,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:26:59,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:26:59,553.553 INFO    ] No existing commands found in stream
[2026-06-22 02:27:04,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:27:04,570.570 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-22 02:27:07,033.033 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:27:07,036.036 INFO    ] Checking for system updates...
[2026-06-22 02:27:07,075.075 INFO    ] 200
[2026-06-22 02:27:07,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:27:07,131.131 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:27:07,134.134 INFO    ] No update needed
[2026-06-22 02:27:07,136.136 INFO    ] Checking for camera pi updates...
[2026-06-22 02:27:07,174.174 INFO    ] 200
[2026-06-22 02:27:07,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:27:07,278.278 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:27:07,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:27:07,355.355 INFO    ] No camera update needed
[2026-06-22 02:27:07,357.357 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:27:07,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:27:07,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:27:07,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:27:09,415.415 INFO    ] ================================================
[2026-06-22 02:27:09,430.430 INFO    ] Launching Daemon at Mon Jun 22 02:27:09 IST 2026
[2026-06-22 02:27:09,441.441 INFO    ] ================================================
[2026-06-22 02:27:09,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:27:09
[2026-06-22 02:27:10,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:27:10,811.811 INFO    ] Initializing speech engine...
[2026-06-22 02:27:10,818.818 INFO    ] 2026-06-22 02:27:10
[2026-06-22 02:27:11,079.079 INFO    ] 2026-06-22 02:27:11
[2026-06-22 02:27:11,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:27:11,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:27:11,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:27:11,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:27:11,434.434 INFO    ] time= 22/06/2026 02:27:11
[2026-06-22 02:27:11,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:27:11,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:27:11,514.514 INFO    ] No existing commands found in stream
[2026-06-22 02:27:16,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:27:16,529.529 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-22 02:27:20,284.284 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:27:20,287.287 INFO    ] Checking for system updates...
[2026-06-22 02:27:20,328.328 INFO    ] 200
[2026-06-22 02:27:20,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:27:20,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:27:20,385.385 INFO    ] No update needed
[2026-06-22 02:27:20,388.388 INFO    ] Checking for camera pi updates...
[2026-06-22 02:27:20,425.425 INFO    ] 200
[2026-06-22 02:27:20,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:27:20,473.473 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:27:20,554.554 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:27:20,557.557 INFO    ] No camera update needed
[2026-06-22 02:27:20,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:27:20,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:27:20,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:27:20,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:27:22,611.611 INFO    ] ================================================
[2026-06-22 02:27:22,627.627 INFO    ] Launching Daemon at Mon Jun 22 02:27:22 IST 2026
[2026-06-22 02:27:22,642.642 INFO    ] ================================================
[2026-06-22 02:27:23,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:27:23
[2026-06-22 02:27:23,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:27:24,095.095 INFO    ] Initializing speech engine...
[2026-06-22 02:27:24,108.108 INFO    ] 2026-06-22 02:27:24
[2026-06-22 02:27:24,397.397 INFO    ] 2026-06-22 02:27:24
[2026-06-22 02:27:24,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:27:24,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:27:24,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:27:24,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:27:24,840.840 INFO    ] time= 22/06/2026 02:27:24
[2026-06-22 02:27:24,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:27:24,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:27:24,997.997 INFO    ] No existing commands found in stream
[2026-06-22 02:27:30,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:27:30,012.012 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-22 02:27:31,332.332 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:27:31,335.335 INFO    ] Checking for system updates...
[2026-06-22 02:27:31,371.371 INFO    ] 200
[2026-06-22 02:27:31,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:27:31,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:27:31,436.436 INFO    ] No update needed
[2026-06-22 02:27:31,438.438 INFO    ] Checking for camera pi updates...
[2026-06-22 02:27:31,473.473 INFO    ] 200
[2026-06-22 02:27:31,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:27:31,516.516 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:27:31,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:27:31,579.579 INFO    ] No camera update needed
[2026-06-22 02:27:31,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:27:31,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:27:31,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:27:31,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:27:33,635.635 INFO    ] ================================================
[2026-06-22 02:27:33,650.650 INFO    ] Launching Daemon at Mon Jun 22 02:27:33 IST 2026
[2026-06-22 02:27:33,661.661 INFO    ] ================================================
[2026-06-22 02:27:34,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:27:34
[2026-06-22 02:27:34,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:27:35,103.103 INFO    ] Initializing speech engine...
[2026-06-22 02:27:35,112.112 INFO    ] 2026-06-22 02:27:35
[2026-06-22 02:27:35,365.365 INFO    ] 2026-06-22 02:27:35
[2026-06-22 02:27:35,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:27:35,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:27:35,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:27:35,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:27:35,742.742 INFO    ] time= 22/06/2026 02:27:35
[2026-06-22 02:27:35,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:27:35,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:27:35,897.897 INFO    ] No existing commands found in stream
[2026-06-22 02:27:40,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:27:40,920.920 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-22 02:27:43,843.843 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:27:43,845.845 INFO    ] Checking for system updates...
[2026-06-22 02:27:43,867.867 INFO    ] 200
[2026-06-22 02:27:43,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:27:43,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:27:43,903.903 INFO    ] No update needed
[2026-06-22 02:27:43,904.904 INFO    ] Checking for camera pi updates...
[2026-06-22 02:27:43,925.925 INFO    ] 200
[2026-06-22 02:27:43,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:27:43,957.957 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:27:44,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:27:44,048.048 INFO    ] No camera update needed
[2026-06-22 02:27:44,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:27:44,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:27:44,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:27:44,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:27:46,107.107 INFO    ] ================================================
[2026-06-22 02:27:46,122.122 INFO    ] Launching Daemon at Mon Jun 22 02:27:46 IST 2026
[2026-06-22 02:27:46,133.133 INFO    ] ================================================
[2026-06-22 02:27:46,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:27:46
[2026-06-22 02:27:47,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:27:47,474.474 INFO    ] Initializing speech engine...
[2026-06-22 02:27:47,484.484 INFO    ] 2026-06-22 02:27:47
[2026-06-22 02:27:47,732.732 INFO    ] 2026-06-22 02:27:47
[2026-06-22 02:27:47,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:27:47,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:27:48,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:27:48,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:27:48,192.192 INFO    ] time= 22/06/2026 02:27:48
[2026-06-22 02:27:48,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:27:48,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:27:48,361.361 INFO    ] No existing commands found in stream
[2026-06-22 02:27:53,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:27:53,376.376 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-22 02:27:56,275.275 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:27:56,277.277 INFO    ] Checking for system updates...
[2026-06-22 02:27:56,300.300 INFO    ] 200
[2026-06-22 02:27:56,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:27:56,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:27:56,334.334 INFO    ] No update needed
[2026-06-22 02:27:56,336.336 INFO    ] Checking for camera pi updates...
[2026-06-22 02:27:56,356.356 INFO    ] 200
[2026-06-22 02:27:56,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:27:56,404.404 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:27:56,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:27:56,489.489 INFO    ] No camera update needed
[2026-06-22 02:27:56,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:27:56,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:27:56,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:27:56,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:27:58,545.545 INFO    ] ================================================
[2026-06-22 02:27:58,560.560 INFO    ] Launching Daemon at Mon Jun 22 02:27:58 IST 2026
[2026-06-22 02:27:58,571.571 INFO    ] ================================================
[2026-06-22 02:27:59,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:27:59
[2026-06-22 02:27:59,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:27:59,896.896 INFO    ] Initializing speech engine...
[2026-06-22 02:27:59,903.903 INFO    ] 2026-06-22 02:27:59
[2026-06-22 02:28:00,195.195 INFO    ] 2026-06-22 02:28:00
[2026-06-22 02:28:00,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:28:00,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:28:00,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:28:00,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:28:00,632.632 INFO    ] time= 22/06/2026 02:28:00
[2026-06-22 02:28:00,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:28:00,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:28:00,718.718 INFO    ] No existing commands found in stream
[2026-06-22 02:28:05,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:28:05,733.733 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-22 02:28:06,242.242 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:28:06,245.245 INFO    ] Checking for system updates...
[2026-06-22 02:28:06,280.280 INFO    ] 200
[2026-06-22 02:28:06,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:28:06,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:28:06,342.342 INFO    ] No update needed
[2026-06-22 02:28:06,344.344 INFO    ] Checking for camera pi updates...
[2026-06-22 02:28:06,379.379 INFO    ] 200
[2026-06-22 02:28:06,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:28:06,428.428 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:28:06,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:28:06,511.511 INFO    ] No camera update needed
[2026-06-22 02:28:06,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:28:06,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:28:06,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:28:06,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:28:08,569.569 INFO    ] ================================================
[2026-06-22 02:28:08,584.584 INFO    ] Launching Daemon at Mon Jun 22 02:28:08 IST 2026
[2026-06-22 02:28:08,595.595 INFO    ] ================================================
[2026-06-22 02:28:09,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:28:09
[2026-06-22 02:28:09,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:28:10,031.031 INFO    ] Initializing speech engine...
[2026-06-22 02:28:10,038.038 INFO    ] 2026-06-22 02:28:10
[2026-06-22 02:28:10,297.297 INFO    ] 2026-06-22 02:28:10
[2026-06-22 02:28:10,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:28:10,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:28:10,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:28:10,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:28:10,744.744 INFO    ] time= 22/06/2026 02:28:10
[2026-06-22 02:28:10,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:28:10,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:28:10,862.862 INFO    ] No existing commands found in stream
[2026-06-22 02:28:15,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:28:15,886.886 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-22 02:28:18,308.308 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:28:18,311.311 INFO    ] Checking for system updates...
[2026-06-22 02:28:18,347.347 INFO    ] 200
[2026-06-22 02:28:18,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:28:18,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:28:18,413.413 INFO    ] No update needed
[2026-06-22 02:28:18,415.415 INFO    ] Checking for camera pi updates...
[2026-06-22 02:28:18,449.449 INFO    ] 200
[2026-06-22 02:28:18,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:28:18,492.492 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:28:18,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:28:18,578.578 INFO    ] No camera update needed
[2026-06-22 02:28:18,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:28:18,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:28:18,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:28:18,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:28:20,635.635 INFO    ] ================================================
[2026-06-22 02:28:20,650.650 INFO    ] Launching Daemon at Mon Jun 22 02:28:20 IST 2026
[2026-06-22 02:28:20,661.661 INFO    ] ================================================
[2026-06-22 02:28:21,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:28:21
[2026-06-22 02:28:21,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:28:22,303.303 INFO    ] Initializing speech engine...
[2026-06-22 02:28:22,316.316 INFO    ] 2026-06-22 02:28:22
[2026-06-22 02:28:22,604.604 INFO    ] 2026-06-22 02:28:22
[2026-06-22 02:28:22,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:28:22,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:28:22,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:28:23,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:28:23,065.065 INFO    ] time= 22/06/2026 02:28:23
[2026-06-22 02:28:23,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:28:23,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:28:23,220.220 INFO    ] No existing commands found in stream
[2026-06-22 02:28:28,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:28:28,240.240 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-22 02:28:29,618.618 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:28:29,619.619 INFO    ] Checking for system updates...
[2026-06-22 02:28:29,641.641 INFO    ] 200
[2026-06-22 02:28:29,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:28:29,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:28:29,693.693 INFO    ] No update needed
[2026-06-22 02:28:29,696.696 INFO    ] Checking for camera pi updates...
[2026-06-22 02:28:29,736.736 INFO    ] 200
[2026-06-22 02:28:29,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:28:29,781.781 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:28:29,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:28:29,884.884 INFO    ] No camera update needed
[2026-06-22 02:28:29,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:28:29,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:28:29,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:28:29,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:28:31,945.945 INFO    ] ================================================
[2026-06-22 02:28:31,962.962 INFO    ] Launching Daemon at Mon Jun 22 02:28:31 IST 2026
[2026-06-22 02:28:31,974.974 INFO    ] ================================================
[2026-06-22 02:28:32,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:28:32
[2026-06-22 02:28:33,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:28:33,636.636 INFO    ] Initializing speech engine...
[2026-06-22 02:28:33,648.648 INFO    ] 2026-06-22 02:28:33
[2026-06-22 02:28:33,935.935 INFO    ] 2026-06-22 02:28:33
[2026-06-22 02:28:33,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:28:34,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:28:34,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:28:34,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:28:34,403.403 INFO    ] time= 22/06/2026 02:28:34
[2026-06-22 02:28:34,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:28:34,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:28:34,554.554 INFO    ] No existing commands found in stream
[2026-06-22 02:28:39,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:28:39,584.584 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-22 02:28:43,125.125 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:28:43,126.126 INFO    ] Checking for system updates...
[2026-06-22 02:28:43,147.147 INFO    ] 200
[2026-06-22 02:28:43,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:28:43,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:28:43,186.186 INFO    ] No update needed
[2026-06-22 02:28:43,188.188 INFO    ] Checking for camera pi updates...
[2026-06-22 02:28:43,227.227 INFO    ] 200
[2026-06-22 02:28:43,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:28:43,271.271 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:28:43,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:28:43,347.347 INFO    ] No camera update needed
[2026-06-22 02:28:43,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:28:43,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:28:43,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:28:43,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:28:45,401.401 INFO    ] ================================================
[2026-06-22 02:28:45,416.416 INFO    ] Launching Daemon at Mon Jun 22 02:28:45 IST 2026
[2026-06-22 02:28:45,427.427 INFO    ] ================================================
[2026-06-22 02:28:45,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:28:45
[2026-06-22 02:28:46,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:28:46,827.827 INFO    ] Initializing speech engine...
[2026-06-22 02:28:46,842.842 INFO    ] 2026-06-22 02:28:46
[2026-06-22 02:28:47,130.130 INFO    ] 2026-06-22 02:28:47
[2026-06-22 02:28:47,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:28:47,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:28:47,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:28:47,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:28:47,490.490 INFO    ] time= 22/06/2026 02:28:47
[2026-06-22 02:28:47,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:28:47,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:28:47,569.569 INFO    ] No existing commands found in stream
[2026-06-22 02:28:52,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:28:52,582.582 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-22 02:28:54,581.581 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:28:54,583.583 INFO    ] Checking for system updates...
[2026-06-22 02:28:54,624.624 INFO    ] 200
[2026-06-22 02:28:54,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:28:54,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:28:54,681.681 INFO    ] No update needed
[2026-06-22 02:28:54,683.683 INFO    ] Checking for camera pi updates...
[2026-06-22 02:28:54,722.722 INFO    ] 200
[2026-06-22 02:28:54,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:28:54,764.764 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:28:54,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:28:54,816.816 INFO    ] No camera update needed
[2026-06-22 02:28:54,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:28:54,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:28:54,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:28:54,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:28:56,872.872 INFO    ] ================================================
[2026-06-22 02:28:56,887.887 INFO    ] Launching Daemon at Mon Jun 22 02:28:56 IST 2026
[2026-06-22 02:28:56,898.898 INFO    ] ================================================
[2026-06-22 02:28:57,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:28:57
[2026-06-22 02:28:57,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:28:58,255.255 INFO    ] Initializing speech engine...
[2026-06-22 02:28:58,262.262 INFO    ] 2026-06-22 02:28:58
[2026-06-22 02:28:58,554.554 INFO    ] 2026-06-22 02:28:58
[2026-06-22 02:28:58,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:28:58,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:28:58,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:28:58,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:28:58,947.947 INFO    ] time= 22/06/2026 02:28:58
[2026-06-22 02:28:58,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:28:58,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:28:59,058.058 INFO    ] No existing commands found in stream
[2026-06-22 02:29:04,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:29:04,076.076 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-22 02:29:06,271.271 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:29:06,274.274 INFO    ] Checking for system updates...
[2026-06-22 02:29:06,296.296 INFO    ] 200
[2026-06-22 02:29:06,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:29:06,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:29:06,329.329 INFO    ] No update needed
[2026-06-22 02:29:06,330.330 INFO    ] Checking for camera pi updates...
[2026-06-22 02:29:06,350.350 INFO    ] 200
[2026-06-22 02:29:06,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:29:06,374.374 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:29:06,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:29:06,465.465 INFO    ] No camera update needed
[2026-06-22 02:29:06,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:29:06,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:29:06,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:29:06,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:29:08,535.535 INFO    ] ================================================
[2026-06-22 02:29:08,550.550 INFO    ] Launching Daemon at Mon Jun 22 02:29:08 IST 2026
[2026-06-22 02:29:08,561.561 INFO    ] ================================================
[2026-06-22 02:29:09,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:29:09
[2026-06-22 02:29:09,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:29:09,978.978 INFO    ] Initializing speech engine...
[2026-06-22 02:29:09,993.993 INFO    ] 2026-06-22 02:29:09
[2026-06-22 02:29:10,282.282 INFO    ] 2026-06-22 02:29:10
[2026-06-22 02:29:10,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:29:10,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:29:10,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:29:10,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:29:10,664.664 INFO    ] time= 22/06/2026 02:29:10
[2026-06-22 02:29:10,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:29:10,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:29:10,792.792 INFO    ] No existing commands found in stream
[2026-06-22 02:29:15,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:29:15,805.805 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-22 02:29:19,245.245 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:29:19,247.247 INFO    ] Checking for system updates...
[2026-06-22 02:29:19,267.267 INFO    ] 200
[2026-06-22 02:29:19,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:29:19,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:29:19,313.313 INFO    ] No update needed
[2026-06-22 02:29:19,315.315 INFO    ] Checking for camera pi updates...
[2026-06-22 02:29:19,350.350 INFO    ] 200
[2026-06-22 02:29:19,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:29:19,398.398 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:29:19,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:29:19,479.479 INFO    ] No camera update needed
[2026-06-22 02:29:19,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:29:19,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:29:19,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:29:19,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:29:21,535.535 INFO    ] ================================================
[2026-06-22 02:29:21,551.551 INFO    ] Launching Daemon at Mon Jun 22 02:29:21 IST 2026
[2026-06-22 02:29:21,561.561 INFO    ] ================================================
[2026-06-22 02:29:22,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:29:22
[2026-06-22 02:29:22,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:29:22,877.877 INFO    ] Initializing speech engine...
[2026-06-22 02:29:22,885.885 INFO    ] 2026-06-22 02:29:22
[2026-06-22 02:29:23,185.185 INFO    ] 2026-06-22 02:29:23
[2026-06-22 02:29:23,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:29:23,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:29:23,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:29:23,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:29:23,570.570 INFO    ] time= 22/06/2026 02:29:23
[2026-06-22 02:29:23,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:29:23,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:29:23,696.696 INFO    ] No existing commands found in stream
[2026-06-22 02:29:28,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:29:28,711.711 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-22 02:29:29,402.402 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:29:29,403.403 INFO    ] Checking for system updates...
[2026-06-22 02:29:29,425.425 INFO    ] 200
[2026-06-22 02:29:29,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:29:29,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:29:29,461.461 INFO    ] No update needed
[2026-06-22 02:29:29,462.462 INFO    ] Checking for camera pi updates...
[2026-06-22 02:29:29,482.482 INFO    ] 200
[2026-06-22 02:29:29,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:29:29,527.527 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:29:29,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:29:29,623.623 INFO    ] No camera update needed
[2026-06-22 02:29:29,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:29:29,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:29:29,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:29:29,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:29:31,684.684 INFO    ] ================================================
[2026-06-22 02:29:31,699.699 INFO    ] Launching Daemon at Mon Jun 22 02:29:31 IST 2026
[2026-06-22 02:29:31,710.710 INFO    ] ================================================
[2026-06-22 02:29:32,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:29:32
[2026-06-22 02:29:32,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:29:33,227.227 INFO    ] Initializing speech engine...
[2026-06-22 02:29:33,247.247 INFO    ] 2026-06-22 02:29:33
[2026-06-22 02:29:33,499.499 INFO    ] 2026-06-22 02:29:33
[2026-06-22 02:29:33,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:29:33,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:29:33,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:29:33,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:29:33,876.876 INFO    ] time= 22/06/2026 02:29:33
[2026-06-22 02:29:33,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:29:33,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:29:33,954.954 INFO    ] No existing commands found in stream
[2026-06-22 02:29:38,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:29:38,972.972 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-22 02:29:43,229.229 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:29:43,230.230 INFO    ] Checking for system updates...
[2026-06-22 02:29:43,251.251 INFO    ] 200
[2026-06-22 02:29:43,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:29:43,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:29:43,284.284 INFO    ] No update needed
[2026-06-22 02:29:43,285.285 INFO    ] Checking for camera pi updates...
[2026-06-22 02:29:43,310.310 INFO    ] 200
[2026-06-22 02:29:43,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:29:43,353.353 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:29:43,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:29:43,445.445 INFO    ] No camera update needed
[2026-06-22 02:29:43,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:29:43,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:29:43,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:29:43,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:29:45,500.500 INFO    ] ================================================
[2026-06-22 02:29:45,516.516 INFO    ] Launching Daemon at Mon Jun 22 02:29:45 IST 2026
[2026-06-22 02:29:45,527.527 INFO    ] ================================================
[2026-06-22 02:29:46,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:29:46
[2026-06-22 02:29:46,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:29:46,857.857 INFO    ] Initializing speech engine...
[2026-06-22 02:29:46,863.863 INFO    ] 2026-06-22 02:29:46
[2026-06-22 02:29:47,167.167 INFO    ] 2026-06-22 02:29:47
[2026-06-22 02:29:47,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:29:47,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:29:47,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:29:47,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:29:47,548.548 INFO    ] time= 22/06/2026 02:29:47
[2026-06-22 02:29:47,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:29:47,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:29:47,674.674 INFO    ] No existing commands found in stream
[2026-06-22 02:29:52,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:29:52,689.689 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-22 02:29:54,302.302 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:29:54,305.305 INFO    ] Checking for system updates...
[2026-06-22 02:29:54,341.341 INFO    ] 200
[2026-06-22 02:29:54,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:29:54,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:29:54,401.401 INFO    ] No update needed
[2026-06-22 02:29:54,403.403 INFO    ] Checking for camera pi updates...
[2026-06-22 02:29:54,443.443 INFO    ] 200
[2026-06-22 02:29:54,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:29:54,491.491 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:29:54,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:29:54,573.573 INFO    ] No camera update needed
[2026-06-22 02:29:54,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:29:54,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:29:54,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:29:54,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:29:56,632.632 INFO    ] ================================================
[2026-06-22 02:29:56,648.648 INFO    ] Launching Daemon at Mon Jun 22 02:29:56 IST 2026
[2026-06-22 02:29:56,659.659 INFO    ] ================================================
[2026-06-22 02:29:57,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:29:57
[2026-06-22 02:29:57,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:29:57,980.980 INFO    ] Initializing speech engine...
[2026-06-22 02:29:57,989.989 INFO    ] 2026-06-22 02:29:57
[2026-06-22 02:29:58,285.285 INFO    ] 2026-06-22 02:29:58
[2026-06-22 02:29:58,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:29:58,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:29:58,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:29:58,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:29:58,663.663 INFO    ] time= 22/06/2026 02:29:58
[2026-06-22 02:29:58,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:29:58,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:29:58,790.790 INFO    ] No existing commands found in stream
[2026-06-22 02:30:03,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:30:03,812.812 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-22 02:30:08,375.375 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:30:08,378.378 INFO    ] Checking for system updates...
[2026-06-22 02:30:08,414.414 INFO    ] 200
[2026-06-22 02:30:08,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:30:08,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:30:08,471.471 INFO    ] No update needed
[2026-06-22 02:30:08,473.473 INFO    ] Checking for camera pi updates...
[2026-06-22 02:30:08,508.508 INFO    ] 200
[2026-06-22 02:30:08,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:30:08,551.551 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:30:08,735.735 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:30:08,737.737 INFO    ] No camera update needed
[2026-06-22 02:30:08,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:30:08,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:30:08,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:30:08,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:30:10,793.793 INFO    ] ================================================
[2026-06-22 02:30:10,809.809 INFO    ] Launching Daemon at Mon Jun 22 02:30:10 IST 2026
[2026-06-22 02:30:10,820.820 INFO    ] ================================================
[2026-06-22 02:30:11,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:30:11
[2026-06-22 02:30:11,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:30:12,200.200 INFO    ] Initializing speech engine...
[2026-06-22 02:30:12,210.210 INFO    ] 2026-06-22 02:30:12
[2026-06-22 02:30:12,480.480 INFO    ] 2026-06-22 02:30:12
[2026-06-22 02:30:12,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:30:12,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:30:12,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:30:12,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:30:12,858.858 INFO    ] time= 22/06/2026 02:30:12
[2026-06-22 02:30:12,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:30:12,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:30:12,982.982 INFO    ] No existing commands found in stream
[2026-06-22 02:30:17,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:30:17,998.998 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-22 02:30:21,677.677 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:30:21,679.679 INFO    ] Checking for system updates...
[2026-06-22 02:30:21,700.700 INFO    ] 200
[2026-06-22 02:30:21,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:30:21,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:30:21,733.733 INFO    ] No update needed
[2026-06-22 02:30:21,735.735 INFO    ] Checking for camera pi updates...
[2026-06-22 02:30:21,766.766 INFO    ] 200
[2026-06-22 02:30:21,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:30:21,811.811 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:30:21,893.893 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:30:21,895.895 INFO    ] No camera update needed
[2026-06-22 02:30:21,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:30:21,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:30:21,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:30:21,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:30:23,957.957 INFO    ] ================================================
[2026-06-22 02:30:23,971.971 INFO    ] Launching Daemon at Mon Jun 22 02:30:23 IST 2026
[2026-06-22 02:30:23,982.982 INFO    ] ================================================
[2026-06-22 02:30:24,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:30:24
[2026-06-22 02:30:25,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:30:25,357.357 INFO    ] Initializing speech engine...
[2026-06-22 02:30:25,379.379 INFO    ] 2026-06-22 02:30:25
[2026-06-22 02:30:25,641.641 INFO    ] 2026-06-22 02:30:25
[2026-06-22 02:30:25,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:30:25,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:30:25,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:30:26,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:30:26,013.013 INFO    ] time= 22/06/2026 02:30:26
[2026-06-22 02:30:26,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:30:26,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:30:26,134.134 INFO    ] No existing commands found in stream
[2026-06-22 02:30:31,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:30:31,149.149 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-22 02:30:35,393.393 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:30:35,396.396 INFO    ] Checking for system updates...
[2026-06-22 02:30:35,435.435 INFO    ] 200
[2026-06-22 02:30:35,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:30:35,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:30:35,498.498 INFO    ] No update needed
[2026-06-22 02:30:35,500.500 INFO    ] Checking for camera pi updates...
[2026-06-22 02:30:35,534.534 INFO    ] 200
[2026-06-22 02:30:35,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:30:35,581.581 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:30:35,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:30:35,689.689 INFO    ] No camera update needed
[2026-06-22 02:30:35,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:30:35,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:30:35,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:30:35,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:30:37,748.748 INFO    ] ================================================
[2026-06-22 02:30:37,763.763 INFO    ] Launching Daemon at Mon Jun 22 02:30:37 IST 2026
[2026-06-22 02:30:37,774.774 INFO    ] ================================================
[2026-06-22 02:30:38,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:30:38
[2026-06-22 02:30:39,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:30:39,363.363 INFO    ] Initializing speech engine...
[2026-06-22 02:30:39,371.371 INFO    ] 2026-06-22 02:30:39
[2026-06-22 02:30:39,640.640 INFO    ] 2026-06-22 02:30:39
[2026-06-22 02:30:39,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:30:39,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:30:39,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:30:40,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:30:40,122.122 INFO    ] time= 22/06/2026 02:30:40
[2026-06-22 02:30:40,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:30:40,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:30:40,271.271 INFO    ] No existing commands found in stream
[2026-06-22 02:30:45,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:30:45,288.288 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-22 02:30:49,368.368 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:30:49,370.370 INFO    ] Checking for system updates...
[2026-06-22 02:30:49,394.394 INFO    ] 200
[2026-06-22 02:30:49,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:30:49,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:30:49,453.453 INFO    ] No update needed
[2026-06-22 02:30:49,456.456 INFO    ] Checking for camera pi updates...
[2026-06-22 02:30:49,490.490 INFO    ] 200
[2026-06-22 02:30:49,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:30:49,537.537 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:30:49,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:30:49,625.625 INFO    ] No camera update needed
[2026-06-22 02:30:49,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:30:49,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:30:49,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:30:49,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:30:51,687.687 INFO    ] ================================================
[2026-06-22 02:30:51,704.704 INFO    ] Launching Daemon at Mon Jun 22 02:30:51 IST 2026
[2026-06-22 02:30:51,717.717 INFO    ] ================================================
[2026-06-22 02:30:52,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:30:52
[2026-06-22 02:30:52,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:30:53,259.259 INFO    ] Initializing speech engine...
[2026-06-22 02:30:53,275.275 INFO    ] 2026-06-22 02:30:53
[2026-06-22 02:30:53,541.541 INFO    ] 2026-06-22 02:30:53
[2026-06-22 02:30:53,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:30:53,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:30:53,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:30:53,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:30:54,021.021 INFO    ] time= 22/06/2026 02:30:53
[2026-06-22 02:30:54,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:30:54,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:30:54,233.233 INFO    ] No existing commands found in stream
[2026-06-22 02:30:59,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:30:59,267.267 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-22 02:31:02,683.683 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:31:02,685.685 INFO    ] Checking for system updates...
[2026-06-22 02:31:02,722.722 INFO    ] 200
[2026-06-22 02:31:02,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:31:02,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:31:02,793.793 INFO    ] No update needed
[2026-06-22 02:31:02,796.796 INFO    ] Checking for camera pi updates...
[2026-06-22 02:31:02,833.833 INFO    ] 200
[2026-06-22 02:31:02,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:31:02,880.880 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:31:02,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:31:02,974.974 INFO    ] No camera update needed
[2026-06-22 02:31:02,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:31:02,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:31:02,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:31:02,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:31:05,029.029 INFO    ] ================================================
[2026-06-22 02:31:05,044.044 INFO    ] Launching Daemon at Mon Jun 22 02:31:05 IST 2026
[2026-06-22 02:31:05,055.055 INFO    ] ================================================
[2026-06-22 02:31:05,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:31:05
[2026-06-22 02:31:06,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:31:06,661.661 INFO    ] Initializing speech engine...
[2026-06-22 02:31:06,669.669 INFO    ] 2026-06-22 02:31:06
[2026-06-22 02:31:06,955.955 INFO    ] 2026-06-22 02:31:06
[2026-06-22 02:31:07,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:31:07,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:31:07,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:31:07,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:31:07,399.399 INFO    ] time= 22/06/2026 02:31:07
[2026-06-22 02:31:07,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:31:07,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:31:07,570.570 INFO    ] No existing commands found in stream
[2026-06-22 02:31:12,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:31:12,588.588 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-22 02:31:14,331.331 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:31:14,334.334 INFO    ] Checking for system updates...
[2026-06-22 02:31:14,372.372 INFO    ] 200
[2026-06-22 02:31:14,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:31:14,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:31:14,432.432 INFO    ] No update needed
[2026-06-22 02:31:14,435.435 INFO    ] Checking for camera pi updates...
[2026-06-22 02:31:14,470.470 INFO    ] 200
[2026-06-22 02:31:14,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:31:14,513.513 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:31:14,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:31:14,601.601 INFO    ] No camera update needed
[2026-06-22 02:31:14,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:31:14,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:31:14,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:31:14,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:31:16,659.659 INFO    ] ================================================
[2026-06-22 02:31:16,675.675 INFO    ] Launching Daemon at Mon Jun 22 02:31:16 IST 2026
[2026-06-22 02:31:16,685.685 INFO    ] ================================================
[2026-06-22 02:31:17,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:31:17
[2026-06-22 02:31:17,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:31:18,202.202 INFO    ] Initializing speech engine...
[2026-06-22 02:31:18,215.215 INFO    ] 2026-06-22 02:31:18
[2026-06-22 02:31:18,492.492 INFO    ] 2026-06-22 02:31:18
[2026-06-22 02:31:18,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:31:18,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:31:18,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:31:18,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:31:18,949.949 INFO    ] time= 22/06/2026 02:31:18
[2026-06-22 02:31:18,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:31:19,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:31:19,093.093 INFO    ] No existing commands found in stream
[2026-06-22 02:31:24,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:31:24,110.110 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-22 02:31:27,858.858 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:31:27,859.859 INFO    ] Checking for system updates...
[2026-06-22 02:31:27,880.880 INFO    ] 200
[2026-06-22 02:31:27,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:31:27,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:31:27,914.914 INFO    ] No update needed
[2026-06-22 02:31:27,916.916 INFO    ] Checking for camera pi updates...
[2026-06-22 02:31:27,944.944 INFO    ] 200
[2026-06-22 02:31:27,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:31:27,992.992 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:31:28,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:31:28,070.070 INFO    ] No camera update needed
[2026-06-22 02:31:28,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:31:28,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:31:28,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:31:28,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:31:30,128.128 INFO    ] ================================================
[2026-06-22 02:31:30,144.144 INFO    ] Launching Daemon at Mon Jun 22 02:31:30 IST 2026
[2026-06-22 02:31:30,155.155 INFO    ] ================================================
[2026-06-22 02:31:30,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:31:30
[2026-06-22 02:31:31,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:31:31,712.712 INFO    ] Initializing speech engine...
[2026-06-22 02:31:31,726.726 INFO    ] 2026-06-22 02:31:31
[2026-06-22 02:31:32,041.041 INFO    ] 2026-06-22 02:31:32
[2026-06-22 02:31:32,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:31:32,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:31:32,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:31:32,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:31:32,480.480 INFO    ] time= 22/06/2026 02:31:32
[2026-06-22 02:31:32,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:31:32,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:31:32,619.619 INFO    ] No existing commands found in stream
[2026-06-22 02:31:37,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:31:37,628.628 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-22 02:31:39,075.075 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:31:39,077.077 INFO    ] Checking for system updates...
[2026-06-22 02:31:39,097.097 INFO    ] 200
[2026-06-22 02:31:39,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:31:39,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:31:39,134.134 INFO    ] No update needed
[2026-06-22 02:31:39,137.137 INFO    ] Checking for camera pi updates...
[2026-06-22 02:31:39,171.171 INFO    ] 200
[2026-06-22 02:31:39,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:31:39,214.214 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:31:39,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:31:39,304.304 INFO    ] No camera update needed
[2026-06-22 02:31:39,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:31:39,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:31:39,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:31:39,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:31:41,359.359 INFO    ] ================================================
[2026-06-22 02:31:41,375.375 INFO    ] Launching Daemon at Mon Jun 22 02:31:41 IST 2026
[2026-06-22 02:31:41,387.387 INFO    ] ================================================
[2026-06-22 02:31:41,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:31:41
[2026-06-22 02:31:42,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:31:42,780.780 INFO    ] Initializing speech engine...
[2026-06-22 02:31:42,789.789 INFO    ] 2026-06-22 02:31:42
[2026-06-22 02:31:43,053.053 INFO    ] 2026-06-22 02:31:43
[2026-06-22 02:31:43,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:31:43,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:31:43,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:31:43,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:31:43,527.527 INFO    ] time= 22/06/2026 02:31:43
[2026-06-22 02:31:43,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:31:43,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:31:43,660.660 INFO    ] No existing commands found in stream
[2026-06-22 02:31:48,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:31:48,676.676 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-22 02:31:50,179.179 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:31:50,182.182 INFO    ] Checking for system updates...
[2026-06-22 02:31:50,218.218 INFO    ] 200
[2026-06-22 02:31:50,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:31:50,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:31:50,277.277 INFO    ] No update needed
[2026-06-22 02:31:50,280.280 INFO    ] Checking for camera pi updates...
[2026-06-22 02:31:50,314.314 INFO    ] 200
[2026-06-22 02:31:50,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:31:50,358.358 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:31:50,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:31:50,438.438 INFO    ] No camera update needed
[2026-06-22 02:31:50,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:31:50,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:31:50,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:31:50,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:31:52,495.495 INFO    ] ================================================
[2026-06-22 02:31:52,511.511 INFO    ] Launching Daemon at Mon Jun 22 02:31:52 IST 2026
[2026-06-22 02:31:52,522.522 INFO    ] ================================================
[2026-06-22 02:31:53,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:31:53
[2026-06-22 02:31:53,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:31:53,855.855 INFO    ] Initializing speech engine...
[2026-06-22 02:31:53,864.864 INFO    ] 2026-06-22 02:31:53
[2026-06-22 02:31:54,113.113 INFO    ] 2026-06-22 02:31:54
[2026-06-22 02:31:54,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:31:54,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:31:54,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:31:54,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:31:54,494.494 INFO    ] time= 22/06/2026 02:31:54
[2026-06-22 02:31:54,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:31:54,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:31:54,668.668 INFO    ] No existing commands found in stream
[2026-06-22 02:31:59,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:31:59,702.702 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-22 02:32:01,339.339 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:32:01,341.341 INFO    ] Checking for system updates...
[2026-06-22 02:32:01,379.379 INFO    ] 200
[2026-06-22 02:32:01,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:32:01,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:32:01,445.445 INFO    ] No update needed
[2026-06-22 02:32:01,448.448 INFO    ] Checking for camera pi updates...
[2026-06-22 02:32:01,484.484 INFO    ] 200
[2026-06-22 02:32:01,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:32:01,528.528 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:32:01,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:32:01,600.600 INFO    ] No camera update needed
[2026-06-22 02:32:01,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:32:01,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:32:01,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:32:01,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:32:03,658.658 INFO    ] ================================================
[2026-06-22 02:32:03,674.674 INFO    ] Launching Daemon at Mon Jun 22 02:32:03 IST 2026
[2026-06-22 02:32:03,685.685 INFO    ] ================================================
[2026-06-22 02:32:04,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:32:04
[2026-06-22 02:32:04,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:32:05,119.119 INFO    ] Initializing speech engine...
[2026-06-22 02:32:05,131.131 INFO    ] 2026-06-22 02:32:05
[2026-06-22 02:32:05,399.399 INFO    ] 2026-06-22 02:32:05
[2026-06-22 02:32:05,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:32:05,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:32:05,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:32:05,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:32:05,778.778 INFO    ] time= 22/06/2026 02:32:05
[2026-06-22 02:32:05,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:32:05,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:32:05,927.927 INFO    ] No existing commands found in stream
[2026-06-22 02:32:10,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:32:10,961.961 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-22 02:32:12,708.708 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:32:12,711.711 INFO    ] Checking for system updates...
[2026-06-22 02:32:12,748.748 INFO    ] 200
[2026-06-22 02:32:12,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:32:12,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:32:12,809.809 INFO    ] No update needed
[2026-06-22 02:32:12,812.812 INFO    ] Checking for camera pi updates...
[2026-06-22 02:32:12,847.847 INFO    ] 200
[2026-06-22 02:32:12,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:32:12,891.891 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:32:13,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:32:13,073.073 INFO    ] No camera update needed
[2026-06-22 02:32:13,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:32:13,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:32:13,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:32:13,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:32:15,136.136 INFO    ] ================================================
[2026-06-22 02:32:15,152.152 INFO    ] Launching Daemon at Mon Jun 22 02:32:15 IST 2026
[2026-06-22 02:32:15,164.164 INFO    ] ================================================
[2026-06-22 02:32:15,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:32:15
[2026-06-22 02:32:16,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:32:16,491.491 INFO    ] Initializing speech engine...
[2026-06-22 02:32:16,504.504 INFO    ] 2026-06-22 02:32:16
[2026-06-22 02:32:16,771.771 INFO    ] 2026-06-22 02:32:16
[2026-06-22 02:32:16,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:32:16,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:32:16,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:32:17,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:32:17,148.148 INFO    ] time= 22/06/2026 02:32:17
[2026-06-22 02:32:17,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:32:17,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:32:17,328.328 INFO    ] No existing commands found in stream
[2026-06-22 02:32:22,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:32:22,356.356 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-22 02:32:25,339.339 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:32:25,342.342 INFO    ] Checking for system updates...
[2026-06-22 02:32:25,381.381 INFO    ] 200
[2026-06-22 02:32:25,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:32:25,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:32:25,440.440 INFO    ] No update needed
[2026-06-22 02:32:25,442.442 INFO    ] Checking for camera pi updates...
[2026-06-22 02:32:25,479.479 INFO    ] 200
[2026-06-22 02:32:25,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:32:25,527.527 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:32:25,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:32:25,632.632 INFO    ] No camera update needed
[2026-06-22 02:32:25,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:32:25,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:32:25,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:32:25,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:32:27,689.689 INFO    ] ================================================
[2026-06-22 02:32:27,704.704 INFO    ] Launching Daemon at Mon Jun 22 02:32:27 IST 2026
[2026-06-22 02:32:27,715.715 INFO    ] ================================================
[2026-06-22 02:32:28,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:32:28
[2026-06-22 02:32:28,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:32:29,074.074 INFO    ] Initializing speech engine...
[2026-06-22 02:32:29,093.093 INFO    ] 2026-06-22 02:32:29
[2026-06-22 02:32:29,342.342 INFO    ] 2026-06-22 02:32:29
[2026-06-22 02:32:29,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:32:29,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:32:29,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:32:29,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:32:29,754.754 INFO    ] time= 22/06/2026 02:32:29
[2026-06-22 02:32:29,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:32:29,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:32:29,931.931 INFO    ] No existing commands found in stream
[2026-06-22 02:32:34,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:32:34,945.945 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-22 02:32:37,970.970 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:32:37,973.973 INFO    ] Checking for system updates...
[2026-06-22 02:32:38,010.010 INFO    ] 200
[2026-06-22 02:32:38,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:32:38,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:32:38,070.070 INFO    ] No update needed
[2026-06-22 02:32:38,073.073 INFO    ] Checking for camera pi updates...
[2026-06-22 02:32:38,106.106 INFO    ] 200
[2026-06-22 02:32:38,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:32:38,150.150 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:32:38,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:32:38,242.242 INFO    ] No camera update needed
[2026-06-22 02:32:38,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:32:38,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:32:38,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:32:38,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:32:40,298.298 INFO    ] ================================================
[2026-06-22 02:32:40,313.313 INFO    ] Launching Daemon at Mon Jun 22 02:32:40 IST 2026
[2026-06-22 02:32:40,325.325 INFO    ] ================================================
[2026-06-22 02:32:40,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:32:40
[2026-06-22 02:32:41,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:32:41,750.750 INFO    ] Initializing speech engine...
[2026-06-22 02:32:41,764.764 INFO    ] 2026-06-22 02:32:41
[2026-06-22 02:32:42,051.051 INFO    ] 2026-06-22 02:32:42
[2026-06-22 02:32:42,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:32:42,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:32:42,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:32:42,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:32:42,424.424 INFO    ] time= 22/06/2026 02:32:42
[2026-06-22 02:32:42,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:32:42,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:32:42,550.550 INFO    ] No existing commands found in stream
[2026-06-22 02:32:47,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:32:47,563.563 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-22 02:32:51,678.678 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:32:51,680.680 INFO    ] Checking for system updates...
[2026-06-22 02:32:51,716.716 INFO    ] 200
[2026-06-22 02:32:51,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:32:51,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:32:51,773.773 INFO    ] No update needed
[2026-06-22 02:32:51,775.775 INFO    ] Checking for camera pi updates...
[2026-06-22 02:32:51,809.809 INFO    ] 200
[2026-06-22 02:32:51,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:32:51,852.852 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:32:51,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:32:51,929.929 INFO    ] No camera update needed
[2026-06-22 02:32:51,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:32:51,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:32:51,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:32:51,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:32:53,986.986 INFO    ] ================================================
[2026-06-22 02:32:54,002.002 INFO    ] Launching Daemon at Mon Jun 22 02:32:53 IST 2026
[2026-06-22 02:32:54,014.014 INFO    ] ================================================
[2026-06-22 02:32:54,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:32:54
[2026-06-22 02:32:55,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:32:55,423.423 INFO    ] Initializing speech engine...
[2026-06-22 02:32:55,439.439 INFO    ] 2026-06-22 02:32:55
[2026-06-22 02:32:55,723.723 INFO    ] 2026-06-22 02:32:55
[2026-06-22 02:32:55,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:32:55,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:32:55,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:32:56,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:32:56,076.076 INFO    ] time= 22/06/2026 02:32:56
[2026-06-22 02:32:56,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:32:56,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:32:56,155.155 INFO    ] No existing commands found in stream
[2026-06-22 02:33:01,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:33:01,169.169 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-22 02:33:04,497.497 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:33:04,500.500 INFO    ] Checking for system updates...
[2026-06-22 02:33:04,540.540 INFO    ] 200
[2026-06-22 02:33:04,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:33:04,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:33:04,603.603 INFO    ] No update needed
[2026-06-22 02:33:04,605.605 INFO    ] Checking for camera pi updates...
[2026-06-22 02:33:04,643.643 INFO    ] 200
[2026-06-22 02:33:04,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:33:04,686.686 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:33:04,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:33:04,768.768 INFO    ] No camera update needed
[2026-06-22 02:33:04,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:33:04,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:33:04,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:33:04,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:33:06,823.823 INFO    ] ================================================
[2026-06-22 02:33:06,839.839 INFO    ] Launching Daemon at Mon Jun 22 02:33:06 IST 2026
[2026-06-22 02:33:06,850.850 INFO    ] ================================================
[2026-06-22 02:33:07,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:33:07
[2026-06-22 02:33:08,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:33:08,407.407 INFO    ] Initializing speech engine...
[2026-06-22 02:33:08,415.415 INFO    ] 2026-06-22 02:33:08
[2026-06-22 02:33:08,703.703 INFO    ] 2026-06-22 02:33:08
[2026-06-22 02:33:08,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:33:08,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:33:08,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:33:09,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:33:09,154.154 INFO    ] time= 22/06/2026 02:33:09
[2026-06-22 02:33:09,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:33:09,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:33:09,314.314 INFO    ] No existing commands found in stream
[2026-06-22 02:33:14,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:33:14,330.330 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-22 02:33:17,598.598 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:33:17,601.601 INFO    ] Checking for system updates...
[2026-06-22 02:33:17,638.638 INFO    ] 200
[2026-06-22 02:33:17,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:33:17,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:33:17,697.697 INFO    ] No update needed
[2026-06-22 02:33:17,700.700 INFO    ] Checking for camera pi updates...
[2026-06-22 02:33:17,736.736 INFO    ] 200
[2026-06-22 02:33:17,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:33:17,782.782 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:33:17,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:33:17,893.893 INFO    ] No camera update needed
[2026-06-22 02:33:17,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:33:17,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:33:17,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:33:17,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:33:19,953.953 INFO    ] ================================================
[2026-06-22 02:33:19,969.969 INFO    ] Launching Daemon at Mon Jun 22 02:33:19 IST 2026
[2026-06-22 02:33:19,980.980 INFO    ] ================================================
[2026-06-22 02:33:20,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:33:20
[2026-06-22 02:33:21,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:33:21,609.609 INFO    ] Initializing speech engine...
[2026-06-22 02:33:21,616.616 INFO    ] 2026-06-22 02:33:21
[2026-06-22 02:33:21,892.892 INFO    ] 2026-06-22 02:33:21
[2026-06-22 02:33:21,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:33:22,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:33:22,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:33:22,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:33:22,367.367 INFO    ] time= 22/06/2026 02:33:22
[2026-06-22 02:33:22,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:33:22,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:33:22,527.527 INFO    ] No existing commands found in stream
[2026-06-22 02:33:27,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:33:27,545.545 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-22 02:33:28,203.203 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:33:28,205.205 INFO    ] Checking for system updates...
[2026-06-22 02:33:28,226.226 INFO    ] 200
[2026-06-22 02:33:28,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:33:28,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:33:28,260.260 INFO    ] No update needed
[2026-06-22 02:33:28,261.261 INFO    ] Checking for camera pi updates...
[2026-06-22 02:33:28,281.281 INFO    ] 200
[2026-06-22 02:33:28,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:33:28,317.317 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:33:28,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:33:28,402.402 INFO    ] No camera update needed
[2026-06-22 02:33:28,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:33:28,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:33:28,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:33:28,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:33:30,461.461 INFO    ] ================================================
[2026-06-22 02:33:30,477.477 INFO    ] Launching Daemon at Mon Jun 22 02:33:30 IST 2026
[2026-06-22 02:33:30,488.488 INFO    ] ================================================
[2026-06-22 02:33:31,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:33:31
[2026-06-22 02:33:31,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:33:31,981.981 INFO    ] Initializing speech engine...
[2026-06-22 02:33:31,991.991 INFO    ] 2026-06-22 02:33:31
[2026-06-22 02:33:32,271.271 INFO    ] 2026-06-22 02:33:32
[2026-06-22 02:33:32,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:33:32,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:33:32,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:33:32,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:33:32,677.677 INFO    ] time= 22/06/2026 02:33:32
[2026-06-22 02:33:32,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:33:32,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:33:32,848.848 INFO    ] No existing commands found in stream
[2026-06-22 02:33:37,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:33:37,888.888 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-22 02:33:40,483.483 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:33:40,484.484 INFO    ] Checking for system updates...
[2026-06-22 02:33:40,507.507 INFO    ] 200
[2026-06-22 02:33:40,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:33:40,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:33:40,572.572 INFO    ] No update needed
[2026-06-22 02:33:40,575.575 INFO    ] Checking for camera pi updates...
[2026-06-22 02:33:40,613.613 INFO    ] 200
[2026-06-22 02:33:40,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:33:40,662.662 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:33:40,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:33:40,735.735 INFO    ] No camera update needed
[2026-06-22 02:33:40,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:33:40,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:33:40,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:33:40,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:33:42,795.795 INFO    ] ================================================
[2026-06-22 02:33:42,812.812 INFO    ] Launching Daemon at Mon Jun 22 02:33:42 IST 2026
[2026-06-22 02:33:42,823.823 INFO    ] ================================================
[2026-06-22 02:33:43,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:33:43
[2026-06-22 02:33:44,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:33:44,273.273 INFO    ] Initializing speech engine...
[2026-06-22 02:33:44,282.282 INFO    ] 2026-06-22 02:33:44
[2026-06-22 02:33:44,577.577 INFO    ] 2026-06-22 02:33:44
[2026-06-22 02:33:44,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:33:44,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:33:44,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:33:44,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:33:44,970.970 INFO    ] time= 22/06/2026 02:33:44
[2026-06-22 02:33:44,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:33:45,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:33:45,079.079 INFO    ] No existing commands found in stream
[2026-06-22 02:33:50,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:33:50,098.098 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-22 02:33:52,049.049 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:33:52,050.050 INFO    ] Checking for system updates...
[2026-06-22 02:33:52,071.071 INFO    ] 200
[2026-06-22 02:33:52,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:33:52,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:33:52,104.104 INFO    ] No update needed
[2026-06-22 02:33:52,105.105 INFO    ] Checking for camera pi updates...
[2026-06-22 02:33:52,135.135 INFO    ] 200
[2026-06-22 02:33:52,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:33:52,179.179 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:33:52,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:33:52,272.272 INFO    ] No camera update needed
[2026-06-22 02:33:52,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:33:52,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:33:52,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:33:52,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:33:54,328.328 INFO    ] ================================================
[2026-06-22 02:33:54,344.344 INFO    ] Launching Daemon at Mon Jun 22 02:33:54 IST 2026
[2026-06-22 02:33:54,355.355 INFO    ] ================================================
[2026-06-22 02:33:54,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:33:54
[2026-06-22 02:33:55,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:33:55,857.857 INFO    ] Initializing speech engine...
[2026-06-22 02:33:55,865.865 INFO    ] 2026-06-22 02:33:55
[2026-06-22 02:33:56,180.180 INFO    ] 2026-06-22 02:33:56
[2026-06-22 02:33:56,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:33:56,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:33:56,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:33:56,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:33:56,627.627 INFO    ] time= 22/06/2026 02:33:56
[2026-06-22 02:33:56,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:33:56,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:33:56,772.772 INFO    ] No existing commands found in stream
[2026-06-22 02:34:01,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:34:01,791.791 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-22 02:34:02,888.888 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:34:02,892.892 INFO    ] Checking for system updates...
[2026-06-22 02:34:02,938.938 INFO    ] 200
[2026-06-22 02:34:02,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:34:03,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:34:03,005.005 INFO    ] No update needed
[2026-06-22 02:34:03,009.009 INFO    ] Checking for camera pi updates...
[2026-06-22 02:34:03,052.052 INFO    ] 200
[2026-06-22 02:34:03,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:34:03,122.122 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:34:03,199.199 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:34:03,202.202 INFO    ] No camera update needed
[2026-06-22 02:34:03,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:34:03,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:34:03,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:34:03,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:34:05,265.265 INFO    ] ================================================
[2026-06-22 02:34:05,280.280 INFO    ] Launching Daemon at Mon Jun 22 02:34:05 IST 2026
[2026-06-22 02:34:05,291.291 INFO    ] ================================================
[2026-06-22 02:34:05,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:34:05
[2026-06-22 02:34:06,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:34:06,811.811 INFO    ] Initializing speech engine...
[2026-06-22 02:34:06,821.821 INFO    ] 2026-06-22 02:34:06
[2026-06-22 02:34:07,085.085 INFO    ] 2026-06-22 02:34:07
[2026-06-22 02:34:07,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:34:07,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:34:07,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:34:07,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:34:07,585.585 INFO    ] time= 22/06/2026 02:34:07
[2026-06-22 02:34:07,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:34:07,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:34:07,726.726 INFO    ] No existing commands found in stream
[2026-06-22 02:34:12,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:34:12,742.742 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-22 02:34:16,405.405 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:34:16,409.409 INFO    ] Checking for system updates...
[2026-06-22 02:34:16,446.446 INFO    ] 200
[2026-06-22 02:34:16,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:34:16,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:34:16,507.507 INFO    ] No update needed
[2026-06-22 02:34:16,509.509 INFO    ] Checking for camera pi updates...
[2026-06-22 02:34:16,544.544 INFO    ] 200
[2026-06-22 02:34:16,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:34:16,592.592 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:34:16,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:34:16,775.775 INFO    ] No camera update needed
[2026-06-22 02:34:16,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:34:16,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:34:16,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:34:16,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:34:18,833.833 INFO    ] ================================================
[2026-06-22 02:34:18,848.848 INFO    ] Launching Daemon at Mon Jun 22 02:34:18 IST 2026
[2026-06-22 02:34:18,859.859 INFO    ] ================================================
[2026-06-22 02:34:19,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:34:19
[2026-06-22 02:34:19,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:34:20,181.181 INFO    ] Initializing speech engine...
[2026-06-22 02:34:20,187.187 INFO    ] 2026-06-22 02:34:20
[2026-06-22 02:34:20,462.462 INFO    ] 2026-06-22 02:34:20
[2026-06-22 02:34:20,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:34:20,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:34:20,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:34:20,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:34:20,939.939 INFO    ] time= 22/06/2026 02:34:20
[2026-06-22 02:34:21,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:34:21,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:34:21,083.083 INFO    ] No existing commands found in stream
[2026-06-22 02:34:26,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:34:26,098.098 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-22 02:34:30,078.078 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:34:30,080.080 INFO    ] Checking for system updates...
[2026-06-22 02:34:30,100.100 INFO    ] 200
[2026-06-22 02:34:30,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:34:30,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:34:30,133.133 INFO    ] No update needed
[2026-06-22 02:34:30,134.134 INFO    ] Checking for camera pi updates...
[2026-06-22 02:34:30,162.162 INFO    ] 200
[2026-06-22 02:34:30,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:34:30,205.205 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:34:30,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:34:30,289.289 INFO    ] No camera update needed
[2026-06-22 02:34:30,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:34:30,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:34:30,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:34:30,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:34:32,346.346 INFO    ] ================================================
[2026-06-22 02:34:32,362.362 INFO    ] Launching Daemon at Mon Jun 22 02:34:32 IST 2026
[2026-06-22 02:34:32,373.373 INFO    ] ================================================
[2026-06-22 02:34:32,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:34:32
[2026-06-22 02:34:33,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:34:33,935.935 INFO    ] Initializing speech engine...
[2026-06-22 02:34:33,943.943 INFO    ] 2026-06-22 02:34:33
[2026-06-22 02:34:34,211.211 INFO    ] 2026-06-22 02:34:34
[2026-06-22 02:34:34,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:34:34,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:34:34,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:34:34,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:34:34,687.687 INFO    ] time= 22/06/2026 02:34:34
[2026-06-22 02:34:34,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:34:34,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:34:34,830.830 INFO    ] No existing commands found in stream
[2026-06-22 02:34:39,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:34:39,864.864 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-22 02:34:42,774.774 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:34:42,776.776 INFO    ] Checking for system updates...
[2026-06-22 02:34:42,796.796 INFO    ] 200
[2026-06-22 02:34:42,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:34:42,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:34:42,830.830 INFO    ] No update needed
[2026-06-22 02:34:42,831.831 INFO    ] Checking for camera pi updates...
[2026-06-22 02:34:42,851.851 INFO    ] 200
[2026-06-22 02:34:42,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:34:42,892.892 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:34:43,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:34:43,003.003 INFO    ] No camera update needed
[2026-06-22 02:34:43,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:34:43,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:34:43,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:34:43,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:34:45,061.061 INFO    ] ================================================
[2026-06-22 02:34:45,076.076 INFO    ] Launching Daemon at Mon Jun 22 02:34:45 IST 2026
[2026-06-22 02:34:45,086.086 INFO    ] ================================================
[2026-06-22 02:34:45,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:34:45
[2026-06-22 02:34:46,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:34:46,418.418 INFO    ] Initializing speech engine...
[2026-06-22 02:34:46,428.428 INFO    ] 2026-06-22 02:34:46
[2026-06-22 02:34:46,694.694 INFO    ] 2026-06-22 02:34:46
[2026-06-22 02:34:46,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:34:46,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:34:46,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:34:47,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:34:47,082.082 INFO    ] time= 22/06/2026 02:34:47
[2026-06-22 02:34:47,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:34:47,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:34:47,211.211 INFO    ] No existing commands found in stream
[2026-06-22 02:34:52,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:34:52,249.249 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-22 02:34:52,969.969 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:34:52,974.974 INFO    ] Checking for system updates...
[2026-06-22 02:34:53,012.012 INFO    ] 200
[2026-06-22 02:34:53,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:34:53,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:34:53,071.071 INFO    ] No update needed
[2026-06-22 02:34:53,073.073 INFO    ] Checking for camera pi updates...
[2026-06-22 02:34:53,107.107 INFO    ] 200
[2026-06-22 02:34:53,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:34:53,150.150 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:34:53,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:34:53,233.233 INFO    ] No camera update needed
[2026-06-22 02:34:53,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:34:53,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:34:53,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:34:53,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:34:55,287.287 INFO    ] ================================================
[2026-06-22 02:34:55,303.303 INFO    ] Launching Daemon at Mon Jun 22 02:34:55 IST 2026
[2026-06-22 02:34:55,315.315 INFO    ] ================================================
[2026-06-22 02:34:55,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:34:55
[2026-06-22 02:34:56,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:34:56,913.913 INFO    ] Initializing speech engine...
[2026-06-22 02:34:56,922.922 INFO    ] 2026-06-22 02:34:56
[2026-06-22 02:34:57,210.210 INFO    ] 2026-06-22 02:34:57
[2026-06-22 02:34:57,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:34:57,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:34:57,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:34:57,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:34:57,765.765 INFO    ] time= 22/06/2026 02:34:57
[2026-06-22 02:34:57,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:34:57,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:34:57,904.904 INFO    ] No existing commands found in stream
[2026-06-22 02:35:02,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:35:02,940.940 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-22 02:35:03,781.781 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:35:03,784.784 INFO    ] Checking for system updates...
[2026-06-22 02:35:03,821.821 INFO    ] 200
[2026-06-22 02:35:03,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:35:03,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:35:03,882.882 INFO    ] No update needed
[2026-06-22 02:35:03,885.885 INFO    ] Checking for camera pi updates...
[2026-06-22 02:35:03,919.919 INFO    ] 200
[2026-06-22 02:35:03,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:35:03,963.963 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:35:04,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:35:04,056.056 INFO    ] No camera update needed
[2026-06-22 02:35:04,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:35:04,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:35:04,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:35:04,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:35:06,111.111 INFO    ] ================================================
[2026-06-22 02:35:06,130.130 INFO    ] Launching Daemon at Mon Jun 22 02:35:06 IST 2026
[2026-06-22 02:35:06,141.141 INFO    ] ================================================
[2026-06-22 02:35:06,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:35:06
[2026-06-22 02:35:07,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:35:07,625.625 INFO    ] Initializing speech engine...
[2026-06-22 02:35:07,635.635 INFO    ] 2026-06-22 02:35:07
[2026-06-22 02:35:07,884.884 INFO    ] 2026-06-22 02:35:07
[2026-06-22 02:35:07,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:35:08,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:35:08,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:35:08,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:35:08,355.355 INFO    ] time= 22/06/2026 02:35:08
[2026-06-22 02:35:08,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:35:08,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:35:08,509.509 INFO    ] No existing commands found in stream
[2026-06-22 02:35:13,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:35:13,519.519 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-22 02:35:15,138.138 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:35:15,141.141 INFO    ] Checking for system updates...
[2026-06-22 02:35:15,177.177 INFO    ] 200
[2026-06-22 02:35:15,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:35:15,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:35:15,237.237 INFO    ] No update needed
[2026-06-22 02:35:15,240.240 INFO    ] Checking for camera pi updates...
[2026-06-22 02:35:15,274.274 INFO    ] 200
[2026-06-22 02:35:15,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:35:15,318.318 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:35:15,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:35:15,400.400 INFO    ] No camera update needed
[2026-06-22 02:35:15,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:35:15,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:35:15,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:35:15,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:35:17,457.457 INFO    ] ================================================
[2026-06-22 02:35:17,472.472 INFO    ] Launching Daemon at Mon Jun 22 02:35:17 IST 2026
[2026-06-22 02:35:17,482.482 INFO    ] ================================================
[2026-06-22 02:35:18,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:35:18
[2026-06-22 02:35:18,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:35:19,010.010 INFO    ] Initializing speech engine...
[2026-06-22 02:35:19,023.023 INFO    ] 2026-06-22 02:35:19
[2026-06-22 02:35:19,304.304 INFO    ] 2026-06-22 02:35:19
[2026-06-22 02:35:19,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:35:19,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:35:19,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:35:19,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:35:19,770.770 INFO    ] time= 22/06/2026 02:35:19
[2026-06-22 02:35:19,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:35:19,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:35:19,982.982 INFO    ] No existing commands found in stream
[2026-06-22 02:35:25,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:35:25,017.017 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-22 02:35:27,470.470 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:35:27,473.473 INFO    ] Checking for system updates...
[2026-06-22 02:35:27,509.509 INFO    ] 200
[2026-06-22 02:35:27,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:35:27,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:35:27,567.567 INFO    ] No update needed
[2026-06-22 02:35:27,570.570 INFO    ] Checking for camera pi updates...
[2026-06-22 02:35:27,603.603 INFO    ] 200
[2026-06-22 02:35:27,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:35:27,652.652 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:35:27,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:35:27,738.738 INFO    ] No camera update needed
[2026-06-22 02:35:27,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:35:27,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:35:27,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:35:27,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:35:29,795.795 INFO    ] ================================================
[2026-06-22 02:35:29,810.810 INFO    ] Launching Daemon at Mon Jun 22 02:35:29 IST 2026
[2026-06-22 02:35:29,821.821 INFO    ] ================================================
[2026-06-22 02:35:30,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:35:30
[2026-06-22 02:35:30,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:35:31,185.185 INFO    ] Initializing speech engine...
[2026-06-22 02:35:31,197.197 INFO    ] 2026-06-22 02:35:31
[2026-06-22 02:35:31,448.448 INFO    ] 2026-06-22 02:35:31
[2026-06-22 02:35:31,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:35:31,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:35:31,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:35:31,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:35:31,851.851 INFO    ] time= 22/06/2026 02:35:31
[2026-06-22 02:35:31,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:35:31,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:35:32,036.036 INFO    ] No existing commands found in stream
[2026-06-22 02:35:37,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:35:37,068.068 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-22 02:35:40,992.992 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:35:40,995.995 INFO    ] Checking for system updates...
[2026-06-22 02:35:41,034.034 INFO    ] 200
[2026-06-22 02:35:41,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:35:41,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:35:41,097.097 INFO    ] No update needed
[2026-06-22 02:35:41,099.099 INFO    ] Checking for camera pi updates...
[2026-06-22 02:35:41,133.133 INFO    ] 200
[2026-06-22 02:35:41,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:35:41,175.175 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:35:41,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:35:41,262.262 INFO    ] No camera update needed
[2026-06-22 02:35:41,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:35:41,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:35:41,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:35:41,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:35:43,319.319 INFO    ] ================================================
[2026-06-22 02:35:43,334.334 INFO    ] Launching Daemon at Mon Jun 22 02:35:43 IST 2026
[2026-06-22 02:35:43,345.345 INFO    ] ================================================
[2026-06-22 02:35:43,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:35:43
[2026-06-22 02:35:44,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:35:44,741.741 INFO    ] Initializing speech engine...
[2026-06-22 02:35:44,747.747 INFO    ] 2026-06-22 02:35:44
[2026-06-22 02:35:45,043.043 INFO    ] 2026-06-22 02:35:45
[2026-06-22 02:35:45,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:35:45,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:35:45,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:35:45,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:35:45,398.398 INFO    ] time= 22/06/2026 02:35:45
[2026-06-22 02:35:45,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:35:45,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:35:45,479.479 INFO    ] No existing commands found in stream
[2026-06-22 02:35:50,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:35:50,490.490 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-22 02:35:51,174.174 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:35:51,177.177 INFO    ] Checking for system updates...
[2026-06-22 02:35:51,217.217 INFO    ] 200
[2026-06-22 02:35:51,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:35:51,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:35:51,275.275 INFO    ] No update needed
[2026-06-22 02:35:51,277.277 INFO    ] Checking for camera pi updates...
[2026-06-22 02:35:51,315.315 INFO    ] 200
[2026-06-22 02:35:51,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:35:51,363.363 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:35:51,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:35:51,455.455 INFO    ] No camera update needed
[2026-06-22 02:35:51,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:35:51,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:35:51,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:35:51,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:35:53,510.510 INFO    ] ================================================
[2026-06-22 02:35:53,525.525 INFO    ] Launching Daemon at Mon Jun 22 02:35:53 IST 2026
[2026-06-22 02:35:53,536.536 INFO    ] ================================================
[2026-06-22 02:35:54,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:35:54
[2026-06-22 02:35:54,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:35:54,901.901 INFO    ] Initializing speech engine...
[2026-06-22 02:35:54,918.918 INFO    ] 2026-06-22 02:35:54
[2026-06-22 02:35:55,208.208 INFO    ] 2026-06-22 02:35:55
[2026-06-22 02:35:55,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:35:55,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:35:55,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:35:55,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:35:55,592.592 INFO    ] time= 22/06/2026 02:35:55
[2026-06-22 02:35:55,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:35:55,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:35:55,718.718 INFO    ] No existing commands found in stream
[2026-06-22 02:36:00,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:36:00,731.731 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-22 02:36:03,435.435 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:36:03,438.438 INFO    ] Checking for system updates...
[2026-06-22 02:36:03,475.475 INFO    ] 200
[2026-06-22 02:36:03,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:36:03,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:36:03,533.533 INFO    ] No update needed
[2026-06-22 02:36:03,536.536 INFO    ] Checking for camera pi updates...
[2026-06-22 02:36:03,570.570 INFO    ] 200
[2026-06-22 02:36:03,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:36:03,613.613 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:36:03,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:36:03,713.713 INFO    ] No camera update needed
[2026-06-22 02:36:03,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:36:03,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:36:03,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:36:03,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:36:05,770.770 INFO    ] ================================================
[2026-06-22 02:36:05,785.785 INFO    ] Launching Daemon at Mon Jun 22 02:36:05 IST 2026
[2026-06-22 02:36:05,796.796 INFO    ] ================================================
[2026-06-22 02:36:06,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:36:06
[2026-06-22 02:36:06,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:36:07,297.297 INFO    ] Initializing speech engine...
[2026-06-22 02:36:07,318.318 INFO    ] 2026-06-22 02:36:07
[2026-06-22 02:36:07,596.596 INFO    ] 2026-06-22 02:36:07
[2026-06-22 02:36:07,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:36:07,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:36:07,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:36:07,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:36:07,974.974 INFO    ] time= 22/06/2026 02:36:07
[2026-06-22 02:36:07,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:36:07,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:36:08,051.051 INFO    ] No existing commands found in stream
[2026-06-22 02:36:13,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:36:13,065.065 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-22 02:36:15,135.135 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:36:15,138.138 INFO    ] Checking for system updates...
[2026-06-22 02:36:15,174.174 INFO    ] 200
[2026-06-22 02:36:15,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:36:15,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:36:15,231.231 INFO    ] No update needed
[2026-06-22 02:36:15,234.234 INFO    ] Checking for camera pi updates...
[2026-06-22 02:36:15,271.271 INFO    ] 200
[2026-06-22 02:36:15,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:36:15,316.316 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:36:15,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:36:15,405.405 INFO    ] No camera update needed
[2026-06-22 02:36:15,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:36:15,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:36:15,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:36:15,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:36:17,460.460 INFO    ] ================================================
[2026-06-22 02:36:17,476.476 INFO    ] Launching Daemon at Mon Jun 22 02:36:17 IST 2026
[2026-06-22 02:36:17,486.486 INFO    ] ================================================
[2026-06-22 02:36:18,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:36:18
[2026-06-22 02:36:18,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:36:18,800.800 INFO    ] Initializing speech engine...
[2026-06-22 02:36:18,806.806 INFO    ] 2026-06-22 02:36:18
[2026-06-22 02:36:19,106.106 INFO    ] 2026-06-22 02:36:19
[2026-06-22 02:36:19,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:36:19,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:36:19,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:36:19,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:36:19,487.487 INFO    ] time= 22/06/2026 02:36:19
[2026-06-22 02:36:19,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:36:19,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:36:19,612.612 INFO    ] No existing commands found in stream
[2026-06-22 02:36:24,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:36:24,627.627 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-22 02:36:25,689.689 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:36:25,692.692 INFO    ] Checking for system updates...
[2026-06-22 02:36:25,736.736 INFO    ] 200
[2026-06-22 02:36:25,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:36:25,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:36:25,797.797 INFO    ] No update needed
[2026-06-22 02:36:25,799.799 INFO    ] Checking for camera pi updates...
[2026-06-22 02:36:25,835.835 INFO    ] 200
[2026-06-22 02:36:25,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:36:25,880.880 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:36:26,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:36:26,068.068 INFO    ] No camera update needed
[2026-06-22 02:36:26,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:36:26,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:36:26,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:36:26,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:36:28,127.127 INFO    ] ================================================
[2026-06-22 02:36:28,142.142 INFO    ] Launching Daemon at Mon Jun 22 02:36:28 IST 2026
[2026-06-22 02:36:28,153.153 INFO    ] ================================================
[2026-06-22 02:36:28,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:36:28
[2026-06-22 02:36:29,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:36:29,609.609 INFO    ] Initializing speech engine...
[2026-06-22 02:36:29,626.626 INFO    ] 2026-06-22 02:36:29
[2026-06-22 02:36:29,877.877 INFO    ] 2026-06-22 02:36:29
[2026-06-22 02:36:29,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:36:30,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:36:30,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:36:30,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:36:30,305.305 INFO    ] time= 22/06/2026 02:36:30
[2026-06-22 02:36:30,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:36:30,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:36:30,460.460 INFO    ] No existing commands found in stream
[2026-06-22 02:36:35,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:36:35,474.474 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-22 02:36:37,655.655 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:36:37,658.658 INFO    ] Checking for system updates...
[2026-06-22 02:36:37,695.695 INFO    ] 200
[2026-06-22 02:36:37,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:36:37,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:36:37,755.755 INFO    ] No update needed
[2026-06-22 02:36:37,758.758 INFO    ] Checking for camera pi updates...
[2026-06-22 02:36:37,794.794 INFO    ] 200
[2026-06-22 02:36:37,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:36:37,839.839 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:36:37,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:36:37,934.934 INFO    ] No camera update needed
[2026-06-22 02:36:37,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:36:37,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:36:37,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:36:37,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:36:39,992.992 INFO    ] ================================================
[2026-06-22 02:36:40,008.008 INFO    ] Launching Daemon at Mon Jun 22 02:36:40 IST 2026
[2026-06-22 02:36:40,019.019 INFO    ] ================================================
[2026-06-22 02:36:40,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:36:40
[2026-06-22 02:36:41,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:36:41,396.396 INFO    ] Initializing speech engine...
[2026-06-22 02:36:41,406.406 INFO    ] 2026-06-22 02:36:41
[2026-06-22 02:36:41,653.653 INFO    ] 2026-06-22 02:36:41
[2026-06-22 02:36:41,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:36:41,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:36:41,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:36:42,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:36:42,032.032 INFO    ] time= 22/06/2026 02:36:42
[2026-06-22 02:36:42,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:36:42,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:36:42,207.207 INFO    ] No existing commands found in stream
[2026-06-22 02:36:47,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:36:47,237.237 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-22 02:36:47,991.991 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:36:47,994.994 INFO    ] Checking for system updates...
[2026-06-22 02:36:48,032.032 INFO    ] 200
[2026-06-22 02:36:48,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:36:48,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:36:48,102.102 INFO    ] No update needed
[2026-06-22 02:36:48,105.105 INFO    ] Checking for camera pi updates...
[2026-06-22 02:36:48,140.140 INFO    ] 200
[2026-06-22 02:36:48,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:36:48,191.191 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:36:48,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:36:48,275.275 INFO    ] No camera update needed
[2026-06-22 02:36:48,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:36:48,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:36:48,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:36:48,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:36:50,337.337 INFO    ] ================================================
[2026-06-22 02:36:50,352.352 INFO    ] Launching Daemon at Mon Jun 22 02:36:50 IST 2026
[2026-06-22 02:36:50,364.364 INFO    ] ================================================
[2026-06-22 02:36:50,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:36:50
[2026-06-22 02:36:51,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:36:51,752.752 INFO    ] Initializing speech engine...
[2026-06-22 02:36:51,759.759 INFO    ] 2026-06-22 02:36:51
[2026-06-22 02:36:52,008.008 INFO    ] 2026-06-22 02:36:52
[2026-06-22 02:36:52,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:36:52,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:36:52,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:36:52,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:36:52,486.486 INFO    ] time= 22/06/2026 02:36:52
[2026-06-22 02:36:52,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:36:52,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:36:52,630.630 INFO    ] No existing commands found in stream
[2026-06-22 02:36:57,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:36:57,645.645 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-22 02:37:00,079.079 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:37:00,081.081 INFO    ] Checking for system updates...
[2026-06-22 02:37:00,114.114 INFO    ] 200
[2026-06-22 02:37:00,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:37:00,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:37:00,174.174 INFO    ] No update needed
[2026-06-22 02:37:00,177.177 INFO    ] Checking for camera pi updates...
[2026-06-22 02:37:00,213.213 INFO    ] 200
[2026-06-22 02:37:00,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:37:00,258.258 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:37:00,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:37:00,348.348 INFO    ] No camera update needed
[2026-06-22 02:37:00,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:37:00,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:37:00,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:37:00,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:37:02,409.409 INFO    ] ================================================
[2026-06-22 02:37:02,430.430 INFO    ] Launching Daemon at Mon Jun 22 02:37:02 IST 2026
[2026-06-22 02:37:02,445.445 INFO    ] ================================================
[2026-06-22 02:37:03,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:37:03
[2026-06-22 02:37:03,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:37:03,946.946 INFO    ] Initializing speech engine...
[2026-06-22 02:37:03,952.952 INFO    ] 2026-06-22 02:37:03
[2026-06-22 02:37:04,248.248 INFO    ] 2026-06-22 02:37:04
[2026-06-22 02:37:04,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:37:04,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:37:04,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:37:04,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:37:04,622.622 INFO    ] time= 22/06/2026 02:37:04
[2026-06-22 02:37:04,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:37:04,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:37:04,692.692 INFO    ] No existing commands found in stream
[2026-06-22 02:37:09,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:37:09,726.726 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-22 02:37:11,888.888 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:37:11,890.890 INFO    ] Checking for system updates...
[2026-06-22 02:37:11,927.927 INFO    ] 200
[2026-06-22 02:37:11,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:37:11,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:37:11,985.985 INFO    ] No update needed
[2026-06-22 02:37:11,987.987 INFO    ] Checking for camera pi updates...
[2026-06-22 02:37:12,021.021 INFO    ] 200
[2026-06-22 02:37:12,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:37:12,072.072 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:37:12,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:37:12,155.155 INFO    ] No camera update needed
[2026-06-22 02:37:12,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:37:12,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:37:12,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:37:12,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:37:14,209.209 INFO    ] ================================================
[2026-06-22 02:37:14,225.225 INFO    ] Launching Daemon at Mon Jun 22 02:37:14 IST 2026
[2026-06-22 02:37:14,236.236 INFO    ] ================================================
[2026-06-22 02:37:14,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:37:14
[2026-06-22 02:37:15,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:37:15,828.828 INFO    ] Initializing speech engine...
[2026-06-22 02:37:15,841.841 INFO    ] 2026-06-22 02:37:15
[2026-06-22 02:37:16,038.038 INFO    ] 2026-06-22 02:37:16
[2026-06-22 02:37:16,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:37:16,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:37:16,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:37:16,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:37:16,418.418 INFO    ] time= 22/06/2026 02:37:16
[2026-06-22 02:37:16,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:37:16,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:37:16,543.543 INFO    ] No existing commands found in stream
[2026-06-22 02:37:21,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:37:21,558.558 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-22 02:37:22,130.130 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:37:22,131.131 INFO    ] Checking for system updates...
[2026-06-22 02:37:22,159.159 INFO    ] 200
[2026-06-22 02:37:22,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:37:22,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:37:22,217.217 INFO    ] No update needed
[2026-06-22 02:37:22,219.219 INFO    ] Checking for camera pi updates...
[2026-06-22 02:37:22,253.253 INFO    ] 200
[2026-06-22 02:37:22,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:37:22,297.297 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:37:22,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:37:22,378.378 INFO    ] No camera update needed
[2026-06-22 02:37:22,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:37:22,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:37:22,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:37:22,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:37:24,435.435 INFO    ] ================================================
[2026-06-22 02:37:24,451.451 INFO    ] Launching Daemon at Mon Jun 22 02:37:24 IST 2026
[2026-06-22 02:37:24,462.462 INFO    ] ================================================
[2026-06-22 02:37:25,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:37:25
[2026-06-22 02:37:25,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:37:25,786.786 INFO    ] Initializing speech engine...
[2026-06-22 02:37:25,804.804 INFO    ] 2026-06-22 02:37:25
[2026-06-22 02:37:26,051.051 INFO    ] 2026-06-22 02:37:26
[2026-06-22 02:37:26,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:37:26,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:37:26,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:37:26,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:37:26,487.487 INFO    ] time= 22/06/2026 02:37:26
[2026-06-22 02:37:26,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:37:26,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:37:26,643.643 INFO    ] No existing commands found in stream
[2026-06-22 02:37:31,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:37:31,661.661 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-22 02:37:32,978.978 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:37:32,981.981 INFO    ] Checking for system updates...
[2026-06-22 02:37:33,017.017 INFO    ] 200
[2026-06-22 02:37:33,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:37:33,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:37:33,074.074 INFO    ] No update needed
[2026-06-22 02:37:33,077.077 INFO    ] Checking for camera pi updates...
[2026-06-22 02:37:33,114.114 INFO    ] 200
[2026-06-22 02:37:33,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:37:33,159.159 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:37:33,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:37:33,260.260 INFO    ] No camera update needed
[2026-06-22 02:37:33,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:37:33,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:37:33,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:37:33,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:37:35,319.319 INFO    ] ================================================
[2026-06-22 02:37:35,333.333 INFO    ] Launching Daemon at Mon Jun 22 02:37:35 IST 2026
[2026-06-22 02:37:35,344.344 INFO    ] ================================================
[2026-06-22 02:37:35,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:37:35
[2026-06-22 02:37:36,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:37:36,784.784 INFO    ] Initializing speech engine...
[2026-06-22 02:37:36,792.792 INFO    ] 2026-06-22 02:37:36
[2026-06-22 02:37:37,052.052 INFO    ] 2026-06-22 02:37:37
[2026-06-22 02:37:37,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:37:37,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:37:37,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:37:37,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:37:37,519.519 INFO    ] time= 22/06/2026 02:37:37
[2026-06-22 02:37:37,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:37:37,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:37:37,668.668 INFO    ] No existing commands found in stream
[2026-06-22 02:37:42,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:37:42,683.683 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-22 02:37:46,382.382 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:37:46,384.384 INFO    ] Checking for system updates...
[2026-06-22 02:37:46,408.408 INFO    ] 200
[2026-06-22 02:37:46,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:37:46,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:37:46,466.466 INFO    ] No update needed
[2026-06-22 02:37:46,469.469 INFO    ] Checking for camera pi updates...
[2026-06-22 02:37:46,503.503 INFO    ] 200
[2026-06-22 02:37:46,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:37:46,550.550 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:37:46,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:37:46,642.642 INFO    ] No camera update needed
[2026-06-22 02:37:46,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:37:46,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:37:46,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:37:46,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:37:48,698.698 INFO    ] ================================================
[2026-06-22 02:37:48,713.713 INFO    ] Launching Daemon at Mon Jun 22 02:37:48 IST 2026
[2026-06-22 02:37:48,723.723 INFO    ] ================================================
[2026-06-22 02:37:49,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:37:49
[2026-06-22 02:37:49,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:37:50,056.056 INFO    ] Initializing speech engine...
[2026-06-22 02:37:50,064.064 INFO    ] 2026-06-22 02:37:50
[2026-06-22 02:37:50,315.315 INFO    ] 2026-06-22 02:37:50
[2026-06-22 02:37:50,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:37:50,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:37:50,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:37:50,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:37:50,692.692 INFO    ] time= 22/06/2026 02:37:50
[2026-06-22 02:37:50,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:37:50,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:37:50,852.852 INFO    ] No existing commands found in stream
[2026-06-22 02:37:55,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:37:55,885.885 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-22 02:37:59,946.946 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:37:59,948.948 INFO    ] Checking for system updates...
[2026-06-22 02:37:59,968.968 INFO    ] 200
[2026-06-22 02:37:59,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:38:00,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:38:00,001.001 INFO    ] No update needed
[2026-06-22 02:38:00,003.003 INFO    ] Checking for camera pi updates...
[2026-06-22 02:38:00,023.023 INFO    ] 200
[2026-06-22 02:38:00,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:38:00,070.070 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:38:00,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:38:00,153.153 INFO    ] No camera update needed
[2026-06-22 02:38:00,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:38:00,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:38:00,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:38:00,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:38:02,212.212 INFO    ] ================================================
[2026-06-22 02:38:02,239.239 INFO    ] Launching Daemon at Mon Jun 22 02:38:02 IST 2026
[2026-06-22 02:38:02,253.253 INFO    ] ================================================
[2026-06-22 02:38:02,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:38:02
[2026-06-22 02:38:03,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:38:03,789.789 INFO    ] Initializing speech engine...
[2026-06-22 02:38:03,798.798 INFO    ] 2026-06-22 02:38:03
[2026-06-22 02:38:04,087.087 INFO    ] 2026-06-22 02:38:04
[2026-06-22 02:38:04,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:38:04,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:38:04,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:38:04,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:38:04,471.471 INFO    ] time= 22/06/2026 02:38:04
[2026-06-22 02:38:04,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:38:04,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:38:04,577.577 INFO    ] No existing commands found in stream
[2026-06-22 02:38:09,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:38:09,596.596 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-22 02:38:12,696.696 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:38:12,697.697 INFO    ] Checking for system updates...
[2026-06-22 02:38:12,718.718 INFO    ] 200
[2026-06-22 02:38:12,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:38:12,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:38:12,773.773 INFO    ] No update needed
[2026-06-22 02:38:12,775.775 INFO    ] Checking for camera pi updates...
[2026-06-22 02:38:12,809.809 INFO    ] 200
[2026-06-22 02:38:12,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:38:12,853.853 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:38:12,940.940 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:38:12,942.942 INFO    ] No camera update needed
[2026-06-22 02:38:12,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:38:12,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:38:12,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:38:12,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:38:15,999.999 INFO    ] ================================================
[2026-06-22 02:38:15,014.014 INFO    ] Launching Daemon at Mon Jun 22 02:38:15 IST 2026
[2026-06-22 02:38:15,025.025 INFO    ] ================================================
[2026-06-22 02:38:15,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:38:15
[2026-06-22 02:38:16,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:38:16,341.341 INFO    ] Initializing speech engine...
[2026-06-22 02:38:16,353.353 INFO    ] 2026-06-22 02:38:16
[2026-06-22 02:38:16,627.627 INFO    ] 2026-06-22 02:38:16
[2026-06-22 02:38:16,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:38:16,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:38:16,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:38:17,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:38:17,029.029 INFO    ] time= 22/06/2026 02:38:17
[2026-06-22 02:38:17,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:38:17,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:38:17,192.192 INFO    ] No existing commands found in stream
[2026-06-22 02:38:22,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:38:22,220.220 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-22 02:38:26,224.224 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:38:26,227.227 INFO    ] Checking for system updates...
[2026-06-22 02:38:26,262.262 INFO    ] 200
[2026-06-22 02:38:26,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:38:26,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:38:26,320.320 INFO    ] No update needed
[2026-06-22 02:38:26,323.323 INFO    ] Checking for camera pi updates...
[2026-06-22 02:38:26,358.358 INFO    ] 200
[2026-06-22 02:38:26,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:38:26,404.404 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:38:26,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:38:26,474.474 INFO    ] No camera update needed
[2026-06-22 02:38:26,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:38:26,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:38:26,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:38:26,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:38:28,532.532 INFO    ] ================================================
[2026-06-22 02:38:28,547.547 INFO    ] Launching Daemon at Mon Jun 22 02:38:28 IST 2026
[2026-06-22 02:38:28,558.558 INFO    ] ================================================
[2026-06-22 02:38:29,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:38:29
[2026-06-22 02:38:29,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:38:29,935.935 INFO    ] Initializing speech engine...
[2026-06-22 02:38:29,958.958 INFO    ] 2026-06-22 02:38:29
[2026-06-22 02:38:30,224.224 INFO    ] 2026-06-22 02:38:30
[2026-06-22 02:38:30,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:38:30,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:38:30,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:38:30,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:38:30,584.584 INFO    ] time= 22/06/2026 02:38:30
[2026-06-22 02:38:30,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:38:30,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:38:30,708.708 INFO    ] No existing commands found in stream
[2026-06-22 02:38:35,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:38:35,720.720 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-22 02:38:39,139.139 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:38:39,140.140 INFO    ] Checking for system updates...
[2026-06-22 02:38:39,161.161 INFO    ] 200
[2026-06-22 02:38:39,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:38:39,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:38:39,218.218 INFO    ] No update needed
[2026-06-22 02:38:39,220.220 INFO    ] Checking for camera pi updates...
[2026-06-22 02:38:39,256.256 INFO    ] 200
[2026-06-22 02:38:39,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:38:39,298.298 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:38:39,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:38:39,376.376 INFO    ] No camera update needed
[2026-06-22 02:38:39,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:38:39,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:38:39,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:38:39,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:38:41,432.432 INFO    ] ================================================
[2026-06-22 02:38:41,448.448 INFO    ] Launching Daemon at Mon Jun 22 02:38:41 IST 2026
[2026-06-22 02:38:41,458.458 INFO    ] ================================================
[2026-06-22 02:38:42,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:38:42
[2026-06-22 02:38:42,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:38:42,919.919 INFO    ] Initializing speech engine...
[2026-06-22 02:38:42,934.934 INFO    ] 2026-06-22 02:38:42
[2026-06-22 02:38:43,198.198 INFO    ] 2026-06-22 02:38:43
[2026-06-22 02:38:43,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:38:43,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:38:43,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:38:43,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:38:43,600.600 INFO    ] time= 22/06/2026 02:38:43
[2026-06-22 02:38:43,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:38:43,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:38:43,681.681 INFO    ] No existing commands found in stream
[2026-06-22 02:38:48,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:38:48,697.697 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-22 02:38:50,811.811 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:38:50,814.814 INFO    ] Checking for system updates...
[2026-06-22 02:38:50,852.852 INFO    ] 200
[2026-06-22 02:38:50,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:38:50,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:38:50,909.909 INFO    ] No update needed
[2026-06-22 02:38:50,911.911 INFO    ] Checking for camera pi updates...
[2026-06-22 02:38:50,947.947 INFO    ] 200
[2026-06-22 02:38:50,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:38:50,991.991 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:38:51,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:38:51,073.073 INFO    ] No camera update needed
[2026-06-22 02:38:51,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:38:51,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:38:51,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:38:51,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:38:53,130.130 INFO    ] ================================================
[2026-06-22 02:38:53,145.145 INFO    ] Launching Daemon at Mon Jun 22 02:38:53 IST 2026
[2026-06-22 02:38:53,155.155 INFO    ] ================================================
[2026-06-22 02:38:53,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:38:53
[2026-06-22 02:38:54,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:38:54,524.524 INFO    ] Initializing speech engine...
[2026-06-22 02:38:54,531.531 INFO    ] 2026-06-22 02:38:54
[2026-06-22 02:38:54,786.786 INFO    ] 2026-06-22 02:38:54
[2026-06-22 02:38:54,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:38:55,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:38:55,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:38:55,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:38:55,254.254 INFO    ] time= 22/06/2026 02:38:55
[2026-06-22 02:38:55,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:38:55,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:38:55,407.407 INFO    ] No existing commands found in stream
[2026-06-22 02:39:00,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:39:00,422.422 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-22 02:39:04,188.188 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:39:04,190.190 INFO    ] Checking for system updates...
[2026-06-22 02:39:04,227.227 INFO    ] 200
[2026-06-22 02:39:04,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:39:04,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:39:04,290.290 INFO    ] No update needed
[2026-06-22 02:39:04,292.292 INFO    ] Checking for camera pi updates...
[2026-06-22 02:39:04,329.329 INFO    ] 200
[2026-06-22 02:39:04,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:39:04,373.373 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:39:04,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:39:04,463.463 INFO    ] No camera update needed
[2026-06-22 02:39:04,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:39:04,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:39:04,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:39:04,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:39:06,520.520 INFO    ] ================================================
[2026-06-22 02:39:06,535.535 INFO    ] Launching Daemon at Mon Jun 22 02:39:06 IST 2026
[2026-06-22 02:39:06,545.545 INFO    ] ================================================
[2026-06-22 02:39:07,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:39:07
[2026-06-22 02:39:07,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:39:07,979.979 INFO    ] Initializing speech engine...
[2026-06-22 02:39:07,989.989 INFO    ] 2026-06-22 02:39:07
[2026-06-22 02:39:08,242.242 INFO    ] 2026-06-22 02:39:08
[2026-06-22 02:39:08,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:39:08,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:39:08,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:39:08,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:39:08,714.714 INFO    ] time= 22/06/2026 02:39:08
[2026-06-22 02:39:08,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:39:08,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:39:08,859.859 INFO    ] No existing commands found in stream
[2026-06-22 02:39:13,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:39:13,873.873 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-22 02:39:14,567.567 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:39:14,569.569 INFO    ] Checking for system updates...
[2026-06-22 02:39:14,606.606 INFO    ] 200
[2026-06-22 02:39:14,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:39:14,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:39:14,669.669 INFO    ] No update needed
[2026-06-22 02:39:14,671.671 INFO    ] Checking for camera pi updates...
[2026-06-22 02:39:14,705.705 INFO    ] 200
[2026-06-22 02:39:14,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:39:14,753.753 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:39:14,844.844 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:39:14,847.847 INFO    ] No camera update needed
[2026-06-22 02:39:14,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:39:14,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:39:14,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:39:14,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:39:16,903.903 INFO    ] ================================================
[2026-06-22 02:39:16,919.919 INFO    ] Launching Daemon at Mon Jun 22 02:39:16 IST 2026
[2026-06-22 02:39:16,930.930 INFO    ] ================================================
[2026-06-22 02:39:17,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:39:17
[2026-06-22 02:39:18,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:39:18,306.306 INFO    ] Initializing speech engine...
[2026-06-22 02:39:18,314.314 INFO    ] 2026-06-22 02:39:18
[2026-06-22 02:39:18,567.567 INFO    ] 2026-06-22 02:39:18
[2026-06-22 02:39:18,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:39:18,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:39:18,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:39:18,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:39:18,907.907 INFO    ] time= 22/06/2026 02:39:18
[2026-06-22 02:39:18,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:39:18,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:39:19,021.021 INFO    ] No existing commands found in stream
[2026-06-22 02:39:24,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:39:24,049.049 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-22 02:39:25,596.596 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:39:25,598.598 INFO    ] Checking for system updates...
[2026-06-22 02:39:25,634.634 INFO    ] 200
[2026-06-22 02:39:25,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:39:25,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:39:25,700.700 INFO    ] No update needed
[2026-06-22 02:39:25,703.703 INFO    ] Checking for camera pi updates...
[2026-06-22 02:39:25,737.737 INFO    ] 200
[2026-06-22 02:39:25,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:39:25,779.779 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:39:25,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:39:25,881.881 INFO    ] No camera update needed
[2026-06-22 02:39:25,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:39:25,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:39:25,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:39:25,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:39:27,937.937 INFO    ] ================================================
[2026-06-22 02:39:27,951.951 INFO    ] Launching Daemon at Mon Jun 22 02:39:27 IST 2026
[2026-06-22 02:39:27,967.967 INFO    ] ================================================
[2026-06-22 02:39:28,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:39:28
[2026-06-22 02:39:29,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:39:29,336.336 INFO    ] Initializing speech engine...
[2026-06-22 02:39:29,355.355 INFO    ] 2026-06-22 02:39:29
[2026-06-22 02:39:29,622.622 INFO    ] 2026-06-22 02:39:29
[2026-06-22 02:39:29,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:39:29,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:39:29,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:39:30,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:39:30,032.032 INFO    ] time= 22/06/2026 02:39:30
[2026-06-22 02:39:30,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:39:30,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:39:30,232.232 INFO    ] No existing commands found in stream
[2026-06-22 02:39:35,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:39:35,249.249 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-22 02:39:37,269.269 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:39:37,272.272 INFO    ] Checking for system updates...
[2026-06-22 02:39:37,309.309 INFO    ] 200
[2026-06-22 02:39:37,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:39:37,366.366 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:39:37,368.368 INFO    ] No update needed
[2026-06-22 02:39:37,370.370 INFO    ] Checking for camera pi updates...
[2026-06-22 02:39:37,407.407 INFO    ] 200
[2026-06-22 02:39:37,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:39:37,453.453 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:39:37,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:39:37,540.540 INFO    ] No camera update needed
[2026-06-22 02:39:37,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:39:37,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:39:37,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:39:37,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:39:39,596.596 INFO    ] ================================================
[2026-06-22 02:39:39,611.611 INFO    ] Launching Daemon at Mon Jun 22 02:39:39 IST 2026
[2026-06-22 02:39:39,622.622 INFO    ] ================================================
[2026-06-22 02:39:40,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:39:40
[2026-06-22 02:39:40,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:39:41,054.054 INFO    ] Initializing speech engine...
[2026-06-22 02:39:41,063.063 INFO    ] 2026-06-22 02:39:41
[2026-06-22 02:39:41,355.355 INFO    ] 2026-06-22 02:39:41
[2026-06-22 02:39:41,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:39:41,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:39:41,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:39:41,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:39:41,728.728 INFO    ] time= 22/06/2026 02:39:41
[2026-06-22 02:39:41,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:39:41,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:39:41,851.851 INFO    ] No existing commands found in stream
[2026-06-22 02:39:46,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:39:46,866.866 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-22 02:39:49,855.855 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:39:49,856.856 INFO    ] Checking for system updates...
[2026-06-22 02:39:49,877.877 INFO    ] 200
[2026-06-22 02:39:49,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:39:49,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:39:49,923.923 INFO    ] No update needed
[2026-06-22 02:39:49,925.925 INFO    ] Checking for camera pi updates...
[2026-06-22 02:39:49,959.959 INFO    ] 200
[2026-06-22 02:39:49,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:39:50,006.006 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:39:50,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:39:50,121.121 INFO    ] No camera update needed
[2026-06-22 02:39:50,124.124 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:39:50,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:39:50,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:39:50,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:39:52,177.177 INFO    ] ================================================
[2026-06-22 02:39:52,192.192 INFO    ] Launching Daemon at Mon Jun 22 02:39:52 IST 2026
[2026-06-22 02:39:52,203.203 INFO    ] ================================================
[2026-06-22 02:39:52,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:39:52
[2026-06-22 02:39:53,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:39:53,531.531 INFO    ] Initializing speech engine...
[2026-06-22 02:39:53,544.544 INFO    ] 2026-06-22 02:39:53
[2026-06-22 02:39:53,823.823 INFO    ] 2026-06-22 02:39:53
[2026-06-22 02:39:53,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:39:54,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:39:54,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:39:54,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:39:54,193.193 INFO    ] time= 22/06/2026 02:39:54
[2026-06-22 02:39:54,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:39:54,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:39:54,315.315 INFO    ] No existing commands found in stream
[2026-06-22 02:39:59,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:39:59,330.330 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-22 02:39:59,901.901 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:39:59,903.903 INFO    ] Checking for system updates...
[2026-06-22 02:39:59,942.942 INFO    ] 200
[2026-06-22 02:39:59,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:39:59,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:39:59,999.999 INFO    ] No update needed
[2026-06-22 02:40:00,002.002 INFO    ] Checking for camera pi updates...
[2026-06-22 02:40:00,036.036 INFO    ] 200
[2026-06-22 02:40:00,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:40:00,078.078 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:40:00,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:40:00,168.168 INFO    ] No camera update needed
[2026-06-22 02:40:00,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:40:00,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:40:00,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:40:00,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:40:02,233.233 INFO    ] ================================================
[2026-06-22 02:40:02,258.258 INFO    ] Launching Daemon at Mon Jun 22 02:40:02 IST 2026
[2026-06-22 02:40:02,281.281 INFO    ] ================================================
[2026-06-22 02:40:02,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:40:02
[2026-06-22 02:40:03,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:40:03,894.894 INFO    ] Initializing speech engine...
[2026-06-22 02:40:03,915.915 INFO    ] 2026-06-22 02:40:03
[2026-06-22 02:40:04,189.189 INFO    ] 2026-06-22 02:40:04
[2026-06-22 02:40:04,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:40:04,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:40:04,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:40:04,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:40:04,562.562 INFO    ] time= 22/06/2026 02:40:04
[2026-06-22 02:40:04,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:40:04,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:40:04,683.683 INFO    ] No existing commands found in stream
[2026-06-22 02:40:09,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:40:09,698.698 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-22 02:40:10,553.553 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:40:10,554.554 INFO    ] Checking for system updates...
[2026-06-22 02:40:10,576.576 INFO    ] 200
[2026-06-22 02:40:10,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:40:10,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:40:10,641.641 INFO    ] No update needed
[2026-06-22 02:40:10,644.644 INFO    ] Checking for camera pi updates...
[2026-06-22 02:40:10,682.682 INFO    ] 200
[2026-06-22 02:40:10,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:40:10,727.727 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:40:10,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:40:10,822.822 INFO    ] No camera update needed
[2026-06-22 02:40:10,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:40:10,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:40:10,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:40:10,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:40:12,882.882 INFO    ] ================================================
[2026-06-22 02:40:12,898.898 INFO    ] Launching Daemon at Mon Jun 22 02:40:12 IST 2026
[2026-06-22 02:40:12,908.908 INFO    ] ================================================
[2026-06-22 02:40:13,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:40:13
[2026-06-22 02:40:14,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:40:14,272.272 INFO    ] Initializing speech engine...
[2026-06-22 02:40:14,288.288 INFO    ] 2026-06-22 02:40:14
[2026-06-22 02:40:14,574.574 INFO    ] 2026-06-22 02:40:14
[2026-06-22 02:40:14,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:40:14,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:40:14,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:40:14,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:40:14,951.951 INFO    ] time= 22/06/2026 02:40:14
[2026-06-22 02:40:14,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:40:14,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:40:15,074.074 INFO    ] No existing commands found in stream
[2026-06-22 02:40:20,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:40:20,089.089 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-22 02:40:20,550.550 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:40:20,551.551 INFO    ] Checking for system updates...
[2026-06-22 02:40:20,579.579 INFO    ] 200
[2026-06-22 02:40:20,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:40:20,634.634 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:40:20,637.637 INFO    ] No update needed
[2026-06-22 02:40:20,639.639 INFO    ] Checking for camera pi updates...
[2026-06-22 02:40:20,676.676 INFO    ] 200
[2026-06-22 02:40:20,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:40:20,724.724 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:40:20,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:40:20,818.818 INFO    ] No camera update needed
[2026-06-22 02:40:20,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:40:20,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:40:20,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:40:20,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:40:22,874.874 INFO    ] ================================================
[2026-06-22 02:40:22,889.889 INFO    ] Launching Daemon at Mon Jun 22 02:40:22 IST 2026
[2026-06-22 02:40:22,900.900 INFO    ] ================================================
[2026-06-22 02:40:23,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:40:23
[2026-06-22 02:40:23,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:40:24,231.231 INFO    ] Initializing speech engine...
[2026-06-22 02:40:24,241.241 INFO    ] 2026-06-22 02:40:24
[2026-06-22 02:40:24,488.488 INFO    ] 2026-06-22 02:40:24
[2026-06-22 02:40:24,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:40:24,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:40:24,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:40:24,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:40:24,962.962 INFO    ] time= 22/06/2026 02:40:24
[2026-06-22 02:40:25,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:40:25,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:40:25,108.108 INFO    ] No existing commands found in stream
[2026-06-22 02:40:30,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:40:30,122.122 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-22 02:40:31,487.487 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:40:31,489.489 INFO    ] Checking for system updates...
[2026-06-22 02:40:31,509.509 INFO    ] 200
[2026-06-22 02:40:31,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:40:31,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:40:31,543.543 INFO    ] No update needed
[2026-06-22 02:40:31,545.545 INFO    ] Checking for camera pi updates...
[2026-06-22 02:40:31,572.572 INFO    ] 200
[2026-06-22 02:40:31,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:40:31,639.639 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:40:31,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:40:31,712.712 INFO    ] No camera update needed
[2026-06-22 02:40:31,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:40:31,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:40:31,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:40:31,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:40:33,777.777 INFO    ] ================================================
[2026-06-22 02:40:33,791.791 INFO    ] Launching Daemon at Mon Jun 22 02:40:33 IST 2026
[2026-06-22 02:40:33,802.802 INFO    ] ================================================
[2026-06-22 02:40:34,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:40:34
[2026-06-22 02:40:34,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:40:35,180.180 INFO    ] Initializing speech engine...
[2026-06-22 02:40:35,187.187 INFO    ] 2026-06-22 02:40:35
[2026-06-22 02:40:35,453.453 INFO    ] 2026-06-22 02:40:35
[2026-06-22 02:40:35,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:40:35,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:40:35,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:40:35,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:40:35,931.931 INFO    ] time= 22/06/2026 02:40:35
[2026-06-22 02:40:35,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:40:36,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:40:36,061.061 INFO    ] No existing commands found in stream
[2026-06-22 02:40:41,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:40:41,077.077 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-22 02:40:42,088.088 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:40:42,090.090 INFO    ] Checking for system updates...
[2026-06-22 02:40:42,111.111 INFO    ] 200
[2026-06-22 02:40:42,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:40:42,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:40:42,145.145 INFO    ] No update needed
[2026-06-22 02:40:42,146.146 INFO    ] Checking for camera pi updates...
[2026-06-22 02:40:42,174.174 INFO    ] 200
[2026-06-22 02:40:42,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:40:42,220.220 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:40:42,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:40:42,328.328 INFO    ] No camera update needed
[2026-06-22 02:40:42,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:40:42,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:40:42,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:40:42,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:40:44,387.387 INFO    ] ================================================
[2026-06-22 02:40:44,403.403 INFO    ] Launching Daemon at Mon Jun 22 02:40:44 IST 2026
[2026-06-22 02:40:44,413.413 INFO    ] ================================================
[2026-06-22 02:40:45,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:40:45
[2026-06-22 02:40:45,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:40:45,910.910 INFO    ] Initializing speech engine...
[2026-06-22 02:40:45,919.919 INFO    ] 2026-06-22 02:40:45
[2026-06-22 02:40:46,166.166 INFO    ] 2026-06-22 02:40:46
[2026-06-22 02:40:46,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:40:46,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:40:46,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:40:46,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:40:46,534.534 INFO    ] time= 22/06/2026 02:40:46
[2026-06-22 02:40:46,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:40:46,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:40:46,702.702 INFO    ] No existing commands found in stream
[2026-06-22 02:40:51,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:40:51,735.735 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-22 02:40:55,077.077 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:40:55,080.080 INFO    ] Checking for system updates...
[2026-06-22 02:40:55,115.115 INFO    ] 200
[2026-06-22 02:40:55,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:40:55,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:40:55,181.181 INFO    ] No update needed
[2026-06-22 02:40:55,183.183 INFO    ] Checking for camera pi updates...
[2026-06-22 02:40:55,218.218 INFO    ] 200
[2026-06-22 02:40:55,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:40:55,268.268 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:40:55,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:40:55,457.457 INFO    ] No camera update needed
[2026-06-22 02:40:55,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:40:55,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:40:55,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:40:55,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:40:57,515.515 INFO    ] ================================================
[2026-06-22 02:40:57,531.531 INFO    ] Launching Daemon at Mon Jun 22 02:40:57 IST 2026
[2026-06-22 02:40:57,541.541 INFO    ] ================================================
[2026-06-22 02:40:58,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:40:58
[2026-06-22 02:40:58,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:40:58,914.914 INFO    ] Initializing speech engine...
[2026-06-22 02:40:58,923.923 INFO    ] 2026-06-22 02:40:58
[2026-06-22 02:40:59,181.181 INFO    ] 2026-06-22 02:40:59
[2026-06-22 02:40:59,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:40:59,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:40:59,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:40:59,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:40:59,616.616 INFO    ] time= 22/06/2026 02:40:59
[2026-06-22 02:40:59,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:40:59,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:40:59,784.784 INFO    ] No existing commands found in stream
[2026-06-22 02:41:04,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:41:04,799.799 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-22 02:41:07,679.679 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:41:07,681.681 INFO    ] Checking for system updates...
[2026-06-22 02:41:07,702.702 INFO    ] 200
[2026-06-22 02:41:07,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:41:07,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:41:07,735.735 INFO    ] No update needed
[2026-06-22 02:41:07,736.736 INFO    ] Checking for camera pi updates...
[2026-06-22 02:41:07,756.756 INFO    ] 200
[2026-06-22 02:41:07,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:41:07,782.782 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:41:07,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:41:07,885.885 INFO    ] No camera update needed
[2026-06-22 02:41:07,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:41:07,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:41:07,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:41:07,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:41:09,941.941 INFO    ] ================================================
[2026-06-22 02:41:09,956.956 INFO    ] Launching Daemon at Mon Jun 22 02:41:09 IST 2026
[2026-06-22 02:41:09,967.967 INFO    ] ================================================
[2026-06-22 02:41:10,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:41:10
[2026-06-22 02:41:11,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:41:11,298.298 INFO    ] Initializing speech engine...
[2026-06-22 02:41:11,304.304 INFO    ] 2026-06-22 02:41:11
[2026-06-22 02:41:11,581.581 INFO    ] 2026-06-22 02:41:11
[2026-06-22 02:41:11,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:41:11,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:41:11,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:41:11,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:41:11,958.958 INFO    ] time= 22/06/2026 02:41:11
[2026-06-22 02:41:11,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:41:12,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:41:12,134.134 INFO    ] No existing commands found in stream
[2026-06-22 02:41:17,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:41:17,167.167 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-22 02:41:21,102.102 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:41:21,105.105 INFO    ] Checking for system updates...
[2026-06-22 02:41:21,142.142 INFO    ] 200
[2026-06-22 02:41:21,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:41:21,198.198 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:41:21,201.201 INFO    ] No update needed
[2026-06-22 02:41:21,203.203 INFO    ] Checking for camera pi updates...
[2026-06-22 02:41:21,236.236 INFO    ] 200
[2026-06-22 02:41:21,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:41:21,279.279 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:41:21,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:41:21,366.366 INFO    ] No camera update needed
[2026-06-22 02:41:21,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:41:21,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:41:21,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:41:21,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:41:23,423.423 INFO    ] ================================================
[2026-06-22 02:41:23,441.441 INFO    ] Launching Daemon at Mon Jun 22 02:41:23 IST 2026
[2026-06-22 02:41:23,454.454 INFO    ] ================================================
[2026-06-22 02:41:24,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:41:24
[2026-06-22 02:41:24,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:41:24,771.771 INFO    ] Initializing speech engine...
[2026-06-22 02:41:24,777.777 INFO    ] 2026-06-22 02:41:24
[2026-06-22 02:41:25,072.072 INFO    ] 2026-06-22 02:41:25
[2026-06-22 02:41:25,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:41:25,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:41:25,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:41:25,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:41:25,457.457 INFO    ] time= 22/06/2026 02:41:25
[2026-06-22 02:41:25,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:41:25,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:41:25,520.520 INFO    ] No existing commands found in stream
[2026-06-22 02:41:30,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:41:30,535.535 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-22 02:41:34,346.346 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:41:34,349.349 INFO    ] Checking for system updates...
[2026-06-22 02:41:34,389.389 INFO    ] 200
[2026-06-22 02:41:34,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:41:34,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:41:34,447.447 INFO    ] No update needed
[2026-06-22 02:41:34,449.449 INFO    ] Checking for camera pi updates...
[2026-06-22 02:41:34,482.482 INFO    ] 200
[2026-06-22 02:41:34,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:41:34,531.531 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:41:34,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:41:34,610.610 INFO    ] No camera update needed
[2026-06-22 02:41:34,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:41:34,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:41:34,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:41:34,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:41:36,667.667 INFO    ] ================================================
[2026-06-22 02:41:36,683.683 INFO    ] Launching Daemon at Mon Jun 22 02:41:36 IST 2026
[2026-06-22 02:41:36,693.693 INFO    ] ================================================
[2026-06-22 02:41:37,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:41:37
[2026-06-22 02:41:37,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:41:38,052.052 INFO    ] Initializing speech engine...
[2026-06-22 02:41:38,061.061 INFO    ] 2026-06-22 02:41:38
[2026-06-22 02:41:38,321.321 INFO    ] 2026-06-22 02:41:38
[2026-06-22 02:41:38,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:41:38,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:41:38,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:41:38,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:41:38,684.684 INFO    ] time= 22/06/2026 02:41:38
[2026-06-22 02:41:38,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:41:38,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:41:38,813.813 INFO    ] No existing commands found in stream
[2026-06-22 02:41:43,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:41:43,827.827 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-22 02:41:45,080.080 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:41:45,082.082 INFO    ] Checking for system updates...
[2026-06-22 02:41:45,103.103 INFO    ] 200
[2026-06-22 02:41:45,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:41:45,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:41:45,153.153 INFO    ] No update needed
[2026-06-22 02:41:45,156.156 INFO    ] Checking for camera pi updates...
[2026-06-22 02:41:45,189.189 INFO    ] 200
[2026-06-22 02:41:45,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:41:45,232.232 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:41:45,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:41:45,333.333 INFO    ] No camera update needed
[2026-06-22 02:41:45,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:41:45,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:41:45,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:41:45,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:41:47,390.390 INFO    ] ================================================
[2026-06-22 02:41:47,405.405 INFO    ] Launching Daemon at Mon Jun 22 02:41:47 IST 2026
[2026-06-22 02:41:47,416.416 INFO    ] ================================================
[2026-06-22 02:41:48,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:41:48
[2026-06-22 02:41:48,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:41:48,847.847 INFO    ] Initializing speech engine...
[2026-06-22 02:41:48,856.856 INFO    ] 2026-06-22 02:41:48
[2026-06-22 02:41:49,134.134 INFO    ] 2026-06-22 02:41:49
[2026-06-22 02:41:49,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:41:49,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:41:49,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:41:49,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:41:49,513.513 INFO    ] time= 22/06/2026 02:41:49
[2026-06-22 02:41:49,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:41:49,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:41:49,691.691 INFO    ] No existing commands found in stream
[2026-06-22 02:41:54,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:41:54,726.726 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-22 02:41:57,288.288 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:41:57,291.291 INFO    ] Checking for system updates...
[2026-06-22 02:41:57,328.328 INFO    ] 200
[2026-06-22 02:41:57,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:41:57,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:41:57,388.388 INFO    ] No update needed
[2026-06-22 02:41:57,391.391 INFO    ] Checking for camera pi updates...
[2026-06-22 02:41:57,430.430 INFO    ] 200
[2026-06-22 02:41:57,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:41:57,480.480 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:41:57,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:41:57,590.590 INFO    ] No camera update needed
[2026-06-22 02:41:57,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:41:57,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:41:57,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:41:57,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:41:59,648.648 INFO    ] ================================================
[2026-06-22 02:41:59,663.663 INFO    ] Launching Daemon at Mon Jun 22 02:41:59 IST 2026
[2026-06-22 02:41:59,674.674 INFO    ] ================================================
[2026-06-22 02:42:00,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:42:00
[2026-06-22 02:42:00,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:42:01,085.085 INFO    ] Initializing speech engine...
[2026-06-22 02:42:01,094.094 INFO    ] 2026-06-22 02:42:01
[2026-06-22 02:42:01,356.356 INFO    ] 2026-06-22 02:42:01
[2026-06-22 02:42:01,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:42:01,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:42:01,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:42:01,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:42:01,800.800 INFO    ] time= 22/06/2026 02:42:01
[2026-06-22 02:42:01,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:42:01,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:42:01,860.860 INFO    ] No existing commands found in stream
[2026-06-22 02:42:06,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:42:06,873.873 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-22 02:42:09,716.716 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:42:09,719.719 INFO    ] Checking for system updates...
[2026-06-22 02:42:09,757.757 INFO    ] 200
[2026-06-22 02:42:09,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:42:09,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:42:09,815.815 INFO    ] No update needed
[2026-06-22 02:42:09,818.818 INFO    ] Checking for camera pi updates...
[2026-06-22 02:42:09,852.852 INFO    ] 200
[2026-06-22 02:42:09,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:42:09,877.877 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:42:09,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:42:09,971.971 INFO    ] No camera update needed
[2026-06-22 02:42:09,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:42:09,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:42:09,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:42:09,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:42:12,030.030 INFO    ] ================================================
[2026-06-22 02:42:12,046.046 INFO    ] Launching Daemon at Mon Jun 22 02:42:12 IST 2026
[2026-06-22 02:42:12,057.057 INFO    ] ================================================
[2026-06-22 02:42:12,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:42:12
[2026-06-22 02:42:13,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:42:13,594.594 INFO    ] Initializing speech engine...
[2026-06-22 02:42:13,607.607 INFO    ] 2026-06-22 02:42:13
[2026-06-22 02:42:13,888.888 INFO    ] 2026-06-22 02:42:13
[2026-06-22 02:42:13,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:42:14,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:42:14,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:42:14,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:42:14,370.370 INFO    ] time= 22/06/2026 02:42:14
[2026-06-22 02:42:14,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:42:14,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:42:14,560.560 INFO    ] No existing commands found in stream
[2026-06-22 02:42:19,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:42:19,593.593 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-22 02:42:20,407.407 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:42:20,410.410 INFO    ] Checking for system updates...
[2026-06-22 02:42:20,451.451 INFO    ] 200
[2026-06-22 02:42:20,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:42:20,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:42:20,510.510 INFO    ] No update needed
[2026-06-22 02:42:20,513.513 INFO    ] Checking for camera pi updates...
[2026-06-22 02:42:20,546.546 INFO    ] 200
[2026-06-22 02:42:20,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:42:20,589.589 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:42:20,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:42:20,673.673 INFO    ] No camera update needed
[2026-06-22 02:42:20,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:42:20,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:42:20,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:42:20,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:42:22,728.728 INFO    ] ================================================
[2026-06-22 02:42:22,744.744 INFO    ] Launching Daemon at Mon Jun 22 02:42:22 IST 2026
[2026-06-22 02:42:22,755.755 INFO    ] ================================================
[2026-06-22 02:42:23,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:42:23
[2026-06-22 02:42:24,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:42:24,400.400 INFO    ] Initializing speech engine...
[2026-06-22 02:42:24,409.409 INFO    ] 2026-06-22 02:42:24
[2026-06-22 02:42:24,700.700 INFO    ] 2026-06-22 02:42:24
[2026-06-22 02:42:24,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:42:24,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:42:24,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:42:25,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:42:25,151.151 INFO    ] time= 22/06/2026 02:42:25
[2026-06-22 02:42:25,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:42:25,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:42:25,316.316 INFO    ] No existing commands found in stream
[2026-06-22 02:42:30,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:42:30,332.332 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-22 02:42:32,693.693 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:42:32,697.697 INFO    ] Checking for system updates...
[2026-06-22 02:42:32,741.741 INFO    ] 200
[2026-06-22 02:42:32,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:42:32,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:42:32,825.825 INFO    ] No update needed
[2026-06-22 02:42:32,827.827 INFO    ] Checking for camera pi updates...
[2026-06-22 02:42:32,861.861 INFO    ] 200
[2026-06-22 02:42:32,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:42:32,904.904 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:42:33,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:42:33,002.002 INFO    ] No camera update needed
[2026-06-22 02:42:33,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:42:33,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:42:33,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:42:33,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:42:35,058.058 INFO    ] ================================================
[2026-06-22 02:42:35,074.074 INFO    ] Launching Daemon at Mon Jun 22 02:42:35 IST 2026
[2026-06-22 02:42:35,084.084 INFO    ] ================================================
[2026-06-22 02:42:35,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:42:35
[2026-06-22 02:42:36,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:42:36,576.576 INFO    ] Initializing speech engine...
[2026-06-22 02:42:36,587.587 INFO    ] 2026-06-22 02:42:36
[2026-06-22 02:42:36,836.836 INFO    ] 2026-06-22 02:42:36
[2026-06-22 02:42:36,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:42:37,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:42:37,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:42:37,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:42:37,308.308 INFO    ] time= 22/06/2026 02:42:37
[2026-06-22 02:42:37,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:42:37,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:42:37,461.461 INFO    ] No existing commands found in stream
[2026-06-22 02:42:42,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:42:42,477.477 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-22 02:42:45,040.040 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:42:45,043.043 INFO    ] Checking for system updates...
[2026-06-22 02:42:45,080.080 INFO    ] 200
[2026-06-22 02:42:45,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:42:45,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:42:45,137.137 INFO    ] No update needed
[2026-06-22 02:42:45,140.140 INFO    ] Checking for camera pi updates...
[2026-06-22 02:42:45,174.174 INFO    ] 200
[2026-06-22 02:42:45,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:42:45,222.222 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:42:45,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:42:45,308.308 INFO    ] No camera update needed
[2026-06-22 02:42:45,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:42:45,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:42:45,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:42:45,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:42:47,365.365 INFO    ] ================================================
[2026-06-22 02:42:47,381.381 INFO    ] Launching Daemon at Mon Jun 22 02:42:47 IST 2026
[2026-06-22 02:42:47,393.393 INFO    ] ================================================
[2026-06-22 02:42:47,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:42:47
[2026-06-22 02:42:48,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:42:48,940.940 INFO    ] Initializing speech engine...
[2026-06-22 02:42:48,948.948 INFO    ] 2026-06-22 02:42:48
[2026-06-22 02:42:49,231.231 INFO    ] 2026-06-22 02:42:49
[2026-06-22 02:42:49,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:42:49,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:42:49,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:42:49,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:42:49,758.758 INFO    ] time= 22/06/2026 02:42:49
[2026-06-22 02:42:49,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:42:49,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:42:49,917.917 INFO    ] No existing commands found in stream
[2026-06-22 02:42:54,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:42:54,949.949 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-22 02:42:56,453.453 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:42:56,456.456 INFO    ] Checking for system updates...
[2026-06-22 02:42:56,478.478 INFO    ] 200
[2026-06-22 02:42:56,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:42:56,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:42:56,517.517 INFO    ] No update needed
[2026-06-22 02:42:56,518.518 INFO    ] Checking for camera pi updates...
[2026-06-22 02:42:56,541.541 INFO    ] 200
[2026-06-22 02:42:56,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:42:56,585.585 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:42:56,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:42:56,678.678 INFO    ] No camera update needed
[2026-06-22 02:42:56,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:42:56,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:42:56,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:42:56,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:42:58,738.738 INFO    ] ================================================
[2026-06-22 02:42:58,758.758 INFO    ] Launching Daemon at Mon Jun 22 02:42:58 IST 2026
[2026-06-22 02:42:58,770.770 INFO    ] ================================================
[2026-06-22 02:42:59,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:42:59
[2026-06-22 02:43:00,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:43:00,402.402 INFO    ] Initializing speech engine...
[2026-06-22 02:43:00,415.415 INFO    ] 2026-06-22 02:43:00
[2026-06-22 02:43:00,726.726 INFO    ] 2026-06-22 02:43:00
[2026-06-22 02:43:00,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:43:01,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:43:01,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:43:01,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:43:01,232.232 INFO    ] time= 22/06/2026 02:43:01
[2026-06-22 02:43:01,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:43:01,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:43:01,365.365 INFO    ] No existing commands found in stream
[2026-06-22 02:43:06,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:43:06,394.394 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-22 02:43:09,969.969 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:43:09,970.970 INFO    ] Checking for system updates...
[2026-06-22 02:43:09,992.992 INFO    ] 200
[2026-06-22 02:43:09,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:43:10,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:43:10,027.027 INFO    ] No update needed
[2026-06-22 02:43:10,028.028 INFO    ] Checking for camera pi updates...
[2026-06-22 02:43:10,048.048 INFO    ] 200
[2026-06-22 02:43:10,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:43:10,082.082 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:43:10,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:43:10,174.174 INFO    ] No camera update needed
[2026-06-22 02:43:10,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:43:10,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:43:10,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:43:10,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:43:12,231.231 INFO    ] ================================================
[2026-06-22 02:43:12,247.247 INFO    ] Launching Daemon at Mon Jun 22 02:43:12 IST 2026
[2026-06-22 02:43:12,258.258 INFO    ] ================================================
[2026-06-22 02:43:12,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:43:12
[2026-06-22 02:43:13,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:43:13,670.670 INFO    ] Initializing speech engine...
[2026-06-22 02:43:13,685.685 INFO    ] 2026-06-22 02:43:13
[2026-06-22 02:43:13,974.974 INFO    ] 2026-06-22 02:43:13
[2026-06-22 02:43:14,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:43:14,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:43:14,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:43:14,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:43:14,354.354 INFO    ] time= 22/06/2026 02:43:14
[2026-06-22 02:43:14,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:43:14,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:43:14,483.483 INFO    ] No existing commands found in stream
[2026-06-22 02:43:19,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:43:19,496.496 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-22 02:43:23,588.588 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:43:23,591.591 INFO    ] Checking for system updates...
[2026-06-22 02:43:23,626.626 INFO    ] 200
[2026-06-22 02:43:23,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:43:23,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:43:23,684.684 INFO    ] No update needed
[2026-06-22 02:43:23,686.686 INFO    ] Checking for camera pi updates...
[2026-06-22 02:43:23,725.725 INFO    ] 200
[2026-06-22 02:43:23,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:43:23,773.773 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:43:23,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:43:23,864.864 INFO    ] No camera update needed
[2026-06-22 02:43:23,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:43:23,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:43:23,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:43:23,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:43:25,919.919 INFO    ] ================================================
[2026-06-22 02:43:25,936.936 INFO    ] Launching Daemon at Mon Jun 22 02:43:25 IST 2026
[2026-06-22 02:43:25,947.947 INFO    ] ================================================
[2026-06-22 02:43:26,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:43:26
[2026-06-22 02:43:27,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:43:27,405.405 INFO    ] Initializing speech engine...
[2026-06-22 02:43:27,415.415 INFO    ] 2026-06-22 02:43:27
[2026-06-22 02:43:27,676.676 INFO    ] 2026-06-22 02:43:27
[2026-06-22 02:43:27,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:43:27,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:43:27,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:43:28,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:43:28,140.140 INFO    ] time= 22/06/2026 02:43:28
[2026-06-22 02:43:28,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:43:28,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:43:28,284.284 INFO    ] No existing commands found in stream
[2026-06-22 02:43:33,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:43:33,299.299 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-22 02:43:34,843.843 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:43:34,846.846 INFO    ] Checking for system updates...
[2026-06-22 02:43:34,886.886 INFO    ] 200
[2026-06-22 02:43:34,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:43:34,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:43:34,951.951 INFO    ] No update needed
[2026-06-22 02:43:34,954.954 INFO    ] Checking for camera pi updates...
[2026-06-22 02:43:34,987.987 INFO    ] 200
[2026-06-22 02:43:34,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:43:35,035.035 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:43:35,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:43:35,104.104 INFO    ] No camera update needed
[2026-06-22 02:43:35,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:43:35,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:43:35,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:43:35,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:43:37,161.161 INFO    ] ================================================
[2026-06-22 02:43:37,177.177 INFO    ] Launching Daemon at Mon Jun 22 02:43:37 IST 2026
[2026-06-22 02:43:37,188.188 INFO    ] ================================================
[2026-06-22 02:43:37,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:43:37
[2026-06-22 02:43:38,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:43:38,550.550 INFO    ] Initializing speech engine...
[2026-06-22 02:43:38,559.559 INFO    ] 2026-06-22 02:43:38
[2026-06-22 02:43:38,812.812 INFO    ] 2026-06-22 02:43:38
[2026-06-22 02:43:38,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:43:39,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:43:39,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:43:39,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:43:39,275.275 INFO    ] time= 22/06/2026 02:43:39
[2026-06-22 02:43:39,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:43:39,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:43:39,444.444 INFO    ] No existing commands found in stream
[2026-06-22 02:43:44,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:43:44,458.458 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-22 02:43:46,627.627 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:43:46,629.629 INFO    ] Checking for system updates...
[2026-06-22 02:43:46,651.651 INFO    ] 200
[2026-06-22 02:43:46,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:43:46,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:43:46,685.685 INFO    ] No update needed
[2026-06-22 02:43:46,686.686 INFO    ] Checking for camera pi updates...
[2026-06-22 02:43:46,718.718 INFO    ] 200
[2026-06-22 02:43:46,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:43:46,760.760 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:43:46,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:43:46,835.835 INFO    ] No camera update needed
[2026-06-22 02:43:46,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:43:46,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:43:46,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:43:46,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:43:48,892.892 INFO    ] ================================================
[2026-06-22 02:43:48,907.907 INFO    ] Launching Daemon at Mon Jun 22 02:43:48 IST 2026
[2026-06-22 02:43:48,918.918 INFO    ] ================================================
[2026-06-22 02:43:49,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:43:49
[2026-06-22 02:43:49,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:43:50,261.261 INFO    ] Initializing speech engine...
[2026-06-22 02:43:50,270.270 INFO    ] 2026-06-22 02:43:50
[2026-06-22 02:43:50,531.531 INFO    ] 2026-06-22 02:43:50
[2026-06-22 02:43:50,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:43:50,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:43:50,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:43:50,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:43:50,895.895 INFO    ] time= 22/06/2026 02:43:50
[2026-06-22 02:43:50,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:43:50,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:43:51,024.024 INFO    ] No existing commands found in stream
[2026-06-22 02:43:56,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:43:56,037.037 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-22 02:43:58,732.732 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:43:58,734.734 INFO    ] Checking for system updates...
[2026-06-22 02:43:58,755.755 INFO    ] 200
[2026-06-22 02:43:58,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:43:58,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:43:58,788.788 INFO    ] No update needed
[2026-06-22 02:43:58,790.790 INFO    ] Checking for camera pi updates...
[2026-06-22 02:43:58,822.822 INFO    ] 200
[2026-06-22 02:43:58,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:43:58,877.877 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:43:58,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:43:58,958.958 INFO    ] No camera update needed
[2026-06-22 02:43:58,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:43:58,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:43:58,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:43:58,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:44:01,016.016 INFO    ] ================================================
[2026-06-22 02:44:01,031.031 INFO    ] Launching Daemon at Mon Jun 22 02:44:01 IST 2026
[2026-06-22 02:44:01,042.042 INFO    ] ================================================
[2026-06-22 02:44:01,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:44:01
[2026-06-22 02:44:02,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:44:02,768.768 INFO    ] Initializing speech engine...
[2026-06-22 02:44:02,777.777 INFO    ] 2026-06-22 02:44:02
[2026-06-22 02:44:03,114.114 INFO    ] 2026-06-22 02:44:03
[2026-06-22 02:44:03,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:44:03,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:44:03,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:44:03,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:44:03,496.496 INFO    ] time= 22/06/2026 02:44:03
[2026-06-22 02:44:03,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:44:03,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:44:03,609.609 INFO    ] No existing commands found in stream
[2026-06-22 02:44:08,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:44:08,627.627 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-22 02:44:10,440.440 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:44:10,443.443 INFO    ] Checking for system updates...
[2026-06-22 02:44:10,480.480 INFO    ] 200
[2026-06-22 02:44:10,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:44:10,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:44:10,537.537 INFO    ] No update needed
[2026-06-22 02:44:10,540.540 INFO    ] Checking for camera pi updates...
[2026-06-22 02:44:10,574.574 INFO    ] 200
[2026-06-22 02:44:10,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:44:10,621.621 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:44:10,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:44:10,691.691 INFO    ] No camera update needed
[2026-06-22 02:44:10,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:44:10,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:44:10,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:44:10,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:44:12,748.748 INFO    ] ================================================
[2026-06-22 02:44:12,764.764 INFO    ] Launching Daemon at Mon Jun 22 02:44:12 IST 2026
[2026-06-22 02:44:12,776.776 INFO    ] ================================================
[2026-06-22 02:44:13,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:44:13
[2026-06-22 02:44:13,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:44:14,150.150 INFO    ] Initializing speech engine...
[2026-06-22 02:44:14,159.159 INFO    ] 2026-06-22 02:44:14
[2026-06-22 02:44:14,419.419 INFO    ] 2026-06-22 02:44:14
[2026-06-22 02:44:14,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:44:14,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:44:14,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:44:14,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:44:14,863.863 INFO    ] time= 22/06/2026 02:44:14
[2026-06-22 02:44:14,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:44:14,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:44:15,028.028 INFO    ] No existing commands found in stream
[2026-06-22 02:44:20,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:44:20,042.042 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-22 02:44:22,505.505 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:44:22,506.506 INFO    ] Checking for system updates...
[2026-06-22 02:44:22,527.527 INFO    ] 200
[2026-06-22 02:44:22,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:44:22,560.560 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:44:22,562.562 INFO    ] No update needed
[2026-06-22 02:44:22,563.563 INFO    ] Checking for camera pi updates...
[2026-06-22 02:44:22,582.582 INFO    ] 200
[2026-06-22 02:44:22,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:44:22,609.609 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:44:22,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:44:22,694.694 INFO    ] No camera update needed
[2026-06-22 02:44:22,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:44:22,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:44:22,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:44:22,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:44:24,750.750 INFO    ] ================================================
[2026-06-22 02:44:24,766.766 INFO    ] Launching Daemon at Mon Jun 22 02:44:24 IST 2026
[2026-06-22 02:44:24,777.777 INFO    ] ================================================
[2026-06-22 02:44:25,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:44:25
[2026-06-22 02:44:25,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:44:26,107.107 INFO    ] Initializing speech engine...
[2026-06-22 02:44:26,130.130 INFO    ] 2026-06-22 02:44:26
[2026-06-22 02:44:26,388.388 INFO    ] 2026-06-22 02:44:26
[2026-06-22 02:44:26,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:44:26,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:44:26,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:44:26,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:44:26,764.764 INFO    ] time= 22/06/2026 02:44:26
[2026-06-22 02:44:26,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:44:26,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:44:26,946.946 INFO    ] No existing commands found in stream
[2026-06-22 02:44:31,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:44:31,973.973 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-22 02:44:35,316.316 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:44:35,317.317 INFO    ] Checking for system updates...
[2026-06-22 02:44:35,349.349 INFO    ] 200
[2026-06-22 02:44:35,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:44:35,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:44:35,413.413 INFO    ] No update needed
[2026-06-22 02:44:35,415.415 INFO    ] Checking for camera pi updates...
[2026-06-22 02:44:35,453.453 INFO    ] 200
[2026-06-22 02:44:35,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:44:35,501.501 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:44:35,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:44:35,590.590 INFO    ] No camera update needed
[2026-06-22 02:44:35,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:44:35,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:44:35,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:44:35,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:44:37,647.647 INFO    ] ================================================
[2026-06-22 02:44:37,664.664 INFO    ] Launching Daemon at Mon Jun 22 02:44:37 IST 2026
[2026-06-22 02:44:37,675.675 INFO    ] ================================================
[2026-06-22 02:44:38,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:44:38
[2026-06-22 02:44:38,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:44:39,031.031 INFO    ] Initializing speech engine...
[2026-06-22 02:44:39,040.040 INFO    ] 2026-06-22 02:44:39
[2026-06-22 02:44:39,302.302 INFO    ] 2026-06-22 02:44:39
[2026-06-22 02:44:39,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:44:39,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:44:39,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:44:39,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:44:39,776.776 INFO    ] time= 22/06/2026 02:44:39
[2026-06-22 02:44:39,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:44:39,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:44:39,926.926 INFO    ] No existing commands found in stream
[2026-06-22 02:44:44,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:44:44,936.936 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-22 02:44:46,579.579 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:44:46,582.582 INFO    ] Checking for system updates...
[2026-06-22 02:44:46,621.621 INFO    ] 200
[2026-06-22 02:44:46,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:44:46,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:44:46,680.680 INFO    ] No update needed
[2026-06-22 02:44:46,682.682 INFO    ] Checking for camera pi updates...
[2026-06-22 02:44:46,724.724 INFO    ] 200
[2026-06-22 02:44:46,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:44:46,769.769 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:44:46,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:44:46,871.871 INFO    ] No camera update needed
[2026-06-22 02:44:46,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:44:46,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:44:46,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:44:46,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:44:48,927.927 INFO    ] ================================================
[2026-06-22 02:44:48,942.942 INFO    ] Launching Daemon at Mon Jun 22 02:44:48 IST 2026
[2026-06-22 02:44:48,954.954 INFO    ] ================================================
[2026-06-22 02:44:49,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:44:49
[2026-06-22 02:44:50,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:44:50,366.366 INFO    ] Initializing speech engine...
[2026-06-22 02:44:50,373.373 INFO    ] 2026-06-22 02:44:50
[2026-06-22 02:44:50,648.648 INFO    ] 2026-06-22 02:44:50
[2026-06-22 02:44:50,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:44:50,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:44:50,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:44:51,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:44:51,026.026 INFO    ] time= 22/06/2026 02:44:51
[2026-06-22 02:44:51,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:44:51,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:44:51,103.103 INFO    ] No existing commands found in stream
[2026-06-22 02:44:56,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:44:56,118.118 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-22 02:44:58,220.220 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:44:58,222.222 INFO    ] Checking for system updates...
[2026-06-22 02:44:58,258.258 INFO    ] 200
[2026-06-22 02:44:58,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:44:58,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:44:58,316.316 INFO    ] No update needed
[2026-06-22 02:44:58,319.319 INFO    ] Checking for camera pi updates...
[2026-06-22 02:44:58,352.352 INFO    ] 200
[2026-06-22 02:44:58,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:44:58,395.395 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:44:58,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:44:58,490.490 INFO    ] No camera update needed
[2026-06-22 02:44:58,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:44:58,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:44:58,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:44:58,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:45:00,548.548 INFO    ] ================================================
[2026-06-22 02:45:00,564.564 INFO    ] Launching Daemon at Mon Jun 22 02:45:00 IST 2026
[2026-06-22 02:45:00,575.575 INFO    ] ================================================
[2026-06-22 02:45:01,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:45:01
[2026-06-22 02:45:02,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:45:02,691.691 INFO    ] Initializing speech engine...
[2026-06-22 02:45:02,700.700 INFO    ] 2026-06-22 02:45:02
[2026-06-22 02:45:03,010.010 INFO    ] 2026-06-22 02:45:02
[2026-06-22 02:45:03,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:45:03,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:45:03,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:45:03,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:45:03,563.563 INFO    ] time= 22/06/2026 02:45:03
[2026-06-22 02:45:03,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:45:03,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:45:03,795.795 INFO    ] No existing commands found in stream
[2026-06-22 02:45:08,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:45:08,829.829 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-22 02:45:09,209.209 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:45:09,212.212 INFO    ] Checking for system updates...
[2026-06-22 02:45:09,253.253 INFO    ] 200
[2026-06-22 02:45:09,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:45:09,315.315 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:45:09,318.318 INFO    ] No update needed
[2026-06-22 02:45:09,321.321 INFO    ] Checking for camera pi updates...
[2026-06-22 02:45:09,378.378 INFO    ] 200
[2026-06-22 02:45:09,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:45:09,428.428 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:45:09,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:45:09,613.613 INFO    ] No camera update needed
[2026-06-22 02:45:09,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:45:09,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:45:09,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:45:09,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:45:11,673.673 INFO    ] ================================================
[2026-06-22 02:45:11,689.689 INFO    ] Launching Daemon at Mon Jun 22 02:45:11 IST 2026
[2026-06-22 02:45:11,700.700 INFO    ] ================================================
[2026-06-22 02:45:12,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:45:12
[2026-06-22 02:45:12,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:45:13,053.053 INFO    ] Initializing speech engine...
[2026-06-22 02:45:13,064.064 INFO    ] 2026-06-22 02:45:13
[2026-06-22 02:45:13,313.313 INFO    ] 2026-06-22 02:45:13
[2026-06-22 02:45:13,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:45:13,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:45:13,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:45:13,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:45:13,691.691 INFO    ] time= 22/06/2026 02:45:13
[2026-06-22 02:45:13,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:45:13,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:45:13,859.859 INFO    ] No existing commands found in stream
[2026-06-22 02:45:18,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:45:18,887.887 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-22 02:45:22,469.469 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:45:22,472.472 INFO    ] Checking for system updates...
[2026-06-22 02:45:22,507.507 INFO    ] 200
[2026-06-22 02:45:22,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:45:22,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:45:22,565.565 INFO    ] No update needed
[2026-06-22 02:45:22,567.567 INFO    ] Checking for camera pi updates...
[2026-06-22 02:45:22,600.600 INFO    ] 200
[2026-06-22 02:45:22,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:45:22,647.647 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:45:22,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:45:22,729.729 INFO    ] No camera update needed
[2026-06-22 02:45:22,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:45:22,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:45:22,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:45:22,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:45:24,787.787 INFO    ] ================================================
[2026-06-22 02:45:24,802.802 INFO    ] Launching Daemon at Mon Jun 22 02:45:24 IST 2026
[2026-06-22 02:45:24,813.813 INFO    ] ================================================
[2026-06-22 02:45:25,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:45:25
[2026-06-22 02:45:25,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:45:26,217.217 INFO    ] Initializing speech engine...
[2026-06-22 02:45:26,242.242 INFO    ] 2026-06-22 02:45:26
[2026-06-22 02:45:26,498.498 INFO    ] 2026-06-22 02:45:26
[2026-06-22 02:45:26,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:45:26,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:45:26,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:45:26,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:45:26,974.974 INFO    ] time= 22/06/2026 02:45:26
[2026-06-22 02:45:27,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:45:27,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:45:27,129.129 INFO    ] No existing commands found in stream
[2026-06-22 02:45:32,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:45:32,156.156 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-22 02:45:35,024.024 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:45:35,027.027 INFO    ] Checking for system updates...
[2026-06-22 02:45:35,063.063 INFO    ] 200
[2026-06-22 02:45:35,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:45:35,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:45:35,127.127 INFO    ] No update needed
[2026-06-22 02:45:35,129.129 INFO    ] Checking for camera pi updates...
[2026-06-22 02:45:35,164.164 INFO    ] 200
[2026-06-22 02:45:35,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:45:35,212.212 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:45:35,298.298 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:45:35,301.301 INFO    ] No camera update needed
[2026-06-22 02:45:35,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:45:35,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:45:35,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:45:35,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:45:37,361.361 INFO    ] ================================================
[2026-06-22 02:45:37,377.377 INFO    ] Launching Daemon at Mon Jun 22 02:45:37 IST 2026
[2026-06-22 02:45:37,388.388 INFO    ] ================================================
[2026-06-22 02:45:37,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:45:37
[2026-06-22 02:45:38,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:45:38,730.730 INFO    ] Initializing speech engine...
[2026-06-22 02:45:38,756.756 INFO    ] 2026-06-22 02:45:38
[2026-06-22 02:45:39,009.009 INFO    ] 2026-06-22 02:45:39
[2026-06-22 02:45:39,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:45:39,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:45:39,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:45:39,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:45:39,377.377 INFO    ] time= 22/06/2026 02:45:39
[2026-06-22 02:45:39,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:45:39,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:45:39,559.559 INFO    ] No existing commands found in stream
[2026-06-22 02:45:44,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:45:44,587.587 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-22 02:45:45,046.046 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:45:45,047.047 INFO    ] Checking for system updates...
[2026-06-22 02:45:45,068.068 INFO    ] 200
[2026-06-22 02:45:45,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:45:45,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:45:45,102.102 INFO    ] No update needed
[2026-06-22 02:45:45,103.103 INFO    ] Checking for camera pi updates...
[2026-06-22 02:45:45,123.123 INFO    ] 200
[2026-06-22 02:45:45,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:45:45,154.154 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:45:45,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:45:45,247.247 INFO    ] No camera update needed
[2026-06-22 02:45:45,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:45:45,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:45:45,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:45:45,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:45:47,303.303 INFO    ] ================================================
[2026-06-22 02:45:47,318.318 INFO    ] Launching Daemon at Mon Jun 22 02:45:47 IST 2026
[2026-06-22 02:45:47,329.329 INFO    ] ================================================
[2026-06-22 02:45:47,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:45:47
[2026-06-22 02:45:48,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:45:48,651.651 INFO    ] Initializing speech engine...
[2026-06-22 02:45:48,666.666 INFO    ] 2026-06-22 02:45:48
[2026-06-22 02:45:48,932.932 INFO    ] 2026-06-22 02:45:48
[2026-06-22 02:45:48,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:45:49,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:45:49,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:45:49,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:45:49,360.360 INFO    ] time= 22/06/2026 02:45:49
[2026-06-22 02:45:49,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:45:49,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:45:49,512.512 INFO    ] No existing commands found in stream
[2026-06-22 02:45:54,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:45:54,527.527 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-22 02:45:56,223.223 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:45:56,226.226 INFO    ] Checking for system updates...
[2026-06-22 02:45:56,262.262 INFO    ] 200
[2026-06-22 02:45:56,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:45:56,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:45:56,319.319 INFO    ] No update needed
[2026-06-22 02:45:56,322.322 INFO    ] Checking for camera pi updates...
[2026-06-22 02:45:56,356.356 INFO    ] 200
[2026-06-22 02:45:56,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:45:56,399.399 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:45:56,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:45:56,483.483 INFO    ] No camera update needed
[2026-06-22 02:45:56,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:45:56,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:45:56,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:45:56,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:45:58,540.540 INFO    ] ================================================
[2026-06-22 02:45:58,556.556 INFO    ] Launching Daemon at Mon Jun 22 02:45:58 IST 2026
[2026-06-22 02:45:58,567.567 INFO    ] ================================================
[2026-06-22 02:45:59,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:45:59
[2026-06-22 02:45:59,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:46:00,021.021 INFO    ] Initializing speech engine...
[2026-06-22 02:46:00,030.030 INFO    ] 2026-06-22 02:46:00
[2026-06-22 02:46:00,288.288 INFO    ] 2026-06-22 02:46:00
[2026-06-22 02:46:00,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:46:00,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:46:00,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:46:00,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:46:00,749.749 INFO    ] time= 22/06/2026 02:46:00
[2026-06-22 02:46:00,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:46:00,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:46:00,897.897 INFO    ] No existing commands found in stream
[2026-06-22 02:46:05,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:46:05,912.912 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-22 02:46:08,372.372 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:46:08,373.373 INFO    ] Checking for system updates...
[2026-06-22 02:46:08,395.395 INFO    ] 200
[2026-06-22 02:46:08,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:46:08,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:46:08,428.428 INFO    ] No update needed
[2026-06-22 02:46:08,430.430 INFO    ] Checking for camera pi updates...
[2026-06-22 02:46:08,449.449 INFO    ] 200
[2026-06-22 02:46:08,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:46:08,492.492 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:46:08,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:46:08,581.581 INFO    ] No camera update needed
[2026-06-22 02:46:08,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:46:08,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:46:08,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:46:08,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:46:10,638.638 INFO    ] ================================================
[2026-06-22 02:46:10,653.653 INFO    ] Launching Daemon at Mon Jun 22 02:46:10 IST 2026
[2026-06-22 02:46:10,664.664 INFO    ] ================================================
[2026-06-22 02:46:11,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:46:11
[2026-06-22 02:46:12,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:46:12,312.312 INFO    ] Initializing speech engine...
[2026-06-22 02:46:12,324.324 INFO    ] 2026-06-22 02:46:12
[2026-06-22 02:46:12,634.634 INFO    ] 2026-06-22 02:46:12
[2026-06-22 02:46:12,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:46:12,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:46:12,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:46:13,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:46:13,074.074 INFO    ] time= 22/06/2026 02:46:13
[2026-06-22 02:46:13,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:46:13,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:46:13,274.274 INFO    ] No existing commands found in stream
[2026-06-22 02:46:18,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:46:18,305.305 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-22 02:46:21,070.070 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:46:21,073.073 INFO    ] Checking for system updates...
[2026-06-22 02:46:21,114.114 INFO    ] 200
[2026-06-22 02:46:21,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:46:21,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:46:21,175.175 INFO    ] No update needed
[2026-06-22 02:46:21,177.177 INFO    ] Checking for camera pi updates...
[2026-06-22 02:46:21,213.213 INFO    ] 200
[2026-06-22 02:46:21,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:46:21,257.257 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:46:21,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:46:21,395.395 INFO    ] No camera update needed
[2026-06-22 02:46:21,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:46:21,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:46:21,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:46:21,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:46:23,446.446 INFO    ] ================================================
[2026-06-22 02:46:23,461.461 INFO    ] Launching Daemon at Mon Jun 22 02:46:23 IST 2026
[2026-06-22 02:46:23,473.473 INFO    ] ================================================
[2026-06-22 02:46:24,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:46:24
[2026-06-22 02:46:24,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:46:24,793.793 INFO    ] Initializing speech engine...
[2026-06-22 02:46:24,797.797 INFO    ] 2026-06-22 02:46:24
[2026-06-22 02:46:25,066.066 INFO    ] 2026-06-22 02:46:25
[2026-06-22 02:46:25,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:46:25,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:46:25,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:46:25,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:46:25,439.439 INFO    ] time= 22/06/2026 02:46:25
[2026-06-22 02:46:25,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:46:25,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:46:25,564.564 INFO    ] No existing commands found in stream
[2026-06-22 02:46:30,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:46:30,578.578 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-22 02:46:31,677.677 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:46:31,680.680 INFO    ] Checking for system updates...
[2026-06-22 02:46:31,720.720 INFO    ] 200
[2026-06-22 02:46:31,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:46:31,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:46:31,796.796 INFO    ] No update needed
[2026-06-22 02:46:31,800.800 INFO    ] Checking for camera pi updates...
[2026-06-22 02:46:31,840.840 INFO    ] 200
[2026-06-22 02:46:31,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:46:31,888.888 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:46:31,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:46:31,969.969 INFO    ] No camera update needed
[2026-06-22 02:46:31,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:46:31,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:46:31,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:46:31,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:46:34,030.030 INFO    ] ================================================
[2026-06-22 02:46:34,046.046 INFO    ] Launching Daemon at Mon Jun 22 02:46:34 IST 2026
[2026-06-22 02:46:34,057.057 INFO    ] ================================================
[2026-06-22 02:46:34,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:46:34
[2026-06-22 02:46:35,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:46:35,469.469 INFO    ] Initializing speech engine...
[2026-06-22 02:46:35,474.474 INFO    ] 2026-06-22 02:46:35
[2026-06-22 02:46:35,764.764 INFO    ] 2026-06-22 02:46:35
[2026-06-22 02:46:35,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:46:35,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:46:36,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:46:36,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:46:36,151.151 INFO    ] time= 22/06/2026 02:46:36
[2026-06-22 02:46:36,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:46:36,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:46:36,264.264 INFO    ] No existing commands found in stream
[2026-06-22 02:46:41,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:46:41,279.279 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-22 02:46:41,872.872 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:46:41,873.873 INFO    ] Checking for system updates...
[2026-06-22 02:46:41,893.893 INFO    ] 200
[2026-06-22 02:46:41,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:46:41,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:46:41,927.927 INFO    ] No update needed
[2026-06-22 02:46:41,928.928 INFO    ] Checking for camera pi updates...
[2026-06-22 02:46:41,949.949 INFO    ] 200
[2026-06-22 02:46:41,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:46:41,996.996 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:46:42,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:46:42,110.110 INFO    ] No camera update needed
[2026-06-22 02:46:42,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:46:42,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:46:42,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:46:42,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:46:44,168.168 INFO    ] ================================================
[2026-06-22 02:46:44,184.184 INFO    ] Launching Daemon at Mon Jun 22 02:46:44 IST 2026
[2026-06-22 02:46:44,197.197 INFO    ] ================================================
[2026-06-22 02:46:44,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:46:44
[2026-06-22 02:46:45,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:46:45,661.661 INFO    ] Initializing speech engine...
[2026-06-22 02:46:45,672.672 INFO    ] 2026-06-22 02:46:45
[2026-06-22 02:46:45,957.957 INFO    ] 2026-06-22 02:46:45
[2026-06-22 02:46:46,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:46:46,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:46:46,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:46:46,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:46:46,443.443 INFO    ] time= 22/06/2026 02:46:46
[2026-06-22 02:46:46,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:46:46,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:46:46,588.588 INFO    ] No existing commands found in stream
[2026-06-22 02:46:51,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:46:51,603.603 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-22 02:46:51,996.996 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:46:51,999.999 INFO    ] Checking for system updates...
[2026-06-22 02:46:52,035.035 INFO    ] 200
[2026-06-22 02:46:52,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:46:52,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:46:52,097.097 INFO    ] No update needed
[2026-06-22 02:46:52,099.099 INFO    ] Checking for camera pi updates...
[2026-06-22 02:46:52,133.133 INFO    ] 200
[2026-06-22 02:46:52,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:46:52,177.177 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:46:52,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:46:52,274.274 INFO    ] No camera update needed
[2026-06-22 02:46:52,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:46:52,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:46:52,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:46:52,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:46:54,330.330 INFO    ] ================================================
[2026-06-22 02:46:54,346.346 INFO    ] Launching Daemon at Mon Jun 22 02:46:54 IST 2026
[2026-06-22 02:46:54,356.356 INFO    ] ================================================
[2026-06-22 02:46:55,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:46:55
[2026-06-22 02:46:55,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:46:55,908.908 INFO    ] Initializing speech engine...
[2026-06-22 02:46:55,920.920 INFO    ] 2026-06-22 02:46:55
[2026-06-22 02:46:56,200.200 INFO    ] 2026-06-22 02:46:56
[2026-06-22 02:46:56,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:46:56,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:46:56,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:46:56,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:46:56,735.735 INFO    ] time= 22/06/2026 02:46:56
[2026-06-22 02:46:56,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:46:56,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:46:56,887.887 INFO    ] No existing commands found in stream
[2026-06-22 02:47:01,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:47:01,909.909 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-22 02:47:04,866.866 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:47:04,870.870 INFO    ] Checking for system updates...
[2026-06-22 02:47:04,924.924 INFO    ] 200
[2026-06-22 02:47:04,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:47:04,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:47:04,984.984 INFO    ] No update needed
[2026-06-22 02:47:04,987.987 INFO    ] Checking for camera pi updates...
[2026-06-22 02:47:05,026.026 INFO    ] 200
[2026-06-22 02:47:05,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:47:05,078.078 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:47:05,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:47:05,165.165 INFO    ] No camera update needed
[2026-06-22 02:47:05,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:47:05,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:47:05,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:47:05,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:47:07,220.220 INFO    ] ================================================
[2026-06-22 02:47:07,236.236 INFO    ] Launching Daemon at Mon Jun 22 02:47:07 IST 2026
[2026-06-22 02:47:07,247.247 INFO    ] ================================================
[2026-06-22 02:47:07,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:47:07
[2026-06-22 02:47:08,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:47:08,794.794 INFO    ] Initializing speech engine...
[2026-06-22 02:47:08,802.802 INFO    ] 2026-06-22 02:47:08
[2026-06-22 02:47:09,095.095 INFO    ] 2026-06-22 02:47:09
[2026-06-22 02:47:09,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:47:09,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:47:09,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:47:09,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:47:09,589.589 INFO    ] time= 22/06/2026 02:47:09
[2026-06-22 02:47:09,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:47:09,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:47:09,779.779 INFO    ] No existing commands found in stream
[2026-06-22 02:47:14,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:47:14,804.804 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-22 02:47:16,177.177 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:47:16,180.180 INFO    ] Checking for system updates...
[2026-06-22 02:47:16,221.221 INFO    ] 200
[2026-06-22 02:47:16,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:47:16,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:47:16,287.287 INFO    ] No update needed
[2026-06-22 02:47:16,290.290 INFO    ] Checking for camera pi updates...
[2026-06-22 02:47:16,325.325 INFO    ] 200
[2026-06-22 02:47:16,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:47:16,369.369 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:47:16,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:47:16,553.553 INFO    ] No camera update needed
[2026-06-22 02:47:16,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:47:16,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:47:16,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:47:16,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:47:18,613.613 INFO    ] ================================================
[2026-06-22 02:47:18,629.629 INFO    ] Launching Daemon at Mon Jun 22 02:47:18 IST 2026
[2026-06-22 02:47:18,641.641 INFO    ] ================================================
[2026-06-22 02:47:19,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:47:19
[2026-06-22 02:47:19,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:47:19,973.973 INFO    ] Initializing speech engine...
[2026-06-22 02:47:19,989.989 INFO    ] 2026-06-22 02:47:19
[2026-06-22 02:47:20,262.262 INFO    ] 2026-06-22 02:47:20
[2026-06-22 02:47:20,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:47:20,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:47:20,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:47:20,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:47:20,673.673 INFO    ] time= 22/06/2026 02:47:20
[2026-06-22 02:47:20,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:47:20,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:47:20,763.763 INFO    ] No existing commands found in stream
[2026-06-22 02:47:25,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:47:25,784.784 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-22 02:47:28,203.203 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:47:28,204.204 INFO    ] Checking for system updates...
[2026-06-22 02:47:28,225.225 INFO    ] 200
[2026-06-22 02:47:28,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:47:28,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:47:28,263.263 INFO    ] No update needed
[2026-06-22 02:47:28,266.266 INFO    ] Checking for camera pi updates...
[2026-06-22 02:47:28,299.299 INFO    ] 200
[2026-06-22 02:47:28,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:47:28,343.343 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:47:28,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:47:28,442.442 INFO    ] No camera update needed
[2026-06-22 02:47:28,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:47:28,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:47:28,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:47:28,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:47:30,499.499 INFO    ] ================================================
[2026-06-22 02:47:30,516.516 INFO    ] Launching Daemon at Mon Jun 22 02:47:30 IST 2026
[2026-06-22 02:47:30,527.527 INFO    ] ================================================
[2026-06-22 02:47:31,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:47:31
[2026-06-22 02:47:31,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:47:32,002.002 INFO    ] Initializing speech engine...
[2026-06-22 02:47:32,018.018 INFO    ] 2026-06-22 02:47:32
[2026-06-22 02:47:32,288.288 INFO    ] 2026-06-22 02:47:32
[2026-06-22 02:47:32,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:47:32,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:47:32,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:47:32,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:47:32,760.760 INFO    ] time= 22/06/2026 02:47:32
[2026-06-22 02:47:32,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:47:32,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:47:32,948.948 INFO    ] No existing commands found in stream
[2026-06-22 02:47:37,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:47:37,964.964 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-22 02:47:38,400.400 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:47:38,401.401 INFO    ] Checking for system updates...
[2026-06-22 02:47:38,422.422 INFO    ] 200
[2026-06-22 02:47:38,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:47:38,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:47:38,463.463 INFO    ] No update needed
[2026-06-22 02:47:38,466.466 INFO    ] Checking for camera pi updates...
[2026-06-22 02:47:38,504.504 INFO    ] 200
[2026-06-22 02:47:38,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:47:38,553.553 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:47:38,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:47:38,654.654 INFO    ] No camera update needed
[2026-06-22 02:47:38,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:47:38,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:47:38,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:47:38,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:47:40,714.714 INFO    ] ================================================
[2026-06-22 02:47:40,730.730 INFO    ] Launching Daemon at Mon Jun 22 02:47:40 IST 2026
[2026-06-22 02:47:40,741.741 INFO    ] ================================================
[2026-06-22 02:47:41,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:47:41
[2026-06-22 02:47:41,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:47:42,222.222 INFO    ] Initializing speech engine...
[2026-06-22 02:47:42,230.230 INFO    ] 2026-06-22 02:47:42
[2026-06-22 02:47:42,547.547 INFO    ] 2026-06-22 02:47:42
[2026-06-22 02:47:42,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:47:42,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:47:42,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:47:42,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:47:42,996.996 INFO    ] time= 22/06/2026 02:47:42
[2026-06-22 02:47:43,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:47:43,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:47:43,195.195 INFO    ] No existing commands found in stream
[2026-06-22 02:47:48,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:47:48,224.224 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-22 02:47:52,560.560 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:47:52,562.562 INFO    ] Checking for system updates...
[2026-06-22 02:47:52,595.595 INFO    ] 200
[2026-06-22 02:47:52,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:47:52,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:47:52,654.654 INFO    ] No update needed
[2026-06-22 02:47:52,656.656 INFO    ] Checking for camera pi updates...
[2026-06-22 02:47:52,690.690 INFO    ] 200
[2026-06-22 02:47:52,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:47:52,736.736 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:47:52,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:47:52,825.825 INFO    ] No camera update needed
[2026-06-22 02:47:52,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:47:52,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:47:52,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:47:52,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:47:54,880.880 INFO    ] ================================================
[2026-06-22 02:47:54,895.895 INFO    ] Launching Daemon at Mon Jun 22 02:47:54 IST 2026
[2026-06-22 02:47:54,906.906 INFO    ] ================================================
[2026-06-22 02:47:55,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:47:55
[2026-06-22 02:47:56,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:47:56,368.368 INFO    ] Initializing speech engine...
[2026-06-22 02:47:56,374.374 INFO    ] 2026-06-22 02:47:56
[2026-06-22 02:47:56,668.668 INFO    ] 2026-06-22 02:47:56
[2026-06-22 02:47:56,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:47:56,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:47:56,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:47:57,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:47:57,048.048 INFO    ] time= 22/06/2026 02:47:57
[2026-06-22 02:47:57,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:47:57,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:47:57,171.171 INFO    ] No existing commands found in stream
[2026-06-22 02:48:02,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:48:02,186.186 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-22 02:48:03,135.135 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:48:03,138.138 INFO    ] Checking for system updates...
[2026-06-22 02:48:03,174.174 INFO    ] 200
[2026-06-22 02:48:03,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:48:03,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:48:03,233.233 INFO    ] No update needed
[2026-06-22 02:48:03,236.236 INFO    ] Checking for camera pi updates...
[2026-06-22 02:48:03,270.270 INFO    ] 200
[2026-06-22 02:48:03,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:48:03,313.313 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:48:03,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:48:03,398.398 INFO    ] No camera update needed
[2026-06-22 02:48:03,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:48:03,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:48:03,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:48:03,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:48:05,454.454 INFO    ] ================================================
[2026-06-22 02:48:05,470.470 INFO    ] Launching Daemon at Mon Jun 22 02:48:05 IST 2026
[2026-06-22 02:48:05,481.481 INFO    ] ================================================
[2026-06-22 02:48:06,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:48:06
[2026-06-22 02:48:06,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:48:06,932.932 INFO    ] Initializing speech engine...
[2026-06-22 02:48:06,941.941 INFO    ] 2026-06-22 02:48:06
[2026-06-22 02:48:07,191.191 INFO    ] 2026-06-22 02:48:07
[2026-06-22 02:48:07,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:48:07,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:48:07,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:48:07,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:48:07,636.636 INFO    ] time= 22/06/2026 02:48:07
[2026-06-22 02:48:07,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:48:07,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:48:07,810.810 INFO    ] No existing commands found in stream
[2026-06-22 02:48:12,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:48:12,830.830 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-22 02:48:14,317.317 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:48:14,320.320 INFO    ] Checking for system updates...
[2026-06-22 02:48:14,360.360 INFO    ] 200
[2026-06-22 02:48:14,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:48:14,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:48:14,421.421 INFO    ] No update needed
[2026-06-22 02:48:14,424.424 INFO    ] Checking for camera pi updates...
[2026-06-22 02:48:14,459.459 INFO    ] 200
[2026-06-22 02:48:14,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:48:14,505.505 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:48:14,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:48:14,592.592 INFO    ] No camera update needed
[2026-06-22 02:48:14,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:48:14,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:48:14,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:48:14,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:48:16,650.650 INFO    ] ================================================
[2026-06-22 02:48:16,666.666 INFO    ] Launching Daemon at Mon Jun 22 02:48:16 IST 2026
[2026-06-22 02:48:16,677.677 INFO    ] ================================================
[2026-06-22 02:48:17,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:48:17
[2026-06-22 02:48:17,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:48:17,996.996 INFO    ] Initializing speech engine...
[2026-06-22 02:48:18,006.006 INFO    ] 2026-06-22 02:48:17
[2026-06-22 02:48:18,298.298 INFO    ] 2026-06-22 02:48:18
[2026-06-22 02:48:18,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:48:18,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:48:18,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:48:18,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:48:18,674.674 INFO    ] time= 22/06/2026 02:48:18
[2026-06-22 02:48:18,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:48:18,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:48:18,797.797 INFO    ] No existing commands found in stream
[2026-06-22 02:48:23,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:48:23,811.811 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-22 02:48:26,205.205 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:48:26,206.206 INFO    ] Checking for system updates...
[2026-06-22 02:48:26,227.227 INFO    ] 200
[2026-06-22 02:48:26,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:48:26,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:48:26,261.261 INFO    ] No update needed
[2026-06-22 02:48:26,263.263 INFO    ] Checking for camera pi updates...
[2026-06-22 02:48:26,291.291 INFO    ] 200
[2026-06-22 02:48:26,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:48:26,333.333 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:48:26,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:48:26,391.391 INFO    ] No camera update needed
[2026-06-22 02:48:26,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:48:26,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:48:26,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:48:26,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:48:28,447.447 INFO    ] ================================================
[2026-06-22 02:48:28,463.463 INFO    ] Launching Daemon at Mon Jun 22 02:48:28 IST 2026
[2026-06-22 02:48:28,477.477 INFO    ] ================================================
[2026-06-22 02:48:29,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:48:29
[2026-06-22 02:48:29,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:48:29,883.883 INFO    ] Initializing speech engine...
[2026-06-22 02:48:29,902.902 INFO    ] 2026-06-22 02:48:29
[2026-06-22 02:48:30,161.161 INFO    ] 2026-06-22 02:48:30
[2026-06-22 02:48:30,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:48:30,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:48:30,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:48:30,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:48:30,499.499 INFO    ] time= 22/06/2026 02:48:30
[2026-06-22 02:48:30,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:48:30,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:48:30,612.612 INFO    ] No existing commands found in stream
[2026-06-22 02:48:35,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:48:35,633.633 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-22 02:48:39,431.431 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:48:39,433.433 INFO    ] Checking for system updates...
[2026-06-22 02:48:39,469.469 INFO    ] 200
[2026-06-22 02:48:39,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:48:39,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:48:39,533.533 INFO    ] No update needed
[2026-06-22 02:48:39,536.536 INFO    ] Checking for camera pi updates...
[2026-06-22 02:48:39,569.569 INFO    ] 200
[2026-06-22 02:48:39,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:48:39,613.613 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:48:39,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:48:39,703.703 INFO    ] No camera update needed
[2026-06-22 02:48:39,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:48:39,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:48:39,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:48:39,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:48:41,758.758 INFO    ] ================================================
[2026-06-22 02:48:41,773.773 INFO    ] Launching Daemon at Mon Jun 22 02:48:41 IST 2026
[2026-06-22 02:48:41,784.784 INFO    ] ================================================
[2026-06-22 02:48:42,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:48:42
[2026-06-22 02:48:42,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:48:43,147.147 INFO    ] Initializing speech engine...
[2026-06-22 02:48:43,163.163 INFO    ] 2026-06-22 02:48:43
[2026-06-22 02:48:43,478.478 INFO    ] 2026-06-22 02:48:43
[2026-06-22 02:48:43,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:48:43,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:48:43,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:48:43,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:48:43,863.863 INFO    ] time= 22/06/2026 02:48:43
[2026-06-22 02:48:43,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:48:43,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:48:43,947.947 INFO    ] No existing commands found in stream
[2026-06-22 02:48:48,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:48:48,962.962 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-22 02:48:52,928.928 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:48:52,929.929 INFO    ] Checking for system updates...
[2026-06-22 02:48:52,950.950 INFO    ] 200
[2026-06-22 02:48:52,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:48:52,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:48:52,983.983 INFO    ] No update needed
[2026-06-22 02:48:52,984.984 INFO    ] Checking for camera pi updates...
[2026-06-22 02:48:53,004.004 INFO    ] 200
[2026-06-22 02:48:53,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:48:53,050.050 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:48:53,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:48:53,155.155 INFO    ] No camera update needed
[2026-06-22 02:48:53,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:48:53,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:48:53,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:48:53,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:48:55,211.211 INFO    ] ================================================
[2026-06-22 02:48:55,226.226 INFO    ] Launching Daemon at Mon Jun 22 02:48:55 IST 2026
[2026-06-22 02:48:55,236.236 INFO    ] ================================================
[2026-06-22 02:48:55,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:48:55
[2026-06-22 02:48:56,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:48:56,570.570 INFO    ] Initializing speech engine...
[2026-06-22 02:48:56,579.579 INFO    ] 2026-06-22 02:48:56
[2026-06-22 02:48:56,870.870 INFO    ] 2026-06-22 02:48:56
[2026-06-22 02:48:56,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:48:57,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:48:57,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:48:57,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:48:57,288.288 INFO    ] time= 22/06/2026 02:48:57
[2026-06-22 02:48:57,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:48:57,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:48:57,374.374 INFO    ] No existing commands found in stream
[2026-06-22 02:49:02,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:49:02,390.390 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-22 02:49:04,939.939 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:49:04,941.941 INFO    ] Checking for system updates...
[2026-06-22 02:49:04,983.983 INFO    ] 200
[2026-06-22 02:49:04,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:49:05,048.048 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:49:05,051.051 INFO    ] No update needed
[2026-06-22 02:49:05,054.054 INFO    ] Checking for camera pi updates...
[2026-06-22 02:49:05,093.093 INFO    ] 200
[2026-06-22 02:49:05,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:49:05,143.143 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:49:05,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:49:05,234.234 INFO    ] No camera update needed
[2026-06-22 02:49:05,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:49:05,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:49:05,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:49:05,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:49:07,294.294 INFO    ] ================================================
[2026-06-22 02:49:07,309.309 INFO    ] Launching Daemon at Mon Jun 22 02:49:07 IST 2026
[2026-06-22 02:49:07,320.320 INFO    ] ================================================
[2026-06-22 02:49:07,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:49:07
[2026-06-22 02:49:08,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:49:08,685.685 INFO    ] Initializing speech engine...
[2026-06-22 02:49:08,692.692 INFO    ] 2026-06-22 02:49:08
[2026-06-22 02:49:08,955.955 INFO    ] 2026-06-22 02:49:08
[2026-06-22 02:49:08,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:49:09,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:49:09,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:49:09,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:49:09,408.408 INFO    ] time= 22/06/2026 02:49:09
[2026-06-22 02:49:09,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:49:09,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:49:09,555.555 INFO    ] No existing commands found in stream
[2026-06-22 02:49:14,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:49:14,570.570 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-22 02:49:18,443.443 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:49:18,445.445 INFO    ] Checking for system updates...
[2026-06-22 02:49:18,466.466 INFO    ] 200
[2026-06-22 02:49:18,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:49:18,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:49:18,499.499 INFO    ] No update needed
[2026-06-22 02:49:18,500.500 INFO    ] Checking for camera pi updates...
[2026-06-22 02:49:18,519.519 INFO    ] 200
[2026-06-22 02:49:18,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:49:18,553.553 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:49:18,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:49:18,711.711 INFO    ] No camera update needed
[2026-06-22 02:49:18,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:49:18,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:49:18,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:49:18,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:49:20,768.768 INFO    ] ================================================
[2026-06-22 02:49:20,784.784 INFO    ] Launching Daemon at Mon Jun 22 02:49:20 IST 2026
[2026-06-22 02:49:20,795.795 INFO    ] ================================================
[2026-06-22 02:49:21,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:49:21
[2026-06-22 02:49:21,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:49:22,128.128 INFO    ] Initializing speech engine...
[2026-06-22 02:49:22,141.141 INFO    ] 2026-06-22 02:49:22
[2026-06-22 02:49:22,428.428 INFO    ] 2026-06-22 02:49:22
[2026-06-22 02:49:22,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:49:22,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:49:22,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:49:22,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:49:22,814.814 INFO    ] time= 22/06/2026 02:49:22
[2026-06-22 02:49:22,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:49:22,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:49:22,940.940 INFO    ] No existing commands found in stream
[2026-06-22 02:49:27,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:49:27,956.956 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-22 02:49:28,763.763 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:49:28,766.766 INFO    ] Checking for system updates...
[2026-06-22 02:49:28,806.806 INFO    ] 200
[2026-06-22 02:49:28,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:49:28,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:49:28,863.863 INFO    ] No update needed
[2026-06-22 02:49:28,866.866 INFO    ] Checking for camera pi updates...
[2026-06-22 02:49:28,903.903 INFO    ] 200
[2026-06-22 02:49:28,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:49:28,947.947 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:49:29,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:49:29,031.031 INFO    ] No camera update needed
[2026-06-22 02:49:29,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:49:29,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:49:29,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:49:29,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:49:31,087.087 INFO    ] ================================================
[2026-06-22 02:49:31,103.103 INFO    ] Launching Daemon at Mon Jun 22 02:49:31 IST 2026
[2026-06-22 02:49:31,113.113 INFO    ] ================================================
[2026-06-22 02:49:31,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:49:31
[2026-06-22 02:49:32,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:49:32,462.462 INFO    ] Initializing speech engine...
[2026-06-22 02:49:32,478.478 INFO    ] 2026-06-22 02:49:32
[2026-06-22 02:49:32,763.763 INFO    ] 2026-06-22 02:49:32
[2026-06-22 02:49:32,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:49:32,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:49:32,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:49:33,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:49:33,158.158 INFO    ] time= 22/06/2026 02:49:33
[2026-06-22 02:49:33,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:49:33,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:49:33,349.349 INFO    ] No existing commands found in stream
[2026-06-22 02:49:38,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:49:38,392.392 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-22 02:49:41,252.252 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:49:41,255.255 INFO    ] Checking for system updates...
[2026-06-22 02:49:41,293.293 INFO    ] 200
[2026-06-22 02:49:41,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:49:41,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:49:41,352.352 INFO    ] No update needed
[2026-06-22 02:49:41,355.355 INFO    ] Checking for camera pi updates...
[2026-06-22 02:49:41,390.390 INFO    ] 200
[2026-06-22 02:49:41,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:49:41,441.441 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:49:41,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:49:41,529.529 INFO    ] No camera update needed
[2026-06-22 02:49:41,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:49:41,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:49:41,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:49:41,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:49:43,589.589 INFO    ] ================================================
[2026-06-22 02:49:43,604.604 INFO    ] Launching Daemon at Mon Jun 22 02:49:43 IST 2026
[2026-06-22 02:49:43,615.615 INFO    ] ================================================
[2026-06-22 02:49:44,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:49:44
[2026-06-22 02:49:44,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:49:45,174.174 INFO    ] Initializing speech engine...
[2026-06-22 02:49:45,186.186 INFO    ] 2026-06-22 02:49:45
[2026-06-22 02:49:45,496.496 INFO    ] 2026-06-22 02:49:45
[2026-06-22 02:49:45,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:49:45,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:49:45,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:49:45,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:49:46,005.005 INFO    ] time= 22/06/2026 02:49:45
[2026-06-22 02:49:46,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:49:46,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:49:46,137.137 INFO    ] No existing commands found in stream
[2026-06-22 02:49:51,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:49:51,172.172 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-22 02:49:53,687.687 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:49:53,689.689 INFO    ] Checking for system updates...
[2026-06-22 02:49:53,712.712 INFO    ] 200
[2026-06-22 02:49:53,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:49:53,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:49:53,751.751 INFO    ] No update needed
[2026-06-22 02:49:53,753.753 INFO    ] Checking for camera pi updates...
[2026-06-22 02:49:53,788.788 INFO    ] 200
[2026-06-22 02:49:53,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:49:53,833.833 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:49:53,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:49:53,941.941 INFO    ] No camera update needed
[2026-06-22 02:49:53,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:49:53,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:49:53,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:49:53,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:49:56,000.000 INFO    ] ================================================
[2026-06-22 02:49:56,016.016 INFO    ] Launching Daemon at Mon Jun 22 02:49:56 IST 2026
[2026-06-22 02:49:56,027.027 INFO    ] ================================================
[2026-06-22 02:49:56,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:49:56
[2026-06-22 02:49:57,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:49:57,425.425 INFO    ] Initializing speech engine...
[2026-06-22 02:49:57,437.437 INFO    ] 2026-06-22 02:49:57
[2026-06-22 02:49:57,731.731 INFO    ] 2026-06-22 02:49:57
[2026-06-22 02:49:57,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:49:58,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:49:58,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:49:58,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:49:58,275.275 INFO    ] time= 22/06/2026 02:49:58
[2026-06-22 02:49:58,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:49:58,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:49:58,431.431 INFO    ] No existing commands found in stream
[2026-06-22 02:50:03,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:50:03,453.453 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-22 02:50:08,459.459 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:50:08,462.462 INFO    ] Checking for system updates...
[2026-06-22 02:50:08,500.500 INFO    ] 200
[2026-06-22 02:50:08,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:50:08,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:50:08,560.560 INFO    ] No update needed
[2026-06-22 02:50:08,563.563 INFO    ] Checking for camera pi updates...
[2026-06-22 02:50:08,598.598 INFO    ] 200
[2026-06-22 02:50:08,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:50:08,643.643 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:50:08,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:50:08,706.706 INFO    ] No camera update needed
[2026-06-22 02:50:08,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:50:08,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:50:08,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:50:08,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:50:10,766.766 INFO    ] ================================================
[2026-06-22 02:50:10,781.781 INFO    ] Launching Daemon at Mon Jun 22 02:50:10 IST 2026
[2026-06-22 02:50:10,792.792 INFO    ] ================================================
[2026-06-22 02:50:11,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:50:11
[2026-06-22 02:50:12,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:50:12,445.445 INFO    ] Initializing speech engine...
[2026-06-22 02:50:12,458.458 INFO    ] 2026-06-22 02:50:12
[2026-06-22 02:50:12,746.746 INFO    ] 2026-06-22 02:50:12
[2026-06-22 02:50:12,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:50:13,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:50:13,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:50:13,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:50:13,237.237 INFO    ] time= 22/06/2026 02:50:13
[2026-06-22 02:50:13,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:50:13,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:50:13,435.435 INFO    ] No existing commands found in stream
[2026-06-22 02:50:18,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:50:18,470.470 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-22 02:50:19,375.375 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:50:19,378.378 INFO    ] Checking for system updates...
[2026-06-22 02:50:19,421.421 INFO    ] 200
[2026-06-22 02:50:19,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:50:19,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:50:19,485.485 INFO    ] No update needed
[2026-06-22 02:50:19,488.488 INFO    ] Checking for camera pi updates...
[2026-06-22 02:50:19,523.523 INFO    ] 200
[2026-06-22 02:50:19,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:50:19,569.569 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:50:19,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:50:19,657.657 INFO    ] No camera update needed
[2026-06-22 02:50:19,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:50:19,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:50:19,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:50:19,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:50:21,717.717 INFO    ] ================================================
[2026-06-22 02:50:21,733.733 INFO    ] Launching Daemon at Mon Jun 22 02:50:21 IST 2026
[2026-06-22 02:50:21,744.744 INFO    ] ================================================
[2026-06-22 02:50:22,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:50:22
[2026-06-22 02:50:22,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:50:23,062.062 INFO    ] Initializing speech engine...
[2026-06-22 02:50:23,077.077 INFO    ] 2026-06-22 02:50:23
[2026-06-22 02:50:23,347.347 INFO    ] 2026-06-22 02:50:23
[2026-06-22 02:50:23,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:50:23,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:50:23,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:50:23,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:50:23,723.723 INFO    ] time= 22/06/2026 02:50:23
[2026-06-22 02:50:23,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:50:23,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:50:23,799.799 INFO    ] No existing commands found in stream
[2026-06-22 02:50:28,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:50:28,814.814 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-22 02:50:32,463.463 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:50:32,466.466 INFO    ] Checking for system updates...
[2026-06-22 02:50:32,510.510 INFO    ] 200
[2026-06-22 02:50:32,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:50:32,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:50:32,582.582 INFO    ] No update needed
[2026-06-22 02:50:32,585.585 INFO    ] Checking for camera pi updates...
[2026-06-22 02:50:32,630.630 INFO    ] 200
[2026-06-22 02:50:32,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:50:32,688.688 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:50:32,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:50:32,756.756 INFO    ] No camera update needed
[2026-06-22 02:50:32,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:50:32,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:50:32,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:50:32,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:50:34,817.817 INFO    ] ================================================
[2026-06-22 02:50:34,832.832 INFO    ] Launching Daemon at Mon Jun 22 02:50:34 IST 2026
[2026-06-22 02:50:34,843.843 INFO    ] ================================================
[2026-06-22 02:50:35,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:50:35
[2026-06-22 02:50:36,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:50:36,262.262 INFO    ] Initializing speech engine...
[2026-06-22 02:50:36,271.271 INFO    ] 2026-06-22 02:50:36
[2026-06-22 02:50:36,516.516 INFO    ] 2026-06-22 02:50:36
[2026-06-22 02:50:36,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:50:36,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:50:36,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:50:36,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:50:36,832.832 INFO    ] time= 22/06/2026 02:50:36
[2026-06-22 02:50:36,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:50:36,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:50:36,930.930 INFO    ] No existing commands found in stream
[2026-06-22 02:50:41,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:50:41,943.943 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-22 02:50:46,608.608 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:50:46,611.611 INFO    ] Checking for system updates...
[2026-06-22 02:50:46,649.649 INFO    ] 200
[2026-06-22 02:50:46,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:50:46,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:50:46,706.706 INFO    ] No update needed
[2026-06-22 02:50:46,709.709 INFO    ] Checking for camera pi updates...
[2026-06-22 02:50:46,743.743 INFO    ] 200
[2026-06-22 02:50:46,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:50:46,792.792 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:50:46,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:50:46,877.877 INFO    ] No camera update needed
[2026-06-22 02:50:46,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:50:46,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:50:46,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:50:46,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:50:48,933.933 INFO    ] ================================================
[2026-06-22 02:50:48,948.948 INFO    ] Launching Daemon at Mon Jun 22 02:50:48 IST 2026
[2026-06-22 02:50:48,959.959 INFO    ] ================================================
[2026-06-22 02:50:49,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:50:49
[2026-06-22 02:50:50,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:50:50,331.331 INFO    ] Initializing speech engine...
[2026-06-22 02:50:50,338.338 INFO    ] 2026-06-22 02:50:50
[2026-06-22 02:50:50,600.600 INFO    ] 2026-06-22 02:50:50
[2026-06-22 02:50:50,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:50:50,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:50:50,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:50:51,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:50:51,078.078 INFO    ] time= 22/06/2026 02:50:51
[2026-06-22 02:50:51,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:50:51,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:50:51,283.283 INFO    ] No existing commands found in stream
[2026-06-22 02:50:56,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:50:56,313.313 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-22 02:50:58,186.186 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:50:58,188.188 INFO    ] Checking for system updates...
[2026-06-22 02:50:58,209.209 INFO    ] 200
[2026-06-22 02:50:58,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:50:58,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:50:58,279.279 INFO    ] No update needed
[2026-06-22 02:50:58,281.281 INFO    ] Checking for camera pi updates...
[2026-06-22 02:50:58,315.315 INFO    ] 200
[2026-06-22 02:50:58,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:50:58,358.358 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:50:58,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:50:58,449.449 INFO    ] No camera update needed
[2026-06-22 02:50:58,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:50:58,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:50:58,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:50:58,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:51:00,508.508 INFO    ] ================================================
[2026-06-22 02:51:00,523.523 INFO    ] Launching Daemon at Mon Jun 22 02:51:00 IST 2026
[2026-06-22 02:51:00,534.534 INFO    ] ================================================
[2026-06-22 02:51:01,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:51:01
[2026-06-22 02:51:02,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:51:02,530.530 INFO    ] Initializing speech engine...
[2026-06-22 02:51:02,539.539 INFO    ] 2026-06-22 02:51:02
[2026-06-22 02:51:02,821.821 INFO    ] 2026-06-22 02:51:02
[2026-06-22 02:51:02,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:51:03,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:51:03,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:51:03,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:51:03,181.181 INFO    ] time= 22/06/2026 02:51:03
[2026-06-22 02:51:03,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:51:03,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:51:03,266.266 INFO    ] No existing commands found in stream
[2026-06-22 02:51:08,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:51:08,282.282 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-22 02:51:11,547.547 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:51:11,549.549 INFO    ] Checking for system updates...
[2026-06-22 02:51:11,571.571 INFO    ] 200
[2026-06-22 02:51:11,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:51:11,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:51:11,604.604 INFO    ] No update needed
[2026-06-22 02:51:11,605.605 INFO    ] Checking for camera pi updates...
[2026-06-22 02:51:11,628.628 INFO    ] 200
[2026-06-22 02:51:11,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:51:11,672.672 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:51:11,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:51:11,761.761 INFO    ] No camera update needed
[2026-06-22 02:51:11,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:51:11,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:51:11,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:51:11,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:51:13,818.818 INFO    ] ================================================
[2026-06-22 02:51:13,834.834 INFO    ] Launching Daemon at Mon Jun 22 02:51:13 IST 2026
[2026-06-22 02:51:13,845.845 INFO    ] ================================================
[2026-06-22 02:51:14,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:51:14
[2026-06-22 02:51:15,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:51:15,485.485 INFO    ] Initializing speech engine...
[2026-06-22 02:51:15,493.493 INFO    ] 2026-06-22 02:51:15
[2026-06-22 02:51:15,743.743 INFO    ] 2026-06-22 02:51:15
[2026-06-22 02:51:15,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:51:16,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:51:16,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:51:16,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:51:16,275.275 INFO    ] time= 22/06/2026 02:51:16
[2026-06-22 02:51:16,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:51:16,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:51:16,371.371 INFO    ] No existing commands found in stream
[2026-06-22 02:51:21,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:51:21,386.386 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-22 02:51:24,042.042 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:51:24,045.045 INFO    ] Checking for system updates...
[2026-06-22 02:51:24,082.082 INFO    ] 200
[2026-06-22 02:51:24,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:51:24,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:51:24,140.140 INFO    ] No update needed
[2026-06-22 02:51:24,143.143 INFO    ] Checking for camera pi updates...
[2026-06-22 02:51:24,179.179 INFO    ] 200
[2026-06-22 02:51:24,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:51:24,222.222 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:51:24,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:51:24,403.403 INFO    ] No camera update needed
[2026-06-22 02:51:24,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:51:24,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:51:24,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:51:24,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:51:26,460.460 INFO    ] ================================================
[2026-06-22 02:51:26,476.476 INFO    ] Launching Daemon at Mon Jun 22 02:51:26 IST 2026
[2026-06-22 02:51:26,487.487 INFO    ] ================================================
[2026-06-22 02:51:27,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:51:27
[2026-06-22 02:51:27,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:51:28,066.066 INFO    ] Initializing speech engine...
[2026-06-22 02:51:28,077.077 INFO    ] 2026-06-22 02:51:28
[2026-06-22 02:51:28,396.396 INFO    ] 2026-06-22 02:51:28
[2026-06-22 02:51:28,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:51:28,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:51:28,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:51:28,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:51:28,827.827 INFO    ] time= 22/06/2026 02:51:28
[2026-06-22 02:51:28,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:51:28,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:51:28,984.984 INFO    ] No existing commands found in stream
[2026-06-22 02:51:33,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:51:34,001.001 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-22 02:51:36,189.189 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:51:36,192.192 INFO    ] Checking for system updates...
[2026-06-22 02:51:36,230.230 INFO    ] 200
[2026-06-22 02:51:36,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:51:36,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:51:36,313.313 INFO    ] No update needed
[2026-06-22 02:51:36,316.316 INFO    ] Checking for camera pi updates...
[2026-06-22 02:51:36,356.356 INFO    ] 200
[2026-06-22 02:51:36,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:51:36,402.402 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:51:36,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:51:36,510.510 INFO    ] No camera update needed
[2026-06-22 02:51:36,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:51:36,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:51:36,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:51:36,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:51:38,570.570 INFO    ] ================================================
[2026-06-22 02:51:38,586.586 INFO    ] Launching Daemon at Mon Jun 22 02:51:38 IST 2026
[2026-06-22 02:51:38,597.597 INFO    ] ================================================
[2026-06-22 02:51:39,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:51:39
[2026-06-22 02:51:39,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:51:40,020.020 INFO    ] Initializing speech engine...
[2026-06-22 02:51:40,029.029 INFO    ] 2026-06-22 02:51:40
[2026-06-22 02:51:40,330.330 INFO    ] 2026-06-22 02:51:40
[2026-06-22 02:51:40,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:51:40,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:51:40,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:51:40,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:51:40,719.719 INFO    ] time= 22/06/2026 02:51:40
[2026-06-22 02:51:40,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:51:40,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:51:40,848.848 INFO    ] No existing commands found in stream
[2026-06-22 02:51:45,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:51:45,860.860 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-22 02:51:48,577.577 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:51:48,579.579 INFO    ] Checking for system updates...
[2026-06-22 02:51:48,600.600 INFO    ] 200
[2026-06-22 02:51:48,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:51:48,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:51:48,633.633 INFO    ] No update needed
[2026-06-22 02:51:48,635.635 INFO    ] Checking for camera pi updates...
[2026-06-22 02:51:48,655.655 INFO    ] 200
[2026-06-22 02:51:48,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:51:48,699.699 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:51:48,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:51:48,804.804 INFO    ] No camera update needed
[2026-06-22 02:51:48,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:51:48,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:51:48,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:51:48,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:51:50,865.865 INFO    ] ================================================
[2026-06-22 02:51:50,881.881 INFO    ] Launching Daemon at Mon Jun 22 02:51:50 IST 2026
[2026-06-22 02:51:50,892.892 INFO    ] ================================================
[2026-06-22 02:51:51,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:51:51
[2026-06-22 02:51:51,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:51:52,275.275 INFO    ] Initializing speech engine...
[2026-06-22 02:51:52,289.289 INFO    ] 2026-06-22 02:51:52
[2026-06-22 02:51:52,562.562 INFO    ] 2026-06-22 02:51:52
[2026-06-22 02:51:52,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:51:52,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:51:52,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:51:52,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:51:52,971.971 INFO    ] time= 22/06/2026 02:51:52
[2026-06-22 02:51:52,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:51:53,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:51:53,082.082 INFO    ] No existing commands found in stream
[2026-06-22 02:51:58,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:51:58,097.097 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-22 02:51:58,927.927 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:51:58,929.929 INFO    ] Checking for system updates...
[2026-06-22 02:51:58,957.957 INFO    ] 200
[2026-06-22 02:51:58,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:51:59,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:51:59,030.030 INFO    ] No update needed
[2026-06-22 02:51:59,033.033 INFO    ] Checking for camera pi updates...
[2026-06-22 02:51:59,070.070 INFO    ] 200
[2026-06-22 02:51:59,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:51:59,117.117 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:51:59,188.188 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:51:59,191.191 INFO    ] No camera update needed
[2026-06-22 02:51:59,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:51:59,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:51:59,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:51:59,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:52:01,253.253 INFO    ] ================================================
[2026-06-22 02:52:01,268.268 INFO    ] Launching Daemon at Mon Jun 22 02:52:01 IST 2026
[2026-06-22 02:52:01,279.279 INFO    ] ================================================
[2026-06-22 02:52:01,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:52:01
[2026-06-22 02:52:02,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:52:03,036.036 INFO    ] Initializing speech engine...
[2026-06-22 02:52:03,050.050 INFO    ] 2026-06-22 02:52:03
[2026-06-22 02:52:03,342.342 INFO    ] 2026-06-22 02:52:03
[2026-06-22 02:52:03,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:52:03,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:52:03,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:52:03,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:52:03,846.846 INFO    ] time= 22/06/2026 02:52:03
[2026-06-22 02:52:03,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:52:03,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:52:04,016.016 INFO    ] No existing commands found in stream
[2026-06-22 02:52:09,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:52:09,030.030 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-22 02:52:12,645.645 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:52:12,647.647 INFO    ] Checking for system updates...
[2026-06-22 02:52:12,684.684 INFO    ] 200
[2026-06-22 02:52:12,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:52:12,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:52:12,743.743 INFO    ] No update needed
[2026-06-22 02:52:12,745.745 INFO    ] Checking for camera pi updates...
[2026-06-22 02:52:12,779.779 INFO    ] 200
[2026-06-22 02:52:12,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:52:12,827.827 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:52:12,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:52:12,927.927 INFO    ] No camera update needed
[2026-06-22 02:52:12,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:52:12,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:52:12,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:52:12,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:52:14,982.982 INFO    ] ================================================
[2026-06-22 02:52:15,998.998 INFO    ] Launching Daemon at Mon Jun 22 02:52:14 IST 2026
[2026-06-22 02:52:15,008.008 INFO    ] ================================================
[2026-06-22 02:52:15,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:52:15
[2026-06-22 02:52:16,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:52:16,569.569 INFO    ] Initializing speech engine...
[2026-06-22 02:52:16,583.583 INFO    ] 2026-06-22 02:52:16
[2026-06-22 02:52:16,872.872 INFO    ] 2026-06-22 02:52:16
[2026-06-22 02:52:16,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:52:17,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:52:17,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:52:17,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:52:17,404.404 INFO    ] time= 22/06/2026 02:52:17
[2026-06-22 02:52:17,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:52:17,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:52:17,562.562 INFO    ] No existing commands found in stream
[2026-06-22 02:52:22,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:52:22,590.590 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-22 02:52:25,888.888 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:52:25,891.891 INFO    ] Checking for system updates...
[2026-06-22 02:52:25,929.929 INFO    ] 200
[2026-06-22 02:52:25,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:52:25,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:52:25,989.989 INFO    ] No update needed
[2026-06-22 02:52:25,991.991 INFO    ] Checking for camera pi updates...
[2026-06-22 02:52:26,027.027 INFO    ] 200
[2026-06-22 02:52:26,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:52:26,071.071 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:52:26,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:52:26,156.156 INFO    ] No camera update needed
[2026-06-22 02:52:26,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:52:26,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:52:26,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:52:26,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:52:28,215.215 INFO    ] ================================================
[2026-06-22 02:52:28,231.231 INFO    ] Launching Daemon at Mon Jun 22 02:52:28 IST 2026
[2026-06-22 02:52:28,242.242 INFO    ] ================================================
[2026-06-22 02:52:28,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:52:28
[2026-06-22 02:52:29,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:52:29,647.647 INFO    ] Initializing speech engine...
[2026-06-22 02:52:29,662.662 INFO    ] 2026-06-22 02:52:29
[2026-06-22 02:52:29,950.950 INFO    ] 2026-06-22 02:52:29
[2026-06-22 02:52:29,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:52:30,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:52:30,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:52:30,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:52:30,376.376 INFO    ] time= 22/06/2026 02:52:30
[2026-06-22 02:52:30,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:52:30,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:52:30,464.464 INFO    ] No existing commands found in stream
[2026-06-22 02:52:35,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:52:35,479.479 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-22 02:52:36,965.965 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:52:36,967.967 INFO    ] Checking for system updates...
[2026-06-22 02:52:37,003.003 INFO    ] 200
[2026-06-22 02:52:37,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:52:37,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:52:37,062.062 INFO    ] No update needed
[2026-06-22 02:52:37,064.064 INFO    ] Checking for camera pi updates...
[2026-06-22 02:52:37,098.098 INFO    ] 200
[2026-06-22 02:52:37,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:52:37,145.145 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:52:37,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:52:37,237.237 INFO    ] No camera update needed
[2026-06-22 02:52:37,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:52:37,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:52:37,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:52:37,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:52:39,288.288 INFO    ] ================================================
[2026-06-22 02:52:39,304.304 INFO    ] Launching Daemon at Mon Jun 22 02:52:39 IST 2026
[2026-06-22 02:52:39,315.315 INFO    ] ================================================
[2026-06-22 02:52:39,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:52:39
[2026-06-22 02:52:40,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:52:40,668.668 INFO    ] Initializing speech engine...
[2026-06-22 02:52:40,679.679 INFO    ] 2026-06-22 02:52:40
[2026-06-22 02:52:40,927.927 INFO    ] 2026-06-22 02:52:40
[2026-06-22 02:52:40,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:52:41,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:52:41,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:52:41,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:52:41,307.307 INFO    ] time= 22/06/2026 02:52:41
[2026-06-22 02:52:41,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:52:41,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:52:41,462.462 INFO    ] No existing commands found in stream
[2026-06-22 02:52:46,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:52:46,495.495 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-22 02:52:47,519.519 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:52:47,521.521 INFO    ] Checking for system updates...
[2026-06-22 02:52:47,542.542 INFO    ] 200
[2026-06-22 02:52:47,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:52:47,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:52:47,574.574 INFO    ] No update needed
[2026-06-22 02:52:47,576.576 INFO    ] Checking for camera pi updates...
[2026-06-22 02:52:47,612.612 INFO    ] 200
[2026-06-22 02:52:47,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:52:47,654.654 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:52:47,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:52:47,749.749 INFO    ] No camera update needed
[2026-06-22 02:52:47,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:52:47,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:52:47,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:52:47,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:52:49,807.807 INFO    ] ================================================
[2026-06-22 02:52:49,824.824 INFO    ] Launching Daemon at Mon Jun 22 02:52:49 IST 2026
[2026-06-22 02:52:49,836.836 INFO    ] ================================================
[2026-06-22 02:52:50,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:52:50
[2026-06-22 02:52:50,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:52:51,195.195 INFO    ] Initializing speech engine...
[2026-06-22 02:52:51,206.206 INFO    ] 2026-06-22 02:52:51
[2026-06-22 02:52:51,456.456 INFO    ] 2026-06-22 02:52:51
[2026-06-22 02:52:51,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:52:51,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:52:51,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:52:51,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:52:51,837.837 INFO    ] time= 22/06/2026 02:52:51
[2026-06-22 02:52:51,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:52:51,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:52:52,017.017 INFO    ] No existing commands found in stream
[2026-06-22 02:52:57,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:52:57,049.049 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-22 02:52:57,689.689 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:52:57,691.691 INFO    ] Checking for system updates...
[2026-06-22 02:52:57,711.711 INFO    ] 200
[2026-06-22 02:52:57,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:52:57,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:52:57,744.744 INFO    ] No update needed
[2026-06-22 02:52:57,746.746 INFO    ] Checking for camera pi updates...
[2026-06-22 02:52:57,765.765 INFO    ] 200
[2026-06-22 02:52:57,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:52:57,803.803 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:52:57,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:52:57,891.891 INFO    ] No camera update needed
[2026-06-22 02:52:57,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:52:57,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:52:57,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:52:57,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:52:59,950.950 INFO    ] ================================================
[2026-06-22 02:52:59,966.966 INFO    ] Launching Daemon at Mon Jun 22 02:52:59 IST 2026
[2026-06-22 02:52:59,977.977 INFO    ] ================================================
[2026-06-22 02:53:00,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:53:00
[2026-06-22 02:53:01,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:53:01,299.299 INFO    ] Initializing speech engine...
[2026-06-22 02:53:01,308.308 INFO    ] 2026-06-22 02:53:01
[2026-06-22 02:53:01,602.602 INFO    ] 2026-06-22 02:53:01
[2026-06-22 02:53:01,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:53:01,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:53:01,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:53:01,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:53:02,028.028 INFO    ] time= 22/06/2026 02:53:01
[2026-06-22 02:53:02,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:53:02,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:53:02,148.148 INFO    ] No existing commands found in stream
[2026-06-22 02:53:07,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:53:07,161.161 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-22 02:53:08,521.521 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:53:08,524.524 INFO    ] Checking for system updates...
[2026-06-22 02:53:08,559.559 INFO    ] 200
[2026-06-22 02:53:08,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:53:08,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:53:08,617.617 INFO    ] No update needed
[2026-06-22 02:53:08,620.620 INFO    ] Checking for camera pi updates...
[2026-06-22 02:53:08,654.654 INFO    ] 200
[2026-06-22 02:53:08,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:53:08,698.698 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:53:08,789.789 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:53:08,792.792 INFO    ] No camera update needed
[2026-06-22 02:53:08,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:53:08,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:53:08,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:53:08,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:53:10,849.849 INFO    ] ================================================
[2026-06-22 02:53:10,865.865 INFO    ] Launching Daemon at Mon Jun 22 02:53:10 IST 2026
[2026-06-22 02:53:10,876.876 INFO    ] ================================================
[2026-06-22 02:53:11,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:53:11
[2026-06-22 02:53:12,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:53:12,432.432 INFO    ] Initializing speech engine...
[2026-06-22 02:53:12,441.441 INFO    ] 2026-06-22 02:53:12
[2026-06-22 02:53:12,761.761 INFO    ] 2026-06-22 02:53:12
[2026-06-22 02:53:12,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:53:13,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:53:13,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:53:13,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:53:13,275.275 INFO    ] time= 22/06/2026 02:53:13
[2026-06-22 02:53:13,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:53:13,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:53:13,427.427 INFO    ] No existing commands found in stream
[2026-06-22 02:53:18,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:53:18,447.447 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-22 02:53:19,108.108 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:53:19,110.110 INFO    ] Checking for system updates...
[2026-06-22 02:53:19,131.131 INFO    ] 200
[2026-06-22 02:53:19,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:53:19,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:53:19,177.177 INFO    ] No update needed
[2026-06-22 02:53:19,180.180 INFO    ] Checking for camera pi updates...
[2026-06-22 02:53:19,219.219 INFO    ] 200
[2026-06-22 02:53:19,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:53:19,264.264 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:53:19,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:53:19,327.327 INFO    ] No camera update needed
[2026-06-22 02:53:19,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:53:19,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:53:19,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:53:19,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:53:21,387.387 INFO    ] ================================================
[2026-06-22 02:53:21,403.403 INFO    ] Launching Daemon at Mon Jun 22 02:53:21 IST 2026
[2026-06-22 02:53:21,414.414 INFO    ] ================================================
[2026-06-22 02:53:22,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:53:22
[2026-06-22 02:53:22,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:53:22,976.976 INFO    ] Initializing speech engine...
[2026-06-22 02:53:22,990.990 INFO    ] 2026-06-22 02:53:22
[2026-06-22 02:53:23,277.277 INFO    ] 2026-06-22 02:53:23
[2026-06-22 02:53:23,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:53:23,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:53:23,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:53:23,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:53:23,755.755 INFO    ] time= 22/06/2026 02:53:23
[2026-06-22 02:53:23,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:53:23,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:53:23,963.963 INFO    ] No existing commands found in stream
[2026-06-22 02:53:28,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:53:28,998.998 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-22 02:53:31,115.115 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:53:31,116.116 INFO    ] Checking for system updates...
[2026-06-22 02:53:31,137.137 INFO    ] 200
[2026-06-22 02:53:31,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:53:31,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:53:31,177.177 INFO    ] No update needed
[2026-06-22 02:53:31,180.180 INFO    ] Checking for camera pi updates...
[2026-06-22 02:53:31,216.216 INFO    ] 200
[2026-06-22 02:53:31,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:53:31,260.260 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:53:31,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:53:31,421.421 INFO    ] No camera update needed
[2026-06-22 02:53:31,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:53:31,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:53:31,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:53:31,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:53:33,481.481 INFO    ] ================================================
[2026-06-22 02:53:33,497.497 INFO    ] Launching Daemon at Mon Jun 22 02:53:33 IST 2026
[2026-06-22 02:53:33,508.508 INFO    ] ================================================
[2026-06-22 02:53:34,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:53:34
[2026-06-22 02:53:34,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:53:35,192.192 INFO    ] Initializing speech engine...
[2026-06-22 02:53:35,208.208 INFO    ] 2026-06-22 02:53:35
[2026-06-22 02:53:35,530.530 INFO    ] 2026-06-22 02:53:35
[2026-06-22 02:53:35,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:53:35,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:53:35,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:53:35,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:53:36,007.007 INFO    ] time= 22/06/2026 02:53:35
[2026-06-22 02:53:36,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:53:36,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:53:36,097.097 INFO    ] No existing commands found in stream
[2026-06-22 02:53:41,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:53:41,113.113 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-22 02:53:42,577.577 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:53:42,580.580 INFO    ] Checking for system updates...
[2026-06-22 02:53:42,617.617 INFO    ] 200
[2026-06-22 02:53:42,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:53:42,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:53:42,677.677 INFO    ] No update needed
[2026-06-22 02:53:42,680.680 INFO    ] Checking for camera pi updates...
[2026-06-22 02:53:42,720.720 INFO    ] 200
[2026-06-22 02:53:42,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:53:42,767.767 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:53:42,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:53:42,844.844 INFO    ] No camera update needed
[2026-06-22 02:53:42,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:53:42,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:53:42,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:53:42,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:53:44,901.901 INFO    ] ================================================
[2026-06-22 02:53:44,916.916 INFO    ] Launching Daemon at Mon Jun 22 02:53:44 IST 2026
[2026-06-22 02:53:44,927.927 INFO    ] ================================================
[2026-06-22 02:53:45,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:53:45
[2026-06-22 02:53:45,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:53:46,250.250 INFO    ] Initializing speech engine...
[2026-06-22 02:53:46,269.269 INFO    ] 2026-06-22 02:53:46
[2026-06-22 02:53:46,520.520 INFO    ] 2026-06-22 02:53:46
[2026-06-22 02:53:46,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:53:46,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:53:46,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:53:46,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:53:46,876.876 INFO    ] time= 22/06/2026 02:53:46
[2026-06-22 02:53:46,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:53:46,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:53:46,976.976 INFO    ] No existing commands found in stream
[2026-06-22 02:53:51,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:53:51,993.993 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-22 02:53:57,884.884 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:53:57,887.887 INFO    ] Checking for system updates...
[2026-06-22 02:53:57,928.928 INFO    ] 200
[2026-06-22 02:53:57,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:53:57,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:53:57,985.985 INFO    ] No update needed
[2026-06-22 02:53:57,988.988 INFO    ] Checking for camera pi updates...
[2026-06-22 02:53:58,021.021 INFO    ] 200
[2026-06-22 02:53:58,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:53:58,070.070 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:53:58,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:53:58,130.130 INFO    ] No camera update needed
[2026-06-22 02:53:58,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:53:58,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:53:58,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:53:58,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:54:00,185.185 INFO    ] ================================================
[2026-06-22 02:54:00,200.200 INFO    ] Launching Daemon at Mon Jun 22 02:54:00 IST 2026
[2026-06-22 02:54:00,210.210 INFO    ] ================================================
[2026-06-22 02:54:00,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:54:00
[2026-06-22 02:54:01,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:54:01,622.622 INFO    ] Initializing speech engine...
[2026-06-22 02:54:01,630.630 INFO    ] 2026-06-22 02:54:01
[2026-06-22 02:54:01,884.884 INFO    ] 2026-06-22 02:54:01
[2026-06-22 02:54:02,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:54:02,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:54:02,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:54:02,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:54:02,422.422 INFO    ] time= 22/06/2026 02:54:02
[2026-06-22 02:54:02,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:54:02,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:54:02,512.512 INFO    ] No existing commands found in stream
[2026-06-22 02:54:07,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:54:07,529.529 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-22 02:54:11,317.317 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:54:11,318.318 INFO    ] Checking for system updates...
[2026-06-22 02:54:11,359.359 INFO    ] 200
[2026-06-22 02:54:11,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:54:11,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:54:11,423.423 INFO    ] No update needed
[2026-06-22 02:54:11,425.425 INFO    ] Checking for camera pi updates...
[2026-06-22 02:54:11,461.461 INFO    ] 200
[2026-06-22 02:54:11,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:54:11,506.506 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:54:11,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:54:11,603.603 INFO    ] No camera update needed
[2026-06-22 02:54:11,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:54:11,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:54:11,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:54:11,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:54:13,661.661 INFO    ] ================================================
[2026-06-22 02:54:13,677.677 INFO    ] Launching Daemon at Mon Jun 22 02:54:13 IST 2026
[2026-06-22 02:54:13,687.687 INFO    ] ================================================
[2026-06-22 02:54:14,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:54:14
[2026-06-22 02:54:14,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:54:15,092.092 INFO    ] Initializing speech engine...
[2026-06-22 02:54:15,115.115 INFO    ] 2026-06-22 02:54:15
[2026-06-22 02:54:15,373.373 INFO    ] 2026-06-22 02:54:15
[2026-06-22 02:54:15,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:54:15,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:54:15,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:54:15,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:54:15,751.751 INFO    ] time= 22/06/2026 02:54:15
[2026-06-22 02:54:15,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:54:15,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:54:15,904.904 INFO    ] No existing commands found in stream
[2026-06-22 02:54:20,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:54:20,938.938 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-22 02:54:24,847.847 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:54:24,849.849 INFO    ] Checking for system updates...
[2026-06-22 02:54:24,870.870 INFO    ] 200
[2026-06-22 02:54:24,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:54:24,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:54:24,903.903 INFO    ] No update needed
[2026-06-22 02:54:24,904.904 INFO    ] Checking for camera pi updates...
[2026-06-22 02:54:24,927.927 INFO    ] 200
[2026-06-22 02:54:24,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:54:24,961.961 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:54:25,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:54:25,041.041 INFO    ] No camera update needed
[2026-06-22 02:54:25,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:54:25,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:54:25,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:54:25,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:54:27,096.096 INFO    ] ================================================
[2026-06-22 02:54:27,111.111 INFO    ] Launching Daemon at Mon Jun 22 02:54:27 IST 2026
[2026-06-22 02:54:27,121.121 INFO    ] ================================================
[2026-06-22 02:54:27,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:54:27
[2026-06-22 02:54:28,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:54:28,455.455 INFO    ] Initializing speech engine...
[2026-06-22 02:54:28,465.465 INFO    ] 2026-06-22 02:54:28
[2026-06-22 02:54:28,711.711 INFO    ] 2026-06-22 02:54:28
[2026-06-22 02:54:28,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:54:28,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:54:28,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:54:29,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:54:29,078.078 INFO    ] time= 22/06/2026 02:54:29
[2026-06-22 02:54:29,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:54:29,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:54:29,254.254 INFO    ] No existing commands found in stream
[2026-06-22 02:54:34,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:54:34,282.282 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-22 02:54:37,783.783 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:54:37,785.785 INFO    ] Checking for system updates...
[2026-06-22 02:54:37,808.808 INFO    ] 200
[2026-06-22 02:54:37,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:54:37,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:54:37,841.841 INFO    ] No update needed
[2026-06-22 02:54:37,842.842 INFO    ] Checking for camera pi updates...
[2026-06-22 02:54:37,865.865 INFO    ] 200
[2026-06-22 02:54:37,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:54:37,911.911 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:54:37,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:54:37,993.993 INFO    ] No camera update needed
[2026-06-22 02:54:37,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:54:37,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:54:38,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:54:38,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:54:40,048.048 INFO    ] ================================================
[2026-06-22 02:54:40,063.063 INFO    ] Launching Daemon at Mon Jun 22 02:54:40 IST 2026
[2026-06-22 02:54:40,074.074 INFO    ] ================================================
[2026-06-22 02:54:40,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:54:40
[2026-06-22 02:54:41,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:54:41,402.402 INFO    ] Initializing speech engine...
[2026-06-22 02:54:41,427.427 INFO    ] 2026-06-22 02:54:41
[2026-06-22 02:54:41,684.684 INFO    ] 2026-06-22 02:54:41
[2026-06-22 02:54:41,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:54:41,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:54:41,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:54:42,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:54:42,144.144 INFO    ] time= 22/06/2026 02:54:42
[2026-06-22 02:54:42,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:54:42,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:54:42,369.369 INFO    ] No existing commands found in stream
[2026-06-22 02:54:47,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:54:47,403.403 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-22 02:54:48,788.788 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:54:48,790.790 INFO    ] Checking for system updates...
[2026-06-22 02:54:48,811.811 INFO    ] 200
[2026-06-22 02:54:48,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:54:48,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:54:48,846.846 INFO    ] No update needed
[2026-06-22 02:54:48,847.847 INFO    ] Checking for camera pi updates...
[2026-06-22 02:54:48,875.875 INFO    ] 200
[2026-06-22 02:54:48,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:54:48,918.918 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:54:49,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:54:49,007.007 INFO    ] No camera update needed
[2026-06-22 02:54:49,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:54:49,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:54:49,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:54:49,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:54:51,063.063 INFO    ] ================================================
[2026-06-22 02:54:51,078.078 INFO    ] Launching Daemon at Mon Jun 22 02:54:51 IST 2026
[2026-06-22 02:54:51,089.089 INFO    ] ================================================
[2026-06-22 02:54:51,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:54:51
[2026-06-22 02:54:52,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:54:52,483.483 INFO    ] Initializing speech engine...
[2026-06-22 02:54:52,492.492 INFO    ] 2026-06-22 02:54:52
[2026-06-22 02:54:52,773.773 INFO    ] 2026-06-22 02:54:52
[2026-06-22 02:54:52,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:54:53,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:54:53,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:54:53,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:54:53,227.227 INFO    ] time= 22/06/2026 02:54:53
[2026-06-22 02:54:53,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:54:53,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:54:53,403.403 INFO    ] No existing commands found in stream
[2026-06-22 02:54:58,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:54:58,417.417 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-22 02:55:00,202.202 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:55:00,204.204 INFO    ] Checking for system updates...
[2026-06-22 02:55:00,226.226 INFO    ] 200
[2026-06-22 02:55:00,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:55:00,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:55:00,265.265 INFO    ] No update needed
[2026-06-22 02:55:00,267.267 INFO    ] Checking for camera pi updates...
[2026-06-22 02:55:00,301.301 INFO    ] 200
[2026-06-22 02:55:00,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:55:00,349.349 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:55:00,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:55:00,436.436 INFO    ] No camera update needed
[2026-06-22 02:55:00,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:55:00,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:55:00,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:55:00,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:55:02,507.507 INFO    ] ================================================
[2026-06-22 02:55:02,529.529 INFO    ] Launching Daemon at Mon Jun 22 02:55:02 IST 2026
[2026-06-22 02:55:02,542.542 INFO    ] ================================================
[2026-06-22 02:55:03,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:55:03
[2026-06-22 02:55:03,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:55:04,147.147 INFO    ] Initializing speech engine...
[2026-06-22 02:55:04,160.160 INFO    ] 2026-06-22 02:55:04
[2026-06-22 02:55:04,428.428 INFO    ] 2026-06-22 02:55:04
[2026-06-22 02:55:04,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:55:04,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:55:04,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:55:04,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:55:04,801.801 INFO    ] time= 22/06/2026 02:55:04
[2026-06-22 02:55:04,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:55:04,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:55:04,882.882 INFO    ] No existing commands found in stream
[2026-06-22 02:55:09,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:55:09,898.898 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-22 02:55:12,520.520 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:55:12,522.522 INFO    ] Checking for system updates...
[2026-06-22 02:55:12,545.545 INFO    ] 200
[2026-06-22 02:55:12,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:55:12,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:55:12,595.595 INFO    ] No update needed
[2026-06-22 02:55:12,598.598 INFO    ] Checking for camera pi updates...
[2026-06-22 02:55:12,639.639 INFO    ] 200
[2026-06-22 02:55:12,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:55:12,686.686 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:55:12,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:55:12,790.790 INFO    ] No camera update needed
[2026-06-22 02:55:12,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:55:12,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:55:12,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:55:12,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:55:14,853.853 INFO    ] ================================================
[2026-06-22 02:55:14,869.869 INFO    ] Launching Daemon at Mon Jun 22 02:55:14 IST 2026
[2026-06-22 02:55:14,880.880 INFO    ] ================================================
[2026-06-22 02:55:15,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:55:15
[2026-06-22 02:55:15,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:55:16,230.230 INFO    ] Initializing speech engine...
[2026-06-22 02:55:16,245.245 INFO    ] 2026-06-22 02:55:16
[2026-06-22 02:55:16,510.510 INFO    ] 2026-06-22 02:55:16
[2026-06-22 02:55:16,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:55:16,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:55:16,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:55:16,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:55:16,949.949 INFO    ] time= 22/06/2026 02:55:16
[2026-06-22 02:55:17,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:55:17,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:55:17,127.127 INFO    ] No existing commands found in stream
[2026-06-22 02:55:22,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:55:22,142.142 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-22 02:55:25,754.754 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:55:25,756.756 INFO    ] Checking for system updates...
[2026-06-22 02:55:25,777.777 INFO    ] 200
[2026-06-22 02:55:25,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:55:25,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:55:25,832.832 INFO    ] No update needed
[2026-06-22 02:55:25,835.835 INFO    ] Checking for camera pi updates...
[2026-06-22 02:55:25,875.875 INFO    ] 200
[2026-06-22 02:55:25,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:55:25,925.925 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:55:26,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:55:26,008.008 INFO    ] No camera update needed
[2026-06-22 02:55:26,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:55:26,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:55:26,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:55:26,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:55:28,065.065 INFO    ] ================================================
[2026-06-22 02:55:28,082.082 INFO    ] Launching Daemon at Mon Jun 22 02:55:28 IST 2026
[2026-06-22 02:55:28,093.093 INFO    ] ================================================
[2026-06-22 02:55:28,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:55:28
[2026-06-22 02:55:29,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:55:29,417.417 INFO    ] Initializing speech engine...
[2026-06-22 02:55:29,425.425 INFO    ] 2026-06-22 02:55:29
[2026-06-22 02:55:29,700.700 INFO    ] 2026-06-22 02:55:29
[2026-06-22 02:55:29,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:55:29,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:55:29,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:55:30,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:55:30,080.080 INFO    ] time= 22/06/2026 02:55:30
[2026-06-22 02:55:30,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:55:30,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:55:30,157.157 INFO    ] No existing commands found in stream
[2026-06-22 02:55:35,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:55:35,172.172 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-22 02:55:39,522.522 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:55:39,523.523 INFO    ] Checking for system updates...
[2026-06-22 02:55:39,545.545 INFO    ] 200
[2026-06-22 02:55:39,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:55:39,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:55:39,581.581 INFO    ] No update needed
[2026-06-22 02:55:39,582.582 INFO    ] Checking for camera pi updates...
[2026-06-22 02:55:39,603.603 INFO    ] 200
[2026-06-22 02:55:39,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:55:39,643.643 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:55:39,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:55:39,830.830 INFO    ] No camera update needed
[2026-06-22 02:55:39,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:55:39,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:55:39,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:55:39,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:55:41,886.886 INFO    ] ================================================
[2026-06-22 02:55:41,902.902 INFO    ] Launching Daemon at Mon Jun 22 02:55:41 IST 2026
[2026-06-22 02:55:41,913.913 INFO    ] ================================================
[2026-06-22 02:55:42,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:55:42
[2026-06-22 02:55:43,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:55:43,283.283 INFO    ] Initializing speech engine...
[2026-06-22 02:55:43,293.293 INFO    ] 2026-06-22 02:55:43
[2026-06-22 02:55:43,543.543 INFO    ] 2026-06-22 02:55:43
[2026-06-22 02:55:43,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:55:43,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:55:43,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:55:43,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:55:44,020.020 INFO    ] time= 22/06/2026 02:55:43
[2026-06-22 02:55:44,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:55:44,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:55:44,162.162 INFO    ] No existing commands found in stream
[2026-06-22 02:55:49,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:55:49,177.177 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-22 02:55:51,992.992 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:55:51,994.994 INFO    ] Checking for system updates...
[2026-06-22 02:55:52,015.015 INFO    ] 200
[2026-06-22 02:55:52,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:55:52,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:55:52,072.072 INFO    ] No update needed
[2026-06-22 02:55:52,075.075 INFO    ] Checking for camera pi updates...
[2026-06-22 02:55:52,110.110 INFO    ] 200
[2026-06-22 02:55:52,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:55:52,161.161 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:55:52,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:55:52,253.253 INFO    ] No camera update needed
[2026-06-22 02:55:52,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:55:52,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:55:52,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:55:52,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:55:54,315.315 INFO    ] ================================================
[2026-06-22 02:55:54,331.331 INFO    ] Launching Daemon at Mon Jun 22 02:55:54 IST 2026
[2026-06-22 02:55:54,343.343 INFO    ] ================================================
[2026-06-22 02:55:55,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:55:55
[2026-06-22 02:55:55,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:55:55,920.920 INFO    ] Initializing speech engine...
[2026-06-22 02:55:55,935.935 INFO    ] 2026-06-22 02:55:55
[2026-06-22 02:55:56,248.248 INFO    ] 2026-06-22 02:55:56
[2026-06-22 02:55:56,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:55:56,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:55:56,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:55:56,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:55:56,690.690 INFO    ] time= 22/06/2026 02:55:56
[2026-06-22 02:55:56,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:55:56,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:55:56,881.881 INFO    ] No existing commands found in stream
[2026-06-22 02:56:01,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:56:01,916.916 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-22 02:56:05,394.394 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:56:05,397.397 INFO    ] Checking for system updates...
[2026-06-22 02:56:05,433.433 INFO    ] 200
[2026-06-22 02:56:05,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:56:05,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:56:05,499.499 INFO    ] No update needed
[2026-06-22 02:56:05,502.502 INFO    ] Checking for camera pi updates...
[2026-06-22 02:56:05,545.545 INFO    ] 200
[2026-06-22 02:56:05,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:56:05,592.592 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:56:05,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:56:05,652.652 INFO    ] No camera update needed
[2026-06-22 02:56:05,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:56:05,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:56:05,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:56:05,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:56:07,710.710 INFO    ] ================================================
[2026-06-22 02:56:07,726.726 INFO    ] Launching Daemon at Mon Jun 22 02:56:07 IST 2026
[2026-06-22 02:56:07,737.737 INFO    ] ================================================
[2026-06-22 02:56:08,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:56:08
[2026-06-22 02:56:08,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:56:09,276.276 INFO    ] Initializing speech engine...
[2026-06-22 02:56:09,291.291 INFO    ] 2026-06-22 02:56:09
[2026-06-22 02:56:09,600.600 INFO    ] 2026-06-22 02:56:09
[2026-06-22 02:56:09,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:56:09,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:56:09,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:56:10,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:56:10,111.111 INFO    ] time= 22/06/2026 02:56:10
[2026-06-22 02:56:10,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:56:10,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:56:10,258.258 INFO    ] No existing commands found in stream
[2026-06-22 02:56:15,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:56:15,283.283 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-22 02:56:18,590.590 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:56:18,593.593 INFO    ] Checking for system updates...
[2026-06-22 02:56:18,635.635 INFO    ] 200
[2026-06-22 02:56:18,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:56:18,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:56:18,703.703 INFO    ] No update needed
[2026-06-22 02:56:18,706.706 INFO    ] Checking for camera pi updates...
[2026-06-22 02:56:18,741.741 INFO    ] 200
[2026-06-22 02:56:18,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:56:18,791.791 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:56:18,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:56:18,892.892 INFO    ] No camera update needed
[2026-06-22 02:56:18,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:56:18,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:56:18,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:56:18,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:56:20,949.949 INFO    ] ================================================
[2026-06-22 02:56:20,965.965 INFO    ] Launching Daemon at Mon Jun 22 02:56:20 IST 2026
[2026-06-22 02:56:20,976.976 INFO    ] ================================================
[2026-06-22 02:56:21,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:56:21
[2026-06-22 02:56:22,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:56:22,512.512 INFO    ] Initializing speech engine...
[2026-06-22 02:56:22,517.517 INFO    ] 2026-06-22 02:56:22
[2026-06-22 02:56:22,787.787 INFO    ] 2026-06-22 02:56:22
[2026-06-22 02:56:22,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:56:23,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:56:23,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:56:23,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:56:23,226.226 INFO    ] time= 22/06/2026 02:56:23
[2026-06-22 02:56:23,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:56:23,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:56:23,391.391 INFO    ] No existing commands found in stream
[2026-06-22 02:56:28,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:56:28,411.411 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-22 02:56:30,861.861 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:56:30,863.863 INFO    ] Checking for system updates...
[2026-06-22 02:56:30,896.896 INFO    ] 200
[2026-06-22 02:56:30,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:56:30,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:56:30,955.955 INFO    ] No update needed
[2026-06-22 02:56:30,957.957 INFO    ] Checking for camera pi updates...
[2026-06-22 02:56:30,995.995 INFO    ] 200
[2026-06-22 02:56:30,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:56:31,043.043 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:56:31,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:56:31,131.131 INFO    ] No camera update needed
[2026-06-22 02:56:31,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:56:31,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:56:31,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:56:31,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:56:33,190.190 INFO    ] ================================================
[2026-06-22 02:56:33,208.208 INFO    ] Launching Daemon at Mon Jun 22 02:56:33 IST 2026
[2026-06-22 02:56:33,221.221 INFO    ] ================================================
[2026-06-22 02:56:33,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:56:33
[2026-06-22 02:56:34,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:56:34,907.907 INFO    ] Initializing speech engine...
[2026-06-22 02:56:34,914.914 INFO    ] 2026-06-22 02:56:34
[2026-06-22 02:56:35,193.193 INFO    ] 2026-06-22 02:56:35
[2026-06-22 02:56:35,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:56:35,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:56:35,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:56:35,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:56:35,623.623 INFO    ] time= 22/06/2026 02:56:35
[2026-06-22 02:56:35,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:56:35,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:56:35,819.819 INFO    ] No existing commands found in stream
[2026-06-22 02:56:40,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:56:40,834.834 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-22 02:56:44,968.968 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:56:44,971.971 INFO    ] Checking for system updates...
[2026-06-22 02:56:45,008.008 INFO    ] 200
[2026-06-22 02:56:45,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:56:45,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:56:45,069.069 INFO    ] No update needed
[2026-06-22 02:56:45,072.072 INFO    ] Checking for camera pi updates...
[2026-06-22 02:56:45,110.110 INFO    ] 200
[2026-06-22 02:56:45,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:56:45,159.159 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:56:45,266.266 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:56:45,269.269 INFO    ] No camera update needed
[2026-06-22 02:56:45,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:56:45,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:56:45,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:56:45,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:56:47,326.326 INFO    ] ================================================
[2026-06-22 02:56:47,341.341 INFO    ] Launching Daemon at Mon Jun 22 02:56:47 IST 2026
[2026-06-22 02:56:47,352.352 INFO    ] ================================================
[2026-06-22 02:56:47,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:56:47
[2026-06-22 02:56:48,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:56:48,713.713 INFO    ] Initializing speech engine...
[2026-06-22 02:56:48,722.722 INFO    ] 2026-06-22 02:56:48
[2026-06-22 02:56:49,023.023 INFO    ] 2026-06-22 02:56:48
[2026-06-22 02:56:49,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:56:49,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:56:49,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:56:49,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:56:49,389.389 INFO    ] time= 22/06/2026 02:56:49
[2026-06-22 02:56:49,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:56:49,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:56:49,474.474 INFO    ] No existing commands found in stream
[2026-06-22 02:56:54,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:56:54,489.489 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-22 02:56:57,567.567 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:56:57,569.569 INFO    ] Checking for system updates...
[2026-06-22 02:56:57,591.591 INFO    ] 200
[2026-06-22 02:56:57,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:56:57,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:56:57,635.635 INFO    ] No update needed
[2026-06-22 02:56:57,637.637 INFO    ] Checking for camera pi updates...
[2026-06-22 02:56:57,671.671 INFO    ] 200
[2026-06-22 02:56:57,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:56:57,716.716 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:56:57,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:56:57,818.818 INFO    ] No camera update needed
[2026-06-22 02:56:57,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:56:57,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:56:57,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:56:57,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:56:59,873.873 INFO    ] ================================================
[2026-06-22 02:56:59,888.888 INFO    ] Launching Daemon at Mon Jun 22 02:56:59 IST 2026
[2026-06-22 02:56:59,899.899 INFO    ] ================================================
[2026-06-22 02:57:00,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:57:00
[2026-06-22 02:57:01,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:57:01,280.280 INFO    ] Initializing speech engine...
[2026-06-22 02:57:01,288.288 INFO    ] 2026-06-22 02:57:01
[2026-06-22 02:57:01,548.548 INFO    ] 2026-06-22 02:57:01
[2026-06-22 02:57:01,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:57:01,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:57:01,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:57:01,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:57:01,971.971 INFO    ] time= 22/06/2026 02:57:01
[2026-06-22 02:57:01,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:57:01,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:57:02,042.042 INFO    ] No existing commands found in stream
[2026-06-22 02:57:07,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:57:07,056.056 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-22 02:57:08,929.929 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:57:08,932.932 INFO    ] Checking for system updates...
[2026-06-22 02:57:08,968.968 INFO    ] 200
[2026-06-22 02:57:08,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:57:09,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:57:09,027.027 INFO    ] No update needed
[2026-06-22 02:57:09,030.030 INFO    ] Checking for camera pi updates...
[2026-06-22 02:57:09,068.068 INFO    ] 200
[2026-06-22 02:57:09,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:57:09,111.111 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:57:09,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:57:09,179.179 INFO    ] No camera update needed
[2026-06-22 02:57:09,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:57:09,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:57:09,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:57:09,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:57:11,234.234 INFO    ] ================================================
[2026-06-22 02:57:11,250.250 INFO    ] Launching Daemon at Mon Jun 22 02:57:11 IST 2026
[2026-06-22 02:57:11,261.261 INFO    ] ================================================
[2026-06-22 02:57:11,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:57:11
[2026-06-22 02:57:12,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:57:12,639.639 INFO    ] Initializing speech engine...
[2026-06-22 02:57:12,655.655 INFO    ] 2026-06-22 02:57:12
[2026-06-22 02:57:12,914.914 INFO    ] 2026-06-22 02:57:12
[2026-06-22 02:57:12,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:57:13,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:57:13,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:57:13,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:57:13,285.285 INFO    ] time= 22/06/2026 02:57:13
[2026-06-22 02:57:13,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:57:13,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:57:13,365.365 INFO    ] No existing commands found in stream
[2026-06-22 02:57:18,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:57:18,379.379 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-22 02:57:20,083.083 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:57:20,085.085 INFO    ] Checking for system updates...
[2026-06-22 02:57:20,106.106 INFO    ] 200
[2026-06-22 02:57:20,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:57:20,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:57:20,169.169 INFO    ] No update needed
[2026-06-22 02:57:20,172.172 INFO    ] Checking for camera pi updates...
[2026-06-22 02:57:20,211.211 INFO    ] 200
[2026-06-22 02:57:20,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:57:20,255.255 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:57:20,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:57:20,351.351 INFO    ] No camera update needed
[2026-06-22 02:57:20,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:57:20,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:57:20,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:57:20,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:57:22,410.410 INFO    ] ================================================
[2026-06-22 02:57:22,426.426 INFO    ] Launching Daemon at Mon Jun 22 02:57:22 IST 2026
[2026-06-22 02:57:22,436.436 INFO    ] ================================================
[2026-06-22 02:57:23,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:57:23
[2026-06-22 02:57:23,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:57:24,136.136 INFO    ] Initializing speech engine...
[2026-06-22 02:57:24,143.143 INFO    ] 2026-06-22 02:57:24
[2026-06-22 02:57:24,440.440 INFO    ] 2026-06-22 02:57:24
[2026-06-22 02:57:24,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:57:24,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:57:24,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:57:24,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:57:24,905.905 INFO    ] time= 22/06/2026 02:57:24
[2026-06-22 02:57:24,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:57:25,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:57:25,061.061 INFO    ] No existing commands found in stream
[2026-06-22 02:57:30,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:57:30,081.081 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-22 02:57:31,029.029 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:57:31,032.032 INFO    ] Checking for system updates...
[2026-06-22 02:57:31,069.069 INFO    ] 200
[2026-06-22 02:57:31,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:57:31,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:57:31,127.127 INFO    ] No update needed
[2026-06-22 02:57:31,129.129 INFO    ] Checking for camera pi updates...
[2026-06-22 02:57:31,164.164 INFO    ] 200
[2026-06-22 02:57:31,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:57:31,213.213 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:57:31,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:57:31,299.299 INFO    ] No camera update needed
[2026-06-22 02:57:31,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:57:31,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:57:31,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:57:31,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:57:33,357.357 INFO    ] ================================================
[2026-06-22 02:57:33,377.377 INFO    ] Launching Daemon at Mon Jun 22 02:57:33 IST 2026
[2026-06-22 02:57:33,387.387 INFO    ] ================================================
[2026-06-22 02:57:33,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:57:33
[2026-06-22 02:57:34,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:57:34,851.851 INFO    ] Initializing speech engine...
[2026-06-22 02:57:34,866.866 INFO    ] 2026-06-22 02:57:34
[2026-06-22 02:57:35,162.162 INFO    ] 2026-06-22 02:57:35
[2026-06-22 02:57:35,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:57:35,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:57:35,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:57:35,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:57:35,537.537 INFO    ] time= 22/06/2026 02:57:35
[2026-06-22 02:57:35,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:57:35,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:57:35,619.619 INFO    ] No existing commands found in stream
[2026-06-22 02:57:40,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:57:40,633.633 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-22 02:57:43,461.461 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 02:57:43,464.464 INFO    ] Checking for system updates...
[2026-06-22 02:57:43,506.506 INFO    ] 200
[2026-06-22 02:57:43,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:57:43,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:57:43,563.563 INFO    ] No update needed
[2026-06-22 02:57:43,566.566 INFO    ] Checking for camera pi updates...
[2026-06-22 02:57:43,600.600 INFO    ] 200
[2026-06-22 02:57:43,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:57:43,651.651 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:57:43,844.844 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:57:43,847.847 INFO    ] No camera update needed
[2026-06-22 02:57:43,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:57:43,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:57:43,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:57:43,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:57:45,904.904 INFO    ] ================================================
[2026-06-22 02:57:45,919.919 INFO    ] Launching Daemon at Mon Jun 22 02:57:45 IST 2026
[2026-06-22 02:57:45,930.930 INFO    ] ================================================
[2026-06-22 02:57:46,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:57:46
[2026-06-22 02:57:47,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:57:47,358.358 INFO    ] Initializing speech engine...
[2026-06-22 02:57:47,363.363 INFO    ] 2026-06-22 02:57:47
[2026-06-22 02:57:47,615.615 INFO    ] 2026-06-22 02:57:47
[2026-06-22 02:57:47,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:57:47,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:57:47,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:57:48,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:57:48,070.070 INFO    ] time= 22/06/2026 02:57:48
[2026-06-22 02:57:48,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:57:48,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:57:48,250.250 INFO    ] No existing commands found in stream
[2026-06-22 02:57:53,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:57:53,266.266 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-22 02:57:57,477.477 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:57:57,480.480 INFO    ] Checking for system updates...
[2026-06-22 02:57:57,517.517 INFO    ] 200
[2026-06-22 02:57:57,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:57:57,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:57:57,575.575 INFO    ] No update needed
[2026-06-22 02:57:57,578.578 INFO    ] Checking for camera pi updates...
[2026-06-22 02:57:57,616.616 INFO    ] 200
[2026-06-22 02:57:57,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:57:57,666.666 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:57:57,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:57:57,751.751 INFO    ] No camera update needed
[2026-06-22 02:57:57,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:57:57,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:57:57,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:57:57,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:57:59,808.808 INFO    ] ================================================
[2026-06-22 02:57:59,825.825 INFO    ] Launching Daemon at Mon Jun 22 02:57:59 IST 2026
[2026-06-22 02:57:59,836.836 INFO    ] ================================================
[2026-06-22 02:58:00,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:58:00
[2026-06-22 02:58:01,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:58:01,443.443 INFO    ] Initializing speech engine...
[2026-06-22 02:58:01,450.450 INFO    ] 2026-06-22 02:58:01
[2026-06-22 02:58:01,762.762 INFO    ] 2026-06-22 02:58:01
[2026-06-22 02:58:01,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:58:02,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:58:02,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:58:02,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:58:02,295.295 INFO    ] time= 22/06/2026 02:58:02
[2026-06-22 02:58:02,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:58:02,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:58:02,368.368 INFO    ] No existing commands found in stream
[2026-06-22 02:58:07,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:58:07,383.383 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-22 02:58:08,985.985 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:58:08,989.989 INFO    ] Checking for system updates...
[2026-06-22 02:58:09,030.030 INFO    ] 200
[2026-06-22 02:58:09,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:58:09,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:58:09,092.092 INFO    ] No update needed
[2026-06-22 02:58:09,095.095 INFO    ] Checking for camera pi updates...
[2026-06-22 02:58:09,134.134 INFO    ] 200
[2026-06-22 02:58:09,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:58:09,188.188 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:58:09,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:58:09,303.303 INFO    ] No camera update needed
[2026-06-22 02:58:09,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:58:09,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:58:09,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:58:09,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:58:11,362.362 INFO    ] ================================================
[2026-06-22 02:58:11,379.379 INFO    ] Launching Daemon at Mon Jun 22 02:58:11 IST 2026
[2026-06-22 02:58:11,390.390 INFO    ] ================================================
[2026-06-22 02:58:11,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:58:11
[2026-06-22 02:58:12,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:58:12,723.723 INFO    ] Initializing speech engine...
[2026-06-22 02:58:12,733.733 INFO    ] 2026-06-22 02:58:12
[2026-06-22 02:58:12,980.980 INFO    ] 2026-06-22 02:58:12
[2026-06-22 02:58:13,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:58:13,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:58:13,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:58:13,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:58:13,353.353 INFO    ] time= 22/06/2026 02:58:13
[2026-06-22 02:58:13,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:58:13,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:58:13,520.520 INFO    ] No existing commands found in stream
[2026-06-22 02:58:18,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:58:18,548.548 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-22 02:58:20,060.060 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:58:20,061.061 INFO    ] Checking for system updates...
[2026-06-22 02:58:20,083.083 INFO    ] 200
[2026-06-22 02:58:20,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:58:20,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:58:20,117.117 INFO    ] No update needed
[2026-06-22 02:58:20,118.118 INFO    ] Checking for camera pi updates...
[2026-06-22 02:58:20,139.139 INFO    ] 200
[2026-06-22 02:58:20,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:58:20,184.184 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:58:20,266.266 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:58:20,269.269 INFO    ] No camera update needed
[2026-06-22 02:58:20,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:58:20,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:58:20,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:58:20,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:58:22,324.324 INFO    ] ================================================
[2026-06-22 02:58:22,341.341 INFO    ] Launching Daemon at Mon Jun 22 02:58:22 IST 2026
[2026-06-22 02:58:22,352.352 INFO    ] ================================================
[2026-06-22 02:58:22,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:58:22
[2026-06-22 02:58:23,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:58:23,790.790 INFO    ] Initializing speech engine...
[2026-06-22 02:58:23,804.804 INFO    ] 2026-06-22 02:58:23
[2026-06-22 02:58:24,122.122 INFO    ] 2026-06-22 02:58:24
[2026-06-22 02:58:24,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:58:24,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:58:24,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:58:24,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:58:24,640.640 INFO    ] time= 22/06/2026 02:58:24
[2026-06-22 02:58:24,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:58:24,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:58:24,785.785 INFO    ] No existing commands found in stream
[2026-06-22 02:58:29,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:58:29,814.814 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-22 02:58:30,998.998 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 02:58:30,999.999 INFO    ] Checking for system updates...
[2026-06-22 02:58:31,021.021 INFO    ] 200
[2026-06-22 02:58:31,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:58:31,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:58:31,066.066 INFO    ] No update needed
[2026-06-22 02:58:31,069.069 INFO    ] Checking for camera pi updates...
[2026-06-22 02:58:31,109.109 INFO    ] 200
[2026-06-22 02:58:31,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:58:31,155.155 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:58:31,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:58:31,241.241 INFO    ] No camera update needed
[2026-06-22 02:58:31,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:58:31,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:58:31,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:58:31,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:58:33,302.302 INFO    ] ================================================
[2026-06-22 02:58:33,318.318 INFO    ] Launching Daemon at Mon Jun 22 02:58:33 IST 2026
[2026-06-22 02:58:33,329.329 INFO    ] ================================================
[2026-06-22 02:58:33,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:58:33
[2026-06-22 02:58:34,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:58:34,998.998 INFO    ] Initializing speech engine...
[2026-06-22 02:58:35,012.012 INFO    ] 2026-06-22 02:58:35
[2026-06-22 02:58:35,308.308 INFO    ] 2026-06-22 02:58:35
[2026-06-22 02:58:35,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:58:35,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:58:35,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:58:35,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:58:35,854.854 INFO    ] time= 22/06/2026 02:58:35
[2026-06-22 02:58:35,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:58:35,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:58:35,989.989 INFO    ] No existing commands found in stream
[2026-06-22 02:58:41,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:58:41,019.019 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-22 02:58:43,424.424 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:58:43,427.427 INFO    ] Checking for system updates...
[2026-06-22 02:58:43,465.465 INFO    ] 200
[2026-06-22 02:58:43,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:58:43,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:58:43,525.525 INFO    ] No update needed
[2026-06-22 02:58:43,528.528 INFO    ] Checking for camera pi updates...
[2026-06-22 02:58:43,563.563 INFO    ] 200
[2026-06-22 02:58:43,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:58:43,614.614 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:58:43,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:58:43,700.700 INFO    ] No camera update needed
[2026-06-22 02:58:43,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:58:43,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:58:43,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:58:43,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:58:45,761.761 INFO    ] ================================================
[2026-06-22 02:58:45,776.776 INFO    ] Launching Daemon at Mon Jun 22 02:58:45 IST 2026
[2026-06-22 02:58:45,787.787 INFO    ] ================================================
[2026-06-22 02:58:46,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:58:46
[2026-06-22 02:58:47,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:58:47,348.348 INFO    ] Initializing speech engine...
[2026-06-22 02:58:47,355.355 INFO    ] 2026-06-22 02:58:47
[2026-06-22 02:58:47,633.633 INFO    ] 2026-06-22 02:58:47
[2026-06-22 02:58:47,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:58:47,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:58:47,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:58:48,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:58:48,136.136 INFO    ] time= 22/06/2026 02:58:48
[2026-06-22 02:58:48,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:58:48,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:58:48,265.265 INFO    ] No existing commands found in stream
[2026-06-22 02:58:53,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:58:53,280.280 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-22 02:58:55,242.242 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:58:55,245.245 INFO    ] Checking for system updates...
[2026-06-22 02:58:55,283.283 INFO    ] 200
[2026-06-22 02:58:55,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:58:55,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:58:55,343.343 INFO    ] No update needed
[2026-06-22 02:58:55,346.346 INFO    ] Checking for camera pi updates...
[2026-06-22 02:58:55,381.381 INFO    ] 200
[2026-06-22 02:58:55,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:58:55,432.432 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:58:55,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:58:55,516.516 INFO    ] No camera update needed
[2026-06-22 02:58:55,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:58:55,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:58:55,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:58:55,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:58:57,574.574 INFO    ] ================================================
[2026-06-22 02:58:57,589.589 INFO    ] Launching Daemon at Mon Jun 22 02:58:57 IST 2026
[2026-06-22 02:58:57,600.600 INFO    ] ================================================
[2026-06-22 02:58:58,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:58:58
[2026-06-22 02:58:58,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:58:58,960.960 INFO    ] Initializing speech engine...
[2026-06-22 02:58:58,975.975 INFO    ] 2026-06-22 02:58:58
[2026-06-22 02:58:59,265.265 INFO    ] 2026-06-22 02:58:59
[2026-06-22 02:58:59,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:58:59,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:58:59,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:58:59,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:58:59,630.630 INFO    ] time= 22/06/2026 02:58:59
[2026-06-22 02:58:59,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:58:59,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:58:59,711.711 INFO    ] No existing commands found in stream
[2026-06-22 02:59:04,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:59:04,726.726 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-22 02:59:07,825.825 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 02:59:07,828.828 INFO    ] Checking for system updates...
[2026-06-22 02:59:07,864.864 INFO    ] 200
[2026-06-22 02:59:07,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:59:07,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:59:07,922.922 INFO    ] No update needed
[2026-06-22 02:59:07,925.925 INFO    ] Checking for camera pi updates...
[2026-06-22 02:59:07,960.960 INFO    ] 200
[2026-06-22 02:59:07,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:59:08,005.005 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:59:08,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:59:08,092.092 INFO    ] No camera update needed
[2026-06-22 02:59:08,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:59:08,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:59:08,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:59:08,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:59:10,148.148 INFO    ] ================================================
[2026-06-22 02:59:10,163.163 INFO    ] Launching Daemon at Mon Jun 22 02:59:10 IST 2026
[2026-06-22 02:59:10,174.174 INFO    ] ================================================
[2026-06-22 02:59:10,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:59:10
[2026-06-22 02:59:11,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:59:11,782.782 INFO    ] Initializing speech engine...
[2026-06-22 02:59:11,797.797 INFO    ] 2026-06-22 02:59:11
[2026-06-22 02:59:12,082.082 INFO    ] 2026-06-22 02:59:12
[2026-06-22 02:59:12,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:59:12,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:59:12,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:59:12,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:59:12,561.561 INFO    ] time= 22/06/2026 02:59:12
[2026-06-22 02:59:12,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:59:12,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:59:12,687.687 INFO    ] No existing commands found in stream
[2026-06-22 02:59:17,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:59:17,705.705 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-22 02:59:21,205.205 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 02:59:21,208.208 INFO    ] Checking for system updates...
[2026-06-22 02:59:21,246.246 INFO    ] 200
[2026-06-22 02:59:21,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:59:21,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:59:21,307.307 INFO    ] No update needed
[2026-06-22 02:59:21,309.309 INFO    ] Checking for camera pi updates...
[2026-06-22 02:59:21,344.344 INFO    ] 200
[2026-06-22 02:59:21,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:59:21,391.391 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:59:21,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 02:59:21,473.473 INFO    ] No camera update needed
[2026-06-22 02:59:21,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:59:21,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:59:21,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:59:21,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:59:23,534.534 INFO    ] ================================================
[2026-06-22 02:59:23,550.550 INFO    ] Launching Daemon at Mon Jun 22 02:59:23 IST 2026
[2026-06-22 02:59:23,561.561 INFO    ] ================================================
[2026-06-22 02:59:24,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:59:24
[2026-06-22 02:59:24,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:59:24,941.941 INFO    ] Initializing speech engine...
[2026-06-22 02:59:24,950.950 INFO    ] 2026-06-22 02:59:24
[2026-06-22 02:59:25,202.202 INFO    ] 2026-06-22 02:59:25
[2026-06-22 02:59:25,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:59:25,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:59:25,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:59:25,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:59:25,592.592 INFO    ] time= 22/06/2026 02:59:25
[2026-06-22 02:59:25,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:59:25,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:59:25,720.720 INFO    ] No existing commands found in stream
[2026-06-22 02:59:30,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:59:30,736.736 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-22 02:59:34,498.498 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 02:59:34,501.501 INFO    ] Checking for system updates...
[2026-06-22 02:59:34,537.537 INFO    ] 200
[2026-06-22 02:59:34,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:59:34,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:59:34,595.595 INFO    ] No update needed
[2026-06-22 02:59:34,597.597 INFO    ] Checking for camera pi updates...
[2026-06-22 02:59:34,636.636 INFO    ] 200
[2026-06-22 02:59:34,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:59:34,678.678 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:59:34,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:59:34,771.771 INFO    ] No camera update needed
[2026-06-22 02:59:34,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:59:34,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:59:34,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:59:34,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:59:36,827.827 INFO    ] ================================================
[2026-06-22 02:59:36,842.842 INFO    ] Launching Daemon at Mon Jun 22 02:59:36 IST 2026
[2026-06-22 02:59:36,855.855 INFO    ] ================================================
[2026-06-22 02:59:37,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:59:37
[2026-06-22 02:59:38,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:59:38,316.316 INFO    ] Initializing speech engine...
[2026-06-22 02:59:38,327.327 INFO    ] 2026-06-22 02:59:38
[2026-06-22 02:59:38,604.604 INFO    ] 2026-06-22 02:59:38
[2026-06-22 02:59:38,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:59:38,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:59:38,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:59:39,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:59:39,027.027 INFO    ] time= 22/06/2026 02:59:39
[2026-06-22 02:59:39,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:59:39,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:59:39,200.200 INFO    ] No existing commands found in stream
[2026-06-22 02:59:44,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:59:44,215.215 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-22 02:59:48,496.496 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 02:59:48,498.498 INFO    ] Checking for system updates...
[2026-06-22 02:59:48,528.528 INFO    ] 200
[2026-06-22 02:59:48,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:59:48,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:59:48,581.581 INFO    ] No update needed
[2026-06-22 02:59:48,583.583 INFO    ] Checking for camera pi updates...
[2026-06-22 02:59:48,618.618 INFO    ] 200
[2026-06-22 02:59:48,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 02:59:48,669.669 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 02:59:48,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 02:59:48,855.855 INFO    ] No camera update needed
[2026-06-22 02:59:48,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-22 02:59:48,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 02:59:48,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 02:59:48,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 02:59:50,923.923 INFO    ] ================================================
[2026-06-22 02:59:50,940.940 INFO    ] Launching Daemon at Mon Jun 22 02:59:50 IST 2026
[2026-06-22 02:59:50,951.951 INFO    ] ================================================
[2026-06-22 02:59:51,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 02:59:51
[2026-06-22 02:59:52,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 02:59:52,282.282 INFO    ] Initializing speech engine...
[2026-06-22 02:59:52,291.291 INFO    ] 2026-06-22 02:59:52
[2026-06-22 02:59:52,542.542 INFO    ] 2026-06-22 02:59:52
[2026-06-22 02:59:52,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 02:59:52,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 02:59:52,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 02:59:52,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 02:59:52,916.916 INFO    ] time= 22/06/2026 02:59:52
[2026-06-22 02:59:52,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 02:59:52,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-22 02:59:52,999.999 INFO    ] No existing commands found in stream
[2026-06-22 02:59:58,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 02:59:58,017.017 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-22 03:00:01,963.963 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-22 03:00:02,203.203 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM06202507 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d107b0>: Failed to establish a new connection: [Errno 111] Connection refused',))",)
[2026-06-22 03:00:02,424.424 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM06202507 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d107b0>: Failed to establish a new connection: [Errno 111] Connection refused',))
[2026-06-22 03:00:02,531.531 INFO    ] None
[2026-06-22 03:00:02,546.546 INFO    ] Checking for system updates...
[2026-06-22 03:00:03,132.132 INFO    ] 200
[2026-06-22 03:00:03,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:00:03,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:00:03,567.567 INFO    ] No update needed
[2026-06-22 03:00:03,570.570 INFO    ] Checking for camera pi updates...
[2026-06-22 03:00:03,829.829 INFO    ] 200
[2026-06-22 03:00:03,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:00:04,120.120 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:00:04,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:00:04,272.272 INFO    ] No camera update needed
[2026-06-22 03:00:04,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:00:04,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:00:04,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:00:04,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:00:06,530.530 INFO    ] ================================================
[2026-06-22 03:00:06,552.552 INFO    ] Launching Daemon at Mon Jun 22 03:00:06 IST 2026
[2026-06-22 03:00:06,569.569 INFO    ] ================================================
[2026-06-22 03:00:07,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:00:07
[2026-06-22 03:00:07,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:00:08,049.049 INFO    ] Initializing speech engine...
[2026-06-22 03:00:08,059.059 INFO    ] 2026-06-22 03:00:08
[2026-06-22 03:00:08,306.306 INFO    ] 2026-06-22 03:00:08
[2026-06-22 03:00:08,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:00:08,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:00:08,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:00:08,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:00:08,673.673 INFO    ] time= 22/06/2026 03:00:08
[2026-06-22 03:00:08,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:00:08,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:00:08,783.783 INFO    ] No existing commands found in stream
[2026-06-22 03:00:13,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:00:13,800.800 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-22 03:00:15,855.855 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:00:15,856.856 INFO    ] Checking for system updates...
[2026-06-22 03:00:15,877.877 INFO    ] 200
[2026-06-22 03:00:15,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:00:15,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:00:15,934.934 INFO    ] No update needed
[2026-06-22 03:00:15,937.937 INFO    ] Checking for camera pi updates...
[2026-06-22 03:00:15,972.972 INFO    ] 200
[2026-06-22 03:00:15,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:00:16,017.017 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:00:16,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:00:16,092.092 INFO    ] No camera update needed
[2026-06-22 03:00:16,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:00:16,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:00:16,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:00:16,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:00:18,151.151 INFO    ] ================================================
[2026-06-22 03:00:18,171.171 INFO    ] Launching Daemon at Mon Jun 22 03:00:18 IST 2026
[2026-06-22 03:00:18,181.181 INFO    ] ================================================
[2026-06-22 03:00:18,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:00:18
[2026-06-22 03:00:19,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:00:19,507.507 INFO    ] Initializing speech engine...
[2026-06-22 03:00:19,515.515 INFO    ] 2026-06-22 03:00:19
[2026-06-22 03:00:19,809.809 INFO    ] 2026-06-22 03:00:19
[2026-06-22 03:00:19,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:00:20,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:00:20,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:00:20,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:00:20,190.190 INFO    ] time= 22/06/2026 03:00:20
[2026-06-22 03:00:20,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:00:20,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:00:20,315.315 INFO    ] No existing commands found in stream
[2026-06-22 03:00:25,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:00:25,329.329 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-22 03:00:25,794.794 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:00:25,797.797 INFO    ] Checking for system updates...
[2026-06-22 03:00:25,833.833 INFO    ] 200
[2026-06-22 03:00:25,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:00:25,889.889 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:00:25,891.891 INFO    ] No update needed
[2026-06-22 03:00:25,894.894 INFO    ] Checking for camera pi updates...
[2026-06-22 03:00:25,928.928 INFO    ] 200
[2026-06-22 03:00:25,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:00:25,970.970 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:00:26,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:00:26,053.053 INFO    ] No camera update needed
[2026-06-22 03:00:26,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:00:26,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:00:26,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:00:26,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:00:28,109.109 INFO    ] ================================================
[2026-06-22 03:00:28,124.124 INFO    ] Launching Daemon at Mon Jun 22 03:00:28 IST 2026
[2026-06-22 03:00:28,135.135 INFO    ] ================================================
[2026-06-22 03:00:28,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:00:28
[2026-06-22 03:00:29,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:00:29,495.495 INFO    ] Initializing speech engine...
[2026-06-22 03:00:29,504.504 INFO    ] 2026-06-22 03:00:29
[2026-06-22 03:00:29,764.764 INFO    ] 2026-06-22 03:00:29
[2026-06-22 03:00:29,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:00:29,918.918 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-22 03:00:30,067.067 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-22 03:00:30,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:00:30,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:00:30,127.127 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-22 03:00:30,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:00:32,209.209 INFO    ] ================================================
[2026-06-22 03:00:32,226.226 INFO    ] Launching Daemon at Mon Jun 22 03:00:32 IST 2026
[2026-06-22 03:00:32,238.238 INFO    ] ================================================
[2026-06-22 03:00:32,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:00:32
[2026-06-22 03:00:33,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:00:33,749.749 INFO    ] Initializing speech engine...
[2026-06-22 03:00:33,768.768 INFO    ] 2026-06-22 03:00:33
[2026-06-22 03:00:34,025.025 INFO    ] 2026-06-22 03:00:34
[2026-06-22 03:00:34,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:00:34,188.188 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-22 03:00:34,293.293 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-22 03:00:34,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:00:34,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:00:34,396.396 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-22 03:00:34,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:00:36,470.470 INFO    ] ================================================
[2026-06-22 03:00:36,485.485 INFO    ] Launching Daemon at Mon Jun 22 03:00:36 IST 2026
[2026-06-22 03:00:36,495.495 INFO    ] ================================================
[2026-06-22 03:00:36,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:00:36
[2026-06-22 03:00:37,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:00:37,848.848 INFO    ] Initializing speech engine...
[2026-06-22 03:00:37,854.854 INFO    ] 2026-06-22 03:00:37
[2026-06-22 03:00:38,155.155 INFO    ] 2026-06-22 03:00:38
[2026-06-22 03:00:38,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:00:38,253.253 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-22 03:00:38,427.427 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-22 03:00:38,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:00:38,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:00:38,542.542 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-22 03:00:38,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:00:40,623.623 INFO    ] ================================================
[2026-06-22 03:00:40,639.639 INFO    ] Launching Daemon at Mon Jun 22 03:00:40 IST 2026
[2026-06-22 03:00:40,650.650 INFO    ] ================================================
[2026-06-22 03:00:41,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:00:41
[2026-06-22 03:00:42,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:00:42,322.322 INFO    ] Initializing speech engine...
[2026-06-22 03:00:42,330.330 INFO    ] 2026-06-22 03:00:42
[2026-06-22 03:00:42,649.649 INFO    ] 2026-06-22 03:00:42
[2026-06-22 03:00:42,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:00:45,927.927 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 113 connecting to live.vendingbuddy.in:23294. No route to host.
[2026-06-22 03:00:45,958.958 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-22 03:00:45,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:00:45,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:00:45,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:00:48,012.012 INFO    ] ================================================
[2026-06-22 03:00:48,027.027 INFO    ] Launching Daemon at Mon Jun 22 03:00:48 IST 2026
[2026-06-22 03:00:48,038.038 INFO    ] ================================================
[2026-06-22 03:00:48,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:00:48
[2026-06-22 03:00:49,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:00:49,466.466 INFO    ] Initializing speech engine...
[2026-06-22 03:00:49,486.486 INFO    ] 2026-06-22 03:00:49
[2026-06-22 03:00:49,764.764 INFO    ] 2026-06-22 03:00:49
[2026-06-22 03:00:49,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:00:49,862.862 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-22 03:00:50,031.031 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-22 03:00:50,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:00:50,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:00:50,150.150 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-22 03:00:50,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:00:52,226.226 INFO    ] ================================================
[2026-06-22 03:00:52,242.242 INFO    ] Launching Daemon at Mon Jun 22 03:00:52 IST 2026
[2026-06-22 03:00:52,252.252 INFO    ] ================================================
[2026-06-22 03:00:52,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:00:52
[2026-06-22 03:00:53,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:00:53,725.725 INFO    ] Initializing speech engine...
[2026-06-22 03:00:53,735.735 INFO    ] 2026-06-22 03:00:53
[2026-06-22 03:00:53,993.993 INFO    ] 2026-06-22 03:00:53
[2026-06-22 03:00:54,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:00:54,146.146 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-22 03:00:54,301.301 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-22 03:00:54,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:00:54,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:00:54,357.357 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-22 03:00:54,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:00:56,440.440 INFO    ] ================================================
[2026-06-22 03:00:56,456.456 INFO    ] Launching Daemon at Mon Jun 22 03:00:56 IST 2026
[2026-06-22 03:00:56,467.467 INFO    ] ================================================
[2026-06-22 03:00:56,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:00:56
[2026-06-22 03:00:57,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:00:57,849.849 INFO    ] Initializing speech engine...
[2026-06-22 03:00:57,859.859 INFO    ] 2026-06-22 03:00:57
[2026-06-22 03:00:58,109.109 INFO    ] 2026-06-22 03:00:58
[2026-06-22 03:00:58,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:01:03,204.204 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-06-22 03:01:03,236.236 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-22 03:01:03,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:01:03,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:01:03,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:01:05,296.296 INFO    ] ================================================
[2026-06-22 03:01:05,311.311 INFO    ] Launching Daemon at Mon Jun 22 03:01:05 IST 2026
[2026-06-22 03:01:05,321.321 INFO    ] ================================================
[2026-06-22 03:01:05,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:01:05
[2026-06-22 03:01:06,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:01:06,731.731 INFO    ] Initializing speech engine...
[2026-06-22 03:01:06,746.746 INFO    ] 2026-06-22 03:01:06
[2026-06-22 03:01:07,012.012 INFO    ] 2026-06-22 03:01:07
[2026-06-22 03:01:07,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:01:07,170.170 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-22 03:01:07,284.284 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-22 03:01:07,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:01:07,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:01:07,364.364 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-22 03:01:07,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:01:09,417.417 INFO    ] ================================================
[2026-06-22 03:01:09,433.433 INFO    ] Launching Daemon at Mon Jun 22 03:01:09 IST 2026
[2026-06-22 03:01:09,444.444 INFO    ] ================================================
[2026-06-22 03:01:10,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:01:10
[2026-06-22 03:01:10,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:01:10,914.914 INFO    ] Initializing speech engine...
[2026-06-22 03:01:10,931.931 INFO    ] 2026-06-22 03:01:10
[2026-06-22 03:01:11,222.222 INFO    ] 2026-06-22 03:01:11
[2026-06-22 03:01:11,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:01:11,321.321 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-22 03:01:11,493.493 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-22 03:01:11,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:01:11,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:01:11,613.613 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-22 03:01:11,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:01:13,687.687 INFO    ] ================================================
[2026-06-22 03:01:13,704.704 INFO    ] Launching Daemon at Mon Jun 22 03:01:13 IST 2026
[2026-06-22 03:01:13,715.715 INFO    ] ================================================
[2026-06-22 03:01:14,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:01:14
[2026-06-22 03:01:14,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:01:15,141.141 INFO    ] Initializing speech engine...
[2026-06-22 03:01:15,164.164 INFO    ] 2026-06-22 03:01:15
[2026-06-22 03:01:15,424.424 INFO    ] 2026-06-22 03:01:15
[2026-06-22 03:01:15,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:01:20,542.542 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-06-22 03:01:20,569.569 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-22 03:01:20,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:01:20,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:01:20,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:01:22,629.629 INFO    ] ================================================
[2026-06-22 03:01:22,645.645 INFO    ] Launching Daemon at Mon Jun 22 03:01:22 IST 2026
[2026-06-22 03:01:22,656.656 INFO    ] ================================================
[2026-06-22 03:01:23,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:01:23
[2026-06-22 03:01:23,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:01:24,247.247 INFO    ] Initializing speech engine...
[2026-06-22 03:01:24,266.266 INFO    ] 2026-06-22 03:01:24
[2026-06-22 03:01:24,545.545 INFO    ] 2026-06-22 03:01:24
[2026-06-22 03:01:24,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:01:24,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:01:24,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:01:24,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:01:24,991.991 INFO    ] time= 22/06/2026 03:01:24
[2026-06-22 03:01:25,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:01:25,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:01:25,167.167 INFO    ] No existing commands found in stream
[2026-06-22 03:01:30,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:01:30,183.183 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-22 03:01:32,893.893 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:01:32,897.897 INFO    ] Checking for system updates...
[2026-06-22 03:01:32,939.939 INFO    ] 200
[2026-06-22 03:01:32,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:01:32,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:01:32,998.998 INFO    ] No update needed
[2026-06-22 03:01:33,001.001 INFO    ] Checking for camera pi updates...
[2026-06-22 03:01:33,036.036 INFO    ] 200
[2026-06-22 03:01:33,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:01:33,084.084 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:01:33,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:01:33,143.143 INFO    ] No camera update needed
[2026-06-22 03:01:33,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:01:33,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:01:33,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:01:33,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:01:35,203.203 INFO    ] ================================================
[2026-06-22 03:01:35,219.219 INFO    ] Launching Daemon at Mon Jun 22 03:01:35 IST 2026
[2026-06-22 03:01:35,229.229 INFO    ] ================================================
[2026-06-22 03:01:35,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:01:35
[2026-06-22 03:01:36,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:01:36,682.682 INFO    ] Initializing speech engine...
[2026-06-22 03:01:36,690.690 INFO    ] 2026-06-22 03:01:36
[2026-06-22 03:01:37,010.010 INFO    ] 2026-06-22 03:01:36
[2026-06-22 03:01:37,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:01:37,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:01:37,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:01:37,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:01:37,467.467 INFO    ] time= 22/06/2026 03:01:37
[2026-06-22 03:01:37,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:01:37,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:01:37,636.636 INFO    ] No existing commands found in stream
[2026-06-22 03:01:42,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:01:42,651.651 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-22 03:01:44,752.752 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:01:44,756.756 INFO    ] Checking for system updates...
[2026-06-22 03:01:44,793.793 INFO    ] 200
[2026-06-22 03:01:44,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:01:44,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:01:44,852.852 INFO    ] No update needed
[2026-06-22 03:01:44,855.855 INFO    ] Checking for camera pi updates...
[2026-06-22 03:01:44,890.890 INFO    ] 200
[2026-06-22 03:01:44,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:01:44,935.935 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:01:45,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:01:45,009.009 INFO    ] No camera update needed
[2026-06-22 03:01:45,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:01:45,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:01:45,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:01:45,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:01:47,075.075 INFO    ] ================================================
[2026-06-22 03:01:47,092.092 INFO    ] Launching Daemon at Mon Jun 22 03:01:47 IST 2026
[2026-06-22 03:01:47,104.104 INFO    ] ================================================
[2026-06-22 03:01:47,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:01:47
[2026-06-22 03:01:48,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:01:48,613.613 INFO    ] Initializing speech engine...
[2026-06-22 03:01:48,631.631 INFO    ] 2026-06-22 03:01:48
[2026-06-22 03:01:48,879.879 INFO    ] 2026-06-22 03:01:48
[2026-06-22 03:01:48,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:01:49,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:01:49,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:01:49,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:01:49,259.259 INFO    ] time= 22/06/2026 03:01:49
[2026-06-22 03:01:49,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:01:49,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:01:49,426.426 INFO    ] No existing commands found in stream
[2026-06-22 03:01:54,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:01:54,454.454 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-22 03:01:54,941.941 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:01:54,944.944 INFO    ] Checking for system updates...
[2026-06-22 03:01:54,980.980 INFO    ] 200
[2026-06-22 03:01:54,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:01:55,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:01:55,037.037 INFO    ] No update needed
[2026-06-22 03:01:55,040.040 INFO    ] Checking for camera pi updates...
[2026-06-22 03:01:55,073.073 INFO    ] 200
[2026-06-22 03:01:55,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:01:55,116.116 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:01:55,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:01:55,197.197 INFO    ] No camera update needed
[2026-06-22 03:01:55,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:01:55,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:01:55,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:01:55,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:01:57,253.253 INFO    ] ================================================
[2026-06-22 03:01:57,268.268 INFO    ] Launching Daemon at Mon Jun 22 03:01:57 IST 2026
[2026-06-22 03:01:57,279.279 INFO    ] ================================================
[2026-06-22 03:01:57,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:01:57
[2026-06-22 03:01:58,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:01:58,708.708 INFO    ] Initializing speech engine...
[2026-06-22 03:01:58,717.717 INFO    ] 2026-06-22 03:01:58
[2026-06-22 03:01:59,034.034 INFO    ] 2026-06-22 03:01:58
[2026-06-22 03:01:59,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:01:59,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:01:59,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:01:59,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:01:59,536.536 INFO    ] time= 22/06/2026 03:01:59
[2026-06-22 03:01:59,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:01:59,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:01:59,679.679 INFO    ] No existing commands found in stream
[2026-06-22 03:02:04,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:02:04,710.710 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-22 03:02:06,028.028 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:02:06,031.031 INFO    ] Checking for system updates...
[2026-06-22 03:02:06,069.069 INFO    ] 200
[2026-06-22 03:02:06,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:02:06,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:02:06,130.130 INFO    ] No update needed
[2026-06-22 03:02:06,133.133 INFO    ] Checking for camera pi updates...
[2026-06-22 03:02:06,172.172 INFO    ] 200
[2026-06-22 03:02:06,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:02:06,219.219 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:02:06,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:02:06,307.307 INFO    ] No camera update needed
[2026-06-22 03:02:06,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:02:06,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:02:06,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:02:06,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:02:08,367.367 INFO    ] ================================================
[2026-06-22 03:02:08,382.382 INFO    ] Launching Daemon at Mon Jun 22 03:02:08 IST 2026
[2026-06-22 03:02:08,393.393 INFO    ] ================================================
[2026-06-22 03:02:08,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:02:08
[2026-06-22 03:02:09,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:02:09,886.886 INFO    ] Initializing speech engine...
[2026-06-22 03:02:09,900.900 INFO    ] 2026-06-22 03:02:09
[2026-06-22 03:02:10,189.189 INFO    ] 2026-06-22 03:02:10
[2026-06-22 03:02:10,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:02:10,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:02:10,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:02:10,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:02:10,543.543 INFO    ] time= 22/06/2026 03:02:10
[2026-06-22 03:02:10,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:02:10,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:02:10,624.624 INFO    ] No existing commands found in stream
[2026-06-22 03:02:15,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:02:15,637.637 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-22 03:02:19,916.916 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:02:19,917.917 INFO    ] Checking for system updates...
[2026-06-22 03:02:19,939.939 INFO    ] 200
[2026-06-22 03:02:19,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:02:19,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:02:19,972.972 INFO    ] No update needed
[2026-06-22 03:02:19,973.973 INFO    ] Checking for camera pi updates...
[2026-06-22 03:02:19,999.999 INFO    ] 200
[2026-06-22 03:02:20,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:02:20,041.041 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:02:20,117.117 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:02:20,119.119 INFO    ] No camera update needed
[2026-06-22 03:02:20,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:02:20,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:02:20,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:02:20,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:02:22,177.177 INFO    ] ================================================
[2026-06-22 03:02:22,192.192 INFO    ] Launching Daemon at Mon Jun 22 03:02:22 IST 2026
[2026-06-22 03:02:22,203.203 INFO    ] ================================================
[2026-06-22 03:02:22,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:02:22
[2026-06-22 03:02:23,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:02:23,523.523 INFO    ] Initializing speech engine...
[2026-06-22 03:02:23,531.531 INFO    ] 2026-06-22 03:02:23
[2026-06-22 03:02:23,825.825 INFO    ] 2026-06-22 03:02:23
[2026-06-22 03:02:23,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:02:24,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:02:24,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:02:24,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:02:24,177.177 INFO    ] time= 22/06/2026 03:02:24
[2026-06-22 03:02:24,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:02:24,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:02:24,290.290 INFO    ] No existing commands found in stream
[2026-06-22 03:02:29,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:02:29,305.305 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-22 03:02:31,636.636 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:02:31,639.639 INFO    ] Checking for system updates...
[2026-06-22 03:02:31,676.676 INFO    ] 200
[2026-06-22 03:02:31,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:02:31,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:02:31,733.733 INFO    ] No update needed
[2026-06-22 03:02:31,736.736 INFO    ] Checking for camera pi updates...
[2026-06-22 03:02:31,770.770 INFO    ] 200
[2026-06-22 03:02:31,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:02:31,813.813 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:02:31,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:02:31,869.869 INFO    ] No camera update needed
[2026-06-22 03:02:31,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:02:31,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:02:31,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:02:31,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:02:33,926.926 INFO    ] ================================================
[2026-06-22 03:02:33,942.942 INFO    ] Launching Daemon at Mon Jun 22 03:02:33 IST 2026
[2026-06-22 03:02:33,953.953 INFO    ] ================================================
[2026-06-22 03:02:34,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:02:34
[2026-06-22 03:02:35,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:02:35,415.415 INFO    ] Initializing speech engine...
[2026-06-22 03:02:35,425.425 INFO    ] 2026-06-22 03:02:35
[2026-06-22 03:02:35,687.687 INFO    ] 2026-06-22 03:02:35
[2026-06-22 03:02:35,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:02:35,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:02:35,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:02:36,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:02:36,040.040 INFO    ] time= 22/06/2026 03:02:36
[2026-06-22 03:02:36,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:02:36,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:02:36,154.154 INFO    ] No existing commands found in stream
[2026-06-22 03:02:41,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:02:41,169.169 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-22 03:02:42,622.622 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:02:42,625.625 INFO    ] Checking for system updates...
[2026-06-22 03:02:42,662.662 INFO    ] 200
[2026-06-22 03:02:42,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:02:42,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:02:42,722.722 INFO    ] No update needed
[2026-06-22 03:02:42,725.725 INFO    ] Checking for camera pi updates...
[2026-06-22 03:02:42,761.761 INFO    ] 200
[2026-06-22 03:02:42,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:02:42,806.806 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:02:42,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:02:42,862.862 INFO    ] No camera update needed
[2026-06-22 03:02:42,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:02:42,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:02:42,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:02:42,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:02:44,921.921 INFO    ] ================================================
[2026-06-22 03:02:44,936.936 INFO    ] Launching Daemon at Mon Jun 22 03:02:44 IST 2026
[2026-06-22 03:02:44,947.947 INFO    ] ================================================
[2026-06-22 03:02:45,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:02:45
[2026-06-22 03:02:46,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:02:46,455.455 INFO    ] Initializing speech engine...
[2026-06-22 03:02:46,466.466 INFO    ] 2026-06-22 03:02:46
[2026-06-22 03:02:46,742.742 INFO    ] 2026-06-22 03:02:46
[2026-06-22 03:02:46,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:02:47,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:02:47,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:02:47,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:02:47,220.220 INFO    ] time= 22/06/2026 03:02:47
[2026-06-22 03:02:47,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:02:47,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:02:47,372.372 INFO    ] No existing commands found in stream
[2026-06-22 03:02:52,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:02:52,388.388 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-22 03:02:56,053.053 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:02:56,055.055 INFO    ] Checking for system updates...
[2026-06-22 03:02:56,076.076 INFO    ] 200
[2026-06-22 03:02:56,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:02:56,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:02:56,111.111 INFO    ] No update needed
[2026-06-22 03:02:56,114.114 INFO    ] Checking for camera pi updates...
[2026-06-22 03:02:56,148.148 INFO    ] 200
[2026-06-22 03:02:56,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:02:56,193.193 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:02:56,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:02:56,268.268 INFO    ] No camera update needed
[2026-06-22 03:02:56,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:02:56,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:02:56,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:02:56,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:02:58,328.328 INFO    ] ================================================
[2026-06-22 03:02:58,343.343 INFO    ] Launching Daemon at Mon Jun 22 03:02:58 IST 2026
[2026-06-22 03:02:58,353.353 INFO    ] ================================================
[2026-06-22 03:02:58,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:02:58
[2026-06-22 03:02:59,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:02:59,721.721 INFO    ] Initializing speech engine...
[2026-06-22 03:02:59,734.734 INFO    ] 2026-06-22 03:02:59
[2026-06-22 03:03:00,012.012 INFO    ] 2026-06-22 03:02:59
[2026-06-22 03:03:00,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:03:00,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:03:00,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:03:00,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:03:00,471.471 INFO    ] time= 22/06/2026 03:03:00
[2026-06-22 03:03:00,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:03:00,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:03:00,619.619 INFO    ] No existing commands found in stream
[2026-06-22 03:03:05,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:03:05,634.634 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-22 03:03:09,932.932 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:03:09,934.934 INFO    ] Checking for system updates...
[2026-06-22 03:03:09,971.971 INFO    ] 200
[2026-06-22 03:03:09,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:03:10,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:03:10,032.032 INFO    ] No update needed
[2026-06-22 03:03:10,035.035 INFO    ] Checking for camera pi updates...
[2026-06-22 03:03:10,070.070 INFO    ] 200
[2026-06-22 03:03:10,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:03:10,113.113 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:03:10,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:03:10,163.163 INFO    ] No camera update needed
[2026-06-22 03:03:10,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:03:10,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:03:10,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:03:10,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:03:12,223.223 INFO    ] ================================================
[2026-06-22 03:03:12,239.239 INFO    ] Launching Daemon at Mon Jun 22 03:03:12 IST 2026
[2026-06-22 03:03:12,250.250 INFO    ] ================================================
[2026-06-22 03:03:12,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:03:12
[2026-06-22 03:03:13,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:03:13,580.580 INFO    ] Initializing speech engine...
[2026-06-22 03:03:13,589.589 INFO    ] 2026-06-22 03:03:13
[2026-06-22 03:03:13,849.849 INFO    ] 2026-06-22 03:03:13
[2026-06-22 03:03:13,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:03:14,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:03:14,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:03:14,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:03:14,315.315 INFO    ] time= 22/06/2026 03:03:14
[2026-06-22 03:03:14,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:03:14,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:03:14,456.456 INFO    ] No existing commands found in stream
[2026-06-22 03:03:19,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:03:19,471.471 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-22 03:03:21,415.415 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:03:21,418.418 INFO    ] Checking for system updates...
[2026-06-22 03:03:21,454.454 INFO    ] 200
[2026-06-22 03:03:21,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:03:21,516.516 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:03:21,519.519 INFO    ] No update needed
[2026-06-22 03:03:21,521.521 INFO    ] Checking for camera pi updates...
[2026-06-22 03:03:21,555.555 INFO    ] 200
[2026-06-22 03:03:21,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:03:21,598.598 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:03:21,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:03:21,652.652 INFO    ] No camera update needed
[2026-06-22 03:03:21,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:03:21,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:03:21,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:03:21,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:03:23,709.709 INFO    ] ================================================
[2026-06-22 03:03:23,725.725 INFO    ] Launching Daemon at Mon Jun 22 03:03:23 IST 2026
[2026-06-22 03:03:23,735.735 INFO    ] ================================================
[2026-06-22 03:03:24,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:03:24
[2026-06-22 03:03:24,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:03:25,186.186 INFO    ] Initializing speech engine...
[2026-06-22 03:03:25,191.191 INFO    ] 2026-06-22 03:03:25
[2026-06-22 03:03:25,453.453 INFO    ] 2026-06-22 03:03:25
[2026-06-22 03:03:25,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:03:25,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:03:25,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:03:25,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:03:25,919.919 INFO    ] time= 22/06/2026 03:03:25
[2026-06-22 03:03:25,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:03:26,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:03:26,057.057 INFO    ] No existing commands found in stream
[2026-06-22 03:03:31,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:03:31,072.072 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-22 03:03:35,193.193 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:03:35,196.196 INFO    ] Checking for system updates...
[2026-06-22 03:03:35,232.232 INFO    ] 200
[2026-06-22 03:03:35,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:03:35,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:03:35,290.290 INFO    ] No update needed
[2026-06-22 03:03:35,292.292 INFO    ] Checking for camera pi updates...
[2026-06-22 03:03:35,330.330 INFO    ] 200
[2026-06-22 03:03:35,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:03:35,374.374 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:03:35,452.452 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:03:35,455.455 INFO    ] No camera update needed
[2026-06-22 03:03:35,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:03:35,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:03:35,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:03:35,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:03:37,511.511 INFO    ] ================================================
[2026-06-22 03:03:37,527.527 INFO    ] Launching Daemon at Mon Jun 22 03:03:37 IST 2026
[2026-06-22 03:03:37,538.538 INFO    ] ================================================
[2026-06-22 03:03:38,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:03:38
[2026-06-22 03:03:38,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:03:38,876.876 INFO    ] Initializing speech engine...
[2026-06-22 03:03:38,902.902 INFO    ] 2026-06-22 03:03:38
[2026-06-22 03:03:39,180.180 INFO    ] 2026-06-22 03:03:39
[2026-06-22 03:03:39,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:03:39,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:03:39,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:03:39,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:03:39,610.610 INFO    ] time= 22/06/2026 03:03:39
[2026-06-22 03:03:39,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:03:39,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:03:39,766.766 INFO    ] No existing commands found in stream
[2026-06-22 03:03:44,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:03:44,799.799 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-22 03:03:46,802.802 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:03:46,805.805 INFO    ] Checking for system updates...
[2026-06-22 03:03:46,846.846 INFO    ] 200
[2026-06-22 03:03:46,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:03:46,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:03:46,903.903 INFO    ] No update needed
[2026-06-22 03:03:46,905.905 INFO    ] Checking for camera pi updates...
[2026-06-22 03:03:46,939.939 INFO    ] 200
[2026-06-22 03:03:46,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:03:46,983.983 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:03:47,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:03:47,032.032 INFO    ] No camera update needed
[2026-06-22 03:03:47,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:03:47,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:03:47,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:03:47,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:03:49,088.088 INFO    ] ================================================
[2026-06-22 03:03:49,104.104 INFO    ] Launching Daemon at Mon Jun 22 03:03:49 IST 2026
[2026-06-22 03:03:49,115.115 INFO    ] ================================================
[2026-06-22 03:03:49,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:03:49
[2026-06-22 03:03:50,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:03:50,680.680 INFO    ] Initializing speech engine...
[2026-06-22 03:03:50,684.684 INFO    ] 2026-06-22 03:03:50
[2026-06-22 03:03:50,954.954 INFO    ] 2026-06-22 03:03:50
[2026-06-22 03:03:51,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:03:51,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:03:51,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:03:51,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:03:51,436.436 INFO    ] time= 22/06/2026 03:03:51
[2026-06-22 03:03:51,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:03:51,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:03:51,577.577 INFO    ] No existing commands found in stream
[2026-06-22 03:03:56,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:03:56,593.593 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-22 03:03:58,580.580 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:03:58,582.582 INFO    ] Checking for system updates...
[2026-06-22 03:03:58,605.605 INFO    ] 200
[2026-06-22 03:03:58,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:03:58,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:03:58,641.641 INFO    ] No update needed
[2026-06-22 03:03:58,643.643 INFO    ] Checking for camera pi updates...
[2026-06-22 03:03:58,664.664 INFO    ] 200
[2026-06-22 03:03:58,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:03:58,708.708 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:03:58,783.783 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:03:58,786.786 INFO    ] No camera update needed
[2026-06-22 03:03:58,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:03:58,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:03:58,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:03:58,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:04:00,841.841 INFO    ] ================================================
[2026-06-22 03:04:00,856.856 INFO    ] Launching Daemon at Mon Jun 22 03:04:00 IST 2026
[2026-06-22 03:04:00,867.867 INFO    ] ================================================
[2026-06-22 03:04:01,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:04:01
[2026-06-22 03:04:02,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:04:02,660.660 INFO    ] Initializing speech engine...
[2026-06-22 03:04:02,672.672 INFO    ] 2026-06-22 03:04:02
[2026-06-22 03:04:02,952.952 INFO    ] 2026-06-22 03:04:02
[2026-06-22 03:04:03,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:04:03,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:04:03,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:04:03,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:04:03,467.467 INFO    ] time= 22/06/2026 03:04:03
[2026-06-22 03:04:03,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:04:03,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:04:03,638.638 INFO    ] No existing commands found in stream
[2026-06-22 03:04:08,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:04:08,654.654 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-22 03:04:11,697.697 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:04:11,699.699 INFO    ] Checking for system updates...
[2026-06-22 03:04:11,720.720 INFO    ] 200
[2026-06-22 03:04:11,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:04:11,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:04:11,752.752 INFO    ] No update needed
[2026-06-22 03:04:11,754.754 INFO    ] Checking for camera pi updates...
[2026-06-22 03:04:11,773.773 INFO    ] 200
[2026-06-22 03:04:11,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:04:11,822.822 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:04:11,899.899 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:04:11,902.902 INFO    ] No camera update needed
[2026-06-22 03:04:11,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:04:11,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:04:11,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:04:11,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:04:13,957.957 INFO    ] ================================================
[2026-06-22 03:04:13,972.972 INFO    ] Launching Daemon at Mon Jun 22 03:04:13 IST 2026
[2026-06-22 03:04:13,984.984 INFO    ] ================================================
[2026-06-22 03:04:14,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:04:14
[2026-06-22 03:04:15,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:04:15,430.430 INFO    ] Initializing speech engine...
[2026-06-22 03:04:15,450.450 INFO    ] 2026-06-22 03:04:15
[2026-06-22 03:04:15,714.714 INFO    ] 2026-06-22 03:04:15
[2026-06-22 03:04:15,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:04:16,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:04:16,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:04:16,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:04:16,490.490 INFO    ] time= 22/06/2026 03:04:16
[2026-06-22 03:04:16,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:04:16,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:04:16,691.691 INFO    ] No existing commands found in stream
[2026-06-22 03:04:21,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:04:21,724.724 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-22 03:04:22,889.889 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:04:22,890.890 INFO    ] Checking for system updates...
[2026-06-22 03:04:22,911.911 INFO    ] 200
[2026-06-22 03:04:22,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:04:22,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:04:22,944.944 INFO    ] No update needed
[2026-06-22 03:04:22,945.945 INFO    ] Checking for camera pi updates...
[2026-06-22 03:04:22,966.966 INFO    ] 200
[2026-06-22 03:04:22,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:04:23,004.004 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:04:23,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:04:23,078.078 INFO    ] No camera update needed
[2026-06-22 03:04:23,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:04:23,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:04:23,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:04:23,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:04:25,135.135 INFO    ] ================================================
[2026-06-22 03:04:25,151.151 INFO    ] Launching Daemon at Mon Jun 22 03:04:25 IST 2026
[2026-06-22 03:04:25,162.162 INFO    ] ================================================
[2026-06-22 03:04:25,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:04:25
[2026-06-22 03:04:26,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:04:26,621.621 INFO    ] Initializing speech engine...
[2026-06-22 03:04:26,635.635 INFO    ] 2026-06-22 03:04:26
[2026-06-22 03:04:26,915.915 INFO    ] 2026-06-22 03:04:26
[2026-06-22 03:04:27,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:04:27,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:04:27,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:04:27,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:04:27,372.372 INFO    ] time= 22/06/2026 03:04:27
[2026-06-22 03:04:27,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:04:27,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:04:27,506.506 INFO    ] No existing commands found in stream
[2026-06-22 03:04:32,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:04:32,521.521 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-22 03:04:36,083.083 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:04:36,086.086 INFO    ] Checking for system updates...
[2026-06-22 03:04:36,123.123 INFO    ] 200
[2026-06-22 03:04:36,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:04:36,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:04:36,183.183 INFO    ] No update needed
[2026-06-22 03:04:36,185.185 INFO    ] Checking for camera pi updates...
[2026-06-22 03:04:36,219.219 INFO    ] 200
[2026-06-22 03:04:36,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:04:36,266.266 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:04:36,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:04:36,343.343 INFO    ] No camera update needed
[2026-06-22 03:04:36,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:04:36,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:04:36,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:04:36,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:04:38,399.399 INFO    ] ================================================
[2026-06-22 03:04:38,414.414 INFO    ] Launching Daemon at Mon Jun 22 03:04:38 IST 2026
[2026-06-22 03:04:38,426.426 INFO    ] ================================================
[2026-06-22 03:04:38,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:04:38
[2026-06-22 03:04:39,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:04:39,800.800 INFO    ] Initializing speech engine...
[2026-06-22 03:04:39,810.810 INFO    ] 2026-06-22 03:04:39
[2026-06-22 03:04:40,074.074 INFO    ] 2026-06-22 03:04:40
[2026-06-22 03:04:40,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:04:40,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:04:40,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:04:40,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:04:40,395.395 INFO    ] time= 22/06/2026 03:04:40
[2026-06-22 03:04:40,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:04:40,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:04:40,506.506 INFO    ] No existing commands found in stream
[2026-06-22 03:04:45,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:04:45,524.524 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-22 03:04:47,749.749 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:04:47,752.752 INFO    ] Checking for system updates...
[2026-06-22 03:04:47,793.793 INFO    ] 200
[2026-06-22 03:04:47,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:04:47,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:04:47,869.869 INFO    ] No update needed
[2026-06-22 03:04:47,871.871 INFO    ] Checking for camera pi updates...
[2026-06-22 03:04:47,930.930 INFO    ] 200
[2026-06-22 03:04:47,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:04:47,978.978 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:04:48,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:04:48,074.074 INFO    ] No camera update needed
[2026-06-22 03:04:48,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:04:48,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:04:48,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:04:48,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:04:50,134.134 INFO    ] ================================================
[2026-06-22 03:04:50,150.150 INFO    ] Launching Daemon at Mon Jun 22 03:04:50 IST 2026
[2026-06-22 03:04:50,162.162 INFO    ] ================================================
[2026-06-22 03:04:50,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:04:50
[2026-06-22 03:04:51,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:04:51,487.487 INFO    ] Initializing speech engine...
[2026-06-22 03:04:51,502.502 INFO    ] 2026-06-22 03:04:51
[2026-06-22 03:04:51,769.769 INFO    ] 2026-06-22 03:04:51
[2026-06-22 03:04:51,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:04:51,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:04:51,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:04:52,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:04:52,126.126 INFO    ] time= 22/06/2026 03:04:52
[2026-06-22 03:04:52,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:04:52,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:04:52,222.222 INFO    ] No existing commands found in stream
[2026-06-22 03:04:57,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:04:57,238.238 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-22 03:05:01,525.525 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:05:01,526.526 INFO    ] Checking for system updates...
[2026-06-22 03:05:01,549.549 INFO    ] 200
[2026-06-22 03:05:01,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:05:01,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:05:01,591.591 INFO    ] No update needed
[2026-06-22 03:05:01,594.594 INFO    ] Checking for camera pi updates...
[2026-06-22 03:05:01,698.698 INFO    ] 200
[2026-06-22 03:05:01,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:05:01,885.885 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:05:01,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:05:01,974.974 INFO    ] No camera update needed
[2026-06-22 03:05:01,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:05:01,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:05:01,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:05:02,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:05:04,059.059 INFO    ] ================================================
[2026-06-22 03:05:04,075.075 INFO    ] Launching Daemon at Mon Jun 22 03:05:04 IST 2026
[2026-06-22 03:05:04,086.086 INFO    ] ================================================
[2026-06-22 03:05:04,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:05:04
[2026-06-22 03:05:05,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:05:05,562.562 INFO    ] Initializing speech engine...
[2026-06-22 03:05:05,568.568 INFO    ] 2026-06-22 03:05:05
[2026-06-22 03:05:05,820.820 INFO    ] 2026-06-22 03:05:05
[2026-06-22 03:05:05,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:05:06,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:05:06,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:05:06,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:05:06,269.269 INFO    ] time= 22/06/2026 03:05:06
[2026-06-22 03:05:06,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:05:06,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:05:06,438.438 INFO    ] No existing commands found in stream
[2026-06-22 03:05:11,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:05:11,457.457 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-22 03:05:12,159.159 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:05:12,161.161 INFO    ] Checking for system updates...
[2026-06-22 03:05:12,198.198 INFO    ] 200
[2026-06-22 03:05:12,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:05:12,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:05:12,263.263 INFO    ] No update needed
[2026-06-22 03:05:12,266.266 INFO    ] Checking for camera pi updates...
[2026-06-22 03:05:12,300.300 INFO    ] 200
[2026-06-22 03:05:12,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:05:12,343.343 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:05:12,418.418 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:05:12,420.420 INFO    ] No camera update needed
[2026-06-22 03:05:12,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:05:12,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:05:12,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:05:12,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:05:14,476.476 INFO    ] ================================================
[2026-06-22 03:05:14,492.492 INFO    ] Launching Daemon at Mon Jun 22 03:05:14 IST 2026
[2026-06-22 03:05:14,504.504 INFO    ] ================================================
[2026-06-22 03:05:14,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:05:14
[2026-06-22 03:05:15,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:05:15,845.845 INFO    ] Initializing speech engine...
[2026-06-22 03:05:15,855.855 INFO    ] 2026-06-22 03:05:15
[2026-06-22 03:05:16,115.115 INFO    ] 2026-06-22 03:05:16
[2026-06-22 03:05:16,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:05:16,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:05:16,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:05:16,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:05:16,593.593 INFO    ] time= 22/06/2026 03:05:16
[2026-06-22 03:05:16,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:05:16,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:05:16,726.726 INFO    ] No existing commands found in stream
[2026-06-22 03:05:21,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:05:21,741.741 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-22 03:05:25,346.346 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:05:25,348.348 INFO    ] Checking for system updates...
[2026-06-22 03:05:25,384.384 INFO    ] 200
[2026-06-22 03:05:25,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:05:25,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:05:25,453.453 INFO    ] No update needed
[2026-06-22 03:05:25,455.455 INFO    ] Checking for camera pi updates...
[2026-06-22 03:05:25,489.489 INFO    ] 200
[2026-06-22 03:05:25,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:05:25,538.538 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:05:25,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:05:25,592.592 INFO    ] No camera update needed
[2026-06-22 03:05:25,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:05:25,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:05:25,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:05:25,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:05:27,648.648 INFO    ] ================================================
[2026-06-22 03:05:27,664.664 INFO    ] Launching Daemon at Mon Jun 22 03:05:27 IST 2026
[2026-06-22 03:05:27,675.675 INFO    ] ================================================
[2026-06-22 03:05:28,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:05:28
[2026-06-22 03:05:28,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:05:29,202.202 INFO    ] Initializing speech engine...
[2026-06-22 03:05:29,209.209 INFO    ] 2026-06-22 03:05:29
[2026-06-22 03:05:29,474.474 INFO    ] 2026-06-22 03:05:29
[2026-06-22 03:05:29,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:05:29,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:05:29,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:05:29,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:05:29,866.866 INFO    ] time= 22/06/2026 03:05:29
[2026-06-22 03:05:29,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:05:29,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:05:30,047.047 INFO    ] No existing commands found in stream
[2026-06-22 03:05:35,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:05:35,079.079 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-22 03:05:37,830.830 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:05:37,833.833 INFO    ] Checking for system updates...
[2026-06-22 03:05:37,870.870 INFO    ] 200
[2026-06-22 03:05:37,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:05:37,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:05:37,930.930 INFO    ] No update needed
[2026-06-22 03:05:37,933.933 INFO    ] Checking for camera pi updates...
[2026-06-22 03:05:37,967.967 INFO    ] 200
[2026-06-22 03:05:37,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:05:38,012.012 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:05:38,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:05:38,193.193 INFO    ] No camera update needed
[2026-06-22 03:05:38,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:05:38,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:05:38,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:05:38,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:05:40,255.255 INFO    ] ================================================
[2026-06-22 03:05:40,271.271 INFO    ] Launching Daemon at Mon Jun 22 03:05:40 IST 2026
[2026-06-22 03:05:40,282.282 INFO    ] ================================================
[2026-06-22 03:05:40,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:05:40
[2026-06-22 03:05:41,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:05:41,706.706 INFO    ] Initializing speech engine...
[2026-06-22 03:05:41,731.731 INFO    ] 2026-06-22 03:05:41
[2026-06-22 03:05:42,006.006 INFO    ] 2026-06-22 03:05:41
[2026-06-22 03:05:42,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:05:42,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:05:42,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:05:42,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:05:42,357.357 INFO    ] time= 22/06/2026 03:05:42
[2026-06-22 03:05:42,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:05:42,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:05:42,431.431 INFO    ] No existing commands found in stream
[2026-06-22 03:05:47,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:05:47,447.447 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-22 03:05:51,048.048 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:05:51,051.051 INFO    ] Checking for system updates...
[2026-06-22 03:05:51,087.087 INFO    ] 200
[2026-06-22 03:05:51,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:05:51,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:05:51,151.151 INFO    ] No update needed
[2026-06-22 03:05:51,153.153 INFO    ] Checking for camera pi updates...
[2026-06-22 03:05:51,190.190 INFO    ] 200
[2026-06-22 03:05:51,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:05:51,233.233 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:05:51,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:05:51,315.315 INFO    ] No camera update needed
[2026-06-22 03:05:51,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:05:51,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:05:51,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:05:51,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:05:53,370.370 INFO    ] ================================================
[2026-06-22 03:05:53,387.387 INFO    ] Launching Daemon at Mon Jun 22 03:05:53 IST 2026
[2026-06-22 03:05:53,398.398 INFO    ] ================================================
[2026-06-22 03:05:53,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:05:53
[2026-06-22 03:05:54,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:05:54,802.802 INFO    ] Initializing speech engine...
[2026-06-22 03:05:54,811.811 INFO    ] 2026-06-22 03:05:54
[2026-06-22 03:05:55,088.088 INFO    ] 2026-06-22 03:05:55
[2026-06-22 03:05:55,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:05:55,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:05:55,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:05:55,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:05:55,467.467 INFO    ] time= 22/06/2026 03:05:55
[2026-06-22 03:05:55,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:05:55,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:05:55,544.544 INFO    ] No existing commands found in stream
[2026-06-22 03:06:00,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:06:00,559.559 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-22 03:06:02,860.860 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:06:02,863.863 INFO    ] Checking for system updates...
[2026-06-22 03:06:02,908.908 INFO    ] 200
[2026-06-22 03:06:02,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:06:02,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:06:02,978.978 INFO    ] No update needed
[2026-06-22 03:06:02,981.981 INFO    ] Checking for camera pi updates...
[2026-06-22 03:06:03,027.027 INFO    ] 200
[2026-06-22 03:06:03,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:06:03,080.080 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:06:03,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:06:03,167.167 INFO    ] No camera update needed
[2026-06-22 03:06:03,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:06:03,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:06:03,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:06:03,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:06:05,231.231 INFO    ] ================================================
[2026-06-22 03:06:05,248.248 INFO    ] Launching Daemon at Mon Jun 22 03:06:05 IST 2026
[2026-06-22 03:06:05,260.260 INFO    ] ================================================
[2026-06-22 03:06:05,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:06:05
[2026-06-22 03:06:06,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:06:06,909.909 INFO    ] Initializing speech engine...
[2026-06-22 03:06:06,920.920 INFO    ] 2026-06-22 03:06:06
[2026-06-22 03:06:07,190.190 INFO    ] 2026-06-22 03:06:07
[2026-06-22 03:06:07,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:06:07,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:06:07,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:06:07,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:06:07,677.677 INFO    ] time= 22/06/2026 03:06:07
[2026-06-22 03:06:07,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:06:07,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:06:07,823.823 INFO    ] No existing commands found in stream
[2026-06-22 03:06:12,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:06:12,852.852 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-22 03:06:14,374.374 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:06:14,377.377 INFO    ] Checking for system updates...
[2026-06-22 03:06:14,414.414 INFO    ] 200
[2026-06-22 03:06:14,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:06:14,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:06:14,480.480 INFO    ] No update needed
[2026-06-22 03:06:14,482.482 INFO    ] Checking for camera pi updates...
[2026-06-22 03:06:14,524.524 INFO    ] 200
[2026-06-22 03:06:14,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:06:14,578.578 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:06:14,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:06:14,652.652 INFO    ] No camera update needed
[2026-06-22 03:06:14,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:06:14,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:06:14,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:06:14,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:06:16,711.711 INFO    ] ================================================
[2026-06-22 03:06:16,727.727 INFO    ] Launching Daemon at Mon Jun 22 03:06:16 IST 2026
[2026-06-22 03:06:16,738.738 INFO    ] ================================================
[2026-06-22 03:06:17,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:06:17
[2026-06-22 03:06:17,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:06:18,073.073 INFO    ] Initializing speech engine...
[2026-06-22 03:06:18,082.082 INFO    ] 2026-06-22 03:06:18
[2026-06-22 03:06:18,332.332 INFO    ] 2026-06-22 03:06:18
[2026-06-22 03:06:18,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:06:18,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:06:18,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:06:18,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:06:18,709.709 INFO    ] time= 22/06/2026 03:06:18
[2026-06-22 03:06:18,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:06:18,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:06:18,869.869 INFO    ] No existing commands found in stream
[2026-06-22 03:06:23,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:06:23,902.902 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-22 03:06:25,644.644 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:06:25,647.647 INFO    ] Checking for system updates...
[2026-06-22 03:06:25,683.683 INFO    ] 200
[2026-06-22 03:06:25,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:06:25,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:06:25,740.740 INFO    ] No update needed
[2026-06-22 03:06:25,742.742 INFO    ] Checking for camera pi updates...
[2026-06-22 03:06:25,779.779 INFO    ] 200
[2026-06-22 03:06:25,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:06:25,821.821 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:06:25,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:06:25,900.900 INFO    ] No camera update needed
[2026-06-22 03:06:25,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:06:25,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:06:25,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:06:25,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:06:27,957.957 INFO    ] ================================================
[2026-06-22 03:06:27,973.973 INFO    ] Launching Daemon at Mon Jun 22 03:06:27 IST 2026
[2026-06-22 03:06:27,984.984 INFO    ] ================================================
[2026-06-22 03:06:28,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:06:28
[2026-06-22 03:06:28,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:06:29,243.243 INFO    ] Initializing speech engine...
[2026-06-22 03:06:29,251.251 INFO    ] 2026-06-22 03:06:29
[2026-06-22 03:06:29,527.527 INFO    ] 2026-06-22 03:06:29
[2026-06-22 03:06:29,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:06:29,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:06:29,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:06:29,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:06:29,902.902 INFO    ] time= 22/06/2026 03:06:29
[2026-06-22 03:06:29,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:06:29,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:06:29,983.983 INFO    ] No existing commands found in stream
[2026-06-22 03:06:34,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:06:34,998.998 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-22 03:06:36,958.958 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:06:36,960.960 INFO    ] Checking for system updates...
[2026-06-22 03:06:36,991.991 INFO    ] 200
[2026-06-22 03:06:36,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:06:37,046.046 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:06:37,048.048 INFO    ] No update needed
[2026-06-22 03:06:37,050.050 INFO    ] Checking for camera pi updates...
[2026-06-22 03:06:37,085.085 INFO    ] 200
[2026-06-22 03:06:37,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:06:37,128.128 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:06:37,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:06:37,193.193 INFO    ] No camera update needed
[2026-06-22 03:06:37,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:06:37,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:06:37,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:06:37,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:06:39,250.250 INFO    ] ================================================
[2026-06-22 03:06:39,266.266 INFO    ] Launching Daemon at Mon Jun 22 03:06:39 IST 2026
[2026-06-22 03:06:39,277.277 INFO    ] ================================================
[2026-06-22 03:06:39,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:06:39
[2026-06-22 03:06:40,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:06:40,762.762 INFO    ] Initializing speech engine...
[2026-06-22 03:06:40,769.769 INFO    ] 2026-06-22 03:06:40
[2026-06-22 03:06:41,042.042 INFO    ] 2026-06-22 03:06:41
[2026-06-22 03:06:41,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:06:41,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:06:41,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:06:41,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:06:41,547.547 INFO    ] time= 22/06/2026 03:06:41
[2026-06-22 03:06:41,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:06:41,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:06:41,689.689 INFO    ] No existing commands found in stream
[2026-06-22 03:06:46,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:06:46,730.730 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-22 03:06:48,247.247 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:06:48,249.249 INFO    ] Checking for system updates...
[2026-06-22 03:06:48,286.286 INFO    ] 200
[2026-06-22 03:06:48,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:06:48,349.349 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:06:48,351.351 INFO    ] No update needed
[2026-06-22 03:06:48,354.354 INFO    ] Checking for camera pi updates...
[2026-06-22 03:06:48,389.389 INFO    ] 200
[2026-06-22 03:06:48,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:06:48,437.437 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:06:48,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:06:48,515.515 INFO    ] No camera update needed
[2026-06-22 03:06:48,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:06:48,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:06:48,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:06:48,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:06:50,573.573 INFO    ] ================================================
[2026-06-22 03:06:50,589.589 INFO    ] Launching Daemon at Mon Jun 22 03:06:50 IST 2026
[2026-06-22 03:06:50,600.600 INFO    ] ================================================
[2026-06-22 03:06:51,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:06:51
[2026-06-22 03:06:51,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:06:51,989.989 INFO    ] Initializing speech engine...
[2026-06-22 03:06:52,012.012 INFO    ] 2026-06-22 03:06:51
[2026-06-22 03:06:52,281.281 INFO    ] 2026-06-22 03:06:52
[2026-06-22 03:06:52,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:06:52,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:06:52,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:06:52,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:06:52,747.747 INFO    ] time= 22/06/2026 03:06:52
[2026-06-22 03:06:52,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:06:52,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:06:52,916.916 INFO    ] No existing commands found in stream
[2026-06-22 03:06:57,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:06:57,933.933 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-22 03:07:01,584.584 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:07:01,589.589 INFO    ] Checking for system updates...
[2026-06-22 03:07:01,662.662 INFO    ] 200
[2026-06-22 03:07:01,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:07:01,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:07:01,792.792 INFO    ] No update needed
[2026-06-22 03:07:01,797.797 INFO    ] Checking for camera pi updates...
[2026-06-22 03:07:01,858.858 INFO    ] 200
[2026-06-22 03:07:01,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:07:01,911.911 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:07:02,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:07:02,033.033 INFO    ] No camera update needed
[2026-06-22 03:07:02,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:07:02,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:07:02,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:07:02,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:07:04,100.100 INFO    ] ================================================
[2026-06-22 03:07:04,116.116 INFO    ] Launching Daemon at Mon Jun 22 03:07:04 IST 2026
[2026-06-22 03:07:04,127.127 INFO    ] ================================================
[2026-06-22 03:07:04,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:07:04
[2026-06-22 03:07:05,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:07:05,580.580 INFO    ] Initializing speech engine...
[2026-06-22 03:07:05,588.588 INFO    ] 2026-06-22 03:07:05
[2026-06-22 03:07:05,865.865 INFO    ] 2026-06-22 03:07:05
[2026-06-22 03:07:05,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:07:06,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:07:06,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:07:06,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:07:06,297.297 INFO    ] time= 22/06/2026 03:07:06
[2026-06-22 03:07:06,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:07:06,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:07:06,475.475 INFO    ] No existing commands found in stream
[2026-06-22 03:07:11,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:07:11,490.490 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-22 03:07:12,559.559 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:07:12,562.562 INFO    ] Checking for system updates...
[2026-06-22 03:07:12,599.599 INFO    ] 200
[2026-06-22 03:07:12,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:07:12,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:07:12,656.656 INFO    ] No update needed
[2026-06-22 03:07:12,658.658 INFO    ] Checking for camera pi updates...
[2026-06-22 03:07:12,696.696 INFO    ] 200
[2026-06-22 03:07:12,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:07:12,738.738 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:07:12,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:07:12,832.832 INFO    ] No camera update needed
[2026-06-22 03:07:12,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:07:12,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:07:12,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:07:12,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:07:14,889.889 INFO    ] ================================================
[2026-06-22 03:07:14,905.905 INFO    ] Launching Daemon at Mon Jun 22 03:07:14 IST 2026
[2026-06-22 03:07:14,916.916 INFO    ] ================================================
[2026-06-22 03:07:15,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:07:15
[2026-06-22 03:07:16,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:07:16,458.458 INFO    ] Initializing speech engine...
[2026-06-22 03:07:16,470.470 INFO    ] 2026-06-22 03:07:16
[2026-06-22 03:07:16,778.778 INFO    ] 2026-06-22 03:07:16
[2026-06-22 03:07:16,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:07:17,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:07:17,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:07:17,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:07:17,203.203 INFO    ] time= 22/06/2026 03:07:17
[2026-06-22 03:07:17,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:07:17,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:07:17,395.395 INFO    ] No existing commands found in stream
[2026-06-22 03:07:22,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:07:22,412.412 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-22 03:07:23,858.858 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:07:23,860.860 INFO    ] Checking for system updates...
[2026-06-22 03:07:23,880.880 INFO    ] 200
[2026-06-22 03:07:23,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:07:23,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:07:23,937.937 INFO    ] No update needed
[2026-06-22 03:07:23,940.940 INFO    ] Checking for camera pi updates...
[2026-06-22 03:07:23,976.976 INFO    ] 200
[2026-06-22 03:07:23,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:07:24,023.023 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:07:24,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:07:24,104.104 INFO    ] No camera update needed
[2026-06-22 03:07:24,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:07:24,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:07:24,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:07:24,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:07:26,161.161 INFO    ] ================================================
[2026-06-22 03:07:26,177.177 INFO    ] Launching Daemon at Mon Jun 22 03:07:26 IST 2026
[2026-06-22 03:07:26,187.187 INFO    ] ================================================
[2026-06-22 03:07:26,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:07:26
[2026-06-22 03:07:27,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:07:27,569.569 INFO    ] Initializing speech engine...
[2026-06-22 03:07:27,581.581 INFO    ] 2026-06-22 03:07:27
[2026-06-22 03:07:27,859.859 INFO    ] 2026-06-22 03:07:27
[2026-06-22 03:07:27,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:07:28,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:07:28,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:07:28,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:07:28,313.313 INFO    ] time= 22/06/2026 03:07:28
[2026-06-22 03:07:28,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:07:28,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:07:28,455.455 INFO    ] No existing commands found in stream
[2026-06-22 03:07:33,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:07:33,471.471 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-22 03:07:34,071.071 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:07:34,073.073 INFO    ] Checking for system updates...
[2026-06-22 03:07:34,094.094 INFO    ] 200
[2026-06-22 03:07:34,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:07:34,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:07:34,127.127 INFO    ] No update needed
[2026-06-22 03:07:34,128.128 INFO    ] Checking for camera pi updates...
[2026-06-22 03:07:34,148.148 INFO    ] 200
[2026-06-22 03:07:34,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:07:34,173.173 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:07:34,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:07:34,256.256 INFO    ] No camera update needed
[2026-06-22 03:07:34,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:07:34,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:07:34,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:07:34,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:07:36,317.317 INFO    ] ================================================
[2026-06-22 03:07:36,332.332 INFO    ] Launching Daemon at Mon Jun 22 03:07:36 IST 2026
[2026-06-22 03:07:36,343.343 INFO    ] ================================================
[2026-06-22 03:07:36,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:07:36
[2026-06-22 03:07:37,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:07:37,766.766 INFO    ] Initializing speech engine...
[2026-06-22 03:07:37,785.785 INFO    ] 2026-06-22 03:07:37
[2026-06-22 03:07:38,047.047 INFO    ] 2026-06-22 03:07:38
[2026-06-22 03:07:38,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:07:38,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:07:38,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:07:38,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:07:38,427.427 INFO    ] time= 22/06/2026 03:07:38
[2026-06-22 03:07:38,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:07:38,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:07:38,531.531 INFO    ] No existing commands found in stream
[2026-06-22 03:07:43,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:07:43,547.547 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-22 03:07:44,018.018 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:07:44,020.020 INFO    ] Checking for system updates...
[2026-06-22 03:07:44,041.041 INFO    ] 200
[2026-06-22 03:07:44,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:07:44,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:07:44,084.084 INFO    ] No update needed
[2026-06-22 03:07:44,086.086 INFO    ] Checking for camera pi updates...
[2026-06-22 03:07:44,120.120 INFO    ] 200
[2026-06-22 03:07:44,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:07:44,164.164 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:07:44,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:07:44,341.341 INFO    ] No camera update needed
[2026-06-22 03:07:44,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:07:44,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:07:44,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:07:44,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:07:46,400.400 INFO    ] ================================================
[2026-06-22 03:07:46,416.416 INFO    ] Launching Daemon at Mon Jun 22 03:07:46 IST 2026
[2026-06-22 03:07:46,428.428 INFO    ] ================================================
[2026-06-22 03:07:47,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:07:46
[2026-06-22 03:07:47,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:07:47,861.861 INFO    ] Initializing speech engine...
[2026-06-22 03:07:47,869.869 INFO    ] 2026-06-22 03:07:47
[2026-06-22 03:07:48,131.131 INFO    ] 2026-06-22 03:07:48
[2026-06-22 03:07:48,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:07:48,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:07:48,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:07:48,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:07:48,489.489 INFO    ] time= 22/06/2026 03:07:48
[2026-06-22 03:07:48,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:07:48,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:07:48,611.611 INFO    ] No existing commands found in stream
[2026-06-22 03:07:53,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:07:53,624.624 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-22 03:07:54,996.996 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:07:54,998.998 INFO    ] Checking for system updates...
[2026-06-22 03:07:55,018.018 INFO    ] 200
[2026-06-22 03:07:55,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:07:55,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:07:55,051.051 INFO    ] No update needed
[2026-06-22 03:07:55,052.052 INFO    ] Checking for camera pi updates...
[2026-06-22 03:07:55,083.083 INFO    ] 200
[2026-06-22 03:07:55,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:07:55,129.129 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:07:55,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:07:55,219.219 INFO    ] No camera update needed
[2026-06-22 03:07:55,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:07:55,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:07:55,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:07:55,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:07:57,275.275 INFO    ] ================================================
[2026-06-22 03:07:57,291.291 INFO    ] Launching Daemon at Mon Jun 22 03:07:57 IST 2026
[2026-06-22 03:07:57,302.302 INFO    ] ================================================
[2026-06-22 03:07:57,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:07:57
[2026-06-22 03:07:58,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:07:58,636.636 INFO    ] Initializing speech engine...
[2026-06-22 03:07:58,646.646 INFO    ] 2026-06-22 03:07:58
[2026-06-22 03:07:58,890.890 INFO    ] 2026-06-22 03:07:58
[2026-06-22 03:07:58,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:07:59,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:07:59,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:07:59,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:07:59,361.361 INFO    ] time= 22/06/2026 03:07:59
[2026-06-22 03:07:59,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:07:59,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:07:59,508.508 INFO    ] No existing commands found in stream
[2026-06-22 03:08:04,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:08:04,523.523 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-22 03:08:08,318.318 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:08:08,319.319 INFO    ] Checking for system updates...
[2026-06-22 03:08:08,339.339 INFO    ] 200
[2026-06-22 03:08:08,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:08:08,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:08:08,374.374 INFO    ] No update needed
[2026-06-22 03:08:08,376.376 INFO    ] Checking for camera pi updates...
[2026-06-22 03:08:08,409.409 INFO    ] 200
[2026-06-22 03:08:08,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:08:08,452.452 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:08:08,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:08:08,529.529 INFO    ] No camera update needed
[2026-06-22 03:08:08,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:08:08,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:08:08,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:08:08,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:08:10,585.585 INFO    ] ================================================
[2026-06-22 03:08:10,601.601 INFO    ] Launching Daemon at Mon Jun 22 03:08:10 IST 2026
[2026-06-22 03:08:10,612.612 INFO    ] ================================================
[2026-06-22 03:08:11,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:08:11
[2026-06-22 03:08:11,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:08:11,970.970 INFO    ] Initializing speech engine...
[2026-06-22 03:08:11,993.993 INFO    ] 2026-06-22 03:08:11
[2026-06-22 03:08:12,247.247 INFO    ] 2026-06-22 03:08:12
[2026-06-22 03:08:12,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:08:12,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:08:12,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:08:12,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:08:12,694.694 INFO    ] time= 22/06/2026 03:08:12
[2026-06-22 03:08:12,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:08:12,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:08:12,862.862 INFO    ] No existing commands found in stream
[2026-06-22 03:08:17,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:08:17,877.877 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-22 03:08:20,278.278 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:08:20,281.281 INFO    ] Checking for system updates...
[2026-06-22 03:08:20,316.316 INFO    ] 200
[2026-06-22 03:08:20,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:08:20,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:08:20,374.374 INFO    ] No update needed
[2026-06-22 03:08:20,376.376 INFO    ] Checking for camera pi updates...
[2026-06-22 03:08:20,410.410 INFO    ] 200
[2026-06-22 03:08:20,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:08:20,453.453 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:08:20,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:08:20,519.519 INFO    ] No camera update needed
[2026-06-22 03:08:20,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:08:20,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:08:20,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:08:20,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:08:22,575.575 INFO    ] ================================================
[2026-06-22 03:08:22,591.591 INFO    ] Launching Daemon at Mon Jun 22 03:08:22 IST 2026
[2026-06-22 03:08:22,602.602 INFO    ] ================================================
[2026-06-22 03:08:23,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:08:23
[2026-06-22 03:08:23,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:08:23,976.976 INFO    ] Initializing speech engine...
[2026-06-22 03:08:23,984.984 INFO    ] 2026-06-22 03:08:23
[2026-06-22 03:08:24,250.250 INFO    ] 2026-06-22 03:08:24
[2026-06-22 03:08:24,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:08:24,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:08:24,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:08:24,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:08:24,707.707 INFO    ] time= 22/06/2026 03:08:24
[2026-06-22 03:08:24,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:08:24,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:08:24,867.867 INFO    ] No existing commands found in stream
[2026-06-22 03:08:29,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:08:29,902.902 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-22 03:08:34,047.047 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:08:34,050.050 INFO    ] Checking for system updates...
[2026-06-22 03:08:34,086.086 INFO    ] 200
[2026-06-22 03:08:34,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:08:34,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:08:34,149.149 INFO    ] No update needed
[2026-06-22 03:08:34,151.151 INFO    ] Checking for camera pi updates...
[2026-06-22 03:08:34,188.188 INFO    ] 200
[2026-06-22 03:08:34,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:08:34,231.231 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:08:34,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:08:34,312.312 INFO    ] No camera update needed
[2026-06-22 03:08:34,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:08:34,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:08:34,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:08:34,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:08:36,369.369 INFO    ] ================================================
[2026-06-22 03:08:36,385.385 INFO    ] Launching Daemon at Mon Jun 22 03:08:36 IST 2026
[2026-06-22 03:08:36,396.396 INFO    ] ================================================
[2026-06-22 03:08:36,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:08:36
[2026-06-22 03:08:37,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:08:37,785.785 INFO    ] Initializing speech engine...
[2026-06-22 03:08:37,801.801 INFO    ] 2026-06-22 03:08:37
[2026-06-22 03:08:38,085.085 INFO    ] 2026-06-22 03:08:38
[2026-06-22 03:08:38,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:08:38,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:08:38,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:08:38,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:08:38,493.493 INFO    ] time= 22/06/2026 03:08:38
[2026-06-22 03:08:38,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:08:38,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:08:38,581.581 INFO    ] No existing commands found in stream
[2026-06-22 03:08:43,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:08:43,599.599 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-22 03:08:43,962.962 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:08:43,963.963 INFO    ] Checking for system updates...
[2026-06-22 03:08:43,984.984 INFO    ] 200
[2026-06-22 03:08:43,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:08:44,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:08:44,036.036 INFO    ] No update needed
[2026-06-22 03:08:44,038.038 INFO    ] Checking for camera pi updates...
[2026-06-22 03:08:44,075.075 INFO    ] 200
[2026-06-22 03:08:44,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:08:44,119.119 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:08:44,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:08:44,204.204 INFO    ] No camera update needed
[2026-06-22 03:08:44,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:08:44,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:08:44,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:08:44,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:08:46,259.259 INFO    ] ================================================
[2026-06-22 03:08:46,275.275 INFO    ] Launching Daemon at Mon Jun 22 03:08:46 IST 2026
[2026-06-22 03:08:46,286.286 INFO    ] ================================================
[2026-06-22 03:08:46,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:08:46
[2026-06-22 03:08:47,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:08:47,808.808 INFO    ] Initializing speech engine...
[2026-06-22 03:08:47,814.814 INFO    ] 2026-06-22 03:08:47
[2026-06-22 03:08:48,089.089 INFO    ] 2026-06-22 03:08:48
[2026-06-22 03:08:48,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:08:48,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:08:48,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:08:48,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:08:48,495.495 INFO    ] time= 22/06/2026 03:08:48
[2026-06-22 03:08:48,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:08:48,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:08:48,581.581 INFO    ] No existing commands found in stream
[2026-06-22 03:08:53,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:08:53,602.602 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-22 03:08:55,785.785 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:08:55,788.788 INFO    ] Checking for system updates...
[2026-06-22 03:08:55,830.830 INFO    ] 200
[2026-06-22 03:08:55,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:08:55,908.908 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:08:55,911.911 INFO    ] No update needed
[2026-06-22 03:08:55,915.915 INFO    ] Checking for camera pi updates...
[2026-06-22 03:08:55,953.953 INFO    ] 200
[2026-06-22 03:08:55,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:08:56,006.006 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:08:56,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:08:56,104.104 INFO    ] No camera update needed
[2026-06-22 03:08:56,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:08:56,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:08:56,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:08:56,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:08:58,160.160 INFO    ] ================================================
[2026-06-22 03:08:58,176.176 INFO    ] Launching Daemon at Mon Jun 22 03:08:58 IST 2026
[2026-06-22 03:08:58,187.187 INFO    ] ================================================
[2026-06-22 03:08:58,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:08:58
[2026-06-22 03:08:59,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:08:59,719.719 INFO    ] Initializing speech engine...
[2026-06-22 03:08:59,729.729 INFO    ] 2026-06-22 03:08:59
[2026-06-22 03:09:00,001.001 INFO    ] 2026-06-22 03:08:59
[2026-06-22 03:09:00,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:09:00,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:09:00,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:09:00,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:09:00,477.477 INFO    ] time= 22/06/2026 03:09:00
[2026-06-22 03:09:00,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:09:00,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:09:00,620.620 INFO    ] No existing commands found in stream
[2026-06-22 03:09:05,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:09:05,636.636 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-22 03:09:08,853.853 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:09:08,856.856 INFO    ] Checking for system updates...
[2026-06-22 03:09:08,897.897 INFO    ] 200
[2026-06-22 03:09:08,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:09:08,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:09:08,967.967 INFO    ] No update needed
[2026-06-22 03:09:08,970.970 INFO    ] Checking for camera pi updates...
[2026-06-22 03:09:09,005.005 INFO    ] 200
[2026-06-22 03:09:09,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:09:09,054.054 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:09:09,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:09:09,118.118 INFO    ] No camera update needed
[2026-06-22 03:09:09,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:09:09,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:09:09,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:09:09,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:09:11,176.176 INFO    ] ================================================
[2026-06-22 03:09:11,192.192 INFO    ] Launching Daemon at Mon Jun 22 03:09:11 IST 2026
[2026-06-22 03:09:11,203.203 INFO    ] ================================================
[2026-06-22 03:09:11,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:09:11
[2026-06-22 03:09:12,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:09:12,712.712 INFO    ] Initializing speech engine...
[2026-06-22 03:09:12,720.720 INFO    ] 2026-06-22 03:09:12
[2026-06-22 03:09:13,004.004 INFO    ] 2026-06-22 03:09:12
[2026-06-22 03:09:13,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:09:13,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:09:13,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:09:13,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:09:13,462.462 INFO    ] time= 22/06/2026 03:09:13
[2026-06-22 03:09:13,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:09:13,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:09:13,600.600 INFO    ] No existing commands found in stream
[2026-06-22 03:09:18,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:09:18,618.618 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-22 03:09:21,788.788 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:09:21,789.789 INFO    ] Checking for system updates...
[2026-06-22 03:09:21,810.810 INFO    ] 200
[2026-06-22 03:09:21,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:09:21,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:09:21,860.860 INFO    ] No update needed
[2026-06-22 03:09:21,864.864 INFO    ] Checking for camera pi updates...
[2026-06-22 03:09:21,900.900 INFO    ] 200
[2026-06-22 03:09:21,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:09:21,948.948 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:09:22,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:09:22,024.024 INFO    ] No camera update needed
[2026-06-22 03:09:22,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:09:22,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:09:22,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:09:22,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:09:24,084.084 INFO    ] ================================================
[2026-06-22 03:09:24,100.100 INFO    ] Launching Daemon at Mon Jun 22 03:09:24 IST 2026
[2026-06-22 03:09:24,111.111 INFO    ] ================================================
[2026-06-22 03:09:24,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:09:24
[2026-06-22 03:09:25,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:09:25,545.545 INFO    ] Initializing speech engine...
[2026-06-22 03:09:25,551.551 INFO    ] 2026-06-22 03:09:25
[2026-06-22 03:09:25,809.809 INFO    ] 2026-06-22 03:09:25
[2026-06-22 03:09:25,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:09:26,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:09:26,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:09:26,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:09:26,266.266 INFO    ] time= 22/06/2026 03:09:26
[2026-06-22 03:09:26,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:09:26,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:09:26,412.412 INFO    ] No existing commands found in stream
[2026-06-22 03:09:31,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:09:31,428.428 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-22 03:09:33,387.387 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:09:33,390.390 INFO    ] Checking for system updates...
[2026-06-22 03:09:33,430.430 INFO    ] 200
[2026-06-22 03:09:33,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:09:33,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:09:33,498.498 INFO    ] No update needed
[2026-06-22 03:09:33,500.500 INFO    ] Checking for camera pi updates...
[2026-06-22 03:09:33,538.538 INFO    ] 200
[2026-06-22 03:09:33,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:09:33,582.582 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:09:33,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:09:33,662.662 INFO    ] No camera update needed
[2026-06-22 03:09:33,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:09:33,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:09:33,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:09:33,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:09:35,721.721 INFO    ] ================================================
[2026-06-22 03:09:35,737.737 INFO    ] Launching Daemon at Mon Jun 22 03:09:35 IST 2026
[2026-06-22 03:09:35,749.749 INFO    ] ================================================
[2026-06-22 03:09:36,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:09:36
[2026-06-22 03:09:36,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:09:37,078.078 INFO    ] Initializing speech engine...
[2026-06-22 03:09:37,084.084 INFO    ] 2026-06-22 03:09:37
[2026-06-22 03:09:37,356.356 INFO    ] 2026-06-22 03:09:37
[2026-06-22 03:09:37,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:09:37,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:09:37,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:09:37,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:09:37,712.712 INFO    ] time= 22/06/2026 03:09:37
[2026-06-22 03:09:37,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:09:37,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:09:37,810.810 INFO    ] No existing commands found in stream
[2026-06-22 03:09:42,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:09:42,825.825 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-22 03:09:46,455.455 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:09:46,458.458 INFO    ] Checking for system updates...
[2026-06-22 03:09:46,505.505 INFO    ] 200
[2026-06-22 03:09:46,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:09:46,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:09:46,576.576 INFO    ] No update needed
[2026-06-22 03:09:46,579.579 INFO    ] Checking for camera pi updates...
[2026-06-22 03:09:46,617.617 INFO    ] 200
[2026-06-22 03:09:46,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:09:46,675.675 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:09:46,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:09:46,861.861 INFO    ] No camera update needed
[2026-06-22 03:09:46,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:09:46,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:09:46,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:09:46,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:09:48,918.918 INFO    ] ================================================
[2026-06-22 03:09:48,933.933 INFO    ] Launching Daemon at Mon Jun 22 03:09:48 IST 2026
[2026-06-22 03:09:48,945.945 INFO    ] ================================================
[2026-06-22 03:09:49,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:09:49
[2026-06-22 03:09:50,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:09:50,567.567 INFO    ] Initializing speech engine...
[2026-06-22 03:09:50,579.579 INFO    ] 2026-06-22 03:09:50
[2026-06-22 03:09:50,849.849 INFO    ] 2026-06-22 03:09:50
[2026-06-22 03:09:50,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:09:51,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:09:51,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:09:51,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:09:51,194.194 INFO    ] time= 22/06/2026 03:09:51
[2026-06-22 03:09:51,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:09:51,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:09:51,310.310 INFO    ] No existing commands found in stream
[2026-06-22 03:09:56,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:09:56,326.326 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-22 03:09:59,353.353 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:09:59,355.355 INFO    ] Checking for system updates...
[2026-06-22 03:09:59,396.396 INFO    ] 200
[2026-06-22 03:09:59,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:09:59,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:09:59,453.453 INFO    ] No update needed
[2026-06-22 03:09:59,455.455 INFO    ] Checking for camera pi updates...
[2026-06-22 03:09:59,490.490 INFO    ] 200
[2026-06-22 03:09:59,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:09:59,537.537 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:09:59,587.587 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:09:59,589.589 INFO    ] No camera update needed
[2026-06-22 03:09:59,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:09:59,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:09:59,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:09:59,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:10:01,674.674 INFO    ] ================================================
[2026-06-22 03:10:01,724.724 INFO    ] Launching Daemon at Mon Jun 22 03:10:01 IST 2026
[2026-06-22 03:10:01,753.753 INFO    ] ================================================
[2026-06-22 03:10:02,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:10:02
[2026-06-22 03:10:03,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:10:03,606.606 INFO    ] Initializing speech engine...
[2026-06-22 03:10:03,612.612 INFO    ] 2026-06-22 03:10:03
[2026-06-22 03:10:03,911.911 INFO    ] 2026-06-22 03:10:03
[2026-06-22 03:10:03,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:10:04,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:10:04,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:10:04,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:10:04,316.316 INFO    ] time= 22/06/2026 03:10:04
[2026-06-22 03:10:04,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:10:04,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:10:04,425.425 INFO    ] No existing commands found in stream
[2026-06-22 03:10:09,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:10:09,439.439 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-22 03:10:11,620.620 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:10:11,622.622 INFO    ] Checking for system updates...
[2026-06-22 03:10:11,664.664 INFO    ] 200
[2026-06-22 03:10:11,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:10:11,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:10:11,743.743 INFO    ] No update needed
[2026-06-22 03:10:11,746.746 INFO    ] Checking for camera pi updates...
[2026-06-22 03:10:11,799.799 INFO    ] 200
[2026-06-22 03:10:11,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:10:11,855.855 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:10:11,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:10:11,940.940 INFO    ] No camera update needed
[2026-06-22 03:10:11,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:10:11,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:10:11,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:10:11,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:10:14,997.997 INFO    ] ================================================
[2026-06-22 03:10:14,012.012 INFO    ] Launching Daemon at Mon Jun 22 03:10:14 IST 2026
[2026-06-22 03:10:14,023.023 INFO    ] ================================================
[2026-06-22 03:10:14,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:10:14
[2026-06-22 03:10:15,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:10:15,604.604 INFO    ] Initializing speech engine...
[2026-06-22 03:10:15,611.611 INFO    ] 2026-06-22 03:10:15
[2026-06-22 03:10:15,851.851 INFO    ] 2026-06-22 03:10:15
[2026-06-22 03:10:15,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:10:16,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:10:16,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:10:16,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:10:16,781.781 INFO    ] time= 22/06/2026 03:10:16
[2026-06-22 03:10:16,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:10:16,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:10:16,900.900 INFO    ] No existing commands found in stream
[2026-06-22 03:10:21,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:10:21,937.937 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-22 03:10:25,231.231 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:10:25,232.232 INFO    ] Checking for system updates...
[2026-06-22 03:10:25,255.255 INFO    ] 200
[2026-06-22 03:10:25,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:10:25,292.292 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:10:25,295.295 INFO    ] No update needed
[2026-06-22 03:10:25,298.298 INFO    ] Checking for camera pi updates...
[2026-06-22 03:10:25,332.332 INFO    ] 200
[2026-06-22 03:10:25,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:10:25,377.377 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:10:25,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:10:25,473.473 INFO    ] No camera update needed
[2026-06-22 03:10:25,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:10:25,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:10:25,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:10:25,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:10:27,532.532 INFO    ] ================================================
[2026-06-22 03:10:27,547.547 INFO    ] Launching Daemon at Mon Jun 22 03:10:27 IST 2026
[2026-06-22 03:10:27,558.558 INFO    ] ================================================
[2026-06-22 03:10:28,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:10:28
[2026-06-22 03:10:28,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:10:28,972.972 INFO    ] Initializing speech engine...
[2026-06-22 03:10:28,987.987 INFO    ] 2026-06-22 03:10:28
[2026-06-22 03:10:29,260.260 INFO    ] 2026-06-22 03:10:29
[2026-06-22 03:10:29,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:10:29,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:10:29,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:10:29,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:10:29,630.630 INFO    ] time= 22/06/2026 03:10:29
[2026-06-22 03:10:29,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:10:29,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:10:29,803.803 INFO    ] No existing commands found in stream
[2026-06-22 03:10:34,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:10:34,836.836 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-22 03:10:38,501.501 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:10:38,504.504 INFO    ] Checking for system updates...
[2026-06-22 03:10:38,541.541 INFO    ] 200
[2026-06-22 03:10:38,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:10:38,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:10:38,599.599 INFO    ] No update needed
[2026-06-22 03:10:38,601.601 INFO    ] Checking for camera pi updates...
[2026-06-22 03:10:38,638.638 INFO    ] 200
[2026-06-22 03:10:38,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:10:38,681.681 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:10:38,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:10:38,766.766 INFO    ] No camera update needed
[2026-06-22 03:10:38,769.769 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:10:38,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:10:38,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:10:38,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:10:40,824.824 INFO    ] ================================================
[2026-06-22 03:10:40,840.840 INFO    ] Launching Daemon at Mon Jun 22 03:10:40 IST 2026
[2026-06-22 03:10:40,850.850 INFO    ] ================================================
[2026-06-22 03:10:41,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:10:41
[2026-06-22 03:10:42,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:10:42,319.319 INFO    ] Initializing speech engine...
[2026-06-22 03:10:42,331.331 INFO    ] 2026-06-22 03:10:42
[2026-06-22 03:10:42,601.601 INFO    ] 2026-06-22 03:10:42
[2026-06-22 03:10:42,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:10:42,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:10:42,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:10:42,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:10:42,980.980 INFO    ] time= 22/06/2026 03:10:42
[2026-06-22 03:10:42,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:10:43,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:10:43,154.154 INFO    ] No existing commands found in stream
[2026-06-22 03:10:48,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:10:48,187.187 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-22 03:10:50,953.953 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:10:50,956.956 INFO    ] Checking for system updates...
[2026-06-22 03:10:50,996.996 INFO    ] 200
[2026-06-22 03:10:50,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:10:51,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:10:51,053.053 INFO    ] No update needed
[2026-06-22 03:10:51,056.056 INFO    ] Checking for camera pi updates...
[2026-06-22 03:10:51,094.094 INFO    ] 200
[2026-06-22 03:10:51,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:10:51,143.143 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:10:51,237.237 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:10:51,239.239 INFO    ] No camera update needed
[2026-06-22 03:10:51,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:10:51,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:10:51,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:10:51,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:10:53,296.296 INFO    ] ================================================
[2026-06-22 03:10:53,312.312 INFO    ] Launching Daemon at Mon Jun 22 03:10:53 IST 2026
[2026-06-22 03:10:53,323.323 INFO    ] ================================================
[2026-06-22 03:10:53,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:10:53
[2026-06-22 03:10:54,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:10:54,693.693 INFO    ] Initializing speech engine...
[2026-06-22 03:10:54,702.702 INFO    ] 2026-06-22 03:10:54
[2026-06-22 03:10:54,961.961 INFO    ] 2026-06-22 03:10:54
[2026-06-22 03:10:54,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:10:55,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:10:55,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:10:55,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:10:55,419.419 INFO    ] time= 22/06/2026 03:10:55
[2026-06-22 03:10:55,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:10:55,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:10:55,574.574 INFO    ] No existing commands found in stream
[2026-06-22 03:11:00,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:11:00,589.589 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-22 03:11:03,066.066 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:11:03,069.069 INFO    ] Checking for system updates...
[2026-06-22 03:11:03,113.113 INFO    ] 200
[2026-06-22 03:11:03,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:11:03,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:11:03,181.181 INFO    ] No update needed
[2026-06-22 03:11:03,184.184 INFO    ] Checking for camera pi updates...
[2026-06-22 03:11:03,223.223 INFO    ] 200
[2026-06-22 03:11:03,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:11:03,272.272 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:11:03,349.349 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:11:03,352.352 INFO    ] No camera update needed
[2026-06-22 03:11:03,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:11:03,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:11:03,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:11:03,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:11:05,409.409 INFO    ] ================================================
[2026-06-22 03:11:05,424.424 INFO    ] Launching Daemon at Mon Jun 22 03:11:05 IST 2026
[2026-06-22 03:11:05,434.434 INFO    ] ================================================
[2026-06-22 03:11:06,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:11:06
[2026-06-22 03:11:06,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:11:06,932.932 INFO    ] Initializing speech engine...
[2026-06-22 03:11:06,945.945 INFO    ] 2026-06-22 03:11:06
[2026-06-22 03:11:07,200.200 INFO    ] 2026-06-22 03:11:07
[2026-06-22 03:11:07,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:11:07,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:11:07,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:11:07,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:11:07,582.582 INFO    ] time= 22/06/2026 03:11:07
[2026-06-22 03:11:07,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:11:07,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:11:07,724.724 INFO    ] No existing commands found in stream
[2026-06-22 03:11:12,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:11:12,762.762 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-22 03:11:13,954.954 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:11:13,956.956 INFO    ] Checking for system updates...
[2026-06-22 03:11:13,977.977 INFO    ] 200
[2026-06-22 03:11:13,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:11:14,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:11:14,009.009 INFO    ] No update needed
[2026-06-22 03:11:14,010.010 INFO    ] Checking for camera pi updates...
[2026-06-22 03:11:14,035.035 INFO    ] 200
[2026-06-22 03:11:14,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:11:14,085.085 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:11:14,153.153 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:11:14,156.156 INFO    ] No camera update needed
[2026-06-22 03:11:14,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:11:14,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:11:14,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:11:14,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:11:16,213.213 INFO    ] ================================================
[2026-06-22 03:11:16,229.229 INFO    ] Launching Daemon at Mon Jun 22 03:11:16 IST 2026
[2026-06-22 03:11:16,240.240 INFO    ] ================================================
[2026-06-22 03:11:16,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:11:16
[2026-06-22 03:11:17,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:11:17,583.583 INFO    ] Initializing speech engine...
[2026-06-22 03:11:17,592.592 INFO    ] 2026-06-22 03:11:17
[2026-06-22 03:11:17,844.844 INFO    ] 2026-06-22 03:11:17
[2026-06-22 03:11:17,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:11:18,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:11:18,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:11:18,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:11:18,222.222 INFO    ] time= 22/06/2026 03:11:18
[2026-06-22 03:11:18,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:11:18,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:11:18,385.385 INFO    ] No existing commands found in stream
[2026-06-22 03:11:23,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:11:23,412.412 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-22 03:11:26,120.120 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:11:26,122.122 INFO    ] Checking for system updates...
[2026-06-22 03:11:26,164.164 INFO    ] 200
[2026-06-22 03:11:26,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:11:26,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:11:26,231.231 INFO    ] No update needed
[2026-06-22 03:11:26,233.233 INFO    ] Checking for camera pi updates...
[2026-06-22 03:11:26,272.272 INFO    ] 200
[2026-06-22 03:11:26,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:11:26,316.316 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:11:26,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:11:26,376.376 INFO    ] No camera update needed
[2026-06-22 03:11:26,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:11:26,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:11:26,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:11:26,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:11:28,434.434 INFO    ] ================================================
[2026-06-22 03:11:28,449.449 INFO    ] Launching Daemon at Mon Jun 22 03:11:28 IST 2026
[2026-06-22 03:11:28,460.460 INFO    ] ================================================
[2026-06-22 03:11:29,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:11:29
[2026-06-22 03:11:29,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:11:29,875.875 INFO    ] Initializing speech engine...
[2026-06-22 03:11:29,881.881 INFO    ] 2026-06-22 03:11:29
[2026-06-22 03:11:30,182.182 INFO    ] 2026-06-22 03:11:30
[2026-06-22 03:11:30,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:11:30,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:11:30,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:11:30,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:11:30,557.557 INFO    ] time= 22/06/2026 03:11:30
[2026-06-22 03:11:30,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:11:30,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:11:30,617.617 INFO    ] No existing commands found in stream
[2026-06-22 03:11:35,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:11:35,648.648 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-22 03:11:39,610.610 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:11:39,613.613 INFO    ] Checking for system updates...
[2026-06-22 03:11:39,653.653 INFO    ] 200
[2026-06-22 03:11:39,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:11:39,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:11:39,711.711 INFO    ] No update needed
[2026-06-22 03:11:39,713.713 INFO    ] Checking for camera pi updates...
[2026-06-22 03:11:39,747.747 INFO    ] 200
[2026-06-22 03:11:39,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:11:39,789.789 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:11:39,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:11:39,876.876 INFO    ] No camera update needed
[2026-06-22 03:11:39,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:11:39,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:11:39,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:11:39,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:11:41,933.933 INFO    ] ================================================
[2026-06-22 03:11:41,948.948 INFO    ] Launching Daemon at Mon Jun 22 03:11:41 IST 2026
[2026-06-22 03:11:41,960.960 INFO    ] ================================================
[2026-06-22 03:11:42,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:11:42
[2026-06-22 03:11:43,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:11:43,292.292 INFO    ] Initializing speech engine...
[2026-06-22 03:11:43,315.315 INFO    ] 2026-06-22 03:11:43
[2026-06-22 03:11:43,586.586 INFO    ] 2026-06-22 03:11:43
[2026-06-22 03:11:43,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:11:43,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:11:43,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:11:43,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:11:43,942.942 INFO    ] time= 22/06/2026 03:11:43
[2026-06-22 03:11:43,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:11:43,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:11:44,062.062 INFO    ] No existing commands found in stream
[2026-06-22 03:11:49,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:11:49,077.077 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-22 03:11:52,365.365 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:11:52,366.366 INFO    ] Checking for system updates...
[2026-06-22 03:11:52,387.387 INFO    ] 200
[2026-06-22 03:11:52,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:11:52,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:11:52,420.420 INFO    ] No update needed
[2026-06-22 03:11:52,421.421 INFO    ] Checking for camera pi updates...
[2026-06-22 03:11:52,443.443 INFO    ] 200
[2026-06-22 03:11:52,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:11:52,470.470 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:11:52,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:11:52,669.669 INFO    ] No camera update needed
[2026-06-22 03:11:52,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:11:52,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:11:52,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:11:52,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:11:54,725.725 INFO    ] ================================================
[2026-06-22 03:11:54,743.743 INFO    ] Launching Daemon at Mon Jun 22 03:11:54 IST 2026
[2026-06-22 03:11:54,753.753 INFO    ] ================================================
[2026-06-22 03:11:55,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:11:55
[2026-06-22 03:11:55,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:11:56,291.291 INFO    ] Initializing speech engine...
[2026-06-22 03:11:56,298.298 INFO    ] 2026-06-22 03:11:56
[2026-06-22 03:11:56,582.582 INFO    ] 2026-06-22 03:11:56
[2026-06-22 03:11:56,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:11:56,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:11:56,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:11:57,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:11:57,046.046 INFO    ] time= 22/06/2026 03:11:57
[2026-06-22 03:11:57,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:11:57,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:11:57,296.296 INFO    ] No existing commands found in stream
[2026-06-22 03:12:02,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:12:02,312.312 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-22 03:12:04,633.633 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:12:04,637.637 INFO    ] Checking for system updates...
[2026-06-22 03:12:04,680.680 INFO    ] 200
[2026-06-22 03:12:04,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:12:04,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:12:04,749.749 INFO    ] No update needed
[2026-06-22 03:12:04,751.751 INFO    ] Checking for camera pi updates...
[2026-06-22 03:12:04,787.787 INFO    ] 200
[2026-06-22 03:12:04,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:12:04,832.832 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:12:04,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:12:04,933.933 INFO    ] No camera update needed
[2026-06-22 03:12:04,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:12:04,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:12:04,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:12:04,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:12:06,994.994 INFO    ] ================================================
[2026-06-22 03:12:07,010.010 INFO    ] Launching Daemon at Mon Jun 22 03:12:07 IST 2026
[2026-06-22 03:12:07,022.022 INFO    ] ================================================
[2026-06-22 03:12:07,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:12:07
[2026-06-22 03:12:08,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:12:08,453.453 INFO    ] Initializing speech engine...
[2026-06-22 03:12:08,462.462 INFO    ] 2026-06-22 03:12:08
[2026-06-22 03:12:08,713.713 INFO    ] 2026-06-22 03:12:08
[2026-06-22 03:12:08,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:12:08,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:12:08,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:12:09,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:12:09,071.071 INFO    ] time= 22/06/2026 03:12:09
[2026-06-22 03:12:09,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:12:09,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:12:09,169.169 INFO    ] No existing commands found in stream
[2026-06-22 03:12:14,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:12:14,183.183 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-22 03:12:15,012.012 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:12:15,013.013 INFO    ] Checking for system updates...
[2026-06-22 03:12:15,034.034 INFO    ] 200
[2026-06-22 03:12:15,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:12:15,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:12:15,079.079 INFO    ] No update needed
[2026-06-22 03:12:15,082.082 INFO    ] Checking for camera pi updates...
[2026-06-22 03:12:15,118.118 INFO    ] 200
[2026-06-22 03:12:15,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:12:15,169.169 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:12:15,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:12:15,261.261 INFO    ] No camera update needed
[2026-06-22 03:12:15,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:12:15,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:12:15,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:12:15,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:12:17,323.323 INFO    ] ================================================
[2026-06-22 03:12:17,340.340 INFO    ] Launching Daemon at Mon Jun 22 03:12:17 IST 2026
[2026-06-22 03:12:17,352.352 INFO    ] ================================================
[2026-06-22 03:12:17,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:12:17
[2026-06-22 03:12:18,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:12:18,796.796 INFO    ] Initializing speech engine...
[2026-06-22 03:12:18,815.815 INFO    ] 2026-06-22 03:12:18
[2026-06-22 03:12:19,069.069 INFO    ] 2026-06-22 03:12:19
[2026-06-22 03:12:19,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:12:19,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:12:19,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:12:19,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:12:19,411.411 INFO    ] time= 22/06/2026 03:12:19
[2026-06-22 03:12:19,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:12:19,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:12:19,524.524 INFO    ] No existing commands found in stream
[2026-06-22 03:12:24,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:12:24,539.539 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-22 03:12:27,247.247 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:12:27,249.249 INFO    ] Checking for system updates...
[2026-06-22 03:12:27,285.285 INFO    ] 200
[2026-06-22 03:12:27,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:12:27,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:12:27,343.343 INFO    ] No update needed
[2026-06-22 03:12:27,346.346 INFO    ] Checking for camera pi updates...
[2026-06-22 03:12:27,380.380 INFO    ] 200
[2026-06-22 03:12:27,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:12:27,437.437 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:12:27,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:12:27,516.516 INFO    ] No camera update needed
[2026-06-22 03:12:27,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:12:27,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:12:27,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:12:27,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:12:29,574.574 INFO    ] ================================================
[2026-06-22 03:12:29,589.589 INFO    ] Launching Daemon at Mon Jun 22 03:12:29 IST 2026
[2026-06-22 03:12:29,600.600 INFO    ] ================================================
[2026-06-22 03:12:30,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:12:30
[2026-06-22 03:12:30,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:12:31,045.045 INFO    ] Initializing speech engine...
[2026-06-22 03:12:31,064.064 INFO    ] 2026-06-22 03:12:31
[2026-06-22 03:12:31,315.315 INFO    ] 2026-06-22 03:12:31
[2026-06-22 03:12:31,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:12:31,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:12:31,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:12:31,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:12:31,713.713 INFO    ] time= 22/06/2026 03:12:31
[2026-06-22 03:12:31,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:12:31,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:12:31,801.801 INFO    ] No existing commands found in stream
[2026-06-22 03:12:36,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:12:36,829.829 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-22 03:12:37,982.982 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:12:37,985.985 INFO    ] Checking for system updates...
[2026-06-22 03:12:38,027.027 INFO    ] 200
[2026-06-22 03:12:38,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:12:38,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:12:38,084.084 INFO    ] No update needed
[2026-06-22 03:12:38,087.087 INFO    ] Checking for camera pi updates...
[2026-06-22 03:12:38,120.120 INFO    ] 200
[2026-06-22 03:12:38,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:12:38,164.164 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:12:38,255.255 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:12:38,258.258 INFO    ] No camera update needed
[2026-06-22 03:12:38,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:12:38,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:12:38,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:12:38,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:12:40,315.315 INFO    ] ================================================
[2026-06-22 03:12:40,332.332 INFO    ] Launching Daemon at Mon Jun 22 03:12:40 IST 2026
[2026-06-22 03:12:40,350.350 INFO    ] ================================================
[2026-06-22 03:12:40,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:12:40
[2026-06-22 03:12:41,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:12:41,773.773 INFO    ] Initializing speech engine...
[2026-06-22 03:12:41,788.788 INFO    ] 2026-06-22 03:12:41
[2026-06-22 03:12:42,057.057 INFO    ] 2026-06-22 03:12:42
[2026-06-22 03:12:42,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:12:42,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:12:42,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:12:42,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:12:42,440.440 INFO    ] time= 22/06/2026 03:12:42
[2026-06-22 03:12:42,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:12:42,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:12:42,628.628 INFO    ] No existing commands found in stream
[2026-06-22 03:12:47,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:12:47,654.654 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-22 03:12:49,902.902 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:12:49,905.905 INFO    ] Checking for system updates...
[2026-06-22 03:12:49,945.945 INFO    ] 200
[2026-06-22 03:12:49,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:12:50,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:12:50,004.004 INFO    ] No update needed
[2026-06-22 03:12:50,006.006 INFO    ] Checking for camera pi updates...
[2026-06-22 03:12:50,044.044 INFO    ] 200
[2026-06-22 03:12:50,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:12:50,088.088 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:12:50,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:12:50,170.170 INFO    ] No camera update needed
[2026-06-22 03:12:50,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:12:50,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:12:50,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:12:50,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:12:52,231.231 INFO    ] ================================================
[2026-06-22 03:12:52,246.246 INFO    ] Launching Daemon at Mon Jun 22 03:12:52 IST 2026
[2026-06-22 03:12:52,257.257 INFO    ] ================================================
[2026-06-22 03:12:52,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:12:52
[2026-06-22 03:12:53,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:12:53,631.631 INFO    ] Initializing speech engine...
[2026-06-22 03:12:53,645.645 INFO    ] 2026-06-22 03:12:53
[2026-06-22 03:12:53,941.941 INFO    ] 2026-06-22 03:12:53
[2026-06-22 03:12:53,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:12:54,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:12:54,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:12:54,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:12:54,303.303 INFO    ] time= 22/06/2026 03:12:54
[2026-06-22 03:12:54,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:12:54,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:12:54,441.441 INFO    ] No existing commands found in stream
[2026-06-22 03:12:59,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:12:59,464.464 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-22 03:13:03,641.641 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:13:03,643.643 INFO    ] Checking for system updates...
[2026-06-22 03:13:03,683.683 INFO    ] 200
[2026-06-22 03:13:03,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:13:03,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:13:03,742.742 INFO    ] No update needed
[2026-06-22 03:13:03,744.744 INFO    ] Checking for camera pi updates...
[2026-06-22 03:13:03,782.782 INFO    ] 200
[2026-06-22 03:13:03,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:13:03,826.826 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:13:03,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:13:03,919.919 INFO    ] No camera update needed
[2026-06-22 03:13:03,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:13:03,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:13:03,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:13:03,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:13:05,974.974 INFO    ] ================================================
[2026-06-22 03:13:05,989.989 INFO    ] Launching Daemon at Mon Jun 22 03:13:05 IST 2026
[2026-06-22 03:13:06,000.000 INFO    ] ================================================
[2026-06-22 03:13:06,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:13:06
[2026-06-22 03:13:07,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:13:07,321.321 INFO    ] Initializing speech engine...
[2026-06-22 03:13:07,334.334 INFO    ] 2026-06-22 03:13:07
[2026-06-22 03:13:07,621.621 INFO    ] 2026-06-22 03:13:07
[2026-06-22 03:13:07,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:13:07,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:13:07,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:13:08,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:13:08,009.009 INFO    ] time= 22/06/2026 03:13:08
[2026-06-22 03:13:08,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:13:08,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:13:08,118.118 INFO    ] No existing commands found in stream
[2026-06-22 03:13:13,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:13:13,146.146 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-22 03:13:14,477.477 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:13:14,480.480 INFO    ] Checking for system updates...
[2026-06-22 03:13:14,516.516 INFO    ] 200
[2026-06-22 03:13:14,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:13:14,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:13:14,572.572 INFO    ] No update needed
[2026-06-22 03:13:14,575.575 INFO    ] Checking for camera pi updates...
[2026-06-22 03:13:14,613.613 INFO    ] 200
[2026-06-22 03:13:14,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:13:14,656.656 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:13:14,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:13:14,706.706 INFO    ] No camera update needed
[2026-06-22 03:13:14,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:13:14,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:13:14,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:13:14,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:13:16,761.761 INFO    ] ================================================
[2026-06-22 03:13:16,777.777 INFO    ] Launching Daemon at Mon Jun 22 03:13:16 IST 2026
[2026-06-22 03:13:16,787.787 INFO    ] ================================================
[2026-06-22 03:13:17,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:13:17
[2026-06-22 03:13:17,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:13:18,248.248 INFO    ] Initializing speech engine...
[2026-06-22 03:13:18,258.258 INFO    ] 2026-06-22 03:13:18
[2026-06-22 03:13:18,534.534 INFO    ] 2026-06-22 03:13:18
[2026-06-22 03:13:18,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:13:18,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:13:18,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:13:19,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:13:19,105.105 INFO    ] time= 22/06/2026 03:13:19
[2026-06-22 03:13:19,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:13:19,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:13:19,266.266 INFO    ] No existing commands found in stream
[2026-06-22 03:13:24,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:13:24,288.288 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-22 03:13:25,436.436 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:13:25,441.441 INFO    ] Checking for system updates...
[2026-06-22 03:13:25,481.481 INFO    ] 200
[2026-06-22 03:13:25,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:13:25,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:13:25,545.545 INFO    ] No update needed
[2026-06-22 03:13:25,548.548 INFO    ] Checking for camera pi updates...
[2026-06-22 03:13:25,583.583 INFO    ] 200
[2026-06-22 03:13:25,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:13:25,628.628 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:13:25,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:13:25,723.723 INFO    ] No camera update needed
[2026-06-22 03:13:25,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:13:25,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:13:25,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:13:25,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:13:27,785.785 INFO    ] ================================================
[2026-06-22 03:13:27,801.801 INFO    ] Launching Daemon at Mon Jun 22 03:13:27 IST 2026
[2026-06-22 03:13:27,812.812 INFO    ] ================================================
[2026-06-22 03:13:28,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:13:28
[2026-06-22 03:13:28,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:13:29,187.187 INFO    ] Initializing speech engine...
[2026-06-22 03:13:29,192.192 INFO    ] 2026-06-22 03:13:29
[2026-06-22 03:13:29,442.442 INFO    ] 2026-06-22 03:13:29
[2026-06-22 03:13:29,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:13:29,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:13:29,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:13:29,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:13:29,890.890 INFO    ] time= 22/06/2026 03:13:29
[2026-06-22 03:13:29,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:13:30,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:13:30,059.059 INFO    ] No existing commands found in stream
[2026-06-22 03:13:35,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:13:35,074.074 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-22 03:13:35,478.478 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:13:35,480.480 INFO    ] Checking for system updates...
[2026-06-22 03:13:35,500.500 INFO    ] 200
[2026-06-22 03:13:35,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:13:35,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:13:35,533.533 INFO    ] No update needed
[2026-06-22 03:13:35,534.534 INFO    ] Checking for camera pi updates...
[2026-06-22 03:13:35,554.554 INFO    ] 200
[2026-06-22 03:13:35,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:13:35,581.581 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:13:35,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:13:35,658.658 INFO    ] No camera update needed
[2026-06-22 03:13:35,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:13:35,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:13:35,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:13:35,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:13:37,722.722 INFO    ] ================================================
[2026-06-22 03:13:37,738.738 INFO    ] Launching Daemon at Mon Jun 22 03:13:37 IST 2026
[2026-06-22 03:13:37,755.755 INFO    ] ================================================
[2026-06-22 03:13:38,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:13:38
[2026-06-22 03:13:39,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:13:39,320.320 INFO    ] Initializing speech engine...
[2026-06-22 03:13:39,331.331 INFO    ] 2026-06-22 03:13:39
[2026-06-22 03:13:39,641.641 INFO    ] 2026-06-22 03:13:39
[2026-06-22 03:13:39,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:13:39,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:13:39,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:13:40,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:13:40,147.147 INFO    ] time= 22/06/2026 03:13:40
[2026-06-22 03:13:40,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:13:40,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:13:40,287.287 INFO    ] No existing commands found in stream
[2026-06-22 03:13:45,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:13:45,311.311 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-22 03:13:47,790.790 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:13:47,793.793 INFO    ] Checking for system updates...
[2026-06-22 03:13:47,847.847 INFO    ] 200
[2026-06-22 03:13:47,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:13:47,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:13:47,913.913 INFO    ] No update needed
[2026-06-22 03:13:47,916.916 INFO    ] Checking for camera pi updates...
[2026-06-22 03:13:47,955.955 INFO    ] 200
[2026-06-22 03:13:47,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:13:48,013.013 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:13:48,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:13:48,085.085 INFO    ] No camera update needed
[2026-06-22 03:13:48,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:13:48,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:13:48,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:13:48,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:13:50,147.147 INFO    ] ================================================
[2026-06-22 03:13:50,163.163 INFO    ] Launching Daemon at Mon Jun 22 03:13:50 IST 2026
[2026-06-22 03:13:50,174.174 INFO    ] ================================================
[2026-06-22 03:13:50,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:13:50
[2026-06-22 03:13:51,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:13:51,503.503 INFO    ] Initializing speech engine...
[2026-06-22 03:13:51,515.515 INFO    ] 2026-06-22 03:13:51
[2026-06-22 03:13:51,782.782 INFO    ] 2026-06-22 03:13:51
[2026-06-22 03:13:51,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:13:52,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:13:52,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:13:52,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:13:52,160.160 INFO    ] time= 22/06/2026 03:13:52
[2026-06-22 03:13:52,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:13:52,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:13:52,320.320 INFO    ] No existing commands found in stream
[2026-06-22 03:13:57,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:13:57,353.353 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-22 03:14:00,754.754 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:14:00,757.757 INFO    ] Checking for system updates...
[2026-06-22 03:14:00,797.797 INFO    ] 200
[2026-06-22 03:14:00,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:14:00,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:14:00,854.854 INFO    ] No update needed
[2026-06-22 03:14:00,857.857 INFO    ] Checking for camera pi updates...
[2026-06-22 03:14:00,890.890 INFO    ] 200
[2026-06-22 03:14:00,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:14:00,936.936 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:14:01,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:14:01,116.116 INFO    ] No camera update needed
[2026-06-22 03:14:01,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:14:01,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:14:01,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:14:01,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:14:03,182.182 INFO    ] ================================================
[2026-06-22 03:14:03,203.203 INFO    ] Launching Daemon at Mon Jun 22 03:14:03 IST 2026
[2026-06-22 03:14:03,218.218 INFO    ] ================================================
[2026-06-22 03:14:03,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:14:03
[2026-06-22 03:14:04,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:14:04,725.725 INFO    ] Initializing speech engine...
[2026-06-22 03:14:04,742.742 INFO    ] 2026-06-22 03:14:04
[2026-06-22 03:14:04,996.996 INFO    ] 2026-06-22 03:14:04
[2026-06-22 03:14:05,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:14:05,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:14:05,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:14:05,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:14:05,368.368 INFO    ] time= 22/06/2026 03:14:05
[2026-06-22 03:14:05,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:14:05,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:14:05,448.448 INFO    ] No existing commands found in stream
[2026-06-22 03:14:10,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:14:10,463.463 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-22 03:14:11,992.992 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:14:11,995.995 INFO    ] Checking for system updates...
[2026-06-22 03:14:12,031.031 INFO    ] 200
[2026-06-22 03:14:12,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:14:12,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:14:12,090.090 INFO    ] No update needed
[2026-06-22 03:14:12,093.093 INFO    ] Checking for camera pi updates...
[2026-06-22 03:14:12,131.131 INFO    ] 200
[2026-06-22 03:14:12,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:14:12,174.174 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:14:12,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:14:12,251.251 INFO    ] No camera update needed
[2026-06-22 03:14:12,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:14:12,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:14:12,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:14:12,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:14:14,310.310 INFO    ] ================================================
[2026-06-22 03:14:14,326.326 INFO    ] Launching Daemon at Mon Jun 22 03:14:14 IST 2026
[2026-06-22 03:14:14,337.337 INFO    ] ================================================
[2026-06-22 03:14:14,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:14:14
[2026-06-22 03:14:15,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:14:15,867.867 INFO    ] Initializing speech engine...
[2026-06-22 03:14:15,873.873 INFO    ] 2026-06-22 03:14:15
[2026-06-22 03:14:16,170.170 INFO    ] 2026-06-22 03:14:16
[2026-06-22 03:14:16,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:14:16,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:14:16,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:14:16,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:14:16,646.646 INFO    ] time= 22/06/2026 03:14:16
[2026-06-22 03:14:16,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:14:16,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:14:16,778.778 INFO    ] No existing commands found in stream
[2026-06-22 03:14:21,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:14:21,795.795 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-22 03:14:22,520.520 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:14:22,523.523 INFO    ] Checking for system updates...
[2026-06-22 03:14:22,560.560 INFO    ] 200
[2026-06-22 03:14:22,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:14:22,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:14:22,619.619 INFO    ] No update needed
[2026-06-22 03:14:22,621.621 INFO    ] Checking for camera pi updates...
[2026-06-22 03:14:22,659.659 INFO    ] 200
[2026-06-22 03:14:22,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:14:22,702.702 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:14:22,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:14:22,794.794 INFO    ] No camera update needed
[2026-06-22 03:14:22,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:14:22,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:14:22,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:14:22,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:14:24,849.849 INFO    ] ================================================
[2026-06-22 03:14:24,864.864 INFO    ] Launching Daemon at Mon Jun 22 03:14:24 IST 2026
[2026-06-22 03:14:24,875.875 INFO    ] ================================================
[2026-06-22 03:14:25,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:14:25
[2026-06-22 03:14:25,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:14:26,255.255 INFO    ] Initializing speech engine...
[2026-06-22 03:14:26,261.261 INFO    ] 2026-06-22 03:14:26
[2026-06-22 03:14:26,522.522 INFO    ] 2026-06-22 03:14:26
[2026-06-22 03:14:26,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:14:26,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:14:26,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:14:26,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:14:26,945.945 INFO    ] time= 22/06/2026 03:14:26
[2026-06-22 03:14:27,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:14:27,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:14:27,125.125 INFO    ] No existing commands found in stream
[2026-06-22 03:14:32,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:14:32,140.140 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-22 03:14:34,543.543 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:14:34,546.546 INFO    ] Checking for system updates...
[2026-06-22 03:14:34,582.582 INFO    ] 200
[2026-06-22 03:14:34,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:14:34,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:14:34,649.649 INFO    ] No update needed
[2026-06-22 03:14:34,651.651 INFO    ] Checking for camera pi updates...
[2026-06-22 03:14:34,685.685 INFO    ] 200
[2026-06-22 03:14:34,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:14:34,728.728 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:14:34,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:14:34,796.796 INFO    ] No camera update needed
[2026-06-22 03:14:34,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:14:34,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:14:34,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:14:34,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:14:36,853.853 INFO    ] ================================================
[2026-06-22 03:14:36,868.868 INFO    ] Launching Daemon at Mon Jun 22 03:14:36 IST 2026
[2026-06-22 03:14:36,879.879 INFO    ] ================================================
[2026-06-22 03:14:37,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:14:37
[2026-06-22 03:14:38,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:14:38,324.324 INFO    ] Initializing speech engine...
[2026-06-22 03:14:38,332.332 INFO    ] 2026-06-22 03:14:38
[2026-06-22 03:14:38,592.592 INFO    ] 2026-06-22 03:14:38
[2026-06-22 03:14:38,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:14:38,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:14:38,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:14:39,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:14:39,069.069 INFO    ] time= 22/06/2026 03:14:39
[2026-06-22 03:14:39,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:14:39,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:14:39,219.219 INFO    ] No existing commands found in stream
[2026-06-22 03:14:44,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:14:44,234.234 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-22 03:14:47,475.475 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:14:47,477.477 INFO    ] Checking for system updates...
[2026-06-22 03:14:47,513.513 INFO    ] 200
[2026-06-22 03:14:47,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:14:47,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:14:47,571.571 INFO    ] No update needed
[2026-06-22 03:14:47,573.573 INFO    ] Checking for camera pi updates...
[2026-06-22 03:14:47,610.610 INFO    ] 200
[2026-06-22 03:14:47,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:14:47,658.658 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:14:47,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:14:47,739.739 INFO    ] No camera update needed
[2026-06-22 03:14:47,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:14:47,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:14:47,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:14:47,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:14:49,797.797 INFO    ] ================================================
[2026-06-22 03:14:49,812.812 INFO    ] Launching Daemon at Mon Jun 22 03:14:49 IST 2026
[2026-06-22 03:14:49,823.823 INFO    ] ================================================
[2026-06-22 03:14:50,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:14:50
[2026-06-22 03:14:50,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:14:51,180.180 INFO    ] Initializing speech engine...
[2026-06-22 03:14:51,196.196 INFO    ] 2026-06-22 03:14:51
[2026-06-22 03:14:51,482.482 INFO    ] 2026-06-22 03:14:51
[2026-06-22 03:14:51,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:14:51,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:14:51,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:14:51,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:14:51,831.831 INFO    ] time= 22/06/2026 03:14:51
[2026-06-22 03:14:51,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:14:51,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:14:51,908.908 INFO    ] No existing commands found in stream
[2026-06-22 03:14:56,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:14:56,924.924 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-22 03:14:58,879.879 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:14:58,881.881 INFO    ] Checking for system updates...
[2026-06-22 03:14:58,903.903 INFO    ] 200
[2026-06-22 03:14:58,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:14:58,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:14:58,951.951 INFO    ] No update needed
[2026-06-22 03:14:58,953.953 INFO    ] Checking for camera pi updates...
[2026-06-22 03:14:58,987.987 INFO    ] 200
[2026-06-22 03:14:58,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:14:59,036.036 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:14:59,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:14:59,115.115 INFO    ] No camera update needed
[2026-06-22 03:14:59,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:14:59,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:14:59,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:14:59,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:15:01,170.170 INFO    ] ================================================
[2026-06-22 03:15:01,186.186 INFO    ] Launching Daemon at Mon Jun 22 03:15:01 IST 2026
[2026-06-22 03:15:01,197.197 INFO    ] ================================================
[2026-06-22 03:15:01,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:15:01
[2026-06-22 03:15:03,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:15:03,661.661 INFO    ] Initializing speech engine...
[2026-06-22 03:15:03,665.665 INFO    ] 2026-06-22 03:15:03
[2026-06-22 03:15:04,114.114 INFO    ] 2026-06-22 03:15:04
[2026-06-22 03:15:04,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:15:04,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:15:04,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:15:04,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:15:04,685.685 INFO    ] time= 22/06/2026 03:15:04
[2026-06-22 03:15:04,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:15:04,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:15:04,796.796 INFO    ] No existing commands found in stream
[2026-06-22 03:15:09,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:15:09,824.824 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-22 03:15:14,083.083 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:15:14,084.084 INFO    ] Checking for system updates...
[2026-06-22 03:15:14,106.106 INFO    ] 200
[2026-06-22 03:15:14,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:15:14,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:15:14,141.141 INFO    ] No update needed
[2026-06-22 03:15:14,142.142 INFO    ] Checking for camera pi updates...
[2026-06-22 03:15:14,168.168 INFO    ] 200
[2026-06-22 03:15:14,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:15:14,215.215 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:15:14,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:15:14,290.290 INFO    ] No camera update needed
[2026-06-22 03:15:14,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:15:14,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:15:14,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:15:14,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:15:16,351.351 INFO    ] ================================================
[2026-06-22 03:15:16,367.367 INFO    ] Launching Daemon at Mon Jun 22 03:15:16 IST 2026
[2026-06-22 03:15:16,378.378 INFO    ] ================================================
[2026-06-22 03:15:16,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:15:16
[2026-06-22 03:15:17,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:15:17,776.776 INFO    ] Initializing speech engine...
[2026-06-22 03:15:17,786.786 INFO    ] 2026-06-22 03:15:17
[2026-06-22 03:15:18,063.063 INFO    ] 2026-06-22 03:15:18
[2026-06-22 03:15:18,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:15:18,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:15:18,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:15:18,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:15:18,551.551 INFO    ] time= 22/06/2026 03:15:18
[2026-06-22 03:15:18,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:15:18,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:15:18,721.721 INFO    ] No existing commands found in stream
[2026-06-22 03:15:23,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:15:23,758.758 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-22 03:15:26,636.636 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:15:26,637.637 INFO    ] Checking for system updates...
[2026-06-22 03:15:26,659.659 INFO    ] 200
[2026-06-22 03:15:26,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:15:26,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:15:26,715.715 INFO    ] No update needed
[2026-06-22 03:15:26,717.717 INFO    ] Checking for camera pi updates...
[2026-06-22 03:15:26,754.754 INFO    ] 200
[2026-06-22 03:15:26,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:15:26,802.802 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:15:26,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:15:26,882.882 INFO    ] No camera update needed
[2026-06-22 03:15:26,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:15:26,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:15:26,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:15:26,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:15:28,940.940 INFO    ] ================================================
[2026-06-22 03:15:28,956.956 INFO    ] Launching Daemon at Mon Jun 22 03:15:28 IST 2026
[2026-06-22 03:15:28,967.967 INFO    ] ================================================
[2026-06-22 03:15:29,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:15:29
[2026-06-22 03:15:30,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:15:30,422.422 INFO    ] Initializing speech engine...
[2026-06-22 03:15:30,431.431 INFO    ] 2026-06-22 03:15:30
[2026-06-22 03:15:30,726.726 INFO    ] 2026-06-22 03:15:30
[2026-06-22 03:15:30,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:15:30,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:15:30,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:15:31,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:15:31,107.107 INFO    ] time= 22/06/2026 03:15:31
[2026-06-22 03:15:31,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:15:31,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:15:31,233.233 INFO    ] No existing commands found in stream
[2026-06-22 03:15:36,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:15:36,249.249 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-22 03:15:39,639.639 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:15:39,641.641 INFO    ] Checking for system updates...
[2026-06-22 03:15:39,665.665 INFO    ] 200
[2026-06-22 03:15:39,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:15:39,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:15:39,708.708 INFO    ] No update needed
[2026-06-22 03:15:39,711.711 INFO    ] Checking for camera pi updates...
[2026-06-22 03:15:39,750.750 INFO    ] 200
[2026-06-22 03:15:39,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:15:39,800.800 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:15:39,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:15:39,889.889 INFO    ] No camera update needed
[2026-06-22 03:15:39,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:15:39,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:15:39,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:15:39,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:15:41,946.946 INFO    ] ================================================
[2026-06-22 03:15:41,963.963 INFO    ] Launching Daemon at Mon Jun 22 03:15:41 IST 2026
[2026-06-22 03:15:41,976.976 INFO    ] ================================================
[2026-06-22 03:15:42,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:15:42
[2026-06-22 03:15:43,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:15:43,330.330 INFO    ] Initializing speech engine...
[2026-06-22 03:15:43,355.355 INFO    ] 2026-06-22 03:15:43
[2026-06-22 03:15:43,611.611 INFO    ] 2026-06-22 03:15:43
[2026-06-22 03:15:43,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:15:43,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:15:43,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:15:43,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:15:43,987.987 INFO    ] time= 22/06/2026 03:15:43
[2026-06-22 03:15:44,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:15:44,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:15:44,157.157 INFO    ] No existing commands found in stream
[2026-06-22 03:15:49,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:15:49,191.191 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-22 03:15:50,790.790 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:15:50,792.792 INFO    ] Checking for system updates...
[2026-06-22 03:15:50,813.813 INFO    ] 200
[2026-06-22 03:15:50,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:15:50,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:15:50,854.854 INFO    ] No update needed
[2026-06-22 03:15:50,856.856 INFO    ] Checking for camera pi updates...
[2026-06-22 03:15:50,879.879 INFO    ] 200
[2026-06-22 03:15:50,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:15:50,922.922 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:15:50,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:15:51,002.002 INFO    ] No camera update needed
[2026-06-22 03:15:51,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:15:51,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:15:51,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:15:51,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:15:53,061.061 INFO    ] ================================================
[2026-06-22 03:15:53,077.077 INFO    ] Launching Daemon at Mon Jun 22 03:15:53 IST 2026
[2026-06-22 03:15:53,088.088 INFO    ] ================================================
[2026-06-22 03:15:53,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:15:53
[2026-06-22 03:15:54,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:15:54,435.435 INFO    ] Initializing speech engine...
[2026-06-22 03:15:54,443.443 INFO    ] 2026-06-22 03:15:54
[2026-06-22 03:15:54,697.697 INFO    ] 2026-06-22 03:15:54
[2026-06-22 03:15:54,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:15:54,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:15:54,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:15:55,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:15:55,075.075 INFO    ] time= 22/06/2026 03:15:55
[2026-06-22 03:15:55,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:15:55,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:15:55,236.236 INFO    ] No existing commands found in stream
[2026-06-22 03:16:00,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:16:00,269.269 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-22 03:16:04,519.519 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:16:04,522.522 INFO    ] Checking for system updates...
[2026-06-22 03:16:04,562.562 INFO    ] 200
[2026-06-22 03:16:04,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:16:04,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:16:04,626.626 INFO    ] No update needed
[2026-06-22 03:16:04,629.629 INFO    ] Checking for camera pi updates...
[2026-06-22 03:16:04,667.667 INFO    ] 200
[2026-06-22 03:16:04,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:16:04,710.710 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:16:04,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:16:04,894.894 INFO    ] No camera update needed
[2026-06-22 03:16:04,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:16:04,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:16:04,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:16:04,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:16:06,954.954 INFO    ] ================================================
[2026-06-22 03:16:06,970.970 INFO    ] Launching Daemon at Mon Jun 22 03:16:06 IST 2026
[2026-06-22 03:16:06,981.981 INFO    ] ================================================
[2026-06-22 03:16:07,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:16:07
[2026-06-22 03:16:08,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:16:08,451.451 INFO    ] Initializing speech engine...
[2026-06-22 03:16:08,462.462 INFO    ] 2026-06-22 03:16:08
[2026-06-22 03:16:08,711.711 INFO    ] 2026-06-22 03:16:08
[2026-06-22 03:16:08,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:16:08,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:16:09,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:16:09,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:16:09,193.193 INFO    ] time= 22/06/2026 03:16:09
[2026-06-22 03:16:09,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:16:09,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:16:09,331.331 INFO    ] No existing commands found in stream
[2026-06-22 03:16:14,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:16:14,341.341 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-22 03:16:16,877.877 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:16:16,878.878 INFO    ] Checking for system updates...
[2026-06-22 03:16:16,899.899 INFO    ] 200
[2026-06-22 03:16:16,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:16:16,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:16:16,952.952 INFO    ] No update needed
[2026-06-22 03:16:16,954.954 INFO    ] Checking for camera pi updates...
[2026-06-22 03:16:16,992.992 INFO    ] 200
[2026-06-22 03:16:16,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:16:17,036.036 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:16:17,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:16:17,134.134 INFO    ] No camera update needed
[2026-06-22 03:16:17,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:16:17,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:16:17,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:16:17,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:16:19,195.195 INFO    ] ================================================
[2026-06-22 03:16:19,211.211 INFO    ] Launching Daemon at Mon Jun 22 03:16:19 IST 2026
[2026-06-22 03:16:19,222.222 INFO    ] ================================================
[2026-06-22 03:16:19,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:16:19
[2026-06-22 03:16:20,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:16:20,555.555 INFO    ] Initializing speech engine...
[2026-06-22 03:16:20,563.563 INFO    ] 2026-06-22 03:16:20
[2026-06-22 03:16:20,854.854 INFO    ] 2026-06-22 03:16:20
[2026-06-22 03:16:20,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:16:21,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:16:21,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:16:21,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:16:21,353.353 INFO    ] time= 22/06/2026 03:16:21
[2026-06-22 03:16:21,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:16:21,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:16:21,504.504 INFO    ] No existing commands found in stream
[2026-06-22 03:16:26,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:16:26,529.529 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-22 03:16:27,282.282 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:16:27,284.284 INFO    ] Checking for system updates...
[2026-06-22 03:16:27,324.324 INFO    ] 200
[2026-06-22 03:16:27,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:16:27,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:16:27,388.388 INFO    ] No update needed
[2026-06-22 03:16:27,390.390 INFO    ] Checking for camera pi updates...
[2026-06-22 03:16:27,423.423 INFO    ] 200
[2026-06-22 03:16:27,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:16:27,471.471 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:16:27,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:16:27,572.572 INFO    ] No camera update needed
[2026-06-22 03:16:27,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:16:27,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:16:27,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:16:27,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:16:29,629.629 INFO    ] ================================================
[2026-06-22 03:16:29,644.644 INFO    ] Launching Daemon at Mon Jun 22 03:16:29 IST 2026
[2026-06-22 03:16:29,655.655 INFO    ] ================================================
[2026-06-22 03:16:30,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:16:30
[2026-06-22 03:16:30,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:16:31,035.035 INFO    ] Initializing speech engine...
[2026-06-22 03:16:31,048.048 INFO    ] 2026-06-22 03:16:31
[2026-06-22 03:16:31,314.314 INFO    ] 2026-06-22 03:16:31
[2026-06-22 03:16:31,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:16:31,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:16:31,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:16:31,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:16:31,679.679 INFO    ] time= 22/06/2026 03:16:31
[2026-06-22 03:16:31,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:16:31,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:16:31,777.777 INFO    ] No existing commands found in stream
[2026-06-22 03:16:36,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:16:36,795.795 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-22 03:16:39,276.276 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:16:39,277.277 INFO    ] Checking for system updates...
[2026-06-22 03:16:39,299.299 INFO    ] 200
[2026-06-22 03:16:39,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:16:39,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:16:39,354.354 INFO    ] No update needed
[2026-06-22 03:16:39,357.357 INFO    ] Checking for camera pi updates...
[2026-06-22 03:16:39,390.390 INFO    ] 200
[2026-06-22 03:16:39,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:16:39,438.438 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:16:39,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:16:39,531.531 INFO    ] No camera update needed
[2026-06-22 03:16:39,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:16:39,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:16:39,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:16:39,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:16:41,587.587 INFO    ] ================================================
[2026-06-22 03:16:41,602.602 INFO    ] Launching Daemon at Mon Jun 22 03:16:41 IST 2026
[2026-06-22 03:16:41,613.613 INFO    ] ================================================
[2026-06-22 03:16:42,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:16:42
[2026-06-22 03:16:42,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:16:42,992.992 INFO    ] Initializing speech engine...
[2026-06-22 03:16:42,999.999 INFO    ] 2026-06-22 03:16:42
[2026-06-22 03:16:43,261.261 INFO    ] 2026-06-22 03:16:43
[2026-06-22 03:16:43,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:16:43,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:16:43,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:16:43,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:16:43,702.702 INFO    ] time= 22/06/2026 03:16:43
[2026-06-22 03:16:43,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:16:43,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:16:43,882.882 INFO    ] No existing commands found in stream
[2026-06-22 03:16:48,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:16:48,897.897 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-22 03:16:52,521.521 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:16:52,523.523 INFO    ] Checking for system updates...
[2026-06-22 03:16:52,566.566 INFO    ] 200
[2026-06-22 03:16:52,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:16:52,628.628 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:16:52,630.630 INFO    ] No update needed
[2026-06-22 03:16:52,633.633 INFO    ] Checking for camera pi updates...
[2026-06-22 03:16:52,667.667 INFO    ] 200
[2026-06-22 03:16:52,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:16:52,709.709 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:16:52,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:16:52,795.795 INFO    ] No camera update needed
[2026-06-22 03:16:52,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:16:52,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:16:52,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:16:52,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:16:54,856.856 INFO    ] ================================================
[2026-06-22 03:16:54,871.871 INFO    ] Launching Daemon at Mon Jun 22 03:16:54 IST 2026
[2026-06-22 03:16:54,882.882 INFO    ] ================================================
[2026-06-22 03:16:55,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:16:55
[2026-06-22 03:16:55,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:16:56,205.205 INFO    ] Initializing speech engine...
[2026-06-22 03:16:56,212.212 INFO    ] 2026-06-22 03:16:56
[2026-06-22 03:16:56,507.507 INFO    ] 2026-06-22 03:16:56
[2026-06-22 03:16:56,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:16:56,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:16:56,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:16:56,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:16:56,863.863 INFO    ] time= 22/06/2026 03:16:56
[2026-06-22 03:16:56,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:16:56,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:16:57,010.010 INFO    ] No existing commands found in stream
[2026-06-22 03:17:02,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:17:02,028.028 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-22 03:17:02,567.567 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:17:02,570.570 INFO    ] Checking for system updates...
[2026-06-22 03:17:02,616.616 INFO    ] 200
[2026-06-22 03:17:02,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:17:02,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:17:02,690.690 INFO    ] No update needed
[2026-06-22 03:17:02,693.693 INFO    ] Checking for camera pi updates...
[2026-06-22 03:17:02,732.732 INFO    ] 200
[2026-06-22 03:17:02,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:17:02,794.794 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:17:02,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:17:02,845.845 INFO    ] No camera update needed
[2026-06-22 03:17:02,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:17:02,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:17:02,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:17:02,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:17:04,908.908 INFO    ] ================================================
[2026-06-22 03:17:04,923.923 INFO    ] Launching Daemon at Mon Jun 22 03:17:04 IST 2026
[2026-06-22 03:17:04,933.933 INFO    ] ================================================
[2026-06-22 03:17:05,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:17:05
[2026-06-22 03:17:06,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:17:06,426.426 INFO    ] Initializing speech engine...
[2026-06-22 03:17:06,433.433 INFO    ] 2026-06-22 03:17:06
[2026-06-22 03:17:06,693.693 INFO    ] 2026-06-22 03:17:06
[2026-06-22 03:17:06,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:17:06,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:17:06,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:17:07,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:17:07,165.165 INFO    ] time= 22/06/2026 03:17:07
[2026-06-22 03:17:07,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:17:07,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:17:07,316.316 INFO    ] No existing commands found in stream
[2026-06-22 03:17:12,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:17:12,331.331 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-22 03:17:14,045.045 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:17:14,047.047 INFO    ] Checking for system updates...
[2026-06-22 03:17:14,088.088 INFO    ] 200
[2026-06-22 03:17:14,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:17:14,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:17:14,147.147 INFO    ] No update needed
[2026-06-22 03:17:14,150.150 INFO    ] Checking for camera pi updates...
[2026-06-22 03:17:14,188.188 INFO    ] 200
[2026-06-22 03:17:14,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:17:14,233.233 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:17:14,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:17:14,337.337 INFO    ] No camera update needed
[2026-06-22 03:17:14,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:17:14,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:17:14,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:17:14,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:17:16,395.395 INFO    ] ================================================
[2026-06-22 03:17:16,409.409 INFO    ] Launching Daemon at Mon Jun 22 03:17:16 IST 2026
[2026-06-22 03:17:16,421.421 INFO    ] ================================================
[2026-06-22 03:17:16,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:17:16
[2026-06-22 03:17:17,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:17:17,763.763 INFO    ] Initializing speech engine...
[2026-06-22 03:17:17,772.772 INFO    ] 2026-06-22 03:17:17
[2026-06-22 03:17:18,046.046 INFO    ] 2026-06-22 03:17:18
[2026-06-22 03:17:18,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:17:18,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:17:18,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:17:18,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:17:18,488.488 INFO    ] time= 22/06/2026 03:17:18
[2026-06-22 03:17:18,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:17:18,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:17:18,640.640 INFO    ] No existing commands found in stream
[2026-06-22 03:17:23,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:17:23,655.655 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-22 03:17:26,541.541 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:17:26,543.543 INFO    ] Checking for system updates...
[2026-06-22 03:17:26,564.564 INFO    ] 200
[2026-06-22 03:17:26,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:17:26,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:17:26,597.597 INFO    ] No update needed
[2026-06-22 03:17:26,599.599 INFO    ] Checking for camera pi updates...
[2026-06-22 03:17:26,618.618 INFO    ] 200
[2026-06-22 03:17:26,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:17:26,651.651 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:17:26,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:17:26,745.745 INFO    ] No camera update needed
[2026-06-22 03:17:26,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:17:26,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:17:26,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:17:26,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:17:28,803.803 INFO    ] ================================================
[2026-06-22 03:17:28,819.819 INFO    ] Launching Daemon at Mon Jun 22 03:17:28 IST 2026
[2026-06-22 03:17:28,830.830 INFO    ] ================================================
[2026-06-22 03:17:29,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:17:29
[2026-06-22 03:17:29,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:17:30,206.206 INFO    ] Initializing speech engine...
[2026-06-22 03:17:30,215.215 INFO    ] 2026-06-22 03:17:30
[2026-06-22 03:17:30,464.464 INFO    ] 2026-06-22 03:17:30
[2026-06-22 03:17:30,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:17:30,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:17:30,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:17:30,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:17:31,018.018 INFO    ] time= 22/06/2026 03:17:30
[2026-06-22 03:17:31,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:17:31,042.042 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:17:31,158.158 INFO    ] No existing commands found in stream
[2026-06-22 03:17:36,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:17:36,185.185 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-22 03:17:39,643.643 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:17:39,645.645 INFO    ] Checking for system updates...
[2026-06-22 03:17:39,676.676 INFO    ] 200
[2026-06-22 03:17:39,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:17:39,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:17:39,743.743 INFO    ] No update needed
[2026-06-22 03:17:39,746.746 INFO    ] Checking for camera pi updates...
[2026-06-22 03:17:39,785.785 INFO    ] 200
[2026-06-22 03:17:39,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:17:39,830.830 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:17:39,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:17:39,918.918 INFO    ] No camera update needed
[2026-06-22 03:17:39,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:17:39,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:17:39,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:17:39,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:17:41,976.976 INFO    ] ================================================
[2026-06-22 03:17:41,992.992 INFO    ] Launching Daemon at Mon Jun 22 03:17:41 IST 2026
[2026-06-22 03:17:42,003.003 INFO    ] ================================================
[2026-06-22 03:17:42,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:17:42
[2026-06-22 03:17:43,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:17:43,316.316 INFO    ] Initializing speech engine...
[2026-06-22 03:17:43,329.329 INFO    ] 2026-06-22 03:17:43
[2026-06-22 03:17:43,596.596 INFO    ] 2026-06-22 03:17:43
[2026-06-22 03:17:43,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:17:43,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:17:43,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:17:44,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:17:44,163.163 INFO    ] time= 22/06/2026 03:17:44
[2026-06-22 03:17:44,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:17:44,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:17:44,302.302 INFO    ] No existing commands found in stream
[2026-06-22 03:17:49,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:17:49,334.334 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-22 03:17:53,480.480 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:17:53,483.483 INFO    ] Checking for system updates...
[2026-06-22 03:17:53,525.525 INFO    ] 200
[2026-06-22 03:17:53,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:17:53,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:17:53,584.584 INFO    ] No update needed
[2026-06-22 03:17:53,587.587 INFO    ] Checking for camera pi updates...
[2026-06-22 03:17:53,622.622 INFO    ] 200
[2026-06-22 03:17:53,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:17:53,666.666 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:17:53,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:17:53,771.771 INFO    ] No camera update needed
[2026-06-22 03:17:53,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:17:53,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:17:53,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:17:53,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:17:55,833.833 INFO    ] ================================================
[2026-06-22 03:17:55,850.850 INFO    ] Launching Daemon at Mon Jun 22 03:17:55 IST 2026
[2026-06-22 03:17:55,864.864 INFO    ] ================================================
[2026-06-22 03:17:56,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:17:56
[2026-06-22 03:17:57,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:17:57,293.293 INFO    ] Initializing speech engine...
[2026-06-22 03:17:57,303.303 INFO    ] 2026-06-22 03:17:57
[2026-06-22 03:17:57,548.548 INFO    ] 2026-06-22 03:17:57
[2026-06-22 03:17:57,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:17:57,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:17:57,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:17:57,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:17:57,916.916 INFO    ] time= 22/06/2026 03:17:57
[2026-06-22 03:17:57,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:17:57,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:17:58,092.092 INFO    ] No existing commands found in stream
[2026-06-22 03:18:03,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:18:03,125.125 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-22 03:18:05,370.370 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:18:05,372.372 INFO    ] Checking for system updates...
[2026-06-22 03:18:05,408.408 INFO    ] 200
[2026-06-22 03:18:05,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:18:05,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:18:05,466.466 INFO    ] No update needed
[2026-06-22 03:18:05,468.468 INFO    ] Checking for camera pi updates...
[2026-06-22 03:18:05,505.505 INFO    ] 200
[2026-06-22 03:18:05,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:18:05,553.553 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:18:05,731.731 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:18:05,734.734 INFO    ] No camera update needed
[2026-06-22 03:18:05,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:18:05,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:18:05,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:18:05,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:18:07,792.792 INFO    ] ================================================
[2026-06-22 03:18:07,808.808 INFO    ] Launching Daemon at Mon Jun 22 03:18:07 IST 2026
[2026-06-22 03:18:07,820.820 INFO    ] ================================================
[2026-06-22 03:18:08,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:18:08
[2026-06-22 03:18:09,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:18:09,410.410 INFO    ] Initializing speech engine...
[2026-06-22 03:18:09,420.420 INFO    ] 2026-06-22 03:18:09
[2026-06-22 03:18:09,707.707 INFO    ] 2026-06-22 03:18:09
[2026-06-22 03:18:09,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:18:09,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:18:09,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:18:10,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:18:10,167.167 INFO    ] time= 22/06/2026 03:18:10
[2026-06-22 03:18:10,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:18:10,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:18:10,320.320 INFO    ] No existing commands found in stream
[2026-06-22 03:18:15,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:18:15,353.353 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-22 03:18:17,243.243 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:18:17,244.244 INFO    ] Checking for system updates...
[2026-06-22 03:18:17,266.266 INFO    ] 200
[2026-06-22 03:18:17,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:18:17,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:18:17,315.315 INFO    ] No update needed
[2026-06-22 03:18:17,319.319 INFO    ] Checking for camera pi updates...
[2026-06-22 03:18:17,353.353 INFO    ] 200
[2026-06-22 03:18:17,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:18:17,403.403 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:18:17,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:18:17,459.459 INFO    ] No camera update needed
[2026-06-22 03:18:17,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:18:17,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:18:17,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:18:17,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:18:19,522.522 INFO    ] ================================================
[2026-06-22 03:18:19,541.541 INFO    ] Launching Daemon at Mon Jun 22 03:18:19 IST 2026
[2026-06-22 03:18:19,553.553 INFO    ] ================================================
[2026-06-22 03:18:20,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:18:20
[2026-06-22 03:18:20,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:18:21,182.182 INFO    ] Initializing speech engine...
[2026-06-22 03:18:21,194.194 INFO    ] 2026-06-22 03:18:21
[2026-06-22 03:18:21,471.471 INFO    ] 2026-06-22 03:18:21
[2026-06-22 03:18:21,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:18:21,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:18:21,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:18:21,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:18:21,922.922 INFO    ] time= 22/06/2026 03:18:21
[2026-06-22 03:18:21,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:18:22,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:18:22,072.072 INFO    ] No existing commands found in stream
[2026-06-22 03:18:27,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:18:27,088.088 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-22 03:18:27,769.769 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:18:27,770.770 INFO    ] Checking for system updates...
[2026-06-22 03:18:27,799.799 INFO    ] 200
[2026-06-22 03:18:27,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:18:27,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:18:27,857.857 INFO    ] No update needed
[2026-06-22 03:18:27,859.859 INFO    ] Checking for camera pi updates...
[2026-06-22 03:18:27,896.896 INFO    ] 200
[2026-06-22 03:18:27,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:18:27,940.940 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:18:28,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:18:28,024.024 INFO    ] No camera update needed
[2026-06-22 03:18:28,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:18:28,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:18:28,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:18:28,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:18:30,079.079 INFO    ] ================================================
[2026-06-22 03:18:30,095.095 INFO    ] Launching Daemon at Mon Jun 22 03:18:30 IST 2026
[2026-06-22 03:18:30,106.106 INFO    ] ================================================
[2026-06-22 03:18:30,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:18:30
[2026-06-22 03:18:31,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:18:31,615.615 INFO    ] Initializing speech engine...
[2026-06-22 03:18:31,626.626 INFO    ] 2026-06-22 03:18:31
[2026-06-22 03:18:31,900.900 INFO    ] 2026-06-22 03:18:31
[2026-06-22 03:18:31,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:18:32,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:18:32,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:18:32,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:18:32,362.362 INFO    ] time= 22/06/2026 03:18:32
[2026-06-22 03:18:32,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:18:32,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:18:32,547.547 INFO    ] No existing commands found in stream
[2026-06-22 03:18:37,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:18:37,563.563 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-22 03:18:41,900.900 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:18:41,903.903 INFO    ] Checking for system updates...
[2026-06-22 03:18:41,940.940 INFO    ] 200
[2026-06-22 03:18:41,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:18:42,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:18:42,004.004 INFO    ] No update needed
[2026-06-22 03:18:42,009.009 INFO    ] Checking for camera pi updates...
[2026-06-22 03:18:42,045.045 INFO    ] 200
[2026-06-22 03:18:42,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:18:42,089.089 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:18:42,188.188 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:18:42,190.190 INFO    ] No camera update needed
[2026-06-22 03:18:42,193.193 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:18:42,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:18:42,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:18:42,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:18:44,248.248 INFO    ] ================================================
[2026-06-22 03:18:44,263.263 INFO    ] Launching Daemon at Mon Jun 22 03:18:44 IST 2026
[2026-06-22 03:18:44,274.274 INFO    ] ================================================
[2026-06-22 03:18:44,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:18:44
[2026-06-22 03:18:45,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:18:45,831.831 INFO    ] Initializing speech engine...
[2026-06-22 03:18:45,840.840 INFO    ] 2026-06-22 03:18:45
[2026-06-22 03:18:46,107.107 INFO    ] 2026-06-22 03:18:46
[2026-06-22 03:18:46,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:18:46,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:18:46,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:18:46,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:18:46,829.829 INFO    ] time= 22/06/2026 03:18:46
[2026-06-22 03:18:46,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:18:46,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:18:47,075.075 INFO    ] No existing commands found in stream
[2026-06-22 03:18:52,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:18:52,109.109 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-22 03:18:52,578.578 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:18:52,582.582 INFO    ] Checking for system updates...
[2026-06-22 03:18:52,624.624 INFO    ] 200
[2026-06-22 03:18:52,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:18:52,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:18:52,683.683 INFO    ] No update needed
[2026-06-22 03:18:52,686.686 INFO    ] Checking for camera pi updates...
[2026-06-22 03:18:52,720.720 INFO    ] 200
[2026-06-22 03:18:52,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:18:52,764.764 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:18:52,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:18:52,853.853 INFO    ] No camera update needed
[2026-06-22 03:18:52,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:18:52,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:18:52,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:18:52,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:18:54,910.910 INFO    ] ================================================
[2026-06-22 03:18:54,926.926 INFO    ] Launching Daemon at Mon Jun 22 03:18:54 IST 2026
[2026-06-22 03:18:54,936.936 INFO    ] ================================================
[2026-06-22 03:18:55,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:18:55
[2026-06-22 03:18:56,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:18:56,392.392 INFO    ] Initializing speech engine...
[2026-06-22 03:18:56,405.405 INFO    ] 2026-06-22 03:18:56
[2026-06-22 03:18:56,681.681 INFO    ] 2026-06-22 03:18:56
[2026-06-22 03:18:56,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:18:56,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:18:56,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:18:57,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:18:57,151.151 INFO    ] time= 22/06/2026 03:18:57
[2026-06-22 03:18:57,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:18:57,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:18:57,366.366 INFO    ] No existing commands found in stream
[2026-06-22 03:19:02,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:19:02,388.388 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-22 03:19:04,876.876 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:19:04,879.879 INFO    ] Checking for system updates...
[2026-06-22 03:19:04,917.917 INFO    ] 200
[2026-06-22 03:19:04,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:19:04,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:19:04,977.977 INFO    ] No update needed
[2026-06-22 03:19:04,979.979 INFO    ] Checking for camera pi updates...
[2026-06-22 03:19:05,014.014 INFO    ] 200
[2026-06-22 03:19:05,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:19:05,062.062 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:19:05,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:19:05,118.118 INFO    ] No camera update needed
[2026-06-22 03:19:05,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:19:05,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:19:05,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:19:05,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:19:07,178.178 INFO    ] ================================================
[2026-06-22 03:19:07,194.194 INFO    ] Launching Daemon at Mon Jun 22 03:19:07 IST 2026
[2026-06-22 03:19:07,206.206 INFO    ] ================================================
[2026-06-22 03:19:07,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:19:07
[2026-06-22 03:19:08,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:19:08,673.673 INFO    ] Initializing speech engine...
[2026-06-22 03:19:08,680.680 INFO    ] 2026-06-22 03:19:08
[2026-06-22 03:19:08,935.935 INFO    ] 2026-06-22 03:19:08
[2026-06-22 03:19:08,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:19:09,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:19:09,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:19:09,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:19:09,405.405 INFO    ] time= 22/06/2026 03:19:09
[2026-06-22 03:19:09,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:19:09,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:19:09,560.560 INFO    ] No existing commands found in stream
[2026-06-22 03:19:14,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:19:14,575.575 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-22 03:19:17,088.088 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:19:17,091.091 INFO    ] Checking for system updates...
[2026-06-22 03:19:17,124.124 INFO    ] 200
[2026-06-22 03:19:17,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:19:17,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:19:17,158.158 INFO    ] No update needed
[2026-06-22 03:19:17,159.159 INFO    ] Checking for camera pi updates...
[2026-06-22 03:19:17,181.181 INFO    ] 200
[2026-06-22 03:19:17,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:19:17,205.205 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:19:17,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:19:17,286.286 INFO    ] No camera update needed
[2026-06-22 03:19:17,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:19:17,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:19:17,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:19:17,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:19:19,348.348 INFO    ] ================================================
[2026-06-22 03:19:19,364.364 INFO    ] Launching Daemon at Mon Jun 22 03:19:19 IST 2026
[2026-06-22 03:19:19,375.375 INFO    ] ================================================
[2026-06-22 03:19:19,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:19:19
[2026-06-22 03:19:20,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:19:20,753.753 INFO    ] Initializing speech engine...
[2026-06-22 03:19:20,762.762 INFO    ] 2026-06-22 03:19:20
[2026-06-22 03:19:21,024.024 INFO    ] 2026-06-22 03:19:21
[2026-06-22 03:19:21,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:19:21,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:19:21,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:19:21,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:19:21,464.464 INFO    ] time= 22/06/2026 03:19:21
[2026-06-22 03:19:21,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:19:21,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:19:21,629.629 INFO    ] No existing commands found in stream
[2026-06-22 03:19:26,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:19:26,644.644 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-22 03:19:26,972.972 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:19:26,975.975 INFO    ] Checking for system updates...
[2026-06-22 03:19:27,010.010 INFO    ] 200
[2026-06-22 03:19:27,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:19:27,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:19:27,067.067 INFO    ] No update needed
[2026-06-22 03:19:27,069.069 INFO    ] Checking for camera pi updates...
[2026-06-22 03:19:27,103.103 INFO    ] 200
[2026-06-22 03:19:27,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:19:27,150.150 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:19:27,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:19:27,246.246 INFO    ] No camera update needed
[2026-06-22 03:19:27,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:19:27,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:19:27,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:19:27,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:19:29,303.303 INFO    ] ================================================
[2026-06-22 03:19:29,320.320 INFO    ] Launching Daemon at Mon Jun 22 03:19:29 IST 2026
[2026-06-22 03:19:29,331.331 INFO    ] ================================================
[2026-06-22 03:19:29,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:19:29
[2026-06-22 03:19:30,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:19:30,826.826 INFO    ] Initializing speech engine...
[2026-06-22 03:19:30,837.837 INFO    ] 2026-06-22 03:19:30
[2026-06-22 03:19:31,147.147 INFO    ] 2026-06-22 03:19:31
[2026-06-22 03:19:31,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:19:31,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:19:31,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:19:31,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:19:31,522.522 INFO    ] time= 22/06/2026 03:19:31
[2026-06-22 03:19:31,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:19:31,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:19:31,600.600 INFO    ] No existing commands found in stream
[2026-06-22 03:19:36,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:19:36,616.616 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-22 03:19:39,087.087 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:19:39,090.090 INFO    ] Checking for system updates...
[2026-06-22 03:19:39,127.127 INFO    ] 200
[2026-06-22 03:19:39,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:19:39,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:19:39,190.190 INFO    ] No update needed
[2026-06-22 03:19:39,193.193 INFO    ] Checking for camera pi updates...
[2026-06-22 03:19:39,229.229 INFO    ] 200
[2026-06-22 03:19:39,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:19:39,273.273 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:19:39,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:19:39,354.354 INFO    ] No camera update needed
[2026-06-22 03:19:39,357.357 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:19:39,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:19:39,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:19:39,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:19:41,410.410 INFO    ] ================================================
[2026-06-22 03:19:41,426.426 INFO    ] Launching Daemon at Mon Jun 22 03:19:41 IST 2026
[2026-06-22 03:19:41,438.438 INFO    ] ================================================
[2026-06-22 03:19:42,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:19:42
[2026-06-22 03:19:42,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:19:43,027.027 INFO    ] Initializing speech engine...
[2026-06-22 03:19:43,036.036 INFO    ] 2026-06-22 03:19:43
[2026-06-22 03:19:43,313.313 INFO    ] 2026-06-22 03:19:43
[2026-06-22 03:19:43,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:19:43,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:19:43,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:19:43,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:19:43,792.792 INFO    ] time= 22/06/2026 03:19:43
[2026-06-22 03:19:43,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:19:43,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:19:43,939.939 INFO    ] No existing commands found in stream
[2026-06-22 03:19:48,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:19:48,955.955 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-22 03:19:50,094.094 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:19:50,097.097 INFO    ] Checking for system updates...
[2026-06-22 03:19:50,134.134 INFO    ] 200
[2026-06-22 03:19:50,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:19:50,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:19:50,194.194 INFO    ] No update needed
[2026-06-22 03:19:50,197.197 INFO    ] Checking for camera pi updates...
[2026-06-22 03:19:50,232.232 INFO    ] 200
[2026-06-22 03:19:50,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:19:50,277.277 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:19:50,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:19:50,344.344 INFO    ] No camera update needed
[2026-06-22 03:19:50,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:19:50,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:19:50,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:19:50,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:19:52,402.402 INFO    ] ================================================
[2026-06-22 03:19:52,418.418 INFO    ] Launching Daemon at Mon Jun 22 03:19:52 IST 2026
[2026-06-22 03:19:52,428.428 INFO    ] ================================================
[2026-06-22 03:19:53,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:19:53
[2026-06-22 03:19:53,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:19:54,006.006 INFO    ] Initializing speech engine...
[2026-06-22 03:19:54,012.012 INFO    ] 2026-06-22 03:19:54
[2026-06-22 03:19:54,260.260 INFO    ] 2026-06-22 03:19:54
[2026-06-22 03:19:54,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:19:54,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:19:54,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:19:54,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:19:54,638.638 INFO    ] time= 22/06/2026 03:19:54
[2026-06-22 03:19:54,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:19:54,686.686 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:19:54,824.824 INFO    ] No existing commands found in stream
[2026-06-22 03:19:59,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:19:59,853.853 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-22 03:20:08,550.550 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:20:08,553.553 INFO    ] Checking for system updates...
[2026-06-22 03:20:08,593.593 INFO    ] 200
[2026-06-22 03:20:08,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:20:08,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:20:08,659.659 INFO    ] No update needed
[2026-06-22 03:20:08,661.661 INFO    ] Checking for camera pi updates...
[2026-06-22 03:20:08,687.687 INFO    ] 200
[2026-06-22 03:20:08,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:20:08,730.730 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:20:08,933.933 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:20:08,936.936 INFO    ] No camera update needed
[2026-06-22 03:20:08,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:20:08,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:20:08,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:20:08,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:20:11,995.995 INFO    ] ================================================
[2026-06-22 03:20:11,010.010 INFO    ] Launching Daemon at Mon Jun 22 03:20:11 IST 2026
[2026-06-22 03:20:11,038.038 INFO    ] ================================================
[2026-06-22 03:20:11,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:20:11
[2026-06-22 03:20:12,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:20:12,665.665 INFO    ] Initializing speech engine...
[2026-06-22 03:20:12,675.675 INFO    ] 2026-06-22 03:20:12
[2026-06-22 03:20:12,962.962 INFO    ] 2026-06-22 03:20:12
[2026-06-22 03:20:13,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:20:13,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:20:13,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:20:13,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:20:13,419.419 INFO    ] time= 22/06/2026 03:20:13
[2026-06-22 03:20:13,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:20:13,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:20:13,564.564 INFO    ] No existing commands found in stream
[2026-06-22 03:20:18,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:20:18,580.580 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-22 03:20:19,433.433 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:20:19,434.434 INFO    ] Checking for system updates...
[2026-06-22 03:20:19,456.456 INFO    ] 200
[2026-06-22 03:20:19,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:20:19,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:20:19,502.502 INFO    ] No update needed
[2026-06-22 03:20:19,505.505 INFO    ] Checking for camera pi updates...
[2026-06-22 03:20:19,540.540 INFO    ] 200
[2026-06-22 03:20:19,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:20:19,585.585 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:20:19,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:20:19,664.664 INFO    ] No camera update needed
[2026-06-22 03:20:19,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:20:19,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:20:19,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:20:19,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:20:21,722.722 INFO    ] ================================================
[2026-06-22 03:20:21,740.740 INFO    ] Launching Daemon at Mon Jun 22 03:20:21 IST 2026
[2026-06-22 03:20:21,751.751 INFO    ] ================================================
[2026-06-22 03:20:22,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:20:22
[2026-06-22 03:20:23,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:20:23,365.365 INFO    ] Initializing speech engine...
[2026-06-22 03:20:23,373.373 INFO    ] 2026-06-22 03:20:23
[2026-06-22 03:20:23,633.633 INFO    ] 2026-06-22 03:20:23
[2026-06-22 03:20:23,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:20:23,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:20:23,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:20:24,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:20:24,112.112 INFO    ] time= 22/06/2026 03:20:24
[2026-06-22 03:20:24,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:20:24,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:20:24,279.279 INFO    ] No existing commands found in stream
[2026-06-22 03:20:29,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:20:29,296.296 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-22 03:20:29,731.731 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:20:29,733.733 INFO    ] Checking for system updates...
[2026-06-22 03:20:29,755.755 INFO    ] 200
[2026-06-22 03:20:29,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:20:29,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:20:29,805.805 INFO    ] No update needed
[2026-06-22 03:20:29,807.807 INFO    ] Checking for camera pi updates...
[2026-06-22 03:20:29,857.857 INFO    ] 200
[2026-06-22 03:20:29,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:20:29,901.901 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:20:29,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:20:30,002.002 INFO    ] No camera update needed
[2026-06-22 03:20:30,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:20:30,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:20:30,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:20:30,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:20:32,058.058 INFO    ] ================================================
[2026-06-22 03:20:32,072.072 INFO    ] Launching Daemon at Mon Jun 22 03:20:32 IST 2026
[2026-06-22 03:20:32,083.083 INFO    ] ================================================
[2026-06-22 03:20:32,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:20:32
[2026-06-22 03:20:33,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:20:33,619.619 INFO    ] Initializing speech engine...
[2026-06-22 03:20:33,627.627 INFO    ] 2026-06-22 03:20:33
[2026-06-22 03:20:33,908.908 INFO    ] 2026-06-22 03:20:33
[2026-06-22 03:20:33,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:20:34,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:20:34,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:20:34,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:20:34,280.280 INFO    ] time= 22/06/2026 03:20:34
[2026-06-22 03:20:34,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:20:34,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:20:34,445.445 INFO    ] No existing commands found in stream
[2026-06-22 03:20:39,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:20:39,483.483 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-22 03:20:41,579.579 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:20:41,582.582 INFO    ] Checking for system updates...
[2026-06-22 03:20:41,618.618 INFO    ] 200
[2026-06-22 03:20:41,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:20:41,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:20:41,684.684 INFO    ] No update needed
[2026-06-22 03:20:41,686.686 INFO    ] Checking for camera pi updates...
[2026-06-22 03:20:41,724.724 INFO    ] 200
[2026-06-22 03:20:41,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:20:41,770.770 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:20:41,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:20:41,852.852 INFO    ] No camera update needed
[2026-06-22 03:20:41,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:20:41,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:20:41,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:20:41,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:20:43,912.912 INFO    ] ================================================
[2026-06-22 03:20:43,929.929 INFO    ] Launching Daemon at Mon Jun 22 03:20:43 IST 2026
[2026-06-22 03:20:43,941.941 INFO    ] ================================================
[2026-06-22 03:20:44,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:20:44
[2026-06-22 03:20:45,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:20:45,664.664 INFO    ] Initializing speech engine...
[2026-06-22 03:20:45,679.679 INFO    ] 2026-06-22 03:20:45
[2026-06-22 03:20:45,947.947 INFO    ] 2026-06-22 03:20:45
[2026-06-22 03:20:45,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:20:46,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:20:46,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:20:46,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:20:46,422.422 INFO    ] time= 22/06/2026 03:20:46
[2026-06-22 03:20:46,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:20:46,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:20:46,616.616 INFO    ] No existing commands found in stream
[2026-06-22 03:20:51,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:20:51,631.631 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-22 03:20:51,978.978 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:20:51,980.980 INFO    ] Checking for system updates...
[2026-06-22 03:20:52,016.016 INFO    ] 200
[2026-06-22 03:20:52,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:20:52,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:20:52,073.073 INFO    ] No update needed
[2026-06-22 03:20:52,075.075 INFO    ] Checking for camera pi updates...
[2026-06-22 03:20:52,109.109 INFO    ] 200
[2026-06-22 03:20:52,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:20:52,153.153 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:20:52,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:20:52,259.259 INFO    ] No camera update needed
[2026-06-22 03:20:52,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:20:52,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:20:52,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:20:52,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:20:54,314.314 INFO    ] ================================================
[2026-06-22 03:20:54,330.330 INFO    ] Launching Daemon at Mon Jun 22 03:20:54 IST 2026
[2026-06-22 03:20:54,342.342 INFO    ] ================================================
[2026-06-22 03:20:54,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:20:54
[2026-06-22 03:20:55,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:20:55,715.715 INFO    ] Initializing speech engine...
[2026-06-22 03:20:55,723.723 INFO    ] 2026-06-22 03:20:55
[2026-06-22 03:20:55,984.984 INFO    ] 2026-06-22 03:20:55
[2026-06-22 03:20:56,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:20:56,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:20:56,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:20:56,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:20:56,443.443 INFO    ] time= 22/06/2026 03:20:56
[2026-06-22 03:20:56,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:20:56,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:20:56,589.589 INFO    ] No existing commands found in stream
[2026-06-22 03:21:01,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:21:01,600.600 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-22 03:21:03,012.012 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:21:03,015.015 INFO    ] Checking for system updates...
[2026-06-22 03:21:03,050.050 INFO    ] 200
[2026-06-22 03:21:03,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:21:03,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:21:03,114.114 INFO    ] No update needed
[2026-06-22 03:21:03,117.117 INFO    ] Checking for camera pi updates...
[2026-06-22 03:21:03,152.152 INFO    ] 200
[2026-06-22 03:21:03,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:21:03,196.196 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:21:03,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:21:03,242.242 INFO    ] No camera update needed
[2026-06-22 03:21:03,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:21:03,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:21:03,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:21:03,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:21:05,299.299 INFO    ] ================================================
[2026-06-22 03:21:05,314.314 INFO    ] Launching Daemon at Mon Jun 22 03:21:05 IST 2026
[2026-06-22 03:21:05,325.325 INFO    ] ================================================
[2026-06-22 03:21:05,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:21:05
[2026-06-22 03:21:06,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:21:06,885.885 INFO    ] Initializing speech engine...
[2026-06-22 03:21:06,899.899 INFO    ] 2026-06-22 03:21:06
[2026-06-22 03:21:07,164.164 INFO    ] 2026-06-22 03:21:07
[2026-06-22 03:21:07,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:21:07,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:21:07,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:21:07,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:21:07,522.522 INFO    ] time= 22/06/2026 03:21:07
[2026-06-22 03:21:07,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:21:07,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:21:07,624.624 INFO    ] No existing commands found in stream
[2026-06-22 03:21:12,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:21:12,653.653 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-22 03:21:13,679.679 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:21:13,682.682 INFO    ] Checking for system updates...
[2026-06-22 03:21:13,722.722 INFO    ] 200
[2026-06-22 03:21:13,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:21:13,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:21:13,781.781 INFO    ] No update needed
[2026-06-22 03:21:13,784.784 INFO    ] Checking for camera pi updates...
[2026-06-22 03:21:13,819.819 INFO    ] 200
[2026-06-22 03:21:13,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:21:13,863.863 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:21:13,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:21:13,960.960 INFO    ] No camera update needed
[2026-06-22 03:21:13,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:21:13,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:21:13,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:21:13,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:21:16,020.020 INFO    ] ================================================
[2026-06-22 03:21:16,035.035 INFO    ] Launching Daemon at Mon Jun 22 03:21:16 IST 2026
[2026-06-22 03:21:16,046.046 INFO    ] ================================================
[2026-06-22 03:21:16,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:21:16
[2026-06-22 03:21:17,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:21:17,412.412 INFO    ] Initializing speech engine...
[2026-06-22 03:21:17,421.421 INFO    ] 2026-06-22 03:21:17
[2026-06-22 03:21:17,714.714 INFO    ] 2026-06-22 03:21:17
[2026-06-22 03:21:17,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:21:17,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:21:17,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:21:18,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:21:18,087.087 INFO    ] time= 22/06/2026 03:21:18
[2026-06-22 03:21:18,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:21:18,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:21:18,209.209 INFO    ] No existing commands found in stream
[2026-06-22 03:21:23,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:21:23,230.230 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-22 03:21:24,100.100 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:21:24,101.101 INFO    ] Checking for system updates...
[2026-06-22 03:21:24,122.122 INFO    ] 200
[2026-06-22 03:21:24,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:21:24,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:21:24,163.163 INFO    ] No update needed
[2026-06-22 03:21:24,165.165 INFO    ] Checking for camera pi updates...
[2026-06-22 03:21:24,199.199 INFO    ] 200
[2026-06-22 03:21:24,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:21:24,242.242 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:21:24,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:21:24,346.346 INFO    ] No camera update needed
[2026-06-22 03:21:24,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:21:24,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:21:24,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:21:24,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:21:26,403.403 INFO    ] ================================================
[2026-06-22 03:21:26,419.419 INFO    ] Launching Daemon at Mon Jun 22 03:21:26 IST 2026
[2026-06-22 03:21:26,431.431 INFO    ] ================================================
[2026-06-22 03:21:27,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:21:27
[2026-06-22 03:21:27,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:21:27,791.791 INFO    ] Initializing speech engine...
[2026-06-22 03:21:27,797.797 INFO    ] 2026-06-22 03:21:27
[2026-06-22 03:21:28,090.090 INFO    ] 2026-06-22 03:21:28
[2026-06-22 03:21:28,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:21:28,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:21:28,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:21:28,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:21:28,477.477 INFO    ] time= 22/06/2026 03:21:28
[2026-06-22 03:21:28,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:21:28,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:21:28,583.583 INFO    ] No existing commands found in stream
[2026-06-22 03:21:33,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:21:33,604.604 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-22 03:21:34,303.303 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:21:34,306.306 INFO    ] Checking for system updates...
[2026-06-22 03:21:34,345.345 INFO    ] 200
[2026-06-22 03:21:34,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:21:34,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:21:34,404.404 INFO    ] No update needed
[2026-06-22 03:21:34,406.406 INFO    ] Checking for camera pi updates...
[2026-06-22 03:21:34,441.441 INFO    ] 200
[2026-06-22 03:21:34,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:21:34,484.484 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:21:34,565.565 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:21:34,567.567 INFO    ] No camera update needed
[2026-06-22 03:21:34,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:21:34,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:21:34,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:21:34,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:21:36,624.624 INFO    ] ================================================
[2026-06-22 03:21:36,639.639 INFO    ] Launching Daemon at Mon Jun 22 03:21:36 IST 2026
[2026-06-22 03:21:36,650.650 INFO    ] ================================================
[2026-06-22 03:21:37,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:21:37
[2026-06-22 03:21:37,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:21:38,060.060 INFO    ] Initializing speech engine...
[2026-06-22 03:21:38,071.071 INFO    ] 2026-06-22 03:21:38
[2026-06-22 03:21:38,331.331 INFO    ] 2026-06-22 03:21:38
[2026-06-22 03:21:38,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:21:38,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:21:38,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:21:38,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:21:38,797.797 INFO    ] time= 22/06/2026 03:21:38
[2026-06-22 03:21:38,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:21:38,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:21:38,939.939 INFO    ] No existing commands found in stream
[2026-06-22 03:21:43,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:21:43,954.954 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-22 03:21:46,389.389 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:21:46,392.392 INFO    ] Checking for system updates...
[2026-06-22 03:21:46,431.431 INFO    ] 200
[2026-06-22 03:21:46,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:21:46,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:21:46,491.491 INFO    ] No update needed
[2026-06-22 03:21:46,493.493 INFO    ] Checking for camera pi updates...
[2026-06-22 03:21:46,526.526 INFO    ] 200
[2026-06-22 03:21:46,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:21:46,569.569 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:21:46,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:21:46,643.643 INFO    ] No camera update needed
[2026-06-22 03:21:46,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:21:46,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:21:46,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:21:46,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:21:48,699.699 INFO    ] ================================================
[2026-06-22 03:21:48,715.715 INFO    ] Launching Daemon at Mon Jun 22 03:21:48 IST 2026
[2026-06-22 03:21:48,726.726 INFO    ] ================================================
[2026-06-22 03:21:49,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:21:49
[2026-06-22 03:21:49,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:21:50,045.045 INFO    ] Initializing speech engine...
[2026-06-22 03:21:50,054.054 INFO    ] 2026-06-22 03:21:50
[2026-06-22 03:21:50,344.344 INFO    ] 2026-06-22 03:21:50
[2026-06-22 03:21:50,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:21:50,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:21:50,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:21:50,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:21:50,713.713 INFO    ] time= 22/06/2026 03:21:50
[2026-06-22 03:21:50,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:21:50,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:21:50,836.836 INFO    ] No existing commands found in stream
[2026-06-22 03:21:55,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:21:55,851.851 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-22 03:21:58,793.793 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:21:58,796.796 INFO    ] Checking for system updates...
[2026-06-22 03:21:58,832.832 INFO    ] 200
[2026-06-22 03:21:58,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:21:58,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:21:58,889.889 INFO    ] No update needed
[2026-06-22 03:21:58,892.892 INFO    ] Checking for camera pi updates...
[2026-06-22 03:21:58,925.925 INFO    ] 200
[2026-06-22 03:21:58,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:21:58,968.968 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:21:59,052.052 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:21:59,055.055 INFO    ] No camera update needed
[2026-06-22 03:21:59,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:21:59,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:21:59,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:21:59,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:22:01,111.111 INFO    ] ================================================
[2026-06-22 03:22:01,126.126 INFO    ] Launching Daemon at Mon Jun 22 03:22:01 IST 2026
[2026-06-22 03:22:01,137.137 INFO    ] ================================================
[2026-06-22 03:22:01,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:22:01
[2026-06-22 03:22:02,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:22:02,779.779 INFO    ] Initializing speech engine...
[2026-06-22 03:22:02,783.783 INFO    ] 2026-06-22 03:22:02
[2026-06-22 03:22:03,099.099 INFO    ] 2026-06-22 03:22:03
[2026-06-22 03:22:03,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:22:03,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:22:03,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:22:03,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:22:03,462.462 INFO    ] time= 22/06/2026 03:22:03
[2026-06-22 03:22:03,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:22:03,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:22:03,544.544 INFO    ] No existing commands found in stream
[2026-06-22 03:22:08,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:22:08,560.560 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-22 03:22:10,985.985 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:22:10,987.987 INFO    ] Checking for system updates...
[2026-06-22 03:22:11,024.024 INFO    ] 200
[2026-06-22 03:22:11,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:22:11,086.086 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:22:11,088.088 INFO    ] No update needed
[2026-06-22 03:22:11,091.091 INFO    ] Checking for camera pi updates...
[2026-06-22 03:22:11,125.125 INFO    ] 200
[2026-06-22 03:22:11,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:22:11,172.172 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:22:11,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:22:11,327.327 INFO    ] No camera update needed
[2026-06-22 03:22:11,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:22:11,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:22:11,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:22:11,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:22:13,384.384 INFO    ] ================================================
[2026-06-22 03:22:13,400.400 INFO    ] Launching Daemon at Mon Jun 22 03:22:13 IST 2026
[2026-06-22 03:22:13,411.411 INFO    ] ================================================
[2026-06-22 03:22:13,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:22:13
[2026-06-22 03:22:14,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:22:14,794.794 INFO    ] Initializing speech engine...
[2026-06-22 03:22:14,799.799 INFO    ] 2026-06-22 03:22:14
[2026-06-22 03:22:15,067.067 INFO    ] 2026-06-22 03:22:15
[2026-06-22 03:22:15,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:22:16,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:22:16,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:22:16,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:22:16,428.428 INFO    ] time= 22/06/2026 03:22:16
[2026-06-22 03:22:16,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:22:16,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:22:16,491.491 INFO    ] No existing commands found in stream
[2026-06-22 03:22:21,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:22:21,505.505 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-22 03:22:25,830.830 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:22:25,831.831 INFO    ] Checking for system updates...
[2026-06-22 03:22:25,852.852 INFO    ] 200
[2026-06-22 03:22:25,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:22:25,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:22:25,886.886 INFO    ] No update needed
[2026-06-22 03:22:25,888.888 INFO    ] Checking for camera pi updates...
[2026-06-22 03:22:25,915.915 INFO    ] 200
[2026-06-22 03:22:25,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:22:25,959.959 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:22:26,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:22:26,039.039 INFO    ] No camera update needed
[2026-06-22 03:22:26,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:22:26,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:22:26,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:22:26,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:22:28,095.095 INFO    ] ================================================
[2026-06-22 03:22:28,111.111 INFO    ] Launching Daemon at Mon Jun 22 03:22:28 IST 2026
[2026-06-22 03:22:28,123.123 INFO    ] ================================================
[2026-06-22 03:22:28,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:22:28
[2026-06-22 03:22:29,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:22:29,532.532 INFO    ] Initializing speech engine...
[2026-06-22 03:22:29,539.539 INFO    ] 2026-06-22 03:22:29
[2026-06-22 03:22:29,837.837 INFO    ] 2026-06-22 03:22:29
[2026-06-22 03:22:29,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:22:30,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:22:30,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:22:30,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:22:30,205.205 INFO    ] time= 22/06/2026 03:22:30
[2026-06-22 03:22:30,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:22:30,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:22:30,386.386 INFO    ] No existing commands found in stream
[2026-06-22 03:22:35,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:22:35,409.409 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-22 03:22:37,020.020 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:22:37,021.021 INFO    ] Checking for system updates...
[2026-06-22 03:22:37,044.044 INFO    ] 200
[2026-06-22 03:22:37,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:22:37,078.078 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:22:37,079.079 INFO    ] No update needed
[2026-06-22 03:22:37,080.080 INFO    ] Checking for camera pi updates...
[2026-06-22 03:22:37,103.103 INFO    ] 200
[2026-06-22 03:22:37,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:22:37,146.146 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:22:37,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:22:37,249.249 INFO    ] No camera update needed
[2026-06-22 03:22:37,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:22:37,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:22:37,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:22:37,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:22:39,309.309 INFO    ] ================================================
[2026-06-22 03:22:39,324.324 INFO    ] Launching Daemon at Mon Jun 22 03:22:39 IST 2026
[2026-06-22 03:22:39,335.335 INFO    ] ================================================
[2026-06-22 03:22:39,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:22:39
[2026-06-22 03:22:40,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:22:40,695.695 INFO    ] Initializing speech engine...
[2026-06-22 03:22:40,704.704 INFO    ] 2026-06-22 03:22:40
[2026-06-22 03:22:40,954.954 INFO    ] 2026-06-22 03:22:40
[2026-06-22 03:22:40,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:22:41,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:22:41,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:22:41,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:22:41,331.331 INFO    ] time= 22/06/2026 03:22:41
[2026-06-22 03:22:41,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:22:41,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:22:41,408.408 INFO    ] No existing commands found in stream
[2026-06-22 03:22:46,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:22:46,423.423 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-22 03:22:50,275.275 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:22:50,278.278 INFO    ] Checking for system updates...
[2026-06-22 03:22:50,329.329 INFO    ] 200
[2026-06-22 03:22:50,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:22:50,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:22:50,417.417 INFO    ] No update needed
[2026-06-22 03:22:50,420.420 INFO    ] Checking for camera pi updates...
[2026-06-22 03:22:50,478.478 INFO    ] 200
[2026-06-22 03:22:50,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:22:50,533.533 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:22:50,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:22:50,600.600 INFO    ] No camera update needed
[2026-06-22 03:22:50,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:22:50,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:22:50,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:22:50,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:22:52,657.657 INFO    ] ================================================
[2026-06-22 03:22:52,672.672 INFO    ] Launching Daemon at Mon Jun 22 03:22:52 IST 2026
[2026-06-22 03:22:52,683.683 INFO    ] ================================================
[2026-06-22 03:22:53,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:22:53
[2026-06-22 03:22:53,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:22:54,018.018 INFO    ] Initializing speech engine...
[2026-06-22 03:22:54,031.031 INFO    ] 2026-06-22 03:22:54
[2026-06-22 03:22:54,295.295 INFO    ] 2026-06-22 03:22:54
[2026-06-22 03:22:54,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:22:54,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:22:54,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:22:54,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:22:54,666.666 INFO    ] time= 22/06/2026 03:22:54
[2026-06-22 03:22:54,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:22:54,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:22:54,836.836 INFO    ] No existing commands found in stream
[2026-06-22 03:22:59,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:22:59,869.869 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-22 03:23:00,394.394 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:23:00,395.395 INFO    ] Checking for system updates...
[2026-06-22 03:23:00,422.422 INFO    ] 200
[2026-06-22 03:23:00,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:23:00,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:23:00,492.492 INFO    ] No update needed
[2026-06-22 03:23:00,495.495 INFO    ] Checking for camera pi updates...
[2026-06-22 03:23:00,535.535 INFO    ] 200
[2026-06-22 03:23:00,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:23:00,584.584 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:23:00,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:23:00,667.667 INFO    ] No camera update needed
[2026-06-22 03:23:00,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:23:00,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:23:00,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:23:00,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:23:02,729.729 INFO    ] ================================================
[2026-06-22 03:23:02,748.748 INFO    ] Launching Daemon at Mon Jun 22 03:23:02 IST 2026
[2026-06-22 03:23:02,763.763 INFO    ] ================================================
[2026-06-22 03:23:03,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:23:03
[2026-06-22 03:23:04,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:23:04,298.298 INFO    ] Initializing speech engine...
[2026-06-22 03:23:04,307.307 INFO    ] 2026-06-22 03:23:04
[2026-06-22 03:23:04,561.561 INFO    ] 2026-06-22 03:23:04
[2026-06-22 03:23:04,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:23:04,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:23:04,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:23:04,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:23:04,930.930 INFO    ] time= 22/06/2026 03:23:04
[2026-06-22 03:23:04,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:23:04,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:23:05,110.110 INFO    ] No existing commands found in stream
[2026-06-22 03:23:10,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:23:10,141.141 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-22 03:23:13,134.134 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:23:13,137.137 INFO    ] Checking for system updates...
[2026-06-22 03:23:13,177.177 INFO    ] 200
[2026-06-22 03:23:13,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:23:13,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:23:13,237.237 INFO    ] No update needed
[2026-06-22 03:23:13,239.239 INFO    ] Checking for camera pi updates...
[2026-06-22 03:23:13,277.277 INFO    ] 200
[2026-06-22 03:23:13,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:23:13,325.325 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:23:13,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:23:13,408.408 INFO    ] No camera update needed
[2026-06-22 03:23:13,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:23:13,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:23:13,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:23:13,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:23:15,466.466 INFO    ] ================================================
[2026-06-22 03:23:15,483.483 INFO    ] Launching Daemon at Mon Jun 22 03:23:15 IST 2026
[2026-06-22 03:23:15,494.494 INFO    ] ================================================
[2026-06-22 03:23:16,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:23:16
[2026-06-22 03:23:16,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:23:16,816.816 INFO    ] Initializing speech engine...
[2026-06-22 03:23:16,841.841 INFO    ] 2026-06-22 03:23:16
[2026-06-22 03:23:17,098.098 INFO    ] 2026-06-22 03:23:17
[2026-06-22 03:23:17,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:23:17,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:23:17,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:23:17,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:23:17,477.477 INFO    ] time= 22/06/2026 03:23:17
[2026-06-22 03:23:17,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:23:17,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:23:17,641.641 INFO    ] No existing commands found in stream
[2026-06-22 03:23:22,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:23:22,669.669 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-22 03:23:25,393.393 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:23:25,396.396 INFO    ] Checking for system updates...
[2026-06-22 03:23:25,432.432 INFO    ] 200
[2026-06-22 03:23:25,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:23:25,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:23:25,497.497 INFO    ] No update needed
[2026-06-22 03:23:25,499.499 INFO    ] Checking for camera pi updates...
[2026-06-22 03:23:25,536.536 INFO    ] 200
[2026-06-22 03:23:25,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:23:25,583.583 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:23:25,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:23:25,654.654 INFO    ] No camera update needed
[2026-06-22 03:23:25,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:23:25,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:23:25,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:23:25,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:23:27,711.711 INFO    ] ================================================
[2026-06-22 03:23:27,726.726 INFO    ] Launching Daemon at Mon Jun 22 03:23:27 IST 2026
[2026-06-22 03:23:27,738.738 INFO    ] ================================================
[2026-06-22 03:23:28,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:23:28
[2026-06-22 03:23:28,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:23:29,159.159 INFO    ] Initializing speech engine...
[2026-06-22 03:23:29,168.168 INFO    ] 2026-06-22 03:23:29
[2026-06-22 03:23:29,418.418 INFO    ] 2026-06-22 03:23:29
[2026-06-22 03:23:29,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:23:29,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:23:29,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:23:29,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:23:29,760.760 INFO    ] time= 22/06/2026 03:23:29
[2026-06-22 03:23:29,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:23:29,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:23:29,872.872 INFO    ] No existing commands found in stream
[2026-06-22 03:23:34,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:23:34,893.893 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-22 03:23:36,645.645 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:23:36,647.647 INFO    ] Checking for system updates...
[2026-06-22 03:23:36,683.683 INFO    ] 200
[2026-06-22 03:23:36,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:23:36,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:23:36,743.743 INFO    ] No update needed
[2026-06-22 03:23:36,746.746 INFO    ] Checking for camera pi updates...
[2026-06-22 03:23:36,779.779 INFO    ] 200
[2026-06-22 03:23:36,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:23:36,822.822 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:23:36,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:23:36,910.910 INFO    ] No camera update needed
[2026-06-22 03:23:36,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:23:36,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:23:36,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:23:36,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:23:38,968.968 INFO    ] ================================================
[2026-06-22 03:23:38,984.984 INFO    ] Launching Daemon at Mon Jun 22 03:23:38 IST 2026
[2026-06-22 03:23:39,996.996 INFO    ] ================================================
[2026-06-22 03:23:39,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:23:39
[2026-06-22 03:23:40,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:23:40,329.329 INFO    ] Initializing speech engine...
[2026-06-22 03:23:40,338.338 INFO    ] 2026-06-22 03:23:40
[2026-06-22 03:23:40,628.628 INFO    ] 2026-06-22 03:23:40
[2026-06-22 03:23:40,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:23:40,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:23:40,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:23:41,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:23:41,013.013 INFO    ] time= 22/06/2026 03:23:41
[2026-06-22 03:23:41,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:23:41,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:23:41,190.190 INFO    ] No existing commands found in stream
[2026-06-22 03:23:46,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:23:46,224.224 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-22 03:23:48,261.261 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:23:48,264.264 INFO    ] Checking for system updates...
[2026-06-22 03:23:48,305.305 INFO    ] 200
[2026-06-22 03:23:48,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:23:48,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:23:48,365.365 INFO    ] No update needed
[2026-06-22 03:23:48,368.368 INFO    ] Checking for camera pi updates...
[2026-06-22 03:23:48,405.405 INFO    ] 200
[2026-06-22 03:23:48,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:23:48,448.448 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:23:48,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:23:48,530.530 INFO    ] No camera update needed
[2026-06-22 03:23:48,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:23:48,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:23:48,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:23:48,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:23:50,585.585 INFO    ] ================================================
[2026-06-22 03:23:50,601.601 INFO    ] Launching Daemon at Mon Jun 22 03:23:50 IST 2026
[2026-06-22 03:23:50,612.612 INFO    ] ================================================
[2026-06-22 03:23:51,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:23:51
[2026-06-22 03:23:51,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:23:52,031.031 INFO    ] Initializing speech engine...
[2026-06-22 03:23:52,049.049 INFO    ] 2026-06-22 03:23:52
[2026-06-22 03:23:52,322.322 INFO    ] 2026-06-22 03:23:52
[2026-06-22 03:23:52,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:23:52,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:23:52,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:23:52,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:23:52,693.693 INFO    ] time= 22/06/2026 03:23:52
[2026-06-22 03:23:52,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:23:52,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:23:52,817.817 INFO    ] No existing commands found in stream
[2026-06-22 03:23:57,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:23:57,833.833 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-22 03:24:00,799.799 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:24:00,802.802 INFO    ] Checking for system updates...
[2026-06-22 03:24:00,841.841 INFO    ] 200
[2026-06-22 03:24:00,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:24:00,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:24:00,899.899 INFO    ] No update needed
[2026-06-22 03:24:00,901.901 INFO    ] Checking for camera pi updates...
[2026-06-22 03:24:00,938.938 INFO    ] 200
[2026-06-22 03:24:00,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:24:00,981.981 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:24:01,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:24:01,063.063 INFO    ] No camera update needed
[2026-06-22 03:24:01,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:24:01,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:24:01,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:24:01,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:24:03,128.128 INFO    ] ================================================
[2026-06-22 03:24:03,147.147 INFO    ] Launching Daemon at Mon Jun 22 03:24:03 IST 2026
[2026-06-22 03:24:03,163.163 INFO    ] ================================================
[2026-06-22 03:24:03,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:24:03
[2026-06-22 03:24:04,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:24:04,610.610 INFO    ] Initializing speech engine...
[2026-06-22 03:24:04,618.618 INFO    ] 2026-06-22 03:24:04
[2026-06-22 03:24:04,904.904 INFO    ] 2026-06-22 03:24:04
[2026-06-22 03:24:04,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:24:05,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:24:05,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:24:05,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:24:05,309.309 INFO    ] time= 22/06/2026 03:24:05
[2026-06-22 03:24:05,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:24:05,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:24:05,391.391 INFO    ] No existing commands found in stream
[2026-06-22 03:24:10,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:24:10,412.412 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-22 03:24:12,380.380 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:24:12,381.381 INFO    ] Checking for system updates...
[2026-06-22 03:24:12,402.402 INFO    ] 200
[2026-06-22 03:24:12,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:24:12,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:24:12,435.435 INFO    ] No update needed
[2026-06-22 03:24:12,436.436 INFO    ] Checking for camera pi updates...
[2026-06-22 03:24:12,459.459 INFO    ] 200
[2026-06-22 03:24:12,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:24:12,502.502 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:24:12,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:24:12,685.685 INFO    ] No camera update needed
[2026-06-22 03:24:12,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:24:12,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:24:12,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:24:12,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:24:14,740.740 INFO    ] ================================================
[2026-06-22 03:24:14,756.756 INFO    ] Launching Daemon at Mon Jun 22 03:24:14 IST 2026
[2026-06-22 03:24:14,768.768 INFO    ] ================================================
[2026-06-22 03:24:15,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:24:15
[2026-06-22 03:24:15,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:24:16,147.147 INFO    ] Initializing speech engine...
[2026-06-22 03:24:16,152.152 INFO    ] 2026-06-22 03:24:16
[2026-06-22 03:24:16,400.400 INFO    ] 2026-06-22 03:24:16
[2026-06-22 03:24:16,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:24:16,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:24:16,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:24:16,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:24:16,845.845 INFO    ] time= 22/06/2026 03:24:16
[2026-06-22 03:24:16,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:24:16,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:24:17,013.013 INFO    ] No existing commands found in stream
[2026-06-22 03:24:22,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:24:22,028.028 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-22 03:24:23,081.081 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:24:23,084.084 INFO    ] Checking for system updates...
[2026-06-22 03:24:23,121.121 INFO    ] 200
[2026-06-22 03:24:23,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:24:23,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:24:23,187.187 INFO    ] No update needed
[2026-06-22 03:24:23,189.189 INFO    ] Checking for camera pi updates...
[2026-06-22 03:24:23,223.223 INFO    ] 200
[2026-06-22 03:24:23,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:24:23,269.269 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:24:23,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:24:23,361.361 INFO    ] No camera update needed
[2026-06-22 03:24:23,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:24:23,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:24:23,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:24:23,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:24:25,420.420 INFO    ] ================================================
[2026-06-22 03:24:25,436.436 INFO    ] Launching Daemon at Mon Jun 22 03:24:25 IST 2026
[2026-06-22 03:24:25,446.446 INFO    ] ================================================
[2026-06-22 03:24:26,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:24:26
[2026-06-22 03:24:26,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:24:26,830.830 INFO    ] Initializing speech engine...
[2026-06-22 03:24:26,849.849 INFO    ] 2026-06-22 03:24:26
[2026-06-22 03:24:27,096.096 INFO    ] 2026-06-22 03:24:27
[2026-06-22 03:24:27,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:24:27,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:24:27,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:24:27,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:24:27,567.567 INFO    ] time= 22/06/2026 03:24:27
[2026-06-22 03:24:27,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:24:27,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:24:27,712.712 INFO    ] No existing commands found in stream
[2026-06-22 03:24:32,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:24:32,727.727 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-22 03:24:35,080.080 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:24:35,082.082 INFO    ] Checking for system updates...
[2026-06-22 03:24:35,118.118 INFO    ] 200
[2026-06-22 03:24:35,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:24:35,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:24:35,185.185 INFO    ] No update needed
[2026-06-22 03:24:35,187.187 INFO    ] Checking for camera pi updates...
[2026-06-22 03:24:35,220.220 INFO    ] 200
[2026-06-22 03:24:35,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:24:35,268.268 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:24:35,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:24:35,366.366 INFO    ] No camera update needed
[2026-06-22 03:24:35,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:24:35,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:24:35,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:24:35,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:24:37,421.421 INFO    ] ================================================
[2026-06-22 03:24:37,436.436 INFO    ] Launching Daemon at Mon Jun 22 03:24:37 IST 2026
[2026-06-22 03:24:37,446.446 INFO    ] ================================================
[2026-06-22 03:24:37,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:24:37
[2026-06-22 03:24:38,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:24:38,884.884 INFO    ] Initializing speech engine...
[2026-06-22 03:24:38,898.898 INFO    ] 2026-06-22 03:24:38
[2026-06-22 03:24:39,178.178 INFO    ] 2026-06-22 03:24:39
[2026-06-22 03:24:39,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:24:39,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:24:39,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:24:39,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:24:39,635.635 INFO    ] time= 22/06/2026 03:24:39
[2026-06-22 03:24:39,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:24:39,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:24:39,776.776 INFO    ] No existing commands found in stream
[2026-06-22 03:24:44,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:24:44,793.793 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-22 03:24:47,154.154 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:24:47,158.158 INFO    ] Checking for system updates...
[2026-06-22 03:24:47,198.198 INFO    ] 200
[2026-06-22 03:24:47,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:24:47,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:24:47,264.264 INFO    ] No update needed
[2026-06-22 03:24:47,267.267 INFO    ] Checking for camera pi updates...
[2026-06-22 03:24:47,305.305 INFO    ] 200
[2026-06-22 03:24:47,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:24:47,359.359 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:24:47,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:24:47,408.408 INFO    ] No camera update needed
[2026-06-22 03:24:47,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:24:47,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:24:47,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:24:47,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:24:49,466.466 INFO    ] ================================================
[2026-06-22 03:24:49,481.481 INFO    ] Launching Daemon at Mon Jun 22 03:24:49 IST 2026
[2026-06-22 03:24:49,492.492 INFO    ] ================================================
[2026-06-22 03:24:50,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:24:50
[2026-06-22 03:24:50,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:24:50,890.890 INFO    ] Initializing speech engine...
[2026-06-22 03:24:50,903.903 INFO    ] 2026-06-22 03:24:50
[2026-06-22 03:24:51,141.141 INFO    ] 2026-06-22 03:24:51
[2026-06-22 03:24:51,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:24:51,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:24:51,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:24:51,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:24:51,562.562 INFO    ] time= 22/06/2026 03:24:51
[2026-06-22 03:24:51,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:24:51,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:24:51,709.709 INFO    ] No existing commands found in stream
[2026-06-22 03:24:56,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:24:56,723.723 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-22 03:25:00,715.715 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:25:00,717.717 INFO    ] Checking for system updates...
[2026-06-22 03:25:00,757.757 INFO    ] 200
[2026-06-22 03:25:00,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:25:00,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:25:00,821.821 INFO    ] No update needed
[2026-06-22 03:25:00,823.823 INFO    ] Checking for camera pi updates...
[2026-06-22 03:25:00,857.857 INFO    ] 200
[2026-06-22 03:25:00,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:25:00,905.905 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:25:00,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:25:00,989.989 INFO    ] No camera update needed
[2026-06-22 03:25:00,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:25:00,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:25:00,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:25:01,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:25:03,063.063 INFO    ] ================================================
[2026-06-22 03:25:03,084.084 INFO    ] Launching Daemon at Mon Jun 22 03:25:03 IST 2026
[2026-06-22 03:25:03,101.101 INFO    ] ================================================
[2026-06-22 03:25:03,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:25:03
[2026-06-22 03:25:04,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:25:04,598.598 INFO    ] Initializing speech engine...
[2026-06-22 03:25:04,605.605 INFO    ] 2026-06-22 03:25:04
[2026-06-22 03:25:04,850.850 INFO    ] 2026-06-22 03:25:04
[2026-06-22 03:25:04,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:25:05,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:25:05,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:25:05,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:25:05,328.328 INFO    ] time= 22/06/2026 03:25:05
[2026-06-22 03:25:05,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:25:05,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:25:05,471.471 INFO    ] No existing commands found in stream
[2026-06-22 03:25:10,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:25:10,486.486 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-22 03:25:11,793.793 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:25:11,795.795 INFO    ] Checking for system updates...
[2026-06-22 03:25:11,831.831 INFO    ] 200
[2026-06-22 03:25:11,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:25:11,893.893 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:25:11,896.896 INFO    ] No update needed
[2026-06-22 03:25:11,898.898 INFO    ] Checking for camera pi updates...
[2026-06-22 03:25:11,936.936 INFO    ] 200
[2026-06-22 03:25:11,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:25:11,980.980 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:25:12,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:25:12,081.081 INFO    ] No camera update needed
[2026-06-22 03:25:12,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:25:12,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:25:12,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:25:12,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:25:14,139.139 INFO    ] ================================================
[2026-06-22 03:25:14,155.155 INFO    ] Launching Daemon at Mon Jun 22 03:25:14 IST 2026
[2026-06-22 03:25:14,166.166 INFO    ] ================================================
[2026-06-22 03:25:14,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:25:14
[2026-06-22 03:25:15,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:25:15,807.807 INFO    ] Initializing speech engine...
[2026-06-22 03:25:15,814.814 INFO    ] 2026-06-22 03:25:15
[2026-06-22 03:25:16,103.103 INFO    ] 2026-06-22 03:25:16
[2026-06-22 03:25:16,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:25:16,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:25:16,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:25:16,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:25:16,639.639 INFO    ] time= 22/06/2026 03:25:16
[2026-06-22 03:25:16,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:25:16,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:25:16,796.796 INFO    ] No existing commands found in stream
[2026-06-22 03:25:21,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:25:21,835.835 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-22 03:25:24,561.561 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:25:24,563.563 INFO    ] Checking for system updates...
[2026-06-22 03:25:24,584.584 INFO    ] 200
[2026-06-22 03:25:24,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:25:24,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:25:24,636.636 INFO    ] No update needed
[2026-06-22 03:25:24,639.639 INFO    ] Checking for camera pi updates...
[2026-06-22 03:25:24,678.678 INFO    ] 200
[2026-06-22 03:25:24,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:25:24,730.730 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:25:24,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:25:24,810.810 INFO    ] No camera update needed
[2026-06-22 03:25:24,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:25:24,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:25:24,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:25:24,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:25:26,868.868 INFO    ] ================================================
[2026-06-22 03:25:26,884.884 INFO    ] Launching Daemon at Mon Jun 22 03:25:26 IST 2026
[2026-06-22 03:25:26,895.895 INFO    ] ================================================
[2026-06-22 03:25:27,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:25:27
[2026-06-22 03:25:27,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:25:28,231.231 INFO    ] Initializing speech engine...
[2026-06-22 03:25:28,240.240 INFO    ] 2026-06-22 03:25:28
[2026-06-22 03:25:28,493.493 INFO    ] 2026-06-22 03:25:28
[2026-06-22 03:25:28,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:25:28,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:25:28,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:25:28,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:25:28,960.960 INFO    ] time= 22/06/2026 03:25:28
[2026-06-22 03:25:29,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:25:29,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:25:29,116.116 INFO    ] No existing commands found in stream
[2026-06-22 03:25:34,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:25:34,130.130 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-22 03:25:36,880.880 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:25:36,883.883 INFO    ] Checking for system updates...
[2026-06-22 03:25:36,923.923 INFO    ] 200
[2026-06-22 03:25:36,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:25:36,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:25:36,990.990 INFO    ] No update needed
[2026-06-22 03:25:36,992.992 INFO    ] Checking for camera pi updates...
[2026-06-22 03:25:37,029.029 INFO    ] 200
[2026-06-22 03:25:37,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:25:37,072.072 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:25:37,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:25:37,162.162 INFO    ] No camera update needed
[2026-06-22 03:25:37,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:25:37,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:25:37,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:25:37,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:25:39,218.218 INFO    ] ================================================
[2026-06-22 03:25:39,233.233 INFO    ] Launching Daemon at Mon Jun 22 03:25:39 IST 2026
[2026-06-22 03:25:39,243.243 INFO    ] ================================================
[2026-06-22 03:25:39,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:25:39
[2026-06-22 03:25:40,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:25:40,891.891 INFO    ] Initializing speech engine...
[2026-06-22 03:25:40,902.902 INFO    ] 2026-06-22 03:25:40
[2026-06-22 03:25:41,200.200 INFO    ] 2026-06-22 03:25:41
[2026-06-22 03:25:41,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:25:41,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:25:41,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:25:41,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:25:41,667.667 INFO    ] time= 22/06/2026 03:25:41
[2026-06-22 03:25:41,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:25:41,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:25:41,814.814 INFO    ] No existing commands found in stream
[2026-06-22 03:25:46,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:25:46,830.830 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-22 03:25:49,127.127 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:25:49,129.129 INFO    ] Checking for system updates...
[2026-06-22 03:25:49,151.151 INFO    ] 200
[2026-06-22 03:25:49,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:25:49,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:25:49,184.184 INFO    ] No update needed
[2026-06-22 03:25:49,185.185 INFO    ] Checking for camera pi updates...
[2026-06-22 03:25:49,207.207 INFO    ] 200
[2026-06-22 03:25:49,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:25:49,253.253 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:25:49,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:25:49,331.331 INFO    ] No camera update needed
[2026-06-22 03:25:49,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:25:49,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:25:49,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:25:49,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:25:51,386.386 INFO    ] ================================================
[2026-06-22 03:25:51,402.402 INFO    ] Launching Daemon at Mon Jun 22 03:25:51 IST 2026
[2026-06-22 03:25:51,413.413 INFO    ] ================================================
[2026-06-22 03:25:52,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:25:52
[2026-06-22 03:25:52,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:25:53,169.169 INFO    ] Initializing speech engine...
[2026-06-22 03:25:53,176.176 INFO    ] 2026-06-22 03:25:53
[2026-06-22 03:25:53,488.488 INFO    ] 2026-06-22 03:25:53
[2026-06-22 03:25:53,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:25:53,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:25:53,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:25:53,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:25:53,996.996 INFO    ] time= 22/06/2026 03:25:53
[2026-06-22 03:25:54,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:25:54,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:25:54,138.138 INFO    ] No existing commands found in stream
[2026-06-22 03:25:59,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:25:59,166.166 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-22 03:26:02,479.479 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:26:02,483.483 INFO    ] Checking for system updates...
[2026-06-22 03:26:02,528.528 INFO    ] 200
[2026-06-22 03:26:02,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:26:02,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:26:02,601.601 INFO    ] No update needed
[2026-06-22 03:26:02,604.604 INFO    ] Checking for camera pi updates...
[2026-06-22 03:26:02,653.653 INFO    ] 200
[2026-06-22 03:26:02,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:26:02,719.719 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:26:02,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:26:02,801.801 INFO    ] No camera update needed
[2026-06-22 03:26:02,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:26:02,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:26:02,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:26:02,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:26:04,861.861 INFO    ] ================================================
[2026-06-22 03:26:04,877.877 INFO    ] Launching Daemon at Mon Jun 22 03:26:04 IST 2026
[2026-06-22 03:26:04,888.888 INFO    ] ================================================
[2026-06-22 03:26:05,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:26:05
[2026-06-22 03:26:06,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:26:06,472.472 INFO    ] Initializing speech engine...
[2026-06-22 03:26:06,482.482 INFO    ] 2026-06-22 03:26:06
[2026-06-22 03:26:06,797.797 INFO    ] 2026-06-22 03:26:06
[2026-06-22 03:26:06,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:26:07,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:26:07,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:26:07,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:26:07,189.189 INFO    ] time= 22/06/2026 03:26:07
[2026-06-22 03:26:07,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:26:07,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:26:07,319.319 INFO    ] No existing commands found in stream
[2026-06-22 03:26:12,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:26:12,332.332 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-22 03:26:16,530.530 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:26:16,532.532 INFO    ] Checking for system updates...
[2026-06-22 03:26:16,568.568 INFO    ] 200
[2026-06-22 03:26:16,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:26:16,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:26:16,625.625 INFO    ] No update needed
[2026-06-22 03:26:16,628.628 INFO    ] Checking for camera pi updates...
[2026-06-22 03:26:16,663.663 INFO    ] 200
[2026-06-22 03:26:16,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:26:16,715.715 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:26:16,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:26:16,866.866 INFO    ] No camera update needed
[2026-06-22 03:26:16,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:26:16,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:26:16,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:26:16,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:26:18,921.921 INFO    ] ================================================
[2026-06-22 03:26:18,936.936 INFO    ] Launching Daemon at Mon Jun 22 03:26:18 IST 2026
[2026-06-22 03:26:18,947.947 INFO    ] ================================================
[2026-06-22 03:26:19,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:26:19
[2026-06-22 03:26:20,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:26:20,310.310 INFO    ] Initializing speech engine...
[2026-06-22 03:26:20,319.319 INFO    ] 2026-06-22 03:26:20
[2026-06-22 03:26:20,564.564 INFO    ] 2026-06-22 03:26:20
[2026-06-22 03:26:20,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:26:20,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:26:20,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:26:20,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:26:21,034.034 INFO    ] time= 22/06/2026 03:26:20
[2026-06-22 03:26:21,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:26:21,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:26:21,180.180 INFO    ] No existing commands found in stream
[2026-06-22 03:26:26,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:26:26,195.195 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-22 03:26:28,616.616 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:26:28,619.619 INFO    ] Checking for system updates...
[2026-06-22 03:26:28,659.659 INFO    ] 200
[2026-06-22 03:26:28,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:26:28,716.716 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:26:28,718.718 INFO    ] No update needed
[2026-06-22 03:26:28,720.720 INFO    ] Checking for camera pi updates...
[2026-06-22 03:26:28,760.760 INFO    ] 200
[2026-06-22 03:26:28,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:26:28,803.803 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:26:28,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:26:28,878.878 INFO    ] No camera update needed
[2026-06-22 03:26:28,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:26:28,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:26:28,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:26:28,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:26:30,936.936 INFO    ] ================================================
[2026-06-22 03:26:30,951.951 INFO    ] Launching Daemon at Mon Jun 22 03:26:30 IST 2026
[2026-06-22 03:26:30,962.962 INFO    ] ================================================
[2026-06-22 03:26:31,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:26:31
[2026-06-22 03:26:32,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:26:32,437.437 INFO    ] Initializing speech engine...
[2026-06-22 03:26:32,447.447 INFO    ] 2026-06-22 03:26:32
[2026-06-22 03:26:32,720.720 INFO    ] 2026-06-22 03:26:32
[2026-06-22 03:26:32,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:26:33,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:26:33,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:26:33,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:26:33,216.216 INFO    ] time= 22/06/2026 03:26:33
[2026-06-22 03:26:33,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:26:33,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:26:33,356.356 INFO    ] No existing commands found in stream
[2026-06-22 03:26:38,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:26:38,371.371 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-22 03:26:38,786.786 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:26:38,789.789 INFO    ] Checking for system updates...
[2026-06-22 03:26:38,826.826 INFO    ] 200
[2026-06-22 03:26:38,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:26:38,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:26:38,893.893 INFO    ] No update needed
[2026-06-22 03:26:38,896.896 INFO    ] Checking for camera pi updates...
[2026-06-22 03:26:38,932.932 INFO    ] 200
[2026-06-22 03:26:38,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:26:38,977.977 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:26:39,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:26:39,046.046 INFO    ] No camera update needed
[2026-06-22 03:26:39,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:26:39,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:26:39,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:26:39,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:26:41,106.106 INFO    ] ================================================
[2026-06-22 03:26:41,122.122 INFO    ] Launching Daemon at Mon Jun 22 03:26:41 IST 2026
[2026-06-22 03:26:41,133.133 INFO    ] ================================================
[2026-06-22 03:26:41,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:26:41
[2026-06-22 03:26:42,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:26:42,550.550 INFO    ] Initializing speech engine...
[2026-06-22 03:26:42,560.560 INFO    ] 2026-06-22 03:26:42
[2026-06-22 03:26:42,829.829 INFO    ] 2026-06-22 03:26:42
[2026-06-22 03:26:42,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:26:43,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:26:43,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:26:43,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:26:43,192.192 INFO    ] time= 22/06/2026 03:26:43
[2026-06-22 03:26:43,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:26:43,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:26:43,274.274 INFO    ] No existing commands found in stream
[2026-06-22 03:26:48,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:26:48,288.288 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-22 03:26:49,279.279 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:26:49,282.282 INFO    ] Checking for system updates...
[2026-06-22 03:26:49,318.318 INFO    ] 200
[2026-06-22 03:26:49,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:26:49,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:26:49,376.376 INFO    ] No update needed
[2026-06-22 03:26:49,378.378 INFO    ] Checking for camera pi updates...
[2026-06-22 03:26:49,417.417 INFO    ] 200
[2026-06-22 03:26:49,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:26:49,461.461 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:26:49,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:26:49,526.526 INFO    ] No camera update needed
[2026-06-22 03:26:49,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:26:49,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:26:49,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:26:49,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:26:51,587.587 INFO    ] ================================================
[2026-06-22 03:26:51,604.604 INFO    ] Launching Daemon at Mon Jun 22 03:26:51 IST 2026
[2026-06-22 03:26:51,615.615 INFO    ] ================================================
[2026-06-22 03:26:52,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:26:52
[2026-06-22 03:26:52,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:26:52,939.939 INFO    ] Initializing speech engine...
[2026-06-22 03:26:52,952.952 INFO    ] 2026-06-22 03:26:52
[2026-06-22 03:26:53,213.213 INFO    ] 2026-06-22 03:26:53
[2026-06-22 03:26:53,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:26:53,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:26:53,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:26:53,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:26:53,582.582 INFO    ] time= 22/06/2026 03:26:53
[2026-06-22 03:26:53,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:26:53,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:26:53,762.762 INFO    ] No existing commands found in stream
[2026-06-22 03:26:58,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:26:58,790.790 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-22 03:26:59,145.145 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:26:59,148.148 INFO    ] Checking for system updates...
[2026-06-22 03:26:59,189.189 INFO    ] 200
[2026-06-22 03:26:59,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:26:59,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:26:59,247.247 INFO    ] No update needed
[2026-06-22 03:26:59,249.249 INFO    ] Checking for camera pi updates...
[2026-06-22 03:26:59,283.283 INFO    ] 200
[2026-06-22 03:26:59,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:26:59,332.332 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:26:59,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:26:59,417.417 INFO    ] No camera update needed
[2026-06-22 03:26:59,420.420 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:26:59,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:26:59,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:26:59,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:27:01,474.474 INFO    ] ================================================
[2026-06-22 03:27:01,490.490 INFO    ] Launching Daemon at Mon Jun 22 03:27:01 IST 2026
[2026-06-22 03:27:01,502.502 INFO    ] ================================================
[2026-06-22 03:27:02,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:27:02
[2026-06-22 03:27:02,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:27:03,224.224 INFO    ] Initializing speech engine...
[2026-06-22 03:27:03,230.230 INFO    ] 2026-06-22 03:27:03
[2026-06-22 03:27:03,528.528 INFO    ] 2026-06-22 03:27:03
[2026-06-22 03:27:03,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:27:03,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:27:03,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:27:03,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:27:03,881.881 INFO    ] time= 22/06/2026 03:27:03
[2026-06-22 03:27:03,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:27:03,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:27:03,979.979 INFO    ] No existing commands found in stream
[2026-06-22 03:27:09,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:27:09,017.017 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-22 03:27:09,825.825 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:27:09,828.828 INFO    ] Checking for system updates...
[2026-06-22 03:27:09,863.863 INFO    ] 200
[2026-06-22 03:27:09,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:27:09,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:27:09,921.921 INFO    ] No update needed
[2026-06-22 03:27:09,924.924 INFO    ] Checking for camera pi updates...
[2026-06-22 03:27:09,961.961 INFO    ] 200
[2026-06-22 03:27:09,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:27:10,004.004 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:27:10,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:27:10,105.105 INFO    ] No camera update needed
[2026-06-22 03:27:10,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:27:10,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:27:10,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:27:10,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:27:12,160.160 INFO    ] ================================================
[2026-06-22 03:27:12,175.175 INFO    ] Launching Daemon at Mon Jun 22 03:27:12 IST 2026
[2026-06-22 03:27:12,185.185 INFO    ] ================================================
[2026-06-22 03:27:12,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:27:12
[2026-06-22 03:27:13,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:27:13,591.591 INFO    ] Initializing speech engine...
[2026-06-22 03:27:13,597.597 INFO    ] 2026-06-22 03:27:13
[2026-06-22 03:27:13,872.872 INFO    ] 2026-06-22 03:27:13
[2026-06-22 03:27:13,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:27:14,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:27:14,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:27:14,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:27:14,249.249 INFO    ] time= 22/06/2026 03:27:14
[2026-06-22 03:27:14,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:27:14,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:27:14,411.411 INFO    ] No existing commands found in stream
[2026-06-22 03:27:19,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:27:19,439.439 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-22 03:27:22,178.178 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:27:22,181.181 INFO    ] Checking for system updates...
[2026-06-22 03:27:22,221.221 INFO    ] 200
[2026-06-22 03:27:22,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:27:22,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:27:22,279.279 INFO    ] No update needed
[2026-06-22 03:27:22,281.281 INFO    ] Checking for camera pi updates...
[2026-06-22 03:27:22,315.315 INFO    ] 200
[2026-06-22 03:27:22,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:27:22,363.363 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:27:22,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:27:22,442.442 INFO    ] No camera update needed
[2026-06-22 03:27:22,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:27:22,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:27:22,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:27:22,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:27:24,504.504 INFO    ] ================================================
[2026-06-22 03:27:24,519.519 INFO    ] Launching Daemon at Mon Jun 22 03:27:24 IST 2026
[2026-06-22 03:27:24,530.530 INFO    ] ================================================
[2026-06-22 03:27:25,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:27:25
[2026-06-22 03:27:25,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:27:25,894.894 INFO    ] Initializing speech engine...
[2026-06-22 03:27:25,904.904 INFO    ] 2026-06-22 03:27:25
[2026-06-22 03:27:26,149.149 INFO    ] 2026-06-22 03:27:26
[2026-06-22 03:27:26,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:27:26,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:27:26,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:27:26,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:27:26,517.517 INFO    ] time= 22/06/2026 03:27:26
[2026-06-22 03:27:26,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:27:26,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:27:26,691.691 INFO    ] No existing commands found in stream
[2026-06-22 03:27:31,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:27:31,731.731 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-22 03:27:32,551.551 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:27:32,554.554 INFO    ] Checking for system updates...
[2026-06-22 03:27:32,593.593 INFO    ] 200
[2026-06-22 03:27:32,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:27:32,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:27:32,656.656 INFO    ] No update needed
[2026-06-22 03:27:32,658.658 INFO    ] Checking for camera pi updates...
[2026-06-22 03:27:32,697.697 INFO    ] 200
[2026-06-22 03:27:32,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:27:32,748.748 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:27:32,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:27:32,800.800 INFO    ] No camera update needed
[2026-06-22 03:27:32,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:27:32,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:27:32,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:27:32,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:27:34,861.861 INFO    ] ================================================
[2026-06-22 03:27:34,877.877 INFO    ] Launching Daemon at Mon Jun 22 03:27:34 IST 2026
[2026-06-22 03:27:34,889.889 INFO    ] ================================================
[2026-06-22 03:27:35,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:27:35
[2026-06-22 03:27:36,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:27:36,564.564 INFO    ] Initializing speech engine...
[2026-06-22 03:27:36,575.575 INFO    ] 2026-06-22 03:27:36
[2026-06-22 03:27:36,866.866 INFO    ] 2026-06-22 03:27:36
[2026-06-22 03:27:36,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:27:37,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:27:37,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:27:37,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:27:37,308.308 INFO    ] time= 22/06/2026 03:27:37
[2026-06-22 03:27:37,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:27:37,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:27:37,463.463 INFO    ] No existing commands found in stream
[2026-06-22 03:27:42,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:27:42,479.479 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-22 03:27:44,549.549 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:27:44,551.551 INFO    ] Checking for system updates...
[2026-06-22 03:27:44,573.573 INFO    ] 200
[2026-06-22 03:27:44,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:27:44,605.605 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:27:44,606.606 INFO    ] No update needed
[2026-06-22 03:27:44,607.607 INFO    ] Checking for camera pi updates...
[2026-06-22 03:27:44,629.629 INFO    ] 200
[2026-06-22 03:27:44,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:27:44,678.678 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:27:44,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:27:44,768.768 INFO    ] No camera update needed
[2026-06-22 03:27:44,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:27:44,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:27:44,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:27:44,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:27:46,825.825 INFO    ] ================================================
[2026-06-22 03:27:46,840.840 INFO    ] Launching Daemon at Mon Jun 22 03:27:46 IST 2026
[2026-06-22 03:27:46,851.851 INFO    ] ================================================
[2026-06-22 03:27:47,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:27:47
[2026-06-22 03:27:47,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:27:48,191.191 INFO    ] Initializing speech engine...
[2026-06-22 03:27:48,201.201 INFO    ] 2026-06-22 03:27:48
[2026-06-22 03:27:48,447.447 INFO    ] 2026-06-22 03:27:48
[2026-06-22 03:27:48,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:27:48,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:27:48,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:27:48,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:27:48,818.818 INFO    ] time= 22/06/2026 03:27:48
[2026-06-22 03:27:48,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:27:48,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:27:48,976.976 INFO    ] No existing commands found in stream
[2026-06-22 03:27:54,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:27:54,009.009 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-22 03:27:57,714.714 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:27:57,717.717 INFO    ] Checking for system updates...
[2026-06-22 03:27:57,763.763 INFO    ] 200
[2026-06-22 03:27:57,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:27:57,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:27:57,830.830 INFO    ] No update needed
[2026-06-22 03:27:57,832.832 INFO    ] Checking for camera pi updates...
[2026-06-22 03:27:57,866.866 INFO    ] 200
[2026-06-22 03:27:57,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:27:57,910.910 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:27:58,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:27:58,003.003 INFO    ] No camera update needed
[2026-06-22 03:27:58,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:27:58,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:27:58,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:27:58,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:28:00,073.073 INFO    ] ================================================
[2026-06-22 03:28:00,088.088 INFO    ] Launching Daemon at Mon Jun 22 03:28:00 IST 2026
[2026-06-22 03:28:00,099.099 INFO    ] ================================================
[2026-06-22 03:28:00,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:28:00
[2026-06-22 03:28:01,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:28:01,434.434 INFO    ] Initializing speech engine...
[2026-06-22 03:28:01,443.443 INFO    ] 2026-06-22 03:28:01
[2026-06-22 03:28:01,713.713 INFO    ] 2026-06-22 03:28:01
[2026-06-22 03:28:01,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:28:01,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:28:01,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:28:02,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:28:02,118.118 INFO    ] time= 22/06/2026 03:28:02
[2026-06-22 03:28:02,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:28:02,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:28:02,228.228 INFO    ] No existing commands found in stream
[2026-06-22 03:28:07,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:28:07,242.242 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-22 03:28:10,225.225 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:28:10,227.227 INFO    ] Checking for system updates...
[2026-06-22 03:28:10,263.263 INFO    ] 200
[2026-06-22 03:28:10,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:28:10,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:28:10,326.326 INFO    ] No update needed
[2026-06-22 03:28:10,328.328 INFO    ] Checking for camera pi updates...
[2026-06-22 03:28:10,366.366 INFO    ] 200
[2026-06-22 03:28:10,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:28:10,409.409 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:28:10,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:28:10,497.497 INFO    ] No camera update needed
[2026-06-22 03:28:10,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:28:10,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:28:10,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:28:10,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:28:12,552.552 INFO    ] ================================================
[2026-06-22 03:28:12,568.568 INFO    ] Launching Daemon at Mon Jun 22 03:28:12 IST 2026
[2026-06-22 03:28:12,580.580 INFO    ] ================================================
[2026-06-22 03:28:13,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:28:13
[2026-06-22 03:28:13,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:28:13,959.959 INFO    ] Initializing speech engine...
[2026-06-22 03:28:13,966.966 INFO    ] 2026-06-22 03:28:13
[2026-06-22 03:28:14,256.256 INFO    ] 2026-06-22 03:28:14
[2026-06-22 03:28:14,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:28:14,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:28:14,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:28:14,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:28:14,629.629 INFO    ] time= 22/06/2026 03:28:14
[2026-06-22 03:28:14,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:28:14,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:28:14,751.751 INFO    ] No existing commands found in stream
[2026-06-22 03:28:19,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:28:19,762.762 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-22 03:28:21,614.614 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:28:21,617.617 INFO    ] Checking for system updates...
[2026-06-22 03:28:21,653.653 INFO    ] 200
[2026-06-22 03:28:21,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:28:21,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:28:21,717.717 INFO    ] No update needed
[2026-06-22 03:28:21,719.719 INFO    ] Checking for camera pi updates...
[2026-06-22 03:28:21,756.756 INFO    ] 200
[2026-06-22 03:28:21,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:28:21,804.804 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:28:21,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:28:21,989.989 INFO    ] No camera update needed
[2026-06-22 03:28:21,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:28:21,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:28:21,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:28:22,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:28:24,044.044 INFO    ] ================================================
[2026-06-22 03:28:24,060.060 INFO    ] Launching Daemon at Mon Jun 22 03:28:24 IST 2026
[2026-06-22 03:28:24,071.071 INFO    ] ================================================
[2026-06-22 03:28:24,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:28:24
[2026-06-22 03:28:25,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:28:25,485.485 INFO    ] Initializing speech engine...
[2026-06-22 03:28:25,505.505 INFO    ] 2026-06-22 03:28:25
[2026-06-22 03:28:25,756.756 INFO    ] 2026-06-22 03:28:25
[2026-06-22 03:28:25,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:28:25,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:28:25,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:28:26,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:28:26,098.098 INFO    ] time= 22/06/2026 03:28:26
[2026-06-22 03:28:26,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:28:26,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:28:26,213.213 INFO    ] No existing commands found in stream
[2026-06-22 03:28:31,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:28:31,231.231 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-22 03:28:34,229.229 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:28:34,231.231 INFO    ] Checking for system updates...
[2026-06-22 03:28:34,253.253 INFO    ] 200
[2026-06-22 03:28:34,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:28:34,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:28:34,300.300 INFO    ] No update needed
[2026-06-22 03:28:34,303.303 INFO    ] Checking for camera pi updates...
[2026-06-22 03:28:34,339.339 INFO    ] 200
[2026-06-22 03:28:34,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:28:34,387.387 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:28:34,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:28:34,488.488 INFO    ] No camera update needed
[2026-06-22 03:28:34,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:28:34,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:28:34,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:28:34,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:28:36,546.546 INFO    ] ================================================
[2026-06-22 03:28:36,562.562 INFO    ] Launching Daemon at Mon Jun 22 03:28:36 IST 2026
[2026-06-22 03:28:36,573.573 INFO    ] ================================================
[2026-06-22 03:28:37,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:28:37
[2026-06-22 03:28:37,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:28:37,888.888 INFO    ] Initializing speech engine...
[2026-06-22 03:28:37,900.900 INFO    ] 2026-06-22 03:28:37
[2026-06-22 03:28:38,167.167 INFO    ] 2026-06-22 03:28:38
[2026-06-22 03:28:38,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:28:38,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:28:38,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:28:38,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:28:38,543.543 INFO    ] time= 22/06/2026 03:28:38
[2026-06-22 03:28:38,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:28:38,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:28:38,726.726 INFO    ] No existing commands found in stream
[2026-06-22 03:28:43,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:28:43,753.753 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-22 03:28:45,435.435 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:28:45,438.438 INFO    ] Checking for system updates...
[2026-06-22 03:28:45,478.478 INFO    ] 200
[2026-06-22 03:28:45,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:28:45,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:28:45,536.536 INFO    ] No update needed
[2026-06-22 03:28:45,538.538 INFO    ] Checking for camera pi updates...
[2026-06-22 03:28:45,575.575 INFO    ] 200
[2026-06-22 03:28:45,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:28:45,623.623 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:28:45,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:28:45,702.702 INFO    ] No camera update needed
[2026-06-22 03:28:45,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:28:45,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:28:45,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:28:45,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:28:47,760.760 INFO    ] ================================================
[2026-06-22 03:28:47,775.775 INFO    ] Launching Daemon at Mon Jun 22 03:28:47 IST 2026
[2026-06-22 03:28:47,786.786 INFO    ] ================================================
[2026-06-22 03:28:48,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:28:48
[2026-06-22 03:28:48,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:28:49,157.157 INFO    ] Initializing speech engine...
[2026-06-22 03:28:49,166.166 INFO    ] 2026-06-22 03:28:49
[2026-06-22 03:28:49,417.417 INFO    ] 2026-06-22 03:28:49
[2026-06-22 03:28:49,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:28:49,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:28:49,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:28:49,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:28:49,786.786 INFO    ] time= 22/06/2026 03:28:49
[2026-06-22 03:28:49,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:28:49,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:28:49,961.961 INFO    ] No existing commands found in stream
[2026-06-22 03:28:54,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:28:54,995.995 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-22 03:28:57,196.196 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:28:57,198.198 INFO    ] Checking for system updates...
[2026-06-22 03:28:57,238.238 INFO    ] 200
[2026-06-22 03:28:57,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:28:57,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:28:57,298.298 INFO    ] No update needed
[2026-06-22 03:28:57,301.301 INFO    ] Checking for camera pi updates...
[2026-06-22 03:28:57,339.339 INFO    ] 200
[2026-06-22 03:28:57,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:28:57,387.387 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:28:57,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:28:57,463.463 INFO    ] No camera update needed
[2026-06-22 03:28:57,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:28:57,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:28:57,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:28:57,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:28:59,523.523 INFO    ] ================================================
[2026-06-22 03:28:59,538.538 INFO    ] Launching Daemon at Mon Jun 22 03:28:59 IST 2026
[2026-06-22 03:28:59,549.549 INFO    ] ================================================
[2026-06-22 03:29:00,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:29:00
[2026-06-22 03:29:00,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:29:00,905.905 INFO    ] Initializing speech engine...
[2026-06-22 03:29:00,911.911 INFO    ] 2026-06-22 03:29:00
[2026-06-22 03:29:01,195.195 INFO    ] 2026-06-22 03:29:01
[2026-06-22 03:29:01,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:29:01,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:29:01,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:29:01,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:29:01,669.669 INFO    ] time= 22/06/2026 03:29:01
[2026-06-22 03:29:01,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:29:01,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:29:01,767.767 INFO    ] No existing commands found in stream
[2026-06-22 03:29:06,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:29:06,781.781 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-22 03:29:08,028.028 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:29:08,030.030 INFO    ] Checking for system updates...
[2026-06-22 03:29:08,052.052 INFO    ] 200
[2026-06-22 03:29:08,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:29:08,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:29:08,101.101 INFO    ] No update needed
[2026-06-22 03:29:08,104.104 INFO    ] Checking for camera pi updates...
[2026-06-22 03:29:08,143.143 INFO    ] 200
[2026-06-22 03:29:08,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:29:08,193.193 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:29:08,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:29:08,247.247 INFO    ] No camera update needed
[2026-06-22 03:29:08,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:29:08,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:29:08,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:29:08,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:29:10,304.304 INFO    ] ================================================
[2026-06-22 03:29:10,321.321 INFO    ] Launching Daemon at Mon Jun 22 03:29:10 IST 2026
[2026-06-22 03:29:10,332.332 INFO    ] ================================================
[2026-06-22 03:29:10,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:29:10
[2026-06-22 03:29:11,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:29:11,742.742 INFO    ] Initializing speech engine...
[2026-06-22 03:29:11,767.767 INFO    ] 2026-06-22 03:29:11
[2026-06-22 03:29:12,025.025 INFO    ] 2026-06-22 03:29:12
[2026-06-22 03:29:12,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:29:12,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:29:12,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:29:12,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:29:12,403.403 INFO    ] time= 22/06/2026 03:29:12
[2026-06-22 03:29:12,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:29:12,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:29:12,479.479 INFO    ] No existing commands found in stream
[2026-06-22 03:29:17,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:29:17,490.490 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-22 03:29:18,765.765 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:29:18,768.768 INFO    ] Checking for system updates...
[2026-06-22 03:29:18,804.804 INFO    ] 200
[2026-06-22 03:29:18,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:29:18,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:29:18,868.868 INFO    ] No update needed
[2026-06-22 03:29:18,870.870 INFO    ] Checking for camera pi updates...
[2026-06-22 03:29:18,907.907 INFO    ] 200
[2026-06-22 03:29:18,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:29:18,951.951 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:29:19,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:29:19,032.032 INFO    ] No camera update needed
[2026-06-22 03:29:19,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:29:19,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:29:19,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:29:19,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:29:21,091.091 INFO    ] ================================================
[2026-06-22 03:29:21,106.106 INFO    ] Launching Daemon at Mon Jun 22 03:29:21 IST 2026
[2026-06-22 03:29:21,117.117 INFO    ] ================================================
[2026-06-22 03:29:21,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:29:21
[2026-06-22 03:29:22,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:29:22,617.617 INFO    ] Initializing speech engine...
[2026-06-22 03:29:22,631.631 INFO    ] 2026-06-22 03:29:22
[2026-06-22 03:29:22,942.942 INFO    ] 2026-06-22 03:29:22
[2026-06-22 03:29:23,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:29:23,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:29:23,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:29:23,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:29:23,449.449 INFO    ] time= 22/06/2026 03:29:23
[2026-06-22 03:29:23,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:29:23,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:29:23,599.599 INFO    ] No existing commands found in stream
[2026-06-22 03:29:28,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:29:28,619.619 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-22 03:29:31,374.374 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:29:31,376.376 INFO    ] Checking for system updates...
[2026-06-22 03:29:31,398.398 INFO    ] 200
[2026-06-22 03:29:31,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:29:31,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:29:31,436.436 INFO    ] No update needed
[2026-06-22 03:29:31,438.438 INFO    ] Checking for camera pi updates...
[2026-06-22 03:29:31,461.461 INFO    ] 200
[2026-06-22 03:29:31,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:29:31,499.499 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:29:31,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:29:31,581.581 INFO    ] No camera update needed
[2026-06-22 03:29:31,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:29:31,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:29:31,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:29:31,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:29:33,642.642 INFO    ] ================================================
[2026-06-22 03:29:33,657.657 INFO    ] Launching Daemon at Mon Jun 22 03:29:33 IST 2026
[2026-06-22 03:29:33,668.668 INFO    ] ================================================
[2026-06-22 03:29:34,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:29:34
[2026-06-22 03:29:34,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:29:35,127.127 INFO    ] Initializing speech engine...
[2026-06-22 03:29:35,135.135 INFO    ] 2026-06-22 03:29:35
[2026-06-22 03:29:35,397.397 INFO    ] 2026-06-22 03:29:35
[2026-06-22 03:29:35,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:29:35,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:29:35,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:29:35,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:29:35,861.861 INFO    ] time= 22/06/2026 03:29:35
[2026-06-22 03:29:35,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:29:35,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:29:36,001.001 INFO    ] No existing commands found in stream
[2026-06-22 03:29:41,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:29:41,019.019 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-22 03:29:42,016.016 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:29:42,019.019 INFO    ] Checking for system updates...
[2026-06-22 03:29:42,058.058 INFO    ] 200
[2026-06-22 03:29:42,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:29:42,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:29:42,117.117 INFO    ] No update needed
[2026-06-22 03:29:42,120.120 INFO    ] Checking for camera pi updates...
[2026-06-22 03:29:42,154.154 INFO    ] 200
[2026-06-22 03:29:42,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:29:42,198.198 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:29:42,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:29:42,278.278 INFO    ] No camera update needed
[2026-06-22 03:29:42,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:29:42,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:29:42,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:29:42,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:29:44,347.347 INFO    ] ================================================
[2026-06-22 03:29:44,362.362 INFO    ] Launching Daemon at Mon Jun 22 03:29:44 IST 2026
[2026-06-22 03:29:44,373.373 INFO    ] ================================================
[2026-06-22 03:29:44,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:29:44
[2026-06-22 03:29:45,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:29:45,798.798 INFO    ] Initializing speech engine...
[2026-06-22 03:29:45,808.808 INFO    ] 2026-06-22 03:29:45
[2026-06-22 03:29:46,063.063 INFO    ] 2026-06-22 03:29:46
[2026-06-22 03:29:46,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:29:47,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:29:47,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:29:47,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:29:47,575.575 INFO    ] time= 22/06/2026 03:29:47
[2026-06-22 03:29:47,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:29:47,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:29:47,647.647 INFO    ] No existing commands found in stream
[2026-06-22 03:29:52,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:29:52,661.661 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-22 03:29:53,722.722 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:29:53,725.725 INFO    ] Checking for system updates...
[2026-06-22 03:29:53,764.764 INFO    ] 200
[2026-06-22 03:29:53,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:29:53,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:29:53,821.821 INFO    ] No update needed
[2026-06-22 03:29:53,824.824 INFO    ] Checking for camera pi updates...
[2026-06-22 03:29:53,861.861 INFO    ] 200
[2026-06-22 03:29:53,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:29:53,895.895 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:29:53,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:29:53,988.988 INFO    ] No camera update needed
[2026-06-22 03:29:53,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:29:53,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:29:53,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:29:54,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:29:56,045.045 INFO    ] ================================================
[2026-06-22 03:29:56,061.061 INFO    ] Launching Daemon at Mon Jun 22 03:29:56 IST 2026
[2026-06-22 03:29:56,071.071 INFO    ] ================================================
[2026-06-22 03:29:56,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:29:56
[2026-06-22 03:29:57,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:29:57,524.524 INFO    ] Initializing speech engine...
[2026-06-22 03:29:57,540.540 INFO    ] 2026-06-22 03:29:57
[2026-06-22 03:29:57,823.823 INFO    ] 2026-06-22 03:29:57
[2026-06-22 03:29:57,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:29:58,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:29:58,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:29:58,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:29:58,234.234 INFO    ] time= 22/06/2026 03:29:58
[2026-06-22 03:29:58,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:29:58,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:29:58,320.320 INFO    ] No existing commands found in stream
[2026-06-22 03:30:03,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:30:03,340.340 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-22 03:30:08,549.549 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:30:08,552.552 INFO    ] Checking for system updates...
[2026-06-22 03:30:08,662.662 INFO    ] 200
[2026-06-22 03:30:08,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:30:08,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:30:08,827.827 INFO    ] No update needed
[2026-06-22 03:30:08,829.829 INFO    ] Checking for camera pi updates...
[2026-06-22 03:30:08,868.868 INFO    ] 200
[2026-06-22 03:30:08,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:30:08,917.917 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:30:08,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:30:08,966.966 INFO    ] No camera update needed
[2026-06-22 03:30:08,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:30:08,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:30:08,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:30:08,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:30:11,023.023 INFO    ] ================================================
[2026-06-22 03:30:11,038.038 INFO    ] Launching Daemon at Mon Jun 22 03:30:11 IST 2026
[2026-06-22 03:30:11,049.049 INFO    ] ================================================
[2026-06-22 03:30:11,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:30:11
[2026-06-22 03:30:12,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:30:12,385.385 INFO    ] Initializing speech engine...
[2026-06-22 03:30:12,394.394 INFO    ] 2026-06-22 03:30:12
[2026-06-22 03:30:12,696.696 INFO    ] 2026-06-22 03:30:12
[2026-06-22 03:30:12,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:30:12,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:30:12,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:30:13,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:30:13,080.080 INFO    ] time= 22/06/2026 03:30:13
[2026-06-22 03:30:13,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:30:13,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:30:13,206.206 INFO    ] No existing commands found in stream
[2026-06-22 03:30:18,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:30:18,218.218 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-22 03:30:21,027.027 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:30:21,030.030 INFO    ] Checking for system updates...
[2026-06-22 03:30:21,070.070 INFO    ] 200
[2026-06-22 03:30:21,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:30:21,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:30:21,128.128 INFO    ] No update needed
[2026-06-22 03:30:21,130.130 INFO    ] Checking for camera pi updates...
[2026-06-22 03:30:21,168.168 INFO    ] 200
[2026-06-22 03:30:21,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:30:21,216.216 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:30:21,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:30:21,295.295 INFO    ] No camera update needed
[2026-06-22 03:30:21,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:30:21,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:30:21,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:30:21,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:30:23,351.351 INFO    ] ================================================
[2026-06-22 03:30:23,367.367 INFO    ] Launching Daemon at Mon Jun 22 03:30:23 IST 2026
[2026-06-22 03:30:23,377.377 INFO    ] ================================================
[2026-06-22 03:30:23,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:30:23
[2026-06-22 03:30:24,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:30:24,819.819 INFO    ] Initializing speech engine...
[2026-06-22 03:30:24,835.835 INFO    ] 2026-06-22 03:30:24
[2026-06-22 03:30:25,122.122 INFO    ] 2026-06-22 03:30:25
[2026-06-22 03:30:25,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:30:25,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:30:25,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:30:25,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:30:25,617.617 INFO    ] time= 22/06/2026 03:30:25
[2026-06-22 03:30:25,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:30:25,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:30:25,772.772 INFO    ] No existing commands found in stream
[2026-06-22 03:30:30,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:30:30,788.788 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-22 03:30:33,338.338 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:30:33,341.341 INFO    ] Checking for system updates...
[2026-06-22 03:30:33,394.394 INFO    ] 200
[2026-06-22 03:30:33,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:30:33,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:30:33,466.466 INFO    ] No update needed
[2026-06-22 03:30:33,468.468 INFO    ] Checking for camera pi updates...
[2026-06-22 03:30:33,502.502 INFO    ] 200
[2026-06-22 03:30:33,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:30:33,553.553 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:30:33,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:30:33,651.651 INFO    ] No camera update needed
[2026-06-22 03:30:33,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:30:33,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:30:33,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:30:33,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:30:35,708.708 INFO    ] ================================================
[2026-06-22 03:30:35,728.728 INFO    ] Launching Daemon at Mon Jun 22 03:30:35 IST 2026
[2026-06-22 03:30:35,738.738 INFO    ] ================================================
[2026-06-22 03:30:36,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:30:36
[2026-06-22 03:30:36,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:30:37,203.203 INFO    ] Initializing speech engine...
[2026-06-22 03:30:37,213.213 INFO    ] 2026-06-22 03:30:37
[2026-06-22 03:30:37,512.512 INFO    ] 2026-06-22 03:30:37
[2026-06-22 03:30:37,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:30:37,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:30:37,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:30:37,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:30:37,868.868 INFO    ] time= 22/06/2026 03:30:37
[2026-06-22 03:30:37,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:30:37,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:30:37,945.945 INFO    ] No existing commands found in stream
[2026-06-22 03:30:42,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:30:42,960.960 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-22 03:30:44,438.438 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:30:44,441.441 INFO    ] Checking for system updates...
[2026-06-22 03:30:44,476.476 INFO    ] 200
[2026-06-22 03:30:44,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:30:44,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:30:44,540.540 INFO    ] No update needed
[2026-06-22 03:30:44,543.543 INFO    ] Checking for camera pi updates...
[2026-06-22 03:30:44,580.580 INFO    ] 200
[2026-06-22 03:30:44,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:30:44,627.627 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:30:44,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:30:44,717.717 INFO    ] No camera update needed
[2026-06-22 03:30:44,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:30:44,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:30:44,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:30:44,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:30:46,774.774 INFO    ] ================================================
[2026-06-22 03:30:46,790.790 INFO    ] Launching Daemon at Mon Jun 22 03:30:46 IST 2026
[2026-06-22 03:30:46,801.801 INFO    ] ================================================
[2026-06-22 03:30:47,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:30:47
[2026-06-22 03:30:48,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:30:48,331.331 INFO    ] Initializing speech engine...
[2026-06-22 03:30:48,342.342 INFO    ] 2026-06-22 03:30:48
[2026-06-22 03:30:48,617.617 INFO    ] 2026-06-22 03:30:48
[2026-06-22 03:30:48,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:30:48,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:30:48,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:30:49,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:30:49,061.061 INFO    ] time= 22/06/2026 03:30:49
[2026-06-22 03:30:49,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:30:49,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:30:49,205.205 INFO    ] No existing commands found in stream
[2026-06-22 03:30:54,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:30:54,220.220 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-22 03:30:55,017.017 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:30:55,019.019 INFO    ] Checking for system updates...
[2026-06-22 03:30:55,056.056 INFO    ] 200
[2026-06-22 03:30:55,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:30:55,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:30:55,120.120 INFO    ] No update needed
[2026-06-22 03:30:55,122.122 INFO    ] Checking for camera pi updates...
[2026-06-22 03:30:55,157.157 INFO    ] 200
[2026-06-22 03:30:55,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:30:55,207.207 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:30:55,282.282 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:30:55,284.284 INFO    ] No camera update needed
[2026-06-22 03:30:55,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:30:55,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:30:55,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:30:55,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:30:57,341.341 INFO    ] ================================================
[2026-06-22 03:30:57,357.357 INFO    ] Launching Daemon at Mon Jun 22 03:30:57 IST 2026
[2026-06-22 03:30:57,368.368 INFO    ] ================================================
[2026-06-22 03:30:58,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:30:58
[2026-06-22 03:30:58,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:30:58,889.889 INFO    ] Initializing speech engine...
[2026-06-22 03:30:58,897.897 INFO    ] 2026-06-22 03:30:58
[2026-06-22 03:30:59,173.173 INFO    ] 2026-06-22 03:30:59
[2026-06-22 03:30:59,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:30:59,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:30:59,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:30:59,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:30:59,658.658 INFO    ] time= 22/06/2026 03:30:59
[2026-06-22 03:30:59,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:30:59,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:30:59,799.799 INFO    ] No existing commands found in stream
[2026-06-22 03:31:04,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:31:04,814.814 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-22 03:31:05,857.857 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:31:05,860.860 INFO    ] Checking for system updates...
[2026-06-22 03:31:05,900.900 INFO    ] 200
[2026-06-22 03:31:05,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:31:05,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:31:05,966.966 INFO    ] No update needed
[2026-06-22 03:31:05,969.969 INFO    ] Checking for camera pi updates...
[2026-06-22 03:31:06,004.004 INFO    ] 200
[2026-06-22 03:31:06,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:31:06,052.052 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:31:06,135.135 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:31:06,137.137 INFO    ] No camera update needed
[2026-06-22 03:31:06,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:31:06,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:31:06,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:31:06,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:31:08,196.196 INFO    ] ================================================
[2026-06-22 03:31:08,212.212 INFO    ] Launching Daemon at Mon Jun 22 03:31:08 IST 2026
[2026-06-22 03:31:08,223.223 INFO    ] ================================================
[2026-06-22 03:31:08,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:31:08
[2026-06-22 03:31:09,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:31:09,590.590 INFO    ] Initializing speech engine...
[2026-06-22 03:31:09,606.606 INFO    ] 2026-06-22 03:31:09
[2026-06-22 03:31:09,889.889 INFO    ] 2026-06-22 03:31:09
[2026-06-22 03:31:09,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:31:10,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:31:10,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:31:10,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:31:10,283.283 INFO    ] time= 22/06/2026 03:31:10
[2026-06-22 03:31:10,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:31:10,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:31:10,413.413 INFO    ] No existing commands found in stream
[2026-06-22 03:31:15,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:31:15,427.427 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-22 03:31:15,768.768 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:31:15,771.771 INFO    ] Checking for system updates...
[2026-06-22 03:31:15,811.811 INFO    ] 200
[2026-06-22 03:31:15,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:31:15,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:31:15,875.875 INFO    ] No update needed
[2026-06-22 03:31:15,878.878 INFO    ] Checking for camera pi updates...
[2026-06-22 03:31:15,911.911 INFO    ] 200
[2026-06-22 03:31:15,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:31:15,959.959 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:31:16,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:31:16,020.020 INFO    ] No camera update needed
[2026-06-22 03:31:16,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:31:16,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:31:16,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:31:16,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:31:18,077.077 INFO    ] ================================================
[2026-06-22 03:31:18,093.093 INFO    ] Launching Daemon at Mon Jun 22 03:31:18 IST 2026
[2026-06-22 03:31:18,104.104 INFO    ] ================================================
[2026-06-22 03:31:18,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:31:18
[2026-06-22 03:31:19,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:31:19,436.436 INFO    ] Initializing speech engine...
[2026-06-22 03:31:19,444.444 INFO    ] 2026-06-22 03:31:19
[2026-06-22 03:31:19,740.740 INFO    ] 2026-06-22 03:31:19
[2026-06-22 03:31:19,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:31:19,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:31:19,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:31:20,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:31:20,123.123 INFO    ] time= 22/06/2026 03:31:20
[2026-06-22 03:31:20,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:31:20,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:31:20,248.248 INFO    ] No existing commands found in stream
[2026-06-22 03:31:25,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:31:25,264.264 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-22 03:31:28,046.046 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:31:28,049.049 INFO    ] Checking for system updates...
[2026-06-22 03:31:28,089.089 INFO    ] 200
[2026-06-22 03:31:28,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:31:28,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:31:28,153.153 INFO    ] No update needed
[2026-06-22 03:31:28,155.155 INFO    ] Checking for camera pi updates...
[2026-06-22 03:31:28,189.189 INFO    ] 200
[2026-06-22 03:31:28,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:31:28,232.232 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:31:28,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:31:28,293.293 INFO    ] No camera update needed
[2026-06-22 03:31:28,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:31:28,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:31:28,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:31:28,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:31:30,350.350 INFO    ] ================================================
[2026-06-22 03:31:30,367.367 INFO    ] Launching Daemon at Mon Jun 22 03:31:30 IST 2026
[2026-06-22 03:31:30,377.377 INFO    ] ================================================
[2026-06-22 03:31:31,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:31:31
[2026-06-22 03:31:31,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:31:31,910.910 INFO    ] Initializing speech engine...
[2026-06-22 03:31:31,924.924 INFO    ] 2026-06-22 03:31:31
[2026-06-22 03:31:32,236.236 INFO    ] 2026-06-22 03:31:32
[2026-06-22 03:31:32,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:31:32,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:31:32,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:31:32,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:31:32,714.714 INFO    ] time= 22/06/2026 03:31:32
[2026-06-22 03:31:32,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:31:32,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:31:32,869.869 INFO    ] No existing commands found in stream
[2026-06-22 03:31:37,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:31:37,887.887 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-22 03:31:43,877.877 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:31:43,880.880 INFO    ] Checking for system updates...
[2026-06-22 03:31:43,917.917 INFO    ] 200
[2026-06-22 03:31:43,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:31:43,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:31:43,976.976 INFO    ] No update needed
[2026-06-22 03:31:43,979.979 INFO    ] Checking for camera pi updates...
[2026-06-22 03:31:44,020.020 INFO    ] 200
[2026-06-22 03:31:44,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:31:44,065.065 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:31:44,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:31:44,163.163 INFO    ] No camera update needed
[2026-06-22 03:31:44,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:31:44,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:31:44,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:31:44,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:31:46,221.221 INFO    ] ================================================
[2026-06-22 03:31:46,237.237 INFO    ] Launching Daemon at Mon Jun 22 03:31:46 IST 2026
[2026-06-22 03:31:46,248.248 INFO    ] ================================================
[2026-06-22 03:31:46,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:31:46
[2026-06-22 03:31:47,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:31:47,762.762 INFO    ] Initializing speech engine...
[2026-06-22 03:31:47,769.769 INFO    ] 2026-06-22 03:31:47
[2026-06-22 03:31:48,044.044 INFO    ] 2026-06-22 03:31:48
[2026-06-22 03:31:48,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:31:48,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:31:48,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:31:48,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:31:48,528.528 INFO    ] time= 22/06/2026 03:31:48
[2026-06-22 03:31:48,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:31:48,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:31:48,673.673 INFO    ] No existing commands found in stream
[2026-06-22 03:31:53,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:31:53,689.689 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-22 03:31:57,222.222 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:31:57,225.225 INFO    ] Checking for system updates...
[2026-06-22 03:31:57,266.266 INFO    ] 200
[2026-06-22 03:31:57,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:31:57,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:31:57,332.332 INFO    ] No update needed
[2026-06-22 03:31:57,335.335 INFO    ] Checking for camera pi updates...
[2026-06-22 03:31:57,373.373 INFO    ] 200
[2026-06-22 03:31:57,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:31:57,418.418 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:31:57,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:31:57,516.516 INFO    ] No camera update needed
[2026-06-22 03:31:57,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:31:57,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:31:57,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:31:57,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:31:59,573.573 INFO    ] ================================================
[2026-06-22 03:31:59,589.589 INFO    ] Launching Daemon at Mon Jun 22 03:31:59 IST 2026
[2026-06-22 03:31:59,601.601 INFO    ] ================================================
[2026-06-22 03:32:00,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:32:00
[2026-06-22 03:32:00,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:32:01,100.100 INFO    ] Initializing speech engine...
[2026-06-22 03:32:01,109.109 INFO    ] 2026-06-22 03:32:01
[2026-06-22 03:32:01,380.380 INFO    ] 2026-06-22 03:32:01
[2026-06-22 03:32:01,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:32:01,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:32:01,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:32:01,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:32:01,803.803 INFO    ] time= 22/06/2026 03:32:01
[2026-06-22 03:32:01,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:32:01,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:32:01,880.880 INFO    ] No existing commands found in stream
[2026-06-22 03:32:06,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:32:06,893.893 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-22 03:32:09,609.609 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:32:09,612.612 INFO    ] Checking for system updates...
[2026-06-22 03:32:09,647.647 INFO    ] 200
[2026-06-22 03:32:09,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:32:09,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:32:09,714.714 INFO    ] No update needed
[2026-06-22 03:32:09,717.717 INFO    ] Checking for camera pi updates...
[2026-06-22 03:32:09,755.755 INFO    ] 200
[2026-06-22 03:32:09,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:32:09,798.798 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:32:09,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:32:09,879.879 INFO    ] No camera update needed
[2026-06-22 03:32:09,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:32:09,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:32:09,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:32:09,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:32:11,936.936 INFO    ] ================================================
[2026-06-22 03:32:11,953.953 INFO    ] Launching Daemon at Mon Jun 22 03:32:11 IST 2026
[2026-06-22 03:32:11,965.965 INFO    ] ================================================
[2026-06-22 03:32:12,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:32:12
[2026-06-22 03:32:13,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:32:13,333.333 INFO    ] Initializing speech engine...
[2026-06-22 03:32:13,351.351 INFO    ] 2026-06-22 03:32:13
[2026-06-22 03:32:13,626.626 INFO    ] 2026-06-22 03:32:13
[2026-06-22 03:32:13,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:32:13,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:32:13,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:32:14,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:32:14,055.055 INFO    ] time= 22/06/2026 03:32:14
[2026-06-22 03:32:14,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:32:14,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:32:14,145.145 INFO    ] No existing commands found in stream
[2026-06-22 03:32:19,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:32:19,183.183 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-22 03:32:22,943.943 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:32:22,945.945 INFO    ] Checking for system updates...
[2026-06-22 03:32:22,966.966 INFO    ] 200
[2026-06-22 03:32:22,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:32:22,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:32:22,999.999 INFO    ] No update needed
[2026-06-22 03:32:23,000.000 INFO    ] Checking for camera pi updates...
[2026-06-22 03:32:23,034.034 INFO    ] 200
[2026-06-22 03:32:23,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:32:23,084.084 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:32:23,166.166 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:32:23,169.169 INFO    ] No camera update needed
[2026-06-22 03:32:23,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:32:23,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:32:23,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:32:23,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:32:25,231.231 INFO    ] ================================================
[2026-06-22 03:32:25,246.246 INFO    ] Launching Daemon at Mon Jun 22 03:32:25 IST 2026
[2026-06-22 03:32:25,257.257 INFO    ] ================================================
[2026-06-22 03:32:25,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:32:25
[2026-06-22 03:32:26,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:32:26,596.596 INFO    ] Initializing speech engine...
[2026-06-22 03:32:26,602.602 INFO    ] 2026-06-22 03:32:26
[2026-06-22 03:32:26,902.902 INFO    ] 2026-06-22 03:32:26
[2026-06-22 03:32:26,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:32:27,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:32:27,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:32:27,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:32:27,258.258 INFO    ] time= 22/06/2026 03:32:27
[2026-06-22 03:32:27,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:32:27,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:32:27,334.334 INFO    ] No existing commands found in stream
[2026-06-22 03:32:32,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:32:32,349.349 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-22 03:32:32,903.903 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:32:32,907.907 INFO    ] Checking for system updates...
[2026-06-22 03:32:32,958.958 INFO    ] 200
[2026-06-22 03:32:32,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:32:33,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:32:33,036.036 INFO    ] No update needed
[2026-06-22 03:32:33,040.040 INFO    ] Checking for camera pi updates...
[2026-06-22 03:32:33,079.079 INFO    ] 200
[2026-06-22 03:32:33,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:32:33,138.138 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:32:33,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:32:33,220.220 INFO    ] No camera update needed
[2026-06-22 03:32:33,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:32:33,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:32:33,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:32:33,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:32:35,275.275 INFO    ] ================================================
[2026-06-22 03:32:35,290.290 INFO    ] Launching Daemon at Mon Jun 22 03:32:35 IST 2026
[2026-06-22 03:32:35,301.301 INFO    ] ================================================
[2026-06-22 03:32:35,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:32:35
[2026-06-22 03:32:36,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:32:36,832.832 INFO    ] Initializing speech engine...
[2026-06-22 03:32:36,844.844 INFO    ] 2026-06-22 03:32:36
[2026-06-22 03:32:37,125.125 INFO    ] 2026-06-22 03:32:37
[2026-06-22 03:32:37,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:32:37,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:32:37,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:32:37,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:32:37,600.600 INFO    ] time= 22/06/2026 03:32:37
[2026-06-22 03:32:37,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:32:37,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:32:37,726.726 INFO    ] No existing commands found in stream
[2026-06-22 03:32:42,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:32:42,742.742 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-22 03:32:44,011.011 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:32:44,013.013 INFO    ] Checking for system updates...
[2026-06-22 03:32:44,034.034 INFO    ] 200
[2026-06-22 03:32:44,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:32:44,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:32:44,069.069 INFO    ] No update needed
[2026-06-22 03:32:44,070.070 INFO    ] Checking for camera pi updates...
[2026-06-22 03:32:44,091.091 INFO    ] 200
[2026-06-22 03:32:44,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:32:44,136.136 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:32:44,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:32:44,318.318 INFO    ] No camera update needed
[2026-06-22 03:32:44,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:32:44,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:32:44,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:32:44,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:32:46,374.374 INFO    ] ================================================
[2026-06-22 03:32:46,389.389 INFO    ] Launching Daemon at Mon Jun 22 03:32:46 IST 2026
[2026-06-22 03:32:46,399.399 INFO    ] ================================================
[2026-06-22 03:32:47,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:32:47
[2026-06-22 03:32:47,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:32:48,023.023 INFO    ] Initializing speech engine...
[2026-06-22 03:32:48,038.038 INFO    ] 2026-06-22 03:32:48
[2026-06-22 03:32:48,319.319 INFO    ] 2026-06-22 03:32:48
[2026-06-22 03:32:48,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:32:48,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:32:48,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:32:48,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:32:48,789.789 INFO    ] time= 22/06/2026 03:32:48
[2026-06-22 03:32:48,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:32:48,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:32:48,995.995 INFO    ] No existing commands found in stream
[2026-06-22 03:32:54,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:32:54,022.022 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-22 03:32:54,897.897 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:32:54,899.899 INFO    ] Checking for system updates...
[2026-06-22 03:32:54,920.920 INFO    ] 200
[2026-06-22 03:32:54,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:32:54,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:32:54,954.954 INFO    ] No update needed
[2026-06-22 03:32:54,956.956 INFO    ] Checking for camera pi updates...
[2026-06-22 03:32:54,975.975 INFO    ] 200
[2026-06-22 03:32:54,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:32:55,006.006 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:32:55,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:32:55,090.090 INFO    ] No camera update needed
[2026-06-22 03:32:55,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:32:55,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:32:55,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:32:55,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:32:57,150.150 INFO    ] ================================================
[2026-06-22 03:32:57,166.166 INFO    ] Launching Daemon at Mon Jun 22 03:32:57 IST 2026
[2026-06-22 03:32:57,176.176 INFO    ] ================================================
[2026-06-22 03:32:57,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:32:57
[2026-06-22 03:32:58,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:32:58,622.622 INFO    ] Initializing speech engine...
[2026-06-22 03:32:58,630.630 INFO    ] 2026-06-22 03:32:58
[2026-06-22 03:32:58,893.893 INFO    ] 2026-06-22 03:32:58
[2026-06-22 03:32:58,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:32:59,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:32:59,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:32:59,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:32:59,282.282 INFO    ] time= 22/06/2026 03:32:59
[2026-06-22 03:32:59,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:32:59,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:32:59,389.389 INFO    ] No existing commands found in stream
[2026-06-22 03:33:04,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:33:04,403.403 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-22 03:33:06,533.533 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:33:06,537.537 INFO    ] Checking for system updates...
[2026-06-22 03:33:06,588.588 INFO    ] 200
[2026-06-22 03:33:06,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:33:06,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:33:06,632.632 INFO    ] No update needed
[2026-06-22 03:33:06,633.633 INFO    ] Checking for camera pi updates...
[2026-06-22 03:33:06,656.656 INFO    ] 200
[2026-06-22 03:33:06,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:33:06,682.682 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:33:06,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:33:06,766.766 INFO    ] No camera update needed
[2026-06-22 03:33:06,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:33:06,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:33:06,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:33:06,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:33:08,822.822 INFO    ] ================================================
[2026-06-22 03:33:08,837.837 INFO    ] Launching Daemon at Mon Jun 22 03:33:08 IST 2026
[2026-06-22 03:33:08,848.848 INFO    ] ================================================
[2026-06-22 03:33:09,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:33:09
[2026-06-22 03:33:09,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:33:10,220.220 INFO    ] Initializing speech engine...
[2026-06-22 03:33:10,229.229 INFO    ] 2026-06-22 03:33:10
[2026-06-22 03:33:10,489.489 INFO    ] 2026-06-22 03:33:10
[2026-06-22 03:33:10,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:33:10,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:33:10,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:33:10,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:33:10,949.949 INFO    ] time= 22/06/2026 03:33:10
[2026-06-22 03:33:11,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:33:11,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:33:11,096.096 INFO    ] No existing commands found in stream
[2026-06-22 03:33:16,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:33:16,111.111 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-22 03:33:17,214.214 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:33:17,216.216 INFO    ] Checking for system updates...
[2026-06-22 03:33:17,238.238 INFO    ] 200
[2026-06-22 03:33:17,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:33:17,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:33:17,273.273 INFO    ] No update needed
[2026-06-22 03:33:17,274.274 INFO    ] Checking for camera pi updates...
[2026-06-22 03:33:17,297.297 INFO    ] 200
[2026-06-22 03:33:17,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:33:17,340.340 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:33:17,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:33:17,412.412 INFO    ] No camera update needed
[2026-06-22 03:33:17,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:33:17,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:33:17,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:33:17,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:33:19,467.467 INFO    ] ================================================
[2026-06-22 03:33:19,482.482 INFO    ] Launching Daemon at Mon Jun 22 03:33:19 IST 2026
[2026-06-22 03:33:19,493.493 INFO    ] ================================================
[2026-06-22 03:33:20,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:33:20
[2026-06-22 03:33:20,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:33:20,818.818 INFO    ] Initializing speech engine...
[2026-06-22 03:33:20,831.831 INFO    ] 2026-06-22 03:33:20
[2026-06-22 03:33:21,095.095 INFO    ] 2026-06-22 03:33:21
[2026-06-22 03:33:21,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:33:21,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:33:21,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:33:21,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:33:21,543.543 INFO    ] time= 22/06/2026 03:33:21
[2026-06-22 03:33:21,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:33:21,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:33:21,712.712 INFO    ] No existing commands found in stream
[2026-06-22 03:33:26,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:33:26,728.728 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-22 03:33:27,240.240 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:33:27,242.242 INFO    ] Checking for system updates...
[2026-06-22 03:33:27,279.279 INFO    ] 200
[2026-06-22 03:33:27,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:33:27,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:33:27,337.337 INFO    ] No update needed
[2026-06-22 03:33:27,339.339 INFO    ] Checking for camera pi updates...
[2026-06-22 03:33:27,373.373 INFO    ] 200
[2026-06-22 03:33:27,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:33:27,416.416 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:33:27,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:33:27,501.501 INFO    ] No camera update needed
[2026-06-22 03:33:27,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:33:27,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:33:27,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:33:27,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:33:29,556.556 INFO    ] ================================================
[2026-06-22 03:33:29,571.571 INFO    ] Launching Daemon at Mon Jun 22 03:33:29 IST 2026
[2026-06-22 03:33:29,582.582 INFO    ] ================================================
[2026-06-22 03:33:30,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:33:30
[2026-06-22 03:33:30,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:33:31,008.008 INFO    ] Initializing speech engine...
[2026-06-22 03:33:31,015.015 INFO    ] 2026-06-22 03:33:31
[2026-06-22 03:33:31,272.272 INFO    ] 2026-06-22 03:33:31
[2026-06-22 03:33:31,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:33:31,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:33:31,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:33:31,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:33:31,608.608 INFO    ] time= 22/06/2026 03:33:31
[2026-06-22 03:33:31,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:33:31,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:33:31,705.705 INFO    ] No existing commands found in stream
[2026-06-22 03:33:36,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:33:36,738.738 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-22 03:33:38,086.086 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:33:38,089.089 INFO    ] Checking for system updates...
[2026-06-22 03:33:38,132.132 INFO    ] 200
[2026-06-22 03:33:38,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:33:38,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:33:38,194.194 INFO    ] No update needed
[2026-06-22 03:33:38,196.196 INFO    ] Checking for camera pi updates...
[2026-06-22 03:33:38,235.235 INFO    ] 200
[2026-06-22 03:33:38,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:33:38,283.283 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:33:38,354.354 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:33:38,357.357 INFO    ] No camera update needed
[2026-06-22 03:33:38,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:33:38,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:33:38,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:33:38,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:33:40,416.416 INFO    ] ================================================
[2026-06-22 03:33:40,432.432 INFO    ] Launching Daemon at Mon Jun 22 03:33:40 IST 2026
[2026-06-22 03:33:40,442.442 INFO    ] ================================================
[2026-06-22 03:33:41,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:33:41
[2026-06-22 03:33:41,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:33:42,007.007 INFO    ] Initializing speech engine...
[2026-06-22 03:33:42,014.014 INFO    ] 2026-06-22 03:33:42
[2026-06-22 03:33:42,258.258 INFO    ] 2026-06-22 03:33:42
[2026-06-22 03:33:42,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:33:42,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:33:42,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:33:42,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:33:42,627.627 INFO    ] time= 22/06/2026 03:33:42
[2026-06-22 03:33:42,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:33:42,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:33:42,795.795 INFO    ] No existing commands found in stream
[2026-06-22 03:33:47,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:33:47,834.834 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-22 03:33:50,751.751 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:33:50,753.753 INFO    ] Checking for system updates...
[2026-06-22 03:33:50,793.793 INFO    ] 200
[2026-06-22 03:33:50,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:33:50,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:33:50,856.856 INFO    ] No update needed
[2026-06-22 03:33:50,859.859 INFO    ] Checking for camera pi updates...
[2026-06-22 03:33:50,892.892 INFO    ] 200
[2026-06-22 03:33:50,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:33:50,935.935 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:33:51,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:33:51,016.016 INFO    ] No camera update needed
[2026-06-22 03:33:51,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:33:51,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:33:51,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:33:51,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:33:53,073.073 INFO    ] ================================================
[2026-06-22 03:33:53,088.088 INFO    ] Launching Daemon at Mon Jun 22 03:33:53 IST 2026
[2026-06-22 03:33:53,099.099 INFO    ] ================================================
[2026-06-22 03:33:53,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:33:53
[2026-06-22 03:33:54,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:33:54,524.524 INFO    ] Initializing speech engine...
[2026-06-22 03:33:54,547.547 INFO    ] 2026-06-22 03:33:54
[2026-06-22 03:33:54,799.799 INFO    ] 2026-06-22 03:33:54
[2026-06-22 03:33:54,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:33:55,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:33:55,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:33:55,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:33:55,275.275 INFO    ] time= 22/06/2026 03:33:55
[2026-06-22 03:33:55,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:33:55,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:33:55,415.415 INFO    ] No existing commands found in stream
[2026-06-22 03:34:00,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:34:00,430.430 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-22 03:34:04,643.643 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:34:04,645.645 INFO    ] Checking for system updates...
[2026-06-22 03:34:04,687.687 INFO    ] 200
[2026-06-22 03:34:04,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:34:04,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:34:04,745.745 INFO    ] No update needed
[2026-06-22 03:34:04,748.748 INFO    ] Checking for camera pi updates...
[2026-06-22 03:34:04,785.785 INFO    ] 200
[2026-06-22 03:34:04,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:34:04,829.829 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:34:04,913.913 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:34:04,915.915 INFO    ] No camera update needed
[2026-06-22 03:34:04,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:34:04,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:34:04,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:34:04,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:34:06,970.970 INFO    ] ================================================
[2026-06-22 03:34:06,985.985 INFO    ] Launching Daemon at Mon Jun 22 03:34:06 IST 2026
[2026-06-22 03:34:07,996.996 INFO    ] ================================================
[2026-06-22 03:34:07,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:34:07
[2026-06-22 03:34:08,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:34:08,336.336 INFO    ] Initializing speech engine...
[2026-06-22 03:34:08,345.345 INFO    ] 2026-06-22 03:34:08
[2026-06-22 03:34:08,594.594 INFO    ] 2026-06-22 03:34:08
[2026-06-22 03:34:08,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:34:08,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:34:08,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:34:08,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:34:08,949.949 INFO    ] time= 22/06/2026 03:34:08
[2026-06-22 03:34:08,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:34:08,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:34:09,047.047 INFO    ] No existing commands found in stream
[2026-06-22 03:34:14,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:34:14,062.062 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-22 03:34:16,457.457 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:34:16,459.459 INFO    ] Checking for system updates...
[2026-06-22 03:34:16,481.481 INFO    ] 200
[2026-06-22 03:34:16,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:34:16,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:34:16,516.516 INFO    ] No update needed
[2026-06-22 03:34:16,517.517 INFO    ] Checking for camera pi updates...
[2026-06-22 03:34:16,547.547 INFO    ] 200
[2026-06-22 03:34:16,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:34:16,598.598 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:34:16,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:34:16,676.676 INFO    ] No camera update needed
[2026-06-22 03:34:16,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:34:16,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:34:16,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:34:16,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:34:18,732.732 INFO    ] ================================================
[2026-06-22 03:34:18,748.748 INFO    ] Launching Daemon at Mon Jun 22 03:34:18 IST 2026
[2026-06-22 03:34:18,758.758 INFO    ] ================================================
[2026-06-22 03:34:19,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:34:19
[2026-06-22 03:34:19,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:34:20,116.116 INFO    ] Initializing speech engine...
[2026-06-22 03:34:20,125.125 INFO    ] 2026-06-22 03:34:20
[2026-06-22 03:34:20,378.378 INFO    ] 2026-06-22 03:34:20
[2026-06-22 03:34:20,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:34:20,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:34:20,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:34:20,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:34:20,728.728 INFO    ] time= 22/06/2026 03:34:20
[2026-06-22 03:34:20,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:34:20,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:34:20,852.852 INFO    ] No existing commands found in stream
[2026-06-22 03:34:25,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:34:25,868.868 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-22 03:34:29,576.576 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:34:29,579.579 INFO    ] Checking for system updates...
[2026-06-22 03:34:29,618.618 INFO    ] 200
[2026-06-22 03:34:29,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:34:29,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:34:29,675.675 INFO    ] No update needed
[2026-06-22 03:34:29,678.678 INFO    ] Checking for camera pi updates...
[2026-06-22 03:34:29,712.712 INFO    ] 200
[2026-06-22 03:34:29,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:34:29,757.757 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:34:29,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:34:29,858.858 INFO    ] No camera update needed
[2026-06-22 03:34:29,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:34:29,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:34:29,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:34:29,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:34:31,915.915 INFO    ] ================================================
[2026-06-22 03:34:31,931.931 INFO    ] Launching Daemon at Mon Jun 22 03:34:31 IST 2026
[2026-06-22 03:34:31,943.943 INFO    ] ================================================
[2026-06-22 03:34:32,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:34:32
[2026-06-22 03:34:33,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:34:33,427.427 INFO    ] Initializing speech engine...
[2026-06-22 03:34:33,442.442 INFO    ] 2026-06-22 03:34:33
[2026-06-22 03:34:33,712.712 INFO    ] 2026-06-22 03:34:33
[2026-06-22 03:34:33,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:34:33,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:34:33,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:34:34,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:34:34,095.095 INFO    ] time= 22/06/2026 03:34:34
[2026-06-22 03:34:34,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:34:34,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:34:34,176.176 INFO    ] No existing commands found in stream
[2026-06-22 03:34:39,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:34:39,194.194 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-22 03:34:39,764.764 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:34:39,767.767 INFO    ] Checking for system updates...
[2026-06-22 03:34:39,805.805 INFO    ] 200
[2026-06-22 03:34:39,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:34:39,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:34:39,872.872 INFO    ] No update needed
[2026-06-22 03:34:39,875.875 INFO    ] Checking for camera pi updates...
[2026-06-22 03:34:39,913.913 INFO    ] 200
[2026-06-22 03:34:39,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:34:39,964.964 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:34:40,042.042 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:34:40,045.045 INFO    ] No camera update needed
[2026-06-22 03:34:40,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:34:40,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:34:40,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:34:40,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:34:42,106.106 INFO    ] ================================================
[2026-06-22 03:34:42,121.121 INFO    ] Launching Daemon at Mon Jun 22 03:34:42 IST 2026
[2026-06-22 03:34:42,132.132 INFO    ] ================================================
[2026-06-22 03:34:42,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:34:42
[2026-06-22 03:34:43,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:34:43,460.460 INFO    ] Initializing speech engine...
[2026-06-22 03:34:43,470.470 INFO    ] 2026-06-22 03:34:43
[2026-06-22 03:34:43,725.725 INFO    ] 2026-06-22 03:34:43
[2026-06-22 03:34:43,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:34:43,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:34:43,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:34:44,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:34:44,083.083 INFO    ] time= 22/06/2026 03:34:44
[2026-06-22 03:34:44,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:34:44,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:34:44,166.166 INFO    ] No existing commands found in stream
[2026-06-22 03:34:49,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:34:49,183.183 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-22 03:34:51,144.144 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:34:51,147.147 INFO    ] Checking for system updates...
[2026-06-22 03:34:51,187.187 INFO    ] 200
[2026-06-22 03:34:51,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:34:51,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:34:51,244.244 INFO    ] No update needed
[2026-06-22 03:34:51,246.246 INFO    ] Checking for camera pi updates...
[2026-06-22 03:34:51,284.284 INFO    ] 200
[2026-06-22 03:34:51,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:34:51,332.332 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:34:51,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:34:51,514.514 INFO    ] No camera update needed
[2026-06-22 03:34:51,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:34:51,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:34:51,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:34:51,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:34:53,570.570 INFO    ] ================================================
[2026-06-22 03:34:53,586.586 INFO    ] Launching Daemon at Mon Jun 22 03:34:53 IST 2026
[2026-06-22 03:34:53,597.597 INFO    ] ================================================
[2026-06-22 03:34:54,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:34:54
[2026-06-22 03:34:54,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:34:54,945.945 INFO    ] Initializing speech engine...
[2026-06-22 03:34:54,949.949 INFO    ] 2026-06-22 03:34:54
[2026-06-22 03:34:55,197.197 INFO    ] 2026-06-22 03:34:55
[2026-06-22 03:34:55,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:34:55,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:34:55,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:34:55,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:34:55,567.567 INFO    ] time= 22/06/2026 03:34:55
[2026-06-22 03:34:55,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:34:55,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:34:55,726.726 INFO    ] No existing commands found in stream
[2026-06-22 03:35:00,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:35:00,759.759 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-22 03:35:02,696.696 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:35:02,699.699 INFO    ] Checking for system updates...
[2026-06-22 03:35:02,746.746 INFO    ] 200
[2026-06-22 03:35:02,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:35:02,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:35:02,813.813 INFO    ] No update needed
[2026-06-22 03:35:02,815.815 INFO    ] Checking for camera pi updates...
[2026-06-22 03:35:02,854.854 INFO    ] 200
[2026-06-22 03:35:02,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:35:02,909.909 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:35:02,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:35:02,997.997 INFO    ] No camera update needed
[2026-06-22 03:35:03,000.000 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:35:03,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:35:03,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:35:03,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:35:05,063.063 INFO    ] ================================================
[2026-06-22 03:35:05,078.078 INFO    ] Launching Daemon at Mon Jun 22 03:35:05 IST 2026
[2026-06-22 03:35:05,089.089 INFO    ] ================================================
[2026-06-22 03:35:05,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:35:05
[2026-06-22 03:35:06,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:35:06,434.434 INFO    ] Initializing speech engine...
[2026-06-22 03:35:06,445.445 INFO    ] 2026-06-22 03:35:06
[2026-06-22 03:35:06,713.713 INFO    ] 2026-06-22 03:35:06
[2026-06-22 03:35:06,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:35:06,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:35:07,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:35:07,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:35:07,170.170 INFO    ] time= 22/06/2026 03:35:07
[2026-06-22 03:35:07,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:35:07,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:35:07,319.319 INFO    ] No existing commands found in stream
[2026-06-22 03:35:12,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:35:12,334.334 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-22 03:35:15,623.623 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:35:15,626.626 INFO    ] Checking for system updates...
[2026-06-22 03:35:15,665.665 INFO    ] 200
[2026-06-22 03:35:15,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:35:15,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:35:15,724.724 INFO    ] No update needed
[2026-06-22 03:35:15,726.726 INFO    ] Checking for camera pi updates...
[2026-06-22 03:35:15,763.763 INFO    ] 200
[2026-06-22 03:35:15,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:35:15,810.810 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:35:15,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:35:15,897.897 INFO    ] No camera update needed
[2026-06-22 03:35:15,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:35:15,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:35:15,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:35:15,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:35:17,954.954 INFO    ] ================================================
[2026-06-22 03:35:17,969.969 INFO    ] Launching Daemon at Mon Jun 22 03:35:17 IST 2026
[2026-06-22 03:35:17,980.980 INFO    ] ================================================
[2026-06-22 03:35:18,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:35:18
[2026-06-22 03:35:19,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:35:19,378.378 INFO    ] Initializing speech engine...
[2026-06-22 03:35:19,389.389 INFO    ] 2026-06-22 03:35:19
[2026-06-22 03:35:19,684.684 INFO    ] 2026-06-22 03:35:19
[2026-06-22 03:35:19,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:35:19,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:35:19,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:35:20,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:35:20,109.109 INFO    ] time= 22/06/2026 03:35:20
[2026-06-22 03:35:20,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:35:20,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:35:20,281.281 INFO    ] No existing commands found in stream
[2026-06-22 03:35:25,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:35:25,298.298 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-22 03:35:26,352.352 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:35:26,355.355 INFO    ] Checking for system updates...
[2026-06-22 03:35:26,393.393 INFO    ] 200
[2026-06-22 03:35:26,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:35:26,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:35:26,460.460 INFO    ] No update needed
[2026-06-22 03:35:26,463.463 INFO    ] Checking for camera pi updates...
[2026-06-22 03:35:26,498.498 INFO    ] 200
[2026-06-22 03:35:26,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:35:26,542.542 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:35:26,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:35:26,628.628 INFO    ] No camera update needed
[2026-06-22 03:35:26,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:35:26,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:35:26,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:35:26,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:35:28,687.687 INFO    ] ================================================
[2026-06-22 03:35:28,703.703 INFO    ] Launching Daemon at Mon Jun 22 03:35:28 IST 2026
[2026-06-22 03:35:28,714.714 INFO    ] ================================================
[2026-06-22 03:35:29,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:35:29
[2026-06-22 03:35:29,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:35:30,057.057 INFO    ] Initializing speech engine...
[2026-06-22 03:35:30,064.064 INFO    ] 2026-06-22 03:35:30
[2026-06-22 03:35:30,342.342 INFO    ] 2026-06-22 03:35:30
[2026-06-22 03:35:30,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:35:30,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:35:30,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:35:30,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:35:30,728.728 INFO    ] time= 22/06/2026 03:35:30
[2026-06-22 03:35:30,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:35:30,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:35:30,804.804 INFO    ] No existing commands found in stream
[2026-06-22 03:35:35,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:35:35,819.819 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-22 03:35:39,126.126 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:35:39,129.129 INFO    ] Checking for system updates...
[2026-06-22 03:35:39,167.167 INFO    ] 200
[2026-06-22 03:35:39,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:35:39,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:35:39,226.226 INFO    ] No update needed
[2026-06-22 03:35:39,228.228 INFO    ] Checking for camera pi updates...
[2026-06-22 03:35:39,262.262 INFO    ] 200
[2026-06-22 03:35:39,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:35:39,309.309 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:35:39,383.383 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:35:39,386.386 INFO    ] No camera update needed
[2026-06-22 03:35:39,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:35:39,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:35:39,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:35:39,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:35:41,442.442 INFO    ] ================================================
[2026-06-22 03:35:41,457.457 INFO    ] Launching Daemon at Mon Jun 22 03:35:41 IST 2026
[2026-06-22 03:35:41,468.468 INFO    ] ================================================
[2026-06-22 03:35:42,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:35:42
[2026-06-22 03:35:42,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:35:42,955.955 INFO    ] Initializing speech engine...
[2026-06-22 03:35:42,962.962 INFO    ] 2026-06-22 03:35:42
[2026-06-22 03:35:43,222.222 INFO    ] 2026-06-22 03:35:43
[2026-06-22 03:35:43,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:35:43,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:35:43,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:35:43,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:35:43,645.645 INFO    ] time= 22/06/2026 03:35:43
[2026-06-22 03:35:43,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:35:43,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:35:43,825.825 INFO    ] No existing commands found in stream
[2026-06-22 03:35:48,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:35:48,840.840 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-22 03:35:50,759.759 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:35:50,761.761 INFO    ] Checking for system updates...
[2026-06-22 03:35:50,797.797 INFO    ] 200
[2026-06-22 03:35:50,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:35:50,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:35:50,861.861 INFO    ] No update needed
[2026-06-22 03:35:50,864.864 INFO    ] Checking for camera pi updates...
[2026-06-22 03:35:50,902.902 INFO    ] 200
[2026-06-22 03:35:50,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:35:50,950.950 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:35:51,026.026 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:35:51,029.029 INFO    ] No camera update needed
[2026-06-22 03:35:51,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:35:51,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:35:51,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:35:51,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:35:53,088.088 INFO    ] ================================================
[2026-06-22 03:35:53,104.104 INFO    ] Launching Daemon at Mon Jun 22 03:35:53 IST 2026
[2026-06-22 03:35:53,115.115 INFO    ] ================================================
[2026-06-22 03:35:53,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:35:53
[2026-06-22 03:35:54,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:35:54,674.674 INFO    ] Initializing speech engine...
[2026-06-22 03:35:54,683.683 INFO    ] 2026-06-22 03:35:54
[2026-06-22 03:35:54,988.988 INFO    ] 2026-06-22 03:35:54
[2026-06-22 03:35:55,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:35:55,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:35:55,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:35:55,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:35:55,456.456 INFO    ] time= 22/06/2026 03:35:55
[2026-06-22 03:35:55,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:35:55,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:35:55,611.611 INFO    ] No existing commands found in stream
[2026-06-22 03:36:00,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:36:00,627.627 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-22 03:36:03,265.265 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:36:03,268.268 INFO    ] Checking for system updates...
[2026-06-22 03:36:03,303.303 INFO    ] 200
[2026-06-22 03:36:03,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:36:03,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:36:03,361.361 INFO    ] No update needed
[2026-06-22 03:36:03,364.364 INFO    ] Checking for camera pi updates...
[2026-06-22 03:36:03,401.401 INFO    ] 200
[2026-06-22 03:36:03,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:36:03,445.445 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:36:03,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:36:03,530.530 INFO    ] No camera update needed
[2026-06-22 03:36:03,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:36:03,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:36:03,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:36:03,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:36:05,585.585 INFO    ] ================================================
[2026-06-22 03:36:05,600.600 INFO    ] Launching Daemon at Mon Jun 22 03:36:05 IST 2026
[2026-06-22 03:36:05,611.611 INFO    ] ================================================
[2026-06-22 03:36:06,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:36:06
[2026-06-22 03:36:06,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:36:07,172.172 INFO    ] Initializing speech engine...
[2026-06-22 03:36:07,184.184 INFO    ] 2026-06-22 03:36:07
[2026-06-22 03:36:07,460.460 INFO    ] 2026-06-22 03:36:07
[2026-06-22 03:36:07,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:36:07,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:36:07,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:36:07,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:36:07,928.928 INFO    ] time= 22/06/2026 03:36:07
[2026-06-22 03:36:07,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:36:08,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:36:08,071.071 INFO    ] No existing commands found in stream
[2026-06-22 03:36:13,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:36:13,087.087 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-22 03:36:15,446.446 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:36:15,449.449 INFO    ] Checking for system updates...
[2026-06-22 03:36:15,490.490 INFO    ] 200
[2026-06-22 03:36:15,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:36:15,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:36:15,574.574 INFO    ] No update needed
[2026-06-22 03:36:15,577.577 INFO    ] Checking for camera pi updates...
[2026-06-22 03:36:15,618.618 INFO    ] 200
[2026-06-22 03:36:15,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:36:15,675.675 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:36:15,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:36:15,760.760 INFO    ] No camera update needed
[2026-06-22 03:36:15,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:36:15,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:36:15,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:36:15,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:36:17,819.819 INFO    ] ================================================
[2026-06-22 03:36:17,835.835 INFO    ] Launching Daemon at Mon Jun 22 03:36:17 IST 2026
[2026-06-22 03:36:17,845.845 INFO    ] ================================================
[2026-06-22 03:36:18,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:36:18
[2026-06-22 03:36:18,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:36:19,170.170 INFO    ] Initializing speech engine...
[2026-06-22 03:36:19,195.195 INFO    ] 2026-06-22 03:36:19
[2026-06-22 03:36:19,473.473 INFO    ] 2026-06-22 03:36:19
[2026-06-22 03:36:19,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:36:19,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:36:19,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:36:19,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:36:19,831.831 INFO    ] time= 22/06/2026 03:36:19
[2026-06-22 03:36:19,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:36:19,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:36:19,911.911 INFO    ] No existing commands found in stream
[2026-06-22 03:36:24,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:36:24,925.925 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-22 03:36:26,230.230 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:36:26,231.231 INFO    ] Checking for system updates...
[2026-06-22 03:36:26,253.253 INFO    ] 200
[2026-06-22 03:36:26,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:36:26,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:36:26,303.303 INFO    ] No update needed
[2026-06-22 03:36:26,306.306 INFO    ] Checking for camera pi updates...
[2026-06-22 03:36:26,349.349 INFO    ] 200
[2026-06-22 03:36:26,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:36:26,397.397 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:36:26,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:36:26,485.485 INFO    ] No camera update needed
[2026-06-22 03:36:26,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:36:26,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:36:26,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:36:26,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:36:28,543.543 INFO    ] ================================================
[2026-06-22 03:36:28,558.558 INFO    ] Launching Daemon at Mon Jun 22 03:36:28 IST 2026
[2026-06-22 03:36:28,568.568 INFO    ] ================================================
[2026-06-22 03:36:29,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:36:29
[2026-06-22 03:36:29,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:36:29,956.956 INFO    ] Initializing speech engine...
[2026-06-22 03:36:29,965.965 INFO    ] 2026-06-22 03:36:29
[2026-06-22 03:36:30,211.211 INFO    ] 2026-06-22 03:36:30
[2026-06-22 03:36:30,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:36:30,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:36:30,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:36:30,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:36:30,573.573 INFO    ] time= 22/06/2026 03:36:30
[2026-06-22 03:36:30,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:36:30,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:36:30,652.652 INFO    ] No existing commands found in stream
[2026-06-22 03:36:35,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:36:35,668.668 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-22 03:36:36,790.790 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:36:36,791.791 INFO    ] Checking for system updates...
[2026-06-22 03:36:36,812.812 INFO    ] 200
[2026-06-22 03:36:36,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:36:36,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:36:36,846.846 INFO    ] No update needed
[2026-06-22 03:36:36,847.847 INFO    ] Checking for camera pi updates...
[2026-06-22 03:36:36,870.870 INFO    ] 200
[2026-06-22 03:36:36,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:36:36,918.918 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:36:36,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:36:36,999.999 INFO    ] No camera update needed
[2026-06-22 03:36:37,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:36:37,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:36:37,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:36:37,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:36:39,054.054 INFO    ] ================================================
[2026-06-22 03:36:39,069.069 INFO    ] Launching Daemon at Mon Jun 22 03:36:39 IST 2026
[2026-06-22 03:36:39,080.080 INFO    ] ================================================
[2026-06-22 03:36:39,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:36:39
[2026-06-22 03:36:40,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:36:40,499.499 INFO    ] Initializing speech engine...
[2026-06-22 03:36:40,508.508 INFO    ] 2026-06-22 03:36:40
[2026-06-22 03:36:40,754.754 INFO    ] 2026-06-22 03:36:40
[2026-06-22 03:36:40,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:36:40,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:36:41,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:36:41,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:36:41,126.126 INFO    ] time= 22/06/2026 03:36:41
[2026-06-22 03:36:41,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:36:41,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:36:41,306.306 INFO    ] No existing commands found in stream
[2026-06-22 03:36:46,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:36:46,332.332 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-22 03:36:47,586.586 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:36:47,589.589 INFO    ] Checking for system updates...
[2026-06-22 03:36:47,625.625 INFO    ] 200
[2026-06-22 03:36:47,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:36:47,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:36:47,686.686 INFO    ] No update needed
[2026-06-22 03:36:47,688.688 INFO    ] Checking for camera pi updates...
[2026-06-22 03:36:47,723.723 INFO    ] 200
[2026-06-22 03:36:47,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:36:47,768.768 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:36:47,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:36:47,848.848 INFO    ] No camera update needed
[2026-06-22 03:36:47,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:36:47,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:36:47,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:36:47,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:36:49,907.907 INFO    ] ================================================
[2026-06-22 03:36:49,922.922 INFO    ] Launching Daemon at Mon Jun 22 03:36:49 IST 2026
[2026-06-22 03:36:49,933.933 INFO    ] ================================================
[2026-06-22 03:36:50,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:36:50
[2026-06-22 03:36:51,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:36:51,415.415 INFO    ] Initializing speech engine...
[2026-06-22 03:36:51,424.424 INFO    ] 2026-06-22 03:36:51
[2026-06-22 03:36:51,716.716 INFO    ] 2026-06-22 03:36:51
[2026-06-22 03:36:51,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:36:51,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:36:51,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:36:52,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:36:52,099.099 INFO    ] time= 22/06/2026 03:36:52
[2026-06-22 03:36:52,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:36:52,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:36:52,177.177 INFO    ] No existing commands found in stream
[2026-06-22 03:36:57,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:36:57,195.195 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-22 03:37:00,380.380 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:37:00,383.383 INFO    ] Checking for system updates...
[2026-06-22 03:37:00,424.424 INFO    ] 200
[2026-06-22 03:37:00,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:37:00,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:37:00,488.488 INFO    ] No update needed
[2026-06-22 03:37:00,491.491 INFO    ] Checking for camera pi updates...
[2026-06-22 03:37:00,528.528 INFO    ] 200
[2026-06-22 03:37:00,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:37:00,583.583 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:37:00,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:37:00,737.737 INFO    ] No camera update needed
[2026-06-22 03:37:00,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:37:00,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:37:00,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:37:00,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:37:02,797.797 INFO    ] ================================================
[2026-06-22 03:37:02,813.813 INFO    ] Launching Daemon at Mon Jun 22 03:37:02 IST 2026
[2026-06-22 03:37:02,824.824 INFO    ] ================================================
[2026-06-22 03:37:03,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:37:03
[2026-06-22 03:37:03,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:37:04,245.245 INFO    ] Initializing speech engine...
[2026-06-22 03:37:04,260.260 INFO    ] 2026-06-22 03:37:04
[2026-06-22 03:37:04,526.526 INFO    ] 2026-06-22 03:37:04
[2026-06-22 03:37:04,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:37:04,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:37:04,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:37:04,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:37:04,999.999 INFO    ] time= 22/06/2026 03:37:04
[2026-06-22 03:37:05,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:37:05,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:37:05,125.125 INFO    ] No existing commands found in stream
[2026-06-22 03:37:10,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:37:10,144.144 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-22 03:37:12,222.222 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:37:12,225.225 INFO    ] Checking for system updates...
[2026-06-22 03:37:12,261.261 INFO    ] 200
[2026-06-22 03:37:12,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:37:12,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:37:12,320.320 INFO    ] No update needed
[2026-06-22 03:37:12,322.322 INFO    ] Checking for camera pi updates...
[2026-06-22 03:37:12,359.359 INFO    ] 200
[2026-06-22 03:37:12,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:37:12,406.406 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:37:12,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:37:12,456.456 INFO    ] No camera update needed
[2026-06-22 03:37:12,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:37:12,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:37:12,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:37:12,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:37:14,515.515 INFO    ] ================================================
[2026-06-22 03:37:14,531.531 INFO    ] Launching Daemon at Mon Jun 22 03:37:14 IST 2026
[2026-06-22 03:37:14,542.542 INFO    ] ================================================
[2026-06-22 03:37:15,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:37:15
[2026-06-22 03:37:15,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:37:16,073.073 INFO    ] Initializing speech engine...
[2026-06-22 03:37:16,082.082 INFO    ] 2026-06-22 03:37:16
[2026-06-22 03:37:16,377.377 INFO    ] 2026-06-22 03:37:16
[2026-06-22 03:37:16,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:37:17,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:37:17,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:37:17,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:37:17,521.521 INFO    ] time= 22/06/2026 03:37:17
[2026-06-22 03:37:17,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:37:17,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:37:17,698.698 INFO    ] No existing commands found in stream
[2026-06-22 03:37:22,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:37:22,710.710 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-22 03:37:25,241.241 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:37:25,244.244 INFO    ] Checking for system updates...
[2026-06-22 03:37:25,284.284 INFO    ] 200
[2026-06-22 03:37:25,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:37:25,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:37:25,350.350 INFO    ] No update needed
[2026-06-22 03:37:25,353.353 INFO    ] Checking for camera pi updates...
[2026-06-22 03:37:25,391.391 INFO    ] 200
[2026-06-22 03:37:25,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:37:25,444.444 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:37:25,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:37:25,532.532 INFO    ] No camera update needed
[2026-06-22 03:37:25,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:37:25,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:37:25,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:37:25,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:37:27,590.590 INFO    ] ================================================
[2026-06-22 03:37:27,605.605 INFO    ] Launching Daemon at Mon Jun 22 03:37:27 IST 2026
[2026-06-22 03:37:27,616.616 INFO    ] ================================================
[2026-06-22 03:37:28,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:37:28
[2026-06-22 03:37:28,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:37:29,027.027 INFO    ] Initializing speech engine...
[2026-06-22 03:37:29,050.050 INFO    ] 2026-06-22 03:37:29
[2026-06-22 03:37:29,305.305 INFO    ] 2026-06-22 03:37:29
[2026-06-22 03:37:29,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:37:29,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:37:29,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:37:29,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:37:29,681.681 INFO    ] time= 22/06/2026 03:37:29
[2026-06-22 03:37:29,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:37:29,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:37:29,845.845 INFO    ] No existing commands found in stream
[2026-06-22 03:37:34,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:37:34,873.873 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-22 03:37:36,804.804 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:37:36,806.806 INFO    ] Checking for system updates...
[2026-06-22 03:37:36,843.843 INFO    ] 200
[2026-06-22 03:37:36,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:37:36,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:37:36,901.901 INFO    ] No update needed
[2026-06-22 03:37:36,903.903 INFO    ] Checking for camera pi updates...
[2026-06-22 03:37:36,940.940 INFO    ] 200
[2026-06-22 03:37:36,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:37:36,988.988 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:37:37,084.084 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:37:37,087.087 INFO    ] No camera update needed
[2026-06-22 03:37:37,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:37:37,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:37:37,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:37:37,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:37:39,144.144 INFO    ] ================================================
[2026-06-22 03:37:39,163.163 INFO    ] Launching Daemon at Mon Jun 22 03:37:39 IST 2026
[2026-06-22 03:37:39,174.174 INFO    ] ================================================
[2026-06-22 03:37:39,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:37:39
[2026-06-22 03:37:40,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:37:40,527.527 INFO    ] Initializing speech engine...
[2026-06-22 03:37:40,533.533 INFO    ] 2026-06-22 03:37:40
[2026-06-22 03:37:40,790.790 INFO    ] 2026-06-22 03:37:40
[2026-06-22 03:37:40,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:37:41,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:37:41,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:37:41,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:37:41,503.503 INFO    ] time= 22/06/2026 03:37:41
[2026-06-22 03:37:41,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:37:41,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:37:41,703.703 INFO    ] No existing commands found in stream
[2026-06-22 03:37:46,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:37:46,731.731 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-22 03:37:50,815.815 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:37:50,816.816 INFO    ] Checking for system updates...
[2026-06-22 03:37:50,837.837 INFO    ] 200
[2026-06-22 03:37:50,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:37:50,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:37:50,869.869 INFO    ] No update needed
[2026-06-22 03:37:50,871.871 INFO    ] Checking for camera pi updates...
[2026-06-22 03:37:50,890.890 INFO    ] 200
[2026-06-22 03:37:50,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:37:50,916.916 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:37:50,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:37:50,972.972 INFO    ] No camera update needed
[2026-06-22 03:37:50,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:37:50,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:37:50,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:37:50,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:37:53,027.027 INFO    ] ================================================
[2026-06-22 03:37:53,041.041 INFO    ] Launching Daemon at Mon Jun 22 03:37:53 IST 2026
[2026-06-22 03:37:53,052.052 INFO    ] ================================================
[2026-06-22 03:37:53,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:37:53
[2026-06-22 03:37:54,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:37:54,574.574 INFO    ] Initializing speech engine...
[2026-06-22 03:37:54,588.588 INFO    ] 2026-06-22 03:37:54
[2026-06-22 03:37:54,865.865 INFO    ] 2026-06-22 03:37:54
[2026-06-22 03:37:54,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:37:55,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:37:55,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:37:55,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:37:55,318.318 INFO    ] time= 22/06/2026 03:37:55
[2026-06-22 03:37:55,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:37:55,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:37:55,527.527 INFO    ] No existing commands found in stream
[2026-06-22 03:38:00,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:38:00,561.561 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-22 03:38:02,881.881 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:38:02,884.884 INFO    ] Checking for system updates...
[2026-06-22 03:38:02,921.921 INFO    ] 200
[2026-06-22 03:38:02,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:38:02,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:38:02,980.980 INFO    ] No update needed
[2026-06-22 03:38:02,983.983 INFO    ] Checking for camera pi updates...
[2026-06-22 03:38:03,017.017 INFO    ] 200
[2026-06-22 03:38:03,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:38:03,063.063 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:38:03,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:38:03,120.120 INFO    ] No camera update needed
[2026-06-22 03:38:03,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:38:03,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:38:03,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:38:03,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:38:05,179.179 INFO    ] ================================================
[2026-06-22 03:38:05,194.194 INFO    ] Launching Daemon at Mon Jun 22 03:38:05 IST 2026
[2026-06-22 03:38:05,205.205 INFO    ] ================================================
[2026-06-22 03:38:05,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:38:05
[2026-06-22 03:38:06,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:38:06,622.622 INFO    ] Initializing speech engine...
[2026-06-22 03:38:06,635.635 INFO    ] 2026-06-22 03:38:06
[2026-06-22 03:38:06,947.947 INFO    ] 2026-06-22 03:38:06
[2026-06-22 03:38:07,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:38:07,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:38:07,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:38:07,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:38:07,396.396 INFO    ] time= 22/06/2026 03:38:07
[2026-06-22 03:38:07,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:38:07,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:38:07,604.604 INFO    ] No existing commands found in stream
[2026-06-22 03:38:12,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:38:12,630.630 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-22 03:38:15,587.587 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:38:15,590.590 INFO    ] Checking for system updates...
[2026-06-22 03:38:15,632.632 INFO    ] 200
[2026-06-22 03:38:15,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:38:15,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:38:15,690.690 INFO    ] No update needed
[2026-06-22 03:38:15,692.692 INFO    ] Checking for camera pi updates...
[2026-06-22 03:38:15,726.726 INFO    ] 200
[2026-06-22 03:38:15,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:38:15,769.769 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:38:15,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:38:15,922.922 INFO    ] No camera update needed
[2026-06-22 03:38:15,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:38:15,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:38:15,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:38:15,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:38:17,978.978 INFO    ] ================================================
[2026-06-22 03:38:17,994.994 INFO    ] Launching Daemon at Mon Jun 22 03:38:17 IST 2026
[2026-06-22 03:38:18,005.005 INFO    ] ================================================
[2026-06-22 03:38:18,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:38:18
[2026-06-22 03:38:19,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:38:19,326.326 INFO    ] Initializing speech engine...
[2026-06-22 03:38:19,346.346 INFO    ] 2026-06-22 03:38:19
[2026-06-22 03:38:19,592.592 INFO    ] 2026-06-22 03:38:19
[2026-06-22 03:38:19,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:38:19,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:38:19,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:38:20,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:38:20,084.084 INFO    ] time= 22/06/2026 03:38:20
[2026-06-22 03:38:20,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:38:20,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:38:20,227.227 INFO    ] No existing commands found in stream
[2026-06-22 03:38:25,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:38:25,241.241 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-22 03:38:28,796.796 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:38:28,797.797 INFO    ] Checking for system updates...
[2026-06-22 03:38:28,819.819 INFO    ] 200
[2026-06-22 03:38:28,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:38:28,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:38:28,852.852 INFO    ] No update needed
[2026-06-22 03:38:28,854.854 INFO    ] Checking for camera pi updates...
[2026-06-22 03:38:28,892.892 INFO    ] 200
[2026-06-22 03:38:28,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:38:28,935.935 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:38:29,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:38:29,028.028 INFO    ] No camera update needed
[2026-06-22 03:38:29,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:38:29,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:38:29,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:38:29,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:38:31,085.085 INFO    ] ================================================
[2026-06-22 03:38:31,100.100 INFO    ] Launching Daemon at Mon Jun 22 03:38:31 IST 2026
[2026-06-22 03:38:31,110.110 INFO    ] ================================================
[2026-06-22 03:38:31,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:38:31
[2026-06-22 03:38:32,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:38:32,633.633 INFO    ] Initializing speech engine...
[2026-06-22 03:38:32,652.652 INFO    ] 2026-06-22 03:38:32
[2026-06-22 03:38:32,950.950 INFO    ] 2026-06-22 03:38:32
[2026-06-22 03:38:32,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:38:33,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:38:33,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:38:33,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:38:33,338.338 INFO    ] time= 22/06/2026 03:38:33
[2026-06-22 03:38:33,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:38:33,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:38:33,465.465 INFO    ] No existing commands found in stream
[2026-06-22 03:38:38,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:38:38,480.480 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-22 03:38:39,380.380 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:38:39,382.382 INFO    ] Checking for system updates...
[2026-06-22 03:38:39,419.419 INFO    ] 200
[2026-06-22 03:38:39,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:38:39,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:38:39,476.476 INFO    ] No update needed
[2026-06-22 03:38:39,479.479 INFO    ] Checking for camera pi updates...
[2026-06-22 03:38:39,512.512 INFO    ] 200
[2026-06-22 03:38:39,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:38:39,556.556 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:38:39,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:38:39,637.637 INFO    ] No camera update needed
[2026-06-22 03:38:39,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:38:39,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:38:39,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:38:39,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:38:41,693.693 INFO    ] ================================================
[2026-06-22 03:38:41,709.709 INFO    ] Launching Daemon at Mon Jun 22 03:38:41 IST 2026
[2026-06-22 03:38:41,720.720 INFO    ] ================================================
[2026-06-22 03:38:42,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:38:42
[2026-06-22 03:38:43,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:38:43,335.335 INFO    ] Initializing speech engine...
[2026-06-22 03:38:43,348.348 INFO    ] 2026-06-22 03:38:43
[2026-06-22 03:38:43,633.633 INFO    ] 2026-06-22 03:38:43
[2026-06-22 03:38:43,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:38:43,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:38:43,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:38:44,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:38:44,099.099 INFO    ] time= 22/06/2026 03:38:44
[2026-06-22 03:38:44,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:38:44,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:38:44,313.313 INFO    ] No existing commands found in stream
[2026-06-22 03:38:49,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:38:49,342.342 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-22 03:38:53,069.069 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:38:53,071.071 INFO    ] Checking for system updates...
[2026-06-22 03:38:53,094.094 INFO    ] 200
[2026-06-22 03:38:53,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:38:53,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:38:53,133.133 INFO    ] No update needed
[2026-06-22 03:38:53,134.134 INFO    ] Checking for camera pi updates...
[2026-06-22 03:38:53,158.158 INFO    ] 200
[2026-06-22 03:38:53,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:38:53,186.186 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:38:53,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:38:53,262.262 INFO    ] No camera update needed
[2026-06-22 03:38:53,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:38:53,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:38:53,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:38:53,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:38:55,318.318 INFO    ] ================================================
[2026-06-22 03:38:55,334.334 INFO    ] Launching Daemon at Mon Jun 22 03:38:55 IST 2026
[2026-06-22 03:38:55,347.347 INFO    ] ================================================
[2026-06-22 03:38:55,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:38:55
[2026-06-22 03:38:56,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:38:56,685.685 INFO    ] Initializing speech engine...
[2026-06-22 03:38:56,694.694 INFO    ] 2026-06-22 03:38:56
[2026-06-22 03:38:56,942.942 INFO    ] 2026-06-22 03:38:56
[2026-06-22 03:38:56,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:38:57,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:38:57,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:38:57,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:38:57,415.415 INFO    ] time= 22/06/2026 03:38:57
[2026-06-22 03:38:57,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:38:57,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:38:57,559.559 INFO    ] No existing commands found in stream
[2026-06-22 03:39:02,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:39:02,575.575 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-22 03:39:05,121.121 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:39:05,123.123 INFO    ] Checking for system updates...
[2026-06-22 03:39:05,159.159 INFO    ] 200
[2026-06-22 03:39:05,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:39:05,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:39:05,235.235 INFO    ] No update needed
[2026-06-22 03:39:05,238.238 INFO    ] Checking for camera pi updates...
[2026-06-22 03:39:05,277.277 INFO    ] 200
[2026-06-22 03:39:05,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:39:05,321.321 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:39:05,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:39:05,483.483 INFO    ] No camera update needed
[2026-06-22 03:39:05,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:39:05,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:39:05,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:39:05,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:39:07,538.538 INFO    ] ================================================
[2026-06-22 03:39:07,553.553 INFO    ] Launching Daemon at Mon Jun 22 03:39:07 IST 2026
[2026-06-22 03:39:07,564.564 INFO    ] ================================================
[2026-06-22 03:39:08,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:39:08
[2026-06-22 03:39:08,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:39:08,866.866 INFO    ] Initializing speech engine...
[2026-06-22 03:39:08,874.874 INFO    ] 2026-06-22 03:39:08
[2026-06-22 03:39:09,142.142 INFO    ] 2026-06-22 03:39:09
[2026-06-22 03:39:09,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:39:09,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:39:09,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:39:09,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:39:09,632.632 INFO    ] time= 22/06/2026 03:39:09
[2026-06-22 03:39:09,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:39:09,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:39:09,771.771 INFO    ] No existing commands found in stream
[2026-06-22 03:39:14,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:39:14,787.787 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-22 03:39:15,986.986 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:39:15,989.989 INFO    ] Checking for system updates...
[2026-06-22 03:39:16,026.026 INFO    ] 200
[2026-06-22 03:39:16,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:39:16,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:39:16,089.089 INFO    ] No update needed
[2026-06-22 03:39:16,091.091 INFO    ] Checking for camera pi updates...
[2026-06-22 03:39:16,128.128 INFO    ] 200
[2026-06-22 03:39:16,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:39:16,171.171 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:39:16,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:39:16,269.269 INFO    ] No camera update needed
[2026-06-22 03:39:16,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:39:16,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:39:16,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:39:16,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:39:18,324.324 INFO    ] ================================================
[2026-06-22 03:39:18,339.339 INFO    ] Launching Daemon at Mon Jun 22 03:39:18 IST 2026
[2026-06-22 03:39:18,350.350 INFO    ] ================================================
[2026-06-22 03:39:18,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:39:18
[2026-06-22 03:39:19,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:39:19,765.765 INFO    ] Initializing speech engine...
[2026-06-22 03:39:19,775.775 INFO    ] 2026-06-22 03:39:19
[2026-06-22 03:39:20,022.022 INFO    ] 2026-06-22 03:39:20
[2026-06-22 03:39:20,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:39:20,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:39:20,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:39:20,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:39:20,391.391 INFO    ] time= 22/06/2026 03:39:20
[2026-06-22 03:39:20,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:39:20,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:39:20,555.555 INFO    ] No existing commands found in stream
[2026-06-22 03:39:25,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:39:25,588.588 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-22 03:39:29,765.765 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:39:29,767.767 INFO    ] Checking for system updates...
[2026-06-22 03:39:29,803.803 INFO    ] 200
[2026-06-22 03:39:29,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:39:29,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:39:29,862.862 INFO    ] No update needed
[2026-06-22 03:39:29,865.865 INFO    ] Checking for camera pi updates...
[2026-06-22 03:39:29,906.906 INFO    ] 200
[2026-06-22 03:39:29,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:39:29,952.952 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:39:30,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:39:30,045.045 INFO    ] No camera update needed
[2026-06-22 03:39:30,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:39:30,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:39:30,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:39:30,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:39:32,102.102 INFO    ] ================================================
[2026-06-22 03:39:32,119.119 INFO    ] Launching Daemon at Mon Jun 22 03:39:32 IST 2026
[2026-06-22 03:39:32,131.131 INFO    ] ================================================
[2026-06-22 03:39:32,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:39:32
[2026-06-22 03:39:33,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:39:33,641.641 INFO    ] Initializing speech engine...
[2026-06-22 03:39:33,648.648 INFO    ] 2026-06-22 03:39:33
[2026-06-22 03:39:33,892.892 INFO    ] 2026-06-22 03:39:33
[2026-06-22 03:39:33,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:39:34,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:39:34,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:39:34,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:39:34,331.331 INFO    ] time= 22/06/2026 03:39:34
[2026-06-22 03:39:34,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:39:34,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:39:34,513.513 INFO    ] No existing commands found in stream
[2026-06-22 03:39:39,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:39:39,528.528 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-22 03:39:41,556.556 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:39:41,559.559 INFO    ] Checking for system updates...
[2026-06-22 03:39:41,595.595 INFO    ] 200
[2026-06-22 03:39:41,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:39:41,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:39:41,652.652 INFO    ] No update needed
[2026-06-22 03:39:41,654.654 INFO    ] Checking for camera pi updates...
[2026-06-22 03:39:41,691.691 INFO    ] 200
[2026-06-22 03:39:41,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:39:41,735.735 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:39:41,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:39:41,784.784 INFO    ] No camera update needed
[2026-06-22 03:39:41,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:39:41,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:39:41,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:39:41,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:39:43,838.838 INFO    ] ================================================
[2026-06-22 03:39:43,853.853 INFO    ] Launching Daemon at Mon Jun 22 03:39:43 IST 2026
[2026-06-22 03:39:43,867.867 INFO    ] ================================================
[2026-06-22 03:39:44,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:39:44
[2026-06-22 03:39:44,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:39:45,231.231 INFO    ] Initializing speech engine...
[2026-06-22 03:39:45,245.245 INFO    ] 2026-06-22 03:39:45
[2026-06-22 03:39:45,504.504 INFO    ] 2026-06-22 03:39:45
[2026-06-22 03:39:45,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:39:45,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:39:45,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:39:45,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:39:45,904.904 INFO    ] time= 22/06/2026 03:39:45
[2026-06-22 03:39:45,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:39:45,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:39:46,031.031 INFO    ] No existing commands found in stream
[2026-06-22 03:39:51,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:39:51,047.047 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-22 03:39:53,773.773 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:39:53,776.776 INFO    ] Checking for system updates...
[2026-06-22 03:39:53,812.812 INFO    ] 200
[2026-06-22 03:39:53,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:39:53,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:39:53,876.876 INFO    ] No update needed
[2026-06-22 03:39:53,879.879 INFO    ] Checking for camera pi updates...
[2026-06-22 03:39:53,917.917 INFO    ] 200
[2026-06-22 03:39:53,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:39:53,965.965 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:39:54,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:39:54,049.049 INFO    ] No camera update needed
[2026-06-22 03:39:54,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:39:54,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:39:54,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:39:54,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:39:56,106.106 INFO    ] ================================================
[2026-06-22 03:39:56,121.121 INFO    ] Launching Daemon at Mon Jun 22 03:39:56 IST 2026
[2026-06-22 03:39:56,131.131 INFO    ] ================================================
[2026-06-22 03:39:56,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:39:56
[2026-06-22 03:39:57,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:39:57,731.731 INFO    ] Initializing speech engine...
[2026-06-22 03:39:57,745.745 INFO    ] 2026-06-22 03:39:57
[2026-06-22 03:39:58,030.030 INFO    ] 2026-06-22 03:39:58
[2026-06-22 03:39:58,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:39:58,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:39:58,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:39:58,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:39:58,522.522 INFO    ] time= 22/06/2026 03:39:58
[2026-06-22 03:39:58,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:39:58,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:39:58,697.697 INFO    ] No existing commands found in stream
[2026-06-22 03:40:03,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:40:03,731.731 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-22 03:40:07,279.279 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:40:07,282.282 INFO    ] Checking for system updates...
[2026-06-22 03:40:07,320.320 INFO    ] 200
[2026-06-22 03:40:07,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:40:07,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:40:07,380.380 INFO    ] No update needed
[2026-06-22 03:40:07,382.382 INFO    ] Checking for camera pi updates...
[2026-06-22 03:40:07,422.422 INFO    ] 200
[2026-06-22 03:40:07,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:40:07,473.473 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:40:07,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:40:07,559.559 INFO    ] No camera update needed
[2026-06-22 03:40:07,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:40:07,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:40:07,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:40:07,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:40:09,620.620 INFO    ] ================================================
[2026-06-22 03:40:09,635.635 INFO    ] Launching Daemon at Mon Jun 22 03:40:09 IST 2026
[2026-06-22 03:40:09,646.646 INFO    ] ================================================
[2026-06-22 03:40:10,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:40:10
[2026-06-22 03:40:10,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:40:11,213.213 INFO    ] Initializing speech engine...
[2026-06-22 03:40:11,221.221 INFO    ] 2026-06-22 03:40:11
[2026-06-22 03:40:11,511.511 INFO    ] 2026-06-22 03:40:11
[2026-06-22 03:40:11,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:40:11,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:40:11,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:40:12,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:40:12,053.053 INFO    ] time= 22/06/2026 03:40:12
[2026-06-22 03:40:12,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:40:12,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:40:12,201.201 INFO    ] No existing commands found in stream
[2026-06-22 03:40:17,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:40:17,226.226 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-22 03:40:18,033.033 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:40:18,036.036 INFO    ] Checking for system updates...
[2026-06-22 03:40:18,073.073 INFO    ] 200
[2026-06-22 03:40:18,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:40:18,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:40:18,142.142 INFO    ] No update needed
[2026-06-22 03:40:18,144.144 INFO    ] Checking for camera pi updates...
[2026-06-22 03:40:18,179.179 INFO    ] 200
[2026-06-22 03:40:18,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:40:18,227.227 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:40:18,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:40:18,308.308 INFO    ] No camera update needed
[2026-06-22 03:40:18,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:40:18,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:40:18,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:40:18,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:40:20,370.370 INFO    ] ================================================
[2026-06-22 03:40:20,385.385 INFO    ] Launching Daemon at Mon Jun 22 03:40:20 IST 2026
[2026-06-22 03:40:20,396.396 INFO    ] ================================================
[2026-06-22 03:40:20,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:40:20
[2026-06-22 03:40:21,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:40:21,826.826 INFO    ] Initializing speech engine...
[2026-06-22 03:40:21,833.833 INFO    ] 2026-06-22 03:40:21
[2026-06-22 03:40:22,131.131 INFO    ] 2026-06-22 03:40:22
[2026-06-22 03:40:22,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:40:22,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:40:22,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:40:22,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:40:22,513.513 INFO    ] time= 22/06/2026 03:40:22
[2026-06-22 03:40:22,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:40:22,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:40:22,644.644 INFO    ] No existing commands found in stream
[2026-06-22 03:40:27,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:40:27,659.659 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-22 03:40:30,221.221 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:40:30,223.223 INFO    ] Checking for system updates...
[2026-06-22 03:40:30,258.258 INFO    ] 200
[2026-06-22 03:40:30,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:40:30,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:40:30,317.317 INFO    ] No update needed
[2026-06-22 03:40:30,320.320 INFO    ] Checking for camera pi updates...
[2026-06-22 03:40:30,354.354 INFO    ] 200
[2026-06-22 03:40:30,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:40:30,402.402 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:40:30,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:40:30,497.497 INFO    ] No camera update needed
[2026-06-22 03:40:30,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:40:30,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:40:30,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:40:30,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:40:32,556.556 INFO    ] ================================================
[2026-06-22 03:40:32,572.572 INFO    ] Launching Daemon at Mon Jun 22 03:40:32 IST 2026
[2026-06-22 03:40:32,586.586 INFO    ] ================================================
[2026-06-22 03:40:33,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:40:33
[2026-06-22 03:40:33,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:40:34,071.071 INFO    ] Initializing speech engine...
[2026-06-22 03:40:34,080.080 INFO    ] 2026-06-22 03:40:34
[2026-06-22 03:40:34,381.381 INFO    ] 2026-06-22 03:40:34
[2026-06-22 03:40:34,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:40:34,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:40:34,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:40:34,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:40:34,771.771 INFO    ] time= 22/06/2026 03:40:34
[2026-06-22 03:40:34,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:40:34,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:40:34,900.900 INFO    ] No existing commands found in stream
[2026-06-22 03:40:39,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:40:39,915.915 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-22 03:40:40,800.800 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:40:40,803.803 INFO    ] Checking for system updates...
[2026-06-22 03:40:40,840.840 INFO    ] 200
[2026-06-22 03:40:40,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:40:40,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:40:40,912.912 INFO    ] No update needed
[2026-06-22 03:40:40,915.915 INFO    ] Checking for camera pi updates...
[2026-06-22 03:40:40,950.950 INFO    ] 200
[2026-06-22 03:40:40,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:40:40,993.993 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:40:41,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:40:41,077.077 INFO    ] No camera update needed
[2026-06-22 03:40:41,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:40:41,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:40:41,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:40:41,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:40:43,135.135 INFO    ] ================================================
[2026-06-22 03:40:43,151.151 INFO    ] Launching Daemon at Mon Jun 22 03:40:43 IST 2026
[2026-06-22 03:40:43,161.161 INFO    ] ================================================
[2026-06-22 03:40:43,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:40:43
[2026-06-22 03:40:44,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:40:44,664.664 INFO    ] Initializing speech engine...
[2026-06-22 03:40:44,669.669 INFO    ] 2026-06-22 03:40:44
[2026-06-22 03:40:44,914.914 INFO    ] 2026-06-22 03:40:44
[2026-06-22 03:40:44,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:40:45,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:40:45,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:40:45,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:40:45,248.248 INFO    ] time= 22/06/2026 03:40:45
[2026-06-22 03:40:45,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:40:45,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:40:45,358.358 INFO    ] No existing commands found in stream
[2026-06-22 03:40:50,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:40:50,373.373 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-22 03:40:53,843.843 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:40:53,845.845 INFO    ] Checking for system updates...
[2026-06-22 03:40:53,867.867 INFO    ] 200
[2026-06-22 03:40:53,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:40:53,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:40:53,903.903 INFO    ] No update needed
[2026-06-22 03:40:53,904.904 INFO    ] Checking for camera pi updates...
[2026-06-22 03:40:53,925.925 INFO    ] 200
[2026-06-22 03:40:53,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:40:53,954.954 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:40:54,052.052 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:40:54,055.055 INFO    ] No camera update needed
[2026-06-22 03:40:54,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:40:54,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:40:54,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:40:54,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:40:56,110.110 INFO    ] ================================================
[2026-06-22 03:40:56,125.125 INFO    ] Launching Daemon at Mon Jun 22 03:40:56 IST 2026
[2026-06-22 03:40:56,136.136 INFO    ] ================================================
[2026-06-22 03:40:56,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:40:56
[2026-06-22 03:40:57,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:40:57,685.685 INFO    ] Initializing speech engine...
[2026-06-22 03:40:57,696.696 INFO    ] 2026-06-22 03:40:57
[2026-06-22 03:40:57,981.981 INFO    ] 2026-06-22 03:40:57
[2026-06-22 03:40:58,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:40:58,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:40:58,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:40:58,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:40:58,441.441 INFO    ] time= 22/06/2026 03:40:58
[2026-06-22 03:40:58,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:40:58,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:40:58,626.626 INFO    ] No existing commands found in stream
[2026-06-22 03:41:03,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:41:03,652.652 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-22 03:41:04,841.841 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:41:04,844.844 INFO    ] Checking for system updates...
[2026-06-22 03:41:04,886.886 INFO    ] 200
[2026-06-22 03:41:04,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:41:04,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:41:04,950.950 INFO    ] No update needed
[2026-06-22 03:41:04,953.953 INFO    ] Checking for camera pi updates...
[2026-06-22 03:41:04,988.988 INFO    ] 200
[2026-06-22 03:41:04,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:41:05,037.037 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:41:05,114.114 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:41:05,117.117 INFO    ] No camera update needed
[2026-06-22 03:41:05,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:41:05,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:41:05,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:41:05,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:41:07,175.175 INFO    ] ================================================
[2026-06-22 03:41:07,191.191 INFO    ] Launching Daemon at Mon Jun 22 03:41:07 IST 2026
[2026-06-22 03:41:07,202.202 INFO    ] ================================================
[2026-06-22 03:41:07,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:41:07
[2026-06-22 03:41:08,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:41:08,641.641 INFO    ] Initializing speech engine...
[2026-06-22 03:41:08,650.650 INFO    ] 2026-06-22 03:41:08
[2026-06-22 03:41:08,944.944 INFO    ] 2026-06-22 03:41:08
[2026-06-22 03:41:08,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:41:09,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:41:09,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:41:09,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:41:09,319.319 INFO    ] time= 22/06/2026 03:41:09
[2026-06-22 03:41:09,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:41:09,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:41:09,432.432 INFO    ] No existing commands found in stream
[2026-06-22 03:41:14,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:41:14,447.447 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-22 03:41:17,446.446 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:41:17,448.448 INFO    ] Checking for system updates...
[2026-06-22 03:41:17,479.479 INFO    ] 200
[2026-06-22 03:41:17,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:41:17,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:41:17,537.537 INFO    ] No update needed
[2026-06-22 03:41:17,539.539 INFO    ] Checking for camera pi updates...
[2026-06-22 03:41:17,577.577 INFO    ] 200
[2026-06-22 03:41:17,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:41:17,620.620 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:41:17,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:41:17,774.774 INFO    ] No camera update needed
[2026-06-22 03:41:17,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:41:17,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:41:17,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:41:17,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:41:19,830.830 INFO    ] ================================================
[2026-06-22 03:41:19,846.846 INFO    ] Launching Daemon at Mon Jun 22 03:41:19 IST 2026
[2026-06-22 03:41:19,856.856 INFO    ] ================================================
[2026-06-22 03:41:20,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:41:20
[2026-06-22 03:41:20,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:41:21,208.208 INFO    ] Initializing speech engine...
[2026-06-22 03:41:21,216.216 INFO    ] 2026-06-22 03:41:21
[2026-06-22 03:41:21,489.489 INFO    ] 2026-06-22 03:41:21
[2026-06-22 03:41:21,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:41:21,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:41:21,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:41:21,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:41:21,856.856 INFO    ] time= 22/06/2026 03:41:21
[2026-06-22 03:41:21,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:41:21,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:41:22,037.037 INFO    ] No existing commands found in stream
[2026-06-22 03:41:27,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:41:27,070.070 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-22 03:41:27,579.579 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:41:27,581.581 INFO    ] Checking for system updates...
[2026-06-22 03:41:27,603.603 INFO    ] 200
[2026-06-22 03:41:27,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:41:27,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:41:27,638.638 INFO    ] No update needed
[2026-06-22 03:41:27,639.639 INFO    ] Checking for camera pi updates...
[2026-06-22 03:41:27,672.672 INFO    ] 200
[2026-06-22 03:41:27,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:41:27,716.716 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:41:27,803.803 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:41:27,806.806 INFO    ] No camera update needed
[2026-06-22 03:41:27,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:41:27,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:41:27,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:41:27,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:41:29,861.861 INFO    ] ================================================
[2026-06-22 03:41:29,876.876 INFO    ] Launching Daemon at Mon Jun 22 03:41:29 IST 2026
[2026-06-22 03:41:29,887.887 INFO    ] ================================================
[2026-06-22 03:41:30,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:41:30
[2026-06-22 03:41:30,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:41:31,274.274 INFO    ] Initializing speech engine...
[2026-06-22 03:41:31,285.285 INFO    ] 2026-06-22 03:41:31
[2026-06-22 03:41:31,594.594 INFO    ] 2026-06-22 03:41:31
[2026-06-22 03:41:31,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:41:31,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:41:31,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:41:32,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:41:32,117.117 INFO    ] time= 22/06/2026 03:41:32
[2026-06-22 03:41:32,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:41:32,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:41:32,336.336 INFO    ] No existing commands found in stream
[2026-06-22 03:41:37,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:41:37,366.366 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-22 03:41:40,077.077 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:41:40,078.078 INFO    ] Checking for system updates...
[2026-06-22 03:41:40,099.099 INFO    ] 200
[2026-06-22 03:41:40,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:41:40,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:41:40,135.135 INFO    ] No update needed
[2026-06-22 03:41:40,136.136 INFO    ] Checking for camera pi updates...
[2026-06-22 03:41:40,159.159 INFO    ] 200
[2026-06-22 03:41:40,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:41:40,203.203 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:41:40,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:41:40,255.255 INFO    ] No camera update needed
[2026-06-22 03:41:40,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:41:40,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:41:40,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:41:40,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:41:42,315.315 INFO    ] ================================================
[2026-06-22 03:41:42,330.330 INFO    ] Launching Daemon at Mon Jun 22 03:41:42 IST 2026
[2026-06-22 03:41:42,340.340 INFO    ] ================================================
[2026-06-22 03:41:43,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:41:43
[2026-06-22 03:41:43,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:41:43,892.892 INFO    ] Initializing speech engine...
[2026-06-22 03:41:43,907.907 INFO    ] 2026-06-22 03:41:43
[2026-06-22 03:41:44,202.202 INFO    ] 2026-06-22 03:41:44
[2026-06-22 03:41:44,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:41:44,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:41:44,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:41:44,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:41:44,572.572 INFO    ] time= 22/06/2026 03:41:44
[2026-06-22 03:41:44,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:41:44,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:41:44,676.676 INFO    ] No existing commands found in stream
[2026-06-22 03:41:49,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:41:49,694.694 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-22 03:41:52,846.846 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:41:52,848.848 INFO    ] Checking for system updates...
[2026-06-22 03:41:52,884.884 INFO    ] 200
[2026-06-22 03:41:52,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:41:52,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:41:52,942.942 INFO    ] No update needed
[2026-06-22 03:41:52,945.945 INFO    ] Checking for camera pi updates...
[2026-06-22 03:41:52,979.979 INFO    ] 200
[2026-06-22 03:41:52,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:41:53,028.028 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:41:53,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:41:53,125.125 INFO    ] No camera update needed
[2026-06-22 03:41:53,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:41:53,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:41:53,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:41:53,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:41:55,179.179 INFO    ] ================================================
[2026-06-22 03:41:55,195.195 INFO    ] Launching Daemon at Mon Jun 22 03:41:55 IST 2026
[2026-06-22 03:41:55,206.206 INFO    ] ================================================
[2026-06-22 03:41:55,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:41:55
[2026-06-22 03:41:56,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:41:56,656.656 INFO    ] Initializing speech engine...
[2026-06-22 03:41:56,662.662 INFO    ] 2026-06-22 03:41:56
[2026-06-22 03:41:56,938.938 INFO    ] 2026-06-22 03:41:56
[2026-06-22 03:41:56,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:41:57,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:41:57,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:41:57,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:41:57,316.316 INFO    ] time= 22/06/2026 03:41:57
[2026-06-22 03:41:57,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:41:57,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:41:57,471.471 INFO    ] No existing commands found in stream
[2026-06-22 03:42:02,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:42:02,499.499 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-22 03:42:04,169.169 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:42:04,172.172 INFO    ] Checking for system updates...
[2026-06-22 03:42:04,213.213 INFO    ] 200
[2026-06-22 03:42:04,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:42:04,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:42:04,278.278 INFO    ] No update needed
[2026-06-22 03:42:04,280.280 INFO    ] Checking for camera pi updates...
[2026-06-22 03:42:04,318.318 INFO    ] 200
[2026-06-22 03:42:04,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:42:04,366.366 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:42:04,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:42:04,468.468 INFO    ] No camera update needed
[2026-06-22 03:42:04,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:42:04,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:42:04,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:42:04,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:42:06,523.523 INFO    ] ================================================
[2026-06-22 03:42:06,539.539 INFO    ] Launching Daemon at Mon Jun 22 03:42:06 IST 2026
[2026-06-22 03:42:06,550.550 INFO    ] ================================================
[2026-06-22 03:42:07,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:42:07
[2026-06-22 03:42:07,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:42:08,260.260 INFO    ] Initializing speech engine...
[2026-06-22 03:42:08,270.270 INFO    ] 2026-06-22 03:42:08
[2026-06-22 03:42:08,544.544 INFO    ] 2026-06-22 03:42:08
[2026-06-22 03:42:08,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:42:08,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:42:08,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:42:08,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:42:09,015.015 INFO    ] time= 22/06/2026 03:42:08
[2026-06-22 03:42:09,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:42:09,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:42:09,166.166 INFO    ] No existing commands found in stream
[2026-06-22 03:42:14,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:42:14,183.183 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-22 03:42:17,902.902 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:42:17,905.905 INFO    ] Checking for system updates...
[2026-06-22 03:42:17,942.942 INFO    ] 200
[2026-06-22 03:42:17,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:42:18,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:42:18,023.023 INFO    ] No update needed
[2026-06-22 03:42:18,027.027 INFO    ] Checking for camera pi updates...
[2026-06-22 03:42:18,063.063 INFO    ] 200
[2026-06-22 03:42:18,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:42:18,110.110 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:42:18,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:42:18,190.190 INFO    ] No camera update needed
[2026-06-22 03:42:18,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:42:18,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:42:18,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:42:18,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:42:20,250.250 INFO    ] ================================================
[2026-06-22 03:42:20,266.266 INFO    ] Launching Daemon at Mon Jun 22 03:42:20 IST 2026
[2026-06-22 03:42:20,277.277 INFO    ] ================================================
[2026-06-22 03:42:20,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:42:20
[2026-06-22 03:42:21,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:42:21,630.630 INFO    ] Initializing speech engine...
[2026-06-22 03:42:21,655.655 INFO    ] 2026-06-22 03:42:21
[2026-06-22 03:42:21,929.929 INFO    ] 2026-06-22 03:42:21
[2026-06-22 03:42:21,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:42:22,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:42:22,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:42:22,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:42:22,308.308 INFO    ] time= 22/06/2026 03:42:22
[2026-06-22 03:42:22,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:42:22,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:42:22,432.432 INFO    ] No existing commands found in stream
[2026-06-22 03:42:27,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:42:27,445.445 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-22 03:42:31,312.312 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:42:31,314.314 INFO    ] Checking for system updates...
[2026-06-22 03:42:31,356.356 INFO    ] 200
[2026-06-22 03:42:31,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:42:31,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:42:31,421.421 INFO    ] No update needed
[2026-06-22 03:42:31,423.423 INFO    ] Checking for camera pi updates...
[2026-06-22 03:42:31,460.460 INFO    ] 200
[2026-06-22 03:42:31,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:42:31,511.511 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:42:31,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:42:31,589.589 INFO    ] No camera update needed
[2026-06-22 03:42:31,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:42:31,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:42:31,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:42:31,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:42:33,648.648 INFO    ] ================================================
[2026-06-22 03:42:33,664.664 INFO    ] Launching Daemon at Mon Jun 22 03:42:33 IST 2026
[2026-06-22 03:42:33,675.675 INFO    ] ================================================
[2026-06-22 03:42:34,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:42:34
[2026-06-22 03:42:34,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:42:35,103.103 INFO    ] Initializing speech engine...
[2026-06-22 03:42:35,112.112 INFO    ] 2026-06-22 03:42:35
[2026-06-22 03:42:35,331.331 INFO    ] 2026-06-22 03:42:35
[2026-06-22 03:42:35,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:42:35,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:42:35,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:42:35,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:42:35,822.822 INFO    ] time= 22/06/2026 03:42:35
[2026-06-22 03:42:35,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:42:35,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:42:35,976.976 INFO    ] No existing commands found in stream
[2026-06-22 03:42:40,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:42:40,993.993 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-22 03:42:41,525.525 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:42:41,527.527 INFO    ] Checking for system updates...
[2026-06-22 03:42:41,567.567 INFO    ] 200
[2026-06-22 03:42:41,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:42:41,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:42:41,635.635 INFO    ] No update needed
[2026-06-22 03:42:41,637.637 INFO    ] Checking for camera pi updates...
[2026-06-22 03:42:41,675.675 INFO    ] 200
[2026-06-22 03:42:41,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:42:41,722.722 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:42:41,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:42:41,807.807 INFO    ] No camera update needed
[2026-06-22 03:42:41,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:42:41,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:42:41,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:42:41,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:42:43,865.865 INFO    ] ================================================
[2026-06-22 03:42:43,881.881 INFO    ] Launching Daemon at Mon Jun 22 03:42:43 IST 2026
[2026-06-22 03:42:43,892.892 INFO    ] ================================================
[2026-06-22 03:42:44,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:42:44
[2026-06-22 03:42:45,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:42:45,453.453 INFO    ] Initializing speech engine...
[2026-06-22 03:42:45,469.469 INFO    ] 2026-06-22 03:42:45
[2026-06-22 03:42:45,778.778 INFO    ] 2026-06-22 03:42:45
[2026-06-22 03:42:45,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:42:47,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:42:47,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:42:47,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:42:47,419.419 INFO    ] time= 22/06/2026 03:42:47
[2026-06-22 03:42:47,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:42:47,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:42:47,526.526 INFO    ] No existing commands found in stream
[2026-06-22 03:42:52,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:42:52,544.544 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-22 03:42:55,535.535 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:42:55,539.539 INFO    ] Checking for system updates...
[2026-06-22 03:42:55,575.575 INFO    ] 200
[2026-06-22 03:42:55,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:42:55,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:42:55,636.636 INFO    ] No update needed
[2026-06-22 03:42:55,639.639 INFO    ] Checking for camera pi updates...
[2026-06-22 03:42:55,672.672 INFO    ] 200
[2026-06-22 03:42:55,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:42:55,716.716 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:42:55,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:42:55,808.808 INFO    ] No camera update needed
[2026-06-22 03:42:55,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:42:55,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:42:55,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:42:55,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:42:57,864.864 INFO    ] ================================================
[2026-06-22 03:42:57,879.879 INFO    ] Launching Daemon at Mon Jun 22 03:42:57 IST 2026
[2026-06-22 03:42:57,890.890 INFO    ] ================================================
[2026-06-22 03:42:58,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:42:58
[2026-06-22 03:42:59,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:42:59,417.417 INFO    ] Initializing speech engine...
[2026-06-22 03:42:59,431.431 INFO    ] 2026-06-22 03:42:59
[2026-06-22 03:42:59,716.716 INFO    ] 2026-06-22 03:42:59
[2026-06-22 03:42:59,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:42:59,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:42:59,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:43:00,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:43:00,166.166 INFO    ] time= 22/06/2026 03:43:00
[2026-06-22 03:43:00,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:43:00,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:43:00,312.312 INFO    ] No existing commands found in stream
[2026-06-22 03:43:05,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:43:05,330.330 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-22 03:43:07,112.112 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:43:07,115.115 INFO    ] Checking for system updates...
[2026-06-22 03:43:07,152.152 INFO    ] 200
[2026-06-22 03:43:07,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:43:07,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:43:07,220.220 INFO    ] No update needed
[2026-06-22 03:43:07,223.223 INFO    ] Checking for camera pi updates...
[2026-06-22 03:43:07,259.259 INFO    ] 200
[2026-06-22 03:43:07,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:43:07,309.309 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:43:07,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:43:07,406.406 INFO    ] No camera update needed
[2026-06-22 03:43:07,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:43:07,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:43:07,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:43:07,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:43:09,464.464 INFO    ] ================================================
[2026-06-22 03:43:09,480.480 INFO    ] Launching Daemon at Mon Jun 22 03:43:09 IST 2026
[2026-06-22 03:43:09,491.491 INFO    ] ================================================
[2026-06-22 03:43:10,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:43:10
[2026-06-22 03:43:10,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:43:10,897.897 INFO    ] Initializing speech engine...
[2026-06-22 03:43:10,905.905 INFO    ] 2026-06-22 03:43:10
[2026-06-22 03:43:11,201.201 INFO    ] 2026-06-22 03:43:11
[2026-06-22 03:43:11,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:43:11,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:43:11,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:43:11,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:43:11,581.581 INFO    ] time= 22/06/2026 03:43:11
[2026-06-22 03:43:11,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:43:11,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:43:11,643.643 INFO    ] No existing commands found in stream
[2026-06-22 03:43:16,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:43:16,658.658 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-22 03:43:17,882.882 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:43:17,885.885 INFO    ] Checking for system updates...
[2026-06-22 03:43:17,925.925 INFO    ] 200
[2026-06-22 03:43:17,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:43:17,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:43:17,990.990 INFO    ] No update needed
[2026-06-22 03:43:17,992.992 INFO    ] Checking for camera pi updates...
[2026-06-22 03:43:18,031.031 INFO    ] 200
[2026-06-22 03:43:18,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:43:18,079.079 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:43:18,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:43:18,165.165 INFO    ] No camera update needed
[2026-06-22 03:43:18,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:43:18,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:43:18,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:43:18,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:43:20,223.223 INFO    ] ================================================
[2026-06-22 03:43:20,238.238 INFO    ] Launching Daemon at Mon Jun 22 03:43:20 IST 2026
[2026-06-22 03:43:20,249.249 INFO    ] ================================================
[2026-06-22 03:43:20,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:43:20
[2026-06-22 03:43:21,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:43:21,890.890 INFO    ] Initializing speech engine...
[2026-06-22 03:43:21,909.909 INFO    ] 2026-06-22 03:43:21
[2026-06-22 03:43:22,180.180 INFO    ] 2026-06-22 03:43:22
[2026-06-22 03:43:22,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:43:22,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:43:22,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:43:22,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:43:22,667.667 INFO    ] time= 22/06/2026 03:43:22
[2026-06-22 03:43:22,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:43:22,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:43:22,806.806 INFO    ] No existing commands found in stream
[2026-06-22 03:43:27,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:43:27,820.820 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-22 03:43:29,889.889 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:43:29,892.892 INFO    ] Checking for system updates...
[2026-06-22 03:43:29,929.929 INFO    ] 200
[2026-06-22 03:43:29,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:43:29,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:43:29,992.992 INFO    ] No update needed
[2026-06-22 03:43:29,994.994 INFO    ] Checking for camera pi updates...
[2026-06-22 03:43:30,037.037 INFO    ] 200
[2026-06-22 03:43:30,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:43:30,080.080 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:43:30,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:43:30,266.266 INFO    ] No camera update needed
[2026-06-22 03:43:30,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:43:30,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:43:30,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:43:30,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:43:32,324.324 INFO    ] ================================================
[2026-06-22 03:43:32,339.339 INFO    ] Launching Daemon at Mon Jun 22 03:43:32 IST 2026
[2026-06-22 03:43:32,350.350 INFO    ] ================================================
[2026-06-22 03:43:32,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:43:32
[2026-06-22 03:43:33,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:43:33,831.831 INFO    ] Initializing speech engine...
[2026-06-22 03:43:33,840.840 INFO    ] 2026-06-22 03:43:33
[2026-06-22 03:43:34,159.159 INFO    ] 2026-06-22 03:43:34
[2026-06-22 03:43:34,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:43:34,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:43:34,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:43:34,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:43:34,670.670 INFO    ] time= 22/06/2026 03:43:34
[2026-06-22 03:43:34,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:43:34,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:43:34,852.852 INFO    ] No existing commands found in stream
[2026-06-22 03:43:39,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:43:39,887.887 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-22 03:43:41,979.979 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:43:41,981.981 INFO    ] Checking for system updates...
[2026-06-22 03:43:42,003.003 INFO    ] 200
[2026-06-22 03:43:42,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:43:42,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:43:42,036.036 INFO    ] No update needed
[2026-06-22 03:43:42,038.038 INFO    ] Checking for camera pi updates...
[2026-06-22 03:43:42,074.074 INFO    ] 200
[2026-06-22 03:43:42,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:43:42,119.119 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:43:42,201.201 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:43:42,204.204 INFO    ] No camera update needed
[2026-06-22 03:43:42,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:43:42,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:43:42,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:43:42,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:43:44,261.261 INFO    ] ================================================
[2026-06-22 03:43:44,277.277 INFO    ] Launching Daemon at Mon Jun 22 03:43:44 IST 2026
[2026-06-22 03:43:44,287.287 INFO    ] ================================================
[2026-06-22 03:43:44,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:43:44
[2026-06-22 03:43:45,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:43:45,630.630 INFO    ] Initializing speech engine...
[2026-06-22 03:43:45,637.637 INFO    ] 2026-06-22 03:43:45
[2026-06-22 03:43:45,886.886 INFO    ] 2026-06-22 03:43:45
[2026-06-22 03:43:45,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:43:47,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:43:47,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:43:47,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:43:47,493.493 INFO    ] time= 22/06/2026 03:43:47
[2026-06-22 03:43:47,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:43:47,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:43:47,556.556 INFO    ] No existing commands found in stream
[2026-06-22 03:43:52,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:43:52,570.570 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-22 03:43:52,999.999 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:43:53,002.002 INFO    ] Checking for system updates...
[2026-06-22 03:43:53,043.043 INFO    ] 200
[2026-06-22 03:43:53,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:43:53,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:43:53,108.108 INFO    ] No update needed
[2026-06-22 03:43:53,110.110 INFO    ] Checking for camera pi updates...
[2026-06-22 03:43:53,148.148 INFO    ] 200
[2026-06-22 03:43:53,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:43:53,196.196 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:43:53,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:43:53,274.274 INFO    ] No camera update needed
[2026-06-22 03:43:53,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:43:53,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:43:53,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:43:53,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:43:55,332.332 INFO    ] ================================================
[2026-06-22 03:43:55,348.348 INFO    ] Launching Daemon at Mon Jun 22 03:43:55 IST 2026
[2026-06-22 03:43:55,358.358 INFO    ] ================================================
[2026-06-22 03:43:55,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:43:55
[2026-06-22 03:43:56,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:43:56,683.683 INFO    ] Initializing speech engine...
[2026-06-22 03:43:56,689.689 INFO    ] 2026-06-22 03:43:56
[2026-06-22 03:43:56,971.971 INFO    ] 2026-06-22 03:43:56
[2026-06-22 03:43:57,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:43:57,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:43:57,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:43:57,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:43:57,377.377 INFO    ] time= 22/06/2026 03:43:57
[2026-06-22 03:43:57,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:43:57,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:43:57,545.545 INFO    ] No existing commands found in stream
[2026-06-22 03:44:02,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:44:02,581.581 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-22 03:44:05,726.726 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:44:05,730.730 INFO    ] Checking for system updates...
[2026-06-22 03:44:05,768.768 INFO    ] 200
[2026-06-22 03:44:05,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:44:05,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:44:05,828.828 INFO    ] No update needed
[2026-06-22 03:44:05,830.830 INFO    ] Checking for camera pi updates...
[2026-06-22 03:44:05,866.866 INFO    ] 200
[2026-06-22 03:44:05,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:44:05,912.912 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:44:05,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:44:05,997.997 INFO    ] No camera update needed
[2026-06-22 03:44:05,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:44:06,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:44:06,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:44:06,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:44:08,055.055 INFO    ] ================================================
[2026-06-22 03:44:08,070.070 INFO    ] Launching Daemon at Mon Jun 22 03:44:08 IST 2026
[2026-06-22 03:44:08,081.081 INFO    ] ================================================
[2026-06-22 03:44:08,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:44:08
[2026-06-22 03:44:09,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:44:09,459.459 INFO    ] Initializing speech engine...
[2026-06-22 03:44:09,477.477 INFO    ] 2026-06-22 03:44:09
[2026-06-22 03:44:09,726.726 INFO    ] 2026-06-22 03:44:09
[2026-06-22 03:44:09,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:44:09,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:44:09,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:44:10,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:44:10,091.091 INFO    ] time= 22/06/2026 03:44:10
[2026-06-22 03:44:10,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:44:10,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:44:10,286.286 INFO    ] No existing commands found in stream
[2026-06-22 03:44:15,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:44:15,302.302 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-22 03:44:18,825.825 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:44:18,828.828 INFO    ] Checking for system updates...
[2026-06-22 03:44:18,864.864 INFO    ] 200
[2026-06-22 03:44:18,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:44:18,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:44:18,921.921 INFO    ] No update needed
[2026-06-22 03:44:18,924.924 INFO    ] Checking for camera pi updates...
[2026-06-22 03:44:18,958.958 INFO    ] 200
[2026-06-22 03:44:18,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:44:19,001.001 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:44:19,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:44:19,050.050 INFO    ] No camera update needed
[2026-06-22 03:44:19,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:44:19,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:44:19,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:44:19,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:44:21,105.105 INFO    ] ================================================
[2026-06-22 03:44:21,120.120 INFO    ] Launching Daemon at Mon Jun 22 03:44:21 IST 2026
[2026-06-22 03:44:21,130.130 INFO    ] ================================================
[2026-06-22 03:44:21,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:44:21
[2026-06-22 03:44:22,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:44:22,610.610 INFO    ] Initializing speech engine...
[2026-06-22 03:44:22,619.619 INFO    ] 2026-06-22 03:44:22
[2026-06-22 03:44:22,923.923 INFO    ] 2026-06-22 03:44:22
[2026-06-22 03:44:22,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:44:23,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:44:23,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:44:23,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:44:23,288.288 INFO    ] time= 22/06/2026 03:44:23
[2026-06-22 03:44:23,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:44:23,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:44:23,372.372 INFO    ] No existing commands found in stream
[2026-06-22 03:44:28,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:44:28,386.386 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-22 03:44:31,537.537 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:44:31,540.540 INFO    ] Checking for system updates...
[2026-06-22 03:44:31,580.580 INFO    ] 200
[2026-06-22 03:44:31,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:44:31,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:44:31,647.647 INFO    ] No update needed
[2026-06-22 03:44:31,649.649 INFO    ] Checking for camera pi updates...
[2026-06-22 03:44:31,688.688 INFO    ] 200
[2026-06-22 03:44:31,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:44:31,737.737 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:44:31,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:44:31,815.815 INFO    ] No camera update needed
[2026-06-22 03:44:31,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:44:31,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:44:31,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:44:31,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:44:33,880.880 INFO    ] ================================================
[2026-06-22 03:44:33,895.895 INFO    ] Launching Daemon at Mon Jun 22 03:44:33 IST 2026
[2026-06-22 03:44:33,906.906 INFO    ] ================================================
[2026-06-22 03:44:34,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:44:34
[2026-06-22 03:44:35,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:44:35,366.366 INFO    ] Initializing speech engine...
[2026-06-22 03:44:35,374.374 INFO    ] 2026-06-22 03:44:35
[2026-06-22 03:44:35,627.627 INFO    ] 2026-06-22 03:44:35
[2026-06-22 03:44:35,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:44:35,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:44:35,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:44:36,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:44:36,070.070 INFO    ] time= 22/06/2026 03:44:36
[2026-06-22 03:44:36,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:44:36,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:44:36,250.250 INFO    ] No existing commands found in stream
[2026-06-22 03:44:41,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:44:41,265.265 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-22 03:44:45,067.067 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:44:45,070.070 INFO    ] Checking for system updates...
[2026-06-22 03:44:45,107.107 INFO    ] 200
[2026-06-22 03:44:45,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:44:45,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:44:45,166.166 INFO    ] No update needed
[2026-06-22 03:44:45,168.168 INFO    ] Checking for camera pi updates...
[2026-06-22 03:44:45,207.207 INFO    ] 200
[2026-06-22 03:44:45,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:44:45,251.251 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:44:45,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:44:45,353.353 INFO    ] No camera update needed
[2026-06-22 03:44:45,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:44:45,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:44:45,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:44:45,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:44:47,410.410 INFO    ] ================================================
[2026-06-22 03:44:47,425.425 INFO    ] Launching Daemon at Mon Jun 22 03:44:47 IST 2026
[2026-06-22 03:44:47,435.435 INFO    ] ================================================
[2026-06-22 03:44:48,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:44:48
[2026-06-22 03:44:48,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:44:48,845.845 INFO    ] Initializing speech engine...
[2026-06-22 03:44:48,857.857 INFO    ] 2026-06-22 03:44:48
[2026-06-22 03:44:49,121.121 INFO    ] 2026-06-22 03:44:49
[2026-06-22 03:44:49,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:44:49,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:44:49,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:44:49,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:44:49,598.598 INFO    ] time= 22/06/2026 03:44:49
[2026-06-22 03:44:49,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:44:49,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:44:49,745.745 INFO    ] No existing commands found in stream
[2026-06-22 03:44:54,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:44:54,761.761 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-22 03:44:55,981.981 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:44:55,984.984 INFO    ] Checking for system updates...
[2026-06-22 03:44:56,024.024 INFO    ] 200
[2026-06-22 03:44:56,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:44:56,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:44:56,096.096 INFO    ] No update needed
[2026-06-22 03:44:56,098.098 INFO    ] Checking for camera pi updates...
[2026-06-22 03:44:56,138.138 INFO    ] 200
[2026-06-22 03:44:56,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:44:56,187.187 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:44:56,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:44:56,279.279 INFO    ] No camera update needed
[2026-06-22 03:44:56,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:44:56,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:44:56,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:44:56,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:44:58,335.335 INFO    ] ================================================
[2026-06-22 03:44:58,350.350 INFO    ] Launching Daemon at Mon Jun 22 03:44:58 IST 2026
[2026-06-22 03:44:58,361.361 INFO    ] ================================================
[2026-06-22 03:44:58,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:44:58
[2026-06-22 03:44:59,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:44:59,712.712 INFO    ] Initializing speech engine...
[2026-06-22 03:44:59,721.721 INFO    ] 2026-06-22 03:44:59
[2026-06-22 03:45:00,010.010 INFO    ] 2026-06-22 03:44:59
[2026-06-22 03:45:00,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:45:00,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:45:00,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:45:00,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:45:00,468.468 INFO    ] time= 22/06/2026 03:45:00
[2026-06-22 03:45:00,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:45:00,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:45:00,610.610 INFO    ] No existing commands found in stream
[2026-06-22 03:45:05,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:45:05,627.627 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-22 03:45:09,097.097 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:45:09,100.100 INFO    ] Checking for system updates...
[2026-06-22 03:45:09,138.138 INFO    ] 200
[2026-06-22 03:45:09,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:45:09,194.194 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:45:09,196.196 INFO    ] No update needed
[2026-06-22 03:45:09,199.199 INFO    ] Checking for camera pi updates...
[2026-06-22 03:45:09,232.232 INFO    ] 200
[2026-06-22 03:45:09,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:45:09,275.275 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:45:09,351.351 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:45:09,354.354 INFO    ] No camera update needed
[2026-06-22 03:45:09,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:45:09,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:45:09,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:45:09,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:45:11,409.409 INFO    ] ================================================
[2026-06-22 03:45:11,424.424 INFO    ] Launching Daemon at Mon Jun 22 03:45:11 IST 2026
[2026-06-22 03:45:11,435.435 INFO    ] ================================================
[2026-06-22 03:45:12,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:45:12
[2026-06-22 03:45:12,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:45:12,975.975 INFO    ] Initializing speech engine...
[2026-06-22 03:45:12,983.983 INFO    ] 2026-06-22 03:45:12
[2026-06-22 03:45:13,240.240 INFO    ] 2026-06-22 03:45:13
[2026-06-22 03:45:13,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:45:13,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:45:13,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:45:13,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:45:13,687.687 INFO    ] time= 22/06/2026 03:45:13
[2026-06-22 03:45:13,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:45:13,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:45:13,828.828 INFO    ] No existing commands found in stream
[2026-06-22 03:45:18,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:45:18,858.858 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-22 03:45:19,688.688 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:45:19,690.690 INFO    ] Checking for system updates...
[2026-06-22 03:45:19,727.727 INFO    ] 200
[2026-06-22 03:45:19,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:45:19,785.785 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:45:19,788.788 INFO    ] No update needed
[2026-06-22 03:45:19,790.790 INFO    ] Checking for camera pi updates...
[2026-06-22 03:45:19,824.824 INFO    ] 200
[2026-06-22 03:45:19,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:45:19,871.871 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:45:19,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:45:19,953.953 INFO    ] No camera update needed
[2026-06-22 03:45:19,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:45:19,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:45:19,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:45:19,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:45:22,007.007 INFO    ] ================================================
[2026-06-22 03:45:22,023.023 INFO    ] Launching Daemon at Mon Jun 22 03:45:22 IST 2026
[2026-06-22 03:45:22,034.034 INFO    ] ================================================
[2026-06-22 03:45:22,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:45:22
[2026-06-22 03:45:23,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:45:23,422.422 INFO    ] Initializing speech engine...
[2026-06-22 03:45:23,431.431 INFO    ] 2026-06-22 03:45:23
[2026-06-22 03:45:23,677.677 INFO    ] 2026-06-22 03:45:23
[2026-06-22 03:45:23,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:45:23,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:45:23,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:45:24,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:45:24,023.023 INFO    ] time= 22/06/2026 03:45:24
[2026-06-22 03:45:24,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:45:24,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:45:24,117.117 INFO    ] No existing commands found in stream
[2026-06-22 03:45:29,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:45:29,130.130 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-22 03:45:32,052.052 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:45:32,055.055 INFO    ] Checking for system updates...
[2026-06-22 03:45:32,107.107 INFO    ] 200
[2026-06-22 03:45:32,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:45:32,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:45:32,178.178 INFO    ] No update needed
[2026-06-22 03:45:32,181.181 INFO    ] Checking for camera pi updates...
[2026-06-22 03:45:32,221.221 INFO    ] 200
[2026-06-22 03:45:32,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:45:32,269.269 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:45:32,417.417 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:45:32,419.419 INFO    ] No camera update needed
[2026-06-22 03:45:32,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:45:32,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:45:32,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:45:32,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:45:34,478.478 INFO    ] ================================================
[2026-06-22 03:45:34,493.493 INFO    ] Launching Daemon at Mon Jun 22 03:45:34 IST 2026
[2026-06-22 03:45:34,504.504 INFO    ] ================================================
[2026-06-22 03:45:35,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:45:35
[2026-06-22 03:45:35,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:45:35,868.868 INFO    ] Initializing speech engine...
[2026-06-22 03:45:35,889.889 INFO    ] 2026-06-22 03:45:35
[2026-06-22 03:45:36,156.156 INFO    ] 2026-06-22 03:45:36
[2026-06-22 03:45:36,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:45:36,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:45:36,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:45:36,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:45:36,531.531 INFO    ] time= 22/06/2026 03:45:36
[2026-06-22 03:45:36,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:45:36,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:45:36,657.657 INFO    ] No existing commands found in stream
[2026-06-22 03:45:41,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:45:41,670.670 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-22 03:45:42,656.656 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:45:42,658.658 INFO    ] Checking for system updates...
[2026-06-22 03:45:42,679.679 INFO    ] 200
[2026-06-22 03:45:42,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:45:42,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:45:42,712.712 INFO    ] No update needed
[2026-06-22 03:45:42,714.714 INFO    ] Checking for camera pi updates...
[2026-06-22 03:45:42,756.756 INFO    ] 200
[2026-06-22 03:45:42,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:45:42,801.801 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:45:42,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:45:42,891.891 INFO    ] No camera update needed
[2026-06-22 03:45:42,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:45:42,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:45:42,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:45:42,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:45:44,951.951 INFO    ] ================================================
[2026-06-22 03:45:44,967.967 INFO    ] Launching Daemon at Mon Jun 22 03:45:44 IST 2026
[2026-06-22 03:45:44,978.978 INFO    ] ================================================
[2026-06-22 03:45:45,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:45:45
[2026-06-22 03:45:46,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:45:46,306.306 INFO    ] Initializing speech engine...
[2026-06-22 03:45:46,325.325 INFO    ] 2026-06-22 03:45:46
[2026-06-22 03:45:46,572.572 INFO    ] 2026-06-22 03:45:46
[2026-06-22 03:45:46,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:45:47,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:45:47,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:45:47,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:45:47,565.565 INFO    ] time= 22/06/2026 03:45:47
[2026-06-22 03:45:47,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:45:47,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:45:47,685.685 INFO    ] No existing commands found in stream
[2026-06-22 03:45:52,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:45:52,709.709 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-22 03:45:55,310.310 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:45:55,312.312 INFO    ] Checking for system updates...
[2026-06-22 03:45:55,337.337 INFO    ] 200
[2026-06-22 03:45:55,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:45:55,401.401 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:45:55,403.403 INFO    ] No update needed
[2026-06-22 03:45:55,406.406 INFO    ] Checking for camera pi updates...
[2026-06-22 03:45:55,444.444 INFO    ] 200
[2026-06-22 03:45:55,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:45:55,493.493 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:45:55,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:45:55,591.591 INFO    ] No camera update needed
[2026-06-22 03:45:55,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:45:55,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:45:55,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:45:55,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:45:57,645.645 INFO    ] ================================================
[2026-06-22 03:45:57,660.660 INFO    ] Launching Daemon at Mon Jun 22 03:45:57 IST 2026
[2026-06-22 03:45:57,671.671 INFO    ] ================================================
[2026-06-22 03:45:58,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:45:58
[2026-06-22 03:45:58,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:45:59,053.053 INFO    ] Initializing speech engine...
[2026-06-22 03:45:59,060.060 INFO    ] 2026-06-22 03:45:59
[2026-06-22 03:45:59,349.349 INFO    ] 2026-06-22 03:45:59
[2026-06-22 03:45:59,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:45:59,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:45:59,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:45:59,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:45:59,774.774 INFO    ] time= 22/06/2026 03:45:59
[2026-06-22 03:45:59,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:45:59,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:45:59,939.939 INFO    ] No existing commands found in stream
[2026-06-22 03:46:04,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:46:04,953.953 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-22 03:46:07,999.999 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:46:08,009.009 INFO    ] Checking for system updates...
[2026-06-22 03:46:08,046.046 INFO    ] 200
[2026-06-22 03:46:08,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:46:08,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:46:08,110.110 INFO    ] No update needed
[2026-06-22 03:46:08,113.113 INFO    ] Checking for camera pi updates...
[2026-06-22 03:46:08,147.147 INFO    ] 200
[2026-06-22 03:46:08,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:46:08,190.190 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:46:08,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:46:08,270.270 INFO    ] No camera update needed
[2026-06-22 03:46:08,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:46:08,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:46:08,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:46:08,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:46:10,327.327 INFO    ] ================================================
[2026-06-22 03:46:10,342.342 INFO    ] Launching Daemon at Mon Jun 22 03:46:10 IST 2026
[2026-06-22 03:46:10,352.352 INFO    ] ================================================
[2026-06-22 03:46:10,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:46:10
[2026-06-22 03:46:11,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:46:11,828.828 INFO    ] Initializing speech engine...
[2026-06-22 03:46:11,840.840 INFO    ] 2026-06-22 03:46:11
[2026-06-22 03:46:12,133.133 INFO    ] 2026-06-22 03:46:12
[2026-06-22 03:46:12,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:46:12,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:46:12,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:46:12,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:46:12,601.601 INFO    ] time= 22/06/2026 03:46:12
[2026-06-22 03:46:12,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:46:12,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:46:12,800.800 INFO    ] No existing commands found in stream
[2026-06-22 03:46:17,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:46:17,826.826 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-22 03:46:21,095.095 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:46:21,096.096 INFO    ] Checking for system updates...
[2026-06-22 03:46:21,117.117 INFO    ] 200
[2026-06-22 03:46:21,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:46:21,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:46:21,153.153 INFO    ] No update needed
[2026-06-22 03:46:21,155.155 INFO    ] Checking for camera pi updates...
[2026-06-22 03:46:21,190.190 INFO    ] 200
[2026-06-22 03:46:21,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:46:21,251.251 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:46:21,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:46:21,335.335 INFO    ] No camera update needed
[2026-06-22 03:46:21,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:46:21,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:46:21,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:46:21,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:46:23,395.395 INFO    ] ================================================
[2026-06-22 03:46:23,410.410 INFO    ] Launching Daemon at Mon Jun 22 03:46:23 IST 2026
[2026-06-22 03:46:23,420.420 INFO    ] ================================================
[2026-06-22 03:46:24,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:46:24
[2026-06-22 03:46:24,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:46:24,929.929 INFO    ] Initializing speech engine...
[2026-06-22 03:46:24,937.937 INFO    ] 2026-06-22 03:46:24
[2026-06-22 03:46:25,208.208 INFO    ] 2026-06-22 03:46:25
[2026-06-22 03:46:25,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:46:25,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:46:25,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:46:25,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:46:25,702.702 INFO    ] time= 22/06/2026 03:46:25
[2026-06-22 03:46:25,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:46:25,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:46:25,928.928 INFO    ] No existing commands found in stream
[2026-06-22 03:46:30,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:46:30,958.958 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-22 03:46:35,370.370 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:46:35,372.372 INFO    ] Checking for system updates...
[2026-06-22 03:46:35,411.411 INFO    ] 200
[2026-06-22 03:46:35,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:46:35,468.468 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:46:35,470.470 INFO    ] No update needed
[2026-06-22 03:46:35,473.473 INFO    ] Checking for camera pi updates...
[2026-06-22 03:46:35,510.510 INFO    ] 200
[2026-06-22 03:46:35,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:46:35,557.557 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:46:35,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:46:35,642.642 INFO    ] No camera update needed
[2026-06-22 03:46:35,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:46:35,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:46:35,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:46:35,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:46:37,699.699 INFO    ] ================================================
[2026-06-22 03:46:37,713.713 INFO    ] Launching Daemon at Mon Jun 22 03:46:37 IST 2026
[2026-06-22 03:46:37,724.724 INFO    ] ================================================
[2026-06-22 03:46:38,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:46:38
[2026-06-22 03:46:38,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:46:39,144.144 INFO    ] Initializing speech engine...
[2026-06-22 03:46:39,160.160 INFO    ] 2026-06-22 03:46:39
[2026-06-22 03:46:39,443.443 INFO    ] 2026-06-22 03:46:39
[2026-06-22 03:46:39,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:46:39,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:46:39,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:46:39,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:46:39,815.815 INFO    ] time= 22/06/2026 03:46:39
[2026-06-22 03:46:39,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:46:39,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:46:39,942.942 INFO    ] No existing commands found in stream
[2026-06-22 03:46:44,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:46:44,955.955 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-22 03:46:47,701.701 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:46:47,704.704 INFO    ] Checking for system updates...
[2026-06-22 03:46:47,743.743 INFO    ] 200
[2026-06-22 03:46:47,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:46:47,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:46:47,802.802 INFO    ] No update needed
[2026-06-22 03:46:47,805.805 INFO    ] Checking for camera pi updates...
[2026-06-22 03:46:47,839.839 INFO    ] 200
[2026-06-22 03:46:47,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:46:47,886.886 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:46:47,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:46:47,968.968 INFO    ] No camera update needed
[2026-06-22 03:46:47,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:46:47,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:46:47,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:46:47,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:46:50,024.024 INFO    ] ================================================
[2026-06-22 03:46:50,039.039 INFO    ] Launching Daemon at Mon Jun 22 03:46:50 IST 2026
[2026-06-22 03:46:50,050.050 INFO    ] ================================================
[2026-06-22 03:46:50,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:46:50
[2026-06-22 03:46:51,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:46:51,551.551 INFO    ] Initializing speech engine...
[2026-06-22 03:46:51,560.560 INFO    ] 2026-06-22 03:46:51
[2026-06-22 03:46:51,852.852 INFO    ] 2026-06-22 03:46:51
[2026-06-22 03:46:51,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:46:52,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:46:52,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:46:52,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:46:52,384.384 INFO    ] time= 22/06/2026 03:46:52
[2026-06-22 03:46:52,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:46:52,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:46:52,550.550 INFO    ] No existing commands found in stream
[2026-06-22 03:46:57,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:46:57,589.589 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-22 03:46:58,274.274 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:46:58,277.277 INFO    ] Checking for system updates...
[2026-06-22 03:46:58,315.315 INFO    ] 200
[2026-06-22 03:46:58,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:46:58,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:46:58,382.382 INFO    ] No update needed
[2026-06-22 03:46:58,385.385 INFO    ] Checking for camera pi updates...
[2026-06-22 03:46:58,424.424 INFO    ] 200
[2026-06-22 03:46:58,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:46:58,478.478 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:46:58,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:46:58,581.581 INFO    ] No camera update needed
[2026-06-22 03:46:58,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:46:58,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:46:58,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:46:58,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:47:00,639.639 INFO    ] ================================================
[2026-06-22 03:47:00,654.654 INFO    ] Launching Daemon at Mon Jun 22 03:47:00 IST 2026
[2026-06-22 03:47:00,665.665 INFO    ] ================================================
[2026-06-22 03:47:01,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:47:01
[2026-06-22 03:47:01,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:47:02,285.285 INFO    ] Initializing speech engine...
[2026-06-22 03:47:02,292.292 INFO    ] 2026-06-22 03:47:02
[2026-06-22 03:47:02,787.787 INFO    ] 2026-06-22 03:47:02
[2026-06-22 03:47:02,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:47:03,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:47:03,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:47:03,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:47:03,224.224 INFO    ] time= 22/06/2026 03:47:03
[2026-06-22 03:47:03,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:47:03,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:47:03,336.336 INFO    ] No existing commands found in stream
[2026-06-22 03:47:08,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:47:08,349.349 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-22 03:47:12,421.421 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:47:12,424.424 INFO    ] Checking for system updates...
[2026-06-22 03:47:12,464.464 INFO    ] 200
[2026-06-22 03:47:12,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:47:12,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:47:12,523.523 INFO    ] No update needed
[2026-06-22 03:47:12,526.526 INFO    ] Checking for camera pi updates...
[2026-06-22 03:47:12,564.564 INFO    ] 200
[2026-06-22 03:47:12,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:47:12,609.609 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:47:12,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:47:12,700.700 INFO    ] No camera update needed
[2026-06-22 03:47:12,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:47:12,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:47:12,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:47:12,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:47:14,756.756 INFO    ] ================================================
[2026-06-22 03:47:14,771.771 INFO    ] Launching Daemon at Mon Jun 22 03:47:14 IST 2026
[2026-06-22 03:47:14,782.782 INFO    ] ================================================
[2026-06-22 03:47:15,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:47:15
[2026-06-22 03:47:15,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:47:16,151.151 INFO    ] Initializing speech engine...
[2026-06-22 03:47:16,157.157 INFO    ] 2026-06-22 03:47:16
[2026-06-22 03:47:16,460.460 INFO    ] 2026-06-22 03:47:16
[2026-06-22 03:47:16,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:47:17,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:47:17,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:47:17,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:47:17,749.749 INFO    ] time= 22/06/2026 03:47:17
[2026-06-22 03:47:17,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:47:17,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:47:17,879.879 INFO    ] No existing commands found in stream
[2026-06-22 03:47:22,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:47:22,889.889 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-22 03:47:24,681.681 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:47:24,684.684 INFO    ] Checking for system updates...
[2026-06-22 03:47:24,720.720 INFO    ] 200
[2026-06-22 03:47:24,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:47:24,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:47:24,777.777 INFO    ] No update needed
[2026-06-22 03:47:24,780.780 INFO    ] Checking for camera pi updates...
[2026-06-22 03:47:24,814.814 INFO    ] 200
[2026-06-22 03:47:24,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:47:24,862.862 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:47:24,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:47:24,955.955 INFO    ] No camera update needed
[2026-06-22 03:47:24,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:47:24,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:47:24,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:47:24,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:47:27,011.011 INFO    ] ================================================
[2026-06-22 03:47:27,026.026 INFO    ] Launching Daemon at Mon Jun 22 03:47:27 IST 2026
[2026-06-22 03:47:27,037.037 INFO    ] ================================================
[2026-06-22 03:47:27,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:47:27
[2026-06-22 03:47:28,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:47:28,489.489 INFO    ] Initializing speech engine...
[2026-06-22 03:47:28,498.498 INFO    ] 2026-06-22 03:47:28
[2026-06-22 03:47:28,806.806 INFO    ] 2026-06-22 03:47:28
[2026-06-22 03:47:28,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:47:29,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:47:29,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:47:29,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:47:29,193.193 INFO    ] time= 22/06/2026 03:47:29
[2026-06-22 03:47:29,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:47:29,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:47:29,321.321 INFO    ] No existing commands found in stream
[2026-06-22 03:47:34,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:47:34,336.336 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-22 03:47:38,471.471 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:47:38,474.474 INFO    ] Checking for system updates...
[2026-06-22 03:47:38,510.510 INFO    ] 200
[2026-06-22 03:47:38,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:47:38,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:47:38,575.575 INFO    ] No update needed
[2026-06-22 03:47:38,578.578 INFO    ] Checking for camera pi updates...
[2026-06-22 03:47:38,612.612 INFO    ] 200
[2026-06-22 03:47:38,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:47:38,655.655 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:47:38,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:47:38,836.836 INFO    ] No camera update needed
[2026-06-22 03:47:38,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:47:38,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:47:38,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:47:38,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:47:40,893.893 INFO    ] ================================================
[2026-06-22 03:47:40,908.908 INFO    ] Launching Daemon at Mon Jun 22 03:47:40 IST 2026
[2026-06-22 03:47:40,919.919 INFO    ] ================================================
[2026-06-22 03:47:41,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:47:41
[2026-06-22 03:47:42,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:47:42,487.487 INFO    ] Initializing speech engine...
[2026-06-22 03:47:42,499.499 INFO    ] 2026-06-22 03:47:42
[2026-06-22 03:47:42,815.815 INFO    ] 2026-06-22 03:47:42
[2026-06-22 03:47:42,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:47:43,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:47:43,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:47:43,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:47:43,350.350 INFO    ] time= 22/06/2026 03:47:43
[2026-06-22 03:47:43,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:47:43,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:47:43,502.502 INFO    ] No existing commands found in stream
[2026-06-22 03:47:48,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:47:48,533.533 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-22 03:47:50,972.972 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:47:50,974.974 INFO    ] Checking for system updates...
[2026-06-22 03:47:51,010.010 INFO    ] 200
[2026-06-22 03:47:51,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:47:51,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:47:51,076.076 INFO    ] No update needed
[2026-06-22 03:47:51,079.079 INFO    ] Checking for camera pi updates...
[2026-06-22 03:47:51,113.113 INFO    ] 200
[2026-06-22 03:47:51,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:47:51,161.161 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:47:51,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:47:51,242.242 INFO    ] No camera update needed
[2026-06-22 03:47:51,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:47:51,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:47:51,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:47:51,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:47:53,299.299 INFO    ] ================================================
[2026-06-22 03:47:53,314.314 INFO    ] Launching Daemon at Mon Jun 22 03:47:53 IST 2026
[2026-06-22 03:47:53,324.324 INFO    ] ================================================
[2026-06-22 03:47:53,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:47:53
[2026-06-22 03:47:54,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:47:54,699.699 INFO    ] Initializing speech engine...
[2026-06-22 03:47:54,705.705 INFO    ] 2026-06-22 03:47:54
[2026-06-22 03:47:54,951.951 INFO    ] 2026-06-22 03:47:54
[2026-06-22 03:47:54,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:47:55,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:47:55,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:47:55,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:47:55,320.320 INFO    ] time= 22/06/2026 03:47:55
[2026-06-22 03:47:55,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:47:55,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:47:55,497.497 INFO    ] No existing commands found in stream
[2026-06-22 03:48:00,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:48:00,530.530 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-22 03:48:04,463.463 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:48:04,465.465 INFO    ] Checking for system updates...
[2026-06-22 03:48:04,502.502 INFO    ] 200
[2026-06-22 03:48:04,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:48:04,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:48:04,563.563 INFO    ] No update needed
[2026-06-22 03:48:04,566.566 INFO    ] Checking for camera pi updates...
[2026-06-22 03:48:04,600.600 INFO    ] 200
[2026-06-22 03:48:04,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:48:04,648.648 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:48:04,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:48:04,740.740 INFO    ] No camera update needed
[2026-06-22 03:48:04,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:48:04,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:48:04,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:48:04,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:48:06,799.799 INFO    ] ================================================
[2026-06-22 03:48:06,815.815 INFO    ] Launching Daemon at Mon Jun 22 03:48:06 IST 2026
[2026-06-22 03:48:06,826.826 INFO    ] ================================================
[2026-06-22 03:48:07,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:48:07
[2026-06-22 03:48:07,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:48:08,247.247 INFO    ] Initializing speech engine...
[2026-06-22 03:48:08,255.255 INFO    ] 2026-06-22 03:48:08
[2026-06-22 03:48:08,529.529 INFO    ] 2026-06-22 03:48:08
[2026-06-22 03:48:08,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:48:08,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:48:08,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:48:08,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:48:08,887.887 INFO    ] time= 22/06/2026 03:48:08
[2026-06-22 03:48:08,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:48:08,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:48:08,987.987 INFO    ] No existing commands found in stream
[2026-06-22 03:48:14,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:48:14,005.005 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-22 03:48:15,632.632 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:48:15,634.634 INFO    ] Checking for system updates...
[2026-06-22 03:48:15,656.656 INFO    ] 200
[2026-06-22 03:48:15,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:48:15,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:48:15,697.697 INFO    ] No update needed
[2026-06-22 03:48:15,699.699 INFO    ] Checking for camera pi updates...
[2026-06-22 03:48:15,733.733 INFO    ] 200
[2026-06-22 03:48:15,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:48:15,777.777 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:48:15,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:48:15,853.853 INFO    ] No camera update needed
[2026-06-22 03:48:15,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:48:15,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:48:15,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:48:15,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:48:17,921.921 INFO    ] ================================================
[2026-06-22 03:48:17,943.943 INFO    ] Launching Daemon at Mon Jun 22 03:48:17 IST 2026
[2026-06-22 03:48:17,969.969 INFO    ] ================================================
[2026-06-22 03:48:18,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:48:18
[2026-06-22 03:48:19,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:48:19,523.523 INFO    ] Initializing speech engine...
[2026-06-22 03:48:19,543.543 INFO    ] 2026-06-22 03:48:19
[2026-06-22 03:48:19,806.806 INFO    ] 2026-06-22 03:48:19
[2026-06-22 03:48:19,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:48:20,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:48:20,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:48:20,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:48:20,197.197 INFO    ] time= 22/06/2026 03:48:20
[2026-06-22 03:48:20,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:48:20,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:48:20,377.377 INFO    ] No existing commands found in stream
[2026-06-22 03:48:25,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:48:25,406.406 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-22 03:48:27,008.008 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:48:27,009.009 INFO    ] Checking for system updates...
[2026-06-22 03:48:27,031.031 INFO    ] 200
[2026-06-22 03:48:27,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:48:27,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:48:27,064.064 INFO    ] No update needed
[2026-06-22 03:48:27,066.066 INFO    ] Checking for camera pi updates...
[2026-06-22 03:48:27,090.090 INFO    ] 200
[2026-06-22 03:48:27,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:48:27,133.133 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:48:27,211.211 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:48:27,213.213 INFO    ] No camera update needed
[2026-06-22 03:48:27,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:48:27,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:48:27,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:48:27,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:48:29,271.271 INFO    ] ================================================
[2026-06-22 03:48:29,286.286 INFO    ] Launching Daemon at Mon Jun 22 03:48:29 IST 2026
[2026-06-22 03:48:29,297.297 INFO    ] ================================================
[2026-06-22 03:48:29,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:48:29
[2026-06-22 03:48:30,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:48:30,744.744 INFO    ] Initializing speech engine...
[2026-06-22 03:48:30,757.757 INFO    ] 2026-06-22 03:48:30
[2026-06-22 03:48:31,051.051 INFO    ] 2026-06-22 03:48:31
[2026-06-22 03:48:31,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:48:31,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:48:31,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:48:31,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:48:31,407.407 INFO    ] time= 22/06/2026 03:48:31
[2026-06-22 03:48:31,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:48:31,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:48:31,484.484 INFO    ] No existing commands found in stream
[2026-06-22 03:48:36,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:48:36,500.500 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-22 03:48:39,778.778 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:48:39,781.781 INFO    ] Checking for system updates...
[2026-06-22 03:48:39,825.825 INFO    ] 200
[2026-06-22 03:48:39,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:48:39,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:48:39,886.886 INFO    ] No update needed
[2026-06-22 03:48:39,888.888 INFO    ] Checking for camera pi updates...
[2026-06-22 03:48:39,926.926 INFO    ] 200
[2026-06-22 03:48:39,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:48:39,970.970 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:48:40,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:48:40,048.048 INFO    ] No camera update needed
[2026-06-22 03:48:40,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:48:40,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:48:40,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:48:40,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:48:42,112.112 INFO    ] ================================================
[2026-06-22 03:48:42,128.128 INFO    ] Launching Daemon at Mon Jun 22 03:48:42 IST 2026
[2026-06-22 03:48:42,138.138 INFO    ] ================================================
[2026-06-22 03:48:42,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:48:42
[2026-06-22 03:48:43,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:48:43,597.597 INFO    ] Initializing speech engine...
[2026-06-22 03:48:43,604.604 INFO    ] 2026-06-22 03:48:43
[2026-06-22 03:48:43,863.863 INFO    ] 2026-06-22 03:48:43
[2026-06-22 03:48:43,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:48:44,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:48:44,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:48:44,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:48:44,305.305 INFO    ] time= 22/06/2026 03:48:44
[2026-06-22 03:48:44,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:48:44,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:48:44,471.471 INFO    ] No existing commands found in stream
[2026-06-22 03:48:49,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:48:49,486.486 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-22 03:48:49,848.848 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:48:49,849.849 INFO    ] Checking for system updates...
[2026-06-22 03:48:49,869.869 INFO    ] 200
[2026-06-22 03:48:49,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:48:49,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:48:49,917.917 INFO    ] No update needed
[2026-06-22 03:48:49,919.919 INFO    ] Checking for camera pi updates...
[2026-06-22 03:48:49,953.953 INFO    ] 200
[2026-06-22 03:48:49,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:48:49,998.998 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:48:50,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:48:50,092.092 INFO    ] No camera update needed
[2026-06-22 03:48:50,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:48:50,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:48:50,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:48:50,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:48:52,149.149 INFO    ] ================================================
[2026-06-22 03:48:52,168.168 INFO    ] Launching Daemon at Mon Jun 22 03:48:52 IST 2026
[2026-06-22 03:48:52,180.180 INFO    ] ================================================
[2026-06-22 03:48:52,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:48:52
[2026-06-22 03:48:53,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:48:53,658.658 INFO    ] Initializing speech engine...
[2026-06-22 03:48:53,665.665 INFO    ] 2026-06-22 03:48:53
[2026-06-22 03:48:53,960.960 INFO    ] 2026-06-22 03:48:53
[2026-06-22 03:48:54,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:48:54,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:48:54,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:48:54,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:48:54,337.337 INFO    ] time= 22/06/2026 03:48:54
[2026-06-22 03:48:54,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:48:54,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:48:54,461.461 INFO    ] No existing commands found in stream
[2026-06-22 03:48:59,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:48:59,476.476 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-22 03:49:00,137.137 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:49:00,139.139 INFO    ] Checking for system updates...
[2026-06-22 03:49:00,159.159 INFO    ] 200
[2026-06-22 03:49:00,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:49:00,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:49:00,213.213 INFO    ] No update needed
[2026-06-22 03:49:00,215.215 INFO    ] Checking for camera pi updates...
[2026-06-22 03:49:00,249.249 INFO    ] 200
[2026-06-22 03:49:00,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:49:00,292.292 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:49:00,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:49:00,376.376 INFO    ] No camera update needed
[2026-06-22 03:49:00,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:49:00,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:49:00,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:49:00,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:49:02,436.436 INFO    ] ================================================
[2026-06-22 03:49:02,454.454 INFO    ] Launching Daemon at Mon Jun 22 03:49:02 IST 2026
[2026-06-22 03:49:02,469.469 INFO    ] ================================================
[2026-06-22 03:49:03,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:49:03
[2026-06-22 03:49:03,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:49:04,056.056 INFO    ] Initializing speech engine...
[2026-06-22 03:49:04,065.065 INFO    ] 2026-06-22 03:49:04
[2026-06-22 03:49:04,343.343 INFO    ] 2026-06-22 03:49:04
[2026-06-22 03:49:04,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:49:04,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:49:04,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:49:04,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:49:04,838.838 INFO    ] time= 22/06/2026 03:49:04
[2026-06-22 03:49:04,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:49:04,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:49:04,981.981 INFO    ] No existing commands found in stream
[2026-06-22 03:49:09,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:49:09,996.996 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-22 03:49:13,139.139 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:49:13,142.142 INFO    ] Checking for system updates...
[2026-06-22 03:49:13,177.177 INFO    ] 200
[2026-06-22 03:49:13,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:49:13,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:49:13,241.241 INFO    ] No update needed
[2026-06-22 03:49:13,244.244 INFO    ] Checking for camera pi updates...
[2026-06-22 03:49:13,277.277 INFO    ] 200
[2026-06-22 03:49:13,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:49:13,312.312 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:49:13,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:49:13,380.380 INFO    ] No camera update needed
[2026-06-22 03:49:13,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:49:13,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:49:13,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:49:13,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:49:15,428.428 INFO    ] ================================================
[2026-06-22 03:49:15,443.443 INFO    ] Launching Daemon at Mon Jun 22 03:49:15 IST 2026
[2026-06-22 03:49:15,454.454 INFO    ] ================================================
[2026-06-22 03:49:16,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:49:16
[2026-06-22 03:49:16,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:49:16,875.875 INFO    ] Initializing speech engine...
[2026-06-22 03:49:16,890.890 INFO    ] 2026-06-22 03:49:16
[2026-06-22 03:49:17,172.172 INFO    ] 2026-06-22 03:49:17
[2026-06-22 03:49:17,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:49:17,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:49:17,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:49:17,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:49:17,563.563 INFO    ] time= 22/06/2026 03:49:17
[2026-06-22 03:49:17,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:49:17,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:49:17,670.670 INFO    ] No existing commands found in stream
[2026-06-22 03:49:22,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:49:22,682.682 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-22 03:49:23,205.205 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:49:23,206.206 INFO    ] Checking for system updates...
[2026-06-22 03:49:23,229.229 INFO    ] 200
[2026-06-22 03:49:23,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:49:23,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:49:23,262.262 INFO    ] No update needed
[2026-06-22 03:49:23,263.263 INFO    ] Checking for camera pi updates...
[2026-06-22 03:49:23,287.287 INFO    ] 200
[2026-06-22 03:49:23,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:49:23,337.337 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:49:23,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:49:23,431.431 INFO    ] No camera update needed
[2026-06-22 03:49:23,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:49:23,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:49:23,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:49:23,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:49:25,489.489 INFO    ] ================================================
[2026-06-22 03:49:25,504.504 INFO    ] Launching Daemon at Mon Jun 22 03:49:25 IST 2026
[2026-06-22 03:49:25,515.515 INFO    ] ================================================
[2026-06-22 03:49:26,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:49:26
[2026-06-22 03:49:26,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:49:27,155.155 INFO    ] Initializing speech engine...
[2026-06-22 03:49:27,169.169 INFO    ] 2026-06-22 03:49:27
[2026-06-22 03:49:27,434.434 INFO    ] 2026-06-22 03:49:27
[2026-06-22 03:49:27,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:49:27,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:49:27,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:49:27,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:49:27,905.905 INFO    ] time= 22/06/2026 03:49:27
[2026-06-22 03:49:27,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:49:28,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:49:28,075.075 INFO    ] No existing commands found in stream
[2026-06-22 03:49:33,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:49:33,091.091 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-22 03:49:37,321.321 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:49:37,324.324 INFO    ] Checking for system updates...
[2026-06-22 03:49:37,364.364 INFO    ] 200
[2026-06-22 03:49:37,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:49:37,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:49:37,422.422 INFO    ] No update needed
[2026-06-22 03:49:37,425.425 INFO    ] Checking for camera pi updates...
[2026-06-22 03:49:37,459.459 INFO    ] 200
[2026-06-22 03:49:37,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:49:37,507.507 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:49:37,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:49:37,585.585 INFO    ] No camera update needed
[2026-06-22 03:49:37,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:49:37,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:49:37,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:49:37,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:49:39,657.657 INFO    ] ================================================
[2026-06-22 03:49:39,673.673 INFO    ] Launching Daemon at Mon Jun 22 03:49:39 IST 2026
[2026-06-22 03:49:39,684.684 INFO    ] ================================================
[2026-06-22 03:49:40,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:49:40
[2026-06-22 03:49:40,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:49:41,209.209 INFO    ] Initializing speech engine...
[2026-06-22 03:49:41,217.217 INFO    ] 2026-06-22 03:49:41
[2026-06-22 03:49:41,503.503 INFO    ] 2026-06-22 03:49:41
[2026-06-22 03:49:41,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:49:41,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:49:41,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:49:41,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:49:41,981.981 INFO    ] time= 22/06/2026 03:49:41
[2026-06-22 03:49:42,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:49:42,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:49:42,162.162 INFO    ] No existing commands found in stream
[2026-06-22 03:49:47,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:49:47,188.188 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-22 03:49:49,877.877 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:49:49,879.879 INFO    ] Checking for system updates...
[2026-06-22 03:49:49,917.917 INFO    ] 200
[2026-06-22 03:49:49,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:49:49,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:49:49,977.977 INFO    ] No update needed
[2026-06-22 03:49:49,980.980 INFO    ] Checking for camera pi updates...
[2026-06-22 03:49:50,019.019 INFO    ] 200
[2026-06-22 03:49:50,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:49:50,064.064 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:49:50,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:49:50,269.269 INFO    ] No camera update needed
[2026-06-22 03:49:50,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:49:50,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:49:50,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:49:50,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:49:52,329.329 INFO    ] ================================================
[2026-06-22 03:49:52,345.345 INFO    ] Launching Daemon at Mon Jun 22 03:49:52 IST 2026
[2026-06-22 03:49:52,356.356 INFO    ] ================================================
[2026-06-22 03:49:52,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:49:52
[2026-06-22 03:49:53,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:49:53,814.814 INFO    ] Initializing speech engine...
[2026-06-22 03:49:53,820.820 INFO    ] 2026-06-22 03:49:53
[2026-06-22 03:49:54,112.112 INFO    ] 2026-06-22 03:49:54
[2026-06-22 03:49:54,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:49:54,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:49:54,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:49:54,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:49:54,526.526 INFO    ] time= 22/06/2026 03:49:54
[2026-06-22 03:49:54,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:49:54,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:49:54,618.618 INFO    ] No existing commands found in stream
[2026-06-22 03:49:59,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:49:59,657.657 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-22 03:50:05,652.652 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:50:05,655.655 INFO    ] Checking for system updates...
[2026-06-22 03:50:05,695.695 INFO    ] 200
[2026-06-22 03:50:05,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:50:05,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:50:05,754.754 INFO    ] No update needed
[2026-06-22 03:50:05,756.756 INFO    ] Checking for camera pi updates...
[2026-06-22 03:50:05,794.794 INFO    ] 200
[2026-06-22 03:50:05,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:50:05,837.837 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:50:05,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:50:05,938.938 INFO    ] No camera update needed
[2026-06-22 03:50:05,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:50:05,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:50:05,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:50:05,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:50:08,997.997 INFO    ] ================================================
[2026-06-22 03:50:08,014.014 INFO    ] Launching Daemon at Mon Jun 22 03:50:08 IST 2026
[2026-06-22 03:50:08,026.026 INFO    ] ================================================
[2026-06-22 03:50:08,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:50:08
[2026-06-22 03:50:09,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:50:09,463.463 INFO    ] Initializing speech engine...
[2026-06-22 03:50:09,472.472 INFO    ] 2026-06-22 03:50:09
[2026-06-22 03:50:09,763.763 INFO    ] 2026-06-22 03:50:09
[2026-06-22 03:50:09,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:50:09,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:50:10,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:50:10,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:50:10,141.141 INFO    ] time= 22/06/2026 03:50:10
[2026-06-22 03:50:10,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:50:10,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:50:10,264.264 INFO    ] No existing commands found in stream
[2026-06-22 03:50:15,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:50:15,280.280 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-22 03:50:17,318.318 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:50:17,320.320 INFO    ] Checking for system updates...
[2026-06-22 03:50:17,356.356 INFO    ] 200
[2026-06-22 03:50:17,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:50:17,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:50:17,395.395 INFO    ] No update needed
[2026-06-22 03:50:17,396.396 INFO    ] Checking for camera pi updates...
[2026-06-22 03:50:17,416.416 INFO    ] 200
[2026-06-22 03:50:17,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:50:17,440.440 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:50:17,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:50:17,516.516 INFO    ] No camera update needed
[2026-06-22 03:50:17,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:50:17,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:50:17,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:50:17,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:50:19,571.571 INFO    ] ================================================
[2026-06-22 03:50:19,587.587 INFO    ] Launching Daemon at Mon Jun 22 03:50:19 IST 2026
[2026-06-22 03:50:19,599.599 INFO    ] ================================================
[2026-06-22 03:50:20,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:50:20
[2026-06-22 03:50:20,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:50:20,939.939 INFO    ] Initializing speech engine...
[2026-06-22 03:50:20,949.949 INFO    ] 2026-06-22 03:50:20
[2026-06-22 03:50:21,198.198 INFO    ] 2026-06-22 03:50:21
[2026-06-22 03:50:21,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:50:21,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:50:21,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:50:21,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:50:21,588.588 INFO    ] time= 22/06/2026 03:50:21
[2026-06-22 03:50:21,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:50:21,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:50:21,756.756 INFO    ] No existing commands found in stream
[2026-06-22 03:50:26,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:50:26,789.789 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-22 03:50:29,653.653 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:50:29,656.656 INFO    ] Checking for system updates...
[2026-06-22 03:50:29,692.692 INFO    ] 200
[2026-06-22 03:50:29,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:50:29,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:50:29,750.750 INFO    ] No update needed
[2026-06-22 03:50:29,752.752 INFO    ] Checking for camera pi updates...
[2026-06-22 03:50:29,786.786 INFO    ] 200
[2026-06-22 03:50:29,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:50:29,829.829 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:50:29,913.913 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:50:29,915.915 INFO    ] No camera update needed
[2026-06-22 03:50:29,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:50:29,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:50:29,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:50:29,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:50:31,974.974 INFO    ] ================================================
[2026-06-22 03:50:31,990.990 INFO    ] Launching Daemon at Mon Jun 22 03:50:31 IST 2026
[2026-06-22 03:50:32,001.001 INFO    ] ================================================
[2026-06-22 03:50:32,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:50:32
[2026-06-22 03:50:33,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:50:33,541.541 INFO    ] Initializing speech engine...
[2026-06-22 03:50:33,565.565 INFO    ] 2026-06-22 03:50:33
[2026-06-22 03:50:33,823.823 INFO    ] 2026-06-22 03:50:33
[2026-06-22 03:50:33,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:50:34,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:50:34,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:50:34,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:50:34,179.179 INFO    ] time= 22/06/2026 03:50:34
[2026-06-22 03:50:34,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:50:34,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:50:34,261.261 INFO    ] No existing commands found in stream
[2026-06-22 03:50:39,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:50:39,274.274 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-22 03:50:40,821.821 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:50:40,824.824 INFO    ] Checking for system updates...
[2026-06-22 03:50:40,860.860 INFO    ] 200
[2026-06-22 03:50:40,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:50:40,920.920 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:50:40,923.923 INFO    ] No update needed
[2026-06-22 03:50:40,925.925 INFO    ] Checking for camera pi updates...
[2026-06-22 03:50:40,960.960 INFO    ] 200
[2026-06-22 03:50:40,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:50:40,991.991 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:50:41,088.088 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:50:41,091.091 INFO    ] No camera update needed
[2026-06-22 03:50:41,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:50:41,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:50:41,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:50:41,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:50:43,147.147 INFO    ] ================================================
[2026-06-22 03:50:43,163.163 INFO    ] Launching Daemon at Mon Jun 22 03:50:43 IST 2026
[2026-06-22 03:50:43,174.174 INFO    ] ================================================
[2026-06-22 03:50:43,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:50:43
[2026-06-22 03:50:44,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:50:44,603.603 INFO    ] Initializing speech engine...
[2026-06-22 03:50:44,612.612 INFO    ] 2026-06-22 03:50:44
[2026-06-22 03:50:44,871.871 INFO    ] 2026-06-22 03:50:44
[2026-06-22 03:50:44,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:50:45,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:50:45,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:50:45,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:50:45,284.284 INFO    ] time= 22/06/2026 03:50:45
[2026-06-22 03:50:45,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:50:45,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:50:45,476.476 INFO    ] No existing commands found in stream
[2026-06-22 03:50:50,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:50:50,510.510 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-22 03:50:52,611.611 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:50:52,613.613 INFO    ] Checking for system updates...
[2026-06-22 03:50:52,634.634 INFO    ] 200
[2026-06-22 03:50:52,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:50:52,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:50:52,668.668 INFO    ] No update needed
[2026-06-22 03:50:52,669.669 INFO    ] Checking for camera pi updates...
[2026-06-22 03:50:52,702.702 INFO    ] 200
[2026-06-22 03:50:52,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:50:52,752.752 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:50:52,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:50:52,804.804 INFO    ] No camera update needed
[2026-06-22 03:50:52,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:50:52,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:50:52,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:50:52,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:50:54,864.864 INFO    ] ================================================
[2026-06-22 03:50:54,879.879 INFO    ] Launching Daemon at Mon Jun 22 03:50:54 IST 2026
[2026-06-22 03:50:54,890.890 INFO    ] ================================================
[2026-06-22 03:50:55,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:50:55
[2026-06-22 03:50:55,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:50:56,282.282 INFO    ] Initializing speech engine...
[2026-06-22 03:50:56,289.289 INFO    ] 2026-06-22 03:50:56
[2026-06-22 03:50:56,567.567 INFO    ] 2026-06-22 03:50:56
[2026-06-22 03:50:56,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:50:56,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:50:56,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:50:56,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:50:56,905.905 INFO    ] time= 22/06/2026 03:50:56
[2026-06-22 03:50:56,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:50:56,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:50:57,019.019 INFO    ] No existing commands found in stream
[2026-06-22 03:51:02,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:51:02,040.040 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-22 03:51:02,753.753 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:51:02,755.755 INFO    ] Checking for system updates...
[2026-06-22 03:51:02,794.794 INFO    ] 200
[2026-06-22 03:51:02,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:51:02,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:51:02,869.869 INFO    ] No update needed
[2026-06-22 03:51:02,872.872 INFO    ] Checking for camera pi updates...
[2026-06-22 03:51:02,907.907 INFO    ] 200
[2026-06-22 03:51:02,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:51:02,956.956 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:51:03,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:51:03,041.041 INFO    ] No camera update needed
[2026-06-22 03:51:03,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:51:03,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:51:03,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:51:03,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:51:05,101.101 INFO    ] ================================================
[2026-06-22 03:51:05,120.120 INFO    ] Launching Daemon at Mon Jun 22 03:51:05 IST 2026
[2026-06-22 03:51:05,132.132 INFO    ] ================================================
[2026-06-22 03:51:05,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:51:05
[2026-06-22 03:51:06,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:51:06,712.712 INFO    ] Initializing speech engine...
[2026-06-22 03:51:06,725.725 INFO    ] 2026-06-22 03:51:06
[2026-06-22 03:51:07,035.035 INFO    ] 2026-06-22 03:51:07
[2026-06-22 03:51:07,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:51:07,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:51:07,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:51:07,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:51:07,475.475 INFO    ] time= 22/06/2026 03:51:07
[2026-06-22 03:51:07,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:51:07,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:51:07,622.622 INFO    ] No existing commands found in stream
[2026-06-22 03:51:12,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:51:12,638.638 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-22 03:51:15,586.586 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:51:15,588.588 INFO    ] Checking for system updates...
[2026-06-22 03:51:15,625.625 INFO    ] 200
[2026-06-22 03:51:15,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:51:15,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:51:15,690.690 INFO    ] No update needed
[2026-06-22 03:51:15,692.692 INFO    ] Checking for camera pi updates...
[2026-06-22 03:51:15,729.729 INFO    ] 200
[2026-06-22 03:51:15,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:51:15,774.774 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:51:15,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:51:15,833.833 INFO    ] No camera update needed
[2026-06-22 03:51:15,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:51:15,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:51:15,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:51:15,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:51:17,889.889 INFO    ] ================================================
[2026-06-22 03:51:17,904.904 INFO    ] Launching Daemon at Mon Jun 22 03:51:17 IST 2026
[2026-06-22 03:51:17,915.915 INFO    ] ================================================
[2026-06-22 03:51:18,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:51:18
[2026-06-22 03:51:19,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:51:19,519.519 INFO    ] Initializing speech engine...
[2026-06-22 03:51:19,531.531 INFO    ] 2026-06-22 03:51:19
[2026-06-22 03:51:19,849.849 INFO    ] 2026-06-22 03:51:19
[2026-06-22 03:51:19,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:51:20,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:51:20,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:51:20,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:51:20,280.280 INFO    ] time= 22/06/2026 03:51:20
[2026-06-22 03:51:20,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:51:20,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:51:20,424.424 INFO    ] No existing commands found in stream
[2026-06-22 03:51:25,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:51:25,439.439 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-22 03:51:29,765.765 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:51:29,768.768 INFO    ] Checking for system updates...
[2026-06-22 03:51:29,803.803 INFO    ] 200
[2026-06-22 03:51:29,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:51:29,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:51:29,861.861 INFO    ] No update needed
[2026-06-22 03:51:29,864.864 INFO    ] Checking for camera pi updates...
[2026-06-22 03:51:29,897.897 INFO    ] 200
[2026-06-22 03:51:29,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:51:29,940.940 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:51:30,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:51:30,035.035 INFO    ] No camera update needed
[2026-06-22 03:51:30,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:51:30,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:51:30,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:51:30,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:51:32,085.085 INFO    ] ================================================
[2026-06-22 03:51:32,101.101 INFO    ] Launching Daemon at Mon Jun 22 03:51:32 IST 2026
[2026-06-22 03:51:32,112.112 INFO    ] ================================================
[2026-06-22 03:51:32,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:51:32
[2026-06-22 03:51:33,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:51:33,592.592 INFO    ] Initializing speech engine...
[2026-06-22 03:51:33,601.601 INFO    ] 2026-06-22 03:51:33
[2026-06-22 03:51:33,868.868 INFO    ] 2026-06-22 03:51:33
[2026-06-22 03:51:33,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:51:34,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:51:34,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:51:34,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:51:34,233.233 INFO    ] time= 22/06/2026 03:51:34
[2026-06-22 03:51:34,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:51:34,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:51:34,344.344 INFO    ] No existing commands found in stream
[2026-06-22 03:51:39,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:51:39,360.360 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-22 03:51:43,719.719 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:51:43,722.722 INFO    ] Checking for system updates...
[2026-06-22 03:51:43,762.762 INFO    ] 200
[2026-06-22 03:51:43,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:51:43,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:51:43,821.821 INFO    ] No update needed
[2026-06-22 03:51:43,823.823 INFO    ] Checking for camera pi updates...
[2026-06-22 03:51:43,857.857 INFO    ] 200
[2026-06-22 03:51:43,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:51:43,905.905 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:51:43,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:51:43,988.988 INFO    ] No camera update needed
[2026-06-22 03:51:43,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:51:43,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:51:43,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:51:44,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:51:46,045.045 INFO    ] ================================================
[2026-06-22 03:51:46,062.062 INFO    ] Launching Daemon at Mon Jun 22 03:51:46 IST 2026
[2026-06-22 03:51:46,073.073 INFO    ] ================================================
[2026-06-22 03:51:46,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:51:46
[2026-06-22 03:51:47,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:51:47,513.513 INFO    ] Initializing speech engine...
[2026-06-22 03:51:47,523.523 INFO    ] 2026-06-22 03:51:47
[2026-06-22 03:51:47,769.769 INFO    ] 2026-06-22 03:51:47
[2026-06-22 03:51:47,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:51:47,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:51:47,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:51:48,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:51:48,128.128 INFO    ] time= 22/06/2026 03:51:48
[2026-06-22 03:51:48,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:51:48,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:51:48,248.248 INFO    ] No existing commands found in stream
[2026-06-22 03:51:53,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:51:53,268.268 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-22 03:51:57,301.301 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:51:57,303.303 INFO    ] Checking for system updates...
[2026-06-22 03:51:57,325.325 INFO    ] 200
[2026-06-22 03:51:57,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:51:57,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:51:57,367.367 INFO    ] No update needed
[2026-06-22 03:51:57,370.370 INFO    ] Checking for camera pi updates...
[2026-06-22 03:51:57,404.404 INFO    ] 200
[2026-06-22 03:51:57,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:51:57,448.448 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:51:57,647.647 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:51:57,649.649 INFO    ] No camera update needed
[2026-06-22 03:51:57,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:51:57,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:51:57,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:51:57,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:51:59,705.705 INFO    ] ================================================
[2026-06-22 03:51:59,721.721 INFO    ] Launching Daemon at Mon Jun 22 03:51:59 IST 2026
[2026-06-22 03:51:59,732.732 INFO    ] ================================================
[2026-06-22 03:52:00,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:52:00
[2026-06-22 03:52:00,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:52:01,110.110 INFO    ] Initializing speech engine...
[2026-06-22 03:52:01,119.119 INFO    ] 2026-06-22 03:52:01
[2026-06-22 03:52:01,384.384 INFO    ] 2026-06-22 03:52:01
[2026-06-22 03:52:01,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:52:01,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:52:01,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:52:01,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:52:01,852.852 INFO    ] time= 22/06/2026 03:52:01
[2026-06-22 03:52:01,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:52:01,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:52:02,002.002 INFO    ] No existing commands found in stream
[2026-06-22 03:52:07,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:52:07,016.016 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-22 03:52:08,366.366 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:52:08,368.368 INFO    ] Checking for system updates...
[2026-06-22 03:52:08,407.407 INFO    ] 200
[2026-06-22 03:52:08,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:52:08,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:52:08,466.466 INFO    ] No update needed
[2026-06-22 03:52:08,469.469 INFO    ] Checking for camera pi updates...
[2026-06-22 03:52:08,507.507 INFO    ] 200
[2026-06-22 03:52:08,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:52:08,555.555 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:52:08,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:52:08,645.645 INFO    ] No camera update needed
[2026-06-22 03:52:08,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:52:08,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:52:08,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:52:08,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:52:10,703.703 INFO    ] ================================================
[2026-06-22 03:52:10,719.719 INFO    ] Launching Daemon at Mon Jun 22 03:52:10 IST 2026
[2026-06-22 03:52:10,730.730 INFO    ] ================================================
[2026-06-22 03:52:11,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:52:11
[2026-06-22 03:52:11,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:52:12,246.246 INFO    ] Initializing speech engine...
[2026-06-22 03:52:12,258.258 INFO    ] 2026-06-22 03:52:12
[2026-06-22 03:52:12,538.538 INFO    ] 2026-06-22 03:52:12
[2026-06-22 03:52:12,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:52:12,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:52:12,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:52:12,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:52:12,963.963 INFO    ] time= 22/06/2026 03:52:12
[2026-06-22 03:52:13,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:52:13,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:52:13,147.147 INFO    ] No existing commands found in stream
[2026-06-22 03:52:18,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:52:18,163.163 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-22 03:52:20,197.197 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:52:20,199.199 INFO    ] Checking for system updates...
[2026-06-22 03:52:20,221.221 INFO    ] 200
[2026-06-22 03:52:20,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:52:20,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:52:20,263.263 INFO    ] No update needed
[2026-06-22 03:52:20,266.266 INFO    ] Checking for camera pi updates...
[2026-06-22 03:52:20,304.304 INFO    ] 200
[2026-06-22 03:52:20,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:52:20,353.353 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:52:20,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:52:20,429.429 INFO    ] No camera update needed
[2026-06-22 03:52:20,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:52:20,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:52:20,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:52:20,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:52:22,487.487 INFO    ] ================================================
[2026-06-22 03:52:22,502.502 INFO    ] Launching Daemon at Mon Jun 22 03:52:22 IST 2026
[2026-06-22 03:52:22,514.514 INFO    ] ================================================
[2026-06-22 03:52:23,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:52:23
[2026-06-22 03:52:23,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:52:23,849.849 INFO    ] Initializing speech engine...
[2026-06-22 03:52:23,865.865 INFO    ] 2026-06-22 03:52:23
[2026-06-22 03:52:24,150.150 INFO    ] 2026-06-22 03:52:24
[2026-06-22 03:52:24,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:52:24,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:52:24,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:52:24,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:52:24,532.532 INFO    ] time= 22/06/2026 03:52:24
[2026-06-22 03:52:24,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:52:24,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:52:24,656.656 INFO    ] No existing commands found in stream
[2026-06-22 03:52:29,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:52:29,672.672 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-22 03:52:31,471.471 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:52:31,473.473 INFO    ] Checking for system updates...
[2026-06-22 03:52:31,512.512 INFO    ] 200
[2026-06-22 03:52:31,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:52:31,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:52:31,570.570 INFO    ] No update needed
[2026-06-22 03:52:31,573.573 INFO    ] Checking for camera pi updates...
[2026-06-22 03:52:31,607.607 INFO    ] 200
[2026-06-22 03:52:31,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:52:31,649.649 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:52:31,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:52:31,728.728 INFO    ] No camera update needed
[2026-06-22 03:52:31,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:52:31,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:52:31,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:52:31,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:52:33,784.784 INFO    ] ================================================
[2026-06-22 03:52:33,800.800 INFO    ] Launching Daemon at Mon Jun 22 03:52:33 IST 2026
[2026-06-22 03:52:33,811.811 INFO    ] ================================================
[2026-06-22 03:52:34,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:52:34
[2026-06-22 03:52:35,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:52:35,408.408 INFO    ] Initializing speech engine...
[2026-06-22 03:52:35,418.418 INFO    ] 2026-06-22 03:52:35
[2026-06-22 03:52:35,702.702 INFO    ] 2026-06-22 03:52:35
[2026-06-22 03:52:35,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:52:35,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:52:35,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:52:36,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:52:36,169.169 INFO    ] time= 22/06/2026 03:52:36
[2026-06-22 03:52:36,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:52:36,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:52:36,376.376 INFO    ] No existing commands found in stream
[2026-06-22 03:52:41,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:52:41,407.407 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-22 03:52:45,557.557 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:52:45,560.560 INFO    ] Checking for system updates...
[2026-06-22 03:52:45,595.595 INFO    ] 200
[2026-06-22 03:52:45,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:52:45,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:52:45,659.659 INFO    ] No update needed
[2026-06-22 03:52:45,662.662 INFO    ] Checking for camera pi updates...
[2026-06-22 03:52:45,696.696 INFO    ] 200
[2026-06-22 03:52:45,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:52:45,745.745 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:52:45,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:52:45,825.825 INFO    ] No camera update needed
[2026-06-22 03:52:45,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:52:45,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:52:45,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:52:45,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:52:47,881.881 INFO    ] ================================================
[2026-06-22 03:52:47,897.897 INFO    ] Launching Daemon at Mon Jun 22 03:52:47 IST 2026
[2026-06-22 03:52:47,908.908 INFO    ] ================================================
[2026-06-22 03:52:48,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:52:48
[2026-06-22 03:52:49,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:52:49,293.293 INFO    ] Initializing speech engine...
[2026-06-22 03:52:49,304.304 INFO    ] 2026-06-22 03:52:49
[2026-06-22 03:52:49,601.601 INFO    ] 2026-06-22 03:52:49
[2026-06-22 03:52:49,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:52:49,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:52:49,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:52:50,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:52:50,073.073 INFO    ] time= 22/06/2026 03:52:50
[2026-06-22 03:52:50,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:52:50,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:52:50,242.242 INFO    ] No existing commands found in stream
[2026-06-22 03:52:55,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:52:55,258.258 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-22 03:52:56,006.006 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:52:56,008.008 INFO    ] Checking for system updates...
[2026-06-22 03:52:56,028.028 INFO    ] 200
[2026-06-22 03:52:56,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:52:56,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:52:56,062.062 INFO    ] No update needed
[2026-06-22 03:52:56,063.063 INFO    ] Checking for camera pi updates...
[2026-06-22 03:52:56,093.093 INFO    ] 200
[2026-06-22 03:52:56,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:52:56,141.141 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:52:56,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:52:56,198.198 INFO    ] No camera update needed
[2026-06-22 03:52:56,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:52:56,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:52:56,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:52:56,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:52:58,257.257 INFO    ] ================================================
[2026-06-22 03:52:58,272.272 INFO    ] Launching Daemon at Mon Jun 22 03:52:58 IST 2026
[2026-06-22 03:52:58,283.283 INFO    ] ================================================
[2026-06-22 03:52:58,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:52:58
[2026-06-22 03:52:59,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:52:59,621.621 INFO    ] Initializing speech engine...
[2026-06-22 03:52:59,644.644 INFO    ] 2026-06-22 03:52:59
[2026-06-22 03:52:59,919.919 INFO    ] 2026-06-22 03:52:59
[2026-06-22 03:52:59,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:53:00,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:53:00,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:53:00,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:53:00,292.292 INFO    ] time= 22/06/2026 03:53:00
[2026-06-22 03:53:00,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:53:00,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:53:00,418.418 INFO    ] No existing commands found in stream
[2026-06-22 03:53:05,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:53:05,430.430 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-22 03:53:05,965.965 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:53:05,967.967 INFO    ] Checking for system updates...
[2026-06-22 03:53:06,004.004 INFO    ] 200
[2026-06-22 03:53:06,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:53:06,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:53:06,063.063 INFO    ] No update needed
[2026-06-22 03:53:06,065.065 INFO    ] Checking for camera pi updates...
[2026-06-22 03:53:06,099.099 INFO    ] 200
[2026-06-22 03:53:06,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:53:06,141.141 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:53:06,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:53:06,210.210 INFO    ] No camera update needed
[2026-06-22 03:53:06,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:53:06,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:53:06,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:53:06,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:53:08,265.265 INFO    ] ================================================
[2026-06-22 03:53:08,281.281 INFO    ] Launching Daemon at Mon Jun 22 03:53:08 IST 2026
[2026-06-22 03:53:08,292.292 INFO    ] ================================================
[2026-06-22 03:53:08,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:53:08
[2026-06-22 03:53:09,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:53:09,728.728 INFO    ] Initializing speech engine...
[2026-06-22 03:53:09,752.752 INFO    ] 2026-06-22 03:53:09
[2026-06-22 03:53:10,024.024 INFO    ] 2026-06-22 03:53:10
[2026-06-22 03:53:10,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:53:10,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:53:10,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:53:10,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:53:10,402.402 INFO    ] time= 22/06/2026 03:53:10
[2026-06-22 03:53:10,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:53:10,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:53:10,526.526 INFO    ] No existing commands found in stream
[2026-06-22 03:53:15,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:53:15,538.538 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-22 03:53:17,782.782 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:53:17,784.784 INFO    ] Checking for system updates...
[2026-06-22 03:53:17,823.823 INFO    ] 200
[2026-06-22 03:53:17,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:53:17,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:53:17,887.887 INFO    ] No update needed
[2026-06-22 03:53:17,889.889 INFO    ] Checking for camera pi updates...
[2026-06-22 03:53:17,926.926 INFO    ] 200
[2026-06-22 03:53:17,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:53:17,969.969 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:53:18,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:53:18,037.037 INFO    ] No camera update needed
[2026-06-22 03:53:18,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:53:18,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:53:18,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:53:18,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:53:20,093.093 INFO    ] ================================================
[2026-06-22 03:53:20,108.108 INFO    ] Launching Daemon at Mon Jun 22 03:53:20 IST 2026
[2026-06-22 03:53:20,119.119 INFO    ] ================================================
[2026-06-22 03:53:20,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:53:20
[2026-06-22 03:53:21,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:53:21,498.498 INFO    ] Initializing speech engine...
[2026-06-22 03:53:21,504.504 INFO    ] 2026-06-22 03:53:21
[2026-06-22 03:53:21,763.763 INFO    ] 2026-06-22 03:53:21
[2026-06-22 03:53:21,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:53:22,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:53:22,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:53:22,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:53:22,204.204 INFO    ] time= 22/06/2026 03:53:22
[2026-06-22 03:53:22,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:53:22,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:53:22,368.368 INFO    ] No existing commands found in stream
[2026-06-22 03:53:27,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:53:27,383.383 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-22 03:53:31,449.449 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:53:31,451.451 INFO    ] Checking for system updates...
[2026-06-22 03:53:31,472.472 INFO    ] 200
[2026-06-22 03:53:31,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:53:31,517.517 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:53:31,520.520 INFO    ] No update needed
[2026-06-22 03:53:31,522.522 INFO    ] Checking for camera pi updates...
[2026-06-22 03:53:31,556.556 INFO    ] 200
[2026-06-22 03:53:31,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:53:31,599.599 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:53:31,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:53:31,677.677 INFO    ] No camera update needed
[2026-06-22 03:53:31,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:53:31,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:53:31,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:53:31,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:53:33,735.735 INFO    ] ================================================
[2026-06-22 03:53:33,750.750 INFO    ] Launching Daemon at Mon Jun 22 03:53:33 IST 2026
[2026-06-22 03:53:33,761.761 INFO    ] ================================================
[2026-06-22 03:53:34,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:53:34
[2026-06-22 03:53:34,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:53:35,204.204 INFO    ] Initializing speech engine...
[2026-06-22 03:53:35,213.213 INFO    ] 2026-06-22 03:53:35
[2026-06-22 03:53:35,508.508 INFO    ] 2026-06-22 03:53:35
[2026-06-22 03:53:35,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:53:35,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:53:35,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:53:35,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:53:35,883.883 INFO    ] time= 22/06/2026 03:53:35
[2026-06-22 03:53:35,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:53:35,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:53:36,008.008 INFO    ] No existing commands found in stream
[2026-06-22 03:53:41,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:53:41,022.022 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-22 03:53:43,084.084 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:53:43,087.087 INFO    ] Checking for system updates...
[2026-06-22 03:53:43,123.123 INFO    ] 200
[2026-06-22 03:53:43,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:53:43,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:53:43,181.181 INFO    ] No update needed
[2026-06-22 03:53:43,184.184 INFO    ] Checking for camera pi updates...
[2026-06-22 03:53:43,217.217 INFO    ] 200
[2026-06-22 03:53:43,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:53:43,259.259 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:53:43,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:53:43,338.338 INFO    ] No camera update needed
[2026-06-22 03:53:43,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:53:43,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:53:43,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:53:43,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:53:45,393.393 INFO    ] ================================================
[2026-06-22 03:53:45,408.408 INFO    ] Launching Daemon at Mon Jun 22 03:53:45 IST 2026
[2026-06-22 03:53:45,419.419 INFO    ] ================================================
[2026-06-22 03:53:46,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:53:46
[2026-06-22 03:53:46,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:53:47,048.048 INFO    ] Initializing speech engine...
[2026-06-22 03:53:47,057.057 INFO    ] 2026-06-22 03:53:47
[2026-06-22 03:53:47,335.335 INFO    ] 2026-06-22 03:53:47
[2026-06-22 03:53:47,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:53:47,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:53:47,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:53:47,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:53:47,784.784 INFO    ] time= 22/06/2026 03:53:47
[2026-06-22 03:53:47,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:53:47,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:53:47,962.962 INFO    ] No existing commands found in stream
[2026-06-22 03:53:52,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:53:52,978.978 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-22 03:53:55,809.809 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:53:55,812.812 INFO    ] Checking for system updates...
[2026-06-22 03:53:55,855.855 INFO    ] 200
[2026-06-22 03:53:55,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:53:55,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:53:55,930.930 INFO    ] No update needed
[2026-06-22 03:53:55,934.934 INFO    ] Checking for camera pi updates...
[2026-06-22 03:53:55,970.970 INFO    ] 200
[2026-06-22 03:53:55,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:53:56,017.017 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:53:56,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:53:56,094.094 INFO    ] No camera update needed
[2026-06-22 03:53:56,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:53:56,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:53:56,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:53:56,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:53:58,155.155 INFO    ] ================================================
[2026-06-22 03:53:58,170.170 INFO    ] Launching Daemon at Mon Jun 22 03:53:58 IST 2026
[2026-06-22 03:53:58,182.182 INFO    ] ================================================
[2026-06-22 03:53:58,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:53:58
[2026-06-22 03:53:59,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:53:59,684.684 INFO    ] Initializing speech engine...
[2026-06-22 03:53:59,694.694 INFO    ] 2026-06-22 03:53:59
[2026-06-22 03:53:59,942.942 INFO    ] 2026-06-22 03:53:59
[2026-06-22 03:53:59,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:54:00,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:54:00,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:54:00,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:54:00,313.313 INFO    ] time= 22/06/2026 03:54:00
[2026-06-22 03:54:00,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:54:00,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:54:00,492.492 INFO    ] No existing commands found in stream
[2026-06-22 03:54:05,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:54:05,525.525 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-22 03:54:08,492.492 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:54:08,494.494 INFO    ] Checking for system updates...
[2026-06-22 03:54:08,530.530 INFO    ] 200
[2026-06-22 03:54:08,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:54:08,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:54:08,589.589 INFO    ] No update needed
[2026-06-22 03:54:08,592.592 INFO    ] Checking for camera pi updates...
[2026-06-22 03:54:08,629.629 INFO    ] 200
[2026-06-22 03:54:08,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:54:08,673.673 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:54:08,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:54:08,744.744 INFO    ] No camera update needed
[2026-06-22 03:54:08,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:54:08,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:54:08,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:54:08,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:54:10,800.800 INFO    ] ================================================
[2026-06-22 03:54:10,816.816 INFO    ] Launching Daemon at Mon Jun 22 03:54:10 IST 2026
[2026-06-22 03:54:10,826.826 INFO    ] ================================================
[2026-06-22 03:54:11,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:54:11
[2026-06-22 03:54:11,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:54:12,178.178 INFO    ] Initializing speech engine...
[2026-06-22 03:54:12,200.200 INFO    ] 2026-06-22 03:54:12
[2026-06-22 03:54:12,457.457 INFO    ] 2026-06-22 03:54:12
[2026-06-22 03:54:12,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:54:12,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:54:12,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:54:12,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:54:12,938.938 INFO    ] time= 22/06/2026 03:54:12
[2026-06-22 03:54:12,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:54:13,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:54:13,076.076 INFO    ] No existing commands found in stream
[2026-06-22 03:54:18,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:54:18,090.090 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-22 03:54:18,506.506 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:54:18,507.507 INFO    ] Checking for system updates...
[2026-06-22 03:54:18,528.528 INFO    ] 200
[2026-06-22 03:54:18,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:54:18,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:54:18,560.560 INFO    ] No update needed
[2026-06-22 03:54:18,562.562 INFO    ] Checking for camera pi updates...
[2026-06-22 03:54:18,581.581 INFO    ] 200
[2026-06-22 03:54:18,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:54:18,610.610 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:54:18,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:54:18,691.691 INFO    ] No camera update needed
[2026-06-22 03:54:18,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:54:18,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:54:18,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:54:18,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:54:20,747.747 INFO    ] ================================================
[2026-06-22 03:54:20,764.764 INFO    ] Launching Daemon at Mon Jun 22 03:54:20 IST 2026
[2026-06-22 03:54:20,776.776 INFO    ] ================================================
[2026-06-22 03:54:21,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:54:21
[2026-06-22 03:54:22,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:54:22,450.450 INFO    ] Initializing speech engine...
[2026-06-22 03:54:22,460.460 INFO    ] 2026-06-22 03:54:22
[2026-06-22 03:54:22,735.735 INFO    ] 2026-06-22 03:54:22
[2026-06-22 03:54:22,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:54:23,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:54:23,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:54:23,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:54:23,233.233 INFO    ] time= 22/06/2026 03:54:23
[2026-06-22 03:54:23,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:54:23,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:54:23,453.453 INFO    ] No existing commands found in stream
[2026-06-22 03:54:28,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:54:28,484.484 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-22 03:54:31,095.095 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:54:31,097.097 INFO    ] Checking for system updates...
[2026-06-22 03:54:31,121.121 INFO    ] 200
[2026-06-22 03:54:31,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:54:31,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:54:31,179.179 INFO    ] No update needed
[2026-06-22 03:54:31,181.181 INFO    ] Checking for camera pi updates...
[2026-06-22 03:54:31,219.219 INFO    ] 200
[2026-06-22 03:54:31,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:54:31,262.262 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:54:31,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:54:31,370.370 INFO    ] No camera update needed
[2026-06-22 03:54:31,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:54:31,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:54:31,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:54:31,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:54:33,426.426 INFO    ] ================================================
[2026-06-22 03:54:33,441.441 INFO    ] Launching Daemon at Mon Jun 22 03:54:33 IST 2026
[2026-06-22 03:54:33,452.452 INFO    ] ================================================
[2026-06-22 03:54:34,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:54:34
[2026-06-22 03:54:34,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:54:34,911.911 INFO    ] Initializing speech engine...
[2026-06-22 03:54:34,924.924 INFO    ] 2026-06-22 03:54:34
[2026-06-22 03:54:35,171.171 INFO    ] 2026-06-22 03:54:35
[2026-06-22 03:54:35,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:54:35,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:54:35,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:54:35,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:54:35,665.665 INFO    ] time= 22/06/2026 03:54:35
[2026-06-22 03:54:35,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:54:35,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:54:35,862.862 INFO    ] No existing commands found in stream
[2026-06-22 03:54:40,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:54:40,891.891 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-22 03:54:44,342.342 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:54:44,345.345 INFO    ] Checking for system updates...
[2026-06-22 03:54:44,382.382 INFO    ] 200
[2026-06-22 03:54:44,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:54:44,438.438 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:54:44,440.440 INFO    ] No update needed
[2026-06-22 03:54:44,442.442 INFO    ] Checking for camera pi updates...
[2026-06-22 03:54:44,476.476 INFO    ] 200
[2026-06-22 03:54:44,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:54:44,524.524 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:54:44,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:54:44,619.619 INFO    ] No camera update needed
[2026-06-22 03:54:44,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:54:44,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:54:44,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:54:44,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:54:46,676.676 INFO    ] ================================================
[2026-06-22 03:54:46,690.690 INFO    ] Launching Daemon at Mon Jun 22 03:54:46 IST 2026
[2026-06-22 03:54:46,701.701 INFO    ] ================================================
[2026-06-22 03:54:47,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:54:47
[2026-06-22 03:54:47,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:54:48,142.142 INFO    ] Initializing speech engine...
[2026-06-22 03:54:48,151.151 INFO    ] 2026-06-22 03:54:48
[2026-06-22 03:54:48,400.400 INFO    ] 2026-06-22 03:54:48
[2026-06-22 03:54:48,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:54:48,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:54:48,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:54:48,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:54:48,769.769 INFO    ] time= 22/06/2026 03:54:48
[2026-06-22 03:54:48,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:54:48,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:54:48,942.942 INFO    ] No existing commands found in stream
[2026-06-22 03:54:53,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:54:53,976.976 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-22 03:54:56,087.087 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:54:56,090.090 INFO    ] Checking for system updates...
[2026-06-22 03:54:56,126.126 INFO    ] 200
[2026-06-22 03:54:56,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:54:56,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:54:56,184.184 INFO    ] No update needed
[2026-06-22 03:54:56,187.187 INFO    ] Checking for camera pi updates...
[2026-06-22 03:54:56,224.224 INFO    ] 200
[2026-06-22 03:54:56,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:54:56,272.272 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:54:56,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:54:56,356.356 INFO    ] No camera update needed
[2026-06-22 03:54:56,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:54:56,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:54:56,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:54:56,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:54:58,412.412 INFO    ] ================================================
[2026-06-22 03:54:58,427.427 INFO    ] Launching Daemon at Mon Jun 22 03:54:58 IST 2026
[2026-06-22 03:54:58,438.438 INFO    ] ================================================
[2026-06-22 03:54:58,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:54:58
[2026-06-22 03:54:59,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:54:59,796.796 INFO    ] Initializing speech engine...
[2026-06-22 03:54:59,802.802 INFO    ] 2026-06-22 03:54:59
[2026-06-22 03:55:00,053.053 INFO    ] 2026-06-22 03:55:00
[2026-06-22 03:55:00,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:55:00,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:55:00,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:55:00,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:55:00,393.393 INFO    ] time= 22/06/2026 03:55:00
[2026-06-22 03:55:00,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:55:00,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:55:00,507.507 INFO    ] No existing commands found in stream
[2026-06-22 03:55:05,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:55:05,519.519 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-22 03:55:08,399.399 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:55:08,402.402 INFO    ] Checking for system updates...
[2026-06-22 03:55:08,441.441 INFO    ] 200
[2026-06-22 03:55:08,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:55:08,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:55:08,499.499 INFO    ] No update needed
[2026-06-22 03:55:08,501.501 INFO    ] Checking for camera pi updates...
[2026-06-22 03:55:08,534.534 INFO    ] 200
[2026-06-22 03:55:08,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:55:08,581.581 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:55:08,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:55:08,671.671 INFO    ] No camera update needed
[2026-06-22 03:55:08,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:55:08,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:55:08,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:55:08,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:55:10,726.726 INFO    ] ================================================
[2026-06-22 03:55:10,741.741 INFO    ] Launching Daemon at Mon Jun 22 03:55:10 IST 2026
[2026-06-22 03:55:10,752.752 INFO    ] ================================================
[2026-06-22 03:55:11,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:55:11
[2026-06-22 03:55:11,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:55:12,218.218 INFO    ] Initializing speech engine...
[2026-06-22 03:55:12,229.229 INFO    ] 2026-06-22 03:55:12
[2026-06-22 03:55:12,477.477 INFO    ] 2026-06-22 03:55:12
[2026-06-22 03:55:12,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:55:12,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:55:12,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:55:12,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:55:12,849.849 INFO    ] time= 22/06/2026 03:55:12
[2026-06-22 03:55:12,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:55:12,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:55:13,021.021 INFO    ] No existing commands found in stream
[2026-06-22 03:55:18,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:55:18,055.055 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-22 03:55:21,576.576 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:55:21,579.579 INFO    ] Checking for system updates...
[2026-06-22 03:55:21,616.616 INFO    ] 200
[2026-06-22 03:55:21,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:55:21,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:55:21,677.677 INFO    ] No update needed
[2026-06-22 03:55:21,679.679 INFO    ] Checking for camera pi updates...
[2026-06-22 03:55:21,713.713 INFO    ] 200
[2026-06-22 03:55:21,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:55:21,756.756 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:55:21,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:55:21,832.832 INFO    ] No camera update needed
[2026-06-22 03:55:21,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:55:21,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:55:21,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:55:21,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:55:23,887.887 INFO    ] ================================================
[2026-06-22 03:55:23,903.903 INFO    ] Launching Daemon at Mon Jun 22 03:55:23 IST 2026
[2026-06-22 03:55:23,913.913 INFO    ] ================================================
[2026-06-22 03:55:24,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:55:24
[2026-06-22 03:55:24,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:55:25,230.230 INFO    ] Initializing speech engine...
[2026-06-22 03:55:25,237.237 INFO    ] 2026-06-22 03:55:25
[2026-06-22 03:55:25,533.533 INFO    ] 2026-06-22 03:55:25
[2026-06-22 03:55:25,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:55:25,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:55:25,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:55:25,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:55:25,908.908 INFO    ] time= 22/06/2026 03:55:25
[2026-06-22 03:55:25,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:55:25,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:55:26,030.030 INFO    ] No existing commands found in stream
[2026-06-22 03:55:31,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:55:31,045.045 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-22 03:55:33,045.045 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:55:33,048.048 INFO    ] Checking for system updates...
[2026-06-22 03:55:33,090.090 INFO    ] 200
[2026-06-22 03:55:33,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:55:33,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:55:33,154.154 INFO    ] No update needed
[2026-06-22 03:55:33,157.157 INFO    ] Checking for camera pi updates...
[2026-06-22 03:55:33,200.200 INFO    ] 200
[2026-06-22 03:55:33,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:55:33,254.254 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:55:33,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:55:33,340.340 INFO    ] No camera update needed
[2026-06-22 03:55:33,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:55:33,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:55:33,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:55:33,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:55:35,397.397 INFO    ] ================================================
[2026-06-22 03:55:35,412.412 INFO    ] Launching Daemon at Mon Jun 22 03:55:35 IST 2026
[2026-06-22 03:55:35,423.423 INFO    ] ================================================
[2026-06-22 03:55:35,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:55:35
[2026-06-22 03:55:36,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:55:36,761.761 INFO    ] Initializing speech engine...
[2026-06-22 03:55:36,779.779 INFO    ] 2026-06-22 03:55:36
[2026-06-22 03:55:37,034.034 INFO    ] 2026-06-22 03:55:37
[2026-06-22 03:55:37,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:55:37,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:55:37,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:55:37,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:55:37,376.376 INFO    ] time= 22/06/2026 03:55:37
[2026-06-22 03:55:37,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:55:37,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:55:37,492.492 INFO    ] No existing commands found in stream
[2026-06-22 03:55:42,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:55:42,509.509 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-22 03:55:45,745.745 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:55:45,747.747 INFO    ] Checking for system updates...
[2026-06-22 03:55:45,767.767 INFO    ] 200
[2026-06-22 03:55:45,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:55:45,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:55:45,823.823 INFO    ] No update needed
[2026-06-22 03:55:45,825.825 INFO    ] Checking for camera pi updates...
[2026-06-22 03:55:45,859.859 INFO    ] 200
[2026-06-22 03:55:45,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:55:45,901.901 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:55:45,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:55:45,952.952 INFO    ] No camera update needed
[2026-06-22 03:55:45,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:55:45,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:55:45,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:55:45,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:55:48,009.009 INFO    ] ================================================
[2026-06-22 03:55:48,024.024 INFO    ] Launching Daemon at Mon Jun 22 03:55:48 IST 2026
[2026-06-22 03:55:48,035.035 INFO    ] ================================================
[2026-06-22 03:55:48,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:55:48
[2026-06-22 03:55:49,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:55:49,362.362 INFO    ] Initializing speech engine...
[2026-06-22 03:55:49,369.369 INFO    ] 2026-06-22 03:55:49
[2026-06-22 03:55:49,658.658 INFO    ] 2026-06-22 03:55:49
[2026-06-22 03:55:49,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:55:49,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:55:49,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:55:50,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:55:50,049.049 INFO    ] time= 22/06/2026 03:55:50
[2026-06-22 03:55:50,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:55:50,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:55:50,156.156 INFO    ] No existing commands found in stream
[2026-06-22 03:55:55,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:55:55,171.171 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-22 03:55:56,535.535 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:55:56,536.536 INFO    ] Checking for system updates...
[2026-06-22 03:55:56,557.557 INFO    ] 200
[2026-06-22 03:55:56,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:55:56,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:55:56,601.601 INFO    ] No update needed
[2026-06-22 03:55:56,604.604 INFO    ] Checking for camera pi updates...
[2026-06-22 03:55:56,639.639 INFO    ] 200
[2026-06-22 03:55:56,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:55:56,682.682 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:55:56,760.760 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:55:56,762.762 INFO    ] No camera update needed
[2026-06-22 03:55:56,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:55:56,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:55:56,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:55:56,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:55:58,818.818 INFO    ] ================================================
[2026-06-22 03:55:58,833.833 INFO    ] Launching Daemon at Mon Jun 22 03:55:58 IST 2026
[2026-06-22 03:55:58,844.844 INFO    ] ================================================
[2026-06-22 03:55:59,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:55:59
[2026-06-22 03:55:59,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:56:00,177.177 INFO    ] Initializing speech engine...
[2026-06-22 03:56:00,192.192 INFO    ] 2026-06-22 03:56:00
[2026-06-22 03:56:00,465.465 INFO    ] 2026-06-22 03:56:00
[2026-06-22 03:56:00,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:56:00,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:56:00,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:56:00,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:56:00,838.838 INFO    ] time= 22/06/2026 03:56:00
[2026-06-22 03:56:00,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:56:00,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:56:00,962.962 INFO    ] No existing commands found in stream
[2026-06-22 03:56:05,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:56:05,977.977 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-22 03:56:10,091.091 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:56:10,094.094 INFO    ] Checking for system updates...
[2026-06-22 03:56:10,130.130 INFO    ] 200
[2026-06-22 03:56:10,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:56:10,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:56:10,193.193 INFO    ] No update needed
[2026-06-22 03:56:10,195.195 INFO    ] Checking for camera pi updates...
[2026-06-22 03:56:10,229.229 INFO    ] 200
[2026-06-22 03:56:10,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:56:10,272.272 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:56:10,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:56:10,461.461 INFO    ] No camera update needed
[2026-06-22 03:56:10,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:56:10,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:56:10,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:56:10,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:56:12,518.518 INFO    ] ================================================
[2026-06-22 03:56:12,533.533 INFO    ] Launching Daemon at Mon Jun 22 03:56:12 IST 2026
[2026-06-22 03:56:12,544.544 INFO    ] ================================================
[2026-06-22 03:56:13,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:56:13
[2026-06-22 03:56:13,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:56:13,991.991 INFO    ] Initializing speech engine...
[2026-06-22 03:56:13,997.997 INFO    ] 2026-06-22 03:56:13
[2026-06-22 03:56:14,290.290 INFO    ] 2026-06-22 03:56:14
[2026-06-22 03:56:14,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:56:14,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:56:14,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:56:14,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:56:14,667.667 INFO    ] time= 22/06/2026 03:56:14
[2026-06-22 03:56:14,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:56:14,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:56:14,793.793 INFO    ] No existing commands found in stream
[2026-06-22 03:56:19,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:56:19,807.807 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-22 03:56:22,750.750 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:56:22,751.751 INFO    ] Checking for system updates...
[2026-06-22 03:56:22,773.773 INFO    ] 200
[2026-06-22 03:56:22,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:56:22,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:56:22,806.806 INFO    ] No update needed
[2026-06-22 03:56:22,807.807 INFO    ] Checking for camera pi updates...
[2026-06-22 03:56:22,838.838 INFO    ] 200
[2026-06-22 03:56:22,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:56:22,885.885 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:56:22,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:56:22,967.967 INFO    ] No camera update needed
[2026-06-22 03:56:22,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:56:22,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:56:22,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:56:22,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:56:25,022.022 INFO    ] ================================================
[2026-06-22 03:56:25,037.037 INFO    ] Launching Daemon at Mon Jun 22 03:56:25 IST 2026
[2026-06-22 03:56:25,048.048 INFO    ] ================================================
[2026-06-22 03:56:25,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:56:25
[2026-06-22 03:56:26,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:56:26,477.477 INFO    ] Initializing speech engine...
[2026-06-22 03:56:26,483.483 INFO    ] 2026-06-22 03:56:26
[2026-06-22 03:56:26,758.758 INFO    ] 2026-06-22 03:56:26
[2026-06-22 03:56:26,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:56:26,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:56:26,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:56:27,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:56:27,098.098 INFO    ] time= 22/06/2026 03:56:27
[2026-06-22 03:56:27,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:56:27,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:56:27,210.210 INFO    ] No existing commands found in stream
[2026-06-22 03:56:32,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:56:32,226.226 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-22 03:56:33,193.193 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:56:33,196.196 INFO    ] Checking for system updates...
[2026-06-22 03:56:33,240.240 INFO    ] 200
[2026-06-22 03:56:33,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:56:33,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:56:33,312.312 INFO    ] No update needed
[2026-06-22 03:56:33,315.315 INFO    ] Checking for camera pi updates...
[2026-06-22 03:56:33,348.348 INFO    ] 200
[2026-06-22 03:56:33,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:56:33,392.392 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:56:33,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:56:33,442.442 INFO    ] No camera update needed
[2026-06-22 03:56:33,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:56:33,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:56:33,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:56:33,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:56:35,499.499 INFO    ] ================================================
[2026-06-22 03:56:35,519.519 INFO    ] Launching Daemon at Mon Jun 22 03:56:35 IST 2026
[2026-06-22 03:56:35,530.530 INFO    ] ================================================
[2026-06-22 03:56:36,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:56:36
[2026-06-22 03:56:36,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:56:37,160.160 INFO    ] Initializing speech engine...
[2026-06-22 03:56:37,174.174 INFO    ] 2026-06-22 03:56:37
[2026-06-22 03:56:37,460.460 INFO    ] 2026-06-22 03:56:37
[2026-06-22 03:56:37,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:56:37,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:56:37,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:56:37,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:56:37,989.989 INFO    ] time= 22/06/2026 03:56:37
[2026-06-22 03:56:38,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:56:38,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:56:38,143.143 INFO    ] No existing commands found in stream
[2026-06-22 03:56:43,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:56:43,170.170 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-22 03:56:47,398.398 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:56:47,401.401 INFO    ] Checking for system updates...
[2026-06-22 03:56:47,446.446 INFO    ] 200
[2026-06-22 03:56:47,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:56:47,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:56:47,514.514 INFO    ] No update needed
[2026-06-22 03:56:47,518.518 INFO    ] Checking for camera pi updates...
[2026-06-22 03:56:47,554.554 INFO    ] 200
[2026-06-22 03:56:47,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:56:47,600.600 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:56:47,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:56:47,689.689 INFO    ] No camera update needed
[2026-06-22 03:56:47,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:56:47,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:56:47,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:56:47,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:56:49,746.746 INFO    ] ================================================
[2026-06-22 03:56:49,761.761 INFO    ] Launching Daemon at Mon Jun 22 03:56:49 IST 2026
[2026-06-22 03:56:49,772.772 INFO    ] ================================================
[2026-06-22 03:56:50,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:56:50
[2026-06-22 03:56:50,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:56:51,241.241 INFO    ] Initializing speech engine...
[2026-06-22 03:56:51,264.264 INFO    ] 2026-06-22 03:56:51
[2026-06-22 03:56:51,531.531 INFO    ] 2026-06-22 03:56:51
[2026-06-22 03:56:51,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:56:51,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:56:51,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:56:51,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:56:51,915.915 INFO    ] time= 22/06/2026 03:56:51
[2026-06-22 03:56:51,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:56:51,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:56:52,081.081 INFO    ] No existing commands found in stream
[2026-06-22 03:56:57,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:56:57,115.115 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-22 03:56:59,108.108 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:56:59,111.111 INFO    ] Checking for system updates...
[2026-06-22 03:56:59,148.148 INFO    ] 200
[2026-06-22 03:56:59,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:56:59,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:56:59,214.214 INFO    ] No update needed
[2026-06-22 03:56:59,217.217 INFO    ] Checking for camera pi updates...
[2026-06-22 03:56:59,252.252 INFO    ] 200
[2026-06-22 03:56:59,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:56:59,301.301 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:56:59,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:56:59,381.381 INFO    ] No camera update needed
[2026-06-22 03:56:59,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:56:59,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:56:59,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:56:59,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:57:01,443.443 INFO    ] ================================================
[2026-06-22 03:57:01,488.488 INFO    ] Launching Daemon at Mon Jun 22 03:57:01 IST 2026
[2026-06-22 03:57:01,514.514 INFO    ] ================================================
[2026-06-22 03:57:02,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:57:02
[2026-06-22 03:57:02,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:57:03,198.198 INFO    ] Initializing speech engine...
[2026-06-22 03:57:03,212.212 INFO    ] 2026-06-22 03:57:03
[2026-06-22 03:57:03,527.527 INFO    ] 2026-06-22 03:57:03
[2026-06-22 03:57:03,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:57:03,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:57:03,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:57:03,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:57:03,963.963 INFO    ] time= 22/06/2026 03:57:03
[2026-06-22 03:57:04,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:57:04,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:57:04,108.108 INFO    ] No existing commands found in stream
[2026-06-22 03:57:09,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:57:09,124.124 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-22 03:57:12,417.417 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:57:12,420.420 INFO    ] Checking for system updates...
[2026-06-22 03:57:12,458.458 INFO    ] 200
[2026-06-22 03:57:12,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:57:12,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:57:12,517.517 INFO    ] No update needed
[2026-06-22 03:57:12,520.520 INFO    ] Checking for camera pi updates...
[2026-06-22 03:57:12,555.555 INFO    ] 200
[2026-06-22 03:57:12,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:57:12,599.599 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:57:12,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:57:12,703.703 INFO    ] No camera update needed
[2026-06-22 03:57:12,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:57:12,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:57:12,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:57:12,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:57:14,764.764 INFO    ] ================================================
[2026-06-22 03:57:14,779.779 INFO    ] Launching Daemon at Mon Jun 22 03:57:14 IST 2026
[2026-06-22 03:57:14,790.790 INFO    ] ================================================
[2026-06-22 03:57:15,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:57:15
[2026-06-22 03:57:16,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:57:16,396.396 INFO    ] Initializing speech engine...
[2026-06-22 03:57:16,411.411 INFO    ] 2026-06-22 03:57:16
[2026-06-22 03:57:16,693.693 INFO    ] 2026-06-22 03:57:16
[2026-06-22 03:57:16,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:57:17,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:57:17,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:57:17,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:57:17,455.455 INFO    ] time= 22/06/2026 03:57:17
[2026-06-22 03:57:17,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:57:17,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:57:17,673.673 INFO    ] No existing commands found in stream
[2026-06-22 03:57:22,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:57:22,709.709 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-22 03:57:23,200.200 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:57:23,203.203 INFO    ] Checking for system updates...
[2026-06-22 03:57:23,240.240 INFO    ] 200
[2026-06-22 03:57:23,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:57:23,299.299 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:57:23,301.301 INFO    ] No update needed
[2026-06-22 03:57:23,304.304 INFO    ] Checking for camera pi updates...
[2026-06-22 03:57:23,340.340 INFO    ] 200
[2026-06-22 03:57:23,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:57:23,384.384 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:57:23,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:57:23,470.470 INFO    ] No camera update needed
[2026-06-22 03:57:23,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:57:23,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:57:23,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:57:23,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:57:25,529.529 INFO    ] ================================================
[2026-06-22 03:57:25,544.544 INFO    ] Launching Daemon at Mon Jun 22 03:57:25 IST 2026
[2026-06-22 03:57:25,555.555 INFO    ] ================================================
[2026-06-22 03:57:26,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:57:26
[2026-06-22 03:57:26,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:57:26,958.958 INFO    ] Initializing speech engine...
[2026-06-22 03:57:26,967.967 INFO    ] 2026-06-22 03:57:26
[2026-06-22 03:57:27,227.227 INFO    ] 2026-06-22 03:57:27
[2026-06-22 03:57:27,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:57:27,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:57:27,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:57:27,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:57:27,663.663 INFO    ] time= 22/06/2026 03:57:27
[2026-06-22 03:57:27,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:57:27,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:57:27,833.833 INFO    ] No existing commands found in stream
[2026-06-22 03:57:32,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:57:32,847.847 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-22 03:57:35,116.116 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:57:35,119.119 INFO    ] Checking for system updates...
[2026-06-22 03:57:35,154.154 INFO    ] 200
[2026-06-22 03:57:35,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:57:35,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:57:35,213.213 INFO    ] No update needed
[2026-06-22 03:57:35,216.216 INFO    ] Checking for camera pi updates...
[2026-06-22 03:57:35,250.250 INFO    ] 200
[2026-06-22 03:57:35,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:57:35,297.297 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:57:35,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:57:35,375.375 INFO    ] No camera update needed
[2026-06-22 03:57:35,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:57:35,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:57:35,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:57:35,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:57:37,430.430 INFO    ] ================================================
[2026-06-22 03:57:37,446.446 INFO    ] Launching Daemon at Mon Jun 22 03:57:37 IST 2026
[2026-06-22 03:57:37,456.456 INFO    ] ================================================
[2026-06-22 03:57:38,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:57:38
[2026-06-22 03:57:38,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:57:38,888.888 INFO    ] Initializing speech engine...
[2026-06-22 03:57:38,901.901 INFO    ] 2026-06-22 03:57:38
[2026-06-22 03:57:39,157.157 INFO    ] 2026-06-22 03:57:39
[2026-06-22 03:57:39,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:57:39,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:57:39,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:57:39,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:57:39,623.623 INFO    ] time= 22/06/2026 03:57:39
[2026-06-22 03:57:39,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:57:39,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:57:39,772.772 INFO    ] No existing commands found in stream
[2026-06-22 03:57:44,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:57:44,787.787 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-22 03:57:45,660.660 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:57:45,661.661 INFO    ] Checking for system updates...
[2026-06-22 03:57:45,682.682 INFO    ] 200
[2026-06-22 03:57:45,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:57:45,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:57:45,715.715 INFO    ] No update needed
[2026-06-22 03:57:45,716.716 INFO    ] Checking for camera pi updates...
[2026-06-22 03:57:45,736.736 INFO    ] 200
[2026-06-22 03:57:45,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:57:45,772.772 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:57:45,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:57:45,870.870 INFO    ] No camera update needed
[2026-06-22 03:57:45,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:57:45,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:57:45,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:57:45,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:57:47,925.925 INFO    ] ================================================
[2026-06-22 03:57:47,940.940 INFO    ] Launching Daemon at Mon Jun 22 03:57:47 IST 2026
[2026-06-22 03:57:47,951.951 INFO    ] ================================================
[2026-06-22 03:57:48,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:57:48
[2026-06-22 03:57:49,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:57:49,312.312 INFO    ] Initializing speech engine...
[2026-06-22 03:57:49,327.327 INFO    ] 2026-06-22 03:57:49
[2026-06-22 03:57:49,613.613 INFO    ] 2026-06-22 03:57:49
[2026-06-22 03:57:49,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:57:49,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:57:49,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:57:49,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:57:49,989.989 INFO    ] time= 22/06/2026 03:57:49
[2026-06-22 03:57:49,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:57:50,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:57:50,117.117 INFO    ] No existing commands found in stream
[2026-06-22 03:57:55,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:57:55,129.129 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-22 03:57:58,236.236 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:57:58,237.237 INFO    ] Checking for system updates...
[2026-06-22 03:57:58,259.259 INFO    ] 200
[2026-06-22 03:57:58,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:57:58,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:57:58,319.319 INFO    ] No update needed
[2026-06-22 03:57:58,321.321 INFO    ] Checking for camera pi updates...
[2026-06-22 03:57:58,355.355 INFO    ] 200
[2026-06-22 03:57:58,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:57:58,398.398 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:57:58,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:57:58,458.458 INFO    ] No camera update needed
[2026-06-22 03:57:58,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:57:58,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:57:58,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:57:58,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:58:00,514.514 INFO    ] ================================================
[2026-06-22 03:58:00,529.529 INFO    ] Launching Daemon at Mon Jun 22 03:58:00 IST 2026
[2026-06-22 03:58:00,540.540 INFO    ] ================================================
[2026-06-22 03:58:01,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:58:01
[2026-06-22 03:58:01,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:58:02,201.201 INFO    ] Initializing speech engine...
[2026-06-22 03:58:02,209.209 INFO    ] 2026-06-22 03:58:02
[2026-06-22 03:58:02,525.525 INFO    ] 2026-06-22 03:58:02
[2026-06-22 03:58:02,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:58:02,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:58:02,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:58:02,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:58:02,882.882 INFO    ] time= 22/06/2026 03:58:02
[2026-06-22 03:58:02,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:58:02,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:58:02,967.967 INFO    ] No existing commands found in stream
[2026-06-22 03:58:07,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:58:07,980.980 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-22 03:58:09,143.143 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:58:09,145.145 INFO    ] Checking for system updates...
[2026-06-22 03:58:09,184.184 INFO    ] 200
[2026-06-22 03:58:09,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:58:09,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:58:09,243.243 INFO    ] No update needed
[2026-06-22 03:58:09,246.246 INFO    ] Checking for camera pi updates...
[2026-06-22 03:58:09,280.280 INFO    ] 200
[2026-06-22 03:58:09,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:58:09,317.317 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:58:09,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:58:09,392.392 INFO    ] No camera update needed
[2026-06-22 03:58:09,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:58:09,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:58:09,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:58:09,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:58:11,449.449 INFO    ] ================================================
[2026-06-22 03:58:11,464.464 INFO    ] Launching Daemon at Mon Jun 22 03:58:11 IST 2026
[2026-06-22 03:58:11,475.475 INFO    ] ================================================
[2026-06-22 03:58:12,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:58:12
[2026-06-22 03:58:12,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:58:12,880.880 INFO    ] Initializing speech engine...
[2026-06-22 03:58:12,896.896 INFO    ] 2026-06-22 03:58:12
[2026-06-22 03:58:13,178.178 INFO    ] 2026-06-22 03:58:13
[2026-06-22 03:58:13,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:58:13,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:58:13,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:58:13,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:58:13,587.587 INFO    ] time= 22/06/2026 03:58:13
[2026-06-22 03:58:13,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:58:13,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:58:13,672.672 INFO    ] No existing commands found in stream
[2026-06-22 03:58:18,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:58:18,710.710 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-22 03:58:21,303.303 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 03:58:21,306.306 INFO    ] Checking for system updates...
[2026-06-22 03:58:21,352.352 INFO    ] 200
[2026-06-22 03:58:21,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:58:21,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:58:21,439.439 INFO    ] No update needed
[2026-06-22 03:58:21,442.442 INFO    ] Checking for camera pi updates...
[2026-06-22 03:58:21,480.480 INFO    ] 200
[2026-06-22 03:58:21,483.483 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:58:21,526.526 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:58:21,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:58:21,721.721 INFO    ] No camera update needed
[2026-06-22 03:58:21,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:58:21,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:58:21,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:58:21,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:58:23,784.784 INFO    ] ================================================
[2026-06-22 03:58:23,799.799 INFO    ] Launching Daemon at Mon Jun 22 03:58:23 IST 2026
[2026-06-22 03:58:23,809.809 INFO    ] ================================================
[2026-06-22 03:58:24,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:58:24
[2026-06-22 03:58:24,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:58:25,288.288 INFO    ] Initializing speech engine...
[2026-06-22 03:58:25,295.295 INFO    ] 2026-06-22 03:58:25
[2026-06-22 03:58:25,568.568 INFO    ] 2026-06-22 03:58:25
[2026-06-22 03:58:25,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:58:25,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:58:25,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:58:25,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:58:26,051.051 INFO    ] time= 22/06/2026 03:58:26
[2026-06-22 03:58:26,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:58:26,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:58:26,182.182 INFO    ] No existing commands found in stream
[2026-06-22 03:58:31,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:58:31,199.199 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-22 03:58:33,318.318 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:58:33,321.321 INFO    ] Checking for system updates...
[2026-06-22 03:58:33,359.359 INFO    ] 200
[2026-06-22 03:58:33,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:58:33,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:58:33,419.419 INFO    ] No update needed
[2026-06-22 03:58:33,422.422 INFO    ] Checking for camera pi updates...
[2026-06-22 03:58:33,459.459 INFO    ] 200
[2026-06-22 03:58:33,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:58:33,503.503 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:58:33,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:58:33,586.586 INFO    ] No camera update needed
[2026-06-22 03:58:33,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:58:33,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:58:33,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:58:33,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:58:35,644.644 INFO    ] ================================================
[2026-06-22 03:58:35,659.659 INFO    ] Launching Daemon at Mon Jun 22 03:58:35 IST 2026
[2026-06-22 03:58:35,670.670 INFO    ] ================================================
[2026-06-22 03:58:36,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:58:36
[2026-06-22 03:58:36,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:58:37,148.148 INFO    ] Initializing speech engine...
[2026-06-22 03:58:37,162.162 INFO    ] 2026-06-22 03:58:37
[2026-06-22 03:58:37,435.435 INFO    ] 2026-06-22 03:58:37
[2026-06-22 03:58:37,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:58:37,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:58:37,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:58:37,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:58:37,889.889 INFO    ] time= 22/06/2026 03:58:37
[2026-06-22 03:58:37,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:58:37,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:58:38,031.031 INFO    ] No existing commands found in stream
[2026-06-22 03:58:43,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:58:43,047.047 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-22 03:58:44,042.042 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 03:58:44,045.045 INFO    ] Checking for system updates...
[2026-06-22 03:58:44,082.082 INFO    ] 200
[2026-06-22 03:58:44,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:58:44,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:58:44,141.141 INFO    ] No update needed
[2026-06-22 03:58:44,143.143 INFO    ] Checking for camera pi updates...
[2026-06-22 03:58:44,178.178 INFO    ] 200
[2026-06-22 03:58:44,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:58:44,226.226 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:58:44,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:58:44,310.310 INFO    ] No camera update needed
[2026-06-22 03:58:44,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:58:44,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:58:44,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:58:44,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:58:46,370.370 INFO    ] ================================================
[2026-06-22 03:58:46,385.385 INFO    ] Launching Daemon at Mon Jun 22 03:58:46 IST 2026
[2026-06-22 03:58:46,396.396 INFO    ] ================================================
[2026-06-22 03:58:46,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:58:46
[2026-06-22 03:58:47,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:58:47,709.709 INFO    ] Initializing speech engine...
[2026-06-22 03:58:47,715.715 INFO    ] 2026-06-22 03:58:47
[2026-06-22 03:58:48,004.004 INFO    ] 2026-06-22 03:58:47
[2026-06-22 03:58:48,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:58:48,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:58:48,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:58:48,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:58:48,412.412 INFO    ] time= 22/06/2026 03:58:48
[2026-06-22 03:58:48,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:58:48,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:58:48,494.494 INFO    ] No existing commands found in stream
[2026-06-22 03:58:53,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:58:53,510.510 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-22 03:58:55,907.907 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:58:55,909.909 INFO    ] Checking for system updates...
[2026-06-22 03:58:55,946.946 INFO    ] 200
[2026-06-22 03:58:55,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:58:56,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:58:56,012.012 INFO    ] No update needed
[2026-06-22 03:58:56,014.014 INFO    ] Checking for camera pi updates...
[2026-06-22 03:58:56,047.047 INFO    ] 200
[2026-06-22 03:58:56,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:58:56,090.090 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:58:56,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:58:56,166.166 INFO    ] No camera update needed
[2026-06-22 03:58:56,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:58:56,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:58:56,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:58:56,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:58:58,222.222 INFO    ] ================================================
[2026-06-22 03:58:58,236.236 INFO    ] Launching Daemon at Mon Jun 22 03:58:58 IST 2026
[2026-06-22 03:58:58,247.247 INFO    ] ================================================
[2026-06-22 03:58:58,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:58:58
[2026-06-22 03:58:59,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:58:59,575.575 INFO    ] Initializing speech engine...
[2026-06-22 03:58:59,589.589 INFO    ] 2026-06-22 03:58:59
[2026-06-22 03:58:59,871.871 INFO    ] 2026-06-22 03:58:59
[2026-06-22 03:58:59,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:59:00,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:59:00,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:59:00,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:59:00,261.261 INFO    ] time= 22/06/2026 03:59:00
[2026-06-22 03:59:00,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:59:00,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:59:00,365.365 INFO    ] No existing commands found in stream
[2026-06-22 03:59:05,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:59:05,380.380 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-22 03:59:07,750.750 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:59:07,751.751 INFO    ] Checking for system updates...
[2026-06-22 03:59:07,773.773 INFO    ] 200
[2026-06-22 03:59:07,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:59:07,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:59:07,830.830 INFO    ] No update needed
[2026-06-22 03:59:07,832.832 INFO    ] Checking for camera pi updates...
[2026-06-22 03:59:07,867.867 INFO    ] 200
[2026-06-22 03:59:07,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:59:07,913.913 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:59:07,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:59:07,994.994 INFO    ] No camera update needed
[2026-06-22 03:59:07,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:59:07,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:59:08,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:59:08,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:59:10,051.051 INFO    ] ================================================
[2026-06-22 03:59:10,066.066 INFO    ] Launching Daemon at Mon Jun 22 03:59:10 IST 2026
[2026-06-22 03:59:10,077.077 INFO    ] ================================================
[2026-06-22 03:59:10,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:59:10
[2026-06-22 03:59:11,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:59:11,507.507 INFO    ] Initializing speech engine...
[2026-06-22 03:59:11,516.516 INFO    ] 2026-06-22 03:59:11
[2026-06-22 03:59:11,766.766 INFO    ] 2026-06-22 03:59:11
[2026-06-22 03:59:11,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:59:11,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:59:11,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:59:12,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:59:12,145.145 INFO    ] time= 22/06/2026 03:59:12
[2026-06-22 03:59:12,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:59:12,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:59:12,306.306 INFO    ] No existing commands found in stream
[2026-06-22 03:59:17,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:59:17,339.339 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-22 03:59:21,596.596 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 03:59:21,599.599 INFO    ] Checking for system updates...
[2026-06-22 03:59:21,639.639 INFO    ] 200
[2026-06-22 03:59:21,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:59:21,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:59:21,703.703 INFO    ] No update needed
[2026-06-22 03:59:21,706.706 INFO    ] Checking for camera pi updates...
[2026-06-22 03:59:21,741.741 INFO    ] 200
[2026-06-22 03:59:21,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:59:21,786.786 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:59:21,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 03:59:21,868.868 INFO    ] No camera update needed
[2026-06-22 03:59:21,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:59:21,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:59:21,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:59:21,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:59:23,929.929 INFO    ] ================================================
[2026-06-22 03:59:23,944.944 INFO    ] Launching Daemon at Mon Jun 22 03:59:23 IST 2026
[2026-06-22 03:59:23,955.955 INFO    ] ================================================
[2026-06-22 03:59:24,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:59:24
[2026-06-22 03:59:25,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:59:25,467.467 INFO    ] Initializing speech engine...
[2026-06-22 03:59:25,476.476 INFO    ] 2026-06-22 03:59:25
[2026-06-22 03:59:25,734.734 INFO    ] 2026-06-22 03:59:25
[2026-06-22 03:59:25,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:59:25,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:59:25,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:59:26,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:59:26,100.100 INFO    ] time= 22/06/2026 03:59:26
[2026-06-22 03:59:26,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:59:26,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:59:26,224.224 INFO    ] No existing commands found in stream
[2026-06-22 03:59:31,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:59:31,239.239 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-22 03:59:32,001.001 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 03:59:32,004.004 INFO    ] Checking for system updates...
[2026-06-22 03:59:32,050.050 INFO    ] 200
[2026-06-22 03:59:32,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:59:32,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:59:32,115.115 INFO    ] No update needed
[2026-06-22 03:59:32,118.118 INFO    ] Checking for camera pi updates...
[2026-06-22 03:59:32,155.155 INFO    ] 200
[2026-06-22 03:59:32,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:59:32,202.202 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:59:32,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:59:32,288.288 INFO    ] No camera update needed
[2026-06-22 03:59:32,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:59:32,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:59:32,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:59:32,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:59:34,352.352 INFO    ] ================================================
[2026-06-22 03:59:34,367.367 INFO    ] Launching Daemon at Mon Jun 22 03:59:34 IST 2026
[2026-06-22 03:59:34,378.378 INFO    ] ================================================
[2026-06-22 03:59:34,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:59:34
[2026-06-22 03:59:35,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:59:35,848.848 INFO    ] Initializing speech engine...
[2026-06-22 03:59:35,856.856 INFO    ] 2026-06-22 03:59:35
[2026-06-22 03:59:36,129.129 INFO    ] 2026-06-22 03:59:36
[2026-06-22 03:59:36,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:59:36,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:59:36,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:59:36,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:59:36,604.604 INFO    ] time= 22/06/2026 03:59:36
[2026-06-22 03:59:36,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:59:36,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:59:36,782.782 INFO    ] No existing commands found in stream
[2026-06-22 03:59:41,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:59:41,807.807 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-22 03:59:45,645.645 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 03:59:45,648.648 INFO    ] Checking for system updates...
[2026-06-22 03:59:45,684.684 INFO    ] 200
[2026-06-22 03:59:45,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:59:45,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:59:45,741.741 INFO    ] No update needed
[2026-06-22 03:59:45,743.743 INFO    ] Checking for camera pi updates...
[2026-06-22 03:59:45,778.778 INFO    ] 200
[2026-06-22 03:59:45,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:59:45,821.821 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:59:45,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:59:45,919.919 INFO    ] No camera update needed
[2026-06-22 03:59:45,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:59:45,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:59:45,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:59:45,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:59:47,973.973 INFO    ] ================================================
[2026-06-22 03:59:47,988.988 INFO    ] Launching Daemon at Mon Jun 22 03:59:47 IST 2026
[2026-06-22 03:59:48,000.000 INFO    ] ================================================
[2026-06-22 03:59:48,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:59:48
[2026-06-22 03:59:49,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 03:59:49,500.500 INFO    ] Initializing speech engine...
[2026-06-22 03:59:49,508.508 INFO    ] 2026-06-22 03:59:49
[2026-06-22 03:59:49,778.778 INFO    ] 2026-06-22 03:59:49
[2026-06-22 03:59:49,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 03:59:50,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 03:59:50,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 03:59:50,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 03:59:50,263.263 INFO    ] time= 22/06/2026 03:59:50
[2026-06-22 03:59:50,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 03:59:50,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-22 03:59:50,411.411 INFO    ] No existing commands found in stream
[2026-06-22 03:59:55,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 03:59:55,428.428 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-22 03:59:56,407.407 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 03:59:56,410.410 INFO    ] Checking for system updates...
[2026-06-22 03:59:56,448.448 INFO    ] 200
[2026-06-22 03:59:56,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:59:56,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:59:56,517.517 INFO    ] No update needed
[2026-06-22 03:59:56,520.520 INFO    ] Checking for camera pi updates...
[2026-06-22 03:59:56,555.555 INFO    ] 200
[2026-06-22 03:59:56,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 03:59:56,600.600 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 03:59:56,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 03:59:56,683.683 INFO    ] No camera update needed
[2026-06-22 03:59:56,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-22 03:59:56,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 03:59:56,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 03:59:56,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 03:59:58,743.743 INFO    ] ================================================
[2026-06-22 03:59:58,759.759 INFO    ] Launching Daemon at Mon Jun 22 03:59:58 IST 2026
[2026-06-22 03:59:58,777.777 INFO    ] ================================================
[2026-06-22 03:59:59,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 03:59:59
[2026-06-22 03:59:59,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:00:00,255.255 INFO    ] Initializing speech engine...
[2026-06-22 04:00:00,274.274 INFO    ] 2026-06-22 04:00:00
[2026-06-22 04:00:00,542.542 INFO    ] 2026-06-22 04:00:00
[2026-06-22 04:00:00,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:00:00,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:00:00,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:00:00,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:00:00,918.918 INFO    ] time= 22/06/2026 04:00:00
[2026-06-22 04:00:00,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:00:00,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:00:01,033.033 INFO    ] No existing commands found in stream
[2026-06-22 04:00:06,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:00:06,057.057 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-22 04:00:09,176.176 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:00:09,179.179 INFO    ] Checking for system updates...
[2026-06-22 04:00:09,232.232 INFO    ] 200
[2026-06-22 04:00:09,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:00:09,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:00:09,306.306 INFO    ] No update needed
[2026-06-22 04:00:09,308.308 INFO    ] Checking for camera pi updates...
[2026-06-22 04:00:09,343.343 INFO    ] 200
[2026-06-22 04:00:09,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:00:09,391.391 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:00:09,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:00:09,480.480 INFO    ] No camera update needed
[2026-06-22 04:00:09,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:00:09,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:00:09,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:00:09,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:00:11,536.536 INFO    ] ================================================
[2026-06-22 04:00:11,551.551 INFO    ] Launching Daemon at Mon Jun 22 04:00:11 IST 2026
[2026-06-22 04:00:11,562.562 INFO    ] ================================================
[2026-06-22 04:00:12,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:00:12
[2026-06-22 04:00:12,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:00:12,905.905 INFO    ] Initializing speech engine...
[2026-06-22 04:00:12,916.916 INFO    ] 2026-06-22 04:00:12
[2026-06-22 04:00:13,163.163 INFO    ] 2026-06-22 04:00:13
[2026-06-22 04:00:13,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:00:13,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:00:13,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:00:13,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:00:13,543.543 INFO    ] time= 22/06/2026 04:00:13
[2026-06-22 04:00:13,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:00:13,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:00:13,711.711 INFO    ] No existing commands found in stream
[2026-06-22 04:00:18,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:00:18,734.734 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-22 04:00:22,044.044 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:00:22,047.047 INFO    ] Checking for system updates...
[2026-06-22 04:00:22,087.087 INFO    ] 200
[2026-06-22 04:00:22,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:00:22,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:00:22,152.152 INFO    ] No update needed
[2026-06-22 04:00:22,154.154 INFO    ] Checking for camera pi updates...
[2026-06-22 04:00:22,188.188 INFO    ] 200
[2026-06-22 04:00:22,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:00:22,230.230 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:00:22,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:00:22,332.332 INFO    ] No camera update needed
[2026-06-22 04:00:22,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:00:22,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:00:22,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:00:22,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:00:24,394.394 INFO    ] ================================================
[2026-06-22 04:00:24,409.409 INFO    ] Launching Daemon at Mon Jun 22 04:00:24 IST 2026
[2026-06-22 04:00:24,420.420 INFO    ] ================================================
[2026-06-22 04:00:24,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:00:24
[2026-06-22 04:00:25,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:00:25,755.755 INFO    ] Initializing speech engine...
[2026-06-22 04:00:25,763.763 INFO    ] 2026-06-22 04:00:25
[2026-06-22 04:00:26,008.008 INFO    ] 2026-06-22 04:00:26
[2026-06-22 04:00:26,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:00:26,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:00:26,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:00:26,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:00:26,377.377 INFO    ] time= 22/06/2026 04:00:26
[2026-06-22 04:00:26,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:00:26,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:00:26,546.546 INFO    ] No existing commands found in stream
[2026-06-22 04:00:31,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:00:31,579.579 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-22 04:00:35,326.326 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:00:35,328.328 INFO    ] Checking for system updates...
[2026-06-22 04:00:35,366.366 INFO    ] 200
[2026-06-22 04:00:35,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:00:35,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:00:35,426.426 INFO    ] No update needed
[2026-06-22 04:00:35,428.428 INFO    ] Checking for camera pi updates...
[2026-06-22 04:00:35,463.463 INFO    ] 200
[2026-06-22 04:00:35,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:00:35,511.511 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:00:35,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:00:35,615.615 INFO    ] No camera update needed
[2026-06-22 04:00:35,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:00:35,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:00:35,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:00:35,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:00:37,674.674 INFO    ] ================================================
[2026-06-22 04:00:37,690.690 INFO    ] Launching Daemon at Mon Jun 22 04:00:37 IST 2026
[2026-06-22 04:00:37,700.700 INFO    ] ================================================
[2026-06-22 04:00:38,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:00:38
[2026-06-22 04:00:38,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:00:39,080.080 INFO    ] Initializing speech engine...
[2026-06-22 04:00:39,089.089 INFO    ] 2026-06-22 04:00:39
[2026-06-22 04:00:39,345.345 INFO    ] 2026-06-22 04:00:39
[2026-06-22 04:00:39,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:00:39,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:00:39,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:00:39,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:00:39,681.681 INFO    ] time= 22/06/2026 04:00:39
[2026-06-22 04:00:39,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:00:39,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:00:39,775.775 INFO    ] No existing commands found in stream
[2026-06-22 04:00:44,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:00:44,788.788 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-22 04:00:45,107.107 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:00:45,110.110 INFO    ] Checking for system updates...
[2026-06-22 04:00:45,148.148 INFO    ] 200
[2026-06-22 04:00:45,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:00:45,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:00:45,207.207 INFO    ] No update needed
[2026-06-22 04:00:45,209.209 INFO    ] Checking for camera pi updates...
[2026-06-22 04:00:45,250.250 INFO    ] 200
[2026-06-22 04:00:45,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:00:45,293.293 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:00:45,376.376 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:00:45,379.379 INFO    ] No camera update needed
[2026-06-22 04:00:45,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:00:45,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:00:45,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:00:45,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:00:47,435.435 INFO    ] ================================================
[2026-06-22 04:00:47,450.450 INFO    ] Launching Daemon at Mon Jun 22 04:00:47 IST 2026
[2026-06-22 04:00:47,461.461 INFO    ] ================================================
[2026-06-22 04:00:48,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:00:48
[2026-06-22 04:00:48,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:00:48,796.796 INFO    ] Initializing speech engine...
[2026-06-22 04:00:48,812.812 INFO    ] 2026-06-22 04:00:48
[2026-06-22 04:00:49,082.082 INFO    ] 2026-06-22 04:00:49
[2026-06-22 04:00:49,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:00:49,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:00:49,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:00:49,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:00:49,458.458 INFO    ] time= 22/06/2026 04:00:49
[2026-06-22 04:00:49,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:00:49,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:00:49,579.579 INFO    ] No existing commands found in stream
[2026-06-22 04:00:54,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:00:54,596.596 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-22 04:00:57,038.038 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:00:57,040.040 INFO    ] Checking for system updates...
[2026-06-22 04:00:57,079.079 INFO    ] 200
[2026-06-22 04:00:57,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:00:57,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:00:57,138.138 INFO    ] No update needed
[2026-06-22 04:00:57,140.140 INFO    ] Checking for camera pi updates...
[2026-06-22 04:00:57,177.177 INFO    ] 200
[2026-06-22 04:00:57,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:00:57,219.219 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:00:57,299.299 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:00:57,301.301 INFO    ] No camera update needed
[2026-06-22 04:00:57,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:00:57,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:00:57,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:00:57,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:00:59,357.357 INFO    ] ================================================
[2026-06-22 04:00:59,372.372 INFO    ] Launching Daemon at Mon Jun 22 04:00:59 IST 2026
[2026-06-22 04:00:59,383.383 INFO    ] ================================================
[2026-06-22 04:01:00,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:01:00
[2026-06-22 04:01:00,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:01:00,781.781 INFO    ] Initializing speech engine...
[2026-06-22 04:01:00,789.789 INFO    ] 2026-06-22 04:01:00
[2026-06-22 04:01:01,059.059 INFO    ] 2026-06-22 04:01:01
[2026-06-22 04:01:01,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:01:01,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:01:01,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:01:01,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:01:01,501.501 INFO    ] time= 22/06/2026 04:01:01
[2026-06-22 04:01:01,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:01:01,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:01:01,561.561 INFO    ] No existing commands found in stream
[2026-06-22 04:01:06,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:01:06,570.570 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-22 04:01:08,718.718 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:01:08,726.726 INFO    ] Checking for system updates...
[2026-06-22 04:01:08,766.766 INFO    ] 200
[2026-06-22 04:01:08,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:01:08,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:01:08,834.834 INFO    ] No update needed
[2026-06-22 04:01:08,837.837 INFO    ] Checking for camera pi updates...
[2026-06-22 04:01:08,873.873 INFO    ] 200
[2026-06-22 04:01:08,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:01:08,917.917 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:01:09,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:01:09,007.007 INFO    ] No camera update needed
[2026-06-22 04:01:09,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:01:09,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:01:09,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:01:09,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:01:11,063.063 INFO    ] ================================================
[2026-06-22 04:01:11,079.079 INFO    ] Launching Daemon at Mon Jun 22 04:01:11 IST 2026
[2026-06-22 04:01:11,090.090 INFO    ] ================================================
[2026-06-22 04:01:11,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:01:11
[2026-06-22 04:01:12,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:01:12,496.496 INFO    ] Initializing speech engine...
[2026-06-22 04:01:12,504.504 INFO    ] 2026-06-22 04:01:12
[2026-06-22 04:01:12,778.778 INFO    ] 2026-06-22 04:01:12
[2026-06-22 04:01:12,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:01:12,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:01:13,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:01:13,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:01:13,154.154 INFO    ] time= 22/06/2026 04:01:13
[2026-06-22 04:01:13,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:01:13,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:01:13,234.234 INFO    ] No existing commands found in stream
[2026-06-22 04:01:18,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:01:18,250.250 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-22 04:01:18,855.855 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:01:18,858.858 INFO    ] Checking for system updates...
[2026-06-22 04:01:18,894.894 INFO    ] 200
[2026-06-22 04:01:18,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:01:18,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:01:18,961.961 INFO    ] No update needed
[2026-06-22 04:01:18,963.963 INFO    ] Checking for camera pi updates...
[2026-06-22 04:01:18,999.999 INFO    ] 200
[2026-06-22 04:01:19,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:01:19,043.043 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:01:19,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:01:19,129.129 INFO    ] No camera update needed
[2026-06-22 04:01:19,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:01:19,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:01:19,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:01:19,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:01:21,185.185 INFO    ] ================================================
[2026-06-22 04:01:21,201.201 INFO    ] Launching Daemon at Mon Jun 22 04:01:21 IST 2026
[2026-06-22 04:01:21,212.212 INFO    ] ================================================
[2026-06-22 04:01:21,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:01:21
[2026-06-22 04:01:22,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:01:22,651.651 INFO    ] Initializing speech engine...
[2026-06-22 04:01:22,667.667 INFO    ] 2026-06-22 04:01:22
[2026-06-22 04:01:22,947.947 INFO    ] 2026-06-22 04:01:22
[2026-06-22 04:01:22,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:01:23,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:01:23,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:01:23,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:01:23,314.314 INFO    ] time= 22/06/2026 04:01:23
[2026-06-22 04:01:23,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:01:23,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:01:23,435.435 INFO    ] No existing commands found in stream
[2026-06-22 04:01:28,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:01:28,450.450 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-22 04:01:28,953.953 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:01:28,956.956 INFO    ] Checking for system updates...
[2026-06-22 04:01:28,993.993 INFO    ] 200
[2026-06-22 04:01:28,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:01:29,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:01:29,059.059 INFO    ] No update needed
[2026-06-22 04:01:29,062.062 INFO    ] Checking for camera pi updates...
[2026-06-22 04:01:29,100.100 INFO    ] 200
[2026-06-22 04:01:29,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:01:29,150.150 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:01:29,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:01:29,218.218 INFO    ] No camera update needed
[2026-06-22 04:01:29,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:01:29,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:01:29,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:01:29,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:01:31,273.273 INFO    ] ================================================
[2026-06-22 04:01:31,289.289 INFO    ] Launching Daemon at Mon Jun 22 04:01:31 IST 2026
[2026-06-22 04:01:31,300.300 INFO    ] ================================================
[2026-06-22 04:01:31,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:01:31
[2026-06-22 04:01:32,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:01:32,828.828 INFO    ] Initializing speech engine...
[2026-06-22 04:01:32,849.849 INFO    ] 2026-06-22 04:01:32
[2026-06-22 04:01:33,120.120 INFO    ] 2026-06-22 04:01:33
[2026-06-22 04:01:33,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:01:33,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:01:33,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:01:33,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:01:33,488.488 INFO    ] time= 22/06/2026 04:01:33
[2026-06-22 04:01:33,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:01:33,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:01:33,608.608 INFO    ] No existing commands found in stream
[2026-06-22 04:01:38,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:01:38,623.623 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-22 04:01:42,093.093 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:01:42,095.095 INFO    ] Checking for system updates...
[2026-06-22 04:01:42,137.137 INFO    ] 200
[2026-06-22 04:01:42,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:01:42,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:01:42,195.195 INFO    ] No update needed
[2026-06-22 04:01:42,197.197 INFO    ] Checking for camera pi updates...
[2026-06-22 04:01:42,231.231 INFO    ] 200
[2026-06-22 04:01:42,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:01:42,278.278 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:01:42,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:01:42,368.368 INFO    ] No camera update needed
[2026-06-22 04:01:42,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:01:42,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:01:42,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:01:42,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:01:44,424.424 INFO    ] ================================================
[2026-06-22 04:01:44,440.440 INFO    ] Launching Daemon at Mon Jun 22 04:01:44 IST 2026
[2026-06-22 04:01:44,451.451 INFO    ] ================================================
[2026-06-22 04:01:45,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:01:45
[2026-06-22 04:01:45,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:01:45,874.874 INFO    ] Initializing speech engine...
[2026-06-22 04:01:45,885.885 INFO    ] 2026-06-22 04:01:45
[2026-06-22 04:01:46,132.132 INFO    ] 2026-06-22 04:01:46
[2026-06-22 04:01:46,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:01:47,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:01:47,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:01:47,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:01:47,510.510 INFO    ] time= 22/06/2026 04:01:47
[2026-06-22 04:01:47,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:01:47,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:01:47,573.573 INFO    ] No existing commands found in stream
[2026-06-22 04:01:52,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:01:52,586.586 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-22 04:01:55,994.994 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:01:55,996.996 INFO    ] Checking for system updates...
[2026-06-22 04:01:56,017.017 INFO    ] 200
[2026-06-22 04:01:56,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:01:56,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:01:56,051.051 INFO    ] No update needed
[2026-06-22 04:01:56,052.052 INFO    ] Checking for camera pi updates...
[2026-06-22 04:01:56,079.079 INFO    ] 200
[2026-06-22 04:01:56,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:01:56,125.125 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:01:56,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:01:56,194.194 INFO    ] No camera update needed
[2026-06-22 04:01:56,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:01:56,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:01:56,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:01:56,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:01:58,250.250 INFO    ] ================================================
[2026-06-22 04:01:58,265.265 INFO    ] Launching Daemon at Mon Jun 22 04:01:58 IST 2026
[2026-06-22 04:01:58,282.282 INFO    ] ================================================
[2026-06-22 04:01:58,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:01:58
[2026-06-22 04:01:59,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:01:59,615.615 INFO    ] Initializing speech engine...
[2026-06-22 04:01:59,623.623 INFO    ] 2026-06-22 04:01:59
[2026-06-22 04:01:59,870.870 INFO    ] 2026-06-22 04:01:59
[2026-06-22 04:01:59,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:02:00,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:02:00,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:02:00,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:02:00,236.236 INFO    ] time= 22/06/2026 04:02:00
[2026-06-22 04:02:00,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:02:00,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:02:00,407.407 INFO    ] No existing commands found in stream
[2026-06-22 04:02:05,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:02:05,440.440 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-22 04:02:06,092.092 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:02:06,094.094 INFO    ] Checking for system updates...
[2026-06-22 04:02:06,138.138 INFO    ] 200
[2026-06-22 04:02:06,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:02:06,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:02:06,226.226 INFO    ] No update needed
[2026-06-22 04:02:06,229.229 INFO    ] Checking for camera pi updates...
[2026-06-22 04:02:06,265.265 INFO    ] 200
[2026-06-22 04:02:06,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:02:06,311.311 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:02:06,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:02:06,392.392 INFO    ] No camera update needed
[2026-06-22 04:02:06,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:02:06,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:02:06,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:02:06,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:02:08,450.450 INFO    ] ================================================
[2026-06-22 04:02:08,465.465 INFO    ] Launching Daemon at Mon Jun 22 04:02:08 IST 2026
[2026-06-22 04:02:08,476.476 INFO    ] ================================================
[2026-06-22 04:02:09,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:02:09
[2026-06-22 04:02:09,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:02:09,900.900 INFO    ] Initializing speech engine...
[2026-06-22 04:02:09,909.909 INFO    ] 2026-06-22 04:02:09
[2026-06-22 04:02:10,154.154 INFO    ] 2026-06-22 04:02:10
[2026-06-22 04:02:10,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:02:10,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:02:10,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:02:10,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:02:10,523.523 INFO    ] time= 22/06/2026 04:02:10
[2026-06-22 04:02:10,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:02:10,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:02:10,676.676 INFO    ] No existing commands found in stream
[2026-06-22 04:02:15,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:02:15,703.703 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-22 04:02:19,354.354 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:02:19,357.357 INFO    ] Checking for system updates...
[2026-06-22 04:02:19,397.397 INFO    ] 200
[2026-06-22 04:02:19,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:02:19,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:02:19,454.454 INFO    ] No update needed
[2026-06-22 04:02:19,457.457 INFO    ] Checking for camera pi updates...
[2026-06-22 04:02:19,494.494 INFO    ] 200
[2026-06-22 04:02:19,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:02:19,539.539 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:02:19,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:02:19,638.638 INFO    ] No camera update needed
[2026-06-22 04:02:19,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:02:19,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:02:19,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:02:19,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:02:21,693.693 INFO    ] ================================================
[2026-06-22 04:02:21,708.708 INFO    ] Launching Daemon at Mon Jun 22 04:02:21 IST 2026
[2026-06-22 04:02:21,719.719 INFO    ] ================================================
[2026-06-22 04:02:22,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:02:22
[2026-06-22 04:02:22,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:02:23,217.217 INFO    ] Initializing speech engine...
[2026-06-22 04:02:23,226.226 INFO    ] 2026-06-22 04:02:23
[2026-06-22 04:02:23,474.474 INFO    ] 2026-06-22 04:02:23
[2026-06-22 04:02:23,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:02:23,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:02:23,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:02:23,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:02:23,832.832 INFO    ] time= 22/06/2026 04:02:23
[2026-06-22 04:02:23,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:02:23,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:02:23,958.958 INFO    ] No existing commands found in stream
[2026-06-22 04:02:28,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:02:28,972.972 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-22 04:02:31,372.372 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:02:31,375.375 INFO    ] Checking for system updates...
[2026-06-22 04:02:31,418.418 INFO    ] 200
[2026-06-22 04:02:31,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:02:31,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:02:31,482.482 INFO    ] No update needed
[2026-06-22 04:02:31,485.485 INFO    ] Checking for camera pi updates...
[2026-06-22 04:02:31,530.530 INFO    ] 200
[2026-06-22 04:02:31,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:02:31,580.580 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:02:31,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:02:31,669.669 INFO    ] No camera update needed
[2026-06-22 04:02:31,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:02:31,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:02:31,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:02:31,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:02:33,732.732 INFO    ] ================================================
[2026-06-22 04:02:33,747.747 INFO    ] Launching Daemon at Mon Jun 22 04:02:33 IST 2026
[2026-06-22 04:02:33,758.758 INFO    ] ================================================
[2026-06-22 04:02:34,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:02:34
[2026-06-22 04:02:34,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:02:35,127.127 INFO    ] Initializing speech engine...
[2026-06-22 04:02:35,136.136 INFO    ] 2026-06-22 04:02:35
[2026-06-22 04:02:35,399.399 INFO    ] 2026-06-22 04:02:35
[2026-06-22 04:02:35,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:02:35,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:02:35,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:02:35,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:02:35,883.883 INFO    ] time= 22/06/2026 04:02:35
[2026-06-22 04:02:35,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:02:35,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:02:36,022.022 INFO    ] No existing commands found in stream
[2026-06-22 04:02:41,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:02:41,037.037 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-22 04:02:44,133.133 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:02:44,136.136 INFO    ] Checking for system updates...
[2026-06-22 04:02:44,172.172 INFO    ] 200
[2026-06-22 04:02:44,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:02:44,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:02:44,239.239 INFO    ] No update needed
[2026-06-22 04:02:44,242.242 INFO    ] Checking for camera pi updates...
[2026-06-22 04:02:44,277.277 INFO    ] 200
[2026-06-22 04:02:44,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:02:44,322.322 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:02:44,485.485 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:02:44,488.488 INFO    ] No camera update needed
[2026-06-22 04:02:44,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:02:44,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:02:44,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:02:44,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:02:46,547.547 INFO    ] ================================================
[2026-06-22 04:02:46,562.562 INFO    ] Launching Daemon at Mon Jun 22 04:02:46 IST 2026
[2026-06-22 04:02:46,572.572 INFO    ] ================================================
[2026-06-22 04:02:47,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:02:47
[2026-06-22 04:02:47,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:02:48,018.018 INFO    ] Initializing speech engine...
[2026-06-22 04:02:48,039.039 INFO    ] 2026-06-22 04:02:48
[2026-06-22 04:02:48,295.295 INFO    ] 2026-06-22 04:02:48
[2026-06-22 04:02:48,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:02:48,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:02:48,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:02:48,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:02:48,633.633 INFO    ] time= 22/06/2026 04:02:48
[2026-06-22 04:02:48,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:02:48,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:02:48,749.749 INFO    ] No existing commands found in stream
[2026-06-22 04:02:53,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:02:53,788.788 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-22 04:02:55,234.234 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:02:55,237.237 INFO    ] Checking for system updates...
[2026-06-22 04:02:55,273.273 INFO    ] 200
[2026-06-22 04:02:55,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:02:55,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:02:55,338.338 INFO    ] No update needed
[2026-06-22 04:02:55,340.340 INFO    ] Checking for camera pi updates...
[2026-06-22 04:02:55,374.374 INFO    ] 200
[2026-06-22 04:02:55,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:02:55,425.425 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:02:55,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:02:55,515.515 INFO    ] No camera update needed
[2026-06-22 04:02:55,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:02:55,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:02:55,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:02:55,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:02:57,571.571 INFO    ] ================================================
[2026-06-22 04:02:57,587.587 INFO    ] Launching Daemon at Mon Jun 22 04:02:57 IST 2026
[2026-06-22 04:02:57,597.597 INFO    ] ================================================
[2026-06-22 04:02:58,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:02:58
[2026-06-22 04:02:58,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:02:59,025.025 INFO    ] Initializing speech engine...
[2026-06-22 04:02:59,033.033 INFO    ] 2026-06-22 04:02:59
[2026-06-22 04:02:59,302.302 INFO    ] 2026-06-22 04:02:59
[2026-06-22 04:02:59,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:02:59,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:02:59,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:02:59,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:02:59,665.665 INFO    ] time= 22/06/2026 04:02:59
[2026-06-22 04:02:59,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:02:59,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:02:59,845.845 INFO    ] No existing commands found in stream
[2026-06-22 04:03:04,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:03:04,876.876 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-22 04:03:05,595.595 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:03:05,598.598 INFO    ] Checking for system updates...
[2026-06-22 04:03:05,635.635 INFO    ] 200
[2026-06-22 04:03:05,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:03:05,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:03:05,699.699 INFO    ] No update needed
[2026-06-22 04:03:05,702.702 INFO    ] Checking for camera pi updates...
[2026-06-22 04:03:05,736.736 INFO    ] 200
[2026-06-22 04:03:05,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:03:05,783.783 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:03:05,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:03:05,882.882 INFO    ] No camera update needed
[2026-06-22 04:03:05,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:03:05,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:03:05,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:03:05,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:03:07,937.937 INFO    ] ================================================
[2026-06-22 04:03:07,952.952 INFO    ] Launching Daemon at Mon Jun 22 04:03:07 IST 2026
[2026-06-22 04:03:07,962.962 INFO    ] ================================================
[2026-06-22 04:03:08,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:03:08
[2026-06-22 04:03:09,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:03:09,427.427 INFO    ] Initializing speech engine...
[2026-06-22 04:03:09,432.432 INFO    ] 2026-06-22 04:03:09
[2026-06-22 04:03:09,705.705 INFO    ] 2026-06-22 04:03:09
[2026-06-22 04:03:09,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:03:09,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:03:09,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:03:10,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:03:10,072.072 INFO    ] time= 22/06/2026 04:03:10
[2026-06-22 04:03:10,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:03:10,102.102 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:03:10,178.178 INFO    ] No existing commands found in stream
[2026-06-22 04:03:15,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:03:15,196.196 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-22 04:03:15,573.573 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:03:15,576.576 INFO    ] Checking for system updates...
[2026-06-22 04:03:15,612.612 INFO    ] 200
[2026-06-22 04:03:15,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:03:15,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:03:15,671.671 INFO    ] No update needed
[2026-06-22 04:03:15,673.673 INFO    ] Checking for camera pi updates...
[2026-06-22 04:03:15,708.708 INFO    ] 200
[2026-06-22 04:03:15,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:03:15,751.751 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:03:15,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:03:15,839.839 INFO    ] No camera update needed
[2026-06-22 04:03:15,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:03:15,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:03:15,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:03:15,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:03:17,893.893 INFO    ] ================================================
[2026-06-22 04:03:17,908.908 INFO    ] Launching Daemon at Mon Jun 22 04:03:17 IST 2026
[2026-06-22 04:03:17,919.919 INFO    ] ================================================
[2026-06-22 04:03:18,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:03:18
[2026-06-22 04:03:19,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:03:19,288.288 INFO    ] Initializing speech engine...
[2026-06-22 04:03:19,297.297 INFO    ] 2026-06-22 04:03:19
[2026-06-22 04:03:19,556.556 INFO    ] 2026-06-22 04:03:19
[2026-06-22 04:03:19,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:03:19,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:03:19,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:03:19,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:03:20,027.027 INFO    ] time= 22/06/2026 04:03:19
[2026-06-22 04:03:20,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:03:20,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:03:20,166.166 INFO    ] No existing commands found in stream
[2026-06-22 04:03:25,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:03:25,181.181 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-22 04:03:25,699.699 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:03:25,701.701 INFO    ] Checking for system updates...
[2026-06-22 04:03:25,723.723 INFO    ] 200
[2026-06-22 04:03:25,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:03:25,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:03:25,758.758 INFO    ] No update needed
[2026-06-22 04:03:25,760.760 INFO    ] Checking for camera pi updates...
[2026-06-22 04:03:25,797.797 INFO    ] 200
[2026-06-22 04:03:25,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:03:25,841.841 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:03:25,977.977 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:03:25,980.980 INFO    ] No camera update needed
[2026-06-22 04:03:25,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:03:25,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:03:25,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:03:25,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:03:28,037.037 INFO    ] ================================================
[2026-06-22 04:03:28,053.053 INFO    ] Launching Daemon at Mon Jun 22 04:03:28 IST 2026
[2026-06-22 04:03:28,064.064 INFO    ] ================================================
[2026-06-22 04:03:28,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:03:28
[2026-06-22 04:03:29,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:03:29,392.392 INFO    ] Initializing speech engine...
[2026-06-22 04:03:29,402.402 INFO    ] 2026-06-22 04:03:29
[2026-06-22 04:03:29,654.654 INFO    ] 2026-06-22 04:03:29
[2026-06-22 04:03:29,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:03:29,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:03:29,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:03:30,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:03:30,017.017 INFO    ] time= 22/06/2026 04:03:30
[2026-06-22 04:03:30,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:03:30,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:03:30,139.139 INFO    ] No existing commands found in stream
[2026-06-22 04:03:35,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:03:35,155.155 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-22 04:03:38,444.444 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:03:38,447.447 INFO    ] Checking for system updates...
[2026-06-22 04:03:38,486.486 INFO    ] 200
[2026-06-22 04:03:38,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:03:38,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:03:38,543.543 INFO    ] No update needed
[2026-06-22 04:03:38,545.545 INFO    ] Checking for camera pi updates...
[2026-06-22 04:03:38,581.581 INFO    ] 200
[2026-06-22 04:03:38,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:03:38,624.624 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:03:38,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:03:38,712.712 INFO    ] No camera update needed
[2026-06-22 04:03:38,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:03:38,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:03:38,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:03:38,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:03:40,772.772 INFO    ] ================================================
[2026-06-22 04:03:40,789.789 INFO    ] Launching Daemon at Mon Jun 22 04:03:40 IST 2026
[2026-06-22 04:03:40,800.800 INFO    ] ================================================
[2026-06-22 04:03:41,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:03:41
[2026-06-22 04:03:42,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:03:42,310.310 INFO    ] Initializing speech engine...
[2026-06-22 04:03:42,321.321 INFO    ] 2026-06-22 04:03:42
[2026-06-22 04:03:42,597.597 INFO    ] 2026-06-22 04:03:42
[2026-06-22 04:03:42,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:03:42,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:03:42,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:03:43,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:03:43,087.087 INFO    ] time= 22/06/2026 04:03:43
[2026-06-22 04:03:43,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:03:43,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:03:43,287.287 INFO    ] No existing commands found in stream
[2026-06-22 04:03:48,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:03:48,314.314 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-22 04:03:50,420.420 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:03:50,422.422 INFO    ] Checking for system updates...
[2026-06-22 04:03:50,444.444 INFO    ] 200
[2026-06-22 04:03:50,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:03:50,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:03:50,480.480 INFO    ] No update needed
[2026-06-22 04:03:50,481.481 INFO    ] Checking for camera pi updates...
[2026-06-22 04:03:50,523.523 INFO    ] 200
[2026-06-22 04:03:50,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:03:50,568.568 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:03:50,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:03:50,645.645 INFO    ] No camera update needed
[2026-06-22 04:03:50,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:03:50,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:03:50,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:03:50,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:03:52,706.706 INFO    ] ================================================
[2026-06-22 04:03:52,721.721 INFO    ] Launching Daemon at Mon Jun 22 04:03:52 IST 2026
[2026-06-22 04:03:52,732.732 INFO    ] ================================================
[2026-06-22 04:03:53,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:03:53
[2026-06-22 04:03:53,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:03:54,046.046 INFO    ] Initializing speech engine...
[2026-06-22 04:03:54,055.055 INFO    ] 2026-06-22 04:03:54
[2026-06-22 04:03:54,330.330 INFO    ] 2026-06-22 04:03:54
[2026-06-22 04:03:54,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:03:54,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:03:54,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:03:54,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:03:54,708.708 INFO    ] time= 22/06/2026 04:03:54
[2026-06-22 04:03:54,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:03:54,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:03:54,882.882 INFO    ] No existing commands found in stream
[2026-06-22 04:03:59,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:03:59,915.915 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-22 04:04:02,395.395 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:04:02,398.398 INFO    ] Checking for system updates...
[2026-06-22 04:04:02,446.446 INFO    ] 200
[2026-06-22 04:04:02,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:04:02,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:04:02,538.538 INFO    ] No update needed
[2026-06-22 04:04:02,541.541 INFO    ] Checking for camera pi updates...
[2026-06-22 04:04:02,606.606 INFO    ] 200
[2026-06-22 04:04:02,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:04:02,687.687 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:04:02,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:04:02,789.789 INFO    ] No camera update needed
[2026-06-22 04:04:02,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:04:02,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:04:02,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:04:02,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:04:04,856.856 INFO    ] ================================================
[2026-06-22 04:04:04,871.871 INFO    ] Launching Daemon at Mon Jun 22 04:04:04 IST 2026
[2026-06-22 04:04:04,882.882 INFO    ] ================================================
[2026-06-22 04:04:05,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:04:05
[2026-06-22 04:04:06,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:04:06,399.399 INFO    ] Initializing speech engine...
[2026-06-22 04:04:06,407.407 INFO    ] 2026-06-22 04:04:06
[2026-06-22 04:04:06,701.701 INFO    ] 2026-06-22 04:04:06
[2026-06-22 04:04:06,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:04:06,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:04:06,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:04:07,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:04:07,193.193 INFO    ] time= 22/06/2026 04:04:07
[2026-06-22 04:04:07,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:04:07,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:04:07,378.378 INFO    ] No existing commands found in stream
[2026-06-22 04:04:12,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:04:12,403.403 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-22 04:04:13,519.519 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:04:13,520.520 INFO    ] Checking for system updates...
[2026-06-22 04:04:13,541.541 INFO    ] 200
[2026-06-22 04:04:13,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:04:13,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:04:13,576.576 INFO    ] No update needed
[2026-06-22 04:04:13,577.577 INFO    ] Checking for camera pi updates...
[2026-06-22 04:04:13,604.604 INFO    ] 200
[2026-06-22 04:04:13,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:04:13,648.648 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:04:13,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:04:13,742.742 INFO    ] No camera update needed
[2026-06-22 04:04:13,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:04:13,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:04:13,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:04:13,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:04:15,798.798 INFO    ] ================================================
[2026-06-22 04:04:15,813.813 INFO    ] Launching Daemon at Mon Jun 22 04:04:15 IST 2026
[2026-06-22 04:04:15,823.823 INFO    ] ================================================
[2026-06-22 04:04:16,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:04:16
[2026-06-22 04:04:16,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:04:17,229.229 INFO    ] Initializing speech engine...
[2026-06-22 04:04:17,241.241 INFO    ] 2026-06-22 04:04:17
[2026-06-22 04:04:17,519.519 INFO    ] 2026-06-22 04:04:17
[2026-06-22 04:04:17,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:04:17,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:04:17,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:04:17,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:04:17,988.988 INFO    ] time= 22/06/2026 04:04:17
[2026-06-22 04:04:18,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:04:18,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:04:18,155.155 INFO    ] No existing commands found in stream
[2026-06-22 04:04:23,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:04:23,169.169 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-22 04:04:24,599.599 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:04:24,601.601 INFO    ] Checking for system updates...
[2026-06-22 04:04:24,622.622 INFO    ] 200
[2026-06-22 04:04:24,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:04:24,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:04:24,659.659 INFO    ] No update needed
[2026-06-22 04:04:24,660.660 INFO    ] Checking for camera pi updates...
[2026-06-22 04:04:24,681.681 INFO    ] 200
[2026-06-22 04:04:24,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:04:24,721.721 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:04:24,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:04:24,808.808 INFO    ] No camera update needed
[2026-06-22 04:04:24,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:04:24,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:04:24,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:04:24,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:04:26,864.864 INFO    ] ================================================
[2026-06-22 04:04:26,879.879 INFO    ] Launching Daemon at Mon Jun 22 04:04:26 IST 2026
[2026-06-22 04:04:26,890.890 INFO    ] ================================================
[2026-06-22 04:04:27,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:04:27
[2026-06-22 04:04:28,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:04:28,302.302 INFO    ] Initializing speech engine...
[2026-06-22 04:04:28,311.311 INFO    ] 2026-06-22 04:04:28
[2026-06-22 04:04:28,603.603 INFO    ] 2026-06-22 04:04:28
[2026-06-22 04:04:28,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:04:28,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:04:28,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:04:28,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:04:28,997.997 INFO    ] time= 22/06/2026 04:04:28
[2026-06-22 04:04:29,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:04:29,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:04:29,108.108 INFO    ] No existing commands found in stream
[2026-06-22 04:04:34,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:04:34,136.136 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-22 04:04:34,925.925 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:04:34,927.927 INFO    ] Checking for system updates...
[2026-06-22 04:04:34,968.968 INFO    ] 200
[2026-06-22 04:04:34,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:04:35,030.030 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:04:35,032.032 INFO    ] No update needed
[2026-06-22 04:04:35,035.035 INFO    ] Checking for camera pi updates...
[2026-06-22 04:04:35,069.069 INFO    ] 200
[2026-06-22 04:04:35,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:04:35,113.113 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:04:35,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:04:35,189.189 INFO    ] No camera update needed
[2026-06-22 04:04:35,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:04:35,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:04:35,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:04:35,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:04:37,245.245 INFO    ] ================================================
[2026-06-22 04:04:37,260.260 INFO    ] Launching Daemon at Mon Jun 22 04:04:37 IST 2026
[2026-06-22 04:04:37,272.272 INFO    ] ================================================
[2026-06-22 04:04:37,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:04:37
[2026-06-22 04:04:38,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:04:38,698.698 INFO    ] Initializing speech engine...
[2026-06-22 04:04:38,707.707 INFO    ] 2026-06-22 04:04:38
[2026-06-22 04:04:38,953.953 INFO    ] 2026-06-22 04:04:38
[2026-06-22 04:04:38,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:04:39,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:04:39,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:04:39,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:04:39,322.322 INFO    ] time= 22/06/2026 04:04:39
[2026-06-22 04:04:39,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:04:39,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:04:39,466.466 INFO    ] No existing commands found in stream
[2026-06-22 04:04:44,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:04:44,480.480 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-22 04:04:47,398.398 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:04:47,400.400 INFO    ] Checking for system updates...
[2026-06-22 04:04:47,441.441 INFO    ] 200
[2026-06-22 04:04:47,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:04:47,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:04:47,500.500 INFO    ] No update needed
[2026-06-22 04:04:47,502.502 INFO    ] Checking for camera pi updates...
[2026-06-22 04:04:47,544.544 INFO    ] 200
[2026-06-22 04:04:47,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:04:47,588.588 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:04:47,768.768 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:04:47,771.771 INFO    ] No camera update needed
[2026-06-22 04:04:47,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:04:47,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:04:47,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:04:47,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:04:49,834.834 INFO    ] ================================================
[2026-06-22 04:04:49,850.850 INFO    ] Launching Daemon at Mon Jun 22 04:04:49 IST 2026
[2026-06-22 04:04:49,861.861 INFO    ] ================================================
[2026-06-22 04:04:50,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:04:50
[2026-06-22 04:04:50,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:04:51,249.249 INFO    ] Initializing speech engine...
[2026-06-22 04:04:51,260.260 INFO    ] 2026-06-22 04:04:51
[2026-06-22 04:04:51,524.524 INFO    ] 2026-06-22 04:04:51
[2026-06-22 04:04:51,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:04:51,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:04:51,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:04:51,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:04:51,921.921 INFO    ] time= 22/06/2026 04:04:51
[2026-06-22 04:04:51,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:04:51,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:04:52,009.009 INFO    ] No existing commands found in stream
[2026-06-22 04:04:57,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:04:57,032.032 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-22 04:05:00,624.624 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:05:00,627.627 INFO    ] Checking for system updates...
[2026-06-22 04:05:00,667.667 INFO    ] 200
[2026-06-22 04:05:00,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:05:00,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:05:00,727.727 INFO    ] No update needed
[2026-06-22 04:05:00,730.730 INFO    ] Checking for camera pi updates...
[2026-06-22 04:05:00,765.765 INFO    ] 200
[2026-06-22 04:05:00,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:05:00,814.814 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:05:00,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:05:00,895.895 INFO    ] No camera update needed
[2026-06-22 04:05:00,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:05:00,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:05:00,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:05:00,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:05:02,957.957 INFO    ] ================================================
[2026-06-22 04:05:02,972.972 INFO    ] Launching Daemon at Mon Jun 22 04:05:02 IST 2026
[2026-06-22 04:05:02,983.983 INFO    ] ================================================
[2026-06-22 04:05:03,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:05:03
[2026-06-22 04:05:04,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:05:04,638.638 INFO    ] Initializing speech engine...
[2026-06-22 04:05:04,652.652 INFO    ] 2026-06-22 04:05:04
[2026-06-22 04:05:04,935.935 INFO    ] 2026-06-22 04:05:04
[2026-06-22 04:05:05,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:05:05,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:05:05,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:05:05,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:05:05,467.467 INFO    ] time= 22/06/2026 04:05:05
[2026-06-22 04:05:05,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:05:05,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:05:05,618.618 INFO    ] No existing commands found in stream
[2026-06-22 04:05:10,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:05:10,646.646 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-22 04:05:14,138.138 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:05:14,141.141 INFO    ] Checking for system updates...
[2026-06-22 04:05:14,181.181 INFO    ] 200
[2026-06-22 04:05:14,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:05:14,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:05:14,243.243 INFO    ] No update needed
[2026-06-22 04:05:14,246.246 INFO    ] Checking for camera pi updates...
[2026-06-22 04:05:14,284.284 INFO    ] 200
[2026-06-22 04:05:14,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:05:14,335.335 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:05:14,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:05:14,419.419 INFO    ] No camera update needed
[2026-06-22 04:05:14,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:05:14,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:05:14,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:05:14,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:05:16,475.475 INFO    ] ================================================
[2026-06-22 04:05:16,491.491 INFO    ] Launching Daemon at Mon Jun 22 04:05:16 IST 2026
[2026-06-22 04:05:16,503.503 INFO    ] ================================================
[2026-06-22 04:05:17,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:05:17
[2026-06-22 04:05:17,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:05:18,079.079 INFO    ] Initializing speech engine...
[2026-06-22 04:05:18,088.088 INFO    ] 2026-06-22 04:05:18
[2026-06-22 04:05:18,391.391 INFO    ] 2026-06-22 04:05:18
[2026-06-22 04:05:18,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:05:18,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:05:18,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:05:18,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:05:18,869.869 INFO    ] time= 22/06/2026 04:05:18
[2026-06-22 04:05:18,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:05:18,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:05:19,064.064 INFO    ] No existing commands found in stream
[2026-06-22 04:05:24,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:05:24,090.090 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-22 04:05:26,382.382 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:05:26,386.386 INFO    ] Checking for system updates...
[2026-06-22 04:05:26,423.423 INFO    ] 200
[2026-06-22 04:05:26,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:05:26,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:05:26,491.491 INFO    ] No update needed
[2026-06-22 04:05:26,494.494 INFO    ] Checking for camera pi updates...
[2026-06-22 04:05:26,534.534 INFO    ] 200
[2026-06-22 04:05:26,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:05:26,579.579 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:05:26,702.702 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:05:26,705.705 INFO    ] No camera update needed
[2026-06-22 04:05:26,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:05:26,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:05:26,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:05:26,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:05:28,767.767 INFO    ] ================================================
[2026-06-22 04:05:28,783.783 INFO    ] Launching Daemon at Mon Jun 22 04:05:28 IST 2026
[2026-06-22 04:05:28,794.794 INFO    ] ================================================
[2026-06-22 04:05:29,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:05:29
[2026-06-22 04:05:29,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:05:30,216.216 INFO    ] Initializing speech engine...
[2026-06-22 04:05:30,224.224 INFO    ] 2026-06-22 04:05:30
[2026-06-22 04:05:30,470.470 INFO    ] 2026-06-22 04:05:30
[2026-06-22 04:05:30,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:05:30,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:05:30,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:05:30,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:05:30,838.838 INFO    ] time= 22/06/2026 04:05:30
[2026-06-22 04:05:30,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:05:30,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:05:30,912.912 INFO    ] No existing commands found in stream
[2026-06-22 04:05:35,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:05:35,928.928 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-22 04:05:40,002.002 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:05:40,005.005 INFO    ] Checking for system updates...
[2026-06-22 04:05:40,044.044 INFO    ] 200
[2026-06-22 04:05:40,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:05:40,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:05:40,101.101 INFO    ] No update needed
[2026-06-22 04:05:40,104.104 INFO    ] Checking for camera pi updates...
[2026-06-22 04:05:40,141.141 INFO    ] 200
[2026-06-22 04:05:40,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:05:40,184.184 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:05:40,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:05:40,255.255 INFO    ] No camera update needed
[2026-06-22 04:05:40,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:05:40,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:05:40,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:05:40,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:05:42,313.313 INFO    ] ================================================
[2026-06-22 04:05:42,328.328 INFO    ] Launching Daemon at Mon Jun 22 04:05:42 IST 2026
[2026-06-22 04:05:42,339.339 INFO    ] ================================================
[2026-06-22 04:05:42,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:05:42
[2026-06-22 04:05:43,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:05:43,661.661 INFO    ] Initializing speech engine...
[2026-06-22 04:05:43,667.667 INFO    ] 2026-06-22 04:05:43
[2026-06-22 04:05:43,962.962 INFO    ] 2026-06-22 04:05:43
[2026-06-22 04:05:44,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:05:44,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:05:44,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:05:44,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:05:44,319.319 INFO    ] time= 22/06/2026 04:05:44
[2026-06-22 04:05:44,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:05:44,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:05:44,399.399 INFO    ] No existing commands found in stream
[2026-06-22 04:05:49,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:05:49,413.413 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-22 04:05:53,235.235 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:05:53,237.237 INFO    ] Checking for system updates...
[2026-06-22 04:05:53,274.274 INFO    ] 200
[2026-06-22 04:05:53,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:05:53,344.344 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:05:53,346.346 INFO    ] No update needed
[2026-06-22 04:05:53,349.349 INFO    ] Checking for camera pi updates...
[2026-06-22 04:05:53,387.387 INFO    ] 200
[2026-06-22 04:05:53,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:05:53,434.434 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:05:53,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:05:53,536.536 INFO    ] No camera update needed
[2026-06-22 04:05:53,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:05:53,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:05:53,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:05:53,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:05:55,591.591 INFO    ] ================================================
[2026-06-22 04:05:55,607.607 INFO    ] Launching Daemon at Mon Jun 22 04:05:55 IST 2026
[2026-06-22 04:05:55,619.619 INFO    ] ================================================
[2026-06-22 04:05:56,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:05:56
[2026-06-22 04:05:56,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:05:56,936.936 INFO    ] Initializing speech engine...
[2026-06-22 04:05:56,955.955 INFO    ] 2026-06-22 04:05:56
[2026-06-22 04:05:57,201.201 INFO    ] 2026-06-22 04:05:57
[2026-06-22 04:05:57,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:05:57,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:05:57,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:05:57,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:05:57,580.580 INFO    ] time= 22/06/2026 04:05:57
[2026-06-22 04:05:57,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:05:57,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:05:57,765.765 INFO    ] No existing commands found in stream
[2026-06-22 04:06:02,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:06:02,789.789 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-22 04:06:06,891.891 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:06:06,893.893 INFO    ] Checking for system updates...
[2026-06-22 04:06:06,928.928 INFO    ] 200
[2026-06-22 04:06:06,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:06:06,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:06:06,987.987 INFO    ] No update needed
[2026-06-22 04:06:06,989.989 INFO    ] Checking for camera pi updates...
[2026-06-22 04:06:07,027.027 INFO    ] 200
[2026-06-22 04:06:07,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:06:07,070.070 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:06:07,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:06:07,131.131 INFO    ] No camera update needed
[2026-06-22 04:06:07,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:06:07,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:06:07,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:06:07,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:06:09,188.188 INFO    ] ================================================
[2026-06-22 04:06:09,204.204 INFO    ] Launching Daemon at Mon Jun 22 04:06:09 IST 2026
[2026-06-22 04:06:09,215.215 INFO    ] ================================================
[2026-06-22 04:06:09,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:06:09
[2026-06-22 04:06:10,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:06:10,632.632 INFO    ] Initializing speech engine...
[2026-06-22 04:06:10,639.639 INFO    ] 2026-06-22 04:06:10
[2026-06-22 04:06:10,928.928 INFO    ] 2026-06-22 04:06:10
[2026-06-22 04:06:10,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:06:11,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:06:11,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:06:11,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:06:11,268.268 INFO    ] time= 22/06/2026 04:06:11
[2026-06-22 04:06:11,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:06:11,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:06:11,380.380 INFO    ] No existing commands found in stream
[2026-06-22 04:06:16,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:06:16,420.420 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-22 04:06:17,946.946 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:06:17,947.947 INFO    ] Checking for system updates...
[2026-06-22 04:06:17,968.968 INFO    ] 200
[2026-06-22 04:06:17,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:06:18,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:06:18,008.008 INFO    ] No update needed
[2026-06-22 04:06:18,010.010 INFO    ] Checking for camera pi updates...
[2026-06-22 04:06:18,049.049 INFO    ] 200
[2026-06-22 04:06:18,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:06:18,094.094 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:06:18,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:06:18,151.151 INFO    ] No camera update needed
[2026-06-22 04:06:18,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:06:18,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:06:18,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:06:18,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:06:20,206.206 INFO    ] ================================================
[2026-06-22 04:06:20,222.222 INFO    ] Launching Daemon at Mon Jun 22 04:06:20 IST 2026
[2026-06-22 04:06:20,234.234 INFO    ] ================================================
[2026-06-22 04:06:20,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:06:20
[2026-06-22 04:06:21,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:06:21,909.909 INFO    ] Initializing speech engine...
[2026-06-22 04:06:21,920.920 INFO    ] 2026-06-22 04:06:21
[2026-06-22 04:06:22,197.197 INFO    ] 2026-06-22 04:06:22
[2026-06-22 04:06:22,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:06:22,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:06:22,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:06:22,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:06:22,654.654 INFO    ] time= 22/06/2026 04:06:22
[2026-06-22 04:06:22,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:06:22,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:06:22,825.825 INFO    ] No existing commands found in stream
[2026-06-22 04:06:27,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:06:27,841.841 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-22 04:06:29,167.167 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:06:29,170.170 INFO    ] Checking for system updates...
[2026-06-22 04:06:29,212.212 INFO    ] 200
[2026-06-22 04:06:29,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:06:29,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:06:29,273.273 INFO    ] No update needed
[2026-06-22 04:06:29,276.276 INFO    ] Checking for camera pi updates...
[2026-06-22 04:06:29,312.312 INFO    ] 200
[2026-06-22 04:06:29,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:06:29,357.357 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:06:29,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:06:29,412.412 INFO    ] No camera update needed
[2026-06-22 04:06:29,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:06:29,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:06:29,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:06:29,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:06:31,473.473 INFO    ] ================================================
[2026-06-22 04:06:31,489.489 INFO    ] Launching Daemon at Mon Jun 22 04:06:31 IST 2026
[2026-06-22 04:06:31,501.501 INFO    ] ================================================
[2026-06-22 04:06:32,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:06:32
[2026-06-22 04:06:32,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:06:33,063.063 INFO    ] Initializing speech engine...
[2026-06-22 04:06:33,076.076 INFO    ] 2026-06-22 04:06:33
[2026-06-22 04:06:33,367.367 INFO    ] 2026-06-22 04:06:33
[2026-06-22 04:06:33,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:06:33,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:06:33,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:06:33,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:06:33,736.736 INFO    ] time= 22/06/2026 04:06:33
[2026-06-22 04:06:33,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:06:33,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:06:33,850.850 INFO    ] No existing commands found in stream
[2026-06-22 04:06:38,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:06:38,865.865 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-22 04:06:40,670.670 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:06:40,672.672 INFO    ] Checking for system updates...
[2026-06-22 04:06:40,708.708 INFO    ] 200
[2026-06-22 04:06:40,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:06:40,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:06:40,766.766 INFO    ] No update needed
[2026-06-22 04:06:40,768.768 INFO    ] Checking for camera pi updates...
[2026-06-22 04:06:40,802.802 INFO    ] 200
[2026-06-22 04:06:40,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:06:40,854.854 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:06:40,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:06:40,906.906 INFO    ] No camera update needed
[2026-06-22 04:06:40,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:06:40,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:06:40,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:06:40,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:06:42,964.964 INFO    ] ================================================
[2026-06-22 04:06:42,981.981 INFO    ] Launching Daemon at Mon Jun 22 04:06:42 IST 2026
[2026-06-22 04:06:42,992.992 INFO    ] ================================================
[2026-06-22 04:06:43,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:06:43
[2026-06-22 04:06:44,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:06:44,321.321 INFO    ] Initializing speech engine...
[2026-06-22 04:06:44,337.337 INFO    ] 2026-06-22 04:06:44
[2026-06-22 04:06:44,611.611 INFO    ] 2026-06-22 04:06:44
[2026-06-22 04:06:44,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:06:44,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:06:44,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:06:44,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:06:44,966.966 INFO    ] time= 22/06/2026 04:06:44
[2026-06-22 04:06:44,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:06:45,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:06:45,083.083 INFO    ] No existing commands found in stream
[2026-06-22 04:06:50,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:06:50,098.098 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-22 04:06:53,129.129 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:06:53,131.131 INFO    ] Checking for system updates...
[2026-06-22 04:06:53,171.171 INFO    ] 200
[2026-06-22 04:06:53,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:06:53,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:06:53,228.228 INFO    ] No update needed
[2026-06-22 04:06:53,231.231 INFO    ] Checking for camera pi updates...
[2026-06-22 04:06:53,265.265 INFO    ] 200
[2026-06-22 04:06:53,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:06:53,308.308 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:06:53,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:06:53,459.459 INFO    ] No camera update needed
[2026-06-22 04:06:53,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:06:53,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:06:53,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:06:53,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:06:55,519.519 INFO    ] ================================================
[2026-06-22 04:06:55,535.535 INFO    ] Launching Daemon at Mon Jun 22 04:06:55 IST 2026
[2026-06-22 04:06:55,546.546 INFO    ] ================================================
[2026-06-22 04:06:56,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:06:56
[2026-06-22 04:06:56,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:06:56,992.992 INFO    ] Initializing speech engine...
[2026-06-22 04:06:57,014.014 INFO    ] 2026-06-22 04:06:57
[2026-06-22 04:06:57,272.272 INFO    ] 2026-06-22 04:06:57
[2026-06-22 04:06:57,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:06:57,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:06:57,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:06:57,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:06:57,769.769 INFO    ] time= 22/06/2026 04:06:57
[2026-06-22 04:06:57,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:06:57,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:06:57,942.942 INFO    ] No existing commands found in stream
[2026-06-22 04:07:02,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:07:02,970.970 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-22 04:07:06,277.277 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:07:06,279.279 INFO    ] Checking for system updates...
[2026-06-22 04:07:06,320.320 INFO    ] 200
[2026-06-22 04:07:06,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:07:06,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:07:06,379.379 INFO    ] No update needed
[2026-06-22 04:07:06,382.382 INFO    ] Checking for camera pi updates...
[2026-06-22 04:07:06,416.416 INFO    ] 200
[2026-06-22 04:07:06,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:07:06,458.458 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:07:06,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:07:06,568.568 INFO    ] No camera update needed
[2026-06-22 04:07:06,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:07:06,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:07:06,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:07:06,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:07:08,625.625 INFO    ] ================================================
[2026-06-22 04:07:08,647.647 INFO    ] Launching Daemon at Mon Jun 22 04:07:08 IST 2026
[2026-06-22 04:07:08,663.663 INFO    ] ================================================
[2026-06-22 04:07:09,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:07:09
[2026-06-22 04:07:10,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:07:10,323.323 INFO    ] Initializing speech engine...
[2026-06-22 04:07:10,338.338 INFO    ] 2026-06-22 04:07:10
[2026-06-22 04:07:10,625.625 INFO    ] 2026-06-22 04:07:10
[2026-06-22 04:07:10,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:07:10,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:07:10,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:07:11,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:07:11,074.074 INFO    ] time= 22/06/2026 04:07:11
[2026-06-22 04:07:11,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:07:11,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:07:11,241.241 INFO    ] No existing commands found in stream
[2026-06-22 04:07:16,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:07:16,258.258 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-22 04:07:19,729.729 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:07:19,732.732 INFO    ] Checking for system updates...
[2026-06-22 04:07:19,769.769 INFO    ] 200
[2026-06-22 04:07:19,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:07:19,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:07:19,829.829 INFO    ] No update needed
[2026-06-22 04:07:19,832.832 INFO    ] Checking for camera pi updates...
[2026-06-22 04:07:19,871.871 INFO    ] 200
[2026-06-22 04:07:19,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:07:19,920.920 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:07:20,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:07:20,023.023 INFO    ] No camera update needed
[2026-06-22 04:07:20,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:07:20,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:07:20,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:07:20,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:07:22,084.084 INFO    ] ================================================
[2026-06-22 04:07:22,100.100 INFO    ] Launching Daemon at Mon Jun 22 04:07:22 IST 2026
[2026-06-22 04:07:22,111.111 INFO    ] ================================================
[2026-06-22 04:07:22,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:07:22
[2026-06-22 04:07:23,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:07:23,577.577 INFO    ] Initializing speech engine...
[2026-06-22 04:07:23,588.588 INFO    ] 2026-06-22 04:07:23
[2026-06-22 04:07:23,852.852 INFO    ] 2026-06-22 04:07:23
[2026-06-22 04:07:23,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:07:24,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:07:24,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:07:24,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:07:24,321.321 INFO    ] time= 22/06/2026 04:07:24
[2026-06-22 04:07:24,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:07:24,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:07:24,542.542 INFO    ] No existing commands found in stream
[2026-06-22 04:07:29,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:07:29,567.567 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-22 04:07:30,959.959 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:07:30,962.962 INFO    ] Checking for system updates...
[2026-06-22 04:07:31,002.002 INFO    ] 200
[2026-06-22 04:07:31,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:07:31,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:07:31,061.061 INFO    ] No update needed
[2026-06-22 04:07:31,064.064 INFO    ] Checking for camera pi updates...
[2026-06-22 04:07:31,099.099 INFO    ] 200
[2026-06-22 04:07:31,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:07:31,148.148 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:07:31,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:07:31,250.250 INFO    ] No camera update needed
[2026-06-22 04:07:31,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:07:31,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:07:31,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:07:31,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:07:33,312.312 INFO    ] ================================================
[2026-06-22 04:07:33,328.328 INFO    ] Launching Daemon at Mon Jun 22 04:07:33 IST 2026
[2026-06-22 04:07:33,338.338 INFO    ] ================================================
[2026-06-22 04:07:33,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:07:33
[2026-06-22 04:07:34,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:07:34,806.806 INFO    ] Initializing speech engine...
[2026-06-22 04:07:34,814.814 INFO    ] 2026-06-22 04:07:34
[2026-06-22 04:07:35,074.074 INFO    ] 2026-06-22 04:07:35
[2026-06-22 04:07:35,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:07:35,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:07:35,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:07:35,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:07:35,481.481 INFO    ] time= 22/06/2026 04:07:35
[2026-06-22 04:07:35,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:07:35,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:07:35,572.572 INFO    ] No existing commands found in stream
[2026-06-22 04:07:40,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:07:40,587.587 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-22 04:07:44,639.639 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:07:44,640.640 INFO    ] Checking for system updates...
[2026-06-22 04:07:44,661.661 INFO    ] 200
[2026-06-22 04:07:44,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:07:44,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:07:44,696.696 INFO    ] No update needed
[2026-06-22 04:07:44,697.697 INFO    ] Checking for camera pi updates...
[2026-06-22 04:07:44,719.719 INFO    ] 200
[2026-06-22 04:07:44,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:07:44,743.743 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:07:44,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:07:44,827.827 INFO    ] No camera update needed
[2026-06-22 04:07:44,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:07:44,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:07:44,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:07:44,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:07:46,885.885 INFO    ] ================================================
[2026-06-22 04:07:46,901.901 INFO    ] Launching Daemon at Mon Jun 22 04:07:46 IST 2026
[2026-06-22 04:07:46,912.912 INFO    ] ================================================
[2026-06-22 04:07:47,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:07:47
[2026-06-22 04:07:48,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:07:48,298.298 INFO    ] Initializing speech engine...
[2026-06-22 04:07:48,307.307 INFO    ] 2026-06-22 04:07:48
[2026-06-22 04:07:48,584.584 INFO    ] 2026-06-22 04:07:48
[2026-06-22 04:07:48,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:07:48,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:07:48,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:07:49,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:07:49,025.025 INFO    ] time= 22/06/2026 04:07:49
[2026-06-22 04:07:49,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:07:49,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:07:49,194.194 INFO    ] No existing commands found in stream
[2026-06-22 04:07:54,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:07:54,209.209 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-22 04:07:56,121.121 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:07:56,123.123 INFO    ] Checking for system updates...
[2026-06-22 04:07:56,159.159 INFO    ] 200
[2026-06-22 04:07:56,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:07:56,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:07:56,215.215 INFO    ] No update needed
[2026-06-22 04:07:56,218.218 INFO    ] Checking for camera pi updates...
[2026-06-22 04:07:56,251.251 INFO    ] 200
[2026-06-22 04:07:56,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:07:56,299.299 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:07:56,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:07:56,401.401 INFO    ] No camera update needed
[2026-06-22 04:07:56,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:07:56,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:07:56,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:07:56,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:07:58,457.457 INFO    ] ================================================
[2026-06-22 04:07:58,472.472 INFO    ] Launching Daemon at Mon Jun 22 04:07:58 IST 2026
[2026-06-22 04:07:58,483.483 INFO    ] ================================================
[2026-06-22 04:07:59,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:07:59
[2026-06-22 04:07:59,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:07:59,963.963 INFO    ] Initializing speech engine...
[2026-06-22 04:07:59,969.969 INFO    ] 2026-06-22 04:07:59
[2026-06-22 04:08:00,229.229 INFO    ] 2026-06-22 04:08:00
[2026-06-22 04:08:00,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:08:00,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:08:00,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:08:00,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:08:00,676.676 INFO    ] time= 22/06/2026 04:08:00
[2026-06-22 04:08:00,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:08:00,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:08:00,840.840 INFO    ] No existing commands found in stream
[2026-06-22 04:08:05,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:08:05,855.855 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-22 04:08:09,945.945 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:08:09,947.947 INFO    ] Checking for system updates...
[2026-06-22 04:08:09,988.988 INFO    ] 200
[2026-06-22 04:08:09,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:08:10,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:08:10,046.046 INFO    ] No update needed
[2026-06-22 04:08:10,048.048 INFO    ] Checking for camera pi updates...
[2026-06-22 04:08:10,086.086 INFO    ] 200
[2026-06-22 04:08:10,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:08:10,134.134 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:08:10,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:08:10,187.187 INFO    ] No camera update needed
[2026-06-22 04:08:10,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:08:10,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:08:10,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:08:10,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:08:12,245.245 INFO    ] ================================================
[2026-06-22 04:08:12,261.261 INFO    ] Launching Daemon at Mon Jun 22 04:08:12 IST 2026
[2026-06-22 04:08:12,272.272 INFO    ] ================================================
[2026-06-22 04:08:12,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:08:12
[2026-06-22 04:08:13,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:08:13,793.793 INFO    ] Initializing speech engine...
[2026-06-22 04:08:13,802.802 INFO    ] 2026-06-22 04:08:13
[2026-06-22 04:08:14,103.103 INFO    ] 2026-06-22 04:08:14
[2026-06-22 04:08:14,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:08:14,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:08:14,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:08:14,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:08:14,633.633 INFO    ] time= 22/06/2026 04:08:14
[2026-06-22 04:08:14,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:08:14,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:08:14,818.818 INFO    ] No existing commands found in stream
[2026-06-22 04:08:19,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:08:19,855.855 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-22 04:08:22,616.616 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:08:22,618.618 INFO    ] Checking for system updates...
[2026-06-22 04:08:22,640.640 INFO    ] 200
[2026-06-22 04:08:22,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:08:22,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:08:22,677.677 INFO    ] No update needed
[2026-06-22 04:08:22,679.679 INFO    ] Checking for camera pi updates...
[2026-06-22 04:08:22,702.702 INFO    ] 200
[2026-06-22 04:08:22,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:08:22,747.747 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:08:22,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:08:22,806.806 INFO    ] No camera update needed
[2026-06-22 04:08:22,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:08:22,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:08:22,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:08:22,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:08:24,867.867 INFO    ] ================================================
[2026-06-22 04:08:24,882.882 INFO    ] Launching Daemon at Mon Jun 22 04:08:24 IST 2026
[2026-06-22 04:08:24,893.893 INFO    ] ================================================
[2026-06-22 04:08:25,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:08:25
[2026-06-22 04:08:26,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:08:26,393.393 INFO    ] Initializing speech engine...
[2026-06-22 04:08:26,402.402 INFO    ] 2026-06-22 04:08:26
[2026-06-22 04:08:26,694.694 INFO    ] 2026-06-22 04:08:26
[2026-06-22 04:08:26,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:08:26,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:08:27,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:08:27,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:08:27,197.197 INFO    ] time= 22/06/2026 04:08:27
[2026-06-22 04:08:27,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:08:27,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:08:27,417.417 INFO    ] No existing commands found in stream
[2026-06-22 04:08:32,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:08:32,440.440 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-22 04:08:33,399.399 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:08:33,402.402 INFO    ] Checking for system updates...
[2026-06-22 04:08:33,439.439 INFO    ] 200
[2026-06-22 04:08:33,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:08:33,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:08:33,500.500 INFO    ] No update needed
[2026-06-22 04:08:33,503.503 INFO    ] Checking for camera pi updates...
[2026-06-22 04:08:33,542.542 INFO    ] 200
[2026-06-22 04:08:33,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:08:33,590.590 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:08:33,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:08:33,673.673 INFO    ] No camera update needed
[2026-06-22 04:08:33,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:08:33,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:08:33,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:08:33,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:08:35,733.733 INFO    ] ================================================
[2026-06-22 04:08:35,748.748 INFO    ] Launching Daemon at Mon Jun 22 04:08:35 IST 2026
[2026-06-22 04:08:35,759.759 INFO    ] ================================================
[2026-06-22 04:08:36,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:08:36
[2026-06-22 04:08:36,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:08:37,244.244 INFO    ] Initializing speech engine...
[2026-06-22 04:08:37,254.254 INFO    ] 2026-06-22 04:08:37
[2026-06-22 04:08:37,536.536 INFO    ] 2026-06-22 04:08:37
[2026-06-22 04:08:37,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:08:37,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:08:37,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:08:37,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:08:37,920.920 INFO    ] time= 22/06/2026 04:08:37
[2026-06-22 04:08:37,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:08:37,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:08:38,091.091 INFO    ] No existing commands found in stream
[2026-06-22 04:08:43,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:08:43,121.121 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-22 04:08:48,354.354 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:08:48,357.357 INFO    ] Checking for system updates...
[2026-06-22 04:08:48,401.401 INFO    ] 200
[2026-06-22 04:08:48,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:08:48,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:08:48,470.470 INFO    ] No update needed
[2026-06-22 04:08:48,474.474 INFO    ] Checking for camera pi updates...
[2026-06-22 04:08:48,509.509 INFO    ] 200
[2026-06-22 04:08:48,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:08:48,560.560 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:08:48,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:08:48,669.669 INFO    ] No camera update needed
[2026-06-22 04:08:48,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:08:48,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:08:48,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:08:48,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:08:50,734.734 INFO    ] ================================================
[2026-06-22 04:08:50,750.750 INFO    ] Launching Daemon at Mon Jun 22 04:08:50 IST 2026
[2026-06-22 04:08:50,761.761 INFO    ] ================================================
[2026-06-22 04:08:51,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:08:51
[2026-06-22 04:08:51,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:08:52,086.086 INFO    ] Initializing speech engine...
[2026-06-22 04:08:52,093.093 INFO    ] 2026-06-22 04:08:52
[2026-06-22 04:08:52,379.379 INFO    ] 2026-06-22 04:08:52
[2026-06-22 04:08:52,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:08:52,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:08:52,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:08:52,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:08:52,746.746 INFO    ] time= 22/06/2026 04:08:52
[2026-06-22 04:08:52,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:08:52,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:08:52,828.828 INFO    ] No existing commands found in stream
[2026-06-22 04:08:57,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:08:57,842.842 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-22 04:09:02,828.828 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:09:02,831.831 INFO    ] Checking for system updates...
[2026-06-22 04:09:02,873.873 INFO    ] 200
[2026-06-22 04:09:02,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:09:02,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:09:02,941.941 INFO    ] No update needed
[2026-06-22 04:09:02,944.944 INFO    ] Checking for camera pi updates...
[2026-06-22 04:09:02,983.983 INFO    ] 200
[2026-06-22 04:09:02,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:09:03,040.040 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:09:03,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:09:03,104.104 INFO    ] No camera update needed
[2026-06-22 04:09:03,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:09:03,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:09:03,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:09:03,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:09:05,168.168 INFO    ] ================================================
[2026-06-22 04:09:05,183.183 INFO    ] Launching Daemon at Mon Jun 22 04:09:05 IST 2026
[2026-06-22 04:09:05,193.193 INFO    ] ================================================
[2026-06-22 04:09:05,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:09:05
[2026-06-22 04:09:06,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:09:06,612.612 INFO    ] Initializing speech engine...
[2026-06-22 04:09:06,620.620 INFO    ] 2026-06-22 04:09:06
[2026-06-22 04:09:06,881.881 INFO    ] 2026-06-22 04:09:06
[2026-06-22 04:09:06,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:09:07,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:09:07,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:09:07,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:09:07,257.257 INFO    ] time= 22/06/2026 04:09:07
[2026-06-22 04:09:07,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:09:07,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:09:07,383.383 INFO    ] No existing commands found in stream
[2026-06-22 04:09:12,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:09:12,398.398 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-22 04:09:14,642.642 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:09:14,645.645 INFO    ] Checking for system updates...
[2026-06-22 04:09:14,681.681 INFO    ] 200
[2026-06-22 04:09:14,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:09:14,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:09:14,740.740 INFO    ] No update needed
[2026-06-22 04:09:14,742.742 INFO    ] Checking for camera pi updates...
[2026-06-22 04:09:14,776.776 INFO    ] 200
[2026-06-22 04:09:14,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:09:14,818.818 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:09:14,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:09:14,899.899 INFO    ] No camera update needed
[2026-06-22 04:09:14,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:09:14,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:09:14,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:09:14,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:09:16,954.954 INFO    ] ================================================
[2026-06-22 04:09:16,969.969 INFO    ] Launching Daemon at Mon Jun 22 04:09:16 IST 2026
[2026-06-22 04:09:16,980.980 INFO    ] ================================================
[2026-06-22 04:09:17,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:09:17
[2026-06-22 04:09:18,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:09:18,543.543 INFO    ] Initializing speech engine...
[2026-06-22 04:09:18,554.554 INFO    ] 2026-06-22 04:09:18
[2026-06-22 04:09:18,841.841 INFO    ] 2026-06-22 04:09:18
[2026-06-22 04:09:18,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:09:19,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:09:19,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:09:19,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:09:19,298.298 INFO    ] time= 22/06/2026 04:09:19
[2026-06-22 04:09:19,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:09:19,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:09:19,441.441 INFO    ] No existing commands found in stream
[2026-06-22 04:09:24,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:09:24,458.458 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-22 04:09:38,392.392 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-22 04:09:38,423.423 INFO    ] ('HTTPSConnectionPool(host=\'neuustore.com\', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM06202507 (Caused by ReadTimeoutError("HTTPSConnectionPool(host=\'neuustore.com\', port=443): Read timed out. (read timeout=5)",))',)
[2026-06-22 04:09:38,433.433 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM06202507 (Caused by ReadTimeoutError("HTTPSConnectionPool(host='neuustore.com', port=443): Read timed out. (read timeout=5)",))
[2026-06-22 04:09:38,455.455 INFO    ] None
[2026-06-22 04:09:38,458.458 INFO    ] Checking for system updates...
[2026-06-22 04:09:38,501.501 INFO    ] 200
[2026-06-22 04:09:38,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:09:38,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:09:38,549.549 INFO    ] No update needed
[2026-06-22 04:09:38,550.550 INFO    ] Checking for camera pi updates...
[2026-06-22 04:09:38,577.577 INFO    ] 200
[2026-06-22 04:09:38,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:09:38,626.626 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:09:38,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:09:38,717.717 INFO    ] No camera update needed
[2026-06-22 04:09:38,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:09:38,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:09:38,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:09:38,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:09:40,774.774 INFO    ] ================================================
[2026-06-22 04:09:40,789.789 INFO    ] Launching Daemon at Mon Jun 22 04:09:40 IST 2026
[2026-06-22 04:09:40,800.800 INFO    ] ================================================
[2026-06-22 04:09:41,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:09:41
[2026-06-22 04:09:42,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:09:42,316.316 INFO    ] Initializing speech engine...
[2026-06-22 04:09:42,325.325 INFO    ] 2026-06-22 04:09:42
[2026-06-22 04:09:42,644.644 INFO    ] 2026-06-22 04:09:42
[2026-06-22 04:09:42,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:09:42,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:09:42,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:09:43,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:09:43,153.153 INFO    ] time= 22/06/2026 04:09:43
[2026-06-22 04:09:43,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:09:43,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:09:43,309.309 INFO    ] No existing commands found in stream
[2026-06-22 04:09:48,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:09:48,327.327 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-22 04:09:50,858.858 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:09:50,861.861 INFO    ] Checking for system updates...
[2026-06-22 04:09:50,899.899 INFO    ] 200
[2026-06-22 04:09:50,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:09:50,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:09:50,959.959 INFO    ] No update needed
[2026-06-22 04:09:50,961.961 INFO    ] Checking for camera pi updates...
[2026-06-22 04:09:50,996.996 INFO    ] 200
[2026-06-22 04:09:50,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:09:51,042.042 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:09:51,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:09:51,128.128 INFO    ] No camera update needed
[2026-06-22 04:09:51,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:09:51,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:09:51,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:09:51,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:09:53,186.186 INFO    ] ================================================
[2026-06-22 04:09:53,201.201 INFO    ] Launching Daemon at Mon Jun 22 04:09:53 IST 2026
[2026-06-22 04:09:53,212.212 INFO    ] ================================================
[2026-06-22 04:09:53,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:09:53
[2026-06-22 04:09:54,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:09:54,660.660 INFO    ] Initializing speech engine...
[2026-06-22 04:09:54,683.683 INFO    ] 2026-06-22 04:09:54
[2026-06-22 04:09:54,939.939 INFO    ] 2026-06-22 04:09:54
[2026-06-22 04:09:54,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:09:55,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:09:55,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:09:55,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:09:55,315.315 INFO    ] time= 22/06/2026 04:09:55
[2026-06-22 04:09:55,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:09:55,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:09:55,479.479 INFO    ] No existing commands found in stream
[2026-06-22 04:10:00,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:10:00,512.512 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-22 04:10:12,885.885 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-22 04:10:12,913.913 INFO    ] ('HTTPSConnectionPool(host=\'neuustore.com\', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM06202507 (Caused by ReadTimeoutError("HTTPSConnectionPool(host=\'neuustore.com\', port=443): Read timed out. (read timeout=5)",))',)
[2026-06-22 04:10:12,922.922 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM06202507 (Caused by ReadTimeoutError("HTTPSConnectionPool(host='neuustore.com', port=443): Read timed out. (read timeout=5)",))
[2026-06-22 04:10:12,941.941 INFO    ] None
[2026-06-22 04:10:12,944.944 INFO    ] Checking for system updates...
[2026-06-22 04:10:12,984.984 INFO    ] 200
[2026-06-22 04:10:12,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:10:13,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:10:13,043.043 INFO    ] No update needed
[2026-06-22 04:10:13,046.046 INFO    ] Checking for camera pi updates...
[2026-06-22 04:10:13,080.080 INFO    ] 200
[2026-06-22 04:10:13,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:10:13,128.128 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:10:13,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:10:13,235.235 INFO    ] No camera update needed
[2026-06-22 04:10:13,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:10:13,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:10:13,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:10:13,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:10:15,293.293 INFO    ] ================================================
[2026-06-22 04:10:15,308.308 INFO    ] Launching Daemon at Mon Jun 22 04:10:15 IST 2026
[2026-06-22 04:10:15,319.319 INFO    ] ================================================
[2026-06-22 04:10:15,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:10:15
[2026-06-22 04:10:16,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:10:16,742.742 INFO    ] Initializing speech engine...
[2026-06-22 04:10:16,768.768 INFO    ] 2026-06-22 04:10:16
[2026-06-22 04:10:17,033.033 INFO    ] 2026-06-22 04:10:17
[2026-06-22 04:10:17,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:10:17,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:10:17,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:10:17,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:10:17,414.414 INFO    ] time= 22/06/2026 04:10:17
[2026-06-22 04:10:17,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:10:17,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:10:17,538.538 INFO    ] No existing commands found in stream
[2026-06-22 04:10:22,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:10:22,553.553 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-22 04:10:24,749.749 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:10:24,751.751 INFO    ] Checking for system updates...
[2026-06-22 04:10:24,771.771 INFO    ] 200
[2026-06-22 04:10:24,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:10:24,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:10:24,827.827 INFO    ] No update needed
[2026-06-22 04:10:24,830.830 INFO    ] Checking for camera pi updates...
[2026-06-22 04:10:24,868.868 INFO    ] 200
[2026-06-22 04:10:24,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:10:24,911.911 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:10:24,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:10:24,985.985 INFO    ] No camera update needed
[2026-06-22 04:10:24,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:10:24,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:10:24,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:10:25,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:10:27,040.040 INFO    ] ================================================
[2026-06-22 04:10:27,056.056 INFO    ] Launching Daemon at Mon Jun 22 04:10:27 IST 2026
[2026-06-22 04:10:27,067.067 INFO    ] ================================================
[2026-06-22 04:10:27,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:10:27
[2026-06-22 04:10:28,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:10:28,439.439 INFO    ] Initializing speech engine...
[2026-06-22 04:10:28,446.446 INFO    ] 2026-06-22 04:10:28
[2026-06-22 04:10:28,707.707 INFO    ] 2026-06-22 04:10:28
[2026-06-22 04:10:28,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:10:28,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:10:28,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:10:29,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:10:29,180.180 INFO    ] time= 22/06/2026 04:10:29
[2026-06-22 04:10:29,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:10:29,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:10:29,380.380 INFO    ] No existing commands found in stream
[2026-06-22 04:10:34,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:10:34,405.405 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-22 04:10:37,049.049 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:10:37,052.052 INFO    ] Checking for system updates...
[2026-06-22 04:10:37,088.088 INFO    ] 200
[2026-06-22 04:10:37,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:10:37,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:10:37,147.147 INFO    ] No update needed
[2026-06-22 04:10:37,150.150 INFO    ] Checking for camera pi updates...
[2026-06-22 04:10:37,185.185 INFO    ] 200
[2026-06-22 04:10:37,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:10:37,228.228 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:10:37,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:10:37,319.319 INFO    ] No camera update needed
[2026-06-22 04:10:37,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:10:37,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:10:37,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:10:37,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:10:39,376.376 INFO    ] ================================================
[2026-06-22 04:10:39,392.392 INFO    ] Launching Daemon at Mon Jun 22 04:10:39 IST 2026
[2026-06-22 04:10:39,402.402 INFO    ] ================================================
[2026-06-22 04:10:39,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:10:39
[2026-06-22 04:10:40,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:10:40,855.855 INFO    ] Initializing speech engine...
[2026-06-22 04:10:40,863.863 INFO    ] 2026-06-22 04:10:40
[2026-06-22 04:10:41,140.140 INFO    ] 2026-06-22 04:10:41
[2026-06-22 04:10:41,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:10:41,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:10:41,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:10:41,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:10:41,616.616 INFO    ] time= 22/06/2026 04:10:41
[2026-06-22 04:10:41,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:10:41,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:10:41,766.766 INFO    ] No existing commands found in stream
[2026-06-22 04:10:46,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:10:46,784.784 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-22 04:10:50,605.605 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:10:50,608.608 INFO    ] Checking for system updates...
[2026-06-22 04:10:50,645.645 INFO    ] 200
[2026-06-22 04:10:50,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:10:50,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:10:50,709.709 INFO    ] No update needed
[2026-06-22 04:10:50,712.712 INFO    ] Checking for camera pi updates...
[2026-06-22 04:10:50,751.751 INFO    ] 200
[2026-06-22 04:10:50,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:10:50,795.795 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:10:50,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:10:50,876.876 INFO    ] No camera update needed
[2026-06-22 04:10:50,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:10:50,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:10:50,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:10:50,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:10:52,931.931 INFO    ] ================================================
[2026-06-22 04:10:52,947.947 INFO    ] Launching Daemon at Mon Jun 22 04:10:52 IST 2026
[2026-06-22 04:10:52,958.958 INFO    ] ================================================
[2026-06-22 04:10:53,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:10:53
[2026-06-22 04:10:54,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:10:54,363.363 INFO    ] Initializing speech engine...
[2026-06-22 04:10:54,368.368 INFO    ] 2026-06-22 04:10:54
[2026-06-22 04:10:54,635.635 INFO    ] 2026-06-22 04:10:54
[2026-06-22 04:10:54,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:10:54,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:10:54,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:10:54,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:10:54,975.975 INFO    ] time= 22/06/2026 04:10:54
[2026-06-22 04:10:54,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:10:54,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:10:55,091.091 INFO    ] No existing commands found in stream
[2026-06-22 04:11:00,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:11:00,106.106 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-22 04:11:01,916.916 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:11:01,919.919 INFO    ] Checking for system updates...
[2026-06-22 04:11:01,996.996 INFO    ] 200
[2026-06-22 04:11:01,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:11:02,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:11:02,088.088 INFO    ] No update needed
[2026-06-22 04:11:02,091.091 INFO    ] Checking for camera pi updates...
[2026-06-22 04:11:02,138.138 INFO    ] 200
[2026-06-22 04:11:02,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:11:02,220.220 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:11:02,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:11:02,299.299 INFO    ] No camera update needed
[2026-06-22 04:11:02,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:11:02,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:11:02,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:11:02,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:11:04,364.364 INFO    ] ================================================
[2026-06-22 04:11:04,380.380 INFO    ] Launching Daemon at Mon Jun 22 04:11:04 IST 2026
[2026-06-22 04:11:04,392.392 INFO    ] ================================================
[2026-06-22 04:11:04,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:11:04
[2026-06-22 04:11:05,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:11:05,832.832 INFO    ] Initializing speech engine...
[2026-06-22 04:11:05,840.840 INFO    ] 2026-06-22 04:11:05
[2026-06-22 04:11:06,133.133 INFO    ] 2026-06-22 04:11:06
[2026-06-22 04:11:06,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:11:06,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:11:06,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:11:06,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:11:06,502.502 INFO    ] time= 22/06/2026 04:11:06
[2026-06-22 04:11:06,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:11:06,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:11:06,663.663 INFO    ] No existing commands found in stream
[2026-06-22 04:11:11,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:11:11,690.690 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-22 04:11:14,933.933 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:11:14,936.936 INFO    ] Checking for system updates...
[2026-06-22 04:11:14,972.972 INFO    ] 200
[2026-06-22 04:11:14,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:11:15,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:11:15,030.030 INFO    ] No update needed
[2026-06-22 04:11:15,032.032 INFO    ] Checking for camera pi updates...
[2026-06-22 04:11:15,066.066 INFO    ] 200
[2026-06-22 04:11:15,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:11:15,113.113 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:11:15,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:11:15,295.295 INFO    ] No camera update needed
[2026-06-22 04:11:15,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:11:15,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:11:15,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:11:15,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:11:17,351.351 INFO    ] ================================================
[2026-06-22 04:11:17,367.367 INFO    ] Launching Daemon at Mon Jun 22 04:11:17 IST 2026
[2026-06-22 04:11:17,378.378 INFO    ] ================================================
[2026-06-22 04:11:17,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:11:17
[2026-06-22 04:11:18,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:11:18,924.924 INFO    ] Initializing speech engine...
[2026-06-22 04:11:18,930.930 INFO    ] 2026-06-22 04:11:18
[2026-06-22 04:11:19,219.219 INFO    ] 2026-06-22 04:11:19
[2026-06-22 04:11:19,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:11:19,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:11:19,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:11:19,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:11:19,692.692 INFO    ] time= 22/06/2026 04:11:19
[2026-06-22 04:11:19,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:11:19,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:11:19,835.835 INFO    ] No existing commands found in stream
[2026-06-22 04:11:24,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:11:24,851.851 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-22 04:11:28,298.298 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:11:28,300.300 INFO    ] Checking for system updates...
[2026-06-22 04:11:28,322.322 INFO    ] 200
[2026-06-22 04:11:28,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:11:28,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:11:28,367.367 INFO    ] No update needed
[2026-06-22 04:11:28,369.369 INFO    ] Checking for camera pi updates...
[2026-06-22 04:11:28,404.404 INFO    ] 200
[2026-06-22 04:11:28,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:11:28,452.452 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:11:28,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:11:28,505.505 INFO    ] No camera update needed
[2026-06-22 04:11:28,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:11:28,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:11:28,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:11:28,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:11:30,561.561 INFO    ] ================================================
[2026-06-22 04:11:30,577.577 INFO    ] Launching Daemon at Mon Jun 22 04:11:30 IST 2026
[2026-06-22 04:11:30,588.588 INFO    ] ================================================
[2026-06-22 04:11:31,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:11:31
[2026-06-22 04:11:31,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:11:32,068.068 INFO    ] Initializing speech engine...
[2026-06-22 04:11:32,074.074 INFO    ] 2026-06-22 04:11:32
[2026-06-22 04:11:32,374.374 INFO    ] 2026-06-22 04:11:32
[2026-06-22 04:11:32,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:11:32,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:11:32,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:11:32,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:11:32,835.835 INFO    ] time= 22/06/2026 04:11:32
[2026-06-22 04:11:32,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:11:32,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:11:32,962.962 INFO    ] No existing commands found in stream
[2026-06-22 04:11:37,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:11:37,978.978 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-22 04:11:39,909.909 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:11:39,911.911 INFO    ] Checking for system updates...
[2026-06-22 04:11:39,947.947 INFO    ] 200
[2026-06-22 04:11:39,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:11:40,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:11:40,006.006 INFO    ] No update needed
[2026-06-22 04:11:40,009.009 INFO    ] Checking for camera pi updates...
[2026-06-22 04:11:40,043.043 INFO    ] 200
[2026-06-22 04:11:40,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:11:40,088.088 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:11:40,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:11:40,149.149 INFO    ] No camera update needed
[2026-06-22 04:11:40,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:11:40,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:11:40,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:11:40,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:11:42,205.205 INFO    ] ================================================
[2026-06-22 04:11:42,220.220 INFO    ] Launching Daemon at Mon Jun 22 04:11:42 IST 2026
[2026-06-22 04:11:42,231.231 INFO    ] ================================================
[2026-06-22 04:11:42,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:11:42
[2026-06-22 04:11:43,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:11:43,574.574 INFO    ] Initializing speech engine...
[2026-06-22 04:11:43,583.583 INFO    ] 2026-06-22 04:11:43
[2026-06-22 04:11:43,878.878 INFO    ] 2026-06-22 04:11:43
[2026-06-22 04:11:43,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:11:44,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:11:44,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:11:44,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:11:44,232.232 INFO    ] time= 22/06/2026 04:11:44
[2026-06-22 04:11:44,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:11:44,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:11:44,314.314 INFO    ] No existing commands found in stream
[2026-06-22 04:11:49,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:11:49,329.329 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-22 04:11:52,135.135 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:11:52,138.138 INFO    ] Checking for system updates...
[2026-06-22 04:11:52,174.174 INFO    ] 200
[2026-06-22 04:11:52,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:11:52,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:11:52,231.231 INFO    ] No update needed
[2026-06-22 04:11:52,234.234 INFO    ] Checking for camera pi updates...
[2026-06-22 04:11:52,268.268 INFO    ] 200
[2026-06-22 04:11:52,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:11:52,311.311 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:11:52,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:11:52,393.393 INFO    ] No camera update needed
[2026-06-22 04:11:52,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:11:52,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:11:52,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:11:52,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:11:54,450.450 INFO    ] ================================================
[2026-06-22 04:11:54,466.466 INFO    ] Launching Daemon at Mon Jun 22 04:11:54 IST 2026
[2026-06-22 04:11:54,477.477 INFO    ] ================================================
[2026-06-22 04:11:55,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:11:55
[2026-06-22 04:11:55,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:11:55,857.857 INFO    ] Initializing speech engine...
[2026-06-22 04:11:55,870.870 INFO    ] 2026-06-22 04:11:55
[2026-06-22 04:11:56,144.144 INFO    ] 2026-06-22 04:11:56
[2026-06-22 04:11:56,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:11:56,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:11:56,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:11:56,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:11:56,493.493 INFO    ] time= 22/06/2026 04:11:56
[2026-06-22 04:11:56,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:11:56,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:11:56,613.613 INFO    ] No existing commands found in stream
[2026-06-22 04:12:01,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:12:01,629.629 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-22 04:12:04,402.402 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:12:04,405.405 INFO    ] Checking for system updates...
[2026-06-22 04:12:04,442.442 INFO    ] 200
[2026-06-22 04:12:04,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:12:04,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:12:04,500.500 INFO    ] No update needed
[2026-06-22 04:12:04,503.503 INFO    ] Checking for camera pi updates...
[2026-06-22 04:12:04,541.541 INFO    ] 200
[2026-06-22 04:12:04,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:12:04,588.588 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:12:04,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:12:04,670.670 INFO    ] No camera update needed
[2026-06-22 04:12:04,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:12:04,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:12:04,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:12:04,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:12:06,726.726 INFO    ] ================================================
[2026-06-22 04:12:06,741.741 INFO    ] Launching Daemon at Mon Jun 22 04:12:06 IST 2026
[2026-06-22 04:12:06,752.752 INFO    ] ================================================
[2026-06-22 04:12:07,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:12:07
[2026-06-22 04:12:07,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:12:08,152.152 INFO    ] Initializing speech engine...
[2026-06-22 04:12:08,155.155 INFO    ] 2026-06-22 04:12:08
[2026-06-22 04:12:08,441.441 INFO    ] 2026-06-22 04:12:08
[2026-06-22 04:12:08,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:12:08,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:12:08,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:12:08,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:12:08,822.822 INFO    ] time= 22/06/2026 04:12:08
[2026-06-22 04:12:08,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:12:08,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:12:08,945.945 INFO    ] No existing commands found in stream
[2026-06-22 04:12:13,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:12:13,961.961 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-22 04:12:17,420.420 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:12:17,423.423 INFO    ] Checking for system updates...
[2026-06-22 04:12:17,459.459 INFO    ] 200
[2026-06-22 04:12:17,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:12:17,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:12:17,518.518 INFO    ] No update needed
[2026-06-22 04:12:17,520.520 INFO    ] Checking for camera pi updates...
[2026-06-22 04:12:17,555.555 INFO    ] 200
[2026-06-22 04:12:17,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:12:17,599.599 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:12:17,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:12:17,685.685 INFO    ] No camera update needed
[2026-06-22 04:12:17,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:12:17,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:12:17,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:12:17,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:12:19,744.744 INFO    ] ================================================
[2026-06-22 04:12:19,761.761 INFO    ] Launching Daemon at Mon Jun 22 04:12:19 IST 2026
[2026-06-22 04:12:19,772.772 INFO    ] ================================================
[2026-06-22 04:12:20,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:12:20
[2026-06-22 04:12:21,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:12:21,362.362 INFO    ] Initializing speech engine...
[2026-06-22 04:12:21,371.371 INFO    ] 2026-06-22 04:12:21
[2026-06-22 04:12:21,647.647 INFO    ] 2026-06-22 04:12:21
[2026-06-22 04:12:21,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:12:21,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:12:21,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:12:22,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:12:22,133.133 INFO    ] time= 22/06/2026 04:12:22
[2026-06-22 04:12:22,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:12:22,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:12:22,275.275 INFO    ] No existing commands found in stream
[2026-06-22 04:12:27,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:12:27,290.290 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-22 04:12:31,063.063 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:12:31,066.066 INFO    ] Checking for system updates...
[2026-06-22 04:12:31,103.103 INFO    ] 200
[2026-06-22 04:12:31,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:12:31,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:12:31,167.167 INFO    ] No update needed
[2026-06-22 04:12:31,170.170 INFO    ] Checking for camera pi updates...
[2026-06-22 04:12:31,207.207 INFO    ] 200
[2026-06-22 04:12:31,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:12:31,254.254 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:12:31,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:12:31,322.322 INFO    ] No camera update needed
[2026-06-22 04:12:31,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:12:31,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:12:31,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:12:31,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:12:33,378.378 INFO    ] ================================================
[2026-06-22 04:12:33,394.394 INFO    ] Launching Daemon at Mon Jun 22 04:12:33 IST 2026
[2026-06-22 04:12:33,405.405 INFO    ] ================================================
[2026-06-22 04:12:33,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:12:33
[2026-06-22 04:12:34,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:12:34,847.847 INFO    ] Initializing speech engine...
[2026-06-22 04:12:34,863.863 INFO    ] 2026-06-22 04:12:34
[2026-06-22 04:12:35,142.142 INFO    ] 2026-06-22 04:12:35
[2026-06-22 04:12:35,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:12:35,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:12:35,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:12:35,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:12:35,520.520 INFO    ] time= 22/06/2026 04:12:35
[2026-06-22 04:12:35,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:12:35,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:12:35,666.666 INFO    ] No existing commands found in stream
[2026-06-22 04:12:40,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:12:40,680.680 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-22 04:12:44,743.743 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:12:44,744.744 INFO    ] Checking for system updates...
[2026-06-22 04:12:44,767.767 INFO    ] 200
[2026-06-22 04:12:44,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:12:44,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:12:44,802.802 INFO    ] No update needed
[2026-06-22 04:12:44,803.803 INFO    ] Checking for camera pi updates...
[2026-06-22 04:12:44,830.830 INFO    ] 200
[2026-06-22 04:12:44,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:12:44,876.876 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:12:44,933.933 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:12:44,936.936 INFO    ] No camera update needed
[2026-06-22 04:12:44,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:12:44,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:12:44,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:12:44,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:12:47,995.995 INFO    ] ================================================
[2026-06-22 04:12:47,010.010 INFO    ] Launching Daemon at Mon Jun 22 04:12:47 IST 2026
[2026-06-22 04:12:47,021.021 INFO    ] ================================================
[2026-06-22 04:12:47,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:12:47
[2026-06-22 04:12:48,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:12:48,393.393 INFO    ] Initializing speech engine...
[2026-06-22 04:12:48,401.401 INFO    ] 2026-06-22 04:12:48
[2026-06-22 04:12:48,659.659 INFO    ] 2026-06-22 04:12:48
[2026-06-22 04:12:48,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:12:48,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:12:48,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:12:49,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:12:49,095.095 INFO    ] time= 22/06/2026 04:12:49
[2026-06-22 04:12:49,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:12:49,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:12:49,264.264 INFO    ] No existing commands found in stream
[2026-06-22 04:12:54,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:12:54,279.279 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-22 04:12:58,448.448 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:12:58,450.450 INFO    ] Checking for system updates...
[2026-06-22 04:12:58,471.471 INFO    ] 200
[2026-06-22 04:12:58,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:12:58,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:12:58,504.504 INFO    ] No update needed
[2026-06-22 04:12:58,506.506 INFO    ] Checking for camera pi updates...
[2026-06-22 04:12:58,525.525 INFO    ] 200
[2026-06-22 04:12:58,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:12:58,555.555 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:12:58,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:12:58,642.642 INFO    ] No camera update needed
[2026-06-22 04:12:58,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:12:58,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:12:58,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:12:58,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:13:00,701.701 INFO    ] ================================================
[2026-06-22 04:13:00,717.717 INFO    ] Launching Daemon at Mon Jun 22 04:13:00 IST 2026
[2026-06-22 04:13:00,728.728 INFO    ] ================================================
[2026-06-22 04:13:01,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:13:01
[2026-06-22 04:13:02,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:13:02,334.334 INFO    ] Initializing speech engine...
[2026-06-22 04:13:02,340.340 INFO    ] 2026-06-22 04:13:02
[2026-06-22 04:13:02,669.669 INFO    ] 2026-06-22 04:13:02
[2026-06-22 04:13:02,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:13:02,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:13:02,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:13:03,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:13:03,048.048 INFO    ] time= 22/06/2026 04:13:03
[2026-06-22 04:13:03,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:13:03,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:13:03,178.178 INFO    ] No existing commands found in stream
[2026-06-22 04:13:08,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:13:08,190.190 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-22 04:13:11,497.497 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:13:11,499.499 INFO    ] Checking for system updates...
[2026-06-22 04:13:11,536.536 INFO    ] 200
[2026-06-22 04:13:11,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:13:11,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:13:11,599.599 INFO    ] No update needed
[2026-06-22 04:13:11,601.601 INFO    ] Checking for camera pi updates...
[2026-06-22 04:13:11,638.638 INFO    ] 200
[2026-06-22 04:13:11,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:13:11,682.682 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:13:11,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:13:11,765.765 INFO    ] No camera update needed
[2026-06-22 04:13:11,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:13:11,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:13:11,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:13:11,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:13:13,821.821 INFO    ] ================================================
[2026-06-22 04:13:13,837.837 INFO    ] Launching Daemon at Mon Jun 22 04:13:13 IST 2026
[2026-06-22 04:13:13,848.848 INFO    ] ================================================
[2026-06-22 04:13:14,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:13:14
[2026-06-22 04:13:15,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:13:15,342.342 INFO    ] Initializing speech engine...
[2026-06-22 04:13:15,351.351 INFO    ] 2026-06-22 04:13:15
[2026-06-22 04:13:15,638.638 INFO    ] 2026-06-22 04:13:15
[2026-06-22 04:13:15,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:13:15,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:13:15,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:13:16,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:13:16,927.927 INFO    ] time= 22/06/2026 04:13:16
[2026-06-22 04:13:16,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:13:16,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:13:17,045.045 INFO    ] No existing commands found in stream
[2026-06-22 04:13:22,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:13:22,073.073 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-22 04:13:25,896.896 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:13:25,898.898 INFO    ] Checking for system updates...
[2026-06-22 04:13:25,920.920 INFO    ] 200
[2026-06-22 04:13:25,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:13:25,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:13:25,953.953 INFO    ] No update needed
[2026-06-22 04:13:25,954.954 INFO    ] Checking for camera pi updates...
[2026-06-22 04:13:25,974.974 INFO    ] 200
[2026-06-22 04:13:25,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:13:26,009.009 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:13:26,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:13:26,210.210 INFO    ] No camera update needed
[2026-06-22 04:13:26,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:13:26,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:13:26,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:13:26,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:13:28,270.270 INFO    ] ================================================
[2026-06-22 04:13:28,285.285 INFO    ] Launching Daemon at Mon Jun 22 04:13:28 IST 2026
[2026-06-22 04:13:28,296.296 INFO    ] ================================================
[2026-06-22 04:13:28,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:13:28
[2026-06-22 04:13:29,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:13:29,892.892 INFO    ] Initializing speech engine...
[2026-06-22 04:13:29,904.904 INFO    ] 2026-06-22 04:13:29
[2026-06-22 04:13:30,175.175 INFO    ] 2026-06-22 04:13:30
[2026-06-22 04:13:30,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:13:30,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:13:30,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:13:30,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:13:30,649.649 INFO    ] time= 22/06/2026 04:13:30
[2026-06-22 04:13:30,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:13:30,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:13:30,807.807 INFO    ] No existing commands found in stream
[2026-06-22 04:13:35,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:13:35,823.823 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-22 04:13:37,933.933 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:13:37,936.936 INFO    ] Checking for system updates...
[2026-06-22 04:13:37,979.979 INFO    ] 200
[2026-06-22 04:13:37,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:13:38,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:13:38,040.040 INFO    ] No update needed
[2026-06-22 04:13:38,043.043 INFO    ] Checking for camera pi updates...
[2026-06-22 04:13:38,079.079 INFO    ] 200
[2026-06-22 04:13:38,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:13:38,129.129 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:13:38,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:13:38,208.208 INFO    ] No camera update needed
[2026-06-22 04:13:38,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:13:38,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:13:38,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:13:38,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:13:40,267.267 INFO    ] ================================================
[2026-06-22 04:13:40,282.282 INFO    ] Launching Daemon at Mon Jun 22 04:13:40 IST 2026
[2026-06-22 04:13:40,293.293 INFO    ] ================================================
[2026-06-22 04:13:40,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:13:40
[2026-06-22 04:13:41,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:13:41,756.756 INFO    ] Initializing speech engine...
[2026-06-22 04:13:41,764.764 INFO    ] 2026-06-22 04:13:41
[2026-06-22 04:13:42,023.023 INFO    ] 2026-06-22 04:13:42
[2026-06-22 04:13:42,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:13:42,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:13:42,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:13:42,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:13:42,386.386 INFO    ] time= 22/06/2026 04:13:42
[2026-06-22 04:13:42,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:13:42,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:13:42,554.554 INFO    ] No existing commands found in stream
[2026-06-22 04:13:47,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:13:47,588.588 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-22 04:13:49,573.573 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:13:49,576.576 INFO    ] Checking for system updates...
[2026-06-22 04:13:49,617.617 INFO    ] 200
[2026-06-22 04:13:49,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:13:49,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:13:49,680.680 INFO    ] No update needed
[2026-06-22 04:13:49,683.683 INFO    ] Checking for camera pi updates...
[2026-06-22 04:13:49,720.720 INFO    ] 200
[2026-06-22 04:13:49,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:13:49,767.767 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:13:49,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:13:49,838.838 INFO    ] No camera update needed
[2026-06-22 04:13:49,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:13:49,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:13:49,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:13:49,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:13:51,898.898 INFO    ] ================================================
[2026-06-22 04:13:51,914.914 INFO    ] Launching Daemon at Mon Jun 22 04:13:51 IST 2026
[2026-06-22 04:13:51,924.924 INFO    ] ================================================
[2026-06-22 04:13:52,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:13:52
[2026-06-22 04:13:53,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:13:53,387.387 INFO    ] Initializing speech engine...
[2026-06-22 04:13:53,403.403 INFO    ] 2026-06-22 04:13:53
[2026-06-22 04:13:53,689.689 INFO    ] 2026-06-22 04:13:53
[2026-06-22 04:13:53,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:13:53,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:13:53,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:13:54,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:13:54,065.065 INFO    ] time= 22/06/2026 04:13:54
[2026-06-22 04:13:54,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:13:54,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:13:54,189.189 INFO    ] No existing commands found in stream
[2026-06-22 04:13:59,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:13:59,204.204 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-22 04:14:00,580.580 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:14:00,583.583 INFO    ] Checking for system updates...
[2026-06-22 04:14:00,620.620 INFO    ] 200
[2026-06-22 04:14:00,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:14:00,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:14:00,689.689 INFO    ] No update needed
[2026-06-22 04:14:00,691.691 INFO    ] Checking for camera pi updates...
[2026-06-22 04:14:00,725.725 INFO    ] 200
[2026-06-22 04:14:00,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:14:00,768.768 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:14:00,831.831 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:14:00,834.834 INFO    ] No camera update needed
[2026-06-22 04:14:00,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:14:00,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:14:00,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:14:00,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:14:02,898.898 INFO    ] ================================================
[2026-06-22 04:14:02,917.917 INFO    ] Launching Daemon at Mon Jun 22 04:14:02 IST 2026
[2026-06-22 04:14:02,930.930 INFO    ] ================================================
[2026-06-22 04:14:03,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:14:03
[2026-06-22 04:14:04,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:14:04,416.416 INFO    ] Initializing speech engine...
[2026-06-22 04:14:04,426.426 INFO    ] 2026-06-22 04:14:04
[2026-06-22 04:14:04,674.674 INFO    ] 2026-06-22 04:14:04
[2026-06-22 04:14:04,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:14:04,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:14:04,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:14:05,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:14:05,048.048 INFO    ] time= 22/06/2026 04:14:05
[2026-06-22 04:14:05,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:14:05,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:14:05,130.130 INFO    ] No existing commands found in stream
[2026-06-22 04:14:10,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:14:10,145.145 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-22 04:14:14,068.068 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:14:14,071.071 INFO    ] Checking for system updates...
[2026-06-22 04:14:14,106.106 INFO    ] 200
[2026-06-22 04:14:14,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:14:14,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:14:14,168.168 INFO    ] No update needed
[2026-06-22 04:14:14,170.170 INFO    ] Checking for camera pi updates...
[2026-06-22 04:14:14,203.203 INFO    ] 200
[2026-06-22 04:14:14,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:14:14,248.248 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:14:14,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:14:14,333.333 INFO    ] No camera update needed
[2026-06-22 04:14:14,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:14:14,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:14:14,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:14:14,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:14:16,391.391 INFO    ] ================================================
[2026-06-22 04:14:16,407.407 INFO    ] Launching Daemon at Mon Jun 22 04:14:16 IST 2026
[2026-06-22 04:14:16,419.419 INFO    ] ================================================
[2026-06-22 04:14:16,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:14:16
[2026-06-22 04:14:17,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:14:17,871.871 INFO    ] Initializing speech engine...
[2026-06-22 04:14:17,880.880 INFO    ] 2026-06-22 04:14:17
[2026-06-22 04:14:18,146.146 INFO    ] 2026-06-22 04:14:18
[2026-06-22 04:14:18,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:14:18,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:14:18,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:14:18,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:14:18,520.520 INFO    ] time= 22/06/2026 04:14:18
[2026-06-22 04:14:18,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:14:18,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:14:18,641.641 INFO    ] No existing commands found in stream
[2026-06-22 04:14:23,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:14:23,657.657 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-22 04:14:24,217.217 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:14:24,218.218 INFO    ] Checking for system updates...
[2026-06-22 04:14:24,240.240 INFO    ] 200
[2026-06-22 04:14:24,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:14:24,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:14:24,275.275 INFO    ] No update needed
[2026-06-22 04:14:24,276.276 INFO    ] Checking for camera pi updates...
[2026-06-22 04:14:24,297.297 INFO    ] 200
[2026-06-22 04:14:24,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:14:24,338.338 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:14:24,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:14:24,421.421 INFO    ] No camera update needed
[2026-06-22 04:14:24,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:14:24,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:14:24,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:14:24,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:14:26,477.477 INFO    ] ================================================
[2026-06-22 04:14:26,493.493 INFO    ] Launching Daemon at Mon Jun 22 04:14:26 IST 2026
[2026-06-22 04:14:26,504.504 INFO    ] ================================================
[2026-06-22 04:14:27,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:14:27
[2026-06-22 04:14:27,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:14:27,910.910 INFO    ] Initializing speech engine...
[2026-06-22 04:14:27,917.917 INFO    ] 2026-06-22 04:14:27
[2026-06-22 04:14:28,189.189 INFO    ] 2026-06-22 04:14:28
[2026-06-22 04:14:28,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:14:28,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:14:28,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:14:28,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:14:28,656.656 INFO    ] time= 22/06/2026 04:14:28
[2026-06-22 04:14:28,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:14:28,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:14:28,801.801 INFO    ] No existing commands found in stream
[2026-06-22 04:14:33,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:14:33,817.817 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-22 04:14:36,985.985 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:14:36,988.988 INFO    ] Checking for system updates...
[2026-06-22 04:14:37,028.028 INFO    ] 200
[2026-06-22 04:14:37,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:14:37,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:14:37,087.087 INFO    ] No update needed
[2026-06-22 04:14:37,089.089 INFO    ] Checking for camera pi updates...
[2026-06-22 04:14:37,124.124 INFO    ] 200
[2026-06-22 04:14:37,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:14:37,168.168 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:14:37,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:14:37,265.265 INFO    ] No camera update needed
[2026-06-22 04:14:37,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:14:37,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:14:37,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:14:37,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:14:39,325.325 INFO    ] ================================================
[2026-06-22 04:14:39,341.341 INFO    ] Launching Daemon at Mon Jun 22 04:14:39 IST 2026
[2026-06-22 04:14:39,351.351 INFO    ] ================================================
[2026-06-22 04:14:39,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:14:39
[2026-06-22 04:14:40,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:14:40,697.697 INFO    ] Initializing speech engine...
[2026-06-22 04:14:40,711.711 INFO    ] 2026-06-22 04:14:40
[2026-06-22 04:14:40,976.976 INFO    ] 2026-06-22 04:14:40
[2026-06-22 04:14:41,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:14:41,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:14:41,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:14:41,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:14:41,346.346 INFO    ] time= 22/06/2026 04:14:41
[2026-06-22 04:14:41,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:14:41,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:14:41,468.468 INFO    ] No existing commands found in stream
[2026-06-22 04:14:46,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:14:46,482.482 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-22 04:14:50,374.374 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:14:50,377.377 INFO    ] Checking for system updates...
[2026-06-22 04:14:50,412.412 INFO    ] 200
[2026-06-22 04:14:50,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:14:50,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:14:50,470.470 INFO    ] No update needed
[2026-06-22 04:14:50,472.472 INFO    ] Checking for camera pi updates...
[2026-06-22 04:14:50,506.506 INFO    ] 200
[2026-06-22 04:14:50,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:14:50,550.550 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:14:50,632.632 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:14:50,635.635 INFO    ] No camera update needed
[2026-06-22 04:14:50,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:14:50,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:14:50,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:14:50,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:14:52,690.690 INFO    ] ================================================
[2026-06-22 04:14:52,706.706 INFO    ] Launching Daemon at Mon Jun 22 04:14:52 IST 2026
[2026-06-22 04:14:52,717.717 INFO    ] ================================================
[2026-06-22 04:14:53,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:14:53
[2026-06-22 04:14:53,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:14:54,090.090 INFO    ] Initializing speech engine...
[2026-06-22 04:14:54,100.100 INFO    ] 2026-06-22 04:14:54
[2026-06-22 04:14:54,361.361 INFO    ] 2026-06-22 04:14:54
[2026-06-22 04:14:54,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:14:54,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:14:54,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:14:54,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:14:54,699.699 INFO    ] time= 22/06/2026 04:14:54
[2026-06-22 04:14:54,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:14:54,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:14:54,776.776 INFO    ] No existing commands found in stream
[2026-06-22 04:14:59,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:14:59,791.791 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-22 04:15:02,504.504 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:15:02,508.508 INFO    ] Checking for system updates...
[2026-06-22 04:15:02,559.559 INFO    ] 200
[2026-06-22 04:15:02,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:15:02,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:15:02,633.633 INFO    ] No update needed
[2026-06-22 04:15:02,636.636 INFO    ] Checking for camera pi updates...
[2026-06-22 04:15:02,679.679 INFO    ] 200
[2026-06-22 04:15:02,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:15:02,731.731 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:15:02,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:15:02,793.793 INFO    ] No camera update needed
[2026-06-22 04:15:02,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:15:02,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:15:02,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:15:02,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:15:04,855.855 INFO    ] ================================================
[2026-06-22 04:15:04,871.871 INFO    ] Launching Daemon at Mon Jun 22 04:15:04 IST 2026
[2026-06-22 04:15:04,883.883 INFO    ] ================================================
[2026-06-22 04:15:05,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:15:05
[2026-06-22 04:15:06,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:15:06,316.316 INFO    ] Initializing speech engine...
[2026-06-22 04:15:06,329.329 INFO    ] 2026-06-22 04:15:06
[2026-06-22 04:15:06,594.594 INFO    ] 2026-06-22 04:15:06
[2026-06-22 04:15:06,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:15:06,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:15:06,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:15:06,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:15:07,029.029 INFO    ] time= 22/06/2026 04:15:06
[2026-06-22 04:15:07,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:15:07,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:15:07,229.229 INFO    ] No existing commands found in stream
[2026-06-22 04:15:12,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:15:12,250.250 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-22 04:15:15,329.329 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:15:15,332.332 INFO    ] Checking for system updates...
[2026-06-22 04:15:15,379.379 INFO    ] 200
[2026-06-22 04:15:15,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:15:15,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:15:15,437.437 INFO    ] No update needed
[2026-06-22 04:15:15,440.440 INFO    ] Checking for camera pi updates...
[2026-06-22 04:15:15,474.474 INFO    ] 200
[2026-06-22 04:15:15,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:15:15,517.517 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:15:15,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:15:15,603.603 INFO    ] No camera update needed
[2026-06-22 04:15:15,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:15:15,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:15:15,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:15:15,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:15:17,661.661 INFO    ] ================================================
[2026-06-22 04:15:17,677.677 INFO    ] Launching Daemon at Mon Jun 22 04:15:17 IST 2026
[2026-06-22 04:15:17,688.688 INFO    ] ================================================
[2026-06-22 04:15:18,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:15:18
[2026-06-22 04:15:18,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:15:19,056.056 INFO    ] Initializing speech engine...
[2026-06-22 04:15:19,068.068 INFO    ] 2026-06-22 04:15:19
[2026-06-22 04:15:19,326.326 INFO    ] 2026-06-22 04:15:19
[2026-06-22 04:15:19,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:15:19,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:15:19,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:15:19,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:15:19,668.668 INFO    ] time= 22/06/2026 04:15:19
[2026-06-22 04:15:19,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:15:19,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:15:19,781.781 INFO    ] No existing commands found in stream
[2026-06-22 04:15:24,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:15:24,802.802 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-22 04:15:25,368.368 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:15:25,369.369 INFO    ] Checking for system updates...
[2026-06-22 04:15:25,390.390 INFO    ] 200
[2026-06-22 04:15:25,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:15:25,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:15:25,425.425 INFO    ] No update needed
[2026-06-22 04:15:25,426.426 INFO    ] Checking for camera pi updates...
[2026-06-22 04:15:25,447.447 INFO    ] 200
[2026-06-22 04:15:25,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:15:25,493.493 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:15:25,614.614 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:15:25,617.617 INFO    ] No camera update needed
[2026-06-22 04:15:25,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:15:25,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:15:25,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:15:25,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:15:27,672.672 INFO    ] ================================================
[2026-06-22 04:15:27,688.688 INFO    ] Launching Daemon at Mon Jun 22 04:15:27 IST 2026
[2026-06-22 04:15:27,699.699 INFO    ] ================================================
[2026-06-22 04:15:28,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:15:28
[2026-06-22 04:15:28,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:15:29,025.025 INFO    ] Initializing speech engine...
[2026-06-22 04:15:29,033.033 INFO    ] 2026-06-22 04:15:29
[2026-06-22 04:15:29,319.319 INFO    ] 2026-06-22 04:15:29
[2026-06-22 04:15:29,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:15:29,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:15:29,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:15:29,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:15:29,701.701 INFO    ] time= 22/06/2026 04:15:29
[2026-06-22 04:15:29,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:15:29,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:15:29,800.800 INFO    ] No existing commands found in stream
[2026-06-22 04:15:34,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:15:34,818.818 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-22 04:15:38,858.858 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:15:38,861.861 INFO    ] Checking for system updates...
[2026-06-22 04:15:38,899.899 INFO    ] 200
[2026-06-22 04:15:38,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:15:38,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:15:38,960.960 INFO    ] No update needed
[2026-06-22 04:15:38,962.962 INFO    ] Checking for camera pi updates...
[2026-06-22 04:15:38,996.996 INFO    ] 200
[2026-06-22 04:15:38,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:15:39,038.038 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:15:39,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:15:39,120.120 INFO    ] No camera update needed
[2026-06-22 04:15:39,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:15:39,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:15:39,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:15:39,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:15:41,176.176 INFO    ] ================================================
[2026-06-22 04:15:41,191.191 INFO    ] Launching Daemon at Mon Jun 22 04:15:41 IST 2026
[2026-06-22 04:15:41,202.202 INFO    ] ================================================
[2026-06-22 04:15:41,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:15:41
[2026-06-22 04:15:42,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:15:42,692.692 INFO    ] Initializing speech engine...
[2026-06-22 04:15:42,700.700 INFO    ] 2026-06-22 04:15:42
[2026-06-22 04:15:42,960.960 INFO    ] 2026-06-22 04:15:42
[2026-06-22 04:15:43,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:15:43,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:15:43,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:15:43,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:15:43,328.328 INFO    ] time= 22/06/2026 04:15:43
[2026-06-22 04:15:43,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:15:43,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:15:43,489.489 INFO    ] No existing commands found in stream
[2026-06-22 04:15:48,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:15:48,522.522 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-22 04:15:52,232.232 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:15:52,233.233 INFO    ] Checking for system updates...
[2026-06-22 04:15:52,255.255 INFO    ] 200
[2026-06-22 04:15:52,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:15:52,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:15:52,293.293 INFO    ] No update needed
[2026-06-22 04:15:52,296.296 INFO    ] Checking for camera pi updates...
[2026-06-22 04:15:52,330.330 INFO    ] 200
[2026-06-22 04:15:52,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:15:52,374.374 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:15:52,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:15:52,461.461 INFO    ] No camera update needed
[2026-06-22 04:15:52,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:15:52,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:15:52,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:15:52,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:15:54,519.519 INFO    ] ================================================
[2026-06-22 04:15:54,534.534 INFO    ] Launching Daemon at Mon Jun 22 04:15:54 IST 2026
[2026-06-22 04:15:54,545.545 INFO    ] ================================================
[2026-06-22 04:15:55,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:15:55
[2026-06-22 04:15:55,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:15:55,950.950 INFO    ] Initializing speech engine...
[2026-06-22 04:15:55,958.958 INFO    ] 2026-06-22 04:15:55
[2026-06-22 04:15:56,235.235 INFO    ] 2026-06-22 04:15:56
[2026-06-22 04:15:56,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:15:56,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:15:56,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:15:56,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:15:56,615.615 INFO    ] time= 22/06/2026 04:15:56
[2026-06-22 04:15:56,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:15:56,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:15:56,774.774 INFO    ] No existing commands found in stream
[2026-06-22 04:16:01,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:16:01,791.791 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-22 04:16:03,810.810 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:16:03,813.813 INFO    ] Checking for system updates...
[2026-06-22 04:16:03,851.851 INFO    ] 200
[2026-06-22 04:16:03,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:16:03,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:16:03,916.916 INFO    ] No update needed
[2026-06-22 04:16:03,918.918 INFO    ] Checking for camera pi updates...
[2026-06-22 04:16:03,955.955 INFO    ] 200
[2026-06-22 04:16:03,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:16:03,999.999 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:16:04,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:16:04,081.081 INFO    ] No camera update needed
[2026-06-22 04:16:04,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:16:04,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:16:04,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:16:04,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:16:06,136.136 INFO    ] ================================================
[2026-06-22 04:16:06,151.151 INFO    ] Launching Daemon at Mon Jun 22 04:16:06 IST 2026
[2026-06-22 04:16:06,162.162 INFO    ] ================================================
[2026-06-22 04:16:06,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:16:06
[2026-06-22 04:16:07,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:16:07,567.567 INFO    ] Initializing speech engine...
[2026-06-22 04:16:07,576.576 INFO    ] 2026-06-22 04:16:07
[2026-06-22 04:16:07,834.834 INFO    ] 2026-06-22 04:16:07
[2026-06-22 04:16:07,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:16:08,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:16:08,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:16:08,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:16:08,304.304 INFO    ] time= 22/06/2026 04:16:08
[2026-06-22 04:16:08,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:16:08,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:16:08,439.439 INFO    ] No existing commands found in stream
[2026-06-22 04:16:13,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:16:13,454.454 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-22 04:16:17,482.482 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:16:17,485.485 INFO    ] Checking for system updates...
[2026-06-22 04:16:17,526.526 INFO    ] 200
[2026-06-22 04:16:17,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:16:17,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:16:17,586.586 INFO    ] No update needed
[2026-06-22 04:16:17,589.589 INFO    ] Checking for camera pi updates...
[2026-06-22 04:16:17,623.623 INFO    ] 200
[2026-06-22 04:16:17,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:16:17,670.670 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:16:17,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:16:17,782.782 INFO    ] No camera update needed
[2026-06-22 04:16:17,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:16:17,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:16:17,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:16:17,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:16:19,839.839 INFO    ] ================================================
[2026-06-22 04:16:19,854.854 INFO    ] Launching Daemon at Mon Jun 22 04:16:19 IST 2026
[2026-06-22 04:16:19,865.865 INFO    ] ================================================
[2026-06-22 04:16:20,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:16:20
[2026-06-22 04:16:20,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:16:21,267.267 INFO    ] Initializing speech engine...
[2026-06-22 04:16:21,281.281 INFO    ] 2026-06-22 04:16:21
[2026-06-22 04:16:21,560.560 INFO    ] 2026-06-22 04:16:21
[2026-06-22 04:16:21,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:16:21,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:16:21,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:16:22,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:16:22,152.152 INFO    ] time= 22/06/2026 04:16:22
[2026-06-22 04:16:22,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:16:22,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:16:22,282.282 INFO    ] No existing commands found in stream
[2026-06-22 04:16:27,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:16:27,316.316 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-22 04:16:31,176.176 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:16:31,180.180 INFO    ] Checking for system updates...
[2026-06-22 04:16:31,219.219 INFO    ] 200
[2026-06-22 04:16:31,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:16:31,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:16:31,307.307 INFO    ] No update needed
[2026-06-22 04:16:31,309.309 INFO    ] Checking for camera pi updates...
[2026-06-22 04:16:31,345.345 INFO    ] 200
[2026-06-22 04:16:31,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:16:31,399.399 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:16:31,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:16:31,481.481 INFO    ] No camera update needed
[2026-06-22 04:16:31,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:16:31,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:16:31,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:16:31,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:16:33,545.545 INFO    ] ================================================
[2026-06-22 04:16:33,561.561 INFO    ] Launching Daemon at Mon Jun 22 04:16:33 IST 2026
[2026-06-22 04:16:33,572.572 INFO    ] ================================================
[2026-06-22 04:16:34,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:16:34
[2026-06-22 04:16:34,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:16:35,126.126 INFO    ] Initializing speech engine...
[2026-06-22 04:16:35,136.136 INFO    ] 2026-06-22 04:16:35
[2026-06-22 04:16:35,419.419 INFO    ] 2026-06-22 04:16:35
[2026-06-22 04:16:35,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:16:35,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:16:35,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:16:35,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:16:35,877.877 INFO    ] time= 22/06/2026 04:16:35
[2026-06-22 04:16:35,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:16:35,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:16:36,020.020 INFO    ] No existing commands found in stream
[2026-06-22 04:16:41,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:16:41,036.036 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-22 04:16:44,002.002 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:16:44,004.004 INFO    ] Checking for system updates...
[2026-06-22 04:16:44,025.025 INFO    ] 200
[2026-06-22 04:16:44,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:16:44,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:16:44,075.075 INFO    ] No update needed
[2026-06-22 04:16:44,078.078 INFO    ] Checking for camera pi updates...
[2026-06-22 04:16:44,115.115 INFO    ] 200
[2026-06-22 04:16:44,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:16:44,167.167 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:16:44,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:16:44,240.240 INFO    ] No camera update needed
[2026-06-22 04:16:44,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:16:44,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:16:44,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:16:44,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:16:46,300.300 INFO    ] ================================================
[2026-06-22 04:16:46,315.315 INFO    ] Launching Daemon at Mon Jun 22 04:16:46 IST 2026
[2026-06-22 04:16:46,326.326 INFO    ] ================================================
[2026-06-22 04:16:46,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:16:46
[2026-06-22 04:16:47,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:16:47,678.678 INFO    ] Initializing speech engine...
[2026-06-22 04:16:47,684.684 INFO    ] 2026-06-22 04:16:47
[2026-06-22 04:16:47,976.976 INFO    ] 2026-06-22 04:16:47
[2026-06-22 04:16:48,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:16:48,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:16:48,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:16:48,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:16:48,347.347 INFO    ] time= 22/06/2026 04:16:48
[2026-06-22 04:16:48,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:16:48,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:16:48,469.469 INFO    ] No existing commands found in stream
[2026-06-22 04:16:53,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:16:53,484.484 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-22 04:16:54,534.534 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:16:54,537.537 INFO    ] Checking for system updates...
[2026-06-22 04:16:54,573.573 INFO    ] 200
[2026-06-22 04:16:54,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:16:54,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:16:54,631.631 INFO    ] No update needed
[2026-06-22 04:16:54,634.634 INFO    ] Checking for camera pi updates...
[2026-06-22 04:16:54,668.668 INFO    ] 200
[2026-06-22 04:16:54,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:16:54,711.711 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:16:54,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:16:54,797.797 INFO    ] No camera update needed
[2026-06-22 04:16:54,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:16:54,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:16:54,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:16:54,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:16:56,852.852 INFO    ] ================================================
[2026-06-22 04:16:56,868.868 INFO    ] Launching Daemon at Mon Jun 22 04:16:56 IST 2026
[2026-06-22 04:16:56,879.879 INFO    ] ================================================
[2026-06-22 04:16:57,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:16:57
[2026-06-22 04:16:58,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:16:58,297.297 INFO    ] Initializing speech engine...
[2026-06-22 04:16:58,311.311 INFO    ] 2026-06-22 04:16:58
[2026-06-22 04:16:58,589.589 INFO    ] 2026-06-22 04:16:58
[2026-06-22 04:16:58,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:16:58,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:16:58,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:16:58,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:16:58,960.960 INFO    ] time= 22/06/2026 04:16:58
[2026-06-22 04:16:58,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:16:59,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:16:59,082.082 INFO    ] No existing commands found in stream
[2026-06-22 04:17:04,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:17:04,097.097 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-22 04:17:05,938.938 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:17:05,939.939 INFO    ] Checking for system updates...
[2026-06-22 04:17:05,960.960 INFO    ] 200
[2026-06-22 04:17:05,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:17:05,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:17:05,996.996 INFO    ] No update needed
[2026-06-22 04:17:05,997.997 INFO    ] Checking for camera pi updates...
[2026-06-22 04:17:06,020.020 INFO    ] 200
[2026-06-22 04:17:06,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:17:06,055.055 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:17:06,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:17:06,146.146 INFO    ] No camera update needed
[2026-06-22 04:17:06,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:17:06,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:17:06,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:17:06,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:17:08,206.206 INFO    ] ================================================
[2026-06-22 04:17:08,221.221 INFO    ] Launching Daemon at Mon Jun 22 04:17:08 IST 2026
[2026-06-22 04:17:08,232.232 INFO    ] ================================================
[2026-06-22 04:17:08,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:17:08
[2026-06-22 04:17:09,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:17:09,682.682 INFO    ] Initializing speech engine...
[2026-06-22 04:17:09,688.688 INFO    ] 2026-06-22 04:17:09
[2026-06-22 04:17:09,988.988 INFO    ] 2026-06-22 04:17:09
[2026-06-22 04:17:10,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:17:10,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:17:10,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:17:10,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:17:10,352.352 INFO    ] time= 22/06/2026 04:17:10
[2026-06-22 04:17:10,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:17:10,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:17:10,432.432 INFO    ] No existing commands found in stream
[2026-06-22 04:17:15,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:17:15,446.446 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-22 04:17:15,955.955 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:17:15,957.957 INFO    ] Checking for system updates...
[2026-06-22 04:17:15,995.995 INFO    ] 200
[2026-06-22 04:17:15,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 04:17:16,000.000 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-22 04:17:16,003.003 INFO    ] Checking for camera pi updates...
[2026-06-22 04:17:16,046.046 INFO    ] 200
[2026-06-22 04:17:16,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 04:17:16,052.052 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-22 04:17:16,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:17:16,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:17:16,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:17:16,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:17:18,112.112 INFO    ] ================================================
[2026-06-22 04:17:18,128.128 INFO    ] Launching Daemon at Mon Jun 22 04:17:18 IST 2026
[2026-06-22 04:17:18,139.139 INFO    ] ================================================
[2026-06-22 04:17:18,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:17:18
[2026-06-22 04:17:19,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:17:19,486.486 INFO    ] Initializing speech engine...
[2026-06-22 04:17:19,496.496 INFO    ] 2026-06-22 04:17:19
[2026-06-22 04:17:19,798.798 INFO    ] 2026-06-22 04:17:19
[2026-06-22 04:17:19,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:17:20,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:17:20,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:17:20,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:17:20,169.169 INFO    ] time= 22/06/2026 04:17:20
[2026-06-22 04:17:20,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:17:20,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:17:20,251.251 INFO    ] No existing commands found in stream
[2026-06-22 04:17:25,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:17:25,264.264 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-22 04:17:28,446.446 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:17:28,448.448 INFO    ] Checking for system updates...
[2026-06-22 04:17:28,484.484 INFO    ] 200
[2026-06-22 04:17:28,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:17:28,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:17:28,542.542 INFO    ] No update needed
[2026-06-22 04:17:28,544.544 INFO    ] Checking for camera pi updates...
[2026-06-22 04:17:28,579.579 INFO    ] 200
[2026-06-22 04:17:28,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:17:28,622.622 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:17:28,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:17:28,730.730 INFO    ] No camera update needed
[2026-06-22 04:17:28,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:17:28,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:17:28,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:17:28,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:17:30,786.786 INFO    ] ================================================
[2026-06-22 04:17:30,801.801 INFO    ] Launching Daemon at Mon Jun 22 04:17:30 IST 2026
[2026-06-22 04:17:30,811.811 INFO    ] ================================================
[2026-06-22 04:17:31,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:17:31
[2026-06-22 04:17:32,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:17:32,384.384 INFO    ] Initializing speech engine...
[2026-06-22 04:17:32,401.401 INFO    ] 2026-06-22 04:17:32
[2026-06-22 04:17:32,699.699 INFO    ] 2026-06-22 04:17:32
[2026-06-22 04:17:32,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:17:33,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:17:33,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:17:33,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:17:33,214.214 INFO    ] time= 22/06/2026 04:17:33
[2026-06-22 04:17:33,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:17:33,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:17:33,354.354 INFO    ] No existing commands found in stream
[2026-06-22 04:17:38,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:17:38,369.369 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-22 04:17:41,537.537 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:17:41,538.538 INFO    ] Checking for system updates...
[2026-06-22 04:17:41,562.562 INFO    ] 200
[2026-06-22 04:17:41,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:17:41,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:17:41,628.628 INFO    ] No update needed
[2026-06-22 04:17:41,631.631 INFO    ] Checking for camera pi updates...
[2026-06-22 04:17:41,665.665 INFO    ] 200
[2026-06-22 04:17:41,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:17:41,708.708 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:17:41,894.894 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:17:41,897.897 INFO    ] No camera update needed
[2026-06-22 04:17:41,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:17:41,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:17:41,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:17:41,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:17:43,954.954 INFO    ] ================================================
[2026-06-22 04:17:43,969.969 INFO    ] Launching Daemon at Mon Jun 22 04:17:43 IST 2026
[2026-06-22 04:17:43,980.980 INFO    ] ================================================
[2026-06-22 04:17:44,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:17:44
[2026-06-22 04:17:45,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:17:45,408.408 INFO    ] Initializing speech engine...
[2026-06-22 04:17:45,417.417 INFO    ] 2026-06-22 04:17:45
[2026-06-22 04:17:45,662.662 INFO    ] 2026-06-22 04:17:45
[2026-06-22 04:17:45,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:17:45,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:17:45,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:17:46,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:17:46,281.281 INFO    ] time= 22/06/2026 04:17:46
[2026-06-22 04:17:46,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:17:46,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:17:46,471.471 INFO    ] No existing commands found in stream
[2026-06-22 04:17:51,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:17:51,502.502 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-22 04:17:52,411.411 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:17:52,413.413 INFO    ] Checking for system updates...
[2026-06-22 04:17:52,449.449 INFO    ] 200
[2026-06-22 04:17:52,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:17:52,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:17:52,507.507 INFO    ] No update needed
[2026-06-22 04:17:52,510.510 INFO    ] Checking for camera pi updates...
[2026-06-22 04:17:52,548.548 INFO    ] 200
[2026-06-22 04:17:52,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:17:52,591.591 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:17:52,683.683 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:17:52,686.686 INFO    ] No camera update needed
[2026-06-22 04:17:52,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:17:52,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:17:52,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:17:52,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:17:54,744.744 INFO    ] ================================================
[2026-06-22 04:17:54,760.760 INFO    ] Launching Daemon at Mon Jun 22 04:17:54 IST 2026
[2026-06-22 04:17:54,773.773 INFO    ] ================================================
[2026-06-22 04:17:55,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:17:55
[2026-06-22 04:17:55,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:17:56,261.261 INFO    ] Initializing speech engine...
[2026-06-22 04:17:56,269.269 INFO    ] 2026-06-22 04:17:56
[2026-06-22 04:17:56,530.530 INFO    ] 2026-06-22 04:17:56
[2026-06-22 04:17:56,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:17:56,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:17:56,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:17:56,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:17:56,997.997 INFO    ] time= 22/06/2026 04:17:56
[2026-06-22 04:17:57,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:17:57,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:17:57,151.151 INFO    ] No existing commands found in stream
[2026-06-22 04:18:02,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:18:02,170.170 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-22 04:18:04,728.728 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:18:04,731.731 INFO    ] Checking for system updates...
[2026-06-22 04:18:04,768.768 INFO    ] 200
[2026-06-22 04:18:04,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:18:04,825.825 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:18:04,828.828 INFO    ] No update needed
[2026-06-22 04:18:04,830.830 INFO    ] Checking for camera pi updates...
[2026-06-22 04:18:04,869.869 INFO    ] 200
[2026-06-22 04:18:04,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:18:04,913.913 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:18:04,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:18:04,992.992 INFO    ] No camera update needed
[2026-06-22 04:18:04,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:18:04,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:18:05,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:18:05,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:18:07,052.052 INFO    ] ================================================
[2026-06-22 04:18:07,068.068 INFO    ] Launching Daemon at Mon Jun 22 04:18:07 IST 2026
[2026-06-22 04:18:07,079.079 INFO    ] ================================================
[2026-06-22 04:18:07,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:18:07
[2026-06-22 04:18:08,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:18:08,547.547 INFO    ] Initializing speech engine...
[2026-06-22 04:18:08,554.554 INFO    ] 2026-06-22 04:18:08
[2026-06-22 04:18:08,862.862 INFO    ] 2026-06-22 04:18:08
[2026-06-22 04:18:08,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:18:09,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:18:09,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:18:09,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:18:09,254.254 INFO    ] time= 22/06/2026 04:18:09
[2026-06-22 04:18:09,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:18:09,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:18:09,382.382 INFO    ] No existing commands found in stream
[2026-06-22 04:18:14,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:18:14,400.400 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-22 04:18:17,637.637 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:18:17,638.638 INFO    ] Checking for system updates...
[2026-06-22 04:18:17,659.659 INFO    ] 200
[2026-06-22 04:18:17,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:18:17,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:18:17,708.708 INFO    ] No update needed
[2026-06-22 04:18:17,711.711 INFO    ] Checking for camera pi updates...
[2026-06-22 04:18:17,745.745 INFO    ] 200
[2026-06-22 04:18:17,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:18:17,788.788 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:18:17,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:18:17,842.842 INFO    ] No camera update needed
[2026-06-22 04:18:17,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:18:17,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:18:17,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:18:17,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:18:19,900.900 INFO    ] ================================================
[2026-06-22 04:18:19,915.915 INFO    ] Launching Daemon at Mon Jun 22 04:18:19 IST 2026
[2026-06-22 04:18:19,925.925 INFO    ] ================================================
[2026-06-22 04:18:20,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:18:20
[2026-06-22 04:18:21,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:18:21,420.420 INFO    ] Initializing speech engine...
[2026-06-22 04:18:21,430.430 INFO    ] 2026-06-22 04:18:21
[2026-06-22 04:18:21,694.694 INFO    ] 2026-06-22 04:18:21
[2026-06-22 04:18:21,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:18:21,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:18:21,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:18:22,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:18:22,057.057 INFO    ] time= 22/06/2026 04:18:22
[2026-06-22 04:18:22,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:18:22,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:18:22,245.245 INFO    ] No existing commands found in stream
[2026-06-22 04:18:27,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:18:27,270.270 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-22 04:18:29,836.836 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:18:29,838.838 INFO    ] Checking for system updates...
[2026-06-22 04:18:29,858.858 INFO    ] 200
[2026-06-22 04:18:29,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:18:29,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:18:29,896.896 INFO    ] No update needed
[2026-06-22 04:18:29,899.899 INFO    ] Checking for camera pi updates...
[2026-06-22 04:18:29,932.932 INFO    ] 200
[2026-06-22 04:18:29,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:18:29,977.977 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:18:30,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:18:30,039.039 INFO    ] No camera update needed
[2026-06-22 04:18:30,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:18:30,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:18:30,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:18:30,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:18:32,097.097 INFO    ] ================================================
[2026-06-22 04:18:32,118.118 INFO    ] Launching Daemon at Mon Jun 22 04:18:32 IST 2026
[2026-06-22 04:18:32,133.133 INFO    ] ================================================
[2026-06-22 04:18:32,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:18:32
[2026-06-22 04:18:33,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:18:33,652.652 INFO    ] Initializing speech engine...
[2026-06-22 04:18:33,658.658 INFO    ] 2026-06-22 04:18:33
[2026-06-22 04:18:33,951.951 INFO    ] 2026-06-22 04:18:33
[2026-06-22 04:18:33,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:18:34,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:18:34,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:18:34,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:18:34,344.344 INFO    ] time= 22/06/2026 04:18:34
[2026-06-22 04:18:34,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:18:34,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:18:34,451.451 INFO    ] No existing commands found in stream
[2026-06-22 04:18:39,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:18:39,467.467 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-22 04:18:43,274.274 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:18:43,277.277 INFO    ] Checking for system updates...
[2026-06-22 04:18:43,314.314 INFO    ] 200
[2026-06-22 04:18:43,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:18:43,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:18:43,380.380 INFO    ] No update needed
[2026-06-22 04:18:43,382.382 INFO    ] Checking for camera pi updates...
[2026-06-22 04:18:43,420.420 INFO    ] 200
[2026-06-22 04:18:43,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:18:43,482.482 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:18:43,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:18:43,539.539 INFO    ] No camera update needed
[2026-06-22 04:18:43,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:18:43,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:18:43,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:18:43,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:18:45,600.600 INFO    ] ================================================
[2026-06-22 04:18:45,615.615 INFO    ] Launching Daemon at Mon Jun 22 04:18:45 IST 2026
[2026-06-22 04:18:45,625.625 INFO    ] ================================================
[2026-06-22 04:18:46,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:18:46
[2026-06-22 04:18:46,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:18:46,973.973 INFO    ] Initializing speech engine...
[2026-06-22 04:18:46,988.988 INFO    ] 2026-06-22 04:18:46
[2026-06-22 04:18:47,271.271 INFO    ] 2026-06-22 04:18:47
[2026-06-22 04:18:47,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:18:48,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:18:48,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:18:48,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:18:48,393.393 INFO    ] time= 22/06/2026 04:18:48
[2026-06-22 04:18:48,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:18:48,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:18:48,512.512 INFO    ] No existing commands found in stream
[2026-06-22 04:18:53,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:18:53,540.540 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-22 04:18:55,914.914 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:18:55,916.916 INFO    ] Checking for system updates...
[2026-06-22 04:18:55,952.952 INFO    ] 200
[2026-06-22 04:18:55,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:18:56,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:18:56,010.010 INFO    ] No update needed
[2026-06-22 04:18:56,012.012 INFO    ] Checking for camera pi updates...
[2026-06-22 04:18:56,049.049 INFO    ] 200
[2026-06-22 04:18:56,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:18:56,092.092 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:18:56,148.148 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:18:56,150.150 INFO    ] No camera update needed
[2026-06-22 04:18:56,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:18:56,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:18:56,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:18:56,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:18:58,205.205 INFO    ] ================================================
[2026-06-22 04:18:58,220.220 INFO    ] Launching Daemon at Mon Jun 22 04:18:58 IST 2026
[2026-06-22 04:18:58,230.230 INFO    ] ================================================
[2026-06-22 04:18:58,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:18:58
[2026-06-22 04:18:59,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:18:59,611.611 INFO    ] Initializing speech engine...
[2026-06-22 04:18:59,616.616 INFO    ] 2026-06-22 04:18:59
[2026-06-22 04:18:59,861.861 INFO    ] 2026-06-22 04:18:59
[2026-06-22 04:18:59,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:19:00,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:19:00,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:19:00,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:19:00,307.307 INFO    ] time= 22/06/2026 04:19:00
[2026-06-22 04:19:00,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:19:00,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:19:00,476.476 INFO    ] No existing commands found in stream
[2026-06-22 04:19:05,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:19:05,491.491 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-22 04:19:09,594.594 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:19:09,597.597 INFO    ] Checking for system updates...
[2026-06-22 04:19:09,636.636 INFO    ] 200
[2026-06-22 04:19:09,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:19:09,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:19:09,670.670 INFO    ] No update needed
[2026-06-22 04:19:09,671.671 INFO    ] Checking for camera pi updates...
[2026-06-22 04:19:09,691.691 INFO    ] 200
[2026-06-22 04:19:09,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:19:09,717.717 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:19:09,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:19:09,808.808 INFO    ] No camera update needed
[2026-06-22 04:19:09,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:19:09,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:19:09,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:19:09,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:19:11,864.864 INFO    ] ================================================
[2026-06-22 04:19:11,880.880 INFO    ] Launching Daemon at Mon Jun 22 04:19:11 IST 2026
[2026-06-22 04:19:11,891.891 INFO    ] ================================================
[2026-06-22 04:19:12,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:19:12
[2026-06-22 04:19:13,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:19:13,386.386 INFO    ] Initializing speech engine...
[2026-06-22 04:19:13,391.391 INFO    ] 2026-06-22 04:19:13
[2026-06-22 04:19:13,640.640 INFO    ] 2026-06-22 04:19:13
[2026-06-22 04:19:13,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:19:13,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:19:13,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:19:14,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:19:14,011.011 INFO    ] time= 22/06/2026 04:19:14
[2026-06-22 04:19:14,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:19:14,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:19:14,174.174 INFO    ] No existing commands found in stream
[2026-06-22 04:19:19,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:19:19,207.207 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-22 04:19:21,631.631 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:19:21,634.634 INFO    ] Checking for system updates...
[2026-06-22 04:19:21,670.670 INFO    ] 200
[2026-06-22 04:19:21,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:19:21,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:19:21,730.730 INFO    ] No update needed
[2026-06-22 04:19:21,732.732 INFO    ] Checking for camera pi updates...
[2026-06-22 04:19:21,766.766 INFO    ] 200
[2026-06-22 04:19:21,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:19:21,809.809 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:19:21,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:19:21,892.892 INFO    ] No camera update needed
[2026-06-22 04:19:21,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:19:21,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:19:21,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:19:21,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:19:23,948.948 INFO    ] ================================================
[2026-06-22 04:19:23,963.963 INFO    ] Launching Daemon at Mon Jun 22 04:19:23 IST 2026
[2026-06-22 04:19:23,973.973 INFO    ] ================================================
[2026-06-22 04:19:24,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:19:24
[2026-06-22 04:19:25,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:19:25,301.301 INFO    ] Initializing speech engine...
[2026-06-22 04:19:25,310.310 INFO    ] 2026-06-22 04:19:25
[2026-06-22 04:19:25,581.581 INFO    ] 2026-06-22 04:19:25
[2026-06-22 04:19:25,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:19:25,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:19:25,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:19:25,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:19:25,913.913 INFO    ] time= 22/06/2026 04:19:25
[2026-06-22 04:19:25,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:19:25,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:19:26,028.028 INFO    ] No existing commands found in stream
[2026-06-22 04:19:31,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:19:31,046.046 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-22 04:19:33,134.134 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:19:33,137.137 INFO    ] Checking for system updates...
[2026-06-22 04:19:33,173.173 INFO    ] 200
[2026-06-22 04:19:33,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:19:33,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:19:33,238.238 INFO    ] No update needed
[2026-06-22 04:19:33,240.240 INFO    ] Checking for camera pi updates...
[2026-06-22 04:19:33,274.274 INFO    ] 200
[2026-06-22 04:19:33,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:19:33,317.317 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:19:33,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:19:33,404.404 INFO    ] No camera update needed
[2026-06-22 04:19:33,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:19:33,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:19:33,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:19:33,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:19:35,459.459 INFO    ] ================================================
[2026-06-22 04:19:35,474.474 INFO    ] Launching Daemon at Mon Jun 22 04:19:35 IST 2026
[2026-06-22 04:19:35,485.485 INFO    ] ================================================
[2026-06-22 04:19:36,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:19:36
[2026-06-22 04:19:36,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:19:36,806.806 INFO    ] Initializing speech engine...
[2026-06-22 04:19:36,809.809 INFO    ] 2026-06-22 04:19:36
[2026-06-22 04:19:37,105.105 INFO    ] 2026-06-22 04:19:37
[2026-06-22 04:19:37,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:19:37,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:19:37,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:19:37,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:19:37,478.478 INFO    ] time= 22/06/2026 04:19:37
[2026-06-22 04:19:37,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:19:37,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:19:37,603.603 INFO    ] No existing commands found in stream
[2026-06-22 04:19:42,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:19:42,618.618 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-22 04:19:45,735.735 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:19:45,738.738 INFO    ] Checking for system updates...
[2026-06-22 04:19:45,773.773 INFO    ] 200
[2026-06-22 04:19:45,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:19:45,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:19:45,836.836 INFO    ] No update needed
[2026-06-22 04:19:45,838.838 INFO    ] Checking for camera pi updates...
[2026-06-22 04:19:45,872.872 INFO    ] 200
[2026-06-22 04:19:45,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:19:45,916.916 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:19:46,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:19:46,116.116 INFO    ] No camera update needed
[2026-06-22 04:19:46,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:19:46,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:19:46,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:19:46,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:19:48,171.171 INFO    ] ================================================
[2026-06-22 04:19:48,186.186 INFO    ] Launching Daemon at Mon Jun 22 04:19:48 IST 2026
[2026-06-22 04:19:48,197.197 INFO    ] ================================================
[2026-06-22 04:19:48,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:19:48
[2026-06-22 04:19:49,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:19:49,562.562 INFO    ] Initializing speech engine...
[2026-06-22 04:19:49,570.570 INFO    ] 2026-06-22 04:19:49
[2026-06-22 04:19:49,854.854 INFO    ] 2026-06-22 04:19:49
[2026-06-22 04:19:49,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:19:50,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:19:50,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:19:50,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:19:50,307.307 INFO    ] time= 22/06/2026 04:19:50
[2026-06-22 04:19:50,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:19:50,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:19:50,449.449 INFO    ] No existing commands found in stream
[2026-06-22 04:19:55,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:19:55,464.464 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-22 04:19:56,547.547 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:19:56,550.550 INFO    ] Checking for system updates...
[2026-06-22 04:19:56,586.586 INFO    ] 200
[2026-06-22 04:19:56,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:19:56,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:19:56,647.647 INFO    ] No update needed
[2026-06-22 04:19:56,649.649 INFO    ] Checking for camera pi updates...
[2026-06-22 04:19:56,683.683 INFO    ] 200
[2026-06-22 04:19:56,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:19:56,726.726 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:19:56,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:19:56,831.831 INFO    ] No camera update needed
[2026-06-22 04:19:56,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:19:56,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:19:56,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:19:56,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:19:58,890.890 INFO    ] ================================================
[2026-06-22 04:19:58,905.905 INFO    ] Launching Daemon at Mon Jun 22 04:19:58 IST 2026
[2026-06-22 04:19:58,916.916 INFO    ] ================================================
[2026-06-22 04:19:59,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:19:59
[2026-06-22 04:20:00,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:20:00,282.282 INFO    ] Initializing speech engine...
[2026-06-22 04:20:00,288.288 INFO    ] 2026-06-22 04:20:00
[2026-06-22 04:20:00,549.549 INFO    ] 2026-06-22 04:20:00
[2026-06-22 04:20:00,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:20:00,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:20:00,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:20:00,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:20:01,013.013 INFO    ] time= 22/06/2026 04:20:00
[2026-06-22 04:20:01,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:20:01,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:20:01,153.153 INFO    ] No existing commands found in stream
[2026-06-22 04:20:06,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:20:06,168.168 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-22 04:20:08,267.267 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:20:08,270.270 INFO    ] Checking for system updates...
[2026-06-22 04:20:08,307.307 INFO    ] 200
[2026-06-22 04:20:08,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:20:08,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:20:08,373.373 INFO    ] No update needed
[2026-06-22 04:20:08,376.376 INFO    ] Checking for camera pi updates...
[2026-06-22 04:20:08,410.410 INFO    ] 200
[2026-06-22 04:20:08,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:20:08,471.471 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:20:08,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:20:08,582.582 INFO    ] No camera update needed
[2026-06-22 04:20:08,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:20:08,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:20:08,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:20:08,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:20:10,639.639 INFO    ] ================================================
[2026-06-22 04:20:10,655.655 INFO    ] Launching Daemon at Mon Jun 22 04:20:10 IST 2026
[2026-06-22 04:20:10,666.666 INFO    ] ================================================
[2026-06-22 04:20:11,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:20:11
[2026-06-22 04:20:11,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:20:12,082.082 INFO    ] Initializing speech engine...
[2026-06-22 04:20:12,090.090 INFO    ] 2026-06-22 04:20:12
[2026-06-22 04:20:12,330.330 INFO    ] 2026-06-22 04:20:12
[2026-06-22 04:20:12,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:20:12,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:20:12,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:20:12,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:20:12,763.763 INFO    ] time= 22/06/2026 04:20:12
[2026-06-22 04:20:12,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:20:12,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:20:12,900.900 INFO    ] No existing commands found in stream
[2026-06-22 04:20:17,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:20:17,924.924 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-22 04:20:22,264.264 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:20:22,267.267 INFO    ] Checking for system updates...
[2026-06-22 04:20:22,303.303 INFO    ] 200
[2026-06-22 04:20:22,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:20:22,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:20:22,362.362 INFO    ] No update needed
[2026-06-22 04:20:22,367.367 INFO    ] Checking for camera pi updates...
[2026-06-22 04:20:22,402.402 INFO    ] 200
[2026-06-22 04:20:22,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:20:22,452.452 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:20:22,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:20:22,550.550 INFO    ] No camera update needed
[2026-06-22 04:20:22,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:20:22,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:20:22,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:20:22,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:20:24,606.606 INFO    ] ================================================
[2026-06-22 04:20:24,622.622 INFO    ] Launching Daemon at Mon Jun 22 04:20:24 IST 2026
[2026-06-22 04:20:24,633.633 INFO    ] ================================================
[2026-06-22 04:20:25,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:20:25
[2026-06-22 04:20:25,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:20:25,997.997 INFO    ] Initializing speech engine...
[2026-06-22 04:20:26,007.007 INFO    ] 2026-06-22 04:20:26
[2026-06-22 04:20:26,261.261 INFO    ] 2026-06-22 04:20:26
[2026-06-22 04:20:26,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:20:26,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:20:26,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:20:26,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:20:26,733.733 INFO    ] time= 22/06/2026 04:20:26
[2026-06-22 04:20:26,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:20:26,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:20:26,872.872 INFO    ] No existing commands found in stream
[2026-06-22 04:20:31,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:20:31,888.888 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-22 04:20:32,990.990 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:20:32,994.994 INFO    ] Checking for system updates...
[2026-06-22 04:20:33,036.036 INFO    ] 200
[2026-06-22 04:20:33,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:20:33,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:20:33,107.107 INFO    ] No update needed
[2026-06-22 04:20:33,110.110 INFO    ] Checking for camera pi updates...
[2026-06-22 04:20:33,151.151 INFO    ] 200
[2026-06-22 04:20:33,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:20:33,200.200 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:20:33,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:20:33,253.253 INFO    ] No camera update needed
[2026-06-22 04:20:33,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:20:33,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:20:33,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:20:33,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:20:35,309.309 INFO    ] ================================================
[2026-06-22 04:20:35,327.327 INFO    ] Launching Daemon at Mon Jun 22 04:20:35 IST 2026
[2026-06-22 04:20:35,338.338 INFO    ] ================================================
[2026-06-22 04:20:35,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:20:35
[2026-06-22 04:20:36,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:20:36,675.675 INFO    ] Initializing speech engine...
[2026-06-22 04:20:36,683.683 INFO    ] 2026-06-22 04:20:36
[2026-06-22 04:20:36,936.936 INFO    ] 2026-06-22 04:20:36
[2026-06-22 04:20:36,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:20:37,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:20:37,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:20:37,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:20:37,311.311 INFO    ] time= 22/06/2026 04:20:37
[2026-06-22 04:20:37,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:20:37,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:20:37,387.387 INFO    ] No existing commands found in stream
[2026-06-22 04:20:42,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:20:42,402.402 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-22 04:20:46,039.039 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:20:46,041.041 INFO    ] Checking for system updates...
[2026-06-22 04:20:46,082.082 INFO    ] 200
[2026-06-22 04:20:46,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:20:46,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:20:46,139.139 INFO    ] No update needed
[2026-06-22 04:20:46,142.142 INFO    ] Checking for camera pi updates...
[2026-06-22 04:20:46,181.181 INFO    ] 200
[2026-06-22 04:20:46,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:20:46,224.224 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:20:46,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:20:46,308.308 INFO    ] No camera update needed
[2026-06-22 04:20:46,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:20:46,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:20:46,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:20:46,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:20:48,365.365 INFO    ] ================================================
[2026-06-22 04:20:48,380.380 INFO    ] Launching Daemon at Mon Jun 22 04:20:48 IST 2026
[2026-06-22 04:20:48,391.391 INFO    ] ================================================
[2026-06-22 04:20:48,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:20:48
[2026-06-22 04:20:49,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:20:49,751.751 INFO    ] Initializing speech engine...
[2026-06-22 04:20:49,761.761 INFO    ] 2026-06-22 04:20:49
[2026-06-22 04:20:50,063.063 INFO    ] 2026-06-22 04:20:50
[2026-06-22 04:20:50,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:20:50,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:20:50,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:20:50,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:20:50,448.448 INFO    ] time= 22/06/2026 04:20:50
[2026-06-22 04:20:50,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:20:50,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:20:50,577.577 INFO    ] No existing commands found in stream
[2026-06-22 04:20:55,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:20:55,591.591 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-22 04:20:59,267.267 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:20:59,269.269 INFO    ] Checking for system updates...
[2026-06-22 04:20:59,289.289 INFO    ] 200
[2026-06-22 04:20:59,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:20:59,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:20:59,331.331 INFO    ] No update needed
[2026-06-22 04:20:59,333.333 INFO    ] Checking for camera pi updates...
[2026-06-22 04:20:59,367.367 INFO    ] 200
[2026-06-22 04:20:59,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:20:59,415.415 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:20:59,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:20:59,497.497 INFO    ] No camera update needed
[2026-06-22 04:20:59,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:20:59,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:20:59,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:20:59,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:21:01,554.554 INFO    ] ================================================
[2026-06-22 04:21:01,574.574 INFO    ] Launching Daemon at Mon Jun 22 04:21:01 IST 2026
[2026-06-22 04:21:01,590.590 INFO    ] ================================================
[2026-06-22 04:21:02,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:21:02
[2026-06-22 04:21:02,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:21:03,192.192 INFO    ] Initializing speech engine...
[2026-06-22 04:21:03,206.206 INFO    ] 2026-06-22 04:21:03
[2026-06-22 04:21:03,480.480 INFO    ] 2026-06-22 04:21:03
[2026-06-22 04:21:03,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:21:03,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:21:03,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:21:03,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:21:03,824.824 INFO    ] time= 22/06/2026 04:21:03
[2026-06-22 04:21:03,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:21:03,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:21:03,937.937 INFO    ] No existing commands found in stream
[2026-06-22 04:21:08,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:21:08,953.953 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-22 04:21:11,787.787 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:21:11,788.788 INFO    ] Checking for system updates...
[2026-06-22 04:21:11,809.809 INFO    ] 200
[2026-06-22 04:21:11,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:21:11,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:21:11,862.862 INFO    ] No update needed
[2026-06-22 04:21:11,864.864 INFO    ] Checking for camera pi updates...
[2026-06-22 04:21:11,902.902 INFO    ] 200
[2026-06-22 04:21:11,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:21:11,951.951 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:21:12,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:21:12,045.045 INFO    ] No camera update needed
[2026-06-22 04:21:12,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:21:12,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:21:12,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:21:12,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:21:14,103.103 INFO    ] ================================================
[2026-06-22 04:21:14,118.118 INFO    ] Launching Daemon at Mon Jun 22 04:21:14 IST 2026
[2026-06-22 04:21:14,129.129 INFO    ] ================================================
[2026-06-22 04:21:14,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:21:14
[2026-06-22 04:21:15,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:21:15,511.511 INFO    ] Initializing speech engine...
[2026-06-22 04:21:15,523.523 INFO    ] 2026-06-22 04:21:15
[2026-06-22 04:21:15,774.774 INFO    ] 2026-06-22 04:21:15
[2026-06-22 04:21:15,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:21:16,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:21:16,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:21:17,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:21:17,668.668 INFO    ] time= 22/06/2026 04:21:17
[2026-06-22 04:21:17,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:21:17,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:21:17,728.728 INFO    ] No existing commands found in stream
[2026-06-22 04:21:22,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:21:22,743.743 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-22 04:21:23,969.969 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:21:23,972.972 INFO    ] Checking for system updates...
[2026-06-22 04:21:24,009.009 INFO    ] 200
[2026-06-22 04:21:24,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:21:24,074.074 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:21:24,077.077 INFO    ] No update needed
[2026-06-22 04:21:24,081.081 INFO    ] Checking for camera pi updates...
[2026-06-22 04:21:24,116.116 INFO    ] 200
[2026-06-22 04:21:24,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:21:24,161.161 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:21:24,242.242 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:21:24,245.245 INFO    ] No camera update needed
[2026-06-22 04:21:24,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:21:24,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:21:24,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:21:24,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:21:26,307.307 INFO    ] ================================================
[2026-06-22 04:21:26,324.324 INFO    ] Launching Daemon at Mon Jun 22 04:21:26 IST 2026
[2026-06-22 04:21:26,335.335 INFO    ] ================================================
[2026-06-22 04:21:26,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:21:26
[2026-06-22 04:21:27,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:21:27,765.765 INFO    ] Initializing speech engine...
[2026-06-22 04:21:27,774.774 INFO    ] 2026-06-22 04:21:27
[2026-06-22 04:21:28,079.079 INFO    ] 2026-06-22 04:21:28
[2026-06-22 04:21:28,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:21:28,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:21:28,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:21:28,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:21:28,486.486 INFO    ] time= 22/06/2026 04:21:28
[2026-06-22 04:21:28,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:21:28,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:21:28,682.682 INFO    ] No existing commands found in stream
[2026-06-22 04:21:33,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:21:33,705.705 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-22 04:21:37,154.154 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:21:37,157.157 INFO    ] Checking for system updates...
[2026-06-22 04:21:37,199.199 INFO    ] 200
[2026-06-22 04:21:37,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:21:37,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:21:37,269.269 INFO    ] No update needed
[2026-06-22 04:21:37,272.272 INFO    ] Checking for camera pi updates...
[2026-06-22 04:21:37,307.307 INFO    ] 200
[2026-06-22 04:21:37,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:21:37,358.358 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:21:37,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:21:37,444.444 INFO    ] No camera update needed
[2026-06-22 04:21:37,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:21:37,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:21:37,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:21:37,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:21:39,500.500 INFO    ] ================================================
[2026-06-22 04:21:39,516.516 INFO    ] Launching Daemon at Mon Jun 22 04:21:39 IST 2026
[2026-06-22 04:21:39,528.528 INFO    ] ================================================
[2026-06-22 04:21:40,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:21:40
[2026-06-22 04:21:40,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:21:40,938.938 INFO    ] Initializing speech engine...
[2026-06-22 04:21:40,947.947 INFO    ] 2026-06-22 04:21:40
[2026-06-22 04:21:41,207.207 INFO    ] 2026-06-22 04:21:41
[2026-06-22 04:21:41,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:21:41,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:21:41,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:21:41,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:21:41,685.685 INFO    ] time= 22/06/2026 04:21:41
[2026-06-22 04:21:41,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:21:41,764.764 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:21:41,815.815 INFO    ] No existing commands found in stream
[2026-06-22 04:21:46,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:21:46,830.830 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-22 04:21:48,318.318 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:21:48,321.321 INFO    ] Checking for system updates...
[2026-06-22 04:21:48,360.360 INFO    ] 200
[2026-06-22 04:21:48,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:21:48,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:21:48,420.420 INFO    ] No update needed
[2026-06-22 04:21:48,423.423 INFO    ] Checking for camera pi updates...
[2026-06-22 04:21:48,463.463 INFO    ] 200
[2026-06-22 04:21:48,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:21:48,512.512 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:21:48,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:21:48,710.710 INFO    ] No camera update needed
[2026-06-22 04:21:48,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:21:48,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:21:48,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:21:48,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:21:50,766.766 INFO    ] ================================================
[2026-06-22 04:21:50,781.781 INFO    ] Launching Daemon at Mon Jun 22 04:21:50 IST 2026
[2026-06-22 04:21:50,792.792 INFO    ] ================================================
[2026-06-22 04:21:51,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:21:51
[2026-06-22 04:21:51,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:21:52,109.109 INFO    ] Initializing speech engine...
[2026-06-22 04:21:52,122.122 INFO    ] 2026-06-22 04:21:52
[2026-06-22 04:21:52,407.407 INFO    ] 2026-06-22 04:21:52
[2026-06-22 04:21:52,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:21:52,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:21:52,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:21:52,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:21:52,774.774 INFO    ] time= 22/06/2026 04:21:52
[2026-06-22 04:21:52,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:21:52,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:21:52,855.855 INFO    ] No existing commands found in stream
[2026-06-22 04:21:57,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:21:57,869.869 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-22 04:21:58,704.704 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:21:58,706.706 INFO    ] Checking for system updates...
[2026-06-22 04:21:58,749.749 INFO    ] 200
[2026-06-22 04:21:58,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:21:58,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:21:58,807.807 INFO    ] No update needed
[2026-06-22 04:21:58,809.809 INFO    ] Checking for camera pi updates...
[2026-06-22 04:21:58,842.842 INFO    ] 200
[2026-06-22 04:21:58,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:21:58,887.887 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:21:58,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:21:58,973.973 INFO    ] No camera update needed
[2026-06-22 04:21:58,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:21:58,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:21:58,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:21:58,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:22:01,031.031 INFO    ] ================================================
[2026-06-22 04:22:01,047.047 INFO    ] Launching Daemon at Mon Jun 22 04:22:01 IST 2026
[2026-06-22 04:22:01,058.058 INFO    ] ================================================
[2026-06-22 04:22:01,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:22:01
[2026-06-22 04:22:02,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:22:02,647.647 INFO    ] Initializing speech engine...
[2026-06-22 04:22:02,656.656 INFO    ] 2026-06-22 04:22:02
[2026-06-22 04:22:02,928.928 INFO    ] 2026-06-22 04:22:02
[2026-06-22 04:22:02,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:22:03,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:22:03,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:22:03,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:22:03,415.415 INFO    ] time= 22/06/2026 04:22:03
[2026-06-22 04:22:03,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:22:03,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:22:03,695.695 INFO    ] No existing commands found in stream
[2026-06-22 04:22:08,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:22:08,720.720 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-22 04:22:11,593.593 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:22:11,596.596 INFO    ] Checking for system updates...
[2026-06-22 04:22:11,636.636 INFO    ] 200
[2026-06-22 04:22:11,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:22:11,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:22:11,699.699 INFO    ] No update needed
[2026-06-22 04:22:11,702.702 INFO    ] Checking for camera pi updates...
[2026-06-22 04:22:11,737.737 INFO    ] 200
[2026-06-22 04:22:11,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:22:11,780.780 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:22:11,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:22:11,865.865 INFO    ] No camera update needed
[2026-06-22 04:22:11,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:22:11,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:22:11,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:22:11,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:22:13,923.923 INFO    ] ================================================
[2026-06-22 04:22:13,939.939 INFO    ] Launching Daemon at Mon Jun 22 04:22:13 IST 2026
[2026-06-22 04:22:13,950.950 INFO    ] ================================================
[2026-06-22 04:22:14,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:22:14
[2026-06-22 04:22:15,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:22:15,361.361 INFO    ] Initializing speech engine...
[2026-06-22 04:22:15,369.369 INFO    ] 2026-06-22 04:22:15
[2026-06-22 04:22:15,642.642 INFO    ] 2026-06-22 04:22:15
[2026-06-22 04:22:15,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:22:15,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:22:15,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:22:17,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:22:17,280.280 INFO    ] time= 22/06/2026 04:22:17
[2026-06-22 04:22:17,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:22:17,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:22:17,388.388 INFO    ] No existing commands found in stream
[2026-06-22 04:22:22,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:22:22,402.402 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-22 04:22:25,922.922 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:22:25,925.925 INFO    ] Checking for system updates...
[2026-06-22 04:22:25,962.962 INFO    ] 200
[2026-06-22 04:22:25,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:22:26,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:22:26,027.027 INFO    ] No update needed
[2026-06-22 04:22:26,029.029 INFO    ] Checking for camera pi updates...
[2026-06-22 04:22:26,066.066 INFO    ] 200
[2026-06-22 04:22:26,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:22:26,109.109 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:22:26,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:22:26,213.213 INFO    ] No camera update needed
[2026-06-22 04:22:26,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:22:26,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:22:26,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:22:26,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:22:28,268.268 INFO    ] ================================================
[2026-06-22 04:22:28,283.283 INFO    ] Launching Daemon at Mon Jun 22 04:22:28 IST 2026
[2026-06-22 04:22:28,294.294 INFO    ] ================================================
[2026-06-22 04:22:28,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:22:28
[2026-06-22 04:22:29,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:22:29,785.785 INFO    ] Initializing speech engine...
[2026-06-22 04:22:29,791.791 INFO    ] 2026-06-22 04:22:29
[2026-06-22 04:22:30,053.053 INFO    ] 2026-06-22 04:22:30
[2026-06-22 04:22:30,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:22:30,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:22:30,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:22:30,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:22:30,386.386 INFO    ] time= 22/06/2026 04:22:30
[2026-06-22 04:22:30,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:22:30,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:22:30,501.501 INFO    ] No existing commands found in stream
[2026-06-22 04:22:35,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:22:35,529.529 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-22 04:22:37,266.266 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:22:37,269.269 INFO    ] Checking for system updates...
[2026-06-22 04:22:37,306.306 INFO    ] 200
[2026-06-22 04:22:37,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:22:37,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:22:37,363.363 INFO    ] No update needed
[2026-06-22 04:22:37,366.366 INFO    ] Checking for camera pi updates...
[2026-06-22 04:22:37,404.404 INFO    ] 200
[2026-06-22 04:22:37,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:22:37,452.452 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:22:37,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:22:37,548.548 INFO    ] No camera update needed
[2026-06-22 04:22:37,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:22:37,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:22:37,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:22:37,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:22:39,603.603 INFO    ] ================================================
[2026-06-22 04:22:39,618.618 INFO    ] Launching Daemon at Mon Jun 22 04:22:39 IST 2026
[2026-06-22 04:22:39,629.629 INFO    ] ================================================
[2026-06-22 04:22:40,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:22:40
[2026-06-22 04:22:40,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:22:40,940.940 INFO    ] Initializing speech engine...
[2026-06-22 04:22:40,953.953 INFO    ] 2026-06-22 04:22:40
[2026-06-22 04:22:41,215.215 INFO    ] 2026-06-22 04:22:41
[2026-06-22 04:22:41,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:22:41,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:22:41,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:22:41,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:22:41,583.583 INFO    ] time= 22/06/2026 04:22:41
[2026-06-22 04:22:41,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:22:41,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:22:41,749.749 INFO    ] No existing commands found in stream
[2026-06-22 04:22:46,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:22:46,787.787 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-22 04:22:48,883.883 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:22:48,884.884 INFO    ] Checking for system updates...
[2026-06-22 04:22:48,906.906 INFO    ] 200
[2026-06-22 04:22:48,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:22:48,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:22:48,941.941 INFO    ] No update needed
[2026-06-22 04:22:48,942.942 INFO    ] Checking for camera pi updates...
[2026-06-22 04:22:48,962.962 INFO    ] 200
[2026-06-22 04:22:48,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:22:48,986.986 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:22:49,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:22:49,041.041 INFO    ] No camera update needed
[2026-06-22 04:22:49,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:22:49,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:22:49,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:22:49,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:22:51,109.109 INFO    ] ================================================
[2026-06-22 04:22:51,125.125 INFO    ] Launching Daemon at Mon Jun 22 04:22:51 IST 2026
[2026-06-22 04:22:51,136.136 INFO    ] ================================================
[2026-06-22 04:22:51,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:22:51
[2026-06-22 04:22:52,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:22:52,726.726 INFO    ] Initializing speech engine...
[2026-06-22 04:22:52,736.736 INFO    ] 2026-06-22 04:22:52
[2026-06-22 04:22:53,012.012 INFO    ] 2026-06-22 04:22:53
[2026-06-22 04:22:53,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:22:53,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:22:53,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:22:53,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:22:53,458.458 INFO    ] time= 22/06/2026 04:22:53
[2026-06-22 04:22:53,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:22:53,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:22:53,627.627 INFO    ] No existing commands found in stream
[2026-06-22 04:22:58,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:22:58,642.642 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-22 04:23:00,959.959 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:23:00,960.960 INFO    ] Checking for system updates...
[2026-06-22 04:23:00,982.982 INFO    ] 200
[2026-06-22 04:23:00,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:23:01,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:23:01,036.036 INFO    ] No update needed
[2026-06-22 04:23:01,039.039 INFO    ] Checking for camera pi updates...
[2026-06-22 04:23:01,080.080 INFO    ] 200
[2026-06-22 04:23:01,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:23:01,129.129 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:23:01,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:23:01,195.195 INFO    ] No camera update needed
[2026-06-22 04:23:01,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:23:01,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:23:01,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:23:01,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:23:03,263.263 INFO    ] ================================================
[2026-06-22 04:23:03,292.292 INFO    ] Launching Daemon at Mon Jun 22 04:23:03 IST 2026
[2026-06-22 04:23:03,306.306 INFO    ] ================================================
[2026-06-22 04:23:03,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:23:03
[2026-06-22 04:23:04,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:23:04,795.795 INFO    ] Initializing speech engine...
[2026-06-22 04:23:04,801.801 INFO    ] 2026-06-22 04:23:04
[2026-06-22 04:23:05,089.089 INFO    ] 2026-06-22 04:23:05
[2026-06-22 04:23:05,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:23:05,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:23:05,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:23:05,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:23:05,462.462 INFO    ] time= 22/06/2026 04:23:05
[2026-06-22 04:23:05,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:23:05,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:23:05,584.584 INFO    ] No existing commands found in stream
[2026-06-22 04:23:10,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:23:10,599.599 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-22 04:23:14,042.042 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:23:14,045.045 INFO    ] Checking for system updates...
[2026-06-22 04:23:14,080.080 INFO    ] 200
[2026-06-22 04:23:14,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:23:14,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:23:14,148.148 INFO    ] No update needed
[2026-06-22 04:23:14,150.150 INFO    ] Checking for camera pi updates...
[2026-06-22 04:23:14,183.183 INFO    ] 200
[2026-06-22 04:23:14,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:23:14,227.227 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:23:14,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:23:14,304.304 INFO    ] No camera update needed
[2026-06-22 04:23:14,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:23:14,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:23:14,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:23:14,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:23:16,360.360 INFO    ] ================================================
[2026-06-22 04:23:16,376.376 INFO    ] Launching Daemon at Mon Jun 22 04:23:16 IST 2026
[2026-06-22 04:23:16,387.387 INFO    ] ================================================
[2026-06-22 04:23:16,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:23:16
[2026-06-22 04:23:17,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:23:17,807.807 INFO    ] Initializing speech engine...
[2026-06-22 04:23:17,817.817 INFO    ] 2026-06-22 04:23:17
[2026-06-22 04:23:18,082.082 INFO    ] 2026-06-22 04:23:18
[2026-06-22 04:23:18,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:23:18,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:23:18,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:23:18,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:23:18,443.443 INFO    ] time= 22/06/2026 04:23:18
[2026-06-22 04:23:18,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:23:18,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:23:18,564.564 INFO    ] No existing commands found in stream
[2026-06-22 04:23:23,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:23:23,597.597 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-22 04:23:26,668.668 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:23:26,671.671 INFO    ] Checking for system updates...
[2026-06-22 04:23:26,708.708 INFO    ] 200
[2026-06-22 04:23:26,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:23:26,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:23:26,772.772 INFO    ] No update needed
[2026-06-22 04:23:26,775.775 INFO    ] Checking for camera pi updates...
[2026-06-22 04:23:26,813.813 INFO    ] 200
[2026-06-22 04:23:26,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:23:26,861.861 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:23:26,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:23:26,962.962 INFO    ] No camera update needed
[2026-06-22 04:23:26,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:23:26,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:23:26,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:23:26,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:23:29,018.018 INFO    ] ================================================
[2026-06-22 04:23:29,034.034 INFO    ] Launching Daemon at Mon Jun 22 04:23:29 IST 2026
[2026-06-22 04:23:29,045.045 INFO    ] ================================================
[2026-06-22 04:23:29,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:23:29
[2026-06-22 04:23:30,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:23:30,629.629 INFO    ] Initializing speech engine...
[2026-06-22 04:23:30,640.640 INFO    ] 2026-06-22 04:23:30
[2026-06-22 04:23:30,921.921 INFO    ] 2026-06-22 04:23:30
[2026-06-22 04:23:30,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:23:31,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:23:31,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:23:31,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:23:31,399.399 INFO    ] time= 22/06/2026 04:23:31
[2026-06-22 04:23:31,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:23:31,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:23:31,542.542 INFO    ] No existing commands found in stream
[2026-06-22 04:23:36,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:23:36,561.561 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-22 04:23:40,461.461 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:23:40,464.464 INFO    ] Checking for system updates...
[2026-06-22 04:23:40,505.505 INFO    ] 200
[2026-06-22 04:23:40,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:23:40,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:23:40,564.564 INFO    ] No update needed
[2026-06-22 04:23:40,568.568 INFO    ] Checking for camera pi updates...
[2026-06-22 04:23:40,606.606 INFO    ] 200
[2026-06-22 04:23:40,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:23:40,655.655 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:23:40,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:23:40,739.739 INFO    ] No camera update needed
[2026-06-22 04:23:40,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:23:40,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:23:40,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:23:40,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:23:42,803.803 INFO    ] ================================================
[2026-06-22 04:23:42,819.819 INFO    ] Launching Daemon at Mon Jun 22 04:23:42 IST 2026
[2026-06-22 04:23:42,830.830 INFO    ] ================================================
[2026-06-22 04:23:43,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:23:43
[2026-06-22 04:23:44,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:23:44,394.394 INFO    ] Initializing speech engine...
[2026-06-22 04:23:44,408.408 INFO    ] 2026-06-22 04:23:44
[2026-06-22 04:23:44,727.727 INFO    ] 2026-06-22 04:23:44
[2026-06-22 04:23:44,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:23:44,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:23:45,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:23:45,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:23:45,184.184 INFO    ] time= 22/06/2026 04:23:45
[2026-06-22 04:23:45,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:23:45,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:23:45,357.357 INFO    ] No existing commands found in stream
[2026-06-22 04:23:50,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:23:50,390.390 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-22 04:23:52,192.192 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:23:52,195.195 INFO    ] Checking for system updates...
[2026-06-22 04:23:52,234.234 INFO    ] 200
[2026-06-22 04:23:52,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:23:52,292.292 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:23:52,295.295 INFO    ] No update needed
[2026-06-22 04:23:52,298.298 INFO    ] Checking for camera pi updates...
[2026-06-22 04:23:52,338.338 INFO    ] 200
[2026-06-22 04:23:52,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:23:52,383.383 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:23:52,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:23:52,584.584 INFO    ] No camera update needed
[2026-06-22 04:23:52,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:23:52,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:23:52,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:23:52,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:23:54,647.647 INFO    ] ================================================
[2026-06-22 04:23:54,662.662 INFO    ] Launching Daemon at Mon Jun 22 04:23:54 IST 2026
[2026-06-22 04:23:54,673.673 INFO    ] ================================================
[2026-06-22 04:23:55,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:23:55
[2026-06-22 04:23:55,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:23:56,069.069 INFO    ] Initializing speech engine...
[2026-06-22 04:23:56,074.074 INFO    ] 2026-06-22 04:23:56
[2026-06-22 04:23:56,324.324 INFO    ] 2026-06-22 04:23:56
[2026-06-22 04:23:56,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:23:56,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:23:56,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:23:56,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:23:56,663.663 INFO    ] time= 22/06/2026 04:23:56
[2026-06-22 04:23:56,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:23:56,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:23:56,776.776 INFO    ] No existing commands found in stream
[2026-06-22 04:24:01,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:24:01,791.791 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-22 04:24:04,005.005 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:24:04,008.008 INFO    ] Checking for system updates...
[2026-06-22 04:24:04,051.051 INFO    ] 200
[2026-06-22 04:24:04,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:24:04,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:24:04,126.126 INFO    ] No update needed
[2026-06-22 04:24:04,129.129 INFO    ] Checking for camera pi updates...
[2026-06-22 04:24:04,169.169 INFO    ] 200
[2026-06-22 04:24:04,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:24:04,215.215 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:24:04,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:24:04,278.278 INFO    ] No camera update needed
[2026-06-22 04:24:04,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:24:04,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:24:04,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:24:04,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:24:06,339.339 INFO    ] ================================================
[2026-06-22 04:24:06,355.355 INFO    ] Launching Daemon at Mon Jun 22 04:24:06 IST 2026
[2026-06-22 04:24:06,366.366 INFO    ] ================================================
[2026-06-22 04:24:07,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:24:07
[2026-06-22 04:24:07,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:24:08,011.011 INFO    ] Initializing speech engine...
[2026-06-22 04:24:08,025.025 INFO    ] 2026-06-22 04:24:08
[2026-06-22 04:24:08,306.306 INFO    ] 2026-06-22 04:24:08
[2026-06-22 04:24:08,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:24:08,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:24:08,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:24:08,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:24:08,783.783 INFO    ] time= 22/06/2026 04:24:08
[2026-06-22 04:24:08,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:24:08,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:24:09,009.009 INFO    ] No existing commands found in stream
[2026-06-22 04:24:14,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:24:14,031.031 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-22 04:24:17,676.676 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:24:17,680.680 INFO    ] Checking for system updates...
[2026-06-22 04:24:17,722.722 INFO    ] 200
[2026-06-22 04:24:17,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:24:17,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:24:17,782.782 INFO    ] No update needed
[2026-06-22 04:24:17,785.785 INFO    ] Checking for camera pi updates...
[2026-06-22 04:24:17,822.822 INFO    ] 200
[2026-06-22 04:24:17,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:24:17,869.869 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:24:17,953.953 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:24:17,956.956 INFO    ] No camera update needed
[2026-06-22 04:24:17,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:24:17,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:24:17,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:24:17,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:24:20,019.019 INFO    ] ================================================
[2026-06-22 04:24:20,034.034 INFO    ] Launching Daemon at Mon Jun 22 04:24:20 IST 2026
[2026-06-22 04:24:20,044.044 INFO    ] ================================================
[2026-06-22 04:24:20,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:24:20
[2026-06-22 04:24:21,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:24:21,431.431 INFO    ] Initializing speech engine...
[2026-06-22 04:24:21,440.440 INFO    ] 2026-06-22 04:24:21
[2026-06-22 04:24:21,701.701 INFO    ] 2026-06-22 04:24:21
[2026-06-22 04:24:21,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:24:21,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:24:21,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:24:22,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:24:22,028.028 INFO    ] time= 22/06/2026 04:24:22
[2026-06-22 04:24:22,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:24:22,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:24:22,140.140 INFO    ] No existing commands found in stream
[2026-06-22 04:24:27,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:24:27,179.179 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-22 04:24:29,598.598 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:24:29,599.599 INFO    ] Checking for system updates...
[2026-06-22 04:24:29,619.619 INFO    ] 200
[2026-06-22 04:24:29,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:24:29,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:24:29,653.653 INFO    ] No update needed
[2026-06-22 04:24:29,654.654 INFO    ] Checking for camera pi updates...
[2026-06-22 04:24:29,674.674 INFO    ] 200
[2026-06-22 04:24:29,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:24:29,711.711 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:24:29,790.790 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:24:29,792.792 INFO    ] No camera update needed
[2026-06-22 04:24:29,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:24:29,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:24:29,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:24:29,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:24:31,850.850 INFO    ] ================================================
[2026-06-22 04:24:31,865.865 INFO    ] Launching Daemon at Mon Jun 22 04:24:31 IST 2026
[2026-06-22 04:24:31,875.875 INFO    ] ================================================
[2026-06-22 04:24:32,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:24:32
[2026-06-22 04:24:33,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:24:33,372.372 INFO    ] Initializing speech engine...
[2026-06-22 04:24:33,389.389 INFO    ] 2026-06-22 04:24:33
[2026-06-22 04:24:33,652.652 INFO    ] 2026-06-22 04:24:33
[2026-06-22 04:24:33,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:24:33,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:24:33,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:24:33,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:24:34,005.005 INFO    ] time= 22/06/2026 04:24:33
[2026-06-22 04:24:34,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:24:34,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:24:34,103.103 INFO    ] No existing commands found in stream
[2026-06-22 04:24:39,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:24:39,118.118 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-22 04:24:42,578.578 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:24:42,579.579 INFO    ] Checking for system updates...
[2026-06-22 04:24:42,604.604 INFO    ] 200
[2026-06-22 04:24:42,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:24:42,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:24:42,664.664 INFO    ] No update needed
[2026-06-22 04:24:42,667.667 INFO    ] Checking for camera pi updates...
[2026-06-22 04:24:42,702.702 INFO    ] 200
[2026-06-22 04:24:42,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:24:42,752.752 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:24:42,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:24:42,836.836 INFO    ] No camera update needed
[2026-06-22 04:24:42,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:24:42,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:24:42,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:24:42,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:24:44,895.895 INFO    ] ================================================
[2026-06-22 04:24:44,910.910 INFO    ] Launching Daemon at Mon Jun 22 04:24:44 IST 2026
[2026-06-22 04:24:44,921.921 INFO    ] ================================================
[2026-06-22 04:24:45,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:24:45
[2026-06-22 04:24:46,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:24:46,254.254 INFO    ] Initializing speech engine...
[2026-06-22 04:24:46,269.269 INFO    ] 2026-06-22 04:24:46
[2026-06-22 04:24:46,537.537 INFO    ] 2026-06-22 04:24:46
[2026-06-22 04:24:46,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:24:47,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:24:47,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:24:47,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:24:47,688.688 INFO    ] time= 22/06/2026 04:24:47
[2026-06-22 04:24:47,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:24:47,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:24:47,803.803 INFO    ] No existing commands found in stream
[2026-06-22 04:24:52,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:24:52,820.820 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-22 04:24:54,538.538 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:24:54,540.540 INFO    ] Checking for system updates...
[2026-06-22 04:24:54,561.561 INFO    ] 200
[2026-06-22 04:24:54,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:24:54,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:24:54,595.595 INFO    ] No update needed
[2026-06-22 04:24:54,596.596 INFO    ] Checking for camera pi updates...
[2026-06-22 04:24:54,627.627 INFO    ] 200
[2026-06-22 04:24:54,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:24:54,672.672 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:24:54,760.760 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:24:54,763.763 INFO    ] No camera update needed
[2026-06-22 04:24:54,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:24:54,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:24:54,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:24:54,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:24:56,825.825 INFO    ] ================================================
[2026-06-22 04:24:56,840.840 INFO    ] Launching Daemon at Mon Jun 22 04:24:56 IST 2026
[2026-06-22 04:24:56,851.851 INFO    ] ================================================
[2026-06-22 04:24:57,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:24:57
[2026-06-22 04:24:57,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:24:58,187.187 INFO    ] Initializing speech engine...
[2026-06-22 04:24:58,195.195 INFO    ] 2026-06-22 04:24:58
[2026-06-22 04:24:58,445.445 INFO    ] 2026-06-22 04:24:58
[2026-06-22 04:24:58,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:24:58,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:24:58,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:24:58,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:24:58,831.831 INFO    ] time= 22/06/2026 04:24:58
[2026-06-22 04:24:58,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:24:58,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:24:58,909.909 INFO    ] No existing commands found in stream
[2026-06-22 04:25:03,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:25:03,924.924 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-22 04:25:06,330.330 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:25:06,333.333 INFO    ] Checking for system updates...
[2026-06-22 04:25:06,369.369 INFO    ] 200
[2026-06-22 04:25:06,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:25:06,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:25:06,434.434 INFO    ] No update needed
[2026-06-22 04:25:06,437.437 INFO    ] Checking for camera pi updates...
[2026-06-22 04:25:06,474.474 INFO    ] 200
[2026-06-22 04:25:06,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:25:06,513.513 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:25:06,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:25:06,597.597 INFO    ] No camera update needed
[2026-06-22 04:25:06,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:25:06,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:25:06,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:25:06,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:25:08,646.646 INFO    ] ================================================
[2026-06-22 04:25:08,661.661 INFO    ] Launching Daemon at Mon Jun 22 04:25:08 IST 2026
[2026-06-22 04:25:08,672.672 INFO    ] ================================================
[2026-06-22 04:25:09,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:25:09
[2026-06-22 04:25:09,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:25:10,141.141 INFO    ] Initializing speech engine...
[2026-06-22 04:25:10,162.162 INFO    ] 2026-06-22 04:25:10
[2026-06-22 04:25:10,447.447 INFO    ] 2026-06-22 04:25:10
[2026-06-22 04:25:10,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:25:10,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:25:10,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:25:10,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:25:10,825.825 INFO    ] time= 22/06/2026 04:25:10
[2026-06-22 04:25:10,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:25:10,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:25:10,903.903 INFO    ] No existing commands found in stream
[2026-06-22 04:25:15,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:25:15,936.936 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-22 04:25:19,997.997 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:25:20,000.000 INFO    ] Checking for system updates...
[2026-06-22 04:25:20,036.036 INFO    ] 200
[2026-06-22 04:25:20,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:25:20,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:25:20,095.095 INFO    ] No update needed
[2026-06-22 04:25:20,097.097 INFO    ] Checking for camera pi updates...
[2026-06-22 04:25:20,131.131 INFO    ] 200
[2026-06-22 04:25:20,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:25:20,175.175 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:25:20,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:25:20,261.261 INFO    ] No camera update needed
[2026-06-22 04:25:20,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:25:20,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:25:20,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:25:20,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:25:22,319.319 INFO    ] ================================================
[2026-06-22 04:25:22,335.335 INFO    ] Launching Daemon at Mon Jun 22 04:25:22 IST 2026
[2026-06-22 04:25:22,346.346 INFO    ] ================================================
[2026-06-22 04:25:22,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:25:22
[2026-06-22 04:25:23,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:25:23,718.718 INFO    ] Initializing speech engine...
[2026-06-22 04:25:23,729.729 INFO    ] 2026-06-22 04:25:23
[2026-06-22 04:25:23,987.987 INFO    ] 2026-06-22 04:25:23
[2026-06-22 04:25:24,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:25:24,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:25:24,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:25:24,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:25:24,454.454 INFO    ] time= 22/06/2026 04:25:24
[2026-06-22 04:25:24,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:25:24,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:25:24,593.593 INFO    ] No existing commands found in stream
[2026-06-22 04:25:29,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:25:29,608.608 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-22 04:25:33,120.120 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:25:33,123.123 INFO    ] Checking for system updates...
[2026-06-22 04:25:33,160.160 INFO    ] 200
[2026-06-22 04:25:33,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:25:33,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:25:33,224.224 INFO    ] No update needed
[2026-06-22 04:25:33,226.226 INFO    ] Checking for camera pi updates...
[2026-06-22 04:25:33,261.261 INFO    ] 200
[2026-06-22 04:25:33,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:25:33,305.305 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:25:33,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:25:33,415.415 INFO    ] No camera update needed
[2026-06-22 04:25:33,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:25:33,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:25:33,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:25:33,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:25:35,471.471 INFO    ] ================================================
[2026-06-22 04:25:35,486.486 INFO    ] Launching Daemon at Mon Jun 22 04:25:35 IST 2026
[2026-06-22 04:25:35,497.497 INFO    ] ================================================
[2026-06-22 04:25:36,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:25:36
[2026-06-22 04:25:36,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:25:36,975.975 INFO    ] Initializing speech engine...
[2026-06-22 04:25:36,983.983 INFO    ] 2026-06-22 04:25:36
[2026-06-22 04:25:37,241.241 INFO    ] 2026-06-22 04:25:37
[2026-06-22 04:25:37,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:25:37,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:25:37,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:25:37,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:25:37,699.699 INFO    ] time= 22/06/2026 04:25:37
[2026-06-22 04:25:37,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:25:37,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:25:37,844.844 INFO    ] No existing commands found in stream
[2026-06-22 04:25:42,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:25:42,859.859 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-22 04:25:44,472.472 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:25:44,475.475 INFO    ] Checking for system updates...
[2026-06-22 04:25:44,516.516 INFO    ] 200
[2026-06-22 04:25:44,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:25:44,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:25:44,581.581 INFO    ] No update needed
[2026-06-22 04:25:44,583.583 INFO    ] Checking for camera pi updates...
[2026-06-22 04:25:44,621.621 INFO    ] 200
[2026-06-22 04:25:44,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:25:44,670.670 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:25:44,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:25:44,754.754 INFO    ] No camera update needed
[2026-06-22 04:25:44,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:25:44,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:25:44,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:25:44,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:25:46,811.811 INFO    ] ================================================
[2026-06-22 04:25:46,826.826 INFO    ] Launching Daemon at Mon Jun 22 04:25:46 IST 2026
[2026-06-22 04:25:46,837.837 INFO    ] ================================================
[2026-06-22 04:25:47,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:25:47
[2026-06-22 04:25:47,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:25:48,230.230 INFO    ] Initializing speech engine...
[2026-06-22 04:25:48,240.240 INFO    ] 2026-06-22 04:25:48
[2026-06-22 04:25:48,484.484 INFO    ] 2026-06-22 04:25:48
[2026-06-22 04:25:48,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:25:48,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:25:48,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:25:48,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:25:48,959.959 INFO    ] time= 22/06/2026 04:25:48
[2026-06-22 04:25:49,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:25:49,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:25:49,099.099 INFO    ] No existing commands found in stream
[2026-06-22 04:25:54,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:25:54,114.114 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-22 04:25:57,737.737 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:25:57,740.740 INFO    ] Checking for system updates...
[2026-06-22 04:25:57,777.777 INFO    ] 200
[2026-06-22 04:25:57,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:25:57,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:25:57,833.833 INFO    ] No update needed
[2026-06-22 04:25:57,836.836 INFO    ] Checking for camera pi updates...
[2026-06-22 04:25:57,869.869 INFO    ] 200
[2026-06-22 04:25:57,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:25:57,912.912 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:25:58,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:25:58,092.092 INFO    ] No camera update needed
[2026-06-22 04:25:58,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:25:58,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:25:58,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:25:58,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:26:00,151.151 INFO    ] ================================================
[2026-06-22 04:26:00,167.167 INFO    ] Launching Daemon at Mon Jun 22 04:26:00 IST 2026
[2026-06-22 04:26:00,178.178 INFO    ] ================================================
[2026-06-22 04:26:00,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:26:00
[2026-06-22 04:26:01,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:26:01,556.556 INFO    ] Initializing speech engine...
[2026-06-22 04:26:01,565.565 INFO    ] 2026-06-22 04:26:01
[2026-06-22 04:26:01,818.818 INFO    ] 2026-06-22 04:26:01
[2026-06-22 04:26:01,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:26:02,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:26:02,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:26:02,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:26:02,250.250 INFO    ] time= 22/06/2026 04:26:02
[2026-06-22 04:26:02,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:26:02,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:26:02,310.310 INFO    ] No existing commands found in stream
[2026-06-22 04:26:07,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:26:07,325.325 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-22 04:26:08,594.594 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:26:08,597.597 INFO    ] Checking for system updates...
[2026-06-22 04:26:08,633.633 INFO    ] 200
[2026-06-22 04:26:08,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:26:08,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:26:08,691.691 INFO    ] No update needed
[2026-06-22 04:26:08,693.693 INFO    ] Checking for camera pi updates...
[2026-06-22 04:26:08,727.727 INFO    ] 200
[2026-06-22 04:26:08,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:26:08,775.775 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:26:08,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:26:08,858.858 INFO    ] No camera update needed
[2026-06-22 04:26:08,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:26:08,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:26:08,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:26:08,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:26:10,914.914 INFO    ] ================================================
[2026-06-22 04:26:10,934.934 INFO    ] Launching Daemon at Mon Jun 22 04:26:10 IST 2026
[2026-06-22 04:26:10,944.944 INFO    ] ================================================
[2026-06-22 04:26:11,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:26:11
[2026-06-22 04:26:12,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:26:12,580.580 INFO    ] Initializing speech engine...
[2026-06-22 04:26:12,591.591 INFO    ] 2026-06-22 04:26:12
[2026-06-22 04:26:12,902.902 INFO    ] 2026-06-22 04:26:12
[2026-06-22 04:26:12,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:26:13,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:26:13,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:26:13,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:26:13,414.414 INFO    ] time= 22/06/2026 04:26:13
[2026-06-22 04:26:13,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:26:13,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:26:13,590.590 INFO    ] No existing commands found in stream
[2026-06-22 04:26:18,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:26:18,624.624 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-22 04:26:21,712.712 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:26:21,714.714 INFO    ] Checking for system updates...
[2026-06-22 04:26:21,737.737 INFO    ] 200
[2026-06-22 04:26:21,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:26:21,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:26:21,774.774 INFO    ] No update needed
[2026-06-22 04:26:21,776.776 INFO    ] Checking for camera pi updates...
[2026-06-22 04:26:21,812.812 INFO    ] 200
[2026-06-22 04:26:21,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:26:21,856.856 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:26:21,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:26:21,952.952 INFO    ] No camera update needed
[2026-06-22 04:26:21,954.954 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:26:21,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:26:21,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:26:21,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:26:24,009.009 INFO    ] ================================================
[2026-06-22 04:26:24,023.023 INFO    ] Launching Daemon at Mon Jun 22 04:26:24 IST 2026
[2026-06-22 04:26:24,034.034 INFO    ] ================================================
[2026-06-22 04:26:24,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:26:24
[2026-06-22 04:26:25,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:26:25,381.381 INFO    ] Initializing speech engine...
[2026-06-22 04:26:25,404.404 INFO    ] 2026-06-22 04:26:25
[2026-06-22 04:26:25,659.659 INFO    ] 2026-06-22 04:26:25
[2026-06-22 04:26:25,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:26:25,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:26:25,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:26:26,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:26:26,030.030 INFO    ] time= 22/06/2026 04:26:26
[2026-06-22 04:26:26,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:26:26,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:26:26,206.206 INFO    ] No existing commands found in stream
[2026-06-22 04:26:31,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:26:31,239.239 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-22 04:26:34,964.964 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:26:34,967.967 INFO    ] Checking for system updates...
[2026-06-22 04:26:35,006.006 INFO    ] 200
[2026-06-22 04:26:35,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:26:35,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:26:35,073.073 INFO    ] No update needed
[2026-06-22 04:26:35,076.076 INFO    ] Checking for camera pi updates...
[2026-06-22 04:26:35,111.111 INFO    ] 200
[2026-06-22 04:26:35,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:26:35,155.155 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:26:35,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:26:35,249.249 INFO    ] No camera update needed
[2026-06-22 04:26:35,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:26:35,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:26:35,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:26:35,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:26:37,309.309 INFO    ] ================================================
[2026-06-22 04:26:37,324.324 INFO    ] Launching Daemon at Mon Jun 22 04:26:37 IST 2026
[2026-06-22 04:26:37,334.334 INFO    ] ================================================
[2026-06-22 04:26:37,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:26:37
[2026-06-22 04:26:38,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:26:38,723.723 INFO    ] Initializing speech engine...
[2026-06-22 04:26:38,731.731 INFO    ] 2026-06-22 04:26:38
[2026-06-22 04:26:38,990.990 INFO    ] 2026-06-22 04:26:38
[2026-06-22 04:26:39,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:26:39,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:26:39,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:26:39,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:26:39,347.347 INFO    ] time= 22/06/2026 04:26:39
[2026-06-22 04:26:39,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:26:39,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:26:39,507.507 INFO    ] No existing commands found in stream
[2026-06-22 04:26:44,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:26:44,535.535 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-22 04:26:45,706.706 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:26:45,707.707 INFO    ] Checking for system updates...
[2026-06-22 04:26:45,731.731 INFO    ] 200
[2026-06-22 04:26:45,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:26:45,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:26:45,768.768 INFO    ] No update needed
[2026-06-22 04:26:45,769.769 INFO    ] Checking for camera pi updates...
[2026-06-22 04:26:45,792.792 INFO    ] 200
[2026-06-22 04:26:45,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:26:45,843.843 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:26:45,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:26:45,929.929 INFO    ] No camera update needed
[2026-06-22 04:26:45,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:26:45,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:26:45,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:26:45,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:26:47,989.989 INFO    ] ================================================
[2026-06-22 04:26:48,005.005 INFO    ] Launching Daemon at Mon Jun 22 04:26:47 IST 2026
[2026-06-22 04:26:48,016.016 INFO    ] ================================================
[2026-06-22 04:26:48,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:26:48
[2026-06-22 04:26:49,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:26:49,570.570 INFO    ] Initializing speech engine...
[2026-06-22 04:26:49,581.581 INFO    ] 2026-06-22 04:26:49
[2026-06-22 04:26:49,867.867 INFO    ] 2026-06-22 04:26:49
[2026-06-22 04:26:49,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:26:50,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:26:50,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:26:50,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:26:50,321.321 INFO    ] time= 22/06/2026 04:26:50
[2026-06-22 04:26:50,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:26:50,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:26:50,466.466 INFO    ] No existing commands found in stream
[2026-06-22 04:26:55,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:26:55,482.482 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-22 04:26:58,968.968 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:26:58,970.970 INFO    ] Checking for system updates...
[2026-06-22 04:26:58,991.991 INFO    ] 200
[2026-06-22 04:26:58,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:26:59,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:26:59,038.038 INFO    ] No update needed
[2026-06-22 04:26:59,041.041 INFO    ] Checking for camera pi updates...
[2026-06-22 04:26:59,082.082 INFO    ] 200
[2026-06-22 04:26:59,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:26:59,127.127 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:26:59,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:26:59,211.211 INFO    ] No camera update needed
[2026-06-22 04:26:59,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:26:59,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:26:59,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:26:59,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:27:01,267.267 INFO    ] ================================================
[2026-06-22 04:27:01,283.283 INFO    ] Launching Daemon at Mon Jun 22 04:27:01 IST 2026
[2026-06-22 04:27:01,293.293 INFO    ] ================================================
[2026-06-22 04:27:02,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:27:02
[2026-06-22 04:27:02,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:27:03,169.169 INFO    ] Initializing speech engine...
[2026-06-22 04:27:03,191.191 INFO    ] 2026-06-22 04:27:03
[2026-06-22 04:27:03,508.508 INFO    ] 2026-06-22 04:27:03
[2026-06-22 04:27:03,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:27:03,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:27:03,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:27:03,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:27:03,887.887 INFO    ] time= 22/06/2026 04:27:03
[2026-06-22 04:27:03,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:27:03,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:27:03,971.971 INFO    ] No existing commands found in stream
[2026-06-22 04:27:08,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:27:08,986.986 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-22 04:27:11,211.211 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:27:11,213.213 INFO    ] Checking for system updates...
[2026-06-22 04:27:11,250.250 INFO    ] 200
[2026-06-22 04:27:11,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:27:11,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:27:11,308.308 INFO    ] No update needed
[2026-06-22 04:27:11,311.311 INFO    ] Checking for camera pi updates...
[2026-06-22 04:27:11,345.345 INFO    ] 200
[2026-06-22 04:27:11,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:27:11,391.391 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:27:11,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:27:11,443.443 INFO    ] No camera update needed
[2026-06-22 04:27:11,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:27:11,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:27:11,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:27:11,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:27:13,498.498 INFO    ] ================================================
[2026-06-22 04:27:13,514.514 INFO    ] Launching Daemon at Mon Jun 22 04:27:13 IST 2026
[2026-06-22 04:27:13,524.524 INFO    ] ================================================
[2026-06-22 04:27:14,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:27:14
[2026-06-22 04:27:14,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:27:15,227.227 INFO    ] Initializing speech engine...
[2026-06-22 04:27:15,235.235 INFO    ] 2026-06-22 04:27:15
[2026-06-22 04:27:15,555.555 INFO    ] 2026-06-22 04:27:15
[2026-06-22 04:27:15,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:27:15,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:27:15,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:27:16,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:27:16,490.490 INFO    ] time= 22/06/2026 04:27:16
[2026-06-22 04:27:16,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:27:16,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:27:16,622.622 INFO    ] No existing commands found in stream
[2026-06-22 04:27:21,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:27:21,645.645 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-22 04:27:23,999.999 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:27:24,000.000 INFO    ] Checking for system updates...
[2026-06-22 04:27:24,022.022 INFO    ] 200
[2026-06-22 04:27:24,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:27:24,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:27:24,075.075 INFO    ] No update needed
[2026-06-22 04:27:24,077.077 INFO    ] Checking for camera pi updates...
[2026-06-22 04:27:24,113.113 INFO    ] 200
[2026-06-22 04:27:24,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:27:24,161.161 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:27:24,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:27:24,250.250 INFO    ] No camera update needed
[2026-06-22 04:27:24,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:27:24,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:27:24,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:27:24,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:27:26,306.306 INFO    ] ================================================
[2026-06-22 04:27:26,321.321 INFO    ] Launching Daemon at Mon Jun 22 04:27:26 IST 2026
[2026-06-22 04:27:26,332.332 INFO    ] ================================================
[2026-06-22 04:27:26,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:27:26
[2026-06-22 04:27:27,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:27:27,973.973 INFO    ] Initializing speech engine...
[2026-06-22 04:27:27,987.987 INFO    ] 2026-06-22 04:27:27
[2026-06-22 04:27:28,267.267 INFO    ] 2026-06-22 04:27:28
[2026-06-22 04:27:28,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:27:28,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:27:28,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:27:28,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:27:28,700.700 INFO    ] time= 22/06/2026 04:27:28
[2026-06-22 04:27:28,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:27:28,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:27:28,869.869 INFO    ] No existing commands found in stream
[2026-06-22 04:27:33,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:27:33,886.886 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-22 04:27:35,600.600 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:27:35,603.603 INFO    ] Checking for system updates...
[2026-06-22 04:27:35,640.640 INFO    ] 200
[2026-06-22 04:27:35,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:27:35,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:27:35,700.700 INFO    ] No update needed
[2026-06-22 04:27:35,702.702 INFO    ] Checking for camera pi updates...
[2026-06-22 04:27:35,736.736 INFO    ] 200
[2026-06-22 04:27:35,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:27:35,784.784 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:27:35,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:27:35,869.869 INFO    ] No camera update needed
[2026-06-22 04:27:35,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:27:35,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:27:35,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:27:35,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:27:37,927.927 INFO    ] ================================================
[2026-06-22 04:27:37,943.943 INFO    ] Launching Daemon at Mon Jun 22 04:27:37 IST 2026
[2026-06-22 04:27:37,954.954 INFO    ] ================================================
[2026-06-22 04:27:38,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:27:38
[2026-06-22 04:27:39,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:27:39,415.415 INFO    ] Initializing speech engine...
[2026-06-22 04:27:39,424.424 INFO    ] 2026-06-22 04:27:39
[2026-06-22 04:27:39,681.681 INFO    ] 2026-06-22 04:27:39
[2026-06-22 04:27:39,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:27:39,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:27:39,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:27:40,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:27:40,011.011 INFO    ] time= 22/06/2026 04:27:40
[2026-06-22 04:27:40,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:27:40,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:27:40,166.166 INFO    ] No existing commands found in stream
[2026-06-22 04:27:45,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:27:45,185.185 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-22 04:27:49,495.495 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:27:49,497.497 INFO    ] Checking for system updates...
[2026-06-22 04:27:49,533.533 INFO    ] 200
[2026-06-22 04:27:49,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:27:49,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:27:49,595.595 INFO    ] No update needed
[2026-06-22 04:27:49,597.597 INFO    ] Checking for camera pi updates...
[2026-06-22 04:27:49,635.635 INFO    ] 200
[2026-06-22 04:27:49,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:27:49,684.684 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:27:49,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:27:49,768.768 INFO    ] No camera update needed
[2026-06-22 04:27:49,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:27:49,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:27:49,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:27:49,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:27:51,825.825 INFO    ] ================================================
[2026-06-22 04:27:51,840.840 INFO    ] Launching Daemon at Mon Jun 22 04:27:51 IST 2026
[2026-06-22 04:27:51,850.850 INFO    ] ================================================
[2026-06-22 04:27:52,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:27:52
[2026-06-22 04:27:52,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:27:53,295.295 INFO    ] Initializing speech engine...
[2026-06-22 04:27:53,308.308 INFO    ] 2026-06-22 04:27:53
[2026-06-22 04:27:53,590.590 INFO    ] 2026-06-22 04:27:53
[2026-06-22 04:27:53,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:27:53,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:27:53,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:27:54,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:27:54,128.128 INFO    ] time= 22/06/2026 04:27:54
[2026-06-22 04:27:54,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:27:54,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:27:54,305.305 INFO    ] No existing commands found in stream
[2026-06-22 04:27:59,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:27:59,340.340 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-22 04:28:02,073.073 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:28:02,077.077 INFO    ] Checking for system updates...
[2026-06-22 04:28:02,130.130 INFO    ] 200
[2026-06-22 04:28:02,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:28:02,194.194 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:28:02,197.197 INFO    ] No update needed
[2026-06-22 04:28:02,200.200 INFO    ] Checking for camera pi updates...
[2026-06-22 04:28:02,244.244 INFO    ] 200
[2026-06-22 04:28:02,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:28:02,293.293 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:28:02,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:28:02,353.353 INFO    ] No camera update needed
[2026-06-22 04:28:02,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:28:02,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:28:02,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:28:02,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:28:04,424.424 INFO    ] ================================================
[2026-06-22 04:28:04,439.439 INFO    ] Launching Daemon at Mon Jun 22 04:28:04 IST 2026
[2026-06-22 04:28:04,450.450 INFO    ] ================================================
[2026-06-22 04:28:05,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:28:05
[2026-06-22 04:28:05,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:28:05,862.862 INFO    ] Initializing speech engine...
[2026-06-22 04:28:05,867.867 INFO    ] 2026-06-22 04:28:05
[2026-06-22 04:28:06,087.087 INFO    ] 2026-06-22 04:28:06
[2026-06-22 04:28:06,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:28:06,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:28:06,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:28:06,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:28:06,549.549 INFO    ] time= 22/06/2026 04:28:06
[2026-06-22 04:28:06,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:28:06,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:28:06,755.755 INFO    ] No existing commands found in stream
[2026-06-22 04:28:11,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:28:11,769.769 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-22 04:28:13,424.424 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:28:13,427.427 INFO    ] Checking for system updates...
[2026-06-22 04:28:13,466.466 INFO    ] 200
[2026-06-22 04:28:13,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:28:13,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:28:13,524.524 INFO    ] No update needed
[2026-06-22 04:28:13,527.527 INFO    ] Checking for camera pi updates...
[2026-06-22 04:28:13,563.563 INFO    ] 200
[2026-06-22 04:28:13,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:28:13,607.607 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:28:13,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:28:13,661.661 INFO    ] No camera update needed
[2026-06-22 04:28:13,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:28:13,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:28:13,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:28:13,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:28:15,716.716 INFO    ] ================================================
[2026-06-22 04:28:15,732.732 INFO    ] Launching Daemon at Mon Jun 22 04:28:15 IST 2026
[2026-06-22 04:28:15,743.743 INFO    ] ================================================
[2026-06-22 04:28:16,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:28:16
[2026-06-22 04:28:16,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:28:17,158.158 INFO    ] Initializing speech engine...
[2026-06-22 04:28:17,169.169 INFO    ] 2026-06-22 04:28:17
[2026-06-22 04:28:17,422.422 INFO    ] 2026-06-22 04:28:17
[2026-06-22 04:28:17,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:28:17,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:28:17,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:28:17,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:28:17,916.916 INFO    ] time= 22/06/2026 04:28:17
[2026-06-22 04:28:17,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:28:17,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:28:18,109.109 INFO    ] No existing commands found in stream
[2026-06-22 04:28:23,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:28:23,139.139 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-22 04:28:26,527.527 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:28:26,529.529 INFO    ] Checking for system updates...
[2026-06-22 04:28:26,551.551 INFO    ] 200
[2026-06-22 04:28:26,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:28:26,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:28:26,587.587 INFO    ] No update needed
[2026-06-22 04:28:26,590.590 INFO    ] Checking for camera pi updates...
[2026-06-22 04:28:26,626.626 INFO    ] 200
[2026-06-22 04:28:26,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:28:26,669.669 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:28:26,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:28:26,721.721 INFO    ] No camera update needed
[2026-06-22 04:28:26,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:28:26,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:28:26,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:28:26,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:28:28,777.777 INFO    ] ================================================
[2026-06-22 04:28:28,793.793 INFO    ] Launching Daemon at Mon Jun 22 04:28:28 IST 2026
[2026-06-22 04:28:28,803.803 INFO    ] ================================================
[2026-06-22 04:28:29,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:28:29
[2026-06-22 04:28:29,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:28:30,164.164 INFO    ] Initializing speech engine...
[2026-06-22 04:28:30,187.187 INFO    ] 2026-06-22 04:28:30
[2026-06-22 04:28:30,445.445 INFO    ] 2026-06-22 04:28:30
[2026-06-22 04:28:30,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:28:30,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:28:30,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:28:30,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:28:30,929.929 INFO    ] time= 22/06/2026 04:28:30
[2026-06-22 04:28:30,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:28:31,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:28:31,076.076 INFO    ] No existing commands found in stream
[2026-06-22 04:28:36,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:28:36,091.091 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-22 04:28:40,387.387 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:28:40,388.388 INFO    ] Checking for system updates...
[2026-06-22 04:28:40,412.412 INFO    ] 200
[2026-06-22 04:28:40,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:28:40,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:28:40,476.476 INFO    ] No update needed
[2026-06-22 04:28:40,478.478 INFO    ] Checking for camera pi updates...
[2026-06-22 04:28:40,522.522 INFO    ] 200
[2026-06-22 04:28:40,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:28:40,569.569 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:28:40,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:28:40,651.651 INFO    ] No camera update needed
[2026-06-22 04:28:40,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:28:40,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:28:40,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:28:40,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:28:42,706.706 INFO    ] ================================================
[2026-06-22 04:28:42,721.721 INFO    ] Launching Daemon at Mon Jun 22 04:28:42 IST 2026
[2026-06-22 04:28:42,732.732 INFO    ] ================================================
[2026-06-22 04:28:43,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:28:43
[2026-06-22 04:28:43,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:28:44,098.098 INFO    ] Initializing speech engine...
[2026-06-22 04:28:44,123.123 INFO    ] 2026-06-22 04:28:44
[2026-06-22 04:28:44,391.391 INFO    ] 2026-06-22 04:28:44
[2026-06-22 04:28:44,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:28:44,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:28:44,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:28:44,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:28:44,751.751 INFO    ] time= 22/06/2026 04:28:44
[2026-06-22 04:28:44,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:28:44,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:28:44,828.828 INFO    ] No existing commands found in stream
[2026-06-22 04:28:49,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:28:49,844.844 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-22 04:28:51,895.895 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:28:51,897.897 INFO    ] Checking for system updates...
[2026-06-22 04:28:51,935.935 INFO    ] 200
[2026-06-22 04:28:51,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:28:51,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:28:52,000.000 INFO    ] No update needed
[2026-06-22 04:28:52,003.003 INFO    ] Checking for camera pi updates...
[2026-06-22 04:28:52,038.038 INFO    ] 200
[2026-06-22 04:28:52,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:28:52,087.087 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:28:52,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:28:52,181.181 INFO    ] No camera update needed
[2026-06-22 04:28:52,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:28:52,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:28:52,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:28:52,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:28:54,241.241 INFO    ] ================================================
[2026-06-22 04:28:54,257.257 INFO    ] Launching Daemon at Mon Jun 22 04:28:54 IST 2026
[2026-06-22 04:28:54,269.269 INFO    ] ================================================
[2026-06-22 04:28:54,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:28:54
[2026-06-22 04:28:55,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:28:55,660.660 INFO    ] Initializing speech engine...
[2026-06-22 04:28:55,685.685 INFO    ] 2026-06-22 04:28:55
[2026-06-22 04:28:55,960.960 INFO    ] 2026-06-22 04:28:55
[2026-06-22 04:28:55,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:28:56,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:28:56,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:28:56,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:28:56,339.339 INFO    ] time= 22/06/2026 04:28:56
[2026-06-22 04:28:56,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:28:56,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:28:56,419.419 INFO    ] No existing commands found in stream
[2026-06-22 04:29:01,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:29:01,437.437 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-22 04:29:02,047.047 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:29:02,051.051 INFO    ] Checking for system updates...
[2026-06-22 04:29:02,100.100 INFO    ] 200
[2026-06-22 04:29:02,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:29:02,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:29:02,183.183 INFO    ] No update needed
[2026-06-22 04:29:02,186.186 INFO    ] Checking for camera pi updates...
[2026-06-22 04:29:02,228.228 INFO    ] 200
[2026-06-22 04:29:02,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:29:02,286.286 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:29:02,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:29:02,347.347 INFO    ] No camera update needed
[2026-06-22 04:29:02,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:29:02,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:29:02,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:29:02,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:29:04,423.423 INFO    ] ================================================
[2026-06-22 04:29:04,439.439 INFO    ] Launching Daemon at Mon Jun 22 04:29:04 IST 2026
[2026-06-22 04:29:04,450.450 INFO    ] ================================================
[2026-06-22 04:29:05,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:29:05
[2026-06-22 04:29:05,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:29:05,873.873 INFO    ] Initializing speech engine...
[2026-06-22 04:29:05,897.897 INFO    ] 2026-06-22 04:29:05
[2026-06-22 04:29:06,172.172 INFO    ] 2026-06-22 04:29:06
[2026-06-22 04:29:06,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:29:06,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:29:06,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:29:06,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:29:06,568.568 INFO    ] time= 22/06/2026 04:29:06
[2026-06-22 04:29:06,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:29:06,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:29:06,750.750 INFO    ] No existing commands found in stream
[2026-06-22 04:29:11,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:29:11,765.765 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-22 04:29:12,569.569 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:29:12,572.572 INFO    ] Checking for system updates...
[2026-06-22 04:29:12,611.611 INFO    ] 200
[2026-06-22 04:29:12,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:29:12,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:29:12,675.675 INFO    ] No update needed
[2026-06-22 04:29:12,677.677 INFO    ] Checking for camera pi updates...
[2026-06-22 04:29:12,714.714 INFO    ] 200
[2026-06-22 04:29:12,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:29:12,761.761 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:29:12,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:29:12,830.830 INFO    ] No camera update needed
[2026-06-22 04:29:12,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:29:12,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:29:12,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:29:12,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:29:14,885.885 INFO    ] ================================================
[2026-06-22 04:29:14,900.900 INFO    ] Launching Daemon at Mon Jun 22 04:29:14 IST 2026
[2026-06-22 04:29:14,912.912 INFO    ] ================================================
[2026-06-22 04:29:15,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:29:15
[2026-06-22 04:29:16,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:29:16,358.358 INFO    ] Initializing speech engine...
[2026-06-22 04:29:16,366.366 INFO    ] 2026-06-22 04:29:16
[2026-06-22 04:29:16,625.625 INFO    ] 2026-06-22 04:29:16
[2026-06-22 04:29:16,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:29:17,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:29:17,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:29:17,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:29:17,718.718 INFO    ] time= 22/06/2026 04:29:17
[2026-06-22 04:29:17,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:29:17,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:29:17,843.843 INFO    ] No existing commands found in stream
[2026-06-22 04:29:22,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:29:22,858.858 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-22 04:29:26,564.564 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:29:26,567.567 INFO    ] Checking for system updates...
[2026-06-22 04:29:26,603.603 INFO    ] 200
[2026-06-22 04:29:26,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:29:26,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:29:26,663.663 INFO    ] No update needed
[2026-06-22 04:29:26,665.665 INFO    ] Checking for camera pi updates...
[2026-06-22 04:29:26,700.700 INFO    ] 200
[2026-06-22 04:29:26,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:29:26,747.747 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:29:26,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:29:26,833.833 INFO    ] No camera update needed
[2026-06-22 04:29:26,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:29:26,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:29:26,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:29:26,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:29:28,889.889 INFO    ] ================================================
[2026-06-22 04:29:28,906.906 INFO    ] Launching Daemon at Mon Jun 22 04:29:28 IST 2026
[2026-06-22 04:29:28,917.917 INFO    ] ================================================
[2026-06-22 04:29:29,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:29:29
[2026-06-22 04:29:30,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:29:30,414.414 INFO    ] Initializing speech engine...
[2026-06-22 04:29:30,422.422 INFO    ] 2026-06-22 04:29:30
[2026-06-22 04:29:30,694.694 INFO    ] 2026-06-22 04:29:30
[2026-06-22 04:29:30,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:29:30,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:29:30,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:29:31,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:29:31,166.166 INFO    ] time= 22/06/2026 04:29:31
[2026-06-22 04:29:31,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:29:31,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:29:31,309.309 INFO    ] No existing commands found in stream
[2026-06-22 04:29:36,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:29:36,324.324 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-22 04:29:39,959.959 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:29:39,961.961 INFO    ] Checking for system updates...
[2026-06-22 04:29:40,001.001 INFO    ] 200
[2026-06-22 04:29:40,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:29:40,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:29:40,059.059 INFO    ] No update needed
[2026-06-22 04:29:40,061.061 INFO    ] Checking for camera pi updates...
[2026-06-22 04:29:40,095.095 INFO    ] 200
[2026-06-22 04:29:40,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:29:40,139.139 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:29:40,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:29:40,227.227 INFO    ] No camera update needed
[2026-06-22 04:29:40,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:29:40,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:29:40,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:29:40,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:29:42,284.284 INFO    ] ================================================
[2026-06-22 04:29:42,300.300 INFO    ] Launching Daemon at Mon Jun 22 04:29:42 IST 2026
[2026-06-22 04:29:42,311.311 INFO    ] ================================================
[2026-06-22 04:29:42,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:29:42
[2026-06-22 04:29:43,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:29:43,632.632 INFO    ] Initializing speech engine...
[2026-06-22 04:29:43,657.657 INFO    ] 2026-06-22 04:29:43
[2026-06-22 04:29:43,928.928 INFO    ] 2026-06-22 04:29:43
[2026-06-22 04:29:43,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:29:44,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:29:44,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:29:44,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:29:44,307.307 INFO    ] time= 22/06/2026 04:29:44
[2026-06-22 04:29:44,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:29:44,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:29:44,469.469 INFO    ] No existing commands found in stream
[2026-06-22 04:29:49,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:29:49,497.497 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-22 04:29:53,161.161 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:29:53,163.163 INFO    ] Checking for system updates...
[2026-06-22 04:29:53,203.203 INFO    ] 200
[2026-06-22 04:29:53,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:29:53,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:29:53,267.267 INFO    ] No update needed
[2026-06-22 04:29:53,269.269 INFO    ] Checking for camera pi updates...
[2026-06-22 04:29:53,307.307 INFO    ] 200
[2026-06-22 04:29:53,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:29:53,354.354 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:29:53,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:29:53,441.441 INFO    ] No camera update needed
[2026-06-22 04:29:53,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:29:53,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:29:53,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:29:53,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:29:55,496.496 INFO    ] ================================================
[2026-06-22 04:29:55,511.511 INFO    ] Launching Daemon at Mon Jun 22 04:29:55 IST 2026
[2026-06-22 04:29:55,522.522 INFO    ] ================================================
[2026-06-22 04:29:56,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:29:56
[2026-06-22 04:29:56,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:29:56,921.921 INFO    ] Initializing speech engine...
[2026-06-22 04:29:56,930.930 INFO    ] 2026-06-22 04:29:56
[2026-06-22 04:29:57,181.181 INFO    ] 2026-06-22 04:29:57
[2026-06-22 04:29:57,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:29:57,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:29:57,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:29:57,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:29:57,521.521 INFO    ] time= 22/06/2026 04:29:57
[2026-06-22 04:29:57,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:29:57,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:29:57,633.633 INFO    ] No existing commands found in stream
[2026-06-22 04:30:02,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:30:02,649.649 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-22 04:30:08,590.590 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:30:08,591.591 INFO    ] Checking for system updates...
[2026-06-22 04:30:08,613.613 INFO    ] 200
[2026-06-22 04:30:08,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:30:08,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:30:08,646.646 INFO    ] No update needed
[2026-06-22 04:30:08,647.647 INFO    ] Checking for camera pi updates...
[2026-06-22 04:30:08,670.670 INFO    ] 200
[2026-06-22 04:30:08,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:30:08,699.699 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:30:08,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:30:08,851.851 INFO    ] No camera update needed
[2026-06-22 04:30:08,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:30:08,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:30:08,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:30:08,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:30:10,907.907 INFO    ] ================================================
[2026-06-22 04:30:10,922.922 INFO    ] Launching Daemon at Mon Jun 22 04:30:10 IST 2026
[2026-06-22 04:30:10,933.933 INFO    ] ================================================
[2026-06-22 04:30:11,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:30:11
[2026-06-22 04:30:12,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:30:12,391.391 INFO    ] Initializing speech engine...
[2026-06-22 04:30:12,402.402 INFO    ] 2026-06-22 04:30:12
[2026-06-22 04:30:12,649.649 INFO    ] 2026-06-22 04:30:12
[2026-06-22 04:30:12,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:30:12,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:30:12,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:30:13,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:30:13,126.126 INFO    ] time= 22/06/2026 04:30:13
[2026-06-22 04:30:13,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:30:13,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:30:13,269.269 INFO    ] No existing commands found in stream
[2026-06-22 04:30:18,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:30:18,284.284 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-22 04:30:21,536.536 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:30:21,538.538 INFO    ] Checking for system updates...
[2026-06-22 04:30:21,560.560 INFO    ] 200
[2026-06-22 04:30:21,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:30:21,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:30:21,595.595 INFO    ] No update needed
[2026-06-22 04:30:21,597.597 INFO    ] Checking for camera pi updates...
[2026-06-22 04:30:21,629.629 INFO    ] 200
[2026-06-22 04:30:21,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:30:21,677.677 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:30:21,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:30:21,770.770 INFO    ] No camera update needed
[2026-06-22 04:30:21,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:30:21,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:30:21,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:30:21,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:30:23,827.827 INFO    ] ================================================
[2026-06-22 04:30:23,843.843 INFO    ] Launching Daemon at Mon Jun 22 04:30:23 IST 2026
[2026-06-22 04:30:23,853.853 INFO    ] ================================================
[2026-06-22 04:30:24,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:30:24
[2026-06-22 04:30:24,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:30:25,228.228 INFO    ] Initializing speech engine...
[2026-06-22 04:30:25,239.239 INFO    ] 2026-06-22 04:30:25
[2026-06-22 04:30:25,486.486 INFO    ] 2026-06-22 04:30:25
[2026-06-22 04:30:25,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:30:25,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:30:25,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:30:25,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:30:25,936.936 INFO    ] time= 22/06/2026 04:30:25
[2026-06-22 04:30:25,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:30:25,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:30:26,076.076 INFO    ] No existing commands found in stream
[2026-06-22 04:30:31,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:30:31,091.091 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-22 04:30:35,486.486 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:30:35,488.488 INFO    ] Checking for system updates...
[2026-06-22 04:30:35,509.509 INFO    ] 200
[2026-06-22 04:30:35,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:30:35,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:30:35,579.579 INFO    ] No update needed
[2026-06-22 04:30:35,581.581 INFO    ] Checking for camera pi updates...
[2026-06-22 04:30:35,615.615 INFO    ] 200
[2026-06-22 04:30:35,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:30:35,663.663 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:30:35,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:30:35,745.745 INFO    ] No camera update needed
[2026-06-22 04:30:35,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:30:35,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:30:35,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:30:35,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:30:37,799.799 INFO    ] ================================================
[2026-06-22 04:30:37,815.815 INFO    ] Launching Daemon at Mon Jun 22 04:30:37 IST 2026
[2026-06-22 04:30:37,826.826 INFO    ] ================================================
[2026-06-22 04:30:38,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:30:38
[2026-06-22 04:30:39,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:30:39,283.283 INFO    ] Initializing speech engine...
[2026-06-22 04:30:39,290.290 INFO    ] 2026-06-22 04:30:39
[2026-06-22 04:30:39,550.550 INFO    ] 2026-06-22 04:30:39
[2026-06-22 04:30:39,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:30:39,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:30:39,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:30:39,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:30:40,021.021 INFO    ] time= 22/06/2026 04:30:39
[2026-06-22 04:30:40,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:30:40,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:30:40,248.248 INFO    ] No existing commands found in stream
[2026-06-22 04:30:45,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:30:45,275.275 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-22 04:30:46,006.006 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:30:46,009.009 INFO    ] Checking for system updates...
[2026-06-22 04:30:46,046.046 INFO    ] 200
[2026-06-22 04:30:46,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:30:46,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:30:46,109.109 INFO    ] No update needed
[2026-06-22 04:30:46,112.112 INFO    ] Checking for camera pi updates...
[2026-06-22 04:30:46,146.146 INFO    ] 200
[2026-06-22 04:30:46,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:30:46,194.194 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:30:46,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:30:46,278.278 INFO    ] No camera update needed
[2026-06-22 04:30:46,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:30:46,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:30:46,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:30:46,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:30:48,334.334 INFO    ] ================================================
[2026-06-22 04:30:48,350.350 INFO    ] Launching Daemon at Mon Jun 22 04:30:48 IST 2026
[2026-06-22 04:30:48,360.360 INFO    ] ================================================
[2026-06-22 04:30:48,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:30:48
[2026-06-22 04:30:49,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:30:49,784.784 INFO    ] Initializing speech engine...
[2026-06-22 04:30:49,796.796 INFO    ] 2026-06-22 04:30:49
[2026-06-22 04:30:50,046.046 INFO    ] 2026-06-22 04:30:50
[2026-06-22 04:30:50,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:30:50,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:30:50,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:30:50,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:30:50,409.409 INFO    ] time= 22/06/2026 04:30:50
[2026-06-22 04:30:50,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:30:50,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:30:50,499.499 INFO    ] No existing commands found in stream
[2026-06-22 04:30:55,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:30:55,517.517 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-22 04:30:57,235.235 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:30:57,237.237 INFO    ] Checking for system updates...
[2026-06-22 04:30:57,257.257 INFO    ] 200
[2026-06-22 04:30:57,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:30:57,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:30:57,292.292 INFO    ] No update needed
[2026-06-22 04:30:57,293.293 INFO    ] Checking for camera pi updates...
[2026-06-22 04:30:57,314.314 INFO    ] 200
[2026-06-22 04:30:57,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:30:57,354.354 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:30:57,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:30:57,439.439 INFO    ] No camera update needed
[2026-06-22 04:30:57,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:30:57,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:30:57,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:30:57,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:30:59,497.497 INFO    ] ================================================
[2026-06-22 04:30:59,511.511 INFO    ] Launching Daemon at Mon Jun 22 04:30:59 IST 2026
[2026-06-22 04:30:59,522.522 INFO    ] ================================================
[2026-06-22 04:31:00,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:31:00
[2026-06-22 04:31:00,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:31:00,881.881 INFO    ] Initializing speech engine...
[2026-06-22 04:31:00,889.889 INFO    ] 2026-06-22 04:31:00
[2026-06-22 04:31:01,202.202 INFO    ] 2026-06-22 04:31:01
[2026-06-22 04:31:01,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:31:01,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:31:01,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:31:01,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:31:01,731.731 INFO    ] time= 22/06/2026 04:31:01
[2026-06-22 04:31:01,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:31:01,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:31:01,918.918 INFO    ] No existing commands found in stream
[2026-06-22 04:31:06,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:31:06,951.951 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-22 04:31:09,139.139 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:31:09,142.142 INFO    ] Checking for system updates...
[2026-06-22 04:31:09,178.178 INFO    ] 200
[2026-06-22 04:31:09,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:31:09,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:31:09,236.236 INFO    ] No update needed
[2026-06-22 04:31:09,239.239 INFO    ] Checking for camera pi updates...
[2026-06-22 04:31:09,275.275 INFO    ] 200
[2026-06-22 04:31:09,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:31:09,324.324 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:31:09,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:31:09,406.406 INFO    ] No camera update needed
[2026-06-22 04:31:09,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:31:09,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:31:09,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:31:09,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:31:11,463.463 INFO    ] ================================================
[2026-06-22 04:31:11,479.479 INFO    ] Launching Daemon at Mon Jun 22 04:31:11 IST 2026
[2026-06-22 04:31:11,490.490 INFO    ] ================================================
[2026-06-22 04:31:12,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:31:12
[2026-06-22 04:31:12,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:31:13,146.146 INFO    ] Initializing speech engine...
[2026-06-22 04:31:13,154.154 INFO    ] 2026-06-22 04:31:13
[2026-06-22 04:31:13,459.459 INFO    ] 2026-06-22 04:31:13
[2026-06-22 04:31:13,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:31:13,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:31:13,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:31:13,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:31:13,968.968 INFO    ] time= 22/06/2026 04:31:13
[2026-06-22 04:31:13,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:31:13,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:31:14,112.112 INFO    ] No existing commands found in stream
[2026-06-22 04:31:19,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:31:19,142.142 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-22 04:31:20,990.990 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:31:20,993.993 INFO    ] Checking for system updates...
[2026-06-22 04:31:21,031.031 INFO    ] 200
[2026-06-22 04:31:21,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:31:21,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:31:21,091.091 INFO    ] No update needed
[2026-06-22 04:31:21,094.094 INFO    ] Checking for camera pi updates...
[2026-06-22 04:31:21,129.129 INFO    ] 200
[2026-06-22 04:31:21,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:31:21,175.175 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:31:21,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:31:21,254.254 INFO    ] No camera update needed
[2026-06-22 04:31:21,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:31:21,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:31:21,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:31:21,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:31:23,319.319 INFO    ] ================================================
[2026-06-22 04:31:23,335.335 INFO    ] Launching Daemon at Mon Jun 22 04:31:23 IST 2026
[2026-06-22 04:31:23,345.345 INFO    ] ================================================
[2026-06-22 04:31:24,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:31:24
[2026-06-22 04:31:24,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:31:25,051.051 INFO    ] Initializing speech engine...
[2026-06-22 04:31:25,061.061 INFO    ] 2026-06-22 04:31:25
[2026-06-22 04:31:25,339.339 INFO    ] 2026-06-22 04:31:25
[2026-06-22 04:31:25,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:31:25,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:31:25,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:31:25,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:31:25,719.719 INFO    ] time= 22/06/2026 04:31:25
[2026-06-22 04:31:25,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:31:25,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:31:25,811.811 INFO    ] No existing commands found in stream
[2026-06-22 04:31:30,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:31:30,857.857 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-22 04:31:31,212.212 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:31:31,215.215 INFO    ] Checking for system updates...
[2026-06-22 04:31:31,266.266 INFO    ] 200
[2026-06-22 04:31:31,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:31:31,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:31:31,335.335 INFO    ] No update needed
[2026-06-22 04:31:31,337.337 INFO    ] Checking for camera pi updates...
[2026-06-22 04:31:31,411.411 INFO    ] 200
[2026-06-22 04:31:31,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:31:31,487.487 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:31:31,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:31:31,546.546 INFO    ] No camera update needed
[2026-06-22 04:31:31,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:31:31,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:31:31,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:31:31,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:31:33,603.603 INFO    ] ================================================
[2026-06-22 04:31:33,618.618 INFO    ] Launching Daemon at Mon Jun 22 04:31:33 IST 2026
[2026-06-22 04:31:33,629.629 INFO    ] ================================================
[2026-06-22 04:31:34,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:31:34
[2026-06-22 04:31:34,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:31:35,194.194 INFO    ] Initializing speech engine...
[2026-06-22 04:31:35,208.208 INFO    ] 2026-06-22 04:31:35
[2026-06-22 04:31:35,494.494 INFO    ] 2026-06-22 04:31:35
[2026-06-22 04:31:35,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:31:35,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:31:35,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:31:35,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:31:35,958.958 INFO    ] time= 22/06/2026 04:31:35
[2026-06-22 04:31:36,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:31:36,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:31:36,160.160 INFO    ] No existing commands found in stream
[2026-06-22 04:31:41,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:31:41,187.187 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-22 04:31:45,279.279 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:31:45,280.280 INFO    ] Checking for system updates...
[2026-06-22 04:31:45,302.302 INFO    ] 200
[2026-06-22 04:31:45,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:31:45,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:31:45,336.336 INFO    ] No update needed
[2026-06-22 04:31:45,337.337 INFO    ] Checking for camera pi updates...
[2026-06-22 04:31:45,363.363 INFO    ] 200
[2026-06-22 04:31:45,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:31:45,407.407 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:31:45,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:31:45,491.491 INFO    ] No camera update needed
[2026-06-22 04:31:45,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:31:45,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:31:45,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:31:45,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:31:47,555.555 INFO    ] ================================================
[2026-06-22 04:31:47,571.571 INFO    ] Launching Daemon at Mon Jun 22 04:31:47 IST 2026
[2026-06-22 04:31:47,581.581 INFO    ] ================================================
[2026-06-22 04:31:48,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:31:48
[2026-06-22 04:31:48,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:31:49,292.292 INFO    ] Initializing speech engine...
[2026-06-22 04:31:49,304.304 INFO    ] 2026-06-22 04:31:49
[2026-06-22 04:31:49,611.611 INFO    ] 2026-06-22 04:31:49
[2026-06-22 04:31:49,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:31:49,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:31:49,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:31:49,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:31:50,008.008 INFO    ] time= 22/06/2026 04:31:49
[2026-06-22 04:31:50,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:31:50,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:31:50,167.167 INFO    ] No existing commands found in stream
[2026-06-22 04:31:55,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:31:55,181.181 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-22 04:31:56,239.239 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:31:56,240.240 INFO    ] Checking for system updates...
[2026-06-22 04:31:56,274.274 INFO    ] 200
[2026-06-22 04:31:56,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:31:56,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:31:56,332.332 INFO    ] No update needed
[2026-06-22 04:31:56,335.335 INFO    ] Checking for camera pi updates...
[2026-06-22 04:31:56,369.369 INFO    ] 200
[2026-06-22 04:31:56,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:31:56,418.418 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:31:56,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:31:56,508.508 INFO    ] No camera update needed
[2026-06-22 04:31:56,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:31:56,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:31:56,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:31:56,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:31:58,562.562 INFO    ] ================================================
[2026-06-22 04:31:58,578.578 INFO    ] Launching Daemon at Mon Jun 22 04:31:58 IST 2026
[2026-06-22 04:31:58,589.589 INFO    ] ================================================
[2026-06-22 04:31:59,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:31:59
[2026-06-22 04:31:59,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:32:00,061.061 INFO    ] Initializing speech engine...
[2026-06-22 04:32:00,084.084 INFO    ] 2026-06-22 04:32:00
[2026-06-22 04:32:00,341.341 INFO    ] 2026-06-22 04:32:00
[2026-06-22 04:32:00,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:32:00,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:32:00,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:32:00,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:32:00,704.704 INFO    ] time= 22/06/2026 04:32:00
[2026-06-22 04:32:00,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:32:00,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:32:00,792.792 INFO    ] No existing commands found in stream
[2026-06-22 04:32:05,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:32:05,810.810 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-22 04:32:06,467.467 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:32:06,470.470 INFO    ] Checking for system updates...
[2026-06-22 04:32:06,509.509 INFO    ] 200
[2026-06-22 04:32:06,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:32:06,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:32:06,567.567 INFO    ] No update needed
[2026-06-22 04:32:06,569.569 INFO    ] Checking for camera pi updates...
[2026-06-22 04:32:06,604.604 INFO    ] 200
[2026-06-22 04:32:06,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:32:06,651.651 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:32:06,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:32:06,728.728 INFO    ] No camera update needed
[2026-06-22 04:32:06,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:32:06,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:32:06,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:32:06,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:32:08,785.785 INFO    ] ================================================
[2026-06-22 04:32:08,800.800 INFO    ] Launching Daemon at Mon Jun 22 04:32:08 IST 2026
[2026-06-22 04:32:08,811.811 INFO    ] ================================================
[2026-06-22 04:32:09,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:32:09
[2026-06-22 04:32:09,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:32:10,219.219 INFO    ] Initializing speech engine...
[2026-06-22 04:32:10,225.225 INFO    ] 2026-06-22 04:32:10
[2026-06-22 04:32:10,441.441 INFO    ] 2026-06-22 04:32:10
[2026-06-22 04:32:10,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:32:10,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:32:10,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:32:10,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:32:10,918.918 INFO    ] time= 22/06/2026 04:32:10
[2026-06-22 04:32:10,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:32:11,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:32:11,079.079 INFO    ] No existing commands found in stream
[2026-06-22 04:32:16,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:32:16,093.093 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-22 04:32:19,667.667 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:32:19,669.669 INFO    ] Checking for system updates...
[2026-06-22 04:32:19,705.705 INFO    ] 200
[2026-06-22 04:32:19,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:32:19,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:32:19,766.766 INFO    ] No update needed
[2026-06-22 04:32:19,768.768 INFO    ] Checking for camera pi updates...
[2026-06-22 04:32:19,802.802 INFO    ] 200
[2026-06-22 04:32:19,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:32:19,847.847 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:32:20,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:32:20,038.038 INFO    ] No camera update needed
[2026-06-22 04:32:20,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:32:20,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:32:20,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:32:20,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:32:22,093.093 INFO    ] ================================================
[2026-06-22 04:32:22,109.109 INFO    ] Launching Daemon at Mon Jun 22 04:32:22 IST 2026
[2026-06-22 04:32:22,121.121 INFO    ] ================================================
[2026-06-22 04:32:22,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:32:22
[2026-06-22 04:32:23,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:32:23,713.713 INFO    ] Initializing speech engine...
[2026-06-22 04:32:23,723.723 INFO    ] 2026-06-22 04:32:23
[2026-06-22 04:32:24,001.001 INFO    ] 2026-06-22 04:32:23
[2026-06-22 04:32:24,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:32:24,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:32:24,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:32:24,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:32:24,474.474 INFO    ] time= 22/06/2026 04:32:24
[2026-06-22 04:32:24,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:32:24,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:32:24,618.618 INFO    ] No existing commands found in stream
[2026-06-22 04:32:29,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:32:29,633.633 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-22 04:32:33,219.219 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:32:33,223.223 INFO    ] Checking for system updates...
[2026-06-22 04:32:33,275.275 INFO    ] 200
[2026-06-22 04:32:33,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:32:33,349.349 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:32:33,352.352 INFO    ] No update needed
[2026-06-22 04:32:33,355.355 INFO    ] Checking for camera pi updates...
[2026-06-22 04:32:33,394.394 INFO    ] 200
[2026-06-22 04:32:33,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:32:33,444.444 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:32:33,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:32:33,540.540 INFO    ] No camera update needed
[2026-06-22 04:32:33,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:32:33,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:32:33,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:32:33,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:32:35,606.606 INFO    ] ================================================
[2026-06-22 04:32:35,622.622 INFO    ] Launching Daemon at Mon Jun 22 04:32:35 IST 2026
[2026-06-22 04:32:35,633.633 INFO    ] ================================================
[2026-06-22 04:32:36,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:32:36
[2026-06-22 04:32:36,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:32:37,037.037 INFO    ] Initializing speech engine...
[2026-06-22 04:32:37,058.058 INFO    ] 2026-06-22 04:32:37
[2026-06-22 04:32:37,320.320 INFO    ] 2026-06-22 04:32:37
[2026-06-22 04:32:37,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:32:37,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:32:37,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:32:37,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:32:37,695.695 INFO    ] time= 22/06/2026 04:32:37
[2026-06-22 04:32:37,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:32:37,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:32:37,771.771 INFO    ] No existing commands found in stream
[2026-06-22 04:32:42,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:32:42,786.786 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-22 04:32:46,104.104 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:32:46,106.106 INFO    ] Checking for system updates...
[2026-06-22 04:32:46,142.142 INFO    ] 200
[2026-06-22 04:32:46,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:32:46,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:32:46,218.218 INFO    ] No update needed
[2026-06-22 04:32:46,221.221 INFO    ] Checking for camera pi updates...
[2026-06-22 04:32:46,258.258 INFO    ] 200
[2026-06-22 04:32:46,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:32:46,305.305 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:32:46,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:32:46,389.389 INFO    ] No camera update needed
[2026-06-22 04:32:46,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:32:46,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:32:46,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:32:46,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:32:48,446.446 INFO    ] ================================================
[2026-06-22 04:32:48,462.462 INFO    ] Launching Daemon at Mon Jun 22 04:32:48 IST 2026
[2026-06-22 04:32:48,473.473 INFO    ] ================================================
[2026-06-22 04:32:49,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:32:49
[2026-06-22 04:32:49,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:32:49,817.817 INFO    ] Initializing speech engine...
[2026-06-22 04:32:49,825.825 INFO    ] 2026-06-22 04:32:49
[2026-06-22 04:32:50,077.077 INFO    ] 2026-06-22 04:32:50
[2026-06-22 04:32:50,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:32:50,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:32:50,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:32:50,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:32:50,454.454 INFO    ] time= 22/06/2026 04:32:50
[2026-06-22 04:32:50,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:32:50,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:32:50,623.623 INFO    ] No existing commands found in stream
[2026-06-22 04:32:55,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:32:55,657.657 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-22 04:32:59,140.140 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:32:59,141.141 INFO    ] Checking for system updates...
[2026-06-22 04:32:59,162.162 INFO    ] 200
[2026-06-22 04:32:59,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:32:59,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:32:59,198.198 INFO    ] No update needed
[2026-06-22 04:32:59,199.199 INFO    ] Checking for camera pi updates...
[2026-06-22 04:32:59,233.233 INFO    ] 200
[2026-06-22 04:32:59,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:32:59,278.278 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:32:59,381.381 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:32:59,384.384 INFO    ] No camera update needed
[2026-06-22 04:32:59,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:32:59,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:32:59,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:32:59,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:33:01,445.445 INFO    ] ================================================
[2026-06-22 04:33:01,461.461 INFO    ] Launching Daemon at Mon Jun 22 04:33:01 IST 2026
[2026-06-22 04:33:01,473.473 INFO    ] ================================================
[2026-06-22 04:33:02,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:33:02
[2026-06-22 04:33:03,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:33:03,399.399 INFO    ] Initializing speech engine...
[2026-06-22 04:33:03,415.415 INFO    ] 2026-06-22 04:33:03
[2026-06-22 04:33:03,684.684 INFO    ] 2026-06-22 04:33:03
[2026-06-22 04:33:03,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:33:03,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:33:03,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:33:04,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:33:04,067.067 INFO    ] time= 22/06/2026 04:33:04
[2026-06-22 04:33:04,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:33:04,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:33:04,141.141 INFO    ] No existing commands found in stream
[2026-06-22 04:33:09,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:33:09,157.157 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-22 04:33:10,078.078 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:33:10,080.080 INFO    ] Checking for system updates...
[2026-06-22 04:33:10,116.116 INFO    ] 200
[2026-06-22 04:33:10,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:33:10,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:33:10,177.177 INFO    ] No update needed
[2026-06-22 04:33:10,179.179 INFO    ] Checking for camera pi updates...
[2026-06-22 04:33:10,217.217 INFO    ] 200
[2026-06-22 04:33:10,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:33:10,266.266 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:33:10,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:33:10,350.350 INFO    ] No camera update needed
[2026-06-22 04:33:10,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:33:10,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:33:10,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:33:10,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:33:12,409.409 INFO    ] ================================================
[2026-06-22 04:33:12,425.425 INFO    ] Launching Daemon at Mon Jun 22 04:33:12 IST 2026
[2026-06-22 04:33:12,437.437 INFO    ] ================================================
[2026-06-22 04:33:13,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:33:13
[2026-06-22 04:33:13,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:33:13,842.842 INFO    ] Initializing speech engine...
[2026-06-22 04:33:13,857.857 INFO    ] 2026-06-22 04:33:13
[2026-06-22 04:33:14,123.123 INFO    ] 2026-06-22 04:33:14
[2026-06-22 04:33:14,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:33:14,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:33:14,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:33:14,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:33:14,547.547 INFO    ] time= 22/06/2026 04:33:14
[2026-06-22 04:33:14,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:33:14,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:33:14,705.705 INFO    ] No existing commands found in stream
[2026-06-22 04:33:19,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:33:19,728.728 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-22 04:33:23,337.337 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:33:23,340.340 INFO    ] Checking for system updates...
[2026-06-22 04:33:23,376.376 INFO    ] 200
[2026-06-22 04:33:23,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:33:23,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:33:23,442.442 INFO    ] No update needed
[2026-06-22 04:33:23,444.444 INFO    ] Checking for camera pi updates...
[2026-06-22 04:33:23,482.482 INFO    ] 200
[2026-06-22 04:33:23,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:33:23,527.527 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:33:23,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:33:23,615.615 INFO    ] No camera update needed
[2026-06-22 04:33:23,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:33:23,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:33:23,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:33:23,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:33:25,671.671 INFO    ] ================================================
[2026-06-22 04:33:25,687.687 INFO    ] Launching Daemon at Mon Jun 22 04:33:25 IST 2026
[2026-06-22 04:33:25,699.699 INFO    ] ================================================
[2026-06-22 04:33:26,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:33:26
[2026-06-22 04:33:26,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:33:27,254.254 INFO    ] Initializing speech engine...
[2026-06-22 04:33:27,266.266 INFO    ] 2026-06-22 04:33:27
[2026-06-22 04:33:27,549.549 INFO    ] 2026-06-22 04:33:27
[2026-06-22 04:33:27,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:33:27,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:33:27,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:33:27,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:33:27,995.995 INFO    ] time= 22/06/2026 04:33:27
[2026-06-22 04:33:28,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:33:28,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:33:28,155.155 INFO    ] No existing commands found in stream
[2026-06-22 04:33:33,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:33:33,173.173 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-22 04:33:35,278.278 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:33:35,281.281 INFO    ] Checking for system updates...
[2026-06-22 04:33:35,321.321 INFO    ] 200
[2026-06-22 04:33:35,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:33:35,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:33:35,387.387 INFO    ] No update needed
[2026-06-22 04:33:35,390.390 INFO    ] Checking for camera pi updates...
[2026-06-22 04:33:35,428.428 INFO    ] 200
[2026-06-22 04:33:35,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:33:35,478.478 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:33:35,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:33:35,563.563 INFO    ] No camera update needed
[2026-06-22 04:33:35,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:33:35,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:33:35,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:33:35,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:33:37,626.626 INFO    ] ================================================
[2026-06-22 04:33:37,642.642 INFO    ] Launching Daemon at Mon Jun 22 04:33:37 IST 2026
[2026-06-22 04:33:37,653.653 INFO    ] ================================================
[2026-06-22 04:33:38,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:33:38
[2026-06-22 04:33:38,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:33:39,231.231 INFO    ] Initializing speech engine...
[2026-06-22 04:33:39,235.235 INFO    ] 2026-06-22 04:33:39
[2026-06-22 04:33:39,487.487 INFO    ] 2026-06-22 04:33:39
[2026-06-22 04:33:39,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:33:39,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:33:39,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:33:39,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:33:39,975.975 INFO    ] time= 22/06/2026 04:33:39
[2026-06-22 04:33:40,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:33:40,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:33:40,220.220 INFO    ] No existing commands found in stream
[2026-06-22 04:33:45,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:33:45,255.255 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-22 04:33:45,676.676 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:33:45,678.678 INFO    ] Checking for system updates...
[2026-06-22 04:33:45,699.699 INFO    ] 200
[2026-06-22 04:33:45,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:33:45,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:33:45,745.745 INFO    ] No update needed
[2026-06-22 04:33:45,748.748 INFO    ] Checking for camera pi updates...
[2026-06-22 04:33:45,784.784 INFO    ] 200
[2026-06-22 04:33:45,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:33:45,830.830 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:33:45,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:33:45,909.909 INFO    ] No camera update needed
[2026-06-22 04:33:45,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:33:45,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:33:45,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:33:45,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:33:47,970.970 INFO    ] ================================================
[2026-06-22 04:33:47,986.986 INFO    ] Launching Daemon at Mon Jun 22 04:33:47 IST 2026
[2026-06-22 04:33:48,998.998 INFO    ] ================================================
[2026-06-22 04:33:48,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:33:48
[2026-06-22 04:33:49,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:33:49,382.382 INFO    ] Initializing speech engine...
[2026-06-22 04:33:49,388.388 INFO    ] 2026-06-22 04:33:49
[2026-06-22 04:33:49,666.666 INFO    ] 2026-06-22 04:33:49
[2026-06-22 04:33:49,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:33:49,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:33:49,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:33:50,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:33:50,092.092 INFO    ] time= 22/06/2026 04:33:50
[2026-06-22 04:33:50,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:33:50,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:33:50,259.259 INFO    ] No existing commands found in stream
[2026-06-22 04:33:55,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:33:55,269.269 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-22 04:33:57,181.181 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:33:57,184.184 INFO    ] Checking for system updates...
[2026-06-22 04:33:57,224.224 INFO    ] 200
[2026-06-22 04:33:57,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:33:57,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:33:57,291.291 INFO    ] No update needed
[2026-06-22 04:33:57,293.293 INFO    ] Checking for camera pi updates...
[2026-06-22 04:33:57,327.327 INFO    ] 200
[2026-06-22 04:33:57,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:33:57,375.375 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:33:57,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:33:57,461.461 INFO    ] No camera update needed
[2026-06-22 04:33:57,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:33:57,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:33:57,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:33:57,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:33:59,518.518 INFO    ] ================================================
[2026-06-22 04:33:59,534.534 INFO    ] Launching Daemon at Mon Jun 22 04:33:59 IST 2026
[2026-06-22 04:33:59,545.545 INFO    ] ================================================
[2026-06-22 04:34:00,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:34:00
[2026-06-22 04:34:00,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:34:01,093.093 INFO    ] Initializing speech engine...
[2026-06-22 04:34:01,105.105 INFO    ] 2026-06-22 04:34:01
[2026-06-22 04:34:01,380.380 INFO    ] 2026-06-22 04:34:01
[2026-06-22 04:34:01,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:34:01,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:34:01,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:34:01,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:34:01,839.839 INFO    ] time= 22/06/2026 04:34:01
[2026-06-22 04:34:01,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:34:01,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:34:01,926.926 INFO    ] No existing commands found in stream
[2026-06-22 04:34:06,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:34:06,939.939 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-22 04:34:10,673.673 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:34:10,674.674 INFO    ] Checking for system updates...
[2026-06-22 04:34:10,695.695 INFO    ] 200
[2026-06-22 04:34:10,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:34:10,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:34:10,728.728 INFO    ] No update needed
[2026-06-22 04:34:10,729.729 INFO    ] Checking for camera pi updates...
[2026-06-22 04:34:10,754.754 INFO    ] 200
[2026-06-22 04:34:10,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:34:10,797.797 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:34:10,882.882 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:34:10,885.885 INFO    ] No camera update needed
[2026-06-22 04:34:10,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:34:10,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:34:10,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:34:10,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:34:12,943.943 INFO    ] ================================================
[2026-06-22 04:34:12,959.959 INFO    ] Launching Daemon at Mon Jun 22 04:34:12 IST 2026
[2026-06-22 04:34:12,970.970 INFO    ] ================================================
[2026-06-22 04:34:13,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:34:13
[2026-06-22 04:34:14,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:34:14,351.351 INFO    ] Initializing speech engine...
[2026-06-22 04:34:14,362.362 INFO    ] 2026-06-22 04:34:14
[2026-06-22 04:34:14,626.626 INFO    ] 2026-06-22 04:34:14
[2026-06-22 04:34:14,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:34:14,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:34:14,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:34:14,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:34:14,988.988 INFO    ] time= 22/06/2026 04:34:14
[2026-06-22 04:34:15,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:34:15,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:34:15,110.110 INFO    ] No existing commands found in stream
[2026-06-22 04:34:20,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:34:20,128.128 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-22 04:34:21,083.083 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:34:21,086.086 INFO    ] Checking for system updates...
[2026-06-22 04:34:21,123.123 INFO    ] 200
[2026-06-22 04:34:21,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:34:21,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:34:21,189.189 INFO    ] No update needed
[2026-06-22 04:34:21,191.191 INFO    ] Checking for camera pi updates...
[2026-06-22 04:34:21,225.225 INFO    ] 200
[2026-06-22 04:34:21,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:34:21,269.269 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:34:21,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:34:21,377.377 INFO    ] No camera update needed
[2026-06-22 04:34:21,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:34:21,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:34:21,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:34:21,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:34:23,433.433 INFO    ] ================================================
[2026-06-22 04:34:23,448.448 INFO    ] Launching Daemon at Mon Jun 22 04:34:23 IST 2026
[2026-06-22 04:34:23,459.459 INFO    ] ================================================
[2026-06-22 04:34:24,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:34:24
[2026-06-22 04:34:24,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:34:24,813.813 INFO    ] Initializing speech engine...
[2026-06-22 04:34:24,836.836 INFO    ] 2026-06-22 04:34:24
[2026-06-22 04:34:25,092.092 INFO    ] 2026-06-22 04:34:25
[2026-06-22 04:34:25,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:34:25,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:34:25,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:34:25,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:34:25,531.531 INFO    ] time= 22/06/2026 04:34:25
[2026-06-22 04:34:25,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:34:25,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:34:25,712.712 INFO    ] No existing commands found in stream
[2026-06-22 04:34:30,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:34:30,727.727 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-22 04:34:31,257.257 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:34:31,258.258 INFO    ] Checking for system updates...
[2026-06-22 04:34:31,280.280 INFO    ] 200
[2026-06-22 04:34:31,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:34:31,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:34:31,313.313 INFO    ] No update needed
[2026-06-22 04:34:31,315.315 INFO    ] Checking for camera pi updates...
[2026-06-22 04:34:31,346.346 INFO    ] 200
[2026-06-22 04:34:31,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:34:31,390.390 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:34:31,569.569 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:34:31,572.572 INFO    ] No camera update needed
[2026-06-22 04:34:31,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:34:31,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:34:31,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:34:31,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:34:33,630.630 INFO    ] ================================================
[2026-06-22 04:34:33,646.646 INFO    ] Launching Daemon at Mon Jun 22 04:34:33 IST 2026
[2026-06-22 04:34:33,657.657 INFO    ] ================================================
[2026-06-22 04:34:34,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:34:34
[2026-06-22 04:34:34,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:34:35,306.306 INFO    ] Initializing speech engine...
[2026-06-22 04:34:35,319.319 INFO    ] 2026-06-22 04:34:35
[2026-06-22 04:34:35,632.632 INFO    ] 2026-06-22 04:34:35
[2026-06-22 04:34:35,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:34:35,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:34:35,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:34:36,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:34:36,057.057 INFO    ] time= 22/06/2026 04:34:36
[2026-06-22 04:34:36,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:34:36,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:34:36,206.206 INFO    ] No existing commands found in stream
[2026-06-22 04:34:41,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:34:41,249.249 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-22 04:34:42,132.132 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:34:42,134.134 INFO    ] Checking for system updates...
[2026-06-22 04:34:42,155.155 INFO    ] 200
[2026-06-22 04:34:42,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:34:42,188.188 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:34:42,190.190 INFO    ] No update needed
[2026-06-22 04:34:42,191.191 INFO    ] Checking for camera pi updates...
[2026-06-22 04:34:42,211.211 INFO    ] 200
[2026-06-22 04:34:42,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:34:42,248.248 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:34:42,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:34:42,332.332 INFO    ] No camera update needed
[2026-06-22 04:34:42,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:34:42,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:34:42,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:34:42,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:34:44,392.392 INFO    ] ================================================
[2026-06-22 04:34:44,407.407 INFO    ] Launching Daemon at Mon Jun 22 04:34:44 IST 2026
[2026-06-22 04:34:44,418.418 INFO    ] ================================================
[2026-06-22 04:34:45,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:34:44
[2026-06-22 04:34:45,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:34:45,759.759 INFO    ] Initializing speech engine...
[2026-06-22 04:34:45,766.766 INFO    ] 2026-06-22 04:34:45
[2026-06-22 04:34:46,067.067 INFO    ] 2026-06-22 04:34:46
[2026-06-22 04:34:46,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:34:47,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:34:47,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:34:47,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:34:47,462.462 INFO    ] time= 22/06/2026 04:34:47
[2026-06-22 04:34:47,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:34:47,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:34:47,585.585 INFO    ] No existing commands found in stream
[2026-06-22 04:34:52,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:34:52,624.624 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-22 04:34:56,019.019 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:34:56,022.022 INFO    ] Checking for system updates...
[2026-06-22 04:34:56,059.059 INFO    ] 200
[2026-06-22 04:34:56,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:34:56,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:34:56,118.118 INFO    ] No update needed
[2026-06-22 04:34:56,120.120 INFO    ] Checking for camera pi updates...
[2026-06-22 04:34:56,159.159 INFO    ] 200
[2026-06-22 04:34:56,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:34:56,202.202 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:34:56,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:34:56,258.258 INFO    ] No camera update needed
[2026-06-22 04:34:56,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:34:56,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:34:56,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:34:56,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:34:58,315.315 INFO    ] ================================================
[2026-06-22 04:34:58,330.330 INFO    ] Launching Daemon at Mon Jun 22 04:34:58 IST 2026
[2026-06-22 04:34:58,341.341 INFO    ] ================================================
[2026-06-22 04:34:58,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:34:58
[2026-06-22 04:34:59,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:34:59,726.726 INFO    ] Initializing speech engine...
[2026-06-22 04:34:59,737.737 INFO    ] 2026-06-22 04:34:59
[2026-06-22 04:35:00,011.011 INFO    ] 2026-06-22 04:34:59
[2026-06-22 04:35:00,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:35:00,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:35:00,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:35:00,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:35:00,507.507 INFO    ] time= 22/06/2026 04:35:00
[2026-06-22 04:35:00,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:35:00,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:35:00,673.673 INFO    ] No existing commands found in stream
[2026-06-22 04:35:05,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:35:05,709.709 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-22 04:35:06,149.149 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:35:06,152.152 INFO    ] Checking for system updates...
[2026-06-22 04:35:06,190.190 INFO    ] 200
[2026-06-22 04:35:06,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:35:06,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:35:06,259.259 INFO    ] No update needed
[2026-06-22 04:35:06,262.262 INFO    ] Checking for camera pi updates...
[2026-06-22 04:35:06,297.297 INFO    ] 200
[2026-06-22 04:35:06,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:35:06,343.343 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:35:06,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:35:06,429.429 INFO    ] No camera update needed
[2026-06-22 04:35:06,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:35:06,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:35:06,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:35:06,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:35:08,489.489 INFO    ] ================================================
[2026-06-22 04:35:08,505.505 INFO    ] Launching Daemon at Mon Jun 22 04:35:08 IST 2026
[2026-06-22 04:35:08,516.516 INFO    ] ================================================
[2026-06-22 04:35:09,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:35:09
[2026-06-22 04:35:09,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:35:10,146.146 INFO    ] Initializing speech engine...
[2026-06-22 04:35:10,153.153 INFO    ] 2026-06-22 04:35:10
[2026-06-22 04:35:10,431.431 INFO    ] 2026-06-22 04:35:10
[2026-06-22 04:35:10,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:35:10,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:35:10,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:35:10,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:35:10,942.942 INFO    ] time= 22/06/2026 04:35:10
[2026-06-22 04:35:10,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:35:11,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:35:11,087.087 INFO    ] No existing commands found in stream
[2026-06-22 04:35:16,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:35:16,130.130 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-22 04:35:17,560.560 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:35:17,563.563 INFO    ] Checking for system updates...
[2026-06-22 04:35:17,600.600 INFO    ] 200
[2026-06-22 04:35:17,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:35:17,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:35:17,667.667 INFO    ] No update needed
[2026-06-22 04:35:17,671.671 INFO    ] Checking for camera pi updates...
[2026-06-22 04:35:17,710.710 INFO    ] 200
[2026-06-22 04:35:17,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:35:17,755.755 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:35:17,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:35:17,850.850 INFO    ] No camera update needed
[2026-06-22 04:35:17,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:35:17,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:35:17,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:35:17,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:35:19,909.909 INFO    ] ================================================
[2026-06-22 04:35:19,925.925 INFO    ] Launching Daemon at Mon Jun 22 04:35:19 IST 2026
[2026-06-22 04:35:19,935.935 INFO    ] ================================================
[2026-06-22 04:35:20,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:35:20
[2026-06-22 04:35:21,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:35:21,298.298 INFO    ] Initializing speech engine...
[2026-06-22 04:35:21,309.309 INFO    ] 2026-06-22 04:35:21
[2026-06-22 04:35:21,573.573 INFO    ] 2026-06-22 04:35:21
[2026-06-22 04:35:21,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:35:21,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:35:21,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:35:22,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:35:22,049.049 INFO    ] time= 22/06/2026 04:35:22
[2026-06-22 04:35:22,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:35:22,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:35:22,229.229 INFO    ] No existing commands found in stream
[2026-06-22 04:35:27,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:35:27,247.247 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-22 04:35:28,824.824 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:35:28,827.827 INFO    ] Checking for system updates...
[2026-06-22 04:35:28,864.864 INFO    ] 200
[2026-06-22 04:35:28,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:35:28,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:35:28,930.930 INFO    ] No update needed
[2026-06-22 04:35:28,933.933 INFO    ] Checking for camera pi updates...
[2026-06-22 04:35:28,967.967 INFO    ] 200
[2026-06-22 04:35:28,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:35:29,010.010 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:35:29,114.114 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:35:29,117.117 INFO    ] No camera update needed
[2026-06-22 04:35:29,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:35:29,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:35:29,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:35:29,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:35:31,177.177 INFO    ] ================================================
[2026-06-22 04:35:31,193.193 INFO    ] Launching Daemon at Mon Jun 22 04:35:31 IST 2026
[2026-06-22 04:35:31,204.204 INFO    ] ================================================
[2026-06-22 04:35:31,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:35:31
[2026-06-22 04:35:32,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:35:32,578.578 INFO    ] Initializing speech engine...
[2026-06-22 04:35:32,603.603 INFO    ] 2026-06-22 04:35:32
[2026-06-22 04:35:32,889.889 INFO    ] 2026-06-22 04:35:32
[2026-06-22 04:35:32,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:35:33,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:35:33,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:35:33,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:35:33,375.375 INFO    ] time= 22/06/2026 04:35:33
[2026-06-22 04:35:33,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:35:33,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:35:33,553.553 INFO    ] No existing commands found in stream
[2026-06-22 04:35:38,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:35:38,568.568 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-22 04:35:40,387.387 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:35:40,388.388 INFO    ] Checking for system updates...
[2026-06-22 04:35:40,409.409 INFO    ] 200
[2026-06-22 04:35:40,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:35:40,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:35:40,442.442 INFO    ] No update needed
[2026-06-22 04:35:40,445.445 INFO    ] Checking for camera pi updates...
[2026-06-22 04:35:40,480.480 INFO    ] 200
[2026-06-22 04:35:40,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:35:40,523.523 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:35:40,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:35:40,608.608 INFO    ] No camera update needed
[2026-06-22 04:35:40,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:35:40,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:35:40,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:35:40,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:35:42,669.669 INFO    ] ================================================
[2026-06-22 04:35:42,685.685 INFO    ] Launching Daemon at Mon Jun 22 04:35:42 IST 2026
[2026-06-22 04:35:42,696.696 INFO    ] ================================================
[2026-06-22 04:35:43,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:35:43
[2026-06-22 04:35:43,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:35:44,169.169 INFO    ] Initializing speech engine...
[2026-06-22 04:35:44,174.174 INFO    ] 2026-06-22 04:35:44
[2026-06-22 04:35:44,436.436 INFO    ] 2026-06-22 04:35:44
[2026-06-22 04:35:44,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:35:44,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:35:44,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:35:44,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:35:44,926.926 INFO    ] time= 22/06/2026 04:35:44
[2026-06-22 04:35:44,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:35:45,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:35:45,072.072 INFO    ] No existing commands found in stream
[2026-06-22 04:35:50,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:35:50,089.089 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-22 04:35:52,848.848 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:35:52,849.849 INFO    ] Checking for system updates...
[2026-06-22 04:35:52,870.870 INFO    ] 200
[2026-06-22 04:35:52,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:35:52,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:35:52,918.918 INFO    ] No update needed
[2026-06-22 04:35:52,919.919 INFO    ] Checking for camera pi updates...
[2026-06-22 04:35:52,959.959 INFO    ] 200
[2026-06-22 04:35:52,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:35:53,009.009 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:35:53,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:35:53,074.074 INFO    ] No camera update needed
[2026-06-22 04:35:53,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:35:53,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:35:53,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:35:53,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:35:55,132.132 INFO    ] ================================================
[2026-06-22 04:35:55,148.148 INFO    ] Launching Daemon at Mon Jun 22 04:35:55 IST 2026
[2026-06-22 04:35:55,160.160 INFO    ] ================================================
[2026-06-22 04:35:55,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:35:55
[2026-06-22 04:35:56,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:35:56,624.624 INFO    ] Initializing speech engine...
[2026-06-22 04:35:56,630.630 INFO    ] 2026-06-22 04:35:56
[2026-06-22 04:35:56,933.933 INFO    ] 2026-06-22 04:35:56
[2026-06-22 04:35:56,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:35:57,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:35:57,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:35:57,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:35:57,276.276 INFO    ] time= 22/06/2026 04:35:57
[2026-06-22 04:35:57,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:35:57,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:35:57,352.352 INFO    ] No existing commands found in stream
[2026-06-22 04:36:02,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:36:02,375.375 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-22 04:36:03,061.061 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:36:03,064.064 INFO    ] Checking for system updates...
[2026-06-22 04:36:03,105.105 INFO    ] 200
[2026-06-22 04:36:03,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:36:03,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:36:03,181.181 INFO    ] No update needed
[2026-06-22 04:36:03,184.184 INFO    ] Checking for camera pi updates...
[2026-06-22 04:36:03,227.227 INFO    ] 200
[2026-06-22 04:36:03,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:36:03,282.282 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:36:03,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:36:03,440.440 INFO    ] No camera update needed
[2026-06-22 04:36:03,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:36:03,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:36:03,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:36:03,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:36:05,511.511 INFO    ] ================================================
[2026-06-22 04:36:05,527.527 INFO    ] Launching Daemon at Mon Jun 22 04:36:05 IST 2026
[2026-06-22 04:36:05,538.538 INFO    ] ================================================
[2026-06-22 04:36:06,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:36:06
[2026-06-22 04:36:06,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:36:06,873.873 INFO    ] Initializing speech engine...
[2026-06-22 04:36:06,889.889 INFO    ] 2026-06-22 04:36:06
[2026-06-22 04:36:07,178.178 INFO    ] 2026-06-22 04:36:07
[2026-06-22 04:36:07,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:36:07,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:36:07,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:36:07,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:36:07,543.543 INFO    ] time= 22/06/2026 04:36:07
[2026-06-22 04:36:07,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:36:07,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:36:07,645.645 INFO    ] No existing commands found in stream
[2026-06-22 04:36:12,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:36:12,660.660 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-22 04:36:14,642.642 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:36:14,644.644 INFO    ] Checking for system updates...
[2026-06-22 04:36:14,681.681 INFO    ] 200
[2026-06-22 04:36:14,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:36:14,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:36:14,745.745 INFO    ] No update needed
[2026-06-22 04:36:14,748.748 INFO    ] Checking for camera pi updates...
[2026-06-22 04:36:14,786.786 INFO    ] 200
[2026-06-22 04:36:14,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:36:14,835.835 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:36:14,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:36:14,892.892 INFO    ] No camera update needed
[2026-06-22 04:36:14,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:36:14,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:36:14,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:36:14,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:36:16,947.947 INFO    ] ================================================
[2026-06-22 04:36:16,963.963 INFO    ] Launching Daemon at Mon Jun 22 04:36:16 IST 2026
[2026-06-22 04:36:16,974.974 INFO    ] ================================================
[2026-06-22 04:36:17,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:36:17
[2026-06-22 04:36:18,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:36:18,627.627 INFO    ] Initializing speech engine...
[2026-06-22 04:36:18,633.633 INFO    ] 2026-06-22 04:36:18
[2026-06-22 04:36:18,912.912 INFO    ] 2026-06-22 04:36:18
[2026-06-22 04:36:18,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:36:19,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:36:19,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:36:19,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:36:19,255.255 INFO    ] time= 22/06/2026 04:36:19
[2026-06-22 04:36:19,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:36:19,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:36:19,368.368 INFO    ] No existing commands found in stream
[2026-06-22 04:36:24,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:36:24,383.383 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-22 04:36:27,069.069 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:36:27,071.071 INFO    ] Checking for system updates...
[2026-06-22 04:36:27,112.112 INFO    ] 200
[2026-06-22 04:36:27,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:36:27,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:36:27,170.170 INFO    ] No update needed
[2026-06-22 04:36:27,173.173 INFO    ] Checking for camera pi updates...
[2026-06-22 04:36:27,230.230 INFO    ] 200
[2026-06-22 04:36:27,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:36:27,274.274 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:36:27,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:36:27,354.354 INFO    ] No camera update needed
[2026-06-22 04:36:27,357.357 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:36:27,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:36:27,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:36:27,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:36:29,412.412 INFO    ] ================================================
[2026-06-22 04:36:29,428.428 INFO    ] Launching Daemon at Mon Jun 22 04:36:29 IST 2026
[2026-06-22 04:36:29,439.439 INFO    ] ================================================
[2026-06-22 04:36:30,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:36:30
[2026-06-22 04:36:30,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:36:30,900.900 INFO    ] Initializing speech engine...
[2026-06-22 04:36:30,907.907 INFO    ] 2026-06-22 04:36:30
[2026-06-22 04:36:31,151.151 INFO    ] 2026-06-22 04:36:31
[2026-06-22 04:36:31,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:36:31,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:36:31,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:36:31,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:36:31,586.586 INFO    ] time= 22/06/2026 04:36:31
[2026-06-22 04:36:31,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:36:31,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:36:31,765.765 INFO    ] No existing commands found in stream
[2026-06-22 04:36:36,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:36:36,780.780 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-22 04:36:41,084.084 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:36:41,087.087 INFO    ] Checking for system updates...
[2026-06-22 04:36:41,127.127 INFO    ] 200
[2026-06-22 04:36:41,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:36:41,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:36:41,188.188 INFO    ] No update needed
[2026-06-22 04:36:41,190.190 INFO    ] Checking for camera pi updates...
[2026-06-22 04:36:41,236.236 INFO    ] 200
[2026-06-22 04:36:41,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:36:41,287.287 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:36:41,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:36:41,474.474 INFO    ] No camera update needed
[2026-06-22 04:36:41,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:36:41,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:36:41,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:36:41,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:36:43,535.535 INFO    ] ================================================
[2026-06-22 04:36:43,551.551 INFO    ] Launching Daemon at Mon Jun 22 04:36:43 IST 2026
[2026-06-22 04:36:43,562.562 INFO    ] ================================================
[2026-06-22 04:36:44,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:36:44
[2026-06-22 04:36:44,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:36:44,896.896 INFO    ] Initializing speech engine...
[2026-06-22 04:36:44,905.905 INFO    ] 2026-06-22 04:36:44
[2026-06-22 04:36:45,150.150 INFO    ] 2026-06-22 04:36:45
[2026-06-22 04:36:45,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:36:45,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:36:45,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:36:45,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:36:45,617.617 INFO    ] time= 22/06/2026 04:36:45
[2026-06-22 04:36:45,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:36:45,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:36:45,769.769 INFO    ] No existing commands found in stream
[2026-06-22 04:36:50,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:36:50,784.784 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-22 04:36:54,119.119 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:36:54,122.122 INFO    ] Checking for system updates...
[2026-06-22 04:36:54,161.161 INFO    ] 200
[2026-06-22 04:36:54,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:36:54,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:36:54,225.225 INFO    ] No update needed
[2026-06-22 04:36:54,227.227 INFO    ] Checking for camera pi updates...
[2026-06-22 04:36:54,264.264 INFO    ] 200
[2026-06-22 04:36:54,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:36:54,308.308 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:36:54,418.418 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:36:54,420.420 INFO    ] No camera update needed
[2026-06-22 04:36:54,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:36:54,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:36:54,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:36:54,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:36:56,475.475 INFO    ] ================================================
[2026-06-22 04:36:56,491.491 INFO    ] Launching Daemon at Mon Jun 22 04:36:56 IST 2026
[2026-06-22 04:36:56,502.502 INFO    ] ================================================
[2026-06-22 04:36:57,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:36:57
[2026-06-22 04:36:57,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:36:57,997.997 INFO    ] Initializing speech engine...
[2026-06-22 04:36:58,011.011 INFO    ] 2026-06-22 04:36:57
[2026-06-22 04:36:58,297.297 INFO    ] 2026-06-22 04:36:58
[2026-06-22 04:36:58,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:36:58,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:36:58,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:36:58,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:36:58,830.830 INFO    ] time= 22/06/2026 04:36:58
[2026-06-22 04:36:58,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:36:58,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:36:58,979.979 INFO    ] No existing commands found in stream
[2026-06-22 04:37:04,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:37:04,005.005 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-22 04:37:07,132.132 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:37:07,133.133 INFO    ] Checking for system updates...
[2026-06-22 04:37:07,155.155 INFO    ] 200
[2026-06-22 04:37:07,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:37:07,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:37:07,188.188 INFO    ] No update needed
[2026-06-22 04:37:07,190.190 INFO    ] Checking for camera pi updates...
[2026-06-22 04:37:07,217.217 INFO    ] 200
[2026-06-22 04:37:07,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:37:07,263.263 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:37:07,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:37:07,359.359 INFO    ] No camera update needed
[2026-06-22 04:37:07,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:37:07,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:37:07,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:37:07,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:37:09,416.416 INFO    ] ================================================
[2026-06-22 04:37:09,432.432 INFO    ] Launching Daemon at Mon Jun 22 04:37:09 IST 2026
[2026-06-22 04:37:09,443.443 INFO    ] ================================================
[2026-06-22 04:37:10,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:37:10
[2026-06-22 04:37:10,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:37:10,750.750 INFO    ] Initializing speech engine...
[2026-06-22 04:37:10,758.758 INFO    ] 2026-06-22 04:37:10
[2026-06-22 04:37:11,028.028 INFO    ] 2026-06-22 04:37:11
[2026-06-22 04:37:11,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:37:11,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:37:11,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:37:11,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:37:11,398.398 INFO    ] time= 22/06/2026 04:37:11
[2026-06-22 04:37:11,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:37:11,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:37:11,474.474 INFO    ] No existing commands found in stream
[2026-06-22 04:37:16,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:37:16,489.489 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-22 04:37:18,920.920 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:37:18,923.923 INFO    ] Checking for system updates...
[2026-06-22 04:37:18,983.983 INFO    ] 200
[2026-06-22 04:37:18,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:37:19,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:37:19,079.079 INFO    ] No update needed
[2026-06-22 04:37:19,081.081 INFO    ] Checking for camera pi updates...
[2026-06-22 04:37:19,117.117 INFO    ] 200
[2026-06-22 04:37:19,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:37:19,166.166 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:37:19,255.255 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:37:19,258.258 INFO    ] No camera update needed
[2026-06-22 04:37:19,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:37:19,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:37:19,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:37:19,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:37:21,321.321 INFO    ] ================================================
[2026-06-22 04:37:21,337.337 INFO    ] Launching Daemon at Mon Jun 22 04:37:21 IST 2026
[2026-06-22 04:37:21,349.349 INFO    ] ================================================
[2026-06-22 04:37:21,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:37:21
[2026-06-22 04:37:22,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:37:22,751.751 INFO    ] Initializing speech engine...
[2026-06-22 04:37:22,773.773 INFO    ] 2026-06-22 04:37:22
[2026-06-22 04:37:23,029.029 INFO    ] 2026-06-22 04:37:23
[2026-06-22 04:37:23,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:37:23,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:37:23,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:37:23,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:37:23,403.403 INFO    ] time= 22/06/2026 04:37:23
[2026-06-22 04:37:23,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:37:23,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:37:23,484.484 INFO    ] No existing commands found in stream
[2026-06-22 04:37:28,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:37:28,500.500 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-22 04:37:28,883.883 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:37:28,884.884 INFO    ] Checking for system updates...
[2026-06-22 04:37:28,908.908 INFO    ] 200
[2026-06-22 04:37:28,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:37:28,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:37:28,972.972 INFO    ] No update needed
[2026-06-22 04:37:28,974.974 INFO    ] Checking for camera pi updates...
[2026-06-22 04:37:29,008.008 INFO    ] 200
[2026-06-22 04:37:29,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:37:29,054.054 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:37:29,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:37:29,137.137 INFO    ] No camera update needed
[2026-06-22 04:37:29,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:37:29,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:37:29,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:37:29,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:37:31,193.193 INFO    ] ================================================
[2026-06-22 04:37:31,209.209 INFO    ] Launching Daemon at Mon Jun 22 04:37:31 IST 2026
[2026-06-22 04:37:31,220.220 INFO    ] ================================================
[2026-06-22 04:37:31,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:37:31
[2026-06-22 04:37:32,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:37:32,736.736 INFO    ] Initializing speech engine...
[2026-06-22 04:37:32,753.753 INFO    ] 2026-06-22 04:37:32
[2026-06-22 04:37:33,053.053 INFO    ] 2026-06-22 04:37:33
[2026-06-22 04:37:33,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:37:33,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:37:33,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:37:33,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:37:33,421.421 INFO    ] time= 22/06/2026 04:37:33
[2026-06-22 04:37:33,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:37:33,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:37:33,497.497 INFO    ] No existing commands found in stream
[2026-06-22 04:37:38,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:37:38,512.512 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-22 04:37:41,396.396 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:37:41,398.398 INFO    ] Checking for system updates...
[2026-06-22 04:37:41,435.435 INFO    ] 200
[2026-06-22 04:37:41,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:37:41,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:37:41,498.498 INFO    ] No update needed
[2026-06-22 04:37:41,500.500 INFO    ] Checking for camera pi updates...
[2026-06-22 04:37:41,534.534 INFO    ] 200
[2026-06-22 04:37:41,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:37:41,577.577 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:37:41,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:37:41,647.647 INFO    ] No camera update needed
[2026-06-22 04:37:41,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:37:41,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:37:41,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:37:41,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:37:43,702.702 INFO    ] ================================================
[2026-06-22 04:37:43,718.718 INFO    ] Launching Daemon at Mon Jun 22 04:37:43 IST 2026
[2026-06-22 04:37:43,729.729 INFO    ] ================================================
[2026-06-22 04:37:44,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:37:44
[2026-06-22 04:37:44,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:37:45,078.078 INFO    ] Initializing speech engine...
[2026-06-22 04:37:45,092.092 INFO    ] 2026-06-22 04:37:45
[2026-06-22 04:37:45,348.348 INFO    ] 2026-06-22 04:37:45
[2026-06-22 04:37:45,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:37:45,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:37:45,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:37:45,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:37:45,727.727 INFO    ] time= 22/06/2026 04:37:45
[2026-06-22 04:37:45,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:37:45,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:37:45,874.874 INFO    ] No existing commands found in stream
[2026-06-22 04:37:50,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:37:50,907.907 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-22 04:37:53,014.014 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:37:53,017.017 INFO    ] Checking for system updates...
[2026-06-22 04:37:53,054.054 INFO    ] 200
[2026-06-22 04:37:53,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:37:53,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:37:53,112.112 INFO    ] No update needed
[2026-06-22 04:37:53,114.114 INFO    ] Checking for camera pi updates...
[2026-06-22 04:37:53,151.151 INFO    ] 200
[2026-06-22 04:37:53,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:37:53,195.195 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:37:53,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:37:53,278.278 INFO    ] No camera update needed
[2026-06-22 04:37:53,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:37:53,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:37:53,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:37:53,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:37:55,335.335 INFO    ] ================================================
[2026-06-22 04:37:55,351.351 INFO    ] Launching Daemon at Mon Jun 22 04:37:55 IST 2026
[2026-06-22 04:37:55,362.362 INFO    ] ================================================
[2026-06-22 04:37:55,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:37:55
[2026-06-22 04:37:56,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:37:56,694.694 INFO    ] Initializing speech engine...
[2026-06-22 04:37:56,703.703 INFO    ] 2026-06-22 04:37:56
[2026-06-22 04:37:56,997.997 INFO    ] 2026-06-22 04:37:56
[2026-06-22 04:37:57,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:37:57,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:37:57,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:37:57,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:37:57,376.376 INFO    ] time= 22/06/2026 04:37:57
[2026-06-22 04:37:57,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:37:57,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:37:57,501.501 INFO    ] No existing commands found in stream
[2026-06-22 04:38:02,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:38:02,514.514 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-22 04:38:03,459.459 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:38:03,463.463 INFO    ] Checking for system updates...
[2026-06-22 04:38:03,504.504 INFO    ] 200
[2026-06-22 04:38:03,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:38:03,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:38:03,577.577 INFO    ] No update needed
[2026-06-22 04:38:03,579.579 INFO    ] Checking for camera pi updates...
[2026-06-22 04:38:03,617.617 INFO    ] 200
[2026-06-22 04:38:03,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:38:03,663.663 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:38:03,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:38:03,773.773 INFO    ] No camera update needed
[2026-06-22 04:38:03,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:38:03,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:38:03,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:38:03,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:38:05,833.833 INFO    ] ================================================
[2026-06-22 04:38:05,848.848 INFO    ] Launching Daemon at Mon Jun 22 04:38:05 IST 2026
[2026-06-22 04:38:05,861.861 INFO    ] ================================================
[2026-06-22 04:38:06,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:38:06
[2026-06-22 04:38:06,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:38:07,240.240 INFO    ] Initializing speech engine...
[2026-06-22 04:38:07,245.245 INFO    ] 2026-06-22 04:38:07
[2026-06-22 04:38:07,492.492 INFO    ] 2026-06-22 04:38:07
[2026-06-22 04:38:07,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:38:07,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:38:07,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:38:07,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:38:07,961.961 INFO    ] time= 22/06/2026 04:38:07
[2026-06-22 04:38:08,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:38:08,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:38:08,109.109 INFO    ] No existing commands found in stream
[2026-06-22 04:38:13,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:38:13,123.123 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-22 04:38:15,194.194 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:38:15,197.197 INFO    ] Checking for system updates...
[2026-06-22 04:38:15,237.237 INFO    ] 200
[2026-06-22 04:38:15,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:38:15,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:38:15,298.298 INFO    ] No update needed
[2026-06-22 04:38:15,300.300 INFO    ] Checking for camera pi updates...
[2026-06-22 04:38:15,335.335 INFO    ] 200
[2026-06-22 04:38:15,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:38:15,386.386 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:38:15,466.466 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:38:15,469.469 INFO    ] No camera update needed
[2026-06-22 04:38:15,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:38:15,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:38:15,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:38:15,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:38:17,531.531 INFO    ] ================================================
[2026-06-22 04:38:17,547.547 INFO    ] Launching Daemon at Mon Jun 22 04:38:17 IST 2026
[2026-06-22 04:38:17,558.558 INFO    ] ================================================
[2026-06-22 04:38:18,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:38:18
[2026-06-22 04:38:18,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:38:18,942.942 INFO    ] Initializing speech engine...
[2026-06-22 04:38:18,951.951 INFO    ] 2026-06-22 04:38:18
[2026-06-22 04:38:19,217.217 INFO    ] 2026-06-22 04:38:19
[2026-06-22 04:38:19,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:38:19,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:38:19,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:38:19,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:38:19,678.678 INFO    ] time= 22/06/2026 04:38:19
[2026-06-22 04:38:19,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:38:19,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:38:19,830.830 INFO    ] No existing commands found in stream
[2026-06-22 04:38:24,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:38:24,845.845 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-22 04:38:26,220.220 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:38:26,222.222 INFO    ] Checking for system updates...
[2026-06-22 04:38:26,276.276 INFO    ] 200
[2026-06-22 04:38:26,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 04:38:26,282.282 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-22 04:38:26,285.285 INFO    ] Checking for camera pi updates...
[2026-06-22 04:38:26,326.326 INFO    ] 200
[2026-06-22 04:38:26,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 04:38:26,331.331 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-22 04:38:26,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:38:26,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:38:26,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:38:26,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:38:28,389.389 INFO    ] ================================================
[2026-06-22 04:38:28,404.404 INFO    ] Launching Daemon at Mon Jun 22 04:38:28 IST 2026
[2026-06-22 04:38:28,416.416 INFO    ] ================================================
[2026-06-22 04:38:29,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:38:29
[2026-06-22 04:38:29,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:38:29,895.895 INFO    ] Initializing speech engine...
[2026-06-22 04:38:29,904.904 INFO    ] 2026-06-22 04:38:29
[2026-06-22 04:38:30,152.152 INFO    ] 2026-06-22 04:38:30
[2026-06-22 04:38:30,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:38:30,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:38:30,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:38:30,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:38:30,613.613 INFO    ] time= 22/06/2026 04:38:30
[2026-06-22 04:38:30,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:38:30,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:38:30,765.765 INFO    ] No existing commands found in stream
[2026-06-22 04:38:35,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:38:35,782.782 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-22 04:38:38,655.655 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:38:38,658.658 INFO    ] Checking for system updates...
[2026-06-22 04:38:38,700.700 INFO    ] 200
[2026-06-22 04:38:38,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:38:38,765.765 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:38:38,768.768 INFO    ] No update needed
[2026-06-22 04:38:38,771.771 INFO    ] Checking for camera pi updates...
[2026-06-22 04:38:38,806.806 INFO    ] 200
[2026-06-22 04:38:38,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:38:38,850.850 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:38:38,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:38:38,945.945 INFO    ] No camera update needed
[2026-06-22 04:38:38,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:38:38,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:38:38,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:38:38,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:38:41,006.006 INFO    ] ================================================
[2026-06-22 04:38:41,021.021 INFO    ] Launching Daemon at Mon Jun 22 04:38:41 IST 2026
[2026-06-22 04:38:41,032.032 INFO    ] ================================================
[2026-06-22 04:38:41,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:38:41
[2026-06-22 04:38:42,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:38:42,369.369 INFO    ] Initializing speech engine...
[2026-06-22 04:38:42,378.378 INFO    ] 2026-06-22 04:38:42
[2026-06-22 04:38:42,626.626 INFO    ] 2026-06-22 04:38:42
[2026-06-22 04:38:42,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:38:42,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:38:42,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:38:43,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:38:43,076.076 INFO    ] time= 22/06/2026 04:38:43
[2026-06-22 04:38:43,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:38:43,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:38:43,240.240 INFO    ] No existing commands found in stream
[2026-06-22 04:38:48,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:38:48,255.255 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-22 04:38:49,326.326 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:38:49,329.329 INFO    ] Checking for system updates...
[2026-06-22 04:38:49,365.365 INFO    ] 200
[2026-06-22 04:38:49,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:38:49,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:38:49,430.430 INFO    ] No update needed
[2026-06-22 04:38:49,433.433 INFO    ] Checking for camera pi updates...
[2026-06-22 04:38:49,467.467 INFO    ] 200
[2026-06-22 04:38:49,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:38:49,509.509 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:38:49,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:38:49,676.676 INFO    ] No camera update needed
[2026-06-22 04:38:49,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:38:49,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:38:49,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:38:49,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:38:51,731.731 INFO    ] ================================================
[2026-06-22 04:38:51,747.747 INFO    ] Launching Daemon at Mon Jun 22 04:38:51 IST 2026
[2026-06-22 04:38:51,757.757 INFO    ] ================================================
[2026-06-22 04:38:52,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:38:52
[2026-06-22 04:38:52,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:38:53,130.130 INFO    ] Initializing speech engine...
[2026-06-22 04:38:53,140.140 INFO    ] 2026-06-22 04:38:53
[2026-06-22 04:38:53,408.408 INFO    ] 2026-06-22 04:38:53
[2026-06-22 04:38:53,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:38:53,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:38:53,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:38:53,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:38:53,788.788 INFO    ] time= 22/06/2026 04:38:53
[2026-06-22 04:38:53,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:38:53,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:38:53,845.845 INFO    ] No existing commands found in stream
[2026-06-22 04:38:58,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:38:58,859.859 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-22 04:39:00,053.053 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:39:00,056.056 INFO    ] Checking for system updates...
[2026-06-22 04:39:00,092.092 INFO    ] 200
[2026-06-22 04:39:00,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:39:00,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:39:00,158.158 INFO    ] No update needed
[2026-06-22 04:39:00,160.160 INFO    ] Checking for camera pi updates...
[2026-06-22 04:39:00,198.198 INFO    ] 200
[2026-06-22 04:39:00,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:39:00,241.241 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:39:00,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:39:00,349.349 INFO    ] No camera update needed
[2026-06-22 04:39:00,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:39:00,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:39:00,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:39:00,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:39:02,407.407 INFO    ] ================================================
[2026-06-22 04:39:02,424.424 INFO    ] Launching Daemon at Mon Jun 22 04:39:02 IST 2026
[2026-06-22 04:39:02,436.436 INFO    ] ================================================
[2026-06-22 04:39:03,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:39:03
[2026-06-22 04:39:03,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:39:03,978.978 INFO    ] Initializing speech engine...
[2026-06-22 04:39:03,983.983 INFO    ] 2026-06-22 04:39:03
[2026-06-22 04:39:04,265.265 INFO    ] 2026-06-22 04:39:04
[2026-06-22 04:39:04,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:39:04,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:39:04,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:39:04,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:39:04,598.598 INFO    ] time= 22/06/2026 04:39:04
[2026-06-22 04:39:04,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:39:04,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:39:04,680.680 INFO    ] No existing commands found in stream
[2026-06-22 04:39:09,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:39:09,694.694 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-22 04:39:10,507.507 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:39:10,509.509 INFO    ] Checking for system updates...
[2026-06-22 04:39:10,546.546 INFO    ] 200
[2026-06-22 04:39:10,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:39:10,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:39:10,603.603 INFO    ] No update needed
[2026-06-22 04:39:10,606.606 INFO    ] Checking for camera pi updates...
[2026-06-22 04:39:10,639.639 INFO    ] 200
[2026-06-22 04:39:10,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:39:10,683.683 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:39:10,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:39:10,754.754 INFO    ] No camera update needed
[2026-06-22 04:39:10,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:39:10,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:39:10,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:39:10,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:39:12,808.808 INFO    ] ================================================
[2026-06-22 04:39:12,824.824 INFO    ] Launching Daemon at Mon Jun 22 04:39:12 IST 2026
[2026-06-22 04:39:12,835.835 INFO    ] ================================================
[2026-06-22 04:39:13,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:39:13
[2026-06-22 04:39:13,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:39:14,280.280 INFO    ] Initializing speech engine...
[2026-06-22 04:39:14,287.287 INFO    ] 2026-06-22 04:39:14
[2026-06-22 04:39:14,551.551 INFO    ] 2026-06-22 04:39:14
[2026-06-22 04:39:14,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:39:14,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:39:14,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:39:14,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:39:14,884.884 INFO    ] time= 22/06/2026 04:39:14
[2026-06-22 04:39:14,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:39:14,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:39:14,997.997 INFO    ] No existing commands found in stream
[2026-06-22 04:39:20,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:39:20,042.042 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-22 04:39:23,723.723 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:39:23,726.726 INFO    ] Checking for system updates...
[2026-06-22 04:39:23,767.767 INFO    ] 200
[2026-06-22 04:39:23,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:39:23,826.826 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:39:23,828.828 INFO    ] No update needed
[2026-06-22 04:39:23,831.831 INFO    ] Checking for camera pi updates...
[2026-06-22 04:39:23,870.870 INFO    ] 200
[2026-06-22 04:39:23,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:39:23,919.919 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:39:24,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:39:24,027.027 INFO    ] No camera update needed
[2026-06-22 04:39:24,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:39:24,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:39:24,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:39:24,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:39:26,086.086 INFO    ] ================================================
[2026-06-22 04:39:26,101.101 INFO    ] Launching Daemon at Mon Jun 22 04:39:26 IST 2026
[2026-06-22 04:39:26,112.112 INFO    ] ================================================
[2026-06-22 04:39:26,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:39:26
[2026-06-22 04:39:27,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:39:27,488.488 INFO    ] Initializing speech engine...
[2026-06-22 04:39:27,493.493 INFO    ] 2026-06-22 04:39:27
[2026-06-22 04:39:27,743.743 INFO    ] 2026-06-22 04:39:27
[2026-06-22 04:39:27,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:39:28,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:39:28,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:39:28,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:39:28,223.223 INFO    ] time= 22/06/2026 04:39:28
[2026-06-22 04:39:28,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:39:28,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:39:28,381.381 INFO    ] No existing commands found in stream
[2026-06-22 04:39:33,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:39:33,396.396 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-22 04:39:37,314.314 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:39:37,317.317 INFO    ] Checking for system updates...
[2026-06-22 04:39:37,353.353 INFO    ] 200
[2026-06-22 04:39:37,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:39:37,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:39:37,418.418 INFO    ] No update needed
[2026-06-22 04:39:37,420.420 INFO    ] Checking for camera pi updates...
[2026-06-22 04:39:37,454.454 INFO    ] 200
[2026-06-22 04:39:37,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:39:37,498.498 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:39:37,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:39:37,578.578 INFO    ] No camera update needed
[2026-06-22 04:39:37,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:39:37,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:39:37,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:39:37,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:39:39,635.635 INFO    ] ================================================
[2026-06-22 04:39:39,650.650 INFO    ] Launching Daemon at Mon Jun 22 04:39:39 IST 2026
[2026-06-22 04:39:39,661.661 INFO    ] ================================================
[2026-06-22 04:39:40,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:39:40
[2026-06-22 04:39:40,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:39:41,081.081 INFO    ] Initializing speech engine...
[2026-06-22 04:39:41,099.099 INFO    ] 2026-06-22 04:39:41
[2026-06-22 04:39:41,400.400 INFO    ] 2026-06-22 04:39:41
[2026-06-22 04:39:41,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:39:41,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:39:41,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:39:41,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:39:41,773.773 INFO    ] time= 22/06/2026 04:39:41
[2026-06-22 04:39:41,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:39:41,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:39:41,847.847 INFO    ] No existing commands found in stream
[2026-06-22 04:39:46,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:39:46,862.862 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-22 04:39:49,278.278 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:39:49,279.279 INFO    ] Checking for system updates...
[2026-06-22 04:39:49,300.300 INFO    ] 200
[2026-06-22 04:39:49,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:39:49,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:39:49,334.334 INFO    ] No update needed
[2026-06-22 04:39:49,335.335 INFO    ] Checking for camera pi updates...
[2026-06-22 04:39:49,361.361 INFO    ] 200
[2026-06-22 04:39:49,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:39:49,405.405 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:39:49,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:39:49,491.491 INFO    ] No camera update needed
[2026-06-22 04:39:49,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:39:49,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:39:49,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:39:49,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:39:51,548.548 INFO    ] ================================================
[2026-06-22 04:39:51,564.564 INFO    ] Launching Daemon at Mon Jun 22 04:39:51 IST 2026
[2026-06-22 04:39:51,576.576 INFO    ] ================================================
[2026-06-22 04:39:52,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:39:52
[2026-06-22 04:39:52,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:39:53,091.091 INFO    ] Initializing speech engine...
[2026-06-22 04:39:53,101.101 INFO    ] 2026-06-22 04:39:53
[2026-06-22 04:39:53,379.379 INFO    ] 2026-06-22 04:39:53
[2026-06-22 04:39:53,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:39:53,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:39:53,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:39:53,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:39:53,773.773 INFO    ] time= 22/06/2026 04:39:53
[2026-06-22 04:39:53,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:39:53,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:39:53,943.943 INFO    ] No existing commands found in stream
[2026-06-22 04:39:58,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:39:58,977.977 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-22 04:40:02,479.479 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:40:02,483.483 INFO    ] Checking for system updates...
[2026-06-22 04:40:02,537.537 INFO    ] 200
[2026-06-22 04:40:02,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:40:02,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:40:02,647.647 INFO    ] No update needed
[2026-06-22 04:40:02,650.650 INFO    ] Checking for camera pi updates...
[2026-06-22 04:40:02,700.700 INFO    ] 200
[2026-06-22 04:40:02,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:40:02,769.769 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:40:02,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:40:02,883.883 INFO    ] No camera update needed
[2026-06-22 04:40:02,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:40:02,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:40:02,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:40:02,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:40:04,949.949 INFO    ] ================================================
[2026-06-22 04:40:04,965.965 INFO    ] Launching Daemon at Mon Jun 22 04:40:04 IST 2026
[2026-06-22 04:40:04,976.976 INFO    ] ================================================
[2026-06-22 04:40:05,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:40:05
[2026-06-22 04:40:06,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:40:06,412.412 INFO    ] Initializing speech engine...
[2026-06-22 04:40:06,419.419 INFO    ] 2026-06-22 04:40:06
[2026-06-22 04:40:06,681.681 INFO    ] 2026-06-22 04:40:06
[2026-06-22 04:40:06,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:40:06,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:40:06,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:40:07,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:40:07,026.026 INFO    ] time= 22/06/2026 04:40:07
[2026-06-22 04:40:07,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:40:07,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:40:07,142.142 INFO    ] No existing commands found in stream
[2026-06-22 04:40:12,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:40:12,166.166 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-22 04:40:14,828.828 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:40:14,831.831 INFO    ] Checking for system updates...
[2026-06-22 04:40:14,870.870 INFO    ] 200
[2026-06-22 04:40:14,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:40:14,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:40:14,929.929 INFO    ] No update needed
[2026-06-22 04:40:14,931.931 INFO    ] Checking for camera pi updates...
[2026-06-22 04:40:14,965.965 INFO    ] 200
[2026-06-22 04:40:14,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:40:15,009.009 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:40:15,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:40:15,102.102 INFO    ] No camera update needed
[2026-06-22 04:40:15,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:40:15,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:40:15,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:40:15,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:40:17,159.159 INFO    ] ================================================
[2026-06-22 04:40:17,174.174 INFO    ] Launching Daemon at Mon Jun 22 04:40:17 IST 2026
[2026-06-22 04:40:17,185.185 INFO    ] ================================================
[2026-06-22 04:40:17,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:40:17
[2026-06-22 04:40:18,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:40:18,555.555 INFO    ] Initializing speech engine...
[2026-06-22 04:40:18,560.560 INFO    ] 2026-06-22 04:40:18
[2026-06-22 04:40:18,821.821 INFO    ] 2026-06-22 04:40:18
[2026-06-22 04:40:18,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:40:19,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:40:19,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:40:19,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:40:19,285.285 INFO    ] time= 22/06/2026 04:40:19
[2026-06-22 04:40:19,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:40:19,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:40:19,426.426 INFO    ] No existing commands found in stream
[2026-06-22 04:40:24,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:40:24,441.441 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-22 04:40:28,041.041 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:40:28,042.042 INFO    ] Checking for system updates...
[2026-06-22 04:40:28,063.063 INFO    ] 200
[2026-06-22 04:40:28,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:40:28,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:40:28,109.109 INFO    ] No update needed
[2026-06-22 04:40:28,111.111 INFO    ] Checking for camera pi updates...
[2026-06-22 04:40:28,145.145 INFO    ] 200
[2026-06-22 04:40:28,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:40:28,190.190 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:40:28,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:40:28,296.296 INFO    ] No camera update needed
[2026-06-22 04:40:28,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:40:28,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:40:28,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:40:28,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:40:30,354.354 INFO    ] ================================================
[2026-06-22 04:40:30,369.369 INFO    ] Launching Daemon at Mon Jun 22 04:40:30 IST 2026
[2026-06-22 04:40:30,381.381 INFO    ] ================================================
[2026-06-22 04:40:30,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:40:30
[2026-06-22 04:40:31,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:40:31,725.725 INFO    ] Initializing speech engine...
[2026-06-22 04:40:31,731.731 INFO    ] 2026-06-22 04:40:31
[2026-06-22 04:40:32,019.019 INFO    ] 2026-06-22 04:40:31
[2026-06-22 04:40:32,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:40:32,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:40:32,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:40:32,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:40:32,387.387 INFO    ] time= 22/06/2026 04:40:32
[2026-06-22 04:40:32,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:40:32,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:40:32,513.513 INFO    ] No existing commands found in stream
[2026-06-22 04:40:37,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:40:37,552.552 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-22 04:40:41,531.531 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:40:41,532.532 INFO    ] Checking for system updates...
[2026-06-22 04:40:41,554.554 INFO    ] 200
[2026-06-22 04:40:41,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:40:41,586.586 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:40:41,588.588 INFO    ] No update needed
[2026-06-22 04:40:41,589.589 INFO    ] Checking for camera pi updates...
[2026-06-22 04:40:41,609.609 INFO    ] 200
[2026-06-22 04:40:41,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:40:41,651.651 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:40:41,752.752 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:40:41,755.755 INFO    ] No camera update needed
[2026-06-22 04:40:41,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:40:41,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:40:41,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:40:41,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:40:43,814.814 INFO    ] ================================================
[2026-06-22 04:40:43,830.830 INFO    ] Launching Daemon at Mon Jun 22 04:40:43 IST 2026
[2026-06-22 04:40:43,841.841 INFO    ] ================================================
[2026-06-22 04:40:44,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:40:44
[2026-06-22 04:40:44,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:40:45,168.168 INFO    ] Initializing speech engine...
[2026-06-22 04:40:45,173.173 INFO    ] 2026-06-22 04:40:45
[2026-06-22 04:40:45,468.468 INFO    ] 2026-06-22 04:40:45
[2026-06-22 04:40:45,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:40:45,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:40:45,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:40:45,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:40:45,856.856 INFO    ] time= 22/06/2026 04:40:45
[2026-06-22 04:40:45,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:40:45,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:40:45,962.962 INFO    ] No existing commands found in stream
[2026-06-22 04:40:50,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:40:50,977.977 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-22 04:40:51,911.911 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:40:51,913.913 INFO    ] Checking for system updates...
[2026-06-22 04:40:51,950.950 INFO    ] 200
[2026-06-22 04:40:51,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:40:52,010.010 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:40:52,012.012 INFO    ] No update needed
[2026-06-22 04:40:52,014.014 INFO    ] Checking for camera pi updates...
[2026-06-22 04:40:52,048.048 INFO    ] 200
[2026-06-22 04:40:52,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:40:52,092.092 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:40:52,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:40:52,292.292 INFO    ] No camera update needed
[2026-06-22 04:40:52,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:40:52,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:40:52,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:40:52,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:40:54,348.348 INFO    ] ================================================
[2026-06-22 04:40:54,364.364 INFO    ] Launching Daemon at Mon Jun 22 04:40:54 IST 2026
[2026-06-22 04:40:54,374.374 INFO    ] ================================================
[2026-06-22 04:40:55,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:40:55
[2026-06-22 04:40:55,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:40:55,966.966 INFO    ] Initializing speech engine...
[2026-06-22 04:40:55,974.974 INFO    ] 2026-06-22 04:40:55
[2026-06-22 04:40:56,234.234 INFO    ] 2026-06-22 04:40:56
[2026-06-22 04:40:56,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:40:56,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:40:56,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:40:56,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:40:56,702.702 INFO    ] time= 22/06/2026 04:40:56
[2026-06-22 04:40:56,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:40:56,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:40:56,871.871 INFO    ] No existing commands found in stream
[2026-06-22 04:41:01,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:41:01,887.887 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-22 04:41:06,052.052 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:41:06,055.055 INFO    ] Checking for system updates...
[2026-06-22 04:41:06,102.102 INFO    ] 200
[2026-06-22 04:41:06,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:41:06,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:41:06,160.160 INFO    ] No update needed
[2026-06-22 04:41:06,163.163 INFO    ] Checking for camera pi updates...
[2026-06-22 04:41:06,196.196 INFO    ] 200
[2026-06-22 04:41:06,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:41:06,244.244 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:41:06,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:41:06,299.299 INFO    ] No camera update needed
[2026-06-22 04:41:06,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:41:06,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:41:06,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:41:06,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:41:08,354.354 INFO    ] ================================================
[2026-06-22 04:41:08,370.370 INFO    ] Launching Daemon at Mon Jun 22 04:41:08 IST 2026
[2026-06-22 04:41:08,381.381 INFO    ] ================================================
[2026-06-22 04:41:08,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:41:08
[2026-06-22 04:41:09,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:41:09,842.842 INFO    ] Initializing speech engine...
[2026-06-22 04:41:09,848.848 INFO    ] 2026-06-22 04:41:09
[2026-06-22 04:41:10,141.141 INFO    ] 2026-06-22 04:41:10
[2026-06-22 04:41:10,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:41:10,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:41:10,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:41:10,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:41:10,574.574 INFO    ] time= 22/06/2026 04:41:10
[2026-06-22 04:41:10,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:41:10,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:41:10,722.722 INFO    ] No existing commands found in stream
[2026-06-22 04:41:15,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:41:15,741.741 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-22 04:41:17,515.515 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:41:17,519.519 INFO    ] Checking for system updates...
[2026-06-22 04:41:17,558.558 INFO    ] 200
[2026-06-22 04:41:17,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:41:17,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:41:17,621.621 INFO    ] No update needed
[2026-06-22 04:41:17,624.624 INFO    ] Checking for camera pi updates...
[2026-06-22 04:41:17,658.658 INFO    ] 200
[2026-06-22 04:41:17,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:41:17,702.702 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:41:17,755.755 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:41:17,758.758 INFO    ] No camera update needed
[2026-06-22 04:41:17,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:41:17,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:41:17,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:41:17,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:41:19,814.814 INFO    ] ================================================
[2026-06-22 04:41:19,830.830 INFO    ] Launching Daemon at Mon Jun 22 04:41:19 IST 2026
[2026-06-22 04:41:19,841.841 INFO    ] ================================================
[2026-06-22 04:41:20,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:41:20
[2026-06-22 04:41:20,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:41:21,211.211 INFO    ] Initializing speech engine...
[2026-06-22 04:41:21,220.220 INFO    ] 2026-06-22 04:41:21
[2026-06-22 04:41:21,482.482 INFO    ] 2026-06-22 04:41:21
[2026-06-22 04:41:21,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:41:21,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:41:21,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:41:21,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:41:21,948.948 INFO    ] time= 22/06/2026 04:41:21
[2026-06-22 04:41:22,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:41:22,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:41:22,088.088 INFO    ] No existing commands found in stream
[2026-06-22 04:41:27,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:41:27,103.103 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-22 04:41:30,655.655 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:41:30,658.658 INFO    ] Checking for system updates...
[2026-06-22 04:41:30,697.697 INFO    ] 200
[2026-06-22 04:41:30,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:41:30,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:41:30,756.756 INFO    ] No update needed
[2026-06-22 04:41:30,759.759 INFO    ] Checking for camera pi updates...
[2026-06-22 04:41:30,793.793 INFO    ] 200
[2026-06-22 04:41:30,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:41:30,838.838 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:41:30,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:41:30,947.947 INFO    ] No camera update needed
[2026-06-22 04:41:30,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:41:30,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:41:30,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:41:30,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:41:33,005.005 INFO    ] ================================================
[2026-06-22 04:41:33,022.022 INFO    ] Launching Daemon at Mon Jun 22 04:41:33 IST 2026
[2026-06-22 04:41:33,034.034 INFO    ] ================================================
[2026-06-22 04:41:33,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:41:33
[2026-06-22 04:41:34,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:41:34,559.559 INFO    ] Initializing speech engine...
[2026-06-22 04:41:34,567.567 INFO    ] 2026-06-22 04:41:34
[2026-06-22 04:41:34,845.845 INFO    ] 2026-06-22 04:41:34
[2026-06-22 04:41:34,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:41:35,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:41:35,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:41:35,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:41:35,187.187 INFO    ] time= 22/06/2026 04:41:35
[2026-06-22 04:41:35,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:41:35,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:41:35,300.300 INFO    ] No existing commands found in stream
[2026-06-22 04:41:40,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:41:40,319.319 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-22 04:41:44,314.314 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:41:44,317.317 INFO    ] Checking for system updates...
[2026-06-22 04:41:44,354.354 INFO    ] 200
[2026-06-22 04:41:44,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:41:44,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:41:44,414.414 INFO    ] No update needed
[2026-06-22 04:41:44,416.416 INFO    ] Checking for camera pi updates...
[2026-06-22 04:41:44,450.450 INFO    ] 200
[2026-06-22 04:41:44,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:41:44,494.494 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:41:44,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:41:44,601.601 INFO    ] No camera update needed
[2026-06-22 04:41:44,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:41:44,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:41:44,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:41:44,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:41:46,656.656 INFO    ] ================================================
[2026-06-22 04:41:46,672.672 INFO    ] Launching Daemon at Mon Jun 22 04:41:46 IST 2026
[2026-06-22 04:41:46,683.683 INFO    ] ================================================
[2026-06-22 04:41:47,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:41:47
[2026-06-22 04:41:47,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:41:48,058.058 INFO    ] Initializing speech engine...
[2026-06-22 04:41:48,071.071 INFO    ] 2026-06-22 04:41:48
[2026-06-22 04:41:48,338.338 INFO    ] 2026-06-22 04:41:48
[2026-06-22 04:41:48,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:41:48,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:41:48,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:41:48,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:41:48,769.769 INFO    ] time= 22/06/2026 04:41:48
[2026-06-22 04:41:48,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:41:48,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:41:48,968.968 INFO    ] No existing commands found in stream
[2026-06-22 04:41:54,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:41:54,003.003 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-22 04:41:55,121.121 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:41:55,123.123 INFO    ] Checking for system updates...
[2026-06-22 04:41:55,160.160 INFO    ] 200
[2026-06-22 04:41:55,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:41:55,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:41:55,218.218 INFO    ] No update needed
[2026-06-22 04:41:55,220.220 INFO    ] Checking for camera pi updates...
[2026-06-22 04:41:55,255.255 INFO    ] 200
[2026-06-22 04:41:55,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:41:55,298.298 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:41:55,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:41:55,366.366 INFO    ] No camera update needed
[2026-06-22 04:41:55,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:41:55,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:41:55,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:41:55,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:41:57,426.426 INFO    ] ================================================
[2026-06-22 04:41:57,442.442 INFO    ] Launching Daemon at Mon Jun 22 04:41:57 IST 2026
[2026-06-22 04:41:57,453.453 INFO    ] ================================================
[2026-06-22 04:41:58,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:41:58
[2026-06-22 04:41:58,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:41:58,824.824 INFO    ] Initializing speech engine...
[2026-06-22 04:41:58,833.833 INFO    ] 2026-06-22 04:41:58
[2026-06-22 04:41:59,082.082 INFO    ] 2026-06-22 04:41:59
[2026-06-22 04:41:59,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:41:59,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:41:59,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:41:59,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:41:59,570.570 INFO    ] time= 22/06/2026 04:41:59
[2026-06-22 04:41:59,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:41:59,649.649 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:41:59,731.731 INFO    ] No existing commands found in stream
[2026-06-22 04:42:04,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:42:04,769.769 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-22 04:42:07,547.547 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:42:07,549.549 INFO    ] Checking for system updates...
[2026-06-22 04:42:07,586.586 INFO    ] 200
[2026-06-22 04:42:07,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:42:07,645.645 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:42:07,647.647 INFO    ] No update needed
[2026-06-22 04:42:07,650.650 INFO    ] Checking for camera pi updates...
[2026-06-22 04:42:07,685.685 INFO    ] 200
[2026-06-22 04:42:07,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:42:07,733.733 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:42:07,818.818 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:42:07,820.820 INFO    ] No camera update needed
[2026-06-22 04:42:07,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:42:07,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:42:07,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:42:07,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:42:09,876.876 INFO    ] ================================================
[2026-06-22 04:42:09,891.891 INFO    ] Launching Daemon at Mon Jun 22 04:42:09 IST 2026
[2026-06-22 04:42:09,901.901 INFO    ] ================================================
[2026-06-22 04:42:10,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:42:10
[2026-06-22 04:42:11,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:42:11,489.489 INFO    ] Initializing speech engine...
[2026-06-22 04:42:11,502.502 INFO    ] 2026-06-22 04:42:11
[2026-06-22 04:42:11,782.782 INFO    ] 2026-06-22 04:42:11
[2026-06-22 04:42:11,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:42:12,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:42:12,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:42:12,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:42:12,266.266 INFO    ] time= 22/06/2026 04:42:12
[2026-06-22 04:42:12,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:42:12,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:42:12,454.454 INFO    ] No existing commands found in stream
[2026-06-22 04:42:17,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:42:17,488.488 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-22 04:42:20,798.798 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:42:20,801.801 INFO    ] Checking for system updates...
[2026-06-22 04:42:20,840.840 INFO    ] 200
[2026-06-22 04:42:20,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:42:20,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:42:20,901.901 INFO    ] No update needed
[2026-06-22 04:42:20,903.903 INFO    ] Checking for camera pi updates...
[2026-06-22 04:42:20,938.938 INFO    ] 200
[2026-06-22 04:42:20,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:42:20,988.988 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:42:21,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:42:21,088.088 INFO    ] No camera update needed
[2026-06-22 04:42:21,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:42:21,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:42:21,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:42:21,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:42:23,145.145 INFO    ] ================================================
[2026-06-22 04:42:23,160.160 INFO    ] Launching Daemon at Mon Jun 22 04:42:23 IST 2026
[2026-06-22 04:42:23,170.170 INFO    ] ================================================
[2026-06-22 04:42:23,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:42:23
[2026-06-22 04:42:24,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:42:24,561.561 INFO    ] Initializing speech engine...
[2026-06-22 04:42:24,568.568 INFO    ] 2026-06-22 04:42:24
[2026-06-22 04:42:24,875.875 INFO    ] 2026-06-22 04:42:24
[2026-06-22 04:42:24,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:42:25,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:42:25,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:42:25,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:42:25,316.316 INFO    ] time= 22/06/2026 04:42:25
[2026-06-22 04:42:25,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:42:25,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:42:25,481.481 INFO    ] No existing commands found in stream
[2026-06-22 04:42:30,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:42:30,497.497 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-22 04:42:32,827.827 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:42:32,830.830 INFO    ] Checking for system updates...
[2026-06-22 04:42:32,869.869 INFO    ] 200
[2026-06-22 04:42:32,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:42:32,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:42:32,938.938 INFO    ] No update needed
[2026-06-22 04:42:32,941.941 INFO    ] Checking for camera pi updates...
[2026-06-22 04:42:32,977.977 INFO    ] 200
[2026-06-22 04:42:32,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:42:33,029.029 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:42:33,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:42:33,114.114 INFO    ] No camera update needed
[2026-06-22 04:42:33,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:42:33,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:42:33,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:42:33,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:42:35,175.175 INFO    ] ================================================
[2026-06-22 04:42:35,190.190 INFO    ] Launching Daemon at Mon Jun 22 04:42:35 IST 2026
[2026-06-22 04:42:35,200.200 INFO    ] ================================================
[2026-06-22 04:42:35,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:42:35
[2026-06-22 04:42:36,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:42:36,682.682 INFO    ] Initializing speech engine...
[2026-06-22 04:42:36,706.706 INFO    ] 2026-06-22 04:42:36
[2026-06-22 04:42:36,978.978 INFO    ] 2026-06-22 04:42:36
[2026-06-22 04:42:37,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:42:37,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:42:37,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:42:37,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:42:37,354.354 INFO    ] time= 22/06/2026 04:42:37
[2026-06-22 04:42:37,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:42:37,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:42:37,477.477 INFO    ] No existing commands found in stream
[2026-06-22 04:42:42,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:42:42,490.490 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-22 04:42:46,022.022 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:42:46,025.025 INFO    ] Checking for system updates...
[2026-06-22 04:42:46,064.064 INFO    ] 200
[2026-06-22 04:42:46,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:42:46,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:42:46,122.122 INFO    ] No update needed
[2026-06-22 04:42:46,125.125 INFO    ] Checking for camera pi updates...
[2026-06-22 04:42:46,160.160 INFO    ] 200
[2026-06-22 04:42:46,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:42:46,203.203 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:42:46,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:42:46,291.291 INFO    ] No camera update needed
[2026-06-22 04:42:46,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:42:46,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:42:46,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:42:46,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:42:48,348.348 INFO    ] ================================================
[2026-06-22 04:42:48,363.363 INFO    ] Launching Daemon at Mon Jun 22 04:42:48 IST 2026
[2026-06-22 04:42:48,374.374 INFO    ] ================================================
[2026-06-22 04:42:48,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:42:48
[2026-06-22 04:42:49,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:42:49,781.781 INFO    ] Initializing speech engine...
[2026-06-22 04:42:49,788.788 INFO    ] 2026-06-22 04:42:49
[2026-06-22 04:42:50,062.062 INFO    ] 2026-06-22 04:42:50
[2026-06-22 04:42:50,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:42:50,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:42:50,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:42:50,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:42:50,507.507 INFO    ] time= 22/06/2026 04:42:50
[2026-06-22 04:42:50,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:42:50,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:42:50,691.691 INFO    ] No existing commands found in stream
[2026-06-22 04:42:55,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:42:55,706.706 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-22 04:42:57,385.385 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:42:57,387.387 INFO    ] Checking for system updates...
[2026-06-22 04:42:57,407.407 INFO    ] 200
[2026-06-22 04:42:57,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:42:57,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:42:57,451.451 INFO    ] No update needed
[2026-06-22 04:42:57,454.454 INFO    ] Checking for camera pi updates...
[2026-06-22 04:42:57,487.487 INFO    ] 200
[2026-06-22 04:42:57,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:42:57,534.534 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:42:57,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:42:57,728.728 INFO    ] No camera update needed
[2026-06-22 04:42:57,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:42:57,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:42:57,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:42:57,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:42:59,783.783 INFO    ] ================================================
[2026-06-22 04:42:59,798.798 INFO    ] Launching Daemon at Mon Jun 22 04:42:59 IST 2026
[2026-06-22 04:42:59,809.809 INFO    ] ================================================
[2026-06-22 04:43:00,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:43:00
[2026-06-22 04:43:00,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:43:01,198.198 INFO    ] Initializing speech engine...
[2026-06-22 04:43:01,211.211 INFO    ] 2026-06-22 04:43:01
[2026-06-22 04:43:01,480.480 INFO    ] 2026-06-22 04:43:01
[2026-06-22 04:43:01,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:43:01,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:43:01,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:43:01,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:43:01,950.950 INFO    ] time= 22/06/2026 04:43:01
[2026-06-22 04:43:02,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:43:02,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:43:02,160.160 INFO    ] No existing commands found in stream
[2026-06-22 04:43:07,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:43:07,172.172 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-22 04:43:09,428.428 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:43:09,431.431 INFO    ] Checking for system updates...
[2026-06-22 04:43:09,466.466 INFO    ] 200
[2026-06-22 04:43:09,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:43:09,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:43:09,527.527 INFO    ] No update needed
[2026-06-22 04:43:09,530.530 INFO    ] Checking for camera pi updates...
[2026-06-22 04:43:09,564.564 INFO    ] 200
[2026-06-22 04:43:09,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:43:09,608.608 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:43:09,663.663 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:43:09,667.667 INFO    ] No camera update needed
[2026-06-22 04:43:09,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:43:09,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:43:09,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:43:09,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:43:11,727.727 INFO    ] ================================================
[2026-06-22 04:43:11,742.742 INFO    ] Launching Daemon at Mon Jun 22 04:43:11 IST 2026
[2026-06-22 04:43:11,753.753 INFO    ] ================================================
[2026-06-22 04:43:12,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:43:12
[2026-06-22 04:43:12,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:43:13,177.177 INFO    ] Initializing speech engine...
[2026-06-22 04:43:13,186.186 INFO    ] 2026-06-22 04:43:13
[2026-06-22 04:43:13,432.432 INFO    ] 2026-06-22 04:43:13
[2026-06-22 04:43:13,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:43:13,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:43:13,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:43:13,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:43:13,870.870 INFO    ] time= 22/06/2026 04:43:13
[2026-06-22 04:43:13,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:43:13,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:43:14,022.022 INFO    ] No existing commands found in stream
[2026-06-22 04:43:19,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:43:19,041.041 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-22 04:43:22,557.557 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:43:22,559.559 INFO    ] Checking for system updates...
[2026-06-22 04:43:22,596.596 INFO    ] 200
[2026-06-22 04:43:22,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:43:22,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:43:22,662.662 INFO    ] No update needed
[2026-06-22 04:43:22,664.664 INFO    ] Checking for camera pi updates...
[2026-06-22 04:43:22,699.699 INFO    ] 200
[2026-06-22 04:43:22,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:43:22,748.748 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:43:22,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:43:22,842.842 INFO    ] No camera update needed
[2026-06-22 04:43:22,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:43:22,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:43:22,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:43:22,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:43:24,901.901 INFO    ] ================================================
[2026-06-22 04:43:24,916.916 INFO    ] Launching Daemon at Mon Jun 22 04:43:24 IST 2026
[2026-06-22 04:43:24,927.927 INFO    ] ================================================
[2026-06-22 04:43:25,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:43:25
[2026-06-22 04:43:26,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:43:26,324.324 INFO    ] Initializing speech engine...
[2026-06-22 04:43:26,332.332 INFO    ] 2026-06-22 04:43:26
[2026-06-22 04:43:26,591.591 INFO    ] 2026-06-22 04:43:26
[2026-06-22 04:43:26,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:43:26,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:43:26,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:43:27,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:43:27,060.060 INFO    ] time= 22/06/2026 04:43:27
[2026-06-22 04:43:27,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:43:27,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:43:27,204.204 INFO    ] No existing commands found in stream
[2026-06-22 04:43:32,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:43:32,220.220 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-22 04:43:36,047.047 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:43:36,049.049 INFO    ] Checking for system updates...
[2026-06-22 04:43:36,086.086 INFO    ] 200
[2026-06-22 04:43:36,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:43:36,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:43:36,144.144 INFO    ] No update needed
[2026-06-22 04:43:36,147.147 INFO    ] Checking for camera pi updates...
[2026-06-22 04:43:36,181.181 INFO    ] 200
[2026-06-22 04:43:36,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:43:36,229.229 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:43:36,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:43:36,313.313 INFO    ] No camera update needed
[2026-06-22 04:43:36,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:43:36,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:43:36,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:43:36,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:43:38,368.368 INFO    ] ================================================
[2026-06-22 04:43:38,383.383 INFO    ] Launching Daemon at Mon Jun 22 04:43:38 IST 2026
[2026-06-22 04:43:38,393.393 INFO    ] ================================================
[2026-06-22 04:43:39,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:43:39
[2026-06-22 04:43:39,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:43:39,794.794 INFO    ] Initializing speech engine...
[2026-06-22 04:43:39,803.803 INFO    ] 2026-06-22 04:43:39
[2026-06-22 04:43:40,079.079 INFO    ] 2026-06-22 04:43:40
[2026-06-22 04:43:40,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:43:40,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:43:40,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:43:40,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:43:40,457.457 INFO    ] time= 22/06/2026 04:43:40
[2026-06-22 04:43:40,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:43:40,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:43:40,589.589 INFO    ] No existing commands found in stream
[2026-06-22 04:43:45,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:43:45,617.617 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-22 04:43:48,023.023 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:43:48,026.026 INFO    ] Checking for system updates...
[2026-06-22 04:43:48,061.061 INFO    ] 200
[2026-06-22 04:43:48,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:43:48,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:43:48,119.119 INFO    ] No update needed
[2026-06-22 04:43:48,121.121 INFO    ] Checking for camera pi updates...
[2026-06-22 04:43:48,157.157 INFO    ] 200
[2026-06-22 04:43:48,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:43:48,200.200 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:43:48,308.308 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:43:48,311.311 INFO    ] No camera update needed
[2026-06-22 04:43:48,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:43:48,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:43:48,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:43:48,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:43:50,366.366 INFO    ] ================================================
[2026-06-22 04:43:50,382.382 INFO    ] Launching Daemon at Mon Jun 22 04:43:50 IST 2026
[2026-06-22 04:43:50,392.392 INFO    ] ================================================
[2026-06-22 04:43:51,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:43:51
[2026-06-22 04:43:51,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:43:51,917.917 INFO    ] Initializing speech engine...
[2026-06-22 04:43:51,923.923 INFO    ] 2026-06-22 04:43:51
[2026-06-22 04:43:52,200.200 INFO    ] 2026-06-22 04:43:52
[2026-06-22 04:43:52,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:43:52,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:43:52,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:43:52,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:43:52,667.667 INFO    ] time= 22/06/2026 04:43:52
[2026-06-22 04:43:52,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:43:52,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:43:52,815.815 INFO    ] No existing commands found in stream
[2026-06-22 04:43:57,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:43:57,830.830 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-22 04:43:59,783.783 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:43:59,786.786 INFO    ] Checking for system updates...
[2026-06-22 04:43:59,825.825 INFO    ] 200
[2026-06-22 04:43:59,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:43:59,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:43:59,884.884 INFO    ] No update needed
[2026-06-22 04:43:59,887.887 INFO    ] Checking for camera pi updates...
[2026-06-22 04:43:59,921.921 INFO    ] 200
[2026-06-22 04:43:59,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:43:59,967.967 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:44:00,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:44:00,051.051 INFO    ] No camera update needed
[2026-06-22 04:44:00,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:44:00,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:44:00,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:44:00,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:44:02,114.114 INFO    ] ================================================
[2026-06-22 04:44:02,136.136 INFO    ] Launching Daemon at Mon Jun 22 04:44:02 IST 2026
[2026-06-22 04:44:02,149.149 INFO    ] ================================================
[2026-06-22 04:44:02,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:44:02
[2026-06-22 04:44:03,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:44:03,758.758 INFO    ] Initializing speech engine...
[2026-06-22 04:44:03,767.767 INFO    ] 2026-06-22 04:44:03
[2026-06-22 04:44:04,017.017 INFO    ] 2026-06-22 04:44:04
[2026-06-22 04:44:04,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:44:04,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:44:04,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:44:04,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:44:04,385.385 INFO    ] time= 22/06/2026 04:44:04
[2026-06-22 04:44:04,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:44:04,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:44:04,574.574 INFO    ] No existing commands found in stream
[2026-06-22 04:44:09,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:44:09,595.595 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-22 04:44:12,565.565 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:44:12,568.568 INFO    ] Checking for system updates...
[2026-06-22 04:44:12,608.608 INFO    ] 200
[2026-06-22 04:44:12,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:44:12,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:44:12,668.668 INFO    ] No update needed
[2026-06-22 04:44:12,670.670 INFO    ] Checking for camera pi updates...
[2026-06-22 04:44:12,704.704 INFO    ] 200
[2026-06-22 04:44:12,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:44:12,748.748 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:44:12,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:44:12,833.833 INFO    ] No camera update needed
[2026-06-22 04:44:12,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:44:12,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:44:12,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:44:12,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:44:14,890.890 INFO    ] ================================================
[2026-06-22 04:44:14,905.905 INFO    ] Launching Daemon at Mon Jun 22 04:44:14 IST 2026
[2026-06-22 04:44:14,916.916 INFO    ] ================================================
[2026-06-22 04:44:15,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:44:15
[2026-06-22 04:44:16,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:44:16,423.423 INFO    ] Initializing speech engine...
[2026-06-22 04:44:16,436.436 INFO    ] 2026-06-22 04:44:16
[2026-06-22 04:44:16,716.716 INFO    ] 2026-06-22 04:44:16
[2026-06-22 04:44:16,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:44:17,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:44:17,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:44:17,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:44:17,462.462 INFO    ] time= 22/06/2026 04:44:17
[2026-06-22 04:44:17,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:44:17,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:44:17,684.684 INFO    ] No existing commands found in stream
[2026-06-22 04:44:22,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:44:22,703.703 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-22 04:44:26,850.850 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:44:26,852.852 INFO    ] Checking for system updates...
[2026-06-22 04:44:26,872.872 INFO    ] 200
[2026-06-22 04:44:26,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:44:26,904.904 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:44:26,906.906 INFO    ] No update needed
[2026-06-22 04:44:26,907.907 INFO    ] Checking for camera pi updates...
[2026-06-22 04:44:26,931.931 INFO    ] 200
[2026-06-22 04:44:26,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:44:26,974.974 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:44:27,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:44:27,078.078 INFO    ] No camera update needed
[2026-06-22 04:44:27,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:44:27,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:44:27,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:44:27,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:44:29,134.134 INFO    ] ================================================
[2026-06-22 04:44:29,149.149 INFO    ] Launching Daemon at Mon Jun 22 04:44:29 IST 2026
[2026-06-22 04:44:29,159.159 INFO    ] ================================================
[2026-06-22 04:44:29,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:44:29
[2026-06-22 04:44:30,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:44:30,567.567 INFO    ] Initializing speech engine...
[2026-06-22 04:44:30,591.591 INFO    ] 2026-06-22 04:44:30
[2026-06-22 04:44:30,847.847 INFO    ] 2026-06-22 04:44:30
[2026-06-22 04:44:30,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:44:31,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:44:31,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:44:31,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:44:31,222.222 INFO    ] time= 22/06/2026 04:44:31
[2026-06-22 04:44:31,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:44:31,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:44:31,299.299 INFO    ] No existing commands found in stream
[2026-06-22 04:44:36,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:44:36,320.320 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-22 04:44:40,571.571 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:44:40,574.574 INFO    ] Checking for system updates...
[2026-06-22 04:44:40,611.611 INFO    ] 200
[2026-06-22 04:44:40,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:44:40,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:44:40,681.681 INFO    ] No update needed
[2026-06-22 04:44:40,684.684 INFO    ] Checking for camera pi updates...
[2026-06-22 04:44:40,720.720 INFO    ] 200
[2026-06-22 04:44:40,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:44:40,765.765 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:44:40,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:44:40,823.823 INFO    ] No camera update needed
[2026-06-22 04:44:40,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:44:40,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:44:40,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:44:40,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:44:42,882.882 INFO    ] ================================================
[2026-06-22 04:44:42,898.898 INFO    ] Launching Daemon at Mon Jun 22 04:44:42 IST 2026
[2026-06-22 04:44:42,909.909 INFO    ] ================================================
[2026-06-22 04:44:43,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:44:43
[2026-06-22 04:44:44,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:44:44,291.291 INFO    ] Initializing speech engine...
[2026-06-22 04:44:44,314.314 INFO    ] 2026-06-22 04:44:44
[2026-06-22 04:44:44,570.570 INFO    ] 2026-06-22 04:44:44
[2026-06-22 04:44:44,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:44:44,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:44:44,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:44:44,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:44:44,948.948 INFO    ] time= 22/06/2026 04:44:44
[2026-06-22 04:44:44,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:44:44,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:44:45,025.025 INFO    ] No existing commands found in stream
[2026-06-22 04:44:50,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:44:50,040.040 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-22 04:44:50,656.656 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:44:50,658.658 INFO    ] Checking for system updates...
[2026-06-22 04:44:50,694.694 INFO    ] 200
[2026-06-22 04:44:50,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:44:50,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:44:50,760.760 INFO    ] No update needed
[2026-06-22 04:44:50,762.762 INFO    ] Checking for camera pi updates...
[2026-06-22 04:44:50,800.800 INFO    ] 200
[2026-06-22 04:44:50,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:44:50,851.851 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:44:50,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:44:50,905.905 INFO    ] No camera update needed
[2026-06-22 04:44:50,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:44:50,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:44:50,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:44:50,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:44:52,963.963 INFO    ] ================================================
[2026-06-22 04:44:52,979.979 INFO    ] Launching Daemon at Mon Jun 22 04:44:52 IST 2026
[2026-06-22 04:44:52,991.991 INFO    ] ================================================
[2026-06-22 04:44:53,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:44:53
[2026-06-22 04:44:54,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:44:54,324.324 INFO    ] Initializing speech engine...
[2026-06-22 04:44:54,334.334 INFO    ] 2026-06-22 04:44:54
[2026-06-22 04:44:54,584.584 INFO    ] 2026-06-22 04:44:54
[2026-06-22 04:44:54,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:44:54,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:44:54,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:44:55,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:44:55,205.205 INFO    ] time= 22/06/2026 04:44:55
[2026-06-22 04:44:55,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:44:55,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:44:55,379.379 INFO    ] No existing commands found in stream
[2026-06-22 04:45:00,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:45:00,407.407 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-22 04:45:03,981.981 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:45:03,983.983 INFO    ] Checking for system updates...
[2026-06-22 04:45:04,020.020 INFO    ] 200
[2026-06-22 04:45:04,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:45:04,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:45:04,078.078 INFO    ] No update needed
[2026-06-22 04:45:04,080.080 INFO    ] Checking for camera pi updates...
[2026-06-22 04:45:04,114.114 INFO    ] 200
[2026-06-22 04:45:04,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:45:04,165.165 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:45:04,255.255 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:45:04,258.258 INFO    ] No camera update needed
[2026-06-22 04:45:04,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:45:04,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:45:04,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:45:04,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:45:06,315.315 INFO    ] ================================================
[2026-06-22 04:45:06,331.331 INFO    ] Launching Daemon at Mon Jun 22 04:45:06 IST 2026
[2026-06-22 04:45:06,342.342 INFO    ] ================================================
[2026-06-22 04:45:06,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:45:06
[2026-06-22 04:45:07,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:45:07,820.820 INFO    ] Initializing speech engine...
[2026-06-22 04:45:07,825.825 INFO    ] 2026-06-22 04:45:07
[2026-06-22 04:45:08,074.074 INFO    ] 2026-06-22 04:45:08
[2026-06-22 04:45:08,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:45:08,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:45:08,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:45:08,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:45:08,532.532 INFO    ] time= 22/06/2026 04:45:08
[2026-06-22 04:45:08,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:45:08,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:45:08,690.690 INFO    ] No existing commands found in stream
[2026-06-22 04:45:13,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:45:13,706.706 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-22 04:45:17,457.457 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:45:17,459.459 INFO    ] Checking for system updates...
[2026-06-22 04:45:17,495.495 INFO    ] 200
[2026-06-22 04:45:17,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:45:17,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:45:17,553.553 INFO    ] No update needed
[2026-06-22 04:45:17,555.555 INFO    ] Checking for camera pi updates...
[2026-06-22 04:45:17,589.589 INFO    ] 200
[2026-06-22 04:45:17,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:45:17,636.636 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:45:17,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:45:17,688.688 INFO    ] No camera update needed
[2026-06-22 04:45:17,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:45:17,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:45:17,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:45:17,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:45:19,746.746 INFO    ] ================================================
[2026-06-22 04:45:19,761.761 INFO    ] Launching Daemon at Mon Jun 22 04:45:19 IST 2026
[2026-06-22 04:45:19,772.772 INFO    ] ================================================
[2026-06-22 04:45:20,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:45:20
[2026-06-22 04:45:20,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:45:21,205.205 INFO    ] Initializing speech engine...
[2026-06-22 04:45:21,217.217 INFO    ] 2026-06-22 04:45:21
[2026-06-22 04:45:21,501.501 INFO    ] 2026-06-22 04:45:21
[2026-06-22 04:45:21,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:45:21,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:45:21,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:45:21,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:45:21,932.932 INFO    ] time= 22/06/2026 04:45:21
[2026-06-22 04:45:21,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:45:22,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:45:22,094.094 INFO    ] No existing commands found in stream
[2026-06-22 04:45:27,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:45:27,109.109 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-22 04:45:29,862.862 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:45:29,865.865 INFO    ] Checking for system updates...
[2026-06-22 04:45:29,906.906 INFO    ] 200
[2026-06-22 04:45:29,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:45:29,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:45:29,966.966 INFO    ] No update needed
[2026-06-22 04:45:29,968.968 INFO    ] Checking for camera pi updates...
[2026-06-22 04:45:30,007.007 INFO    ] 200
[2026-06-22 04:45:30,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:45:30,052.052 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:45:30,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:45:30,138.138 INFO    ] No camera update needed
[2026-06-22 04:45:30,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:45:30,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:45:30,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:45:30,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:45:32,199.199 INFO    ] ================================================
[2026-06-22 04:45:32,216.216 INFO    ] Launching Daemon at Mon Jun 22 04:45:32 IST 2026
[2026-06-22 04:45:32,229.229 INFO    ] ================================================
[2026-06-22 04:45:32,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:45:32
[2026-06-22 04:45:33,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:45:33,825.825 INFO    ] Initializing speech engine...
[2026-06-22 04:45:33,838.838 INFO    ] 2026-06-22 04:45:33
[2026-06-22 04:45:34,147.147 INFO    ] 2026-06-22 04:45:34
[2026-06-22 04:45:34,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:45:34,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:45:34,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:45:34,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:45:34,656.656 INFO    ] time= 22/06/2026 04:45:34
[2026-06-22 04:45:34,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:45:34,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:45:34,788.788 INFO    ] No existing commands found in stream
[2026-06-22 04:45:39,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:45:39,817.817 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-22 04:45:42,969.969 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:45:42,972.972 INFO    ] Checking for system updates...
[2026-06-22 04:45:43,013.013 INFO    ] 200
[2026-06-22 04:45:43,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:45:43,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:45:43,071.071 INFO    ] No update needed
[2026-06-22 04:45:43,073.073 INFO    ] Checking for camera pi updates...
[2026-06-22 04:45:43,111.111 INFO    ] 200
[2026-06-22 04:45:43,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:45:43,156.156 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:45:43,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:45:43,234.234 INFO    ] No camera update needed
[2026-06-22 04:45:43,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:45:43,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:45:43,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:45:43,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:45:45,295.295 INFO    ] ================================================
[2026-06-22 04:45:45,310.310 INFO    ] Launching Daemon at Mon Jun 22 04:45:45 IST 2026
[2026-06-22 04:45:45,321.321 INFO    ] ================================================
[2026-06-22 04:45:45,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:45:45
[2026-06-22 04:45:46,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:45:46,849.849 INFO    ] Initializing speech engine...
[2026-06-22 04:45:46,858.858 INFO    ] 2026-06-22 04:45:46
[2026-06-22 04:45:47,151.151 INFO    ] 2026-06-22 04:45:47
[2026-06-22 04:45:47,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:45:47,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:45:47,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:45:47,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:45:47,750.750 INFO    ] time= 22/06/2026 04:45:47
[2026-06-22 04:45:47,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:45:47,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:45:47,839.839 INFO    ] No existing commands found in stream
[2026-06-22 04:45:52,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:45:52,855.855 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-22 04:45:55,120.120 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:45:55,123.123 INFO    ] Checking for system updates...
[2026-06-22 04:45:55,159.159 INFO    ] 200
[2026-06-22 04:45:55,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:45:55,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:45:55,216.216 INFO    ] No update needed
[2026-06-22 04:45:55,219.219 INFO    ] Checking for camera pi updates...
[2026-06-22 04:45:55,257.257 INFO    ] 200
[2026-06-22 04:45:55,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:45:55,299.299 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:45:55,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:45:55,396.396 INFO    ] No camera update needed
[2026-06-22 04:45:55,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:45:55,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:45:55,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:45:55,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:45:57,451.451 INFO    ] ================================================
[2026-06-22 04:45:57,467.467 INFO    ] Launching Daemon at Mon Jun 22 04:45:57 IST 2026
[2026-06-22 04:45:57,478.478 INFO    ] ================================================
[2026-06-22 04:45:58,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:45:58
[2026-06-22 04:45:58,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:45:58,931.931 INFO    ] Initializing speech engine...
[2026-06-22 04:45:58,943.943 INFO    ] 2026-06-22 04:45:58
[2026-06-22 04:45:59,216.216 INFO    ] 2026-06-22 04:45:59
[2026-06-22 04:45:59,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:45:59,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:45:59,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:45:59,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:45:59,662.662 INFO    ] time= 22/06/2026 04:45:59
[2026-06-22 04:45:59,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:45:59,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:45:59,822.822 INFO    ] No existing commands found in stream
[2026-06-22 04:46:04,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:46:04,837.837 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-22 04:46:07,396.396 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:46:07,397.397 INFO    ] Checking for system updates...
[2026-06-22 04:46:07,419.419 INFO    ] 200
[2026-06-22 04:46:07,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:46:07,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:46:07,457.457 INFO    ] No update needed
[2026-06-22 04:46:07,458.458 INFO    ] Checking for camera pi updates...
[2026-06-22 04:46:07,479.479 INFO    ] 200
[2026-06-22 04:46:07,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:46:07,504.504 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:46:07,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:46:07,586.586 INFO    ] No camera update needed
[2026-06-22 04:46:07,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:46:07,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:46:07,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:46:07,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:46:09,643.643 INFO    ] ================================================
[2026-06-22 04:46:09,658.658 INFO    ] Launching Daemon at Mon Jun 22 04:46:09 IST 2026
[2026-06-22 04:46:09,669.669 INFO    ] ================================================
[2026-06-22 04:46:10,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:46:10
[2026-06-22 04:46:11,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:46:11,375.375 INFO    ] Initializing speech engine...
[2026-06-22 04:46:11,381.381 INFO    ] 2026-06-22 04:46:11
[2026-06-22 04:46:11,669.669 INFO    ] 2026-06-22 04:46:11
[2026-06-22 04:46:11,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:46:11,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:46:11,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:46:12,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:46:12,130.130 INFO    ] time= 22/06/2026 04:46:12
[2026-06-22 04:46:12,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:46:12,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:46:12,258.258 INFO    ] No existing commands found in stream
[2026-06-22 04:46:17,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:46:17,274.274 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-22 04:46:19,042.042 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:46:19,044.044 INFO    ] Checking for system updates...
[2026-06-22 04:46:19,066.066 INFO    ] 200
[2026-06-22 04:46:19,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:46:19,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:46:19,102.102 INFO    ] No update needed
[2026-06-22 04:46:19,103.103 INFO    ] Checking for camera pi updates...
[2026-06-22 04:46:19,134.134 INFO    ] 200
[2026-06-22 04:46:19,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:46:19,179.179 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:46:19,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:46:19,260.260 INFO    ] No camera update needed
[2026-06-22 04:46:19,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:46:19,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:46:19,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:46:19,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:46:21,320.320 INFO    ] ================================================
[2026-06-22 04:46:21,337.337 INFO    ] Launching Daemon at Mon Jun 22 04:46:21 IST 2026
[2026-06-22 04:46:21,348.348 INFO    ] ================================================
[2026-06-22 04:46:21,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:46:21
[2026-06-22 04:46:22,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:46:22,778.778 INFO    ] Initializing speech engine...
[2026-06-22 04:46:22,799.799 INFO    ] 2026-06-22 04:46:22
[2026-06-22 04:46:23,059.059 INFO    ] 2026-06-22 04:46:23
[2026-06-22 04:46:23,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:46:23,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:46:23,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:46:23,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:46:23,438.438 INFO    ] time= 22/06/2026 04:46:23
[2026-06-22 04:46:23,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:46:23,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:46:23,613.613 INFO    ] No existing commands found in stream
[2026-06-22 04:46:28,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:46:28,641.641 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-22 04:46:30,918.918 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:46:30,920.920 INFO    ] Checking for system updates...
[2026-06-22 04:46:30,957.957 INFO    ] 200
[2026-06-22 04:46:30,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:46:31,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:46:31,023.023 INFO    ] No update needed
[2026-06-22 04:46:31,026.026 INFO    ] Checking for camera pi updates...
[2026-06-22 04:46:31,062.062 INFO    ] 200
[2026-06-22 04:46:31,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:46:31,112.112 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:46:31,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:46:31,188.188 INFO    ] No camera update needed
[2026-06-22 04:46:31,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:46:31,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:46:31,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:46:31,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:46:33,246.246 INFO    ] ================================================
[2026-06-22 04:46:33,269.269 INFO    ] Launching Daemon at Mon Jun 22 04:46:33 IST 2026
[2026-06-22 04:46:33,282.282 INFO    ] ================================================
[2026-06-22 04:46:33,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:46:33
[2026-06-22 04:46:34,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:46:34,906.906 INFO    ] Initializing speech engine...
[2026-06-22 04:46:34,912.912 INFO    ] 2026-06-22 04:46:34
[2026-06-22 04:46:35,186.186 INFO    ] 2026-06-22 04:46:35
[2026-06-22 04:46:35,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:46:35,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:46:35,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:46:35,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:46:35,531.531 INFO    ] time= 22/06/2026 04:46:35
[2026-06-22 04:46:35,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:46:35,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:46:35,643.643 INFO    ] No existing commands found in stream
[2026-06-22 04:46:40,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:46:40,695.695 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-22 04:46:42,647.647 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:46:42,649.649 INFO    ] Checking for system updates...
[2026-06-22 04:46:42,686.686 INFO    ] 200
[2026-06-22 04:46:42,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:46:42,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:46:42,746.746 INFO    ] No update needed
[2026-06-22 04:46:42,748.748 INFO    ] Checking for camera pi updates...
[2026-06-22 04:46:42,782.782 INFO    ] 200
[2026-06-22 04:46:42,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:46:42,825.825 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:46:42,894.894 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:46:42,897.897 INFO    ] No camera update needed
[2026-06-22 04:46:42,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:46:42,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:46:42,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:46:42,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:46:44,953.953 INFO    ] ================================================
[2026-06-22 04:46:44,972.972 INFO    ] Launching Daemon at Mon Jun 22 04:46:44 IST 2026
[2026-06-22 04:46:44,984.984 INFO    ] ================================================
[2026-06-22 04:46:45,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:46:45
[2026-06-22 04:46:46,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:46:46,542.542 INFO    ] Initializing speech engine...
[2026-06-22 04:46:46,549.549 INFO    ] 2026-06-22 04:46:46
[2026-06-22 04:46:46,812.812 INFO    ] 2026-06-22 04:46:46
[2026-06-22 04:46:46,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:46:47,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:46:47,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:46:47,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:46:47,543.543 INFO    ] time= 22/06/2026 04:46:47
[2026-06-22 04:46:47,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:46:47,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:46:47,755.755 INFO    ] No existing commands found in stream
[2026-06-22 04:46:52,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:46:52,776.776 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-22 04:46:54,576.576 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:46:54,578.578 INFO    ] Checking for system updates...
[2026-06-22 04:46:54,599.599 INFO    ] 200
[2026-06-22 04:46:54,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:46:54,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:46:54,645.645 INFO    ] No update needed
[2026-06-22 04:46:54,647.647 INFO    ] Checking for camera pi updates...
[2026-06-22 04:46:54,681.681 INFO    ] 200
[2026-06-22 04:46:54,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:46:54,725.725 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:46:54,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:46:54,807.807 INFO    ] No camera update needed
[2026-06-22 04:46:54,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:46:54,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:46:54,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:46:54,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:46:56,864.864 INFO    ] ================================================
[2026-06-22 04:46:56,880.880 INFO    ] Launching Daemon at Mon Jun 22 04:46:56 IST 2026
[2026-06-22 04:46:56,891.891 INFO    ] ================================================
[2026-06-22 04:46:57,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:46:57
[2026-06-22 04:46:58,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:46:58,434.434 INFO    ] Initializing speech engine...
[2026-06-22 04:46:58,440.440 INFO    ] 2026-06-22 04:46:58
[2026-06-22 04:46:58,717.717 INFO    ] 2026-06-22 04:46:58
[2026-06-22 04:46:58,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:46:59,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:46:59,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:46:59,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:46:59,185.185 INFO    ] time= 22/06/2026 04:46:59
[2026-06-22 04:46:59,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:46:59,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:46:59,329.329 INFO    ] No existing commands found in stream
[2026-06-22 04:47:04,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:47:04,346.346 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-22 04:47:07,838.838 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:47:07,841.841 INFO    ] Checking for system updates...
[2026-06-22 04:47:07,881.881 INFO    ] 200
[2026-06-22 04:47:07,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:47:07,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:47:07,945.945 INFO    ] No update needed
[2026-06-22 04:47:07,947.947 INFO    ] Checking for camera pi updates...
[2026-06-22 04:47:07,992.992 INFO    ] 200
[2026-06-22 04:47:07,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:47:08,057.057 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:47:08,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:47:08,208.208 INFO    ] No camera update needed
[2026-06-22 04:47:08,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:47:08,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:47:08,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:47:08,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:47:10,263.263 INFO    ] ================================================
[2026-06-22 04:47:10,279.279 INFO    ] Launching Daemon at Mon Jun 22 04:47:10 IST 2026
[2026-06-22 04:47:10,290.290 INFO    ] ================================================
[2026-06-22 04:47:10,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:47:10
[2026-06-22 04:47:11,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:47:11,627.627 INFO    ] Initializing speech engine...
[2026-06-22 04:47:11,637.637 INFO    ] 2026-06-22 04:47:11
[2026-06-22 04:47:11,886.886 INFO    ] 2026-06-22 04:47:11
[2026-06-22 04:47:11,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:47:12,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:47:12,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:47:12,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:47:12,352.352 INFO    ] time= 22/06/2026 04:47:12
[2026-06-22 04:47:12,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:47:12,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:47:12,516.516 INFO    ] No existing commands found in stream
[2026-06-22 04:47:17,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:47:17,530.530 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-22 04:47:18,415.415 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:47:18,418.418 INFO    ] Checking for system updates...
[2026-06-22 04:47:18,453.453 INFO    ] 200
[2026-06-22 04:47:18,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:47:18,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:47:18,513.513 INFO    ] No update needed
[2026-06-22 04:47:18,516.516 INFO    ] Checking for camera pi updates...
[2026-06-22 04:47:18,558.558 INFO    ] 200
[2026-06-22 04:47:18,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:47:18,611.611 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:47:18,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:47:18,671.671 INFO    ] No camera update needed
[2026-06-22 04:47:18,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:47:18,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:47:18,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:47:18,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:47:20,729.729 INFO    ] ================================================
[2026-06-22 04:47:20,745.745 INFO    ] Launching Daemon at Mon Jun 22 04:47:20 IST 2026
[2026-06-22 04:47:20,756.756 INFO    ] ================================================
[2026-06-22 04:47:21,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:47:21
[2026-06-22 04:47:21,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:47:22,207.207 INFO    ] Initializing speech engine...
[2026-06-22 04:47:22,215.215 INFO    ] 2026-06-22 04:47:22
[2026-06-22 04:47:22,509.509 INFO    ] 2026-06-22 04:47:22
[2026-06-22 04:47:22,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:47:22,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:47:22,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:47:22,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:47:22,959.959 INFO    ] time= 22/06/2026 04:47:22
[2026-06-22 04:47:23,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:47:23,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:47:23,115.115 INFO    ] No existing commands found in stream
[2026-06-22 04:47:28,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:47:28,131.131 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-22 04:47:32,039.039 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:47:32,043.043 INFO    ] Checking for system updates...
[2026-06-22 04:47:32,084.084 INFO    ] 200
[2026-06-22 04:47:32,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:47:32,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:47:32,156.156 INFO    ] No update needed
[2026-06-22 04:47:32,160.160 INFO    ] Checking for camera pi updates...
[2026-06-22 04:47:32,201.201 INFO    ] 200
[2026-06-22 04:47:32,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:47:32,255.255 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:47:32,345.345 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:47:32,348.348 INFO    ] No camera update needed
[2026-06-22 04:47:32,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:47:32,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:47:32,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:47:32,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:47:34,411.411 INFO    ] ================================================
[2026-06-22 04:47:34,427.427 INFO    ] Launching Daemon at Mon Jun 22 04:47:34 IST 2026
[2026-06-22 04:47:34,442.442 INFO    ] ================================================
[2026-06-22 04:47:35,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:47:35
[2026-06-22 04:47:35,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:47:35,819.819 INFO    ] Initializing speech engine...
[2026-06-22 04:47:35,828.828 INFO    ] 2026-06-22 04:47:35
[2026-06-22 04:47:36,080.080 INFO    ] 2026-06-22 04:47:36
[2026-06-22 04:47:36,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:47:36,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:47:36,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:47:36,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:47:36,462.462 INFO    ] time= 22/06/2026 04:47:36
[2026-06-22 04:47:36,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:47:36,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:47:36,627.627 INFO    ] No existing commands found in stream
[2026-06-22 04:47:41,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:47:41,650.650 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-22 04:47:45,151.151 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:47:45,154.154 INFO    ] Checking for system updates...
[2026-06-22 04:47:45,191.191 INFO    ] 200
[2026-06-22 04:47:45,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:47:45,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:47:45,261.261 INFO    ] No update needed
[2026-06-22 04:47:45,264.264 INFO    ] Checking for camera pi updates...
[2026-06-22 04:47:45,298.298 INFO    ] 200
[2026-06-22 04:47:45,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:47:45,341.341 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:47:45,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:47:45,431.431 INFO    ] No camera update needed
[2026-06-22 04:47:45,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:47:45,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:47:45,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:47:45,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:47:47,487.487 INFO    ] ================================================
[2026-06-22 04:47:47,503.503 INFO    ] Launching Daemon at Mon Jun 22 04:47:47 IST 2026
[2026-06-22 04:47:47,514.514 INFO    ] ================================================
[2026-06-22 04:47:48,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:47:48
[2026-06-22 04:47:48,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:47:48,928.928 INFO    ] Initializing speech engine...
[2026-06-22 04:47:48,935.935 INFO    ] 2026-06-22 04:47:48
[2026-06-22 04:47:49,238.238 INFO    ] 2026-06-22 04:47:49
[2026-06-22 04:47:49,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:47:49,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:47:49,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:47:49,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:47:49,617.617 INFO    ] time= 22/06/2026 04:47:49
[2026-06-22 04:47:49,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:47:49,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:47:49,733.733 INFO    ] No existing commands found in stream
[2026-06-22 04:47:54,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:47:54,771.771 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-22 04:47:57,640.640 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:47:57,642.642 INFO    ] Checking for system updates...
[2026-06-22 04:47:57,679.679 INFO    ] 200
[2026-06-22 04:47:57,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:47:57,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:47:57,748.748 INFO    ] No update needed
[2026-06-22 04:47:57,750.750 INFO    ] Checking for camera pi updates...
[2026-06-22 04:47:57,785.785 INFO    ] 200
[2026-06-22 04:47:57,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:47:57,827.827 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:47:57,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:47:57,929.929 INFO    ] No camera update needed
[2026-06-22 04:47:57,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:47:57,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:47:57,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:47:57,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:47:59,987.987 INFO    ] ================================================
[2026-06-22 04:48:00,003.003 INFO    ] Launching Daemon at Mon Jun 22 04:47:59 IST 2026
[2026-06-22 04:48:00,013.013 INFO    ] ================================================
[2026-06-22 04:48:00,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:48:00
[2026-06-22 04:48:01,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:48:01,572.572 INFO    ] Initializing speech engine...
[2026-06-22 04:48:01,586.586 INFO    ] 2026-06-22 04:48:01
[2026-06-22 04:48:01,939.939 INFO    ] 2026-06-22 04:48:01
[2026-06-22 04:48:02,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:48:02,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:48:02,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:48:02,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:48:02,421.421 INFO    ] time= 22/06/2026 04:48:02
[2026-06-22 04:48:02,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:48:02,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:48:02,551.551 INFO    ] No existing commands found in stream
[2026-06-22 04:48:07,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:48:07,589.589 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-22 04:48:10,011.011 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:48:10,013.013 INFO    ] Checking for system updates...
[2026-06-22 04:48:10,050.050 INFO    ] 200
[2026-06-22 04:48:10,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:48:10,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:48:10,112.112 INFO    ] No update needed
[2026-06-22 04:48:10,115.115 INFO    ] Checking for camera pi updates...
[2026-06-22 04:48:10,149.149 INFO    ] 200
[2026-06-22 04:48:10,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:48:10,202.202 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:48:10,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:48:10,283.283 INFO    ] No camera update needed
[2026-06-22 04:48:10,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:48:10,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:48:10,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:48:10,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:48:12,340.340 INFO    ] ================================================
[2026-06-22 04:48:12,356.356 INFO    ] Launching Daemon at Mon Jun 22 04:48:12 IST 2026
[2026-06-22 04:48:12,367.367 INFO    ] ================================================
[2026-06-22 04:48:12,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:48:12
[2026-06-22 04:48:13,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:48:13,696.696 INFO    ] Initializing speech engine...
[2026-06-22 04:48:13,710.710 INFO    ] 2026-06-22 04:48:13
[2026-06-22 04:48:13,979.979 INFO    ] 2026-06-22 04:48:13
[2026-06-22 04:48:14,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:48:14,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:48:14,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:48:14,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:48:14,426.426 INFO    ] time= 22/06/2026 04:48:14
[2026-06-22 04:48:14,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:48:14,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:48:14,612.612 INFO    ] No existing commands found in stream
[2026-06-22 04:48:19,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:48:19,627.627 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-22 04:48:20,771.771 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:48:20,772.772 INFO    ] Checking for system updates...
[2026-06-22 04:48:20,794.794 INFO    ] 200
[2026-06-22 04:48:20,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:48:20,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:48:20,852.852 INFO    ] No update needed
[2026-06-22 04:48:20,854.854 INFO    ] Checking for camera pi updates...
[2026-06-22 04:48:20,888.888 INFO    ] 200
[2026-06-22 04:48:20,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:48:20,932.932 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:48:21,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:48:21,009.009 INFO    ] No camera update needed
[2026-06-22 04:48:21,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:48:21,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:48:21,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:48:21,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:48:23,067.067 INFO    ] ================================================
[2026-06-22 04:48:23,083.083 INFO    ] Launching Daemon at Mon Jun 22 04:48:23 IST 2026
[2026-06-22 04:48:23,093.093 INFO    ] ================================================
[2026-06-22 04:48:23,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:48:23
[2026-06-22 04:48:24,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:48:24,458.458 INFO    ] Initializing speech engine...
[2026-06-22 04:48:24,467.467 INFO    ] 2026-06-22 04:48:24
[2026-06-22 04:48:24,726.726 INFO    ] 2026-06-22 04:48:24
[2026-06-22 04:48:24,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:48:25,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:48:25,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:48:25,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:48:25,199.199 INFO    ] time= 22/06/2026 04:48:25
[2026-06-22 04:48:25,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:48:25,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:48:25,339.339 INFO    ] No existing commands found in stream
[2026-06-22 04:48:30,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:48:30,353.353 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-22 04:48:34,736.736 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:48:34,739.739 INFO    ] Checking for system updates...
[2026-06-22 04:48:34,780.780 INFO    ] 200
[2026-06-22 04:48:34,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:48:34,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:48:34,840.840 INFO    ] No update needed
[2026-06-22 04:48:34,843.843 INFO    ] Checking for camera pi updates...
[2026-06-22 04:48:34,880.880 INFO    ] 200
[2026-06-22 04:48:34,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:48:34,930.930 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:48:35,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:48:35,006.006 INFO    ] No camera update needed
[2026-06-22 04:48:35,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:48:35,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:48:35,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:48:35,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:48:37,068.068 INFO    ] ================================================
[2026-06-22 04:48:37,084.084 INFO    ] Launching Daemon at Mon Jun 22 04:48:37 IST 2026
[2026-06-22 04:48:37,095.095 INFO    ] ================================================
[2026-06-22 04:48:37,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:48:37
[2026-06-22 04:48:38,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:48:38,563.563 INFO    ] Initializing speech engine...
[2026-06-22 04:48:38,568.568 INFO    ] 2026-06-22 04:48:38
[2026-06-22 04:48:38,820.820 INFO    ] 2026-06-22 04:48:38
[2026-06-22 04:48:38,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:48:39,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:48:39,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:48:39,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:48:39,162.162 INFO    ] time= 22/06/2026 04:48:39
[2026-06-22 04:48:39,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:48:39,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:48:39,275.275 INFO    ] No existing commands found in stream
[2026-06-22 04:48:44,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:48:44,290.290 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-22 04:48:45,141.141 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:48:45,144.144 INFO    ] Checking for system updates...
[2026-06-22 04:48:45,186.186 INFO    ] 200
[2026-06-22 04:48:45,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:48:45,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:48:45,246.246 INFO    ] No update needed
[2026-06-22 04:48:45,249.249 INFO    ] Checking for camera pi updates...
[2026-06-22 04:48:45,288.288 INFO    ] 200
[2026-06-22 04:48:45,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:48:45,334.334 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:48:45,407.407 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:48:45,410.410 INFO    ] No camera update needed
[2026-06-22 04:48:45,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:48:45,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:48:45,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:48:45,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:48:47,470.470 INFO    ] ================================================
[2026-06-22 04:48:47,486.486 INFO    ] Launching Daemon at Mon Jun 22 04:48:47 IST 2026
[2026-06-22 04:48:47,497.497 INFO    ] ================================================
[2026-06-22 04:48:48,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:48:48
[2026-06-22 04:48:48,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:48:48,943.943 INFO    ] Initializing speech engine...
[2026-06-22 04:48:48,957.957 INFO    ] 2026-06-22 04:48:48
[2026-06-22 04:48:49,247.247 INFO    ] 2026-06-22 04:48:49
[2026-06-22 04:48:49,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:48:49,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:48:49,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:48:49,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:48:49,607.607 INFO    ] time= 22/06/2026 04:48:49
[2026-06-22 04:48:49,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:48:49,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:48:49,703.703 INFO    ] No existing commands found in stream
[2026-06-22 04:48:54,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:48:54,742.742 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-22 04:48:58,161.161 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:48:58,164.164 INFO    ] Checking for system updates...
[2026-06-22 04:48:58,200.200 INFO    ] 200
[2026-06-22 04:48:58,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:48:58,254.254 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:48:58,257.257 INFO    ] No update needed
[2026-06-22 04:48:58,259.259 INFO    ] Checking for camera pi updates...
[2026-06-22 04:48:58,293.293 INFO    ] 200
[2026-06-22 04:48:58,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:48:58,337.337 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:48:58,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:48:58,419.419 INFO    ] No camera update needed
[2026-06-22 04:48:58,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:48:58,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:48:58,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:48:58,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:49:00,476.476 INFO    ] ================================================
[2026-06-22 04:49:00,492.492 INFO    ] Launching Daemon at Mon Jun 22 04:49:00 IST 2026
[2026-06-22 04:49:00,504.504 INFO    ] ================================================
[2026-06-22 04:49:01,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:49:01
[2026-06-22 04:49:01,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:49:02,166.166 INFO    ] Initializing speech engine...
[2026-06-22 04:49:02,226.226 INFO    ] 2026-06-22 04:49:02
[2026-06-22 04:49:02,581.581 INFO    ] 2026-06-22 04:49:02
[2026-06-22 04:49:02,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:49:02,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:49:02,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:49:03,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:49:03,067.067 INFO    ] time= 22/06/2026 04:49:03
[2026-06-22 04:49:03,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:49:03,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:49:03,203.203 INFO    ] No existing commands found in stream
[2026-06-22 04:49:08,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:49:08,246.246 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-22 04:49:09,422.422 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:49:09,423.423 INFO    ] Checking for system updates...
[2026-06-22 04:49:09,465.465 INFO    ] 200
[2026-06-22 04:49:09,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:49:09,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:49:09,526.526 INFO    ] No update needed
[2026-06-22 04:49:09,529.529 INFO    ] Checking for camera pi updates...
[2026-06-22 04:49:09,563.563 INFO    ] 200
[2026-06-22 04:49:09,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:49:09,606.606 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:49:09,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:49:09,797.797 INFO    ] No camera update needed
[2026-06-22 04:49:09,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:49:09,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:49:09,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:49:09,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:49:11,861.861 INFO    ] ================================================
[2026-06-22 04:49:11,878.878 INFO    ] Launching Daemon at Mon Jun 22 04:49:11 IST 2026
[2026-06-22 04:49:11,889.889 INFO    ] ================================================
[2026-06-22 04:49:12,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:49:12
[2026-06-22 04:49:13,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:49:13,649.649 INFO    ] Initializing speech engine...
[2026-06-22 04:49:13,657.657 INFO    ] 2026-06-22 04:49:13
[2026-06-22 04:49:13,941.941 INFO    ] 2026-06-22 04:49:13
[2026-06-22 04:49:13,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:49:14,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:49:14,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:49:14,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:49:14,301.301 INFO    ] time= 22/06/2026 04:49:14
[2026-06-22 04:49:14,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:49:14,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:49:14,496.496 INFO    ] No existing commands found in stream
[2026-06-22 04:49:19,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:49:19,509.509 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-22 04:49:23,012.012 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:49:23,015.015 INFO    ] Checking for system updates...
[2026-06-22 04:49:23,051.051 INFO    ] 200
[2026-06-22 04:49:23,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:49:23,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:49:23,115.115 INFO    ] No update needed
[2026-06-22 04:49:23,118.118 INFO    ] Checking for camera pi updates...
[2026-06-22 04:49:23,152.152 INFO    ] 200
[2026-06-22 04:49:23,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:49:23,201.201 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:49:23,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:49:23,332.332 INFO    ] No camera update needed
[2026-06-22 04:49:23,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:49:23,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:49:23,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:49:23,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:49:25,388.388 INFO    ] ================================================
[2026-06-22 04:49:25,403.403 INFO    ] Launching Daemon at Mon Jun 22 04:49:25 IST 2026
[2026-06-22 04:49:25,414.414 INFO    ] ================================================
[2026-06-22 04:49:25,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:49:25
[2026-06-22 04:49:26,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:49:26,767.767 INFO    ] Initializing speech engine...
[2026-06-22 04:49:26,777.777 INFO    ] 2026-06-22 04:49:26
[2026-06-22 04:49:27,022.022 INFO    ] 2026-06-22 04:49:27
[2026-06-22 04:49:27,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:49:27,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:49:27,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:49:27,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:49:27,516.516 INFO    ] time= 22/06/2026 04:49:27
[2026-06-22 04:49:27,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:49:27,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:49:27,724.724 INFO    ] No existing commands found in stream
[2026-06-22 04:49:32,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:49:32,746.746 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-22 04:49:35,048.048 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:49:35,051.051 INFO    ] Checking for system updates...
[2026-06-22 04:49:35,089.089 INFO    ] 200
[2026-06-22 04:49:35,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:49:35,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:49:35,154.154 INFO    ] No update needed
[2026-06-22 04:49:35,157.157 INFO    ] Checking for camera pi updates...
[2026-06-22 04:49:35,192.192 INFO    ] 200
[2026-06-22 04:49:35,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:49:35,243.243 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:49:35,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:49:35,305.305 INFO    ] No camera update needed
[2026-06-22 04:49:35,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:49:35,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:49:35,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:49:35,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:49:37,368.368 INFO    ] ================================================
[2026-06-22 04:49:37,384.384 INFO    ] Launching Daemon at Mon Jun 22 04:49:37 IST 2026
[2026-06-22 04:49:37,395.395 INFO    ] ================================================
[2026-06-22 04:49:37,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:49:37
[2026-06-22 04:49:38,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:49:38,770.770 INFO    ] Initializing speech engine...
[2026-06-22 04:49:38,778.778 INFO    ] 2026-06-22 04:49:38
[2026-06-22 04:49:39,078.078 INFO    ] 2026-06-22 04:49:39
[2026-06-22 04:49:39,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:49:39,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:49:39,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:49:39,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:49:39,435.435 INFO    ] time= 22/06/2026 04:49:39
[2026-06-22 04:49:39,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:49:39,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:49:39,512.512 INFO    ] No existing commands found in stream
[2026-06-22 04:49:44,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:49:44,525.525 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-22 04:49:47,961.961 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:49:47,964.964 INFO    ] Checking for system updates...
[2026-06-22 04:49:48,000.000 INFO    ] 200
[2026-06-22 04:49:48,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:49:48,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:49:48,058.058 INFO    ] No update needed
[2026-06-22 04:49:48,061.061 INFO    ] Checking for camera pi updates...
[2026-06-22 04:49:48,094.094 INFO    ] 200
[2026-06-22 04:49:48,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:49:48,137.137 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:49:48,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:49:48,221.221 INFO    ] No camera update needed
[2026-06-22 04:49:48,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:49:48,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:49:48,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:49:48,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:49:50,276.276 INFO    ] ================================================
[2026-06-22 04:49:50,292.292 INFO    ] Launching Daemon at Mon Jun 22 04:49:50 IST 2026
[2026-06-22 04:49:50,303.303 INFO    ] ================================================
[2026-06-22 04:49:50,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:49:50
[2026-06-22 04:49:51,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:49:51,679.679 INFO    ] Initializing speech engine...
[2026-06-22 04:49:51,705.705 INFO    ] 2026-06-22 04:49:51
[2026-06-22 04:49:51,979.979 INFO    ] 2026-06-22 04:49:51
[2026-06-22 04:49:52,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:49:52,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:49:52,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:49:52,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:49:52,335.335 INFO    ] time= 22/06/2026 04:49:52
[2026-06-22 04:49:52,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:49:52,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:49:52,412.412 INFO    ] No existing commands found in stream
[2026-06-22 04:49:57,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:49:57,428.428 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-22 04:49:58,267.267 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:49:58,270.270 INFO    ] Checking for system updates...
[2026-06-22 04:49:58,306.306 INFO    ] 200
[2026-06-22 04:49:58,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:49:58,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:49:58,368.368 INFO    ] No update needed
[2026-06-22 04:49:58,370.370 INFO    ] Checking for camera pi updates...
[2026-06-22 04:49:58,404.404 INFO    ] 200
[2026-06-22 04:49:58,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:49:58,448.448 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:49:58,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:49:58,558.558 INFO    ] No camera update needed
[2026-06-22 04:49:58,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:49:58,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:49:58,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:49:58,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:50:00,614.614 INFO    ] ================================================
[2026-06-22 04:50:00,629.629 INFO    ] Launching Daemon at Mon Jun 22 04:50:00 IST 2026
[2026-06-22 04:50:00,641.641 INFO    ] ================================================
[2026-06-22 04:50:01,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:50:01
[2026-06-22 04:50:01,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:50:02,834.834 INFO    ] Initializing speech engine...
[2026-06-22 04:50:02,838.838 INFO    ] 2026-06-22 04:50:02
[2026-06-22 04:50:03,145.145 INFO    ] 2026-06-22 04:50:03
[2026-06-22 04:50:03,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:50:03,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:50:03,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:50:03,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:50:03,479.479 INFO    ] time= 22/06/2026 04:50:03
[2026-06-22 04:50:03,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:50:03,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:50:03,572.572 INFO    ] No existing commands found in stream
[2026-06-22 04:50:08,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:50:08,589.589 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-22 04:50:12,366.366 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:50:12,368.368 INFO    ] Checking for system updates...
[2026-06-22 04:50:12,408.408 INFO    ] 200
[2026-06-22 04:50:12,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:50:12,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:50:12,470.470 INFO    ] No update needed
[2026-06-22 04:50:12,472.472 INFO    ] Checking for camera pi updates...
[2026-06-22 04:50:12,509.509 INFO    ] 200
[2026-06-22 04:50:12,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:50:12,552.552 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:50:12,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:50:12,637.637 INFO    ] No camera update needed
[2026-06-22 04:50:12,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:50:12,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:50:12,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:50:12,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:50:14,693.693 INFO    ] ================================================
[2026-06-22 04:50:14,708.708 INFO    ] Launching Daemon at Mon Jun 22 04:50:14 IST 2026
[2026-06-22 04:50:14,720.720 INFO    ] ================================================
[2026-06-22 04:50:15,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:50:15
[2026-06-22 04:50:15,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:50:16,190.190 INFO    ] Initializing speech engine...
[2026-06-22 04:50:16,199.199 INFO    ] 2026-06-22 04:50:16
[2026-06-22 04:50:16,450.450 INFO    ] 2026-06-22 04:50:16
[2026-06-22 04:50:16,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:50:17,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:50:17,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:50:17,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:50:17,574.574 INFO    ] time= 22/06/2026 04:50:17
[2026-06-22 04:50:17,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:50:17,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:50:17,682.682 INFO    ] No existing commands found in stream
[2026-06-22 04:50:22,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:50:22,695.695 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-22 04:50:23,916.916 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:50:23,919.919 INFO    ] Checking for system updates...
[2026-06-22 04:50:23,958.958 INFO    ] 200
[2026-06-22 04:50:23,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:50:24,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:50:24,022.022 INFO    ] No update needed
[2026-06-22 04:50:24,024.024 INFO    ] Checking for camera pi updates...
[2026-06-22 04:50:24,059.059 INFO    ] 200
[2026-06-22 04:50:24,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:50:24,108.108 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:50:24,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:50:24,211.211 INFO    ] No camera update needed
[2026-06-22 04:50:24,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:50:24,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:50:24,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:50:24,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:50:26,270.270 INFO    ] ================================================
[2026-06-22 04:50:26,285.285 INFO    ] Launching Daemon at Mon Jun 22 04:50:26 IST 2026
[2026-06-22 04:50:26,296.296 INFO    ] ================================================
[2026-06-22 04:50:26,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:50:26
[2026-06-22 04:50:27,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:50:27,629.629 INFO    ] Initializing speech engine...
[2026-06-22 04:50:27,638.638 INFO    ] 2026-06-22 04:50:27
[2026-06-22 04:50:27,884.884 INFO    ] 2026-06-22 04:50:27
[2026-06-22 04:50:27,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:50:28,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:50:28,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:50:28,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:50:28,375.375 INFO    ] time= 22/06/2026 04:50:28
[2026-06-22 04:50:28,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:50:28,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:50:28,501.501 INFO    ] No existing commands found in stream
[2026-06-22 04:50:33,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:50:33,516.516 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-22 04:50:34,960.960 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:50:34,963.963 INFO    ] Checking for system updates...
[2026-06-22 04:50:34,999.999 INFO    ] 200
[2026-06-22 04:50:35,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:50:35,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:50:35,060.060 INFO    ] No update needed
[2026-06-22 04:50:35,063.063 INFO    ] Checking for camera pi updates...
[2026-06-22 04:50:35,100.100 INFO    ] 200
[2026-06-22 04:50:35,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:50:35,144.144 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:50:35,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:50:35,247.247 INFO    ] No camera update needed
[2026-06-22 04:50:35,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:50:35,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:50:35,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:50:35,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:50:37,313.313 INFO    ] ================================================
[2026-06-22 04:50:37,328.328 INFO    ] Launching Daemon at Mon Jun 22 04:50:37 IST 2026
[2026-06-22 04:50:37,338.338 INFO    ] ================================================
[2026-06-22 04:50:37,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:50:37
[2026-06-22 04:50:38,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:50:38,710.710 INFO    ] Initializing speech engine...
[2026-06-22 04:50:38,717.717 INFO    ] 2026-06-22 04:50:38
[2026-06-22 04:50:38,979.979 INFO    ] 2026-06-22 04:50:38
[2026-06-22 04:50:39,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:50:39,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:50:39,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:50:39,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:50:39,434.434 INFO    ] time= 22/06/2026 04:50:39
[2026-06-22 04:50:39,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:50:39,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:50:39,582.582 INFO    ] No existing commands found in stream
[2026-06-22 04:50:44,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:50:44,597.597 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-22 04:50:48,387.387 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:50:48,389.389 INFO    ] Checking for system updates...
[2026-06-22 04:50:48,415.415 INFO    ] 200
[2026-06-22 04:50:48,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:50:48,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:50:48,478.478 INFO    ] No update needed
[2026-06-22 04:50:48,480.480 INFO    ] Checking for camera pi updates...
[2026-06-22 04:50:48,526.526 INFO    ] 200
[2026-06-22 04:50:48,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:50:48,569.569 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:50:48,650.650 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:50:48,652.652 INFO    ] No camera update needed
[2026-06-22 04:50:48,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:50:48,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:50:48,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:50:48,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:50:50,711.711 INFO    ] ================================================
[2026-06-22 04:50:50,726.726 INFO    ] Launching Daemon at Mon Jun 22 04:50:50 IST 2026
[2026-06-22 04:50:50,737.737 INFO    ] ================================================
[2026-06-22 04:50:51,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:50:51
[2026-06-22 04:50:51,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:50:52,211.211 INFO    ] Initializing speech engine...
[2026-06-22 04:50:52,219.219 INFO    ] 2026-06-22 04:50:52
[2026-06-22 04:50:52,538.538 INFO    ] 2026-06-22 04:50:52
[2026-06-22 04:50:52,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:50:52,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:50:52,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:50:52,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:50:52,978.978 INFO    ] time= 22/06/2026 04:50:52
[2026-06-22 04:50:53,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:50:53,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:50:53,117.117 INFO    ] No existing commands found in stream
[2026-06-22 04:50:58,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:50:58,132.132 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-22 04:51:00,017.017 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:51:00,019.019 INFO    ] Checking for system updates...
[2026-06-22 04:51:00,056.056 INFO    ] 200
[2026-06-22 04:51:00,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:51:00,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:51:00,124.124 INFO    ] No update needed
[2026-06-22 04:51:00,127.127 INFO    ] Checking for camera pi updates...
[2026-06-22 04:51:00,164.164 INFO    ] 200
[2026-06-22 04:51:00,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:51:00,207.207 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:51:00,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:51:00,302.302 INFO    ] No camera update needed
[2026-06-22 04:51:00,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:51:00,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:51:00,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:51:00,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:51:02,363.363 INFO    ] ================================================
[2026-06-22 04:51:02,385.385 INFO    ] Launching Daemon at Mon Jun 22 04:51:02 IST 2026
[2026-06-22 04:51:02,404.404 INFO    ] ================================================
[2026-06-22 04:51:03,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:51:03
[2026-06-22 04:51:03,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:51:04,058.058 INFO    ] Initializing speech engine...
[2026-06-22 04:51:04,075.075 INFO    ] 2026-06-22 04:51:04
[2026-06-22 04:51:04,362.362 INFO    ] 2026-06-22 04:51:04
[2026-06-22 04:51:04,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:51:04,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:51:04,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:51:04,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:51:04,810.810 INFO    ] time= 22/06/2026 04:51:04
[2026-06-22 04:51:04,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:51:04,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:51:04,889.889 INFO    ] No existing commands found in stream
[2026-06-22 04:51:09,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:51:09,912.912 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-22 04:51:10,765.765 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:51:10,767.767 INFO    ] Checking for system updates...
[2026-06-22 04:51:10,787.787 INFO    ] 200
[2026-06-22 04:51:10,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:51:10,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:51:10,843.843 INFO    ] No update needed
[2026-06-22 04:51:10,846.846 INFO    ] Checking for camera pi updates...
[2026-06-22 04:51:10,880.880 INFO    ] 200
[2026-06-22 04:51:10,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:51:10,935.935 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:51:11,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:51:11,108.108 INFO    ] No camera update needed
[2026-06-22 04:51:11,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:51:11,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:51:11,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:51:11,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:51:13,166.166 INFO    ] ================================================
[2026-06-22 04:51:13,181.181 INFO    ] Launching Daemon at Mon Jun 22 04:51:13 IST 2026
[2026-06-22 04:51:13,192.192 INFO    ] ================================================
[2026-06-22 04:51:13,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:51:13
[2026-06-22 04:51:14,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:51:14,601.601 INFO    ] Initializing speech engine...
[2026-06-22 04:51:14,624.624 INFO    ] 2026-06-22 04:51:14
[2026-06-22 04:51:14,891.891 INFO    ] 2026-06-22 04:51:14
[2026-06-22 04:51:14,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:51:15,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:51:15,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:51:15,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:51:15,247.247 INFO    ] time= 22/06/2026 04:51:15
[2026-06-22 04:51:15,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:51:15,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:51:15,366.366 INFO    ] No existing commands found in stream
[2026-06-22 04:51:20,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:51:20,382.382 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-22 04:51:20,895.895 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:51:20,896.896 INFO    ] Checking for system updates...
[2026-06-22 04:51:20,918.918 INFO    ] 200
[2026-06-22 04:51:20,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:51:20,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:51:20,951.951 INFO    ] No update needed
[2026-06-22 04:51:20,952.952 INFO    ] Checking for camera pi updates...
[2026-06-22 04:51:20,972.972 INFO    ] 200
[2026-06-22 04:51:20,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:51:21,004.004 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:51:21,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:51:21,079.079 INFO    ] No camera update needed
[2026-06-22 04:51:21,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:51:21,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:51:21,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:51:21,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:51:23,135.135 INFO    ] ================================================
[2026-06-22 04:51:23,150.150 INFO    ] Launching Daemon at Mon Jun 22 04:51:23 IST 2026
[2026-06-22 04:51:23,160.160 INFO    ] ================================================
[2026-06-22 04:51:23,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:51:23
[2026-06-22 04:51:24,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:51:24,578.578 INFO    ] Initializing speech engine...
[2026-06-22 04:51:24,584.584 INFO    ] 2026-06-22 04:51:24
[2026-06-22 04:51:24,885.885 INFO    ] 2026-06-22 04:51:24
[2026-06-22 04:51:24,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:51:25,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:51:25,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:51:25,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:51:25,254.254 INFO    ] time= 22/06/2026 04:51:25
[2026-06-22 04:51:25,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:51:25,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:51:25,444.444 INFO    ] No existing commands found in stream
[2026-06-22 04:51:30,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:51:30,468.468 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-22 04:51:34,122.122 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:51:34,125.125 INFO    ] Checking for system updates...
[2026-06-22 04:51:34,161.161 INFO    ] 200
[2026-06-22 04:51:34,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:51:34,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:51:34,221.221 INFO    ] No update needed
[2026-06-22 04:51:34,223.223 INFO    ] Checking for camera pi updates...
[2026-06-22 04:51:34,258.258 INFO    ] 200
[2026-06-22 04:51:34,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:51:34,301.301 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:51:34,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:51:34,392.392 INFO    ] No camera update needed
[2026-06-22 04:51:34,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:51:34,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:51:34,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:51:34,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:51:36,448.448 INFO    ] ================================================
[2026-06-22 04:51:36,463.463 INFO    ] Launching Daemon at Mon Jun 22 04:51:36 IST 2026
[2026-06-22 04:51:36,473.473 INFO    ] ================================================
[2026-06-22 04:51:37,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:51:36
[2026-06-22 04:51:37,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:51:37,950.950 INFO    ] Initializing speech engine...
[2026-06-22 04:51:37,970.970 INFO    ] 2026-06-22 04:51:37
[2026-06-22 04:51:38,287.287 INFO    ] 2026-06-22 04:51:38
[2026-06-22 04:51:38,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:51:38,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:51:38,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:51:38,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:51:38,741.741 INFO    ] time= 22/06/2026 04:51:38
[2026-06-22 04:51:38,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:51:38,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:51:38,936.936 INFO    ] No existing commands found in stream
[2026-06-22 04:51:43,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:51:43,968.968 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-22 04:51:47,576.576 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:51:47,579.579 INFO    ] Checking for system updates...
[2026-06-22 04:51:47,619.619 INFO    ] 200
[2026-06-22 04:51:47,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:51:47,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:51:47,678.678 INFO    ] No update needed
[2026-06-22 04:51:47,680.680 INFO    ] Checking for camera pi updates...
[2026-06-22 04:51:47,719.719 INFO    ] 200
[2026-06-22 04:51:47,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:51:47,762.762 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:51:47,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:51:47,867.867 INFO    ] No camera update needed
[2026-06-22 04:51:47,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:51:47,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:51:47,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:51:47,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:51:49,925.925 INFO    ] ================================================
[2026-06-22 04:51:49,941.941 INFO    ] Launching Daemon at Mon Jun 22 04:51:49 IST 2026
[2026-06-22 04:51:49,951.951 INFO    ] ================================================
[2026-06-22 04:51:50,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:51:50
[2026-06-22 04:51:51,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:51:51,641.641 INFO    ] Initializing speech engine...
[2026-06-22 04:51:51,653.653 INFO    ] 2026-06-22 04:51:51
[2026-06-22 04:51:51,922.922 INFO    ] 2026-06-22 04:51:51
[2026-06-22 04:51:51,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:51:52,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:51:52,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:51:52,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:51:52,434.434 INFO    ] time= 22/06/2026 04:51:52
[2026-06-22 04:51:52,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:51:52,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:51:52,630.630 INFO    ] No existing commands found in stream
[2026-06-22 04:51:57,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:51:57,664.664 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-22 04:52:01,925.925 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:52:01,928.928 INFO    ] Checking for system updates...
[2026-06-22 04:52:02,000.000 INFO    ] 200
[2026-06-22 04:52:02,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:52:02,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:52:02,094.094 INFO    ] No update needed
[2026-06-22 04:52:02,098.098 INFO    ] Checking for camera pi updates...
[2026-06-22 04:52:02,142.142 INFO    ] 200
[2026-06-22 04:52:02,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:52:02,207.207 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:52:02,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:52:02,276.276 INFO    ] No camera update needed
[2026-06-22 04:52:02,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:52:02,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:52:02,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:52:02,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:52:04,364.364 INFO    ] ================================================
[2026-06-22 04:52:04,379.379 INFO    ] Launching Daemon at Mon Jun 22 04:52:04 IST 2026
[2026-06-22 04:52:04,389.389 INFO    ] ================================================
[2026-06-22 04:52:04,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:52:04
[2026-06-22 04:52:05,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:52:05,854.854 INFO    ] Initializing speech engine...
[2026-06-22 04:52:05,863.863 INFO    ] 2026-06-22 04:52:05
[2026-06-22 04:52:06,126.126 INFO    ] 2026-06-22 04:52:06
[2026-06-22 04:52:06,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:52:06,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:52:06,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:52:06,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:52:06,626.626 INFO    ] time= 22/06/2026 04:52:06
[2026-06-22 04:52:06,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:52:06,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:52:06,718.718 INFO    ] No existing commands found in stream
[2026-06-22 04:52:11,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:52:11,734.734 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-22 04:52:15,022.022 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:52:15,025.025 INFO    ] Checking for system updates...
[2026-06-22 04:52:15,063.063 INFO    ] 200
[2026-06-22 04:52:15,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:52:15,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:52:15,135.135 INFO    ] No update needed
[2026-06-22 04:52:15,138.138 INFO    ] Checking for camera pi updates...
[2026-06-22 04:52:15,173.173 INFO    ] 200
[2026-06-22 04:52:15,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:52:15,216.216 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:52:15,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:52:15,288.288 INFO    ] No camera update needed
[2026-06-22 04:52:15,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:52:15,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:52:15,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:52:15,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:52:17,346.346 INFO    ] ================================================
[2026-06-22 04:52:17,361.361 INFO    ] Launching Daemon at Mon Jun 22 04:52:17 IST 2026
[2026-06-22 04:52:17,372.372 INFO    ] ================================================
[2026-06-22 04:52:18,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:52:18
[2026-06-22 04:52:18,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:52:18,952.952 INFO    ] Initializing speech engine...
[2026-06-22 04:52:18,966.966 INFO    ] 2026-06-22 04:52:18
[2026-06-22 04:52:19,278.278 INFO    ] 2026-06-22 04:52:19
[2026-06-22 04:52:19,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:52:19,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:52:19,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:52:19,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:52:19,711.711 INFO    ] time= 22/06/2026 04:52:19
[2026-06-22 04:52:19,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:52:19,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:52:19,875.875 INFO    ] No existing commands found in stream
[2026-06-22 04:52:24,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:52:24,913.913 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-22 04:52:29,074.074 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:52:29,076.076 INFO    ] Checking for system updates...
[2026-06-22 04:52:29,106.106 INFO    ] 200
[2026-06-22 04:52:29,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:52:29,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:52:29,178.178 INFO    ] No update needed
[2026-06-22 04:52:29,181.181 INFO    ] Checking for camera pi updates...
[2026-06-22 04:52:29,216.216 INFO    ] 200
[2026-06-22 04:52:29,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:52:29,268.268 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:52:29,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:52:29,356.356 INFO    ] No camera update needed
[2026-06-22 04:52:29,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:52:29,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:52:29,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:52:29,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:52:31,411.411 INFO    ] ================================================
[2026-06-22 04:52:31,426.426 INFO    ] Launching Daemon at Mon Jun 22 04:52:31 IST 2026
[2026-06-22 04:52:31,436.436 INFO    ] ================================================
[2026-06-22 04:52:32,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:52:32
[2026-06-22 04:52:32,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:52:32,933.933 INFO    ] Initializing speech engine...
[2026-06-22 04:52:32,951.951 INFO    ] 2026-06-22 04:52:32
[2026-06-22 04:52:33,250.250 INFO    ] 2026-06-22 04:52:33
[2026-06-22 04:52:33,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:52:33,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:52:33,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:52:33,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:52:33,632.632 INFO    ] time= 22/06/2026 04:52:33
[2026-06-22 04:52:33,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:52:33,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:52:33,717.717 INFO    ] No existing commands found in stream
[2026-06-22 04:52:38,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:52:38,735.735 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-22 04:52:39,641.641 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:52:39,643.643 INFO    ] Checking for system updates...
[2026-06-22 04:52:39,680.680 INFO    ] 200
[2026-06-22 04:52:39,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:52:39,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:52:39,746.746 INFO    ] No update needed
[2026-06-22 04:52:39,748.748 INFO    ] Checking for camera pi updates...
[2026-06-22 04:52:39,783.783 INFO    ] 200
[2026-06-22 04:52:39,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:52:39,832.832 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:52:39,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:52:39,942.942 INFO    ] No camera update needed
[2026-06-22 04:52:39,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:52:39,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:52:39,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:52:39,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:52:42,998.998 INFO    ] ================================================
[2026-06-22 04:52:42,013.013 INFO    ] Launching Daemon at Mon Jun 22 04:52:42 IST 2026
[2026-06-22 04:52:42,024.024 INFO    ] ================================================
[2026-06-22 04:52:42,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:52:42
[2026-06-22 04:52:43,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:52:43,358.358 INFO    ] Initializing speech engine...
[2026-06-22 04:52:43,367.367 INFO    ] 2026-06-22 04:52:43
[2026-06-22 04:52:43,614.614 INFO    ] 2026-06-22 04:52:43
[2026-06-22 04:52:43,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:52:43,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:52:43,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:52:43,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:52:43,984.984 INFO    ] time= 22/06/2026 04:52:43
[2026-06-22 04:52:43,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:52:44,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:52:44,158.158 INFO    ] No existing commands found in stream
[2026-06-22 04:52:49,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:52:49,191.191 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-22 04:52:50,419.419 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:52:50,421.421 INFO    ] Checking for system updates...
[2026-06-22 04:52:50,457.457 INFO    ] 200
[2026-06-22 04:52:50,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:52:50,517.517 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:52:50,519.519 INFO    ] No update needed
[2026-06-22 04:52:50,521.521 INFO    ] Checking for camera pi updates...
[2026-06-22 04:52:50,555.555 INFO    ] 200
[2026-06-22 04:52:50,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:52:50,598.598 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:52:50,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:52:50,651.651 INFO    ] No camera update needed
[2026-06-22 04:52:50,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:52:50,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:52:50,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:52:50,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:52:52,709.709 INFO    ] ================================================
[2026-06-22 04:52:52,725.725 INFO    ] Launching Daemon at Mon Jun 22 04:52:52 IST 2026
[2026-06-22 04:52:52,736.736 INFO    ] ================================================
[2026-06-22 04:52:53,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:52:53
[2026-06-22 04:52:53,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:52:54,077.077 INFO    ] Initializing speech engine...
[2026-06-22 04:52:54,084.084 INFO    ] 2026-06-22 04:52:54
[2026-06-22 04:52:54,343.343 INFO    ] 2026-06-22 04:52:54
[2026-06-22 04:52:54,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:52:54,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:52:54,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:52:54,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:52:54,889.889 INFO    ] time= 22/06/2026 04:52:54
[2026-06-22 04:52:54,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:52:54,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:52:55,035.035 INFO    ] No existing commands found in stream
[2026-06-22 04:53:00,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:53:00,059.059 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-22 04:53:01,246.246 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:53:01,249.249 INFO    ] Checking for system updates...
[2026-06-22 04:53:01,292.292 INFO    ] 200
[2026-06-22 04:53:01,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:53:01,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:53:01,362.362 INFO    ] No update needed
[2026-06-22 04:53:01,365.365 INFO    ] Checking for camera pi updates...
[2026-06-22 04:53:01,400.400 INFO    ] 200
[2026-06-22 04:53:01,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:53:01,465.465 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:53:01,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:53:01,578.578 INFO    ] No camera update needed
[2026-06-22 04:53:01,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:53:01,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:53:01,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:53:01,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:53:03,645.645 INFO    ] ================================================
[2026-06-22 04:53:03,661.661 INFO    ] Launching Daemon at Mon Jun 22 04:53:03 IST 2026
[2026-06-22 04:53:03,672.672 INFO    ] ================================================
[2026-06-22 04:53:04,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:53:04
[2026-06-22 04:53:04,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:53:05,102.102 INFO    ] Initializing speech engine...
[2026-06-22 04:53:05,111.111 INFO    ] 2026-06-22 04:53:05
[2026-06-22 04:53:05,387.387 INFO    ] 2026-06-22 04:53:05
[2026-06-22 04:53:05,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:53:05,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:53:05,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:53:05,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:53:05,765.765 INFO    ] time= 22/06/2026 04:53:05
[2026-06-22 04:53:05,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:53:05,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:53:05,945.945 INFO    ] No existing commands found in stream
[2026-06-22 04:53:10,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:53:10,973.973 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-22 04:53:13,908.908 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:53:13,910.910 INFO    ] Checking for system updates...
[2026-06-22 04:53:13,951.951 INFO    ] 200
[2026-06-22 04:53:13,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:53:14,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:53:14,010.010 INFO    ] No update needed
[2026-06-22 04:53:14,012.012 INFO    ] Checking for camera pi updates...
[2026-06-22 04:53:14,045.045 INFO    ] 200
[2026-06-22 04:53:14,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:53:14,089.089 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:53:14,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:53:14,262.262 INFO    ] No camera update needed
[2026-06-22 04:53:14,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:53:14,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:53:14,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:53:14,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:53:16,317.317 INFO    ] ================================================
[2026-06-22 04:53:16,334.334 INFO    ] Launching Daemon at Mon Jun 22 04:53:16 IST 2026
[2026-06-22 04:53:16,345.345 INFO    ] ================================================
[2026-06-22 04:53:16,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:53:16
[2026-06-22 04:53:17,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:53:17,759.759 INFO    ] Initializing speech engine...
[2026-06-22 04:53:17,768.768 INFO    ] 2026-06-22 04:53:17
[2026-06-22 04:53:18,016.016 INFO    ] 2026-06-22 04:53:18
[2026-06-22 04:53:18,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:53:18,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:53:18,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:53:18,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:53:18,373.373 INFO    ] time= 22/06/2026 04:53:18
[2026-06-22 04:53:18,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:53:18,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:53:18,475.475 INFO    ] No existing commands found in stream
[2026-06-22 04:53:23,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:53:23,503.503 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-22 04:53:25,362.362 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:53:25,365.365 INFO    ] Checking for system updates...
[2026-06-22 04:53:25,401.401 INFO    ] 200
[2026-06-22 04:53:25,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:53:25,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:53:25,459.459 INFO    ] No update needed
[2026-06-22 04:53:25,461.461 INFO    ] Checking for camera pi updates...
[2026-06-22 04:53:25,495.495 INFO    ] 200
[2026-06-22 04:53:25,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:53:25,539.539 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:53:25,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:53:25,629.629 INFO    ] No camera update needed
[2026-06-22 04:53:25,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:53:25,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:53:25,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:53:25,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:53:27,686.686 INFO    ] ================================================
[2026-06-22 04:53:27,708.708 INFO    ] Launching Daemon at Mon Jun 22 04:53:27 IST 2026
[2026-06-22 04:53:27,720.720 INFO    ] ================================================
[2026-06-22 04:53:28,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:53:28
[2026-06-22 04:53:28,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:53:29,148.148 INFO    ] Initializing speech engine...
[2026-06-22 04:53:29,157.157 INFO    ] 2026-06-22 04:53:29
[2026-06-22 04:53:29,418.418 INFO    ] 2026-06-22 04:53:29
[2026-06-22 04:53:29,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:53:29,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:53:29,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:53:29,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:53:29,771.771 INFO    ] time= 22/06/2026 04:53:29
[2026-06-22 04:53:29,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:53:29,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:53:29,890.890 INFO    ] No existing commands found in stream
[2026-06-22 04:53:34,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:53:34,906.906 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-22 04:53:35,897.897 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:53:35,898.898 INFO    ] Checking for system updates...
[2026-06-22 04:53:35,919.919 INFO    ] 200
[2026-06-22 04:53:35,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:53:35,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:53:35,957.957 INFO    ] No update needed
[2026-06-22 04:53:35,958.958 INFO    ] Checking for camera pi updates...
[2026-06-22 04:53:35,977.977 INFO    ] 200
[2026-06-22 04:53:35,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:53:36,019.019 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:53:36,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:53:36,113.113 INFO    ] No camera update needed
[2026-06-22 04:53:36,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:53:36,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:53:36,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:53:36,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:53:38,171.171 INFO    ] ================================================
[2026-06-22 04:53:38,188.188 INFO    ] Launching Daemon at Mon Jun 22 04:53:38 IST 2026
[2026-06-22 04:53:38,200.200 INFO    ] ================================================
[2026-06-22 04:53:38,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:53:38
[2026-06-22 04:53:39,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:53:39,661.661 INFO    ] Initializing speech engine...
[2026-06-22 04:53:39,674.674 INFO    ] 2026-06-22 04:53:39
[2026-06-22 04:53:39,967.967 INFO    ] 2026-06-22 04:53:39
[2026-06-22 04:53:40,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:53:40,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:53:40,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:53:40,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:53:40,336.336 INFO    ] time= 22/06/2026 04:53:40
[2026-06-22 04:53:40,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:53:40,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:53:40,436.436 INFO    ] No existing commands found in stream
[2026-06-22 04:53:45,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:53:45,474.474 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-22 04:53:48,231.231 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:53:48,233.233 INFO    ] Checking for system updates...
[2026-06-22 04:53:48,270.270 INFO    ] 200
[2026-06-22 04:53:48,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:53:48,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:53:48,335.335 INFO    ] No update needed
[2026-06-22 04:53:48,338.338 INFO    ] Checking for camera pi updates...
[2026-06-22 04:53:48,372.372 INFO    ] 200
[2026-06-22 04:53:48,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:53:48,420.420 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:53:48,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:53:48,535.535 INFO    ] No camera update needed
[2026-06-22 04:53:48,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:53:48,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:53:48,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:53:48,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:53:50,591.591 INFO    ] ================================================
[2026-06-22 04:53:50,608.608 INFO    ] Launching Daemon at Mon Jun 22 04:53:50 IST 2026
[2026-06-22 04:53:50,618.618 INFO    ] ================================================
[2026-06-22 04:53:51,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:53:51
[2026-06-22 04:53:51,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:53:52,071.071 INFO    ] Initializing speech engine...
[2026-06-22 04:53:52,086.086 INFO    ] 2026-06-22 04:53:52
[2026-06-22 04:53:52,369.369 INFO    ] 2026-06-22 04:53:52
[2026-06-22 04:53:52,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:53:52,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:53:52,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:53:52,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:53:52,751.751 INFO    ] time= 22/06/2026 04:53:52
[2026-06-22 04:53:52,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:53:52,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:53:52,944.944 INFO    ] No existing commands found in stream
[2026-06-22 04:53:57,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:53:57,964.964 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-22 04:54:01,918.918 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:54:01,921.921 INFO    ] Checking for system updates...
[2026-06-22 04:54:01,961.961 INFO    ] 200
[2026-06-22 04:54:01,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:54:02,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:54:02,027.027 INFO    ] No update needed
[2026-06-22 04:54:02,030.030 INFO    ] Checking for camera pi updates...
[2026-06-22 04:54:02,070.070 INFO    ] 200
[2026-06-22 04:54:02,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:54:02,127.127 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:54:02,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:54:02,183.183 INFO    ] No camera update needed
[2026-06-22 04:54:02,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:54:02,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:54:02,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:54:02,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:54:04,247.247 INFO    ] ================================================
[2026-06-22 04:54:04,262.262 INFO    ] Launching Daemon at Mon Jun 22 04:54:04 IST 2026
[2026-06-22 04:54:04,273.273 INFO    ] ================================================
[2026-06-22 04:54:04,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:54:04
[2026-06-22 04:54:05,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:54:05,685.685 INFO    ] Initializing speech engine...
[2026-06-22 04:54:05,700.700 INFO    ] 2026-06-22 04:54:05
[2026-06-22 04:54:05,969.969 INFO    ] 2026-06-22 04:54:05
[2026-06-22 04:54:06,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:54:06,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:54:06,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:54:06,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:54:06,370.370 INFO    ] time= 22/06/2026 04:54:06
[2026-06-22 04:54:06,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:54:06,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:54:06,545.545 INFO    ] No existing commands found in stream
[2026-06-22 04:54:11,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:54:11,574.574 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-22 04:54:14,918.918 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:54:14,921.921 INFO    ] Checking for system updates...
[2026-06-22 04:54:14,963.963 INFO    ] 200
[2026-06-22 04:54:14,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:54:15,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:54:15,024.024 INFO    ] No update needed
[2026-06-22 04:54:15,026.026 INFO    ] Checking for camera pi updates...
[2026-06-22 04:54:15,060.060 INFO    ] 200
[2026-06-22 04:54:15,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:54:15,104.104 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:54:15,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:54:15,190.190 INFO    ] No camera update needed
[2026-06-22 04:54:15,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:54:15,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:54:15,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:54:15,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:54:17,246.246 INFO    ] ================================================
[2026-06-22 04:54:17,262.262 INFO    ] Launching Daemon at Mon Jun 22 04:54:17 IST 2026
[2026-06-22 04:54:17,273.273 INFO    ] ================================================
[2026-06-22 04:54:17,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:54:17
[2026-06-22 04:54:18,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:54:18,643.643 INFO    ] Initializing speech engine...
[2026-06-22 04:54:18,650.650 INFO    ] 2026-06-22 04:54:18
[2026-06-22 04:54:18,910.910 INFO    ] 2026-06-22 04:54:18
[2026-06-22 04:54:18,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:54:19,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:54:19,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:54:19,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:54:19,268.268 INFO    ] time= 22/06/2026 04:54:19
[2026-06-22 04:54:19,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:54:19,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:54:19,430.430 INFO    ] No existing commands found in stream
[2026-06-22 04:54:24,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:54:24,459.459 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-22 04:54:27,816.816 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:54:27,819.819 INFO    ] Checking for system updates...
[2026-06-22 04:54:27,859.859 INFO    ] 200
[2026-06-22 04:54:27,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:54:27,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:54:27,917.917 INFO    ] No update needed
[2026-06-22 04:54:27,923.923 INFO    ] Checking for camera pi updates...
[2026-06-22 04:54:27,965.965 INFO    ] 200
[2026-06-22 04:54:27,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:54:28,011.011 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:54:28,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:54:28,108.108 INFO    ] No camera update needed
[2026-06-22 04:54:28,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:54:28,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:54:28,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:54:28,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:54:30,165.165 INFO    ] ================================================
[2026-06-22 04:54:30,180.180 INFO    ] Launching Daemon at Mon Jun 22 04:54:30 IST 2026
[2026-06-22 04:54:30,191.191 INFO    ] ================================================
[2026-06-22 04:54:30,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:54:30
[2026-06-22 04:54:31,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:54:31,608.608 INFO    ] Initializing speech engine...
[2026-06-22 04:54:31,616.616 INFO    ] 2026-06-22 04:54:31
[2026-06-22 04:54:31,885.885 INFO    ] 2026-06-22 04:54:31
[2026-06-22 04:54:31,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:54:32,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:54:32,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:54:32,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:54:32,283.283 INFO    ] time= 22/06/2026 04:54:32
[2026-06-22 04:54:32,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:54:32,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:54:32,471.471 INFO    ] No existing commands found in stream
[2026-06-22 04:54:37,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:54:37,498.498 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-22 04:54:41,442.442 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 04:54:41,444.444 INFO    ] Checking for system updates...
[2026-06-22 04:54:41,482.482 INFO    ] 200
[2026-06-22 04:54:41,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:54:41,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:54:41,541.541 INFO    ] No update needed
[2026-06-22 04:54:41,543.543 INFO    ] Checking for camera pi updates...
[2026-06-22 04:54:41,577.577 INFO    ] 200
[2026-06-22 04:54:41,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:54:41,621.621 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:54:41,683.683 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:54:41,686.686 INFO    ] No camera update needed
[2026-06-22 04:54:41,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:54:41,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:54:41,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:54:41,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:54:43,748.748 INFO    ] ================================================
[2026-06-22 04:54:43,763.763 INFO    ] Launching Daemon at Mon Jun 22 04:54:43 IST 2026
[2026-06-22 04:54:43,774.774 INFO    ] ================================================
[2026-06-22 04:54:44,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:54:44
[2026-06-22 04:54:44,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:54:45,208.208 INFO    ] Initializing speech engine...
[2026-06-22 04:54:45,217.217 INFO    ] 2026-06-22 04:54:45
[2026-06-22 04:54:45,492.492 INFO    ] 2026-06-22 04:54:45
[2026-06-22 04:54:45,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:54:45,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:54:45,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:54:45,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:54:45,993.993 INFO    ] time= 22/06/2026 04:54:45
[2026-06-22 04:54:46,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:54:46,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:54:46,123.123 INFO    ] No existing commands found in stream
[2026-06-22 04:54:51,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:54:51,140.140 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-22 04:54:51,933.933 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:54:51,934.934 INFO    ] Checking for system updates...
[2026-06-22 04:54:51,959.959 INFO    ] 200
[2026-06-22 04:54:51,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:54:52,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:54:52,025.025 INFO    ] No update needed
[2026-06-22 04:54:52,029.029 INFO    ] Checking for camera pi updates...
[2026-06-22 04:54:52,064.064 INFO    ] 200
[2026-06-22 04:54:52,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:54:52,108.108 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:54:52,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:54:52,225.225 INFO    ] No camera update needed
[2026-06-22 04:54:52,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:54:52,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:54:52,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:54:52,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:54:54,284.284 INFO    ] ================================================
[2026-06-22 04:54:54,300.300 INFO    ] Launching Daemon at Mon Jun 22 04:54:54 IST 2026
[2026-06-22 04:54:54,311.311 INFO    ] ================================================
[2026-06-22 04:54:54,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:54:54
[2026-06-22 04:54:55,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:54:55,658.658 INFO    ] Initializing speech engine...
[2026-06-22 04:54:55,671.671 INFO    ] 2026-06-22 04:54:55
[2026-06-22 04:54:55,926.926 INFO    ] 2026-06-22 04:54:55
[2026-06-22 04:54:55,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:54:56,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:54:56,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:54:56,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:54:56,368.368 INFO    ] time= 22/06/2026 04:54:56
[2026-06-22 04:54:56,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:54:56,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:54:56,522.522 INFO    ] No existing commands found in stream
[2026-06-22 04:55:01,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:55:01,553.553 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-22 04:55:04,525.525 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:55:04,528.528 INFO    ] Checking for system updates...
[2026-06-22 04:55:04,568.568 INFO    ] 200
[2026-06-22 04:55:04,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:55:04,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:55:04,633.633 INFO    ] No update needed
[2026-06-22 04:55:04,635.635 INFO    ] Checking for camera pi updates...
[2026-06-22 04:55:04,670.670 INFO    ] 200
[2026-06-22 04:55:04,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:55:04,713.713 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:55:04,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:55:04,791.791 INFO    ] No camera update needed
[2026-06-22 04:55:04,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:55:04,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:55:04,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:55:04,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:55:06,848.848 INFO    ] ================================================
[2026-06-22 04:55:06,863.863 INFO    ] Launching Daemon at Mon Jun 22 04:55:06 IST 2026
[2026-06-22 04:55:06,874.874 INFO    ] ================================================
[2026-06-22 04:55:07,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:55:07
[2026-06-22 04:55:08,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:55:08,373.373 INFO    ] Initializing speech engine...
[2026-06-22 04:55:08,382.382 INFO    ] 2026-06-22 04:55:08
[2026-06-22 04:55:08,640.640 INFO    ] 2026-06-22 04:55:08
[2026-06-22 04:55:08,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:55:08,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:55:08,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:55:09,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:55:09,093.093 INFO    ] time= 22/06/2026 04:55:09
[2026-06-22 04:55:09,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:55:09,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:55:09,244.244 INFO    ] No existing commands found in stream
[2026-06-22 04:55:14,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:55:14,259.259 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-22 04:55:17,604.604 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:55:17,607.607 INFO    ] Checking for system updates...
[2026-06-22 04:55:17,643.643 INFO    ] 200
[2026-06-22 04:55:17,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:55:17,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:55:17,710.710 INFO    ] No update needed
[2026-06-22 04:55:17,712.712 INFO    ] Checking for camera pi updates...
[2026-06-22 04:55:17,746.746 INFO    ] 200
[2026-06-22 04:55:17,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:55:17,790.790 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:55:17,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:55:17,971.971 INFO    ] No camera update needed
[2026-06-22 04:55:17,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:55:17,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:55:17,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:55:17,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:55:20,027.027 INFO    ] ================================================
[2026-06-22 04:55:20,043.043 INFO    ] Launching Daemon at Mon Jun 22 04:55:20 IST 2026
[2026-06-22 04:55:20,053.053 INFO    ] ================================================
[2026-06-22 04:55:20,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:55:20
[2026-06-22 04:55:21,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:55:21,603.603 INFO    ] Initializing speech engine...
[2026-06-22 04:55:21,616.616 INFO    ] 2026-06-22 04:55:21
[2026-06-22 04:55:21,903.903 INFO    ] 2026-06-22 04:55:21
[2026-06-22 04:55:21,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:55:22,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:55:22,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:55:22,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:55:22,365.365 INFO    ] time= 22/06/2026 04:55:22
[2026-06-22 04:55:22,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:55:22,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:55:22,537.537 INFO    ] No existing commands found in stream
[2026-06-22 04:55:27,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:55:27,551.551 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-22 04:55:31,665.665 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:55:31,668.668 INFO    ] Checking for system updates...
[2026-06-22 04:55:31,706.706 INFO    ] 200
[2026-06-22 04:55:31,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:55:31,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:55:31,776.776 INFO    ] No update needed
[2026-06-22 04:55:31,779.779 INFO    ] Checking for camera pi updates...
[2026-06-22 04:55:31,819.819 INFO    ] 200
[2026-06-22 04:55:31,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:55:31,876.876 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:55:31,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:55:31,938.938 INFO    ] No camera update needed
[2026-06-22 04:55:31,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:55:31,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:55:31,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:55:31,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:55:34,001.001 INFO    ] ================================================
[2026-06-22 04:55:34,016.016 INFO    ] Launching Daemon at Mon Jun 22 04:55:34 IST 2026
[2026-06-22 04:55:34,028.028 INFO    ] ================================================
[2026-06-22 04:55:34,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:55:34
[2026-06-22 04:55:35,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:55:35,480.480 INFO    ] Initializing speech engine...
[2026-06-22 04:55:35,489.489 INFO    ] 2026-06-22 04:55:35
[2026-06-22 04:55:35,738.738 INFO    ] 2026-06-22 04:55:35
[2026-06-22 04:55:35,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:55:35,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:55:36,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:55:36,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:55:36,189.189 INFO    ] time= 22/06/2026 04:55:36
[2026-06-22 04:55:36,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:55:36,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:55:36,350.350 INFO    ] No existing commands found in stream
[2026-06-22 04:55:41,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:55:41,366.366 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-22 04:55:42,233.233 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:55:42,235.235 INFO    ] Checking for system updates...
[2026-06-22 04:55:42,255.255 INFO    ] 200
[2026-06-22 04:55:42,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:55:42,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:55:42,291.291 INFO    ] No update needed
[2026-06-22 04:55:42,292.292 INFO    ] Checking for camera pi updates...
[2026-06-22 04:55:42,328.328 INFO    ] 200
[2026-06-22 04:55:42,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:55:42,373.373 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:55:42,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:55:42,452.452 INFO    ] No camera update needed
[2026-06-22 04:55:42,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:55:42,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:55:42,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:55:42,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:55:44,511.511 INFO    ] ================================================
[2026-06-22 04:55:44,527.527 INFO    ] Launching Daemon at Mon Jun 22 04:55:44 IST 2026
[2026-06-22 04:55:44,538.538 INFO    ] ================================================
[2026-06-22 04:55:45,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:55:45
[2026-06-22 04:55:45,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:55:46,012.012 INFO    ] Initializing speech engine...
[2026-06-22 04:55:46,019.019 INFO    ] 2026-06-22 04:55:46
[2026-06-22 04:55:46,281.281 INFO    ] 2026-06-22 04:55:46
[2026-06-22 04:55:46,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:55:47,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:55:47,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:55:47,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:55:47,483.483 INFO    ] time= 22/06/2026 04:55:47
[2026-06-22 04:55:47,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:55:47,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:55:47,597.597 INFO    ] No existing commands found in stream
[2026-06-22 04:55:52,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:55:52,630.630 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-22 04:55:56,806.806 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:55:56,809.809 INFO    ] Checking for system updates...
[2026-06-22 04:55:56,845.845 INFO    ] 200
[2026-06-22 04:55:56,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:55:56,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:55:56,902.902 INFO    ] No update needed
[2026-06-22 04:55:56,904.904 INFO    ] Checking for camera pi updates...
[2026-06-22 04:55:56,942.942 INFO    ] 200
[2026-06-22 04:55:56,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:55:56,985.985 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:55:57,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:55:57,073.073 INFO    ] No camera update needed
[2026-06-22 04:55:57,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:55:57,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:55:57,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:55:57,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:55:59,130.130 INFO    ] ================================================
[2026-06-22 04:55:59,146.146 INFO    ] Launching Daemon at Mon Jun 22 04:55:59 IST 2026
[2026-06-22 04:55:59,157.157 INFO    ] ================================================
[2026-06-22 04:55:59,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:55:59
[2026-06-22 04:56:00,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:56:00,632.632 INFO    ] Initializing speech engine...
[2026-06-22 04:56:00,639.639 INFO    ] 2026-06-22 04:56:00
[2026-06-22 04:56:00,900.900 INFO    ] 2026-06-22 04:56:00
[2026-06-22 04:56:00,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:56:01,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:56:01,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:56:01,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:56:01,361.361 INFO    ] time= 22/06/2026 04:56:01
[2026-06-22 04:56:01,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:56:01,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:56:01,481.481 INFO    ] No existing commands found in stream
[2026-06-22 04:56:06,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:56:06,494.494 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-22 04:56:07,638.638 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:56:07,641.641 INFO    ] Checking for system updates...
[2026-06-22 04:56:07,681.681 INFO    ] 200
[2026-06-22 04:56:07,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:56:07,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:56:07,745.745 INFO    ] No update needed
[2026-06-22 04:56:07,748.748 INFO    ] Checking for camera pi updates...
[2026-06-22 04:56:07,789.789 INFO    ] 200
[2026-06-22 04:56:07,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:56:07,833.833 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:56:07,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:56:07,930.930 INFO    ] No camera update needed
[2026-06-22 04:56:07,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:56:07,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:56:07,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:56:07,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:56:09,987.987 INFO    ] ================================================
[2026-06-22 04:56:10,003.003 INFO    ] Launching Daemon at Mon Jun 22 04:56:09 IST 2026
[2026-06-22 04:56:10,013.013 INFO    ] ================================================
[2026-06-22 04:56:10,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:56:10
[2026-06-22 04:56:11,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:56:11,524.524 INFO    ] Initializing speech engine...
[2026-06-22 04:56:11,530.530 INFO    ] 2026-06-22 04:56:11
[2026-06-22 04:56:11,850.850 INFO    ] 2026-06-22 04:56:11
[2026-06-22 04:56:11,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:56:12,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:56:12,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:56:12,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:56:12,274.274 INFO    ] time= 22/06/2026 04:56:12
[2026-06-22 04:56:12,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:56:12,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:56:12,425.425 INFO    ] No existing commands found in stream
[2026-06-22 04:56:17,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:56:17,441.441 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-22 04:56:19,768.768 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:56:19,771.771 INFO    ] Checking for system updates...
[2026-06-22 04:56:19,812.812 INFO    ] 200
[2026-06-22 04:56:19,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:56:19,877.877 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:56:19,880.880 INFO    ] No update needed
[2026-06-22 04:56:19,883.883 INFO    ] Checking for camera pi updates...
[2026-06-22 04:56:19,919.919 INFO    ] 200
[2026-06-22 04:56:19,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:56:19,963.963 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:56:20,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:56:20,054.054 INFO    ] No camera update needed
[2026-06-22 04:56:20,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:56:20,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:56:20,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:56:20,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:56:22,113.113 INFO    ] ================================================
[2026-06-22 04:56:22,129.129 INFO    ] Launching Daemon at Mon Jun 22 04:56:22 IST 2026
[2026-06-22 04:56:22,141.141 INFO    ] ================================================
[2026-06-22 04:56:22,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:56:22
[2026-06-22 04:56:23,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:56:23,529.529 INFO    ] Initializing speech engine...
[2026-06-22 04:56:23,536.536 INFO    ] 2026-06-22 04:56:23
[2026-06-22 04:56:23,802.802 INFO    ] 2026-06-22 04:56:23
[2026-06-22 04:56:23,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:56:24,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:56:24,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:56:24,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:56:24,255.255 INFO    ] time= 22/06/2026 04:56:24
[2026-06-22 04:56:24,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:56:24,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:56:24,436.436 INFO    ] No existing commands found in stream
[2026-06-22 04:56:29,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:56:29,470.470 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-22 04:56:33,402.402 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:56:33,405.405 INFO    ] Checking for system updates...
[2026-06-22 04:56:33,445.445 INFO    ] 200
[2026-06-22 04:56:33,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:56:33,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:56:33,511.511 INFO    ] No update needed
[2026-06-22 04:56:33,514.514 INFO    ] Checking for camera pi updates...
[2026-06-22 04:56:33,548.548 INFO    ] 200
[2026-06-22 04:56:33,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:56:33,591.591 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:56:33,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:56:33,658.658 INFO    ] No camera update needed
[2026-06-22 04:56:33,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:56:33,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:56:33,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:56:33,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:56:35,716.716 INFO    ] ================================================
[2026-06-22 04:56:35,733.733 INFO    ] Launching Daemon at Mon Jun 22 04:56:35 IST 2026
[2026-06-22 04:56:35,743.743 INFO    ] ================================================
[2026-06-22 04:56:36,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:56:36
[2026-06-22 04:56:36,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:56:37,301.301 INFO    ] Initializing speech engine...
[2026-06-22 04:56:37,313.313 INFO    ] 2026-06-22 04:56:37
[2026-06-22 04:56:37,589.589 INFO    ] 2026-06-22 04:56:37
[2026-06-22 04:56:37,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:56:37,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:56:37,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:56:38,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:56:38,082.082 INFO    ] time= 22/06/2026 04:56:38
[2026-06-22 04:56:38,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:56:38,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:56:38,287.287 INFO    ] No existing commands found in stream
[2026-06-22 04:56:43,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:56:43,324.324 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-22 04:56:44,415.415 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:56:44,417.417 INFO    ] Checking for system updates...
[2026-06-22 04:56:44,438.438 INFO    ] 200
[2026-06-22 04:56:44,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:56:44,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:56:44,499.499 INFO    ] No update needed
[2026-06-22 04:56:44,501.501 INFO    ] Checking for camera pi updates...
[2026-06-22 04:56:44,539.539 INFO    ] 200
[2026-06-22 04:56:44,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:56:44,589.589 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:56:44,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:56:44,641.641 INFO    ] No camera update needed
[2026-06-22 04:56:44,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:56:44,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:56:44,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:56:44,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:56:46,697.697 INFO    ] ================================================
[2026-06-22 04:56:46,713.713 INFO    ] Launching Daemon at Mon Jun 22 04:56:46 IST 2026
[2026-06-22 04:56:46,724.724 INFO    ] ================================================
[2026-06-22 04:56:47,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:56:47
[2026-06-22 04:56:47,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:56:48,060.060 INFO    ] Initializing speech engine...
[2026-06-22 04:56:48,069.069 INFO    ] 2026-06-22 04:56:48
[2026-06-22 04:56:48,368.368 INFO    ] 2026-06-22 04:56:48
[2026-06-22 04:56:48,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:56:48,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:56:48,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:56:48,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:56:48,729.729 INFO    ] time= 22/06/2026 04:56:48
[2026-06-22 04:56:48,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:56:48,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:56:48,803.803 INFO    ] No existing commands found in stream
[2026-06-22 04:56:53,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:56:53,818.818 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-22 04:56:55,448.448 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:56:55,450.450 INFO    ] Checking for system updates...
[2026-06-22 04:56:55,487.487 INFO    ] 200
[2026-06-22 04:56:55,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:56:55,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:56:55,550.550 INFO    ] No update needed
[2026-06-22 04:56:55,552.552 INFO    ] Checking for camera pi updates...
[2026-06-22 04:56:55,587.587 INFO    ] 200
[2026-06-22 04:56:55,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:56:55,635.635 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:56:55,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:56:55,696.696 INFO    ] No camera update needed
[2026-06-22 04:56:55,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:56:55,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:56:55,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:56:55,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:56:57,754.754 INFO    ] ================================================
[2026-06-22 04:56:57,770.770 INFO    ] Launching Daemon at Mon Jun 22 04:56:57 IST 2026
[2026-06-22 04:56:57,781.781 INFO    ] ================================================
[2026-06-22 04:56:58,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:56:58
[2026-06-22 04:56:58,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:56:59,141.141 INFO    ] Initializing speech engine...
[2026-06-22 04:56:59,157.157 INFO    ] 2026-06-22 04:56:59
[2026-06-22 04:56:59,449.449 INFO    ] 2026-06-22 04:56:59
[2026-06-22 04:56:59,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:56:59,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:56:59,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:56:59,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:56:59,833.833 INFO    ] time= 22/06/2026 04:56:59
[2026-06-22 04:56:59,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:56:59,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:56:59,964.964 INFO    ] No existing commands found in stream
[2026-06-22 04:57:04,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:57:04,977.977 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-22 04:57:08,057.057 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:57:08,060.060 INFO    ] Checking for system updates...
[2026-06-22 04:57:08,101.101 INFO    ] 200
[2026-06-22 04:57:08,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:57:08,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:57:08,158.158 INFO    ] No update needed
[2026-06-22 04:57:08,161.161 INFO    ] Checking for camera pi updates...
[2026-06-22 04:57:08,195.195 INFO    ] 200
[2026-06-22 04:57:08,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:57:08,240.240 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:57:08,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:57:08,293.293 INFO    ] No camera update needed
[2026-06-22 04:57:08,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:57:08,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:57:08,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:57:08,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:57:10,348.348 INFO    ] ================================================
[2026-06-22 04:57:10,364.364 INFO    ] Launching Daemon at Mon Jun 22 04:57:10 IST 2026
[2026-06-22 04:57:10,376.376 INFO    ] ================================================
[2026-06-22 04:57:11,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:57:11
[2026-06-22 04:57:11,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:57:11,970.970 INFO    ] Initializing speech engine...
[2026-06-22 04:57:11,986.986 INFO    ] 2026-06-22 04:57:11
[2026-06-22 04:57:12,307.307 INFO    ] 2026-06-22 04:57:12
[2026-06-22 04:57:12,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:57:12,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:57:12,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:57:12,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:57:12,747.747 INFO    ] time= 22/06/2026 04:57:12
[2026-06-22 04:57:12,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:57:12,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:57:12,892.892 INFO    ] No existing commands found in stream
[2026-06-22 04:57:17,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:57:17,909.909 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-22 04:57:18,660.660 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:57:18,663.663 INFO    ] Checking for system updates...
[2026-06-22 04:57:18,708.708 INFO    ] 200
[2026-06-22 04:57:18,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:57:18,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:57:18,776.776 INFO    ] No update needed
[2026-06-22 04:57:18,778.778 INFO    ] Checking for camera pi updates...
[2026-06-22 04:57:18,818.818 INFO    ] 200
[2026-06-22 04:57:18,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:57:18,875.875 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:57:19,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:57:19,062.062 INFO    ] No camera update needed
[2026-06-22 04:57:19,064.064 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:57:19,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:57:19,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:57:19,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:57:21,118.118 INFO    ] ================================================
[2026-06-22 04:57:21,135.135 INFO    ] Launching Daemon at Mon Jun 22 04:57:21 IST 2026
[2026-06-22 04:57:21,147.147 INFO    ] ================================================
[2026-06-22 04:57:21,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:57:21
[2026-06-22 04:57:22,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:57:22,514.514 INFO    ] Initializing speech engine...
[2026-06-22 04:57:22,521.521 INFO    ] 2026-06-22 04:57:22
[2026-06-22 04:57:22,782.782 INFO    ] 2026-06-22 04:57:22
[2026-06-22 04:57:22,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:57:23,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:57:23,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:57:23,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:57:23,243.243 INFO    ] time= 22/06/2026 04:57:23
[2026-06-22 04:57:23,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:57:23,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:57:23,389.389 INFO    ] No existing commands found in stream
[2026-06-22 04:57:28,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:57:28,404.404 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-22 04:57:30,140.140 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:57:30,143.143 INFO    ] Checking for system updates...
[2026-06-22 04:57:30,180.180 INFO    ] 200
[2026-06-22 04:57:30,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:57:30,235.235 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:57:30,238.238 INFO    ] No update needed
[2026-06-22 04:57:30,240.240 INFO    ] Checking for camera pi updates...
[2026-06-22 04:57:30,276.276 INFO    ] 200
[2026-06-22 04:57:30,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:57:30,327.327 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:57:30,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:57:30,387.387 INFO    ] No camera update needed
[2026-06-22 04:57:30,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:57:30,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:57:30,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:57:30,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:57:32,448.448 INFO    ] ================================================
[2026-06-22 04:57:32,465.465 INFO    ] Launching Daemon at Mon Jun 22 04:57:32 IST 2026
[2026-06-22 04:57:32,478.478 INFO    ] ================================================
[2026-06-22 04:57:33,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:57:33
[2026-06-22 04:57:33,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:57:33,969.969 INFO    ] Initializing speech engine...
[2026-06-22 04:57:33,976.976 INFO    ] 2026-06-22 04:57:33
[2026-06-22 04:57:34,235.235 INFO    ] 2026-06-22 04:57:34
[2026-06-22 04:57:34,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:57:34,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:57:34,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:57:34,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:57:34,695.695 INFO    ] time= 22/06/2026 04:57:34
[2026-06-22 04:57:34,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:57:34,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:57:34,839.839 INFO    ] No existing commands found in stream
[2026-06-22 04:57:39,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:57:39,854.854 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-22 04:57:43,999.999 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:57:44,002.002 INFO    ] Checking for system updates...
[2026-06-22 04:57:44,043.043 INFO    ] 200
[2026-06-22 04:57:44,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:57:44,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:57:44,101.101 INFO    ] No update needed
[2026-06-22 04:57:44,103.103 INFO    ] Checking for camera pi updates...
[2026-06-22 04:57:44,138.138 INFO    ] 200
[2026-06-22 04:57:44,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:57:44,181.181 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:57:44,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:57:44,271.271 INFO    ] No camera update needed
[2026-06-22 04:57:44,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:57:44,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:57:44,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:57:44,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:57:46,328.328 INFO    ] ================================================
[2026-06-22 04:57:46,343.343 INFO    ] Launching Daemon at Mon Jun 22 04:57:46 IST 2026
[2026-06-22 04:57:46,354.354 INFO    ] ================================================
[2026-06-22 04:57:46,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:57:46
[2026-06-22 04:57:47,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:57:47,783.783 INFO    ] Initializing speech engine...
[2026-06-22 04:57:47,793.793 INFO    ] 2026-06-22 04:57:47
[2026-06-22 04:57:48,062.062 INFO    ] 2026-06-22 04:57:48
[2026-06-22 04:57:48,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:57:48,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:57:48,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:57:48,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:57:48,433.433 INFO    ] time= 22/06/2026 04:57:48
[2026-06-22 04:57:48,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:57:48,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:57:48,616.616 INFO    ] No existing commands found in stream
[2026-06-22 04:57:53,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:57:53,644.644 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-22 04:57:57,859.859 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:57:57,861.861 INFO    ] Checking for system updates...
[2026-06-22 04:57:57,902.902 INFO    ] 200
[2026-06-22 04:57:57,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:57:57,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:57:57,974.974 INFO    ] No update needed
[2026-06-22 04:57:57,976.976 INFO    ] Checking for camera pi updates...
[2026-06-22 04:57:58,010.010 INFO    ] 200
[2026-06-22 04:57:58,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:57:58,057.057 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:57:58,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:57:58,139.139 INFO    ] No camera update needed
[2026-06-22 04:57:58,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:57:58,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:57:58,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:57:58,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:58:00,195.195 INFO    ] ================================================
[2026-06-22 04:58:00,211.211 INFO    ] Launching Daemon at Mon Jun 22 04:58:00 IST 2026
[2026-06-22 04:58:00,221.221 INFO    ] ================================================
[2026-06-22 04:58:00,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:58:00
[2026-06-22 04:58:01,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:58:02,056.056 INFO    ] Initializing speech engine...
[2026-06-22 04:58:02,069.069 INFO    ] 2026-06-22 04:58:02
[2026-06-22 04:58:02,448.448 INFO    ] 2026-06-22 04:58:02
[2026-06-22 04:58:02,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:58:02,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:58:02,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:58:02,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:58:02,885.885 INFO    ] time= 22/06/2026 04:58:02
[2026-06-22 04:58:02,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:58:02,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:58:03,054.054 INFO    ] No existing commands found in stream
[2026-06-22 04:58:08,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:58:08,089.089 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-22 04:58:11,005.005 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:58:11,008.008 INFO    ] Checking for system updates...
[2026-06-22 04:58:11,049.049 INFO    ] 200
[2026-06-22 04:58:11,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:58:11,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:58:11,119.119 INFO    ] No update needed
[2026-06-22 04:58:11,122.122 INFO    ] Checking for camera pi updates...
[2026-06-22 04:58:11,161.161 INFO    ] 200
[2026-06-22 04:58:11,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:58:11,214.214 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:58:11,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:58:11,306.306 INFO    ] No camera update needed
[2026-06-22 04:58:11,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:58:11,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:58:11,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:58:11,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:58:13,366.366 INFO    ] ================================================
[2026-06-22 04:58:13,381.381 INFO    ] Launching Daemon at Mon Jun 22 04:58:13 IST 2026
[2026-06-22 04:58:13,392.392 INFO    ] ================================================
[2026-06-22 04:58:13,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:58:13
[2026-06-22 04:58:14,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:58:14,768.768 INFO    ] Initializing speech engine...
[2026-06-22 04:58:14,777.777 INFO    ] 2026-06-22 04:58:14
[2026-06-22 04:58:15,027.027 INFO    ] 2026-06-22 04:58:15
[2026-06-22 04:58:15,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:58:15,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:58:15,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:58:15,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:58:15,499.499 INFO    ] time= 22/06/2026 04:58:15
[2026-06-22 04:58:15,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:58:15,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:58:15,641.641 INFO    ] No existing commands found in stream
[2026-06-22 04:58:20,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:58:20,654.654 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-22 04:58:23,290.290 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:58:23,293.293 INFO    ] Checking for system updates...
[2026-06-22 04:58:23,329.329 INFO    ] 200
[2026-06-22 04:58:23,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:58:23,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:58:23,386.386 INFO    ] No update needed
[2026-06-22 04:58:23,389.389 INFO    ] Checking for camera pi updates...
[2026-06-22 04:58:23,423.423 INFO    ] 200
[2026-06-22 04:58:23,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:58:23,466.466 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:58:23,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:58:23,553.553 INFO    ] No camera update needed
[2026-06-22 04:58:23,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:58:23,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:58:23,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:58:23,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:58:25,611.611 INFO    ] ================================================
[2026-06-22 04:58:25,627.627 INFO    ] Launching Daemon at Mon Jun 22 04:58:25 IST 2026
[2026-06-22 04:58:25,638.638 INFO    ] ================================================
[2026-06-22 04:58:26,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:58:26
[2026-06-22 04:58:26,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:58:27,042.042 INFO    ] Initializing speech engine...
[2026-06-22 04:58:27,049.049 INFO    ] 2026-06-22 04:58:27
[2026-06-22 04:58:27,311.311 INFO    ] 2026-06-22 04:58:27
[2026-06-22 04:58:27,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:58:27,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:58:27,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:58:27,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:58:27,740.740 INFO    ] time= 22/06/2026 04:58:27
[2026-06-22 04:58:27,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:58:27,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:58:27,895.895 INFO    ] No existing commands found in stream
[2026-06-22 04:58:32,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:58:32,924.924 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-22 04:58:33,754.754 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 04:58:33,757.757 INFO    ] Checking for system updates...
[2026-06-22 04:58:33,794.794 INFO    ] 200
[2026-06-22 04:58:33,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:58:33,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:58:33,853.853 INFO    ] No update needed
[2026-06-22 04:58:33,856.856 INFO    ] Checking for camera pi updates...
[2026-06-22 04:58:33,890.890 INFO    ] 200
[2026-06-22 04:58:33,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:58:33,942.942 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:58:34,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:58:34,032.032 INFO    ] No camera update needed
[2026-06-22 04:58:34,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:58:34,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:58:34,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:58:34,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:58:36,092.092 INFO    ] ================================================
[2026-06-22 04:58:36,107.107 INFO    ] Launching Daemon at Mon Jun 22 04:58:36 IST 2026
[2026-06-22 04:58:36,118.118 INFO    ] ================================================
[2026-06-22 04:58:36,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:58:36
[2026-06-22 04:58:37,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:58:37,697.697 INFO    ] Initializing speech engine...
[2026-06-22 04:58:37,703.703 INFO    ] 2026-06-22 04:58:37
[2026-06-22 04:58:37,963.963 INFO    ] 2026-06-22 04:58:37
[2026-06-22 04:58:37,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:58:38,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:58:38,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:58:38,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:58:38,418.418 INFO    ] time= 22/06/2026 04:58:38
[2026-06-22 04:58:38,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:58:38,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:58:38,567.567 INFO    ] No existing commands found in stream
[2026-06-22 04:58:43,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:58:43,582.582 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-22 04:58:44,889.889 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:58:44,892.892 INFO    ] Checking for system updates...
[2026-06-22 04:58:44,933.933 INFO    ] 200
[2026-06-22 04:58:44,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:58:44,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:58:45,000.000 INFO    ] No update needed
[2026-06-22 04:58:45,003.003 INFO    ] Checking for camera pi updates...
[2026-06-22 04:58:45,047.047 INFO    ] 200
[2026-06-22 04:58:45,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:58:45,090.090 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:58:45,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:58:45,180.180 INFO    ] No camera update needed
[2026-06-22 04:58:45,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:58:45,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:58:45,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:58:45,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:58:47,238.238 INFO    ] ================================================
[2026-06-22 04:58:47,253.253 INFO    ] Launching Daemon at Mon Jun 22 04:58:47 IST 2026
[2026-06-22 04:58:47,264.264 INFO    ] ================================================
[2026-06-22 04:58:47,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:58:47
[2026-06-22 04:58:48,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:58:48,582.582 INFO    ] Initializing speech engine...
[2026-06-22 04:58:48,590.590 INFO    ] 2026-06-22 04:58:48
[2026-06-22 04:58:48,865.865 INFO    ] 2026-06-22 04:58:48
[2026-06-22 04:58:48,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:58:49,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:58:49,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:58:49,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:58:49,221.221 INFO    ] time= 22/06/2026 04:58:49
[2026-06-22 04:58:49,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:58:49,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:58:49,322.322 INFO    ] No existing commands found in stream
[2026-06-22 04:58:54,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:58:54,337.337 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-22 04:58:54,970.970 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:58:54,972.972 INFO    ] Checking for system updates...
[2026-06-22 04:58:55,013.013 INFO    ] 200
[2026-06-22 04:58:55,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:58:55,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:58:55,070.070 INFO    ] No update needed
[2026-06-22 04:58:55,073.073 INFO    ] Checking for camera pi updates...
[2026-06-22 04:58:55,106.106 INFO    ] 200
[2026-06-22 04:58:55,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:58:55,149.149 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:58:55,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:58:55,230.230 INFO    ] No camera update needed
[2026-06-22 04:58:55,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:58:55,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:58:55,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:58:55,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:58:57,291.291 INFO    ] ================================================
[2026-06-22 04:58:57,306.306 INFO    ] Launching Daemon at Mon Jun 22 04:58:57 IST 2026
[2026-06-22 04:58:57,316.316 INFO    ] ================================================
[2026-06-22 04:58:57,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:58:57
[2026-06-22 04:58:58,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:58:58,856.856 INFO    ] Initializing speech engine...
[2026-06-22 04:58:58,869.869 INFO    ] 2026-06-22 04:58:58
[2026-06-22 04:58:59,157.157 INFO    ] 2026-06-22 04:58:59
[2026-06-22 04:58:59,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:58:59,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:58:59,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:58:59,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:58:59,655.655 INFO    ] time= 22/06/2026 04:58:59
[2026-06-22 04:58:59,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:58:59,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:58:59,772.772 INFO    ] No existing commands found in stream
[2026-06-22 04:59:04,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:59:04,786.786 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-22 04:59:08,759.759 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 04:59:08,762.762 INFO    ] Checking for system updates...
[2026-06-22 04:59:08,797.797 INFO    ] 200
[2026-06-22 04:59:08,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:59:08,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:59:08,856.856 INFO    ] No update needed
[2026-06-22 04:59:08,858.858 INFO    ] Checking for camera pi updates...
[2026-06-22 04:59:08,897.897 INFO    ] 200
[2026-06-22 04:59:08,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:59:08,941.941 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:59:09,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:59:09,029.029 INFO    ] No camera update needed
[2026-06-22 04:59:09,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:59:09,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:59:09,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:59:09,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:59:11,087.087 INFO    ] ================================================
[2026-06-22 04:59:11,103.103 INFO    ] Launching Daemon at Mon Jun 22 04:59:11 IST 2026
[2026-06-22 04:59:11,113.113 INFO    ] ================================================
[2026-06-22 04:59:11,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:59:11
[2026-06-22 04:59:12,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:59:12,559.559 INFO    ] Initializing speech engine...
[2026-06-22 04:59:12,569.569 INFO    ] 2026-06-22 04:59:12
[2026-06-22 04:59:12,871.871 INFO    ] 2026-06-22 04:59:12
[2026-06-22 04:59:12,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:59:13,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:59:13,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:59:13,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:59:13,264.264 INFO    ] time= 22/06/2026 04:59:13
[2026-06-22 04:59:13,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:59:13,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:59:13,392.392 INFO    ] No existing commands found in stream
[2026-06-22 04:59:18,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:59:18,408.408 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-22 04:59:22,246.246 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 04:59:22,249.249 INFO    ] Checking for system updates...
[2026-06-22 04:59:22,290.290 INFO    ] 200
[2026-06-22 04:59:22,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:59:22,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:59:22,357.357 INFO    ] No update needed
[2026-06-22 04:59:22,359.359 INFO    ] Checking for camera pi updates...
[2026-06-22 04:59:22,393.393 INFO    ] 200
[2026-06-22 04:59:22,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:59:22,436.436 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:59:22,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:59:22,617.617 INFO    ] No camera update needed
[2026-06-22 04:59:22,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:59:22,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:59:22,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:59:22,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:59:24,674.674 INFO    ] ================================================
[2026-06-22 04:59:24,690.690 INFO    ] Launching Daemon at Mon Jun 22 04:59:24 IST 2026
[2026-06-22 04:59:24,701.701 INFO    ] ================================================
[2026-06-22 04:59:25,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:59:25
[2026-06-22 04:59:25,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:59:26,060.060 INFO    ] Initializing speech engine...
[2026-06-22 04:59:26,069.069 INFO    ] 2026-06-22 04:59:26
[2026-06-22 04:59:26,371.371 INFO    ] 2026-06-22 04:59:26
[2026-06-22 04:59:26,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:59:26,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:59:26,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:59:26,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:59:26,737.737 INFO    ] time= 22/06/2026 04:59:26
[2026-06-22 04:59:26,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:59:26,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:59:26,817.817 INFO    ] No existing commands found in stream
[2026-06-22 04:59:31,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:59:31,830.830 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-22 04:59:35,901.901 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:59:35,903.903 INFO    ] Checking for system updates...
[2026-06-22 04:59:35,923.923 INFO    ] 200
[2026-06-22 04:59:35,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:59:35,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:59:35,956.956 INFO    ] No update needed
[2026-06-22 04:59:35,958.958 INFO    ] Checking for camera pi updates...
[2026-06-22 04:59:35,977.977 INFO    ] 200
[2026-06-22 04:59:35,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:59:36,014.014 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:59:36,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:59:36,071.071 INFO    ] No camera update needed
[2026-06-22 04:59:36,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:59:36,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:59:36,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:59:36,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:59:38,128.128 INFO    ] ================================================
[2026-06-22 04:59:38,143.143 INFO    ] Launching Daemon at Mon Jun 22 04:59:38 IST 2026
[2026-06-22 04:59:38,155.155 INFO    ] ================================================
[2026-06-22 04:59:38,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:59:38
[2026-06-22 04:59:39,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:59:39,573.573 INFO    ] Initializing speech engine...
[2026-06-22 04:59:39,579.579 INFO    ] 2026-06-22 04:59:39
[2026-06-22 04:59:39,852.852 INFO    ] 2026-06-22 04:59:39
[2026-06-22 04:59:39,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:59:40,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:59:40,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:59:40,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:59:40,328.328 INFO    ] time= 22/06/2026 04:59:40
[2026-06-22 04:59:40,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:59:40,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:59:40,472.472 INFO    ] No existing commands found in stream
[2026-06-22 04:59:45,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:59:45,487.487 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-22 04:59:47,477.477 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 04:59:47,479.479 INFO    ] Checking for system updates...
[2026-06-22 04:59:47,519.519 INFO    ] 200
[2026-06-22 04:59:47,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:59:47,583.583 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:59:47,586.586 INFO    ] No update needed
[2026-06-22 04:59:47,588.588 INFO    ] Checking for camera pi updates...
[2026-06-22 04:59:47,627.627 INFO    ] 200
[2026-06-22 04:59:47,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:59:47,676.676 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:59:47,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 04:59:47,783.783 INFO    ] No camera update needed
[2026-06-22 04:59:47,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:59:47,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:59:47,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:59:47,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 04:59:49,840.840 INFO    ] ================================================
[2026-06-22 04:59:49,855.855 INFO    ] Launching Daemon at Mon Jun 22 04:59:49 IST 2026
[2026-06-22 04:59:49,866.866 INFO    ] ================================================
[2026-06-22 04:59:50,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 04:59:50
[2026-06-22 04:59:51,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 04:59:51,313.313 INFO    ] Initializing speech engine...
[2026-06-22 04:59:51,327.327 INFO    ] 2026-06-22 04:59:51
[2026-06-22 04:59:51,626.626 INFO    ] 2026-06-22 04:59:51
[2026-06-22 04:59:51,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 04:59:51,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 04:59:51,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 04:59:52,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 04:59:52,091.091 INFO    ] time= 22/06/2026 04:59:52
[2026-06-22 04:59:52,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 04:59:52,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-22 04:59:52,255.255 INFO    ] No existing commands found in stream
[2026-06-22 04:59:57,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 04:59:57,272.272 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-22 04:59:58,760.760 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 04:59:58,761.761 INFO    ] Checking for system updates...
[2026-06-22 04:59:58,784.784 INFO    ] 200
[2026-06-22 04:59:58,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:59:58,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:59:58,848.848 INFO    ] No update needed
[2026-06-22 04:59:58,850.850 INFO    ] Checking for camera pi updates...
[2026-06-22 04:59:58,888.888 INFO    ] 200
[2026-06-22 04:59:58,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 04:59:58,931.931 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 04:59:59,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 04:59:59,003.003 INFO    ] No camera update needed
[2026-06-22 04:59:59,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-22 04:59:59,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 04:59:59,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 04:59:59,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:00:01,069.069 INFO    ] ================================================
[2026-06-22 05:00:01,129.129 INFO    ] Launching Daemon at Mon Jun 22 05:00:01 IST 2026
[2026-06-22 05:00:01,165.165 INFO    ] ================================================
[2026-06-22 05:00:04,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:00:04
[2026-06-22 05:00:05,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:00:06,315.315 INFO    ] Initializing speech engine...
[2026-06-22 05:00:06,326.326 INFO    ] 2026-06-22 05:00:06
[2026-06-22 05:00:06,580.580 INFO    ] 2026-06-22 05:00:06
[2026-06-22 05:00:06,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:00:06,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:00:06,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:00:07,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:00:07,012.012 INFO    ] time= 22/06/2026 05:00:07
[2026-06-22 05:00:07,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:00:07,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:00:07,195.195 INFO    ] No existing commands found in stream
[2026-06-22 05:00:12,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:00:12,210.210 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-22 05:00:13,610.610 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:00:13,612.612 INFO    ] Checking for system updates...
[2026-06-22 05:00:13,651.651 INFO    ] 200
[2026-06-22 05:00:13,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:00:13,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:00:13,714.714 INFO    ] No update needed
[2026-06-22 05:00:13,716.716 INFO    ] Checking for camera pi updates...
[2026-06-22 05:00:13,753.753 INFO    ] 200
[2026-06-22 05:00:13,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:00:13,800.800 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:00:13,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:00:13,892.892 INFO    ] No camera update needed
[2026-06-22 05:00:13,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:00:13,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:00:13,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:00:13,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:00:15,948.948 INFO    ] ================================================
[2026-06-22 05:00:15,963.963 INFO    ] Launching Daemon at Mon Jun 22 05:00:15 IST 2026
[2026-06-22 05:00:15,974.974 INFO    ] ================================================
[2026-06-22 05:00:16,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:00:16
[2026-06-22 05:00:17,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:00:17,575.575 INFO    ] Initializing speech engine...
[2026-06-22 05:00:17,585.585 INFO    ] 2026-06-22 05:00:17
[2026-06-22 05:00:17,847.847 INFO    ] 2026-06-22 05:00:17
[2026-06-22 05:00:17,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:00:18,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:00:18,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:00:18,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:00:18,336.336 INFO    ] time= 22/06/2026 05:00:18
[2026-06-22 05:00:18,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:00:18,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:00:18,509.509 INFO    ] No existing commands found in stream
[2026-06-22 05:00:23,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:00:23,524.524 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-22 05:00:26,879.879 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:00:26,882.882 INFO    ] Checking for system updates...
[2026-06-22 05:00:26,927.927 INFO    ] 200
[2026-06-22 05:00:26,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:00:26,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:00:26,986.986 INFO    ] No update needed
[2026-06-22 05:00:26,988.988 INFO    ] Checking for camera pi updates...
[2026-06-22 05:00:27,022.022 INFO    ] 200
[2026-06-22 05:00:27,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:00:27,073.073 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:00:27,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:00:27,159.159 INFO    ] No camera update needed
[2026-06-22 05:00:27,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:00:27,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:00:27,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:00:27,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:00:29,215.215 INFO    ] ================================================
[2026-06-22 05:00:29,230.230 INFO    ] Launching Daemon at Mon Jun 22 05:00:29 IST 2026
[2026-06-22 05:00:29,241.241 INFO    ] ================================================
[2026-06-22 05:00:29,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:00:29
[2026-06-22 05:00:30,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:00:30,728.728 INFO    ] Initializing speech engine...
[2026-06-22 05:00:30,737.737 INFO    ] 2026-06-22 05:00:30
[2026-06-22 05:00:31,034.034 INFO    ] 2026-06-22 05:00:30
[2026-06-22 05:00:31,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:00:31,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:00:31,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:00:31,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:00:31,394.394 INFO    ] time= 22/06/2026 05:00:31
[2026-06-22 05:00:31,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:00:31,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:00:31,474.474 INFO    ] No existing commands found in stream
[2026-06-22 05:00:36,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:00:36,487.487 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-22 05:00:40,199.199 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:00:40,201.201 INFO    ] Checking for system updates...
[2026-06-22 05:00:40,237.237 INFO    ] 200
[2026-06-22 05:00:40,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:00:40,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:00:40,302.302 INFO    ] No update needed
[2026-06-22 05:00:40,304.304 INFO    ] Checking for camera pi updates...
[2026-06-22 05:00:40,343.343 INFO    ] 200
[2026-06-22 05:00:40,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:00:40,391.391 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:00:40,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:00:40,470.470 INFO    ] No camera update needed
[2026-06-22 05:00:40,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:00:40,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:00:40,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:00:40,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:00:42,527.527 INFO    ] ================================================
[2026-06-22 05:00:42,542.542 INFO    ] Launching Daemon at Mon Jun 22 05:00:42 IST 2026
[2026-06-22 05:00:42,553.553 INFO    ] ================================================
[2026-06-22 05:00:43,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:00:43
[2026-06-22 05:00:43,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:00:43,929.929 INFO    ] Initializing speech engine...
[2026-06-22 05:00:43,938.938 INFO    ] 2026-06-22 05:00:43
[2026-06-22 05:00:44,235.235 INFO    ] 2026-06-22 05:00:44
[2026-06-22 05:00:44,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:00:44,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:00:44,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:00:44,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:00:44,619.619 INFO    ] time= 22/06/2026 05:00:44
[2026-06-22 05:00:44,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:00:44,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:00:44,680.680 INFO    ] No existing commands found in stream
[2026-06-22 05:00:49,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:00:49,692.692 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-22 05:00:50,275.275 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:00:50,277.277 INFO    ] Checking for system updates...
[2026-06-22 05:00:50,314.314 INFO    ] 200
[2026-06-22 05:00:50,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:00:50,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:00:50,374.374 INFO    ] No update needed
[2026-06-22 05:00:50,376.376 INFO    ] Checking for camera pi updates...
[2026-06-22 05:00:50,414.414 INFO    ] 200
[2026-06-22 05:00:50,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:00:50,458.458 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:00:50,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:00:50,545.545 INFO    ] No camera update needed
[2026-06-22 05:00:50,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:00:50,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:00:50,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:00:50,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:00:52,607.607 INFO    ] ================================================
[2026-06-22 05:00:52,622.622 INFO    ] Launching Daemon at Mon Jun 22 05:00:52 IST 2026
[2026-06-22 05:00:52,633.633 INFO    ] ================================================
[2026-06-22 05:00:53,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:00:53
[2026-06-22 05:00:53,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:00:54,019.019 INFO    ] Initializing speech engine...
[2026-06-22 05:00:54,027.027 INFO    ] 2026-06-22 05:00:54
[2026-06-22 05:00:54,327.327 INFO    ] 2026-06-22 05:00:54
[2026-06-22 05:00:54,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:00:54,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:00:54,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:00:54,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:00:54,711.711 INFO    ] time= 22/06/2026 05:00:54
[2026-06-22 05:00:54,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:00:54,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:00:54,816.816 INFO    ] No existing commands found in stream
[2026-06-22 05:00:59,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:00:59,854.854 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-22 05:01:01,408.408 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:01:01,412.412 INFO    ] Checking for system updates...
[2026-06-22 05:01:01,490.490 INFO    ] 200
[2026-06-22 05:01:01,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:01:01,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:01:01,599.599 INFO    ] No update needed
[2026-06-22 05:01:01,603.603 INFO    ] Checking for camera pi updates...
[2026-06-22 05:01:01,667.667 INFO    ] 200
[2026-06-22 05:01:01,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:01:01,731.731 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:01:01,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:01:01,794.794 INFO    ] No camera update needed
[2026-06-22 05:01:01,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:01:01,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:01:01,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:01:01,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:01:03,861.861 INFO    ] ================================================
[2026-06-22 05:01:03,876.876 INFO    ] Launching Daemon at Mon Jun 22 05:01:03 IST 2026
[2026-06-22 05:01:03,887.887 INFO    ] ================================================
[2026-06-22 05:01:04,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:01:04
[2026-06-22 05:01:05,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:01:05,344.344 INFO    ] Initializing speech engine...
[2026-06-22 05:01:05,353.353 INFO    ] 2026-06-22 05:01:05
[2026-06-22 05:01:05,603.603 INFO    ] 2026-06-22 05:01:05
[2026-06-22 05:01:05,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:01:05,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:01:05,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:01:06,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:01:06,077.077 INFO    ] time= 22/06/2026 05:01:06
[2026-06-22 05:01:06,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:01:06,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:01:06,194.194 INFO    ] No existing commands found in stream
[2026-06-22 05:01:11,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:01:11,220.220 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-22 05:01:12,104.104 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:01:12,106.106 INFO    ] Checking for system updates...
[2026-06-22 05:01:12,147.147 INFO    ] 200
[2026-06-22 05:01:12,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:01:12,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:01:12,213.213 INFO    ] No update needed
[2026-06-22 05:01:12,215.215 INFO    ] Checking for camera pi updates...
[2026-06-22 05:01:12,253.253 INFO    ] 200
[2026-06-22 05:01:12,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:01:12,299.299 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:01:12,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:01:12,391.391 INFO    ] No camera update needed
[2026-06-22 05:01:12,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:01:12,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:01:12,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:01:12,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:01:14,449.449 INFO    ] ================================================
[2026-06-22 05:01:14,465.465 INFO    ] Launching Daemon at Mon Jun 22 05:01:14 IST 2026
[2026-06-22 05:01:14,476.476 INFO    ] ================================================
[2026-06-22 05:01:15,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:01:15
[2026-06-22 05:01:15,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:01:15,901.901 INFO    ] Initializing speech engine...
[2026-06-22 05:01:15,908.908 INFO    ] 2026-06-22 05:01:15
[2026-06-22 05:01:16,171.171 INFO    ] 2026-06-22 05:01:16
[2026-06-22 05:01:16,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:01:17,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:01:17,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:01:17,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:01:17,502.502 INFO    ] time= 22/06/2026 05:01:17
[2026-06-22 05:01:17,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:01:17,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:01:17,561.561 INFO    ] No existing commands found in stream
[2026-06-22 05:01:22,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:01:22,574.574 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-22 05:01:25,959.959 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:01:25,962.962 INFO    ] Checking for system updates...
[2026-06-22 05:01:25,999.999 INFO    ] 200
[2026-06-22 05:01:26,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:01:26,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:01:26,065.065 INFO    ] No update needed
[2026-06-22 05:01:26,068.068 INFO    ] Checking for camera pi updates...
[2026-06-22 05:01:26,102.102 INFO    ] 200
[2026-06-22 05:01:26,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:01:26,146.146 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:01:26,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:01:26,329.329 INFO    ] No camera update needed
[2026-06-22 05:01:26,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:01:26,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:01:26,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:01:26,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:01:28,386.386 INFO    ] ================================================
[2026-06-22 05:01:28,402.402 INFO    ] Launching Daemon at Mon Jun 22 05:01:28 IST 2026
[2026-06-22 05:01:28,412.412 INFO    ] ================================================
[2026-06-22 05:01:28,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:01:28
[2026-06-22 05:01:29,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:01:29,729.729 INFO    ] Initializing speech engine...
[2026-06-22 05:01:29,752.752 INFO    ] 2026-06-22 05:01:29
[2026-06-22 05:01:30,009.009 INFO    ] 2026-06-22 05:01:30
[2026-06-22 05:01:30,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:01:30,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:01:30,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:01:30,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:01:30,387.387 INFO    ] time= 22/06/2026 05:01:30
[2026-06-22 05:01:30,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:01:30,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:01:30,551.551 INFO    ] No existing commands found in stream
[2026-06-22 05:01:35,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:01:35,579.579 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-22 05:01:39,629.629 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:01:39,631.631 INFO    ] Checking for system updates...
[2026-06-22 05:01:39,652.652 INFO    ] 200
[2026-06-22 05:01:39,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:01:39,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:01:39,685.685 INFO    ] No update needed
[2026-06-22 05:01:39,686.686 INFO    ] Checking for camera pi updates...
[2026-06-22 05:01:39,719.719 INFO    ] 200
[2026-06-22 05:01:39,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:01:39,767.767 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:01:39,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:01:39,860.860 INFO    ] No camera update needed
[2026-06-22 05:01:39,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:01:39,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:01:39,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:01:39,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:01:41,917.917 INFO    ] ================================================
[2026-06-22 05:01:41,932.932 INFO    ] Launching Daemon at Mon Jun 22 05:01:41 IST 2026
[2026-06-22 05:01:41,943.943 INFO    ] ================================================
[2026-06-22 05:01:42,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:01:42
[2026-06-22 05:01:43,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:01:43,479.479 INFO    ] Initializing speech engine...
[2026-06-22 05:01:43,491.491 INFO    ] 2026-06-22 05:01:43
[2026-06-22 05:01:43,763.763 INFO    ] 2026-06-22 05:01:43
[2026-06-22 05:01:43,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:01:44,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:01:44,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:01:44,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:01:44,244.244 INFO    ] time= 22/06/2026 05:01:44
[2026-06-22 05:01:44,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:01:44,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:01:44,389.389 INFO    ] No existing commands found in stream
[2026-06-22 05:01:49,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:01:49,407.407 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-22 05:01:53,571.571 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:01:53,575.575 INFO    ] Checking for system updates...
[2026-06-22 05:01:53,611.611 INFO    ] 200
[2026-06-22 05:01:53,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:01:53,674.674 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:01:53,677.677 INFO    ] No update needed
[2026-06-22 05:01:53,680.680 INFO    ] Checking for camera pi updates...
[2026-06-22 05:01:53,720.720 INFO    ] 200
[2026-06-22 05:01:53,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:01:53,773.773 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:01:53,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:01:53,869.869 INFO    ] No camera update needed
[2026-06-22 05:01:53,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:01:53,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:01:53,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:01:53,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:01:55,927.927 INFO    ] ================================================
[2026-06-22 05:01:55,943.943 INFO    ] Launching Daemon at Mon Jun 22 05:01:55 IST 2026
[2026-06-22 05:01:55,953.953 INFO    ] ================================================
[2026-06-22 05:01:56,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:01:56
[2026-06-22 05:01:57,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:01:57,366.366 INFO    ] Initializing speech engine...
[2026-06-22 05:01:57,373.373 INFO    ] 2026-06-22 05:01:57
[2026-06-22 05:01:57,634.634 INFO    ] 2026-06-22 05:01:57
[2026-06-22 05:01:57,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:01:57,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:01:57,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:01:58,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:01:58,089.089 INFO    ] time= 22/06/2026 05:01:58
[2026-06-22 05:01:58,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:01:58,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:01:58,240.240 INFO    ] No existing commands found in stream
[2026-06-22 05:02:03,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:02:03,256.256 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-22 05:02:06,594.594 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:02:06,597.597 INFO    ] Checking for system updates...
[2026-06-22 05:02:06,638.638 INFO    ] 200
[2026-06-22 05:02:06,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:02:06,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:02:06,695.695 INFO    ] No update needed
[2026-06-22 05:02:06,698.698 INFO    ] Checking for camera pi updates...
[2026-06-22 05:02:06,731.731 INFO    ] 200
[2026-06-22 05:02:06,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:02:06,775.775 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:02:06,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:02:06,846.846 INFO    ] No camera update needed
[2026-06-22 05:02:06,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:02:06,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:02:06,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:02:06,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:02:08,901.901 INFO    ] ================================================
[2026-06-22 05:02:08,917.917 INFO    ] Launching Daemon at Mon Jun 22 05:02:08 IST 2026
[2026-06-22 05:02:08,929.929 INFO    ] ================================================
[2026-06-22 05:02:09,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:02:09
[2026-06-22 05:02:10,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:02:10,281.281 INFO    ] Initializing speech engine...
[2026-06-22 05:02:10,298.298 INFO    ] 2026-06-22 05:02:10
[2026-06-22 05:02:10,553.553 INFO    ] 2026-06-22 05:02:10
[2026-06-22 05:02:10,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:02:10,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:02:10,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:02:10,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:02:10,923.923 INFO    ] time= 22/06/2026 05:02:10
[2026-06-22 05:02:10,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:02:10,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:02:11,091.091 INFO    ] No existing commands found in stream
[2026-06-22 05:02:16,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:02:16,125.125 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-22 05:02:17,974.974 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:02:17,976.976 INFO    ] Checking for system updates...
[2026-06-22 05:02:17,998.998 INFO    ] 200
[2026-06-22 05:02:17,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:02:18,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:02:18,035.035 INFO    ] No update needed
[2026-06-22 05:02:18,037.037 INFO    ] Checking for camera pi updates...
[2026-06-22 05:02:18,071.071 INFO    ] 200
[2026-06-22 05:02:18,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:02:18,114.114 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:02:18,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:02:18,205.205 INFO    ] No camera update needed
[2026-06-22 05:02:18,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:02:18,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:02:18,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:02:18,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:02:20,265.265 INFO    ] ================================================
[2026-06-22 05:02:20,281.281 INFO    ] Launching Daemon at Mon Jun 22 05:02:20 IST 2026
[2026-06-22 05:02:20,292.292 INFO    ] ================================================
[2026-06-22 05:02:20,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:02:20
[2026-06-22 05:02:21,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:02:21,752.752 INFO    ] Initializing speech engine...
[2026-06-22 05:02:21,759.759 INFO    ] 2026-06-22 05:02:21
[2026-06-22 05:02:22,021.021 INFO    ] 2026-06-22 05:02:22
[2026-06-22 05:02:22,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:02:22,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:02:22,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:02:22,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:02:22,478.478 INFO    ] time= 22/06/2026 05:02:22
[2026-06-22 05:02:22,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:02:22,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:02:22,606.606 INFO    ] No existing commands found in stream
[2026-06-22 05:02:27,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:02:27,639.639 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-22 05:02:32,006.006 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:02:32,009.009 INFO    ] Checking for system updates...
[2026-06-22 05:02:32,048.048 INFO    ] 200
[2026-06-22 05:02:32,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:02:32,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:02:32,112.112 INFO    ] No update needed
[2026-06-22 05:02:32,115.115 INFO    ] Checking for camera pi updates...
[2026-06-22 05:02:32,152.152 INFO    ] 200
[2026-06-22 05:02:32,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:02:32,219.219 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:02:32,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:02:32,287.287 INFO    ] No camera update needed
[2026-06-22 05:02:32,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:02:32,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:02:32,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:02:32,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:02:34,345.345 INFO    ] ================================================
[2026-06-22 05:02:34,360.360 INFO    ] Launching Daemon at Mon Jun 22 05:02:34 IST 2026
[2026-06-22 05:02:34,372.372 INFO    ] ================================================
[2026-06-22 05:02:34,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:02:34
[2026-06-22 05:02:35,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:02:35,707.707 INFO    ] Initializing speech engine...
[2026-06-22 05:02:35,713.713 INFO    ] 2026-06-22 05:02:35
[2026-06-22 05:02:35,991.991 INFO    ] 2026-06-22 05:02:35
[2026-06-22 05:02:36,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:02:36,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:02:36,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:02:36,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:02:36,367.367 INFO    ] time= 22/06/2026 05:02:36
[2026-06-22 05:02:36,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:02:36,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:02:36,445.445 INFO    ] No existing commands found in stream
[2026-06-22 05:02:41,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:02:41,460.460 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-22 05:02:44,648.648 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:02:44,651.651 INFO    ] Checking for system updates...
[2026-06-22 05:02:44,687.687 INFO    ] 200
[2026-06-22 05:02:44,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:02:44,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:02:44,744.744 INFO    ] No update needed
[2026-06-22 05:02:44,747.747 INFO    ] Checking for camera pi updates...
[2026-06-22 05:02:44,781.781 INFO    ] 200
[2026-06-22 05:02:44,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:02:44,825.825 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:02:44,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:02:44,880.880 INFO    ] No camera update needed
[2026-06-22 05:02:44,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:02:44,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:02:44,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:02:44,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:02:46,938.938 INFO    ] ================================================
[2026-06-22 05:02:46,953.953 INFO    ] Launching Daemon at Mon Jun 22 05:02:46 IST 2026
[2026-06-22 05:02:46,965.965 INFO    ] ================================================
[2026-06-22 05:02:47,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:02:47
[2026-06-22 05:02:48,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:02:48,383.383 INFO    ] Initializing speech engine...
[2026-06-22 05:02:48,392.392 INFO    ] 2026-06-22 05:02:48
[2026-06-22 05:02:48,644.644 INFO    ] 2026-06-22 05:02:48
[2026-06-22 05:02:48,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:02:48,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:02:48,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:02:49,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:02:49,022.022 INFO    ] time= 22/06/2026 05:02:49
[2026-06-22 05:02:49,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:02:49,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:02:49,163.163 INFO    ] No existing commands found in stream
[2026-06-22 05:02:54,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:02:54,191.191 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-22 05:02:56,627.627 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:02:56,629.629 INFO    ] Checking for system updates...
[2026-06-22 05:02:56,649.649 INFO    ] 200
[2026-06-22 05:02:56,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:02:56,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:02:56,695.695 INFO    ] No update needed
[2026-06-22 05:02:56,697.697 INFO    ] Checking for camera pi updates...
[2026-06-22 05:02:56,735.735 INFO    ] 200
[2026-06-22 05:02:56,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:02:56,778.778 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:02:56,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:02:56,839.839 INFO    ] No camera update needed
[2026-06-22 05:02:56,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:02:56,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:02:56,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:02:56,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:02:58,894.894 INFO    ] ================================================
[2026-06-22 05:02:58,910.910 INFO    ] Launching Daemon at Mon Jun 22 05:02:58 IST 2026
[2026-06-22 05:02:58,921.921 INFO    ] ================================================
[2026-06-22 05:02:59,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:02:59
[2026-06-22 05:03:00,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:03:00,382.382 INFO    ] Initializing speech engine...
[2026-06-22 05:03:00,391.391 INFO    ] 2026-06-22 05:03:00
[2026-06-22 05:03:00,652.652 INFO    ] 2026-06-22 05:03:00
[2026-06-22 05:03:00,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:03:00,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:03:00,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:03:01,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:03:01,122.122 INFO    ] time= 22/06/2026 05:03:01
[2026-06-22 05:03:01,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:03:01,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:03:01,223.223 INFO    ] No existing commands found in stream
[2026-06-22 05:03:06,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:03:06,237.237 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-22 05:03:09,812.812 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:03:09,815.815 INFO    ] Checking for system updates...
[2026-06-22 05:03:09,852.852 INFO    ] 200
[2026-06-22 05:03:09,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:03:09,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:03:09,913.913 INFO    ] No update needed
[2026-06-22 05:03:09,916.916 INFO    ] Checking for camera pi updates...
[2026-06-22 05:03:09,956.956 INFO    ] 200
[2026-06-22 05:03:09,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:03:10,011.011 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:03:10,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:03:10,097.097 INFO    ] No camera update needed
[2026-06-22 05:03:10,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:03:10,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:03:10,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:03:10,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:03:12,158.158 INFO    ] ================================================
[2026-06-22 05:03:12,175.175 INFO    ] Launching Daemon at Mon Jun 22 05:03:12 IST 2026
[2026-06-22 05:03:12,187.187 INFO    ] ================================================
[2026-06-22 05:03:12,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:03:12
[2026-06-22 05:03:13,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:03:13,783.783 INFO    ] Initializing speech engine...
[2026-06-22 05:03:13,794.794 INFO    ] 2026-06-22 05:03:13
[2026-06-22 05:03:14,111.111 INFO    ] 2026-06-22 05:03:14
[2026-06-22 05:03:14,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:03:14,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:03:14,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:03:14,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:03:14,548.548 INFO    ] time= 22/06/2026 05:03:14
[2026-06-22 05:03:14,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:03:14,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:03:14,708.708 INFO    ] No existing commands found in stream
[2026-06-22 05:03:19,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:03:19,725.725 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-22 05:03:21,784.784 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:03:21,786.786 INFO    ] Checking for system updates...
[2026-06-22 05:03:21,815.815 INFO    ] 200
[2026-06-22 05:03:21,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:03:21,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:03:21,875.875 INFO    ] No update needed
[2026-06-22 05:03:21,878.878 INFO    ] Checking for camera pi updates...
[2026-06-22 05:03:21,913.913 INFO    ] 200
[2026-06-22 05:03:21,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:03:21,957.957 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:03:22,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:03:22,051.051 INFO    ] No camera update needed
[2026-06-22 05:03:22,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:03:22,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:03:22,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:03:22,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:03:24,107.107 INFO    ] ================================================
[2026-06-22 05:03:24,123.123 INFO    ] Launching Daemon at Mon Jun 22 05:03:24 IST 2026
[2026-06-22 05:03:24,134.134 INFO    ] ================================================
[2026-06-22 05:03:24,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:03:24
[2026-06-22 05:03:25,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:03:25,504.504 INFO    ] Initializing speech engine...
[2026-06-22 05:03:25,515.515 INFO    ] 2026-06-22 05:03:25
[2026-06-22 05:03:25,781.781 INFO    ] 2026-06-22 05:03:25
[2026-06-22 05:03:25,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:03:26,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:03:26,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:03:26,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:03:26,154.154 INFO    ] time= 22/06/2026 05:03:26
[2026-06-22 05:03:26,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:03:26,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:03:26,326.326 INFO    ] No existing commands found in stream
[2026-06-22 05:03:31,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:03:31,352.352 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-22 05:03:32,503.503 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:03:32,507.507 INFO    ] Checking for system updates...
[2026-06-22 05:03:32,548.548 INFO    ] 200
[2026-06-22 05:03:32,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:03:32,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:03:32,615.615 INFO    ] No update needed
[2026-06-22 05:03:32,618.618 INFO    ] Checking for camera pi updates...
[2026-06-22 05:03:32,652.652 INFO    ] 200
[2026-06-22 05:03:32,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:03:32,696.696 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:03:32,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:03:32,750.750 INFO    ] No camera update needed
[2026-06-22 05:03:32,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:03:32,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:03:32,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:03:32,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:03:34,806.806 INFO    ] ================================================
[2026-06-22 05:03:34,822.822 INFO    ] Launching Daemon at Mon Jun 22 05:03:34 IST 2026
[2026-06-22 05:03:34,833.833 INFO    ] ================================================
[2026-06-22 05:03:35,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:03:35
[2026-06-22 05:03:35,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:03:36,193.193 INFO    ] Initializing speech engine...
[2026-06-22 05:03:36,201.201 INFO    ] 2026-06-22 05:03:36
[2026-06-22 05:03:36,475.475 INFO    ] 2026-06-22 05:03:36
[2026-06-22 05:03:36,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:03:36,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:03:36,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:03:36,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:03:36,855.855 INFO    ] time= 22/06/2026 05:03:36
[2026-06-22 05:03:36,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:03:36,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:03:36,932.932 INFO    ] No existing commands found in stream
[2026-06-22 05:03:41,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:03:41,947.947 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-22 05:03:44,951.951 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:03:44,952.952 INFO    ] Checking for system updates...
[2026-06-22 05:03:44,973.973 INFO    ] 200
[2026-06-22 05:03:44,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:03:45,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:03:45,007.007 INFO    ] No update needed
[2026-06-22 05:03:45,009.009 INFO    ] Checking for camera pi updates...
[2026-06-22 05:03:45,044.044 INFO    ] 200
[2026-06-22 05:03:45,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:03:45,095.095 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:03:45,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:03:45,205.205 INFO    ] No camera update needed
[2026-06-22 05:03:45,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:03:45,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:03:45,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:03:45,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:03:47,262.262 INFO    ] ================================================
[2026-06-22 05:03:47,278.278 INFO    ] Launching Daemon at Mon Jun 22 05:03:47 IST 2026
[2026-06-22 05:03:47,290.290 INFO    ] ================================================
[2026-06-22 05:03:47,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:03:47
[2026-06-22 05:03:48,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:03:48,659.659 INFO    ] Initializing speech engine...
[2026-06-22 05:03:48,667.667 INFO    ] 2026-06-22 05:03:48
[2026-06-22 05:03:48,951.951 INFO    ] 2026-06-22 05:03:48
[2026-06-22 05:03:48,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:03:49,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:03:49,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:03:49,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:03:49,343.343 INFO    ] time= 22/06/2026 05:03:49
[2026-06-22 05:03:49,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:03:49,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:03:49,454.454 INFO    ] No existing commands found in stream
[2026-06-22 05:03:54,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:03:54,469.469 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-22 05:03:54,892.892 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:03:54,893.893 INFO    ] Checking for system updates...
[2026-06-22 05:03:54,933.933 INFO    ] 200
[2026-06-22 05:03:54,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:03:54,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:03:54,999.999 INFO    ] No update needed
[2026-06-22 05:03:55,001.001 INFO    ] Checking for camera pi updates...
[2026-06-22 05:03:55,039.039 INFO    ] 200
[2026-06-22 05:03:55,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:03:55,088.088 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:03:55,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:03:55,171.171 INFO    ] No camera update needed
[2026-06-22 05:03:55,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:03:55,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:03:55,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:03:55,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:03:57,228.228 INFO    ] ================================================
[2026-06-22 05:03:57,244.244 INFO    ] Launching Daemon at Mon Jun 22 05:03:57 IST 2026
[2026-06-22 05:03:57,255.255 INFO    ] ================================================
[2026-06-22 05:03:57,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:03:57
[2026-06-22 05:03:58,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:03:58,805.805 INFO    ] Initializing speech engine...
[2026-06-22 05:03:58,811.811 INFO    ] 2026-06-22 05:03:58
[2026-06-22 05:03:59,098.098 INFO    ] 2026-06-22 05:03:59
[2026-06-22 05:03:59,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:03:59,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:03:59,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:03:59,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:03:59,564.564 INFO    ] time= 22/06/2026 05:03:59
[2026-06-22 05:03:59,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:03:59,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:03:59,694.694 INFO    ] No existing commands found in stream
[2026-06-22 05:04:04,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:04:04,710.710 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-22 05:04:06,835.835 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:04:06,838.838 INFO    ] Checking for system updates...
[2026-06-22 05:04:06,876.876 INFO    ] 200
[2026-06-22 05:04:06,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:04:06,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:04:06,943.943 INFO    ] No update needed
[2026-06-22 05:04:06,945.945 INFO    ] Checking for camera pi updates...
[2026-06-22 05:04:06,979.979 INFO    ] 200
[2026-06-22 05:04:06,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:04:07,022.022 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:04:07,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:04:07,119.119 INFO    ] No camera update needed
[2026-06-22 05:04:07,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:04:07,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:04:07,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:04:07,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:04:09,173.173 INFO    ] ================================================
[2026-06-22 05:04:09,190.190 INFO    ] Launching Daemon at Mon Jun 22 05:04:09 IST 2026
[2026-06-22 05:04:09,202.202 INFO    ] ================================================
[2026-06-22 05:04:09,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:04:09
[2026-06-22 05:04:10,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:04:10,573.573 INFO    ] Initializing speech engine...
[2026-06-22 05:04:10,590.590 INFO    ] 2026-06-22 05:04:10
[2026-06-22 05:04:10,856.856 INFO    ] 2026-06-22 05:04:10
[2026-06-22 05:04:10,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:04:11,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:04:11,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:04:11,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:04:11,224.224 INFO    ] time= 22/06/2026 05:04:11
[2026-06-22 05:04:11,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:04:11,275.275 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:04:11,395.395 INFO    ] No existing commands found in stream
[2026-06-22 05:04:16,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:04:16,435.435 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-22 05:04:20,670.670 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:04:20,673.673 INFO    ] Checking for system updates...
[2026-06-22 05:04:20,713.713 INFO    ] 200
[2026-06-22 05:04:20,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:04:20,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:04:20,772.772 INFO    ] No update needed
[2026-06-22 05:04:20,775.775 INFO    ] Checking for camera pi updates...
[2026-06-22 05:04:20,811.811 INFO    ] 200
[2026-06-22 05:04:20,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:04:20,861.861 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:04:20,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:04:20,952.952 INFO    ] No camera update needed
[2026-06-22 05:04:20,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:04:20,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:04:20,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:04:20,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:04:23,001.001 INFO    ] ================================================
[2026-06-22 05:04:23,018.018 INFO    ] Launching Daemon at Mon Jun 22 05:04:23 IST 2026
[2026-06-22 05:04:23,029.029 INFO    ] ================================================
[2026-06-22 05:04:23,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:04:23
[2026-06-22 05:04:24,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:04:24,729.729 INFO    ] Initializing speech engine...
[2026-06-22 05:04:24,744.744 INFO    ] 2026-06-22 05:04:24
[2026-06-22 05:04:25,032.032 INFO    ] 2026-06-22 05:04:25
[2026-06-22 05:04:25,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:04:25,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:04:25,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:04:25,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:04:25,477.477 INFO    ] time= 22/06/2026 05:04:25
[2026-06-22 05:04:25,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:04:25,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:04:25,651.651 INFO    ] No existing commands found in stream
[2026-06-22 05:04:30,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:04:30,668.668 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-22 05:04:31,584.584 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:04:31,586.586 INFO    ] Checking for system updates...
[2026-06-22 05:04:31,610.610 INFO    ] 200
[2026-06-22 05:04:31,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:04:31,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:04:31,673.673 INFO    ] No update needed
[2026-06-22 05:04:31,676.676 INFO    ] Checking for camera pi updates...
[2026-06-22 05:04:31,718.718 INFO    ] 200
[2026-06-22 05:04:31,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:04:31,773.773 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:04:31,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:04:31,833.833 INFO    ] No camera update needed
[2026-06-22 05:04:31,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:04:31,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:04:31,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:04:31,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:04:33,889.889 INFO    ] ================================================
[2026-06-22 05:04:33,905.905 INFO    ] Launching Daemon at Mon Jun 22 05:04:33 IST 2026
[2026-06-22 05:04:33,916.916 INFO    ] ================================================
[2026-06-22 05:04:34,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:04:34
[2026-06-22 05:04:35,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:04:35,657.657 INFO    ] Initializing speech engine...
[2026-06-22 05:04:35,666.666 INFO    ] 2026-06-22 05:04:35
[2026-06-22 05:04:35,991.991 INFO    ] 2026-06-22 05:04:35
[2026-06-22 05:04:36,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:04:36,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:04:36,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:04:36,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:04:36,382.382 INFO    ] time= 22/06/2026 05:04:36
[2026-06-22 05:04:36,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:04:36,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:04:36,567.567 INFO    ] No existing commands found in stream
[2026-06-22 05:04:41,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:04:41,581.581 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-22 05:04:45,875.875 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:04:45,878.878 INFO    ] Checking for system updates...
[2026-06-22 05:04:45,920.920 INFO    ] 200
[2026-06-22 05:04:45,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:04:45,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:04:46,000.000 INFO    ] No update needed
[2026-06-22 05:04:46,003.003 INFO    ] Checking for camera pi updates...
[2026-06-22 05:04:46,042.042 INFO    ] 200
[2026-06-22 05:04:46,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:04:46,090.090 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:04:46,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:04:46,178.178 INFO    ] No camera update needed
[2026-06-22 05:04:46,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:04:46,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:04:46,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:04:46,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:04:48,232.232 INFO    ] ================================================
[2026-06-22 05:04:48,247.247 INFO    ] Launching Daemon at Mon Jun 22 05:04:48 IST 2026
[2026-06-22 05:04:48,258.258 INFO    ] ================================================
[2026-06-22 05:04:48,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:04:48
[2026-06-22 05:04:49,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:04:49,620.620 INFO    ] Initializing speech engine...
[2026-06-22 05:04:49,639.639 INFO    ] 2026-06-22 05:04:49
[2026-06-22 05:04:49,889.889 INFO    ] 2026-06-22 05:04:49
[2026-06-22 05:04:49,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:04:50,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:04:50,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:04:50,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:04:50,259.259 INFO    ] time= 22/06/2026 05:04:50
[2026-06-22 05:04:50,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:04:50,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:04:50,430.430 INFO    ] No existing commands found in stream
[2026-06-22 05:04:55,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:04:55,458.458 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-22 05:04:58,043.043 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:04:58,046.046 INFO    ] Checking for system updates...
[2026-06-22 05:04:58,083.083 INFO    ] 200
[2026-06-22 05:04:58,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:04:58,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:04:58,142.142 INFO    ] No update needed
[2026-06-22 05:04:58,144.144 INFO    ] Checking for camera pi updates...
[2026-06-22 05:04:58,179.179 INFO    ] 200
[2026-06-22 05:04:58,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:04:58,229.229 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:04:58,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:04:58,311.311 INFO    ] No camera update needed
[2026-06-22 05:04:58,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:04:58,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:04:58,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:04:58,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:05:00,367.367 INFO    ] ================================================
[2026-06-22 05:05:00,382.382 INFO    ] Launching Daemon at Mon Jun 22 05:05:00 IST 2026
[2026-06-22 05:05:00,392.392 INFO    ] ================================================
[2026-06-22 05:05:00,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:05:00
[2026-06-22 05:05:01,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:05:02,370.370 INFO    ] Initializing speech engine...
[2026-06-22 05:05:02,380.380 INFO    ] 2026-06-22 05:05:02
[2026-06-22 05:05:02,797.797 INFO    ] 2026-06-22 05:05:02
[2026-06-22 05:05:02,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:05:03,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:05:03,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:05:03,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:05:03,271.271 INFO    ] time= 22/06/2026 05:05:03
[2026-06-22 05:05:03,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:05:03,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:05:03,447.447 INFO    ] No existing commands found in stream
[2026-06-22 05:05:08,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:05:08,469.469 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-22 05:05:11,773.773 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:05:11,775.775 INFO    ] Checking for system updates...
[2026-06-22 05:05:11,823.823 INFO    ] 200
[2026-06-22 05:05:11,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:05:11,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:05:11,882.882 INFO    ] No update needed
[2026-06-22 05:05:11,884.884 INFO    ] Checking for camera pi updates...
[2026-06-22 05:05:11,918.918 INFO    ] 200
[2026-06-22 05:05:11,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:05:11,967.967 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:05:12,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:05:12,054.054 INFO    ] No camera update needed
[2026-06-22 05:05:12,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:05:12,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:05:12,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:05:12,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:05:14,110.110 INFO    ] ================================================
[2026-06-22 05:05:14,125.125 INFO    ] Launching Daemon at Mon Jun 22 05:05:14 IST 2026
[2026-06-22 05:05:14,136.136 INFO    ] ================================================
[2026-06-22 05:05:14,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:05:14
[2026-06-22 05:05:15,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:05:15,542.542 INFO    ] Initializing speech engine...
[2026-06-22 05:05:15,548.548 INFO    ] 2026-06-22 05:05:15
[2026-06-22 05:05:15,765.765 INFO    ] 2026-06-22 05:05:15
[2026-06-22 05:05:15,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:05:17,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:05:17,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:05:17,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:05:17,452.452 INFO    ] time= 22/06/2026 05:05:17
[2026-06-22 05:05:17,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:05:17,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:05:17,611.611 INFO    ] No existing commands found in stream
[2026-06-22 05:05:22,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:05:22,646.646 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-22 05:05:23,720.720 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:05:23,724.724 INFO    ] Checking for system updates...
[2026-06-22 05:05:23,768.768 INFO    ] 200
[2026-06-22 05:05:23,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:05:23,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:05:23,831.831 INFO    ] No update needed
[2026-06-22 05:05:23,834.834 INFO    ] Checking for camera pi updates...
[2026-06-22 05:05:23,869.869 INFO    ] 200
[2026-06-22 05:05:23,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:05:23,918.918 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:05:23,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:05:24,001.001 INFO    ] No camera update needed
[2026-06-22 05:05:24,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:05:24,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:05:24,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:05:24,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:05:26,059.059 INFO    ] ================================================
[2026-06-22 05:05:26,075.075 INFO    ] Launching Daemon at Mon Jun 22 05:05:26 IST 2026
[2026-06-22 05:05:26,086.086 INFO    ] ================================================
[2026-06-22 05:05:26,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:05:26
[2026-06-22 05:05:27,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:05:27,640.640 INFO    ] Initializing speech engine...
[2026-06-22 05:05:27,649.649 INFO    ] 2026-06-22 05:05:27
[2026-06-22 05:05:27,896.896 INFO    ] 2026-06-22 05:05:27
[2026-06-22 05:05:27,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:05:28,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:05:28,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:05:28,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:05:28,267.267 INFO    ] time= 22/06/2026 05:05:28
[2026-06-22 05:05:28,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:05:28,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:05:28,425.425 INFO    ] No existing commands found in stream
[2026-06-22 05:05:33,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:05:33,459.459 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-22 05:05:37,395.395 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:05:37,398.398 INFO    ] Checking for system updates...
[2026-06-22 05:05:37,433.433 INFO    ] 200
[2026-06-22 05:05:37,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:05:37,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:05:37,501.501 INFO    ] No update needed
[2026-06-22 05:05:37,503.503 INFO    ] Checking for camera pi updates...
[2026-06-22 05:05:37,540.540 INFO    ] 200
[2026-06-22 05:05:37,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:05:37,584.584 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:05:37,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:05:37,787.787 INFO    ] No camera update needed
[2026-06-22 05:05:37,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:05:37,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:05:37,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:05:37,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:05:39,848.848 INFO    ] ================================================
[2026-06-22 05:05:39,864.864 INFO    ] Launching Daemon at Mon Jun 22 05:05:39 IST 2026
[2026-06-22 05:05:39,876.876 INFO    ] ================================================
[2026-06-22 05:05:40,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:05:40
[2026-06-22 05:05:41,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:05:41,355.355 INFO    ] Initializing speech engine...
[2026-06-22 05:05:41,369.369 INFO    ] 2026-06-22 05:05:41
[2026-06-22 05:05:41,674.674 INFO    ] 2026-06-22 05:05:41
[2026-06-22 05:05:41,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:05:41,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:05:41,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:05:42,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:05:42,196.196 INFO    ] time= 22/06/2026 05:05:42
[2026-06-22 05:05:42,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:05:42,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:05:42,340.340 INFO    ] No existing commands found in stream
[2026-06-22 05:05:47,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:05:47,352.352 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-22 05:05:50,747.747 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:05:50,749.749 INFO    ] Checking for system updates...
[2026-06-22 05:05:50,770.770 INFO    ] 200
[2026-06-22 05:05:50,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:05:50,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:05:50,806.806 INFO    ] No update needed
[2026-06-22 05:05:50,807.807 INFO    ] Checking for camera pi updates...
[2026-06-22 05:05:50,829.829 INFO    ] 200
[2026-06-22 05:05:50,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:05:50,877.877 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:05:50,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:05:50,945.945 INFO    ] No camera update needed
[2026-06-22 05:05:50,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:05:50,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:05:50,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:05:50,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:05:53,000.000 INFO    ] ================================================
[2026-06-22 05:05:53,015.015 INFO    ] Launching Daemon at Mon Jun 22 05:05:53 IST 2026
[2026-06-22 05:05:53,025.025 INFO    ] ================================================
[2026-06-22 05:05:53,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:05:53
[2026-06-22 05:05:54,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:05:54,358.358 INFO    ] Initializing speech engine...
[2026-06-22 05:05:54,364.364 INFO    ] 2026-06-22 05:05:54
[2026-06-22 05:05:54,656.656 INFO    ] 2026-06-22 05:05:54
[2026-06-22 05:05:54,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:05:54,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:05:54,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:05:55,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:05:55,052.052 INFO    ] time= 22/06/2026 05:05:55
[2026-06-22 05:05:55,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:05:55,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:05:55,160.160 INFO    ] No existing commands found in stream
[2026-06-22 05:06:00,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:06:00,176.176 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-22 05:06:03,352.352 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:06:03,355.355 INFO    ] Checking for system updates...
[2026-06-22 05:06:03,404.404 INFO    ] 200
[2026-06-22 05:06:03,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:06:03,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:06:03,476.476 INFO    ] No update needed
[2026-06-22 05:06:03,484.484 INFO    ] Checking for camera pi updates...
[2026-06-22 05:06:03,534.534 INFO    ] 200
[2026-06-22 05:06:03,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:06:03,589.589 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:06:03,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:06:03,645.645 INFO    ] No camera update needed
[2026-06-22 05:06:03,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:06:03,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:06:03,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:06:03,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:06:05,709.709 INFO    ] ================================================
[2026-06-22 05:06:05,724.724 INFO    ] Launching Daemon at Mon Jun 22 05:06:05 IST 2026
[2026-06-22 05:06:05,735.735 INFO    ] ================================================
[2026-06-22 05:06:06,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:06:06
[2026-06-22 05:06:06,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:06:07,198.198 INFO    ] Initializing speech engine...
[2026-06-22 05:06:07,224.224 INFO    ] 2026-06-22 05:06:07
[2026-06-22 05:06:07,498.498 INFO    ] 2026-06-22 05:06:07
[2026-06-22 05:06:07,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:06:07,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:06:07,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:06:07,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:06:07,856.856 INFO    ] time= 22/06/2026 05:06:07
[2026-06-22 05:06:07,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:06:07,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:06:07,936.936 INFO    ] No existing commands found in stream
[2026-06-22 05:06:12,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:06:12,950.950 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-22 05:06:13,884.884 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:06:13,887.887 INFO    ] Checking for system updates...
[2026-06-22 05:06:13,923.923 INFO    ] 200
[2026-06-22 05:06:13,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:06:13,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:06:13,988.988 INFO    ] No update needed
[2026-06-22 05:06:13,991.991 INFO    ] Checking for camera pi updates...
[2026-06-22 05:06:14,024.024 INFO    ] 200
[2026-06-22 05:06:14,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:06:14,069.069 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:06:14,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:06:14,158.158 INFO    ] No camera update needed
[2026-06-22 05:06:14,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:06:14,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:06:14,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:06:14,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:06:16,220.220 INFO    ] ================================================
[2026-06-22 05:06:16,235.235 INFO    ] Launching Daemon at Mon Jun 22 05:06:16 IST 2026
[2026-06-22 05:06:16,246.246 INFO    ] ================================================
[2026-06-22 05:06:16,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:06:16
[2026-06-22 05:06:17,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:06:17,666.666 INFO    ] Initializing speech engine...
[2026-06-22 05:06:17,674.674 INFO    ] 2026-06-22 05:06:17
[2026-06-22 05:06:17,950.950 INFO    ] 2026-06-22 05:06:17
[2026-06-22 05:06:17,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:06:18,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:06:18,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:06:18,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:06:18,322.322 INFO    ] time= 22/06/2026 05:06:18
[2026-06-22 05:06:18,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:06:18,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:06:18,491.491 INFO    ] No existing commands found in stream
[2026-06-22 05:06:23,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:06:23,523.523 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-22 05:06:26,406.406 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:06:26,410.410 INFO    ] Checking for system updates...
[2026-06-22 05:06:26,454.454 INFO    ] 200
[2026-06-22 05:06:26,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:06:26,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:06:26,529.529 INFO    ] No update needed
[2026-06-22 05:06:26,532.532 INFO    ] Checking for camera pi updates...
[2026-06-22 05:06:26,571.571 INFO    ] 200
[2026-06-22 05:06:26,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:06:26,618.618 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:06:26,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:06:26,708.708 INFO    ] No camera update needed
[2026-06-22 05:06:26,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:06:26,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:06:26,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:06:26,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:06:28,766.766 INFO    ] ================================================
[2026-06-22 05:06:28,782.782 INFO    ] Launching Daemon at Mon Jun 22 05:06:28 IST 2026
[2026-06-22 05:06:28,799.799 INFO    ] ================================================
[2026-06-22 05:06:29,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:06:29
[2026-06-22 05:06:29,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:06:30,137.137 INFO    ] Initializing speech engine...
[2026-06-22 05:06:30,146.146 INFO    ] 2026-06-22 05:06:30
[2026-06-22 05:06:30,388.388 INFO    ] 2026-06-22 05:06:30
[2026-06-22 05:06:30,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:06:30,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:06:30,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:06:30,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:06:30,758.758 INFO    ] time= 22/06/2026 05:06:30
[2026-06-22 05:06:30,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:06:30,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:06:30,835.835 INFO    ] No existing commands found in stream
[2026-06-22 05:06:35,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:06:35,858.858 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-22 05:06:38,734.734 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:06:38,737.737 INFO    ] Checking for system updates...
[2026-06-22 05:06:38,777.777 INFO    ] 200
[2026-06-22 05:06:38,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:06:38,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:06:38,835.835 INFO    ] No update needed
[2026-06-22 05:06:38,838.838 INFO    ] Checking for camera pi updates...
[2026-06-22 05:06:38,872.872 INFO    ] 200
[2026-06-22 05:06:38,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:06:38,920.920 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:06:39,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:06:39,005.005 INFO    ] No camera update needed
[2026-06-22 05:06:39,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:06:39,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:06:39,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:06:39,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:06:41,063.063 INFO    ] ================================================
[2026-06-22 05:06:41,079.079 INFO    ] Launching Daemon at Mon Jun 22 05:06:41 IST 2026
[2026-06-22 05:06:41,089.089 INFO    ] ================================================
[2026-06-22 05:06:41,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:06:41
[2026-06-22 05:06:42,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:06:42,417.417 INFO    ] Initializing speech engine...
[2026-06-22 05:06:42,426.426 INFO    ] 2026-06-22 05:06:42
[2026-06-22 05:06:42,722.722 INFO    ] 2026-06-22 05:06:42
[2026-06-22 05:06:42,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:06:42,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:06:42,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:06:43,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:06:43,079.079 INFO    ] time= 22/06/2026 05:06:43
[2026-06-22 05:06:43,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:06:43,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:06:43,161.161 INFO    ] No existing commands found in stream
[2026-06-22 05:06:48,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:06:48,174.174 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-22 05:06:51,336.336 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:06:51,338.338 INFO    ] Checking for system updates...
[2026-06-22 05:06:51,380.380 INFO    ] 200
[2026-06-22 05:06:51,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:06:51,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:06:51,441.441 INFO    ] No update needed
[2026-06-22 05:06:51,443.443 INFO    ] Checking for camera pi updates...
[2026-06-22 05:06:51,482.482 INFO    ] 200
[2026-06-22 05:06:51,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:06:51,542.542 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:06:51,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:06:51,653.653 INFO    ] No camera update needed
[2026-06-22 05:06:51,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:06:51,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:06:51,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:06:51,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:06:53,715.715 INFO    ] ================================================
[2026-06-22 05:06:53,730.730 INFO    ] Launching Daemon at Mon Jun 22 05:06:53 IST 2026
[2026-06-22 05:06:53,741.741 INFO    ] ================================================
[2026-06-22 05:06:54,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:06:54
[2026-06-22 05:06:54,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:06:55,073.073 INFO    ] Initializing speech engine...
[2026-06-22 05:06:55,081.081 INFO    ] 2026-06-22 05:06:55
[2026-06-22 05:06:55,378.378 INFO    ] 2026-06-22 05:06:55
[2026-06-22 05:06:55,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:06:55,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:06:55,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:06:55,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:06:55,779.779 INFO    ] time= 22/06/2026 05:06:55
[2026-06-22 05:06:55,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:06:55,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:06:55,888.888 INFO    ] No existing commands found in stream
[2026-06-22 05:07:00,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:07:00,903.903 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-22 05:07:03,182.182 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:07:03,186.186 INFO    ] Checking for system updates...
[2026-06-22 05:07:03,232.232 INFO    ] 200
[2026-06-22 05:07:03,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:07:03,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:07:03,299.299 INFO    ] No update needed
[2026-06-22 05:07:03,303.303 INFO    ] Checking for camera pi updates...
[2026-06-22 05:07:03,353.353 INFO    ] 200
[2026-06-22 05:07:03,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:07:03,403.403 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:07:03,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:07:03,498.498 INFO    ] No camera update needed
[2026-06-22 05:07:03,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:07:03,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:07:03,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:07:03,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:07:05,557.557 INFO    ] ================================================
[2026-06-22 05:07:05,572.572 INFO    ] Launching Daemon at Mon Jun 22 05:07:05 IST 2026
[2026-06-22 05:07:05,583.583 INFO    ] ================================================
[2026-06-22 05:07:06,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:07:06
[2026-06-22 05:07:06,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:07:06,952.952 INFO    ] Initializing speech engine...
[2026-06-22 05:07:06,958.958 INFO    ] 2026-06-22 05:07:06
[2026-06-22 05:07:07,221.221 INFO    ] 2026-06-22 05:07:07
[2026-06-22 05:07:07,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:07:07,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:07:07,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:07:07,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:07:07,666.666 INFO    ] time= 22/06/2026 05:07:07
[2026-06-22 05:07:07,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:07:07,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:07:07,826.826 INFO    ] No existing commands found in stream
[2026-06-22 05:07:12,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:07:12,841.841 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-22 05:07:14,336.336 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:07:14,339.339 INFO    ] Checking for system updates...
[2026-06-22 05:07:14,375.375 INFO    ] 200
[2026-06-22 05:07:14,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:07:14,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:07:14,442.442 INFO    ] No update needed
[2026-06-22 05:07:14,444.444 INFO    ] Checking for camera pi updates...
[2026-06-22 05:07:14,479.479 INFO    ] 200
[2026-06-22 05:07:14,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:07:14,529.529 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:07:14,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:07:14,611.611 INFO    ] No camera update needed
[2026-06-22 05:07:14,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:07:14,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:07:14,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:07:14,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:07:16,669.669 INFO    ] ================================================
[2026-06-22 05:07:16,684.684 INFO    ] Launching Daemon at Mon Jun 22 05:07:16 IST 2026
[2026-06-22 05:07:16,695.695 INFO    ] ================================================
[2026-06-22 05:07:17,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:07:17
[2026-06-22 05:07:18,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:07:18,346.346 INFO    ] Initializing speech engine...
[2026-06-22 05:07:18,357.357 INFO    ] 2026-06-22 05:07:18
[2026-06-22 05:07:18,668.668 INFO    ] 2026-06-22 05:07:18
[2026-06-22 05:07:18,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:07:18,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:07:18,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:07:19,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:07:19,110.110 INFO    ] time= 22/06/2026 05:07:19
[2026-06-22 05:07:19,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:07:19,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:07:19,307.307 INFO    ] No existing commands found in stream
[2026-06-22 05:07:24,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:07:24,337.337 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-22 05:07:25,095.095 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:07:25,097.097 INFO    ] Checking for system updates...
[2026-06-22 05:07:25,118.118 INFO    ] 200
[2026-06-22 05:07:25,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:07:25,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:07:25,151.151 INFO    ] No update needed
[2026-06-22 05:07:25,152.152 INFO    ] Checking for camera pi updates...
[2026-06-22 05:07:25,180.180 INFO    ] 200
[2026-06-22 05:07:25,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:07:25,228.228 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:07:25,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:07:25,281.281 INFO    ] No camera update needed
[2026-06-22 05:07:25,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:07:25,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:07:25,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:07:25,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:07:27,338.338 INFO    ] ================================================
[2026-06-22 05:07:27,354.354 INFO    ] Launching Daemon at Mon Jun 22 05:07:27 IST 2026
[2026-06-22 05:07:27,365.365 INFO    ] ================================================
[2026-06-22 05:07:27,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:07:27
[2026-06-22 05:07:28,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:07:28,846.846 INFO    ] Initializing speech engine...
[2026-06-22 05:07:28,855.855 INFO    ] 2026-06-22 05:07:28
[2026-06-22 05:07:29,116.116 INFO    ] 2026-06-22 05:07:29
[2026-06-22 05:07:29,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:07:29,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:07:29,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:07:29,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:07:29,586.586 INFO    ] time= 22/06/2026 05:07:29
[2026-06-22 05:07:29,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:07:29,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:07:29,725.725 INFO    ] No existing commands found in stream
[2026-06-22 05:07:34,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:07:34,740.740 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-22 05:07:38,746.746 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:07:38,748.748 INFO    ] Checking for system updates...
[2026-06-22 05:07:38,785.785 INFO    ] 200
[2026-06-22 05:07:38,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:07:38,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:07:38,849.849 INFO    ] No update needed
[2026-06-22 05:07:38,852.852 INFO    ] Checking for camera pi updates...
[2026-06-22 05:07:38,886.886 INFO    ] 200
[2026-06-22 05:07:38,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:07:38,929.929 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:07:39,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:07:39,106.106 INFO    ] No camera update needed
[2026-06-22 05:07:39,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:07:39,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:07:39,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:07:39,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:07:41,162.162 INFO    ] ================================================
[2026-06-22 05:07:41,178.178 INFO    ] Launching Daemon at Mon Jun 22 05:07:41 IST 2026
[2026-06-22 05:07:41,189.189 INFO    ] ================================================
[2026-06-22 05:07:41,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:07:41
[2026-06-22 05:07:42,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:07:42,544.544 INFO    ] Initializing speech engine...
[2026-06-22 05:07:42,553.553 INFO    ] 2026-06-22 05:07:42
[2026-06-22 05:07:42,803.803 INFO    ] 2026-06-22 05:07:42
[2026-06-22 05:07:42,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:07:43,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:07:43,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:07:43,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:07:43,276.276 INFO    ] time= 22/06/2026 05:07:43
[2026-06-22 05:07:43,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:07:43,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:07:43,498.498 INFO    ] No existing commands found in stream
[2026-06-22 05:07:48,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:07:48,528.528 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-22 05:07:49,339.339 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:07:49,341.341 INFO    ] Checking for system updates...
[2026-06-22 05:07:49,363.363 INFO    ] 200
[2026-06-22 05:07:49,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:07:49,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:07:49,409.409 INFO    ] No update needed
[2026-06-22 05:07:49,411.411 INFO    ] Checking for camera pi updates...
[2026-06-22 05:07:49,445.445 INFO    ] 200
[2026-06-22 05:07:49,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:07:49,488.488 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:07:49,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:07:49,581.581 INFO    ] No camera update needed
[2026-06-22 05:07:49,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:07:49,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:07:49,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:07:49,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:07:51,638.638 INFO    ] ================================================
[2026-06-22 05:07:51,655.655 INFO    ] Launching Daemon at Mon Jun 22 05:07:51 IST 2026
[2026-06-22 05:07:51,665.665 INFO    ] ================================================
[2026-06-22 05:07:52,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:07:52
[2026-06-22 05:07:52,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:07:53,041.041 INFO    ] Initializing speech engine...
[2026-06-22 05:07:53,050.050 INFO    ] 2026-06-22 05:07:53
[2026-06-22 05:07:53,309.309 INFO    ] 2026-06-22 05:07:53
[2026-06-22 05:07:53,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:07:53,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:07:53,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:07:53,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:07:53,785.785 INFO    ] time= 22/06/2026 05:07:53
[2026-06-22 05:07:53,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:07:53,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:07:53,920.920 INFO    ] No existing commands found in stream
[2026-06-22 05:07:58,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:07:58,942.942 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-22 05:08:02,615.615 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:08:02,619.619 INFO    ] Checking for system updates...
[2026-06-22 05:08:02,670.670 INFO    ] 200
[2026-06-22 05:08:02,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:08:02,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:08:02,740.740 INFO    ] No update needed
[2026-06-22 05:08:02,743.743 INFO    ] Checking for camera pi updates...
[2026-06-22 05:08:02,782.782 INFO    ] 200
[2026-06-22 05:08:02,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:08:02,836.836 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:08:02,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:08:02,928.928 INFO    ] No camera update needed
[2026-06-22 05:08:02,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:08:02,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:08:02,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:08:02,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:08:04,990.990 INFO    ] ================================================
[2026-06-22 05:08:05,006.006 INFO    ] Launching Daemon at Mon Jun 22 05:08:05 IST 2026
[2026-06-22 05:08:05,017.017 INFO    ] ================================================
[2026-06-22 05:08:05,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:08:05
[2026-06-22 05:08:06,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:08:06,389.389 INFO    ] Initializing speech engine...
[2026-06-22 05:08:06,402.402 INFO    ] 2026-06-22 05:08:06
[2026-06-22 05:08:06,691.691 INFO    ] 2026-06-22 05:08:06
[2026-06-22 05:08:06,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:08:06,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:08:06,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:08:07,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:08:07,068.068 INFO    ] time= 22/06/2026 05:08:07
[2026-06-22 05:08:07,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:08:07,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:08:07,319.319 INFO    ] No existing commands found in stream
[2026-06-22 05:08:12,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:08:12,352.352 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-22 05:08:18,202.202 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:08:18,205.205 INFO    ] Checking for system updates...
[2026-06-22 05:08:18,244.244 INFO    ] 200
[2026-06-22 05:08:18,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:08:18,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:08:18,304.304 INFO    ] No update needed
[2026-06-22 05:08:18,307.307 INFO    ] Checking for camera pi updates...
[2026-06-22 05:08:18,343.343 INFO    ] 200
[2026-06-22 05:08:18,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:08:18,389.389 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:08:18,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:08:18,471.471 INFO    ] No camera update needed
[2026-06-22 05:08:18,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:08:18,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:08:18,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:08:18,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:08:20,526.526 INFO    ] ================================================
[2026-06-22 05:08:20,541.541 INFO    ] Launching Daemon at Mon Jun 22 05:08:20 IST 2026
[2026-06-22 05:08:20,552.552 INFO    ] ================================================
[2026-06-22 05:08:21,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:08:21
[2026-06-22 05:08:21,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:08:21,928.928 INFO    ] Initializing speech engine...
[2026-06-22 05:08:21,938.938 INFO    ] 2026-06-22 05:08:21
[2026-06-22 05:08:22,186.186 INFO    ] 2026-06-22 05:08:22
[2026-06-22 05:08:22,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:08:22,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:08:22,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:08:22,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:08:22,567.567 INFO    ] time= 22/06/2026 05:08:22
[2026-06-22 05:08:22,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:08:22,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:08:22,748.748 INFO    ] No existing commands found in stream
[2026-06-22 05:08:27,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:08:27,779.779 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-22 05:08:29,053.053 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:08:29,056.056 INFO    ] Checking for system updates...
[2026-06-22 05:08:29,093.093 INFO    ] 200
[2026-06-22 05:08:29,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:08:29,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:08:29,150.150 INFO    ] No update needed
[2026-06-22 05:08:29,152.152 INFO    ] Checking for camera pi updates...
[2026-06-22 05:08:29,186.186 INFO    ] 200
[2026-06-22 05:08:29,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:08:29,229.229 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:08:29,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:08:29,305.305 INFO    ] No camera update needed
[2026-06-22 05:08:29,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:08:29,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:08:29,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:08:29,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:08:31,362.362 INFO    ] ================================================
[2026-06-22 05:08:31,377.377 INFO    ] Launching Daemon at Mon Jun 22 05:08:31 IST 2026
[2026-06-22 05:08:31,388.388 INFO    ] ================================================
[2026-06-22 05:08:31,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:08:31
[2026-06-22 05:08:32,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:08:32,901.901 INFO    ] Initializing speech engine...
[2026-06-22 05:08:32,917.917 INFO    ] 2026-06-22 05:08:32
[2026-06-22 05:08:33,194.194 INFO    ] 2026-06-22 05:08:33
[2026-06-22 05:08:33,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:08:33,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:08:33,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:08:33,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:08:33,539.539 INFO    ] time= 22/06/2026 05:08:33
[2026-06-22 05:08:33,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:08:33,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:08:33,614.614 INFO    ] No existing commands found in stream
[2026-06-22 05:08:38,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:08:38,630.630 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-22 05:08:39,450.450 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:08:39,451.451 INFO    ] Checking for system updates...
[2026-06-22 05:08:39,473.473 INFO    ] 200
[2026-06-22 05:08:39,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:08:39,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:08:39,508.508 INFO    ] No update needed
[2026-06-22 05:08:39,509.509 INFO    ] Checking for camera pi updates...
[2026-06-22 05:08:39,529.529 INFO    ] 200
[2026-06-22 05:08:39,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:08:39,576.576 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:08:39,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:08:39,665.665 INFO    ] No camera update needed
[2026-06-22 05:08:39,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:08:39,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:08:39,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:08:39,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:08:41,720.720 INFO    ] ================================================
[2026-06-22 05:08:41,736.736 INFO    ] Launching Daemon at Mon Jun 22 05:08:41 IST 2026
[2026-06-22 05:08:41,746.746 INFO    ] ================================================
[2026-06-22 05:08:42,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:08:42
[2026-06-22 05:08:42,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:08:43,189.189 INFO    ] Initializing speech engine...
[2026-06-22 05:08:43,196.196 INFO    ] 2026-06-22 05:08:43
[2026-06-22 05:08:43,440.440 INFO    ] 2026-06-22 05:08:43
[2026-06-22 05:08:43,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:08:43,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:08:43,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:08:43,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:08:43,810.810 INFO    ] time= 22/06/2026 05:08:43
[2026-06-22 05:08:43,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:08:43,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:08:43,994.994 INFO    ] No existing commands found in stream
[2026-06-22 05:08:49,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:08:49,026.026 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-22 05:08:51,869.869 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:08:51,870.870 INFO    ] Checking for system updates...
[2026-06-22 05:08:51,890.890 INFO    ] 200
[2026-06-22 05:08:51,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:08:51,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:08:51,923.923 INFO    ] No update needed
[2026-06-22 05:08:51,924.924 INFO    ] Checking for camera pi updates...
[2026-06-22 05:08:51,955.955 INFO    ] 200
[2026-06-22 05:08:51,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:08:51,998.998 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:08:52,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:08:52,080.080 INFO    ] No camera update needed
[2026-06-22 05:08:52,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:08:52,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:08:52,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:08:52,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:08:54,136.136 INFO    ] ================================================
[2026-06-22 05:08:54,152.152 INFO    ] Launching Daemon at Mon Jun 22 05:08:54 IST 2026
[2026-06-22 05:08:54,162.162 INFO    ] ================================================
[2026-06-22 05:08:54,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:08:54
[2026-06-22 05:08:55,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:08:55,522.522 INFO    ] Initializing speech engine...
[2026-06-22 05:08:55,531.531 INFO    ] 2026-06-22 05:08:55
[2026-06-22 05:08:55,801.801 INFO    ] 2026-06-22 05:08:55
[2026-06-22 05:08:55,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:08:56,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:08:56,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:08:56,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:08:56,215.215 INFO    ] time= 22/06/2026 05:08:56
[2026-06-22 05:08:56,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:08:56,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:08:56,298.298 INFO    ] No existing commands found in stream
[2026-06-22 05:09:01,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:09:01,314.314 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-22 05:09:02,034.034 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:09:02,037.037 INFO    ] Checking for system updates...
[2026-06-22 05:09:02,078.078 INFO    ] 200
[2026-06-22 05:09:02,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:09:02,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:09:02,149.149 INFO    ] No update needed
[2026-06-22 05:09:02,151.151 INFO    ] Checking for camera pi updates...
[2026-06-22 05:09:02,194.194 INFO    ] 200
[2026-06-22 05:09:02,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:09:02,250.250 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:09:02,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:09:02,313.313 INFO    ] No camera update needed
[2026-06-22 05:09:02,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:09:02,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:09:02,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:09:02,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:09:04,379.379 INFO    ] ================================================
[2026-06-22 05:09:04,395.395 INFO    ] Launching Daemon at Mon Jun 22 05:09:04 IST 2026
[2026-06-22 05:09:04,405.405 INFO    ] ================================================
[2026-06-22 05:09:04,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:09:04
[2026-06-22 05:09:05,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:09:05,857.857 INFO    ] Initializing speech engine...
[2026-06-22 05:09:05,866.866 INFO    ] 2026-06-22 05:09:05
[2026-06-22 05:09:06,117.117 INFO    ] 2026-06-22 05:09:06
[2026-06-22 05:09:06,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:09:06,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:09:06,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:09:06,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:09:06,446.446 INFO    ] time= 22/06/2026 05:09:06
[2026-06-22 05:09:06,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:09:06,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:09:06,527.527 INFO    ] No existing commands found in stream
[2026-06-22 05:09:11,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:09:11,541.541 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-22 05:09:13,182.182 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:09:13,185.185 INFO    ] Checking for system updates...
[2026-06-22 05:09:13,224.224 INFO    ] 200
[2026-06-22 05:09:13,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:09:13,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:09:13,282.282 INFO    ] No update needed
[2026-06-22 05:09:13,285.285 INFO    ] Checking for camera pi updates...
[2026-06-22 05:09:13,319.319 INFO    ] 200
[2026-06-22 05:09:13,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:09:13,366.366 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:09:13,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:09:13,472.472 INFO    ] No camera update needed
[2026-06-22 05:09:13,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:09:13,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:09:13,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:09:13,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:09:15,528.528 INFO    ] ================================================
[2026-06-22 05:09:15,543.543 INFO    ] Launching Daemon at Mon Jun 22 05:09:15 IST 2026
[2026-06-22 05:09:15,554.554 INFO    ] ================================================
[2026-06-22 05:09:16,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:09:16
[2026-06-22 05:09:16,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:09:17,137.137 INFO    ] Initializing speech engine...
[2026-06-22 05:09:17,148.148 INFO    ] 2026-06-22 05:09:17
[2026-06-22 05:09:17,420.420 INFO    ] 2026-06-22 05:09:17
[2026-06-22 05:09:17,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:09:17,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:09:17,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:09:17,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:09:17,767.767 INFO    ] time= 22/06/2026 05:09:17
[2026-06-22 05:09:17,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:09:17,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:09:17,847.847 INFO    ] No existing commands found in stream
[2026-06-22 05:09:22,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:09:22,860.860 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-22 05:09:26,761.761 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:09:26,762.762 INFO    ] Checking for system updates...
[2026-06-22 05:09:26,783.783 INFO    ] 200
[2026-06-22 05:09:26,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:09:26,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:09:26,819.819 INFO    ] No update needed
[2026-06-22 05:09:26,820.820 INFO    ] Checking for camera pi updates...
[2026-06-22 05:09:26,839.839 INFO    ] 200
[2026-06-22 05:09:26,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:09:26,873.873 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:09:26,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:09:26,957.957 INFO    ] No camera update needed
[2026-06-22 05:09:26,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:09:26,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:09:26,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:09:26,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:09:29,019.019 INFO    ] ================================================
[2026-06-22 05:09:29,034.034 INFO    ] Launching Daemon at Mon Jun 22 05:09:29 IST 2026
[2026-06-22 05:09:29,045.045 INFO    ] ================================================
[2026-06-22 05:09:29,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:09:29
[2026-06-22 05:09:30,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:09:30,469.469 INFO    ] Initializing speech engine...
[2026-06-22 05:09:30,479.479 INFO    ] 2026-06-22 05:09:30
[2026-06-22 05:09:30,726.726 INFO    ] 2026-06-22 05:09:30
[2026-06-22 05:09:30,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:09:30,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:09:30,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:09:31,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:09:31,088.088 INFO    ] time= 22/06/2026 05:09:31
[2026-06-22 05:09:31,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:09:31,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:09:31,202.202 INFO    ] No existing commands found in stream
[2026-06-22 05:09:36,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:09:36,215.215 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-22 05:09:40,431.431 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:09:40,434.434 INFO    ] Checking for system updates...
[2026-06-22 05:09:40,472.472 INFO    ] 200
[2026-06-22 05:09:40,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:09:40,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:09:40,542.542 INFO    ] No update needed
[2026-06-22 05:09:40,547.547 INFO    ] Checking for camera pi updates...
[2026-06-22 05:09:40,600.600 INFO    ] 200
[2026-06-22 05:09:40,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:09:40,672.672 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:09:40,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:09:40,840.840 INFO    ] No camera update needed
[2026-06-22 05:09:40,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:09:40,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:09:40,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:09:40,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:09:42,901.901 INFO    ] ================================================
[2026-06-22 05:09:42,917.917 INFO    ] Launching Daemon at Mon Jun 22 05:09:42 IST 2026
[2026-06-22 05:09:42,927.927 INFO    ] ================================================
[2026-06-22 05:09:43,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:09:43
[2026-06-22 05:09:44,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:09:44,307.307 INFO    ] Initializing speech engine...
[2026-06-22 05:09:44,316.316 INFO    ] 2026-06-22 05:09:44
[2026-06-22 05:09:44,583.583 INFO    ] 2026-06-22 05:09:44
[2026-06-22 05:09:44,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:09:44,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:09:44,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:09:44,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:09:44,937.937 INFO    ] time= 22/06/2026 05:09:44
[2026-06-22 05:09:44,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:09:44,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:09:45,014.014 INFO    ] No existing commands found in stream
[2026-06-22 05:09:50,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:09:50,030.030 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-22 05:09:52,243.243 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:09:52,246.246 INFO    ] Checking for system updates...
[2026-06-22 05:09:52,282.282 INFO    ] 200
[2026-06-22 05:09:52,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:09:52,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:09:52,340.340 INFO    ] No update needed
[2026-06-22 05:09:52,342.342 INFO    ] Checking for camera pi updates...
[2026-06-22 05:09:52,376.376 INFO    ] 200
[2026-06-22 05:09:52,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:09:52,419.419 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:09:52,501.501 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:09:52,504.504 INFO    ] No camera update needed
[2026-06-22 05:09:52,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:09:52,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:09:52,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:09:52,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:09:54,559.559 INFO    ] ================================================
[2026-06-22 05:09:54,574.574 INFO    ] Launching Daemon at Mon Jun 22 05:09:54 IST 2026
[2026-06-22 05:09:54,585.585 INFO    ] ================================================
[2026-06-22 05:09:55,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:09:55
[2026-06-22 05:09:55,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:09:55,951.951 INFO    ] Initializing speech engine...
[2026-06-22 05:09:55,965.965 INFO    ] 2026-06-22 05:09:55
[2026-06-22 05:09:56,249.249 INFO    ] 2026-06-22 05:09:56
[2026-06-22 05:09:56,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:09:56,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:09:56,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:09:56,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:09:56,656.656 INFO    ] time= 22/06/2026 05:09:56
[2026-06-22 05:09:56,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:09:56,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:09:56,747.747 INFO    ] No existing commands found in stream
[2026-06-22 05:10:01,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:10:01,774.774 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-22 05:10:04,449.449 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:10:04,452.452 INFO    ] Checking for system updates...
[2026-06-22 05:10:04,487.487 INFO    ] 200
[2026-06-22 05:10:04,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:10:04,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:10:04,552.552 INFO    ] No update needed
[2026-06-22 05:10:04,554.554 INFO    ] Checking for camera pi updates...
[2026-06-22 05:10:04,587.587 INFO    ] 200
[2026-06-22 05:10:04,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:10:04,631.631 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:10:04,702.702 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:10:04,705.705 INFO    ] No camera update needed
[2026-06-22 05:10:04,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:10:04,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:10:04,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:10:04,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:10:06,760.760 INFO    ] ================================================
[2026-06-22 05:10:06,775.775 INFO    ] Launching Daemon at Mon Jun 22 05:10:06 IST 2026
[2026-06-22 05:10:06,786.786 INFO    ] ================================================
[2026-06-22 05:10:07,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:10:07
[2026-06-22 05:10:07,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:10:08,223.223 INFO    ] Initializing speech engine...
[2026-06-22 05:10:08,232.232 INFO    ] 2026-06-22 05:10:08
[2026-06-22 05:10:08,483.483 INFO    ] 2026-06-22 05:10:08
[2026-06-22 05:10:08,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:10:08,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:10:08,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:10:08,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:10:08,822.822 INFO    ] time= 22/06/2026 05:10:08
[2026-06-22 05:10:08,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:10:08,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:10:08,937.937 INFO    ] No existing commands found in stream
[2026-06-22 05:10:13,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:10:13,949.949 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-22 05:10:15,834.834 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:10:15,837.837 INFO    ] Checking for system updates...
[2026-06-22 05:10:15,873.873 INFO    ] 200
[2026-06-22 05:10:15,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:10:15,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:10:15,936.936 INFO    ] No update needed
[2026-06-22 05:10:15,939.939 INFO    ] Checking for camera pi updates...
[2026-06-22 05:10:15,972.972 INFO    ] 200
[2026-06-22 05:10:15,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:10:16,016.016 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:10:16,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:10:16,154.154 INFO    ] No camera update needed
[2026-06-22 05:10:16,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:10:16,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:10:16,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:10:16,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:10:18,210.210 INFO    ] ================================================
[2026-06-22 05:10:18,225.225 INFO    ] Launching Daemon at Mon Jun 22 05:10:18 IST 2026
[2026-06-22 05:10:18,236.236 INFO    ] ================================================
[2026-06-22 05:10:18,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:10:18
[2026-06-22 05:10:19,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:10:19,582.582 INFO    ] Initializing speech engine...
[2026-06-22 05:10:19,599.599 INFO    ] 2026-06-22 05:10:19
[2026-06-22 05:10:19,885.885 INFO    ] 2026-06-22 05:10:19
[2026-06-22 05:10:19,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:10:20,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:10:20,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:10:20,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:10:20,236.236 INFO    ] time= 22/06/2026 05:10:20
[2026-06-22 05:10:20,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:10:20,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:10:20,384.384 INFO    ] No existing commands found in stream
[2026-06-22 05:10:25,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:10:25,398.398 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-22 05:10:29,169.169 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:10:29,171.171 INFO    ] Checking for system updates...
[2026-06-22 05:10:29,208.208 INFO    ] 200
[2026-06-22 05:10:29,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:10:29,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:10:29,268.268 INFO    ] No update needed
[2026-06-22 05:10:29,270.270 INFO    ] Checking for camera pi updates...
[2026-06-22 05:10:29,308.308 INFO    ] 200
[2026-06-22 05:10:29,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:10:29,357.357 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:10:29,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:10:29,442.442 INFO    ] No camera update needed
[2026-06-22 05:10:29,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:10:29,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:10:29,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:10:29,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:10:31,499.499 INFO    ] ================================================
[2026-06-22 05:10:31,514.514 INFO    ] Launching Daemon at Mon Jun 22 05:10:31 IST 2026
[2026-06-22 05:10:31,525.525 INFO    ] ================================================
[2026-06-22 05:10:32,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:10:32
[2026-06-22 05:10:32,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:10:33,214.214 INFO    ] Initializing speech engine...
[2026-06-22 05:10:33,225.225 INFO    ] 2026-06-22 05:10:33
[2026-06-22 05:10:33,498.498 INFO    ] 2026-06-22 05:10:33
[2026-06-22 05:10:33,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:10:33,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:10:33,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:10:33,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:10:33,965.965 INFO    ] time= 22/06/2026 05:10:33
[2026-06-22 05:10:34,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:10:34,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:10:34,103.103 INFO    ] No existing commands found in stream
[2026-06-22 05:10:39,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:10:39,120.120 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-22 05:10:39,987.987 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:10:39,989.989 INFO    ] Checking for system updates...
[2026-06-22 05:10:40,017.017 INFO    ] 200
[2026-06-22 05:10:40,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:10:40,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:10:40,082.082 INFO    ] No update needed
[2026-06-22 05:10:40,084.084 INFO    ] Checking for camera pi updates...
[2026-06-22 05:10:40,122.122 INFO    ] 200
[2026-06-22 05:10:40,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:10:40,167.167 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:10:40,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:10:40,252.252 INFO    ] No camera update needed
[2026-06-22 05:10:40,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:10:40,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:10:40,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:10:40,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:10:42,311.311 INFO    ] ================================================
[2026-06-22 05:10:42,326.326 INFO    ] Launching Daemon at Mon Jun 22 05:10:42 IST 2026
[2026-06-22 05:10:42,337.337 INFO    ] ================================================
[2026-06-22 05:10:42,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:10:42
[2026-06-22 05:10:43,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:10:43,784.784 INFO    ] Initializing speech engine...
[2026-06-22 05:10:43,800.800 INFO    ] 2026-06-22 05:10:43
[2026-06-22 05:10:44,060.060 INFO    ] 2026-06-22 05:10:44
[2026-06-22 05:10:44,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:10:44,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:10:44,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:10:44,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:10:44,468.468 INFO    ] time= 22/06/2026 05:10:44
[2026-06-22 05:10:44,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:10:44,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:10:44,557.557 INFO    ] No existing commands found in stream
[2026-06-22 05:10:49,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:10:49,575.575 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-22 05:10:50,029.029 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:10:50,032.032 INFO    ] Checking for system updates...
[2026-06-22 05:10:50,068.068 INFO    ] 200
[2026-06-22 05:10:50,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:10:50,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:10:50,126.126 INFO    ] No update needed
[2026-06-22 05:10:50,128.128 INFO    ] Checking for camera pi updates...
[2026-06-22 05:10:50,165.165 INFO    ] 200
[2026-06-22 05:10:50,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:10:50,210.210 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:10:50,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:10:50,293.293 INFO    ] No camera update needed
[2026-06-22 05:10:50,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:10:50,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:10:50,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:10:50,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:10:52,351.351 INFO    ] ================================================
[2026-06-22 05:10:52,366.366 INFO    ] Launching Daemon at Mon Jun 22 05:10:52 IST 2026
[2026-06-22 05:10:52,377.377 INFO    ] ================================================
[2026-06-22 05:10:52,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:10:52
[2026-06-22 05:10:53,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:10:53,718.718 INFO    ] Initializing speech engine...
[2026-06-22 05:10:53,725.725 INFO    ] 2026-06-22 05:10:53
[2026-06-22 05:10:54,022.022 INFO    ] 2026-06-22 05:10:53
[2026-06-22 05:10:54,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:10:54,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:10:54,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:10:54,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:10:54,379.379 INFO    ] time= 22/06/2026 05:10:54
[2026-06-22 05:10:54,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:10:54,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:10:54,458.458 INFO    ] No existing commands found in stream
[2026-06-22 05:10:59,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:10:59,471.471 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-22 05:11:02,868.868 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:11:02,871.871 INFO    ] Checking for system updates...
[2026-06-22 05:11:02,923.923 INFO    ] 200
[2026-06-22 05:11:02,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:11:03,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:11:03,027.027 INFO    ] No update needed
[2026-06-22 05:11:03,030.030 INFO    ] Checking for camera pi updates...
[2026-06-22 05:11:03,090.090 INFO    ] 200
[2026-06-22 05:11:03,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:11:03,145.145 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:11:03,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:11:03,201.201 INFO    ] No camera update needed
[2026-06-22 05:11:03,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:11:03,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:11:03,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:11:03,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:11:05,262.262 INFO    ] ================================================
[2026-06-22 05:11:05,277.277 INFO    ] Launching Daemon at Mon Jun 22 05:11:05 IST 2026
[2026-06-22 05:11:05,288.288 INFO    ] ================================================
[2026-06-22 05:11:05,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:11:05
[2026-06-22 05:11:06,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:11:06,751.751 INFO    ] Initializing speech engine...
[2026-06-22 05:11:06,760.760 INFO    ] 2026-06-22 05:11:06
[2026-06-22 05:11:07,055.055 INFO    ] 2026-06-22 05:11:07
[2026-06-22 05:11:07,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:11:07,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:11:07,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:11:07,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:11:07,434.434 INFO    ] time= 22/06/2026 05:11:07
[2026-06-22 05:11:07,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:11:07,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:11:07,562.562 INFO    ] No existing commands found in stream
[2026-06-22 05:11:12,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:11:12,579.579 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-22 05:11:14,390.390 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:11:14,393.393 INFO    ] Checking for system updates...
[2026-06-22 05:11:14,429.429 INFO    ] 200
[2026-06-22 05:11:14,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:11:14,486.486 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:11:14,488.488 INFO    ] No update needed
[2026-06-22 05:11:14,491.491 INFO    ] Checking for camera pi updates...
[2026-06-22 05:11:14,526.526 INFO    ] 200
[2026-06-22 05:11:14,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:11:14,571.571 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:11:14,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:11:14,655.655 INFO    ] No camera update needed
[2026-06-22 05:11:14,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:11:14,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:11:14,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:11:14,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:11:16,713.713 INFO    ] ================================================
[2026-06-22 05:11:16,729.729 INFO    ] Launching Daemon at Mon Jun 22 05:11:16 IST 2026
[2026-06-22 05:11:16,740.740 INFO    ] ================================================
[2026-06-22 05:11:17,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:11:17
[2026-06-22 05:11:17,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:11:18,050.050 INFO    ] Initializing speech engine...
[2026-06-22 05:11:18,076.076 INFO    ] 2026-06-22 05:11:18
[2026-06-22 05:11:18,328.328 INFO    ] 2026-06-22 05:11:18
[2026-06-22 05:11:18,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:11:18,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:11:18,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:11:18,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:11:18,650.650 INFO    ] time= 22/06/2026 05:11:18
[2026-06-22 05:11:18,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:11:18,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:11:18,736.736 INFO    ] No existing commands found in stream
[2026-06-22 05:11:23,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:11:23,756.756 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-22 05:11:26,567.567 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:11:26,569.569 INFO    ] Checking for system updates...
[2026-06-22 05:11:26,607.607 INFO    ] 200
[2026-06-22 05:11:26,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:11:26,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:11:26,666.666 INFO    ] No update needed
[2026-06-22 05:11:26,673.673 INFO    ] Checking for camera pi updates...
[2026-06-22 05:11:26,710.710 INFO    ] 200
[2026-06-22 05:11:26,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:11:26,753.753 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:11:26,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:11:26,848.848 INFO    ] No camera update needed
[2026-06-22 05:11:26,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:11:26,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:11:26,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:11:26,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:11:28,906.906 INFO    ] ================================================
[2026-06-22 05:11:28,922.922 INFO    ] Launching Daemon at Mon Jun 22 05:11:28 IST 2026
[2026-06-22 05:11:28,933.933 INFO    ] ================================================
[2026-06-22 05:11:29,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:11:29
[2026-06-22 05:11:30,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:11:30,393.393 INFO    ] Initializing speech engine...
[2026-06-22 05:11:30,399.399 INFO    ] 2026-06-22 05:11:30
[2026-06-22 05:11:30,661.661 INFO    ] 2026-06-22 05:11:30
[2026-06-22 05:11:30,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:11:30,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:11:30,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:11:31,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:11:31,141.141 INFO    ] time= 22/06/2026 05:11:31
[2026-06-22 05:11:31,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:11:31,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:11:31,358.358 INFO    ] No existing commands found in stream
[2026-06-22 05:11:36,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:11:36,375.375 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-22 05:11:39,608.608 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:11:39,610.610 INFO    ] Checking for system updates...
[2026-06-22 05:11:39,633.633 INFO    ] 200
[2026-06-22 05:11:39,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:11:39,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:11:39,699.699 INFO    ] No update needed
[2026-06-22 05:11:39,702.702 INFO    ] Checking for camera pi updates...
[2026-06-22 05:11:39,737.737 INFO    ] 200
[2026-06-22 05:11:39,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:11:39,781.781 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:11:39,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:11:39,863.863 INFO    ] No camera update needed
[2026-06-22 05:11:39,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:11:39,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:11:39,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:11:39,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:11:41,922.922 INFO    ] ================================================
[2026-06-22 05:11:41,938.938 INFO    ] Launching Daemon at Mon Jun 22 05:11:41 IST 2026
[2026-06-22 05:11:41,950.950 INFO    ] ================================================
[2026-06-22 05:11:42,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:11:42
[2026-06-22 05:11:43,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:11:43,262.262 INFO    ] Initializing speech engine...
[2026-06-22 05:11:43,285.285 INFO    ] 2026-06-22 05:11:43
[2026-06-22 05:11:43,552.552 INFO    ] 2026-06-22 05:11:43
[2026-06-22 05:11:43,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:11:43,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:11:43,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:11:43,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:11:43,899.899 INFO    ] time= 22/06/2026 05:11:43
[2026-06-22 05:11:43,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:11:43,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:11:44,021.021 INFO    ] No existing commands found in stream
[2026-06-22 05:11:49,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:11:49,055.055 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-22 05:11:50,671.671 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:11:50,674.674 INFO    ] Checking for system updates...
[2026-06-22 05:11:50,712.712 INFO    ] 200
[2026-06-22 05:11:50,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:11:50,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:11:50,770.770 INFO    ] No update needed
[2026-06-22 05:11:50,772.772 INFO    ] Checking for camera pi updates...
[2026-06-22 05:11:50,805.805 INFO    ] 200
[2026-06-22 05:11:50,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:11:50,849.849 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:11:51,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:11:51,009.009 INFO    ] No camera update needed
[2026-06-22 05:11:51,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:11:51,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:11:51,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:11:51,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:11:53,064.064 INFO    ] ================================================
[2026-06-22 05:11:53,080.080 INFO    ] Launching Daemon at Mon Jun 22 05:11:53 IST 2026
[2026-06-22 05:11:53,090.090 INFO    ] ================================================
[2026-06-22 05:11:53,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:11:53
[2026-06-22 05:11:54,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:11:54,415.415 INFO    ] Initializing speech engine...
[2026-06-22 05:11:54,434.434 INFO    ] 2026-06-22 05:11:54
[2026-06-22 05:11:54,685.685 INFO    ] 2026-06-22 05:11:54
[2026-06-22 05:11:54,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:11:54,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:11:54,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:11:55,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:11:55,076.076 INFO    ] time= 22/06/2026 05:11:55
[2026-06-22 05:11:55,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:11:55,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:11:55,238.238 INFO    ] No existing commands found in stream
[2026-06-22 05:12:00,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:12:00,263.263 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-22 05:12:00,625.625 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:12:00,626.626 INFO    ] Checking for system updates...
[2026-06-22 05:12:00,648.648 INFO    ] 200
[2026-06-22 05:12:00,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:12:00,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:12:00,685.685 INFO    ] No update needed
[2026-06-22 05:12:00,686.686 INFO    ] Checking for camera pi updates...
[2026-06-22 05:12:00,706.706 INFO    ] 200
[2026-06-22 05:12:00,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:12:00,748.748 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:12:00,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:12:00,838.838 INFO    ] No camera update needed
[2026-06-22 05:12:00,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:12:00,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:12:00,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:12:00,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:12:02,901.901 INFO    ] ================================================
[2026-06-22 05:12:02,919.919 INFO    ] Launching Daemon at Mon Jun 22 05:12:02 IST 2026
[2026-06-22 05:12:02,931.931 INFO    ] ================================================
[2026-06-22 05:12:03,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:12:03
[2026-06-22 05:12:04,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:12:04,418.418 INFO    ] Initializing speech engine...
[2026-06-22 05:12:04,424.424 INFO    ] 2026-06-22 05:12:04
[2026-06-22 05:12:04,720.720 INFO    ] 2026-06-22 05:12:04
[2026-06-22 05:12:04,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:12:05,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:12:05,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:12:05,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:12:05,224.224 INFO    ] time= 22/06/2026 05:12:05
[2026-06-22 05:12:05,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:12:05,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:12:05,431.431 INFO    ] No existing commands found in stream
[2026-06-22 05:12:10,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:12:10,447.447 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-22 05:12:13,221.221 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:12:13,223.223 INFO    ] Checking for system updates...
[2026-06-22 05:12:13,259.259 INFO    ] 200
[2026-06-22 05:12:13,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:12:13,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:12:13,336.336 INFO    ] No update needed
[2026-06-22 05:12:13,338.338 INFO    ] Checking for camera pi updates...
[2026-06-22 05:12:13,372.372 INFO    ] 200
[2026-06-22 05:12:13,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:12:13,419.419 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:12:13,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:12:13,500.500 INFO    ] No camera update needed
[2026-06-22 05:12:13,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:12:13,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:12:13,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:12:13,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:12:15,555.555 INFO    ] ================================================
[2026-06-22 05:12:15,571.571 INFO    ] Launching Daemon at Mon Jun 22 05:12:15 IST 2026
[2026-06-22 05:12:15,582.582 INFO    ] ================================================
[2026-06-22 05:12:16,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:12:16
[2026-06-22 05:12:16,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:12:16,899.899 INFO    ] Initializing speech engine...
[2026-06-22 05:12:16,905.905 INFO    ] 2026-06-22 05:12:16
[2026-06-22 05:12:17,196.196 INFO    ] 2026-06-22 05:12:17
[2026-06-22 05:12:17,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:12:17,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:12:17,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:12:17,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:12:17,589.589 INFO    ] time= 22/06/2026 05:12:17
[2026-06-22 05:12:17,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:12:17,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:12:17,719.719 INFO    ] No existing commands found in stream
[2026-06-22 05:12:22,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:12:22,734.734 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-22 05:12:24,054.054 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:12:24,057.057 INFO    ] Checking for system updates...
[2026-06-22 05:12:24,093.093 INFO    ] 200
[2026-06-22 05:12:24,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:12:24,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:12:24,150.150 INFO    ] No update needed
[2026-06-22 05:12:24,153.153 INFO    ] Checking for camera pi updates...
[2026-06-22 05:12:24,186.186 INFO    ] 200
[2026-06-22 05:12:24,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:12:24,229.229 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:12:24,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:12:24,319.319 INFO    ] No camera update needed
[2026-06-22 05:12:24,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:12:24,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:12:24,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:12:24,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:12:26,383.383 INFO    ] ================================================
[2026-06-22 05:12:26,399.399 INFO    ] Launching Daemon at Mon Jun 22 05:12:26 IST 2026
[2026-06-22 05:12:26,410.410 INFO    ] ================================================
[2026-06-22 05:12:26,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:12:26
[2026-06-22 05:12:27,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:12:27,761.761 INFO    ] Initializing speech engine...
[2026-06-22 05:12:27,767.767 INFO    ] 2026-06-22 05:12:27
[2026-06-22 05:12:28,065.065 INFO    ] 2026-06-22 05:12:28
[2026-06-22 05:12:28,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:12:28,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:12:28,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:12:28,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:12:28,445.445 INFO    ] time= 22/06/2026 05:12:28
[2026-06-22 05:12:28,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:12:28,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:12:28,568.568 INFO    ] No existing commands found in stream
[2026-06-22 05:12:33,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:12:33,584.584 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-22 05:12:37,585.585 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:12:37,586.586 INFO    ] Checking for system updates...
[2026-06-22 05:12:37,607.607 INFO    ] 200
[2026-06-22 05:12:37,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:12:37,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:12:37,640.640 INFO    ] No update needed
[2026-06-22 05:12:37,641.641 INFO    ] Checking for camera pi updates...
[2026-06-22 05:12:37,677.677 INFO    ] 200
[2026-06-22 05:12:37,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:12:37,720.720 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:12:37,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:12:37,806.806 INFO    ] No camera update needed
[2026-06-22 05:12:37,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:12:37,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:12:37,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:12:37,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:12:39,863.863 INFO    ] ================================================
[2026-06-22 05:12:39,878.878 INFO    ] Launching Daemon at Mon Jun 22 05:12:39 IST 2026
[2026-06-22 05:12:39,889.889 INFO    ] ================================================
[2026-06-22 05:12:40,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:12:40
[2026-06-22 05:12:41,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:12:41,349.349 INFO    ] Initializing speech engine...
[2026-06-22 05:12:41,363.363 INFO    ] 2026-06-22 05:12:41
[2026-06-22 05:12:41,645.645 INFO    ] 2026-06-22 05:12:41
[2026-06-22 05:12:41,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:12:41,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:12:41,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:12:42,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:12:42,125.125 INFO    ] time= 22/06/2026 05:12:42
[2026-06-22 05:12:42,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:12:42,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:12:42,318.318 INFO    ] No existing commands found in stream
[2026-06-22 05:12:47,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:12:47,355.355 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-22 05:12:50,950.950 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:12:50,952.952 INFO    ] Checking for system updates...
[2026-06-22 05:12:50,976.976 INFO    ] 200
[2026-06-22 05:12:50,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:12:51,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:12:51,036.036 INFO    ] No update needed
[2026-06-22 05:12:51,039.039 INFO    ] Checking for camera pi updates...
[2026-06-22 05:12:51,078.078 INFO    ] 200
[2026-06-22 05:12:51,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:12:51,124.124 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:12:51,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:12:51,203.203 INFO    ] No camera update needed
[2026-06-22 05:12:51,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:12:51,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:12:51,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:12:51,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:12:53,264.264 INFO    ] ================================================
[2026-06-22 05:12:53,281.281 INFO    ] Launching Daemon at Mon Jun 22 05:12:53 IST 2026
[2026-06-22 05:12:53,292.292 INFO    ] ================================================
[2026-06-22 05:12:53,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:12:53
[2026-06-22 05:12:54,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:12:54,877.877 INFO    ] Initializing speech engine...
[2026-06-22 05:12:54,885.885 INFO    ] 2026-06-22 05:12:54
[2026-06-22 05:12:55,162.162 INFO    ] 2026-06-22 05:12:55
[2026-06-22 05:12:55,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:12:55,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:12:55,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:12:55,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:12:55,646.646 INFO    ] time= 22/06/2026 05:12:55
[2026-06-22 05:12:55,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:12:55,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:12:55,797.797 INFO    ] No existing commands found in stream
[2026-06-22 05:13:00,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:13:00,814.814 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-22 05:13:01,408.408 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:13:01,412.412 INFO    ] Checking for system updates...
[2026-06-22 05:13:01,474.474 INFO    ] 200
[2026-06-22 05:13:01,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:13:01,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:13:01,558.558 INFO    ] No update needed
[2026-06-22 05:13:01,561.561 INFO    ] Checking for camera pi updates...
[2026-06-22 05:13:01,623.623 INFO    ] 200
[2026-06-22 05:13:01,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:13:01,703.703 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:13:01,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:13:01,782.782 INFO    ] No camera update needed
[2026-06-22 05:13:01,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:13:01,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:13:01,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:13:01,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:13:03,845.845 INFO    ] ================================================
[2026-06-22 05:13:03,861.861 INFO    ] Launching Daemon at Mon Jun 22 05:13:03 IST 2026
[2026-06-22 05:13:03,872.872 INFO    ] ================================================
[2026-06-22 05:13:04,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:13:04
[2026-06-22 05:13:05,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:13:05,284.284 INFO    ] Initializing speech engine...
[2026-06-22 05:13:05,290.290 INFO    ] 2026-06-22 05:13:05
[2026-06-22 05:13:05,561.561 INFO    ] 2026-06-22 05:13:05
[2026-06-22 05:13:05,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:13:05,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:13:05,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:13:05,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:13:06,043.043 INFO    ] time= 22/06/2026 05:13:06
[2026-06-22 05:13:06,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:13:06,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:13:06,203.203 INFO    ] No existing commands found in stream
[2026-06-22 05:13:11,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:13:11,217.217 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-22 05:13:11,556.556 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:13:11,559.559 INFO    ] Checking for system updates...
[2026-06-22 05:13:11,595.595 INFO    ] 200
[2026-06-22 05:13:11,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:13:11,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:13:11,660.660 INFO    ] No update needed
[2026-06-22 05:13:11,662.662 INFO    ] Checking for camera pi updates...
[2026-06-22 05:13:11,696.696 INFO    ] 200
[2026-06-22 05:13:11,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:13:11,740.740 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:13:11,824.824 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:13:11,827.827 INFO    ] No camera update needed
[2026-06-22 05:13:11,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:13:11,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:13:11,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:13:11,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:13:13,887.887 INFO    ] ================================================
[2026-06-22 05:13:13,903.903 INFO    ] Launching Daemon at Mon Jun 22 05:13:13 IST 2026
[2026-06-22 05:13:13,915.915 INFO    ] ================================================
[2026-06-22 05:13:14,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:13:14
[2026-06-22 05:13:15,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:13:15,362.362 INFO    ] Initializing speech engine...
[2026-06-22 05:13:15,378.378 INFO    ] 2026-06-22 05:13:15
[2026-06-22 05:13:15,634.634 INFO    ] 2026-06-22 05:13:15
[2026-06-22 05:13:15,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:13:15,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:13:15,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:13:17,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:13:17,349.349 INFO    ] time= 22/06/2026 05:13:17
[2026-06-22 05:13:17,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:13:17,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:13:17,512.512 INFO    ] No existing commands found in stream
[2026-06-22 05:13:22,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:13:22,546.546 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-22 05:13:24,349.349 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:13:24,351.351 INFO    ] Checking for system updates...
[2026-06-22 05:13:24,375.375 INFO    ] 200
[2026-06-22 05:13:24,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:13:24,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:13:24,435.435 INFO    ] No update needed
[2026-06-22 05:13:24,438.438 INFO    ] Checking for camera pi updates...
[2026-06-22 05:13:24,472.472 INFO    ] 200
[2026-06-22 05:13:24,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:13:24,521.521 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:13:24,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:13:24,612.612 INFO    ] No camera update needed
[2026-06-22 05:13:24,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:13:24,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:13:24,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:13:24,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:13:26,670.670 INFO    ] ================================================
[2026-06-22 05:13:26,686.686 INFO    ] Launching Daemon at Mon Jun 22 05:13:26 IST 2026
[2026-06-22 05:13:26,697.697 INFO    ] ================================================
[2026-06-22 05:13:27,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:13:27
[2026-06-22 05:13:27,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:13:28,226.226 INFO    ] Initializing speech engine...
[2026-06-22 05:13:28,240.240 INFO    ] 2026-06-22 05:13:28
[2026-06-22 05:13:28,525.525 INFO    ] 2026-06-22 05:13:28
[2026-06-22 05:13:28,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:13:28,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:13:28,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:13:28,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:13:29,004.004 INFO    ] time= 22/06/2026 05:13:28
[2026-06-22 05:13:29,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:13:29,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:13:29,222.222 INFO    ] No existing commands found in stream
[2026-06-22 05:13:34,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:13:34,249.249 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-22 05:13:37,524.524 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:13:37,527.527 INFO    ] Checking for system updates...
[2026-06-22 05:13:37,565.565 INFO    ] 200
[2026-06-22 05:13:37,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:13:37,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:13:37,623.623 INFO    ] No update needed
[2026-06-22 05:13:37,626.626 INFO    ] Checking for camera pi updates...
[2026-06-22 05:13:37,660.660 INFO    ] 200
[2026-06-22 05:13:37,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:13:37,707.707 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:13:37,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:13:37,793.793 INFO    ] No camera update needed
[2026-06-22 05:13:37,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:13:37,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:13:37,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:13:37,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:13:39,849.849 INFO    ] ================================================
[2026-06-22 05:13:39,865.865 INFO    ] Launching Daemon at Mon Jun 22 05:13:39 IST 2026
[2026-06-22 05:13:39,876.876 INFO    ] ================================================
[2026-06-22 05:13:40,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:13:40
[2026-06-22 05:13:41,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:13:41,425.425 INFO    ] Initializing speech engine...
[2026-06-22 05:13:41,436.436 INFO    ] 2026-06-22 05:13:41
[2026-06-22 05:13:41,729.729 INFO    ] 2026-06-22 05:13:41
[2026-06-22 05:13:41,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:13:42,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:13:42,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:13:42,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:13:42,215.215 INFO    ] time= 22/06/2026 05:13:42
[2026-06-22 05:13:42,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:13:42,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:13:42,349.349 INFO    ] No existing commands found in stream
[2026-06-22 05:13:47,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:13:47,365.365 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-22 05:13:49,349.349 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:13:49,351.351 INFO    ] Checking for system updates...
[2026-06-22 05:13:49,374.374 INFO    ] 200
[2026-06-22 05:13:49,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:13:49,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:13:49,422.422 INFO    ] No update needed
[2026-06-22 05:13:49,425.425 INFO    ] Checking for camera pi updates...
[2026-06-22 05:13:49,464.464 INFO    ] 200
[2026-06-22 05:13:49,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:13:49,507.507 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:13:49,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:13:49,589.589 INFO    ] No camera update needed
[2026-06-22 05:13:49,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:13:49,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:13:49,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:13:49,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:13:51,644.644 INFO    ] ================================================
[2026-06-22 05:13:51,660.660 INFO    ] Launching Daemon at Mon Jun 22 05:13:51 IST 2026
[2026-06-22 05:13:51,671.671 INFO    ] ================================================
[2026-06-22 05:13:52,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:13:52
[2026-06-22 05:13:52,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:13:53,039.039 INFO    ] Initializing speech engine...
[2026-06-22 05:13:53,048.048 INFO    ] 2026-06-22 05:13:53
[2026-06-22 05:13:53,297.297 INFO    ] 2026-06-22 05:13:53
[2026-06-22 05:13:53,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:13:53,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:13:53,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:13:53,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:13:53,666.666 INFO    ] time= 22/06/2026 05:13:53
[2026-06-22 05:13:53,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:13:53,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:13:53,832.832 INFO    ] No existing commands found in stream
[2026-06-22 05:13:58,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:13:58,865.865 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-22 05:14:02,315.315 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:14:02,319.319 INFO    ] Checking for system updates...
[2026-06-22 05:14:02,365.365 INFO    ] 200
[2026-06-22 05:14:02,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:14:02,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:14:02,447.447 INFO    ] No update needed
[2026-06-22 05:14:02,451.451 INFO    ] Checking for camera pi updates...
[2026-06-22 05:14:02,505.505 INFO    ] 200
[2026-06-22 05:14:02,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:14:02,568.568 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:14:02,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:14:02,638.638 INFO    ] No camera update needed
[2026-06-22 05:14:02,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:14:02,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:14:02,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:14:02,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:14:04,709.709 INFO    ] ================================================
[2026-06-22 05:14:04,725.725 INFO    ] Launching Daemon at Mon Jun 22 05:14:04 IST 2026
[2026-06-22 05:14:04,736.736 INFO    ] ================================================
[2026-06-22 05:14:05,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:14:05
[2026-06-22 05:14:05,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:14:06,258.258 INFO    ] Initializing speech engine...
[2026-06-22 05:14:06,272.272 INFO    ] 2026-06-22 05:14:06
[2026-06-22 05:14:06,533.533 INFO    ] 2026-06-22 05:14:06
[2026-06-22 05:14:06,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:14:06,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:14:06,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:14:06,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:14:06,996.996 INFO    ] time= 22/06/2026 05:14:06
[2026-06-22 05:14:07,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:14:07,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:14:07,137.137 INFO    ] No existing commands found in stream
[2026-06-22 05:14:12,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:14:12,152.152 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-22 05:14:14,934.934 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:14:14,936.936 INFO    ] Checking for system updates...
[2026-06-22 05:14:14,958.958 INFO    ] 200
[2026-06-22 05:14:14,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:14:14,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:14:14,995.995 INFO    ] No update needed
[2026-06-22 05:14:14,997.997 INFO    ] Checking for camera pi updates...
[2026-06-22 05:14:15,017.017 INFO    ] 200
[2026-06-22 05:14:15,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:14:15,063.063 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:14:15,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:14:15,163.163 INFO    ] No camera update needed
[2026-06-22 05:14:15,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:14:15,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:14:15,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:14:15,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:14:17,221.221 INFO    ] ================================================
[2026-06-22 05:14:17,237.237 INFO    ] Launching Daemon at Mon Jun 22 05:14:17 IST 2026
[2026-06-22 05:14:17,249.249 INFO    ] ================================================
[2026-06-22 05:14:17,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:14:17
[2026-06-22 05:14:18,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:14:18,576.576 INFO    ] Initializing speech engine...
[2026-06-22 05:14:18,595.595 INFO    ] 2026-06-22 05:14:18
[2026-06-22 05:14:18,845.845 INFO    ] 2026-06-22 05:14:18
[2026-06-22 05:14:18,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:14:19,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:14:19,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:14:19,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:14:19,219.219 INFO    ] time= 22/06/2026 05:14:19
[2026-06-22 05:14:19,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:14:19,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:14:19,298.298 INFO    ] No existing commands found in stream
[2026-06-22 05:14:24,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:14:24,316.316 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-22 05:14:27,155.155 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:14:27,157.157 INFO    ] Checking for system updates...
[2026-06-22 05:14:27,177.177 INFO    ] 200
[2026-06-22 05:14:27,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:14:27,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:14:27,213.213 INFO    ] No update needed
[2026-06-22 05:14:27,214.214 INFO    ] Checking for camera pi updates...
[2026-06-22 05:14:27,239.239 INFO    ] 200
[2026-06-22 05:14:27,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:14:27,284.284 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:14:27,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:14:27,363.363 INFO    ] No camera update needed
[2026-06-22 05:14:27,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:14:27,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:14:27,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:14:27,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:14:29,427.427 INFO    ] ================================================
[2026-06-22 05:14:29,441.441 INFO    ] Launching Daemon at Mon Jun 22 05:14:29 IST 2026
[2026-06-22 05:14:29,452.452 INFO    ] ================================================
[2026-06-22 05:14:30,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:14:30
[2026-06-22 05:14:30,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:14:30,769.769 INFO    ] Initializing speech engine...
[2026-06-22 05:14:30,782.782 INFO    ] 2026-06-22 05:14:30
[2026-06-22 05:14:31,050.050 INFO    ] 2026-06-22 05:14:31
[2026-06-22 05:14:31,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:14:31,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:14:31,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:14:31,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:14:31,452.452 INFO    ] time= 22/06/2026 05:14:31
[2026-06-22 05:14:31,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:14:31,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:14:31,628.628 INFO    ] No existing commands found in stream
[2026-06-22 05:14:36,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:14:36,661.661 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-22 05:14:40,174.174 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:14:40,176.176 INFO    ] Checking for system updates...
[2026-06-22 05:14:40,197.197 INFO    ] 200
[2026-06-22 05:14:40,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:14:40,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:14:40,231.231 INFO    ] No update needed
[2026-06-22 05:14:40,232.232 INFO    ] Checking for camera pi updates...
[2026-06-22 05:14:40,257.257 INFO    ] 200
[2026-06-22 05:14:40,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:14:40,301.301 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:14:40,383.383 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:14:40,386.386 INFO    ] No camera update needed
[2026-06-22 05:14:40,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:14:40,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:14:40,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:14:40,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:14:42,443.443 INFO    ] ================================================
[2026-06-22 05:14:42,458.458 INFO    ] Launching Daemon at Mon Jun 22 05:14:42 IST 2026
[2026-06-22 05:14:42,469.469 INFO    ] ================================================
[2026-06-22 05:14:43,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:14:43
[2026-06-22 05:14:43,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:14:43,843.843 INFO    ] Initializing speech engine...
[2026-06-22 05:14:43,852.852 INFO    ] 2026-06-22 05:14:43
[2026-06-22 05:14:44,118.118 INFO    ] 2026-06-22 05:14:44
[2026-06-22 05:14:44,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:14:44,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:14:44,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:14:44,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:14:44,559.559 INFO    ] time= 22/06/2026 05:14:44
[2026-06-22 05:14:44,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:14:44,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:14:44,723.723 INFO    ] No existing commands found in stream
[2026-06-22 05:14:49,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:14:49,738.738 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-22 05:14:52,011.011 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:14:52,013.013 INFO    ] Checking for system updates...
[2026-06-22 05:14:52,050.050 INFO    ] 200
[2026-06-22 05:14:52,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:14:52,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:14:52,117.117 INFO    ] No update needed
[2026-06-22 05:14:52,120.120 INFO    ] Checking for camera pi updates...
[2026-06-22 05:14:52,154.154 INFO    ] 200
[2026-06-22 05:14:52,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:14:52,203.203 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:14:52,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:14:52,286.286 INFO    ] No camera update needed
[2026-06-22 05:14:52,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:14:52,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:14:52,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:14:52,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:14:54,346.346 INFO    ] ================================================
[2026-06-22 05:14:54,361.361 INFO    ] Launching Daemon at Mon Jun 22 05:14:54 IST 2026
[2026-06-22 05:14:54,372.372 INFO    ] ================================================
[2026-06-22 05:14:55,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:14:55
[2026-06-22 05:14:55,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:14:55,970.970 INFO    ] Initializing speech engine...
[2026-06-22 05:14:55,982.982 INFO    ] 2026-06-22 05:14:55
[2026-06-22 05:14:56,275.275 INFO    ] 2026-06-22 05:14:56
[2026-06-22 05:14:56,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:14:56,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:14:56,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:14:56,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:14:56,760.760 INFO    ] time= 22/06/2026 05:14:56
[2026-06-22 05:14:56,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:14:56,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:14:56,968.968 INFO    ] No existing commands found in stream
[2026-06-22 05:15:01,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:15:02,002.002 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-22 05:15:05,109.109 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:15:05,112.112 INFO    ] Checking for system updates...
[2026-06-22 05:15:05,149.149 INFO    ] 200
[2026-06-22 05:15:05,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:15:05,214.214 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:15:05,218.218 INFO    ] No update needed
[2026-06-22 05:15:05,220.220 INFO    ] Checking for camera pi updates...
[2026-06-22 05:15:05,255.255 INFO    ] 200
[2026-06-22 05:15:05,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:15:05,300.300 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:15:05,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:15:05,388.388 INFO    ] No camera update needed
[2026-06-22 05:15:05,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:15:05,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:15:05,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:15:05,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:15:07,449.449 INFO    ] ================================================
[2026-06-22 05:15:07,464.464 INFO    ] Launching Daemon at Mon Jun 22 05:15:07 IST 2026
[2026-06-22 05:15:07,474.474 INFO    ] ================================================
[2026-06-22 05:15:08,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:15:08
[2026-06-22 05:15:08,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:15:08,851.851 INFO    ] Initializing speech engine...
[2026-06-22 05:15:08,876.876 INFO    ] 2026-06-22 05:15:08
[2026-06-22 05:15:09,137.137 INFO    ] 2026-06-22 05:15:09
[2026-06-22 05:15:09,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:15:09,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:15:09,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:15:09,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:15:09,492.492 INFO    ] time= 22/06/2026 05:15:09
[2026-06-22 05:15:09,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:15:09,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:15:09,591.591 INFO    ] No existing commands found in stream
[2026-06-22 05:15:14,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:15:14,604.604 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-22 05:15:16,353.353 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:15:16,355.355 INFO    ] Checking for system updates...
[2026-06-22 05:15:16,379.379 INFO    ] 200
[2026-06-22 05:15:16,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:15:16,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:15:16,437.437 INFO    ] No update needed
[2026-06-22 05:15:16,439.439 INFO    ] Checking for camera pi updates...
[2026-06-22 05:15:16,473.473 INFO    ] 200
[2026-06-22 05:15:16,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:15:16,521.521 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:15:16,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:15:16,631.631 INFO    ] No camera update needed
[2026-06-22 05:15:16,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:15:16,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:15:16,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:15:16,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:15:18,687.687 INFO    ] ================================================
[2026-06-22 05:15:18,702.702 INFO    ] Launching Daemon at Mon Jun 22 05:15:18 IST 2026
[2026-06-22 05:15:18,713.713 INFO    ] ================================================
[2026-06-22 05:15:19,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:15:19
[2026-06-22 05:15:19,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:15:20,159.159 INFO    ] Initializing speech engine...
[2026-06-22 05:15:20,169.169 INFO    ] 2026-06-22 05:15:20
[2026-06-22 05:15:20,437.437 INFO    ] 2026-06-22 05:15:20
[2026-06-22 05:15:20,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:15:20,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:15:20,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:15:20,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:15:20,799.799 INFO    ] time= 22/06/2026 05:15:20
[2026-06-22 05:15:20,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:15:20,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:15:20,879.879 INFO    ] No existing commands found in stream
[2026-06-22 05:15:25,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:15:25,892.892 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-22 05:15:26,281.281 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:15:26,282.282 INFO    ] Checking for system updates...
[2026-06-22 05:15:26,305.305 INFO    ] 200
[2026-06-22 05:15:26,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:15:26,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:15:26,341.341 INFO    ] No update needed
[2026-06-22 05:15:26,343.343 INFO    ] Checking for camera pi updates...
[2026-06-22 05:15:26,368.368 INFO    ] 200
[2026-06-22 05:15:26,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:15:26,414.414 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:15:26,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:15:26,504.504 INFO    ] No camera update needed
[2026-06-22 05:15:26,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:15:26,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:15:26,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:15:26,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:15:28,567.567 INFO    ] ================================================
[2026-06-22 05:15:28,584.584 INFO    ] Launching Daemon at Mon Jun 22 05:15:28 IST 2026
[2026-06-22 05:15:28,596.596 INFO    ] ================================================
[2026-06-22 05:15:29,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:15:29
[2026-06-22 05:15:29,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:15:30,140.140 INFO    ] Initializing speech engine...
[2026-06-22 05:15:30,152.152 INFO    ] 2026-06-22 05:15:30
[2026-06-22 05:15:30,432.432 INFO    ] 2026-06-22 05:15:30
[2026-06-22 05:15:30,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:15:30,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:15:30,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:15:30,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:15:30,786.786 INFO    ] time= 22/06/2026 05:15:30
[2026-06-22 05:15:30,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:15:30,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:15:30,859.859 INFO    ] No existing commands found in stream
[2026-06-22 05:15:35,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:15:35,873.873 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-22 05:15:38,024.024 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:15:38,027.027 INFO    ] Checking for system updates...
[2026-06-22 05:15:38,063.063 INFO    ] 200
[2026-06-22 05:15:38,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:15:38,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:15:38,121.121 INFO    ] No update needed
[2026-06-22 05:15:38,124.124 INFO    ] Checking for camera pi updates...
[2026-06-22 05:15:38,158.158 INFO    ] 200
[2026-06-22 05:15:38,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:15:38,201.201 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:15:38,255.255 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:15:38,257.257 INFO    ] No camera update needed
[2026-06-22 05:15:38,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:15:38,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:15:38,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:15:38,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:15:40,313.313 INFO    ] ================================================
[2026-06-22 05:15:40,329.329 INFO    ] Launching Daemon at Mon Jun 22 05:15:40 IST 2026
[2026-06-22 05:15:40,339.339 INFO    ] ================================================
[2026-06-22 05:15:40,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:15:40
[2026-06-22 05:15:41,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:15:41,805.805 INFO    ] Initializing speech engine...
[2026-06-22 05:15:41,815.815 INFO    ] 2026-06-22 05:15:41
[2026-06-22 05:15:42,076.076 INFO    ] 2026-06-22 05:15:42
[2026-06-22 05:15:42,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:15:42,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:15:42,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:15:42,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:15:42,519.519 INFO    ] time= 22/06/2026 05:15:42
[2026-06-22 05:15:42,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:15:42,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:15:42,685.685 INFO    ] No existing commands found in stream
[2026-06-22 05:15:47,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:15:47,700.700 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-22 05:15:50,177.177 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:15:50,178.178 INFO    ] Checking for system updates...
[2026-06-22 05:15:50,200.200 INFO    ] 200
[2026-06-22 05:15:50,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:15:50,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:15:50,233.233 INFO    ] No update needed
[2026-06-22 05:15:50,235.235 INFO    ] Checking for camera pi updates...
[2026-06-22 05:15:50,256.256 INFO    ] 200
[2026-06-22 05:15:50,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:15:50,287.287 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:15:50,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:15:50,370.370 INFO    ] No camera update needed
[2026-06-22 05:15:50,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:15:50,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:15:50,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:15:50,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:15:52,428.428 INFO    ] ================================================
[2026-06-22 05:15:52,443.443 INFO    ] Launching Daemon at Mon Jun 22 05:15:52 IST 2026
[2026-06-22 05:15:52,454.454 INFO    ] ================================================
[2026-06-22 05:15:53,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:15:53
[2026-06-22 05:15:53,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:15:53,888.888 INFO    ] Initializing speech engine...
[2026-06-22 05:15:53,894.894 INFO    ] 2026-06-22 05:15:53
[2026-06-22 05:15:54,155.155 INFO    ] 2026-06-22 05:15:54
[2026-06-22 05:15:54,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:15:54,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:15:54,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:15:54,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:15:54,622.622 INFO    ] time= 22/06/2026 05:15:54
[2026-06-22 05:15:54,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:15:54,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:15:54,782.782 INFO    ] No existing commands found in stream
[2026-06-22 05:15:59,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:15:59,795.795 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-22 05:16:02,401.401 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:16:02,403.403 INFO    ] Checking for system updates...
[2026-06-22 05:16:02,452.452 INFO    ] 200
[2026-06-22 05:16:02,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:16:02,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:16:02,531.531 INFO    ] No update needed
[2026-06-22 05:16:02,535.535 INFO    ] Checking for camera pi updates...
[2026-06-22 05:16:02,581.581 INFO    ] 200
[2026-06-22 05:16:02,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:16:02,648.648 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:16:02,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:16:02,710.710 INFO    ] No camera update needed
[2026-06-22 05:16:02,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:16:02,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:16:02,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:16:02,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:16:04,771.771 INFO    ] ================================================
[2026-06-22 05:16:04,786.786 INFO    ] Launching Daemon at Mon Jun 22 05:16:04 IST 2026
[2026-06-22 05:16:04,797.797 INFO    ] ================================================
[2026-06-22 05:16:05,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:16:05
[2026-06-22 05:16:05,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:16:06,303.303 INFO    ] Initializing speech engine...
[2026-06-22 05:16:06,312.312 INFO    ] 2026-06-22 05:16:06
[2026-06-22 05:16:06,584.584 INFO    ] 2026-06-22 05:16:06
[2026-06-22 05:16:06,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:16:06,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:16:06,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:16:07,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:16:07,040.040 INFO    ] time= 22/06/2026 05:16:07
[2026-06-22 05:16:07,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:16:07,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:16:07,209.209 INFO    ] No existing commands found in stream
[2026-06-22 05:16:12,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:16:12,226.226 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-22 05:16:15,483.483 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:16:15,486.486 INFO    ] Checking for system updates...
[2026-06-22 05:16:15,522.522 INFO    ] 200
[2026-06-22 05:16:15,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:16:15,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:16:15,581.581 INFO    ] No update needed
[2026-06-22 05:16:15,583.583 INFO    ] Checking for camera pi updates...
[2026-06-22 05:16:15,616.616 INFO    ] 200
[2026-06-22 05:16:15,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:16:15,659.659 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:16:15,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:16:15,839.839 INFO    ] No camera update needed
[2026-06-22 05:16:15,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:16:15,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:16:15,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:16:15,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:16:17,894.894 INFO    ] ================================================
[2026-06-22 05:16:17,909.909 INFO    ] Launching Daemon at Mon Jun 22 05:16:17 IST 2026
[2026-06-22 05:16:17,920.920 INFO    ] ================================================
[2026-06-22 05:16:18,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:16:18
[2026-06-22 05:16:19,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:16:19,276.276 INFO    ] Initializing speech engine...
[2026-06-22 05:16:19,292.292 INFO    ] 2026-06-22 05:16:19
[2026-06-22 05:16:19,571.571 INFO    ] 2026-06-22 05:16:19
[2026-06-22 05:16:19,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:16:19,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:16:19,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:16:19,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:16:19,982.982 INFO    ] time= 22/06/2026 05:16:19
[2026-06-22 05:16:20,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:16:20,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:16:20,180.180 INFO    ] No existing commands found in stream
[2026-06-22 05:16:25,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:16:25,206.206 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-22 05:16:27,307.307 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:16:27,308.308 INFO    ] Checking for system updates...
[2026-06-22 05:16:27,329.329 INFO    ] 200
[2026-06-22 05:16:27,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:16:27,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:16:27,366.366 INFO    ] No update needed
[2026-06-22 05:16:27,367.367 INFO    ] Checking for camera pi updates...
[2026-06-22 05:16:27,387.387 INFO    ] 200
[2026-06-22 05:16:27,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:16:27,422.422 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:16:27,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:16:27,507.507 INFO    ] No camera update needed
[2026-06-22 05:16:27,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:16:27,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:16:27,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:16:27,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:16:29,565.565 INFO    ] ================================================
[2026-06-22 05:16:29,580.580 INFO    ] Launching Daemon at Mon Jun 22 05:16:29 IST 2026
[2026-06-22 05:16:29,590.590 INFO    ] ================================================
[2026-06-22 05:16:30,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:16:30
[2026-06-22 05:16:30,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:16:31,043.043 INFO    ] Initializing speech engine...
[2026-06-22 05:16:31,063.063 INFO    ] 2026-06-22 05:16:31
[2026-06-22 05:16:31,335.335 INFO    ] 2026-06-22 05:16:31
[2026-06-22 05:16:31,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:16:31,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:16:31,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:16:31,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:16:31,843.843 INFO    ] time= 22/06/2026 05:16:31
[2026-06-22 05:16:31,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:16:31,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:16:32,053.053 INFO    ] No existing commands found in stream
[2026-06-22 05:16:37,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:16:37,069.069 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-22 05:16:37,771.771 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:16:37,772.772 INFO    ] Checking for system updates...
[2026-06-22 05:16:37,793.793 INFO    ] 200
[2026-06-22 05:16:37,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:16:37,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:16:37,852.852 INFO    ] No update needed
[2026-06-22 05:16:37,854.854 INFO    ] Checking for camera pi updates...
[2026-06-22 05:16:37,887.887 INFO    ] 200
[2026-06-22 05:16:37,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:16:37,931.931 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:16:38,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:16:38,007.007 INFO    ] No camera update needed
[2026-06-22 05:16:38,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:16:38,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:16:38,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:16:38,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:16:40,063.063 INFO    ] ================================================
[2026-06-22 05:16:40,078.078 INFO    ] Launching Daemon at Mon Jun 22 05:16:40 IST 2026
[2026-06-22 05:16:40,089.089 INFO    ] ================================================
[2026-06-22 05:16:40,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:16:40
[2026-06-22 05:16:41,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:16:41,536.536 INFO    ] Initializing speech engine...
[2026-06-22 05:16:41,551.551 INFO    ] 2026-06-22 05:16:41
[2026-06-22 05:16:41,834.834 INFO    ] 2026-06-22 05:16:41
[2026-06-22 05:16:41,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:16:42,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:16:42,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:16:42,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:16:42,198.198 INFO    ] time= 22/06/2026 05:16:42
[2026-06-22 05:16:42,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:16:42,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:16:42,320.320 INFO    ] No existing commands found in stream
[2026-06-22 05:16:47,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:16:47,336.336 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-22 05:16:49,134.134 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:16:49,137.137 INFO    ] Checking for system updates...
[2026-06-22 05:16:49,175.175 INFO    ] 200
[2026-06-22 05:16:49,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:16:49,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:16:49,233.233 INFO    ] No update needed
[2026-06-22 05:16:49,235.235 INFO    ] Checking for camera pi updates...
[2026-06-22 05:16:49,269.269 INFO    ] 200
[2026-06-22 05:16:49,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:16:49,312.312 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:16:49,393.393 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:16:49,396.396 INFO    ] No camera update needed
[2026-06-22 05:16:49,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:16:49,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:16:49,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:16:49,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:16:51,451.451 INFO    ] ================================================
[2026-06-22 05:16:51,466.466 INFO    ] Launching Daemon at Mon Jun 22 05:16:51 IST 2026
[2026-06-22 05:16:51,477.477 INFO    ] ================================================
[2026-06-22 05:16:52,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:16:52
[2026-06-22 05:16:52,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:16:52,913.913 INFO    ] Initializing speech engine...
[2026-06-22 05:16:52,938.938 INFO    ] 2026-06-22 05:16:52
[2026-06-22 05:16:53,207.207 INFO    ] 2026-06-22 05:16:53
[2026-06-22 05:16:53,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:16:53,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:16:53,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:16:53,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:16:53,572.572 INFO    ] time= 22/06/2026 05:16:53
[2026-06-22 05:16:53,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:16:53,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:16:53,691.691 INFO    ] No existing commands found in stream
[2026-06-22 05:16:58,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:16:58,705.705 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-22 05:16:59,735.735 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:16:59,738.738 INFO    ] Checking for system updates...
[2026-06-22 05:16:59,777.777 INFO    ] 200
[2026-06-22 05:16:59,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:16:59,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:16:59,836.836 INFO    ] No update needed
[2026-06-22 05:16:59,838.838 INFO    ] Checking for camera pi updates...
[2026-06-22 05:16:59,875.875 INFO    ] 200
[2026-06-22 05:16:59,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:16:59,923.923 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:17:00,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:17:00,010.010 INFO    ] No camera update needed
[2026-06-22 05:17:00,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:17:00,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:17:00,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:17:00,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:17:02,071.071 INFO    ] ================================================
[2026-06-22 05:17:02,091.091 INFO    ] Launching Daemon at Mon Jun 22 05:17:02 IST 2026
[2026-06-22 05:17:02,109.109 INFO    ] ================================================
[2026-06-22 05:17:02,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:17:02
[2026-06-22 05:17:03,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:17:03,644.644 INFO    ] Initializing speech engine...
[2026-06-22 05:17:03,651.651 INFO    ] 2026-06-22 05:17:03
[2026-06-22 05:17:03,909.909 INFO    ] 2026-06-22 05:17:03
[2026-06-22 05:17:03,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:17:04,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:17:04,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:17:04,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:17:04,348.348 INFO    ] time= 22/06/2026 05:17:04
[2026-06-22 05:17:04,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:17:04,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:17:04,511.511 INFO    ] No existing commands found in stream
[2026-06-22 05:17:09,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:17:09,526.526 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-22 05:17:13,238.238 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:17:13,240.240 INFO    ] Checking for system updates...
[2026-06-22 05:17:13,280.280 INFO    ] 200
[2026-06-22 05:17:13,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:17:13,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:17:13,337.337 INFO    ] No update needed
[2026-06-22 05:17:13,339.339 INFO    ] Checking for camera pi updates...
[2026-06-22 05:17:13,373.373 INFO    ] 200
[2026-06-22 05:17:13,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:17:13,416.416 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:17:13,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:17:13,510.510 INFO    ] No camera update needed
[2026-06-22 05:17:13,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:17:13,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:17:13,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:17:13,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:17:15,569.569 INFO    ] ================================================
[2026-06-22 05:17:15,584.584 INFO    ] Launching Daemon at Mon Jun 22 05:17:15 IST 2026
[2026-06-22 05:17:15,594.594 INFO    ] ================================================
[2026-06-22 05:17:16,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:17:16
[2026-06-22 05:17:16,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:17:17,001.001 INFO    ] Initializing speech engine...
[2026-06-22 05:17:17,010.010 INFO    ] 2026-06-22 05:17:17
[2026-06-22 05:17:17,309.309 INFO    ] 2026-06-22 05:17:17
[2026-06-22 05:17:17,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:17:17,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:17:17,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:17:17,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:17:17,667.667 INFO    ] time= 22/06/2026 05:17:17
[2026-06-22 05:17:17,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:17:17,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:17:17,747.747 INFO    ] No existing commands found in stream
[2026-06-22 05:17:22,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:17:22,762.762 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-22 05:17:25,773.773 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:17:25,777.777 INFO    ] Checking for system updates...
[2026-06-22 05:17:25,814.814 INFO    ] 200
[2026-06-22 05:17:25,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:17:25,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:17:25,873.873 INFO    ] No update needed
[2026-06-22 05:17:25,876.876 INFO    ] Checking for camera pi updates...
[2026-06-22 05:17:25,916.916 INFO    ] 200
[2026-06-22 05:17:25,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:17:25,962.962 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:17:26,049.049 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:17:26,051.051 INFO    ] No camera update needed
[2026-06-22 05:17:26,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:17:26,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:17:26,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:17:26,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:17:28,111.111 INFO    ] ================================================
[2026-06-22 05:17:28,126.126 INFO    ] Launching Daemon at Mon Jun 22 05:17:28 IST 2026
[2026-06-22 05:17:28,137.137 INFO    ] ================================================
[2026-06-22 05:17:28,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:17:28
[2026-06-22 05:17:29,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:17:29,664.664 INFO    ] Initializing speech engine...
[2026-06-22 05:17:29,676.676 INFO    ] 2026-06-22 05:17:29
[2026-06-22 05:17:29,958.958 INFO    ] 2026-06-22 05:17:29
[2026-06-22 05:17:30,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:17:30,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:17:30,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:17:30,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:17:30,448.448 INFO    ] time= 22/06/2026 05:17:30
[2026-06-22 05:17:30,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:17:30,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:17:30,625.625 INFO    ] No existing commands found in stream
[2026-06-22 05:17:35,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:17:35,660.660 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-22 05:17:36,223.223 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:17:36,227.227 INFO    ] Checking for system updates...
[2026-06-22 05:17:36,265.265 INFO    ] 200
[2026-06-22 05:17:36,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:17:36,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:17:36,332.332 INFO    ] No update needed
[2026-06-22 05:17:36,335.335 INFO    ] Checking for camera pi updates...
[2026-06-22 05:17:36,374.374 INFO    ] 200
[2026-06-22 05:17:36,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:17:36,417.417 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:17:36,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:17:36,507.507 INFO    ] No camera update needed
[2026-06-22 05:17:36,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:17:36,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:17:36,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:17:36,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:17:38,561.561 INFO    ] ================================================
[2026-06-22 05:17:38,577.577 INFO    ] Launching Daemon at Mon Jun 22 05:17:38 IST 2026
[2026-06-22 05:17:38,588.588 INFO    ] ================================================
[2026-06-22 05:17:39,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:17:39
[2026-06-22 05:17:39,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:17:40,252.252 INFO    ] Initializing speech engine...
[2026-06-22 05:17:40,263.263 INFO    ] 2026-06-22 05:17:40
[2026-06-22 05:17:40,568.568 INFO    ] 2026-06-22 05:17:40
[2026-06-22 05:17:40,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:17:40,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:17:40,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:17:41,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:17:41,155.155 INFO    ] time= 22/06/2026 05:17:41
[2026-06-22 05:17:41,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:17:41,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:17:41,236.236 INFO    ] No existing commands found in stream
[2026-06-22 05:17:46,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:17:46,252.252 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-22 05:17:47,776.776 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:17:47,779.779 INFO    ] Checking for system updates...
[2026-06-22 05:17:47,817.817 INFO    ] 200
[2026-06-22 05:17:47,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:17:47,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:17:47,887.887 INFO    ] No update needed
[2026-06-22 05:17:47,889.889 INFO    ] Checking for camera pi updates...
[2026-06-22 05:17:47,923.923 INFO    ] 200
[2026-06-22 05:17:47,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:17:47,967.967 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:17:48,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:17:48,046.046 INFO    ] No camera update needed
[2026-06-22 05:17:48,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:17:48,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:17:48,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:17:48,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:17:50,101.101 INFO    ] ================================================
[2026-06-22 05:17:50,117.117 INFO    ] Launching Daemon at Mon Jun 22 05:17:50 IST 2026
[2026-06-22 05:17:50,127.127 INFO    ] ================================================
[2026-06-22 05:17:50,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:17:50
[2026-06-22 05:17:51,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:17:51,458.458 INFO    ] Initializing speech engine...
[2026-06-22 05:17:51,482.482 INFO    ] 2026-06-22 05:17:51
[2026-06-22 05:17:51,739.739 INFO    ] 2026-06-22 05:17:51
[2026-06-22 05:17:51,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:17:51,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:17:52,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:17:52,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:17:52,201.201 INFO    ] time= 22/06/2026 05:17:52
[2026-06-22 05:17:52,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:17:52,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:17:52,368.368 INFO    ] No existing commands found in stream
[2026-06-22 05:17:57,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:17:57,383.383 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-22 05:17:59,958.958 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:17:59,961.961 INFO    ] Checking for system updates...
[2026-06-22 05:17:59,997.997 INFO    ] 200
[2026-06-22 05:17:59,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:18:00,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:18:00,058.058 INFO    ] No update needed
[2026-06-22 05:18:00,061.061 INFO    ] Checking for camera pi updates...
[2026-06-22 05:18:00,095.095 INFO    ] 200
[2026-06-22 05:18:00,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:18:00,141.141 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:18:00,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:18:00,212.212 INFO    ] No camera update needed
[2026-06-22 05:18:00,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:18:00,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:18:00,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:18:00,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:18:02,285.285 INFO    ] ================================================
[2026-06-22 05:18:02,302.302 INFO    ] Launching Daemon at Mon Jun 22 05:18:02 IST 2026
[2026-06-22 05:18:02,317.317 INFO    ] ================================================
[2026-06-22 05:18:02,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:18:02
[2026-06-22 05:18:03,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:18:03,831.831 INFO    ] Initializing speech engine...
[2026-06-22 05:18:03,840.840 INFO    ] 2026-06-22 05:18:03
[2026-06-22 05:18:04,143.143 INFO    ] 2026-06-22 05:18:04
[2026-06-22 05:18:04,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:18:04,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:18:04,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:18:04,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:18:04,504.504 INFO    ] time= 22/06/2026 05:18:04
[2026-06-22 05:18:04,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:18:04,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:18:04,582.582 INFO    ] No existing commands found in stream
[2026-06-22 05:18:09,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:18:09,599.599 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-22 05:18:10,442.442 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:18:10,451.451 INFO    ] Checking for system updates...
[2026-06-22 05:18:10,488.488 INFO    ] 200
[2026-06-22 05:18:10,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:18:10,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:18:10,559.559 INFO    ] No update needed
[2026-06-22 05:18:10,562.562 INFO    ] Checking for camera pi updates...
[2026-06-22 05:18:10,595.595 INFO    ] 200
[2026-06-22 05:18:10,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:18:10,638.638 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:18:10,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:18:10,732.732 INFO    ] No camera update needed
[2026-06-22 05:18:10,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:18:10,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:18:10,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:18:10,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:18:12,789.789 INFO    ] ================================================
[2026-06-22 05:18:12,804.804 INFO    ] Launching Daemon at Mon Jun 22 05:18:12 IST 2026
[2026-06-22 05:18:12,815.815 INFO    ] ================================================
[2026-06-22 05:18:13,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:18:13
[2026-06-22 05:18:13,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:18:14,162.162 INFO    ] Initializing speech engine...
[2026-06-22 05:18:14,168.168 INFO    ] 2026-06-22 05:18:14
[2026-06-22 05:18:14,472.472 INFO    ] 2026-06-22 05:18:14
[2026-06-22 05:18:14,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:18:14,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:18:14,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:18:14,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:18:14,871.871 INFO    ] time= 22/06/2026 05:18:14
[2026-06-22 05:18:14,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:18:14,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:18:15,004.004 INFO    ] No existing commands found in stream
[2026-06-22 05:18:20,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:18:20,019.019 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-22 05:18:23,812.812 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:18:23,814.814 INFO    ] Checking for system updates...
[2026-06-22 05:18:23,851.851 INFO    ] 200
[2026-06-22 05:18:23,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:18:23,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:18:23,911.911 INFO    ] No update needed
[2026-06-22 05:18:23,914.914 INFO    ] Checking for camera pi updates...
[2026-06-22 05:18:23,955.955 INFO    ] 200
[2026-06-22 05:18:23,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:18:24,002.002 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:18:24,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:18:24,187.187 INFO    ] No camera update needed
[2026-06-22 05:18:24,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:18:24,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:18:24,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:18:24,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:18:26,249.249 INFO    ] ================================================
[2026-06-22 05:18:26,265.265 INFO    ] Launching Daemon at Mon Jun 22 05:18:26 IST 2026
[2026-06-22 05:18:26,276.276 INFO    ] ================================================
[2026-06-22 05:18:26,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:18:26
[2026-06-22 05:18:27,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:18:27,849.849 INFO    ] Initializing speech engine...
[2026-06-22 05:18:27,856.856 INFO    ] 2026-06-22 05:18:27
[2026-06-22 05:18:28,144.144 INFO    ] 2026-06-22 05:18:28
[2026-06-22 05:18:28,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:18:28,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:18:28,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:18:28,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:18:28,686.686 INFO    ] time= 22/06/2026 05:18:28
[2026-06-22 05:18:28,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:18:28,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:18:28,846.846 INFO    ] No existing commands found in stream
[2026-06-22 05:18:33,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:18:33,894.894 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-22 05:18:34,977.977 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:18:34,980.980 INFO    ] Checking for system updates...
[2026-06-22 05:18:35,018.018 INFO    ] 200
[2026-06-22 05:18:35,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:18:35,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:18:35,095.095 INFO    ] No update needed
[2026-06-22 05:18:35,098.098 INFO    ] Checking for camera pi updates...
[2026-06-22 05:18:35,135.135 INFO    ] 200
[2026-06-22 05:18:35,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:18:35,185.185 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:18:35,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:18:35,272.272 INFO    ] No camera update needed
[2026-06-22 05:18:35,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:18:35,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:18:35,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:18:35,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:18:37,332.332 INFO    ] ================================================
[2026-06-22 05:18:37,348.348 INFO    ] Launching Daemon at Mon Jun 22 05:18:37 IST 2026
[2026-06-22 05:18:37,359.359 INFO    ] ================================================
[2026-06-22 05:18:37,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:18:37
[2026-06-22 05:18:38,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:18:38,700.700 INFO    ] Initializing speech engine...
[2026-06-22 05:18:38,708.708 INFO    ] 2026-06-22 05:18:38
[2026-06-22 05:18:39,007.007 INFO    ] 2026-06-22 05:18:38
[2026-06-22 05:18:39,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:18:39,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:18:39,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:18:39,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:18:39,381.381 INFO    ] time= 22/06/2026 05:18:39
[2026-06-22 05:18:39,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:18:39,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:18:39,464.464 INFO    ] No existing commands found in stream
[2026-06-22 05:18:44,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:18:44,477.477 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-22 05:18:45,549.549 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:18:45,551.551 INFO    ] Checking for system updates...
[2026-06-22 05:18:45,572.572 INFO    ] 200
[2026-06-22 05:18:45,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:18:45,605.605 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:18:45,606.606 INFO    ] No update needed
[2026-06-22 05:18:45,608.608 INFO    ] Checking for camera pi updates...
[2026-06-22 05:18:45,631.631 INFO    ] 200
[2026-06-22 05:18:45,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:18:45,677.677 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:18:45,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:18:45,764.764 INFO    ] No camera update needed
[2026-06-22 05:18:45,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:18:45,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:18:45,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:18:45,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:18:47,826.826 INFO    ] ================================================
[2026-06-22 05:18:47,842.842 INFO    ] Launching Daemon at Mon Jun 22 05:18:47 IST 2026
[2026-06-22 05:18:47,854.854 INFO    ] ================================================
[2026-06-22 05:18:48,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:18:48
[2026-06-22 05:18:48,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:18:49,215.215 INFO    ] Initializing speech engine...
[2026-06-22 05:18:49,225.225 INFO    ] 2026-06-22 05:18:49
[2026-06-22 05:18:49,528.528 INFO    ] 2026-06-22 05:18:49
[2026-06-22 05:18:49,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:18:49,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:18:49,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:18:49,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:18:49,925.925 INFO    ] time= 22/06/2026 05:18:49
[2026-06-22 05:18:49,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:18:49,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:18:50,053.053 INFO    ] No existing commands found in stream
[2026-06-22 05:18:55,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:18:55,069.069 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-22 05:18:57,770.770 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:18:57,773.773 INFO    ] Checking for system updates...
[2026-06-22 05:18:57,810.810 INFO    ] 200
[2026-06-22 05:18:57,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:18:57,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:18:57,872.872 INFO    ] No update needed
[2026-06-22 05:18:57,875.875 INFO    ] Checking for camera pi updates...
[2026-06-22 05:18:57,911.911 INFO    ] 200
[2026-06-22 05:18:57,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:18:57,956.956 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:18:58,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:18:58,051.051 INFO    ] No camera update needed
[2026-06-22 05:18:58,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:18:58,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:18:58,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:18:58,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:19:00,113.113 INFO    ] ================================================
[2026-06-22 05:19:00,129.129 INFO    ] Launching Daemon at Mon Jun 22 05:19:00 IST 2026
[2026-06-22 05:19:00,146.146 INFO    ] ================================================
[2026-06-22 05:19:00,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:19:00
[2026-06-22 05:19:01,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:19:01,734.734 INFO    ] Initializing speech engine...
[2026-06-22 05:19:01,746.746 INFO    ] 2026-06-22 05:19:01
[2026-06-22 05:19:02,049.049 INFO    ] 2026-06-22 05:19:02
[2026-06-22 05:19:02,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:19:02,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:19:02,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:19:02,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:19:02,545.545 INFO    ] time= 22/06/2026 05:19:02
[2026-06-22 05:19:02,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:19:02,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:19:02,701.701 INFO    ] No existing commands found in stream
[2026-06-22 05:19:07,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:19:07,717.717 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-22 05:19:08,830.830 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:19:08,832.832 INFO    ] Checking for system updates...
[2026-06-22 05:19:08,868.868 INFO    ] 200
[2026-06-22 05:19:08,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:19:08,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:19:08,927.927 INFO    ] No update needed
[2026-06-22 05:19:08,930.930 INFO    ] Checking for camera pi updates...
[2026-06-22 05:19:08,964.964 INFO    ] 200
[2026-06-22 05:19:08,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:19:09,008.008 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:19:09,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:19:09,091.091 INFO    ] No camera update needed
[2026-06-22 05:19:09,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:19:09,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:19:09,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:19:09,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:19:11,147.147 INFO    ] ================================================
[2026-06-22 05:19:11,162.162 INFO    ] Launching Daemon at Mon Jun 22 05:19:11 IST 2026
[2026-06-22 05:19:11,173.173 INFO    ] ================================================
[2026-06-22 05:19:11,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:19:11
[2026-06-22 05:19:12,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:19:12,619.619 INFO    ] Initializing speech engine...
[2026-06-22 05:19:12,627.627 INFO    ] 2026-06-22 05:19:12
[2026-06-22 05:19:12,927.927 INFO    ] 2026-06-22 05:19:12
[2026-06-22 05:19:12,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:19:13,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:19:13,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:19:13,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:19:13,331.331 INFO    ] time= 22/06/2026 05:19:13
[2026-06-22 05:19:13,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:19:13,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:19:13,440.440 INFO    ] No existing commands found in stream
[2026-06-22 05:19:18,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:19:18,453.453 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-22 05:19:22,861.861 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:19:22,862.862 INFO    ] Checking for system updates...
[2026-06-22 05:19:22,883.883 INFO    ] 200
[2026-06-22 05:19:22,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:19:22,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:19:22,916.916 INFO    ] No update needed
[2026-06-22 05:19:22,918.918 INFO    ] Checking for camera pi updates...
[2026-06-22 05:19:22,937.937 INFO    ] 200
[2026-06-22 05:19:22,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:19:22,966.966 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:19:23,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:19:23,033.033 INFO    ] No camera update needed
[2026-06-22 05:19:23,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:19:23,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:19:23,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:19:23,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:19:25,090.090 INFO    ] ================================================
[2026-06-22 05:19:25,106.106 INFO    ] Launching Daemon at Mon Jun 22 05:19:25 IST 2026
[2026-06-22 05:19:25,117.117 INFO    ] ================================================
[2026-06-22 05:19:25,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:19:25
[2026-06-22 05:19:26,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:19:26,460.460 INFO    ] Initializing speech engine...
[2026-06-22 05:19:26,470.470 INFO    ] 2026-06-22 05:19:26
[2026-06-22 05:19:26,720.720 INFO    ] 2026-06-22 05:19:26
[2026-06-22 05:19:26,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:19:26,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:19:26,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:19:27,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:19:27,101.101 INFO    ] time= 22/06/2026 05:19:27
[2026-06-22 05:19:27,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:19:27,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:19:27,281.281 INFO    ] No existing commands found in stream
[2026-06-22 05:19:32,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:19:32,309.309 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-22 05:19:35,539.539 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:19:35,542.542 INFO    ] Checking for system updates...
[2026-06-22 05:19:35,578.578 INFO    ] 200
[2026-06-22 05:19:35,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:19:35,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:19:35,636.636 INFO    ] No update needed
[2026-06-22 05:19:35,638.638 INFO    ] Checking for camera pi updates...
[2026-06-22 05:19:35,671.671 INFO    ] 200
[2026-06-22 05:19:35,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:19:35,696.696 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:19:35,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:19:35,776.776 INFO    ] No camera update needed
[2026-06-22 05:19:35,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:19:35,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:19:35,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:19:35,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:19:37,831.831 INFO    ] ================================================
[2026-06-22 05:19:37,847.847 INFO    ] Launching Daemon at Mon Jun 22 05:19:37 IST 2026
[2026-06-22 05:19:37,858.858 INFO    ] ================================================
[2026-06-22 05:19:38,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:19:38
[2026-06-22 05:19:39,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:19:39,408.408 INFO    ] Initializing speech engine...
[2026-06-22 05:19:39,419.419 INFO    ] 2026-06-22 05:19:39
[2026-06-22 05:19:39,729.729 INFO    ] 2026-06-22 05:19:39
[2026-06-22 05:19:39,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:19:39,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:19:39,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:19:40,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:19:40,163.163 INFO    ] time= 22/06/2026 05:19:40
[2026-06-22 05:19:40,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:19:40,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:19:40,306.306 INFO    ] No existing commands found in stream
[2026-06-22 05:19:45,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:19:45,322.322 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-22 05:19:46,936.936 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:19:46,939.939 INFO    ] Checking for system updates...
[2026-06-22 05:19:46,982.982 INFO    ] 200
[2026-06-22 05:19:46,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:19:47,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:19:47,048.048 INFO    ] No update needed
[2026-06-22 05:19:47,051.051 INFO    ] Checking for camera pi updates...
[2026-06-22 05:19:47,086.086 INFO    ] 200
[2026-06-22 05:19:47,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:19:47,130.130 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:19:47,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:19:47,218.218 INFO    ] No camera update needed
[2026-06-22 05:19:47,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:19:47,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:19:47,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:19:47,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:19:49,273.273 INFO    ] ================================================
[2026-06-22 05:19:49,288.288 INFO    ] Launching Daemon at Mon Jun 22 05:19:49 IST 2026
[2026-06-22 05:19:49,299.299 INFO    ] ================================================
[2026-06-22 05:19:49,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:19:49
[2026-06-22 05:19:50,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:19:50,657.657 INFO    ] Initializing speech engine...
[2026-06-22 05:19:50,665.665 INFO    ] 2026-06-22 05:19:50
[2026-06-22 05:19:50,936.936 INFO    ] 2026-06-22 05:19:50
[2026-06-22 05:19:50,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:19:51,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:19:51,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:19:51,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:19:51,383.383 INFO    ] time= 22/06/2026 05:19:51
[2026-06-22 05:19:51,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:19:51,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:19:51,530.530 INFO    ] No existing commands found in stream
[2026-06-22 05:19:56,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:19:56,544.544 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-22 05:20:00,694.694 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:20:00,696.696 INFO    ] Checking for system updates...
[2026-06-22 05:20:00,733.733 INFO    ] 200
[2026-06-22 05:20:00,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:20:00,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:20:00,791.791 INFO    ] No update needed
[2026-06-22 05:20:00,793.793 INFO    ] Checking for camera pi updates...
[2026-06-22 05:20:00,827.827 INFO    ] 200
[2026-06-22 05:20:00,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:20:00,871.871 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:20:00,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:20:00,958.958 INFO    ] No camera update needed
[2026-06-22 05:20:00,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:20:00,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:20:00,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:20:00,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:20:03,020.020 INFO    ] ================================================
[2026-06-22 05:20:03,040.040 INFO    ] Launching Daemon at Mon Jun 22 05:20:03 IST 2026
[2026-06-22 05:20:03,055.055 INFO    ] ================================================
[2026-06-22 05:20:03,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:20:03
[2026-06-22 05:20:04,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:20:04,557.557 INFO    ] Initializing speech engine...
[2026-06-22 05:20:04,567.567 INFO    ] 2026-06-22 05:20:04
[2026-06-22 05:20:04,816.816 INFO    ] 2026-06-22 05:20:04
[2026-06-22 05:20:04,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:20:05,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:20:05,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:20:05,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:20:05,288.288 INFO    ] time= 22/06/2026 05:20:05
[2026-06-22 05:20:05,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:20:05,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:20:05,440.440 INFO    ] No existing commands found in stream
[2026-06-22 05:20:10,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:20:10,455.455 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-22 05:20:13,743.743 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:20:13,746.746 INFO    ] Checking for system updates...
[2026-06-22 05:20:13,782.782 INFO    ] 200
[2026-06-22 05:20:13,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:20:13,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:20:13,842.842 INFO    ] No update needed
[2026-06-22 05:20:13,844.844 INFO    ] Checking for camera pi updates...
[2026-06-22 05:20:13,883.883 INFO    ] 200
[2026-06-22 05:20:13,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:20:13,925.925 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:20:14,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:20:14,014.014 INFO    ] No camera update needed
[2026-06-22 05:20:14,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:20:14,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:20:14,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:20:14,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:20:16,071.071 INFO    ] ================================================
[2026-06-22 05:20:16,087.087 INFO    ] Launching Daemon at Mon Jun 22 05:20:16 IST 2026
[2026-06-22 05:20:16,098.098 INFO    ] ================================================
[2026-06-22 05:20:16,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:20:16
[2026-06-22 05:20:17,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:20:17,446.446 INFO    ] Initializing speech engine...
[2026-06-22 05:20:17,451.451 INFO    ] 2026-06-22 05:20:17
[2026-06-22 05:20:17,719.719 INFO    ] 2026-06-22 05:20:17
[2026-06-22 05:20:17,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:20:17,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:20:17,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:20:18,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:20:18,095.095 INFO    ] time= 22/06/2026 05:20:18
[2026-06-22 05:20:18,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:20:18,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:20:18,169.169 INFO    ] No existing commands found in stream
[2026-06-22 05:20:23,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:20:23,185.185 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-22 05:20:25,908.908 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:20:25,909.909 INFO    ] Checking for system updates...
[2026-06-22 05:20:25,941.941 INFO    ] 200
[2026-06-22 05:20:25,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:20:26,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:20:26,006.006 INFO    ] No update needed
[2026-06-22 05:20:26,008.008 INFO    ] Checking for camera pi updates...
[2026-06-22 05:20:26,042.042 INFO    ] 200
[2026-06-22 05:20:26,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:20:26,085.085 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:20:26,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:20:26,285.285 INFO    ] No camera update needed
[2026-06-22 05:20:26,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:20:26,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:20:26,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:20:26,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:20:28,340.340 INFO    ] ================================================
[2026-06-22 05:20:28,356.356 INFO    ] Launching Daemon at Mon Jun 22 05:20:28 IST 2026
[2026-06-22 05:20:28,367.367 INFO    ] ================================================
[2026-06-22 05:20:28,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:20:28
[2026-06-22 05:20:29,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:20:29,731.731 INFO    ] Initializing speech engine...
[2026-06-22 05:20:29,753.753 INFO    ] 2026-06-22 05:20:29
[2026-06-22 05:20:30,013.013 INFO    ] 2026-06-22 05:20:30
[2026-06-22 05:20:30,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:20:30,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:20:30,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:20:30,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:20:30,484.484 INFO    ] time= 22/06/2026 05:20:30
[2026-06-22 05:20:30,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:20:30,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:20:30,635.635 INFO    ] No existing commands found in stream
[2026-06-22 05:20:35,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:20:35,651.651 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-22 05:20:37,678.678 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:20:37,679.679 INFO    ] Checking for system updates...
[2026-06-22 05:20:37,700.700 INFO    ] 200
[2026-06-22 05:20:37,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:20:37,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:20:37,749.749 INFO    ] No update needed
[2026-06-22 05:20:37,752.752 INFO    ] Checking for camera pi updates...
[2026-06-22 05:20:37,785.785 INFO    ] 200
[2026-06-22 05:20:37,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:20:37,828.828 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:20:37,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:20:37,911.911 INFO    ] No camera update needed
[2026-06-22 05:20:37,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:20:37,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:20:37,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:20:37,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:20:39,969.969 INFO    ] ================================================
[2026-06-22 05:20:39,984.984 INFO    ] Launching Daemon at Mon Jun 22 05:20:39 IST 2026
[2026-06-22 05:20:40,995.995 INFO    ] ================================================
[2026-06-22 05:20:40,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:20:40
[2026-06-22 05:20:41,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:20:41,425.425 INFO    ] Initializing speech engine...
[2026-06-22 05:20:41,434.434 INFO    ] 2026-06-22 05:20:41
[2026-06-22 05:20:41,708.708 INFO    ] 2026-06-22 05:20:41
[2026-06-22 05:20:41,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:20:41,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:20:42,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:20:42,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:20:42,157.157 INFO    ] time= 22/06/2026 05:20:42
[2026-06-22 05:20:42,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:20:42,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:20:42,332.332 INFO    ] No existing commands found in stream
[2026-06-22 05:20:47,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:20:47,346.346 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-22 05:20:51,020.020 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:20:51,023.023 INFO    ] Checking for system updates...
[2026-06-22 05:20:51,074.074 INFO    ] 200
[2026-06-22 05:20:51,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:20:51,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:20:51,132.132 INFO    ] No update needed
[2026-06-22 05:20:51,135.135 INFO    ] Checking for camera pi updates...
[2026-06-22 05:20:51,169.169 INFO    ] 200
[2026-06-22 05:20:51,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:20:51,212.212 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:20:51,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:20:51,298.298 INFO    ] No camera update needed
[2026-06-22 05:20:51,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:20:51,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:20:51,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:20:51,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:20:53,354.354 INFO    ] ================================================
[2026-06-22 05:20:53,370.370 INFO    ] Launching Daemon at Mon Jun 22 05:20:53 IST 2026
[2026-06-22 05:20:53,382.382 INFO    ] ================================================
[2026-06-22 05:20:53,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:20:53
[2026-06-22 05:20:54,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:20:54,751.751 INFO    ] Initializing speech engine...
[2026-06-22 05:20:54,760.760 INFO    ] 2026-06-22 05:20:54
[2026-06-22 05:20:55,027.027 INFO    ] 2026-06-22 05:20:55
[2026-06-22 05:20:55,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:20:55,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:20:55,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:20:55,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:20:55,487.487 INFO    ] time= 22/06/2026 05:20:55
[2026-06-22 05:20:55,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:20:55,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:20:55,630.630 INFO    ] No existing commands found in stream
[2026-06-22 05:21:00,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:21:00,645.645 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-22 05:21:02,881.881 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:21:02,885.885 INFO    ] Checking for system updates...
[2026-06-22 05:21:02,929.929 INFO    ] 200
[2026-06-22 05:21:02,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:21:02,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:21:02,998.998 INFO    ] No update needed
[2026-06-22 05:21:03,001.001 INFO    ] Checking for camera pi updates...
[2026-06-22 05:21:03,040.040 INFO    ] 200
[2026-06-22 05:21:03,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:21:03,094.094 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:21:03,148.148 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:21:03,150.150 INFO    ] No camera update needed
[2026-06-22 05:21:03,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:21:03,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:21:03,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:21:03,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:21:05,210.210 INFO    ] ================================================
[2026-06-22 05:21:05,225.225 INFO    ] Launching Daemon at Mon Jun 22 05:21:05 IST 2026
[2026-06-22 05:21:05,236.236 INFO    ] ================================================
[2026-06-22 05:21:05,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:21:05
[2026-06-22 05:21:06,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:21:06,729.729 INFO    ] Initializing speech engine...
[2026-06-22 05:21:06,736.736 INFO    ] 2026-06-22 05:21:06
[2026-06-22 05:21:07,033.033 INFO    ] 2026-06-22 05:21:06
[2026-06-22 05:21:07,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:21:07,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:21:07,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:21:07,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:21:07,432.432 INFO    ] time= 22/06/2026 05:21:07
[2026-06-22 05:21:07,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:21:07,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:21:07,552.552 INFO    ] No existing commands found in stream
[2026-06-22 05:21:12,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:21:12,575.575 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-22 05:21:13,711.711 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:21:13,714.714 INFO    ] Checking for system updates...
[2026-06-22 05:21:13,751.751 INFO    ] 200
[2026-06-22 05:21:13,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:21:13,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:21:13,828.828 INFO    ] No update needed
[2026-06-22 05:21:13,830.830 INFO    ] Checking for camera pi updates...
[2026-06-22 05:21:13,867.867 INFO    ] 200
[2026-06-22 05:21:13,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:21:13,919.919 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:21:14,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:21:14,004.004 INFO    ] No camera update needed
[2026-06-22 05:21:14,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:21:14,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:21:14,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:21:14,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:21:16,065.065 INFO    ] ================================================
[2026-06-22 05:21:16,080.080 INFO    ] Launching Daemon at Mon Jun 22 05:21:16 IST 2026
[2026-06-22 05:21:16,092.092 INFO    ] ================================================
[2026-06-22 05:21:16,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:21:16
[2026-06-22 05:21:17,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:21:17,716.716 INFO    ] Initializing speech engine...
[2026-06-22 05:21:17,731.731 INFO    ] 2026-06-22 05:21:17
[2026-06-22 05:21:17,988.988 INFO    ] 2026-06-22 05:21:17
[2026-06-22 05:21:18,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:21:18,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:21:18,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:21:18,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:21:18,330.330 INFO    ] time= 22/06/2026 05:21:18
[2026-06-22 05:21:18,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:21:18,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:21:18,443.443 INFO    ] No existing commands found in stream
[2026-06-22 05:21:23,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:21:23,459.459 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-22 05:21:27,464.464 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:21:27,467.467 INFO    ] Checking for system updates...
[2026-06-22 05:21:27,504.504 INFO    ] 200
[2026-06-22 05:21:27,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:21:27,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:21:27,572.572 INFO    ] No update needed
[2026-06-22 05:21:27,575.575 INFO    ] Checking for camera pi updates...
[2026-06-22 05:21:27,611.611 INFO    ] 200
[2026-06-22 05:21:27,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:21:27,654.654 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:21:27,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:21:27,772.772 INFO    ] No camera update needed
[2026-06-22 05:21:27,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:21:27,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:21:27,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:21:27,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:21:29,831.831 INFO    ] ================================================
[2026-06-22 05:21:29,847.847 INFO    ] Launching Daemon at Mon Jun 22 05:21:29 IST 2026
[2026-06-22 05:21:29,858.858 INFO    ] ================================================
[2026-06-22 05:21:30,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:21:30
[2026-06-22 05:21:30,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:21:31,221.221 INFO    ] Initializing speech engine...
[2026-06-22 05:21:31,231.231 INFO    ] 2026-06-22 05:21:31
[2026-06-22 05:21:31,479.479 INFO    ] 2026-06-22 05:21:31
[2026-06-22 05:21:31,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:21:31,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:21:31,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:21:31,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:21:31,849.849 INFO    ] time= 22/06/2026 05:21:31
[2026-06-22 05:21:31,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:21:31,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:21:31,967.967 INFO    ] No existing commands found in stream
[2026-06-22 05:21:36,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:21:36,983.983 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-22 05:21:37,854.854 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:21:37,855.855 INFO    ] Checking for system updates...
[2026-06-22 05:21:37,876.876 INFO    ] 200
[2026-06-22 05:21:37,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:21:37,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:21:37,912.912 INFO    ] No update needed
[2026-06-22 05:21:37,913.913 INFO    ] Checking for camera pi updates...
[2026-06-22 05:21:37,934.934 INFO    ] 200
[2026-06-22 05:21:37,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:21:37,964.964 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:21:38,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:21:38,047.047 INFO    ] No camera update needed
[2026-06-22 05:21:38,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:21:38,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:21:38,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:21:38,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:21:40,103.103 INFO    ] ================================================
[2026-06-22 05:21:40,119.119 INFO    ] Launching Daemon at Mon Jun 22 05:21:40 IST 2026
[2026-06-22 05:21:40,130.130 INFO    ] ================================================
[2026-06-22 05:21:40,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:21:40
[2026-06-22 05:21:41,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:21:41,558.558 INFO    ] Initializing speech engine...
[2026-06-22 05:21:41,571.571 INFO    ] 2026-06-22 05:21:41
[2026-06-22 05:21:41,862.862 INFO    ] 2026-06-22 05:21:41
[2026-06-22 05:21:41,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:21:42,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:21:42,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:21:42,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:21:42,249.249 INFO    ] time= 22/06/2026 05:21:42
[2026-06-22 05:21:42,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:21:42,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:21:42,375.375 INFO    ] No existing commands found in stream
[2026-06-22 05:21:47,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:21:47,391.391 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-22 05:21:49,565.565 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:21:49,567.567 INFO    ] Checking for system updates...
[2026-06-22 05:21:49,605.605 INFO    ] 200
[2026-06-22 05:21:49,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:21:49,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:21:49,665.665 INFO    ] No update needed
[2026-06-22 05:21:49,667.667 INFO    ] Checking for camera pi updates...
[2026-06-22 05:21:49,705.705 INFO    ] 200
[2026-06-22 05:21:49,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:21:49,749.749 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:21:49,850.850 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:21:49,853.853 INFO    ] No camera update needed
[2026-06-22 05:21:49,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:21:49,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:21:49,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:21:49,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:21:51,909.909 INFO    ] ================================================
[2026-06-22 05:21:51,925.925 INFO    ] Launching Daemon at Mon Jun 22 05:21:51 IST 2026
[2026-06-22 05:21:51,937.937 INFO    ] ================================================
[2026-06-22 05:21:52,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:21:52
[2026-06-22 05:21:53,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:21:53,268.268 INFO    ] Initializing speech engine...
[2026-06-22 05:21:53,276.276 INFO    ] 2026-06-22 05:21:53
[2026-06-22 05:21:53,573.573 INFO    ] 2026-06-22 05:21:53
[2026-06-22 05:21:53,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:21:53,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:21:53,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:21:53,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:21:53,928.928 INFO    ] time= 22/06/2026 05:21:53
[2026-06-22 05:21:53,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:21:53,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:21:54,008.008 INFO    ] No existing commands found in stream
[2026-06-22 05:21:59,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:21:59,022.022 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-22 05:22:02,966.966 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:22:02,970.970 INFO    ] Checking for system updates...
[2026-06-22 05:22:03,013.013 INFO    ] 200
[2026-06-22 05:22:03,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:22:03,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:22:03,078.078 INFO    ] No update needed
[2026-06-22 05:22:03,081.081 INFO    ] Checking for camera pi updates...
[2026-06-22 05:22:03,119.119 INFO    ] 200
[2026-06-22 05:22:03,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:22:03,162.162 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:22:03,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:22:03,239.239 INFO    ] No camera update needed
[2026-06-22 05:22:03,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:22:03,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:22:03,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:22:03,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:22:05,297.297 INFO    ] ================================================
[2026-06-22 05:22:05,313.313 INFO    ] Launching Daemon at Mon Jun 22 05:22:05 IST 2026
[2026-06-22 05:22:05,325.325 INFO    ] ================================================
[2026-06-22 05:22:06,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:22:06
[2026-06-22 05:22:06,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:22:06,802.802 INFO    ] Initializing speech engine...
[2026-06-22 05:22:06,825.825 INFO    ] 2026-06-22 05:22:06
[2026-06-22 05:22:07,086.086 INFO    ] 2026-06-22 05:22:07
[2026-06-22 05:22:07,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:22:07,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:22:07,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:22:07,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:22:07,585.585 INFO    ] time= 22/06/2026 05:22:07
[2026-06-22 05:22:07,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:22:07,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:22:07,726.726 INFO    ] No existing commands found in stream
[2026-06-22 05:22:12,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:22:12,741.741 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-22 05:22:16,969.969 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:22:16,970.970 INFO    ] Checking for system updates...
[2026-06-22 05:22:16,991.991 INFO    ] 200
[2026-06-22 05:22:16,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:22:17,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:22:17,052.052 INFO    ] No update needed
[2026-06-22 05:22:17,055.055 INFO    ] Checking for camera pi updates...
[2026-06-22 05:22:17,088.088 INFO    ] 200
[2026-06-22 05:22:17,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:22:17,131.131 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:22:17,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:22:17,215.215 INFO    ] No camera update needed
[2026-06-22 05:22:17,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:22:17,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:22:17,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:22:17,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:22:19,273.273 INFO    ] ================================================
[2026-06-22 05:22:19,290.290 INFO    ] Launching Daemon at Mon Jun 22 05:22:19 IST 2026
[2026-06-22 05:22:19,301.301 INFO    ] ================================================
[2026-06-22 05:22:19,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:22:19
[2026-06-22 05:22:20,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:22:20,626.626 INFO    ] Initializing speech engine...
[2026-06-22 05:22:20,635.635 INFO    ] 2026-06-22 05:22:20
[2026-06-22 05:22:20,936.936 INFO    ] 2026-06-22 05:22:20
[2026-06-22 05:22:20,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:22:21,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:22:21,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:22:21,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:22:21,331.331 INFO    ] time= 22/06/2026 05:22:21
[2026-06-22 05:22:21,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:22:21,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:22:21,460.460 INFO    ] No existing commands found in stream
[2026-06-22 05:22:26,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:22:26,476.476 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-22 05:22:30,630.630 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:22:30,633.633 INFO    ] Checking for system updates...
[2026-06-22 05:22:30,669.669 INFO    ] 200
[2026-06-22 05:22:30,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:22:30,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:22:30,728.728 INFO    ] No update needed
[2026-06-22 05:22:30,730.730 INFO    ] Checking for camera pi updates...
[2026-06-22 05:22:30,763.763 INFO    ] 200
[2026-06-22 05:22:30,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:22:30,806.806 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:22:30,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:22:30,997.997 INFO    ] No camera update needed
[2026-06-22 05:22:30,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:22:31,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:22:31,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:22:31,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:22:33,055.055 INFO    ] ================================================
[2026-06-22 05:22:33,071.071 INFO    ] Launching Daemon at Mon Jun 22 05:22:33 IST 2026
[2026-06-22 05:22:33,082.082 INFO    ] ================================================
[2026-06-22 05:22:33,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:22:33
[2026-06-22 05:22:34,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:22:34,627.627 INFO    ] Initializing speech engine...
[2026-06-22 05:22:34,635.635 INFO    ] 2026-06-22 05:22:34
[2026-06-22 05:22:34,899.899 INFO    ] 2026-06-22 05:22:34
[2026-06-22 05:22:34,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:22:35,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:22:35,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:22:35,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:22:35,360.360 INFO    ] time= 22/06/2026 05:22:35
[2026-06-22 05:22:35,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:22:35,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:22:35,601.601 INFO    ] No existing commands found in stream
[2026-06-22 05:22:40,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:22:40,639.639 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-22 05:22:41,397.397 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:22:41,400.400 INFO    ] Checking for system updates...
[2026-06-22 05:22:41,438.438 INFO    ] 200
[2026-06-22 05:22:41,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:22:41,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:22:41,499.499 INFO    ] No update needed
[2026-06-22 05:22:41,502.502 INFO    ] Checking for camera pi updates...
[2026-06-22 05:22:41,542.542 INFO    ] 200
[2026-06-22 05:22:41,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:22:41,599.599 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:22:41,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:22:41,699.699 INFO    ] No camera update needed
[2026-06-22 05:22:41,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:22:41,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:22:41,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:22:41,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:22:43,760.760 INFO    ] ================================================
[2026-06-22 05:22:43,776.776 INFO    ] Launching Daemon at Mon Jun 22 05:22:43 IST 2026
[2026-06-22 05:22:43,787.787 INFO    ] ================================================
[2026-06-22 05:22:44,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:22:44
[2026-06-22 05:22:45,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:22:45,340.340 INFO    ] Initializing speech engine...
[2026-06-22 05:22:45,349.349 INFO    ] 2026-06-22 05:22:45
[2026-06-22 05:22:45,622.622 INFO    ] 2026-06-22 05:22:45
[2026-06-22 05:22:45,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:22:45,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:22:45,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:22:46,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:22:46,103.103 INFO    ] time= 22/06/2026 05:22:46
[2026-06-22 05:22:46,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:22:46,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:22:46,327.327 INFO    ] No existing commands found in stream
[2026-06-22 05:22:51,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:22:51,364.364 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-22 05:22:55,535.535 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:22:55,537.537 INFO    ] Checking for system updates...
[2026-06-22 05:22:55,576.576 INFO    ] 200
[2026-06-22 05:22:55,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:22:55,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:22:55,640.640 INFO    ] No update needed
[2026-06-22 05:22:55,643.643 INFO    ] Checking for camera pi updates...
[2026-06-22 05:22:55,677.677 INFO    ] 200
[2026-06-22 05:22:55,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:22:55,726.726 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:22:55,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:22:55,830.830 INFO    ] No camera update needed
[2026-06-22 05:22:55,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:22:55,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:22:55,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:22:55,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:22:57,885.885 INFO    ] ================================================
[2026-06-22 05:22:57,901.901 INFO    ] Launching Daemon at Mon Jun 22 05:22:57 IST 2026
[2026-06-22 05:22:57,912.912 INFO    ] ================================================
[2026-06-22 05:22:58,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:22:58
[2026-06-22 05:22:59,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:22:59,478.478 INFO    ] Initializing speech engine...
[2026-06-22 05:22:59,489.489 INFO    ] 2026-06-22 05:22:59
[2026-06-22 05:22:59,801.801 INFO    ] 2026-06-22 05:22:59
[2026-06-22 05:22:59,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:23:00,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:23:00,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:23:00,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:23:00,245.245 INFO    ] time= 22/06/2026 05:23:00
[2026-06-22 05:23:00,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:23:00,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:23:00,424.424 INFO    ] No existing commands found in stream
[2026-06-22 05:23:05,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:23:05,450.450 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-22 05:23:05,941.941 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:23:05,944.944 INFO    ] Checking for system updates...
[2026-06-22 05:23:05,984.984 INFO    ] 200
[2026-06-22 05:23:05,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:23:06,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:23:06,039.039 INFO    ] No update needed
[2026-06-22 05:23:06,041.041 INFO    ] Checking for camera pi updates...
[2026-06-22 05:23:06,060.060 INFO    ] 200
[2026-06-22 05:23:06,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:23:06,086.086 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:23:06,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:23:06,175.175 INFO    ] No camera update needed
[2026-06-22 05:23:06,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:23:06,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:23:06,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:23:06,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:23:08,231.231 INFO    ] ================================================
[2026-06-22 05:23:08,246.246 INFO    ] Launching Daemon at Mon Jun 22 05:23:08 IST 2026
[2026-06-22 05:23:08,257.257 INFO    ] ================================================
[2026-06-22 05:23:08,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:23:08
[2026-06-22 05:23:09,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:23:09,581.581 INFO    ] Initializing speech engine...
[2026-06-22 05:23:09,596.596 INFO    ] 2026-06-22 05:23:09
[2026-06-22 05:23:09,863.863 INFO    ] 2026-06-22 05:23:09
[2026-06-22 05:23:09,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:23:10,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:23:10,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:23:10,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:23:10,248.248 INFO    ] time= 22/06/2026 05:23:10
[2026-06-22 05:23:10,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:23:10,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:23:10,324.324 INFO    ] No existing commands found in stream
[2026-06-22 05:23:15,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:23:15,340.340 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-22 05:23:18,092.092 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:23:18,095.095 INFO    ] Checking for system updates...
[2026-06-22 05:23:18,140.140 INFO    ] 200
[2026-06-22 05:23:18,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:23:18,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:23:18,221.221 INFO    ] No update needed
[2026-06-22 05:23:18,224.224 INFO    ] Checking for camera pi updates...
[2026-06-22 05:23:18,272.272 INFO    ] 200
[2026-06-22 05:23:18,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:23:18,333.333 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:23:18,417.417 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:23:18,419.419 INFO    ] No camera update needed
[2026-06-22 05:23:18,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:23:18,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:23:18,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:23:18,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:23:20,477.477 INFO    ] ================================================
[2026-06-22 05:23:20,493.493 INFO    ] Launching Daemon at Mon Jun 22 05:23:20 IST 2026
[2026-06-22 05:23:20,504.504 INFO    ] ================================================
[2026-06-22 05:23:21,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:23:21
[2026-06-22 05:23:21,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:23:22,153.153 INFO    ] Initializing speech engine...
[2026-06-22 05:23:22,166.166 INFO    ] 2026-06-22 05:23:22
[2026-06-22 05:23:22,453.453 INFO    ] 2026-06-22 05:23:22
[2026-06-22 05:23:22,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:23:22,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:23:22,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:23:22,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:23:22,924.924 INFO    ] time= 22/06/2026 05:23:22
[2026-06-22 05:23:22,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:23:23,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:23:23,078.078 INFO    ] No existing commands found in stream
[2026-06-22 05:23:28,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:23:28,094.094 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-22 05:23:29,286.286 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:23:29,288.288 INFO    ] Checking for system updates...
[2026-06-22 05:23:29,310.310 INFO    ] 200
[2026-06-22 05:23:29,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:23:29,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:23:29,346.346 INFO    ] No update needed
[2026-06-22 05:23:29,349.349 INFO    ] Checking for camera pi updates...
[2026-06-22 05:23:29,393.393 INFO    ] 200
[2026-06-22 05:23:29,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:23:29,438.438 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:23:29,515.515 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:23:29,517.517 INFO    ] No camera update needed
[2026-06-22 05:23:29,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:23:29,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:23:29,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:23:29,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:23:31,578.578 INFO    ] ================================================
[2026-06-22 05:23:31,595.595 INFO    ] Launching Daemon at Mon Jun 22 05:23:31 IST 2026
[2026-06-22 05:23:31,615.615 INFO    ] ================================================
[2026-06-22 05:23:32,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:23:32
[2026-06-22 05:23:32,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:23:33,143.143 INFO    ] Initializing speech engine...
[2026-06-22 05:23:33,153.153 INFO    ] 2026-06-22 05:23:33
[2026-06-22 05:23:33,403.403 INFO    ] 2026-06-22 05:23:33
[2026-06-22 05:23:33,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:23:33,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:23:33,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:23:33,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:23:33,853.853 INFO    ] time= 22/06/2026 05:23:33
[2026-06-22 05:23:33,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:23:33,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:23:34,026.026 INFO    ] No existing commands found in stream
[2026-06-22 05:23:39,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:23:39,041.041 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-22 05:23:40,841.841 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:23:40,843.843 INFO    ] Checking for system updates...
[2026-06-22 05:23:40,864.864 INFO    ] 200
[2026-06-22 05:23:40,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:23:40,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:23:40,900.900 INFO    ] No update needed
[2026-06-22 05:23:40,902.902 INFO    ] Checking for camera pi updates...
[2026-06-22 05:23:40,925.925 INFO    ] 200
[2026-06-22 05:23:40,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:23:40,954.954 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:23:41,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:23:41,041.041 INFO    ] No camera update needed
[2026-06-22 05:23:41,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:23:41,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:23:41,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:23:41,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:23:43,101.101 INFO    ] ================================================
[2026-06-22 05:23:43,116.116 INFO    ] Launching Daemon at Mon Jun 22 05:23:43 IST 2026
[2026-06-22 05:23:43,127.127 INFO    ] ================================================
[2026-06-22 05:23:43,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:23:43
[2026-06-22 05:23:44,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:23:44,681.681 INFO    ] Initializing speech engine...
[2026-06-22 05:23:44,693.693 INFO    ] 2026-06-22 05:23:44
[2026-06-22 05:23:44,971.971 INFO    ] 2026-06-22 05:23:44
[2026-06-22 05:23:45,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:23:45,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:23:45,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:23:45,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:23:45,342.342 INFO    ] time= 22/06/2026 05:23:45
[2026-06-22 05:23:45,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:23:45,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:23:45,468.468 INFO    ] No existing commands found in stream
[2026-06-22 05:23:50,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:23:50,483.483 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-22 05:23:53,931.931 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:23:53,934.934 INFO    ] Checking for system updates...
[2026-06-22 05:23:53,969.969 INFO    ] 200
[2026-06-22 05:23:53,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:23:54,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:23:54,027.027 INFO    ] No update needed
[2026-06-22 05:23:54,030.030 INFO    ] Checking for camera pi updates...
[2026-06-22 05:23:54,071.071 INFO    ] 200
[2026-06-22 05:23:54,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:23:54,114.114 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:23:54,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:23:54,198.198 INFO    ] No camera update needed
[2026-06-22 05:23:54,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:23:54,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:23:54,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:23:54,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:23:56,255.255 INFO    ] ================================================
[2026-06-22 05:23:56,270.270 INFO    ] Launching Daemon at Mon Jun 22 05:23:56 IST 2026
[2026-06-22 05:23:56,281.281 INFO    ] ================================================
[2026-06-22 05:23:56,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:23:56
[2026-06-22 05:23:57,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:23:57,640.640 INFO    ] Initializing speech engine...
[2026-06-22 05:23:57,647.647 INFO    ] 2026-06-22 05:23:57
[2026-06-22 05:23:57,907.907 INFO    ] 2026-06-22 05:23:57
[2026-06-22 05:23:57,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:23:58,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:23:58,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:23:58,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:23:58,329.329 INFO    ] time= 22/06/2026 05:23:58
[2026-06-22 05:23:58,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:23:58,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:23:58,508.508 INFO    ] No existing commands found in stream
[2026-06-22 05:24:03,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:24:03,523.523 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-22 05:24:07,780.780 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:24:07,783.783 INFO    ] Checking for system updates...
[2026-06-22 05:24:07,819.819 INFO    ] 200
[2026-06-22 05:24:07,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:24:07,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:24:07,876.876 INFO    ] No update needed
[2026-06-22 05:24:07,879.879 INFO    ] Checking for camera pi updates...
[2026-06-22 05:24:07,916.916 INFO    ] 200
[2026-06-22 05:24:07,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:24:07,959.959 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:24:08,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:24:08,050.050 INFO    ] No camera update needed
[2026-06-22 05:24:08,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:24:08,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:24:08,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:24:08,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:24:10,106.106 INFO    ] ================================================
[2026-06-22 05:24:10,121.121 INFO    ] Launching Daemon at Mon Jun 22 05:24:10 IST 2026
[2026-06-22 05:24:10,131.131 INFO    ] ================================================
[2026-06-22 05:24:10,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:24:10
[2026-06-22 05:24:11,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:24:11,591.591 INFO    ] Initializing speech engine...
[2026-06-22 05:24:11,599.599 INFO    ] 2026-06-22 05:24:11
[2026-06-22 05:24:11,872.872 INFO    ] 2026-06-22 05:24:11
[2026-06-22 05:24:11,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:24:12,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:24:12,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:24:12,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:24:12,365.365 INFO    ] time= 22/06/2026 05:24:12
[2026-06-22 05:24:12,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:24:12,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:24:12,571.571 INFO    ] No existing commands found in stream
[2026-06-22 05:24:17,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:24:17,608.608 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-22 05:24:21,267.267 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:24:21,270.270 INFO    ] Checking for system updates...
[2026-06-22 05:24:21,309.309 INFO    ] 200
[2026-06-22 05:24:21,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:24:21,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:24:21,372.372 INFO    ] No update needed
[2026-06-22 05:24:21,375.375 INFO    ] Checking for camera pi updates...
[2026-06-22 05:24:21,409.409 INFO    ] 200
[2026-06-22 05:24:21,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:24:21,454.454 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:24:21,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:24:21,536.536 INFO    ] No camera update needed
[2026-06-22 05:24:21,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:24:21,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:24:21,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:24:21,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:24:23,595.595 INFO    ] ================================================
[2026-06-22 05:24:23,610.610 INFO    ] Launching Daemon at Mon Jun 22 05:24:23 IST 2026
[2026-06-22 05:24:23,621.621 INFO    ] ================================================
[2026-06-22 05:24:24,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:24:24
[2026-06-22 05:24:24,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:24:25,079.079 INFO    ] Initializing speech engine...
[2026-06-22 05:24:25,085.085 INFO    ] 2026-06-22 05:24:25
[2026-06-22 05:24:25,373.373 INFO    ] 2026-06-22 05:24:25
[2026-06-22 05:24:25,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:24:25,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:24:25,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:24:25,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:24:25,807.807 INFO    ] time= 22/06/2026 05:24:25
[2026-06-22 05:24:25,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:24:25,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:24:25,982.982 INFO    ] No existing commands found in stream
[2026-06-22 05:24:30,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:24:30,998.998 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-22 05:24:33,375.375 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:24:33,378.378 INFO    ] Checking for system updates...
[2026-06-22 05:24:33,415.415 INFO    ] 200
[2026-06-22 05:24:33,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:24:33,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:24:33,479.479 INFO    ] No update needed
[2026-06-22 05:24:33,482.482 INFO    ] Checking for camera pi updates...
[2026-06-22 05:24:33,517.517 INFO    ] 200
[2026-06-22 05:24:33,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:24:33,562.562 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:24:33,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:24:33,715.715 INFO    ] No camera update needed
[2026-06-22 05:24:33,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:24:33,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:24:33,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:24:33,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:24:35,773.773 INFO    ] ================================================
[2026-06-22 05:24:35,787.787 INFO    ] Launching Daemon at Mon Jun 22 05:24:35 IST 2026
[2026-06-22 05:24:35,798.798 INFO    ] ================================================
[2026-06-22 05:24:36,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:24:36
[2026-06-22 05:24:36,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:24:37,155.155 INFO    ] Initializing speech engine...
[2026-06-22 05:24:37,182.182 INFO    ] 2026-06-22 05:24:37
[2026-06-22 05:24:37,457.457 INFO    ] 2026-06-22 05:24:37
[2026-06-22 05:24:37,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:24:37,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:24:37,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:24:37,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:24:37,807.807 INFO    ] time= 22/06/2026 05:24:37
[2026-06-22 05:24:37,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:24:37,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:24:37,887.887 INFO    ] No existing commands found in stream
[2026-06-22 05:24:42,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:24:42,902.902 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-22 05:24:44,578.578 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:24:44,580.580 INFO    ] Checking for system updates...
[2026-06-22 05:24:44,601.601 INFO    ] 200
[2026-06-22 05:24:44,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:24:44,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:24:44,653.653 INFO    ] No update needed
[2026-06-22 05:24:44,655.655 INFO    ] Checking for camera pi updates...
[2026-06-22 05:24:44,690.690 INFO    ] 200
[2026-06-22 05:24:44,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:24:44,736.736 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:24:44,812.812 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:24:44,815.815 INFO    ] No camera update needed
[2026-06-22 05:24:44,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:24:44,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:24:44,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:24:44,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:24:46,874.874 INFO    ] ================================================
[2026-06-22 05:24:46,889.889 INFO    ] Launching Daemon at Mon Jun 22 05:24:46 IST 2026
[2026-06-22 05:24:46,899.899 INFO    ] ================================================
[2026-06-22 05:24:47,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:24:47
[2026-06-22 05:24:47,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:24:48,262.262 INFO    ] Initializing speech engine...
[2026-06-22 05:24:48,272.272 INFO    ] 2026-06-22 05:24:48
[2026-06-22 05:24:48,535.535 INFO    ] 2026-06-22 05:24:48
[2026-06-22 05:24:48,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:24:48,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:24:48,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:24:48,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:24:48,970.970 INFO    ] time= 22/06/2026 05:24:48
[2026-06-22 05:24:49,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:24:49,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:24:49,139.139 INFO    ] No existing commands found in stream
[2026-06-22 05:24:54,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:24:54,154.154 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-22 05:24:56,817.817 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:24:56,825.825 INFO    ] Checking for system updates...
[2026-06-22 05:24:56,867.867 INFO    ] 200
[2026-06-22 05:24:56,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:24:56,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:24:56,924.924 INFO    ] No update needed
[2026-06-22 05:24:56,927.927 INFO    ] Checking for camera pi updates...
[2026-06-22 05:24:56,961.961 INFO    ] 200
[2026-06-22 05:24:56,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:24:57,004.004 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:24:57,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:24:57,092.092 INFO    ] No camera update needed
[2026-06-22 05:24:57,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:24:57,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:24:57,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:24:57,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:24:59,148.148 INFO    ] ================================================
[2026-06-22 05:24:59,163.163 INFO    ] Launching Daemon at Mon Jun 22 05:24:59 IST 2026
[2026-06-22 05:24:59,173.173 INFO    ] ================================================
[2026-06-22 05:24:59,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:24:59
[2026-06-22 05:25:00,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:25:00,581.581 INFO    ] Initializing speech engine...
[2026-06-22 05:25:00,596.596 INFO    ] 2026-06-22 05:25:00
[2026-06-22 05:25:00,863.863 INFO    ] 2026-06-22 05:25:00
[2026-06-22 05:25:00,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:25:01,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:25:01,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:25:01,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:25:01,239.239 INFO    ] time= 22/06/2026 05:25:01
[2026-06-22 05:25:01,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:25:01,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:25:01,317.317 INFO    ] No existing commands found in stream
[2026-06-22 05:25:06,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:25:06,332.332 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-22 05:25:10,555.555 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:25:10,556.556 INFO    ] Checking for system updates...
[2026-06-22 05:25:10,576.576 INFO    ] 200
[2026-06-22 05:25:10,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:25:10,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:25:10,609.609 INFO    ] No update needed
[2026-06-22 05:25:10,610.610 INFO    ] Checking for camera pi updates...
[2026-06-22 05:25:10,632.632 INFO    ] 200
[2026-06-22 05:25:10,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:25:10,666.666 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:25:10,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:25:10,752.752 INFO    ] No camera update needed
[2026-06-22 05:25:10,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:25:10,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:25:10,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:25:10,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:25:12,808.808 INFO    ] ================================================
[2026-06-22 05:25:12,823.823 INFO    ] Launching Daemon at Mon Jun 22 05:25:12 IST 2026
[2026-06-22 05:25:12,833.833 INFO    ] ================================================
[2026-06-22 05:25:13,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:25:13
[2026-06-22 05:25:13,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:25:14,256.256 INFO    ] Initializing speech engine...
[2026-06-22 05:25:14,266.266 INFO    ] 2026-06-22 05:25:14
[2026-06-22 05:25:14,514.514 INFO    ] 2026-06-22 05:25:14
[2026-06-22 05:25:14,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:25:14,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:25:14,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:25:14,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:25:14,888.888 INFO    ] time= 22/06/2026 05:25:14
[2026-06-22 05:25:14,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:25:14,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:25:14,968.968 INFO    ] No existing commands found in stream
[2026-06-22 05:25:19,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:25:19,996.996 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-22 05:25:21,086.086 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:25:21,088.088 INFO    ] Checking for system updates...
[2026-06-22 05:25:21,108.108 INFO    ] 200
[2026-06-22 05:25:21,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:25:21,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:25:21,146.146 INFO    ] No update needed
[2026-06-22 05:25:21,148.148 INFO    ] Checking for camera pi updates...
[2026-06-22 05:25:21,186.186 INFO    ] 200
[2026-06-22 05:25:21,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:25:21,229.229 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:25:21,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:25:21,318.318 INFO    ] No camera update needed
[2026-06-22 05:25:21,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:25:21,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:25:21,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:25:21,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:25:23,372.372 INFO    ] ================================================
[2026-06-22 05:25:23,387.387 INFO    ] Launching Daemon at Mon Jun 22 05:25:23 IST 2026
[2026-06-22 05:25:23,398.398 INFO    ] ================================================
[2026-06-22 05:25:23,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:25:23
[2026-06-22 05:25:24,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:25:24,754.754 INFO    ] Initializing speech engine...
[2026-06-22 05:25:24,767.767 INFO    ] 2026-06-22 05:25:24
[2026-06-22 05:25:25,028.028 INFO    ] 2026-06-22 05:25:25
[2026-06-22 05:25:25,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:25:25,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:25:25,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:25:25,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:25:25,541.541 INFO    ] time= 22/06/2026 05:25:25
[2026-06-22 05:25:25,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:25:25,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:25:25,732.732 INFO    ] No existing commands found in stream
[2026-06-22 05:25:30,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:25:30,761.761 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-22 05:25:33,466.466 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:25:33,468.468 INFO    ] Checking for system updates...
[2026-06-22 05:25:33,504.504 INFO    ] 200
[2026-06-22 05:25:33,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:25:33,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:25:33,561.561 INFO    ] No update needed
[2026-06-22 05:25:33,563.563 INFO    ] Checking for camera pi updates...
[2026-06-22 05:25:33,596.596 INFO    ] 200
[2026-06-22 05:25:33,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:25:33,644.644 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:25:33,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:25:33,729.729 INFO    ] No camera update needed
[2026-06-22 05:25:33,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:25:33,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:25:33,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:25:33,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:25:35,784.784 INFO    ] ================================================
[2026-06-22 05:25:35,799.799 INFO    ] Launching Daemon at Mon Jun 22 05:25:35 IST 2026
[2026-06-22 05:25:35,810.810 INFO    ] ================================================
[2026-06-22 05:25:36,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:25:36
[2026-06-22 05:25:36,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:25:37,178.178 INFO    ] Initializing speech engine...
[2026-06-22 05:25:37,187.187 INFO    ] 2026-06-22 05:25:37
[2026-06-22 05:25:37,444.444 INFO    ] 2026-06-22 05:25:37
[2026-06-22 05:25:37,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:25:37,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:25:37,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:25:37,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:25:37,909.909 INFO    ] time= 22/06/2026 05:25:37
[2026-06-22 05:25:37,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:25:37,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:25:38,051.051 INFO    ] No existing commands found in stream
[2026-06-22 05:25:43,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:25:43,066.066 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-22 05:25:45,717.717 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:25:45,719.719 INFO    ] Checking for system updates...
[2026-06-22 05:25:45,757.757 INFO    ] 200
[2026-06-22 05:25:45,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:25:45,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:25:45,815.815 INFO    ] No update needed
[2026-06-22 05:25:45,817.817 INFO    ] Checking for camera pi updates...
[2026-06-22 05:25:45,851.851 INFO    ] 200
[2026-06-22 05:25:45,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:25:45,893.893 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:25:45,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:25:45,977.977 INFO    ] No camera update needed
[2026-06-22 05:25:45,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:25:45,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:25:45,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:25:45,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:25:48,033.033 INFO    ] ================================================
[2026-06-22 05:25:48,048.048 INFO    ] Launching Daemon at Mon Jun 22 05:25:48 IST 2026
[2026-06-22 05:25:48,059.059 INFO    ] ================================================
[2026-06-22 05:25:48,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:25:48
[2026-06-22 05:25:49,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:25:49,617.617 INFO    ] Initializing speech engine...
[2026-06-22 05:25:49,631.631 INFO    ] 2026-06-22 05:25:49
[2026-06-22 05:25:49,940.940 INFO    ] 2026-06-22 05:25:49
[2026-06-22 05:25:50,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:25:50,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:25:50,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:25:51,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:25:51,117.117 INFO    ] time= 22/06/2026 05:25:51
[2026-06-22 05:25:51,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:25:51,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:25:51,227.227 INFO    ] No existing commands found in stream
[2026-06-22 05:25:56,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:25:56,261.261 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-22 05:25:58,281.281 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:25:58,284.284 INFO    ] Checking for system updates...
[2026-06-22 05:25:58,320.320 INFO    ] 200
[2026-06-22 05:25:58,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:25:58,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:25:58,379.379 INFO    ] No update needed
[2026-06-22 05:25:58,381.381 INFO    ] Checking for camera pi updates...
[2026-06-22 05:25:58,415.415 INFO    ] 200
[2026-06-22 05:25:58,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:25:58,458.458 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:25:58,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:25:58,544.544 INFO    ] No camera update needed
[2026-06-22 05:25:58,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:25:58,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:25:58,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:25:58,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:26:00,598.598 INFO    ] ================================================
[2026-06-22 05:26:00,613.613 INFO    ] Launching Daemon at Mon Jun 22 05:26:00 IST 2026
[2026-06-22 05:26:00,624.624 INFO    ] ================================================
[2026-06-22 05:26:01,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:26:01
[2026-06-22 05:26:02,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:26:02,359.359 INFO    ] Initializing speech engine...
[2026-06-22 05:26:02,376.376 INFO    ] 2026-06-22 05:26:02
[2026-06-22 05:26:02,703.703 INFO    ] 2026-06-22 05:26:02
[2026-06-22 05:26:02,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:26:02,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:26:02,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:26:03,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:26:03,090.090 INFO    ] time= 22/06/2026 05:26:03
[2026-06-22 05:26:03,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:26:03,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:26:03,203.203 INFO    ] No existing commands found in stream
[2026-06-22 05:26:08,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:26:08,219.219 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-22 05:26:11,868.868 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:26:11,870.870 INFO    ] Checking for system updates...
[2026-06-22 05:26:11,891.891 INFO    ] 200
[2026-06-22 05:26:11,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:26:11,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:26:11,950.950 INFO    ] No update needed
[2026-06-22 05:26:11,952.952 INFO    ] Checking for camera pi updates...
[2026-06-22 05:26:11,986.986 INFO    ] 200
[2026-06-22 05:26:11,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:26:12,038.038 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:26:12,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:26:12,112.112 INFO    ] No camera update needed
[2026-06-22 05:26:12,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:26:12,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:26:12,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:26:12,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:26:14,170.170 INFO    ] ================================================
[2026-06-22 05:26:14,185.185 INFO    ] Launching Daemon at Mon Jun 22 05:26:14 IST 2026
[2026-06-22 05:26:14,196.196 INFO    ] ================================================
[2026-06-22 05:26:14,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:26:14
[2026-06-22 05:26:15,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:26:15,532.532 INFO    ] Initializing speech engine...
[2026-06-22 05:26:15,547.547 INFO    ] 2026-06-22 05:26:15
[2026-06-22 05:26:15,821.821 INFO    ] 2026-06-22 05:26:15
[2026-06-22 05:26:15,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:26:16,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:26:16,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:26:16,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:26:16,236.236 INFO    ] time= 22/06/2026 05:26:16
[2026-06-22 05:26:16,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:26:16,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:26:16,321.321 INFO    ] No existing commands found in stream
[2026-06-22 05:26:21,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:26:21,340.340 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-22 05:26:22,181.181 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:26:22,184.184 INFO    ] Checking for system updates...
[2026-06-22 05:26:22,221.221 INFO    ] 200
[2026-06-22 05:26:22,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:26:22,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:26:22,288.288 INFO    ] No update needed
[2026-06-22 05:26:22,290.290 INFO    ] Checking for camera pi updates...
[2026-06-22 05:26:22,328.328 INFO    ] 200
[2026-06-22 05:26:22,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:26:22,371.371 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:26:22,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:26:22,433.433 INFO    ] No camera update needed
[2026-06-22 05:26:22,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:26:22,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:26:22,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:26:22,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:26:24,489.489 INFO    ] ================================================
[2026-06-22 05:26:24,504.504 INFO    ] Launching Daemon at Mon Jun 22 05:26:24 IST 2026
[2026-06-22 05:26:24,515.515 INFO    ] ================================================
[2026-06-22 05:26:25,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:26:25
[2026-06-22 05:26:25,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:26:25,827.827 INFO    ] Initializing speech engine...
[2026-06-22 05:26:25,840.840 INFO    ] 2026-06-22 05:26:25
[2026-06-22 05:26:26,106.106 INFO    ] 2026-06-22 05:26:26
[2026-06-22 05:26:26,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:26:26,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:26:26,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:26:26,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:26:26,486.486 INFO    ] time= 22/06/2026 05:26:26
[2026-06-22 05:26:26,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:26:26,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:26:26,562.562 INFO    ] No existing commands found in stream
[2026-06-22 05:26:31,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:26:31,578.578 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-22 05:26:32,827.827 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:26:32,831.831 INFO    ] Checking for system updates...
[2026-06-22 05:26:32,867.867 INFO    ] 200
[2026-06-22 05:26:32,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:26:32,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:26:32,926.926 INFO    ] No update needed
[2026-06-22 05:26:32,929.929 INFO    ] Checking for camera pi updates...
[2026-06-22 05:26:32,963.963 INFO    ] 200
[2026-06-22 05:26:32,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:26:33,006.006 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:26:33,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:26:33,088.088 INFO    ] No camera update needed
[2026-06-22 05:26:33,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:26:33,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:26:33,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:26:33,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:26:35,144.144 INFO    ] ================================================
[2026-06-22 05:26:35,159.159 INFO    ] Launching Daemon at Mon Jun 22 05:26:35 IST 2026
[2026-06-22 05:26:35,169.169 INFO    ] ================================================
[2026-06-22 05:26:35,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:26:35
[2026-06-22 05:26:36,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:26:36,772.772 INFO    ] Initializing speech engine...
[2026-06-22 05:26:36,783.783 INFO    ] 2026-06-22 05:26:36
[2026-06-22 05:26:37,064.064 INFO    ] 2026-06-22 05:26:37
[2026-06-22 05:26:37,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:26:37,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:26:37,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:26:37,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:26:37,517.517 INFO    ] time= 22/06/2026 05:26:37
[2026-06-22 05:26:37,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:26:37,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:26:37,678.678 INFO    ] No existing commands found in stream
[2026-06-22 05:26:42,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:26:42,693.693 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-22 05:26:46,937.937 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:26:46,940.940 INFO    ] Checking for system updates...
[2026-06-22 05:26:46,977.977 INFO    ] 200
[2026-06-22 05:26:46,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:26:47,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:26:47,037.037 INFO    ] No update needed
[2026-06-22 05:26:47,039.039 INFO    ] Checking for camera pi updates...
[2026-06-22 05:26:47,076.076 INFO    ] 200
[2026-06-22 05:26:47,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:26:47,120.120 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:26:47,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:26:47,313.313 INFO    ] No camera update needed
[2026-06-22 05:26:47,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:26:47,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:26:47,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:26:47,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:26:49,369.369 INFO    ] ================================================
[2026-06-22 05:26:49,384.384 INFO    ] Launching Daemon at Mon Jun 22 05:26:49 IST 2026
[2026-06-22 05:26:49,395.395 INFO    ] ================================================
[2026-06-22 05:26:49,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:26:49
[2026-06-22 05:26:50,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:26:50,710.710 INFO    ] Initializing speech engine...
[2026-06-22 05:26:50,732.732 INFO    ] 2026-06-22 05:26:50
[2026-06-22 05:26:50,986.986 INFO    ] 2026-06-22 05:26:50
[2026-06-22 05:26:51,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:26:51,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:26:51,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:26:51,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:26:51,369.369 INFO    ] time= 22/06/2026 05:26:51
[2026-06-22 05:26:51,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:26:51,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:26:51,529.529 INFO    ] No existing commands found in stream
[2026-06-22 05:26:56,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:26:56,562.562 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-22 05:27:00,280.280 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:27:00,281.281 INFO    ] Checking for system updates...
[2026-06-22 05:27:00,303.303 INFO    ] 200
[2026-06-22 05:27:00,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:27:00,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:27:00,344.344 INFO    ] No update needed
[2026-06-22 05:27:00,347.347 INFO    ] Checking for camera pi updates...
[2026-06-22 05:27:00,380.380 INFO    ] 200
[2026-06-22 05:27:00,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:27:00,424.424 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:27:00,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:27:00,510.510 INFO    ] No camera update needed
[2026-06-22 05:27:00,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:27:00,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:27:00,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:27:00,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:27:02,578.578 INFO    ] ================================================
[2026-06-22 05:27:02,595.595 INFO    ] Launching Daemon at Mon Jun 22 05:27:02 IST 2026
[2026-06-22 05:27:02,607.607 INFO    ] ================================================
[2026-06-22 05:27:03,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:27:03
[2026-06-22 05:27:03,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:27:04,211.211 INFO    ] Initializing speech engine...
[2026-06-22 05:27:04,217.217 INFO    ] 2026-06-22 05:27:04
[2026-06-22 05:27:04,488.488 INFO    ] 2026-06-22 05:27:04
[2026-06-22 05:27:04,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:27:04,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:27:04,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:27:05,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:27:05,040.040 INFO    ] time= 22/06/2026 05:27:05
[2026-06-22 05:27:05,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:27:05,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:27:05,172.172 INFO    ] No existing commands found in stream
[2026-06-22 05:27:10,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:27:10,206.206 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-22 05:27:13,585.585 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:27:13,588.588 INFO    ] Checking for system updates...
[2026-06-22 05:27:13,625.625 INFO    ] 200
[2026-06-22 05:27:13,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:27:13,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:27:13,686.686 INFO    ] No update needed
[2026-06-22 05:27:13,688.688 INFO    ] Checking for camera pi updates...
[2026-06-22 05:27:13,727.727 INFO    ] 200
[2026-06-22 05:27:13,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:27:13,776.776 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:27:13,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:27:13,865.865 INFO    ] No camera update needed
[2026-06-22 05:27:13,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:27:13,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:27:13,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:27:13,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:27:15,922.922 INFO    ] ================================================
[2026-06-22 05:27:15,937.937 INFO    ] Launching Daemon at Mon Jun 22 05:27:15 IST 2026
[2026-06-22 05:27:15,948.948 INFO    ] ================================================
[2026-06-22 05:27:16,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:27:16
[2026-06-22 05:27:17,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:27:17,373.373 INFO    ] Initializing speech engine...
[2026-06-22 05:27:17,382.382 INFO    ] 2026-06-22 05:27:17
[2026-06-22 05:27:17,651.651 INFO    ] 2026-06-22 05:27:17
[2026-06-22 05:27:17,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:27:17,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:27:17,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:27:18,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:27:18,111.111 INFO    ] time= 22/06/2026 05:27:18
[2026-06-22 05:27:18,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:27:18,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:27:18,255.255 INFO    ] No existing commands found in stream
[2026-06-22 05:27:23,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:27:23,266.266 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-22 05:27:26,705.705 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:27:26,706.706 INFO    ] Checking for system updates...
[2026-06-22 05:27:26,727.727 INFO    ] 200
[2026-06-22 05:27:26,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:27:26,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:27:26,761.761 INFO    ] No update needed
[2026-06-22 05:27:26,764.764 INFO    ] Checking for camera pi updates...
[2026-06-22 05:27:26,798.798 INFO    ] 200
[2026-06-22 05:27:26,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:27:26,841.841 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:27:26,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:27:26,938.938 INFO    ] No camera update needed
[2026-06-22 05:27:26,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:27:26,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:27:26,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:27:26,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:27:29,997.997 INFO    ] ================================================
[2026-06-22 05:27:29,012.012 INFO    ] Launching Daemon at Mon Jun 22 05:27:29 IST 2026
[2026-06-22 05:27:29,022.022 INFO    ] ================================================
[2026-06-22 05:27:29,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:27:29
[2026-06-22 05:27:30,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:27:30,380.380 INFO    ] Initializing speech engine...
[2026-06-22 05:27:30,389.389 INFO    ] 2026-06-22 05:27:30
[2026-06-22 05:27:30,646.646 INFO    ] 2026-06-22 05:27:30
[2026-06-22 05:27:30,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:27:30,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:27:30,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:27:31,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:27:31,114.114 INFO    ] time= 22/06/2026 05:27:31
[2026-06-22 05:27:31,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:27:31,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:27:31,271.271 INFO    ] No existing commands found in stream
[2026-06-22 05:27:36,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:27:36,289.289 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-22 05:27:39,221.221 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:27:39,223.223 INFO    ] Checking for system updates...
[2026-06-22 05:27:39,260.260 INFO    ] 200
[2026-06-22 05:27:39,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:27:39,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:27:39,318.318 INFO    ] No update needed
[2026-06-22 05:27:39,320.320 INFO    ] Checking for camera pi updates...
[2026-06-22 05:27:39,354.354 INFO    ] 200
[2026-06-22 05:27:39,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:27:39,398.398 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:27:39,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:27:39,460.460 INFO    ] No camera update needed
[2026-06-22 05:27:39,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:27:39,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:27:39,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:27:39,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:27:41,516.516 INFO    ] ================================================
[2026-06-22 05:27:41,531.531 INFO    ] Launching Daemon at Mon Jun 22 05:27:41 IST 2026
[2026-06-22 05:27:41,541.541 INFO    ] ================================================
[2026-06-22 05:27:42,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:27:42
[2026-06-22 05:27:42,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:27:42,892.892 INFO    ] Initializing speech engine...
[2026-06-22 05:27:42,901.901 INFO    ] 2026-06-22 05:27:42
[2026-06-22 05:27:43,153.153 INFO    ] 2026-06-22 05:27:43
[2026-06-22 05:27:43,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:27:43,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:27:43,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:27:43,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:27:43,594.594 INFO    ] time= 22/06/2026 05:27:43
[2026-06-22 05:27:43,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:27:43,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:27:43,756.756 INFO    ] No existing commands found in stream
[2026-06-22 05:27:48,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:27:48,770.770 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-22 05:27:51,879.879 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:27:51,880.880 INFO    ] Checking for system updates...
[2026-06-22 05:27:51,901.901 INFO    ] 200
[2026-06-22 05:27:51,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:27:51,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:27:51,935.935 INFO    ] No update needed
[2026-06-22 05:27:51,936.936 INFO    ] Checking for camera pi updates...
[2026-06-22 05:27:51,955.955 INFO    ] 200
[2026-06-22 05:27:51,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:27:51,980.980 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:27:52,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:27:52,061.061 INFO    ] No camera update needed
[2026-06-22 05:27:52,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:27:52,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:27:52,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:27:52,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:27:54,116.116 INFO    ] ================================================
[2026-06-22 05:27:54,131.131 INFO    ] Launching Daemon at Mon Jun 22 05:27:54 IST 2026
[2026-06-22 05:27:54,142.142 INFO    ] ================================================
[2026-06-22 05:27:54,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:27:54
[2026-06-22 05:27:55,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:27:55,632.632 INFO    ] Initializing speech engine...
[2026-06-22 05:27:55,644.644 INFO    ] 2026-06-22 05:27:55
[2026-06-22 05:27:55,914.914 INFO    ] 2026-06-22 05:27:55
[2026-06-22 05:27:55,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:27:56,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:27:56,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:27:56,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:27:56,386.386 INFO    ] time= 22/06/2026 05:27:56
[2026-06-22 05:27:56,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:27:56,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:27:56,536.536 INFO    ] No existing commands found in stream
[2026-06-22 05:28:01,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:28:01,551.551 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-22 05:28:02,391.391 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:28:02,395.395 INFO    ] Checking for system updates...
[2026-06-22 05:28:02,479.479 INFO    ] 200
[2026-06-22 05:28:02,483.483 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:28:02,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:28:02,554.554 INFO    ] No update needed
[2026-06-22 05:28:02,558.558 INFO    ] Checking for camera pi updates...
[2026-06-22 05:28:02,600.600 INFO    ] 200
[2026-06-22 05:28:02,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:28:02,658.658 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:28:02,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:28:02,752.752 INFO    ] No camera update needed
[2026-06-22 05:28:02,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:28:02,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:28:02,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:28:02,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:28:04,821.821 INFO    ] ================================================
[2026-06-22 05:28:04,836.836 INFO    ] Launching Daemon at Mon Jun 22 05:28:04 IST 2026
[2026-06-22 05:28:04,847.847 INFO    ] ================================================
[2026-06-22 05:28:05,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:28:05
[2026-06-22 05:28:06,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:28:06,299.299 INFO    ] Initializing speech engine...
[2026-06-22 05:28:06,306.306 INFO    ] 2026-06-22 05:28:06
[2026-06-22 05:28:06,568.568 INFO    ] 2026-06-22 05:28:06
[2026-06-22 05:28:06,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:28:06,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:28:06,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:28:06,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:28:07,018.018 INFO    ] time= 22/06/2026 05:28:06
[2026-06-22 05:28:07,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:28:07,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:28:07,179.179 INFO    ] No existing commands found in stream
[2026-06-22 05:28:12,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:28:12,203.203 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-22 05:28:13,212.212 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:28:13,214.214 INFO    ] Checking for system updates...
[2026-06-22 05:28:13,235.235 INFO    ] 200
[2026-06-22 05:28:13,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:28:13,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:28:13,267.267 INFO    ] No update needed
[2026-06-22 05:28:13,269.269 INFO    ] Checking for camera pi updates...
[2026-06-22 05:28:13,299.299 INFO    ] 200
[2026-06-22 05:28:13,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:28:13,342.342 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:28:13,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:28:13,431.431 INFO    ] No camera update needed
[2026-06-22 05:28:13,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:28:13,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:28:13,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:28:13,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:28:15,488.488 INFO    ] ================================================
[2026-06-22 05:28:15,504.504 INFO    ] Launching Daemon at Mon Jun 22 05:28:15 IST 2026
[2026-06-22 05:28:15,515.515 INFO    ] ================================================
[2026-06-22 05:28:16,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:28:16
[2026-06-22 05:28:16,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:28:16,892.892 INFO    ] Initializing speech engine...
[2026-06-22 05:28:16,901.901 INFO    ] 2026-06-22 05:28:16
[2026-06-22 05:28:17,160.160 INFO    ] 2026-06-22 05:28:17
[2026-06-22 05:28:17,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:28:17,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:28:17,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:28:17,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:28:17,601.601 INFO    ] time= 22/06/2026 05:28:17
[2026-06-22 05:28:17,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:28:17,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:28:17,755.755 INFO    ] No existing commands found in stream
[2026-06-22 05:28:22,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:28:22,774.774 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-22 05:28:23,888.888 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:28:23,890.890 INFO    ] Checking for system updates...
[2026-06-22 05:28:23,927.927 INFO    ] 200
[2026-06-22 05:28:23,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:28:23,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:28:23,991.991 INFO    ] No update needed
[2026-06-22 05:28:23,993.993 INFO    ] Checking for camera pi updates...
[2026-06-22 05:28:24,027.027 INFO    ] 200
[2026-06-22 05:28:24,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:28:24,070.070 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:28:24,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:28:24,149.149 INFO    ] No camera update needed
[2026-06-22 05:28:24,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:28:24,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:28:24,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:28:24,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:28:26,207.207 INFO    ] ================================================
[2026-06-22 05:28:26,223.223 INFO    ] Launching Daemon at Mon Jun 22 05:28:26 IST 2026
[2026-06-22 05:28:26,234.234 INFO    ] ================================================
[2026-06-22 05:28:26,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:28:26
[2026-06-22 05:28:27,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:28:27,613.613 INFO    ] Initializing speech engine...
[2026-06-22 05:28:27,628.628 INFO    ] 2026-06-22 05:28:27
[2026-06-22 05:28:27,902.902 INFO    ] 2026-06-22 05:28:27
[2026-06-22 05:28:27,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:28:28,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:28:28,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:28:28,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:28:28,276.276 INFO    ] time= 22/06/2026 05:28:28
[2026-06-22 05:28:28,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:28:28,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:28:28,400.400 INFO    ] No existing commands found in stream
[2026-06-22 05:28:33,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:28:33,417.417 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-22 05:28:35,803.803 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:28:35,806.806 INFO    ] Checking for system updates...
[2026-06-22 05:28:35,842.842 INFO    ] 200
[2026-06-22 05:28:35,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:28:35,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:28:35,900.900 INFO    ] No update needed
[2026-06-22 05:28:35,902.902 INFO    ] Checking for camera pi updates...
[2026-06-22 05:28:35,940.940 INFO    ] 200
[2026-06-22 05:28:35,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:28:35,983.983 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:28:36,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:28:36,058.058 INFO    ] No camera update needed
[2026-06-22 05:28:36,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:28:36,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:28:36,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:28:36,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:28:38,115.115 INFO    ] ================================================
[2026-06-22 05:28:38,130.130 INFO    ] Launching Daemon at Mon Jun 22 05:28:38 IST 2026
[2026-06-22 05:28:38,141.141 INFO    ] ================================================
[2026-06-22 05:28:38,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:28:38
[2026-06-22 05:28:39,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:28:39,459.459 INFO    ] Initializing speech engine...
[2026-06-22 05:28:39,483.483 INFO    ] 2026-06-22 05:28:39
[2026-06-22 05:28:39,741.741 INFO    ] 2026-06-22 05:28:39
[2026-06-22 05:28:39,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:28:39,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:28:39,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:28:40,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:28:40,117.117 INFO    ] time= 22/06/2026 05:28:40
[2026-06-22 05:28:40,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:28:40,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:28:40,296.296 INFO    ] No existing commands found in stream
[2026-06-22 05:28:45,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:28:45,324.324 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-22 05:28:46,563.563 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:28:46,566.566 INFO    ] Checking for system updates...
[2026-06-22 05:28:46,602.602 INFO    ] 200
[2026-06-22 05:28:46,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:28:46,657.657 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:28:46,660.660 INFO    ] No update needed
[2026-06-22 05:28:46,662.662 INFO    ] Checking for camera pi updates...
[2026-06-22 05:28:46,695.695 INFO    ] 200
[2026-06-22 05:28:46,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:28:46,741.741 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:28:46,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:28:46,847.847 INFO    ] No camera update needed
[2026-06-22 05:28:46,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:28:46,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:28:46,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:28:46,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:28:48,904.904 INFO    ] ================================================
[2026-06-22 05:28:48,919.919 INFO    ] Launching Daemon at Mon Jun 22 05:28:48 IST 2026
[2026-06-22 05:28:48,930.930 INFO    ] ================================================
[2026-06-22 05:28:49,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:28:49
[2026-06-22 05:28:49,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:28:50,244.244 INFO    ] Initializing speech engine...
[2026-06-22 05:28:50,265.265 INFO    ] 2026-06-22 05:28:50
[2026-06-22 05:28:50,526.526 INFO    ] 2026-06-22 05:28:50
[2026-06-22 05:28:50,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:28:51,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:28:51,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:28:51,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:28:51,663.663 INFO    ] time= 22/06/2026 05:28:51
[2026-06-22 05:28:51,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:28:51,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:28:51,725.725 INFO    ] No existing commands found in stream
[2026-06-22 05:28:56,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:28:56,753.753 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-22 05:29:00,983.983 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:29:00,984.984 INFO    ] Checking for system updates...
[2026-06-22 05:29:01,007.007 INFO    ] 200
[2026-06-22 05:29:01,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:29:01,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:29:01,070.070 INFO    ] No update needed
[2026-06-22 05:29:01,072.072 INFO    ] Checking for camera pi updates...
[2026-06-22 05:29:01,106.106 INFO    ] 200
[2026-06-22 05:29:01,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:29:01,148.148 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:29:01,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:29:01,330.330 INFO    ] No camera update needed
[2026-06-22 05:29:01,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:29:01,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:29:01,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:29:01,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:29:03,395.395 INFO    ] ================================================
[2026-06-22 05:29:03,420.420 INFO    ] Launching Daemon at Mon Jun 22 05:29:03 IST 2026
[2026-06-22 05:29:03,435.435 INFO    ] ================================================
[2026-06-22 05:29:04,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:29:04
[2026-06-22 05:29:04,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:29:04,937.937 INFO    ] Initializing speech engine...
[2026-06-22 05:29:04,947.947 INFO    ] 2026-06-22 05:29:04
[2026-06-22 05:29:05,208.208 INFO    ] 2026-06-22 05:29:05
[2026-06-22 05:29:05,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:29:05,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:29:05,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:29:05,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:29:05,638.638 INFO    ] time= 22/06/2026 05:29:05
[2026-06-22 05:29:05,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:29:05,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:29:05,811.811 INFO    ] No existing commands found in stream
[2026-06-22 05:29:10,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:29:10,826.826 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-22 05:29:14,787.787 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:29:14,790.790 INFO    ] Checking for system updates...
[2026-06-22 05:29:14,826.826 INFO    ] 200
[2026-06-22 05:29:14,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:29:14,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:29:14,883.883 INFO    ] No update needed
[2026-06-22 05:29:14,885.885 INFO    ] Checking for camera pi updates...
[2026-06-22 05:29:14,919.919 INFO    ] 200
[2026-06-22 05:29:14,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:29:14,962.962 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:29:15,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:29:15,040.040 INFO    ] No camera update needed
[2026-06-22 05:29:15,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:29:15,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:29:15,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:29:15,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:29:17,097.097 INFO    ] ================================================
[2026-06-22 05:29:17,113.113 INFO    ] Launching Daemon at Mon Jun 22 05:29:17 IST 2026
[2026-06-22 05:29:17,124.124 INFO    ] ================================================
[2026-06-22 05:29:17,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:29:17
[2026-06-22 05:29:18,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:29:18,493.493 INFO    ] Initializing speech engine...
[2026-06-22 05:29:18,513.513 INFO    ] 2026-06-22 05:29:18
[2026-06-22 05:29:18,773.773 INFO    ] 2026-06-22 05:29:18
[2026-06-22 05:29:18,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:29:18,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:29:18,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:29:19,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:29:19,152.152 INFO    ] time= 22/06/2026 05:29:19
[2026-06-22 05:29:19,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:29:19,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:29:19,304.304 INFO    ] No existing commands found in stream
[2026-06-22 05:29:24,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:29:24,332.332 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-22 05:29:27,429.429 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:29:27,431.431 INFO    ] Checking for system updates...
[2026-06-22 05:29:27,465.465 INFO    ] 200
[2026-06-22 05:29:27,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:29:27,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:29:27,524.524 INFO    ] No update needed
[2026-06-22 05:29:27,527.527 INFO    ] Checking for camera pi updates...
[2026-06-22 05:29:27,566.566 INFO    ] 200
[2026-06-22 05:29:27,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:29:27,611.611 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:29:27,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:29:27,715.715 INFO    ] No camera update needed
[2026-06-22 05:29:27,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:29:27,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:29:27,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:29:27,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:29:29,776.776 INFO    ] ================================================
[2026-06-22 05:29:29,792.792 INFO    ] Launching Daemon at Mon Jun 22 05:29:29 IST 2026
[2026-06-22 05:29:29,803.803 INFO    ] ================================================
[2026-06-22 05:29:30,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:29:30
[2026-06-22 05:29:31,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:29:31,342.342 INFO    ] Initializing speech engine...
[2026-06-22 05:29:31,352.352 INFO    ] 2026-06-22 05:29:31
[2026-06-22 05:29:31,638.638 INFO    ] 2026-06-22 05:29:31
[2026-06-22 05:29:31,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:29:31,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:29:31,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:29:32,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:29:32,137.137 INFO    ] time= 22/06/2026 05:29:32
[2026-06-22 05:29:32,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:29:32,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:29:32,347.347 INFO    ] No existing commands found in stream
[2026-06-22 05:29:37,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:29:37,386.386 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-22 05:29:40,497.497 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:29:40,499.499 INFO    ] Checking for system updates...
[2026-06-22 05:29:40,521.521 INFO    ] 200
[2026-06-22 05:29:40,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:29:40,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:29:40,560.560 INFO    ] No update needed
[2026-06-22 05:29:40,563.563 INFO    ] Checking for camera pi updates...
[2026-06-22 05:29:40,598.598 INFO    ] 200
[2026-06-22 05:29:40,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:29:40,647.647 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:29:40,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:29:40,739.739 INFO    ] No camera update needed
[2026-06-22 05:29:40,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:29:40,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:29:40,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:29:40,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:29:42,797.797 INFO    ] ================================================
[2026-06-22 05:29:42,812.812 INFO    ] Launching Daemon at Mon Jun 22 05:29:42 IST 2026
[2026-06-22 05:29:42,823.823 INFO    ] ================================================
[2026-06-22 05:29:43,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:29:43
[2026-06-22 05:29:43,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:29:44,254.254 INFO    ] Initializing speech engine...
[2026-06-22 05:29:44,262.262 INFO    ] 2026-06-22 05:29:44
[2026-06-22 05:29:44,515.515 INFO    ] 2026-06-22 05:29:44
[2026-06-22 05:29:44,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:29:44,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:29:44,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:29:44,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:29:44,870.870 INFO    ] time= 22/06/2026 05:29:44
[2026-06-22 05:29:44,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:29:44,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:29:44,967.967 INFO    ] No existing commands found in stream
[2026-06-22 05:29:49,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:29:49,979.979 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-22 05:29:54,196.196 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:29:54,197.197 INFO    ] Checking for system updates...
[2026-06-22 05:29:54,219.219 INFO    ] 200
[2026-06-22 05:29:54,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:29:54,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:29:54,253.253 INFO    ] No update needed
[2026-06-22 05:29:54,254.254 INFO    ] Checking for camera pi updates...
[2026-06-22 05:29:54,276.276 INFO    ] 200
[2026-06-22 05:29:54,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:29:54,325.325 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:29:54,409.409 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:29:54,412.412 INFO    ] No camera update needed
[2026-06-22 05:29:54,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:29:54,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:29:54,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:29:54,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:29:56,472.472 INFO    ] ================================================
[2026-06-22 05:29:56,487.487 INFO    ] Launching Daemon at Mon Jun 22 05:29:56 IST 2026
[2026-06-22 05:29:56,498.498 INFO    ] ================================================
[2026-06-22 05:29:57,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:29:57
[2026-06-22 05:29:57,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:29:57,820.820 INFO    ] Initializing speech engine...
[2026-06-22 05:29:57,827.827 INFO    ] 2026-06-22 05:29:57
[2026-06-22 05:29:58,117.117 INFO    ] 2026-06-22 05:29:58
[2026-06-22 05:29:58,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:29:58,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:29:58,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:29:58,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:29:58,530.530 INFO    ] time= 22/06/2026 05:29:58
[2026-06-22 05:29:58,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:29:58,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:29:58,618.618 INFO    ] No existing commands found in stream
[2026-06-22 05:30:03,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:30:03,631.631 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-22 05:30:08,658.658 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:30:08,659.659 INFO    ] Checking for system updates...
[2026-06-22 05:30:08,680.680 INFO    ] 200
[2026-06-22 05:30:08,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:30:08,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:30:08,725.725 INFO    ] No update needed
[2026-06-22 05:30:08,727.727 INFO    ] Checking for camera pi updates...
[2026-06-22 05:30:08,765.765 INFO    ] 200
[2026-06-22 05:30:08,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:30:08,808.808 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:30:08,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:30:08,916.916 INFO    ] No camera update needed
[2026-06-22 05:30:08,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:30:08,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:30:08,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:30:08,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:30:10,971.971 INFO    ] ================================================
[2026-06-22 05:30:10,987.987 INFO    ] Launching Daemon at Mon Jun 22 05:30:10 IST 2026
[2026-06-22 05:30:11,998.998 INFO    ] ================================================
[2026-06-22 05:30:11,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:30:11
[2026-06-22 05:30:12,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:30:12,626.626 INFO    ] Initializing speech engine...
[2026-06-22 05:30:12,640.640 INFO    ] 2026-06-22 05:30:12
[2026-06-22 05:30:12,911.911 INFO    ] 2026-06-22 05:30:12
[2026-06-22 05:30:12,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:30:13,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:30:13,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:30:13,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:30:13,394.394 INFO    ] time= 22/06/2026 05:30:13
[2026-06-22 05:30:13,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:30:13,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:30:13,545.545 INFO    ] No existing commands found in stream
[2026-06-22 05:30:18,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:30:18,562.562 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-22 05:30:22,225.225 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:30:22,228.228 INFO    ] Checking for system updates...
[2026-06-22 05:30:22,265.265 INFO    ] 200
[2026-06-22 05:30:22,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:30:22,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:30:22,323.323 INFO    ] No update needed
[2026-06-22 05:30:22,326.326 INFO    ] Checking for camera pi updates...
[2026-06-22 05:30:22,363.363 INFO    ] 200
[2026-06-22 05:30:22,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:30:22,407.407 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:30:22,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:30:22,489.489 INFO    ] No camera update needed
[2026-06-22 05:30:22,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:30:22,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:30:22,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:30:22,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:30:24,545.545 INFO    ] ================================================
[2026-06-22 05:30:24,561.561 INFO    ] Launching Daemon at Mon Jun 22 05:30:24 IST 2026
[2026-06-22 05:30:24,572.572 INFO    ] ================================================
[2026-06-22 05:30:25,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:30:25
[2026-06-22 05:30:25,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:30:26,093.093 INFO    ] Initializing speech engine...
[2026-06-22 05:30:26,101.101 INFO    ] 2026-06-22 05:30:26
[2026-06-22 05:30:26,377.377 INFO    ] 2026-06-22 05:30:26
[2026-06-22 05:30:26,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:30:26,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:30:26,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:30:26,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:30:26,855.855 INFO    ] time= 22/06/2026 05:30:26
[2026-06-22 05:30:26,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:30:26,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:30:27,005.005 INFO    ] No existing commands found in stream
[2026-06-22 05:30:32,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:30:32,022.022 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-22 05:30:34,989.989 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:30:34,991.991 INFO    ] Checking for system updates...
[2026-06-22 05:30:35,030.030 INFO    ] 200
[2026-06-22 05:30:35,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:30:35,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:30:35,089.089 INFO    ] No update needed
[2026-06-22 05:30:35,092.092 INFO    ] Checking for camera pi updates...
[2026-06-22 05:30:35,126.126 INFO    ] 200
[2026-06-22 05:30:35,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:30:35,170.170 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:30:35,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:30:35,252.252 INFO    ] No camera update needed
[2026-06-22 05:30:35,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:30:35,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:30:35,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:30:35,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:30:37,308.308 INFO    ] ================================================
[2026-06-22 05:30:37,323.323 INFO    ] Launching Daemon at Mon Jun 22 05:30:37 IST 2026
[2026-06-22 05:30:37,334.334 INFO    ] ================================================
[2026-06-22 05:30:37,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:30:37
[2026-06-22 05:30:38,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:30:38,751.751 INFO    ] Initializing speech engine...
[2026-06-22 05:30:38,760.760 INFO    ] 2026-06-22 05:30:38
[2026-06-22 05:30:39,023.023 INFO    ] 2026-06-22 05:30:39
[2026-06-22 05:30:39,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:30:39,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:30:39,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:30:39,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:30:39,489.489 INFO    ] time= 22/06/2026 05:30:39
[2026-06-22 05:30:39,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:30:39,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:30:39,636.636 INFO    ] No existing commands found in stream
[2026-06-22 05:30:44,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:30:44,651.651 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-22 05:30:48,565.565 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:30:48,568.568 INFO    ] Checking for system updates...
[2026-06-22 05:30:48,604.604 INFO    ] 200
[2026-06-22 05:30:48,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:30:48,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:30:48,663.663 INFO    ] No update needed
[2026-06-22 05:30:48,665.665 INFO    ] Checking for camera pi updates...
[2026-06-22 05:30:48,708.708 INFO    ] 200
[2026-06-22 05:30:48,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:30:48,764.764 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:30:48,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:30:48,849.849 INFO    ] No camera update needed
[2026-06-22 05:30:48,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:30:48,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:30:48,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:30:48,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:30:50,904.904 INFO    ] ================================================
[2026-06-22 05:30:50,920.920 INFO    ] Launching Daemon at Mon Jun 22 05:30:50 IST 2026
[2026-06-22 05:30:50,931.931 INFO    ] ================================================
[2026-06-22 05:30:51,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:30:51
[2026-06-22 05:30:52,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:30:52,458.458 INFO    ] Initializing speech engine...
[2026-06-22 05:30:52,470.470 INFO    ] 2026-06-22 05:30:52
[2026-06-22 05:30:52,752.752 INFO    ] 2026-06-22 05:30:52
[2026-06-22 05:30:52,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:30:53,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:30:53,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:30:53,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:30:53,188.188 INFO    ] time= 22/06/2026 05:30:53
[2026-06-22 05:30:53,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:30:53,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:30:53,363.363 INFO    ] No existing commands found in stream
[2026-06-22 05:30:58,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:30:58,379.379 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-22 05:31:00,916.916 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:31:00,917.917 INFO    ] Checking for system updates...
[2026-06-22 05:31:00,938.938 INFO    ] 200
[2026-06-22 05:31:00,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:31:00,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:31:00,975.975 INFO    ] No update needed
[2026-06-22 05:31:00,978.978 INFO    ] Checking for camera pi updates...
[2026-06-22 05:31:01,013.013 INFO    ] 200
[2026-06-22 05:31:01,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:31:01,060.060 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:31:01,154.154 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:31:01,157.157 INFO    ] No camera update needed
[2026-06-22 05:31:01,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:31:01,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:31:01,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:31:01,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:31:03,216.216 INFO    ] ================================================
[2026-06-22 05:31:03,231.231 INFO    ] Launching Daemon at Mon Jun 22 05:31:03 IST 2026
[2026-06-22 05:31:03,242.242 INFO    ] ================================================
[2026-06-22 05:31:03,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:31:03
[2026-06-22 05:31:04,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:31:04,901.901 INFO    ] Initializing speech engine...
[2026-06-22 05:31:04,915.915 INFO    ] 2026-06-22 05:31:04
[2026-06-22 05:31:05,199.199 INFO    ] 2026-06-22 05:31:05
[2026-06-22 05:31:05,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:31:05,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:31:05,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:31:05,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:31:05,654.654 INFO    ] time= 22/06/2026 05:31:05
[2026-06-22 05:31:05,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:31:05,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:31:05,806.806 INFO    ] No existing commands found in stream
[2026-06-22 05:31:10,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:31:10,827.827 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-22 05:31:15,138.138 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:31:15,141.141 INFO    ] Checking for system updates...
[2026-06-22 05:31:15,180.180 INFO    ] 200
[2026-06-22 05:31:15,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:31:15,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:31:15,240.240 INFO    ] No update needed
[2026-06-22 05:31:15,243.243 INFO    ] Checking for camera pi updates...
[2026-06-22 05:31:15,278.278 INFO    ] 200
[2026-06-22 05:31:15,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:31:15,324.324 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:31:15,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:31:15,519.519 INFO    ] No camera update needed
[2026-06-22 05:31:15,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:31:15,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:31:15,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:31:15,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:31:17,583.583 INFO    ] ================================================
[2026-06-22 05:31:17,599.599 INFO    ] Launching Daemon at Mon Jun 22 05:31:17 IST 2026
[2026-06-22 05:31:17,610.610 INFO    ] ================================================
[2026-06-22 05:31:18,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:31:18
[2026-06-22 05:31:18,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:31:19,070.070 INFO    ] Initializing speech engine...
[2026-06-22 05:31:19,085.085 INFO    ] 2026-06-22 05:31:19
[2026-06-22 05:31:19,369.369 INFO    ] 2026-06-22 05:31:19
[2026-06-22 05:31:19,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:31:20,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:31:20,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:31:20,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:31:20,888.888 INFO    ] time= 22/06/2026 05:31:20
[2026-06-22 05:31:20,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:31:20,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:31:21,024.024 INFO    ] No existing commands found in stream
[2026-06-22 05:31:26,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:31:26,045.045 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-22 05:31:29,175.175 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:31:29,178.178 INFO    ] Checking for system updates...
[2026-06-22 05:31:29,219.219 INFO    ] 200
[2026-06-22 05:31:29,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:31:29,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:31:29,277.277 INFO    ] No update needed
[2026-06-22 05:31:29,280.280 INFO    ] Checking for camera pi updates...
[2026-06-22 05:31:29,313.313 INFO    ] 200
[2026-06-22 05:31:29,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:31:29,357.357 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:31:29,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:31:29,440.440 INFO    ] No camera update needed
[2026-06-22 05:31:29,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:31:29,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:31:29,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:31:29,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:31:31,498.498 INFO    ] ================================================
[2026-06-22 05:31:31,514.514 INFO    ] Launching Daemon at Mon Jun 22 05:31:31 IST 2026
[2026-06-22 05:31:31,526.526 INFO    ] ================================================
[2026-06-22 05:31:32,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:31:32
[2026-06-22 05:31:32,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:31:33,017.017 INFO    ] Initializing speech engine...
[2026-06-22 05:31:33,023.023 INFO    ] 2026-06-22 05:31:33
[2026-06-22 05:31:33,268.268 INFO    ] 2026-06-22 05:31:33
[2026-06-22 05:31:33,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:31:33,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:31:33,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:31:33,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:31:33,616.616 INFO    ] time= 22/06/2026 05:31:33
[2026-06-22 05:31:33,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:31:33,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:31:33,711.711 INFO    ] No existing commands found in stream
[2026-06-22 05:31:38,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:31:38,727.727 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-22 05:31:40,207.207 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:31:40,209.209 INFO    ] Checking for system updates...
[2026-06-22 05:31:40,246.246 INFO    ] 200
[2026-06-22 05:31:40,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:31:40,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:31:40,304.304 INFO    ] No update needed
[2026-06-22 05:31:40,306.306 INFO    ] Checking for camera pi updates...
[2026-06-22 05:31:40,345.345 INFO    ] 200
[2026-06-22 05:31:40,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:31:40,388.388 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:31:40,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:31:40,497.497 INFO    ] No camera update needed
[2026-06-22 05:31:40,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:31:40,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:31:40,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:31:40,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:31:42,555.555 INFO    ] ================================================
[2026-06-22 05:31:42,572.572 INFO    ] Launching Daemon at Mon Jun 22 05:31:42 IST 2026
[2026-06-22 05:31:42,584.584 INFO    ] ================================================
[2026-06-22 05:31:43,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:31:43
[2026-06-22 05:31:43,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:31:43,956.956 INFO    ] Initializing speech engine...
[2026-06-22 05:31:43,966.966 INFO    ] 2026-06-22 05:31:43
[2026-06-22 05:31:44,232.232 INFO    ] 2026-06-22 05:31:44
[2026-06-22 05:31:44,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:31:44,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:31:44,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:31:44,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:31:44,729.729 INFO    ] time= 22/06/2026 05:31:44
[2026-06-22 05:31:44,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:31:44,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:31:44,855.855 INFO    ] No existing commands found in stream
[2026-06-22 05:31:49,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:31:49,872.872 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-22 05:31:52,917.917 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:31:52,920.920 INFO    ] Checking for system updates...
[2026-06-22 05:31:52,958.958 INFO    ] 200
[2026-06-22 05:31:52,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:31:53,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:31:53,018.018 INFO    ] No update needed
[2026-06-22 05:31:53,021.021 INFO    ] Checking for camera pi updates...
[2026-06-22 05:31:53,055.055 INFO    ] 200
[2026-06-22 05:31:53,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:31:53,098.098 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:31:53,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:31:53,188.188 INFO    ] No camera update needed
[2026-06-22 05:31:53,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:31:53,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:31:53,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:31:53,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:31:55,255.255 INFO    ] ================================================
[2026-06-22 05:31:55,270.270 INFO    ] Launching Daemon at Mon Jun 22 05:31:55 IST 2026
[2026-06-22 05:31:55,281.281 INFO    ] ================================================
[2026-06-22 05:31:55,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:31:55
[2026-06-22 05:31:56,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:31:56,614.614 INFO    ] Initializing speech engine...
[2026-06-22 05:31:56,623.623 INFO    ] 2026-06-22 05:31:56
[2026-06-22 05:31:56,870.870 INFO    ] 2026-06-22 05:31:56
[2026-06-22 05:31:56,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:31:57,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:31:57,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:31:57,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:31:57,304.304 INFO    ] time= 22/06/2026 05:31:57
[2026-06-22 05:31:57,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:31:57,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:31:57,564.564 INFO    ] No existing commands found in stream
[2026-06-22 05:32:02,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:32:02,591.591 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-22 05:32:03,949.949 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:32:03,951.951 INFO    ] Checking for system updates...
[2026-06-22 05:32:03,987.987 INFO    ] 200
[2026-06-22 05:32:03,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:32:04,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:32:04,051.051 INFO    ] No update needed
[2026-06-22 05:32:04,053.053 INFO    ] Checking for camera pi updates...
[2026-06-22 05:32:04,104.104 INFO    ] 200
[2026-06-22 05:32:04,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:32:04,153.153 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:32:04,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:32:04,260.260 INFO    ] No camera update needed
[2026-06-22 05:32:04,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:32:04,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:32:04,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:32:04,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:32:06,318.318 INFO    ] ================================================
[2026-06-22 05:32:06,333.333 INFO    ] Launching Daemon at Mon Jun 22 05:32:06 IST 2026
[2026-06-22 05:32:06,344.344 INFO    ] ================================================
[2026-06-22 05:32:07,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:32:07
[2026-06-22 05:32:07,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:32:08,028.028 INFO    ] Initializing speech engine...
[2026-06-22 05:32:08,042.042 INFO    ] 2026-06-22 05:32:08
[2026-06-22 05:32:08,358.358 INFO    ] 2026-06-22 05:32:08
[2026-06-22 05:32:08,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:32:08,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:32:08,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:32:08,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:32:08,868.868 INFO    ] time= 22/06/2026 05:32:08
[2026-06-22 05:32:08,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:32:08,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:32:09,042.042 INFO    ] No existing commands found in stream
[2026-06-22 05:32:14,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:32:14,092.092 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-22 05:32:15,225.225 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:32:15,228.228 INFO    ] Checking for system updates...
[2026-06-22 05:32:15,264.264 INFO    ] 200
[2026-06-22 05:32:15,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:32:15,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:32:15,332.332 INFO    ] No update needed
[2026-06-22 05:32:15,334.334 INFO    ] Checking for camera pi updates...
[2026-06-22 05:32:15,368.368 INFO    ] 200
[2026-06-22 05:32:15,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:32:15,411.411 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:32:15,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:32:15,494.494 INFO    ] No camera update needed
[2026-06-22 05:32:15,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:32:15,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:32:15,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:32:15,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:32:17,550.550 INFO    ] ================================================
[2026-06-22 05:32:17,566.566 INFO    ] Launching Daemon at Mon Jun 22 05:32:17 IST 2026
[2026-06-22 05:32:17,577.577 INFO    ] ================================================
[2026-06-22 05:32:18,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:32:18
[2026-06-22 05:32:18,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:32:19,176.176 INFO    ] Initializing speech engine...
[2026-06-22 05:32:19,182.182 INFO    ] 2026-06-22 05:32:19
[2026-06-22 05:32:19,457.457 INFO    ] 2026-06-22 05:32:19
[2026-06-22 05:32:19,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:32:20,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:32:20,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:32:20,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:32:20,887.887 INFO    ] time= 22/06/2026 05:32:20
[2026-06-22 05:32:20,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:32:20,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:32:20,993.993 INFO    ] No existing commands found in stream
[2026-06-22 05:32:26,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:32:26,009.009 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-22 05:32:27,700.700 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:32:27,703.703 INFO    ] Checking for system updates...
[2026-06-22 05:32:27,744.744 INFO    ] 200
[2026-06-22 05:32:27,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:32:27,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:32:27,810.810 INFO    ] No update needed
[2026-06-22 05:32:27,812.812 INFO    ] Checking for camera pi updates...
[2026-06-22 05:32:27,846.846 INFO    ] 200
[2026-06-22 05:32:27,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:32:27,896.896 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:32:27,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:32:27,984.984 INFO    ] No camera update needed
[2026-06-22 05:32:27,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:32:27,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:32:27,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:32:28,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:32:30,039.039 INFO    ] ================================================
[2026-06-22 05:32:30,055.055 INFO    ] Launching Daemon at Mon Jun 22 05:32:30 IST 2026
[2026-06-22 05:32:30,065.065 INFO    ] ================================================
[2026-06-22 05:32:30,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:32:30
[2026-06-22 05:32:31,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:32:31,695.695 INFO    ] Initializing speech engine...
[2026-06-22 05:32:31,704.704 INFO    ] 2026-06-22 05:32:31
[2026-06-22 05:32:32,004.004 INFO    ] 2026-06-22 05:32:31
[2026-06-22 05:32:32,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:32:32,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:32:32,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:32:32,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:32:32,527.527 INFO    ] time= 22/06/2026 05:32:32
[2026-06-22 05:32:32,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:32:32,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:32:32,679.679 INFO    ] No existing commands found in stream
[2026-06-22 05:32:37,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:32:37,694.694 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-22 05:32:40,184.184 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:32:40,187.187 INFO    ] Checking for system updates...
[2026-06-22 05:32:40,227.227 INFO    ] 200
[2026-06-22 05:32:40,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 05:32:40,232.232 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-22 05:32:40,235.235 INFO    ] Checking for camera pi updates...
[2026-06-22 05:32:40,281.281 INFO    ] 200
[2026-06-22 05:32:40,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 05:32:40,286.286 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-22 05:32:40,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:32:40,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:32:40,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:32:40,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:32:42,347.347 INFO    ] ================================================
[2026-06-22 05:32:42,362.362 INFO    ] Launching Daemon at Mon Jun 22 05:32:42 IST 2026
[2026-06-22 05:32:42,374.374 INFO    ] ================================================
[2026-06-22 05:32:42,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:32:42
[2026-06-22 05:32:43,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:32:43,890.890 INFO    ] Initializing speech engine...
[2026-06-22 05:32:43,898.898 INFO    ] 2026-06-22 05:32:43
[2026-06-22 05:32:44,159.159 INFO    ] 2026-06-22 05:32:44
[2026-06-22 05:32:44,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:32:44,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:32:44,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:32:44,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:32:44,626.626 INFO    ] time= 22/06/2026 05:32:44
[2026-06-22 05:32:44,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:32:44,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:32:44,780.780 INFO    ] No existing commands found in stream
[2026-06-22 05:32:49,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:32:49,813.813 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-22 05:32:52,384.384 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:32:52,387.387 INFO    ] Checking for system updates...
[2026-06-22 05:32:52,429.429 INFO    ] 200
[2026-06-22 05:32:52,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:32:52,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:32:52,495.495 INFO    ] No update needed
[2026-06-22 05:32:52,498.498 INFO    ] Checking for camera pi updates...
[2026-06-22 05:32:52,532.532 INFO    ] 200
[2026-06-22 05:32:52,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:32:52,576.576 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:32:52,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:32:52,678.678 INFO    ] No camera update needed
[2026-06-22 05:32:52,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:32:52,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:32:52,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:32:52,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:32:54,735.735 INFO    ] ================================================
[2026-06-22 05:32:54,750.750 INFO    ] Launching Daemon at Mon Jun 22 05:32:54 IST 2026
[2026-06-22 05:32:54,761.761 INFO    ] ================================================
[2026-06-22 05:32:55,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:32:55
[2026-06-22 05:32:55,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:32:56,119.119 INFO    ] Initializing speech engine...
[2026-06-22 05:32:56,126.126 INFO    ] 2026-06-22 05:32:56
[2026-06-22 05:32:56,388.388 INFO    ] 2026-06-22 05:32:56
[2026-06-22 05:32:56,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:32:56,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:32:56,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:32:56,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:32:56,879.879 INFO    ] time= 22/06/2026 05:32:56
[2026-06-22 05:32:56,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:32:56,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:32:57,087.087 INFO    ] No existing commands found in stream
[2026-06-22 05:33:02,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:33:02,119.119 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-22 05:33:04,362.362 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:33:04,379.379 INFO    ] Checking for system updates...
[2026-06-22 05:33:04,423.423 INFO    ] 200
[2026-06-22 05:33:04,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:33:04,485.485 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:33:04,488.488 INFO    ] No update needed
[2026-06-22 05:33:04,490.490 INFO    ] Checking for camera pi updates...
[2026-06-22 05:33:04,523.523 INFO    ] 200
[2026-06-22 05:33:04,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:33:04,566.566 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:33:04,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:33:04,646.646 INFO    ] No camera update needed
[2026-06-22 05:33:04,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:33:04,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:33:04,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:33:04,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:33:06,706.706 INFO    ] ================================================
[2026-06-22 05:33:06,725.725 INFO    ] Launching Daemon at Mon Jun 22 05:33:06 IST 2026
[2026-06-22 05:33:06,737.737 INFO    ] ================================================
[2026-06-22 05:33:07,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:33:07
[2026-06-22 05:33:07,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:33:08,203.203 INFO    ] Initializing speech engine...
[2026-06-22 05:33:08,212.212 INFO    ] 2026-06-22 05:33:08
[2026-06-22 05:33:08,471.471 INFO    ] 2026-06-22 05:33:08
[2026-06-22 05:33:08,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:33:08,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:33:08,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:33:08,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:33:08,941.941 INFO    ] time= 22/06/2026 05:33:08
[2026-06-22 05:33:08,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:33:09,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:33:09,074.074 INFO    ] No existing commands found in stream
[2026-06-22 05:33:14,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:33:14,089.089 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-22 05:33:14,940.940 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:33:14,942.942 INFO    ] Checking for system updates...
[2026-06-22 05:33:14,979.979 INFO    ] 200
[2026-06-22 05:33:14,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:33:15,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:33:15,038.038 INFO    ] No update needed
[2026-06-22 05:33:15,040.040 INFO    ] Checking for camera pi updates...
[2026-06-22 05:33:15,074.074 INFO    ] 200
[2026-06-22 05:33:15,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:33:15,122.122 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:33:15,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:33:15,228.228 INFO    ] No camera update needed
[2026-06-22 05:33:15,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:33:15,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:33:15,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:33:15,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:33:17,284.284 INFO    ] ================================================
[2026-06-22 05:33:17,299.299 INFO    ] Launching Daemon at Mon Jun 22 05:33:17 IST 2026
[2026-06-22 05:33:17,311.311 INFO    ] ================================================
[2026-06-22 05:33:17,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:33:17
[2026-06-22 05:33:18,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:33:18,737.737 INFO    ] Initializing speech engine...
[2026-06-22 05:33:18,744.744 INFO    ] 2026-06-22 05:33:18
[2026-06-22 05:33:19,006.006 INFO    ] 2026-06-22 05:33:19
[2026-06-22 05:33:19,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:33:19,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:33:19,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:33:19,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:33:19,465.465 INFO    ] time= 22/06/2026 05:33:19
[2026-06-22 05:33:19,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:33:19,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:33:19,613.613 INFO    ] No existing commands found in stream
[2026-06-22 05:33:24,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:33:24,628.628 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-22 05:33:27,367.367 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:33:27,369.369 INFO    ] Checking for system updates...
[2026-06-22 05:33:27,398.398 INFO    ] 200
[2026-06-22 05:33:27,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:33:27,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:33:27,455.455 INFO    ] No update needed
[2026-06-22 05:33:27,458.458 INFO    ] Checking for camera pi updates...
[2026-06-22 05:33:27,492.492 INFO    ] 200
[2026-06-22 05:33:27,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:33:27,540.540 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:33:27,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:33:27,721.721 INFO    ] No camera update needed
[2026-06-22 05:33:27,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:33:27,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:33:27,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:33:27,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:33:29,779.779 INFO    ] ================================================
[2026-06-22 05:33:29,795.795 INFO    ] Launching Daemon at Mon Jun 22 05:33:29 IST 2026
[2026-06-22 05:33:29,806.806 INFO    ] ================================================
[2026-06-22 05:33:30,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:33:30
[2026-06-22 05:33:31,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:33:31,315.315 INFO    ] Initializing speech engine...
[2026-06-22 05:33:31,322.322 INFO    ] 2026-06-22 05:33:31
[2026-06-22 05:33:31,613.613 INFO    ] 2026-06-22 05:33:31
[2026-06-22 05:33:31,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:33:31,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:33:31,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:33:32,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:33:32,125.125 INFO    ] time= 22/06/2026 05:33:32
[2026-06-22 05:33:32,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:33:32,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:33:32,291.291 INFO    ] No existing commands found in stream
[2026-06-22 05:33:37,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:33:37,328.328 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-22 05:33:41,131.131 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:33:41,134.134 INFO    ] Checking for system updates...
[2026-06-22 05:33:41,170.170 INFO    ] 200
[2026-06-22 05:33:41,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:33:41,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:33:41,236.236 INFO    ] No update needed
[2026-06-22 05:33:41,238.238 INFO    ] Checking for camera pi updates...
[2026-06-22 05:33:41,276.276 INFO    ] 200
[2026-06-22 05:33:41,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:33:41,324.324 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:33:41,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:33:41,394.394 INFO    ] No camera update needed
[2026-06-22 05:33:41,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:33:41,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:33:41,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:33:41,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:33:43,455.455 INFO    ] ================================================
[2026-06-22 05:33:43,476.476 INFO    ] Launching Daemon at Mon Jun 22 05:33:43 IST 2026
[2026-06-22 05:33:43,487.487 INFO    ] ================================================
[2026-06-22 05:33:44,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:33:44
[2026-06-22 05:33:44,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:33:45,005.005 INFO    ] Initializing speech engine...
[2026-06-22 05:33:45,012.012 INFO    ] 2026-06-22 05:33:45
[2026-06-22 05:33:45,287.287 INFO    ] 2026-06-22 05:33:45
[2026-06-22 05:33:45,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:33:45,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:33:45,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:33:45,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:33:45,770.770 INFO    ] time= 22/06/2026 05:33:45
[2026-06-22 05:33:45,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:33:45,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:33:45,915.915 INFO    ] No existing commands found in stream
[2026-06-22 05:33:50,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:33:50,931.931 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-22 05:33:52,555.555 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:33:52,558.558 INFO    ] Checking for system updates...
[2026-06-22 05:33:52,599.599 INFO    ] 200
[2026-06-22 05:33:52,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:33:52,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:33:52,658.658 INFO    ] No update needed
[2026-06-22 05:33:52,661.661 INFO    ] Checking for camera pi updates...
[2026-06-22 05:33:52,695.695 INFO    ] 200
[2026-06-22 05:33:52,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:33:52,740.740 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:33:52,820.820 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:33:52,822.822 INFO    ] No camera update needed
[2026-06-22 05:33:52,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:33:52,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:33:52,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:33:52,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:33:54,878.878 INFO    ] ================================================
[2026-06-22 05:33:54,894.894 INFO    ] Launching Daemon at Mon Jun 22 05:33:54 IST 2026
[2026-06-22 05:33:54,905.905 INFO    ] ================================================
[2026-06-22 05:33:55,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:33:55
[2026-06-22 05:33:56,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:33:56,415.415 INFO    ] Initializing speech engine...
[2026-06-22 05:33:56,422.422 INFO    ] 2026-06-22 05:33:56
[2026-06-22 05:33:56,693.693 INFO    ] 2026-06-22 05:33:56
[2026-06-22 05:33:56,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:33:56,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:33:56,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:33:57,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:33:57,175.175 INFO    ] time= 22/06/2026 05:33:57
[2026-06-22 05:33:57,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:33:57,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:33:57,305.305 INFO    ] No existing commands found in stream
[2026-06-22 05:34:02,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:34:02,321.321 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-22 05:34:05,425.425 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:34:05,428.428 INFO    ] Checking for system updates...
[2026-06-22 05:34:05,468.468 INFO    ] 200
[2026-06-22 05:34:05,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:34:05,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:34:05,533.533 INFO    ] No update needed
[2026-06-22 05:34:05,535.535 INFO    ] Checking for camera pi updates...
[2026-06-22 05:34:05,569.569 INFO    ] 200
[2026-06-22 05:34:05,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:34:05,613.613 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:34:05,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:34:05,692.692 INFO    ] No camera update needed
[2026-06-22 05:34:05,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:34:05,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:34:05,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:34:05,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:34:07,748.748 INFO    ] ================================================
[2026-06-22 05:34:07,763.763 INFO    ] Launching Daemon at Mon Jun 22 05:34:07 IST 2026
[2026-06-22 05:34:07,774.774 INFO    ] ================================================
[2026-06-22 05:34:08,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:34:08
[2026-06-22 05:34:08,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:34:09,238.238 INFO    ] Initializing speech engine...
[2026-06-22 05:34:09,261.261 INFO    ] 2026-06-22 05:34:09
[2026-06-22 05:34:09,514.514 INFO    ] 2026-06-22 05:34:09
[2026-06-22 05:34:09,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:34:09,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:34:09,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:34:09,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:34:09,982.982 INFO    ] time= 22/06/2026 05:34:09
[2026-06-22 05:34:10,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:34:10,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:34:10,133.133 INFO    ] No existing commands found in stream
[2026-06-22 05:34:15,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:34:15,148.148 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-22 05:34:15,958.958 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:34:15,959.959 INFO    ] Checking for system updates...
[2026-06-22 05:34:15,980.980 INFO    ] 200
[2026-06-22 05:34:15,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:34:16,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:34:16,013.013 INFO    ] No update needed
[2026-06-22 05:34:16,014.014 INFO    ] Checking for camera pi updates...
[2026-06-22 05:34:16,044.044 INFO    ] 200
[2026-06-22 05:34:16,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:34:16,088.088 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:34:16,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:34:16,173.173 INFO    ] No camera update needed
[2026-06-22 05:34:16,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:34:16,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:34:16,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:34:16,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:34:18,228.228 INFO    ] ================================================
[2026-06-22 05:34:18,244.244 INFO    ] Launching Daemon at Mon Jun 22 05:34:18 IST 2026
[2026-06-22 05:34:18,256.256 INFO    ] ================================================
[2026-06-22 05:34:18,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:34:18
[2026-06-22 05:34:19,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:34:19,544.544 INFO    ] Initializing speech engine...
[2026-06-22 05:34:19,551.551 INFO    ] 2026-06-22 05:34:19
[2026-06-22 05:34:19,814.814 INFO    ] 2026-06-22 05:34:19
[2026-06-22 05:34:19,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:34:20,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:34:20,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:34:21,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:34:21,146.146 INFO    ] time= 22/06/2026 05:34:21
[2026-06-22 05:34:21,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:34:21,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:34:21,209.209 INFO    ] No existing commands found in stream
[2026-06-22 05:34:26,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:34:26,224.224 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-22 05:34:27,667.667 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:34:27,668.668 INFO    ] Checking for system updates...
[2026-06-22 05:34:27,691.691 INFO    ] 200
[2026-06-22 05:34:27,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:34:27,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:34:27,736.736 INFO    ] No update needed
[2026-06-22 05:34:27,739.739 INFO    ] Checking for camera pi updates...
[2026-06-22 05:34:27,774.774 INFO    ] 200
[2026-06-22 05:34:27,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:34:27,819.819 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:34:27,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:34:27,909.909 INFO    ] No camera update needed
[2026-06-22 05:34:27,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:34:27,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:34:27,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:34:27,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:34:29,968.968 INFO    ] ================================================
[2026-06-22 05:34:29,983.983 INFO    ] Launching Daemon at Mon Jun 22 05:34:29 IST 2026
[2026-06-22 05:34:30,994.994 INFO    ] ================================================
[2026-06-22 05:34:30,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:34:30
[2026-06-22 05:34:31,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:34:31,438.438 INFO    ] Initializing speech engine...
[2026-06-22 05:34:31,447.447 INFO    ] 2026-06-22 05:34:31
[2026-06-22 05:34:31,710.710 INFO    ] 2026-06-22 05:34:31
[2026-06-22 05:34:31,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:34:31,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:34:32,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:34:32,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:34:32,228.228 INFO    ] time= 22/06/2026 05:34:32
[2026-06-22 05:34:32,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:34:32,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:34:32,391.391 INFO    ] No existing commands found in stream
[2026-06-22 05:34:37,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:34:37,427.427 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-22 05:34:38,043.043 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:34:38,046.046 INFO    ] Checking for system updates...
[2026-06-22 05:34:38,082.082 INFO    ] 200
[2026-06-22 05:34:38,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:34:38,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:34:38,147.147 INFO    ] No update needed
[2026-06-22 05:34:38,150.150 INFO    ] Checking for camera pi updates...
[2026-06-22 05:34:38,188.188 INFO    ] 200
[2026-06-22 05:34:38,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:34:38,238.238 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:34:38,304.304 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:34:38,307.307 INFO    ] No camera update needed
[2026-06-22 05:34:38,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:34:38,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:34:38,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:34:38,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:34:40,368.368 INFO    ] ================================================
[2026-06-22 05:34:40,385.385 INFO    ] Launching Daemon at Mon Jun 22 05:34:40 IST 2026
[2026-06-22 05:34:40,396.396 INFO    ] ================================================
[2026-06-22 05:34:41,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:34:41
[2026-06-22 05:34:41,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:34:41,867.867 INFO    ] Initializing speech engine...
[2026-06-22 05:34:41,873.873 INFO    ] 2026-06-22 05:34:41
[2026-06-22 05:34:42,166.166 INFO    ] 2026-06-22 05:34:42
[2026-06-22 05:34:42,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:34:42,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:34:42,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:34:42,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:34:42,636.636 INFO    ] time= 22/06/2026 05:34:42
[2026-06-22 05:34:42,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:34:42,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:34:42,855.855 INFO    ] No existing commands found in stream
[2026-06-22 05:34:47,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:34:47,891.891 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-22 05:34:51,407.407 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:34:51,409.409 INFO    ] Checking for system updates...
[2026-06-22 05:34:51,430.430 INFO    ] 200
[2026-06-22 05:34:51,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:34:51,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:34:51,491.491 INFO    ] No update needed
[2026-06-22 05:34:51,494.494 INFO    ] Checking for camera pi updates...
[2026-06-22 05:34:51,529.529 INFO    ] 200
[2026-06-22 05:34:51,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:34:51,580.580 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:34:51,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:34:51,669.669 INFO    ] No camera update needed
[2026-06-22 05:34:51,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:34:51,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:34:51,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:34:51,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:34:53,729.729 INFO    ] ================================================
[2026-06-22 05:34:53,745.745 INFO    ] Launching Daemon at Mon Jun 22 05:34:53 IST 2026
[2026-06-22 05:34:53,756.756 INFO    ] ================================================
[2026-06-22 05:34:54,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:34:54
[2026-06-22 05:34:55,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:34:55,440.440 INFO    ] Initializing speech engine...
[2026-06-22 05:34:55,454.454 INFO    ] 2026-06-22 05:34:55
[2026-06-22 05:34:55,770.770 INFO    ] 2026-06-22 05:34:55
[2026-06-22 05:34:55,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:34:56,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:34:56,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:34:56,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:34:56,273.273 INFO    ] time= 22/06/2026 05:34:56
[2026-06-22 05:34:56,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:34:56,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:34:56,405.405 INFO    ] No existing commands found in stream
[2026-06-22 05:35:01,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:35:01,440.440 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-22 05:35:05,814.814 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:35:05,818.818 INFO    ] Checking for system updates...
[2026-06-22 05:35:05,856.856 INFO    ] 200
[2026-06-22 05:35:05,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:35:05,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:35:05,922.922 INFO    ] No update needed
[2026-06-22 05:35:05,925.925 INFO    ] Checking for camera pi updates...
[2026-06-22 05:35:05,964.964 INFO    ] 200
[2026-06-22 05:35:05,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:35:06,014.014 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:35:06,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:35:06,069.069 INFO    ] No camera update needed
[2026-06-22 05:35:06,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:35:06,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:35:06,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:35:06,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:35:08,130.130 INFO    ] ================================================
[2026-06-22 05:35:08,145.145 INFO    ] Launching Daemon at Mon Jun 22 05:35:08 IST 2026
[2026-06-22 05:35:08,156.156 INFO    ] ================================================
[2026-06-22 05:35:08,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:35:08
[2026-06-22 05:35:09,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:35:09,577.577 INFO    ] Initializing speech engine...
[2026-06-22 05:35:09,586.586 INFO    ] 2026-06-22 05:35:09
[2026-06-22 05:35:09,855.855 INFO    ] 2026-06-22 05:35:09
[2026-06-22 05:35:09,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:35:10,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:35:10,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:35:10,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:35:10,290.290 INFO    ] time= 22/06/2026 05:35:10
[2026-06-22 05:35:10,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:35:10,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:35:10,463.463 INFO    ] No existing commands found in stream
[2026-06-22 05:35:15,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:35:15,478.478 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-22 05:35:17,941.941 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:35:17,943.943 INFO    ] Checking for system updates...
[2026-06-22 05:35:17,964.964 INFO    ] 200
[2026-06-22 05:35:17,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:35:18,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:35:18,020.020 INFO    ] No update needed
[2026-06-22 05:35:18,022.022 INFO    ] Checking for camera pi updates...
[2026-06-22 05:35:18,056.056 INFO    ] 200
[2026-06-22 05:35:18,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:35:18,099.099 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:35:18,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:35:18,187.187 INFO    ] No camera update needed
[2026-06-22 05:35:18,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:35:18,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:35:18,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:35:18,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:35:20,247.247 INFO    ] ================================================
[2026-06-22 05:35:20,264.264 INFO    ] Launching Daemon at Mon Jun 22 05:35:20 IST 2026
[2026-06-22 05:35:20,276.276 INFO    ] ================================================
[2026-06-22 05:35:20,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:35:20
[2026-06-22 05:35:21,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:35:21,822.822 INFO    ] Initializing speech engine...
[2026-06-22 05:35:21,830.830 INFO    ] 2026-06-22 05:35:21
[2026-06-22 05:35:22,090.090 INFO    ] 2026-06-22 05:35:22
[2026-06-22 05:35:22,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:35:22,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:35:22,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:35:22,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:35:22,575.575 INFO    ] time= 22/06/2026 05:35:22
[2026-06-22 05:35:22,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:35:22,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:35:22,731.731 INFO    ] No existing commands found in stream
[2026-06-22 05:35:27,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:35:27,747.747 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-22 05:35:30,256.256 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:35:30,259.259 INFO    ] Checking for system updates...
[2026-06-22 05:35:30,296.296 INFO    ] 200
[2026-06-22 05:35:30,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:35:30,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:35:30,354.354 INFO    ] No update needed
[2026-06-22 05:35:30,357.357 INFO    ] Checking for camera pi updates...
[2026-06-22 05:35:30,391.391 INFO    ] 200
[2026-06-22 05:35:30,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:35:30,434.434 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:35:30,632.632 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:35:30,635.635 INFO    ] No camera update needed
[2026-06-22 05:35:30,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:35:30,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:35:30,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:35:30,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:35:32,694.694 INFO    ] ================================================
[2026-06-22 05:35:32,710.710 INFO    ] Launching Daemon at Mon Jun 22 05:35:32 IST 2026
[2026-06-22 05:35:32,722.722 INFO    ] ================================================
[2026-06-22 05:35:33,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:35:33
[2026-06-22 05:35:33,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:35:34,200.200 INFO    ] Initializing speech engine...
[2026-06-22 05:35:34,217.217 INFO    ] 2026-06-22 05:35:34
[2026-06-22 05:35:34,473.473 INFO    ] 2026-06-22 05:35:34
[2026-06-22 05:35:34,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:35:34,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:35:34,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:35:34,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:35:34,843.843 INFO    ] time= 22/06/2026 05:35:34
[2026-06-22 05:35:34,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:35:34,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:35:35,009.009 INFO    ] No existing commands found in stream
[2026-06-22 05:35:40,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:35:40,042.042 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-22 05:35:44,118.118 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:35:44,119.119 INFO    ] Checking for system updates...
[2026-06-22 05:35:44,142.142 INFO    ] 200
[2026-06-22 05:35:44,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:35:44,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:35:44,178.178 INFO    ] No update needed
[2026-06-22 05:35:44,180.180 INFO    ] Checking for camera pi updates...
[2026-06-22 05:35:44,200.200 INFO    ] 200
[2026-06-22 05:35:44,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:35:44,244.244 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:35:44,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:35:44,326.326 INFO    ] No camera update needed
[2026-06-22 05:35:44,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:35:44,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:35:44,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:35:44,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:35:46,382.382 INFO    ] ================================================
[2026-06-22 05:35:46,398.398 INFO    ] Launching Daemon at Mon Jun 22 05:35:46 IST 2026
[2026-06-22 05:35:46,410.410 INFO    ] ================================================
[2026-06-22 05:35:46,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:35:46
[2026-06-22 05:35:47,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:35:47,739.739 INFO    ] Initializing speech engine...
[2026-06-22 05:35:47,745.745 INFO    ] 2026-06-22 05:35:47
[2026-06-22 05:35:48,046.046 INFO    ] 2026-06-22 05:35:48
[2026-06-22 05:35:48,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:35:48,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:35:48,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:35:48,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:35:48,403.403 INFO    ] time= 22/06/2026 05:35:48
[2026-06-22 05:35:48,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:35:48,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:35:48,485.485 INFO    ] No existing commands found in stream
[2026-06-22 05:35:53,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:35:53,499.499 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-22 05:35:54,216.216 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:35:54,217.217 INFO    ] Checking for system updates...
[2026-06-22 05:35:54,240.240 INFO    ] 200
[2026-06-22 05:35:54,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:35:54,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:35:54,272.272 INFO    ] No update needed
[2026-06-22 05:35:54,274.274 INFO    ] Checking for camera pi updates...
[2026-06-22 05:35:54,301.301 INFO    ] 200
[2026-06-22 05:35:54,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:35:54,344.344 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:35:54,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:35:54,429.429 INFO    ] No camera update needed
[2026-06-22 05:35:54,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:35:54,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:35:54,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:35:54,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:35:56,483.483 INFO    ] ================================================
[2026-06-22 05:35:56,499.499 INFO    ] Launching Daemon at Mon Jun 22 05:35:56 IST 2026
[2026-06-22 05:35:56,511.511 INFO    ] ================================================
[2026-06-22 05:35:57,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:35:57
[2026-06-22 05:35:57,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:35:57,917.917 INFO    ] Initializing speech engine...
[2026-06-22 05:35:57,931.931 INFO    ] 2026-06-22 05:35:57
[2026-06-22 05:35:58,204.204 INFO    ] 2026-06-22 05:35:58
[2026-06-22 05:35:58,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:35:58,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:35:58,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:35:58,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:35:58,548.548 INFO    ] time= 22/06/2026 05:35:58
[2026-06-22 05:35:58,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:35:58,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:35:58,665.665 INFO    ] No existing commands found in stream
[2026-06-22 05:36:03,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:36:03,680.680 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-22 05:36:07,184.184 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:36:07,186.186 INFO    ] Checking for system updates...
[2026-06-22 05:36:07,209.209 INFO    ] 200
[2026-06-22 05:36:07,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:36:07,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:36:07,267.267 INFO    ] No update needed
[2026-06-22 05:36:07,270.270 INFO    ] Checking for camera pi updates...
[2026-06-22 05:36:07,303.303 INFO    ] 200
[2026-06-22 05:36:07,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:36:07,347.347 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:36:07,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:36:07,429.429 INFO    ] No camera update needed
[2026-06-22 05:36:07,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:36:07,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:36:07,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:36:07,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:36:09,484.484 INFO    ] ================================================
[2026-06-22 05:36:09,500.500 INFO    ] Launching Daemon at Mon Jun 22 05:36:09 IST 2026
[2026-06-22 05:36:09,511.511 INFO    ] ================================================
[2026-06-22 05:36:10,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:36:10
[2026-06-22 05:36:10,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:36:10,866.866 INFO    ] Initializing speech engine...
[2026-06-22 05:36:10,875.875 INFO    ] 2026-06-22 05:36:10
[2026-06-22 05:36:11,121.121 INFO    ] 2026-06-22 05:36:11
[2026-06-22 05:36:11,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:36:11,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:36:11,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:36:11,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:36:11,495.495 INFO    ] time= 22/06/2026 05:36:11
[2026-06-22 05:36:11,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:36:11,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:36:11,676.676 INFO    ] No existing commands found in stream
[2026-06-22 05:36:16,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:36:16,705.705 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-22 05:36:19,381.381 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:36:19,383.383 INFO    ] Checking for system updates...
[2026-06-22 05:36:19,419.419 INFO    ] 200
[2026-06-22 05:36:19,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:36:19,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:36:19,483.483 INFO    ] No update needed
[2026-06-22 05:36:19,485.485 INFO    ] Checking for camera pi updates...
[2026-06-22 05:36:19,519.519 INFO    ] 200
[2026-06-22 05:36:19,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:36:19,561.561 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:36:19,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:36:19,660.660 INFO    ] No camera update needed
[2026-06-22 05:36:19,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:36:19,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:36:19,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:36:19,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:36:21,714.714 INFO    ] ================================================
[2026-06-22 05:36:21,730.730 INFO    ] Launching Daemon at Mon Jun 22 05:36:21 IST 2026
[2026-06-22 05:36:21,741.741 INFO    ] ================================================
[2026-06-22 05:36:22,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:36:22
[2026-06-22 05:36:22,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:36:23,253.253 INFO    ] Initializing speech engine...
[2026-06-22 05:36:23,268.268 INFO    ] 2026-06-22 05:36:23
[2026-06-22 05:36:23,548.548 INFO    ] 2026-06-22 05:36:23
[2026-06-22 05:36:23,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:36:23,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:36:23,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:36:23,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:36:24,007.007 INFO    ] time= 22/06/2026 05:36:23
[2026-06-22 05:36:24,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:36:24,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:36:24,149.149 INFO    ] No existing commands found in stream
[2026-06-22 05:36:29,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:36:29,165.165 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-22 05:36:32,464.464 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:36:32,468.468 INFO    ] Checking for system updates...
[2026-06-22 05:36:32,510.510 INFO    ] 200
[2026-06-22 05:36:32,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:36:32,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:36:32,573.573 INFO    ] No update needed
[2026-06-22 05:36:32,575.575 INFO    ] Checking for camera pi updates...
[2026-06-22 05:36:32,611.611 INFO    ] 200
[2026-06-22 05:36:32,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:36:32,659.659 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:36:32,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:36:32,719.719 INFO    ] No camera update needed
[2026-06-22 05:36:32,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:36:32,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:36:32,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:36:32,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:36:34,776.776 INFO    ] ================================================
[2026-06-22 05:36:34,792.792 INFO    ] Launching Daemon at Mon Jun 22 05:36:34 IST 2026
[2026-06-22 05:36:34,803.803 INFO    ] ================================================
[2026-06-22 05:36:35,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:36:35
[2026-06-22 05:36:35,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:36:36,111.111 INFO    ] Initializing speech engine...
[2026-06-22 05:36:36,118.118 INFO    ] 2026-06-22 05:36:36
[2026-06-22 05:36:36,391.391 INFO    ] 2026-06-22 05:36:36
[2026-06-22 05:36:36,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:36:36,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:36:36,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:36:36,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:36:36,770.770 INFO    ] time= 22/06/2026 05:36:36
[2026-06-22 05:36:36,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:36:36,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:36:36,944.944 INFO    ] No existing commands found in stream
[2026-06-22 05:36:41,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:36:41,978.978 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-22 05:36:43,614.614 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:36:43,616.616 INFO    ] Checking for system updates...
[2026-06-22 05:36:43,653.653 INFO    ] 200
[2026-06-22 05:36:43,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:36:43,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:36:43,714.714 INFO    ] No update needed
[2026-06-22 05:36:43,717.717 INFO    ] Checking for camera pi updates...
[2026-06-22 05:36:43,752.752 INFO    ] 200
[2026-06-22 05:36:43,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:36:43,798.798 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:36:43,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:36:43,902.902 INFO    ] No camera update needed
[2026-06-22 05:36:43,905.905 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:36:43,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:36:43,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:36:43,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:36:45,963.963 INFO    ] ================================================
[2026-06-22 05:36:45,979.979 INFO    ] Launching Daemon at Mon Jun 22 05:36:45 IST 2026
[2026-06-22 05:36:45,991.991 INFO    ] ================================================
[2026-06-22 05:36:46,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:36:46
[2026-06-22 05:36:47,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:36:47,527.527 INFO    ] Initializing speech engine...
[2026-06-22 05:36:47,538.538 INFO    ] 2026-06-22 05:36:47
[2026-06-22 05:36:47,818.818 INFO    ] 2026-06-22 05:36:47
[2026-06-22 05:36:47,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:36:48,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:36:48,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:36:48,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:36:48,276.276 INFO    ] time= 22/06/2026 05:36:48
[2026-06-22 05:36:48,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:36:48,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:36:48,418.418 INFO    ] No existing commands found in stream
[2026-06-22 05:36:53,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:36:53,434.434 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-22 05:36:54,779.779 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:36:54,782.782 INFO    ] Checking for system updates...
[2026-06-22 05:36:54,824.824 INFO    ] 200
[2026-06-22 05:36:54,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:36:54,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:36:54,885.885 INFO    ] No update needed
[2026-06-22 05:36:54,888.888 INFO    ] Checking for camera pi updates...
[2026-06-22 05:36:54,923.923 INFO    ] 200
[2026-06-22 05:36:54,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:36:54,973.973 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:36:55,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:36:55,059.059 INFO    ] No camera update needed
[2026-06-22 05:36:55,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:36:55,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:36:55,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:36:55,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:36:57,119.119 INFO    ] ================================================
[2026-06-22 05:36:57,134.134 INFO    ] Launching Daemon at Mon Jun 22 05:36:57 IST 2026
[2026-06-22 05:36:57,146.146 INFO    ] ================================================
[2026-06-22 05:36:57,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:36:57
[2026-06-22 05:36:58,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:36:58,669.669 INFO    ] Initializing speech engine...
[2026-06-22 05:36:58,682.682 INFO    ] 2026-06-22 05:36:58
[2026-06-22 05:36:58,993.993 INFO    ] 2026-06-22 05:36:58
[2026-06-22 05:36:59,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:36:59,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:36:59,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:36:59,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:36:59,502.502 INFO    ] time= 22/06/2026 05:36:59
[2026-06-22 05:36:59,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:36:59,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:36:59,656.656 INFO    ] No existing commands found in stream
[2026-06-22 05:37:04,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:37:04,675.675 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-22 05:37:05,823.823 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:37:05,827.827 INFO    ] Checking for system updates...
[2026-06-22 05:37:05,865.865 INFO    ] 200
[2026-06-22 05:37:05,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:37:05,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:37:05,926.926 INFO    ] No update needed
[2026-06-22 05:37:05,929.929 INFO    ] Checking for camera pi updates...
[2026-06-22 05:37:05,970.970 INFO    ] 200
[2026-06-22 05:37:05,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:37:06,015.015 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:37:06,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:37:06,080.080 INFO    ] No camera update needed
[2026-06-22 05:37:06,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:37:06,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:37:06,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:37:06,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:37:08,140.140 INFO    ] ================================================
[2026-06-22 05:37:08,156.156 INFO    ] Launching Daemon at Mon Jun 22 05:37:08 IST 2026
[2026-06-22 05:37:08,167.167 INFO    ] ================================================
[2026-06-22 05:37:08,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:37:08
[2026-06-22 05:37:09,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:37:09,707.707 INFO    ] Initializing speech engine...
[2026-06-22 05:37:09,720.720 INFO    ] 2026-06-22 05:37:09
[2026-06-22 05:37:10,002.002 INFO    ] 2026-06-22 05:37:09
[2026-06-22 05:37:10,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:37:10,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:37:10,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:37:10,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:37:10,453.453 INFO    ] time= 22/06/2026 05:37:10
[2026-06-22 05:37:10,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:37:10,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:37:10,603.603 INFO    ] No existing commands found in stream
[2026-06-22 05:37:15,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:37:15,619.619 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-22 05:37:19,588.588 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:37:19,590.590 INFO    ] Checking for system updates...
[2026-06-22 05:37:19,611.611 INFO    ] 200
[2026-06-22 05:37:19,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:37:19,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:37:19,646.646 INFO    ] No update needed
[2026-06-22 05:37:19,647.647 INFO    ] Checking for camera pi updates...
[2026-06-22 05:37:19,680.680 INFO    ] 200
[2026-06-22 05:37:19,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:37:19,726.726 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:37:19,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:37:19,806.806 INFO    ] No camera update needed
[2026-06-22 05:37:19,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:37:19,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:37:19,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:37:19,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:37:21,867.867 INFO    ] ================================================
[2026-06-22 05:37:21,883.883 INFO    ] Launching Daemon at Mon Jun 22 05:37:21 IST 2026
[2026-06-22 05:37:21,894.894 INFO    ] ================================================
[2026-06-22 05:37:22,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:37:22
[2026-06-22 05:37:22,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:37:23,235.235 INFO    ] Initializing speech engine...
[2026-06-22 05:37:23,241.241 INFO    ] 2026-06-22 05:37:23
[2026-06-22 05:37:23,499.499 INFO    ] 2026-06-22 05:37:23
[2026-06-22 05:37:23,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:37:23,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:37:23,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:37:23,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:37:23,850.850 INFO    ] time= 22/06/2026 05:37:23
[2026-06-22 05:37:23,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:37:23,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:37:23,928.928 INFO    ] No existing commands found in stream
[2026-06-22 05:37:28,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:37:28,943.943 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-22 05:37:31,217.217 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:37:31,220.220 INFO    ] Checking for system updates...
[2026-06-22 05:37:31,257.257 INFO    ] 200
[2026-06-22 05:37:31,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:37:31,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:37:31,322.322 INFO    ] No update needed
[2026-06-22 05:37:31,325.325 INFO    ] Checking for camera pi updates...
[2026-06-22 05:37:31,361.361 INFO    ] 200
[2026-06-22 05:37:31,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:37:31,406.406 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:37:31,472.472 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:37:31,475.475 INFO    ] No camera update needed
[2026-06-22 05:37:31,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:37:31,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:37:31,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:37:31,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:37:33,537.537 INFO    ] ================================================
[2026-06-22 05:37:33,552.552 INFO    ] Launching Daemon at Mon Jun 22 05:37:33 IST 2026
[2026-06-22 05:37:33,564.564 INFO    ] ================================================
[2026-06-22 05:37:34,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:37:34
[2026-06-22 05:37:34,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:37:34,973.973 INFO    ] Initializing speech engine...
[2026-06-22 05:37:34,988.988 INFO    ] 2026-06-22 05:37:34
[2026-06-22 05:37:35,270.270 INFO    ] 2026-06-22 05:37:35
[2026-06-22 05:37:35,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:37:35,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:37:35,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:37:35,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:37:35,618.618 INFO    ] time= 22/06/2026 05:37:35
[2026-06-22 05:37:35,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:37:35,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:37:35,695.695 INFO    ] No existing commands found in stream
[2026-06-22 05:37:40,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:37:40,707.707 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-22 05:37:45,052.052 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:37:45,054.054 INFO    ] Checking for system updates...
[2026-06-22 05:37:45,090.090 INFO    ] 200
[2026-06-22 05:37:45,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:37:45,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:37:45,149.149 INFO    ] No update needed
[2026-06-22 05:37:45,151.151 INFO    ] Checking for camera pi updates...
[2026-06-22 05:37:45,186.186 INFO    ] 200
[2026-06-22 05:37:45,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:37:45,228.228 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:37:45,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:37:45,335.335 INFO    ] No camera update needed
[2026-06-22 05:37:45,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:37:45,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:37:45,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:37:45,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:37:47,390.390 INFO    ] ================================================
[2026-06-22 05:37:47,406.406 INFO    ] Launching Daemon at Mon Jun 22 05:37:47 IST 2026
[2026-06-22 05:37:47,418.418 INFO    ] ================================================
[2026-06-22 05:37:47,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:37:47
[2026-06-22 05:37:48,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:37:48,749.749 INFO    ] Initializing speech engine...
[2026-06-22 05:37:48,762.762 INFO    ] 2026-06-22 05:37:48
[2026-06-22 05:37:49,047.047 INFO    ] 2026-06-22 05:37:49
[2026-06-22 05:37:49,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:37:49,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:37:49,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:37:49,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:37:49,419.419 INFO    ] time= 22/06/2026 05:37:49
[2026-06-22 05:37:49,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:37:49,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:37:49,543.543 INFO    ] No existing commands found in stream
[2026-06-22 05:37:54,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:37:54,556.556 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-22 05:37:54,931.931 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:37:54,934.934 INFO    ] Checking for system updates...
[2026-06-22 05:37:54,970.970 INFO    ] 200
[2026-06-22 05:37:54,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:37:55,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:37:55,028.028 INFO    ] No update needed
[2026-06-22 05:37:55,031.031 INFO    ] Checking for camera pi updates...
[2026-06-22 05:37:55,065.065 INFO    ] 200
[2026-06-22 05:37:55,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:37:55,109.109 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:37:55,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:37:55,196.196 INFO    ] No camera update needed
[2026-06-22 05:37:55,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:37:55,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:37:55,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:37:55,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:37:57,251.251 INFO    ] ================================================
[2026-06-22 05:37:57,268.268 INFO    ] Launching Daemon at Mon Jun 22 05:37:57 IST 2026
[2026-06-22 05:37:57,281.281 INFO    ] ================================================
[2026-06-22 05:37:57,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:37:57
[2026-06-22 05:37:58,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:37:58,693.693 INFO    ] Initializing speech engine...
[2026-06-22 05:37:58,709.709 INFO    ] 2026-06-22 05:37:58
[2026-06-22 05:37:58,991.991 INFO    ] 2026-06-22 05:37:58
[2026-06-22 05:37:59,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:37:59,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:37:59,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:37:59,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:37:59,344.344 INFO    ] time= 22/06/2026 05:37:59
[2026-06-22 05:37:59,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:37:59,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:37:59,426.426 INFO    ] No existing commands found in stream
[2026-06-22 05:38:04,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:38:04,441.441 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-22 05:38:07,569.569 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:38:07,571.571 INFO    ] Checking for system updates...
[2026-06-22 05:38:07,603.603 INFO    ] 200
[2026-06-22 05:38:07,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:38:07,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:38:07,661.661 INFO    ] No update needed
[2026-06-22 05:38:07,663.663 INFO    ] Checking for camera pi updates...
[2026-06-22 05:38:07,697.697 INFO    ] 200
[2026-06-22 05:38:07,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:38:07,740.740 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:38:07,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:38:07,824.824 INFO    ] No camera update needed
[2026-06-22 05:38:07,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:38:07,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:38:07,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:38:07,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:38:09,880.880 INFO    ] ================================================
[2026-06-22 05:38:09,896.896 INFO    ] Launching Daemon at Mon Jun 22 05:38:09 IST 2026
[2026-06-22 05:38:09,907.907 INFO    ] ================================================
[2026-06-22 05:38:10,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:38:10
[2026-06-22 05:38:11,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:38:11,344.344 INFO    ] Initializing speech engine...
[2026-06-22 05:38:11,353.353 INFO    ] 2026-06-22 05:38:11
[2026-06-22 05:38:11,602.602 INFO    ] 2026-06-22 05:38:11
[2026-06-22 05:38:11,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:38:11,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:38:11,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:38:12,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:38:12,065.065 INFO    ] time= 22/06/2026 05:38:12
[2026-06-22 05:38:12,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:38:12,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:38:12,302.302 INFO    ] No existing commands found in stream
[2026-06-22 05:38:17,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:38:17,327.327 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-22 05:38:18,771.771 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:38:18,773.773 INFO    ] Checking for system updates...
[2026-06-22 05:38:18,793.793 INFO    ] 200
[2026-06-22 05:38:18,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:38:18,825.825 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:38:18,826.826 INFO    ] No update needed
[2026-06-22 05:38:18,828.828 INFO    ] Checking for camera pi updates...
[2026-06-22 05:38:18,847.847 INFO    ] 200
[2026-06-22 05:38:18,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:38:18,872.872 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:38:18,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:38:18,962.962 INFO    ] No camera update needed
[2026-06-22 05:38:18,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:38:18,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:38:18,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:38:18,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:38:21,019.019 INFO    ] ================================================
[2026-06-22 05:38:21,035.035 INFO    ] Launching Daemon at Mon Jun 22 05:38:21 IST 2026
[2026-06-22 05:38:21,046.046 INFO    ] ================================================
[2026-06-22 05:38:21,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:38:21
[2026-06-22 05:38:22,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:38:22,602.602 INFO    ] Initializing speech engine...
[2026-06-22 05:38:22,615.615 INFO    ] 2026-06-22 05:38:22
[2026-06-22 05:38:22,878.878 INFO    ] 2026-06-22 05:38:22
[2026-06-22 05:38:22,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:38:23,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:38:23,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:38:23,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:38:23,354.354 INFO    ] time= 22/06/2026 05:38:23
[2026-06-22 05:38:23,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:38:23,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:38:23,531.531 INFO    ] No existing commands found in stream
[2026-06-22 05:38:28,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:38:28,548.548 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-22 05:38:30,105.105 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:38:30,106.106 INFO    ] Checking for system updates...
[2026-06-22 05:38:30,127.127 INFO    ] 200
[2026-06-22 05:38:30,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:38:30,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:38:30,161.161 INFO    ] No update needed
[2026-06-22 05:38:30,163.163 INFO    ] Checking for camera pi updates...
[2026-06-22 05:38:30,184.184 INFO    ] 200
[2026-06-22 05:38:30,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:38:30,229.229 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:38:30,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:38:30,311.311 INFO    ] No camera update needed
[2026-06-22 05:38:30,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:38:30,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:38:30,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:38:30,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:38:32,369.369 INFO    ] ================================================
[2026-06-22 05:38:32,385.385 INFO    ] Launching Daemon at Mon Jun 22 05:38:32 IST 2026
[2026-06-22 05:38:32,397.397 INFO    ] ================================================
[2026-06-22 05:38:33,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:38:33
[2026-06-22 05:38:33,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:38:33,850.850 INFO    ] Initializing speech engine...
[2026-06-22 05:38:33,873.873 INFO    ] 2026-06-22 05:38:33
[2026-06-22 05:38:34,128.128 INFO    ] 2026-06-22 05:38:34
[2026-06-22 05:38:34,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:38:34,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:38:34,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:38:34,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:38:34,483.483 INFO    ] time= 22/06/2026 05:38:34
[2026-06-22 05:38:34,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:38:34,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:38:34,580.580 INFO    ] No existing commands found in stream
[2026-06-22 05:38:39,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:38:39,596.596 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-22 05:38:40,141.141 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:38:40,143.143 INFO    ] Checking for system updates...
[2026-06-22 05:38:40,163.163 INFO    ] 200
[2026-06-22 05:38:40,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:38:40,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:38:40,224.224 INFO    ] No update needed
[2026-06-22 05:38:40,226.226 INFO    ] Checking for camera pi updates...
[2026-06-22 05:38:40,261.261 INFO    ] 200
[2026-06-22 05:38:40,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:38:40,304.304 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:38:40,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:38:40,401.401 INFO    ] No camera update needed
[2026-06-22 05:38:40,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:38:40,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:38:40,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:38:40,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:38:42,459.459 INFO    ] ================================================
[2026-06-22 05:38:42,474.474 INFO    ] Launching Daemon at Mon Jun 22 05:38:42 IST 2026
[2026-06-22 05:38:42,485.485 INFO    ] ================================================
[2026-06-22 05:38:43,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:38:43
[2026-06-22 05:38:43,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:38:43,835.835 INFO    ] Initializing speech engine...
[2026-06-22 05:38:43,844.844 INFO    ] 2026-06-22 05:38:43
[2026-06-22 05:38:44,106.106 INFO    ] 2026-06-22 05:38:44
[2026-06-22 05:38:44,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:38:44,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:38:44,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:38:44,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:38:44,545.545 INFO    ] time= 22/06/2026 05:38:44
[2026-06-22 05:38:44,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:38:44,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:38:44,707.707 INFO    ] No existing commands found in stream
[2026-06-22 05:38:49,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:38:49,721.721 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-22 05:38:51,300.300 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:38:51,303.303 INFO    ] Checking for system updates...
[2026-06-22 05:38:51,339.339 INFO    ] 200
[2026-06-22 05:38:51,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:38:51,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:38:51,397.397 INFO    ] No update needed
[2026-06-22 05:38:51,399.399 INFO    ] Checking for camera pi updates...
[2026-06-22 05:38:51,436.436 INFO    ] 200
[2026-06-22 05:38:51,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:38:51,478.478 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:38:51,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:38:51,539.539 INFO    ] No camera update needed
[2026-06-22 05:38:51,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:38:51,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:38:51,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:38:51,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:38:53,594.594 INFO    ] ================================================
[2026-06-22 05:38:53,608.608 INFO    ] Launching Daemon at Mon Jun 22 05:38:53 IST 2026
[2026-06-22 05:38:53,619.619 INFO    ] ================================================
[2026-06-22 05:38:54,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:38:54
[2026-06-22 05:38:54,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:38:55,072.072 INFO    ] Initializing speech engine...
[2026-06-22 05:38:55,081.081 INFO    ] 2026-06-22 05:38:55
[2026-06-22 05:38:55,331.331 INFO    ] 2026-06-22 05:38:55
[2026-06-22 05:38:55,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:38:55,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:38:55,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:38:55,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:38:55,665.665 INFO    ] time= 22/06/2026 05:38:55
[2026-06-22 05:38:55,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:38:55,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:38:55,775.775 INFO    ] No existing commands found in stream
[2026-06-22 05:39:00,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:39:00,790.790 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-22 05:39:04,846.846 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:39:04,849.849 INFO    ] Checking for system updates...
[2026-06-22 05:39:04,885.885 INFO    ] 200
[2026-06-22 05:39:04,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:39:04,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:39:04,944.944 INFO    ] No update needed
[2026-06-22 05:39:04,947.947 INFO    ] Checking for camera pi updates...
[2026-06-22 05:39:04,986.986 INFO    ] 200
[2026-06-22 05:39:04,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:39:05,029.029 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:39:05,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:39:05,110.110 INFO    ] No camera update needed
[2026-06-22 05:39:05,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:39:05,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:39:05,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:39:05,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:39:07,170.170 INFO    ] ================================================
[2026-06-22 05:39:07,186.186 INFO    ] Launching Daemon at Mon Jun 22 05:39:07 IST 2026
[2026-06-22 05:39:07,196.196 INFO    ] ================================================
[2026-06-22 05:39:07,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:39:07
[2026-06-22 05:39:08,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:39:08,599.599 INFO    ] Initializing speech engine...
[2026-06-22 05:39:08,607.607 INFO    ] 2026-06-22 05:39:08
[2026-06-22 05:39:08,897.897 INFO    ] 2026-06-22 05:39:08
[2026-06-22 05:39:08,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:39:09,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:39:09,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:39:09,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:39:09,268.268 INFO    ] time= 22/06/2026 05:39:09
[2026-06-22 05:39:09,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:39:09,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:39:09,388.388 INFO    ] No existing commands found in stream
[2026-06-22 05:39:14,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:39:14,403.403 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-22 05:39:15,721.721 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:39:15,723.723 INFO    ] Checking for system updates...
[2026-06-22 05:39:15,760.760 INFO    ] 200
[2026-06-22 05:39:15,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:39:15,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:39:15,819.819 INFO    ] No update needed
[2026-06-22 05:39:15,821.821 INFO    ] Checking for camera pi updates...
[2026-06-22 05:39:15,856.856 INFO    ] 200
[2026-06-22 05:39:15,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:39:15,901.901 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:39:15,993.993 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:39:15,996.996 INFO    ] No camera update needed
[2026-06-22 05:39:15,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:39:16,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:39:16,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:39:16,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:39:18,054.054 INFO    ] ================================================
[2026-06-22 05:39:18,069.069 INFO    ] Launching Daemon at Mon Jun 22 05:39:18 IST 2026
[2026-06-22 05:39:18,080.080 INFO    ] ================================================
[2026-06-22 05:39:18,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:39:18
[2026-06-22 05:39:19,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:39:19,407.407 INFO    ] Initializing speech engine...
[2026-06-22 05:39:19,420.420 INFO    ] 2026-06-22 05:39:19
[2026-06-22 05:39:19,669.669 INFO    ] 2026-06-22 05:39:19
[2026-06-22 05:39:19,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:39:20,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:39:21,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:39:21,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:39:21,123.123 INFO    ] time= 22/06/2026 05:39:21
[2026-06-22 05:39:21,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:39:21,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:39:21,184.184 INFO    ] No existing commands found in stream
[2026-06-22 05:39:26,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:39:26,201.201 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-22 05:39:30,155.155 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:39:30,157.157 INFO    ] Checking for system updates...
[2026-06-22 05:39:30,193.193 INFO    ] 200
[2026-06-22 05:39:30,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:39:30,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:39:30,250.250 INFO    ] No update needed
[2026-06-22 05:39:30,253.253 INFO    ] Checking for camera pi updates...
[2026-06-22 05:39:30,286.286 INFO    ] 200
[2026-06-22 05:39:30,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:39:30,331.331 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:39:30,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:39:30,422.422 INFO    ] No camera update needed
[2026-06-22 05:39:30,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:39:30,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:39:30,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:39:30,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:39:32,483.483 INFO    ] ================================================
[2026-06-22 05:39:32,500.500 INFO    ] Launching Daemon at Mon Jun 22 05:39:32 IST 2026
[2026-06-22 05:39:32,511.511 INFO    ] ================================================
[2026-06-22 05:39:33,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:39:33
[2026-06-22 05:39:33,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:39:33,998.998 INFO    ] Initializing speech engine...
[2026-06-22 05:39:34,005.005 INFO    ] 2026-06-22 05:39:33
[2026-06-22 05:39:34,265.265 INFO    ] 2026-06-22 05:39:34
[2026-06-22 05:39:34,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:39:34,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:39:34,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:39:34,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:39:34,645.645 INFO    ] time= 22/06/2026 05:39:34
[2026-06-22 05:39:34,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:39:34,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:39:34,749.749 INFO    ] No existing commands found in stream
[2026-06-22 05:39:39,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:39:39,764.764 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-22 05:39:41,116.116 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:39:41,119.119 INFO    ] Checking for system updates...
[2026-06-22 05:39:41,156.156 INFO    ] 200
[2026-06-22 05:39:41,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:39:41,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:39:41,213.213 INFO    ] No update needed
[2026-06-22 05:39:41,216.216 INFO    ] Checking for camera pi updates...
[2026-06-22 05:39:41,250.250 INFO    ] 200
[2026-06-22 05:39:41,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:39:41,307.307 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:39:41,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:39:41,512.512 INFO    ] No camera update needed
[2026-06-22 05:39:41,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:39:41,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:39:41,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:39:41,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:39:43,569.569 INFO    ] ================================================
[2026-06-22 05:39:43,584.584 INFO    ] Launching Daemon at Mon Jun 22 05:39:43 IST 2026
[2026-06-22 05:39:43,595.595 INFO    ] ================================================
[2026-06-22 05:39:44,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:39:44
[2026-06-22 05:39:44,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:39:44,945.945 INFO    ] Initializing speech engine...
[2026-06-22 05:39:44,958.958 INFO    ] 2026-06-22 05:39:44
[2026-06-22 05:39:45,219.219 INFO    ] 2026-06-22 05:39:45
[2026-06-22 05:39:45,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:39:45,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:39:45,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:39:45,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:39:45,584.584 INFO    ] time= 22/06/2026 05:39:45
[2026-06-22 05:39:45,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:39:45,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:39:45,706.706 INFO    ] No existing commands found in stream
[2026-06-22 05:39:50,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:39:50,724.724 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-22 05:39:52,063.063 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:39:52,066.066 INFO    ] Checking for system updates...
[2026-06-22 05:39:52,102.102 INFO    ] 200
[2026-06-22 05:39:52,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:39:52,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:39:52,161.161 INFO    ] No update needed
[2026-06-22 05:39:52,164.164 INFO    ] Checking for camera pi updates...
[2026-06-22 05:39:52,199.199 INFO    ] 200
[2026-06-22 05:39:52,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:39:52,246.246 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:39:52,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:39:52,319.319 INFO    ] No camera update needed
[2026-06-22 05:39:52,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:39:52,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:39:52,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:39:52,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:39:54,377.377 INFO    ] ================================================
[2026-06-22 05:39:54,392.392 INFO    ] Launching Daemon at Mon Jun 22 05:39:54 IST 2026
[2026-06-22 05:39:54,402.402 INFO    ] ================================================
[2026-06-22 05:39:55,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:39:55
[2026-06-22 05:39:55,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:39:55,859.859 INFO    ] Initializing speech engine...
[2026-06-22 05:39:55,866.866 INFO    ] 2026-06-22 05:39:55
[2026-06-22 05:39:56,153.153 INFO    ] 2026-06-22 05:39:56
[2026-06-22 05:39:56,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:39:56,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:39:56,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:39:56,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:39:56,645.645 INFO    ] time= 22/06/2026 05:39:56
[2026-06-22 05:39:56,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:39:56,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:39:56,767.767 INFO    ] No existing commands found in stream
[2026-06-22 05:40:01,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:40:01,782.782 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-22 05:40:07,664.664 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:40:07,667.667 INFO    ] Checking for system updates...
[2026-06-22 05:40:07,704.704 INFO    ] 200
[2026-06-22 05:40:07,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:40:07,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:40:07,763.763 INFO    ] No update needed
[2026-06-22 05:40:07,766.766 INFO    ] Checking for camera pi updates...
[2026-06-22 05:40:07,800.800 INFO    ] 200
[2026-06-22 05:40:07,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:40:07,848.848 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:40:07,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:40:07,907.907 INFO    ] No camera update needed
[2026-06-22 05:40:07,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:40:07,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:40:07,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:40:07,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:40:09,964.964 INFO    ] ================================================
[2026-06-22 05:40:09,980.980 INFO    ] Launching Daemon at Mon Jun 22 05:40:09 IST 2026
[2026-06-22 05:40:10,991.991 INFO    ] ================================================
[2026-06-22 05:40:10,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:40:10
[2026-06-22 05:40:11,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:40:11,405.405 INFO    ] Initializing speech engine...
[2026-06-22 05:40:11,415.415 INFO    ] 2026-06-22 05:40:11
[2026-06-22 05:40:11,703.703 INFO    ] 2026-06-22 05:40:11
[2026-06-22 05:40:11,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:40:11,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:40:11,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:40:12,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:40:12,083.083 INFO    ] time= 22/06/2026 05:40:12
[2026-06-22 05:40:12,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:40:12,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:40:12,189.189 INFO    ] No existing commands found in stream
[2026-06-22 05:40:17,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:40:17,218.218 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-22 05:40:19,023.023 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:40:19,025.025 INFO    ] Checking for system updates...
[2026-06-22 05:40:19,046.046 INFO    ] 200
[2026-06-22 05:40:19,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:40:19,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:40:19,097.097 INFO    ] No update needed
[2026-06-22 05:40:19,100.100 INFO    ] Checking for camera pi updates...
[2026-06-22 05:40:19,134.134 INFO    ] 200
[2026-06-22 05:40:19,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:40:19,176.176 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:40:19,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:40:19,260.260 INFO    ] No camera update needed
[2026-06-22 05:40:19,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:40:19,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:40:19,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:40:19,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:40:21,316.316 INFO    ] ================================================
[2026-06-22 05:40:21,331.331 INFO    ] Launching Daemon at Mon Jun 22 05:40:21 IST 2026
[2026-06-22 05:40:21,341.341 INFO    ] ================================================
[2026-06-22 05:40:21,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:40:21
[2026-06-22 05:40:22,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:40:22,665.665 INFO    ] Initializing speech engine...
[2026-06-22 05:40:22,680.680 INFO    ] 2026-06-22 05:40:22
[2026-06-22 05:40:22,945.945 INFO    ] 2026-06-22 05:40:22
[2026-06-22 05:40:22,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:40:23,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:40:23,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:40:23,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:40:23,319.319 INFO    ] time= 22/06/2026 05:40:23
[2026-06-22 05:40:23,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:40:23,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:40:23,487.487 INFO    ] No existing commands found in stream
[2026-06-22 05:40:28,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:40:28,526.526 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-22 05:40:29,406.406 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:40:29,409.409 INFO    ] Checking for system updates...
[2026-06-22 05:40:29,445.445 INFO    ] 200
[2026-06-22 05:40:29,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:40:29,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:40:29,506.506 INFO    ] No update needed
[2026-06-22 05:40:29,509.509 INFO    ] Checking for camera pi updates...
[2026-06-22 05:40:29,543.543 INFO    ] 200
[2026-06-22 05:40:29,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:40:29,587.587 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:40:29,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:40:29,645.645 INFO    ] No camera update needed
[2026-06-22 05:40:29,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:40:29,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:40:29,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:40:29,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:40:31,703.703 INFO    ] ================================================
[2026-06-22 05:40:31,719.719 INFO    ] Launching Daemon at Mon Jun 22 05:40:31 IST 2026
[2026-06-22 05:40:31,731.731 INFO    ] ================================================
[2026-06-22 05:40:32,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:40:32
[2026-06-22 05:40:33,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:40:33,372.372 INFO    ] Initializing speech engine...
[2026-06-22 05:40:33,382.382 INFO    ] 2026-06-22 05:40:33
[2026-06-22 05:40:33,651.651 INFO    ] 2026-06-22 05:40:33
[2026-06-22 05:40:33,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:40:33,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:40:33,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:40:34,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:40:34,147.147 INFO    ] time= 22/06/2026 05:40:34
[2026-06-22 05:40:34,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:40:34,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:40:34,355.355 INFO    ] No existing commands found in stream
[2026-06-22 05:40:39,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:40:39,376.376 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-22 05:40:42,519.519 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:40:42,521.521 INFO    ] Checking for system updates...
[2026-06-22 05:40:42,560.560 INFO    ] 200
[2026-06-22 05:40:42,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:40:42,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:40:42,617.617 INFO    ] No update needed
[2026-06-22 05:40:42,619.619 INFO    ] Checking for camera pi updates...
[2026-06-22 05:40:42,653.653 INFO    ] 200
[2026-06-22 05:40:42,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:40:42,696.696 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:40:42,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:40:42,794.794 INFO    ] No camera update needed
[2026-06-22 05:40:42,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:40:42,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:40:42,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:40:42,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:40:44,849.849 INFO    ] ================================================
[2026-06-22 05:40:44,864.864 INFO    ] Launching Daemon at Mon Jun 22 05:40:44 IST 2026
[2026-06-22 05:40:44,876.876 INFO    ] ================================================
[2026-06-22 05:40:45,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:40:45
[2026-06-22 05:40:45,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:40:46,199.199 INFO    ] Initializing speech engine...
[2026-06-22 05:40:46,222.222 INFO    ] 2026-06-22 05:40:46
[2026-06-22 05:40:46,479.479 INFO    ] 2026-06-22 05:40:46
[2026-06-22 05:40:46,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:40:46,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:40:46,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:40:46,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:40:46,860.860 INFO    ] time= 22/06/2026 05:40:46
[2026-06-22 05:40:46,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:40:46,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:40:47,026.026 INFO    ] No existing commands found in stream
[2026-06-22 05:40:52,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:40:52,054.054 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-22 05:40:55,956.956 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:40:55,958.958 INFO    ] Checking for system updates...
[2026-06-22 05:40:55,994.994 INFO    ] 200
[2026-06-22 05:40:55,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:40:56,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:40:56,056.056 INFO    ] No update needed
[2026-06-22 05:40:56,058.058 INFO    ] Checking for camera pi updates...
[2026-06-22 05:40:56,092.092 INFO    ] 200
[2026-06-22 05:40:56,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:40:56,136.136 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:40:56,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:40:56,219.219 INFO    ] No camera update needed
[2026-06-22 05:40:56,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:40:56,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:40:56,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:40:56,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:40:58,275.275 INFO    ] ================================================
[2026-06-22 05:40:58,290.290 INFO    ] Launching Daemon at Mon Jun 22 05:40:58 IST 2026
[2026-06-22 05:40:58,301.301 INFO    ] ================================================
[2026-06-22 05:40:58,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:40:58
[2026-06-22 05:40:59,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:40:59,674.674 INFO    ] Initializing speech engine...
[2026-06-22 05:40:59,683.683 INFO    ] 2026-06-22 05:40:59
[2026-06-22 05:40:59,951.951 INFO    ] 2026-06-22 05:40:59
[2026-06-22 05:40:59,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:41:00,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:41:00,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:41:00,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:41:00,297.297 INFO    ] time= 22/06/2026 05:41:00
[2026-06-22 05:41:00,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:41:00,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:41:00,376.376 INFO    ] No existing commands found in stream
[2026-06-22 05:41:05,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:41:05,392.392 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-22 05:41:08,485.485 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:41:08,486.486 INFO    ] Checking for system updates...
[2026-06-22 05:41:08,516.516 INFO    ] 200
[2026-06-22 05:41:08,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:41:08,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:41:08,575.575 INFO    ] No update needed
[2026-06-22 05:41:08,578.578 INFO    ] Checking for camera pi updates...
[2026-06-22 05:41:08,612.612 INFO    ] 200
[2026-06-22 05:41:08,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:41:08,655.655 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:41:08,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:41:08,736.736 INFO    ] No camera update needed
[2026-06-22 05:41:08,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:41:08,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:41:08,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:41:08,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:41:10,792.792 INFO    ] ================================================
[2026-06-22 05:41:10,807.807 INFO    ] Launching Daemon at Mon Jun 22 05:41:10 IST 2026
[2026-06-22 05:41:10,818.818 INFO    ] ================================================
[2026-06-22 05:41:11,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:41:11
[2026-06-22 05:41:11,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:41:12,187.187 INFO    ] Initializing speech engine...
[2026-06-22 05:41:12,197.197 INFO    ] 2026-06-22 05:41:12
[2026-06-22 05:41:12,459.459 INFO    ] 2026-06-22 05:41:12
[2026-06-22 05:41:12,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:41:12,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:41:12,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:41:12,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:41:12,918.918 INFO    ] time= 22/06/2026 05:41:12
[2026-06-22 05:41:12,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:41:13,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:41:13,061.061 INFO    ] No existing commands found in stream
[2026-06-22 05:41:18,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:41:18,077.077 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-22 05:41:21,497.497 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:41:21,499.499 INFO    ] Checking for system updates...
[2026-06-22 05:41:21,523.523 INFO    ] 200
[2026-06-22 05:41:21,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:41:21,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:41:21,581.581 INFO    ] No update needed
[2026-06-22 05:41:21,584.584 INFO    ] Checking for camera pi updates...
[2026-06-22 05:41:21,618.618 INFO    ] 200
[2026-06-22 05:41:21,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:41:21,662.662 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:41:21,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:41:21,785.785 INFO    ] No camera update needed
[2026-06-22 05:41:21,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:41:21,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:41:21,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:41:21,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:41:23,848.848 INFO    ] ================================================
[2026-06-22 05:41:23,863.863 INFO    ] Launching Daemon at Mon Jun 22 05:41:23 IST 2026
[2026-06-22 05:41:23,874.874 INFO    ] ================================================
[2026-06-22 05:41:24,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:41:24
[2026-06-22 05:41:24,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:41:25,184.184 INFO    ] Initializing speech engine...
[2026-06-22 05:41:25,207.207 INFO    ] 2026-06-22 05:41:25
[2026-06-22 05:41:25,462.462 INFO    ] 2026-06-22 05:41:25
[2026-06-22 05:41:25,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:41:25,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:41:25,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:41:25,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:41:25,803.803 INFO    ] time= 22/06/2026 05:41:25
[2026-06-22 05:41:25,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:41:25,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:41:25,917.917 INFO    ] No existing commands found in stream
[2026-06-22 05:41:30,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:41:30,935.935 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-22 05:41:32,325.325 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:41:32,328.328 INFO    ] Checking for system updates...
[2026-06-22 05:41:32,369.369 INFO    ] 200
[2026-06-22 05:41:32,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:41:32,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:41:32,433.433 INFO    ] No update needed
[2026-06-22 05:41:32,436.436 INFO    ] Checking for camera pi updates...
[2026-06-22 05:41:32,474.474 INFO    ] 200
[2026-06-22 05:41:32,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:41:32,524.524 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:41:32,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:41:32,600.600 INFO    ] No camera update needed
[2026-06-22 05:41:32,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:41:32,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:41:32,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:41:32,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:41:34,667.667 INFO    ] ================================================
[2026-06-22 05:41:34,681.681 INFO    ] Launching Daemon at Mon Jun 22 05:41:34 IST 2026
[2026-06-22 05:41:34,692.692 INFO    ] ================================================
[2026-06-22 05:41:35,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:41:35
[2026-06-22 05:41:35,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:41:36,011.011 INFO    ] Initializing speech engine...
[2026-06-22 05:41:36,019.019 INFO    ] 2026-06-22 05:41:36
[2026-06-22 05:41:36,295.295 INFO    ] 2026-06-22 05:41:36
[2026-06-22 05:41:36,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:41:36,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:41:36,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:41:36,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:41:36,634.634 INFO    ] time= 22/06/2026 05:41:36
[2026-06-22 05:41:36,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:41:36,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:41:36,747.747 INFO    ] No existing commands found in stream
[2026-06-22 05:41:41,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:41:41,762.762 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-22 05:41:44,263.263 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:41:44,265.265 INFO    ] Checking for system updates...
[2026-06-22 05:41:44,286.286 INFO    ] 200
[2026-06-22 05:41:44,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:41:44,319.319 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:41:44,320.320 INFO    ] No update needed
[2026-06-22 05:41:44,323.323 INFO    ] Checking for camera pi updates...
[2026-06-22 05:41:44,356.356 INFO    ] 200
[2026-06-22 05:41:44,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:41:44,400.400 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:41:44,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:41:44,597.597 INFO    ] No camera update needed
[2026-06-22 05:41:44,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:41:44,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:41:44,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:41:44,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:41:46,654.654 INFO    ] ================================================
[2026-06-22 05:41:46,669.669 INFO    ] Launching Daemon at Mon Jun 22 05:41:46 IST 2026
[2026-06-22 05:41:46,680.680 INFO    ] ================================================
[2026-06-22 05:41:47,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:41:47
[2026-06-22 05:41:47,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:41:48,033.033 INFO    ] Initializing speech engine...
[2026-06-22 05:41:48,039.039 INFO    ] 2026-06-22 05:41:48
[2026-06-22 05:41:48,335.335 INFO    ] 2026-06-22 05:41:48
[2026-06-22 05:41:48,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:41:48,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:41:48,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:41:48,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:41:48,711.711 INFO    ] time= 22/06/2026 05:41:48
[2026-06-22 05:41:48,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:41:48,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:41:48,837.837 INFO    ] No existing commands found in stream
[2026-06-22 05:41:53,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:41:53,852.852 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-22 05:41:55,765.765 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:41:55,768.768 INFO    ] Checking for system updates...
[2026-06-22 05:41:55,807.807 INFO    ] 200
[2026-06-22 05:41:55,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:41:55,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:41:55,866.866 INFO    ] No update needed
[2026-06-22 05:41:55,869.869 INFO    ] Checking for camera pi updates...
[2026-06-22 05:41:55,906.906 INFO    ] 200
[2026-06-22 05:41:55,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:41:55,953.953 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:41:56,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:41:56,051.051 INFO    ] No camera update needed
[2026-06-22 05:41:56,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:41:56,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:41:56,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:41:56,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:41:58,106.106 INFO    ] ================================================
[2026-06-22 05:41:58,121.121 INFO    ] Launching Daemon at Mon Jun 22 05:41:58 IST 2026
[2026-06-22 05:41:58,132.132 INFO    ] ================================================
[2026-06-22 05:41:58,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:41:58
[2026-06-22 05:41:59,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:41:59,641.641 INFO    ] Initializing speech engine...
[2026-06-22 05:41:59,654.654 INFO    ] 2026-06-22 05:41:59
[2026-06-22 05:41:59,933.933 INFO    ] 2026-06-22 05:41:59
[2026-06-22 05:41:59,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:42:00,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:42:00,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:42:00,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:42:00,348.348 INFO    ] time= 22/06/2026 05:42:00
[2026-06-22 05:42:00,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:42:00,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:42:00,528.528 INFO    ] No existing commands found in stream
[2026-06-22 05:42:05,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:42:05,544.544 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-22 05:42:06,278.278 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:42:06,281.281 INFO    ] Checking for system updates...
[2026-06-22 05:42:06,319.319 INFO    ] 200
[2026-06-22 05:42:06,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:42:06,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:42:06,379.379 INFO    ] No update needed
[2026-06-22 05:42:06,382.382 INFO    ] Checking for camera pi updates...
[2026-06-22 05:42:06,417.417 INFO    ] 200
[2026-06-22 05:42:06,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:42:06,462.462 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:42:06,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:42:06,550.550 INFO    ] No camera update needed
[2026-06-22 05:42:06,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:42:06,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:42:06,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:42:06,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:42:08,610.610 INFO    ] ================================================
[2026-06-22 05:42:08,625.625 INFO    ] Launching Daemon at Mon Jun 22 05:42:08 IST 2026
[2026-06-22 05:42:08,636.636 INFO    ] ================================================
[2026-06-22 05:42:09,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:42:09
[2026-06-22 05:42:09,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:42:10,061.061 INFO    ] Initializing speech engine...
[2026-06-22 05:42:10,069.069 INFO    ] 2026-06-22 05:42:10
[2026-06-22 05:42:10,366.366 INFO    ] 2026-06-22 05:42:10
[2026-06-22 05:42:10,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:42:10,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:42:10,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:42:10,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:42:10,718.718 INFO    ] time= 22/06/2026 05:42:10
[2026-06-22 05:42:10,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:42:10,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:42:10,794.794 INFO    ] No existing commands found in stream
[2026-06-22 05:42:15,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:42:15,808.808 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-22 05:42:18,189.189 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:42:18,191.191 INFO    ] Checking for system updates...
[2026-06-22 05:42:18,228.228 INFO    ] 200
[2026-06-22 05:42:18,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:42:18,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:42:18,285.285 INFO    ] No update needed
[2026-06-22 05:42:18,288.288 INFO    ] Checking for camera pi updates...
[2026-06-22 05:42:18,326.326 INFO    ] 200
[2026-06-22 05:42:18,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:42:18,374.374 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:42:18,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:42:18,481.481 INFO    ] No camera update needed
[2026-06-22 05:42:18,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:42:18,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:42:18,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:42:18,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:42:20,538.538 INFO    ] ================================================
[2026-06-22 05:42:20,554.554 INFO    ] Launching Daemon at Mon Jun 22 05:42:20 IST 2026
[2026-06-22 05:42:20,565.565 INFO    ] ================================================
[2026-06-22 05:42:21,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:42:21
[2026-06-22 05:42:21,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:42:21,977.977 INFO    ] Initializing speech engine...
[2026-06-22 05:42:21,986.986 INFO    ] 2026-06-22 05:42:21
[2026-06-22 05:42:22,285.285 INFO    ] 2026-06-22 05:42:22
[2026-06-22 05:42:22,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:42:22,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:42:22,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:42:22,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:42:22,620.620 INFO    ] time= 22/06/2026 05:42:22
[2026-06-22 05:42:22,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:42:22,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:42:22,699.699 INFO    ] No existing commands found in stream
[2026-06-22 05:42:27,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:42:27,719.719 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-22 05:42:31,952.952 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:42:31,955.955 INFO    ] Checking for system updates...
[2026-06-22 05:42:32,001.001 INFO    ] 200
[2026-06-22 05:42:32,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:42:32,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:42:32,069.069 INFO    ] No update needed
[2026-06-22 05:42:32,072.072 INFO    ] Checking for camera pi updates...
[2026-06-22 05:42:32,115.115 INFO    ] 200
[2026-06-22 05:42:32,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:42:32,167.167 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:42:32,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:42:32,228.228 INFO    ] No camera update needed
[2026-06-22 05:42:32,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:42:32,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:42:32,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:42:32,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:42:34,292.292 INFO    ] ================================================
[2026-06-22 05:42:34,307.307 INFO    ] Launching Daemon at Mon Jun 22 05:42:34 IST 2026
[2026-06-22 05:42:34,318.318 INFO    ] ================================================
[2026-06-22 05:42:34,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:42:34
[2026-06-22 05:42:35,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:42:35,700.700 INFO    ] Initializing speech engine...
[2026-06-22 05:42:35,709.709 INFO    ] 2026-06-22 05:42:35
[2026-06-22 05:42:35,968.968 INFO    ] 2026-06-22 05:42:35
[2026-06-22 05:42:36,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:42:36,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:42:36,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:42:36,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:42:36,350.350 INFO    ] time= 22/06/2026 05:42:36
[2026-06-22 05:42:36,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:42:36,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:42:36,502.502 INFO    ] No existing commands found in stream
[2026-06-22 05:42:41,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:42:41,541.541 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-22 05:42:42,795.795 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:42:42,797.797 INFO    ] Checking for system updates...
[2026-06-22 05:42:42,819.819 INFO    ] 200
[2026-06-22 05:42:42,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:42:42,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:42:42,860.860 INFO    ] No update needed
[2026-06-22 05:42:42,863.863 INFO    ] Checking for camera pi updates...
[2026-06-22 05:42:42,898.898 INFO    ] 200
[2026-06-22 05:42:42,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:42:42,943.943 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:42:43,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:42:43,045.045 INFO    ] No camera update needed
[2026-06-22 05:42:43,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:42:43,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:42:43,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:42:43,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:42:45,106.106 INFO    ] ================================================
[2026-06-22 05:42:45,121.121 INFO    ] Launching Daemon at Mon Jun 22 05:42:45 IST 2026
[2026-06-22 05:42:45,132.132 INFO    ] ================================================
[2026-06-22 05:42:45,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:42:45
[2026-06-22 05:42:46,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:42:46,585.585 INFO    ] Initializing speech engine...
[2026-06-22 05:42:46,603.603 INFO    ] 2026-06-22 05:42:46
[2026-06-22 05:42:46,855.855 INFO    ] 2026-06-22 05:42:46
[2026-06-22 05:42:46,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:42:47,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:42:47,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:42:47,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:42:47,236.236 INFO    ] time= 22/06/2026 05:42:47
[2026-06-22 05:42:47,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:42:47,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:42:47,391.391 INFO    ] No existing commands found in stream
[2026-06-22 05:42:52,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:42:52,424.424 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-22 05:42:52,895.895 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:42:52,898.898 INFO    ] Checking for system updates...
[2026-06-22 05:42:52,933.933 INFO    ] 200
[2026-06-22 05:42:52,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:42:52,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:42:52,992.992 INFO    ] No update needed
[2026-06-22 05:42:52,994.994 INFO    ] Checking for camera pi updates...
[2026-06-22 05:42:53,027.027 INFO    ] 200
[2026-06-22 05:42:53,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:42:53,075.075 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:42:53,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:42:53,168.168 INFO    ] No camera update needed
[2026-06-22 05:42:53,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:42:53,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:42:53,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:42:53,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:42:55,230.230 INFO    ] ================================================
[2026-06-22 05:42:55,245.245 INFO    ] Launching Daemon at Mon Jun 22 05:42:55 IST 2026
[2026-06-22 05:42:55,256.256 INFO    ] ================================================
[2026-06-22 05:42:55,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:42:55
[2026-06-22 05:42:56,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:42:56,894.894 INFO    ] Initializing speech engine...
[2026-06-22 05:42:56,904.904 INFO    ] 2026-06-22 05:42:56
[2026-06-22 05:42:57,176.176 INFO    ] 2026-06-22 05:42:57
[2026-06-22 05:42:57,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:42:57,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:42:57,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:42:57,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:42:57,657.657 INFO    ] time= 22/06/2026 05:42:57
[2026-06-22 05:42:57,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:42:57,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:42:57,807.807 INFO    ] No existing commands found in stream
[2026-06-22 05:43:02,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:43:02,822.822 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-22 05:43:07,005.005 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:43:07,008.008 INFO    ] Checking for system updates...
[2026-06-22 05:43:07,047.047 INFO    ] 200
[2026-06-22 05:43:07,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:43:07,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:43:07,106.106 INFO    ] No update needed
[2026-06-22 05:43:07,109.109 INFO    ] Checking for camera pi updates...
[2026-06-22 05:43:07,144.144 INFO    ] 200
[2026-06-22 05:43:07,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:43:07,188.188 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:43:07,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:43:07,274.274 INFO    ] No camera update needed
[2026-06-22 05:43:07,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:43:07,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:43:07,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:43:07,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:43:09,335.335 INFO    ] ================================================
[2026-06-22 05:43:09,351.351 INFO    ] Launching Daemon at Mon Jun 22 05:43:09 IST 2026
[2026-06-22 05:43:09,362.362 INFO    ] ================================================
[2026-06-22 05:43:09,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:43:09
[2026-06-22 05:43:10,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:43:10,699.699 INFO    ] Initializing speech engine...
[2026-06-22 05:43:10,708.708 INFO    ] 2026-06-22 05:43:10
[2026-06-22 05:43:11,002.002 INFO    ] 2026-06-22 05:43:10
[2026-06-22 05:43:11,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:43:11,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:43:11,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:43:11,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:43:11,360.360 INFO    ] time= 22/06/2026 05:43:11
[2026-06-22 05:43:11,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:43:11,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:43:11,439.439 INFO    ] No existing commands found in stream
[2026-06-22 05:43:16,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:43:16,453.453 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-22 05:43:18,612.612 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:43:18,614.614 INFO    ] Checking for system updates...
[2026-06-22 05:43:18,651.651 INFO    ] 200
[2026-06-22 05:43:18,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:43:18,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:43:18,710.710 INFO    ] No update needed
[2026-06-22 05:43:18,712.712 INFO    ] Checking for camera pi updates...
[2026-06-22 05:43:18,746.746 INFO    ] 200
[2026-06-22 05:43:18,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:43:18,790.790 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:43:18,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:43:18,879.879 INFO    ] No camera update needed
[2026-06-22 05:43:18,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:43:18,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:43:18,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:43:18,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:43:20,934.934 INFO    ] ================================================
[2026-06-22 05:43:20,949.949 INFO    ] Launching Daemon at Mon Jun 22 05:43:20 IST 2026
[2026-06-22 05:43:20,960.960 INFO    ] ================================================
[2026-06-22 05:43:21,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:43:21
[2026-06-22 05:43:22,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:43:22,293.293 INFO    ] Initializing speech engine...
[2026-06-22 05:43:22,302.302 INFO    ] 2026-06-22 05:43:22
[2026-06-22 05:43:22,558.558 INFO    ] 2026-06-22 05:43:22
[2026-06-22 05:43:22,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:43:22,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:43:22,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:43:22,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:43:23,036.036 INFO    ] time= 22/06/2026 05:43:22
[2026-06-22 05:43:23,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:43:23,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:43:23,185.185 INFO    ] No existing commands found in stream
[2026-06-22 05:43:28,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:43:28,199.199 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-22 05:43:31,570.570 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:43:31,573.573 INFO    ] Checking for system updates...
[2026-06-22 05:43:31,617.617 INFO    ] 200
[2026-06-22 05:43:31,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:43:31,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:43:31,681.681 INFO    ] No update needed
[2026-06-22 05:43:31,683.683 INFO    ] Checking for camera pi updates...
[2026-06-22 05:43:31,724.724 INFO    ] 200
[2026-06-22 05:43:31,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:43:31,776.776 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:43:31,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:43:31,839.839 INFO    ] No camera update needed
[2026-06-22 05:43:31,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:43:31,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:43:31,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:43:31,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:43:33,901.901 INFO    ] ================================================
[2026-06-22 05:43:33,916.916 INFO    ] Launching Daemon at Mon Jun 22 05:43:33 IST 2026
[2026-06-22 05:43:33,927.927 INFO    ] ================================================
[2026-06-22 05:43:34,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:43:34
[2026-06-22 05:43:35,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:43:35,260.260 INFO    ] Initializing speech engine...
[2026-06-22 05:43:35,269.269 INFO    ] 2026-06-22 05:43:35
[2026-06-22 05:43:35,563.563 INFO    ] 2026-06-22 05:43:35
[2026-06-22 05:43:35,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:43:35,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:43:35,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:43:35,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:43:35,938.938 INFO    ] time= 22/06/2026 05:43:35
[2026-06-22 05:43:35,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:43:35,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:43:36,054.054 INFO    ] No existing commands found in stream
[2026-06-22 05:43:41,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:43:41,087.087 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-22 05:43:44,919.919 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:43:44,920.920 INFO    ] Checking for system updates...
[2026-06-22 05:43:44,941.941 INFO    ] 200
[2026-06-22 05:43:44,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:43:44,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:43:44,976.976 INFO    ] No update needed
[2026-06-22 05:43:44,977.977 INFO    ] Checking for camera pi updates...
[2026-06-22 05:43:44,997.997 INFO    ] 200
[2026-06-22 05:43:45,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:43:45,041.041 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:43:45,121.121 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:43:45,123.123 INFO    ] No camera update needed
[2026-06-22 05:43:45,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:43:45,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:43:45,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:43:45,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:43:47,178.178 INFO    ] ================================================
[2026-06-22 05:43:47,193.193 INFO    ] Launching Daemon at Mon Jun 22 05:43:47 IST 2026
[2026-06-22 05:43:47,203.203 INFO    ] ================================================
[2026-06-22 05:43:47,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:43:47
[2026-06-22 05:43:48,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:43:48,624.624 INFO    ] Initializing speech engine...
[2026-06-22 05:43:48,639.639 INFO    ] 2026-06-22 05:43:48
[2026-06-22 05:43:48,896.896 INFO    ] 2026-06-22 05:43:48
[2026-06-22 05:43:48,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:43:49,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:43:49,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:43:49,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:43:49,280.280 INFO    ] time= 22/06/2026 05:43:49
[2026-06-22 05:43:49,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:43:49,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:43:49,441.441 INFO    ] No existing commands found in stream
[2026-06-22 05:43:54,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:43:54,469.469 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-22 05:43:58,317.317 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:43:58,320.320 INFO    ] Checking for system updates...
[2026-06-22 05:43:58,357.357 INFO    ] 200
[2026-06-22 05:43:58,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:43:58,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:43:58,416.416 INFO    ] No update needed
[2026-06-22 05:43:58,419.419 INFO    ] Checking for camera pi updates...
[2026-06-22 05:43:58,453.453 INFO    ] 200
[2026-06-22 05:43:58,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:43:58,497.497 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:43:58,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:43:58,677.677 INFO    ] No camera update needed
[2026-06-22 05:43:58,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:43:58,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:43:58,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:43:58,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:44:00,731.731 INFO    ] ================================================
[2026-06-22 05:44:00,747.747 INFO    ] Launching Daemon at Mon Jun 22 05:44:00 IST 2026
[2026-06-22 05:44:00,757.757 INFO    ] ================================================
[2026-06-22 05:44:01,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:44:01
[2026-06-22 05:44:02,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:44:02,378.378 INFO    ] Initializing speech engine...
[2026-06-22 05:44:02,387.387 INFO    ] 2026-06-22 05:44:02
[2026-06-22 05:44:02,720.720 INFO    ] 2026-06-22 05:44:02
[2026-06-22 05:44:02,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:44:02,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:44:02,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:44:03,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:44:03,133.133 INFO    ] time= 22/06/2026 05:44:03
[2026-06-22 05:44:03,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:44:03,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:44:03,312.312 INFO    ] No existing commands found in stream
[2026-06-22 05:44:08,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:44:08,341.341 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-22 05:44:10,403.403 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:44:10,405.405 INFO    ] Checking for system updates...
[2026-06-22 05:44:10,426.426 INFO    ] 200
[2026-06-22 05:44:10,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:44:10,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:44:10,462.462 INFO    ] No update needed
[2026-06-22 05:44:10,463.463 INFO    ] Checking for camera pi updates...
[2026-06-22 05:44:10,486.486 INFO    ] 200
[2026-06-22 05:44:10,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:44:10,513.513 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:44:10,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:44:10,606.606 INFO    ] No camera update needed
[2026-06-22 05:44:10,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:44:10,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:44:10,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:44:10,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:44:12,665.665 INFO    ] ================================================
[2026-06-22 05:44:12,681.681 INFO    ] Launching Daemon at Mon Jun 22 05:44:12 IST 2026
[2026-06-22 05:44:12,693.693 INFO    ] ================================================
[2026-06-22 05:44:13,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:44:13
[2026-06-22 05:44:13,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:44:14,046.046 INFO    ] Initializing speech engine...
[2026-06-22 05:44:14,055.055 INFO    ] 2026-06-22 05:44:14
[2026-06-22 05:44:14,307.307 INFO    ] 2026-06-22 05:44:14
[2026-06-22 05:44:14,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:44:14,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:44:14,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:44:14,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:44:14,683.683 INFO    ] time= 22/06/2026 05:44:14
[2026-06-22 05:44:14,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:44:14,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:44:14,762.762 INFO    ] No existing commands found in stream
[2026-06-22 05:44:19,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:44:19,800.800 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-22 05:44:21,501.501 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:44:21,504.504 INFO    ] Checking for system updates...
[2026-06-22 05:44:21,541.541 INFO    ] 200
[2026-06-22 05:44:21,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:44:21,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:44:21,603.603 INFO    ] No update needed
[2026-06-22 05:44:21,605.605 INFO    ] Checking for camera pi updates...
[2026-06-22 05:44:21,643.643 INFO    ] 200
[2026-06-22 05:44:21,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:44:21,687.687 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:44:21,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:44:21,793.793 INFO    ] No camera update needed
[2026-06-22 05:44:21,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:44:21,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:44:21,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:44:21,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:44:23,853.853 INFO    ] ================================================
[2026-06-22 05:44:23,869.869 INFO    ] Launching Daemon at Mon Jun 22 05:44:23 IST 2026
[2026-06-22 05:44:23,880.880 INFO    ] ================================================
[2026-06-22 05:44:24,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:44:24
[2026-06-22 05:44:24,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:44:25,208.208 INFO    ] Initializing speech engine...
[2026-06-22 05:44:25,218.218 INFO    ] 2026-06-22 05:44:25
[2026-06-22 05:44:25,462.462 INFO    ] 2026-06-22 05:44:25
[2026-06-22 05:44:25,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:44:25,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:44:25,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:44:25,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:44:25,943.943 INFO    ] time= 22/06/2026 05:44:25
[2026-06-22 05:44:26,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:44:26,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:44:26,075.075 INFO    ] No existing commands found in stream
[2026-06-22 05:44:31,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:44:31,090.090 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-22 05:44:31,639.639 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:44:31,642.642 INFO    ] Checking for system updates...
[2026-06-22 05:44:31,681.681 INFO    ] 200
[2026-06-22 05:44:31,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:44:31,742.742 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:44:31,745.745 INFO    ] No update needed
[2026-06-22 05:44:31,747.747 INFO    ] Checking for camera pi updates...
[2026-06-22 05:44:31,785.785 INFO    ] 200
[2026-06-22 05:44:31,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:44:31,838.838 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:44:31,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:44:31,914.914 INFO    ] No camera update needed
[2026-06-22 05:44:31,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:44:31,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:44:31,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:44:31,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:44:33,976.976 INFO    ] ================================================
[2026-06-22 05:44:33,992.992 INFO    ] Launching Daemon at Mon Jun 22 05:44:33 IST 2026
[2026-06-22 05:44:34,004.004 INFO    ] ================================================
[2026-06-22 05:44:34,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:44:34
[2026-06-22 05:44:35,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:44:35,357.357 INFO    ] Initializing speech engine...
[2026-06-22 05:44:35,364.364 INFO    ] 2026-06-22 05:44:35
[2026-06-22 05:44:35,614.614 INFO    ] 2026-06-22 05:44:35
[2026-06-22 05:44:35,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:44:35,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:44:35,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:44:35,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:44:35,993.993 INFO    ] time= 22/06/2026 05:44:35
[2026-06-22 05:44:35,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:44:36,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:44:36,156.156 INFO    ] No existing commands found in stream
[2026-06-22 05:44:41,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:44:41,189.189 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-22 05:44:42,488.488 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:44:42,489.489 INFO    ] Checking for system updates...
[2026-06-22 05:44:42,512.512 INFO    ] 200
[2026-06-22 05:44:42,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:44:42,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:44:42,570.570 INFO    ] No update needed
[2026-06-22 05:44:42,572.572 INFO    ] Checking for camera pi updates...
[2026-06-22 05:44:42,606.606 INFO    ] 200
[2026-06-22 05:44:42,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:44:42,655.655 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:44:42,765.765 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:44:42,768.768 INFO    ] No camera update needed
[2026-06-22 05:44:42,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:44:42,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:44:42,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:44:42,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:44:44,824.824 INFO    ] ================================================
[2026-06-22 05:44:44,840.840 INFO    ] Launching Daemon at Mon Jun 22 05:44:44 IST 2026
[2026-06-22 05:44:44,852.852 INFO    ] ================================================
[2026-06-22 05:44:45,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:44:45
[2026-06-22 05:44:45,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:44:46,220.220 INFO    ] Initializing speech engine...
[2026-06-22 05:44:46,229.229 INFO    ] 2026-06-22 05:44:46
[2026-06-22 05:44:46,489.489 INFO    ] 2026-06-22 05:44:46
[2026-06-22 05:44:46,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:44:46,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:44:46,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:44:46,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:44:46,954.954 INFO    ] time= 22/06/2026 05:44:46
[2026-06-22 05:44:47,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:44:47,042.042 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:44:47,095.095 INFO    ] No existing commands found in stream
[2026-06-22 05:44:52,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:44:52,110.110 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-22 05:44:55,883.883 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:44:55,885.885 INFO    ] Checking for system updates...
[2026-06-22 05:44:55,906.906 INFO    ] 200
[2026-06-22 05:44:55,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:44:55,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:44:55,952.952 INFO    ] No update needed
[2026-06-22 05:44:55,955.955 INFO    ] Checking for camera pi updates...
[2026-06-22 05:44:55,989.989 INFO    ] 200
[2026-06-22 05:44:55,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:44:56,036.036 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:44:56,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:44:56,118.118 INFO    ] No camera update needed
[2026-06-22 05:44:56,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:44:56,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:44:56,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:44:56,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:44:58,175.175 INFO    ] ================================================
[2026-06-22 05:44:58,191.191 INFO    ] Launching Daemon at Mon Jun 22 05:44:58 IST 2026
[2026-06-22 05:44:58,203.203 INFO    ] ================================================
[2026-06-22 05:44:58,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:44:58
[2026-06-22 05:44:59,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:44:59,721.721 INFO    ] Initializing speech engine...
[2026-06-22 05:44:59,731.731 INFO    ] 2026-06-22 05:44:59
[2026-06-22 05:45:00,002.002 INFO    ] 2026-06-22 05:44:59
[2026-06-22 05:45:00,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:45:00,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:45:00,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:45:00,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:45:00,467.467 INFO    ] time= 22/06/2026 05:45:00
[2026-06-22 05:45:00,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:45:00,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:45:00,637.637 INFO    ] No existing commands found in stream
[2026-06-22 05:45:05,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:45:05,653.653 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-22 05:45:09,216.216 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:45:09,219.219 INFO    ] Checking for system updates...
[2026-06-22 05:45:09,257.257 INFO    ] 200
[2026-06-22 05:45:09,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:45:09,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:45:09,324.324 INFO    ] No update needed
[2026-06-22 05:45:09,327.327 INFO    ] Checking for camera pi updates...
[2026-06-22 05:45:09,361.361 INFO    ] 200
[2026-06-22 05:45:09,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:45:09,405.405 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:45:09,490.490 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:45:09,492.492 INFO    ] No camera update needed
[2026-06-22 05:45:09,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:45:09,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:45:09,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:45:09,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:45:11,551.551 INFO    ] ================================================
[2026-06-22 05:45:11,566.566 INFO    ] Launching Daemon at Mon Jun 22 05:45:11 IST 2026
[2026-06-22 05:45:11,577.577 INFO    ] ================================================
[2026-06-22 05:45:12,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:45:12
[2026-06-22 05:45:12,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:45:13,022.022 INFO    ] Initializing speech engine...
[2026-06-22 05:45:13,037.037 INFO    ] 2026-06-22 05:45:13
[2026-06-22 05:45:13,323.323 INFO    ] 2026-06-22 05:45:13
[2026-06-22 05:45:13,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:45:13,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:45:13,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:45:13,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:45:13,735.735 INFO    ] time= 22/06/2026 05:45:13
[2026-06-22 05:45:13,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:45:13,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:45:13,891.891 INFO    ] No existing commands found in stream
[2026-06-22 05:45:18,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:45:18,919.919 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-22 05:45:22,499.499 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:45:22,501.501 INFO    ] Checking for system updates...
[2026-06-22 05:45:22,537.537 INFO    ] 200
[2026-06-22 05:45:22,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:45:22,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:45:22,596.596 INFO    ] No update needed
[2026-06-22 05:45:22,599.599 INFO    ] Checking for camera pi updates...
[2026-06-22 05:45:22,633.633 INFO    ] 200
[2026-06-22 05:45:22,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:45:22,680.680 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:45:22,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:45:22,779.779 INFO    ] No camera update needed
[2026-06-22 05:45:22,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:45:22,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:45:22,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:45:22,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:45:24,836.836 INFO    ] ================================================
[2026-06-22 05:45:24,852.852 INFO    ] Launching Daemon at Mon Jun 22 05:45:24 IST 2026
[2026-06-22 05:45:24,862.862 INFO    ] ================================================
[2026-06-22 05:45:25,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:45:25
[2026-06-22 05:45:26,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:45:26,346.346 INFO    ] Initializing speech engine...
[2026-06-22 05:45:26,355.355 INFO    ] 2026-06-22 05:45:26
[2026-06-22 05:45:26,650.650 INFO    ] 2026-06-22 05:45:26
[2026-06-22 05:45:26,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:45:26,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:45:26,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:45:27,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:45:27,029.029 INFO    ] time= 22/06/2026 05:45:27
[2026-06-22 05:45:27,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:45:27,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:45:27,154.154 INFO    ] No existing commands found in stream
[2026-06-22 05:45:32,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:45:32,169.169 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-22 05:45:35,814.814 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:45:35,816.816 INFO    ] Checking for system updates...
[2026-06-22 05:45:35,836.836 INFO    ] 200
[2026-06-22 05:45:35,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:45:35,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:45:35,869.869 INFO    ] No update needed
[2026-06-22 05:45:35,871.871 INFO    ] Checking for camera pi updates...
[2026-06-22 05:45:35,898.898 INFO    ] 200
[2026-06-22 05:45:35,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:45:35,946.946 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:45:36,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:45:36,031.031 INFO    ] No camera update needed
[2026-06-22 05:45:36,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:45:36,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:45:36,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:45:36,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:45:38,087.087 INFO    ] ================================================
[2026-06-22 05:45:38,102.102 INFO    ] Launching Daemon at Mon Jun 22 05:45:38 IST 2026
[2026-06-22 05:45:38,113.113 INFO    ] ================================================
[2026-06-22 05:45:38,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:45:38
[2026-06-22 05:45:39,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:45:39,428.428 INFO    ] Initializing speech engine...
[2026-06-22 05:45:39,451.451 INFO    ] 2026-06-22 05:45:39
[2026-06-22 05:45:39,708.708 INFO    ] 2026-06-22 05:45:39
[2026-06-22 05:45:39,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:45:39,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:45:39,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:45:40,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:45:40,080.080 INFO    ] time= 22/06/2026 05:45:40
[2026-06-22 05:45:40,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:45:40,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:45:40,158.158 INFO    ] No existing commands found in stream
[2026-06-22 05:45:45,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:45:45,173.173 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-22 05:45:49,143.143 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:45:49,145.145 INFO    ] Checking for system updates...
[2026-06-22 05:45:49,181.181 INFO    ] 200
[2026-06-22 05:45:49,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:45:49,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:45:49,240.240 INFO    ] No update needed
[2026-06-22 05:45:49,242.242 INFO    ] Checking for camera pi updates...
[2026-06-22 05:45:49,279.279 INFO    ] 200
[2026-06-22 05:45:49,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:45:49,326.326 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:45:49,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:45:49,407.407 INFO    ] No camera update needed
[2026-06-22 05:45:49,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:45:49,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:45:49,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:45:49,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:45:51,463.463 INFO    ] ================================================
[2026-06-22 05:45:51,479.479 INFO    ] Launching Daemon at Mon Jun 22 05:45:51 IST 2026
[2026-06-22 05:45:51,490.490 INFO    ] ================================================
[2026-06-22 05:45:52,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:45:52
[2026-06-22 05:45:52,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:45:52,852.852 INFO    ] Initializing speech engine...
[2026-06-22 05:45:52,862.862 INFO    ] 2026-06-22 05:45:52
[2026-06-22 05:45:53,125.125 INFO    ] 2026-06-22 05:45:53
[2026-06-22 05:45:53,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:45:53,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:45:53,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:45:53,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:45:53,548.548 INFO    ] time= 22/06/2026 05:45:53
[2026-06-22 05:45:53,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:45:53,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:45:53,727.727 INFO    ] No existing commands found in stream
[2026-06-22 05:45:58,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:45:58,742.742 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-22 05:46:00,368.368 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:46:00,371.371 INFO    ] Checking for system updates...
[2026-06-22 05:46:00,410.410 INFO    ] 200
[2026-06-22 05:46:00,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:46:00,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:46:00,468.468 INFO    ] No update needed
[2026-06-22 05:46:00,470.470 INFO    ] Checking for camera pi updates...
[2026-06-22 05:46:00,507.507 INFO    ] 200
[2026-06-22 05:46:00,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:46:00,554.554 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:46:00,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:46:00,737.737 INFO    ] No camera update needed
[2026-06-22 05:46:00,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:46:00,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:46:00,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:46:00,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:46:02,806.806 INFO    ] ================================================
[2026-06-22 05:46:02,833.833 INFO    ] Launching Daemon at Mon Jun 22 05:46:02 IST 2026
[2026-06-22 05:46:02,848.848 INFO    ] ================================================
[2026-06-22 05:46:03,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:46:03
[2026-06-22 05:46:04,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:46:04,316.316 INFO    ] Initializing speech engine...
[2026-06-22 05:46:04,333.333 INFO    ] 2026-06-22 05:46:04
[2026-06-22 05:46:04,598.598 INFO    ] 2026-06-22 05:46:04
[2026-06-22 05:46:04,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:46:04,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:46:04,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:46:05,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:46:05,211.211 INFO    ] time= 22/06/2026 05:46:05
[2026-06-22 05:46:05,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:46:05,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:46:05,289.289 INFO    ] No existing commands found in stream
[2026-06-22 05:46:10,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:46:10,327.327 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-22 05:46:11,275.275 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:46:11,276.276 INFO    ] Checking for system updates...
[2026-06-22 05:46:11,299.299 INFO    ] 200
[2026-06-22 05:46:11,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:46:11,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:46:11,361.361 INFO    ] No update needed
[2026-06-22 05:46:11,363.363 INFO    ] Checking for camera pi updates...
[2026-06-22 05:46:11,401.401 INFO    ] 200
[2026-06-22 05:46:11,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:46:11,449.449 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:46:11,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:46:11,534.534 INFO    ] No camera update needed
[2026-06-22 05:46:11,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:46:11,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:46:11,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:46:11,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:46:13,593.593 INFO    ] ================================================
[2026-06-22 05:46:13,609.609 INFO    ] Launching Daemon at Mon Jun 22 05:46:13 IST 2026
[2026-06-22 05:46:13,620.620 INFO    ] ================================================
[2026-06-22 05:46:14,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:46:14
[2026-06-22 05:46:14,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:46:14,953.953 INFO    ] Initializing speech engine...
[2026-06-22 05:46:14,972.972 INFO    ] 2026-06-22 05:46:14
[2026-06-22 05:46:15,235.235 INFO    ] 2026-06-22 05:46:15
[2026-06-22 05:46:15,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:46:15,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:46:15,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:46:15,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:46:15,602.602 INFO    ] time= 22/06/2026 05:46:15
[2026-06-22 05:46:15,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:46:15,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:46:15,723.723 INFO    ] No existing commands found in stream
[2026-06-22 05:46:20,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:46:20,738.738 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-22 05:46:23,096.096 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:46:23,099.099 INFO    ] Checking for system updates...
[2026-06-22 05:46:23,135.135 INFO    ] 200
[2026-06-22 05:46:23,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:46:23,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:46:23,213.213 INFO    ] No update needed
[2026-06-22 05:46:23,215.215 INFO    ] Checking for camera pi updates...
[2026-06-22 05:46:23,251.251 INFO    ] 200
[2026-06-22 05:46:23,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:46:23,297.297 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:46:23,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:46:23,395.395 INFO    ] No camera update needed
[2026-06-22 05:46:23,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:46:23,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:46:23,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:46:23,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:46:25,450.450 INFO    ] ================================================
[2026-06-22 05:46:25,465.465 INFO    ] Launching Daemon at Mon Jun 22 05:46:25 IST 2026
[2026-06-22 05:46:25,477.477 INFO    ] ================================================
[2026-06-22 05:46:26,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:46:26
[2026-06-22 05:46:26,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:46:26,941.941 INFO    ] Initializing speech engine...
[2026-06-22 05:46:26,948.948 INFO    ] 2026-06-22 05:46:26
[2026-06-22 05:46:27,215.215 INFO    ] 2026-06-22 05:46:27
[2026-06-22 05:46:27,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:46:27,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:46:27,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:46:27,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:46:27,684.684 INFO    ] time= 22/06/2026 05:46:27
[2026-06-22 05:46:27,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:46:27,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:46:27,825.825 INFO    ] No existing commands found in stream
[2026-06-22 05:46:32,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:46:32,840.840 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-22 05:46:36,582.582 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:46:36,584.584 INFO    ] Checking for system updates...
[2026-06-22 05:46:36,606.606 INFO    ] 200
[2026-06-22 05:46:36,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:46:36,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:46:36,650.650 INFO    ] No update needed
[2026-06-22 05:46:36,652.652 INFO    ] Checking for camera pi updates...
[2026-06-22 05:46:36,685.685 INFO    ] 200
[2026-06-22 05:46:36,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:46:36,728.728 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:46:36,790.790 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:46:36,793.793 INFO    ] No camera update needed
[2026-06-22 05:46:36,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:46:36,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:46:36,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:46:36,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:46:38,849.849 INFO    ] ================================================
[2026-06-22 05:46:38,865.865 INFO    ] Launching Daemon at Mon Jun 22 05:46:38 IST 2026
[2026-06-22 05:46:38,876.876 INFO    ] ================================================
[2026-06-22 05:46:39,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:46:39
[2026-06-22 05:46:39,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:46:40,244.244 INFO    ] Initializing speech engine...
[2026-06-22 05:46:40,255.255 INFO    ] 2026-06-22 05:46:40
[2026-06-22 05:46:40,515.515 INFO    ] 2026-06-22 05:46:40
[2026-06-22 05:46:40,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:46:40,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:46:40,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:46:40,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:46:40,897.897 INFO    ] time= 22/06/2026 05:46:40
[2026-06-22 05:46:40,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:46:40,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:46:41,071.071 INFO    ] No existing commands found in stream
[2026-06-22 05:46:46,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:46:46,105.105 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-22 05:46:50,129.129 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:46:50,131.131 INFO    ] Checking for system updates...
[2026-06-22 05:46:50,157.157 INFO    ] 200
[2026-06-22 05:46:50,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:46:50,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:46:50,219.219 INFO    ] No update needed
[2026-06-22 05:46:50,221.221 INFO    ] Checking for camera pi updates...
[2026-06-22 05:46:50,255.255 INFO    ] 200
[2026-06-22 05:46:50,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:46:50,301.301 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:46:50,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:46:50,361.361 INFO    ] No camera update needed
[2026-06-22 05:46:50,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:46:50,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:46:50,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:46:50,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:46:52,416.416 INFO    ] ================================================
[2026-06-22 05:46:52,432.432 INFO    ] Launching Daemon at Mon Jun 22 05:46:52 IST 2026
[2026-06-22 05:46:52,443.443 INFO    ] ================================================
[2026-06-22 05:46:53,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:46:53
[2026-06-22 05:46:53,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:46:53,788.788 INFO    ] Initializing speech engine...
[2026-06-22 05:46:53,799.799 INFO    ] 2026-06-22 05:46:53
[2026-06-22 05:46:54,051.051 INFO    ] 2026-06-22 05:46:54
[2026-06-22 05:46:54,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:46:54,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:46:54,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:46:54,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:46:54,432.432 INFO    ] time= 22/06/2026 05:46:54
[2026-06-22 05:46:54,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:46:54,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:46:54,602.602 INFO    ] No existing commands found in stream
[2026-06-22 05:46:59,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:46:59,637.637 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-22 05:47:02,884.884 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:47:02,888.888 INFO    ] Checking for system updates...
[2026-06-22 05:47:02,935.935 INFO    ] 200
[2026-06-22 05:47:02,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:47:03,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:47:03,009.009 INFO    ] No update needed
[2026-06-22 05:47:03,011.011 INFO    ] Checking for camera pi updates...
[2026-06-22 05:47:03,050.050 INFO    ] 200
[2026-06-22 05:47:03,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:47:03,105.105 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:47:03,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:47:03,194.194 INFO    ] No camera update needed
[2026-06-22 05:47:03,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:47:03,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:47:03,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:47:03,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:47:05,254.254 INFO    ] ================================================
[2026-06-22 05:47:05,270.270 INFO    ] Launching Daemon at Mon Jun 22 05:47:05 IST 2026
[2026-06-22 05:47:05,280.280 INFO    ] ================================================
[2026-06-22 05:47:05,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:47:05
[2026-06-22 05:47:06,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:47:06,769.769 INFO    ] Initializing speech engine...
[2026-06-22 05:47:06,783.783 INFO    ] 2026-06-22 05:47:06
[2026-06-22 05:47:07,058.058 INFO    ] 2026-06-22 05:47:07
[2026-06-22 05:47:07,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:47:07,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:47:07,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:47:07,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:47:07,519.519 INFO    ] time= 22/06/2026 05:47:07
[2026-06-22 05:47:07,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:47:07,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:47:07,669.669 INFO    ] No existing commands found in stream
[2026-06-22 05:47:12,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:47:12,686.686 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-22 05:47:14,616.616 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:47:14,619.619 INFO    ] Checking for system updates...
[2026-06-22 05:47:14,660.660 INFO    ] 200
[2026-06-22 05:47:14,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:47:14,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:47:14,716.716 INFO    ] No update needed
[2026-06-22 05:47:14,719.719 INFO    ] Checking for camera pi updates...
[2026-06-22 05:47:14,752.752 INFO    ] 200
[2026-06-22 05:47:14,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:47:14,796.796 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:47:14,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:47:14,871.871 INFO    ] No camera update needed
[2026-06-22 05:47:14,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:47:14,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:47:14,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:47:14,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:47:16,927.927 INFO    ] ================================================
[2026-06-22 05:47:16,942.942 INFO    ] Launching Daemon at Mon Jun 22 05:47:16 IST 2026
[2026-06-22 05:47:16,954.954 INFO    ] ================================================
[2026-06-22 05:47:17,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:47:17
[2026-06-22 05:47:18,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:47:18,361.361 INFO    ] Initializing speech engine...
[2026-06-22 05:47:18,368.368 INFO    ] 2026-06-22 05:47:18
[2026-06-22 05:47:18,618.618 INFO    ] 2026-06-22 05:47:18
[2026-06-22 05:47:18,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:47:18,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:47:18,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:47:18,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:47:18,989.989 INFO    ] time= 22/06/2026 05:47:18
[2026-06-22 05:47:18,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:47:19,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:47:19,151.151 INFO    ] No existing commands found in stream
[2026-06-22 05:47:24,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:47:24,184.184 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-22 05:47:25,698.698 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:47:25,700.700 INFO    ] Checking for system updates...
[2026-06-22 05:47:25,740.740 INFO    ] 200
[2026-06-22 05:47:25,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:47:25,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:47:25,805.805 INFO    ] No update needed
[2026-06-22 05:47:25,807.807 INFO    ] Checking for camera pi updates...
[2026-06-22 05:47:25,846.846 INFO    ] 200
[2026-06-22 05:47:25,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:47:25,889.889 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:47:25,940.940 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:47:25,942.942 INFO    ] No camera update needed
[2026-06-22 05:47:25,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:47:25,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:47:25,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:47:25,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:47:28,000.000 INFO    ] ================================================
[2026-06-22 05:47:28,016.016 INFO    ] Launching Daemon at Mon Jun 22 05:47:28 IST 2026
[2026-06-22 05:47:28,027.027 INFO    ] ================================================
[2026-06-22 05:47:28,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:47:28
[2026-06-22 05:47:29,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:47:29,592.592 INFO    ] Initializing speech engine...
[2026-06-22 05:47:29,600.600 INFO    ] 2026-06-22 05:47:29
[2026-06-22 05:47:29,917.917 INFO    ] 2026-06-22 05:47:29
[2026-06-22 05:47:29,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:47:30,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:47:30,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:47:30,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:47:30,401.401 INFO    ] time= 22/06/2026 05:47:30
[2026-06-22 05:47:30,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:47:30,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:47:30,541.541 INFO    ] No existing commands found in stream
[2026-06-22 05:47:35,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:47:35,557.557 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-22 05:47:39,800.800 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:47:39,803.803 INFO    ] Checking for system updates...
[2026-06-22 05:47:39,839.839 INFO    ] 200
[2026-06-22 05:47:39,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:47:39,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:47:39,900.900 INFO    ] No update needed
[2026-06-22 05:47:39,903.903 INFO    ] Checking for camera pi updates...
[2026-06-22 05:47:39,941.941 INFO    ] 200
[2026-06-22 05:47:39,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:47:39,989.989 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:47:40,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:47:40,076.076 INFO    ] No camera update needed
[2026-06-22 05:47:40,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:47:40,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:47:40,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:47:40,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:47:42,133.133 INFO    ] ================================================
[2026-06-22 05:47:42,149.149 INFO    ] Launching Daemon at Mon Jun 22 05:47:42 IST 2026
[2026-06-22 05:47:42,161.161 INFO    ] ================================================
[2026-06-22 05:47:42,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:47:42
[2026-06-22 05:47:43,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:47:43,700.700 INFO    ] Initializing speech engine...
[2026-06-22 05:47:43,713.713 INFO    ] 2026-06-22 05:47:43
[2026-06-22 05:47:44,004.004 INFO    ] 2026-06-22 05:47:43
[2026-06-22 05:47:44,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:47:44,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:47:44,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:47:44,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:47:44,539.539 INFO    ] time= 22/06/2026 05:47:44
[2026-06-22 05:47:44,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:47:44,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:47:44,696.696 INFO    ] No existing commands found in stream
[2026-06-22 05:47:49,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:47:49,739.739 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-22 05:47:52,493.493 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:47:52,495.495 INFO    ] Checking for system updates...
[2026-06-22 05:47:52,528.528 INFO    ] 200
[2026-06-22 05:47:52,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:47:52,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:47:52,599.599 INFO    ] No update needed
[2026-06-22 05:47:52,607.607 INFO    ] Checking for camera pi updates...
[2026-06-22 05:47:52,641.641 INFO    ] 200
[2026-06-22 05:47:52,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:47:52,686.686 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:47:52,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:47:52,773.773 INFO    ] No camera update needed
[2026-06-22 05:47:52,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:47:52,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:47:52,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:47:52,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:47:54,830.830 INFO    ] ================================================
[2026-06-22 05:47:54,846.846 INFO    ] Launching Daemon at Mon Jun 22 05:47:54 IST 2026
[2026-06-22 05:47:54,856.856 INFO    ] ================================================
[2026-06-22 05:47:55,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:47:55
[2026-06-22 05:47:56,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:47:56,323.323 INFO    ] Initializing speech engine...
[2026-06-22 05:47:56,330.330 INFO    ] 2026-06-22 05:47:56
[2026-06-22 05:47:56,593.593 INFO    ] 2026-06-22 05:47:56
[2026-06-22 05:47:56,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:47:56,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:47:56,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:47:57,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:47:57,045.045 INFO    ] time= 22/06/2026 05:47:57
[2026-06-22 05:47:57,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:47:57,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:47:57,198.198 INFO    ] No existing commands found in stream
[2026-06-22 05:48:02,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:48:02,210.210 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-22 05:48:05,409.409 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:48:05,411.411 INFO    ] Checking for system updates...
[2026-06-22 05:48:05,452.452 INFO    ] 200
[2026-06-22 05:48:05,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:48:05,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:48:05,519.519 INFO    ] No update needed
[2026-06-22 05:48:05,522.522 INFO    ] Checking for camera pi updates...
[2026-06-22 05:48:05,556.556 INFO    ] 200
[2026-06-22 05:48:05,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:48:05,606.606 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:48:05,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:48:05,802.802 INFO    ] No camera update needed
[2026-06-22 05:48:05,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:48:05,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:48:05,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:48:05,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:48:07,862.862 INFO    ] ================================================
[2026-06-22 05:48:07,877.877 INFO    ] Launching Daemon at Mon Jun 22 05:48:07 IST 2026
[2026-06-22 05:48:07,888.888 INFO    ] ================================================
[2026-06-22 05:48:08,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:48:08
[2026-06-22 05:48:09,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:48:09,302.302 INFO    ] Initializing speech engine...
[2026-06-22 05:48:09,325.325 INFO    ] 2026-06-22 05:48:09
[2026-06-22 05:48:09,583.583 INFO    ] 2026-06-22 05:48:09
[2026-06-22 05:48:09,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:48:09,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:48:09,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:48:10,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:48:10,070.070 INFO    ] time= 22/06/2026 05:48:10
[2026-06-22 05:48:10,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:48:10,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:48:10,204.204 INFO    ] No existing commands found in stream
[2026-06-22 05:48:15,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:48:15,219.219 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-22 05:48:17,368.368 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:48:17,369.369 INFO    ] Checking for system updates...
[2026-06-22 05:48:17,391.391 INFO    ] 200
[2026-06-22 05:48:17,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:48:17,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:48:17,427.427 INFO    ] No update needed
[2026-06-22 05:48:17,428.428 INFO    ] Checking for camera pi updates...
[2026-06-22 05:48:17,466.466 INFO    ] 200
[2026-06-22 05:48:17,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:48:17,510.510 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:48:17,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:48:17,594.594 INFO    ] No camera update needed
[2026-06-22 05:48:17,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:48:17,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:48:17,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:48:17,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:48:19,650.650 INFO    ] ================================================
[2026-06-22 05:48:19,665.665 INFO    ] Launching Daemon at Mon Jun 22 05:48:19 IST 2026
[2026-06-22 05:48:19,676.676 INFO    ] ================================================
[2026-06-22 05:48:20,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:48:20
[2026-06-22 05:48:20,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:48:20,992.992 INFO    ] Initializing speech engine...
[2026-06-22 05:48:21,005.005 INFO    ] 2026-06-22 05:48:20
[2026-06-22 05:48:21,267.267 INFO    ] 2026-06-22 05:48:21
[2026-06-22 05:48:21,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:48:21,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:48:21,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:48:21,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:48:21,738.738 INFO    ] time= 22/06/2026 05:48:21
[2026-06-22 05:48:21,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:48:21,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:48:21,885.885 INFO    ] No existing commands found in stream
[2026-06-22 05:48:26,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:48:26,900.900 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-22 05:48:28,240.240 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:48:28,242.242 INFO    ] Checking for system updates...
[2026-06-22 05:48:28,265.265 INFO    ] 200
[2026-06-22 05:48:28,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:48:28,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:48:28,301.301 INFO    ] No update needed
[2026-06-22 05:48:28,302.302 INFO    ] Checking for camera pi updates...
[2026-06-22 05:48:28,325.325 INFO    ] 200
[2026-06-22 05:48:28,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:48:28,373.373 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:48:28,474.474 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:48:28,477.477 INFO    ] No camera update needed
[2026-06-22 05:48:28,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:48:28,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:48:28,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:48:28,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:48:30,538.538 INFO    ] ================================================
[2026-06-22 05:48:30,554.554 INFO    ] Launching Daemon at Mon Jun 22 05:48:30 IST 2026
[2026-06-22 05:48:30,565.565 INFO    ] ================================================
[2026-06-22 05:48:31,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:48:31
[2026-06-22 05:48:31,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:48:32,098.098 INFO    ] Initializing speech engine...
[2026-06-22 05:48:32,105.105 INFO    ] 2026-06-22 05:48:32
[2026-06-22 05:48:32,381.381 INFO    ] 2026-06-22 05:48:32
[2026-06-22 05:48:32,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:48:32,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:48:32,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:48:32,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:48:32,846.846 INFO    ] time= 22/06/2026 05:48:32
[2026-06-22 05:48:32,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:48:32,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:48:33,006.006 INFO    ] No existing commands found in stream
[2026-06-22 05:48:38,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:48:38,026.026 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-22 05:48:40,263.263 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:48:40,265.265 INFO    ] Checking for system updates...
[2026-06-22 05:48:40,287.287 INFO    ] 200
[2026-06-22 05:48:40,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:48:40,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:48:40,326.326 INFO    ] No update needed
[2026-06-22 05:48:40,328.328 INFO    ] Checking for camera pi updates...
[2026-06-22 05:48:40,363.363 INFO    ] 200
[2026-06-22 05:48:40,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:48:40,408.408 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:48:40,489.489 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:48:40,492.492 INFO    ] No camera update needed
[2026-06-22 05:48:40,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:48:40,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:48:40,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:48:40,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:48:42,552.552 INFO    ] ================================================
[2026-06-22 05:48:42,568.568 INFO    ] Launching Daemon at Mon Jun 22 05:48:42 IST 2026
[2026-06-22 05:48:42,580.580 INFO    ] ================================================
[2026-06-22 05:48:43,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:48:43
[2026-06-22 05:48:43,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:48:43,894.894 INFO    ] Initializing speech engine...
[2026-06-22 05:48:43,901.901 INFO    ] 2026-06-22 05:48:43
[2026-06-22 05:48:44,200.200 INFO    ] 2026-06-22 05:48:44
[2026-06-22 05:48:44,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:48:44,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:48:44,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:48:44,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:48:44,608.608 INFO    ] time= 22/06/2026 05:48:44
[2026-06-22 05:48:44,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:48:44,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:48:44,717.717 INFO    ] No existing commands found in stream
[2026-06-22 05:48:49,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:48:49,732.732 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-22 05:48:51,966.966 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:48:51,969.969 INFO    ] Checking for system updates...
[2026-06-22 05:48:52,008.008 INFO    ] 200
[2026-06-22 05:48:52,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:48:52,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:48:52,069.069 INFO    ] No update needed
[2026-06-22 05:48:52,072.072 INFO    ] Checking for camera pi updates...
[2026-06-22 05:48:52,107.107 INFO    ] 200
[2026-06-22 05:48:52,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:48:52,150.150 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:48:52,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:48:52,233.233 INFO    ] No camera update needed
[2026-06-22 05:48:52,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:48:52,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:48:52,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:48:52,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:48:54,291.291 INFO    ] ================================================
[2026-06-22 05:48:54,307.307 INFO    ] Launching Daemon at Mon Jun 22 05:48:54 IST 2026
[2026-06-22 05:48:54,319.319 INFO    ] ================================================
[2026-06-22 05:48:54,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:48:54
[2026-06-22 05:48:55,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:48:55,715.715 INFO    ] Initializing speech engine...
[2026-06-22 05:48:55,724.724 INFO    ] 2026-06-22 05:48:55
[2026-06-22 05:48:55,973.973 INFO    ] 2026-06-22 05:48:55
[2026-06-22 05:48:56,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:48:56,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:48:56,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:48:56,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:48:56,313.313 INFO    ] time= 22/06/2026 05:48:56
[2026-06-22 05:48:56,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:48:56,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:48:56,425.425 INFO    ] No existing commands found in stream
[2026-06-22 05:49:01,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:49:01,441.441 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-22 05:49:05,656.656 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:49:05,659.659 INFO    ] Checking for system updates...
[2026-06-22 05:49:05,695.695 INFO    ] 200
[2026-06-22 05:49:05,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:49:05,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:49:05,752.752 INFO    ] No update needed
[2026-06-22 05:49:05,755.755 INFO    ] Checking for camera pi updates...
[2026-06-22 05:49:05,789.789 INFO    ] 200
[2026-06-22 05:49:05,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:49:05,832.832 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:49:05,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:49:05,912.912 INFO    ] No camera update needed
[2026-06-22 05:49:05,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:49:05,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:49:05,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:49:05,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:49:07,972.972 INFO    ] ================================================
[2026-06-22 05:49:07,987.987 INFO    ] Launching Daemon at Mon Jun 22 05:49:07 IST 2026
[2026-06-22 05:49:08,999.999 INFO    ] ================================================
[2026-06-22 05:49:08,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:49:08
[2026-06-22 05:49:09,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:49:09,575.575 INFO    ] Initializing speech engine...
[2026-06-22 05:49:09,585.585 INFO    ] 2026-06-22 05:49:09
[2026-06-22 05:49:09,880.880 INFO    ] 2026-06-22 05:49:09
[2026-06-22 05:49:09,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:49:10,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:49:10,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:49:10,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:49:10,347.347 INFO    ] time= 22/06/2026 05:49:10
[2026-06-22 05:49:10,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:49:10,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:49:10,504.504 INFO    ] No existing commands found in stream
[2026-06-22 05:49:15,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:49:15,520.520 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-22 05:49:18,578.578 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:49:18,579.579 INFO    ] Checking for system updates...
[2026-06-22 05:49:18,600.600 INFO    ] 200
[2026-06-22 05:49:18,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:49:18,634.634 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:49:18,635.635 INFO    ] No update needed
[2026-06-22 05:49:18,637.637 INFO    ] Checking for camera pi updates...
[2026-06-22 05:49:18,656.656 INFO    ] 200
[2026-06-22 05:49:18,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:49:18,681.681 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:49:18,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:49:18,781.781 INFO    ] No camera update needed
[2026-06-22 05:49:18,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:49:18,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:49:18,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:49:18,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:49:20,836.836 INFO    ] ================================================
[2026-06-22 05:49:20,853.853 INFO    ] Launching Daemon at Mon Jun 22 05:49:20 IST 2026
[2026-06-22 05:49:20,865.865 INFO    ] ================================================
[2026-06-22 05:49:21,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:49:21
[2026-06-22 05:49:22,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:49:22,333.333 INFO    ] Initializing speech engine...
[2026-06-22 05:49:22,346.346 INFO    ] 2026-06-22 05:49:22
[2026-06-22 05:49:22,661.661 INFO    ] 2026-06-22 05:49:22
[2026-06-22 05:49:22,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:49:22,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:49:22,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:49:23,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:49:23,176.176 INFO    ] time= 22/06/2026 05:49:23
[2026-06-22 05:49:23,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:49:23,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:49:23,300.300 INFO    ] No existing commands found in stream
[2026-06-22 05:49:28,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:49:28,316.316 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-22 05:49:29,869.869 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:49:29,870.870 INFO    ] Checking for system updates...
[2026-06-22 05:49:29,898.898 INFO    ] 200
[2026-06-22 05:49:29,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:49:29,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:49:29,957.957 INFO    ] No update needed
[2026-06-22 05:49:29,960.960 INFO    ] Checking for camera pi updates...
[2026-06-22 05:49:29,994.994 INFO    ] 200
[2026-06-22 05:49:29,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:49:30,037.037 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:49:30,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:49:30,123.123 INFO    ] No camera update needed
[2026-06-22 05:49:30,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:49:30,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:49:30,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:49:30,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:49:32,190.190 INFO    ] ================================================
[2026-06-22 05:49:32,209.209 INFO    ] Launching Daemon at Mon Jun 22 05:49:32 IST 2026
[2026-06-22 05:49:32,224.224 INFO    ] ================================================
[2026-06-22 05:49:32,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:49:32
[2026-06-22 05:49:33,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:49:33,826.826 INFO    ] Initializing speech engine...
[2026-06-22 05:49:33,832.832 INFO    ] 2026-06-22 05:49:33
[2026-06-22 05:49:34,081.081 INFO    ] 2026-06-22 05:49:34
[2026-06-22 05:49:34,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:49:34,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:49:34,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:49:34,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:49:34,476.476 INFO    ] time= 22/06/2026 05:49:34
[2026-06-22 05:49:34,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:49:34,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:49:34,626.626 INFO    ] No existing commands found in stream
[2026-06-22 05:49:39,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:49:39,654.654 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-22 05:49:40,547.547 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:49:40,550.550 INFO    ] Checking for system updates...
[2026-06-22 05:49:40,586.586 INFO    ] 200
[2026-06-22 05:49:40,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:49:40,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:49:40,643.643 INFO    ] No update needed
[2026-06-22 05:49:40,646.646 INFO    ] Checking for camera pi updates...
[2026-06-22 05:49:40,683.683 INFO    ] 200
[2026-06-22 05:49:40,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:49:40,730.730 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:49:40,811.811 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:49:40,813.813 INFO    ] No camera update needed
[2026-06-22 05:49:40,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:49:40,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:49:40,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:49:40,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:49:42,870.870 INFO    ] ================================================
[2026-06-22 05:49:42,885.885 INFO    ] Launching Daemon at Mon Jun 22 05:49:42 IST 2026
[2026-06-22 05:49:42,896.896 INFO    ] ================================================
[2026-06-22 05:49:43,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:49:43
[2026-06-22 05:49:44,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:49:44,472.472 INFO    ] Initializing speech engine...
[2026-06-22 05:49:44,480.480 INFO    ] 2026-06-22 05:49:44
[2026-06-22 05:49:44,774.774 INFO    ] 2026-06-22 05:49:44
[2026-06-22 05:49:44,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:49:45,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:49:45,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:49:45,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:49:45,167.167 INFO    ] time= 22/06/2026 05:49:45
[2026-06-22 05:49:45,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:49:45,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:49:45,246.246 INFO    ] No existing commands found in stream
[2026-06-22 05:49:50,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:49:50,263.263 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-22 05:49:53,535.535 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:49:53,539.539 INFO    ] Checking for system updates...
[2026-06-22 05:49:53,575.575 INFO    ] 200
[2026-06-22 05:49:53,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:49:53,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:49:53,633.633 INFO    ] No update needed
[2026-06-22 05:49:53,635.635 INFO    ] Checking for camera pi updates...
[2026-06-22 05:49:53,669.669 INFO    ] 200
[2026-06-22 05:49:53,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:49:53,711.711 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:49:53,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:49:53,806.806 INFO    ] No camera update needed
[2026-06-22 05:49:53,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:49:53,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:49:53,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:49:53,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:49:55,861.861 INFO    ] ================================================
[2026-06-22 05:49:55,877.877 INFO    ] Launching Daemon at Mon Jun 22 05:49:55 IST 2026
[2026-06-22 05:49:55,888.888 INFO    ] ================================================
[2026-06-22 05:49:56,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:49:56
[2026-06-22 05:49:56,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:49:57,261.261 INFO    ] Initializing speech engine...
[2026-06-22 05:49:57,269.269 INFO    ] 2026-06-22 05:49:57
[2026-06-22 05:49:57,529.529 INFO    ] 2026-06-22 05:49:57
[2026-06-22 05:49:57,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:49:57,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:49:57,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:49:57,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:49:57,995.995 INFO    ] time= 22/06/2026 05:49:57
[2026-06-22 05:49:58,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:49:58,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:49:58,221.221 INFO    ] No existing commands found in stream
[2026-06-22 05:50:03,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:50:03,242.242 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-22 05:50:08,667.667 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:50:08,670.670 INFO    ] Checking for system updates...
[2026-06-22 05:50:08,705.705 INFO    ] 200
[2026-06-22 05:50:08,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:50:08,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:50:08,770.770 INFO    ] No update needed
[2026-06-22 05:50:08,773.773 INFO    ] Checking for camera pi updates...
[2026-06-22 05:50:08,810.810 INFO    ] 200
[2026-06-22 05:50:08,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:50:08,859.859 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:50:09,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:50:09,043.043 INFO    ] No camera update needed
[2026-06-22 05:50:09,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:50:09,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:50:09,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:50:09,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:50:11,100.100 INFO    ] ================================================
[2026-06-22 05:50:11,116.116 INFO    ] Launching Daemon at Mon Jun 22 05:50:11 IST 2026
[2026-06-22 05:50:11,127.127 INFO    ] ================================================
[2026-06-22 05:50:11,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:50:11
[2026-06-22 05:50:12,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:50:12,695.695 INFO    ] Initializing speech engine...
[2026-06-22 05:50:12,704.704 INFO    ] 2026-06-22 05:50:12
[2026-06-22 05:50:12,992.992 INFO    ] 2026-06-22 05:50:12
[2026-06-22 05:50:13,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:50:13,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:50:13,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:50:13,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:50:13,455.455 INFO    ] time= 22/06/2026 05:50:13
[2026-06-22 05:50:13,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:50:13,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:50:13,618.618 INFO    ] No existing commands found in stream
[2026-06-22 05:50:18,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:50:18,664.664 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-22 05:50:22,590.590 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:50:22,595.595 INFO    ] Checking for system updates...
[2026-06-22 05:50:22,642.642 INFO    ] 200
[2026-06-22 05:50:22,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 05:50:22,649.649 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-22 05:50:22,653.653 INFO    ] Checking for camera pi updates...
[2026-06-22 05:50:22,705.705 INFO    ] 200
[2026-06-22 05:50:22,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 05:50:22,711.711 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-22 05:50:22,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:50:22,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:50:22,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:50:22,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:50:24,768.768 INFO    ] ================================================
[2026-06-22 05:50:24,783.783 INFO    ] Launching Daemon at Mon Jun 22 05:50:24 IST 2026
[2026-06-22 05:50:24,794.794 INFO    ] ================================================
[2026-06-22 05:50:25,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:50:25
[2026-06-22 05:50:26,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:50:26,332.332 INFO    ] Initializing speech engine...
[2026-06-22 05:50:26,339.339 INFO    ] 2026-06-22 05:50:26
[2026-06-22 05:50:26,587.587 INFO    ] 2026-06-22 05:50:26
[2026-06-22 05:50:26,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:50:26,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:50:26,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:50:26,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:50:26,966.966 INFO    ] time= 22/06/2026 05:50:26
[2026-06-22 05:50:26,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:50:27,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:50:27,152.152 INFO    ] No existing commands found in stream
[2026-06-22 05:50:32,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:50:32,181.181 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-22 05:50:33,891.891 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:50:33,894.894 INFO    ] Checking for system updates...
[2026-06-22 05:50:33,936.936 INFO    ] 200
[2026-06-22 05:50:33,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:50:33,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:50:33,995.995 INFO    ] No update needed
[2026-06-22 05:50:33,997.997 INFO    ] Checking for camera pi updates...
[2026-06-22 05:50:34,031.031 INFO    ] 200
[2026-06-22 05:50:34,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:50:34,079.079 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:50:34,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:50:34,162.162 INFO    ] No camera update needed
[2026-06-22 05:50:34,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:50:34,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:50:34,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:50:34,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:50:36,218.218 INFO    ] ================================================
[2026-06-22 05:50:36,233.233 INFO    ] Launching Daemon at Mon Jun 22 05:50:36 IST 2026
[2026-06-22 05:50:36,245.245 INFO    ] ================================================
[2026-06-22 05:50:36,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:50:36
[2026-06-22 05:50:37,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:50:37,886.886 INFO    ] Initializing speech engine...
[2026-06-22 05:50:37,894.894 INFO    ] 2026-06-22 05:50:37
[2026-06-22 05:50:38,212.212 INFO    ] 2026-06-22 05:50:38
[2026-06-22 05:50:38,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:50:38,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:50:38,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:50:38,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:50:38,736.736 INFO    ] time= 22/06/2026 05:50:38
[2026-06-22 05:50:38,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:50:38,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:50:38,875.875 INFO    ] No existing commands found in stream
[2026-06-22 05:50:43,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:50:43,905.905 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-22 05:50:47,827.827 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:50:47,830.830 INFO    ] Checking for system updates...
[2026-06-22 05:50:47,872.872 INFO    ] 200
[2026-06-22 05:50:47,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:50:47,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:50:47,946.946 INFO    ] No update needed
[2026-06-22 05:50:47,949.949 INFO    ] Checking for camera pi updates...
[2026-06-22 05:50:47,988.988 INFO    ] 200
[2026-06-22 05:50:47,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:50:48,043.043 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:50:48,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:50:48,132.132 INFO    ] No camera update needed
[2026-06-22 05:50:48,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:50:48,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:50:48,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:50:48,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:50:50,191.191 INFO    ] ================================================
[2026-06-22 05:50:50,207.207 INFO    ] Launching Daemon at Mon Jun 22 05:50:50 IST 2026
[2026-06-22 05:50:50,218.218 INFO    ] ================================================
[2026-06-22 05:50:50,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:50:50
[2026-06-22 05:50:51,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:50:51,576.576 INFO    ] Initializing speech engine...
[2026-06-22 05:50:51,597.597 INFO    ] 2026-06-22 05:50:51
[2026-06-22 05:50:51,876.876 INFO    ] 2026-06-22 05:50:51
[2026-06-22 05:50:51,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:50:52,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:50:52,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:50:52,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:50:52,295.295 INFO    ] time= 22/06/2026 05:50:52
[2026-06-22 05:50:52,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:50:52,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:50:52,389.389 INFO    ] No existing commands found in stream
[2026-06-22 05:50:57,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:50:57,422.422 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-22 05:51:01,054.054 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:51:01,055.055 INFO    ] Checking for system updates...
[2026-06-22 05:51:01,077.077 INFO    ] 200
[2026-06-22 05:51:01,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:51:01,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:51:01,120.120 INFO    ] No update needed
[2026-06-22 05:51:01,123.123 INFO    ] Checking for camera pi updates...
[2026-06-22 05:51:01,160.160 INFO    ] 200
[2026-06-22 05:51:01,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:51:01,226.226 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:51:01,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:51:01,339.339 INFO    ] No camera update needed
[2026-06-22 05:51:01,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:51:01,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:51:01,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:51:01,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:51:03,410.410 INFO    ] ================================================
[2026-06-22 05:51:03,425.425 INFO    ] Launching Daemon at Mon Jun 22 05:51:03 IST 2026
[2026-06-22 05:51:03,436.436 INFO    ] ================================================
[2026-06-22 05:51:04,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:51:04
[2026-06-22 05:51:04,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:51:04,858.858 INFO    ] Initializing speech engine...
[2026-06-22 05:51:04,876.876 INFO    ] 2026-06-22 05:51:04
[2026-06-22 05:51:05,129.129 INFO    ] 2026-06-22 05:51:05
[2026-06-22 05:51:05,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:51:05,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:51:05,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:51:05,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:51:05,506.506 INFO    ] time= 22/06/2026 05:51:05
[2026-06-22 05:51:05,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:51:05,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:51:05,666.666 INFO    ] No existing commands found in stream
[2026-06-22 05:51:10,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:51:10,699.699 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-22 05:51:12,829.829 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:51:12,832.832 INFO    ] Checking for system updates...
[2026-06-22 05:51:12,868.868 INFO    ] 200
[2026-06-22 05:51:12,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:51:12,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:51:12,926.926 INFO    ] No update needed
[2026-06-22 05:51:12,928.928 INFO    ] Checking for camera pi updates...
[2026-06-22 05:51:12,966.966 INFO    ] 200
[2026-06-22 05:51:12,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:51:13,009.009 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:51:13,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:51:13,097.097 INFO    ] No camera update needed
[2026-06-22 05:51:13,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:51:13,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:51:13,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:51:13,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:51:15,152.152 INFO    ] ================================================
[2026-06-22 05:51:15,168.168 INFO    ] Launching Daemon at Mon Jun 22 05:51:15 IST 2026
[2026-06-22 05:51:15,179.179 INFO    ] ================================================
[2026-06-22 05:51:15,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:51:15
[2026-06-22 05:51:16,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:51:16,551.551 INFO    ] Initializing speech engine...
[2026-06-22 05:51:16,557.557 INFO    ] 2026-06-22 05:51:16
[2026-06-22 05:51:16,808.808 INFO    ] 2026-06-22 05:51:16
[2026-06-22 05:51:16,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:51:17,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:51:17,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:51:17,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:51:17,257.257 INFO    ] time= 22/06/2026 05:51:17
[2026-06-22 05:51:17,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:51:17,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:51:17,428.428 INFO    ] No existing commands found in stream
[2026-06-22 05:51:22,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:51:22,443.443 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-22 05:51:23,087.087 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:51:23,088.088 INFO    ] Checking for system updates...
[2026-06-22 05:51:23,110.110 INFO    ] 200
[2026-06-22 05:51:23,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:51:23,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:51:23,142.142 INFO    ] No update needed
[2026-06-22 05:51:23,144.144 INFO    ] Checking for camera pi updates...
[2026-06-22 05:51:23,164.164 INFO    ] 200
[2026-06-22 05:51:23,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:51:23,189.189 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:51:23,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:51:23,241.241 INFO    ] No camera update needed
[2026-06-22 05:51:23,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:51:23,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:51:23,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:51:23,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:51:25,299.299 INFO    ] ================================================
[2026-06-22 05:51:25,315.315 INFO    ] Launching Daemon at Mon Jun 22 05:51:25 IST 2026
[2026-06-22 05:51:25,326.326 INFO    ] ================================================
[2026-06-22 05:51:25,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:51:25
[2026-06-22 05:51:26,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:51:26,739.739 INFO    ] Initializing speech engine...
[2026-06-22 05:51:26,747.747 INFO    ] 2026-06-22 05:51:26
[2026-06-22 05:51:27,040.040 INFO    ] 2026-06-22 05:51:27
[2026-06-22 05:51:27,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:51:27,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:51:27,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:51:27,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:51:27,419.419 INFO    ] time= 22/06/2026 05:51:27
[2026-06-22 05:51:27,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:51:27,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:51:27,548.548 INFO    ] No existing commands found in stream
[2026-06-22 05:51:32,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:51:32,559.559 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-22 05:51:36,367.367 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:51:36,370.370 INFO    ] Checking for system updates...
[2026-06-22 05:51:36,406.406 INFO    ] 200
[2026-06-22 05:51:36,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:51:36,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:51:36,467.467 INFO    ] No update needed
[2026-06-22 05:51:36,470.470 INFO    ] Checking for camera pi updates...
[2026-06-22 05:51:36,507.507 INFO    ] 200
[2026-06-22 05:51:36,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:51:36,550.550 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:51:36,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:51:36,630.630 INFO    ] No camera update needed
[2026-06-22 05:51:36,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:51:36,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:51:36,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:51:36,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:51:38,687.687 INFO    ] ================================================
[2026-06-22 05:51:38,702.702 INFO    ] Launching Daemon at Mon Jun 22 05:51:38 IST 2026
[2026-06-22 05:51:38,713.713 INFO    ] ================================================
[2026-06-22 05:51:39,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:51:39
[2026-06-22 05:51:39,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:51:40,024.024 INFO    ] Initializing speech engine...
[2026-06-22 05:51:40,034.034 INFO    ] 2026-06-22 05:51:40
[2026-06-22 05:51:40,289.289 INFO    ] 2026-06-22 05:51:40
[2026-06-22 05:51:40,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:51:40,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:51:40,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:51:40,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:51:40,750.750 INFO    ] time= 22/06/2026 05:51:40
[2026-06-22 05:51:40,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:51:40,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:51:40,901.901 INFO    ] No existing commands found in stream
[2026-06-22 05:51:45,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:51:45,916.916 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-22 05:51:46,373.373 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:51:46,375.375 INFO    ] Checking for system updates...
[2026-06-22 05:51:46,396.396 INFO    ] 200
[2026-06-22 05:51:46,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:51:46,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:51:46,462.462 INFO    ] No update needed
[2026-06-22 05:51:46,466.466 INFO    ] Checking for camera pi updates...
[2026-06-22 05:51:46,501.501 INFO    ] 200
[2026-06-22 05:51:46,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:51:46,546.546 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:51:46,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:51:46,631.631 INFO    ] No camera update needed
[2026-06-22 05:51:46,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:51:46,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:51:46,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:51:46,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:51:48,691.691 INFO    ] ================================================
[2026-06-22 05:51:48,706.706 INFO    ] Launching Daemon at Mon Jun 22 05:51:48 IST 2026
[2026-06-22 05:51:48,717.717 INFO    ] ================================================
[2026-06-22 05:51:49,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:51:49
[2026-06-22 05:51:49,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:51:50,036.036 INFO    ] Initializing speech engine...
[2026-06-22 05:51:50,056.056 INFO    ] 2026-06-22 05:51:50
[2026-06-22 05:51:50,334.334 INFO    ] 2026-06-22 05:51:50
[2026-06-22 05:51:50,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:51:51,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:51:51,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:51:51,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:51:51,735.735 INFO    ] time= 22/06/2026 05:51:51
[2026-06-22 05:51:51,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:51:51,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:51:51,842.842 INFO    ] No existing commands found in stream
[2026-06-22 05:51:56,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:51:56,865.865 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-22 05:51:58,903.903 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:51:58,905.905 INFO    ] Checking for system updates...
[2026-06-22 05:51:58,938.938 INFO    ] 200
[2026-06-22 05:51:58,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:51:59,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:51:59,002.002 INFO    ] No update needed
[2026-06-22 05:51:59,005.005 INFO    ] Checking for camera pi updates...
[2026-06-22 05:51:59,039.039 INFO    ] 200
[2026-06-22 05:51:59,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:51:59,084.084 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:51:59,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:51:59,173.173 INFO    ] No camera update needed
[2026-06-22 05:51:59,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:51:59,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:51:59,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:51:59,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:52:01,241.241 INFO    ] ================================================
[2026-06-22 05:52:01,269.269 INFO    ] Launching Daemon at Mon Jun 22 05:52:01 IST 2026
[2026-06-22 05:52:01,287.287 INFO    ] ================================================
[2026-06-22 05:52:01,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:52:01
[2026-06-22 05:52:02,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:52:02,925.925 INFO    ] Initializing speech engine...
[2026-06-22 05:52:02,935.935 INFO    ] 2026-06-22 05:52:02
[2026-06-22 05:52:03,208.208 INFO    ] 2026-06-22 05:52:03
[2026-06-22 05:52:03,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:52:03,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:52:03,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:52:03,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:52:03,699.699 INFO    ] time= 22/06/2026 05:52:03
[2026-06-22 05:52:03,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:52:03,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:52:03,895.895 INFO    ] No existing commands found in stream
[2026-06-22 05:52:08,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:52:08,925.925 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-22 05:52:12,083.083 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:52:12,085.085 INFO    ] Checking for system updates...
[2026-06-22 05:52:12,106.106 INFO    ] 200
[2026-06-22 05:52:12,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:52:12,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:52:12,154.154 INFO    ] No update needed
[2026-06-22 05:52:12,157.157 INFO    ] Checking for camera pi updates...
[2026-06-22 05:52:12,194.194 INFO    ] 200
[2026-06-22 05:52:12,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:52:12,242.242 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:52:12,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:52:12,437.437 INFO    ] No camera update needed
[2026-06-22 05:52:12,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:52:12,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:52:12,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:52:12,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:52:14,496.496 INFO    ] ================================================
[2026-06-22 05:52:14,511.511 INFO    ] Launching Daemon at Mon Jun 22 05:52:14 IST 2026
[2026-06-22 05:52:14,522.522 INFO    ] ================================================
[2026-06-22 05:52:15,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:52:15
[2026-06-22 05:52:15,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:52:15,891.891 INFO    ] Initializing speech engine...
[2026-06-22 05:52:15,910.910 INFO    ] 2026-06-22 05:52:15
[2026-06-22 05:52:16,162.162 INFO    ] 2026-06-22 05:52:16
[2026-06-22 05:52:16,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:52:16,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:52:16,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:52:16,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:52:16,545.545 INFO    ] time= 22/06/2026 05:52:16
[2026-06-22 05:52:16,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:52:16,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:52:16,721.721 INFO    ] No existing commands found in stream
[2026-06-22 05:52:21,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:52:21,749.749 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-22 05:52:25,878.878 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:52:25,880.880 INFO    ] Checking for system updates...
[2026-06-22 05:52:25,900.900 INFO    ] 200
[2026-06-22 05:52:25,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:52:25,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:52:25,935.935 INFO    ] No update needed
[2026-06-22 05:52:25,936.936 INFO    ] Checking for camera pi updates...
[2026-06-22 05:52:25,961.961 INFO    ] 200
[2026-06-22 05:52:25,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:52:26,007.007 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:52:26,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:52:26,062.062 INFO    ] No camera update needed
[2026-06-22 05:52:26,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:52:26,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:52:26,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:52:26,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:52:28,118.118 INFO    ] ================================================
[2026-06-22 05:52:28,133.133 INFO    ] Launching Daemon at Mon Jun 22 05:52:28 IST 2026
[2026-06-22 05:52:28,149.149 INFO    ] ================================================
[2026-06-22 05:52:28,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:52:28
[2026-06-22 05:52:29,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:52:29,525.525 INFO    ] Initializing speech engine...
[2026-06-22 05:52:29,538.538 INFO    ] 2026-06-22 05:52:29
[2026-06-22 05:52:29,800.800 INFO    ] 2026-06-22 05:52:29
[2026-06-22 05:52:29,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:52:30,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:52:30,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:52:30,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:52:30,274.274 INFO    ] time= 22/06/2026 05:52:30
[2026-06-22 05:52:30,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:52:30,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:52:30,437.437 INFO    ] No existing commands found in stream
[2026-06-22 05:52:35,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:52:35,453.453 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-22 05:52:36,786.786 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:52:36,789.789 INFO    ] Checking for system updates...
[2026-06-22 05:52:36,826.826 INFO    ] 200
[2026-06-22 05:52:36,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:52:36,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:52:36,891.891 INFO    ] No update needed
[2026-06-22 05:52:36,894.894 INFO    ] Checking for camera pi updates...
[2026-06-22 05:52:36,929.929 INFO    ] 200
[2026-06-22 05:52:36,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:52:36,975.975 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:52:37,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:52:37,042.042 INFO    ] No camera update needed
[2026-06-22 05:52:37,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:52:37,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:52:37,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:52:37,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:52:39,097.097 INFO    ] ================================================
[2026-06-22 05:52:39,112.112 INFO    ] Launching Daemon at Mon Jun 22 05:52:39 IST 2026
[2026-06-22 05:52:39,123.123 INFO    ] ================================================
[2026-06-22 05:52:39,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:52:39
[2026-06-22 05:52:40,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:52:40,470.470 INFO    ] Initializing speech engine...
[2026-06-22 05:52:40,480.480 INFO    ] 2026-06-22 05:52:40
[2026-06-22 05:52:40,743.743 INFO    ] 2026-06-22 05:52:40
[2026-06-22 05:52:40,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:52:41,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:52:41,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:52:41,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:52:41,205.205 INFO    ] time= 22/06/2026 05:52:41
[2026-06-22 05:52:41,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:52:41,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:52:41,350.350 INFO    ] No existing commands found in stream
[2026-06-22 05:52:46,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:52:46,365.365 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-22 05:52:51,173.173 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:52:51,176.176 INFO    ] Checking for system updates...
[2026-06-22 05:52:51,216.216 INFO    ] 200
[2026-06-22 05:52:51,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:52:51,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:52:51,274.274 INFO    ] No update needed
[2026-06-22 05:52:51,277.277 INFO    ] Checking for camera pi updates...
[2026-06-22 05:52:51,317.317 INFO    ] 200
[2026-06-22 05:52:51,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:52:51,361.361 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:52:51,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:52:51,436.436 INFO    ] No camera update needed
[2026-06-22 05:52:51,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:52:51,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:52:51,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:52:51,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:52:53,493.493 INFO    ] ================================================
[2026-06-22 05:52:53,508.508 INFO    ] Launching Daemon at Mon Jun 22 05:52:53 IST 2026
[2026-06-22 05:52:53,519.519 INFO    ] ================================================
[2026-06-22 05:52:54,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:52:54
[2026-06-22 05:52:54,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:52:54,880.880 INFO    ] Initializing speech engine...
[2026-06-22 05:52:54,889.889 INFO    ] 2026-06-22 05:52:54
[2026-06-22 05:52:55,139.139 INFO    ] 2026-06-22 05:52:55
[2026-06-22 05:52:55,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:52:55,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:52:55,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:52:55,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:52:55,610.610 INFO    ] time= 22/06/2026 05:52:55
[2026-06-22 05:52:55,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:52:55,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:52:55,756.756 INFO    ] No existing commands found in stream
[2026-06-22 05:53:00,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:53:00,769.769 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-22 05:53:03,984.984 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:53:03,987.987 INFO    ] Checking for system updates...
[2026-06-22 05:53:04,026.026 INFO    ] 200
[2026-06-22 05:53:04,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:53:04,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:53:04,084.084 INFO    ] No update needed
[2026-06-22 05:53:04,087.087 INFO    ] Checking for camera pi updates...
[2026-06-22 05:53:04,121.121 INFO    ] 200
[2026-06-22 05:53:04,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:53:04,165.165 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:53:04,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:53:04,242.242 INFO    ] No camera update needed
[2026-06-22 05:53:04,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:53:04,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:53:04,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:53:04,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:53:06,299.299 INFO    ] ================================================
[2026-06-22 05:53:06,315.315 INFO    ] Launching Daemon at Mon Jun 22 05:53:06 IST 2026
[2026-06-22 05:53:06,326.326 INFO    ] ================================================
[2026-06-22 05:53:06,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:53:06
[2026-06-22 05:53:07,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:53:07,741.741 INFO    ] Initializing speech engine...
[2026-06-22 05:53:07,750.750 INFO    ] 2026-06-22 05:53:07
[2026-06-22 05:53:08,039.039 INFO    ] 2026-06-22 05:53:08
[2026-06-22 05:53:08,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:53:08,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:53:08,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:53:08,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:53:08,411.411 INFO    ] time= 22/06/2026 05:53:08
[2026-06-22 05:53:08,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:53:08,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:53:08,532.532 INFO    ] No existing commands found in stream
[2026-06-22 05:53:13,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:53:13,548.548 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-22 05:53:16,205.205 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:53:16,208.208 INFO    ] Checking for system updates...
[2026-06-22 05:53:16,246.246 INFO    ] 200
[2026-06-22 05:53:16,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:53:16,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:53:16,306.306 INFO    ] No update needed
[2026-06-22 05:53:16,309.309 INFO    ] Checking for camera pi updates...
[2026-06-22 05:53:16,343.343 INFO    ] 200
[2026-06-22 05:53:16,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:53:16,386.386 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:53:16,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:53:16,471.471 INFO    ] No camera update needed
[2026-06-22 05:53:16,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:53:16,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:53:16,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:53:16,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:53:18,527.527 INFO    ] ================================================
[2026-06-22 05:53:18,542.542 INFO    ] Launching Daemon at Mon Jun 22 05:53:18 IST 2026
[2026-06-22 05:53:18,552.552 INFO    ] ================================================
[2026-06-22 05:53:19,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:53:19
[2026-06-22 05:53:19,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:53:19,907.907 INFO    ] Initializing speech engine...
[2026-06-22 05:53:19,930.930 INFO    ] 2026-06-22 05:53:19
[2026-06-22 05:53:20,205.205 INFO    ] 2026-06-22 05:53:20
[2026-06-22 05:53:20,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:53:21,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:53:21,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:53:21,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:53:21,322.322 INFO    ] time= 22/06/2026 05:53:21
[2026-06-22 05:53:21,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:53:21,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:53:21,430.430 INFO    ] No existing commands found in stream
[2026-06-22 05:53:26,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:53:26,443.443 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-22 05:53:27,105.105 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:53:27,106.106 INFO    ] Checking for system updates...
[2026-06-22 05:53:27,128.128 INFO    ] 200
[2026-06-22 05:53:27,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:53:27,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:53:27,166.166 INFO    ] No update needed
[2026-06-22 05:53:27,168.168 INFO    ] Checking for camera pi updates...
[2026-06-22 05:53:27,188.188 INFO    ] 200
[2026-06-22 05:53:27,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:53:27,232.232 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:53:27,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:53:27,313.313 INFO    ] No camera update needed
[2026-06-22 05:53:27,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:53:27,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:53:27,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:53:27,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:53:29,371.371 INFO    ] ================================================
[2026-06-22 05:53:29,386.386 INFO    ] Launching Daemon at Mon Jun 22 05:53:29 IST 2026
[2026-06-22 05:53:29,397.397 INFO    ] ================================================
[2026-06-22 05:53:29,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:53:29
[2026-06-22 05:53:30,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:53:30,810.810 INFO    ] Initializing speech engine...
[2026-06-22 05:53:30,825.825 INFO    ] 2026-06-22 05:53:30
[2026-06-22 05:53:31,092.092 INFO    ] 2026-06-22 05:53:31
[2026-06-22 05:53:31,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:53:31,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:53:31,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:53:31,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:53:31,496.496 INFO    ] time= 22/06/2026 05:53:31
[2026-06-22 05:53:31,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:53:31,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:53:31,647.647 INFO    ] No existing commands found in stream
[2026-06-22 05:53:36,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:53:36,675.675 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-22 05:53:40,766.766 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:53:40,767.767 INFO    ] Checking for system updates...
[2026-06-22 05:53:40,788.788 INFO    ] 200
[2026-06-22 05:53:40,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:53:40,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:53:40,831.831 INFO    ] No update needed
[2026-06-22 05:53:40,834.834 INFO    ] Checking for camera pi updates...
[2026-06-22 05:53:40,867.867 INFO    ] 200
[2026-06-22 05:53:40,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:53:40,910.910 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:53:40,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:53:40,992.992 INFO    ] No camera update needed
[2026-06-22 05:53:40,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:53:40,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:53:41,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:53:41,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:53:43,047.047 INFO    ] ================================================
[2026-06-22 05:53:43,062.062 INFO    ] Launching Daemon at Mon Jun 22 05:53:43 IST 2026
[2026-06-22 05:53:43,073.073 INFO    ] ================================================
[2026-06-22 05:53:43,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:53:43
[2026-06-22 05:53:44,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:53:44,406.406 INFO    ] Initializing speech engine...
[2026-06-22 05:53:44,412.412 INFO    ] 2026-06-22 05:53:44
[2026-06-22 05:53:44,701.701 INFO    ] 2026-06-22 05:53:44
[2026-06-22 05:53:44,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:53:44,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:53:44,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:53:45,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:53:45,113.113 INFO    ] time= 22/06/2026 05:53:45
[2026-06-22 05:53:45,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:53:45,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:53:45,205.205 INFO    ] No existing commands found in stream
[2026-06-22 05:53:50,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:53:50,238.238 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-22 05:53:51,425.425 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:53:51,427.427 INFO    ] Checking for system updates...
[2026-06-22 05:53:51,447.447 INFO    ] 200
[2026-06-22 05:53:51,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:53:51,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:53:51,482.482 INFO    ] No update needed
[2026-06-22 05:53:51,484.484 INFO    ] Checking for camera pi updates...
[2026-06-22 05:53:51,503.503 INFO    ] 200
[2026-06-22 05:53:51,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:53:51,550.550 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:53:51,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:53:51,632.632 INFO    ] No camera update needed
[2026-06-22 05:53:51,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:53:51,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:53:51,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:53:51,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:53:53,688.688 INFO    ] ================================================
[2026-06-22 05:53:53,703.703 INFO    ] Launching Daemon at Mon Jun 22 05:53:53 IST 2026
[2026-06-22 05:53:53,714.714 INFO    ] ================================================
[2026-06-22 05:53:54,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:53:54
[2026-06-22 05:53:54,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:53:55,068.068 INFO    ] Initializing speech engine...
[2026-06-22 05:53:55,078.078 INFO    ] 2026-06-22 05:53:55
[2026-06-22 05:53:55,325.325 INFO    ] 2026-06-22 05:53:55
[2026-06-22 05:53:55,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:53:55,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:53:55,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:53:55,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:53:55,791.791 INFO    ] time= 22/06/2026 05:53:55
[2026-06-22 05:53:55,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:53:55,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:53:55,940.940 INFO    ] No existing commands found in stream
[2026-06-22 05:54:00,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:54:00,955.955 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-22 05:54:04,375.375 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:54:04,378.378 INFO    ] Checking for system updates...
[2026-06-22 05:54:04,414.414 INFO    ] 200
[2026-06-22 05:54:04,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:54:04,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:54:04,482.482 INFO    ] No update needed
[2026-06-22 05:54:04,484.484 INFO    ] Checking for camera pi updates...
[2026-06-22 05:54:04,518.518 INFO    ] 200
[2026-06-22 05:54:04,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:54:04,565.565 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:54:04,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:54:04,647.647 INFO    ] No camera update needed
[2026-06-22 05:54:04,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:54:04,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:54:04,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:54:04,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:54:06,708.708 INFO    ] ================================================
[2026-06-22 05:54:06,726.726 INFO    ] Launching Daemon at Mon Jun 22 05:54:06 IST 2026
[2026-06-22 05:54:06,739.739 INFO    ] ================================================
[2026-06-22 05:54:07,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:54:07
[2026-06-22 05:54:08,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:54:08,349.349 INFO    ] Initializing speech engine...
[2026-06-22 05:54:08,355.355 INFO    ] 2026-06-22 05:54:08
[2026-06-22 05:54:08,627.627 INFO    ] 2026-06-22 05:54:08
[2026-06-22 05:54:08,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:54:08,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:54:08,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:54:09,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:54:09,117.117 INFO    ] time= 22/06/2026 05:54:09
[2026-06-22 05:54:09,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:54:09,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:54:09,241.241 INFO    ] No existing commands found in stream
[2026-06-22 05:54:14,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:54:14,257.257 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-22 05:54:16,009.009 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:54:16,011.011 INFO    ] Checking for system updates...
[2026-06-22 05:54:16,040.040 INFO    ] 200
[2026-06-22 05:54:16,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:54:16,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:54:16,106.106 INFO    ] No update needed
[2026-06-22 05:54:16,108.108 INFO    ] Checking for camera pi updates...
[2026-06-22 05:54:16,143.143 INFO    ] 200
[2026-06-22 05:54:16,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:54:16,189.189 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:54:16,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:54:16,373.373 INFO    ] No camera update needed
[2026-06-22 05:54:16,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:54:16,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:54:16,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:54:16,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:54:18,433.433 INFO    ] ================================================
[2026-06-22 05:54:18,448.448 INFO    ] Launching Daemon at Mon Jun 22 05:54:18 IST 2026
[2026-06-22 05:54:18,459.459 INFO    ] ================================================
[2026-06-22 05:54:19,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:54:19
[2026-06-22 05:54:19,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:54:19,785.785 INFO    ] Initializing speech engine...
[2026-06-22 05:54:19,804.804 INFO    ] 2026-06-22 05:54:19
[2026-06-22 05:54:20,054.054 INFO    ] 2026-06-22 05:54:20
[2026-06-22 05:54:20,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:54:21,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:54:21,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:54:21,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:54:21,430.430 INFO    ] time= 22/06/2026 05:54:21
[2026-06-22 05:54:21,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:54:21,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:54:21,491.491 INFO    ] No existing commands found in stream
[2026-06-22 05:54:26,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:54:26,506.506 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-22 05:54:28,297.297 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:54:28,300.300 INFO    ] Checking for system updates...
[2026-06-22 05:54:28,350.350 INFO    ] 200
[2026-06-22 05:54:28,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:54:28,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:54:28,433.433 INFO    ] No update needed
[2026-06-22 05:54:28,437.437 INFO    ] Checking for camera pi updates...
[2026-06-22 05:54:28,483.483 INFO    ] 200
[2026-06-22 05:54:28,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:54:28,531.531 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:54:28,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:54:28,606.606 INFO    ] No camera update needed
[2026-06-22 05:54:28,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:54:28,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:54:28,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:54:28,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:54:30,661.661 INFO    ] ================================================
[2026-06-22 05:54:30,676.676 INFO    ] Launching Daemon at Mon Jun 22 05:54:30 IST 2026
[2026-06-22 05:54:30,686.686 INFO    ] ================================================
[2026-06-22 05:54:31,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:54:31
[2026-06-22 05:54:31,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:54:32,029.029 INFO    ] Initializing speech engine...
[2026-06-22 05:54:32,036.036 INFO    ] 2026-06-22 05:54:32
[2026-06-22 05:54:32,323.323 INFO    ] 2026-06-22 05:54:32
[2026-06-22 05:54:32,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:54:32,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:54:32,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:54:32,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:54:32,700.700 INFO    ] time= 22/06/2026 05:54:32
[2026-06-22 05:54:32,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:54:32,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:54:32,802.802 INFO    ] No existing commands found in stream
[2026-06-22 05:54:37,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:54:37,817.817 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-22 05:54:38,813.813 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:54:38,816.816 INFO    ] Checking for system updates...
[2026-06-22 05:54:38,855.855 INFO    ] 200
[2026-06-22 05:54:38,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:54:38,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:54:38,913.913 INFO    ] No update needed
[2026-06-22 05:54:38,915.915 INFO    ] Checking for camera pi updates...
[2026-06-22 05:54:38,953.953 INFO    ] 200
[2026-06-22 05:54:38,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:54:38,997.997 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:54:39,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:54:39,101.101 INFO    ] No camera update needed
[2026-06-22 05:54:39,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:54:39,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:54:39,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:54:39,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:54:41,162.162 INFO    ] ================================================
[2026-06-22 05:54:41,177.177 INFO    ] Launching Daemon at Mon Jun 22 05:54:41 IST 2026
[2026-06-22 05:54:41,187.187 INFO    ] ================================================
[2026-06-22 05:54:41,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:54:41
[2026-06-22 05:54:42,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:54:42,534.534 INFO    ] Initializing speech engine...
[2026-06-22 05:54:42,547.547 INFO    ] 2026-06-22 05:54:42
[2026-06-22 05:54:42,795.795 INFO    ] 2026-06-22 05:54:42
[2026-06-22 05:54:42,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:54:43,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:54:43,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:54:43,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:54:43,230.230 INFO    ] time= 22/06/2026 05:54:43
[2026-06-22 05:54:43,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:54:43,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:54:43,411.411 INFO    ] No existing commands found in stream
[2026-06-22 05:54:48,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:54:48,427.427 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-22 05:54:50,397.397 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:54:50,400.400 INFO    ] Checking for system updates...
[2026-06-22 05:54:50,437.437 INFO    ] 200
[2026-06-22 05:54:50,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:54:50,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:54:50,501.501 INFO    ] No update needed
[2026-06-22 05:54:50,504.504 INFO    ] Checking for camera pi updates...
[2026-06-22 05:54:50,539.539 INFO    ] 200
[2026-06-22 05:54:50,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:54:50,585.585 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:54:50,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:54:50,671.671 INFO    ] No camera update needed
[2026-06-22 05:54:50,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:54:50,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:54:50,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:54:50,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:54:52,731.731 INFO    ] ================================================
[2026-06-22 05:54:52,746.746 INFO    ] Launching Daemon at Mon Jun 22 05:54:52 IST 2026
[2026-06-22 05:54:52,757.757 INFO    ] ================================================
[2026-06-22 05:54:53,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:54:53
[2026-06-22 05:54:53,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:54:54,106.106 INFO    ] Initializing speech engine...
[2026-06-22 05:54:54,113.113 INFO    ] 2026-06-22 05:54:54
[2026-06-22 05:54:54,406.406 INFO    ] 2026-06-22 05:54:54
[2026-06-22 05:54:54,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:54:54,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:54:54,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:54:54,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:54:54,780.780 INFO    ] time= 22/06/2026 05:54:54
[2026-06-22 05:54:54,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:54:54,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:54:54,904.904 INFO    ] No existing commands found in stream
[2026-06-22 05:54:59,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:54:59,917.917 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-22 05:55:02,592.592 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:55:02,595.595 INFO    ] Checking for system updates...
[2026-06-22 05:55:02,647.647 INFO    ] 200
[2026-06-22 05:55:02,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:55:02,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:55:02,736.736 INFO    ] No update needed
[2026-06-22 05:55:02,740.740 INFO    ] Checking for camera pi updates...
[2026-06-22 05:55:02,797.797 INFO    ] 200
[2026-06-22 05:55:02,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:55:02,849.849 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:55:02,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:55:02,934.934 INFO    ] No camera update needed
[2026-06-22 05:55:02,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:55:02,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:55:02,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:55:02,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:55:05,001.001 INFO    ] ================================================
[2026-06-22 05:55:05,016.016 INFO    ] Launching Daemon at Mon Jun 22 05:55:05 IST 2026
[2026-06-22 05:55:05,027.027 INFO    ] ================================================
[2026-06-22 05:55:05,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:55:05
[2026-06-22 05:55:06,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:55:06,586.586 INFO    ] Initializing speech engine...
[2026-06-22 05:55:06,592.592 INFO    ] 2026-06-22 05:55:06
[2026-06-22 05:55:06,792.792 INFO    ] 2026-06-22 05:55:06
[2026-06-22 05:55:06,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:55:07,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:55:07,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:55:07,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:55:07,277.277 INFO    ] time= 22/06/2026 05:55:07
[2026-06-22 05:55:07,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:55:07,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:55:07,478.478 INFO    ] No existing commands found in stream
[2026-06-22 05:55:12,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:55:12,492.492 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-22 05:55:14,333.333 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:55:14,336.336 INFO    ] Checking for system updates...
[2026-06-22 05:55:14,372.372 INFO    ] 200
[2026-06-22 05:55:14,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:55:14,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:55:14,430.430 INFO    ] No update needed
[2026-06-22 05:55:14,433.433 INFO    ] Checking for camera pi updates...
[2026-06-22 05:55:14,467.467 INFO    ] 200
[2026-06-22 05:55:14,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:55:14,510.510 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:55:14,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:55:14,595.595 INFO    ] No camera update needed
[2026-06-22 05:55:14,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:55:14,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:55:14,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:55:14,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:55:16,650.650 INFO    ] ================================================
[2026-06-22 05:55:16,665.665 INFO    ] Launching Daemon at Mon Jun 22 05:55:16 IST 2026
[2026-06-22 05:55:16,676.676 INFO    ] ================================================
[2026-06-22 05:55:17,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:55:17
[2026-06-22 05:55:17,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:55:18,042.042 INFO    ] Initializing speech engine...
[2026-06-22 05:55:18,048.048 INFO    ] 2026-06-22 05:55:18
[2026-06-22 05:55:18,308.308 INFO    ] 2026-06-22 05:55:18
[2026-06-22 05:55:18,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:55:18,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:55:18,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:55:18,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:55:18,772.772 INFO    ] time= 22/06/2026 05:55:18
[2026-06-22 05:55:18,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:55:18,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:55:18,949.949 INFO    ] No existing commands found in stream
[2026-06-22 05:55:23,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:55:23,983.983 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-22 05:55:26,271.271 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:55:26,275.275 INFO    ] Checking for system updates...
[2026-06-22 05:55:26,313.313 INFO    ] 200
[2026-06-22 05:55:26,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:55:26,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:55:26,374.374 INFO    ] No update needed
[2026-06-22 05:55:26,377.377 INFO    ] Checking for camera pi updates...
[2026-06-22 05:55:26,412.412 INFO    ] 200
[2026-06-22 05:55:26,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:55:26,456.456 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:55:26,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:55:26,539.539 INFO    ] No camera update needed
[2026-06-22 05:55:26,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:55:26,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:55:26,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:55:26,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:55:28,596.596 INFO    ] ================================================
[2026-06-22 05:55:28,611.611 INFO    ] Launching Daemon at Mon Jun 22 05:55:28 IST 2026
[2026-06-22 05:55:28,621.621 INFO    ] ================================================
[2026-06-22 05:55:29,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:55:29
[2026-06-22 05:55:29,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:55:29,958.958 INFO    ] Initializing speech engine...
[2026-06-22 05:55:29,964.964 INFO    ] 2026-06-22 05:55:29
[2026-06-22 05:55:30,222.222 INFO    ] 2026-06-22 05:55:30
[2026-06-22 05:55:30,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:55:30,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:55:30,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:55:30,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:55:30,580.580 INFO    ] time= 22/06/2026 05:55:30
[2026-06-22 05:55:30,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:55:30,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:55:30,741.741 INFO    ] No existing commands found in stream
[2026-06-22 05:55:35,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:55:35,774.774 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-22 05:55:39,390.390 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:55:39,393.393 INFO    ] Checking for system updates...
[2026-06-22 05:55:39,430.430 INFO    ] 200
[2026-06-22 05:55:39,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:55:39,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:55:39,494.494 INFO    ] No update needed
[2026-06-22 05:55:39,497.497 INFO    ] Checking for camera pi updates...
[2026-06-22 05:55:39,531.531 INFO    ] 200
[2026-06-22 05:55:39,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:55:39,574.574 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:55:39,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:55:39,655.655 INFO    ] No camera update needed
[2026-06-22 05:55:39,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:55:39,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:55:39,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:55:39,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:55:41,712.712 INFO    ] ================================================
[2026-06-22 05:55:41,728.728 INFO    ] Launching Daemon at Mon Jun 22 05:55:41 IST 2026
[2026-06-22 05:55:41,739.739 INFO    ] ================================================
[2026-06-22 05:55:42,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:55:42
[2026-06-22 05:55:42,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:55:43,213.213 INFO    ] Initializing speech engine...
[2026-06-22 05:55:43,222.222 INFO    ] 2026-06-22 05:55:43
[2026-06-22 05:55:43,469.469 INFO    ] 2026-06-22 05:55:43
[2026-06-22 05:55:43,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:55:43,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:55:43,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:55:43,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:55:43,837.837 INFO    ] time= 22/06/2026 05:55:43
[2026-06-22 05:55:43,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:55:43,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:55:44,021.021 INFO    ] No existing commands found in stream
[2026-06-22 05:55:49,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:55:49,046.046 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-22 05:55:51,346.346 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:55:51,349.349 INFO    ] Checking for system updates...
[2026-06-22 05:55:51,390.390 INFO    ] 200
[2026-06-22 05:55:51,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:55:51,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:55:51,448.448 INFO    ] No update needed
[2026-06-22 05:55:51,451.451 INFO    ] Checking for camera pi updates...
[2026-06-22 05:55:51,485.485 INFO    ] 200
[2026-06-22 05:55:51,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:55:51,529.529 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:55:51,633.633 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:55:51,636.636 INFO    ] No camera update needed
[2026-06-22 05:55:51,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:55:51,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:55:51,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:55:51,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:55:53,692.692 INFO    ] ================================================
[2026-06-22 05:55:53,708.708 INFO    ] Launching Daemon at Mon Jun 22 05:55:53 IST 2026
[2026-06-22 05:55:53,719.719 INFO    ] ================================================
[2026-06-22 05:55:54,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:55:54
[2026-06-22 05:55:54,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:55:55,061.061 INFO    ] Initializing speech engine...
[2026-06-22 05:55:55,071.071 INFO    ] 2026-06-22 05:55:55
[2026-06-22 05:55:55,340.340 INFO    ] 2026-06-22 05:55:55
[2026-06-22 05:55:55,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:55:55,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:55:55,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:55:55,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:55:55,720.720 INFO    ] time= 22/06/2026 05:55:55
[2026-06-22 05:55:55,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:55:55,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:55:55,850.850 INFO    ] No existing commands found in stream
[2026-06-22 05:56:00,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:56:00,862.862 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-22 05:56:03,525.525 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:56:03,528.528 INFO    ] Checking for system updates...
[2026-06-22 05:56:03,571.571 INFO    ] 200
[2026-06-22 05:56:03,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:56:03,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:56:03,631.631 INFO    ] No update needed
[2026-06-22 05:56:03,633.633 INFO    ] Checking for camera pi updates...
[2026-06-22 05:56:03,676.676 INFO    ] 200
[2026-06-22 05:56:03,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:56:03,722.722 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:56:03,773.773 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:56:03,776.776 INFO    ] No camera update needed
[2026-06-22 05:56:03,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:56:03,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:56:03,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:56:03,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:56:05,833.833 INFO    ] ================================================
[2026-06-22 05:56:05,849.849 INFO    ] Launching Daemon at Mon Jun 22 05:56:05 IST 2026
[2026-06-22 05:56:05,860.860 INFO    ] ================================================
[2026-06-22 05:56:06,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:56:06
[2026-06-22 05:56:07,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:56:07,350.350 INFO    ] Initializing speech engine...
[2026-06-22 05:56:07,361.361 INFO    ] 2026-06-22 05:56:07
[2026-06-22 05:56:07,612.612 INFO    ] 2026-06-22 05:56:07
[2026-06-22 05:56:07,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:56:07,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:56:07,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:56:07,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:56:07,992.992 INFO    ] time= 22/06/2026 05:56:07
[2026-06-22 05:56:08,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:56:08,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:56:08,146.146 INFO    ] No existing commands found in stream
[2026-06-22 05:56:13,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:56:13,179.179 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-22 05:56:15,910.910 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:56:15,912.912 INFO    ] Checking for system updates...
[2026-06-22 05:56:15,934.934 INFO    ] 200
[2026-06-22 05:56:15,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:56:15,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:56:15,967.967 INFO    ] No update needed
[2026-06-22 05:56:15,968.968 INFO    ] Checking for camera pi updates...
[2026-06-22 05:56:15,990.990 INFO    ] 200
[2026-06-22 05:56:15,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:56:16,037.037 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:56:16,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:56:16,128.128 INFO    ] No camera update needed
[2026-06-22 05:56:16,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:56:16,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:56:16,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:56:16,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:56:18,190.190 INFO    ] ================================================
[2026-06-22 05:56:18,206.206 INFO    ] Launching Daemon at Mon Jun 22 05:56:18 IST 2026
[2026-06-22 05:56:18,218.218 INFO    ] ================================================
[2026-06-22 05:56:18,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:56:18
[2026-06-22 05:56:19,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:56:19,781.781 INFO    ] Initializing speech engine...
[2026-06-22 05:56:19,795.795 INFO    ] 2026-06-22 05:56:19
[2026-06-22 05:56:20,107.107 INFO    ] 2026-06-22 05:56:20
[2026-06-22 05:56:20,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:56:21,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:56:21,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:56:21,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:56:21,493.493 INFO    ] time= 22/06/2026 05:56:21
[2026-06-22 05:56:21,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:56:21,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:56:21,604.604 INFO    ] No existing commands found in stream
[2026-06-22 05:56:26,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:56:26,621.621 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-22 05:56:30,355.355 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:56:30,357.357 INFO    ] Checking for system updates...
[2026-06-22 05:56:30,393.393 INFO    ] 200
[2026-06-22 05:56:30,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:56:30,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:56:30,459.459 INFO    ] No update needed
[2026-06-22 05:56:30,461.461 INFO    ] Checking for camera pi updates...
[2026-06-22 05:56:30,499.499 INFO    ] 200
[2026-06-22 05:56:30,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:56:30,543.543 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:56:30,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:56:30,730.730 INFO    ] No camera update needed
[2026-06-22 05:56:30,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:56:30,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:56:30,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:56:30,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:56:32,790.790 INFO    ] ================================================
[2026-06-22 05:56:32,809.809 INFO    ] Launching Daemon at Mon Jun 22 05:56:32 IST 2026
[2026-06-22 05:56:32,822.822 INFO    ] ================================================
[2026-06-22 05:56:33,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:56:33
[2026-06-22 05:56:34,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:56:34,530.530 INFO    ] Initializing speech engine...
[2026-06-22 05:56:34,543.543 INFO    ] 2026-06-22 05:56:34
[2026-06-22 05:56:34,838.838 INFO    ] 2026-06-22 05:56:34
[2026-06-22 05:56:34,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:56:35,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:56:35,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:56:35,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:56:35,333.333 INFO    ] time= 22/06/2026 05:56:35
[2026-06-22 05:56:35,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:56:35,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:56:35,511.511 INFO    ] No existing commands found in stream
[2026-06-22 05:56:40,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:56:40,540.540 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-22 05:56:41,370.370 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:56:41,373.373 INFO    ] Checking for system updates...
[2026-06-22 05:56:41,411.411 INFO    ] 200
[2026-06-22 05:56:41,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:56:41,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:56:41,471.471 INFO    ] No update needed
[2026-06-22 05:56:41,473.473 INFO    ] Checking for camera pi updates...
[2026-06-22 05:56:41,509.509 INFO    ] 200
[2026-06-22 05:56:41,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:56:41,553.553 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:56:41,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:56:41,646.646 INFO    ] No camera update needed
[2026-06-22 05:56:41,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:56:41,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:56:41,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:56:41,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:56:43,706.706 INFO    ] ================================================
[2026-06-22 05:56:43,722.722 INFO    ] Launching Daemon at Mon Jun 22 05:56:43 IST 2026
[2026-06-22 05:56:43,733.733 INFO    ] ================================================
[2026-06-22 05:56:44,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:56:44
[2026-06-22 05:56:44,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:56:45,285.285 INFO    ] Initializing speech engine...
[2026-06-22 05:56:45,298.298 INFO    ] 2026-06-22 05:56:45
[2026-06-22 05:56:45,611.611 INFO    ] 2026-06-22 05:56:45
[2026-06-22 05:56:45,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:56:45,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:56:45,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:56:46,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:56:46,121.121 INFO    ] time= 22/06/2026 05:56:46
[2026-06-22 05:56:46,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:56:46,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:56:46,258.258 INFO    ] No existing commands found in stream
[2026-06-22 05:56:51,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:56:51,292.292 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-22 05:56:54,208.208 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:56:54,210.210 INFO    ] Checking for system updates...
[2026-06-22 05:56:54,232.232 INFO    ] 200
[2026-06-22 05:56:54,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:56:54,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:56:54,269.269 INFO    ] No update needed
[2026-06-22 05:56:54,270.270 INFO    ] Checking for camera pi updates...
[2026-06-22 05:56:54,293.293 INFO    ] 200
[2026-06-22 05:56:54,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:56:54,318.318 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:56:54,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:56:54,410.410 INFO    ] No camera update needed
[2026-06-22 05:56:54,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:56:54,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:56:54,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:56:54,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:56:56,470.470 INFO    ] ================================================
[2026-06-22 05:56:56,487.487 INFO    ] Launching Daemon at Mon Jun 22 05:56:56 IST 2026
[2026-06-22 05:56:56,498.498 INFO    ] ================================================
[2026-06-22 05:56:57,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:56:57
[2026-06-22 05:56:57,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:56:57,824.824 INFO    ] Initializing speech engine...
[2026-06-22 05:56:57,840.840 INFO    ] 2026-06-22 05:56:57
[2026-06-22 05:56:58,128.128 INFO    ] 2026-06-22 05:56:58
[2026-06-22 05:56:58,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:56:58,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:56:58,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:56:58,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:56:58,512.512 INFO    ] time= 22/06/2026 05:56:58
[2026-06-22 05:56:58,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:56:58,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:56:58,641.641 INFO    ] No existing commands found in stream
[2026-06-22 05:57:03,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:57:03,656.656 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-22 05:57:07,147.147 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:57:07,149.149 INFO    ] Checking for system updates...
[2026-06-22 05:57:07,171.171 INFO    ] 200
[2026-06-22 05:57:07,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:57:07,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:57:07,207.207 INFO    ] No update needed
[2026-06-22 05:57:07,208.208 INFO    ] Checking for camera pi updates...
[2026-06-22 05:57:07,231.231 INFO    ] 200
[2026-06-22 05:57:07,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:57:07,269.269 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:57:07,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:57:07,350.350 INFO    ] No camera update needed
[2026-06-22 05:57:07,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:57:07,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:57:07,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:57:07,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:57:09,407.407 INFO    ] ================================================
[2026-06-22 05:57:09,423.423 INFO    ] Launching Daemon at Mon Jun 22 05:57:09 IST 2026
[2026-06-22 05:57:09,434.434 INFO    ] ================================================
[2026-06-22 05:57:10,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:57:10
[2026-06-22 05:57:10,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:57:10,775.775 INFO    ] Initializing speech engine...
[2026-06-22 05:57:10,784.784 INFO    ] 2026-06-22 05:57:10
[2026-06-22 05:57:11,030.030 INFO    ] 2026-06-22 05:57:11
[2026-06-22 05:57:11,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:57:11,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:57:11,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:57:11,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:57:11,500.500 INFO    ] time= 22/06/2026 05:57:11
[2026-06-22 05:57:11,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:57:11,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:57:11,647.647 INFO    ] No existing commands found in stream
[2026-06-22 05:57:16,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:57:16,662.662 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-22 05:57:21,339.339 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:57:21,342.342 INFO    ] Checking for system updates...
[2026-06-22 05:57:21,377.377 INFO    ] 200
[2026-06-22 05:57:21,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:57:21,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:57:21,454.454 INFO    ] No update needed
[2026-06-22 05:57:21,456.456 INFO    ] Checking for camera pi updates...
[2026-06-22 05:57:21,490.490 INFO    ] 200
[2026-06-22 05:57:21,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:57:21,539.539 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:57:21,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:57:21,619.619 INFO    ] No camera update needed
[2026-06-22 05:57:21,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:57:21,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:57:21,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:57:21,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:57:23,676.676 INFO    ] ================================================
[2026-06-22 05:57:23,692.692 INFO    ] Launching Daemon at Mon Jun 22 05:57:23 IST 2026
[2026-06-22 05:57:23,703.703 INFO    ] ================================================
[2026-06-22 05:57:24,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:57:24
[2026-06-22 05:57:24,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:57:25,288.288 INFO    ] Initializing speech engine...
[2026-06-22 05:57:25,299.299 INFO    ] 2026-06-22 05:57:25
[2026-06-22 05:57:25,612.612 INFO    ] 2026-06-22 05:57:25
[2026-06-22 05:57:25,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:57:25,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:57:25,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:57:26,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:57:26,122.122 INFO    ] time= 22/06/2026 05:57:26
[2026-06-22 05:57:26,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:57:26,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:57:26,275.275 INFO    ] No existing commands found in stream
[2026-06-22 05:57:31,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:57:31,297.297 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-22 05:57:32,418.418 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 05:57:32,423.423 INFO    ] Checking for system updates...
[2026-06-22 05:57:32,475.475 INFO    ] 200
[2026-06-22 05:57:32,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:57:32,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:57:32,545.545 INFO    ] No update needed
[2026-06-22 05:57:32,549.549 INFO    ] Checking for camera pi updates...
[2026-06-22 05:57:32,586.586 INFO    ] 200
[2026-06-22 05:57:32,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:57:32,637.637 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:57:32,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:57:32,691.691 INFO    ] No camera update needed
[2026-06-22 05:57:32,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:57:32,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:57:32,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:57:32,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:57:34,750.750 INFO    ] ================================================
[2026-06-22 05:57:34,766.766 INFO    ] Launching Daemon at Mon Jun 22 05:57:34 IST 2026
[2026-06-22 05:57:34,777.777 INFO    ] ================================================
[2026-06-22 05:57:35,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:57:35
[2026-06-22 05:57:36,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:57:36,348.348 INFO    ] Initializing speech engine...
[2026-06-22 05:57:36,362.362 INFO    ] 2026-06-22 05:57:36
[2026-06-22 05:57:36,652.652 INFO    ] 2026-06-22 05:57:36
[2026-06-22 05:57:36,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:57:36,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:57:36,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:57:37,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:57:37,165.165 INFO    ] time= 22/06/2026 05:57:37
[2026-06-22 05:57:37,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:57:37,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:57:37,351.351 INFO    ] No existing commands found in stream
[2026-06-22 05:57:42,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:57:42,388.388 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-22 05:57:43,223.223 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:57:43,225.225 INFO    ] Checking for system updates...
[2026-06-22 05:57:43,247.247 INFO    ] 200
[2026-06-22 05:57:43,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:57:43,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:57:43,304.304 INFO    ] No update needed
[2026-06-22 05:57:43,307.307 INFO    ] Checking for camera pi updates...
[2026-06-22 05:57:43,345.345 INFO    ] 200
[2026-06-22 05:57:43,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:57:43,389.389 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:57:43,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:57:43,478.478 INFO    ] No camera update needed
[2026-06-22 05:57:43,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:57:43,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:57:43,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:57:43,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:57:45,536.536 INFO    ] ================================================
[2026-06-22 05:57:45,552.552 INFO    ] Launching Daemon at Mon Jun 22 05:57:45 IST 2026
[2026-06-22 05:57:45,563.563 INFO    ] ================================================
[2026-06-22 05:57:46,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:57:46
[2026-06-22 05:57:46,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:57:46,894.894 INFO    ] Initializing speech engine...
[2026-06-22 05:57:46,925.925 INFO    ] 2026-06-22 05:57:46
[2026-06-22 05:57:47,178.178 INFO    ] 2026-06-22 05:57:47
[2026-06-22 05:57:47,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:57:47,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:57:47,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:57:47,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:57:47,530.530 INFO    ] time= 22/06/2026 05:57:47
[2026-06-22 05:57:47,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:57:47,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:57:47,629.629 INFO    ] No existing commands found in stream
[2026-06-22 05:57:52,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:57:52,667.667 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-22 05:57:53,768.768 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:57:53,769.769 INFO    ] Checking for system updates...
[2026-06-22 05:57:53,791.791 INFO    ] 200
[2026-06-22 05:57:53,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:57:53,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:57:53,823.823 INFO    ] No update needed
[2026-06-22 05:57:53,825.825 INFO    ] Checking for camera pi updates...
[2026-06-22 05:57:53,846.846 INFO    ] 200
[2026-06-22 05:57:53,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:57:53,883.883 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:57:53,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:57:53,968.968 INFO    ] No camera update needed
[2026-06-22 05:57:53,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:57:53,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:57:53,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:57:53,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:57:56,027.027 INFO    ] ================================================
[2026-06-22 05:57:56,043.043 INFO    ] Launching Daemon at Mon Jun 22 05:57:56 IST 2026
[2026-06-22 05:57:56,053.053 INFO    ] ================================================
[2026-06-22 05:57:56,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:57:56
[2026-06-22 05:57:57,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:57:57,401.401 INFO    ] Initializing speech engine...
[2026-06-22 05:57:57,410.410 INFO    ] 2026-06-22 05:57:57
[2026-06-22 05:57:57,657.657 INFO    ] 2026-06-22 05:57:57
[2026-06-22 05:57:57,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:57:57,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:57:57,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:57:58,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:57:58,127.127 INFO    ] time= 22/06/2026 05:57:58
[2026-06-22 05:57:58,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:57:58,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:57:58,276.276 INFO    ] No existing commands found in stream
[2026-06-22 05:58:03,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:58:03,290.290 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-22 05:58:05,380.380 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 05:58:05,382.382 INFO    ] Checking for system updates...
[2026-06-22 05:58:05,419.419 INFO    ] 200
[2026-06-22 05:58:05,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:58:05,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:58:05,477.477 INFO    ] No update needed
[2026-06-22 05:58:05,479.479 INFO    ] Checking for camera pi updates...
[2026-06-22 05:58:05,512.512 INFO    ] 200
[2026-06-22 05:58:05,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:58:05,557.557 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:58:05,637.637 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:58:05,639.639 INFO    ] No camera update needed
[2026-06-22 05:58:05,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:58:05,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:58:05,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:58:05,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:58:07,695.695 INFO    ] ================================================
[2026-06-22 05:58:07,711.711 INFO    ] Launching Daemon at Mon Jun 22 05:58:07 IST 2026
[2026-06-22 05:58:07,722.722 INFO    ] ================================================
[2026-06-22 05:58:08,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:58:08
[2026-06-22 05:58:08,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:58:09,179.179 INFO    ] Initializing speech engine...
[2026-06-22 05:58:09,187.187 INFO    ] 2026-06-22 05:58:09
[2026-06-22 05:58:09,487.487 INFO    ] 2026-06-22 05:58:09
[2026-06-22 05:58:09,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:58:09,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:58:09,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:58:09,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:58:09,874.874 INFO    ] time= 22/06/2026 05:58:09
[2026-06-22 05:58:09,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:58:09,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:58:10,001.001 INFO    ] No existing commands found in stream
[2026-06-22 05:58:15,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:58:15,018.018 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-22 05:58:18,043.043 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:58:18,046.046 INFO    ] Checking for system updates...
[2026-06-22 05:58:18,086.086 INFO    ] 200
[2026-06-22 05:58:18,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:58:18,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:58:18,151.151 INFO    ] No update needed
[2026-06-22 05:58:18,154.154 INFO    ] Checking for camera pi updates...
[2026-06-22 05:58:18,193.193 INFO    ] 200
[2026-06-22 05:58:18,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:58:18,236.236 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:58:18,333.333 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:58:18,335.335 INFO    ] No camera update needed
[2026-06-22 05:58:18,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:58:18,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:58:18,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:58:18,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:58:20,392.392 INFO    ] ================================================
[2026-06-22 05:58:20,408.408 INFO    ] Launching Daemon at Mon Jun 22 05:58:20 IST 2026
[2026-06-22 05:58:20,419.419 INFO    ] ================================================
[2026-06-22 05:58:20,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:58:20
[2026-06-22 05:58:21,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:58:21,740.740 INFO    ] Initializing speech engine...
[2026-06-22 05:58:21,749.749 INFO    ] 2026-06-22 05:58:21
[2026-06-22 05:58:22,045.045 INFO    ] 2026-06-22 05:58:22
[2026-06-22 05:58:22,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:58:22,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:58:22,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:58:22,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:58:22,402.402 INFO    ] time= 22/06/2026 05:58:22
[2026-06-22 05:58:22,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:58:22,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:58:22,482.482 INFO    ] No existing commands found in stream
[2026-06-22 05:58:27,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:58:27,496.496 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-22 05:58:28,240.240 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:58:28,243.243 INFO    ] Checking for system updates...
[2026-06-22 05:58:28,285.285 INFO    ] 200
[2026-06-22 05:58:28,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:58:28,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:58:28,364.364 INFO    ] No update needed
[2026-06-22 05:58:28,367.367 INFO    ] Checking for camera pi updates...
[2026-06-22 05:58:28,415.415 INFO    ] 200
[2026-06-22 05:58:28,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:58:28,459.459 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:58:28,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:58:28,553.553 INFO    ] No camera update needed
[2026-06-22 05:58:28,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:58:28,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:58:28,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:58:28,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:58:30,614.614 INFO    ] ================================================
[2026-06-22 05:58:30,631.631 INFO    ] Launching Daemon at Mon Jun 22 05:58:30 IST 2026
[2026-06-22 05:58:30,642.642 INFO    ] ================================================
[2026-06-22 05:58:31,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:58:31
[2026-06-22 05:58:31,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:58:32,043.043 INFO    ] Initializing speech engine...
[2026-06-22 05:58:32,054.054 INFO    ] 2026-06-22 05:58:32
[2026-06-22 05:58:32,336.336 INFO    ] 2026-06-22 05:58:32
[2026-06-22 05:58:32,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:58:32,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:58:32,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:58:32,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:58:32,719.719 INFO    ] time= 22/06/2026 05:58:32
[2026-06-22 05:58:32,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:58:32,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:58:32,800.800 INFO    ] No existing commands found in stream
[2026-06-22 05:58:37,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:58:37,817.817 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-22 05:58:38,778.778 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:58:38,781.781 INFO    ] Checking for system updates...
[2026-06-22 05:58:38,817.817 INFO    ] 200
[2026-06-22 05:58:38,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:58:38,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:58:38,875.875 INFO    ] No update needed
[2026-06-22 05:58:38,878.878 INFO    ] Checking for camera pi updates...
[2026-06-22 05:58:38,911.911 INFO    ] 200
[2026-06-22 05:58:38,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:58:38,955.955 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:58:39,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:58:39,154.154 INFO    ] No camera update needed
[2026-06-22 05:58:39,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:58:39,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:58:39,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:58:39,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:58:41,212.212 INFO    ] ================================================
[2026-06-22 05:58:41,227.227 INFO    ] Launching Daemon at Mon Jun 22 05:58:41 IST 2026
[2026-06-22 05:58:41,238.238 INFO    ] ================================================
[2026-06-22 05:58:41,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:58:41
[2026-06-22 05:58:42,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:58:42,607.607 INFO    ] Initializing speech engine...
[2026-06-22 05:58:42,623.623 INFO    ] 2026-06-22 05:58:42
[2026-06-22 05:58:42,880.880 INFO    ] 2026-06-22 05:58:42
[2026-06-22 05:58:42,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:58:43,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:58:43,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:58:43,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:58:43,350.350 INFO    ] time= 22/06/2026 05:58:43
[2026-06-22 05:58:43,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:58:43,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:58:43,533.533 INFO    ] No existing commands found in stream
[2026-06-22 05:58:48,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:58:48,567.567 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-22 05:58:49,219.219 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 05:58:49,221.221 INFO    ] Checking for system updates...
[2026-06-22 05:58:49,243.243 INFO    ] 200
[2026-06-22 05:58:49,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:58:49,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:58:49,300.300 INFO    ] No update needed
[2026-06-22 05:58:49,303.303 INFO    ] Checking for camera pi updates...
[2026-06-22 05:58:49,337.337 INFO    ] 200
[2026-06-22 05:58:49,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:58:49,380.380 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:58:49,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:58:49,468.468 INFO    ] No camera update needed
[2026-06-22 05:58:49,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:58:49,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:58:49,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:58:49,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:58:51,525.525 INFO    ] ================================================
[2026-06-22 05:58:51,540.540 INFO    ] Launching Daemon at Mon Jun 22 05:58:51 IST 2026
[2026-06-22 05:58:51,551.551 INFO    ] ================================================
[2026-06-22 05:58:52,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:58:52
[2026-06-22 05:58:52,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:58:52,912.912 INFO    ] Initializing speech engine...
[2026-06-22 05:58:52,921.921 INFO    ] 2026-06-22 05:58:52
[2026-06-22 05:58:53,168.168 INFO    ] 2026-06-22 05:58:53
[2026-06-22 05:58:53,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:58:53,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:58:53,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:58:53,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:58:53,638.638 INFO    ] time= 22/06/2026 05:58:53
[2026-06-22 05:58:53,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:58:53,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:58:53,785.785 INFO    ] No existing commands found in stream
[2026-06-22 05:58:58,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:58:58,799.799 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-22 05:59:03,025.025 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 05:59:03,027.027 INFO    ] Checking for system updates...
[2026-06-22 05:59:03,069.069 INFO    ] 200
[2026-06-22 05:59:03,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:59:03,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:59:03,143.143 INFO    ] No update needed
[2026-06-22 05:59:03,146.146 INFO    ] Checking for camera pi updates...
[2026-06-22 05:59:03,182.182 INFO    ] 200
[2026-06-22 05:59:03,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:59:03,238.238 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:59:03,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:59:03,324.324 INFO    ] No camera update needed
[2026-06-22 05:59:03,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:59:03,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:59:03,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:59:03,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:59:05,381.381 INFO    ] ================================================
[2026-06-22 05:59:05,397.397 INFO    ] Launching Daemon at Mon Jun 22 05:59:05 IST 2026
[2026-06-22 05:59:05,407.407 INFO    ] ================================================
[2026-06-22 05:59:05,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:59:05
[2026-06-22 05:59:06,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:59:06,786.786 INFO    ] Initializing speech engine...
[2026-06-22 05:59:06,811.811 INFO    ] 2026-06-22 05:59:06
[2026-06-22 05:59:07,091.091 INFO    ] 2026-06-22 05:59:07
[2026-06-22 05:59:07,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:59:07,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:59:07,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:59:07,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:59:07,451.451 INFO    ] time= 22/06/2026 05:59:07
[2026-06-22 05:59:07,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:59:07,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:59:07,530.530 INFO    ] No existing commands found in stream
[2026-06-22 05:59:12,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:59:12,545.545 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-22 05:59:14,560.560 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:59:14,562.562 INFO    ] Checking for system updates...
[2026-06-22 05:59:14,599.599 INFO    ] 200
[2026-06-22 05:59:14,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:59:14,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:59:14,661.661 INFO    ] No update needed
[2026-06-22 05:59:14,666.666 INFO    ] Checking for camera pi updates...
[2026-06-22 05:59:14,700.700 INFO    ] 200
[2026-06-22 05:59:14,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:59:14,750.750 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:59:14,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:59:14,836.836 INFO    ] No camera update needed
[2026-06-22 05:59:14,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:59:14,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:59:14,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:59:14,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:59:16,892.892 INFO    ] ================================================
[2026-06-22 05:59:16,908.908 INFO    ] Launching Daemon at Mon Jun 22 05:59:16 IST 2026
[2026-06-22 05:59:16,918.918 INFO    ] ================================================
[2026-06-22 05:59:17,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:59:17
[2026-06-22 05:59:18,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:59:18,522.522 INFO    ] Initializing speech engine...
[2026-06-22 05:59:18,530.530 INFO    ] 2026-06-22 05:59:18
[2026-06-22 05:59:18,807.807 INFO    ] 2026-06-22 05:59:18
[2026-06-22 05:59:18,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:59:19,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:59:19,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:59:19,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:59:19,196.196 INFO    ] time= 22/06/2026 05:59:19
[2026-06-22 05:59:19,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:59:19,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:59:19,322.322 INFO    ] No existing commands found in stream
[2026-06-22 05:59:24,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:59:24,339.339 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-22 05:59:25,601.601 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 05:59:25,602.602 INFO    ] Checking for system updates...
[2026-06-22 05:59:25,623.623 INFO    ] 200
[2026-06-22 05:59:25,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:59:25,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:59:25,657.657 INFO    ] No update needed
[2026-06-22 05:59:25,658.658 INFO    ] Checking for camera pi updates...
[2026-06-22 05:59:25,685.685 INFO    ] 200
[2026-06-22 05:59:25,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:59:25,731.731 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:59:25,811.811 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 05:59:25,814.814 INFO    ] No camera update needed
[2026-06-22 05:59:25,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:59:25,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:59:25,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:59:25,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:59:27,874.874 INFO    ] ================================================
[2026-06-22 05:59:27,889.889 INFO    ] Launching Daemon at Mon Jun 22 05:59:27 IST 2026
[2026-06-22 05:59:27,900.900 INFO    ] ================================================
[2026-06-22 05:59:28,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:59:28
[2026-06-22 05:59:28,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:59:29,257.257 INFO    ] Initializing speech engine...
[2026-06-22 05:59:29,266.266 INFO    ] 2026-06-22 05:59:29
[2026-06-22 05:59:29,513.513 INFO    ] 2026-06-22 05:59:29
[2026-06-22 05:59:29,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:59:29,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:59:29,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:59:29,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:59:29,890.890 INFO    ] time= 22/06/2026 05:59:29
[2026-06-22 05:59:29,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:59:29,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:59:30,061.061 INFO    ] No existing commands found in stream
[2026-06-22 05:59:35,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:59:35,095.095 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-22 05:59:35,886.886 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:59:35,889.889 INFO    ] Checking for system updates...
[2026-06-22 05:59:35,925.925 INFO    ] 200
[2026-06-22 05:59:35,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:59:35,981.981 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:59:35,983.983 INFO    ] No update needed
[2026-06-22 05:59:35,986.986 INFO    ] Checking for camera pi updates...
[2026-06-22 05:59:36,020.020 INFO    ] 200
[2026-06-22 05:59:36,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:59:36,065.065 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:59:36,136.136 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:59:36,138.138 INFO    ] No camera update needed
[2026-06-22 05:59:36,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:59:36,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:59:36,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:59:36,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:59:38,200.200 INFO    ] ================================================
[2026-06-22 05:59:38,215.215 INFO    ] Launching Daemon at Mon Jun 22 05:59:38 IST 2026
[2026-06-22 05:59:38,225.225 INFO    ] ================================================
[2026-06-22 05:59:38,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:59:38
[2026-06-22 05:59:39,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:59:39,775.775 INFO    ] Initializing speech engine...
[2026-06-22 05:59:39,788.788 INFO    ] 2026-06-22 05:59:39
[2026-06-22 05:59:40,070.070 INFO    ] 2026-06-22 05:59:40
[2026-06-22 05:59:40,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:59:40,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:59:40,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:59:40,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:59:40,525.525 INFO    ] time= 22/06/2026 05:59:40
[2026-06-22 05:59:40,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:59:40,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:59:40,748.748 INFO    ] No existing commands found in stream
[2026-06-22 05:59:45,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:59:45,779.779 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-22 05:59:48,322.322 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 05:59:48,325.325 INFO    ] Checking for system updates...
[2026-06-22 05:59:48,363.363 INFO    ] 200
[2026-06-22 05:59:48,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:59:48,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:59:48,423.423 INFO    ] No update needed
[2026-06-22 05:59:48,425.425 INFO    ] Checking for camera pi updates...
[2026-06-22 05:59:48,459.459 INFO    ] 200
[2026-06-22 05:59:48,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 05:59:48,503.503 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 05:59:48,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 05:59:48,592.592 INFO    ] No camera update needed
[2026-06-22 05:59:48,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-22 05:59:48,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 05:59:48,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 05:59:48,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 05:59:50,646.646 INFO    ] ================================================
[2026-06-22 05:59:50,661.661 INFO    ] Launching Daemon at Mon Jun 22 05:59:50 IST 2026
[2026-06-22 05:59:50,672.672 INFO    ] ================================================
[2026-06-22 05:59:51,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 05:59:51
[2026-06-22 05:59:51,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 05:59:52,259.259 INFO    ] Initializing speech engine...
[2026-06-22 05:59:52,273.273 INFO    ] 2026-06-22 05:59:52
[2026-06-22 05:59:52,562.562 INFO    ] 2026-06-22 05:59:52
[2026-06-22 05:59:52,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 05:59:52,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 05:59:52,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 05:59:52,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 05:59:53,029.029 INFO    ] time= 22/06/2026 05:59:52
[2026-06-22 05:59:53,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 05:59:53,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-22 05:59:53,183.183 INFO    ] No existing commands found in stream
[2026-06-22 05:59:58,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 05:59:58,199.199 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-22 06:00:00,232.232 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:00:00,236.236 INFO    ] Checking for system updates...
[2026-06-22 06:00:00,280.280 INFO    ] 200
[2026-06-22 06:00:00,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:00:00,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:00:00,345.345 INFO    ] No update needed
[2026-06-22 06:00:00,348.348 INFO    ] Checking for camera pi updates...
[2026-06-22 06:00:00,383.383 INFO    ] 200
[2026-06-22 06:00:00,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:00:00,429.429 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:00:00,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:00:00,517.517 INFO    ] No camera update needed
[2026-06-22 06:00:00,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:00:00,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:00:00,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:00:00,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:00:02,670.670 INFO    ] ================================================
[2026-06-22 06:00:02,745.745 INFO    ] Launching Daemon at Mon Jun 22 06:00:02 IST 2026
[2026-06-22 06:00:02,785.785 INFO    ] ================================================
[2026-06-22 06:00:04,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:00:04
[2026-06-22 06:00:06,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:00:06,586.586 INFO    ] Initializing speech engine...
[2026-06-22 06:00:06,606.606 INFO    ] 2026-06-22 06:00:06
[2026-06-22 06:00:06,874.874 INFO    ] 2026-06-22 06:00:06
[2026-06-22 06:00:06,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:00:07,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:00:07,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:00:07,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:00:07,387.387 INFO    ] time= 22/06/2026 06:00:07
[2026-06-22 06:00:07,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:00:07,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:00:07,546.546 INFO    ] No existing commands found in stream
[2026-06-22 06:00:12,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:00:12,570.570 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-22 06:00:14,181.181 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:00:14,182.182 INFO    ] Checking for system updates...
[2026-06-22 06:00:14,207.207 INFO    ] 200
[2026-06-22 06:00:14,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:00:14,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:00:14,272.272 INFO    ] No update needed
[2026-06-22 06:00:14,275.275 INFO    ] Checking for camera pi updates...
[2026-06-22 06:00:14,309.309 INFO    ] 200
[2026-06-22 06:00:14,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:00:14,358.358 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:00:14,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:00:14,435.435 INFO    ] No camera update needed
[2026-06-22 06:00:14,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:00:14,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:00:14,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:00:14,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:00:16,496.496 INFO    ] ================================================
[2026-06-22 06:00:16,512.512 INFO    ] Launching Daemon at Mon Jun 22 06:00:16 IST 2026
[2026-06-22 06:00:16,523.523 INFO    ] ================================================
[2026-06-22 06:00:17,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:00:17
[2026-06-22 06:00:17,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:00:18,047.047 INFO    ] Initializing speech engine...
[2026-06-22 06:00:18,055.055 INFO    ] 2026-06-22 06:00:18
[2026-06-22 06:00:18,327.327 INFO    ] 2026-06-22 06:00:18
[2026-06-22 06:00:18,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:00:18,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:00:18,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:00:18,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:00:18,798.798 INFO    ] time= 22/06/2026 06:00:18
[2026-06-22 06:00:18,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:00:18,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:00:19,024.024 INFO    ] No existing commands found in stream
[2026-06-22 06:00:24,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:00:24,049.049 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-22 06:00:28,362.362 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:00:28,365.365 INFO    ] Checking for system updates...
[2026-06-22 06:00:28,406.406 INFO    ] 200
[2026-06-22 06:00:28,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:00:28,462.462 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:00:28,465.465 INFO    ] No update needed
[2026-06-22 06:00:28,468.468 INFO    ] Checking for camera pi updates...
[2026-06-22 06:00:28,503.503 INFO    ] 200
[2026-06-22 06:00:28,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:00:28,553.553 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:00:28,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:00:28,643.643 INFO    ] No camera update needed
[2026-06-22 06:00:28,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:00:28,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:00:28,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:00:28,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:00:30,700.700 INFO    ] ================================================
[2026-06-22 06:00:30,715.715 INFO    ] Launching Daemon at Mon Jun 22 06:00:30 IST 2026
[2026-06-22 06:00:30,726.726 INFO    ] ================================================
[2026-06-22 06:00:31,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:00:31
[2026-06-22 06:00:31,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:00:32,098.098 INFO    ] Initializing speech engine...
[2026-06-22 06:00:32,103.103 INFO    ] 2026-06-22 06:00:32
[2026-06-22 06:00:32,416.416 INFO    ] 2026-06-22 06:00:32
[2026-06-22 06:00:32,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:00:32,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:00:32,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:00:32,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:00:32,929.929 INFO    ] time= 22/06/2026 06:00:32
[2026-06-22 06:00:32,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:00:33,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:00:33,093.093 INFO    ] No existing commands found in stream
[2026-06-22 06:00:38,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:00:38,109.109 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-22 06:00:41,946.946 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:00:41,949.949 INFO    ] Checking for system updates...
[2026-06-22 06:00:41,985.985 INFO    ] 200
[2026-06-22 06:00:41,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:00:42,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:00:42,043.043 INFO    ] No update needed
[2026-06-22 06:00:42,046.046 INFO    ] Checking for camera pi updates...
[2026-06-22 06:00:42,079.079 INFO    ] 200
[2026-06-22 06:00:42,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:00:42,128.128 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:00:42,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:00:42,309.309 INFO    ] No camera update needed
[2026-06-22 06:00:42,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:00:42,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:00:42,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:00:42,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:00:44,366.366 INFO    ] ================================================
[2026-06-22 06:00:44,382.382 INFO    ] Launching Daemon at Mon Jun 22 06:00:44 IST 2026
[2026-06-22 06:00:44,392.392 INFO    ] ================================================
[2026-06-22 06:00:44,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:00:44
[2026-06-22 06:00:45,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:00:45,750.750 INFO    ] Initializing speech engine...
[2026-06-22 06:00:45,757.757 INFO    ] 2026-06-22 06:00:45
[2026-06-22 06:00:46,001.001 INFO    ] 2026-06-22 06:00:45
[2026-06-22 06:00:46,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:00:46,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:00:46,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:00:46,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:00:46,440.440 INFO    ] time= 22/06/2026 06:00:46
[2026-06-22 06:00:46,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:00:46,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:00:46,578.578 INFO    ] No existing commands found in stream
[2026-06-22 06:00:51,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:00:51,593.593 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-22 06:00:53,407.407 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:00:53,410.410 INFO    ] Checking for system updates...
[2026-06-22 06:00:53,449.449 INFO    ] 200
[2026-06-22 06:00:53,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:00:53,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:00:53,506.506 INFO    ] No update needed
[2026-06-22 06:00:53,509.509 INFO    ] Checking for camera pi updates...
[2026-06-22 06:00:53,542.542 INFO    ] 200
[2026-06-22 06:00:53,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:00:53,590.590 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:00:53,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:00:53,678.678 INFO    ] No camera update needed
[2026-06-22 06:00:53,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:00:53,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:00:53,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:00:53,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:00:55,734.734 INFO    ] ================================================
[2026-06-22 06:00:55,750.750 INFO    ] Launching Daemon at Mon Jun 22 06:00:55 IST 2026
[2026-06-22 06:00:55,761.761 INFO    ] ================================================
[2026-06-22 06:00:56,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:00:56
[2026-06-22 06:00:56,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:00:57,191.191 INFO    ] Initializing speech engine...
[2026-06-22 06:00:57,200.200 INFO    ] 2026-06-22 06:00:57
[2026-06-22 06:00:57,454.454 INFO    ] 2026-06-22 06:00:57
[2026-06-22 06:00:57,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:00:57,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:00:57,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:00:57,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:00:57,914.914 INFO    ] time= 22/06/2026 06:00:57
[2026-06-22 06:00:57,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:00:58,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:00:58,062.062 INFO    ] No existing commands found in stream
[2026-06-22 06:01:03,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:01:03,078.078 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-22 06:01:06,284.284 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:01:06,285.285 INFO    ] Checking for system updates...
[2026-06-22 06:01:06,308.308 INFO    ] 200
[2026-06-22 06:01:06,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:01:06,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:01:06,342.342 INFO    ] No update needed
[2026-06-22 06:01:06,343.343 INFO    ] Checking for camera pi updates...
[2026-06-22 06:01:06,366.366 INFO    ] 200
[2026-06-22 06:01:06,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:01:06,410.410 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:01:06,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:01:06,500.500 INFO    ] No camera update needed
[2026-06-22 06:01:06,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:01:06,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:01:06,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:01:06,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:01:08,565.565 INFO    ] ================================================
[2026-06-22 06:01:08,581.581 INFO    ] Launching Daemon at Mon Jun 22 06:01:08 IST 2026
[2026-06-22 06:01:08,592.592 INFO    ] ================================================
[2026-06-22 06:01:09,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:01:09
[2026-06-22 06:01:09,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:01:10,125.125 INFO    ] Initializing speech engine...
[2026-06-22 06:01:10,140.140 INFO    ] 2026-06-22 06:01:10
[2026-06-22 06:01:10,420.420 INFO    ] 2026-06-22 06:01:10
[2026-06-22 06:01:10,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:01:10,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:01:10,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:01:10,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:01:10,884.884 INFO    ] time= 22/06/2026 06:01:10
[2026-06-22 06:01:10,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:01:10,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:01:11,022.022 INFO    ] No existing commands found in stream
[2026-06-22 06:01:16,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:01:16,038.038 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-22 06:01:17,246.246 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:01:17,247.247 INFO    ] Checking for system updates...
[2026-06-22 06:01:17,278.278 INFO    ] 200
[2026-06-22 06:01:17,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:01:17,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:01:17,337.337 INFO    ] No update needed
[2026-06-22 06:01:17,340.340 INFO    ] Checking for camera pi updates...
[2026-06-22 06:01:17,379.379 INFO    ] 200
[2026-06-22 06:01:17,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:01:17,424.424 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:01:17,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:01:17,511.511 INFO    ] No camera update needed
[2026-06-22 06:01:17,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:01:17,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:01:17,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:01:17,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:01:19,570.570 INFO    ] ================================================
[2026-06-22 06:01:19,586.586 INFO    ] Launching Daemon at Mon Jun 22 06:01:19 IST 2026
[2026-06-22 06:01:19,597.597 INFO    ] ================================================
[2026-06-22 06:01:20,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:01:20
[2026-06-22 06:01:20,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:01:20,995.995 INFO    ] Initializing speech engine...
[2026-06-22 06:01:21,003.003 INFO    ] 2026-06-22 06:01:20
[2026-06-22 06:01:21,262.262 INFO    ] 2026-06-22 06:01:21
[2026-06-22 06:01:21,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:01:21,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:01:21,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:01:21,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:01:21,721.721 INFO    ] time= 22/06/2026 06:01:21
[2026-06-22 06:01:21,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:01:21,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:01:21,874.874 INFO    ] No existing commands found in stream
[2026-06-22 06:01:26,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:01:26,901.901 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-22 06:01:28,543.543 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:01:28,546.546 INFO    ] Checking for system updates...
[2026-06-22 06:01:28,581.581 INFO    ] 200
[2026-06-22 06:01:28,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:01:28,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:01:28,640.640 INFO    ] No update needed
[2026-06-22 06:01:28,642.642 INFO    ] Checking for camera pi updates...
[2026-06-22 06:01:28,680.680 INFO    ] 200
[2026-06-22 06:01:28,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:01:28,723.723 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:01:28,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:01:28,803.803 INFO    ] No camera update needed
[2026-06-22 06:01:28,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:01:28,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:01:28,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:01:28,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:01:30,861.861 INFO    ] ================================================
[2026-06-22 06:01:30,876.876 INFO    ] Launching Daemon at Mon Jun 22 06:01:30 IST 2026
[2026-06-22 06:01:30,888.888 INFO    ] ================================================
[2026-06-22 06:01:31,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:01:31
[2026-06-22 06:01:32,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:01:32,347.347 INFO    ] Initializing speech engine...
[2026-06-22 06:01:32,373.373 INFO    ] 2026-06-22 06:01:32
[2026-06-22 06:01:32,676.676 INFO    ] 2026-06-22 06:01:32
[2026-06-22 06:01:32,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:01:32,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:01:32,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:01:33,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:01:33,094.094 INFO    ] time= 22/06/2026 06:01:33
[2026-06-22 06:01:33,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:01:33,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:01:33,191.191 INFO    ] No existing commands found in stream
[2026-06-22 06:01:38,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:01:38,207.207 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-22 06:01:42,186.186 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:01:42,187.187 INFO    ] Checking for system updates...
[2026-06-22 06:01:42,208.208 INFO    ] 200
[2026-06-22 06:01:42,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:01:42,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:01:42,241.241 INFO    ] No update needed
[2026-06-22 06:01:42,242.242 INFO    ] Checking for camera pi updates...
[2026-06-22 06:01:42,265.265 INFO    ] 200
[2026-06-22 06:01:42,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:01:42,303.303 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:01:42,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:01:42,387.387 INFO    ] No camera update needed
[2026-06-22 06:01:42,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:01:42,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:01:42,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:01:42,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:01:44,442.442 INFO    ] ================================================
[2026-06-22 06:01:44,458.458 INFO    ] Launching Daemon at Mon Jun 22 06:01:44 IST 2026
[2026-06-22 06:01:44,470.470 INFO    ] ================================================
[2026-06-22 06:01:45,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:01:45
[2026-06-22 06:01:45,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:01:45,809.809 INFO    ] Initializing speech engine...
[2026-06-22 06:01:45,818.818 INFO    ] 2026-06-22 06:01:45
[2026-06-22 06:01:46,064.064 INFO    ] 2026-06-22 06:01:46
[2026-06-22 06:01:46,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:01:46,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:01:46,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:01:46,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:01:46,571.571 INFO    ] time= 22/06/2026 06:01:46
[2026-06-22 06:01:46,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:01:46,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:01:46,742.742 INFO    ] No existing commands found in stream
[2026-06-22 06:01:51,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:01:51,767.767 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-22 06:01:54,762.762 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:01:54,765.765 INFO    ] Checking for system updates...
[2026-06-22 06:01:54,800.800 INFO    ] 200
[2026-06-22 06:01:54,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:01:54,855.855 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:01:54,857.857 INFO    ] No update needed
[2026-06-22 06:01:54,860.860 INFO    ] Checking for camera pi updates...
[2026-06-22 06:01:54,893.893 INFO    ] 200
[2026-06-22 06:01:54,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:01:54,938.938 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:01:55,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:01:55,023.023 INFO    ] No camera update needed
[2026-06-22 06:01:55,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:01:55,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:01:55,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:01:55,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:01:57,079.079 INFO    ] ================================================
[2026-06-22 06:01:57,096.096 INFO    ] Launching Daemon at Mon Jun 22 06:01:57 IST 2026
[2026-06-22 06:01:57,106.106 INFO    ] ================================================
[2026-06-22 06:01:57,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:01:57
[2026-06-22 06:01:58,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:01:58,516.516 INFO    ] Initializing speech engine...
[2026-06-22 06:01:58,530.530 INFO    ] 2026-06-22 06:01:58
[2026-06-22 06:01:58,806.806 INFO    ] 2026-06-22 06:01:58
[2026-06-22 06:01:58,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:01:59,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:01:59,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:01:59,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:01:59,273.273 INFO    ] time= 22/06/2026 06:01:59
[2026-06-22 06:01:59,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:01:59,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:01:59,406.406 INFO    ] No existing commands found in stream
[2026-06-22 06:02:04,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:02:04,421.421 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-22 06:02:07,722.722 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:02:07,724.724 INFO    ] Checking for system updates...
[2026-06-22 06:02:07,746.746 INFO    ] 200
[2026-06-22 06:02:07,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:02:07,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:02:07,782.782 INFO    ] No update needed
[2026-06-22 06:02:07,783.783 INFO    ] Checking for camera pi updates...
[2026-06-22 06:02:07,808.808 INFO    ] 200
[2026-06-22 06:02:07,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:02:07,866.866 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:02:07,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:02:07,947.947 INFO    ] No camera update needed
[2026-06-22 06:02:07,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:02:07,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:02:07,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:02:07,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:02:10,008.008 INFO    ] ================================================
[2026-06-22 06:02:10,024.024 INFO    ] Launching Daemon at Mon Jun 22 06:02:10 IST 2026
[2026-06-22 06:02:10,036.036 INFO    ] ================================================
[2026-06-22 06:02:10,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:02:10
[2026-06-22 06:02:11,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:02:11,569.569 INFO    ] Initializing speech engine...
[2026-06-22 06:02:11,580.580 INFO    ] 2026-06-22 06:02:11
[2026-06-22 06:02:11,855.855 INFO    ] 2026-06-22 06:02:11
[2026-06-22 06:02:11,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:02:12,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:02:12,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:02:12,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:02:12,304.304 INFO    ] time= 22/06/2026 06:02:12
[2026-06-22 06:02:12,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:02:12,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:02:12,468.468 INFO    ] No existing commands found in stream
[2026-06-22 06:02:17,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:02:17,485.485 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-22 06:02:18,979.979 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:02:18,980.980 INFO    ] Checking for system updates...
[2026-06-22 06:02:19,003.003 INFO    ] 200
[2026-06-22 06:02:19,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:02:19,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:02:19,065.065 INFO    ] No update needed
[2026-06-22 06:02:19,067.067 INFO    ] Checking for camera pi updates...
[2026-06-22 06:02:19,106.106 INFO    ] 200
[2026-06-22 06:02:19,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:02:19,156.156 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:02:19,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:02:19,242.242 INFO    ] No camera update needed
[2026-06-22 06:02:19,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:02:19,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:02:19,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:02:19,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:02:21,302.302 INFO    ] ================================================
[2026-06-22 06:02:21,318.318 INFO    ] Launching Daemon at Mon Jun 22 06:02:21 IST 2026
[2026-06-22 06:02:21,329.329 INFO    ] ================================================
[2026-06-22 06:02:21,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:02:21
[2026-06-22 06:02:22,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:02:22,711.711 INFO    ] Initializing speech engine...
[2026-06-22 06:02:22,717.717 INFO    ] 2026-06-22 06:02:22
[2026-06-22 06:02:22,975.975 INFO    ] 2026-06-22 06:02:22
[2026-06-22 06:02:23,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:02:23,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:02:23,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:02:23,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:02:23,456.456 INFO    ] time= 22/06/2026 06:02:23
[2026-06-22 06:02:23,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:02:23,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:02:23,602.602 INFO    ] No existing commands found in stream
[2026-06-22 06:02:28,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:02:28,618.618 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-22 06:02:31,646.646 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:02:31,649.649 INFO    ] Checking for system updates...
[2026-06-22 06:02:31,686.686 INFO    ] 200
[2026-06-22 06:02:31,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:02:31,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:02:31,758.758 INFO    ] No update needed
[2026-06-22 06:02:31,762.762 INFO    ] Checking for camera pi updates...
[2026-06-22 06:02:31,804.804 INFO    ] 200
[2026-06-22 06:02:31,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:02:31,853.853 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:02:31,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:02:31,911.911 INFO    ] No camera update needed
[2026-06-22 06:02:31,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:02:31,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:02:31,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:02:31,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:02:33,978.978 INFO    ] ================================================
[2026-06-22 06:02:34,995.995 INFO    ] Launching Daemon at Mon Jun 22 06:02:33 IST 2026
[2026-06-22 06:02:34,007.007 INFO    ] ================================================
[2026-06-22 06:02:34,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:02:34
[2026-06-22 06:02:35,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:02:35,459.459 INFO    ] Initializing speech engine...
[2026-06-22 06:02:35,468.468 INFO    ] 2026-06-22 06:02:35
[2026-06-22 06:02:35,765.765 INFO    ] 2026-06-22 06:02:35
[2026-06-22 06:02:35,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:02:35,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:02:36,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:02:36,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:02:36,122.122 INFO    ] time= 22/06/2026 06:02:36
[2026-06-22 06:02:36,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:02:36,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:02:36,201.201 INFO    ] No existing commands found in stream
[2026-06-22 06:02:41,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:02:41,215.215 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-22 06:02:44,277.277 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:02:44,279.279 INFO    ] Checking for system updates...
[2026-06-22 06:02:44,299.299 INFO    ] 200
[2026-06-22 06:02:44,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:02:44,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:02:44,341.341 INFO    ] No update needed
[2026-06-22 06:02:44,344.344 INFO    ] Checking for camera pi updates...
[2026-06-22 06:02:44,378.378 INFO    ] 200
[2026-06-22 06:02:44,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:02:44,421.421 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:02:44,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:02:44,509.509 INFO    ] No camera update needed
[2026-06-22 06:02:44,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:02:44,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:02:44,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:02:44,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:02:46,565.565 INFO    ] ================================================
[2026-06-22 06:02:46,580.580 INFO    ] Launching Daemon at Mon Jun 22 06:02:46 IST 2026
[2026-06-22 06:02:46,591.591 INFO    ] ================================================
[2026-06-22 06:02:47,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:02:47
[2026-06-22 06:02:47,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:02:48,127.127 INFO    ] Initializing speech engine...
[2026-06-22 06:02:48,140.140 INFO    ] 2026-06-22 06:02:48
[2026-06-22 06:02:48,420.420 INFO    ] 2026-06-22 06:02:48
[2026-06-22 06:02:48,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:02:48,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:02:48,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:02:48,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:02:48,886.886 INFO    ] time= 22/06/2026 06:02:48
[2026-06-22 06:02:48,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:02:48,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:02:49,056.056 INFO    ] No existing commands found in stream
[2026-06-22 06:02:54,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:02:54,097.097 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-22 06:02:58,426.426 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:02:58,427.427 INFO    ] Checking for system updates...
[2026-06-22 06:02:58,451.451 INFO    ] 200
[2026-06-22 06:02:58,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:02:58,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:02:58,512.512 INFO    ] No update needed
[2026-06-22 06:02:58,515.515 INFO    ] Checking for camera pi updates...
[2026-06-22 06:02:58,550.550 INFO    ] 200
[2026-06-22 06:02:58,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:02:58,600.600 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:02:58,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:02:58,783.783 INFO    ] No camera update needed
[2026-06-22 06:02:58,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:02:58,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:02:58,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:02:58,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:03:00,843.843 INFO    ] ================================================
[2026-06-22 06:03:00,858.858 INFO    ] Launching Daemon at Mon Jun 22 06:03:00 IST 2026
[2026-06-22 06:03:00,869.869 INFO    ] ================================================
[2026-06-22 06:03:01,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:03:01
[2026-06-22 06:03:02,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:03:02,536.536 INFO    ] Initializing speech engine...
[2026-06-22 06:03:02,549.549 INFO    ] 2026-06-22 06:03:02
[2026-06-22 06:03:02,903.903 INFO    ] 2026-06-22 06:03:02
[2026-06-22 06:03:02,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:03:03,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:03:03,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:03:03,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:03:03,406.406 INFO    ] time= 22/06/2026 06:03:03
[2026-06-22 06:03:03,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:03:03,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:03:03,535.535 INFO    ] No existing commands found in stream
[2026-06-22 06:03:08,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:03:08,550.550 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-22 06:03:10,322.322 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:03:10,323.323 INFO    ] Checking for system updates...
[2026-06-22 06:03:10,345.345 INFO    ] 200
[2026-06-22 06:03:10,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:03:10,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:03:10,401.401 INFO    ] No update needed
[2026-06-22 06:03:10,403.403 INFO    ] Checking for camera pi updates...
[2026-06-22 06:03:10,437.437 INFO    ] 200
[2026-06-22 06:03:10,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:03:10,485.485 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:03:10,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:03:10,568.568 INFO    ] No camera update needed
[2026-06-22 06:03:10,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:03:10,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:03:10,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:03:10,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:03:12,624.624 INFO    ] ================================================
[2026-06-22 06:03:12,639.639 INFO    ] Launching Daemon at Mon Jun 22 06:03:12 IST 2026
[2026-06-22 06:03:12,651.651 INFO    ] ================================================
[2026-06-22 06:03:13,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:03:13
[2026-06-22 06:03:13,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:03:14,097.097 INFO    ] Initializing speech engine...
[2026-06-22 06:03:14,117.117 INFO    ] 2026-06-22 06:03:14
[2026-06-22 06:03:14,389.389 INFO    ] 2026-06-22 06:03:14
[2026-06-22 06:03:14,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:03:14,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:03:14,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:03:14,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:03:14,836.836 INFO    ] time= 22/06/2026 06:03:14
[2026-06-22 06:03:14,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:03:14,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:03:14,985.985 INFO    ] No existing commands found in stream
[2026-06-22 06:03:19,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:03:20,000.000 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-22 06:03:21,650.650 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:03:21,653.653 INFO    ] Checking for system updates...
[2026-06-22 06:03:21,689.689 INFO    ] 200
[2026-06-22 06:03:21,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:03:21,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:03:21,753.753 INFO    ] No update needed
[2026-06-22 06:03:21,755.755 INFO    ] Checking for camera pi updates...
[2026-06-22 06:03:21,790.790 INFO    ] 200
[2026-06-22 06:03:21,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:03:21,835.835 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:03:21,914.914 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:03:21,917.917 INFO    ] No camera update needed
[2026-06-22 06:03:21,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:03:21,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:03:21,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:03:21,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:03:23,974.974 INFO    ] ================================================
[2026-06-22 06:03:23,990.990 INFO    ] Launching Daemon at Mon Jun 22 06:03:23 IST 2026
[2026-06-22 06:03:24,001.001 INFO    ] ================================================
[2026-06-22 06:03:24,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:03:24
[2026-06-22 06:03:25,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:03:25,549.549 INFO    ] Initializing speech engine...
[2026-06-22 06:03:25,555.555 INFO    ] 2026-06-22 06:03:25
[2026-06-22 06:03:25,842.842 INFO    ] 2026-06-22 06:03:25
[2026-06-22 06:03:25,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:03:26,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:03:26,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:03:26,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:03:26,373.373 INFO    ] time= 22/06/2026 06:03:26
[2026-06-22 06:03:26,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:03:26,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:03:26,525.525 INFO    ] No existing commands found in stream
[2026-06-22 06:03:31,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:03:31,548.548 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-22 06:03:33,421.421 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:03:33,424.424 INFO    ] Checking for system updates...
[2026-06-22 06:03:33,462.462 INFO    ] 200
[2026-06-22 06:03:33,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:03:33,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:03:33,523.523 INFO    ] No update needed
[2026-06-22 06:03:33,526.526 INFO    ] Checking for camera pi updates...
[2026-06-22 06:03:33,561.561 INFO    ] 200
[2026-06-22 06:03:33,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:03:33,607.607 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:03:33,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:03:33,692.692 INFO    ] No camera update needed
[2026-06-22 06:03:33,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:03:33,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:03:33,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:03:33,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:03:35,754.754 INFO    ] ================================================
[2026-06-22 06:03:35,770.770 INFO    ] Launching Daemon at Mon Jun 22 06:03:35 IST 2026
[2026-06-22 06:03:35,782.782 INFO    ] ================================================
[2026-06-22 06:03:36,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:03:36
[2026-06-22 06:03:36,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:03:37,167.167 INFO    ] Initializing speech engine...
[2026-06-22 06:03:37,176.176 INFO    ] 2026-06-22 06:03:37
[2026-06-22 06:03:37,427.427 INFO    ] 2026-06-22 06:03:37
[2026-06-22 06:03:37,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:03:37,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:03:37,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:03:37,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:03:37,987.987 INFO    ] time= 22/06/2026 06:03:37
[2026-06-22 06:03:38,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:03:38,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:03:38,120.120 INFO    ] No existing commands found in stream
[2026-06-22 06:03:43,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:03:43,150.150 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-22 06:03:46,934.934 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:03:46,937.937 INFO    ] Checking for system updates...
[2026-06-22 06:03:46,972.972 INFO    ] 200
[2026-06-22 06:03:46,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:03:47,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:03:47,035.035 INFO    ] No update needed
[2026-06-22 06:03:47,038.038 INFO    ] Checking for camera pi updates...
[2026-06-22 06:03:47,072.072 INFO    ] 200
[2026-06-22 06:03:47,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:03:47,116.116 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:03:47,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:03:47,202.202 INFO    ] No camera update needed
[2026-06-22 06:03:47,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:03:47,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:03:47,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:03:47,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:03:49,258.258 INFO    ] ================================================
[2026-06-22 06:03:49,273.273 INFO    ] Launching Daemon at Mon Jun 22 06:03:49 IST 2026
[2026-06-22 06:03:49,285.285 INFO    ] ================================================
[2026-06-22 06:03:49,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:03:49
[2026-06-22 06:03:50,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:03:50,623.623 INFO    ] Initializing speech engine...
[2026-06-22 06:03:50,629.629 INFO    ] 2026-06-22 06:03:50
[2026-06-22 06:03:50,925.925 INFO    ] 2026-06-22 06:03:50
[2026-06-22 06:03:50,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:03:51,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:03:51,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:03:51,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:03:51,588.588 INFO    ] time= 22/06/2026 06:03:51
[2026-06-22 06:03:51,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:03:51,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:03:51,683.683 INFO    ] No existing commands found in stream
[2026-06-22 06:03:56,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:03:56,717.717 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-22 06:03:59,339.339 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:03:59,341.341 INFO    ] Checking for system updates...
[2026-06-22 06:03:59,379.379 INFO    ] 200
[2026-06-22 06:03:59,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:03:59,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:03:59,437.437 INFO    ] No update needed
[2026-06-22 06:03:59,440.440 INFO    ] Checking for camera pi updates...
[2026-06-22 06:03:59,473.473 INFO    ] 200
[2026-06-22 06:03:59,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:03:59,522.522 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:03:59,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:03:59,607.607 INFO    ] No camera update needed
[2026-06-22 06:03:59,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:03:59,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:03:59,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:03:59,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:04:01,675.675 INFO    ] ================================================
[2026-06-22 06:04:01,712.712 INFO    ] Launching Daemon at Mon Jun 22 06:04:01 IST 2026
[2026-06-22 06:04:01,734.734 INFO    ] ================================================
[2026-06-22 06:04:02,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:04:02
[2026-06-22 06:04:03,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:04:03,404.404 INFO    ] Initializing speech engine...
[2026-06-22 06:04:03,416.416 INFO    ] 2026-06-22 06:04:03
[2026-06-22 06:04:03,673.673 INFO    ] 2026-06-22 06:04:03
[2026-06-22 06:04:03,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:04:03,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:04:03,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:04:04,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:04:04,143.143 INFO    ] time= 22/06/2026 06:04:04
[2026-06-22 06:04:04,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:04:04,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:04:04,278.278 INFO    ] No existing commands found in stream
[2026-06-22 06:04:09,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:04:09,293.293 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-22 06:04:12,240.240 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:04:12,241.241 INFO    ] Checking for system updates...
[2026-06-22 06:04:12,265.265 INFO    ] 200
[2026-06-22 06:04:12,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:04:12,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:04:12,300.300 INFO    ] No update needed
[2026-06-22 06:04:12,302.302 INFO    ] Checking for camera pi updates...
[2026-06-22 06:04:12,337.337 INFO    ] 200
[2026-06-22 06:04:12,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:04:12,380.380 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:04:12,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:04:12,450.450 INFO    ] No camera update needed
[2026-06-22 06:04:12,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:04:12,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:04:12,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:04:12,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:04:14,507.507 INFO    ] ================================================
[2026-06-22 06:04:14,523.523 INFO    ] Launching Daemon at Mon Jun 22 06:04:14 IST 2026
[2026-06-22 06:04:14,534.534 INFO    ] ================================================
[2026-06-22 06:04:15,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:04:15
[2026-06-22 06:04:15,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:04:15,890.890 INFO    ] Initializing speech engine...
[2026-06-22 06:04:15,896.896 INFO    ] 2026-06-22 06:04:15
[2026-06-22 06:04:16,145.145 INFO    ] 2026-06-22 06:04:16
[2026-06-22 06:04:16,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:04:16,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:04:16,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:04:16,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:04:16,525.525 INFO    ] time= 22/06/2026 06:04:16
[2026-06-22 06:04:16,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:04:16,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:04:16,699.699 INFO    ] No existing commands found in stream
[2026-06-22 06:04:21,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:04:21,732.732 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-22 06:04:24,355.355 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:04:24,358.358 INFO    ] Checking for system updates...
[2026-06-22 06:04:24,394.394 INFO    ] 200
[2026-06-22 06:04:24,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:04:24,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:04:24,453.453 INFO    ] No update needed
[2026-06-22 06:04:24,456.456 INFO    ] Checking for camera pi updates...
[2026-06-22 06:04:24,490.490 INFO    ] 200
[2026-06-22 06:04:24,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:04:24,539.539 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:04:24,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:04:24,623.623 INFO    ] No camera update needed
[2026-06-22 06:04:24,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:04:24,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:04:24,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:04:24,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:04:26,680.680 INFO    ] ================================================
[2026-06-22 06:04:26,701.701 INFO    ] Launching Daemon at Mon Jun 22 06:04:26 IST 2026
[2026-06-22 06:04:26,712.712 INFO    ] ================================================
[2026-06-22 06:04:27,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:04:27
[2026-06-22 06:04:27,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:04:28,287.287 INFO    ] Initializing speech engine...
[2026-06-22 06:04:28,294.294 INFO    ] 2026-06-22 06:04:28
[2026-06-22 06:04:28,606.606 INFO    ] 2026-06-22 06:04:28
[2026-06-22 06:04:28,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:04:28,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:04:28,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:04:29,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:04:29,116.116 INFO    ] time= 22/06/2026 06:04:29
[2026-06-22 06:04:29,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:04:29,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:04:29,272.272 INFO    ] No existing commands found in stream
[2026-06-22 06:04:34,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:04:34,305.305 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-22 06:04:36,387.387 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:04:36,389.389 INFO    ] Checking for system updates...
[2026-06-22 06:04:36,410.410 INFO    ] 200
[2026-06-22 06:04:36,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:04:36,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:04:36,469.469 INFO    ] No update needed
[2026-06-22 06:04:36,471.471 INFO    ] Checking for camera pi updates...
[2026-06-22 06:04:36,510.510 INFO    ] 200
[2026-06-22 06:04:36,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:04:36,559.559 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:04:36,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:04:36,642.642 INFO    ] No camera update needed
[2026-06-22 06:04:36,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:04:36,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:04:36,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:04:36,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:04:38,698.698 INFO    ] ================================================
[2026-06-22 06:04:38,715.715 INFO    ] Launching Daemon at Mon Jun 22 06:04:38 IST 2026
[2026-06-22 06:04:38,726.726 INFO    ] ================================================
[2026-06-22 06:04:39,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:04:39
[2026-06-22 06:04:40,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:04:40,415.415 INFO    ] Initializing speech engine...
[2026-06-22 06:04:40,425.425 INFO    ] 2026-06-22 06:04:40
[2026-06-22 06:04:40,748.748 INFO    ] 2026-06-22 06:04:40
[2026-06-22 06:04:40,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:04:41,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:04:41,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:04:41,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:04:41,258.258 INFO    ] time= 22/06/2026 06:04:41
[2026-06-22 06:04:41,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:04:41,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:04:41,424.424 INFO    ] No existing commands found in stream
[2026-06-22 06:04:46,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:04:46,444.444 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-22 06:04:48,227.227 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:04:48,229.229 INFO    ] Checking for system updates...
[2026-06-22 06:04:48,265.265 INFO    ] 200
[2026-06-22 06:04:48,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:04:48,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:04:48,324.324 INFO    ] No update needed
[2026-06-22 06:04:48,330.330 INFO    ] Checking for camera pi updates...
[2026-06-22 06:04:48,366.366 INFO    ] 200
[2026-06-22 06:04:48,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:04:48,411.411 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:04:48,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:04:48,498.498 INFO    ] No camera update needed
[2026-06-22 06:04:48,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:04:48,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:04:48,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:04:48,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:04:50,559.559 INFO    ] ================================================
[2026-06-22 06:04:50,575.575 INFO    ] Launching Daemon at Mon Jun 22 06:04:50 IST 2026
[2026-06-22 06:04:50,586.586 INFO    ] ================================================
[2026-06-22 06:04:51,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:04:51
[2026-06-22 06:04:51,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:04:51,966.966 INFO    ] Initializing speech engine...
[2026-06-22 06:04:51,975.975 INFO    ] 2026-06-22 06:04:51
[2026-06-22 06:04:52,234.234 INFO    ] 2026-06-22 06:04:52
[2026-06-22 06:04:52,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:04:52,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:04:52,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:04:52,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:04:52,709.709 INFO    ] time= 22/06/2026 06:04:52
[2026-06-22 06:04:52,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:04:52,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:04:52,934.934 INFO    ] No existing commands found in stream
[2026-06-22 06:04:57,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:04:57,963.963 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-22 06:04:59,565.565 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:04:59,568.568 INFO    ] Checking for system updates...
[2026-06-22 06:04:59,610.610 INFO    ] 200
[2026-06-22 06:04:59,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:04:59,672.672 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:04:59,675.675 INFO    ] No update needed
[2026-06-22 06:04:59,678.678 INFO    ] Checking for camera pi updates...
[2026-06-22 06:04:59,711.711 INFO    ] 200
[2026-06-22 06:04:59,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:04:59,755.755 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:04:59,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:04:59,837.837 INFO    ] No camera update needed
[2026-06-22 06:04:59,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:04:59,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:04:59,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:04:59,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:05:01,911.911 INFO    ] ================================================
[2026-06-22 06:05:01,948.948 INFO    ] Launching Daemon at Mon Jun 22 06:05:01 IST 2026
[2026-06-22 06:05:01,970.970 INFO    ] ================================================
[2026-06-22 06:05:02,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:05:02
[2026-06-22 06:05:03,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:05:03,667.667 INFO    ] Initializing speech engine...
[2026-06-22 06:05:03,680.680 INFO    ] 2026-06-22 06:05:03
[2026-06-22 06:05:03,955.955 INFO    ] 2026-06-22 06:05:03
[2026-06-22 06:05:03,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:05:04,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:05:04,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:05:04,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:05:04,424.424 INFO    ] time= 22/06/2026 06:05:04
[2026-06-22 06:05:04,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:05:04,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:05:04,615.615 INFO    ] No existing commands found in stream
[2026-06-22 06:05:09,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:05:09,648.648 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-22 06:05:10,680.680 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:05:10,683.683 INFO    ] Checking for system updates...
[2026-06-22 06:05:10,723.723 INFO    ] 200
[2026-06-22 06:05:10,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:05:10,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:05:10,783.783 INFO    ] No update needed
[2026-06-22 06:05:10,786.786 INFO    ] Checking for camera pi updates...
[2026-06-22 06:05:10,820.820 INFO    ] 200
[2026-06-22 06:05:10,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:05:10,865.865 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:05:10,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:05:10,930.930 INFO    ] No camera update needed
[2026-06-22 06:05:10,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:05:10,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:05:10,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:05:10,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:05:12,988.988 INFO    ] ================================================
[2026-06-22 06:05:13,003.003 INFO    ] Launching Daemon at Mon Jun 22 06:05:12 IST 2026
[2026-06-22 06:05:13,014.014 INFO    ] ================================================
[2026-06-22 06:05:13,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:05:13
[2026-06-22 06:05:14,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:05:14,475.475 INFO    ] Initializing speech engine...
[2026-06-22 06:05:14,484.484 INFO    ] 2026-06-22 06:05:14
[2026-06-22 06:05:14,734.734 INFO    ] 2026-06-22 06:05:14
[2026-06-22 06:05:14,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:05:14,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:05:14,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:05:15,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:05:15,114.114 INFO    ] time= 22/06/2026 06:05:15
[2026-06-22 06:05:15,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:05:15,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:05:15,278.278 INFO    ] No existing commands found in stream
[2026-06-22 06:05:20,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:05:20,311.311 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-22 06:05:21,586.586 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:05:21,589.589 INFO    ] Checking for system updates...
[2026-06-22 06:05:21,626.626 INFO    ] 200
[2026-06-22 06:05:21,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:05:21,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:05:21,688.688 INFO    ] No update needed
[2026-06-22 06:05:21,691.691 INFO    ] Checking for camera pi updates...
[2026-06-22 06:05:21,728.728 INFO    ] 200
[2026-06-22 06:05:21,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:05:21,771.771 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:05:21,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:05:21,856.856 INFO    ] No camera update needed
[2026-06-22 06:05:21,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:05:21,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:05:21,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:05:21,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:05:23,913.913 INFO    ] ================================================
[2026-06-22 06:05:23,929.929 INFO    ] Launching Daemon at Mon Jun 22 06:05:23 IST 2026
[2026-06-22 06:05:23,939.939 INFO    ] ================================================
[2026-06-22 06:05:24,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:05:24
[2026-06-22 06:05:25,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:05:25,464.464 INFO    ] Initializing speech engine...
[2026-06-22 06:05:25,471.471 INFO    ] 2026-06-22 06:05:25
[2026-06-22 06:05:25,762.762 INFO    ] 2026-06-22 06:05:25
[2026-06-22 06:05:25,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:05:26,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:05:26,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:05:26,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:05:26,230.230 INFO    ] time= 22/06/2026 06:05:26
[2026-06-22 06:05:26,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:05:26,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:05:26,377.377 INFO    ] No existing commands found in stream
[2026-06-22 06:05:31,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:05:31,394.394 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-22 06:05:33,436.436 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:05:33,439.439 INFO    ] Checking for system updates...
[2026-06-22 06:05:33,477.477 INFO    ] 200
[2026-06-22 06:05:33,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:05:33,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:05:33,537.537 INFO    ] No update needed
[2026-06-22 06:05:33,539.539 INFO    ] Checking for camera pi updates...
[2026-06-22 06:05:33,578.578 INFO    ] 200
[2026-06-22 06:05:33,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:05:33,627.627 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:05:33,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:05:33,731.731 INFO    ] No camera update needed
[2026-06-22 06:05:33,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:05:33,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:05:33,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:05:33,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:05:35,789.789 INFO    ] ================================================
[2026-06-22 06:05:35,804.804 INFO    ] Launching Daemon at Mon Jun 22 06:05:35 IST 2026
[2026-06-22 06:05:35,815.815 INFO    ] ================================================
[2026-06-22 06:05:36,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:05:36
[2026-06-22 06:05:36,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:05:37,213.213 INFO    ] Initializing speech engine...
[2026-06-22 06:05:37,222.222 INFO    ] 2026-06-22 06:05:37
[2026-06-22 06:05:37,516.516 INFO    ] 2026-06-22 06:05:37
[2026-06-22 06:05:37,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:05:37,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:05:37,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:05:37,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:05:37,869.869 INFO    ] time= 22/06/2026 06:05:37
[2026-06-22 06:05:37,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:05:37,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:05:37,950.950 INFO    ] No existing commands found in stream
[2026-06-22 06:05:42,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:05:42,965.965 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-22 06:05:44,182.182 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:05:44,183.183 INFO    ] Checking for system updates...
[2026-06-22 06:05:44,204.204 INFO    ] 200
[2026-06-22 06:05:44,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:05:44,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:05:44,257.257 INFO    ] No update needed
[2026-06-22 06:05:44,259.259 INFO    ] Checking for camera pi updates...
[2026-06-22 06:05:44,294.294 INFO    ] 200
[2026-06-22 06:05:44,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:05:44,337.337 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:05:44,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:05:44,423.423 INFO    ] No camera update needed
[2026-06-22 06:05:44,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:05:44,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:05:44,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:05:44,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:05:46,480.480 INFO    ] ================================================
[2026-06-22 06:05:46,496.496 INFO    ] Launching Daemon at Mon Jun 22 06:05:46 IST 2026
[2026-06-22 06:05:46,507.507 INFO    ] ================================================
[2026-06-22 06:05:47,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:05:47
[2026-06-22 06:05:47,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:05:47,869.869 INFO    ] Initializing speech engine...
[2026-06-22 06:05:47,883.883 INFO    ] 2026-06-22 06:05:47
[2026-06-22 06:05:48,138.138 INFO    ] 2026-06-22 06:05:48
[2026-06-22 06:05:48,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:05:48,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:05:48,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:05:48,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:05:48,510.510 INFO    ] time= 22/06/2026 06:05:48
[2026-06-22 06:05:48,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:05:48,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:05:48,693.693 INFO    ] No existing commands found in stream
[2026-06-22 06:05:53,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:05:53,720.720 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-22 06:05:55,030.030 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:05:55,032.032 INFO    ] Checking for system updates...
[2026-06-22 06:05:55,054.054 INFO    ] 200
[2026-06-22 06:05:55,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:05:55,086.086 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:05:55,087.087 INFO    ] No update needed
[2026-06-22 06:05:55,088.088 INFO    ] Checking for camera pi updates...
[2026-06-22 06:05:55,108.108 INFO    ] 200
[2026-06-22 06:05:55,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:05:55,158.158 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:05:55,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:05:55,240.240 INFO    ] No camera update needed
[2026-06-22 06:05:55,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:05:55,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:05:55,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:05:55,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:05:57,296.296 INFO    ] ================================================
[2026-06-22 06:05:57,311.311 INFO    ] Launching Daemon at Mon Jun 22 06:05:57 IST 2026
[2026-06-22 06:05:57,322.322 INFO    ] ================================================
[2026-06-22 06:05:57,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:05:57
[2026-06-22 06:05:58,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:05:58,824.824 INFO    ] Initializing speech engine...
[2026-06-22 06:05:58,838.838 INFO    ] 2026-06-22 06:05:58
[2026-06-22 06:05:59,114.114 INFO    ] 2026-06-22 06:05:59
[2026-06-22 06:05:59,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:05:59,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:05:59,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:05:59,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:05:59,546.546 INFO    ] time= 22/06/2026 06:05:59
[2026-06-22 06:05:59,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:05:59,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:05:59,695.695 INFO    ] No existing commands found in stream
[2026-06-22 06:06:04,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:06:04,709.709 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-22 06:06:09,000.000 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:06:09,003.003 INFO    ] Checking for system updates...
[2026-06-22 06:06:09,039.039 INFO    ] 200
[2026-06-22 06:06:09,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:06:09,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:06:09,098.098 INFO    ] No update needed
[2026-06-22 06:06:09,100.100 INFO    ] Checking for camera pi updates...
[2026-06-22 06:06:09,140.140 INFO    ] 200
[2026-06-22 06:06:09,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:06:09,183.183 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:06:09,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:06:09,267.267 INFO    ] No camera update needed
[2026-06-22 06:06:09,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:06:09,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:06:09,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:06:09,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:06:11,325.325 INFO    ] ================================================
[2026-06-22 06:06:11,340.340 INFO    ] Launching Daemon at Mon Jun 22 06:06:11 IST 2026
[2026-06-22 06:06:11,351.351 INFO    ] ================================================
[2026-06-22 06:06:11,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:06:11
[2026-06-22 06:06:12,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:06:12,684.684 INFO    ] Initializing speech engine...
[2026-06-22 06:06:12,693.693 INFO    ] 2026-06-22 06:06:12
[2026-06-22 06:06:12,940.940 INFO    ] 2026-06-22 06:06:12
[2026-06-22 06:06:12,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:06:13,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:06:13,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:06:13,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:06:13,414.414 INFO    ] time= 22/06/2026 06:06:13
[2026-06-22 06:06:13,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:06:13,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:06:13,560.560 INFO    ] No existing commands found in stream
[2026-06-22 06:06:18,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:06:18,574.574 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-22 06:06:19,070.070 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:06:19,073.073 INFO    ] Checking for system updates...
[2026-06-22 06:06:19,109.109 INFO    ] 200
[2026-06-22 06:06:19,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:06:19,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:06:19,168.168 INFO    ] No update needed
[2026-06-22 06:06:19,170.170 INFO    ] Checking for camera pi updates...
[2026-06-22 06:06:19,203.203 INFO    ] 200
[2026-06-22 06:06:19,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:06:19,254.254 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:06:19,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:06:19,338.338 INFO    ] No camera update needed
[2026-06-22 06:06:19,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:06:19,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:06:19,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:06:19,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:06:21,395.395 INFO    ] ================================================
[2026-06-22 06:06:21,410.410 INFO    ] Launching Daemon at Mon Jun 22 06:06:21 IST 2026
[2026-06-22 06:06:21,420.420 INFO    ] ================================================
[2026-06-22 06:06:21,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:06:21
[2026-06-22 06:06:22,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:06:22,856.856 INFO    ] Initializing speech engine...
[2026-06-22 06:06:22,866.866 INFO    ] 2026-06-22 06:06:22
[2026-06-22 06:06:23,129.129 INFO    ] 2026-06-22 06:06:23
[2026-06-22 06:06:23,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:06:23,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:06:23,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:06:23,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:06:23,574.574 INFO    ] time= 22/06/2026 06:06:23
[2026-06-22 06:06:23,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:06:23,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:06:23,803.803 INFO    ] No existing commands found in stream
[2026-06-22 06:06:28,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:06:28,833.833 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-22 06:06:32,416.416 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:06:32,419.419 INFO    ] Checking for system updates...
[2026-06-22 06:06:32,462.462 INFO    ] 200
[2026-06-22 06:06:32,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:06:32,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:06:32,527.527 INFO    ] No update needed
[2026-06-22 06:06:32,529.529 INFO    ] Checking for camera pi updates...
[2026-06-22 06:06:32,569.569 INFO    ] 200
[2026-06-22 06:06:32,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:06:32,616.616 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:06:32,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:06:32,702.702 INFO    ] No camera update needed
[2026-06-22 06:06:32,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:06:32,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:06:32,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:06:32,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:06:34,762.762 INFO    ] ================================================
[2026-06-22 06:06:34,777.777 INFO    ] Launching Daemon at Mon Jun 22 06:06:34 IST 2026
[2026-06-22 06:06:34,787.787 INFO    ] ================================================
[2026-06-22 06:06:35,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:06:35
[2026-06-22 06:06:35,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:06:36,195.195 INFO    ] Initializing speech engine...
[2026-06-22 06:06:36,218.218 INFO    ] 2026-06-22 06:06:36
[2026-06-22 06:06:36,473.473 INFO    ] 2026-06-22 06:06:36
[2026-06-22 06:06:36,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:06:36,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:06:36,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:06:36,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:06:36,953.953 INFO    ] time= 22/06/2026 06:06:36
[2026-06-22 06:06:37,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:06:37,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:06:37,177.177 INFO    ] No existing commands found in stream
[2026-06-22 06:06:42,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:06:42,208.208 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-22 06:06:45,519.519 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:06:45,522.522 INFO    ] Checking for system updates...
[2026-06-22 06:06:45,558.558 INFO    ] 200
[2026-06-22 06:06:45,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:06:45,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:06:45,617.617 INFO    ] No update needed
[2026-06-22 06:06:45,620.620 INFO    ] Checking for camera pi updates...
[2026-06-22 06:06:45,655.655 INFO    ] 200
[2026-06-22 06:06:45,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:06:45,698.698 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:06:45,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:06:45,798.798 INFO    ] No camera update needed
[2026-06-22 06:06:45,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:06:45,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:06:45,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:06:45,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:06:47,860.860 INFO    ] ================================================
[2026-06-22 06:06:47,875.875 INFO    ] Launching Daemon at Mon Jun 22 06:06:47 IST 2026
[2026-06-22 06:06:47,886.886 INFO    ] ================================================
[2026-06-22 06:06:48,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:06:48
[2026-06-22 06:06:48,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:06:49,236.236 INFO    ] Initializing speech engine...
[2026-06-22 06:06:49,242.242 INFO    ] 2026-06-22 06:06:49
[2026-06-22 06:06:49,491.491 INFO    ] 2026-06-22 06:06:49
[2026-06-22 06:06:49,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:06:50,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:06:50,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:06:51,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:06:51,289.289 INFO    ] time= 22/06/2026 06:06:51
[2026-06-22 06:06:51,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:06:51,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:06:51,405.405 INFO    ] No existing commands found in stream
[2026-06-22 06:06:56,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:06:56,433.433 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-22 06:06:59,475.475 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:06:59,477.477 INFO    ] Checking for system updates...
[2026-06-22 06:06:59,514.514 INFO    ] 200
[2026-06-22 06:06:59,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:06:59,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:06:59,571.571 INFO    ] No update needed
[2026-06-22 06:06:59,573.573 INFO    ] Checking for camera pi updates...
[2026-06-22 06:06:59,610.610 INFO    ] 200
[2026-06-22 06:06:59,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:06:59,657.657 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:06:59,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:06:59,756.756 INFO    ] No camera update needed
[2026-06-22 06:06:59,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:06:59,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:06:59,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:06:59,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:07:01,819.819 INFO    ] ================================================
[2026-06-22 06:07:01,872.872 INFO    ] Launching Daemon at Mon Jun 22 06:07:01 IST 2026
[2026-06-22 06:07:01,897.897 INFO    ] ================================================
[2026-06-22 06:07:02,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:07:02
[2026-06-22 06:07:03,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:07:03,684.684 INFO    ] Initializing speech engine...
[2026-06-22 06:07:03,692.692 INFO    ] 2026-06-22 06:07:03
[2026-06-22 06:07:03,986.986 INFO    ] 2026-06-22 06:07:03
[2026-06-22 06:07:04,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:07:04,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:07:04,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:07:04,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:07:04,367.367 INFO    ] time= 22/06/2026 06:07:04
[2026-06-22 06:07:04,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:07:04,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:07:04,465.465 INFO    ] No existing commands found in stream
[2026-06-22 06:07:09,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:07:09,493.493 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-22 06:07:10,089.089 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:07:10,091.091 INFO    ] Checking for system updates...
[2026-06-22 06:07:10,127.127 INFO    ] 200
[2026-06-22 06:07:10,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:07:10,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:07:10,189.189 INFO    ] No update needed
[2026-06-22 06:07:10,191.191 INFO    ] Checking for camera pi updates...
[2026-06-22 06:07:10,228.228 INFO    ] 200
[2026-06-22 06:07:10,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:07:10,276.276 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:07:10,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:07:10,464.464 INFO    ] No camera update needed
[2026-06-22 06:07:10,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:07:10,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:07:10,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:07:10,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:07:12,522.522 INFO    ] ================================================
[2026-06-22 06:07:12,538.538 INFO    ] Launching Daemon at Mon Jun 22 06:07:12 IST 2026
[2026-06-22 06:07:12,549.549 INFO    ] ================================================
[2026-06-22 06:07:13,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:07:13
[2026-06-22 06:07:13,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:07:13,995.995 INFO    ] Initializing speech engine...
[2026-06-22 06:07:14,005.005 INFO    ] 2026-06-22 06:07:13
[2026-06-22 06:07:14,260.260 INFO    ] 2026-06-22 06:07:14
[2026-06-22 06:07:14,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:07:14,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:07:14,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:07:14,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:07:14,703.703 INFO    ] time= 22/06/2026 06:07:14
[2026-06-22 06:07:14,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:07:14,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:07:14,866.866 INFO    ] No existing commands found in stream
[2026-06-22 06:07:19,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:07:19,881.881 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-22 06:07:21,538.538 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:07:21,541.541 INFO    ] Checking for system updates...
[2026-06-22 06:07:21,578.578 INFO    ] 200
[2026-06-22 06:07:21,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:07:21,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:07:21,644.644 INFO    ] No update needed
[2026-06-22 06:07:21,647.647 INFO    ] Checking for camera pi updates...
[2026-06-22 06:07:21,683.683 INFO    ] 200
[2026-06-22 06:07:21,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:07:21,729.729 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:07:21,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:07:21,820.820 INFO    ] No camera update needed
[2026-06-22 06:07:21,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:07:21,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:07:21,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:07:21,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:07:23,879.879 INFO    ] ================================================
[2026-06-22 06:07:23,894.894 INFO    ] Launching Daemon at Mon Jun 22 06:07:23 IST 2026
[2026-06-22 06:07:23,905.905 INFO    ] ================================================
[2026-06-22 06:07:24,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:07:24
[2026-06-22 06:07:25,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:07:25,413.413 INFO    ] Initializing speech engine...
[2026-06-22 06:07:25,420.420 INFO    ] 2026-06-22 06:07:25
[2026-06-22 06:07:25,669.669 INFO    ] 2026-06-22 06:07:25
[2026-06-22 06:07:25,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:07:25,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:07:25,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:07:26,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:07:26,120.120 INFO    ] time= 22/06/2026 06:07:26
[2026-06-22 06:07:26,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:07:26,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:07:26,284.284 INFO    ] No existing commands found in stream
[2026-06-22 06:07:31,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:07:31,299.299 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-22 06:07:33,373.373 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:07:33,376.376 INFO    ] Checking for system updates...
[2026-06-22 06:07:33,412.412 INFO    ] 200
[2026-06-22 06:07:33,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:07:33,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:07:33,477.477 INFO    ] No update needed
[2026-06-22 06:07:33,479.479 INFO    ] Checking for camera pi updates...
[2026-06-22 06:07:33,517.517 INFO    ] 200
[2026-06-22 06:07:33,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:07:33,561.561 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:07:33,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:07:33,662.662 INFO    ] No camera update needed
[2026-06-22 06:07:33,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:07:33,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:07:33,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:07:33,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:07:35,719.719 INFO    ] ================================================
[2026-06-22 06:07:35,735.735 INFO    ] Launching Daemon at Mon Jun 22 06:07:35 IST 2026
[2026-06-22 06:07:35,745.745 INFO    ] ================================================
[2026-06-22 06:07:36,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:07:36
[2026-06-22 06:07:36,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:07:37,281.281 INFO    ] Initializing speech engine...
[2026-06-22 06:07:37,286.286 INFO    ] 2026-06-22 06:07:37
[2026-06-22 06:07:37,575.575 INFO    ] 2026-06-22 06:07:37
[2026-06-22 06:07:37,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:07:37,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:07:37,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:07:37,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:07:38,030.030 INFO    ] time= 22/06/2026 06:07:37
[2026-06-22 06:07:38,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:07:38,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:07:38,240.240 INFO    ] No existing commands found in stream
[2026-06-22 06:07:43,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:07:43,271.271 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-22 06:07:43,820.820 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:07:43,823.823 INFO    ] Checking for system updates...
[2026-06-22 06:07:43,864.864 INFO    ] 200
[2026-06-22 06:07:43,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:07:43,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:07:43,929.929 INFO    ] No update needed
[2026-06-22 06:07:43,932.932 INFO    ] Checking for camera pi updates...
[2026-06-22 06:07:43,977.977 INFO    ] 200
[2026-06-22 06:07:43,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:07:44,022.022 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:07:44,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:07:44,119.119 INFO    ] No camera update needed
[2026-06-22 06:07:44,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:07:44,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:07:44,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:07:44,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:07:46,185.185 INFO    ] ================================================
[2026-06-22 06:07:46,201.201 INFO    ] Launching Daemon at Mon Jun 22 06:07:46 IST 2026
[2026-06-22 06:07:46,212.212 INFO    ] ================================================
[2026-06-22 06:07:46,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:07:46
[2026-06-22 06:07:47,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:07:47,537.537 INFO    ] Initializing speech engine...
[2026-06-22 06:07:47,545.545 INFO    ] 2026-06-22 06:07:47
[2026-06-22 06:07:47,850.850 INFO    ] 2026-06-22 06:07:47
[2026-06-22 06:07:47,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:07:48,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:07:48,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:07:48,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:07:48,272.272 INFO    ] time= 22/06/2026 06:07:48
[2026-06-22 06:07:48,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:07:48,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:07:48,433.433 INFO    ] No existing commands found in stream
[2026-06-22 06:07:53,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:07:53,461.461 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-22 06:07:58,032.032 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:07:58,034.034 INFO    ] Checking for system updates...
[2026-06-22 06:07:58,055.055 INFO    ] 200
[2026-06-22 06:07:58,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:07:58,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:07:58,088.088 INFO    ] No update needed
[2026-06-22 06:07:58,089.089 INFO    ] Checking for camera pi updates...
[2026-06-22 06:07:58,117.117 INFO    ] 200
[2026-06-22 06:07:58,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:07:58,161.161 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:07:58,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:07:58,256.256 INFO    ] No camera update needed
[2026-06-22 06:07:58,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:07:58,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:07:58,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:07:58,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:08:00,312.312 INFO    ] ================================================
[2026-06-22 06:08:00,328.328 INFO    ] Launching Daemon at Mon Jun 22 06:08:00 IST 2026
[2026-06-22 06:08:00,340.340 INFO    ] ================================================
[2026-06-22 06:08:00,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:08:00
[2026-06-22 06:08:01,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:08:01,956.956 INFO    ] Initializing speech engine...
[2026-06-22 06:08:01,961.961 INFO    ] 2026-06-22 06:08:01
[2026-06-22 06:08:02,400.400 INFO    ] 2026-06-22 06:08:02
[2026-06-22 06:08:02,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:08:02,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:08:02,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:08:02,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:08:02,788.788 INFO    ] time= 22/06/2026 06:08:02
[2026-06-22 06:08:02,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:08:02,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:08:02,857.857 INFO    ] No existing commands found in stream
[2026-06-22 06:08:07,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:08:07,870.870 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-22 06:08:08,424.424 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:08:08,427.427 INFO    ] Checking for system updates...
[2026-06-22 06:08:08,467.467 INFO    ] 200
[2026-06-22 06:08:08,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:08:08,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:08:08,532.532 INFO    ] No update needed
[2026-06-22 06:08:08,535.535 INFO    ] Checking for camera pi updates...
[2026-06-22 06:08:08,569.569 INFO    ] 200
[2026-06-22 06:08:08,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:08:08,612.612 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:08:08,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:08:08,695.695 INFO    ] No camera update needed
[2026-06-22 06:08:08,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:08:08,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:08:08,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:08:08,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:08:10,752.752 INFO    ] ================================================
[2026-06-22 06:08:10,767.767 INFO    ] Launching Daemon at Mon Jun 22 06:08:10 IST 2026
[2026-06-22 06:08:10,778.778 INFO    ] ================================================
[2026-06-22 06:08:11,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:08:11
[2026-06-22 06:08:11,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:08:12,184.184 INFO    ] Initializing speech engine...
[2026-06-22 06:08:12,205.205 INFO    ] 2026-06-22 06:08:12
[2026-06-22 06:08:12,465.465 INFO    ] 2026-06-22 06:08:12
[2026-06-22 06:08:12,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:08:12,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:08:12,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:08:12,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:08:12,806.806 INFO    ] time= 22/06/2026 06:08:12
[2026-06-22 06:08:12,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:08:12,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:08:12,919.919 INFO    ] No existing commands found in stream
[2026-06-22 06:08:17,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:08:17,934.934 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-22 06:08:19,511.511 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:08:19,514.514 INFO    ] Checking for system updates...
[2026-06-22 06:08:19,550.550 INFO    ] 200
[2026-06-22 06:08:19,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:08:19,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:08:19,636.636 INFO    ] No update needed
[2026-06-22 06:08:19,639.639 INFO    ] Checking for camera pi updates...
[2026-06-22 06:08:19,672.672 INFO    ] 200
[2026-06-22 06:08:19,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:08:19,720.720 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:08:19,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:08:19,808.808 INFO    ] No camera update needed
[2026-06-22 06:08:19,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:08:19,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:08:19,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:08:19,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:08:21,869.869 INFO    ] ================================================
[2026-06-22 06:08:21,884.884 INFO    ] Launching Daemon at Mon Jun 22 06:08:21 IST 2026
[2026-06-22 06:08:21,895.895 INFO    ] ================================================
[2026-06-22 06:08:22,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:08:22
[2026-06-22 06:08:22,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:08:23,247.247 INFO    ] Initializing speech engine...
[2026-06-22 06:08:23,257.257 INFO    ] 2026-06-22 06:08:23
[2026-06-22 06:08:23,550.550 INFO    ] 2026-06-22 06:08:23
[2026-06-22 06:08:23,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:08:23,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:08:23,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:08:23,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:08:24,010.010 INFO    ] time= 22/06/2026 06:08:23
[2026-06-22 06:08:24,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:08:24,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:08:24,158.158 INFO    ] No existing commands found in stream
[2026-06-22 06:08:29,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:08:29,174.174 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-22 06:08:32,446.446 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:08:32,449.449 INFO    ] Checking for system updates...
[2026-06-22 06:08:32,488.488 INFO    ] 200
[2026-06-22 06:08:32,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:08:32,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:08:32,555.555 INFO    ] No update needed
[2026-06-22 06:08:32,558.558 INFO    ] Checking for camera pi updates...
[2026-06-22 06:08:32,595.595 INFO    ] 200
[2026-06-22 06:08:32,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:08:32,642.642 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:08:32,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:08:32,695.695 INFO    ] No camera update needed
[2026-06-22 06:08:32,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:08:32,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:08:32,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:08:32,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:08:34,752.752 INFO    ] ================================================
[2026-06-22 06:08:34,768.768 INFO    ] Launching Daemon at Mon Jun 22 06:08:34 IST 2026
[2026-06-22 06:08:34,779.779 INFO    ] ================================================
[2026-06-22 06:08:35,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:08:35
[2026-06-22 06:08:35,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:08:36,250.250 INFO    ] Initializing speech engine...
[2026-06-22 06:08:36,263.263 INFO    ] 2026-06-22 06:08:36
[2026-06-22 06:08:36,578.578 INFO    ] 2026-06-22 06:08:36
[2026-06-22 06:08:36,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:08:36,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:08:36,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:08:37,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:08:37,082.082 INFO    ] time= 22/06/2026 06:08:37
[2026-06-22 06:08:37,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:08:37,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:08:37,218.218 INFO    ] No existing commands found in stream
[2026-06-22 06:08:42,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:08:42,249.249 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-22 06:08:43,587.587 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:08:43,588.588 INFO    ] Checking for system updates...
[2026-06-22 06:08:43,616.616 INFO    ] 200
[2026-06-22 06:08:43,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:08:43,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:08:43,684.684 INFO    ] No update needed
[2026-06-22 06:08:43,687.687 INFO    ] Checking for camera pi updates...
[2026-06-22 06:08:43,727.727 INFO    ] 200
[2026-06-22 06:08:43,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:08:43,772.772 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:08:43,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:08:43,826.826 INFO    ] No camera update needed
[2026-06-22 06:08:43,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:08:43,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:08:43,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:08:43,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:08:45,885.885 INFO    ] ================================================
[2026-06-22 06:08:45,901.901 INFO    ] Launching Daemon at Mon Jun 22 06:08:45 IST 2026
[2026-06-22 06:08:45,912.912 INFO    ] ================================================
[2026-06-22 06:08:46,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:08:46
[2026-06-22 06:08:47,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:08:47,345.345 INFO    ] Initializing speech engine...
[2026-06-22 06:08:47,353.353 INFO    ] 2026-06-22 06:08:47
[2026-06-22 06:08:47,606.606 INFO    ] 2026-06-22 06:08:47
[2026-06-22 06:08:47,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:08:47,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:08:47,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:08:47,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:08:47,948.948 INFO    ] time= 22/06/2026 06:08:47
[2026-06-22 06:08:47,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:08:47,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:08:48,061.061 INFO    ] No existing commands found in stream
[2026-06-22 06:08:53,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:08:53,082.082 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-22 06:08:57,058.058 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:08:57,061.061 INFO    ] Checking for system updates...
[2026-06-22 06:08:57,126.126 INFO    ] 200
[2026-06-22 06:08:57,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:08:57,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:08:57,191.191 INFO    ] No update needed
[2026-06-22 06:08:57,199.199 INFO    ] Checking for camera pi updates...
[2026-06-22 06:08:57,233.233 INFO    ] 200
[2026-06-22 06:08:57,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:08:57,282.282 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:08:57,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:08:57,366.366 INFO    ] No camera update needed
[2026-06-22 06:08:57,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:08:57,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:08:57,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:08:57,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:08:59,425.425 INFO    ] ================================================
[2026-06-22 06:08:59,440.440 INFO    ] Launching Daemon at Mon Jun 22 06:08:59 IST 2026
[2026-06-22 06:08:59,451.451 INFO    ] ================================================
[2026-06-22 06:09:00,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:09:00
[2026-06-22 06:09:00,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:09:00,795.795 INFO    ] Initializing speech engine...
[2026-06-22 06:09:00,804.804 INFO    ] 2026-06-22 06:09:00
[2026-06-22 06:09:01,055.055 INFO    ] 2026-06-22 06:09:01
[2026-06-22 06:09:01,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:09:01,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:09:01,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:09:01,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:09:01,432.432 INFO    ] time= 22/06/2026 06:09:01
[2026-06-22 06:09:01,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:09:01,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:09:01,601.601 INFO    ] No existing commands found in stream
[2026-06-22 06:09:06,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:09:06,629.629 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-22 06:09:09,301.301 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:09:09,303.303 INFO    ] Checking for system updates...
[2026-06-22 06:09:09,340.340 INFO    ] 200
[2026-06-22 06:09:09,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:09:09,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:09:09,399.399 INFO    ] No update needed
[2026-06-22 06:09:09,401.401 INFO    ] Checking for camera pi updates...
[2026-06-22 06:09:09,439.439 INFO    ] 200
[2026-06-22 06:09:09,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:09:09,485.485 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:09:09,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:09:09,573.573 INFO    ] No camera update needed
[2026-06-22 06:09:09,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:09:09,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:09:09,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:09:09,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:09:11,630.630 INFO    ] ================================================
[2026-06-22 06:09:11,645.645 INFO    ] Launching Daemon at Mon Jun 22 06:09:11 IST 2026
[2026-06-22 06:09:11,656.656 INFO    ] ================================================
[2026-06-22 06:09:12,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:09:12
[2026-06-22 06:09:12,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:09:13,119.119 INFO    ] Initializing speech engine...
[2026-06-22 06:09:13,126.126 INFO    ] 2026-06-22 06:09:13
[2026-06-22 06:09:13,386.386 INFO    ] 2026-06-22 06:09:13
[2026-06-22 06:09:13,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:09:13,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:09:13,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:09:13,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:09:13,826.826 INFO    ] time= 22/06/2026 06:09:13
[2026-06-22 06:09:13,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:09:13,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:09:13,992.992 INFO    ] No existing commands found in stream
[2026-06-22 06:09:19,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:09:19,005.005 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-22 06:09:23,278.278 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:09:23,280.280 INFO    ] Checking for system updates...
[2026-06-22 06:09:23,316.316 INFO    ] 200
[2026-06-22 06:09:23,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:09:23,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:09:23,376.376 INFO    ] No update needed
[2026-06-22 06:09:23,379.379 INFO    ] Checking for camera pi updates...
[2026-06-22 06:09:23,419.419 INFO    ] 200
[2026-06-22 06:09:23,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:09:23,463.463 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:09:23,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:09:23,647.647 INFO    ] No camera update needed
[2026-06-22 06:09:23,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:09:23,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:09:23,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:09:23,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:09:25,702.702 INFO    ] ================================================
[2026-06-22 06:09:25,717.717 INFO    ] Launching Daemon at Mon Jun 22 06:09:25 IST 2026
[2026-06-22 06:09:25,728.728 INFO    ] ================================================
[2026-06-22 06:09:26,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:09:26
[2026-06-22 06:09:26,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:09:27,284.284 INFO    ] Initializing speech engine...
[2026-06-22 06:09:27,291.291 INFO    ] 2026-06-22 06:09:27
[2026-06-22 06:09:27,584.584 INFO    ] 2026-06-22 06:09:27
[2026-06-22 06:09:27,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:09:27,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:09:27,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:09:28,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:09:28,048.048 INFO    ] time= 22/06/2026 06:09:28
[2026-06-22 06:09:28,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:09:28,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:09:28,201.201 INFO    ] No existing commands found in stream
[2026-06-22 06:09:33,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:09:33,214.214 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-22 06:09:37,298.298 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:09:37,300.300 INFO    ] Checking for system updates...
[2026-06-22 06:09:37,321.321 INFO    ] 200
[2026-06-22 06:09:37,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:09:37,353.353 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:09:37,354.354 INFO    ] No update needed
[2026-06-22 06:09:37,356.356 INFO    ] Checking for camera pi updates...
[2026-06-22 06:09:37,378.378 INFO    ] 200
[2026-06-22 06:09:37,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:09:37,428.428 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:09:37,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:09:37,483.483 INFO    ] No camera update needed
[2026-06-22 06:09:37,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:09:37,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:09:37,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:09:37,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:09:39,538.538 INFO    ] ================================================
[2026-06-22 06:09:39,553.553 INFO    ] Launching Daemon at Mon Jun 22 06:09:39 IST 2026
[2026-06-22 06:09:39,564.564 INFO    ] ================================================
[2026-06-22 06:09:40,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:09:40
[2026-06-22 06:09:40,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:09:41,097.097 INFO    ] Initializing speech engine...
[2026-06-22 06:09:41,110.110 INFO    ] 2026-06-22 06:09:41
[2026-06-22 06:09:41,400.400 INFO    ] 2026-06-22 06:09:41
[2026-06-22 06:09:41,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:09:41,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:09:41,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:09:41,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:09:41,866.866 INFO    ] time= 22/06/2026 06:09:41
[2026-06-22 06:09:41,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:09:41,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:09:42,077.077 INFO    ] No existing commands found in stream
[2026-06-22 06:09:47,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:09:47,107.107 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-22 06:09:48,625.625 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:09:48,628.628 INFO    ] Checking for system updates...
[2026-06-22 06:09:48,667.667 INFO    ] 200
[2026-06-22 06:09:48,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:09:48,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:09:48,732.732 INFO    ] No update needed
[2026-06-22 06:09:48,735.735 INFO    ] Checking for camera pi updates...
[2026-06-22 06:09:48,772.772 INFO    ] 200
[2026-06-22 06:09:48,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:09:48,820.820 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:09:48,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:09:48,903.903 INFO    ] No camera update needed
[2026-06-22 06:09:48,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:09:48,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:09:48,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:09:48,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:09:50,959.959 INFO    ] ================================================
[2026-06-22 06:09:50,975.975 INFO    ] Launching Daemon at Mon Jun 22 06:09:50 IST 2026
[2026-06-22 06:09:50,985.985 INFO    ] ================================================
[2026-06-22 06:09:51,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:09:51
[2026-06-22 06:09:52,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:09:52,521.521 INFO    ] Initializing speech engine...
[2026-06-22 06:09:52,535.535 INFO    ] 2026-06-22 06:09:52
[2026-06-22 06:09:52,847.847 INFO    ] 2026-06-22 06:09:52
[2026-06-22 06:09:52,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:09:53,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:09:53,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:09:53,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:09:53,353.353 INFO    ] time= 22/06/2026 06:09:53
[2026-06-22 06:09:53,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:09:53,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:09:53,496.496 INFO    ] No existing commands found in stream
[2026-06-22 06:09:58,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:09:58,526.526 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-22 06:10:01,066.066 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:10:01,067.067 INFO    ] Checking for system updates...
[2026-06-22 06:10:01,088.088 INFO    ] 200
[2026-06-22 06:10:01,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:10:01,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:10:01,147.147 INFO    ] No update needed
[2026-06-22 06:10:01,150.150 INFO    ] Checking for camera pi updates...
[2026-06-22 06:10:01,188.188 INFO    ] 200
[2026-06-22 06:10:01,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:10:01,236.236 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:10:01,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:10:01,490.490 INFO    ] No camera update needed
[2026-06-22 06:10:01,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:10:01,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:10:01,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:10:01,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:10:03,551.551 INFO    ] ================================================
[2026-06-22 06:10:03,568.568 INFO    ] Launching Daemon at Mon Jun 22 06:10:03 IST 2026
[2026-06-22 06:10:03,581.581 INFO    ] ================================================
[2026-06-22 06:10:04,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:10:04
[2026-06-22 06:10:04,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:10:05,037.037 INFO    ] Initializing speech engine...
[2026-06-22 06:10:05,049.049 INFO    ] 2026-06-22 06:10:05
[2026-06-22 06:10:05,313.313 INFO    ] 2026-06-22 06:10:05
[2026-06-22 06:10:05,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:10:05,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:10:05,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:10:05,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:10:05,691.691 INFO    ] time= 22/06/2026 06:10:05
[2026-06-22 06:10:05,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:10:05,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:10:05,821.821 INFO    ] No existing commands found in stream
[2026-06-22 06:10:10,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:10:10,837.837 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-22 06:10:11,286.286 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:10:11,287.287 INFO    ] Checking for system updates...
[2026-06-22 06:10:11,309.309 INFO    ] 200
[2026-06-22 06:10:11,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:10:11,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:10:11,344.344 INFO    ] No update needed
[2026-06-22 06:10:11,346.346 INFO    ] Checking for camera pi updates...
[2026-06-22 06:10:11,368.368 INFO    ] 200
[2026-06-22 06:10:11,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:10:11,402.402 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:10:11,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:10:11,511.511 INFO    ] No camera update needed
[2026-06-22 06:10:11,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:10:11,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:10:11,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:10:11,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:10:13,567.567 INFO    ] ================================================
[2026-06-22 06:10:13,582.582 INFO    ] Launching Daemon at Mon Jun 22 06:10:13 IST 2026
[2026-06-22 06:10:13,592.592 INFO    ] ================================================
[2026-06-22 06:10:14,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:10:14
[2026-06-22 06:10:14,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:10:14,947.947 INFO    ] Initializing speech engine...
[2026-06-22 06:10:14,953.953 INFO    ] 2026-06-22 06:10:14
[2026-06-22 06:10:15,199.199 INFO    ] 2026-06-22 06:10:15
[2026-06-22 06:10:15,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:10:15,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:10:15,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:10:15,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:10:15,562.562 INFO    ] time= 22/06/2026 06:10:15
[2026-06-22 06:10:15,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:10:15,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:10:15,657.657 INFO    ] No existing commands found in stream
[2026-06-22 06:10:20,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:10:20,671.671 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-22 06:10:24,631.631 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:10:24,635.635 INFO    ] Checking for system updates...
[2026-06-22 06:10:24,672.672 INFO    ] 200
[2026-06-22 06:10:24,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:10:24,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:10:24,739.739 INFO    ] No update needed
[2026-06-22 06:10:24,742.742 INFO    ] Checking for camera pi updates...
[2026-06-22 06:10:24,777.777 INFO    ] 200
[2026-06-22 06:10:24,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:10:24,827.827 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:10:24,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:10:24,883.883 INFO    ] No camera update needed
[2026-06-22 06:10:24,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:10:24,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:10:24,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:10:24,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:10:26,942.942 INFO    ] ================================================
[2026-06-22 06:10:26,957.957 INFO    ] Launching Daemon at Mon Jun 22 06:10:26 IST 2026
[2026-06-22 06:10:26,968.968 INFO    ] ================================================
[2026-06-22 06:10:27,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:10:27
[2026-06-22 06:10:28,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:10:28,394.394 INFO    ] Initializing speech engine...
[2026-06-22 06:10:28,403.403 INFO    ] 2026-06-22 06:10:28
[2026-06-22 06:10:28,652.652 INFO    ] 2026-06-22 06:10:28
[2026-06-22 06:10:28,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:10:28,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:10:28,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:10:29,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:10:29,025.025 INFO    ] time= 22/06/2026 06:10:29
[2026-06-22 06:10:29,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:10:29,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:10:29,196.196 INFO    ] No existing commands found in stream
[2026-06-22 06:10:34,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:10:34,230.230 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-22 06:10:38,427.427 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:10:38,430.430 INFO    ] Checking for system updates...
[2026-06-22 06:10:38,469.469 INFO    ] 200
[2026-06-22 06:10:38,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:10:38,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:10:38,527.527 INFO    ] No update needed
[2026-06-22 06:10:38,529.529 INFO    ] Checking for camera pi updates...
[2026-06-22 06:10:38,566.566 INFO    ] 200
[2026-06-22 06:10:38,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:10:38,610.610 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:10:38,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:10:38,696.696 INFO    ] No camera update needed
[2026-06-22 06:10:38,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:10:38,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:10:38,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:10:38,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:10:40,752.752 INFO    ] ================================================
[2026-06-22 06:10:40,768.768 INFO    ] Launching Daemon at Mon Jun 22 06:10:40 IST 2026
[2026-06-22 06:10:40,785.785 INFO    ] ================================================
[2026-06-22 06:10:41,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:10:41
[2026-06-22 06:10:41,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:10:42,244.244 INFO    ] Initializing speech engine...
[2026-06-22 06:10:42,252.252 INFO    ] 2026-06-22 06:10:42
[2026-06-22 06:10:42,542.542 INFO    ] 2026-06-22 06:10:42
[2026-06-22 06:10:42,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:10:42,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:10:42,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:10:42,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:10:43,008.008 INFO    ] time= 22/06/2026 06:10:42
[2026-06-22 06:10:43,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:10:43,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:10:43,147.147 INFO    ] No existing commands found in stream
[2026-06-22 06:10:48,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:10:48,163.163 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-22 06:10:51,956.956 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:10:51,959.959 INFO    ] Checking for system updates...
[2026-06-22 06:10:52,002.002 INFO    ] 200
[2026-06-22 06:10:52,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:10:52,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:10:52,070.070 INFO    ] No update needed
[2026-06-22 06:10:52,076.076 INFO    ] Checking for camera pi updates...
[2026-06-22 06:10:52,114.114 INFO    ] 200
[2026-06-22 06:10:52,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:10:52,158.158 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:10:52,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:10:52,245.245 INFO    ] No camera update needed
[2026-06-22 06:10:52,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:10:52,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:10:52,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:10:52,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:10:54,300.300 INFO    ] ================================================
[2026-06-22 06:10:54,316.316 INFO    ] Launching Daemon at Mon Jun 22 06:10:54 IST 2026
[2026-06-22 06:10:54,328.328 INFO    ] ================================================
[2026-06-22 06:10:54,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:10:54
[2026-06-22 06:10:55,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:10:55,773.773 INFO    ] Initializing speech engine...
[2026-06-22 06:10:55,782.782 INFO    ] 2026-06-22 06:10:55
[2026-06-22 06:10:56,028.028 INFO    ] 2026-06-22 06:10:56
[2026-06-22 06:10:56,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:10:56,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:10:56,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:10:56,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:10:56,395.395 INFO    ] time= 22/06/2026 06:10:56
[2026-06-22 06:10:56,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:10:56,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:10:56,561.561 INFO    ] No existing commands found in stream
[2026-06-22 06:11:01,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:11:01,599.599 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-22 06:11:05,243.243 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:11:05,246.246 INFO    ] Checking for system updates...
[2026-06-22 06:11:05,282.282 INFO    ] 200
[2026-06-22 06:11:05,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:11:05,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:11:05,353.353 INFO    ] No update needed
[2026-06-22 06:11:05,355.355 INFO    ] Checking for camera pi updates...
[2026-06-22 06:11:05,392.392 INFO    ] 200
[2026-06-22 06:11:05,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:11:05,439.439 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:11:05,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:11:05,522.522 INFO    ] No camera update needed
[2026-06-22 06:11:05,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:11:05,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:11:05,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:11:05,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:11:07,577.577 INFO    ] ================================================
[2026-06-22 06:11:07,592.592 INFO    ] Launching Daemon at Mon Jun 22 06:11:07 IST 2026
[2026-06-22 06:11:07,603.603 INFO    ] ================================================
[2026-06-22 06:11:08,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:11:08
[2026-06-22 06:11:08,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:11:09,122.122 INFO    ] Initializing speech engine...
[2026-06-22 06:11:09,129.129 INFO    ] 2026-06-22 06:11:09
[2026-06-22 06:11:09,412.412 INFO    ] 2026-06-22 06:11:09
[2026-06-22 06:11:09,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:11:09,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:11:09,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:11:09,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:11:09,865.865 INFO    ] time= 22/06/2026 06:11:09
[2026-06-22 06:11:09,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:11:09,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:11:10,010.010 INFO    ] No existing commands found in stream
[2026-06-22 06:11:15,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:11:15,026.026 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-22 06:11:18,445.445 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:11:18,447.447 INFO    ] Checking for system updates...
[2026-06-22 06:11:18,467.467 INFO    ] 200
[2026-06-22 06:11:18,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:11:18,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:11:18,527.527 INFO    ] No update needed
[2026-06-22 06:11:18,535.535 INFO    ] Checking for camera pi updates...
[2026-06-22 06:11:18,570.570 INFO    ] 200
[2026-06-22 06:11:18,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:11:18,614.614 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:11:18,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:11:18,699.699 INFO    ] No camera update needed
[2026-06-22 06:11:18,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:11:18,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:11:18,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:11:18,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:11:20,756.756 INFO    ] ================================================
[2026-06-22 06:11:20,771.771 INFO    ] Launching Daemon at Mon Jun 22 06:11:20 IST 2026
[2026-06-22 06:11:20,781.781 INFO    ] ================================================
[2026-06-22 06:11:21,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:11:21
[2026-06-22 06:11:21,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:11:22,273.273 INFO    ] Initializing speech engine...
[2026-06-22 06:11:22,286.286 INFO    ] 2026-06-22 06:11:22
[2026-06-22 06:11:22,563.563 INFO    ] 2026-06-22 06:11:22
[2026-06-22 06:11:22,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:11:22,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:11:22,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:11:22,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:11:23,008.008 INFO    ] time= 22/06/2026 06:11:22
[2026-06-22 06:11:23,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:11:23,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:11:23,160.160 INFO    ] No existing commands found in stream
[2026-06-22 06:11:28,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:11:28,176.176 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-22 06:11:29,593.593 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:11:29,595.595 INFO    ] Checking for system updates...
[2026-06-22 06:11:29,617.617 INFO    ] 200
[2026-06-22 06:11:29,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:11:29,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:11:29,652.652 INFO    ] No update needed
[2026-06-22 06:11:29,654.654 INFO    ] Checking for camera pi updates...
[2026-06-22 06:11:29,678.678 INFO    ] 200
[2026-06-22 06:11:29,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:11:29,724.724 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:11:29,913.913 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:11:29,916.916 INFO    ] No camera update needed
[2026-06-22 06:11:29,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:11:29,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:11:29,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:11:29,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:11:31,977.977 INFO    ] ================================================
[2026-06-22 06:11:31,994.994 INFO    ] Launching Daemon at Mon Jun 22 06:11:31 IST 2026
[2026-06-22 06:11:32,005.005 INFO    ] ================================================
[2026-06-22 06:11:32,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:11:32
[2026-06-22 06:11:33,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:11:33,584.584 INFO    ] Initializing speech engine...
[2026-06-22 06:11:33,593.593 INFO    ] 2026-06-22 06:11:33
[2026-06-22 06:11:33,840.840 INFO    ] 2026-06-22 06:11:33
[2026-06-22 06:11:33,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:11:34,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:11:34,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:11:34,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:11:34,207.207 INFO    ] time= 22/06/2026 06:11:34
[2026-06-22 06:11:34,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:11:34,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:11:34,390.390 INFO    ] No existing commands found in stream
[2026-06-22 06:11:39,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:11:39,418.418 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-22 06:11:40,819.819 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:11:40,820.820 INFO    ] Checking for system updates...
[2026-06-22 06:11:40,841.841 INFO    ] 200
[2026-06-22 06:11:40,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:11:40,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:11:40,874.874 INFO    ] No update needed
[2026-06-22 06:11:40,877.877 INFO    ] Checking for camera pi updates...
[2026-06-22 06:11:40,915.915 INFO    ] 200
[2026-06-22 06:11:40,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:11:40,960.960 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:11:41,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:11:41,051.051 INFO    ] No camera update needed
[2026-06-22 06:11:41,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:11:41,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:11:41,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:11:41,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:11:43,110.110 INFO    ] ================================================
[2026-06-22 06:11:43,125.125 INFO    ] Launching Daemon at Mon Jun 22 06:11:43 IST 2026
[2026-06-22 06:11:43,135.135 INFO    ] ================================================
[2026-06-22 06:11:43,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:11:43
[2026-06-22 06:11:44,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:11:44,472.472 INFO    ] Initializing speech engine...
[2026-06-22 06:11:44,479.479 INFO    ] 2026-06-22 06:11:44
[2026-06-22 06:11:44,728.728 INFO    ] 2026-06-22 06:11:44
[2026-06-22 06:11:44,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:11:44,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:11:44,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:11:45,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:11:45,195.195 INFO    ] time= 22/06/2026 06:11:45
[2026-06-22 06:11:45,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:11:45,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:11:45,430.430 INFO    ] No existing commands found in stream
[2026-06-22 06:11:50,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:11:50,448.448 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-22 06:11:52,569.569 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:11:52,570.570 INFO    ] Checking for system updates...
[2026-06-22 06:11:52,605.605 INFO    ] 200
[2026-06-22 06:11:52,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:11:52,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:11:52,662.662 INFO    ] No update needed
[2026-06-22 06:11:52,665.665 INFO    ] Checking for camera pi updates...
[2026-06-22 06:11:52,701.701 INFO    ] 200
[2026-06-22 06:11:52,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:11:52,744.744 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:11:52,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:11:52,833.833 INFO    ] No camera update needed
[2026-06-22 06:11:52,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:11:52,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:11:52,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:11:52,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:11:54,890.890 INFO    ] ================================================
[2026-06-22 06:11:54,906.906 INFO    ] Launching Daemon at Mon Jun 22 06:11:54 IST 2026
[2026-06-22 06:11:54,916.916 INFO    ] ================================================
[2026-06-22 06:11:55,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:11:55
[2026-06-22 06:11:56,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:11:56,333.333 INFO    ] Initializing speech engine...
[2026-06-22 06:11:56,342.342 INFO    ] 2026-06-22 06:11:56
[2026-06-22 06:11:56,589.589 INFO    ] 2026-06-22 06:11:56
[2026-06-22 06:11:56,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:11:56,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:11:56,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:11:56,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:11:56,958.958 INFO    ] time= 22/06/2026 06:11:56
[2026-06-22 06:11:56,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:11:57,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:11:57,110.110 INFO    ] No existing commands found in stream
[2026-06-22 06:12:02,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:12:02,139.139 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-22 06:12:02,893.893 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:12:02,896.896 INFO    ] Checking for system updates...
[2026-06-22 06:12:02,940.940 INFO    ] 200
[2026-06-22 06:12:02,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:12:03,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:12:03,010.010 INFO    ] No update needed
[2026-06-22 06:12:03,013.013 INFO    ] Checking for camera pi updates...
[2026-06-22 06:12:03,057.057 INFO    ] 200
[2026-06-22 06:12:03,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:12:03,118.118 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:12:03,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:12:03,231.231 INFO    ] No camera update needed
[2026-06-22 06:12:03,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:12:03,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:12:03,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:12:03,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:12:05,307.307 INFO    ] ================================================
[2026-06-22 06:12:05,322.322 INFO    ] Launching Daemon at Mon Jun 22 06:12:05 IST 2026
[2026-06-22 06:12:05,333.333 INFO    ] ================================================
[2026-06-22 06:12:05,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:12:05
[2026-06-22 06:12:06,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:12:06,668.668 INFO    ] Initializing speech engine...
[2026-06-22 06:12:06,675.675 INFO    ] 2026-06-22 06:12:06
[2026-06-22 06:12:06,954.954 INFO    ] 2026-06-22 06:12:06
[2026-06-22 06:12:06,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:12:07,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:12:07,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:12:07,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:12:07,295.295 INFO    ] time= 22/06/2026 06:12:07
[2026-06-22 06:12:07,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:12:07,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:12:07,389.389 INFO    ] No existing commands found in stream
[2026-06-22 06:12:12,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:12:12,401.401 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-22 06:12:14,391.391 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:12:14,394.394 INFO    ] Checking for system updates...
[2026-06-22 06:12:14,430.430 INFO    ] 200
[2026-06-22 06:12:14,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:12:14,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:12:14,490.490 INFO    ] No update needed
[2026-06-22 06:12:14,493.493 INFO    ] Checking for camera pi updates...
[2026-06-22 06:12:14,527.527 INFO    ] 200
[2026-06-22 06:12:14,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:12:14,573.573 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:12:14,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:12:14,654.654 INFO    ] No camera update needed
[2026-06-22 06:12:14,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:12:14,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:12:14,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:12:14,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:12:16,708.708 INFO    ] ================================================
[2026-06-22 06:12:16,723.723 INFO    ] Launching Daemon at Mon Jun 22 06:12:16 IST 2026
[2026-06-22 06:12:16,733.733 INFO    ] ================================================
[2026-06-22 06:12:17,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:12:17
[2026-06-22 06:12:17,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:12:18,159.159 INFO    ] Initializing speech engine...
[2026-06-22 06:12:18,168.168 INFO    ] 2026-06-22 06:12:18
[2026-06-22 06:12:18,414.414 INFO    ] 2026-06-22 06:12:18
[2026-06-22 06:12:18,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:12:18,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:12:18,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:12:18,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:12:18,762.762 INFO    ] time= 22/06/2026 06:12:18
[2026-06-22 06:12:18,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:12:18,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:12:18,856.856 INFO    ] No existing commands found in stream
[2026-06-22 06:12:23,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:12:23,871.871 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-22 06:12:26,623.623 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:12:26,627.627 INFO    ] Checking for system updates...
[2026-06-22 06:12:26,663.663 INFO    ] 200
[2026-06-22 06:12:26,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:12:26,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:12:26,721.721 INFO    ] No update needed
[2026-06-22 06:12:26,723.723 INFO    ] Checking for camera pi updates...
[2026-06-22 06:12:26,760.760 INFO    ] 200
[2026-06-22 06:12:26,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:12:26,805.805 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:12:26,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:12:26,891.891 INFO    ] No camera update needed
[2026-06-22 06:12:26,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:12:26,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:12:26,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:12:26,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:12:28,950.950 INFO    ] ================================================
[2026-06-22 06:12:28,965.965 INFO    ] Launching Daemon at Mon Jun 22 06:12:28 IST 2026
[2026-06-22 06:12:28,976.976 INFO    ] ================================================
[2026-06-22 06:12:29,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:12:29
[2026-06-22 06:12:30,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:12:30,405.405 INFO    ] Initializing speech engine...
[2026-06-22 06:12:30,415.415 INFO    ] 2026-06-22 06:12:30
[2026-06-22 06:12:30,660.660 INFO    ] 2026-06-22 06:12:30
[2026-06-22 06:12:30,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:12:30,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:12:30,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:12:30,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:12:31,018.018 INFO    ] time= 22/06/2026 06:12:30
[2026-06-22 06:12:31,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:12:31,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:12:31,103.103 INFO    ] No existing commands found in stream
[2026-06-22 06:12:36,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:12:36,119.119 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-22 06:12:38,619.619 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:12:38,621.621 INFO    ] Checking for system updates...
[2026-06-22 06:12:38,660.660 INFO    ] 200
[2026-06-22 06:12:38,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:12:38,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:12:38,724.724 INFO    ] No update needed
[2026-06-22 06:12:38,727.727 INFO    ] Checking for camera pi updates...
[2026-06-22 06:12:38,765.765 INFO    ] 200
[2026-06-22 06:12:38,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:12:38,814.814 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:12:38,905.905 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:12:38,907.907 INFO    ] No camera update needed
[2026-06-22 06:12:38,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:12:38,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:12:38,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:12:38,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:12:40,967.967 INFO    ] ================================================
[2026-06-22 06:12:40,982.982 INFO    ] Launching Daemon at Mon Jun 22 06:12:40 IST 2026
[2026-06-22 06:12:40,993.993 INFO    ] ================================================
[2026-06-22 06:12:41,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:12:41
[2026-06-22 06:12:42,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:12:42,485.485 INFO    ] Initializing speech engine...
[2026-06-22 06:12:42,492.492 INFO    ] 2026-06-22 06:12:42
[2026-06-22 06:12:42,775.775 INFO    ] 2026-06-22 06:12:42
[2026-06-22 06:12:42,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:12:43,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:12:43,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:12:43,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:12:43,232.232 INFO    ] time= 22/06/2026 06:12:43
[2026-06-22 06:12:43,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:12:43,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:12:43,437.437 INFO    ] No existing commands found in stream
[2026-06-22 06:12:48,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:12:48,462.462 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-22 06:12:51,543.543 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:12:51,545.545 INFO    ] Checking for system updates...
[2026-06-22 06:12:51,567.567 INFO    ] 200
[2026-06-22 06:12:51,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:12:51,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:12:51,609.609 INFO    ] No update needed
[2026-06-22 06:12:51,611.611 INFO    ] Checking for camera pi updates...
[2026-06-22 06:12:51,650.650 INFO    ] 200
[2026-06-22 06:12:51,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:12:51,694.694 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:12:51,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:12:51,769.769 INFO    ] No camera update needed
[2026-06-22 06:12:51,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:12:51,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:12:51,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:12:51,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:12:53,827.827 INFO    ] ================================================
[2026-06-22 06:12:53,843.843 INFO    ] Launching Daemon at Mon Jun 22 06:12:53 IST 2026
[2026-06-22 06:12:53,853.853 INFO    ] ================================================
[2026-06-22 06:12:54,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:12:54
[2026-06-22 06:12:55,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:12:55,346.346 INFO    ] Initializing speech engine...
[2026-06-22 06:12:55,356.356 INFO    ] 2026-06-22 06:12:55
[2026-06-22 06:12:55,624.624 INFO    ] 2026-06-22 06:12:55
[2026-06-22 06:12:55,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:12:55,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:12:55,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:12:55,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:12:55,999.999 INFO    ] time= 22/06/2026 06:12:55
[2026-06-22 06:12:56,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:12:56,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:12:56,169.169 INFO    ] No existing commands found in stream
[2026-06-22 06:13:01,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:13:01,203.203 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-22 06:13:04,133.133 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:13:04,136.136 INFO    ] Checking for system updates...
[2026-06-22 06:13:04,173.173 INFO    ] 200
[2026-06-22 06:13:04,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:13:04,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:13:04,232.232 INFO    ] No update needed
[2026-06-22 06:13:04,235.235 INFO    ] Checking for camera pi updates...
[2026-06-22 06:13:04,272.272 INFO    ] 200
[2026-06-22 06:13:04,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:13:04,317.317 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:13:04,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:13:04,423.423 INFO    ] No camera update needed
[2026-06-22 06:13:04,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:13:04,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:13:04,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:13:04,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:13:06,481.481 INFO    ] ================================================
[2026-06-22 06:13:06,496.496 INFO    ] Launching Daemon at Mon Jun 22 06:13:06 IST 2026
[2026-06-22 06:13:06,508.508 INFO    ] ================================================
[2026-06-22 06:13:07,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:13:07
[2026-06-22 06:13:07,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:13:07,926.926 INFO    ] Initializing speech engine...
[2026-06-22 06:13:07,945.945 INFO    ] 2026-06-22 06:13:07
[2026-06-22 06:13:08,192.192 INFO    ] 2026-06-22 06:13:08
[2026-06-22 06:13:08,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:13:08,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:13:08,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:13:08,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:13:08,672.672 INFO    ] time= 22/06/2026 06:13:08
[2026-06-22 06:13:08,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:13:08,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:13:08,809.809 INFO    ] No existing commands found in stream
[2026-06-22 06:13:13,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:13:13,824.824 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-22 06:13:14,718.718 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:13:14,721.721 INFO    ] Checking for system updates...
[2026-06-22 06:13:14,759.759 INFO    ] 200
[2026-06-22 06:13:14,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:13:14,816.816 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:13:14,819.819 INFO    ] No update needed
[2026-06-22 06:13:14,821.821 INFO    ] Checking for camera pi updates...
[2026-06-22 06:13:14,856.856 INFO    ] 200
[2026-06-22 06:13:14,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:13:14,900.900 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:13:14,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:13:14,993.993 INFO    ] No camera update needed
[2026-06-22 06:13:14,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:13:14,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:13:15,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:13:15,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:13:17,050.050 INFO    ] ================================================
[2026-06-22 06:13:17,066.066 INFO    ] Launching Daemon at Mon Jun 22 06:13:17 IST 2026
[2026-06-22 06:13:17,078.078 INFO    ] ================================================
[2026-06-22 06:13:17,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:13:17
[2026-06-22 06:13:18,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:13:18,405.405 INFO    ] Initializing speech engine...
[2026-06-22 06:13:18,414.414 INFO    ] 2026-06-22 06:13:18
[2026-06-22 06:13:18,661.661 INFO    ] 2026-06-22 06:13:18
[2026-06-22 06:13:18,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:13:18,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:13:18,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:13:19,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:13:19,033.033 INFO    ] time= 22/06/2026 06:13:19
[2026-06-22 06:13:19,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:13:19,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:13:19,228.228 INFO    ] No existing commands found in stream
[2026-06-22 06:13:24,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:13:24,243.243 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-22 06:13:27,745.745 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:13:27,747.747 INFO    ] Checking for system updates...
[2026-06-22 06:13:27,768.768 INFO    ] 200
[2026-06-22 06:13:27,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:13:27,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:13:27,801.801 INFO    ] No update needed
[2026-06-22 06:13:27,802.802 INFO    ] Checking for camera pi updates...
[2026-06-22 06:13:27,825.825 INFO    ] 200
[2026-06-22 06:13:27,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:13:27,873.873 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:13:27,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:13:27,982.982 INFO    ] No camera update needed
[2026-06-22 06:13:27,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:13:27,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:13:27,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:13:27,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:13:30,040.040 INFO    ] ================================================
[2026-06-22 06:13:30,056.056 INFO    ] Launching Daemon at Mon Jun 22 06:13:30 IST 2026
[2026-06-22 06:13:30,067.067 INFO    ] ================================================
[2026-06-22 06:13:30,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:13:30
[2026-06-22 06:13:31,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:13:31,628.628 INFO    ] Initializing speech engine...
[2026-06-22 06:13:31,636.636 INFO    ] 2026-06-22 06:13:31
[2026-06-22 06:13:31,945.945 INFO    ] 2026-06-22 06:13:31
[2026-06-22 06:13:32,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:13:32,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:13:32,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:13:32,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:13:32,462.462 INFO    ] time= 22/06/2026 06:13:32
[2026-06-22 06:13:32,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:13:32,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:13:32,633.633 INFO    ] No existing commands found in stream
[2026-06-22 06:13:37,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:13:37,663.663 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-22 06:13:41,702.702 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:13:41,705.705 INFO    ] Checking for system updates...
[2026-06-22 06:13:41,743.743 INFO    ] 200
[2026-06-22 06:13:41,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:13:41,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:13:41,800.800 INFO    ] No update needed
[2026-06-22 06:13:41,803.803 INFO    ] Checking for camera pi updates...
[2026-06-22 06:13:41,837.837 INFO    ] 200
[2026-06-22 06:13:41,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:13:41,880.880 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:13:41,941.941 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:13:41,944.944 INFO    ] No camera update needed
[2026-06-22 06:13:41,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:13:41,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:13:41,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:13:41,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:13:44,999.999 INFO    ] ================================================
[2026-06-22 06:13:44,015.015 INFO    ] Launching Daemon at Mon Jun 22 06:13:44 IST 2026
[2026-06-22 06:13:44,026.026 INFO    ] ================================================
[2026-06-22 06:13:44,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:13:44
[2026-06-22 06:13:45,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:13:45,587.587 INFO    ] Initializing speech engine...
[2026-06-22 06:13:45,601.601 INFO    ] 2026-06-22 06:13:45
[2026-06-22 06:13:45,865.865 INFO    ] 2026-06-22 06:13:45
[2026-06-22 06:13:45,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:13:46,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:13:46,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:13:46,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:13:46,361.361 INFO    ] time= 22/06/2026 06:13:46
[2026-06-22 06:13:46,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:13:46,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:13:46,553.553 INFO    ] No existing commands found in stream
[2026-06-22 06:13:51,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:13:51,584.584 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-22 06:13:52,512.512 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:13:52,513.513 INFO    ] Checking for system updates...
[2026-06-22 06:13:52,535.535 INFO    ] 200
[2026-06-22 06:13:52,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:13:52,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:13:52,570.570 INFO    ] No update needed
[2026-06-22 06:13:52,572.572 INFO    ] Checking for camera pi updates...
[2026-06-22 06:13:52,592.592 INFO    ] 200
[2026-06-22 06:13:52,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:13:52,616.616 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:13:52,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:13:52,698.698 INFO    ] No camera update needed
[2026-06-22 06:13:52,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:13:52,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:13:52,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:13:52,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:13:54,758.758 INFO    ] ================================================
[2026-06-22 06:13:54,773.773 INFO    ] Launching Daemon at Mon Jun 22 06:13:54 IST 2026
[2026-06-22 06:13:54,784.784 INFO    ] ================================================
[2026-06-22 06:13:55,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:13:55
[2026-06-22 06:13:55,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:13:56,253.253 INFO    ] Initializing speech engine...
[2026-06-22 06:13:56,266.266 INFO    ] 2026-06-22 06:13:56
[2026-06-22 06:13:56,540.540 INFO    ] 2026-06-22 06:13:56
[2026-06-22 06:13:56,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:13:56,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:13:56,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:13:56,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:13:56,985.985 INFO    ] time= 22/06/2026 06:13:56
[2026-06-22 06:13:57,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:13:57,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:13:57,136.136 INFO    ] No existing commands found in stream
[2026-06-22 06:14:02,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:14:02,151.151 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-22 06:14:03,687.687 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:14:03,690.690 INFO    ] Checking for system updates...
[2026-06-22 06:14:03,727.727 INFO    ] 200
[2026-06-22 06:14:03,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:14:03,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:14:03,785.785 INFO    ] No update needed
[2026-06-22 06:14:03,788.788 INFO    ] Checking for camera pi updates...
[2026-06-22 06:14:03,825.825 INFO    ] 200
[2026-06-22 06:14:03,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:14:03,874.874 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:14:03,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:14:03,955.955 INFO    ] No camera update needed
[2026-06-22 06:14:03,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:14:03,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:14:03,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:14:03,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:14:06,013.013 INFO    ] ================================================
[2026-06-22 06:14:06,028.028 INFO    ] Launching Daemon at Mon Jun 22 06:14:06 IST 2026
[2026-06-22 06:14:06,040.040 INFO    ] ================================================
[2026-06-22 06:14:06,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:14:06
[2026-06-22 06:14:07,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:14:07,505.505 INFO    ] Initializing speech engine...
[2026-06-22 06:14:07,514.514 INFO    ] 2026-06-22 06:14:07
[2026-06-22 06:14:07,774.774 INFO    ] 2026-06-22 06:14:07
[2026-06-22 06:14:07,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:14:07,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:14:07,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:14:08,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:14:08,119.119 INFO    ] time= 22/06/2026 06:14:08
[2026-06-22 06:14:08,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:14:08,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:14:08,180.180 INFO    ] No existing commands found in stream
[2026-06-22 06:14:13,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:14:13,205.205 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-22 06:14:15,827.827 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:14:15,829.829 INFO    ] Checking for system updates...
[2026-06-22 06:14:15,868.868 INFO    ] 200
[2026-06-22 06:14:15,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:14:15,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:14:15,927.927 INFO    ] No update needed
[2026-06-22 06:14:15,929.929 INFO    ] Checking for camera pi updates...
[2026-06-22 06:14:15,963.963 INFO    ] 200
[2026-06-22 06:14:15,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:14:16,007.007 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:14:16,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:14:16,064.064 INFO    ] No camera update needed
[2026-06-22 06:14:16,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:14:16,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:14:16,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:14:16,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:14:18,119.119 INFO    ] ================================================
[2026-06-22 06:14:18,135.135 INFO    ] Launching Daemon at Mon Jun 22 06:14:18 IST 2026
[2026-06-22 06:14:18,146.146 INFO    ] ================================================
[2026-06-22 06:14:18,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:14:18
[2026-06-22 06:14:19,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:14:19,616.616 INFO    ] Initializing speech engine...
[2026-06-22 06:14:19,623.623 INFO    ] 2026-06-22 06:14:19
[2026-06-22 06:14:19,894.894 INFO    ] 2026-06-22 06:14:19
[2026-06-22 06:14:19,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:14:21,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:14:21,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:14:21,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:14:21,647.647 INFO    ] time= 22/06/2026 06:14:21
[2026-06-22 06:14:21,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:14:21,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:14:21,775.775 INFO    ] No existing commands found in stream
[2026-06-22 06:14:26,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:14:26,805.805 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-22 06:14:28,802.802 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:14:28,803.803 INFO    ] Checking for system updates...
[2026-06-22 06:14:28,825.825 INFO    ] 200
[2026-06-22 06:14:28,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:14:28,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:14:28,858.858 INFO    ] No update needed
[2026-06-22 06:14:28,860.860 INFO    ] Checking for camera pi updates...
[2026-06-22 06:14:28,894.894 INFO    ] 200
[2026-06-22 06:14:28,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:14:28,939.939 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:14:29,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:14:29,046.046 INFO    ] No camera update needed
[2026-06-22 06:14:29,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:14:29,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:14:29,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:14:29,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:14:31,101.101 INFO    ] ================================================
[2026-06-22 06:14:31,117.117 INFO    ] Launching Daemon at Mon Jun 22 06:14:31 IST 2026
[2026-06-22 06:14:31,127.127 INFO    ] ================================================
[2026-06-22 06:14:31,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:14:31
[2026-06-22 06:14:32,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:14:32,643.643 INFO    ] Initializing speech engine...
[2026-06-22 06:14:32,669.669 INFO    ] 2026-06-22 06:14:32
[2026-06-22 06:14:32,942.942 INFO    ] 2026-06-22 06:14:32
[2026-06-22 06:14:32,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:14:33,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:14:33,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:14:33,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:14:33,290.290 INFO    ] time= 22/06/2026 06:14:33
[2026-06-22 06:14:33,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:14:33,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:14:33,385.385 INFO    ] No existing commands found in stream
[2026-06-22 06:14:38,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:14:38,400.400 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-22 06:14:39,582.582 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:14:39,585.585 INFO    ] Checking for system updates...
[2026-06-22 06:14:39,621.621 INFO    ] 200
[2026-06-22 06:14:39,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:14:39,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:14:39,679.679 INFO    ] No update needed
[2026-06-22 06:14:39,681.681 INFO    ] Checking for camera pi updates...
[2026-06-22 06:14:39,716.716 INFO    ] 200
[2026-06-22 06:14:39,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:14:39,764.764 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:14:39,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:14:39,852.852 INFO    ] No camera update needed
[2026-06-22 06:14:39,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:14:39,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:14:39,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:14:39,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:14:41,908.908 INFO    ] ================================================
[2026-06-22 06:14:41,923.923 INFO    ] Launching Daemon at Mon Jun 22 06:14:41 IST 2026
[2026-06-22 06:14:41,934.934 INFO    ] ================================================
[2026-06-22 06:14:42,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:14:42
[2026-06-22 06:14:42,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:14:43,248.248 INFO    ] Initializing speech engine...
[2026-06-22 06:14:43,260.260 INFO    ] 2026-06-22 06:14:43
[2026-06-22 06:14:43,527.527 INFO    ] 2026-06-22 06:14:43
[2026-06-22 06:14:43,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:14:43,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:14:43,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:14:43,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:14:43,900.900 INFO    ] time= 22/06/2026 06:14:43
[2026-06-22 06:14:43,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:14:43,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:14:44,059.059 INFO    ] No existing commands found in stream
[2026-06-22 06:14:49,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:14:49,086.086 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-22 06:14:51,899.899 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:14:51,902.902 INFO    ] Checking for system updates...
[2026-06-22 06:14:51,942.942 INFO    ] 200
[2026-06-22 06:14:51,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:14:52,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:14:52,012.012 INFO    ] No update needed
[2026-06-22 06:14:52,015.015 INFO    ] Checking for camera pi updates...
[2026-06-22 06:14:52,052.052 INFO    ] 200
[2026-06-22 06:14:52,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:14:52,101.101 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:14:52,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:14:52,172.172 INFO    ] No camera update needed
[2026-06-22 06:14:52,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:14:52,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:14:52,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:14:52,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:14:54,233.233 INFO    ] ================================================
[2026-06-22 06:14:54,248.248 INFO    ] Launching Daemon at Mon Jun 22 06:14:54 IST 2026
[2026-06-22 06:14:54,258.258 INFO    ] ================================================
[2026-06-22 06:14:54,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:14:54
[2026-06-22 06:14:55,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:14:55,587.587 INFO    ] Initializing speech engine...
[2026-06-22 06:14:55,596.596 INFO    ] 2026-06-22 06:14:55
[2026-06-22 06:14:55,843.843 INFO    ] 2026-06-22 06:14:55
[2026-06-22 06:14:55,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:14:56,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:14:56,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:14:56,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:14:56,314.314 INFO    ] time= 22/06/2026 06:14:56
[2026-06-22 06:14:56,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:14:56,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:14:56,457.457 INFO    ] No existing commands found in stream
[2026-06-22 06:15:01,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:15:01,473.473 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-22 06:15:04,200.200 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:15:04,203.203 INFO    ] Checking for system updates...
[2026-06-22 06:15:04,239.239 INFO    ] 200
[2026-06-22 06:15:04,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:15:04,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:15:04,302.302 INFO    ] No update needed
[2026-06-22 06:15:04,304.304 INFO    ] Checking for camera pi updates...
[2026-06-22 06:15:04,339.339 INFO    ] 200
[2026-06-22 06:15:04,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:15:04,382.382 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:15:04,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:15:04,467.467 INFO    ] No camera update needed
[2026-06-22 06:15:04,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:15:04,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:15:04,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:15:04,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:15:06,524.524 INFO    ] ================================================
[2026-06-22 06:15:06,546.546 INFO    ] Launching Daemon at Mon Jun 22 06:15:06 IST 2026
[2026-06-22 06:15:06,559.559 INFO    ] ================================================
[2026-06-22 06:15:07,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:15:07
[2026-06-22 06:15:07,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:15:07,999.999 INFO    ] Initializing speech engine...
[2026-06-22 06:15:08,023.023 INFO    ] 2026-06-22 06:15:08
[2026-06-22 06:15:08,293.293 INFO    ] 2026-06-22 06:15:08
[2026-06-22 06:15:08,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:15:08,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:15:08,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:15:08,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:15:08,669.669 INFO    ] time= 22/06/2026 06:15:08
[2026-06-22 06:15:08,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:15:08,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:15:08,791.791 INFO    ] No existing commands found in stream
[2026-06-22 06:15:13,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:15:13,807.807 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-22 06:15:15,940.940 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:15:15,943.943 INFO    ] Checking for system updates...
[2026-06-22 06:15:15,982.982 INFO    ] 200
[2026-06-22 06:15:15,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:15:16,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:15:16,041.041 INFO    ] No update needed
[2026-06-22 06:15:16,044.044 INFO    ] Checking for camera pi updates...
[2026-06-22 06:15:16,080.080 INFO    ] 200
[2026-06-22 06:15:16,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:15:16,123.123 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:15:16,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:15:16,211.211 INFO    ] No camera update needed
[2026-06-22 06:15:16,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:15:16,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:15:16,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:15:16,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:15:18,268.268 INFO    ] ================================================
[2026-06-22 06:15:18,283.283 INFO    ] Launching Daemon at Mon Jun 22 06:15:18 IST 2026
[2026-06-22 06:15:18,294.294 INFO    ] ================================================
[2026-06-22 06:15:18,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:15:18
[2026-06-22 06:15:19,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:15:19,775.775 INFO    ] Initializing speech engine...
[2026-06-22 06:15:19,782.782 INFO    ] 2026-06-22 06:15:19
[2026-06-22 06:15:20,054.054 INFO    ] 2026-06-22 06:15:20
[2026-06-22 06:15:20,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:15:21,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:15:21,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:15:21,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:15:21,694.694 INFO    ] time= 22/06/2026 06:15:21
[2026-06-22 06:15:21,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:15:21,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:15:21,809.809 INFO    ] No existing commands found in stream
[2026-06-22 06:15:26,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:15:26,833.833 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-22 06:15:29,931.931 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:15:29,933.933 INFO    ] Checking for system updates...
[2026-06-22 06:15:29,954.954 INFO    ] 200
[2026-06-22 06:15:29,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:15:29,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:15:29,988.988 INFO    ] No update needed
[2026-06-22 06:15:29,989.989 INFO    ] Checking for camera pi updates...
[2026-06-22 06:15:30,016.016 INFO    ] 200
[2026-06-22 06:15:30,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:15:30,060.060 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:15:30,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:15:30,142.142 INFO    ] No camera update needed
[2026-06-22 06:15:30,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:15:30,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:15:30,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:15:30,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:15:32,198.198 INFO    ] ================================================
[2026-06-22 06:15:32,215.215 INFO    ] Launching Daemon at Mon Jun 22 06:15:32 IST 2026
[2026-06-22 06:15:32,227.227 INFO    ] ================================================
[2026-06-22 06:15:32,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:15:32
[2026-06-22 06:15:33,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:15:33,727.727 INFO    ] Initializing speech engine...
[2026-06-22 06:15:33,733.733 INFO    ] 2026-06-22 06:15:33
[2026-06-22 06:15:33,992.992 INFO    ] 2026-06-22 06:15:33
[2026-06-22 06:15:34,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:15:34,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:15:34,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:15:34,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:15:34,357.357 INFO    ] time= 22/06/2026 06:15:34
[2026-06-22 06:15:34,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:15:34,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:15:34,478.478 INFO    ] No existing commands found in stream
[2026-06-22 06:15:39,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:15:39,494.494 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-22 06:15:42,586.586 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:15:42,588.588 INFO    ] Checking for system updates...
[2026-06-22 06:15:42,610.610 INFO    ] 200
[2026-06-22 06:15:42,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:15:42,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:15:42,667.667 INFO    ] No update needed
[2026-06-22 06:15:42,670.670 INFO    ] Checking for camera pi updates...
[2026-06-22 06:15:42,707.707 INFO    ] 200
[2026-06-22 06:15:42,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:15:42,750.750 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:15:42,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:15:42,930.930 INFO    ] No camera update needed
[2026-06-22 06:15:42,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:15:42,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:15:42,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:15:42,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:15:44,990.990 INFO    ] ================================================
[2026-06-22 06:15:45,006.006 INFO    ] Launching Daemon at Mon Jun 22 06:15:45 IST 2026
[2026-06-22 06:15:45,017.017 INFO    ] ================================================
[2026-06-22 06:15:45,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:15:45
[2026-06-22 06:15:46,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:15:46,630.630 INFO    ] Initializing speech engine...
[2026-06-22 06:15:46,642.642 INFO    ] 2026-06-22 06:15:46
[2026-06-22 06:15:46,995.995 INFO    ] 2026-06-22 06:15:46
[2026-06-22 06:15:47,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:15:47,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:15:47,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:15:47,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:15:47,462.462 INFO    ] time= 22/06/2026 06:15:47
[2026-06-22 06:15:47,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:15:47,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:15:47,612.612 INFO    ] No existing commands found in stream
[2026-06-22 06:15:52,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:15:52,633.633 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-22 06:15:55,539.539 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:15:55,542.542 INFO    ] Checking for system updates...
[2026-06-22 06:15:55,580.580 INFO    ] 200
[2026-06-22 06:15:55,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:15:55,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:15:55,650.650 INFO    ] No update needed
[2026-06-22 06:15:55,652.652 INFO    ] Checking for camera pi updates...
[2026-06-22 06:15:55,686.686 INFO    ] 200
[2026-06-22 06:15:55,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:15:55,731.731 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:15:55,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:15:55,813.813 INFO    ] No camera update needed
[2026-06-22 06:15:55,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:15:55,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:15:55,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:15:55,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:15:57,869.869 INFO    ] ================================================
[2026-06-22 06:15:57,885.885 INFO    ] Launching Daemon at Mon Jun 22 06:15:57 IST 2026
[2026-06-22 06:15:57,896.896 INFO    ] ================================================
[2026-06-22 06:15:58,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:15:58
[2026-06-22 06:15:59,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:15:59,262.262 INFO    ] Initializing speech engine...
[2026-06-22 06:15:59,278.278 INFO    ] 2026-06-22 06:15:59
[2026-06-22 06:15:59,565.565 INFO    ] 2026-06-22 06:15:59
[2026-06-22 06:15:59,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:15:59,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:15:59,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:15:59,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:15:59,940.940 INFO    ] time= 22/06/2026 06:15:59
[2026-06-22 06:15:59,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:15:59,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:16:00,068.068 INFO    ] No existing commands found in stream
[2026-06-22 06:16:05,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:16:05,081.081 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-22 06:16:08,907.907 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:16:08,910.910 INFO    ] Checking for system updates...
[2026-06-22 06:16:08,946.946 INFO    ] 200
[2026-06-22 06:16:08,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:16:09,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:16:09,011.011 INFO    ] No update needed
[2026-06-22 06:16:09,013.013 INFO    ] Checking for camera pi updates...
[2026-06-22 06:16:09,047.047 INFO    ] 200
[2026-06-22 06:16:09,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:16:09,095.095 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:16:09,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:16:09,178.178 INFO    ] No camera update needed
[2026-06-22 06:16:09,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:16:09,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:16:09,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:16:09,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:16:11,233.233 INFO    ] ================================================
[2026-06-22 06:16:11,248.248 INFO    ] Launching Daemon at Mon Jun 22 06:16:11 IST 2026
[2026-06-22 06:16:11,259.259 INFO    ] ================================================
[2026-06-22 06:16:11,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:16:11
[2026-06-22 06:16:12,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:16:12,575.575 INFO    ] Initializing speech engine...
[2026-06-22 06:16:12,589.589 INFO    ] 2026-06-22 06:16:12
[2026-06-22 06:16:12,856.856 INFO    ] 2026-06-22 06:16:12
[2026-06-22 06:16:12,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:16:13,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:16:13,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:16:13,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:16:13,233.233 INFO    ] time= 22/06/2026 06:16:13
[2026-06-22 06:16:13,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:16:13,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:16:13,397.397 INFO    ] No existing commands found in stream
[2026-06-22 06:16:18,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:16:18,430.430 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-22 06:16:19,934.934 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:16:19,938.938 INFO    ] Checking for system updates...
[2026-06-22 06:16:19,981.981 INFO    ] 200
[2026-06-22 06:16:19,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:16:20,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:16:20,042.042 INFO    ] No update needed
[2026-06-22 06:16:20,045.045 INFO    ] Checking for camera pi updates...
[2026-06-22 06:16:20,079.079 INFO    ] 200
[2026-06-22 06:16:20,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:16:20,127.127 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:16:20,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:16:20,209.209 INFO    ] No camera update needed
[2026-06-22 06:16:20,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:16:20,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:16:20,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:16:20,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:16:22,266.266 INFO    ] ================================================
[2026-06-22 06:16:22,281.281 INFO    ] Launching Daemon at Mon Jun 22 06:16:22 IST 2026
[2026-06-22 06:16:22,292.292 INFO    ] ================================================
[2026-06-22 06:16:22,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:16:22
[2026-06-22 06:16:23,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:16:23,699.699 INFO    ] Initializing speech engine...
[2026-06-22 06:16:23,709.709 INFO    ] 2026-06-22 06:16:23
[2026-06-22 06:16:23,957.957 INFO    ] 2026-06-22 06:16:23
[2026-06-22 06:16:23,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:16:24,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:16:24,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:16:24,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:16:24,319.319 INFO    ] time= 22/06/2026 06:16:24
[2026-06-22 06:16:24,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:16:24,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:16:24,402.402 INFO    ] No existing commands found in stream
[2026-06-22 06:16:29,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:16:29,417.417 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-22 06:16:30,946.946 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:16:30,948.948 INFO    ] Checking for system updates...
[2026-06-22 06:16:30,989.989 INFO    ] 200
[2026-06-22 06:16:30,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:16:31,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:16:31,047.047 INFO    ] No update needed
[2026-06-22 06:16:31,049.049 INFO    ] Checking for camera pi updates...
[2026-06-22 06:16:31,087.087 INFO    ] 200
[2026-06-22 06:16:31,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:16:31,130.130 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:16:31,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:16:31,212.212 INFO    ] No camera update needed
[2026-06-22 06:16:31,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:16:31,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:16:31,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:16:31,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:16:33,271.271 INFO    ] ================================================
[2026-06-22 06:16:33,286.286 INFO    ] Launching Daemon at Mon Jun 22 06:16:33 IST 2026
[2026-06-22 06:16:33,297.297 INFO    ] ================================================
[2026-06-22 06:16:33,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:16:33
[2026-06-22 06:16:34,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:16:34,828.828 INFO    ] Initializing speech engine...
[2026-06-22 06:16:34,840.840 INFO    ] 2026-06-22 06:16:34
[2026-06-22 06:16:35,148.148 INFO    ] 2026-06-22 06:16:35
[2026-06-22 06:16:35,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:16:35,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:16:35,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:16:35,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:16:35,712.712 INFO    ] time= 22/06/2026 06:16:35
[2026-06-22 06:16:35,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:16:35,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:16:35,916.916 INFO    ] No existing commands found in stream
[2026-06-22 06:16:40,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:16:40,931.931 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-22 06:16:42,769.769 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:16:42,771.771 INFO    ] Checking for system updates...
[2026-06-22 06:16:42,793.793 INFO    ] 200
[2026-06-22 06:16:42,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:16:42,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:16:42,832.832 INFO    ] No update needed
[2026-06-22 06:16:42,833.833 INFO    ] Checking for camera pi updates...
[2026-06-22 06:16:42,867.867 INFO    ] 200
[2026-06-22 06:16:42,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:16:42,921.921 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:16:43,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:16:43,009.009 INFO    ] No camera update needed
[2026-06-22 06:16:43,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:16:43,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:16:43,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:16:43,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:16:45,067.067 INFO    ] ================================================
[2026-06-22 06:16:45,082.082 INFO    ] Launching Daemon at Mon Jun 22 06:16:45 IST 2026
[2026-06-22 06:16:45,092.092 INFO    ] ================================================
[2026-06-22 06:16:45,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:16:45
[2026-06-22 06:16:46,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:16:46,422.422 INFO    ] Initializing speech engine...
[2026-06-22 06:16:46,431.431 INFO    ] 2026-06-22 06:16:46
[2026-06-22 06:16:46,677.677 INFO    ] 2026-06-22 06:16:46
[2026-06-22 06:16:46,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:16:46,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:16:46,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:16:47,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:16:47,042.042 INFO    ] time= 22/06/2026 06:16:47
[2026-06-22 06:16:47,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:16:47,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:16:47,117.117 INFO    ] No existing commands found in stream
[2026-06-22 06:16:52,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:16:52,130.130 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-22 06:16:56,341.341 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:16:56,342.342 INFO    ] Checking for system updates...
[2026-06-22 06:16:56,365.365 INFO    ] 200
[2026-06-22 06:16:56,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:16:56,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:16:56,415.415 INFO    ] No update needed
[2026-06-22 06:16:56,418.418 INFO    ] Checking for camera pi updates...
[2026-06-22 06:16:56,456.456 INFO    ] 200
[2026-06-22 06:16:56,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:16:56,503.503 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:16:56,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:16:56,602.602 INFO    ] No camera update needed
[2026-06-22 06:16:56,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:16:56,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:16:56,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:16:56,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:16:58,658.658 INFO    ] ================================================
[2026-06-22 06:16:58,673.673 INFO    ] Launching Daemon at Mon Jun 22 06:16:58 IST 2026
[2026-06-22 06:16:58,683.683 INFO    ] ================================================
[2026-06-22 06:16:59,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:16:59
[2026-06-22 06:16:59,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:17:00,107.107 INFO    ] Initializing speech engine...
[2026-06-22 06:17:00,116.116 INFO    ] 2026-06-22 06:17:00
[2026-06-22 06:17:00,363.363 INFO    ] 2026-06-22 06:17:00
[2026-06-22 06:17:00,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:17:00,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:17:00,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:17:00,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:17:00,847.847 INFO    ] time= 22/06/2026 06:17:00
[2026-06-22 06:17:00,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:17:00,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:17:00,986.986 INFO    ] No existing commands found in stream
[2026-06-22 06:17:05,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:17:06,000.000 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-22 06:17:07,880.880 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:17:07,883.883 INFO    ] Checking for system updates...
[2026-06-22 06:17:07,919.919 INFO    ] 200
[2026-06-22 06:17:07,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:17:07,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:17:07,978.978 INFO    ] No update needed
[2026-06-22 06:17:07,980.980 INFO    ] Checking for camera pi updates...
[2026-06-22 06:17:08,019.019 INFO    ] 200
[2026-06-22 06:17:08,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:17:08,062.062 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:17:08,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:17:08,143.143 INFO    ] No camera update needed
[2026-06-22 06:17:08,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:17:08,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:17:08,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:17:08,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:17:10,199.199 INFO    ] ================================================
[2026-06-22 06:17:10,214.214 INFO    ] Launching Daemon at Mon Jun 22 06:17:10 IST 2026
[2026-06-22 06:17:10,225.225 INFO    ] ================================================
[2026-06-22 06:17:10,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:17:10
[2026-06-22 06:17:11,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:17:11,783.783 INFO    ] Initializing speech engine...
[2026-06-22 06:17:11,793.793 INFO    ] 2026-06-22 06:17:11
[2026-06-22 06:17:12,044.044 INFO    ] 2026-06-22 06:17:12
[2026-06-22 06:17:12,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:17:12,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:17:12,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:17:12,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:17:12,504.504 INFO    ] time= 22/06/2026 06:17:12
[2026-06-22 06:17:12,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:17:12,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:17:12,650.650 INFO    ] No existing commands found in stream
[2026-06-22 06:17:17,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:17:17,665.665 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-22 06:17:22,125.125 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:17:22,127.127 INFO    ] Checking for system updates...
[2026-06-22 06:17:22,169.169 INFO    ] 200
[2026-06-22 06:17:22,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:17:22,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:17:22,228.228 INFO    ] No update needed
[2026-06-22 06:17:22,231.231 INFO    ] Checking for camera pi updates...
[2026-06-22 06:17:22,266.266 INFO    ] 200
[2026-06-22 06:17:22,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:17:22,311.311 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:17:22,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:17:22,405.405 INFO    ] No camera update needed
[2026-06-22 06:17:22,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:17:22,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:17:22,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:17:22,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:17:24,469.469 INFO    ] ================================================
[2026-06-22 06:17:24,485.485 INFO    ] Launching Daemon at Mon Jun 22 06:17:24 IST 2026
[2026-06-22 06:17:24,495.495 INFO    ] ================================================
[2026-06-22 06:17:25,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:17:25
[2026-06-22 06:17:25,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:17:25,902.902 INFO    ] Initializing speech engine...
[2026-06-22 06:17:25,916.916 INFO    ] 2026-06-22 06:17:25
[2026-06-22 06:17:26,214.214 INFO    ] 2026-06-22 06:17:26
[2026-06-22 06:17:26,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:17:26,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:17:26,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:17:26,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:17:26,607.607 INFO    ] time= 22/06/2026 06:17:26
[2026-06-22 06:17:26,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:17:26,651.651 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:17:26,737.737 INFO    ] No existing commands found in stream
[2026-06-22 06:17:31,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:17:31,752.752 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-22 06:17:32,345.345 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:17:32,349.349 INFO    ] Checking for system updates...
[2026-06-22 06:17:32,398.398 INFO    ] 200
[2026-06-22 06:17:32,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:17:32,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:17:32,483.483 INFO    ] No update needed
[2026-06-22 06:17:32,487.487 INFO    ] Checking for camera pi updates...
[2026-06-22 06:17:32,531.531 INFO    ] 200
[2026-06-22 06:17:32,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:17:32,594.594 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:17:32,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:17:32,695.695 INFO    ] No camera update needed
[2026-06-22 06:17:32,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:17:32,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:17:32,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:17:32,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:17:34,760.760 INFO    ] ================================================
[2026-06-22 06:17:34,781.781 INFO    ] Launching Daemon at Mon Jun 22 06:17:34 IST 2026
[2026-06-22 06:17:34,794.794 INFO    ] ================================================
[2026-06-22 06:17:35,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:17:35
[2026-06-22 06:17:36,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:17:36,381.381 INFO    ] Initializing speech engine...
[2026-06-22 06:17:36,404.404 INFO    ] 2026-06-22 06:17:36
[2026-06-22 06:17:36,677.677 INFO    ] 2026-06-22 06:17:36
[2026-06-22 06:17:36,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:17:36,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:17:36,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:17:37,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:17:37,072.072 INFO    ] time= 22/06/2026 06:17:37
[2026-06-22 06:17:37,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:17:37,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:17:37,193.193 INFO    ] No existing commands found in stream
[2026-06-22 06:17:42,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:17:42,216.216 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-22 06:17:46,136.136 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:17:46,139.139 INFO    ] Checking for system updates...
[2026-06-22 06:17:46,179.179 INFO    ] 200
[2026-06-22 06:17:46,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:17:46,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:17:46,251.251 INFO    ] No update needed
[2026-06-22 06:17:46,253.253 INFO    ] Checking for camera pi updates...
[2026-06-22 06:17:46,291.291 INFO    ] 200
[2026-06-22 06:17:46,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:17:46,334.334 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:17:46,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:17:46,515.515 INFO    ] No camera update needed
[2026-06-22 06:17:46,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:17:46,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:17:46,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:17:46,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:17:48,571.571 INFO    ] ================================================
[2026-06-22 06:17:48,587.587 INFO    ] Launching Daemon at Mon Jun 22 06:17:48 IST 2026
[2026-06-22 06:17:48,598.598 INFO    ] ================================================
[2026-06-22 06:17:49,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:17:49
[2026-06-22 06:17:49,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:17:49,931.931 INFO    ] Initializing speech engine...
[2026-06-22 06:17:49,945.945 INFO    ] 2026-06-22 06:17:49
[2026-06-22 06:17:50,207.207 INFO    ] 2026-06-22 06:17:50
[2026-06-22 06:17:50,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:17:51,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:17:51,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:17:51,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:17:51,590.590 INFO    ] time= 22/06/2026 06:17:51
[2026-06-22 06:17:51,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:17:51,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:17:51,653.653 INFO    ] No existing commands found in stream
[2026-06-22 06:17:56,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:17:56,667.667 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-22 06:17:57,115.115 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:17:57,117.117 INFO    ] Checking for system updates...
[2026-06-22 06:17:57,154.154 INFO    ] 200
[2026-06-22 06:17:57,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:17:57,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:17:57,211.211 INFO    ] No update needed
[2026-06-22 06:17:57,214.214 INFO    ] Checking for camera pi updates...
[2026-06-22 06:17:57,253.253 INFO    ] 200
[2026-06-22 06:17:57,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:17:57,296.296 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:17:57,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:17:57,380.380 INFO    ] No camera update needed
[2026-06-22 06:17:57,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:17:57,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:17:57,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:17:57,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:17:59,440.440 INFO    ] ================================================
[2026-06-22 06:17:59,456.456 INFO    ] Launching Daemon at Mon Jun 22 06:17:59 IST 2026
[2026-06-22 06:17:59,467.467 INFO    ] ================================================
[2026-06-22 06:18:00,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:18:00
[2026-06-22 06:18:00,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:18:01,035.035 INFO    ] Initializing speech engine...
[2026-06-22 06:18:01,058.058 INFO    ] 2026-06-22 06:18:01
[2026-06-22 06:18:01,311.311 INFO    ] 2026-06-22 06:18:01
[2026-06-22 06:18:01,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:18:01,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:18:01,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:18:01,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:18:01,724.724 INFO    ] time= 22/06/2026 06:18:01
[2026-06-22 06:18:01,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:18:01,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:18:01,829.829 INFO    ] No existing commands found in stream
[2026-06-22 06:18:06,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:18:06,844.844 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-22 06:18:10,351.351 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:18:10,354.354 INFO    ] Checking for system updates...
[2026-06-22 06:18:10,392.392 INFO    ] 200
[2026-06-22 06:18:10,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:18:10,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:18:10,460.460 INFO    ] No update needed
[2026-06-22 06:18:10,463.463 INFO    ] Checking for camera pi updates...
[2026-06-22 06:18:10,502.502 INFO    ] 200
[2026-06-22 06:18:10,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:18:10,553.553 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:18:10,650.650 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:18:10,653.653 INFO    ] No camera update needed
[2026-06-22 06:18:10,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:18:10,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:18:10,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:18:10,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:18:12,718.718 INFO    ] ================================================
[2026-06-22 06:18:12,733.733 INFO    ] Launching Daemon at Mon Jun 22 06:18:12 IST 2026
[2026-06-22 06:18:12,744.744 INFO    ] ================================================
[2026-06-22 06:18:13,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:18:13
[2026-06-22 06:18:13,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:18:14,308.308 INFO    ] Initializing speech engine...
[2026-06-22 06:18:14,319.319 INFO    ] 2026-06-22 06:18:14
[2026-06-22 06:18:14,607.607 INFO    ] 2026-06-22 06:18:14
[2026-06-22 06:18:14,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:18:14,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:18:14,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:18:15,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:18:15,139.139 INFO    ] time= 22/06/2026 06:18:15
[2026-06-22 06:18:15,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:18:15,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:18:15,295.295 INFO    ] No existing commands found in stream
[2026-06-22 06:18:20,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:18:20,314.314 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-22 06:18:23,020.020 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:18:23,023.023 INFO    ] Checking for system updates...
[2026-06-22 06:18:23,071.071 INFO    ] 200
[2026-06-22 06:18:23,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:18:23,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:18:23,129.129 INFO    ] No update needed
[2026-06-22 06:18:23,132.132 INFO    ] Checking for camera pi updates...
[2026-06-22 06:18:23,170.170 INFO    ] 200
[2026-06-22 06:18:23,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:18:23,218.218 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:18:23,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:18:23,301.301 INFO    ] No camera update needed
[2026-06-22 06:18:23,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:18:23,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:18:23,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:18:23,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:18:25,356.356 INFO    ] ================================================
[2026-06-22 06:18:25,371.371 INFO    ] Launching Daemon at Mon Jun 22 06:18:25 IST 2026
[2026-06-22 06:18:25,382.382 INFO    ] ================================================
[2026-06-22 06:18:25,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:18:25
[2026-06-22 06:18:26,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:18:26,828.828 INFO    ] Initializing speech engine...
[2026-06-22 06:18:26,837.837 INFO    ] 2026-06-22 06:18:26
[2026-06-22 06:18:27,083.083 INFO    ] 2026-06-22 06:18:27
[2026-06-22 06:18:27,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:18:27,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:18:27,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:18:27,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:18:27,515.515 INFO    ] time= 22/06/2026 06:18:27
[2026-06-22 06:18:27,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:18:27,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:18:27,653.653 INFO    ] No existing commands found in stream
[2026-06-22 06:18:32,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:18:32,678.678 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-22 06:18:34,490.490 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:18:34,492.492 INFO    ] Checking for system updates...
[2026-06-22 06:18:34,528.528 INFO    ] 200
[2026-06-22 06:18:34,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:18:34,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:18:34,593.593 INFO    ] No update needed
[2026-06-22 06:18:34,595.595 INFO    ] Checking for camera pi updates...
[2026-06-22 06:18:34,630.630 INFO    ] 200
[2026-06-22 06:18:34,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:18:34,673.673 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:18:34,758.758 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:18:34,761.761 INFO    ] No camera update needed
[2026-06-22 06:18:34,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:18:34,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:18:34,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:18:34,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:18:36,816.816 INFO    ] ================================================
[2026-06-22 06:18:36,831.831 INFO    ] Launching Daemon at Mon Jun 22 06:18:36 IST 2026
[2026-06-22 06:18:36,841.841 INFO    ] ================================================
[2026-06-22 06:18:37,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:18:37
[2026-06-22 06:18:37,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:18:38,233.233 INFO    ] Initializing speech engine...
[2026-06-22 06:18:38,242.242 INFO    ] 2026-06-22 06:18:38
[2026-06-22 06:18:38,509.509 INFO    ] 2026-06-22 06:18:38
[2026-06-22 06:18:38,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:18:38,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:18:38,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:18:38,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:18:38,933.933 INFO    ] time= 22/06/2026 06:18:38
[2026-06-22 06:18:38,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:18:39,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:18:39,113.113 INFO    ] No existing commands found in stream
[2026-06-22 06:18:44,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:18:44,128.128 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-22 06:18:47,689.689 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:18:47,691.691 INFO    ] Checking for system updates...
[2026-06-22 06:18:47,728.728 INFO    ] 200
[2026-06-22 06:18:47,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:18:47,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:18:47,792.792 INFO    ] No update needed
[2026-06-22 06:18:47,795.795 INFO    ] Checking for camera pi updates...
[2026-06-22 06:18:47,829.829 INFO    ] 200
[2026-06-22 06:18:47,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:18:47,882.882 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:18:47,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:18:47,985.985 INFO    ] No camera update needed
[2026-06-22 06:18:47,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:18:47,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:18:47,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:18:48,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:18:50,044.044 INFO    ] ================================================
[2026-06-22 06:18:50,059.059 INFO    ] Launching Daemon at Mon Jun 22 06:18:50 IST 2026
[2026-06-22 06:18:50,069.069 INFO    ] ================================================
[2026-06-22 06:18:50,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:18:50
[2026-06-22 06:18:51,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:18:51,583.583 INFO    ] Initializing speech engine...
[2026-06-22 06:18:51,589.589 INFO    ] 2026-06-22 06:18:51
[2026-06-22 06:18:51,878.878 INFO    ] 2026-06-22 06:18:51
[2026-06-22 06:18:51,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:18:52,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:18:52,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:18:52,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:18:52,338.338 INFO    ] time= 22/06/2026 06:18:52
[2026-06-22 06:18:52,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:18:52,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:18:52,480.480 INFO    ] No existing commands found in stream
[2026-06-22 06:18:57,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:18:57,496.496 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-22 06:18:58,451.451 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:18:58,454.454 INFO    ] Checking for system updates...
[2026-06-22 06:18:58,496.496 INFO    ] 200
[2026-06-22 06:18:58,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:18:58,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:18:58,564.564 INFO    ] No update needed
[2026-06-22 06:18:58,567.567 INFO    ] Checking for camera pi updates...
[2026-06-22 06:18:58,607.607 INFO    ] 200
[2026-06-22 06:18:58,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:18:58,657.657 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:18:58,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:18:58,764.764 INFO    ] No camera update needed
[2026-06-22 06:18:58,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:18:58,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:18:58,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:18:58,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:19:00,825.825 INFO    ] ================================================
[2026-06-22 06:19:00,840.840 INFO    ] Launching Daemon at Mon Jun 22 06:19:00 IST 2026
[2026-06-22 06:19:00,850.850 INFO    ] ================================================
[2026-06-22 06:19:01,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:19:01
[2026-06-22 06:19:02,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:19:02,430.430 INFO    ] Initializing speech engine...
[2026-06-22 06:19:02,445.445 INFO    ] 2026-06-22 06:19:02
[2026-06-22 06:19:02,765.765 INFO    ] 2026-06-22 06:19:02
[2026-06-22 06:19:02,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:19:03,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:19:03,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:19:03,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:19:03,285.285 INFO    ] time= 22/06/2026 06:19:03
[2026-06-22 06:19:03,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:19:03,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:19:03,442.442 INFO    ] No existing commands found in stream
[2026-06-22 06:19:08,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:19:08,458.458 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-22 06:19:12,859.859 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:19:12,862.862 INFO    ] Checking for system updates...
[2026-06-22 06:19:12,903.903 INFO    ] 200
[2026-06-22 06:19:12,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:19:12,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:19:12,964.964 INFO    ] No update needed
[2026-06-22 06:19:12,967.967 INFO    ] Checking for camera pi updates...
[2026-06-22 06:19:13,007.007 INFO    ] 200
[2026-06-22 06:19:13,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:19:13,054.054 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:19:13,135.135 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:19:13,138.138 INFO    ] No camera update needed
[2026-06-22 06:19:13,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:19:13,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:19:13,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:19:13,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:19:15,198.198 INFO    ] ================================================
[2026-06-22 06:19:15,213.213 INFO    ] Launching Daemon at Mon Jun 22 06:19:15 IST 2026
[2026-06-22 06:19:15,230.230 INFO    ] ================================================
[2026-06-22 06:19:15,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:19:15
[2026-06-22 06:19:16,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:19:16,607.607 INFO    ] Initializing speech engine...
[2026-06-22 06:19:16,614.614 INFO    ] 2026-06-22 06:19:16
[2026-06-22 06:19:16,921.921 INFO    ] 2026-06-22 06:19:16
[2026-06-22 06:19:16,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:19:17,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:19:17,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:19:17,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:19:17,289.289 INFO    ] time= 22/06/2026 06:19:17
[2026-06-22 06:19:17,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:19:17,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:19:17,371.371 INFO    ] No existing commands found in stream
[2026-06-22 06:19:22,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:19:22,384.384 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-22 06:19:26,584.584 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:19:26,587.587 INFO    ] Checking for system updates...
[2026-06-22 06:19:26,623.623 INFO    ] 200
[2026-06-22 06:19:26,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:19:26,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:19:26,685.685 INFO    ] No update needed
[2026-06-22 06:19:26,687.687 INFO    ] Checking for camera pi updates...
[2026-06-22 06:19:26,726.726 INFO    ] 200
[2026-06-22 06:19:26,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:19:26,775.775 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:19:26,847.847 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:19:26,850.850 INFO    ] No camera update needed
[2026-06-22 06:19:26,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:19:26,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:19:26,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:19:26,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:19:28,905.905 INFO    ] ================================================
[2026-06-22 06:19:28,921.921 INFO    ] Launching Daemon at Mon Jun 22 06:19:28 IST 2026
[2026-06-22 06:19:28,932.932 INFO    ] ================================================
[2026-06-22 06:19:29,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:19:29
[2026-06-22 06:19:30,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:19:30,267.267 INFO    ] Initializing speech engine...
[2026-06-22 06:19:30,279.279 INFO    ] 2026-06-22 06:19:30
[2026-06-22 06:19:30,543.543 INFO    ] 2026-06-22 06:19:30
[2026-06-22 06:19:30,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:19:30,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:19:30,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:19:30,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:19:31,000.000 INFO    ] time= 22/06/2026 06:19:30
[2026-06-22 06:19:31,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:19:31,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:19:31,241.241 INFO    ] No existing commands found in stream
[2026-06-22 06:19:36,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:19:36,269.269 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-22 06:19:36,625.625 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:19:36,627.627 INFO    ] Checking for system updates...
[2026-06-22 06:19:36,648.648 INFO    ] 200
[2026-06-22 06:19:36,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:19:36,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:19:36,684.684 INFO    ] No update needed
[2026-06-22 06:19:36,685.685 INFO    ] Checking for camera pi updates...
[2026-06-22 06:19:36,715.715 INFO    ] 200
[2026-06-22 06:19:36,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:19:36,765.765 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:19:36,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:19:36,850.850 INFO    ] No camera update needed
[2026-06-22 06:19:36,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:19:36,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:19:36,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:19:36,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:19:38,915.915 INFO    ] ================================================
[2026-06-22 06:19:38,931.931 INFO    ] Launching Daemon at Mon Jun 22 06:19:38 IST 2026
[2026-06-22 06:19:38,941.941 INFO    ] ================================================
[2026-06-22 06:19:39,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:19:39
[2026-06-22 06:19:40,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:19:40,296.296 INFO    ] Initializing speech engine...
[2026-06-22 06:19:40,304.304 INFO    ] 2026-06-22 06:19:40
[2026-06-22 06:19:40,571.571 INFO    ] 2026-06-22 06:19:40
[2026-06-22 06:19:40,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:19:40,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:19:40,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:19:40,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:19:40,963.963 INFO    ] time= 22/06/2026 06:19:40
[2026-06-22 06:19:40,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:19:40,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:19:41,086.086 INFO    ] No existing commands found in stream
[2026-06-22 06:19:46,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:19:46,105.105 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-22 06:19:49,865.865 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:19:49,867.867 INFO    ] Checking for system updates...
[2026-06-22 06:19:49,904.904 INFO    ] 200
[2026-06-22 06:19:49,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:19:49,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:19:49,963.963 INFO    ] No update needed
[2026-06-22 06:19:49,966.966 INFO    ] Checking for camera pi updates...
[2026-06-22 06:19:50,000.000 INFO    ] 200
[2026-06-22 06:19:50,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:19:50,047.047 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:19:50,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:19:50,231.231 INFO    ] No camera update needed
[2026-06-22 06:19:50,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:19:50,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:19:50,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:19:50,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:19:52,287.287 INFO    ] ================================================
[2026-06-22 06:19:52,303.303 INFO    ] Launching Daemon at Mon Jun 22 06:19:52 IST 2026
[2026-06-22 06:19:52,314.314 INFO    ] ================================================
[2026-06-22 06:19:52,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:19:52
[2026-06-22 06:19:53,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:19:53,732.732 INFO    ] Initializing speech engine...
[2026-06-22 06:19:53,741.741 INFO    ] 2026-06-22 06:19:53
[2026-06-22 06:19:54,039.039 INFO    ] 2026-06-22 06:19:54
[2026-06-22 06:19:54,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:19:54,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:19:54,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:19:54,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:19:54,403.403 INFO    ] time= 22/06/2026 06:19:54
[2026-06-22 06:19:54,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:19:54,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:19:54,487.487 INFO    ] No existing commands found in stream
[2026-06-22 06:19:59,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:19:59,500.500 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-22 06:20:05,505.505 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:20:05,508.508 INFO    ] Checking for system updates...
[2026-06-22 06:20:05,544.544 INFO    ] 200
[2026-06-22 06:20:05,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:20:05,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:20:05,614.614 INFO    ] No update needed
[2026-06-22 06:20:05,617.617 INFO    ] Checking for camera pi updates...
[2026-06-22 06:20:05,655.655 INFO    ] 200
[2026-06-22 06:20:05,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:20:05,703.703 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:20:05,789.789 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:20:05,792.792 INFO    ] No camera update needed
[2026-06-22 06:20:05,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:20:05,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:20:05,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:20:05,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:20:07,849.849 INFO    ] ================================================
[2026-06-22 06:20:07,864.864 INFO    ] Launching Daemon at Mon Jun 22 06:20:07 IST 2026
[2026-06-22 06:20:07,875.875 INFO    ] ================================================
[2026-06-22 06:20:08,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:20:08
[2026-06-22 06:20:09,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:20:09,439.439 INFO    ] Initializing speech engine...
[2026-06-22 06:20:09,449.449 INFO    ] 2026-06-22 06:20:09
[2026-06-22 06:20:09,741.741 INFO    ] 2026-06-22 06:20:09
[2026-06-22 06:20:09,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:20:10,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:20:10,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:20:10,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:20:10,204.204 INFO    ] time= 22/06/2026 06:20:10
[2026-06-22 06:20:10,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:20:10,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:20:10,360.360 INFO    ] No existing commands found in stream
[2026-06-22 06:20:15,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:20:15,385.385 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-22 06:20:19,275.275 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:20:19,279.279 INFO    ] Checking for system updates...
[2026-06-22 06:20:19,316.316 INFO    ] 200
[2026-06-22 06:20:19,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:20:19,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:20:19,379.379 INFO    ] No update needed
[2026-06-22 06:20:19,382.382 INFO    ] Checking for camera pi updates...
[2026-06-22 06:20:19,419.419 INFO    ] 200
[2026-06-22 06:20:19,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:20:19,463.463 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:20:19,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:20:19,570.570 INFO    ] No camera update needed
[2026-06-22 06:20:19,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:20:19,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:20:19,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:20:19,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:20:21,626.626 INFO    ] ================================================
[2026-06-22 06:20:21,642.642 INFO    ] Launching Daemon at Mon Jun 22 06:20:21 IST 2026
[2026-06-22 06:20:21,653.653 INFO    ] ================================================
[2026-06-22 06:20:22,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:20:22
[2026-06-22 06:20:22,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:20:23,054.054 INFO    ] Initializing speech engine...
[2026-06-22 06:20:23,075.075 INFO    ] 2026-06-22 06:20:23
[2026-06-22 06:20:23,331.331 INFO    ] 2026-06-22 06:20:23
[2026-06-22 06:20:23,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:20:23,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:20:23,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:20:23,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:20:23,805.805 INFO    ] time= 22/06/2026 06:20:23
[2026-06-22 06:20:23,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:20:23,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:20:23,954.954 INFO    ] No existing commands found in stream
[2026-06-22 06:20:28,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:20:28,976.976 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-22 06:20:29,344.344 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:20:29,347.347 INFO    ] Checking for system updates...
[2026-06-22 06:20:29,383.383 INFO    ] 200
[2026-06-22 06:20:29,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:20:29,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:20:29,451.451 INFO    ] No update needed
[2026-06-22 06:20:29,454.454 INFO    ] Checking for camera pi updates...
[2026-06-22 06:20:29,488.488 INFO    ] 200
[2026-06-22 06:20:29,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:20:29,532.532 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:20:29,614.614 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:20:29,617.617 INFO    ] No camera update needed
[2026-06-22 06:20:29,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:20:29,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:20:29,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:20:29,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:20:31,674.674 INFO    ] ================================================
[2026-06-22 06:20:31,689.689 INFO    ] Launching Daemon at Mon Jun 22 06:20:31 IST 2026
[2026-06-22 06:20:31,700.700 INFO    ] ================================================
[2026-06-22 06:20:32,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:20:32
[2026-06-22 06:20:32,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:20:33,264.264 INFO    ] Initializing speech engine...
[2026-06-22 06:20:33,275.275 INFO    ] 2026-06-22 06:20:33
[2026-06-22 06:20:33,544.544 INFO    ] 2026-06-22 06:20:33
[2026-06-22 06:20:33,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:20:33,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:20:33,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:20:33,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:20:34,047.047 INFO    ] time= 22/06/2026 06:20:33
[2026-06-22 06:20:34,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:20:34,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:20:34,232.232 INFO    ] No existing commands found in stream
[2026-06-22 06:20:39,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:20:39,279.279 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-22 06:20:40,659.659 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:20:40,661.661 INFO    ] Checking for system updates...
[2026-06-22 06:20:40,699.699 INFO    ] 200
[2026-06-22 06:20:40,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:20:40,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:20:40,775.775 INFO    ] No update needed
[2026-06-22 06:20:40,777.777 INFO    ] Checking for camera pi updates...
[2026-06-22 06:20:40,817.817 INFO    ] 200
[2026-06-22 06:20:40,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:20:40,866.866 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:20:40,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:20:40,965.965 INFO    ] No camera update needed
[2026-06-22 06:20:40,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:20:40,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:20:40,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:20:40,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:20:43,022.022 INFO    ] ================================================
[2026-06-22 06:20:43,038.038 INFO    ] Launching Daemon at Mon Jun 22 06:20:43 IST 2026
[2026-06-22 06:20:43,049.049 INFO    ] ================================================
[2026-06-22 06:20:43,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:20:43
[2026-06-22 06:20:44,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:20:44,458.458 INFO    ] Initializing speech engine...
[2026-06-22 06:20:44,480.480 INFO    ] 2026-06-22 06:20:44
[2026-06-22 06:20:44,737.737 INFO    ] 2026-06-22 06:20:44
[2026-06-22 06:20:44,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:20:44,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:20:44,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:20:45,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:20:45,090.090 INFO    ] time= 22/06/2026 06:20:45
[2026-06-22 06:20:45,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:20:45,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:20:45,188.188 INFO    ] No existing commands found in stream
[2026-06-22 06:20:50,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:20:50,206.206 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-22 06:20:54,475.475 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:20:54,479.479 INFO    ] Checking for system updates...
[2026-06-22 06:20:54,518.518 INFO    ] 200
[2026-06-22 06:20:54,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:20:54,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:20:54,578.578 INFO    ] No update needed
[2026-06-22 06:20:54,581.581 INFO    ] Checking for camera pi updates...
[2026-06-22 06:20:54,616.616 INFO    ] 200
[2026-06-22 06:20:54,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:20:54,662.662 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:20:54,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:20:54,746.746 INFO    ] No camera update needed
[2026-06-22 06:20:54,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:20:54,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:20:54,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:20:54,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:20:56,808.808 INFO    ] ================================================
[2026-06-22 06:20:56,823.823 INFO    ] Launching Daemon at Mon Jun 22 06:20:56 IST 2026
[2026-06-22 06:20:56,834.834 INFO    ] ================================================
[2026-06-22 06:20:57,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:20:57
[2026-06-22 06:20:58,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:20:58,427.427 INFO    ] Initializing speech engine...
[2026-06-22 06:20:58,441.441 INFO    ] 2026-06-22 06:20:58
[2026-06-22 06:20:58,768.768 INFO    ] 2026-06-22 06:20:58
[2026-06-22 06:20:58,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:20:59,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:20:59,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:20:59,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:20:59,289.289 INFO    ] time= 22/06/2026 06:20:59
[2026-06-22 06:20:59,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:20:59,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:20:59,443.443 INFO    ] No existing commands found in stream
[2026-06-22 06:21:04,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:21:04,463.463 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-22 06:21:08,099.099 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:21:08,102.102 INFO    ] Checking for system updates...
[2026-06-22 06:21:08,145.145 INFO    ] 200
[2026-06-22 06:21:08,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:21:08,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:21:08,207.207 INFO    ] No update needed
[2026-06-22 06:21:08,210.210 INFO    ] Checking for camera pi updates...
[2026-06-22 06:21:08,246.246 INFO    ] 200
[2026-06-22 06:21:08,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:21:08,292.292 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:21:08,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:21:08,375.375 INFO    ] No camera update needed
[2026-06-22 06:21:08,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:21:08,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:21:08,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:21:08,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:21:10,437.437 INFO    ] ================================================
[2026-06-22 06:21:10,452.452 INFO    ] Launching Daemon at Mon Jun 22 06:21:10 IST 2026
[2026-06-22 06:21:10,463.463 INFO    ] ================================================
[2026-06-22 06:21:10,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:21:10
[2026-06-22 06:21:11,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:21:11,850.850 INFO    ] Initializing speech engine...
[2026-06-22 06:21:11,857.857 INFO    ] 2026-06-22 06:21:11
[2026-06-22 06:21:12,119.119 INFO    ] 2026-06-22 06:21:12
[2026-06-22 06:21:12,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:21:12,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:21:12,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:21:12,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:21:12,560.560 INFO    ] time= 22/06/2026 06:21:12
[2026-06-22 06:21:12,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:21:12,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:21:12,725.725 INFO    ] No existing commands found in stream
[2026-06-22 06:21:17,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:21:17,739.739 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-22 06:21:22,718.718 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:21:22,721.721 INFO    ] Checking for system updates...
[2026-06-22 06:21:22,758.758 INFO    ] 200
[2026-06-22 06:21:22,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:21:22,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:21:22,825.825 INFO    ] No update needed
[2026-06-22 06:21:22,827.827 INFO    ] Checking for camera pi updates...
[2026-06-22 06:21:22,866.866 INFO    ] 200
[2026-06-22 06:21:22,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:21:22,915.915 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:21:23,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:21:23,017.017 INFO    ] No camera update needed
[2026-06-22 06:21:23,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:21:23,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:21:23,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:21:23,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:21:25,075.075 INFO    ] ================================================
[2026-06-22 06:21:25,090.090 INFO    ] Launching Daemon at Mon Jun 22 06:21:25 IST 2026
[2026-06-22 06:21:25,101.101 INFO    ] ================================================
[2026-06-22 06:21:25,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:21:25
[2026-06-22 06:21:26,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:21:26,446.446 INFO    ] Initializing speech engine...
[2026-06-22 06:21:26,455.455 INFO    ] 2026-06-22 06:21:26
[2026-06-22 06:21:26,704.704 INFO    ] 2026-06-22 06:21:26
[2026-06-22 06:21:26,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:21:26,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:21:26,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:21:27,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:21:27,049.049 INFO    ] time= 22/06/2026 06:21:27
[2026-06-22 06:21:27,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:21:27,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:21:27,164.164 INFO    ] No existing commands found in stream
[2026-06-22 06:21:32,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:21:32,201.201 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-22 06:21:34,858.858 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:21:34,861.861 INFO    ] Checking for system updates...
[2026-06-22 06:21:34,897.897 INFO    ] 200
[2026-06-22 06:21:34,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:21:34,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:21:34,954.954 INFO    ] No update needed
[2026-06-22 06:21:34,957.957 INFO    ] Checking for camera pi updates...
[2026-06-22 06:21:34,991.991 INFO    ] 200
[2026-06-22 06:21:34,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:21:35,040.040 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:21:35,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:21:35,117.117 INFO    ] No camera update needed
[2026-06-22 06:21:35,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:21:35,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:21:35,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:21:35,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:21:37,176.176 INFO    ] ================================================
[2026-06-22 06:21:37,192.192 INFO    ] Launching Daemon at Mon Jun 22 06:21:37 IST 2026
[2026-06-22 06:21:37,203.203 INFO    ] ================================================
[2026-06-22 06:21:37,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:21:37
[2026-06-22 06:21:38,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:21:38,539.539 INFO    ] Initializing speech engine...
[2026-06-22 06:21:38,546.546 INFO    ] 2026-06-22 06:21:38
[2026-06-22 06:21:38,811.811 INFO    ] 2026-06-22 06:21:38
[2026-06-22 06:21:38,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:21:39,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:21:39,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:21:39,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:21:39,278.278 INFO    ] time= 22/06/2026 06:21:39
[2026-06-22 06:21:39,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:21:39,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:21:39,479.479 INFO    ] No existing commands found in stream
[2026-06-22 06:21:44,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:21:44,508.508 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-22 06:21:47,640.640 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:21:47,643.643 INFO    ] Checking for system updates...
[2026-06-22 06:21:47,681.681 INFO    ] 200
[2026-06-22 06:21:47,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:21:47,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:21:47,741.741 INFO    ] No update needed
[2026-06-22 06:21:47,744.744 INFO    ] Checking for camera pi updates...
[2026-06-22 06:21:47,780.780 INFO    ] 200
[2026-06-22 06:21:47,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:21:47,826.826 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:21:47,878.878 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:21:47,881.881 INFO    ] No camera update needed
[2026-06-22 06:21:47,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:21:47,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:21:47,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:21:47,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:21:49,940.940 INFO    ] ================================================
[2026-06-22 06:21:49,956.956 INFO    ] Launching Daemon at Mon Jun 22 06:21:49 IST 2026
[2026-06-22 06:21:49,966.966 INFO    ] ================================================
[2026-06-22 06:21:50,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:21:50
[2026-06-22 06:21:51,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:21:51,505.505 INFO    ] Initializing speech engine...
[2026-06-22 06:21:51,516.516 INFO    ] 2026-06-22 06:21:51
[2026-06-22 06:21:51,798.798 INFO    ] 2026-06-22 06:21:51
[2026-06-22 06:21:51,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:21:52,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:21:52,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:21:52,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:21:52,990.990 INFO    ] time= 22/06/2026 06:21:52
[2026-06-22 06:21:52,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:21:53,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:21:53,110.110 INFO    ] No existing commands found in stream
[2026-06-22 06:21:58,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:21:58,147.147 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-22 06:22:01,262.262 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:22:01,263.263 INFO    ] Checking for system updates...
[2026-06-22 06:22:01,284.284 INFO    ] 200
[2026-06-22 06:22:01,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:22:01,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:22:01,318.318 INFO    ] No update needed
[2026-06-22 06:22:01,319.319 INFO    ] Checking for camera pi updates...
[2026-06-22 06:22:01,340.340 INFO    ] 200
[2026-06-22 06:22:01,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:22:01,370.370 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:22:01,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:22:01,540.540 INFO    ] No camera update needed
[2026-06-22 06:22:01,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:22:01,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:22:01,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:22:01,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:22:03,610.610 INFO    ] ================================================
[2026-06-22 06:22:03,631.631 INFO    ] Launching Daemon at Mon Jun 22 06:22:03 IST 2026
[2026-06-22 06:22:03,642.642 INFO    ] ================================================
[2026-06-22 06:22:04,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:22:04
[2026-06-22 06:22:04,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:22:05,251.251 INFO    ] Initializing speech engine...
[2026-06-22 06:22:05,263.263 INFO    ] 2026-06-22 06:22:05
[2026-06-22 06:22:05,545.545 INFO    ] 2026-06-22 06:22:05
[2026-06-22 06:22:05,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:22:05,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:22:05,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:22:06,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:22:06,077.077 INFO    ] time= 22/06/2026 06:22:06
[2026-06-22 06:22:06,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:22:06,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:22:06,234.234 INFO    ] No existing commands found in stream
[2026-06-22 06:22:11,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:22:11,272.272 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-22 06:22:14,357.357 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:22:14,358.358 INFO    ] Checking for system updates...
[2026-06-22 06:22:14,380.380 INFO    ] 200
[2026-06-22 06:22:14,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:22:14,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:22:14,433.433 INFO    ] No update needed
[2026-06-22 06:22:14,435.435 INFO    ] Checking for camera pi updates...
[2026-06-22 06:22:14,470.470 INFO    ] 200
[2026-06-22 06:22:14,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:22:14,516.516 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:22:14,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:22:14,608.608 INFO    ] No camera update needed
[2026-06-22 06:22:14,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:22:14,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:22:14,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:22:14,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:22:16,665.665 INFO    ] ================================================
[2026-06-22 06:22:16,680.680 INFO    ] Launching Daemon at Mon Jun 22 06:22:16 IST 2026
[2026-06-22 06:22:16,691.691 INFO    ] ================================================
[2026-06-22 06:22:17,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:22:17
[2026-06-22 06:22:17,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:22:18,198.198 INFO    ] Initializing speech engine...
[2026-06-22 06:22:18,210.210 INFO    ] 2026-06-22 06:22:18
[2026-06-22 06:22:18,516.516 INFO    ] 2026-06-22 06:22:18
[2026-06-22 06:22:18,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:22:18,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:22:18,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:22:18,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:22:18,928.928 INFO    ] time= 22/06/2026 06:22:18
[2026-06-22 06:22:18,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:22:19,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:22:19,166.166 INFO    ] No existing commands found in stream
[2026-06-22 06:22:24,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:22:24,197.197 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-22 06:22:28,035.035 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:22:28,038.038 INFO    ] Checking for system updates...
[2026-06-22 06:22:28,076.076 INFO    ] 200
[2026-06-22 06:22:28,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:22:28,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:22:28,138.138 INFO    ] No update needed
[2026-06-22 06:22:28,141.141 INFO    ] Checking for camera pi updates...
[2026-06-22 06:22:28,175.175 INFO    ] 200
[2026-06-22 06:22:28,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:22:28,219.219 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:22:28,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:22:28,308.308 INFO    ] No camera update needed
[2026-06-22 06:22:28,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:22:28,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:22:28,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:22:28,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:22:30,367.367 INFO    ] ================================================
[2026-06-22 06:22:30,382.382 INFO    ] Launching Daemon at Mon Jun 22 06:22:30 IST 2026
[2026-06-22 06:22:30,392.392 INFO    ] ================================================
[2026-06-22 06:22:31,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:22:31
[2026-06-22 06:22:31,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:22:31,897.897 INFO    ] Initializing speech engine...
[2026-06-22 06:22:31,916.916 INFO    ] 2026-06-22 06:22:31
[2026-06-22 06:22:32,203.203 INFO    ] 2026-06-22 06:22:32
[2026-06-22 06:22:32,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:22:32,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:22:32,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:22:32,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:22:32,631.631 INFO    ] time= 22/06/2026 06:22:32
[2026-06-22 06:22:32,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:22:32,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:22:32,811.811 INFO    ] No existing commands found in stream
[2026-06-22 06:22:37,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:22:37,851.851 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-22 06:22:39,433.433 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:22:39,542.542 INFO    ] Checking for system updates...
[2026-06-22 06:22:39,587.587 INFO    ] 200
[2026-06-22 06:22:39,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:22:39,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:22:39,651.651 INFO    ] No update needed
[2026-06-22 06:22:39,653.653 INFO    ] Checking for camera pi updates...
[2026-06-22 06:22:39,687.687 INFO    ] 200
[2026-06-22 06:22:39,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:22:39,731.731 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:22:39,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:22:39,817.817 INFO    ] No camera update needed
[2026-06-22 06:22:39,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:22:39,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:22:39,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:22:39,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:22:41,872.872 INFO    ] ================================================
[2026-06-22 06:22:41,887.887 INFO    ] Launching Daemon at Mon Jun 22 06:22:41 IST 2026
[2026-06-22 06:22:41,898.898 INFO    ] ================================================
[2026-06-22 06:22:42,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:22:42
[2026-06-22 06:22:43,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:22:43,454.454 INFO    ] Initializing speech engine...
[2026-06-22 06:22:43,461.461 INFO    ] 2026-06-22 06:22:43
[2026-06-22 06:22:43,776.776 INFO    ] 2026-06-22 06:22:43
[2026-06-22 06:22:43,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:22:44,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:22:44,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:22:44,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:22:44,280.280 INFO    ] time= 22/06/2026 06:22:44
[2026-06-22 06:22:44,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:22:44,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:22:44,434.434 INFO    ] No existing commands found in stream
[2026-06-22 06:22:49,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:22:49,453.453 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-22 06:22:50,553.553 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:22:50,554.554 INFO    ] Checking for system updates...
[2026-06-22 06:22:50,576.576 INFO    ] 200
[2026-06-22 06:22:50,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:22:50,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:22:50,610.610 INFO    ] No update needed
[2026-06-22 06:22:50,611.611 INFO    ] Checking for camera pi updates...
[2026-06-22 06:22:50,642.642 INFO    ] 200
[2026-06-22 06:22:50,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:22:50,687.687 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:22:50,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:22:50,777.777 INFO    ] No camera update needed
[2026-06-22 06:22:50,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:22:50,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:22:50,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:22:50,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:22:52,835.835 INFO    ] ================================================
[2026-06-22 06:22:52,850.850 INFO    ] Launching Daemon at Mon Jun 22 06:22:52 IST 2026
[2026-06-22 06:22:52,861.861 INFO    ] ================================================
[2026-06-22 06:22:53,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:22:53
[2026-06-22 06:22:53,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:22:54,228.228 INFO    ] Initializing speech engine...
[2026-06-22 06:22:54,241.241 INFO    ] 2026-06-22 06:22:54
[2026-06-22 06:22:54,521.521 INFO    ] 2026-06-22 06:22:54
[2026-06-22 06:22:54,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:22:54,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:22:54,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:22:54,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:22:55,002.002 INFO    ] time= 22/06/2026 06:22:54
[2026-06-22 06:22:55,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:22:55,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:22:55,139.139 INFO    ] No existing commands found in stream
[2026-06-22 06:23:00,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:23:00,153.153 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-22 06:23:03,558.558 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:23:03,560.560 INFO    ] Checking for system updates...
[2026-06-22 06:23:03,598.598 INFO    ] 200
[2026-06-22 06:23:03,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:23:03,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:23:03,657.657 INFO    ] No update needed
[2026-06-22 06:23:03,659.659 INFO    ] Checking for camera pi updates...
[2026-06-22 06:23:03,692.692 INFO    ] 200
[2026-06-22 06:23:03,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:23:03,735.735 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:23:03,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:23:03,820.820 INFO    ] No camera update needed
[2026-06-22 06:23:03,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:23:03,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:23:03,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:23:03,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:23:05,875.875 INFO    ] ================================================
[2026-06-22 06:23:05,890.890 INFO    ] Launching Daemon at Mon Jun 22 06:23:05 IST 2026
[2026-06-22 06:23:05,901.901 INFO    ] ================================================
[2026-06-22 06:23:06,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:23:06
[2026-06-22 06:23:07,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:23:07,358.358 INFO    ] Initializing speech engine...
[2026-06-22 06:23:07,367.367 INFO    ] 2026-06-22 06:23:07
[2026-06-22 06:23:07,658.658 INFO    ] 2026-06-22 06:23:07
[2026-06-22 06:23:07,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:23:07,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:23:07,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:23:08,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:23:08,030.030 INFO    ] time= 22/06/2026 06:23:08
[2026-06-22 06:23:08,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:23:08,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:23:08,155.155 INFO    ] No existing commands found in stream
[2026-06-22 06:23:13,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:23:13,169.169 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-22 06:23:13,687.687 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:23:13,690.690 INFO    ] Checking for system updates...
[2026-06-22 06:23:13,726.726 INFO    ] 200
[2026-06-22 06:23:13,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:23:13,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:23:13,783.783 INFO    ] No update needed
[2026-06-22 06:23:13,786.786 INFO    ] Checking for camera pi updates...
[2026-06-22 06:23:13,822.822 INFO    ] 200
[2026-06-22 06:23:13,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:23:13,866.866 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:23:13,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:23:13,954.954 INFO    ] No camera update needed
[2026-06-22 06:23:13,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:23:13,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:23:13,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:23:13,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:23:16,009.009 INFO    ] ================================================
[2026-06-22 06:23:16,025.025 INFO    ] Launching Daemon at Mon Jun 22 06:23:16 IST 2026
[2026-06-22 06:23:16,035.035 INFO    ] ================================================
[2026-06-22 06:23:16,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:23:16
[2026-06-22 06:23:17,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:23:17,413.413 INFO    ] Initializing speech engine...
[2026-06-22 06:23:17,425.425 INFO    ] 2026-06-22 06:23:17
[2026-06-22 06:23:17,691.691 INFO    ] 2026-06-22 06:23:17
[2026-06-22 06:23:17,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:23:17,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:23:17,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:23:18,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:23:18,100.100 INFO    ] time= 22/06/2026 06:23:18
[2026-06-22 06:23:18,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:23:18,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:23:18,278.278 INFO    ] No existing commands found in stream
[2026-06-22 06:23:23,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:23:23,293.293 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-22 06:23:26,103.103 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:23:26,104.104 INFO    ] Checking for system updates...
[2026-06-22 06:23:26,125.125 INFO    ] 200
[2026-06-22 06:23:26,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:23:26,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:23:26,175.175 INFO    ] No update needed
[2026-06-22 06:23:26,178.178 INFO    ] Checking for camera pi updates...
[2026-06-22 06:23:26,211.211 INFO    ] 200
[2026-06-22 06:23:26,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:23:26,260.260 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:23:26,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:23:26,359.359 INFO    ] No camera update needed
[2026-06-22 06:23:26,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:23:26,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:23:26,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:23:26,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:23:28,417.417 INFO    ] ================================================
[2026-06-22 06:23:28,432.432 INFO    ] Launching Daemon at Mon Jun 22 06:23:28 IST 2026
[2026-06-22 06:23:28,443.443 INFO    ] ================================================
[2026-06-22 06:23:29,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:23:29
[2026-06-22 06:23:29,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:23:29,958.958 INFO    ] Initializing speech engine...
[2026-06-22 06:23:29,968.968 INFO    ] 2026-06-22 06:23:29
[2026-06-22 06:23:30,261.261 INFO    ] 2026-06-22 06:23:30
[2026-06-22 06:23:30,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:23:30,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:23:30,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:23:30,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:23:30,700.700 INFO    ] time= 22/06/2026 06:23:30
[2026-06-22 06:23:30,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:23:30,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:23:30,867.867 INFO    ] No existing commands found in stream
[2026-06-22 06:23:35,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:23:35,906.906 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-22 06:23:38,647.647 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:23:38,651.651 INFO    ] Checking for system updates...
[2026-06-22 06:23:38,673.673 INFO    ] 200
[2026-06-22 06:23:38,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:23:38,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:23:38,706.706 INFO    ] No update needed
[2026-06-22 06:23:38,707.707 INFO    ] Checking for camera pi updates...
[2026-06-22 06:23:38,727.727 INFO    ] 200
[2026-06-22 06:23:38,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:23:38,756.756 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:23:38,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:23:38,841.841 INFO    ] No camera update needed
[2026-06-22 06:23:38,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:23:38,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:23:38,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:23:38,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:23:40,897.897 INFO    ] ================================================
[2026-06-22 06:23:40,914.914 INFO    ] Launching Daemon at Mon Jun 22 06:23:40 IST 2026
[2026-06-22 06:23:40,924.924 INFO    ] ================================================
[2026-06-22 06:23:41,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:23:41
[2026-06-22 06:23:42,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:23:42,261.261 INFO    ] Initializing speech engine...
[2026-06-22 06:23:42,270.270 INFO    ] 2026-06-22 06:23:42
[2026-06-22 06:23:42,565.565 INFO    ] 2026-06-22 06:23:42
[2026-06-22 06:23:42,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:23:42,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:23:42,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:23:42,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:23:42,947.947 INFO    ] time= 22/06/2026 06:23:42
[2026-06-22 06:23:42,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:23:42,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:23:43,075.075 INFO    ] No existing commands found in stream
[2026-06-22 06:23:48,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:23:48,098.098 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-22 06:23:53,303.303 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:23:53,306.306 INFO    ] Checking for system updates...
[2026-06-22 06:23:53,341.341 INFO    ] 200
[2026-06-22 06:23:53,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:23:53,397.397 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:23:53,399.399 INFO    ] No update needed
[2026-06-22 06:23:53,402.402 INFO    ] Checking for camera pi updates...
[2026-06-22 06:23:53,436.436 INFO    ] 200
[2026-06-22 06:23:53,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:23:53,479.479 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:23:53,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:23:53,582.582 INFO    ] No camera update needed
[2026-06-22 06:23:53,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:23:53,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:23:53,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:23:53,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:23:55,638.638 INFO    ] ================================================
[2026-06-22 06:23:55,653.653 INFO    ] Launching Daemon at Mon Jun 22 06:23:55 IST 2026
[2026-06-22 06:23:55,664.664 INFO    ] ================================================
[2026-06-22 06:23:56,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:23:56
[2026-06-22 06:23:56,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:23:56,998.998 INFO    ] Initializing speech engine...
[2026-06-22 06:23:57,023.023 INFO    ] 2026-06-22 06:23:57
[2026-06-22 06:23:57,295.295 INFO    ] 2026-06-22 06:23:57
[2026-06-22 06:23:57,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:23:57,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:23:57,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:23:57,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:23:57,670.670 INFO    ] time= 22/06/2026 06:23:57
[2026-06-22 06:23:57,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:23:57,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:23:57,798.798 INFO    ] No existing commands found in stream
[2026-06-22 06:24:02,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:24:02,811.811 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-22 06:24:06,385.385 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:24:06,387.387 INFO    ] Checking for system updates...
[2026-06-22 06:24:06,427.427 INFO    ] 200
[2026-06-22 06:24:06,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:24:06,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:24:06,485.485 INFO    ] No update needed
[2026-06-22 06:24:06,488.488 INFO    ] Checking for camera pi updates...
[2026-06-22 06:24:06,523.523 INFO    ] 200
[2026-06-22 06:24:06,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:24:06,566.566 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:24:06,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:24:06,752.752 INFO    ] No camera update needed
[2026-06-22 06:24:06,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:24:06,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:24:06,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:24:06,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:24:08,808.808 INFO    ] ================================================
[2026-06-22 06:24:08,824.824 INFO    ] Launching Daemon at Mon Jun 22 06:24:08 IST 2026
[2026-06-22 06:24:08,835.835 INFO    ] ================================================
[2026-06-22 06:24:09,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:24:09
[2026-06-22 06:24:09,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:24:10,157.157 INFO    ] Initializing speech engine...
[2026-06-22 06:24:10,166.166 INFO    ] 2026-06-22 06:24:10
[2026-06-22 06:24:10,446.446 INFO    ] 2026-06-22 06:24:10
[2026-06-22 06:24:10,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:24:10,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:24:10,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:24:10,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:24:10,925.925 INFO    ] time= 22/06/2026 06:24:10
[2026-06-22 06:24:10,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:24:11,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:24:11,079.079 INFO    ] No existing commands found in stream
[2026-06-22 06:24:16,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:24:16,094.094 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-22 06:24:17,239.239 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:24:17,242.242 INFO    ] Checking for system updates...
[2026-06-22 06:24:17,278.278 INFO    ] 200
[2026-06-22 06:24:17,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:24:17,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:24:17,335.335 INFO    ] No update needed
[2026-06-22 06:24:17,337.337 INFO    ] Checking for camera pi updates...
[2026-06-22 06:24:17,375.375 INFO    ] 200
[2026-06-22 06:24:17,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:24:17,419.419 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:24:17,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:24:17,512.512 INFO    ] No camera update needed
[2026-06-22 06:24:17,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:24:17,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:24:17,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:24:17,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:24:19,569.569 INFO    ] ================================================
[2026-06-22 06:24:19,585.585 INFO    ] Launching Daemon at Mon Jun 22 06:24:19 IST 2026
[2026-06-22 06:24:19,596.596 INFO    ] ================================================
[2026-06-22 06:24:20,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:24:20
[2026-06-22 06:24:20,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:24:21,144.144 INFO    ] Initializing speech engine...
[2026-06-22 06:24:21,153.153 INFO    ] 2026-06-22 06:24:21
[2026-06-22 06:24:21,443.443 INFO    ] 2026-06-22 06:24:21
[2026-06-22 06:24:21,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:24:22,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:24:22,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:24:22,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:24:22,897.897 INFO    ] time= 22/06/2026 06:24:22
[2026-06-22 06:24:22,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:24:22,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:24:22,963.963 INFO    ] No existing commands found in stream
[2026-06-22 06:24:27,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:24:27,980.980 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-22 06:24:30,486.486 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:24:30,489.489 INFO    ] Checking for system updates...
[2026-06-22 06:24:30,526.526 INFO    ] 200
[2026-06-22 06:24:30,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:24:30,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:24:30,587.587 INFO    ] No update needed
[2026-06-22 06:24:30,590.590 INFO    ] Checking for camera pi updates...
[2026-06-22 06:24:30,629.629 INFO    ] 200
[2026-06-22 06:24:30,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:24:30,679.679 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:24:30,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:24:30,763.763 INFO    ] No camera update needed
[2026-06-22 06:24:30,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:24:30,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:24:30,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:24:30,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:24:32,823.823 INFO    ] ================================================
[2026-06-22 06:24:32,839.839 INFO    ] Launching Daemon at Mon Jun 22 06:24:32 IST 2026
[2026-06-22 06:24:32,851.851 INFO    ] ================================================
[2026-06-22 06:24:33,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:24:33
[2026-06-22 06:24:34,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:24:34,519.519 INFO    ] Initializing speech engine...
[2026-06-22 06:24:34,532.532 INFO    ] 2026-06-22 06:24:34
[2026-06-22 06:24:34,821.821 INFO    ] 2026-06-22 06:24:34
[2026-06-22 06:24:34,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:24:35,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:24:35,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:24:35,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:24:35,284.284 INFO    ] time= 22/06/2026 06:24:35
[2026-06-22 06:24:35,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:24:35,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:24:35,440.440 INFO    ] No existing commands found in stream
[2026-06-22 06:24:40,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:24:40,475.475 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-22 06:24:42,008.008 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:24:42,010.010 INFO    ] Checking for system updates...
[2026-06-22 06:24:42,031.031 INFO    ] 200
[2026-06-22 06:24:42,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:24:42,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:24:42,067.067 INFO    ] No update needed
[2026-06-22 06:24:42,068.068 INFO    ] Checking for camera pi updates...
[2026-06-22 06:24:42,091.091 INFO    ] 200
[2026-06-22 06:24:42,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:24:42,118.118 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:24:42,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:24:42,201.201 INFO    ] No camera update needed
[2026-06-22 06:24:42,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:24:42,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:24:42,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:24:42,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:24:44,259.259 INFO    ] ================================================
[2026-06-22 06:24:44,275.275 INFO    ] Launching Daemon at Mon Jun 22 06:24:44 IST 2026
[2026-06-22 06:24:44,287.287 INFO    ] ================================================
[2026-06-22 06:24:44,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:24:44
[2026-06-22 06:24:45,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:24:45,910.910 INFO    ] Initializing speech engine...
[2026-06-22 06:24:45,917.917 INFO    ] 2026-06-22 06:24:45
[2026-06-22 06:24:46,213.213 INFO    ] 2026-06-22 06:24:46
[2026-06-22 06:24:46,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:24:46,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:24:46,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:24:46,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:24:46,680.680 INFO    ] time= 22/06/2026 06:24:46
[2026-06-22 06:24:46,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:24:46,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:24:46,832.832 INFO    ] No existing commands found in stream
[2026-06-22 06:24:51,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:24:51,848.848 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-22 06:24:53,521.521 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:24:53,524.524 INFO    ] Checking for system updates...
[2026-06-22 06:24:53,562.562 INFO    ] 200
[2026-06-22 06:24:53,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:24:53,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:24:53,624.624 INFO    ] No update needed
[2026-06-22 06:24:53,627.627 INFO    ] Checking for camera pi updates...
[2026-06-22 06:24:53,663.663 INFO    ] 200
[2026-06-22 06:24:53,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:24:53,713.713 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:24:53,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:24:53,810.810 INFO    ] No camera update needed
[2026-06-22 06:24:53,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:24:53,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:24:53,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:24:53,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:24:55,870.870 INFO    ] ================================================
[2026-06-22 06:24:55,885.885 INFO    ] Launching Daemon at Mon Jun 22 06:24:55 IST 2026
[2026-06-22 06:24:55,896.896 INFO    ] ================================================
[2026-06-22 06:24:56,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:24:56
[2026-06-22 06:24:57,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:24:57,474.474 INFO    ] Initializing speech engine...
[2026-06-22 06:24:57,480.480 INFO    ] 2026-06-22 06:24:57
[2026-06-22 06:24:57,768.768 INFO    ] 2026-06-22 06:24:57
[2026-06-22 06:24:57,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:24:58,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:24:58,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:24:58,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:24:58,228.228 INFO    ] time= 22/06/2026 06:24:58
[2026-06-22 06:24:58,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:24:58,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:24:58,374.374 INFO    ] No existing commands found in stream
[2026-06-22 06:25:03,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:25:03,393.393 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-22 06:25:05,809.809 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:25:05,812.812 INFO    ] Checking for system updates...
[2026-06-22 06:25:05,849.849 INFO    ] 200
[2026-06-22 06:25:05,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:25:05,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:25:05,917.917 INFO    ] No update needed
[2026-06-22 06:25:05,920.920 INFO    ] Checking for camera pi updates...
[2026-06-22 06:25:05,956.956 INFO    ] 200
[2026-06-22 06:25:05,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:25:06,002.002 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:25:06,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:25:06,109.109 INFO    ] No camera update needed
[2026-06-22 06:25:06,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:25:06,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:25:06,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:25:06,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:25:08,170.170 INFO    ] ================================================
[2026-06-22 06:25:08,186.186 INFO    ] Launching Daemon at Mon Jun 22 06:25:08 IST 2026
[2026-06-22 06:25:08,197.197 INFO    ] ================================================
[2026-06-22 06:25:08,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:25:08
[2026-06-22 06:25:09,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:25:09,686.686 INFO    ] Initializing speech engine...
[2026-06-22 06:25:09,697.697 INFO    ] 2026-06-22 06:25:09
[2026-06-22 06:25:09,944.944 INFO    ] 2026-06-22 06:25:09
[2026-06-22 06:25:09,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:25:10,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:25:10,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:25:10,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:25:10,313.313 INFO    ] time= 22/06/2026 06:25:10
[2026-06-22 06:25:10,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:25:10,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:25:10,489.489 INFO    ] No existing commands found in stream
[2026-06-22 06:25:15,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:25:15,526.526 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-22 06:25:19,681.681 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:25:19,684.684 INFO    ] Checking for system updates...
[2026-06-22 06:25:19,721.721 INFO    ] 200
[2026-06-22 06:25:19,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:25:19,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:25:19,779.779 INFO    ] No update needed
[2026-06-22 06:25:19,782.782 INFO    ] Checking for camera pi updates...
[2026-06-22 06:25:19,815.815 INFO    ] 200
[2026-06-22 06:25:19,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:25:19,864.864 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:25:19,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:25:19,950.950 INFO    ] No camera update needed
[2026-06-22 06:25:19,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:25:19,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:25:19,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:25:19,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:25:22,007.007 INFO    ] ================================================
[2026-06-22 06:25:22,023.023 INFO    ] Launching Daemon at Mon Jun 22 06:25:22 IST 2026
[2026-06-22 06:25:22,034.034 INFO    ] ================================================
[2026-06-22 06:25:22,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:25:22
[2026-06-22 06:25:23,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:25:23,446.446 INFO    ] Initializing speech engine...
[2026-06-22 06:25:23,452.452 INFO    ] 2026-06-22 06:25:23
[2026-06-22 06:25:23,748.748 INFO    ] 2026-06-22 06:25:23
[2026-06-22 06:25:23,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:25:23,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:25:23,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:25:24,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:25:24,105.105 INFO    ] time= 22/06/2026 06:25:24
[2026-06-22 06:25:24,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:25:24,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:25:24,186.186 INFO    ] No existing commands found in stream
[2026-06-22 06:25:29,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:25:29,199.199 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-22 06:25:30,505.505 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:25:30,506.506 INFO    ] Checking for system updates...
[2026-06-22 06:25:30,528.528 INFO    ] 200
[2026-06-22 06:25:30,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:25:30,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:25:30,575.575 INFO    ] No update needed
[2026-06-22 06:25:30,578.578 INFO    ] Checking for camera pi updates...
[2026-06-22 06:25:30,614.614 INFO    ] 200
[2026-06-22 06:25:30,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:25:30,658.658 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:25:30,745.745 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:25:30,748.748 INFO    ] No camera update needed
[2026-06-22 06:25:30,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:25:30,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:25:30,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:25:30,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:25:32,806.806 INFO    ] ================================================
[2026-06-22 06:25:32,822.822 INFO    ] Launching Daemon at Mon Jun 22 06:25:32 IST 2026
[2026-06-22 06:25:32,833.833 INFO    ] ================================================
[2026-06-22 06:25:33,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:25:33
[2026-06-22 06:25:33,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:25:34,258.258 INFO    ] Initializing speech engine...
[2026-06-22 06:25:34,277.277 INFO    ] 2026-06-22 06:25:34
[2026-06-22 06:25:34,534.534 INFO    ] 2026-06-22 06:25:34
[2026-06-22 06:25:34,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:25:34,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:25:34,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:25:34,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:25:34,988.988 INFO    ] time= 22/06/2026 06:25:34
[2026-06-22 06:25:35,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:25:35,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:25:35,157.157 INFO    ] No existing commands found in stream
[2026-06-22 06:25:40,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:25:40,171.171 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-22 06:25:41,747.747 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:25:41,749.749 INFO    ] Checking for system updates...
[2026-06-22 06:25:41,785.785 INFO    ] 200
[2026-06-22 06:25:41,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:25:41,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:25:41,844.844 INFO    ] No update needed
[2026-06-22 06:25:41,846.846 INFO    ] Checking for camera pi updates...
[2026-06-22 06:25:41,880.880 INFO    ] 200
[2026-06-22 06:25:41,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:25:41,924.924 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:25:42,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:25:42,009.009 INFO    ] No camera update needed
[2026-06-22 06:25:42,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:25:42,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:25:42,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:25:42,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:25:44,066.066 INFO    ] ================================================
[2026-06-22 06:25:44,082.082 INFO    ] Launching Daemon at Mon Jun 22 06:25:44 IST 2026
[2026-06-22 06:25:44,093.093 INFO    ] ================================================
[2026-06-22 06:25:44,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:25:44
[2026-06-22 06:25:45,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:25:45,426.426 INFO    ] Initializing speech engine...
[2026-06-22 06:25:45,434.434 INFO    ] 2026-06-22 06:25:45
[2026-06-22 06:25:45,732.732 INFO    ] 2026-06-22 06:25:45
[2026-06-22 06:25:45,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:25:45,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:25:45,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:25:46,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:25:46,074.074 INFO    ] time= 22/06/2026 06:25:46
[2026-06-22 06:25:46,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:25:46,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:25:46,167.167 INFO    ] No existing commands found in stream
[2026-06-22 06:25:51,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:25:51,179.179 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-22 06:25:53,409.409 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:25:53,410.410 INFO    ] Checking for system updates...
[2026-06-22 06:25:53,431.431 INFO    ] 200
[2026-06-22 06:25:53,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:25:53,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:25:53,483.483 INFO    ] No update needed
[2026-06-22 06:25:53,486.486 INFO    ] Checking for camera pi updates...
[2026-06-22 06:25:53,519.519 INFO    ] 200
[2026-06-22 06:25:53,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:25:53,562.562 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:25:53,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:25:53,647.647 INFO    ] No camera update needed
[2026-06-22 06:25:53,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:25:53,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:25:53,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:25:53,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:25:55,704.704 INFO    ] ================================================
[2026-06-22 06:25:55,720.720 INFO    ] Launching Daemon at Mon Jun 22 06:25:55 IST 2026
[2026-06-22 06:25:55,731.731 INFO    ] ================================================
[2026-06-22 06:25:56,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:25:56
[2026-06-22 06:25:56,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:25:57,228.228 INFO    ] Initializing speech engine...
[2026-06-22 06:25:57,237.237 INFO    ] 2026-06-22 06:25:57
[2026-06-22 06:25:57,525.525 INFO    ] 2026-06-22 06:25:57
[2026-06-22 06:25:57,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:25:57,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:25:57,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:25:57,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:25:57,978.978 INFO    ] time= 22/06/2026 06:25:57
[2026-06-22 06:25:58,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:25:58,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:25:58,130.130 INFO    ] No existing commands found in stream
[2026-06-22 06:26:03,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:26:03,152.152 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-22 06:26:06,378.378 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:26:06,382.382 INFO    ] Checking for system updates...
[2026-06-22 06:26:06,419.419 INFO    ] 200
[2026-06-22 06:26:06,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:26:06,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:26:06,479.479 INFO    ] No update needed
[2026-06-22 06:26:06,482.482 INFO    ] Checking for camera pi updates...
[2026-06-22 06:26:06,517.517 INFO    ] 200
[2026-06-22 06:26:06,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:26:06,561.561 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:26:06,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:26:06,656.656 INFO    ] No camera update needed
[2026-06-22 06:26:06,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:26:06,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:26:06,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:26:06,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:26:08,716.716 INFO    ] ================================================
[2026-06-22 06:26:08,731.731 INFO    ] Launching Daemon at Mon Jun 22 06:26:08 IST 2026
[2026-06-22 06:26:08,742.742 INFO    ] ================================================
[2026-06-22 06:26:09,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:26:09
[2026-06-22 06:26:09,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:26:10,280.280 INFO    ] Initializing speech engine...
[2026-06-22 06:26:10,288.288 INFO    ] 2026-06-22 06:26:10
[2026-06-22 06:26:10,581.581 INFO    ] 2026-06-22 06:26:10
[2026-06-22 06:26:10,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:26:10,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:26:10,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:26:11,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:26:11,115.115 INFO    ] time= 22/06/2026 06:26:11
[2026-06-22 06:26:11,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:26:11,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:26:11,261.261 INFO    ] No existing commands found in stream
[2026-06-22 06:26:16,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:26:16,284.284 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-22 06:26:18,707.707 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:26:18,708.708 INFO    ] Checking for system updates...
[2026-06-22 06:26:18,729.729 INFO    ] 200
[2026-06-22 06:26:18,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:26:18,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:26:18,762.762 INFO    ] No update needed
[2026-06-22 06:26:18,764.764 INFO    ] Checking for camera pi updates...
[2026-06-22 06:26:18,793.793 INFO    ] 200
[2026-06-22 06:26:18,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:26:18,837.837 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:26:19,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:26:19,021.021 INFO    ] No camera update needed
[2026-06-22 06:26:19,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:26:19,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:26:19,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:26:19,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:26:21,083.083 INFO    ] ================================================
[2026-06-22 06:26:21,098.098 INFO    ] Launching Daemon at Mon Jun 22 06:26:21 IST 2026
[2026-06-22 06:26:21,109.109 INFO    ] ================================================
[2026-06-22 06:26:21,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:26:21
[2026-06-22 06:26:22,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:26:22,556.556 INFO    ] Initializing speech engine...
[2026-06-22 06:26:22,562.562 INFO    ] 2026-06-22 06:26:22
[2026-06-22 06:26:22,849.849 INFO    ] 2026-06-22 06:26:22
[2026-06-22 06:26:22,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:26:23,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:26:23,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:26:23,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:26:23,381.381 INFO    ] time= 22/06/2026 06:26:23
[2026-06-22 06:26:23,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:26:23,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:26:23,540.540 INFO    ] No existing commands found in stream
[2026-06-22 06:26:28,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:26:28,566.566 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-22 06:26:29,310.310 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:26:29,313.313 INFO    ] Checking for system updates...
[2026-06-22 06:26:29,351.351 INFO    ] 200
[2026-06-22 06:26:29,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:26:29,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:26:29,402.402 INFO    ] No update needed
[2026-06-22 06:26:29,403.403 INFO    ] Checking for camera pi updates...
[2026-06-22 06:26:29,423.423 INFO    ] 200
[2026-06-22 06:26:29,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:26:29,451.451 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:26:29,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:26:29,535.535 INFO    ] No camera update needed
[2026-06-22 06:26:29,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:26:29,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:26:29,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:26:29,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:26:31,592.592 INFO    ] ================================================
[2026-06-22 06:26:31,609.609 INFO    ] Launching Daemon at Mon Jun 22 06:26:31 IST 2026
[2026-06-22 06:26:31,620.620 INFO    ] ================================================
[2026-06-22 06:26:32,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:26:32
[2026-06-22 06:26:32,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:26:33,123.123 INFO    ] Initializing speech engine...
[2026-06-22 06:26:33,134.134 INFO    ] 2026-06-22 06:26:33
[2026-06-22 06:26:33,399.399 INFO    ] 2026-06-22 06:26:33
[2026-06-22 06:26:33,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:26:33,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:26:33,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:26:33,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:26:33,758.758 INFO    ] time= 22/06/2026 06:26:33
[2026-06-22 06:26:33,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:26:33,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:26:33,836.836 INFO    ] No existing commands found in stream
[2026-06-22 06:26:38,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:26:38,849.849 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-22 06:26:41,930.930 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:26:41,932.932 INFO    ] Checking for system updates...
[2026-06-22 06:26:41,969.969 INFO    ] 200
[2026-06-22 06:26:41,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:26:42,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:26:42,026.026 INFO    ] No update needed
[2026-06-22 06:26:42,029.029 INFO    ] Checking for camera pi updates...
[2026-06-22 06:26:42,062.062 INFO    ] 200
[2026-06-22 06:26:42,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:26:42,109.109 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:26:42,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:26:42,196.196 INFO    ] No camera update needed
[2026-06-22 06:26:42,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:26:42,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:26:42,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:26:42,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:26:44,251.251 INFO    ] ================================================
[2026-06-22 06:26:44,267.267 INFO    ] Launching Daemon at Mon Jun 22 06:26:44 IST 2026
[2026-06-22 06:26:44,277.277 INFO    ] ================================================
[2026-06-22 06:26:44,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:26:44
[2026-06-22 06:26:45,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:26:45,653.653 INFO    ] Initializing speech engine...
[2026-06-22 06:26:45,662.662 INFO    ] 2026-06-22 06:26:45
[2026-06-22 06:26:45,921.921 INFO    ] 2026-06-22 06:26:45
[2026-06-22 06:26:45,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:26:46,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:26:46,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:26:46,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:26:46,376.376 INFO    ] time= 22/06/2026 06:26:46
[2026-06-22 06:26:46,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:26:46,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:26:46,524.524 INFO    ] No existing commands found in stream
[2026-06-22 06:26:51,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:26:51,539.539 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-22 06:26:55,287.287 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:26:55,289.289 INFO    ] Checking for system updates...
[2026-06-22 06:26:55,322.322 INFO    ] 200
[2026-06-22 06:26:55,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:26:55,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:26:55,384.384 INFO    ] No update needed
[2026-06-22 06:26:55,387.387 INFO    ] Checking for camera pi updates...
[2026-06-22 06:26:55,421.421 INFO    ] 200
[2026-06-22 06:26:55,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:26:55,467.467 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:26:55,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:26:55,550.550 INFO    ] No camera update needed
[2026-06-22 06:26:55,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:26:55,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:26:55,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:26:55,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:26:57,606.606 INFO    ] ================================================
[2026-06-22 06:26:57,621.621 INFO    ] Launching Daemon at Mon Jun 22 06:26:57 IST 2026
[2026-06-22 06:26:57,632.632 INFO    ] ================================================
[2026-06-22 06:26:58,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:26:58
[2026-06-22 06:26:58,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:26:59,279.279 INFO    ] Initializing speech engine...
[2026-06-22 06:26:59,286.286 INFO    ] 2026-06-22 06:26:59
[2026-06-22 06:26:59,564.564 INFO    ] 2026-06-22 06:26:59
[2026-06-22 06:26:59,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:26:59,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:26:59,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:27:00,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:27:00,013.013 INFO    ] time= 22/06/2026 06:27:00
[2026-06-22 06:27:00,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:27:00,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:27:00,200.200 INFO    ] No existing commands found in stream
[2026-06-22 06:27:05,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:27:05,216.216 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-22 06:27:06,240.240 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:27:06,243.243 INFO    ] Checking for system updates...
[2026-06-22 06:27:06,281.281 INFO    ] 200
[2026-06-22 06:27:06,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:27:06,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:27:06,339.339 INFO    ] No update needed
[2026-06-22 06:27:06,341.341 INFO    ] Checking for camera pi updates...
[2026-06-22 06:27:06,375.375 INFO    ] 200
[2026-06-22 06:27:06,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:27:06,418.418 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:27:06,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:27:06,473.473 INFO    ] No camera update needed
[2026-06-22 06:27:06,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:27:06,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:27:06,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:27:06,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:27:08,529.529 INFO    ] ================================================
[2026-06-22 06:27:08,545.545 INFO    ] Launching Daemon at Mon Jun 22 06:27:08 IST 2026
[2026-06-22 06:27:08,555.555 INFO    ] ================================================
[2026-06-22 06:27:09,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:27:09
[2026-06-22 06:27:09,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:27:09,868.868 INFO    ] Initializing speech engine...
[2026-06-22 06:27:09,881.881 INFO    ] 2026-06-22 06:27:09
[2026-06-22 06:27:10,159.159 INFO    ] 2026-06-22 06:27:10
[2026-06-22 06:27:10,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:27:10,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:27:10,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:27:10,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:27:10,542.542 INFO    ] time= 22/06/2026 06:27:10
[2026-06-22 06:27:10,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:27:10,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:27:10,646.646 INFO    ] No existing commands found in stream
[2026-06-22 06:27:15,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:27:15,660.660 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-22 06:27:16,082.082 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:27:16,085.085 INFO    ] Checking for system updates...
[2026-06-22 06:27:16,120.120 INFO    ] 200
[2026-06-22 06:27:16,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:27:16,194.194 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:27:16,196.196 INFO    ] No update needed
[2026-06-22 06:27:16,199.199 INFO    ] Checking for camera pi updates...
[2026-06-22 06:27:16,235.235 INFO    ] 200
[2026-06-22 06:27:16,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:27:16,277.277 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:27:16,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:27:16,379.379 INFO    ] No camera update needed
[2026-06-22 06:27:16,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:27:16,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:27:16,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:27:16,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:27:18,429.429 INFO    ] ================================================
[2026-06-22 06:27:18,443.443 INFO    ] Launching Daemon at Mon Jun 22 06:27:18 IST 2026
[2026-06-22 06:27:18,454.454 INFO    ] ================================================
[2026-06-22 06:27:19,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:27:19
[2026-06-22 06:27:19,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:27:19,789.789 INFO    ] Initializing speech engine...
[2026-06-22 06:27:19,808.808 INFO    ] 2026-06-22 06:27:19
[2026-06-22 06:27:20,070.070 INFO    ] 2026-06-22 06:27:20
[2026-06-22 06:27:20,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:27:20,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:27:20,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:27:20,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:27:20,473.473 INFO    ] time= 22/06/2026 06:27:20
[2026-06-22 06:27:20,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:27:20,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:27:20,563.563 INFO    ] No existing commands found in stream
[2026-06-22 06:27:25,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:27:25,601.601 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-22 06:27:27,836.836 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:27:27,838.838 INFO    ] Checking for system updates...
[2026-06-22 06:27:27,860.860 INFO    ] 200
[2026-06-22 06:27:27,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:27:27,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:27:27,909.909 INFO    ] No update needed
[2026-06-22 06:27:27,912.912 INFO    ] Checking for camera pi updates...
[2026-06-22 06:27:27,946.946 INFO    ] 200
[2026-06-22 06:27:27,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:27:27,990.990 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:27:28,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:27:28,076.076 INFO    ] No camera update needed
[2026-06-22 06:27:28,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:27:28,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:27:28,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:27:28,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:27:30,134.134 INFO    ] ================================================
[2026-06-22 06:27:30,149.149 INFO    ] Launching Daemon at Mon Jun 22 06:27:30 IST 2026
[2026-06-22 06:27:30,159.159 INFO    ] ================================================
[2026-06-22 06:27:30,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:27:30
[2026-06-22 06:27:31,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:27:31,565.565 INFO    ] Initializing speech engine...
[2026-06-22 06:27:31,573.573 INFO    ] 2026-06-22 06:27:31
[2026-06-22 06:27:31,853.853 INFO    ] 2026-06-22 06:27:31
[2026-06-22 06:27:31,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:27:32,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:27:32,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:27:32,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:27:32,248.248 INFO    ] time= 22/06/2026 06:27:32
[2026-06-22 06:27:32,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:27:32,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:27:32,441.441 INFO    ] No existing commands found in stream
[2026-06-22 06:27:37,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:27:37,466.466 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-22 06:27:39,690.690 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:27:39,692.692 INFO    ] Checking for system updates...
[2026-06-22 06:27:39,712.712 INFO    ] 200
[2026-06-22 06:27:39,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:27:39,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:27:39,747.747 INFO    ] No update needed
[2026-06-22 06:27:39,749.749 INFO    ] Checking for camera pi updates...
[2026-06-22 06:27:39,771.771 INFO    ] 200
[2026-06-22 06:27:39,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:27:39,800.800 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:27:39,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:27:39,889.889 INFO    ] No camera update needed
[2026-06-22 06:27:39,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:27:39,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:27:39,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:27:39,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:27:41,946.946 INFO    ] ================================================
[2026-06-22 06:27:41,961.961 INFO    ] Launching Daemon at Mon Jun 22 06:27:41 IST 2026
[2026-06-22 06:27:41,972.972 INFO    ] ================================================
[2026-06-22 06:27:42,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:27:42
[2026-06-22 06:27:43,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:27:43,410.410 INFO    ] Initializing speech engine...
[2026-06-22 06:27:43,419.419 INFO    ] 2026-06-22 06:27:43
[2026-06-22 06:27:43,705.705 INFO    ] 2026-06-22 06:27:43
[2026-06-22 06:27:43,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:27:43,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:27:43,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:27:44,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:27:44,086.086 INFO    ] time= 22/06/2026 06:27:44
[2026-06-22 06:27:44,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:27:44,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:27:44,190.190 INFO    ] No existing commands found in stream
[2026-06-22 06:27:49,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:27:49,206.206 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-22 06:27:50,351.351 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:27:50,354.354 INFO    ] Checking for system updates...
[2026-06-22 06:27:50,392.392 INFO    ] 200
[2026-06-22 06:27:50,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:27:50,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:27:50,453.453 INFO    ] No update needed
[2026-06-22 06:27:50,461.461 INFO    ] Checking for camera pi updates...
[2026-06-22 06:27:50,496.496 INFO    ] 200
[2026-06-22 06:27:50,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:27:50,544.544 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:27:50,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:27:50,652.652 INFO    ] No camera update needed
[2026-06-22 06:27:50,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:27:50,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:27:50,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:27:50,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:27:52,709.709 INFO    ] ================================================
[2026-06-22 06:27:52,724.724 INFO    ] Launching Daemon at Mon Jun 22 06:27:52 IST 2026
[2026-06-22 06:27:52,735.735 INFO    ] ================================================
[2026-06-22 06:27:53,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:27:53
[2026-06-22 06:27:53,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:27:54,055.055 INFO    ] Initializing speech engine...
[2026-06-22 06:27:54,079.079 INFO    ] 2026-06-22 06:27:54
[2026-06-22 06:27:54,349.349 INFO    ] 2026-06-22 06:27:54
[2026-06-22 06:27:54,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:27:54,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:27:54,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:27:54,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:27:54,732.732 INFO    ] time= 22/06/2026 06:27:54
[2026-06-22 06:27:54,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:27:54,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:27:54,841.841 INFO    ] No existing commands found in stream
[2026-06-22 06:27:59,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:27:59,859.859 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-22 06:28:02,904.904 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:28:02,907.907 INFO    ] Checking for system updates...
[2026-06-22 06:28:02,943.943 INFO    ] 200
[2026-06-22 06:28:02,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:28:03,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:28:03,019.019 INFO    ] No update needed
[2026-06-22 06:28:03,021.021 INFO    ] Checking for camera pi updates...
[2026-06-22 06:28:03,055.055 INFO    ] 200
[2026-06-22 06:28:03,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:28:03,098.098 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:28:03,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:28:03,182.182 INFO    ] No camera update needed
[2026-06-22 06:28:03,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:28:03,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:28:03,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:28:03,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:28:05,238.238 INFO    ] ================================================
[2026-06-22 06:28:05,254.254 INFO    ] Launching Daemon at Mon Jun 22 06:28:05 IST 2026
[2026-06-22 06:28:05,265.265 INFO    ] ================================================
[2026-06-22 06:28:05,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:28:05
[2026-06-22 06:28:06,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:28:06,771.771 INFO    ] Initializing speech engine...
[2026-06-22 06:28:06,779.779 INFO    ] 2026-06-22 06:28:06
[2026-06-22 06:28:07,030.030 INFO    ] 2026-06-22 06:28:07
[2026-06-22 06:28:07,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:28:07,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:28:07,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:28:07,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:28:07,427.427 INFO    ] time= 22/06/2026 06:28:07
[2026-06-22 06:28:07,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:28:07,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:28:07,510.510 INFO    ] No existing commands found in stream
[2026-06-22 06:28:12,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:28:12,526.526 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-22 06:28:16,549.549 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:28:16,552.552 INFO    ] Checking for system updates...
[2026-06-22 06:28:16,591.591 INFO    ] 200
[2026-06-22 06:28:16,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:28:16,646.646 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:28:16,649.649 INFO    ] No update needed
[2026-06-22 06:28:16,651.651 INFO    ] Checking for camera pi updates...
[2026-06-22 06:28:16,685.685 INFO    ] 200
[2026-06-22 06:28:16,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:28:16,728.728 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:28:16,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:28:16,797.797 INFO    ] No camera update needed
[2026-06-22 06:28:16,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:28:16,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:28:16,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:28:16,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:28:18,853.853 INFO    ] ================================================
[2026-06-22 06:28:18,869.869 INFO    ] Launching Daemon at Mon Jun 22 06:28:18 IST 2026
[2026-06-22 06:28:18,880.880 INFO    ] ================================================
[2026-06-22 06:28:19,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:28:19
[2026-06-22 06:28:19,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:28:20,221.221 INFO    ] Initializing speech engine...
[2026-06-22 06:28:20,231.231 INFO    ] 2026-06-22 06:28:20
[2026-06-22 06:28:20,487.487 INFO    ] 2026-06-22 06:28:20
[2026-06-22 06:28:20,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:28:20,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:28:20,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:28:20,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:28:20,959.959 INFO    ] time= 22/06/2026 06:28:20
[2026-06-22 06:28:21,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:28:21,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:28:21,098.098 INFO    ] No existing commands found in stream
[2026-06-22 06:28:26,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:28:26,113.113 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-22 06:28:27,290.290 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:28:27,292.292 INFO    ] Checking for system updates...
[2026-06-22 06:28:27,315.315 INFO    ] 200
[2026-06-22 06:28:27,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:28:27,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:28:27,349.349 INFO    ] No update needed
[2026-06-22 06:28:27,351.351 INFO    ] Checking for camera pi updates...
[2026-06-22 06:28:27,370.370 INFO    ] 200
[2026-06-22 06:28:27,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:28:27,395.395 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:28:27,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:28:27,480.480 INFO    ] No camera update needed
[2026-06-22 06:28:27,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:28:27,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:28:27,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:28:27,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:28:29,537.537 INFO    ] ================================================
[2026-06-22 06:28:29,553.553 INFO    ] Launching Daemon at Mon Jun 22 06:28:29 IST 2026
[2026-06-22 06:28:29,564.564 INFO    ] ================================================
[2026-06-22 06:28:30,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:28:30
[2026-06-22 06:28:30,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:28:31,128.128 INFO    ] Initializing speech engine...
[2026-06-22 06:28:31,140.140 INFO    ] 2026-06-22 06:28:31
[2026-06-22 06:28:31,483.483 INFO    ] 2026-06-22 06:28:31
[2026-06-22 06:28:31,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:28:31,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:28:31,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:28:31,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:28:31,952.952 INFO    ] time= 22/06/2026 06:28:31
[2026-06-22 06:28:32,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:28:32,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:28:32,115.115 INFO    ] No existing commands found in stream
[2026-06-22 06:28:37,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:28:37,149.149 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-22 06:28:39,208.208 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:28:39,209.209 INFO    ] Checking for system updates...
[2026-06-22 06:28:39,241.241 INFO    ] 200
[2026-06-22 06:28:39,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:28:39,298.298 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:28:39,300.300 INFO    ] No update needed
[2026-06-22 06:28:39,302.302 INFO    ] Checking for camera pi updates...
[2026-06-22 06:28:39,340.340 INFO    ] 200
[2026-06-22 06:28:39,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:28:39,386.386 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:28:39,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:28:39,477.477 INFO    ] No camera update needed
[2026-06-22 06:28:39,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:28:39,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:28:39,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:28:39,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:28:41,534.534 INFO    ] ================================================
[2026-06-22 06:28:41,550.550 INFO    ] Launching Daemon at Mon Jun 22 06:28:41 IST 2026
[2026-06-22 06:28:41,561.561 INFO    ] ================================================
[2026-06-22 06:28:42,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:28:42
[2026-06-22 06:28:42,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:28:43,098.098 INFO    ] Initializing speech engine...
[2026-06-22 06:28:43,110.110 INFO    ] 2026-06-22 06:28:43
[2026-06-22 06:28:43,379.379 INFO    ] 2026-06-22 06:28:43
[2026-06-22 06:28:43,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:28:43,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:28:43,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:28:43,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:28:43,862.862 INFO    ] time= 22/06/2026 06:28:43
[2026-06-22 06:28:43,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:28:43,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:28:44,065.065 INFO    ] No existing commands found in stream
[2026-06-22 06:28:49,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:28:49,105.105 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-22 06:28:49,812.812 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:28:49,813.813 INFO    ] Checking for system updates...
[2026-06-22 06:28:49,834.834 INFO    ] 200
[2026-06-22 06:28:49,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:28:49,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:28:49,871.871 INFO    ] No update needed
[2026-06-22 06:28:49,872.872 INFO    ] Checking for camera pi updates...
[2026-06-22 06:28:49,894.894 INFO    ] 200
[2026-06-22 06:28:49,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:28:49,925.925 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:28:50,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:28:50,017.017 INFO    ] No camera update needed
[2026-06-22 06:28:50,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:28:50,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:28:50,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:28:50,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:28:52,077.077 INFO    ] ================================================
[2026-06-22 06:28:52,092.092 INFO    ] Launching Daemon at Mon Jun 22 06:28:52 IST 2026
[2026-06-22 06:28:52,103.103 INFO    ] ================================================
[2026-06-22 06:28:52,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:28:52
[2026-06-22 06:28:53,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:28:53,434.434 INFO    ] Initializing speech engine...
[2026-06-22 06:28:53,443.443 INFO    ] 2026-06-22 06:28:53
[2026-06-22 06:28:53,738.738 INFO    ] 2026-06-22 06:28:53
[2026-06-22 06:28:53,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:28:53,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:28:53,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:28:54,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:28:54,095.095 INFO    ] time= 22/06/2026 06:28:54
[2026-06-22 06:28:54,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:28:54,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:28:54,175.175 INFO    ] No existing commands found in stream
[2026-06-22 06:28:59,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:28:59,188.188 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-22 06:29:01,169.169 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:29:01,173.173 INFO    ] Checking for system updates...
[2026-06-22 06:29:01,242.242 INFO    ] 200
[2026-06-22 06:29:01,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:29:01,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:29:01,335.335 INFO    ] No update needed
[2026-06-22 06:29:01,339.339 INFO    ] Checking for camera pi updates...
[2026-06-22 06:29:01,390.390 INFO    ] 200
[2026-06-22 06:29:01,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:29:01,489.489 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:29:01,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:29:01,590.590 INFO    ] No camera update needed
[2026-06-22 06:29:01,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:29:01,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:29:01,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:29:01,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:29:03,656.656 INFO    ] ================================================
[2026-06-22 06:29:03,671.671 INFO    ] Launching Daemon at Mon Jun 22 06:29:03 IST 2026
[2026-06-22 06:29:03,682.682 INFO    ] ================================================
[2026-06-22 06:29:04,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:29:04
[2026-06-22 06:29:04,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:29:05,084.084 INFO    ] Initializing speech engine...
[2026-06-22 06:29:05,106.106 INFO    ] 2026-06-22 06:29:05
[2026-06-22 06:29:05,358.358 INFO    ] 2026-06-22 06:29:05
[2026-06-22 06:29:05,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:29:05,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:29:05,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:29:05,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:29:05,839.839 INFO    ] time= 22/06/2026 06:29:05
[2026-06-22 06:29:05,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:29:05,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:29:05,898.898 INFO    ] No existing commands found in stream
[2026-06-22 06:29:10,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:29:10,913.913 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-22 06:29:12,266.266 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:29:12,269.269 INFO    ] Checking for system updates...
[2026-06-22 06:29:12,305.305 INFO    ] 200
[2026-06-22 06:29:12,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:29:12,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:29:12,370.370 INFO    ] No update needed
[2026-06-22 06:29:12,372.372 INFO    ] Checking for camera pi updates...
[2026-06-22 06:29:12,409.409 INFO    ] 200
[2026-06-22 06:29:12,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:29:12,452.452 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:29:12,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:29:12,563.563 INFO    ] No camera update needed
[2026-06-22 06:29:12,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:29:12,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:29:12,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:29:12,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:29:14,619.619 INFO    ] ================================================
[2026-06-22 06:29:14,636.636 INFO    ] Launching Daemon at Mon Jun 22 06:29:14 IST 2026
[2026-06-22 06:29:14,647.647 INFO    ] ================================================
[2026-06-22 06:29:15,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:29:15
[2026-06-22 06:29:15,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:29:16,279.279 INFO    ] Initializing speech engine...
[2026-06-22 06:29:16,289.289 INFO    ] 2026-06-22 06:29:16
[2026-06-22 06:29:16,592.592 INFO    ] 2026-06-22 06:29:16
[2026-06-22 06:29:16,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:29:16,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:29:16,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:29:17,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:29:17,047.047 INFO    ] time= 22/06/2026 06:29:17
[2026-06-22 06:29:17,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:29:17,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:29:17,188.188 INFO    ] No existing commands found in stream
[2026-06-22 06:29:22,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:29:22,222.222 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-22 06:29:24,722.722 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:29:24,726.726 INFO    ] Checking for system updates...
[2026-06-22 06:29:24,767.767 INFO    ] 200
[2026-06-22 06:29:24,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:29:24,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:29:24,831.831 INFO    ] No update needed
[2026-06-22 06:29:24,834.834 INFO    ] Checking for camera pi updates...
[2026-06-22 06:29:24,870.870 INFO    ] 200
[2026-06-22 06:29:24,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:29:24,915.915 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:29:24,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:29:25,001.001 INFO    ] No camera update needed
[2026-06-22 06:29:25,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:29:25,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:29:25,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:29:25,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:29:27,057.057 INFO    ] ================================================
[2026-06-22 06:29:27,073.073 INFO    ] Launching Daemon at Mon Jun 22 06:29:27 IST 2026
[2026-06-22 06:29:27,084.084 INFO    ] ================================================
[2026-06-22 06:29:27,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:29:27
[2026-06-22 06:29:28,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:29:28,631.631 INFO    ] Initializing speech engine...
[2026-06-22 06:29:28,645.645 INFO    ] 2026-06-22 06:29:28
[2026-06-22 06:29:28,940.940 INFO    ] 2026-06-22 06:29:28
[2026-06-22 06:29:29,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:29:29,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:29:29,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:29:29,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:29:29,399.399 INFO    ] time= 22/06/2026 06:29:29
[2026-06-22 06:29:29,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:29:29,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:29:29,554.554 INFO    ] No existing commands found in stream
[2026-06-22 06:29:34,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:29:34,570.570 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-22 06:29:35,016.016 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:29:35,018.018 INFO    ] Checking for system updates...
[2026-06-22 06:29:35,039.039 INFO    ] 200
[2026-06-22 06:29:35,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:29:35,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:29:35,071.071 INFO    ] No update needed
[2026-06-22 06:29:35,073.073 INFO    ] Checking for camera pi updates...
[2026-06-22 06:29:35,095.095 INFO    ] 200
[2026-06-22 06:29:35,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:29:35,125.125 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:29:35,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:29:35,209.209 INFO    ] No camera update needed
[2026-06-22 06:29:35,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:29:35,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:29:35,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:29:35,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:29:37,264.264 INFO    ] ================================================
[2026-06-22 06:29:37,279.279 INFO    ] Launching Daemon at Mon Jun 22 06:29:37 IST 2026
[2026-06-22 06:29:37,290.290 INFO    ] ================================================
[2026-06-22 06:29:37,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:29:37
[2026-06-22 06:29:38,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:29:38,658.658 INFO    ] Initializing speech engine...
[2026-06-22 06:29:38,669.669 INFO    ] 2026-06-22 06:29:38
[2026-06-22 06:29:38,927.927 INFO    ] 2026-06-22 06:29:38
[2026-06-22 06:29:38,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:29:39,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:29:39,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:29:39,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:29:39,397.397 INFO    ] time= 22/06/2026 06:29:39
[2026-06-22 06:29:39,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:29:39,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:29:39,531.531 INFO    ] No existing commands found in stream
[2026-06-22 06:29:44,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:29:44,546.546 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-22 06:29:47,729.729 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:29:47,731.731 INFO    ] Checking for system updates...
[2026-06-22 06:29:47,752.752 INFO    ] 200
[2026-06-22 06:29:47,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:29:47,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:29:47,788.788 INFO    ] No update needed
[2026-06-22 06:29:47,789.789 INFO    ] Checking for camera pi updates...
[2026-06-22 06:29:47,810.810 INFO    ] 200
[2026-06-22 06:29:47,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:29:47,840.840 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:29:47,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:29:47,927.927 INFO    ] No camera update needed
[2026-06-22 06:29:47,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:29:47,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:29:47,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:29:47,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:29:49,987.987 INFO    ] ================================================
[2026-06-22 06:29:50,002.002 INFO    ] Launching Daemon at Mon Jun 22 06:29:49 IST 2026
[2026-06-22 06:29:50,013.013 INFO    ] ================================================
[2026-06-22 06:29:50,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:29:50
[2026-06-22 06:29:51,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:29:51,352.352 INFO    ] Initializing speech engine...
[2026-06-22 06:29:51,359.359 INFO    ] 2026-06-22 06:29:51
[2026-06-22 06:29:51,617.617 INFO    ] 2026-06-22 06:29:51
[2026-06-22 06:29:51,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:29:53,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:29:53,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:29:53,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:29:53,242.242 INFO    ] time= 22/06/2026 06:29:53
[2026-06-22 06:29:53,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:29:53,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:29:53,299.299 INFO    ] No existing commands found in stream
[2026-06-22 06:29:58,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:29:58,312.312 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-22 06:30:02,855.855 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:30:02,859.859 INFO    ] Checking for system updates...
[2026-06-22 06:30:02,952.952 INFO    ] 200
[2026-06-22 06:30:02,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:30:03,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:30:03,144.144 INFO    ] No update needed
[2026-06-22 06:30:03,173.173 INFO    ] Checking for camera pi updates...
[2026-06-22 06:30:03,249.249 INFO    ] 200
[2026-06-22 06:30:03,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:30:03,339.339 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:30:03,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:30:03,437.437 INFO    ] No camera update needed
[2026-06-22 06:30:03,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:30:03,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:30:03,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:30:03,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:30:05,500.500 INFO    ] ================================================
[2026-06-22 06:30:05,516.516 INFO    ] Launching Daemon at Mon Jun 22 06:30:05 IST 2026
[2026-06-22 06:30:05,527.527 INFO    ] ================================================
[2026-06-22 06:30:06,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:30:06
[2026-06-22 06:30:06,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:30:06,935.935 INFO    ] Initializing speech engine...
[2026-06-22 06:30:06,941.941 INFO    ] 2026-06-22 06:30:06
[2026-06-22 06:30:07,244.244 INFO    ] 2026-06-22 06:30:07
[2026-06-22 06:30:07,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:30:07,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:30:07,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:30:07,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:30:07,626.626 INFO    ] time= 22/06/2026 06:30:07
[2026-06-22 06:30:07,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:30:07,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:30:07,752.752 INFO    ] No existing commands found in stream
[2026-06-22 06:30:12,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:30:12,791.791 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-22 06:30:13,505.505 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:30:13,508.508 INFO    ] Checking for system updates...
[2026-06-22 06:30:13,547.547 INFO    ] 200
[2026-06-22 06:30:13,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:30:13,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:30:13,612.612 INFO    ] No update needed
[2026-06-22 06:30:13,615.615 INFO    ] Checking for camera pi updates...
[2026-06-22 06:30:13,649.649 INFO    ] 200
[2026-06-22 06:30:13,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:30:13,697.697 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:30:13,787.787 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:30:13,789.789 INFO    ] No camera update needed
[2026-06-22 06:30:13,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:30:13,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:30:13,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:30:13,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:30:15,846.846 INFO    ] ================================================
[2026-06-22 06:30:15,861.861 INFO    ] Launching Daemon at Mon Jun 22 06:30:15 IST 2026
[2026-06-22 06:30:15,872.872 INFO    ] ================================================
[2026-06-22 06:30:16,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:30:16
[2026-06-22 06:30:17,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:30:17,474.474 INFO    ] Initializing speech engine...
[2026-06-22 06:30:17,482.482 INFO    ] 2026-06-22 06:30:17
[2026-06-22 06:30:17,750.750 INFO    ] 2026-06-22 06:30:17
[2026-06-22 06:30:17,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:30:18,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:30:18,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:30:18,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:30:18,206.206 INFO    ] time= 22/06/2026 06:30:18
[2026-06-22 06:30:18,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:30:18,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:30:18,365.365 INFO    ] No existing commands found in stream
[2026-06-22 06:30:23,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:30:23,395.395 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-22 06:30:24,342.342 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:30:24,345.345 INFO    ] Checking for system updates...
[2026-06-22 06:30:24,383.383 INFO    ] 200
[2026-06-22 06:30:24,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:30:24,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:30:24,446.446 INFO    ] No update needed
[2026-06-22 06:30:24,449.449 INFO    ] Checking for camera pi updates...
[2026-06-22 06:30:24,488.488 INFO    ] 200
[2026-06-22 06:30:24,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:30:24,537.537 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:30:24,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:30:24,624.624 INFO    ] No camera update needed
[2026-06-22 06:30:24,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:30:24,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:30:24,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:30:24,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:30:26,680.680 INFO    ] ================================================
[2026-06-22 06:30:26,695.695 INFO    ] Launching Daemon at Mon Jun 22 06:30:26 IST 2026
[2026-06-22 06:30:26,706.706 INFO    ] ================================================
[2026-06-22 06:30:27,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:30:27
[2026-06-22 06:30:27,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:30:28,052.052 INFO    ] Initializing speech engine...
[2026-06-22 06:30:28,060.060 INFO    ] 2026-06-22 06:30:28
[2026-06-22 06:30:28,311.311 INFO    ] 2026-06-22 06:30:28
[2026-06-22 06:30:28,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:30:28,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:30:28,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:30:28,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:30:28,689.689 INFO    ] time= 22/06/2026 06:30:28
[2026-06-22 06:30:28,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:30:28,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:30:28,769.769 INFO    ] No existing commands found in stream
[2026-06-22 06:30:33,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:30:33,798.798 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-22 06:30:34,325.325 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:30:34,328.328 INFO    ] Checking for system updates...
[2026-06-22 06:30:34,364.364 INFO    ] 200
[2026-06-22 06:30:34,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:30:34,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:30:34,421.421 INFO    ] No update needed
[2026-06-22 06:30:34,423.423 INFO    ] Checking for camera pi updates...
[2026-06-22 06:30:34,458.458 INFO    ] 200
[2026-06-22 06:30:34,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:30:34,505.505 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:30:34,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:30:34,583.583 INFO    ] No camera update needed
[2026-06-22 06:30:34,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:30:34,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:30:34,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:30:34,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:30:36,639.639 INFO    ] ================================================
[2026-06-22 06:30:36,655.655 INFO    ] Launching Daemon at Mon Jun 22 06:30:36 IST 2026
[2026-06-22 06:30:36,666.666 INFO    ] ================================================
[2026-06-22 06:30:37,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:30:37
[2026-06-22 06:30:37,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:30:38,161.161 INFO    ] Initializing speech engine...
[2026-06-22 06:30:38,174.174 INFO    ] 2026-06-22 06:30:38
[2026-06-22 06:30:38,458.458 INFO    ] 2026-06-22 06:30:38
[2026-06-22 06:30:38,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:30:38,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:30:38,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:30:38,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:30:38,935.935 INFO    ] time= 22/06/2026 06:30:38
[2026-06-22 06:30:39,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:30:39,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:30:39,130.130 INFO    ] No existing commands found in stream
[2026-06-22 06:30:44,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:30:44,151.151 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-22 06:30:45,123.123 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:30:45,126.126 INFO    ] Checking for system updates...
[2026-06-22 06:30:45,162.162 INFO    ] 200
[2026-06-22 06:30:45,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:30:45,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:30:45,226.226 INFO    ] No update needed
[2026-06-22 06:30:45,229.229 INFO    ] Checking for camera pi updates...
[2026-06-22 06:30:45,267.267 INFO    ] 200
[2026-06-22 06:30:45,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:30:45,309.309 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:30:45,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:30:45,401.401 INFO    ] No camera update needed
[2026-06-22 06:30:45,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:30:45,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:30:45,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:30:45,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:30:47,457.457 INFO    ] ================================================
[2026-06-22 06:30:47,473.473 INFO    ] Launching Daemon at Mon Jun 22 06:30:47 IST 2026
[2026-06-22 06:30:47,484.484 INFO    ] ================================================
[2026-06-22 06:30:48,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:30:48
[2026-06-22 06:30:48,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:30:48,796.796 INFO    ] Initializing speech engine...
[2026-06-22 06:30:48,803.803 INFO    ] 2026-06-22 06:30:48
[2026-06-22 06:30:49,078.078 INFO    ] 2026-06-22 06:30:49
[2026-06-22 06:30:49,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:30:49,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:30:49,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:30:49,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:30:49,452.452 INFO    ] time= 22/06/2026 06:30:49
[2026-06-22 06:30:49,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:30:49,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:30:49,654.654 INFO    ] No existing commands found in stream
[2026-06-22 06:30:54,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:30:54,668.668 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-22 06:30:58,306.306 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:30:58,309.309 INFO    ] Checking for system updates...
[2026-06-22 06:30:58,345.345 INFO    ] 200
[2026-06-22 06:30:58,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:30:58,401.401 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:30:58,404.404 INFO    ] No update needed
[2026-06-22 06:30:58,406.406 INFO    ] Checking for camera pi updates...
[2026-06-22 06:30:58,440.440 INFO    ] 200
[2026-06-22 06:30:58,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:30:58,482.482 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:30:58,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:30:58,570.570 INFO    ] No camera update needed
[2026-06-22 06:30:58,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:30:58,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:30:58,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:30:58,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:31:00,626.626 INFO    ] ================================================
[2026-06-22 06:31:00,641.641 INFO    ] Launching Daemon at Mon Jun 22 06:31:00 IST 2026
[2026-06-22 06:31:00,651.651 INFO    ] ================================================
[2026-06-22 06:31:01,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:31:01
[2026-06-22 06:31:02,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:31:02,431.431 INFO    ] Initializing speech engine...
[2026-06-22 06:31:02,440.440 INFO    ] 2026-06-22 06:31:02
[2026-06-22 06:31:02,735.735 INFO    ] 2026-06-22 06:31:02
[2026-06-22 06:31:02,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:31:02,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:31:03,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:31:03,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:31:03,192.192 INFO    ] time= 22/06/2026 06:31:03
[2026-06-22 06:31:03,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:31:03,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:31:03,323.323 INFO    ] No existing commands found in stream
[2026-06-22 06:31:08,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:31:08,348.348 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-22 06:31:11,172.172 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:31:11,174.174 INFO    ] Checking for system updates...
[2026-06-22 06:31:11,211.211 INFO    ] 200
[2026-06-22 06:31:11,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:31:11,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:31:11,269.269 INFO    ] No update needed
[2026-06-22 06:31:11,271.271 INFO    ] Checking for camera pi updates...
[2026-06-22 06:31:11,311.311 INFO    ] 200
[2026-06-22 06:31:11,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:31:11,355.355 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:31:11,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:31:11,442.442 INFO    ] No camera update needed
[2026-06-22 06:31:11,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:31:11,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:31:11,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:31:11,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:31:13,499.499 INFO    ] ================================================
[2026-06-22 06:31:13,515.515 INFO    ] Launching Daemon at Mon Jun 22 06:31:13 IST 2026
[2026-06-22 06:31:13,525.525 INFO    ] ================================================
[2026-06-22 06:31:14,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:31:14
[2026-06-22 06:31:14,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:31:15,004.004 INFO    ] Initializing speech engine...
[2026-06-22 06:31:15,009.009 INFO    ] 2026-06-22 06:31:15
[2026-06-22 06:31:15,273.273 INFO    ] 2026-06-22 06:31:15
[2026-06-22 06:31:15,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:31:15,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:31:15,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:31:15,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:31:15,767.767 INFO    ] time= 22/06/2026 06:31:15
[2026-06-22 06:31:15,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:31:15,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:31:15,948.948 INFO    ] No existing commands found in stream
[2026-06-22 06:31:20,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:31:20,977.977 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-22 06:31:23,362.362 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:31:23,365.365 INFO    ] Checking for system updates...
[2026-06-22 06:31:23,406.406 INFO    ] 200
[2026-06-22 06:31:23,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:31:23,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:31:23,471.471 INFO    ] No update needed
[2026-06-22 06:31:23,474.474 INFO    ] Checking for camera pi updates...
[2026-06-22 06:31:23,509.509 INFO    ] 200
[2026-06-22 06:31:23,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:31:23,557.557 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:31:23,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:31:23,622.622 INFO    ] No camera update needed
[2026-06-22 06:31:23,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:31:23,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:31:23,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:31:23,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:31:25,678.678 INFO    ] ================================================
[2026-06-22 06:31:25,693.693 INFO    ] Launching Daemon at Mon Jun 22 06:31:25 IST 2026
[2026-06-22 06:31:25,705.705 INFO    ] ================================================
[2026-06-22 06:31:26,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:31:26
[2026-06-22 06:31:26,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:31:27,066.066 INFO    ] Initializing speech engine...
[2026-06-22 06:31:27,072.072 INFO    ] 2026-06-22 06:31:27
[2026-06-22 06:31:27,323.323 INFO    ] 2026-06-22 06:31:27
[2026-06-22 06:31:27,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:31:28,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:31:28,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:31:28,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:31:28,783.783 INFO    ] time= 22/06/2026 06:31:28
[2026-06-22 06:31:28,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:31:28,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:31:28,854.854 INFO    ] No existing commands found in stream
[2026-06-22 06:31:33,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:31:33,871.871 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-22 06:31:35,530.530 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:31:35,532.532 INFO    ] Checking for system updates...
[2026-06-22 06:31:35,553.553 INFO    ] 200
[2026-06-22 06:31:35,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:31:35,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:31:35,589.589 INFO    ] No update needed
[2026-06-22 06:31:35,591.591 INFO    ] Checking for camera pi updates...
[2026-06-22 06:31:35,630.630 INFO    ] 200
[2026-06-22 06:31:35,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:31:35,674.674 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:31:35,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:31:35,782.782 INFO    ] No camera update needed
[2026-06-22 06:31:35,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:31:35,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:31:35,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:31:35,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:31:37,842.842 INFO    ] ================================================
[2026-06-22 06:31:37,857.857 INFO    ] Launching Daemon at Mon Jun 22 06:31:37 IST 2026
[2026-06-22 06:31:37,868.868 INFO    ] ================================================
[2026-06-22 06:31:38,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:31:38
[2026-06-22 06:31:39,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:31:39,407.407 INFO    ] Initializing speech engine...
[2026-06-22 06:31:39,415.415 INFO    ] 2026-06-22 06:31:39
[2026-06-22 06:31:39,708.708 INFO    ] 2026-06-22 06:31:39
[2026-06-22 06:31:39,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:31:39,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:31:39,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:31:40,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:31:40,167.167 INFO    ] time= 22/06/2026 06:31:40
[2026-06-22 06:31:40,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:31:40,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:31:40,323.323 INFO    ] No existing commands found in stream
[2026-06-22 06:31:45,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:31:45,340.340 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-22 06:31:48,166.166 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:31:48,167.167 INFO    ] Checking for system updates...
[2026-06-22 06:31:48,188.188 INFO    ] 200
[2026-06-22 06:31:48,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:31:48,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:31:48,244.244 INFO    ] No update needed
[2026-06-22 06:31:48,247.247 INFO    ] Checking for camera pi updates...
[2026-06-22 06:31:48,282.282 INFO    ] 200
[2026-06-22 06:31:48,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:31:48,328.328 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:31:48,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:31:48,426.426 INFO    ] No camera update needed
[2026-06-22 06:31:48,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:31:48,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:31:48,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:31:48,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:31:50,486.486 INFO    ] ================================================
[2026-06-22 06:31:50,502.502 INFO    ] Launching Daemon at Mon Jun 22 06:31:50 IST 2026
[2026-06-22 06:31:50,512.512 INFO    ] ================================================
[2026-06-22 06:31:51,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:31:51
[2026-06-22 06:31:51,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:31:51,969.969 INFO    ] Initializing speech engine...
[2026-06-22 06:31:51,977.977 INFO    ] 2026-06-22 06:31:51
[2026-06-22 06:31:52,250.250 INFO    ] 2026-06-22 06:31:52
[2026-06-22 06:31:52,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:31:53,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:31:53,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:31:53,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:31:53,578.578 INFO    ] time= 22/06/2026 06:31:53
[2026-06-22 06:31:53,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:31:53,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:31:53,649.649 INFO    ] No existing commands found in stream
[2026-06-22 06:31:58,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:31:58,664.664 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-22 06:32:01,224.224 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:32:01,226.226 INFO    ] Checking for system updates...
[2026-06-22 06:32:01,248.248 INFO    ] 200
[2026-06-22 06:32:01,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:32:01,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:32:01,283.283 INFO    ] No update needed
[2026-06-22 06:32:01,284.284 INFO    ] Checking for camera pi updates...
[2026-06-22 06:32:01,305.305 INFO    ] 200
[2026-06-22 06:32:01,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:32:01,339.339 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:32:01,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:32:01,448.448 INFO    ] No camera update needed
[2026-06-22 06:32:01,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:32:01,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:32:01,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:32:01,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:32:03,515.515 INFO    ] ================================================
[2026-06-22 06:32:03,531.531 INFO    ] Launching Daemon at Mon Jun 22 06:32:03 IST 2026
[2026-06-22 06:32:03,541.541 INFO    ] ================================================
[2026-06-22 06:32:04,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:32:04
[2026-06-22 06:32:04,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:32:04,955.955 INFO    ] Initializing speech engine...
[2026-06-22 06:32:04,961.961 INFO    ] 2026-06-22 06:32:04
[2026-06-22 06:32:05,242.242 INFO    ] 2026-06-22 06:32:05
[2026-06-22 06:32:05,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:32:05,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:32:05,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:32:05,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:32:05,581.581 INFO    ] time= 22/06/2026 06:32:05
[2026-06-22 06:32:05,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:32:05,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:32:05,667.667 INFO    ] No existing commands found in stream
[2026-06-22 06:32:10,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:32:10,701.701 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-22 06:32:12,302.302 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:32:12,303.303 INFO    ] Checking for system updates...
[2026-06-22 06:32:12,331.331 INFO    ] 200
[2026-06-22 06:32:12,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:32:12,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:32:12,389.389 INFO    ] No update needed
[2026-06-22 06:32:12,391.391 INFO    ] Checking for camera pi updates...
[2026-06-22 06:32:12,425.425 INFO    ] 200
[2026-06-22 06:32:12,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:32:12,469.469 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:32:12,554.554 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:32:12,556.556 INFO    ] No camera update needed
[2026-06-22 06:32:12,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:32:12,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:32:12,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:32:12,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:32:14,613.613 INFO    ] ================================================
[2026-06-22 06:32:14,628.628 INFO    ] Launching Daemon at Mon Jun 22 06:32:14 IST 2026
[2026-06-22 06:32:14,639.639 INFO    ] ================================================
[2026-06-22 06:32:15,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:32:15
[2026-06-22 06:32:15,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:32:16,002.002 INFO    ] Initializing speech engine...
[2026-06-22 06:32:16,012.012 INFO    ] 2026-06-22 06:32:16
[2026-06-22 06:32:16,270.270 INFO    ] 2026-06-22 06:32:16
[2026-06-22 06:32:16,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:32:16,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:32:16,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:32:16,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:32:16,769.769 INFO    ] time= 22/06/2026 06:32:16
[2026-06-22 06:32:16,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:32:16,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:32:16,952.952 INFO    ] No existing commands found in stream
[2026-06-22 06:32:21,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:32:21,977.977 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-22 06:32:23,281.281 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:32:23,284.284 INFO    ] Checking for system updates...
[2026-06-22 06:32:23,321.321 INFO    ] 200
[2026-06-22 06:32:23,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:32:23,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:32:23,387.387 INFO    ] No update needed
[2026-06-22 06:32:23,390.390 INFO    ] Checking for camera pi updates...
[2026-06-22 06:32:23,424.424 INFO    ] 200
[2026-06-22 06:32:23,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:32:23,468.468 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:32:23,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:32:23,538.538 INFO    ] No camera update needed
[2026-06-22 06:32:23,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:32:23,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:32:23,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:32:23,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:32:25,596.596 INFO    ] ================================================
[2026-06-22 06:32:25,611.611 INFO    ] Launching Daemon at Mon Jun 22 06:32:25 IST 2026
[2026-06-22 06:32:25,622.622 INFO    ] ================================================
[2026-06-22 06:32:26,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:32:26
[2026-06-22 06:32:26,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:32:27,026.026 INFO    ] Initializing speech engine...
[2026-06-22 06:32:27,032.032 INFO    ] 2026-06-22 06:32:27
[2026-06-22 06:32:27,309.309 INFO    ] 2026-06-22 06:32:27
[2026-06-22 06:32:27,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:32:27,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:32:27,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:32:27,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:32:27,687.687 INFO    ] time= 22/06/2026 06:32:27
[2026-06-22 06:32:27,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:32:27,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:32:27,867.867 INFO    ] No existing commands found in stream
[2026-06-22 06:32:32,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:32:32,898.898 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-22 06:32:36,640.640 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:32:36,643.643 INFO    ] Checking for system updates...
[2026-06-22 06:32:36,679.679 INFO    ] 200
[2026-06-22 06:32:36,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:32:36,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:32:36,738.738 INFO    ] No update needed
[2026-06-22 06:32:36,740.740 INFO    ] Checking for camera pi updates...
[2026-06-22 06:32:36,774.774 INFO    ] 200
[2026-06-22 06:32:36,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:32:36,817.817 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:32:37,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:32:37,011.011 INFO    ] No camera update needed
[2026-06-22 06:32:37,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:32:37,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:32:37,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:32:37,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:32:39,070.070 INFO    ] ================================================
[2026-06-22 06:32:39,086.086 INFO    ] Launching Daemon at Mon Jun 22 06:32:39 IST 2026
[2026-06-22 06:32:39,097.097 INFO    ] ================================================
[2026-06-22 06:32:39,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:32:39
[2026-06-22 06:32:40,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:32:40,530.530 INFO    ] Initializing speech engine...
[2026-06-22 06:32:40,553.553 INFO    ] 2026-06-22 06:32:40
[2026-06-22 06:32:40,810.810 INFO    ] 2026-06-22 06:32:40
[2026-06-22 06:32:40,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:32:41,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:32:41,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:32:41,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:32:41,188.188 INFO    ] time= 22/06/2026 06:32:41
[2026-06-22 06:32:41,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:32:41,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:32:41,378.378 INFO    ] No existing commands found in stream
[2026-06-22 06:32:46,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:32:46,406.406 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-22 06:32:47,535.535 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:32:47,538.538 INFO    ] Checking for system updates...
[2026-06-22 06:32:47,574.574 INFO    ] 200
[2026-06-22 06:32:47,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:32:47,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:32:47,640.640 INFO    ] No update needed
[2026-06-22 06:32:47,643.643 INFO    ] Checking for camera pi updates...
[2026-06-22 06:32:47,682.682 INFO    ] 200
[2026-06-22 06:32:47,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:32:47,742.742 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:32:47,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:32:47,798.798 INFO    ] No camera update needed
[2026-06-22 06:32:47,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:32:47,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:32:47,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:32:47,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:32:49,856.856 INFO    ] ================================================
[2026-06-22 06:32:49,871.871 INFO    ] Launching Daemon at Mon Jun 22 06:32:49 IST 2026
[2026-06-22 06:32:49,882.882 INFO    ] ================================================
[2026-06-22 06:32:50,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:32:50
[2026-06-22 06:32:50,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:32:51,251.251 INFO    ] Initializing speech engine...
[2026-06-22 06:32:51,260.260 INFO    ] 2026-06-22 06:32:51
[2026-06-22 06:32:51,509.509 INFO    ] 2026-06-22 06:32:51
[2026-06-22 06:32:51,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:32:52,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:32:52,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:32:52,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:32:52,947.947 INFO    ] time= 22/06/2026 06:32:52
[2026-06-22 06:32:52,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:32:52,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:32:53,021.021 INFO    ] No existing commands found in stream
[2026-06-22 06:32:58,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:32:58,036.036 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-22 06:33:02,260.260 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:33:02,263.263 INFO    ] Checking for system updates...
[2026-06-22 06:33:02,307.307 INFO    ] 200
[2026-06-22 06:33:02,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:33:02,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:33:02,377.377 INFO    ] No update needed
[2026-06-22 06:33:02,381.381 INFO    ] Checking for camera pi updates...
[2026-06-22 06:33:02,421.421 INFO    ] 200
[2026-06-22 06:33:02,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:33:02,473.473 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:33:02,532.532 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:33:02,536.536 INFO    ] No camera update needed
[2026-06-22 06:33:02,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:33:02,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:33:02,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:33:02,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:33:04,604.604 INFO    ] ================================================
[2026-06-22 06:33:04,621.621 INFO    ] Launching Daemon at Mon Jun 22 06:33:04 IST 2026
[2026-06-22 06:33:04,632.632 INFO    ] ================================================
[2026-06-22 06:33:05,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:33:05
[2026-06-22 06:33:05,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:33:06,325.325 INFO    ] Initializing speech engine...
[2026-06-22 06:33:06,330.330 INFO    ] 2026-06-22 06:33:06
[2026-06-22 06:33:06,622.622 INFO    ] 2026-06-22 06:33:06
[2026-06-22 06:33:06,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:33:06,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:33:06,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:33:07,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:33:07,081.081 INFO    ] time= 22/06/2026 06:33:07
[2026-06-22 06:33:07,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:33:07,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:33:07,264.264 INFO    ] No existing commands found in stream
[2026-06-22 06:33:12,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:33:12,299.299 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-22 06:33:14,942.942 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:33:14,946.946 INFO    ] Checking for system updates...
[2026-06-22 06:33:14,983.983 INFO    ] 200
[2026-06-22 06:33:14,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:33:15,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:33:15,044.044 INFO    ] No update needed
[2026-06-22 06:33:15,047.047 INFO    ] Checking for camera pi updates...
[2026-06-22 06:33:15,083.083 INFO    ] 200
[2026-06-22 06:33:15,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:33:15,133.133 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:33:15,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:33:15,222.222 INFO    ] No camera update needed
[2026-06-22 06:33:15,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:33:15,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:33:15,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:33:15,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:33:17,282.282 INFO    ] ================================================
[2026-06-22 06:33:17,297.297 INFO    ] Launching Daemon at Mon Jun 22 06:33:17 IST 2026
[2026-06-22 06:33:17,307.307 INFO    ] ================================================
[2026-06-22 06:33:17,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:33:17
[2026-06-22 06:33:18,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:33:18,742.742 INFO    ] Initializing speech engine...
[2026-06-22 06:33:18,766.766 INFO    ] 2026-06-22 06:33:18
[2026-06-22 06:33:19,025.025 INFO    ] 2026-06-22 06:33:19
[2026-06-22 06:33:19,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:33:19,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:33:19,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:33:19,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:33:19,402.402 INFO    ] time= 22/06/2026 06:33:19
[2026-06-22 06:33:19,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:33:19,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:33:19,561.561 INFO    ] No existing commands found in stream
[2026-06-22 06:33:24,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:33:24,594.594 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-22 06:33:26,171.171 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:33:26,173.173 INFO    ] Checking for system updates...
[2026-06-22 06:33:26,209.209 INFO    ] 200
[2026-06-22 06:33:26,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:33:26,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:33:26,271.271 INFO    ] No update needed
[2026-06-22 06:33:26,273.273 INFO    ] Checking for camera pi updates...
[2026-06-22 06:33:26,310.310 INFO    ] 200
[2026-06-22 06:33:26,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:33:26,358.358 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:33:26,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:33:26,444.444 INFO    ] No camera update needed
[2026-06-22 06:33:26,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:33:26,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:33:26,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:33:26,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:33:28,499.499 INFO    ] ================================================
[2026-06-22 06:33:28,514.514 INFO    ] Launching Daemon at Mon Jun 22 06:33:28 IST 2026
[2026-06-22 06:33:28,525.525 INFO    ] ================================================
[2026-06-22 06:33:29,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:33:29
[2026-06-22 06:33:29,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:33:29,865.865 INFO    ] Initializing speech engine...
[2026-06-22 06:33:29,880.880 INFO    ] 2026-06-22 06:33:29
[2026-06-22 06:33:30,146.146 INFO    ] 2026-06-22 06:33:30
[2026-06-22 06:33:30,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:33:30,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:33:30,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:33:31,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:33:31,622.622 INFO    ] time= 22/06/2026 06:33:31
[2026-06-22 06:33:31,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:33:31,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:33:31,702.702 INFO    ] No existing commands found in stream
[2026-06-22 06:33:36,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:33:36,717.717 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-22 06:33:40,545.545 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:33:40,546.546 INFO    ] Checking for system updates...
[2026-06-22 06:33:40,567.567 INFO    ] 200
[2026-06-22 06:33:40,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:33:40,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:33:40,603.603 INFO    ] No update needed
[2026-06-22 06:33:40,606.606 INFO    ] Checking for camera pi updates...
[2026-06-22 06:33:40,639.639 INFO    ] 200
[2026-06-22 06:33:40,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:33:40,683.683 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:33:40,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:33:40,768.768 INFO    ] No camera update needed
[2026-06-22 06:33:40,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:33:40,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:33:40,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:33:40,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:33:42,826.826 INFO    ] ================================================
[2026-06-22 06:33:42,841.841 INFO    ] Launching Daemon at Mon Jun 22 06:33:42 IST 2026
[2026-06-22 06:33:42,851.851 INFO    ] ================================================
[2026-06-22 06:33:43,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:33:43
[2026-06-22 06:33:44,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:33:44,360.360 INFO    ] Initializing speech engine...
[2026-06-22 06:33:44,372.372 INFO    ] 2026-06-22 06:33:44
[2026-06-22 06:33:44,649.649 INFO    ] 2026-06-22 06:33:44
[2026-06-22 06:33:44,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:33:44,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:33:44,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:33:45,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:33:45,081.081 INFO    ] time= 22/06/2026 06:33:45
[2026-06-22 06:33:45,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:33:45,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:33:45,248.248 INFO    ] No existing commands found in stream
[2026-06-22 06:33:50,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:33:50,261.261 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-22 06:33:53,375.375 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:33:53,378.378 INFO    ] Checking for system updates...
[2026-06-22 06:33:53,417.417 INFO    ] 200
[2026-06-22 06:33:53,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:33:53,485.485 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:33:53,488.488 INFO    ] No update needed
[2026-06-22 06:33:53,491.491 INFO    ] Checking for camera pi updates...
[2026-06-22 06:33:53,534.534 INFO    ] 200
[2026-06-22 06:33:53,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:33:53,581.581 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:33:53,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:33:53,667.667 INFO    ] No camera update needed
[2026-06-22 06:33:53,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:33:53,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:33:53,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:33:53,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:33:55,731.731 INFO    ] ================================================
[2026-06-22 06:33:55,747.747 INFO    ] Launching Daemon at Mon Jun 22 06:33:55 IST 2026
[2026-06-22 06:33:55,758.758 INFO    ] ================================================
[2026-06-22 06:33:56,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:33:56
[2026-06-22 06:33:57,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:33:57,273.273 INFO    ] Initializing speech engine...
[2026-06-22 06:33:57,282.282 INFO    ] 2026-06-22 06:33:57
[2026-06-22 06:33:57,538.538 INFO    ] 2026-06-22 06:33:57
[2026-06-22 06:33:57,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:33:57,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:33:57,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:33:57,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:33:57,913.913 INFO    ] time= 22/06/2026 06:33:57
[2026-06-22 06:33:57,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:33:57,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:33:58,080.080 INFO    ] No existing commands found in stream
[2026-06-22 06:34:03,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:34:03,121.121 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-22 06:34:06,590.590 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:34:06,593.593 INFO    ] Checking for system updates...
[2026-06-22 06:34:06,632.632 INFO    ] 200
[2026-06-22 06:34:06,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:34:06,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:34:06,689.689 INFO    ] No update needed
[2026-06-22 06:34:06,691.691 INFO    ] Checking for camera pi updates...
[2026-06-22 06:34:06,724.724 INFO    ] 200
[2026-06-22 06:34:06,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:34:06,767.767 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:34:06,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:34:06,849.849 INFO    ] No camera update needed
[2026-06-22 06:34:06,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:34:06,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:34:06,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:34:06,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:34:08,904.904 INFO    ] ================================================
[2026-06-22 06:34:08,919.919 INFO    ] Launching Daemon at Mon Jun 22 06:34:08 IST 2026
[2026-06-22 06:34:08,934.934 INFO    ] ================================================
[2026-06-22 06:34:09,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:34:09
[2026-06-22 06:34:10,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:34:10,279.279 INFO    ] Initializing speech engine...
[2026-06-22 06:34:10,288.288 INFO    ] 2026-06-22 06:34:10
[2026-06-22 06:34:10,539.539 INFO    ] 2026-06-22 06:34:10
[2026-06-22 06:34:10,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:34:10,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:34:10,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:34:10,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:34:10,910.910 INFO    ] time= 22/06/2026 06:34:10
[2026-06-22 06:34:10,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:34:10,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:34:11,077.077 INFO    ] No existing commands found in stream
[2026-06-22 06:34:16,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:34:16,110.110 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-22 06:34:17,480.480 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:34:17,483.483 INFO    ] Checking for system updates...
[2026-06-22 06:34:17,519.519 INFO    ] 200
[2026-06-22 06:34:17,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:34:17,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:34:17,577.577 INFO    ] No update needed
[2026-06-22 06:34:17,580.580 INFO    ] Checking for camera pi updates...
[2026-06-22 06:34:17,613.613 INFO    ] 200
[2026-06-22 06:34:17,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:34:17,656.656 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:34:17,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:34:17,759.759 INFO    ] No camera update needed
[2026-06-22 06:34:17,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:34:17,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:34:17,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:34:17,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:34:19,817.817 INFO    ] ================================================
[2026-06-22 06:34:19,832.832 INFO    ] Launching Daemon at Mon Jun 22 06:34:19 IST 2026
[2026-06-22 06:34:19,843.843 INFO    ] ================================================
[2026-06-22 06:34:20,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:34:20
[2026-06-22 06:34:20,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:34:21,194.194 INFO    ] Initializing speech engine...
[2026-06-22 06:34:21,199.199 INFO    ] 2026-06-22 06:34:21
[2026-06-22 06:34:21,497.497 INFO    ] 2026-06-22 06:34:21
[2026-06-22 06:34:21,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:34:23,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:34:23,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:34:23,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:34:23,131.131 INFO    ] time= 22/06/2026 06:34:23
[2026-06-22 06:34:23,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:34:23,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:34:23,186.186 INFO    ] No existing commands found in stream
[2026-06-22 06:34:28,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:34:28,206.206 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-22 06:34:28,676.676 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:34:28,679.679 INFO    ] Checking for system updates...
[2026-06-22 06:34:28,716.716 INFO    ] 200
[2026-06-22 06:34:28,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:34:28,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:34:28,776.776 INFO    ] No update needed
[2026-06-22 06:34:28,778.778 INFO    ] Checking for camera pi updates...
[2026-06-22 06:34:28,816.816 INFO    ] 200
[2026-06-22 06:34:28,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:34:28,862.862 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:34:28,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:34:28,933.933 INFO    ] No camera update needed
[2026-06-22 06:34:28,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:34:28,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:34:28,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:34:28,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:34:30,991.991 INFO    ] ================================================
[2026-06-22 06:34:31,006.006 INFO    ] Launching Daemon at Mon Jun 22 06:34:31 IST 2026
[2026-06-22 06:34:31,017.017 INFO    ] ================================================
[2026-06-22 06:34:31,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:34:31
[2026-06-22 06:34:32,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:34:32,532.532 INFO    ] Initializing speech engine...
[2026-06-22 06:34:32,538.538 INFO    ] 2026-06-22 06:34:32
[2026-06-22 06:34:32,838.838 INFO    ] 2026-06-22 06:34:32
[2026-06-22 06:34:32,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:34:33,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:34:33,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:34:33,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:34:33,204.204 INFO    ] time= 22/06/2026 06:34:33
[2026-06-22 06:34:33,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:34:33,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:34:33,319.319 INFO    ] No existing commands found in stream
[2026-06-22 06:34:38,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:34:38,333.333 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-22 06:34:41,980.980 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:34:41,982.982 INFO    ] Checking for system updates...
[2026-06-22 06:34:42,019.019 INFO    ] 200
[2026-06-22 06:34:42,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:34:42,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:34:42,078.078 INFO    ] No update needed
[2026-06-22 06:34:42,080.080 INFO    ] Checking for camera pi updates...
[2026-06-22 06:34:42,115.115 INFO    ] 200
[2026-06-22 06:34:42,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:34:42,159.159 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:34:42,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:34:42,244.244 INFO    ] No camera update needed
[2026-06-22 06:34:42,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:34:42,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:34:42,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:34:42,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:34:44,302.302 INFO    ] ================================================
[2026-06-22 06:34:44,317.317 INFO    ] Launching Daemon at Mon Jun 22 06:34:44 IST 2026
[2026-06-22 06:34:44,328.328 INFO    ] ================================================
[2026-06-22 06:34:44,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:34:44
[2026-06-22 06:34:45,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:34:45,738.738 INFO    ] Initializing speech engine...
[2026-06-22 06:34:45,745.745 INFO    ] 2026-06-22 06:34:45
[2026-06-22 06:34:46,035.035 INFO    ] 2026-06-22 06:34:46
[2026-06-22 06:34:46,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:34:46,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:34:46,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:34:46,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:34:46,405.405 INFO    ] time= 22/06/2026 06:34:46
[2026-06-22 06:34:46,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:34:46,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:34:46,463.463 INFO    ] No existing commands found in stream
[2026-06-22 06:34:51,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:34:51,477.477 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-22 06:34:54,040.040 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:34:54,043.043 INFO    ] Checking for system updates...
[2026-06-22 06:34:54,079.079 INFO    ] 200
[2026-06-22 06:34:54,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:34:54,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:34:54,136.136 INFO    ] No update needed
[2026-06-22 06:34:54,138.138 INFO    ] Checking for camera pi updates...
[2026-06-22 06:34:54,172.172 INFO    ] 200
[2026-06-22 06:34:54,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:34:54,215.215 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:34:54,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:34:54,368.368 INFO    ] No camera update needed
[2026-06-22 06:34:54,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:34:54,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:34:54,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:34:54,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:34:56,424.424 INFO    ] ================================================
[2026-06-22 06:34:56,439.439 INFO    ] Launching Daemon at Mon Jun 22 06:34:56 IST 2026
[2026-06-22 06:34:56,450.450 INFO    ] ================================================
[2026-06-22 06:34:57,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:34:57
[2026-06-22 06:34:57,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:34:57,884.884 INFO    ] Initializing speech engine...
[2026-06-22 06:34:57,900.900 INFO    ] 2026-06-22 06:34:57
[2026-06-22 06:34:58,184.184 INFO    ] 2026-06-22 06:34:58
[2026-06-22 06:34:58,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:34:58,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:34:58,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:34:58,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:34:58,516.516 INFO    ] time= 22/06/2026 06:34:58
[2026-06-22 06:34:58,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:34:58,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:34:58,591.591 INFO    ] No existing commands found in stream
[2026-06-22 06:35:03,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:35:03,638.638 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-22 06:35:06,277.277 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:35:06,280.280 INFO    ] Checking for system updates...
[2026-06-22 06:35:06,315.315 INFO    ] 200
[2026-06-22 06:35:06,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:35:06,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:35:06,372.372 INFO    ] No update needed
[2026-06-22 06:35:06,374.374 INFO    ] Checking for camera pi updates...
[2026-06-22 06:35:06,408.408 INFO    ] 200
[2026-06-22 06:35:06,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:35:06,451.451 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:35:06,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:35:06,536.536 INFO    ] No camera update needed
[2026-06-22 06:35:06,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:35:06,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:35:06,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:35:06,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:35:08,593.593 INFO    ] ================================================
[2026-06-22 06:35:08,608.608 INFO    ] Launching Daemon at Mon Jun 22 06:35:08 IST 2026
[2026-06-22 06:35:08,619.619 INFO    ] ================================================
[2026-06-22 06:35:09,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:35:09
[2026-06-22 06:35:09,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:35:09,989.989 INFO    ] Initializing speech engine...
[2026-06-22 06:35:09,998.998 INFO    ] 2026-06-22 06:35:09
[2026-06-22 06:35:10,257.257 INFO    ] 2026-06-22 06:35:10
[2026-06-22 06:35:10,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:35:10,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:35:10,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:35:10,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:35:10,684.684 INFO    ] time= 22/06/2026 06:35:10
[2026-06-22 06:35:10,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:35:10,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:35:10,860.860 INFO    ] No existing commands found in stream
[2026-06-22 06:35:15,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:35:15,875.875 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-22 06:35:17,611.611 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:35:17,613.613 INFO    ] Checking for system updates...
[2026-06-22 06:35:17,650.650 INFO    ] 200
[2026-06-22 06:35:17,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:35:17,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:35:17,707.707 INFO    ] No update needed
[2026-06-22 06:35:17,710.710 INFO    ] Checking for camera pi updates...
[2026-06-22 06:35:17,743.743 INFO    ] 200
[2026-06-22 06:35:17,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:35:17,791.791 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:35:17,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:35:17,892.892 INFO    ] No camera update needed
[2026-06-22 06:35:17,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:35:17,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:35:17,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:35:17,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:35:19,950.950 INFO    ] ================================================
[2026-06-22 06:35:19,965.965 INFO    ] Launching Daemon at Mon Jun 22 06:35:19 IST 2026
[2026-06-22 06:35:19,976.976 INFO    ] ================================================
[2026-06-22 06:35:20,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:35:20
[2026-06-22 06:35:21,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:35:21,484.484 INFO    ] Initializing speech engine...
[2026-06-22 06:35:21,493.493 INFO    ] 2026-06-22 06:35:21
[2026-06-22 06:35:21,781.781 INFO    ] 2026-06-22 06:35:21
[2026-06-22 06:35:21,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:35:23,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:35:23,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:35:23,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:35:23,455.455 INFO    ] time= 22/06/2026 06:35:23
[2026-06-22 06:35:23,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:35:23,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:35:23,568.568 INFO    ] No existing commands found in stream
[2026-06-22 06:35:28,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:35:28,582.582 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-22 06:35:30,897.897 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:35:30,899.899 INFO    ] Checking for system updates...
[2026-06-22 06:35:30,919.919 INFO    ] 200
[2026-06-22 06:35:30,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:35:30,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:35:30,951.951 INFO    ] No update needed
[2026-06-22 06:35:30,953.953 INFO    ] Checking for camera pi updates...
[2026-06-22 06:35:30,972.972 INFO    ] 200
[2026-06-22 06:35:30,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:35:31,007.007 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:35:31,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:35:31,095.095 INFO    ] No camera update needed
[2026-06-22 06:35:31,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:35:31,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:35:31,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:35:31,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:35:33,157.157 INFO    ] ================================================
[2026-06-22 06:35:33,172.172 INFO    ] Launching Daemon at Mon Jun 22 06:35:33 IST 2026
[2026-06-22 06:35:33,184.184 INFO    ] ================================================
[2026-06-22 06:35:33,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:35:33
[2026-06-22 06:35:34,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:35:34,657.657 INFO    ] Initializing speech engine...
[2026-06-22 06:35:34,667.667 INFO    ] 2026-06-22 06:35:34
[2026-06-22 06:35:34,916.916 INFO    ] 2026-06-22 06:35:34
[2026-06-22 06:35:34,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:35:35,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:35:35,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:35:35,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:35:35,257.257 INFO    ] time= 22/06/2026 06:35:35
[2026-06-22 06:35:35,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:35:35,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:35:35,370.370 INFO    ] No existing commands found in stream
[2026-06-22 06:35:40,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:35:40,385.385 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-22 06:35:44,208.208 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:35:44,209.209 INFO    ] Checking for system updates...
[2026-06-22 06:35:44,230.230 INFO    ] 200
[2026-06-22 06:35:44,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:35:44,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:35:44,263.263 INFO    ] No update needed
[2026-06-22 06:35:44,264.264 INFO    ] Checking for camera pi updates...
[2026-06-22 06:35:44,284.284 INFO    ] 200
[2026-06-22 06:35:44,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:35:44,316.316 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:35:44,388.388 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:35:44,390.390 INFO    ] No camera update needed
[2026-06-22 06:35:44,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:35:44,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:35:44,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:35:44,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:35:46,450.450 INFO    ] ================================================
[2026-06-22 06:35:46,465.465 INFO    ] Launching Daemon at Mon Jun 22 06:35:46 IST 2026
[2026-06-22 06:35:46,476.476 INFO    ] ================================================
[2026-06-22 06:35:47,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:35:47
[2026-06-22 06:35:47,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:35:47,851.851 INFO    ] Initializing speech engine...
[2026-06-22 06:35:47,860.860 INFO    ] 2026-06-22 06:35:47
[2026-06-22 06:35:48,119.119 INFO    ] 2026-06-22 06:35:48
[2026-06-22 06:35:48,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:35:48,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:35:48,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:35:48,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:35:48,477.477 INFO    ] time= 22/06/2026 06:35:48
[2026-06-22 06:35:48,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:35:48,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:35:48,647.647 INFO    ] No existing commands found in stream
[2026-06-22 06:35:53,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:35:53,676.676 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-22 06:35:54,838.838 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:35:54,841.841 INFO    ] Checking for system updates...
[2026-06-22 06:35:54,877.877 INFO    ] 200
[2026-06-22 06:35:54,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:35:54,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:35:54,934.934 INFO    ] No update needed
[2026-06-22 06:35:54,937.937 INFO    ] Checking for camera pi updates...
[2026-06-22 06:35:54,974.974 INFO    ] 200
[2026-06-22 06:35:54,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:35:55,018.018 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:35:55,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:35:55,101.101 INFO    ] No camera update needed
[2026-06-22 06:35:55,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:35:55,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:35:55,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:35:55,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:35:57,158.158 INFO    ] ================================================
[2026-06-22 06:35:57,176.176 INFO    ] Launching Daemon at Mon Jun 22 06:35:57 IST 2026
[2026-06-22 06:35:57,188.188 INFO    ] ================================================
[2026-06-22 06:35:57,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:35:57
[2026-06-22 06:35:58,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:35:58,557.557 INFO    ] Initializing speech engine...
[2026-06-22 06:35:58,563.563 INFO    ] 2026-06-22 06:35:58
[2026-06-22 06:35:58,815.815 INFO    ] 2026-06-22 06:35:58
[2026-06-22 06:35:58,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:35:59,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:35:59,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:35:59,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:35:59,270.270 INFO    ] time= 22/06/2026 06:35:59
[2026-06-22 06:35:59,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:35:59,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:35:59,429.429 INFO    ] No existing commands found in stream
[2026-06-22 06:36:04,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:36:04,443.443 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-22 06:36:05,737.737 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:36:05,740.740 INFO    ] Checking for system updates...
[2026-06-22 06:36:05,776.776 INFO    ] 200
[2026-06-22 06:36:05,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:36:05,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:36:05,839.839 INFO    ] No update needed
[2026-06-22 06:36:05,842.842 INFO    ] Checking for camera pi updates...
[2026-06-22 06:36:05,883.883 INFO    ] 200
[2026-06-22 06:36:05,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:36:05,935.935 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:36:06,036.036 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:36:06,038.038 INFO    ] No camera update needed
[2026-06-22 06:36:06,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:36:06,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:36:06,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:36:06,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:36:08,093.093 INFO    ] ================================================
[2026-06-22 06:36:08,108.108 INFO    ] Launching Daemon at Mon Jun 22 06:36:08 IST 2026
[2026-06-22 06:36:08,119.119 INFO    ] ================================================
[2026-06-22 06:36:08,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:36:08
[2026-06-22 06:36:09,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:36:09,583.583 INFO    ] Initializing speech engine...
[2026-06-22 06:36:09,592.592 INFO    ] 2026-06-22 06:36:09
[2026-06-22 06:36:09,852.852 INFO    ] 2026-06-22 06:36:09
[2026-06-22 06:36:09,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:36:10,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:36:10,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:36:10,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:36:10,319.319 INFO    ] time= 22/06/2026 06:36:10
[2026-06-22 06:36:10,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:36:10,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:36:10,464.464 INFO    ] No existing commands found in stream
[2026-06-22 06:36:15,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:36:15,479.479 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-22 06:36:18,139.139 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:36:18,141.141 INFO    ] Checking for system updates...
[2026-06-22 06:36:18,182.182 INFO    ] 200
[2026-06-22 06:36:18,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:36:18,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:36:18,240.240 INFO    ] No update needed
[2026-06-22 06:36:18,242.242 INFO    ] Checking for camera pi updates...
[2026-06-22 06:36:18,276.276 INFO    ] 200
[2026-06-22 06:36:18,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:36:18,319.319 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:36:18,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:36:18,404.404 INFO    ] No camera update needed
[2026-06-22 06:36:18,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:36:18,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:36:18,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:36:18,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:36:20,460.460 INFO    ] ================================================
[2026-06-22 06:36:20,477.477 INFO    ] Launching Daemon at Mon Jun 22 06:36:20 IST 2026
[2026-06-22 06:36:20,488.488 INFO    ] ================================================
[2026-06-22 06:36:21,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:36:21
[2026-06-22 06:36:21,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:36:21,954.954 INFO    ] Initializing speech engine...
[2026-06-22 06:36:21,960.960 INFO    ] 2026-06-22 06:36:21
[2026-06-22 06:36:22,222.222 INFO    ] 2026-06-22 06:36:22
[2026-06-22 06:36:22,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:36:23,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:36:23,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:36:23,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:36:23,323.323 INFO    ] time= 22/06/2026 06:36:23
[2026-06-22 06:36:23,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:36:23,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:36:23,429.429 INFO    ] No existing commands found in stream
[2026-06-22 06:36:28,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:36:28,443.443 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-22 06:36:29,391.391 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:36:29,392.392 INFO    ] Checking for system updates...
[2026-06-22 06:36:29,419.419 INFO    ] 200
[2026-06-22 06:36:29,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:36:29,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:36:29,484.484 INFO    ] No update needed
[2026-06-22 06:36:29,487.487 INFO    ] Checking for camera pi updates...
[2026-06-22 06:36:29,520.520 INFO    ] 200
[2026-06-22 06:36:29,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:36:29,563.563 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:36:29,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:36:29,652.652 INFO    ] No camera update needed
[2026-06-22 06:36:29,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:36:29,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:36:29,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:36:29,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:36:31,711.711 INFO    ] ================================================
[2026-06-22 06:36:31,728.728 INFO    ] Launching Daemon at Mon Jun 22 06:36:31 IST 2026
[2026-06-22 06:36:31,742.742 INFO    ] ================================================
[2026-06-22 06:36:32,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:36:32
[2026-06-22 06:36:33,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:36:33,335.335 INFO    ] Initializing speech engine...
[2026-06-22 06:36:33,345.345 INFO    ] 2026-06-22 06:36:33
[2026-06-22 06:36:33,597.597 INFO    ] 2026-06-22 06:36:33
[2026-06-22 06:36:33,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:36:33,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:36:33,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:36:33,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:36:33,938.938 INFO    ] time= 22/06/2026 06:36:33
[2026-06-22 06:36:33,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:36:33,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:36:34,053.053 INFO    ] No existing commands found in stream
[2026-06-22 06:36:39,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:36:39,071.071 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-22 06:36:41,619.619 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:36:41,621.621 INFO    ] Checking for system updates...
[2026-06-22 06:36:41,644.644 INFO    ] 200
[2026-06-22 06:36:41,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:36:41,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:36:41,677.677 INFO    ] No update needed
[2026-06-22 06:36:41,679.679 INFO    ] Checking for camera pi updates...
[2026-06-22 06:36:41,698.698 INFO    ] 200
[2026-06-22 06:36:41,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:36:41,727.727 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:36:41,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:36:41,830.830 INFO    ] No camera update needed
[2026-06-22 06:36:41,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:36:41,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:36:41,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:36:41,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:36:43,891.891 INFO    ] ================================================
[2026-06-22 06:36:43,907.907 INFO    ] Launching Daemon at Mon Jun 22 06:36:43 IST 2026
[2026-06-22 06:36:43,917.917 INFO    ] ================================================
[2026-06-22 06:36:44,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:36:44
[2026-06-22 06:36:45,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:36:45,378.378 INFO    ] Initializing speech engine...
[2026-06-22 06:36:45,383.383 INFO    ] 2026-06-22 06:36:45
[2026-06-22 06:36:45,638.638 INFO    ] 2026-06-22 06:36:45
[2026-06-22 06:36:45,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:36:45,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:36:45,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:36:46,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:36:46,110.110 INFO    ] time= 22/06/2026 06:36:46
[2026-06-22 06:36:46,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:36:46,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:36:46,250.250 INFO    ] No existing commands found in stream
[2026-06-22 06:36:51,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:36:51,265.265 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-22 06:36:54,859.859 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:36:54,861.861 INFO    ] Checking for system updates...
[2026-06-22 06:36:54,898.898 INFO    ] 200
[2026-06-22 06:36:54,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:36:54,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:36:54,957.957 INFO    ] No update needed
[2026-06-22 06:36:54,959.959 INFO    ] Checking for camera pi updates...
[2026-06-22 06:36:54,993.993 INFO    ] 200
[2026-06-22 06:36:54,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:36:55,037.037 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:36:55,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:36:55,146.146 INFO    ] No camera update needed
[2026-06-22 06:36:55,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:36:55,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:36:55,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:36:55,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:36:57,204.204 INFO    ] ================================================
[2026-06-22 06:36:57,219.219 INFO    ] Launching Daemon at Mon Jun 22 06:36:57 IST 2026
[2026-06-22 06:36:57,230.230 INFO    ] ================================================
[2026-06-22 06:36:57,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:36:57
[2026-06-22 06:36:58,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:36:58,564.564 INFO    ] Initializing speech engine...
[2026-06-22 06:36:58,575.575 INFO    ] 2026-06-22 06:36:58
[2026-06-22 06:36:58,835.835 INFO    ] 2026-06-22 06:36:58
[2026-06-22 06:36:58,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:36:59,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:36:59,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:36:59,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:36:59,164.164 INFO    ] time= 22/06/2026 06:36:59
[2026-06-22 06:36:59,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:36:59,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:36:59,279.279 INFO    ] No existing commands found in stream
[2026-06-22 06:37:04,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:37:04,297.297 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-22 06:37:07,912.912 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:37:07,915.915 INFO    ] Checking for system updates...
[2026-06-22 06:37:07,950.950 INFO    ] 200
[2026-06-22 06:37:07,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:37:08,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:37:08,015.015 INFO    ] No update needed
[2026-06-22 06:37:08,017.017 INFO    ] Checking for camera pi updates...
[2026-06-22 06:37:08,052.052 INFO    ] 200
[2026-06-22 06:37:08,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:37:08,095.095 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:37:08,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:37:08,193.193 INFO    ] No camera update needed
[2026-06-22 06:37:08,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:37:08,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:37:08,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:37:08,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:37:10,249.249 INFO    ] ================================================
[2026-06-22 06:37:10,264.264 INFO    ] Launching Daemon at Mon Jun 22 06:37:10 IST 2026
[2026-06-22 06:37:10,275.275 INFO    ] ================================================
[2026-06-22 06:37:10,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:37:10
[2026-06-22 06:37:11,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:37:11,676.676 INFO    ] Initializing speech engine...
[2026-06-22 06:37:11,682.682 INFO    ] 2026-06-22 06:37:11
[2026-06-22 06:37:11,981.981 INFO    ] 2026-06-22 06:37:11
[2026-06-22 06:37:12,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:37:12,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:37:12,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:37:12,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:37:12,342.342 INFO    ] time= 22/06/2026 06:37:12
[2026-06-22 06:37:12,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:37:12,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:37:12,421.421 INFO    ] No existing commands found in stream
[2026-06-22 06:37:17,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:37:17,435.435 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-22 06:37:18,046.046 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:37:18,049.049 INFO    ] Checking for system updates...
[2026-06-22 06:37:18,084.084 INFO    ] 200
[2026-06-22 06:37:18,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:37:18,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:37:18,142.142 INFO    ] No update needed
[2026-06-22 06:37:18,144.144 INFO    ] Checking for camera pi updates...
[2026-06-22 06:37:18,179.179 INFO    ] 200
[2026-06-22 06:37:18,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:37:18,226.226 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:37:18,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:37:18,330.330 INFO    ] No camera update needed
[2026-06-22 06:37:18,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:37:18,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:37:18,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:37:18,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:37:20,386.386 INFO    ] ================================================
[2026-06-22 06:37:20,400.400 INFO    ] Launching Daemon at Mon Jun 22 06:37:20 IST 2026
[2026-06-22 06:37:20,412.412 INFO    ] ================================================
[2026-06-22 06:37:21,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:37:21
[2026-06-22 06:37:21,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:37:21,954.954 INFO    ] Initializing speech engine...
[2026-06-22 06:37:21,962.962 INFO    ] 2026-06-22 06:37:21
[2026-06-22 06:37:22,241.241 INFO    ] 2026-06-22 06:37:22
[2026-06-22 06:37:22,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:37:23,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:37:23,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:37:23,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:37:23,573.573 INFO    ] time= 22/06/2026 06:37:23
[2026-06-22 06:37:23,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:37:23,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:37:23,634.634 INFO    ] No existing commands found in stream
[2026-06-22 06:37:28,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:37:28,650.650 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-22 06:37:31,035.035 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:37:31,037.037 INFO    ] Checking for system updates...
[2026-06-22 06:37:31,060.060 INFO    ] 200
[2026-06-22 06:37:31,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:37:31,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:37:31,120.120 INFO    ] No update needed
[2026-06-22 06:37:31,123.123 INFO    ] Checking for camera pi updates...
[2026-06-22 06:37:31,157.157 INFO    ] 200
[2026-06-22 06:37:31,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:37:31,207.207 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:37:31,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:37:31,290.290 INFO    ] No camera update needed
[2026-06-22 06:37:31,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:37:31,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:37:31,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:37:31,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:37:33,352.352 INFO    ] ================================================
[2026-06-22 06:37:33,367.367 INFO    ] Launching Daemon at Mon Jun 22 06:37:33 IST 2026
[2026-06-22 06:37:33,377.377 INFO    ] ================================================
[2026-06-22 06:37:33,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:37:33
[2026-06-22 06:37:34,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:37:34,803.803 INFO    ] Initializing speech engine...
[2026-06-22 06:37:34,817.817 INFO    ] 2026-06-22 06:37:34
[2026-06-22 06:37:35,105.105 INFO    ] 2026-06-22 06:37:35
[2026-06-22 06:37:35,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:37:35,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:37:35,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:37:35,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:37:35,651.651 INFO    ] time= 22/06/2026 06:37:35
[2026-06-22 06:37:35,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:37:35,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:37:35,783.783 INFO    ] No existing commands found in stream
[2026-06-22 06:37:40,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:37:40,821.821 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-22 06:37:42,588.588 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:37:42,591.591 INFO    ] Checking for system updates...
[2026-06-22 06:37:42,628.628 INFO    ] 200
[2026-06-22 06:37:42,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:37:42,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:37:42,696.696 INFO    ] No update needed
[2026-06-22 06:37:42,700.700 INFO    ] Checking for camera pi updates...
[2026-06-22 06:37:42,735.735 INFO    ] 200
[2026-06-22 06:37:42,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:37:42,786.786 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:37:42,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:37:42,896.896 INFO    ] No camera update needed
[2026-06-22 06:37:42,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:37:42,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:37:42,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:37:42,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:37:44,953.953 INFO    ] ================================================
[2026-06-22 06:37:44,968.968 INFO    ] Launching Daemon at Mon Jun 22 06:37:44 IST 2026
[2026-06-22 06:37:44,978.978 INFO    ] ================================================
[2026-06-22 06:37:45,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:37:45
[2026-06-22 06:37:46,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:37:46,321.321 INFO    ] Initializing speech engine...
[2026-06-22 06:37:46,344.344 INFO    ] 2026-06-22 06:37:46
[2026-06-22 06:37:46,598.598 INFO    ] 2026-06-22 06:37:46
[2026-06-22 06:37:46,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:37:46,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:37:46,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:37:46,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:37:46,947.947 INFO    ] time= 22/06/2026 06:37:46
[2026-06-22 06:37:46,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:37:46,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:37:47,042.042 INFO    ] No existing commands found in stream
[2026-06-22 06:37:52,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:37:52,058.058 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-22 06:37:56,147.147 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:37:56,149.149 INFO    ] Checking for system updates...
[2026-06-22 06:37:56,185.185 INFO    ] 200
[2026-06-22 06:37:56,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:37:56,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:37:56,243.243 INFO    ] No update needed
[2026-06-22 06:37:56,245.245 INFO    ] Checking for camera pi updates...
[2026-06-22 06:37:56,281.281 INFO    ] 200
[2026-06-22 06:37:56,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:37:56,324.324 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:37:56,408.408 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:37:56,410.410 INFO    ] No camera update needed
[2026-06-22 06:37:56,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:37:56,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:37:56,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:37:56,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:37:58,468.468 INFO    ] ================================================
[2026-06-22 06:37:58,483.483 INFO    ] Launching Daemon at Mon Jun 22 06:37:58 IST 2026
[2026-06-22 06:37:58,494.494 INFO    ] ================================================
[2026-06-22 06:37:59,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:37:59
[2026-06-22 06:37:59,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:37:59,964.964 INFO    ] Initializing speech engine...
[2026-06-22 06:37:59,974.974 INFO    ] 2026-06-22 06:37:59
[2026-06-22 06:38:00,236.236 INFO    ] 2026-06-22 06:38:00
[2026-06-22 06:38:00,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:38:00,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:38:00,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:38:00,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:38:00,696.696 INFO    ] time= 22/06/2026 06:38:00
[2026-06-22 06:38:00,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:38:00,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:38:00,843.843 INFO    ] No existing commands found in stream
[2026-06-22 06:38:05,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:38:05,858.858 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-22 06:38:09,550.550 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:38:09,552.552 INFO    ] Checking for system updates...
[2026-06-22 06:38:09,588.588 INFO    ] 200
[2026-06-22 06:38:09,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:38:09,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:38:09,648.648 INFO    ] No update needed
[2026-06-22 06:38:09,650.650 INFO    ] Checking for camera pi updates...
[2026-06-22 06:38:09,685.685 INFO    ] 200
[2026-06-22 06:38:09,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:38:09,729.729 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:38:09,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:38:09,807.807 INFO    ] No camera update needed
[2026-06-22 06:38:09,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:38:09,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:38:09,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:38:09,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:38:11,864.864 INFO    ] ================================================
[2026-06-22 06:38:11,879.879 INFO    ] Launching Daemon at Mon Jun 22 06:38:11 IST 2026
[2026-06-22 06:38:11,890.890 INFO    ] ================================================
[2026-06-22 06:38:12,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:38:12
[2026-06-22 06:38:12,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:38:13,226.226 INFO    ] Initializing speech engine...
[2026-06-22 06:38:13,236.236 INFO    ] 2026-06-22 06:38:13
[2026-06-22 06:38:13,480.480 INFO    ] 2026-06-22 06:38:13
[2026-06-22 06:38:13,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:38:13,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:38:13,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:38:13,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:38:13,848.848 INFO    ] time= 22/06/2026 06:38:13
[2026-06-22 06:38:13,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:38:13,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:38:14,013.013 INFO    ] No existing commands found in stream
[2026-06-22 06:38:19,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:38:19,051.051 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-22 06:38:23,388.388 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:38:23,390.390 INFO    ] Checking for system updates...
[2026-06-22 06:38:23,426.426 INFO    ] 200
[2026-06-22 06:38:23,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:38:23,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:38:23,483.483 INFO    ] No update needed
[2026-06-22 06:38:23,485.485 INFO    ] Checking for camera pi updates...
[2026-06-22 06:38:23,519.519 INFO    ] 200
[2026-06-22 06:38:23,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:38:23,568.568 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:38:23,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:38:23,673.673 INFO    ] No camera update needed
[2026-06-22 06:38:23,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:38:23,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:38:23,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:38:23,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:38:25,730.730 INFO    ] ================================================
[2026-06-22 06:38:25,746.746 INFO    ] Launching Daemon at Mon Jun 22 06:38:25 IST 2026
[2026-06-22 06:38:25,757.757 INFO    ] ================================================
[2026-06-22 06:38:26,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:38:26
[2026-06-22 06:38:26,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:38:27,246.246 INFO    ] Initializing speech engine...
[2026-06-22 06:38:27,255.255 INFO    ] 2026-06-22 06:38:27
[2026-06-22 06:38:27,507.507 INFO    ] 2026-06-22 06:38:27
[2026-06-22 06:38:27,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:38:27,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:38:27,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:38:27,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:38:27,886.886 INFO    ] time= 22/06/2026 06:38:27
[2026-06-22 06:38:27,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:38:27,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:38:28,055.055 INFO    ] No existing commands found in stream
[2026-06-22 06:38:33,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:38:33,079.079 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-22 06:38:35,728.728 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:38:35,731.731 INFO    ] Checking for system updates...
[2026-06-22 06:38:35,768.768 INFO    ] 200
[2026-06-22 06:38:35,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:38:35,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:38:35,836.836 INFO    ] No update needed
[2026-06-22 06:38:35,838.838 INFO    ] Checking for camera pi updates...
[2026-06-22 06:38:35,873.873 INFO    ] 200
[2026-06-22 06:38:35,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:38:35,920.920 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:38:35,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:38:35,992.992 INFO    ] No camera update needed
[2026-06-22 06:38:35,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:38:35,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:38:36,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:38:36,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:38:38,048.048 INFO    ] ================================================
[2026-06-22 06:38:38,063.063 INFO    ] Launching Daemon at Mon Jun 22 06:38:38 IST 2026
[2026-06-22 06:38:38,073.073 INFO    ] ================================================
[2026-06-22 06:38:38,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:38:38
[2026-06-22 06:38:39,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:38:39,576.576 INFO    ] Initializing speech engine...
[2026-06-22 06:38:39,589.589 INFO    ] 2026-06-22 06:38:39
[2026-06-22 06:38:39,851.851 INFO    ] 2026-06-22 06:38:39
[2026-06-22 06:38:39,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:38:40,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:38:40,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:38:40,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:38:40,303.303 INFO    ] time= 22/06/2026 06:38:40
[2026-06-22 06:38:40,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:38:40,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:38:40,443.443 INFO    ] No existing commands found in stream
[2026-06-22 06:38:45,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:38:45,458.458 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-22 06:38:48,308.308 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:38:48,310.310 INFO    ] Checking for system updates...
[2026-06-22 06:38:48,351.351 INFO    ] 200
[2026-06-22 06:38:48,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:38:48,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:38:48,419.419 INFO    ] No update needed
[2026-06-22 06:38:48,421.421 INFO    ] Checking for camera pi updates...
[2026-06-22 06:38:48,460.460 INFO    ] 200
[2026-06-22 06:38:48,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:38:48,503.503 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:38:48,587.587 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:38:48,590.590 INFO    ] No camera update needed
[2026-06-22 06:38:48,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:38:48,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:38:48,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:38:48,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:38:50,648.648 INFO    ] ================================================
[2026-06-22 06:38:50,663.663 INFO    ] Launching Daemon at Mon Jun 22 06:38:50 IST 2026
[2026-06-22 06:38:50,674.674 INFO    ] ================================================
[2026-06-22 06:38:51,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:38:51
[2026-06-22 06:38:51,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:38:52,006.006 INFO    ] Initializing speech engine...
[2026-06-22 06:38:52,025.025 INFO    ] 2026-06-22 06:38:52
[2026-06-22 06:38:52,277.277 INFO    ] 2026-06-22 06:38:52
[2026-06-22 06:38:52,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:38:52,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:38:52,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:38:53,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:38:53,221.221 INFO    ] time= 22/06/2026 06:38:53
[2026-06-22 06:38:53,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:38:53,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:38:53,403.403 INFO    ] No existing commands found in stream
[2026-06-22 06:38:58,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:38:58,430.430 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-22 06:39:00,728.728 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:39:00,730.730 INFO    ] Checking for system updates...
[2026-06-22 06:39:00,751.751 INFO    ] 200
[2026-06-22 06:39:00,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:39:00,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:39:00,797.797 INFO    ] No update needed
[2026-06-22 06:39:00,799.799 INFO    ] Checking for camera pi updates...
[2026-06-22 06:39:00,834.834 INFO    ] 200
[2026-06-22 06:39:00,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:39:00,879.879 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:39:00,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:39:00,981.981 INFO    ] No camera update needed
[2026-06-22 06:39:00,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:39:00,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:39:00,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:39:00,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:39:03,051.051 INFO    ] ================================================
[2026-06-22 06:39:03,069.069 INFO    ] Launching Daemon at Mon Jun 22 06:39:03 IST 2026
[2026-06-22 06:39:03,081.081 INFO    ] ================================================
[2026-06-22 06:39:03,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:39:03
[2026-06-22 06:39:04,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:39:04,565.565 INFO    ] Initializing speech engine...
[2026-06-22 06:39:04,574.574 INFO    ] 2026-06-22 06:39:04
[2026-06-22 06:39:04,826.826 INFO    ] 2026-06-22 06:39:04
[2026-06-22 06:39:04,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:39:05,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:39:05,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:39:05,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:39:05,398.398 INFO    ] time= 22/06/2026 06:39:05
[2026-06-22 06:39:05,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:39:05,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:39:05,524.524 INFO    ] No existing commands found in stream
[2026-06-22 06:39:10,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:39:10,549.549 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-22 06:39:11,184.184 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:39:11,187.187 INFO    ] Checking for system updates...
[2026-06-22 06:39:11,226.226 INFO    ] 200
[2026-06-22 06:39:11,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:39:11,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:39:11,286.286 INFO    ] No update needed
[2026-06-22 06:39:11,288.288 INFO    ] Checking for camera pi updates...
[2026-06-22 06:39:11,322.322 INFO    ] 200
[2026-06-22 06:39:11,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:39:11,364.364 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:39:11,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:39:11,546.546 INFO    ] No camera update needed
[2026-06-22 06:39:11,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:39:11,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:39:11,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:39:11,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:39:13,603.603 INFO    ] ================================================
[2026-06-22 06:39:13,618.618 INFO    ] Launching Daemon at Mon Jun 22 06:39:13 IST 2026
[2026-06-22 06:39:13,629.629 INFO    ] ================================================
[2026-06-22 06:39:14,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:39:14
[2026-06-22 06:39:14,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:39:15,004.004 INFO    ] Initializing speech engine...
[2026-06-22 06:39:15,013.013 INFO    ] 2026-06-22 06:39:15
[2026-06-22 06:39:15,273.273 INFO    ] 2026-06-22 06:39:15
[2026-06-22 06:39:15,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:39:15,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:39:15,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:39:15,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:39:15,752.752 INFO    ] time= 22/06/2026 06:39:15
[2026-06-22 06:39:15,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:39:15,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:39:15,978.978 INFO    ] No existing commands found in stream
[2026-06-22 06:39:20,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:39:20,999.999 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-22 06:39:23,109.109 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:39:23,112.112 INFO    ] Checking for system updates...
[2026-06-22 06:39:23,150.150 INFO    ] 200
[2026-06-22 06:39:23,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:39:23,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:39:23,210.210 INFO    ] No update needed
[2026-06-22 06:39:23,212.212 INFO    ] Checking for camera pi updates...
[2026-06-22 06:39:23,247.247 INFO    ] 200
[2026-06-22 06:39:23,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:39:23,298.298 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:39:23,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:39:23,405.405 INFO    ] No camera update needed
[2026-06-22 06:39:23,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:39:23,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:39:23,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:39:23,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:39:25,467.467 INFO    ] ================================================
[2026-06-22 06:39:25,482.482 INFO    ] Launching Daemon at Mon Jun 22 06:39:25 IST 2026
[2026-06-22 06:39:25,493.493 INFO    ] ================================================
[2026-06-22 06:39:26,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:39:26
[2026-06-22 06:39:26,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:39:26,790.790 INFO    ] Initializing speech engine...
[2026-06-22 06:39:26,797.797 INFO    ] 2026-06-22 06:39:26
[2026-06-22 06:39:27,060.060 INFO    ] 2026-06-22 06:39:27
[2026-06-22 06:39:27,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:39:27,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:39:27,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:39:27,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:39:27,530.530 INFO    ] time= 22/06/2026 06:39:27
[2026-06-22 06:39:27,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:39:27,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:39:27,732.732 INFO    ] No existing commands found in stream
[2026-06-22 06:39:32,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:39:32,770.770 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-22 06:39:35,616.616 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:39:35,618.618 INFO    ] Checking for system updates...
[2026-06-22 06:39:35,654.654 INFO    ] 200
[2026-06-22 06:39:35,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:39:35,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:39:35,711.711 INFO    ] No update needed
[2026-06-22 06:39:35,713.713 INFO    ] Checking for camera pi updates...
[2026-06-22 06:39:35,748.748 INFO    ] 200
[2026-06-22 06:39:35,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:39:35,796.796 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:39:35,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:39:35,848.848 INFO    ] No camera update needed
[2026-06-22 06:39:35,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:39:35,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:39:35,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:39:35,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:39:37,906.906 INFO    ] ================================================
[2026-06-22 06:39:37,921.921 INFO    ] Launching Daemon at Mon Jun 22 06:39:37 IST 2026
[2026-06-22 06:39:37,931.931 INFO    ] ================================================
[2026-06-22 06:39:38,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:39:38
[2026-06-22 06:39:39,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:39:39,548.548 INFO    ] Initializing speech engine...
[2026-06-22 06:39:39,556.556 INFO    ] 2026-06-22 06:39:39
[2026-06-22 06:39:39,846.846 INFO    ] 2026-06-22 06:39:39
[2026-06-22 06:39:39,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:39:40,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:39:40,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:39:40,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:39:40,320.320 INFO    ] time= 22/06/2026 06:39:40
[2026-06-22 06:39:40,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:39:40,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:39:40,441.441 INFO    ] No existing commands found in stream
[2026-06-22 06:39:45,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:39:45,458.458 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-22 06:39:46,710.710 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:39:46,712.712 INFO    ] Checking for system updates...
[2026-06-22 06:39:46,733.733 INFO    ] 200
[2026-06-22 06:39:46,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:39:46,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:39:46,769.769 INFO    ] No update needed
[2026-06-22 06:39:46,770.770 INFO    ] Checking for camera pi updates...
[2026-06-22 06:39:46,800.800 INFO    ] 200
[2026-06-22 06:39:46,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:39:46,845.845 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:39:46,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:39:46,915.915 INFO    ] No camera update needed
[2026-06-22 06:39:46,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:39:46,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:39:46,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:39:46,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:39:48,975.975 INFO    ] ================================================
[2026-06-22 06:39:48,990.990 INFO    ] Launching Daemon at Mon Jun 22 06:39:48 IST 2026
[2026-06-22 06:39:49,001.001 INFO    ] ================================================
[2026-06-22 06:39:49,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:39:49
[2026-06-22 06:39:50,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:39:50,555.555 INFO    ] Initializing speech engine...
[2026-06-22 06:39:50,569.569 INFO    ] 2026-06-22 06:39:50
[2026-06-22 06:39:50,877.877 INFO    ] 2026-06-22 06:39:50
[2026-06-22 06:39:50,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:39:53,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:39:53,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:39:53,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:39:53,324.324 INFO    ] time= 22/06/2026 06:39:53
[2026-06-22 06:39:53,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:39:53,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:39:53,389.389 INFO    ] No existing commands found in stream
[2026-06-22 06:39:58,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:39:58,402.402 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-22 06:40:01,492.492 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:40:01,495.495 INFO    ] Checking for system updates...
[2026-06-22 06:40:01,565.565 INFO    ] 200
[2026-06-22 06:40:01,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:40:01,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:40:01,854.854 INFO    ] No update needed
[2026-06-22 06:40:01,858.858 INFO    ] Checking for camera pi updates...
[2026-06-22 06:40:02,003.003 INFO    ] 200
[2026-06-22 06:40:02,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:40:02,241.241 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:40:02,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:40:02,365.365 INFO    ] No camera update needed
[2026-06-22 06:40:02,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:40:02,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:40:02,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:40:02,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:40:04,440.440 INFO    ] ================================================
[2026-06-22 06:40:04,456.456 INFO    ] Launching Daemon at Mon Jun 22 06:40:04 IST 2026
[2026-06-22 06:40:04,467.467 INFO    ] ================================================
[2026-06-22 06:40:05,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:40:05
[2026-06-22 06:40:05,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:40:05,892.892 INFO    ] Initializing speech engine...
[2026-06-22 06:40:05,917.917 INFO    ] 2026-06-22 06:40:05
[2026-06-22 06:40:06,189.189 INFO    ] 2026-06-22 06:40:06
[2026-06-22 06:40:06,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:40:06,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:40:06,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:40:06,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:40:06,570.570 INFO    ] time= 22/06/2026 06:40:06
[2026-06-22 06:40:06,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:40:06,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:40:06,703.703 INFO    ] No existing commands found in stream
[2026-06-22 06:40:11,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:40:11,720.720 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-22 06:40:12,963.963 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:40:12,966.966 INFO    ] Checking for system updates...
[2026-06-22 06:40:13,006.006 INFO    ] 200
[2026-06-22 06:40:13,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:40:13,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:40:13,064.064 INFO    ] No update needed
[2026-06-22 06:40:13,066.066 INFO    ] Checking for camera pi updates...
[2026-06-22 06:40:13,100.100 INFO    ] 200
[2026-06-22 06:40:13,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:40:13,142.142 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:40:13,221.221 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:40:13,224.224 INFO    ] No camera update needed
[2026-06-22 06:40:13,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:40:13,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:40:13,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:40:13,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:40:15,280.280 INFO    ] ================================================
[2026-06-22 06:40:15,296.296 INFO    ] Launching Daemon at Mon Jun 22 06:40:15 IST 2026
[2026-06-22 06:40:15,307.307 INFO    ] ================================================
[2026-06-22 06:40:15,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:40:15
[2026-06-22 06:40:16,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:40:16,630.630 INFO    ] Initializing speech engine...
[2026-06-22 06:40:16,637.637 INFO    ] 2026-06-22 06:40:16
[2026-06-22 06:40:16,937.937 INFO    ] 2026-06-22 06:40:16
[2026-06-22 06:40:16,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:40:17,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:40:17,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:40:17,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:40:17,291.291 INFO    ] time= 22/06/2026 06:40:17
[2026-06-22 06:40:17,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:40:17,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:40:17,372.372 INFO    ] No existing commands found in stream
[2026-06-22 06:40:22,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:40:22,386.386 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-22 06:40:23,746.746 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:40:23,749.749 INFO    ] Checking for system updates...
[2026-06-22 06:40:23,784.784 INFO    ] 200
[2026-06-22 06:40:23,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:40:23,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:40:23,842.842 INFO    ] No update needed
[2026-06-22 06:40:23,845.845 INFO    ] Checking for camera pi updates...
[2026-06-22 06:40:23,879.879 INFO    ] 200
[2026-06-22 06:40:23,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:40:23,922.922 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:40:24,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:40:24,008.008 INFO    ] No camera update needed
[2026-06-22 06:40:24,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:40:24,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:40:24,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:40:24,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:40:26,064.064 INFO    ] ================================================
[2026-06-22 06:40:26,079.079 INFO    ] Launching Daemon at Mon Jun 22 06:40:26 IST 2026
[2026-06-22 06:40:26,089.089 INFO    ] ================================================
[2026-06-22 06:40:26,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:40:26
[2026-06-22 06:40:27,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:40:27,420.420 INFO    ] Initializing speech engine...
[2026-06-22 06:40:27,446.446 INFO    ] 2026-06-22 06:40:27
[2026-06-22 06:40:27,720.720 INFO    ] 2026-06-22 06:40:27
[2026-06-22 06:40:27,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:40:27,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:40:27,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:40:28,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:40:28,114.114 INFO    ] time= 22/06/2026 06:40:28
[2026-06-22 06:40:28,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:40:28,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:40:28,223.223 INFO    ] No existing commands found in stream
[2026-06-22 06:40:33,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:40:33,244.244 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-22 06:40:35,051.051 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:40:35,053.053 INFO    ] Checking for system updates...
[2026-06-22 06:40:35,090.090 INFO    ] 200
[2026-06-22 06:40:35,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:40:35,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:40:35,148.148 INFO    ] No update needed
[2026-06-22 06:40:35,150.150 INFO    ] Checking for camera pi updates...
[2026-06-22 06:40:35,183.183 INFO    ] 200
[2026-06-22 06:40:35,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:40:35,226.226 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:40:35,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:40:35,332.332 INFO    ] No camera update needed
[2026-06-22 06:40:35,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:40:35,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:40:35,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:40:35,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:40:37,386.386 INFO    ] ================================================
[2026-06-22 06:40:37,401.401 INFO    ] Launching Daemon at Mon Jun 22 06:40:37 IST 2026
[2026-06-22 06:40:37,412.412 INFO    ] ================================================
[2026-06-22 06:40:38,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:40:38
[2026-06-22 06:40:38,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:40:38,939.939 INFO    ] Initializing speech engine...
[2026-06-22 06:40:38,947.947 INFO    ] 2026-06-22 06:40:38
[2026-06-22 06:40:39,237.237 INFO    ] 2026-06-22 06:40:39
[2026-06-22 06:40:39,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:40:39,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:40:39,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:40:39,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:40:39,704.704 INFO    ] time= 22/06/2026 06:40:39
[2026-06-22 06:40:39,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:40:39,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:40:39,847.847 INFO    ] No existing commands found in stream
[2026-06-22 06:40:44,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:40:44,863.863 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-22 06:40:48,340.340 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:40:48,343.343 INFO    ] Checking for system updates...
[2026-06-22 06:40:48,380.380 INFO    ] 200
[2026-06-22 06:40:48,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:40:48,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:40:48,446.446 INFO    ] No update needed
[2026-06-22 06:40:48,449.449 INFO    ] Checking for camera pi updates...
[2026-06-22 06:40:48,484.484 INFO    ] 200
[2026-06-22 06:40:48,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:40:48,528.528 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:40:48,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:40:48,636.636 INFO    ] No camera update needed
[2026-06-22 06:40:48,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:40:48,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:40:48,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:40:48,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:40:50,695.695 INFO    ] ================================================
[2026-06-22 06:40:50,710.710 INFO    ] Launching Daemon at Mon Jun 22 06:40:50 IST 2026
[2026-06-22 06:40:50,721.721 INFO    ] ================================================
[2026-06-22 06:40:51,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:40:51
[2026-06-22 06:40:51,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:40:52,245.245 INFO    ] Initializing speech engine...
[2026-06-22 06:40:52,259.259 INFO    ] 2026-06-22 06:40:52
[2026-06-22 06:40:52,567.567 INFO    ] 2026-06-22 06:40:52
[2026-06-22 06:40:52,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:40:53,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:40:53,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:40:53,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:40:53,503.503 INFO    ] time= 22/06/2026 06:40:53
[2026-06-22 06:40:53,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:40:53,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:40:53,624.624 INFO    ] No existing commands found in stream
[2026-06-22 06:40:58,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:40:58,658.658 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-22 06:41:00,607.607 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:41:00,609.609 INFO    ] Checking for system updates...
[2026-06-22 06:41:00,630.630 INFO    ] 200
[2026-06-22 06:41:00,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:41:00,680.680 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:41:00,683.683 INFO    ] No update needed
[2026-06-22 06:41:00,686.686 INFO    ] Checking for camera pi updates...
[2026-06-22 06:41:00,721.721 INFO    ] 200
[2026-06-22 06:41:00,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:41:00,766.766 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:41:00,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:41:00,882.882 INFO    ] No camera update needed
[2026-06-22 06:41:00,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:41:00,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:41:00,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:41:00,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:41:02,953.953 INFO    ] ================================================
[2026-06-22 06:41:02,974.974 INFO    ] Launching Daemon at Mon Jun 22 06:41:02 IST 2026
[2026-06-22 06:41:03,991.991 INFO    ] ================================================
[2026-06-22 06:41:03,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:41:03
[2026-06-22 06:41:04,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:41:04,508.508 INFO    ] Initializing speech engine...
[2026-06-22 06:41:04,514.514 INFO    ] 2026-06-22 06:41:04
[2026-06-22 06:41:04,777.777 INFO    ] 2026-06-22 06:41:04
[2026-06-22 06:41:04,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:41:05,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:41:05,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:41:05,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:41:05,250.250 INFO    ] time= 22/06/2026 06:41:05
[2026-06-22 06:41:05,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:41:05,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:41:05,393.393 INFO    ] No existing commands found in stream
[2026-06-22 06:41:10,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:41:10,408.408 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-22 06:41:11,865.865 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:41:11,866.866 INFO    ] Checking for system updates...
[2026-06-22 06:41:11,887.887 INFO    ] 200
[2026-06-22 06:41:11,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:41:11,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:41:11,920.920 INFO    ] No update needed
[2026-06-22 06:41:11,921.921 INFO    ] Checking for camera pi updates...
[2026-06-22 06:41:11,941.941 INFO    ] 200
[2026-06-22 06:41:11,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:41:11,984.984 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:41:12,066.066 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:41:12,069.069 INFO    ] No camera update needed
[2026-06-22 06:41:12,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:41:12,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:41:12,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:41:12,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:41:14,125.125 INFO    ] ================================================
[2026-06-22 06:41:14,141.141 INFO    ] Launching Daemon at Mon Jun 22 06:41:14 IST 2026
[2026-06-22 06:41:14,153.153 INFO    ] ================================================
[2026-06-22 06:41:14,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:41:14
[2026-06-22 06:41:15,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:41:15,573.573 INFO    ] Initializing speech engine...
[2026-06-22 06:41:15,593.593 INFO    ] 2026-06-22 06:41:15
[2026-06-22 06:41:15,868.868 INFO    ] 2026-06-22 06:41:15
[2026-06-22 06:41:15,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:41:16,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:41:16,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:41:16,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:41:16,264.264 INFO    ] time= 22/06/2026 06:41:16
[2026-06-22 06:41:16,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:41:16,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:41:16,373.373 INFO    ] No existing commands found in stream
[2026-06-22 06:41:21,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:41:21,388.388 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-22 06:41:23,285.285 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:41:23,288.288 INFO    ] Checking for system updates...
[2026-06-22 06:41:23,325.325 INFO    ] 200
[2026-06-22 06:41:23,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:41:23,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:41:23,385.385 INFO    ] No update needed
[2026-06-22 06:41:23,387.387 INFO    ] Checking for camera pi updates...
[2026-06-22 06:41:23,423.423 INFO    ] 200
[2026-06-22 06:41:23,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:41:23,467.467 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:41:23,647.647 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:41:23,649.649 INFO    ] No camera update needed
[2026-06-22 06:41:23,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:41:23,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:41:23,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:41:23,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:41:25,709.709 INFO    ] ================================================
[2026-06-22 06:41:25,725.725 INFO    ] Launching Daemon at Mon Jun 22 06:41:25 IST 2026
[2026-06-22 06:41:25,736.736 INFO    ] ================================================
[2026-06-22 06:41:26,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:41:26
[2026-06-22 06:41:26,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:41:27,250.250 INFO    ] Initializing speech engine...
[2026-06-22 06:41:27,262.262 INFO    ] 2026-06-22 06:41:27
[2026-06-22 06:41:27,539.539 INFO    ] 2026-06-22 06:41:27
[2026-06-22 06:41:27,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:41:27,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:41:27,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:41:27,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:41:28,005.005 INFO    ] time= 22/06/2026 06:41:27
[2026-06-22 06:41:28,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:41:28,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:41:28,200.200 INFO    ] No existing commands found in stream
[2026-06-22 06:41:33,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:41:33,226.226 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-22 06:41:36,672.672 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:41:36,674.674 INFO    ] Checking for system updates...
[2026-06-22 06:41:36,695.695 INFO    ] 200
[2026-06-22 06:41:36,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:41:36,726.726 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:41:36,727.727 INFO    ] No update needed
[2026-06-22 06:41:36,728.728 INFO    ] Checking for camera pi updates...
[2026-06-22 06:41:36,748.748 INFO    ] 200
[2026-06-22 06:41:36,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:41:36,782.782 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:41:36,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:41:36,875.875 INFO    ] No camera update needed
[2026-06-22 06:41:36,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:41:36,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:41:36,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:41:36,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:41:38,931.931 INFO    ] ================================================
[2026-06-22 06:41:38,946.946 INFO    ] Launching Daemon at Mon Jun 22 06:41:38 IST 2026
[2026-06-22 06:41:38,957.957 INFO    ] ================================================
[2026-06-22 06:41:39,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:41:39
[2026-06-22 06:41:40,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:41:40,327.327 INFO    ] Initializing speech engine...
[2026-06-22 06:41:40,336.336 INFO    ] 2026-06-22 06:41:40
[2026-06-22 06:41:40,587.587 INFO    ] 2026-06-22 06:41:40
[2026-06-22 06:41:40,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:41:40,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:41:40,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:41:41,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:41:41,063.063 INFO    ] time= 22/06/2026 06:41:41
[2026-06-22 06:41:41,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:41:41,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:41:41,204.204 INFO    ] No existing commands found in stream
[2026-06-22 06:41:46,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:41:46,219.219 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-22 06:41:46,683.683 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:41:46,684.684 INFO    ] Checking for system updates...
[2026-06-22 06:41:46,706.706 INFO    ] 200
[2026-06-22 06:41:46,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:41:46,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:41:46,739.739 INFO    ] No update needed
[2026-06-22 06:41:46,740.740 INFO    ] Checking for camera pi updates...
[2026-06-22 06:41:46,770.770 INFO    ] 200
[2026-06-22 06:41:46,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:41:46,813.813 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:41:46,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:41:46,894.894 INFO    ] No camera update needed
[2026-06-22 06:41:46,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:41:46,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:41:46,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:41:46,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:41:48,948.948 INFO    ] ================================================
[2026-06-22 06:41:48,963.963 INFO    ] Launching Daemon at Mon Jun 22 06:41:48 IST 2026
[2026-06-22 06:41:48,974.974 INFO    ] ================================================
[2026-06-22 06:41:49,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:41:49
[2026-06-22 06:41:50,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:41:50,421.421 INFO    ] Initializing speech engine...
[2026-06-22 06:41:50,428.428 INFO    ] 2026-06-22 06:41:50
[2026-06-22 06:41:50,695.695 INFO    ] 2026-06-22 06:41:50
[2026-06-22 06:41:50,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:41:50,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:41:50,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:41:51,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:41:51,056.056 INFO    ] time= 22/06/2026 06:41:51
[2026-06-22 06:41:51,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:41:51,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:41:51,151.151 INFO    ] No existing commands found in stream
[2026-06-22 06:41:56,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:41:56,171.171 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-22 06:41:59,493.493 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:41:59,496.496 INFO    ] Checking for system updates...
[2026-06-22 06:41:59,532.532 INFO    ] 200
[2026-06-22 06:41:59,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:41:59,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:41:59,590.590 INFO    ] No update needed
[2026-06-22 06:41:59,592.592 INFO    ] Checking for camera pi updates...
[2026-06-22 06:41:59,626.626 INFO    ] 200
[2026-06-22 06:41:59,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:41:59,671.671 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:41:59,745.745 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:41:59,748.748 INFO    ] No camera update needed
[2026-06-22 06:41:59,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:41:59,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:41:59,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:41:59,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:42:01,831.831 INFO    ] ================================================
[2026-06-22 06:42:01,864.864 INFO    ] Launching Daemon at Mon Jun 22 06:42:01 IST 2026
[2026-06-22 06:42:01,881.881 INFO    ] ================================================
[2026-06-22 06:42:02,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:42:02
[2026-06-22 06:42:03,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:42:03,591.591 INFO    ] Initializing speech engine...
[2026-06-22 06:42:03,605.605 INFO    ] 2026-06-22 06:42:03
[2026-06-22 06:42:03,921.921 INFO    ] 2026-06-22 06:42:03
[2026-06-22 06:42:04,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:42:04,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:42:04,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:42:04,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:42:04,442.442 INFO    ] time= 22/06/2026 06:42:04
[2026-06-22 06:42:04,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:42:04,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:42:04,601.601 INFO    ] No existing commands found in stream
[2026-06-22 06:42:09,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:42:09,622.622 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-22 06:42:12,183.183 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:42:12,185.185 INFO    ] Checking for system updates...
[2026-06-22 06:42:12,206.206 INFO    ] 200
[2026-06-22 06:42:12,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:42:12,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:42:12,240.240 INFO    ] No update needed
[2026-06-22 06:42:12,241.241 INFO    ] Checking for camera pi updates...
[2026-06-22 06:42:12,262.262 INFO    ] 200
[2026-06-22 06:42:12,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:42:12,298.298 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:42:12,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:42:12,407.407 INFO    ] No camera update needed
[2026-06-22 06:42:12,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:42:12,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:42:12,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:42:12,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:42:14,461.461 INFO    ] ================================================
[2026-06-22 06:42:14,477.477 INFO    ] Launching Daemon at Mon Jun 22 06:42:14 IST 2026
[2026-06-22 06:42:14,488.488 INFO    ] ================================================
[2026-06-22 06:42:15,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:42:15
[2026-06-22 06:42:15,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:42:15,823.823 INFO    ] Initializing speech engine...
[2026-06-22 06:42:15,842.842 INFO    ] 2026-06-22 06:42:15
[2026-06-22 06:42:16,093.093 INFO    ] 2026-06-22 06:42:16
[2026-06-22 06:42:16,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:42:16,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:42:16,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:42:16,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:42:16,470.470 INFO    ] time= 22/06/2026 06:42:16
[2026-06-22 06:42:16,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:42:16,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:42:16,615.615 INFO    ] No existing commands found in stream
[2026-06-22 06:42:21,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:42:21,642.642 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-22 06:42:24,010.010 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:42:24,014.014 INFO    ] Checking for system updates...
[2026-06-22 06:42:24,050.050 INFO    ] 200
[2026-06-22 06:42:24,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:42:24,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:42:24,108.108 INFO    ] No update needed
[2026-06-22 06:42:24,110.110 INFO    ] Checking for camera pi updates...
[2026-06-22 06:42:24,148.148 INFO    ] 200
[2026-06-22 06:42:24,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:42:24,191.191 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:42:24,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:42:24,265.265 INFO    ] No camera update needed
[2026-06-22 06:42:24,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:42:24,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:42:24,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:42:24,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:42:26,320.320 INFO    ] ================================================
[2026-06-22 06:42:26,336.336 INFO    ] Launching Daemon at Mon Jun 22 06:42:26 IST 2026
[2026-06-22 06:42:26,347.347 INFO    ] ================================================
[2026-06-22 06:42:26,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:42:26
[2026-06-22 06:42:27,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:42:27,816.816 INFO    ] Initializing speech engine...
[2026-06-22 06:42:27,823.823 INFO    ] 2026-06-22 06:42:27
[2026-06-22 06:42:28,086.086 INFO    ] 2026-06-22 06:42:28
[2026-06-22 06:42:28,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:42:28,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:42:28,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:42:28,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:42:28,448.448 INFO    ] time= 22/06/2026 06:42:28
[2026-06-22 06:42:28,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:42:28,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:42:28,625.625 INFO    ] No existing commands found in stream
[2026-06-22 06:42:33,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:42:33,653.653 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-22 06:42:34,361.361 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:42:34,364.364 INFO    ] Checking for system updates...
[2026-06-22 06:42:34,400.400 INFO    ] 200
[2026-06-22 06:42:34,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:42:34,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:42:34,459.459 INFO    ] No update needed
[2026-06-22 06:42:34,461.461 INFO    ] Checking for camera pi updates...
[2026-06-22 06:42:34,496.496 INFO    ] 200
[2026-06-22 06:42:34,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:42:34,540.540 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:42:34,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:42:34,627.627 INFO    ] No camera update needed
[2026-06-22 06:42:34,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:42:34,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:42:34,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:42:34,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:42:36,683.683 INFO    ] ================================================
[2026-06-22 06:42:36,698.698 INFO    ] Launching Daemon at Mon Jun 22 06:42:36 IST 2026
[2026-06-22 06:42:36,710.710 INFO    ] ================================================
[2026-06-22 06:42:37,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:42:37
[2026-06-22 06:42:37,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:42:38,079.079 INFO    ] Initializing speech engine...
[2026-06-22 06:42:38,102.102 INFO    ] 2026-06-22 06:42:38
[2026-06-22 06:42:38,359.359 INFO    ] 2026-06-22 06:42:38
[2026-06-22 06:42:38,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:42:38,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:42:38,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:42:38,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:42:38,739.739 INFO    ] time= 22/06/2026 06:42:38
[2026-06-22 06:42:38,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:42:38,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:42:38,895.895 INFO    ] No existing commands found in stream
[2026-06-22 06:42:43,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:42:43,922.922 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-22 06:42:45,949.949 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:42:45,951.951 INFO    ] Checking for system updates...
[2026-06-22 06:42:45,972.972 INFO    ] 200
[2026-06-22 06:42:45,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:42:46,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:42:46,031.031 INFO    ] No update needed
[2026-06-22 06:42:46,033.033 INFO    ] Checking for camera pi updates...
[2026-06-22 06:42:46,069.069 INFO    ] 200
[2026-06-22 06:42:46,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:42:46,118.118 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:42:46,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:42:46,202.202 INFO    ] No camera update needed
[2026-06-22 06:42:46,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:42:46,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:42:46,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:42:46,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:42:48,258.258 INFO    ] ================================================
[2026-06-22 06:42:48,273.273 INFO    ] Launching Daemon at Mon Jun 22 06:42:48 IST 2026
[2026-06-22 06:42:48,284.284 INFO    ] ================================================
[2026-06-22 06:42:48,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:42:48
[2026-06-22 06:42:49,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:42:49,752.752 INFO    ] Initializing speech engine...
[2026-06-22 06:42:49,758.758 INFO    ] 2026-06-22 06:42:49
[2026-06-22 06:42:50,019.019 INFO    ] 2026-06-22 06:42:50
[2026-06-22 06:42:50,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:42:50,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:42:50,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:42:50,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:42:50,478.478 INFO    ] time= 22/06/2026 06:42:50
[2026-06-22 06:42:50,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:42:50,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:42:50,732.732 INFO    ] No existing commands found in stream
[2026-06-22 06:42:55,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:42:55,766.766 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-22 06:42:56,129.129 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:42:56,132.132 INFO    ] Checking for system updates...
[2026-06-22 06:42:56,168.168 INFO    ] 200
[2026-06-22 06:42:56,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:42:56,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:42:56,237.237 INFO    ] No update needed
[2026-06-22 06:42:56,239.239 INFO    ] Checking for camera pi updates...
[2026-06-22 06:42:56,273.273 INFO    ] 200
[2026-06-22 06:42:56,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:42:56,321.321 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:42:56,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:42:56,410.410 INFO    ] No camera update needed
[2026-06-22 06:42:56,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:42:56,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:42:56,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:42:56,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:42:58,465.465 INFO    ] ================================================
[2026-06-22 06:42:58,482.482 INFO    ] Launching Daemon at Mon Jun 22 06:42:58 IST 2026
[2026-06-22 06:42:58,493.493 INFO    ] ================================================
[2026-06-22 06:42:59,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:42:59
[2026-06-22 06:42:59,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:42:59,818.818 INFO    ] Initializing speech engine...
[2026-06-22 06:42:59,838.838 INFO    ] 2026-06-22 06:42:59
[2026-06-22 06:43:00,088.088 INFO    ] 2026-06-22 06:43:00
[2026-06-22 06:43:00,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:43:00,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:43:00,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:43:00,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:43:00,534.534 INFO    ] time= 22/06/2026 06:43:00
[2026-06-22 06:43:00,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:43:00,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:43:00,691.691 INFO    ] No existing commands found in stream
[2026-06-22 06:43:05,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:43:05,709.709 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-22 06:43:06,801.801 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:43:06,804.804 INFO    ] Checking for system updates...
[2026-06-22 06:43:06,841.841 INFO    ] 200
[2026-06-22 06:43:06,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:43:06,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:43:06,900.900 INFO    ] No update needed
[2026-06-22 06:43:06,903.903 INFO    ] Checking for camera pi updates...
[2026-06-22 06:43:06,938.938 INFO    ] 200
[2026-06-22 06:43:06,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:43:06,983.983 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:43:07,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:43:07,062.062 INFO    ] No camera update needed
[2026-06-22 06:43:07,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:43:07,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:43:07,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:43:07,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:43:09,122.122 INFO    ] ================================================
[2026-06-22 06:43:09,137.137 INFO    ] Launching Daemon at Mon Jun 22 06:43:09 IST 2026
[2026-06-22 06:43:09,148.148 INFO    ] ================================================
[2026-06-22 06:43:09,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:43:09
[2026-06-22 06:43:10,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:43:10,499.499 INFO    ] Initializing speech engine...
[2026-06-22 06:43:10,512.512 INFO    ] 2026-06-22 06:43:10
[2026-06-22 06:43:10,811.811 INFO    ] 2026-06-22 06:43:10
[2026-06-22 06:43:10,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:43:11,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:43:11,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:43:11,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:43:11,227.227 INFO    ] time= 22/06/2026 06:43:11
[2026-06-22 06:43:11,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:43:11,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:43:11,454.454 INFO    ] No existing commands found in stream
[2026-06-22 06:43:16,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:43:16,481.481 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-22 06:43:18,722.722 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:43:18,724.724 INFO    ] Checking for system updates...
[2026-06-22 06:43:18,745.745 INFO    ] 200
[2026-06-22 06:43:18,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:43:18,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:43:18,788.788 INFO    ] No update needed
[2026-06-22 06:43:18,791.791 INFO    ] Checking for camera pi updates...
[2026-06-22 06:43:18,829.829 INFO    ] 200
[2026-06-22 06:43:18,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:43:18,875.875 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:43:18,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:43:18,950.950 INFO    ] No camera update needed
[2026-06-22 06:43:18,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:43:18,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:43:18,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:43:18,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:43:21,008.008 INFO    ] ================================================
[2026-06-22 06:43:21,025.025 INFO    ] Launching Daemon at Mon Jun 22 06:43:21 IST 2026
[2026-06-22 06:43:21,035.035 INFO    ] ================================================
[2026-06-22 06:43:21,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:43:21
[2026-06-22 06:43:22,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:43:22,390.390 INFO    ] Initializing speech engine...
[2026-06-22 06:43:22,399.399 INFO    ] 2026-06-22 06:43:22
[2026-06-22 06:43:22,696.696 INFO    ] 2026-06-22 06:43:22
[2026-06-22 06:43:22,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:43:23,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:43:23,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:43:23,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:43:23,406.406 INFO    ] time= 22/06/2026 06:43:23
[2026-06-22 06:43:23,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:43:23,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:43:23,601.601 INFO    ] No existing commands found in stream
[2026-06-22 06:43:28,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:43:28,629.629 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-22 06:43:32,698.698 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:43:32,701.701 INFO    ] Checking for system updates...
[2026-06-22 06:43:32,740.740 INFO    ] 200
[2026-06-22 06:43:32,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:43:32,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:43:32,802.802 INFO    ] No update needed
[2026-06-22 06:43:32,805.805 INFO    ] Checking for camera pi updates...
[2026-06-22 06:43:32,849.849 INFO    ] 200
[2026-06-22 06:43:32,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:43:32,915.915 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:43:33,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:43:33,011.011 INFO    ] No camera update needed
[2026-06-22 06:43:33,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:43:33,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:43:33,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:43:33,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:43:35,067.067 INFO    ] ================================================
[2026-06-22 06:43:35,083.083 INFO    ] Launching Daemon at Mon Jun 22 06:43:35 IST 2026
[2026-06-22 06:43:35,094.094 INFO    ] ================================================
[2026-06-22 06:43:35,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:43:35
[2026-06-22 06:43:36,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:43:36,442.442 INFO    ] Initializing speech engine...
[2026-06-22 06:43:36,449.449 INFO    ] 2026-06-22 06:43:36
[2026-06-22 06:43:36,747.747 INFO    ] 2026-06-22 06:43:36
[2026-06-22 06:43:36,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:43:36,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:43:37,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:43:37,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:43:37,132.132 INFO    ] time= 22/06/2026 06:43:37
[2026-06-22 06:43:37,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:43:37,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:43:37,252.252 INFO    ] No existing commands found in stream
[2026-06-22 06:43:42,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:43:42,275.275 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-22 06:43:44,151.151 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:43:44,154.154 INFO    ] Checking for system updates...
[2026-06-22 06:43:44,192.192 INFO    ] 200
[2026-06-22 06:43:44,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:43:44,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:43:44,252.252 INFO    ] No update needed
[2026-06-22 06:43:44,254.254 INFO    ] Checking for camera pi updates...
[2026-06-22 06:43:44,289.289 INFO    ] 200
[2026-06-22 06:43:44,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:43:44,336.336 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:43:44,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:43:44,391.391 INFO    ] No camera update needed
[2026-06-22 06:43:44,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:43:44,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:43:44,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:43:44,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:43:46,451.451 INFO    ] ================================================
[2026-06-22 06:43:46,467.467 INFO    ] Launching Daemon at Mon Jun 22 06:43:46 IST 2026
[2026-06-22 06:43:46,478.478 INFO    ] ================================================
[2026-06-22 06:43:47,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:43:47
[2026-06-22 06:43:47,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:43:47,834.834 INFO    ] Initializing speech engine...
[2026-06-22 06:43:47,840.840 INFO    ] 2026-06-22 06:43:47
[2026-06-22 06:43:48,146.146 INFO    ] 2026-06-22 06:43:48
[2026-06-22 06:43:48,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:43:48,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:43:48,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:43:48,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:43:48,534.534 INFO    ] time= 22/06/2026 06:43:48
[2026-06-22 06:43:48,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:43:48,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:43:48,664.664 INFO    ] No existing commands found in stream
[2026-06-22 06:43:53,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:43:53,678.678 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-22 06:43:56,298.298 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:43:56,300.300 INFO    ] Checking for system updates...
[2026-06-22 06:43:56,320.320 INFO    ] 200
[2026-06-22 06:43:56,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:43:56,353.353 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:43:56,354.354 INFO    ] No update needed
[2026-06-22 06:43:56,356.356 INFO    ] Checking for camera pi updates...
[2026-06-22 06:43:56,375.375 INFO    ] 200
[2026-06-22 06:43:56,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:43:56,400.400 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:43:56,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:43:56,483.483 INFO    ] No camera update needed
[2026-06-22 06:43:56,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:43:56,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:43:56,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:43:56,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:43:58,540.540 INFO    ] ================================================
[2026-06-22 06:43:58,556.556 INFO    ] Launching Daemon at Mon Jun 22 06:43:58 IST 2026
[2026-06-22 06:43:58,567.567 INFO    ] ================================================
[2026-06-22 06:43:59,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:43:59
[2026-06-22 06:43:59,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:43:59,902.902 INFO    ] Initializing speech engine...
[2026-06-22 06:43:59,927.927 INFO    ] 2026-06-22 06:43:59
[2026-06-22 06:44:00,203.203 INFO    ] 2026-06-22 06:44:00
[2026-06-22 06:44:00,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:44:00,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:44:00,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:44:00,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:44:00,562.562 INFO    ] time= 22/06/2026 06:44:00
[2026-06-22 06:44:00,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:44:00,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:44:00,642.642 INFO    ] No existing commands found in stream
[2026-06-22 06:44:05,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:44:05,657.657 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-22 06:44:08,194.194 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:44:08,197.197 INFO    ] Checking for system updates...
[2026-06-22 06:44:08,232.232 INFO    ] 200
[2026-06-22 06:44:08,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:44:08,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:44:08,296.296 INFO    ] No update needed
[2026-06-22 06:44:08,298.298 INFO    ] Checking for camera pi updates...
[2026-06-22 06:44:08,335.335 INFO    ] 200
[2026-06-22 06:44:08,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:44:08,383.383 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:44:08,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:44:08,451.451 INFO    ] No camera update needed
[2026-06-22 06:44:08,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:44:08,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:44:08,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:44:08,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:44:10,508.508 INFO    ] ================================================
[2026-06-22 06:44:10,524.524 INFO    ] Launching Daemon at Mon Jun 22 06:44:10 IST 2026
[2026-06-22 06:44:10,538.538 INFO    ] ================================================
[2026-06-22 06:44:11,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:44:11
[2026-06-22 06:44:11,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:44:12,210.210 INFO    ] Initializing speech engine...
[2026-06-22 06:44:12,222.222 INFO    ] 2026-06-22 06:44:12
[2026-06-22 06:44:12,511.511 INFO    ] 2026-06-22 06:44:12
[2026-06-22 06:44:12,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:44:12,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:44:12,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:44:13,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:44:13,052.052 INFO    ] time= 22/06/2026 06:44:13
[2026-06-22 06:44:13,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:44:13,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:44:13,207.207 INFO    ] No existing commands found in stream
[2026-06-22 06:44:18,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:44:18,228.228 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-22 06:44:20,016.016 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:44:20,018.018 INFO    ] Checking for system updates...
[2026-06-22 06:44:20,039.039 INFO    ] 200
[2026-06-22 06:44:20,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:44:20,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:44:20,072.072 INFO    ] No update needed
[2026-06-22 06:44:20,073.073 INFO    ] Checking for camera pi updates...
[2026-06-22 06:44:20,093.093 INFO    ] 200
[2026-06-22 06:44:20,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:44:20,123.123 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:44:20,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:44:20,212.212 INFO    ] No camera update needed
[2026-06-22 06:44:20,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:44:20,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:44:20,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:44:20,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:44:22,271.271 INFO    ] ================================================
[2026-06-22 06:44:22,286.286 INFO    ] Launching Daemon at Mon Jun 22 06:44:22 IST 2026
[2026-06-22 06:44:22,297.297 INFO    ] ================================================
[2026-06-22 06:44:22,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:44:22
[2026-06-22 06:44:23,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:44:23,835.835 INFO    ] Initializing speech engine...
[2026-06-22 06:44:23,849.849 INFO    ] 2026-06-22 06:44:23
[2026-06-22 06:44:24,135.135 INFO    ] 2026-06-22 06:44:24
[2026-06-22 06:44:24,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:44:24,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:44:24,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:44:24,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:44:24,669.669 INFO    ] time= 22/06/2026 06:44:24
[2026-06-22 06:44:24,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:44:24,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:44:24,820.820 INFO    ] No existing commands found in stream
[2026-06-22 06:44:29,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:44:29,839.839 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-22 06:44:31,480.480 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:44:31,482.482 INFO    ] Checking for system updates...
[2026-06-22 06:44:31,503.503 INFO    ] 200
[2026-06-22 06:44:31,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:44:31,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:44:31,561.561 INFO    ] No update needed
[2026-06-22 06:44:31,563.563 INFO    ] Checking for camera pi updates...
[2026-06-22 06:44:31,602.602 INFO    ] 200
[2026-06-22 06:44:31,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:44:31,649.649 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:44:31,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:44:31,716.716 INFO    ] No camera update needed
[2026-06-22 06:44:31,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:44:31,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:44:31,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:44:31,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:44:33,783.783 INFO    ] ================================================
[2026-06-22 06:44:33,798.798 INFO    ] Launching Daemon at Mon Jun 22 06:44:33 IST 2026
[2026-06-22 06:44:33,809.809 INFO    ] ================================================
[2026-06-22 06:44:34,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:44:34
[2026-06-22 06:44:34,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:44:35,239.239 INFO    ] Initializing speech engine...
[2026-06-22 06:44:35,248.248 INFO    ] 2026-06-22 06:44:35
[2026-06-22 06:44:35,546.546 INFO    ] 2026-06-22 06:44:35
[2026-06-22 06:44:35,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:44:35,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:44:35,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:44:35,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:44:35,908.908 INFO    ] time= 22/06/2026 06:44:35
[2026-06-22 06:44:35,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:44:35,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:44:36,008.008 INFO    ] No existing commands found in stream
[2026-06-22 06:44:41,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:44:41,030.030 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-22 06:44:45,275.275 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:44:45,276.276 INFO    ] Checking for system updates...
[2026-06-22 06:44:45,297.297 INFO    ] 200
[2026-06-22 06:44:45,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:44:45,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:44:45,331.331 INFO    ] No update needed
[2026-06-22 06:44:45,332.332 INFO    ] Checking for camera pi updates...
[2026-06-22 06:44:45,365.365 INFO    ] 200
[2026-06-22 06:44:45,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:44:45,409.409 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:44:45,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:44:45,508.508 INFO    ] No camera update needed
[2026-06-22 06:44:45,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:44:45,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:44:45,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:44:45,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:44:47,567.567 INFO    ] ================================================
[2026-06-22 06:44:47,582.582 INFO    ] Launching Daemon at Mon Jun 22 06:44:47 IST 2026
[2026-06-22 06:44:47,594.594 INFO    ] ================================================
[2026-06-22 06:44:48,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:44:48
[2026-06-22 06:44:48,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:44:48,926.926 INFO    ] Initializing speech engine...
[2026-06-22 06:44:48,932.932 INFO    ] 2026-06-22 06:44:48
[2026-06-22 06:44:49,229.229 INFO    ] 2026-06-22 06:44:49
[2026-06-22 06:44:49,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:44:49,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:44:49,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:44:49,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:44:49,580.580 INFO    ] time= 22/06/2026 06:44:49
[2026-06-22 06:44:49,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:44:49,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:44:49,658.658 INFO    ] No existing commands found in stream
[2026-06-22 06:44:54,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:44:54,673.673 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-22 06:44:56,591.591 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:44:56,593.593 INFO    ] Checking for system updates...
[2026-06-22 06:44:56,630.630 INFO    ] 200
[2026-06-22 06:44:56,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:44:56,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:44:56,690.690 INFO    ] No update needed
[2026-06-22 06:44:56,693.693 INFO    ] Checking for camera pi updates...
[2026-06-22 06:44:56,726.726 INFO    ] 200
[2026-06-22 06:44:56,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:44:56,769.769 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:44:56,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:44:56,880.880 INFO    ] No camera update needed
[2026-06-22 06:44:56,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:44:56,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:44:56,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:44:56,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:44:58,937.937 INFO    ] ================================================
[2026-06-22 06:44:58,953.953 INFO    ] Launching Daemon at Mon Jun 22 06:44:58 IST 2026
[2026-06-22 06:44:58,964.964 INFO    ] ================================================
[2026-06-22 06:44:59,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:44:59
[2026-06-22 06:45:00,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:45:00,327.327 INFO    ] Initializing speech engine...
[2026-06-22 06:45:00,335.335 INFO    ] 2026-06-22 06:45:00
[2026-06-22 06:45:00,598.598 INFO    ] 2026-06-22 06:45:00
[2026-06-22 06:45:00,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:45:00,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:45:00,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:45:01,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:45:01,064.064 INFO    ] time= 22/06/2026 06:45:01
[2026-06-22 06:45:01,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:45:01,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:45:01,205.205 INFO    ] No existing commands found in stream
[2026-06-22 06:45:06,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:45:06,220.220 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-22 06:45:08,096.096 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:45:08,099.099 INFO    ] Checking for system updates...
[2026-06-22 06:45:08,135.135 INFO    ] 200
[2026-06-22 06:45:08,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:45:08,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:45:08,194.194 INFO    ] No update needed
[2026-06-22 06:45:08,197.197 INFO    ] Checking for camera pi updates...
[2026-06-22 06:45:08,231.231 INFO    ] 200
[2026-06-22 06:45:08,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:45:08,275.275 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:45:08,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:45:08,359.359 INFO    ] No camera update needed
[2026-06-22 06:45:08,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:45:08,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:45:08,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:45:08,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:45:10,417.417 INFO    ] ================================================
[2026-06-22 06:45:10,433.433 INFO    ] Launching Daemon at Mon Jun 22 06:45:10 IST 2026
[2026-06-22 06:45:10,444.444 INFO    ] ================================================
[2026-06-22 06:45:11,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:45:11
[2026-06-22 06:45:11,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:45:11,966.966 INFO    ] Initializing speech engine...
[2026-06-22 06:45:11,980.980 INFO    ] 2026-06-22 06:45:11
[2026-06-22 06:45:12,296.296 INFO    ] 2026-06-22 06:45:12
[2026-06-22 06:45:12,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:45:12,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:45:12,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:45:12,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:45:12,806.806 INFO    ] time= 22/06/2026 06:45:12
[2026-06-22 06:45:12,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:45:12,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:45:12,961.961 INFO    ] No existing commands found in stream
[2026-06-22 06:45:17,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:45:17,980.980 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-22 06:45:19,768.768 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:45:19,769.769 INFO    ] Checking for system updates...
[2026-06-22 06:45:19,790.790 INFO    ] 200
[2026-06-22 06:45:19,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:45:19,823.823 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:45:19,824.824 INFO    ] No update needed
[2026-06-22 06:45:19,826.826 INFO    ] Checking for camera pi updates...
[2026-06-22 06:45:19,849.849 INFO    ] 200
[2026-06-22 06:45:19,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:45:19,894.894 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:45:19,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:45:19,979.979 INFO    ] No camera update needed
[2026-06-22 06:45:19,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:45:19,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:45:19,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:45:19,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:45:22,042.042 INFO    ] ================================================
[2026-06-22 06:45:22,058.058 INFO    ] Launching Daemon at Mon Jun 22 06:45:22 IST 2026
[2026-06-22 06:45:22,069.069 INFO    ] ================================================
[2026-06-22 06:45:22,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:45:22
[2026-06-22 06:45:23,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:45:23,413.413 INFO    ] Initializing speech engine...
[2026-06-22 06:45:23,419.419 INFO    ] 2026-06-22 06:45:23
[2026-06-22 06:45:23,665.665 INFO    ] 2026-06-22 06:45:23
[2026-06-22 06:45:23,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:45:23,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:45:23,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:45:24,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:45:24,037.037 INFO    ] time= 22/06/2026 06:45:24
[2026-06-22 06:45:24,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:45:24,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:45:24,213.213 INFO    ] No existing commands found in stream
[2026-06-22 06:45:29,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:45:29,246.246 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-22 06:45:29,781.781 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:45:29,783.783 INFO    ] Checking for system updates...
[2026-06-22 06:45:29,805.805 INFO    ] 200
[2026-06-22 06:45:29,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:45:29,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:45:29,843.843 INFO    ] No update needed
[2026-06-22 06:45:29,847.847 INFO    ] Checking for camera pi updates...
[2026-06-22 06:45:29,880.880 INFO    ] 200
[2026-06-22 06:45:29,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:45:29,924.924 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:45:30,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:45:30,009.009 INFO    ] No camera update needed
[2026-06-22 06:45:30,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:45:30,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:45:30,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:45:30,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:45:32,066.066 INFO    ] ================================================
[2026-06-22 06:45:32,083.083 INFO    ] Launching Daemon at Mon Jun 22 06:45:32 IST 2026
[2026-06-22 06:45:32,095.095 INFO    ] ================================================
[2026-06-22 06:45:32,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:45:32
[2026-06-22 06:45:33,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:45:33,730.730 INFO    ] Initializing speech engine...
[2026-06-22 06:45:33,739.739 INFO    ] 2026-06-22 06:45:33
[2026-06-22 06:45:33,993.993 INFO    ] 2026-06-22 06:45:33
[2026-06-22 06:45:34,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:45:34,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:45:34,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:45:34,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:45:34,437.437 INFO    ] time= 22/06/2026 06:45:34
[2026-06-22 06:45:34,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:45:34,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:45:34,602.602 INFO    ] No existing commands found in stream
[2026-06-22 06:45:39,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:45:39,617.617 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-22 06:45:41,258.258 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:45:41,260.260 INFO    ] Checking for system updates...
[2026-06-22 06:45:41,296.296 INFO    ] 200
[2026-06-22 06:45:41,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:45:41,353.353 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:45:41,355.355 INFO    ] No update needed
[2026-06-22 06:45:41,358.358 INFO    ] Checking for camera pi updates...
[2026-06-22 06:45:41,405.405 INFO    ] 200
[2026-06-22 06:45:41,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:45:41,448.448 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:45:41,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:45:41,629.629 INFO    ] No camera update needed
[2026-06-22 06:45:41,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:45:41,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:45:41,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:45:41,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:45:43,687.687 INFO    ] ================================================
[2026-06-22 06:45:43,702.702 INFO    ] Launching Daemon at Mon Jun 22 06:45:43 IST 2026
[2026-06-22 06:45:43,713.713 INFO    ] ================================================
[2026-06-22 06:45:44,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:45:44
[2026-06-22 06:45:45,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:45:45,356.356 INFO    ] Initializing speech engine...
[2026-06-22 06:45:45,368.368 INFO    ] 2026-06-22 06:45:45
[2026-06-22 06:45:45,641.641 INFO    ] 2026-06-22 06:45:45
[2026-06-22 06:45:45,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:45:45,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:45:45,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:45:46,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:45:46,030.030 INFO    ] time= 22/06/2026 06:45:46
[2026-06-22 06:45:46,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:45:46,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:45:46,140.140 INFO    ] No existing commands found in stream
[2026-06-22 06:45:51,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:45:51,155.155 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-22 06:45:54,512.512 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:45:54,514.514 INFO    ] Checking for system updates...
[2026-06-22 06:45:54,535.535 INFO    ] 200
[2026-06-22 06:45:54,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:45:54,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:45:54,586.586 INFO    ] No update needed
[2026-06-22 06:45:54,589.589 INFO    ] Checking for camera pi updates...
[2026-06-22 06:45:54,623.623 INFO    ] 200
[2026-06-22 06:45:54,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:45:54,667.667 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:45:54,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:45:54,764.764 INFO    ] No camera update needed
[2026-06-22 06:45:54,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:45:54,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:45:54,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:45:54,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:45:56,822.822 INFO    ] ================================================
[2026-06-22 06:45:56,838.838 INFO    ] Launching Daemon at Mon Jun 22 06:45:56 IST 2026
[2026-06-22 06:45:56,849.849 INFO    ] ================================================
[2026-06-22 06:45:57,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:45:57
[2026-06-22 06:45:58,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:45:58,280.280 INFO    ] Initializing speech engine...
[2026-06-22 06:45:58,299.299 INFO    ] 2026-06-22 06:45:58
[2026-06-22 06:45:58,549.549 INFO    ] 2026-06-22 06:45:58
[2026-06-22 06:45:58,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:45:58,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:45:58,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:45:58,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:45:58,918.918 INFO    ] time= 22/06/2026 06:45:58
[2026-06-22 06:45:58,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:45:58,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:45:59,098.098 INFO    ] No existing commands found in stream
[2026-06-22 06:46:04,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:46:04,114.114 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-22 06:46:04,921.921 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:46:04,924.924 INFO    ] Checking for system updates...
[2026-06-22 06:46:04,960.960 INFO    ] 200
[2026-06-22 06:46:04,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:46:05,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:46:05,017.017 INFO    ] No update needed
[2026-06-22 06:46:05,020.020 INFO    ] Checking for camera pi updates...
[2026-06-22 06:46:05,058.058 INFO    ] 200
[2026-06-22 06:46:05,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:46:05,102.102 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:46:05,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:46:05,186.186 INFO    ] No camera update needed
[2026-06-22 06:46:05,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:46:05,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:46:05,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:46:05,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:46:07,245.245 INFO    ] ================================================
[2026-06-22 06:46:07,260.260 INFO    ] Launching Daemon at Mon Jun 22 06:46:07 IST 2026
[2026-06-22 06:46:07,271.271 INFO    ] ================================================
[2026-06-22 06:46:07,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:46:07
[2026-06-22 06:46:08,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:46:08,692.692 INFO    ] Initializing speech engine...
[2026-06-22 06:46:08,702.702 INFO    ] 2026-06-22 06:46:08
[2026-06-22 06:46:08,955.955 INFO    ] 2026-06-22 06:46:08
[2026-06-22 06:46:08,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:46:09,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:46:09,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:46:09,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:46:09,417.417 INFO    ] time= 22/06/2026 06:46:09
[2026-06-22 06:46:09,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:46:09,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:46:09,562.562 INFO    ] No existing commands found in stream
[2026-06-22 06:46:14,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:46:14,577.577 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-22 06:46:18,808.808 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:46:18,810.810 INFO    ] Checking for system updates...
[2026-06-22 06:46:18,832.832 INFO    ] 200
[2026-06-22 06:46:18,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:46:18,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:46:18,867.867 INFO    ] No update needed
[2026-06-22 06:46:18,870.870 INFO    ] Checking for camera pi updates...
[2026-06-22 06:46:18,903.903 INFO    ] 200
[2026-06-22 06:46:18,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:46:18,947.947 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:46:18,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:46:18,999.999 INFO    ] No camera update needed
[2026-06-22 06:46:19,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:46:19,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:46:19,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:46:19,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:46:21,056.056 INFO    ] ================================================
[2026-06-22 06:46:21,071.071 INFO    ] Launching Daemon at Mon Jun 22 06:46:21 IST 2026
[2026-06-22 06:46:21,082.082 INFO    ] ================================================
[2026-06-22 06:46:21,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:46:21
[2026-06-22 06:46:22,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:46:22,618.618 INFO    ] Initializing speech engine...
[2026-06-22 06:46:22,627.627 INFO    ] 2026-06-22 06:46:22
[2026-06-22 06:46:22,952.952 INFO    ] 2026-06-22 06:46:22
[2026-06-22 06:46:23,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:46:23,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:46:23,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:46:23,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:46:23,474.474 INFO    ] time= 22/06/2026 06:46:23
[2026-06-22 06:46:23,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:46:23,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:46:23,616.616 INFO    ] No existing commands found in stream
[2026-06-22 06:46:28,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:46:28,645.645 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-22 06:46:32,829.829 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:46:32,832.832 INFO    ] Checking for system updates...
[2026-06-22 06:46:32,869.869 INFO    ] 200
[2026-06-22 06:46:32,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:46:32,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:46:32,928.928 INFO    ] No update needed
[2026-06-22 06:46:32,930.930 INFO    ] Checking for camera pi updates...
[2026-06-22 06:46:32,964.964 INFO    ] 200
[2026-06-22 06:46:32,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:46:33,007.007 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:46:33,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:46:33,094.094 INFO    ] No camera update needed
[2026-06-22 06:46:33,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:46:33,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:46:33,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:46:33,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:46:35,151.151 INFO    ] ================================================
[2026-06-22 06:46:35,166.166 INFO    ] Launching Daemon at Mon Jun 22 06:46:35 IST 2026
[2026-06-22 06:46:35,177.177 INFO    ] ================================================
[2026-06-22 06:46:35,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:46:35
[2026-06-22 06:46:36,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:46:36,584.584 INFO    ] Initializing speech engine...
[2026-06-22 06:46:36,593.593 INFO    ] 2026-06-22 06:46:36
[2026-06-22 06:46:36,869.869 INFO    ] 2026-06-22 06:46:36
[2026-06-22 06:46:36,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:46:37,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:46:37,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:46:37,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:46:37,249.249 INFO    ] time= 22/06/2026 06:46:37
[2026-06-22 06:46:37,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:46:37,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:46:37,324.324 INFO    ] No existing commands found in stream
[2026-06-22 06:46:42,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:46:42,340.340 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-22 06:46:43,662.662 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:46:43,664.664 INFO    ] Checking for system updates...
[2026-06-22 06:46:43,687.687 INFO    ] 200
[2026-06-22 06:46:43,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:46:43,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:46:43,720.720 INFO    ] No update needed
[2026-06-22 06:46:43,721.721 INFO    ] Checking for camera pi updates...
[2026-06-22 06:46:43,741.741 INFO    ] 200
[2026-06-22 06:46:43,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:46:43,768.768 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:46:43,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:46:43,855.855 INFO    ] No camera update needed
[2026-06-22 06:46:43,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:46:43,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:46:43,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:46:43,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:46:45,916.916 INFO    ] ================================================
[2026-06-22 06:46:45,939.939 INFO    ] Launching Daemon at Mon Jun 22 06:46:45 IST 2026
[2026-06-22 06:46:45,951.951 INFO    ] ================================================
[2026-06-22 06:46:46,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:46:46
[2026-06-22 06:46:47,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:46:47,441.441 INFO    ] Initializing speech engine...
[2026-06-22 06:46:47,449.449 INFO    ] 2026-06-22 06:46:47
[2026-06-22 06:46:47,736.736 INFO    ] 2026-06-22 06:46:47
[2026-06-22 06:46:47,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:46:47,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:46:47,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:46:48,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:46:48,123.123 INFO    ] time= 22/06/2026 06:46:48
[2026-06-22 06:46:48,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:46:48,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:46:48,203.203 INFO    ] No existing commands found in stream
[2026-06-22 06:46:53,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:46:53,219.219 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-22 06:46:54,535.535 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:46:54,536.536 INFO    ] Checking for system updates...
[2026-06-22 06:46:54,557.557 INFO    ] 200
[2026-06-22 06:46:54,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:46:54,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:46:54,606.606 INFO    ] No update needed
[2026-06-22 06:46:54,608.608 INFO    ] Checking for camera pi updates...
[2026-06-22 06:46:54,647.647 INFO    ] 200
[2026-06-22 06:46:54,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:46:54,689.689 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:46:54,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:46:54,770.770 INFO    ] No camera update needed
[2026-06-22 06:46:54,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:46:54,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:46:54,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:46:54,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:46:56,828.828 INFO    ] ================================================
[2026-06-22 06:46:56,845.845 INFO    ] Launching Daemon at Mon Jun 22 06:46:56 IST 2026
[2026-06-22 06:46:56,855.855 INFO    ] ================================================
[2026-06-22 06:46:57,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:46:57
[2026-06-22 06:46:57,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:46:58,225.225 INFO    ] Initializing speech engine...
[2026-06-22 06:46:58,235.235 INFO    ] 2026-06-22 06:46:58
[2026-06-22 06:46:58,496.496 INFO    ] 2026-06-22 06:46:58
[2026-06-22 06:46:58,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:46:58,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:46:58,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:46:58,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:46:58,962.962 INFO    ] time= 22/06/2026 06:46:58
[2026-06-22 06:46:59,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:46:59,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:46:59,104.104 INFO    ] No existing commands found in stream
[2026-06-22 06:47:04,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:47:04,119.119 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-22 06:47:04,893.893 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:47:04,895.895 INFO    ] Checking for system updates...
[2026-06-22 06:47:04,931.931 INFO    ] 200
[2026-06-22 06:47:04,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:47:04,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:47:04,990.990 INFO    ] No update needed
[2026-06-22 06:47:04,993.993 INFO    ] Checking for camera pi updates...
[2026-06-22 06:47:05,029.029 INFO    ] 200
[2026-06-22 06:47:05,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:47:05,072.072 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:47:05,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:47:05,141.141 INFO    ] No camera update needed
[2026-06-22 06:47:05,143.143 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:47:05,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:47:05,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:47:05,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:47:07,200.200 INFO    ] ================================================
[2026-06-22 06:47:07,216.216 INFO    ] Launching Daemon at Mon Jun 22 06:47:07 IST 2026
[2026-06-22 06:47:07,227.227 INFO    ] ================================================
[2026-06-22 06:47:07,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:47:07
[2026-06-22 06:47:08,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:47:08,650.650 INFO    ] Initializing speech engine...
[2026-06-22 06:47:08,675.675 INFO    ] 2026-06-22 06:47:08
[2026-06-22 06:47:08,944.944 INFO    ] 2026-06-22 06:47:08
[2026-06-22 06:47:08,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:47:09,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:47:09,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:47:09,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:47:09,308.308 INFO    ] time= 22/06/2026 06:47:09
[2026-06-22 06:47:09,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:47:09,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:47:09,429.429 INFO    ] No existing commands found in stream
[2026-06-22 06:47:14,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:47:14,449.449 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-22 06:47:15,248.248 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:47:15,250.250 INFO    ] Checking for system updates...
[2026-06-22 06:47:15,287.287 INFO    ] 200
[2026-06-22 06:47:15,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:47:15,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:47:15,345.345 INFO    ] No update needed
[2026-06-22 06:47:15,347.347 INFO    ] Checking for camera pi updates...
[2026-06-22 06:47:15,381.381 INFO    ] 200
[2026-06-22 06:47:15,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:47:15,427.427 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:47:15,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:47:15,510.510 INFO    ] No camera update needed
[2026-06-22 06:47:15,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:47:15,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:47:15,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:47:15,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:47:17,567.567 INFO    ] ================================================
[2026-06-22 06:47:17,582.582 INFO    ] Launching Daemon at Mon Jun 22 06:47:17 IST 2026
[2026-06-22 06:47:17,593.593 INFO    ] ================================================
[2026-06-22 06:47:18,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:47:18
[2026-06-22 06:47:18,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:47:18,983.983 INFO    ] Initializing speech engine...
[2026-06-22 06:47:19,005.005 INFO    ] 2026-06-22 06:47:18
[2026-06-22 06:47:19,274.274 INFO    ] 2026-06-22 06:47:19
[2026-06-22 06:47:19,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:47:19,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:47:19,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:47:19,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:47:19,679.679 INFO    ] time= 22/06/2026 06:47:19
[2026-06-22 06:47:19,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:47:19,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:47:19,762.762 INFO    ] No existing commands found in stream
[2026-06-22 06:47:24,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:47:24,795.795 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-22 06:47:25,997.997 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:47:25,998.998 INFO    ] Checking for system updates...
[2026-06-22 06:47:26,019.019 INFO    ] 200
[2026-06-22 06:47:26,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:47:26,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:47:26,051.051 INFO    ] No update needed
[2026-06-22 06:47:26,053.053 INFO    ] Checking for camera pi updates...
[2026-06-22 06:47:26,085.085 INFO    ] 200
[2026-06-22 06:47:26,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:47:26,128.128 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:47:26,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:47:26,209.209 INFO    ] No camera update needed
[2026-06-22 06:47:26,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:47:26,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:47:26,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:47:26,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:47:28,264.264 INFO    ] ================================================
[2026-06-22 06:47:28,280.280 INFO    ] Launching Daemon at Mon Jun 22 06:47:28 IST 2026
[2026-06-22 06:47:28,292.292 INFO    ] ================================================
[2026-06-22 06:47:28,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:47:28
[2026-06-22 06:47:29,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:47:29,642.642 INFO    ] Initializing speech engine...
[2026-06-22 06:47:29,659.659 INFO    ] 2026-06-22 06:47:29
[2026-06-22 06:47:29,928.928 INFO    ] 2026-06-22 06:47:29
[2026-06-22 06:47:29,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:47:30,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:47:30,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:47:30,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:47:30,318.318 INFO    ] time= 22/06/2026 06:47:30
[2026-06-22 06:47:30,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:47:30,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:47:30,412.412 INFO    ] No existing commands found in stream
[2026-06-22 06:47:35,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:47:35,424.424 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-22 06:47:35,874.874 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:47:35,877.877 INFO    ] Checking for system updates...
[2026-06-22 06:47:35,912.912 INFO    ] 200
[2026-06-22 06:47:35,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:47:35,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:47:35,960.960 INFO    ] No update needed
[2026-06-22 06:47:35,962.962 INFO    ] Checking for camera pi updates...
[2026-06-22 06:47:35,981.981 INFO    ] 200
[2026-06-22 06:47:35,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:47:36,005.005 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:47:36,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:47:36,082.082 INFO    ] No camera update needed
[2026-06-22 06:47:36,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:47:36,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:47:36,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:47:36,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:47:38,138.138 INFO    ] ================================================
[2026-06-22 06:47:38,153.153 INFO    ] Launching Daemon at Mon Jun 22 06:47:38 IST 2026
[2026-06-22 06:47:38,165.165 INFO    ] ================================================
[2026-06-22 06:47:38,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:47:38
[2026-06-22 06:47:39,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:47:39,563.563 INFO    ] Initializing speech engine...
[2026-06-22 06:47:39,571.571 INFO    ] 2026-06-22 06:47:39
[2026-06-22 06:47:39,845.845 INFO    ] 2026-06-22 06:47:39
[2026-06-22 06:47:39,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:47:40,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:47:40,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:47:40,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:47:40,347.347 INFO    ] time= 22/06/2026 06:47:40
[2026-06-22 06:47:40,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:47:40,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:47:40,518.518 INFO    ] No existing commands found in stream
[2026-06-22 06:47:45,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:47:45,553.553 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-22 06:47:46,738.738 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:47:46,741.741 INFO    ] Checking for system updates...
[2026-06-22 06:47:46,783.783 INFO    ] 200
[2026-06-22 06:47:46,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:47:46,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:47:46,856.856 INFO    ] No update needed
[2026-06-22 06:47:46,859.859 INFO    ] Checking for camera pi updates...
[2026-06-22 06:47:46,911.911 INFO    ] 200
[2026-06-22 06:47:46,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:47:46,964.964 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:47:47,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:47:47,152.152 INFO    ] No camera update needed
[2026-06-22 06:47:47,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:47:47,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:47:47,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:47:47,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:47:49,208.208 INFO    ] ================================================
[2026-06-22 06:47:49,224.224 INFO    ] Launching Daemon at Mon Jun 22 06:47:49 IST 2026
[2026-06-22 06:47:49,236.236 INFO    ] ================================================
[2026-06-22 06:47:49,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:47:49
[2026-06-22 06:47:50,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:47:50,753.753 INFO    ] Initializing speech engine...
[2026-06-22 06:47:50,759.759 INFO    ] 2026-06-22 06:47:50
[2026-06-22 06:47:51,048.048 INFO    ] 2026-06-22 06:47:51
[2026-06-22 06:47:51,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:47:51,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:47:51,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:47:52,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:47:52,517.517 INFO    ] time= 22/06/2026 06:47:52
[2026-06-22 06:47:52,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:47:52,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:47:52,594.594 INFO    ] No existing commands found in stream
[2026-06-22 06:47:57,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:47:57,611.611 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-22 06:48:00,410.410 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:48:00,412.412 INFO    ] Checking for system updates...
[2026-06-22 06:48:00,449.449 INFO    ] 200
[2026-06-22 06:48:00,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:48:00,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:48:00,515.515 INFO    ] No update needed
[2026-06-22 06:48:00,518.518 INFO    ] Checking for camera pi updates...
[2026-06-22 06:48:00,552.552 INFO    ] 200
[2026-06-22 06:48:00,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:48:00,597.597 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:48:00,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:48:00,685.685 INFO    ] No camera update needed
[2026-06-22 06:48:00,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:48:00,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:48:00,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:48:00,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:48:02,746.746 INFO    ] ================================================
[2026-06-22 06:48:02,773.773 INFO    ] Launching Daemon at Mon Jun 22 06:48:02 IST 2026
[2026-06-22 06:48:02,786.786 INFO    ] ================================================
[2026-06-22 06:48:03,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:48:03
[2026-06-22 06:48:04,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:48:04,292.292 INFO    ] Initializing speech engine...
[2026-06-22 06:48:04,300.300 INFO    ] 2026-06-22 06:48:04
[2026-06-22 06:48:04,588.588 INFO    ] 2026-06-22 06:48:04
[2026-06-22 06:48:04,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:48:04,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:48:04,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:48:04,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:48:05,041.041 INFO    ] time= 22/06/2026 06:48:05
[2026-06-22 06:48:05,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:48:05,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:48:05,190.190 INFO    ] No existing commands found in stream
[2026-06-22 06:48:10,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:48:10,228.228 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-22 06:48:13,207.207 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:48:13,209.209 INFO    ] Checking for system updates...
[2026-06-22 06:48:13,246.246 INFO    ] 200
[2026-06-22 06:48:13,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:48:13,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:48:13,303.303 INFO    ] No update needed
[2026-06-22 06:48:13,305.305 INFO    ] Checking for camera pi updates...
[2026-06-22 06:48:13,346.346 INFO    ] 200
[2026-06-22 06:48:13,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:48:13,388.388 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:48:13,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:48:13,489.489 INFO    ] No camera update needed
[2026-06-22 06:48:13,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:48:13,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:48:13,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:48:13,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:48:15,547.547 INFO    ] ================================================
[2026-06-22 06:48:15,567.567 INFO    ] Launching Daemon at Mon Jun 22 06:48:15 IST 2026
[2026-06-22 06:48:15,577.577 INFO    ] ================================================
[2026-06-22 06:48:16,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:48:16
[2026-06-22 06:48:16,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:48:16,957.957 INFO    ] Initializing speech engine...
[2026-06-22 06:48:16,966.966 INFO    ] 2026-06-22 06:48:16
[2026-06-22 06:48:17,221.221 INFO    ] 2026-06-22 06:48:17
[2026-06-22 06:48:17,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:48:17,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:48:17,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:48:17,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:48:17,570.570 INFO    ] time= 22/06/2026 06:48:17
[2026-06-22 06:48:17,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:48:17,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:48:17,665.665 INFO    ] No existing commands found in stream
[2026-06-22 06:48:22,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:48:22,680.680 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-22 06:48:25,367.367 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:48:25,368.368 INFO    ] Checking for system updates...
[2026-06-22 06:48:25,392.392 INFO    ] 200
[2026-06-22 06:48:25,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:48:25,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:48:25,451.451 INFO    ] No update needed
[2026-06-22 06:48:25,454.454 INFO    ] Checking for camera pi updates...
[2026-06-22 06:48:25,489.489 INFO    ] 200
[2026-06-22 06:48:25,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:48:25,532.532 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:48:25,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:48:25,642.642 INFO    ] No camera update needed
[2026-06-22 06:48:25,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:48:25,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:48:25,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:48:25,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:48:27,699.699 INFO    ] ================================================
[2026-06-22 06:48:27,714.714 INFO    ] Launching Daemon at Mon Jun 22 06:48:27 IST 2026
[2026-06-22 06:48:27,726.726 INFO    ] ================================================
[2026-06-22 06:48:28,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:48:28
[2026-06-22 06:48:29,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:48:29,301.301 INFO    ] Initializing speech engine...
[2026-06-22 06:48:29,311.311 INFO    ] 2026-06-22 06:48:29
[2026-06-22 06:48:29,580.580 INFO    ] 2026-06-22 06:48:29
[2026-06-22 06:48:29,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:48:29,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:48:29,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:48:30,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:48:30,078.078 INFO    ] time= 22/06/2026 06:48:30
[2026-06-22 06:48:30,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:48:30,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:48:30,257.257 INFO    ] No existing commands found in stream
[2026-06-22 06:48:35,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:48:35,283.283 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-22 06:48:37,365.365 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:48:37,368.368 INFO    ] Checking for system updates...
[2026-06-22 06:48:37,407.407 INFO    ] 200
[2026-06-22 06:48:37,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:48:37,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:48:37,466.466 INFO    ] No update needed
[2026-06-22 06:48:37,468.468 INFO    ] Checking for camera pi updates...
[2026-06-22 06:48:37,503.503 INFO    ] 200
[2026-06-22 06:48:37,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:48:37,546.546 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:48:37,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:48:37,642.642 INFO    ] No camera update needed
[2026-06-22 06:48:37,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:48:37,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:48:37,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:48:37,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:48:39,700.700 INFO    ] ================================================
[2026-06-22 06:48:39,716.716 INFO    ] Launching Daemon at Mon Jun 22 06:48:39 IST 2026
[2026-06-22 06:48:39,727.727 INFO    ] ================================================
[2026-06-22 06:48:40,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:48:40
[2026-06-22 06:48:40,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:48:41,208.208 INFO    ] Initializing speech engine...
[2026-06-22 06:48:41,216.216 INFO    ] 2026-06-22 06:48:41
[2026-06-22 06:48:41,499.499 INFO    ] 2026-06-22 06:48:41
[2026-06-22 06:48:41,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:48:41,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:48:41,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:48:41,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:48:42,024.024 INFO    ] time= 22/06/2026 06:48:41
[2026-06-22 06:48:42,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:48:42,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:48:42,181.181 INFO    ] No existing commands found in stream
[2026-06-22 06:48:47,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:48:47,205.205 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-22 06:48:48,546.546 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:48:48,548.548 INFO    ] Checking for system updates...
[2026-06-22 06:48:48,569.569 INFO    ] 200
[2026-06-22 06:48:48,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:48:48,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:48:48,610.610 INFO    ] No update needed
[2026-06-22 06:48:48,613.613 INFO    ] Checking for camera pi updates...
[2026-06-22 06:48:48,648.648 INFO    ] 200
[2026-06-22 06:48:48,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:48:48,691.691 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:48:48,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:48:48,788.788 INFO    ] No camera update needed
[2026-06-22 06:48:48,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:48:48,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:48:48,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:48:48,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:48:50,847.847 INFO    ] ================================================
[2026-06-22 06:48:50,863.863 INFO    ] Launching Daemon at Mon Jun 22 06:48:50 IST 2026
[2026-06-22 06:48:50,874.874 INFO    ] ================================================
[2026-06-22 06:48:51,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:48:51
[2026-06-22 06:48:51,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:48:52,205.205 INFO    ] Initializing speech engine...
[2026-06-22 06:48:52,214.214 INFO    ] 2026-06-22 06:48:52
[2026-06-22 06:48:52,464.464 INFO    ] 2026-06-22 06:48:52
[2026-06-22 06:48:52,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:48:53,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:48:53,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:48:53,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:48:53,833.833 INFO    ] time= 22/06/2026 06:48:53
[2026-06-22 06:48:53,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:48:53,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:48:53,891.891 INFO    ] No existing commands found in stream
[2026-06-22 06:48:58,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:48:58,905.905 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-22 06:49:01,177.177 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:49:01,179.179 INFO    ] Checking for system updates...
[2026-06-22 06:49:01,218.218 INFO    ] 200
[2026-06-22 06:49:01,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:49:01,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:49:01,277.277 INFO    ] No update needed
[2026-06-22 06:49:01,279.279 INFO    ] Checking for camera pi updates...
[2026-06-22 06:49:01,312.312 INFO    ] 200
[2026-06-22 06:49:01,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:49:01,355.355 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:49:01,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:49:01,451.451 INFO    ] No camera update needed
[2026-06-22 06:49:01,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:49:01,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:49:01,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:49:01,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:49:03,512.512 INFO    ] ================================================
[2026-06-22 06:49:03,528.528 INFO    ] Launching Daemon at Mon Jun 22 06:49:03 IST 2026
[2026-06-22 06:49:03,542.542 INFO    ] ================================================
[2026-06-22 06:49:04,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:49:04
[2026-06-22 06:49:04,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:49:04,958.958 INFO    ] Initializing speech engine...
[2026-06-22 06:49:04,981.981 INFO    ] 2026-06-22 06:49:04
[2026-06-22 06:49:05,232.232 INFO    ] 2026-06-22 06:49:05
[2026-06-22 06:49:05,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:49:05,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:49:05,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:49:05,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:49:05,592.592 INFO    ] time= 22/06/2026 06:49:05
[2026-06-22 06:49:05,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:49:05,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:49:05,687.687 INFO    ] No existing commands found in stream
[2026-06-22 06:49:10,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:49:10,702.702 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-22 06:49:13,320.320 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:49:13,323.323 INFO    ] Checking for system updates...
[2026-06-22 06:49:13,359.359 INFO    ] 200
[2026-06-22 06:49:13,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:49:13,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:49:13,416.416 INFO    ] No update needed
[2026-06-22 06:49:13,419.419 INFO    ] Checking for camera pi updates...
[2026-06-22 06:49:13,452.452 INFO    ] 200
[2026-06-22 06:49:13,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:49:13,497.497 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:49:13,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:49:13,582.582 INFO    ] No camera update needed
[2026-06-22 06:49:13,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:49:13,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:49:13,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:49:13,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:49:15,637.637 INFO    ] ================================================
[2026-06-22 06:49:15,653.653 INFO    ] Launching Daemon at Mon Jun 22 06:49:15 IST 2026
[2026-06-22 06:49:15,664.664 INFO    ] ================================================
[2026-06-22 06:49:16,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:49:16
[2026-06-22 06:49:16,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:49:17,306.306 INFO    ] Initializing speech engine...
[2026-06-22 06:49:17,316.316 INFO    ] 2026-06-22 06:49:17
[2026-06-22 06:49:17,591.591 INFO    ] 2026-06-22 06:49:17
[2026-06-22 06:49:17,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:49:17,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:49:17,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:49:18,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:49:18,035.035 INFO    ] time= 22/06/2026 06:49:18
[2026-06-22 06:49:18,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:49:18,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:49:18,220.220 INFO    ] No existing commands found in stream
[2026-06-22 06:49:23,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:49:23,237.237 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-22 06:49:27,389.389 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:49:27,391.391 INFO    ] Checking for system updates...
[2026-06-22 06:49:27,412.412 INFO    ] 200
[2026-06-22 06:49:27,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:49:27,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:49:27,451.451 INFO    ] No update needed
[2026-06-22 06:49:27,454.454 INFO    ] Checking for camera pi updates...
[2026-06-22 06:49:27,488.488 INFO    ] 200
[2026-06-22 06:49:27,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:49:27,535.535 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:49:27,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:49:27,620.620 INFO    ] No camera update needed
[2026-06-22 06:49:27,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:49:27,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:49:27,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:49:27,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:49:29,676.676 INFO    ] ================================================
[2026-06-22 06:49:29,692.692 INFO    ] Launching Daemon at Mon Jun 22 06:49:29 IST 2026
[2026-06-22 06:49:29,702.702 INFO    ] ================================================
[2026-06-22 06:49:30,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:49:30
[2026-06-22 06:49:30,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:49:31,195.195 INFO    ] Initializing speech engine...
[2026-06-22 06:49:31,209.209 INFO    ] 2026-06-22 06:49:31
[2026-06-22 06:49:31,495.495 INFO    ] 2026-06-22 06:49:31
[2026-06-22 06:49:31,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:49:31,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:49:31,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:49:31,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:49:31,953.953 INFO    ] time= 22/06/2026 06:49:31
[2026-06-22 06:49:31,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:49:32,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:49:32,128.128 INFO    ] No existing commands found in stream
[2026-06-22 06:49:37,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:49:37,143.143 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-22 06:49:37,519.519 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:49:37,522.522 INFO    ] Checking for system updates...
[2026-06-22 06:49:37,565.565 INFO    ] 200
[2026-06-22 06:49:37,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:49:37,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:49:37,643.643 INFO    ] No update needed
[2026-06-22 06:49:37,646.646 INFO    ] Checking for camera pi updates...
[2026-06-22 06:49:37,684.684 INFO    ] 200
[2026-06-22 06:49:37,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:49:37,728.728 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:49:37,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:49:37,820.820 INFO    ] No camera update needed
[2026-06-22 06:49:37,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:49:37,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:49:37,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:49:37,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:49:39,876.876 INFO    ] ================================================
[2026-06-22 06:49:39,891.891 INFO    ] Launching Daemon at Mon Jun 22 06:49:39 IST 2026
[2026-06-22 06:49:39,903.903 INFO    ] ================================================
[2026-06-22 06:49:40,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:49:40
[2026-06-22 06:49:41,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:49:41,457.457 INFO    ] Initializing speech engine...
[2026-06-22 06:49:41,468.468 INFO    ] 2026-06-22 06:49:41
[2026-06-22 06:49:41,730.730 INFO    ] 2026-06-22 06:49:41
[2026-06-22 06:49:41,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:49:42,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:49:42,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:49:42,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:49:42,222.222 INFO    ] time= 22/06/2026 06:49:42
[2026-06-22 06:49:42,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:49:42,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:49:42,406.406 INFO    ] No existing commands found in stream
[2026-06-22 06:49:47,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:49:47,441.441 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-22 06:49:47,961.961 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:49:47,964.964 INFO    ] Checking for system updates...
[2026-06-22 06:49:48,007.007 INFO    ] 200
[2026-06-22 06:49:48,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:49:48,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:49:48,079.079 INFO    ] No update needed
[2026-06-22 06:49:48,082.082 INFO    ] Checking for camera pi updates...
[2026-06-22 06:49:48,122.122 INFO    ] 200
[2026-06-22 06:49:48,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:49:48,173.173 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:49:48,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:49:48,353.353 INFO    ] No camera update needed
[2026-06-22 06:49:48,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:49:48,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:49:48,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:49:48,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:49:50,414.414 INFO    ] ================================================
[2026-06-22 06:49:50,431.431 INFO    ] Launching Daemon at Mon Jun 22 06:49:50 IST 2026
[2026-06-22 06:49:50,442.442 INFO    ] ================================================
[2026-06-22 06:49:51,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:49:51
[2026-06-22 06:49:51,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:49:51,997.997 INFO    ] Initializing speech engine...
[2026-06-22 06:49:52,005.005 INFO    ] 2026-06-22 06:49:51
[2026-06-22 06:49:52,292.292 INFO    ] 2026-06-22 06:49:52
[2026-06-22 06:49:52,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:49:53,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:49:53,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:49:53,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:49:53,742.742 INFO    ] time= 22/06/2026 06:49:53
[2026-06-22 06:49:53,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:49:53,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:49:53,808.808 INFO    ] No existing commands found in stream
[2026-06-22 06:49:58,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:49:58,824.824 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-22 06:50:00,258.258 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:50:00,260.260 INFO    ] Checking for system updates...
[2026-06-22 06:50:00,281.281 INFO    ] 200
[2026-06-22 06:50:00,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:50:00,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:50:00,317.317 INFO    ] No update needed
[2026-06-22 06:50:00,318.318 INFO    ] Checking for camera pi updates...
[2026-06-22 06:50:00,344.344 INFO    ] 200
[2026-06-22 06:50:00,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:50:00,390.390 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:50:00,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:50:00,497.497 INFO    ] No camera update needed
[2026-06-22 06:50:00,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:50:00,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:50:00,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:50:00,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:50:02,564.564 INFO    ] ================================================
[2026-06-22 06:50:02,586.586 INFO    ] Launching Daemon at Mon Jun 22 06:50:02 IST 2026
[2026-06-22 06:50:02,604.604 INFO    ] ================================================
[2026-06-22 06:50:03,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:50:03
[2026-06-22 06:50:03,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:50:04,246.246 INFO    ] Initializing speech engine...
[2026-06-22 06:50:04,255.255 INFO    ] 2026-06-22 06:50:04
[2026-06-22 06:50:04,518.518 INFO    ] 2026-06-22 06:50:04
[2026-06-22 06:50:04,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:50:04,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:50:04,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:50:05,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:50:05,088.088 INFO    ] time= 22/06/2026 06:50:05
[2026-06-22 06:50:05,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:50:05,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:50:05,216.216 INFO    ] No existing commands found in stream
[2026-06-22 06:50:10,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:50:10,241.241 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-22 06:50:14,485.485 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:50:14,487.487 INFO    ] Checking for system updates...
[2026-06-22 06:50:14,524.524 INFO    ] 200
[2026-06-22 06:50:14,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:50:14,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:50:14,583.583 INFO    ] No update needed
[2026-06-22 06:50:14,586.586 INFO    ] Checking for camera pi updates...
[2026-06-22 06:50:14,626.626 INFO    ] 200
[2026-06-22 06:50:14,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:50:14,669.669 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:50:14,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:50:14,722.722 INFO    ] No camera update needed
[2026-06-22 06:50:14,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:50:14,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:50:14,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:50:14,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:50:16,779.779 INFO    ] ================================================
[2026-06-22 06:50:16,794.794 INFO    ] Launching Daemon at Mon Jun 22 06:50:16 IST 2026
[2026-06-22 06:50:16,806.806 INFO    ] ================================================
[2026-06-22 06:50:17,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:50:17
[2026-06-22 06:50:18,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:50:18,335.335 INFO    ] Initializing speech engine...
[2026-06-22 06:50:18,347.347 INFO    ] 2026-06-22 06:50:18
[2026-06-22 06:50:18,627.627 INFO    ] 2026-06-22 06:50:18
[2026-06-22 06:50:18,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:50:18,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:50:18,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:50:19,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:50:19,103.103 INFO    ] time= 22/06/2026 06:50:19
[2026-06-22 06:50:19,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:50:19,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:50:19,282.282 INFO    ] No existing commands found in stream
[2026-06-22 06:50:24,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:50:24,318.318 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-22 06:50:25,127.127 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:50:25,129.129 INFO    ] Checking for system updates...
[2026-06-22 06:50:25,167.167 INFO    ] 200
[2026-06-22 06:50:25,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:50:25,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:50:25,235.235 INFO    ] No update needed
[2026-06-22 06:50:25,238.238 INFO    ] Checking for camera pi updates...
[2026-06-22 06:50:25,273.273 INFO    ] 200
[2026-06-22 06:50:25,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:50:25,323.323 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:50:25,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:50:25,431.431 INFO    ] No camera update needed
[2026-06-22 06:50:25,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:50:25,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:50:25,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:50:25,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:50:27,491.491 INFO    ] ================================================
[2026-06-22 06:50:27,507.507 INFO    ] Launching Daemon at Mon Jun 22 06:50:27 IST 2026
[2026-06-22 06:50:27,518.518 INFO    ] ================================================
[2026-06-22 06:50:28,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:50:28
[2026-06-22 06:50:28,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:50:28,976.976 INFO    ] Initializing speech engine...
[2026-06-22 06:50:28,986.986 INFO    ] 2026-06-22 06:50:28
[2026-06-22 06:50:29,247.247 INFO    ] 2026-06-22 06:50:29
[2026-06-22 06:50:29,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:50:29,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:50:29,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:50:29,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:50:29,716.716 INFO    ] time= 22/06/2026 06:50:29
[2026-06-22 06:50:29,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:50:29,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:50:29,925.925 INFO    ] No existing commands found in stream
[2026-06-22 06:50:34,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:50:34,958.958 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-22 06:50:36,253.253 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:50:36,256.256 INFO    ] Checking for system updates...
[2026-06-22 06:50:36,292.292 INFO    ] 200
[2026-06-22 06:50:36,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:50:36,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:50:36,352.352 INFO    ] No update needed
[2026-06-22 06:50:36,354.354 INFO    ] Checking for camera pi updates...
[2026-06-22 06:50:36,395.395 INFO    ] 200
[2026-06-22 06:50:36,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:50:36,440.440 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:50:36,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:50:36,523.523 INFO    ] No camera update needed
[2026-06-22 06:50:36,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:50:36,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:50:36,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:50:36,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:50:38,580.580 INFO    ] ================================================
[2026-06-22 06:50:38,596.596 INFO    ] Launching Daemon at Mon Jun 22 06:50:38 IST 2026
[2026-06-22 06:50:38,607.607 INFO    ] ================================================
[2026-06-22 06:50:39,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:50:39
[2026-06-22 06:50:39,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:50:40,063.063 INFO    ] Initializing speech engine...
[2026-06-22 06:50:40,071.071 INFO    ] 2026-06-22 06:50:40
[2026-06-22 06:50:40,371.371 INFO    ] 2026-06-22 06:50:40
[2026-06-22 06:50:40,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:50:40,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:50:40,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:50:40,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:50:40,759.759 INFO    ] time= 22/06/2026 06:50:40
[2026-06-22 06:50:40,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:50:40,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:50:40,841.841 INFO    ] No existing commands found in stream
[2026-06-22 06:50:45,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:50:45,879.879 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-22 06:50:50,022.022 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:50:50,024.024 INFO    ] Checking for system updates...
[2026-06-22 06:50:50,063.063 INFO    ] 200
[2026-06-22 06:50:50,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:50:50,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:50:50,132.132 INFO    ] No update needed
[2026-06-22 06:50:50,135.135 INFO    ] Checking for camera pi updates...
[2026-06-22 06:50:50,170.170 INFO    ] 200
[2026-06-22 06:50:50,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:50:50,220.220 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:50:50,313.313 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:50:50,316.316 INFO    ] No camera update needed
[2026-06-22 06:50:50,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:50:50,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:50:50,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:50:50,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:50:52,377.377 INFO    ] ================================================
[2026-06-22 06:50:52,392.392 INFO    ] Launching Daemon at Mon Jun 22 06:50:52 IST 2026
[2026-06-22 06:50:52,403.403 INFO    ] ================================================
[2026-06-22 06:50:52,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:50:52
[2026-06-22 06:50:53,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:50:53,779.779 INFO    ] Initializing speech engine...
[2026-06-22 06:50:53,786.786 INFO    ] 2026-06-22 06:50:53
[2026-06-22 06:50:54,047.047 INFO    ] 2026-06-22 06:50:54
[2026-06-22 06:50:54,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:50:54,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:50:54,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:50:54,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:50:54,522.522 INFO    ] time= 22/06/2026 06:50:54
[2026-06-22 06:50:54,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:50:54,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:50:54,718.718 INFO    ] No existing commands found in stream
[2026-06-22 06:50:59,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:50:59,746.746 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-22 06:51:01,888.888 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:51:01,892.892 INFO    ] Checking for system updates...
[2026-06-22 06:51:01,945.945 INFO    ] 200
[2026-06-22 06:51:01,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:51:02,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:51:02,025.025 INFO    ] No update needed
[2026-06-22 06:51:02,028.028 INFO    ] Checking for camera pi updates...
[2026-06-22 06:51:02,067.067 INFO    ] 200
[2026-06-22 06:51:02,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:51:02,118.118 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:51:02,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:51:02,211.211 INFO    ] No camera update needed
[2026-06-22 06:51:02,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:51:02,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:51:02,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:51:02,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:51:04,273.273 INFO    ] ================================================
[2026-06-22 06:51:04,289.289 INFO    ] Launching Daemon at Mon Jun 22 06:51:04 IST 2026
[2026-06-22 06:51:04,300.300 INFO    ] ================================================
[2026-06-22 06:51:04,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:51:04
[2026-06-22 06:51:05,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:51:05,883.883 INFO    ] Initializing speech engine...
[2026-06-22 06:51:05,887.887 INFO    ] 2026-06-22 06:51:05
[2026-06-22 06:51:06,130.130 INFO    ] 2026-06-22 06:51:06
[2026-06-22 06:51:06,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:51:06,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:51:06,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:51:06,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:51:06,511.511 INFO    ] time= 22/06/2026 06:51:06
[2026-06-22 06:51:06,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:51:06,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:51:06,575.575 INFO    ] No existing commands found in stream
[2026-06-22 06:51:11,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:51:11,591.591 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-22 06:51:13,806.806 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:51:13,809.809 INFO    ] Checking for system updates...
[2026-06-22 06:51:13,845.845 INFO    ] 200
[2026-06-22 06:51:13,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:51:13,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:51:13,903.903 INFO    ] No update needed
[2026-06-22 06:51:13,905.905 INFO    ] Checking for camera pi updates...
[2026-06-22 06:51:13,944.944 INFO    ] 200
[2026-06-22 06:51:13,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:51:13,988.988 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:51:14,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:51:14,046.046 INFO    ] No camera update needed
[2026-06-22 06:51:14,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:51:14,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:51:14,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:51:14,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:51:16,102.102 INFO    ] ================================================
[2026-06-22 06:51:16,118.118 INFO    ] Launching Daemon at Mon Jun 22 06:51:16 IST 2026
[2026-06-22 06:51:16,129.129 INFO    ] ================================================
[2026-06-22 06:51:16,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:51:16
[2026-06-22 06:51:17,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:51:17,553.553 INFO    ] Initializing speech engine...
[2026-06-22 06:51:17,558.558 INFO    ] 2026-06-22 06:51:17
[2026-06-22 06:51:17,793.793 INFO    ] 2026-06-22 06:51:17
[2026-06-22 06:51:17,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:51:17,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:51:18,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:51:18,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:51:18,169.169 INFO    ] time= 22/06/2026 06:51:18
[2026-06-22 06:51:18,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:51:18,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:51:18,247.247 INFO    ] No existing commands found in stream
[2026-06-22 06:51:23,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:51:23,261.261 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-22 06:51:23,972.972 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:51:23,975.975 INFO    ] Checking for system updates...
[2026-06-22 06:51:24,011.011 INFO    ] 200
[2026-06-22 06:51:24,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:51:24,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:51:24,069.069 INFO    ] No update needed
[2026-06-22 06:51:24,071.071 INFO    ] Checking for camera pi updates...
[2026-06-22 06:51:24,105.105 INFO    ] 200
[2026-06-22 06:51:24,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:51:24,149.149 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:51:24,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:51:24,199.199 INFO    ] No camera update needed
[2026-06-22 06:51:24,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:51:24,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:51:24,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:51:24,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:51:26,247.247 INFO    ] ================================================
[2026-06-22 06:51:26,262.262 INFO    ] Launching Daemon at Mon Jun 22 06:51:26 IST 2026
[2026-06-22 06:51:26,273.273 INFO    ] ================================================
[2026-06-22 06:51:26,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:51:26
[2026-06-22 06:51:27,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:51:27,702.702 INFO    ] Initializing speech engine...
[2026-06-22 06:51:27,709.709 INFO    ] 2026-06-22 06:51:27
[2026-06-22 06:51:28,012.012 INFO    ] 2026-06-22 06:51:27
[2026-06-22 06:51:28,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:51:28,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:51:28,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:51:28,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:51:28,372.372 INFO    ] time= 22/06/2026 06:51:28
[2026-06-22 06:51:28,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:51:28,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:51:28,449.449 INFO    ] No existing commands found in stream
[2026-06-22 06:51:33,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:51:33,465.465 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-22 06:51:36,811.811 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:51:36,813.813 INFO    ] Checking for system updates...
[2026-06-22 06:51:36,850.850 INFO    ] 200
[2026-06-22 06:51:36,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:51:36,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:51:36,915.915 INFO    ] No update needed
[2026-06-22 06:51:36,918.918 INFO    ] Checking for camera pi updates...
[2026-06-22 06:51:36,956.956 INFO    ] 200
[2026-06-22 06:51:36,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:51:36,999.999 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:51:37,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:51:37,082.082 INFO    ] No camera update needed
[2026-06-22 06:51:37,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:51:37,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:51:37,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:51:37,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:51:39,139.139 INFO    ] ================================================
[2026-06-22 06:51:39,154.154 INFO    ] Launching Daemon at Mon Jun 22 06:51:39 IST 2026
[2026-06-22 06:51:39,165.165 INFO    ] ================================================
[2026-06-22 06:51:39,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:51:39
[2026-06-22 06:51:40,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:51:40,655.655 INFO    ] Initializing speech engine...
[2026-06-22 06:51:40,664.664 INFO    ] 2026-06-22 06:51:40
[2026-06-22 06:51:40,937.937 INFO    ] 2026-06-22 06:51:40
[2026-06-22 06:51:40,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:51:41,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:51:41,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:51:41,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:51:41,418.418 INFO    ] time= 22/06/2026 06:51:41
[2026-06-22 06:51:41,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:51:41,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:51:41,572.572 INFO    ] No existing commands found in stream
[2026-06-22 06:51:46,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:51:46,607.607 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-22 06:51:46,975.975 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:51:46,977.977 INFO    ] Checking for system updates...
[2026-06-22 06:51:46,998.998 INFO    ] 200
[2026-06-22 06:51:46,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:51:47,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:51:47,034.034 INFO    ] No update needed
[2026-06-22 06:51:47,035.035 INFO    ] Checking for camera pi updates...
[2026-06-22 06:51:47,055.055 INFO    ] 200
[2026-06-22 06:51:47,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:51:47,081.081 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:51:47,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:51:47,139.139 INFO    ] No camera update needed
[2026-06-22 06:51:47,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:51:47,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:51:47,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:51:47,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:51:49,201.201 INFO    ] ================================================
[2026-06-22 06:51:49,219.219 INFO    ] Launching Daemon at Mon Jun 22 06:51:49 IST 2026
[2026-06-22 06:51:49,231.231 INFO    ] ================================================
[2026-06-22 06:51:49,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:51:49
[2026-06-22 06:51:50,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:51:50,902.902 INFO    ] Initializing speech engine...
[2026-06-22 06:51:50,911.911 INFO    ] 2026-06-22 06:51:50
[2026-06-22 06:51:51,202.202 INFO    ] 2026-06-22 06:51:51
[2026-06-22 06:51:51,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:51:51,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:51:51,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:51:52,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:51:52,101.101 INFO    ] time= 22/06/2026 06:51:52
[2026-06-22 06:51:52,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:51:52,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:51:52,307.307 INFO    ] No existing commands found in stream
[2026-06-22 06:51:57,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:51:57,336.336 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-22 06:51:59,545.545 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:51:59,547.547 INFO    ] Checking for system updates...
[2026-06-22 06:51:59,568.568 INFO    ] 200
[2026-06-22 06:51:59,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:51:59,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:51:59,607.607 INFO    ] No update needed
[2026-06-22 06:51:59,609.609 INFO    ] Checking for camera pi updates...
[2026-06-22 06:51:59,644.644 INFO    ] 200
[2026-06-22 06:51:59,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:51:59,694.694 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:51:59,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:51:59,876.876 INFO    ] No camera update needed
[2026-06-22 06:51:59,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:51:59,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:51:59,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:51:59,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:52:01,952.952 INFO    ] ================================================
[2026-06-22 06:52:01,988.988 INFO    ] Launching Daemon at Mon Jun 22 06:52:01 IST 2026
[2026-06-22 06:52:02,008.008 INFO    ] ================================================
[2026-06-22 06:52:02,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:52:02
[2026-06-22 06:52:03,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:52:03,806.806 INFO    ] Initializing speech engine...
[2026-06-22 06:52:03,820.820 INFO    ] 2026-06-22 06:52:03
[2026-06-22 06:52:04,128.128 INFO    ] 2026-06-22 06:52:04
[2026-06-22 06:52:04,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:52:04,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:52:04,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:52:04,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:52:04,559.559 INFO    ] time= 22/06/2026 06:52:04
[2026-06-22 06:52:04,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:52:04,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:52:04,702.702 INFO    ] No existing commands found in stream
[2026-06-22 06:52:09,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:52:09,718.718 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-22 06:52:11,195.195 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:52:11,197.197 INFO    ] Checking for system updates...
[2026-06-22 06:52:11,218.218 INFO    ] 200
[2026-06-22 06:52:11,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:52:11,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:52:11,251.251 INFO    ] No update needed
[2026-06-22 06:52:11,252.252 INFO    ] Checking for camera pi updates...
[2026-06-22 06:52:11,272.272 INFO    ] 200
[2026-06-22 06:52:11,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:52:11,297.297 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:52:11,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:52:11,380.380 INFO    ] No camera update needed
[2026-06-22 06:52:11,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:52:11,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:52:11,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:52:11,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:52:13,439.439 INFO    ] ================================================
[2026-06-22 06:52:13,455.455 INFO    ] Launching Daemon at Mon Jun 22 06:52:13 IST 2026
[2026-06-22 06:52:13,465.465 INFO    ] ================================================
[2026-06-22 06:52:14,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:52:14
[2026-06-22 06:52:14,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:52:14,979.979 INFO    ] Initializing speech engine...
[2026-06-22 06:52:14,988.988 INFO    ] 2026-06-22 06:52:14
[2026-06-22 06:52:15,279.279 INFO    ] 2026-06-22 06:52:15
[2026-06-22 06:52:15,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:52:15,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:52:15,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:52:15,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:52:15,783.783 INFO    ] time= 22/06/2026 06:52:15
[2026-06-22 06:52:15,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:52:15,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:52:15,897.897 INFO    ] No existing commands found in stream
[2026-06-22 06:52:20,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:52:20,913.913 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-22 06:52:24,059.059 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:52:24,061.061 INFO    ] Checking for system updates...
[2026-06-22 06:52:24,082.082 INFO    ] 200
[2026-06-22 06:52:24,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:52:24,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:52:24,118.118 INFO    ] No update needed
[2026-06-22 06:52:24,121.121 INFO    ] Checking for camera pi updates...
[2026-06-22 06:52:24,155.155 INFO    ] 200
[2026-06-22 06:52:24,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:52:24,200.200 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:52:24,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:52:24,293.293 INFO    ] No camera update needed
[2026-06-22 06:52:24,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:52:24,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:52:24,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:52:24,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:52:26,353.353 INFO    ] ================================================
[2026-06-22 06:52:26,368.368 INFO    ] Launching Daemon at Mon Jun 22 06:52:26 IST 2026
[2026-06-22 06:52:26,380.380 INFO    ] ================================================
[2026-06-22 06:52:26,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:52:26
[2026-06-22 06:52:27,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:52:27,696.696 INFO    ] Initializing speech engine...
[2026-06-22 06:52:27,702.702 INFO    ] 2026-06-22 06:52:27
[2026-06-22 06:52:27,993.993 INFO    ] 2026-06-22 06:52:27
[2026-06-22 06:52:28,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:52:28,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:52:28,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:52:28,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:52:28,384.384 INFO    ] time= 22/06/2026 06:52:28
[2026-06-22 06:52:28,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:52:28,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:52:28,492.492 INFO    ] No existing commands found in stream
[2026-06-22 06:52:33,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:52:33,507.507 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-22 06:52:35,486.486 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:52:35,489.489 INFO    ] Checking for system updates...
[2026-06-22 06:52:35,525.525 INFO    ] 200
[2026-06-22 06:52:35,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:52:35,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:52:35,585.585 INFO    ] No update needed
[2026-06-22 06:52:35,587.587 INFO    ] Checking for camera pi updates...
[2026-06-22 06:52:35,621.621 INFO    ] 200
[2026-06-22 06:52:35,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:52:35,668.668 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:52:35,760.760 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:52:35,762.762 INFO    ] No camera update needed
[2026-06-22 06:52:35,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:52:35,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:52:35,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:52:35,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:52:37,820.820 INFO    ] ================================================
[2026-06-22 06:52:37,836.836 INFO    ] Launching Daemon at Mon Jun 22 06:52:37 IST 2026
[2026-06-22 06:52:37,846.846 INFO    ] ================================================
[2026-06-22 06:52:38,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:52:38
[2026-06-22 06:52:39,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:52:39,347.347 INFO    ] Initializing speech engine...
[2026-06-22 06:52:39,355.355 INFO    ] 2026-06-22 06:52:39
[2026-06-22 06:52:39,624.624 INFO    ] 2026-06-22 06:52:39
[2026-06-22 06:52:39,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:52:39,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:52:39,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:52:40,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:52:40,083.083 INFO    ] time= 22/06/2026 06:52:40
[2026-06-22 06:52:40,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:52:40,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:52:40,215.215 INFO    ] No existing commands found in stream
[2026-06-22 06:52:45,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:52:45,228.228 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-22 06:52:45,842.842 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:52:45,845.845 INFO    ] Checking for system updates...
[2026-06-22 06:52:45,881.881 INFO    ] 200
[2026-06-22 06:52:45,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:52:45,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:52:45,938.938 INFO    ] No update needed
[2026-06-22 06:52:45,941.941 INFO    ] Checking for camera pi updates...
[2026-06-22 06:52:45,974.974 INFO    ] 200
[2026-06-22 06:52:45,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:52:46,017.017 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:52:46,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:52:46,116.116 INFO    ] No camera update needed
[2026-06-22 06:52:46,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:52:46,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:52:46,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:52:46,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:52:48,174.174 INFO    ] ================================================
[2026-06-22 06:52:48,189.189 INFO    ] Launching Daemon at Mon Jun 22 06:52:48 IST 2026
[2026-06-22 06:52:48,199.199 INFO    ] ================================================
[2026-06-22 06:52:48,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:52:48
[2026-06-22 06:52:49,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:52:49,695.695 INFO    ] Initializing speech engine...
[2026-06-22 06:52:49,709.709 INFO    ] 2026-06-22 06:52:49
[2026-06-22 06:52:50,018.018 INFO    ] 2026-06-22 06:52:49
[2026-06-22 06:52:50,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:52:50,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:52:50,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:52:50,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:52:50,524.524 INFO    ] time= 22/06/2026 06:52:50
[2026-06-22 06:52:50,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:52:50,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:52:50,683.683 INFO    ] No existing commands found in stream
[2026-06-22 06:52:55,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:52:55,719.719 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-22 06:52:56,167.167 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:52:56,169.169 INFO    ] Checking for system updates...
[2026-06-22 06:52:56,190.190 INFO    ] 200
[2026-06-22 06:52:56,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:52:56,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:52:56,241.241 INFO    ] No update needed
[2026-06-22 06:52:56,244.244 INFO    ] Checking for camera pi updates...
[2026-06-22 06:52:56,279.279 INFO    ] 200
[2026-06-22 06:52:56,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:52:56,322.322 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:52:56,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:52:56,415.415 INFO    ] No camera update needed
[2026-06-22 06:52:56,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:52:56,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:52:56,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:52:56,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:52:58,474.474 INFO    ] ================================================
[2026-06-22 06:52:58,489.489 INFO    ] Launching Daemon at Mon Jun 22 06:52:58 IST 2026
[2026-06-22 06:52:58,499.499 INFO    ] ================================================
[2026-06-22 06:52:59,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:52:59
[2026-06-22 06:52:59,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:52:59,998.998 INFO    ] Initializing speech engine...
[2026-06-22 06:53:00,012.012 INFO    ] 2026-06-22 06:53:00
[2026-06-22 06:53:00,291.291 INFO    ] 2026-06-22 06:53:00
[2026-06-22 06:53:00,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:53:00,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:53:00,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:53:00,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:53:00,736.736 INFO    ] time= 22/06/2026 06:53:00
[2026-06-22 06:53:00,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:53:00,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:53:00,887.887 INFO    ] No existing commands found in stream
[2026-06-22 06:53:05,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:53:05,903.903 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-22 06:53:06,843.843 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:53:06,846.846 INFO    ] Checking for system updates...
[2026-06-22 06:53:06,887.887 INFO    ] 200
[2026-06-22 06:53:06,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:53:06,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:53:06,949.949 INFO    ] No update needed
[2026-06-22 06:53:06,951.951 INFO    ] Checking for camera pi updates...
[2026-06-22 06:53:06,989.989 INFO    ] 200
[2026-06-22 06:53:06,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:53:07,034.034 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:53:07,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:53:07,137.137 INFO    ] No camera update needed
[2026-06-22 06:53:07,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:53:07,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:53:07,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:53:07,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:53:09,195.195 INFO    ] ================================================
[2026-06-22 06:53:09,217.217 INFO    ] Launching Daemon at Mon Jun 22 06:53:09 IST 2026
[2026-06-22 06:53:09,234.234 INFO    ] ================================================
[2026-06-22 06:53:09,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:53:09
[2026-06-22 06:53:10,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:53:10,742.742 INFO    ] Initializing speech engine...
[2026-06-22 06:53:10,751.751 INFO    ] 2026-06-22 06:53:10
[2026-06-22 06:53:11,038.038 INFO    ] 2026-06-22 06:53:11
[2026-06-22 06:53:11,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:53:11,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:53:11,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:53:11,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:53:11,503.503 INFO    ] time= 22/06/2026 06:53:11
[2026-06-22 06:53:11,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:53:11,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:53:11,649.649 INFO    ] No existing commands found in stream
[2026-06-22 06:53:16,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:53:16,665.665 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-22 06:53:20,486.486 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:53:20,488.488 INFO    ] Checking for system updates...
[2026-06-22 06:53:20,508.508 INFO    ] 200
[2026-06-22 06:53:20,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:53:20,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:53:20,560.560 INFO    ] No update needed
[2026-06-22 06:53:20,562.562 INFO    ] Checking for camera pi updates...
[2026-06-22 06:53:20,597.597 INFO    ] 200
[2026-06-22 06:53:20,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:53:20,641.641 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:53:20,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:53:20,709.709 INFO    ] No camera update needed
[2026-06-22 06:53:20,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:53:20,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:53:20,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:53:20,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:53:22,768.768 INFO    ] ================================================
[2026-06-22 06:53:22,783.783 INFO    ] Launching Daemon at Mon Jun 22 06:53:22 IST 2026
[2026-06-22 06:53:22,794.794 INFO    ] ================================================
[2026-06-22 06:53:23,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:53:23
[2026-06-22 06:53:23,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:53:24,298.298 INFO    ] Initializing speech engine...
[2026-06-22 06:53:24,307.307 INFO    ] 2026-06-22 06:53:24
[2026-06-22 06:53:24,592.592 INFO    ] 2026-06-22 06:53:24
[2026-06-22 06:53:24,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:53:24,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:53:24,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:53:25,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:53:25,057.057 INFO    ] time= 22/06/2026 06:53:25
[2026-06-22 06:53:25,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:53:25,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:53:25,199.199 INFO    ] No existing commands found in stream
[2026-06-22 06:53:30,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:53:30,215.215 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-22 06:53:33,836.836 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:53:33,839.839 INFO    ] Checking for system updates...
[2026-06-22 06:53:33,876.876 INFO    ] 200
[2026-06-22 06:53:33,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:53:33,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:53:33,935.935 INFO    ] No update needed
[2026-06-22 06:53:33,938.938 INFO    ] Checking for camera pi updates...
[2026-06-22 06:53:33,973.973 INFO    ] 200
[2026-06-22 06:53:33,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:53:34,018.018 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:53:34,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:53:34,080.080 INFO    ] No camera update needed
[2026-06-22 06:53:34,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:53:34,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:53:34,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:53:34,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:53:36,138.138 INFO    ] ================================================
[2026-06-22 06:53:36,155.155 INFO    ] Launching Daemon at Mon Jun 22 06:53:36 IST 2026
[2026-06-22 06:53:36,166.166 INFO    ] ================================================
[2026-06-22 06:53:36,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:53:36
[2026-06-22 06:53:37,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:53:37,550.550 INFO    ] Initializing speech engine...
[2026-06-22 06:53:37,562.562 INFO    ] 2026-06-22 06:53:37
[2026-06-22 06:53:37,812.812 INFO    ] 2026-06-22 06:53:37
[2026-06-22 06:53:37,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:53:38,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:53:38,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:53:38,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:53:38,168.168 INFO    ] time= 22/06/2026 06:53:38
[2026-06-22 06:53:38,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:53:38,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:53:38,269.269 INFO    ] No existing commands found in stream
[2026-06-22 06:53:43,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:53:43,297.297 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-22 06:53:45,551.551 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:53:45,554.554 INFO    ] Checking for system updates...
[2026-06-22 06:53:45,590.590 INFO    ] 200
[2026-06-22 06:53:45,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:53:45,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:53:45,648.648 INFO    ] No update needed
[2026-06-22 06:53:45,650.650 INFO    ] Checking for camera pi updates...
[2026-06-22 06:53:45,688.688 INFO    ] 200
[2026-06-22 06:53:45,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:53:45,732.732 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:53:45,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:53:45,790.790 INFO    ] No camera update needed
[2026-06-22 06:53:45,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:53:45,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:53:45,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:53:45,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:53:47,846.846 INFO    ] ================================================
[2026-06-22 06:53:47,861.861 INFO    ] Launching Daemon at Mon Jun 22 06:53:47 IST 2026
[2026-06-22 06:53:47,872.872 INFO    ] ================================================
[2026-06-22 06:53:48,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:53:48
[2026-06-22 06:53:48,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:53:49,222.222 INFO    ] Initializing speech engine...
[2026-06-22 06:53:49,231.231 INFO    ] 2026-06-22 06:53:49
[2026-06-22 06:53:49,524.524 INFO    ] 2026-06-22 06:53:49
[2026-06-22 06:53:49,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:53:49,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:53:49,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:53:49,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:53:49,876.876 INFO    ] time= 22/06/2026 06:53:49
[2026-06-22 06:53:49,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:53:49,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:53:49,957.957 INFO    ] No existing commands found in stream
[2026-06-22 06:53:54,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:53:54,972.972 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-22 06:53:57,078.078 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:53:57,079.079 INFO    ] Checking for system updates...
[2026-06-22 06:53:57,100.100 INFO    ] 200
[2026-06-22 06:53:57,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:53:57,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:53:57,133.133 INFO    ] No update needed
[2026-06-22 06:53:57,134.134 INFO    ] Checking for camera pi updates...
[2026-06-22 06:53:57,161.161 INFO    ] 200
[2026-06-22 06:53:57,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:53:57,205.205 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:53:57,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:53:57,281.281 INFO    ] No camera update needed
[2026-06-22 06:53:57,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:53:57,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:53:57,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:53:57,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:53:59,337.337 INFO    ] ================================================
[2026-06-22 06:53:59,352.352 INFO    ] Launching Daemon at Mon Jun 22 06:53:59 IST 2026
[2026-06-22 06:53:59,364.364 INFO    ] ================================================
[2026-06-22 06:53:59,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:53:59
[2026-06-22 06:54:00,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:54:00,684.684 INFO    ] Initializing speech engine...
[2026-06-22 06:54:00,705.705 INFO    ] 2026-06-22 06:54:00
[2026-06-22 06:54:00,980.980 INFO    ] 2026-06-22 06:54:00
[2026-06-22 06:54:01,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:54:01,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:54:01,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:54:01,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:54:01,347.347 INFO    ] time= 22/06/2026 06:54:01
[2026-06-22 06:54:01,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:54:01,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:54:01,472.472 INFO    ] No existing commands found in stream
[2026-06-22 06:54:06,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:54:06,486.486 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-22 06:54:08,212.212 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:54:08,214.214 INFO    ] Checking for system updates...
[2026-06-22 06:54:08,251.251 INFO    ] 200
[2026-06-22 06:54:08,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:54:08,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:54:08,309.309 INFO    ] No update needed
[2026-06-22 06:54:08,311.311 INFO    ] Checking for camera pi updates...
[2026-06-22 06:54:08,350.350 INFO    ] 200
[2026-06-22 06:54:08,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:54:08,392.392 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:54:08,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:54:08,473.473 INFO    ] No camera update needed
[2026-06-22 06:54:08,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:54:08,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:54:08,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:54:08,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:54:10,531.531 INFO    ] ================================================
[2026-06-22 06:54:10,546.546 INFO    ] Launching Daemon at Mon Jun 22 06:54:10 IST 2026
[2026-06-22 06:54:10,557.557 INFO    ] ================================================
[2026-06-22 06:54:11,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:54:11
[2026-06-22 06:54:11,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:54:12,067.067 INFO    ] Initializing speech engine...
[2026-06-22 06:54:12,082.082 INFO    ] 2026-06-22 06:54:12
[2026-06-22 06:54:12,350.350 INFO    ] 2026-06-22 06:54:12
[2026-06-22 06:54:12,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:54:12,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:54:12,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:54:12,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:54:12,821.821 INFO    ] time= 22/06/2026 06:54:12
[2026-06-22 06:54:12,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:54:12,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:54:12,975.975 INFO    ] No existing commands found in stream
[2026-06-22 06:54:17,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:54:17,990.990 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-22 06:54:18,750.750 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:54:18,753.753 INFO    ] Checking for system updates...
[2026-06-22 06:54:18,790.790 INFO    ] 200
[2026-06-22 06:54:18,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:54:18,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:54:18,850.850 INFO    ] No update needed
[2026-06-22 06:54:18,856.856 INFO    ] Checking for camera pi updates...
[2026-06-22 06:54:18,903.903 INFO    ] 200
[2026-06-22 06:54:18,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:54:18,947.947 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:54:19,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:54:19,031.031 INFO    ] No camera update needed
[2026-06-22 06:54:19,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:54:19,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:54:19,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:54:19,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:54:21,089.089 INFO    ] ================================================
[2026-06-22 06:54:21,105.105 INFO    ] Launching Daemon at Mon Jun 22 06:54:21 IST 2026
[2026-06-22 06:54:21,117.117 INFO    ] ================================================
[2026-06-22 06:54:21,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:54:21
[2026-06-22 06:54:22,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:54:22,470.470 INFO    ] Initializing speech engine...
[2026-06-22 06:54:22,486.486 INFO    ] 2026-06-22 06:54:22
[2026-06-22 06:54:22,770.770 INFO    ] 2026-06-22 06:54:22
[2026-06-22 06:54:22,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:54:23,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:54:23,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:54:23,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:54:23,683.683 INFO    ] time= 22/06/2026 06:54:23
[2026-06-22 06:54:23,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:54:23,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:54:23,882.882 INFO    ] No existing commands found in stream
[2026-06-22 06:54:28,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:54:28,904.904 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-22 06:54:31,711.711 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:54:31,714.714 INFO    ] Checking for system updates...
[2026-06-22 06:54:31,749.749 INFO    ] 200
[2026-06-22 06:54:31,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:54:31,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:54:31,807.807 INFO    ] No update needed
[2026-06-22 06:54:31,809.809 INFO    ] Checking for camera pi updates...
[2026-06-22 06:54:31,847.847 INFO    ] 200
[2026-06-22 06:54:31,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:54:31,901.901 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:54:31,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:54:31,980.980 INFO    ] No camera update needed
[2026-06-22 06:54:31,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:54:31,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:54:31,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:54:32,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:54:34,044.044 INFO    ] ================================================
[2026-06-22 06:54:34,060.060 INFO    ] Launching Daemon at Mon Jun 22 06:54:34 IST 2026
[2026-06-22 06:54:34,071.071 INFO    ] ================================================
[2026-06-22 06:54:34,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:54:34
[2026-06-22 06:54:35,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:54:35,610.610 INFO    ] Initializing speech engine...
[2026-06-22 06:54:35,618.618 INFO    ] 2026-06-22 06:54:35
[2026-06-22 06:54:35,893.893 INFO    ] 2026-06-22 06:54:35
[2026-06-22 06:54:35,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:54:36,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:54:36,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:54:36,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:54:36,371.371 INFO    ] time= 22/06/2026 06:54:36
[2026-06-22 06:54:36,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:54:36,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:54:36,508.508 INFO    ] No existing commands found in stream
[2026-06-22 06:54:41,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:54:41,524.524 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-22 06:54:43,612.612 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:54:43,614.614 INFO    ] Checking for system updates...
[2026-06-22 06:54:43,636.636 INFO    ] 200
[2026-06-22 06:54:43,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:54:43,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:54:43,678.678 INFO    ] No update needed
[2026-06-22 06:54:43,680.680 INFO    ] Checking for camera pi updates...
[2026-06-22 06:54:43,715.715 INFO    ] 200
[2026-06-22 06:54:43,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:54:43,759.759 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:54:43,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:54:43,846.846 INFO    ] No camera update needed
[2026-06-22 06:54:43,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:54:43,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:54:43,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:54:43,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:54:45,901.901 INFO    ] ================================================
[2026-06-22 06:54:45,916.916 INFO    ] Launching Daemon at Mon Jun 22 06:54:45 IST 2026
[2026-06-22 06:54:45,927.927 INFO    ] ================================================
[2026-06-22 06:54:46,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:54:46
[2026-06-22 06:54:47,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:54:47,290.290 INFO    ] Initializing speech engine...
[2026-06-22 06:54:47,315.315 INFO    ] 2026-06-22 06:54:47
[2026-06-22 06:54:47,590.590 INFO    ] 2026-06-22 06:54:47
[2026-06-22 06:54:47,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:54:47,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:54:47,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:54:48,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:54:48,013.013 INFO    ] time= 22/06/2026 06:54:48
[2026-06-22 06:54:48,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:54:48,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:54:48,174.174 INFO    ] No existing commands found in stream
[2026-06-22 06:54:53,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:54:53,207.207 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-22 06:54:56,225.225 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:54:56,228.228 INFO    ] Checking for system updates...
[2026-06-22 06:54:56,264.264 INFO    ] 200
[2026-06-22 06:54:56,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:54:56,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:54:56,326.326 INFO    ] No update needed
[2026-06-22 06:54:56,329.329 INFO    ] Checking for camera pi updates...
[2026-06-22 06:54:56,363.363 INFO    ] 200
[2026-06-22 06:54:56,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:54:56,406.406 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:54:56,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:54:56,508.508 INFO    ] No camera update needed
[2026-06-22 06:54:56,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:54:56,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:54:56,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:54:56,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:54:58,563.563 INFO    ] ================================================
[2026-06-22 06:54:58,578.578 INFO    ] Launching Daemon at Mon Jun 22 06:54:58 IST 2026
[2026-06-22 06:54:58,589.589 INFO    ] ================================================
[2026-06-22 06:54:59,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:54:59
[2026-06-22 06:54:59,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:55:00,046.046 INFO    ] Initializing speech engine...
[2026-06-22 06:55:00,053.053 INFO    ] 2026-06-22 06:55:00
[2026-06-22 06:55:00,330.330 INFO    ] 2026-06-22 06:55:00
[2026-06-22 06:55:00,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:55:00,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:55:00,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:55:00,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:55:00,829.829 INFO    ] time= 22/06/2026 06:55:00
[2026-06-22 06:55:00,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:55:00,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:55:00,963.963 INFO    ] No existing commands found in stream
[2026-06-22 06:55:05,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:55:05,979.979 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-22 06:55:09,836.836 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:55:09,838.838 INFO    ] Checking for system updates...
[2026-06-22 06:55:09,858.858 INFO    ] 200
[2026-06-22 06:55:09,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:55:09,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:55:09,892.892 INFO    ] No update needed
[2026-06-22 06:55:09,894.894 INFO    ] Checking for camera pi updates...
[2026-06-22 06:55:09,932.932 INFO    ] 200
[2026-06-22 06:55:09,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:55:09,976.976 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:55:10,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:55:10,078.078 INFO    ] No camera update needed
[2026-06-22 06:55:10,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:55:10,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:55:10,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:55:10,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:55:12,136.136 INFO    ] ================================================
[2026-06-22 06:55:12,151.151 INFO    ] Launching Daemon at Mon Jun 22 06:55:12 IST 2026
[2026-06-22 06:55:12,162.162 INFO    ] ================================================
[2026-06-22 06:55:12,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:55:12
[2026-06-22 06:55:13,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:55:13,490.490 INFO    ] Initializing speech engine...
[2026-06-22 06:55:13,496.496 INFO    ] 2026-06-22 06:55:13
[2026-06-22 06:55:13,790.790 INFO    ] 2026-06-22 06:55:13
[2026-06-22 06:55:13,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:55:14,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:55:14,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:55:14,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:55:14,165.165 INFO    ] time= 22/06/2026 06:55:14
[2026-06-22 06:55:14,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:55:14,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:55:14,291.291 INFO    ] No existing commands found in stream
[2026-06-22 06:55:19,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:55:19,305.305 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-22 06:55:21,796.796 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:55:21,798.798 INFO    ] Checking for system updates...
[2026-06-22 06:55:21,818.818 INFO    ] 200
[2026-06-22 06:55:21,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:55:21,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:55:21,851.851 INFO    ] No update needed
[2026-06-22 06:55:21,852.852 INFO    ] Checking for camera pi updates...
[2026-06-22 06:55:21,871.871 INFO    ] 200
[2026-06-22 06:55:21,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:55:21,896.896 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:55:21,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:55:22,001.001 INFO    ] No camera update needed
[2026-06-22 06:55:22,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:55:22,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:55:22,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:55:22,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:55:24,056.056 INFO    ] ================================================
[2026-06-22 06:55:24,072.072 INFO    ] Launching Daemon at Mon Jun 22 06:55:24 IST 2026
[2026-06-22 06:55:24,083.083 INFO    ] ================================================
[2026-06-22 06:55:24,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:55:24
[2026-06-22 06:55:25,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:55:25,409.409 INFO    ] Initializing speech engine...
[2026-06-22 06:55:25,428.428 INFO    ] 2026-06-22 06:55:25
[2026-06-22 06:55:25,675.675 INFO    ] 2026-06-22 06:55:25
[2026-06-22 06:55:25,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:55:25,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:55:25,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:55:26,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:55:26,041.041 INFO    ] time= 22/06/2026 06:55:26
[2026-06-22 06:55:26,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:55:26,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:55:26,204.204 INFO    ] No existing commands found in stream
[2026-06-22 06:55:31,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:55:31,227.227 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-22 06:55:32,609.609 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:55:32,613.613 INFO    ] Checking for system updates...
[2026-06-22 06:55:32,654.654 INFO    ] 200
[2026-06-22 06:55:32,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:55:32,716.716 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:55:32,719.719 INFO    ] No update needed
[2026-06-22 06:55:32,722.722 INFO    ] Checking for camera pi updates...
[2026-06-22 06:55:32,760.760 INFO    ] 200
[2026-06-22 06:55:32,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:55:32,807.807 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:55:32,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:55:32,889.889 INFO    ] No camera update needed
[2026-06-22 06:55:32,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:55:32,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:55:32,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:55:32,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:55:34,952.952 INFO    ] ================================================
[2026-06-22 06:55:34,968.968 INFO    ] Launching Daemon at Mon Jun 22 06:55:34 IST 2026
[2026-06-22 06:55:34,978.978 INFO    ] ================================================
[2026-06-22 06:55:35,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:55:35
[2026-06-22 06:55:36,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:55:36,492.492 INFO    ] Initializing speech engine...
[2026-06-22 06:55:36,506.506 INFO    ] 2026-06-22 06:55:36
[2026-06-22 06:55:36,815.815 INFO    ] 2026-06-22 06:55:36
[2026-06-22 06:55:36,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:55:37,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:55:37,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:55:37,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:55:37,326.326 INFO    ] time= 22/06/2026 06:55:37
[2026-06-22 06:55:37,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:55:37,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:55:37,477.477 INFO    ] No existing commands found in stream
[2026-06-22 06:55:42,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:55:42,497.497 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-22 06:55:44,200.200 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:55:44,203.203 INFO    ] Checking for system updates...
[2026-06-22 06:55:44,239.239 INFO    ] 200
[2026-06-22 06:55:44,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:55:44,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:55:44,318.318 INFO    ] No update needed
[2026-06-22 06:55:44,320.320 INFO    ] Checking for camera pi updates...
[2026-06-22 06:55:44,355.355 INFO    ] 200
[2026-06-22 06:55:44,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:55:44,405.405 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:55:44,484.484 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:55:44,486.486 INFO    ] No camera update needed
[2026-06-22 06:55:44,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:55:44,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:55:44,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:55:44,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:55:46,544.544 INFO    ] ================================================
[2026-06-22 06:55:46,559.559 INFO    ] Launching Daemon at Mon Jun 22 06:55:46 IST 2026
[2026-06-22 06:55:46,570.570 INFO    ] ================================================
[2026-06-22 06:55:47,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:55:47
[2026-06-22 06:55:47,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:55:47,905.905 INFO    ] Initializing speech engine...
[2026-06-22 06:55:47,914.914 INFO    ] 2026-06-22 06:55:47
[2026-06-22 06:55:48,160.160 INFO    ] 2026-06-22 06:55:48
[2026-06-22 06:55:48,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:55:48,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:55:48,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:55:48,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:55:48,639.639 INFO    ] time= 22/06/2026 06:55:48
[2026-06-22 06:55:48,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:55:48,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:55:48,777.777 INFO    ] No existing commands found in stream
[2026-06-22 06:55:53,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:55:53,792.792 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-22 06:55:54,263.263 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:55:54,267.267 INFO    ] Checking for system updates...
[2026-06-22 06:55:54,305.305 INFO    ] 200
[2026-06-22 06:55:54,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:55:54,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:55:54,367.367 INFO    ] No update needed
[2026-06-22 06:55:54,369.369 INFO    ] Checking for camera pi updates...
[2026-06-22 06:55:54,404.404 INFO    ] 200
[2026-06-22 06:55:54,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:55:54,450.450 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:55:54,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:55:54,535.535 INFO    ] No camera update needed
[2026-06-22 06:55:54,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:55:54,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:55:54,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:55:54,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:55:56,595.595 INFO    ] ================================================
[2026-06-22 06:55:56,611.611 INFO    ] Launching Daemon at Mon Jun 22 06:55:56 IST 2026
[2026-06-22 06:55:56,623.623 INFO    ] ================================================
[2026-06-22 06:55:57,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:55:57
[2026-06-22 06:55:57,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:55:57,971.971 INFO    ] Initializing speech engine...
[2026-06-22 06:55:57,990.990 INFO    ] 2026-06-22 06:55:57
[2026-06-22 06:55:58,261.261 INFO    ] 2026-06-22 06:55:58
[2026-06-22 06:55:58,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:55:58,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:55:58,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:55:58,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:55:58,613.613 INFO    ] time= 22/06/2026 06:55:58
[2026-06-22 06:55:58,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:55:58,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:55:58,692.692 INFO    ] No existing commands found in stream
[2026-06-22 06:56:03,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:56:03,706.706 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-22 06:56:07,987.987 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:56:07,988.988 INFO    ] Checking for system updates...
[2026-06-22 06:56:08,011.011 INFO    ] 200
[2026-06-22 06:56:08,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:56:08,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:56:08,069.069 INFO    ] No update needed
[2026-06-22 06:56:08,071.071 INFO    ] Checking for camera pi updates...
[2026-06-22 06:56:08,105.105 INFO    ] 200
[2026-06-22 06:56:08,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:56:08,147.147 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:56:08,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:56:08,352.352 INFO    ] No camera update needed
[2026-06-22 06:56:08,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:56:08,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:56:08,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:56:08,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:56:10,409.409 INFO    ] ================================================
[2026-06-22 06:56:10,425.425 INFO    ] Launching Daemon at Mon Jun 22 06:56:10 IST 2026
[2026-06-22 06:56:10,436.436 INFO    ] ================================================
[2026-06-22 06:56:11,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:56:11
[2026-06-22 06:56:11,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:56:11,773.773 INFO    ] Initializing speech engine...
[2026-06-22 06:56:11,788.788 INFO    ] 2026-06-22 06:56:11
[2026-06-22 06:56:12,074.074 INFO    ] 2026-06-22 06:56:12
[2026-06-22 06:56:12,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:56:12,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:56:12,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:56:12,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:56:12,478.478 INFO    ] time= 22/06/2026 06:56:12
[2026-06-22 06:56:12,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:56:12,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:56:12,588.588 INFO    ] No existing commands found in stream
[2026-06-22 06:56:17,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:56:17,603.603 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-22 06:56:19,284.284 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:56:19,286.286 INFO    ] Checking for system updates...
[2026-06-22 06:56:19,306.306 INFO    ] 200
[2026-06-22 06:56:19,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:56:19,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:56:19,359.359 INFO    ] No update needed
[2026-06-22 06:56:19,362.362 INFO    ] Checking for camera pi updates...
[2026-06-22 06:56:19,403.403 INFO    ] 200
[2026-06-22 06:56:19,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:56:19,447.447 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:56:19,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:56:19,508.508 INFO    ] No camera update needed
[2026-06-22 06:56:19,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:56:19,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:56:19,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:56:19,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:56:21,564.564 INFO    ] ================================================
[2026-06-22 06:56:21,581.581 INFO    ] Launching Daemon at Mon Jun 22 06:56:21 IST 2026
[2026-06-22 06:56:21,592.592 INFO    ] ================================================
[2026-06-22 06:56:22,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:56:22
[2026-06-22 06:56:22,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:56:22,947.947 INFO    ] Initializing speech engine...
[2026-06-22 06:56:22,957.957 INFO    ] 2026-06-22 06:56:22
[2026-06-22 06:56:23,210.210 INFO    ] 2026-06-22 06:56:23
[2026-06-22 06:56:23,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:56:24,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:56:24,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:56:24,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:56:24,341.341 INFO    ] time= 22/06/2026 06:56:24
[2026-06-22 06:56:24,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:56:24,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:56:24,449.449 INFO    ] No existing commands found in stream
[2026-06-22 06:56:29,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:56:29,462.462 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-22 06:56:32,787.787 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 06:56:32,790.790 INFO    ] Checking for system updates...
[2026-06-22 06:56:32,829.829 INFO    ] 200
[2026-06-22 06:56:32,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:56:32,889.889 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:56:32,892.892 INFO    ] No update needed
[2026-06-22 06:56:32,894.894 INFO    ] Checking for camera pi updates...
[2026-06-22 06:56:32,931.931 INFO    ] 200
[2026-06-22 06:56:32,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:56:32,977.977 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:56:33,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:56:33,049.049 INFO    ] No camera update needed
[2026-06-22 06:56:33,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:56:33,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:56:33,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:56:33,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:56:35,107.107 INFO    ] ================================================
[2026-06-22 06:56:35,123.123 INFO    ] Launching Daemon at Mon Jun 22 06:56:35 IST 2026
[2026-06-22 06:56:35,134.134 INFO    ] ================================================
[2026-06-22 06:56:35,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:56:35
[2026-06-22 06:56:36,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:56:36,813.813 INFO    ] Initializing speech engine...
[2026-06-22 06:56:36,820.820 INFO    ] 2026-06-22 06:56:36
[2026-06-22 06:56:37,130.130 INFO    ] 2026-06-22 06:56:37
[2026-06-22 06:56:37,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:56:37,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:56:37,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:56:37,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:56:37,584.584 INFO    ] time= 22/06/2026 06:56:37
[2026-06-22 06:56:37,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:56:37,649.649 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:56:37,765.765 INFO    ] No existing commands found in stream
[2026-06-22 06:56:42,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:56:42,795.795 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-22 06:56:45,100.100 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:56:45,101.101 INFO    ] Checking for system updates...
[2026-06-22 06:56:45,122.122 INFO    ] 200
[2026-06-22 06:56:45,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:56:45,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:56:45,166.166 INFO    ] No update needed
[2026-06-22 06:56:45,169.169 INFO    ] Checking for camera pi updates...
[2026-06-22 06:56:45,204.204 INFO    ] 200
[2026-06-22 06:56:45,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:56:45,248.248 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:56:45,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:56:45,322.322 INFO    ] No camera update needed
[2026-06-22 06:56:45,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:56:45,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:56:45,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:56:45,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:56:47,377.377 INFO    ] ================================================
[2026-06-22 06:56:47,394.394 INFO    ] Launching Daemon at Mon Jun 22 06:56:47 IST 2026
[2026-06-22 06:56:47,405.405 INFO    ] ================================================
[2026-06-22 06:56:48,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:56:48
[2026-06-22 06:56:48,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:56:48,833.833 INFO    ] Initializing speech engine...
[2026-06-22 06:56:48,843.843 INFO    ] 2026-06-22 06:56:48
[2026-06-22 06:56:49,114.114 INFO    ] 2026-06-22 06:56:49
[2026-06-22 06:56:49,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:56:49,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:56:49,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:56:49,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:56:49,497.497 INFO    ] time= 22/06/2026 06:56:49
[2026-06-22 06:56:49,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:56:49,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:56:49,623.623 INFO    ] No existing commands found in stream
[2026-06-22 06:56:54,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:56:54,639.639 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-22 06:56:57,070.070 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:56:57,073.073 INFO    ] Checking for system updates...
[2026-06-22 06:56:57,110.110 INFO    ] 200
[2026-06-22 06:56:57,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:56:57,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:56:57,168.168 INFO    ] No update needed
[2026-06-22 06:56:57,171.171 INFO    ] Checking for camera pi updates...
[2026-06-22 06:56:57,204.204 INFO    ] 200
[2026-06-22 06:56:57,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:56:57,251.251 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:56:57,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:56:57,325.325 INFO    ] No camera update needed
[2026-06-22 06:56:57,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:56:57,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:56:57,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:56:57,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:56:59,381.381 INFO    ] ================================================
[2026-06-22 06:56:59,397.397 INFO    ] Launching Daemon at Mon Jun 22 06:56:59 IST 2026
[2026-06-22 06:56:59,408.408 INFO    ] ================================================
[2026-06-22 06:56:59,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:56:59
[2026-06-22 06:57:00,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:57:00,829.829 INFO    ] Initializing speech engine...
[2026-06-22 06:57:00,838.838 INFO    ] 2026-06-22 06:57:00
[2026-06-22 06:57:01,136.136 INFO    ] 2026-06-22 06:57:01
[2026-06-22 06:57:01,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:57:01,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:57:01,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:57:01,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:57:01,490.490 INFO    ] time= 22/06/2026 06:57:01
[2026-06-22 06:57:01,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:57:01,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:57:01,571.571 INFO    ] No existing commands found in stream
[2026-06-22 06:57:06,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:57:06,586.586 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-22 06:57:07,060.060 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:57:07,063.063 INFO    ] Checking for system updates...
[2026-06-22 06:57:07,100.100 INFO    ] 200
[2026-06-22 06:57:07,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:57:07,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:57:07,158.158 INFO    ] No update needed
[2026-06-22 06:57:07,160.160 INFO    ] Checking for camera pi updates...
[2026-06-22 06:57:07,193.193 INFO    ] 200
[2026-06-22 06:57:07,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:57:07,237.237 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:57:07,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:57:07,290.290 INFO    ] No camera update needed
[2026-06-22 06:57:07,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:57:07,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:57:07,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:57:07,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:57:09,346.346 INFO    ] ================================================
[2026-06-22 06:57:09,362.362 INFO    ] Launching Daemon at Mon Jun 22 06:57:09 IST 2026
[2026-06-22 06:57:09,373.373 INFO    ] ================================================
[2026-06-22 06:57:09,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:57:09
[2026-06-22 06:57:10,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:57:10,704.704 INFO    ] Initializing speech engine...
[2026-06-22 06:57:10,713.713 INFO    ] 2026-06-22 06:57:10
[2026-06-22 06:57:10,958.958 INFO    ] 2026-06-22 06:57:10
[2026-06-22 06:57:10,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:57:11,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:57:11,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:57:11,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:57:11,325.325 INFO    ] time= 22/06/2026 06:57:11
[2026-06-22 06:57:11,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:57:11,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:57:11,403.403 INFO    ] No existing commands found in stream
[2026-06-22 06:57:16,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:57:16,421.421 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-22 06:57:20,708.708 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:57:20,711.711 INFO    ] Checking for system updates...
[2026-06-22 06:57:20,746.746 INFO    ] 200
[2026-06-22 06:57:20,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:57:20,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:57:20,811.811 INFO    ] No update needed
[2026-06-22 06:57:20,813.813 INFO    ] Checking for camera pi updates...
[2026-06-22 06:57:20,847.847 INFO    ] 200
[2026-06-22 06:57:20,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:57:20,889.889 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:57:20,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:57:20,973.973 INFO    ] No camera update needed
[2026-06-22 06:57:20,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:57:20,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:57:20,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:57:20,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:57:23,029.029 INFO    ] ================================================
[2026-06-22 06:57:23,045.045 INFO    ] Launching Daemon at Mon Jun 22 06:57:23 IST 2026
[2026-06-22 06:57:23,056.056 INFO    ] ================================================
[2026-06-22 06:57:23,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:57:23
[2026-06-22 06:57:24,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:57:24,568.568 INFO    ] Initializing speech engine...
[2026-06-22 06:57:24,587.587 INFO    ] 2026-06-22 06:57:24
[2026-06-22 06:57:24,844.844 INFO    ] 2026-06-22 06:57:24
[2026-06-22 06:57:24,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:57:25,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:57:25,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:57:25,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:57:25,213.213 INFO    ] time= 22/06/2026 06:57:25
[2026-06-22 06:57:25,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:57:25,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:57:25,394.394 INFO    ] No existing commands found in stream
[2026-06-22 06:57:30,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:57:30,422.422 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-22 06:57:34,794.794 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:57:34,797.797 INFO    ] Checking for system updates...
[2026-06-22 06:57:34,833.833 INFO    ] 200
[2026-06-22 06:57:34,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:57:34,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:57:34,890.890 INFO    ] No update needed
[2026-06-22 06:57:34,893.893 INFO    ] Checking for camera pi updates...
[2026-06-22 06:57:34,929.929 INFO    ] 200
[2026-06-22 06:57:34,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:57:34,980.980 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:57:35,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:57:35,070.070 INFO    ] No camera update needed
[2026-06-22 06:57:35,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:57:35,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:57:35,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:57:35,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:57:37,127.127 INFO    ] ================================================
[2026-06-22 06:57:37,142.142 INFO    ] Launching Daemon at Mon Jun 22 06:57:37 IST 2026
[2026-06-22 06:57:37,154.154 INFO    ] ================================================
[2026-06-22 06:57:37,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:57:37
[2026-06-22 06:57:38,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:57:38,524.524 INFO    ] Initializing speech engine...
[2026-06-22 06:57:38,533.533 INFO    ] 2026-06-22 06:57:38
[2026-06-22 06:57:38,793.793 INFO    ] 2026-06-22 06:57:38
[2026-06-22 06:57:38,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:57:39,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:57:39,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:57:39,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:57:39,223.223 INFO    ] time= 22/06/2026 06:57:39
[2026-06-22 06:57:39,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:57:39,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:57:39,398.398 INFO    ] No existing commands found in stream
[2026-06-22 06:57:44,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:57:44,410.410 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-22 06:57:45,767.767 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:57:45,768.768 INFO    ] Checking for system updates...
[2026-06-22 06:57:45,796.796 INFO    ] 200
[2026-06-22 06:57:45,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:57:45,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:57:45,861.861 INFO    ] No update needed
[2026-06-22 06:57:45,864.864 INFO    ] Checking for camera pi updates...
[2026-06-22 06:57:45,899.899 INFO    ] 200
[2026-06-22 06:57:45,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:57:45,947.947 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:57:46,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:57:46,031.031 INFO    ] No camera update needed
[2026-06-22 06:57:46,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:57:46,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:57:46,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:57:46,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:57:48,088.088 INFO    ] ================================================
[2026-06-22 06:57:48,103.103 INFO    ] Launching Daemon at Mon Jun 22 06:57:48 IST 2026
[2026-06-22 06:57:48,114.114 INFO    ] ================================================
[2026-06-22 06:57:48,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:57:48
[2026-06-22 06:57:49,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:57:49,441.441 INFO    ] Initializing speech engine...
[2026-06-22 06:57:49,464.464 INFO    ] 2026-06-22 06:57:49
[2026-06-22 06:57:49,722.722 INFO    ] 2026-06-22 06:57:49
[2026-06-22 06:57:49,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:57:49,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:57:49,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:57:50,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:57:50,102.102 INFO    ] time= 22/06/2026 06:57:50
[2026-06-22 06:57:50,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:57:50,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:57:50,177.177 INFO    ] No existing commands found in stream
[2026-06-22 06:57:55,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:57:55,192.192 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-22 06:57:56,877.877 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:57:56,880.880 INFO    ] Checking for system updates...
[2026-06-22 06:57:56,916.916 INFO    ] 200
[2026-06-22 06:57:56,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:57:56,978.978 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:57:56,981.981 INFO    ] No update needed
[2026-06-22 06:57:56,983.983 INFO    ] Checking for camera pi updates...
[2026-06-22 06:57:57,020.020 INFO    ] 200
[2026-06-22 06:57:57,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:57:57,064.064 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:57:57,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:57:57,132.132 INFO    ] No camera update needed
[2026-06-22 06:57:57,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:57:57,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:57:57,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:57:57,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:57:59,188.188 INFO    ] ================================================
[2026-06-22 06:57:59,204.204 INFO    ] Launching Daemon at Mon Jun 22 06:57:59 IST 2026
[2026-06-22 06:57:59,216.216 INFO    ] ================================================
[2026-06-22 06:57:59,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:57:59
[2026-06-22 06:58:00,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:58:00,702.702 INFO    ] Initializing speech engine...
[2026-06-22 06:58:00,713.713 INFO    ] 2026-06-22 06:58:00
[2026-06-22 06:58:00,983.983 INFO    ] 2026-06-22 06:58:00
[2026-06-22 06:58:01,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:58:01,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:58:01,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:58:01,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:58:01,503.503 INFO    ] time= 22/06/2026 06:58:01
[2026-06-22 06:58:01,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:58:01,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:58:01,663.663 INFO    ] No existing commands found in stream
[2026-06-22 06:58:06,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:58:06,679.679 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-22 06:58:08,438.438 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 06:58:08,441.441 INFO    ] Checking for system updates...
[2026-06-22 06:58:08,478.478 INFO    ] 200
[2026-06-22 06:58:08,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:58:08,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:58:08,547.547 INFO    ] No update needed
[2026-06-22 06:58:08,549.549 INFO    ] Checking for camera pi updates...
[2026-06-22 06:58:08,585.585 INFO    ] 200
[2026-06-22 06:58:08,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:58:08,636.636 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:58:08,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:58:08,721.721 INFO    ] No camera update needed
[2026-06-22 06:58:08,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:58:08,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:58:08,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:58:08,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:58:10,779.779 INFO    ] ================================================
[2026-06-22 06:58:10,795.795 INFO    ] Launching Daemon at Mon Jun 22 06:58:10 IST 2026
[2026-06-22 06:58:10,806.806 INFO    ] ================================================
[2026-06-22 06:58:11,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:58:11
[2026-06-22 06:58:12,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:58:12,360.360 INFO    ] Initializing speech engine...
[2026-06-22 06:58:12,370.370 INFO    ] 2026-06-22 06:58:12
[2026-06-22 06:58:12,624.624 INFO    ] 2026-06-22 06:58:12
[2026-06-22 06:58:12,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:58:12,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:58:12,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:58:12,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:58:12,992.992 INFO    ] time= 22/06/2026 06:58:12
[2026-06-22 06:58:12,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:58:13,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:58:13,068.068 INFO    ] No existing commands found in stream
[2026-06-22 06:58:18,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:58:18,089.089 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-22 06:58:18,788.788 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:58:18,791.791 INFO    ] Checking for system updates...
[2026-06-22 06:58:18,826.826 INFO    ] 200
[2026-06-22 06:58:18,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:58:18,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:58:18,892.892 INFO    ] No update needed
[2026-06-22 06:58:18,895.895 INFO    ] Checking for camera pi updates...
[2026-06-22 06:58:18,933.933 INFO    ] 200
[2026-06-22 06:58:18,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:58:18,976.976 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:58:19,148.148 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:58:19,150.150 INFO    ] No camera update needed
[2026-06-22 06:58:19,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:58:19,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:58:19,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:58:19,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:58:21,207.207 INFO    ] ================================================
[2026-06-22 06:58:21,223.223 INFO    ] Launching Daemon at Mon Jun 22 06:58:21 IST 2026
[2026-06-22 06:58:21,233.233 INFO    ] ================================================
[2026-06-22 06:58:21,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:58:21
[2026-06-22 06:58:22,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:58:22,708.708 INFO    ] Initializing speech engine...
[2026-06-22 06:58:22,715.715 INFO    ] 2026-06-22 06:58:22
[2026-06-22 06:58:22,975.975 INFO    ] 2026-06-22 06:58:22
[2026-06-22 06:58:23,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:58:23,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:58:23,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:58:23,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:58:23,698.698 INFO    ] time= 22/06/2026 06:58:23
[2026-06-22 06:58:23,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:58:23,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:58:23,918.918 INFO    ] No existing commands found in stream
[2026-06-22 06:58:28,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:58:28,948.948 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-22 06:58:33,322.322 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:58:33,325.325 INFO    ] Checking for system updates...
[2026-06-22 06:58:33,361.361 INFO    ] 200
[2026-06-22 06:58:33,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:58:33,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:58:33,418.418 INFO    ] No update needed
[2026-06-22 06:58:33,421.421 INFO    ] Checking for camera pi updates...
[2026-06-22 06:58:33,460.460 INFO    ] 200
[2026-06-22 06:58:33,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:58:33,503.503 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:58:33,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:58:33,571.571 INFO    ] No camera update needed
[2026-06-22 06:58:33,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:58:33,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:58:33,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:58:33,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:58:35,629.629 INFO    ] ================================================
[2026-06-22 06:58:35,645.645 INFO    ] Launching Daemon at Mon Jun 22 06:58:35 IST 2026
[2026-06-22 06:58:35,657.657 INFO    ] ================================================
[2026-06-22 06:58:36,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:58:36
[2026-06-22 06:58:36,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:58:37,084.084 INFO    ] Initializing speech engine...
[2026-06-22 06:58:37,093.093 INFO    ] 2026-06-22 06:58:37
[2026-06-22 06:58:37,341.341 INFO    ] 2026-06-22 06:58:37
[2026-06-22 06:58:37,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:58:37,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:58:37,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:58:37,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:58:37,717.717 INFO    ] time= 22/06/2026 06:58:37
[2026-06-22 06:58:37,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:58:37,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:58:37,795.795 INFO    ] No existing commands found in stream
[2026-06-22 06:58:42,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:58:42,810.810 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-22 06:58:44,338.338 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:58:44,340.340 INFO    ] Checking for system updates...
[2026-06-22 06:58:44,360.360 INFO    ] 200
[2026-06-22 06:58:44,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:58:44,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:58:44,393.393 INFO    ] No update needed
[2026-06-22 06:58:44,395.395 INFO    ] Checking for camera pi updates...
[2026-06-22 06:58:44,427.427 INFO    ] 200
[2026-06-22 06:58:44,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:58:44,470.470 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:58:44,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:58:44,554.554 INFO    ] No camera update needed
[2026-06-22 06:58:44,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:58:44,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:58:44,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:58:44,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:58:46,609.609 INFO    ] ================================================
[2026-06-22 06:58:46,625.625 INFO    ] Launching Daemon at Mon Jun 22 06:58:46 IST 2026
[2026-06-22 06:58:46,637.637 INFO    ] ================================================
[2026-06-22 06:58:47,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:58:47
[2026-06-22 06:58:48,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:58:48,344.344 INFO    ] Initializing speech engine...
[2026-06-22 06:58:48,355.355 INFO    ] 2026-06-22 06:58:48
[2026-06-22 06:58:48,633.633 INFO    ] 2026-06-22 06:58:48
[2026-06-22 06:58:48,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:58:48,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:58:48,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:58:48,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:58:48,994.994 INFO    ] time= 22/06/2026 06:58:48
[2026-06-22 06:58:49,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:58:49,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:58:49,106.106 INFO    ] No existing commands found in stream
[2026-06-22 06:58:54,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:58:54,122.122 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-22 06:58:57,440.440 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:58:57,442.442 INFO    ] Checking for system updates...
[2026-06-22 06:58:57,465.465 INFO    ] 200
[2026-06-22 06:58:57,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:58:57,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:58:57,504.504 INFO    ] No update needed
[2026-06-22 06:58:57,506.506 INFO    ] Checking for camera pi updates...
[2026-06-22 06:58:57,540.540 INFO    ] 200
[2026-06-22 06:58:57,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:58:57,591.591 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:58:57,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:58:57,682.682 INFO    ] No camera update needed
[2026-06-22 06:58:57,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:58:57,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:58:57,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:58:57,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:58:59,742.742 INFO    ] ================================================
[2026-06-22 06:58:59,758.758 INFO    ] Launching Daemon at Mon Jun 22 06:58:59 IST 2026
[2026-06-22 06:58:59,770.770 INFO    ] ================================================
[2026-06-22 06:59:00,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:59:00
[2026-06-22 06:59:00,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:59:01,103.103 INFO    ] Initializing speech engine...
[2026-06-22 06:59:01,112.112 INFO    ] 2026-06-22 06:59:01
[2026-06-22 06:59:01,359.359 INFO    ] 2026-06-22 06:59:01
[2026-06-22 06:59:01,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:59:01,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:59:01,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:59:01,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:59:01,793.793 INFO    ] time= 22/06/2026 06:59:01
[2026-06-22 06:59:01,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:59:01,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:59:01,887.887 INFO    ] No existing commands found in stream
[2026-06-22 06:59:06,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:59:06,900.900 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-22 06:59:10,023.023 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 06:59:10,026.026 INFO    ] Checking for system updates...
[2026-06-22 06:59:10,062.062 INFO    ] 200
[2026-06-22 06:59:10,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:59:10,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:59:10,121.121 INFO    ] No update needed
[2026-06-22 06:59:10,123.123 INFO    ] Checking for camera pi updates...
[2026-06-22 06:59:10,161.161 INFO    ] 200
[2026-06-22 06:59:10,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:59:10,204.204 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:59:10,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:59:10,291.291 INFO    ] No camera update needed
[2026-06-22 06:59:10,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:59:10,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:59:10,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:59:10,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:59:12,348.348 INFO    ] ================================================
[2026-06-22 06:59:12,363.363 INFO    ] Launching Daemon at Mon Jun 22 06:59:12 IST 2026
[2026-06-22 06:59:12,374.374 INFO    ] ================================================
[2026-06-22 06:59:12,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:59:12
[2026-06-22 06:59:13,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:59:13,725.725 INFO    ] Initializing speech engine...
[2026-06-22 06:59:13,735.735 INFO    ] 2026-06-22 06:59:13
[2026-06-22 06:59:13,984.984 INFO    ] 2026-06-22 06:59:13
[2026-06-22 06:59:14,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:59:14,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:59:14,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:59:14,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:59:14,365.365 INFO    ] time= 22/06/2026 06:59:14
[2026-06-22 06:59:14,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:59:14,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:59:14,530.530 INFO    ] No existing commands found in stream
[2026-06-22 06:59:19,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:59:19,558.558 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-22 06:59:23,713.713 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 06:59:23,717.717 INFO    ] Checking for system updates...
[2026-06-22 06:59:23,757.757 INFO    ] 200
[2026-06-22 06:59:23,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:59:23,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:59:23,822.822 INFO    ] No update needed
[2026-06-22 06:59:23,824.824 INFO    ] Checking for camera pi updates...
[2026-06-22 06:59:23,859.859 INFO    ] 200
[2026-06-22 06:59:23,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:59:23,908.908 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:59:23,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:59:23,991.991 INFO    ] No camera update needed
[2026-06-22 06:59:23,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:59:23,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:59:24,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:59:24,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:59:26,050.050 INFO    ] ================================================
[2026-06-22 06:59:26,066.066 INFO    ] Launching Daemon at Mon Jun 22 06:59:26 IST 2026
[2026-06-22 06:59:26,077.077 INFO    ] ================================================
[2026-06-22 06:59:26,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:59:26
[2026-06-22 06:59:27,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:59:27,600.600 INFO    ] Initializing speech engine...
[2026-06-22 06:59:27,615.615 INFO    ] 2026-06-22 06:59:27
[2026-06-22 06:59:27,887.887 INFO    ] 2026-06-22 06:59:27
[2026-06-22 06:59:27,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:59:28,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:59:28,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:59:28,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:59:28,378.378 INFO    ] time= 22/06/2026 06:59:28
[2026-06-22 06:59:28,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:59:28,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:59:28,534.534 INFO    ] No existing commands found in stream
[2026-06-22 06:59:33,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:59:33,551.551 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-22 06:59:34,850.850 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 06:59:34,853.853 INFO    ] Checking for system updates...
[2026-06-22 06:59:34,891.891 INFO    ] 200
[2026-06-22 06:59:34,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:59:34,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:59:34,958.958 INFO    ] No update needed
[2026-06-22 06:59:34,961.961 INFO    ] Checking for camera pi updates...
[2026-06-22 06:59:34,996.996 INFO    ] 200
[2026-06-22 06:59:34,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:59:35,046.046 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:59:35,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 06:59:35,132.132 INFO    ] No camera update needed
[2026-06-22 06:59:35,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:59:35,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:59:35,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:59:35,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:59:37,180.180 INFO    ] ================================================
[2026-06-22 06:59:37,195.195 INFO    ] Launching Daemon at Mon Jun 22 06:59:37 IST 2026
[2026-06-22 06:59:37,206.206 INFO    ] ================================================
[2026-06-22 06:59:37,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:59:37
[2026-06-22 06:59:38,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:59:38,800.800 INFO    ] Initializing speech engine...
[2026-06-22 06:59:38,814.814 INFO    ] 2026-06-22 06:59:38
[2026-06-22 06:59:39,094.094 INFO    ] 2026-06-22 06:59:39
[2026-06-22 06:59:39,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:59:39,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:59:39,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:59:39,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:59:39,444.444 INFO    ] time= 22/06/2026 06:59:39
[2026-06-22 06:59:39,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:59:39,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:59:39,525.525 INFO    ] No existing commands found in stream
[2026-06-22 06:59:44,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:59:44,538.538 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-22 06:59:47,900.900 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 06:59:47,904.904 INFO    ] Checking for system updates...
[2026-06-22 06:59:47,945.945 INFO    ] 200
[2026-06-22 06:59:47,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:59:48,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:59:48,005.005 INFO    ] No update needed
[2026-06-22 06:59:48,008.008 INFO    ] Checking for camera pi updates...
[2026-06-22 06:59:48,043.043 INFO    ] 200
[2026-06-22 06:59:48,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 06:59:48,093.093 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 06:59:48,189.189 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 06:59:48,192.192 INFO    ] No camera update needed
[2026-06-22 06:59:48,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-22 06:59:48,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 06:59:48,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 06:59:48,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 06:59:50,251.251 INFO    ] ================================================
[2026-06-22 06:59:50,268.268 INFO    ] Launching Daemon at Mon Jun 22 06:59:50 IST 2026
[2026-06-22 06:59:50,279.279 INFO    ] ================================================
[2026-06-22 06:59:50,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 06:59:50
[2026-06-22 06:59:51,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 06:59:51,659.659 INFO    ] Initializing speech engine...
[2026-06-22 06:59:51,667.667 INFO    ] 2026-06-22 06:59:51
[2026-06-22 06:59:51,958.958 INFO    ] 2026-06-22 06:59:51
[2026-06-22 06:59:52,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 06:59:53,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 06:59:53,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 06:59:53,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 06:59:53,945.945 INFO    ] time= 22/06/2026 06:59:53
[2026-06-22 06:59:53,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 06:59:53,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-22 06:59:54,057.057 INFO    ] No existing commands found in stream
[2026-06-22 06:59:59,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 06:59:59,082.082 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-22 07:00:00,994.994 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:00:00,996.996 INFO    ] Checking for system updates...
[2026-06-22 07:00:01,038.038 INFO    ] 200
[2026-06-22 07:00:01,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:00:01,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:00:01,104.104 INFO    ] No update needed
[2026-06-22 07:00:01,106.106 INFO    ] Checking for camera pi updates...
[2026-06-22 07:00:01,144.144 INFO    ] 200
[2026-06-22 07:00:01,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:00:01,187.187 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:00:01,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:00:01,265.265 INFO    ] No camera update needed
[2026-06-22 07:00:01,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:00:01,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:00:01,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:00:01,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:00:03,432.432 INFO    ] ================================================
[2026-06-22 07:00:03,597.597 INFO    ] Launching Daemon at Mon Jun 22 07:00:03 IST 2026
[2026-06-22 07:00:03,678.678 INFO    ] ================================================
[2026-06-22 07:00:05,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:00:05
[2026-06-22 07:00:06,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:00:07,048.048 INFO    ] Initializing speech engine...
[2026-06-22 07:00:07,059.059 INFO    ] 2026-06-22 07:00:07
[2026-06-22 07:00:07,355.355 INFO    ] 2026-06-22 07:00:07
[2026-06-22 07:00:07,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:00:07,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:00:07,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:00:07,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:00:07,798.798 INFO    ] time= 22/06/2026 07:00:07
[2026-06-22 07:00:07,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:00:07,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:00:07,949.949 INFO    ] No existing commands found in stream
[2026-06-22 07:00:12,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:00:12,963.963 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-22 07:00:14,509.509 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:00:14,510.510 INFO    ] Checking for system updates...
[2026-06-22 07:00:14,533.533 INFO    ] 200
[2026-06-22 07:00:14,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:00:14,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:00:14,566.566 INFO    ] No update needed
[2026-06-22 07:00:14,567.567 INFO    ] Checking for camera pi updates...
[2026-06-22 07:00:14,589.589 INFO    ] 200
[2026-06-22 07:00:14,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:00:14,622.622 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:00:14,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:00:14,711.711 INFO    ] No camera update needed
[2026-06-22 07:00:14,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:00:14,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:00:14,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:00:14,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:00:16,767.767 INFO    ] ================================================
[2026-06-22 07:00:16,783.783 INFO    ] Launching Daemon at Mon Jun 22 07:00:16 IST 2026
[2026-06-22 07:00:16,793.793 INFO    ] ================================================
[2026-06-22 07:00:17,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:00:17
[2026-06-22 07:00:17,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:00:18,129.129 INFO    ] Initializing speech engine...
[2026-06-22 07:00:18,152.152 INFO    ] 2026-06-22 07:00:18
[2026-06-22 07:00:18,409.409 INFO    ] 2026-06-22 07:00:18
[2026-06-22 07:00:18,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:00:18,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:00:18,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:00:18,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:00:18,767.767 INFO    ] time= 22/06/2026 07:00:18
[2026-06-22 07:00:18,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:00:18,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:00:18,867.867 INFO    ] No existing commands found in stream
[2026-06-22 07:00:23,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:00:23,885.885 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-22 07:00:25,334.334 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:00:25,336.336 INFO    ] Checking for system updates...
[2026-06-22 07:00:25,357.357 INFO    ] 200
[2026-06-22 07:00:25,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:00:25,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:00:25,390.390 INFO    ] No update needed
[2026-06-22 07:00:25,392.392 INFO    ] Checking for camera pi updates...
[2026-06-22 07:00:25,427.427 INFO    ] 200
[2026-06-22 07:00:25,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:00:25,477.477 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:00:25,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:00:25,660.660 INFO    ] No camera update needed
[2026-06-22 07:00:25,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:00:25,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:00:25,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:00:25,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:00:27,717.717 INFO    ] ================================================
[2026-06-22 07:00:27,732.732 INFO    ] Launching Daemon at Mon Jun 22 07:00:27 IST 2026
[2026-06-22 07:00:27,743.743 INFO    ] ================================================
[2026-06-22 07:00:28,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:00:28
[2026-06-22 07:00:28,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:00:29,063.063 INFO    ] Initializing speech engine...
[2026-06-22 07:00:29,087.087 INFO    ] 2026-06-22 07:00:29
[2026-06-22 07:00:29,346.346 INFO    ] 2026-06-22 07:00:29
[2026-06-22 07:00:29,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:00:29,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:00:29,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:00:29,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:00:29,724.724 INFO    ] time= 22/06/2026 07:00:29
[2026-06-22 07:00:29,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:00:29,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:00:29,890.890 INFO    ] No existing commands found in stream
[2026-06-22 07:00:34,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:00:34,919.919 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-22 07:00:36,765.765 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:00:36,767.767 INFO    ] Checking for system updates...
[2026-06-22 07:00:36,789.789 INFO    ] 200
[2026-06-22 07:00:36,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:00:36,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:00:36,840.840 INFO    ] No update needed
[2026-06-22 07:00:36,842.842 INFO    ] Checking for camera pi updates...
[2026-06-22 07:00:36,879.879 INFO    ] 200
[2026-06-22 07:00:36,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:00:36,922.922 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:00:37,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:00:37,008.008 INFO    ] No camera update needed
[2026-06-22 07:00:37,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:00:37,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:00:37,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:00:37,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:00:39,065.065 INFO    ] ================================================
[2026-06-22 07:00:39,079.079 INFO    ] Launching Daemon at Mon Jun 22 07:00:39 IST 2026
[2026-06-22 07:00:39,090.090 INFO    ] ================================================
[2026-06-22 07:00:39,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:00:39
[2026-06-22 07:00:40,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:00:40,465.465 INFO    ] Initializing speech engine...
[2026-06-22 07:00:40,474.474 INFO    ] 2026-06-22 07:00:40
[2026-06-22 07:00:40,734.734 INFO    ] 2026-06-22 07:00:40
[2026-06-22 07:00:40,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:00:40,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:00:40,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:00:41,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:00:41,095.095 INFO    ] time= 22/06/2026 07:00:41
[2026-06-22 07:00:41,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:00:41,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:00:41,235.235 INFO    ] No existing commands found in stream
[2026-06-22 07:00:46,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:00:46,263.263 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-22 07:00:48,379.379 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:00:48,382.382 INFO    ] Checking for system updates...
[2026-06-22 07:00:48,419.419 INFO    ] 200
[2026-06-22 07:00:48,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:00:48,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:00:48,484.484 INFO    ] No update needed
[2026-06-22 07:00:48,487.487 INFO    ] Checking for camera pi updates...
[2026-06-22 07:00:48,522.522 INFO    ] 200
[2026-06-22 07:00:48,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:00:48,567.567 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:00:48,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:00:48,655.655 INFO    ] No camera update needed
[2026-06-22 07:00:48,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:00:48,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:00:48,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:00:48,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:00:50,716.716 INFO    ] ================================================
[2026-06-22 07:00:50,731.731 INFO    ] Launching Daemon at Mon Jun 22 07:00:50 IST 2026
[2026-06-22 07:00:50,742.742 INFO    ] ================================================
[2026-06-22 07:00:51,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:00:51
[2026-06-22 07:00:51,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:00:52,180.180 INFO    ] Initializing speech engine...
[2026-06-22 07:00:52,188.188 INFO    ] 2026-06-22 07:00:52
[2026-06-22 07:00:52,480.480 INFO    ] 2026-06-22 07:00:52
[2026-06-22 07:00:52,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:00:53,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:00:53,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:00:53,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:00:53,842.842 INFO    ] time= 22/06/2026 07:00:53
[2026-06-22 07:00:53,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:00:53,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:00:53,955.955 INFO    ] No existing commands found in stream
[2026-06-22 07:00:58,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:00:58,978.978 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-22 07:01:00,089.089 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:01:00,091.091 INFO    ] Checking for system updates...
[2026-06-22 07:01:00,127.127 INFO    ] 200
[2026-06-22 07:01:00,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:01:00,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:01:00,186.186 INFO    ] No update needed
[2026-06-22 07:01:00,188.188 INFO    ] Checking for camera pi updates...
[2026-06-22 07:01:00,222.222 INFO    ] 200
[2026-06-22 07:01:00,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:01:00,265.265 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:01:00,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:01:00,366.366 INFO    ] No camera update needed
[2026-06-22 07:01:00,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:01:00,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:01:00,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:01:00,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:01:02,425.425 INFO    ] ================================================
[2026-06-22 07:01:02,442.442 INFO    ] Launching Daemon at Mon Jun 22 07:01:02 IST 2026
[2026-06-22 07:01:02,456.456 INFO    ] ================================================
[2026-06-22 07:01:03,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:01:03
[2026-06-22 07:01:03,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:01:04,043.043 INFO    ] Initializing speech engine...
[2026-06-22 07:01:04,052.052 INFO    ] 2026-06-22 07:01:04
[2026-06-22 07:01:04,302.302 INFO    ] 2026-06-22 07:01:04
[2026-06-22 07:01:04,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:01:04,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:01:04,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:01:04,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:01:04,680.680 INFO    ] time= 22/06/2026 07:01:04
[2026-06-22 07:01:04,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:01:04,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:01:04,850.850 INFO    ] No existing commands found in stream
[2026-06-22 07:01:09,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:01:09,883.883 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-22 07:01:11,035.035 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:01:11,037.037 INFO    ] Checking for system updates...
[2026-06-22 07:01:11,065.065 INFO    ] 200
[2026-06-22 07:01:11,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:01:11,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:01:11,102.102 INFO    ] No update needed
[2026-06-22 07:01:11,104.104 INFO    ] Checking for camera pi updates...
[2026-06-22 07:01:11,142.142 INFO    ] 200
[2026-06-22 07:01:11,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:01:11,192.192 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:01:11,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:01:11,273.273 INFO    ] No camera update needed
[2026-06-22 07:01:11,276.276 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:01:11,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:01:11,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:01:11,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:01:13,333.333 INFO    ] ================================================
[2026-06-22 07:01:13,348.348 INFO    ] Launching Daemon at Mon Jun 22 07:01:13 IST 2026
[2026-06-22 07:01:13,358.358 INFO    ] ================================================
[2026-06-22 07:01:13,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:01:13
[2026-06-22 07:01:14,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:01:14,946.946 INFO    ] Initializing speech engine...
[2026-06-22 07:01:14,955.955 INFO    ] 2026-06-22 07:01:14
[2026-06-22 07:01:15,237.237 INFO    ] 2026-06-22 07:01:15
[2026-06-22 07:01:15,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:01:15,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:01:15,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:01:15,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:01:15,715.715 INFO    ] time= 22/06/2026 07:01:15
[2026-06-22 07:01:15,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:01:15,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:01:15,920.920 INFO    ] No existing commands found in stream
[2026-06-22 07:01:20,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:01:20,954.954 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-22 07:01:23,801.801 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:01:23,804.804 INFO    ] Checking for system updates...
[2026-06-22 07:01:23,841.841 INFO    ] 200
[2026-06-22 07:01:23,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:01:23,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:01:23,901.901 INFO    ] No update needed
[2026-06-22 07:01:23,904.904 INFO    ] Checking for camera pi updates...
[2026-06-22 07:01:23,941.941 INFO    ] 200
[2026-06-22 07:01:23,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:01:23,991.991 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:01:24,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:01:24,082.082 INFO    ] No camera update needed
[2026-06-22 07:01:24,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:01:24,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:01:24,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:01:24,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:01:26,143.143 INFO    ] ================================================
[2026-06-22 07:01:26,159.159 INFO    ] Launching Daemon at Mon Jun 22 07:01:26 IST 2026
[2026-06-22 07:01:26,171.171 INFO    ] ================================================
[2026-06-22 07:01:26,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:01:26
[2026-06-22 07:01:27,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:01:27,512.512 INFO    ] Initializing speech engine...
[2026-06-22 07:01:27,522.522 INFO    ] 2026-06-22 07:01:27
[2026-06-22 07:01:27,775.775 INFO    ] 2026-06-22 07:01:27
[2026-06-22 07:01:27,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:01:27,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:01:28,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:01:28,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:01:28,135.135 INFO    ] time= 22/06/2026 07:01:28
[2026-06-22 07:01:28,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:01:28,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:01:28,233.233 INFO    ] No existing commands found in stream
[2026-06-22 07:01:33,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:01:33,249.249 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-22 07:01:37,259.259 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:01:37,262.262 INFO    ] Checking for system updates...
[2026-06-22 07:01:37,299.299 INFO    ] 200
[2026-06-22 07:01:37,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:01:37,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:01:37,357.357 INFO    ] No update needed
[2026-06-22 07:01:37,360.360 INFO    ] Checking for camera pi updates...
[2026-06-22 07:01:37,393.393 INFO    ] 200
[2026-06-22 07:01:37,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:01:37,437.437 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:01:37,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:01:37,524.524 INFO    ] No camera update needed
[2026-06-22 07:01:37,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:01:37,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:01:37,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:01:37,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:01:39,582.582 INFO    ] ================================================
[2026-06-22 07:01:39,598.598 INFO    ] Launching Daemon at Mon Jun 22 07:01:39 IST 2026
[2026-06-22 07:01:39,609.609 INFO    ] ================================================
[2026-06-22 07:01:40,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:01:40
[2026-06-22 07:01:40,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:01:40,970.970 INFO    ] Initializing speech engine...
[2026-06-22 07:01:40,978.978 INFO    ] 2026-06-22 07:01:40
[2026-06-22 07:01:41,286.286 INFO    ] 2026-06-22 07:01:41
[2026-06-22 07:01:41,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:01:41,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:01:41,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:01:41,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:01:41,672.672 INFO    ] time= 22/06/2026 07:01:41
[2026-06-22 07:01:41,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:01:41,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:01:41,801.801 INFO    ] No existing commands found in stream
[2026-06-22 07:01:46,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:01:46,814.814 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-22 07:01:47,599.599 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:01:47,602.602 INFO    ] Checking for system updates...
[2026-06-22 07:01:47,638.638 INFO    ] 200
[2026-06-22 07:01:47,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:01:47,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:01:47,698.698 INFO    ] No update needed
[2026-06-22 07:01:47,700.700 INFO    ] Checking for camera pi updates...
[2026-06-22 07:01:47,734.734 INFO    ] 200
[2026-06-22 07:01:47,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:01:47,777.777 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:01:47,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:01:47,864.864 INFO    ] No camera update needed
[2026-06-22 07:01:47,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:01:47,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:01:47,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:01:47,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:01:49,921.921 INFO    ] ================================================
[2026-06-22 07:01:49,937.937 INFO    ] Launching Daemon at Mon Jun 22 07:01:49 IST 2026
[2026-06-22 07:01:49,948.948 INFO    ] ================================================
[2026-06-22 07:01:50,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:01:50
[2026-06-22 07:01:51,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:01:51,450.450 INFO    ] Initializing speech engine...
[2026-06-22 07:01:51,461.461 INFO    ] 2026-06-22 07:01:51
[2026-06-22 07:01:51,742.742 INFO    ] 2026-06-22 07:01:51
[2026-06-22 07:01:51,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:01:53,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:01:53,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:01:53,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:01:53,538.538 INFO    ] time= 22/06/2026 07:01:53
[2026-06-22 07:01:53,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:01:53,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:01:53,601.601 INFO    ] No existing commands found in stream
[2026-06-22 07:01:58,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:01:58,617.617 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-22 07:01:59,182.182 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:01:59,185.185 INFO    ] Checking for system updates...
[2026-06-22 07:01:59,222.222 INFO    ] 200
[2026-06-22 07:01:59,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:01:59,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:01:59,288.288 INFO    ] No update needed
[2026-06-22 07:01:59,291.291 INFO    ] Checking for camera pi updates...
[2026-06-22 07:01:59,326.326 INFO    ] 200
[2026-06-22 07:01:59,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:01:59,370.370 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:01:59,424.424 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:01:59,427.427 INFO    ] No camera update needed
[2026-06-22 07:01:59,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:01:59,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:01:59,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:01:59,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:02:01,508.508 INFO    ] ================================================
[2026-06-22 07:02:01,553.553 INFO    ] Launching Daemon at Mon Jun 22 07:02:01 IST 2026
[2026-06-22 07:02:01,576.576 INFO    ] ================================================
[2026-06-22 07:02:02,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:02:02
[2026-06-22 07:02:02,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:02:03,305.305 INFO    ] Initializing speech engine...
[2026-06-22 07:02:03,315.315 INFO    ] 2026-06-22 07:02:03
[2026-06-22 07:02:03,590.590 INFO    ] 2026-06-22 07:02:03
[2026-06-22 07:02:03,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:02:03,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:02:03,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:02:03,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:02:03,977.977 INFO    ] time= 22/06/2026 07:02:03
[2026-06-22 07:02:03,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:02:04,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:02:04,104.104 INFO    ] No existing commands found in stream
[2026-06-22 07:02:09,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:02:09,120.120 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-22 07:02:11,769.769 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:02:11,772.772 INFO    ] Checking for system updates...
[2026-06-22 07:02:11,809.809 INFO    ] 200
[2026-06-22 07:02:11,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:02:11,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:02:11,867.867 INFO    ] No update needed
[2026-06-22 07:02:11,869.869 INFO    ] Checking for camera pi updates...
[2026-06-22 07:02:11,907.907 INFO    ] 200
[2026-06-22 07:02:11,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:02:11,950.950 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:02:12,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:02:12,034.034 INFO    ] No camera update needed
[2026-06-22 07:02:12,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:02:12,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:02:12,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:02:12,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:02:14,090.090 INFO    ] ================================================
[2026-06-22 07:02:14,105.105 INFO    ] Launching Daemon at Mon Jun 22 07:02:14 IST 2026
[2026-06-22 07:02:14,116.116 INFO    ] ================================================
[2026-06-22 07:02:14,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:02:14
[2026-06-22 07:02:15,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:02:15,446.446 INFO    ] Initializing speech engine...
[2026-06-22 07:02:15,458.458 INFO    ] 2026-06-22 07:02:15
[2026-06-22 07:02:15,726.726 INFO    ] 2026-06-22 07:02:15
[2026-06-22 07:02:15,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:02:15,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:02:15,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:02:16,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:02:16,106.106 INFO    ] time= 22/06/2026 07:02:16
[2026-06-22 07:02:16,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:02:16,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:02:16,280.280 INFO    ] No existing commands found in stream
[2026-06-22 07:02:21,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:02:21,319.319 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-22 07:02:24,539.539 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:02:24,541.541 INFO    ] Checking for system updates...
[2026-06-22 07:02:24,567.567 INFO    ] 200
[2026-06-22 07:02:24,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:02:24,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:02:24,625.625 INFO    ] No update needed
[2026-06-22 07:02:24,627.627 INFO    ] Checking for camera pi updates...
[2026-06-22 07:02:24,661.661 INFO    ] 200
[2026-06-22 07:02:24,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:02:24,708.708 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:02:24,764.764 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:02:24,767.767 INFO    ] No camera update needed
[2026-06-22 07:02:24,769.769 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:02:24,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:02:24,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:02:24,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:02:26,824.824 INFO    ] ================================================
[2026-06-22 07:02:26,839.839 INFO    ] Launching Daemon at Mon Jun 22 07:02:26 IST 2026
[2026-06-22 07:02:26,849.849 INFO    ] ================================================
[2026-06-22 07:02:27,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:02:27
[2026-06-22 07:02:28,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:02:28,394.394 INFO    ] Initializing speech engine...
[2026-06-22 07:02:28,407.407 INFO    ] 2026-06-22 07:02:28
[2026-06-22 07:02:28,722.722 INFO    ] 2026-06-22 07:02:28
[2026-06-22 07:02:28,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:02:28,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:02:29,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:02:29,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:02:29,236.236 INFO    ] time= 22/06/2026 07:02:29
[2026-06-22 07:02:29,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:02:29,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:02:29,399.399 INFO    ] No existing commands found in stream
[2026-06-22 07:02:34,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:02:34,420.420 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-22 07:02:38,774.774 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:02:38,776.776 INFO    ] Checking for system updates...
[2026-06-22 07:02:38,810.810 INFO    ] 200
[2026-06-22 07:02:38,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:02:38,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:02:38,871.871 INFO    ] No update needed
[2026-06-22 07:02:38,874.874 INFO    ] Checking for camera pi updates...
[2026-06-22 07:02:38,908.908 INFO    ] 200
[2026-06-22 07:02:38,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:02:38,959.959 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:02:39,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:02:39,063.063 INFO    ] No camera update needed
[2026-06-22 07:02:39,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:02:39,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:02:39,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:02:39,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:02:41,123.123 INFO    ] ================================================
[2026-06-22 07:02:41,139.139 INFO    ] Launching Daemon at Mon Jun 22 07:02:41 IST 2026
[2026-06-22 07:02:41,150.150 INFO    ] ================================================
[2026-06-22 07:02:41,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:02:41
[2026-06-22 07:02:42,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:02:42,752.752 INFO    ] Initializing speech engine...
[2026-06-22 07:02:42,767.767 INFO    ] 2026-06-22 07:02:42
[2026-06-22 07:02:43,086.086 INFO    ] 2026-06-22 07:02:43
[2026-06-22 07:02:43,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:02:43,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:02:43,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:02:43,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:02:43,612.612 INFO    ] time= 22/06/2026 07:02:43
[2026-06-22 07:02:43,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:02:43,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:02:43,774.774 INFO    ] No existing commands found in stream
[2026-06-22 07:02:48,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:02:48,805.805 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-22 07:02:50,068.068 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:02:50,071.071 INFO    ] Checking for system updates...
[2026-06-22 07:02:50,109.109 INFO    ] 200
[2026-06-22 07:02:50,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:02:50,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:02:50,169.169 INFO    ] No update needed
[2026-06-22 07:02:50,172.172 INFO    ] Checking for camera pi updates...
[2026-06-22 07:02:50,206.206 INFO    ] 200
[2026-06-22 07:02:50,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:02:50,257.257 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:02:50,345.345 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:02:50,348.348 INFO    ] No camera update needed
[2026-06-22 07:02:50,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:02:50,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:02:50,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:02:50,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:02:52,403.403 INFO    ] ================================================
[2026-06-22 07:02:52,418.418 INFO    ] Launching Daemon at Mon Jun 22 07:02:52 IST 2026
[2026-06-22 07:02:52,429.429 INFO    ] ================================================
[2026-06-22 07:02:53,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:02:53
[2026-06-22 07:02:53,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:02:53,799.799 INFO    ] Initializing speech engine...
[2026-06-22 07:02:53,807.807 INFO    ] 2026-06-22 07:02:53
[2026-06-22 07:02:54,077.077 INFO    ] 2026-06-22 07:02:54
[2026-06-22 07:02:54,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:02:54,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:02:54,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:02:54,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:02:54,442.442 INFO    ] time= 22/06/2026 07:02:54
[2026-06-22 07:02:54,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:02:54,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:02:54,520.520 INFO    ] No existing commands found in stream
[2026-06-22 07:02:59,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:02:59,537.537 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-22 07:03:03,009.009 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:03:03,013.013 INFO    ] Checking for system updates...
[2026-06-22 07:03:03,051.051 INFO    ] 200
[2026-06-22 07:03:03,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:03:03,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:03:03,127.127 INFO    ] No update needed
[2026-06-22 07:03:03,129.129 INFO    ] Checking for camera pi updates...
[2026-06-22 07:03:03,164.164 INFO    ] 200
[2026-06-22 07:03:03,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:03:03,209.209 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:03:03,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:03:03,296.296 INFO    ] No camera update needed
[2026-06-22 07:03:03,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:03:03,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:03:03,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:03:03,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:03:05,356.356 INFO    ] ================================================
[2026-06-22 07:03:05,371.371 INFO    ] Launching Daemon at Mon Jun 22 07:03:05 IST 2026
[2026-06-22 07:03:05,382.382 INFO    ] ================================================
[2026-06-22 07:03:05,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:03:05
[2026-06-22 07:03:06,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:03:06,847.847 INFO    ] Initializing speech engine...
[2026-06-22 07:03:06,855.855 INFO    ] 2026-06-22 07:03:06
[2026-06-22 07:03:07,161.161 INFO    ] 2026-06-22 07:03:07
[2026-06-22 07:03:07,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:03:07,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:03:07,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:03:07,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:03:07,520.520 INFO    ] time= 22/06/2026 07:03:07
[2026-06-22 07:03:07,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:03:07,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:03:07,601.601 INFO    ] No existing commands found in stream
[2026-06-22 07:03:12,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:03:12,615.615 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-22 07:03:13,209.209 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:03:13,211.211 INFO    ] Checking for system updates...
[2026-06-22 07:03:13,234.234 INFO    ] 200
[2026-06-22 07:03:13,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:03:13,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:03:13,267.267 INFO    ] No update needed
[2026-06-22 07:03:13,268.268 INFO    ] Checking for camera pi updates...
[2026-06-22 07:03:13,288.288 INFO    ] 200
[2026-06-22 07:03:13,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:03:13,330.330 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:03:13,414.414 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:03:13,417.417 INFO    ] No camera update needed
[2026-06-22 07:03:13,420.420 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:03:13,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:03:13,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:03:13,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:03:15,482.482 INFO    ] ================================================
[2026-06-22 07:03:15,498.498 INFO    ] Launching Daemon at Mon Jun 22 07:03:15 IST 2026
[2026-06-22 07:03:15,509.509 INFO    ] ================================================
[2026-06-22 07:03:16,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:03:16
[2026-06-22 07:03:16,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:03:17,156.156 INFO    ] Initializing speech engine...
[2026-06-22 07:03:17,169.169 INFO    ] 2026-06-22 07:03:17
[2026-06-22 07:03:17,461.461 INFO    ] 2026-06-22 07:03:17
[2026-06-22 07:03:17,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:03:17,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:03:17,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:03:17,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:03:17,910.910 INFO    ] time= 22/06/2026 07:03:17
[2026-06-22 07:03:17,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:03:17,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:03:18,033.033 INFO    ] No existing commands found in stream
[2026-06-22 07:03:23,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:03:23,059.059 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-22 07:03:26,554.554 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:03:26,556.556 INFO    ] Checking for system updates...
[2026-06-22 07:03:26,577.577 INFO    ] 200
[2026-06-22 07:03:26,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:03:26,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:03:26,621.621 INFO    ] No update needed
[2026-06-22 07:03:26,624.624 INFO    ] Checking for camera pi updates...
[2026-06-22 07:03:26,665.665 INFO    ] 200
[2026-06-22 07:03:26,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:03:26,710.710 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:03:26,812.812 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:03:26,815.815 INFO    ] No camera update needed
[2026-06-22 07:03:26,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:03:26,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:03:26,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:03:26,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:03:28,876.876 INFO    ] ================================================
[2026-06-22 07:03:28,891.891 INFO    ] Launching Daemon at Mon Jun 22 07:03:28 IST 2026
[2026-06-22 07:03:28,902.902 INFO    ] ================================================
[2026-06-22 07:03:29,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:03:29
[2026-06-22 07:03:30,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:03:30,447.447 INFO    ] Initializing speech engine...
[2026-06-22 07:03:30,458.458 INFO    ] 2026-06-22 07:03:30
[2026-06-22 07:03:30,772.772 INFO    ] 2026-06-22 07:03:30
[2026-06-22 07:03:30,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:03:31,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:03:31,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:03:31,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:03:31,277.277 INFO    ] time= 22/06/2026 07:03:31
[2026-06-22 07:03:31,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:03:31,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:03:31,411.411 INFO    ] No existing commands found in stream
[2026-06-22 07:03:36,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:03:36,440.440 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-22 07:03:37,675.675 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:03:37,676.676 INFO    ] Checking for system updates...
[2026-06-22 07:03:37,697.697 INFO    ] 200
[2026-06-22 07:03:37,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:03:37,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:03:37,751.751 INFO    ] No update needed
[2026-06-22 07:03:37,754.754 INFO    ] Checking for camera pi updates...
[2026-06-22 07:03:37,789.789 INFO    ] 200
[2026-06-22 07:03:37,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:03:37,834.834 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:03:37,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:03:37,921.921 INFO    ] No camera update needed
[2026-06-22 07:03:37,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:03:37,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:03:37,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:03:37,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:03:39,981.981 INFO    ] ================================================
[2026-06-22 07:03:40,996.996 INFO    ] Launching Daemon at Mon Jun 22 07:03:39 IST 2026
[2026-06-22 07:03:40,007.007 INFO    ] ================================================
[2026-06-22 07:03:40,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:03:40
[2026-06-22 07:03:41,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:03:41,435.435 INFO    ] Initializing speech engine...
[2026-06-22 07:03:41,442.442 INFO    ] 2026-06-22 07:03:41
[2026-06-22 07:03:41,739.739 INFO    ] 2026-06-22 07:03:41
[2026-06-22 07:03:41,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:03:41,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:03:41,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:03:42,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:03:42,099.099 INFO    ] time= 22/06/2026 07:03:42
[2026-06-22 07:03:42,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:03:42,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:03:42,178.178 INFO    ] No existing commands found in stream
[2026-06-22 07:03:47,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:03:47,191.191 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-22 07:03:47,779.779 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:03:47,782.782 INFO    ] Checking for system updates...
[2026-06-22 07:03:47,818.818 INFO    ] 200
[2026-06-22 07:03:47,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:03:47,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:03:47,875.875 INFO    ] No update needed
[2026-06-22 07:03:47,878.878 INFO    ] Checking for camera pi updates...
[2026-06-22 07:03:47,912.912 INFO    ] 200
[2026-06-22 07:03:47,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:03:47,966.966 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:03:48,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:03:48,068.068 INFO    ] No camera update needed
[2026-06-22 07:03:48,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:03:48,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:03:48,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:03:48,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:03:50,126.126 INFO    ] ================================================
[2026-06-22 07:03:50,141.141 INFO    ] Launching Daemon at Mon Jun 22 07:03:50 IST 2026
[2026-06-22 07:03:50,152.152 INFO    ] ================================================
[2026-06-22 07:03:50,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:03:50
[2026-06-22 07:03:51,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:03:51,531.531 INFO    ] Initializing speech engine...
[2026-06-22 07:03:51,541.541 INFO    ] 2026-06-22 07:03:51
[2026-06-22 07:03:51,791.791 INFO    ] 2026-06-22 07:03:51
[2026-06-22 07:03:51,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:03:53,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:03:53,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:03:53,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:03:53,669.669 INFO    ] time= 22/06/2026 07:03:53
[2026-06-22 07:03:53,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:03:53,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:03:53,735.735 INFO    ] No existing commands found in stream
[2026-06-22 07:03:58,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:03:58,750.750 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-22 07:04:00,410.410 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:04:00,413.413 INFO    ] Checking for system updates...
[2026-06-22 07:04:00,451.451 INFO    ] 200
[2026-06-22 07:04:00,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:04:00,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:04:00,510.510 INFO    ] No update needed
[2026-06-22 07:04:00,513.513 INFO    ] Checking for camera pi updates...
[2026-06-22 07:04:00,548.548 INFO    ] 200
[2026-06-22 07:04:00,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:04:00,593.593 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:04:00,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:04:00,688.688 INFO    ] No camera update needed
[2026-06-22 07:04:00,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:04:00,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:04:00,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:04:00,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:04:02,750.750 INFO    ] ================================================
[2026-06-22 07:04:02,767.767 INFO    ] Launching Daemon at Mon Jun 22 07:04:02 IST 2026
[2026-06-22 07:04:02,779.779 INFO    ] ================================================
[2026-06-22 07:04:03,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:04:03
[2026-06-22 07:04:04,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:04:04,405.405 INFO    ] Initializing speech engine...
[2026-06-22 07:04:04,413.413 INFO    ] 2026-06-22 07:04:04
[2026-06-22 07:04:04,696.696 INFO    ] 2026-06-22 07:04:04
[2026-06-22 07:04:04,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:04:04,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:04:04,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:04:05,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:04:05,253.253 INFO    ] time= 22/06/2026 07:04:05
[2026-06-22 07:04:05,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:04:05,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:04:05,392.392 INFO    ] No existing commands found in stream
[2026-06-22 07:04:10,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:04:10,423.423 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-22 07:04:12,780.780 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:04:12,783.783 INFO    ] Checking for system updates...
[2026-06-22 07:04:12,820.820 INFO    ] 200
[2026-06-22 07:04:12,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:04:12,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:04:12,879.879 INFO    ] No update needed
[2026-06-22 07:04:12,882.882 INFO    ] Checking for camera pi updates...
[2026-06-22 07:04:12,916.916 INFO    ] 200
[2026-06-22 07:04:12,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:04:12,960.960 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:04:13,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:04:13,072.072 INFO    ] No camera update needed
[2026-06-22 07:04:13,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:04:13,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:04:13,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:04:13,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:04:15,131.131 INFO    ] ================================================
[2026-06-22 07:04:15,146.146 INFO    ] Launching Daemon at Mon Jun 22 07:04:15 IST 2026
[2026-06-22 07:04:15,157.157 INFO    ] ================================================
[2026-06-22 07:04:15,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:04:15
[2026-06-22 07:04:16,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:04:16,674.674 INFO    ] Initializing speech engine...
[2026-06-22 07:04:16,682.682 INFO    ] 2026-06-22 07:04:16
[2026-06-22 07:04:16,970.970 INFO    ] 2026-06-22 07:04:16
[2026-06-22 07:04:17,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:04:17,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:04:17,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:04:17,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:04:17,455.455 INFO    ] time= 22/06/2026 07:04:17
[2026-06-22 07:04:17,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:04:17,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:04:17,643.643 INFO    ] No existing commands found in stream
[2026-06-22 07:04:22,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:04:22,679.679 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-22 07:04:23,741.741 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:04:23,743.743 INFO    ] Checking for system updates...
[2026-06-22 07:04:23,764.764 INFO    ] 200
[2026-06-22 07:04:23,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:04:23,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:04:23,798.798 INFO    ] No update needed
[2026-06-22 07:04:23,799.799 INFO    ] Checking for camera pi updates...
[2026-06-22 07:04:23,822.822 INFO    ] 200
[2026-06-22 07:04:23,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:04:23,867.867 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:04:23,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:04:23,954.954 INFO    ] No camera update needed
[2026-06-22 07:04:23,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:04:23,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:04:23,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:04:23,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:04:26,012.012 INFO    ] ================================================
[2026-06-22 07:04:26,028.028 INFO    ] Launching Daemon at Mon Jun 22 07:04:26 IST 2026
[2026-06-22 07:04:26,038.038 INFO    ] ================================================
[2026-06-22 07:04:26,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:04:26
[2026-06-22 07:04:27,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:04:27,674.674 INFO    ] Initializing speech engine...
[2026-06-22 07:04:27,688.688 INFO    ] 2026-06-22 07:04:27
[2026-06-22 07:04:28,001.001 INFO    ] 2026-06-22 07:04:27
[2026-06-22 07:04:28,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:04:28,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:04:28,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:04:28,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:04:28,485.485 INFO    ] time= 22/06/2026 07:04:28
[2026-06-22 07:04:28,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:04:28,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:04:28,629.629 INFO    ] No existing commands found in stream
[2026-06-22 07:04:33,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:04:33,650.650 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-22 07:04:37,979.979 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:04:37,982.982 INFO    ] Checking for system updates...
[2026-06-22 07:04:38,018.018 INFO    ] 200
[2026-06-22 07:04:38,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:04:38,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:04:38,075.075 INFO    ] No update needed
[2026-06-22 07:04:38,077.077 INFO    ] Checking for camera pi updates...
[2026-06-22 07:04:38,118.118 INFO    ] 200
[2026-06-22 07:04:38,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:04:38,162.162 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:04:38,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:04:38,364.364 INFO    ] No camera update needed
[2026-06-22 07:04:38,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:04:38,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:04:38,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:04:38,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:04:40,421.421 INFO    ] ================================================
[2026-06-22 07:04:40,436.436 INFO    ] Launching Daemon at Mon Jun 22 07:04:40 IST 2026
[2026-06-22 07:04:40,447.447 INFO    ] ================================================
[2026-06-22 07:04:41,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:04:41
[2026-06-22 07:04:41,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:04:41,859.859 INFO    ] Initializing speech engine...
[2026-06-22 07:04:41,866.866 INFO    ] 2026-06-22 07:04:41
[2026-06-22 07:04:42,167.167 INFO    ] 2026-06-22 07:04:42
[2026-06-22 07:04:42,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:04:42,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:04:42,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:04:42,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:04:42,527.527 INFO    ] time= 22/06/2026 07:04:42
[2026-06-22 07:04:42,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:04:42,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:04:42,610.610 INFO    ] No existing commands found in stream
[2026-06-22 07:04:47,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:04:47,626.626 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-22 07:04:51,157.157 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:04:51,160.160 INFO    ] Checking for system updates...
[2026-06-22 07:04:51,196.196 INFO    ] 200
[2026-06-22 07:04:51,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:04:51,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:04:51,252.252 INFO    ] No update needed
[2026-06-22 07:04:51,255.255 INFO    ] Checking for camera pi updates...
[2026-06-22 07:04:51,288.288 INFO    ] 200
[2026-06-22 07:04:51,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:04:51,332.332 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:04:51,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:04:51,435.435 INFO    ] No camera update needed
[2026-06-22 07:04:51,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:04:51,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:04:51,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:04:51,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:04:53,491.491 INFO    ] ================================================
[2026-06-22 07:04:53,507.507 INFO    ] Launching Daemon at Mon Jun 22 07:04:53 IST 2026
[2026-06-22 07:04:53,518.518 INFO    ] ================================================
[2026-06-22 07:04:54,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:04:54
[2026-06-22 07:04:54,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:04:54,889.889 INFO    ] Initializing speech engine...
[2026-06-22 07:04:54,898.898 INFO    ] 2026-06-22 07:04:54
[2026-06-22 07:04:55,200.200 INFO    ] 2026-06-22 07:04:55
[2026-06-22 07:04:55,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:04:55,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:04:55,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:04:55,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:04:55,587.587 INFO    ] time= 22/06/2026 07:04:55
[2026-06-22 07:04:55,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:04:55,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:04:55,715.715 INFO    ] No existing commands found in stream
[2026-06-22 07:05:00,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:05:00,731.731 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-22 07:05:04,830.830 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:05:04,833.833 INFO    ] Checking for system updates...
[2026-06-22 07:05:04,869.869 INFO    ] 200
[2026-06-22 07:05:04,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:05:04,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:05:04,927.927 INFO    ] No update needed
[2026-06-22 07:05:04,929.929 INFO    ] Checking for camera pi updates...
[2026-06-22 07:05:04,968.968 INFO    ] 200
[2026-06-22 07:05:04,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:05:05,012.012 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:05:05,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:05:05,092.092 INFO    ] No camera update needed
[2026-06-22 07:05:05,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:05:05,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:05:05,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:05:05,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:05:07,148.148 INFO    ] ================================================
[2026-06-22 07:05:07,164.164 INFO    ] Launching Daemon at Mon Jun 22 07:05:07 IST 2026
[2026-06-22 07:05:07,174.174 INFO    ] ================================================
[2026-06-22 07:05:07,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:05:07
[2026-06-22 07:05:08,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:05:08,637.637 INFO    ] Initializing speech engine...
[2026-06-22 07:05:08,646.646 INFO    ] 2026-06-22 07:05:08
[2026-06-22 07:05:08,907.907 INFO    ] 2026-06-22 07:05:08
[2026-06-22 07:05:08,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:05:09,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:05:09,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:05:09,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:05:09,369.369 INFO    ] time= 22/06/2026 07:05:09
[2026-06-22 07:05:09,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:05:09,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:05:09,528.528 INFO    ] No existing commands found in stream
[2026-06-22 07:05:14,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:05:14,557.557 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-22 07:05:15,910.910 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:05:15,913.913 INFO    ] Checking for system updates...
[2026-06-22 07:05:15,949.949 INFO    ] 200
[2026-06-22 07:05:15,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:05:16,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:05:16,007.007 INFO    ] No update needed
[2026-06-22 07:05:16,009.009 INFO    ] Checking for camera pi updates...
[2026-06-22 07:05:16,043.043 INFO    ] 200
[2026-06-22 07:05:16,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:05:16,087.087 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:05:16,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:05:16,171.171 INFO    ] No camera update needed
[2026-06-22 07:05:16,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:05:16,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:05:16,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:05:16,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:05:18,227.227 INFO    ] ================================================
[2026-06-22 07:05:18,243.243 INFO    ] Launching Daemon at Mon Jun 22 07:05:18 IST 2026
[2026-06-22 07:05:18,254.254 INFO    ] ================================================
[2026-06-22 07:05:18,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:05:18
[2026-06-22 07:05:19,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:05:19,617.617 INFO    ] Initializing speech engine...
[2026-06-22 07:05:19,642.642 INFO    ] 2026-06-22 07:05:19
[2026-06-22 07:05:19,911.911 INFO    ] 2026-06-22 07:05:19
[2026-06-22 07:05:19,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:05:20,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:05:20,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:05:20,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:05:20,274.274 INFO    ] time= 22/06/2026 07:05:20
[2026-06-22 07:05:20,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:05:20,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:05:20,394.394 INFO    ] No existing commands found in stream
[2026-06-22 07:05:25,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:05:25,410.410 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-22 07:05:26,020.020 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:05:26,023.023 INFO    ] Checking for system updates...
[2026-06-22 07:05:26,059.059 INFO    ] 200
[2026-06-22 07:05:26,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:05:26,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:05:26,120.120 INFO    ] No update needed
[2026-06-22 07:05:26,122.122 INFO    ] Checking for camera pi updates...
[2026-06-22 07:05:26,160.160 INFO    ] 200
[2026-06-22 07:05:26,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:05:26,203.203 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:05:26,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:05:26,310.310 INFO    ] No camera update needed
[2026-06-22 07:05:26,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:05:26,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:05:26,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:05:26,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:05:28,365.365 INFO    ] ================================================
[2026-06-22 07:05:28,380.380 INFO    ] Launching Daemon at Mon Jun 22 07:05:28 IST 2026
[2026-06-22 07:05:28,391.391 INFO    ] ================================================
[2026-06-22 07:05:28,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:05:28
[2026-06-22 07:05:29,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:05:29,712.712 INFO    ] Initializing speech engine...
[2026-06-22 07:05:29,721.721 INFO    ] 2026-06-22 07:05:29
[2026-06-22 07:05:30,005.005 INFO    ] 2026-06-22 07:05:29
[2026-06-22 07:05:30,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:05:30,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:05:30,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:05:30,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:05:30,409.409 INFO    ] time= 22/06/2026 07:05:30
[2026-06-22 07:05:30,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:05:30,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:05:30,566.566 INFO    ] No existing commands found in stream
[2026-06-22 07:05:35,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:05:35,594.594 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-22 07:05:36,886.886 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:05:36,887.887 INFO    ] Checking for system updates...
[2026-06-22 07:05:36,908.908 INFO    ] 200
[2026-06-22 07:05:36,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:05:36,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:05:36,940.940 INFO    ] No update needed
[2026-06-22 07:05:36,942.942 INFO    ] Checking for camera pi updates...
[2026-06-22 07:05:36,964.964 INFO    ] 200
[2026-06-22 07:05:36,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:05:37,010.010 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:05:37,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:05:37,108.108 INFO    ] No camera update needed
[2026-06-22 07:05:37,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:05:37,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:05:37,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:05:37,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:05:39,163.163 INFO    ] ================================================
[2026-06-22 07:05:39,179.179 INFO    ] Launching Daemon at Mon Jun 22 07:05:39 IST 2026
[2026-06-22 07:05:39,190.190 INFO    ] ================================================
[2026-06-22 07:05:39,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:05:39
[2026-06-22 07:05:40,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:05:40,568.568 INFO    ] Initializing speech engine...
[2026-06-22 07:05:40,584.584 INFO    ] 2026-06-22 07:05:40
[2026-06-22 07:05:40,868.868 INFO    ] 2026-06-22 07:05:40
[2026-06-22 07:05:40,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:05:41,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:05:41,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:05:41,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:05:41,265.265 INFO    ] time= 22/06/2026 07:05:41
[2026-06-22 07:05:41,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:05:41,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:05:41,373.373 INFO    ] No existing commands found in stream
[2026-06-22 07:05:46,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:05:46,388.388 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-22 07:05:47,128.128 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:05:47,130.130 INFO    ] Checking for system updates...
[2026-06-22 07:05:47,167.167 INFO    ] 200
[2026-06-22 07:05:47,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:05:47,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:05:47,225.225 INFO    ] No update needed
[2026-06-22 07:05:47,228.228 INFO    ] Checking for camera pi updates...
[2026-06-22 07:05:47,267.267 INFO    ] 200
[2026-06-22 07:05:47,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:05:47,325.325 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:05:47,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:05:47,407.407 INFO    ] No camera update needed
[2026-06-22 07:05:47,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:05:47,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:05:47,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:05:47,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:05:49,465.465 INFO    ] ================================================
[2026-06-22 07:05:49,482.482 INFO    ] Launching Daemon at Mon Jun 22 07:05:49 IST 2026
[2026-06-22 07:05:49,494.494 INFO    ] ================================================
[2026-06-22 07:05:50,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:05:50
[2026-06-22 07:05:50,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:05:51,211.211 INFO    ] Initializing speech engine...
[2026-06-22 07:05:51,224.224 INFO    ] 2026-06-22 07:05:51
[2026-06-22 07:05:51,479.479 INFO    ] 2026-06-22 07:05:51
[2026-06-22 07:05:51,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:05:52,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:05:52,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:05:53,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:05:53,755.755 INFO    ] time= 22/06/2026 07:05:53
[2026-06-22 07:05:53,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:05:53,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:05:53,875.875 INFO    ] No existing commands found in stream
[2026-06-22 07:05:58,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:05:58,889.889 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-22 07:06:01,437.437 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:06:01,441.441 INFO    ] Checking for system updates...
[2026-06-22 07:06:01,493.493 INFO    ] 200
[2026-06-22 07:06:01,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:06:01,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:06:01,610.610 INFO    ] No update needed
[2026-06-22 07:06:01,613.613 INFO    ] Checking for camera pi updates...
[2026-06-22 07:06:01,674.674 INFO    ] 200
[2026-06-22 07:06:01,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:06:01,726.726 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:06:01,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:06:01,817.817 INFO    ] No camera update needed
[2026-06-22 07:06:01,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:06:01,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:06:01,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:06:01,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:06:03,882.882 INFO    ] ================================================
[2026-06-22 07:06:03,897.897 INFO    ] Launching Daemon at Mon Jun 22 07:06:03 IST 2026
[2026-06-22 07:06:03,908.908 INFO    ] ================================================
[2026-06-22 07:06:04,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:06:04
[2026-06-22 07:06:05,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:06:05,362.362 INFO    ] Initializing speech engine...
[2026-06-22 07:06:05,386.386 INFO    ] 2026-06-22 07:06:05
[2026-06-22 07:06:05,669.669 INFO    ] 2026-06-22 07:06:05
[2026-06-22 07:06:05,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:06:05,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:06:05,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:06:06,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:06:06,065.065 INFO    ] time= 22/06/2026 07:06:06
[2026-06-22 07:06:06,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:06:06,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:06:06,193.193 INFO    ] No existing commands found in stream
[2026-06-22 07:06:11,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:06:11,207.207 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-22 07:06:12,777.777 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:06:12,779.779 INFO    ] Checking for system updates...
[2026-06-22 07:06:12,799.799 INFO    ] 200
[2026-06-22 07:06:12,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:06:12,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:06:12,832.832 INFO    ] No update needed
[2026-06-22 07:06:12,834.834 INFO    ] Checking for camera pi updates...
[2026-06-22 07:06:12,854.854 INFO    ] 200
[2026-06-22 07:06:12,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:06:12,879.879 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:06:12,943.943 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:06:12,946.946 INFO    ] No camera update needed
[2026-06-22 07:06:12,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:06:12,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:06:12,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:06:12,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:06:15,002.002 INFO    ] ================================================
[2026-06-22 07:06:15,018.018 INFO    ] Launching Daemon at Mon Jun 22 07:06:15 IST 2026
[2026-06-22 07:06:15,029.029 INFO    ] ================================================
[2026-06-22 07:06:15,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:06:15
[2026-06-22 07:06:16,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:06:16,575.575 INFO    ] Initializing speech engine...
[2026-06-22 07:06:16,587.587 INFO    ] 2026-06-22 07:06:16
[2026-06-22 07:06:16,904.904 INFO    ] 2026-06-22 07:06:16
[2026-06-22 07:06:16,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:06:17,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:06:17,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:06:17,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:06:17,336.336 INFO    ] time= 22/06/2026 07:06:17
[2026-06-22 07:06:17,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:06:17,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:06:17,492.492 INFO    ] No existing commands found in stream
[2026-06-22 07:06:22,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:06:22,509.509 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-22 07:06:25,581.581 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:06:25,585.585 INFO    ] Checking for system updates...
[2026-06-22 07:06:25,623.623 INFO    ] 200
[2026-06-22 07:06:25,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:06:25,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:06:25,689.689 INFO    ] No update needed
[2026-06-22 07:06:25,691.691 INFO    ] Checking for camera pi updates...
[2026-06-22 07:06:25,725.725 INFO    ] 200
[2026-06-22 07:06:25,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:06:25,769.769 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:06:25,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:06:25,865.865 INFO    ] No camera update needed
[2026-06-22 07:06:25,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:06:25,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:06:25,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:06:25,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:06:27,922.922 INFO    ] ================================================
[2026-06-22 07:06:27,938.938 INFO    ] Launching Daemon at Mon Jun 22 07:06:27 IST 2026
[2026-06-22 07:06:27,949.949 INFO    ] ================================================
[2026-06-22 07:06:28,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:06:28
[2026-06-22 07:06:29,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:06:29,332.332 INFO    ] Initializing speech engine...
[2026-06-22 07:06:29,340.340 INFO    ] 2026-06-22 07:06:29
[2026-06-22 07:06:29,591.591 INFO    ] 2026-06-22 07:06:29
[2026-06-22 07:06:29,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:06:29,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:06:29,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:06:30,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:06:30,073.073 INFO    ] time= 22/06/2026 07:06:30
[2026-06-22 07:06:30,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:06:30,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:06:30,217.217 INFO    ] No existing commands found in stream
[2026-06-22 07:06:35,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:06:35,232.232 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-22 07:06:38,490.490 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:06:38,491.491 INFO    ] Checking for system updates...
[2026-06-22 07:06:38,516.516 INFO    ] 200
[2026-06-22 07:06:38,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:06:38,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:06:38,573.573 INFO    ] No update needed
[2026-06-22 07:06:38,576.576 INFO    ] Checking for camera pi updates...
[2026-06-22 07:06:38,611.611 INFO    ] 200
[2026-06-22 07:06:38,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:06:38,655.655 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:06:38,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:06:38,738.738 INFO    ] No camera update needed
[2026-06-22 07:06:38,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:06:38,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:06:38,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:06:38,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:06:40,797.797 INFO    ] ================================================
[2026-06-22 07:06:40,812.812 INFO    ] Launching Daemon at Mon Jun 22 07:06:40 IST 2026
[2026-06-22 07:06:40,823.823 INFO    ] ================================================
[2026-06-22 07:06:41,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:06:41
[2026-06-22 07:06:41,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:06:42,165.165 INFO    ] Initializing speech engine...
[2026-06-22 07:06:42,174.174 INFO    ] 2026-06-22 07:06:42
[2026-06-22 07:06:42,447.447 INFO    ] 2026-06-22 07:06:42
[2026-06-22 07:06:42,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:06:42,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:06:42,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:06:42,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:06:42,953.953 INFO    ] time= 22/06/2026 07:06:42
[2026-06-22 07:06:43,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:06:43,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:06:43,143.143 INFO    ] No existing commands found in stream
[2026-06-22 07:06:48,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:06:48,175.175 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-22 07:06:48,636.636 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:06:48,637.637 INFO    ] Checking for system updates...
[2026-06-22 07:06:48,659.659 INFO    ] 200
[2026-06-22 07:06:48,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:06:48,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:06:48,694.694 INFO    ] No update needed
[2026-06-22 07:06:48,696.696 INFO    ] Checking for camera pi updates...
[2026-06-22 07:06:48,729.729 INFO    ] 200
[2026-06-22 07:06:48,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:06:48,777.777 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:06:48,945.945 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:06:48,947.947 INFO    ] No camera update needed
[2026-06-22 07:06:48,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:06:48,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:06:48,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:06:48,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:06:51,004.004 INFO    ] ================================================
[2026-06-22 07:06:51,020.020 INFO    ] Launching Daemon at Mon Jun 22 07:06:51 IST 2026
[2026-06-22 07:06:51,031.031 INFO    ] ================================================
[2026-06-22 07:06:51,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:06:51
[2026-06-22 07:06:52,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:06:52,506.506 INFO    ] Initializing speech engine...
[2026-06-22 07:06:52,513.513 INFO    ] 2026-06-22 07:06:52
[2026-06-22 07:06:52,785.785 INFO    ] 2026-06-22 07:06:52
[2026-06-22 07:06:52,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:06:53,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:06:53,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:06:53,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:06:53,891.891 INFO    ] time= 22/06/2026 07:06:53
[2026-06-22 07:06:53,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:06:53,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:06:54,060.060 INFO    ] No existing commands found in stream
[2026-06-22 07:06:59,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:06:59,088.088 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-22 07:07:02,073.073 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:07:02,077.077 INFO    ] Checking for system updates...
[2026-06-22 07:07:02,134.134 INFO    ] 200
[2026-06-22 07:07:02,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:07:02,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:07:02,242.242 INFO    ] No update needed
[2026-06-22 07:07:02,247.247 INFO    ] Checking for camera pi updates...
[2026-06-22 07:07:02,295.295 INFO    ] 200
[2026-06-22 07:07:02,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:07:02,390.390 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:07:02,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:07:02,479.479 INFO    ] No camera update needed
[2026-06-22 07:07:02,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:07:02,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:07:02,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:07:02,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:07:04,541.541 INFO    ] ================================================
[2026-06-22 07:07:04,557.557 INFO    ] Launching Daemon at Mon Jun 22 07:07:04 IST 2026
[2026-06-22 07:07:04,569.569 INFO    ] ================================================
[2026-06-22 07:07:05,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:07:05
[2026-06-22 07:07:05,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:07:06,036.036 INFO    ] Initializing speech engine...
[2026-06-22 07:07:06,045.045 INFO    ] 2026-06-22 07:07:06
[2026-06-22 07:07:06,316.316 INFO    ] 2026-06-22 07:07:06
[2026-06-22 07:07:06,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:07:06,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:07:06,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:07:06,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:07:06,792.792 INFO    ] time= 22/06/2026 07:07:06
[2026-06-22 07:07:06,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:07:06,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:07:06,961.961 INFO    ] No existing commands found in stream
[2026-06-22 07:07:11,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:07:11,994.994 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-22 07:07:13,220.220 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:07:13,221.221 INFO    ] Checking for system updates...
[2026-06-22 07:07:13,242.242 INFO    ] 200
[2026-06-22 07:07:13,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:07:13,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:07:13,276.276 INFO    ] No update needed
[2026-06-22 07:07:13,277.277 INFO    ] Checking for camera pi updates...
[2026-06-22 07:07:13,298.298 INFO    ] 200
[2026-06-22 07:07:13,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:07:13,331.331 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:07:13,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:07:13,412.412 INFO    ] No camera update needed
[2026-06-22 07:07:13,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:07:13,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:07:13,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:07:13,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:07:15,467.467 INFO    ] ================================================
[2026-06-22 07:07:15,483.483 INFO    ] Launching Daemon at Mon Jun 22 07:07:15 IST 2026
[2026-06-22 07:07:15,494.494 INFO    ] ================================================
[2026-06-22 07:07:16,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:07:16
[2026-06-22 07:07:16,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:07:16,961.961 INFO    ] Initializing speech engine...
[2026-06-22 07:07:16,982.982 INFO    ] 2026-06-22 07:07:16
[2026-06-22 07:07:17,241.241 INFO    ] 2026-06-22 07:07:17
[2026-06-22 07:07:17,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:07:17,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:07:17,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:07:17,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:07:17,618.618 INFO    ] time= 22/06/2026 07:07:17
[2026-06-22 07:07:17,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:07:17,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:07:17,699.699 INFO    ] No existing commands found in stream
[2026-06-22 07:07:22,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:07:22,739.739 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-22 07:07:24,524.524 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:07:24,526.526 INFO    ] Checking for system updates...
[2026-06-22 07:07:24,563.563 INFO    ] 200
[2026-06-22 07:07:24,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:07:24,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:07:24,621.621 INFO    ] No update needed
[2026-06-22 07:07:24,623.623 INFO    ] Checking for camera pi updates...
[2026-06-22 07:07:24,661.661 INFO    ] 200
[2026-06-22 07:07:24,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:07:24,708.708 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:07:24,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:07:24,788.788 INFO    ] No camera update needed
[2026-06-22 07:07:24,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:07:24,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:07:24,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:07:24,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:07:26,845.845 INFO    ] ================================================
[2026-06-22 07:07:26,861.861 INFO    ] Launching Daemon at Mon Jun 22 07:07:26 IST 2026
[2026-06-22 07:07:26,872.872 INFO    ] ================================================
[2026-06-22 07:07:27,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:07:27
[2026-06-22 07:07:27,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:07:28,225.225 INFO    ] Initializing speech engine...
[2026-06-22 07:07:28,231.231 INFO    ] 2026-06-22 07:07:28
[2026-06-22 07:07:28,527.527 INFO    ] 2026-06-22 07:07:28
[2026-06-22 07:07:28,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:07:28,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:07:28,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:07:28,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:07:28,916.916 INFO    ] time= 22/06/2026 07:07:28
[2026-06-22 07:07:28,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:07:28,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:07:29,027.027 INFO    ] No existing commands found in stream
[2026-06-22 07:07:34,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:07:34,043.043 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-22 07:07:34,962.962 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:07:34,964.964 INFO    ] Checking for system updates...
[2026-06-22 07:07:35,000.000 INFO    ] 200
[2026-06-22 07:07:35,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:07:35,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:07:35,057.057 INFO    ] No update needed
[2026-06-22 07:07:35,060.060 INFO    ] Checking for camera pi updates...
[2026-06-22 07:07:35,093.093 INFO    ] 200
[2026-06-22 07:07:35,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:07:35,137.137 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:07:35,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:07:35,229.229 INFO    ] No camera update needed
[2026-06-22 07:07:35,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:07:35,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:07:35,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:07:35,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:07:37,285.285 INFO    ] ================================================
[2026-06-22 07:07:37,300.300 INFO    ] Launching Daemon at Mon Jun 22 07:07:37 IST 2026
[2026-06-22 07:07:37,312.312 INFO    ] ================================================
[2026-06-22 07:07:37,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:07:37
[2026-06-22 07:07:38,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:07:38,739.739 INFO    ] Initializing speech engine...
[2026-06-22 07:07:38,746.746 INFO    ] 2026-06-22 07:07:38
[2026-06-22 07:07:38,999.999 INFO    ] 2026-06-22 07:07:38
[2026-06-22 07:07:39,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:07:39,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:07:39,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:07:39,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:07:39,464.464 INFO    ] time= 22/06/2026 07:07:39
[2026-06-22 07:07:39,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:07:39,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:07:39,626.626 INFO    ] No existing commands found in stream
[2026-06-22 07:07:44,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:07:44,639.639 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-22 07:07:45,452.452 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:07:45,455.455 INFO    ] Checking for system updates...
[2026-06-22 07:07:45,491.491 INFO    ] 200
[2026-06-22 07:07:45,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:07:45,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:07:45,551.551 INFO    ] No update needed
[2026-06-22 07:07:45,553.553 INFO    ] Checking for camera pi updates...
[2026-06-22 07:07:45,588.588 INFO    ] 200
[2026-06-22 07:07:45,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:07:45,632.632 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:07:45,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:07:45,721.721 INFO    ] No camera update needed
[2026-06-22 07:07:45,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:07:45,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:07:45,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:07:45,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:07:47,781.781 INFO    ] ================================================
[2026-06-22 07:07:47,797.797 INFO    ] Launching Daemon at Mon Jun 22 07:07:47 IST 2026
[2026-06-22 07:07:47,808.808 INFO    ] ================================================
[2026-06-22 07:07:48,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:07:48
[2026-06-22 07:07:49,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:07:49,316.316 INFO    ] Initializing speech engine...
[2026-06-22 07:07:49,329.329 INFO    ] 2026-06-22 07:07:49
[2026-06-22 07:07:49,643.643 INFO    ] 2026-06-22 07:07:49
[2026-06-22 07:07:49,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:07:49,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:07:49,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:07:50,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:07:50,079.079 INFO    ] time= 22/06/2026 07:07:50
[2026-06-22 07:07:50,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:07:50,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:07:50,229.229 INFO    ] No existing commands found in stream
[2026-06-22 07:07:55,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:07:55,246.246 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-22 07:07:56,108.108 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:07:56,111.111 INFO    ] Checking for system updates...
[2026-06-22 07:07:56,153.153 INFO    ] 200
[2026-06-22 07:07:56,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:07:56,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:07:56,214.214 INFO    ] No update needed
[2026-06-22 07:07:56,217.217 INFO    ] Checking for camera pi updates...
[2026-06-22 07:07:56,253.253 INFO    ] 200
[2026-06-22 07:07:56,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:07:56,301.301 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:07:56,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:07:56,428.428 INFO    ] No camera update needed
[2026-06-22 07:07:56,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:07:56,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:07:56,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:07:56,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:07:58,486.486 INFO    ] ================================================
[2026-06-22 07:07:58,501.501 INFO    ] Launching Daemon at Mon Jun 22 07:07:58 IST 2026
[2026-06-22 07:07:58,512.512 INFO    ] ================================================
[2026-06-22 07:07:59,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:07:59
[2026-06-22 07:07:59,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:07:59,882.882 INFO    ] Initializing speech engine...
[2026-06-22 07:07:59,897.897 INFO    ] 2026-06-22 07:07:59
[2026-06-22 07:08:00,183.183 INFO    ] 2026-06-22 07:08:00
[2026-06-22 07:08:00,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:08:00,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:08:00,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:08:00,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:08:00,578.578 INFO    ] time= 22/06/2026 07:08:00
[2026-06-22 07:08:00,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:08:00,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:08:00,685.685 INFO    ] No existing commands found in stream
[2026-06-22 07:08:05,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:08:05,701.701 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-22 07:08:08,497.497 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:08:08,500.500 INFO    ] Checking for system updates...
[2026-06-22 07:08:08,536.536 INFO    ] 200
[2026-06-22 07:08:08,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:08:08,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:08:08,593.593 INFO    ] No update needed
[2026-06-22 07:08:08,595.595 INFO    ] Checking for camera pi updates...
[2026-06-22 07:08:08,629.629 INFO    ] 200
[2026-06-22 07:08:08,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:08:08,676.676 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:08:08,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:08:08,762.762 INFO    ] No camera update needed
[2026-06-22 07:08:08,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:08:08,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:08:08,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:08:08,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:08:10,817.817 INFO    ] ================================================
[2026-06-22 07:08:10,832.832 INFO    ] Launching Daemon at Mon Jun 22 07:08:10 IST 2026
[2026-06-22 07:08:10,843.843 INFO    ] ================================================
[2026-06-22 07:08:11,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:08:11
[2026-06-22 07:08:11,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:08:12,162.162 INFO    ] Initializing speech engine...
[2026-06-22 07:08:12,169.169 INFO    ] 2026-06-22 07:08:12
[2026-06-22 07:08:12,459.459 INFO    ] 2026-06-22 07:08:12
[2026-06-22 07:08:12,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:08:12,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:08:12,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:08:12,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:08:12,807.807 INFO    ] time= 22/06/2026 07:08:12
[2026-06-22 07:08:12,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:08:12,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:08:12,887.887 INFO    ] No existing commands found in stream
[2026-06-22 07:08:17,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:08:17,900.900 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-22 07:08:19,255.255 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:08:19,256.256 INFO    ] Checking for system updates...
[2026-06-22 07:08:19,277.277 INFO    ] 200
[2026-06-22 07:08:19,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:08:19,319.319 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:08:19,321.321 INFO    ] No update needed
[2026-06-22 07:08:19,324.324 INFO    ] Checking for camera pi updates...
[2026-06-22 07:08:19,358.358 INFO    ] 200
[2026-06-22 07:08:19,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:08:19,401.401 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:08:19,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:08:19,493.493 INFO    ] No camera update needed
[2026-06-22 07:08:19,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:08:19,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:08:19,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:08:19,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:08:21,548.548 INFO    ] ================================================
[2026-06-22 07:08:21,563.563 INFO    ] Launching Daemon at Mon Jun 22 07:08:21 IST 2026
[2026-06-22 07:08:21,574.574 INFO    ] ================================================
[2026-06-22 07:08:22,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:08:22
[2026-06-22 07:08:22,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:08:23,012.012 INFO    ] Initializing speech engine...
[2026-06-22 07:08:23,032.032 INFO    ] 2026-06-22 07:08:23
[2026-06-22 07:08:23,295.295 INFO    ] 2026-06-22 07:08:23
[2026-06-22 07:08:23,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:08:23,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:08:23,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:08:23,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:08:24,022.022 INFO    ] time= 22/06/2026 07:08:23
[2026-06-22 07:08:24,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:08:24,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:08:24,245.245 INFO    ] No existing commands found in stream
[2026-06-22 07:08:29,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:08:29,273.273 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-22 07:08:33,422.422 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:08:33,425.425 INFO    ] Checking for system updates...
[2026-06-22 07:08:33,461.461 INFO    ] 200
[2026-06-22 07:08:33,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:08:33,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:08:33,525.525 INFO    ] No update needed
[2026-06-22 07:08:33,527.527 INFO    ] Checking for camera pi updates...
[2026-06-22 07:08:33,560.560 INFO    ] 200
[2026-06-22 07:08:33,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:08:33,603.603 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:08:33,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:08:33,689.689 INFO    ] No camera update needed
[2026-06-22 07:08:33,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:08:33,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:08:33,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:08:33,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:08:35,747.747 INFO    ] ================================================
[2026-06-22 07:08:35,762.762 INFO    ] Launching Daemon at Mon Jun 22 07:08:35 IST 2026
[2026-06-22 07:08:35,774.774 INFO    ] ================================================
[2026-06-22 07:08:36,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:08:36
[2026-06-22 07:08:36,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:08:37,223.223 INFO    ] Initializing speech engine...
[2026-06-22 07:08:37,238.238 INFO    ] 2026-06-22 07:08:37
[2026-06-22 07:08:37,520.520 INFO    ] 2026-06-22 07:08:37
[2026-06-22 07:08:37,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:08:37,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:08:37,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:08:37,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:08:37,893.893 INFO    ] time= 22/06/2026 07:08:37
[2026-06-22 07:08:37,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:08:37,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:08:38,013.013 INFO    ] No existing commands found in stream
[2026-06-22 07:08:43,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:08:43,033.033 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-22 07:08:44,161.161 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:08:44,163.163 INFO    ] Checking for system updates...
[2026-06-22 07:08:44,184.184 INFO    ] 200
[2026-06-22 07:08:44,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:08:44,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:08:44,218.218 INFO    ] No update needed
[2026-06-22 07:08:44,221.221 INFO    ] Checking for camera pi updates...
[2026-06-22 07:08:44,256.256 INFO    ] 200
[2026-06-22 07:08:44,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:08:44,305.305 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:08:44,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:08:44,394.394 INFO    ] No camera update needed
[2026-06-22 07:08:44,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:08:44,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:08:44,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:08:44,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:08:46,453.453 INFO    ] ================================================
[2026-06-22 07:08:46,469.469 INFO    ] Launching Daemon at Mon Jun 22 07:08:46 IST 2026
[2026-06-22 07:08:46,481.481 INFO    ] ================================================
[2026-06-22 07:08:47,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:08:47
[2026-06-22 07:08:47,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:08:47,863.863 INFO    ] Initializing speech engine...
[2026-06-22 07:08:47,869.869 INFO    ] 2026-06-22 07:08:47
[2026-06-22 07:08:48,135.135 INFO    ] 2026-06-22 07:08:48
[2026-06-22 07:08:48,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:08:48,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:08:48,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:08:48,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:08:48,548.548 INFO    ] time= 22/06/2026 07:08:48
[2026-06-22 07:08:48,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:08:48,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:08:48,635.635 INFO    ] No existing commands found in stream
[2026-06-22 07:08:53,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:08:53,658.658 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-22 07:08:56,176.176 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:08:56,178.178 INFO    ] Checking for system updates...
[2026-06-22 07:08:56,215.215 INFO    ] 200
[2026-06-22 07:08:56,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:08:56,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:08:56,274.274 INFO    ] No update needed
[2026-06-22 07:08:56,278.278 INFO    ] Checking for camera pi updates...
[2026-06-22 07:08:56,316.316 INFO    ] 200
[2026-06-22 07:08:56,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:08:56,363.363 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:08:56,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:08:56,564.564 INFO    ] No camera update needed
[2026-06-22 07:08:56,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:08:56,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:08:56,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:08:56,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:08:58,620.620 INFO    ] ================================================
[2026-06-22 07:08:58,637.637 INFO    ] Launching Daemon at Mon Jun 22 07:08:58 IST 2026
[2026-06-22 07:08:58,648.648 INFO    ] ================================================
[2026-06-22 07:08:59,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:08:59
[2026-06-22 07:08:59,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:09:00,137.137 INFO    ] Initializing speech engine...
[2026-06-22 07:09:00,143.143 INFO    ] 2026-06-22 07:09:00
[2026-06-22 07:09:00,404.404 INFO    ] 2026-06-22 07:09:00
[2026-06-22 07:09:00,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:09:00,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:09:00,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:09:00,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:09:00,762.762 INFO    ] time= 22/06/2026 07:09:00
[2026-06-22 07:09:00,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:09:00,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:09:00,843.843 INFO    ] No existing commands found in stream
[2026-06-22 07:09:05,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:09:05,871.871 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-22 07:09:06,373.373 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:09:06,376.376 INFO    ] Checking for system updates...
[2026-06-22 07:09:06,412.412 INFO    ] 200
[2026-06-22 07:09:06,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:09:06,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:09:06,472.472 INFO    ] No update needed
[2026-06-22 07:09:06,474.474 INFO    ] Checking for camera pi updates...
[2026-06-22 07:09:06,508.508 INFO    ] 200
[2026-06-22 07:09:06,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:09:06,551.551 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:09:06,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:09:06,634.634 INFO    ] No camera update needed
[2026-06-22 07:09:06,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:09:06,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:09:06,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:09:06,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:09:08,691.691 INFO    ] ================================================
[2026-06-22 07:09:08,707.707 INFO    ] Launching Daemon at Mon Jun 22 07:09:08 IST 2026
[2026-06-22 07:09:08,718.718 INFO    ] ================================================
[2026-06-22 07:09:09,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:09:09
[2026-06-22 07:09:09,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:09:10,105.105 INFO    ] Initializing speech engine...
[2026-06-22 07:09:10,108.108 INFO    ] 2026-06-22 07:09:10
[2026-06-22 07:09:10,362.362 INFO    ] 2026-06-22 07:09:10
[2026-06-22 07:09:10,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:09:10,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:09:10,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:09:10,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:09:10,733.733 INFO    ] time= 22/06/2026 07:09:10
[2026-06-22 07:09:10,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:09:10,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:09:10,855.855 INFO    ] No existing commands found in stream
[2026-06-22 07:09:15,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:09:15,870.870 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-22 07:09:16,294.294 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:09:16,297.297 INFO    ] Checking for system updates...
[2026-06-22 07:09:16,336.336 INFO    ] 200
[2026-06-22 07:09:16,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:09:16,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:09:16,395.395 INFO    ] No update needed
[2026-06-22 07:09:16,398.398 INFO    ] Checking for camera pi updates...
[2026-06-22 07:09:16,432.432 INFO    ] 200
[2026-06-22 07:09:16,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:09:16,476.476 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:09:16,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:09:16,530.530 INFO    ] No camera update needed
[2026-06-22 07:09:16,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:09:16,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:09:16,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:09:16,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:09:18,588.588 INFO    ] ================================================
[2026-06-22 07:09:18,604.604 INFO    ] Launching Daemon at Mon Jun 22 07:09:18 IST 2026
[2026-06-22 07:09:18,615.615 INFO    ] ================================================
[2026-06-22 07:09:19,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:09:19
[2026-06-22 07:09:19,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:09:20,068.068 INFO    ] Initializing speech engine...
[2026-06-22 07:09:20,077.077 INFO    ] 2026-06-22 07:09:20
[2026-06-22 07:09:20,351.351 INFO    ] 2026-06-22 07:09:20
[2026-06-22 07:09:20,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:09:20,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:09:20,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:09:20,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:09:20,828.828 INFO    ] time= 22/06/2026 07:09:20
[2026-06-22 07:09:20,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:09:20,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:09:21,021.021 INFO    ] No existing commands found in stream
[2026-06-22 07:09:26,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:09:26,050.050 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-22 07:09:28,362.362 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:09:28,365.365 INFO    ] Checking for system updates...
[2026-06-22 07:09:28,405.405 INFO    ] 200
[2026-06-22 07:09:28,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:09:28,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:09:28,464.464 INFO    ] No update needed
[2026-06-22 07:09:28,466.466 INFO    ] Checking for camera pi updates...
[2026-06-22 07:09:28,504.504 INFO    ] 200
[2026-06-22 07:09:28,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:09:28,550.550 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:09:28,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:09:28,643.643 INFO    ] No camera update needed
[2026-06-22 07:09:28,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:09:28,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:09:28,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:09:28,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:09:30,702.702 INFO    ] ================================================
[2026-06-22 07:09:30,717.717 INFO    ] Launching Daemon at Mon Jun 22 07:09:30 IST 2026
[2026-06-22 07:09:30,728.728 INFO    ] ================================================
[2026-06-22 07:09:31,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:09:31
[2026-06-22 07:09:31,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:09:32,131.131 INFO    ] Initializing speech engine...
[2026-06-22 07:09:32,137.137 INFO    ] 2026-06-22 07:09:32
[2026-06-22 07:09:32,433.433 INFO    ] 2026-06-22 07:09:32
[2026-06-22 07:09:32,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:09:32,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:09:32,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:09:32,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:09:32,898.898 INFO    ] time= 22/06/2026 07:09:32
[2026-06-22 07:09:32,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:09:32,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:09:33,069.069 INFO    ] No existing commands found in stream
[2026-06-22 07:09:38,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:09:38,085.085 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-22 07:09:40,973.973 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:09:40,975.975 INFO    ] Checking for system updates...
[2026-06-22 07:09:41,012.012 INFO    ] 200
[2026-06-22 07:09:41,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:09:41,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:09:41,069.069 INFO    ] No update needed
[2026-06-22 07:09:41,071.071 INFO    ] Checking for camera pi updates...
[2026-06-22 07:09:41,108.108 INFO    ] 200
[2026-06-22 07:09:41,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:09:41,151.151 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:09:41,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:09:41,236.236 INFO    ] No camera update needed
[2026-06-22 07:09:41,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:09:41,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:09:41,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:09:41,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:09:43,292.292 INFO    ] ================================================
[2026-06-22 07:09:43,307.307 INFO    ] Launching Daemon at Mon Jun 22 07:09:43 IST 2026
[2026-06-22 07:09:43,318.318 INFO    ] ================================================
[2026-06-22 07:09:43,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:09:43
[2026-06-22 07:09:44,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:09:44,727.727 INFO    ] Initializing speech engine...
[2026-06-22 07:09:44,742.742 INFO    ] 2026-06-22 07:09:44
[2026-06-22 07:09:45,018.018 INFO    ] 2026-06-22 07:09:44
[2026-06-22 07:09:45,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:09:45,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:09:45,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:09:45,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:09:45,383.383 INFO    ] time= 22/06/2026 07:09:45
[2026-06-22 07:09:45,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:09:45,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:09:45,502.502 INFO    ] No existing commands found in stream
[2026-06-22 07:09:50,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:09:50,509.509 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-22 07:09:50,955.955 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:09:50,958.958 INFO    ] Checking for system updates...
[2026-06-22 07:09:50,999.999 INFO    ] 200
[2026-06-22 07:09:51,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:09:51,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:09:51,065.065 INFO    ] No update needed
[2026-06-22 07:09:51,068.068 INFO    ] Checking for camera pi updates...
[2026-06-22 07:09:51,104.104 INFO    ] 200
[2026-06-22 07:09:51,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:09:51,150.150 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:09:51,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:09:51,229.229 INFO    ] No camera update needed
[2026-06-22 07:09:51,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:09:51,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:09:51,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:09:51,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:09:53,288.288 INFO    ] ================================================
[2026-06-22 07:09:53,303.303 INFO    ] Launching Daemon at Mon Jun 22 07:09:53 IST 2026
[2026-06-22 07:09:53,313.313 INFO    ] ================================================
[2026-06-22 07:09:53,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:09:53
[2026-06-22 07:09:54,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:09:54,758.758 INFO    ] Initializing speech engine...
[2026-06-22 07:09:54,766.766 INFO    ] 2026-06-22 07:09:54
[2026-06-22 07:09:55,047.047 INFO    ] 2026-06-22 07:09:55
[2026-06-22 07:09:55,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:09:55,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:09:55,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:09:55,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:09:55,442.442 INFO    ] time= 22/06/2026 07:09:55
[2026-06-22 07:09:55,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:09:55,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:09:55,617.617 INFO    ] No existing commands found in stream
[2026-06-22 07:10:00,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:10:00,653.653 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-22 07:10:07,758.758 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:10:07,761.761 INFO    ] Checking for system updates...
[2026-06-22 07:10:07,798.798 INFO    ] 200
[2026-06-22 07:10:07,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:10:07,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:10:07,857.857 INFO    ] No update needed
[2026-06-22 07:10:07,860.860 INFO    ] Checking for camera pi updates...
[2026-06-22 07:10:07,895.895 INFO    ] 200
[2026-06-22 07:10:07,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:10:07,939.939 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:10:07,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:10:07,998.998 INFO    ] No camera update needed
[2026-06-22 07:10:08,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:10:08,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:10:08,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:10:08,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:10:10,056.056 INFO    ] ================================================
[2026-06-22 07:10:10,071.071 INFO    ] Launching Daemon at Mon Jun 22 07:10:10 IST 2026
[2026-06-22 07:10:10,082.082 INFO    ] ================================================
[2026-06-22 07:10:10,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:10:10
[2026-06-22 07:10:11,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:10:11,629.629 INFO    ] Initializing speech engine...
[2026-06-22 07:10:11,639.639 INFO    ] 2026-06-22 07:10:11
[2026-06-22 07:10:11,929.929 INFO    ] 2026-06-22 07:10:11
[2026-06-22 07:10:11,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:10:12,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:10:12,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:10:12,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:10:12,386.386 INFO    ] time= 22/06/2026 07:10:12
[2026-06-22 07:10:12,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:10:12,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:10:12,539.539 INFO    ] No existing commands found in stream
[2026-06-22 07:10:17,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:10:17,555.555 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-22 07:10:19,471.471 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:10:19,474.474 INFO    ] Checking for system updates...
[2026-06-22 07:10:19,511.511 INFO    ] 200
[2026-06-22 07:10:19,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:10:19,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:10:19,576.576 INFO    ] No update needed
[2026-06-22 07:10:19,578.578 INFO    ] Checking for camera pi updates...
[2026-06-22 07:10:19,612.612 INFO    ] 200
[2026-06-22 07:10:19,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:10:19,657.657 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:10:19,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:10:19,746.746 INFO    ] No camera update needed
[2026-06-22 07:10:19,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:10:19,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:10:19,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:10:19,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:10:21,805.805 INFO    ] ================================================
[2026-06-22 07:10:21,820.820 INFO    ] Launching Daemon at Mon Jun 22 07:10:21 IST 2026
[2026-06-22 07:10:21,830.830 INFO    ] ================================================
[2026-06-22 07:10:22,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:10:22
[2026-06-22 07:10:23,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:10:23,328.328 INFO    ] Initializing speech engine...
[2026-06-22 07:10:23,336.336 INFO    ] 2026-06-22 07:10:23
[2026-06-22 07:10:23,606.606 INFO    ] 2026-06-22 07:10:23
[2026-06-22 07:10:23,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:10:23,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:10:23,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:10:24,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:10:24,054.054 INFO    ] time= 22/06/2026 07:10:24
[2026-06-22 07:10:24,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:10:24,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:10:24,235.235 INFO    ] No existing commands found in stream
[2026-06-22 07:10:29,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:10:29,251.251 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-22 07:10:33,507.507 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:10:33,509.509 INFO    ] Checking for system updates...
[2026-06-22 07:10:33,547.547 INFO    ] 200
[2026-06-22 07:10:33,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:10:33,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:10:33,622.622 INFO    ] No update needed
[2026-06-22 07:10:33,625.625 INFO    ] Checking for camera pi updates...
[2026-06-22 07:10:33,660.660 INFO    ] 200
[2026-06-22 07:10:33,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:10:33,704.704 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:10:33,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:10:33,790.790 INFO    ] No camera update needed
[2026-06-22 07:10:33,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:10:33,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:10:33,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:10:33,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:10:35,849.849 INFO    ] ================================================
[2026-06-22 07:10:35,864.864 INFO    ] Launching Daemon at Mon Jun 22 07:10:35 IST 2026
[2026-06-22 07:10:35,875.875 INFO    ] ================================================
[2026-06-22 07:10:36,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:10:36
[2026-06-22 07:10:37,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:10:37,282.282 INFO    ] Initializing speech engine...
[2026-06-22 07:10:37,290.290 INFO    ] 2026-06-22 07:10:37
[2026-06-22 07:10:37,564.564 INFO    ] 2026-06-22 07:10:37
[2026-06-22 07:10:37,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:10:37,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:10:37,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:10:37,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:10:37,943.943 INFO    ] time= 22/06/2026 07:10:37
[2026-06-22 07:10:37,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:10:37,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:10:38,112.112 INFO    ] No existing commands found in stream
[2026-06-22 07:10:43,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:10:43,140.140 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-22 07:10:44,990.990 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:10:44,993.993 INFO    ] Checking for system updates...
[2026-06-22 07:10:45,028.028 INFO    ] 200
[2026-06-22 07:10:45,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:10:45,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:10:45,087.087 INFO    ] No update needed
[2026-06-22 07:10:45,089.089 INFO    ] Checking for camera pi updates...
[2026-06-22 07:10:45,127.127 INFO    ] 200
[2026-06-22 07:10:45,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:10:45,170.170 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:10:45,255.255 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:10:45,257.257 INFO    ] No camera update needed
[2026-06-22 07:10:45,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:10:45,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:10:45,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:10:45,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:10:47,313.313 INFO    ] ================================================
[2026-06-22 07:10:47,329.329 INFO    ] Launching Daemon at Mon Jun 22 07:10:47 IST 2026
[2026-06-22 07:10:47,341.341 INFO    ] ================================================
[2026-06-22 07:10:47,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:10:47
[2026-06-22 07:10:48,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:10:48,720.720 INFO    ] Initializing speech engine...
[2026-06-22 07:10:48,730.730 INFO    ] 2026-06-22 07:10:48
[2026-06-22 07:10:48,999.999 INFO    ] 2026-06-22 07:10:48
[2026-06-22 07:10:49,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:10:49,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:10:49,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:10:49,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:10:49,390.390 INFO    ] time= 22/06/2026 07:10:49
[2026-06-22 07:10:49,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:10:49,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:10:49,496.496 INFO    ] No existing commands found in stream
[2026-06-22 07:10:54,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:10:54,511.511 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-22 07:10:56,500.500 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:10:56,503.503 INFO    ] Checking for system updates...
[2026-06-22 07:10:56,541.541 INFO    ] 200
[2026-06-22 07:10:56,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:10:56,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:10:56,601.601 INFO    ] No update needed
[2026-06-22 07:10:56,604.604 INFO    ] Checking for camera pi updates...
[2026-06-22 07:10:56,639.639 INFO    ] 200
[2026-06-22 07:10:56,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:10:56,683.683 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:10:56,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:10:56,767.767 INFO    ] No camera update needed
[2026-06-22 07:10:56,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:10:56,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:10:56,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:10:56,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:10:58,826.826 INFO    ] ================================================
[2026-06-22 07:10:58,842.842 INFO    ] Launching Daemon at Mon Jun 22 07:10:58 IST 2026
[2026-06-22 07:10:58,852.852 INFO    ] ================================================
[2026-06-22 07:10:59,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:10:59
[2026-06-22 07:11:00,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:11:00,262.262 INFO    ] Initializing speech engine...
[2026-06-22 07:11:00,276.276 INFO    ] 2026-06-22 07:11:00
[2026-06-22 07:11:00,555.555 INFO    ] 2026-06-22 07:11:00
[2026-06-22 07:11:00,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:11:00,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:11:00,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:11:00,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:11:00,928.928 INFO    ] time= 22/06/2026 07:11:00
[2026-06-22 07:11:00,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:11:00,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:11:01,046.046 INFO    ] No existing commands found in stream
[2026-06-22 07:11:06,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:11:06,068.068 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-22 07:11:09,008.008 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:11:09,011.011 INFO    ] Checking for system updates...
[2026-06-22 07:11:09,047.047 INFO    ] 200
[2026-06-22 07:11:09,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:11:09,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:11:09,105.105 INFO    ] No update needed
[2026-06-22 07:11:09,108.108 INFO    ] Checking for camera pi updates...
[2026-06-22 07:11:09,145.145 INFO    ] 200
[2026-06-22 07:11:09,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:11:09,188.188 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:11:09,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:11:09,272.272 INFO    ] No camera update needed
[2026-06-22 07:11:09,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:11:09,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:11:09,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:11:09,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:11:11,328.328 INFO    ] ================================================
[2026-06-22 07:11:11,344.344 INFO    ] Launching Daemon at Mon Jun 22 07:11:11 IST 2026
[2026-06-22 07:11:11,354.354 INFO    ] ================================================
[2026-06-22 07:11:11,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:11:11
[2026-06-22 07:11:12,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:11:12,712.712 INFO    ] Initializing speech engine...
[2026-06-22 07:11:12,717.717 INFO    ] 2026-06-22 07:11:12
[2026-06-22 07:11:12,966.966 INFO    ] 2026-06-22 07:11:12
[2026-06-22 07:11:13,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:11:13,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:11:13,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:11:13,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:11:13,412.412 INFO    ] time= 22/06/2026 07:11:13
[2026-06-22 07:11:13,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:11:13,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:11:13,590.590 INFO    ] No existing commands found in stream
[2026-06-22 07:11:18,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:11:18,605.605 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-22 07:11:19,752.752 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:11:19,755.755 INFO    ] Checking for system updates...
[2026-06-22 07:11:19,791.791 INFO    ] 200
[2026-06-22 07:11:19,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:11:19,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:11:19,849.849 INFO    ] No update needed
[2026-06-22 07:11:19,851.851 INFO    ] Checking for camera pi updates...
[2026-06-22 07:11:19,885.885 INFO    ] 200
[2026-06-22 07:11:19,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:11:19,927.927 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:11:20,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:11:20,036.036 INFO    ] No camera update needed
[2026-06-22 07:11:20,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:11:20,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:11:20,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:11:20,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:11:22,093.093 INFO    ] ================================================
[2026-06-22 07:11:22,109.109 INFO    ] Launching Daemon at Mon Jun 22 07:11:22 IST 2026
[2026-06-22 07:11:22,121.121 INFO    ] ================================================
[2026-06-22 07:11:22,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:11:22
[2026-06-22 07:11:23,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:11:23,448.448 INFO    ] Initializing speech engine...
[2026-06-22 07:11:23,467.467 INFO    ] 2026-06-22 07:11:23
[2026-06-22 07:11:23,729.729 INFO    ] 2026-06-22 07:11:23
[2026-06-22 07:11:23,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:11:23,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:11:23,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:11:24,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:11:24,133.133 INFO    ] time= 22/06/2026 07:11:24
[2026-06-22 07:11:24,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:11:24,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:11:24,290.290 INFO    ] No existing commands found in stream
[2026-06-22 07:11:29,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:11:29,318.318 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-22 07:11:30,820.820 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:11:30,821.821 INFO    ] Checking for system updates...
[2026-06-22 07:11:30,842.842 INFO    ] 200
[2026-06-22 07:11:30,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:11:30,874.874 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:11:30,875.875 INFO    ] No update needed
[2026-06-22 07:11:30,877.877 INFO    ] Checking for camera pi updates...
[2026-06-22 07:11:30,896.896 INFO    ] 200
[2026-06-22 07:11:30,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:11:30,937.937 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:11:31,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:11:31,042.042 INFO    ] No camera update needed
[2026-06-22 07:11:31,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:11:31,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:11:31,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:11:31,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:11:33,106.106 INFO    ] ================================================
[2026-06-22 07:11:33,123.123 INFO    ] Launching Daemon at Mon Jun 22 07:11:33 IST 2026
[2026-06-22 07:11:33,136.136 INFO    ] ================================================
[2026-06-22 07:11:33,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:11:33
[2026-06-22 07:11:34,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:11:34,611.611 INFO    ] Initializing speech engine...
[2026-06-22 07:11:34,627.627 INFO    ] 2026-06-22 07:11:34
[2026-06-22 07:11:34,895.895 INFO    ] 2026-06-22 07:11:34
[2026-06-22 07:11:34,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:11:35,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:11:35,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:11:35,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:11:35,259.259 INFO    ] time= 22/06/2026 07:11:35
[2026-06-22 07:11:35,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:11:35,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:11:35,378.378 INFO    ] No existing commands found in stream
[2026-06-22 07:11:40,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:11:40,394.394 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-22 07:11:41,660.660 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:11:41,662.662 INFO    ] Checking for system updates...
[2026-06-22 07:11:41,700.700 INFO    ] 200
[2026-06-22 07:11:41,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:11:41,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:11:41,758.758 INFO    ] No update needed
[2026-06-22 07:11:41,761.761 INFO    ] Checking for camera pi updates...
[2026-06-22 07:11:41,796.796 INFO    ] 200
[2026-06-22 07:11:41,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:11:41,843.843 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:11:41,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:11:41,931.931 INFO    ] No camera update needed
[2026-06-22 07:11:41,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:11:41,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:11:41,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:11:41,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:11:43,988.988 INFO    ] ================================================
[2026-06-22 07:11:44,004.004 INFO    ] Launching Daemon at Mon Jun 22 07:11:43 IST 2026
[2026-06-22 07:11:44,015.015 INFO    ] ================================================
[2026-06-22 07:11:44,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:11:44
[2026-06-22 07:11:45,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:11:45,386.386 INFO    ] Initializing speech engine...
[2026-06-22 07:11:45,393.393 INFO    ] 2026-06-22 07:11:45
[2026-06-22 07:11:45,653.653 INFO    ] 2026-06-22 07:11:45
[2026-06-22 07:11:45,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:11:45,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:11:45,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:11:46,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:11:46,123.123 INFO    ] time= 22/06/2026 07:11:46
[2026-06-22 07:11:46,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:11:46,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:11:46,350.350 INFO    ] No existing commands found in stream
[2026-06-22 07:11:51,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:11:51,374.374 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-22 07:11:51,764.764 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:11:51,765.765 INFO    ] Checking for system updates...
[2026-06-22 07:11:51,786.786 INFO    ] 200
[2026-06-22 07:11:51,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:11:51,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:11:51,843.843 INFO    ] No update needed
[2026-06-22 07:11:51,846.846 INFO    ] Checking for camera pi updates...
[2026-06-22 07:11:51,880.880 INFO    ] 200
[2026-06-22 07:11:51,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:11:51,923.923 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:11:52,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:11:52,007.007 INFO    ] No camera update needed
[2026-06-22 07:11:52,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:11:52,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:11:52,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:11:52,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:11:54,065.065 INFO    ] ================================================
[2026-06-22 07:11:54,081.081 INFO    ] Launching Daemon at Mon Jun 22 07:11:54 IST 2026
[2026-06-22 07:11:54,091.091 INFO    ] ================================================
[2026-06-22 07:11:54,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:11:54
[2026-06-22 07:11:55,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:11:55,413.413 INFO    ] Initializing speech engine...
[2026-06-22 07:11:55,437.437 INFO    ] 2026-06-22 07:11:55
[2026-06-22 07:11:55,702.702 INFO    ] 2026-06-22 07:11:55
[2026-06-22 07:11:55,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:11:55,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:11:55,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:11:56,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:11:56,067.067 INFO    ] time= 22/06/2026 07:11:56
[2026-06-22 07:11:56,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:11:56,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:11:56,186.186 INFO    ] No existing commands found in stream
[2026-06-22 07:12:01,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:12:01,201.201 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-22 07:12:02,339.339 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:12:02,342.342 INFO    ] Checking for system updates...
[2026-06-22 07:12:02,397.397 INFO    ] 200
[2026-06-22 07:12:02,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:12:02,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:12:02,463.463 INFO    ] No update needed
[2026-06-22 07:12:02,466.466 INFO    ] Checking for camera pi updates...
[2026-06-22 07:12:02,504.504 INFO    ] 200
[2026-06-22 07:12:02,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:12:02,557.557 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:12:02,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:12:02,611.611 INFO    ] No camera update needed
[2026-06-22 07:12:02,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:12:02,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:12:02,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:12:02,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:12:04,676.676 INFO    ] ================================================
[2026-06-22 07:12:04,692.692 INFO    ] Launching Daemon at Mon Jun 22 07:12:04 IST 2026
[2026-06-22 07:12:04,703.703 INFO    ] ================================================
[2026-06-22 07:12:05,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:12:05
[2026-06-22 07:12:05,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:12:06,117.117 INFO    ] Initializing speech engine...
[2026-06-22 07:12:06,142.142 INFO    ] 2026-06-22 07:12:06
[2026-06-22 07:12:06,408.408 INFO    ] 2026-06-22 07:12:06
[2026-06-22 07:12:06,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:12:06,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:12:06,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:12:06,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:12:06,761.761 INFO    ] time= 22/06/2026 07:12:06
[2026-06-22 07:12:06,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:12:06,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:12:06,895.895 INFO    ] No existing commands found in stream
[2026-06-22 07:12:11,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:12:11,908.908 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-22 07:12:15,883.883 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:12:15,886.886 INFO    ] Checking for system updates...
[2026-06-22 07:12:15,922.922 INFO    ] 200
[2026-06-22 07:12:15,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:12:15,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:12:15,982.982 INFO    ] No update needed
[2026-06-22 07:12:15,985.985 INFO    ] Checking for camera pi updates...
[2026-06-22 07:12:16,019.019 INFO    ] 200
[2026-06-22 07:12:16,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:12:16,065.065 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:12:16,145.145 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:12:16,147.147 INFO    ] No camera update needed
[2026-06-22 07:12:16,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:12:16,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:12:16,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:12:16,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:12:18,202.202 INFO    ] ================================================
[2026-06-22 07:12:18,218.218 INFO    ] Launching Daemon at Mon Jun 22 07:12:18 IST 2026
[2026-06-22 07:12:18,229.229 INFO    ] ================================================
[2026-06-22 07:12:18,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:12:18
[2026-06-22 07:12:19,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:12:19,568.568 INFO    ] Initializing speech engine...
[2026-06-22 07:12:19,588.588 INFO    ] 2026-06-22 07:12:19
[2026-06-22 07:12:19,849.849 INFO    ] 2026-06-22 07:12:19
[2026-06-22 07:12:19,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:12:20,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:12:20,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:12:20,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:12:20,251.251 INFO    ] time= 22/06/2026 07:12:20
[2026-06-22 07:12:20,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:12:20,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:12:20,339.339 INFO    ] No existing commands found in stream
[2026-06-22 07:12:25,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:12:25,358.358 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-22 07:12:28,799.799 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:12:28,802.802 INFO    ] Checking for system updates...
[2026-06-22 07:12:28,838.838 INFO    ] 200
[2026-06-22 07:12:28,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:12:28,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:12:28,897.897 INFO    ] No update needed
[2026-06-22 07:12:28,900.900 INFO    ] Checking for camera pi updates...
[2026-06-22 07:12:28,937.937 INFO    ] 200
[2026-06-22 07:12:28,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:12:28,984.984 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:12:29,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:12:29,070.070 INFO    ] No camera update needed
[2026-06-22 07:12:29,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:12:29,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:12:29,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:12:29,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:12:31,126.126 INFO    ] ================================================
[2026-06-22 07:12:31,142.142 INFO    ] Launching Daemon at Mon Jun 22 07:12:31 IST 2026
[2026-06-22 07:12:31,153.153 INFO    ] ================================================
[2026-06-22 07:12:31,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:12:31
[2026-06-22 07:12:32,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:12:32,730.730 INFO    ] Initializing speech engine...
[2026-06-22 07:12:32,745.745 INFO    ] 2026-06-22 07:12:32
[2026-06-22 07:12:33,038.038 INFO    ] 2026-06-22 07:12:33
[2026-06-22 07:12:33,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:12:33,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:12:33,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:12:33,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:12:33,482.482 INFO    ] time= 22/06/2026 07:12:33
[2026-06-22 07:12:33,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:12:33,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:12:33,655.655 INFO    ] No existing commands found in stream
[2026-06-22 07:12:38,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:12:38,671.671 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-22 07:12:40,615.615 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:12:40,616.616 INFO    ] Checking for system updates...
[2026-06-22 07:12:40,637.637 INFO    ] 200
[2026-06-22 07:12:40,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:12:40,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:12:40,670.670 INFO    ] No update needed
[2026-06-22 07:12:40,672.672 INFO    ] Checking for camera pi updates...
[2026-06-22 07:12:40,691.691 INFO    ] 200
[2026-06-22 07:12:40,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:12:40,716.716 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:12:40,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:12:40,817.817 INFO    ] No camera update needed
[2026-06-22 07:12:40,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:12:40,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:12:40,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:12:40,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:12:42,875.875 INFO    ] ================================================
[2026-06-22 07:12:42,890.890 INFO    ] Launching Daemon at Mon Jun 22 07:12:42 IST 2026
[2026-06-22 07:12:42,902.902 INFO    ] ================================================
[2026-06-22 07:12:43,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:12:43
[2026-06-22 07:12:43,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:12:44,219.219 INFO    ] Initializing speech engine...
[2026-06-22 07:12:44,244.244 INFO    ] 2026-06-22 07:12:44
[2026-06-22 07:12:44,500.500 INFO    ] 2026-06-22 07:12:44
[2026-06-22 07:12:44,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:12:44,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:12:44,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:12:44,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:12:44,877.877 INFO    ] time= 22/06/2026 07:12:44
[2026-06-22 07:12:44,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:12:44,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:12:44,958.958 INFO    ] No existing commands found in stream
[2026-06-22 07:12:49,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:12:49,996.996 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-22 07:12:53,804.804 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:12:53,807.807 INFO    ] Checking for system updates...
[2026-06-22 07:12:53,842.842 INFO    ] 200
[2026-06-22 07:12:53,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:12:53,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:12:53,899.899 INFO    ] No update needed
[2026-06-22 07:12:53,902.902 INFO    ] Checking for camera pi updates...
[2026-06-22 07:12:53,936.936 INFO    ] 200
[2026-06-22 07:12:53,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:12:53,978.978 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:12:54,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:12:54,047.047 INFO    ] No camera update needed
[2026-06-22 07:12:54,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:12:54,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:12:54,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:12:54,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:12:56,102.102 INFO    ] ================================================
[2026-06-22 07:12:56,117.117 INFO    ] Launching Daemon at Mon Jun 22 07:12:56 IST 2026
[2026-06-22 07:12:56,129.129 INFO    ] ================================================
[2026-06-22 07:12:56,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:12:56
[2026-06-22 07:12:57,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:12:57,459.459 INFO    ] Initializing speech engine...
[2026-06-22 07:12:57,468.468 INFO    ] 2026-06-22 07:12:57
[2026-06-22 07:12:57,718.718 INFO    ] 2026-06-22 07:12:57
[2026-06-22 07:12:57,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:12:57,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:12:57,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:12:58,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:12:58,094.094 INFO    ] time= 22/06/2026 07:12:58
[2026-06-22 07:12:58,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:12:58,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:12:58,269.269 INFO    ] No existing commands found in stream
[2026-06-22 07:13:03,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:13:03,300.300 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-22 07:13:04,767.767 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:13:04,770.770 INFO    ] Checking for system updates...
[2026-06-22 07:13:04,805.805 INFO    ] 200
[2026-06-22 07:13:04,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:13:04,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:13:04,869.869 INFO    ] No update needed
[2026-06-22 07:13:04,871.871 INFO    ] Checking for camera pi updates...
[2026-06-22 07:13:04,905.905 INFO    ] 200
[2026-06-22 07:13:04,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:13:04,947.947 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:13:05,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:13:05,127.127 INFO    ] No camera update needed
[2026-06-22 07:13:05,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:13:05,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:13:05,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:13:05,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:13:07,182.182 INFO    ] ================================================
[2026-06-22 07:13:07,198.198 INFO    ] Launching Daemon at Mon Jun 22 07:13:07 IST 2026
[2026-06-22 07:13:07,209.209 INFO    ] ================================================
[2026-06-22 07:13:07,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:13:07
[2026-06-22 07:13:08,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:13:08,623.623 INFO    ] Initializing speech engine...
[2026-06-22 07:13:08,647.647 INFO    ] 2026-06-22 07:13:08
[2026-06-22 07:13:08,903.903 INFO    ] 2026-06-22 07:13:08
[2026-06-22 07:13:08,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:13:09,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:13:09,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:13:09,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:13:09,282.282 INFO    ] time= 22/06/2026 07:13:09
[2026-06-22 07:13:09,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:13:09,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:13:09,448.448 INFO    ] No existing commands found in stream
[2026-06-22 07:13:14,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:13:14,487.487 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-22 07:13:18,821.821 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:13:18,824.824 INFO    ] Checking for system updates...
[2026-06-22 07:13:18,860.860 INFO    ] 200
[2026-06-22 07:13:18,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:13:18,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:13:18,921.921 INFO    ] No update needed
[2026-06-22 07:13:18,923.923 INFO    ] Checking for camera pi updates...
[2026-06-22 07:13:18,960.960 INFO    ] 200
[2026-06-22 07:13:18,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:13:19,002.002 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:13:19,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:13:19,090.090 INFO    ] No camera update needed
[2026-06-22 07:13:19,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:13:19,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:13:19,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:13:19,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:13:21,145.145 INFO    ] ================================================
[2026-06-22 07:13:21,161.161 INFO    ] Launching Daemon at Mon Jun 22 07:13:21 IST 2026
[2026-06-22 07:13:21,172.172 INFO    ] ================================================
[2026-06-22 07:13:21,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:13:21
[2026-06-22 07:13:22,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:13:22,491.491 INFO    ] Initializing speech engine...
[2026-06-22 07:13:22,506.506 INFO    ] 2026-06-22 07:13:22
[2026-06-22 07:13:22,774.774 INFO    ] 2026-06-22 07:13:22
[2026-06-22 07:13:22,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:13:23,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:13:23,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:13:24,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:13:24,010.010 INFO    ] time= 22/06/2026 07:13:24
[2026-06-22 07:13:24,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:13:24,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:13:24,134.134 INFO    ] No existing commands found in stream
[2026-06-22 07:13:29,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:13:29,167.167 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-22 07:13:33,078.078 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:13:33,082.082 INFO    ] Checking for system updates...
[2026-06-22 07:13:33,120.120 INFO    ] 200
[2026-06-22 07:13:33,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:13:33,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:13:33,179.179 INFO    ] No update needed
[2026-06-22 07:13:33,181.181 INFO    ] Checking for camera pi updates...
[2026-06-22 07:13:33,215.215 INFO    ] 200
[2026-06-22 07:13:33,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:13:33,257.257 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:13:33,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:13:33,339.339 INFO    ] No camera update needed
[2026-06-22 07:13:33,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:13:33,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:13:33,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:13:33,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:13:35,396.396 INFO    ] ================================================
[2026-06-22 07:13:35,411.411 INFO    ] Launching Daemon at Mon Jun 22 07:13:35 IST 2026
[2026-06-22 07:13:35,423.423 INFO    ] ================================================
[2026-06-22 07:13:35,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:13:35
[2026-06-22 07:13:36,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:13:36,739.739 INFO    ] Initializing speech engine...
[2026-06-22 07:13:36,746.746 INFO    ] 2026-06-22 07:13:36
[2026-06-22 07:13:37,032.032 INFO    ] 2026-06-22 07:13:37
[2026-06-22 07:13:37,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:13:37,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:13:37,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:13:37,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:13:37,403.403 INFO    ] time= 22/06/2026 07:13:37
[2026-06-22 07:13:37,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:13:37,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:13:37,526.526 INFO    ] No existing commands found in stream
[2026-06-22 07:13:42,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:13:42,544.544 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-22 07:13:46,023.023 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:13:46,026.026 INFO    ] Checking for system updates...
[2026-06-22 07:13:46,064.064 INFO    ] 200
[2026-06-22 07:13:46,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:13:46,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:13:46,123.123 INFO    ] No update needed
[2026-06-22 07:13:46,125.125 INFO    ] Checking for camera pi updates...
[2026-06-22 07:13:46,167.167 INFO    ] 200
[2026-06-22 07:13:46,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:13:46,209.209 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:13:46,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:13:46,292.292 INFO    ] No camera update needed
[2026-06-22 07:13:46,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:13:46,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:13:46,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:13:46,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:13:48,347.347 INFO    ] ================================================
[2026-06-22 07:13:48,362.362 INFO    ] Launching Daemon at Mon Jun 22 07:13:48 IST 2026
[2026-06-22 07:13:48,373.373 INFO    ] ================================================
[2026-06-22 07:13:48,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:13:48
[2026-06-22 07:13:49,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:13:49,826.826 INFO    ] Initializing speech engine...
[2026-06-22 07:13:49,833.833 INFO    ] 2026-06-22 07:13:49
[2026-06-22 07:13:50,102.102 INFO    ] 2026-06-22 07:13:50
[2026-06-22 07:13:50,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:13:50,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:13:50,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:13:50,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:13:50,596.596 INFO    ] time= 22/06/2026 07:13:50
[2026-06-22 07:13:50,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:13:50,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:13:50,782.782 INFO    ] No existing commands found in stream
[2026-06-22 07:13:55,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:13:55,815.815 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-22 07:13:58,153.153 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:13:58,156.156 INFO    ] Checking for system updates...
[2026-06-22 07:13:58,197.197 INFO    ] 200
[2026-06-22 07:13:58,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:13:58,254.254 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:13:58,257.257 INFO    ] No update needed
[2026-06-22 07:13:58,259.259 INFO    ] Checking for camera pi updates...
[2026-06-22 07:13:58,294.294 INFO    ] 200
[2026-06-22 07:13:58,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:13:58,338.338 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:13:58,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:13:58,427.427 INFO    ] No camera update needed
[2026-06-22 07:13:58,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:13:58,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:13:58,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:13:58,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:14:00,484.484 INFO    ] ================================================
[2026-06-22 07:14:00,500.500 INFO    ] Launching Daemon at Mon Jun 22 07:14:00 IST 2026
[2026-06-22 07:14:00,511.511 INFO    ] ================================================
[2026-06-22 07:14:01,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:14:01
[2026-06-22 07:14:01,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:14:02,130.130 INFO    ] Initializing speech engine...
[2026-06-22 07:14:02,135.135 INFO    ] 2026-06-22 07:14:02
[2026-06-22 07:14:02,462.462 INFO    ] 2026-06-22 07:14:02
[2026-06-22 07:14:02,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:14:02,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:14:02,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:14:02,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:14:02,926.926 INFO    ] time= 22/06/2026 07:14:02
[2026-06-22 07:14:02,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:14:02,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:14:03,057.057 INFO    ] No existing commands found in stream
[2026-06-22 07:14:08,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:14:08,089.089 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-22 07:14:12,362.362 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:14:12,365.365 INFO    ] Checking for system updates...
[2026-06-22 07:14:12,401.401 INFO    ] 200
[2026-06-22 07:14:12,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:14:12,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:14:12,459.459 INFO    ] No update needed
[2026-06-22 07:14:12,461.461 INFO    ] Checking for camera pi updates...
[2026-06-22 07:14:12,495.495 INFO    ] 200
[2026-06-22 07:14:12,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:14:12,538.538 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:14:12,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:14:12,629.629 INFO    ] No camera update needed
[2026-06-22 07:14:12,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:14:12,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:14:12,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:14:12,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:14:14,683.683 INFO    ] ================================================
[2026-06-22 07:14:14,699.699 INFO    ] Launching Daemon at Mon Jun 22 07:14:14 IST 2026
[2026-06-22 07:14:14,711.711 INFO    ] ================================================
[2026-06-22 07:14:15,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:14:15
[2026-06-22 07:14:15,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:14:16,023.023 INFO    ] Initializing speech engine...
[2026-06-22 07:14:16,038.038 INFO    ] 2026-06-22 07:14:16
[2026-06-22 07:14:16,305.305 INFO    ] 2026-06-22 07:14:16
[2026-06-22 07:14:16,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:14:16,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:14:16,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:14:16,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:14:16,686.686 INFO    ] time= 22/06/2026 07:14:16
[2026-06-22 07:14:16,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:14:16,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:14:16,858.858 INFO    ] No existing commands found in stream
[2026-06-22 07:14:21,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:14:21,886.886 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-22 07:14:24,730.730 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:14:24,733.733 INFO    ] Checking for system updates...
[2026-06-22 07:14:24,769.769 INFO    ] 200
[2026-06-22 07:14:24,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:14:24,825.825 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:14:24,828.828 INFO    ] No update needed
[2026-06-22 07:14:24,830.830 INFO    ] Checking for camera pi updates...
[2026-06-22 07:14:24,864.864 INFO    ] 200
[2026-06-22 07:14:24,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:14:24,912.912 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:14:24,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:14:24,993.993 INFO    ] No camera update needed
[2026-06-22 07:14:24,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:14:24,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:14:25,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:14:25,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:14:27,050.050 INFO    ] ================================================
[2026-06-22 07:14:27,067.067 INFO    ] Launching Daemon at Mon Jun 22 07:14:27 IST 2026
[2026-06-22 07:14:27,078.078 INFO    ] ================================================
[2026-06-22 07:14:27,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:14:27
[2026-06-22 07:14:28,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:14:28,399.399 INFO    ] Initializing speech engine...
[2026-06-22 07:14:28,406.406 INFO    ] 2026-06-22 07:14:28
[2026-06-22 07:14:28,696.696 INFO    ] 2026-06-22 07:14:28
[2026-06-22 07:14:28,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:14:28,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:14:28,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:14:29,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:14:29,068.068 INFO    ] time= 22/06/2026 07:14:29
[2026-06-22 07:14:29,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:14:29,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:14:29,190.190 INFO    ] No existing commands found in stream
[2026-06-22 07:14:34,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:14:34,206.206 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-22 07:14:38,410.410 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:14:38,411.411 INFO    ] Checking for system updates...
[2026-06-22 07:14:38,432.432 INFO    ] 200
[2026-06-22 07:14:38,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:14:38,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:14:38,465.465 INFO    ] No update needed
[2026-06-22 07:14:38,466.466 INFO    ] Checking for camera pi updates...
[2026-06-22 07:14:38,504.504 INFO    ] 200
[2026-06-22 07:14:38,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:14:38,547.547 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:14:38,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:14:38,633.633 INFO    ] No camera update needed
[2026-06-22 07:14:38,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:14:38,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:14:38,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:14:38,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:14:40,690.690 INFO    ] ================================================
[2026-06-22 07:14:40,706.706 INFO    ] Launching Daemon at Mon Jun 22 07:14:40 IST 2026
[2026-06-22 07:14:40,717.717 INFO    ] ================================================
[2026-06-22 07:14:41,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:14:41
[2026-06-22 07:14:41,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:14:42,184.184 INFO    ] Initializing speech engine...
[2026-06-22 07:14:42,194.194 INFO    ] 2026-06-22 07:14:42
[2026-06-22 07:14:42,455.455 INFO    ] 2026-06-22 07:14:42
[2026-06-22 07:14:42,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:14:42,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:14:42,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:14:42,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:14:42,968.968 INFO    ] time= 22/06/2026 07:14:42
[2026-06-22 07:14:43,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:14:43,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:14:43,152.152 INFO    ] No existing commands found in stream
[2026-06-22 07:14:48,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:14:48,181.181 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-22 07:14:49,497.497 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:14:49,499.499 INFO    ] Checking for system updates...
[2026-06-22 07:14:49,520.520 INFO    ] 200
[2026-06-22 07:14:49,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:14:49,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:14:49,554.554 INFO    ] No update needed
[2026-06-22 07:14:49,555.555 INFO    ] Checking for camera pi updates...
[2026-06-22 07:14:49,585.585 INFO    ] 200
[2026-06-22 07:14:49,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:14:49,633.633 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:14:49,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:14:49,730.730 INFO    ] No camera update needed
[2026-06-22 07:14:49,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:14:49,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:14:49,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:14:49,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:14:51,789.789 INFO    ] ================================================
[2026-06-22 07:14:51,805.805 INFO    ] Launching Daemon at Mon Jun 22 07:14:51 IST 2026
[2026-06-22 07:14:51,816.816 INFO    ] ================================================
[2026-06-22 07:14:52,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:14:52
[2026-06-22 07:14:52,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:14:53,277.277 INFO    ] Initializing speech engine...
[2026-06-22 07:14:53,282.282 INFO    ] 2026-06-22 07:14:53
[2026-06-22 07:14:53,564.564 INFO    ] 2026-06-22 07:14:53
[2026-06-22 07:14:53,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:14:53,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:14:53,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:14:53,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:14:54,018.018 INFO    ] time= 22/06/2026 07:14:53
[2026-06-22 07:14:54,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:14:54,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:14:54,159.159 INFO    ] No existing commands found in stream
[2026-06-22 07:14:59,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:14:59,175.175 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-22 07:15:00,316.316 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:15:00,318.318 INFO    ] Checking for system updates...
[2026-06-22 07:15:00,340.340 INFO    ] 200
[2026-06-22 07:15:00,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:15:00,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:15:00,390.390 INFO    ] No update needed
[2026-06-22 07:15:00,392.392 INFO    ] Checking for camera pi updates...
[2026-06-22 07:15:00,427.427 INFO    ] 200
[2026-06-22 07:15:00,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:15:00,471.471 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:15:00,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:15:00,556.556 INFO    ] No camera update needed
[2026-06-22 07:15:00,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:15:00,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:15:00,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:15:00,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:15:02,624.624 INFO    ] ================================================
[2026-06-22 07:15:02,645.645 INFO    ] Launching Daemon at Mon Jun 22 07:15:02 IST 2026
[2026-06-22 07:15:02,658.658 INFO    ] ================================================
[2026-06-22 07:15:03,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:15:03
[2026-06-22 07:15:03,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:15:04,276.276 INFO    ] Initializing speech engine...
[2026-06-22 07:15:04,284.284 INFO    ] 2026-06-22 07:15:04
[2026-06-22 07:15:04,568.568 INFO    ] 2026-06-22 07:15:04
[2026-06-22 07:15:04,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:15:04,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:15:04,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:15:05,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:15:05,105.105 INFO    ] time= 22/06/2026 07:15:05
[2026-06-22 07:15:05,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:15:05,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:15:05,258.258 INFO    ] No existing commands found in stream
[2026-06-22 07:15:10,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:15:10,278.278 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-22 07:15:13,803.803 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:15:13,805.805 INFO    ] Checking for system updates...
[2026-06-22 07:15:13,826.826 INFO    ] 200
[2026-06-22 07:15:13,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:15:13,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:15:13,859.859 INFO    ] No update needed
[2026-06-22 07:15:13,861.861 INFO    ] Checking for camera pi updates...
[2026-06-22 07:15:13,884.884 INFO    ] 200
[2026-06-22 07:15:13,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:15:13,928.928 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:15:14,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:15:14,112.112 INFO    ] No camera update needed
[2026-06-22 07:15:14,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:15:14,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:15:14,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:15:14,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:15:16,171.171 INFO    ] ================================================
[2026-06-22 07:15:16,187.187 INFO    ] Launching Daemon at Mon Jun 22 07:15:16 IST 2026
[2026-06-22 07:15:16,198.198 INFO    ] ================================================
[2026-06-22 07:15:16,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:15:16
[2026-06-22 07:15:17,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:15:17,622.622 INFO    ] Initializing speech engine...
[2026-06-22 07:15:17,636.636 INFO    ] 2026-06-22 07:15:17
[2026-06-22 07:15:17,918.918 INFO    ] 2026-06-22 07:15:17
[2026-06-22 07:15:17,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:15:18,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:15:18,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:15:18,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:15:18,291.291 INFO    ] time= 22/06/2026 07:15:18
[2026-06-22 07:15:18,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:15:18,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:15:18,351.351 INFO    ] No existing commands found in stream
[2026-06-22 07:15:23,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:15:23,367.367 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-22 07:15:26,016.016 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:15:26,019.019 INFO    ] Checking for system updates...
[2026-06-22 07:15:26,055.055 INFO    ] 200
[2026-06-22 07:15:26,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:15:26,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:15:26,116.116 INFO    ] No update needed
[2026-06-22 07:15:26,119.119 INFO    ] Checking for camera pi updates...
[2026-06-22 07:15:26,156.156 INFO    ] 200
[2026-06-22 07:15:26,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:15:26,199.199 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:15:26,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:15:26,286.286 INFO    ] No camera update needed
[2026-06-22 07:15:26,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:15:26,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:15:26,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:15:26,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:15:28,342.342 INFO    ] ================================================
[2026-06-22 07:15:28,358.358 INFO    ] Launching Daemon at Mon Jun 22 07:15:28 IST 2026
[2026-06-22 07:15:28,368.368 INFO    ] ================================================
[2026-06-22 07:15:28,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:15:28
[2026-06-22 07:15:29,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:15:29,732.732 INFO    ] Initializing speech engine...
[2026-06-22 07:15:29,745.745 INFO    ] 2026-06-22 07:15:29
[2026-06-22 07:15:30,013.013 INFO    ] 2026-06-22 07:15:30
[2026-06-22 07:15:30,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:15:30,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:15:30,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:15:30,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:15:30,486.486 INFO    ] time= 22/06/2026 07:15:30
[2026-06-22 07:15:30,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:15:30,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:15:30,632.632 INFO    ] No existing commands found in stream
[2026-06-22 07:15:35,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:15:35,647.647 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-22 07:15:36,265.265 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:15:36,266.266 INFO    ] Checking for system updates...
[2026-06-22 07:15:36,296.296 INFO    ] 200
[2026-06-22 07:15:36,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:15:36,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:15:36,359.359 INFO    ] No update needed
[2026-06-22 07:15:36,362.362 INFO    ] Checking for camera pi updates...
[2026-06-22 07:15:36,396.396 INFO    ] 200
[2026-06-22 07:15:36,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:15:36,440.440 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:15:36,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:15:36,526.526 INFO    ] No camera update needed
[2026-06-22 07:15:36,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:15:36,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:15:36,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:15:36,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:15:38,581.581 INFO    ] ================================================
[2026-06-22 07:15:38,597.597 INFO    ] Launching Daemon at Mon Jun 22 07:15:38 IST 2026
[2026-06-22 07:15:38,607.607 INFO    ] ================================================
[2026-06-22 07:15:39,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:15:39
[2026-06-22 07:15:39,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:15:40,155.155 INFO    ] Initializing speech engine...
[2026-06-22 07:15:40,163.163 INFO    ] 2026-06-22 07:15:40
[2026-06-22 07:15:40,450.450 INFO    ] 2026-06-22 07:15:40
[2026-06-22 07:15:40,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:15:40,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:15:40,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:15:40,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:15:40,928.928 INFO    ] time= 22/06/2026 07:15:40
[2026-06-22 07:15:40,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:15:41,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:15:41,120.120 INFO    ] No existing commands found in stream
[2026-06-22 07:15:46,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:15:46,155.155 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-22 07:15:47,931.931 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:15:47,932.932 INFO    ] Checking for system updates...
[2026-06-22 07:15:47,953.953 INFO    ] 200
[2026-06-22 07:15:47,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:15:47,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:15:47,993.993 INFO    ] No update needed
[2026-06-22 07:15:47,996.996 INFO    ] Checking for camera pi updates...
[2026-06-22 07:15:48,031.031 INFO    ] 200
[2026-06-22 07:15:48,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:15:48,077.077 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:15:48,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:15:48,161.161 INFO    ] No camera update needed
[2026-06-22 07:15:48,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:15:48,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:15:48,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:15:48,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:15:50,221.221 INFO    ] ================================================
[2026-06-22 07:15:50,237.237 INFO    ] Launching Daemon at Mon Jun 22 07:15:50 IST 2026
[2026-06-22 07:15:50,247.247 INFO    ] ================================================
[2026-06-22 07:15:50,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:15:50
[2026-06-22 07:15:51,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:15:51,783.783 INFO    ] Initializing speech engine...
[2026-06-22 07:15:51,793.793 INFO    ] 2026-06-22 07:15:51
[2026-06-22 07:15:52,071.071 INFO    ] 2026-06-22 07:15:52
[2026-06-22 07:15:52,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:15:53,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:15:53,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:15:53,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:15:53,821.821 INFO    ] time= 22/06/2026 07:15:53
[2026-06-22 07:15:53,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:15:53,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:15:53,939.939 INFO    ] No existing commands found in stream
[2026-06-22 07:15:58,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:15:58,973.973 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-22 07:16:01,698.698 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:16:01,701.701 INFO    ] Checking for system updates...
[2026-06-22 07:16:01,746.746 INFO    ] 200
[2026-06-22 07:16:01,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:16:01,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:16:01,837.837 INFO    ] No update needed
[2026-06-22 07:16:01,840.840 INFO    ] Checking for camera pi updates...
[2026-06-22 07:16:01,884.884 INFO    ] 200
[2026-06-22 07:16:01,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:16:01,935.935 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:16:02,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:16:02,030.030 INFO    ] No camera update needed
[2026-06-22 07:16:02,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:16:02,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:16:02,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:16:02,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:16:04,093.093 INFO    ] ================================================
[2026-06-22 07:16:04,108.108 INFO    ] Launching Daemon at Mon Jun 22 07:16:04 IST 2026
[2026-06-22 07:16:04,119.119 INFO    ] ================================================
[2026-06-22 07:16:04,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:16:04
[2026-06-22 07:16:05,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:16:05,558.558 INFO    ] Initializing speech engine...
[2026-06-22 07:16:05,567.567 INFO    ] 2026-06-22 07:16:05
[2026-06-22 07:16:05,838.838 INFO    ] 2026-06-22 07:16:05
[2026-06-22 07:16:05,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:16:06,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:16:06,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:16:06,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:16:06,327.327 INFO    ] time= 22/06/2026 07:16:06
[2026-06-22 07:16:06,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:16:06,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:16:06,516.516 INFO    ] No existing commands found in stream
[2026-06-22 07:16:11,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:16:11,530.530 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-22 07:16:14,031.031 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:16:14,032.032 INFO    ] Checking for system updates...
[2026-06-22 07:16:14,054.054 INFO    ] 200
[2026-06-22 07:16:14,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:16:14,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:16:14,087.087 INFO    ] No update needed
[2026-06-22 07:16:14,089.089 INFO    ] Checking for camera pi updates...
[2026-06-22 07:16:14,111.111 INFO    ] 200
[2026-06-22 07:16:14,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:16:14,155.155 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:16:14,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:16:14,243.243 INFO    ] No camera update needed
[2026-06-22 07:16:14,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:16:14,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:16:14,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:16:14,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:16:16,301.301 INFO    ] ================================================
[2026-06-22 07:16:16,316.316 INFO    ] Launching Daemon at Mon Jun 22 07:16:16 IST 2026
[2026-06-22 07:16:16,326.326 INFO    ] ================================================
[2026-06-22 07:16:16,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:16:16
[2026-06-22 07:16:17,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:16:17,650.650 INFO    ] Initializing speech engine...
[2026-06-22 07:16:17,658.658 INFO    ] 2026-06-22 07:16:17
[2026-06-22 07:16:17,949.949 INFO    ] 2026-06-22 07:16:17
[2026-06-22 07:16:17,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:16:18,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:16:18,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:16:18,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:16:18,354.354 INFO    ] time= 22/06/2026 07:16:18
[2026-06-22 07:16:18,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:16:18,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:16:18,538.538 INFO    ] No existing commands found in stream
[2026-06-22 07:16:23,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:16:23,571.571 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-22 07:16:25,592.592 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:16:25,594.594 INFO    ] Checking for system updates...
[2026-06-22 07:16:25,632.632 INFO    ] 200
[2026-06-22 07:16:25,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:16:25,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:16:25,689.689 INFO    ] No update needed
[2026-06-22 07:16:25,691.691 INFO    ] Checking for camera pi updates...
[2026-06-22 07:16:25,729.729 INFO    ] 200
[2026-06-22 07:16:25,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:16:25,773.773 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:16:25,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:16:25,851.851 INFO    ] No camera update needed
[2026-06-22 07:16:25,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:16:25,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:16:25,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:16:25,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:16:27,907.907 INFO    ] ================================================
[2026-06-22 07:16:27,922.922 INFO    ] Launching Daemon at Mon Jun 22 07:16:27 IST 2026
[2026-06-22 07:16:27,933.933 INFO    ] ================================================
[2026-06-22 07:16:28,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:16:28
[2026-06-22 07:16:29,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:16:29,339.339 INFO    ] Initializing speech engine...
[2026-06-22 07:16:29,362.362 INFO    ] 2026-06-22 07:16:29
[2026-06-22 07:16:29,613.613 INFO    ] 2026-06-22 07:16:29
[2026-06-22 07:16:29,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:16:29,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:16:29,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:16:29,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:16:29,983.983 INFO    ] time= 22/06/2026 07:16:29
[2026-06-22 07:16:29,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:16:30,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:16:30,143.143 INFO    ] No existing commands found in stream
[2026-06-22 07:16:35,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:16:35,170.170 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-22 07:16:36,457.457 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:16:36,459.459 INFO    ] Checking for system updates...
[2026-06-22 07:16:36,495.495 INFO    ] 200
[2026-06-22 07:16:36,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:16:36,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:16:36,552.552 INFO    ] No update needed
[2026-06-22 07:16:36,554.554 INFO    ] Checking for camera pi updates...
[2026-06-22 07:16:36,592.592 INFO    ] 200
[2026-06-22 07:16:36,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:16:36,636.636 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:16:36,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:16:36,722.722 INFO    ] No camera update needed
[2026-06-22 07:16:36,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:16:36,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:16:36,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:16:36,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:16:38,778.778 INFO    ] ================================================
[2026-06-22 07:16:38,793.793 INFO    ] Launching Daemon at Mon Jun 22 07:16:38 IST 2026
[2026-06-22 07:16:38,805.805 INFO    ] ================================================
[2026-06-22 07:16:39,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:16:39
[2026-06-22 07:16:39,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:16:40,207.207 INFO    ] Initializing speech engine...
[2026-06-22 07:16:40,215.215 INFO    ] 2026-06-22 07:16:40
[2026-06-22 07:16:40,502.502 INFO    ] 2026-06-22 07:16:40
[2026-06-22 07:16:40,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:16:40,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:16:40,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:16:40,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:16:40,985.985 INFO    ] time= 22/06/2026 07:16:40
[2026-06-22 07:16:41,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:16:41,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:16:41,182.182 INFO    ] No existing commands found in stream
[2026-06-22 07:16:46,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:16:46,197.197 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-22 07:16:50,193.193 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:16:50,197.197 INFO    ] Checking for system updates...
[2026-06-22 07:16:50,233.233 INFO    ] 200
[2026-06-22 07:16:50,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:16:50,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:16:50,298.298 INFO    ] No update needed
[2026-06-22 07:16:50,301.301 INFO    ] Checking for camera pi updates...
[2026-06-22 07:16:50,336.336 INFO    ] 200
[2026-06-22 07:16:50,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:16:50,384.384 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:16:50,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:16:50,470.470 INFO    ] No camera update needed
[2026-06-22 07:16:50,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:16:50,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:16:50,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:16:50,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:16:52,529.529 INFO    ] ================================================
[2026-06-22 07:16:52,545.545 INFO    ] Launching Daemon at Mon Jun 22 07:16:52 IST 2026
[2026-06-22 07:16:52,555.555 INFO    ] ================================================
[2026-06-22 07:16:53,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:16:53
[2026-06-22 07:16:53,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:16:53,908.908 INFO    ] Initializing speech engine...
[2026-06-22 07:16:53,920.920 INFO    ] 2026-06-22 07:16:53
[2026-06-22 07:16:54,187.187 INFO    ] 2026-06-22 07:16:54
[2026-06-22 07:16:54,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:16:54,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:16:54,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:16:54,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:16:54,552.552 INFO    ] time= 22/06/2026 07:16:54
[2026-06-22 07:16:54,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:16:54,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:16:54,672.672 INFO    ] No existing commands found in stream
[2026-06-22 07:16:59,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:16:59,687.687 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-22 07:17:01,526.526 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:17:01,528.528 INFO    ] Checking for system updates...
[2026-06-22 07:17:01,564.564 INFO    ] 200
[2026-06-22 07:17:01,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:17:01,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:17:01,626.626 INFO    ] No update needed
[2026-06-22 07:17:01,628.628 INFO    ] Checking for camera pi updates...
[2026-06-22 07:17:01,662.662 INFO    ] 200
[2026-06-22 07:17:01,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:17:01,708.708 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:17:01,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:17:01,812.812 INFO    ] No camera update needed
[2026-06-22 07:17:01,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:17:01,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:17:01,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:17:01,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:17:03,873.873 INFO    ] ================================================
[2026-06-22 07:17:03,888.888 INFO    ] Launching Daemon at Mon Jun 22 07:17:03 IST 2026
[2026-06-22 07:17:03,898.898 INFO    ] ================================================
[2026-06-22 07:17:04,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:17:04
[2026-06-22 07:17:05,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:17:05,305.305 INFO    ] Initializing speech engine...
[2026-06-22 07:17:05,313.313 INFO    ] 2026-06-22 07:17:05
[2026-06-22 07:17:05,598.598 INFO    ] 2026-06-22 07:17:05
[2026-06-22 07:17:05,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:17:05,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:17:05,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:17:05,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:17:06,000.000 INFO    ] time= 22/06/2026 07:17:05
[2026-06-22 07:17:06,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:17:06,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:17:06,084.084 INFO    ] No existing commands found in stream
[2026-06-22 07:17:11,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:17:11,101.101 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-22 07:17:15,418.418 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:17:15,420.420 INFO    ] Checking for system updates...
[2026-06-22 07:17:15,457.457 INFO    ] 200
[2026-06-22 07:17:15,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:17:15,517.517 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:17:15,519.519 INFO    ] No update needed
[2026-06-22 07:17:15,521.521 INFO    ] Checking for camera pi updates...
[2026-06-22 07:17:15,555.555 INFO    ] 200
[2026-06-22 07:17:15,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:17:15,598.598 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:17:15,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:17:15,784.784 INFO    ] No camera update needed
[2026-06-22 07:17:15,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:17:15,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:17:15,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:17:15,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:17:17,839.839 INFO    ] ================================================
[2026-06-22 07:17:17,854.854 INFO    ] Launching Daemon at Mon Jun 22 07:17:17 IST 2026
[2026-06-22 07:17:17,866.866 INFO    ] ================================================
[2026-06-22 07:17:18,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:17:18
[2026-06-22 07:17:18,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:17:19,207.207 INFO    ] Initializing speech engine...
[2026-06-22 07:17:19,224.224 INFO    ] 2026-06-22 07:17:19
[2026-06-22 07:17:19,507.507 INFO    ] 2026-06-22 07:17:19
[2026-06-22 07:17:19,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:17:19,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:17:19,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:17:19,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:17:19,874.874 INFO    ] time= 22/06/2026 07:17:19
[2026-06-22 07:17:19,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:17:19,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:17:19,997.997 INFO    ] No existing commands found in stream
[2026-06-22 07:17:25,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:17:25,010.010 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-22 07:17:28,303.303 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:17:28,305.305 INFO    ] Checking for system updates...
[2026-06-22 07:17:28,327.327 INFO    ] 200
[2026-06-22 07:17:28,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:17:28,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:17:28,360.360 INFO    ] No update needed
[2026-06-22 07:17:28,361.361 INFO    ] Checking for camera pi updates...
[2026-06-22 07:17:28,392.392 INFO    ] 200
[2026-06-22 07:17:28,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:17:28,437.437 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:17:28,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:17:28,539.539 INFO    ] No camera update needed
[2026-06-22 07:17:28,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:17:28,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:17:28,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:17:28,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:17:30,596.596 INFO    ] ================================================
[2026-06-22 07:17:30,611.611 INFO    ] Launching Daemon at Mon Jun 22 07:17:30 IST 2026
[2026-06-22 07:17:30,621.621 INFO    ] ================================================
[2026-06-22 07:17:31,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:17:31
[2026-06-22 07:17:31,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:17:31,980.980 INFO    ] Initializing speech engine...
[2026-06-22 07:17:31,999.999 INFO    ] 2026-06-22 07:17:31
[2026-06-22 07:17:32,306.306 INFO    ] 2026-06-22 07:17:32
[2026-06-22 07:17:32,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:17:32,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:17:32,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:17:32,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:17:32,676.676 INFO    ] time= 22/06/2026 07:17:32
[2026-06-22 07:17:32,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:17:32,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:17:32,757.757 INFO    ] No existing commands found in stream
[2026-06-22 07:17:37,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:17:37,769.769 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-22 07:17:38,530.530 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:17:38,531.531 INFO    ] Checking for system updates...
[2026-06-22 07:17:38,552.552 INFO    ] 200
[2026-06-22 07:17:38,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:17:38,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:17:38,611.611 INFO    ] No update needed
[2026-06-22 07:17:38,613.613 INFO    ] Checking for camera pi updates...
[2026-06-22 07:17:38,647.647 INFO    ] 200
[2026-06-22 07:17:38,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:17:38,689.689 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:17:38,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:17:38,770.770 INFO    ] No camera update needed
[2026-06-22 07:17:38,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:17:38,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:17:38,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:17:38,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:17:40,826.826 INFO    ] ================================================
[2026-06-22 07:17:40,841.841 INFO    ] Launching Daemon at Mon Jun 22 07:17:40 IST 2026
[2026-06-22 07:17:40,852.852 INFO    ] ================================================
[2026-06-22 07:17:41,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:17:41
[2026-06-22 07:17:42,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:17:42,315.315 INFO    ] Initializing speech engine...
[2026-06-22 07:17:42,332.332 INFO    ] 2026-06-22 07:17:42
[2026-06-22 07:17:42,599.599 INFO    ] 2026-06-22 07:17:42
[2026-06-22 07:17:42,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:17:42,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:17:42,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:17:42,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:17:42,964.964 INFO    ] time= 22/06/2026 07:17:42
[2026-06-22 07:17:42,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:17:43,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:17:43,088.088 INFO    ] No existing commands found in stream
[2026-06-22 07:17:48,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:17:48,101.101 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-22 07:17:51,425.425 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:17:51,427.427 INFO    ] Checking for system updates...
[2026-06-22 07:17:51,448.448 INFO    ] 200
[2026-06-22 07:17:51,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:17:51,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:17:51,491.491 INFO    ] No update needed
[2026-06-22 07:17:51,493.493 INFO    ] Checking for camera pi updates...
[2026-06-22 07:17:51,542.542 INFO    ] 200
[2026-06-22 07:17:51,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:17:51,586.586 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:17:51,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:17:51,680.680 INFO    ] No camera update needed
[2026-06-22 07:17:51,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:17:51,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:17:51,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:17:51,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:17:53,738.738 INFO    ] ================================================
[2026-06-22 07:17:53,752.752 INFO    ] Launching Daemon at Mon Jun 22 07:17:53 IST 2026
[2026-06-22 07:17:53,763.763 INFO    ] ================================================
[2026-06-22 07:17:54,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:17:54
[2026-06-22 07:17:54,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:17:55,095.095 INFO    ] Initializing speech engine...
[2026-06-22 07:17:55,112.112 INFO    ] 2026-06-22 07:17:55
[2026-06-22 07:17:55,378.378 INFO    ] 2026-06-22 07:17:55
[2026-06-22 07:17:55,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:17:55,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:17:55,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:17:55,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:17:55,886.886 INFO    ] time= 22/06/2026 07:17:55
[2026-06-22 07:17:55,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:17:55,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:17:56,053.053 INFO    ] No existing commands found in stream
[2026-06-22 07:18:01,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:18:01,067.067 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-22 07:18:03,197.197 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:18:03,201.201 INFO    ] Checking for system updates...
[2026-06-22 07:18:03,240.240 INFO    ] 200
[2026-06-22 07:18:03,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:18:03,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:18:03,298.298 INFO    ] No update needed
[2026-06-22 07:18:03,300.300 INFO    ] Checking for camera pi updates...
[2026-06-22 07:18:03,337.337 INFO    ] 200
[2026-06-22 07:18:03,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:18:03,381.381 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:18:03,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:18:03,463.463 INFO    ] No camera update needed
[2026-06-22 07:18:03,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:18:03,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:18:03,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:18:03,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:18:05,519.519 INFO    ] ================================================
[2026-06-22 07:18:05,534.534 INFO    ] Launching Daemon at Mon Jun 22 07:18:05 IST 2026
[2026-06-22 07:18:05,545.545 INFO    ] ================================================
[2026-06-22 07:18:06,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:18:06
[2026-06-22 07:18:06,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:18:06,999.999 INFO    ] Initializing speech engine...
[2026-06-22 07:18:07,006.006 INFO    ] 2026-06-22 07:18:07
[2026-06-22 07:18:07,300.300 INFO    ] 2026-06-22 07:18:07
[2026-06-22 07:18:07,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:18:07,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:18:07,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:18:07,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:18:07,678.678 INFO    ] time= 22/06/2026 07:18:07
[2026-06-22 07:18:07,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:18:07,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:18:07,801.801 INFO    ] No existing commands found in stream
[2026-06-22 07:18:12,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:18:12,817.817 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-22 07:18:15,732.732 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:18:15,736.736 INFO    ] Checking for system updates...
[2026-06-22 07:18:15,776.776 INFO    ] 200
[2026-06-22 07:18:15,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:18:15,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:18:15,837.837 INFO    ] No update needed
[2026-06-22 07:18:15,840.840 INFO    ] Checking for camera pi updates...
[2026-06-22 07:18:15,874.874 INFO    ] 200
[2026-06-22 07:18:15,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:18:15,918.918 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:18:15,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:18:15,989.989 INFO    ] No camera update needed
[2026-06-22 07:18:15,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:18:15,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:18:16,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:18:16,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:18:18,047.047 INFO    ] ================================================
[2026-06-22 07:18:18,063.063 INFO    ] Launching Daemon at Mon Jun 22 07:18:18 IST 2026
[2026-06-22 07:18:18,073.073 INFO    ] ================================================
[2026-06-22 07:18:18,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:18:18
[2026-06-22 07:18:19,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:18:19,435.435 INFO    ] Initializing speech engine...
[2026-06-22 07:18:19,450.450 INFO    ] 2026-06-22 07:18:19
[2026-06-22 07:18:19,734.734 INFO    ] 2026-06-22 07:18:19
[2026-06-22 07:18:19,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:18:19,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:18:19,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:18:20,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:18:20,107.107 INFO    ] time= 22/06/2026 07:18:20
[2026-06-22 07:18:20,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:18:20,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:18:20,226.226 INFO    ] No existing commands found in stream
[2026-06-22 07:18:25,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:18:25,246.246 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-22 07:18:27,978.978 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:18:27,980.980 INFO    ] Checking for system updates...
[2026-06-22 07:18:28,006.006 INFO    ] 200
[2026-06-22 07:18:28,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:18:28,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:18:28,066.066 INFO    ] No update needed
[2026-06-22 07:18:28,068.068 INFO    ] Checking for camera pi updates...
[2026-06-22 07:18:28,103.103 INFO    ] 200
[2026-06-22 07:18:28,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:18:28,146.146 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:18:28,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:18:28,254.254 INFO    ] No camera update needed
[2026-06-22 07:18:28,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:18:28,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:18:28,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:18:28,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:18:30,311.311 INFO    ] ================================================
[2026-06-22 07:18:30,326.326 INFO    ] Launching Daemon at Mon Jun 22 07:18:30 IST 2026
[2026-06-22 07:18:30,337.337 INFO    ] ================================================
[2026-06-22 07:18:30,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:18:30
[2026-06-22 07:18:31,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:18:31,686.686 INFO    ] Initializing speech engine...
[2026-06-22 07:18:31,700.700 INFO    ] 2026-06-22 07:18:31
[2026-06-22 07:18:32,010.010 INFO    ] 2026-06-22 07:18:31
[2026-06-22 07:18:32,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:18:32,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:18:32,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:18:32,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:18:32,407.407 INFO    ] time= 22/06/2026 07:18:32
[2026-06-22 07:18:32,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:18:32,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:18:32,606.606 INFO    ] No existing commands found in stream
[2026-06-22 07:18:37,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:18:37,630.630 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-22 07:18:38,391.391 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:18:38,393.393 INFO    ] Checking for system updates...
[2026-06-22 07:18:38,429.429 INFO    ] 200
[2026-06-22 07:18:38,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:18:38,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:18:38,489.489 INFO    ] No update needed
[2026-06-22 07:18:38,491.491 INFO    ] Checking for camera pi updates...
[2026-06-22 07:18:38,525.525 INFO    ] 200
[2026-06-22 07:18:38,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:18:38,574.574 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:18:38,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:18:38,668.668 INFO    ] No camera update needed
[2026-06-22 07:18:38,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:18:38,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:18:38,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:18:38,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:18:40,726.726 INFO    ] ================================================
[2026-06-22 07:18:40,742.742 INFO    ] Launching Daemon at Mon Jun 22 07:18:40 IST 2026
[2026-06-22 07:18:40,753.753 INFO    ] ================================================
[2026-06-22 07:18:41,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:18:41
[2026-06-22 07:18:42,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:18:42,322.322 INFO    ] Initializing speech engine...
[2026-06-22 07:18:42,333.333 INFO    ] 2026-06-22 07:18:42
[2026-06-22 07:18:42,617.617 INFO    ] 2026-06-22 07:18:42
[2026-06-22 07:18:42,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:18:42,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:18:42,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:18:42,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:18:43,002.002 INFO    ] time= 22/06/2026 07:18:42
[2026-06-22 07:18:43,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:18:43,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:18:43,128.128 INFO    ] No existing commands found in stream
[2026-06-22 07:18:48,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:18:48,146.146 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-22 07:18:50,132.132 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:18:50,135.135 INFO    ] Checking for system updates...
[2026-06-22 07:18:50,171.171 INFO    ] 200
[2026-06-22 07:18:50,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:18:50,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:18:50,229.229 INFO    ] No update needed
[2026-06-22 07:18:50,231.231 INFO    ] Checking for camera pi updates...
[2026-06-22 07:18:50,265.265 INFO    ] 200
[2026-06-22 07:18:50,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:18:50,308.308 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:18:50,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:18:50,386.386 INFO    ] No camera update needed
[2026-06-22 07:18:50,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:18:50,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:18:50,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:18:50,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:18:52,444.444 INFO    ] ================================================
[2026-06-22 07:18:52,459.459 INFO    ] Launching Daemon at Mon Jun 22 07:18:52 IST 2026
[2026-06-22 07:18:52,470.470 INFO    ] ================================================
[2026-06-22 07:18:53,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:18:53
[2026-06-22 07:18:53,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:18:53,894.894 INFO    ] Initializing speech engine...
[2026-06-22 07:18:53,900.900 INFO    ] 2026-06-22 07:18:53
[2026-06-22 07:18:54,193.193 INFO    ] 2026-06-22 07:18:54
[2026-06-22 07:18:54,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:18:54,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:18:54,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:18:54,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:18:54,571.571 INFO    ] time= 22/06/2026 07:18:54
[2026-06-22 07:18:54,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:18:54,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:18:54,697.697 INFO    ] No existing commands found in stream
[2026-06-22 07:18:59,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:18:59,711.711 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-22 07:19:01,011.011 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:19:01,014.014 INFO    ] Checking for system updates...
[2026-06-22 07:19:01,049.049 INFO    ] 200
[2026-06-22 07:19:01,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:19:01,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:19:01,108.108 INFO    ] No update needed
[2026-06-22 07:19:01,110.110 INFO    ] Checking for camera pi updates...
[2026-06-22 07:19:01,144.144 INFO    ] 200
[2026-06-22 07:19:01,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:19:01,187.187 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:19:01,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:19:01,287.287 INFO    ] No camera update needed
[2026-06-22 07:19:01,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:19:01,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:19:01,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:19:01,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:19:03,366.366 INFO    ] ================================================
[2026-06-22 07:19:03,381.381 INFO    ] Launching Daemon at Mon Jun 22 07:19:03 IST 2026
[2026-06-22 07:19:03,391.391 INFO    ] ================================================
[2026-06-22 07:19:03,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:19:03
[2026-06-22 07:19:04,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:19:04,817.817 INFO    ] Initializing speech engine...
[2026-06-22 07:19:04,830.830 INFO    ] 2026-06-22 07:19:04
[2026-06-22 07:19:05,080.080 INFO    ] 2026-06-22 07:19:05
[2026-06-22 07:19:05,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:19:05,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:19:05,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:19:05,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:19:05,454.454 INFO    ] time= 22/06/2026 07:19:05
[2026-06-22 07:19:05,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:19:05,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:19:05,601.601 INFO    ] No existing commands found in stream
[2026-06-22 07:19:10,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:19:10,635.635 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-22 07:19:14,459.459 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:19:14,462.462 INFO    ] Checking for system updates...
[2026-06-22 07:19:14,498.498 INFO    ] 200
[2026-06-22 07:19:14,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:19:14,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:19:14,561.561 INFO    ] No update needed
[2026-06-22 07:19:14,563.563 INFO    ] Checking for camera pi updates...
[2026-06-22 07:19:14,596.596 INFO    ] 200
[2026-06-22 07:19:14,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:19:14,643.643 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:19:14,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:19:14,724.724 INFO    ] No camera update needed
[2026-06-22 07:19:14,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:19:14,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:19:14,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:19:14,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:19:16,779.779 INFO    ] ================================================
[2026-06-22 07:19:16,794.794 INFO    ] Launching Daemon at Mon Jun 22 07:19:16 IST 2026
[2026-06-22 07:19:16,805.805 INFO    ] ================================================
[2026-06-22 07:19:17,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:19:17
[2026-06-22 07:19:18,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:19:18,347.347 INFO    ] Initializing speech engine...
[2026-06-22 07:19:18,355.355 INFO    ] 2026-06-22 07:19:18
[2026-06-22 07:19:18,644.644 INFO    ] 2026-06-22 07:19:18
[2026-06-22 07:19:18,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:19:18,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:19:18,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:19:19,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:19:19,069.069 INFO    ] time= 22/06/2026 07:19:19
[2026-06-22 07:19:19,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:19:19,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:19:19,206.206 INFO    ] No existing commands found in stream
[2026-06-22 07:19:24,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:19:24,233.233 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-22 07:19:25,501.501 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:19:25,503.503 INFO    ] Checking for system updates...
[2026-06-22 07:19:25,540.540 INFO    ] 200
[2026-06-22 07:19:25,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:19:25,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:19:25,598.598 INFO    ] No update needed
[2026-06-22 07:19:25,600.600 INFO    ] Checking for camera pi updates...
[2026-06-22 07:19:25,634.634 INFO    ] 200
[2026-06-22 07:19:25,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:19:25,677.677 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:19:25,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:19:25,862.862 INFO    ] No camera update needed
[2026-06-22 07:19:25,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:19:25,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:19:25,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:19:25,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:19:27,917.917 INFO    ] ================================================
[2026-06-22 07:19:27,933.933 INFO    ] Launching Daemon at Mon Jun 22 07:19:27 IST 2026
[2026-06-22 07:19:27,943.943 INFO    ] ================================================
[2026-06-22 07:19:28,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:19:28
[2026-06-22 07:19:29,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:19:29,294.294 INFO    ] Initializing speech engine...
[2026-06-22 07:19:29,303.303 INFO    ] 2026-06-22 07:19:29
[2026-06-22 07:19:29,547.547 INFO    ] 2026-06-22 07:19:29
[2026-06-22 07:19:29,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:19:29,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:19:29,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:19:29,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:19:29,920.920 INFO    ] time= 22/06/2026 07:19:29
[2026-06-22 07:19:29,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:19:29,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:19:30,103.103 INFO    ] No existing commands found in stream
[2026-06-22 07:19:35,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:19:35,130.130 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-22 07:19:38,454.454 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:19:38,457.457 INFO    ] Checking for system updates...
[2026-06-22 07:19:38,493.493 INFO    ] 200
[2026-06-22 07:19:38,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:19:38,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:19:38,550.550 INFO    ] No update needed
[2026-06-22 07:19:38,553.553 INFO    ] Checking for camera pi updates...
[2026-06-22 07:19:38,587.587 INFO    ] 200
[2026-06-22 07:19:38,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:19:38,631.631 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:19:38,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:19:38,705.705 INFO    ] No camera update needed
[2026-06-22 07:19:38,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:19:38,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:19:38,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:19:38,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:19:40,762.762 INFO    ] ================================================
[2026-06-22 07:19:40,777.777 INFO    ] Launching Daemon at Mon Jun 22 07:19:40 IST 2026
[2026-06-22 07:19:40,788.788 INFO    ] ================================================
[2026-06-22 07:19:41,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:19:41
[2026-06-22 07:19:41,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:19:42,194.194 INFO    ] Initializing speech engine...
[2026-06-22 07:19:42,200.200 INFO    ] 2026-06-22 07:19:42
[2026-06-22 07:19:42,467.467 INFO    ] 2026-06-22 07:19:42
[2026-06-22 07:19:42,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:19:42,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:19:42,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:19:42,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:19:42,858.858 INFO    ] time= 22/06/2026 07:19:42
[2026-06-22 07:19:42,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:19:42,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:19:42,973.973 INFO    ] No existing commands found in stream
[2026-06-22 07:19:47,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:19:47,988.988 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-22 07:19:51,674.674 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:19:51,677.677 INFO    ] Checking for system updates...
[2026-06-22 07:19:51,714.714 INFO    ] 200
[2026-06-22 07:19:51,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:19:51,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:19:51,773.773 INFO    ] No update needed
[2026-06-22 07:19:51,776.776 INFO    ] Checking for camera pi updates...
[2026-06-22 07:19:51,810.810 INFO    ] 200
[2026-06-22 07:19:51,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:19:51,859.859 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:19:51,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:19:51,934.934 INFO    ] No camera update needed
[2026-06-22 07:19:51,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:19:51,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:19:51,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:19:51,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:19:53,993.993 INFO    ] ================================================
[2026-06-22 07:19:54,009.009 INFO    ] Launching Daemon at Mon Jun 22 07:19:54 IST 2026
[2026-06-22 07:19:54,019.019 INFO    ] ================================================
[2026-06-22 07:19:54,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:19:54
[2026-06-22 07:19:55,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:19:55,516.516 INFO    ] Initializing speech engine...
[2026-06-22 07:19:55,527.527 INFO    ] 2026-06-22 07:19:55
[2026-06-22 07:19:55,802.802 INFO    ] 2026-06-22 07:19:55
[2026-06-22 07:19:55,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:19:56,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:19:56,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:19:56,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:19:56,279.279 INFO    ] time= 22/06/2026 07:19:56
[2026-06-22 07:19:56,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:19:56,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:19:56,434.434 INFO    ] No existing commands found in stream
[2026-06-22 07:20:01,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:20:01,450.450 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-22 07:20:02,182.182 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:20:02,196.196 INFO    ] Checking for system updates...
[2026-06-22 07:20:02,272.272 INFO    ] 200
[2026-06-22 07:20:02,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:20:02,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:20:02,387.387 INFO    ] No update needed
[2026-06-22 07:20:02,390.390 INFO    ] Checking for camera pi updates...
[2026-06-22 07:20:02,429.429 INFO    ] 200
[2026-06-22 07:20:02,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:20:02,479.479 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:20:02,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:20:02,584.584 INFO    ] No camera update needed
[2026-06-22 07:20:02,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:20:02,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:20:02,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:20:02,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:20:04,650.650 INFO    ] ================================================
[2026-06-22 07:20:04,671.671 INFO    ] Launching Daemon at Mon Jun 22 07:20:04 IST 2026
[2026-06-22 07:20:04,682.682 INFO    ] ================================================
[2026-06-22 07:20:05,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:20:05
[2026-06-22 07:20:06,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:20:06,333.333 INFO    ] Initializing speech engine...
[2026-06-22 07:20:06,346.346 INFO    ] 2026-06-22 07:20:06
[2026-06-22 07:20:06,573.573 INFO    ] 2026-06-22 07:20:06
[2026-06-22 07:20:06,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:20:06,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:20:06,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:20:07,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:20:07,092.092 INFO    ] time= 22/06/2026 07:20:07
[2026-06-22 07:20:07,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:20:07,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:20:07,235.235 INFO    ] No existing commands found in stream
[2026-06-22 07:20:12,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:20:12,260.260 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-22 07:20:15,510.510 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:20:15,512.512 INFO    ] Checking for system updates...
[2026-06-22 07:20:15,536.536 INFO    ] 200
[2026-06-22 07:20:15,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:20:15,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:20:15,590.590 INFO    ] No update needed
[2026-06-22 07:20:15,593.593 INFO    ] Checking for camera pi updates...
[2026-06-22 07:20:15,627.627 INFO    ] 200
[2026-06-22 07:20:15,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:20:15,670.670 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:20:15,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:20:15,756.756 INFO    ] No camera update needed
[2026-06-22 07:20:15,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:20:15,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:20:15,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:20:15,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:20:17,812.812 INFO    ] ================================================
[2026-06-22 07:20:17,827.827 INFO    ] Launching Daemon at Mon Jun 22 07:20:17 IST 2026
[2026-06-22 07:20:17,839.839 INFO    ] ================================================
[2026-06-22 07:20:18,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:20:18
[2026-06-22 07:20:18,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:20:19,219.219 INFO    ] Initializing speech engine...
[2026-06-22 07:20:19,227.227 INFO    ] 2026-06-22 07:20:19
[2026-06-22 07:20:19,507.507 INFO    ] 2026-06-22 07:20:19
[2026-06-22 07:20:19,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:20:19,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:20:19,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:20:19,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:20:19,884.884 INFO    ] time= 22/06/2026 07:20:19
[2026-06-22 07:20:19,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:20:19,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:20:19,964.964 INFO    ] No existing commands found in stream
[2026-06-22 07:20:24,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:20:24,981.981 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-22 07:20:28,142.142 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:20:28,145.145 INFO    ] Checking for system updates...
[2026-06-22 07:20:28,181.181 INFO    ] 200
[2026-06-22 07:20:28,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:20:28,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:20:28,245.245 INFO    ] No update needed
[2026-06-22 07:20:28,249.249 INFO    ] Checking for camera pi updates...
[2026-06-22 07:20:28,284.284 INFO    ] 200
[2026-06-22 07:20:28,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:20:28,328.328 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:20:28,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:20:28,418.418 INFO    ] No camera update needed
[2026-06-22 07:20:28,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:20:28,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:20:28,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:20:28,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:20:30,474.474 INFO    ] ================================================
[2026-06-22 07:20:30,490.490 INFO    ] Launching Daemon at Mon Jun 22 07:20:30 IST 2026
[2026-06-22 07:20:30,501.501 INFO    ] ================================================
[2026-06-22 07:20:31,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:20:31
[2026-06-22 07:20:31,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:20:31,966.966 INFO    ] Initializing speech engine...
[2026-06-22 07:20:31,977.977 INFO    ] 2026-06-22 07:20:31
[2026-06-22 07:20:32,243.243 INFO    ] 2026-06-22 07:20:32
[2026-06-22 07:20:32,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:20:32,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:20:32,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:20:32,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:20:32,646.646 INFO    ] time= 22/06/2026 07:20:32
[2026-06-22 07:20:32,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:20:32,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:20:32,761.761 INFO    ] No existing commands found in stream
[2026-06-22 07:20:37,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:20:37,769.769 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-22 07:20:40,642.642 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:20:40,644.644 INFO    ] Checking for system updates...
[2026-06-22 07:20:40,681.681 INFO    ] 200
[2026-06-22 07:20:40,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:20:40,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:20:40,740.740 INFO    ] No update needed
[2026-06-22 07:20:40,743.743 INFO    ] Checking for camera pi updates...
[2026-06-22 07:20:40,777.777 INFO    ] 200
[2026-06-22 07:20:40,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:20:40,821.821 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:20:40,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:20:40,910.910 INFO    ] No camera update needed
[2026-06-22 07:20:40,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:20:40,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:20:40,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:20:40,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:20:42,968.968 INFO    ] ================================================
[2026-06-22 07:20:42,983.983 INFO    ] Launching Daemon at Mon Jun 22 07:20:42 IST 2026
[2026-06-22 07:20:42,995.995 INFO    ] ================================================
[2026-06-22 07:20:43,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:20:43
[2026-06-22 07:20:44,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:20:44,379.379 INFO    ] Initializing speech engine...
[2026-06-22 07:20:44,389.389 INFO    ] 2026-06-22 07:20:44
[2026-06-22 07:20:44,653.653 INFO    ] 2026-06-22 07:20:44
[2026-06-22 07:20:44,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:20:44,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:20:44,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:20:45,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:20:45,116.116 INFO    ] time= 22/06/2026 07:20:45
[2026-06-22 07:20:45,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:20:45,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:20:45,261.261 INFO    ] No existing commands found in stream
[2026-06-22 07:20:50,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:20:50,276.276 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-22 07:20:53,834.834 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:20:53,837.837 INFO    ] Checking for system updates...
[2026-06-22 07:20:53,873.873 INFO    ] 200
[2026-06-22 07:20:53,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:20:53,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:20:53,931.931 INFO    ] No update needed
[2026-06-22 07:20:53,934.934 INFO    ] Checking for camera pi updates...
[2026-06-22 07:20:53,969.969 INFO    ] 200
[2026-06-22 07:20:53,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:20:54,013.013 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:20:54,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:20:54,113.113 INFO    ] No camera update needed
[2026-06-22 07:20:54,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:20:54,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:20:54,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:20:54,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:20:56,170.170 INFO    ] ================================================
[2026-06-22 07:20:56,186.186 INFO    ] Launching Daemon at Mon Jun 22 07:20:56 IST 2026
[2026-06-22 07:20:56,196.196 INFO    ] ================================================
[2026-06-22 07:20:56,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:20:56
[2026-06-22 07:20:57,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:20:57,797.797 INFO    ] Initializing speech engine...
[2026-06-22 07:20:57,804.804 INFO    ] 2026-06-22 07:20:57
[2026-06-22 07:20:58,057.057 INFO    ] 2026-06-22 07:20:58
[2026-06-22 07:20:58,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:20:58,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:20:58,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:20:58,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:20:58,516.516 INFO    ] time= 22/06/2026 07:20:58
[2026-06-22 07:20:58,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:20:58,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:20:58,634.634 INFO    ] No existing commands found in stream
[2026-06-22 07:21:03,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:21:03,647.647 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-22 07:21:07,184.184 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:21:07,187.187 INFO    ] Checking for system updates...
[2026-06-22 07:21:07,230.230 INFO    ] 200
[2026-06-22 07:21:07,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:21:07,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:21:07,288.288 INFO    ] No update needed
[2026-06-22 07:21:07,290.290 INFO    ] Checking for camera pi updates...
[2026-06-22 07:21:07,324.324 INFO    ] 200
[2026-06-22 07:21:07,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:21:07,367.367 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:21:07,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:21:07,463.463 INFO    ] No camera update needed
[2026-06-22 07:21:07,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:21:07,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:21:07,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:21:07,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:21:09,523.523 INFO    ] ================================================
[2026-06-22 07:21:09,538.538 INFO    ] Launching Daemon at Mon Jun 22 07:21:09 IST 2026
[2026-06-22 07:21:09,549.549 INFO    ] ================================================
[2026-06-22 07:21:10,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:21:10
[2026-06-22 07:21:10,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:21:10,949.949 INFO    ] Initializing speech engine...
[2026-06-22 07:21:10,952.952 INFO    ] 2026-06-22 07:21:10
[2026-06-22 07:21:11,236.236 INFO    ] 2026-06-22 07:21:11
[2026-06-22 07:21:11,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:21:11,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:21:11,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:21:11,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:21:11,621.621 INFO    ] time= 22/06/2026 07:21:11
[2026-06-22 07:21:11,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:21:11,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:21:11,746.746 INFO    ] No existing commands found in stream
[2026-06-22 07:21:16,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:21:16,761.761 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-22 07:21:20,555.555 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:21:20,558.558 INFO    ] Checking for system updates...
[2026-06-22 07:21:20,594.594 INFO    ] 200
[2026-06-22 07:21:20,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:21:20,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:21:20,653.653 INFO    ] No update needed
[2026-06-22 07:21:20,655.655 INFO    ] Checking for camera pi updates...
[2026-06-22 07:21:20,689.689 INFO    ] 200
[2026-06-22 07:21:20,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:21:20,733.733 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:21:20,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:21:20,817.817 INFO    ] No camera update needed
[2026-06-22 07:21:20,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:21:20,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:21:20,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:21:20,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:21:22,873.873 INFO    ] ================================================
[2026-06-22 07:21:22,889.889 INFO    ] Launching Daemon at Mon Jun 22 07:21:22 IST 2026
[2026-06-22 07:21:22,899.899 INFO    ] ================================================
[2026-06-22 07:21:23,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:21:23
[2026-06-22 07:21:23,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:21:24,228.228 INFO    ] Initializing speech engine...
[2026-06-22 07:21:24,247.247 INFO    ] 2026-06-22 07:21:24
[2026-06-22 07:21:24,498.498 INFO    ] 2026-06-22 07:21:24
[2026-06-22 07:21:24,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:21:24,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:21:24,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:21:24,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:21:24,878.878 INFO    ] time= 22/06/2026 07:21:24
[2026-06-22 07:21:24,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:21:24,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:21:25,045.045 INFO    ] No existing commands found in stream
[2026-06-22 07:21:30,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:21:30,073.073 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-22 07:21:32,472.472 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:21:32,475.475 INFO    ] Checking for system updates...
[2026-06-22 07:21:32,513.513 INFO    ] 200
[2026-06-22 07:21:32,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:21:32,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:21:32,596.596 INFO    ] No update needed
[2026-06-22 07:21:32,599.599 INFO    ] Checking for camera pi updates...
[2026-06-22 07:21:32,641.641 INFO    ] 200
[2026-06-22 07:21:32,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:21:32,699.699 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:21:32,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:21:32,759.759 INFO    ] No camera update needed
[2026-06-22 07:21:32,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:21:32,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:21:32,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:21:32,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:21:34,824.824 INFO    ] ================================================
[2026-06-22 07:21:34,839.839 INFO    ] Launching Daemon at Mon Jun 22 07:21:34 IST 2026
[2026-06-22 07:21:34,850.850 INFO    ] ================================================
[2026-06-22 07:21:35,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:21:35
[2026-06-22 07:21:36,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:21:36,225.225 INFO    ] Initializing speech engine...
[2026-06-22 07:21:36,234.234 INFO    ] 2026-06-22 07:21:36
[2026-06-22 07:21:36,486.486 INFO    ] 2026-06-22 07:21:36
[2026-06-22 07:21:36,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:21:36,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:21:36,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:21:36,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:21:36,856.856 INFO    ] time= 22/06/2026 07:21:36
[2026-06-22 07:21:36,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:21:36,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:21:37,026.026 INFO    ] No existing commands found in stream
[2026-06-22 07:21:42,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:21:42,065.065 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-22 07:21:43,125.125 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:21:43,128.128 INFO    ] Checking for system updates...
[2026-06-22 07:21:43,165.165 INFO    ] 200
[2026-06-22 07:21:43,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:21:43,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:21:43,223.223 INFO    ] No update needed
[2026-06-22 07:21:43,226.226 INFO    ] Checking for camera pi updates...
[2026-06-22 07:21:43,260.260 INFO    ] 200
[2026-06-22 07:21:43,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:21:43,311.311 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:21:43,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:21:43,370.370 INFO    ] No camera update needed
[2026-06-22 07:21:43,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:21:43,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:21:43,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:21:43,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:21:45,426.426 INFO    ] ================================================
[2026-06-22 07:21:45,441.441 INFO    ] Launching Daemon at Mon Jun 22 07:21:45 IST 2026
[2026-06-22 07:21:45,451.451 INFO    ] ================================================
[2026-06-22 07:21:46,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:21:46
[2026-06-22 07:21:46,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:21:46,786.786 INFO    ] Initializing speech engine...
[2026-06-22 07:21:46,795.795 INFO    ] 2026-06-22 07:21:46
[2026-06-22 07:21:47,047.047 INFO    ] 2026-06-22 07:21:47
[2026-06-22 07:21:47,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:21:47,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:21:47,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:21:47,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:21:47,388.388 INFO    ] time= 22/06/2026 07:21:47
[2026-06-22 07:21:47,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:21:47,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:21:47,500.500 INFO    ] No existing commands found in stream
[2026-06-22 07:21:52,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:21:52,512.512 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-22 07:21:54,684.684 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:21:54,687.687 INFO    ] Checking for system updates...
[2026-06-22 07:21:54,724.724 INFO    ] 200
[2026-06-22 07:21:54,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:21:54,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:21:54,790.790 INFO    ] No update needed
[2026-06-22 07:21:54,793.793 INFO    ] Checking for camera pi updates...
[2026-06-22 07:21:54,826.826 INFO    ] 200
[2026-06-22 07:21:54,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:21:54,871.871 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:21:54,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:21:54,943.943 INFO    ] No camera update needed
[2026-06-22 07:21:54,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:21:54,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:21:54,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:21:54,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:21:57,001.001 INFO    ] ================================================
[2026-06-22 07:21:57,016.016 INFO    ] Launching Daemon at Mon Jun 22 07:21:57 IST 2026
[2026-06-22 07:21:57,027.027 INFO    ] ================================================
[2026-06-22 07:21:57,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:21:57
[2026-06-22 07:21:58,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:21:58,438.438 INFO    ] Initializing speech engine...
[2026-06-22 07:21:58,446.446 INFO    ] 2026-06-22 07:21:58
[2026-06-22 07:21:58,721.721 INFO    ] 2026-06-22 07:21:58
[2026-06-22 07:21:58,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:21:58,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:21:58,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:21:59,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:21:59,071.071 INFO    ] time= 22/06/2026 07:21:59
[2026-06-22 07:21:59,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:21:59,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:21:59,184.184 INFO    ] No existing commands found in stream
[2026-06-22 07:22:04,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:22:04,199.199 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-22 07:22:07,673.673 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:22:07,676.676 INFO    ] Checking for system updates...
[2026-06-22 07:22:07,719.719 INFO    ] 200
[2026-06-22 07:22:07,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:22:07,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:22:07,789.789 INFO    ] No update needed
[2026-06-22 07:22:07,792.792 INFO    ] Checking for camera pi updates...
[2026-06-22 07:22:07,825.825 INFO    ] 200
[2026-06-22 07:22:07,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:22:07,875.875 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:22:07,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:22:07,968.968 INFO    ] No camera update needed
[2026-06-22 07:22:07,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:22:07,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:22:07,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:22:07,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:22:10,023.023 INFO    ] ================================================
[2026-06-22 07:22:10,038.038 INFO    ] Launching Daemon at Mon Jun 22 07:22:10 IST 2026
[2026-06-22 07:22:10,050.050 INFO    ] ================================================
[2026-06-22 07:22:10,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:22:10
[2026-06-22 07:22:11,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:22:11,430.430 INFO    ] Initializing speech engine...
[2026-06-22 07:22:11,439.439 INFO    ] 2026-06-22 07:22:11
[2026-06-22 07:22:11,699.699 INFO    ] 2026-06-22 07:22:11
[2026-06-22 07:22:11,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:22:11,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:22:11,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:22:12,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:22:12,135.135 INFO    ] time= 22/06/2026 07:22:12
[2026-06-22 07:22:12,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:22:12,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:22:12,305.305 INFO    ] No existing commands found in stream
[2026-06-22 07:22:17,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:22:17,320.320 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-22 07:22:21,425.425 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:22:21,427.427 INFO    ] Checking for system updates...
[2026-06-22 07:22:21,447.447 INFO    ] 200
[2026-06-22 07:22:21,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:22:21,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:22:21,496.496 INFO    ] No update needed
[2026-06-22 07:22:21,498.498 INFO    ] Checking for camera pi updates...
[2026-06-22 07:22:21,538.538 INFO    ] 200
[2026-06-22 07:22:21,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:22:21,588.588 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:22:21,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:22:21,659.659 INFO    ] No camera update needed
[2026-06-22 07:22:21,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:22:21,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:22:21,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:22:21,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:22:23,714.714 INFO    ] ================================================
[2026-06-22 07:22:23,729.729 INFO    ] Launching Daemon at Mon Jun 22 07:22:23 IST 2026
[2026-06-22 07:22:23,739.739 INFO    ] ================================================
[2026-06-22 07:22:24,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:22:24
[2026-06-22 07:22:24,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:22:25,176.176 INFO    ] Initializing speech engine...
[2026-06-22 07:22:25,185.185 INFO    ] 2026-06-22 07:22:25
[2026-06-22 07:22:25,444.444 INFO    ] 2026-06-22 07:22:25
[2026-06-22 07:22:25,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:22:25,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:22:25,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:22:25,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:22:25,868.868 INFO    ] time= 22/06/2026 07:22:25
[2026-06-22 07:22:25,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:22:25,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:22:26,047.047 INFO    ] No existing commands found in stream
[2026-06-22 07:22:31,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:22:31,062.062 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-22 07:22:32,308.308 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:22:32,311.311 INFO    ] Checking for system updates...
[2026-06-22 07:22:32,356.356 INFO    ] 200
[2026-06-22 07:22:32,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:22:32,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:22:32,429.429 INFO    ] No update needed
[2026-06-22 07:22:32,431.431 INFO    ] Checking for camera pi updates...
[2026-06-22 07:22:32,473.473 INFO    ] 200
[2026-06-22 07:22:32,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:22:32,525.525 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:22:32,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:22:32,583.583 INFO    ] No camera update needed
[2026-06-22 07:22:32,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:22:32,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:22:32,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:22:32,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:22:34,645.645 INFO    ] ================================================
[2026-06-22 07:22:34,660.660 INFO    ] Launching Daemon at Mon Jun 22 07:22:34 IST 2026
[2026-06-22 07:22:34,671.671 INFO    ] ================================================
[2026-06-22 07:22:35,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:22:35
[2026-06-22 07:22:35,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:22:36,076.076 INFO    ] Initializing speech engine...
[2026-06-22 07:22:36,084.084 INFO    ] 2026-06-22 07:22:36
[2026-06-22 07:22:36,358.358 INFO    ] 2026-06-22 07:22:36
[2026-06-22 07:22:36,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:22:36,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:22:36,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:22:36,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:22:36,802.802 INFO    ] time= 22/06/2026 07:22:36
[2026-06-22 07:22:36,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:22:36,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:22:36,971.971 INFO    ] No existing commands found in stream
[2026-06-22 07:22:41,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:22:41,986.986 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-22 07:22:42,940.940 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:22:42,943.943 INFO    ] Checking for system updates...
[2026-06-22 07:22:42,984.984 INFO    ] 200
[2026-06-22 07:22:42,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:22:43,040.040 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:22:43,042.042 INFO    ] No update needed
[2026-06-22 07:22:43,044.044 INFO    ] Checking for camera pi updates...
[2026-06-22 07:22:43,078.078 INFO    ] 200
[2026-06-22 07:22:43,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:22:43,121.121 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:22:43,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:22:43,213.213 INFO    ] No camera update needed
[2026-06-22 07:22:43,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:22:43,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:22:43,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:22:43,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:22:45,271.271 INFO    ] ================================================
[2026-06-22 07:22:45,286.286 INFO    ] Launching Daemon at Mon Jun 22 07:22:45 IST 2026
[2026-06-22 07:22:45,297.297 INFO    ] ================================================
[2026-06-22 07:22:45,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:22:45
[2026-06-22 07:22:46,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:22:46,807.807 INFO    ] Initializing speech engine...
[2026-06-22 07:22:46,814.814 INFO    ] 2026-06-22 07:22:46
[2026-06-22 07:22:47,062.062 INFO    ] 2026-06-22 07:22:47
[2026-06-22 07:22:47,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:22:47,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:22:47,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:22:47,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:22:47,448.448 INFO    ] time= 22/06/2026 07:22:47
[2026-06-22 07:22:47,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:22:47,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:22:47,585.585 INFO    ] No existing commands found in stream
[2026-06-22 07:22:52,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:22:52,613.613 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-22 07:22:55,752.752 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:22:55,755.755 INFO    ] Checking for system updates...
[2026-06-22 07:22:55,791.791 INFO    ] 200
[2026-06-22 07:22:55,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:22:55,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:22:55,849.849 INFO    ] No update needed
[2026-06-22 07:22:55,851.851 INFO    ] Checking for camera pi updates...
[2026-06-22 07:22:55,886.886 INFO    ] 200
[2026-06-22 07:22:55,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:22:55,935.935 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:22:56,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:22:56,021.021 INFO    ] No camera update needed
[2026-06-22 07:22:56,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:22:56,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:22:56,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:22:56,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:22:58,076.076 INFO    ] ================================================
[2026-06-22 07:22:58,091.091 INFO    ] Launching Daemon at Mon Jun 22 07:22:58 IST 2026
[2026-06-22 07:22:58,101.101 INFO    ] ================================================
[2026-06-22 07:22:58,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:22:58
[2026-06-22 07:22:59,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:22:59,459.459 INFO    ] Initializing speech engine...
[2026-06-22 07:22:59,476.476 INFO    ] 2026-06-22 07:22:59
[2026-06-22 07:22:59,732.732 INFO    ] 2026-06-22 07:22:59
[2026-06-22 07:22:59,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:22:59,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:23:00,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:23:00,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:23:00,209.209 INFO    ] time= 22/06/2026 07:23:00
[2026-06-22 07:23:00,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:23:00,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:23:00,350.350 INFO    ] No existing commands found in stream
[2026-06-22 07:23:05,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:23:05,365.365 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-22 07:23:08,760.760 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:23:08,763.763 INFO    ] Checking for system updates...
[2026-06-22 07:23:08,800.800 INFO    ] 200
[2026-06-22 07:23:08,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:23:08,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:23:08,865.865 INFO    ] No update needed
[2026-06-22 07:23:08,868.868 INFO    ] Checking for camera pi updates...
[2026-06-22 07:23:08,902.902 INFO    ] 200
[2026-06-22 07:23:08,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:23:08,946.946 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:23:09,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:23:09,049.049 INFO    ] No camera update needed
[2026-06-22 07:23:09,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:23:09,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:23:09,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:23:09,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:23:11,111.111 INFO    ] ================================================
[2026-06-22 07:23:11,127.127 INFO    ] Launching Daemon at Mon Jun 22 07:23:11 IST 2026
[2026-06-22 07:23:11,138.138 INFO    ] ================================================
[2026-06-22 07:23:11,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:23:11
[2026-06-22 07:23:12,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:23:12,597.597 INFO    ] Initializing speech engine...
[2026-06-22 07:23:12,607.607 INFO    ] 2026-06-22 07:23:12
[2026-06-22 07:23:12,856.856 INFO    ] 2026-06-22 07:23:12
[2026-06-22 07:23:12,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:23:13,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:23:13,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:23:13,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:23:13,328.328 INFO    ] time= 22/06/2026 07:23:13
[2026-06-22 07:23:13,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:23:13,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:23:13,472.472 INFO    ] No existing commands found in stream
[2026-06-22 07:23:18,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:23:18,487.487 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-22 07:23:19,474.474 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:23:19,475.475 INFO    ] Checking for system updates...
[2026-06-22 07:23:19,496.496 INFO    ] 200
[2026-06-22 07:23:19,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:23:19,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:23:19,533.533 INFO    ] No update needed
[2026-06-22 07:23:19,535.535 INFO    ] Checking for camera pi updates...
[2026-06-22 07:23:19,554.554 INFO    ] 200
[2026-06-22 07:23:19,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:23:19,584.584 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:23:19,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:23:19,671.671 INFO    ] No camera update needed
[2026-06-22 07:23:19,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:23:19,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:23:19,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:23:19,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:23:21,731.731 INFO    ] ================================================
[2026-06-22 07:23:21,746.746 INFO    ] Launching Daemon at Mon Jun 22 07:23:21 IST 2026
[2026-06-22 07:23:21,757.757 INFO    ] ================================================
[2026-06-22 07:23:22,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:23:22
[2026-06-22 07:23:23,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:23:23,454.454 INFO    ] Initializing speech engine...
[2026-06-22 07:23:23,461.461 INFO    ] 2026-06-22 07:23:23
[2026-06-22 07:23:23,767.767 INFO    ] 2026-06-22 07:23:23
[2026-06-22 07:23:23,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:23:24,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:23:24,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:23:24,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:23:24,277.277 INFO    ] time= 22/06/2026 07:23:24
[2026-06-22 07:23:24,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:23:24,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:23:24,428.428 INFO    ] No existing commands found in stream
[2026-06-22 07:23:29,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:23:29,454.454 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-22 07:23:29,876.876 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:23:29,878.878 INFO    ] Checking for system updates...
[2026-06-22 07:23:29,900.900 INFO    ] 200
[2026-06-22 07:23:29,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:23:29,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:23:29,933.933 INFO    ] No update needed
[2026-06-22 07:23:29,935.935 INFO    ] Checking for camera pi updates...
[2026-06-22 07:23:29,956.956 INFO    ] 200
[2026-06-22 07:23:29,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:23:29,994.994 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:23:30,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:23:30,093.093 INFO    ] No camera update needed
[2026-06-22 07:23:30,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:23:30,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:23:30,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:23:30,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:23:32,150.150 INFO    ] ================================================
[2026-06-22 07:23:32,167.167 INFO    ] Launching Daemon at Mon Jun 22 07:23:32 IST 2026
[2026-06-22 07:23:32,179.179 INFO    ] ================================================
[2026-06-22 07:23:32,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:23:32
[2026-06-22 07:23:33,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:23:33,679.679 INFO    ] Initializing speech engine...
[2026-06-22 07:23:33,688.688 INFO    ] 2026-06-22 07:23:33
[2026-06-22 07:23:33,937.937 INFO    ] 2026-06-22 07:23:33
[2026-06-22 07:23:33,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:23:34,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:23:34,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:23:34,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:23:34,414.414 INFO    ] time= 22/06/2026 07:23:34
[2026-06-22 07:23:34,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:23:34,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:23:34,556.556 INFO    ] No existing commands found in stream
[2026-06-22 07:23:39,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:23:39,571.571 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-22 07:23:42,974.974 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:23:42,975.975 INFO    ] Checking for system updates...
[2026-06-22 07:23:43,008.008 INFO    ] 200
[2026-06-22 07:23:43,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:23:43,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:23:43,066.066 INFO    ] No update needed
[2026-06-22 07:23:43,069.069 INFO    ] Checking for camera pi updates...
[2026-06-22 07:23:43,106.106 INFO    ] 200
[2026-06-22 07:23:43,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:23:43,149.149 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:23:43,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:23:43,329.329 INFO    ] No camera update needed
[2026-06-22 07:23:43,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:23:43,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:23:43,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:23:43,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:23:45,386.386 INFO    ] ================================================
[2026-06-22 07:23:45,402.402 INFO    ] Launching Daemon at Mon Jun 22 07:23:45 IST 2026
[2026-06-22 07:23:45,412.412 INFO    ] ================================================
[2026-06-22 07:23:45,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:23:45
[2026-06-22 07:23:46,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:23:46,731.731 INFO    ] Initializing speech engine...
[2026-06-22 07:23:46,737.737 INFO    ] 2026-06-22 07:23:46
[2026-06-22 07:23:47,034.034 INFO    ] 2026-06-22 07:23:46
[2026-06-22 07:23:47,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:23:47,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:23:47,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:23:47,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:23:47,391.391 INFO    ] time= 22/06/2026 07:23:47
[2026-06-22 07:23:47,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:23:47,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:23:47,473.473 INFO    ] No existing commands found in stream
[2026-06-22 07:23:52,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:23:52,488.488 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-22 07:23:55,553.553 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:23:55,556.556 INFO    ] Checking for system updates...
[2026-06-22 07:23:55,597.597 INFO    ] 200
[2026-06-22 07:23:55,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:23:55,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:23:55,663.663 INFO    ] No update needed
[2026-06-22 07:23:55,665.665 INFO    ] Checking for camera pi updates...
[2026-06-22 07:23:55,703.703 INFO    ] 200
[2026-06-22 07:23:55,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:23:55,748.748 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:23:55,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:23:55,854.854 INFO    ] No camera update needed
[2026-06-22 07:23:55,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:23:55,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:23:55,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:23:55,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:23:57,909.909 INFO    ] ================================================
[2026-06-22 07:23:57,924.924 INFO    ] Launching Daemon at Mon Jun 22 07:23:57 IST 2026
[2026-06-22 07:23:57,935.935 INFO    ] ================================================
[2026-06-22 07:23:58,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:23:58
[2026-06-22 07:23:59,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:23:59,358.358 INFO    ] Initializing speech engine...
[2026-06-22 07:23:59,364.364 INFO    ] 2026-06-22 07:23:59
[2026-06-22 07:23:59,665.665 INFO    ] 2026-06-22 07:23:59
[2026-06-22 07:23:59,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:23:59,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:23:59,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:24:00,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:24:00,026.026 INFO    ] time= 22/06/2026 07:24:00
[2026-06-22 07:24:00,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:24:00,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:24:00,107.107 INFO    ] No existing commands found in stream
[2026-06-22 07:24:05,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:24:05,121.121 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-22 07:24:08,273.273 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:24:08,276.276 INFO    ] Checking for system updates...
[2026-06-22 07:24:08,315.315 INFO    ] 200
[2026-06-22 07:24:08,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:24:08,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:24:08,374.374 INFO    ] No update needed
[2026-06-22 07:24:08,377.377 INFO    ] Checking for camera pi updates...
[2026-06-22 07:24:08,414.414 INFO    ] 200
[2026-06-22 07:24:08,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:24:08,469.469 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:24:08,561.561 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:24:08,563.563 INFO    ] No camera update needed
[2026-06-22 07:24:08,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:24:08,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:24:08,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:24:08,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:24:10,619.619 INFO    ] ================================================
[2026-06-22 07:24:10,634.634 INFO    ] Launching Daemon at Mon Jun 22 07:24:10 IST 2026
[2026-06-22 07:24:10,645.645 INFO    ] ================================================
[2026-06-22 07:24:11,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:24:11
[2026-06-22 07:24:11,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:24:12,063.063 INFO    ] Initializing speech engine...
[2026-06-22 07:24:12,078.078 INFO    ] 2026-06-22 07:24:12
[2026-06-22 07:24:12,364.364 INFO    ] 2026-06-22 07:24:12
[2026-06-22 07:24:12,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:24:12,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:24:12,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:24:12,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:24:12,778.778 INFO    ] time= 22/06/2026 07:24:12
[2026-06-22 07:24:12,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:24:12,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:24:12,870.870 INFO    ] No existing commands found in stream
[2026-06-22 07:24:17,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:24:17,899.899 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-22 07:24:19,095.095 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:24:19,097.097 INFO    ] Checking for system updates...
[2026-06-22 07:24:19,134.134 INFO    ] 200
[2026-06-22 07:24:19,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:24:19,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:24:19,191.191 INFO    ] No update needed
[2026-06-22 07:24:19,194.194 INFO    ] Checking for camera pi updates...
[2026-06-22 07:24:19,231.231 INFO    ] 200
[2026-06-22 07:24:19,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:24:19,278.278 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:24:19,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:24:19,372.372 INFO    ] No camera update needed
[2026-06-22 07:24:19,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:24:19,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:24:19,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:24:19,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:24:21,428.428 INFO    ] ================================================
[2026-06-22 07:24:21,443.443 INFO    ] Launching Daemon at Mon Jun 22 07:24:21 IST 2026
[2026-06-22 07:24:21,453.453 INFO    ] ================================================
[2026-06-22 07:24:22,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:24:22
[2026-06-22 07:24:22,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:24:22,816.816 INFO    ] Initializing speech engine...
[2026-06-22 07:24:22,827.827 INFO    ] 2026-06-22 07:24:22
[2026-06-22 07:24:23,093.093 INFO    ] 2026-06-22 07:24:23
[2026-06-22 07:24:23,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:24:24,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:24:24,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:24:24,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:24:24,685.685 INFO    ] time= 22/06/2026 07:24:24
[2026-06-22 07:24:24,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:24:24,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:24:24,748.748 INFO    ] No existing commands found in stream
[2026-06-22 07:24:29,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:24:29,761.761 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-22 07:24:32,010.010 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:24:32,013.013 INFO    ] Checking for system updates...
[2026-06-22 07:24:32,053.053 INFO    ] 200
[2026-06-22 07:24:32,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:24:32,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:24:32,122.122 INFO    ] No update needed
[2026-06-22 07:24:32,124.124 INFO    ] Checking for camera pi updates...
[2026-06-22 07:24:32,162.162 INFO    ] 200
[2026-06-22 07:24:32,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:24:32,212.212 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:24:32,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:24:32,274.274 INFO    ] No camera update needed
[2026-06-22 07:24:32,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:24:32,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:24:32,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:24:32,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:24:34,332.332 INFO    ] ================================================
[2026-06-22 07:24:34,347.347 INFO    ] Launching Daemon at Mon Jun 22 07:24:34 IST 2026
[2026-06-22 07:24:34,358.358 INFO    ] ================================================
[2026-06-22 07:24:34,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:24:34
[2026-06-22 07:24:35,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:24:35,844.844 INFO    ] Initializing speech engine...
[2026-06-22 07:24:35,857.857 INFO    ] 2026-06-22 07:24:35
[2026-06-22 07:24:36,136.136 INFO    ] 2026-06-22 07:24:36
[2026-06-22 07:24:36,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:24:36,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:24:36,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:24:36,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:24:36,681.681 INFO    ] time= 22/06/2026 07:24:36
[2026-06-22 07:24:36,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:24:36,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:24:36,812.812 INFO    ] No existing commands found in stream
[2026-06-22 07:24:41,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:24:41,846.846 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-22 07:24:45,685.685 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:24:45,688.688 INFO    ] Checking for system updates...
[2026-06-22 07:24:45,726.726 INFO    ] 200
[2026-06-22 07:24:45,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:24:45,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:24:45,790.790 INFO    ] No update needed
[2026-06-22 07:24:45,793.793 INFO    ] Checking for camera pi updates...
[2026-06-22 07:24:45,830.830 INFO    ] 200
[2026-06-22 07:24:45,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:24:45,877.877 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:24:45,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:24:45,966.966 INFO    ] No camera update needed
[2026-06-22 07:24:45,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:24:45,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:24:45,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:24:45,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:24:48,025.025 INFO    ] ================================================
[2026-06-22 07:24:48,039.039 INFO    ] Launching Daemon at Mon Jun 22 07:24:48 IST 2026
[2026-06-22 07:24:48,050.050 INFO    ] ================================================
[2026-06-22 07:24:48,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:24:48
[2026-06-22 07:24:49,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:24:49,459.459 INFO    ] Initializing speech engine...
[2026-06-22 07:24:49,472.472 INFO    ] 2026-06-22 07:24:49
[2026-06-22 07:24:49,778.778 INFO    ] 2026-06-22 07:24:49
[2026-06-22 07:24:49,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:24:50,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:24:50,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:24:50,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:24:50,283.283 INFO    ] time= 22/06/2026 07:24:50
[2026-06-22 07:24:50,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:24:50,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:24:50,434.434 INFO    ] No existing commands found in stream
[2026-06-22 07:24:55,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:24:55,452.452 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-22 07:24:56,859.859 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:24:56,862.862 INFO    ] Checking for system updates...
[2026-06-22 07:24:56,899.899 INFO    ] 200
[2026-06-22 07:24:56,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:24:56,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:24:56,965.965 INFO    ] No update needed
[2026-06-22 07:24:56,968.968 INFO    ] Checking for camera pi updates...
[2026-06-22 07:24:57,002.002 INFO    ] 200
[2026-06-22 07:24:57,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:24:57,060.060 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:24:57,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:24:57,132.132 INFO    ] No camera update needed
[2026-06-22 07:24:57,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:24:57,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:24:57,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:24:57,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:24:59,191.191 INFO    ] ================================================
[2026-06-22 07:24:59,206.206 INFO    ] Launching Daemon at Mon Jun 22 07:24:59 IST 2026
[2026-06-22 07:24:59,217.217 INFO    ] ================================================
[2026-06-22 07:24:59,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:24:59
[2026-06-22 07:25:00,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:25:00,644.644 INFO    ] Initializing speech engine...
[2026-06-22 07:25:00,655.655 INFO    ] 2026-06-22 07:25:00
[2026-06-22 07:25:00,927.927 INFO    ] 2026-06-22 07:25:00
[2026-06-22 07:25:00,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:25:01,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:25:01,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:25:01,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:25:01,299.299 INFO    ] time= 22/06/2026 07:25:01
[2026-06-22 07:25:01,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:25:01,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:25:01,399.399 INFO    ] No existing commands found in stream
[2026-06-22 07:25:06,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:25:06,410.410 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-22 07:25:10,668.668 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:25:10,671.671 INFO    ] Checking for system updates...
[2026-06-22 07:25:10,707.707 INFO    ] 200
[2026-06-22 07:25:10,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:25:10,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:25:10,764.764 INFO    ] No update needed
[2026-06-22 07:25:10,766.766 INFO    ] Checking for camera pi updates...
[2026-06-22 07:25:10,801.801 INFO    ] 200
[2026-06-22 07:25:10,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:25:10,847.847 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:25:10,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:25:10,931.931 INFO    ] No camera update needed
[2026-06-22 07:25:10,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:25:10,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:25:10,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:25:10,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:25:12,989.989 INFO    ] ================================================
[2026-06-22 07:25:13,004.004 INFO    ] Launching Daemon at Mon Jun 22 07:25:12 IST 2026
[2026-06-22 07:25:13,015.015 INFO    ] ================================================
[2026-06-22 07:25:13,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:25:13
[2026-06-22 07:25:14,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:25:14,348.348 INFO    ] Initializing speech engine...
[2026-06-22 07:25:14,356.356 INFO    ] 2026-06-22 07:25:14
[2026-06-22 07:25:14,631.631 INFO    ] 2026-06-22 07:25:14
[2026-06-22 07:25:14,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:25:14,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:25:14,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:25:14,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:25:15,005.005 INFO    ] time= 22/06/2026 07:25:14
[2026-06-22 07:25:15,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:25:15,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:25:15,087.087 INFO    ] No existing commands found in stream
[2026-06-22 07:25:20,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:25:20,102.102 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-22 07:25:21,052.052 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:25:21,054.054 INFO    ] Checking for system updates...
[2026-06-22 07:25:21,091.091 INFO    ] 200
[2026-06-22 07:25:21,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:25:21,154.154 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:25:21,157.157 INFO    ] No update needed
[2026-06-22 07:25:21,160.160 INFO    ] Checking for camera pi updates...
[2026-06-22 07:25:21,198.198 INFO    ] 200
[2026-06-22 07:25:21,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:25:21,247.247 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:25:21,328.328 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:25:21,331.331 INFO    ] No camera update needed
[2026-06-22 07:25:21,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:25:21,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:25:21,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:25:21,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:25:23,390.390 INFO    ] ================================================
[2026-06-22 07:25:23,408.408 INFO    ] Launching Daemon at Mon Jun 22 07:25:23 IST 2026
[2026-06-22 07:25:23,419.419 INFO    ] ================================================
[2026-06-22 07:25:24,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:25:24
[2026-06-22 07:25:24,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:25:24,766.766 INFO    ] Initializing speech engine...
[2026-06-22 07:25:24,788.788 INFO    ] 2026-06-22 07:25:24
[2026-06-22 07:25:25,050.050 INFO    ] 2026-06-22 07:25:25
[2026-06-22 07:25:25,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:25:25,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:25:25,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:25:25,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:25:25,501.501 INFO    ] time= 22/06/2026 07:25:25
[2026-06-22 07:25:25,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:25:25,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:25:25,664.664 INFO    ] No existing commands found in stream
[2026-06-22 07:25:30,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:25:30,679.679 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-22 07:25:34,442.442 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:25:34,445.445 INFO    ] Checking for system updates...
[2026-06-22 07:25:34,485.485 INFO    ] 200
[2026-06-22 07:25:34,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:25:34,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:25:34,543.543 INFO    ] No update needed
[2026-06-22 07:25:34,546.546 INFO    ] Checking for camera pi updates...
[2026-06-22 07:25:34,580.580 INFO    ] 200
[2026-06-22 07:25:34,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:25:34,623.623 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:25:34,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:25:34,694.694 INFO    ] No camera update needed
[2026-06-22 07:25:34,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:25:34,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:25:34,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:25:34,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:25:36,750.750 INFO    ] ================================================
[2026-06-22 07:25:36,766.766 INFO    ] Launching Daemon at Mon Jun 22 07:25:36 IST 2026
[2026-06-22 07:25:36,776.776 INFO    ] ================================================
[2026-06-22 07:25:37,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:25:37
[2026-06-22 07:25:38,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:25:38,345.345 INFO    ] Initializing speech engine...
[2026-06-22 07:25:38,354.354 INFO    ] 2026-06-22 07:25:38
[2026-06-22 07:25:38,643.643 INFO    ] 2026-06-22 07:25:38
[2026-06-22 07:25:38,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:25:38,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:25:38,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:25:39,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:25:39,103.103 INFO    ] time= 22/06/2026 07:25:39
[2026-06-22 07:25:39,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:25:39,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:25:39,254.254 INFO    ] No existing commands found in stream
[2026-06-22 07:25:44,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:25:44,270.270 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-22 07:25:46,849.849 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:25:46,852.852 INFO    ] Checking for system updates...
[2026-06-22 07:25:46,890.890 INFO    ] 200
[2026-06-22 07:25:46,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:25:46,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:25:46,951.951 INFO    ] No update needed
[2026-06-22 07:25:46,954.954 INFO    ] Checking for camera pi updates...
[2026-06-22 07:25:46,988.988 INFO    ] 200
[2026-06-22 07:25:46,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:25:47,038.038 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:25:47,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:25:47,225.225 INFO    ] No camera update needed
[2026-06-22 07:25:47,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:25:47,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:25:47,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:25:47,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:25:49,285.285 INFO    ] ================================================
[2026-06-22 07:25:49,301.301 INFO    ] Launching Daemon at Mon Jun 22 07:25:49 IST 2026
[2026-06-22 07:25:49,313.313 INFO    ] ================================================
[2026-06-22 07:25:49,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:25:49
[2026-06-22 07:25:50,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:25:50,684.684 INFO    ] Initializing speech engine...
[2026-06-22 07:25:50,693.693 INFO    ] 2026-06-22 07:25:50
[2026-06-22 07:25:50,952.952 INFO    ] 2026-06-22 07:25:50
[2026-06-22 07:25:50,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:25:51,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:25:51,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:25:51,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:25:51,386.386 INFO    ] time= 22/06/2026 07:25:51
[2026-06-22 07:25:51,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:25:51,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:25:51,570.570 INFO    ] No existing commands found in stream
[2026-06-22 07:25:56,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:25:56,586.586 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-22 07:26:00,528.528 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:26:00,530.530 INFO    ] Checking for system updates...
[2026-06-22 07:26:00,552.552 INFO    ] 200
[2026-06-22 07:26:00,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:26:00,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:26:00,587.587 INFO    ] No update needed
[2026-06-22 07:26:00,588.588 INFO    ] Checking for camera pi updates...
[2026-06-22 07:26:00,615.615 INFO    ] 200
[2026-06-22 07:26:00,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:26:00,659.659 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:26:00,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:26:00,768.768 INFO    ] No camera update needed
[2026-06-22 07:26:00,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:26:00,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:26:00,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:26:00,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:26:02,831.831 INFO    ] ================================================
[2026-06-22 07:26:02,847.847 INFO    ] Launching Daemon at Mon Jun 22 07:26:02 IST 2026
[2026-06-22 07:26:02,858.858 INFO    ] ================================================
[2026-06-22 07:26:03,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:26:03
[2026-06-22 07:26:04,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:26:04,510.510 INFO    ] Initializing speech engine...
[2026-06-22 07:26:04,519.519 INFO    ] 2026-06-22 07:26:04
[2026-06-22 07:26:04,797.797 INFO    ] 2026-06-22 07:26:04
[2026-06-22 07:26:04,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:26:05,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:26:05,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:26:05,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:26:05,518.518 INFO    ] time= 22/06/2026 07:26:05
[2026-06-22 07:26:05,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:26:05,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:26:05,725.725 INFO    ] No existing commands found in stream
[2026-06-22 07:26:10,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:26:10,755.755 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-22 07:26:12,060.060 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:26:12,063.063 INFO    ] Checking for system updates...
[2026-06-22 07:26:12,101.101 INFO    ] 200
[2026-06-22 07:26:12,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:26:12,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:26:12,160.160 INFO    ] No update needed
[2026-06-22 07:26:12,162.162 INFO    ] Checking for camera pi updates...
[2026-06-22 07:26:12,196.196 INFO    ] 200
[2026-06-22 07:26:12,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:26:12,239.239 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:26:12,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:26:12,349.349 INFO    ] No camera update needed
[2026-06-22 07:26:12,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:26:12,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:26:12,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:26:12,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:26:14,405.405 INFO    ] ================================================
[2026-06-22 07:26:14,421.421 INFO    ] Launching Daemon at Mon Jun 22 07:26:14 IST 2026
[2026-06-22 07:26:14,432.432 INFO    ] ================================================
[2026-06-22 07:26:15,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:26:14
[2026-06-22 07:26:15,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:26:15,757.757 INFO    ] Initializing speech engine...
[2026-06-22 07:26:15,772.772 INFO    ] 2026-06-22 07:26:15
[2026-06-22 07:26:16,041.041 INFO    ] 2026-06-22 07:26:16
[2026-06-22 07:26:16,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:26:16,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:26:16,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:26:16,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:26:16,383.383 INFO    ] time= 22/06/2026 07:26:16
[2026-06-22 07:26:16,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:26:16,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:26:16,497.497 INFO    ] No existing commands found in stream
[2026-06-22 07:26:21,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:26:21,512.512 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-22 07:26:24,909.909 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:26:24,912.912 INFO    ] Checking for system updates...
[2026-06-22 07:26:24,949.949 INFO    ] 200
[2026-06-22 07:26:24,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:26:25,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:26:25,007.007 INFO    ] No update needed
[2026-06-22 07:26:25,009.009 INFO    ] Checking for camera pi updates...
[2026-06-22 07:26:25,048.048 INFO    ] 200
[2026-06-22 07:26:25,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:26:25,091.091 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:26:25,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:26:25,175.175 INFO    ] No camera update needed
[2026-06-22 07:26:25,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:26:25,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:26:25,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:26:25,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:26:27,232.232 INFO    ] ================================================
[2026-06-22 07:26:27,248.248 INFO    ] Launching Daemon at Mon Jun 22 07:26:27 IST 2026
[2026-06-22 07:26:27,259.259 INFO    ] ================================================
[2026-06-22 07:26:27,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:26:27
[2026-06-22 07:26:28,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:26:28,666.666 INFO    ] Initializing speech engine...
[2026-06-22 07:26:28,682.682 INFO    ] 2026-06-22 07:26:28
[2026-06-22 07:26:28,972.972 INFO    ] 2026-06-22 07:26:28
[2026-06-22 07:26:29,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:26:29,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:26:29,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:26:29,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:26:29,362.362 INFO    ] time= 22/06/2026 07:26:29
[2026-06-22 07:26:29,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:26:29,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:26:29,489.489 INFO    ] No existing commands found in stream
[2026-06-22 07:26:34,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:26:34,504.504 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-22 07:26:36,113.113 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:26:36,116.116 INFO    ] Checking for system updates...
[2026-06-22 07:26:36,152.152 INFO    ] 200
[2026-06-22 07:26:36,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:26:36,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:26:36,211.211 INFO    ] No update needed
[2026-06-22 07:26:36,214.214 INFO    ] Checking for camera pi updates...
[2026-06-22 07:26:36,248.248 INFO    ] 200
[2026-06-22 07:26:36,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:26:36,290.290 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:26:36,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:26:36,369.369 INFO    ] No camera update needed
[2026-06-22 07:26:36,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:26:36,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:26:36,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:26:36,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:26:38,427.427 INFO    ] ================================================
[2026-06-22 07:26:38,443.443 INFO    ] Launching Daemon at Mon Jun 22 07:26:38 IST 2026
[2026-06-22 07:26:38,454.454 INFO    ] ================================================
[2026-06-22 07:26:39,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:26:39
[2026-06-22 07:26:39,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:26:39,803.803 INFO    ] Initializing speech engine...
[2026-06-22 07:26:39,810.810 INFO    ] 2026-06-22 07:26:39
[2026-06-22 07:26:40,113.113 INFO    ] 2026-06-22 07:26:40
[2026-06-22 07:26:40,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:26:40,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:26:40,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:26:40,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:26:40,507.507 INFO    ] time= 22/06/2026 07:26:40
[2026-06-22 07:26:40,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:26:40,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:26:40,634.634 INFO    ] No existing commands found in stream
[2026-06-22 07:26:45,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:26:45,651.651 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-22 07:26:48,539.539 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:26:48,541.541 INFO    ] Checking for system updates...
[2026-06-22 07:26:48,582.582 INFO    ] 200
[2026-06-22 07:26:48,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:26:48,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:26:48,640.640 INFO    ] No update needed
[2026-06-22 07:26:48,643.643 INFO    ] Checking for camera pi updates...
[2026-06-22 07:26:48,676.676 INFO    ] 200
[2026-06-22 07:26:48,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:26:48,719.719 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:26:48,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:26:48,803.803 INFO    ] No camera update needed
[2026-06-22 07:26:48,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:26:48,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:26:48,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:26:48,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:26:50,859.859 INFO    ] ================================================
[2026-06-22 07:26:50,875.875 INFO    ] Launching Daemon at Mon Jun 22 07:26:50 IST 2026
[2026-06-22 07:26:50,885.885 INFO    ] ================================================
[2026-06-22 07:26:51,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:26:51
[2026-06-22 07:26:51,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:26:52,255.255 INFO    ] Initializing speech engine...
[2026-06-22 07:26:52,266.266 INFO    ] 2026-06-22 07:26:52
[2026-06-22 07:26:52,522.522 INFO    ] 2026-06-22 07:26:52
[2026-06-22 07:26:52,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:26:54,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:26:54,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:26:54,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:26:54,394.394 INFO    ] time= 22/06/2026 07:26:54
[2026-06-22 07:26:54,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:26:54,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:26:54,492.492 INFO    ] No existing commands found in stream
[2026-06-22 07:26:59,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:26:59,508.508 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-22 07:27:01,932.932 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:27:01,935.935 INFO    ] Checking for system updates...
[2026-06-22 07:27:01,974.974 INFO    ] 200
[2026-06-22 07:27:01,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:27:02,044.044 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:27:02,047.047 INFO    ] No update needed
[2026-06-22 07:27:02,049.049 INFO    ] Checking for camera pi updates...
[2026-06-22 07:27:02,086.086 INFO    ] 200
[2026-06-22 07:27:02,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:27:02,133.133 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:27:02,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:27:02,212.212 INFO    ] No camera update needed
[2026-06-22 07:27:02,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:27:02,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:27:02,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:27:02,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:27:04,278.278 INFO    ] ================================================
[2026-06-22 07:27:04,294.294 INFO    ] Launching Daemon at Mon Jun 22 07:27:04 IST 2026
[2026-06-22 07:27:04,305.305 INFO    ] ================================================
[2026-06-22 07:27:04,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:27:04
[2026-06-22 07:27:05,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:27:05,768.768 INFO    ] Initializing speech engine...
[2026-06-22 07:27:05,789.789 INFO    ] 2026-06-22 07:27:05
[2026-06-22 07:27:06,072.072 INFO    ] 2026-06-22 07:27:06
[2026-06-22 07:27:06,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:27:06,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:27:06,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:27:06,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:27:06,458.458 INFO    ] time= 22/06/2026 07:27:06
[2026-06-22 07:27:06,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:27:06,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:27:06,558.558 INFO    ] No existing commands found in stream
[2026-06-22 07:27:11,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:27:11,597.597 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-22 07:27:13,323.323 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:27:13,325.325 INFO    ] Checking for system updates...
[2026-06-22 07:27:13,346.346 INFO    ] 200
[2026-06-22 07:27:13,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:27:13,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:27:13,403.403 INFO    ] No update needed
[2026-06-22 07:27:13,405.405 INFO    ] Checking for camera pi updates...
[2026-06-22 07:27:13,439.439 INFO    ] 200
[2026-06-22 07:27:13,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:27:13,489.489 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:27:13,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:27:13,589.589 INFO    ] No camera update needed
[2026-06-22 07:27:13,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:27:13,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:27:13,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:27:13,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:27:15,646.646 INFO    ] ================================================
[2026-06-22 07:27:15,662.662 INFO    ] Launching Daemon at Mon Jun 22 07:27:15 IST 2026
[2026-06-22 07:27:15,681.681 INFO    ] ================================================
[2026-06-22 07:27:16,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:27:16
[2026-06-22 07:27:16,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:27:17,156.156 INFO    ] Initializing speech engine...
[2026-06-22 07:27:17,164.164 INFO    ] 2026-06-22 07:27:17
[2026-06-22 07:27:17,424.424 INFO    ] 2026-06-22 07:27:17
[2026-06-22 07:27:17,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:27:17,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:27:17,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:27:17,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:27:17,890.890 INFO    ] time= 22/06/2026 07:27:17
[2026-06-22 07:27:17,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:27:17,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:27:18,033.033 INFO    ] No existing commands found in stream
[2026-06-22 07:27:23,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:27:23,048.048 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-22 07:27:26,478.478 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:27:26,481.481 INFO    ] Checking for system updates...
[2026-06-22 07:27:26,521.521 INFO    ] 200
[2026-06-22 07:27:26,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:27:26,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:27:26,587.587 INFO    ] No update needed
[2026-06-22 07:27:26,590.590 INFO    ] Checking for camera pi updates...
[2026-06-22 07:27:26,628.628 INFO    ] 200
[2026-06-22 07:27:26,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:27:26,671.671 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:27:26,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:27:26,756.756 INFO    ] No camera update needed
[2026-06-22 07:27:26,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:27:26,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:27:26,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:27:26,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:27:28,814.814 INFO    ] ================================================
[2026-06-22 07:27:28,829.829 INFO    ] Launching Daemon at Mon Jun 22 07:27:28 IST 2026
[2026-06-22 07:27:28,840.840 INFO    ] ================================================
[2026-06-22 07:27:29,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:27:29
[2026-06-22 07:27:30,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:27:30,335.335 INFO    ] Initializing speech engine...
[2026-06-22 07:27:30,345.345 INFO    ] 2026-06-22 07:27:30
[2026-06-22 07:27:30,638.638 INFO    ] 2026-06-22 07:27:30
[2026-06-22 07:27:30,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:27:30,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:27:30,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:27:31,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:27:31,129.129 INFO    ] time= 22/06/2026 07:27:31
[2026-06-22 07:27:31,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:27:31,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:27:31,311.311 INFO    ] No existing commands found in stream
[2026-06-22 07:27:36,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:27:36,338.338 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-22 07:27:38,809.809 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:27:38,811.811 INFO    ] Checking for system updates...
[2026-06-22 07:27:38,834.834 INFO    ] 200
[2026-06-22 07:27:38,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:27:38,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:27:38,867.867 INFO    ] No update needed
[2026-06-22 07:27:38,869.869 INFO    ] Checking for camera pi updates...
[2026-06-22 07:27:38,904.904 INFO    ] 200
[2026-06-22 07:27:38,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:27:38,954.954 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:27:39,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:27:39,033.033 INFO    ] No camera update needed
[2026-06-22 07:27:39,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:27:39,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:27:39,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:27:39,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:27:41,096.096 INFO    ] ================================================
[2026-06-22 07:27:41,111.111 INFO    ] Launching Daemon at Mon Jun 22 07:27:41 IST 2026
[2026-06-22 07:27:41,122.122 INFO    ] ================================================
[2026-06-22 07:27:41,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:27:41
[2026-06-22 07:27:42,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:27:42,452.452 INFO    ] Initializing speech engine...
[2026-06-22 07:27:42,470.470 INFO    ] 2026-06-22 07:27:42
[2026-06-22 07:27:42,723.723 INFO    ] 2026-06-22 07:27:42
[2026-06-22 07:27:42,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:27:42,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:27:42,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:27:43,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:27:43,099.099 INFO    ] time= 22/06/2026 07:27:43
[2026-06-22 07:27:43,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:27:43,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:27:43,265.265 INFO    ] No existing commands found in stream
[2026-06-22 07:27:48,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:27:48,293.293 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-22 07:27:51,761.761 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:27:51,762.762 INFO    ] Checking for system updates...
[2026-06-22 07:27:51,784.784 INFO    ] 200
[2026-06-22 07:27:51,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:27:51,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:27:51,837.837 INFO    ] No update needed
[2026-06-22 07:27:51,840.840 INFO    ] Checking for camera pi updates...
[2026-06-22 07:27:51,876.876 INFO    ] 200
[2026-06-22 07:27:51,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:27:51,921.921 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:27:52,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:27:52,108.108 INFO    ] No camera update needed
[2026-06-22 07:27:52,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:27:52,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:27:52,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:27:52,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:27:54,178.178 INFO    ] ================================================
[2026-06-22 07:27:54,194.194 INFO    ] Launching Daemon at Mon Jun 22 07:27:54 IST 2026
[2026-06-22 07:27:54,205.205 INFO    ] ================================================
[2026-06-22 07:27:54,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:27:54
[2026-06-22 07:27:55,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:27:55,548.548 INFO    ] Initializing speech engine...
[2026-06-22 07:27:55,554.554 INFO    ] 2026-06-22 07:27:55
[2026-06-22 07:27:55,827.827 INFO    ] 2026-06-22 07:27:55
[2026-06-22 07:27:55,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:27:56,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:27:56,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:27:56,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:27:56,172.172 INFO    ] time= 22/06/2026 07:27:56
[2026-06-22 07:27:56,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:27:56,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:27:56,287.287 INFO    ] No existing commands found in stream
[2026-06-22 07:28:01,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:28:01,305.305 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-22 07:28:04,724.724 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:28:04,727.727 INFO    ] Checking for system updates...
[2026-06-22 07:28:04,766.766 INFO    ] 200
[2026-06-22 07:28:04,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:28:04,823.823 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:28:04,825.825 INFO    ] No update needed
[2026-06-22 07:28:04,828.828 INFO    ] Checking for camera pi updates...
[2026-06-22 07:28:04,867.867 INFO    ] 200
[2026-06-22 07:28:04,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:28:04,915.915 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:28:05,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:28:05,003.003 INFO    ] No camera update needed
[2026-06-22 07:28:05,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:28:05,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:28:05,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:28:05,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:28:07,062.062 INFO    ] ================================================
[2026-06-22 07:28:07,078.078 INFO    ] Launching Daemon at Mon Jun 22 07:28:07 IST 2026
[2026-06-22 07:28:07,089.089 INFO    ] ================================================
[2026-06-22 07:28:07,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:28:07
[2026-06-22 07:28:08,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:28:08,642.642 INFO    ] Initializing speech engine...
[2026-06-22 07:28:08,649.649 INFO    ] 2026-06-22 07:28:08
[2026-06-22 07:28:08,920.920 INFO    ] 2026-06-22 07:28:08
[2026-06-22 07:28:08,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:28:09,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:28:09,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:28:09,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:28:09,409.409 INFO    ] time= 22/06/2026 07:28:09
[2026-06-22 07:28:09,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:28:09,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:28:09,549.549 INFO    ] No existing commands found in stream
[2026-06-22 07:28:14,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:28:14,564.564 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-22 07:28:18,263.263 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:28:18,266.266 INFO    ] Checking for system updates...
[2026-06-22 07:28:18,305.305 INFO    ] 200
[2026-06-22 07:28:18,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:28:18,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:28:18,367.367 INFO    ] No update needed
[2026-06-22 07:28:18,370.370 INFO    ] Checking for camera pi updates...
[2026-06-22 07:28:18,410.410 INFO    ] 200
[2026-06-22 07:28:18,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:28:18,455.455 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:28:18,554.554 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:28:18,557.557 INFO    ] No camera update needed
[2026-06-22 07:28:18,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:28:18,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:28:18,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:28:18,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:28:20,616.616 INFO    ] ================================================
[2026-06-22 07:28:20,639.639 INFO    ] Launching Daemon at Mon Jun 22 07:28:20 IST 2026
[2026-06-22 07:28:20,651.651 INFO    ] ================================================
[2026-06-22 07:28:21,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:28:21
[2026-06-22 07:28:21,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:28:22,111.111 INFO    ] Initializing speech engine...
[2026-06-22 07:28:22,121.121 INFO    ] 2026-06-22 07:28:22
[2026-06-22 07:28:22,388.388 INFO    ] 2026-06-22 07:28:22
[2026-06-22 07:28:22,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:28:24,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:28:24,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:28:24,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:28:24,643.643 INFO    ] time= 22/06/2026 07:28:24
[2026-06-22 07:28:24,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:28:24,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:28:24,765.765 INFO    ] No existing commands found in stream
[2026-06-22 07:28:29,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:28:29,780.780 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-22 07:28:32,647.647 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:28:32,651.651 INFO    ] Checking for system updates...
[2026-06-22 07:28:32,699.699 INFO    ] 200
[2026-06-22 07:28:32,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:28:32,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:28:32,777.777 INFO    ] No update needed
[2026-06-22 07:28:32,781.781 INFO    ] Checking for camera pi updates...
[2026-06-22 07:28:32,820.820 INFO    ] 200
[2026-06-22 07:28:32,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:28:32,869.869 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:28:32,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:28:32,927.927 INFO    ] No camera update needed
[2026-06-22 07:28:32,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:28:32,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:28:32,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:28:32,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:28:34,992.992 INFO    ] ================================================
[2026-06-22 07:28:35,009.009 INFO    ] Launching Daemon at Mon Jun 22 07:28:35 IST 2026
[2026-06-22 07:28:35,020.020 INFO    ] ================================================
[2026-06-22 07:28:35,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:28:35
[2026-06-22 07:28:36,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:28:36,503.503 INFO    ] Initializing speech engine...
[2026-06-22 07:28:36,519.519 INFO    ] 2026-06-22 07:28:36
[2026-06-22 07:28:36,780.780 INFO    ] 2026-06-22 07:28:36
[2026-06-22 07:28:36,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:28:37,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:28:37,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:28:37,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:28:37,298.298 INFO    ] time= 22/06/2026 07:28:37
[2026-06-22 07:28:37,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:28:37,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:28:37,500.500 INFO    ] No existing commands found in stream
[2026-06-22 07:28:42,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:28:42,538.538 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-22 07:28:43,186.186 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:28:43,190.190 INFO    ] Checking for system updates...
[2026-06-22 07:28:43,229.229 INFO    ] 200
[2026-06-22 07:28:43,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:28:43,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:28:43,300.300 INFO    ] No update needed
[2026-06-22 07:28:43,303.303 INFO    ] Checking for camera pi updates...
[2026-06-22 07:28:43,340.340 INFO    ] 200
[2026-06-22 07:28:43,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:28:43,387.387 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:28:43,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:28:43,485.485 INFO    ] No camera update needed
[2026-06-22 07:28:43,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:28:43,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:28:43,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:28:43,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:28:45,552.552 INFO    ] ================================================
[2026-06-22 07:28:45,569.569 INFO    ] Launching Daemon at Mon Jun 22 07:28:45 IST 2026
[2026-06-22 07:28:45,580.580 INFO    ] ================================================
[2026-06-22 07:28:46,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:28:46
[2026-06-22 07:28:46,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:28:47,214.214 INFO    ] Initializing speech engine...
[2026-06-22 07:28:47,223.223 INFO    ] 2026-06-22 07:28:47
[2026-06-22 07:28:47,482.482 INFO    ] 2026-06-22 07:28:47
[2026-06-22 07:28:47,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:28:47,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:28:47,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:28:47,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:28:47,863.863 INFO    ] time= 22/06/2026 07:28:47
[2026-06-22 07:28:47,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:28:47,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:28:48,050.050 INFO    ] No existing commands found in stream
[2026-06-22 07:28:53,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:28:53,081.081 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-22 07:28:54,541.541 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:28:54,544.544 INFO    ] Checking for system updates...
[2026-06-22 07:28:54,586.586 INFO    ] 200
[2026-06-22 07:28:54,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:28:54,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:28:54,653.653 INFO    ] No update needed
[2026-06-22 07:28:54,656.656 INFO    ] Checking for camera pi updates...
[2026-06-22 07:28:54,693.693 INFO    ] 200
[2026-06-22 07:28:54,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:28:54,740.740 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:28:54,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:28:54,827.827 INFO    ] No camera update needed
[2026-06-22 07:28:54,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:28:54,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:28:54,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:28:54,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:28:56,886.886 INFO    ] ================================================
[2026-06-22 07:28:56,903.903 INFO    ] Launching Daemon at Mon Jun 22 07:28:56 IST 2026
[2026-06-22 07:28:56,915.915 INFO    ] ================================================
[2026-06-22 07:28:57,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:28:57
[2026-06-22 07:28:58,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:28:58,575.575 INFO    ] Initializing speech engine...
[2026-06-22 07:28:58,589.589 INFO    ] 2026-06-22 07:28:58
[2026-06-22 07:28:58,872.872 INFO    ] 2026-06-22 07:28:58
[2026-06-22 07:28:58,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:28:59,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:28:59,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:28:59,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:28:59,292.292 INFO    ] time= 22/06/2026 07:28:59
[2026-06-22 07:28:59,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:28:59,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:28:59,397.397 INFO    ] No existing commands found in stream
[2026-06-22 07:29:04,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:29:04,430.430 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-22 07:29:04,924.924 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:29:04,927.927 INFO    ] Checking for system updates...
[2026-06-22 07:29:04,967.967 INFO    ] 200
[2026-06-22 07:29:04,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:29:05,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:29:05,029.029 INFO    ] No update needed
[2026-06-22 07:29:05,031.031 INFO    ] Checking for camera pi updates...
[2026-06-22 07:29:05,069.069 INFO    ] 200
[2026-06-22 07:29:05,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:29:05,119.119 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:29:05,205.205 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:29:05,207.207 INFO    ] No camera update needed
[2026-06-22 07:29:05,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:29:05,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:29:05,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:29:05,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:29:07,267.267 INFO    ] ================================================
[2026-06-22 07:29:07,284.284 INFO    ] Launching Daemon at Mon Jun 22 07:29:07 IST 2026
[2026-06-22 07:29:07,296.296 INFO    ] ================================================
[2026-06-22 07:29:07,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:29:07
[2026-06-22 07:29:08,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:29:08,922.922 INFO    ] Initializing speech engine...
[2026-06-22 07:29:08,935.935 INFO    ] 2026-06-22 07:29:08
[2026-06-22 07:29:09,224.224 INFO    ] 2026-06-22 07:29:09
[2026-06-22 07:29:09,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:29:09,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:29:09,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:29:09,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:29:09,762.762 INFO    ] time= 22/06/2026 07:29:09
[2026-06-22 07:29:09,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:29:09,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:29:09,923.923 INFO    ] No existing commands found in stream
[2026-06-22 07:29:14,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:29:14,943.943 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-22 07:29:17,594.594 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:29:17,597.597 INFO    ] Checking for system updates...
[2026-06-22 07:29:17,635.635 INFO    ] 200
[2026-06-22 07:29:17,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:29:17,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:29:17,698.698 INFO    ] No update needed
[2026-06-22 07:29:17,701.701 INFO    ] Checking for camera pi updates...
[2026-06-22 07:29:17,737.737 INFO    ] 200
[2026-06-22 07:29:17,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:29:17,787.787 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:29:17,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:29:17,869.869 INFO    ] No camera update needed
[2026-06-22 07:29:17,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:29:17,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:29:17,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:29:17,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:29:19,929.929 INFO    ] ================================================
[2026-06-22 07:29:19,957.957 INFO    ] Launching Daemon at Mon Jun 22 07:29:19 IST 2026
[2026-06-22 07:29:19,969.969 INFO    ] ================================================
[2026-06-22 07:29:20,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:29:20
[2026-06-22 07:29:21,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:29:21,455.455 INFO    ] Initializing speech engine...
[2026-06-22 07:29:21,472.472 INFO    ] 2026-06-22 07:29:21
[2026-06-22 07:29:21,760.760 INFO    ] 2026-06-22 07:29:21
[2026-06-22 07:29:21,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:29:21,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:29:22,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:29:22,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:29:22,128.128 INFO    ] time= 22/06/2026 07:29:22
[2026-06-22 07:29:22,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:29:22,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:29:22,242.242 INFO    ] No existing commands found in stream
[2026-06-22 07:29:27,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:29:27,258.258 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-22 07:29:31,029.029 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:29:31,032.032 INFO    ] Checking for system updates...
[2026-06-22 07:29:31,071.071 INFO    ] 200
[2026-06-22 07:29:31,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:29:31,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:29:31,134.134 INFO    ] No update needed
[2026-06-22 07:29:31,137.137 INFO    ] Checking for camera pi updates...
[2026-06-22 07:29:31,173.173 INFO    ] 200
[2026-06-22 07:29:31,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:29:31,233.233 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:29:31,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:29:31,318.318 INFO    ] No camera update needed
[2026-06-22 07:29:31,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:29:31,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:29:31,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:29:31,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:29:33,378.378 INFO    ] ================================================
[2026-06-22 07:29:33,393.393 INFO    ] Launching Daemon at Mon Jun 22 07:29:33 IST 2026
[2026-06-22 07:29:33,405.405 INFO    ] ================================================
[2026-06-22 07:29:34,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:29:33
[2026-06-22 07:29:34,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:29:34,905.905 INFO    ] Initializing speech engine...
[2026-06-22 07:29:34,912.912 INFO    ] 2026-06-22 07:29:34
[2026-06-22 07:29:35,178.178 INFO    ] 2026-06-22 07:29:35
[2026-06-22 07:29:35,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:29:35,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:29:35,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:29:35,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:29:35,564.564 INFO    ] time= 22/06/2026 07:29:35
[2026-06-22 07:29:35,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:29:35,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:29:35,677.677 INFO    ] No existing commands found in stream
[2026-06-22 07:29:40,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:29:40,695.695 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-22 07:29:42,724.724 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:29:42,726.726 INFO    ] Checking for system updates...
[2026-06-22 07:29:42,767.767 INFO    ] 200
[2026-06-22 07:29:42,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:29:42,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:29:42,827.827 INFO    ] No update needed
[2026-06-22 07:29:42,829.829 INFO    ] Checking for camera pi updates...
[2026-06-22 07:29:42,869.869 INFO    ] 200
[2026-06-22 07:29:42,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:29:42,914.914 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:29:42,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:29:42,994.994 INFO    ] No camera update needed
[2026-06-22 07:29:42,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:29:42,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:29:43,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:29:43,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:29:45,054.054 INFO    ] ================================================
[2026-06-22 07:29:45,077.077 INFO    ] Launching Daemon at Mon Jun 22 07:29:45 IST 2026
[2026-06-22 07:29:45,095.095 INFO    ] ================================================
[2026-06-22 07:29:45,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:29:45
[2026-06-22 07:29:46,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:29:46,647.647 INFO    ] Initializing speech engine...
[2026-06-22 07:29:46,660.660 INFO    ] 2026-06-22 07:29:46
[2026-06-22 07:29:46,937.937 INFO    ] 2026-06-22 07:29:46
[2026-06-22 07:29:46,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:29:47,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:29:47,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:29:47,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:29:47,328.328 INFO    ] time= 22/06/2026 07:29:47
[2026-06-22 07:29:47,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:29:47,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:29:47,413.413 INFO    ] No existing commands found in stream
[2026-06-22 07:29:52,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:29:52,429.429 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-22 07:29:56,219.219 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:29:56,222.222 INFO    ] Checking for system updates...
[2026-06-22 07:29:56,259.259 INFO    ] 200
[2026-06-22 07:29:56,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:29:56,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:29:56,330.330 INFO    ] No update needed
[2026-06-22 07:29:56,333.333 INFO    ] Checking for camera pi updates...
[2026-06-22 07:29:56,367.367 INFO    ] 200
[2026-06-22 07:29:56,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:29:56,413.413 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:29:56,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:29:56,589.589 INFO    ] No camera update needed
[2026-06-22 07:29:56,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:29:56,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:29:56,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:29:56,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:29:58,650.650 INFO    ] ================================================
[2026-06-22 07:29:58,666.666 INFO    ] Launching Daemon at Mon Jun 22 07:29:58 IST 2026
[2026-06-22 07:29:58,677.677 INFO    ] ================================================
[2026-06-22 07:29:59,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:29:59
[2026-06-22 07:29:59,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:30:00,120.120 INFO    ] Initializing speech engine...
[2026-06-22 07:30:00,127.127 INFO    ] 2026-06-22 07:30:00
[2026-06-22 07:30:00,441.441 INFO    ] 2026-06-22 07:30:00
[2026-06-22 07:30:00,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:30:00,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:30:00,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:30:00,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:30:00,844.844 INFO    ] time= 22/06/2026 07:30:00
[2026-06-22 07:30:00,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:30:00,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:30:00,974.974 INFO    ] No existing commands found in stream
[2026-06-22 07:30:05,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:30:05,989.989 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-22 07:30:10,203.203 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:30:10,206.206 INFO    ] Checking for system updates...
[2026-06-22 07:30:10,244.244 INFO    ] 200
[2026-06-22 07:30:10,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:30:10,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:30:10,304.304 INFO    ] No update needed
[2026-06-22 07:30:10,307.307 INFO    ] Checking for camera pi updates...
[2026-06-22 07:30:10,347.347 INFO    ] 200
[2026-06-22 07:30:10,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:30:10,392.392 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:30:10,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:30:10,445.445 INFO    ] No camera update needed
[2026-06-22 07:30:10,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:30:10,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:30:10,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:30:10,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:30:12,504.504 INFO    ] ================================================
[2026-06-22 07:30:12,523.523 INFO    ] Launching Daemon at Mon Jun 22 07:30:12 IST 2026
[2026-06-22 07:30:12,535.535 INFO    ] ================================================
[2026-06-22 07:30:13,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:30:13
[2026-06-22 07:30:13,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:30:13,979.979 INFO    ] Initializing speech engine...
[2026-06-22 07:30:13,996.996 INFO    ] 2026-06-22 07:30:13
[2026-06-22 07:30:14,258.258 INFO    ] 2026-06-22 07:30:14
[2026-06-22 07:30:14,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:30:14,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:30:14,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:30:14,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:30:14,642.642 INFO    ] time= 22/06/2026 07:30:14
[2026-06-22 07:30:14,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:30:14,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:30:14,805.805 INFO    ] No existing commands found in stream
[2026-06-22 07:30:19,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:30:19,839.839 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-22 07:30:23,541.541 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:30:23,544.544 INFO    ] Checking for system updates...
[2026-06-22 07:30:23,586.586 INFO    ] 200
[2026-06-22 07:30:23,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:30:23,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:30:23,647.647 INFO    ] No update needed
[2026-06-22 07:30:23,649.649 INFO    ] Checking for camera pi updates...
[2026-06-22 07:30:23,684.684 INFO    ] 200
[2026-06-22 07:30:23,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:30:23,737.737 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:30:23,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:30:23,830.830 INFO    ] No camera update needed
[2026-06-22 07:30:23,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:30:23,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:30:23,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:30:23,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:30:25,887.887 INFO    ] ================================================
[2026-06-22 07:30:25,903.903 INFO    ] Launching Daemon at Mon Jun 22 07:30:25 IST 2026
[2026-06-22 07:30:25,915.915 INFO    ] ================================================
[2026-06-22 07:30:26,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:30:26
[2026-06-22 07:30:27,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:30:27,349.349 INFO    ] Initializing speech engine...
[2026-06-22 07:30:27,368.368 INFO    ] 2026-06-22 07:30:27
[2026-06-22 07:30:27,633.633 INFO    ] 2026-06-22 07:30:27
[2026-06-22 07:30:27,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:30:27,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:30:27,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:30:28,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:30:28,017.017 INFO    ] time= 22/06/2026 07:30:28
[2026-06-22 07:30:28,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:30:28,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:30:28,194.194 INFO    ] No existing commands found in stream
[2026-06-22 07:30:33,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:30:33,228.228 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-22 07:30:34,368.368 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:30:34,370.370 INFO    ] Checking for system updates...
[2026-06-22 07:30:34,412.412 INFO    ] 200
[2026-06-22 07:30:34,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:30:34,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:30:34,473.473 INFO    ] No update needed
[2026-06-22 07:30:34,476.476 INFO    ] Checking for camera pi updates...
[2026-06-22 07:30:34,511.511 INFO    ] 200
[2026-06-22 07:30:34,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:30:34,557.557 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:30:34,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:30:34,640.640 INFO    ] No camera update needed
[2026-06-22 07:30:34,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:30:34,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:30:34,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:30:34,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:30:36,699.699 INFO    ] ================================================
[2026-06-22 07:30:36,715.715 INFO    ] Launching Daemon at Mon Jun 22 07:30:36 IST 2026
[2026-06-22 07:30:36,727.727 INFO    ] ================================================
[2026-06-22 07:30:37,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:30:37
[2026-06-22 07:30:37,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:30:38,168.168 INFO    ] Initializing speech engine...
[2026-06-22 07:30:38,192.192 INFO    ] 2026-06-22 07:30:38
[2026-06-22 07:30:38,456.456 INFO    ] 2026-06-22 07:30:38
[2026-06-22 07:30:38,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:30:38,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:30:38,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:30:38,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:30:38,843.843 INFO    ] time= 22/06/2026 07:30:38
[2026-06-22 07:30:38,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:30:38,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:30:39,020.020 INFO    ] No existing commands found in stream
[2026-06-22 07:30:44,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:30:44,053.053 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-22 07:30:45,250.250 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:30:45,253.253 INFO    ] Checking for system updates...
[2026-06-22 07:30:45,290.290 INFO    ] 200
[2026-06-22 07:30:45,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:30:45,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:30:45,367.367 INFO    ] No update needed
[2026-06-22 07:30:45,370.370 INFO    ] Checking for camera pi updates...
[2026-06-22 07:30:45,414.414 INFO    ] 200
[2026-06-22 07:30:45,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:30:45,466.466 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:30:45,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:30:45,549.549 INFO    ] No camera update needed
[2026-06-22 07:30:45,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:30:45,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:30:45,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:30:45,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:30:47,610.610 INFO    ] ================================================
[2026-06-22 07:30:47,626.626 INFO    ] Launching Daemon at Mon Jun 22 07:30:47 IST 2026
[2026-06-22 07:30:47,638.638 INFO    ] ================================================
[2026-06-22 07:30:48,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:30:48
[2026-06-22 07:30:48,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:30:49,197.197 INFO    ] Initializing speech engine...
[2026-06-22 07:30:49,206.206 INFO    ] 2026-06-22 07:30:49
[2026-06-22 07:30:49,519.519 INFO    ] 2026-06-22 07:30:49
[2026-06-22 07:30:49,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:30:49,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:30:49,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:30:49,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:30:49,902.902 INFO    ] time= 22/06/2026 07:30:49
[2026-06-22 07:30:49,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:30:49,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:30:49,987.987 INFO    ] No existing commands found in stream
[2026-06-22 07:30:54,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:30:55,000.000 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-22 07:30:59,118.118 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:30:59,120.120 INFO    ] Checking for system updates...
[2026-06-22 07:30:59,143.143 INFO    ] 200
[2026-06-22 07:30:59,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:30:59,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:30:59,198.198 INFO    ] No update needed
[2026-06-22 07:30:59,200.200 INFO    ] Checking for camera pi updates...
[2026-06-22 07:30:59,241.241 INFO    ] 200
[2026-06-22 07:30:59,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:30:59,286.286 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:30:59,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:30:59,355.355 INFO    ] No camera update needed
[2026-06-22 07:30:59,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:30:59,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:30:59,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:30:59,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:31:01,414.414 INFO    ] ================================================
[2026-06-22 07:31:01,432.432 INFO    ] Launching Daemon at Mon Jun 22 07:31:01 IST 2026
[2026-06-22 07:31:01,443.443 INFO    ] ================================================
[2026-06-22 07:31:02,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:31:02
[2026-06-22 07:31:02,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:31:03,119.119 INFO    ] Initializing speech engine...
[2026-06-22 07:31:03,128.128 INFO    ] 2026-06-22 07:31:03
[2026-06-22 07:31:03,460.460 INFO    ] 2026-06-22 07:31:03
[2026-06-22 07:31:03,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:31:03,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:31:03,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:31:03,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:31:03,917.917 INFO    ] time= 22/06/2026 07:31:03
[2026-06-22 07:31:03,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:31:04,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:31:04,099.099 INFO    ] No existing commands found in stream
[2026-06-22 07:31:09,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:31:09,114.114 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-22 07:31:10,169.169 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:31:10,172.172 INFO    ] Checking for system updates...
[2026-06-22 07:31:10,210.210 INFO    ] 200
[2026-06-22 07:31:10,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:31:10,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:31:10,273.273 INFO    ] No update needed
[2026-06-22 07:31:10,275.275 INFO    ] Checking for camera pi updates...
[2026-06-22 07:31:10,310.310 INFO    ] 200
[2026-06-22 07:31:10,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:31:10,360.360 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:31:10,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:31:10,419.419 INFO    ] No camera update needed
[2026-06-22 07:31:10,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:31:10,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:31:10,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:31:10,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:31:12,488.488 INFO    ] ================================================
[2026-06-22 07:31:12,506.506 INFO    ] Launching Daemon at Mon Jun 22 07:31:12 IST 2026
[2026-06-22 07:31:12,518.518 INFO    ] ================================================
[2026-06-22 07:31:13,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:31:13
[2026-06-22 07:31:13,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:31:14,036.036 INFO    ] Initializing speech engine...
[2026-06-22 07:31:14,046.046 INFO    ] 2026-06-22 07:31:14
[2026-06-22 07:31:14,308.308 INFO    ] 2026-06-22 07:31:14
[2026-06-22 07:31:14,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:31:14,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:31:14,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:31:14,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:31:14,800.800 INFO    ] time= 22/06/2026 07:31:14
[2026-06-22 07:31:14,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:31:14,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:31:14,990.990 INFO    ] No existing commands found in stream
[2026-06-22 07:31:20,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:31:20,017.017 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-22 07:31:21,912.912 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:31:21,915.915 INFO    ] Checking for system updates...
[2026-06-22 07:31:21,956.956 INFO    ] 200
[2026-06-22 07:31:21,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:31:22,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:31:22,024.024 INFO    ] No update needed
[2026-06-22 07:31:22,027.027 INFO    ] Checking for camera pi updates...
[2026-06-22 07:31:22,066.066 INFO    ] 200
[2026-06-22 07:31:22,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:31:22,112.112 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:31:22,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:31:22,171.171 INFO    ] No camera update needed
[2026-06-22 07:31:22,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:31:22,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:31:22,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:31:22,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:31:24,231.231 INFO    ] ================================================
[2026-06-22 07:31:24,248.248 INFO    ] Launching Daemon at Mon Jun 22 07:31:24 IST 2026
[2026-06-22 07:31:24,260.260 INFO    ] ================================================
[2026-06-22 07:31:24,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:31:24
[2026-06-22 07:31:25,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:31:25,705.705 INFO    ] Initializing speech engine...
[2026-06-22 07:31:25,715.715 INFO    ] 2026-06-22 07:31:25
[2026-06-22 07:31:26,020.020 INFO    ] 2026-06-22 07:31:25
[2026-06-22 07:31:26,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:31:26,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:31:26,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:31:27,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:31:27,166.166 INFO    ] time= 22/06/2026 07:31:27
[2026-06-22 07:31:27,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:31:27,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:31:27,304.304 INFO    ] No existing commands found in stream
[2026-06-22 07:31:32,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:31:32,333.333 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-22 07:31:34,358.358 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:31:34,360.360 INFO    ] Checking for system updates...
[2026-06-22 07:31:34,398.398 INFO    ] 200
[2026-06-22 07:31:34,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:31:34,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:31:34,463.463 INFO    ] No update needed
[2026-06-22 07:31:34,466.466 INFO    ] Checking for camera pi updates...
[2026-06-22 07:31:34,501.501 INFO    ] 200
[2026-06-22 07:31:34,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:31:34,547.547 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:31:34,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:31:34,653.653 INFO    ] No camera update needed
[2026-06-22 07:31:34,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:31:34,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:31:34,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:31:34,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:31:36,711.711 INFO    ] ================================================
[2026-06-22 07:31:36,733.733 INFO    ] Launching Daemon at Mon Jun 22 07:31:36 IST 2026
[2026-06-22 07:31:36,745.745 INFO    ] ================================================
[2026-06-22 07:31:37,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:31:37
[2026-06-22 07:31:38,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:31:38,297.297 INFO    ] Initializing speech engine...
[2026-06-22 07:31:38,307.307 INFO    ] 2026-06-22 07:31:38
[2026-06-22 07:31:38,569.569 INFO    ] 2026-06-22 07:31:38
[2026-06-22 07:31:38,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:31:38,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:31:38,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:31:38,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:31:38,929.929 INFO    ] time= 22/06/2026 07:31:38
[2026-06-22 07:31:38,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:31:38,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:31:39,009.009 INFO    ] No existing commands found in stream
[2026-06-22 07:31:44,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:31:44,024.024 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-22 07:31:45,089.089 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:31:45,092.092 INFO    ] Checking for system updates...
[2026-06-22 07:31:45,134.134 INFO    ] 200
[2026-06-22 07:31:45,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:31:45,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:31:45,194.194 INFO    ] No update needed
[2026-06-22 07:31:45,197.197 INFO    ] Checking for camera pi updates...
[2026-06-22 07:31:45,235.235 INFO    ] 200
[2026-06-22 07:31:45,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:31:45,280.280 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:31:45,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:31:45,351.351 INFO    ] No camera update needed
[2026-06-22 07:31:45,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:31:45,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:31:45,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:31:45,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:31:47,412.412 INFO    ] ================================================
[2026-06-22 07:31:47,428.428 INFO    ] Launching Daemon at Mon Jun 22 07:31:47 IST 2026
[2026-06-22 07:31:47,439.439 INFO    ] ================================================
[2026-06-22 07:31:48,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:31:48
[2026-06-22 07:31:48,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:31:48,898.898 INFO    ] Initializing speech engine...
[2026-06-22 07:31:48,907.907 INFO    ] 2026-06-22 07:31:48
[2026-06-22 07:31:49,161.161 INFO    ] 2026-06-22 07:31:49
[2026-06-22 07:31:49,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:31:49,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:31:49,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:31:49,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:31:49,536.536 INFO    ] time= 22/06/2026 07:31:49
[2026-06-22 07:31:49,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:31:49,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:31:49,621.621 INFO    ] No existing commands found in stream
[2026-06-22 07:31:54,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:31:54,639.639 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-22 07:31:57,214.214 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:31:57,217.217 INFO    ] Checking for system updates...
[2026-06-22 07:31:57,257.257 INFO    ] 200
[2026-06-22 07:31:57,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:31:57,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:31:57,322.322 INFO    ] No update needed
[2026-06-22 07:31:57,325.325 INFO    ] Checking for camera pi updates...
[2026-06-22 07:31:57,360.360 INFO    ] 200
[2026-06-22 07:31:57,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:31:57,408.408 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:31:57,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:31:57,494.494 INFO    ] No camera update needed
[2026-06-22 07:31:57,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:31:57,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:31:57,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:31:57,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:31:59,553.553 INFO    ] ================================================
[2026-06-22 07:31:59,574.574 INFO    ] Launching Daemon at Mon Jun 22 07:31:59 IST 2026
[2026-06-22 07:31:59,586.586 INFO    ] ================================================
[2026-06-22 07:32:00,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:32:00
[2026-06-22 07:32:00,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:32:01,181.181 INFO    ] Initializing speech engine...
[2026-06-22 07:32:01,193.193 INFO    ] 2026-06-22 07:32:01
[2026-06-22 07:32:01,458.458 INFO    ] 2026-06-22 07:32:01
[2026-06-22 07:32:01,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:32:01,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:32:01,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:32:01,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:32:01,864.864 INFO    ] time= 22/06/2026 07:32:01
[2026-06-22 07:32:01,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:32:01,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:32:01,963.963 INFO    ] No existing commands found in stream
[2026-06-22 07:32:06,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:32:06,980.980 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-22 07:32:08,776.776 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:32:08,778.778 INFO    ] Checking for system updates...
[2026-06-22 07:32:08,820.820 INFO    ] 200
[2026-06-22 07:32:08,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:32:08,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:32:08,887.887 INFO    ] No update needed
[2026-06-22 07:32:08,890.890 INFO    ] Checking for camera pi updates...
[2026-06-22 07:32:08,927.927 INFO    ] 200
[2026-06-22 07:32:08,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:32:08,976.976 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:32:09,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:32:09,060.060 INFO    ] No camera update needed
[2026-06-22 07:32:09,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:32:09,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:32:09,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:32:09,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:32:11,119.119 INFO    ] ================================================
[2026-06-22 07:32:11,148.148 INFO    ] Launching Daemon at Mon Jun 22 07:32:11 IST 2026
[2026-06-22 07:32:11,160.160 INFO    ] ================================================
[2026-06-22 07:32:11,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:32:11
[2026-06-22 07:32:12,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:32:12,602.602 INFO    ] Initializing speech engine...
[2026-06-22 07:32:12,625.625 INFO    ] 2026-06-22 07:32:12
[2026-06-22 07:32:12,891.891 INFO    ] 2026-06-22 07:32:12
[2026-06-22 07:32:12,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:32:13,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:32:13,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:32:13,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:32:13,268.268 INFO    ] time= 22/06/2026 07:32:13
[2026-06-22 07:32:13,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:32:13,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:32:13,445.445 INFO    ] No existing commands found in stream
[2026-06-22 07:32:18,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:32:18,473.473 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-22 07:32:22,524.524 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:32:22,526.526 INFO    ] Checking for system updates...
[2026-06-22 07:32:22,564.564 INFO    ] 200
[2026-06-22 07:32:22,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:32:22,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:32:22,633.633 INFO    ] No update needed
[2026-06-22 07:32:22,635.635 INFO    ] Checking for camera pi updates...
[2026-06-22 07:32:22,675.675 INFO    ] 200
[2026-06-22 07:32:22,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:32:22,726.726 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:32:22,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:32:22,818.818 INFO    ] No camera update needed
[2026-06-22 07:32:22,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:32:22,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:32:22,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:32:22,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:32:24,878.878 INFO    ] ================================================
[2026-06-22 07:32:24,895.895 INFO    ] Launching Daemon at Mon Jun 22 07:32:24 IST 2026
[2026-06-22 07:32:24,907.907 INFO    ] ================================================
[2026-06-22 07:32:25,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:32:25
[2026-06-22 07:32:26,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:32:26,547.547 INFO    ] Initializing speech engine...
[2026-06-22 07:32:26,556.556 INFO    ] 2026-06-22 07:32:26
[2026-06-22 07:32:26,856.856 INFO    ] 2026-06-22 07:32:26
[2026-06-22 07:32:26,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:32:27,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:32:27,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:32:27,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:32:27,369.369 INFO    ] time= 22/06/2026 07:32:27
[2026-06-22 07:32:27,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:32:27,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:32:27,570.570 INFO    ] No existing commands found in stream
[2026-06-22 07:32:32,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:32:32,587.587 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-22 07:32:34,789.789 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:32:34,792.792 INFO    ] Checking for system updates...
[2026-06-22 07:32:34,835.835 INFO    ] 200
[2026-06-22 07:32:34,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:32:34,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:32:34,895.895 INFO    ] No update needed
[2026-06-22 07:32:34,898.898 INFO    ] Checking for camera pi updates...
[2026-06-22 07:32:34,933.933 INFO    ] 200
[2026-06-22 07:32:34,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:32:34,979.979 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:32:35,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:32:35,067.067 INFO    ] No camera update needed
[2026-06-22 07:32:35,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:32:35,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:32:35,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:32:35,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:32:37,124.124 INFO    ] ================================================
[2026-06-22 07:32:37,140.140 INFO    ] Launching Daemon at Mon Jun 22 07:32:37 IST 2026
[2026-06-22 07:32:37,151.151 INFO    ] ================================================
[2026-06-22 07:32:37,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:32:37
[2026-06-22 07:32:38,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:32:38,604.604 INFO    ] Initializing speech engine...
[2026-06-22 07:32:38,621.621 INFO    ] 2026-06-22 07:32:38
[2026-06-22 07:32:38,884.884 INFO    ] 2026-06-22 07:32:38
[2026-06-22 07:32:38,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:32:39,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:32:39,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:32:39,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:32:39,249.249 INFO    ] time= 22/06/2026 07:32:39
[2026-06-22 07:32:39,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:32:39,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:32:39,352.352 INFO    ] No existing commands found in stream
[2026-06-22 07:32:44,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:32:44,370.370 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-22 07:32:47,608.608 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:32:47,610.610 INFO    ] Checking for system updates...
[2026-06-22 07:32:47,648.648 INFO    ] 200
[2026-06-22 07:32:47,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:32:47,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:32:47,713.713 INFO    ] No update needed
[2026-06-22 07:32:47,719.719 INFO    ] Checking for camera pi updates...
[2026-06-22 07:32:47,755.755 INFO    ] 200
[2026-06-22 07:32:47,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:32:47,805.805 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:32:47,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:32:47,898.898 INFO    ] No camera update needed
[2026-06-22 07:32:47,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:32:47,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:32:47,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:32:47,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:32:49,957.957 INFO    ] ================================================
[2026-06-22 07:32:49,974.974 INFO    ] Launching Daemon at Mon Jun 22 07:32:49 IST 2026
[2026-06-22 07:32:49,985.985 INFO    ] ================================================
[2026-06-22 07:32:50,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:32:50
[2026-06-22 07:32:51,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:32:51,453.453 INFO    ] Initializing speech engine...
[2026-06-22 07:32:51,473.473 INFO    ] 2026-06-22 07:32:51
[2026-06-22 07:32:51,756.756 INFO    ] 2026-06-22 07:32:51
[2026-06-22 07:32:51,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:32:52,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:32:52,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:32:52,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:32:52,135.135 INFO    ] time= 22/06/2026 07:32:52
[2026-06-22 07:32:52,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:32:52,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:32:52,220.220 INFO    ] No existing commands found in stream
[2026-06-22 07:32:57,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:32:57,233.233 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-22 07:33:01,482.482 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:33:01,488.488 INFO    ] Checking for system updates...
[2026-06-22 07:33:01,556.556 INFO    ] 200
[2026-06-22 07:33:01,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:33:01,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:33:01,651.651 INFO    ] No update needed
[2026-06-22 07:33:01,654.654 INFO    ] Checking for camera pi updates...
[2026-06-22 07:33:01,727.727 INFO    ] 200
[2026-06-22 07:33:01,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:33:01,814.814 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:33:01,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:33:01,930.930 INFO    ] No camera update needed
[2026-06-22 07:33:01,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:33:01,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:33:01,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:33:01,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:33:03,989.989 INFO    ] ================================================
[2026-06-22 07:33:04,005.005 INFO    ] Launching Daemon at Mon Jun 22 07:33:03 IST 2026
[2026-06-22 07:33:04,017.017 INFO    ] ================================================
[2026-06-22 07:33:04,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:33:04
[2026-06-22 07:33:05,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:33:05,702.702 INFO    ] Initializing speech engine...
[2026-06-22 07:33:05,715.715 INFO    ] 2026-06-22 07:33:05
[2026-06-22 07:33:06,037.037 INFO    ] 2026-06-22 07:33:06
[2026-06-22 07:33:06,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:33:06,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:33:06,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:33:06,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:33:06,559.559 INFO    ] time= 22/06/2026 07:33:06
[2026-06-22 07:33:06,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:33:06,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:33:06,714.714 INFO    ] No existing commands found in stream
[2026-06-22 07:33:11,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:33:11,735.735 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-22 07:33:15,989.989 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:33:15,992.992 INFO    ] Checking for system updates...
[2026-06-22 07:33:16,030.030 INFO    ] 200
[2026-06-22 07:33:16,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:33:16,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:33:16,089.089 INFO    ] No update needed
[2026-06-22 07:33:16,092.092 INFO    ] Checking for camera pi updates...
[2026-06-22 07:33:16,127.127 INFO    ] 200
[2026-06-22 07:33:16,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:33:16,173.173 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:33:16,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:33:16,226.226 INFO    ] No camera update needed
[2026-06-22 07:33:16,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:33:16,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:33:16,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:33:16,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:33:18,286.286 INFO    ] ================================================
[2026-06-22 07:33:18,301.301 INFO    ] Launching Daemon at Mon Jun 22 07:33:18 IST 2026
[2026-06-22 07:33:18,312.312 INFO    ] ================================================
[2026-06-22 07:33:18,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:33:18
[2026-06-22 07:33:19,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:33:19,845.845 INFO    ] Initializing speech engine...
[2026-06-22 07:33:19,853.853 INFO    ] 2026-06-22 07:33:19
[2026-06-22 07:33:20,123.123 INFO    ] 2026-06-22 07:33:20
[2026-06-22 07:33:20,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:33:20,285.285 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-22 07:33:20,451.451 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-22 07:33:20,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:33:20,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:33:20,503.503 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-22 07:33:20,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:33:22,594.594 INFO    ] ================================================
[2026-06-22 07:33:22,609.609 INFO    ] Launching Daemon at Mon Jun 22 07:33:22 IST 2026
[2026-06-22 07:33:22,620.620 INFO    ] ================================================
[2026-06-22 07:33:23,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:33:23
[2026-06-22 07:33:23,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:33:24,221.221 INFO    ] Initializing speech engine...
[2026-06-22 07:33:24,227.227 INFO    ] 2026-06-22 07:33:24
[2026-06-22 07:33:24,539.539 INFO    ] 2026-06-22 07:33:24
[2026-06-22 07:33:24,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:33:24,692.692 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-22 07:33:24,820.820 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-22 07:33:24,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:33:24,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:33:24,899.899 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-22 07:33:24,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:33:27,039.039 INFO    ] ================================================
[2026-06-22 07:33:27,054.054 INFO    ] Launching Daemon at Mon Jun 22 07:33:27 IST 2026
[2026-06-22 07:33:27,065.065 INFO    ] ================================================
[2026-06-22 07:33:27,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:33:27
[2026-06-22 07:33:28,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:33:28,497.497 INFO    ] Initializing speech engine...
[2026-06-22 07:33:28,507.507 INFO    ] 2026-06-22 07:33:28
[2026-06-22 07:33:28,758.758 INFO    ] 2026-06-22 07:33:28
[2026-06-22 07:33:28,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:33:28,908.908 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-22 07:33:29,010.010 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-22 07:33:29,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:33:29,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:33:29,110.110 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-22 07:33:29,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:33:31,185.185 INFO    ] ================================================
[2026-06-22 07:33:31,200.200 INFO    ] Launching Daemon at Mon Jun 22 07:33:31 IST 2026
[2026-06-22 07:33:31,211.211 INFO    ] ================================================
[2026-06-22 07:33:31,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:33:31
[2026-06-22 07:33:32,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:33:32,505.505 INFO    ] Initializing speech engine...
[2026-06-22 07:33:32,512.512 INFO    ] 2026-06-22 07:33:32
[2026-06-22 07:33:32,803.803 INFO    ] 2026-06-22 07:33:32
[2026-06-22 07:33:32,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:33:37,895.895 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-06-22 07:33:37,921.921 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-22 07:33:37,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:33:37,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:33:37,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:33:39,975.975 INFO    ] ================================================
[2026-06-22 07:33:39,990.990 INFO    ] Launching Daemon at Mon Jun 22 07:33:39 IST 2026
[2026-06-22 07:33:40,001.001 INFO    ] ================================================
[2026-06-22 07:33:40,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:33:40
[2026-06-22 07:33:41,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:33:41,475.475 INFO    ] Initializing speech engine...
[2026-06-22 07:33:41,480.480 INFO    ] 2026-06-22 07:33:41
[2026-06-22 07:33:41,738.738 INFO    ] 2026-06-22 07:33:41
[2026-06-22 07:33:41,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:33:41,891.891 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-22 07:33:41,994.994 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-22 07:33:42,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:33:42,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:33:42,095.095 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-22 07:33:42,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:33:44,162.162 INFO    ] ================================================
[2026-06-22 07:33:44,178.178 INFO    ] Launching Daemon at Mon Jun 22 07:33:44 IST 2026
[2026-06-22 07:33:44,188.188 INFO    ] ================================================
[2026-06-22 07:33:44,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:33:44
[2026-06-22 07:33:45,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:33:45,443.443 INFO    ] Initializing speech engine...
[2026-06-22 07:33:45,458.458 INFO    ] 2026-06-22 07:33:45
[2026-06-22 07:33:45,733.733 INFO    ] 2026-06-22 07:33:45
[2026-06-22 07:33:45,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:33:50,865.865 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-06-22 07:33:50,895.895 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-22 07:33:50,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:33:50,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:33:50,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:33:52,951.951 INFO    ] ================================================
[2026-06-22 07:33:52,966.966 INFO    ] Launching Daemon at Mon Jun 22 07:33:52 IST 2026
[2026-06-22 07:33:52,976.976 INFO    ] ================================================
[2026-06-22 07:33:53,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:33:53
[2026-06-22 07:33:54,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:33:54,401.401 INFO    ] Initializing speech engine...
[2026-06-22 07:33:54,411.411 INFO    ] 2026-06-22 07:33:54
[2026-06-22 07:33:54,664.664 INFO    ] 2026-06-22 07:33:54
[2026-06-22 07:33:54,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:33:54,753.753 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-22 07:33:54,917.917 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-22 07:33:54,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:33:55,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:33:55,022.022 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-22 07:33:55,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:33:57,089.089 INFO    ] ================================================
[2026-06-22 07:33:57,103.103 INFO    ] Launching Daemon at Mon Jun 22 07:33:57 IST 2026
[2026-06-22 07:33:57,114.114 INFO    ] ================================================
[2026-06-22 07:33:57,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:33:57
[2026-06-22 07:33:58,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:33:58,531.531 INFO    ] Initializing speech engine...
[2026-06-22 07:33:58,546.546 INFO    ] 2026-06-22 07:33:58
[2026-06-22 07:33:58,829.829 INFO    ] 2026-06-22 07:33:58
[2026-06-22 07:33:58,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:33:58,922.922 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-22 07:33:59,094.094 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-22 07:33:59,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:33:59,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:33:59,203.203 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-22 07:33:59,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:34:01,264.264 INFO    ] ================================================
[2026-06-22 07:34:01,279.279 INFO    ] Launching Daemon at Mon Jun 22 07:34:01 IST 2026
[2026-06-22 07:34:01,289.289 INFO    ] ================================================
[2026-06-22 07:34:01,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:34:01
[2026-06-22 07:34:02,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:34:02,769.769 INFO    ] Initializing speech engine...
[2026-06-22 07:34:02,776.776 INFO    ] 2026-06-22 07:34:02
[2026-06-22 07:34:03,045.045 INFO    ] 2026-06-22 07:34:03
[2026-06-22 07:34:03,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:34:08,175.175 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-06-22 07:34:08,202.202 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-22 07:34:08,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:34:08,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:34:08,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:34:10,256.256 INFO    ] ================================================
[2026-06-22 07:34:10,271.271 INFO    ] Launching Daemon at Mon Jun 22 07:34:10 IST 2026
[2026-06-22 07:34:10,282.282 INFO    ] ================================================
[2026-06-22 07:34:10,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:34:10
[2026-06-22 07:34:11,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:34:11,696.696 INFO    ] Initializing speech engine...
[2026-06-22 07:34:11,719.719 INFO    ] 2026-06-22 07:34:11
[2026-06-22 07:34:11,980.980 INFO    ] 2026-06-22 07:34:11
[2026-06-22 07:34:12,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:34:12,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:34:12,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:34:12,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:34:12,352.352 INFO    ] time= 22/06/2026 07:34:12
[2026-06-22 07:34:12,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:34:12,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:34:12,535.535 INFO    ] No existing commands found in stream
[2026-06-22 07:34:17,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:34:17,560.560 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-22 07:34:18,657.657 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:34:18,659.659 INFO    ] Checking for system updates...
[2026-06-22 07:34:18,695.695 INFO    ] 200
[2026-06-22 07:34:18,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:34:18,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:34:18,753.753 INFO    ] No update needed
[2026-06-22 07:34:18,755.755 INFO    ] Checking for camera pi updates...
[2026-06-22 07:34:18,792.792 INFO    ] 200
[2026-06-22 07:34:18,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:34:18,836.836 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:34:18,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:34:18,915.915 INFO    ] No camera update needed
[2026-06-22 07:34:18,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:34:18,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:34:18,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:34:18,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:34:20,971.971 INFO    ] ================================================
[2026-06-22 07:34:20,990.990 INFO    ] Launching Daemon at Mon Jun 22 07:34:20 IST 2026
[2026-06-22 07:34:21,007.007 INFO    ] ================================================
[2026-06-22 07:34:21,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:34:21
[2026-06-22 07:34:22,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:34:22,437.437 INFO    ] Initializing speech engine...
[2026-06-22 07:34:22,447.447 INFO    ] 2026-06-22 07:34:22
[2026-06-22 07:34:22,698.698 INFO    ] 2026-06-22 07:34:22
[2026-06-22 07:34:22,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:34:22,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:34:22,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:34:23,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:34:23,041.041 INFO    ] time= 22/06/2026 07:34:23
[2026-06-22 07:34:23,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:34:23,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:34:23,154.154 INFO    ] No existing commands found in stream
[2026-06-22 07:34:28,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:34:28,169.169 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-22 07:34:32,111.111 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:34:32,114.114 INFO    ] Checking for system updates...
[2026-06-22 07:34:32,157.157 INFO    ] 200
[2026-06-22 07:34:32,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:34:32,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:34:32,220.220 INFO    ] No update needed
[2026-06-22 07:34:32,222.222 INFO    ] Checking for camera pi updates...
[2026-06-22 07:34:32,262.262 INFO    ] 200
[2026-06-22 07:34:32,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:34:32,308.308 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:34:32,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:34:32,366.366 INFO    ] No camera update needed
[2026-06-22 07:34:32,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:34:32,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:34:32,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:34:32,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:34:34,425.425 INFO    ] ================================================
[2026-06-22 07:34:34,441.441 INFO    ] Launching Daemon at Mon Jun 22 07:34:34 IST 2026
[2026-06-22 07:34:34,451.451 INFO    ] ================================================
[2026-06-22 07:34:35,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:34:35
[2026-06-22 07:34:35,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:34:35,880.880 INFO    ] Initializing speech engine...
[2026-06-22 07:34:35,887.887 INFO    ] 2026-06-22 07:34:35
[2026-06-22 07:34:36,146.146 INFO    ] 2026-06-22 07:34:36
[2026-06-22 07:34:36,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:34:36,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:34:36,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:34:36,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:34:36,477.477 INFO    ] time= 22/06/2026 07:34:36
[2026-06-22 07:34:36,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:34:36,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:34:36,591.591 INFO    ] No existing commands found in stream
[2026-06-22 07:34:41,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:34:41,609.609 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-22 07:34:44,431.431 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:34:44,433.433 INFO    ] Checking for system updates...
[2026-06-22 07:34:44,472.472 INFO    ] 200
[2026-06-22 07:34:44,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:34:44,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:34:44,544.544 INFO    ] No update needed
[2026-06-22 07:34:44,547.547 INFO    ] Checking for camera pi updates...
[2026-06-22 07:34:44,598.598 INFO    ] 200
[2026-06-22 07:34:44,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:34:44,647.647 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:34:44,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:34:44,730.730 INFO    ] No camera update needed
[2026-06-22 07:34:44,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:34:44,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:34:44,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:34:44,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:34:46,793.793 INFO    ] ================================================
[2026-06-22 07:34:46,808.808 INFO    ] Launching Daemon at Mon Jun 22 07:34:46 IST 2026
[2026-06-22 07:34:46,820.820 INFO    ] ================================================
[2026-06-22 07:34:47,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:34:47
[2026-06-22 07:34:47,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:34:48,249.249 INFO    ] Initializing speech engine...
[2026-06-22 07:34:48,260.260 INFO    ] 2026-06-22 07:34:48
[2026-06-22 07:34:48,504.504 INFO    ] 2026-06-22 07:34:48
[2026-06-22 07:34:48,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:34:48,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:34:48,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:34:48,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:34:48,982.982 INFO    ] time= 22/06/2026 07:34:48
[2026-06-22 07:34:49,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:34:49,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:34:49,126.126 INFO    ] No existing commands found in stream
[2026-06-22 07:34:54,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:34:54,141.141 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-22 07:34:55,646.646 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:34:55,648.648 INFO    ] Checking for system updates...
[2026-06-22 07:34:55,684.684 INFO    ] 200
[2026-06-22 07:34:55,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:34:55,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:34:55,748.748 INFO    ] No update needed
[2026-06-22 07:34:55,750.750 INFO    ] Checking for camera pi updates...
[2026-06-22 07:34:55,784.784 INFO    ] 200
[2026-06-22 07:34:55,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:34:55,828.828 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:34:55,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:34:55,906.906 INFO    ] No camera update needed
[2026-06-22 07:34:55,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:34:55,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:34:55,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:34:55,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:34:57,961.961 INFO    ] ================================================
[2026-06-22 07:34:57,976.976 INFO    ] Launching Daemon at Mon Jun 22 07:34:57 IST 2026
[2026-06-22 07:34:57,987.987 INFO    ] ================================================
[2026-06-22 07:34:58,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:34:58
[2026-06-22 07:34:59,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:34:59,498.498 INFO    ] Initializing speech engine...
[2026-06-22 07:34:59,506.506 INFO    ] 2026-06-22 07:34:59
[2026-06-22 07:34:59,794.794 INFO    ] 2026-06-22 07:34:59
[2026-06-22 07:34:59,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:35:00,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:35:00,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:35:00,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:35:00,238.238 INFO    ] time= 22/06/2026 07:35:00
[2026-06-22 07:35:00,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:35:00,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:35:00,409.409 INFO    ] No existing commands found in stream
[2026-06-22 07:35:05,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:35:05,426.426 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-22 07:35:06,086.086 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:35:06,088.088 INFO    ] Checking for system updates...
[2026-06-22 07:35:06,109.109 INFO    ] 200
[2026-06-22 07:35:06,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:35:06,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:35:06,144.144 INFO    ] No update needed
[2026-06-22 07:35:06,148.148 INFO    ] Checking for camera pi updates...
[2026-06-22 07:35:06,202.202 INFO    ] 200
[2026-06-22 07:35:06,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:35:06,255.255 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:35:06,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:35:06,334.334 INFO    ] No camera update needed
[2026-06-22 07:35:06,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:35:06,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:35:06,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:35:06,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:35:08,389.389 INFO    ] ================================================
[2026-06-22 07:35:08,404.404 INFO    ] Launching Daemon at Mon Jun 22 07:35:08 IST 2026
[2026-06-22 07:35:08,415.415 INFO    ] ================================================
[2026-06-22 07:35:08,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:35:08
[2026-06-22 07:35:09,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:35:09,784.784 INFO    ] Initializing speech engine...
[2026-06-22 07:35:09,797.797 INFO    ] 2026-06-22 07:35:09
[2026-06-22 07:35:10,064.064 INFO    ] 2026-06-22 07:35:10
[2026-06-22 07:35:10,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:35:10,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:35:10,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:35:10,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:35:10,414.414 INFO    ] time= 22/06/2026 07:35:10
[2026-06-22 07:35:10,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:35:10,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:35:10,496.496 INFO    ] No existing commands found in stream
[2026-06-22 07:35:15,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:35:15,510.510 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-22 07:35:16,321.321 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:35:16,323.323 INFO    ] Checking for system updates...
[2026-06-22 07:35:16,359.359 INFO    ] 200
[2026-06-22 07:35:16,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:35:16,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:35:16,416.416 INFO    ] No update needed
[2026-06-22 07:35:16,419.419 INFO    ] Checking for camera pi updates...
[2026-06-22 07:35:16,457.457 INFO    ] 200
[2026-06-22 07:35:16,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:35:16,505.505 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:35:16,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:35:16,582.582 INFO    ] No camera update needed
[2026-06-22 07:35:16,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:35:16,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:35:16,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:35:16,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:35:18,638.638 INFO    ] ================================================
[2026-06-22 07:35:18,653.653 INFO    ] Launching Daemon at Mon Jun 22 07:35:18 IST 2026
[2026-06-22 07:35:18,664.664 INFO    ] ================================================
[2026-06-22 07:35:19,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:35:19
[2026-06-22 07:35:19,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:35:20,041.041 INFO    ] Initializing speech engine...
[2026-06-22 07:35:20,051.051 INFO    ] 2026-06-22 07:35:20
[2026-06-22 07:35:20,311.311 INFO    ] 2026-06-22 07:35:20
[2026-06-22 07:35:20,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:35:20,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:35:20,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:35:20,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:35:20,792.792 INFO    ] time= 22/06/2026 07:35:20
[2026-06-22 07:35:20,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:35:20,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:35:20,917.917 INFO    ] No existing commands found in stream
[2026-06-22 07:35:25,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:35:25,932.932 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-22 07:35:28,400.400 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:35:28,403.403 INFO    ] Checking for system updates...
[2026-06-22 07:35:28,439.439 INFO    ] 200
[2026-06-22 07:35:28,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:35:28,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:35:28,509.509 INFO    ] No update needed
[2026-06-22 07:35:28,511.511 INFO    ] Checking for camera pi updates...
[2026-06-22 07:35:28,545.545 INFO    ] 200
[2026-06-22 07:35:28,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:35:28,588.588 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:35:28,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:35:28,667.667 INFO    ] No camera update needed
[2026-06-22 07:35:28,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:35:28,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:35:28,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:35:28,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:35:30,725.725 INFO    ] ================================================
[2026-06-22 07:35:30,741.741 INFO    ] Launching Daemon at Mon Jun 22 07:35:30 IST 2026
[2026-06-22 07:35:30,751.751 INFO    ] ================================================
[2026-06-22 07:35:31,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:35:31
[2026-06-22 07:35:31,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:35:32,308.308 INFO    ] Initializing speech engine...
[2026-06-22 07:35:32,320.320 INFO    ] 2026-06-22 07:35:32
[2026-06-22 07:35:32,628.628 INFO    ] 2026-06-22 07:35:32
[2026-06-22 07:35:32,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:35:32,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:35:32,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:35:33,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:35:33,098.098 INFO    ] time= 22/06/2026 07:35:33
[2026-06-22 07:35:33,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:35:33,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:35:33,276.276 INFO    ] No existing commands found in stream
[2026-06-22 07:35:38,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:35:38,302.302 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-22 07:35:41,916.916 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:35:41,918.918 INFO    ] Checking for system updates...
[2026-06-22 07:35:41,954.954 INFO    ] 200
[2026-06-22 07:35:41,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:35:42,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:35:42,012.012 INFO    ] No update needed
[2026-06-22 07:35:42,014.014 INFO    ] Checking for camera pi updates...
[2026-06-22 07:35:42,048.048 INFO    ] 200
[2026-06-22 07:35:42,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:35:42,105.105 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:35:42,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:35:42,186.186 INFO    ] No camera update needed
[2026-06-22 07:35:42,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:35:42,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:35:42,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:35:42,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:35:44,242.242 INFO    ] ================================================
[2026-06-22 07:35:44,258.258 INFO    ] Launching Daemon at Mon Jun 22 07:35:44 IST 2026
[2026-06-22 07:35:44,269.269 INFO    ] ================================================
[2026-06-22 07:35:44,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:35:44
[2026-06-22 07:35:45,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:35:45,778.778 INFO    ] Initializing speech engine...
[2026-06-22 07:35:45,783.783 INFO    ] 2026-06-22 07:35:45
[2026-06-22 07:35:46,044.044 INFO    ] 2026-06-22 07:35:46
[2026-06-22 07:35:46,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:35:46,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:35:46,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:35:46,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:35:46,519.519 INFO    ] time= 22/06/2026 07:35:46
[2026-06-22 07:35:46,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:35:46,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:35:46,652.652 INFO    ] No existing commands found in stream
[2026-06-22 07:35:51,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:35:51,667.667 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-22 07:35:55,185.185 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:35:55,187.187 INFO    ] Checking for system updates...
[2026-06-22 07:35:55,208.208 INFO    ] 200
[2026-06-22 07:35:55,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:35:55,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:35:55,243.243 INFO    ] No update needed
[2026-06-22 07:35:55,244.244 INFO    ] Checking for camera pi updates...
[2026-06-22 07:35:55,266.266 INFO    ] 200
[2026-06-22 07:35:55,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:35:55,305.305 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:35:55,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:35:55,394.394 INFO    ] No camera update needed
[2026-06-22 07:35:55,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:35:55,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:35:55,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:35:55,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:35:57,452.452 INFO    ] ================================================
[2026-06-22 07:35:57,468.468 INFO    ] Launching Daemon at Mon Jun 22 07:35:57 IST 2026
[2026-06-22 07:35:57,479.479 INFO    ] ================================================
[2026-06-22 07:35:58,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:35:58
[2026-06-22 07:35:58,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:35:58,824.824 INFO    ] Initializing speech engine...
[2026-06-22 07:35:58,831.831 INFO    ] 2026-06-22 07:35:58
[2026-06-22 07:35:59,147.147 INFO    ] 2026-06-22 07:35:59
[2026-06-22 07:35:59,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:35:59,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:35:59,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:35:59,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:35:59,538.538 INFO    ] time= 22/06/2026 07:35:59
[2026-06-22 07:35:59,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:35:59,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:35:59,720.720 INFO    ] No existing commands found in stream
[2026-06-22 07:36:04,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:36:04,754.754 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-22 07:36:05,227.227 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:36:05,230.230 INFO    ] Checking for system updates...
[2026-06-22 07:36:05,267.267 INFO    ] 200
[2026-06-22 07:36:05,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:36:05,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:36:05,326.326 INFO    ] No update needed
[2026-06-22 07:36:05,328.328 INFO    ] Checking for camera pi updates...
[2026-06-22 07:36:05,364.364 INFO    ] 200
[2026-06-22 07:36:05,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:36:05,407.407 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:36:05,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:36:05,485.485 INFO    ] No camera update needed
[2026-06-22 07:36:05,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:36:05,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:36:05,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:36:05,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:36:07,541.541 INFO    ] ================================================
[2026-06-22 07:36:07,557.557 INFO    ] Launching Daemon at Mon Jun 22 07:36:07 IST 2026
[2026-06-22 07:36:07,568.568 INFO    ] ================================================
[2026-06-22 07:36:08,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:36:08
[2026-06-22 07:36:08,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:36:08,981.981 INFO    ] Initializing speech engine...
[2026-06-22 07:36:09,004.004 INFO    ] 2026-06-22 07:36:08
[2026-06-22 07:36:09,259.259 INFO    ] 2026-06-22 07:36:09
[2026-06-22 07:36:09,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:36:09,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:36:09,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:36:09,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:36:09,620.620 INFO    ] time= 22/06/2026 07:36:09
[2026-06-22 07:36:09,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:36:09,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:36:09,826.826 INFO    ] No existing commands found in stream
[2026-06-22 07:36:14,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:36:14,878.878 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-22 07:36:16,109.109 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:36:16,111.111 INFO    ] Checking for system updates...
[2026-06-22 07:36:16,132.132 INFO    ] 200
[2026-06-22 07:36:16,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:36:16,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:36:16,165.165 INFO    ] No update needed
[2026-06-22 07:36:16,168.168 INFO    ] Checking for camera pi updates...
[2026-06-22 07:36:16,206.206 INFO    ] 200
[2026-06-22 07:36:16,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:36:16,249.249 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:36:16,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:36:16,329.329 INFO    ] No camera update needed
[2026-06-22 07:36:16,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:36:16,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:36:16,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:36:16,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:36:18,386.386 INFO    ] ================================================
[2026-06-22 07:36:18,402.402 INFO    ] Launching Daemon at Mon Jun 22 07:36:18 IST 2026
[2026-06-22 07:36:18,413.413 INFO    ] ================================================
[2026-06-22 07:36:19,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:36:19
[2026-06-22 07:36:19,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:36:19,948.948 INFO    ] Initializing speech engine...
[2026-06-22 07:36:19,961.961 INFO    ] 2026-06-22 07:36:19
[2026-06-22 07:36:20,248.248 INFO    ] 2026-06-22 07:36:20
[2026-06-22 07:36:20,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:36:20,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:36:20,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:36:20,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:36:20,699.699 INFO    ] time= 22/06/2026 07:36:20
[2026-06-22 07:36:20,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:36:20,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:36:20,865.865 INFO    ] No existing commands found in stream
[2026-06-22 07:36:25,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:36:25,880.880 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-22 07:36:29,598.598 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:36:29,601.601 INFO    ] Checking for system updates...
[2026-06-22 07:36:29,638.638 INFO    ] 200
[2026-06-22 07:36:29,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:36:29,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:36:29,703.703 INFO    ] No update needed
[2026-06-22 07:36:29,706.706 INFO    ] Checking for camera pi updates...
[2026-06-22 07:36:29,741.741 INFO    ] 200
[2026-06-22 07:36:29,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:36:29,789.789 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:36:29,943.943 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:36:29,946.946 INFO    ] No camera update needed
[2026-06-22 07:36:29,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:36:29,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:36:29,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:36:29,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:36:32,003.003 INFO    ] ================================================
[2026-06-22 07:36:32,020.020 INFO    ] Launching Daemon at Mon Jun 22 07:36:32 IST 2026
[2026-06-22 07:36:32,032.032 INFO    ] ================================================
[2026-06-22 07:36:32,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:36:32
[2026-06-22 07:36:33,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:36:33,627.627 INFO    ] Initializing speech engine...
[2026-06-22 07:36:33,636.636 INFO    ] 2026-06-22 07:36:33
[2026-06-22 07:36:33,883.883 INFO    ] 2026-06-22 07:36:33
[2026-06-22 07:36:33,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:36:34,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:36:34,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:36:34,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:36:34,359.359 INFO    ] time= 22/06/2026 07:36:34
[2026-06-22 07:36:34,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:36:34,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:36:34,500.500 INFO    ] No existing commands found in stream
[2026-06-22 07:36:39,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:36:39,515.515 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-22 07:36:40,360.360 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:36:40,362.362 INFO    ] Checking for system updates...
[2026-06-22 07:36:40,398.398 INFO    ] 200
[2026-06-22 07:36:40,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:36:40,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:36:40,456.456 INFO    ] No update needed
[2026-06-22 07:36:40,458.458 INFO    ] Checking for camera pi updates...
[2026-06-22 07:36:40,492.492 INFO    ] 200
[2026-06-22 07:36:40,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:36:40,539.539 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:36:40,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:36:40,591.591 INFO    ] No camera update needed
[2026-06-22 07:36:40,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:36:40,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:36:40,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:36:40,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:36:42,646.646 INFO    ] ================================================
[2026-06-22 07:36:42,662.662 INFO    ] Launching Daemon at Mon Jun 22 07:36:42 IST 2026
[2026-06-22 07:36:42,672.672 INFO    ] ================================================
[2026-06-22 07:36:43,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:36:43
[2026-06-22 07:36:43,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:36:44,011.011 INFO    ] Initializing speech engine...
[2026-06-22 07:36:44,013.013 INFO    ] 2026-06-22 07:36:44
[2026-06-22 07:36:44,295.295 INFO    ] 2026-06-22 07:36:44
[2026-06-22 07:36:44,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:36:44,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:36:44,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:36:44,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:36:44,666.666 INFO    ] time= 22/06/2026 07:36:44
[2026-06-22 07:36:44,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:36:44,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:36:44,836.836 INFO    ] No existing commands found in stream
[2026-06-22 07:36:49,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:36:49,869.869 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-22 07:36:52,429.429 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:36:52,431.431 INFO    ] Checking for system updates...
[2026-06-22 07:36:52,468.468 INFO    ] 200
[2026-06-22 07:36:52,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:36:52,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:36:52,526.526 INFO    ] No update needed
[2026-06-22 07:36:52,528.528 INFO    ] Checking for camera pi updates...
[2026-06-22 07:36:52,567.567 INFO    ] 200
[2026-06-22 07:36:52,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:36:52,615.615 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:36:52,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:36:52,698.698 INFO    ] No camera update needed
[2026-06-22 07:36:52,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:36:52,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:36:52,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:36:52,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:36:54,755.755 INFO    ] ================================================
[2026-06-22 07:36:54,771.771 INFO    ] Launching Daemon at Mon Jun 22 07:36:54 IST 2026
[2026-06-22 07:36:54,782.782 INFO    ] ================================================
[2026-06-22 07:36:55,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:36:55
[2026-06-22 07:36:55,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:36:56,249.249 INFO    ] Initializing speech engine...
[2026-06-22 07:36:56,254.254 INFO    ] 2026-06-22 07:36:56
[2026-06-22 07:36:56,500.500 INFO    ] 2026-06-22 07:36:56
[2026-06-22 07:36:56,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:36:58,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:36:58,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:36:58,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:36:58,512.512 INFO    ] time= 22/06/2026 07:36:58
[2026-06-22 07:36:58,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:36:58,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:36:58,616.616 INFO    ] No existing commands found in stream
[2026-06-22 07:37:03,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:37:03,633.633 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-22 07:37:05,965.965 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:37:05,967.967 INFO    ] Checking for system updates...
[2026-06-22 07:37:06,012.012 INFO    ] 200
[2026-06-22 07:37:06,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:37:06,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:37:06,062.062 INFO    ] No update needed
[2026-06-22 07:37:06,065.065 INFO    ] Checking for camera pi updates...
[2026-06-22 07:37:06,085.085 INFO    ] 200
[2026-06-22 07:37:06,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:37:06,114.114 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:37:06,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:37:06,197.197 INFO    ] No camera update needed
[2026-06-22 07:37:06,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:37:06,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:37:06,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:37:06,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:37:08,261.261 INFO    ] ================================================
[2026-06-22 07:37:08,276.276 INFO    ] Launching Daemon at Mon Jun 22 07:37:08 IST 2026
[2026-06-22 07:37:08,286.286 INFO    ] ================================================
[2026-06-22 07:37:08,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:37:08
[2026-06-22 07:37:09,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:37:09,600.600 INFO    ] Initializing speech engine...
[2026-06-22 07:37:09,606.606 INFO    ] 2026-06-22 07:37:09
[2026-06-22 07:37:09,902.902 INFO    ] 2026-06-22 07:37:09
[2026-06-22 07:37:09,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:37:10,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:37:10,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:37:10,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:37:10,279.279 INFO    ] time= 22/06/2026 07:37:10
[2026-06-22 07:37:10,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:37:10,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:37:10,446.446 INFO    ] No existing commands found in stream
[2026-06-22 07:37:15,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:37:15,485.485 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-22 07:37:16,422.422 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:37:16,424.424 INFO    ] Checking for system updates...
[2026-06-22 07:37:16,464.464 INFO    ] 200
[2026-06-22 07:37:16,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:37:16,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:37:16,528.528 INFO    ] No update needed
[2026-06-22 07:37:16,530.530 INFO    ] Checking for camera pi updates...
[2026-06-22 07:37:16,564.564 INFO    ] 200
[2026-06-22 07:37:16,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:37:16,607.607 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:37:16,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:37:16,689.689 INFO    ] No camera update needed
[2026-06-22 07:37:16,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:37:16,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:37:16,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:37:16,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:37:18,744.744 INFO    ] ================================================
[2026-06-22 07:37:18,759.759 INFO    ] Launching Daemon at Mon Jun 22 07:37:18 IST 2026
[2026-06-22 07:37:18,770.770 INFO    ] ================================================
[2026-06-22 07:37:19,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:37:19
[2026-06-22 07:37:19,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:37:20,174.174 INFO    ] Initializing speech engine...
[2026-06-22 07:37:20,183.183 INFO    ] 2026-06-22 07:37:20
[2026-06-22 07:37:20,457.457 INFO    ] 2026-06-22 07:37:20
[2026-06-22 07:37:20,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:37:20,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:37:20,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:37:20,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:37:20,941.941 INFO    ] time= 22/06/2026 07:37:20
[2026-06-22 07:37:20,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:37:21,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:37:21,087.087 INFO    ] No existing commands found in stream
[2026-06-22 07:37:26,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:37:26,103.103 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-22 07:37:29,054.054 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:37:29,057.057 INFO    ] Checking for system updates...
[2026-06-22 07:37:29,098.098 INFO    ] 200
[2026-06-22 07:37:29,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:37:29,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:37:29,170.170 INFO    ] No update needed
[2026-06-22 07:37:29,173.173 INFO    ] Checking for camera pi updates...
[2026-06-22 07:37:29,212.212 INFO    ] 200
[2026-06-22 07:37:29,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:37:29,256.256 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:37:29,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:37:29,350.350 INFO    ] No camera update needed
[2026-06-22 07:37:29,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:37:29,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:37:29,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:37:29,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:37:31,407.407 INFO    ] ================================================
[2026-06-22 07:37:31,423.423 INFO    ] Launching Daemon at Mon Jun 22 07:37:31 IST 2026
[2026-06-22 07:37:31,435.435 INFO    ] ================================================
[2026-06-22 07:37:32,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:37:32
[2026-06-22 07:37:32,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:37:32,939.939 INFO    ] Initializing speech engine...
[2026-06-22 07:37:32,964.964 INFO    ] 2026-06-22 07:37:32
[2026-06-22 07:37:33,225.225 INFO    ] 2026-06-22 07:37:33
[2026-06-22 07:37:33,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:37:33,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:37:33,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:37:33,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:37:33,675.675 INFO    ] time= 22/06/2026 07:37:33
[2026-06-22 07:37:33,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:37:33,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:37:33,837.837 INFO    ] No existing commands found in stream
[2026-06-22 07:37:38,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:37:38,852.852 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-22 07:37:39,499.499 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:37:39,502.502 INFO    ] Checking for system updates...
[2026-06-22 07:37:39,538.538 INFO    ] 200
[2026-06-22 07:37:39,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:37:39,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:37:39,598.598 INFO    ] No update needed
[2026-06-22 07:37:39,601.601 INFO    ] Checking for camera pi updates...
[2026-06-22 07:37:39,639.639 INFO    ] 200
[2026-06-22 07:37:39,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:37:39,686.686 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:37:39,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:37:39,762.762 INFO    ] No camera update needed
[2026-06-22 07:37:39,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:37:39,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:37:39,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:37:39,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:37:41,819.819 INFO    ] ================================================
[2026-06-22 07:37:41,835.835 INFO    ] Launching Daemon at Mon Jun 22 07:37:41 IST 2026
[2026-06-22 07:37:41,845.845 INFO    ] ================================================
[2026-06-22 07:37:42,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:37:42
[2026-06-22 07:37:42,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:37:43,259.259 INFO    ] Initializing speech engine...
[2026-06-22 07:37:43,273.273 INFO    ] 2026-06-22 07:37:43
[2026-06-22 07:37:43,548.548 INFO    ] 2026-06-22 07:37:43
[2026-06-22 07:37:43,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:37:43,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:37:43,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:37:43,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:37:44,018.018 INFO    ] time= 22/06/2026 07:37:43
[2026-06-22 07:37:44,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:37:44,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:37:44,147.147 INFO    ] No existing commands found in stream
[2026-06-22 07:37:49,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:37:49,162.162 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-22 07:37:50,844.844 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:37:50,846.846 INFO    ] Checking for system updates...
[2026-06-22 07:37:50,869.869 INFO    ] 200
[2026-06-22 07:37:50,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:37:50,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:37:50,907.907 INFO    ] No update needed
[2026-06-22 07:37:50,910.910 INFO    ] Checking for camera pi updates...
[2026-06-22 07:37:50,949.949 INFO    ] 200
[2026-06-22 07:37:50,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:37:50,992.992 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:37:51,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:37:51,072.072 INFO    ] No camera update needed
[2026-06-22 07:37:51,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:37:51,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:37:51,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:37:51,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:37:53,128.128 INFO    ] ================================================
[2026-06-22 07:37:53,143.143 INFO    ] Launching Daemon at Mon Jun 22 07:37:53 IST 2026
[2026-06-22 07:37:53,153.153 INFO    ] ================================================
[2026-06-22 07:37:53,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:37:53
[2026-06-22 07:37:54,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:37:54,683.683 INFO    ] Initializing speech engine...
[2026-06-22 07:37:54,692.692 INFO    ] 2026-06-22 07:37:54
[2026-06-22 07:37:54,915.915 INFO    ] 2026-06-22 07:37:54
[2026-06-22 07:37:54,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:37:55,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:37:55,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:37:55,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:37:55,321.321 INFO    ] time= 22/06/2026 07:37:55
[2026-06-22 07:37:55,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:37:55,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:37:55,485.485 INFO    ] No existing commands found in stream
[2026-06-22 07:38:00,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:38:00,500.500 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-22 07:38:03,843.843 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:38:03,846.846 INFO    ] Checking for system updates...
[2026-06-22 07:38:03,882.882 INFO    ] 200
[2026-06-22 07:38:03,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:38:03,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:38:03,944.944 INFO    ] No update needed
[2026-06-22 07:38:03,947.947 INFO    ] Checking for camera pi updates...
[2026-06-22 07:38:03,980.980 INFO    ] 200
[2026-06-22 07:38:03,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:38:04,023.023 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:38:04,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:38:04,103.103 INFO    ] No camera update needed
[2026-06-22 07:38:04,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:38:04,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:38:04,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:38:04,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:38:06,162.162 INFO    ] ================================================
[2026-06-22 07:38:06,177.177 INFO    ] Launching Daemon at Mon Jun 22 07:38:06 IST 2026
[2026-06-22 07:38:06,188.188 INFO    ] ================================================
[2026-06-22 07:38:06,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:38:06
[2026-06-22 07:38:07,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:38:07,648.648 INFO    ] Initializing speech engine...
[2026-06-22 07:38:07,658.658 INFO    ] 2026-06-22 07:38:07
[2026-06-22 07:38:07,918.918 INFO    ] 2026-06-22 07:38:07
[2026-06-22 07:38:07,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:38:08,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:38:08,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:38:08,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:38:08,365.365 INFO    ] time= 22/06/2026 07:38:08
[2026-06-22 07:38:08,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:38:08,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:38:08,501.501 INFO    ] No existing commands found in stream
[2026-06-22 07:38:13,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:38:13,513.513 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-22 07:38:15,891.891 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:38:15,893.893 INFO    ] Checking for system updates...
[2026-06-22 07:38:15,932.932 INFO    ] 200
[2026-06-22 07:38:15,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:38:15,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:38:15,990.990 INFO    ] No update needed
[2026-06-22 07:38:15,993.993 INFO    ] Checking for camera pi updates...
[2026-06-22 07:38:16,026.026 INFO    ] 200
[2026-06-22 07:38:16,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:38:16,069.069 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:38:16,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:38:16,151.151 INFO    ] No camera update needed
[2026-06-22 07:38:16,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:38:16,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:38:16,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:38:16,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:38:18,209.209 INFO    ] ================================================
[2026-06-22 07:38:18,225.225 INFO    ] Launching Daemon at Mon Jun 22 07:38:18 IST 2026
[2026-06-22 07:38:18,236.236 INFO    ] ================================================
[2026-06-22 07:38:18,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:38:18
[2026-06-22 07:38:19,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:38:19,725.725 INFO    ] Initializing speech engine...
[2026-06-22 07:38:19,735.735 INFO    ] 2026-06-22 07:38:19
[2026-06-22 07:38:20,023.023 INFO    ] 2026-06-22 07:38:20
[2026-06-22 07:38:20,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:38:20,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:38:20,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:38:20,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:38:20,497.497 INFO    ] time= 22/06/2026 07:38:20
[2026-06-22 07:38:20,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:38:20,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:38:20,635.635 INFO    ] No existing commands found in stream
[2026-06-22 07:38:25,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:38:25,650.650 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-22 07:38:29,655.655 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:38:29,657.657 INFO    ] Checking for system updates...
[2026-06-22 07:38:29,697.697 INFO    ] 200
[2026-06-22 07:38:29,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:38:29,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:38:29,760.760 INFO    ] No update needed
[2026-06-22 07:38:29,763.763 INFO    ] Checking for camera pi updates...
[2026-06-22 07:38:29,796.796 INFO    ] 200
[2026-06-22 07:38:29,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:38:29,841.841 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:38:29,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:38:29,918.918 INFO    ] No camera update needed
[2026-06-22 07:38:29,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:38:29,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:38:29,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:38:29,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:38:31,974.974 INFO    ] ================================================
[2026-06-22 07:38:31,990.990 INFO    ] Launching Daemon at Mon Jun 22 07:38:31 IST 2026
[2026-06-22 07:38:32,002.002 INFO    ] ================================================
[2026-06-22 07:38:32,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:38:32
[2026-06-22 07:38:33,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:38:33,472.472 INFO    ] Initializing speech engine...
[2026-06-22 07:38:33,481.481 INFO    ] 2026-06-22 07:38:33
[2026-06-22 07:38:33,799.799 INFO    ] 2026-06-22 07:38:33
[2026-06-22 07:38:33,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:38:34,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:38:34,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:38:34,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:38:34,238.238 INFO    ] time= 22/06/2026 07:38:34
[2026-06-22 07:38:34,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:38:34,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:38:34,373.373 INFO    ] No existing commands found in stream
[2026-06-22 07:38:39,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:38:39,389.389 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-22 07:38:42,811.811 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:38:42,812.812 INFO    ] Checking for system updates...
[2026-06-22 07:38:42,837.837 INFO    ] 200
[2026-06-22 07:38:42,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:38:42,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:38:42,874.874 INFO    ] No update needed
[2026-06-22 07:38:42,877.877 INFO    ] Checking for camera pi updates...
[2026-06-22 07:38:42,916.916 INFO    ] 200
[2026-06-22 07:38:42,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:38:42,968.968 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:38:43,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:38:43,053.053 INFO    ] No camera update needed
[2026-06-22 07:38:43,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:38:43,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:38:43,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:38:43,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:38:45,109.109 INFO    ] ================================================
[2026-06-22 07:38:45,125.125 INFO    ] Launching Daemon at Mon Jun 22 07:38:45 IST 2026
[2026-06-22 07:38:45,136.136 INFO    ] ================================================
[2026-06-22 07:38:45,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:38:45
[2026-06-22 07:38:46,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:38:46,465.465 INFO    ] Initializing speech engine...
[2026-06-22 07:38:46,484.484 INFO    ] 2026-06-22 07:38:46
[2026-06-22 07:38:46,735.735 INFO    ] 2026-06-22 07:38:46
[2026-06-22 07:38:46,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:38:46,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:38:46,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:38:47,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:38:47,116.116 INFO    ] time= 22/06/2026 07:38:47
[2026-06-22 07:38:47,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:38:47,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:38:47,271.271 INFO    ] No existing commands found in stream
[2026-06-22 07:38:52,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:38:52,311.311 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-22 07:38:54,180.180 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:38:54,181.181 INFO    ] Checking for system updates...
[2026-06-22 07:38:54,203.203 INFO    ] 200
[2026-06-22 07:38:54,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:38:54,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:38:54,238.238 INFO    ] No update needed
[2026-06-22 07:38:54,239.239 INFO    ] Checking for camera pi updates...
[2026-06-22 07:38:54,259.259 INFO    ] 200
[2026-06-22 07:38:54,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:38:54,296.296 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:38:54,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:38:54,377.377 INFO    ] No camera update needed
[2026-06-22 07:38:54,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:38:54,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:38:54,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:38:54,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:38:56,433.433 INFO    ] ================================================
[2026-06-22 07:38:56,449.449 INFO    ] Launching Daemon at Mon Jun 22 07:38:56 IST 2026
[2026-06-22 07:38:56,459.459 INFO    ] ================================================
[2026-06-22 07:38:57,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:38:57
[2026-06-22 07:38:57,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:38:57,856.856 INFO    ] Initializing speech engine...
[2026-06-22 07:38:57,864.864 INFO    ] 2026-06-22 07:38:57
[2026-06-22 07:38:58,124.124 INFO    ] 2026-06-22 07:38:58
[2026-06-22 07:38:58,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:38:59,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:38:59,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:38:59,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:38:59,556.556 INFO    ] time= 22/06/2026 07:38:59
[2026-06-22 07:38:59,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:38:59,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:38:59,622.622 INFO    ] No existing commands found in stream
[2026-06-22 07:39:04,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:39:04,650.650 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-22 07:39:05,554.554 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:39:05,557.557 INFO    ] Checking for system updates...
[2026-06-22 07:39:05,593.593 INFO    ] 200
[2026-06-22 07:39:05,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:39:05,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:39:05,652.652 INFO    ] No update needed
[2026-06-22 07:39:05,654.654 INFO    ] Checking for camera pi updates...
[2026-06-22 07:39:05,693.693 INFO    ] 200
[2026-06-22 07:39:05,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:39:05,737.737 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:39:05,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:39:05,818.818 INFO    ] No camera update needed
[2026-06-22 07:39:05,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:39:05,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:39:05,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:39:05,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:39:07,874.874 INFO    ] ================================================
[2026-06-22 07:39:07,889.889 INFO    ] Launching Daemon at Mon Jun 22 07:39:07 IST 2026
[2026-06-22 07:39:07,900.900 INFO    ] ================================================
[2026-06-22 07:39:08,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:39:08
[2026-06-22 07:39:09,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:39:09,361.361 INFO    ] Initializing speech engine...
[2026-06-22 07:39:09,370.370 INFO    ] 2026-06-22 07:39:09
[2026-06-22 07:39:09,624.624 INFO    ] 2026-06-22 07:39:09
[2026-06-22 07:39:09,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:39:09,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:39:09,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:39:10,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:39:10,086.086 INFO    ] time= 22/06/2026 07:39:10
[2026-06-22 07:39:10,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:39:10,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:39:10,209.209 INFO    ] No existing commands found in stream
[2026-06-22 07:39:15,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:39:15,238.238 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-22 07:39:17,671.671 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:39:17,673.673 INFO    ] Checking for system updates...
[2026-06-22 07:39:17,714.714 INFO    ] 200
[2026-06-22 07:39:17,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:39:17,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:39:17,779.779 INFO    ] No update needed
[2026-06-22 07:39:17,781.781 INFO    ] Checking for camera pi updates...
[2026-06-22 07:39:17,820.820 INFO    ] 200
[2026-06-22 07:39:17,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:39:17,868.868 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:39:17,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:39:17,957.957 INFO    ] No camera update needed
[2026-06-22 07:39:17,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:39:17,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:39:17,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:39:17,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:39:20,014.014 INFO    ] ================================================
[2026-06-22 07:39:20,029.029 INFO    ] Launching Daemon at Mon Jun 22 07:39:20 IST 2026
[2026-06-22 07:39:20,040.040 INFO    ] ================================================
[2026-06-22 07:39:20,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:39:20
[2026-06-22 07:39:21,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:39:21,371.371 INFO    ] Initializing speech engine...
[2026-06-22 07:39:21,389.389 INFO    ] 2026-06-22 07:39:21
[2026-06-22 07:39:21,640.640 INFO    ] 2026-06-22 07:39:21
[2026-06-22 07:39:21,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:39:21,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:39:21,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:39:22,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:39:22,034.034 INFO    ] time= 22/06/2026 07:39:22
[2026-06-22 07:39:22,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:39:22,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:39:22,205.205 INFO    ] No existing commands found in stream
[2026-06-22 07:39:27,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:39:27,244.244 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-22 07:39:29,721.721 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:39:29,724.724 INFO    ] Checking for system updates...
[2026-06-22 07:39:29,763.763 INFO    ] 200
[2026-06-22 07:39:29,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:39:29,826.826 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:39:29,828.828 INFO    ] No update needed
[2026-06-22 07:39:29,831.831 INFO    ] Checking for camera pi updates...
[2026-06-22 07:39:29,865.865 INFO    ] 200
[2026-06-22 07:39:29,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:39:29,913.913 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:39:30,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:39:30,004.004 INFO    ] No camera update needed
[2026-06-22 07:39:30,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:39:30,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:39:30,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:39:30,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:39:32,060.060 INFO    ] ================================================
[2026-06-22 07:39:32,077.077 INFO    ] Launching Daemon at Mon Jun 22 07:39:32 IST 2026
[2026-06-22 07:39:32,088.088 INFO    ] ================================================
[2026-06-22 07:39:32,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:39:32
[2026-06-22 07:39:33,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:39:33,584.584 INFO    ] Initializing speech engine...
[2026-06-22 07:39:33,607.607 INFO    ] 2026-06-22 07:39:33
[2026-06-22 07:39:33,868.868 INFO    ] 2026-06-22 07:39:33
[2026-06-22 07:39:33,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:39:34,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:39:34,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:39:34,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:39:34,229.229 INFO    ] time= 22/06/2026 07:39:34
[2026-06-22 07:39:34,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:39:34,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:39:34,290.290 INFO    ] No existing commands found in stream
[2026-06-22 07:39:39,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:39:39,302.302 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-22 07:39:40,351.351 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:39:40,353.353 INFO    ] Checking for system updates...
[2026-06-22 07:39:40,374.374 INFO    ] 200
[2026-06-22 07:39:40,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:39:40,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:39:40,436.436 INFO    ] No update needed
[2026-06-22 07:39:40,439.439 INFO    ] Checking for camera pi updates...
[2026-06-22 07:39:40,472.472 INFO    ] 200
[2026-06-22 07:39:40,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:39:40,516.516 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:39:40,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:39:40,591.591 INFO    ] No camera update needed
[2026-06-22 07:39:40,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:39:40,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:39:40,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:39:40,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:39:42,646.646 INFO    ] ================================================
[2026-06-22 07:39:42,661.661 INFO    ] Launching Daemon at Mon Jun 22 07:39:42 IST 2026
[2026-06-22 07:39:42,672.672 INFO    ] ================================================
[2026-06-22 07:39:43,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:39:43
[2026-06-22 07:39:43,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:39:44,141.141 INFO    ] Initializing speech engine...
[2026-06-22 07:39:44,150.150 INFO    ] 2026-06-22 07:39:44
[2026-06-22 07:39:44,399.399 INFO    ] 2026-06-22 07:39:44
[2026-06-22 07:39:44,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:39:44,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:39:44,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:39:44,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:39:44,764.764 INFO    ] time= 22/06/2026 07:39:44
[2026-06-22 07:39:44,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:39:44,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:39:44,860.860 INFO    ] No existing commands found in stream
[2026-06-22 07:39:49,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:39:49,876.876 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-22 07:39:50,522.522 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:39:50,525.525 INFO    ] Checking for system updates...
[2026-06-22 07:39:50,565.565 INFO    ] 200
[2026-06-22 07:39:50,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:39:50,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:39:50,624.624 INFO    ] No update needed
[2026-06-22 07:39:50,627.627 INFO    ] Checking for camera pi updates...
[2026-06-22 07:39:50,664.664 INFO    ] 200
[2026-06-22 07:39:50,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:39:50,712.712 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:39:50,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:39:50,796.796 INFO    ] No camera update needed
[2026-06-22 07:39:50,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:39:50,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:39:50,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:39:50,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:39:52,851.851 INFO    ] ================================================
[2026-06-22 07:39:52,866.866 INFO    ] Launching Daemon at Mon Jun 22 07:39:52 IST 2026
[2026-06-22 07:39:52,877.877 INFO    ] ================================================
[2026-06-22 07:39:53,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:39:53
[2026-06-22 07:39:53,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:39:54,185.185 INFO    ] Initializing speech engine...
[2026-06-22 07:39:54,207.207 INFO    ] 2026-06-22 07:39:54
[2026-06-22 07:39:54,467.467 INFO    ] 2026-06-22 07:39:54
[2026-06-22 07:39:54,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:39:54,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:39:54,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:39:54,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:39:54,821.821 INFO    ] time= 22/06/2026 07:39:54
[2026-06-22 07:39:54,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:39:54,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:39:54,918.918 INFO    ] No existing commands found in stream
[2026-06-22 07:39:59,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:39:59,933.933 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-22 07:40:04,370.370 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:40:04,373.373 INFO    ] Checking for system updates...
[2026-06-22 07:40:04,410.410 INFO    ] 200
[2026-06-22 07:40:04,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:40:04,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:40:04,473.473 INFO    ] No update needed
[2026-06-22 07:40:04,476.476 INFO    ] Checking for camera pi updates...
[2026-06-22 07:40:04,509.509 INFO    ] 200
[2026-06-22 07:40:04,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:40:04,553.553 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:40:04,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:40:04,603.603 INFO    ] No camera update needed
[2026-06-22 07:40:04,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:40:04,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:40:04,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:40:04,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:40:06,662.662 INFO    ] ================================================
[2026-06-22 07:40:06,677.677 INFO    ] Launching Daemon at Mon Jun 22 07:40:06 IST 2026
[2026-06-22 07:40:06,689.689 INFO    ] ================================================
[2026-06-22 07:40:07,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:40:07
[2026-06-22 07:40:07,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:40:08,216.216 INFO    ] Initializing speech engine...
[2026-06-22 07:40:08,226.226 INFO    ] 2026-06-22 07:40:08
[2026-06-22 07:40:08,473.473 INFO    ] 2026-06-22 07:40:08
[2026-06-22 07:40:08,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:40:08,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:40:08,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:40:08,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:40:08,843.843 INFO    ] time= 22/06/2026 07:40:08
[2026-06-22 07:40:08,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:40:08,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:40:09,008.008 INFO    ] No existing commands found in stream
[2026-06-22 07:40:14,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:40:14,041.041 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-22 07:40:18,046.046 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:40:18,049.049 INFO    ] Checking for system updates...
[2026-06-22 07:40:18,085.085 INFO    ] 200
[2026-06-22 07:40:18,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:40:18,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:40:18,144.144 INFO    ] No update needed
[2026-06-22 07:40:18,146.146 INFO    ] Checking for camera pi updates...
[2026-06-22 07:40:18,185.185 INFO    ] 200
[2026-06-22 07:40:18,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:40:18,232.232 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:40:18,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:40:18,335.335 INFO    ] No camera update needed
[2026-06-22 07:40:18,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:40:18,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:40:18,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:40:18,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:40:20,389.389 INFO    ] ================================================
[2026-06-22 07:40:20,405.405 INFO    ] Launching Daemon at Mon Jun 22 07:40:20 IST 2026
[2026-06-22 07:40:20,417.417 INFO    ] ================================================
[2026-06-22 07:40:20,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:40:20
[2026-06-22 07:40:21,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:40:21,783.783 INFO    ] Initializing speech engine...
[2026-06-22 07:40:21,792.792 INFO    ] 2026-06-22 07:40:21
[2026-06-22 07:40:22,051.051 INFO    ] 2026-06-22 07:40:22
[2026-06-22 07:40:22,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:40:22,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:40:22,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:40:22,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:40:22,542.542 INFO    ] time= 22/06/2026 07:40:22
[2026-06-22 07:40:22,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:40:22,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:40:22,676.676 INFO    ] No existing commands found in stream
[2026-06-22 07:40:27,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:40:27,693.693 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-22 07:40:32,683.683 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:40:32,686.686 INFO    ] Checking for system updates...
[2026-06-22 07:40:32,734.734 INFO    ] 200
[2026-06-22 07:40:32,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:40:32,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:40:32,797.797 INFO    ] No update needed
[2026-06-22 07:40:32,800.800 INFO    ] Checking for camera pi updates...
[2026-06-22 07:40:32,845.845 INFO    ] 200
[2026-06-22 07:40:32,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:40:32,904.904 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:40:32,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:40:32,963.963 INFO    ] No camera update needed
[2026-06-22 07:40:32,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:40:32,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:40:32,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:40:32,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:40:35,022.022 INFO    ] ================================================
[2026-06-22 07:40:35,038.038 INFO    ] Launching Daemon at Mon Jun 22 07:40:35 IST 2026
[2026-06-22 07:40:35,049.049 INFO    ] ================================================
[2026-06-22 07:40:35,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:40:35
[2026-06-22 07:40:36,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:40:36,687.687 INFO    ] Initializing speech engine...
[2026-06-22 07:40:36,694.694 INFO    ] 2026-06-22 07:40:36
[2026-06-22 07:40:36,970.970 INFO    ] 2026-06-22 07:40:36
[2026-06-22 07:40:37,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:40:37,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:40:37,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:40:37,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:40:37,429.429 INFO    ] time= 22/06/2026 07:40:37
[2026-06-22 07:40:37,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:40:37,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:40:37,583.583 INFO    ] No existing commands found in stream
[2026-06-22 07:40:42,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:40:42,602.602 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-22 07:40:45,406.406 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:40:45,409.409 INFO    ] Checking for system updates...
[2026-06-22 07:40:45,447.447 INFO    ] 200
[2026-06-22 07:40:45,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:40:45,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:40:45,508.508 INFO    ] No update needed
[2026-06-22 07:40:45,511.511 INFO    ] Checking for camera pi updates...
[2026-06-22 07:40:45,550.550 INFO    ] 200
[2026-06-22 07:40:45,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:40:45,600.600 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:40:45,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:40:45,792.792 INFO    ] No camera update needed
[2026-06-22 07:40:45,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:40:45,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:40:45,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:40:45,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:40:47,855.855 INFO    ] ================================================
[2026-06-22 07:40:47,871.871 INFO    ] Launching Daemon at Mon Jun 22 07:40:47 IST 2026
[2026-06-22 07:40:47,882.882 INFO    ] ================================================
[2026-06-22 07:40:48,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:40:48
[2026-06-22 07:40:48,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:40:49,268.268 INFO    ] Initializing speech engine...
[2026-06-22 07:40:49,281.281 INFO    ] 2026-06-22 07:40:49
[2026-06-22 07:40:49,532.532 INFO    ] 2026-06-22 07:40:49
[2026-06-22 07:40:49,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:40:49,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:40:49,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:40:49,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:40:49,868.868 INFO    ] time= 22/06/2026 07:40:49
[2026-06-22 07:40:49,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:40:49,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:40:49,982.982 INFO    ] No existing commands found in stream
[2026-06-22 07:40:54,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:40:54,998.998 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-22 07:40:56,076.076 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:40:56,079.079 INFO    ] Checking for system updates...
[2026-06-22 07:40:56,120.120 INFO    ] 200
[2026-06-22 07:40:56,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:40:56,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:40:56,179.179 INFO    ] No update needed
[2026-06-22 07:40:56,181.181 INFO    ] Checking for camera pi updates...
[2026-06-22 07:40:56,219.219 INFO    ] 200
[2026-06-22 07:40:56,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:40:56,273.273 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:40:56,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:40:56,362.362 INFO    ] No camera update needed
[2026-06-22 07:40:56,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:40:56,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:40:56,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:40:56,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:40:58,420.420 INFO    ] ================================================
[2026-06-22 07:40:58,436.436 INFO    ] Launching Daemon at Mon Jun 22 07:40:58 IST 2026
[2026-06-22 07:40:58,447.447 INFO    ] ================================================
[2026-06-22 07:40:59,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:40:59
[2026-06-22 07:40:59,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:40:59,941.941 INFO    ] Initializing speech engine...
[2026-06-22 07:40:59,955.955 INFO    ] 2026-06-22 07:40:59
[2026-06-22 07:41:00,260.260 INFO    ] 2026-06-22 07:41:00
[2026-06-22 07:41:00,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:41:02,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:41:02,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:41:02,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:41:02,957.957 INFO    ] time= 22/06/2026 07:41:02
[2026-06-22 07:41:03,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:41:03,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:41:03,086.086 INFO    ] No existing commands found in stream
[2026-06-22 07:41:08,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:41:08,100.100 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-22 07:41:11,090.090 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:41:11,091.091 INFO    ] Checking for system updates...
[2026-06-22 07:41:11,112.112 INFO    ] 200
[2026-06-22 07:41:11,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:41:11,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:41:11,146.146 INFO    ] No update needed
[2026-06-22 07:41:11,148.148 INFO    ] Checking for camera pi updates...
[2026-06-22 07:41:11,167.167 INFO    ] 200
[2026-06-22 07:41:11,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:41:11,202.202 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:41:11,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:41:11,279.279 INFO    ] No camera update needed
[2026-06-22 07:41:11,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:41:11,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:41:11,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:41:11,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:41:13,339.339 INFO    ] ================================================
[2026-06-22 07:41:13,354.354 INFO    ] Launching Daemon at Mon Jun 22 07:41:13 IST 2026
[2026-06-22 07:41:13,365.365 INFO    ] ================================================
[2026-06-22 07:41:14,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:41:14
[2026-06-22 07:41:14,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:41:14,877.877 INFO    ] Initializing speech engine...
[2026-06-22 07:41:14,886.886 INFO    ] 2026-06-22 07:41:14
[2026-06-22 07:41:15,143.143 INFO    ] 2026-06-22 07:41:15
[2026-06-22 07:41:15,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:41:15,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:41:15,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:41:15,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:41:15,498.498 INFO    ] time= 22/06/2026 07:41:15
[2026-06-22 07:41:15,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:41:15,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:41:15,671.671 INFO    ] No existing commands found in stream
[2026-06-22 07:41:20,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:41:20,708.708 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-22 07:41:21,469.469 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:41:21,472.472 INFO    ] Checking for system updates...
[2026-06-22 07:41:21,511.511 INFO    ] 200
[2026-06-22 07:41:21,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:41:21,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:41:21,569.569 INFO    ] No update needed
[2026-06-22 07:41:21,572.572 INFO    ] Checking for camera pi updates...
[2026-06-22 07:41:21,606.606 INFO    ] 200
[2026-06-22 07:41:21,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:41:21,649.649 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:41:21,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:41:21,697.697 INFO    ] No camera update needed
[2026-06-22 07:41:21,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:41:21,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:41:21,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:41:21,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:41:23,752.752 INFO    ] ================================================
[2026-06-22 07:41:23,770.770 INFO    ] Launching Daemon at Mon Jun 22 07:41:23 IST 2026
[2026-06-22 07:41:23,780.780 INFO    ] ================================================
[2026-06-22 07:41:24,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:41:24
[2026-06-22 07:41:24,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:41:25,206.206 INFO    ] Initializing speech engine...
[2026-06-22 07:41:25,216.216 INFO    ] 2026-06-22 07:41:25
[2026-06-22 07:41:25,463.463 INFO    ] 2026-06-22 07:41:25
[2026-06-22 07:41:25,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:41:25,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:41:25,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:41:25,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:41:25,831.831 INFO    ] time= 22/06/2026 07:41:25
[2026-06-22 07:41:25,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:41:25,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:41:26,007.007 INFO    ] No existing commands found in stream
[2026-06-22 07:41:31,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:41:31,035.035 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-22 07:41:32,865.865 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:41:32,867.867 INFO    ] Checking for system updates...
[2026-06-22 07:41:32,903.903 INFO    ] 200
[2026-06-22 07:41:32,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:41:32,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:41:32,961.961 INFO    ] No update needed
[2026-06-22 07:41:32,963.963 INFO    ] Checking for camera pi updates...
[2026-06-22 07:41:33,004.004 INFO    ] 200
[2026-06-22 07:41:33,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:41:33,048.048 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:41:33,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:41:33,125.125 INFO    ] No camera update needed
[2026-06-22 07:41:33,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:41:33,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:41:33,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:41:33,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:41:35,182.182 INFO    ] ================================================
[2026-06-22 07:41:35,197.197 INFO    ] Launching Daemon at Mon Jun 22 07:41:35 IST 2026
[2026-06-22 07:41:35,207.207 INFO    ] ================================================
[2026-06-22 07:41:35,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:41:35
[2026-06-22 07:41:36,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:41:36,544.544 INFO    ] Initializing speech engine...
[2026-06-22 07:41:36,553.553 INFO    ] 2026-06-22 07:41:36
[2026-06-22 07:41:36,799.799 INFO    ] 2026-06-22 07:41:36
[2026-06-22 07:41:36,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:41:37,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:41:37,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:41:37,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:41:37,167.167 INFO    ] time= 22/06/2026 07:41:37
[2026-06-22 07:41:37,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:41:37,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:41:37,365.365 INFO    ] No existing commands found in stream
[2026-06-22 07:41:42,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:41:42,378.378 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-22 07:41:44,868.868 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:41:44,870.870 INFO    ] Checking for system updates...
[2026-06-22 07:41:44,909.909 INFO    ] 200
[2026-06-22 07:41:44,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:41:44,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:41:44,967.967 INFO    ] No update needed
[2026-06-22 07:41:44,969.969 INFO    ] Checking for camera pi updates...
[2026-06-22 07:41:45,010.010 INFO    ] 200
[2026-06-22 07:41:45,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:41:45,053.053 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:41:45,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:41:45,159.159 INFO    ] No camera update needed
[2026-06-22 07:41:45,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:41:45,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:41:45,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:41:45,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:41:47,215.215 INFO    ] ================================================
[2026-06-22 07:41:47,230.230 INFO    ] Launching Daemon at Mon Jun 22 07:41:47 IST 2026
[2026-06-22 07:41:47,241.241 INFO    ] ================================================
[2026-06-22 07:41:47,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:41:47
[2026-06-22 07:41:48,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:41:48,581.581 INFO    ] Initializing speech engine...
[2026-06-22 07:41:48,588.588 INFO    ] 2026-06-22 07:41:48
[2026-06-22 07:41:48,836.836 INFO    ] 2026-06-22 07:41:48
[2026-06-22 07:41:48,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:41:49,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:41:49,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:41:49,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:41:49,192.192 INFO    ] time= 22/06/2026 07:41:49
[2026-06-22 07:41:49,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:41:49,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:41:49,270.270 INFO    ] No existing commands found in stream
[2026-06-22 07:41:54,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:41:54,285.285 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-22 07:41:55,540.540 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:41:55,542.542 INFO    ] Checking for system updates...
[2026-06-22 07:41:55,579.579 INFO    ] 200
[2026-06-22 07:41:55,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:41:55,639.639 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:41:55,642.642 INFO    ] No update needed
[2026-06-22 07:41:55,644.644 INFO    ] Checking for camera pi updates...
[2026-06-22 07:41:55,678.678 INFO    ] 200
[2026-06-22 07:41:55,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:41:55,721.721 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:41:55,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:41:55,812.812 INFO    ] No camera update needed
[2026-06-22 07:41:55,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:41:55,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:41:55,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:41:55,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:41:57,869.869 INFO    ] ================================================
[2026-06-22 07:41:57,884.884 INFO    ] Launching Daemon at Mon Jun 22 07:41:57 IST 2026
[2026-06-22 07:41:57,895.895 INFO    ] ================================================
[2026-06-22 07:41:58,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:41:58
[2026-06-22 07:41:58,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:41:59,251.251 INFO    ] Initializing speech engine...
[2026-06-22 07:41:59,259.259 INFO    ] 2026-06-22 07:41:59
[2026-06-22 07:41:59,518.518 INFO    ] 2026-06-22 07:41:59
[2026-06-22 07:41:59,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:41:59,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:41:59,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:41:59,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:41:59,876.876 INFO    ] time= 22/06/2026 07:41:59
[2026-06-22 07:41:59,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:41:59,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:42:00,037.037 INFO    ] No existing commands found in stream
[2026-06-22 07:42:05,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:42:05,065.065 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-22 07:42:08,239.239 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:42:08,240.240 INFO    ] Checking for system updates...
[2026-06-22 07:42:08,264.264 INFO    ] 200
[2026-06-22 07:42:08,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:42:08,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:42:08,301.301 INFO    ] No update needed
[2026-06-22 07:42:08,303.303 INFO    ] Checking for camera pi updates...
[2026-06-22 07:42:08,339.339 INFO    ] 200
[2026-06-22 07:42:08,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:42:08,383.383 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:42:08,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:42:08,458.458 INFO    ] No camera update needed
[2026-06-22 07:42:08,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:42:08,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:42:08,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:42:08,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:42:10,513.513 INFO    ] ================================================
[2026-06-22 07:42:10,528.528 INFO    ] Launching Daemon at Mon Jun 22 07:42:10 IST 2026
[2026-06-22 07:42:10,539.539 INFO    ] ================================================
[2026-06-22 07:42:11,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:42:11
[2026-06-22 07:42:11,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:42:12,020.020 INFO    ] Initializing speech engine...
[2026-06-22 07:42:12,027.027 INFO    ] 2026-06-22 07:42:12
[2026-06-22 07:42:12,282.282 INFO    ] 2026-06-22 07:42:12
[2026-06-22 07:42:12,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:42:12,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:42:12,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:42:12,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:42:12,724.724 INFO    ] time= 22/06/2026 07:42:12
[2026-06-22 07:42:12,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:42:12,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:42:12,885.885 INFO    ] No existing commands found in stream
[2026-06-22 07:42:17,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:42:17,900.900 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-22 07:42:18,544.544 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:42:18,547.547 INFO    ] Checking for system updates...
[2026-06-22 07:42:18,585.585 INFO    ] 200
[2026-06-22 07:42:18,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:42:18,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:42:18,644.644 INFO    ] No update needed
[2026-06-22 07:42:18,647.647 INFO    ] Checking for camera pi updates...
[2026-06-22 07:42:18,684.684 INFO    ] 200
[2026-06-22 07:42:18,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:42:18,730.730 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:42:18,823.823 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:42:18,826.826 INFO    ] No camera update needed
[2026-06-22 07:42:18,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:42:18,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:42:18,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:42:18,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:42:20,883.883 INFO    ] ================================================
[2026-06-22 07:42:20,899.899 INFO    ] Launching Daemon at Mon Jun 22 07:42:20 IST 2026
[2026-06-22 07:42:20,910.910 INFO    ] ================================================
[2026-06-22 07:42:21,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:42:21
[2026-06-22 07:42:22,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:42:22,343.343 INFO    ] Initializing speech engine...
[2026-06-22 07:42:22,353.353 INFO    ] 2026-06-22 07:42:22
[2026-06-22 07:42:22,602.602 INFO    ] 2026-06-22 07:42:22
[2026-06-22 07:42:22,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:42:22,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:42:22,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:42:22,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:42:22,971.971 INFO    ] time= 22/06/2026 07:42:22
[2026-06-22 07:42:22,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:42:22,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:42:23,054.054 INFO    ] No existing commands found in stream
[2026-06-22 07:42:28,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:42:28,072.072 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-22 07:42:32,256.256 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:42:32,259.259 INFO    ] Checking for system updates...
[2026-06-22 07:42:32,297.297 INFO    ] 200
[2026-06-22 07:42:32,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:42:32,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:42:32,366.366 INFO    ] No update needed
[2026-06-22 07:42:32,369.369 INFO    ] Checking for camera pi updates...
[2026-06-22 07:42:32,405.405 INFO    ] 200
[2026-06-22 07:42:32,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:42:32,458.458 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:42:32,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:42:32,524.524 INFO    ] No camera update needed
[2026-06-22 07:42:32,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:42:32,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:42:32,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:42:32,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:42:34,583.583 INFO    ] ================================================
[2026-06-22 07:42:34,599.599 INFO    ] Launching Daemon at Mon Jun 22 07:42:34 IST 2026
[2026-06-22 07:42:34,610.610 INFO    ] ================================================
[2026-06-22 07:42:35,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:42:35
[2026-06-22 07:42:35,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:42:35,970.970 INFO    ] Initializing speech engine...
[2026-06-22 07:42:35,984.984 INFO    ] 2026-06-22 07:42:35
[2026-06-22 07:42:36,263.263 INFO    ] 2026-06-22 07:42:36
[2026-06-22 07:42:36,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:42:36,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:42:36,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:42:36,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:42:36,668.668 INFO    ] time= 22/06/2026 07:42:36
[2026-06-22 07:42:36,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:42:36,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:42:36,754.754 INFO    ] No existing commands found in stream
[2026-06-22 07:42:41,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:42:41,769.769 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-22 07:42:43,975.975 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:42:43,977.977 INFO    ] Checking for system updates...
[2026-06-22 07:42:44,014.014 INFO    ] 200
[2026-06-22 07:42:44,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:42:44,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:42:44,072.072 INFO    ] No update needed
[2026-06-22 07:42:44,074.074 INFO    ] Checking for camera pi updates...
[2026-06-22 07:42:44,109.109 INFO    ] 200
[2026-06-22 07:42:44,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:42:44,155.155 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:42:44,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:42:44,233.233 INFO    ] No camera update needed
[2026-06-22 07:42:44,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:42:44,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:42:44,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:42:44,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:42:46,288.288 INFO    ] ================================================
[2026-06-22 07:42:46,303.303 INFO    ] Launching Daemon at Mon Jun 22 07:42:46 IST 2026
[2026-06-22 07:42:46,314.314 INFO    ] ================================================
[2026-06-22 07:42:46,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:42:46
[2026-06-22 07:42:47,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:42:47,674.674 INFO    ] Initializing speech engine...
[2026-06-22 07:42:47,699.699 INFO    ] 2026-06-22 07:42:47
[2026-06-22 07:42:47,953.953 INFO    ] 2026-06-22 07:42:47
[2026-06-22 07:42:47,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:42:48,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:42:48,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:42:48,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:42:48,357.357 INFO    ] time= 22/06/2026 07:42:48
[2026-06-22 07:42:48,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:42:48,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:42:48,551.551 INFO    ] No existing commands found in stream
[2026-06-22 07:42:53,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:42:53,574.574 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-22 07:42:55,909.909 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:42:55,911.911 INFO    ] Checking for system updates...
[2026-06-22 07:42:55,947.947 INFO    ] 200
[2026-06-22 07:42:55,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:42:56,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:42:56,014.014 INFO    ] No update needed
[2026-06-22 07:42:56,017.017 INFO    ] Checking for camera pi updates...
[2026-06-22 07:42:56,052.052 INFO    ] 200
[2026-06-22 07:42:56,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:42:56,100.100 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:42:56,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:42:56,283.283 INFO    ] No camera update needed
[2026-06-22 07:42:56,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:42:56,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:42:56,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:42:56,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:42:58,341.341 INFO    ] ================================================
[2026-06-22 07:42:58,357.357 INFO    ] Launching Daemon at Mon Jun 22 07:42:58 IST 2026
[2026-06-22 07:42:58,368.368 INFO    ] ================================================
[2026-06-22 07:42:58,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:42:58
[2026-06-22 07:42:59,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:42:59,831.831 INFO    ] Initializing speech engine...
[2026-06-22 07:42:59,846.846 INFO    ] 2026-06-22 07:42:59
[2026-06-22 07:43:00,131.131 INFO    ] 2026-06-22 07:43:00
[2026-06-22 07:43:00,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:43:00,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:43:00,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:43:00,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:43:00,574.574 INFO    ] time= 22/06/2026 07:43:00
[2026-06-22 07:43:00,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:43:00,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:43:00,719.719 INFO    ] No existing commands found in stream
[2026-06-22 07:43:05,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:43:05,734.734 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-22 07:43:09,896.896 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:43:09,899.899 INFO    ] Checking for system updates...
[2026-06-22 07:43:09,934.934 INFO    ] 200
[2026-06-22 07:43:09,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:43:09,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:43:09,997.997 INFO    ] No update needed
[2026-06-22 07:43:09,999.999 INFO    ] Checking for camera pi updates...
[2026-06-22 07:43:10,033.033 INFO    ] 200
[2026-06-22 07:43:10,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:43:10,076.076 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:43:10,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:43:10,143.143 INFO    ] No camera update needed
[2026-06-22 07:43:10,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:43:10,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:43:10,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:43:10,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:43:12,198.198 INFO    ] ================================================
[2026-06-22 07:43:12,213.213 INFO    ] Launching Daemon at Mon Jun 22 07:43:12 IST 2026
[2026-06-22 07:43:12,225.225 INFO    ] ================================================
[2026-06-22 07:43:12,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:43:12
[2026-06-22 07:43:13,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:43:13,551.551 INFO    ] Initializing speech engine...
[2026-06-22 07:43:13,566.566 INFO    ] 2026-06-22 07:43:13
[2026-06-22 07:43:13,830.830 INFO    ] 2026-06-22 07:43:13
[2026-06-22 07:43:13,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:43:14,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:43:14,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:43:14,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:43:14,197.197 INFO    ] time= 22/06/2026 07:43:14
[2026-06-22 07:43:14,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:43:14,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:43:14,272.272 INFO    ] No existing commands found in stream
[2026-06-22 07:43:19,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:43:19,288.288 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-22 07:43:23,369.369 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:43:23,371.371 INFO    ] Checking for system updates...
[2026-06-22 07:43:23,408.408 INFO    ] 200
[2026-06-22 07:43:23,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:43:23,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:43:23,467.467 INFO    ] No update needed
[2026-06-22 07:43:23,470.470 INFO    ] Checking for camera pi updates...
[2026-06-22 07:43:23,506.506 INFO    ] 200
[2026-06-22 07:43:23,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:43:23,549.549 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:43:23,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:43:23,646.646 INFO    ] No camera update needed
[2026-06-22 07:43:23,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:43:23,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:43:23,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:43:23,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:43:25,701.701 INFO    ] ================================================
[2026-06-22 07:43:25,717.717 INFO    ] Launching Daemon at Mon Jun 22 07:43:25 IST 2026
[2026-06-22 07:43:25,728.728 INFO    ] ================================================
[2026-06-22 07:43:26,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:43:26
[2026-06-22 07:43:26,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:43:27,088.088 INFO    ] Initializing speech engine...
[2026-06-22 07:43:27,094.094 INFO    ] 2026-06-22 07:43:27
[2026-06-22 07:43:27,356.356 INFO    ] 2026-06-22 07:43:27
[2026-06-22 07:43:27,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:43:27,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:43:27,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:43:27,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:43:27,827.827 INFO    ] time= 22/06/2026 07:43:27
[2026-06-22 07:43:27,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:43:27,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:43:28,037.037 INFO    ] No existing commands found in stream
[2026-06-22 07:43:33,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:43:33,067.067 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-22 07:43:35,695.695 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:43:35,697.697 INFO    ] Checking for system updates...
[2026-06-22 07:43:35,734.734 INFO    ] 200
[2026-06-22 07:43:35,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:43:35,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:43:35,792.792 INFO    ] No update needed
[2026-06-22 07:43:35,795.795 INFO    ] Checking for camera pi updates...
[2026-06-22 07:43:35,828.828 INFO    ] 200
[2026-06-22 07:43:35,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:43:35,876.876 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:43:35,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:43:35,941.941 INFO    ] No camera update needed
[2026-06-22 07:43:35,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:43:35,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:43:35,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:43:35,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:43:38,997.997 INFO    ] ================================================
[2026-06-22 07:43:38,013.013 INFO    ] Launching Daemon at Mon Jun 22 07:43:38 IST 2026
[2026-06-22 07:43:38,025.025 INFO    ] ================================================
[2026-06-22 07:43:38,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:43:38
[2026-06-22 07:43:39,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:43:39,472.472 INFO    ] Initializing speech engine...
[2026-06-22 07:43:39,480.480 INFO    ] 2026-06-22 07:43:39
[2026-06-22 07:43:39,776.776 INFO    ] 2026-06-22 07:43:39
[2026-06-22 07:43:39,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:43:40,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:43:40,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:43:40,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:43:40,150.150 INFO    ] time= 22/06/2026 07:43:40
[2026-06-22 07:43:40,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:43:40,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:43:40,272.272 INFO    ] No existing commands found in stream
[2026-06-22 07:43:45,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:43:45,288.288 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-22 07:43:45,988.988 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:43:45,991.991 INFO    ] Checking for system updates...
[2026-06-22 07:43:46,030.030 INFO    ] 200
[2026-06-22 07:43:46,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:43:46,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:43:46,088.088 INFO    ] No update needed
[2026-06-22 07:43:46,091.091 INFO    ] Checking for camera pi updates...
[2026-06-22 07:43:46,129.129 INFO    ] 200
[2026-06-22 07:43:46,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:43:46,173.173 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:43:46,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:43:46,259.259 INFO    ] No camera update needed
[2026-06-22 07:43:46,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:43:46,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:43:46,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:43:46,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:43:48,315.315 INFO    ] ================================================
[2026-06-22 07:43:48,330.330 INFO    ] Launching Daemon at Mon Jun 22 07:43:48 IST 2026
[2026-06-22 07:43:48,341.341 INFO    ] ================================================
[2026-06-22 07:43:48,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:43:48
[2026-06-22 07:43:49,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:43:49,754.754 INFO    ] Initializing speech engine...
[2026-06-22 07:43:49,760.760 INFO    ] 2026-06-22 07:43:49
[2026-06-22 07:43:50,059.059 INFO    ] 2026-06-22 07:43:50
[2026-06-22 07:43:50,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:43:50,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:43:50,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:43:50,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:43:50,434.434 INFO    ] time= 22/06/2026 07:43:50
[2026-06-22 07:43:50,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:43:50,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:43:50,559.559 INFO    ] No existing commands found in stream
[2026-06-22 07:43:55,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:43:55,575.575 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-22 07:43:57,421.421 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:43:57,424.424 INFO    ] Checking for system updates...
[2026-06-22 07:43:57,460.460 INFO    ] 200
[2026-06-22 07:43:57,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:43:57,516.516 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:43:57,519.519 INFO    ] No update needed
[2026-06-22 07:43:57,521.521 INFO    ] Checking for camera pi updates...
[2026-06-22 07:43:57,561.561 INFO    ] 200
[2026-06-22 07:43:57,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:43:57,608.608 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:43:57,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:43:57,691.691 INFO    ] No camera update needed
[2026-06-22 07:43:57,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:43:57,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:43:57,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:43:57,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:43:59,750.750 INFO    ] ================================================
[2026-06-22 07:43:59,766.766 INFO    ] Launching Daemon at Mon Jun 22 07:43:59 IST 2026
[2026-06-22 07:43:59,776.776 INFO    ] ================================================
[2026-06-22 07:44:00,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:44:00
[2026-06-22 07:44:00,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:44:01,188.188 INFO    ] Initializing speech engine...
[2026-06-22 07:44:01,198.198 INFO    ] 2026-06-22 07:44:01
[2026-06-22 07:44:01,529.529 INFO    ] 2026-06-22 07:44:01
[2026-06-22 07:44:01,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:44:02,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:44:02,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:44:04,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:44:04,228.228 INFO    ] time= 22/06/2026 07:44:04
[2026-06-22 07:44:04,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:44:04,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:44:04,333.333 INFO    ] No existing commands found in stream
[2026-06-22 07:44:09,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:44:09,350.350 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-22 07:44:11,338.338 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:44:11,339.339 INFO    ] Checking for system updates...
[2026-06-22 07:44:11,360.360 INFO    ] 200
[2026-06-22 07:44:11,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:44:11,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:44:11,405.405 INFO    ] No update needed
[2026-06-22 07:44:11,407.407 INFO    ] Checking for camera pi updates...
[2026-06-22 07:44:11,446.446 INFO    ] 200
[2026-06-22 07:44:11,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:44:11,489.489 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:44:11,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:44:11,569.569 INFO    ] No camera update needed
[2026-06-22 07:44:11,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:44:11,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:44:11,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:44:11,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:44:13,625.625 INFO    ] ================================================
[2026-06-22 07:44:13,641.641 INFO    ] Launching Daemon at Mon Jun 22 07:44:13 IST 2026
[2026-06-22 07:44:13,652.652 INFO    ] ================================================
[2026-06-22 07:44:14,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:44:14
[2026-06-22 07:44:14,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:44:15,196.196 INFO    ] Initializing speech engine...
[2026-06-22 07:44:15,210.210 INFO    ] 2026-06-22 07:44:15
[2026-06-22 07:44:15,502.502 INFO    ] 2026-06-22 07:44:15
[2026-06-22 07:44:15,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:44:15,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:44:15,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:44:15,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:44:15,975.975 INFO    ] time= 22/06/2026 07:44:15
[2026-06-22 07:44:16,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:44:16,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:44:16,150.150 INFO    ] No existing commands found in stream
[2026-06-22 07:44:21,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:44:21,187.187 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-22 07:44:22,974.974 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:44:22,975.975 INFO    ] Checking for system updates...
[2026-06-22 07:44:23,013.013 INFO    ] 200
[2026-06-22 07:44:23,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:44:23,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:44:23,072.072 INFO    ] No update needed
[2026-06-22 07:44:23,074.074 INFO    ] Checking for camera pi updates...
[2026-06-22 07:44:23,108.108 INFO    ] 200
[2026-06-22 07:44:23,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:44:23,152.152 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:44:23,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:44:23,252.252 INFO    ] No camera update needed
[2026-06-22 07:44:23,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:44:23,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:44:23,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:44:23,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:44:25,309.309 INFO    ] ================================================
[2026-06-22 07:44:25,325.325 INFO    ] Launching Daemon at Mon Jun 22 07:44:25 IST 2026
[2026-06-22 07:44:25,336.336 INFO    ] ================================================
[2026-06-22 07:44:26,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:44:26
[2026-06-22 07:44:26,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:44:26,900.900 INFO    ] Initializing speech engine...
[2026-06-22 07:44:26,913.913 INFO    ] 2026-06-22 07:44:26
[2026-06-22 07:44:27,199.199 INFO    ] 2026-06-22 07:44:27
[2026-06-22 07:44:27,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:44:27,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:44:27,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:44:27,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:44:27,627.627 INFO    ] time= 22/06/2026 07:44:27
[2026-06-22 07:44:27,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:44:27,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:44:27,811.811 INFO    ] No existing commands found in stream
[2026-06-22 07:44:32,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:44:32,828.828 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-22 07:44:34,354.354 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:44:34,357.357 INFO    ] Checking for system updates...
[2026-06-22 07:44:34,396.396 INFO    ] 200
[2026-06-22 07:44:34,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:44:34,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:44:34,453.453 INFO    ] No update needed
[2026-06-22 07:44:34,456.456 INFO    ] Checking for camera pi updates...
[2026-06-22 07:44:34,495.495 INFO    ] 200
[2026-06-22 07:44:34,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:44:34,539.539 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:44:34,585.585 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:44:34,587.587 INFO    ] No camera update needed
[2026-06-22 07:44:34,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:44:34,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:44:34,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:44:34,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:44:36,645.645 INFO    ] ================================================
[2026-06-22 07:44:36,661.661 INFO    ] Launching Daemon at Mon Jun 22 07:44:36 IST 2026
[2026-06-22 07:44:36,672.672 INFO    ] ================================================
[2026-06-22 07:44:37,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:44:37
[2026-06-22 07:44:37,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:44:38,078.078 INFO    ] Initializing speech engine...
[2026-06-22 07:44:38,089.089 INFO    ] 2026-06-22 07:44:38
[2026-06-22 07:44:38,351.351 INFO    ] 2026-06-22 07:44:38
[2026-06-22 07:44:38,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:44:38,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:44:38,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:44:38,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:44:38,703.703 INFO    ] time= 22/06/2026 07:44:38
[2026-06-22 07:44:38,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:44:38,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:44:38,801.801 INFO    ] No existing commands found in stream
[2026-06-22 07:44:43,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:44:43,839.839 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-22 07:44:45,427.427 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:44:45,428.428 INFO    ] Checking for system updates...
[2026-06-22 07:44:45,451.451 INFO    ] 200
[2026-06-22 07:44:45,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:44:45,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:44:45,491.491 INFO    ] No update needed
[2026-06-22 07:44:45,493.493 INFO    ] Checking for camera pi updates...
[2026-06-22 07:44:45,527.527 INFO    ] 200
[2026-06-22 07:44:45,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:44:45,576.576 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:44:45,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:44:45,630.630 INFO    ] No camera update needed
[2026-06-22 07:44:45,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:44:45,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:44:45,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:44:45,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:44:47,687.687 INFO    ] ================================================
[2026-06-22 07:44:47,703.703 INFO    ] Launching Daemon at Mon Jun 22 07:44:47 IST 2026
[2026-06-22 07:44:47,714.714 INFO    ] ================================================
[2026-06-22 07:44:48,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:44:48
[2026-06-22 07:44:48,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:44:49,121.121 INFO    ] Initializing speech engine...
[2026-06-22 07:44:49,129.129 INFO    ] 2026-06-22 07:44:49
[2026-06-22 07:44:49,375.375 INFO    ] 2026-06-22 07:44:49
[2026-06-22 07:44:49,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:44:49,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:44:49,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:44:49,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:44:49,745.745 INFO    ] time= 22/06/2026 07:44:49
[2026-06-22 07:44:49,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:44:49,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:44:49,905.905 INFO    ] No existing commands found in stream
[2026-06-22 07:44:54,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:44:54,932.932 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-22 07:44:58,882.882 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:44:58,885.885 INFO    ] Checking for system updates...
[2026-06-22 07:44:58,925.925 INFO    ] 200
[2026-06-22 07:44:58,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:44:58,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:44:58,991.991 INFO    ] No update needed
[2026-06-22 07:44:58,994.994 INFO    ] Checking for camera pi updates...
[2026-06-22 07:44:59,028.028 INFO    ] 200
[2026-06-22 07:44:59,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:44:59,073.073 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:44:59,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:44:59,261.261 INFO    ] No camera update needed
[2026-06-22 07:44:59,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:44:59,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:44:59,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:44:59,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:45:01,316.316 INFO    ] ================================================
[2026-06-22 07:45:01,330.330 INFO    ] Launching Daemon at Mon Jun 22 07:45:01 IST 2026
[2026-06-22 07:45:01,341.341 INFO    ] ================================================
[2026-06-22 07:45:02,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:45:02
[2026-06-22 07:45:02,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:45:03,241.241 INFO    ] Initializing speech engine...
[2026-06-22 07:45:03,271.271 INFO    ] 2026-06-22 07:45:03
[2026-06-22 07:45:03,602.602 INFO    ] 2026-06-22 07:45:03
[2026-06-22 07:45:03,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:45:03,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:45:03,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:45:04,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:45:04,156.156 INFO    ] time= 22/06/2026 07:45:04
[2026-06-22 07:45:04,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:45:04,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:45:04,338.338 INFO    ] No existing commands found in stream
[2026-06-22 07:45:09,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:45:09,353.353 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-22 07:45:12,239.239 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:45:12,240.240 INFO    ] Checking for system updates...
[2026-06-22 07:45:12,261.261 INFO    ] 200
[2026-06-22 07:45:12,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:45:12,298.298 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:45:12,300.300 INFO    ] No update needed
[2026-06-22 07:45:12,301.301 INFO    ] Checking for camera pi updates...
[2026-06-22 07:45:12,320.320 INFO    ] 200
[2026-06-22 07:45:12,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:45:12,369.369 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:45:12,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:45:12,431.431 INFO    ] No camera update needed
[2026-06-22 07:45:12,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:45:12,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:45:12,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:45:12,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:45:14,490.490 INFO    ] ================================================
[2026-06-22 07:45:14,506.506 INFO    ] Launching Daemon at Mon Jun 22 07:45:14 IST 2026
[2026-06-22 07:45:14,517.517 INFO    ] ================================================
[2026-06-22 07:45:15,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:45:15
[2026-06-22 07:45:15,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:45:16,103.103 INFO    ] Initializing speech engine...
[2026-06-22 07:45:16,111.111 INFO    ] 2026-06-22 07:45:16
[2026-06-22 07:45:16,437.437 INFO    ] 2026-06-22 07:45:16
[2026-06-22 07:45:16,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:45:16,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:45:16,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:45:16,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:45:16,849.849 INFO    ] time= 22/06/2026 07:45:16
[2026-06-22 07:45:16,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:45:16,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:45:17,016.016 INFO    ] No existing commands found in stream
[2026-06-22 07:45:22,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:45:22,033.033 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-22 07:45:25,294.294 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:45:25,297.297 INFO    ] Checking for system updates...
[2026-06-22 07:45:25,340.340 INFO    ] 200
[2026-06-22 07:45:25,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:45:25,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:45:25,415.415 INFO    ] No update needed
[2026-06-22 07:45:25,417.417 INFO    ] Checking for camera pi updates...
[2026-06-22 07:45:25,452.452 INFO    ] 200
[2026-06-22 07:45:25,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:45:25,497.497 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:45:25,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:45:25,575.575 INFO    ] No camera update needed
[2026-06-22 07:45:25,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:45:25,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:45:25,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:45:25,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:45:27,630.630 INFO    ] ================================================
[2026-06-22 07:45:27,645.645 INFO    ] Launching Daemon at Mon Jun 22 07:45:27 IST 2026
[2026-06-22 07:45:27,656.656 INFO    ] ================================================
[2026-06-22 07:45:28,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:45:28
[2026-06-22 07:45:28,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:45:29,154.154 INFO    ] Initializing speech engine...
[2026-06-22 07:45:29,167.167 INFO    ] 2026-06-22 07:45:29
[2026-06-22 07:45:29,488.488 INFO    ] 2026-06-22 07:45:29
[2026-06-22 07:45:29,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:45:29,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:45:29,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:45:29,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:45:29,998.998 INFO    ] time= 22/06/2026 07:45:29
[2026-06-22 07:45:30,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:45:30,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:45:30,144.144 INFO    ] No existing commands found in stream
[2026-06-22 07:45:35,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:45:35,169.169 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-22 07:45:38,681.681 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:45:38,684.684 INFO    ] Checking for system updates...
[2026-06-22 07:45:38,722.722 INFO    ] 200
[2026-06-22 07:45:38,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:45:38,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:45:38,793.793 INFO    ] No update needed
[2026-06-22 07:45:38,797.797 INFO    ] Checking for camera pi updates...
[2026-06-22 07:45:38,831.831 INFO    ] 200
[2026-06-22 07:45:38,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:45:38,882.882 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:45:38,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:45:38,954.954 INFO    ] No camera update needed
[2026-06-22 07:45:38,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:45:38,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:45:38,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:45:38,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:45:41,015.015 INFO    ] ================================================
[2026-06-22 07:45:41,031.031 INFO    ] Launching Daemon at Mon Jun 22 07:45:41 IST 2026
[2026-06-22 07:45:41,042.042 INFO    ] ================================================
[2026-06-22 07:45:41,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:45:41
[2026-06-22 07:45:42,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:45:42,447.447 INFO    ] Initializing speech engine...
[2026-06-22 07:45:42,462.462 INFO    ] 2026-06-22 07:45:42
[2026-06-22 07:45:42,740.740 INFO    ] 2026-06-22 07:45:42
[2026-06-22 07:45:42,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:45:42,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:45:42,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:45:43,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:45:43,130.130 INFO    ] time= 22/06/2026 07:45:43
[2026-06-22 07:45:43,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:45:43,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:45:43,249.249 INFO    ] No existing commands found in stream
[2026-06-22 07:45:48,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:45:48,273.273 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-22 07:45:49,495.495 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:45:49,497.497 INFO    ] Checking for system updates...
[2026-06-22 07:45:49,533.533 INFO    ] 200
[2026-06-22 07:45:49,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:45:49,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:45:49,594.594 INFO    ] No update needed
[2026-06-22 07:45:49,597.597 INFO    ] Checking for camera pi updates...
[2026-06-22 07:45:49,636.636 INFO    ] 200
[2026-06-22 07:45:49,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:45:49,679.679 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:45:49,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:45:49,759.759 INFO    ] No camera update needed
[2026-06-22 07:45:49,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:45:49,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:45:49,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:45:49,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:45:51,818.818 INFO    ] ================================================
[2026-06-22 07:45:51,833.833 INFO    ] Launching Daemon at Mon Jun 22 07:45:51 IST 2026
[2026-06-22 07:45:51,845.845 INFO    ] ================================================
[2026-06-22 07:45:52,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:45:52
[2026-06-22 07:45:53,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:45:53,493.493 INFO    ] Initializing speech engine...
[2026-06-22 07:45:53,501.501 INFO    ] 2026-06-22 07:45:53
[2026-06-22 07:45:53,758.758 INFO    ] 2026-06-22 07:45:53
[2026-06-22 07:45:53,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:45:54,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:45:54,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:45:54,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:45:54,215.215 INFO    ] time= 22/06/2026 07:45:54
[2026-06-22 07:45:54,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:45:54,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:45:54,362.362 INFO    ] No existing commands found in stream
[2026-06-22 07:45:59,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:45:59,377.377 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-22 07:46:02,120.120 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:46:02,123.123 INFO    ] Checking for system updates...
[2026-06-22 07:46:02,169.169 INFO    ] 200
[2026-06-22 07:46:02,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:46:02,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:46:02,240.240 INFO    ] No update needed
[2026-06-22 07:46:02,243.243 INFO    ] Checking for camera pi updates...
[2026-06-22 07:46:02,287.287 INFO    ] 200
[2026-06-22 07:46:02,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:46:02,343.343 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:46:02,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:46:02,405.405 INFO    ] No camera update needed
[2026-06-22 07:46:02,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:46:02,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:46:02,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:46:02,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:46:04,468.468 INFO    ] ================================================
[2026-06-22 07:46:04,483.483 INFO    ] Launching Daemon at Mon Jun 22 07:46:04 IST 2026
[2026-06-22 07:46:04,494.494 INFO    ] ================================================
[2026-06-22 07:46:05,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:46:05
[2026-06-22 07:46:05,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:46:05,966.966 INFO    ] Initializing speech engine...
[2026-06-22 07:46:05,972.972 INFO    ] 2026-06-22 07:46:05
[2026-06-22 07:46:06,234.234 INFO    ] 2026-06-22 07:46:06
[2026-06-22 07:46:06,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:46:06,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:46:06,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:46:06,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:46:06,592.592 INFO    ] time= 22/06/2026 07:46:06
[2026-06-22 07:46:06,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:46:06,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:46:06,768.768 INFO    ] No existing commands found in stream
[2026-06-22 07:46:11,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:46:11,800.800 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-22 07:46:13,941.941 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:46:13,944.944 INFO    ] Checking for system updates...
[2026-06-22 07:46:13,981.981 INFO    ] 200
[2026-06-22 07:46:13,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:46:14,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:46:14,041.041 INFO    ] No update needed
[2026-06-22 07:46:14,043.043 INFO    ] Checking for camera pi updates...
[2026-06-22 07:46:14,077.077 INFO    ] 200
[2026-06-22 07:46:14,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:46:14,121.121 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:46:14,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:46:14,202.202 INFO    ] No camera update needed
[2026-06-22 07:46:14,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:46:14,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:46:14,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:46:14,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:46:16,258.258 INFO    ] ================================================
[2026-06-22 07:46:16,273.273 INFO    ] Launching Daemon at Mon Jun 22 07:46:16 IST 2026
[2026-06-22 07:46:16,284.284 INFO    ] ================================================
[2026-06-22 07:46:16,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:46:16
[2026-06-22 07:46:17,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:46:17,700.700 INFO    ] Initializing speech engine...
[2026-06-22 07:46:17,707.707 INFO    ] 2026-06-22 07:46:17
[2026-06-22 07:46:17,960.960 INFO    ] 2026-06-22 07:46:17
[2026-06-22 07:46:17,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:46:18,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:46:18,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:46:18,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:46:18,416.416 INFO    ] time= 22/06/2026 07:46:18
[2026-06-22 07:46:18,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:46:18,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:46:18,571.571 INFO    ] No existing commands found in stream
[2026-06-22 07:46:23,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:46:23,586.586 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-22 07:46:24,619.619 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:46:24,622.622 INFO    ] Checking for system updates...
[2026-06-22 07:46:24,659.659 INFO    ] 200
[2026-06-22 07:46:24,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:46:24,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:46:24,723.723 INFO    ] No update needed
[2026-06-22 07:46:24,725.725 INFO    ] Checking for camera pi updates...
[2026-06-22 07:46:24,759.759 INFO    ] 200
[2026-06-22 07:46:24,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:46:24,807.807 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:46:24,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:46:24,907.907 INFO    ] No camera update needed
[2026-06-22 07:46:24,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:46:24,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:46:24,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:46:24,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:46:26,964.964 INFO    ] ================================================
[2026-06-22 07:46:26,979.979 INFO    ] Launching Daemon at Mon Jun 22 07:46:26 IST 2026
[2026-06-22 07:46:26,990.990 INFO    ] ================================================
[2026-06-22 07:46:27,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:46:27
[2026-06-22 07:46:28,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:46:28,330.330 INFO    ] Initializing speech engine...
[2026-06-22 07:46:28,356.356 INFO    ] 2026-06-22 07:46:28
[2026-06-22 07:46:28,631.631 INFO    ] 2026-06-22 07:46:28
[2026-06-22 07:46:28,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:46:28,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:46:28,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:46:29,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:46:29,007.007 INFO    ] time= 22/06/2026 07:46:29
[2026-06-22 07:46:29,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:46:29,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:46:29,137.137 INFO    ] No existing commands found in stream
[2026-06-22 07:46:34,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:46:34,152.152 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-22 07:46:35,120.120 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:46:35,123.123 INFO    ] Checking for system updates...
[2026-06-22 07:46:35,163.163 INFO    ] 200
[2026-06-22 07:46:35,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:46:35,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:46:35,231.231 INFO    ] No update needed
[2026-06-22 07:46:35,233.233 INFO    ] Checking for camera pi updates...
[2026-06-22 07:46:35,267.267 INFO    ] 200
[2026-06-22 07:46:35,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:46:35,313.313 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:46:35,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:46:35,390.390 INFO    ] No camera update needed
[2026-06-22 07:46:35,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:46:35,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:46:35,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:46:35,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:46:37,445.445 INFO    ] ================================================
[2026-06-22 07:46:37,460.460 INFO    ] Launching Daemon at Mon Jun 22 07:46:37 IST 2026
[2026-06-22 07:46:37,471.471 INFO    ] ================================================
[2026-06-22 07:46:38,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:46:38
[2026-06-22 07:46:38,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:46:38,915.915 INFO    ] Initializing speech engine...
[2026-06-22 07:46:38,941.941 INFO    ] 2026-06-22 07:46:38
[2026-06-22 07:46:39,193.193 INFO    ] 2026-06-22 07:46:39
[2026-06-22 07:46:39,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:46:39,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:46:39,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:46:39,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:46:39,564.564 INFO    ] time= 22/06/2026 07:46:39
[2026-06-22 07:46:39,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:46:39,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:46:39,744.744 INFO    ] No existing commands found in stream
[2026-06-22 07:46:44,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:46:44,769.769 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-22 07:46:47,961.961 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:46:47,964.964 INFO    ] Checking for system updates...
[2026-06-22 07:46:48,001.001 INFO    ] 200
[2026-06-22 07:46:48,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:46:48,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:46:48,063.063 INFO    ] No update needed
[2026-06-22 07:46:48,066.066 INFO    ] Checking for camera pi updates...
[2026-06-22 07:46:48,100.100 INFO    ] 200
[2026-06-22 07:46:48,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:46:48,149.149 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:46:48,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:46:48,252.252 INFO    ] No camera update needed
[2026-06-22 07:46:48,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:46:48,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:46:48,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:46:48,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:46:50,313.313 INFO    ] ================================================
[2026-06-22 07:46:50,328.328 INFO    ] Launching Daemon at Mon Jun 22 07:46:50 IST 2026
[2026-06-22 07:46:50,340.340 INFO    ] ================================================
[2026-06-22 07:46:50,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:46:50
[2026-06-22 07:46:51,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:46:52,018.018 INFO    ] Initializing speech engine...
[2026-06-22 07:46:52,031.031 INFO    ] 2026-06-22 07:46:52
[2026-06-22 07:46:52,358.358 INFO    ] 2026-06-22 07:46:52
[2026-06-22 07:46:52,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:46:52,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:46:52,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:46:52,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:46:52,799.799 INFO    ] time= 22/06/2026 07:46:52
[2026-06-22 07:46:52,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:46:52,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:46:52,947.947 INFO    ] No existing commands found in stream
[2026-06-22 07:46:57,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:46:57,962.962 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-22 07:47:00,615.615 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:47:00,618.618 INFO    ] Checking for system updates...
[2026-06-22 07:47:00,671.671 INFO    ] 200
[2026-06-22 07:47:00,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:47:00,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:47:00,736.736 INFO    ] No update needed
[2026-06-22 07:47:00,738.738 INFO    ] Checking for camera pi updates...
[2026-06-22 07:47:00,777.777 INFO    ] 200
[2026-06-22 07:47:00,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:47:00,820.820 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:47:01,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:47:01,004.004 INFO    ] No camera update needed
[2026-06-22 07:47:01,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:47:01,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:47:01,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:47:01,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:47:03,074.074 INFO    ] ================================================
[2026-06-22 07:47:03,092.092 INFO    ] Launching Daemon at Mon Jun 22 07:47:03 IST 2026
[2026-06-22 07:47:03,104.104 INFO    ] ================================================
[2026-06-22 07:47:03,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:47:03
[2026-06-22 07:47:04,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:47:04,633.633 INFO    ] Initializing speech engine...
[2026-06-22 07:47:04,642.642 INFO    ] 2026-06-22 07:47:04
[2026-06-22 07:47:04,900.900 INFO    ] 2026-06-22 07:47:04
[2026-06-22 07:47:04,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:47:05,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:47:05,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:47:05,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:47:05,282.282 INFO    ] time= 22/06/2026 07:47:05
[2026-06-22 07:47:05,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:47:05,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:47:05,409.409 INFO    ] No existing commands found in stream
[2026-06-22 07:47:10,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:47:10,424.424 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-22 07:47:12,115.115 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:47:12,118.118 INFO    ] Checking for system updates...
[2026-06-22 07:47:12,154.154 INFO    ] 200
[2026-06-22 07:47:12,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:47:12,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:47:12,215.215 INFO    ] No update needed
[2026-06-22 07:47:12,217.217 INFO    ] Checking for camera pi updates...
[2026-06-22 07:47:12,252.252 INFO    ] 200
[2026-06-22 07:47:12,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:47:12,295.295 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:47:12,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:47:12,384.384 INFO    ] No camera update needed
[2026-06-22 07:47:12,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:47:12,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:47:12,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:47:12,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:47:14,438.438 INFO    ] ================================================
[2026-06-22 07:47:14,453.453 INFO    ] Launching Daemon at Mon Jun 22 07:47:14 IST 2026
[2026-06-22 07:47:14,464.464 INFO    ] ================================================
[2026-06-22 07:47:15,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:47:15
[2026-06-22 07:47:15,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:47:15,999.999 INFO    ] Initializing speech engine...
[2026-06-22 07:47:16,012.012 INFO    ] 2026-06-22 07:47:16
[2026-06-22 07:47:16,298.298 INFO    ] 2026-06-22 07:47:16
[2026-06-22 07:47:16,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:47:16,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:47:16,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:47:16,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:47:16,826.826 INFO    ] time= 22/06/2026 07:47:16
[2026-06-22 07:47:16,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:47:16,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:47:16,961.961 INFO    ] No existing commands found in stream
[2026-06-22 07:47:21,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:47:21,993.993 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-22 07:47:23,285.285 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:47:23,287.287 INFO    ] Checking for system updates...
[2026-06-22 07:47:23,308.308 INFO    ] 200
[2026-06-22 07:47:23,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:47:23,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:47:23,343.343 INFO    ] No update needed
[2026-06-22 07:47:23,344.344 INFO    ] Checking for camera pi updates...
[2026-06-22 07:47:23,365.365 INFO    ] 200
[2026-06-22 07:47:23,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:47:23,391.391 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:47:23,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:47:23,490.490 INFO    ] No camera update needed
[2026-06-22 07:47:23,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:47:23,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:47:23,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:47:23,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:47:25,547.547 INFO    ] ================================================
[2026-06-22 07:47:25,562.562 INFO    ] Launching Daemon at Mon Jun 22 07:47:25 IST 2026
[2026-06-22 07:47:25,572.572 INFO    ] ================================================
[2026-06-22 07:47:26,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:47:26
[2026-06-22 07:47:26,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:47:27,198.198 INFO    ] Initializing speech engine...
[2026-06-22 07:47:27,212.212 INFO    ] 2026-06-22 07:47:27
[2026-06-22 07:47:27,521.521 INFO    ] 2026-06-22 07:47:27
[2026-06-22 07:47:27,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:47:27,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:47:27,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:47:27,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:47:27,951.951 INFO    ] time= 22/06/2026 07:47:27
[2026-06-22 07:47:27,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:47:27,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:47:28,094.094 INFO    ] No existing commands found in stream
[2026-06-22 07:47:33,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:47:33,123.123 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-22 07:47:37,003.003 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:47:37,004.004 INFO    ] Checking for system updates...
[2026-06-22 07:47:37,038.038 INFO    ] 200
[2026-06-22 07:47:37,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:47:37,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:47:37,107.107 INFO    ] No update needed
[2026-06-22 07:47:37,110.110 INFO    ] Checking for camera pi updates...
[2026-06-22 07:47:37,150.150 INFO    ] 200
[2026-06-22 07:47:37,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:47:37,205.205 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:47:37,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:47:37,257.257 INFO    ] No camera update needed
[2026-06-22 07:47:37,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:47:37,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:47:37,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:47:37,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:47:39,318.318 INFO    ] ================================================
[2026-06-22 07:47:39,333.333 INFO    ] Launching Daemon at Mon Jun 22 07:47:39 IST 2026
[2026-06-22 07:47:39,343.343 INFO    ] ================================================
[2026-06-22 07:47:40,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:47:40
[2026-06-22 07:47:40,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:47:40,908.908 INFO    ] Initializing speech engine...
[2026-06-22 07:47:40,921.921 INFO    ] 2026-06-22 07:47:40
[2026-06-22 07:47:41,209.209 INFO    ] 2026-06-22 07:47:41
[2026-06-22 07:47:41,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:47:41,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:47:41,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:47:41,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:47:41,692.692 INFO    ] time= 22/06/2026 07:47:41
[2026-06-22 07:47:41,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:47:41,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:47:41,828.828 INFO    ] No existing commands found in stream
[2026-06-22 07:47:46,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:47:46,845.845 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-22 07:47:48,089.089 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:47:48,093.093 INFO    ] Checking for system updates...
[2026-06-22 07:47:48,130.130 INFO    ] 200
[2026-06-22 07:47:48,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:47:48,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:47:48,191.191 INFO    ] No update needed
[2026-06-22 07:47:48,193.193 INFO    ] Checking for camera pi updates...
[2026-06-22 07:47:48,232.232 INFO    ] 200
[2026-06-22 07:47:48,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:47:48,278.278 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:47:48,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:47:48,357.357 INFO    ] No camera update needed
[2026-06-22 07:47:48,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:47:48,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:47:48,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:47:48,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:47:50,417.417 INFO    ] ================================================
[2026-06-22 07:47:50,432.432 INFO    ] Launching Daemon at Mon Jun 22 07:47:50 IST 2026
[2026-06-22 07:47:50,443.443 INFO    ] ================================================
[2026-06-22 07:47:51,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:47:51
[2026-06-22 07:47:51,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:47:51,849.849 INFO    ] Initializing speech engine...
[2026-06-22 07:47:51,856.856 INFO    ] 2026-06-22 07:47:51
[2026-06-22 07:47:52,183.183 INFO    ] 2026-06-22 07:47:52
[2026-06-22 07:47:52,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:47:52,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:47:52,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:47:52,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:47:52,652.652 INFO    ] time= 22/06/2026 07:47:52
[2026-06-22 07:47:52,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:47:52,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:47:52,851.851 INFO    ] No existing commands found in stream
[2026-06-22 07:47:57,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:47:57,885.885 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-22 07:48:01,121.121 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:48:01,135.135 INFO    ] Checking for system updates...
[2026-06-22 07:48:01,204.204 INFO    ] 200
[2026-06-22 07:48:01,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:48:01,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:48:01,318.318 INFO    ] No update needed
[2026-06-22 07:48:01,322.322 INFO    ] Checking for camera pi updates...
[2026-06-22 07:48:01,376.376 INFO    ] 200
[2026-06-22 07:48:01,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:48:01,454.454 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:48:01,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:48:01,527.527 INFO    ] No camera update needed
[2026-06-22 07:48:01,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:48:01,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:48:01,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:48:01,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:48:03,590.590 INFO    ] ================================================
[2026-06-22 07:48:03,605.605 INFO    ] Launching Daemon at Mon Jun 22 07:48:03 IST 2026
[2026-06-22 07:48:03,616.616 INFO    ] ================================================
[2026-06-22 07:48:04,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:48:04
[2026-06-22 07:48:04,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:48:05,096.096 INFO    ] Initializing speech engine...
[2026-06-22 07:48:05,104.104 INFO    ] 2026-06-22 07:48:05
[2026-06-22 07:48:05,380.380 INFO    ] 2026-06-22 07:48:05
[2026-06-22 07:48:05,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:48:05,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:48:05,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:48:05,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:48:05,724.724 INFO    ] time= 22/06/2026 07:48:05
[2026-06-22 07:48:05,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:48:05,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:48:05,837.837 INFO    ] No existing commands found in stream
[2026-06-22 07:48:10,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:48:10,852.852 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-22 07:48:15,154.154 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:48:15,157.157 INFO    ] Checking for system updates...
[2026-06-22 07:48:15,194.194 INFO    ] 200
[2026-06-22 07:48:15,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:48:15,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:48:15,254.254 INFO    ] No update needed
[2026-06-22 07:48:15,257.257 INFO    ] Checking for camera pi updates...
[2026-06-22 07:48:15,292.292 INFO    ] 200
[2026-06-22 07:48:15,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:48:15,336.336 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:48:15,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:48:15,416.416 INFO    ] No camera update needed
[2026-06-22 07:48:15,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:48:15,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:48:15,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:48:15,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:48:17,475.475 INFO    ] ================================================
[2026-06-22 07:48:17,490.490 INFO    ] Launching Daemon at Mon Jun 22 07:48:17 IST 2026
[2026-06-22 07:48:17,501.501 INFO    ] ================================================
[2026-06-22 07:48:18,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:48:18
[2026-06-22 07:48:18,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:48:19,049.049 INFO    ] Initializing speech engine...
[2026-06-22 07:48:19,058.058 INFO    ] 2026-06-22 07:48:19
[2026-06-22 07:48:19,304.304 INFO    ] 2026-06-22 07:48:19
[2026-06-22 07:48:19,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:48:19,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:48:19,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:48:19,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:48:19,780.780 INFO    ] time= 22/06/2026 07:48:19
[2026-06-22 07:48:19,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:48:19,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:48:19,918.918 INFO    ] No existing commands found in stream
[2026-06-22 07:48:24,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:48:24,933.933 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-22 07:48:25,678.678 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:48:25,681.681 INFO    ] Checking for system updates...
[2026-06-22 07:48:25,717.717 INFO    ] 200
[2026-06-22 07:48:25,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:48:25,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:48:25,775.775 INFO    ] No update needed
[2026-06-22 07:48:25,777.777 INFO    ] Checking for camera pi updates...
[2026-06-22 07:48:25,816.816 INFO    ] 200
[2026-06-22 07:48:25,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:48:25,859.859 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:48:25,943.943 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:48:25,945.945 INFO    ] No camera update needed
[2026-06-22 07:48:25,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:48:25,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:48:25,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:48:25,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:48:28,003.003 INFO    ] ================================================
[2026-06-22 07:48:28,018.018 INFO    ] Launching Daemon at Mon Jun 22 07:48:28 IST 2026
[2026-06-22 07:48:28,029.029 INFO    ] ================================================
[2026-06-22 07:48:28,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:48:28
[2026-06-22 07:48:29,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:48:29,433.433 INFO    ] Initializing speech engine...
[2026-06-22 07:48:29,457.457 INFO    ] 2026-06-22 07:48:29
[2026-06-22 07:48:29,712.712 INFO    ] 2026-06-22 07:48:29
[2026-06-22 07:48:29,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:48:29,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:48:30,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:48:30,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:48:30,187.187 INFO    ] time= 22/06/2026 07:48:30
[2026-06-22 07:48:30,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:48:30,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:48:30,323.323 INFO    ] No existing commands found in stream
[2026-06-22 07:48:35,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:48:35,338.338 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-22 07:48:36,903.903 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:48:36,906.906 INFO    ] Checking for system updates...
[2026-06-22 07:48:36,942.942 INFO    ] 200
[2026-06-22 07:48:36,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:48:37,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:48:37,003.003 INFO    ] No update needed
[2026-06-22 07:48:37,006.006 INFO    ] Checking for camera pi updates...
[2026-06-22 07:48:37,039.039 INFO    ] 200
[2026-06-22 07:48:37,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:48:37,086.086 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:48:37,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:48:37,180.180 INFO    ] No camera update needed
[2026-06-22 07:48:37,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:48:37,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:48:37,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:48:37,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:48:39,236.236 INFO    ] ================================================
[2026-06-22 07:48:39,251.251 INFO    ] Launching Daemon at Mon Jun 22 07:48:39 IST 2026
[2026-06-22 07:48:39,262.262 INFO    ] ================================================
[2026-06-22 07:48:39,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:48:39
[2026-06-22 07:48:40,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:48:40,670.670 INFO    ] Initializing speech engine...
[2026-06-22 07:48:40,689.689 INFO    ] 2026-06-22 07:48:40
[2026-06-22 07:48:40,940.940 INFO    ] 2026-06-22 07:48:40
[2026-06-22 07:48:40,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:48:41,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:48:41,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:48:41,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:48:41,317.317 INFO    ] time= 22/06/2026 07:48:41
[2026-06-22 07:48:41,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:48:41,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:48:41,475.475 INFO    ] No existing commands found in stream
[2026-06-22 07:48:46,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:48:46,508.508 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-22 07:48:50,136.136 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:48:50,138.138 INFO    ] Checking for system updates...
[2026-06-22 07:48:50,176.176 INFO    ] 200
[2026-06-22 07:48:50,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:48:50,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:48:50,235.235 INFO    ] No update needed
[2026-06-22 07:48:50,237.237 INFO    ] Checking for camera pi updates...
[2026-06-22 07:48:50,272.272 INFO    ] 200
[2026-06-22 07:48:50,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:48:50,315.315 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:48:50,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:48:50,396.396 INFO    ] No camera update needed
[2026-06-22 07:48:50,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:48:50,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:48:50,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:48:50,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:48:52,452.452 INFO    ] ================================================
[2026-06-22 07:48:52,467.467 INFO    ] Launching Daemon at Mon Jun 22 07:48:52 IST 2026
[2026-06-22 07:48:52,477.477 INFO    ] ================================================
[2026-06-22 07:48:53,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:48:53
[2026-06-22 07:48:53,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:48:53,816.816 INFO    ] Initializing speech engine...
[2026-06-22 07:48:53,825.825 INFO    ] 2026-06-22 07:48:53
[2026-06-22 07:48:54,081.081 INFO    ] 2026-06-22 07:48:54
[2026-06-22 07:48:54,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:48:54,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:48:54,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:48:54,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:48:54,440.440 INFO    ] time= 22/06/2026 07:48:54
[2026-06-22 07:48:54,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:48:54,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:48:54,556.556 INFO    ] No existing commands found in stream
[2026-06-22 07:48:59,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:48:59,584.584 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-22 07:49:01,062.062 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:49:01,065.065 INFO    ] Checking for system updates...
[2026-06-22 07:49:01,103.103 INFO    ] 200
[2026-06-22 07:49:01,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:49:01,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:49:01,164.164 INFO    ] No update needed
[2026-06-22 07:49:01,167.167 INFO    ] Checking for camera pi updates...
[2026-06-22 07:49:01,218.218 INFO    ] 200
[2026-06-22 07:49:01,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:49:01,264.264 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:49:01,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:49:01,317.317 INFO    ] No camera update needed
[2026-06-22 07:49:01,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:49:01,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:49:01,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:49:01,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:49:03,387.387 INFO    ] ================================================
[2026-06-22 07:49:03,402.402 INFO    ] Launching Daemon at Mon Jun 22 07:49:03 IST 2026
[2026-06-22 07:49:03,412.412 INFO    ] ================================================
[2026-06-22 07:49:03,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:49:03
[2026-06-22 07:49:04,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:49:04,910.910 INFO    ] Initializing speech engine...
[2026-06-22 07:49:04,919.919 INFO    ] 2026-06-22 07:49:04
[2026-06-22 07:49:05,175.175 INFO    ] 2026-06-22 07:49:05
[2026-06-22 07:49:05,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:49:05,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:49:05,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:49:05,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:49:05,534.534 INFO    ] time= 22/06/2026 07:49:05
[2026-06-22 07:49:05,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:49:05,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:49:05,715.715 INFO    ] No existing commands found in stream
[2026-06-22 07:49:10,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:49:10,739.739 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-22 07:49:11,937.937 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:49:11,940.940 INFO    ] Checking for system updates...
[2026-06-22 07:49:11,981.981 INFO    ] 200
[2026-06-22 07:49:11,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:49:12,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:49:12,048.048 INFO    ] No update needed
[2026-06-22 07:49:12,051.051 INFO    ] Checking for camera pi updates...
[2026-06-22 07:49:12,093.093 INFO    ] 200
[2026-06-22 07:49:12,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:49:12,136.136 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:49:12,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:49:12,322.322 INFO    ] No camera update needed
[2026-06-22 07:49:12,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:49:12,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:49:12,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:49:12,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:49:14,378.378 INFO    ] ================================================
[2026-06-22 07:49:14,393.393 INFO    ] Launching Daemon at Mon Jun 22 07:49:14 IST 2026
[2026-06-22 07:49:14,403.403 INFO    ] ================================================
[2026-06-22 07:49:14,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:49:14
[2026-06-22 07:49:15,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:49:15,769.769 INFO    ] Initializing speech engine...
[2026-06-22 07:49:15,778.778 INFO    ] 2026-06-22 07:49:15
[2026-06-22 07:49:16,028.028 INFO    ] 2026-06-22 07:49:16
[2026-06-22 07:49:16,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:49:16,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:49:16,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:49:16,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:49:16,496.496 INFO    ] time= 22/06/2026 07:49:16
[2026-06-22 07:49:16,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:49:16,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:49:16,644.644 INFO    ] No existing commands found in stream
[2026-06-22 07:49:21,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:49:21,659.659 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-22 07:49:23,508.508 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:49:23,510.510 INFO    ] Checking for system updates...
[2026-06-22 07:49:23,547.547 INFO    ] 200
[2026-06-22 07:49:23,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:49:23,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:49:23,610.610 INFO    ] No update needed
[2026-06-22 07:49:23,612.612 INFO    ] Checking for camera pi updates...
[2026-06-22 07:49:23,646.646 INFO    ] 200
[2026-06-22 07:49:23,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:49:23,689.689 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:49:23,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:49:23,773.773 INFO    ] No camera update needed
[2026-06-22 07:49:23,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:49:23,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:49:23,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:49:23,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:49:25,830.830 INFO    ] ================================================
[2026-06-22 07:49:25,846.846 INFO    ] Launching Daemon at Mon Jun 22 07:49:25 IST 2026
[2026-06-22 07:49:25,857.857 INFO    ] ================================================
[2026-06-22 07:49:26,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:49:26
[2026-06-22 07:49:26,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:49:27,226.226 INFO    ] Initializing speech engine...
[2026-06-22 07:49:27,233.233 INFO    ] 2026-06-22 07:49:27
[2026-06-22 07:49:27,482.482 INFO    ] 2026-06-22 07:49:27
[2026-06-22 07:49:27,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:49:27,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:49:27,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:49:27,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:49:27,853.853 INFO    ] time= 22/06/2026 07:49:27
[2026-06-22 07:49:27,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:49:27,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:49:28,013.013 INFO    ] No existing commands found in stream
[2026-06-22 07:49:33,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:49:33,037.037 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-22 07:49:34,910.910 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:49:34,913.913 INFO    ] Checking for system updates...
[2026-06-22 07:49:34,950.950 INFO    ] 200
[2026-06-22 07:49:34,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:49:35,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:49:35,012.012 INFO    ] No update needed
[2026-06-22 07:49:35,014.014 INFO    ] Checking for camera pi updates...
[2026-06-22 07:49:35,050.050 INFO    ] 200
[2026-06-22 07:49:35,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:49:35,099.099 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:49:35,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:49:35,177.177 INFO    ] No camera update needed
[2026-06-22 07:49:35,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:49:35,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:49:35,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:49:35,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:49:37,233.233 INFO    ] ================================================
[2026-06-22 07:49:37,249.249 INFO    ] Launching Daemon at Mon Jun 22 07:49:37 IST 2026
[2026-06-22 07:49:37,260.260 INFO    ] ================================================
[2026-06-22 07:49:37,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:49:37
[2026-06-22 07:49:38,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:49:38,633.633 INFO    ] Initializing speech engine...
[2026-06-22 07:49:38,639.639 INFO    ] 2026-06-22 07:49:38
[2026-06-22 07:49:38,913.913 INFO    ] 2026-06-22 07:49:38
[2026-06-22 07:49:38,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:49:39,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:49:39,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:49:39,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:49:39,255.255 INFO    ] time= 22/06/2026 07:49:39
[2026-06-22 07:49:39,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:49:39,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:49:39,367.367 INFO    ] No existing commands found in stream
[2026-06-22 07:49:44,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:49:44,382.382 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-22 07:49:47,554.554 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:49:47,556.556 INFO    ] Checking for system updates...
[2026-06-22 07:49:47,592.592 INFO    ] 200
[2026-06-22 07:49:47,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:49:47,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:49:47,649.649 INFO    ] No update needed
[2026-06-22 07:49:47,652.652 INFO    ] Checking for camera pi updates...
[2026-06-22 07:49:47,687.687 INFO    ] 200
[2026-06-22 07:49:47,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:49:47,733.733 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:49:47,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:49:47,783.783 INFO    ] No camera update needed
[2026-06-22 07:49:47,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:49:47,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:49:47,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:49:47,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:49:49,838.838 INFO    ] ================================================
[2026-06-22 07:49:49,853.853 INFO    ] Launching Daemon at Mon Jun 22 07:49:49 IST 2026
[2026-06-22 07:49:49,864.864 INFO    ] ================================================
[2026-06-22 07:49:50,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:49:50
[2026-06-22 07:49:51,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:49:51,375.375 INFO    ] Initializing speech engine...
[2026-06-22 07:49:51,386.386 INFO    ] 2026-06-22 07:49:51
[2026-06-22 07:49:51,708.708 INFO    ] 2026-06-22 07:49:51
[2026-06-22 07:49:51,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:49:52,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:49:52,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:49:52,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:49:52,209.209 INFO    ] time= 22/06/2026 07:49:52
[2026-06-22 07:49:52,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:49:52,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:49:52,353.353 INFO    ] No existing commands found in stream
[2026-06-22 07:49:57,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:49:57,373.373 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-22 07:50:00,210.210 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:50:00,211.211 INFO    ] Checking for system updates...
[2026-06-22 07:50:00,233.233 INFO    ] 200
[2026-06-22 07:50:00,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:50:00,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:50:00,269.269 INFO    ] No update needed
[2026-06-22 07:50:00,270.270 INFO    ] Checking for camera pi updates...
[2026-06-22 07:50:00,303.303 INFO    ] 200
[2026-06-22 07:50:00,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:50:00,349.349 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:50:00,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:50:00,423.423 INFO    ] No camera update needed
[2026-06-22 07:50:00,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:50:00,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:50:00,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:50:00,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:50:02,494.494 INFO    ] ================================================
[2026-06-22 07:50:02,518.518 INFO    ] Launching Daemon at Mon Jun 22 07:50:02 IST 2026
[2026-06-22 07:50:02,541.541 INFO    ] ================================================
[2026-06-22 07:50:03,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:50:03
[2026-06-22 07:50:03,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:50:04,096.096 INFO    ] Initializing speech engine...
[2026-06-22 07:50:04,102.102 INFO    ] 2026-06-22 07:50:04
[2026-06-22 07:50:04,387.387 INFO    ] 2026-06-22 07:50:04
[2026-06-22 07:50:04,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:50:04,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:50:04,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:50:04,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:50:04,953.953 INFO    ] time= 22/06/2026 07:50:04
[2026-06-22 07:50:04,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:50:04,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:50:05,094.094 INFO    ] No existing commands found in stream
[2026-06-22 07:50:10,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:50:10,122.122 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-22 07:50:12,588.588 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:50:12,591.591 INFO    ] Checking for system updates...
[2026-06-22 07:50:12,628.628 INFO    ] 200
[2026-06-22 07:50:12,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:50:12,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:50:12,702.702 INFO    ] No update needed
[2026-06-22 07:50:12,705.705 INFO    ] Checking for camera pi updates...
[2026-06-22 07:50:12,740.740 INFO    ] 200
[2026-06-22 07:50:12,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:50:12,790.790 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:50:12,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:50:12,862.862 INFO    ] No camera update needed
[2026-06-22 07:50:12,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:50:12,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:50:12,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:50:12,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:50:14,918.918 INFO    ] ================================================
[2026-06-22 07:50:14,934.934 INFO    ] Launching Daemon at Mon Jun 22 07:50:14 IST 2026
[2026-06-22 07:50:14,945.945 INFO    ] ================================================
[2026-06-22 07:50:15,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:50:15
[2026-06-22 07:50:16,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:50:16,365.365 INFO    ] Initializing speech engine...
[2026-06-22 07:50:16,385.385 INFO    ] 2026-06-22 07:50:16
[2026-06-22 07:50:16,638.638 INFO    ] 2026-06-22 07:50:16
[2026-06-22 07:50:16,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:50:16,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:50:16,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:50:16,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:50:17,016.016 INFO    ] time= 22/06/2026 07:50:17
[2026-06-22 07:50:17,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:50:17,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:50:17,093.093 INFO    ] No existing commands found in stream
[2026-06-22 07:50:22,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:50:22,108.108 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-22 07:50:23,595.595 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:50:23,598.598 INFO    ] Checking for system updates...
[2026-06-22 07:50:23,634.634 INFO    ] 200
[2026-06-22 07:50:23,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:50:23,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:50:23,701.701 INFO    ] No update needed
[2026-06-22 07:50:23,704.704 INFO    ] Checking for camera pi updates...
[2026-06-22 07:50:23,738.738 INFO    ] 200
[2026-06-22 07:50:23,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:50:23,781.781 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:50:23,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:50:23,838.838 INFO    ] No camera update needed
[2026-06-22 07:50:23,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:50:23,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:50:23,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:50:23,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:50:25,893.893 INFO    ] ================================================
[2026-06-22 07:50:25,909.909 INFO    ] Launching Daemon at Mon Jun 22 07:50:25 IST 2026
[2026-06-22 07:50:25,921.921 INFO    ] ================================================
[2026-06-22 07:50:26,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:50:26
[2026-06-22 07:50:26,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:50:27,235.235 INFO    ] Initializing speech engine...
[2026-06-22 07:50:27,247.247 INFO    ] 2026-06-22 07:50:27
[2026-06-22 07:50:27,514.514 INFO    ] 2026-06-22 07:50:27
[2026-06-22 07:50:27,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:50:27,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:50:27,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:50:27,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:50:27,856.856 INFO    ] time= 22/06/2026 07:50:27
[2026-06-22 07:50:27,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:50:27,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:50:27,969.969 INFO    ] No existing commands found in stream
[2026-06-22 07:50:32,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:50:32,979.979 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-22 07:50:34,417.417 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:50:34,419.419 INFO    ] Checking for system updates...
[2026-06-22 07:50:34,456.456 INFO    ] 200
[2026-06-22 07:50:34,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:50:34,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:50:34,524.524 INFO    ] No update needed
[2026-06-22 07:50:34,526.526 INFO    ] Checking for camera pi updates...
[2026-06-22 07:50:34,560.560 INFO    ] 200
[2026-06-22 07:50:34,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:50:34,604.604 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:50:34,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:50:34,688.688 INFO    ] No camera update needed
[2026-06-22 07:50:34,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:50:34,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:50:34,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:50:34,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:50:36,747.747 INFO    ] ================================================
[2026-06-22 07:50:36,763.763 INFO    ] Launching Daemon at Mon Jun 22 07:50:36 IST 2026
[2026-06-22 07:50:36,774.774 INFO    ] ================================================
[2026-06-22 07:50:37,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:50:37
[2026-06-22 07:50:38,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:50:38,391.391 INFO    ] Initializing speech engine...
[2026-06-22 07:50:38,399.399 INFO    ] 2026-06-22 07:50:38
[2026-06-22 07:50:38,711.711 INFO    ] 2026-06-22 07:50:38
[2026-06-22 07:50:38,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:50:38,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:50:38,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:50:39,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:50:39,155.155 INFO    ] time= 22/06/2026 07:50:39
[2026-06-22 07:50:39,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:50:39,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:50:39,363.363 INFO    ] No existing commands found in stream
[2026-06-22 07:50:44,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:50:44,392.392 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-22 07:50:45,249.249 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:50:45,252.252 INFO    ] Checking for system updates...
[2026-06-22 07:50:45,296.296 INFO    ] 200
[2026-06-22 07:50:45,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:50:45,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:50:45,365.365 INFO    ] No update needed
[2026-06-22 07:50:45,368.368 INFO    ] Checking for camera pi updates...
[2026-06-22 07:50:45,408.408 INFO    ] 200
[2026-06-22 07:50:45,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:50:45,461.461 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:50:45,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:50:45,547.547 INFO    ] No camera update needed
[2026-06-22 07:50:45,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:50:45,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:50:45,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:50:45,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:50:47,609.609 INFO    ] ================================================
[2026-06-22 07:50:47,625.625 INFO    ] Launching Daemon at Mon Jun 22 07:50:47 IST 2026
[2026-06-22 07:50:47,636.636 INFO    ] ================================================
[2026-06-22 07:50:48,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:50:48
[2026-06-22 07:50:48,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:50:49,201.201 INFO    ] Initializing speech engine...
[2026-06-22 07:50:49,210.210 INFO    ] 2026-06-22 07:50:49
[2026-06-22 07:50:49,492.492 INFO    ] 2026-06-22 07:50:49
[2026-06-22 07:50:49,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:50:49,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:50:49,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:50:49,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:50:49,969.969 INFO    ] time= 22/06/2026 07:50:49
[2026-06-22 07:50:50,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:50:50,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:50:50,121.121 INFO    ] No existing commands found in stream
[2026-06-22 07:50:55,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:50:55,137.137 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-22 07:50:56,463.463 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:50:56,466.466 INFO    ] Checking for system updates...
[2026-06-22 07:50:56,514.514 INFO    ] 200
[2026-06-22 07:50:56,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:50:56,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:50:56,580.580 INFO    ] No update needed
[2026-06-22 07:50:56,583.583 INFO    ] Checking for camera pi updates...
[2026-06-22 07:50:56,625.625 INFO    ] 200
[2026-06-22 07:50:56,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:50:56,671.671 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:50:56,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:50:56,759.759 INFO    ] No camera update needed
[2026-06-22 07:50:56,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:50:56,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:50:56,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:50:56,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:50:58,819.819 INFO    ] ================================================
[2026-06-22 07:50:58,834.834 INFO    ] Launching Daemon at Mon Jun 22 07:50:58 IST 2026
[2026-06-22 07:50:58,845.845 INFO    ] ================================================
[2026-06-22 07:50:59,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:50:59
[2026-06-22 07:50:59,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:51:00,313.313 INFO    ] Initializing speech engine...
[2026-06-22 07:51:00,325.325 INFO    ] 2026-06-22 07:51:00
[2026-06-22 07:51:00,618.618 INFO    ] 2026-06-22 07:51:00
[2026-06-22 07:51:00,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:51:00,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:51:00,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:51:01,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:51:01,055.055 INFO    ] time= 22/06/2026 07:51:01
[2026-06-22 07:51:01,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:51:01,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:51:01,227.227 INFO    ] No existing commands found in stream
[2026-06-22 07:51:06,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:51:06,243.243 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-22 07:51:07,673.673 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:51:07,677.677 INFO    ] Checking for system updates...
[2026-06-22 07:51:07,721.721 INFO    ] 200
[2026-06-22 07:51:07,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:51:07,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:51:07,790.790 INFO    ] No update needed
[2026-06-22 07:51:07,793.793 INFO    ] Checking for camera pi updates...
[2026-06-22 07:51:07,833.833 INFO    ] 200
[2026-06-22 07:51:07,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:51:07,877.877 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:51:07,922.922 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:51:07,927.927 INFO    ] No camera update needed
[2026-06-22 07:51:07,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:51:07,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:51:07,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:51:07,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:51:09,983.983 INFO    ] ================================================
[2026-06-22 07:51:10,999.999 INFO    ] Launching Daemon at Mon Jun 22 07:51:09 IST 2026
[2026-06-22 07:51:10,011.011 INFO    ] ================================================
[2026-06-22 07:51:10,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:51:10
[2026-06-22 07:51:11,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:51:11,616.616 INFO    ] Initializing speech engine...
[2026-06-22 07:51:11,625.625 INFO    ] 2026-06-22 07:51:11
[2026-06-22 07:51:11,942.942 INFO    ] 2026-06-22 07:51:11
[2026-06-22 07:51:12,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:51:12,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:51:12,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:51:12,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:51:12,398.398 INFO    ] time= 22/06/2026 07:51:12
[2026-06-22 07:51:12,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:51:12,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:51:12,590.590 INFO    ] No existing commands found in stream
[2026-06-22 07:51:17,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:51:17,617.617 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-22 07:51:21,020.020 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:51:21,023.023 INFO    ] Checking for system updates...
[2026-06-22 07:51:21,061.061 INFO    ] 200
[2026-06-22 07:51:21,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:51:21,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:51:21,119.119 INFO    ] No update needed
[2026-06-22 07:51:21,122.122 INFO    ] Checking for camera pi updates...
[2026-06-22 07:51:21,156.156 INFO    ] 200
[2026-06-22 07:51:21,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:51:21,202.202 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:51:21,382.382 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:51:21,384.384 INFO    ] No camera update needed
[2026-06-22 07:51:21,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:51:21,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:51:21,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:51:21,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:51:23,443.443 INFO    ] ================================================
[2026-06-22 07:51:23,458.458 INFO    ] Launching Daemon at Mon Jun 22 07:51:23 IST 2026
[2026-06-22 07:51:23,469.469 INFO    ] ================================================
[2026-06-22 07:51:23,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:51:23
[2026-06-22 07:51:24,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:51:24,806.806 INFO    ] Initializing speech engine...
[2026-06-22 07:51:24,819.819 INFO    ] 2026-06-22 07:51:24
[2026-06-22 07:51:25,086.086 INFO    ] 2026-06-22 07:51:25
[2026-06-22 07:51:25,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:51:25,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:51:25,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:51:25,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:51:25,429.429 INFO    ] time= 22/06/2026 07:51:25
[2026-06-22 07:51:25,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:51:25,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:51:25,542.542 INFO    ] No existing commands found in stream
[2026-06-22 07:51:30,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:51:30,563.563 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-22 07:51:33,146.146 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:51:33,149.149 INFO    ] Checking for system updates...
[2026-06-22 07:51:33,185.185 INFO    ] 200
[2026-06-22 07:51:33,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:51:33,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:51:33,249.249 INFO    ] No update needed
[2026-06-22 07:51:33,252.252 INFO    ] Checking for camera pi updates...
[2026-06-22 07:51:33,286.286 INFO    ] 200
[2026-06-22 07:51:33,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:51:33,330.330 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:51:33,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:51:33,381.381 INFO    ] No camera update needed
[2026-06-22 07:51:33,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:51:33,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:51:33,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:51:33,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:51:35,441.441 INFO    ] ================================================
[2026-06-22 07:51:35,458.458 INFO    ] Launching Daemon at Mon Jun 22 07:51:35 IST 2026
[2026-06-22 07:51:35,469.469 INFO    ] ================================================
[2026-06-22 07:51:35,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:51:35
[2026-06-22 07:51:36,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:51:36,763.763 INFO    ] Initializing speech engine...
[2026-06-22 07:51:36,776.776 INFO    ] 2026-06-22 07:51:36
[2026-06-22 07:51:37,047.047 INFO    ] 2026-06-22 07:51:37
[2026-06-22 07:51:37,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:51:37,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:51:37,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:51:37,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:51:37,426.426 INFO    ] time= 22/06/2026 07:51:37
[2026-06-22 07:51:37,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:51:37,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:51:37,613.613 INFO    ] No existing commands found in stream
[2026-06-22 07:51:42,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:51:42,640.640 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-22 07:51:46,536.536 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:51:46,538.538 INFO    ] Checking for system updates...
[2026-06-22 07:51:46,559.559 INFO    ] 200
[2026-06-22 07:51:46,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:51:46,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:51:46,592.592 INFO    ] No update needed
[2026-06-22 07:51:46,594.594 INFO    ] Checking for camera pi updates...
[2026-06-22 07:51:46,614.614 INFO    ] 200
[2026-06-22 07:51:46,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:51:46,650.650 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:51:46,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:51:46,741.741 INFO    ] No camera update needed
[2026-06-22 07:51:46,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:51:46,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:51:46,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:51:46,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:51:48,802.802 INFO    ] ================================================
[2026-06-22 07:51:48,818.818 INFO    ] Launching Daemon at Mon Jun 22 07:51:48 IST 2026
[2026-06-22 07:51:48,829.829 INFO    ] ================================================
[2026-06-22 07:51:49,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:51:49
[2026-06-22 07:51:49,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:51:50,149.149 INFO    ] Initializing speech engine...
[2026-06-22 07:51:50,164.164 INFO    ] 2026-06-22 07:51:50
[2026-06-22 07:51:50,429.429 INFO    ] 2026-06-22 07:51:50
[2026-06-22 07:51:50,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:51:50,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:51:50,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:51:50,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:51:50,806.806 INFO    ] time= 22/06/2026 07:51:50
[2026-06-22 07:51:50,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:51:50,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:51:50,962.962 INFO    ] No existing commands found in stream
[2026-06-22 07:51:55,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:51:55,995.995 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-22 07:52:00,205.205 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:52:00,208.208 INFO    ] Checking for system updates...
[2026-06-22 07:52:00,245.245 INFO    ] 200
[2026-06-22 07:52:00,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:52:00,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:52:00,312.312 INFO    ] No update needed
[2026-06-22 07:52:00,315.315 INFO    ] Checking for camera pi updates...
[2026-06-22 07:52:00,354.354 INFO    ] 200
[2026-06-22 07:52:00,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:52:00,405.405 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:52:00,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:52:00,493.493 INFO    ] No camera update needed
[2026-06-22 07:52:00,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:52:00,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:52:00,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:52:00,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:52:02,557.557 INFO    ] ================================================
[2026-06-22 07:52:02,574.574 INFO    ] Launching Daemon at Mon Jun 22 07:52:02 IST 2026
[2026-06-22 07:52:02,590.590 INFO    ] ================================================
[2026-06-22 07:52:03,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:52:03
[2026-06-22 07:52:03,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:52:04,091.091 INFO    ] Initializing speech engine...
[2026-06-22 07:52:04,103.103 INFO    ] 2026-06-22 07:52:04
[2026-06-22 07:52:04,402.402 INFO    ] 2026-06-22 07:52:04
[2026-06-22 07:52:04,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:52:04,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:52:04,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:52:05,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:52:05,697.697 INFO    ] time= 22/06/2026 07:52:05
[2026-06-22 07:52:05,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:52:05,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:52:05,823.823 INFO    ] No existing commands found in stream
[2026-06-22 07:52:10,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:52:10,838.838 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-22 07:52:11,660.660 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:52:11,662.662 INFO    ] Checking for system updates...
[2026-06-22 07:52:11,682.682 INFO    ] 200
[2026-06-22 07:52:11,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:52:11,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:52:11,715.715 INFO    ] No update needed
[2026-06-22 07:52:11,717.717 INFO    ] Checking for camera pi updates...
[2026-06-22 07:52:11,737.737 INFO    ] 200
[2026-06-22 07:52:11,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:52:11,781.781 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:52:11,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:52:11,868.868 INFO    ] No camera update needed
[2026-06-22 07:52:11,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:52:11,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:52:11,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:52:11,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:52:13,924.924 INFO    ] ================================================
[2026-06-22 07:52:13,940.940 INFO    ] Launching Daemon at Mon Jun 22 07:52:13 IST 2026
[2026-06-22 07:52:13,951.951 INFO    ] ================================================
[2026-06-22 07:52:14,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:52:14
[2026-06-22 07:52:15,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:52:15,481.481 INFO    ] Initializing speech engine...
[2026-06-22 07:52:15,491.491 INFO    ] 2026-06-22 07:52:15
[2026-06-22 07:52:15,767.767 INFO    ] 2026-06-22 07:52:15
[2026-06-22 07:52:15,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:52:16,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:52:16,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:52:16,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:52:16,242.242 INFO    ] time= 22/06/2026 07:52:16
[2026-06-22 07:52:16,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:52:16,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:52:16,383.383 INFO    ] No existing commands found in stream
[2026-06-22 07:52:21,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:52:21,400.400 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-22 07:52:25,446.446 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:52:25,449.449 INFO    ] Checking for system updates...
[2026-06-22 07:52:25,486.486 INFO    ] 200
[2026-06-22 07:52:25,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:52:25,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:52:25,547.547 INFO    ] No update needed
[2026-06-22 07:52:25,550.550 INFO    ] Checking for camera pi updates...
[2026-06-22 07:52:25,586.586 INFO    ] 200
[2026-06-22 07:52:25,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:52:25,629.629 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:52:25,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:52:25,680.680 INFO    ] No camera update needed
[2026-06-22 07:52:25,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:52:25,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:52:25,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:52:25,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:52:27,737.737 INFO    ] ================================================
[2026-06-22 07:52:27,754.754 INFO    ] Launching Daemon at Mon Jun 22 07:52:27 IST 2026
[2026-06-22 07:52:27,769.769 INFO    ] ================================================
[2026-06-22 07:52:28,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:52:28
[2026-06-22 07:52:28,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:52:29,227.227 INFO    ] Initializing speech engine...
[2026-06-22 07:52:29,236.236 INFO    ] 2026-06-22 07:52:29
[2026-06-22 07:52:29,482.482 INFO    ] 2026-06-22 07:52:29
[2026-06-22 07:52:29,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:52:29,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:52:29,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:52:29,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:52:29,823.823 INFO    ] time= 22/06/2026 07:52:29
[2026-06-22 07:52:29,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:52:29,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:52:29,927.927 INFO    ] No existing commands found in stream
[2026-06-22 07:52:34,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:52:34,942.942 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-22 07:52:37,706.706 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:52:37,708.708 INFO    ] Checking for system updates...
[2026-06-22 07:52:37,745.745 INFO    ] 200
[2026-06-22 07:52:37,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:52:37,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:52:37,803.803 INFO    ] No update needed
[2026-06-22 07:52:37,806.806 INFO    ] Checking for camera pi updates...
[2026-06-22 07:52:37,839.839 INFO    ] 200
[2026-06-22 07:52:37,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:52:37,882.882 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:52:37,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:52:37,965.965 INFO    ] No camera update needed
[2026-06-22 07:52:37,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:52:37,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:52:37,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:52:37,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:52:40,021.021 INFO    ] ================================================
[2026-06-22 07:52:40,038.038 INFO    ] Launching Daemon at Mon Jun 22 07:52:40 IST 2026
[2026-06-22 07:52:40,050.050 INFO    ] ================================================
[2026-06-22 07:52:40,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:52:40
[2026-06-22 07:52:41,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:52:41,516.516 INFO    ] Initializing speech engine...
[2026-06-22 07:52:41,523.523 INFO    ] 2026-06-22 07:52:41
[2026-06-22 07:52:41,782.782 INFO    ] 2026-06-22 07:52:41
[2026-06-22 07:52:41,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:52:42,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:52:42,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:52:42,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:52:42,129.129 INFO    ] time= 22/06/2026 07:52:42
[2026-06-22 07:52:42,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:52:42,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:52:42,209.209 INFO    ] No existing commands found in stream
[2026-06-22 07:52:47,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:52:47,223.223 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-22 07:52:48,554.554 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:52:48,556.556 INFO    ] Checking for system updates...
[2026-06-22 07:52:48,579.579 INFO    ] 200
[2026-06-22 07:52:48,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:52:48,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:52:48,637.637 INFO    ] No update needed
[2026-06-22 07:52:48,639.639 INFO    ] Checking for camera pi updates...
[2026-06-22 07:52:48,673.673 INFO    ] 200
[2026-06-22 07:52:48,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:52:48,717.717 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:52:48,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:52:48,797.797 INFO    ] No camera update needed
[2026-06-22 07:52:48,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:52:48,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:52:48,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:52:48,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:52:50,856.856 INFO    ] ================================================
[2026-06-22 07:52:50,872.872 INFO    ] Launching Daemon at Mon Jun 22 07:52:50 IST 2026
[2026-06-22 07:52:50,884.884 INFO    ] ================================================
[2026-06-22 07:52:51,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:52:51
[2026-06-22 07:52:52,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:52:52,380.380 INFO    ] Initializing speech engine...
[2026-06-22 07:52:52,398.398 INFO    ] 2026-06-22 07:52:52
[2026-06-22 07:52:52,651.651 INFO    ] 2026-06-22 07:52:52
[2026-06-22 07:52:52,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:52:52,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:52:52,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:52:53,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:52:53,016.016 INFO    ] time= 22/06/2026 07:52:53
[2026-06-22 07:52:53,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:52:53,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:52:53,072.072 INFO    ] No existing commands found in stream
[2026-06-22 07:52:58,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:52:58,095.095 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-22 07:53:00,505.505 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:53:00,507.507 INFO    ] Checking for system updates...
[2026-06-22 07:53:00,527.527 INFO    ] 200
[2026-06-22 07:53:00,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:53:00,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:53:00,560.560 INFO    ] No update needed
[2026-06-22 07:53:00,562.562 INFO    ] Checking for camera pi updates...
[2026-06-22 07:53:00,581.581 INFO    ] 200
[2026-06-22 07:53:00,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:53:00,626.626 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:53:00,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:53:00,708.708 INFO    ] No camera update needed
[2026-06-22 07:53:00,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:53:00,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:53:00,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:53:00,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:53:02,769.769 INFO    ] ================================================
[2026-06-22 07:53:02,811.811 INFO    ] Launching Daemon at Mon Jun 22 07:53:02 IST 2026
[2026-06-22 07:53:02,824.824 INFO    ] ================================================
[2026-06-22 07:53:03,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:53:03
[2026-06-22 07:53:04,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:53:04,451.451 INFO    ] Initializing speech engine...
[2026-06-22 07:53:04,476.476 INFO    ] 2026-06-22 07:53:04
[2026-06-22 07:53:04,748.748 INFO    ] 2026-06-22 07:53:04
[2026-06-22 07:53:04,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:53:04,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:53:04,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:53:06,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:53:06,261.261 INFO    ] time= 22/06/2026 07:53:06
[2026-06-22 07:53:06,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:53:06,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:53:06,323.323 INFO    ] No existing commands found in stream
[2026-06-22 07:53:11,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:53:11,337.337 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-22 07:53:12,956.956 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:53:12,958.958 INFO    ] Checking for system updates...
[2026-06-22 07:53:12,996.996 INFO    ] 200
[2026-06-22 07:53:12,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:53:13,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:53:13,066.066 INFO    ] No update needed
[2026-06-22 07:53:13,069.069 INFO    ] Checking for camera pi updates...
[2026-06-22 07:53:13,111.111 INFO    ] 200
[2026-06-22 07:53:13,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:53:13,165.165 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:53:13,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:53:13,257.257 INFO    ] No camera update needed
[2026-06-22 07:53:13,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:53:13,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:53:13,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:53:13,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:53:15,317.317 INFO    ] ================================================
[2026-06-22 07:53:15,332.332 INFO    ] Launching Daemon at Mon Jun 22 07:53:15 IST 2026
[2026-06-22 07:53:15,343.343 INFO    ] ================================================
[2026-06-22 07:53:15,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:53:15
[2026-06-22 07:53:16,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:53:16,774.774 INFO    ] Initializing speech engine...
[2026-06-22 07:53:16,779.779 INFO    ] 2026-06-22 07:53:16
[2026-06-22 07:53:17,025.025 INFO    ] 2026-06-22 07:53:17
[2026-06-22 07:53:17,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:53:17,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:53:17,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:53:17,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:53:17,403.403 INFO    ] time= 22/06/2026 07:53:17
[2026-06-22 07:53:17,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:53:17,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:53:17,574.574 INFO    ] No existing commands found in stream
[2026-06-22 07:53:22,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:53:22,607.607 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-22 07:53:26,550.550 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:53:26,553.553 INFO    ] Checking for system updates...
[2026-06-22 07:53:26,592.592 INFO    ] 200
[2026-06-22 07:53:26,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:53:26,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:53:26,649.649 INFO    ] No update needed
[2026-06-22 07:53:26,652.652 INFO    ] Checking for camera pi updates...
[2026-06-22 07:53:26,686.686 INFO    ] 200
[2026-06-22 07:53:26,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:53:26,729.729 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:53:26,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:53:26,903.903 INFO    ] No camera update needed
[2026-06-22 07:53:26,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:53:26,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:53:26,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:53:26,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:53:28,961.961 INFO    ] ================================================
[2026-06-22 07:53:28,978.978 INFO    ] Launching Daemon at Mon Jun 22 07:53:28 IST 2026
[2026-06-22 07:53:28,989.989 INFO    ] ================================================
[2026-06-22 07:53:29,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:53:29
[2026-06-22 07:53:30,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:53:30,454.454 INFO    ] Initializing speech engine...
[2026-06-22 07:53:30,462.462 INFO    ] 2026-06-22 07:53:30
[2026-06-22 07:53:30,760.760 INFO    ] 2026-06-22 07:53:30
[2026-06-22 07:53:30,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:53:31,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:53:31,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:53:31,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:53:31,174.174 INFO    ] time= 22/06/2026 07:53:31
[2026-06-22 07:53:31,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:53:31,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:53:31,306.306 INFO    ] No existing commands found in stream
[2026-06-22 07:53:36,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:53:36,334.334 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-22 07:53:38,448.448 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:53:38,451.451 INFO    ] Checking for system updates...
[2026-06-22 07:53:38,488.488 INFO    ] 200
[2026-06-22 07:53:38,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:53:38,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:53:38,550.550 INFO    ] No update needed
[2026-06-22 07:53:38,552.552 INFO    ] Checking for camera pi updates...
[2026-06-22 07:53:38,590.590 INFO    ] 200
[2026-06-22 07:53:38,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:53:38,633.633 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:53:38,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:53:38,716.716 INFO    ] No camera update needed
[2026-06-22 07:53:38,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:53:38,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:53:38,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:53:38,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:53:40,774.774 INFO    ] ================================================
[2026-06-22 07:53:40,789.789 INFO    ] Launching Daemon at Mon Jun 22 07:53:40 IST 2026
[2026-06-22 07:53:40,800.800 INFO    ] ================================================
[2026-06-22 07:53:41,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:53:41
[2026-06-22 07:53:42,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:53:42,362.362 INFO    ] Initializing speech engine...
[2026-06-22 07:53:42,374.374 INFO    ] 2026-06-22 07:53:42
[2026-06-22 07:53:42,670.670 INFO    ] 2026-06-22 07:53:42
[2026-06-22 07:53:42,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:53:42,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:53:42,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:53:43,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:53:43,140.140 INFO    ] time= 22/06/2026 07:53:43
[2026-06-22 07:53:43,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:53:43,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:53:43,293.293 INFO    ] No existing commands found in stream
[2026-06-22 07:53:48,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:53:48,307.307 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-22 07:53:49,562.562 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:53:49,565.565 INFO    ] Checking for system updates...
[2026-06-22 07:53:49,601.601 INFO    ] 200
[2026-06-22 07:53:49,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:53:49,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:53:49,659.659 INFO    ] No update needed
[2026-06-22 07:53:49,662.662 INFO    ] Checking for camera pi updates...
[2026-06-22 07:53:49,701.701 INFO    ] 200
[2026-06-22 07:53:49,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:53:49,745.745 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:53:49,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:53:49,796.796 INFO    ] No camera update needed
[2026-06-22 07:53:49,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:53:49,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:53:49,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:53:49,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:53:51,853.853 INFO    ] ================================================
[2026-06-22 07:53:51,869.869 INFO    ] Launching Daemon at Mon Jun 22 07:53:51 IST 2026
[2026-06-22 07:53:51,880.880 INFO    ] ================================================
[2026-06-22 07:53:52,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:53:52
[2026-06-22 07:53:53,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:53:53,484.484 INFO    ] Initializing speech engine...
[2026-06-22 07:53:53,495.495 INFO    ] 2026-06-22 07:53:53
[2026-06-22 07:53:53,780.780 INFO    ] 2026-06-22 07:53:53
[2026-06-22 07:53:53,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:53:54,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:53:54,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:53:54,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:53:54,255.255 INFO    ] time= 22/06/2026 07:53:54
[2026-06-22 07:53:54,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:53:54,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:53:54,397.397 INFO    ] No existing commands found in stream
[2026-06-22 07:53:59,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:53:59,413.413 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-22 07:54:02,265.265 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:54:02,269.269 INFO    ] Checking for system updates...
[2026-06-22 07:54:02,312.312 INFO    ] 200
[2026-06-22 07:54:02,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:54:02,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:54:02,384.384 INFO    ] No update needed
[2026-06-22 07:54:02,388.388 INFO    ] Checking for camera pi updates...
[2026-06-22 07:54:02,433.433 INFO    ] 200
[2026-06-22 07:54:02,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:54:02,486.486 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:54:02,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:54:02,539.539 INFO    ] No camera update needed
[2026-06-22 07:54:02,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:54:02,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:54:02,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:54:02,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:54:04,600.600 INFO    ] ================================================
[2026-06-22 07:54:04,615.615 INFO    ] Launching Daemon at Mon Jun 22 07:54:04 IST 2026
[2026-06-22 07:54:04,626.626 INFO    ] ================================================
[2026-06-22 07:54:05,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:54:05
[2026-06-22 07:54:05,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:54:06,052.052 INFO    ] Initializing speech engine...
[2026-06-22 07:54:06,058.058 INFO    ] 2026-06-22 07:54:06
[2026-06-22 07:54:06,346.346 INFO    ] 2026-06-22 07:54:06
[2026-06-22 07:54:06,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:54:07,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:54:07,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:54:07,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:54:07,878.878 INFO    ] time= 22/06/2026 07:54:07
[2026-06-22 07:54:07,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:54:07,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:54:07,937.937 INFO    ] No existing commands found in stream
[2026-06-22 07:54:12,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:54:12,951.951 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-22 07:54:14,820.820 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:54:14,827.827 INFO    ] Checking for system updates...
[2026-06-22 07:54:14,853.853 INFO    ] 200
[2026-06-22 07:54:14,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:54:14,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:54:14,918.918 INFO    ] No update needed
[2026-06-22 07:54:14,920.920 INFO    ] Checking for camera pi updates...
[2026-06-22 07:54:14,953.953 INFO    ] 200
[2026-06-22 07:54:14,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:54:14,998.998 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:54:15,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:54:15,067.067 INFO    ] No camera update needed
[2026-06-22 07:54:15,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:54:15,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:54:15,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:54:15,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:54:17,123.123 INFO    ] ================================================
[2026-06-22 07:54:17,138.138 INFO    ] Launching Daemon at Mon Jun 22 07:54:17 IST 2026
[2026-06-22 07:54:17,149.149 INFO    ] ================================================
[2026-06-22 07:54:17,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:54:17
[2026-06-22 07:54:18,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:54:18,503.503 INFO    ] Initializing speech engine...
[2026-06-22 07:54:18,518.518 INFO    ] 2026-06-22 07:54:18
[2026-06-22 07:54:18,784.784 INFO    ] 2026-06-22 07:54:18
[2026-06-22 07:54:18,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:54:19,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:54:19,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:54:19,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:54:19,157.157 INFO    ] time= 22/06/2026 07:54:19
[2026-06-22 07:54:19,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:54:19,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:54:19,335.335 INFO    ] No existing commands found in stream
[2026-06-22 07:54:24,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:54:24,368.368 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-22 07:54:28,418.418 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:54:28,419.419 INFO    ] Checking for system updates...
[2026-06-22 07:54:28,440.440 INFO    ] 200
[2026-06-22 07:54:28,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:54:28,486.486 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:54:28,489.489 INFO    ] No update needed
[2026-06-22 07:54:28,491.491 INFO    ] Checking for camera pi updates...
[2026-06-22 07:54:28,526.526 INFO    ] 200
[2026-06-22 07:54:28,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:54:28,576.576 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:54:28,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:54:28,657.657 INFO    ] No camera update needed
[2026-06-22 07:54:28,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:54:28,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:54:28,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:54:28,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:54:30,716.716 INFO    ] ================================================
[2026-06-22 07:54:30,732.732 INFO    ] Launching Daemon at Mon Jun 22 07:54:30 IST 2026
[2026-06-22 07:54:30,743.743 INFO    ] ================================================
[2026-06-22 07:54:31,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:54:31
[2026-06-22 07:54:32,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:54:32,366.366 INFO    ] Initializing speech engine...
[2026-06-22 07:54:32,384.384 INFO    ] 2026-06-22 07:54:32
[2026-06-22 07:54:32,697.697 INFO    ] 2026-06-22 07:54:32
[2026-06-22 07:54:32,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:54:32,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:54:32,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:54:33,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:54:33,068.068 INFO    ] time= 22/06/2026 07:54:33
[2026-06-22 07:54:33,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:54:33,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:54:33,143.143 INFO    ] No existing commands found in stream
[2026-06-22 07:54:38,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:54:38,157.157 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-22 07:54:39,245.245 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:54:39,248.248 INFO    ] Checking for system updates...
[2026-06-22 07:54:39,285.285 INFO    ] 200
[2026-06-22 07:54:39,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:54:39,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:54:39,344.344 INFO    ] No update needed
[2026-06-22 07:54:39,347.347 INFO    ] Checking for camera pi updates...
[2026-06-22 07:54:39,384.384 INFO    ] 200
[2026-06-22 07:54:39,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:54:39,433.433 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:54:39,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:54:39,482.482 INFO    ] No camera update needed
[2026-06-22 07:54:39,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:54:39,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:54:39,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:54:39,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:54:41,540.540 INFO    ] ================================================
[2026-06-22 07:54:41,556.556 INFO    ] Launching Daemon at Mon Jun 22 07:54:41 IST 2026
[2026-06-22 07:54:41,567.567 INFO    ] ================================================
[2026-06-22 07:54:42,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:54:42
[2026-06-22 07:54:42,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:54:42,916.916 INFO    ] Initializing speech engine...
[2026-06-22 07:54:42,925.925 INFO    ] 2026-06-22 07:54:42
[2026-06-22 07:54:43,213.213 INFO    ] 2026-06-22 07:54:43
[2026-06-22 07:54:43,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:54:43,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:54:43,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:54:43,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:54:43,675.675 INFO    ] time= 22/06/2026 07:54:43
[2026-06-22 07:54:43,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:54:43,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:54:43,905.905 INFO    ] No existing commands found in stream
[2026-06-22 07:54:48,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:54:48,925.925 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-22 07:54:51,193.193 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:54:51,195.195 INFO    ] Checking for system updates...
[2026-06-22 07:54:51,216.216 INFO    ] 200
[2026-06-22 07:54:51,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:54:51,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:54:51,250.250 INFO    ] No update needed
[2026-06-22 07:54:51,251.251 INFO    ] Checking for camera pi updates...
[2026-06-22 07:54:51,280.280 INFO    ] 200
[2026-06-22 07:54:51,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:54:51,328.328 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:54:51,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:54:51,394.394 INFO    ] No camera update needed
[2026-06-22 07:54:51,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:54:51,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:54:51,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:54:51,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:54:53,452.452 INFO    ] ================================================
[2026-06-22 07:54:53,467.467 INFO    ] Launching Daemon at Mon Jun 22 07:54:53 IST 2026
[2026-06-22 07:54:53,478.478 INFO    ] ================================================
[2026-06-22 07:54:54,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:54:54
[2026-06-22 07:54:54,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:54:54,825.825 INFO    ] Initializing speech engine...
[2026-06-22 07:54:54,844.844 INFO    ] 2026-06-22 07:54:54
[2026-06-22 07:54:55,091.091 INFO    ] 2026-06-22 07:54:55
[2026-06-22 07:54:55,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:54:55,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:54:55,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:54:55,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:54:55,560.560 INFO    ] time= 22/06/2026 07:54:55
[2026-06-22 07:54:55,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:54:55,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:54:55,791.791 INFO    ] No existing commands found in stream
[2026-06-22 07:55:00,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:55:00,816.816 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-22 07:55:02,855.855 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:55:02,859.859 INFO    ] Checking for system updates...
[2026-06-22 07:55:02,902.902 INFO    ] 200
[2026-06-22 07:55:02,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:55:03,010.010 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:55:03,013.013 INFO    ] No update needed
[2026-06-22 07:55:03,024.024 INFO    ] Checking for camera pi updates...
[2026-06-22 07:55:03,075.075 INFO    ] 200
[2026-06-22 07:55:03,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:55:03,137.137 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:55:03,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:55:03,189.189 INFO    ] No camera update needed
[2026-06-22 07:55:03,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:55:03,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:55:03,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:55:03,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:55:05,251.251 INFO    ] ================================================
[2026-06-22 07:55:05,266.266 INFO    ] Launching Daemon at Mon Jun 22 07:55:05 IST 2026
[2026-06-22 07:55:05,277.277 INFO    ] ================================================
[2026-06-22 07:55:05,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:55:05
[2026-06-22 07:55:06,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:55:06,784.784 INFO    ] Initializing speech engine...
[2026-06-22 07:55:06,793.793 INFO    ] 2026-06-22 07:55:06
[2026-06-22 07:55:07,040.040 INFO    ] 2026-06-22 07:55:07
[2026-06-22 07:55:07,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:55:07,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:55:07,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:55:08,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:55:08,111.111 INFO    ] time= 22/06/2026 07:55:08
[2026-06-22 07:55:08,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:55:08,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:55:08,230.230 INFO    ] No existing commands found in stream
[2026-06-22 07:55:13,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:55:13,243.243 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-22 07:55:16,663.663 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:55:16,666.666 INFO    ] Checking for system updates...
[2026-06-22 07:55:16,705.705 INFO    ] 200
[2026-06-22 07:55:16,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:55:16,760.760 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:55:16,763.763 INFO    ] No update needed
[2026-06-22 07:55:16,765.765 INFO    ] Checking for camera pi updates...
[2026-06-22 07:55:16,799.799 INFO    ] 200
[2026-06-22 07:55:16,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:55:16,850.850 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:55:16,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:55:16,927.927 INFO    ] No camera update needed
[2026-06-22 07:55:16,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:55:16,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:55:16,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:55:16,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:55:18,986.986 INFO    ] ================================================
[2026-06-22 07:55:19,002.002 INFO    ] Launching Daemon at Mon Jun 22 07:55:18 IST 2026
[2026-06-22 07:55:19,013.013 INFO    ] ================================================
[2026-06-22 07:55:19,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:55:19
[2026-06-22 07:55:20,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:55:20,461.461 INFO    ] Initializing speech engine...
[2026-06-22 07:55:20,467.467 INFO    ] 2026-06-22 07:55:20
[2026-06-22 07:55:20,721.721 INFO    ] 2026-06-22 07:55:20
[2026-06-22 07:55:20,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:55:21,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:55:21,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:55:21,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:55:21,164.164 INFO    ] time= 22/06/2026 07:55:21
[2026-06-22 07:55:21,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:55:21,275.275 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:55:21,328.328 INFO    ] No existing commands found in stream
[2026-06-22 07:55:26,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:55:26,342.342 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-22 07:55:29,984.984 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:55:29,985.985 INFO    ] Checking for system updates...
[2026-06-22 07:55:30,014.014 INFO    ] 200
[2026-06-22 07:55:30,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:55:30,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:55:30,071.071 INFO    ] No update needed
[2026-06-22 07:55:30,074.074 INFO    ] Checking for camera pi updates...
[2026-06-22 07:55:30,107.107 INFO    ] 200
[2026-06-22 07:55:30,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:55:30,152.152 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:55:30,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:55:30,309.309 INFO    ] No camera update needed
[2026-06-22 07:55:30,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:55:30,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:55:30,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:55:30,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:55:32,368.368 INFO    ] ================================================
[2026-06-22 07:55:32,385.385 INFO    ] Launching Daemon at Mon Jun 22 07:55:32 IST 2026
[2026-06-22 07:55:32,397.397 INFO    ] ================================================
[2026-06-22 07:55:32,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:55:32
[2026-06-22 07:55:33,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:55:33,863.863 INFO    ] Initializing speech engine...
[2026-06-22 07:55:33,870.870 INFO    ] 2026-06-22 07:55:33
[2026-06-22 07:55:34,116.116 INFO    ] 2026-06-22 07:55:34
[2026-06-22 07:55:34,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:55:34,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:55:34,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:55:34,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:55:34,486.486 INFO    ] time= 22/06/2026 07:55:34
[2026-06-22 07:55:34,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:55:34,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:55:34,643.643 INFO    ] No existing commands found in stream
[2026-06-22 07:55:39,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:55:39,677.677 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-22 07:55:40,138.138 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:55:40,141.141 INFO    ] Checking for system updates...
[2026-06-22 07:55:40,180.180 INFO    ] 200
[2026-06-22 07:55:40,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:55:40,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:55:40,248.248 INFO    ] No update needed
[2026-06-22 07:55:40,250.250 INFO    ] Checking for camera pi updates...
[2026-06-22 07:55:40,288.288 INFO    ] 200
[2026-06-22 07:55:40,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:55:40,331.331 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:55:40,409.409 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:55:40,412.412 INFO    ] No camera update needed
[2026-06-22 07:55:40,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:55:40,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:55:40,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:55:40,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:55:42,469.469 INFO    ] ================================================
[2026-06-22 07:55:42,484.484 INFO    ] Launching Daemon at Mon Jun 22 07:55:42 IST 2026
[2026-06-22 07:55:42,495.495 INFO    ] ================================================
[2026-06-22 07:55:43,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:55:43
[2026-06-22 07:55:43,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:55:43,975.975 INFO    ] Initializing speech engine...
[2026-06-22 07:55:43,984.984 INFO    ] 2026-06-22 07:55:43
[2026-06-22 07:55:44,235.235 INFO    ] 2026-06-22 07:55:44
[2026-06-22 07:55:44,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:55:44,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:55:44,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:55:44,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:55:44,607.607 INFO    ] time= 22/06/2026 07:55:44
[2026-06-22 07:55:44,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:55:44,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:55:44,685.685 INFO    ] No existing commands found in stream
[2026-06-22 07:55:49,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:55:49,718.718 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-22 07:55:50,749.749 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:55:50,751.751 INFO    ] Checking for system updates...
[2026-06-22 07:55:50,773.773 INFO    ] 200
[2026-06-22 07:55:50,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:55:50,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:55:50,827.827 INFO    ] No update needed
[2026-06-22 07:55:50,829.829 INFO    ] Checking for camera pi updates...
[2026-06-22 07:55:50,863.863 INFO    ] 200
[2026-06-22 07:55:50,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:55:50,906.906 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:55:50,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:55:50,989.989 INFO    ] No camera update needed
[2026-06-22 07:55:50,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:55:50,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:55:50,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:55:51,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:55:53,046.046 INFO    ] ================================================
[2026-06-22 07:55:53,063.063 INFO    ] Launching Daemon at Mon Jun 22 07:55:53 IST 2026
[2026-06-22 07:55:53,074.074 INFO    ] ================================================
[2026-06-22 07:55:53,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:55:53
[2026-06-22 07:55:54,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:55:54,493.493 INFO    ] Initializing speech engine...
[2026-06-22 07:55:54,499.499 INFO    ] 2026-06-22 07:55:54
[2026-06-22 07:55:54,797.797 INFO    ] 2026-06-22 07:55:54
[2026-06-22 07:55:54,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:55:55,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:55:55,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:55:55,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:55:55,217.217 INFO    ] time= 22/06/2026 07:55:55
[2026-06-22 07:55:55,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:55:55,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:55:55,385.385 INFO    ] No existing commands found in stream
[2026-06-22 07:56:00,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:56:00,400.400 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-22 07:56:02,653.653 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:56:02,657.657 INFO    ] Checking for system updates...
[2026-06-22 07:56:02,701.701 INFO    ] 200
[2026-06-22 07:56:02,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:56:02,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:56:02,786.786 INFO    ] No update needed
[2026-06-22 07:56:02,789.789 INFO    ] Checking for camera pi updates...
[2026-06-22 07:56:02,835.835 INFO    ] 200
[2026-06-22 07:56:02,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:56:02,914.914 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:56:02,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:56:02,966.966 INFO    ] No camera update needed
[2026-06-22 07:56:02,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:56:02,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:56:02,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:56:02,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:56:05,028.028 INFO    ] ================================================
[2026-06-22 07:56:05,043.043 INFO    ] Launching Daemon at Mon Jun 22 07:56:05 IST 2026
[2026-06-22 07:56:05,054.054 INFO    ] ================================================
[2026-06-22 07:56:05,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:56:05
[2026-06-22 07:56:06,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:56:06,524.524 INFO    ] Initializing speech engine...
[2026-06-22 07:56:06,547.547 INFO    ] 2026-06-22 07:56:06
[2026-06-22 07:56:06,804.804 INFO    ] 2026-06-22 07:56:06
[2026-06-22 07:56:06,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:56:08,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:56:08,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:56:08,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:56:08,521.521 INFO    ] time= 22/06/2026 07:56:08
[2026-06-22 07:56:08,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:56:08,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:56:08,676.676 INFO    ] No existing commands found in stream
[2026-06-22 07:56:13,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:56:13,709.709 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-22 07:56:15,647.647 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:56:15,648.648 INFO    ] Checking for system updates...
[2026-06-22 07:56:15,670.670 INFO    ] 200
[2026-06-22 07:56:15,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:56:15,704.704 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:56:15,705.705 INFO    ] No update needed
[2026-06-22 07:56:15,707.707 INFO    ] Checking for camera pi updates...
[2026-06-22 07:56:15,742.742 INFO    ] 200
[2026-06-22 07:56:15,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:56:15,787.787 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:56:15,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:56:15,869.869 INFO    ] No camera update needed
[2026-06-22 07:56:15,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:56:15,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:56:15,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:56:15,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:56:17,927.927 INFO    ] ================================================
[2026-06-22 07:56:17,943.943 INFO    ] Launching Daemon at Mon Jun 22 07:56:17 IST 2026
[2026-06-22 07:56:17,954.954 INFO    ] ================================================
[2026-06-22 07:56:18,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:56:18
[2026-06-22 07:56:19,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:56:19,447.447 INFO    ] Initializing speech engine...
[2026-06-22 07:56:19,450.450 INFO    ] 2026-06-22 07:56:19
[2026-06-22 07:56:19,716.716 INFO    ] 2026-06-22 07:56:19
[2026-06-22 07:56:19,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:56:19,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:56:19,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:56:20,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:56:20,201.201 INFO    ] time= 22/06/2026 07:56:20
[2026-06-22 07:56:20,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:56:20,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:56:20,335.335 INFO    ] No existing commands found in stream
[2026-06-22 07:56:25,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:56:25,349.349 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-22 07:56:26,564.564 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:56:26,565.565 INFO    ] Checking for system updates...
[2026-06-22 07:56:26,587.587 INFO    ] 200
[2026-06-22 07:56:26,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:56:26,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:56:26,634.634 INFO    ] No update needed
[2026-06-22 07:56:26,636.636 INFO    ] Checking for camera pi updates...
[2026-06-22 07:56:26,670.670 INFO    ] 200
[2026-06-22 07:56:26,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:56:26,717.717 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:56:26,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:56:26,806.806 INFO    ] No camera update needed
[2026-06-22 07:56:26,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:56:26,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:56:26,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:56:26,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:56:28,861.861 INFO    ] ================================================
[2026-06-22 07:56:28,877.877 INFO    ] Launching Daemon at Mon Jun 22 07:56:28 IST 2026
[2026-06-22 07:56:28,888.888 INFO    ] ================================================
[2026-06-22 07:56:29,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:56:29
[2026-06-22 07:56:29,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:56:30,233.233 INFO    ] Initializing speech engine...
[2026-06-22 07:56:30,241.241 INFO    ] 2026-06-22 07:56:30
[2026-06-22 07:56:30,520.520 INFO    ] 2026-06-22 07:56:30
[2026-06-22 07:56:30,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:56:30,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:56:30,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:56:31,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:56:31,056.056 INFO    ] time= 22/06/2026 07:56:31
[2026-06-22 07:56:31,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:56:31,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:56:31,196.196 INFO    ] No existing commands found in stream
[2026-06-22 07:56:36,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:56:36,229.229 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-22 07:56:40,528.528 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:56:40,531.531 INFO    ] Checking for system updates...
[2026-06-22 07:56:40,571.571 INFO    ] 200
[2026-06-22 07:56:40,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:56:40,625.625 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:56:40,628.628 INFO    ] No update needed
[2026-06-22 07:56:40,630.630 INFO    ] Checking for camera pi updates...
[2026-06-22 07:56:40,664.664 INFO    ] 200
[2026-06-22 07:56:40,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:56:40,707.707 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:56:40,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:56:40,790.790 INFO    ] No camera update needed
[2026-06-22 07:56:40,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:56:40,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:56:40,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:56:40,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:56:42,847.847 INFO    ] ================================================
[2026-06-22 07:56:42,862.862 INFO    ] Launching Daemon at Mon Jun 22 07:56:42 IST 2026
[2026-06-22 07:56:42,873.873 INFO    ] ================================================
[2026-06-22 07:56:43,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:56:43
[2026-06-22 07:56:44,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:56:44,300.300 INFO    ] Initializing speech engine...
[2026-06-22 07:56:44,309.309 INFO    ] 2026-06-22 07:56:44
[2026-06-22 07:56:44,555.555 INFO    ] 2026-06-22 07:56:44
[2026-06-22 07:56:44,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:56:44,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:56:44,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:56:44,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:56:45,037.037 INFO    ] time= 22/06/2026 07:56:44
[2026-06-22 07:56:45,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:56:45,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:56:45,177.177 INFO    ] No existing commands found in stream
[2026-06-22 07:56:50,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:56:50,199.199 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-22 07:56:53,709.709 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:56:53,712.712 INFO    ] Checking for system updates...
[2026-06-22 07:56:53,752.752 INFO    ] 200
[2026-06-22 07:56:53,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:56:53,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:56:53,818.818 INFO    ] No update needed
[2026-06-22 07:56:53,820.820 INFO    ] Checking for camera pi updates...
[2026-06-22 07:56:53,858.858 INFO    ] 200
[2026-06-22 07:56:53,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:56:53,910.910 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:56:54,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:56:54,018.018 INFO    ] No camera update needed
[2026-06-22 07:56:54,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:56:54,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:56:54,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:56:54,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:56:56,074.074 INFO    ] ================================================
[2026-06-22 07:56:56,089.089 INFO    ] Launching Daemon at Mon Jun 22 07:56:56 IST 2026
[2026-06-22 07:56:56,100.100 INFO    ] ================================================
[2026-06-22 07:56:56,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:56:56
[2026-06-22 07:56:57,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:56:57,480.480 INFO    ] Initializing speech engine...
[2026-06-22 07:56:57,489.489 INFO    ] 2026-06-22 07:56:57
[2026-06-22 07:56:57,745.745 INFO    ] 2026-06-22 07:56:57
[2026-06-22 07:56:57,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:56:58,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:56:58,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:56:58,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:56:58,214.214 INFO    ] time= 22/06/2026 07:56:58
[2026-06-22 07:56:58,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:56:58,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:56:58,349.349 INFO    ] No existing commands found in stream
[2026-06-22 07:57:03,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:57:03,364.364 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-22 07:57:06,062.062 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:57:06,065.065 INFO    ] Checking for system updates...
[2026-06-22 07:57:06,100.100 INFO    ] 200
[2026-06-22 07:57:06,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:57:06,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:57:06,169.169 INFO    ] No update needed
[2026-06-22 07:57:06,172.172 INFO    ] Checking for camera pi updates...
[2026-06-22 07:57:06,216.216 INFO    ] 200
[2026-06-22 07:57:06,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:57:06,259.259 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:57:06,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:57:06,341.341 INFO    ] No camera update needed
[2026-06-22 07:57:06,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:57:06,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:57:06,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:57:06,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:57:08,397.397 INFO    ] ================================================
[2026-06-22 07:57:08,413.413 INFO    ] Launching Daemon at Mon Jun 22 07:57:08 IST 2026
[2026-06-22 07:57:08,423.423 INFO    ] ================================================
[2026-06-22 07:57:08,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:57:08
[2026-06-22 07:57:09,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:57:09,752.752 INFO    ] Initializing speech engine...
[2026-06-22 07:57:09,777.777 INFO    ] 2026-06-22 07:57:09
[2026-06-22 07:57:10,049.049 INFO    ] 2026-06-22 07:57:10
[2026-06-22 07:57:10,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:57:10,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:57:10,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:57:10,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:57:10,401.401 INFO    ] time= 22/06/2026 07:57:10
[2026-06-22 07:57:10,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:57:10,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:57:10,481.481 INFO    ] No existing commands found in stream
[2026-06-22 07:57:15,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:57:15,495.495 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-22 07:57:19,103.103 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:57:19,105.105 INFO    ] Checking for system updates...
[2026-06-22 07:57:19,141.141 INFO    ] 200
[2026-06-22 07:57:19,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:57:19,198.198 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:57:19,201.201 INFO    ] No update needed
[2026-06-22 07:57:19,203.203 INFO    ] Checking for camera pi updates...
[2026-06-22 07:57:19,237.237 INFO    ] 200
[2026-06-22 07:57:19,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:57:19,283.283 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:57:19,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:57:19,366.366 INFO    ] No camera update needed
[2026-06-22 07:57:19,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:57:19,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:57:19,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:57:19,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:57:21,421.421 INFO    ] ================================================
[2026-06-22 07:57:21,437.437 INFO    ] Launching Daemon at Mon Jun 22 07:57:21 IST 2026
[2026-06-22 07:57:21,448.448 INFO    ] ================================================
[2026-06-22 07:57:22,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:57:22
[2026-06-22 07:57:22,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:57:22,821.821 INFO    ] Initializing speech engine...
[2026-06-22 07:57:22,830.830 INFO    ] 2026-06-22 07:57:22
[2026-06-22 07:57:23,080.080 INFO    ] 2026-06-22 07:57:23
[2026-06-22 07:57:23,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:57:23,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:57:23,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:57:23,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:57:23,562.562 INFO    ] time= 22/06/2026 07:57:23
[2026-06-22 07:57:23,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:57:23,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:57:23,709.709 INFO    ] No existing commands found in stream
[2026-06-22 07:57:28,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:57:28,720.720 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-22 07:57:32,594.594 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:57:32,598.598 INFO    ] Checking for system updates...
[2026-06-22 07:57:32,649.649 INFO    ] 200
[2026-06-22 07:57:32,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:57:32,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:57:32,722.722 INFO    ] No update needed
[2026-06-22 07:57:32,726.726 INFO    ] Checking for camera pi updates...
[2026-06-22 07:57:32,767.767 INFO    ] 200
[2026-06-22 07:57:32,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:57:32,814.814 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:57:32,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:57:32,869.869 INFO    ] No camera update needed
[2026-06-22 07:57:32,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:57:32,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:57:32,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:57:32,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:57:34,928.928 INFO    ] ================================================
[2026-06-22 07:57:34,944.944 INFO    ] Launching Daemon at Mon Jun 22 07:57:34 IST 2026
[2026-06-22 07:57:34,955.955 INFO    ] ================================================
[2026-06-22 07:57:35,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:57:35
[2026-06-22 07:57:36,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:57:36,348.348 INFO    ] Initializing speech engine...
[2026-06-22 07:57:36,356.356 INFO    ] 2026-06-22 07:57:36
[2026-06-22 07:57:36,646.646 INFO    ] 2026-06-22 07:57:36
[2026-06-22 07:57:36,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:57:38,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:57:38,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:57:38,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:57:38,916.916 INFO    ] time= 22/06/2026 07:57:38
[2026-06-22 07:57:38,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:57:38,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:57:38,996.996 INFO    ] No existing commands found in stream
[2026-06-22 07:57:44,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:57:44,011.011 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-22 07:57:47,780.780 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 07:57:47,782.782 INFO    ] Checking for system updates...
[2026-06-22 07:57:47,803.803 INFO    ] 200
[2026-06-22 07:57:47,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:57:47,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:57:47,844.844 INFO    ] No update needed
[2026-06-22 07:57:47,847.847 INFO    ] Checking for camera pi updates...
[2026-06-22 07:57:47,881.881 INFO    ] 200
[2026-06-22 07:57:47,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:57:47,930.930 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:57:48,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:57:48,007.007 INFO    ] No camera update needed
[2026-06-22 07:57:48,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:57:48,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:57:48,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:57:48,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:57:50,061.061 INFO    ] ================================================
[2026-06-22 07:57:50,077.077 INFO    ] Launching Daemon at Mon Jun 22 07:57:50 IST 2026
[2026-06-22 07:57:50,087.087 INFO    ] ================================================
[2026-06-22 07:57:50,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:57:50
[2026-06-22 07:57:51,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:57:51,519.519 INFO    ] Initializing speech engine...
[2026-06-22 07:57:51,542.542 INFO    ] 2026-06-22 07:57:51
[2026-06-22 07:57:51,812.812 INFO    ] 2026-06-22 07:57:51
[2026-06-22 07:57:51,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:57:52,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:57:52,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:57:52,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:57:52,205.205 INFO    ] time= 22/06/2026 07:57:52
[2026-06-22 07:57:52,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:57:52,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:57:52,311.311 INFO    ] No existing commands found in stream
[2026-06-22 07:57:57,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:57:57,327.327 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-22 07:57:59,792.792 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:57:59,794.794 INFO    ] Checking for system updates...
[2026-06-22 07:57:59,831.831 INFO    ] 200
[2026-06-22 07:57:59,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:57:59,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:57:59,888.888 INFO    ] No update needed
[2026-06-22 07:57:59,890.890 INFO    ] Checking for camera pi updates...
[2026-06-22 07:57:59,925.925 INFO    ] 200
[2026-06-22 07:57:59,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:57:59,972.972 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:58:00,049.049 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:58:00,051.051 INFO    ] No camera update needed
[2026-06-22 07:58:00,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:58:00,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:58:00,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:58:00,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:58:02,115.115 INFO    ] ================================================
[2026-06-22 07:58:02,133.133 INFO    ] Launching Daemon at Mon Jun 22 07:58:02 IST 2026
[2026-06-22 07:58:02,147.147 INFO    ] ================================================
[2026-06-22 07:58:02,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:58:02
[2026-06-22 07:58:03,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:58:03,908.908 INFO    ] Initializing speech engine...
[2026-06-22 07:58:03,922.922 INFO    ] 2026-06-22 07:58:03
[2026-06-22 07:58:04,212.212 INFO    ] 2026-06-22 07:58:04
[2026-06-22 07:58:04,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:58:04,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:58:04,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:58:04,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:58:04,740.740 INFO    ] time= 22/06/2026 07:58:04
[2026-06-22 07:58:04,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:58:04,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:58:04,877.877 INFO    ] No existing commands found in stream
[2026-06-22 07:58:09,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:58:09,912.912 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-22 07:58:11,723.723 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 07:58:11,725.725 INFO    ] Checking for system updates...
[2026-06-22 07:58:11,746.746 INFO    ] 200
[2026-06-22 07:58:11,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:58:11,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:58:11,784.784 INFO    ] No update needed
[2026-06-22 07:58:11,785.785 INFO    ] Checking for camera pi updates...
[2026-06-22 07:58:11,805.805 INFO    ] 200
[2026-06-22 07:58:11,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:58:11,829.829 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:58:11,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:58:11,912.912 INFO    ] No camera update needed
[2026-06-22 07:58:11,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:58:11,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:58:11,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:58:11,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:58:13,968.968 INFO    ] ================================================
[2026-06-22 07:58:13,984.984 INFO    ] Launching Daemon at Mon Jun 22 07:58:13 IST 2026
[2026-06-22 07:58:14,001.001 INFO    ] ================================================
[2026-06-22 07:58:14,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:58:14
[2026-06-22 07:58:15,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:58:15,573.573 INFO    ] Initializing speech engine...
[2026-06-22 07:58:15,581.581 INFO    ] 2026-06-22 07:58:15
[2026-06-22 07:58:15,852.852 INFO    ] 2026-06-22 07:58:15
[2026-06-22 07:58:15,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:58:16,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:58:16,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:58:16,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:58:16,307.307 INFO    ] time= 22/06/2026 07:58:16
[2026-06-22 07:58:16,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:58:16,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:58:16,448.448 INFO    ] No existing commands found in stream
[2026-06-22 07:58:21,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:58:21,463.463 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-22 07:58:25,852.852 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 07:58:25,855.855 INFO    ] Checking for system updates...
[2026-06-22 07:58:25,892.892 INFO    ] 200
[2026-06-22 07:58:25,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:58:25,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:58:25,951.951 INFO    ] No update needed
[2026-06-22 07:58:25,954.954 INFO    ] Checking for camera pi updates...
[2026-06-22 07:58:25,994.994 INFO    ] 200
[2026-06-22 07:58:25,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:58:26,040.040 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:58:26,121.121 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:58:26,124.124 INFO    ] No camera update needed
[2026-06-22 07:58:26,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:58:26,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:58:26,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:58:26,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:58:28,183.183 INFO    ] ================================================
[2026-06-22 07:58:28,198.198 INFO    ] Launching Daemon at Mon Jun 22 07:58:28 IST 2026
[2026-06-22 07:58:28,210.210 INFO    ] ================================================
[2026-06-22 07:58:28,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:58:28
[2026-06-22 07:58:29,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:58:29,574.574 INFO    ] Initializing speech engine...
[2026-06-22 07:58:29,584.584 INFO    ] 2026-06-22 07:58:29
[2026-06-22 07:58:29,829.829 INFO    ] 2026-06-22 07:58:29
[2026-06-22 07:58:29,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:58:30,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:58:30,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:58:30,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:58:30,195.195 INFO    ] time= 22/06/2026 07:58:30
[2026-06-22 07:58:30,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:58:30,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:58:30,363.363 INFO    ] No existing commands found in stream
[2026-06-22 07:58:35,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:58:35,387.387 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-22 07:58:39,567.567 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:58:39,570.570 INFO    ] Checking for system updates...
[2026-06-22 07:58:39,606.606 INFO    ] 200
[2026-06-22 07:58:39,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:58:39,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:58:39,664.664 INFO    ] No update needed
[2026-06-22 07:58:39,666.666 INFO    ] Checking for camera pi updates...
[2026-06-22 07:58:39,704.704 INFO    ] 200
[2026-06-22 07:58:39,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:58:39,751.751 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:58:39,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:58:39,804.804 INFO    ] No camera update needed
[2026-06-22 07:58:39,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:58:39,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:58:39,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:58:39,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:58:41,862.862 INFO    ] ================================================
[2026-06-22 07:58:41,879.879 INFO    ] Launching Daemon at Mon Jun 22 07:58:41 IST 2026
[2026-06-22 07:58:41,889.889 INFO    ] ================================================
[2026-06-22 07:58:42,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:58:42
[2026-06-22 07:58:43,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:58:43,424.424 INFO    ] Initializing speech engine...
[2026-06-22 07:58:43,430.430 INFO    ] 2026-06-22 07:58:43
[2026-06-22 07:58:43,750.750 INFO    ] 2026-06-22 07:58:43
[2026-06-22 07:58:43,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:58:43,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:58:44,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:58:44,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:58:44,197.197 INFO    ] time= 22/06/2026 07:58:44
[2026-06-22 07:58:44,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:58:44,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:58:44,352.352 INFO    ] No existing commands found in stream
[2026-06-22 07:58:49,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:58:49,366.366 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-22 07:58:50,486.486 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:58:50,488.488 INFO    ] Checking for system updates...
[2026-06-22 07:58:50,528.528 INFO    ] 200
[2026-06-22 07:58:50,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:58:50,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:58:50,586.586 INFO    ] No update needed
[2026-06-22 07:58:50,589.589 INFO    ] Checking for camera pi updates...
[2026-06-22 07:58:50,627.627 INFO    ] 200
[2026-06-22 07:58:50,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:58:50,671.671 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:58:50,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:58:50,722.722 INFO    ] No camera update needed
[2026-06-22 07:58:50,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:58:50,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:58:50,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:58:50,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:58:52,777.777 INFO    ] ================================================
[2026-06-22 07:58:52,793.793 INFO    ] Launching Daemon at Mon Jun 22 07:58:52 IST 2026
[2026-06-22 07:58:52,804.804 INFO    ] ================================================
[2026-06-22 07:58:53,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:58:53
[2026-06-22 07:58:53,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:58:54,136.136 INFO    ] Initializing speech engine...
[2026-06-22 07:58:54,142.142 INFO    ] 2026-06-22 07:58:54
[2026-06-22 07:58:54,420.420 INFO    ] 2026-06-22 07:58:54
[2026-06-22 07:58:54,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:58:54,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:58:54,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:58:54,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:58:54,798.798 INFO    ] time= 22/06/2026 07:58:54
[2026-06-22 07:58:54,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:58:54,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:58:54,962.962 INFO    ] No existing commands found in stream
[2026-06-22 07:58:59,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:58:59,990.990 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-22 07:59:03,366.366 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:59:03,368.368 INFO    ] Checking for system updates...
[2026-06-22 07:59:03,405.405 INFO    ] 200
[2026-06-22 07:59:03,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:59:03,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:59:03,467.467 INFO    ] No update needed
[2026-06-22 07:59:03,469.469 INFO    ] Checking for camera pi updates...
[2026-06-22 07:59:03,503.503 INFO    ] 200
[2026-06-22 07:59:03,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:59:03,550.550 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:59:03,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:59:03,632.632 INFO    ] No camera update needed
[2026-06-22 07:59:03,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:59:03,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:59:03,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:59:03,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:59:05,691.691 INFO    ] ================================================
[2026-06-22 07:59:05,707.707 INFO    ] Launching Daemon at Mon Jun 22 07:59:05 IST 2026
[2026-06-22 07:59:05,719.719 INFO    ] ================================================
[2026-06-22 07:59:06,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:59:06
[2026-06-22 07:59:06,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:59:07,115.115 INFO    ] Initializing speech engine...
[2026-06-22 07:59:07,124.124 INFO    ] 2026-06-22 07:59:07
[2026-06-22 07:59:07,373.373 INFO    ] 2026-06-22 07:59:07
[2026-06-22 07:59:07,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:59:08,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:59:08,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:59:08,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:59:08,866.866 INFO    ] time= 22/06/2026 07:59:08
[2026-06-22 07:59:08,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:59:08,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:59:08,927.927 INFO    ] No existing commands found in stream
[2026-06-22 07:59:13,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:59:13,941.941 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-22 07:59:15,571.571 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:59:15,573.573 INFO    ] Checking for system updates...
[2026-06-22 07:59:15,593.593 INFO    ] 200
[2026-06-22 07:59:15,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:59:15,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:59:15,647.647 INFO    ] No update needed
[2026-06-22 07:59:15,649.649 INFO    ] Checking for camera pi updates...
[2026-06-22 07:59:15,686.686 INFO    ] 200
[2026-06-22 07:59:15,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:59:15,730.730 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:59:15,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:59:15,810.810 INFO    ] No camera update needed
[2026-06-22 07:59:15,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:59:15,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:59:15,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:59:15,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:59:17,867.867 INFO    ] ================================================
[2026-06-22 07:59:17,882.882 INFO    ] Launching Daemon at Mon Jun 22 07:59:17 IST 2026
[2026-06-22 07:59:17,893.893 INFO    ] ================================================
[2026-06-22 07:59:18,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:59:18
[2026-06-22 07:59:19,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:59:19,394.394 INFO    ] Initializing speech engine...
[2026-06-22 07:59:19,399.399 INFO    ] 2026-06-22 07:59:19
[2026-06-22 07:59:19,647.647 INFO    ] 2026-06-22 07:59:19
[2026-06-22 07:59:19,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:59:19,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:59:19,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:59:19,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:59:19,996.996 INFO    ] time= 22/06/2026 07:59:19
[2026-06-22 07:59:20,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:59:20,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:59:20,111.111 INFO    ] No existing commands found in stream
[2026-06-22 07:59:25,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:59:25,125.125 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-22 07:59:27,137.137 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 07:59:27,140.140 INFO    ] Checking for system updates...
[2026-06-22 07:59:27,178.178 INFO    ] 200
[2026-06-22 07:59:27,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:59:27,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:59:27,238.238 INFO    ] No update needed
[2026-06-22 07:59:27,240.240 INFO    ] Checking for camera pi updates...
[2026-06-22 07:59:27,276.276 INFO    ] 200
[2026-06-22 07:59:27,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:59:27,320.320 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:59:27,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:59:27,404.404 INFO    ] No camera update needed
[2026-06-22 07:59:27,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:59:27,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:59:27,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:59:27,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:59:29,463.463 INFO    ] ================================================
[2026-06-22 07:59:29,479.479 INFO    ] Launching Daemon at Mon Jun 22 07:59:29 IST 2026
[2026-06-22 07:59:29,490.490 INFO    ] ================================================
[2026-06-22 07:59:30,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:59:30
[2026-06-22 07:59:30,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:59:30,947.947 INFO    ] Initializing speech engine...
[2026-06-22 07:59:30,956.956 INFO    ] 2026-06-22 07:59:30
[2026-06-22 07:59:31,218.218 INFO    ] 2026-06-22 07:59:31
[2026-06-22 07:59:31,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:59:31,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:59:31,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:59:31,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:59:31,703.703 INFO    ] time= 22/06/2026 07:59:31
[2026-06-22 07:59:31,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:59:31,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:59:31,905.905 INFO    ] No existing commands found in stream
[2026-06-22 07:59:36,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:59:36,927.927 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-22 07:59:39,851.851 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 07:59:39,854.854 INFO    ] Checking for system updates...
[2026-06-22 07:59:39,890.890 INFO    ] 200
[2026-06-22 07:59:39,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:59:39,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:59:39,949.949 INFO    ] No update needed
[2026-06-22 07:59:39,952.952 INFO    ] Checking for camera pi updates...
[2026-06-22 07:59:39,986.986 INFO    ] 200
[2026-06-22 07:59:39,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:59:40,028.028 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:59:40,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 07:59:40,218.218 INFO    ] No camera update needed
[2026-06-22 07:59:40,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:59:40,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:59:40,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:59:40,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:59:42,277.277 INFO    ] ================================================
[2026-06-22 07:59:42,292.292 INFO    ] Launching Daemon at Mon Jun 22 07:59:42 IST 2026
[2026-06-22 07:59:42,303.303 INFO    ] ================================================
[2026-06-22 07:59:42,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:59:42
[2026-06-22 07:59:43,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:59:43,802.802 INFO    ] Initializing speech engine...
[2026-06-22 07:59:43,808.808 INFO    ] 2026-06-22 07:59:43
[2026-06-22 07:59:44,068.068 INFO    ] 2026-06-22 07:59:44
[2026-06-22 07:59:44,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:59:44,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:59:44,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:59:44,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:59:44,439.439 INFO    ] time= 22/06/2026 07:59:44
[2026-06-22 07:59:44,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:59:44,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:59:44,569.569 INFO    ] No existing commands found in stream
[2026-06-22 07:59:49,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:59:49,582.582 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-22 07:59:50,292.292 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 07:59:50,293.293 INFO    ] Checking for system updates...
[2026-06-22 07:59:50,314.314 INFO    ] 200
[2026-06-22 07:59:50,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:59:50,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:59:50,378.378 INFO    ] No update needed
[2026-06-22 07:59:50,380.380 INFO    ] Checking for camera pi updates...
[2026-06-22 07:59:50,419.419 INFO    ] 200
[2026-06-22 07:59:50,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 07:59:50,467.467 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 07:59:50,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 07:59:50,545.545 INFO    ] No camera update needed
[2026-06-22 07:59:50,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-22 07:59:50,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 07:59:50,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 07:59:50,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 07:59:52,601.601 INFO    ] ================================================
[2026-06-22 07:59:52,617.617 INFO    ] Launching Daemon at Mon Jun 22 07:59:52 IST 2026
[2026-06-22 07:59:52,628.628 INFO    ] ================================================
[2026-06-22 07:59:53,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 07:59:53
[2026-06-22 07:59:53,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 07:59:54,034.034 INFO    ] Initializing speech engine...
[2026-06-22 07:59:54,042.042 INFO    ] 2026-06-22 07:59:54
[2026-06-22 07:59:54,300.300 INFO    ] 2026-06-22 07:59:54
[2026-06-22 07:59:54,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 07:59:54,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 07:59:54,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 07:59:54,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 07:59:54,670.670 INFO    ] time= 22/06/2026 07:59:54
[2026-06-22 07:59:54,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 07:59:54,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-22 07:59:54,828.828 INFO    ] No existing commands found in stream
[2026-06-22 07:59:59,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 07:59:59,840.840 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-22 08:00:01,795.795 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:00:01,799.799 INFO    ] Checking for system updates...
[2026-06-22 08:00:02,026.026 INFO    ] 200
[2026-06-22 08:00:02,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:00:02,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:00:02,398.398 INFO    ] No update needed
[2026-06-22 08:00:02,402.402 INFO    ] Checking for camera pi updates...
[2026-06-22 08:00:02,810.810 INFO    ] 200
[2026-06-22 08:00:02,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:00:03,087.087 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:00:03,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:00:03,452.452 INFO    ] No camera update needed
[2026-06-22 08:00:03,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:00:03,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:00:03,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:00:03,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:00:05,672.672 INFO    ] ================================================
[2026-06-22 08:00:05,734.734 INFO    ] Launching Daemon at Mon Jun 22 08:00:05 IST 2026
[2026-06-22 08:00:05,797.797 INFO    ] ================================================
[2026-06-22 08:00:06,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:00:06
[2026-06-22 08:00:07,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:00:07,479.479 INFO    ] Initializing speech engine...
[2026-06-22 08:00:07,490.490 INFO    ] 2026-06-22 08:00:07
[2026-06-22 08:00:07,751.751 INFO    ] 2026-06-22 08:00:07
[2026-06-22 08:00:07,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:00:09,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:00:09,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:00:09,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:00:09,733.733 INFO    ] time= 22/06/2026 08:00:09
[2026-06-22 08:00:09,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:00:09,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:00:09,806.806 INFO    ] No existing commands found in stream
[2026-06-22 08:00:14,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:00:14,820.820 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-22 08:00:18,169.169 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:00:18,170.170 INFO    ] Checking for system updates...
[2026-06-22 08:00:18,192.192 INFO    ] 200
[2026-06-22 08:00:18,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:00:18,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:00:18,227.227 INFO    ] No update needed
[2026-06-22 08:00:18,228.228 INFO    ] Checking for camera pi updates...
[2026-06-22 08:00:18,248.248 INFO    ] 200
[2026-06-22 08:00:18,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:00:18,284.284 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:00:18,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:00:18,367.367 INFO    ] No camera update needed
[2026-06-22 08:00:18,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:00:18,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:00:18,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:00:18,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:00:20,424.424 INFO    ] ================================================
[2026-06-22 08:00:20,440.440 INFO    ] Launching Daemon at Mon Jun 22 08:00:20 IST 2026
[2026-06-22 08:00:20,452.452 INFO    ] ================================================
[2026-06-22 08:00:21,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:00:21
[2026-06-22 08:00:21,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:00:21,914.914 INFO    ] Initializing speech engine...
[2026-06-22 08:00:21,920.920 INFO    ] 2026-06-22 08:00:21
[2026-06-22 08:00:22,215.215 INFO    ] 2026-06-22 08:00:22
[2026-06-22 08:00:22,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:00:22,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:00:22,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:00:22,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:00:22,594.594 INFO    ] time= 22/06/2026 08:00:22
[2026-06-22 08:00:22,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:00:22,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:00:22,689.689 INFO    ] No existing commands found in stream
[2026-06-22 08:00:27,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:00:27,705.705 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-22 08:00:31,942.942 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:00:31,945.945 INFO    ] Checking for system updates...
[2026-06-22 08:00:31,985.985 INFO    ] 200
[2026-06-22 08:00:31,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:00:32,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:00:32,047.047 INFO    ] No update needed
[2026-06-22 08:00:32,049.049 INFO    ] Checking for camera pi updates...
[2026-06-22 08:00:32,088.088 INFO    ] 200
[2026-06-22 08:00:32,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:00:32,137.137 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:00:32,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:00:32,198.198 INFO    ] No camera update needed
[2026-06-22 08:00:32,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:00:32,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:00:32,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:00:32,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:00:34,255.255 INFO    ] ================================================
[2026-06-22 08:00:34,271.271 INFO    ] Launching Daemon at Mon Jun 22 08:00:34 IST 2026
[2026-06-22 08:00:34,282.282 INFO    ] ================================================
[2026-06-22 08:00:34,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:00:34
[2026-06-22 08:00:35,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:00:35,709.709 INFO    ] Initializing speech engine...
[2026-06-22 08:00:35,727.727 INFO    ] 2026-06-22 08:00:35
[2026-06-22 08:00:35,991.991 INFO    ] 2026-06-22 08:00:35
[2026-06-22 08:00:36,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:00:36,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:00:36,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:00:36,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:00:36,358.358 INFO    ] time= 22/06/2026 08:00:36
[2026-06-22 08:00:36,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:00:36,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:00:36,479.479 INFO    ] No existing commands found in stream
[2026-06-22 08:00:41,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:00:41,494.494 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-22 08:00:42,912.912 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:00:42,914.914 INFO    ] Checking for system updates...
[2026-06-22 08:00:42,958.958 INFO    ] 200
[2026-06-22 08:00:42,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:00:43,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:00:43,022.022 INFO    ] No update needed
[2026-06-22 08:00:43,025.025 INFO    ] Checking for camera pi updates...
[2026-06-22 08:00:43,066.066 INFO    ] 200
[2026-06-22 08:00:43,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:00:43,114.114 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:00:43,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:00:43,165.165 INFO    ] No camera update needed
[2026-06-22 08:00:43,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:00:43,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:00:43,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:00:43,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:00:45,221.221 INFO    ] ================================================
[2026-06-22 08:00:45,237.237 INFO    ] Launching Daemon at Mon Jun 22 08:00:45 IST 2026
[2026-06-22 08:00:45,249.249 INFO    ] ================================================
[2026-06-22 08:00:45,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:00:45
[2026-06-22 08:00:46,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:00:46,666.666 INFO    ] Initializing speech engine...
[2026-06-22 08:00:46,676.676 INFO    ] 2026-06-22 08:00:46
[2026-06-22 08:00:46,923.923 INFO    ] 2026-06-22 08:00:46
[2026-06-22 08:00:46,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:00:47,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:00:47,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:00:47,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:00:47,300.300 INFO    ] time= 22/06/2026 08:00:47
[2026-06-22 08:00:47,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:00:47,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:00:47,478.478 INFO    ] No existing commands found in stream
[2026-06-22 08:00:52,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:00:52,511.511 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-22 08:00:55,413.413 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:00:55,416.416 INFO    ] Checking for system updates...
[2026-06-22 08:00:55,452.452 INFO    ] 200
[2026-06-22 08:00:55,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:00:55,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:00:55,510.510 INFO    ] No update needed
[2026-06-22 08:00:55,512.512 INFO    ] Checking for camera pi updates...
[2026-06-22 08:00:55,550.550 INFO    ] 200
[2026-06-22 08:00:55,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:00:55,593.593 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:00:55,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:00:55,646.646 INFO    ] No camera update needed
[2026-06-22 08:00:55,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:00:55,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:00:55,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:00:55,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:00:57,702.702 INFO    ] ================================================
[2026-06-22 08:00:57,718.718 INFO    ] Launching Daemon at Mon Jun 22 08:00:57 IST 2026
[2026-06-22 08:00:57,729.729 INFO    ] ================================================
[2026-06-22 08:00:58,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:00:58
[2026-06-22 08:00:58,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:00:59,172.172 INFO    ] Initializing speech engine...
[2026-06-22 08:00:59,180.180 INFO    ] 2026-06-22 08:00:59
[2026-06-22 08:00:59,451.451 INFO    ] 2026-06-22 08:00:59
[2026-06-22 08:00:59,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:00:59,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:00:59,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:00:59,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:00:59,927.927 INFO    ] time= 22/06/2026 08:00:59
[2026-06-22 08:00:59,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:01:00,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:01:00,068.068 INFO    ] No existing commands found in stream
[2026-06-22 08:01:05,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:01:05,080.080 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-22 08:01:07,036.036 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:01:07,039.039 INFO    ] Checking for system updates...
[2026-06-22 08:01:07,075.075 INFO    ] 200
[2026-06-22 08:01:07,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:01:07,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:01:07,139.139 INFO    ] No update needed
[2026-06-22 08:01:07,141.141 INFO    ] Checking for camera pi updates...
[2026-06-22 08:01:07,175.175 INFO    ] 200
[2026-06-22 08:01:07,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:01:07,222.222 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:01:07,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:01:07,272.272 INFO    ] No camera update needed
[2026-06-22 08:01:07,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:01:07,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:01:07,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:01:07,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:01:09,328.328 INFO    ] ================================================
[2026-06-22 08:01:09,344.344 INFO    ] Launching Daemon at Mon Jun 22 08:01:09 IST 2026
[2026-06-22 08:01:09,355.355 INFO    ] ================================================
[2026-06-22 08:01:09,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:01:09
[2026-06-22 08:01:10,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:01:10,783.783 INFO    ] Initializing speech engine...
[2026-06-22 08:01:10,808.808 INFO    ] 2026-06-22 08:01:10
[2026-06-22 08:01:11,080.080 INFO    ] 2026-06-22 08:01:11
[2026-06-22 08:01:11,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:01:12,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:01:12,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:01:12,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:01:12,714.714 INFO    ] time= 22/06/2026 08:01:12
[2026-06-22 08:01:12,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:01:12,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:01:12,775.775 INFO    ] No existing commands found in stream
[2026-06-22 08:01:17,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:01:17,789.789 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-22 08:01:21,415.415 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:01:21,418.418 INFO    ] Checking for system updates...
[2026-06-22 08:01:21,455.455 INFO    ] 200
[2026-06-22 08:01:21,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:01:21,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:01:21,519.519 INFO    ] No update needed
[2026-06-22 08:01:21,521.521 INFO    ] Checking for camera pi updates...
[2026-06-22 08:01:21,555.555 INFO    ] 200
[2026-06-22 08:01:21,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:01:21,598.598 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:01:21,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:01:21,709.709 INFO    ] No camera update needed
[2026-06-22 08:01:21,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:01:21,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:01:21,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:01:21,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:01:23,765.765 INFO    ] ================================================
[2026-06-22 08:01:23,781.781 INFO    ] Launching Daemon at Mon Jun 22 08:01:23 IST 2026
[2026-06-22 08:01:23,793.793 INFO    ] ================================================
[2026-06-22 08:01:24,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:01:24
[2026-06-22 08:01:24,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:01:25,208.208 INFO    ] Initializing speech engine...
[2026-06-22 08:01:25,225.225 INFO    ] 2026-06-22 08:01:25
[2026-06-22 08:01:25,508.508 INFO    ] 2026-06-22 08:01:25
[2026-06-22 08:01:25,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:01:25,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:01:25,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:01:25,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:01:25,888.888 INFO    ] time= 22/06/2026 08:01:25
[2026-06-22 08:01:25,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:01:25,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:01:26,015.015 INFO    ] No existing commands found in stream
[2026-06-22 08:01:31,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:01:31,033.033 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-22 08:01:34,369.369 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:01:34,371.371 INFO    ] Checking for system updates...
[2026-06-22 08:01:34,407.407 INFO    ] 200
[2026-06-22 08:01:34,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:01:34,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:01:34,466.466 INFO    ] No update needed
[2026-06-22 08:01:34,469.469 INFO    ] Checking for camera pi updates...
[2026-06-22 08:01:34,507.507 INFO    ] 200
[2026-06-22 08:01:34,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:01:34,553.553 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:01:34,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:01:34,640.640 INFO    ] No camera update needed
[2026-06-22 08:01:34,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:01:34,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:01:34,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:01:34,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:01:36,697.697 INFO    ] ================================================
[2026-06-22 08:01:36,713.713 INFO    ] Launching Daemon at Mon Jun 22 08:01:36 IST 2026
[2026-06-22 08:01:36,725.725 INFO    ] ================================================
[2026-06-22 08:01:37,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:01:37
[2026-06-22 08:01:37,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:01:38,075.075 INFO    ] Initializing speech engine...
[2026-06-22 08:01:38,082.082 INFO    ] 2026-06-22 08:01:38
[2026-06-22 08:01:38,379.379 INFO    ] 2026-06-22 08:01:38
[2026-06-22 08:01:38,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:01:38,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:01:38,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:01:38,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:01:38,755.755 INFO    ] time= 22/06/2026 08:01:38
[2026-06-22 08:01:38,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:01:38,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:01:38,880.880 INFO    ] No existing commands found in stream
[2026-06-22 08:01:43,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:01:43,918.918 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-22 08:01:46,266.266 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:01:46,268.268 INFO    ] Checking for system updates...
[2026-06-22 08:01:46,307.307 INFO    ] 200
[2026-06-22 08:01:46,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:01:46,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:01:46,365.365 INFO    ] No update needed
[2026-06-22 08:01:46,368.368 INFO    ] Checking for camera pi updates...
[2026-06-22 08:01:46,402.402 INFO    ] 200
[2026-06-22 08:01:46,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:01:46,445.445 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:01:46,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:01:46,629.629 INFO    ] No camera update needed
[2026-06-22 08:01:46,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:01:46,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:01:46,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:01:46,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:01:48,685.685 INFO    ] ================================================
[2026-06-22 08:01:48,701.701 INFO    ] Launching Daemon at Mon Jun 22 08:01:48 IST 2026
[2026-06-22 08:01:48,712.712 INFO    ] ================================================
[2026-06-22 08:01:49,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:01:49
[2026-06-22 08:01:49,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:01:50,086.086 INFO    ] Initializing speech engine...
[2026-06-22 08:01:50,092.092 INFO    ] 2026-06-22 08:01:50
[2026-06-22 08:01:50,360.360 INFO    ] 2026-06-22 08:01:50
[2026-06-22 08:01:50,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:01:50,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:01:50,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:01:50,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:01:50,699.699 INFO    ] time= 22/06/2026 08:01:50
[2026-06-22 08:01:50,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:01:50,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:01:50,829.829 INFO    ] No existing commands found in stream
[2026-06-22 08:01:55,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:01:55,868.868 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-22 08:01:56,521.521 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:01:56,524.524 INFO    ] Checking for system updates...
[2026-06-22 08:01:56,560.560 INFO    ] 200
[2026-06-22 08:01:56,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:01:56,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:01:56,619.619 INFO    ] No update needed
[2026-06-22 08:01:56,621.621 INFO    ] Checking for camera pi updates...
[2026-06-22 08:01:56,655.655 INFO    ] 200
[2026-06-22 08:01:56,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:01:56,699.699 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:01:56,781.781 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:01:56,783.783 INFO    ] No camera update needed
[2026-06-22 08:01:56,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:01:56,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:01:56,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:01:56,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:01:58,839.839 INFO    ] ================================================
[2026-06-22 08:01:58,855.855 INFO    ] Launching Daemon at Mon Jun 22 08:01:58 IST 2026
[2026-06-22 08:01:58,866.866 INFO    ] ================================================
[2026-06-22 08:01:59,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:01:59
[2026-06-22 08:02:00,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:02:00,428.428 INFO    ] Initializing speech engine...
[2026-06-22 08:02:00,442.442 INFO    ] 2026-06-22 08:02:00
[2026-06-22 08:02:00,721.721 INFO    ] 2026-06-22 08:02:00
[2026-06-22 08:02:00,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:02:00,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:02:00,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:02:01,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:02:01,110.110 INFO    ] time= 22/06/2026 08:02:01
[2026-06-22 08:02:01,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:02:01,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:02:01,237.237 INFO    ] No existing commands found in stream
[2026-06-22 08:02:06,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:02:06,269.269 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-22 08:02:06,965.965 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:02:06,968.968 INFO    ] Checking for system updates...
[2026-06-22 08:02:07,011.011 INFO    ] 200
[2026-06-22 08:02:07,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:02:07,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:02:07,069.069 INFO    ] No update needed
[2026-06-22 08:02:07,071.071 INFO    ] Checking for camera pi updates...
[2026-06-22 08:02:07,108.108 INFO    ] 200
[2026-06-22 08:02:07,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:02:07,152.152 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:02:07,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:02:07,255.255 INFO    ] No camera update needed
[2026-06-22 08:02:07,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:02:07,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:02:07,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:02:07,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:02:09,312.312 INFO    ] ================================================
[2026-06-22 08:02:09,327.327 INFO    ] Launching Daemon at Mon Jun 22 08:02:09 IST 2026
[2026-06-22 08:02:09,338.338 INFO    ] ================================================
[2026-06-22 08:02:09,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:02:09
[2026-06-22 08:02:10,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:02:10,706.706 INFO    ] Initializing speech engine...
[2026-06-22 08:02:10,717.717 INFO    ] 2026-06-22 08:02:10
[2026-06-22 08:02:10,978.978 INFO    ] 2026-06-22 08:02:10
[2026-06-22 08:02:11,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:02:12,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:02:12,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:02:12,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:02:12,454.454 INFO    ] time= 22/06/2026 08:02:12
[2026-06-22 08:02:12,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:02:12,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:02:12,521.521 INFO    ] No existing commands found in stream
[2026-06-22 08:02:17,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:02:17,539.539 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-22 08:02:21,376.376 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:02:21,379.379 INFO    ] Checking for system updates...
[2026-06-22 08:02:21,415.415 INFO    ] 200
[2026-06-22 08:02:21,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:02:21,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:02:21,474.474 INFO    ] No update needed
[2026-06-22 08:02:21,477.477 INFO    ] Checking for camera pi updates...
[2026-06-22 08:02:21,511.511 INFO    ] 200
[2026-06-22 08:02:21,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:02:21,555.555 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:02:21,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:02:21,603.603 INFO    ] No camera update needed
[2026-06-22 08:02:21,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:02:21,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:02:21,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:02:21,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:02:23,661.661 INFO    ] ================================================
[2026-06-22 08:02:23,677.677 INFO    ] Launching Daemon at Mon Jun 22 08:02:23 IST 2026
[2026-06-22 08:02:23,689.689 INFO    ] ================================================
[2026-06-22 08:02:24,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:02:24
[2026-06-22 08:02:24,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:02:25,203.203 INFO    ] Initializing speech engine...
[2026-06-22 08:02:25,213.213 INFO    ] 2026-06-22 08:02:25
[2026-06-22 08:02:25,484.484 INFO    ] 2026-06-22 08:02:25
[2026-06-22 08:02:25,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:02:25,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:02:25,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:02:25,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:02:25,921.921 INFO    ] time= 22/06/2026 08:02:25
[2026-06-22 08:02:25,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:02:26,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:02:26,115.115 INFO    ] No existing commands found in stream
[2026-06-22 08:02:31,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:02:31,130.130 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-22 08:02:32,190.190 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:02:32,193.193 INFO    ] Checking for system updates...
[2026-06-22 08:02:32,237.237 INFO    ] 200
[2026-06-22 08:02:32,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:02:32,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:02:32,300.300 INFO    ] No update needed
[2026-06-22 08:02:32,302.302 INFO    ] Checking for camera pi updates...
[2026-06-22 08:02:32,346.346 INFO    ] 200
[2026-06-22 08:02:32,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:02:32,392.392 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:02:32,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:02:32,448.448 INFO    ] No camera update needed
[2026-06-22 08:02:32,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:02:32,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:02:32,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:02:32,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:02:34,509.509 INFO    ] ================================================
[2026-06-22 08:02:34,525.525 INFO    ] Launching Daemon at Mon Jun 22 08:02:34 IST 2026
[2026-06-22 08:02:34,537.537 INFO    ] ================================================
[2026-06-22 08:02:35,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:02:35
[2026-06-22 08:02:35,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:02:36,009.009 INFO    ] Initializing speech engine...
[2026-06-22 08:02:36,030.030 INFO    ] 2026-06-22 08:02:36
[2026-06-22 08:02:36,301.301 INFO    ] 2026-06-22 08:02:36
[2026-06-22 08:02:36,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:02:36,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:02:36,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:02:36,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:02:36,805.805 INFO    ] time= 22/06/2026 08:02:36
[2026-06-22 08:02:36,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:02:36,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:02:36,989.989 INFO    ] No existing commands found in stream
[2026-06-22 08:02:42,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:02:42,019.019 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-22 08:02:43,534.534 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:02:43,537.537 INFO    ] Checking for system updates...
[2026-06-22 08:02:43,578.578 INFO    ] 200
[2026-06-22 08:02:43,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:02:43,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:02:43,645.645 INFO    ] No update needed
[2026-06-22 08:02:43,648.648 INFO    ] Checking for camera pi updates...
[2026-06-22 08:02:43,682.682 INFO    ] 200
[2026-06-22 08:02:43,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:02:43,726.726 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:02:43,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:02:43,802.802 INFO    ] No camera update needed
[2026-06-22 08:02:43,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:02:43,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:02:43,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:02:43,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:02:45,861.861 INFO    ] ================================================
[2026-06-22 08:02:45,876.876 INFO    ] Launching Daemon at Mon Jun 22 08:02:45 IST 2026
[2026-06-22 08:02:45,888.888 INFO    ] ================================================
[2026-06-22 08:02:46,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:02:46
[2026-06-22 08:02:47,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:02:47,397.397 INFO    ] Initializing speech engine...
[2026-06-22 08:02:47,415.415 INFO    ] 2026-06-22 08:02:47
[2026-06-22 08:02:47,693.693 INFO    ] 2026-06-22 08:02:47
[2026-06-22 08:02:47,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:02:47,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:02:47,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:02:48,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:02:48,030.030 INFO    ] time= 22/06/2026 08:02:48
[2026-06-22 08:02:48,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:02:48,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:02:48,104.104 INFO    ] No existing commands found in stream
[2026-06-22 08:02:53,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:02:53,119.119 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-22 08:02:53,691.691 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:02:53,694.694 INFO    ] Checking for system updates...
[2026-06-22 08:02:53,736.736 INFO    ] 200
[2026-06-22 08:02:53,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:02:53,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:02:53,771.771 INFO    ] No update needed
[2026-06-22 08:02:53,772.772 INFO    ] Checking for camera pi updates...
[2026-06-22 08:02:53,793.793 INFO    ] 200
[2026-06-22 08:02:53,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:02:53,818.818 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:02:53,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:02:53,898.898 INFO    ] No camera update needed
[2026-06-22 08:02:53,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:02:53,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:02:53,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:02:53,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:02:55,954.954 INFO    ] ================================================
[2026-06-22 08:02:55,970.970 INFO    ] Launching Daemon at Mon Jun 22 08:02:55 IST 2026
[2026-06-22 08:02:55,982.982 INFO    ] ================================================
[2026-06-22 08:02:56,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:02:56
[2026-06-22 08:02:57,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:02:57,305.305 INFO    ] Initializing speech engine...
[2026-06-22 08:02:57,312.312 INFO    ] 2026-06-22 08:02:57
[2026-06-22 08:02:57,589.589 INFO    ] 2026-06-22 08:02:57
[2026-06-22 08:02:57,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:02:57,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:02:57,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:02:57,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:02:57,956.956 INFO    ] time= 22/06/2026 08:02:57
[2026-06-22 08:02:57,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:02:57,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:02:58,058.058 INFO    ] No existing commands found in stream
[2026-06-22 08:03:03,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:03:03,069.069 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-22 08:03:06,000.000 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:03:06,003.003 INFO    ] Checking for system updates...
[2026-06-22 08:03:06,046.046 INFO    ] 200
[2026-06-22 08:03:06,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:03:06,128.128 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:03:06,131.131 INFO    ] No update needed
[2026-06-22 08:03:06,135.135 INFO    ] Checking for camera pi updates...
[2026-06-22 08:03:06,169.169 INFO    ] 200
[2026-06-22 08:03:06,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:03:06,216.216 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:03:06,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:03:06,290.290 INFO    ] No camera update needed
[2026-06-22 08:03:06,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:03:06,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:03:06,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:03:06,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:03:08,347.347 INFO    ] ================================================
[2026-06-22 08:03:08,363.363 INFO    ] Launching Daemon at Mon Jun 22 08:03:08 IST 2026
[2026-06-22 08:03:08,374.374 INFO    ] ================================================
[2026-06-22 08:03:08,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:03:08
[2026-06-22 08:03:09,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:03:09,775.775 INFO    ] Initializing speech engine...
[2026-06-22 08:03:09,789.789 INFO    ] 2026-06-22 08:03:09
[2026-06-22 08:03:10,072.072 INFO    ] 2026-06-22 08:03:10
[2026-06-22 08:03:10,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:03:12,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:03:12,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:03:12,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:03:12,444.444 INFO    ] time= 22/06/2026 08:03:12
[2026-06-22 08:03:12,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:03:12,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:03:12,569.569 INFO    ] No existing commands found in stream
[2026-06-22 08:03:17,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:03:17,587.587 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-22 08:03:19,066.066 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:03:19,067.067 INFO    ] Checking for system updates...
[2026-06-22 08:03:19,090.090 INFO    ] 200
[2026-06-22 08:03:19,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:03:19,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:03:19,122.122 INFO    ] No update needed
[2026-06-22 08:03:19,124.124 INFO    ] Checking for camera pi updates...
[2026-06-22 08:03:19,143.143 INFO    ] 200
[2026-06-22 08:03:19,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:03:19,169.169 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:03:19,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:03:19,249.249 INFO    ] No camera update needed
[2026-06-22 08:03:19,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:03:19,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:03:19,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:03:19,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:03:21,305.305 INFO    ] ================================================
[2026-06-22 08:03:21,321.321 INFO    ] Launching Daemon at Mon Jun 22 08:03:21 IST 2026
[2026-06-22 08:03:21,332.332 INFO    ] ================================================
[2026-06-22 08:03:21,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:03:21
[2026-06-22 08:03:22,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:03:22,774.774 INFO    ] Initializing speech engine...
[2026-06-22 08:03:22,784.784 INFO    ] 2026-06-22 08:03:22
[2026-06-22 08:03:23,078.078 INFO    ] 2026-06-22 08:03:23
[2026-06-22 08:03:23,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:03:23,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:03:23,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:03:23,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:03:23,459.459 INFO    ] time= 22/06/2026 08:03:23
[2026-06-22 08:03:23,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:03:23,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:03:23,575.575 INFO    ] No existing commands found in stream
[2026-06-22 08:03:28,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:03:28,608.608 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-22 08:03:29,903.903 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:03:29,905.905 INFO    ] Checking for system updates...
[2026-06-22 08:03:29,941.941 INFO    ] 200
[2026-06-22 08:03:29,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:03:30,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:03:30,007.007 INFO    ] No update needed
[2026-06-22 08:03:30,009.009 INFO    ] Checking for camera pi updates...
[2026-06-22 08:03:30,042.042 INFO    ] 200
[2026-06-22 08:03:30,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:03:30,091.091 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:03:30,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:03:30,189.189 INFO    ] No camera update needed
[2026-06-22 08:03:30,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:03:30,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:03:30,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:03:30,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:03:32,247.247 INFO    ] ================================================
[2026-06-22 08:03:32,263.263 INFO    ] Launching Daemon at Mon Jun 22 08:03:32 IST 2026
[2026-06-22 08:03:32,274.274 INFO    ] ================================================
[2026-06-22 08:03:32,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:03:32
[2026-06-22 08:03:33,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:03:33,764.764 INFO    ] Initializing speech engine...
[2026-06-22 08:03:33,773.773 INFO    ] 2026-06-22 08:03:33
[2026-06-22 08:03:34,066.066 INFO    ] 2026-06-22 08:03:34
[2026-06-22 08:03:34,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:03:34,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:03:34,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:03:34,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:03:34,444.444 INFO    ] time= 22/06/2026 08:03:34
[2026-06-22 08:03:34,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:03:34,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:03:34,571.571 INFO    ] No existing commands found in stream
[2026-06-22 08:03:39,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:03:39,586.586 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-22 08:03:42,996.996 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:03:42,999.999 INFO    ] Checking for system updates...
[2026-06-22 08:03:43,036.036 INFO    ] 200
[2026-06-22 08:03:43,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:03:43,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:03:43,093.093 INFO    ] No update needed
[2026-06-22 08:03:43,095.095 INFO    ] Checking for camera pi updates...
[2026-06-22 08:03:43,130.130 INFO    ] 200
[2026-06-22 08:03:43,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:03:43,182.182 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:03:43,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:03:43,260.260 INFO    ] No camera update needed
[2026-06-22 08:03:43,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:03:43,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:03:43,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:03:43,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:03:45,316.316 INFO    ] ================================================
[2026-06-22 08:03:45,332.332 INFO    ] Launching Daemon at Mon Jun 22 08:03:45 IST 2026
[2026-06-22 08:03:45,343.343 INFO    ] ================================================
[2026-06-22 08:03:45,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:03:45
[2026-06-22 08:03:46,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:03:46,683.683 INFO    ] Initializing speech engine...
[2026-06-22 08:03:46,691.691 INFO    ] 2026-06-22 08:03:46
[2026-06-22 08:03:46,989.989 INFO    ] 2026-06-22 08:03:46
[2026-06-22 08:03:47,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:03:47,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:03:47,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:03:47,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:03:47,344.344 INFO    ] time= 22/06/2026 08:03:47
[2026-06-22 08:03:47,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:03:47,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:03:47,425.425 INFO    ] No existing commands found in stream
[2026-06-22 08:03:52,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:03:52,439.439 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-22 08:03:54,645.645 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:03:54,648.648 INFO    ] Checking for system updates...
[2026-06-22 08:03:54,685.685 INFO    ] 200
[2026-06-22 08:03:54,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:03:54,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:03:54,750.750 INFO    ] No update needed
[2026-06-22 08:03:54,753.753 INFO    ] Checking for camera pi updates...
[2026-06-22 08:03:54,786.786 INFO    ] 200
[2026-06-22 08:03:54,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:03:54,846.846 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:03:55,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:03:55,031.031 INFO    ] No camera update needed
[2026-06-22 08:03:55,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:03:55,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:03:55,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:03:55,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:03:57,088.088 INFO    ] ================================================
[2026-06-22 08:03:57,103.103 INFO    ] Launching Daemon at Mon Jun 22 08:03:57 IST 2026
[2026-06-22 08:03:57,115.115 INFO    ] ================================================
[2026-06-22 08:03:57,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:03:57
[2026-06-22 08:03:58,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:03:58,662.662 INFO    ] Initializing speech engine...
[2026-06-22 08:03:58,668.668 INFO    ] 2026-06-22 08:03:58
[2026-06-22 08:03:58,948.948 INFO    ] 2026-06-22 08:03:58
[2026-06-22 08:03:58,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:03:59,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:03:59,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:03:59,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:03:59,406.406 INFO    ] time= 22/06/2026 08:03:59
[2026-06-22 08:03:59,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:03:59,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:03:59,548.548 INFO    ] No existing commands found in stream
[2026-06-22 08:04:04,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:04:04,564.564 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-22 08:04:08,849.849 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:04:08,852.852 INFO    ] Checking for system updates...
[2026-06-22 08:04:08,890.890 INFO    ] 200
[2026-06-22 08:04:08,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:04:08,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:04:08,949.949 INFO    ] No update needed
[2026-06-22 08:04:08,952.952 INFO    ] Checking for camera pi updates...
[2026-06-22 08:04:08,988.988 INFO    ] 200
[2026-06-22 08:04:08,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:04:09,033.033 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:04:09,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:04:09,084.084 INFO    ] No camera update needed
[2026-06-22 08:04:09,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:04:09,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:04:09,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:04:09,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:04:11,145.145 INFO    ] ================================================
[2026-06-22 08:04:11,161.161 INFO    ] Launching Daemon at Mon Jun 22 08:04:11 IST 2026
[2026-06-22 08:04:11,172.172 INFO    ] ================================================
[2026-06-22 08:04:11,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:04:11
[2026-06-22 08:04:12,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:04:12,526.526 INFO    ] Initializing speech engine...
[2026-06-22 08:04:12,535.535 INFO    ] 2026-06-22 08:04:12
[2026-06-22 08:04:12,781.781 INFO    ] 2026-06-22 08:04:12
[2026-06-22 08:04:12,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:04:13,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:04:13,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:04:13,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:04:13,338.338 INFO    ] time= 22/06/2026 08:04:13
[2026-06-22 08:04:13,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:04:13,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:04:13,486.486 INFO    ] No existing commands found in stream
[2026-06-22 08:04:18,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:04:18,505.505 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-22 08:04:20,928.928 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:04:20,931.931 INFO    ] Checking for system updates...
[2026-06-22 08:04:20,968.968 INFO    ] 200
[2026-06-22 08:04:20,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:04:21,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:04:21,034.034 INFO    ] No update needed
[2026-06-22 08:04:21,037.037 INFO    ] Checking for camera pi updates...
[2026-06-22 08:04:21,072.072 INFO    ] 200
[2026-06-22 08:04:21,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:04:21,115.115 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:04:21,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:04:21,212.212 INFO    ] No camera update needed
[2026-06-22 08:04:21,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:04:21,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:04:21,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:04:21,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:04:23,269.269 INFO    ] ================================================
[2026-06-22 08:04:23,285.285 INFO    ] Launching Daemon at Mon Jun 22 08:04:23 IST 2026
[2026-06-22 08:04:23,295.295 INFO    ] ================================================
[2026-06-22 08:04:23,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:04:23
[2026-06-22 08:04:24,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:04:24,638.638 INFO    ] Initializing speech engine...
[2026-06-22 08:04:24,647.647 INFO    ] 2026-06-22 08:04:24
[2026-06-22 08:04:24,894.894 INFO    ] 2026-06-22 08:04:24
[2026-06-22 08:04:24,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:04:25,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:04:25,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:04:25,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:04:25,363.363 INFO    ] time= 22/06/2026 08:04:25
[2026-06-22 08:04:25,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:04:25,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:04:25,506.506 INFO    ] No existing commands found in stream
[2026-06-22 08:04:30,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:04:30,521.521 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-22 08:04:32,865.865 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:04:32,868.868 INFO    ] Checking for system updates...
[2026-06-22 08:04:32,907.907 INFO    ] 200
[2026-06-22 08:04:32,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:04:32,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:04:32,966.966 INFO    ] No update needed
[2026-06-22 08:04:32,968.968 INFO    ] Checking for camera pi updates...
[2026-06-22 08:04:33,006.006 INFO    ] 200
[2026-06-22 08:04:33,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:04:33,049.049 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:04:33,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:04:33,118.118 INFO    ] No camera update needed
[2026-06-22 08:04:33,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:04:33,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:04:33,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:04:33,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:04:35,174.174 INFO    ] ================================================
[2026-06-22 08:04:35,189.189 INFO    ] Launching Daemon at Mon Jun 22 08:04:35 IST 2026
[2026-06-22 08:04:35,200.200 INFO    ] ================================================
[2026-06-22 08:04:35,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:04:35
[2026-06-22 08:04:36,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:04:36,637.637 INFO    ] Initializing speech engine...
[2026-06-22 08:04:36,644.644 INFO    ] 2026-06-22 08:04:36
[2026-06-22 08:04:36,906.906 INFO    ] 2026-06-22 08:04:36
[2026-06-22 08:04:36,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:04:37,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:04:37,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:04:37,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:04:37,362.362 INFO    ] time= 22/06/2026 08:04:37
[2026-06-22 08:04:37,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:04:37,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:04:37,511.511 INFO    ] No existing commands found in stream
[2026-06-22 08:04:42,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:04:42,526.526 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-22 08:04:44,155.155 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:04:44,157.157 INFO    ] Checking for system updates...
[2026-06-22 08:04:44,194.194 INFO    ] 200
[2026-06-22 08:04:44,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:04:44,252.252 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:04:44,254.254 INFO    ] No update needed
[2026-06-22 08:04:44,257.257 INFO    ] Checking for camera pi updates...
[2026-06-22 08:04:44,292.292 INFO    ] 200
[2026-06-22 08:04:44,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:04:44,337.337 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:04:44,383.383 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:04:44,386.386 INFO    ] No camera update needed
[2026-06-22 08:04:44,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:04:44,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:04:44,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:04:44,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:04:46,446.446 INFO    ] ================================================
[2026-06-22 08:04:46,461.461 INFO    ] Launching Daemon at Mon Jun 22 08:04:46 IST 2026
[2026-06-22 08:04:46,473.473 INFO    ] ================================================
[2026-06-22 08:04:47,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:04:47
[2026-06-22 08:04:47,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:04:47,816.816 INFO    ] Initializing speech engine...
[2026-06-22 08:04:47,823.823 INFO    ] 2026-06-22 08:04:47
[2026-06-22 08:04:48,119.119 INFO    ] 2026-06-22 08:04:48
[2026-06-22 08:04:48,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:04:48,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:04:48,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:04:48,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:04:48,496.496 INFO    ] time= 22/06/2026 08:04:48
[2026-06-22 08:04:48,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:04:48,542.542 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:04:48,620.620 INFO    ] No existing commands found in stream
[2026-06-22 08:04:53,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:04:53,635.635 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-22 08:04:57,181.181 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:04:57,184.184 INFO    ] Checking for system updates...
[2026-06-22 08:04:57,221.221 INFO    ] 200
[2026-06-22 08:04:57,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:04:57,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:04:57,287.287 INFO    ] No update needed
[2026-06-22 08:04:57,290.290 INFO    ] Checking for camera pi updates...
[2026-06-22 08:04:57,328.328 INFO    ] 200
[2026-06-22 08:04:57,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:04:57,372.372 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:04:57,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:04:57,451.451 INFO    ] No camera update needed
[2026-06-22 08:04:57,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:04:57,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:04:57,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:04:57,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:04:59,510.510 INFO    ] ================================================
[2026-06-22 08:04:59,525.525 INFO    ] Launching Daemon at Mon Jun 22 08:04:59 IST 2026
[2026-06-22 08:04:59,536.536 INFO    ] ================================================
[2026-06-22 08:05:00,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:05:00
[2026-06-22 08:05:00,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:05:01,253.253 INFO    ] Initializing speech engine...
[2026-06-22 08:05:01,297.297 INFO    ] 2026-06-22 08:05:01
[2026-06-22 08:05:01,722.722 INFO    ] 2026-06-22 08:05:01
[2026-06-22 08:05:01,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:05:02,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:05:02,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:05:02,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:05:02,299.299 INFO    ] time= 22/06/2026 08:05:02
[2026-06-22 08:05:02,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:05:02,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:05:02,442.442 INFO    ] No existing commands found in stream
[2026-06-22 08:05:07,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:05:07,457.457 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-22 08:05:08,055.055 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:05:08,058.058 INFO    ] Checking for system updates...
[2026-06-22 08:05:08,096.096 INFO    ] 200
[2026-06-22 08:05:08,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:05:08,159.159 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:05:08,162.162 INFO    ] No update needed
[2026-06-22 08:05:08,165.165 INFO    ] Checking for camera pi updates...
[2026-06-22 08:05:08,199.199 INFO    ] 200
[2026-06-22 08:05:08,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:05:08,244.244 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:05:08,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:05:08,299.299 INFO    ] No camera update needed
[2026-06-22 08:05:08,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:05:08,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:05:08,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:05:08,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:05:10,359.359 INFO    ] ================================================
[2026-06-22 08:05:10,373.373 INFO    ] Launching Daemon at Mon Jun 22 08:05:10 IST 2026
[2026-06-22 08:05:10,384.384 INFO    ] ================================================
[2026-06-22 08:05:11,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:05:11
[2026-06-22 08:05:11,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:05:12,008.008 INFO    ] Initializing speech engine...
[2026-06-22 08:05:12,020.020 INFO    ] 2026-06-22 08:05:12
[2026-06-22 08:05:12,302.302 INFO    ] 2026-06-22 08:05:12
[2026-06-22 08:05:12,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:05:12,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:05:12,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:05:12,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:05:12,781.781 INFO    ] time= 22/06/2026 08:05:12
[2026-06-22 08:05:12,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:05:12,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:05:12,977.977 INFO    ] No existing commands found in stream
[2026-06-22 08:05:18,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:05:18,013.013 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-22 08:05:20,931.931 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:05:20,934.934 INFO    ] Checking for system updates...
[2026-06-22 08:05:20,971.971 INFO    ] 200
[2026-06-22 08:05:20,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:05:21,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:05:21,028.028 INFO    ] No update needed
[2026-06-22 08:05:21,031.031 INFO    ] Checking for camera pi updates...
[2026-06-22 08:05:21,064.064 INFO    ] 200
[2026-06-22 08:05:21,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:05:21,108.108 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:05:21,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:05:21,203.203 INFO    ] No camera update needed
[2026-06-22 08:05:21,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:05:21,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:05:21,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:05:21,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:05:23,261.261 INFO    ] ================================================
[2026-06-22 08:05:23,276.276 INFO    ] Launching Daemon at Mon Jun 22 08:05:23 IST 2026
[2026-06-22 08:05:23,286.286 INFO    ] ================================================
[2026-06-22 08:05:23,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:05:23
[2026-06-22 08:05:24,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:05:24,633.633 INFO    ] Initializing speech engine...
[2026-06-22 08:05:24,639.639 INFO    ] 2026-06-22 08:05:24
[2026-06-22 08:05:24,909.909 INFO    ] 2026-06-22 08:05:24
[2026-06-22 08:05:24,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:05:25,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:05:25,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:05:25,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:05:25,375.375 INFO    ] time= 22/06/2026 08:05:25
[2026-06-22 08:05:25,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:05:25,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:05:25,563.563 INFO    ] No existing commands found in stream
[2026-06-22 08:05:30,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:05:30,593.593 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-22 08:05:34,392.392 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:05:34,395.395 INFO    ] Checking for system updates...
[2026-06-22 08:05:34,432.432 INFO    ] 200
[2026-06-22 08:05:34,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:05:34,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:05:34,507.507 INFO    ] No update needed
[2026-06-22 08:05:34,509.509 INFO    ] Checking for camera pi updates...
[2026-06-22 08:05:34,543.543 INFO    ] 200
[2026-06-22 08:05:34,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:05:34,586.586 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:05:34,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:05:34,657.657 INFO    ] No camera update needed
[2026-06-22 08:05:34,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:05:34,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:05:34,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:05:34,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:05:36,704.704 INFO    ] ================================================
[2026-06-22 08:05:36,719.719 INFO    ] Launching Daemon at Mon Jun 22 08:05:36 IST 2026
[2026-06-22 08:05:36,731.731 INFO    ] ================================================
[2026-06-22 08:05:37,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:05:37
[2026-06-22 08:05:37,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:05:38,241.241 INFO    ] Initializing speech engine...
[2026-06-22 08:05:38,248.248 INFO    ] 2026-06-22 08:05:38
[2026-06-22 08:05:38,528.528 INFO    ] 2026-06-22 08:05:38
[2026-06-22 08:05:38,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:05:38,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:05:38,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:05:38,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:05:39,020.020 INFO    ] time= 22/06/2026 08:05:38
[2026-06-22 08:05:39,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:05:39,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:05:39,231.231 INFO    ] No existing commands found in stream
[2026-06-22 08:05:44,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:05:44,260.260 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-22 08:05:45,272.272 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:05:45,276.276 INFO    ] Checking for system updates...
[2026-06-22 08:05:45,313.313 INFO    ] 200
[2026-06-22 08:05:45,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:05:45,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:05:45,372.372 INFO    ] No update needed
[2026-06-22 08:05:45,374.374 INFO    ] Checking for camera pi updates...
[2026-06-22 08:05:45,409.409 INFO    ] 200
[2026-06-22 08:05:45,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:05:45,452.452 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:05:45,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:05:45,522.522 INFO    ] No camera update needed
[2026-06-22 08:05:45,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:05:45,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:05:45,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:05:45,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:05:47,578.578 INFO    ] ================================================
[2026-06-22 08:05:47,593.593 INFO    ] Launching Daemon at Mon Jun 22 08:05:47 IST 2026
[2026-06-22 08:05:47,604.604 INFO    ] ================================================
[2026-06-22 08:05:48,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:05:48
[2026-06-22 08:05:48,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:05:49,176.176 INFO    ] Initializing speech engine...
[2026-06-22 08:05:49,185.185 INFO    ] 2026-06-22 08:05:49
[2026-06-22 08:05:49,476.476 INFO    ] 2026-06-22 08:05:49
[2026-06-22 08:05:49,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:05:49,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:05:49,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:05:49,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:05:49,899.899 INFO    ] time= 22/06/2026 08:05:49
[2026-06-22 08:05:49,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:05:49,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:05:49,988.988 INFO    ] No existing commands found in stream
[2026-06-22 08:05:55,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:05:55,006.006 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-22 08:05:55,674.674 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:05:55,676.676 INFO    ] Checking for system updates...
[2026-06-22 08:05:55,700.700 INFO    ] 200
[2026-06-22 08:05:55,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:05:55,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:05:55,742.742 INFO    ] No update needed
[2026-06-22 08:05:55,744.744 INFO    ] Checking for camera pi updates...
[2026-06-22 08:05:55,766.766 INFO    ] 200
[2026-06-22 08:05:55,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:05:55,819.819 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:05:55,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:05:55,899.899 INFO    ] No camera update needed
[2026-06-22 08:05:55,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:05:55,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:05:55,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:05:55,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:05:57,957.957 INFO    ] ================================================
[2026-06-22 08:05:57,973.973 INFO    ] Launching Daemon at Mon Jun 22 08:05:57 IST 2026
[2026-06-22 08:05:57,983.983 INFO    ] ================================================
[2026-06-22 08:05:58,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:05:58
[2026-06-22 08:05:59,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:05:59,408.408 INFO    ] Initializing speech engine...
[2026-06-22 08:05:59,413.413 INFO    ] 2026-06-22 08:05:59
[2026-06-22 08:05:59,629.629 INFO    ] 2026-06-22 08:05:59
[2026-06-22 08:05:59,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:05:59,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:05:59,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:06:00,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:06:00,014.014 INFO    ] time= 22/06/2026 08:06:00
[2026-06-22 08:06:00,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:06:00,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:06:00,141.141 INFO    ] No existing commands found in stream
[2026-06-22 08:06:05,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:06:05,154.154 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-22 08:06:07,285.285 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:06:07,288.288 INFO    ] Checking for system updates...
[2026-06-22 08:06:07,327.327 INFO    ] 200
[2026-06-22 08:06:07,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:06:07,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:06:07,384.384 INFO    ] No update needed
[2026-06-22 08:06:07,386.386 INFO    ] Checking for camera pi updates...
[2026-06-22 08:06:07,424.424 INFO    ] 200
[2026-06-22 08:06:07,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:06:07,468.468 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:06:07,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:06:07,551.551 INFO    ] No camera update needed
[2026-06-22 08:06:07,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:06:07,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:06:07,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:06:07,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:06:09,606.606 INFO    ] ================================================
[2026-06-22 08:06:09,621.621 INFO    ] Launching Daemon at Mon Jun 22 08:06:09 IST 2026
[2026-06-22 08:06:09,632.632 INFO    ] ================================================
[2026-06-22 08:06:10,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:06:10
[2026-06-22 08:06:10,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:06:10,982.982 INFO    ] Initializing speech engine...
[2026-06-22 08:06:11,003.003 INFO    ] 2026-06-22 08:06:10
[2026-06-22 08:06:11,266.266 INFO    ] 2026-06-22 08:06:11
[2026-06-22 08:06:11,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:06:11,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:06:11,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:06:11,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:06:11,637.637 INFO    ] time= 22/06/2026 08:06:11
[2026-06-22 08:06:11,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:06:11,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:06:11,739.739 INFO    ] No existing commands found in stream
[2026-06-22 08:06:16,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:06:16,757.757 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-22 08:06:18,449.449 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:06:18,451.451 INFO    ] Checking for system updates...
[2026-06-22 08:06:18,491.491 INFO    ] 200
[2026-06-22 08:06:18,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:06:18,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:06:18,551.551 INFO    ] No update needed
[2026-06-22 08:06:18,553.553 INFO    ] Checking for camera pi updates...
[2026-06-22 08:06:18,587.587 INFO    ] 200
[2026-06-22 08:06:18,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:06:18,635.635 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:06:18,738.738 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:06:18,741.741 INFO    ] No camera update needed
[2026-06-22 08:06:18,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:06:18,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:06:18,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:06:18,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:06:20,800.800 INFO    ] ================================================
[2026-06-22 08:06:20,815.815 INFO    ] Launching Daemon at Mon Jun 22 08:06:20 IST 2026
[2026-06-22 08:06:20,826.826 INFO    ] ================================================
[2026-06-22 08:06:21,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:06:21
[2026-06-22 08:06:22,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:06:22,459.459 INFO    ] Initializing speech engine...
[2026-06-22 08:06:22,466.466 INFO    ] 2026-06-22 08:06:22
[2026-06-22 08:06:22,765.765 INFO    ] 2026-06-22 08:06:22
[2026-06-22 08:06:22,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:06:22,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:06:23,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:06:23,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:06:23,203.203 INFO    ] time= 22/06/2026 08:06:23
[2026-06-22 08:06:23,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:06:23,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:06:23,378.378 INFO    ] No existing commands found in stream
[2026-06-22 08:06:28,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:06:28,410.410 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-22 08:06:32,429.429 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:06:32,432.432 INFO    ] Checking for system updates...
[2026-06-22 08:06:32,477.477 INFO    ] 200
[2026-06-22 08:06:32,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:06:32,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:06:32,553.553 INFO    ] No update needed
[2026-06-22 08:06:32,557.557 INFO    ] Checking for camera pi updates...
[2026-06-22 08:06:32,599.599 INFO    ] 200
[2026-06-22 08:06:32,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:06:32,649.649 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:06:32,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:06:32,709.709 INFO    ] No camera update needed
[2026-06-22 08:06:32,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:06:32,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:06:32,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:06:32,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:06:34,764.764 INFO    ] ================================================
[2026-06-22 08:06:34,781.781 INFO    ] Launching Daemon at Mon Jun 22 08:06:34 IST 2026
[2026-06-22 08:06:34,792.792 INFO    ] ================================================
[2026-06-22 08:06:35,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:06:35
[2026-06-22 08:06:36,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:06:36,416.416 INFO    ] Initializing speech engine...
[2026-06-22 08:06:36,425.425 INFO    ] 2026-06-22 08:06:36
[2026-06-22 08:06:36,682.682 INFO    ] 2026-06-22 08:06:36
[2026-06-22 08:06:36,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:06:36,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:06:36,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:06:37,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:06:37,141.141 INFO    ] time= 22/06/2026 08:06:37
[2026-06-22 08:06:37,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:06:37,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:06:37,310.310 INFO    ] No existing commands found in stream
[2026-06-22 08:06:42,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:06:42,325.325 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-22 08:06:45,504.504 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:06:45,505.505 INFO    ] Checking for system updates...
[2026-06-22 08:06:45,526.526 INFO    ] 200
[2026-06-22 08:06:45,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:06:45,560.560 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:06:45,561.561 INFO    ] No update needed
[2026-06-22 08:06:45,563.563 INFO    ] Checking for camera pi updates...
[2026-06-22 08:06:45,582.582 INFO    ] 200
[2026-06-22 08:06:45,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:06:45,607.607 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:06:45,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:06:45,693.693 INFO    ] No camera update needed
[2026-06-22 08:06:45,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:06:45,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:06:45,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:06:45,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:06:47,754.754 INFO    ] ================================================
[2026-06-22 08:06:47,769.769 INFO    ] Launching Daemon at Mon Jun 22 08:06:47 IST 2026
[2026-06-22 08:06:47,780.780 INFO    ] ================================================
[2026-06-22 08:06:48,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:06:48
[2026-06-22 08:06:48,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:06:49,178.178 INFO    ] Initializing speech engine...
[2026-06-22 08:06:49,186.186 INFO    ] 2026-06-22 08:06:49
[2026-06-22 08:06:49,456.456 INFO    ] 2026-06-22 08:06:49
[2026-06-22 08:06:49,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:06:49,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:06:49,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:06:49,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:06:49,788.788 INFO    ] time= 22/06/2026 08:06:49
[2026-06-22 08:06:49,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:06:49,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:06:49,897.897 INFO    ] No existing commands found in stream
[2026-06-22 08:06:54,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:06:54,912.912 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-22 08:06:57,039.039 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:06:57,042.042 INFO    ] Checking for system updates...
[2026-06-22 08:06:57,082.082 INFO    ] 200
[2026-06-22 08:06:57,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:06:57,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:06:57,146.146 INFO    ] No update needed
[2026-06-22 08:06:57,148.148 INFO    ] Checking for camera pi updates...
[2026-06-22 08:06:57,186.186 INFO    ] 200
[2026-06-22 08:06:57,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:06:57,238.238 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:06:57,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:06:57,320.320 INFO    ] No camera update needed
[2026-06-22 08:06:57,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:06:57,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:06:57,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:06:57,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:06:59,377.377 INFO    ] ================================================
[2026-06-22 08:06:59,392.392 INFO    ] Launching Daemon at Mon Jun 22 08:06:59 IST 2026
[2026-06-22 08:06:59,402.402 INFO    ] ================================================
[2026-06-22 08:06:59,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:06:59
[2026-06-22 08:07:00,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:07:00,809.809 INFO    ] Initializing speech engine...
[2026-06-22 08:07:00,818.818 INFO    ] 2026-06-22 08:07:00
[2026-06-22 08:07:01,111.111 INFO    ] 2026-06-22 08:07:01
[2026-06-22 08:07:01,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:07:01,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:07:01,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:07:01,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:07:01,647.647 INFO    ] time= 22/06/2026 08:07:01
[2026-06-22 08:07:01,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:07:01,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:07:01,703.703 INFO    ] No existing commands found in stream
[2026-06-22 08:07:06,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:07:06,717.717 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-22 08:07:10,105.105 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:07:10,108.108 INFO    ] Checking for system updates...
[2026-06-22 08:07:10,144.144 INFO    ] 200
[2026-06-22 08:07:10,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:07:10,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:07:10,206.206 INFO    ] No update needed
[2026-06-22 08:07:10,208.208 INFO    ] Checking for camera pi updates...
[2026-06-22 08:07:10,242.242 INFO    ] 200
[2026-06-22 08:07:10,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:07:10,286.286 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:07:10,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:07:10,336.336 INFO    ] No camera update needed
[2026-06-22 08:07:10,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:07:10,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:07:10,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:07:10,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:07:12,392.392 INFO    ] ================================================
[2026-06-22 08:07:12,407.407 INFO    ] Launching Daemon at Mon Jun 22 08:07:12 IST 2026
[2026-06-22 08:07:12,418.418 INFO    ] ================================================
[2026-06-22 08:07:12,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:07:12
[2026-06-22 08:07:13,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:07:13,744.744 INFO    ] Initializing speech engine...
[2026-06-22 08:07:13,753.753 INFO    ] 2026-06-22 08:07:13
[2026-06-22 08:07:14,041.041 INFO    ] 2026-06-22 08:07:14
[2026-06-22 08:07:14,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:07:15,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:07:15,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:07:15,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:07:15,251.251 INFO    ] time= 22/06/2026 08:07:15
[2026-06-22 08:07:15,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:07:15,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:07:15,368.368 INFO    ] No existing commands found in stream
[2026-06-22 08:07:20,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:07:20,381.381 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-22 08:07:23,051.051 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:07:23,052.052 INFO    ] Checking for system updates...
[2026-06-22 08:07:23,073.073 INFO    ] 200
[2026-06-22 08:07:23,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:07:23,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:07:23,107.107 INFO    ] No update needed
[2026-06-22 08:07:23,109.109 INFO    ] Checking for camera pi updates...
[2026-06-22 08:07:23,128.128 INFO    ] 200
[2026-06-22 08:07:23,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:07:23,162.162 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:07:23,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:07:23,278.278 INFO    ] No camera update needed
[2026-06-22 08:07:23,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:07:23,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:07:23,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:07:23,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:07:25,333.333 INFO    ] ================================================
[2026-06-22 08:07:25,348.348 INFO    ] Launching Daemon at Mon Jun 22 08:07:25 IST 2026
[2026-06-22 08:07:25,359.359 INFO    ] ================================================
[2026-06-22 08:07:25,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:07:25
[2026-06-22 08:07:26,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:07:26,688.688 INFO    ] Initializing speech engine...
[2026-06-22 08:07:26,704.704 INFO    ] 2026-06-22 08:07:26
[2026-06-22 08:07:26,981.981 INFO    ] 2026-06-22 08:07:26
[2026-06-22 08:07:27,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:07:27,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:07:27,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:07:27,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:07:27,453.453 INFO    ] time= 22/06/2026 08:07:27
[2026-06-22 08:07:27,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:07:27,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:07:27,596.596 INFO    ] No existing commands found in stream
[2026-06-22 08:07:32,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:07:32,610.610 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-22 08:07:33,095.095 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:07:33,098.098 INFO    ] Checking for system updates...
[2026-06-22 08:07:33,137.137 INFO    ] 200
[2026-06-22 08:07:33,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:07:33,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:07:33,198.198 INFO    ] No update needed
[2026-06-22 08:07:33,201.201 INFO    ] Checking for camera pi updates...
[2026-06-22 08:07:33,237.237 INFO    ] 200
[2026-06-22 08:07:33,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:07:33,280.280 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:07:33,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:07:33,384.384 INFO    ] No camera update needed
[2026-06-22 08:07:33,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:07:33,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:07:33,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:07:33,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:07:35,439.439 INFO    ] ================================================
[2026-06-22 08:07:35,454.454 INFO    ] Launching Daemon at Mon Jun 22 08:07:35 IST 2026
[2026-06-22 08:07:35,465.465 INFO    ] ================================================
[2026-06-22 08:07:35,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:07:35
[2026-06-22 08:07:36,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:07:36,849.849 INFO    ] Initializing speech engine...
[2026-06-22 08:07:36,868.868 INFO    ] 2026-06-22 08:07:36
[2026-06-22 08:07:37,129.129 INFO    ] 2026-06-22 08:07:37
[2026-06-22 08:07:37,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:07:37,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:07:37,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:07:37,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:07:37,491.491 INFO    ] time= 22/06/2026 08:07:37
[2026-06-22 08:07:37,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:07:37,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:07:37,610.610 INFO    ] No existing commands found in stream
[2026-06-22 08:07:42,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:07:42,626.626 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-22 08:07:45,705.705 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:07:45,707.707 INFO    ] Checking for system updates...
[2026-06-22 08:07:45,744.744 INFO    ] 200
[2026-06-22 08:07:45,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:07:45,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:07:45,802.802 INFO    ] No update needed
[2026-06-22 08:07:45,805.805 INFO    ] Checking for camera pi updates...
[2026-06-22 08:07:45,842.842 INFO    ] 200
[2026-06-22 08:07:45,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:07:45,885.885 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:07:45,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:07:45,942.942 INFO    ] No camera update needed
[2026-06-22 08:07:45,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:07:45,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:07:45,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:07:45,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:07:48,997.997 INFO    ] ================================================
[2026-06-22 08:07:48,012.012 INFO    ] Launching Daemon at Mon Jun 22 08:07:48 IST 2026
[2026-06-22 08:07:48,023.023 INFO    ] ================================================
[2026-06-22 08:07:48,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:07:48
[2026-06-22 08:07:49,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:07:49,412.412 INFO    ] Initializing speech engine...
[2026-06-22 08:07:49,418.418 INFO    ] 2026-06-22 08:07:49
[2026-06-22 08:07:49,729.729 INFO    ] 2026-06-22 08:07:49
[2026-06-22 08:07:49,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:07:49,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:07:49,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:07:50,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:07:50,151.151 INFO    ] time= 22/06/2026 08:07:50
[2026-06-22 08:07:50,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:07:50,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:07:50,296.296 INFO    ] No existing commands found in stream
[2026-06-22 08:07:55,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:07:55,312.312 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-22 08:07:56,267.267 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:07:56,270.270 INFO    ] Checking for system updates...
[2026-06-22 08:07:56,308.308 INFO    ] 200
[2026-06-22 08:07:56,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:07:56,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:07:56,368.368 INFO    ] No update needed
[2026-06-22 08:07:56,370.370 INFO    ] Checking for camera pi updates...
[2026-06-22 08:07:56,408.408 INFO    ] 200
[2026-06-22 08:07:56,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:07:56,456.456 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:07:56,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:07:56,516.516 INFO    ] No camera update needed
[2026-06-22 08:07:56,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:07:56,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:07:56,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:07:56,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:07:58,572.572 INFO    ] ================================================
[2026-06-22 08:07:58,587.587 INFO    ] Launching Daemon at Mon Jun 22 08:07:58 IST 2026
[2026-06-22 08:07:58,598.598 INFO    ] ================================================
[2026-06-22 08:07:59,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:07:59
[2026-06-22 08:07:59,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:07:59,956.956 INFO    ] Initializing speech engine...
[2026-06-22 08:07:59,965.965 INFO    ] 2026-06-22 08:07:59
[2026-06-22 08:08:00,251.251 INFO    ] 2026-06-22 08:08:00
[2026-06-22 08:08:00,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:08:00,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:08:00,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:08:00,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:08:00,591.591 INFO    ] time= 22/06/2026 08:08:00
[2026-06-22 08:08:00,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:08:00,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:08:00,668.668 INFO    ] No existing commands found in stream
[2026-06-22 08:08:05,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:08:05,682.682 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-22 08:08:08,859.859 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:08:08,860.860 INFO    ] Checking for system updates...
[2026-06-22 08:08:08,882.882 INFO    ] 200
[2026-06-22 08:08:08,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:08:08,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:08:08,916.916 INFO    ] No update needed
[2026-06-22 08:08:08,918.918 INFO    ] Checking for camera pi updates...
[2026-06-22 08:08:08,937.937 INFO    ] 200
[2026-06-22 08:08:08,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:08:08,980.980 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:08:09,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:08:09,178.178 INFO    ] No camera update needed
[2026-06-22 08:08:09,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:08:09,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:08:09,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:08:09,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:08:11,235.235 INFO    ] ================================================
[2026-06-22 08:08:11,251.251 INFO    ] Launching Daemon at Mon Jun 22 08:08:11 IST 2026
[2026-06-22 08:08:11,262.262 INFO    ] ================================================
[2026-06-22 08:08:11,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:08:11
[2026-06-22 08:08:12,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:08:12,613.613 INFO    ] Initializing speech engine...
[2026-06-22 08:08:12,637.637 INFO    ] 2026-06-22 08:08:12
[2026-06-22 08:08:12,916.916 INFO    ] 2026-06-22 08:08:12
[2026-06-22 08:08:12,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:08:15,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:08:15,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:08:15,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:08:15,946.946 INFO    ] time= 22/06/2026 08:08:15
[2026-06-22 08:08:15,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:08:15,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:08:16,002.002 INFO    ] No existing commands found in stream
[2026-06-22 08:08:21,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:08:21,015.015 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-22 08:08:22,184.184 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:08:22,187.187 INFO    ] Checking for system updates...
[2026-06-22 08:08:22,222.222 INFO    ] 200
[2026-06-22 08:08:22,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:08:22,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:08:22,285.285 INFO    ] No update needed
[2026-06-22 08:08:22,288.288 INFO    ] Checking for camera pi updates...
[2026-06-22 08:08:22,321.321 INFO    ] 200
[2026-06-22 08:08:22,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:08:22,365.365 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:08:22,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:08:22,449.449 INFO    ] No camera update needed
[2026-06-22 08:08:22,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:08:22,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:08:22,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:08:22,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:08:24,507.507 INFO    ] ================================================
[2026-06-22 08:08:24,523.523 INFO    ] Launching Daemon at Mon Jun 22 08:08:24 IST 2026
[2026-06-22 08:08:24,533.533 INFO    ] ================================================
[2026-06-22 08:08:25,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:08:25
[2026-06-22 08:08:25,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:08:25,843.843 INFO    ] Initializing speech engine...
[2026-06-22 08:08:25,851.851 INFO    ] 2026-06-22 08:08:25
[2026-06-22 08:08:26,135.135 INFO    ] 2026-06-22 08:08:26
[2026-06-22 08:08:26,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:08:26,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:08:26,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:08:26,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:08:26,499.499 INFO    ] time= 22/06/2026 08:08:26
[2026-06-22 08:08:26,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:08:26,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:08:26,620.620 INFO    ] No existing commands found in stream
[2026-06-22 08:08:31,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:08:31,636.636 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-22 08:08:35,984.984 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:08:35,985.985 INFO    ] Checking for system updates...
[2026-06-22 08:08:36,006.006 INFO    ] 200
[2026-06-22 08:08:36,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:08:36,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:08:36,040.040 INFO    ] No update needed
[2026-06-22 08:08:36,041.041 INFO    ] Checking for camera pi updates...
[2026-06-22 08:08:36,061.061 INFO    ] 200
[2026-06-22 08:08:36,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:08:36,091.091 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:08:36,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:08:36,174.174 INFO    ] No camera update needed
[2026-06-22 08:08:36,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:08:36,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:08:36,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:08:36,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:08:38,231.231 INFO    ] ================================================
[2026-06-22 08:08:38,246.246 INFO    ] Launching Daemon at Mon Jun 22 08:08:38 IST 2026
[2026-06-22 08:08:38,257.257 INFO    ] ================================================
[2026-06-22 08:08:38,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:08:38
[2026-06-22 08:08:39,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:08:39,742.742 INFO    ] Initializing speech engine...
[2026-06-22 08:08:39,749.749 INFO    ] 2026-06-22 08:08:39
[2026-06-22 08:08:40,050.050 INFO    ] 2026-06-22 08:08:40
[2026-06-22 08:08:40,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:08:40,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:08:40,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:08:40,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:08:40,420.420 INFO    ] time= 22/06/2026 08:08:40
[2026-06-22 08:08:40,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:08:40,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:08:40,595.595 INFO    ] No existing commands found in stream
[2026-06-22 08:08:45,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:08:45,629.629 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-22 08:08:47,485.485 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:08:47,488.488 INFO    ] Checking for system updates...
[2026-06-22 08:08:47,527.527 INFO    ] 200
[2026-06-22 08:08:47,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:08:47,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:08:47,584.584 INFO    ] No update needed
[2026-06-22 08:08:47,586.586 INFO    ] Checking for camera pi updates...
[2026-06-22 08:08:47,623.623 INFO    ] 200
[2026-06-22 08:08:47,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:08:47,667.667 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:08:47,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:08:47,741.741 INFO    ] No camera update needed
[2026-06-22 08:08:47,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:08:47,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:08:47,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:08:47,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:08:49,798.798 INFO    ] ================================================
[2026-06-22 08:08:49,814.814 INFO    ] Launching Daemon at Mon Jun 22 08:08:49 IST 2026
[2026-06-22 08:08:49,825.825 INFO    ] ================================================
[2026-06-22 08:08:50,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:08:50
[2026-06-22 08:08:51,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:08:51,298.298 INFO    ] Initializing speech engine...
[2026-06-22 08:08:51,306.306 INFO    ] 2026-06-22 08:08:51
[2026-06-22 08:08:51,568.568 INFO    ] 2026-06-22 08:08:51
[2026-06-22 08:08:51,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:08:51,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:08:51,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:08:51,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:08:51,949.949 INFO    ] time= 22/06/2026 08:08:51
[2026-06-22 08:08:51,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:08:52,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:08:52,132.132 INFO    ] No existing commands found in stream
[2026-06-22 08:08:57,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:08:57,147.147 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-22 08:08:59,433.433 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:08:59,435.435 INFO    ] Checking for system updates...
[2026-06-22 08:08:59,457.457 INFO    ] 200
[2026-06-22 08:08:59,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:08:59,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:08:59,493.493 INFO    ] No update needed
[2026-06-22 08:08:59,494.494 INFO    ] Checking for camera pi updates...
[2026-06-22 08:08:59,529.529 INFO    ] 200
[2026-06-22 08:08:59,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:08:59,575.575 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:08:59,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:08:59,658.658 INFO    ] No camera update needed
[2026-06-22 08:08:59,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:08:59,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:08:59,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:08:59,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:09:01,720.720 INFO    ] ================================================
[2026-06-22 08:09:01,738.738 INFO    ] Launching Daemon at Mon Jun 22 08:09:01 IST 2026
[2026-06-22 08:09:01,753.753 INFO    ] ================================================
[2026-06-22 08:09:02,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:09:02
[2026-06-22 08:09:03,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:09:03,335.335 INFO    ] Initializing speech engine...
[2026-06-22 08:09:03,344.344 INFO    ] 2026-06-22 08:09:03
[2026-06-22 08:09:03,596.596 INFO    ] 2026-06-22 08:09:03
[2026-06-22 08:09:03,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:09:03,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:09:03,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:09:03,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:09:03,974.974 INFO    ] time= 22/06/2026 08:09:03
[2026-06-22 08:09:03,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:09:03,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:09:04,053.053 INFO    ] No existing commands found in stream
[2026-06-22 08:09:09,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:09:09,091.091 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-22 08:09:13,412.412 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:09:13,414.414 INFO    ] Checking for system updates...
[2026-06-22 08:09:13,450.450 INFO    ] 200
[2026-06-22 08:09:13,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:09:13,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:09:13,509.509 INFO    ] No update needed
[2026-06-22 08:09:13,511.511 INFO    ] Checking for camera pi updates...
[2026-06-22 08:09:13,548.548 INFO    ] 200
[2026-06-22 08:09:13,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:09:13,596.596 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:09:13,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:09:13,682.682 INFO    ] No camera update needed
[2026-06-22 08:09:13,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:09:13,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:09:13,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:09:13,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:09:15,737.737 INFO    ] ================================================
[2026-06-22 08:09:15,753.753 INFO    ] Launching Daemon at Mon Jun 22 08:09:15 IST 2026
[2026-06-22 08:09:15,765.765 INFO    ] ================================================
[2026-06-22 08:09:16,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:09:16
[2026-06-22 08:09:16,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:09:17,189.189 INFO    ] Initializing speech engine...
[2026-06-22 08:09:17,212.212 INFO    ] 2026-06-22 08:09:17
[2026-06-22 08:09:17,465.465 INFO    ] 2026-06-22 08:09:17
[2026-06-22 08:09:17,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:09:17,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:09:17,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:09:17,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:09:17,832.832 INFO    ] time= 22/06/2026 08:09:17
[2026-06-22 08:09:17,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:09:17,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:09:17,908.908 INFO    ] No existing commands found in stream
[2026-06-22 08:09:22,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:09:22,928.928 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-22 08:09:26,859.859 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:09:26,861.861 INFO    ] Checking for system updates...
[2026-06-22 08:09:26,897.897 INFO    ] 200
[2026-06-22 08:09:26,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:09:26,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:09:26,963.963 INFO    ] No update needed
[2026-06-22 08:09:26,966.966 INFO    ] Checking for camera pi updates...
[2026-06-22 08:09:26,999.999 INFO    ] 200
[2026-06-22 08:09:27,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:09:27,042.042 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:09:27,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:09:27,112.112 INFO    ] No camera update needed
[2026-06-22 08:09:27,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:09:27,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:09:27,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:09:27,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:09:29,172.172 INFO    ] ================================================
[2026-06-22 08:09:29,187.187 INFO    ] Launching Daemon at Mon Jun 22 08:09:29 IST 2026
[2026-06-22 08:09:29,199.199 INFO    ] ================================================
[2026-06-22 08:09:29,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:09:29
[2026-06-22 08:09:30,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:09:30,678.678 INFO    ] Initializing speech engine...
[2026-06-22 08:09:30,685.685 INFO    ] 2026-06-22 08:09:30
[2026-06-22 08:09:30,975.975 INFO    ] 2026-06-22 08:09:30
[2026-06-22 08:09:31,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:09:31,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:09:31,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:09:31,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:09:31,371.371 INFO    ] time= 22/06/2026 08:09:31
[2026-06-22 08:09:31,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:09:31,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:09:31,475.475 INFO    ] No existing commands found in stream
[2026-06-22 08:09:36,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:09:36,506.506 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-22 08:09:38,654.654 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:09:38,657.657 INFO    ] Checking for system updates...
[2026-06-22 08:09:38,693.693 INFO    ] 200
[2026-06-22 08:09:38,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:09:38,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:09:38,747.747 INFO    ] No update needed
[2026-06-22 08:09:38,748.748 INFO    ] Checking for camera pi updates...
[2026-06-22 08:09:38,767.767 INFO    ] 200
[2026-06-22 08:09:38,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:09:38,792.792 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:09:38,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:09:38,858.858 INFO    ] No camera update needed
[2026-06-22 08:09:38,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:09:38,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:09:38,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:09:38,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:09:40,914.914 INFO    ] ================================================
[2026-06-22 08:09:40,930.930 INFO    ] Launching Daemon at Mon Jun 22 08:09:40 IST 2026
[2026-06-22 08:09:40,941.941 INFO    ] ================================================
[2026-06-22 08:09:41,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:09:41
[2026-06-22 08:09:42,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:09:42,315.315 INFO    ] Initializing speech engine...
[2026-06-22 08:09:42,325.325 INFO    ] 2026-06-22 08:09:42
[2026-06-22 08:09:42,573.573 INFO    ] 2026-06-22 08:09:42
[2026-06-22 08:09:42,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:09:42,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:09:42,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:09:43,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:09:43,024.024 INFO    ] time= 22/06/2026 08:09:43
[2026-06-22 08:09:43,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:09:43,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:09:43,189.189 INFO    ] No existing commands found in stream
[2026-06-22 08:09:48,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:09:48,204.204 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-22 08:09:52,394.394 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:09:52,397.397 INFO    ] Checking for system updates...
[2026-06-22 08:09:52,433.433 INFO    ] 200
[2026-06-22 08:09:52,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:09:52,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:09:52,498.498 INFO    ] No update needed
[2026-06-22 08:09:52,500.500 INFO    ] Checking for camera pi updates...
[2026-06-22 08:09:52,538.538 INFO    ] 200
[2026-06-22 08:09:52,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:09:52,586.586 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:09:52,663.663 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:09:52,666.666 INFO    ] No camera update needed
[2026-06-22 08:09:52,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:09:52,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:09:52,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:09:52,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:09:54,724.724 INFO    ] ================================================
[2026-06-22 08:09:54,739.739 INFO    ] Launching Daemon at Mon Jun 22 08:09:54 IST 2026
[2026-06-22 08:09:54,750.750 INFO    ] ================================================
[2026-06-22 08:09:55,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:09:55
[2026-06-22 08:09:55,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:09:56,260.260 INFO    ] Initializing speech engine...
[2026-06-22 08:09:56,267.267 INFO    ] 2026-06-22 08:09:56
[2026-06-22 08:09:56,558.558 INFO    ] 2026-06-22 08:09:56
[2026-06-22 08:09:56,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:09:56,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:09:56,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:09:56,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:09:57,025.025 INFO    ] time= 22/06/2026 08:09:56
[2026-06-22 08:09:57,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:09:57,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:09:57,172.172 INFO    ] No existing commands found in stream
[2026-06-22 08:10:02,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:10:02,191.191 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-22 08:10:08,605.605 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:10:08,607.607 INFO    ] Checking for system updates...
[2026-06-22 08:10:08,632.632 INFO    ] 200
[2026-06-22 08:10:08,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:10:08,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:10:08,671.671 INFO    ] No update needed
[2026-06-22 08:10:08,672.672 INFO    ] Checking for camera pi updates...
[2026-06-22 08:10:08,692.692 INFO    ] 200
[2026-06-22 08:10:08,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:10:08,747.747 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:10:08,818.818 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:10:08,821.821 INFO    ] No camera update needed
[2026-06-22 08:10:08,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:10:08,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:10:08,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:10:08,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:10:10,881.881 INFO    ] ================================================
[2026-06-22 08:10:10,897.897 INFO    ] Launching Daemon at Mon Jun 22 08:10:10 IST 2026
[2026-06-22 08:10:10,909.909 INFO    ] ================================================
[2026-06-22 08:10:11,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:10:11
[2026-06-22 08:10:11,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:10:12,242.242 INFO    ] Initializing speech engine...
[2026-06-22 08:10:12,251.251 INFO    ] 2026-06-22 08:10:12
[2026-06-22 08:10:12,499.499 INFO    ] 2026-06-22 08:10:12
[2026-06-22 08:10:12,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:10:12,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:10:12,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:10:12,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:10:12,935.935 INFO    ] time= 22/06/2026 08:10:12
[2026-06-22 08:10:12,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:10:13,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:10:13,114.114 INFO    ] No existing commands found in stream
[2026-06-22 08:10:18,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:10:18,129.129 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-22 08:10:20,289.289 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:10:20,292.292 INFO    ] Checking for system updates...
[2026-06-22 08:10:20,329.329 INFO    ] 200
[2026-06-22 08:10:20,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:10:20,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:10:20,393.393 INFO    ] No update needed
[2026-06-22 08:10:20,395.395 INFO    ] Checking for camera pi updates...
[2026-06-22 08:10:20,433.433 INFO    ] 200
[2026-06-22 08:10:20,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:10:20,481.481 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:10:20,664.664 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:10:20,667.667 INFO    ] No camera update needed
[2026-06-22 08:10:20,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:10:20,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:10:20,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:10:20,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:10:22,725.725 INFO    ] ================================================
[2026-06-22 08:10:22,741.741 INFO    ] Launching Daemon at Mon Jun 22 08:10:22 IST 2026
[2026-06-22 08:10:22,752.752 INFO    ] ================================================
[2026-06-22 08:10:23,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:10:23
[2026-06-22 08:10:23,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:10:24,072.072 INFO    ] Initializing speech engine...
[2026-06-22 08:10:24,078.078 INFO    ] 2026-06-22 08:10:24
[2026-06-22 08:10:24,353.353 INFO    ] 2026-06-22 08:10:24
[2026-06-22 08:10:24,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:10:24,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:10:24,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:10:24,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:10:24,732.732 INFO    ] time= 22/06/2026 08:10:24
[2026-06-22 08:10:24,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:10:24,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:10:24,891.891 INFO    ] No existing commands found in stream
[2026-06-22 08:10:29,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:10:29,925.925 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-22 08:10:31,674.674 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:10:31,677.677 INFO    ] Checking for system updates...
[2026-06-22 08:10:31,747.747 INFO    ] 200
[2026-06-22 08:10:31,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:10:31,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:10:31,824.824 INFO    ] No update needed
[2026-06-22 08:10:31,826.826 INFO    ] Checking for camera pi updates...
[2026-06-22 08:10:31,866.866 INFO    ] 200
[2026-06-22 08:10:31,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:10:31,923.923 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:10:31,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:10:31,985.985 INFO    ] No camera update needed
[2026-06-22 08:10:31,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:10:31,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:10:32,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:10:32,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:10:34,056.056 INFO    ] ================================================
[2026-06-22 08:10:34,072.072 INFO    ] Launching Daemon at Mon Jun 22 08:10:34 IST 2026
[2026-06-22 08:10:34,084.084 INFO    ] ================================================
[2026-06-22 08:10:34,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:10:34
[2026-06-22 08:10:35,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:10:35,403.403 INFO    ] Initializing speech engine...
[2026-06-22 08:10:35,418.418 INFO    ] 2026-06-22 08:10:35
[2026-06-22 08:10:35,684.684 INFO    ] 2026-06-22 08:10:35
[2026-06-22 08:10:35,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:10:35,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:10:35,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:10:36,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:10:36,042.042 INFO    ] time= 22/06/2026 08:10:36
[2026-06-22 08:10:36,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:10:36,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:10:36,139.139 INFO    ] No existing commands found in stream
[2026-06-22 08:10:41,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:10:41,159.159 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-22 08:10:43,264.264 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:10:43,267.267 INFO    ] Checking for system updates...
[2026-06-22 08:10:43,304.304 INFO    ] 200
[2026-06-22 08:10:43,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:10:43,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:10:43,363.363 INFO    ] No update needed
[2026-06-22 08:10:43,366.366 INFO    ] Checking for camera pi updates...
[2026-06-22 08:10:43,400.400 INFO    ] 200
[2026-06-22 08:10:43,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:10:43,443.443 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:10:43,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:10:43,530.530 INFO    ] No camera update needed
[2026-06-22 08:10:43,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:10:43,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:10:43,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:10:43,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:10:45,585.585 INFO    ] ================================================
[2026-06-22 08:10:45,601.601 INFO    ] Launching Daemon at Mon Jun 22 08:10:45 IST 2026
[2026-06-22 08:10:45,616.616 INFO    ] ================================================
[2026-06-22 08:10:46,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:10:46
[2026-06-22 08:10:46,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:10:46,955.955 INFO    ] Initializing speech engine...
[2026-06-22 08:10:46,964.964 INFO    ] 2026-06-22 08:10:46
[2026-06-22 08:10:47,215.215 INFO    ] 2026-06-22 08:10:47
[2026-06-22 08:10:47,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:10:47,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:10:47,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:10:47,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:10:47,830.830 INFO    ] time= 22/06/2026 08:10:47
[2026-06-22 08:10:47,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:10:47,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:10:47,913.913 INFO    ] No existing commands found in stream
[2026-06-22 08:10:52,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:10:52,928.928 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-22 08:10:54,739.739 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:10:54,742.742 INFO    ] Checking for system updates...
[2026-06-22 08:10:54,782.782 INFO    ] 200
[2026-06-22 08:10:54,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:10:54,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:10:54,846.846 INFO    ] No update needed
[2026-06-22 08:10:54,848.848 INFO    ] Checking for camera pi updates...
[2026-06-22 08:10:54,883.883 INFO    ] 200
[2026-06-22 08:10:54,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:10:54,932.932 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:10:55,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:10:55,019.019 INFO    ] No camera update needed
[2026-06-22 08:10:55,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:10:55,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:10:55,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:10:55,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:10:57,078.078 INFO    ] ================================================
[2026-06-22 08:10:57,094.094 INFO    ] Launching Daemon at Mon Jun 22 08:10:57 IST 2026
[2026-06-22 08:10:57,105.105 INFO    ] ================================================
[2026-06-22 08:10:57,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:10:57
[2026-06-22 08:10:58,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:10:58,618.618 INFO    ] Initializing speech engine...
[2026-06-22 08:10:58,628.628 INFO    ] 2026-06-22 08:10:58
[2026-06-22 08:10:58,877.877 INFO    ] 2026-06-22 08:10:58
[2026-06-22 08:10:58,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:10:59,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:10:59,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:10:59,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:10:59,370.370 INFO    ] time= 22/06/2026 08:10:59
[2026-06-22 08:10:59,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:10:59,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:10:59,539.539 INFO    ] No existing commands found in stream
[2026-06-22 08:11:04,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:11:04,571.571 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-22 08:11:06,456.456 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:11:06,459.459 INFO    ] Checking for system updates...
[2026-06-22 08:11:06,501.501 INFO    ] 200
[2026-06-22 08:11:06,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:11:06,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:11:06,562.562 INFO    ] No update needed
[2026-06-22 08:11:06,565.565 INFO    ] Checking for camera pi updates...
[2026-06-22 08:11:06,603.603 INFO    ] 200
[2026-06-22 08:11:06,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:11:06,647.647 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:11:06,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:11:06,730.730 INFO    ] No camera update needed
[2026-06-22 08:11:06,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:11:06,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:11:06,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:11:06,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:11:08,788.788 INFO    ] ================================================
[2026-06-22 08:11:08,804.804 INFO    ] Launching Daemon at Mon Jun 22 08:11:08 IST 2026
[2026-06-22 08:11:08,816.816 INFO    ] ================================================
[2026-06-22 08:11:09,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:11:09
[2026-06-22 08:11:10,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:11:10,396.396 INFO    ] Initializing speech engine...
[2026-06-22 08:11:10,407.407 INFO    ] 2026-06-22 08:11:10
[2026-06-22 08:11:10,724.724 INFO    ] 2026-06-22 08:11:10
[2026-06-22 08:11:10,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:11:10,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:11:10,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:11:11,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:11:11,231.231 INFO    ] time= 22/06/2026 08:11:11
[2026-06-22 08:11:11,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:11:11,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:11:11,359.359 INFO    ] No existing commands found in stream
[2026-06-22 08:11:16,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:11:16,399.399 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-22 08:11:18,269.269 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:11:18,272.272 INFO    ] Checking for system updates...
[2026-06-22 08:11:18,308.308 INFO    ] 200
[2026-06-22 08:11:18,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:11:18,366.366 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:11:18,368.368 INFO    ] No update needed
[2026-06-22 08:11:18,371.371 INFO    ] Checking for camera pi updates...
[2026-06-22 08:11:18,410.410 INFO    ] 200
[2026-06-22 08:11:18,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:11:18,459.459 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:11:18,541.541 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:11:18,544.544 INFO    ] No camera update needed
[2026-06-22 08:11:18,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:11:18,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:11:18,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:11:18,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:11:20,600.600 INFO    ] ================================================
[2026-06-22 08:11:20,616.616 INFO    ] Launching Daemon at Mon Jun 22 08:11:20 IST 2026
[2026-06-22 08:11:20,628.628 INFO    ] ================================================
[2026-06-22 08:11:21,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:11:21
[2026-06-22 08:11:21,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:11:22,019.019 INFO    ] Initializing speech engine...
[2026-06-22 08:11:22,033.033 INFO    ] 2026-06-22 08:11:22
[2026-06-22 08:11:22,288.288 INFO    ] 2026-06-22 08:11:22
[2026-06-22 08:11:22,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:11:22,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:11:22,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:11:22,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:11:22,724.724 INFO    ] time= 22/06/2026 08:11:22
[2026-06-22 08:11:22,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:11:22,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:11:22,873.873 INFO    ] No existing commands found in stream
[2026-06-22 08:11:27,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:11:27,887.887 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-22 08:11:31,719.719 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:11:31,722.722 INFO    ] Checking for system updates...
[2026-06-22 08:11:31,767.767 INFO    ] 200
[2026-06-22 08:11:31,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:11:31,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:11:31,829.829 INFO    ] No update needed
[2026-06-22 08:11:31,832.832 INFO    ] Checking for camera pi updates...
[2026-06-22 08:11:31,869.869 INFO    ] 200
[2026-06-22 08:11:31,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:11:31,920.920 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:11:32,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:11:32,025.025 INFO    ] No camera update needed
[2026-06-22 08:11:32,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:11:32,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:11:32,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:11:32,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:11:34,085.085 INFO    ] ================================================
[2026-06-22 08:11:34,102.102 INFO    ] Launching Daemon at Mon Jun 22 08:11:34 IST 2026
[2026-06-22 08:11:34,113.113 INFO    ] ================================================
[2026-06-22 08:11:34,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:11:34
[2026-06-22 08:11:35,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:11:35,456.456 INFO    ] Initializing speech engine...
[2026-06-22 08:11:35,464.464 INFO    ] 2026-06-22 08:11:35
[2026-06-22 08:11:35,718.718 INFO    ] 2026-06-22 08:11:35
[2026-06-22 08:11:35,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:11:35,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:11:35,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:11:36,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:11:36,093.093 INFO    ] time= 22/06/2026 08:11:36
[2026-06-22 08:11:36,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:11:36,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:11:36,255.255 INFO    ] No existing commands found in stream
[2026-06-22 08:11:41,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:11:41,288.288 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-22 08:11:45,483.483 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:11:45,485.485 INFO    ] Checking for system updates...
[2026-06-22 08:11:45,522.522 INFO    ] 200
[2026-06-22 08:11:45,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:11:45,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:11:45,581.581 INFO    ] No update needed
[2026-06-22 08:11:45,583.583 INFO    ] Checking for camera pi updates...
[2026-06-22 08:11:45,617.617 INFO    ] 200
[2026-06-22 08:11:45,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:11:45,661.661 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:11:45,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:11:45,730.730 INFO    ] No camera update needed
[2026-06-22 08:11:45,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:11:45,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:11:45,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:11:45,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:11:47,787.787 INFO    ] ================================================
[2026-06-22 08:11:47,803.803 INFO    ] Launching Daemon at Mon Jun 22 08:11:47 IST 2026
[2026-06-22 08:11:47,814.814 INFO    ] ================================================
[2026-06-22 08:11:48,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:11:48
[2026-06-22 08:11:48,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:11:49,234.234 INFO    ] Initializing speech engine...
[2026-06-22 08:11:49,243.243 INFO    ] 2026-06-22 08:11:49
[2026-06-22 08:11:49,489.489 INFO    ] 2026-06-22 08:11:49
[2026-06-22 08:11:49,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:11:49,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:11:49,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:11:49,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:11:49,858.858 INFO    ] time= 22/06/2026 08:11:49
[2026-06-22 08:11:49,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:11:49,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:11:50,023.023 INFO    ] No existing commands found in stream
[2026-06-22 08:11:55,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:11:55,061.061 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-22 08:11:58,696.696 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:11:58,699.699 INFO    ] Checking for system updates...
[2026-06-22 08:11:58,735.735 INFO    ] 200
[2026-06-22 08:11:58,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:11:58,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:11:58,794.794 INFO    ] No update needed
[2026-06-22 08:11:58,796.796 INFO    ] Checking for camera pi updates...
[2026-06-22 08:11:58,830.830 INFO    ] 200
[2026-06-22 08:11:58,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:11:58,881.881 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:11:58,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:11:58,962.962 INFO    ] No camera update needed
[2026-06-22 08:11:58,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:11:58,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:11:58,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:11:58,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:12:01,018.018 INFO    ] ================================================
[2026-06-22 08:12:01,034.034 INFO    ] Launching Daemon at Mon Jun 22 08:12:01 IST 2026
[2026-06-22 08:12:01,046.046 INFO    ] ================================================
[2026-06-22 08:12:01,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:12:01
[2026-06-22 08:12:02,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:12:02,727.727 INFO    ] Initializing speech engine...
[2026-06-22 08:12:02,739.739 INFO    ] 2026-06-22 08:12:02
[2026-06-22 08:12:03,092.092 INFO    ] 2026-06-22 08:12:03
[2026-06-22 08:12:03,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:12:03,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:12:03,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:12:03,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:12:03,577.577 INFO    ] time= 22/06/2026 08:12:03
[2026-06-22 08:12:03,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:12:03,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:12:03,725.725 INFO    ] No existing commands found in stream
[2026-06-22 08:12:08,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:12:08,739.739 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-22 08:12:12,670.670 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:12:12,673.673 INFO    ] Checking for system updates...
[2026-06-22 08:12:12,709.709 INFO    ] 200
[2026-06-22 08:12:12,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:12:12,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:12:12,770.770 INFO    ] No update needed
[2026-06-22 08:12:12,773.773 INFO    ] Checking for camera pi updates...
[2026-06-22 08:12:12,810.810 INFO    ] 200
[2026-06-22 08:12:12,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:12:12,852.852 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:12:12,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:12:12,935.935 INFO    ] No camera update needed
[2026-06-22 08:12:12,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:12:12,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:12:12,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:12:12,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:12:14,991.991 INFO    ] ================================================
[2026-06-22 08:12:15,006.006 INFO    ] Launching Daemon at Mon Jun 22 08:12:15 IST 2026
[2026-06-22 08:12:15,018.018 INFO    ] ================================================
[2026-06-22 08:12:15,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:12:15
[2026-06-22 08:12:16,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:12:16,662.662 INFO    ] Initializing speech engine...
[2026-06-22 08:12:16,673.673 INFO    ] 2026-06-22 08:12:16
[2026-06-22 08:12:16,959.959 INFO    ] 2026-06-22 08:12:16
[2026-06-22 08:12:17,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:12:18,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:12:18,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:12:18,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:12:18,420.420 INFO    ] time= 22/06/2026 08:12:18
[2026-06-22 08:12:18,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:12:18,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:12:18,494.494 INFO    ] No existing commands found in stream
[2026-06-22 08:12:23,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:12:23,510.510 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-22 08:12:26,648.648 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:12:26,650.650 INFO    ] Checking for system updates...
[2026-06-22 08:12:26,690.690 INFO    ] 200
[2026-06-22 08:12:26,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:12:26,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:12:26,748.748 INFO    ] No update needed
[2026-06-22 08:12:26,750.750 INFO    ] Checking for camera pi updates...
[2026-06-22 08:12:26,788.788 INFO    ] 200
[2026-06-22 08:12:26,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:12:26,833.833 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:12:26,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:12:26,890.890 INFO    ] No camera update needed
[2026-06-22 08:12:26,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:12:26,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:12:26,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:12:26,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:12:28,947.947 INFO    ] ================================================
[2026-06-22 08:12:28,963.963 INFO    ] Launching Daemon at Mon Jun 22 08:12:28 IST 2026
[2026-06-22 08:12:28,974.974 INFO    ] ================================================
[2026-06-22 08:12:29,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:12:29
[2026-06-22 08:12:30,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:12:30,459.459 INFO    ] Initializing speech engine...
[2026-06-22 08:12:30,466.466 INFO    ] 2026-06-22 08:12:30
[2026-06-22 08:12:30,773.773 INFO    ] 2026-06-22 08:12:30
[2026-06-22 08:12:30,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:12:30,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:12:30,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:12:31,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:12:31,129.129 INFO    ] time= 22/06/2026 08:12:31
[2026-06-22 08:12:31,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:12:31,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:12:31,206.206 INFO    ] No existing commands found in stream
[2026-06-22 08:12:36,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:12:36,219.219 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-22 08:12:38,074.074 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:12:38,076.076 INFO    ] Checking for system updates...
[2026-06-22 08:12:38,112.112 INFO    ] 200
[2026-06-22 08:12:38,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:12:38,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:12:38,170.170 INFO    ] No update needed
[2026-06-22 08:12:38,173.173 INFO    ] Checking for camera pi updates...
[2026-06-22 08:12:38,209.209 INFO    ] 200
[2026-06-22 08:12:38,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:12:38,256.256 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:12:38,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:12:38,357.357 INFO    ] No camera update needed
[2026-06-22 08:12:38,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:12:38,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:12:38,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:12:38,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:12:40,413.413 INFO    ] ================================================
[2026-06-22 08:12:40,429.429 INFO    ] Launching Daemon at Mon Jun 22 08:12:40 IST 2026
[2026-06-22 08:12:40,440.440 INFO    ] ================================================
[2026-06-22 08:12:41,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:12:41
[2026-06-22 08:12:41,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:12:41,897.897 INFO    ] Initializing speech engine...
[2026-06-22 08:12:41,915.915 INFO    ] 2026-06-22 08:12:41
[2026-06-22 08:12:42,188.188 INFO    ] 2026-06-22 08:12:42
[2026-06-22 08:12:42,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:12:42,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:12:42,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:12:42,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:12:42,535.535 INFO    ] time= 22/06/2026 08:12:42
[2026-06-22 08:12:42,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:12:42,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:12:42,616.616 INFO    ] No existing commands found in stream
[2026-06-22 08:12:47,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:12:47,629.629 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-22 08:12:50,493.493 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:12:50,496.496 INFO    ] Checking for system updates...
[2026-06-22 08:12:50,536.536 INFO    ] 200
[2026-06-22 08:12:50,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:12:50,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:12:50,597.597 INFO    ] No update needed
[2026-06-22 08:12:50,599.599 INFO    ] Checking for camera pi updates...
[2026-06-22 08:12:50,637.637 INFO    ] 200
[2026-06-22 08:12:50,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:12:50,689.689 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:12:50,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:12:50,780.780 INFO    ] No camera update needed
[2026-06-22 08:12:50,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:12:50,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:12:50,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:12:50,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:12:52,838.838 INFO    ] ================================================
[2026-06-22 08:12:52,855.855 INFO    ] Launching Daemon at Mon Jun 22 08:12:52 IST 2026
[2026-06-22 08:12:52,866.866 INFO    ] ================================================
[2026-06-22 08:12:53,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:12:53
[2026-06-22 08:12:54,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:12:54,455.455 INFO    ] Initializing speech engine...
[2026-06-22 08:12:54,460.460 INFO    ] 2026-06-22 08:12:54
[2026-06-22 08:12:54,708.708 INFO    ] 2026-06-22 08:12:54
[2026-06-22 08:12:54,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:12:54,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:12:54,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:12:55,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:12:55,045.045 INFO    ] time= 22/06/2026 08:12:55
[2026-06-22 08:12:55,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:12:55,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:12:55,159.159 INFO    ] No existing commands found in stream
[2026-06-22 08:13:00,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:13:00,177.177 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-22 08:13:03,049.049 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:13:03,052.052 INFO    ] Checking for system updates...
[2026-06-22 08:13:03,093.093 INFO    ] 200
[2026-06-22 08:13:03,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:13:03,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:13:03,179.179 INFO    ] No update needed
[2026-06-22 08:13:03,181.181 INFO    ] Checking for camera pi updates...
[2026-06-22 08:13:03,223.223 INFO    ] 200
[2026-06-22 08:13:03,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:13:03,272.272 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:13:03,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:13:03,329.329 INFO    ] No camera update needed
[2026-06-22 08:13:03,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:13:03,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:13:03,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:13:03,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:13:05,388.388 INFO    ] ================================================
[2026-06-22 08:13:05,404.404 INFO    ] Launching Daemon at Mon Jun 22 08:13:05 IST 2026
[2026-06-22 08:13:05,415.415 INFO    ] ================================================
[2026-06-22 08:13:05,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:13:05
[2026-06-22 08:13:06,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:13:06,932.932 INFO    ] Initializing speech engine...
[2026-06-22 08:13:06,940.940 INFO    ] 2026-06-22 08:13:06
[2026-06-22 08:13:07,217.217 INFO    ] 2026-06-22 08:13:07
[2026-06-22 08:13:07,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:13:07,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:13:07,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:13:07,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:13:07,700.700 INFO    ] time= 22/06/2026 08:13:07
[2026-06-22 08:13:07,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:13:07,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:13:07,851.851 INFO    ] No existing commands found in stream
[2026-06-22 08:13:12,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:13:12,882.882 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-22 08:13:19,088.088 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:13:19,090.090 INFO    ] Checking for system updates...
[2026-06-22 08:13:19,118.118 INFO    ] 200
[2026-06-22 08:13:19,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:13:19,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:13:19,182.182 INFO    ] No update needed
[2026-06-22 08:13:19,186.186 INFO    ] Checking for camera pi updates...
[2026-06-22 08:13:19,222.222 INFO    ] 200
[2026-06-22 08:13:19,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:13:19,270.270 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:13:19,354.354 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:13:19,357.357 INFO    ] No camera update needed
[2026-06-22 08:13:19,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:13:19,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:13:19,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:13:19,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:13:21,414.414 INFO    ] ================================================
[2026-06-22 08:13:21,430.430 INFO    ] Launching Daemon at Mon Jun 22 08:13:21 IST 2026
[2026-06-22 08:13:21,441.441 INFO    ] ================================================
[2026-06-22 08:13:22,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:13:22
[2026-06-22 08:13:22,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:13:22,810.810 INFO    ] Initializing speech engine...
[2026-06-22 08:13:22,819.819 INFO    ] 2026-06-22 08:13:22
[2026-06-22 08:13:23,077.077 INFO    ] 2026-06-22 08:13:23
[2026-06-22 08:13:23,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:13:23,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:13:23,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:13:23,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:13:23,544.544 INFO    ] time= 22/06/2026 08:13:23
[2026-06-22 08:13:23,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:13:23,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:13:23,684.684 INFO    ] No existing commands found in stream
[2026-06-22 08:13:28,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:13:28,699.699 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-22 08:13:30,298.298 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:13:30,299.299 INFO    ] Checking for system updates...
[2026-06-22 08:13:30,320.320 INFO    ] 200
[2026-06-22 08:13:30,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:13:30,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:13:30,353.353 INFO    ] No update needed
[2026-06-22 08:13:30,354.354 INFO    ] Checking for camera pi updates...
[2026-06-22 08:13:30,373.373 INFO    ] 200
[2026-06-22 08:13:30,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:13:30,398.398 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:13:30,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:13:30,480.480 INFO    ] No camera update needed
[2026-06-22 08:13:30,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:13:30,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:13:30,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:13:30,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:13:32,545.545 INFO    ] ================================================
[2026-06-22 08:13:32,561.561 INFO    ] Launching Daemon at Mon Jun 22 08:13:32 IST 2026
[2026-06-22 08:13:32,573.573 INFO    ] ================================================
[2026-06-22 08:13:33,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:13:33
[2026-06-22 08:13:33,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:13:34,006.006 INFO    ] Initializing speech engine...
[2026-06-22 08:13:34,025.025 INFO    ] 2026-06-22 08:13:34
[2026-06-22 08:13:34,290.290 INFO    ] 2026-06-22 08:13:34
[2026-06-22 08:13:34,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:13:34,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:13:34,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:13:34,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:13:34,660.660 INFO    ] time= 22/06/2026 08:13:34
[2026-06-22 08:13:34,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:13:34,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:13:34,782.782 INFO    ] No existing commands found in stream
[2026-06-22 08:13:39,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:13:39,797.797 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-22 08:13:41,093.093 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:13:41,095.095 INFO    ] Checking for system updates...
[2026-06-22 08:13:41,135.135 INFO    ] 200
[2026-06-22 08:13:41,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:13:41,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:13:41,197.197 INFO    ] No update needed
[2026-06-22 08:13:41,200.200 INFO    ] Checking for camera pi updates...
[2026-06-22 08:13:41,237.237 INFO    ] 200
[2026-06-22 08:13:41,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:13:41,280.280 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:13:41,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:13:41,369.369 INFO    ] No camera update needed
[2026-06-22 08:13:41,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:13:41,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:13:41,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:13:41,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:13:43,427.427 INFO    ] ================================================
[2026-06-22 08:13:43,443.443 INFO    ] Launching Daemon at Mon Jun 22 08:13:43 IST 2026
[2026-06-22 08:13:43,454.454 INFO    ] ================================================
[2026-06-22 08:13:44,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:13:44
[2026-06-22 08:13:44,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:13:44,958.958 INFO    ] Initializing speech engine...
[2026-06-22 08:13:44,967.967 INFO    ] 2026-06-22 08:13:44
[2026-06-22 08:13:45,256.256 INFO    ] 2026-06-22 08:13:45
[2026-06-22 08:13:45,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:13:45,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:13:45,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:13:45,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:13:45,729.729 INFO    ] time= 22/06/2026 08:13:45
[2026-06-22 08:13:45,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:13:45,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:13:45,900.900 INFO    ] No existing commands found in stream
[2026-06-22 08:13:50,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:13:50,926.926 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-22 08:13:55,038.038 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:13:55,040.040 INFO    ] Checking for system updates...
[2026-06-22 08:13:55,062.062 INFO    ] 200
[2026-06-22 08:13:55,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:13:55,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:13:55,099.099 INFO    ] No update needed
[2026-06-22 08:13:55,100.100 INFO    ] Checking for camera pi updates...
[2026-06-22 08:13:55,121.121 INFO    ] 200
[2026-06-22 08:13:55,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:13:55,165.165 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:13:55,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:13:55,259.259 INFO    ] No camera update needed
[2026-06-22 08:13:55,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:13:55,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:13:55,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:13:55,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:13:57,320.320 INFO    ] ================================================
[2026-06-22 08:13:57,336.336 INFO    ] Launching Daemon at Mon Jun 22 08:13:57 IST 2026
[2026-06-22 08:13:57,347.347 INFO    ] ================================================
[2026-06-22 08:13:57,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:13:57
[2026-06-22 08:13:58,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:13:58,670.670 INFO    ] Initializing speech engine...
[2026-06-22 08:13:58,678.678 INFO    ] 2026-06-22 08:13:58
[2026-06-22 08:13:58,969.969 INFO    ] 2026-06-22 08:13:58
[2026-06-22 08:13:59,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:13:59,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:13:59,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:13:59,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:13:59,354.354 INFO    ] time= 22/06/2026 08:13:59
[2026-06-22 08:13:59,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:13:59,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:13:59,458.458 INFO    ] No existing commands found in stream
[2026-06-22 08:14:04,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:14:04,473.473 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-22 08:14:05,676.676 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:14:05,679.679 INFO    ] Checking for system updates...
[2026-06-22 08:14:05,717.717 INFO    ] 200
[2026-06-22 08:14:05,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:14:05,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:14:05,777.777 INFO    ] No update needed
[2026-06-22 08:14:05,780.780 INFO    ] Checking for camera pi updates...
[2026-06-22 08:14:05,814.814 INFO    ] 200
[2026-06-22 08:14:05,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:14:05,859.859 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:14:05,943.943 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:14:05,946.946 INFO    ] No camera update needed
[2026-06-22 08:14:05,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:14:05,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:14:05,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:14:05,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:14:08,006.006 INFO    ] ================================================
[2026-06-22 08:14:08,021.021 INFO    ] Launching Daemon at Mon Jun 22 08:14:08 IST 2026
[2026-06-22 08:14:08,033.033 INFO    ] ================================================
[2026-06-22 08:14:08,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:14:08
[2026-06-22 08:14:09,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:14:09,420.420 INFO    ] Initializing speech engine...
[2026-06-22 08:14:09,429.429 INFO    ] 2026-06-22 08:14:09
[2026-06-22 08:14:09,679.679 INFO    ] 2026-06-22 08:14:09
[2026-06-22 08:14:09,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:14:09,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:14:09,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:14:10,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:14:10,159.159 INFO    ] time= 22/06/2026 08:14:10
[2026-06-22 08:14:10,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:14:10,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:14:10,314.314 INFO    ] No existing commands found in stream
[2026-06-22 08:14:15,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:14:15,353.353 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-22 08:14:16,252.252 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:14:16,253.253 INFO    ] Checking for system updates...
[2026-06-22 08:14:16,275.275 INFO    ] 200
[2026-06-22 08:14:16,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:14:16,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:14:16,310.310 INFO    ] No update needed
[2026-06-22 08:14:16,311.311 INFO    ] Checking for camera pi updates...
[2026-06-22 08:14:16,346.346 INFO    ] 200
[2026-06-22 08:14:16,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:14:16,390.390 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:14:16,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:14:16,472.472 INFO    ] No camera update needed
[2026-06-22 08:14:16,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:14:16,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:14:16,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:14:16,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:14:18,527.527 INFO    ] ================================================
[2026-06-22 08:14:18,544.544 INFO    ] Launching Daemon at Mon Jun 22 08:14:18 IST 2026
[2026-06-22 08:14:18,555.555 INFO    ] ================================================
[2026-06-22 08:14:19,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:14:19
[2026-06-22 08:14:19,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:14:19,978.978 INFO    ] Initializing speech engine...
[2026-06-22 08:14:19,988.988 INFO    ] 2026-06-22 08:14:19
[2026-06-22 08:14:20,235.235 INFO    ] 2026-06-22 08:14:20
[2026-06-22 08:14:20,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:14:20,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:14:20,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:14:20,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:14:20,728.728 INFO    ] time= 22/06/2026 08:14:20
[2026-06-22 08:14:20,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:14:20,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:14:20,930.930 INFO    ] No existing commands found in stream
[2026-06-22 08:14:25,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:14:25,961.961 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-22 08:14:30,133.133 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:14:30,134.134 INFO    ] Checking for system updates...
[2026-06-22 08:14:30,156.156 INFO    ] 200
[2026-06-22 08:14:30,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:14:30,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:14:30,189.189 INFO    ] No update needed
[2026-06-22 08:14:30,191.191 INFO    ] Checking for camera pi updates...
[2026-06-22 08:14:30,210.210 INFO    ] 200
[2026-06-22 08:14:30,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:14:30,238.238 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:14:30,322.322 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:14:30,325.325 INFO    ] No camera update needed
[2026-06-22 08:14:30,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:14:30,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:14:30,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:14:30,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:14:32,387.387 INFO    ] ================================================
[2026-06-22 08:14:32,404.404 INFO    ] Launching Daemon at Mon Jun 22 08:14:32 IST 2026
[2026-06-22 08:14:32,417.417 INFO    ] ================================================
[2026-06-22 08:14:33,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:14:33
[2026-06-22 08:14:33,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:14:33,916.916 INFO    ] Initializing speech engine...
[2026-06-22 08:14:33,925.925 INFO    ] 2026-06-22 08:14:33
[2026-06-22 08:14:34,190.190 INFO    ] 2026-06-22 08:14:34
[2026-06-22 08:14:34,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:14:34,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:14:34,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:14:34,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:14:34,564.564 INFO    ] time= 22/06/2026 08:14:34
[2026-06-22 08:14:34,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:14:34,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:14:34,748.748 INFO    ] No existing commands found in stream
[2026-06-22 08:14:39,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:14:39,769.769 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-22 08:14:42,445.445 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-22 08:14:42,470.470 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM06202507 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d50770>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-22 08:14:42,479.479 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM06202507 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d50770>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-22 08:14:42,488.488 INFO    ] None
[2026-06-22 08:14:42,490.490 INFO    ] Checking for system updates...
[2026-06-22 08:14:42,532.532 INFO    ] 200
[2026-06-22 08:14:42,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:14:42,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:14:42,588.588 INFO    ] No update needed
[2026-06-22 08:14:42,590.590 INFO    ] Checking for camera pi updates...
[2026-06-22 08:14:42,609.609 INFO    ] 200
[2026-06-22 08:14:42,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:14:42,633.633 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:14:42,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:14:42,715.715 INFO    ] No camera update needed
[2026-06-22 08:14:42,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:14:42,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:14:42,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:14:42,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:14:44,771.771 INFO    ] ================================================
[2026-06-22 08:14:44,787.787 INFO    ] Launching Daemon at Mon Jun 22 08:14:44 IST 2026
[2026-06-22 08:14:44,798.798 INFO    ] ================================================
[2026-06-22 08:14:45,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:14:45
[2026-06-22 08:14:46,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:14:46,423.423 INFO    ] Initializing speech engine...
[2026-06-22 08:14:46,437.437 INFO    ] 2026-06-22 08:14:46
[2026-06-22 08:14:46,718.718 INFO    ] 2026-06-22 08:14:46
[2026-06-22 08:14:46,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:14:47,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:14:47,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:14:47,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:14:47,251.251 INFO    ] time= 22/06/2026 08:14:47
[2026-06-22 08:14:47,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:14:47,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:14:47,392.392 INFO    ] No existing commands found in stream
[2026-06-22 08:14:52,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:14:52,420.420 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-22 08:14:54,279.279 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:14:54,280.280 INFO    ] Checking for system updates...
[2026-06-22 08:14:54,305.305 INFO    ] 200
[2026-06-22 08:14:54,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:14:54,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:14:54,341.341 INFO    ] No update needed
[2026-06-22 08:14:54,342.342 INFO    ] Checking for camera pi updates...
[2026-06-22 08:14:54,365.365 INFO    ] 200
[2026-06-22 08:14:54,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:14:54,393.393 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:15:04,413.413 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam06202507.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by ConnectTimeoutError(<urllib3.connection.HTTPConnection object at 0x73d72150>, 'Connection to tmcam06202507.local timed out. (connect timeout=5)'))
[2026-06-22 08:15:04,450.450 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-06-22 08:15:04,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:15:04,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:15:04,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:15:04,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:15:06,518.518 INFO    ] ================================================
[2026-06-22 08:15:06,536.536 INFO    ] Launching Daemon at Mon Jun 22 08:15:06 IST 2026
[2026-06-22 08:15:06,548.548 INFO    ] ================================================
[2026-06-22 08:15:07,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:15:07
[2026-06-22 08:15:07,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:15:08,018.018 INFO    ] Initializing speech engine...
[2026-06-22 08:15:08,027.027 INFO    ] 2026-06-22 08:15:08
[2026-06-22 08:15:08,303.303 INFO    ] 2026-06-22 08:15:08
[2026-06-22 08:15:08,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:15:08,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:15:08,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:15:08,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:15:08,811.811 INFO    ] time= 22/06/2026 08:15:08
[2026-06-22 08:15:08,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:15:08,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:15:08,957.957 INFO    ] No existing commands found in stream
[2026-06-22 08:15:13,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:15:13,972.972 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-22 08:15:15,846.846 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:15:15,847.847 INFO    ] Checking for system updates...
[2026-06-22 08:15:15,868.868 INFO    ] 200
[2026-06-22 08:15:15,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:15:15,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:15:15,901.901 INFO    ] No update needed
[2026-06-22 08:15:15,903.903 INFO    ] Checking for camera pi updates...
[2026-06-22 08:15:15,923.923 INFO    ] 200
[2026-06-22 08:15:15,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:15:15,960.960 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:15:16,028.028 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:15:16,031.031 INFO    ] No camera update needed
[2026-06-22 08:15:16,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:15:16,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:15:16,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:15:16,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:15:18,088.088 INFO    ] ================================================
[2026-06-22 08:15:18,103.103 INFO    ] Launching Daemon at Mon Jun 22 08:15:18 IST 2026
[2026-06-22 08:15:18,114.114 INFO    ] ================================================
[2026-06-22 08:15:18,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:15:18
[2026-06-22 08:15:19,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:15:19,447.447 INFO    ] Initializing speech engine...
[2026-06-22 08:15:19,461.461 INFO    ] 2026-06-22 08:15:19
[2026-06-22 08:15:19,732.732 INFO    ] 2026-06-22 08:15:19
[2026-06-22 08:15:19,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:15:19,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:15:20,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:15:21,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:15:21,222.222 INFO    ] time= 22/06/2026 08:15:21
[2026-06-22 08:15:21,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:15:21,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:15:22,160.160 INFO    ] No existing commands found in stream
[2026-06-22 08:15:27,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:15:27,174.174 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-22 08:15:30,132.132 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:15:30,135.135 INFO    ] Checking for system updates...
[2026-06-22 08:15:30,172.172 INFO    ] 200
[2026-06-22 08:15:30,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:15:30,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:15:30,239.239 INFO    ] No update needed
[2026-06-22 08:15:30,241.241 INFO    ] Checking for camera pi updates...
[2026-06-22 08:15:30,275.275 INFO    ] 200
[2026-06-22 08:15:30,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:15:30,322.322 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:15:30,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:15:30,407.407 INFO    ] No camera update needed
[2026-06-22 08:15:30,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:15:30,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:15:30,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:15:30,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:15:32,465.465 INFO    ] ================================================
[2026-06-22 08:15:32,481.481 INFO    ] Launching Daemon at Mon Jun 22 08:15:32 IST 2026
[2026-06-22 08:15:32,493.493 INFO    ] ================================================
[2026-06-22 08:15:33,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:15:33
[2026-06-22 08:15:33,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:15:34,065.065 INFO    ] Initializing speech engine...
[2026-06-22 08:15:34,074.074 INFO    ] 2026-06-22 08:15:34
[2026-06-22 08:15:34,333.333 INFO    ] 2026-06-22 08:15:34
[2026-06-22 08:15:34,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:15:34,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:15:34,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:15:34,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:15:34,904.904 INFO    ] time= 22/06/2026 08:15:34
[2026-06-22 08:15:34,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:15:34,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:15:35,061.061 INFO    ] No existing commands found in stream
[2026-06-22 08:15:40,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:15:40,093.093 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-22 08:15:41,414.414 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:15:41,417.417 INFO    ] Checking for system updates...
[2026-06-22 08:15:41,455.455 INFO    ] 200
[2026-06-22 08:15:41,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:15:41,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:15:41,515.515 INFO    ] No update needed
[2026-06-22 08:15:41,518.518 INFO    ] Checking for camera pi updates...
[2026-06-22 08:15:41,553.553 INFO    ] 200
[2026-06-22 08:15:41,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:15:41,598.598 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:15:41,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:15:41,695.695 INFO    ] No camera update needed
[2026-06-22 08:15:41,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:15:41,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:15:41,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:15:41,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:15:43,753.753 INFO    ] ================================================
[2026-06-22 08:15:43,769.769 INFO    ] Launching Daemon at Mon Jun 22 08:15:43 IST 2026
[2026-06-22 08:15:43,779.779 INFO    ] ================================================
[2026-06-22 08:15:44,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:15:44
[2026-06-22 08:15:45,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:15:45,324.324 INFO    ] Initializing speech engine...
[2026-06-22 08:15:45,332.332 INFO    ] 2026-06-22 08:15:45
[2026-06-22 08:15:45,634.634 INFO    ] 2026-06-22 08:15:45
[2026-06-22 08:15:45,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:15:45,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:15:45,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:15:46,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:15:46,169.169 INFO    ] time= 22/06/2026 08:15:46
[2026-06-22 08:15:46,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:15:46,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:15:46,324.324 INFO    ] No existing commands found in stream
[2026-06-22 08:15:51,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:15:51,346.346 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-22 08:15:52,167.167 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:15:52,169.169 INFO    ] Checking for system updates...
[2026-06-22 08:15:52,191.191 INFO    ] 200
[2026-06-22 08:15:52,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:15:52,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:15:52,227.227 INFO    ] No update needed
[2026-06-22 08:15:52,228.228 INFO    ] Checking for camera pi updates...
[2026-06-22 08:15:52,247.247 INFO    ] 200
[2026-06-22 08:15:52,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:15:52,279.279 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:15:52,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:15:52,366.366 INFO    ] No camera update needed
[2026-06-22 08:15:52,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:15:52,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:15:52,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:15:52,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:15:54,421.421 INFO    ] ================================================
[2026-06-22 08:15:54,441.441 INFO    ] Launching Daemon at Mon Jun 22 08:15:54 IST 2026
[2026-06-22 08:15:54,456.456 INFO    ] ================================================
[2026-06-22 08:15:55,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:15:55
[2026-06-22 08:15:55,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:15:56,005.005 INFO    ] Initializing speech engine...
[2026-06-22 08:15:56,012.012 INFO    ] 2026-06-22 08:15:56
[2026-06-22 08:15:56,269.269 INFO    ] 2026-06-22 08:15:56
[2026-06-22 08:15:56,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:15:56,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:15:56,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:15:56,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:15:56,767.767 INFO    ] time= 22/06/2026 08:15:56
[2026-06-22 08:15:56,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:15:56,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:15:57,010.010 INFO    ] No existing commands found in stream
[2026-06-22 08:16:02,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:16:02,039.039 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-22 08:16:04,871.871 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:16:04,874.874 INFO    ] Checking for system updates...
[2026-06-22 08:16:04,913.913 INFO    ] 200
[2026-06-22 08:16:04,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:16:04,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:16:04,972.972 INFO    ] No update needed
[2026-06-22 08:16:04,974.974 INFO    ] Checking for camera pi updates...
[2026-06-22 08:16:05,009.009 INFO    ] 200
[2026-06-22 08:16:05,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:16:05,052.052 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:16:05,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:16:05,136.136 INFO    ] No camera update needed
[2026-06-22 08:16:05,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:16:05,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:16:05,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:16:05,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:16:07,192.192 INFO    ] ================================================
[2026-06-22 08:16:07,207.207 INFO    ] Launching Daemon at Mon Jun 22 08:16:07 IST 2026
[2026-06-22 08:16:07,218.218 INFO    ] ================================================
[2026-06-22 08:16:07,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:16:07
[2026-06-22 08:16:08,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:16:08,652.652 INFO    ] Initializing speech engine...
[2026-06-22 08:16:08,666.666 INFO    ] 2026-06-22 08:16:08
[2026-06-22 08:16:08,955.955 INFO    ] 2026-06-22 08:16:08
[2026-06-22 08:16:08,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:16:09,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:16:09,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:16:09,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:16:09,384.384 INFO    ] time= 22/06/2026 08:16:09
[2026-06-22 08:16:09,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:16:09,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:16:09,542.542 INFO    ] No existing commands found in stream
[2026-06-22 08:16:14,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:16:14,570.570 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-22 08:16:16,766.766 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:16:16,768.768 INFO    ] Checking for system updates...
[2026-06-22 08:16:16,789.789 INFO    ] 200
[2026-06-22 08:16:16,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:16:16,823.823 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:16:16,825.825 INFO    ] No update needed
[2026-06-22 08:16:16,826.826 INFO    ] Checking for camera pi updates...
[2026-06-22 08:16:16,847.847 INFO    ] 200
[2026-06-22 08:16:16,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:16:16,873.873 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:16:16,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:16:16,959.959 INFO    ] No camera update needed
[2026-06-22 08:16:16,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:16:16,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:16:16,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:16:16,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:16:19,016.016 INFO    ] ================================================
[2026-06-22 08:16:19,032.032 INFO    ] Launching Daemon at Mon Jun 22 08:16:19 IST 2026
[2026-06-22 08:16:19,043.043 INFO    ] ================================================
[2026-06-22 08:16:19,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:16:19
[2026-06-22 08:16:20,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:16:20,523.523 INFO    ] Initializing speech engine...
[2026-06-22 08:16:20,526.526 INFO    ] 2026-06-22 08:16:20
[2026-06-22 08:16:20,807.807 INFO    ] 2026-06-22 08:16:20
[2026-06-22 08:16:20,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:16:21,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:16:21,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:16:21,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:16:21,188.188 INFO    ] time= 22/06/2026 08:16:21
[2026-06-22 08:16:21,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:16:21,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:16:21,394.394 INFO    ] No existing commands found in stream
[2026-06-22 08:16:26,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:16:26,407.407 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-22 08:16:27,081.081 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:16:27,084.084 INFO    ] Checking for system updates...
[2026-06-22 08:16:27,120.120 INFO    ] 200
[2026-06-22 08:16:27,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:16:27,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:16:27,178.178 INFO    ] No update needed
[2026-06-22 08:16:27,180.180 INFO    ] Checking for camera pi updates...
[2026-06-22 08:16:27,215.215 INFO    ] 200
[2026-06-22 08:16:27,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:16:27,264.264 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:16:27,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:16:27,341.341 INFO    ] No camera update needed
[2026-06-22 08:16:27,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:16:27,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:16:27,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:16:27,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:16:29,398.398 INFO    ] ================================================
[2026-06-22 08:16:29,412.412 INFO    ] Launching Daemon at Mon Jun 22 08:16:29 IST 2026
[2026-06-22 08:16:29,423.423 INFO    ] ================================================
[2026-06-22 08:16:29,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:16:29
[2026-06-22 08:16:30,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:16:30,771.771 INFO    ] Initializing speech engine...
[2026-06-22 08:16:30,781.781 INFO    ] 2026-06-22 08:16:30
[2026-06-22 08:16:31,072.072 INFO    ] 2026-06-22 08:16:31
[2026-06-22 08:16:31,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:16:31,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:16:31,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:16:31,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:16:31,572.572 INFO    ] time= 22/06/2026 08:16:31
[2026-06-22 08:16:31,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:16:31,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:16:31,794.794 INFO    ] No existing commands found in stream
[2026-06-22 08:16:36,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:16:36,825.825 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-22 08:16:39,512.512 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:16:39,513.513 INFO    ] Checking for system updates...
[2026-06-22 08:16:39,534.534 INFO    ] 200
[2026-06-22 08:16:39,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:16:39,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:16:39,570.570 INFO    ] No update needed
[2026-06-22 08:16:39,571.571 INFO    ] Checking for camera pi updates...
[2026-06-22 08:16:39,599.599 INFO    ] 200
[2026-06-22 08:16:39,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:16:39,643.643 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:16:39,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:16:39,730.730 INFO    ] No camera update needed
[2026-06-22 08:16:39,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:16:39,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:16:39,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:16:39,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:16:41,788.788 INFO    ] ================================================
[2026-06-22 08:16:41,803.803 INFO    ] Launching Daemon at Mon Jun 22 08:16:41 IST 2026
[2026-06-22 08:16:41,815.815 INFO    ] ================================================
[2026-06-22 08:16:42,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:16:42
[2026-06-22 08:16:43,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:16:43,534.534 INFO    ] Initializing speech engine...
[2026-06-22 08:16:43,548.548 INFO    ] 2026-06-22 08:16:43
[2026-06-22 08:16:43,821.821 INFO    ] 2026-06-22 08:16:43
[2026-06-22 08:16:43,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:16:44,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:16:44,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:16:44,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:16:44,394.394 INFO    ] time= 22/06/2026 08:16:44
[2026-06-22 08:16:44,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:16:44,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:16:44,549.549 INFO    ] No existing commands found in stream
[2026-06-22 08:16:49,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:16:49,571.571 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-22 08:16:53,147.147 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:16:53,150.150 INFO    ] Checking for system updates...
[2026-06-22 08:16:53,186.186 INFO    ] 200
[2026-06-22 08:16:53,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:16:53,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:16:53,244.244 INFO    ] No update needed
[2026-06-22 08:16:53,247.247 INFO    ] Checking for camera pi updates...
[2026-06-22 08:16:53,280.280 INFO    ] 200
[2026-06-22 08:16:53,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:16:53,328.328 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:16:53,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:16:53,414.414 INFO    ] No camera update needed
[2026-06-22 08:16:53,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:16:53,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:16:53,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:16:53,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:16:55,469.469 INFO    ] ================================================
[2026-06-22 08:16:55,485.485 INFO    ] Launching Daemon at Mon Jun 22 08:16:55 IST 2026
[2026-06-22 08:16:55,497.497 INFO    ] ================================================
[2026-06-22 08:16:56,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:16:56
[2026-06-22 08:16:56,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:16:56,959.959 INFO    ] Initializing speech engine...
[2026-06-22 08:16:56,966.966 INFO    ] 2026-06-22 08:16:56
[2026-06-22 08:16:57,213.213 INFO    ] 2026-06-22 08:16:57
[2026-06-22 08:16:57,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:16:57,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:16:57,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:16:57,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:16:57,583.583 INFO    ] time= 22/06/2026 08:16:57
[2026-06-22 08:16:57,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:16:57,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:16:57,757.757 INFO    ] No existing commands found in stream
[2026-06-22 08:17:02,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:17:02,791.791 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-22 08:17:03,676.676 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:17:03,679.679 INFO    ] Checking for system updates...
[2026-06-22 08:17:03,715.715 INFO    ] 200
[2026-06-22 08:17:03,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:17:03,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:17:03,774.774 INFO    ] No update needed
[2026-06-22 08:17:03,776.776 INFO    ] Checking for camera pi updates...
[2026-06-22 08:17:03,810.810 INFO    ] 200
[2026-06-22 08:17:03,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:17:03,860.860 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:17:03,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:17:03,967.967 INFO    ] No camera update needed
[2026-06-22 08:17:03,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:17:03,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:17:03,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:17:03,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:17:06,022.022 INFO    ] ================================================
[2026-06-22 08:17:06,038.038 INFO    ] Launching Daemon at Mon Jun 22 08:17:06 IST 2026
[2026-06-22 08:17:06,049.049 INFO    ] ================================================
[2026-06-22 08:17:06,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:17:06
[2026-06-22 08:17:07,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:17:07,442.442 INFO    ] Initializing speech engine...
[2026-06-22 08:17:07,451.451 INFO    ] 2026-06-22 08:17:07
[2026-06-22 08:17:07,697.697 INFO    ] 2026-06-22 08:17:07
[2026-06-22 08:17:07,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:17:07,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:17:07,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:17:08,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:17:08,132.132 INFO    ] time= 22/06/2026 08:17:08
[2026-06-22 08:17:08,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:17:08,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:17:08,399.399 INFO    ] No existing commands found in stream
[2026-06-22 08:17:13,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:17:13,422.422 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-22 08:17:14,306.306 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:17:14,309.309 INFO    ] Checking for system updates...
[2026-06-22 08:17:14,347.347 INFO    ] 200
[2026-06-22 08:17:14,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:17:14,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:17:14,411.411 INFO    ] No update needed
[2026-06-22 08:17:14,413.413 INFO    ] Checking for camera pi updates...
[2026-06-22 08:17:14,450.450 INFO    ] 200
[2026-06-22 08:17:14,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:17:14,496.496 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:17:14,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:17:14,675.675 INFO    ] No camera update needed
[2026-06-22 08:17:14,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:17:14,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:17:14,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:17:14,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:17:16,731.731 INFO    ] ================================================
[2026-06-22 08:17:16,748.748 INFO    ] Launching Daemon at Mon Jun 22 08:17:16 IST 2026
[2026-06-22 08:17:16,760.760 INFO    ] ================================================
[2026-06-22 08:17:17,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:17:17
[2026-06-22 08:17:17,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:17:18,196.196 INFO    ] Initializing speech engine...
[2026-06-22 08:17:18,203.203 INFO    ] 2026-06-22 08:17:18
[2026-06-22 08:17:18,498.498 INFO    ] 2026-06-22 08:17:18
[2026-06-22 08:17:18,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:17:18,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:17:18,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:17:18,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:17:18,871.871 INFO    ] time= 22/06/2026 08:17:18
[2026-06-22 08:17:18,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:17:18,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:17:18,996.996 INFO    ] No existing commands found in stream
[2026-06-22 08:17:24,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:17:24,014.014 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-22 08:17:25,388.388 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:17:25,391.391 INFO    ] Checking for system updates...
[2026-06-22 08:17:25,429.429 INFO    ] 200
[2026-06-22 08:17:25,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:17:25,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:17:25,486.486 INFO    ] No update needed
[2026-06-22 08:17:25,489.489 INFO    ] Checking for camera pi updates...
[2026-06-22 08:17:25,528.528 INFO    ] 200
[2026-06-22 08:17:25,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:17:25,572.572 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:17:25,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:17:25,663.663 INFO    ] No camera update needed
[2026-06-22 08:17:25,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:17:25,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:17:25,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:17:25,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:17:27,718.718 INFO    ] ================================================
[2026-06-22 08:17:27,733.733 INFO    ] Launching Daemon at Mon Jun 22 08:17:27 IST 2026
[2026-06-22 08:17:27,744.744 INFO    ] ================================================
[2026-06-22 08:17:28,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:17:28
[2026-06-22 08:17:28,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:17:29,304.304 INFO    ] Initializing speech engine...
[2026-06-22 08:17:29,316.316 INFO    ] 2026-06-22 08:17:29
[2026-06-22 08:17:29,626.626 INFO    ] 2026-06-22 08:17:29
[2026-06-22 08:17:29,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:17:29,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:17:29,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:17:30,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:17:30,138.138 INFO    ] time= 22/06/2026 08:17:30
[2026-06-22 08:17:30,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:17:30,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:17:30,295.295 INFO    ] No existing commands found in stream
[2026-06-22 08:17:35,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:17:35,328.328 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-22 08:17:38,275.275 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:17:38,278.278 INFO    ] Checking for system updates...
[2026-06-22 08:17:38,315.315 INFO    ] 200
[2026-06-22 08:17:38,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:17:38,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:17:38,374.374 INFO    ] No update needed
[2026-06-22 08:17:38,377.377 INFO    ] Checking for camera pi updates...
[2026-06-22 08:17:38,412.412 INFO    ] 200
[2026-06-22 08:17:38,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:17:38,457.457 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:17:38,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:17:38,559.559 INFO    ] No camera update needed
[2026-06-22 08:17:38,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:17:38,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:17:38,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:17:38,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:17:40,616.616 INFO    ] ================================================
[2026-06-22 08:17:40,632.632 INFO    ] Launching Daemon at Mon Jun 22 08:17:40 IST 2026
[2026-06-22 08:17:40,643.643 INFO    ] ================================================
[2026-06-22 08:17:41,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:17:41
[2026-06-22 08:17:41,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:17:41,971.971 INFO    ] Initializing speech engine...
[2026-06-22 08:17:41,986.986 INFO    ] 2026-06-22 08:17:41
[2026-06-22 08:17:42,270.270 INFO    ] 2026-06-22 08:17:42
[2026-06-22 08:17:42,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:17:42,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:17:42,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:17:42,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:17:42,687.687 INFO    ] time= 22/06/2026 08:17:42
[2026-06-22 08:17:42,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:17:42,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:17:42,771.771 INFO    ] No existing commands found in stream
[2026-06-22 08:17:47,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:17:47,787.787 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-22 08:17:50,799.799 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:17:50,801.801 INFO    ] Checking for system updates...
[2026-06-22 08:17:50,841.841 INFO    ] 200
[2026-06-22 08:17:50,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:17:50,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:17:50,904.904 INFO    ] No update needed
[2026-06-22 08:17:50,907.907 INFO    ] Checking for camera pi updates...
[2026-06-22 08:17:50,944.944 INFO    ] 200
[2026-06-22 08:17:50,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:17:50,988.988 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:17:51,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:17:51,073.073 INFO    ] No camera update needed
[2026-06-22 08:17:51,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:17:51,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:17:51,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:17:51,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:17:53,131.131 INFO    ] ================================================
[2026-06-22 08:17:53,148.148 INFO    ] Launching Daemon at Mon Jun 22 08:17:53 IST 2026
[2026-06-22 08:17:53,159.159 INFO    ] ================================================
[2026-06-22 08:17:53,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:17:53
[2026-06-22 08:17:54,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:17:54,587.587 INFO    ] Initializing speech engine...
[2026-06-22 08:17:54,593.593 INFO    ] 2026-06-22 08:17:54
[2026-06-22 08:17:54,888.888 INFO    ] 2026-06-22 08:17:54
[2026-06-22 08:17:54,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:17:55,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:17:55,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:17:55,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:17:55,490.490 INFO    ] time= 22/06/2026 08:17:55
[2026-06-22 08:17:55,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:17:55,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:17:55,664.664 INFO    ] No existing commands found in stream
[2026-06-22 08:18:00,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:18:00,689.689 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-22 08:18:04,400.400 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:18:04,402.402 INFO    ] Checking for system updates...
[2026-06-22 08:18:04,453.453 INFO    ] 200
[2026-06-22 08:18:04,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:18:04,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:18:04,511.511 INFO    ] No update needed
[2026-06-22 08:18:04,513.513 INFO    ] Checking for camera pi updates...
[2026-06-22 08:18:04,547.547 INFO    ] 200
[2026-06-22 08:18:04,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:18:04,591.591 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:18:04,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:18:04,698.698 INFO    ] No camera update needed
[2026-06-22 08:18:04,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:18:04,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:18:04,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:18:04,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:18:06,752.752 INFO    ] ================================================
[2026-06-22 08:18:06,768.768 INFO    ] Launching Daemon at Mon Jun 22 08:18:06 IST 2026
[2026-06-22 08:18:06,779.779 INFO    ] ================================================
[2026-06-22 08:18:07,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:18:07
[2026-06-22 08:18:08,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:18:08,354.354 INFO    ] Initializing speech engine...
[2026-06-22 08:18:08,368.368 INFO    ] 2026-06-22 08:18:08
[2026-06-22 08:18:08,674.674 INFO    ] 2026-06-22 08:18:08
[2026-06-22 08:18:08,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:18:08,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:18:08,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:18:09,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:18:09,196.196 INFO    ] time= 22/06/2026 08:18:09
[2026-06-22 08:18:09,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:18:09,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:18:09,338.338 INFO    ] No existing commands found in stream
[2026-06-22 08:18:14,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:18:14,368.368 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-22 08:18:18,568.568 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:18:18,570.570 INFO    ] Checking for system updates...
[2026-06-22 08:18:18,591.591 INFO    ] 200
[2026-06-22 08:18:18,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:18:18,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:18:18,627.627 INFO    ] No update needed
[2026-06-22 08:18:18,628.628 INFO    ] Checking for camera pi updates...
[2026-06-22 08:18:18,652.652 INFO    ] 200
[2026-06-22 08:18:18,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:18:18,701.701 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:18:18,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:18:18,797.797 INFO    ] No camera update needed
[2026-06-22 08:18:18,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:18:18,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:18:18,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:18:18,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:18:20,855.855 INFO    ] ================================================
[2026-06-22 08:18:20,870.870 INFO    ] Launching Daemon at Mon Jun 22 08:18:20 IST 2026
[2026-06-22 08:18:20,881.881 INFO    ] ================================================
[2026-06-22 08:18:21,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:18:21
[2026-06-22 08:18:21,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:18:22,296.296 INFO    ] Initializing speech engine...
[2026-06-22 08:18:22,304.304 INFO    ] 2026-06-22 08:18:22
[2026-06-22 08:18:22,578.578 INFO    ] 2026-06-22 08:18:22
[2026-06-22 08:18:22,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:18:22,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:18:22,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:18:23,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:18:23,083.083 INFO    ] time= 22/06/2026 08:18:23
[2026-06-22 08:18:23,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:18:23,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:18:23,275.275 INFO    ] No existing commands found in stream
[2026-06-22 08:18:28,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:18:28,299.299 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-22 08:18:31,025.025 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:18:31,026.026 INFO    ] Checking for system updates...
[2026-06-22 08:18:31,048.048 INFO    ] 200
[2026-06-22 08:18:31,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:18:31,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:18:31,096.096 INFO    ] No update needed
[2026-06-22 08:18:31,098.098 INFO    ] Checking for camera pi updates...
[2026-06-22 08:18:31,139.139 INFO    ] 200
[2026-06-22 08:18:31,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:18:31,183.183 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:18:31,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:18:31,275.275 INFO    ] No camera update needed
[2026-06-22 08:18:31,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:18:31,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:18:31,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:18:31,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:18:33,330.330 INFO    ] ================================================
[2026-06-22 08:18:33,345.345 INFO    ] Launching Daemon at Mon Jun 22 08:18:33 IST 2026
[2026-06-22 08:18:33,356.356 INFO    ] ================================================
[2026-06-22 08:18:34,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:18:33
[2026-06-22 08:18:34,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:18:34,935.935 INFO    ] Initializing speech engine...
[2026-06-22 08:18:34,960.960 INFO    ] 2026-06-22 08:18:34
[2026-06-22 08:18:35,235.235 INFO    ] 2026-06-22 08:18:35
[2026-06-22 08:18:35,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:18:35,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:18:35,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:18:35,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:18:35,678.678 INFO    ] time= 22/06/2026 08:18:35
[2026-06-22 08:18:35,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:18:35,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:18:35,898.898 INFO    ] No existing commands found in stream
[2026-06-22 08:18:40,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:18:40,923.923 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-22 08:18:44,212.212 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:18:44,215.215 INFO    ] Checking for system updates...
[2026-06-22 08:18:44,256.256 INFO    ] 200
[2026-06-22 08:18:44,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:18:44,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:18:44,315.315 INFO    ] No update needed
[2026-06-22 08:18:44,318.318 INFO    ] Checking for camera pi updates...
[2026-06-22 08:18:44,361.361 INFO    ] 200
[2026-06-22 08:18:44,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:18:44,411.411 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:18:44,511.511 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:18:44,514.514 INFO    ] No camera update needed
[2026-06-22 08:18:44,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:18:44,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:18:44,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:18:44,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:18:46,570.570 INFO    ] ================================================
[2026-06-22 08:18:46,586.586 INFO    ] Launching Daemon at Mon Jun 22 08:18:46 IST 2026
[2026-06-22 08:18:46,596.596 INFO    ] ================================================
[2026-06-22 08:18:47,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:18:47
[2026-06-22 08:18:47,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:18:48,235.235 INFO    ] Initializing speech engine...
[2026-06-22 08:18:48,249.249 INFO    ] 2026-06-22 08:18:48
[2026-06-22 08:18:48,556.556 INFO    ] 2026-06-22 08:18:48
[2026-06-22 08:18:48,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:18:48,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:18:48,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:18:49,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:18:49,090.090 INFO    ] time= 22/06/2026 08:18:49
[2026-06-22 08:18:49,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:18:49,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:18:49,259.259 INFO    ] No existing commands found in stream
[2026-06-22 08:18:54,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:18:54,288.288 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-22 08:18:55,437.437 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:18:55,439.439 INFO    ] Checking for system updates...
[2026-06-22 08:18:55,462.462 INFO    ] 200
[2026-06-22 08:18:55,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:18:55,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:18:55,506.506 INFO    ] No update needed
[2026-06-22 08:18:55,508.508 INFO    ] Checking for camera pi updates...
[2026-06-22 08:18:55,547.547 INFO    ] 200
[2026-06-22 08:18:55,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:18:55,591.591 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:18:55,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:18:55,672.672 INFO    ] No camera update needed
[2026-06-22 08:18:55,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:18:55,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:18:55,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:18:55,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:18:57,728.728 INFO    ] ================================================
[2026-06-22 08:18:57,744.744 INFO    ] Launching Daemon at Mon Jun 22 08:18:57 IST 2026
[2026-06-22 08:18:57,755.755 INFO    ] ================================================
[2026-06-22 08:18:58,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:18:58
[2026-06-22 08:18:58,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:18:59,303.303 INFO    ] Initializing speech engine...
[2026-06-22 08:18:59,314.314 INFO    ] 2026-06-22 08:18:59
[2026-06-22 08:18:59,587.587 INFO    ] 2026-06-22 08:18:59
[2026-06-22 08:18:59,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:18:59,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:18:59,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:19:00,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:19:00,051.051 INFO    ] time= 22/06/2026 08:19:00
[2026-06-22 08:19:00,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:19:00,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:19:00,222.222 INFO    ] No existing commands found in stream
[2026-06-22 08:19:05,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:19:05,239.239 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-22 08:19:06,555.555 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:19:06,558.558 INFO    ] Checking for system updates...
[2026-06-22 08:19:06,601.601 INFO    ] 200
[2026-06-22 08:19:06,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:19:06,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:19:06,661.661 INFO    ] No update needed
[2026-06-22 08:19:06,664.664 INFO    ] Checking for camera pi updates...
[2026-06-22 08:19:06,699.699 INFO    ] 200
[2026-06-22 08:19:06,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:19:06,746.746 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:19:06,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:19:06,835.835 INFO    ] No camera update needed
[2026-06-22 08:19:06,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:19:06,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:19:06,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:19:06,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:19:08,891.891 INFO    ] ================================================
[2026-06-22 08:19:08,907.907 INFO    ] Launching Daemon at Mon Jun 22 08:19:08 IST 2026
[2026-06-22 08:19:08,918.918 INFO    ] ================================================
[2026-06-22 08:19:09,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:19:09
[2026-06-22 08:19:10,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:19:10,337.337 INFO    ] Initializing speech engine...
[2026-06-22 08:19:10,344.344 INFO    ] 2026-06-22 08:19:10
[2026-06-22 08:19:10,642.642 INFO    ] 2026-06-22 08:19:10
[2026-06-22 08:19:10,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:19:10,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:19:10,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:19:10,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:19:11,000.000 INFO    ] time= 22/06/2026 08:19:10
[2026-06-22 08:19:11,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:19:11,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:19:11,154.154 INFO    ] No existing commands found in stream
[2026-06-22 08:19:16,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:19:16,167.167 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-22 08:19:20,188.188 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:19:20,189.189 INFO    ] Checking for system updates...
[2026-06-22 08:19:20,219.219 INFO    ] 200
[2026-06-22 08:19:20,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:19:20,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:19:20,284.284 INFO    ] No update needed
[2026-06-22 08:19:20,287.287 INFO    ] Checking for camera pi updates...
[2026-06-22 08:19:20,325.325 INFO    ] 200
[2026-06-22 08:19:20,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:19:20,368.368 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:19:20,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:19:20,550.550 INFO    ] No camera update needed
[2026-06-22 08:19:20,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:19:20,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:19:20,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:19:20,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:19:22,607.607 INFO    ] ================================================
[2026-06-22 08:19:22,622.622 INFO    ] Launching Daemon at Mon Jun 22 08:19:22 IST 2026
[2026-06-22 08:19:22,633.633 INFO    ] ================================================
[2026-06-22 08:19:23,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:19:23
[2026-06-22 08:19:23,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:19:24,222.222 INFO    ] Initializing speech engine...
[2026-06-22 08:19:24,231.231 INFO    ] 2026-06-22 08:19:24
[2026-06-22 08:19:24,478.478 INFO    ] 2026-06-22 08:19:24
[2026-06-22 08:19:24,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:19:24,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:19:24,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:19:24,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:19:24,851.851 INFO    ] time= 22/06/2026 08:19:24
[2026-06-22 08:19:24,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:19:24,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:19:25,038.038 INFO    ] No existing commands found in stream
[2026-06-22 08:19:30,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:19:30,061.061 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-22 08:19:30,528.528 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:19:30,531.531 INFO    ] Checking for system updates...
[2026-06-22 08:19:30,569.569 INFO    ] 200
[2026-06-22 08:19:30,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:19:30,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:19:30,636.636 INFO    ] No update needed
[2026-06-22 08:19:30,640.640 INFO    ] Checking for camera pi updates...
[2026-06-22 08:19:30,675.675 INFO    ] 200
[2026-06-22 08:19:30,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:19:30,719.719 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:19:30,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:19:30,817.817 INFO    ] No camera update needed
[2026-06-22 08:19:30,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:19:30,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:19:30,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:19:30,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:19:32,875.875 INFO    ] ================================================
[2026-06-22 08:19:32,891.891 INFO    ] Launching Daemon at Mon Jun 22 08:19:32 IST 2026
[2026-06-22 08:19:32,902.902 INFO    ] ================================================
[2026-06-22 08:19:33,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:19:33
[2026-06-22 08:19:34,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:19:34,565.565 INFO    ] Initializing speech engine...
[2026-06-22 08:19:34,578.578 INFO    ] 2026-06-22 08:19:34
[2026-06-22 08:19:34,884.884 INFO    ] 2026-06-22 08:19:34
[2026-06-22 08:19:34,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:19:35,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:19:35,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:19:35,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:19:35,431.431 INFO    ] time= 22/06/2026 08:19:35
[2026-06-22 08:19:35,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:19:35,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:19:35,581.581 INFO    ] No existing commands found in stream
[2026-06-22 08:19:40,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:19:40,604.604 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-22 08:19:43,954.954 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:19:43,957.957 INFO    ] Checking for system updates...
[2026-06-22 08:19:43,999.999 INFO    ] 200
[2026-06-22 08:19:44,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:19:44,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:19:44,057.057 INFO    ] No update needed
[2026-06-22 08:19:44,059.059 INFO    ] Checking for camera pi updates...
[2026-06-22 08:19:44,098.098 INFO    ] 200
[2026-06-22 08:19:44,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:19:44,142.142 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:19:44,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:19:44,243.243 INFO    ] No camera update needed
[2026-06-22 08:19:44,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:19:44,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:19:44,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:19:44,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:19:46,298.298 INFO    ] ================================================
[2026-06-22 08:19:46,313.313 INFO    ] Launching Daemon at Mon Jun 22 08:19:46 IST 2026
[2026-06-22 08:19:46,324.324 INFO    ] ================================================
[2026-06-22 08:19:47,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:19:47
[2026-06-22 08:19:47,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:19:47,990.990 INFO    ] Initializing speech engine...
[2026-06-22 08:19:48,004.004 INFO    ] 2026-06-22 08:19:47
[2026-06-22 08:19:48,272.272 INFO    ] 2026-06-22 08:19:48
[2026-06-22 08:19:48,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:19:48,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:19:48,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:19:48,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:19:48,821.821 INFO    ] time= 22/06/2026 08:19:48
[2026-06-22 08:19:48,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:19:48,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:19:48,973.973 INFO    ] No existing commands found in stream
[2026-06-22 08:19:53,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:19:53,993.993 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-22 08:19:54,677.677 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:19:54,680.680 INFO    ] Checking for system updates...
[2026-06-22 08:19:54,721.721 INFO    ] 200
[2026-06-22 08:19:54,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:19:54,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:19:54,787.787 INFO    ] No update needed
[2026-06-22 08:19:54,789.789 INFO    ] Checking for camera pi updates...
[2026-06-22 08:19:54,824.824 INFO    ] 200
[2026-06-22 08:19:54,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:19:54,877.877 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:19:54,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:19:54,956.956 INFO    ] No camera update needed
[2026-06-22 08:19:54,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:19:54,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:19:54,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:19:54,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:19:57,012.012 INFO    ] ================================================
[2026-06-22 08:19:57,028.028 INFO    ] Launching Daemon at Mon Jun 22 08:19:57 IST 2026
[2026-06-22 08:19:57,039.039 INFO    ] ================================================
[2026-06-22 08:19:57,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:19:57
[2026-06-22 08:19:58,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:19:58,367.367 INFO    ] Initializing speech engine...
[2026-06-22 08:19:58,390.390 INFO    ] 2026-06-22 08:19:58
[2026-06-22 08:19:58,647.647 INFO    ] 2026-06-22 08:19:58
[2026-06-22 08:19:58,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:19:58,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:19:58,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:19:59,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:19:59,137.137 INFO    ] time= 22/06/2026 08:19:59
[2026-06-22 08:19:59,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:19:59,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:19:59,361.361 INFO    ] No existing commands found in stream
[2026-06-22 08:20:04,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:20:04,392.392 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-22 08:20:08,048.048 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:20:08,050.050 INFO    ] Checking for system updates...
[2026-06-22 08:20:08,071.071 INFO    ] 200
[2026-06-22 08:20:08,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:20:08,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:20:08,104.104 INFO    ] No update needed
[2026-06-22 08:20:08,106.106 INFO    ] Checking for camera pi updates...
[2026-06-22 08:20:08,126.126 INFO    ] 200
[2026-06-22 08:20:08,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:20:08,169.169 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:20:08,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:20:08,262.262 INFO    ] No camera update needed
[2026-06-22 08:20:08,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:20:08,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:20:08,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:20:08,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:20:10,317.317 INFO    ] ================================================
[2026-06-22 08:20:10,334.334 INFO    ] Launching Daemon at Mon Jun 22 08:20:10 IST 2026
[2026-06-22 08:20:10,345.345 INFO    ] ================================================
[2026-06-22 08:20:10,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:20:10
[2026-06-22 08:20:11,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:20:11,801.801 INFO    ] Initializing speech engine...
[2026-06-22 08:20:11,810.810 INFO    ] 2026-06-22 08:20:11
[2026-06-22 08:20:12,057.057 INFO    ] 2026-06-22 08:20:12
[2026-06-22 08:20:12,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:20:12,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:20:12,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:20:12,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:20:12,543.543 INFO    ] time= 22/06/2026 08:20:12
[2026-06-22 08:20:12,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:20:12,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:20:12,757.757 INFO    ] No existing commands found in stream
[2026-06-22 08:20:17,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:20:17,784.784 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-22 08:20:19,839.839 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:20:19,840.840 INFO    ] Checking for system updates...
[2026-06-22 08:20:19,862.862 INFO    ] 200
[2026-06-22 08:20:19,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:20:19,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:20:19,897.897 INFO    ] No update needed
[2026-06-22 08:20:19,898.898 INFO    ] Checking for camera pi updates...
[2026-06-22 08:20:19,918.918 INFO    ] 200
[2026-06-22 08:20:19,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:20:19,959.959 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:20:20,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:20:20,042.042 INFO    ] No camera update needed
[2026-06-22 08:20:20,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:20:20,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:20:20,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:20:20,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:20:22,098.098 INFO    ] ================================================
[2026-06-22 08:20:22,113.113 INFO    ] Launching Daemon at Mon Jun 22 08:20:22 IST 2026
[2026-06-22 08:20:22,123.123 INFO    ] ================================================
[2026-06-22 08:20:22,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:20:22
[2026-06-22 08:20:23,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:20:23,588.588 INFO    ] Initializing speech engine...
[2026-06-22 08:20:23,597.597 INFO    ] 2026-06-22 08:20:23
[2026-06-22 08:20:23,873.873 INFO    ] 2026-06-22 08:20:23
[2026-06-22 08:20:23,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:20:24,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:20:24,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:20:24,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:20:24,256.256 INFO    ] time= 22/06/2026 08:20:24
[2026-06-22 08:20:24,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:20:24,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:20:24,447.447 INFO    ] No existing commands found in stream
[2026-06-22 08:20:29,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:20:29,470.470 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-22 08:20:30,001.001 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:20:30,002.002 INFO    ] Checking for system updates...
[2026-06-22 08:20:30,028.028 INFO    ] 200
[2026-06-22 08:20:30,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:20:30,085.085 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:20:30,088.088 INFO    ] No update needed
[2026-06-22 08:20:30,091.091 INFO    ] Checking for camera pi updates...
[2026-06-22 08:20:30,129.129 INFO    ] 200
[2026-06-22 08:20:30,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:20:30,178.178 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:20:30,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:20:30,275.275 INFO    ] No camera update needed
[2026-06-22 08:20:30,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:20:30,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:20:30,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:20:30,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:20:32,337.337 INFO    ] ================================================
[2026-06-22 08:20:32,353.353 INFO    ] Launching Daemon at Mon Jun 22 08:20:32 IST 2026
[2026-06-22 08:20:32,364.364 INFO    ] ================================================
[2026-06-22 08:20:32,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:20:32
[2026-06-22 08:20:33,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:20:33,829.829 INFO    ] Initializing speech engine...
[2026-06-22 08:20:33,836.836 INFO    ] 2026-06-22 08:20:33
[2026-06-22 08:20:34,088.088 INFO    ] 2026-06-22 08:20:34
[2026-06-22 08:20:34,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:20:34,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:20:34,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:20:34,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:20:34,662.662 INFO    ] time= 22/06/2026 08:20:34
[2026-06-22 08:20:34,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:20:34,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:20:35,810.810 INFO    ] No existing commands found in stream
[2026-06-22 08:20:40,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:20:40,835.835 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-22 08:20:42,722.722 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:20:42,724.724 INFO    ] Checking for system updates...
[2026-06-22 08:20:42,757.757 INFO    ] 200
[2026-06-22 08:20:42,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:20:42,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:20:42,820.820 INFO    ] No update needed
[2026-06-22 08:20:42,823.823 INFO    ] Checking for camera pi updates...
[2026-06-22 08:20:42,856.856 INFO    ] 200
[2026-06-22 08:20:42,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:20:42,903.903 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:20:42,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:20:42,992.992 INFO    ] No camera update needed
[2026-06-22 08:20:42,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:20:42,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:20:43,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:20:43,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:20:45,049.049 INFO    ] ================================================
[2026-06-22 08:20:45,066.066 INFO    ] Launching Daemon at Mon Jun 22 08:20:45 IST 2026
[2026-06-22 08:20:45,077.077 INFO    ] ================================================
[2026-06-22 08:20:45,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:20:45
[2026-06-22 08:20:46,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:20:46,422.422 INFO    ] Initializing speech engine...
[2026-06-22 08:20:46,441.441 INFO    ] 2026-06-22 08:20:46
[2026-06-22 08:20:46,697.697 INFO    ] 2026-06-22 08:20:46
[2026-06-22 08:20:46,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:20:46,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:20:46,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:20:47,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:20:47,101.101 INFO    ] time= 22/06/2026 08:20:47
[2026-06-22 08:20:47,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:20:47,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:20:47,211.211 INFO    ] No existing commands found in stream
[2026-06-22 08:20:52,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:20:52,224.224 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-22 08:20:55,082.082 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:20:55,083.083 INFO    ] Checking for system updates...
[2026-06-22 08:20:55,105.105 INFO    ] 200
[2026-06-22 08:20:55,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:20:55,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:20:55,140.140 INFO    ] No update needed
[2026-06-22 08:20:55,142.142 INFO    ] Checking for camera pi updates...
[2026-06-22 08:20:55,179.179 INFO    ] 200
[2026-06-22 08:20:55,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:20:55,222.222 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:20:55,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:20:55,320.320 INFO    ] No camera update needed
[2026-06-22 08:20:55,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:20:55,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:20:55,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:20:55,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:20:57,381.381 INFO    ] ================================================
[2026-06-22 08:20:57,396.396 INFO    ] Launching Daemon at Mon Jun 22 08:20:57 IST 2026
[2026-06-22 08:20:57,407.407 INFO    ] ================================================
[2026-06-22 08:20:58,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:20:57
[2026-06-22 08:20:58,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:20:58,857.857 INFO    ] Initializing speech engine...
[2026-06-22 08:20:58,880.880 INFO    ] 2026-06-22 08:20:58
[2026-06-22 08:20:59,133.133 INFO    ] 2026-06-22 08:20:59
[2026-06-22 08:20:59,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:20:59,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:20:59,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:20:59,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:20:59,511.511 INFO    ] time= 22/06/2026 08:20:59
[2026-06-22 08:20:59,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:20:59,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:20:59,704.704 INFO    ] No existing commands found in stream
[2026-06-22 08:21:04,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:21:04,720.720 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-22 08:21:07,642.642 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:21:07,644.644 INFO    ] Checking for system updates...
[2026-06-22 08:21:07,676.676 INFO    ] 200
[2026-06-22 08:21:07,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:21:07,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:21:07,735.735 INFO    ] No update needed
[2026-06-22 08:21:07,738.738 INFO    ] Checking for camera pi updates...
[2026-06-22 08:21:07,772.772 INFO    ] 200
[2026-06-22 08:21:07,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:21:07,818.818 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:21:07,921.921 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:21:07,924.924 INFO    ] No camera update needed
[2026-06-22 08:21:07,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:21:07,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:21:07,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:21:07,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:21:09,985.985 INFO    ] ================================================
[2026-06-22 08:21:10,000.000 INFO    ] Launching Daemon at Mon Jun 22 08:21:09 IST 2026
[2026-06-22 08:21:10,011.011 INFO    ] ================================================
[2026-06-22 08:21:10,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:21:10
[2026-06-22 08:21:11,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:21:11,383.383 INFO    ] Initializing speech engine...
[2026-06-22 08:21:11,392.392 INFO    ] 2026-06-22 08:21:11
[2026-06-22 08:21:11,643.643 INFO    ] 2026-06-22 08:21:11
[2026-06-22 08:21:11,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:21:11,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:21:11,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:21:12,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:21:12,019.019 INFO    ] time= 22/06/2026 08:21:12
[2026-06-22 08:21:12,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:21:12,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:21:12,220.220 INFO    ] No existing commands found in stream
[2026-06-22 08:21:17,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:21:17,234.234 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-22 08:21:21,139.139 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:21:21,141.141 INFO    ] Checking for system updates...
[2026-06-22 08:21:21,181.181 INFO    ] 200
[2026-06-22 08:21:21,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:21:21,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:21:21,246.246 INFO    ] No update needed
[2026-06-22 08:21:21,249.249 INFO    ] Checking for camera pi updates...
[2026-06-22 08:21:21,286.286 INFO    ] 200
[2026-06-22 08:21:21,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:21:21,332.332 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:21:21,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:21:21,392.392 INFO    ] No camera update needed
[2026-06-22 08:21:21,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:21:21,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:21:21,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:21:21,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:21:23,453.453 INFO    ] ================================================
[2026-06-22 08:21:23,468.468 INFO    ] Launching Daemon at Mon Jun 22 08:21:23 IST 2026
[2026-06-22 08:21:23,479.479 INFO    ] ================================================
[2026-06-22 08:21:24,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:21:24
[2026-06-22 08:21:24,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:21:24,839.839 INFO    ] Initializing speech engine...
[2026-06-22 08:21:24,849.849 INFO    ] 2026-06-22 08:21:24
[2026-06-22 08:21:25,100.100 INFO    ] 2026-06-22 08:21:25
[2026-06-22 08:21:25,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:21:25,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:21:25,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:21:25,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:21:25,592.592 INFO    ] time= 22/06/2026 08:21:25
[2026-06-22 08:21:25,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:21:25,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:21:25,819.819 INFO    ] No existing commands found in stream
[2026-06-22 08:21:30,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:21:30,842.842 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-22 08:21:31,548.548 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:21:31,550.550 INFO    ] Checking for system updates...
[2026-06-22 08:21:31,596.596 INFO    ] 200
[2026-06-22 08:21:31,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:21:31,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:21:31,661.661 INFO    ] No update needed
[2026-06-22 08:21:31,664.664 INFO    ] Checking for camera pi updates...
[2026-06-22 08:21:31,698.698 INFO    ] 200
[2026-06-22 08:21:31,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:21:31,747.747 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:21:31,913.913 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:21:31,916.916 INFO    ] No camera update needed
[2026-06-22 08:21:31,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:21:31,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:21:31,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:21:31,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:21:33,983.983 INFO    ] ================================================
[2026-06-22 08:21:34,999.999 INFO    ] Launching Daemon at Mon Jun 22 08:21:33 IST 2026
[2026-06-22 08:21:34,009.009 INFO    ] ================================================
[2026-06-22 08:21:34,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:21:34
[2026-06-22 08:21:35,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:21:35,434.434 INFO    ] Initializing speech engine...
[2026-06-22 08:21:35,443.443 INFO    ] 2026-06-22 08:21:35
[2026-06-22 08:21:35,696.696 INFO    ] 2026-06-22 08:21:35
[2026-06-22 08:21:35,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:21:35,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:21:35,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:21:36,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:21:36,177.177 INFO    ] time= 22/06/2026 08:21:36
[2026-06-22 08:21:36,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:21:36,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:21:36,402.402 INFO    ] No existing commands found in stream
[2026-06-22 08:21:41,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:21:41,430.430 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-22 08:21:44,993.993 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:21:44,996.996 INFO    ] Checking for system updates...
[2026-06-22 08:21:45,032.032 INFO    ] 200
[2026-06-22 08:21:45,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:21:45,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:21:45,091.091 INFO    ] No update needed
[2026-06-22 08:21:45,094.094 INFO    ] Checking for camera pi updates...
[2026-06-22 08:21:45,128.128 INFO    ] 200
[2026-06-22 08:21:45,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:21:45,171.171 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:21:45,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:21:45,266.266 INFO    ] No camera update needed
[2026-06-22 08:21:45,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:21:45,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:21:45,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:21:45,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:21:47,324.324 INFO    ] ================================================
[2026-06-22 08:21:47,341.341 INFO    ] Launching Daemon at Mon Jun 22 08:21:47 IST 2026
[2026-06-22 08:21:47,353.353 INFO    ] ================================================
[2026-06-22 08:21:47,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:21:47
[2026-06-22 08:21:48,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:21:48,768.768 INFO    ] Initializing speech engine...
[2026-06-22 08:21:48,774.774 INFO    ] 2026-06-22 08:21:48
[2026-06-22 08:21:49,027.027 INFO    ] 2026-06-22 08:21:49
[2026-06-22 08:21:49,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:21:49,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:21:49,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:21:49,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:21:49,404.404 INFO    ] time= 22/06/2026 08:21:49
[2026-06-22 08:21:49,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:21:49,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:21:49,595.595 INFO    ] No existing commands found in stream
[2026-06-22 08:21:54,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:21:54,620.620 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-22 08:21:58,990.990 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:21:58,992.992 INFO    ] Checking for system updates...
[2026-06-22 08:21:59,033.033 INFO    ] 200
[2026-06-22 08:21:59,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:21:59,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:21:59,101.101 INFO    ] No update needed
[2026-06-22 08:21:59,104.104 INFO    ] Checking for camera pi updates...
[2026-06-22 08:21:59,139.139 INFO    ] 200
[2026-06-22 08:21:59,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:21:59,188.188 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:21:59,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:21:59,270.270 INFO    ] No camera update needed
[2026-06-22 08:21:59,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:21:59,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:21:59,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:21:59,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:22:01,331.331 INFO    ] ================================================
[2026-06-22 08:22:01,347.347 INFO    ] Launching Daemon at Mon Jun 22 08:22:01 IST 2026
[2026-06-22 08:22:01,358.358 INFO    ] ================================================
[2026-06-22 08:22:02,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:22:02
[2026-06-22 08:22:02,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:22:03,039.039 INFO    ] Initializing speech engine...
[2026-06-22 08:22:03,053.053 INFO    ] 2026-06-22 08:22:03
[2026-06-22 08:22:03,370.370 INFO    ] 2026-06-22 08:22:03
[2026-06-22 08:22:03,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:22:03,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:22:03,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:22:03,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:22:03,878.878 INFO    ] time= 22/06/2026 08:22:03
[2026-06-22 08:22:03,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:22:03,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:22:04,092.092 INFO    ] No existing commands found in stream
[2026-06-22 08:22:09,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:22:09,123.123 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-22 08:22:11,125.125 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:22:11,126.126 INFO    ] Checking for system updates...
[2026-06-22 08:22:11,147.147 INFO    ] 200
[2026-06-22 08:22:11,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:22:11,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:22:11,181.181 INFO    ] No update needed
[2026-06-22 08:22:11,182.182 INFO    ] Checking for camera pi updates...
[2026-06-22 08:22:11,202.202 INFO    ] 200
[2026-06-22 08:22:11,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:22:11,230.230 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:22:11,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:22:11,317.317 INFO    ] No camera update needed
[2026-06-22 08:22:11,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:22:11,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:22:11,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:22:11,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:22:13,377.377 INFO    ] ================================================
[2026-06-22 08:22:13,393.393 INFO    ] Launching Daemon at Mon Jun 22 08:22:13 IST 2026
[2026-06-22 08:22:13,405.405 INFO    ] ================================================
[2026-06-22 08:22:13,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:22:13
[2026-06-22 08:22:14,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:22:14,781.781 INFO    ] Initializing speech engine...
[2026-06-22 08:22:14,788.788 INFO    ] 2026-06-22 08:22:14
[2026-06-22 08:22:15,050.050 INFO    ] 2026-06-22 08:22:15
[2026-06-22 08:22:15,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:22:15,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:22:15,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:22:15,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:22:15,527.527 INFO    ] time= 22/06/2026 08:22:15
[2026-06-22 08:22:15,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:22:15,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:22:15,735.735 INFO    ] No existing commands found in stream
[2026-06-22 08:22:20,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:22:20,768.768 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-22 08:22:23,891.891 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:22:23,893.893 INFO    ] Checking for system updates...
[2026-06-22 08:22:23,916.916 INFO    ] 200
[2026-06-22 08:22:23,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:22:23,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:22:23,962.962 INFO    ] No update needed
[2026-06-22 08:22:23,965.965 INFO    ] Checking for camera pi updates...
[2026-06-22 08:22:23,999.999 INFO    ] 200
[2026-06-22 08:22:24,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:22:24,042.042 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:22:24,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:22:24,127.127 INFO    ] No camera update needed
[2026-06-22 08:22:24,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:22:24,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:22:24,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:22:24,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:22:26,186.186 INFO    ] ================================================
[2026-06-22 08:22:26,201.201 INFO    ] Launching Daemon at Mon Jun 22 08:22:26 IST 2026
[2026-06-22 08:22:26,212.212 INFO    ] ================================================
[2026-06-22 08:22:26,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:22:26
[2026-06-22 08:22:27,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:22:27,574.574 INFO    ] Initializing speech engine...
[2026-06-22 08:22:27,580.580 INFO    ] 2026-06-22 08:22:27
[2026-06-22 08:22:27,878.878 INFO    ] 2026-06-22 08:22:27
[2026-06-22 08:22:27,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:22:28,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:22:28,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:22:28,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:22:28,302.302 INFO    ] time= 22/06/2026 08:22:28
[2026-06-22 08:22:28,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:22:28,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:22:28,421.421 INFO    ] No existing commands found in stream
[2026-06-22 08:22:33,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:22:33,454.454 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-22 08:22:37,032.032 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:22:37,035.035 INFO    ] Checking for system updates...
[2026-06-22 08:22:37,072.072 INFO    ] 200
[2026-06-22 08:22:37,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:22:37,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:22:37,138.138 INFO    ] No update needed
[2026-06-22 08:22:37,141.141 INFO    ] Checking for camera pi updates...
[2026-06-22 08:22:37,177.177 INFO    ] 200
[2026-06-22 08:22:37,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:22:37,222.222 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:22:37,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:22:37,295.295 INFO    ] No camera update needed
[2026-06-22 08:22:37,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:22:37,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:22:37,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:22:37,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:22:39,357.357 INFO    ] ================================================
[2026-06-22 08:22:39,374.374 INFO    ] Launching Daemon at Mon Jun 22 08:22:39 IST 2026
[2026-06-22 08:22:39,385.385 INFO    ] ================================================
[2026-06-22 08:22:39,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:22:39
[2026-06-22 08:22:40,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:22:40,745.745 INFO    ] Initializing speech engine...
[2026-06-22 08:22:40,756.756 INFO    ] 2026-06-22 08:22:40
[2026-06-22 08:22:41,048.048 INFO    ] 2026-06-22 08:22:41
[2026-06-22 08:22:41,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:22:41,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:22:41,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:22:41,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:22:41,482.482 INFO    ] time= 22/06/2026 08:22:41
[2026-06-22 08:22:41,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:22:41,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:22:41,592.592 INFO    ] No existing commands found in stream
[2026-06-22 08:22:46,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:22:46,625.625 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-22 08:22:50,296.296 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:22:50,299.299 INFO    ] Checking for system updates...
[2026-06-22 08:22:50,339.339 INFO    ] 200
[2026-06-22 08:22:50,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:22:50,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:22:50,397.397 INFO    ] No update needed
[2026-06-22 08:22:50,400.400 INFO    ] Checking for camera pi updates...
[2026-06-22 08:22:50,439.439 INFO    ] 200
[2026-06-22 08:22:50,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:22:50,486.486 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:22:50,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:22:50,569.569 INFO    ] No camera update needed
[2026-06-22 08:22:50,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:22:50,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:22:50,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:22:50,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:22:52,626.626 INFO    ] ================================================
[2026-06-22 08:22:52,642.642 INFO    ] Launching Daemon at Mon Jun 22 08:22:52 IST 2026
[2026-06-22 08:22:52,654.654 INFO    ] ================================================
[2026-06-22 08:22:53,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:22:53
[2026-06-22 08:22:53,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:22:54,088.088 INFO    ] Initializing speech engine...
[2026-06-22 08:22:54,096.096 INFO    ] 2026-06-22 08:22:54
[2026-06-22 08:22:54,400.400 INFO    ] 2026-06-22 08:22:54
[2026-06-22 08:22:54,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:22:54,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:22:54,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:22:54,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:22:54,788.788 INFO    ] time= 22/06/2026 08:22:54
[2026-06-22 08:22:54,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:22:54,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:22:54,918.918 INFO    ] No existing commands found in stream
[2026-06-22 08:22:59,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:22:59,936.936 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-22 08:23:04,386.386 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:23:04,389.389 INFO    ] Checking for system updates...
[2026-06-22 08:23:04,426.426 INFO    ] 200
[2026-06-22 08:23:04,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:23:04,485.485 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:23:04,488.488 INFO    ] No update needed
[2026-06-22 08:23:04,490.490 INFO    ] Checking for camera pi updates...
[2026-06-22 08:23:04,525.525 INFO    ] 200
[2026-06-22 08:23:04,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:23:04,585.585 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:23:04,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:23:04,674.674 INFO    ] No camera update needed
[2026-06-22 08:23:04,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:23:04,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:23:04,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:23:04,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:23:06,735.735 INFO    ] ================================================
[2026-06-22 08:23:06,755.755 INFO    ] Launching Daemon at Mon Jun 22 08:23:06 IST 2026
[2026-06-22 08:23:06,765.765 INFO    ] ================================================
[2026-06-22 08:23:07,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:23:07
[2026-06-22 08:23:07,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:23:08,202.202 INFO    ] Initializing speech engine...
[2026-06-22 08:23:08,208.208 INFO    ] 2026-06-22 08:23:08
[2026-06-22 08:23:08,455.455 INFO    ] 2026-06-22 08:23:08
[2026-06-22 08:23:08,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:23:08,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:23:08,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:23:08,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:23:08,943.943 INFO    ] time= 22/06/2026 08:23:08
[2026-06-22 08:23:08,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:23:09,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:23:09,154.154 INFO    ] No existing commands found in stream
[2026-06-22 08:23:14,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:23:14,179.179 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-22 08:23:17,367.367 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:23:17,369.369 INFO    ] Checking for system updates...
[2026-06-22 08:23:17,390.390 INFO    ] 200
[2026-06-22 08:23:17,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:23:17,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:23:17,435.435 INFO    ] No update needed
[2026-06-22 08:23:17,437.437 INFO    ] Checking for camera pi updates...
[2026-06-22 08:23:17,475.475 INFO    ] 200
[2026-06-22 08:23:17,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:23:17,519.519 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:23:17,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:23:17,581.581 INFO    ] No camera update needed
[2026-06-22 08:23:17,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:23:17,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:23:17,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:23:17,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:23:19,641.641 INFO    ] ================================================
[2026-06-22 08:23:19,657.657 INFO    ] Launching Daemon at Mon Jun 22 08:23:19 IST 2026
[2026-06-22 08:23:19,668.668 INFO    ] ================================================
[2026-06-22 08:23:20,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:23:20
[2026-06-22 08:23:20,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:23:21,255.255 INFO    ] Initializing speech engine...
[2026-06-22 08:23:21,267.267 INFO    ] 2026-06-22 08:23:21
[2026-06-22 08:23:21,573.573 INFO    ] 2026-06-22 08:23:21
[2026-06-22 08:23:21,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:23:21,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:23:21,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:23:22,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:23:22,081.081 INFO    ] time= 22/06/2026 08:23:22
[2026-06-22 08:23:22,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:23:22,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:23:22,237.237 INFO    ] No existing commands found in stream
[2026-06-22 08:23:27,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:23:27,258.258 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-22 08:23:29,105.105 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:23:29,108.108 INFO    ] Checking for system updates...
[2026-06-22 08:23:29,146.146 INFO    ] 200
[2026-06-22 08:23:29,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:23:29,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:23:29,206.206 INFO    ] No update needed
[2026-06-22 08:23:29,209.209 INFO    ] Checking for camera pi updates...
[2026-06-22 08:23:29,246.246 INFO    ] 200
[2026-06-22 08:23:29,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:23:29,289.289 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:23:29,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:23:29,401.401 INFO    ] No camera update needed
[2026-06-22 08:23:29,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:23:29,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:23:29,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:23:29,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:23:31,456.456 INFO    ] ================================================
[2026-06-22 08:23:31,472.472 INFO    ] Launching Daemon at Mon Jun 22 08:23:31 IST 2026
[2026-06-22 08:23:31,483.483 INFO    ] ================================================
[2026-06-22 08:23:31,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:23:31
[2026-06-22 08:23:32,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:23:32,898.898 INFO    ] Initializing speech engine...
[2026-06-22 08:23:32,916.916 INFO    ] 2026-06-22 08:23:32
[2026-06-22 08:23:33,199.199 INFO    ] 2026-06-22 08:23:33
[2026-06-22 08:23:33,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:23:33,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:23:33,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:23:33,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:23:33,697.697 INFO    ] time= 22/06/2026 08:23:33
[2026-06-22 08:23:33,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:23:33,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:23:33,911.911 INFO    ] No existing commands found in stream
[2026-06-22 08:23:38,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:23:38,948.948 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-22 08:23:39,733.733 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:23:39,737.737 INFO    ] Checking for system updates...
[2026-06-22 08:23:39,775.775 INFO    ] 200
[2026-06-22 08:23:39,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:23:39,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:23:39,837.837 INFO    ] No update needed
[2026-06-22 08:23:39,840.840 INFO    ] Checking for camera pi updates...
[2026-06-22 08:23:39,875.875 INFO    ] 200
[2026-06-22 08:23:39,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:23:39,919.919 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:23:39,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:23:39,972.972 INFO    ] No camera update needed
[2026-06-22 08:23:39,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:23:39,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:23:39,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:23:39,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:23:42,029.029 INFO    ] ================================================
[2026-06-22 08:23:42,044.044 INFO    ] Launching Daemon at Mon Jun 22 08:23:42 IST 2026
[2026-06-22 08:23:42,055.055 INFO    ] ================================================
[2026-06-22 08:23:42,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:23:42
[2026-06-22 08:23:43,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:23:43,663.663 INFO    ] Initializing speech engine...
[2026-06-22 08:23:43,677.677 INFO    ] 2026-06-22 08:23:43
[2026-06-22 08:23:43,952.952 INFO    ] 2026-06-22 08:23:43
[2026-06-22 08:23:43,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:23:44,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:23:44,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:23:44,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:23:44,431.431 INFO    ] time= 22/06/2026 08:23:44
[2026-06-22 08:23:44,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:23:44,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:23:44,626.626 INFO    ] No existing commands found in stream
[2026-06-22 08:23:49,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:23:49,657.657 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-22 08:23:51,314.314 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:23:51,317.317 INFO    ] Checking for system updates...
[2026-06-22 08:23:51,353.353 INFO    ] 200
[2026-06-22 08:23:51,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:23:51,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:23:51,417.417 INFO    ] No update needed
[2026-06-22 08:23:51,419.419 INFO    ] Checking for camera pi updates...
[2026-06-22 08:23:51,457.457 INFO    ] 200
[2026-06-22 08:23:51,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:23:51,506.506 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:23:51,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:23:51,565.565 INFO    ] No camera update needed
[2026-06-22 08:23:51,568.568 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:23:51,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:23:51,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:23:51,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:23:53,620.620 INFO    ] ================================================
[2026-06-22 08:23:53,636.636 INFO    ] Launching Daemon at Mon Jun 22 08:23:53 IST 2026
[2026-06-22 08:23:53,647.647 INFO    ] ================================================
[2026-06-22 08:23:54,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:23:54
[2026-06-22 08:23:54,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:23:55,110.110 INFO    ] Initializing speech engine...
[2026-06-22 08:23:55,118.118 INFO    ] 2026-06-22 08:23:55
[2026-06-22 08:23:55,391.391 INFO    ] 2026-06-22 08:23:55
[2026-06-22 08:23:55,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:23:55,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:23:55,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:23:55,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:23:55,898.898 INFO    ] time= 22/06/2026 08:23:55
[2026-06-22 08:23:55,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:23:55,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:23:56,103.103 INFO    ] No existing commands found in stream
[2026-06-22 08:24:01,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:24:01,122.122 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-22 08:24:02,369.369 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:24:02,373.373 INFO    ] Checking for system updates...
[2026-06-22 08:24:02,417.417 INFO    ] 200
[2026-06-22 08:24:02,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:24:02,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:24:02,518.518 INFO    ] No update needed
[2026-06-22 08:24:02,521.521 INFO    ] Checking for camera pi updates...
[2026-06-22 08:24:02,569.569 INFO    ] 200
[2026-06-22 08:24:02,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:24:02,627.627 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:24:02,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:24:02,689.689 INFO    ] No camera update needed
[2026-06-22 08:24:02,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:24:02,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:24:02,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:24:02,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:24:04,752.752 INFO    ] ================================================
[2026-06-22 08:24:04,769.769 INFO    ] Launching Daemon at Mon Jun 22 08:24:04 IST 2026
[2026-06-22 08:24:04,780.780 INFO    ] ================================================
[2026-06-22 08:24:05,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:24:05
[2026-06-22 08:24:06,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:24:06,454.454 INFO    ] Initializing speech engine...
[2026-06-22 08:24:06,463.463 INFO    ] 2026-06-22 08:24:06
[2026-06-22 08:24:06,740.740 INFO    ] 2026-06-22 08:24:06
[2026-06-22 08:24:06,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:24:07,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:24:07,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:24:07,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:24:07,252.252 INFO    ] time= 22/06/2026 08:24:07
[2026-06-22 08:24:07,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:24:07,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:24:07,508.508 INFO    ] No existing commands found in stream
[2026-06-22 08:24:12,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:24:12,536.536 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-22 08:24:14,065.065 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:24:14,068.068 INFO    ] Checking for system updates...
[2026-06-22 08:24:14,104.104 INFO    ] 200
[2026-06-22 08:24:14,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:24:14,159.159 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:24:14,161.161 INFO    ] No update needed
[2026-06-22 08:24:14,164.164 INFO    ] Checking for camera pi updates...
[2026-06-22 08:24:14,197.197 INFO    ] 200
[2026-06-22 08:24:14,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:24:14,245.245 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:24:14,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:24:14,299.299 INFO    ] No camera update needed
[2026-06-22 08:24:14,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:24:14,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:24:14,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:24:14,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:24:16,358.358 INFO    ] ================================================
[2026-06-22 08:24:16,373.373 INFO    ] Launching Daemon at Mon Jun 22 08:24:16 IST 2026
[2026-06-22 08:24:16,384.384 INFO    ] ================================================
[2026-06-22 08:24:16,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:24:16
[2026-06-22 08:24:17,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:24:17,755.755 INFO    ] Initializing speech engine...
[2026-06-22 08:24:17,760.760 INFO    ] 2026-06-22 08:24:17
[2026-06-22 08:24:18,024.024 INFO    ] 2026-06-22 08:24:18
[2026-06-22 08:24:18,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:24:18,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:24:18,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:24:18,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:24:18,515.515 INFO    ] time= 22/06/2026 08:24:18
[2026-06-22 08:24:18,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:24:18,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:24:18,723.723 INFO    ] No existing commands found in stream
[2026-06-22 08:24:23,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:24:23,741.741 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-22 08:24:24,864.864 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:24:24,868.868 INFO    ] Checking for system updates...
[2026-06-22 08:24:24,904.904 INFO    ] 200
[2026-06-22 08:24:24,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:24:24,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:24:24,962.962 INFO    ] No update needed
[2026-06-22 08:24:24,965.965 INFO    ] Checking for camera pi updates...
[2026-06-22 08:24:25,004.004 INFO    ] 200
[2026-06-22 08:24:25,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:24:25,049.049 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:24:25,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:24:25,137.137 INFO    ] No camera update needed
[2026-06-22 08:24:25,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:24:25,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:24:25,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:24:25,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:24:27,197.197 INFO    ] ================================================
[2026-06-22 08:24:27,213.213 INFO    ] Launching Daemon at Mon Jun 22 08:24:27 IST 2026
[2026-06-22 08:24:27,224.224 INFO    ] ================================================
[2026-06-22 08:24:27,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:24:27
[2026-06-22 08:24:28,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:24:28,605.605 INFO    ] Initializing speech engine...
[2026-06-22 08:24:28,610.610 INFO    ] 2026-06-22 08:24:28
[2026-06-22 08:24:28,860.860 INFO    ] 2026-06-22 08:24:28
[2026-06-22 08:24:28,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:24:29,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:24:29,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:24:29,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:24:29,415.415 INFO    ] time= 22/06/2026 08:24:29
[2026-06-22 08:24:29,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:24:29,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:24:29,573.573 INFO    ] No existing commands found in stream
[2026-06-22 08:24:34,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:24:34,590.590 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-22 08:24:37,825.825 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:24:37,828.828 INFO    ] Checking for system updates...
[2026-06-22 08:24:37,868.868 INFO    ] 200
[2026-06-22 08:24:37,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:24:37,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:24:37,926.926 INFO    ] No update needed
[2026-06-22 08:24:37,929.929 INFO    ] Checking for camera pi updates...
[2026-06-22 08:24:37,967.967 INFO    ] 200
[2026-06-22 08:24:37,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:24:38,012.012 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:24:38,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:24:38,065.065 INFO    ] No camera update needed
[2026-06-22 08:24:38,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:24:38,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:24:38,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:24:38,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:24:40,122.122 INFO    ] ================================================
[2026-06-22 08:24:40,138.138 INFO    ] Launching Daemon at Mon Jun 22 08:24:40 IST 2026
[2026-06-22 08:24:40,150.150 INFO    ] ================================================
[2026-06-22 08:24:40,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:24:40
[2026-06-22 08:24:41,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:24:41,752.752 INFO    ] Initializing speech engine...
[2026-06-22 08:24:41,761.761 INFO    ] 2026-06-22 08:24:41
[2026-06-22 08:24:42,012.012 INFO    ] 2026-06-22 08:24:42
[2026-06-22 08:24:42,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:24:42,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:24:42,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:24:42,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:24:42,388.388 INFO    ] time= 22/06/2026 08:24:42
[2026-06-22 08:24:42,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:24:42,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:24:42,576.576 INFO    ] No existing commands found in stream
[2026-06-22 08:24:47,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:24:47,598.598 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-22 08:24:48,566.566 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:24:48,569.569 INFO    ] Checking for system updates...
[2026-06-22 08:24:48,607.607 INFO    ] 200
[2026-06-22 08:24:48,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:24:48,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:24:48,667.667 INFO    ] No update needed
[2026-06-22 08:24:48,669.669 INFO    ] Checking for camera pi updates...
[2026-06-22 08:24:48,704.704 INFO    ] 200
[2026-06-22 08:24:48,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:24:48,756.756 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:24:48,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:24:48,825.825 INFO    ] No camera update needed
[2026-06-22 08:24:48,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:24:48,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:24:48,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:24:48,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:24:50,887.887 INFO    ] ================================================
[2026-06-22 08:24:50,902.902 INFO    ] Launching Daemon at Mon Jun 22 08:24:50 IST 2026
[2026-06-22 08:24:50,914.914 INFO    ] ================================================
[2026-06-22 08:24:51,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:24:51
[2026-06-22 08:24:51,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:24:52,248.248 INFO    ] Initializing speech engine...
[2026-06-22 08:24:52,261.261 INFO    ] 2026-06-22 08:24:52
[2026-06-22 08:24:52,527.527 INFO    ] 2026-06-22 08:24:52
[2026-06-22 08:24:52,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:24:52,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:24:52,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:24:52,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:24:53,011.011 INFO    ] time= 22/06/2026 08:24:52
[2026-06-22 08:24:53,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:24:53,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:24:53,220.220 INFO    ] No existing commands found in stream
[2026-06-22 08:24:58,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:24:58,253.253 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-22 08:25:00,254.254 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:25:00,256.256 INFO    ] Checking for system updates...
[2026-06-22 08:25:00,292.292 INFO    ] 200
[2026-06-22 08:25:00,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:25:00,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:25:00,359.359 INFO    ] No update needed
[2026-06-22 08:25:00,361.361 INFO    ] Checking for camera pi updates...
[2026-06-22 08:25:00,395.395 INFO    ] 200
[2026-06-22 08:25:00,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:25:00,445.445 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:25:00,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:25:00,526.526 INFO    ] No camera update needed
[2026-06-22 08:25:00,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:25:00,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:25:00,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:25:00,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:25:02,590.590 INFO    ] ================================================
[2026-06-22 08:25:02,611.611 INFO    ] Launching Daemon at Mon Jun 22 08:25:02 IST 2026
[2026-06-22 08:25:02,627.627 INFO    ] ================================================
[2026-06-22 08:25:03,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:25:03
[2026-06-22 08:25:03,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:25:04,182.182 INFO    ] Initializing speech engine...
[2026-06-22 08:25:04,205.205 INFO    ] 2026-06-22 08:25:04
[2026-06-22 08:25:04,468.468 INFO    ] 2026-06-22 08:25:04
[2026-06-22 08:25:04,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:25:04,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:25:04,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:25:04,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:25:04,872.872 INFO    ] time= 22/06/2026 08:25:04
[2026-06-22 08:25:04,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:25:04,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:25:05,038.038 INFO    ] No existing commands found in stream
[2026-06-22 08:25:10,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:25:10,053.053 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-22 08:25:12,375.375 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:25:12,378.378 INFO    ] Checking for system updates...
[2026-06-22 08:25:12,414.414 INFO    ] 200
[2026-06-22 08:25:12,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:25:12,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:25:12,471.471 INFO    ] No update needed
[2026-06-22 08:25:12,474.474 INFO    ] Checking for camera pi updates...
[2026-06-22 08:25:12,507.507 INFO    ] 200
[2026-06-22 08:25:12,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:25:12,550.550 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:25:12,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:25:12,637.637 INFO    ] No camera update needed
[2026-06-22 08:25:12,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:25:12,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:25:12,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:25:12,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:25:14,696.696 INFO    ] ================================================
[2026-06-22 08:25:14,712.712 INFO    ] Launching Daemon at Mon Jun 22 08:25:14 IST 2026
[2026-06-22 08:25:14,723.723 INFO    ] ================================================
[2026-06-22 08:25:15,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:25:15
[2026-06-22 08:25:15,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:25:16,139.139 INFO    ] Initializing speech engine...
[2026-06-22 08:25:16,159.159 INFO    ] 2026-06-22 08:25:16
[2026-06-22 08:25:16,435.435 INFO    ] 2026-06-22 08:25:16
[2026-06-22 08:25:16,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:25:16,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:25:16,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:25:16,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:25:16,784.784 INFO    ] time= 22/06/2026 08:25:16
[2026-06-22 08:25:16,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:25:16,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:25:16,927.927 INFO    ] No existing commands found in stream
[2026-06-22 08:25:21,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:25:21,948.948 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-22 08:25:22,828.828 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:25:22,831.831 INFO    ] Checking for system updates...
[2026-06-22 08:25:22,868.868 INFO    ] 200
[2026-06-22 08:25:22,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:25:22,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:25:22,929.929 INFO    ] No update needed
[2026-06-22 08:25:22,931.931 INFO    ] Checking for camera pi updates...
[2026-06-22 08:25:22,966.966 INFO    ] 200
[2026-06-22 08:25:22,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:25:23,015.015 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:25:23,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:25:23,124.124 INFO    ] No camera update needed
[2026-06-22 08:25:23,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:25:23,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:25:23,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:25:23,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:25:25,184.184 INFO    ] ================================================
[2026-06-22 08:25:25,200.200 INFO    ] Launching Daemon at Mon Jun 22 08:25:25 IST 2026
[2026-06-22 08:25:25,211.211 INFO    ] ================================================
[2026-06-22 08:25:25,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:25:25
[2026-06-22 08:25:26,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:25:26,576.576 INFO    ] Initializing speech engine...
[2026-06-22 08:25:26,586.586 INFO    ] 2026-06-22 08:25:26
[2026-06-22 08:25:26,836.836 INFO    ] 2026-06-22 08:25:26
[2026-06-22 08:25:26,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:25:27,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:25:27,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:25:27,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:25:27,318.318 INFO    ] time= 22/06/2026 08:25:27
[2026-06-22 08:25:27,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:25:27,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:25:27,533.533 INFO    ] No existing commands found in stream
[2026-06-22 08:25:32,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:25:32,569.569 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-22 08:25:34,111.111 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:25:34,114.114 INFO    ] Checking for system updates...
[2026-06-22 08:25:34,158.158 INFO    ] 200
[2026-06-22 08:25:34,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:25:34,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:25:34,222.222 INFO    ] No update needed
[2026-06-22 08:25:34,224.224 INFO    ] Checking for camera pi updates...
[2026-06-22 08:25:34,261.261 INFO    ] 200
[2026-06-22 08:25:34,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:25:34,310.310 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:25:34,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:25:34,398.398 INFO    ] No camera update needed
[2026-06-22 08:25:34,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:25:34,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:25:34,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:25:34,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:25:36,462.462 INFO    ] ================================================
[2026-06-22 08:25:36,478.478 INFO    ] Launching Daemon at Mon Jun 22 08:25:36 IST 2026
[2026-06-22 08:25:36,490.490 INFO    ] ================================================
[2026-06-22 08:25:37,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:25:37
[2026-06-22 08:25:37,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:25:37,857.857 INFO    ] Initializing speech engine...
[2026-06-22 08:25:37,866.866 INFO    ] 2026-06-22 08:25:37
[2026-06-22 08:25:38,124.124 INFO    ] 2026-06-22 08:25:38
[2026-06-22 08:25:38,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:25:38,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:25:38,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:25:38,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:25:38,592.592 INFO    ] time= 22/06/2026 08:25:38
[2026-06-22 08:25:38,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:25:38,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:25:38,818.818 INFO    ] No existing commands found in stream
[2026-06-22 08:25:43,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:25:43,844.844 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-22 08:25:46,327.327 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:25:46,330.330 INFO    ] Checking for system updates...
[2026-06-22 08:25:46,366.366 INFO    ] 200
[2026-06-22 08:25:46,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:25:46,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:25:46,429.429 INFO    ] No update needed
[2026-06-22 08:25:46,432.432 INFO    ] Checking for camera pi updates...
[2026-06-22 08:25:46,466.466 INFO    ] 200
[2026-06-22 08:25:46,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:25:46,509.509 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:25:46,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:25:46,693.693 INFO    ] No camera update needed
[2026-06-22 08:25:46,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:25:46,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:25:46,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:25:46,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:25:48,750.750 INFO    ] ================================================
[2026-06-22 08:25:48,766.766 INFO    ] Launching Daemon at Mon Jun 22 08:25:48 IST 2026
[2026-06-22 08:25:48,777.777 INFO    ] ================================================
[2026-06-22 08:25:49,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:25:49
[2026-06-22 08:25:49,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:25:50,177.177 INFO    ] Initializing speech engine...
[2026-06-22 08:25:50,183.183 INFO    ] 2026-06-22 08:25:50
[2026-06-22 08:25:50,429.429 INFO    ] 2026-06-22 08:25:50
[2026-06-22 08:25:50,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:25:50,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:25:50,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:25:50,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:25:50,902.902 INFO    ] time= 22/06/2026 08:25:50
[2026-06-22 08:25:50,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:25:50,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:25:51,112.112 INFO    ] No existing commands found in stream
[2026-06-22 08:25:56,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:25:56,137.137 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-22 08:25:59,997.997 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:25:59,999.999 INFO    ] Checking for system updates...
[2026-06-22 08:26:00,036.036 INFO    ] 200
[2026-06-22 08:26:00,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:26:00,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:26:00,101.101 INFO    ] No update needed
[2026-06-22 08:26:00,105.105 INFO    ] Checking for camera pi updates...
[2026-06-22 08:26:00,143.143 INFO    ] 200
[2026-06-22 08:26:00,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:26:00,192.192 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:26:00,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:26:00,281.281 INFO    ] No camera update needed
[2026-06-22 08:26:00,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:26:00,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:26:00,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:26:00,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:26:02,343.343 INFO    ] ================================================
[2026-06-22 08:26:02,367.367 INFO    ] Launching Daemon at Mon Jun 22 08:26:02 IST 2026
[2026-06-22 08:26:02,387.387 INFO    ] ================================================
[2026-06-22 08:26:03,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:26:03
[2026-06-22 08:26:03,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:26:04,017.017 INFO    ] Initializing speech engine...
[2026-06-22 08:26:04,028.028 INFO    ] 2026-06-22 08:26:04
[2026-06-22 08:26:04,310.310 INFO    ] 2026-06-22 08:26:04
[2026-06-22 08:26:04,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:26:04,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:26:04,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:26:04,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:26:04,799.799 INFO    ] time= 22/06/2026 08:26:04
[2026-06-22 08:26:04,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:26:04,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:26:04,989.989 INFO    ] No existing commands found in stream
[2026-06-22 08:26:10,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:26:10,024.024 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-22 08:26:11,860.860 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:26:11,863.863 INFO    ] Checking for system updates...
[2026-06-22 08:26:11,900.900 INFO    ] 200
[2026-06-22 08:26:11,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:26:11,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:26:11,965.965 INFO    ] No update needed
[2026-06-22 08:26:11,968.968 INFO    ] Checking for camera pi updates...
[2026-06-22 08:26:12,003.003 INFO    ] 200
[2026-06-22 08:26:12,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:26:12,047.047 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:26:12,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:26:12,136.136 INFO    ] No camera update needed
[2026-06-22 08:26:12,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:26:12,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:26:12,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:26:12,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:26:14,197.197 INFO    ] ================================================
[2026-06-22 08:26:14,212.212 INFO    ] Launching Daemon at Mon Jun 22 08:26:14 IST 2026
[2026-06-22 08:26:14,230.230 INFO    ] ================================================
[2026-06-22 08:26:14,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:26:14
[2026-06-22 08:26:15,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:26:15,739.739 INFO    ] Initializing speech engine...
[2026-06-22 08:26:15,752.752 INFO    ] 2026-06-22 08:26:15
[2026-06-22 08:26:16,064.064 INFO    ] 2026-06-22 08:26:16
[2026-06-22 08:26:16,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:26:16,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:26:16,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:26:16,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:26:16,563.563 INFO    ] time= 22/06/2026 08:26:16
[2026-06-22 08:26:16,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:26:16,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:26:16,710.710 INFO    ] No existing commands found in stream
[2026-06-22 08:26:21,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:26:21,735.735 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-22 08:26:24,480.480 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:26:24,483.483 INFO    ] Checking for system updates...
[2026-06-22 08:26:24,520.520 INFO    ] 200
[2026-06-22 08:26:24,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:26:24,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:26:24,580.580 INFO    ] No update needed
[2026-06-22 08:26:24,583.583 INFO    ] Checking for camera pi updates...
[2026-06-22 08:26:24,618.618 INFO    ] 200
[2026-06-22 08:26:24,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:26:24,661.661 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:26:24,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:26:24,743.743 INFO    ] No camera update needed
[2026-06-22 08:26:24,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:26:24,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:26:24,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:26:24,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:26:26,799.799 INFO    ] ================================================
[2026-06-22 08:26:26,815.815 INFO    ] Launching Daemon at Mon Jun 22 08:26:26 IST 2026
[2026-06-22 08:26:26,825.825 INFO    ] ================================================
[2026-06-22 08:26:27,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:26:27
[2026-06-22 08:26:27,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:26:28,213.213 INFO    ] Initializing speech engine...
[2026-06-22 08:26:28,225.225 INFO    ] 2026-06-22 08:26:28
[2026-06-22 08:26:28,504.504 INFO    ] 2026-06-22 08:26:28
[2026-06-22 08:26:28,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:26:28,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:26:28,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:26:28,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:26:29,039.039 INFO    ] time= 22/06/2026 08:26:29
[2026-06-22 08:26:29,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:26:29,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:26:29,192.192 INFO    ] No existing commands found in stream
[2026-06-22 08:26:34,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:26:34,212.212 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-22 08:26:34,731.731 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:26:34,734.734 INFO    ] Checking for system updates...
[2026-06-22 08:26:34,772.772 INFO    ] 200
[2026-06-22 08:26:34,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:26:34,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:26:34,830.830 INFO    ] No update needed
[2026-06-22 08:26:34,832.832 INFO    ] Checking for camera pi updates...
[2026-06-22 08:26:34,866.866 INFO    ] 200
[2026-06-22 08:26:34,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:26:34,911.911 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:26:34,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:26:34,998.998 INFO    ] No camera update needed
[2026-06-22 08:26:35,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:26:35,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:26:35,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:26:35,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:26:37,057.057 INFO    ] ================================================
[2026-06-22 08:26:37,071.071 INFO    ] Launching Daemon at Mon Jun 22 08:26:37 IST 2026
[2026-06-22 08:26:37,083.083 INFO    ] ================================================
[2026-06-22 08:26:37,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:26:37
[2026-06-22 08:26:38,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:26:38,650.650 INFO    ] Initializing speech engine...
[2026-06-22 08:26:38,656.656 INFO    ] 2026-06-22 08:26:38
[2026-06-22 08:26:38,969.969 INFO    ] 2026-06-22 08:26:38
[2026-06-22 08:26:39,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:26:39,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:26:39,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:26:39,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:26:39,474.474 INFO    ] time= 22/06/2026 08:26:39
[2026-06-22 08:26:39,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:26:39,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:26:39,642.642 INFO    ] No existing commands found in stream
[2026-06-22 08:26:44,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:26:44,676.676 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-22 08:26:45,309.309 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:26:45,312.312 INFO    ] Checking for system updates...
[2026-06-22 08:26:45,353.353 INFO    ] 200
[2026-06-22 08:26:45,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:26:45,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:26:45,418.418 INFO    ] No update needed
[2026-06-22 08:26:45,421.421 INFO    ] Checking for camera pi updates...
[2026-06-22 08:26:45,456.456 INFO    ] 200
[2026-06-22 08:26:45,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:26:45,499.499 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:26:45,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:26:45,574.574 INFO    ] No camera update needed
[2026-06-22 08:26:45,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:26:45,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:26:45,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:26:45,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:26:47,629.629 INFO    ] ================================================
[2026-06-22 08:26:47,644.644 INFO    ] Launching Daemon at Mon Jun 22 08:26:47 IST 2026
[2026-06-22 08:26:47,655.655 INFO    ] ================================================
[2026-06-22 08:26:48,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:26:48
[2026-06-22 08:26:48,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:26:49,251.251 INFO    ] Initializing speech engine...
[2026-06-22 08:26:49,260.260 INFO    ] 2026-06-22 08:26:49
[2026-06-22 08:26:49,530.530 INFO    ] 2026-06-22 08:26:49
[2026-06-22 08:26:49,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:26:49,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:26:49,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:26:49,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:26:50,011.011 INFO    ] time= 22/06/2026 08:26:49
[2026-06-22 08:26:50,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:26:50,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:26:50,176.176 INFO    ] No existing commands found in stream
[2026-06-22 08:26:55,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:26:55,217.217 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-22 08:26:56,569.569 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:26:56,572.572 INFO    ] Checking for system updates...
[2026-06-22 08:26:56,609.609 INFO    ] 200
[2026-06-22 08:26:56,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:26:56,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:26:56,667.667 INFO    ] No update needed
[2026-06-22 08:26:56,670.670 INFO    ] Checking for camera pi updates...
[2026-06-22 08:26:56,703.703 INFO    ] 200
[2026-06-22 08:26:56,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:26:56,748.748 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:26:56,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:26:56,854.854 INFO    ] No camera update needed
[2026-06-22 08:26:56,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:26:56,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:26:56,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:26:56,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:26:58,910.910 INFO    ] ================================================
[2026-06-22 08:26:58,925.925 INFO    ] Launching Daemon at Mon Jun 22 08:26:58 IST 2026
[2026-06-22 08:26:58,936.936 INFO    ] ================================================
[2026-06-22 08:26:59,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:26:59
[2026-06-22 08:27:00,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:27:00,316.316 INFO    ] Initializing speech engine...
[2026-06-22 08:27:00,321.321 INFO    ] 2026-06-22 08:27:00
[2026-06-22 08:27:00,581.581 INFO    ] 2026-06-22 08:27:00
[2026-06-22 08:27:00,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:27:00,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:27:00,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:27:01,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:27:01,070.070 INFO    ] time= 22/06/2026 08:27:01
[2026-06-22 08:27:01,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:27:01,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:27:01,277.277 INFO    ] No existing commands found in stream
[2026-06-22 08:27:06,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:27:06,296.296 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-22 08:27:07,358.358 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:27:07,360.360 INFO    ] Checking for system updates...
[2026-06-22 08:27:07,396.396 INFO    ] 200
[2026-06-22 08:27:07,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:27:07,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:27:07,454.454 INFO    ] No update needed
[2026-06-22 08:27:07,456.456 INFO    ] Checking for camera pi updates...
[2026-06-22 08:27:07,490.490 INFO    ] 200
[2026-06-22 08:27:07,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:27:07,535.535 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:27:07,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:27:07,620.620 INFO    ] No camera update needed
[2026-06-22 08:27:07,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:27:07,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:27:07,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:27:07,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:27:09,678.678 INFO    ] ================================================
[2026-06-22 08:27:09,693.693 INFO    ] Launching Daemon at Mon Jun 22 08:27:09 IST 2026
[2026-06-22 08:27:09,703.703 INFO    ] ================================================
[2026-06-22 08:27:10,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:27:10
[2026-06-22 08:27:10,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:27:11,072.072 INFO    ] Initializing speech engine...
[2026-06-22 08:27:11,080.080 INFO    ] 2026-06-22 08:27:11
[2026-06-22 08:27:11,374.374 INFO    ] 2026-06-22 08:27:11
[2026-06-22 08:27:11,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:27:11,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:27:11,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:27:11,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:27:11,786.786 INFO    ] time= 22/06/2026 08:27:11
[2026-06-22 08:27:11,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:27:11,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:27:11,964.964 INFO    ] No existing commands found in stream
[2026-06-22 08:27:16,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:27:16,995.995 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-22 08:27:18,629.629 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:27:18,632.632 INFO    ] Checking for system updates...
[2026-06-22 08:27:18,668.668 INFO    ] 200
[2026-06-22 08:27:18,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:27:18,722.722 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:27:18,725.725 INFO    ] No update needed
[2026-06-22 08:27:18,727.727 INFO    ] Checking for camera pi updates...
[2026-06-22 08:27:18,761.761 INFO    ] 200
[2026-06-22 08:27:18,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:27:18,804.804 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:27:18,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:27:18,907.907 INFO    ] No camera update needed
[2026-06-22 08:27:18,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:27:18,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:27:18,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:27:18,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:27:20,962.962 INFO    ] ================================================
[2026-06-22 08:27:20,977.977 INFO    ] Launching Daemon at Mon Jun 22 08:27:20 IST 2026
[2026-06-22 08:27:20,988.988 INFO    ] ================================================
[2026-06-22 08:27:21,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:27:21
[2026-06-22 08:27:22,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:27:22,381.381 INFO    ] Initializing speech engine...
[2026-06-22 08:27:22,388.388 INFO    ] 2026-06-22 08:27:22
[2026-06-22 08:27:22,675.675 INFO    ] 2026-06-22 08:27:22
[2026-06-22 08:27:22,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:27:22,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:27:22,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:27:23,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:27:23,161.161 INFO    ] time= 22/06/2026 08:27:23
[2026-06-22 08:27:23,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:27:23,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:27:23,368.368 INFO    ] No existing commands found in stream
[2026-06-22 08:27:28,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:27:28,398.398 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-22 08:27:30,829.829 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:27:30,832.832 INFO    ] Checking for system updates...
[2026-06-22 08:27:30,868.868 INFO    ] 200
[2026-06-22 08:27:30,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:27:30,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:27:30,927.927 INFO    ] No update needed
[2026-06-22 08:27:30,929.929 INFO    ] Checking for camera pi updates...
[2026-06-22 08:27:30,963.963 INFO    ] 200
[2026-06-22 08:27:30,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:27:31,010.010 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:27:31,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:27:31,095.095 INFO    ] No camera update needed
[2026-06-22 08:27:31,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:27:31,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:27:31,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:27:31,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:27:33,152.152 INFO    ] ================================================
[2026-06-22 08:27:33,169.169 INFO    ] Launching Daemon at Mon Jun 22 08:27:33 IST 2026
[2026-06-22 08:27:33,181.181 INFO    ] ================================================
[2026-06-22 08:27:33,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:27:33
[2026-06-22 08:27:34,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:27:34,733.733 INFO    ] Initializing speech engine...
[2026-06-22 08:27:34,741.741 INFO    ] 2026-06-22 08:27:34
[2026-06-22 08:27:35,022.022 INFO    ] 2026-06-22 08:27:35
[2026-06-22 08:27:35,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:27:35,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:27:35,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:27:35,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:27:35,553.553 INFO    ] time= 22/06/2026 08:27:35
[2026-06-22 08:27:35,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:27:35,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:27:35,704.704 INFO    ] No existing commands found in stream
[2026-06-22 08:27:40,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:27:40,720.720 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-22 08:27:44,174.174 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:27:44,177.177 INFO    ] Checking for system updates...
[2026-06-22 08:27:44,214.214 INFO    ] 200
[2026-06-22 08:27:44,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:27:44,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:27:44,271.271 INFO    ] No update needed
[2026-06-22 08:27:44,273.273 INFO    ] Checking for camera pi updates...
[2026-06-22 08:27:44,307.307 INFO    ] 200
[2026-06-22 08:27:44,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:27:44,350.350 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:27:44,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:27:44,436.436 INFO    ] No camera update needed
[2026-06-22 08:27:44,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:27:44,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:27:44,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:27:44,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:27:46,491.491 INFO    ] ================================================
[2026-06-22 08:27:46,506.506 INFO    ] Launching Daemon at Mon Jun 22 08:27:46 IST 2026
[2026-06-22 08:27:46,516.516 INFO    ] ================================================
[2026-06-22 08:27:47,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:27:47
[2026-06-22 08:27:47,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:27:47,881.881 INFO    ] Initializing speech engine...
[2026-06-22 08:27:47,887.887 INFO    ] 2026-06-22 08:27:47
[2026-06-22 08:27:48,147.147 INFO    ] 2026-06-22 08:27:48
[2026-06-22 08:27:48,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:27:48,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:27:48,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:27:48,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:27:48,633.633 INFO    ] time= 22/06/2026 08:27:48
[2026-06-22 08:27:48,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:27:48,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:27:48,847.847 INFO    ] No existing commands found in stream
[2026-06-22 08:27:53,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:27:53,869.869 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-22 08:27:57,583.583 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:27:57,585.585 INFO    ] Checking for system updates...
[2026-06-22 08:27:57,607.607 INFO    ] 200
[2026-06-22 08:27:57,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:27:57,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:27:57,644.644 INFO    ] No update needed
[2026-06-22 08:27:57,647.647 INFO    ] Checking for camera pi updates...
[2026-06-22 08:27:57,687.687 INFO    ] 200
[2026-06-22 08:27:57,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:27:57,730.730 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:27:57,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:27:57,888.888 INFO    ] No camera update needed
[2026-06-22 08:27:57,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:27:57,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:27:57,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:27:57,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:27:59,945.945 INFO    ] ================================================
[2026-06-22 08:27:59,960.960 INFO    ] Launching Daemon at Mon Jun 22 08:27:59 IST 2026
[2026-06-22 08:27:59,971.971 INFO    ] ================================================
[2026-06-22 08:28:00,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:28:00
[2026-06-22 08:28:01,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:28:01,583.583 INFO    ] Initializing speech engine...
[2026-06-22 08:28:01,594.594 INFO    ] 2026-06-22 08:28:01
[2026-06-22 08:28:01,942.942 INFO    ] 2026-06-22 08:28:01
[2026-06-22 08:28:02,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:28:02,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:28:02,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:28:02,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:28:02,387.387 INFO    ] time= 22/06/2026 08:28:02
[2026-06-22 08:28:02,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:28:02,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:28:02,536.536 INFO    ] No existing commands found in stream
[2026-06-22 08:28:07,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:28:07,572.572 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-22 08:28:11,554.554 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:28:11,556.556 INFO    ] Checking for system updates...
[2026-06-22 08:28:11,592.592 INFO    ] 200
[2026-06-22 08:28:11,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:28:11,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:28:11,655.655 INFO    ] No update needed
[2026-06-22 08:28:11,658.658 INFO    ] Checking for camera pi updates...
[2026-06-22 08:28:11,694.694 INFO    ] 200
[2026-06-22 08:28:11,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:28:11,737.737 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:28:11,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:28:11,835.835 INFO    ] No camera update needed
[2026-06-22 08:28:11,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:28:11,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:28:11,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:28:11,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:28:13,891.891 INFO    ] ================================================
[2026-06-22 08:28:13,906.906 INFO    ] Launching Daemon at Mon Jun 22 08:28:13 IST 2026
[2026-06-22 08:28:13,917.917 INFO    ] ================================================
[2026-06-22 08:28:14,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:28:14
[2026-06-22 08:28:15,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:28:15,319.319 INFO    ] Initializing speech engine...
[2026-06-22 08:28:15,326.326 INFO    ] 2026-06-22 08:28:15
[2026-06-22 08:28:15,591.591 INFO    ] 2026-06-22 08:28:15
[2026-06-22 08:28:15,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:28:15,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:28:15,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:28:16,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:28:16,067.067 INFO    ] time= 22/06/2026 08:28:16
[2026-06-22 08:28:16,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:28:16,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:28:16,324.324 INFO    ] No existing commands found in stream
[2026-06-22 08:28:21,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:28:21,351.351 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-22 08:28:25,371.371 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:28:25,374.374 INFO    ] Checking for system updates...
[2026-06-22 08:28:25,410.410 INFO    ] 200
[2026-06-22 08:28:25,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:28:25,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:28:25,469.469 INFO    ] No update needed
[2026-06-22 08:28:25,471.471 INFO    ] Checking for camera pi updates...
[2026-06-22 08:28:25,505.505 INFO    ] 200
[2026-06-22 08:28:25,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:28:25,547.547 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:28:25,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:28:25,632.632 INFO    ] No camera update needed
[2026-06-22 08:28:25,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:28:25,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:28:25,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:28:25,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:28:27,687.687 INFO    ] ================================================
[2026-06-22 08:28:27,702.702 INFO    ] Launching Daemon at Mon Jun 22 08:28:27 IST 2026
[2026-06-22 08:28:27,713.713 INFO    ] ================================================
[2026-06-22 08:28:28,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:28:28
[2026-06-22 08:28:29,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:28:29,322.322 INFO    ] Initializing speech engine...
[2026-06-22 08:28:29,328.328 INFO    ] 2026-06-22 08:28:29
[2026-06-22 08:28:29,511.511 INFO    ] 2026-06-22 08:28:29
[2026-06-22 08:28:29,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:28:29,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:28:29,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:28:29,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:28:29,969.969 INFO    ] time= 22/06/2026 08:28:29
[2026-06-22 08:28:30,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:28:30,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:28:30,158.158 INFO    ] No existing commands found in stream
[2026-06-22 08:28:35,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:28:35,192.192 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-22 08:28:36,636.636 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:28:36,637.637 INFO    ] Checking for system updates...
[2026-06-22 08:28:36,658.658 INFO    ] 200
[2026-06-22 08:28:36,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:28:36,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:28:36,701.701 INFO    ] No update needed
[2026-06-22 08:28:36,703.703 INFO    ] Checking for camera pi updates...
[2026-06-22 08:28:36,737.737 INFO    ] 200
[2026-06-22 08:28:36,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:28:36,780.780 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:28:36,860.860 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:28:36,862.862 INFO    ] No camera update needed
[2026-06-22 08:28:36,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:28:36,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:28:36,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:28:36,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:28:38,917.917 INFO    ] ================================================
[2026-06-22 08:28:38,932.932 INFO    ] Launching Daemon at Mon Jun 22 08:28:38 IST 2026
[2026-06-22 08:28:38,943.943 INFO    ] ================================================
[2026-06-22 08:28:39,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:28:39
[2026-06-22 08:28:40,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:28:40,543.543 INFO    ] Initializing speech engine...
[2026-06-22 08:28:40,566.566 INFO    ] 2026-06-22 08:28:40
[2026-06-22 08:28:40,827.827 INFO    ] 2026-06-22 08:28:40
[2026-06-22 08:28:40,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:28:41,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:28:41,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:28:41,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:28:41,245.245 INFO    ] time= 22/06/2026 08:28:41
[2026-06-22 08:28:41,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:28:41,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:28:41,517.517 INFO    ] No existing commands found in stream
[2026-06-22 08:28:46,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:28:46,532.532 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-22 08:28:49,111.111 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:28:49,115.115 INFO    ] Checking for system updates...
[2026-06-22 08:28:49,156.156 INFO    ] 200
[2026-06-22 08:28:49,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:28:49,218.218 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:28:49,221.221 INFO    ] No update needed
[2026-06-22 08:28:49,224.224 INFO    ] Checking for camera pi updates...
[2026-06-22 08:28:49,268.268 INFO    ] 200
[2026-06-22 08:28:49,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:28:49,317.317 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:28:49,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:28:49,403.403 INFO    ] No camera update needed
[2026-06-22 08:28:49,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:28:49,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:28:49,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:28:49,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:28:51,459.459 INFO    ] ================================================
[2026-06-22 08:28:51,474.474 INFO    ] Launching Daemon at Mon Jun 22 08:28:51 IST 2026
[2026-06-22 08:28:51,485.485 INFO    ] ================================================
[2026-06-22 08:28:52,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:28:52
[2026-06-22 08:28:52,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:28:52,809.809 INFO    ] Initializing speech engine...
[2026-06-22 08:28:52,824.824 INFO    ] 2026-06-22 08:28:52
[2026-06-22 08:28:53,115.115 INFO    ] 2026-06-22 08:28:53
[2026-06-22 08:28:53,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:28:53,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:28:53,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:28:53,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:28:53,526.526 INFO    ] time= 22/06/2026 08:28:53
[2026-06-22 08:28:53,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:28:53,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:28:53,723.723 INFO    ] No existing commands found in stream
[2026-06-22 08:28:58,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:28:58,737.737 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-22 08:29:00,232.232 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:29:00,235.235 INFO    ] Checking for system updates...
[2026-06-22 08:29:00,271.271 INFO    ] 200
[2026-06-22 08:29:00,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:29:00,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:29:00,330.330 INFO    ] No update needed
[2026-06-22 08:29:00,333.333 INFO    ] Checking for camera pi updates...
[2026-06-22 08:29:00,370.370 INFO    ] 200
[2026-06-22 08:29:00,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:29:00,413.413 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:29:00,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:29:00,496.496 INFO    ] No camera update needed
[2026-06-22 08:29:00,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:29:00,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:29:00,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:29:00,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:29:02,556.556 INFO    ] ================================================
[2026-06-22 08:29:02,577.577 INFO    ] Launching Daemon at Mon Jun 22 08:29:02 IST 2026
[2026-06-22 08:29:02,590.590 INFO    ] ================================================
[2026-06-22 08:29:03,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:29:03
[2026-06-22 08:29:03,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:29:04,163.163 INFO    ] Initializing speech engine...
[2026-06-22 08:29:04,170.170 INFO    ] 2026-06-22 08:29:04
[2026-06-22 08:29:04,473.473 INFO    ] 2026-06-22 08:29:04
[2026-06-22 08:29:04,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:29:04,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:29:04,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:29:04,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:29:04,827.827 INFO    ] time= 22/06/2026 08:29:04
[2026-06-22 08:29:04,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:29:04,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:29:04,910.910 INFO    ] No existing commands found in stream
[2026-06-22 08:29:09,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:29:09,924.924 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-22 08:29:13,761.761 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:29:13,763.763 INFO    ] Checking for system updates...
[2026-06-22 08:29:13,799.799 INFO    ] 200
[2026-06-22 08:29:13,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:29:13,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:29:13,858.858 INFO    ] No update needed
[2026-06-22 08:29:13,860.860 INFO    ] Checking for camera pi updates...
[2026-06-22 08:29:13,894.894 INFO    ] 200
[2026-06-22 08:29:13,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:29:13,943.943 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:29:14,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:29:14,031.031 INFO    ] No camera update needed
[2026-06-22 08:29:14,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:29:14,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:29:14,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:29:14,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:29:16,095.095 INFO    ] ================================================
[2026-06-22 08:29:16,111.111 INFO    ] Launching Daemon at Mon Jun 22 08:29:16 IST 2026
[2026-06-22 08:29:16,121.121 INFO    ] ================================================
[2026-06-22 08:29:16,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:29:16
[2026-06-22 08:29:17,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:29:17,457.457 INFO    ] Initializing speech engine...
[2026-06-22 08:29:17,465.465 INFO    ] 2026-06-22 08:29:17
[2026-06-22 08:29:17,725.725 INFO    ] 2026-06-22 08:29:17
[2026-06-22 08:29:17,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:29:18,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:29:18,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:29:18,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:29:18,237.237 INFO    ] time= 22/06/2026 08:29:18
[2026-06-22 08:29:18,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:29:18,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:29:18,435.435 INFO    ] No existing commands found in stream
[2026-06-22 08:29:23,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:29:23,455.455 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-22 08:29:24,982.982 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:29:24,985.985 INFO    ] Checking for system updates...
[2026-06-22 08:29:25,028.028 INFO    ] 200
[2026-06-22 08:29:25,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:29:25,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:29:25,088.088 INFO    ] No update needed
[2026-06-22 08:29:25,091.091 INFO    ] Checking for camera pi updates...
[2026-06-22 08:29:25,126.126 INFO    ] 200
[2026-06-22 08:29:25,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:29:25,172.172 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:29:25,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:29:25,279.279 INFO    ] No camera update needed
[2026-06-22 08:29:25,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:29:25,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:29:25,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:29:25,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:29:27,342.342 INFO    ] ================================================
[2026-06-22 08:29:27,357.357 INFO    ] Launching Daemon at Mon Jun 22 08:29:27 IST 2026
[2026-06-22 08:29:27,368.368 INFO    ] ================================================
[2026-06-22 08:29:27,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:29:27
[2026-06-22 08:29:28,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:29:28,781.781 INFO    ] Initializing speech engine...
[2026-06-22 08:29:28,800.800 INFO    ] 2026-06-22 08:29:28
[2026-06-22 08:29:29,045.045 INFO    ] 2026-06-22 08:29:29
[2026-06-22 08:29:29,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:29:29,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:29:29,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:29:29,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:29:29,453.453 INFO    ] time= 22/06/2026 08:29:29
[2026-06-22 08:29:29,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:29:29,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:29:29,668.668 INFO    ] No existing commands found in stream
[2026-06-22 08:29:34,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:29:34,694.694 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-22 08:29:36,758.758 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:29:36,761.761 INFO    ] Checking for system updates...
[2026-06-22 08:29:36,797.797 INFO    ] 200
[2026-06-22 08:29:36,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:29:36,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:29:36,855.855 INFO    ] No update needed
[2026-06-22 08:29:36,857.857 INFO    ] Checking for camera pi updates...
[2026-06-22 08:29:36,896.896 INFO    ] 200
[2026-06-22 08:29:36,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:29:36,951.951 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:29:37,033.033 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:29:37,035.035 INFO    ] No camera update needed
[2026-06-22 08:29:37,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:29:37,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:29:37,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:29:37,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:29:39,092.092 INFO    ] ================================================
[2026-06-22 08:29:39,107.107 INFO    ] Launching Daemon at Mon Jun 22 08:29:39 IST 2026
[2026-06-22 08:29:39,121.121 INFO    ] ================================================
[2026-06-22 08:29:39,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:29:39
[2026-06-22 08:29:40,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:29:40,493.493 INFO    ] Initializing speech engine...
[2026-06-22 08:29:40,502.502 INFO    ] 2026-06-22 08:29:40
[2026-06-22 08:29:40,767.767 INFO    ] 2026-06-22 08:29:40
[2026-06-22 08:29:40,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:29:41,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:29:41,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:29:41,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:29:41,314.314 INFO    ] time= 22/06/2026 08:29:41
[2026-06-22 08:29:41,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:29:41,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:29:41,454.454 INFO    ] No existing commands found in stream
[2026-06-22 08:29:46,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:29:46,481.481 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-22 08:29:47,115.115 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:29:47,117.117 INFO    ] Checking for system updates...
[2026-06-22 08:29:47,140.140 INFO    ] 200
[2026-06-22 08:29:47,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:29:47,172.172 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:29:47,173.173 INFO    ] No update needed
[2026-06-22 08:29:47,174.174 INFO    ] Checking for camera pi updates...
[2026-06-22 08:29:47,194.194 INFO    ] 200
[2026-06-22 08:29:47,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:29:47,227.227 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:29:47,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:29:47,318.318 INFO    ] No camera update needed
[2026-06-22 08:29:47,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:29:47,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:29:47,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:29:47,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:29:49,377.377 INFO    ] ================================================
[2026-06-22 08:29:49,393.393 INFO    ] Launching Daemon at Mon Jun 22 08:29:49 IST 2026
[2026-06-22 08:29:49,403.403 INFO    ] ================================================
[2026-06-22 08:29:50,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:29:50
[2026-06-22 08:29:50,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:29:50,983.983 INFO    ] Initializing speech engine...
[2026-06-22 08:29:50,990.990 INFO    ] 2026-06-22 08:29:50
[2026-06-22 08:29:51,271.271 INFO    ] 2026-06-22 08:29:51
[2026-06-22 08:29:51,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:29:51,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:29:51,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:29:51,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:29:51,745.745 INFO    ] time= 22/06/2026 08:29:51
[2026-06-22 08:29:51,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:29:51,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:29:51,955.955 INFO    ] No existing commands found in stream
[2026-06-22 08:29:56,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:29:56,981.981 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-22 08:29:59,518.518 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:29:59,521.521 INFO    ] Checking for system updates...
[2026-06-22 08:29:59,565.565 INFO    ] 200
[2026-06-22 08:29:59,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:29:59,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:29:59,626.626 INFO    ] No update needed
[2026-06-22 08:29:59,629.629 INFO    ] Checking for camera pi updates...
[2026-06-22 08:29:59,664.664 INFO    ] 200
[2026-06-22 08:29:59,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:29:59,711.711 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:29:59,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:29:59,896.896 INFO    ] No camera update needed
[2026-06-22 08:29:59,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:29:59,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:29:59,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:29:59,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:30:02,003.003 INFO    ] ================================================
[2026-06-22 08:30:02,063.063 INFO    ] Launching Daemon at Mon Jun 22 08:30:02 IST 2026
[2026-06-22 08:30:02,092.092 INFO    ] ================================================
[2026-06-22 08:30:03,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:30:03
[2026-06-22 08:30:04,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:30:04,427.427 INFO    ] Initializing speech engine...
[2026-06-22 08:30:04,435.435 INFO    ] 2026-06-22 08:30:04
[2026-06-22 08:30:04,771.771 INFO    ] 2026-06-22 08:30:04
[2026-06-22 08:30:04,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:30:05,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:30:05,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:30:05,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:30:05,199.199 INFO    ] time= 22/06/2026 08:30:05
[2026-06-22 08:30:05,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:30:05,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:30:05,372.372 INFO    ] No existing commands found in stream
[2026-06-22 08:30:10,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:30:10,406.406 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-22 08:30:11,399.399 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:30:11,402.402 INFO    ] Checking for system updates...
[2026-06-22 08:30:11,445.445 INFO    ] 200
[2026-06-22 08:30:11,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:30:11,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:30:11,507.507 INFO    ] No update needed
[2026-06-22 08:30:11,509.509 INFO    ] Checking for camera pi updates...
[2026-06-22 08:30:11,549.549 INFO    ] 200
[2026-06-22 08:30:11,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:30:11,596.596 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:30:11,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:30:11,683.683 INFO    ] No camera update needed
[2026-06-22 08:30:11,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:30:11,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:30:11,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:30:11,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:30:13,740.740 INFO    ] ================================================
[2026-06-22 08:30:13,757.757 INFO    ] Launching Daemon at Mon Jun 22 08:30:13 IST 2026
[2026-06-22 08:30:13,768.768 INFO    ] ================================================
[2026-06-22 08:30:14,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:30:14
[2026-06-22 08:30:15,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:30:15,387.387 INFO    ] Initializing speech engine...
[2026-06-22 08:30:15,399.399 INFO    ] 2026-06-22 08:30:15
[2026-06-22 08:30:15,712.712 INFO    ] 2026-06-22 08:30:15
[2026-06-22 08:30:15,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:30:15,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:30:15,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:30:16,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:30:16,231.231 INFO    ] time= 22/06/2026 08:30:16
[2026-06-22 08:30:16,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:30:16,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:30:16,413.413 INFO    ] No existing commands found in stream
[2026-06-22 08:30:21,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:30:21,448.448 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-22 08:30:24,574.574 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:30:24,578.578 INFO    ] Checking for system updates...
[2026-06-22 08:30:24,615.615 INFO    ] 200
[2026-06-22 08:30:24,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:30:24,672.672 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:30:24,675.675 INFO    ] No update needed
[2026-06-22 08:30:24,678.678 INFO    ] Checking for camera pi updates...
[2026-06-22 08:30:24,713.713 INFO    ] 200
[2026-06-22 08:30:24,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:30:24,759.759 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:30:24,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:30:24,861.861 INFO    ] No camera update needed
[2026-06-22 08:30:24,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:30:24,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:30:24,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:30:24,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:30:26,920.920 INFO    ] ================================================
[2026-06-22 08:30:26,937.937 INFO    ] Launching Daemon at Mon Jun 22 08:30:26 IST 2026
[2026-06-22 08:30:26,948.948 INFO    ] ================================================
[2026-06-22 08:30:27,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:30:27
[2026-06-22 08:30:28,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:30:28,313.313 INFO    ] Initializing speech engine...
[2026-06-22 08:30:28,328.328 INFO    ] 2026-06-22 08:30:28
[2026-06-22 08:30:28,617.617 INFO    ] 2026-06-22 08:30:28
[2026-06-22 08:30:28,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:30:28,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:30:28,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:30:28,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:30:29,000.000 INFO    ] time= 22/06/2026 08:30:28
[2026-06-22 08:30:29,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:30:29,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:30:29,125.125 INFO    ] No existing commands found in stream
[2026-06-22 08:30:34,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:30:34,141.141 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-22 08:30:38,323.323 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:30:38,326.326 INFO    ] Checking for system updates...
[2026-06-22 08:30:38,361.361 INFO    ] 200
[2026-06-22 08:30:38,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:30:38,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:30:38,427.427 INFO    ] No update needed
[2026-06-22 08:30:38,429.429 INFO    ] Checking for camera pi updates...
[2026-06-22 08:30:38,467.467 INFO    ] 200
[2026-06-22 08:30:38,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:30:38,511.511 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:30:38,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:30:38,595.595 INFO    ] No camera update needed
[2026-06-22 08:30:38,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:30:38,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:30:38,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:30:38,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:30:40,656.656 INFO    ] ================================================
[2026-06-22 08:30:40,672.672 INFO    ] Launching Daemon at Mon Jun 22 08:30:40 IST 2026
[2026-06-22 08:30:40,683.683 INFO    ] ================================================
[2026-06-22 08:30:41,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:30:41
[2026-06-22 08:30:41,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:30:42,020.020 INFO    ] Initializing speech engine...
[2026-06-22 08:30:42,045.045 INFO    ] 2026-06-22 08:30:42
[2026-06-22 08:30:42,317.317 INFO    ] 2026-06-22 08:30:42
[2026-06-22 08:30:42,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:30:42,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:30:42,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:30:42,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:30:42,742.742 INFO    ] time= 22/06/2026 08:30:42
[2026-06-22 08:30:42,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:30:42,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:30:42,889.889 INFO    ] No existing commands found in stream
[2026-06-22 08:30:47,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:30:47,921.921 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-22 08:30:50,323.323 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:30:50,326.326 INFO    ] Checking for system updates...
[2026-06-22 08:30:50,361.361 INFO    ] 200
[2026-06-22 08:30:50,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:30:50,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:30:50,426.426 INFO    ] No update needed
[2026-06-22 08:30:50,428.428 INFO    ] Checking for camera pi updates...
[2026-06-22 08:30:50,462.462 INFO    ] 200
[2026-06-22 08:30:50,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:30:50,508.508 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:30:50,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:30:50,599.599 INFO    ] No camera update needed
[2026-06-22 08:30:50,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:30:50,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:30:50,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:30:50,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:30:52,654.654 INFO    ] ================================================
[2026-06-22 08:30:52,669.669 INFO    ] Launching Daemon at Mon Jun 22 08:30:52 IST 2026
[2026-06-22 08:30:52,680.680 INFO    ] ================================================
[2026-06-22 08:30:53,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:30:53
[2026-06-22 08:30:53,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:30:54,013.013 INFO    ] Initializing speech engine...
[2026-06-22 08:30:54,027.027 INFO    ] 2026-06-22 08:30:54
[2026-06-22 08:30:54,289.289 INFO    ] 2026-06-22 08:30:54
[2026-06-22 08:30:54,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:30:54,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:30:54,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:30:54,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:30:54,663.663 INFO    ] time= 22/06/2026 08:30:54
[2026-06-22 08:30:54,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:30:54,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:30:54,854.854 INFO    ] No existing commands found in stream
[2026-06-22 08:30:59,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:30:59,869.869 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-22 08:31:03,239.239 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:31:03,241.241 INFO    ] Checking for system updates...
[2026-06-22 08:31:03,283.283 INFO    ] 200
[2026-06-22 08:31:03,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:31:03,344.344 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:31:03,347.347 INFO    ] No update needed
[2026-06-22 08:31:03,349.349 INFO    ] Checking for camera pi updates...
[2026-06-22 08:31:03,383.383 INFO    ] 200
[2026-06-22 08:31:03,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:31:03,445.445 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:31:03,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:31:03,530.530 INFO    ] No camera update needed
[2026-06-22 08:31:03,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:31:03,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:31:03,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:31:03,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:31:05,588.588 INFO    ] ================================================
[2026-06-22 08:31:05,603.603 INFO    ] Launching Daemon at Mon Jun 22 08:31:05 IST 2026
[2026-06-22 08:31:05,614.614 INFO    ] ================================================
[2026-06-22 08:31:06,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:31:06
[2026-06-22 08:31:06,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:31:07,138.138 INFO    ] Initializing speech engine...
[2026-06-22 08:31:07,145.145 INFO    ] 2026-06-22 08:31:07
[2026-06-22 08:31:07,419.419 INFO    ] 2026-06-22 08:31:07
[2026-06-22 08:31:07,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:31:07,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:31:07,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:31:07,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:31:07,934.934 INFO    ] time= 22/06/2026 08:31:07
[2026-06-22 08:31:07,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:31:08,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:31:08,151.151 INFO    ] No existing commands found in stream
[2026-06-22 08:31:13,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:31:13,172.172 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-22 08:31:14,398.398 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:31:14,400.400 INFO    ] Checking for system updates...
[2026-06-22 08:31:14,421.421 INFO    ] 200
[2026-06-22 08:31:14,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:31:14,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:31:14,456.456 INFO    ] No update needed
[2026-06-22 08:31:14,458.458 INFO    ] Checking for camera pi updates...
[2026-06-22 08:31:14,480.480 INFO    ] 200
[2026-06-22 08:31:14,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:31:14,520.520 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:31:14,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:31:14,594.594 INFO    ] No camera update needed
[2026-06-22 08:31:14,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:31:14,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:31:14,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:31:14,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:31:16,653.653 INFO    ] ================================================
[2026-06-22 08:31:16,668.668 INFO    ] Launching Daemon at Mon Jun 22 08:31:16 IST 2026
[2026-06-22 08:31:16,679.679 INFO    ] ================================================
[2026-06-22 08:31:17,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:31:17
[2026-06-22 08:31:17,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:31:18,067.067 INFO    ] Initializing speech engine...
[2026-06-22 08:31:18,076.076 INFO    ] 2026-06-22 08:31:18
[2026-06-22 08:31:18,324.324 INFO    ] 2026-06-22 08:31:18
[2026-06-22 08:31:18,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:31:18,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:31:18,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:31:18,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:31:18,813.813 INFO    ] time= 22/06/2026 08:31:18
[2026-06-22 08:31:18,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:31:18,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:31:19,036.036 INFO    ] No existing commands found in stream
[2026-06-22 08:31:24,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:31:24,069.069 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-22 08:31:27,090.090 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:31:27,092.092 INFO    ] Checking for system updates...
[2026-06-22 08:31:27,128.128 INFO    ] 200
[2026-06-22 08:31:27,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:31:27,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:31:27,186.186 INFO    ] No update needed
[2026-06-22 08:31:27,188.188 INFO    ] Checking for camera pi updates...
[2026-06-22 08:31:27,223.223 INFO    ] 200
[2026-06-22 08:31:27,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:31:27,267.267 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:31:27,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:31:27,332.332 INFO    ] No camera update needed
[2026-06-22 08:31:27,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:31:27,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:31:27,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:31:27,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:31:29,395.395 INFO    ] ================================================
[2026-06-22 08:31:29,411.411 INFO    ] Launching Daemon at Mon Jun 22 08:31:29 IST 2026
[2026-06-22 08:31:29,422.422 INFO    ] ================================================
[2026-06-22 08:31:29,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:31:29
[2026-06-22 08:31:30,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:31:30,741.741 INFO    ] Initializing speech engine...
[2026-06-22 08:31:30,753.753 INFO    ] 2026-06-22 08:31:30
[2026-06-22 08:31:31,036.036 INFO    ] 2026-06-22 08:31:31
[2026-06-22 08:31:31,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:31:31,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:31:31,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:31:31,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:31:31,670.670 INFO    ] time= 22/06/2026 08:31:31
[2026-06-22 08:31:31,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:31:31,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:31:31,836.836 INFO    ] No existing commands found in stream
[2026-06-22 08:31:36,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:31:36,877.877 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-22 08:31:40,736.736 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:31:40,739.739 INFO    ] Checking for system updates...
[2026-06-22 08:31:40,777.777 INFO    ] 200
[2026-06-22 08:31:40,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:31:40,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:31:40,835.835 INFO    ] No update needed
[2026-06-22 08:31:40,838.838 INFO    ] Checking for camera pi updates...
[2026-06-22 08:31:40,875.875 INFO    ] 200
[2026-06-22 08:31:40,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:31:40,924.924 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:31:41,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:31:41,011.011 INFO    ] No camera update needed
[2026-06-22 08:31:41,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:31:41,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:31:41,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:31:41,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:31:43,067.067 INFO    ] ================================================
[2026-06-22 08:31:43,083.083 INFO    ] Launching Daemon at Mon Jun 22 08:31:43 IST 2026
[2026-06-22 08:31:43,093.093 INFO    ] ================================================
[2026-06-22 08:31:43,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:31:43
[2026-06-22 08:31:44,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:31:44,729.729 INFO    ] Initializing speech engine...
[2026-06-22 08:31:44,736.736 INFO    ] 2026-06-22 08:31:44
[2026-06-22 08:31:44,995.995 INFO    ] 2026-06-22 08:31:44
[2026-06-22 08:31:45,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:31:45,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:31:45,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:31:45,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:31:45,383.383 INFO    ] time= 22/06/2026 08:31:45
[2026-06-22 08:31:45,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:31:45,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:31:45,496.496 INFO    ] No existing commands found in stream
[2026-06-22 08:31:50,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:31:50,511.511 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-22 08:31:54,215.215 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:31:54,218.218 INFO    ] Checking for system updates...
[2026-06-22 08:31:54,257.257 INFO    ] 200
[2026-06-22 08:31:54,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:31:54,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:31:54,316.316 INFO    ] No update needed
[2026-06-22 08:31:54,318.318 INFO    ] Checking for camera pi updates...
[2026-06-22 08:31:54,357.357 INFO    ] 200
[2026-06-22 08:31:54,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:31:54,401.401 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:31:54,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:31:54,501.501 INFO    ] No camera update needed
[2026-06-22 08:31:54,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:31:54,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:31:54,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:31:54,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:31:56,556.556 INFO    ] ================================================
[2026-06-22 08:31:56,571.571 INFO    ] Launching Daemon at Mon Jun 22 08:31:56 IST 2026
[2026-06-22 08:31:56,583.583 INFO    ] ================================================
[2026-06-22 08:31:57,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:31:57
[2026-06-22 08:31:57,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:31:58,169.169 INFO    ] Initializing speech engine...
[2026-06-22 08:31:58,180.180 INFO    ] 2026-06-22 08:31:58
[2026-06-22 08:31:58,453.453 INFO    ] 2026-06-22 08:31:58
[2026-06-22 08:31:58,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:31:58,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:31:58,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:31:58,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:31:58,946.946 INFO    ] time= 22/06/2026 08:31:58
[2026-06-22 08:31:59,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:31:59,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:31:59,165.165 INFO    ] No existing commands found in stream
[2026-06-22 08:32:04,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:32:04,194.194 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-22 08:32:05,584.584 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:32:05,587.587 INFO    ] Checking for system updates...
[2026-06-22 08:32:05,624.624 INFO    ] 200
[2026-06-22 08:32:05,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:32:05,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:32:05,683.683 INFO    ] No update needed
[2026-06-22 08:32:05,686.686 INFO    ] Checking for camera pi updates...
[2026-06-22 08:32:05,724.724 INFO    ] 200
[2026-06-22 08:32:05,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:32:05,770.770 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:32:05,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:32:05,852.852 INFO    ] No camera update needed
[2026-06-22 08:32:05,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:32:05,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:32:05,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:32:05,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:32:07,913.913 INFO    ] ================================================
[2026-06-22 08:32:07,929.929 INFO    ] Launching Daemon at Mon Jun 22 08:32:07 IST 2026
[2026-06-22 08:32:07,942.942 INFO    ] ================================================
[2026-06-22 08:32:08,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:32:08
[2026-06-22 08:32:09,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:32:09,391.391 INFO    ] Initializing speech engine...
[2026-06-22 08:32:09,398.398 INFO    ] 2026-06-22 08:32:09
[2026-06-22 08:32:09,692.692 INFO    ] 2026-06-22 08:32:09
[2026-06-22 08:32:09,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:32:09,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:32:09,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:32:10,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:32:10,102.102 INFO    ] time= 22/06/2026 08:32:10
[2026-06-22 08:32:10,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:32:10,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:32:10,209.209 INFO    ] No existing commands found in stream
[2026-06-22 08:32:15,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:32:15,237.237 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-22 08:32:17,874.874 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:32:17,877.877 INFO    ] Checking for system updates...
[2026-06-22 08:32:17,918.918 INFO    ] 200
[2026-06-22 08:32:17,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:32:17,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:32:17,977.977 INFO    ] No update needed
[2026-06-22 08:32:17,979.979 INFO    ] Checking for camera pi updates...
[2026-06-22 08:32:18,016.016 INFO    ] 200
[2026-06-22 08:32:18,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:32:18,060.060 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:32:18,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:32:18,150.150 INFO    ] No camera update needed
[2026-06-22 08:32:18,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:32:18,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:32:18,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:32:18,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:32:20,213.213 INFO    ] ================================================
[2026-06-22 08:32:20,228.228 INFO    ] Launching Daemon at Mon Jun 22 08:32:20 IST 2026
[2026-06-22 08:32:20,238.238 INFO    ] ================================================
[2026-06-22 08:32:20,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:32:20
[2026-06-22 08:32:21,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:32:21,694.694 INFO    ] Initializing speech engine...
[2026-06-22 08:32:21,702.702 INFO    ] 2026-06-22 08:32:21
[2026-06-22 08:32:21,959.959 INFO    ] 2026-06-22 08:32:21
[2026-06-22 08:32:22,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:32:22,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:32:22,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:32:22,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:32:22,420.420 INFO    ] time= 22/06/2026 08:32:22
[2026-06-22 08:32:22,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:32:22,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:32:22,563.563 INFO    ] No existing commands found in stream
[2026-06-22 08:32:27,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:32:27,589.589 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-22 08:32:28,624.624 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:32:28,626.626 INFO    ] Checking for system updates...
[2026-06-22 08:32:28,662.662 INFO    ] 200
[2026-06-22 08:32:28,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:32:28,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:32:28,727.727 INFO    ] No update needed
[2026-06-22 08:32:28,730.730 INFO    ] Checking for camera pi updates...
[2026-06-22 08:32:28,764.764 INFO    ] 200
[2026-06-22 08:32:28,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:32:28,807.807 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:32:28,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:32:28,861.861 INFO    ] No camera update needed
[2026-06-22 08:32:28,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:32:28,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:32:28,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:32:28,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:32:30,917.917 INFO    ] ================================================
[2026-06-22 08:32:30,933.933 INFO    ] Launching Daemon at Mon Jun 22 08:32:30 IST 2026
[2026-06-22 08:32:30,945.945 INFO    ] ================================================
[2026-06-22 08:32:31,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:32:31
[2026-06-22 08:32:32,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:32:32,438.438 INFO    ] Initializing speech engine...
[2026-06-22 08:32:32,453.453 INFO    ] 2026-06-22 08:32:32
[2026-06-22 08:32:32,735.735 INFO    ] 2026-06-22 08:32:32
[2026-06-22 08:32:32,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:32:32,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:32:32,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:32:33,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:32:33,142.142 INFO    ] time= 22/06/2026 08:32:33
[2026-06-22 08:32:33,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:32:33,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:32:33,339.339 INFO    ] No existing commands found in stream
[2026-06-22 08:32:38,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:32:38,357.357 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-22 08:32:41,835.835 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:32:41,837.837 INFO    ] Checking for system updates...
[2026-06-22 08:32:41,873.873 INFO    ] 200
[2026-06-22 08:32:41,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:32:41,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:32:41,931.931 INFO    ] No update needed
[2026-06-22 08:32:41,934.934 INFO    ] Checking for camera pi updates...
[2026-06-22 08:32:41,970.970 INFO    ] 200
[2026-06-22 08:32:41,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:32:42,018.018 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:32:42,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:32:42,107.107 INFO    ] No camera update needed
[2026-06-22 08:32:42,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:32:42,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:32:42,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:32:42,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:32:44,166.166 INFO    ] ================================================
[2026-06-22 08:32:44,181.181 INFO    ] Launching Daemon at Mon Jun 22 08:32:44 IST 2026
[2026-06-22 08:32:44,193.193 INFO    ] ================================================
[2026-06-22 08:32:44,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:32:44
[2026-06-22 08:32:45,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:32:45,601.601 INFO    ] Initializing speech engine...
[2026-06-22 08:32:45,607.607 INFO    ] 2026-06-22 08:32:45
[2026-06-22 08:32:45,898.898 INFO    ] 2026-06-22 08:32:45
[2026-06-22 08:32:45,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:32:46,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:32:46,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:32:46,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:32:46,286.286 INFO    ] time= 22/06/2026 08:32:46
[2026-06-22 08:32:46,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:32:46,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:32:46,393.393 INFO    ] No existing commands found in stream
[2026-06-22 08:32:51,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:32:51,408.408 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-22 08:32:53,203.203 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:32:53,206.206 INFO    ] Checking for system updates...
[2026-06-22 08:32:53,247.247 INFO    ] 200
[2026-06-22 08:32:53,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:32:53,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:32:53,317.317 INFO    ] No update needed
[2026-06-22 08:32:53,320.320 INFO    ] Checking for camera pi updates...
[2026-06-22 08:32:53,353.353 INFO    ] 200
[2026-06-22 08:32:53,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:32:53,407.407 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:32:53,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:32:53,489.489 INFO    ] No camera update needed
[2026-06-22 08:32:53,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:32:53,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:32:53,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:32:53,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:32:55,550.550 INFO    ] ================================================
[2026-06-22 08:32:55,565.565 INFO    ] Launching Daemon at Mon Jun 22 08:32:55 IST 2026
[2026-06-22 08:32:55,577.577 INFO    ] ================================================
[2026-06-22 08:32:56,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:32:56
[2026-06-22 08:32:56,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:32:57,194.194 INFO    ] Initializing speech engine...
[2026-06-22 08:32:57,203.203 INFO    ] 2026-06-22 08:32:57
[2026-06-22 08:32:57,506.506 INFO    ] 2026-06-22 08:32:57
[2026-06-22 08:32:57,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:32:57,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:32:57,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:32:58,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:32:58,016.016 INFO    ] time= 22/06/2026 08:32:58
[2026-06-22 08:32:58,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:32:58,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:32:58,170.170 INFO    ] No existing commands found in stream
[2026-06-22 08:33:03,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:33:03,186.186 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-22 08:33:05,287.287 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:33:05,291.291 INFO    ] Checking for system updates...
[2026-06-22 08:33:05,328.328 INFO    ] 200
[2026-06-22 08:33:05,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:33:05,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:33:05,399.399 INFO    ] No update needed
[2026-06-22 08:33:05,402.402 INFO    ] Checking for camera pi updates...
[2026-06-22 08:33:05,440.440 INFO    ] 200
[2026-06-22 08:33:05,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:33:05,485.485 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:33:05,550.550 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:33:05,553.553 INFO    ] No camera update needed
[2026-06-22 08:33:05,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:33:05,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:33:05,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:33:05,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:33:07,613.613 INFO    ] ================================================
[2026-06-22 08:33:07,629.629 INFO    ] Launching Daemon at Mon Jun 22 08:33:07 IST 2026
[2026-06-22 08:33:07,640.640 INFO    ] ================================================
[2026-06-22 08:33:08,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:33:08
[2026-06-22 08:33:08,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:33:08,998.998 INFO    ] Initializing speech engine...
[2026-06-22 08:33:09,017.017 INFO    ] 2026-06-22 08:33:09
[2026-06-22 08:33:09,285.285 INFO    ] 2026-06-22 08:33:09
[2026-06-22 08:33:09,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:33:09,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:33:09,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:33:09,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:33:09,706.706 INFO    ] time= 22/06/2026 08:33:09
[2026-06-22 08:33:09,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:33:09,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:33:09,791.791 INFO    ] No existing commands found in stream
[2026-06-22 08:33:14,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:33:14,806.806 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-22 08:33:17,118.118 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:33:17,121.121 INFO    ] Checking for system updates...
[2026-06-22 08:33:17,156.156 INFO    ] 200
[2026-06-22 08:33:17,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:33:17,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:33:17,214.214 INFO    ] No update needed
[2026-06-22 08:33:17,217.217 INFO    ] Checking for camera pi updates...
[2026-06-22 08:33:17,254.254 INFO    ] 200
[2026-06-22 08:33:17,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:33:17,303.303 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:33:17,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:33:17,391.391 INFO    ] No camera update needed
[2026-06-22 08:33:17,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:33:17,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:33:17,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:33:17,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:33:19,448.448 INFO    ] ================================================
[2026-06-22 08:33:19,463.463 INFO    ] Launching Daemon at Mon Jun 22 08:33:19 IST 2026
[2026-06-22 08:33:19,474.474 INFO    ] ================================================
[2026-06-22 08:33:19,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:33:19
[2026-06-22 08:33:20,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:33:20,824.824 INFO    ] Initializing speech engine...
[2026-06-22 08:33:20,833.833 INFO    ] 2026-06-22 08:33:20
[2026-06-22 08:33:21,079.079 INFO    ] 2026-06-22 08:33:21
[2026-06-22 08:33:21,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:33:21,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:33:21,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:33:21,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:33:21,601.601 INFO    ] time= 22/06/2026 08:33:21
[2026-06-22 08:33:21,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:33:21,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:33:21,764.764 INFO    ] No existing commands found in stream
[2026-06-22 08:33:26,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:33:26,782.782 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-22 08:33:30,475.475 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:33:30,477.477 INFO    ] Checking for system updates...
[2026-06-22 08:33:30,518.518 INFO    ] 200
[2026-06-22 08:33:30,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:33:30,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:33:30,576.576 INFO    ] No update needed
[2026-06-22 08:33:30,579.579 INFO    ] Checking for camera pi updates...
[2026-06-22 08:33:30,612.612 INFO    ] 200
[2026-06-22 08:33:30,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:33:30,656.656 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:33:30,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:33:30,764.764 INFO    ] No camera update needed
[2026-06-22 08:33:30,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:33:30,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:33:30,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:33:30,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:33:32,824.824 INFO    ] ================================================
[2026-06-22 08:33:32,841.841 INFO    ] Launching Daemon at Mon Jun 22 08:33:32 IST 2026
[2026-06-22 08:33:32,852.852 INFO    ] ================================================
[2026-06-22 08:33:33,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:33:33
[2026-06-22 08:33:34,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:33:34,274.274 INFO    ] Initializing speech engine...
[2026-06-22 08:33:34,286.286 INFO    ] 2026-06-22 08:33:34
[2026-06-22 08:33:34,538.538 INFO    ] 2026-06-22 08:33:34
[2026-06-22 08:33:34,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:33:34,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:33:34,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:33:34,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:33:35,014.014 INFO    ] time= 22/06/2026 08:33:34
[2026-06-22 08:33:35,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:33:35,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:33:35,189.189 INFO    ] No existing commands found in stream
[2026-06-22 08:33:40,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:33:40,219.219 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-22 08:33:40,710.710 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:33:40,713.713 INFO    ] Checking for system updates...
[2026-06-22 08:33:40,749.749 INFO    ] 200
[2026-06-22 08:33:40,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:33:40,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:33:40,807.807 INFO    ] No update needed
[2026-06-22 08:33:40,809.809 INFO    ] Checking for camera pi updates...
[2026-06-22 08:33:40,843.843 INFO    ] 200
[2026-06-22 08:33:40,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:33:40,886.886 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:33:40,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:33:40,962.962 INFO    ] No camera update needed
[2026-06-22 08:33:40,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:33:40,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:33:40,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:33:40,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:33:43,019.019 INFO    ] ================================================
[2026-06-22 08:33:43,036.036 INFO    ] Launching Daemon at Mon Jun 22 08:33:43 IST 2026
[2026-06-22 08:33:43,046.046 INFO    ] ================================================
[2026-06-22 08:33:43,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:33:43
[2026-06-22 08:33:44,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:33:44,442.442 INFO    ] Initializing speech engine...
[2026-06-22 08:33:44,463.463 INFO    ] 2026-06-22 08:33:44
[2026-06-22 08:33:44,721.721 INFO    ] 2026-06-22 08:33:44
[2026-06-22 08:33:44,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:33:45,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:33:45,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:33:45,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:33:45,223.223 INFO    ] time= 22/06/2026 08:33:45
[2026-06-22 08:33:45,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:33:45,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:33:45,426.426 INFO    ] No existing commands found in stream
[2026-06-22 08:33:50,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:33:50,445.445 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-22 08:33:52,808.808 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:33:52,811.811 INFO    ] Checking for system updates...
[2026-06-22 08:33:52,846.846 INFO    ] 200
[2026-06-22 08:33:52,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:33:52,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:33:52,911.911 INFO    ] No update needed
[2026-06-22 08:33:52,914.914 INFO    ] Checking for camera pi updates...
[2026-06-22 08:33:52,953.953 INFO    ] 200
[2026-06-22 08:33:52,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:33:52,997.997 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:33:53,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:33:53,081.081 INFO    ] No camera update needed
[2026-06-22 08:33:53,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:33:53,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:33:53,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:33:53,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:33:55,138.138 INFO    ] ================================================
[2026-06-22 08:33:55,154.154 INFO    ] Launching Daemon at Mon Jun 22 08:33:55 IST 2026
[2026-06-22 08:33:55,165.165 INFO    ] ================================================
[2026-06-22 08:33:55,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:33:55
[2026-06-22 08:33:56,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:33:56,824.824 INFO    ] Initializing speech engine...
[2026-06-22 08:33:56,837.837 INFO    ] 2026-06-22 08:33:56
[2026-06-22 08:33:57,149.149 INFO    ] 2026-06-22 08:33:57
[2026-06-22 08:33:57,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:33:57,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:33:57,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:33:57,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:33:57,755.755 INFO    ] time= 22/06/2026 08:33:57
[2026-06-22 08:33:57,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:33:57,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:33:58,006.006 INFO    ] No existing commands found in stream
[2026-06-22 08:34:03,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:34:03,025.025 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-22 08:34:05,828.828 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:34:05,831.831 INFO    ] Checking for system updates...
[2026-06-22 08:34:05,869.869 INFO    ] 200
[2026-06-22 08:34:05,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:34:05,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:34:05,920.920 INFO    ] No update needed
[2026-06-22 08:34:05,922.922 INFO    ] Checking for camera pi updates...
[2026-06-22 08:34:05,942.942 INFO    ] 200
[2026-06-22 08:34:05,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:34:05,967.967 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:34:06,145.145 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:34:06,148.148 INFO    ] No camera update needed
[2026-06-22 08:34:06,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:34:06,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:34:06,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:34:06,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:34:08,209.209 INFO    ] ================================================
[2026-06-22 08:34:08,225.225 INFO    ] Launching Daemon at Mon Jun 22 08:34:08 IST 2026
[2026-06-22 08:34:08,237.237 INFO    ] ================================================
[2026-06-22 08:34:08,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:34:08
[2026-06-22 08:34:09,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:34:09,695.695 INFO    ] Initializing speech engine...
[2026-06-22 08:34:09,702.702 INFO    ] 2026-06-22 08:34:09
[2026-06-22 08:34:10,003.003 INFO    ] 2026-06-22 08:34:09
[2026-06-22 08:34:10,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:34:10,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:34:10,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:34:10,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:34:10,507.507 INFO    ] time= 22/06/2026 08:34:10
[2026-06-22 08:34:10,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:34:10,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:34:10,706.706 INFO    ] No existing commands found in stream
[2026-06-22 08:34:15,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:34:15,725.725 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-22 08:34:17,995.995 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:34:17,998.998 INFO    ] Checking for system updates...
[2026-06-22 08:34:18,034.034 INFO    ] 200
[2026-06-22 08:34:18,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:34:18,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:34:18,092.092 INFO    ] No update needed
[2026-06-22 08:34:18,094.094 INFO    ] Checking for camera pi updates...
[2026-06-22 08:34:18,128.128 INFO    ] 200
[2026-06-22 08:34:18,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:34:18,176.176 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:34:18,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:34:18,246.246 INFO    ] No camera update needed
[2026-06-22 08:34:18,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:34:18,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:34:18,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:34:18,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:34:20,302.302 INFO    ] ================================================
[2026-06-22 08:34:20,317.317 INFO    ] Launching Daemon at Mon Jun 22 08:34:20 IST 2026
[2026-06-22 08:34:20,328.328 INFO    ] ================================================
[2026-06-22 08:34:20,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:34:20
[2026-06-22 08:34:21,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:34:21,676.676 INFO    ] Initializing speech engine...
[2026-06-22 08:34:21,685.685 INFO    ] 2026-06-22 08:34:21
[2026-06-22 08:34:21,933.933 INFO    ] 2026-06-22 08:34:21
[2026-06-22 08:34:21,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:34:22,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:34:22,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:34:22,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:34:22,493.493 INFO    ] time= 22/06/2026 08:34:22
[2026-06-22 08:34:22,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:34:22,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:34:22,653.653 INFO    ] No existing commands found in stream
[2026-06-22 08:34:27,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:34:27,686.686 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-22 08:34:29,636.636 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:34:29,639.639 INFO    ] Checking for system updates...
[2026-06-22 08:34:29,678.678 INFO    ] 200
[2026-06-22 08:34:29,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:34:29,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:34:29,740.740 INFO    ] No update needed
[2026-06-22 08:34:29,742.742 INFO    ] Checking for camera pi updates...
[2026-06-22 08:34:29,779.779 INFO    ] 200
[2026-06-22 08:34:29,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:34:29,832.832 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:34:29,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:34:29,886.886 INFO    ] No camera update needed
[2026-06-22 08:34:29,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:34:29,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:34:29,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:34:29,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:34:31,949.949 INFO    ] ================================================
[2026-06-22 08:34:31,966.966 INFO    ] Launching Daemon at Mon Jun 22 08:34:31 IST 2026
[2026-06-22 08:34:31,978.978 INFO    ] ================================================
[2026-06-22 08:34:32,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:34:32
[2026-06-22 08:34:33,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:34:33,557.557 INFO    ] Initializing speech engine...
[2026-06-22 08:34:33,565.565 INFO    ] 2026-06-22 08:34:33
[2026-06-22 08:34:33,862.862 INFO    ] 2026-06-22 08:34:33
[2026-06-22 08:34:33,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:34:34,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:34:34,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:34:34,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:34:34,340.340 INFO    ] time= 22/06/2026 08:34:34
[2026-06-22 08:34:34,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:34:34,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:34:34,525.525 INFO    ] No existing commands found in stream
[2026-06-22 08:34:39,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:34:39,539.539 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-22 08:34:41,166.166 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:34:41,169.169 INFO    ] Checking for system updates...
[2026-06-22 08:34:41,205.205 INFO    ] 200
[2026-06-22 08:34:41,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:34:41,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:34:41,262.262 INFO    ] No update needed
[2026-06-22 08:34:41,265.265 INFO    ] Checking for camera pi updates...
[2026-06-22 08:34:41,299.299 INFO    ] 200
[2026-06-22 08:34:41,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:34:41,341.341 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:34:41,448.448 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:34:41,450.450 INFO    ] No camera update needed
[2026-06-22 08:34:41,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:34:41,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:34:41,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:34:41,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:34:43,508.508 INFO    ] ================================================
[2026-06-22 08:34:43,524.524 INFO    ] Launching Daemon at Mon Jun 22 08:34:43 IST 2026
[2026-06-22 08:34:43,536.536 INFO    ] ================================================
[2026-06-22 08:34:44,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:34:44
[2026-06-22 08:34:44,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:34:44,926.926 INFO    ] Initializing speech engine...
[2026-06-22 08:34:44,939.939 INFO    ] 2026-06-22 08:34:44
[2026-06-22 08:34:45,221.221 INFO    ] 2026-06-22 08:34:45
[2026-06-22 08:34:45,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:34:45,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:34:45,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:34:45,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:34:45,763.763 INFO    ] time= 22/06/2026 08:34:45
[2026-06-22 08:34:45,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:34:45,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:34:45,911.911 INFO    ] No existing commands found in stream
[2026-06-22 08:34:50,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:34:50,936.936 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-22 08:34:54,080.080 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:34:54,082.082 INFO    ] Checking for system updates...
[2026-06-22 08:34:54,105.105 INFO    ] 200
[2026-06-22 08:34:54,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:34:54,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:34:54,143.143 INFO    ] No update needed
[2026-06-22 08:34:54,146.146 INFO    ] Checking for camera pi updates...
[2026-06-22 08:34:54,186.186 INFO    ] 200
[2026-06-22 08:34:54,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:34:54,232.232 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:34:54,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:34:54,330.330 INFO    ] No camera update needed
[2026-06-22 08:34:54,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:34:54,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:34:54,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:34:54,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:34:56,390.390 INFO    ] ================================================
[2026-06-22 08:34:56,407.407 INFO    ] Launching Daemon at Mon Jun 22 08:34:56 IST 2026
[2026-06-22 08:34:56,418.418 INFO    ] ================================================
[2026-06-22 08:34:57,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:34:57
[2026-06-22 08:34:57,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:34:58,091.091 INFO    ] Initializing speech engine...
[2026-06-22 08:34:58,099.099 INFO    ] 2026-06-22 08:34:58
[2026-06-22 08:34:58,393.393 INFO    ] 2026-06-22 08:34:58
[2026-06-22 08:34:58,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:34:58,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:34:58,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:34:58,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:34:58,893.893 INFO    ] time= 22/06/2026 08:34:58
[2026-06-22 08:34:58,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:34:58,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:34:59,071.071 INFO    ] No existing commands found in stream
[2026-06-22 08:35:04,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:35:04,110.110 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-22 08:35:07,751.751 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:35:07,753.753 INFO    ] Checking for system updates...
[2026-06-22 08:35:07,782.782 INFO    ] 200
[2026-06-22 08:35:07,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:35:07,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:35:07,841.841 INFO    ] No update needed
[2026-06-22 08:35:07,844.844 INFO    ] Checking for camera pi updates...
[2026-06-22 08:35:07,879.879 INFO    ] 200
[2026-06-22 08:35:07,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:35:07,923.923 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:35:07,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:35:07,980.980 INFO    ] No camera update needed
[2026-06-22 08:35:07,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:35:07,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:35:07,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:35:07,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:35:10,041.041 INFO    ] ================================================
[2026-06-22 08:35:10,057.057 INFO    ] Launching Daemon at Mon Jun 22 08:35:10 IST 2026
[2026-06-22 08:35:10,068.068 INFO    ] ================================================
[2026-06-22 08:35:10,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:35:10
[2026-06-22 08:35:11,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:35:11,390.390 INFO    ] Initializing speech engine...
[2026-06-22 08:35:11,398.398 INFO    ] 2026-06-22 08:35:11
[2026-06-22 08:35:11,692.692 INFO    ] 2026-06-22 08:35:11
[2026-06-22 08:35:11,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:35:11,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:35:11,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:35:12,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:35:12,114.114 INFO    ] time= 22/06/2026 08:35:12
[2026-06-22 08:35:12,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:35:12,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:35:12,212.212 INFO    ] No existing commands found in stream
[2026-06-22 08:35:17,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:35:17,226.226 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-22 08:35:21,571.571 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:35:21,573.573 INFO    ] Checking for system updates...
[2026-06-22 08:35:21,598.598 INFO    ] 200
[2026-06-22 08:35:21,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:35:21,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:35:21,656.656 INFO    ] No update needed
[2026-06-22 08:35:21,658.658 INFO    ] Checking for camera pi updates...
[2026-06-22 08:35:21,696.696 INFO    ] 200
[2026-06-22 08:35:21,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:35:21,745.745 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:35:21,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:35:21,797.797 INFO    ] No camera update needed
[2026-06-22 08:35:21,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:35:21,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:35:21,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:35:21,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:35:23,853.853 INFO    ] ================================================
[2026-06-22 08:35:23,868.868 INFO    ] Launching Daemon at Mon Jun 22 08:35:23 IST 2026
[2026-06-22 08:35:23,880.880 INFO    ] ================================================
[2026-06-22 08:35:24,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:35:24
[2026-06-22 08:35:25,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:35:25,340.340 INFO    ] Initializing speech engine...
[2026-06-22 08:35:25,349.349 INFO    ] 2026-06-22 08:35:25
[2026-06-22 08:35:25,595.595 INFO    ] 2026-06-22 08:35:25
[2026-06-22 08:35:25,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:35:25,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:35:25,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:35:26,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:35:26,205.205 INFO    ] time= 22/06/2026 08:35:26
[2026-06-22 08:35:26,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:35:26,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:35:26,378.378 INFO    ] No existing commands found in stream
[2026-06-22 08:35:31,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:35:31,407.407 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-22 08:35:34,406.406 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:35:34,409.409 INFO    ] Checking for system updates...
[2026-06-22 08:35:34,445.445 INFO    ] 200
[2026-06-22 08:35:34,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:35:34,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:35:34,504.504 INFO    ] No update needed
[2026-06-22 08:35:34,507.507 INFO    ] Checking for camera pi updates...
[2026-06-22 08:35:34,544.544 INFO    ] 200
[2026-06-22 08:35:34,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:35:34,588.588 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:35:34,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:35:34,670.670 INFO    ] No camera update needed
[2026-06-22 08:35:34,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:35:34,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:35:34,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:35:34,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:35:36,726.726 INFO    ] ================================================
[2026-06-22 08:35:36,742.742 INFO    ] Launching Daemon at Mon Jun 22 08:35:36 IST 2026
[2026-06-22 08:35:36,754.754 INFO    ] ================================================
[2026-06-22 08:35:37,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:35:37
[2026-06-22 08:35:37,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:35:38,206.206 INFO    ] Initializing speech engine...
[2026-06-22 08:35:38,214.214 INFO    ] 2026-06-22 08:35:38
[2026-06-22 08:35:38,468.468 INFO    ] 2026-06-22 08:35:38
[2026-06-22 08:35:38,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:35:38,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:35:38,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:35:38,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:35:38,946.946 INFO    ] time= 22/06/2026 08:35:38
[2026-06-22 08:35:38,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:35:38,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:35:39,094.094 INFO    ] No existing commands found in stream
[2026-06-22 08:35:44,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:35:44,118.118 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-22 08:35:46,977.977 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:35:46,980.980 INFO    ] Checking for system updates...
[2026-06-22 08:35:47,016.016 INFO    ] 200
[2026-06-22 08:35:47,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:35:47,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:35:47,090.090 INFO    ] No update needed
[2026-06-22 08:35:47,093.093 INFO    ] Checking for camera pi updates...
[2026-06-22 08:35:47,134.134 INFO    ] 200
[2026-06-22 08:35:47,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:35:47,190.190 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:35:47,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:35:47,294.294 INFO    ] No camera update needed
[2026-06-22 08:35:47,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:35:47,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:35:47,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:35:47,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:35:49,351.351 INFO    ] ================================================
[2026-06-22 08:35:49,366.366 INFO    ] Launching Daemon at Mon Jun 22 08:35:49 IST 2026
[2026-06-22 08:35:49,377.377 INFO    ] ================================================
[2026-06-22 08:35:49,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:35:49
[2026-06-22 08:35:50,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:35:50,805.805 INFO    ] Initializing speech engine...
[2026-06-22 08:35:50,815.815 INFO    ] 2026-06-22 08:35:50
[2026-06-22 08:35:51,075.075 INFO    ] 2026-06-22 08:35:51
[2026-06-22 08:35:51,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:35:51,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:35:51,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:35:51,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:35:51,531.531 INFO    ] time= 22/06/2026 08:35:51
[2026-06-22 08:35:51,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:35:51,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:35:51,683.683 INFO    ] No existing commands found in stream
[2026-06-22 08:35:56,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:35:56,699.699 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-22 08:35:58,166.166 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:35:58,169.169 INFO    ] Checking for system updates...
[2026-06-22 08:35:58,210.210 INFO    ] 200
[2026-06-22 08:35:58,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:35:58,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:35:58,277.277 INFO    ] No update needed
[2026-06-22 08:35:58,280.280 INFO    ] Checking for camera pi updates...
[2026-06-22 08:35:58,320.320 INFO    ] 200
[2026-06-22 08:35:58,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:35:58,369.369 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:35:58,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:35:58,468.468 INFO    ] No camera update needed
[2026-06-22 08:35:58,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:35:58,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:35:58,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:35:58,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:36:00,528.528 INFO    ] ================================================
[2026-06-22 08:36:00,543.543 INFO    ] Launching Daemon at Mon Jun 22 08:36:00 IST 2026
[2026-06-22 08:36:00,553.553 INFO    ] ================================================
[2026-06-22 08:36:01,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:36:01
[2026-06-22 08:36:01,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:36:02,251.251 INFO    ] Initializing speech engine...
[2026-06-22 08:36:02,265.265 INFO    ] 2026-06-22 08:36:02
[2026-06-22 08:36:02,590.590 INFO    ] 2026-06-22 08:36:02
[2026-06-22 08:36:02,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:36:02,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:36:02,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:36:03,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:36:03,080.080 INFO    ] time= 22/06/2026 08:36:03
[2026-06-22 08:36:03,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:36:03,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:36:03,252.252 INFO    ] No existing commands found in stream
[2026-06-22 08:36:08,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:36:08,294.294 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-22 08:36:10,110.110 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:36:10,113.113 INFO    ] Checking for system updates...
[2026-06-22 08:36:10,165.165 INFO    ] 200
[2026-06-22 08:36:10,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:36:10,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:36:10,244.244 INFO    ] No update needed
[2026-06-22 08:36:10,248.248 INFO    ] Checking for camera pi updates...
[2026-06-22 08:36:10,283.283 INFO    ] 200
[2026-06-22 08:36:10,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:36:10,329.329 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:36:10,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:36:10,516.516 INFO    ] No camera update needed
[2026-06-22 08:36:10,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:36:10,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:36:10,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:36:10,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:36:12,574.574 INFO    ] ================================================
[2026-06-22 08:36:12,590.590 INFO    ] Launching Daemon at Mon Jun 22 08:36:12 IST 2026
[2026-06-22 08:36:12,601.601 INFO    ] ================================================
[2026-06-22 08:36:13,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:36:13
[2026-06-22 08:36:13,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:36:14,016.016 INFO    ] Initializing speech engine...
[2026-06-22 08:36:14,025.025 INFO    ] 2026-06-22 08:36:14
[2026-06-22 08:36:14,270.270 INFO    ] 2026-06-22 08:36:14
[2026-06-22 08:36:14,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:36:14,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:36:14,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:36:14,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:36:14,638.638 INFO    ] time= 22/06/2026 08:36:14
[2026-06-22 08:36:14,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:36:14,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:36:14,833.833 INFO    ] No existing commands found in stream
[2026-06-22 08:36:19,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:36:19,847.847 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-22 08:36:24,257.257 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:36:24,260.260 INFO    ] Checking for system updates...
[2026-06-22 08:36:24,296.296 INFO    ] 200
[2026-06-22 08:36:24,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:36:24,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:36:24,353.353 INFO    ] No update needed
[2026-06-22 08:36:24,356.356 INFO    ] Checking for camera pi updates...
[2026-06-22 08:36:24,389.389 INFO    ] 200
[2026-06-22 08:36:24,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:36:24,432.432 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:36:24,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:36:24,533.533 INFO    ] No camera update needed
[2026-06-22 08:36:24,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:36:24,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:36:24,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:36:24,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:36:26,587.587 INFO    ] ================================================
[2026-06-22 08:36:26,603.603 INFO    ] Launching Daemon at Mon Jun 22 08:36:26 IST 2026
[2026-06-22 08:36:26,613.613 INFO    ] ================================================
[2026-06-22 08:36:27,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:36:27
[2026-06-22 08:36:27,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:36:27,969.969 INFO    ] Initializing speech engine...
[2026-06-22 08:36:27,978.978 INFO    ] 2026-06-22 08:36:27
[2026-06-22 08:36:28,273.273 INFO    ] 2026-06-22 08:36:28
[2026-06-22 08:36:28,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:36:28,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:36:28,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:36:28,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:36:28,764.764 INFO    ] time= 22/06/2026 08:36:28
[2026-06-22 08:36:28,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:36:28,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:36:28,965.965 INFO    ] No existing commands found in stream
[2026-06-22 08:36:33,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:36:33,981.981 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-22 08:36:34,728.728 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:36:34,730.730 INFO    ] Checking for system updates...
[2026-06-22 08:36:34,766.766 INFO    ] 200
[2026-06-22 08:36:34,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:36:34,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:36:34,823.823 INFO    ] No update needed
[2026-06-22 08:36:34,826.826 INFO    ] Checking for camera pi updates...
[2026-06-22 08:36:34,861.861 INFO    ] 200
[2026-06-22 08:36:34,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:36:34,905.905 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:36:35,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:36:35,005.005 INFO    ] No camera update needed
[2026-06-22 08:36:35,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:36:35,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:36:35,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:36:35,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:36:37,069.069 INFO    ] ================================================
[2026-06-22 08:36:37,085.085 INFO    ] Launching Daemon at Mon Jun 22 08:36:37 IST 2026
[2026-06-22 08:36:37,095.095 INFO    ] ================================================
[2026-06-22 08:36:37,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:36:37
[2026-06-22 08:36:38,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:36:38,489.489 INFO    ] Initializing speech engine...
[2026-06-22 08:36:38,497.497 INFO    ] 2026-06-22 08:36:38
[2026-06-22 08:36:38,769.769 INFO    ] 2026-06-22 08:36:38
[2026-06-22 08:36:38,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:36:39,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:36:39,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:36:39,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:36:39,300.300 INFO    ] time= 22/06/2026 08:36:39
[2026-06-22 08:36:39,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:36:39,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:36:39,455.455 INFO    ] No existing commands found in stream
[2026-06-22 08:36:44,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:36:44,472.472 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-22 08:36:45,530.530 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:36:45,532.532 INFO    ] Checking for system updates...
[2026-06-22 08:36:45,570.570 INFO    ] 200
[2026-06-22 08:36:45,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:36:45,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:36:45,630.630 INFO    ] No update needed
[2026-06-22 08:36:45,633.633 INFO    ] Checking for camera pi updates...
[2026-06-22 08:36:45,668.668 INFO    ] 200
[2026-06-22 08:36:45,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:36:45,712.712 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:36:45,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:36:45,797.797 INFO    ] No camera update needed
[2026-06-22 08:36:45,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:36:45,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:36:45,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:36:45,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:36:47,852.852 INFO    ] ================================================
[2026-06-22 08:36:47,867.867 INFO    ] Launching Daemon at Mon Jun 22 08:36:47 IST 2026
[2026-06-22 08:36:47,878.878 INFO    ] ================================================
[2026-06-22 08:36:48,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:36:48
[2026-06-22 08:36:49,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:36:49,310.310 INFO    ] Initializing speech engine...
[2026-06-22 08:36:49,319.319 INFO    ] 2026-06-22 08:36:49
[2026-06-22 08:36:49,562.562 INFO    ] 2026-06-22 08:36:49
[2026-06-22 08:36:49,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:36:49,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:36:49,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:36:49,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:36:49,999.999 INFO    ] time= 22/06/2026 08:36:49
[2026-06-22 08:36:50,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:36:50,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:36:50,273.273 INFO    ] No existing commands found in stream
[2026-06-22 08:36:55,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:36:55,290.290 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-22 08:36:58,166.166 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:36:58,169.169 INFO    ] Checking for system updates...
[2026-06-22 08:36:58,206.206 INFO    ] 200
[2026-06-22 08:36:58,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:36:58,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:36:58,263.263 INFO    ] No update needed
[2026-06-22 08:36:58,265.265 INFO    ] Checking for camera pi updates...
[2026-06-22 08:36:58,300.300 INFO    ] 200
[2026-06-22 08:36:58,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:36:58,348.348 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:36:58,408.408 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:36:58,411.411 INFO    ] No camera update needed
[2026-06-22 08:36:58,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:36:58,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:36:58,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:36:58,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:37:00,467.467 INFO    ] ================================================
[2026-06-22 08:37:00,483.483 INFO    ] Launching Daemon at Mon Jun 22 08:37:00 IST 2026
[2026-06-22 08:37:00,494.494 INFO    ] ================================================
[2026-06-22 08:37:01,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:37:01
[2026-06-22 08:37:01,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:37:02,171.171 INFO    ] Initializing speech engine...
[2026-06-22 08:37:02,184.184 INFO    ] 2026-06-22 08:37:02
[2026-06-22 08:37:02,490.490 INFO    ] 2026-06-22 08:37:02
[2026-06-22 08:37:02,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:37:02,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:37:02,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:37:03,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:37:03,065.065 INFO    ] time= 22/06/2026 08:37:03
[2026-06-22 08:37:03,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:37:03,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:37:03,258.258 INFO    ] No existing commands found in stream
[2026-06-22 08:37:08,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:37:08,289.289 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-22 08:37:10,138.138 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:37:10,141.141 INFO    ] Checking for system updates...
[2026-06-22 08:37:10,178.178 INFO    ] 200
[2026-06-22 08:37:10,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:37:10,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:37:10,253.253 INFO    ] No update needed
[2026-06-22 08:37:10,256.256 INFO    ] Checking for camera pi updates...
[2026-06-22 08:37:10,289.289 INFO    ] 200
[2026-06-22 08:37:10,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:37:10,337.337 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:37:10,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:37:10,413.413 INFO    ] No camera update needed
[2026-06-22 08:37:10,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:37:10,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:37:10,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:37:10,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:37:12,470.470 INFO    ] ================================================
[2026-06-22 08:37:12,485.485 INFO    ] Launching Daemon at Mon Jun 22 08:37:12 IST 2026
[2026-06-22 08:37:12,496.496 INFO    ] ================================================
[2026-06-22 08:37:12,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:37:12
[2026-06-22 08:37:13,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:37:13,847.847 INFO    ] Initializing speech engine...
[2026-06-22 08:37:13,856.856 INFO    ] 2026-06-22 08:37:13
[2026-06-22 08:37:14,139.139 INFO    ] 2026-06-22 08:37:14
[2026-06-22 08:37:14,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:37:14,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:37:14,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:37:14,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:37:15,050.050 INFO    ] time= 22/06/2026 08:37:14
[2026-06-22 08:37:15,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:37:15,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:37:15,241.241 INFO    ] No existing commands found in stream
[2026-06-22 08:37:20,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:37:20,258.258 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-22 08:37:24,581.581 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:37:24,582.582 INFO    ] Checking for system updates...
[2026-06-22 08:37:24,603.603 INFO    ] 200
[2026-06-22 08:37:24,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:37:24,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:37:24,638.638 INFO    ] No update needed
[2026-06-22 08:37:24,639.639 INFO    ] Checking for camera pi updates...
[2026-06-22 08:37:24,658.658 INFO    ] 200
[2026-06-22 08:37:24,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:37:24,686.686 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:37:24,773.773 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:37:24,776.776 INFO    ] No camera update needed
[2026-06-22 08:37:24,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:37:24,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:37:24,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:37:24,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:37:26,835.835 INFO    ] ================================================
[2026-06-22 08:37:26,851.851 INFO    ] Launching Daemon at Mon Jun 22 08:37:26 IST 2026
[2026-06-22 08:37:26,862.862 INFO    ] ================================================
[2026-06-22 08:37:27,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:37:27
[2026-06-22 08:37:28,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:37:28,317.317 INFO    ] Initializing speech engine...
[2026-06-22 08:37:28,327.327 INFO    ] 2026-06-22 08:37:28
[2026-06-22 08:37:28,575.575 INFO    ] 2026-06-22 08:37:28
[2026-06-22 08:37:28,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:37:28,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:37:28,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:37:29,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:37:29,072.072 INFO    ] time= 22/06/2026 08:37:29
[2026-06-22 08:37:29,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:37:29,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:37:29,236.236 INFO    ] No existing commands found in stream
[2026-06-22 08:37:34,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:37:34,275.275 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-22 08:37:34,899.899 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:37:34,902.902 INFO    ] Checking for system updates...
[2026-06-22 08:37:34,943.943 INFO    ] 200
[2026-06-22 08:37:34,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:37:35,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:37:35,005.005 INFO    ] No update needed
[2026-06-22 08:37:35,008.008 INFO    ] Checking for camera pi updates...
[2026-06-22 08:37:35,044.044 INFO    ] 200
[2026-06-22 08:37:35,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:37:35,097.097 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:37:35,205.205 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:37:35,208.208 INFO    ] No camera update needed
[2026-06-22 08:37:35,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:37:35,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:37:35,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:37:35,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:37:37,272.272 INFO    ] ================================================
[2026-06-22 08:37:37,289.289 INFO    ] Launching Daemon at Mon Jun 22 08:37:37 IST 2026
[2026-06-22 08:37:37,301.301 INFO    ] ================================================
[2026-06-22 08:37:37,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:37:37
[2026-06-22 08:37:38,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:37:38,845.845 INFO    ] Initializing speech engine...
[2026-06-22 08:37:38,855.855 INFO    ] 2026-06-22 08:37:38
[2026-06-22 08:37:39,121.121 INFO    ] 2026-06-22 08:37:39
[2026-06-22 08:37:39,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:37:39,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:37:39,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:37:39,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:37:39,529.529 INFO    ] time= 22/06/2026 08:37:39
[2026-06-22 08:37:39,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:37:39,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:37:39,615.615 INFO    ] No existing commands found in stream
[2026-06-22 08:37:44,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:37:44,653.653 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-22 08:37:46,508.508 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:37:46,510.510 INFO    ] Checking for system updates...
[2026-06-22 08:37:46,531.531 INFO    ] 200
[2026-06-22 08:37:46,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:37:46,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:37:46,564.564 INFO    ] No update needed
[2026-06-22 08:37:46,566.566 INFO    ] Checking for camera pi updates...
[2026-06-22 08:37:46,590.590 INFO    ] 200
[2026-06-22 08:37:46,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:37:46,637.637 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:37:46,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:37:46,721.721 INFO    ] No camera update needed
[2026-06-22 08:37:46,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:37:46,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:37:46,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:37:46,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:37:48,778.778 INFO    ] ================================================
[2026-06-22 08:37:48,794.794 INFO    ] Launching Daemon at Mon Jun 22 08:37:48 IST 2026
[2026-06-22 08:37:48,805.805 INFO    ] ================================================
[2026-06-22 08:37:49,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:37:49
[2026-06-22 08:37:49,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:37:50,128.128 INFO    ] Initializing speech engine...
[2026-06-22 08:37:50,151.151 INFO    ] 2026-06-22 08:37:50
[2026-06-22 08:37:50,407.407 INFO    ] 2026-06-22 08:37:50
[2026-06-22 08:37:50,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:37:50,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:37:50,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:37:50,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:37:50,892.892 INFO    ] time= 22/06/2026 08:37:50
[2026-06-22 08:37:50,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:37:50,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:37:51,124.124 INFO    ] No existing commands found in stream
[2026-06-22 08:37:56,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:37:56,149.149 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-22 08:37:59,709.709 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:37:59,712.712 INFO    ] Checking for system updates...
[2026-06-22 08:37:59,749.749 INFO    ] 200
[2026-06-22 08:37:59,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:37:59,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:37:59,813.813 INFO    ] No update needed
[2026-06-22 08:37:59,815.815 INFO    ] Checking for camera pi updates...
[2026-06-22 08:37:59,850.850 INFO    ] 200
[2026-06-22 08:37:59,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:37:59,895.895 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:37:59,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:37:59,995.995 INFO    ] No camera update needed
[2026-06-22 08:37:59,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:38:00,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:38:00,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:38:00,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:38:02,057.057 INFO    ] ================================================
[2026-06-22 08:38:02,074.074 INFO    ] Launching Daemon at Mon Jun 22 08:38:02 IST 2026
[2026-06-22 08:38:02,090.090 INFO    ] ================================================
[2026-06-22 08:38:02,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:38:02
[2026-06-22 08:38:03,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:38:03,675.675 INFO    ] Initializing speech engine...
[2026-06-22 08:38:03,685.685 INFO    ] 2026-06-22 08:38:03
[2026-06-22 08:38:03,938.938 INFO    ] 2026-06-22 08:38:03
[2026-06-22 08:38:03,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:38:04,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:38:04,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:38:04,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:38:04,307.307 INFO    ] time= 22/06/2026 08:38:04
[2026-06-22 08:38:04,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:38:04,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:38:04,391.391 INFO    ] No existing commands found in stream
[2026-06-22 08:38:09,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:38:09,403.403 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-22 08:38:13,741.741 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:38:13,743.743 INFO    ] Checking for system updates...
[2026-06-22 08:38:13,780.780 INFO    ] 200
[2026-06-22 08:38:13,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:38:13,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:38:13,845.845 INFO    ] No update needed
[2026-06-22 08:38:13,848.848 INFO    ] Checking for camera pi updates...
[2026-06-22 08:38:13,884.884 INFO    ] 200
[2026-06-22 08:38:13,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:38:13,929.929 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:38:14,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:38:14,112.112 INFO    ] No camera update needed
[2026-06-22 08:38:14,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:38:14,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:38:14,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:38:14,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:38:16,172.172 INFO    ] ================================================
[2026-06-22 08:38:16,188.188 INFO    ] Launching Daemon at Mon Jun 22 08:38:16 IST 2026
[2026-06-22 08:38:16,199.199 INFO    ] ================================================
[2026-06-22 08:38:16,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:38:16
[2026-06-22 08:38:17,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:38:17,662.662 INFO    ] Initializing speech engine...
[2026-06-22 08:38:17,669.669 INFO    ] 2026-06-22 08:38:17
[2026-06-22 08:38:17,928.928 INFO    ] 2026-06-22 08:38:17
[2026-06-22 08:38:17,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:38:18,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:38:18,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:38:18,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:38:18,413.413 INFO    ] time= 22/06/2026 08:38:18
[2026-06-22 08:38:18,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:38:18,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:38:18,567.567 INFO    ] No existing commands found in stream
[2026-06-22 08:38:23,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:38:23,607.607 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-22 08:38:25,682.682 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:38:25,686.686 INFO    ] Checking for system updates...
[2026-06-22 08:38:25,726.726 INFO    ] 200
[2026-06-22 08:38:25,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:38:25,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:38:25,790.790 INFO    ] No update needed
[2026-06-22 08:38:25,793.793 INFO    ] Checking for camera pi updates...
[2026-06-22 08:38:25,832.832 INFO    ] 200
[2026-06-22 08:38:25,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:38:25,880.880 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:38:25,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:38:25,985.985 INFO    ] No camera update needed
[2026-06-22 08:38:25,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:38:25,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:38:25,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:38:26,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:38:28,043.043 INFO    ] ================================================
[2026-06-22 08:38:28,058.058 INFO    ] Launching Daemon at Mon Jun 22 08:38:28 IST 2026
[2026-06-22 08:38:28,069.069 INFO    ] ================================================
[2026-06-22 08:38:28,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:38:28
[2026-06-22 08:38:29,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:38:29,565.565 INFO    ] Initializing speech engine...
[2026-06-22 08:38:29,572.572 INFO    ] 2026-06-22 08:38:29
[2026-06-22 08:38:29,821.821 INFO    ] 2026-06-22 08:38:29
[2026-06-22 08:38:29,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:38:30,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:38:30,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:38:30,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:38:30,336.336 INFO    ] time= 22/06/2026 08:38:30
[2026-06-22 08:38:30,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:38:30,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:38:30,528.528 INFO    ] No existing commands found in stream
[2026-06-22 08:38:35,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:38:35,551.551 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-22 08:38:38,092.092 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:38:38,094.094 INFO    ] Checking for system updates...
[2026-06-22 08:38:38,131.131 INFO    ] 200
[2026-06-22 08:38:38,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:38:38,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:38:38,188.188 INFO    ] No update needed
[2026-06-22 08:38:38,191.191 INFO    ] Checking for camera pi updates...
[2026-06-22 08:38:38,226.226 INFO    ] 200
[2026-06-22 08:38:38,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:38:38,274.274 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:38:38,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:38:38,327.327 INFO    ] No camera update needed
[2026-06-22 08:38:38,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:38:38,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:38:38,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:38:38,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:38:40,384.384 INFO    ] ================================================
[2026-06-22 08:38:40,400.400 INFO    ] Launching Daemon at Mon Jun 22 08:38:40 IST 2026
[2026-06-22 08:38:40,419.419 INFO    ] ================================================
[2026-06-22 08:38:41,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:38:41
[2026-06-22 08:38:41,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:38:41,846.846 INFO    ] Initializing speech engine...
[2026-06-22 08:38:41,869.869 INFO    ] 2026-06-22 08:38:41
[2026-06-22 08:38:42,125.125 INFO    ] 2026-06-22 08:38:42
[2026-06-22 08:38:42,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:38:42,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:38:42,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:38:42,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:38:42,609.609 INFO    ] time= 22/06/2026 08:38:42
[2026-06-22 08:38:42,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:38:42,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:38:42,842.842 INFO    ] No existing commands found in stream
[2026-06-22 08:38:47,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:38:47,868.868 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-22 08:38:51,399.399 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:38:51,403.403 INFO    ] Checking for system updates...
[2026-06-22 08:38:51,444.444 INFO    ] 200
[2026-06-22 08:38:51,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:38:51,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:38:51,509.509 INFO    ] No update needed
[2026-06-22 08:38:51,512.512 INFO    ] Checking for camera pi updates...
[2026-06-22 08:38:51,546.546 INFO    ] 200
[2026-06-22 08:38:51,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:38:51,597.597 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:38:51,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:38:51,705.705 INFO    ] No camera update needed
[2026-06-22 08:38:51,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:38:51,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:38:51,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:38:51,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:38:53,764.764 INFO    ] ================================================
[2026-06-22 08:38:53,780.780 INFO    ] Launching Daemon at Mon Jun 22 08:38:53 IST 2026
[2026-06-22 08:38:53,791.791 INFO    ] ================================================
[2026-06-22 08:38:54,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:38:54
[2026-06-22 08:38:55,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:38:55,297.297 INFO    ] Initializing speech engine...
[2026-06-22 08:38:55,303.303 INFO    ] 2026-06-22 08:38:55
[2026-06-22 08:38:55,555.555 INFO    ] 2026-06-22 08:38:55
[2026-06-22 08:38:55,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:38:55,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:38:55,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:38:55,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:38:56,001.001 INFO    ] time= 22/06/2026 08:38:55
[2026-06-22 08:38:56,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:38:56,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:38:56,245.245 INFO    ] No existing commands found in stream
[2026-06-22 08:39:01,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:39:01,275.275 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-22 08:39:04,356.356 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:39:04,359.359 INFO    ] Checking for system updates...
[2026-06-22 08:39:04,399.399 INFO    ] 200
[2026-06-22 08:39:04,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:39:04,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:39:04,472.472 INFO    ] No update needed
[2026-06-22 08:39:04,475.475 INFO    ] Checking for camera pi updates...
[2026-06-22 08:39:04,508.508 INFO    ] 200
[2026-06-22 08:39:04,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:39:04,553.553 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:39:04,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:39:04,650.650 INFO    ] No camera update needed
[2026-06-22 08:39:04,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:39:04,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:39:04,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:39:04,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:39:06,711.711 INFO    ] ================================================
[2026-06-22 08:39:06,727.727 INFO    ] Launching Daemon at Mon Jun 22 08:39:06 IST 2026
[2026-06-22 08:39:06,738.738 INFO    ] ================================================
[2026-06-22 08:39:07,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:39:07
[2026-06-22 08:39:07,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:39:08,185.185 INFO    ] Initializing speech engine...
[2026-06-22 08:39:08,194.194 INFO    ] 2026-06-22 08:39:08
[2026-06-22 08:39:08,452.452 INFO    ] 2026-06-22 08:39:08
[2026-06-22 08:39:08,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:39:08,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:39:08,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:39:08,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:39:08,909.909 INFO    ] time= 22/06/2026 08:39:08
[2026-06-22 08:39:08,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:39:09,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:39:09,135.135 INFO    ] No existing commands found in stream
[2026-06-22 08:39:14,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:39:14,160.160 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-22 08:39:15,308.308 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:39:15,311.311 INFO    ] Checking for system updates...
[2026-06-22 08:39:15,354.354 INFO    ] 200
[2026-06-22 08:39:15,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:39:15,415.415 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:39:15,417.417 INFO    ] No update needed
[2026-06-22 08:39:15,420.420 INFO    ] Checking for camera pi updates...
[2026-06-22 08:39:15,456.456 INFO    ] 200
[2026-06-22 08:39:15,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:39:15,501.501 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:39:15,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:39:15,583.583 INFO    ] No camera update needed
[2026-06-22 08:39:15,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:39:15,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:39:15,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:39:15,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:39:17,641.641 INFO    ] ================================================
[2026-06-22 08:39:17,657.657 INFO    ] Launching Daemon at Mon Jun 22 08:39:17 IST 2026
[2026-06-22 08:39:17,668.668 INFO    ] ================================================
[2026-06-22 08:39:18,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:39:18
[2026-06-22 08:39:18,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:39:19,161.161 INFO    ] Initializing speech engine...
[2026-06-22 08:39:19,170.170 INFO    ] 2026-06-22 08:39:19
[2026-06-22 08:39:19,466.466 INFO    ] 2026-06-22 08:39:19
[2026-06-22 08:39:19,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:39:19,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:39:19,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:39:19,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:39:19,884.884 INFO    ] time= 22/06/2026 08:39:19
[2026-06-22 08:39:19,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:39:19,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:39:19,977.977 INFO    ] No existing commands found in stream
[2026-06-22 08:39:25,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:39:25,015.015 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-22 08:39:29,169.169 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:39:29,172.172 INFO    ] Checking for system updates...
[2026-06-22 08:39:29,213.213 INFO    ] 200
[2026-06-22 08:39:29,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:39:29,271.271 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:39:29,274.274 INFO    ] No update needed
[2026-06-22 08:39:29,277.277 INFO    ] Checking for camera pi updates...
[2026-06-22 08:39:29,316.316 INFO    ] 200
[2026-06-22 08:39:29,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:39:29,367.367 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:39:29,448.448 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:39:29,451.451 INFO    ] No camera update needed
[2026-06-22 08:39:29,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:39:29,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:39:29,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:39:29,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:39:31,506.506 INFO    ] ================================================
[2026-06-22 08:39:31,522.522 INFO    ] Launching Daemon at Mon Jun 22 08:39:31 IST 2026
[2026-06-22 08:39:31,533.533 INFO    ] ================================================
[2026-06-22 08:39:32,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:39:32
[2026-06-22 08:39:32,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:39:32,979.979 INFO    ] Initializing speech engine...
[2026-06-22 08:39:33,004.004 INFO    ] 2026-06-22 08:39:32
[2026-06-22 08:39:33,284.284 INFO    ] 2026-06-22 08:39:33
[2026-06-22 08:39:33,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:39:33,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:39:33,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:39:33,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:39:33,879.879 INFO    ] time= 22/06/2026 08:39:33
[2026-06-22 08:39:33,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:39:33,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:39:34,090.090 INFO    ] No existing commands found in stream
[2026-06-22 08:39:39,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:39:39,124.124 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-22 08:39:41,451.451 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:39:41,454.454 INFO    ] Checking for system updates...
[2026-06-22 08:39:41,493.493 INFO    ] 200
[2026-06-22 08:39:41,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:39:41,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:39:41,552.552 INFO    ] No update needed
[2026-06-22 08:39:41,555.555 INFO    ] Checking for camera pi updates...
[2026-06-22 08:39:41,594.594 INFO    ] 200
[2026-06-22 08:39:41,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:39:41,643.643 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:39:41,738.738 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:39:41,741.741 INFO    ] No camera update needed
[2026-06-22 08:39:41,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:39:41,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:39:41,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:39:41,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:39:43,804.804 INFO    ] ================================================
[2026-06-22 08:39:43,819.819 INFO    ] Launching Daemon at Mon Jun 22 08:39:43 IST 2026
[2026-06-22 08:39:43,830.830 INFO    ] ================================================
[2026-06-22 08:39:44,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:39:44
[2026-06-22 08:39:44,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:39:45,190.190 INFO    ] Initializing speech engine...
[2026-06-22 08:39:45,204.204 INFO    ] 2026-06-22 08:39:45
[2026-06-22 08:39:45,460.460 INFO    ] 2026-06-22 08:39:45
[2026-06-22 08:39:45,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:39:45,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:39:45,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:39:45,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:39:45,945.945 INFO    ] time= 22/06/2026 08:39:45
[2026-06-22 08:39:46,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:39:46,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:39:46,165.165 INFO    ] No existing commands found in stream
[2026-06-22 08:39:51,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:39:51,192.192 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-22 08:39:52,979.979 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:39:52,982.982 INFO    ] Checking for system updates...
[2026-06-22 08:39:53,018.018 INFO    ] 200
[2026-06-22 08:39:53,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:39:53,080.080 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:39:53,082.082 INFO    ] No update needed
[2026-06-22 08:39:53,085.085 INFO    ] Checking for camera pi updates...
[2026-06-22 08:39:53,122.122 INFO    ] 200
[2026-06-22 08:39:53,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:39:53,166.166 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:39:53,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:39:53,253.253 INFO    ] No camera update needed
[2026-06-22 08:39:53,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:39:53,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:39:53,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:39:53,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:39:55,310.310 INFO    ] ================================================
[2026-06-22 08:39:55,326.326 INFO    ] Launching Daemon at Mon Jun 22 08:39:55 IST 2026
[2026-06-22 08:39:55,338.338 INFO    ] ================================================
[2026-06-22 08:39:55,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:39:55
[2026-06-22 08:39:56,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:39:56,713.713 INFO    ] Initializing speech engine...
[2026-06-22 08:39:56,727.727 INFO    ] 2026-06-22 08:39:56
[2026-06-22 08:39:56,989.989 INFO    ] 2026-06-22 08:39:56
[2026-06-22 08:39:57,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:39:57,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:39:57,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:39:57,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:39:57,463.463 INFO    ] time= 22/06/2026 08:39:57
[2026-06-22 08:39:57,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:39:57,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:39:57,676.676 INFO    ] No existing commands found in stream
[2026-06-22 08:40:02,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:40:02,706.706 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-22 08:40:07,889.889 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:40:07,892.892 INFO    ] Checking for system updates...
[2026-06-22 08:40:07,931.931 INFO    ] 200
[2026-06-22 08:40:07,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:40:07,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:40:07,993.993 INFO    ] No update needed
[2026-06-22 08:40:07,995.995 INFO    ] Checking for camera pi updates...
[2026-06-22 08:40:08,024.024 INFO    ] 200
[2026-06-22 08:40:08,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:40:08,061.061 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:40:08,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:40:08,165.165 INFO    ] No camera update needed
[2026-06-22 08:40:08,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:40:08,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:40:08,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:40:08,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:40:10,224.224 INFO    ] ================================================
[2026-06-22 08:40:10,241.241 INFO    ] Launching Daemon at Mon Jun 22 08:40:10 IST 2026
[2026-06-22 08:40:10,252.252 INFO    ] ================================================
[2026-06-22 08:40:10,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:40:10
[2026-06-22 08:40:11,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:40:11,715.715 INFO    ] Initializing speech engine...
[2026-06-22 08:40:11,721.721 INFO    ] 2026-06-22 08:40:11
[2026-06-22 08:40:12,005.005 INFO    ] 2026-06-22 08:40:11
[2026-06-22 08:40:12,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:40:12,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:40:12,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:40:12,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:40:12,540.540 INFO    ] time= 22/06/2026 08:40:12
[2026-06-22 08:40:12,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:40:12,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:40:12,676.676 INFO    ] No existing commands found in stream
[2026-06-22 08:40:17,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:40:17,708.708 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-22 08:40:20,484.484 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:40:20,486.486 INFO    ] Checking for system updates...
[2026-06-22 08:40:20,506.506 INFO    ] 200
[2026-06-22 08:40:20,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:40:20,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:40:20,540.540 INFO    ] No update needed
[2026-06-22 08:40:20,541.541 INFO    ] Checking for camera pi updates...
[2026-06-22 08:40:20,575.575 INFO    ] 200
[2026-06-22 08:40:20,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:40:20,621.621 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:40:20,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:40:20,773.773 INFO    ] No camera update needed
[2026-06-22 08:40:20,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:40:20,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:40:20,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:40:20,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:40:22,829.829 INFO    ] ================================================
[2026-06-22 08:40:22,844.844 INFO    ] Launching Daemon at Mon Jun 22 08:40:22 IST 2026
[2026-06-22 08:40:22,856.856 INFO    ] ================================================
[2026-06-22 08:40:23,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:40:23
[2026-06-22 08:40:23,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:40:24,249.249 INFO    ] Initializing speech engine...
[2026-06-22 08:40:24,257.257 INFO    ] 2026-06-22 08:40:24
[2026-06-22 08:40:24,546.546 INFO    ] 2026-06-22 08:40:24
[2026-06-22 08:40:24,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:40:24,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:40:24,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:40:25,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:40:25,078.078 INFO    ] time= 22/06/2026 08:40:25
[2026-06-22 08:40:25,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:40:25,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:40:25,235.235 INFO    ] No existing commands found in stream
[2026-06-22 08:40:30,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:40:30,278.278 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-22 08:40:31,033.033 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:40:31,035.035 INFO    ] Checking for system updates...
[2026-06-22 08:40:31,056.056 INFO    ] 200
[2026-06-22 08:40:31,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:40:31,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:40:31,091.091 INFO    ] No update needed
[2026-06-22 08:40:31,092.092 INFO    ] Checking for camera pi updates...
[2026-06-22 08:40:31,112.112 INFO    ] 200
[2026-06-22 08:40:31,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:40:31,144.144 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:40:31,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:40:31,228.228 INFO    ] No camera update needed
[2026-06-22 08:40:31,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:40:31,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:40:31,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:40:31,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:40:33,287.287 INFO    ] ================================================
[2026-06-22 08:40:33,303.303 INFO    ] Launching Daemon at Mon Jun 22 08:40:33 IST 2026
[2026-06-22 08:40:33,314.314 INFO    ] ================================================
[2026-06-22 08:40:33,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:40:33
[2026-06-22 08:40:34,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:40:34,791.791 INFO    ] Initializing speech engine...
[2026-06-22 08:40:34,798.798 INFO    ] 2026-06-22 08:40:34
[2026-06-22 08:40:35,080.080 INFO    ] 2026-06-22 08:40:35
[2026-06-22 08:40:35,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:40:35,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:40:35,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:40:35,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:40:35,556.556 INFO    ] time= 22/06/2026 08:40:35
[2026-06-22 08:40:35,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:40:35,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:40:35,677.677 INFO    ] No existing commands found in stream
[2026-06-22 08:40:40,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:40:40,710.710 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-22 08:40:41,340.340 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:40:41,343.343 INFO    ] Checking for system updates...
[2026-06-22 08:40:41,381.381 INFO    ] 200
[2026-06-22 08:40:41,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:40:41,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:40:41,447.447 INFO    ] No update needed
[2026-06-22 08:40:41,450.450 INFO    ] Checking for camera pi updates...
[2026-06-22 08:40:41,485.485 INFO    ] 200
[2026-06-22 08:40:41,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:40:41,533.533 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:40:41,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:40:41,615.615 INFO    ] No camera update needed
[2026-06-22 08:40:41,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:40:41,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:40:41,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:40:41,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:40:43,670.670 INFO    ] ================================================
[2026-06-22 08:40:43,686.686 INFO    ] Launching Daemon at Mon Jun 22 08:40:43 IST 2026
[2026-06-22 08:40:43,697.697 INFO    ] ================================================
[2026-06-22 08:40:44,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:40:44
[2026-06-22 08:40:44,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:40:45,195.195 INFO    ] Initializing speech engine...
[2026-06-22 08:40:45,203.203 INFO    ] 2026-06-22 08:40:45
[2026-06-22 08:40:45,479.479 INFO    ] 2026-06-22 08:40:45
[2026-06-22 08:40:45,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:40:45,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:40:45,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:40:45,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:40:45,981.981 INFO    ] time= 22/06/2026 08:40:45
[2026-06-22 08:40:46,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:40:46,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:40:46,191.191 INFO    ] No existing commands found in stream
[2026-06-22 08:40:51,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:40:51,211.211 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-22 08:40:55,484.484 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:40:55,486.486 INFO    ] Checking for system updates...
[2026-06-22 08:40:55,508.508 INFO    ] 200
[2026-06-22 08:40:55,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:40:55,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:40:55,544.544 INFO    ] No update needed
[2026-06-22 08:40:55,546.546 INFO    ] Checking for camera pi updates...
[2026-06-22 08:40:55,576.576 INFO    ] 200
[2026-06-22 08:40:55,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:40:55,625.625 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:40:55,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:40:55,689.689 INFO    ] No camera update needed
[2026-06-22 08:40:55,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:40:55,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:40:55,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:40:55,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:40:57,746.746 INFO    ] ================================================
[2026-06-22 08:40:57,762.762 INFO    ] Launching Daemon at Mon Jun 22 08:40:57 IST 2026
[2026-06-22 08:40:57,773.773 INFO    ] ================================================
[2026-06-22 08:40:58,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:40:58
[2026-06-22 08:40:58,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:40:59,218.218 INFO    ] Initializing speech engine...
[2026-06-22 08:40:59,240.240 INFO    ] 2026-06-22 08:40:59
[2026-06-22 08:40:59,495.495 INFO    ] 2026-06-22 08:40:59
[2026-06-22 08:40:59,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:40:59,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:40:59,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:41:00,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:41:00,071.071 INFO    ] time= 22/06/2026 08:41:00
[2026-06-22 08:41:00,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:41:00,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:41:00,229.229 INFO    ] No existing commands found in stream
[2026-06-22 08:41:05,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:41:05,251.251 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-22 08:41:05,966.966 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:41:05,967.967 INFO    ] Checking for system updates...
[2026-06-22 08:41:05,988.988 INFO    ] 200
[2026-06-22 08:41:05,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:41:06,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:41:06,020.020 INFO    ] No update needed
[2026-06-22 08:41:06,022.022 INFO    ] Checking for camera pi updates...
[2026-06-22 08:41:06,041.041 INFO    ] 200
[2026-06-22 08:41:06,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:41:06,082.082 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:41:06,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:41:06,140.140 INFO    ] No camera update needed
[2026-06-22 08:41:06,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:41:06,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:41:06,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:41:06,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:41:08,196.196 INFO    ] ================================================
[2026-06-22 08:41:08,212.212 INFO    ] Launching Daemon at Mon Jun 22 08:41:08 IST 2026
[2026-06-22 08:41:08,222.222 INFO    ] ================================================
[2026-06-22 08:41:08,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:41:08
[2026-06-22 08:41:09,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:41:09,875.875 INFO    ] Initializing speech engine...
[2026-06-22 08:41:09,886.886 INFO    ] 2026-06-22 08:41:09
[2026-06-22 08:41:10,170.170 INFO    ] 2026-06-22 08:41:10
[2026-06-22 08:41:10,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:41:10,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:41:10,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:41:10,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:41:10,645.645 INFO    ] time= 22/06/2026 08:41:10
[2026-06-22 08:41:10,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:41:10,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:41:10,791.791 INFO    ] No existing commands found in stream
[2026-06-22 08:41:15,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:41:15,817.817 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-22 08:41:18,633.633 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:41:18,636.636 INFO    ] Checking for system updates...
[2026-06-22 08:41:18,675.675 INFO    ] 200
[2026-06-22 08:41:18,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:41:18,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:41:18,735.735 INFO    ] No update needed
[2026-06-22 08:41:18,738.738 INFO    ] Checking for camera pi updates...
[2026-06-22 08:41:18,776.776 INFO    ] 200
[2026-06-22 08:41:18,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:41:18,825.825 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:41:18,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:41:18,876.876 INFO    ] No camera update needed
[2026-06-22 08:41:18,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:41:18,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:41:18,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:41:18,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:41:20,931.931 INFO    ] ================================================
[2026-06-22 08:41:20,946.946 INFO    ] Launching Daemon at Mon Jun 22 08:41:20 IST 2026
[2026-06-22 08:41:20,957.957 INFO    ] ================================================
[2026-06-22 08:41:21,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:41:21
[2026-06-22 08:41:22,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:41:22,501.501 INFO    ] Initializing speech engine...
[2026-06-22 08:41:22,516.516 INFO    ] 2026-06-22 08:41:22
[2026-06-22 08:41:22,846.846 INFO    ] 2026-06-22 08:41:22
[2026-06-22 08:41:22,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:41:23,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:41:23,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:41:23,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:41:23,299.299 INFO    ] time= 22/06/2026 08:41:23
[2026-06-22 08:41:23,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:41:23,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:41:23,484.484 INFO    ] No existing commands found in stream
[2026-06-22 08:41:28,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:41:28,500.500 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-22 08:41:28,939.939 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:41:28,942.942 INFO    ] Checking for system updates...
[2026-06-22 08:41:28,978.978 INFO    ] 200
[2026-06-22 08:41:28,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:41:29,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:41:29,036.036 INFO    ] No update needed
[2026-06-22 08:41:29,039.039 INFO    ] Checking for camera pi updates...
[2026-06-22 08:41:29,076.076 INFO    ] 200
[2026-06-22 08:41:29,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:41:29,124.124 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:41:29,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:41:29,185.185 INFO    ] No camera update needed
[2026-06-22 08:41:29,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:41:29,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:41:29,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:41:29,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:41:31,240.240 INFO    ] ================================================
[2026-06-22 08:41:31,255.255 INFO    ] Launching Daemon at Mon Jun 22 08:41:31 IST 2026
[2026-06-22 08:41:31,266.266 INFO    ] ================================================
[2026-06-22 08:41:31,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:41:31
[2026-06-22 08:41:32,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:41:32,870.870 INFO    ] Initializing speech engine...
[2026-06-22 08:41:32,880.880 INFO    ] 2026-06-22 08:41:32
[2026-06-22 08:41:33,168.168 INFO    ] 2026-06-22 08:41:33
[2026-06-22 08:41:33,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:41:33,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:41:33,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:41:33,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:41:33,687.687 INFO    ] time= 22/06/2026 08:41:33
[2026-06-22 08:41:33,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:41:33,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:41:33,890.890 INFO    ] No existing commands found in stream
[2026-06-22 08:41:38,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:41:38,906.906 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-22 08:41:40,928.928 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:41:40,931.931 INFO    ] Checking for system updates...
[2026-06-22 08:41:40,967.967 INFO    ] 200
[2026-06-22 08:41:40,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:41:41,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:41:41,025.025 INFO    ] No update needed
[2026-06-22 08:41:41,027.027 INFO    ] Checking for camera pi updates...
[2026-06-22 08:41:41,061.061 INFO    ] 200
[2026-06-22 08:41:41,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:41:41,105.105 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:41:41,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:41:41,158.158 INFO    ] No camera update needed
[2026-06-22 08:41:41,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:41:41,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:41:41,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:41:41,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:41:43,218.218 INFO    ] ================================================
[2026-06-22 08:41:43,233.233 INFO    ] Launching Daemon at Mon Jun 22 08:41:43 IST 2026
[2026-06-22 08:41:43,246.246 INFO    ] ================================================
[2026-06-22 08:41:43,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:41:43
[2026-06-22 08:41:44,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:41:44,590.590 INFO    ] Initializing speech engine...
[2026-06-22 08:41:44,598.598 INFO    ] 2026-06-22 08:41:44
[2026-06-22 08:41:44,850.850 INFO    ] 2026-06-22 08:41:44
[2026-06-22 08:41:44,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:41:45,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:41:45,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:41:45,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:41:45,228.228 INFO    ] time= 22/06/2026 08:41:45
[2026-06-22 08:41:45,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:41:45,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:41:45,429.429 INFO    ] No existing commands found in stream
[2026-06-22 08:41:50,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:41:50,448.448 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-22 08:41:53,342.342 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:41:53,345.345 INFO    ] Checking for system updates...
[2026-06-22 08:41:53,382.382 INFO    ] 200
[2026-06-22 08:41:53,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:41:53,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:41:53,440.440 INFO    ] No update needed
[2026-06-22 08:41:53,443.443 INFO    ] Checking for camera pi updates...
[2026-06-22 08:41:53,476.476 INFO    ] 200
[2026-06-22 08:41:53,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:41:53,525.525 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:41:53,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:41:53,608.608 INFO    ] No camera update needed
[2026-06-22 08:41:53,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:41:53,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:41:53,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:41:53,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:41:55,665.665 INFO    ] ================================================
[2026-06-22 08:41:55,680.680 INFO    ] Launching Daemon at Mon Jun 22 08:41:55 IST 2026
[2026-06-22 08:41:55,691.691 INFO    ] ================================================
[2026-06-22 08:41:56,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:41:56
[2026-06-22 08:41:56,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:41:57,269.269 INFO    ] Initializing speech engine...
[2026-06-22 08:41:57,277.277 INFO    ] 2026-06-22 08:41:57
[2026-06-22 08:41:57,550.550 INFO    ] 2026-06-22 08:41:57
[2026-06-22 08:41:57,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:41:57,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:41:57,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:41:57,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:41:58,009.009 INFO    ] time= 22/06/2026 08:41:58
[2026-06-22 08:41:58,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:41:58,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:41:58,176.176 INFO    ] No existing commands found in stream
[2026-06-22 08:42:03,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:42:03,201.201 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-22 08:42:05,869.869 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:42:05,871.871 INFO    ] Checking for system updates...
[2026-06-22 08:42:05,907.907 INFO    ] 200
[2026-06-22 08:42:05,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:42:05,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:42:05,974.974 INFO    ] No update needed
[2026-06-22 08:42:05,976.976 INFO    ] Checking for camera pi updates...
[2026-06-22 08:42:06,015.015 INFO    ] 200
[2026-06-22 08:42:06,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:42:06,063.063 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:42:06,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:42:06,148.148 INFO    ] No camera update needed
[2026-06-22 08:42:06,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:42:06,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:42:06,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:42:06,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:42:08,204.204 INFO    ] ================================================
[2026-06-22 08:42:08,219.219 INFO    ] Launching Daemon at Mon Jun 22 08:42:08 IST 2026
[2026-06-22 08:42:08,230.230 INFO    ] ================================================
[2026-06-22 08:42:08,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:42:08
[2026-06-22 08:42:09,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:42:09,637.637 INFO    ] Initializing speech engine...
[2026-06-22 08:42:09,647.647 INFO    ] 2026-06-22 08:42:09
[2026-06-22 08:42:09,911.911 INFO    ] 2026-06-22 08:42:09
[2026-06-22 08:42:09,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:42:10,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:42:10,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:42:10,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:42:10,406.406 INFO    ] time= 22/06/2026 08:42:10
[2026-06-22 08:42:10,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:42:10,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:42:10,613.613 INFO    ] No existing commands found in stream
[2026-06-22 08:42:15,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:42:15,631.631 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-22 08:42:16,481.481 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:42:16,482.482 INFO    ] Checking for system updates...
[2026-06-22 08:42:16,503.503 INFO    ] 200
[2026-06-22 08:42:16,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:42:16,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:42:16,537.537 INFO    ] No update needed
[2026-06-22 08:42:16,539.539 INFO    ] Checking for camera pi updates...
[2026-06-22 08:42:16,558.558 INFO    ] 200
[2026-06-22 08:42:16,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:42:16,598.598 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:42:16,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:42:16,700.700 INFO    ] No camera update needed
[2026-06-22 08:42:16,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:42:16,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:42:16,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:42:16,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:42:18,760.760 INFO    ] ================================================
[2026-06-22 08:42:18,775.775 INFO    ] Launching Daemon at Mon Jun 22 08:42:18 IST 2026
[2026-06-22 08:42:18,786.786 INFO    ] ================================================
[2026-06-22 08:42:19,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:42:19
[2026-06-22 08:42:19,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:42:20,162.162 INFO    ] Initializing speech engine...
[2026-06-22 08:42:20,169.169 INFO    ] 2026-06-22 08:42:20
[2026-06-22 08:42:20,446.446 INFO    ] 2026-06-22 08:42:20
[2026-06-22 08:42:20,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:42:20,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:42:20,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:42:20,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:42:20,847.847 INFO    ] time= 22/06/2026 08:42:20
[2026-06-22 08:42:20,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:42:20,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:42:20,976.976 INFO    ] No existing commands found in stream
[2026-06-22 08:42:25,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:42:25,992.992 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-22 08:42:27,786.786 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:42:27,788.788 INFO    ] Checking for system updates...
[2026-06-22 08:42:27,824.824 INFO    ] 200
[2026-06-22 08:42:27,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:42:27,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:42:27,884.884 INFO    ] No update needed
[2026-06-22 08:42:27,886.886 INFO    ] Checking for camera pi updates...
[2026-06-22 08:42:27,926.926 INFO    ] 200
[2026-06-22 08:42:27,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:42:27,971.971 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:42:28,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:42:28,130.130 INFO    ] No camera update needed
[2026-06-22 08:42:28,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:42:28,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:42:28,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:42:28,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:42:30,190.190 INFO    ] ================================================
[2026-06-22 08:42:30,206.206 INFO    ] Launching Daemon at Mon Jun 22 08:42:30 IST 2026
[2026-06-22 08:42:30,217.217 INFO    ] ================================================
[2026-06-22 08:42:30,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:42:30
[2026-06-22 08:42:31,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:42:31,594.594 INFO    ] Initializing speech engine...
[2026-06-22 08:42:31,608.608 INFO    ] 2026-06-22 08:42:31
[2026-06-22 08:42:31,887.887 INFO    ] 2026-06-22 08:42:31
[2026-06-22 08:42:31,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:42:32,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:42:32,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:42:32,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:42:32,325.325 INFO    ] time= 22/06/2026 08:42:32
[2026-06-22 08:42:32,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:42:32,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:42:32,520.520 INFO    ] No existing commands found in stream
[2026-06-22 08:42:37,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:42:37,549.549 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-22 08:42:38,031.031 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:42:38,033.033 INFO    ] Checking for system updates...
[2026-06-22 08:42:38,069.069 INFO    ] 200
[2026-06-22 08:42:38,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:42:38,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:42:38,132.132 INFO    ] No update needed
[2026-06-22 08:42:38,134.134 INFO    ] Checking for camera pi updates...
[2026-06-22 08:42:38,173.173 INFO    ] 200
[2026-06-22 08:42:38,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:42:38,224.224 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:42:38,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:42:38,312.312 INFO    ] No camera update needed
[2026-06-22 08:42:38,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:42:38,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:42:38,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:42:38,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:42:40,372.372 INFO    ] ================================================
[2026-06-22 08:42:40,388.388 INFO    ] Launching Daemon at Mon Jun 22 08:42:40 IST 2026
[2026-06-22 08:42:40,399.399 INFO    ] ================================================
[2026-06-22 08:42:40,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:42:40
[2026-06-22 08:42:41,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:42:41,726.726 INFO    ] Initializing speech engine...
[2026-06-22 08:42:41,732.732 INFO    ] 2026-06-22 08:42:41
[2026-06-22 08:42:42,029.029 INFO    ] 2026-06-22 08:42:41
[2026-06-22 08:42:42,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:42:42,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:42:42,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:42:42,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:42:42,449.449 INFO    ] time= 22/06/2026 08:42:42
[2026-06-22 08:42:42,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:42:42,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:42:42,542.542 INFO    ] No existing commands found in stream
[2026-06-22 08:42:47,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:42:47,580.580 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-22 08:42:49,171.171 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:42:49,174.174 INFO    ] Checking for system updates...
[2026-06-22 08:42:49,210.210 INFO    ] 200
[2026-06-22 08:42:49,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:42:49,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:42:49,271.271 INFO    ] No update needed
[2026-06-22 08:42:49,273.273 INFO    ] Checking for camera pi updates...
[2026-06-22 08:42:49,307.307 INFO    ] 200
[2026-06-22 08:42:49,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:42:49,350.350 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:42:49,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:42:49,433.433 INFO    ] No camera update needed
[2026-06-22 08:42:49,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:42:49,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:42:49,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:42:49,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:42:51,490.490 INFO    ] ================================================
[2026-06-22 08:42:51,505.505 INFO    ] Launching Daemon at Mon Jun 22 08:42:51 IST 2026
[2026-06-22 08:42:51,516.516 INFO    ] ================================================
[2026-06-22 08:42:52,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:42:52
[2026-06-22 08:42:52,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:42:52,928.928 INFO    ] Initializing speech engine...
[2026-06-22 08:42:52,951.951 INFO    ] 2026-06-22 08:42:52
[2026-06-22 08:42:53,208.208 INFO    ] 2026-06-22 08:42:53
[2026-06-22 08:42:53,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:42:53,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:42:53,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:42:53,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:42:53,668.668 INFO    ] time= 22/06/2026 08:42:53
[2026-06-22 08:42:53,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:42:53,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:42:53,920.920 INFO    ] No existing commands found in stream
[2026-06-22 08:42:58,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:42:58,947.947 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-22 08:43:03,061.061 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:43:03,065.065 INFO    ] Checking for system updates...
[2026-06-22 08:43:03,110.110 INFO    ] 200
[2026-06-22 08:43:03,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:43:03,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:43:03,193.193 INFO    ] No update needed
[2026-06-22 08:43:03,196.196 INFO    ] Checking for camera pi updates...
[2026-06-22 08:43:03,241.241 INFO    ] 200
[2026-06-22 08:43:03,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:43:03,295.295 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:43:03,381.381 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:43:03,383.383 INFO    ] No camera update needed
[2026-06-22 08:43:03,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:43:03,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:43:03,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:43:03,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:43:05,441.441 INFO    ] ================================================
[2026-06-22 08:43:05,456.456 INFO    ] Launching Daemon at Mon Jun 22 08:43:05 IST 2026
[2026-06-22 08:43:05,467.467 INFO    ] ================================================
[2026-06-22 08:43:06,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:43:06
[2026-06-22 08:43:06,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:43:07,033.033 INFO    ] Initializing speech engine...
[2026-06-22 08:43:07,047.047 INFO    ] 2026-06-22 08:43:07
[2026-06-22 08:43:07,331.331 INFO    ] 2026-06-22 08:43:07
[2026-06-22 08:43:07,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:43:07,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:43:07,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:43:07,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:43:07,869.869 INFO    ] time= 22/06/2026 08:43:07
[2026-06-22 08:43:07,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:43:07,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:43:08,030.030 INFO    ] No existing commands found in stream
[2026-06-22 08:43:13,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:43:13,063.063 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-22 08:43:14,176.176 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:43:14,178.178 INFO    ] Checking for system updates...
[2026-06-22 08:43:14,216.216 INFO    ] 200
[2026-06-22 08:43:14,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:43:14,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:43:14,290.290 INFO    ] No update needed
[2026-06-22 08:43:14,292.292 INFO    ] Checking for camera pi updates...
[2026-06-22 08:43:14,328.328 INFO    ] 200
[2026-06-22 08:43:14,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:43:14,377.377 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:43:14,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:43:14,461.461 INFO    ] No camera update needed
[2026-06-22 08:43:14,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:43:14,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:43:14,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:43:14,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:43:16,519.519 INFO    ] ================================================
[2026-06-22 08:43:16,534.534 INFO    ] Launching Daemon at Mon Jun 22 08:43:16 IST 2026
[2026-06-22 08:43:16,545.545 INFO    ] ================================================
[2026-06-22 08:43:17,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:43:17
[2026-06-22 08:43:17,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:43:17,926.926 INFO    ] Initializing speech engine...
[2026-06-22 08:43:17,936.936 INFO    ] 2026-06-22 08:43:17
[2026-06-22 08:43:18,215.215 INFO    ] 2026-06-22 08:43:18
[2026-06-22 08:43:18,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:43:18,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:43:18,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:43:18,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:43:18,941.941 INFO    ] time= 22/06/2026 08:43:18
[2026-06-22 08:43:18,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:43:19,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:43:19,173.173 INFO    ] No existing commands found in stream
[2026-06-22 08:43:24,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:43:24,190.190 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-22 08:43:28,616.616 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:43:28,619.619 INFO    ] Checking for system updates...
[2026-06-22 08:43:28,656.656 INFO    ] 200
[2026-06-22 08:43:28,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:43:28,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:43:28,717.717 INFO    ] No update needed
[2026-06-22 08:43:28,719.719 INFO    ] Checking for camera pi updates...
[2026-06-22 08:43:28,753.753 INFO    ] 200
[2026-06-22 08:43:28,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:43:28,801.801 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:43:28,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:43:28,895.895 INFO    ] No camera update needed
[2026-06-22 08:43:28,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:43:28,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:43:28,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:43:28,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:43:30,952.952 INFO    ] ================================================
[2026-06-22 08:43:30,968.968 INFO    ] Launching Daemon at Mon Jun 22 08:43:30 IST 2026
[2026-06-22 08:43:30,979.979 INFO    ] ================================================
[2026-06-22 08:43:31,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:43:31
[2026-06-22 08:43:32,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:43:32,357.357 INFO    ] Initializing speech engine...
[2026-06-22 08:43:32,378.378 INFO    ] 2026-06-22 08:43:32
[2026-06-22 08:43:32,657.657 INFO    ] 2026-06-22 08:43:32
[2026-06-22 08:43:32,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:43:32,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:43:32,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:43:33,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:43:33,164.164 INFO    ] time= 22/06/2026 08:43:33
[2026-06-22 08:43:33,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:43:33,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:43:33,288.288 INFO    ] No existing commands found in stream
[2026-06-22 08:43:38,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:43:38,301.301 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-22 08:43:38,721.721 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:43:38,724.724 INFO    ] Checking for system updates...
[2026-06-22 08:43:38,760.760 INFO    ] 200
[2026-06-22 08:43:38,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:43:38,816.816 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:43:38,818.818 INFO    ] No update needed
[2026-06-22 08:43:38,821.821 INFO    ] Checking for camera pi updates...
[2026-06-22 08:43:38,859.859 INFO    ] 200
[2026-06-22 08:43:38,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:43:38,901.901 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:43:38,985.985 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:43:38,988.988 INFO    ] No camera update needed
[2026-06-22 08:43:38,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:43:38,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:43:38,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:43:39,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:43:41,044.044 INFO    ] ================================================
[2026-06-22 08:43:41,059.059 INFO    ] Launching Daemon at Mon Jun 22 08:43:41 IST 2026
[2026-06-22 08:43:41,070.070 INFO    ] ================================================
[2026-06-22 08:43:41,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:43:41
[2026-06-22 08:43:42,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:43:42,642.642 INFO    ] Initializing speech engine...
[2026-06-22 08:43:42,655.655 INFO    ] 2026-06-22 08:43:42
[2026-06-22 08:43:42,964.964 INFO    ] 2026-06-22 08:43:42
[2026-06-22 08:43:43,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:43:43,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:43:43,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:43:43,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:43:43,474.474 INFO    ] time= 22/06/2026 08:43:43
[2026-06-22 08:43:43,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:43:43,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:43:43,639.639 INFO    ] No existing commands found in stream
[2026-06-22 08:43:48,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:43:48,663.663 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-22 08:43:52,136.136 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:43:52,139.139 INFO    ] Checking for system updates...
[2026-06-22 08:43:52,177.177 INFO    ] 200
[2026-06-22 08:43:52,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:43:52,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:43:52,237.237 INFO    ] No update needed
[2026-06-22 08:43:52,240.240 INFO    ] Checking for camera pi updates...
[2026-06-22 08:43:52,275.275 INFO    ] 200
[2026-06-22 08:43:52,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:43:52,321.321 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:43:52,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:43:52,397.397 INFO    ] No camera update needed
[2026-06-22 08:43:52,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:43:52,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:43:52,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:43:52,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:43:54,457.457 INFO    ] ================================================
[2026-06-22 08:43:54,473.473 INFO    ] Launching Daemon at Mon Jun 22 08:43:54 IST 2026
[2026-06-22 08:43:54,485.485 INFO    ] ================================================
[2026-06-22 08:43:54,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:43:54
[2026-06-22 08:43:55,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:43:55,848.848 INFO    ] Initializing speech engine...
[2026-06-22 08:43:55,855.855 INFO    ] 2026-06-22 08:43:55
[2026-06-22 08:43:56,115.115 INFO    ] 2026-06-22 08:43:56
[2026-06-22 08:43:56,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:43:56,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:43:56,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:43:56,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:43:56,601.601 INFO    ] time= 22/06/2026 08:43:56
[2026-06-22 08:43:56,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:43:56,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:43:56,814.814 INFO    ] No existing commands found in stream
[2026-06-22 08:44:01,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:44:01,832.832 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-22 08:44:02,541.541 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:44:02,545.545 INFO    ] Checking for system updates...
[2026-06-22 08:44:02,587.587 INFO    ] 200
[2026-06-22 08:44:02,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:44:02,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:44:02,657.657 INFO    ] No update needed
[2026-06-22 08:44:02,661.661 INFO    ] Checking for camera pi updates...
[2026-06-22 08:44:02,700.700 INFO    ] 200
[2026-06-22 08:44:02,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:44:02,750.750 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:44:02,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:44:02,813.813 INFO    ] No camera update needed
[2026-06-22 08:44:02,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:44:02,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:44:02,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:44:02,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:44:04,873.873 INFO    ] ================================================
[2026-06-22 08:44:04,889.889 INFO    ] Launching Daemon at Mon Jun 22 08:44:04 IST 2026
[2026-06-22 08:44:04,901.901 INFO    ] ================================================
[2026-06-22 08:44:05,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:44:05
[2026-06-22 08:44:06,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:44:06,311.311 INFO    ] Initializing speech engine...
[2026-06-22 08:44:06,319.319 INFO    ] 2026-06-22 08:44:06
[2026-06-22 08:44:06,604.604 INFO    ] 2026-06-22 08:44:06
[2026-06-22 08:44:06,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:44:06,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:44:06,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:44:07,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:44:07,051.051 INFO    ] time= 22/06/2026 08:44:07
[2026-06-22 08:44:07,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:44:07,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:44:07,232.232 INFO    ] No existing commands found in stream
[2026-06-22 08:44:12,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:44:12,265.265 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-22 08:44:16,102.102 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:44:16,105.105 INFO    ] Checking for system updates...
[2026-06-22 08:44:16,145.145 INFO    ] 200
[2026-06-22 08:44:16,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:44:16,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:44:16,203.203 INFO    ] No update needed
[2026-06-22 08:44:16,205.205 INFO    ] Checking for camera pi updates...
[2026-06-22 08:44:16,239.239 INFO    ] 200
[2026-06-22 08:44:16,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:44:16,283.283 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:44:16,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:44:16,376.376 INFO    ] No camera update needed
[2026-06-22 08:44:16,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:44:16,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:44:16,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:44:16,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:44:18,432.432 INFO    ] ================================================
[2026-06-22 08:44:18,448.448 INFO    ] Launching Daemon at Mon Jun 22 08:44:18 IST 2026
[2026-06-22 08:44:18,459.459 INFO    ] ================================================
[2026-06-22 08:44:19,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:44:19
[2026-06-22 08:44:19,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:44:19,950.950 INFO    ] Initializing speech engine...
[2026-06-22 08:44:19,959.959 INFO    ] 2026-06-22 08:44:19
[2026-06-22 08:44:20,245.245 INFO    ] 2026-06-22 08:44:20
[2026-06-22 08:44:20,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:44:20,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:44:20,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:44:20,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:44:20,732.732 INFO    ] time= 22/06/2026 08:44:20
[2026-06-22 08:44:20,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:44:20,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:44:20,957.957 INFO    ] No existing commands found in stream
[2026-06-22 08:44:25,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:44:25,976.976 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-22 08:44:27,472.472 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:44:27,475.475 INFO    ] Checking for system updates...
[2026-06-22 08:44:27,513.513 INFO    ] 200
[2026-06-22 08:44:27,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:44:27,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:44:27,572.572 INFO    ] No update needed
[2026-06-22 08:44:27,575.575 INFO    ] Checking for camera pi updates...
[2026-06-22 08:44:27,610.610 INFO    ] 200
[2026-06-22 08:44:27,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:44:27,659.659 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:44:27,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:44:27,778.778 INFO    ] No camera update needed
[2026-06-22 08:44:27,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:44:27,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:44:27,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:44:27,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:44:29,834.834 INFO    ] ================================================
[2026-06-22 08:44:29,850.850 INFO    ] Launching Daemon at Mon Jun 22 08:44:29 IST 2026
[2026-06-22 08:44:29,861.861 INFO    ] ================================================
[2026-06-22 08:44:30,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:44:30
[2026-06-22 08:44:30,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:44:31,184.184 INFO    ] Initializing speech engine...
[2026-06-22 08:44:31,191.191 INFO    ] 2026-06-22 08:44:31
[2026-06-22 08:44:31,483.483 INFO    ] 2026-06-22 08:44:31
[2026-06-22 08:44:31,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:44:31,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:44:31,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:44:31,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:44:31,908.908 INFO    ] time= 22/06/2026 08:44:31
[2026-06-22 08:44:31,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:44:31,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:44:31,990.990 INFO    ] No existing commands found in stream
[2026-06-22 08:44:37,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:44:37,018.018 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-22 08:44:38,489.489 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:44:38,491.491 INFO    ] Checking for system updates...
[2026-06-22 08:44:38,527.527 INFO    ] 200
[2026-06-22 08:44:38,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:44:38,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:44:38,586.586 INFO    ] No update needed
[2026-06-22 08:44:38,588.588 INFO    ] Checking for camera pi updates...
[2026-06-22 08:44:38,621.621 INFO    ] 200
[2026-06-22 08:44:38,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:44:38,665.665 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:44:38,734.734 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:44:38,737.737 INFO    ] No camera update needed
[2026-06-22 08:44:38,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:44:38,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:44:38,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:44:38,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:44:40,793.793 INFO    ] ================================================
[2026-06-22 08:44:40,809.809 INFO    ] Launching Daemon at Mon Jun 22 08:44:40 IST 2026
[2026-06-22 08:44:40,821.821 INFO    ] ================================================
[2026-06-22 08:44:41,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:44:41
[2026-06-22 08:44:41,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:44:42,159.159 INFO    ] Initializing speech engine...
[2026-06-22 08:44:42,167.167 INFO    ] 2026-06-22 08:44:42
[2026-06-22 08:44:42,433.433 INFO    ] 2026-06-22 08:44:42
[2026-06-22 08:44:42,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:44:42,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:44:42,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:44:42,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:44:42,929.929 INFO    ] time= 22/06/2026 08:44:42
[2026-06-22 08:44:42,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:44:43,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:44:43,121.121 INFO    ] No existing commands found in stream
[2026-06-22 08:44:48,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:44:48,137.137 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-22 08:44:52,460.460 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:44:52,463.463 INFO    ] Checking for system updates...
[2026-06-22 08:44:52,499.499 INFO    ] 200
[2026-06-22 08:44:52,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:44:52,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:44:52,563.563 INFO    ] No update needed
[2026-06-22 08:44:52,565.565 INFO    ] Checking for camera pi updates...
[2026-06-22 08:44:52,599.599 INFO    ] 200
[2026-06-22 08:44:52,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:44:52,642.642 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:44:52,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:44:52,730.730 INFO    ] No camera update needed
[2026-06-22 08:44:52,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:44:52,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:44:52,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:44:52,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:44:54,787.787 INFO    ] ================================================
[2026-06-22 08:44:54,802.802 INFO    ] Launching Daemon at Mon Jun 22 08:44:54 IST 2026
[2026-06-22 08:44:54,814.814 INFO    ] ================================================
[2026-06-22 08:44:55,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:44:55
[2026-06-22 08:44:55,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:44:56,090.090 INFO    ] Initializing speech engine...
[2026-06-22 08:44:56,103.103 INFO    ] 2026-06-22 08:44:56
[2026-06-22 08:44:56,352.352 INFO    ] 2026-06-22 08:44:56
[2026-06-22 08:44:56,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:44:56,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:44:56,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:44:56,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:44:56,841.841 INFO    ] time= 22/06/2026 08:44:56
[2026-06-22 08:44:56,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:44:56,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:44:57,056.056 INFO    ] No existing commands found in stream
[2026-06-22 08:45:02,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:45:02,073.073 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-22 08:45:04,825.825 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:45:04,827.827 INFO    ] Checking for system updates...
[2026-06-22 08:45:04,863.863 INFO    ] 200
[2026-06-22 08:45:04,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:45:04,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:45:04,921.921 INFO    ] No update needed
[2026-06-22 08:45:04,923.923 INFO    ] Checking for camera pi updates...
[2026-06-22 08:45:04,958.958 INFO    ] 200
[2026-06-22 08:45:04,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:45:05,001.001 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:45:05,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:45:05,092.092 INFO    ] No camera update needed
[2026-06-22 08:45:05,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:45:05,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:45:05,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:45:05,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:45:07,148.148 INFO    ] ================================================
[2026-06-22 08:45:07,164.164 INFO    ] Launching Daemon at Mon Jun 22 08:45:07 IST 2026
[2026-06-22 08:45:07,175.175 INFO    ] ================================================
[2026-06-22 08:45:07,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:45:07
[2026-06-22 08:45:08,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:45:08,632.632 INFO    ] Initializing speech engine...
[2026-06-22 08:45:08,648.648 INFO    ] 2026-06-22 08:45:08
[2026-06-22 08:45:08,919.919 INFO    ] 2026-06-22 08:45:08
[2026-06-22 08:45:08,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:45:09,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:45:09,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:45:09,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:45:09,343.343 INFO    ] time= 22/06/2026 08:45:09
[2026-06-22 08:45:09,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:45:09,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:45:09,620.620 INFO    ] No existing commands found in stream
[2026-06-22 08:45:14,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:45:14,643.643 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-22 08:45:15,109.109 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:45:15,112.112 INFO    ] Checking for system updates...
[2026-06-22 08:45:15,148.148 INFO    ] 200
[2026-06-22 08:45:15,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:45:15,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:45:15,211.211 INFO    ] No update needed
[2026-06-22 08:45:15,213.213 INFO    ] Checking for camera pi updates...
[2026-06-22 08:45:15,247.247 INFO    ] 200
[2026-06-22 08:45:15,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:45:15,290.290 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:45:15,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:45:15,369.369 INFO    ] No camera update needed
[2026-06-22 08:45:15,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:45:15,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:45:15,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:45:15,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:45:17,427.427 INFO    ] ================================================
[2026-06-22 08:45:17,442.442 INFO    ] Launching Daemon at Mon Jun 22 08:45:17 IST 2026
[2026-06-22 08:45:17,464.464 INFO    ] ================================================
[2026-06-22 08:45:17,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:45:17
[2026-06-22 08:45:18,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:45:18,838.838 INFO    ] Initializing speech engine...
[2026-06-22 08:45:18,845.845 INFO    ] 2026-06-22 08:45:18
[2026-06-22 08:45:19,138.138 INFO    ] 2026-06-22 08:45:19
[2026-06-22 08:45:19,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:45:19,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:45:19,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:45:19,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:45:19,640.640 INFO    ] time= 22/06/2026 08:45:19
[2026-06-22 08:45:19,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:45:19,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:45:19,838.838 INFO    ] No existing commands found in stream
[2026-06-22 08:45:24,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:45:24,853.853 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-22 08:45:28,347.347 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:45:28,350.350 INFO    ] Checking for system updates...
[2026-06-22 08:45:28,386.386 INFO    ] 200
[2026-06-22 08:45:28,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:45:28,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:45:28,447.447 INFO    ] No update needed
[2026-06-22 08:45:28,450.450 INFO    ] Checking for camera pi updates...
[2026-06-22 08:45:28,485.485 INFO    ] 200
[2026-06-22 08:45:28,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:45:28,528.528 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:45:28,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:45:28,620.620 INFO    ] No camera update needed
[2026-06-22 08:45:28,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:45:28,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:45:28,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:45:28,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:45:30,676.676 INFO    ] ================================================
[2026-06-22 08:45:30,692.692 INFO    ] Launching Daemon at Mon Jun 22 08:45:30 IST 2026
[2026-06-22 08:45:30,703.703 INFO    ] ================================================
[2026-06-22 08:45:31,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:45:31
[2026-06-22 08:45:31,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:45:32,056.056 INFO    ] Initializing speech engine...
[2026-06-22 08:45:32,062.062 INFO    ] 2026-06-22 08:45:32
[2026-06-22 08:45:32,365.365 INFO    ] 2026-06-22 08:45:32
[2026-06-22 08:45:32,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:45:32,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:45:32,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:45:32,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:45:32,896.896 INFO    ] time= 22/06/2026 08:45:32
[2026-06-22 08:45:32,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:45:32,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:45:33,145.145 INFO    ] No existing commands found in stream
[2026-06-22 08:45:38,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:45:38,180.180 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-22 08:45:39,082.082 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:45:39,085.085 INFO    ] Checking for system updates...
[2026-06-22 08:45:39,121.121 INFO    ] 200
[2026-06-22 08:45:39,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:45:39,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:45:39,180.180 INFO    ] No update needed
[2026-06-22 08:45:39,183.183 INFO    ] Checking for camera pi updates...
[2026-06-22 08:45:39,217.217 INFO    ] 200
[2026-06-22 08:45:39,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:45:39,264.264 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:45:39,324.324 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:45:39,327.327 INFO    ] No camera update needed
[2026-06-22 08:45:39,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:45:39,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:45:39,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:45:39,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:45:41,382.382 INFO    ] ================================================
[2026-06-22 08:45:41,397.397 INFO    ] Launching Daemon at Mon Jun 22 08:45:41 IST 2026
[2026-06-22 08:45:41,408.408 INFO    ] ================================================
[2026-06-22 08:45:41,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:45:41
[2026-06-22 08:45:42,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:45:42,826.826 INFO    ] Initializing speech engine...
[2026-06-22 08:45:42,843.843 INFO    ] 2026-06-22 08:45:42
[2026-06-22 08:45:43,094.094 INFO    ] 2026-06-22 08:45:43
[2026-06-22 08:45:43,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:45:43,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:45:43,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:45:43,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:45:43,575.575 INFO    ] time= 22/06/2026 08:45:43
[2026-06-22 08:45:43,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:45:43,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:45:43,801.801 INFO    ] No existing commands found in stream
[2026-06-22 08:45:48,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:45:48,829.829 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-22 08:45:52,849.849 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:45:52,851.851 INFO    ] Checking for system updates...
[2026-06-22 08:45:52,887.887 INFO    ] 200
[2026-06-22 08:45:52,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:45:52,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:45:52,949.949 INFO    ] No update needed
[2026-06-22 08:45:52,951.951 INFO    ] Checking for camera pi updates...
[2026-06-22 08:45:52,985.985 INFO    ] 200
[2026-06-22 08:45:52,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:45:53,028.028 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:45:53,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:45:53,113.113 INFO    ] No camera update needed
[2026-06-22 08:45:53,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:45:53,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:45:53,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:45:53,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:45:55,170.170 INFO    ] ================================================
[2026-06-22 08:45:55,186.186 INFO    ] Launching Daemon at Mon Jun 22 08:45:55 IST 2026
[2026-06-22 08:45:55,196.196 INFO    ] ================================================
[2026-06-22 08:45:55,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:45:55
[2026-06-22 08:45:56,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:45:56,680.680 INFO    ] Initializing speech engine...
[2026-06-22 08:45:56,688.688 INFO    ] 2026-06-22 08:45:56
[2026-06-22 08:45:56,964.964 INFO    ] 2026-06-22 08:45:56
[2026-06-22 08:45:57,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:45:57,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:45:57,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:45:57,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:45:57,476.476 INFO    ] time= 22/06/2026 08:45:57
[2026-06-22 08:45:57,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:45:57,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:45:57,687.687 INFO    ] No existing commands found in stream
[2026-06-22 08:46:02,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:46:02,710.710 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-22 08:46:04,451.451 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:46:04,454.454 INFO    ] Checking for system updates...
[2026-06-22 08:46:04,490.490 INFO    ] 200
[2026-06-22 08:46:04,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:46:04,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:46:04,549.549 INFO    ] No update needed
[2026-06-22 08:46:04,552.552 INFO    ] Checking for camera pi updates...
[2026-06-22 08:46:04,586.586 INFO    ] 200
[2026-06-22 08:46:04,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:46:04,630.630 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:46:04,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:46:04,714.714 INFO    ] No camera update needed
[2026-06-22 08:46:04,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:46:04,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:46:04,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:46:04,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:46:06,773.773 INFO    ] ================================================
[2026-06-22 08:46:06,789.789 INFO    ] Launching Daemon at Mon Jun 22 08:46:06 IST 2026
[2026-06-22 08:46:06,799.799 INFO    ] ================================================
[2026-06-22 08:46:07,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:46:07
[2026-06-22 08:46:07,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:46:08,246.246 INFO    ] Initializing speech engine...
[2026-06-22 08:46:08,259.259 INFO    ] 2026-06-22 08:46:08
[2026-06-22 08:46:08,521.521 INFO    ] 2026-06-22 08:46:08
[2026-06-22 08:46:08,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:46:08,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:46:08,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:46:08,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:46:08,926.926 INFO    ] time= 22/06/2026 08:46:08
[2026-06-22 08:46:08,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:46:08,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:46:09,123.123 INFO    ] No existing commands found in stream
[2026-06-22 08:46:14,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:46:14,156.156 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-22 08:46:16,013.013 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:46:16,015.015 INFO    ] Checking for system updates...
[2026-06-22 08:46:16,051.051 INFO    ] 200
[2026-06-22 08:46:16,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:46:16,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:46:16,108.108 INFO    ] No update needed
[2026-06-22 08:46:16,111.111 INFO    ] Checking for camera pi updates...
[2026-06-22 08:46:16,147.147 INFO    ] 200
[2026-06-22 08:46:16,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:46:16,191.191 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:46:16,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:46:16,278.278 INFO    ] No camera update needed
[2026-06-22 08:46:16,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:46:16,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:46:16,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:46:16,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:46:18,333.333 INFO    ] ================================================
[2026-06-22 08:46:18,349.349 INFO    ] Launching Daemon at Mon Jun 22 08:46:18 IST 2026
[2026-06-22 08:46:18,360.360 INFO    ] ================================================
[2026-06-22 08:46:18,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:46:18
[2026-06-22 08:46:19,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:46:19,726.726 INFO    ] Initializing speech engine...
[2026-06-22 08:46:19,736.736 INFO    ] 2026-06-22 08:46:19
[2026-06-22 08:46:20,000.000 INFO    ] 2026-06-22 08:46:19
[2026-06-22 08:46:20,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:46:20,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:46:20,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:46:20,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:46:20,463.463 INFO    ] time= 22/06/2026 08:46:20
[2026-06-22 08:46:20,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:46:20,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:46:20,685.685 INFO    ] No existing commands found in stream
[2026-06-22 08:46:25,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:46:25,716.716 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-22 08:46:29,150.150 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:46:29,153.153 INFO    ] Checking for system updates...
[2026-06-22 08:46:29,189.189 INFO    ] 200
[2026-06-22 08:46:29,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:46:29,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:46:29,246.246 INFO    ] No update needed
[2026-06-22 08:46:29,249.249 INFO    ] Checking for camera pi updates...
[2026-06-22 08:46:29,283.283 INFO    ] 200
[2026-06-22 08:46:29,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:46:29,327.327 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:46:29,410.410 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:46:29,412.412 INFO    ] No camera update needed
[2026-06-22 08:46:29,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:46:29,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:46:29,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:46:29,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:46:31,470.470 INFO    ] ================================================
[2026-06-22 08:46:31,486.486 INFO    ] Launching Daemon at Mon Jun 22 08:46:31 IST 2026
[2026-06-22 08:46:31,498.498 INFO    ] ================================================
[2026-06-22 08:46:32,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:46:32
[2026-06-22 08:46:32,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:46:33,003.003 INFO    ] Initializing speech engine...
[2026-06-22 08:46:33,013.013 INFO    ] 2026-06-22 08:46:33
[2026-06-22 08:46:33,271.271 INFO    ] 2026-06-22 08:46:33
[2026-06-22 08:46:33,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:46:33,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:46:33,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:46:33,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:46:33,826.826 INFO    ] time= 22/06/2026 08:46:33
[2026-06-22 08:46:33,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:46:33,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:46:33,977.977 INFO    ] No existing commands found in stream
[2026-06-22 08:46:38,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:46:39,001.001 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-22 08:46:40,173.173 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:46:40,176.176 INFO    ] Checking for system updates...
[2026-06-22 08:46:40,219.219 INFO    ] 200
[2026-06-22 08:46:40,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:46:40,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:46:40,286.286 INFO    ] No update needed
[2026-06-22 08:46:40,291.291 INFO    ] Checking for camera pi updates...
[2026-06-22 08:46:40,330.330 INFO    ] 200
[2026-06-22 08:46:40,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:46:40,377.377 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:46:40,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:46:40,580.580 INFO    ] No camera update needed
[2026-06-22 08:46:40,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:46:40,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:46:40,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:46:40,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:46:42,640.640 INFO    ] ================================================
[2026-06-22 08:46:42,655.655 INFO    ] Launching Daemon at Mon Jun 22 08:46:42 IST 2026
[2026-06-22 08:46:42,666.666 INFO    ] ================================================
[2026-06-22 08:46:43,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:46:43
[2026-06-22 08:46:43,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:46:44,224.224 INFO    ] Initializing speech engine...
[2026-06-22 08:46:44,231.231 INFO    ] 2026-06-22 08:46:44
[2026-06-22 08:46:44,500.500 INFO    ] 2026-06-22 08:46:44
[2026-06-22 08:46:44,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:46:44,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:46:44,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:46:44,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:46:44,974.974 INFO    ] time= 22/06/2026 08:46:44
[2026-06-22 08:46:44,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:46:45,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:46:45,134.134 INFO    ] No existing commands found in stream
[2026-06-22 08:46:50,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:46:50,177.177 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-22 08:46:53,886.886 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:46:53,887.887 INFO    ] Checking for system updates...
[2026-06-22 08:46:53,908.908 INFO    ] 200
[2026-06-22 08:46:53,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:46:53,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:46:53,958.958 INFO    ] No update needed
[2026-06-22 08:46:53,961.961 INFO    ] Checking for camera pi updates...
[2026-06-22 08:46:53,994.994 INFO    ] 200
[2026-06-22 08:46:53,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:46:54,041.041 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:46:54,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:46:54,127.127 INFO    ] No camera update needed
[2026-06-22 08:46:54,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:46:54,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:46:54,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:46:54,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:46:56,181.181 INFO    ] ================================================
[2026-06-22 08:46:56,197.197 INFO    ] Launching Daemon at Mon Jun 22 08:46:56 IST 2026
[2026-06-22 08:46:56,207.207 INFO    ] ================================================
[2026-06-22 08:46:56,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:46:56
[2026-06-22 08:46:57,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:46:57,668.668 INFO    ] Initializing speech engine...
[2026-06-22 08:46:57,686.686 INFO    ] 2026-06-22 08:46:57
[2026-06-22 08:46:57,959.959 INFO    ] 2026-06-22 08:46:57
[2026-06-22 08:46:58,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:46:58,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:46:58,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:46:58,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:46:58,381.381 INFO    ] time= 22/06/2026 08:46:58
[2026-06-22 08:46:58,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:46:58,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:46:58,572.572 INFO    ] No existing commands found in stream
[2026-06-22 08:47:03,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:47:03,606.606 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-22 08:47:07,512.512 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:47:07,515.515 INFO    ] Checking for system updates...
[2026-06-22 08:47:07,551.551 INFO    ] 200
[2026-06-22 08:47:07,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:47:07,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:47:07,619.619 INFO    ] No update needed
[2026-06-22 08:47:07,622.622 INFO    ] Checking for camera pi updates...
[2026-06-22 08:47:07,657.657 INFO    ] 200
[2026-06-22 08:47:07,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:47:07,701.701 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:47:07,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:47:07,784.784 INFO    ] No camera update needed
[2026-06-22 08:47:07,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:47:07,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:47:07,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:47:07,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:47:09,844.844 INFO    ] ================================================
[2026-06-22 08:47:09,860.860 INFO    ] Launching Daemon at Mon Jun 22 08:47:09 IST 2026
[2026-06-22 08:47:09,871.871 INFO    ] ================================================
[2026-06-22 08:47:10,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:47:10
[2026-06-22 08:47:10,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:47:11,241.241 INFO    ] Initializing speech engine...
[2026-06-22 08:47:11,247.247 INFO    ] 2026-06-22 08:47:11
[2026-06-22 08:47:11,506.506 INFO    ] 2026-06-22 08:47:11
[2026-06-22 08:47:11,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:47:11,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:47:11,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:47:11,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:47:11,974.974 INFO    ] time= 22/06/2026 08:47:11
[2026-06-22 08:47:12,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:47:12,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:47:12,212.212 INFO    ] No existing commands found in stream
[2026-06-22 08:47:17,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:47:17,230.230 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-22 08:47:18,722.722 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:47:18,723.723 INFO    ] Checking for system updates...
[2026-06-22 08:47:18,745.745 INFO    ] 200
[2026-06-22 08:47:18,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:47:18,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:47:18,804.804 INFO    ] No update needed
[2026-06-22 08:47:18,807.807 INFO    ] Checking for camera pi updates...
[2026-06-22 08:47:18,848.848 INFO    ] 200
[2026-06-22 08:47:18,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:47:18,890.890 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:47:18,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:47:18,945.945 INFO    ] No camera update needed
[2026-06-22 08:47:18,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:47:18,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:47:18,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:47:18,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:47:21,001.001 INFO    ] ================================================
[2026-06-22 08:47:21,017.017 INFO    ] Launching Daemon at Mon Jun 22 08:47:21 IST 2026
[2026-06-22 08:47:21,029.029 INFO    ] ================================================
[2026-06-22 08:47:21,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:47:21
[2026-06-22 08:47:22,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:47:22,440.440 INFO    ] Initializing speech engine...
[2026-06-22 08:47:22,463.463 INFO    ] 2026-06-22 08:47:22
[2026-06-22 08:47:22,719.719 INFO    ] 2026-06-22 08:47:22
[2026-06-22 08:47:22,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:47:22,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:47:22,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:47:23,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:47:23,182.182 INFO    ] time= 22/06/2026 08:47:23
[2026-06-22 08:47:23,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:47:23,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:47:23,439.439 INFO    ] No existing commands found in stream
[2026-06-22 08:47:28,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:47:28,464.464 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-22 08:47:31,666.666 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:47:31,669.669 INFO    ] Checking for system updates...
[2026-06-22 08:47:31,711.711 INFO    ] 200
[2026-06-22 08:47:31,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:47:31,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:47:31,768.768 INFO    ] No update needed
[2026-06-22 08:47:31,771.771 INFO    ] Checking for camera pi updates...
[2026-06-22 08:47:31,804.804 INFO    ] 200
[2026-06-22 08:47:31,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:47:31,851.851 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:47:31,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:47:31,909.909 INFO    ] No camera update needed
[2026-06-22 08:47:31,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:47:31,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:47:31,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:47:31,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:47:33,971.971 INFO    ] ================================================
[2026-06-22 08:47:33,987.987 INFO    ] Launching Daemon at Mon Jun 22 08:47:33 IST 2026
[2026-06-22 08:47:34,998.998 INFO    ] ================================================
[2026-06-22 08:47:34,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:47:34
[2026-06-22 08:47:35,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:47:35,612.612 INFO    ] Initializing speech engine...
[2026-06-22 08:47:35,618.618 INFO    ] 2026-06-22 08:47:35
[2026-06-22 08:47:35,898.898 INFO    ] 2026-06-22 08:47:35
[2026-06-22 08:47:35,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:47:36,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:47:36,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:47:36,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:47:36,352.352 INFO    ] time= 22/06/2026 08:47:36
[2026-06-22 08:47:36,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:47:36,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:47:36,516.516 INFO    ] No existing commands found in stream
[2026-06-22 08:47:41,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:47:41,539.539 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-22 08:47:43,022.022 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:47:43,024.024 INFO    ] Checking for system updates...
[2026-06-22 08:47:43,065.065 INFO    ] 200
[2026-06-22 08:47:43,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:47:43,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:47:43,144.144 INFO    ] No update needed
[2026-06-22 08:47:43,147.147 INFO    ] Checking for camera pi updates...
[2026-06-22 08:47:43,184.184 INFO    ] 200
[2026-06-22 08:47:43,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:47:43,229.229 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:47:43,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:47:43,287.287 INFO    ] No camera update needed
[2026-06-22 08:47:43,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:47:43,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:47:43,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:47:43,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:47:45,343.343 INFO    ] ================================================
[2026-06-22 08:47:45,359.359 INFO    ] Launching Daemon at Mon Jun 22 08:47:45 IST 2026
[2026-06-22 08:47:45,370.370 INFO    ] ================================================
[2026-06-22 08:47:45,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:47:45
[2026-06-22 08:47:46,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:47:46,735.735 INFO    ] Initializing speech engine...
[2026-06-22 08:47:46,750.750 INFO    ] 2026-06-22 08:47:46
[2026-06-22 08:47:47,003.003 INFO    ] 2026-06-22 08:47:46
[2026-06-22 08:47:47,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:47:47,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:47:47,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:47:47,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:47:47,458.458 INFO    ] time= 22/06/2026 08:47:47
[2026-06-22 08:47:47,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:47:47,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:47:47,751.751 INFO    ] No existing commands found in stream
[2026-06-22 08:47:52,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:47:52,782.782 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-22 08:47:53,232.232 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:47:53,236.236 INFO    ] Checking for system updates...
[2026-06-22 08:47:53,273.273 INFO    ] 200
[2026-06-22 08:47:53,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:47:53,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:47:53,339.339 INFO    ] No update needed
[2026-06-22 08:47:53,341.341 INFO    ] Checking for camera pi updates...
[2026-06-22 08:47:53,376.376 INFO    ] 200
[2026-06-22 08:47:53,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:47:53,420.420 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:47:53,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:47:53,529.529 INFO    ] No camera update needed
[2026-06-22 08:47:53,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:47:53,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:47:53,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:47:53,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:47:55,591.591 INFO    ] ================================================
[2026-06-22 08:47:55,606.606 INFO    ] Launching Daemon at Mon Jun 22 08:47:55 IST 2026
[2026-06-22 08:47:55,618.618 INFO    ] ================================================
[2026-06-22 08:47:56,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:47:56
[2026-06-22 08:47:56,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:47:57,071.071 INFO    ] Initializing speech engine...
[2026-06-22 08:47:57,086.086 INFO    ] 2026-06-22 08:47:57
[2026-06-22 08:47:57,346.346 INFO    ] 2026-06-22 08:47:57
[2026-06-22 08:47:57,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:47:57,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:47:57,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:47:57,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:47:57,822.822 INFO    ] time= 22/06/2026 08:47:57
[2026-06-22 08:47:57,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:47:57,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:47:57,979.979 INFO    ] No existing commands found in stream
[2026-06-22 08:48:02,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:48:02,996.996 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-22 08:48:04,460.460 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:48:04,463.463 INFO    ] Checking for system updates...
[2026-06-22 08:48:04,499.499 INFO    ] 200
[2026-06-22 08:48:04,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:48:04,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:48:04,561.561 INFO    ] No update needed
[2026-06-22 08:48:04,563.563 INFO    ] Checking for camera pi updates...
[2026-06-22 08:48:04,596.596 INFO    ] 200
[2026-06-22 08:48:04,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:48:04,643.643 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:48:04,693.693 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:48:04,696.696 INFO    ] No camera update needed
[2026-06-22 08:48:04,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:48:04,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:48:04,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:48:04,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:48:06,746.746 INFO    ] ================================================
[2026-06-22 08:48:06,756.756 INFO    ] Launching Daemon at Mon Jun 22 08:48:06 IST 2026
[2026-06-22 08:48:06,763.763 INFO    ] ================================================
[2026-06-22 08:48:07,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:48:07
[2026-06-22 08:48:07,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:48:08,237.237 INFO    ] Initializing speech engine...
[2026-06-22 08:48:08,256.256 INFO    ] 2026-06-22 08:48:08
[2026-06-22 08:48:08,505.505 INFO    ] 2026-06-22 08:48:08
[2026-06-22 08:48:08,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:48:08,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:48:08,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:48:08,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:48:08,994.994 INFO    ] time= 22/06/2026 08:48:08
[2026-06-22 08:48:09,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:48:09,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:48:09,188.188 INFO    ] No existing commands found in stream
[2026-06-22 08:48:14,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:48:14,217.217 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-22 08:48:18,227.227 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:48:18,230.230 INFO    ] Checking for system updates...
[2026-06-22 08:48:18,281.281 INFO    ] 200
[2026-06-22 08:48:18,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:48:18,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:48:18,352.352 INFO    ] No update needed
[2026-06-22 08:48:18,355.355 INFO    ] Checking for camera pi updates...
[2026-06-22 08:48:18,390.390 INFO    ] 200
[2026-06-22 08:48:18,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:48:18,443.443 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:48:18,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:48:18,496.496 INFO    ] No camera update needed
[2026-06-22 08:48:18,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:48:18,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:48:18,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:48:18,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:48:20,553.553 INFO    ] ================================================
[2026-06-22 08:48:20,569.569 INFO    ] Launching Daemon at Mon Jun 22 08:48:20 IST 2026
[2026-06-22 08:48:20,580.580 INFO    ] ================================================
[2026-06-22 08:48:21,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:48:21
[2026-06-22 08:48:21,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:48:21,920.920 INFO    ] Initializing speech engine...
[2026-06-22 08:48:21,929.929 INFO    ] 2026-06-22 08:48:21
[2026-06-22 08:48:22,218.218 INFO    ] 2026-06-22 08:48:22
[2026-06-22 08:48:22,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:48:22,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:48:22,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:48:22,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:48:22,619.619 INFO    ] time= 22/06/2026 08:48:22
[2026-06-22 08:48:22,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:48:22,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:48:22,708.708 INFO    ] No existing commands found in stream
[2026-06-22 08:48:27,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:48:27,746.746 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-22 08:48:30,321.321 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:48:30,324.324 INFO    ] Checking for system updates...
[2026-06-22 08:48:30,360.360 INFO    ] 200
[2026-06-22 08:48:30,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:48:30,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:48:30,417.417 INFO    ] No update needed
[2026-06-22 08:48:30,420.420 INFO    ] Checking for camera pi updates...
[2026-06-22 08:48:30,453.453 INFO    ] 200
[2026-06-22 08:48:30,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:48:30,500.500 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:48:30,576.576 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:48:30,578.578 INFO    ] No camera update needed
[2026-06-22 08:48:30,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:48:30,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:48:30,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:48:30,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:48:32,635.635 INFO    ] ================================================
[2026-06-22 08:48:32,652.652 INFO    ] Launching Daemon at Mon Jun 22 08:48:32 IST 2026
[2026-06-22 08:48:32,665.665 INFO    ] ================================================
[2026-06-22 08:48:33,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:48:33
[2026-06-22 08:48:33,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:48:34,261.261 INFO    ] Initializing speech engine...
[2026-06-22 08:48:34,271.271 INFO    ] 2026-06-22 08:48:34
[2026-06-22 08:48:34,527.527 INFO    ] 2026-06-22 08:48:34
[2026-06-22 08:48:34,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:48:34,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:48:34,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:48:34,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:48:35,024.024 INFO    ] time= 22/06/2026 08:48:34
[2026-06-22 08:48:35,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:48:35,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:48:35,224.224 INFO    ] No existing commands found in stream
[2026-06-22 08:48:40,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:48:40,256.256 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-22 08:48:44,010.010 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:48:44,011.011 INFO    ] Checking for system updates...
[2026-06-22 08:48:44,032.032 INFO    ] 200
[2026-06-22 08:48:44,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:48:44,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:48:44,065.065 INFO    ] No update needed
[2026-06-22 08:48:44,066.066 INFO    ] Checking for camera pi updates...
[2026-06-22 08:48:44,086.086 INFO    ] 200
[2026-06-22 08:48:44,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:48:44,113.113 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:48:44,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:48:44,299.299 INFO    ] No camera update needed
[2026-06-22 08:48:44,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:48:44,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:48:44,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:48:44,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:48:46,358.358 INFO    ] ================================================
[2026-06-22 08:48:46,374.374 INFO    ] Launching Daemon at Mon Jun 22 08:48:46 IST 2026
[2026-06-22 08:48:46,385.385 INFO    ] ================================================
[2026-06-22 08:48:46,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:48:46
[2026-06-22 08:48:47,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:48:47,749.749 INFO    ] Initializing speech engine...
[2026-06-22 08:48:47,754.754 INFO    ] 2026-06-22 08:48:47
[2026-06-22 08:48:48,015.015 INFO    ] 2026-06-22 08:48:48
[2026-06-22 08:48:48,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:48:48,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:48:48,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:48:48,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:48:48,420.420 INFO    ] time= 22/06/2026 08:48:48
[2026-06-22 08:48:48,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:48:48,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:48:48,588.588 INFO    ] No existing commands found in stream
[2026-06-22 08:48:53,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:48:53,619.619 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-22 08:48:55,282.282 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:48:55,285.285 INFO    ] Checking for system updates...
[2026-06-22 08:48:55,320.320 INFO    ] 200
[2026-06-22 08:48:55,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:48:55,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:48:55,378.378 INFO    ] No update needed
[2026-06-22 08:48:55,380.380 INFO    ] Checking for camera pi updates...
[2026-06-22 08:48:55,414.414 INFO    ] 200
[2026-06-22 08:48:55,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:48:55,461.461 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:48:55,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:48:55,547.547 INFO    ] No camera update needed
[2026-06-22 08:48:55,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:48:55,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:48:55,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:48:55,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:48:57,603.603 INFO    ] ================================================
[2026-06-22 08:48:57,619.619 INFO    ] Launching Daemon at Mon Jun 22 08:48:57 IST 2026
[2026-06-22 08:48:57,630.630 INFO    ] ================================================
[2026-06-22 08:48:58,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:48:58
[2026-06-22 08:48:58,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:48:59,063.063 INFO    ] Initializing speech engine...
[2026-06-22 08:48:59,068.068 INFO    ] 2026-06-22 08:48:59
[2026-06-22 08:48:59,263.263 INFO    ] 2026-06-22 08:48:59
[2026-06-22 08:48:59,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:48:59,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:48:59,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:48:59,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:48:59,665.665 INFO    ] time= 22/06/2026 08:48:59
[2026-06-22 08:48:59,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:48:59,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:48:59,869.869 INFO    ] No existing commands found in stream
[2026-06-22 08:49:04,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:49:04,893.893 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-22 08:49:07,263.263 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:49:07,266.266 INFO    ] Checking for system updates...
[2026-06-22 08:49:07,302.302 INFO    ] 200
[2026-06-22 08:49:07,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:49:07,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:49:07,360.360 INFO    ] No update needed
[2026-06-22 08:49:07,362.362 INFO    ] Checking for camera pi updates...
[2026-06-22 08:49:07,399.399 INFO    ] 200
[2026-06-22 08:49:07,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:49:07,445.445 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:49:07,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:49:07,537.537 INFO    ] No camera update needed
[2026-06-22 08:49:07,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:49:07,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:49:07,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:49:07,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:49:09,592.592 INFO    ] ================================================
[2026-06-22 08:49:09,608.608 INFO    ] Launching Daemon at Mon Jun 22 08:49:09 IST 2026
[2026-06-22 08:49:09,618.618 INFO    ] ================================================
[2026-06-22 08:49:10,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:49:10
[2026-06-22 08:49:10,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:49:10,936.936 INFO    ] Initializing speech engine...
[2026-06-22 08:49:10,950.950 INFO    ] 2026-06-22 08:49:10
[2026-06-22 08:49:11,219.219 INFO    ] 2026-06-22 08:49:11
[2026-06-22 08:49:11,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:49:11,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:49:11,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:49:11,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:49:11,788.788 INFO    ] time= 22/06/2026 08:49:11
[2026-06-22 08:49:11,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:49:11,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:49:11,947.947 INFO    ] No existing commands found in stream
[2026-06-22 08:49:16,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:49:16,962.962 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-22 08:49:20,577.577 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:49:20,578.578 INFO    ] Checking for system updates...
[2026-06-22 08:49:20,601.601 INFO    ] 200
[2026-06-22 08:49:20,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:49:20,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:49:20,634.634 INFO    ] No update needed
[2026-06-22 08:49:20,635.635 INFO    ] Checking for camera pi updates...
[2026-06-22 08:49:20,669.669 INFO    ] 200
[2026-06-22 08:49:20,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:49:20,711.711 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:49:20,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:49:20,796.796 INFO    ] No camera update needed
[2026-06-22 08:49:20,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:49:20,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:49:20,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:49:20,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:49:22,852.852 INFO    ] ================================================
[2026-06-22 08:49:22,867.867 INFO    ] Launching Daemon at Mon Jun 22 08:49:22 IST 2026
[2026-06-22 08:49:22,878.878 INFO    ] ================================================
[2026-06-22 08:49:23,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:49:23
[2026-06-22 08:49:24,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:49:24,333.333 INFO    ] Initializing speech engine...
[2026-06-22 08:49:24,344.344 INFO    ] 2026-06-22 08:49:24
[2026-06-22 08:49:24,603.603 INFO    ] 2026-06-22 08:49:24
[2026-06-22 08:49:24,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:49:24,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:49:24,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:49:25,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:49:25,011.011 INFO    ] time= 22/06/2026 08:49:25
[2026-06-22 08:49:25,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:49:25,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:49:25,179.179 INFO    ] No existing commands found in stream
[2026-06-22 08:49:30,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:49:30,212.212 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-22 08:49:34,461.461 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:49:34,464.464 INFO    ] Checking for system updates...
[2026-06-22 08:49:34,500.500 INFO    ] 200
[2026-06-22 08:49:34,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:49:34,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:49:34,585.585 INFO    ] No update needed
[2026-06-22 08:49:34,588.588 INFO    ] Checking for camera pi updates...
[2026-06-22 08:49:34,625.625 INFO    ] 200
[2026-06-22 08:49:34,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:49:34,689.689 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:49:34,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:49:34,762.762 INFO    ] No camera update needed
[2026-06-22 08:49:34,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:49:34,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:49:34,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:49:34,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:49:36,820.820 INFO    ] ================================================
[2026-06-22 08:49:36,835.835 INFO    ] Launching Daemon at Mon Jun 22 08:49:36 IST 2026
[2026-06-22 08:49:36,846.846 INFO    ] ================================================
[2026-06-22 08:49:37,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:49:37
[2026-06-22 08:49:38,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:49:38,417.417 INFO    ] Initializing speech engine...
[2026-06-22 08:49:38,425.425 INFO    ] 2026-06-22 08:49:38
[2026-06-22 08:49:38,713.713 INFO    ] 2026-06-22 08:49:38
[2026-06-22 08:49:38,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:49:39,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:49:39,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:49:39,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:49:39,271.271 INFO    ] time= 22/06/2026 08:49:39
[2026-06-22 08:49:39,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:49:39,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:49:39,424.424 INFO    ] No existing commands found in stream
[2026-06-22 08:49:44,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:49:44,440.440 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-22 08:49:45,508.508 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:49:45,511.511 INFO    ] Checking for system updates...
[2026-06-22 08:49:45,552.552 INFO    ] 200
[2026-06-22 08:49:45,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:49:45,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:49:45,614.614 INFO    ] No update needed
[2026-06-22 08:49:45,617.617 INFO    ] Checking for camera pi updates...
[2026-06-22 08:49:45,651.651 INFO    ] 200
[2026-06-22 08:49:45,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:49:45,695.695 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:49:45,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:49:45,797.797 INFO    ] No camera update needed
[2026-06-22 08:49:45,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:49:45,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:49:45,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:49:45,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:49:47,856.856 INFO    ] ================================================
[2026-06-22 08:49:47,872.872 INFO    ] Launching Daemon at Mon Jun 22 08:49:47 IST 2026
[2026-06-22 08:49:47,883.883 INFO    ] ================================================
[2026-06-22 08:49:48,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:49:48
[2026-06-22 08:49:49,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:49:49,273.273 INFO    ] Initializing speech engine...
[2026-06-22 08:49:49,281.281 INFO    ] 2026-06-22 08:49:49
[2026-06-22 08:49:49,557.557 INFO    ] 2026-06-22 08:49:49
[2026-06-22 08:49:49,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:49:49,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:49:49,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:49:50,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:49:50,033.033 INFO    ] time= 22/06/2026 08:49:50
[2026-06-22 08:49:50,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:49:50,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:49:50,211.211 INFO    ] No existing commands found in stream
[2026-06-22 08:49:55,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:49:55,237.237 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-22 08:49:56,781.781 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:49:56,784.784 INFO    ] Checking for system updates...
[2026-06-22 08:49:56,820.820 INFO    ] 200
[2026-06-22 08:49:56,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:49:56,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:49:56,877.877 INFO    ] No update needed
[2026-06-22 08:49:56,879.879 INFO    ] Checking for camera pi updates...
[2026-06-22 08:49:56,913.913 INFO    ] 200
[2026-06-22 08:49:56,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:49:56,961.961 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:49:57,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:49:57,047.047 INFO    ] No camera update needed
[2026-06-22 08:49:57,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:49:57,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:49:57,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:49:57,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:49:59,104.104 INFO    ] ================================================
[2026-06-22 08:49:59,119.119 INFO    ] Launching Daemon at Mon Jun 22 08:49:59 IST 2026
[2026-06-22 08:49:59,130.130 INFO    ] ================================================
[2026-06-22 08:49:59,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:49:59
[2026-06-22 08:50:00,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:50:00,497.497 INFO    ] Initializing speech engine...
[2026-06-22 08:50:00,512.512 INFO    ] 2026-06-22 08:50:00
[2026-06-22 08:50:00,777.777 INFO    ] 2026-06-22 08:50:00
[2026-06-22 08:50:00,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:50:01,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:50:01,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:50:01,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:50:01,201.201 INFO    ] time= 22/06/2026 08:50:01
[2026-06-22 08:50:01,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:50:01,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:50:01,374.374 INFO    ] No existing commands found in stream
[2026-06-22 08:50:06,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:50:06,388.388 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-22 08:50:10,432.432 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:50:10,434.434 INFO    ] Checking for system updates...
[2026-06-22 08:50:10,471.471 INFO    ] 200
[2026-06-22 08:50:10,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:50:10,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:50:10,529.529 INFO    ] No update needed
[2026-06-22 08:50:10,531.531 INFO    ] Checking for camera pi updates...
[2026-06-22 08:50:10,565.565 INFO    ] 200
[2026-06-22 08:50:10,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:50:10,608.608 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:50:10,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:50:10,702.702 INFO    ] No camera update needed
[2026-06-22 08:50:10,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:50:10,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:50:10,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:50:10,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:50:12,760.760 INFO    ] ================================================
[2026-06-22 08:50:12,776.776 INFO    ] Launching Daemon at Mon Jun 22 08:50:12 IST 2026
[2026-06-22 08:50:12,787.787 INFO    ] ================================================
[2026-06-22 08:50:13,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:50:13
[2026-06-22 08:50:13,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:50:14,168.168 INFO    ] Initializing speech engine...
[2026-06-22 08:50:14,175.175 INFO    ] 2026-06-22 08:50:14
[2026-06-22 08:50:14,472.472 INFO    ] 2026-06-22 08:50:14
[2026-06-22 08:50:14,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:50:15,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:50:15,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:50:15,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:50:15,436.436 INFO    ] time= 22/06/2026 08:50:15
[2026-06-22 08:50:15,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:50:15,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:50:15,630.630 INFO    ] No existing commands found in stream
[2026-06-22 08:50:20,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:50:20,649.649 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-22 08:50:21,627.627 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:50:21,629.629 INFO    ] Checking for system updates...
[2026-06-22 08:50:21,649.649 INFO    ] 200
[2026-06-22 08:50:21,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:50:21,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:50:21,689.689 INFO    ] No update needed
[2026-06-22 08:50:21,691.691 INFO    ] Checking for camera pi updates...
[2026-06-22 08:50:21,725.725 INFO    ] 200
[2026-06-22 08:50:21,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:50:21,773.773 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:50:21,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:50:21,858.858 INFO    ] No camera update needed
[2026-06-22 08:50:21,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:50:21,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:50:21,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:50:21,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:50:23,914.914 INFO    ] ================================================
[2026-06-22 08:50:23,930.930 INFO    ] Launching Daemon at Mon Jun 22 08:50:23 IST 2026
[2026-06-22 08:50:23,941.941 INFO    ] ================================================
[2026-06-22 08:50:24,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:50:24
[2026-06-22 08:50:25,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:50:25,409.409 INFO    ] Initializing speech engine...
[2026-06-22 08:50:25,421.421 INFO    ] 2026-06-22 08:50:25
[2026-06-22 08:50:25,730.730 INFO    ] 2026-06-22 08:50:25
[2026-06-22 08:50:25,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:50:25,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:50:26,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:50:26,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:50:26,230.230 INFO    ] time= 22/06/2026 08:50:26
[2026-06-22 08:50:26,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:50:26,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:50:26,415.415 INFO    ] No existing commands found in stream
[2026-06-22 08:50:31,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:50:31,455.455 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-22 08:50:34,061.061 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:50:34,063.063 INFO    ] Checking for system updates...
[2026-06-22 08:50:34,101.101 INFO    ] 200
[2026-06-22 08:50:34,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:50:34,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:50:34,159.159 INFO    ] No update needed
[2026-06-22 08:50:34,161.161 INFO    ] Checking for camera pi updates...
[2026-06-22 08:50:34,195.195 INFO    ] 200
[2026-06-22 08:50:34,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:50:34,238.238 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:50:34,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:50:34,320.320 INFO    ] No camera update needed
[2026-06-22 08:50:34,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:50:34,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:50:34,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:50:34,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:50:36,376.376 INFO    ] ================================================
[2026-06-22 08:50:36,394.394 INFO    ] Launching Daemon at Mon Jun 22 08:50:36 IST 2026
[2026-06-22 08:50:36,408.408 INFO    ] ================================================
[2026-06-22 08:50:37,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:50:37
[2026-06-22 08:50:37,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:50:37,916.916 INFO    ] Initializing speech engine...
[2026-06-22 08:50:37,938.938 INFO    ] 2026-06-22 08:50:37
[2026-06-22 08:50:38,217.217 INFO    ] 2026-06-22 08:50:38
[2026-06-22 08:50:38,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:50:38,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:50:38,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:50:38,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:50:38,669.669 INFO    ] time= 22/06/2026 08:50:38
[2026-06-22 08:50:38,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:50:38,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:50:38,855.855 INFO    ] No existing commands found in stream
[2026-06-22 08:50:43,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:50:43,883.883 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-22 08:50:46,322.322 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:50:46,325.325 INFO    ] Checking for system updates...
[2026-06-22 08:50:46,362.362 INFO    ] 200
[2026-06-22 08:50:46,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:50:46,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:50:46,421.421 INFO    ] No update needed
[2026-06-22 08:50:46,423.423 INFO    ] Checking for camera pi updates...
[2026-06-22 08:50:46,458.458 INFO    ] 200
[2026-06-22 08:50:46,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:50:46,499.499 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:50:46,693.693 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:50:46,696.696 INFO    ] No camera update needed
[2026-06-22 08:50:46,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:50:46,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:50:46,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:50:46,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:50:48,751.751 INFO    ] ================================================
[2026-06-22 08:50:48,766.766 INFO    ] Launching Daemon at Mon Jun 22 08:50:48 IST 2026
[2026-06-22 08:50:48,778.778 INFO    ] ================================================
[2026-06-22 08:50:49,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:50:49
[2026-06-22 08:50:49,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:50:50,259.259 INFO    ] Initializing speech engine...
[2026-06-22 08:50:50,268.268 INFO    ] 2026-06-22 08:50:50
[2026-06-22 08:50:50,570.570 INFO    ] 2026-06-22 08:50:50
[2026-06-22 08:50:50,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:50:50,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:50:50,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:50:50,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:50:50,998.998 INFO    ] time= 22/06/2026 08:50:50
[2026-06-22 08:50:51,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:50:51,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:50:51,083.083 INFO    ] No existing commands found in stream
[2026-06-22 08:50:56,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:50:56,099.099 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-22 08:50:57,094.094 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:50:57,097.097 INFO    ] Checking for system updates...
[2026-06-22 08:50:57,133.133 INFO    ] 200
[2026-06-22 08:50:57,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:50:57,188.188 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:50:57,191.191 INFO    ] No update needed
[2026-06-22 08:50:57,193.193 INFO    ] Checking for camera pi updates...
[2026-06-22 08:50:57,227.227 INFO    ] 200
[2026-06-22 08:50:57,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:50:57,270.270 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:50:57,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:50:57,343.343 INFO    ] No camera update needed
[2026-06-22 08:50:57,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:50:57,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:50:57,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:50:57,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:50:59,400.400 INFO    ] ================================================
[2026-06-22 08:50:59,415.415 INFO    ] Launching Daemon at Mon Jun 22 08:50:59 IST 2026
[2026-06-22 08:50:59,427.427 INFO    ] ================================================
[2026-06-22 08:50:59,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:50:59
[2026-06-22 08:51:00,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:51:00,765.765 INFO    ] Initializing speech engine...
[2026-06-22 08:51:00,770.770 INFO    ] 2026-06-22 08:51:00
[2026-06-22 08:51:01,050.050 INFO    ] 2026-06-22 08:51:01
[2026-06-22 08:51:01,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:51:01,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:51:01,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:51:01,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:51:01,517.517 INFO    ] time= 22/06/2026 08:51:01
[2026-06-22 08:51:01,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:51:01,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:51:01,631.631 INFO    ] No existing commands found in stream
[2026-06-22 08:51:06,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:51:06,644.644 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-22 08:51:08,012.012 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:51:08,015.015 INFO    ] Checking for system updates...
[2026-06-22 08:51:08,056.056 INFO    ] 200
[2026-06-22 08:51:08,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:51:08,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:51:08,114.114 INFO    ] No update needed
[2026-06-22 08:51:08,117.117 INFO    ] Checking for camera pi updates...
[2026-06-22 08:51:08,151.151 INFO    ] 200
[2026-06-22 08:51:08,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:51:08,202.202 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:51:08,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:51:08,284.284 INFO    ] No camera update needed
[2026-06-22 08:51:08,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:51:08,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:51:08,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:51:08,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:51:10,340.340 INFO    ] ================================================
[2026-06-22 08:51:10,356.356 INFO    ] Launching Daemon at Mon Jun 22 08:51:10 IST 2026
[2026-06-22 08:51:10,368.368 INFO    ] ================================================
[2026-06-22 08:51:10,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:51:10
[2026-06-22 08:51:11,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:51:11,776.776 INFO    ] Initializing speech engine...
[2026-06-22 08:51:11,782.782 INFO    ] 2026-06-22 08:51:11
[2026-06-22 08:51:12,046.046 INFO    ] 2026-06-22 08:51:12
[2026-06-22 08:51:12,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:51:12,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:51:12,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:51:12,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:51:12,570.570 INFO    ] time= 22/06/2026 08:51:12
[2026-06-22 08:51:12,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:51:12,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:51:12,775.775 INFO    ] No existing commands found in stream
[2026-06-22 08:51:17,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:51:17,793.793 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-22 08:51:19,573.573 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:51:19,576.576 INFO    ] Checking for system updates...
[2026-06-22 08:51:19,612.612 INFO    ] 200
[2026-06-22 08:51:19,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:51:19,667.667 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:51:19,670.670 INFO    ] No update needed
[2026-06-22 08:51:19,672.672 INFO    ] Checking for camera pi updates...
[2026-06-22 08:51:19,706.706 INFO    ] 200
[2026-06-22 08:51:19,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:51:19,750.750 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:51:19,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:51:19,809.809 INFO    ] No camera update needed
[2026-06-22 08:51:19,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:51:19,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:51:19,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:51:19,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:51:21,867.867 INFO    ] ================================================
[2026-06-22 08:51:21,883.883 INFO    ] Launching Daemon at Mon Jun 22 08:51:21 IST 2026
[2026-06-22 08:51:21,895.895 INFO    ] ================================================
[2026-06-22 08:51:22,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:51:22
[2026-06-22 08:51:22,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:51:23,253.253 INFO    ] Initializing speech engine...
[2026-06-22 08:51:23,265.265 INFO    ] 2026-06-22 08:51:23
[2026-06-22 08:51:23,524.524 INFO    ] 2026-06-22 08:51:23
[2026-06-22 08:51:23,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:51:23,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:51:23,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:51:23,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:51:24,035.035 INFO    ] time= 22/06/2026 08:51:23
[2026-06-22 08:51:24,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:51:24,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:51:24,260.260 INFO    ] No existing commands found in stream
[2026-06-22 08:51:29,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:51:29,284.284 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-22 08:51:32,004.004 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:51:32,008.008 INFO    ] Checking for system updates...
[2026-06-22 08:51:32,050.050 INFO    ] 200
[2026-06-22 08:51:32,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:51:32,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:51:32,129.129 INFO    ] No update needed
[2026-06-22 08:51:32,132.132 INFO    ] Checking for camera pi updates...
[2026-06-22 08:51:32,193.193 INFO    ] 200
[2026-06-22 08:51:32,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:51:32,290.290 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:51:32,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:51:32,347.347 INFO    ] No camera update needed
[2026-06-22 08:51:32,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:51:32,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:51:32,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:51:32,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:51:34,407.407 INFO    ] ================================================
[2026-06-22 08:51:34,422.422 INFO    ] Launching Daemon at Mon Jun 22 08:51:34 IST 2026
[2026-06-22 08:51:34,433.433 INFO    ] ================================================
[2026-06-22 08:51:35,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:51:35
[2026-06-22 08:51:35,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:51:35,920.920 INFO    ] Initializing speech engine...
[2026-06-22 08:51:35,929.929 INFO    ] 2026-06-22 08:51:35
[2026-06-22 08:51:36,194.194 INFO    ] 2026-06-22 08:51:36
[2026-06-22 08:51:36,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:51:36,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:51:36,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:51:36,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:51:36,681.681 INFO    ] time= 22/06/2026 08:51:36
[2026-06-22 08:51:36,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:51:36,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:51:36,895.895 INFO    ] No existing commands found in stream
[2026-06-22 08:51:41,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:51:41,913.913 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-22 08:51:42,340.340 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:51:42,343.343 INFO    ] Checking for system updates...
[2026-06-22 08:51:42,383.383 INFO    ] 200
[2026-06-22 08:51:42,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:51:42,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:51:42,441.441 INFO    ] No update needed
[2026-06-22 08:51:42,443.443 INFO    ] Checking for camera pi updates...
[2026-06-22 08:51:42,477.477 INFO    ] 200
[2026-06-22 08:51:42,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:51:42,520.520 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:51:42,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:51:42,604.604 INFO    ] No camera update needed
[2026-06-22 08:51:42,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:51:42,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:51:42,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:51:42,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:51:44,659.659 INFO    ] ================================================
[2026-06-22 08:51:44,681.681 INFO    ] Launching Daemon at Mon Jun 22 08:51:44 IST 2026
[2026-06-22 08:51:44,692.692 INFO    ] ================================================
[2026-06-22 08:51:45,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:51:45
[2026-06-22 08:51:45,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:51:46,060.060 INFO    ] Initializing speech engine...
[2026-06-22 08:51:46,066.066 INFO    ] 2026-06-22 08:51:46
[2026-06-22 08:51:46,330.330 INFO    ] 2026-06-22 08:51:46
[2026-06-22 08:51:46,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:51:46,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:51:46,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:51:46,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:51:46,819.819 INFO    ] time= 22/06/2026 08:51:46
[2026-06-22 08:51:46,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:51:46,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:51:47,046.046 INFO    ] No existing commands found in stream
[2026-06-22 08:51:52,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:51:52,069.069 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-22 08:51:54,004.004 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:51:54,007.007 INFO    ] Checking for system updates...
[2026-06-22 08:51:54,043.043 INFO    ] 200
[2026-06-22 08:51:54,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:51:54,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:51:54,101.101 INFO    ] No update needed
[2026-06-22 08:51:54,103.103 INFO    ] Checking for camera pi updates...
[2026-06-22 08:51:54,137.137 INFO    ] 200
[2026-06-22 08:51:54,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:51:54,179.179 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:51:54,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:51:54,261.261 INFO    ] No camera update needed
[2026-06-22 08:51:54,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:51:54,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:51:54,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:51:54,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:51:56,318.318 INFO    ] ================================================
[2026-06-22 08:51:56,333.333 INFO    ] Launching Daemon at Mon Jun 22 08:51:56 IST 2026
[2026-06-22 08:51:56,344.344 INFO    ] ================================================
[2026-06-22 08:51:56,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:51:56
[2026-06-22 08:51:57,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:51:57,751.751 INFO    ] Initializing speech engine...
[2026-06-22 08:51:57,764.764 INFO    ] 2026-06-22 08:51:57
[2026-06-22 08:51:58,032.032 INFO    ] 2026-06-22 08:51:58
[2026-06-22 08:51:58,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:51:58,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:51:58,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:51:58,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:51:58,562.562 INFO    ] time= 22/06/2026 08:51:58
[2026-06-22 08:51:58,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:51:58,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:51:58,764.764 INFO    ] No existing commands found in stream
[2026-06-22 08:52:03,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:52:03,797.797 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-22 08:52:06,373.373 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:52:06,377.377 INFO    ] Checking for system updates...
[2026-06-22 08:52:06,414.414 INFO    ] 200
[2026-06-22 08:52:06,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:52:06,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:52:06,471.471 INFO    ] No update needed
[2026-06-22 08:52:06,473.473 INFO    ] Checking for camera pi updates...
[2026-06-22 08:52:06,507.507 INFO    ] 200
[2026-06-22 08:52:06,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:52:06,555.555 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:52:06,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:52:06,639.639 INFO    ] No camera update needed
[2026-06-22 08:52:06,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:52:06,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:52:06,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:52:06,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:52:08,695.695 INFO    ] ================================================
[2026-06-22 08:52:08,711.711 INFO    ] Launching Daemon at Mon Jun 22 08:52:08 IST 2026
[2026-06-22 08:52:08,722.722 INFO    ] ================================================
[2026-06-22 08:52:09,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:52:09
[2026-06-22 08:52:10,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:52:10,390.390 INFO    ] Initializing speech engine...
[2026-06-22 08:52:10,426.426 INFO    ] 2026-06-22 08:52:10
[2026-06-22 08:52:10,736.736 INFO    ] 2026-06-22 08:52:10
[2026-06-22 08:52:10,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:52:11,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:52:11,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:52:11,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:52:11,187.187 INFO    ] time= 22/06/2026 08:52:11
[2026-06-22 08:52:11,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:52:11,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:52:11,378.378 INFO    ] No existing commands found in stream
[2026-06-22 08:52:16,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:52:16,416.416 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-22 08:52:20,501.501 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:52:20,504.504 INFO    ] Checking for system updates...
[2026-06-22 08:52:20,544.544 INFO    ] 200
[2026-06-22 08:52:20,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:52:20,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:52:20,602.602 INFO    ] No update needed
[2026-06-22 08:52:20,605.605 INFO    ] Checking for camera pi updates...
[2026-06-22 08:52:20,638.638 INFO    ] 200
[2026-06-22 08:52:20,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:52:20,681.681 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:52:20,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:52:20,813.813 INFO    ] No camera update needed
[2026-06-22 08:52:20,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:52:20,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:52:20,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:52:20,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:52:22,870.870 INFO    ] ================================================
[2026-06-22 08:52:22,885.885 INFO    ] Launching Daemon at Mon Jun 22 08:52:22 IST 2026
[2026-06-22 08:52:22,896.896 INFO    ] ================================================
[2026-06-22 08:52:23,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:52:23
[2026-06-22 08:52:24,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:52:24,252.252 INFO    ] Initializing speech engine...
[2026-06-22 08:52:24,265.265 INFO    ] 2026-06-22 08:52:24
[2026-06-22 08:52:24,532.532 INFO    ] 2026-06-22 08:52:24
[2026-06-22 08:52:24,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:52:24,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:52:24,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:52:24,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:52:25,027.027 INFO    ] time= 22/06/2026 08:52:24
[2026-06-22 08:52:25,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:52:25,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:52:25,235.235 INFO    ] No existing commands found in stream
[2026-06-22 08:52:30,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:52:30,261.261 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-22 08:52:33,333.333 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:52:33,336.336 INFO    ] Checking for system updates...
[2026-06-22 08:52:33,378.378 INFO    ] 200
[2026-06-22 08:52:33,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:52:33,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:52:33,449.449 INFO    ] No update needed
[2026-06-22 08:52:33,451.451 INFO    ] Checking for camera pi updates...
[2026-06-22 08:52:33,495.495 INFO    ] 200
[2026-06-22 08:52:33,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:52:33,545.545 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:52:33,634.634 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:52:33,637.637 INFO    ] No camera update needed
[2026-06-22 08:52:33,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:52:33,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:52:33,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:52:33,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:52:35,696.696 INFO    ] ================================================
[2026-06-22 08:52:35,711.711 INFO    ] Launching Daemon at Mon Jun 22 08:52:35 IST 2026
[2026-06-22 08:52:35,722.722 INFO    ] ================================================
[2026-06-22 08:52:36,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:52:36
[2026-06-22 08:52:36,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:52:37,075.075 INFO    ] Initializing speech engine...
[2026-06-22 08:52:37,084.084 INFO    ] 2026-06-22 08:52:37
[2026-06-22 08:52:37,341.341 INFO    ] 2026-06-22 08:52:37
[2026-06-22 08:52:37,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:52:37,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:52:37,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:52:37,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:52:37,805.805 INFO    ] time= 22/06/2026 08:52:37
[2026-06-22 08:52:37,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:52:37,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:52:38,050.050 INFO    ] No existing commands found in stream
[2026-06-22 08:52:43,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:52:43,067.067 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-22 08:52:47,220.220 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:52:47,223.223 INFO    ] Checking for system updates...
[2026-06-22 08:52:47,259.259 INFO    ] 200
[2026-06-22 08:52:47,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:52:47,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:52:47,317.317 INFO    ] No update needed
[2026-06-22 08:52:47,319.319 INFO    ] Checking for camera pi updates...
[2026-06-22 08:52:47,353.353 INFO    ] 200
[2026-06-22 08:52:47,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:52:47,397.397 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:52:47,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:52:47,483.483 INFO    ] No camera update needed
[2026-06-22 08:52:47,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:52:47,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:52:47,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:52:47,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:52:49,538.538 INFO    ] ================================================
[2026-06-22 08:52:49,553.553 INFO    ] Launching Daemon at Mon Jun 22 08:52:49 IST 2026
[2026-06-22 08:52:49,564.564 INFO    ] ================================================
[2026-06-22 08:52:50,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:52:50
[2026-06-22 08:52:50,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:52:50,939.939 INFO    ] Initializing speech engine...
[2026-06-22 08:52:50,949.949 INFO    ] 2026-06-22 08:52:50
[2026-06-22 08:52:51,198.198 INFO    ] 2026-06-22 08:52:51
[2026-06-22 08:52:51,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:52:51,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:52:51,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:52:51,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:52:51,673.673 INFO    ] time= 22/06/2026 08:52:51
[2026-06-22 08:52:51,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:52:51,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:52:51,917.917 INFO    ] No existing commands found in stream
[2026-06-22 08:52:56,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:52:56,942.942 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-22 08:52:59,514.514 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:52:59,516.516 INFO    ] Checking for system updates...
[2026-06-22 08:52:59,538.538 INFO    ] 200
[2026-06-22 08:52:59,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:52:59,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:52:59,573.573 INFO    ] No update needed
[2026-06-22 08:52:59,574.574 INFO    ] Checking for camera pi updates...
[2026-06-22 08:52:59,611.611 INFO    ] 200
[2026-06-22 08:52:59,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:52:59,659.659 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:52:59,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:52:59,845.845 INFO    ] No camera update needed
[2026-06-22 08:52:59,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:52:59,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:52:59,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:52:59,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:53:01,902.902 INFO    ] ================================================
[2026-06-22 08:53:01,926.926 INFO    ] Launching Daemon at Mon Jun 22 08:53:01 IST 2026
[2026-06-22 08:53:01,943.943 INFO    ] ================================================
[2026-06-22 08:53:02,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:53:02
[2026-06-22 08:53:03,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:53:03,558.558 INFO    ] Initializing speech engine...
[2026-06-22 08:53:03,564.564 INFO    ] 2026-06-22 08:53:03
[2026-06-22 08:53:03,826.826 INFO    ] 2026-06-22 08:53:03
[2026-06-22 08:53:03,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:53:04,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:53:04,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:53:04,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:53:04,295.295 INFO    ] time= 22/06/2026 08:53:04
[2026-06-22 08:53:04,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:53:04,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:53:04,509.509 INFO    ] No existing commands found in stream
[2026-06-22 08:53:09,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:53:09,537.537 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-22 08:53:11,083.083 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:53:11,086.086 INFO    ] Checking for system updates...
[2026-06-22 08:53:11,125.125 INFO    ] 200
[2026-06-22 08:53:11,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:53:11,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:53:11,189.189 INFO    ] No update needed
[2026-06-22 08:53:11,191.191 INFO    ] Checking for camera pi updates...
[2026-06-22 08:53:11,229.229 INFO    ] 200
[2026-06-22 08:53:11,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:53:11,277.277 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:53:11,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:53:11,362.362 INFO    ] No camera update needed
[2026-06-22 08:53:11,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:53:11,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:53:11,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:53:11,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:53:13,418.418 INFO    ] ================================================
[2026-06-22 08:53:13,433.433 INFO    ] Launching Daemon at Mon Jun 22 08:53:13 IST 2026
[2026-06-22 08:53:13,444.444 INFO    ] ================================================
[2026-06-22 08:53:14,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:53:14
[2026-06-22 08:53:14,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:53:14,820.820 INFO    ] Initializing speech engine...
[2026-06-22 08:53:14,829.829 INFO    ] 2026-06-22 08:53:14
[2026-06-22 08:53:15,088.088 INFO    ] 2026-06-22 08:53:15
[2026-06-22 08:53:15,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:53:15,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:53:15,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:53:15,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:53:15,630.630 INFO    ] time= 22/06/2026 08:53:15
[2026-06-22 08:53:15,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:53:15,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:53:15,773.773 INFO    ] No existing commands found in stream
[2026-06-22 08:53:20,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:53:20,801.801 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-22 08:53:25,030.030 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:53:25,033.033 INFO    ] Checking for system updates...
[2026-06-22 08:53:25,084.084 INFO    ] 200
[2026-06-22 08:53:25,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:53:25,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:53:25,143.143 INFO    ] No update needed
[2026-06-22 08:53:25,146.146 INFO    ] Checking for camera pi updates...
[2026-06-22 08:53:25,179.179 INFO    ] 200
[2026-06-22 08:53:25,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:53:25,228.228 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:53:25,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:53:25,313.313 INFO    ] No camera update needed
[2026-06-22 08:53:25,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:53:25,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:53:25,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:53:25,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:53:27,370.370 INFO    ] ================================================
[2026-06-22 08:53:27,386.386 INFO    ] Launching Daemon at Mon Jun 22 08:53:27 IST 2026
[2026-06-22 08:53:27,396.396 INFO    ] ================================================
[2026-06-22 08:53:27,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:53:27
[2026-06-22 08:53:28,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:53:28,960.960 INFO    ] Initializing speech engine...
[2026-06-22 08:53:28,967.967 INFO    ] 2026-06-22 08:53:28
[2026-06-22 08:53:29,255.255 INFO    ] 2026-06-22 08:53:29
[2026-06-22 08:53:29,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:53:29,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:53:29,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:53:29,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:53:29,763.763 INFO    ] time= 22/06/2026 08:53:29
[2026-06-22 08:53:29,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:53:29,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:53:29,970.970 INFO    ] No existing commands found in stream
[2026-06-22 08:53:35,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:53:35,007.007 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-22 08:53:35,850.850 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:53:35,852.852 INFO    ] Checking for system updates...
[2026-06-22 08:53:35,874.874 INFO    ] 200
[2026-06-22 08:53:35,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:53:35,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:53:35,917.917 INFO    ] No update needed
[2026-06-22 08:53:35,919.919 INFO    ] Checking for camera pi updates...
[2026-06-22 08:53:35,956.956 INFO    ] 200
[2026-06-22 08:53:35,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:53:36,002.002 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:53:36,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:53:36,085.085 INFO    ] No camera update needed
[2026-06-22 08:53:36,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:53:36,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:53:36,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:53:36,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:53:38,140.140 INFO    ] ================================================
[2026-06-22 08:53:38,155.155 INFO    ] Launching Daemon at Mon Jun 22 08:53:38 IST 2026
[2026-06-22 08:53:38,165.165 INFO    ] ================================================
[2026-06-22 08:53:38,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:53:38
[2026-06-22 08:53:39,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:53:39,515.515 INFO    ] Initializing speech engine...
[2026-06-22 08:53:39,521.521 INFO    ] 2026-06-22 08:53:39
[2026-06-22 08:53:39,814.814 INFO    ] 2026-06-22 08:53:39
[2026-06-22 08:53:39,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:53:40,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:53:40,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:53:40,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:53:40,226.226 INFO    ] time= 22/06/2026 08:53:40
[2026-06-22 08:53:40,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:53:40,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:53:40,312.312 INFO    ] No existing commands found in stream
[2026-06-22 08:53:45,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:53:45,350.350 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-22 08:53:48,439.439 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:53:48,442.442 INFO    ] Checking for system updates...
[2026-06-22 08:53:48,481.481 INFO    ] 200
[2026-06-22 08:53:48,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:53:48,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:53:48,545.545 INFO    ] No update needed
[2026-06-22 08:53:48,548.548 INFO    ] Checking for camera pi updates...
[2026-06-22 08:53:48,586.586 INFO    ] 200
[2026-06-22 08:53:48,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:53:48,633.633 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:53:48,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:53:48,723.723 INFO    ] No camera update needed
[2026-06-22 08:53:48,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:53:48,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:53:48,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:53:48,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:53:50,778.778 INFO    ] ================================================
[2026-06-22 08:53:50,793.793 INFO    ] Launching Daemon at Mon Jun 22 08:53:50 IST 2026
[2026-06-22 08:53:50,804.804 INFO    ] ================================================
[2026-06-22 08:53:51,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:53:51
[2026-06-22 08:53:51,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:53:52,175.175 INFO    ] Initializing speech engine...
[2026-06-22 08:53:52,188.188 INFO    ] 2026-06-22 08:53:52
[2026-06-22 08:53:52,479.479 INFO    ] 2026-06-22 08:53:52
[2026-06-22 08:53:52,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:53:52,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:53:52,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:53:52,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:53:52,862.862 INFO    ] time= 22/06/2026 08:53:52
[2026-06-22 08:53:52,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:53:52,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:53:53,065.065 INFO    ] No existing commands found in stream
[2026-06-22 08:53:58,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:53:58,079.079 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-22 08:53:59,106.106 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:53:59,108.108 INFO    ] Checking for system updates...
[2026-06-22 08:53:59,145.145 INFO    ] 200
[2026-06-22 08:53:59,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:53:59,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:53:59,209.209 INFO    ] No update needed
[2026-06-22 08:53:59,211.211 INFO    ] Checking for camera pi updates...
[2026-06-22 08:53:59,248.248 INFO    ] 200
[2026-06-22 08:53:59,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:53:59,290.290 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:53:59,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:53:59,374.374 INFO    ] No camera update needed
[2026-06-22 08:53:59,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:53:59,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:53:59,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:53:59,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:54:01,448.448 INFO    ] ================================================
[2026-06-22 08:54:01,479.479 INFO    ] Launching Daemon at Mon Jun 22 08:54:01 IST 2026
[2026-06-22 08:54:01,499.499 INFO    ] ================================================
[2026-06-22 08:54:02,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:54:02
[2026-06-22 08:54:02,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:54:03,148.148 INFO    ] Initializing speech engine...
[2026-06-22 08:54:03,173.173 INFO    ] 2026-06-22 08:54:03
[2026-06-22 08:54:03,462.462 INFO    ] 2026-06-22 08:54:03
[2026-06-22 08:54:03,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:54:03,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:54:03,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:54:03,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:54:03,889.889 INFO    ] time= 22/06/2026 08:54:03
[2026-06-22 08:54:03,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:54:03,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:54:04,103.103 INFO    ] No existing commands found in stream
[2026-06-22 08:54:09,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:54:09,132.132 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-22 08:54:13,443.443 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:54:13,445.445 INFO    ] Checking for system updates...
[2026-06-22 08:54:13,466.466 INFO    ] 200
[2026-06-22 08:54:13,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:54:13,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:54:13,501.501 INFO    ] No update needed
[2026-06-22 08:54:13,502.502 INFO    ] Checking for camera pi updates...
[2026-06-22 08:54:13,522.522 INFO    ] 200
[2026-06-22 08:54:13,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:54:13,561.561 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:54:13,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:54:13,650.650 INFO    ] No camera update needed
[2026-06-22 08:54:13,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:54:13,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:54:13,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:54:13,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:54:15,706.706 INFO    ] ================================================
[2026-06-22 08:54:15,721.721 INFO    ] Launching Daemon at Mon Jun 22 08:54:15 IST 2026
[2026-06-22 08:54:15,732.732 INFO    ] ================================================
[2026-06-22 08:54:16,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:54:16
[2026-06-22 08:54:16,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:54:17,163.163 INFO    ] Initializing speech engine...
[2026-06-22 08:54:17,179.179 INFO    ] 2026-06-22 08:54:17
[2026-06-22 08:54:17,448.448 INFO    ] 2026-06-22 08:54:17
[2026-06-22 08:54:17,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:54:17,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:54:17,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:54:17,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:54:17,862.862 INFO    ] time= 22/06/2026 08:54:17
[2026-06-22 08:54:17,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:54:17,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:54:17,985.985 INFO    ] No existing commands found in stream
[2026-06-22 08:54:23,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:54:23,023.023 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-22 08:54:24,940.940 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:54:24,943.943 INFO    ] Checking for system updates...
[2026-06-22 08:54:24,982.982 INFO    ] 200
[2026-06-22 08:54:24,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:54:25,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:54:25,045.045 INFO    ] No update needed
[2026-06-22 08:54:25,048.048 INFO    ] Checking for camera pi updates...
[2026-06-22 08:54:25,082.082 INFO    ] 200
[2026-06-22 08:54:25,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:54:25,129.129 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:54:25,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:54:25,210.210 INFO    ] No camera update needed
[2026-06-22 08:54:25,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:54:25,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:54:25,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:54:25,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:54:27,267.267 INFO    ] ================================================
[2026-06-22 08:54:27,283.283 INFO    ] Launching Daemon at Mon Jun 22 08:54:27 IST 2026
[2026-06-22 08:54:27,294.294 INFO    ] ================================================
[2026-06-22 08:54:27,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:54:27
[2026-06-22 08:54:28,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:54:28,726.726 INFO    ] Initializing speech engine...
[2026-06-22 08:54:28,735.735 INFO    ] 2026-06-22 08:54:28
[2026-06-22 08:54:29,032.032 INFO    ] 2026-06-22 08:54:28
[2026-06-22 08:54:29,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:54:29,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:54:29,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:54:29,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:54:29,363.363 INFO    ] time= 22/06/2026 08:54:29
[2026-06-22 08:54:29,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:54:29,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:54:29,529.529 INFO    ] No existing commands found in stream
[2026-06-22 08:54:34,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:54:34,562.562 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-22 08:54:38,937.937 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:54:38,940.940 INFO    ] Checking for system updates...
[2026-06-22 08:54:38,976.976 INFO    ] 200
[2026-06-22 08:54:38,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:54:39,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:54:39,043.043 INFO    ] No update needed
[2026-06-22 08:54:39,046.046 INFO    ] Checking for camera pi updates...
[2026-06-22 08:54:39,087.087 INFO    ] 200
[2026-06-22 08:54:39,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:54:39,135.135 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:54:39,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:54:39,192.192 INFO    ] No camera update needed
[2026-06-22 08:54:39,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:54:39,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:54:39,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:54:39,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:54:41,248.248 INFO    ] ================================================
[2026-06-22 08:54:41,265.265 INFO    ] Launching Daemon at Mon Jun 22 08:54:41 IST 2026
[2026-06-22 08:54:41,276.276 INFO    ] ================================================
[2026-06-22 08:54:41,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:54:41
[2026-06-22 08:54:42,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:54:42,639.639 INFO    ] Initializing speech engine...
[2026-06-22 08:54:42,645.645 INFO    ] 2026-06-22 08:54:42
[2026-06-22 08:54:42,944.944 INFO    ] 2026-06-22 08:54:42
[2026-06-22 08:54:42,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:54:43,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:54:43,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:54:43,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:54:43,328.328 INFO    ] time= 22/06/2026 08:54:43
[2026-06-22 08:54:43,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:54:43,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:54:43,454.454 INFO    ] No existing commands found in stream
[2026-06-22 08:54:48,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:54:48,470.470 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-22 08:54:49,403.403 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:54:49,406.406 INFO    ] Checking for system updates...
[2026-06-22 08:54:49,447.447 INFO    ] 200
[2026-06-22 08:54:49,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:54:49,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:54:49,521.521 INFO    ] No update needed
[2026-06-22 08:54:49,524.524 INFO    ] Checking for camera pi updates...
[2026-06-22 08:54:49,564.564 INFO    ] 200
[2026-06-22 08:54:49,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:54:49,613.613 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:54:49,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:54:49,715.715 INFO    ] No camera update needed
[2026-06-22 08:54:49,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:54:49,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:54:49,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:54:49,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:54:51,771.771 INFO    ] ================================================
[2026-06-22 08:54:51,786.786 INFO    ] Launching Daemon at Mon Jun 22 08:54:51 IST 2026
[2026-06-22 08:54:51,798.798 INFO    ] ================================================
[2026-06-22 08:54:52,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:54:52
[2026-06-22 08:54:52,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:54:53,114.114 INFO    ] Initializing speech engine...
[2026-06-22 08:54:53,127.127 INFO    ] 2026-06-22 08:54:53
[2026-06-22 08:54:53,392.392 INFO    ] 2026-06-22 08:54:53
[2026-06-22 08:54:53,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:54:53,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:54:53,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:54:53,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:54:53,803.803 INFO    ] time= 22/06/2026 08:54:53
[2026-06-22 08:54:53,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:54:53,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:54:53,896.896 INFO    ] No existing commands found in stream
[2026-06-22 08:54:58,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:54:58,919.919 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-22 08:55:02,885.885 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:55:02,888.888 INFO    ] Checking for system updates...
[2026-06-22 08:55:02,932.932 INFO    ] 200
[2026-06-22 08:55:02,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:55:03,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:55:03,014.014 INFO    ] No update needed
[2026-06-22 08:55:03,018.018 INFO    ] Checking for camera pi updates...
[2026-06-22 08:55:03,056.056 INFO    ] 200
[2026-06-22 08:55:03,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:55:03,106.106 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:55:03,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:55:03,161.161 INFO    ] No camera update needed
[2026-06-22 08:55:03,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:55:03,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:55:03,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:55:03,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:55:05,217.217 INFO    ] ================================================
[2026-06-22 08:55:05,233.233 INFO    ] Launching Daemon at Mon Jun 22 08:55:05 IST 2026
[2026-06-22 08:55:05,244.244 INFO    ] ================================================
[2026-06-22 08:55:05,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:55:05
[2026-06-22 08:55:06,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:55:06,693.693 INFO    ] Initializing speech engine...
[2026-06-22 08:55:06,698.698 INFO    ] 2026-06-22 08:55:06
[2026-06-22 08:55:06,977.977 INFO    ] 2026-06-22 08:55:06
[2026-06-22 08:55:07,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:55:07,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:55:07,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:55:07,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:55:07,531.531 INFO    ] time= 22/06/2026 08:55:07
[2026-06-22 08:55:07,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:55:07,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:55:07,690.690 INFO    ] No existing commands found in stream
[2026-06-22 08:55:12,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:55:12,718.718 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-22 08:55:16,740.740 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:55:16,742.742 INFO    ] Checking for system updates...
[2026-06-22 08:55:16,764.764 INFO    ] 200
[2026-06-22 08:55:16,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:55:16,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:55:16,819.819 INFO    ] No update needed
[2026-06-22 08:55:16,822.822 INFO    ] Checking for camera pi updates...
[2026-06-22 08:55:16,861.861 INFO    ] 200
[2026-06-22 08:55:16,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:55:16,916.916 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:55:17,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:55:17,008.008 INFO    ] No camera update needed
[2026-06-22 08:55:17,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:55:17,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:55:17,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:55:17,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:55:19,064.064 INFO    ] ================================================
[2026-06-22 08:55:19,081.081 INFO    ] Launching Daemon at Mon Jun 22 08:55:19 IST 2026
[2026-06-22 08:55:19,091.091 INFO    ] ================================================
[2026-06-22 08:55:19,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:55:19
[2026-06-22 08:55:20,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:55:20,662.662 INFO    ] Initializing speech engine...
[2026-06-22 08:55:20,668.668 INFO    ] 2026-06-22 08:55:20
[2026-06-22 08:55:20,938.938 INFO    ] 2026-06-22 08:55:20
[2026-06-22 08:55:20,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:55:21,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:55:21,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:55:21,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:55:21,373.373 INFO    ] time= 22/06/2026 08:55:21
[2026-06-22 08:55:21,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:55:21,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:55:21,462.462 INFO    ] No existing commands found in stream
[2026-06-22 08:55:26,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:55:26,495.495 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-22 08:55:27,276.276 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:55:27,278.278 INFO    ] Checking for system updates...
[2026-06-22 08:55:27,314.314 INFO    ] 200
[2026-06-22 08:55:27,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:55:27,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:55:27,380.380 INFO    ] No update needed
[2026-06-22 08:55:27,383.383 INFO    ] Checking for camera pi updates...
[2026-06-22 08:55:27,421.421 INFO    ] 200
[2026-06-22 08:55:27,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:55:27,464.464 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:55:27,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:55:27,523.523 INFO    ] No camera update needed
[2026-06-22 08:55:27,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:55:27,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:55:27,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:55:27,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:55:29,580.580 INFO    ] ================================================
[2026-06-22 08:55:29,596.596 INFO    ] Launching Daemon at Mon Jun 22 08:55:29 IST 2026
[2026-06-22 08:55:29,607.607 INFO    ] ================================================
[2026-06-22 08:55:30,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:55:30
[2026-06-22 08:55:30,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:55:30,925.925 INFO    ] Initializing speech engine...
[2026-06-22 08:55:30,932.932 INFO    ] 2026-06-22 08:55:30
[2026-06-22 08:55:31,230.230 INFO    ] 2026-06-22 08:55:31
[2026-06-22 08:55:31,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:55:31,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:55:31,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:55:31,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:55:31,615.615 INFO    ] time= 22/06/2026 08:55:31
[2026-06-22 08:55:31,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:55:31,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:55:31,741.741 INFO    ] No existing commands found in stream
[2026-06-22 08:55:36,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:55:36,769.769 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-22 08:55:37,405.405 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:55:37,408.408 INFO    ] Checking for system updates...
[2026-06-22 08:55:37,445.445 INFO    ] 200
[2026-06-22 08:55:37,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:55:37,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:55:37,510.510 INFO    ] No update needed
[2026-06-22 08:55:37,512.512 INFO    ] Checking for camera pi updates...
[2026-06-22 08:55:37,550.550 INFO    ] 200
[2026-06-22 08:55:37,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:55:37,594.594 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:55:37,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:55:37,681.681 INFO    ] No camera update needed
[2026-06-22 08:55:37,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:55:37,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:55:37,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:55:37,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:55:39,737.737 INFO    ] ================================================
[2026-06-22 08:55:39,753.753 INFO    ] Launching Daemon at Mon Jun 22 08:55:39 IST 2026
[2026-06-22 08:55:39,765.765 INFO    ] ================================================
[2026-06-22 08:55:40,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:55:40
[2026-06-22 08:55:40,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:55:41,107.107 INFO    ] Initializing speech engine...
[2026-06-22 08:55:41,122.122 INFO    ] 2026-06-22 08:55:41
[2026-06-22 08:55:41,387.387 INFO    ] 2026-06-22 08:55:41
[2026-06-22 08:55:41,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:55:41,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:55:41,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:55:41,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:55:41,905.905 INFO    ] time= 22/06/2026 08:55:41
[2026-06-22 08:55:41,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:55:41,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:55:42,107.107 INFO    ] No existing commands found in stream
[2026-06-22 08:55:47,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:55:47,131.131 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-22 08:55:50,122.122 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:55:50,124.124 INFO    ] Checking for system updates...
[2026-06-22 08:55:50,161.161 INFO    ] 200
[2026-06-22 08:55:50,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:55:50,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:55:50,226.226 INFO    ] No update needed
[2026-06-22 08:55:50,228.228 INFO    ] Checking for camera pi updates...
[2026-06-22 08:55:50,262.262 INFO    ] 200
[2026-06-22 08:55:50,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:55:50,311.311 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:55:50,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:55:50,398.398 INFO    ] No camera update needed
[2026-06-22 08:55:50,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:55:50,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:55:50,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:55:50,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:55:52,462.462 INFO    ] ================================================
[2026-06-22 08:55:52,478.478 INFO    ] Launching Daemon at Mon Jun 22 08:55:52 IST 2026
[2026-06-22 08:55:52,490.490 INFO    ] ================================================
[2026-06-22 08:55:53,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:55:53
[2026-06-22 08:55:53,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:55:53,834.834 INFO    ] Initializing speech engine...
[2026-06-22 08:55:53,843.843 INFO    ] 2026-06-22 08:55:53
[2026-06-22 08:55:54,094.094 INFO    ] 2026-06-22 08:55:54
[2026-06-22 08:55:54,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:55:54,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:55:54,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:55:54,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:55:54,627.627 INFO    ] time= 22/06/2026 08:55:54
[2026-06-22 08:55:54,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:55:54,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:55:54,790.790 INFO    ] No existing commands found in stream
[2026-06-22 08:55:59,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:55:59,815.815 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-22 08:56:01,568.568 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:56:01,572.572 INFO    ] Checking for system updates...
[2026-06-22 08:56:01,640.640 INFO    ] 200
[2026-06-22 08:56:01,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:56:01,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:56:01,759.759 INFO    ] No update needed
[2026-06-22 08:56:01,763.763 INFO    ] Checking for camera pi updates...
[2026-06-22 08:56:01,813.813 INFO    ] 200
[2026-06-22 08:56:01,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:56:01,906.906 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:56:01,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:56:01,986.986 INFO    ] No camera update needed
[2026-06-22 08:56:01,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:56:01,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:56:01,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:56:02,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:56:04,050.050 INFO    ] ================================================
[2026-06-22 08:56:04,066.066 INFO    ] Launching Daemon at Mon Jun 22 08:56:04 IST 2026
[2026-06-22 08:56:04,078.078 INFO    ] ================================================
[2026-06-22 08:56:04,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:56:04
[2026-06-22 08:56:05,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:56:05,524.524 INFO    ] Initializing speech engine...
[2026-06-22 08:56:05,546.546 INFO    ] 2026-06-22 08:56:05
[2026-06-22 08:56:05,819.819 INFO    ] 2026-06-22 08:56:05
[2026-06-22 08:56:05,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:56:06,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:56:06,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:56:06,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:56:06,282.282 INFO    ] time= 22/06/2026 08:56:06
[2026-06-22 08:56:06,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:56:06,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:56:06,435.435 INFO    ] No existing commands found in stream
[2026-06-22 08:56:11,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:56:11,462.462 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-22 08:56:12,293.293 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:56:12,296.296 INFO    ] Checking for system updates...
[2026-06-22 08:56:12,337.337 INFO    ] 200
[2026-06-22 08:56:12,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:56:12,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:56:12,408.408 INFO    ] No update needed
[2026-06-22 08:56:12,411.411 INFO    ] Checking for camera pi updates...
[2026-06-22 08:56:12,449.449 INFO    ] 200
[2026-06-22 08:56:12,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:56:12,503.503 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:56:12,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:56:12,600.600 INFO    ] No camera update needed
[2026-06-22 08:56:12,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:56:12,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:56:12,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:56:12,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:56:14,657.657 INFO    ] ================================================
[2026-06-22 08:56:14,673.673 INFO    ] Launching Daemon at Mon Jun 22 08:56:14 IST 2026
[2026-06-22 08:56:14,684.684 INFO    ] ================================================
[2026-06-22 08:56:15,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:56:15
[2026-06-22 08:56:15,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:56:16,259.259 INFO    ] Initializing speech engine...
[2026-06-22 08:56:16,272.272 INFO    ] 2026-06-22 08:56:16
[2026-06-22 08:56:16,537.537 INFO    ] 2026-06-22 08:56:16
[2026-06-22 08:56:16,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:56:16,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:56:16,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:56:16,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:56:17,021.021 INFO    ] time= 22/06/2026 08:56:16
[2026-06-22 08:56:17,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:56:17,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:56:17,242.242 INFO    ] No existing commands found in stream
[2026-06-22 08:56:22,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:56:22,262.262 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-22 08:56:25,268.268 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:56:25,270.270 INFO    ] Checking for system updates...
[2026-06-22 08:56:25,292.292 INFO    ] 200
[2026-06-22 08:56:25,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:56:25,353.353 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:56:25,356.356 INFO    ] No update needed
[2026-06-22 08:56:25,359.359 INFO    ] Checking for camera pi updates...
[2026-06-22 08:56:25,395.395 INFO    ] 200
[2026-06-22 08:56:25,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:56:25,443.443 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:56:25,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:56:25,530.530 INFO    ] No camera update needed
[2026-06-22 08:56:25,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:56:25,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:56:25,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:56:25,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:56:27,585.585 INFO    ] ================================================
[2026-06-22 08:56:27,601.601 INFO    ] Launching Daemon at Mon Jun 22 08:56:27 IST 2026
[2026-06-22 08:56:27,612.612 INFO    ] ================================================
[2026-06-22 08:56:28,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:56:28
[2026-06-22 08:56:28,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:56:28,941.941 INFO    ] Initializing speech engine...
[2026-06-22 08:56:28,950.950 INFO    ] 2026-06-22 08:56:28
[2026-06-22 08:56:29,197.197 INFO    ] 2026-06-22 08:56:29
[2026-06-22 08:56:29,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:56:29,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:56:29,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:56:29,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:56:29,565.565 INFO    ] time= 22/06/2026 08:56:29
[2026-06-22 08:56:29,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:56:29,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:56:29,761.761 INFO    ] No existing commands found in stream
[2026-06-22 08:56:34,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:56:34,777.777 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-22 08:56:36,903.903 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:56:36,906.906 INFO    ] Checking for system updates...
[2026-06-22 08:56:36,945.945 INFO    ] 200
[2026-06-22 08:56:36,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:56:37,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:56:37,013.013 INFO    ] No update needed
[2026-06-22 08:56:37,016.016 INFO    ] Checking for camera pi updates...
[2026-06-22 08:56:37,053.053 INFO    ] 200
[2026-06-22 08:56:37,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:56:37,097.097 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:56:37,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:56:37,180.180 INFO    ] No camera update needed
[2026-06-22 08:56:37,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:56:37,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:56:37,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:56:37,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:56:39,238.238 INFO    ] ================================================
[2026-06-22 08:56:39,254.254 INFO    ] Launching Daemon at Mon Jun 22 08:56:39 IST 2026
[2026-06-22 08:56:39,265.265 INFO    ] ================================================
[2026-06-22 08:56:39,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:56:39
[2026-06-22 08:56:40,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:56:40,600.600 INFO    ] Initializing speech engine...
[2026-06-22 08:56:40,609.609 INFO    ] 2026-06-22 08:56:40
[2026-06-22 08:56:40,854.854 INFO    ] 2026-06-22 08:56:40
[2026-06-22 08:56:40,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:56:41,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:56:41,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:56:41,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:56:41,274.274 INFO    ] time= 22/06/2026 08:56:41
[2026-06-22 08:56:41,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:56:41,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:56:41,434.434 INFO    ] No existing commands found in stream
[2026-06-22 08:56:46,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:56:46,467.467 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-22 08:56:49,404.404 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:56:49,407.407 INFO    ] Checking for system updates...
[2026-06-22 08:56:49,446.446 INFO    ] 200
[2026-06-22 08:56:49,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:56:49,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:56:49,511.511 INFO    ] No update needed
[2026-06-22 08:56:49,513.513 INFO    ] Checking for camera pi updates...
[2026-06-22 08:56:49,547.547 INFO    ] 200
[2026-06-22 08:56:49,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:56:49,595.595 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:56:49,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:56:49,679.679 INFO    ] No camera update needed
[2026-06-22 08:56:49,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:56:49,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:56:49,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:56:49,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:56:51,736.736 INFO    ] ================================================
[2026-06-22 08:56:51,752.752 INFO    ] Launching Daemon at Mon Jun 22 08:56:51 IST 2026
[2026-06-22 08:56:51,763.763 INFO    ] ================================================
[2026-06-22 08:56:52,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:56:52
[2026-06-22 08:56:52,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:56:53,076.076 INFO    ] Initializing speech engine...
[2026-06-22 08:56:53,091.091 INFO    ] 2026-06-22 08:56:53
[2026-06-22 08:56:53,359.359 INFO    ] 2026-06-22 08:56:53
[2026-06-22 08:56:53,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:56:53,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:56:53,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:56:53,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:56:53,778.778 INFO    ] time= 22/06/2026 08:56:53
[2026-06-22 08:56:53,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:56:53,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:56:53,969.969 INFO    ] No existing commands found in stream
[2026-06-22 08:56:59,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:56:59,002.002 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-22 08:57:00,597.597 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 08:57:00,599.599 INFO    ] Checking for system updates...
[2026-06-22 08:57:00,630.630 INFO    ] 200
[2026-06-22 08:57:00,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:57:00,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:57:00,694.694 INFO    ] No update needed
[2026-06-22 08:57:00,696.696 INFO    ] Checking for camera pi updates...
[2026-06-22 08:57:00,730.730 INFO    ] 200
[2026-06-22 08:57:00,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:57:00,774.774 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:57:00,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:57:00,865.865 INFO    ] No camera update needed
[2026-06-22 08:57:00,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:57:00,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:57:00,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:57:00,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:57:02,924.924 INFO    ] ================================================
[2026-06-22 08:57:02,944.944 INFO    ] Launching Daemon at Mon Jun 22 08:57:02 IST 2026
[2026-06-22 08:57:02,956.956 INFO    ] ================================================
[2026-06-22 08:57:03,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:57:03
[2026-06-22 08:57:04,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:57:04,412.412 INFO    ] Initializing speech engine...
[2026-06-22 08:57:04,421.421 INFO    ] 2026-06-22 08:57:04
[2026-06-22 08:57:04,667.667 INFO    ] 2026-06-22 08:57:04
[2026-06-22 08:57:04,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:57:04,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:57:04,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:57:05,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:57:05,168.168 INFO    ] time= 22/06/2026 08:57:05
[2026-06-22 08:57:05,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:57:05,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:57:05,363.363 INFO    ] No existing commands found in stream
[2026-06-22 08:57:10,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:57:10,390.390 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-22 08:57:13,479.479 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:57:13,482.482 INFO    ] Checking for system updates...
[2026-06-22 08:57:13,521.521 INFO    ] 200
[2026-06-22 08:57:13,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:57:13,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:57:13,587.587 INFO    ] No update needed
[2026-06-22 08:57:13,589.589 INFO    ] Checking for camera pi updates...
[2026-06-22 08:57:13,623.623 INFO    ] 200
[2026-06-22 08:57:13,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:57:13,666.666 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:57:13,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:57:13,815.815 INFO    ] No camera update needed
[2026-06-22 08:57:13,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:57:13,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:57:13,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:57:13,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:57:15,871.871 INFO    ] ================================================
[2026-06-22 08:57:15,887.887 INFO    ] Launching Daemon at Mon Jun 22 08:57:15 IST 2026
[2026-06-22 08:57:15,898.898 INFO    ] ================================================
[2026-06-22 08:57:16,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:57:16
[2026-06-22 08:57:17,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:57:17,437.437 INFO    ] Initializing speech engine...
[2026-06-22 08:57:17,442.442 INFO    ] 2026-06-22 08:57:17
[2026-06-22 08:57:17,720.720 INFO    ] 2026-06-22 08:57:17
[2026-06-22 08:57:17,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:57:17,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:57:17,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:57:18,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:57:18,166.166 INFO    ] time= 22/06/2026 08:57:18
[2026-06-22 08:57:18,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:57:18,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:57:18,375.375 INFO    ] No existing commands found in stream
[2026-06-22 08:57:23,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:57:23,401.401 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-22 08:57:26,437.437 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:57:26,440.440 INFO    ] Checking for system updates...
[2026-06-22 08:57:26,480.480 INFO    ] 200
[2026-06-22 08:57:26,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:57:26,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:57:26,538.538 INFO    ] No update needed
[2026-06-22 08:57:26,540.540 INFO    ] Checking for camera pi updates...
[2026-06-22 08:57:26,578.578 INFO    ] 200
[2026-06-22 08:57:26,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:57:26,621.621 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:57:26,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:57:26,725.725 INFO    ] No camera update needed
[2026-06-22 08:57:26,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:57:26,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:57:26,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:57:26,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:57:28,780.780 INFO    ] ================================================
[2026-06-22 08:57:28,796.796 INFO    ] Launching Daemon at Mon Jun 22 08:57:28 IST 2026
[2026-06-22 08:57:28,807.807 INFO    ] ================================================
[2026-06-22 08:57:29,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:57:29
[2026-06-22 08:57:29,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:57:30,149.149 INFO    ] Initializing speech engine...
[2026-06-22 08:57:30,157.157 INFO    ] 2026-06-22 08:57:30
[2026-06-22 08:57:30,435.435 INFO    ] 2026-06-22 08:57:30
[2026-06-22 08:57:30,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:57:30,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:57:30,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:57:30,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:57:30,915.915 INFO    ] time= 22/06/2026 08:57:30
[2026-06-22 08:57:30,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:57:31,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:57:31,128.128 INFO    ] No existing commands found in stream
[2026-06-22 08:57:36,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:57:36,159.159 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-22 08:57:37,582.582 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:57:37,585.585 INFO    ] Checking for system updates...
[2026-06-22 08:57:37,626.626 INFO    ] 200
[2026-06-22 08:57:37,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:57:37,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:57:37,683.683 INFO    ] No update needed
[2026-06-22 08:57:37,686.686 INFO    ] Checking for camera pi updates...
[2026-06-22 08:57:37,720.720 INFO    ] 200
[2026-06-22 08:57:37,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:57:37,768.768 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:57:37,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:57:37,862.862 INFO    ] No camera update needed
[2026-06-22 08:57:37,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:57:37,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:57:37,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:57:37,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:57:39,917.917 INFO    ] ================================================
[2026-06-22 08:57:39,933.933 INFO    ] Launching Daemon at Mon Jun 22 08:57:39 IST 2026
[2026-06-22 08:57:39,943.943 INFO    ] ================================================
[2026-06-22 08:57:40,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:57:40
[2026-06-22 08:57:41,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:57:41,514.514 INFO    ] Initializing speech engine...
[2026-06-22 08:57:41,530.530 INFO    ] 2026-06-22 08:57:41
[2026-06-22 08:57:41,791.791 INFO    ] 2026-06-22 08:57:41
[2026-06-22 08:57:41,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:57:41,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:57:41,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:57:42,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:57:42,134.134 INFO    ] time= 22/06/2026 08:57:42
[2026-06-22 08:57:42,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:57:42,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:57:42,249.249 INFO    ] No existing commands found in stream
[2026-06-22 08:57:47,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:57:47,287.287 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-22 08:57:49,022.022 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 08:57:49,025.025 INFO    ] Checking for system updates...
[2026-06-22 08:57:49,061.061 INFO    ] 200
[2026-06-22 08:57:49,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:57:49,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:57:49,126.126 INFO    ] No update needed
[2026-06-22 08:57:49,129.129 INFO    ] Checking for camera pi updates...
[2026-06-22 08:57:49,170.170 INFO    ] 200
[2026-06-22 08:57:49,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:57:49,213.213 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:57:49,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:57:49,294.294 INFO    ] No camera update needed
[2026-06-22 08:57:49,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:57:49,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:57:49,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:57:49,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:57:51,350.350 INFO    ] ================================================
[2026-06-22 08:57:51,365.365 INFO    ] Launching Daemon at Mon Jun 22 08:57:51 IST 2026
[2026-06-22 08:57:51,376.376 INFO    ] ================================================
[2026-06-22 08:57:51,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:57:51
[2026-06-22 08:57:52,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:57:52,945.945 INFO    ] Initializing speech engine...
[2026-06-22 08:57:52,954.954 INFO    ] 2026-06-22 08:57:52
[2026-06-22 08:57:53,221.221 INFO    ] 2026-06-22 08:57:53
[2026-06-22 08:57:53,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:57:53,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:57:53,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:57:53,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:57:53,788.788 INFO    ] time= 22/06/2026 08:57:53
[2026-06-22 08:57:53,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:57:53,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:57:54,814.814 INFO    ] No existing commands found in stream
[2026-06-22 08:57:59,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:57:59,831.831 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-22 08:58:00,290.290 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:58:00,292.292 INFO    ] Checking for system updates...
[2026-06-22 08:58:00,314.314 INFO    ] 200
[2026-06-22 08:58:00,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:58:00,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:58:00,372.372 INFO    ] No update needed
[2026-06-22 08:58:00,375.375 INFO    ] Checking for camera pi updates...
[2026-06-22 08:58:00,411.411 INFO    ] 200
[2026-06-22 08:58:00,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:58:00,461.461 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:58:00,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:58:00,547.547 INFO    ] No camera update needed
[2026-06-22 08:58:00,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:58:00,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:58:00,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:58:00,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:58:02,619.619 INFO    ] ================================================
[2026-06-22 08:58:02,640.640 INFO    ] Launching Daemon at Mon Jun 22 08:58:02 IST 2026
[2026-06-22 08:58:02,655.655 INFO    ] ================================================
[2026-06-22 08:58:03,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:58:03
[2026-06-22 08:58:03,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:58:04,150.150 INFO    ] Initializing speech engine...
[2026-06-22 08:58:04,164.164 INFO    ] 2026-06-22 08:58:04
[2026-06-22 08:58:04,451.451 INFO    ] 2026-06-22 08:58:04
[2026-06-22 08:58:04,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:58:04,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:58:04,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:58:04,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:58:04,848.848 INFO    ] time= 22/06/2026 08:58:04
[2026-06-22 08:58:04,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:58:04,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:58:04,955.955 INFO    ] No existing commands found in stream
[2026-06-22 08:58:09,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:58:09,970.970 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-22 08:58:13,281.281 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 08:58:13,284.284 INFO    ] Checking for system updates...
[2026-06-22 08:58:13,324.324 INFO    ] 200
[2026-06-22 08:58:13,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:58:13,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:58:13,382.382 INFO    ] No update needed
[2026-06-22 08:58:13,385.385 INFO    ] Checking for camera pi updates...
[2026-06-22 08:58:13,422.422 INFO    ] 200
[2026-06-22 08:58:13,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:58:13,465.465 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:58:13,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:58:13,552.552 INFO    ] No camera update needed
[2026-06-22 08:58:13,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:58:13,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:58:13,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:58:13,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:58:15,608.608 INFO    ] ================================================
[2026-06-22 08:58:15,624.624 INFO    ] Launching Daemon at Mon Jun 22 08:58:15 IST 2026
[2026-06-22 08:58:15,635.635 INFO    ] ================================================
[2026-06-22 08:58:16,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:58:16
[2026-06-22 08:58:16,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:58:17,081.081 INFO    ] Initializing speech engine...
[2026-06-22 08:58:17,090.090 INFO    ] 2026-06-22 08:58:17
[2026-06-22 08:58:17,378.378 INFO    ] 2026-06-22 08:58:17
[2026-06-22 08:58:17,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:58:17,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:58:17,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:58:17,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:58:17,855.855 INFO    ] time= 22/06/2026 08:58:17
[2026-06-22 08:58:17,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:58:17,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:58:18,079.079 INFO    ] No existing commands found in stream
[2026-06-22 08:58:23,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:58:23,109.109 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-22 08:58:24,857.857 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:58:24,858.858 INFO    ] Checking for system updates...
[2026-06-22 08:58:24,881.881 INFO    ] 200
[2026-06-22 08:58:24,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:58:24,917.917 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:58:24,918.918 INFO    ] No update needed
[2026-06-22 08:58:24,920.920 INFO    ] Checking for camera pi updates...
[2026-06-22 08:58:24,943.943 INFO    ] 200
[2026-06-22 08:58:24,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:58:24,985.985 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:58:25,074.074 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:58:25,077.077 INFO    ] No camera update needed
[2026-06-22 08:58:25,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:58:25,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:58:25,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:58:25,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:58:27,134.134 INFO    ] ================================================
[2026-06-22 08:58:27,149.149 INFO    ] Launching Daemon at Mon Jun 22 08:58:27 IST 2026
[2026-06-22 08:58:27,160.160 INFO    ] ================================================
[2026-06-22 08:58:27,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:58:27
[2026-06-22 08:58:28,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:58:28,496.496 INFO    ] Initializing speech engine...
[2026-06-22 08:58:28,505.505 INFO    ] 2026-06-22 08:58:28
[2026-06-22 08:58:28,750.750 INFO    ] 2026-06-22 08:58:28
[2026-06-22 08:58:28,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:58:29,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:58:29,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:58:29,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:58:29,241.241 INFO    ] time= 22/06/2026 08:58:29
[2026-06-22 08:58:29,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:58:29,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:58:29,437.437 INFO    ] No existing commands found in stream
[2026-06-22 08:58:34,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:58:34,470.470 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-22 08:58:36,402.402 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:58:36,406.406 INFO    ] Checking for system updates...
[2026-06-22 08:58:36,447.447 INFO    ] 200
[2026-06-22 08:58:36,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:58:36,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:58:36,505.505 INFO    ] No update needed
[2026-06-22 08:58:36,508.508 INFO    ] Checking for camera pi updates...
[2026-06-22 08:58:36,542.542 INFO    ] 200
[2026-06-22 08:58:36,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:58:36,585.585 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:58:36,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:58:36,673.673 INFO    ] No camera update needed
[2026-06-22 08:58:36,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:58:36,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:58:36,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:58:36,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:58:38,729.729 INFO    ] ================================================
[2026-06-22 08:58:38,744.744 INFO    ] Launching Daemon at Mon Jun 22 08:58:38 IST 2026
[2026-06-22 08:58:38,755.755 INFO    ] ================================================
[2026-06-22 08:58:39,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:58:39
[2026-06-22 08:58:39,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:58:40,305.305 INFO    ] Initializing speech engine...
[2026-06-22 08:58:40,319.319 INFO    ] 2026-06-22 08:58:40
[2026-06-22 08:58:40,608.608 INFO    ] 2026-06-22 08:58:40
[2026-06-22 08:58:40,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:58:40,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:58:40,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:58:41,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:58:41,184.184 INFO    ] time= 22/06/2026 08:58:41
[2026-06-22 08:58:41,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:58:41,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:58:41,391.391 INFO    ] No existing commands found in stream
[2026-06-22 08:58:46,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:58:46,410.410 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-22 08:58:46,981.981 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:58:46,983.983 INFO    ] Checking for system updates...
[2026-06-22 08:58:47,019.019 INFO    ] 200
[2026-06-22 08:58:47,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:58:47,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:58:47,085.085 INFO    ] No update needed
[2026-06-22 08:58:47,087.087 INFO    ] Checking for camera pi updates...
[2026-06-22 08:58:47,122.122 INFO    ] 200
[2026-06-22 08:58:47,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:58:47,170.170 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:58:47,247.247 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:58:47,249.249 INFO    ] No camera update needed
[2026-06-22 08:58:47,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:58:47,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:58:47,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:58:47,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:58:49,305.305 INFO    ] ================================================
[2026-06-22 08:58:49,321.321 INFO    ] Launching Daemon at Mon Jun 22 08:58:49 IST 2026
[2026-06-22 08:58:49,332.332 INFO    ] ================================================
[2026-06-22 08:58:49,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:58:49
[2026-06-22 08:58:50,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:58:50,880.880 INFO    ] Initializing speech engine...
[2026-06-22 08:58:50,887.887 INFO    ] 2026-06-22 08:58:50
[2026-06-22 08:58:51,182.182 INFO    ] 2026-06-22 08:58:51
[2026-06-22 08:58:51,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:58:51,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:58:51,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:58:51,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:58:51,732.732 INFO    ] time= 22/06/2026 08:58:51
[2026-06-22 08:58:51,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:58:51,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:58:51,875.875 INFO    ] No existing commands found in stream
[2026-06-22 08:58:56,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:58:56,908.908 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-22 08:58:58,404.404 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:58:58,407.407 INFO    ] Checking for system updates...
[2026-06-22 08:58:58,445.445 INFO    ] 200
[2026-06-22 08:58:58,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:58:58,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:58:58,505.505 INFO    ] No update needed
[2026-06-22 08:58:58,508.508 INFO    ] Checking for camera pi updates...
[2026-06-22 08:58:58,547.547 INFO    ] 200
[2026-06-22 08:58:58,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:58:58,592.592 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:58:58,678.678 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:58:58,681.681 INFO    ] No camera update needed
[2026-06-22 08:58:58,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:58:58,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:58:58,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:58:58,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:59:00,740.740 INFO    ] ================================================
[2026-06-22 08:59:00,755.755 INFO    ] Launching Daemon at Mon Jun 22 08:59:00 IST 2026
[2026-06-22 08:59:00,766.766 INFO    ] ================================================
[2026-06-22 08:59:01,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:59:01
[2026-06-22 08:59:02,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:59:02,376.376 INFO    ] Initializing speech engine...
[2026-06-22 08:59:02,396.396 INFO    ] 2026-06-22 08:59:02
[2026-06-22 08:59:02,707.707 INFO    ] 2026-06-22 08:59:02
[2026-06-22 08:59:02,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:59:03,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:59:03,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:59:03,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:59:03,374.374 INFO    ] time= 22/06/2026 08:59:03
[2026-06-22 08:59:03,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:59:03,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:59:03,553.553 INFO    ] No existing commands found in stream
[2026-06-22 08:59:08,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:59:08,587.587 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-22 08:59:11,721.721 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 08:59:11,723.723 INFO    ] Checking for system updates...
[2026-06-22 08:59:11,765.765 INFO    ] 200
[2026-06-22 08:59:11,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:59:11,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:59:11,823.823 INFO    ] No update needed
[2026-06-22 08:59:11,825.825 INFO    ] Checking for camera pi updates...
[2026-06-22 08:59:11,859.859 INFO    ] 200
[2026-06-22 08:59:11,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:59:11,902.902 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:59:11,988.988 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:59:11,991.991 INFO    ] No camera update needed
[2026-06-22 08:59:11,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:59:11,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:59:12,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:59:12,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:59:14,047.047 INFO    ] ================================================
[2026-06-22 08:59:14,062.062 INFO    ] Launching Daemon at Mon Jun 22 08:59:14 IST 2026
[2026-06-22 08:59:14,073.073 INFO    ] ================================================
[2026-06-22 08:59:14,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:59:14
[2026-06-22 08:59:15,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:59:15,395.395 INFO    ] Initializing speech engine...
[2026-06-22 08:59:15,410.410 INFO    ] 2026-06-22 08:59:15
[2026-06-22 08:59:15,683.683 INFO    ] 2026-06-22 08:59:15
[2026-06-22 08:59:15,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:59:15,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:59:15,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:59:16,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:59:16,086.086 INFO    ] time= 22/06/2026 08:59:16
[2026-06-22 08:59:16,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:59:16,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:59:16,279.279 INFO    ] No existing commands found in stream
[2026-06-22 08:59:21,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:59:21,292.292 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-22 08:59:22,826.826 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:59:22,827.827 INFO    ] Checking for system updates...
[2026-06-22 08:59:22,849.849 INFO    ] 200
[2026-06-22 08:59:22,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:59:22,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:59:22,900.900 INFO    ] No update needed
[2026-06-22 08:59:22,902.902 INFO    ] Checking for camera pi updates...
[2026-06-22 08:59:22,939.939 INFO    ] 200
[2026-06-22 08:59:22,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:59:22,987.987 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:59:23,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:59:23,174.174 INFO    ] No camera update needed
[2026-06-22 08:59:23,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:59:23,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:59:23,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:59:23,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:59:25,235.235 INFO    ] ================================================
[2026-06-22 08:59:25,249.249 INFO    ] Launching Daemon at Mon Jun 22 08:59:25 IST 2026
[2026-06-22 08:59:25,260.260 INFO    ] ================================================
[2026-06-22 08:59:25,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:59:25
[2026-06-22 08:59:26,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:59:26,594.594 INFO    ] Initializing speech engine...
[2026-06-22 08:59:26,600.600 INFO    ] 2026-06-22 08:59:26
[2026-06-22 08:59:26,889.889 INFO    ] 2026-06-22 08:59:26
[2026-06-22 08:59:26,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:59:27,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:59:27,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:59:27,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:59:27,425.425 INFO    ] time= 22/06/2026 08:59:27
[2026-06-22 08:59:27,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:59:27,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:59:27,583.583 INFO    ] No existing commands found in stream
[2026-06-22 08:59:32,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:59:32,619.619 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-22 08:59:33,281.281 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 08:59:33,284.284 INFO    ] Checking for system updates...
[2026-06-22 08:59:33,320.320 INFO    ] 200
[2026-06-22 08:59:33,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:59:33,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:59:33,379.379 INFO    ] No update needed
[2026-06-22 08:59:33,385.385 INFO    ] Checking for camera pi updates...
[2026-06-22 08:59:33,419.419 INFO    ] 200
[2026-06-22 08:59:33,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:59:33,461.461 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:59:33,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 08:59:33,522.522 INFO    ] No camera update needed
[2026-06-22 08:59:33,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:59:33,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:59:33,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:59:33,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:59:35,577.577 INFO    ] ================================================
[2026-06-22 08:59:35,592.592 INFO    ] Launching Daemon at Mon Jun 22 08:59:35 IST 2026
[2026-06-22 08:59:35,604.604 INFO    ] ================================================
[2026-06-22 08:59:36,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:59:36
[2026-06-22 08:59:36,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:59:37,035.035 INFO    ] Initializing speech engine...
[2026-06-22 08:59:37,044.044 INFO    ] 2026-06-22 08:59:37
[2026-06-22 08:59:37,317.317 INFO    ] 2026-06-22 08:59:37
[2026-06-22 08:59:37,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:59:37,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:59:37,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:59:37,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:59:37,807.807 INFO    ] time= 22/06/2026 08:59:37
[2026-06-22 08:59:37,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:59:37,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:59:38,024.024 INFO    ] No existing commands found in stream
[2026-06-22 08:59:43,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:59:43,051.051 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-22 08:59:47,516.516 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 08:59:47,517.517 INFO    ] Checking for system updates...
[2026-06-22 08:59:47,540.540 INFO    ] 200
[2026-06-22 08:59:47,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:59:47,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:59:47,576.576 INFO    ] No update needed
[2026-06-22 08:59:47,578.578 INFO    ] Checking for camera pi updates...
[2026-06-22 08:59:47,613.613 INFO    ] 200
[2026-06-22 08:59:47,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 08:59:47,658.658 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 08:59:47,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 08:59:47,752.752 INFO    ] No camera update needed
[2026-06-22 08:59:47,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-22 08:59:47,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 08:59:47,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 08:59:47,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 08:59:49,812.812 INFO    ] ================================================
[2026-06-22 08:59:49,827.827 INFO    ] Launching Daemon at Mon Jun 22 08:59:49 IST 2026
[2026-06-22 08:59:49,840.840 INFO    ] ================================================
[2026-06-22 08:59:50,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 08:59:50
[2026-06-22 08:59:51,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 08:59:51,296.296 INFO    ] Initializing speech engine...
[2026-06-22 08:59:51,306.306 INFO    ] 2026-06-22 08:59:51
[2026-06-22 08:59:51,555.555 INFO    ] 2026-06-22 08:59:51
[2026-06-22 08:59:51,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 08:59:51,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 08:59:51,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 08:59:51,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 08:59:52,036.036 INFO    ] time= 22/06/2026 08:59:52
[2026-06-22 08:59:52,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 08:59:52,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-22 08:59:52,258.258 INFO    ] No existing commands found in stream
[2026-06-22 08:59:57,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 08:59:57,291.291 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-22 09:00:00,171.171 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:00:00,173.173 INFO    ] Checking for system updates...
[2026-06-22 09:00:00,209.209 INFO    ] 200
[2026-06-22 09:00:00,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:00:00,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:00:00,276.276 INFO    ] No update needed
[2026-06-22 09:00:00,278.278 INFO    ] Checking for camera pi updates...
[2026-06-22 09:00:00,313.313 INFO    ] 200
[2026-06-22 09:00:00,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:00:00,362.362 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:00:00,445.445 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:00:00,447.447 INFO    ] No camera update needed
[2026-06-22 09:00:00,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:00:00,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:00:00,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:00:00,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:00:02,642.642 INFO    ] ================================================
[2026-06-22 09:00:02,763.763 INFO    ] Launching Daemon at Mon Jun 22 09:00:02 IST 2026
[2026-06-22 09:00:03,995.995 INFO    ] ================================================
[2026-06-22 09:00:05,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:00:05
[2026-06-22 09:00:06,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:00:06,940.940 INFO    ] Initializing speech engine...
[2026-06-22 09:00:06,948.948 INFO    ] 2026-06-22 09:00:06
[2026-06-22 09:00:07,248.248 INFO    ] 2026-06-22 09:00:07
[2026-06-22 09:00:07,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:00:07,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:00:07,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:00:07,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:00:07,786.786 INFO    ] time= 22/06/2026 09:00:07
[2026-06-22 09:00:07,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:00:07,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:00:07,938.938 INFO    ] No existing commands found in stream
[2026-06-22 09:00:12,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:00:12,956.956 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-22 09:00:14,005.005 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:00:14,007.007 INFO    ] Checking for system updates...
[2026-06-22 09:00:14,028.028 INFO    ] 200
[2026-06-22 09:00:14,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:00:14,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:00:14,062.062 INFO    ] No update needed
[2026-06-22 09:00:14,063.063 INFO    ] Checking for camera pi updates...
[2026-06-22 09:00:14,084.084 INFO    ] 200
[2026-06-22 09:00:14,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:00:14,111.111 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:00:14,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:00:14,187.187 INFO    ] No camera update needed
[2026-06-22 09:00:14,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:00:14,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:00:14,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:00:14,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:00:16,247.247 INFO    ] ================================================
[2026-06-22 09:00:16,264.264 INFO    ] Launching Daemon at Mon Jun 22 09:00:16 IST 2026
[2026-06-22 09:00:16,278.278 INFO    ] ================================================
[2026-06-22 09:00:16,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:00:16
[2026-06-22 09:00:17,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:00:17,752.752 INFO    ] Initializing speech engine...
[2026-06-22 09:00:17,761.761 INFO    ] 2026-06-22 09:00:17
[2026-06-22 09:00:18,030.030 INFO    ] 2026-06-22 09:00:18
[2026-06-22 09:00:18,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:00:18,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:00:18,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:00:18,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:00:18,537.537 INFO    ] time= 22/06/2026 09:00:18
[2026-06-22 09:00:18,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:00:18,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:00:18,739.739 INFO    ] No existing commands found in stream
[2026-06-22 09:00:23,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:00:23,755.755 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-22 09:00:26,450.450 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:00:26,451.451 INFO    ] Checking for system updates...
[2026-06-22 09:00:26,472.472 INFO    ] 200
[2026-06-22 09:00:26,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:00:26,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:00:26,505.505 INFO    ] No update needed
[2026-06-22 09:00:26,506.506 INFO    ] Checking for camera pi updates...
[2026-06-22 09:00:26,533.533 INFO    ] 200
[2026-06-22 09:00:26,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:00:26,584.584 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:00:26,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:00:26,688.688 INFO    ] No camera update needed
[2026-06-22 09:00:26,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:00:26,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:00:26,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:00:26,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:00:28,750.750 INFO    ] ================================================
[2026-06-22 09:00:28,765.765 INFO    ] Launching Daemon at Mon Jun 22 09:00:28 IST 2026
[2026-06-22 09:00:28,776.776 INFO    ] ================================================
[2026-06-22 09:00:29,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:00:29
[2026-06-22 09:00:30,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:00:30,355.355 INFO    ] Initializing speech engine...
[2026-06-22 09:00:30,367.367 INFO    ] 2026-06-22 09:00:30
[2026-06-22 09:00:30,642.642 INFO    ] 2026-06-22 09:00:30
[2026-06-22 09:00:30,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:00:31,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:00:31,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:00:31,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:00:31,766.766 INFO    ] time= 22/06/2026 09:00:31
[2026-06-22 09:00:31,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:00:31,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:00:31,972.972 INFO    ] No existing commands found in stream
[2026-06-22 09:00:36,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:00:36,981.981 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-22 09:00:39,340.340 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:00:39,342.342 INFO    ] Checking for system updates...
[2026-06-22 09:00:39,384.384 INFO    ] 200
[2026-06-22 09:00:39,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:00:39,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:00:39,451.451 INFO    ] No update needed
[2026-06-22 09:00:39,454.454 INFO    ] Checking for camera pi updates...
[2026-06-22 09:00:39,489.489 INFO    ] 200
[2026-06-22 09:00:39,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:00:39,533.533 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:00:39,614.614 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:00:39,617.617 INFO    ] No camera update needed
[2026-06-22 09:00:39,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:00:39,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:00:39,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:00:39,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:00:41,681.681 INFO    ] ================================================
[2026-06-22 09:00:41,698.698 INFO    ] Launching Daemon at Mon Jun 22 09:00:41 IST 2026
[2026-06-22 09:00:41,709.709 INFO    ] ================================================
[2026-06-22 09:00:42,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:00:42
[2026-06-22 09:00:42,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:00:43,161.161 INFO    ] Initializing speech engine...
[2026-06-22 09:00:43,164.164 INFO    ] 2026-06-22 09:00:43
[2026-06-22 09:00:43,445.445 INFO    ] 2026-06-22 09:00:43
[2026-06-22 09:00:43,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:00:43,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:00:43,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:00:43,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:00:43,847.847 INFO    ] time= 22/06/2026 09:00:43
[2026-06-22 09:00:43,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:00:43,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:00:44,046.046 INFO    ] No existing commands found in stream
[2026-06-22 09:00:49,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:00:49,066.066 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-22 09:00:50,830.830 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:00:50,833.833 INFO    ] Checking for system updates...
[2026-06-22 09:00:50,869.869 INFO    ] 200
[2026-06-22 09:00:50,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:00:50,926.926 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:00:50,928.928 INFO    ] No update needed
[2026-06-22 09:00:50,930.930 INFO    ] Checking for camera pi updates...
[2026-06-22 09:00:50,965.965 INFO    ] 200
[2026-06-22 09:00:50,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:00:51,008.008 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:00:51,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:00:51,075.075 INFO    ] No camera update needed
[2026-06-22 09:00:51,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:00:51,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:00:51,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:00:51,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:00:53,134.134 INFO    ] ================================================
[2026-06-22 09:00:53,151.151 INFO    ] Launching Daemon at Mon Jun 22 09:00:53 IST 2026
[2026-06-22 09:00:53,162.162 INFO    ] ================================================
[2026-06-22 09:00:53,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:00:53
[2026-06-22 09:00:54,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:00:54,536.536 INFO    ] Initializing speech engine...
[2026-06-22 09:00:54,543.543 INFO    ] 2026-06-22 09:00:54
[2026-06-22 09:00:54,805.805 INFO    ] 2026-06-22 09:00:54
[2026-06-22 09:00:54,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:00:55,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:00:55,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:00:55,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:00:55,353.353 INFO    ] time= 22/06/2026 09:00:55
[2026-06-22 09:00:55,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:00:55,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:00:55,537.537 INFO    ] No existing commands found in stream
[2026-06-22 09:01:00,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:01:00,555.555 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-22 09:01:02,636.636 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:01:02,640.640 INFO    ] Checking for system updates...
[2026-06-22 09:01:02,687.687 INFO    ] 200
[2026-06-22 09:01:02,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:01:02,764.764 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:01:02,767.767 INFO    ] No update needed
[2026-06-22 09:01:02,771.771 INFO    ] Checking for camera pi updates...
[2026-06-22 09:01:02,814.814 INFO    ] 200
[2026-06-22 09:01:02,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:01:02,870.870 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:01:02,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:01:02,929.929 INFO    ] No camera update needed
[2026-06-22 09:01:02,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:01:02,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:01:02,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:01:02,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:01:04,990.990 INFO    ] ================================================
[2026-06-22 09:01:05,005.005 INFO    ] Launching Daemon at Mon Jun 22 09:01:04 IST 2026
[2026-06-22 09:01:05,016.016 INFO    ] ================================================
[2026-06-22 09:01:05,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:01:05
[2026-06-22 09:01:06,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:01:06,637.637 INFO    ] Initializing speech engine...
[2026-06-22 09:01:06,645.645 INFO    ] 2026-06-22 09:01:06
[2026-06-22 09:01:06,924.924 INFO    ] 2026-06-22 09:01:06
[2026-06-22 09:01:06,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:01:09,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:01:09,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:01:09,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:01:09,306.306 INFO    ] time= 22/06/2026 09:01:09
[2026-06-22 09:01:09,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:01:09,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:01:09,413.413 INFO    ] No existing commands found in stream
[2026-06-22 09:01:14,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:01:14,429.429 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-22 09:01:16,317.317 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:01:16,319.319 INFO    ] Checking for system updates...
[2026-06-22 09:01:16,341.341 INFO    ] 200
[2026-06-22 09:01:16,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:01:16,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:01:16,384.384 INFO    ] No update needed
[2026-06-22 09:01:16,386.386 INFO    ] Checking for camera pi updates...
[2026-06-22 09:01:16,420.420 INFO    ] 200
[2026-06-22 09:01:16,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:01:16,467.467 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:01:16,532.532 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:01:16,535.535 INFO    ] No camera update needed
[2026-06-22 09:01:16,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:01:16,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:01:16,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:01:16,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:01:18,591.591 INFO    ] ================================================
[2026-06-22 09:01:18,608.608 INFO    ] Launching Daemon at Mon Jun 22 09:01:18 IST 2026
[2026-06-22 09:01:18,620.620 INFO    ] ================================================
[2026-06-22 09:01:19,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:01:19
[2026-06-22 09:01:19,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:01:19,959.959 INFO    ] Initializing speech engine...
[2026-06-22 09:01:19,966.966 INFO    ] 2026-06-22 09:01:19
[2026-06-22 09:01:20,224.224 INFO    ] 2026-06-22 09:01:20
[2026-06-22 09:01:20,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:01:20,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:01:20,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:01:20,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:01:20,680.680 INFO    ] time= 22/06/2026 09:01:20
[2026-06-22 09:01:20,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:01:20,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:01:20,919.919 INFO    ] No existing commands found in stream
[2026-06-22 09:01:25,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:01:25,949.949 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-22 09:01:27,212.212 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:01:27,215.215 INFO    ] Checking for system updates...
[2026-06-22 09:01:27,252.252 INFO    ] 200
[2026-06-22 09:01:27,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:01:27,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:01:27,326.326 INFO    ] No update needed
[2026-06-22 09:01:27,329.329 INFO    ] Checking for camera pi updates...
[2026-06-22 09:01:27,365.365 INFO    ] 200
[2026-06-22 09:01:27,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:01:27,410.410 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:01:27,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:01:27,582.582 INFO    ] No camera update needed
[2026-06-22 09:01:27,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:01:27,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:01:27,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:01:27,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:01:29,641.641 INFO    ] ================================================
[2026-06-22 09:01:29,656.656 INFO    ] Launching Daemon at Mon Jun 22 09:01:29 IST 2026
[2026-06-22 09:01:29,667.667 INFO    ] ================================================
[2026-06-22 09:01:30,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:01:30
[2026-06-22 09:01:30,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:01:30,983.983 INFO    ] Initializing speech engine...
[2026-06-22 09:01:30,991.991 INFO    ] 2026-06-22 09:01:30
[2026-06-22 09:01:31,268.268 INFO    ] 2026-06-22 09:01:31
[2026-06-22 09:01:31,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:01:31,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:01:31,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:01:31,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:01:31,647.647 INFO    ] time= 22/06/2026 09:01:31
[2026-06-22 09:01:31,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:01:31,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:01:31,818.818 INFO    ] No existing commands found in stream
[2026-06-22 09:01:36,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:01:36,849.849 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-22 09:01:38,863.863 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:01:38,866.866 INFO    ] Checking for system updates...
[2026-06-22 09:01:38,902.902 INFO    ] 200
[2026-06-22 09:01:38,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:01:38,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:01:38,960.960 INFO    ] No update needed
[2026-06-22 09:01:38,963.963 INFO    ] Checking for camera pi updates...
[2026-06-22 09:01:39,000.000 INFO    ] 200
[2026-06-22 09:01:39,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:01:39,048.048 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:01:39,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:01:39,150.150 INFO    ] No camera update needed
[2026-06-22 09:01:39,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:01:39,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:01:39,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:01:39,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:01:41,205.205 INFO    ] ================================================
[2026-06-22 09:01:41,221.221 INFO    ] Launching Daemon at Mon Jun 22 09:01:41 IST 2026
[2026-06-22 09:01:41,233.233 INFO    ] ================================================
[2026-06-22 09:01:41,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:01:41
[2026-06-22 09:01:42,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:01:42,672.672 INFO    ] Initializing speech engine...
[2026-06-22 09:01:42,682.682 INFO    ] 2026-06-22 09:01:42
[2026-06-22 09:01:42,926.926 INFO    ] 2026-06-22 09:01:42
[2026-06-22 09:01:42,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:01:43,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:01:43,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:01:43,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:01:43,409.409 INFO    ] time= 22/06/2026 09:01:43
[2026-06-22 09:01:43,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:01:43,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:01:43,636.636 INFO    ] No existing commands found in stream
[2026-06-22 09:01:48,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:01:48,661.661 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-22 09:01:50,372.372 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:01:50,375.375 INFO    ] Checking for system updates...
[2026-06-22 09:01:50,416.416 INFO    ] 200
[2026-06-22 09:01:50,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:01:50,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:01:50,481.481 INFO    ] No update needed
[2026-06-22 09:01:50,483.483 INFO    ] Checking for camera pi updates...
[2026-06-22 09:01:50,517.517 INFO    ] 200
[2026-06-22 09:01:50,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:01:50,566.566 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:01:50,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:01:50,649.649 INFO    ] No camera update needed
[2026-06-22 09:01:50,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:01:50,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:01:50,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:01:50,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:01:52,708.708 INFO    ] ================================================
[2026-06-22 09:01:52,724.724 INFO    ] Launching Daemon at Mon Jun 22 09:01:52 IST 2026
[2026-06-22 09:01:52,736.736 INFO    ] ================================================
[2026-06-22 09:01:53,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:01:53
[2026-06-22 09:01:53,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:01:53,951.951 INFO    ] Initializing speech engine...
[2026-06-22 09:01:53,959.959 INFO    ] 2026-06-22 09:01:53
[2026-06-22 09:01:54,233.233 INFO    ] 2026-06-22 09:01:54
[2026-06-22 09:01:54,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:01:54,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:01:54,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:01:54,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:01:54,770.770 INFO    ] time= 22/06/2026 09:01:54
[2026-06-22 09:01:54,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:01:54,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:01:54,933.933 INFO    ] No existing commands found in stream
[2026-06-22 09:01:59,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:01:59,958.958 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-22 09:02:03,095.095 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:02:03,099.099 INFO    ] Checking for system updates...
[2026-06-22 09:02:03,146.146 INFO    ] 200
[2026-06-22 09:02:03,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:02:03,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:02:03,252.252 INFO    ] No update needed
[2026-06-22 09:02:03,258.258 INFO    ] Checking for camera pi updates...
[2026-06-22 09:02:03,311.311 INFO    ] 200
[2026-06-22 09:02:03,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:02:03,384.384 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:02:03,467.467 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:02:03,469.469 INFO    ] No camera update needed
[2026-06-22 09:02:03,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:02:03,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:02:03,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:02:03,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:02:05,526.526 INFO    ] ================================================
[2026-06-22 09:02:05,541.541 INFO    ] Launching Daemon at Mon Jun 22 09:02:05 IST 2026
[2026-06-22 09:02:05,553.553 INFO    ] ================================================
[2026-06-22 09:02:06,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:02:06
[2026-06-22 09:02:06,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:02:07,092.092 INFO    ] Initializing speech engine...
[2026-06-22 09:02:07,101.101 INFO    ] 2026-06-22 09:02:07
[2026-06-22 09:02:07,384.384 INFO    ] 2026-06-22 09:02:07
[2026-06-22 09:02:07,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:02:07,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:02:07,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:02:07,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:02:07,896.896 INFO    ] time= 22/06/2026 09:02:07
[2026-06-22 09:02:07,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:02:07,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:02:08,106.106 INFO    ] No existing commands found in stream
[2026-06-22 09:02:13,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:02:13,126.126 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-22 09:02:17,085.085 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:02:17,086.086 INFO    ] Checking for system updates...
[2026-06-22 09:02:17,117.117 INFO    ] 200
[2026-06-22 09:02:17,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:02:17,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:02:17,177.177 INFO    ] No update needed
[2026-06-22 09:02:17,180.180 INFO    ] Checking for camera pi updates...
[2026-06-22 09:02:17,219.219 INFO    ] 200
[2026-06-22 09:02:17,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:02:17,267.267 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:02:17,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:02:17,342.342 INFO    ] No camera update needed
[2026-06-22 09:02:17,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:02:17,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:02:17,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:02:17,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:02:19,399.399 INFO    ] ================================================
[2026-06-22 09:02:19,415.415 INFO    ] Launching Daemon at Mon Jun 22 09:02:19 IST 2026
[2026-06-22 09:02:19,427.427 INFO    ] ================================================
[2026-06-22 09:02:20,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:02:20
[2026-06-22 09:02:20,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:02:20,804.804 INFO    ] Initializing speech engine...
[2026-06-22 09:02:20,810.810 INFO    ] 2026-06-22 09:02:20
[2026-06-22 09:02:21,072.072 INFO    ] 2026-06-22 09:02:21
[2026-06-22 09:02:21,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:02:21,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:02:21,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:02:21,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:02:21,562.562 INFO    ] time= 22/06/2026 09:02:21
[2026-06-22 09:02:21,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:02:21,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:02:21,763.763 INFO    ] No existing commands found in stream
[2026-06-22 09:02:26,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:02:26,787.787 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-22 09:02:31,152.152 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:02:31,155.155 INFO    ] Checking for system updates...
[2026-06-22 09:02:31,192.192 INFO    ] 200
[2026-06-22 09:02:31,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:02:31,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:02:31,257.257 INFO    ] No update needed
[2026-06-22 09:02:31,259.259 INFO    ] Checking for camera pi updates...
[2026-06-22 09:02:31,296.296 INFO    ] 200
[2026-06-22 09:02:31,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:02:31,340.340 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:02:31,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:02:31,392.392 INFO    ] No camera update needed
[2026-06-22 09:02:31,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:02:31,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:02:31,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:02:31,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:02:33,450.450 INFO    ] ================================================
[2026-06-22 09:02:33,466.466 INFO    ] Launching Daemon at Mon Jun 22 09:02:33 IST 2026
[2026-06-22 09:02:33,478.478 INFO    ] ================================================
[2026-06-22 09:02:34,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:02:34
[2026-06-22 09:02:34,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:02:34,944.944 INFO    ] Initializing speech engine...
[2026-06-22 09:02:34,951.951 INFO    ] 2026-06-22 09:02:34
[2026-06-22 09:02:35,214.214 INFO    ] 2026-06-22 09:02:35
[2026-06-22 09:02:35,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:02:35,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:02:35,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:02:35,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:02:35,691.691 INFO    ] time= 22/06/2026 09:02:35
[2026-06-22 09:02:35,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:02:35,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:02:35,880.880 INFO    ] No existing commands found in stream
[2026-06-22 09:02:40,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:02:40,913.913 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-22 09:02:44,507.507 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:02:44,508.508 INFO    ] Checking for system updates...
[2026-06-22 09:02:44,531.531 INFO    ] 200
[2026-06-22 09:02:44,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:02:44,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:02:44,582.582 INFO    ] No update needed
[2026-06-22 09:02:44,585.585 INFO    ] Checking for camera pi updates...
[2026-06-22 09:02:44,619.619 INFO    ] 200
[2026-06-22 09:02:44,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:02:44,662.662 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:02:44,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:02:44,795.795 INFO    ] No camera update needed
[2026-06-22 09:02:44,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:02:44,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:02:44,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:02:44,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:02:46,852.852 INFO    ] ================================================
[2026-06-22 09:02:46,868.868 INFO    ] Launching Daemon at Mon Jun 22 09:02:46 IST 2026
[2026-06-22 09:02:46,879.879 INFO    ] ================================================
[2026-06-22 09:02:47,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:02:47
[2026-06-22 09:02:47,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:02:48,224.224 INFO    ] Initializing speech engine...
[2026-06-22 09:02:48,230.230 INFO    ] 2026-06-22 09:02:48
[2026-06-22 09:02:48,482.482 INFO    ] 2026-06-22 09:02:48
[2026-06-22 09:02:48,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:02:48,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:02:48,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:02:48,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:02:48,974.974 INFO    ] time= 22/06/2026 09:02:48
[2026-06-22 09:02:49,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:02:49,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:02:49,174.174 INFO    ] No existing commands found in stream
[2026-06-22 09:02:54,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:02:54,201.201 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-22 09:02:58,102.102 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:02:58,104.104 INFO    ] Checking for system updates...
[2026-06-22 09:02:58,140.140 INFO    ] 200
[2026-06-22 09:02:58,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:02:58,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:02:58,207.207 INFO    ] No update needed
[2026-06-22 09:02:58,209.209 INFO    ] Checking for camera pi updates...
[2026-06-22 09:02:58,248.248 INFO    ] 200
[2026-06-22 09:02:58,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:02:58,291.291 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:02:58,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:02:58,372.372 INFO    ] No camera update needed
[2026-06-22 09:02:58,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:02:58,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:02:58,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:02:58,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:03:00,427.427 INFO    ] ================================================
[2026-06-22 09:03:00,443.443 INFO    ] Launching Daemon at Mon Jun 22 09:03:00 IST 2026
[2026-06-22 09:03:00,455.455 INFO    ] ================================================
[2026-06-22 09:03:01,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:03:01
[2026-06-22 09:03:01,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:03:02,078.078 INFO    ] Initializing speech engine...
[2026-06-22 09:03:02,092.092 INFO    ] 2026-06-22 09:03:02
[2026-06-22 09:03:02,415.415 INFO    ] 2026-06-22 09:03:02
[2026-06-22 09:03:02,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:03:02,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:03:02,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:03:02,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:03:02,940.940 INFO    ] time= 22/06/2026 09:03:02
[2026-06-22 09:03:03,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:03:03,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:03:03,187.187 INFO    ] No existing commands found in stream
[2026-06-22 09:03:08,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:03:08,214.214 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-22 09:03:10,608.608 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:03:10,609.609 INFO    ] Checking for system updates...
[2026-06-22 09:03:10,630.630 INFO    ] 200
[2026-06-22 09:03:10,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:03:10,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:03:10,663.663 INFO    ] No update needed
[2026-06-22 09:03:10,665.665 INFO    ] Checking for camera pi updates...
[2026-06-22 09:03:10,698.698 INFO    ] 200
[2026-06-22 09:03:10,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:03:10,741.741 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:03:10,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:03:10,841.841 INFO    ] No camera update needed
[2026-06-22 09:03:10,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:03:10,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:03:10,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:03:10,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:03:12,896.896 INFO    ] ================================================
[2026-06-22 09:03:12,912.912 INFO    ] Launching Daemon at Mon Jun 22 09:03:12 IST 2026
[2026-06-22 09:03:12,923.923 INFO    ] ================================================
[2026-06-22 09:03:13,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:03:13
[2026-06-22 09:03:14,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:03:14,480.480 INFO    ] Initializing speech engine...
[2026-06-22 09:03:14,492.492 INFO    ] 2026-06-22 09:03:14
[2026-06-22 09:03:14,780.780 INFO    ] 2026-06-22 09:03:14
[2026-06-22 09:03:14,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:03:15,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:03:15,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:03:15,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:03:15,526.526 INFO    ] time= 22/06/2026 09:03:15
[2026-06-22 09:03:15,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:03:15,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:03:15,738.738 INFO    ] No existing commands found in stream
[2026-06-22 09:03:20,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:03:20,778.778 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-22 09:03:24,123.123 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:03:24,125.125 INFO    ] Checking for system updates...
[2026-06-22 09:03:24,146.146 INFO    ] 200
[2026-06-22 09:03:24,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:03:24,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:03:24,179.179 INFO    ] No update needed
[2026-06-22 09:03:24,180.180 INFO    ] Checking for camera pi updates...
[2026-06-22 09:03:24,207.207 INFO    ] 200
[2026-06-22 09:03:24,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:03:24,251.251 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:03:24,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:03:24,332.332 INFO    ] No camera update needed
[2026-06-22 09:03:24,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:03:24,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:03:24,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:03:24,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:03:26,387.387 INFO    ] ================================================
[2026-06-22 09:03:26,403.403 INFO    ] Launching Daemon at Mon Jun 22 09:03:26 IST 2026
[2026-06-22 09:03:26,414.414 INFO    ] ================================================
[2026-06-22 09:03:26,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:03:26
[2026-06-22 09:03:27,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:03:27,845.845 INFO    ] Initializing speech engine...
[2026-06-22 09:03:27,852.852 INFO    ] 2026-06-22 09:03:27
[2026-06-22 09:03:28,138.138 INFO    ] 2026-06-22 09:03:28
[2026-06-22 09:03:28,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:03:28,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:03:28,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:03:28,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:03:28,599.599 INFO    ] time= 22/06/2026 09:03:28
[2026-06-22 09:03:28,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:03:28,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:03:28,832.832 INFO    ] No existing commands found in stream
[2026-06-22 09:03:33,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:03:33,860.860 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-22 09:03:35,858.858 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:03:35,861.861 INFO    ] Checking for system updates...
[2026-06-22 09:03:35,900.900 INFO    ] 200
[2026-06-22 09:03:35,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:03:35,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:03:35,964.964 INFO    ] No update needed
[2026-06-22 09:03:35,966.966 INFO    ] Checking for camera pi updates...
[2026-06-22 09:03:36,003.003 INFO    ] 200
[2026-06-22 09:03:36,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:03:36,050.050 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:03:36,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:03:36,131.131 INFO    ] No camera update needed
[2026-06-22 09:03:36,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:03:36,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:03:36,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:03:36,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:03:38,187.187 INFO    ] ================================================
[2026-06-22 09:03:38,202.202 INFO    ] Launching Daemon at Mon Jun 22 09:03:38 IST 2026
[2026-06-22 09:03:38,214.214 INFO    ] ================================================
[2026-06-22 09:03:38,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:03:38
[2026-06-22 09:03:39,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:03:39,686.686 INFO    ] Initializing speech engine...
[2026-06-22 09:03:39,701.701 INFO    ] 2026-06-22 09:03:39
[2026-06-22 09:03:39,984.984 INFO    ] 2026-06-22 09:03:39
[2026-06-22 09:03:40,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:03:40,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:03:40,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:03:40,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:03:40,493.493 INFO    ] time= 22/06/2026 09:03:40
[2026-06-22 09:03:40,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:03:40,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:03:40,743.743 INFO    ] No existing commands found in stream
[2026-06-22 09:03:45,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:03:45,764.764 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-22 09:03:50,238.238 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:03:50,241.241 INFO    ] Checking for system updates...
[2026-06-22 09:03:50,287.287 INFO    ] 200
[2026-06-22 09:03:50,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:03:50,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:03:50,355.355 INFO    ] No update needed
[2026-06-22 09:03:50,359.359 INFO    ] Checking for camera pi updates...
[2026-06-22 09:03:50,393.393 INFO    ] 200
[2026-06-22 09:03:50,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:03:50,443.443 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:03:50,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:03:50,523.523 INFO    ] No camera update needed
[2026-06-22 09:03:50,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:03:50,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:03:50,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:03:50,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:03:52,582.582 INFO    ] ================================================
[2026-06-22 09:03:52,596.596 INFO    ] Launching Daemon at Mon Jun 22 09:03:52 IST 2026
[2026-06-22 09:03:52,607.607 INFO    ] ================================================
[2026-06-22 09:03:53,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:03:53
[2026-06-22 09:03:53,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:03:54,061.061 INFO    ] Initializing speech engine...
[2026-06-22 09:03:54,070.070 INFO    ] 2026-06-22 09:03:54
[2026-06-22 09:03:54,333.333 INFO    ] 2026-06-22 09:03:54
[2026-06-22 09:03:54,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:03:54,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:03:54,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:03:54,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:03:54,798.798 INFO    ] time= 22/06/2026 09:03:54
[2026-06-22 09:03:54,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:03:54,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:03:55,008.008 INFO    ] No existing commands found in stream
[2026-06-22 09:04:00,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:04:00,041.041 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-22 09:04:01,138.138 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:04:01,141.141 INFO    ] Checking for system updates...
[2026-06-22 09:04:01,176.176 INFO    ] 200
[2026-06-22 09:04:01,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:04:01,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:04:01,234.234 INFO    ] No update needed
[2026-06-22 09:04:01,237.237 INFO    ] Checking for camera pi updates...
[2026-06-22 09:04:01,276.276 INFO    ] 200
[2026-06-22 09:04:01,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:04:01,336.336 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:04:01,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:04:01,424.424 INFO    ] No camera update needed
[2026-06-22 09:04:01,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:04:01,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:04:01,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:04:01,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:04:03,487.487 INFO    ] ================================================
[2026-06-22 09:04:03,502.502 INFO    ] Launching Daemon at Mon Jun 22 09:04:03 IST 2026
[2026-06-22 09:04:03,513.513 INFO    ] ================================================
[2026-06-22 09:04:04,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:04:04
[2026-06-22 09:04:04,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:04:04,983.983 INFO    ] Initializing speech engine...
[2026-06-22 09:04:04,993.993 INFO    ] 2026-06-22 09:04:04
[2026-06-22 09:04:05,257.257 INFO    ] 2026-06-22 09:04:05
[2026-06-22 09:04:05,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:04:05,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:04:05,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:04:05,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:04:05,663.663 INFO    ] time= 22/06/2026 09:04:05
[2026-06-22 09:04:05,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:04:05,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:04:05,857.857 INFO    ] No existing commands found in stream
[2026-06-22 09:04:10,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:04:10,885.885 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-22 09:04:14,577.577 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:04:14,580.580 INFO    ] Checking for system updates...
[2026-06-22 09:04:14,619.619 INFO    ] 200
[2026-06-22 09:04:14,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:04:14,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:04:14,677.677 INFO    ] No update needed
[2026-06-22 09:04:14,679.679 INFO    ] Checking for camera pi updates...
[2026-06-22 09:04:14,715.715 INFO    ] 200
[2026-06-22 09:04:14,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:04:14,759.759 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:04:14,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:04:14,812.812 INFO    ] No camera update needed
[2026-06-22 09:04:14,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:04:14,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:04:14,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:04:14,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:04:16,866.866 INFO    ] ================================================
[2026-06-22 09:04:16,882.882 INFO    ] Launching Daemon at Mon Jun 22 09:04:16 IST 2026
[2026-06-22 09:04:16,893.893 INFO    ] ================================================
[2026-06-22 09:04:17,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:04:17
[2026-06-22 09:04:18,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:04:18,269.269 INFO    ] Initializing speech engine...
[2026-06-22 09:04:18,277.277 INFO    ] 2026-06-22 09:04:18
[2026-06-22 09:04:18,547.547 INFO    ] 2026-06-22 09:04:18
[2026-06-22 09:04:18,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:04:18,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:04:18,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:04:18,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:04:19,027.027 INFO    ] time= 22/06/2026 09:04:18
[2026-06-22 09:04:19,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:04:19,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:04:19,241.241 INFO    ] No existing commands found in stream
[2026-06-22 09:04:24,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:04:24,266.266 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-22 09:04:28,657.657 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:04:28,660.660 INFO    ] Checking for system updates...
[2026-06-22 09:04:28,698.698 INFO    ] 200
[2026-06-22 09:04:28,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:04:28,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:04:28,755.755 INFO    ] No update needed
[2026-06-22 09:04:28,758.758 INFO    ] Checking for camera pi updates...
[2026-06-22 09:04:28,791.791 INFO    ] 200
[2026-06-22 09:04:28,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:04:28,835.835 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:04:28,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:04:28,889.889 INFO    ] No camera update needed
[2026-06-22 09:04:28,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:04:28,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:04:28,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:04:28,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:04:30,946.946 INFO    ] ================================================
[2026-06-22 09:04:30,962.962 INFO    ] Launching Daemon at Mon Jun 22 09:04:30 IST 2026
[2026-06-22 09:04:30,973.973 INFO    ] ================================================
[2026-06-22 09:04:31,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:04:31
[2026-06-22 09:04:32,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:04:32,358.358 INFO    ] Initializing speech engine...
[2026-06-22 09:04:32,368.368 INFO    ] 2026-06-22 09:04:32
[2026-06-22 09:04:32,650.650 INFO    ] 2026-06-22 09:04:32
[2026-06-22 09:04:32,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:04:32,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:04:32,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:04:33,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:04:33,143.143 INFO    ] time= 22/06/2026 09:04:33
[2026-06-22 09:04:33,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:04:33,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:04:33,337.337 INFO    ] No existing commands found in stream
[2026-06-22 09:04:38,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:04:38,364.364 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-22 09:04:40,402.402 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:04:40,404.404 INFO    ] Checking for system updates...
[2026-06-22 09:04:40,443.443 INFO    ] 200
[2026-06-22 09:04:40,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:04:40,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:04:40,505.505 INFO    ] No update needed
[2026-06-22 09:04:40,508.508 INFO    ] Checking for camera pi updates...
[2026-06-22 09:04:40,546.546 INFO    ] 200
[2026-06-22 09:04:40,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:04:40,591.591 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:04:40,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:04:40,694.694 INFO    ] No camera update needed
[2026-06-22 09:04:40,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:04:40,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:04:40,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:04:40,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:04:42,751.751 INFO    ] ================================================
[2026-06-22 09:04:42,767.767 INFO    ] Launching Daemon at Mon Jun 22 09:04:42 IST 2026
[2026-06-22 09:04:42,778.778 INFO    ] ================================================
[2026-06-22 09:04:43,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:04:43
[2026-06-22 09:04:43,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:04:44,199.199 INFO    ] Initializing speech engine...
[2026-06-22 09:04:44,205.205 INFO    ] 2026-06-22 09:04:44
[2026-06-22 09:04:44,469.469 INFO    ] 2026-06-22 09:04:44
[2026-06-22 09:04:44,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:04:44,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:04:44,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:04:45,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:04:45,086.086 INFO    ] time= 22/06/2026 09:04:45
[2026-06-22 09:04:45,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:04:45,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:04:45,253.253 INFO    ] No existing commands found in stream
[2026-06-22 09:04:50,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:04:50,281.281 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-22 09:04:51,796.796 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:04:51,797.797 INFO    ] Checking for system updates...
[2026-06-22 09:04:51,819.819 INFO    ] 200
[2026-06-22 09:04:51,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:04:51,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:04:51,853.853 INFO    ] No update needed
[2026-06-22 09:04:51,854.854 INFO    ] Checking for camera pi updates...
[2026-06-22 09:04:51,880.880 INFO    ] 200
[2026-06-22 09:04:51,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:04:51,926.926 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:04:52,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:04:52,008.008 INFO    ] No camera update needed
[2026-06-22 09:04:52,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:04:52,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:04:52,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:04:52,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:04:54,064.064 INFO    ] ================================================
[2026-06-22 09:04:54,080.080 INFO    ] Launching Daemon at Mon Jun 22 09:04:54 IST 2026
[2026-06-22 09:04:54,092.092 INFO    ] ================================================
[2026-06-22 09:04:54,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:04:54
[2026-06-22 09:04:55,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:04:55,612.612 INFO    ] Initializing speech engine...
[2026-06-22 09:04:55,620.620 INFO    ] 2026-06-22 09:04:55
[2026-06-22 09:04:55,961.961 INFO    ] 2026-06-22 09:04:55
[2026-06-22 09:04:56,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:04:56,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:04:56,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:04:56,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:04:56,483.483 INFO    ] time= 22/06/2026 09:04:56
[2026-06-22 09:04:56,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:04:56,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:04:56,687.687 INFO    ] No existing commands found in stream
[2026-06-22 09:05:01,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:05:01,702.702 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-22 09:05:03,921.921 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:05:03,924.924 INFO    ] Checking for system updates...
[2026-06-22 09:05:03,965.965 INFO    ] 200
[2026-06-22 09:05:03,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:05:04,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:05:04,022.022 INFO    ] No update needed
[2026-06-22 09:05:04,025.025 INFO    ] Checking for camera pi updates...
[2026-06-22 09:05:04,062.062 INFO    ] 200
[2026-06-22 09:05:04,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:05:04,111.111 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:05:04,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:05:04,199.199 INFO    ] No camera update needed
[2026-06-22 09:05:04,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:05:04,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:05:04,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:05:04,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:05:06,254.254 INFO    ] ================================================
[2026-06-22 09:05:06,270.270 INFO    ] Launching Daemon at Mon Jun 22 09:05:06 IST 2026
[2026-06-22 09:05:06,281.281 INFO    ] ================================================
[2026-06-22 09:05:06,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:05:06
[2026-06-22 09:05:07,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:05:07,654.654 INFO    ] Initializing speech engine...
[2026-06-22 09:05:07,660.660 INFO    ] 2026-06-22 09:05:07
[2026-06-22 09:05:07,958.958 INFO    ] 2026-06-22 09:05:07
[2026-06-22 09:05:07,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:05:08,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:05:08,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:05:08,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:05:08,340.340 INFO    ] time= 22/06/2026 09:05:08
[2026-06-22 09:05:08,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:05:08,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:05:08,453.453 INFO    ] No existing commands found in stream
[2026-06-22 09:05:13,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:05:13,491.491 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-22 09:05:16,256.256 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:05:16,259.259 INFO    ] Checking for system updates...
[2026-06-22 09:05:16,295.295 INFO    ] 200
[2026-06-22 09:05:16,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:05:16,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:05:16,359.359 INFO    ] No update needed
[2026-06-22 09:05:16,362.362 INFO    ] Checking for camera pi updates...
[2026-06-22 09:05:16,396.396 INFO    ] 200
[2026-06-22 09:05:16,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:05:16,438.438 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:05:16,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:05:16,534.534 INFO    ] No camera update needed
[2026-06-22 09:05:16,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:05:16,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:05:16,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:05:16,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:05:18,590.590 INFO    ] ================================================
[2026-06-22 09:05:18,606.606 INFO    ] Launching Daemon at Mon Jun 22 09:05:18 IST 2026
[2026-06-22 09:05:18,617.617 INFO    ] ================================================
[2026-06-22 09:05:19,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:05:19
[2026-06-22 09:05:19,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:05:20,056.056 INFO    ] Initializing speech engine...
[2026-06-22 09:05:20,066.066 INFO    ] 2026-06-22 09:05:20
[2026-06-22 09:05:20,326.326 INFO    ] 2026-06-22 09:05:20
[2026-06-22 09:05:20,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:05:20,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:05:20,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:05:20,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:05:20,783.783 INFO    ] time= 22/06/2026 09:05:20
[2026-06-22 09:05:20,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:05:20,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:05:20,986.986 INFO    ] No existing commands found in stream
[2026-06-22 09:05:26,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:05:26,016.016 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-22 09:05:27,722.722 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:05:27,725.725 INFO    ] Checking for system updates...
[2026-06-22 09:05:27,766.766 INFO    ] 200
[2026-06-22 09:05:27,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:05:27,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:05:27,832.832 INFO    ] No update needed
[2026-06-22 09:05:27,835.835 INFO    ] Checking for camera pi updates...
[2026-06-22 09:05:27,873.873 INFO    ] 200
[2026-06-22 09:05:27,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:05:27,927.927 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:05:28,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:05:28,013.013 INFO    ] No camera update needed
[2026-06-22 09:05:28,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:05:28,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:05:28,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:05:28,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:05:30,073.073 INFO    ] ================================================
[2026-06-22 09:05:30,090.090 INFO    ] Launching Daemon at Mon Jun 22 09:05:30 IST 2026
[2026-06-22 09:05:30,102.102 INFO    ] ================================================
[2026-06-22 09:05:30,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:05:30
[2026-06-22 09:05:31,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:05:31,497.497 INFO    ] Initializing speech engine...
[2026-06-22 09:05:31,511.511 INFO    ] 2026-06-22 09:05:31
[2026-06-22 09:05:31,799.799 INFO    ] 2026-06-22 09:05:31
[2026-06-22 09:05:31,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:05:32,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:05:32,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:05:32,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:05:32,250.250 INFO    ] time= 22/06/2026 09:05:32
[2026-06-22 09:05:32,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:05:32,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:05:32,414.414 INFO    ] No existing commands found in stream
[2026-06-22 09:05:37,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:05:37,440.440 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-22 09:05:39,237.237 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:05:39,240.240 INFO    ] Checking for system updates...
[2026-06-22 09:05:39,279.279 INFO    ] 200
[2026-06-22 09:05:39,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:05:39,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:05:39,342.342 INFO    ] No update needed
[2026-06-22 09:05:39,345.345 INFO    ] Checking for camera pi updates...
[2026-06-22 09:05:39,379.379 INFO    ] 200
[2026-06-22 09:05:39,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:05:39,426.426 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:05:39,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:05:39,602.602 INFO    ] No camera update needed
[2026-06-22 09:05:39,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:05:39,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:05:39,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:05:39,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:05:41,651.651 INFO    ] ================================================
[2026-06-22 09:05:41,667.667 INFO    ] Launching Daemon at Mon Jun 22 09:05:41 IST 2026
[2026-06-22 09:05:41,677.677 INFO    ] ================================================
[2026-06-22 09:05:42,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:05:42
[2026-06-22 09:05:42,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:05:43,069.069 INFO    ] Initializing speech engine...
[2026-06-22 09:05:43,079.079 INFO    ] 2026-06-22 09:05:43
[2026-06-22 09:05:43,332.332 INFO    ] 2026-06-22 09:05:43
[2026-06-22 09:05:43,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:05:43,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:05:43,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:05:43,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:05:43,901.901 INFO    ] time= 22/06/2026 09:05:43
[2026-06-22 09:05:43,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:05:43,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:05:44,078.078 INFO    ] No existing commands found in stream
[2026-06-22 09:05:49,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:05:49,111.111 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-22 09:05:52,300.300 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:05:52,302.302 INFO    ] Checking for system updates...
[2026-06-22 09:05:52,326.326 INFO    ] 200
[2026-06-22 09:05:52,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:05:52,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:05:52,361.361 INFO    ] No update needed
[2026-06-22 09:05:52,362.362 INFO    ] Checking for camera pi updates...
[2026-06-22 09:05:52,382.382 INFO    ] 200
[2026-06-22 09:05:52,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:05:52,411.411 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:05:52,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:05:52,501.501 INFO    ] No camera update needed
[2026-06-22 09:05:52,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:05:52,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:05:52,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:05:52,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:05:54,559.559 INFO    ] ================================================
[2026-06-22 09:05:54,575.575 INFO    ] Launching Daemon at Mon Jun 22 09:05:54 IST 2026
[2026-06-22 09:05:54,586.586 INFO    ] ================================================
[2026-06-22 09:05:55,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:05:55
[2026-06-22 09:05:55,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:05:56,086.086 INFO    ] Initializing speech engine...
[2026-06-22 09:05:56,100.100 INFO    ] 2026-06-22 09:05:56
[2026-06-22 09:05:56,414.414 INFO    ] 2026-06-22 09:05:56
[2026-06-22 09:05:56,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:05:56,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:05:56,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:05:56,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:05:56,934.934 INFO    ] time= 22/06/2026 09:05:56
[2026-06-22 09:05:56,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:05:56,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:05:57,092.092 INFO    ] No existing commands found in stream
[2026-06-22 09:06:02,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:06:02,110.110 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-22 09:06:03,394.394 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:06:03,397.397 INFO    ] Checking for system updates...
[2026-06-22 09:06:03,434.434 INFO    ] 200
[2026-06-22 09:06:03,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:06:03,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:06:03,502.502 INFO    ] No update needed
[2026-06-22 09:06:03,506.506 INFO    ] Checking for camera pi updates...
[2026-06-22 09:06:03,543.543 INFO    ] 200
[2026-06-22 09:06:03,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:06:03,608.608 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:06:03,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:06:03,694.694 INFO    ] No camera update needed
[2026-06-22 09:06:03,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:06:03,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:06:03,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:06:03,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:06:05,750.750 INFO    ] ================================================
[2026-06-22 09:06:05,766.766 INFO    ] Launching Daemon at Mon Jun 22 09:06:05 IST 2026
[2026-06-22 09:06:05,777.777 INFO    ] ================================================
[2026-06-22 09:06:06,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:06:06
[2026-06-22 09:06:07,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:06:07,351.351 INFO    ] Initializing speech engine...
[2026-06-22 09:06:07,358.358 INFO    ] 2026-06-22 09:06:07
[2026-06-22 09:06:07,630.630 INFO    ] 2026-06-22 09:06:07
[2026-06-22 09:06:07,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:06:07,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:06:07,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:06:08,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:06:08,137.137 INFO    ] time= 22/06/2026 09:06:08
[2026-06-22 09:06:08,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:06:08,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:06:08,339.339 INFO    ] No existing commands found in stream
[2026-06-22 09:06:13,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:06:13,365.365 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-22 09:06:15,778.778 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:06:15,781.781 INFO    ] Checking for system updates...
[2026-06-22 09:06:15,820.820 INFO    ] 200
[2026-06-22 09:06:15,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:06:15,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:06:15,882.882 INFO    ] No update needed
[2026-06-22 09:06:15,885.885 INFO    ] Checking for camera pi updates...
[2026-06-22 09:06:15,919.919 INFO    ] 200
[2026-06-22 09:06:15,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:06:15,966.966 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:06:16,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:06:16,064.064 INFO    ] No camera update needed
[2026-06-22 09:06:16,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:06:16,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:06:16,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:06:16,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:06:18,111.111 INFO    ] ================================================
[2026-06-22 09:06:18,120.120 INFO    ] Launching Daemon at Mon Jun 22 09:06:18 IST 2026
[2026-06-22 09:06:18,126.126 INFO    ] ================================================
[2026-06-22 09:06:18,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:06:18
[2026-06-22 09:06:19,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:06:19,591.591 INFO    ] Initializing speech engine...
[2026-06-22 09:06:19,606.606 INFO    ] 2026-06-22 09:06:19
[2026-06-22 09:06:19,882.882 INFO    ] 2026-06-22 09:06:19
[2026-06-22 09:06:19,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:06:20,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:06:20,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:06:20,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:06:20,355.355 INFO    ] time= 22/06/2026 09:06:20
[2026-06-22 09:06:20,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:06:20,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:06:20,502.502 INFO    ] No existing commands found in stream
[2026-06-22 09:06:25,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:06:25,517.517 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-22 09:06:26,806.806 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:06:26,808.808 INFO    ] Checking for system updates...
[2026-06-22 09:06:26,844.844 INFO    ] 200
[2026-06-22 09:06:26,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:06:26,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:06:26,901.901 INFO    ] No update needed
[2026-06-22 09:06:26,904.904 INFO    ] Checking for camera pi updates...
[2026-06-22 09:06:26,937.937 INFO    ] 200
[2026-06-22 09:06:26,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:06:26,987.987 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:06:27,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:06:27,079.079 INFO    ] No camera update needed
[2026-06-22 09:06:27,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:06:27,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:06:27,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:06:27,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:06:29,134.134 INFO    ] ================================================
[2026-06-22 09:06:29,150.150 INFO    ] Launching Daemon at Mon Jun 22 09:06:29 IST 2026
[2026-06-22 09:06:29,161.161 INFO    ] ================================================
[2026-06-22 09:06:29,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:06:29
[2026-06-22 09:06:30,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:06:30,485.485 INFO    ] Initializing speech engine...
[2026-06-22 09:06:30,501.501 INFO    ] 2026-06-22 09:06:30
[2026-06-22 09:06:30,784.784 INFO    ] 2026-06-22 09:06:30
[2026-06-22 09:06:30,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:06:31,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:06:31,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:06:31,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:06:31,312.312 INFO    ] time= 22/06/2026 09:06:31
[2026-06-22 09:06:31,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:06:31,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:06:31,546.546 INFO    ] No existing commands found in stream
[2026-06-22 09:06:36,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:06:36,574.574 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-22 09:06:38,968.968 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:06:38,971.971 INFO    ] Checking for system updates...
[2026-06-22 09:06:39,014.014 INFO    ] 200
[2026-06-22 09:06:39,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:06:39,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:06:39,083.083 INFO    ] No update needed
[2026-06-22 09:06:39,085.085 INFO    ] Checking for camera pi updates...
[2026-06-22 09:06:39,126.126 INFO    ] 200
[2026-06-22 09:06:39,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:06:39,171.171 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:06:39,254.254 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:06:39,257.257 INFO    ] No camera update needed
[2026-06-22 09:06:39,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:06:39,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:06:39,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:06:39,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:06:41,315.315 INFO    ] ================================================
[2026-06-22 09:06:41,330.330 INFO    ] Launching Daemon at Mon Jun 22 09:06:41 IST 2026
[2026-06-22 09:06:41,341.341 INFO    ] ================================================
[2026-06-22 09:06:41,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:06:41
[2026-06-22 09:06:42,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:06:42,903.903 INFO    ] Initializing speech engine...
[2026-06-22 09:06:42,916.916 INFO    ] 2026-06-22 09:06:42
[2026-06-22 09:06:43,223.223 INFO    ] 2026-06-22 09:06:43
[2026-06-22 09:06:43,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:06:43,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:06:43,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:06:43,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:06:43,653.653 INFO    ] time= 22/06/2026 09:06:43
[2026-06-22 09:06:43,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:06:43,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:06:43,800.800 INFO    ] No existing commands found in stream
[2026-06-22 09:06:48,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:06:48,832.832 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-22 09:06:52,015.015 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:06:52,017.017 INFO    ] Checking for system updates...
[2026-06-22 09:06:52,041.041 INFO    ] 200
[2026-06-22 09:06:52,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:06:52,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:06:52,100.100 INFO    ] No update needed
[2026-06-22 09:06:52,103.103 INFO    ] Checking for camera pi updates...
[2026-06-22 09:06:52,136.136 INFO    ] 200
[2026-06-22 09:06:52,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:06:52,182.182 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:06:52,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:06:52,267.267 INFO    ] No camera update needed
[2026-06-22 09:06:52,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:06:52,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:06:52,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:06:52,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:06:54,324.324 INFO    ] ================================================
[2026-06-22 09:06:54,339.339 INFO    ] Launching Daemon at Mon Jun 22 09:06:54 IST 2026
[2026-06-22 09:06:54,350.350 INFO    ] ================================================
[2026-06-22 09:06:54,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:06:54
[2026-06-22 09:06:55,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:06:55,687.687 INFO    ] Initializing speech engine...
[2026-06-22 09:06:55,694.694 INFO    ] 2026-06-22 09:06:55
[2026-06-22 09:06:55,941.941 INFO    ] 2026-06-22 09:06:55
[2026-06-22 09:06:55,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:06:56,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:06:56,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:06:56,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:06:56,498.498 INFO    ] time= 22/06/2026 09:06:56
[2026-06-22 09:06:56,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:06:56,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:06:56,671.671 INFO    ] No existing commands found in stream
[2026-06-22 09:07:01,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:07:01,692.692 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-22 09:07:02,792.792 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:07:02,795.795 INFO    ] Checking for system updates...
[2026-06-22 09:07:02,839.839 INFO    ] 200
[2026-06-22 09:07:02,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:07:02,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:07:02,904.904 INFO    ] No update needed
[2026-06-22 09:07:02,907.907 INFO    ] Checking for camera pi updates...
[2026-06-22 09:07:02,955.955 INFO    ] 200
[2026-06-22 09:07:02,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:07:03,020.020 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:07:03,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:07:03,105.105 INFO    ] No camera update needed
[2026-06-22 09:07:03,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:07:03,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:07:03,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:07:03,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:07:05,168.168 INFO    ] ================================================
[2026-06-22 09:07:05,183.183 INFO    ] Launching Daemon at Mon Jun 22 09:07:05 IST 2026
[2026-06-22 09:07:05,194.194 INFO    ] ================================================
[2026-06-22 09:07:05,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:07:05
[2026-06-22 09:07:06,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:07:06,791.791 INFO    ] Initializing speech engine...
[2026-06-22 09:07:06,800.800 INFO    ] 2026-06-22 09:07:06
[2026-06-22 09:07:07,069.069 INFO    ] 2026-06-22 09:07:07
[2026-06-22 09:07:07,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:07:07,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:07:07,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:07:07,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:07:07,549.549 INFO    ] time= 22/06/2026 09:07:07
[2026-06-22 09:07:07,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:07:07,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:07:07,769.769 INFO    ] No existing commands found in stream
[2026-06-22 09:07:12,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:07:12,794.794 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-22 09:07:13,809.809 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:07:13,810.810 INFO    ] Checking for system updates...
[2026-06-22 09:07:13,835.835 INFO    ] 200
[2026-06-22 09:07:13,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:07:13,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:07:13,904.904 INFO    ] No update needed
[2026-06-22 09:07:13,906.906 INFO    ] Checking for camera pi updates...
[2026-06-22 09:07:13,953.953 INFO    ] 200
[2026-06-22 09:07:13,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:07:13,996.996 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:07:14,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:07:14,080.080 INFO    ] No camera update needed
[2026-06-22 09:07:14,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:07:14,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:07:14,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:07:14,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:07:16,136.136 INFO    ] ================================================
[2026-06-22 09:07:16,152.152 INFO    ] Launching Daemon at Mon Jun 22 09:07:16 IST 2026
[2026-06-22 09:07:16,163.163 INFO    ] ================================================
[2026-06-22 09:07:16,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:07:16
[2026-06-22 09:07:17,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:07:17,624.624 INFO    ] Initializing speech engine...
[2026-06-22 09:07:17,635.635 INFO    ] 2026-06-22 09:07:17
[2026-06-22 09:07:17,899.899 INFO    ] 2026-06-22 09:07:17
[2026-06-22 09:07:17,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:07:18,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:07:18,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:07:18,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:07:18,368.368 INFO    ] time= 22/06/2026 09:07:18
[2026-06-22 09:07:18,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:07:18,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:07:18,595.595 INFO    ] No existing commands found in stream
[2026-06-22 09:07:23,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:07:23,621.621 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-22 09:07:27,345.345 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:07:27,348.348 INFO    ] Checking for system updates...
[2026-06-22 09:07:27,385.385 INFO    ] 200
[2026-06-22 09:07:27,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:07:27,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:07:27,444.444 INFO    ] No update needed
[2026-06-22 09:07:27,447.447 INFO    ] Checking for camera pi updates...
[2026-06-22 09:07:27,482.482 INFO    ] 200
[2026-06-22 09:07:27,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:07:27,525.525 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:07:27,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:07:27,602.602 INFO    ] No camera update needed
[2026-06-22 09:07:27,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:07:27,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:07:27,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:07:27,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:07:29,657.657 INFO    ] ================================================
[2026-06-22 09:07:29,673.673 INFO    ] Launching Daemon at Mon Jun 22 09:07:29 IST 2026
[2026-06-22 09:07:29,684.684 INFO    ] ================================================
[2026-06-22 09:07:30,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:07:30
[2026-06-22 09:07:30,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:07:31,063.063 INFO    ] Initializing speech engine...
[2026-06-22 09:07:31,072.072 INFO    ] 2026-06-22 09:07:31
[2026-06-22 09:07:31,322.322 INFO    ] 2026-06-22 09:07:31
[2026-06-22 09:07:31,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:07:31,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:07:31,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:07:31,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:07:31,847.847 INFO    ] time= 22/06/2026 09:07:31
[2026-06-22 09:07:31,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:07:31,947.947 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:07:32,069.069 INFO    ] No existing commands found in stream
[2026-06-22 09:07:37,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:07:37,096.096 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-22 09:07:40,730.730 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:07:40,734.734 INFO    ] Checking for system updates...
[2026-06-22 09:07:40,777.777 INFO    ] 200
[2026-06-22 09:07:40,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:07:40,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:07:40,853.853 INFO    ] No update needed
[2026-06-22 09:07:40,856.856 INFO    ] Checking for camera pi updates...
[2026-06-22 09:07:40,892.892 INFO    ] 200
[2026-06-22 09:07:40,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:07:40,943.943 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:07:41,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:07:41,129.129 INFO    ] No camera update needed
[2026-06-22 09:07:41,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:07:41,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:07:41,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:07:41,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:07:43,189.189 INFO    ] ================================================
[2026-06-22 09:07:43,206.206 INFO    ] Launching Daemon at Mon Jun 22 09:07:43 IST 2026
[2026-06-22 09:07:43,217.217 INFO    ] ================================================
[2026-06-22 09:07:43,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:07:43
[2026-06-22 09:07:44,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:07:44,909.909 INFO    ] Initializing speech engine...
[2026-06-22 09:07:44,925.925 INFO    ] 2026-06-22 09:07:44
[2026-06-22 09:07:45,210.210 INFO    ] 2026-06-22 09:07:45
[2026-06-22 09:07:45,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:07:45,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:07:45,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:07:45,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:07:45,746.746 INFO    ] time= 22/06/2026 09:07:45
[2026-06-22 09:07:45,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:07:45,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:07:45,948.948 INFO    ] No existing commands found in stream
[2026-06-22 09:07:50,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:07:50,975.975 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-22 09:07:52,846.846 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:07:52,849.849 INFO    ] Checking for system updates...
[2026-06-22 09:07:52,889.889 INFO    ] 200
[2026-06-22 09:07:52,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:07:52,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:07:52,947.947 INFO    ] No update needed
[2026-06-22 09:07:52,950.950 INFO    ] Checking for camera pi updates...
[2026-06-22 09:07:52,987.987 INFO    ] 200
[2026-06-22 09:07:52,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:07:53,030.030 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:07:53,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:07:53,120.120 INFO    ] No camera update needed
[2026-06-22 09:07:53,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:07:53,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:07:53,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:07:53,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:07:55,176.176 INFO    ] ================================================
[2026-06-22 09:07:55,190.190 INFO    ] Launching Daemon at Mon Jun 22 09:07:55 IST 2026
[2026-06-22 09:07:55,201.201 INFO    ] ================================================
[2026-06-22 09:07:55,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:07:55
[2026-06-22 09:07:56,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:07:56,761.761 INFO    ] Initializing speech engine...
[2026-06-22 09:07:56,769.769 INFO    ] 2026-06-22 09:07:56
[2026-06-22 09:07:57,049.049 INFO    ] 2026-06-22 09:07:57
[2026-06-22 09:07:57,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:07:57,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:07:57,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:07:57,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:07:57,584.584 INFO    ] time= 22/06/2026 09:07:57
[2026-06-22 09:07:57,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:07:57,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:07:57,736.736 INFO    ] No existing commands found in stream
[2026-06-22 09:08:02,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:08:02,752.752 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-22 09:08:03,786.786 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:08:03,789.789 INFO    ] Checking for system updates...
[2026-06-22 09:08:03,825.825 INFO    ] 200
[2026-06-22 09:08:03,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:08:03,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:08:03,893.893 INFO    ] No update needed
[2026-06-22 09:08:03,896.896 INFO    ] Checking for camera pi updates...
[2026-06-22 09:08:03,930.930 INFO    ] 200
[2026-06-22 09:08:03,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:08:03,973.973 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:08:04,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:08:04,057.057 INFO    ] No camera update needed
[2026-06-22 09:08:04,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:08:04,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:08:04,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:08:04,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:08:06,115.115 INFO    ] ================================================
[2026-06-22 09:08:06,131.131 INFO    ] Launching Daemon at Mon Jun 22 09:08:06 IST 2026
[2026-06-22 09:08:06,141.141 INFO    ] ================================================
[2026-06-22 09:08:06,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:08:06
[2026-06-22 09:08:07,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:08:07,600.600 INFO    ] Initializing speech engine...
[2026-06-22 09:08:07,612.612 INFO    ] 2026-06-22 09:08:07
[2026-06-22 09:08:07,885.885 INFO    ] 2026-06-22 09:08:07
[2026-06-22 09:08:07,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:08:08,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:08:08,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:08:08,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:08:08,259.259 INFO    ] time= 22/06/2026 09:08:08
[2026-06-22 09:08:08,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:08:08,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:08:08,381.381 INFO    ] No existing commands found in stream
[2026-06-22 09:08:13,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:08:13,397.397 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-22 09:08:14,099.099 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:08:14,100.100 INFO    ] Checking for system updates...
[2026-06-22 09:08:14,122.122 INFO    ] 200
[2026-06-22 09:08:14,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:08:14,154.154 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:08:14,155.155 INFO    ] No update needed
[2026-06-22 09:08:14,156.156 INFO    ] Checking for camera pi updates...
[2026-06-22 09:08:14,193.193 INFO    ] 200
[2026-06-22 09:08:14,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:08:14,244.244 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:08:14,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:08:14,312.312 INFO    ] No camera update needed
[2026-06-22 09:08:14,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:08:14,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:08:14,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:08:14,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:08:16,368.368 INFO    ] ================================================
[2026-06-22 09:08:16,383.383 INFO    ] Launching Daemon at Mon Jun 22 09:08:16 IST 2026
[2026-06-22 09:08:16,393.393 INFO    ] ================================================
[2026-06-22 09:08:16,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:08:16
[2026-06-22 09:08:17,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:08:17,870.870 INFO    ] Initializing speech engine...
[2026-06-22 09:08:17,886.886 INFO    ] 2026-06-22 09:08:17
[2026-06-22 09:08:18,159.159 INFO    ] 2026-06-22 09:08:18
[2026-06-22 09:08:18,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:08:18,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:08:18,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:08:18,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:08:18,690.690 INFO    ] time= 22/06/2026 09:08:18
[2026-06-22 09:08:18,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:08:18,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:08:18,892.892 INFO    ] No existing commands found in stream
[2026-06-22 09:08:23,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:08:23,918.918 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-22 09:08:28,435.435 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:08:28,437.437 INFO    ] Checking for system updates...
[2026-06-22 09:08:28,474.474 INFO    ] 200
[2026-06-22 09:08:28,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:08:28,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:08:28,532.532 INFO    ] No update needed
[2026-06-22 09:08:28,534.534 INFO    ] Checking for camera pi updates...
[2026-06-22 09:08:28,568.568 INFO    ] 200
[2026-06-22 09:08:28,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:08:28,630.630 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:08:28,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:08:28,717.717 INFO    ] No camera update needed
[2026-06-22 09:08:28,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:08:28,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:08:28,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:08:28,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:08:30,774.774 INFO    ] ================================================
[2026-06-22 09:08:30,789.789 INFO    ] Launching Daemon at Mon Jun 22 09:08:30 IST 2026
[2026-06-22 09:08:30,800.800 INFO    ] ================================================
[2026-06-22 09:08:31,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:08:31
[2026-06-22 09:08:32,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:08:32,475.475 INFO    ] Initializing speech engine...
[2026-06-22 09:08:32,486.486 INFO    ] 2026-06-22 09:08:32
[2026-06-22 09:08:32,773.773 INFO    ] 2026-06-22 09:08:32
[2026-06-22 09:08:32,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:08:33,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:08:33,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:08:33,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:08:33,362.362 INFO    ] time= 22/06/2026 09:08:33
[2026-06-22 09:08:33,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:08:33,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:08:33,526.526 INFO    ] No existing commands found in stream
[2026-06-22 09:08:38,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:08:38,558.558 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-22 09:08:39,015.015 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:08:39,017.017 INFO    ] Checking for system updates...
[2026-06-22 09:08:39,057.057 INFO    ] 200
[2026-06-22 09:08:39,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:08:39,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:08:39,113.113 INFO    ] No update needed
[2026-06-22 09:08:39,116.116 INFO    ] Checking for camera pi updates...
[2026-06-22 09:08:39,153.153 INFO    ] 200
[2026-06-22 09:08:39,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:08:39,199.199 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:08:39,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:08:39,283.283 INFO    ] No camera update needed
[2026-06-22 09:08:39,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:08:39,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:08:39,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:08:39,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:08:41,347.347 INFO    ] ================================================
[2026-06-22 09:08:41,362.362 INFO    ] Launching Daemon at Mon Jun 22 09:08:41 IST 2026
[2026-06-22 09:08:41,373.373 INFO    ] ================================================
[2026-06-22 09:08:41,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:08:41
[2026-06-22 09:08:42,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:08:42,699.699 INFO    ] Initializing speech engine...
[2026-06-22 09:08:42,715.715 INFO    ] 2026-06-22 09:08:42
[2026-06-22 09:08:42,971.971 INFO    ] 2026-06-22 09:08:42
[2026-06-22 09:08:43,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:08:43,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:08:43,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:08:43,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:08:43,349.349 INFO    ] time= 22/06/2026 09:08:43
[2026-06-22 09:08:43,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:08:43,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:08:43,530.530 INFO    ] No existing commands found in stream
[2026-06-22 09:08:48,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:08:48,562.562 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-22 09:08:52,807.807 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:08:52,809.809 INFO    ] Checking for system updates...
[2026-06-22 09:08:52,846.846 INFO    ] 200
[2026-06-22 09:08:52,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:08:52,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:08:52,912.912 INFO    ] No update needed
[2026-06-22 09:08:52,914.914 INFO    ] Checking for camera pi updates...
[2026-06-22 09:08:52,949.949 INFO    ] 200
[2026-06-22 09:08:52,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:08:52,997.997 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:08:53,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:08:53,061.061 INFO    ] No camera update needed
[2026-06-22 09:08:53,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:08:53,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:08:53,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:08:53,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:08:55,117.117 INFO    ] ================================================
[2026-06-22 09:08:55,133.133 INFO    ] Launching Daemon at Mon Jun 22 09:08:55 IST 2026
[2026-06-22 09:08:55,144.144 INFO    ] ================================================
[2026-06-22 09:08:55,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:08:55
[2026-06-22 09:08:56,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:08:56,541.541 INFO    ] Initializing speech engine...
[2026-06-22 09:08:56,550.550 INFO    ] 2026-06-22 09:08:56
[2026-06-22 09:08:56,797.797 INFO    ] 2026-06-22 09:08:56
[2026-06-22 09:08:56,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:08:57,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:08:57,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:08:57,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:08:57,298.298 INFO    ] time= 22/06/2026 09:08:57
[2026-06-22 09:08:57,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:08:57,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:08:57,506.506 INFO    ] No existing commands found in stream
[2026-06-22 09:09:02,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:09:02,529.529 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-22 09:09:06,776.776 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:09:06,778.778 INFO    ] Checking for system updates...
[2026-06-22 09:09:06,815.815 INFO    ] 200
[2026-06-22 09:09:06,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:09:06,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:09:06,872.872 INFO    ] No update needed
[2026-06-22 09:09:06,875.875 INFO    ] Checking for camera pi updates...
[2026-06-22 09:09:06,912.912 INFO    ] 200
[2026-06-22 09:09:06,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:09:06,954.954 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:09:07,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:09:07,035.035 INFO    ] No camera update needed
[2026-06-22 09:09:07,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:09:07,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:09:07,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:09:07,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:09:09,092.092 INFO    ] ================================================
[2026-06-22 09:09:09,108.108 INFO    ] Launching Daemon at Mon Jun 22 09:09:09 IST 2026
[2026-06-22 09:09:09,119.119 INFO    ] ================================================
[2026-06-22 09:09:09,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:09:09
[2026-06-22 09:09:10,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:09:10,529.529 INFO    ] Initializing speech engine...
[2026-06-22 09:09:10,535.535 INFO    ] 2026-06-22 09:09:10
[2026-06-22 09:09:10,830.830 INFO    ] 2026-06-22 09:09:10
[2026-06-22 09:09:10,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:09:11,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:09:11,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:09:11,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:09:11,205.205 INFO    ] time= 22/06/2026 09:09:11
[2026-06-22 09:09:11,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:09:11,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:09:11,329.329 INFO    ] No existing commands found in stream
[2026-06-22 09:09:16,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:09:16,345.345 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-22 09:09:18,980.980 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:09:18,982.982 INFO    ] Checking for system updates...
[2026-06-22 09:09:19,018.018 INFO    ] 200
[2026-06-22 09:09:19,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:09:19,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:09:19,077.077 INFO    ] No update needed
[2026-06-22 09:09:19,080.080 INFO    ] Checking for camera pi updates...
[2026-06-22 09:09:19,114.114 INFO    ] 200
[2026-06-22 09:09:19,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:09:19,161.161 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:09:19,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:09:19,248.248 INFO    ] No camera update needed
[2026-06-22 09:09:19,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:09:19,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:09:19,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:09:19,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:09:21,303.303 INFO    ] ================================================
[2026-06-22 09:09:21,318.318 INFO    ] Launching Daemon at Mon Jun 22 09:09:21 IST 2026
[2026-06-22 09:09:21,330.330 INFO    ] ================================================
[2026-06-22 09:09:21,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:09:21
[2026-06-22 09:09:22,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:09:22,664.664 INFO    ] Initializing speech engine...
[2026-06-22 09:09:22,673.673 INFO    ] 2026-06-22 09:09:22
[2026-06-22 09:09:22,934.934 INFO    ] 2026-06-22 09:09:22
[2026-06-22 09:09:22,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:09:23,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:09:23,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:09:23,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:09:23,408.408 INFO    ] time= 22/06/2026 09:09:23
[2026-06-22 09:09:23,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:09:23,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:09:23,618.618 INFO    ] No existing commands found in stream
[2026-06-22 09:09:28,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:09:28,647.647 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-22 09:09:31,216.216 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:09:31,218.218 INFO    ] Checking for system updates...
[2026-06-22 09:09:31,259.259 INFO    ] 200
[2026-06-22 09:09:31,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:09:31,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:09:31,323.323 INFO    ] No update needed
[2026-06-22 09:09:31,325.325 INFO    ] Checking for camera pi updates...
[2026-06-22 09:09:31,362.362 INFO    ] 200
[2026-06-22 09:09:31,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:09:31,410.410 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:09:31,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:09:31,472.472 INFO    ] No camera update needed
[2026-06-22 09:09:31,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:09:31,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:09:31,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:09:31,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:09:33,530.530 INFO    ] ================================================
[2026-06-22 09:09:33,545.545 INFO    ] Launching Daemon at Mon Jun 22 09:09:33 IST 2026
[2026-06-22 09:09:33,557.557 INFO    ] ================================================
[2026-06-22 09:09:34,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:09:34
[2026-06-22 09:09:34,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:09:34,978.978 INFO    ] Initializing speech engine...
[2026-06-22 09:09:35,001.001 INFO    ] 2026-06-22 09:09:34
[2026-06-22 09:09:35,252.252 INFO    ] 2026-06-22 09:09:35
[2026-06-22 09:09:35,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:09:35,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:09:35,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:09:35,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:09:35,641.641 INFO    ] time= 22/06/2026 09:09:35
[2026-06-22 09:09:35,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:09:35,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:09:35,835.835 INFO    ] No existing commands found in stream
[2026-06-22 09:09:40,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:09:40,855.855 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-22 09:09:44,298.298 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:09:44,299.299 INFO    ] Checking for system updates...
[2026-06-22 09:09:44,322.322 INFO    ] 200
[2026-06-22 09:09:44,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:09:44,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:09:44,355.355 INFO    ] No update needed
[2026-06-22 09:09:44,357.357 INFO    ] Checking for camera pi updates...
[2026-06-22 09:09:44,390.390 INFO    ] 200
[2026-06-22 09:09:44,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:09:44,438.438 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:09:44,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:09:44,629.629 INFO    ] No camera update needed
[2026-06-22 09:09:44,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:09:44,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:09:44,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:09:44,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:09:46,685.685 INFO    ] ================================================
[2026-06-22 09:09:46,701.701 INFO    ] Launching Daemon at Mon Jun 22 09:09:46 IST 2026
[2026-06-22 09:09:46,712.712 INFO    ] ================================================
[2026-06-22 09:09:47,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:09:47
[2026-06-22 09:09:48,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:09:48,345.345 INFO    ] Initializing speech engine...
[2026-06-22 09:09:48,360.360 INFO    ] 2026-06-22 09:09:48
[2026-06-22 09:09:48,660.660 INFO    ] 2026-06-22 09:09:48
[2026-06-22 09:09:48,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:09:48,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:09:48,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:09:49,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:09:49,106.106 INFO    ] time= 22/06/2026 09:09:49
[2026-06-22 09:09:49,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:09:49,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:09:49,279.279 INFO    ] No existing commands found in stream
[2026-06-22 09:09:54,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:09:54,296.296 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-22 09:09:56,665.665 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:09:56,668.668 INFO    ] Checking for system updates...
[2026-06-22 09:09:56,709.709 INFO    ] 200
[2026-06-22 09:09:56,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:09:56,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:09:56,766.766 INFO    ] No update needed
[2026-06-22 09:09:56,769.769 INFO    ] Checking for camera pi updates...
[2026-06-22 09:09:56,807.807 INFO    ] 200
[2026-06-22 09:09:56,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:09:56,851.851 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:09:56,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:09:56,931.931 INFO    ] No camera update needed
[2026-06-22 09:09:56,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:09:56,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:09:56,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:09:56,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:09:58,988.988 INFO    ] ================================================
[2026-06-22 09:09:59,003.003 INFO    ] Launching Daemon at Mon Jun 22 09:09:58 IST 2026
[2026-06-22 09:09:59,015.015 INFO    ] ================================================
[2026-06-22 09:09:59,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:09:59
[2026-06-22 09:10:00,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:10:00,460.460 INFO    ] Initializing speech engine...
[2026-06-22 09:10:00,469.469 INFO    ] 2026-06-22 09:10:00
[2026-06-22 09:10:00,722.722 INFO    ] 2026-06-22 09:10:00
[2026-06-22 09:10:00,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:10:00,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:10:00,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:10:01,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:10:01,106.106 INFO    ] time= 22/06/2026 09:10:01
[2026-06-22 09:10:01,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:10:01,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:10:01,295.295 INFO    ] No existing commands found in stream
[2026-06-22 09:10:06,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:10:06,315.315 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-22 09:10:10,360.360 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:10:10,363.363 INFO    ] Checking for system updates...
[2026-06-22 09:10:10,398.398 INFO    ] 200
[2026-06-22 09:10:10,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:10:10,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:10:10,458.458 INFO    ] No update needed
[2026-06-22 09:10:10,460.460 INFO    ] Checking for camera pi updates...
[2026-06-22 09:10:10,494.494 INFO    ] 200
[2026-06-22 09:10:10,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:10:10,541.541 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:10:10,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:10:10,646.646 INFO    ] No camera update needed
[2026-06-22 09:10:10,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:10:10,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:10:10,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:10:10,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:10:12,701.701 INFO    ] ================================================
[2026-06-22 09:10:12,717.717 INFO    ] Launching Daemon at Mon Jun 22 09:10:12 IST 2026
[2026-06-22 09:10:12,728.728 INFO    ] ================================================
[2026-06-22 09:10:13,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:10:13
[2026-06-22 09:10:13,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:10:14,173.173 INFO    ] Initializing speech engine...
[2026-06-22 09:10:14,180.180 INFO    ] 2026-06-22 09:10:14
[2026-06-22 09:10:14,436.436 INFO    ] 2026-06-22 09:10:14
[2026-06-22 09:10:14,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:10:14,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:10:14,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:10:14,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:10:14,937.937 INFO    ] time= 22/06/2026 09:10:14
[2026-06-22 09:10:14,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:10:14,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:10:15,017.017 INFO    ] No existing commands found in stream
[2026-06-22 09:10:20,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:10:20,029.029 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-22 09:10:23,046.046 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:10:23,049.049 INFO    ] Checking for system updates...
[2026-06-22 09:10:23,088.088 INFO    ] 200
[2026-06-22 09:10:23,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:10:23,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:10:23,145.145 INFO    ] No update needed
[2026-06-22 09:10:23,147.147 INFO    ] Checking for camera pi updates...
[2026-06-22 09:10:23,184.184 INFO    ] 200
[2026-06-22 09:10:23,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:10:23,227.227 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:10:23,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:10:23,343.343 INFO    ] No camera update needed
[2026-06-22 09:10:23,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:10:23,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:10:23,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:10:23,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:10:25,408.408 INFO    ] ================================================
[2026-06-22 09:10:25,425.425 INFO    ] Launching Daemon at Mon Jun 22 09:10:25 IST 2026
[2026-06-22 09:10:25,437.437 INFO    ] ================================================
[2026-06-22 09:10:25,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:10:25
[2026-06-22 09:10:26,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:10:26,819.819 INFO    ] Initializing speech engine...
[2026-06-22 09:10:26,830.830 INFO    ] 2026-06-22 09:10:26
[2026-06-22 09:10:27,080.080 INFO    ] 2026-06-22 09:10:27
[2026-06-22 09:10:27,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:10:27,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:10:27,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:10:27,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:10:27,561.561 INFO    ] time= 22/06/2026 09:10:27
[2026-06-22 09:10:27,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:10:27,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:10:27,769.769 INFO    ] No existing commands found in stream
[2026-06-22 09:10:32,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:10:32,798.798 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-22 09:10:34,593.593 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:10:34,596.596 INFO    ] Checking for system updates...
[2026-06-22 09:10:34,636.636 INFO    ] 200
[2026-06-22 09:10:34,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:10:34,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:10:34,701.701 INFO    ] No update needed
[2026-06-22 09:10:34,704.704 INFO    ] Checking for camera pi updates...
[2026-06-22 09:10:34,742.742 INFO    ] 200
[2026-06-22 09:10:34,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:10:34,791.791 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:10:34,878.878 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:10:34,880.880 INFO    ] No camera update needed
[2026-06-22 09:10:34,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:10:34,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:10:34,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:10:34,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:10:36,937.937 INFO    ] ================================================
[2026-06-22 09:10:36,952.952 INFO    ] Launching Daemon at Mon Jun 22 09:10:36 IST 2026
[2026-06-22 09:10:36,964.964 INFO    ] ================================================
[2026-06-22 09:10:37,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:10:37
[2026-06-22 09:10:38,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:10:38,491.491 INFO    ] Initializing speech engine...
[2026-06-22 09:10:38,506.506 INFO    ] 2026-06-22 09:10:38
[2026-06-22 09:10:38,734.734 INFO    ] 2026-06-22 09:10:38
[2026-06-22 09:10:38,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:10:39,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:10:39,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:10:39,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:10:39,251.251 INFO    ] time= 22/06/2026 09:10:39
[2026-06-22 09:10:39,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:10:39,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:10:39,416.416 INFO    ] No existing commands found in stream
[2026-06-22 09:10:44,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:10:44,450.450 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-22 09:10:48,927.927 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:10:48,931.931 INFO    ] Checking for system updates...
[2026-06-22 09:10:48,970.970 INFO    ] 200
[2026-06-22 09:10:48,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:10:49,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:10:49,043.043 INFO    ] No update needed
[2026-06-22 09:10:49,047.047 INFO    ] Checking for camera pi updates...
[2026-06-22 09:10:49,083.083 INFO    ] 200
[2026-06-22 09:10:49,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:10:49,131.131 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:10:49,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:10:49,214.214 INFO    ] No camera update needed
[2026-06-22 09:10:49,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:10:49,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:10:49,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:10:49,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:10:51,273.273 INFO    ] ================================================
[2026-06-22 09:10:51,290.290 INFO    ] Launching Daemon at Mon Jun 22 09:10:51 IST 2026
[2026-06-22 09:10:51,301.301 INFO    ] ================================================
[2026-06-22 09:10:51,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:10:51
[2026-06-22 09:10:52,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:10:52,670.670 INFO    ] Initializing speech engine...
[2026-06-22 09:10:52,687.687 INFO    ] 2026-06-22 09:10:52
[2026-06-22 09:10:52,967.967 INFO    ] 2026-06-22 09:10:52
[2026-06-22 09:10:53,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:10:53,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:10:53,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:10:53,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:10:53,460.460 INFO    ] time= 22/06/2026 09:10:53
[2026-06-22 09:10:53,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:10:53,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:10:53,675.675 INFO    ] No existing commands found in stream
[2026-06-22 09:10:58,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:10:58,699.699 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-22 09:11:01,187.187 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:11:01,190.190 INFO    ] Checking for system updates...
[2026-06-22 09:11:01,232.232 INFO    ] 200
[2026-06-22 09:11:01,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:11:01,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:11:01,304.304 INFO    ] No update needed
[2026-06-22 09:11:01,308.308 INFO    ] Checking for camera pi updates...
[2026-06-22 09:11:01,343.343 INFO    ] 200
[2026-06-22 09:11:01,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:11:01,393.393 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:11:01,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:11:01,468.468 INFO    ] No camera update needed
[2026-06-22 09:11:01,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:11:01,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:11:01,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:11:01,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:11:03,523.523 INFO    ] ================================================
[2026-06-22 09:11:03,539.539 INFO    ] Launching Daemon at Mon Jun 22 09:11:03 IST 2026
[2026-06-22 09:11:03,554.554 INFO    ] ================================================
[2026-06-22 09:11:04,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:11:04
[2026-06-22 09:11:04,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:11:05,019.019 INFO    ] Initializing speech engine...
[2026-06-22 09:11:05,025.025 INFO    ] 2026-06-22 09:11:05
[2026-06-22 09:11:05,319.319 INFO    ] 2026-06-22 09:11:05
[2026-06-22 09:11:05,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:11:05,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:11:05,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:11:05,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:11:05,735.735 INFO    ] time= 22/06/2026 09:11:05
[2026-06-22 09:11:05,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:11:05,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:11:05,936.936 INFO    ] No existing commands found in stream
[2026-06-22 09:11:10,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:11:10,960.960 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-22 09:11:11,676.676 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:11:11,678.678 INFO    ] Checking for system updates...
[2026-06-22 09:11:11,717.717 INFO    ] 200
[2026-06-22 09:11:11,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:11:11,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:11:11,783.783 INFO    ] No update needed
[2026-06-22 09:11:11,785.785 INFO    ] Checking for camera pi updates...
[2026-06-22 09:11:11,829.829 INFO    ] 200
[2026-06-22 09:11:11,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:11:11,879.879 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:11:11,965.965 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:11:11,967.967 INFO    ] No camera update needed
[2026-06-22 09:11:11,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:11:11,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:11:11,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:11:11,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:11:14,023.023 INFO    ] ================================================
[2026-06-22 09:11:14,039.039 INFO    ] Launching Daemon at Mon Jun 22 09:11:14 IST 2026
[2026-06-22 09:11:14,050.050 INFO    ] ================================================
[2026-06-22 09:11:14,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:11:14
[2026-06-22 09:11:15,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:11:15,433.433 INFO    ] Initializing speech engine...
[2026-06-22 09:11:15,439.439 INFO    ] 2026-06-22 09:11:15
[2026-06-22 09:11:15,688.688 INFO    ] 2026-06-22 09:11:15
[2026-06-22 09:11:15,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:11:15,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:11:15,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:11:16,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:11:16,187.187 INFO    ] time= 22/06/2026 09:11:16
[2026-06-22 09:11:16,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:11:16,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:11:16,377.377 INFO    ] No existing commands found in stream
[2026-06-22 09:11:21,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:11:21,410.410 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-22 09:11:23,011.011 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:11:23,014.014 INFO    ] Checking for system updates...
[2026-06-22 09:11:23,051.051 INFO    ] 200
[2026-06-22 09:11:23,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:11:23,107.107 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:11:23,109.109 INFO    ] No update needed
[2026-06-22 09:11:23,112.112 INFO    ] Checking for camera pi updates...
[2026-06-22 09:11:23,147.147 INFO    ] 200
[2026-06-22 09:11:23,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:11:23,198.198 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:11:23,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:11:23,280.280 INFO    ] No camera update needed
[2026-06-22 09:11:23,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:11:23,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:11:23,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:11:23,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:11:25,341.341 INFO    ] ================================================
[2026-06-22 09:11:25,357.357 INFO    ] Launching Daemon at Mon Jun 22 09:11:25 IST 2026
[2026-06-22 09:11:25,368.368 INFO    ] ================================================
[2026-06-22 09:11:25,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:11:25
[2026-06-22 09:11:26,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:11:26,697.697 INFO    ] Initializing speech engine...
[2026-06-22 09:11:26,706.706 INFO    ] 2026-06-22 09:11:26
[2026-06-22 09:11:26,954.954 INFO    ] 2026-06-22 09:11:26
[2026-06-22 09:11:26,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:11:27,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:11:27,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:11:27,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:11:27,448.448 INFO    ] time= 22/06/2026 09:11:27
[2026-06-22 09:11:27,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:11:27,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:11:27,645.645 INFO    ] No existing commands found in stream
[2026-06-22 09:11:32,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:11:32,669.669 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-22 09:11:33,348.348 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:11:33,350.350 INFO    ] Checking for system updates...
[2026-06-22 09:11:33,386.386 INFO    ] 200
[2026-06-22 09:11:33,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:11:33,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:11:33,444.444 INFO    ] No update needed
[2026-06-22 09:11:33,447.447 INFO    ] Checking for camera pi updates...
[2026-06-22 09:11:33,485.485 INFO    ] 200
[2026-06-22 09:11:33,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:11:33,528.528 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:11:33,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:11:33,632.632 INFO    ] No camera update needed
[2026-06-22 09:11:33,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:11:33,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:11:33,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:11:33,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:11:35,688.688 INFO    ] ================================================
[2026-06-22 09:11:35,704.704 INFO    ] Launching Daemon at Mon Jun 22 09:11:35 IST 2026
[2026-06-22 09:11:35,715.715 INFO    ] ================================================
[2026-06-22 09:11:36,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:11:36
[2026-06-22 09:11:36,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:11:37,141.141 INFO    ] Initializing speech engine...
[2026-06-22 09:11:37,150.150 INFO    ] 2026-06-22 09:11:37
[2026-06-22 09:11:37,407.407 INFO    ] 2026-06-22 09:11:37
[2026-06-22 09:11:37,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:11:37,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:11:37,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:11:37,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:11:37,891.891 INFO    ] time= 22/06/2026 09:11:37
[2026-06-22 09:11:37,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:11:37,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:11:38,095.095 INFO    ] No existing commands found in stream
[2026-06-22 09:11:43,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:11:43,117.117 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-22 09:11:44,145.145 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:11:44,148.148 INFO    ] Checking for system updates...
[2026-06-22 09:11:44,184.184 INFO    ] 200
[2026-06-22 09:11:44,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:11:44,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:11:44,253.253 INFO    ] No update needed
[2026-06-22 09:11:44,255.255 INFO    ] Checking for camera pi updates...
[2026-06-22 09:11:44,289.289 INFO    ] 200
[2026-06-22 09:11:44,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:11:44,337.337 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:11:44,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:11:44,440.440 INFO    ] No camera update needed
[2026-06-22 09:11:44,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:11:44,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:11:44,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:11:44,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:11:46,497.497 INFO    ] ================================================
[2026-06-22 09:11:46,512.512 INFO    ] Launching Daemon at Mon Jun 22 09:11:46 IST 2026
[2026-06-22 09:11:46,524.524 INFO    ] ================================================
[2026-06-22 09:11:47,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:11:47
[2026-06-22 09:11:47,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:11:47,967.967 INFO    ] Initializing speech engine...
[2026-06-22 09:11:47,974.974 INFO    ] 2026-06-22 09:11:47
[2026-06-22 09:11:48,219.219 INFO    ] 2026-06-22 09:11:48
[2026-06-22 09:11:48,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:11:48,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:11:48,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:11:48,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:11:48,587.587 INFO    ] time= 22/06/2026 09:11:48
[2026-06-22 09:11:48,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:11:48,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:11:48,766.766 INFO    ] No existing commands found in stream
[2026-06-22 09:11:53,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:11:53,797.797 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-22 09:11:57,520.520 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:11:57,522.522 INFO    ] Checking for system updates...
[2026-06-22 09:11:57,558.558 INFO    ] 200
[2026-06-22 09:11:57,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:11:57,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:11:57,617.617 INFO    ] No update needed
[2026-06-22 09:11:57,620.620 INFO    ] Checking for camera pi updates...
[2026-06-22 09:11:57,660.660 INFO    ] 200
[2026-06-22 09:11:57,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:11:57,719.719 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:11:57,923.923 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:11:57,926.926 INFO    ] No camera update needed
[2026-06-22 09:11:57,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:11:57,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:11:57,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:11:57,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:11:59,983.983 INFO    ] ================================================
[2026-06-22 09:12:00,999.999 INFO    ] Launching Daemon at Mon Jun 22 09:11:59 IST 2026
[2026-06-22 09:12:00,010.010 INFO    ] ================================================
[2026-06-22 09:12:00,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:12:00
[2026-06-22 09:12:01,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:12:01,340.340 INFO    ] Initializing speech engine...
[2026-06-22 09:12:01,349.349 INFO    ] 2026-06-22 09:12:01
[2026-06-22 09:12:01,596.596 INFO    ] 2026-06-22 09:12:01
[2026-06-22 09:12:01,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:12:01,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:12:01,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:12:01,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:12:01,994.994 INFO    ] time= 22/06/2026 09:12:01
[2026-06-22 09:12:02,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:12:02,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:12:02,128.128 INFO    ] No existing commands found in stream
[2026-06-22 09:12:07,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:12:07,141.141 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-22 09:12:08,285.285 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:12:08,287.287 INFO    ] Checking for system updates...
[2026-06-22 09:12:08,326.326 INFO    ] 200
[2026-06-22 09:12:08,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:12:08,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:12:08,387.387 INFO    ] No update needed
[2026-06-22 09:12:08,390.390 INFO    ] Checking for camera pi updates...
[2026-06-22 09:12:08,423.423 INFO    ] 200
[2026-06-22 09:12:08,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:12:08,469.469 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:12:08,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:12:08,558.558 INFO    ] No camera update needed
[2026-06-22 09:12:08,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:12:08,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:12:08,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:12:08,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:12:10,613.613 INFO    ] ================================================
[2026-06-22 09:12:10,629.629 INFO    ] Launching Daemon at Mon Jun 22 09:12:10 IST 2026
[2026-06-22 09:12:10,640.640 INFO    ] ================================================
[2026-06-22 09:12:11,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:12:11
[2026-06-22 09:12:11,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:12:12,007.007 INFO    ] Initializing speech engine...
[2026-06-22 09:12:12,015.015 INFO    ] 2026-06-22 09:12:12
[2026-06-22 09:12:12,285.285 INFO    ] 2026-06-22 09:12:12
[2026-06-22 09:12:12,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:12:12,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:12:12,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:12:12,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:12:12,742.742 INFO    ] time= 22/06/2026 09:12:12
[2026-06-22 09:12:12,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:12:12,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:12:12,967.967 INFO    ] No existing commands found in stream
[2026-06-22 09:12:17,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:12:17,986.986 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-22 09:12:21,373.373 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:12:21,376.376 INFO    ] Checking for system updates...
[2026-06-22 09:12:21,428.428 INFO    ] 200
[2026-06-22 09:12:21,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:12:21,483.483 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:12:21,485.485 INFO    ] No update needed
[2026-06-22 09:12:21,489.489 INFO    ] Checking for camera pi updates...
[2026-06-22 09:12:21,526.526 INFO    ] 200
[2026-06-22 09:12:21,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:12:21,569.569 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:12:21,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:12:21,672.672 INFO    ] No camera update needed
[2026-06-22 09:12:21,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:12:21,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:12:21,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:12:21,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:12:23,719.719 INFO    ] ================================================
[2026-06-22 09:12:23,728.728 INFO    ] Launching Daemon at Mon Jun 22 09:12:23 IST 2026
[2026-06-22 09:12:23,735.735 INFO    ] ================================================
[2026-06-22 09:12:24,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:12:24
[2026-06-22 09:12:24,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:12:25,102.102 INFO    ] Initializing speech engine...
[2026-06-22 09:12:25,117.117 INFO    ] 2026-06-22 09:12:25
[2026-06-22 09:12:25,381.381 INFO    ] 2026-06-22 09:12:25
[2026-06-22 09:12:25,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:12:25,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:12:25,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:12:25,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:12:25,940.940 INFO    ] time= 22/06/2026 09:12:25
[2026-06-22 09:12:25,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:12:25,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:12:26,084.084 INFO    ] No existing commands found in stream
[2026-06-22 09:12:31,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:12:31,108.108 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-22 09:12:35,461.461 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:12:35,463.463 INFO    ] Checking for system updates...
[2026-06-22 09:12:35,500.500 INFO    ] 200
[2026-06-22 09:12:35,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:12:35,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:12:35,558.558 INFO    ] No update needed
[2026-06-22 09:12:35,560.560 INFO    ] Checking for camera pi updates...
[2026-06-22 09:12:35,597.597 INFO    ] 200
[2026-06-22 09:12:35,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:12:35,641.641 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:12:35,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:12:35,723.723 INFO    ] No camera update needed
[2026-06-22 09:12:35,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:12:35,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:12:35,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:12:35,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:12:37,780.780 INFO    ] ================================================
[2026-06-22 09:12:37,796.796 INFO    ] Launching Daemon at Mon Jun 22 09:12:37 IST 2026
[2026-06-22 09:12:37,807.807 INFO    ] ================================================
[2026-06-22 09:12:38,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:12:38
[2026-06-22 09:12:38,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:12:39,248.248 INFO    ] Initializing speech engine...
[2026-06-22 09:12:39,258.258 INFO    ] 2026-06-22 09:12:39
[2026-06-22 09:12:39,510.510 INFO    ] 2026-06-22 09:12:39
[2026-06-22 09:12:39,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:12:39,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:12:39,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:12:39,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:12:39,977.977 INFO    ] time= 22/06/2026 09:12:39
[2026-06-22 09:12:40,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:12:40,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:12:40,134.134 INFO    ] No existing commands found in stream
[2026-06-22 09:12:45,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:12:45,169.169 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-22 09:12:48,824.824 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:12:48,826.826 INFO    ] Checking for system updates...
[2026-06-22 09:12:48,847.847 INFO    ] 200
[2026-06-22 09:12:48,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:12:48,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:12:48,881.881 INFO    ] No update needed
[2026-06-22 09:12:48,883.883 INFO    ] Checking for camera pi updates...
[2026-06-22 09:12:48,911.911 INFO    ] 200
[2026-06-22 09:12:48,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:12:48,955.955 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:12:49,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:12:49,012.012 INFO    ] No camera update needed
[2026-06-22 09:12:49,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:12:49,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:12:49,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:12:49,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:12:51,068.068 INFO    ] ================================================
[2026-06-22 09:12:51,084.084 INFO    ] Launching Daemon at Mon Jun 22 09:12:51 IST 2026
[2026-06-22 09:12:51,096.096 INFO    ] ================================================
[2026-06-22 09:12:51,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:12:51
[2026-06-22 09:12:52,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:12:52,461.461 INFO    ] Initializing speech engine...
[2026-06-22 09:12:52,480.480 INFO    ] 2026-06-22 09:12:52
[2026-06-22 09:12:52,733.733 INFO    ] 2026-06-22 09:12:52
[2026-06-22 09:12:52,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:12:52,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:12:52,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:12:53,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:12:53,147.147 INFO    ] time= 22/06/2026 09:12:53
[2026-06-22 09:12:53,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:12:53,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:12:53,310.310 INFO    ] No existing commands found in stream
[2026-06-22 09:12:58,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:12:58,337.337 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-22 09:13:01,976.976 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:13:01,979.979 INFO    ] Checking for system updates...
[2026-06-22 09:13:02,044.044 INFO    ] 200
[2026-06-22 09:13:02,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:13:02,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:13:02,146.146 INFO    ] No update needed
[2026-06-22 09:13:02,149.149 INFO    ] Checking for camera pi updates...
[2026-06-22 09:13:02,200.200 INFO    ] 200
[2026-06-22 09:13:02,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:13:02,306.306 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:13:02,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:13:02,380.380 INFO    ] No camera update needed
[2026-06-22 09:13:02,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:13:02,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:13:02,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:13:02,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:13:04,444.444 INFO    ] ================================================
[2026-06-22 09:13:04,459.459 INFO    ] Launching Daemon at Mon Jun 22 09:13:04 IST 2026
[2026-06-22 09:13:04,470.470 INFO    ] ================================================
[2026-06-22 09:13:05,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:13:05
[2026-06-22 09:13:05,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:13:05,896.896 INFO    ] Initializing speech engine...
[2026-06-22 09:13:05,905.905 INFO    ] 2026-06-22 09:13:05
[2026-06-22 09:13:06,152.152 INFO    ] 2026-06-22 09:13:06
[2026-06-22 09:13:06,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:13:06,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:13:06,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:13:06,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:13:06,575.575 INFO    ] time= 22/06/2026 09:13:06
[2026-06-22 09:13:06,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:13:06,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:13:06,693.693 INFO    ] No existing commands found in stream
[2026-06-22 09:13:11,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:13:11,742.742 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-22 09:13:14,865.865 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:13:14,868.868 INFO    ] Checking for system updates...
[2026-06-22 09:13:14,904.904 INFO    ] 200
[2026-06-22 09:13:14,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:13:14,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:13:14,970.970 INFO    ] No update needed
[2026-06-22 09:13:14,972.972 INFO    ] Checking for camera pi updates...
[2026-06-22 09:13:15,009.009 INFO    ] 200
[2026-06-22 09:13:15,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:13:15,055.055 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:13:15,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:13:15,135.135 INFO    ] No camera update needed
[2026-06-22 09:13:15,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:13:15,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:13:15,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:13:15,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:13:17,195.195 INFO    ] ================================================
[2026-06-22 09:13:17,212.212 INFO    ] Launching Daemon at Mon Jun 22 09:13:17 IST 2026
[2026-06-22 09:13:17,223.223 INFO    ] ================================================
[2026-06-22 09:13:17,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:13:17
[2026-06-22 09:13:18,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:13:18,723.723 INFO    ] Initializing speech engine...
[2026-06-22 09:13:18,734.734 INFO    ] 2026-06-22 09:13:18
[2026-06-22 09:13:19,001.001 INFO    ] 2026-06-22 09:13:18
[2026-06-22 09:13:19,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:13:19,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:13:19,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:13:19,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:13:19,393.393 INFO    ] time= 22/06/2026 09:13:19
[2026-06-22 09:13:19,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:13:19,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:13:19,579.579 INFO    ] No existing commands found in stream
[2026-06-22 09:13:24,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:13:24,609.609 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-22 09:13:27,965.965 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:13:27,968.968 INFO    ] Checking for system updates...
[2026-06-22 09:13:28,010.010 INFO    ] 200
[2026-06-22 09:13:28,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:13:28,080.080 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:13:28,083.083 INFO    ] No update needed
[2026-06-22 09:13:28,086.086 INFO    ] Checking for camera pi updates...
[2026-06-22 09:13:28,121.121 INFO    ] 200
[2026-06-22 09:13:28,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:13:28,171.171 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:13:28,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:13:28,253.253 INFO    ] No camera update needed
[2026-06-22 09:13:28,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:13:28,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:13:28,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:13:28,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:13:30,315.315 INFO    ] ================================================
[2026-06-22 09:13:30,331.331 INFO    ] Launching Daemon at Mon Jun 22 09:13:30 IST 2026
[2026-06-22 09:13:30,342.342 INFO    ] ================================================
[2026-06-22 09:13:30,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:13:30
[2026-06-22 09:13:31,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:13:31,667.667 INFO    ] Initializing speech engine...
[2026-06-22 09:13:31,690.690 INFO    ] 2026-06-22 09:13:31
[2026-06-22 09:13:31,965.965 INFO    ] 2026-06-22 09:13:31
[2026-06-22 09:13:32,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:13:32,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:13:32,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:13:32,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:13:32,465.465 INFO    ] time= 22/06/2026 09:13:32
[2026-06-22 09:13:32,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:13:32,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:13:32,706.706 INFO    ] No existing commands found in stream
[2026-06-22 09:13:37,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:13:37,738.738 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-22 09:13:40,652.652 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:13:40,655.655 INFO    ] Checking for system updates...
[2026-06-22 09:13:40,711.711 INFO    ] 200
[2026-06-22 09:13:40,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:13:40,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:13:40,782.782 INFO    ] No update needed
[2026-06-22 09:13:40,785.785 INFO    ] Checking for camera pi updates...
[2026-06-22 09:13:40,822.822 INFO    ] 200
[2026-06-22 09:13:40,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:13:40,872.872 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:13:40,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:13:40,957.957 INFO    ] No camera update needed
[2026-06-22 09:13:40,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:13:40,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:13:40,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:13:40,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:13:43,012.012 INFO    ] ================================================
[2026-06-22 09:13:43,028.028 INFO    ] Launching Daemon at Mon Jun 22 09:13:43 IST 2026
[2026-06-22 09:13:43,039.039 INFO    ] ================================================
[2026-06-22 09:13:43,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:13:43
[2026-06-22 09:13:44,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:13:44,593.593 INFO    ] Initializing speech engine...
[2026-06-22 09:13:44,607.607 INFO    ] 2026-06-22 09:13:44
[2026-06-22 09:13:44,889.889 INFO    ] 2026-06-22 09:13:44
[2026-06-22 09:13:44,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:13:45,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:13:45,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:13:45,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:13:45,356.356 INFO    ] time= 22/06/2026 09:13:45
[2026-06-22 09:13:45,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:13:45,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:13:45,568.568 INFO    ] No existing commands found in stream
[2026-06-22 09:13:50,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:13:50,599.599 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-22 09:13:52,989.989 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:13:52,992.992 INFO    ] Checking for system updates...
[2026-06-22 09:13:53,031.031 INFO    ] 200
[2026-06-22 09:13:53,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:13:53,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:13:53,091.091 INFO    ] No update needed
[2026-06-22 09:13:53,093.093 INFO    ] Checking for camera pi updates...
[2026-06-22 09:13:53,132.132 INFO    ] 200
[2026-06-22 09:13:53,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:13:53,178.178 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:13:53,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:13:53,255.255 INFO    ] No camera update needed
[2026-06-22 09:13:53,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:13:53,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:13:53,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:13:53,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:13:55,311.311 INFO    ] ================================================
[2026-06-22 09:13:55,381.381 INFO    ] Launching Daemon at Mon Jun 22 09:13:55 IST 2026
[2026-06-22 09:13:55,393.393 INFO    ] ================================================
[2026-06-22 09:13:55,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:13:55
[2026-06-22 09:13:56,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:13:56,957.957 INFO    ] Initializing speech engine...
[2026-06-22 09:13:56,966.966 INFO    ] 2026-06-22 09:13:56
[2026-06-22 09:13:57,249.249 INFO    ] 2026-06-22 09:13:57
[2026-06-22 09:13:57,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:13:57,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:13:57,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:13:57,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:13:57,778.778 INFO    ] time= 22/06/2026 09:13:57
[2026-06-22 09:13:57,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:13:57,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:13:57,938.938 INFO    ] No existing commands found in stream
[2026-06-22 09:14:02,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:14:02,972.972 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-22 09:14:04,173.173 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:14:04,176.176 INFO    ] Checking for system updates...
[2026-06-22 09:14:04,217.217 INFO    ] 200
[2026-06-22 09:14:04,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:14:04,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:14:04,282.282 INFO    ] No update needed
[2026-06-22 09:14:04,285.285 INFO    ] Checking for camera pi updates...
[2026-06-22 09:14:04,323.323 INFO    ] 200
[2026-06-22 09:14:04,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:14:04,374.374 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:14:04,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:14:04,426.426 INFO    ] No camera update needed
[2026-06-22 09:14:04,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:14:04,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:14:04,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:14:04,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:14:06,485.485 INFO    ] ================================================
[2026-06-22 09:14:06,501.501 INFO    ] Launching Daemon at Mon Jun 22 09:14:06 IST 2026
[2026-06-22 09:14:06,512.512 INFO    ] ================================================
[2026-06-22 09:14:07,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:14:07
[2026-06-22 09:14:07,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:14:08,138.138 INFO    ] Initializing speech engine...
[2026-06-22 09:14:08,152.152 INFO    ] 2026-06-22 09:14:08
[2026-06-22 09:14:08,467.467 INFO    ] 2026-06-22 09:14:08
[2026-06-22 09:14:08,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:14:08,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:14:08,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:14:08,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:14:08,979.979 INFO    ] time= 22/06/2026 09:14:08
[2026-06-22 09:14:08,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:14:09,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:14:09,124.124 INFO    ] No existing commands found in stream
[2026-06-22 09:14:14,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:14:14,139.139 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-22 09:14:15,028.028 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:14:15,030.030 INFO    ] Checking for system updates...
[2026-06-22 09:14:15,051.051 INFO    ] 200
[2026-06-22 09:14:15,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:14:15,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:14:15,104.104 INFO    ] No update needed
[2026-06-22 09:14:15,107.107 INFO    ] Checking for camera pi updates...
[2026-06-22 09:14:15,147.147 INFO    ] 200
[2026-06-22 09:14:15,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:14:15,207.207 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:14:15,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:14:15,289.289 INFO    ] No camera update needed
[2026-06-22 09:14:15,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:14:15,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:14:15,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:14:15,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:14:17,344.344 INFO    ] ================================================
[2026-06-22 09:14:17,359.359 INFO    ] Launching Daemon at Mon Jun 22 09:14:17 IST 2026
[2026-06-22 09:14:17,370.370 INFO    ] ================================================
[2026-06-22 09:14:17,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:14:17
[2026-06-22 09:14:18,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:14:18,874.874 INFO    ] Initializing speech engine...
[2026-06-22 09:14:18,895.895 INFO    ] 2026-06-22 09:14:18
[2026-06-22 09:14:19,139.139 INFO    ] 2026-06-22 09:14:19
[2026-06-22 09:14:19,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:14:19,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:14:19,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:14:19,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:14:19,701.701 INFO    ] time= 22/06/2026 09:14:19
[2026-06-22 09:14:19,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:14:19,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:14:19,871.871 INFO    ] No existing commands found in stream
[2026-06-22 09:14:24,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:14:24,888.888 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-22 09:14:25,712.712 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:14:25,713.713 INFO    ] Checking for system updates...
[2026-06-22 09:14:25,735.735 INFO    ] 200
[2026-06-22 09:14:25,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:14:25,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:14:25,786.786 INFO    ] No update needed
[2026-06-22 09:14:25,788.788 INFO    ] Checking for camera pi updates...
[2026-06-22 09:14:25,824.824 INFO    ] 200
[2026-06-22 09:14:25,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:14:25,869.869 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:14:25,965.965 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:14:25,968.968 INFO    ] No camera update needed
[2026-06-22 09:14:25,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:14:25,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:14:25,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:14:25,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:14:28,028.028 INFO    ] ================================================
[2026-06-22 09:14:28,044.044 INFO    ] Launching Daemon at Mon Jun 22 09:14:28 IST 2026
[2026-06-22 09:14:28,055.055 INFO    ] ================================================
[2026-06-22 09:14:28,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:14:28
[2026-06-22 09:14:29,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:14:29,512.512 INFO    ] Initializing speech engine...
[2026-06-22 09:14:29,520.520 INFO    ] 2026-06-22 09:14:29
[2026-06-22 09:14:29,825.825 INFO    ] 2026-06-22 09:14:29
[2026-06-22 09:14:29,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:14:30,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:14:30,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:14:30,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:14:30,250.250 INFO    ] time= 22/06/2026 09:14:30
[2026-06-22 09:14:30,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:14:30,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:14:30,397.397 INFO    ] No existing commands found in stream
[2026-06-22 09:14:35,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:14:35,425.425 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-22 09:14:36,527.527 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:14:36,530.530 INFO    ] Checking for system updates...
[2026-06-22 09:14:36,568.568 INFO    ] 200
[2026-06-22 09:14:36,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:14:36,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:14:36,627.627 INFO    ] No update needed
[2026-06-22 09:14:36,629.629 INFO    ] Checking for camera pi updates...
[2026-06-22 09:14:36,667.667 INFO    ] 200
[2026-06-22 09:14:36,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:14:36,711.711 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:14:36,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:14:36,825.825 INFO    ] No camera update needed
[2026-06-22 09:14:36,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:14:36,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:14:36,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:14:36,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:14:38,883.883 INFO    ] ================================================
[2026-06-22 09:14:38,898.898 INFO    ] Launching Daemon at Mon Jun 22 09:14:38 IST 2026
[2026-06-22 09:14:38,910.910 INFO    ] ================================================
[2026-06-22 09:14:39,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:14:39
[2026-06-22 09:14:40,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:14:40,417.417 INFO    ] Initializing speech engine...
[2026-06-22 09:14:40,423.423 INFO    ] 2026-06-22 09:14:40
[2026-06-22 09:14:40,736.736 INFO    ] 2026-06-22 09:14:40
[2026-06-22 09:14:40,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:14:40,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:14:40,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:14:41,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:14:41,163.163 INFO    ] time= 22/06/2026 09:14:41
[2026-06-22 09:14:41,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:14:41,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:14:41,399.399 INFO    ] No existing commands found in stream
[2026-06-22 09:14:46,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:14:46,425.425 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-22 09:14:46,944.944 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:14:46,947.947 INFO    ] Checking for system updates...
[2026-06-22 09:14:46,986.986 INFO    ] 200
[2026-06-22 09:14:46,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:14:47,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:14:47,043.043 INFO    ] No update needed
[2026-06-22 09:14:47,045.045 INFO    ] Checking for camera pi updates...
[2026-06-22 09:14:47,079.079 INFO    ] 200
[2026-06-22 09:14:47,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:14:47,121.121 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:14:47,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:14:47,212.212 INFO    ] No camera update needed
[2026-06-22 09:14:47,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:14:47,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:14:47,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:14:47,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:14:49,268.268 INFO    ] ================================================
[2026-06-22 09:14:49,284.284 INFO    ] Launching Daemon at Mon Jun 22 09:14:49 IST 2026
[2026-06-22 09:14:49,294.294 INFO    ] ================================================
[2026-06-22 09:14:49,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:14:49
[2026-06-22 09:14:50,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:14:50,625.625 INFO    ] Initializing speech engine...
[2026-06-22 09:14:50,638.638 INFO    ] 2026-06-22 09:14:50
[2026-06-22 09:14:50,916.916 INFO    ] 2026-06-22 09:14:50
[2026-06-22 09:14:50,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:14:51,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:14:51,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:14:51,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:14:51,343.343 INFO    ] time= 22/06/2026 09:14:51
[2026-06-22 09:14:51,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:14:51,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:14:51,529.529 INFO    ] No existing commands found in stream
[2026-06-22 09:14:56,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:14:56,562.562 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-22 09:14:58,164.164 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:14:58,167.167 INFO    ] Checking for system updates...
[2026-06-22 09:14:58,205.205 INFO    ] 200
[2026-06-22 09:14:58,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:14:58,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:14:58,268.268 INFO    ] No update needed
[2026-06-22 09:14:58,270.270 INFO    ] Checking for camera pi updates...
[2026-06-22 09:14:58,307.307 INFO    ] 200
[2026-06-22 09:14:58,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:14:58,351.351 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:14:58,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:14:58,445.445 INFO    ] No camera update needed
[2026-06-22 09:14:58,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:14:58,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:14:58,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:14:58,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:15:00,500.500 INFO    ] ================================================
[2026-06-22 09:15:00,516.516 INFO    ] Launching Daemon at Mon Jun 22 09:15:00 IST 2026
[2026-06-22 09:15:00,526.526 INFO    ] ================================================
[2026-06-22 09:15:01,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:15:01
[2026-06-22 09:15:01,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:15:02,629.629 INFO    ] Initializing speech engine...
[2026-06-22 09:15:02,633.633 INFO    ] 2026-06-22 09:15:02
[2026-06-22 09:15:03,017.017 INFO    ] 2026-06-22 09:15:03
[2026-06-22 09:15:03,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:15:03,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:15:03,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:15:03,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:15:03,453.453 INFO    ] time= 22/06/2026 09:15:03
[2026-06-22 09:15:03,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:15:03,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:15:03,579.579 INFO    ] No existing commands found in stream
[2026-06-22 09:15:08,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:15:08,593.593 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-22 09:15:11,757.757 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:15:11,759.759 INFO    ] Checking for system updates...
[2026-06-22 09:15:11,780.780 INFO    ] 200
[2026-06-22 09:15:11,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:15:11,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:15:11,815.815 INFO    ] No update needed
[2026-06-22 09:15:11,817.817 INFO    ] Checking for camera pi updates...
[2026-06-22 09:15:11,840.840 INFO    ] 200
[2026-06-22 09:15:11,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:15:11,874.874 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:15:11,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:15:11,953.953 INFO    ] No camera update needed
[2026-06-22 09:15:11,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:15:11,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:15:11,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:15:11,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:15:14,011.011 INFO    ] ================================================
[2026-06-22 09:15:14,027.027 INFO    ] Launching Daemon at Mon Jun 22 09:15:14 IST 2026
[2026-06-22 09:15:14,038.038 INFO    ] ================================================
[2026-06-22 09:15:14,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:15:14
[2026-06-22 09:15:15,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:15:15,532.532 INFO    ] Initializing speech engine...
[2026-06-22 09:15:15,541.541 INFO    ] 2026-06-22 09:15:15
[2026-06-22 09:15:15,794.794 INFO    ] 2026-06-22 09:15:15
[2026-06-22 09:15:15,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:15:16,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:15:16,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:15:16,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:15:16,303.303 INFO    ] time= 22/06/2026 09:15:16
[2026-06-22 09:15:16,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:15:16,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:15:16,510.510 INFO    ] No existing commands found in stream
[2026-06-22 09:15:21,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:15:21,531.531 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-22 09:15:23,564.564 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:15:23,567.567 INFO    ] Checking for system updates...
[2026-06-22 09:15:23,603.603 INFO    ] 200
[2026-06-22 09:15:23,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:15:23,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:15:23,662.662 INFO    ] No update needed
[2026-06-22 09:15:23,665.665 INFO    ] Checking for camera pi updates...
[2026-06-22 09:15:23,703.703 INFO    ] 200
[2026-06-22 09:15:23,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:15:23,751.751 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:15:23,831.831 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:15:23,833.833 INFO    ] No camera update needed
[2026-06-22 09:15:23,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:15:23,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:15:23,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:15:23,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:15:25,890.890 INFO    ] ================================================
[2026-06-22 09:15:25,905.905 INFO    ] Launching Daemon at Mon Jun 22 09:15:25 IST 2026
[2026-06-22 09:15:25,916.916 INFO    ] ================================================
[2026-06-22 09:15:26,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:15:26
[2026-06-22 09:15:27,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:15:27,382.382 INFO    ] Initializing speech engine...
[2026-06-22 09:15:27,391.391 INFO    ] 2026-06-22 09:15:27
[2026-06-22 09:15:27,683.683 INFO    ] 2026-06-22 09:15:27
[2026-06-22 09:15:27,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:15:28,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:15:28,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:15:28,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:15:28,301.301 INFO    ] time= 22/06/2026 09:15:28
[2026-06-22 09:15:28,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:15:28,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:15:28,445.445 INFO    ] No existing commands found in stream
[2026-06-22 09:15:33,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:15:33,478.478 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-22 09:15:35,371.371 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:15:35,372.372 INFO    ] Checking for system updates...
[2026-06-22 09:15:35,393.393 INFO    ] 200
[2026-06-22 09:15:35,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:15:35,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:15:35,429.429 INFO    ] No update needed
[2026-06-22 09:15:35,430.430 INFO    ] Checking for camera pi updates...
[2026-06-22 09:15:35,451.451 INFO    ] 200
[2026-06-22 09:15:35,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:15:35,484.484 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:15:35,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:15:35,580.580 INFO    ] No camera update needed
[2026-06-22 09:15:35,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:15:35,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:15:35,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:15:35,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:15:37,636.636 INFO    ] ================================================
[2026-06-22 09:15:37,651.651 INFO    ] Launching Daemon at Mon Jun 22 09:15:37 IST 2026
[2026-06-22 09:15:37,663.663 INFO    ] ================================================
[2026-06-22 09:15:38,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:15:38
[2026-06-22 09:15:38,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:15:39,101.101 INFO    ] Initializing speech engine...
[2026-06-22 09:15:39,110.110 INFO    ] 2026-06-22 09:15:39
[2026-06-22 09:15:39,361.361 INFO    ] 2026-06-22 09:15:39
[2026-06-22 09:15:39,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:15:39,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:15:39,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:15:39,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:15:39,842.842 INFO    ] time= 22/06/2026 09:15:39
[2026-06-22 09:15:39,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:15:39,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:15:40,075.075 INFO    ] No existing commands found in stream
[2026-06-22 09:15:45,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:15:45,101.101 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-22 09:15:46,219.219 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:15:46,222.222 INFO    ] Checking for system updates...
[2026-06-22 09:15:46,259.259 INFO    ] 200
[2026-06-22 09:15:46,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:15:46,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:15:46,316.316 INFO    ] No update needed
[2026-06-22 09:15:46,319.319 INFO    ] Checking for camera pi updates...
[2026-06-22 09:15:46,352.352 INFO    ] 200
[2026-06-22 09:15:46,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:15:46,407.407 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:15:46,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:15:46,511.511 INFO    ] No camera update needed
[2026-06-22 09:15:46,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:15:46,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:15:46,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:15:46,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:15:48,559.559 INFO    ] ================================================
[2026-06-22 09:15:48,574.574 INFO    ] Launching Daemon at Mon Jun 22 09:15:48 IST 2026
[2026-06-22 09:15:48,585.585 INFO    ] ================================================
[2026-06-22 09:15:49,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:15:49
[2026-06-22 09:15:49,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:15:50,051.051 INFO    ] Initializing speech engine...
[2026-06-22 09:15:50,059.059 INFO    ] 2026-06-22 09:15:50
[2026-06-22 09:15:50,325.325 INFO    ] 2026-06-22 09:15:50
[2026-06-22 09:15:50,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:15:50,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:15:50,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:15:50,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:15:50,729.729 INFO    ] time= 22/06/2026 09:15:50
[2026-06-22 09:15:50,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:15:50,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:15:50,906.906 INFO    ] No existing commands found in stream
[2026-06-22 09:15:55,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:15:55,940.940 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-22 09:15:59,205.205 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:15:59,207.207 INFO    ] Checking for system updates...
[2026-06-22 09:15:59,247.247 INFO    ] 200
[2026-06-22 09:15:59,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:15:59,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:15:59,314.314 INFO    ] No update needed
[2026-06-22 09:15:59,317.317 INFO    ] Checking for camera pi updates...
[2026-06-22 09:15:59,352.352 INFO    ] 200
[2026-06-22 09:15:59,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:15:59,397.397 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:15:59,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:15:59,480.480 INFO    ] No camera update needed
[2026-06-22 09:15:59,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:15:59,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:15:59,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:15:59,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:16:01,578.578 INFO    ] ================================================
[2026-06-22 09:16:01,620.620 INFO    ] Launching Daemon at Mon Jun 22 09:16:01 IST 2026
[2026-06-22 09:16:01,649.649 INFO    ] ================================================
[2026-06-22 09:16:02,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:16:02
[2026-06-22 09:16:03,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:16:03,303.303 INFO    ] Initializing speech engine...
[2026-06-22 09:16:03,309.309 INFO    ] 2026-06-22 09:16:03
[2026-06-22 09:16:03,558.558 INFO    ] 2026-06-22 09:16:03
[2026-06-22 09:16:03,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:16:03,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:16:03,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:16:03,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:16:03,931.931 INFO    ] time= 22/06/2026 09:16:03
[2026-06-22 09:16:03,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:16:03,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:16:04,113.113 INFO    ] No existing commands found in stream
[2026-06-22 09:16:09,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:16:09,145.145 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-22 09:16:12,375.375 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:16:12,378.378 INFO    ] Checking for system updates...
[2026-06-22 09:16:12,422.422 INFO    ] 200
[2026-06-22 09:16:12,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:16:12,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:16:12,480.480 INFO    ] No update needed
[2026-06-22 09:16:12,483.483 INFO    ] Checking for camera pi updates...
[2026-06-22 09:16:12,517.517 INFO    ] 200
[2026-06-22 09:16:12,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:16:12,591.591 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:16:12,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:16:12,772.772 INFO    ] No camera update needed
[2026-06-22 09:16:12,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:16:12,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:16:12,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:16:12,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:16:14,830.830 INFO    ] ================================================
[2026-06-22 09:16:14,846.846 INFO    ] Launching Daemon at Mon Jun 22 09:16:14 IST 2026
[2026-06-22 09:16:14,857.857 INFO    ] ================================================
[2026-06-22 09:16:15,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:16:15
[2026-06-22 09:16:16,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:16:16,279.279 INFO    ] Initializing speech engine...
[2026-06-22 09:16:16,284.284 INFO    ] 2026-06-22 09:16:16
[2026-06-22 09:16:16,537.537 INFO    ] 2026-06-22 09:16:16
[2026-06-22 09:16:16,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:16:16,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:16:16,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:16:16,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:16:17,004.004 INFO    ] time= 22/06/2026 09:16:16
[2026-06-22 09:16:17,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:16:17,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:16:17,106.106 INFO    ] No existing commands found in stream
[2026-06-22 09:16:22,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:16:22,139.139 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-22 09:16:22,703.703 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:16:22,706.706 INFO    ] Checking for system updates...
[2026-06-22 09:16:22,742.742 INFO    ] 200
[2026-06-22 09:16:22,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:16:22,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:16:22,812.812 INFO    ] No update needed
[2026-06-22 09:16:22,815.815 INFO    ] Checking for camera pi updates...
[2026-06-22 09:16:22,856.856 INFO    ] 200
[2026-06-22 09:16:22,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:16:22,905.905 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:16:22,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:16:22,989.989 INFO    ] No camera update needed
[2026-06-22 09:16:22,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:16:22,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:16:23,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:16:23,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:16:25,053.053 INFO    ] ================================================
[2026-06-22 09:16:25,071.071 INFO    ] Launching Daemon at Mon Jun 22 09:16:25 IST 2026
[2026-06-22 09:16:25,083.083 INFO    ] ================================================
[2026-06-22 09:16:25,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:16:25
[2026-06-22 09:16:26,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:16:26,526.526 INFO    ] Initializing speech engine...
[2026-06-22 09:16:26,537.537 INFO    ] 2026-06-22 09:16:26
[2026-06-22 09:16:26,820.820 INFO    ] 2026-06-22 09:16:26
[2026-06-22 09:16:26,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:16:27,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:16:27,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:16:27,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:16:27,243.243 INFO    ] time= 22/06/2026 09:16:27
[2026-06-22 09:16:27,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:16:27,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:16:27,333.333 INFO    ] No existing commands found in stream
[2026-06-22 09:16:32,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:16:32,349.349 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-22 09:16:33,864.864 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:16:33,867.867 INFO    ] Checking for system updates...
[2026-06-22 09:16:33,903.903 INFO    ] 200
[2026-06-22 09:16:33,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:16:33,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:16:33,968.968 INFO    ] No update needed
[2026-06-22 09:16:33,971.971 INFO    ] Checking for camera pi updates...
[2026-06-22 09:16:34,006.006 INFO    ] 200
[2026-06-22 09:16:34,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:16:34,051.051 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:16:34,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:16:34,145.145 INFO    ] No camera update needed
[2026-06-22 09:16:34,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:16:34,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:16:34,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:16:34,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:16:36,205.205 INFO    ] ================================================
[2026-06-22 09:16:36,222.222 INFO    ] Launching Daemon at Mon Jun 22 09:16:36 IST 2026
[2026-06-22 09:16:36,234.234 INFO    ] ================================================
[2026-06-22 09:16:36,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:16:36
[2026-06-22 09:16:37,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:16:37,819.819 INFO    ] Initializing speech engine...
[2026-06-22 09:16:37,828.828 INFO    ] 2026-06-22 09:16:37
[2026-06-22 09:16:38,113.113 INFO    ] 2026-06-22 09:16:38
[2026-06-22 09:16:38,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:16:38,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:16:38,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:16:38,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:16:38,827.827 INFO    ] time= 22/06/2026 09:16:38
[2026-06-22 09:16:38,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:16:38,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:16:39,046.046 INFO    ] No existing commands found in stream
[2026-06-22 09:16:44,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:16:44,065.065 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-22 09:16:47,499.499 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:16:47,502.502 INFO    ] Checking for system updates...
[2026-06-22 09:16:47,553.553 INFO    ] 200
[2026-06-22 09:16:47,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:16:47,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:16:47,617.617 INFO    ] No update needed
[2026-06-22 09:16:47,620.620 INFO    ] Checking for camera pi updates...
[2026-06-22 09:16:47,654.654 INFO    ] 200
[2026-06-22 09:16:47,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:16:47,697.697 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:16:47,782.782 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:16:47,785.785 INFO    ] No camera update needed
[2026-06-22 09:16:47,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:16:47,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:16:47,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:16:47,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:16:49,841.841 INFO    ] ================================================
[2026-06-22 09:16:49,857.857 INFO    ] Launching Daemon at Mon Jun 22 09:16:49 IST 2026
[2026-06-22 09:16:49,868.868 INFO    ] ================================================
[2026-06-22 09:16:50,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:16:50
[2026-06-22 09:16:50,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:16:51,183.183 INFO    ] Initializing speech engine...
[2026-06-22 09:16:51,196.196 INFO    ] 2026-06-22 09:16:51
[2026-06-22 09:16:51,480.480 INFO    ] 2026-06-22 09:16:51
[2026-06-22 09:16:51,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:16:51,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:16:51,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:16:51,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:16:52,016.016 INFO    ] time= 22/06/2026 09:16:51
[2026-06-22 09:16:52,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:16:52,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:16:52,187.187 INFO    ] No existing commands found in stream
[2026-06-22 09:16:57,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:16:57,209.209 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-22 09:17:00,863.863 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:17:00,865.865 INFO    ] Checking for system updates...
[2026-06-22 09:17:00,901.901 INFO    ] 200
[2026-06-22 09:17:00,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:17:00,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:17:00,965.965 INFO    ] No update needed
[2026-06-22 09:17:00,967.967 INFO    ] Checking for camera pi updates...
[2026-06-22 09:17:01,001.001 INFO    ] 200
[2026-06-22 09:17:01,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:17:01,045.045 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:17:01,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:17:01,152.152 INFO    ] No camera update needed
[2026-06-22 09:17:01,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:17:01,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:17:01,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:17:01,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:17:03,210.210 INFO    ] ================================================
[2026-06-22 09:17:03,226.226 INFO    ] Launching Daemon at Mon Jun 22 09:17:03 IST 2026
[2026-06-22 09:17:03,237.237 INFO    ] ================================================
[2026-06-22 09:17:03,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:17:03
[2026-06-22 09:17:04,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:17:04,757.757 INFO    ] Initializing speech engine...
[2026-06-22 09:17:04,771.771 INFO    ] 2026-06-22 09:17:04
[2026-06-22 09:17:05,081.081 INFO    ] 2026-06-22 09:17:05
[2026-06-22 09:17:05,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:17:05,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:17:05,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:17:05,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:17:05,593.593 INFO    ] time= 22/06/2026 09:17:05
[2026-06-22 09:17:05,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:17:05,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:17:05,747.747 INFO    ] No existing commands found in stream
[2026-06-22 09:17:10,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:17:10,767.767 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-22 09:17:13,030.030 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:17:13,031.031 INFO    ] Checking for system updates...
[2026-06-22 09:17:13,067.067 INFO    ] 200
[2026-06-22 09:17:13,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:17:13,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:17:13,135.135 INFO    ] No update needed
[2026-06-22 09:17:13,138.138 INFO    ] Checking for camera pi updates...
[2026-06-22 09:17:13,176.176 INFO    ] 200
[2026-06-22 09:17:13,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:17:13,224.224 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:17:13,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:17:13,311.311 INFO    ] No camera update needed
[2026-06-22 09:17:13,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:17:13,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:17:13,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:17:13,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:17:15,367.367 INFO    ] ================================================
[2026-06-22 09:17:15,382.382 INFO    ] Launching Daemon at Mon Jun 22 09:17:15 IST 2026
[2026-06-22 09:17:15,393.393 INFO    ] ================================================
[2026-06-22 09:17:15,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:17:15
[2026-06-22 09:17:16,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:17:16,810.810 INFO    ] Initializing speech engine...
[2026-06-22 09:17:16,833.833 INFO    ] 2026-06-22 09:17:16
[2026-06-22 09:17:17,094.094 INFO    ] 2026-06-22 09:17:17
[2026-06-22 09:17:17,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:17:17,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:17:17,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:17:17,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:17:17,476.476 INFO    ] time= 22/06/2026 09:17:17
[2026-06-22 09:17:17,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:17:17,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:17:17,664.664 INFO    ] No existing commands found in stream
[2026-06-22 09:17:22,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:17:22,692.692 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-22 09:17:26,772.772 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:17:26,775.775 INFO    ] Checking for system updates...
[2026-06-22 09:17:26,812.812 INFO    ] 200
[2026-06-22 09:17:26,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:17:26,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:17:26,894.894 INFO    ] No update needed
[2026-06-22 09:17:26,897.897 INFO    ] Checking for camera pi updates...
[2026-06-22 09:17:26,931.931 INFO    ] 200
[2026-06-22 09:17:26,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:17:26,977.977 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:17:27,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:17:27,060.060 INFO    ] No camera update needed
[2026-06-22 09:17:27,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:17:27,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:17:27,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:17:27,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:17:29,120.120 INFO    ] ================================================
[2026-06-22 09:17:29,135.135 INFO    ] Launching Daemon at Mon Jun 22 09:17:29 IST 2026
[2026-06-22 09:17:29,146.146 INFO    ] ================================================
[2026-06-22 09:17:29,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:17:29
[2026-06-22 09:17:30,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:17:30,501.501 INFO    ] Initializing speech engine...
[2026-06-22 09:17:30,510.510 INFO    ] 2026-06-22 09:17:30
[2026-06-22 09:17:30,807.807 INFO    ] 2026-06-22 09:17:30
[2026-06-22 09:17:30,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:17:31,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:17:31,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:17:31,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:17:31,233.233 INFO    ] time= 22/06/2026 09:17:31
[2026-06-22 09:17:31,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:17:31,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:17:31,320.320 INFO    ] No existing commands found in stream
[2026-06-22 09:17:36,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:17:36,348.348 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-22 09:17:36,986.986 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:17:36,989.989 INFO    ] Checking for system updates...
[2026-06-22 09:17:37,029.029 INFO    ] 200
[2026-06-22 09:17:37,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:17:37,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:17:37,087.087 INFO    ] No update needed
[2026-06-22 09:17:37,089.089 INFO    ] Checking for camera pi updates...
[2026-06-22 09:17:37,123.123 INFO    ] 200
[2026-06-22 09:17:37,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:17:37,167.167 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:17:37,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:17:37,253.253 INFO    ] No camera update needed
[2026-06-22 09:17:37,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:17:37,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:17:37,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:17:37,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:17:39,311.311 INFO    ] ================================================
[2026-06-22 09:17:39,326.326 INFO    ] Launching Daemon at Mon Jun 22 09:17:39 IST 2026
[2026-06-22 09:17:39,336.336 INFO    ] ================================================
[2026-06-22 09:17:39,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:17:39
[2026-06-22 09:17:40,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:17:40,689.689 INFO    ] Initializing speech engine...
[2026-06-22 09:17:40,699.699 INFO    ] 2026-06-22 09:17:40
[2026-06-22 09:17:40,945.945 INFO    ] 2026-06-22 09:17:40
[2026-06-22 09:17:40,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:17:41,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:17:41,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:17:41,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:17:41,447.447 INFO    ] time= 22/06/2026 09:17:41
[2026-06-22 09:17:41,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:17:41,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:17:41,667.667 INFO    ] No existing commands found in stream
[2026-06-22 09:17:46,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:17:46,701.701 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-22 09:17:50,472.472 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:17:50,474.474 INFO    ] Checking for system updates...
[2026-06-22 09:17:50,496.496 INFO    ] 200
[2026-06-22 09:17:50,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:17:50,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:17:50,532.532 INFO    ] No update needed
[2026-06-22 09:17:50,534.534 INFO    ] Checking for camera pi updates...
[2026-06-22 09:17:50,558.558 INFO    ] 200
[2026-06-22 09:17:50,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:17:50,599.599 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:17:50,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:17:50,688.688 INFO    ] No camera update needed
[2026-06-22 09:17:50,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:17:50,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:17:50,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:17:50,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:17:52,750.750 INFO    ] ================================================
[2026-06-22 09:17:52,765.765 INFO    ] Launching Daemon at Mon Jun 22 09:17:52 IST 2026
[2026-06-22 09:17:52,776.776 INFO    ] ================================================
[2026-06-22 09:17:53,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:17:53
[2026-06-22 09:17:54,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:17:54,324.324 INFO    ] Initializing speech engine...
[2026-06-22 09:17:54,336.336 INFO    ] 2026-06-22 09:17:54
[2026-06-22 09:17:54,646.646 INFO    ] 2026-06-22 09:17:54
[2026-06-22 09:17:54,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:17:54,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:17:54,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:17:55,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:17:55,098.098 INFO    ] time= 22/06/2026 09:17:55
[2026-06-22 09:17:55,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:17:55,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:17:55,305.305 INFO    ] No existing commands found in stream
[2026-06-22 09:18:00,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:18:00,330.330 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-22 09:18:04,413.413 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:18:04,415.415 INFO    ] Checking for system updates...
[2026-06-22 09:18:04,452.452 INFO    ] 200
[2026-06-22 09:18:04,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:18:04,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:18:04,517.517 INFO    ] No update needed
[2026-06-22 09:18:04,520.520 INFO    ] Checking for camera pi updates...
[2026-06-22 09:18:04,557.557 INFO    ] 200
[2026-06-22 09:18:04,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:18:04,600.600 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:18:04,683.683 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:18:04,686.686 INFO    ] No camera update needed
[2026-06-22 09:18:04,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:18:04,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:18:04,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:18:04,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:18:06,743.743 INFO    ] ================================================
[2026-06-22 09:18:06,759.759 INFO    ] Launching Daemon at Mon Jun 22 09:18:06 IST 2026
[2026-06-22 09:18:06,770.770 INFO    ] ================================================
[2026-06-22 09:18:07,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:18:07
[2026-06-22 09:18:08,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:18:08,448.448 INFO    ] Initializing speech engine...
[2026-06-22 09:18:08,464.464 INFO    ] 2026-06-22 09:18:08
[2026-06-22 09:18:08,745.745 INFO    ] 2026-06-22 09:18:08
[2026-06-22 09:18:08,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:18:09,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:18:09,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:18:09,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:18:09,456.456 INFO    ] time= 22/06/2026 09:18:09
[2026-06-22 09:18:09,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:18:09,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:18:09,686.686 INFO    ] No existing commands found in stream
[2026-06-22 09:18:14,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:18:14,703.703 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-22 09:18:19,414.414 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:18:19,417.417 INFO    ] Checking for system updates...
[2026-06-22 09:18:19,454.454 INFO    ] 200
[2026-06-22 09:18:19,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:18:19,520.520 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:18:19,523.523 INFO    ] No update needed
[2026-06-22 09:18:19,530.530 INFO    ] Checking for camera pi updates...
[2026-06-22 09:18:19,566.566 INFO    ] 200
[2026-06-22 09:18:19,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:18:19,616.616 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:18:19,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:18:19,800.800 INFO    ] No camera update needed
[2026-06-22 09:18:19,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:18:19,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:18:19,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:18:19,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:18:21,860.860 INFO    ] ================================================
[2026-06-22 09:18:21,875.875 INFO    ] Launching Daemon at Mon Jun 22 09:18:21 IST 2026
[2026-06-22 09:18:21,886.886 INFO    ] ================================================
[2026-06-22 09:18:22,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:18:22
[2026-06-22 09:18:22,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:18:23,223.223 INFO    ] Initializing speech engine...
[2026-06-22 09:18:23,232.232 INFO    ] 2026-06-22 09:18:23
[2026-06-22 09:18:23,526.526 INFO    ] 2026-06-22 09:18:23
[2026-06-22 09:18:23,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:18:23,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:18:23,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:18:23,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:18:23,948.948 INFO    ] time= 22/06/2026 09:18:23
[2026-06-22 09:18:23,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:18:24,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:18:24,128.128 INFO    ] No existing commands found in stream
[2026-06-22 09:18:29,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:18:29,151.151 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-22 09:18:31,073.073 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:18:31,076.076 INFO    ] Checking for system updates...
[2026-06-22 09:18:31,112.112 INFO    ] 200
[2026-06-22 09:18:31,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:18:31,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:18:31,171.171 INFO    ] No update needed
[2026-06-22 09:18:31,173.173 INFO    ] Checking for camera pi updates...
[2026-06-22 09:18:31,207.207 INFO    ] 200
[2026-06-22 09:18:31,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:18:31,255.255 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:18:31,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:18:31,341.341 INFO    ] No camera update needed
[2026-06-22 09:18:31,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:18:31,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:18:31,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:18:31,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:18:33,399.399 INFO    ] ================================================
[2026-06-22 09:18:33,414.414 INFO    ] Launching Daemon at Mon Jun 22 09:18:33 IST 2026
[2026-06-22 09:18:33,425.425 INFO    ] ================================================
[2026-06-22 09:18:34,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:18:33
[2026-06-22 09:18:34,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:18:34,868.868 INFO    ] Initializing speech engine...
[2026-06-22 09:18:34,877.877 INFO    ] 2026-06-22 09:18:34
[2026-06-22 09:18:35,127.127 INFO    ] 2026-06-22 09:18:35
[2026-06-22 09:18:35,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:18:35,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:18:35,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:18:35,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:18:35,510.510 INFO    ] time= 22/06/2026 09:18:35
[2026-06-22 09:18:35,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:18:35,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:18:35,688.688 INFO    ] No existing commands found in stream
[2026-06-22 09:18:40,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:18:40,702.702 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-22 09:18:42,027.027 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:18:42,029.029 INFO    ] Checking for system updates...
[2026-06-22 09:18:42,066.066 INFO    ] 200
[2026-06-22 09:18:42,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:18:42,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:18:42,131.131 INFO    ] No update needed
[2026-06-22 09:18:42,135.135 INFO    ] Checking for camera pi updates...
[2026-06-22 09:18:42,201.201 INFO    ] 200
[2026-06-22 09:18:42,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:18:42,256.256 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:18:42,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:18:42,355.355 INFO    ] No camera update needed
[2026-06-22 09:18:42,357.357 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:18:42,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:18:42,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:18:42,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:18:44,410.410 INFO    ] ================================================
[2026-06-22 09:18:44,426.426 INFO    ] Launching Daemon at Mon Jun 22 09:18:44 IST 2026
[2026-06-22 09:18:44,436.436 INFO    ] ================================================
[2026-06-22 09:18:45,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:18:45
[2026-06-22 09:18:45,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:18:45,771.771 INFO    ] Initializing speech engine...
[2026-06-22 09:18:45,781.781 INFO    ] 2026-06-22 09:18:45
[2026-06-22 09:18:46,027.027 INFO    ] 2026-06-22 09:18:46
[2026-06-22 09:18:46,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:18:46,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:18:46,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:18:46,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:18:46,496.496 INFO    ] time= 22/06/2026 09:18:46
[2026-06-22 09:18:46,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:18:46,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:18:46,720.720 INFO    ] No existing commands found in stream
[2026-06-22 09:18:51,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:18:51,747.747 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-22 09:18:55,438.438 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:18:55,441.441 INFO    ] Checking for system updates...
[2026-06-22 09:18:55,478.478 INFO    ] 200
[2026-06-22 09:18:55,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:18:55,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:18:55,545.545 INFO    ] No update needed
[2026-06-22 09:18:55,548.548 INFO    ] Checking for camera pi updates...
[2026-06-22 09:18:55,587.587 INFO    ] 200
[2026-06-22 09:18:55,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:18:55,633.633 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:18:55,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:18:55,712.712 INFO    ] No camera update needed
[2026-06-22 09:18:55,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:18:55,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:18:55,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:18:55,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:18:57,772.772 INFO    ] ================================================
[2026-06-22 09:18:57,788.788 INFO    ] Launching Daemon at Mon Jun 22 09:18:57 IST 2026
[2026-06-22 09:18:57,798.798 INFO    ] ================================================
[2026-06-22 09:18:58,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:18:58
[2026-06-22 09:18:59,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:18:59,301.301 INFO    ] Initializing speech engine...
[2026-06-22 09:18:59,307.307 INFO    ] 2026-06-22 09:18:59
[2026-06-22 09:18:59,560.560 INFO    ] 2026-06-22 09:18:59
[2026-06-22 09:18:59,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:18:59,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:18:59,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:18:59,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:19:00,033.033 INFO    ] time= 22/06/2026 09:18:59
[2026-06-22 09:19:00,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:19:00,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:19:00,170.170 INFO    ] No existing commands found in stream
[2026-06-22 09:19:05,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:19:05,186.186 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-22 09:19:06,201.201 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:19:06,207.207 INFO    ] Checking for system updates...
[2026-06-22 09:19:06,264.264 INFO    ] 200
[2026-06-22 09:19:06,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:19:06,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:19:06,329.329 INFO    ] No update needed
[2026-06-22 09:19:06,333.333 INFO    ] Checking for camera pi updates...
[2026-06-22 09:19:06,372.372 INFO    ] 200
[2026-06-22 09:19:06,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:19:06,417.417 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:19:06,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:19:06,486.486 INFO    ] No camera update needed
[2026-06-22 09:19:06,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:19:06,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:19:06,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:19:06,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:19:08,544.544 INFO    ] ================================================
[2026-06-22 09:19:08,559.559 INFO    ] Launching Daemon at Mon Jun 22 09:19:08 IST 2026
[2026-06-22 09:19:08,570.570 INFO    ] ================================================
[2026-06-22 09:19:09,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:19:09
[2026-06-22 09:19:09,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:19:09,908.908 INFO    ] Initializing speech engine...
[2026-06-22 09:19:09,917.917 INFO    ] 2026-06-22 09:19:09
[2026-06-22 09:19:10,169.169 INFO    ] 2026-06-22 09:19:10
[2026-06-22 09:19:10,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:19:10,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:19:10,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:19:10,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:19:10,648.648 INFO    ] time= 22/06/2026 09:19:10
[2026-06-22 09:19:10,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:19:10,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:19:10,868.868 INFO    ] No existing commands found in stream
[2026-06-22 09:19:15,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:19:15,887.887 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-22 09:19:16,443.443 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:19:16,446.446 INFO    ] Checking for system updates...
[2026-06-22 09:19:16,484.484 INFO    ] 200
[2026-06-22 09:19:16,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:19:16,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:19:16,555.555 INFO    ] No update needed
[2026-06-22 09:19:16,558.558 INFO    ] Checking for camera pi updates...
[2026-06-22 09:19:16,598.598 INFO    ] 200
[2026-06-22 09:19:16,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:19:16,648.648 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:19:16,702.702 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:19:16,705.705 INFO    ] No camera update needed
[2026-06-22 09:19:16,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:19:16,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:19:16,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:19:16,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:19:18,763.763 INFO    ] ================================================
[2026-06-22 09:19:18,779.779 INFO    ] Launching Daemon at Mon Jun 22 09:19:18 IST 2026
[2026-06-22 09:19:18,790.790 INFO    ] ================================================
[2026-06-22 09:19:19,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:19:19
[2026-06-22 09:19:20,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:19:20,343.343 INFO    ] Initializing speech engine...
[2026-06-22 09:19:20,350.350 INFO    ] 2026-06-22 09:19:20
[2026-06-22 09:19:20,644.644 INFO    ] 2026-06-22 09:19:20
[2026-06-22 09:19:20,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:19:20,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:19:20,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:19:21,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:19:21,177.177 INFO    ] time= 22/06/2026 09:19:21
[2026-06-22 09:19:21,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:19:21,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:19:21,345.345 INFO    ] No existing commands found in stream
[2026-06-22 09:19:26,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:19:26,375.375 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-22 09:19:28,349.349 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:19:28,352.352 INFO    ] Checking for system updates...
[2026-06-22 09:19:28,397.397 INFO    ] 200
[2026-06-22 09:19:28,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:19:28,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:19:28,470.470 INFO    ] No update needed
[2026-06-22 09:19:28,473.473 INFO    ] Checking for camera pi updates...
[2026-06-22 09:19:28,508.508 INFO    ] 200
[2026-06-22 09:19:28,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:19:28,551.551 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:19:28,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:19:28,637.637 INFO    ] No camera update needed
[2026-06-22 09:19:28,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:19:28,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:19:28,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:19:28,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:19:30,697.697 INFO    ] ================================================
[2026-06-22 09:19:30,713.713 INFO    ] Launching Daemon at Mon Jun 22 09:19:30 IST 2026
[2026-06-22 09:19:30,724.724 INFO    ] ================================================
[2026-06-22 09:19:31,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:19:31
[2026-06-22 09:19:31,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:19:32,224.224 INFO    ] Initializing speech engine...
[2026-06-22 09:19:32,238.238 INFO    ] 2026-06-22 09:19:32
[2026-06-22 09:19:32,509.509 INFO    ] 2026-06-22 09:19:32
[2026-06-22 09:19:32,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:19:32,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:19:32,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:19:32,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:19:32,887.887 INFO    ] time= 22/06/2026 09:19:32
[2026-06-22 09:19:32,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:19:32,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:19:33,025.025 INFO    ] No existing commands found in stream
[2026-06-22 09:19:38,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:19:38,040.040 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-22 09:19:42,353.353 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:19:42,355.355 INFO    ] Checking for system updates...
[2026-06-22 09:19:42,391.391 INFO    ] 200
[2026-06-22 09:19:42,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:19:42,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:19:42,465.465 INFO    ] No update needed
[2026-06-22 09:19:42,468.468 INFO    ] Checking for camera pi updates...
[2026-06-22 09:19:42,503.503 INFO    ] 200
[2026-06-22 09:19:42,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:19:42,548.548 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:19:42,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:19:42,631.631 INFO    ] No camera update needed
[2026-06-22 09:19:42,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:19:42,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:19:42,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:19:42,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:19:44,679.679 INFO    ] ================================================
[2026-06-22 09:19:44,694.694 INFO    ] Launching Daemon at Mon Jun 22 09:19:44 IST 2026
[2026-06-22 09:19:44,706.706 INFO    ] ================================================
[2026-06-22 09:19:45,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:19:45
[2026-06-22 09:19:45,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:19:46,140.140 INFO    ] Initializing speech engine...
[2026-06-22 09:19:46,147.147 INFO    ] 2026-06-22 09:19:46
[2026-06-22 09:19:46,390.390 INFO    ] 2026-06-22 09:19:46
[2026-06-22 09:19:46,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:19:46,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:19:46,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:19:46,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:19:46,863.863 INFO    ] time= 22/06/2026 09:19:46
[2026-06-22 09:19:46,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:19:46,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:19:47,077.077 INFO    ] No existing commands found in stream
[2026-06-22 09:19:52,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:19:52,100.100 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-22 09:19:54,012.012 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:19:54,015.015 INFO    ] Checking for system updates...
[2026-06-22 09:19:54,050.050 INFO    ] 200
[2026-06-22 09:19:54,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:19:54,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:19:54,112.112 INFO    ] No update needed
[2026-06-22 09:19:54,114.114 INFO    ] Checking for camera pi updates...
[2026-06-22 09:19:54,150.150 INFO    ] 200
[2026-06-22 09:19:54,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:19:54,196.196 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:19:54,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:19:54,298.298 INFO    ] No camera update needed
[2026-06-22 09:19:54,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:19:54,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:19:54,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:19:54,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:19:56,353.353 INFO    ] ================================================
[2026-06-22 09:19:56,369.369 INFO    ] Launching Daemon at Mon Jun 22 09:19:56 IST 2026
[2026-06-22 09:19:56,380.380 INFO    ] ================================================
[2026-06-22 09:19:56,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:19:56
[2026-06-22 09:19:57,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:19:57,900.900 INFO    ] Initializing speech engine...
[2026-06-22 09:19:57,913.913 INFO    ] 2026-06-22 09:19:57
[2026-06-22 09:19:58,196.196 INFO    ] 2026-06-22 09:19:58
[2026-06-22 09:19:58,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:19:58,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:19:58,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:19:58,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:19:58,732.732 INFO    ] time= 22/06/2026 09:19:58
[2026-06-22 09:19:58,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:19:58,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:19:58,878.878 INFO    ] No existing commands found in stream
[2026-06-22 09:20:03,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:20:03,903.903 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-22 09:20:08,497.497 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:20:08,500.500 INFO    ] Checking for system updates...
[2026-06-22 09:20:08,537.537 INFO    ] 200
[2026-06-22 09:20:08,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:20:08,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:20:08,595.595 INFO    ] No update needed
[2026-06-22 09:20:08,598.598 INFO    ] Checking for camera pi updates...
[2026-06-22 09:20:08,631.631 INFO    ] 200
[2026-06-22 09:20:08,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:20:08,674.674 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:20:08,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:20:08,726.726 INFO    ] No camera update needed
[2026-06-22 09:20:08,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:20:08,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:20:08,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:20:08,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:20:10,781.781 INFO    ] ================================================
[2026-06-22 09:20:10,795.795 INFO    ] Launching Daemon at Mon Jun 22 09:20:10 IST 2026
[2026-06-22 09:20:10,806.806 INFO    ] ================================================
[2026-06-22 09:20:11,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:20:11
[2026-06-22 09:20:11,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:20:12,255.255 INFO    ] Initializing speech engine...
[2026-06-22 09:20:12,264.264 INFO    ] 2026-06-22 09:20:12
[2026-06-22 09:20:12,524.524 INFO    ] 2026-06-22 09:20:12
[2026-06-22 09:20:12,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:20:12,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:20:12,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:20:12,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:20:12,982.982 INFO    ] time= 22/06/2026 09:20:12
[2026-06-22 09:20:13,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:20:13,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:20:13,204.204 INFO    ] No existing commands found in stream
[2026-06-22 09:20:18,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:20:18,229.229 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-22 09:20:19,256.256 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:20:19,257.257 INFO    ] Checking for system updates...
[2026-06-22 09:20:19,278.278 INFO    ] 200
[2026-06-22 09:20:19,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:20:19,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:20:19,333.333 INFO    ] No update needed
[2026-06-22 09:20:19,336.336 INFO    ] Checking for camera pi updates...
[2026-06-22 09:20:19,372.372 INFO    ] 200
[2026-06-22 09:20:19,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:20:19,419.419 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:20:19,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:20:19,500.500 INFO    ] No camera update needed
[2026-06-22 09:20:19,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:20:19,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:20:19,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:20:19,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:20:21,556.556 INFO    ] ================================================
[2026-06-22 09:20:21,571.571 INFO    ] Launching Daemon at Mon Jun 22 09:20:21 IST 2026
[2026-06-22 09:20:21,582.582 INFO    ] ================================================
[2026-06-22 09:20:22,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:20:22
[2026-06-22 09:20:22,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:20:22,898.898 INFO    ] Initializing speech engine...
[2026-06-22 09:20:22,914.914 INFO    ] 2026-06-22 09:20:22
[2026-06-22 09:20:23,189.189 INFO    ] 2026-06-22 09:20:23
[2026-06-22 09:20:23,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:20:23,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:20:23,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:20:23,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:20:23,593.593 INFO    ] time= 22/06/2026 09:20:23
[2026-06-22 09:20:23,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:20:23,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:20:23,677.677 INFO    ] No existing commands found in stream
[2026-06-22 09:20:28,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:20:28,694.694 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-22 09:20:32,207.207 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:20:32,210.210 INFO    ] Checking for system updates...
[2026-06-22 09:20:32,249.249 INFO    ] 200
[2026-06-22 09:20:32,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:20:32,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:20:32,312.312 INFO    ] No update needed
[2026-06-22 09:20:32,315.315 INFO    ] Checking for camera pi updates...
[2026-06-22 09:20:32,352.352 INFO    ] 200
[2026-06-22 09:20:32,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:20:32,405.405 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:20:32,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:20:32,467.467 INFO    ] No camera update needed
[2026-06-22 09:20:32,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:20:32,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:20:32,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:20:32,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:20:34,525.525 INFO    ] ================================================
[2026-06-22 09:20:34,540.540 INFO    ] Launching Daemon at Mon Jun 22 09:20:34 IST 2026
[2026-06-22 09:20:34,551.551 INFO    ] ================================================
[2026-06-22 09:20:35,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:20:35
[2026-06-22 09:20:35,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:20:35,863.863 INFO    ] Initializing speech engine...
[2026-06-22 09:20:35,876.876 INFO    ] 2026-06-22 09:20:35
[2026-06-22 09:20:36,138.138 INFO    ] 2026-06-22 09:20:36
[2026-06-22 09:20:36,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:20:36,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:20:36,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:20:36,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:20:36,517.517 INFO    ] time= 22/06/2026 09:20:36
[2026-06-22 09:20:36,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:20:36,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:20:36,710.710 INFO    ] No existing commands found in stream
[2026-06-22 09:20:41,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:20:41,724.724 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-22 09:20:42,782.782 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:20:42,785.785 INFO    ] Checking for system updates...
[2026-06-22 09:20:42,821.821 INFO    ] 200
[2026-06-22 09:20:42,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:20:42,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:20:42,879.879 INFO    ] No update needed
[2026-06-22 09:20:42,882.882 INFO    ] Checking for camera pi updates...
[2026-06-22 09:20:42,915.915 INFO    ] 200
[2026-06-22 09:20:42,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:20:42,957.957 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:20:43,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:20:43,041.041 INFO    ] No camera update needed
[2026-06-22 09:20:43,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:20:43,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:20:43,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:20:43,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:20:45,099.099 INFO    ] ================================================
[2026-06-22 09:20:45,114.114 INFO    ] Launching Daemon at Mon Jun 22 09:20:45 IST 2026
[2026-06-22 09:20:45,125.125 INFO    ] ================================================
[2026-06-22 09:20:45,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:20:45
[2026-06-22 09:20:46,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:20:46,476.476 INFO    ] Initializing speech engine...
[2026-06-22 09:20:46,494.494 INFO    ] 2026-06-22 09:20:46
[2026-06-22 09:20:46,751.751 INFO    ] 2026-06-22 09:20:46
[2026-06-22 09:20:46,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:20:47,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:20:47,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:20:47,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:20:47,208.208 INFO    ] time= 22/06/2026 09:20:47
[2026-06-22 09:20:47,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:20:47,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:20:47,432.432 INFO    ] No existing commands found in stream
[2026-06-22 09:20:52,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:20:52,459.459 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-22 09:20:55,627.627 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:20:55,628.628 INFO    ] Checking for system updates...
[2026-06-22 09:20:55,649.649 INFO    ] 200
[2026-06-22 09:20:55,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:20:55,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:20:55,682.682 INFO    ] No update needed
[2026-06-22 09:20:55,683.683 INFO    ] Checking for camera pi updates...
[2026-06-22 09:20:55,706.706 INFO    ] 200
[2026-06-22 09:20:55,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:20:55,749.749 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:20:55,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:20:55,807.807 INFO    ] No camera update needed
[2026-06-22 09:20:55,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:20:55,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:20:55,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:20:55,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:20:57,863.863 INFO    ] ================================================
[2026-06-22 09:20:57,878.878 INFO    ] Launching Daemon at Mon Jun 22 09:20:57 IST 2026
[2026-06-22 09:20:57,888.888 INFO    ] ================================================
[2026-06-22 09:20:58,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:20:58
[2026-06-22 09:20:59,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:20:59,317.317 INFO    ] Initializing speech engine...
[2026-06-22 09:20:59,326.326 INFO    ] 2026-06-22 09:20:59
[2026-06-22 09:20:59,572.572 INFO    ] 2026-06-22 09:20:59
[2026-06-22 09:20:59,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:20:59,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:20:59,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:20:59,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:20:59,977.977 INFO    ] time= 22/06/2026 09:20:59
[2026-06-22 09:20:59,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:21:00,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:21:00,179.179 INFO    ] No existing commands found in stream
[2026-06-22 09:21:05,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:21:05,199.199 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-22 09:21:05,966.966 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:21:05,969.969 INFO    ] Checking for system updates...
[2026-06-22 09:21:06,007.007 INFO    ] 200
[2026-06-22 09:21:06,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:21:06,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:21:06,065.065 INFO    ] No update needed
[2026-06-22 09:21:06,067.067 INFO    ] Checking for camera pi updates...
[2026-06-22 09:21:06,103.103 INFO    ] 200
[2026-06-22 09:21:06,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:21:06,147.147 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:21:06,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:21:06,219.219 INFO    ] No camera update needed
[2026-06-22 09:21:06,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:21:06,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:21:06,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:21:06,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:21:08,267.267 INFO    ] ================================================
[2026-06-22 09:21:08,282.282 INFO    ] Launching Daemon at Mon Jun 22 09:21:08 IST 2026
[2026-06-22 09:21:08,293.293 INFO    ] ================================================
[2026-06-22 09:21:08,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:21:08
[2026-06-22 09:21:09,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:21:09,733.733 INFO    ] Initializing speech engine...
[2026-06-22 09:21:09,748.748 INFO    ] 2026-06-22 09:21:09
[2026-06-22 09:21:10,017.017 INFO    ] 2026-06-22 09:21:09
[2026-06-22 09:21:10,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:21:10,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:21:10,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:21:10,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:21:10,489.489 INFO    ] time= 22/06/2026 09:21:10
[2026-06-22 09:21:10,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:21:10,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:21:10,695.695 INFO    ] No existing commands found in stream
[2026-06-22 09:21:15,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:21:15,721.721 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-22 09:21:19,983.983 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:21:19,986.986 INFO    ] Checking for system updates...
[2026-06-22 09:21:20,022.022 INFO    ] 200
[2026-06-22 09:21:20,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:21:20,078.078 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:21:20,081.081 INFO    ] No update needed
[2026-06-22 09:21:20,083.083 INFO    ] Checking for camera pi updates...
[2026-06-22 09:21:20,116.116 INFO    ] 200
[2026-06-22 09:21:20,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:21:20,160.160 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:21:20,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:21:20,246.246 INFO    ] No camera update needed
[2026-06-22 09:21:20,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:21:20,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:21:20,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:21:20,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:21:22,302.302 INFO    ] ================================================
[2026-06-22 09:21:22,317.317 INFO    ] Launching Daemon at Mon Jun 22 09:21:22 IST 2026
[2026-06-22 09:21:22,327.327 INFO    ] ================================================
[2026-06-22 09:21:22,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:21:22
[2026-06-22 09:21:23,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:21:23,672.672 INFO    ] Initializing speech engine...
[2026-06-22 09:21:23,681.681 INFO    ] 2026-06-22 09:21:23
[2026-06-22 09:21:23,933.933 INFO    ] 2026-06-22 09:21:23
[2026-06-22 09:21:23,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:21:24,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:21:24,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:21:24,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:21:24,407.407 INFO    ] time= 22/06/2026 09:21:24
[2026-06-22 09:21:24,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:21:24,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:21:24,633.633 INFO    ] No existing commands found in stream
[2026-06-22 09:21:29,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:21:29,669.669 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-22 09:21:31,389.389 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:21:31,391.391 INFO    ] Checking for system updates...
[2026-06-22 09:21:31,428.428 INFO    ] 200
[2026-06-22 09:21:31,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:21:31,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:21:31,487.487 INFO    ] No update needed
[2026-06-22 09:21:31,489.489 INFO    ] Checking for camera pi updates...
[2026-06-22 09:21:31,526.526 INFO    ] 200
[2026-06-22 09:21:31,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:21:31,573.573 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:21:31,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:21:31,662.662 INFO    ] No camera update needed
[2026-06-22 09:21:31,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:21:31,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:21:31,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:21:31,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:21:33,729.729 INFO    ] ================================================
[2026-06-22 09:21:33,744.744 INFO    ] Launching Daemon at Mon Jun 22 09:21:33 IST 2026
[2026-06-22 09:21:33,755.755 INFO    ] ================================================
[2026-06-22 09:21:34,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:21:34
[2026-06-22 09:21:34,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:21:35,093.093 INFO    ] Initializing speech engine...
[2026-06-22 09:21:35,107.107 INFO    ] 2026-06-22 09:21:35
[2026-06-22 09:21:35,387.387 INFO    ] 2026-06-22 09:21:35
[2026-06-22 09:21:35,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:21:35,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:21:35,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:21:35,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:21:35,799.799 INFO    ] time= 22/06/2026 09:21:35
[2026-06-22 09:21:35,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:21:35,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:21:35,958.958 INFO    ] No existing commands found in stream
[2026-06-22 09:21:40,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:21:40,984.984 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-22 09:21:44,302.302 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:21:44,305.305 INFO    ] Checking for system updates...
[2026-06-22 09:21:44,342.342 INFO    ] 200
[2026-06-22 09:21:44,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:21:44,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:21:44,406.406 INFO    ] No update needed
[2026-06-22 09:21:44,409.409 INFO    ] Checking for camera pi updates...
[2026-06-22 09:21:44,443.443 INFO    ] 200
[2026-06-22 09:21:44,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:21:44,487.487 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:21:44,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:21:44,571.571 INFO    ] No camera update needed
[2026-06-22 09:21:44,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:21:44,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:21:44,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:21:44,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:21:46,626.626 INFO    ] ================================================
[2026-06-22 09:21:46,644.644 INFO    ] Launching Daemon at Mon Jun 22 09:21:46 IST 2026
[2026-06-22 09:21:46,655.655 INFO    ] ================================================
[2026-06-22 09:21:47,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:21:47
[2026-06-22 09:21:47,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:21:48,067.067 INFO    ] Initializing speech engine...
[2026-06-22 09:21:48,076.076 INFO    ] 2026-06-22 09:21:48
[2026-06-22 09:21:48,341.341 INFO    ] 2026-06-22 09:21:48
[2026-06-22 09:21:48,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:21:48,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:21:48,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:21:48,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:21:48,815.815 INFO    ] time= 22/06/2026 09:21:48
[2026-06-22 09:21:48,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:21:48,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:21:49,053.053 INFO    ] No existing commands found in stream
[2026-06-22 09:21:54,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:21:54,077.077 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-22 09:21:58,453.453 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:21:58,456.456 INFO    ] Checking for system updates...
[2026-06-22 09:21:58,492.492 INFO    ] 200
[2026-06-22 09:21:58,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:21:58,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:21:58,551.551 INFO    ] No update needed
[2026-06-22 09:21:58,553.553 INFO    ] Checking for camera pi updates...
[2026-06-22 09:21:58,587.587 INFO    ] 200
[2026-06-22 09:21:58,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:21:58,630.630 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:21:58,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:21:58,707.707 INFO    ] No camera update needed
[2026-06-22 09:21:58,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:21:58,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:21:58,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:21:58,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:22:00,765.765 INFO    ] ================================================
[2026-06-22 09:22:00,780.780 INFO    ] Launching Daemon at Mon Jun 22 09:22:00 IST 2026
[2026-06-22 09:22:00,790.790 INFO    ] ================================================
[2026-06-22 09:22:01,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:22:01
[2026-06-22 09:22:02,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:22:02,568.568 INFO    ] Initializing speech engine...
[2026-06-22 09:22:02,583.583 INFO    ] 2026-06-22 09:22:02
[2026-06-22 09:22:02,871.871 INFO    ] 2026-06-22 09:22:02
[2026-06-22 09:22:02,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:22:03,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:22:03,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:22:03,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:22:03,358.358 INFO    ] time= 22/06/2026 09:22:03
[2026-06-22 09:22:03,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:22:03,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:22:03,556.556 INFO    ] No existing commands found in stream
[2026-06-22 09:22:08,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:22:08,589.589 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-22 09:22:10,657.657 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:22:10,661.661 INFO    ] Checking for system updates...
[2026-06-22 09:22:10,720.720 INFO    ] 200
[2026-06-22 09:22:10,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:22:10,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:22:10,786.786 INFO    ] No update needed
[2026-06-22 09:22:10,789.789 INFO    ] Checking for camera pi updates...
[2026-06-22 09:22:10,824.824 INFO    ] 200
[2026-06-22 09:22:10,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:22:10,869.869 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:22:10,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:22:10,950.950 INFO    ] No camera update needed
[2026-06-22 09:22:10,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:22:10,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:22:10,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:22:10,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:22:13,008.008 INFO    ] ================================================
[2026-06-22 09:22:13,023.023 INFO    ] Launching Daemon at Mon Jun 22 09:22:13 IST 2026
[2026-06-22 09:22:13,034.034 INFO    ] ================================================
[2026-06-22 09:22:13,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:22:13
[2026-06-22 09:22:14,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:22:14,352.352 INFO    ] Initializing speech engine...
[2026-06-22 09:22:14,368.368 INFO    ] 2026-06-22 09:22:14
[2026-06-22 09:22:14,651.651 INFO    ] 2026-06-22 09:22:14
[2026-06-22 09:22:14,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:22:14,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:22:14,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:22:15,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:22:15,061.061 INFO    ] time= 22/06/2026 09:22:15
[2026-06-22 09:22:15,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:22:15,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:22:15,147.147 INFO    ] No existing commands found in stream
[2026-06-22 09:22:20,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:22:20,166.166 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-22 09:22:22,009.009 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:22:22,011.011 INFO    ] Checking for system updates...
[2026-06-22 09:22:22,047.047 INFO    ] 200
[2026-06-22 09:22:22,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:22:22,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:22:22,104.104 INFO    ] No update needed
[2026-06-22 09:22:22,106.106 INFO    ] Checking for camera pi updates...
[2026-06-22 09:22:22,139.139 INFO    ] 200
[2026-06-22 09:22:22,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:22:22,182.182 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:22:22,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:22:22,243.243 INFO    ] No camera update needed
[2026-06-22 09:22:22,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:22:22,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:22:22,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:22:22,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:22:24,300.300 INFO    ] ================================================
[2026-06-22 09:22:24,315.315 INFO    ] Launching Daemon at Mon Jun 22 09:22:24 IST 2026
[2026-06-22 09:22:24,326.326 INFO    ] ================================================
[2026-06-22 09:22:24,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:22:24
[2026-06-22 09:22:25,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:22:25,750.750 INFO    ] Initializing speech engine...
[2026-06-22 09:22:25,765.765 INFO    ] 2026-06-22 09:22:25
[2026-06-22 09:22:26,037.037 INFO    ] 2026-06-22 09:22:26
[2026-06-22 09:22:26,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:22:26,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:22:26,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:22:26,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:22:26,431.431 INFO    ] time= 22/06/2026 09:22:26
[2026-06-22 09:22:26,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:22:26,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:22:26,626.626 INFO    ] No existing commands found in stream
[2026-06-22 09:22:31,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:22:31,640.640 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-22 09:22:33,113.113 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:22:33,116.116 INFO    ] Checking for system updates...
[2026-06-22 09:22:33,153.153 INFO    ] 200
[2026-06-22 09:22:33,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:22:33,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:22:33,216.216 INFO    ] No update needed
[2026-06-22 09:22:33,218.218 INFO    ] Checking for camera pi updates...
[2026-06-22 09:22:33,264.264 INFO    ] 200
[2026-06-22 09:22:33,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:22:33,311.311 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:22:33,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:22:33,374.374 INFO    ] No camera update needed
[2026-06-22 09:22:33,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:22:33,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:22:33,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:22:33,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:22:35,429.429 INFO    ] ================================================
[2026-06-22 09:22:35,444.444 INFO    ] Launching Daemon at Mon Jun 22 09:22:35 IST 2026
[2026-06-22 09:22:35,455.455 INFO    ] ================================================
[2026-06-22 09:22:36,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:22:36
[2026-06-22 09:22:36,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:22:36,858.858 INFO    ] Initializing speech engine...
[2026-06-22 09:22:36,868.868 INFO    ] 2026-06-22 09:22:36
[2026-06-22 09:22:37,119.119 INFO    ] 2026-06-22 09:22:37
[2026-06-22 09:22:37,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:22:37,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:22:37,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:22:37,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:22:37,587.587 INFO    ] time= 22/06/2026 09:22:37
[2026-06-22 09:22:37,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:22:37,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:22:37,800.800 INFO    ] No existing commands found in stream
[2026-06-22 09:22:42,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:22:42,829.829 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-22 09:22:44,569.569 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:22:44,571.571 INFO    ] Checking for system updates...
[2026-06-22 09:22:44,607.607 INFO    ] 200
[2026-06-22 09:22:44,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:22:44,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:22:44,665.665 INFO    ] No update needed
[2026-06-22 09:22:44,667.667 INFO    ] Checking for camera pi updates...
[2026-06-22 09:22:44,700.700 INFO    ] 200
[2026-06-22 09:22:44,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:22:44,748.748 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:22:44,899.899 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:22:44,902.902 INFO    ] No camera update needed
[2026-06-22 09:22:44,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:22:44,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:22:44,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:22:44,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:22:46,958.958 INFO    ] ================================================
[2026-06-22 09:22:46,973.973 INFO    ] Launching Daemon at Mon Jun 22 09:22:46 IST 2026
[2026-06-22 09:22:46,983.983 INFO    ] ================================================
[2026-06-22 09:22:47,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:22:47
[2026-06-22 09:22:48,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:22:48,342.342 INFO    ] Initializing speech engine...
[2026-06-22 09:22:48,350.350 INFO    ] 2026-06-22 09:22:48
[2026-06-22 09:22:48,644.644 INFO    ] 2026-06-22 09:22:48
[2026-06-22 09:22:48,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:22:48,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:22:48,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:22:49,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:22:49,063.063 INFO    ] time= 22/06/2026 09:22:49
[2026-06-22 09:22:49,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:22:49,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:22:49,238.238 INFO    ] No existing commands found in stream
[2026-06-22 09:22:54,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:22:54,267.267 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-22 09:22:56,417.417 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:22:56,419.419 INFO    ] Checking for system updates...
[2026-06-22 09:22:56,456.456 INFO    ] 200
[2026-06-22 09:22:56,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:22:56,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:22:56,517.517 INFO    ] No update needed
[2026-06-22 09:22:56,519.519 INFO    ] Checking for camera pi updates...
[2026-06-22 09:22:56,552.552 INFO    ] 200
[2026-06-22 09:22:56,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:22:56,599.599 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:22:56,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:22:56,654.654 INFO    ] No camera update needed
[2026-06-22 09:22:56,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:22:56,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:22:56,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:22:56,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:22:58,710.710 INFO    ] ================================================
[2026-06-22 09:22:58,726.726 INFO    ] Launching Daemon at Mon Jun 22 09:22:58 IST 2026
[2026-06-22 09:22:58,738.738 INFO    ] ================================================
[2026-06-22 09:22:59,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:22:59
[2026-06-22 09:22:59,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:23:00,081.081 INFO    ] Initializing speech engine...
[2026-06-22 09:23:00,088.088 INFO    ] 2026-06-22 09:23:00
[2026-06-22 09:23:00,345.345 INFO    ] 2026-06-22 09:23:00
[2026-06-22 09:23:00,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:23:00,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:23:00,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:23:00,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:23:00,808.808 INFO    ] time= 22/06/2026 09:23:00
[2026-06-22 09:23:00,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:23:00,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:23:01,021.021 INFO    ] No existing commands found in stream
[2026-06-22 09:23:06,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:23:06,051.051 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-22 09:23:08,368.368 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:23:08,370.370 INFO    ] Checking for system updates...
[2026-06-22 09:23:08,431.431 INFO    ] 200
[2026-06-22 09:23:08,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:23:08,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:23:08,489.489 INFO    ] No update needed
[2026-06-22 09:23:08,491.491 INFO    ] Checking for camera pi updates...
[2026-06-22 09:23:08,527.527 INFO    ] 200
[2026-06-22 09:23:08,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:23:08,572.572 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:23:08,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:23:08,638.638 INFO    ] No camera update needed
[2026-06-22 09:23:08,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:23:08,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:23:08,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:23:08,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:23:10,700.700 INFO    ] ================================================
[2026-06-22 09:23:10,716.716 INFO    ] Launching Daemon at Mon Jun 22 09:23:10 IST 2026
[2026-06-22 09:23:10,727.727 INFO    ] ================================================
[2026-06-22 09:23:11,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:23:11
[2026-06-22 09:23:11,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:23:12,067.067 INFO    ] Initializing speech engine...
[2026-06-22 09:23:12,075.075 INFO    ] 2026-06-22 09:23:12
[2026-06-22 09:23:12,325.325 INFO    ] 2026-06-22 09:23:12
[2026-06-22 09:23:12,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:23:12,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:23:12,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:23:12,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:23:12,698.698 INFO    ] time= 22/06/2026 09:23:12
[2026-06-22 09:23:12,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:23:12,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:23:12,894.894 INFO    ] No existing commands found in stream
[2026-06-22 09:23:17,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:23:17,913.913 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-22 09:23:21,905.905 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:23:21,908.908 INFO    ] Checking for system updates...
[2026-06-22 09:23:21,946.946 INFO    ] 200
[2026-06-22 09:23:21,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:23:22,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:23:22,005.005 INFO    ] No update needed
[2026-06-22 09:23:22,008.008 INFO    ] Checking for camera pi updates...
[2026-06-22 09:23:22,042.042 INFO    ] 200
[2026-06-22 09:23:22,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:23:22,086.086 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:23:22,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:23:22,168.168 INFO    ] No camera update needed
[2026-06-22 09:23:22,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:23:22,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:23:22,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:23:22,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:23:24,227.227 INFO    ] ================================================
[2026-06-22 09:23:24,243.243 INFO    ] Launching Daemon at Mon Jun 22 09:23:24 IST 2026
[2026-06-22 09:23:24,255.255 INFO    ] ================================================
[2026-06-22 09:23:24,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:23:24
[2026-06-22 09:23:25,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:23:25,801.801 INFO    ] Initializing speech engine...
[2026-06-22 09:23:25,814.814 INFO    ] 2026-06-22 09:23:25
[2026-06-22 09:23:26,098.098 INFO    ] 2026-06-22 09:23:26
[2026-06-22 09:23:26,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:23:26,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:23:26,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:23:26,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:23:26,660.660 INFO    ] time= 22/06/2026 09:23:26
[2026-06-22 09:23:26,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:23:26,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:23:26,800.800 INFO    ] No existing commands found in stream
[2026-06-22 09:23:31,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:23:31,822.822 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-22 09:23:34,155.155 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:23:34,158.158 INFO    ] Checking for system updates...
[2026-06-22 09:23:34,196.196 INFO    ] 200
[2026-06-22 09:23:34,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:23:34,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:23:34,260.260 INFO    ] No update needed
[2026-06-22 09:23:34,262.262 INFO    ] Checking for camera pi updates...
[2026-06-22 09:23:34,301.301 INFO    ] 200
[2026-06-22 09:23:34,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:23:34,345.345 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:23:34,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:23:34,440.440 INFO    ] No camera update needed
[2026-06-22 09:23:34,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:23:34,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:23:34,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:23:34,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:23:36,496.496 INFO    ] ================================================
[2026-06-22 09:23:36,512.512 INFO    ] Launching Daemon at Mon Jun 22 09:23:36 IST 2026
[2026-06-22 09:23:36,524.524 INFO    ] ================================================
[2026-06-22 09:23:37,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:23:37
[2026-06-22 09:23:37,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:23:38,094.094 INFO    ] Initializing speech engine...
[2026-06-22 09:23:38,104.104 INFO    ] 2026-06-22 09:23:38
[2026-06-22 09:23:38,379.379 INFO    ] 2026-06-22 09:23:38
[2026-06-22 09:23:38,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:23:38,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:23:39,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:23:39,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:23:39,392.392 INFO    ] time= 22/06/2026 09:23:39
[2026-06-22 09:23:39,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:23:39,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:23:39,517.517 INFO    ] No existing commands found in stream
[2026-06-22 09:23:44,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:23:44,544.544 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-22 09:23:45,134.134 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:23:45,138.138 INFO    ] Checking for system updates...
[2026-06-22 09:23:45,174.174 INFO    ] 200
[2026-06-22 09:23:45,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:23:45,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:23:45,241.241 INFO    ] No update needed
[2026-06-22 09:23:45,243.243 INFO    ] Checking for camera pi updates...
[2026-06-22 09:23:45,282.282 INFO    ] 200
[2026-06-22 09:23:45,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:23:45,333.333 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:23:45,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:23:45,433.433 INFO    ] No camera update needed
[2026-06-22 09:23:45,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:23:45,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:23:45,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:23:45,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:23:47,489.489 INFO    ] ================================================
[2026-06-22 09:23:47,506.506 INFO    ] Launching Daemon at Mon Jun 22 09:23:47 IST 2026
[2026-06-22 09:23:47,517.517 INFO    ] ================================================
[2026-06-22 09:23:48,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:23:48
[2026-06-22 09:23:48,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:23:48,930.930 INFO    ] Initializing speech engine...
[2026-06-22 09:23:48,937.937 INFO    ] 2026-06-22 09:23:48
[2026-06-22 09:23:49,240.240 INFO    ] 2026-06-22 09:23:49
[2026-06-22 09:23:49,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:23:49,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:23:49,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:23:49,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:23:49,674.674 INFO    ] time= 22/06/2026 09:23:49
[2026-06-22 09:23:49,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:23:49,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:23:49,763.763 INFO    ] No existing commands found in stream
[2026-06-22 09:23:54,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:23:54,778.778 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-22 09:23:55,237.237 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:23:55,238.238 INFO    ] Checking for system updates...
[2026-06-22 09:23:55,263.263 INFO    ] 200
[2026-06-22 09:23:55,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:23:55,299.299 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:23:55,300.300 INFO    ] No update needed
[2026-06-22 09:23:55,302.302 INFO    ] Checking for camera pi updates...
[2026-06-22 09:23:55,327.327 INFO    ] 200
[2026-06-22 09:23:55,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:23:55,371.371 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:23:55,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:23:55,465.465 INFO    ] No camera update needed
[2026-06-22 09:23:55,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:23:55,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:23:55,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:23:55,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:23:57,521.521 INFO    ] ================================================
[2026-06-22 09:23:57,537.537 INFO    ] Launching Daemon at Mon Jun 22 09:23:57 IST 2026
[2026-06-22 09:23:57,548.548 INFO    ] ================================================
[2026-06-22 09:23:58,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:23:58
[2026-06-22 09:23:58,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:23:59,069.069 INFO    ] Initializing speech engine...
[2026-06-22 09:23:59,083.083 INFO    ] 2026-06-22 09:23:59
[2026-06-22 09:23:59,371.371 INFO    ] 2026-06-22 09:23:59
[2026-06-22 09:23:59,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:23:59,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:23:59,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:23:59,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:23:59,843.843 INFO    ] time= 22/06/2026 09:23:59
[2026-06-22 09:23:59,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:23:59,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:24:00,041.041 INFO    ] No existing commands found in stream
[2026-06-22 09:24:05,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:24:05,062.062 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-22 09:24:07,952.952 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:24:07,955.955 INFO    ] Checking for system updates...
[2026-06-22 09:24:07,995.995 INFO    ] 200
[2026-06-22 09:24:07,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:24:08,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:24:08,053.053 INFO    ] No update needed
[2026-06-22 09:24:08,056.056 INFO    ] Checking for camera pi updates...
[2026-06-22 09:24:08,091.091 INFO    ] 200
[2026-06-22 09:24:08,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:24:08,140.140 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:24:08,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:24:08,227.227 INFO    ] No camera update needed
[2026-06-22 09:24:08,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:24:08,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:24:08,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:24:08,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:24:10,284.284 INFO    ] ================================================
[2026-06-22 09:24:10,299.299 INFO    ] Launching Daemon at Mon Jun 22 09:24:10 IST 2026
[2026-06-22 09:24:10,311.311 INFO    ] ================================================
[2026-06-22 09:24:10,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:24:10
[2026-06-22 09:24:11,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:24:11,706.706 INFO    ] Initializing speech engine...
[2026-06-22 09:24:11,714.714 INFO    ] 2026-06-22 09:24:11
[2026-06-22 09:24:11,967.967 INFO    ] 2026-06-22 09:24:11
[2026-06-22 09:24:12,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:24:12,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:24:12,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:24:12,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:24:12,513.513 INFO    ] time= 22/06/2026 09:24:12
[2026-06-22 09:24:12,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:24:12,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:24:12,655.655 INFO    ] No existing commands found in stream
[2026-06-22 09:24:17,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:24:17,679.679 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-22 09:24:20,353.353 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:24:20,356.356 INFO    ] Checking for system updates...
[2026-06-22 09:24:20,392.392 INFO    ] 200
[2026-06-22 09:24:20,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:24:20,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:24:20,450.450 INFO    ] No update needed
[2026-06-22 09:24:20,452.452 INFO    ] Checking for camera pi updates...
[2026-06-22 09:24:20,487.487 INFO    ] 200
[2026-06-22 09:24:20,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:24:20,538.538 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:24:20,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:24:20,618.618 INFO    ] No camera update needed
[2026-06-22 09:24:20,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:24:20,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:24:20,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:24:20,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:24:22,677.677 INFO    ] ================================================
[2026-06-22 09:24:22,692.692 INFO    ] Launching Daemon at Mon Jun 22 09:24:22 IST 2026
[2026-06-22 09:24:22,703.703 INFO    ] ================================================
[2026-06-22 09:24:23,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:24:23
[2026-06-22 09:24:23,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:24:24,211.211 INFO    ] Initializing speech engine...
[2026-06-22 09:24:24,220.220 INFO    ] 2026-06-22 09:24:24
[2026-06-22 09:24:24,502.502 INFO    ] 2026-06-22 09:24:24
[2026-06-22 09:24:24,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:24:24,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:24:24,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:24:24,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:24:25,040.040 INFO    ] time= 22/06/2026 09:24:25
[2026-06-22 09:24:25,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:24:25,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:24:25,195.195 INFO    ] No existing commands found in stream
[2026-06-22 09:24:30,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:24:30,212.212 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-22 09:24:30,874.874 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:24:30,877.877 INFO    ] Checking for system updates...
[2026-06-22 09:24:30,914.914 INFO    ] 200
[2026-06-22 09:24:30,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:24:30,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:24:30,980.980 INFO    ] No update needed
[2026-06-22 09:24:30,982.982 INFO    ] Checking for camera pi updates...
[2026-06-22 09:24:31,021.021 INFO    ] 200
[2026-06-22 09:24:31,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:24:31,065.065 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:24:31,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:24:31,153.153 INFO    ] No camera update needed
[2026-06-22 09:24:31,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:24:31,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:24:31,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:24:31,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:24:33,210.210 INFO    ] ================================================
[2026-06-22 09:24:33,226.226 INFO    ] Launching Daemon at Mon Jun 22 09:24:33 IST 2026
[2026-06-22 09:24:33,237.237 INFO    ] ================================================
[2026-06-22 09:24:33,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:24:33
[2026-06-22 09:24:34,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:24:34,856.856 INFO    ] Initializing speech engine...
[2026-06-22 09:24:34,870.870 INFO    ] 2026-06-22 09:24:34
[2026-06-22 09:24:35,179.179 INFO    ] 2026-06-22 09:24:35
[2026-06-22 09:24:35,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:24:35,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:24:35,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:24:35,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:24:35,691.691 INFO    ] time= 22/06/2026 09:24:35
[2026-06-22 09:24:35,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:24:35,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:24:35,848.848 INFO    ] No existing commands found in stream
[2026-06-22 09:24:40,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:24:40,871.871 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-22 09:24:44,913.913 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:24:44,917.917 INFO    ] Checking for system updates...
[2026-06-22 09:24:44,957.957 INFO    ] 200
[2026-06-22 09:24:44,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:24:45,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:24:45,018.018 INFO    ] No update needed
[2026-06-22 09:24:45,020.020 INFO    ] Checking for camera pi updates...
[2026-06-22 09:24:45,055.055 INFO    ] 200
[2026-06-22 09:24:45,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:24:45,099.099 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:24:45,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:24:45,158.158 INFO    ] No camera update needed
[2026-06-22 09:24:45,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:24:45,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:24:45,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:24:45,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:24:47,217.217 INFO    ] ================================================
[2026-06-22 09:24:47,232.232 INFO    ] Launching Daemon at Mon Jun 22 09:24:47 IST 2026
[2026-06-22 09:24:47,243.243 INFO    ] ================================================
[2026-06-22 09:24:47,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:24:47
[2026-06-22 09:24:48,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:24:48,750.750 INFO    ] Initializing speech engine...
[2026-06-22 09:24:48,757.757 INFO    ] 2026-06-22 09:24:48
[2026-06-22 09:24:49,044.044 INFO    ] 2026-06-22 09:24:49
[2026-06-22 09:24:49,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:24:49,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:24:49,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:24:49,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:24:49,523.523 INFO    ] time= 22/06/2026 09:24:49
[2026-06-22 09:24:49,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:24:49,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:24:49,769.769 INFO    ] No existing commands found in stream
[2026-06-22 09:24:54,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:24:54,803.803 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-22 09:24:59,050.050 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:24:59,052.052 INFO    ] Checking for system updates...
[2026-06-22 09:24:59,093.093 INFO    ] 200
[2026-06-22 09:24:59,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:24:59,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:24:59,154.154 INFO    ] No update needed
[2026-06-22 09:24:59,157.157 INFO    ] Checking for camera pi updates...
[2026-06-22 09:24:59,192.192 INFO    ] 200
[2026-06-22 09:24:59,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:24:59,237.237 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:24:59,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:24:59,429.429 INFO    ] No camera update needed
[2026-06-22 09:24:59,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:24:59,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:24:59,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:24:59,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:25:01,488.488 INFO    ] ================================================
[2026-06-22 09:25:01,506.506 INFO    ] Launching Daemon at Mon Jun 22 09:25:01 IST 2026
[2026-06-22 09:25:01,517.517 INFO    ] ================================================
[2026-06-22 09:25:02,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:25:02
[2026-06-22 09:25:03,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:25:03,370.370 INFO    ] Initializing speech engine...
[2026-06-22 09:25:03,385.385 INFO    ] 2026-06-22 09:25:03
[2026-06-22 09:25:03,732.732 INFO    ] 2026-06-22 09:25:03
[2026-06-22 09:25:03,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:25:04,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:25:04,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:25:04,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:25:04,268.268 INFO    ] time= 22/06/2026 09:25:04
[2026-06-22 09:25:04,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:25:04,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:25:04,469.469 INFO    ] No existing commands found in stream
[2026-06-22 09:25:09,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:25:09,502.502 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-22 09:25:10,758.758 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:25:10,760.760 INFO    ] Checking for system updates...
[2026-06-22 09:25:10,780.780 INFO    ] 200
[2026-06-22 09:25:10,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:25:10,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:25:10,844.844 INFO    ] No update needed
[2026-06-22 09:25:10,847.847 INFO    ] Checking for camera pi updates...
[2026-06-22 09:25:10,881.881 INFO    ] 200
[2026-06-22 09:25:10,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:25:10,929.929 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:25:11,012.012 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:25:11,015.015 INFO    ] No camera update needed
[2026-06-22 09:25:11,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:25:11,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:25:11,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:25:11,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:25:13,072.072 INFO    ] ================================================
[2026-06-22 09:25:13,087.087 INFO    ] Launching Daemon at Mon Jun 22 09:25:13 IST 2026
[2026-06-22 09:25:13,098.098 INFO    ] ================================================
[2026-06-22 09:25:13,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:25:13
[2026-06-22 09:25:14,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:25:14,429.429 INFO    ] Initializing speech engine...
[2026-06-22 09:25:14,436.436 INFO    ] 2026-06-22 09:25:14
[2026-06-22 09:25:14,733.733 INFO    ] 2026-06-22 09:25:14
[2026-06-22 09:25:14,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:25:14,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:25:14,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:25:15,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:25:15,165.165 INFO    ] time= 22/06/2026 09:25:15
[2026-06-22 09:25:15,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:25:15,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:25:15,251.251 INFO    ] No existing commands found in stream
[2026-06-22 09:25:20,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:25:20,267.267 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-22 09:25:22,653.653 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:25:22,656.656 INFO    ] Checking for system updates...
[2026-06-22 09:25:22,691.691 INFO    ] 200
[2026-06-22 09:25:22,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:25:22,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:25:22,753.753 INFO    ] No update needed
[2026-06-22 09:25:22,755.755 INFO    ] Checking for camera pi updates...
[2026-06-22 09:25:22,789.789 INFO    ] 200
[2026-06-22 09:25:22,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:25:22,833.833 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:25:22,922.922 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:25:22,925.925 INFO    ] No camera update needed
[2026-06-22 09:25:22,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:25:22,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:25:22,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:25:22,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:25:24,980.980 INFO    ] ================================================
[2026-06-22 09:25:25,995.995 INFO    ] Launching Daemon at Mon Jun 22 09:25:24 IST 2026
[2026-06-22 09:25:25,006.006 INFO    ] ================================================
[2026-06-22 09:25:25,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:25:25
[2026-06-22 09:25:26,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:25:26,360.360 INFO    ] Initializing speech engine...
[2026-06-22 09:25:26,369.369 INFO    ] 2026-06-22 09:25:26
[2026-06-22 09:25:26,636.636 INFO    ] 2026-06-22 09:25:26
[2026-06-22 09:25:26,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:25:26,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:25:26,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:25:27,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:25:27,139.139 INFO    ] time= 22/06/2026 09:25:27
[2026-06-22 09:25:27,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:25:27,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:25:27,356.356 INFO    ] No existing commands found in stream
[2026-06-22 09:25:32,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:25:32,387.387 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-22 09:25:34,173.173 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:25:34,176.176 INFO    ] Checking for system updates...
[2026-06-22 09:25:34,212.212 INFO    ] 200
[2026-06-22 09:25:34,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:25:34,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:25:34,276.276 INFO    ] No update needed
[2026-06-22 09:25:34,279.279 INFO    ] Checking for camera pi updates...
[2026-06-22 09:25:34,313.313 INFO    ] 200
[2026-06-22 09:25:34,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:25:34,356.356 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:25:34,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:25:34,430.430 INFO    ] No camera update needed
[2026-06-22 09:25:34,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:25:34,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:25:34,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:25:34,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:25:36,486.486 INFO    ] ================================================
[2026-06-22 09:25:36,501.501 INFO    ] Launching Daemon at Mon Jun 22 09:25:36 IST 2026
[2026-06-22 09:25:36,512.512 INFO    ] ================================================
[2026-06-22 09:25:37,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:25:37
[2026-06-22 09:25:37,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:25:37,989.989 INFO    ] Initializing speech engine...
[2026-06-22 09:25:38,000.000 INFO    ] 2026-06-22 09:25:37
[2026-06-22 09:25:38,264.264 INFO    ] 2026-06-22 09:25:38
[2026-06-22 09:25:38,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:25:38,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:25:38,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:25:38,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:25:38,722.722 INFO    ] time= 22/06/2026 09:25:38
[2026-06-22 09:25:38,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:25:38,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:25:38,899.899 INFO    ] No existing commands found in stream
[2026-06-22 09:25:43,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:25:43,933.933 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-22 09:25:44,963.963 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:25:44,965.965 INFO    ] Checking for system updates...
[2026-06-22 09:25:44,985.985 INFO    ] 200
[2026-06-22 09:25:44,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:25:45,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:25:45,042.042 INFO    ] No update needed
[2026-06-22 09:25:45,045.045 INFO    ] Checking for camera pi updates...
[2026-06-22 09:25:45,083.083 INFO    ] 200
[2026-06-22 09:25:45,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:25:45,127.127 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:25:45,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:25:45,220.220 INFO    ] No camera update needed
[2026-06-22 09:25:45,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:25:45,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:25:45,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:25:45,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:25:47,277.277 INFO    ] ================================================
[2026-06-22 09:25:47,292.292 INFO    ] Launching Daemon at Mon Jun 22 09:25:47 IST 2026
[2026-06-22 09:25:47,302.302 INFO    ] ================================================
[2026-06-22 09:25:47,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:25:47
[2026-06-22 09:25:48,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:25:48,634.634 INFO    ] Initializing speech engine...
[2026-06-22 09:25:48,643.643 INFO    ] 2026-06-22 09:25:48
[2026-06-22 09:25:48,889.889 INFO    ] 2026-06-22 09:25:48
[2026-06-22 09:25:48,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:25:49,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:25:49,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:25:49,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:25:49,364.364 INFO    ] time= 22/06/2026 09:25:49
[2026-06-22 09:25:49,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:25:49,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:25:49,601.601 INFO    ] No existing commands found in stream
[2026-06-22 09:25:54,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:25:54,626.626 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-22 09:25:57,853.853 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:25:57,856.856 INFO    ] Checking for system updates...
[2026-06-22 09:25:57,892.892 INFO    ] 200
[2026-06-22 09:25:57,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:25:57,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:25:57,950.950 INFO    ] No update needed
[2026-06-22 09:25:57,952.952 INFO    ] Checking for camera pi updates...
[2026-06-22 09:25:57,986.986 INFO    ] 200
[2026-06-22 09:25:57,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:25:58,029.029 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:25:58,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:25:58,121.121 INFO    ] No camera update needed
[2026-06-22 09:25:58,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:25:58,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:25:58,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:25:58,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:26:00,175.175 INFO    ] ================================================
[2026-06-22 09:26:00,190.190 INFO    ] Launching Daemon at Mon Jun 22 09:26:00 IST 2026
[2026-06-22 09:26:00,201.201 INFO    ] ================================================
[2026-06-22 09:26:00,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:26:00
[2026-06-22 09:26:01,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:26:01,650.650 INFO    ] Initializing speech engine...
[2026-06-22 09:26:01,657.657 INFO    ] 2026-06-22 09:26:01
[2026-06-22 09:26:01,954.954 INFO    ] 2026-06-22 09:26:01
[2026-06-22 09:26:02,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:26:02,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:26:02,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:26:02,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:26:02,425.425 INFO    ] time= 22/06/2026 09:26:02
[2026-06-22 09:26:02,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:26:02,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:26:02,611.611 INFO    ] No existing commands found in stream
[2026-06-22 09:26:07,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:26:07,630.630 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-22 09:26:08,926.926 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:26:08,929.929 INFO    ] Checking for system updates...
[2026-06-22 09:26:08,969.969 INFO    ] 200
[2026-06-22 09:26:08,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:26:09,030.030 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:26:09,032.032 INFO    ] No update needed
[2026-06-22 09:26:09,035.035 INFO    ] Checking for camera pi updates...
[2026-06-22 09:26:09,070.070 INFO    ] 200
[2026-06-22 09:26:09,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:26:09,113.113 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:26:09,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:26:09,199.199 INFO    ] No camera update needed
[2026-06-22 09:26:09,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:26:09,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:26:09,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:26:09,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:26:11,259.259 INFO    ] ================================================
[2026-06-22 09:26:11,274.274 INFO    ] Launching Daemon at Mon Jun 22 09:26:11 IST 2026
[2026-06-22 09:26:11,285.285 INFO    ] ================================================
[2026-06-22 09:26:11,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:26:11
[2026-06-22 09:26:12,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:26:12,779.779 INFO    ] Initializing speech engine...
[2026-06-22 09:26:12,796.796 INFO    ] 2026-06-22 09:26:12
[2026-06-22 09:26:13,051.051 INFO    ] 2026-06-22 09:26:13
[2026-06-22 09:26:13,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:26:13,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:26:13,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:26:13,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:26:13,462.462 INFO    ] time= 22/06/2026 09:26:13
[2026-06-22 09:26:13,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:26:13,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:26:13,641.641 INFO    ] No existing commands found in stream
[2026-06-22 09:26:18,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:26:18,669.669 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-22 09:26:20,544.544 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:26:20,546.546 INFO    ] Checking for system updates...
[2026-06-22 09:26:20,587.587 INFO    ] 200
[2026-06-22 09:26:20,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:26:20,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:26:20,651.651 INFO    ] No update needed
[2026-06-22 09:26:20,654.654 INFO    ] Checking for camera pi updates...
[2026-06-22 09:26:20,691.691 INFO    ] 200
[2026-06-22 09:26:20,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:26:20,734.734 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:26:20,812.812 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:26:20,815.815 INFO    ] No camera update needed
[2026-06-22 09:26:20,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:26:20,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:26:20,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:26:20,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:26:22,875.875 INFO    ] ================================================
[2026-06-22 09:26:22,890.890 INFO    ] Launching Daemon at Mon Jun 22 09:26:22 IST 2026
[2026-06-22 09:26:22,901.901 INFO    ] ================================================
[2026-06-22 09:26:23,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:26:23
[2026-06-22 09:26:23,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:26:24,241.241 INFO    ] Initializing speech engine...
[2026-06-22 09:26:24,266.266 INFO    ] 2026-06-22 09:26:24
[2026-06-22 09:26:24,548.548 INFO    ] 2026-06-22 09:26:24
[2026-06-22 09:26:24,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:26:24,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:26:24,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:26:25,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:26:25,113.113 INFO    ] time= 22/06/2026 09:26:25
[2026-06-22 09:26:25,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:26:25,139.139 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:26:25,264.264 INFO    ] No existing commands found in stream
[2026-06-22 09:26:30,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:26:30,283.283 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-22 09:26:33,978.978 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:26:33,981.981 INFO    ] Checking for system updates...
[2026-06-22 09:26:34,022.022 INFO    ] 200
[2026-06-22 09:26:34,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:26:34,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:26:34,085.085 INFO    ] No update needed
[2026-06-22 09:26:34,087.087 INFO    ] Checking for camera pi updates...
[2026-06-22 09:26:34,129.129 INFO    ] 200
[2026-06-22 09:26:34,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:26:34,181.181 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:26:34,254.254 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:26:34,257.257 INFO    ] No camera update needed
[2026-06-22 09:26:34,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:26:34,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:26:34,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:26:34,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:26:36,316.316 INFO    ] ================================================
[2026-06-22 09:26:36,331.331 INFO    ] Launching Daemon at Mon Jun 22 09:26:36 IST 2026
[2026-06-22 09:26:36,342.342 INFO    ] ================================================
[2026-06-22 09:26:36,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:26:36
[2026-06-22 09:26:37,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:26:37,772.772 INFO    ] Initializing speech engine...
[2026-06-22 09:26:37,781.781 INFO    ] 2026-06-22 09:26:37
[2026-06-22 09:26:38,031.031 INFO    ] 2026-06-22 09:26:38
[2026-06-22 09:26:38,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:26:38,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:26:38,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:26:38,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:26:38,516.516 INFO    ] time= 22/06/2026 09:26:38
[2026-06-22 09:26:38,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:26:38,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:26:38,743.743 INFO    ] No existing commands found in stream
[2026-06-22 09:26:43,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:26:43,776.776 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-22 09:26:44,943.943 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:26:44,946.946 INFO    ] Checking for system updates...
[2026-06-22 09:26:44,982.982 INFO    ] 200
[2026-06-22 09:26:44,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:26:45,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:26:45,039.039 INFO    ] No update needed
[2026-06-22 09:26:45,041.041 INFO    ] Checking for camera pi updates...
[2026-06-22 09:26:45,075.075 INFO    ] 200
[2026-06-22 09:26:45,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:26:45,118.118 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:26:45,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:26:45,193.193 INFO    ] No camera update needed
[2026-06-22 09:26:45,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:26:45,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:26:45,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:26:45,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:26:47,249.249 INFO    ] ================================================
[2026-06-22 09:26:47,264.264 INFO    ] Launching Daemon at Mon Jun 22 09:26:47 IST 2026
[2026-06-22 09:26:47,275.275 INFO    ] ================================================
[2026-06-22 09:26:47,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:26:47
[2026-06-22 09:26:48,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:26:48,728.728 INFO    ] Initializing speech engine...
[2026-06-22 09:26:48,734.734 INFO    ] 2026-06-22 09:26:48
[2026-06-22 09:26:48,983.983 INFO    ] 2026-06-22 09:26:48
[2026-06-22 09:26:49,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:26:49,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:26:49,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:26:49,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:26:49,479.479 INFO    ] time= 22/06/2026 09:26:49
[2026-06-22 09:26:49,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:26:49,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:26:49,693.693 INFO    ] No existing commands found in stream
[2026-06-22 09:26:54,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:26:54,724.724 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-22 09:26:57,782.782 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:26:57,785.785 INFO    ] Checking for system updates...
[2026-06-22 09:26:57,821.821 INFO    ] 200
[2026-06-22 09:26:57,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:26:57,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:26:57,885.885 INFO    ] No update needed
[2026-06-22 09:26:57,887.887 INFO    ] Checking for camera pi updates...
[2026-06-22 09:26:57,924.924 INFO    ] 200
[2026-06-22 09:26:57,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:26:57,970.970 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:26:58,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:26:58,097.097 INFO    ] No camera update needed
[2026-06-22 09:26:58,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:26:58,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:26:58,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:26:58,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:27:00,153.153 INFO    ] ================================================
[2026-06-22 09:27:00,168.168 INFO    ] Launching Daemon at Mon Jun 22 09:27:00 IST 2026
[2026-06-22 09:27:00,179.179 INFO    ] ================================================
[2026-06-22 09:27:00,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:27:00
[2026-06-22 09:27:01,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:27:01,668.668 INFO    ] Initializing speech engine...
[2026-06-22 09:27:01,676.676 INFO    ] 2026-06-22 09:27:01
[2026-06-22 09:27:01,949.949 INFO    ] 2026-06-22 09:27:01
[2026-06-22 09:27:02,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:27:02,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:27:02,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:27:02,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:27:02,433.433 INFO    ] time= 22/06/2026 09:27:02
[2026-06-22 09:27:02,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:27:02,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:27:02,562.562 INFO    ] No existing commands found in stream
[2026-06-22 09:27:07,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:27:07,578.578 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-22 09:27:08,625.625 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:27:08,628.628 INFO    ] Checking for system updates...
[2026-06-22 09:27:08,665.665 INFO    ] 200
[2026-06-22 09:27:08,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:27:08,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:27:08,722.722 INFO    ] No update needed
[2026-06-22 09:27:08,724.724 INFO    ] Checking for camera pi updates...
[2026-06-22 09:27:08,758.758 INFO    ] 200
[2026-06-22 09:27:08,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:27:08,801.801 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:27:08,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:27:08,913.913 INFO    ] No camera update needed
[2026-06-22 09:27:08,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:27:08,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:27:08,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:27:08,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:27:10,968.968 INFO    ] ================================================
[2026-06-22 09:27:10,983.983 INFO    ] Launching Daemon at Mon Jun 22 09:27:10 IST 2026
[2026-06-22 09:27:10,994.994 INFO    ] ================================================
[2026-06-22 09:27:11,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:27:11
[2026-06-22 09:27:12,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:27:12,568.568 INFO    ] Initializing speech engine...
[2026-06-22 09:27:12,580.580 INFO    ] 2026-06-22 09:27:12
[2026-06-22 09:27:12,865.865 INFO    ] 2026-06-22 09:27:12
[2026-06-22 09:27:12,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:27:13,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:27:13,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:27:13,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:27:13,397.397 INFO    ] time= 22/06/2026 09:27:13
[2026-06-22 09:27:13,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:27:13,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:27:13,553.553 INFO    ] No existing commands found in stream
[2026-06-22 09:27:18,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:27:18,586.586 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-22 09:27:19,755.755 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:27:19,758.758 INFO    ] Checking for system updates...
[2026-06-22 09:27:19,793.793 INFO    ] 200
[2026-06-22 09:27:19,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:27:19,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:27:19,859.859 INFO    ] No update needed
[2026-06-22 09:27:19,862.862 INFO    ] Checking for camera pi updates...
[2026-06-22 09:27:19,895.895 INFO    ] 200
[2026-06-22 09:27:19,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:27:19,939.939 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:27:20,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:27:20,022.022 INFO    ] No camera update needed
[2026-06-22 09:27:20,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:27:20,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:27:20,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:27:20,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:27:22,077.077 INFO    ] ================================================
[2026-06-22 09:27:22,093.093 INFO    ] Launching Daemon at Mon Jun 22 09:27:22 IST 2026
[2026-06-22 09:27:22,106.106 INFO    ] ================================================
[2026-06-22 09:27:22,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:27:22
[2026-06-22 09:27:23,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:27:23,524.524 INFO    ] Initializing speech engine...
[2026-06-22 09:27:23,532.532 INFO    ] 2026-06-22 09:27:23
[2026-06-22 09:27:23,825.825 INFO    ] 2026-06-22 09:27:23
[2026-06-22 09:27:23,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:27:24,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:27:24,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:27:24,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:27:24,246.246 INFO    ] time= 22/06/2026 09:27:24
[2026-06-22 09:27:24,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:27:24,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:27:24,331.331 INFO    ] No existing commands found in stream
[2026-06-22 09:27:29,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:27:29,364.364 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-22 09:27:33,699.699 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:27:33,702.702 INFO    ] Checking for system updates...
[2026-06-22 09:27:33,742.742 INFO    ] 200
[2026-06-22 09:27:33,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:27:33,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:27:33,808.808 INFO    ] No update needed
[2026-06-22 09:27:33,811.811 INFO    ] Checking for camera pi updates...
[2026-06-22 09:27:33,849.849 INFO    ] 200
[2026-06-22 09:27:33,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:27:33,896.896 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:27:33,953.953 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:27:33,955.955 INFO    ] No camera update needed
[2026-06-22 09:27:33,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:27:33,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:27:33,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:27:33,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:27:36,011.011 INFO    ] ================================================
[2026-06-22 09:27:36,026.026 INFO    ] Launching Daemon at Mon Jun 22 09:27:36 IST 2026
[2026-06-22 09:27:36,037.037 INFO    ] ================================================
[2026-06-22 09:27:36,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:27:36
[2026-06-22 09:27:37,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:27:37,367.367 INFO    ] Initializing speech engine...
[2026-06-22 09:27:37,380.380 INFO    ] 2026-06-22 09:27:37
[2026-06-22 09:27:37,627.627 INFO    ] 2026-06-22 09:27:37
[2026-06-22 09:27:37,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:27:37,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:27:37,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:27:38,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:27:38,097.097 INFO    ] time= 22/06/2026 09:27:38
[2026-06-22 09:27:38,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:27:38,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:27:38,320.320 INFO    ] No existing commands found in stream
[2026-06-22 09:27:43,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:27:43,347.347 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-22 09:27:44,893.893 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:27:44,896.896 INFO    ] Checking for system updates...
[2026-06-22 09:27:44,935.935 INFO    ] 200
[2026-06-22 09:27:44,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:27:45,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:27:45,003.003 INFO    ] No update needed
[2026-06-22 09:27:45,006.006 INFO    ] Checking for camera pi updates...
[2026-06-22 09:27:45,044.044 INFO    ] 200
[2026-06-22 09:27:45,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:27:45,098.098 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:27:45,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:27:45,186.186 INFO    ] No camera update needed
[2026-06-22 09:27:45,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:27:45,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:27:45,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:27:45,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:27:47,244.244 INFO    ] ================================================
[2026-06-22 09:27:47,259.259 INFO    ] Launching Daemon at Mon Jun 22 09:27:47 IST 2026
[2026-06-22 09:27:47,270.270 INFO    ] ================================================
[2026-06-22 09:27:47,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:27:47
[2026-06-22 09:27:48,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:27:48,601.601 INFO    ] Initializing speech engine...
[2026-06-22 09:27:48,610.610 INFO    ] 2026-06-22 09:27:48
[2026-06-22 09:27:48,856.856 INFO    ] 2026-06-22 09:27:48
[2026-06-22 09:27:48,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:27:49,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:27:49,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:27:49,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:27:49,333.333 INFO    ] time= 22/06/2026 09:27:49
[2026-06-22 09:27:49,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:27:49,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:27:49,547.547 INFO    ] No existing commands found in stream
[2026-06-22 09:27:54,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:27:54,577.577 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-22 09:27:55,887.887 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:27:55,890.890 INFO    ] Checking for system updates...
[2026-06-22 09:27:55,944.944 INFO    ] 200
[2026-06-22 09:27:55,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:27:56,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:27:56,007.007 INFO    ] No update needed
[2026-06-22 09:27:56,010.010 INFO    ] Checking for camera pi updates...
[2026-06-22 09:27:56,045.045 INFO    ] 200
[2026-06-22 09:27:56,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:27:56,091.091 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:27:56,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:27:56,145.145 INFO    ] No camera update needed
[2026-06-22 09:27:56,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:27:56,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:27:56,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:27:56,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:27:58,209.209 INFO    ] ================================================
[2026-06-22 09:27:58,224.224 INFO    ] Launching Daemon at Mon Jun 22 09:27:58 IST 2026
[2026-06-22 09:27:58,236.236 INFO    ] ================================================
[2026-06-22 09:27:58,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:27:58
[2026-06-22 09:27:59,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:27:59,757.757 INFO    ] Initializing speech engine...
[2026-06-22 09:27:59,778.778 INFO    ] 2026-06-22 09:27:59
[2026-06-22 09:28:00,031.031 INFO    ] 2026-06-22 09:28:00
[2026-06-22 09:28:00,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:28:00,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:28:00,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:28:00,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:28:00,728.728 INFO    ] time= 22/06/2026 09:28:00
[2026-06-22 09:28:00,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:28:00,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:28:00,969.969 INFO    ] No existing commands found in stream
[2026-06-22 09:28:05,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:28:05,987.987 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-22 09:28:10,194.194 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:28:10,197.197 INFO    ] Checking for system updates...
[2026-06-22 09:28:10,236.236 INFO    ] 200
[2026-06-22 09:28:10,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:28:10,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:28:10,299.299 INFO    ] No update needed
[2026-06-22 09:28:10,301.301 INFO    ] Checking for camera pi updates...
[2026-06-22 09:28:10,336.336 INFO    ] 200
[2026-06-22 09:28:10,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:28:10,379.379 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:28:10,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:28:10,462.462 INFO    ] No camera update needed
[2026-06-22 09:28:10,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:28:10,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:28:10,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:28:10,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:28:12,518.518 INFO    ] ================================================
[2026-06-22 09:28:12,533.533 INFO    ] Launching Daemon at Mon Jun 22 09:28:12 IST 2026
[2026-06-22 09:28:12,543.543 INFO    ] ================================================
[2026-06-22 09:28:13,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:28:13
[2026-06-22 09:28:13,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:28:13,890.890 INFO    ] Initializing speech engine...
[2026-06-22 09:28:13,899.899 INFO    ] 2026-06-22 09:28:13
[2026-06-22 09:28:14,160.160 INFO    ] 2026-06-22 09:28:14
[2026-06-22 09:28:14,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:28:14,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:28:14,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:28:14,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:28:14,747.747 INFO    ] time= 22/06/2026 09:28:14
[2026-06-22 09:28:14,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:28:14,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:28:14,898.898 INFO    ] No existing commands found in stream
[2026-06-22 09:28:19,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:28:19,926.926 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-22 09:28:20,645.645 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:28:20,648.648 INFO    ] Checking for system updates...
[2026-06-22 09:28:20,685.685 INFO    ] 200
[2026-06-22 09:28:20,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:28:20,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:28:20,747.747 INFO    ] No update needed
[2026-06-22 09:28:20,749.749 INFO    ] Checking for camera pi updates...
[2026-06-22 09:28:20,786.786 INFO    ] 200
[2026-06-22 09:28:20,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:28:20,829.829 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:28:20,914.914 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:28:20,917.917 INFO    ] No camera update needed
[2026-06-22 09:28:20,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:28:20,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:28:20,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:28:20,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:28:22,976.976 INFO    ] ================================================
[2026-06-22 09:28:22,991.991 INFO    ] Launching Daemon at Mon Jun 22 09:28:22 IST 2026
[2026-06-22 09:28:23,001.001 INFO    ] ================================================
[2026-06-22 09:28:23,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:28:23
[2026-06-22 09:28:24,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:28:24,495.495 INFO    ] Initializing speech engine...
[2026-06-22 09:28:24,501.501 INFO    ] 2026-06-22 09:28:24
[2026-06-22 09:28:24,774.774 INFO    ] 2026-06-22 09:28:24
[2026-06-22 09:28:24,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:28:25,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:28:25,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:28:25,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:28:25,309.309 INFO    ] time= 22/06/2026 09:28:25
[2026-06-22 09:28:25,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:28:25,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:28:25,459.459 INFO    ] No existing commands found in stream
[2026-06-22 09:28:30,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:28:30,478.478 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-22 09:28:32,446.446 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:28:32,449.449 INFO    ] Checking for system updates...
[2026-06-22 09:28:32,490.490 INFO    ] 200
[2026-06-22 09:28:32,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:28:32,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:28:32,553.553 INFO    ] No update needed
[2026-06-22 09:28:32,556.556 INFO    ] Checking for camera pi updates...
[2026-06-22 09:28:32,595.595 INFO    ] 200
[2026-06-22 09:28:32,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:28:32,645.645 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:28:32,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:28:32,703.703 INFO    ] No camera update needed
[2026-06-22 09:28:32,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:28:32,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:28:32,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:28:32,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:28:34,763.763 INFO    ] ================================================
[2026-06-22 09:28:34,779.779 INFO    ] Launching Daemon at Mon Jun 22 09:28:34 IST 2026
[2026-06-22 09:28:34,790.790 INFO    ] ================================================
[2026-06-22 09:28:35,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:28:35
[2026-06-22 09:28:35,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:28:36,262.262 INFO    ] Initializing speech engine...
[2026-06-22 09:28:36,277.277 INFO    ] 2026-06-22 09:28:36
[2026-06-22 09:28:36,546.546 INFO    ] 2026-06-22 09:28:36
[2026-06-22 09:28:36,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:28:36,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:28:36,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:28:36,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:28:36,953.953 INFO    ] time= 22/06/2026 09:28:36
[2026-06-22 09:28:36,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:28:36,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:28:37,283.283 INFO    ] No existing commands found in stream
[2026-06-22 09:28:42,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:28:42,309.309 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-22 09:28:43,205.205 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:28:43,208.208 INFO    ] Checking for system updates...
[2026-06-22 09:28:43,254.254 INFO    ] 200
[2026-06-22 09:28:43,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:28:43,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:28:43,314.314 INFO    ] No update needed
[2026-06-22 09:28:43,317.317 INFO    ] Checking for camera pi updates...
[2026-06-22 09:28:43,351.351 INFO    ] 200
[2026-06-22 09:28:43,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:28:43,399.399 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:28:43,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:28:43,463.463 INFO    ] No camera update needed
[2026-06-22 09:28:43,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:28:43,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:28:43,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:28:43,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:28:45,520.520 INFO    ] ================================================
[2026-06-22 09:28:45,535.535 INFO    ] Launching Daemon at Mon Jun 22 09:28:45 IST 2026
[2026-06-22 09:28:45,547.547 INFO    ] ================================================
[2026-06-22 09:28:46,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:28:46
[2026-06-22 09:28:46,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:28:47,080.080 INFO    ] Initializing speech engine...
[2026-06-22 09:28:47,091.091 INFO    ] 2026-06-22 09:28:47
[2026-06-22 09:28:47,353.353 INFO    ] 2026-06-22 09:28:47
[2026-06-22 09:28:47,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:28:47,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:28:47,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:28:47,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:28:47,869.869 INFO    ] time= 22/06/2026 09:28:47
[2026-06-22 09:28:47,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:28:47,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:28:48,078.078 INFO    ] No existing commands found in stream
[2026-06-22 09:28:53,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:28:53,104.104 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-22 09:28:56,287.287 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:28:56,290.290 INFO    ] Checking for system updates...
[2026-06-22 09:28:56,327.327 INFO    ] 200
[2026-06-22 09:28:56,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:28:56,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:28:56,386.386 INFO    ] No update needed
[2026-06-22 09:28:56,388.388 INFO    ] Checking for camera pi updates...
[2026-06-22 09:28:56,423.423 INFO    ] 200
[2026-06-22 09:28:56,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:28:56,471.471 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:28:56,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:28:56,555.555 INFO    ] No camera update needed
[2026-06-22 09:28:56,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:28:56,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:28:56,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:28:56,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:28:58,615.615 INFO    ] ================================================
[2026-06-22 09:28:58,631.631 INFO    ] Launching Daemon at Mon Jun 22 09:28:58 IST 2026
[2026-06-22 09:28:58,642.642 INFO    ] ================================================
[2026-06-22 09:28:59,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:28:59
[2026-06-22 09:28:59,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:29:00,054.054 INFO    ] Initializing speech engine...
[2026-06-22 09:29:00,062.062 INFO    ] 2026-06-22 09:29:00
[2026-06-22 09:29:00,287.287 INFO    ] 2026-06-22 09:29:00
[2026-06-22 09:29:00,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:29:00,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:29:00,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:29:00,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:29:00,694.694 INFO    ] time= 22/06/2026 09:29:00
[2026-06-22 09:29:00,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:29:00,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:29:00,779.779 INFO    ] No existing commands found in stream
[2026-06-22 09:29:05,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:29:05,809.809 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-22 09:29:09,124.124 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:29:09,127.127 INFO    ] Checking for system updates...
[2026-06-22 09:29:09,163.163 INFO    ] 200
[2026-06-22 09:29:09,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:29:09,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:29:09,222.222 INFO    ] No update needed
[2026-06-22 09:29:09,228.228 INFO    ] Checking for camera pi updates...
[2026-06-22 09:29:09,265.265 INFO    ] 200
[2026-06-22 09:29:09,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:29:09,314.314 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:29:09,492.492 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:29:09,495.495 INFO    ] No camera update needed
[2026-06-22 09:29:09,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:29:09,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:29:09,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:29:09,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:29:11,550.550 INFO    ] ================================================
[2026-06-22 09:29:11,566.566 INFO    ] Launching Daemon at Mon Jun 22 09:29:11 IST 2026
[2026-06-22 09:29:11,577.577 INFO    ] ================================================
[2026-06-22 09:29:12,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:29:12
[2026-06-22 09:29:12,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:29:12,890.890 INFO    ] Initializing speech engine...
[2026-06-22 09:29:12,913.913 INFO    ] 2026-06-22 09:29:12
[2026-06-22 09:29:13,169.169 INFO    ] 2026-06-22 09:29:13
[2026-06-22 09:29:13,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:29:13,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:29:13,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:29:13,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:29:13,700.700 INFO    ] time= 22/06/2026 09:29:13
[2026-06-22 09:29:13,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:29:13,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:29:13,897.897 INFO    ] No existing commands found in stream
[2026-06-22 09:29:18,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:29:18,915.915 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-22 09:29:21,418.418 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:29:21,420.420 INFO    ] Checking for system updates...
[2026-06-22 09:29:21,441.441 INFO    ] 200
[2026-06-22 09:29:21,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:29:21,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:29:21,475.475 INFO    ] No update needed
[2026-06-22 09:29:21,476.476 INFO    ] Checking for camera pi updates...
[2026-06-22 09:29:21,497.497 INFO    ] 200
[2026-06-22 09:29:21,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:29:21,536.536 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:29:21,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:29:21,615.615 INFO    ] No camera update needed
[2026-06-22 09:29:21,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:29:21,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:29:21,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:29:21,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:29:23,675.675 INFO    ] ================================================
[2026-06-22 09:29:23,691.691 INFO    ] Launching Daemon at Mon Jun 22 09:29:23 IST 2026
[2026-06-22 09:29:23,703.703 INFO    ] ================================================
[2026-06-22 09:29:24,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:29:24
[2026-06-22 09:29:24,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:29:25,064.064 INFO    ] Initializing speech engine...
[2026-06-22 09:29:25,077.077 INFO    ] 2026-06-22 09:29:25
[2026-06-22 09:29:25,328.328 INFO    ] 2026-06-22 09:29:25
[2026-06-22 09:29:25,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:29:25,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:29:25,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:29:25,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:29:25,743.743 INFO    ] time= 22/06/2026 09:29:25
[2026-06-22 09:29:25,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:29:25,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:29:25,898.898 INFO    ] No existing commands found in stream
[2026-06-22 09:29:30,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:29:30,913.913 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-22 09:29:34,209.209 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:29:34,212.212 INFO    ] Checking for system updates...
[2026-06-22 09:29:34,248.248 INFO    ] 200
[2026-06-22 09:29:34,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:29:34,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:29:34,307.307 INFO    ] No update needed
[2026-06-22 09:29:34,310.310 INFO    ] Checking for camera pi updates...
[2026-06-22 09:29:34,343.343 INFO    ] 200
[2026-06-22 09:29:34,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:29:34,387.387 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:29:34,472.472 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:29:34,474.474 INFO    ] No camera update needed
[2026-06-22 09:29:34,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:29:34,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:29:34,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:29:34,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:29:36,532.532 INFO    ] ================================================
[2026-06-22 09:29:36,549.549 INFO    ] Launching Daemon at Mon Jun 22 09:29:36 IST 2026
[2026-06-22 09:29:36,561.561 INFO    ] ================================================
[2026-06-22 09:29:37,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:29:37
[2026-06-22 09:29:37,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:29:37,990.990 INFO    ] Initializing speech engine...
[2026-06-22 09:29:37,998.998 INFO    ] 2026-06-22 09:29:37
[2026-06-22 09:29:38,252.252 INFO    ] 2026-06-22 09:29:38
[2026-06-22 09:29:38,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:29:38,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:29:38,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:29:38,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:29:38,776.776 INFO    ] time= 22/06/2026 09:29:38
[2026-06-22 09:29:38,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:29:38,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:29:39,002.002 INFO    ] No existing commands found in stream
[2026-06-22 09:29:44,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:29:44,034.034 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-22 09:29:45,396.396 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:29:45,398.398 INFO    ] Checking for system updates...
[2026-06-22 09:29:45,434.434 INFO    ] 200
[2026-06-22 09:29:45,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:29:45,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:29:45,492.492 INFO    ] No update needed
[2026-06-22 09:29:45,494.494 INFO    ] Checking for camera pi updates...
[2026-06-22 09:29:45,531.531 INFO    ] 200
[2026-06-22 09:29:45,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:29:45,575.575 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:29:45,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:29:45,670.670 INFO    ] No camera update needed
[2026-06-22 09:29:45,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:29:45,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:29:45,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:29:45,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:29:47,726.726 INFO    ] ================================================
[2026-06-22 09:29:47,741.741 INFO    ] Launching Daemon at Mon Jun 22 09:29:47 IST 2026
[2026-06-22 09:29:47,752.752 INFO    ] ================================================
[2026-06-22 09:29:48,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:29:48
[2026-06-22 09:29:48,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:29:49,085.085 INFO    ] Initializing speech engine...
[2026-06-22 09:29:49,093.093 INFO    ] 2026-06-22 09:29:49
[2026-06-22 09:29:49,343.343 INFO    ] 2026-06-22 09:29:49
[2026-06-22 09:29:49,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:29:49,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:29:49,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:29:49,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:29:49,860.860 INFO    ] time= 22/06/2026 09:29:49
[2026-06-22 09:29:49,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:29:49,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:29:50,070.070 INFO    ] No existing commands found in stream
[2026-06-22 09:29:55,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:29:55,092.092 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-22 09:29:59,220.220 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:29:59,223.223 INFO    ] Checking for system updates...
[2026-06-22 09:29:59,258.258 INFO    ] 200
[2026-06-22 09:29:59,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:29:59,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:29:59,323.323 INFO    ] No update needed
[2026-06-22 09:29:59,326.326 INFO    ] Checking for camera pi updates...
[2026-06-22 09:29:59,359.359 INFO    ] 200
[2026-06-22 09:29:59,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:29:59,407.407 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:29:59,490.490 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:29:59,492.492 INFO    ] No camera update needed
[2026-06-22 09:29:59,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:29:59,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:29:59,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:29:59,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:30:01,548.548 INFO    ] ================================================
[2026-06-22 09:30:01,564.564 INFO    ] Launching Daemon at Mon Jun 22 09:30:01 IST 2026
[2026-06-22 09:30:01,574.574 INFO    ] ================================================
[2026-06-22 09:30:02,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:30:02
[2026-06-22 09:30:03,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:30:04,167.167 INFO    ] Initializing speech engine...
[2026-06-22 09:30:04,206.206 INFO    ] 2026-06-22 09:30:04
[2026-06-22 09:30:04,553.553 INFO    ] 2026-06-22 09:30:04
[2026-06-22 09:30:04,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:30:04,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:30:04,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:30:05,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:30:05,040.040 INFO    ] time= 22/06/2026 09:30:05
[2026-06-22 09:30:05,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:30:05,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:30:05,257.257 INFO    ] No existing commands found in stream
[2026-06-22 09:30:10,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:30:10,270.270 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-22 09:30:13,430.430 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:30:13,431.431 INFO    ] Checking for system updates...
[2026-06-22 09:30:13,454.454 INFO    ] 200
[2026-06-22 09:30:13,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:30:13,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:30:13,496.496 INFO    ] No update needed
[2026-06-22 09:30:13,498.498 INFO    ] Checking for camera pi updates...
[2026-06-22 09:30:13,533.533 INFO    ] 200
[2026-06-22 09:30:13,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:30:13,577.577 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:30:13,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:30:13,663.663 INFO    ] No camera update needed
[2026-06-22 09:30:13,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:30:13,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:30:13,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:30:13,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:30:15,718.718 INFO    ] ================================================
[2026-06-22 09:30:15,733.733 INFO    ] Launching Daemon at Mon Jun 22 09:30:15 IST 2026
[2026-06-22 09:30:15,745.745 INFO    ] ================================================
[2026-06-22 09:30:16,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:30:16
[2026-06-22 09:30:16,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:30:17,213.213 INFO    ] Initializing speech engine...
[2026-06-22 09:30:17,219.219 INFO    ] 2026-06-22 09:30:17
[2026-06-22 09:30:17,517.517 INFO    ] 2026-06-22 09:30:17
[2026-06-22 09:30:17,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:30:17,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:30:17,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:30:18,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:30:18,073.073 INFO    ] time= 22/06/2026 09:30:18
[2026-06-22 09:30:18,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:30:18,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:30:18,229.229 INFO    ] No existing commands found in stream
[2026-06-22 09:30:23,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:30:23,243.243 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-22 09:30:23,821.821 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:30:23,822.822 INFO    ] Checking for system updates...
[2026-06-22 09:30:23,843.843 INFO    ] 200
[2026-06-22 09:30:23,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:30:23,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:30:23,885.885 INFO    ] No update needed
[2026-06-22 09:30:23,887.887 INFO    ] Checking for camera pi updates...
[2026-06-22 09:30:23,926.926 INFO    ] 200
[2026-06-22 09:30:23,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:30:23,975.975 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:30:24,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:30:24,058.058 INFO    ] No camera update needed
[2026-06-22 09:30:24,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:30:24,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:30:24,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:30:24,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:30:26,113.113 INFO    ] ================================================
[2026-06-22 09:30:26,128.128 INFO    ] Launching Daemon at Mon Jun 22 09:30:26 IST 2026
[2026-06-22 09:30:26,139.139 INFO    ] ================================================
[2026-06-22 09:30:26,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:30:26
[2026-06-22 09:30:27,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:30:27,509.509 INFO    ] Initializing speech engine...
[2026-06-22 09:30:27,516.516 INFO    ] 2026-06-22 09:30:27
[2026-06-22 09:30:27,823.823 INFO    ] 2026-06-22 09:30:27
[2026-06-22 09:30:27,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:30:28,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:30:28,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:30:28,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:30:28,262.262 INFO    ] time= 22/06/2026 09:30:28
[2026-06-22 09:30:28,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:30:28,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:30:28,342.342 INFO    ] No existing commands found in stream
[2026-06-22 09:30:33,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:30:33,355.355 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-22 09:30:35,895.895 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:30:35,896.896 INFO    ] Checking for system updates...
[2026-06-22 09:30:35,921.921 INFO    ] 200
[2026-06-22 09:30:35,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:30:35,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:30:35,954.954 INFO    ] No update needed
[2026-06-22 09:30:35,955.955 INFO    ] Checking for camera pi updates...
[2026-06-22 09:30:35,980.980 INFO    ] 200
[2026-06-22 09:30:35,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:30:36,023.023 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:30:36,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:30:36,109.109 INFO    ] No camera update needed
[2026-06-22 09:30:36,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:30:36,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:30:36,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:30:36,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:30:38,163.163 INFO    ] ================================================
[2026-06-22 09:30:38,179.179 INFO    ] Launching Daemon at Mon Jun 22 09:30:38 IST 2026
[2026-06-22 09:30:38,190.190 INFO    ] ================================================
[2026-06-22 09:30:38,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:30:38
[2026-06-22 09:30:39,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:30:39,717.717 INFO    ] Initializing speech engine...
[2026-06-22 09:30:39,732.732 INFO    ] 2026-06-22 09:30:39
[2026-06-22 09:30:40,025.025 INFO    ] 2026-06-22 09:30:40
[2026-06-22 09:30:40,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:30:40,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:30:40,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:30:40,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:30:40,647.647 INFO    ] time= 22/06/2026 09:30:40
[2026-06-22 09:30:40,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:30:40,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:30:40,823.823 INFO    ] No existing commands found in stream
[2026-06-22 09:30:45,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:30:45,851.851 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-22 09:30:50,339.339 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:30:50,341.341 INFO    ] Checking for system updates...
[2026-06-22 09:30:50,377.377 INFO    ] 200
[2026-06-22 09:30:50,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:30:50,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:30:50,443.443 INFO    ] No update needed
[2026-06-22 09:30:50,446.446 INFO    ] Checking for camera pi updates...
[2026-06-22 09:30:50,490.490 INFO    ] 200
[2026-06-22 09:30:50,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:30:50,575.575 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:30:50,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:30:50,662.662 INFO    ] No camera update needed
[2026-06-22 09:30:50,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:30:50,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:30:50,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:30:50,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:30:52,718.718 INFO    ] ================================================
[2026-06-22 09:30:52,733.733 INFO    ] Launching Daemon at Mon Jun 22 09:30:52 IST 2026
[2026-06-22 09:30:52,745.745 INFO    ] ================================================
[2026-06-22 09:30:53,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:30:53
[2026-06-22 09:30:53,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:30:54,113.113 INFO    ] Initializing speech engine...
[2026-06-22 09:30:54,124.124 INFO    ] 2026-06-22 09:30:54
[2026-06-22 09:30:54,382.382 INFO    ] 2026-06-22 09:30:54
[2026-06-22 09:30:54,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:30:54,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:30:54,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:30:54,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:30:54,883.883 INFO    ] time= 22/06/2026 09:30:54
[2026-06-22 09:30:54,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:30:54,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:30:55,088.088 INFO    ] No existing commands found in stream
[2026-06-22 09:31:00,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:31:00,109.109 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-22 09:31:03,779.779 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:31:03,782.782 INFO    ] Checking for system updates...
[2026-06-22 09:31:03,818.818 INFO    ] 200
[2026-06-22 09:31:03,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:31:03,878.878 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:31:03,880.880 INFO    ] No update needed
[2026-06-22 09:31:03,883.883 INFO    ] Checking for camera pi updates...
[2026-06-22 09:31:03,916.916 INFO    ] 200
[2026-06-22 09:31:03,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:31:03,964.964 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:31:04,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:31:04,049.049 INFO    ] No camera update needed
[2026-06-22 09:31:04,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:31:04,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:31:04,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:31:04,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:31:06,105.105 INFO    ] ================================================
[2026-06-22 09:31:06,120.120 INFO    ] Launching Daemon at Mon Jun 22 09:31:06 IST 2026
[2026-06-22 09:31:06,131.131 INFO    ] ================================================
[2026-06-22 09:31:06,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:31:06
[2026-06-22 09:31:07,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:31:07,537.537 INFO    ] Initializing speech engine...
[2026-06-22 09:31:07,546.546 INFO    ] 2026-06-22 09:31:07
[2026-06-22 09:31:07,796.796 INFO    ] 2026-06-22 09:31:07
[2026-06-22 09:31:07,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:31:08,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:31:08,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:31:08,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:31:08,240.240 INFO    ] time= 22/06/2026 09:31:08
[2026-06-22 09:31:08,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:31:08,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:31:08,494.494 INFO    ] No existing commands found in stream
[2026-06-22 09:31:13,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:31:13,520.520 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-22 09:31:17,747.747 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:31:17,749.749 INFO    ] Checking for system updates...
[2026-06-22 09:31:17,786.786 INFO    ] 200
[2026-06-22 09:31:17,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:31:17,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:31:17,843.843 INFO    ] No update needed
[2026-06-22 09:31:17,845.845 INFO    ] Checking for camera pi updates...
[2026-06-22 09:31:17,879.879 INFO    ] 200
[2026-06-22 09:31:17,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:31:17,923.923 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:31:18,112.112 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:31:18,115.115 INFO    ] No camera update needed
[2026-06-22 09:31:18,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:31:18,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:31:18,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:31:18,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:31:20,171.171 INFO    ] ================================================
[2026-06-22 09:31:20,186.186 INFO    ] Launching Daemon at Mon Jun 22 09:31:20 IST 2026
[2026-06-22 09:31:20,197.197 INFO    ] ================================================
[2026-06-22 09:31:20,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:31:20
[2026-06-22 09:31:21,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:31:21,648.648 INFO    ] Initializing speech engine...
[2026-06-22 09:31:21,673.673 INFO    ] 2026-06-22 09:31:21
[2026-06-22 09:31:21,947.947 INFO    ] 2026-06-22 09:31:21
[2026-06-22 09:31:21,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:31:22,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:31:22,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:31:22,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:31:22,360.360 INFO    ] time= 22/06/2026 09:31:22
[2026-06-22 09:31:22,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:31:22,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:31:22,523.523 INFO    ] No existing commands found in stream
[2026-06-22 09:31:27,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:31:27,556.556 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-22 09:31:31,970.970 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:31:31,973.973 INFO    ] Checking for system updates...
[2026-06-22 09:31:32,012.012 INFO    ] 200
[2026-06-22 09:31:32,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:31:32,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:31:32,082.082 INFO    ] No update needed
[2026-06-22 09:31:32,085.085 INFO    ] Checking for camera pi updates...
[2026-06-22 09:31:32,120.120 INFO    ] 200
[2026-06-22 09:31:32,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:31:32,167.167 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:31:32,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:31:32,232.232 INFO    ] No camera update needed
[2026-06-22 09:31:32,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:31:32,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:31:32,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:31:32,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:31:34,294.294 INFO    ] ================================================
[2026-06-22 09:31:34,309.309 INFO    ] Launching Daemon at Mon Jun 22 09:31:34 IST 2026
[2026-06-22 09:31:34,320.320 INFO    ] ================================================
[2026-06-22 09:31:34,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:31:34
[2026-06-22 09:31:35,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:31:35,646.646 INFO    ] Initializing speech engine...
[2026-06-22 09:31:35,660.660 INFO    ] 2026-06-22 09:31:35
[2026-06-22 09:31:35,943.943 INFO    ] 2026-06-22 09:31:35
[2026-06-22 09:31:35,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:31:36,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:31:36,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:31:36,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:31:36,450.450 INFO    ] time= 22/06/2026 09:31:36
[2026-06-22 09:31:36,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:31:36,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:31:36,665.665 INFO    ] No existing commands found in stream
[2026-06-22 09:31:41,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:31:41,680.680 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-22 09:31:43,192.192 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:31:43,193.193 INFO    ] Checking for system updates...
[2026-06-22 09:31:43,215.215 INFO    ] 200
[2026-06-22 09:31:43,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:31:43,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:31:43,250.250 INFO    ] No update needed
[2026-06-22 09:31:43,251.251 INFO    ] Checking for camera pi updates...
[2026-06-22 09:31:43,272.272 INFO    ] 200
[2026-06-22 09:31:43,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:31:43,314.314 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:31:43,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:31:43,396.396 INFO    ] No camera update needed
[2026-06-22 09:31:43,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:31:43,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:31:43,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:31:43,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:31:45,452.452 INFO    ] ================================================
[2026-06-22 09:31:45,467.467 INFO    ] Launching Daemon at Mon Jun 22 09:31:45 IST 2026
[2026-06-22 09:31:45,478.478 INFO    ] ================================================
[2026-06-22 09:31:46,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:31:46
[2026-06-22 09:31:46,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:31:46,820.820 INFO    ] Initializing speech engine...
[2026-06-22 09:31:46,828.828 INFO    ] 2026-06-22 09:31:46
[2026-06-22 09:31:47,126.126 INFO    ] 2026-06-22 09:31:47
[2026-06-22 09:31:47,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:31:47,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:31:47,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:31:47,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:31:47,649.649 INFO    ] time= 22/06/2026 09:31:47
[2026-06-22 09:31:47,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:31:47,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:31:47,862.862 INFO    ] No existing commands found in stream
[2026-06-22 09:31:52,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:31:52,877.877 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-22 09:31:53,445.445 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:31:53,447.447 INFO    ] Checking for system updates...
[2026-06-22 09:31:53,468.468 INFO    ] 200
[2026-06-22 09:31:53,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:31:53,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:31:53,526.526 INFO    ] No update needed
[2026-06-22 09:31:53,528.528 INFO    ] Checking for camera pi updates...
[2026-06-22 09:31:53,563.563 INFO    ] 200
[2026-06-22 09:31:53,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:31:53,610.610 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:31:53,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:31:53,711.711 INFO    ] No camera update needed
[2026-06-22 09:31:53,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:31:53,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:31:53,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:31:53,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:31:55,767.767 INFO    ] ================================================
[2026-06-22 09:31:55,782.782 INFO    ] Launching Daemon at Mon Jun 22 09:31:55 IST 2026
[2026-06-22 09:31:55,793.793 INFO    ] ================================================
[2026-06-22 09:31:56,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:31:56
[2026-06-22 09:31:56,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:31:57,225.225 INFO    ] Initializing speech engine...
[2026-06-22 09:31:57,233.233 INFO    ] 2026-06-22 09:31:57
[2026-06-22 09:31:57,494.494 INFO    ] 2026-06-22 09:31:57
[2026-06-22 09:31:57,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:31:57,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:31:57,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:31:57,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:31:58,036.036 INFO    ] time= 22/06/2026 09:31:58
[2026-06-22 09:31:58,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:31:58,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:31:58,187.187 INFO    ] No existing commands found in stream
[2026-06-22 09:32:03,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:32:03,204.204 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-22 09:32:05,785.785 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:32:05,788.788 INFO    ] Checking for system updates...
[2026-06-22 09:32:05,823.823 INFO    ] 200
[2026-06-22 09:32:05,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:32:05,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:32:05,885.885 INFO    ] No update needed
[2026-06-22 09:32:05,888.888 INFO    ] Checking for camera pi updates...
[2026-06-22 09:32:05,928.928 INFO    ] 200
[2026-06-22 09:32:05,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:32:05,999.999 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:32:06,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:32:06,082.082 INFO    ] No camera update needed
[2026-06-22 09:32:06,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:32:06,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:32:06,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:32:06,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:32:08,139.139 INFO    ] ================================================
[2026-06-22 09:32:08,153.153 INFO    ] Launching Daemon at Mon Jun 22 09:32:08 IST 2026
[2026-06-22 09:32:08,164.164 INFO    ] ================================================
[2026-06-22 09:32:08,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:32:08
[2026-06-22 09:32:09,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:32:09,507.507 INFO    ] Initializing speech engine...
[2026-06-22 09:32:09,516.516 INFO    ] 2026-06-22 09:32:09
[2026-06-22 09:32:09,763.763 INFO    ] 2026-06-22 09:32:09
[2026-06-22 09:32:09,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:32:10,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:32:10,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:32:10,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:32:10,284.284 INFO    ] time= 22/06/2026 09:32:10
[2026-06-22 09:32:10,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:32:10,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:32:10,474.474 INFO    ] No existing commands found in stream
[2026-06-22 09:32:15,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:32:15,496.496 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-22 09:32:17,300.300 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:32:17,302.302 INFO    ] Checking for system updates...
[2026-06-22 09:32:17,342.342 INFO    ] 200
[2026-06-22 09:32:17,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:32:17,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:32:17,401.401 INFO    ] No update needed
[2026-06-22 09:32:17,403.403 INFO    ] Checking for camera pi updates...
[2026-06-22 09:32:17,436.436 INFO    ] 200
[2026-06-22 09:32:17,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:32:17,461.461 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:32:17,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:32:17,545.545 INFO    ] No camera update needed
[2026-06-22 09:32:17,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:32:17,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:32:17,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:32:17,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:32:19,602.602 INFO    ] ================================================
[2026-06-22 09:32:19,618.618 INFO    ] Launching Daemon at Mon Jun 22 09:32:19 IST 2026
[2026-06-22 09:32:19,629.629 INFO    ] ================================================
[2026-06-22 09:32:20,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:32:20
[2026-06-22 09:32:20,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:32:21,072.072 INFO    ] Initializing speech engine...
[2026-06-22 09:32:21,081.081 INFO    ] 2026-06-22 09:32:21
[2026-06-22 09:32:21,363.363 INFO    ] 2026-06-22 09:32:21
[2026-06-22 09:32:21,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:32:21,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:32:21,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:32:21,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:32:21,899.899 INFO    ] time= 22/06/2026 09:32:21
[2026-06-22 09:32:21,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:32:21,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:32:22,059.059 INFO    ] No existing commands found in stream
[2026-06-22 09:32:27,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:32:27,085.085 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-22 09:32:31,553.553 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:32:31,556.556 INFO    ] Checking for system updates...
[2026-06-22 09:32:31,600.600 INFO    ] 200
[2026-06-22 09:32:31,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 09:32:31,606.606 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-22 09:32:31,609.609 INFO    ] Checking for camera pi updates...
[2026-06-22 09:32:31,666.666 INFO    ] 200
[2026-06-22 09:32:31,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 09:32:31,672.672 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-22 09:32:31,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:32:31,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:32:31,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:32:31,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:32:33,751.751 INFO    ] ================================================
[2026-06-22 09:32:33,767.767 INFO    ] Launching Daemon at Mon Jun 22 09:32:33 IST 2026
[2026-06-22 09:32:33,779.779 INFO    ] ================================================
[2026-06-22 09:32:34,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:32:34
[2026-06-22 09:32:35,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:32:35,307.307 INFO    ] Initializing speech engine...
[2026-06-22 09:32:35,314.314 INFO    ] 2026-06-22 09:32:35
[2026-06-22 09:32:35,579.579 INFO    ] 2026-06-22 09:32:35
[2026-06-22 09:32:35,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:32:35,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:32:35,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:32:36,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:32:36,046.046 INFO    ] time= 22/06/2026 09:32:36
[2026-06-22 09:32:36,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:32:36,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:32:36,306.306 INFO    ] No existing commands found in stream
[2026-06-22 09:32:41,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:32:41,323.323 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-22 09:32:41,861.861 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:32:41,863.863 INFO    ] Checking for system updates...
[2026-06-22 09:32:41,912.912 INFO    ] 200
[2026-06-22 09:32:41,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:32:41,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:32:41,975.975 INFO    ] No update needed
[2026-06-22 09:32:41,978.978 INFO    ] Checking for camera pi updates...
[2026-06-22 09:32:42,011.011 INFO    ] 200
[2026-06-22 09:32:42,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:32:42,059.059 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:32:42,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:32:42,123.123 INFO    ] No camera update needed
[2026-06-22 09:32:42,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:32:42,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:32:42,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:32:42,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:32:44,181.181 INFO    ] ================================================
[2026-06-22 09:32:44,196.196 INFO    ] Launching Daemon at Mon Jun 22 09:32:44 IST 2026
[2026-06-22 09:32:44,210.210 INFO    ] ================================================
[2026-06-22 09:32:44,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:32:44
[2026-06-22 09:32:45,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:32:45,613.613 INFO    ] Initializing speech engine...
[2026-06-22 09:32:45,624.624 INFO    ] 2026-06-22 09:32:45
[2026-06-22 09:32:45,903.903 INFO    ] 2026-06-22 09:32:45
[2026-06-22 09:32:45,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:32:46,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:32:46,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:32:46,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:32:46,488.488 INFO    ] time= 22/06/2026 09:32:46
[2026-06-22 09:32:46,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:32:46,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:32:46,636.636 INFO    ] No existing commands found in stream
[2026-06-22 09:32:51,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:32:51,662.662 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-22 09:32:55,765.765 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:32:55,768.768 INFO    ] Checking for system updates...
[2026-06-22 09:32:55,804.804 INFO    ] 200
[2026-06-22 09:32:55,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:32:55,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:32:55,862.862 INFO    ] No update needed
[2026-06-22 09:32:55,864.864 INFO    ] Checking for camera pi updates...
[2026-06-22 09:32:55,898.898 INFO    ] 200
[2026-06-22 09:32:55,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:32:55,941.941 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:32:56,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:32:56,032.032 INFO    ] No camera update needed
[2026-06-22 09:32:56,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:32:56,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:32:56,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:32:56,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:32:58,086.086 INFO    ] ================================================
[2026-06-22 09:32:58,101.101 INFO    ] Launching Daemon at Mon Jun 22 09:32:58 IST 2026
[2026-06-22 09:32:58,112.112 INFO    ] ================================================
[2026-06-22 09:32:58,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:32:58
[2026-06-22 09:32:59,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:32:59,634.634 INFO    ] Initializing speech engine...
[2026-06-22 09:32:59,645.645 INFO    ] 2026-06-22 09:32:59
[2026-06-22 09:32:59,921.921 INFO    ] 2026-06-22 09:32:59
[2026-06-22 09:32:59,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:33:00,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:33:00,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:33:00,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:33:00,445.445 INFO    ] time= 22/06/2026 09:33:00
[2026-06-22 09:33:00,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:33:00,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:33:00,610.610 INFO    ] No existing commands found in stream
[2026-06-22 09:33:05,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:33:05,636.636 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-22 09:33:09,418.418 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:33:09,421.421 INFO    ] Checking for system updates...
[2026-06-22 09:33:09,457.457 INFO    ] 200
[2026-06-22 09:33:09,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:33:09,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:33:09,516.516 INFO    ] No update needed
[2026-06-22 09:33:09,519.519 INFO    ] Checking for camera pi updates...
[2026-06-22 09:33:09,555.555 INFO    ] 200
[2026-06-22 09:33:09,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:33:09,600.600 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:33:09,693.693 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:33:09,696.696 INFO    ] No camera update needed
[2026-06-22 09:33:09,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:33:09,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:33:09,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:33:09,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:33:11,752.752 INFO    ] ================================================
[2026-06-22 09:33:11,767.767 INFO    ] Launching Daemon at Mon Jun 22 09:33:11 IST 2026
[2026-06-22 09:33:11,778.778 INFO    ] ================================================
[2026-06-22 09:33:12,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:33:12
[2026-06-22 09:33:13,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:33:13,345.345 INFO    ] Initializing speech engine...
[2026-06-22 09:33:13,356.356 INFO    ] 2026-06-22 09:33:13
[2026-06-22 09:33:13,616.616 INFO    ] 2026-06-22 09:33:13
[2026-06-22 09:33:13,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:33:13,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:33:13,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:33:14,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:33:14,106.106 INFO    ] time= 22/06/2026 09:33:14
[2026-06-22 09:33:14,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:33:14,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:33:14,316.316 INFO    ] No existing commands found in stream
[2026-06-22 09:33:19,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:33:19,347.347 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-22 09:33:21,559.559 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:33:21,562.562 INFO    ] Checking for system updates...
[2026-06-22 09:33:21,612.612 INFO    ] 200
[2026-06-22 09:33:21,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:33:21,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:33:21,672.672 INFO    ] No update needed
[2026-06-22 09:33:21,674.674 INFO    ] Checking for camera pi updates...
[2026-06-22 09:33:21,710.710 INFO    ] 200
[2026-06-22 09:33:21,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:33:21,756.756 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:33:21,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:33:21,936.936 INFO    ] No camera update needed
[2026-06-22 09:33:21,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:33:21,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:33:21,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:33:21,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:33:23,993.993 INFO    ] ================================================
[2026-06-22 09:33:24,008.008 INFO    ] Launching Daemon at Mon Jun 22 09:33:24 IST 2026
[2026-06-22 09:33:24,019.019 INFO    ] ================================================
[2026-06-22 09:33:24,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:33:24
[2026-06-22 09:33:25,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:33:25,396.396 INFO    ] Initializing speech engine...
[2026-06-22 09:33:25,405.405 INFO    ] 2026-06-22 09:33:25
[2026-06-22 09:33:25,671.671 INFO    ] 2026-06-22 09:33:25
[2026-06-22 09:33:25,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:33:25,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:33:25,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:33:26,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:33:26,060.060 INFO    ] time= 22/06/2026 09:33:26
[2026-06-22 09:33:26,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:33:26,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:33:26,166.166 INFO    ] No existing commands found in stream
[2026-06-22 09:33:31,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:33:31,182.182 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-22 09:33:33,858.858 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:33:33,861.861 INFO    ] Checking for system updates...
[2026-06-22 09:33:33,897.897 INFO    ] 200
[2026-06-22 09:33:33,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:33:33,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:33:33,962.962 INFO    ] No update needed
[2026-06-22 09:33:33,964.964 INFO    ] Checking for camera pi updates...
[2026-06-22 09:33:33,998.998 INFO    ] 200
[2026-06-22 09:33:34,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:33:34,046.046 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:33:34,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:33:34,156.156 INFO    ] No camera update needed
[2026-06-22 09:33:34,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:33:34,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:33:34,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:33:34,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:33:36,213.213 INFO    ] ================================================
[2026-06-22 09:33:36,227.227 INFO    ] Launching Daemon at Mon Jun 22 09:33:36 IST 2026
[2026-06-22 09:33:36,238.238 INFO    ] ================================================
[2026-06-22 09:33:36,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:33:36
[2026-06-22 09:33:37,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:33:37,688.688 INFO    ] Initializing speech engine...
[2026-06-22 09:33:37,703.703 INFO    ] 2026-06-22 09:33:37
[2026-06-22 09:33:37,972.972 INFO    ] 2026-06-22 09:33:37
[2026-06-22 09:33:38,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:33:38,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:33:38,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:33:38,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:33:38,482.482 INFO    ] time= 22/06/2026 09:33:38
[2026-06-22 09:33:38,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:33:38,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:33:38,691.691 INFO    ] No existing commands found in stream
[2026-06-22 09:33:43,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:33:43,723.723 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-22 09:33:47,558.558 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:33:47,559.559 INFO    ] Checking for system updates...
[2026-06-22 09:33:47,580.580 INFO    ] 200
[2026-06-22 09:33:47,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:33:47,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:33:47,636.636 INFO    ] No update needed
[2026-06-22 09:33:47,639.639 INFO    ] Checking for camera pi updates...
[2026-06-22 09:33:47,673.673 INFO    ] 200
[2026-06-22 09:33:47,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:33:47,719.719 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:33:47,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:33:47,812.812 INFO    ] No camera update needed
[2026-06-22 09:33:47,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:33:47,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:33:47,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:33:47,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:33:49,872.872 INFO    ] ================================================
[2026-06-22 09:33:49,888.888 INFO    ] Launching Daemon at Mon Jun 22 09:33:49 IST 2026
[2026-06-22 09:33:49,899.899 INFO    ] ================================================
[2026-06-22 09:33:50,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:33:50
[2026-06-22 09:33:50,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:33:51,212.212 INFO    ] Initializing speech engine...
[2026-06-22 09:33:51,225.225 INFO    ] 2026-06-22 09:33:51
[2026-06-22 09:33:51,509.509 INFO    ] 2026-06-22 09:33:51
[2026-06-22 09:33:51,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:33:51,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:33:51,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:33:51,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:33:51,974.974 INFO    ] time= 22/06/2026 09:33:51
[2026-06-22 09:33:52,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:33:52,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:33:52,201.201 INFO    ] No existing commands found in stream
[2026-06-22 09:33:57,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:33:57,227.227 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-22 09:33:59,432.432 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:33:59,435.435 INFO    ] Checking for system updates...
[2026-06-22 09:33:59,472.472 INFO    ] 200
[2026-06-22 09:33:59,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:33:59,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:33:59,531.531 INFO    ] No update needed
[2026-06-22 09:33:59,533.533 INFO    ] Checking for camera pi updates...
[2026-06-22 09:33:59,570.570 INFO    ] 200
[2026-06-22 09:33:59,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:33:59,618.618 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:33:59,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:33:59,706.706 INFO    ] No camera update needed
[2026-06-22 09:33:59,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:33:59,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:33:59,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:33:59,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:34:01,764.764 INFO    ] ================================================
[2026-06-22 09:34:01,785.785 INFO    ] Launching Daemon at Mon Jun 22 09:34:01 IST 2026
[2026-06-22 09:34:01,801.801 INFO    ] ================================================
[2026-06-22 09:34:02,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:34:02
[2026-06-22 09:34:03,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:34:03,388.388 INFO    ] Initializing speech engine...
[2026-06-22 09:34:03,393.393 INFO    ] 2026-06-22 09:34:03
[2026-06-22 09:34:03,649.649 INFO    ] 2026-06-22 09:34:03
[2026-06-22 09:34:03,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:34:03,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:34:03,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:34:04,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:34:04,142.142 INFO    ] time= 22/06/2026 09:34:04
[2026-06-22 09:34:04,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:34:04,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:34:04,358.358 INFO    ] No existing commands found in stream
[2026-06-22 09:34:09,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:34:09,386.386 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-22 09:34:11,358.358 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:34:11,361.361 INFO    ] Checking for system updates...
[2026-06-22 09:34:11,397.397 INFO    ] 200
[2026-06-22 09:34:11,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:34:11,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:34:11,457.457 INFO    ] No update needed
[2026-06-22 09:34:11,459.459 INFO    ] Checking for camera pi updates...
[2026-06-22 09:34:11,497.497 INFO    ] 200
[2026-06-22 09:34:11,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:34:11,542.542 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:34:11,663.663 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:34:11,666.666 INFO    ] No camera update needed
[2026-06-22 09:34:11,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:34:11,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:34:11,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:34:11,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:34:13,723.723 INFO    ] ================================================
[2026-06-22 09:34:13,739.739 INFO    ] Launching Daemon at Mon Jun 22 09:34:13 IST 2026
[2026-06-22 09:34:13,750.750 INFO    ] ================================================
[2026-06-22 09:34:14,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:34:14
[2026-06-22 09:34:14,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:34:15,089.089 INFO    ] Initializing speech engine...
[2026-06-22 09:34:15,098.098 INFO    ] 2026-06-22 09:34:15
[2026-06-22 09:34:15,396.396 INFO    ] 2026-06-22 09:34:15
[2026-06-22 09:34:15,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:34:15,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:34:15,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:34:15,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:34:15,905.905 INFO    ] time= 22/06/2026 09:34:15
[2026-06-22 09:34:15,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:34:16,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:34:16,198.198 INFO    ] No existing commands found in stream
[2026-06-22 09:34:21,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:34:21,220.220 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-22 09:34:23,997.997 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:34:24,000.000 INFO    ] Checking for system updates...
[2026-06-22 09:34:24,036.036 INFO    ] 200
[2026-06-22 09:34:24,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:34:24,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:34:24,094.094 INFO    ] No update needed
[2026-06-22 09:34:24,097.097 INFO    ] Checking for camera pi updates...
[2026-06-22 09:34:24,131.131 INFO    ] 200
[2026-06-22 09:34:24,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:34:24,176.176 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:34:24,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:34:24,246.246 INFO    ] No camera update needed
[2026-06-22 09:34:24,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:34:24,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:34:24,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:34:24,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:34:26,301.301 INFO    ] ================================================
[2026-06-22 09:34:26,316.316 INFO    ] Launching Daemon at Mon Jun 22 09:34:26 IST 2026
[2026-06-22 09:34:26,328.328 INFO    ] ================================================
[2026-06-22 09:34:26,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:34:26
[2026-06-22 09:34:27,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:34:27,791.791 INFO    ] Initializing speech engine...
[2026-06-22 09:34:27,812.812 INFO    ] 2026-06-22 09:34:27
[2026-06-22 09:34:28,083.083 INFO    ] 2026-06-22 09:34:28
[2026-06-22 09:34:28,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:34:28,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:34:28,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:34:28,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:34:28,470.470 INFO    ] time= 22/06/2026 09:34:28
[2026-06-22 09:34:28,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:34:28,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:34:28,599.599 INFO    ] No existing commands found in stream
[2026-06-22 09:34:33,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:34:33,638.638 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-22 09:34:35,958.958 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:34:35,961.961 INFO    ] Checking for system updates...
[2026-06-22 09:34:35,997.997 INFO    ] 200
[2026-06-22 09:34:36,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:34:36,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:34:36,064.064 INFO    ] No update needed
[2026-06-22 09:34:36,067.067 INFO    ] Checking for camera pi updates...
[2026-06-22 09:34:36,106.106 INFO    ] 200
[2026-06-22 09:34:36,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:34:36,154.154 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:34:36,255.255 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:34:36,258.258 INFO    ] No camera update needed
[2026-06-22 09:34:36,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:34:36,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:34:36,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:34:36,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:34:38,314.314 INFO    ] ================================================
[2026-06-22 09:34:38,329.329 INFO    ] Launching Daemon at Mon Jun 22 09:34:38 IST 2026
[2026-06-22 09:34:38,341.341 INFO    ] ================================================
[2026-06-22 09:34:38,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:34:38
[2026-06-22 09:34:39,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:34:39,904.904 INFO    ] Initializing speech engine...
[2026-06-22 09:34:39,917.917 INFO    ] 2026-06-22 09:34:39
[2026-06-22 09:34:40,224.224 INFO    ] 2026-06-22 09:34:40
[2026-06-22 09:34:40,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:34:40,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:34:40,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:34:40,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:34:40,748.748 INFO    ] time= 22/06/2026 09:34:40
[2026-06-22 09:34:40,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:34:40,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:34:40,910.910 INFO    ] No existing commands found in stream
[2026-06-22 09:34:45,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:34:45,937.937 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-22 09:34:50,105.105 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:34:50,106.106 INFO    ] Checking for system updates...
[2026-06-22 09:34:50,127.127 INFO    ] 200
[2026-06-22 09:34:50,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:34:50,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:34:50,176.176 INFO    ] No update needed
[2026-06-22 09:34:50,178.178 INFO    ] Checking for camera pi updates...
[2026-06-22 09:34:50,213.213 INFO    ] 200
[2026-06-22 09:34:50,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:34:50,257.257 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:34:50,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:34:50,348.348 INFO    ] No camera update needed
[2026-06-22 09:34:50,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:34:50,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:34:50,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:34:50,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:34:52,405.405 INFO    ] ================================================
[2026-06-22 09:34:52,420.420 INFO    ] Launching Daemon at Mon Jun 22 09:34:52 IST 2026
[2026-06-22 09:34:52,430.430 INFO    ] ================================================
[2026-06-22 09:34:53,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:34:53
[2026-06-22 09:34:53,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:34:53,788.788 INFO    ] Initializing speech engine...
[2026-06-22 09:34:53,797.797 INFO    ] 2026-06-22 09:34:53
[2026-06-22 09:34:54,100.100 INFO    ] 2026-06-22 09:34:54
[2026-06-22 09:34:54,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:34:54,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:34:54,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:34:54,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:34:54,539.539 INFO    ] time= 22/06/2026 09:34:54
[2026-06-22 09:34:54,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:34:54,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:34:54,636.636 INFO    ] No existing commands found in stream
[2026-06-22 09:34:59,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:34:59,652.652 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-22 09:35:00,512.512 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:35:00,515.515 INFO    ] Checking for system updates...
[2026-06-22 09:35:00,551.551 INFO    ] 200
[2026-06-22 09:35:00,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:35:00,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:35:00,609.609 INFO    ] No update needed
[2026-06-22 09:35:00,611.611 INFO    ] Checking for camera pi updates...
[2026-06-22 09:35:00,646.646 INFO    ] 200
[2026-06-22 09:35:00,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:35:00,695.695 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:35:00,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:35:00,797.797 INFO    ] No camera update needed
[2026-06-22 09:35:00,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:35:00,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:35:00,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:35:00,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:35:02,862.862 INFO    ] ================================================
[2026-06-22 09:35:02,887.887 INFO    ] Launching Daemon at Mon Jun 22 09:35:02 IST 2026
[2026-06-22 09:35:02,906.906 INFO    ] ================================================
[2026-06-22 09:35:03,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:35:03
[2026-06-22 09:35:04,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:35:04,375.375 INFO    ] Initializing speech engine...
[2026-06-22 09:35:04,383.383 INFO    ] 2026-06-22 09:35:04
[2026-06-22 09:35:04,641.641 INFO    ] 2026-06-22 09:35:04
[2026-06-22 09:35:04,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:35:04,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:35:04,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:35:05,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:35:05,129.129 INFO    ] time= 22/06/2026 09:35:05
[2026-06-22 09:35:05,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:35:05,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:35:05,324.324 INFO    ] No existing commands found in stream
[2026-06-22 09:35:10,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:35:10,355.355 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-22 09:35:11,520.520 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:35:11,522.522 INFO    ] Checking for system updates...
[2026-06-22 09:35:11,562.562 INFO    ] 200
[2026-06-22 09:35:11,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:35:11,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:35:11,620.620 INFO    ] No update needed
[2026-06-22 09:35:11,622.622 INFO    ] Checking for camera pi updates...
[2026-06-22 09:35:11,656.656 INFO    ] 200
[2026-06-22 09:35:11,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:35:11,700.700 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:35:11,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:35:11,793.793 INFO    ] No camera update needed
[2026-06-22 09:35:11,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:35:11,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:35:11,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:35:11,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:35:13,850.850 INFO    ] ================================================
[2026-06-22 09:35:13,866.866 INFO    ] Launching Daemon at Mon Jun 22 09:35:13 IST 2026
[2026-06-22 09:35:13,877.877 INFO    ] ================================================
[2026-06-22 09:35:14,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:35:14
[2026-06-22 09:35:15,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:35:15,485.485 INFO    ] Initializing speech engine...
[2026-06-22 09:35:15,496.496 INFO    ] 2026-06-22 09:35:15
[2026-06-22 09:35:15,766.766 INFO    ] 2026-06-22 09:35:15
[2026-06-22 09:35:15,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:35:16,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:35:16,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:35:16,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:35:16,248.248 INFO    ] time= 22/06/2026 09:35:16
[2026-06-22 09:35:16,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:35:16,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:35:16,491.491 INFO    ] No existing commands found in stream
[2026-06-22 09:35:21,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:35:21,515.515 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-22 09:35:24,195.195 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:35:24,196.196 INFO    ] Checking for system updates...
[2026-06-22 09:35:24,217.217 INFO    ] 200
[2026-06-22 09:35:24,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:35:24,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:35:24,254.254 INFO    ] No update needed
[2026-06-22 09:35:24,257.257 INFO    ] Checking for camera pi updates...
[2026-06-22 09:35:24,292.292 INFO    ] 200
[2026-06-22 09:35:24,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:35:24,336.336 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:35:24,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:35:24,521.521 INFO    ] No camera update needed
[2026-06-22 09:35:24,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:35:24,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:35:24,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:35:24,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:35:26,576.576 INFO    ] ================================================
[2026-06-22 09:35:26,592.592 INFO    ] Launching Daemon at Mon Jun 22 09:35:26 IST 2026
[2026-06-22 09:35:26,603.603 INFO    ] ================================================
[2026-06-22 09:35:27,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:35:27
[2026-06-22 09:35:27,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:35:28,246.246 INFO    ] Initializing speech engine...
[2026-06-22 09:35:28,258.258 INFO    ] 2026-06-22 09:35:28
[2026-06-22 09:35:28,542.542 INFO    ] 2026-06-22 09:35:28
[2026-06-22 09:35:28,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:35:28,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:35:28,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:35:28,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:35:29,038.038 INFO    ] time= 22/06/2026 09:35:28
[2026-06-22 09:35:29,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:35:29,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:35:29,243.243 INFO    ] No existing commands found in stream
[2026-06-22 09:35:34,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:35:34,278.278 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-22 09:35:38,145.145 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:35:38,146.146 INFO    ] Checking for system updates...
[2026-06-22 09:35:38,169.169 INFO    ] 200
[2026-06-22 09:35:38,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:35:38,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:35:38,205.205 INFO    ] No update needed
[2026-06-22 09:35:38,206.206 INFO    ] Checking for camera pi updates...
[2026-06-22 09:35:38,228.228 INFO    ] 200
[2026-06-22 09:35:38,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:35:38,256.256 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:35:38,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:35:38,343.343 INFO    ] No camera update needed
[2026-06-22 09:35:38,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:35:38,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:35:38,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:35:38,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:35:40,400.400 INFO    ] ================================================
[2026-06-22 09:35:40,415.415 INFO    ] Launching Daemon at Mon Jun 22 09:35:40 IST 2026
[2026-06-22 09:35:40,426.426 INFO    ] ================================================
[2026-06-22 09:35:41,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:35:40
[2026-06-22 09:35:41,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:35:41,876.876 INFO    ] Initializing speech engine...
[2026-06-22 09:35:41,884.884 INFO    ] 2026-06-22 09:35:41
[2026-06-22 09:35:42,136.136 INFO    ] 2026-06-22 09:35:42
[2026-06-22 09:35:42,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:35:42,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:35:42,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:35:42,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:35:42,515.515 INFO    ] time= 22/06/2026 09:35:42
[2026-06-22 09:35:42,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:35:42,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:35:42,707.707 INFO    ] No existing commands found in stream
[2026-06-22 09:35:47,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:35:47,720.720 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-22 09:35:48,232.232 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:35:48,235.235 INFO    ] Checking for system updates...
[2026-06-22 09:35:48,275.275 INFO    ] 200
[2026-06-22 09:35:48,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:35:48,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:35:48,339.339 INFO    ] No update needed
[2026-06-22 09:35:48,341.341 INFO    ] Checking for camera pi updates...
[2026-06-22 09:35:48,376.376 INFO    ] 200
[2026-06-22 09:35:48,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:35:48,424.424 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:35:48,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:35:48,524.524 INFO    ] No camera update needed
[2026-06-22 09:35:48,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:35:48,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:35:48,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:35:48,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:35:50,585.585 INFO    ] ================================================
[2026-06-22 09:35:50,600.600 INFO    ] Launching Daemon at Mon Jun 22 09:35:50 IST 2026
[2026-06-22 09:35:50,611.611 INFO    ] ================================================
[2026-06-22 09:35:51,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:35:51
[2026-06-22 09:35:51,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:35:51,923.923 INFO    ] Initializing speech engine...
[2026-06-22 09:35:51,938.938 INFO    ] 2026-06-22 09:35:51
[2026-06-22 09:35:52,205.205 INFO    ] 2026-06-22 09:35:52
[2026-06-22 09:35:52,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:35:52,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:35:52,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:35:52,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:35:52,713.713 INFO    ] time= 22/06/2026 09:35:52
[2026-06-22 09:35:52,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:35:52,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:35:52,862.862 INFO    ] No existing commands found in stream
[2026-06-22 09:35:57,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:35:57,877.877 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-22 09:36:00,681.681 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:36:00,683.683 INFO    ] Checking for system updates...
[2026-06-22 09:36:00,719.719 INFO    ] 200
[2026-06-22 09:36:00,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:36:00,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:36:00,777.777 INFO    ] No update needed
[2026-06-22 09:36:00,780.780 INFO    ] Checking for camera pi updates...
[2026-06-22 09:36:00,813.813 INFO    ] 200
[2026-06-22 09:36:00,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:36:00,856.856 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:36:00,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:36:00,957.957 INFO    ] No camera update needed
[2026-06-22 09:36:00,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:36:00,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:36:00,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:36:00,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:36:03,012.012 INFO    ] ================================================
[2026-06-22 09:36:03,027.027 INFO    ] Launching Daemon at Mon Jun 22 09:36:03 IST 2026
[2026-06-22 09:36:03,038.038 INFO    ] ================================================
[2026-06-22 09:36:03,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:36:03
[2026-06-22 09:36:04,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:36:04,565.565 INFO    ] Initializing speech engine...
[2026-06-22 09:36:04,574.574 INFO    ] 2026-06-22 09:36:04
[2026-06-22 09:36:04,829.829 INFO    ] 2026-06-22 09:36:04
[2026-06-22 09:36:04,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:36:05,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:36:05,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:36:05,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:36:05,315.315 INFO    ] time= 22/06/2026 09:36:05
[2026-06-22 09:36:05,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:36:05,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:36:05,549.549 INFO    ] No existing commands found in stream
[2026-06-22 09:36:10,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:36:10,569.569 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-22 09:36:11,959.959 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:36:11,962.962 INFO    ] Checking for system updates...
[2026-06-22 09:36:12,001.001 INFO    ] 200
[2026-06-22 09:36:12,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:36:12,062.062 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:36:12,064.064 INFO    ] No update needed
[2026-06-22 09:36:12,067.067 INFO    ] Checking for camera pi updates...
[2026-06-22 09:36:12,100.100 INFO    ] 200
[2026-06-22 09:36:12,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:36:12,142.142 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:36:12,229.229 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:36:12,234.234 INFO    ] No camera update needed
[2026-06-22 09:36:12,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:36:12,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:36:12,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:36:12,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:36:14,291.291 INFO    ] ================================================
[2026-06-22 09:36:14,306.306 INFO    ] Launching Daemon at Mon Jun 22 09:36:14 IST 2026
[2026-06-22 09:36:14,317.317 INFO    ] ================================================
[2026-06-22 09:36:14,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:36:14
[2026-06-22 09:36:15,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:36:15,914.914 INFO    ] Initializing speech engine...
[2026-06-22 09:36:15,928.928 INFO    ] 2026-06-22 09:36:15
[2026-06-22 09:36:16,223.223 INFO    ] 2026-06-22 09:36:16
[2026-06-22 09:36:16,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:36:16,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:36:16,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:36:16,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:36:16,689.689 INFO    ] time= 22/06/2026 09:36:16
[2026-06-22 09:36:16,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:36:16,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:36:16,896.896 INFO    ] No existing commands found in stream
[2026-06-22 09:36:21,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:36:21,911.911 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-22 09:36:25,733.733 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:36:25,734.734 INFO    ] Checking for system updates...
[2026-06-22 09:36:25,756.756 INFO    ] 200
[2026-06-22 09:36:25,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:36:25,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:36:25,789.789 INFO    ] No update needed
[2026-06-22 09:36:25,790.790 INFO    ] Checking for camera pi updates...
[2026-06-22 09:36:25,821.821 INFO    ] 200
[2026-06-22 09:36:25,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:36:25,864.864 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:36:25,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:36:25,938.938 INFO    ] No camera update needed
[2026-06-22 09:36:25,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:36:25,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:36:25,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:36:25,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:36:28,994.994 INFO    ] ================================================
[2026-06-22 09:36:28,010.010 INFO    ] Launching Daemon at Mon Jun 22 09:36:28 IST 2026
[2026-06-22 09:36:28,020.020 INFO    ] ================================================
[2026-06-22 09:36:28,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:36:28
[2026-06-22 09:36:29,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:36:29,558.558 INFO    ] Initializing speech engine...
[2026-06-22 09:36:29,572.572 INFO    ] 2026-06-22 09:36:29
[2026-06-22 09:36:29,842.842 INFO    ] 2026-06-22 09:36:29
[2026-06-22 09:36:29,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:36:30,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:36:30,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:36:30,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:36:30,314.314 INFO    ] time= 22/06/2026 09:36:30
[2026-06-22 09:36:30,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:36:30,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:36:30,541.541 INFO    ] No existing commands found in stream
[2026-06-22 09:36:35,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:36:35,566.566 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-22 09:36:36,193.193 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:36:36,194.194 INFO    ] Checking for system updates...
[2026-06-22 09:36:36,216.216 INFO    ] 200
[2026-06-22 09:36:36,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:36:36,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:36:36,252.252 INFO    ] No update needed
[2026-06-22 09:36:36,253.253 INFO    ] Checking for camera pi updates...
[2026-06-22 09:36:36,275.275 INFO    ] 200
[2026-06-22 09:36:36,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:36:36,308.308 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:36:36,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:36:36,396.396 INFO    ] No camera update needed
[2026-06-22 09:36:36,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:36:36,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:36:36,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:36:36,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:36:38,457.457 INFO    ] ================================================
[2026-06-22 09:36:38,472.472 INFO    ] Launching Daemon at Mon Jun 22 09:36:38 IST 2026
[2026-06-22 09:36:38,483.483 INFO    ] ================================================
[2026-06-22 09:36:39,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:36:39
[2026-06-22 09:36:39,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:36:39,924.924 INFO    ] Initializing speech engine...
[2026-06-22 09:36:39,933.933 INFO    ] 2026-06-22 09:36:39
[2026-06-22 09:36:40,179.179 INFO    ] 2026-06-22 09:36:40
[2026-06-22 09:36:40,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:36:40,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:36:40,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:36:40,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:36:40,667.667 INFO    ] time= 22/06/2026 09:36:40
[2026-06-22 09:36:40,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:36:40,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:36:40,886.886 INFO    ] No existing commands found in stream
[2026-06-22 09:36:45,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:36:45,912.912 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-22 09:36:47,739.739 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:36:47,742.742 INFO    ] Checking for system updates...
[2026-06-22 09:36:47,777.777 INFO    ] 200
[2026-06-22 09:36:47,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:36:47,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:36:47,842.842 INFO    ] No update needed
[2026-06-22 09:36:47,845.845 INFO    ] Checking for camera pi updates...
[2026-06-22 09:36:47,882.882 INFO    ] 200
[2026-06-22 09:36:47,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:36:47,931.931 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:36:48,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:36:48,023.023 INFO    ] No camera update needed
[2026-06-22 09:36:48,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:36:48,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:36:48,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:36:48,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:36:50,080.080 INFO    ] ================================================
[2026-06-22 09:36:50,096.096 INFO    ] Launching Daemon at Mon Jun 22 09:36:50 IST 2026
[2026-06-22 09:36:50,107.107 INFO    ] ================================================
[2026-06-22 09:36:50,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:36:50
[2026-06-22 09:36:51,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:36:51,606.606 INFO    ] Initializing speech engine...
[2026-06-22 09:36:51,626.626 INFO    ] 2026-06-22 09:36:51
[2026-06-22 09:36:51,901.901 INFO    ] 2026-06-22 09:36:51
[2026-06-22 09:36:51,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:36:52,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:36:52,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:36:52,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:36:52,304.304 INFO    ] time= 22/06/2026 09:36:52
[2026-06-22 09:36:52,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:36:52,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:36:52,417.417 INFO    ] No existing commands found in stream
[2026-06-22 09:36:57,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:36:57,433.433 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-22 09:36:59,662.662 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:36:59,665.665 INFO    ] Checking for system updates...
[2026-06-22 09:36:59,701.701 INFO    ] 200
[2026-06-22 09:36:59,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:36:59,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:36:59,766.766 INFO    ] No update needed
[2026-06-22 09:36:59,768.768 INFO    ] Checking for camera pi updates...
[2026-06-22 09:36:59,801.801 INFO    ] 200
[2026-06-22 09:36:59,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:36:59,849.849 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:36:59,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:36:59,934.934 INFO    ] No camera update needed
[2026-06-22 09:36:59,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:36:59,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:36:59,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:36:59,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:37:02,993.993 INFO    ] ================================================
[2026-06-22 09:37:02,027.027 INFO    ] Launching Daemon at Mon Jun 22 09:37:02 IST 2026
[2026-06-22 09:37:02,040.040 INFO    ] ================================================
[2026-06-22 09:37:02,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:37:02
[2026-06-22 09:37:03,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:37:03,636.636 INFO    ] Initializing speech engine...
[2026-06-22 09:37:03,643.643 INFO    ] 2026-06-22 09:37:03
[2026-06-22 09:37:03,947.947 INFO    ] 2026-06-22 09:37:03
[2026-06-22 09:37:03,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:37:04,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:37:04,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:37:04,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:37:04,377.377 INFO    ] time= 22/06/2026 09:37:04
[2026-06-22 09:37:04,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:37:04,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:37:04,467.467 INFO    ] No existing commands found in stream
[2026-06-22 09:37:09,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:37:09,500.500 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-22 09:37:12,304.304 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:37:12,306.306 INFO    ] Checking for system updates...
[2026-06-22 09:37:12,341.341 INFO    ] 200
[2026-06-22 09:37:12,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:37:12,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:37:12,401.401 INFO    ] No update needed
[2026-06-22 09:37:12,404.404 INFO    ] Checking for camera pi updates...
[2026-06-22 09:37:12,439.439 INFO    ] 200
[2026-06-22 09:37:12,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:37:12,485.485 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:37:12,565.565 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:37:12,568.568 INFO    ] No camera update needed
[2026-06-22 09:37:12,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:37:12,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:37:12,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:37:12,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:37:14,628.628 INFO    ] ================================================
[2026-06-22 09:37:14,643.643 INFO    ] Launching Daemon at Mon Jun 22 09:37:14 IST 2026
[2026-06-22 09:37:14,654.654 INFO    ] ================================================
[2026-06-22 09:37:15,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:37:15
[2026-06-22 09:37:15,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:37:16,034.034 INFO    ] Initializing speech engine...
[2026-06-22 09:37:16,042.042 INFO    ] 2026-06-22 09:37:16
[2026-06-22 09:37:16,294.294 INFO    ] 2026-06-22 09:37:16
[2026-06-22 09:37:16,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:37:16,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:37:16,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:37:16,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:37:16,791.791 INFO    ] time= 22/06/2026 09:37:16
[2026-06-22 09:37:16,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:37:16,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:37:17,000.000 INFO    ] No existing commands found in stream
[2026-06-22 09:37:22,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:37:22,019.019 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-22 09:37:22,996.996 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:37:22,998.998 INFO    ] Checking for system updates...
[2026-06-22 09:37:23,031.031 INFO    ] 200
[2026-06-22 09:37:23,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:37:23,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:37:23,097.097 INFO    ] No update needed
[2026-06-22 09:37:23,100.100 INFO    ] Checking for camera pi updates...
[2026-06-22 09:37:23,138.138 INFO    ] 200
[2026-06-22 09:37:23,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:37:23,181.181 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:37:23,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:37:23,264.264 INFO    ] No camera update needed
[2026-06-22 09:37:23,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:37:23,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:37:23,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:37:23,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:37:25,321.321 INFO    ] ================================================
[2026-06-22 09:37:25,338.338 INFO    ] Launching Daemon at Mon Jun 22 09:37:25 IST 2026
[2026-06-22 09:37:25,349.349 INFO    ] ================================================
[2026-06-22 09:37:25,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:37:25
[2026-06-22 09:37:26,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:37:26,883.883 INFO    ] Initializing speech engine...
[2026-06-22 09:37:26,892.892 INFO    ] 2026-06-22 09:37:26
[2026-06-22 09:37:27,156.156 INFO    ] 2026-06-22 09:37:27
[2026-06-22 09:37:27,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:37:27,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:37:27,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:37:27,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:37:27,563.563 INFO    ] time= 22/06/2026 09:37:27
[2026-06-22 09:37:27,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:37:27,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:37:27,767.767 INFO    ] No existing commands found in stream
[2026-06-22 09:37:32,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:37:32,779.779 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-22 09:37:34,549.549 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:37:34,552.552 INFO    ] Checking for system updates...
[2026-06-22 09:37:34,592.592 INFO    ] 200
[2026-06-22 09:37:34,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:37:34,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:37:34,650.650 INFO    ] No update needed
[2026-06-22 09:37:34,652.652 INFO    ] Checking for camera pi updates...
[2026-06-22 09:37:34,690.690 INFO    ] 200
[2026-06-22 09:37:34,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:37:34,739.739 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:37:34,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:37:34,821.821 INFO    ] No camera update needed
[2026-06-22 09:37:34,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:37:34,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:37:34,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:37:34,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:37:36,877.877 INFO    ] ================================================
[2026-06-22 09:37:36,893.893 INFO    ] Launching Daemon at Mon Jun 22 09:37:36 IST 2026
[2026-06-22 09:37:36,907.907 INFO    ] ================================================
[2026-06-22 09:37:37,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:37:37
[2026-06-22 09:37:38,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:37:38,435.435 INFO    ] Initializing speech engine...
[2026-06-22 09:37:38,442.442 INFO    ] 2026-06-22 09:37:38
[2026-06-22 09:37:38,718.718 INFO    ] 2026-06-22 09:37:38
[2026-06-22 09:37:38,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:37:38,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:37:38,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:37:39,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:37:39,207.207 INFO    ] time= 22/06/2026 09:37:39
[2026-06-22 09:37:39,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:37:39,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:37:39,356.356 INFO    ] No existing commands found in stream
[2026-06-22 09:37:44,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:37:44,372.372 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-22 09:37:47,789.789 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:37:47,793.793 INFO    ] Checking for system updates...
[2026-06-22 09:37:47,833.833 INFO    ] 200
[2026-06-22 09:37:47,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:37:47,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:37:47,897.897 INFO    ] No update needed
[2026-06-22 09:37:47,900.900 INFO    ] Checking for camera pi updates...
[2026-06-22 09:37:47,935.935 INFO    ] 200
[2026-06-22 09:37:47,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:37:47,985.985 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:37:48,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:37:48,087.087 INFO    ] No camera update needed
[2026-06-22 09:37:48,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:37:48,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:37:48,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:37:48,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:37:50,144.144 INFO    ] ================================================
[2026-06-22 09:37:50,159.159 INFO    ] Launching Daemon at Mon Jun 22 09:37:50 IST 2026
[2026-06-22 09:37:50,171.171 INFO    ] ================================================
[2026-06-22 09:37:50,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:37:50
[2026-06-22 09:37:51,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:37:51,482.482 INFO    ] Initializing speech engine...
[2026-06-22 09:37:51,497.497 INFO    ] 2026-06-22 09:37:51
[2026-06-22 09:37:51,763.763 INFO    ] 2026-06-22 09:37:51
[2026-06-22 09:37:51,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:37:52,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:37:52,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:37:52,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:37:52,251.251 INFO    ] time= 22/06/2026 09:37:52
[2026-06-22 09:37:52,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:37:52,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:37:52,478.478 INFO    ] No existing commands found in stream
[2026-06-22 09:37:57,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:37:57,506.506 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-22 09:38:00,994.994 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:38:00,997.997 INFO    ] Checking for system updates...
[2026-06-22 09:38:01,039.039 INFO    ] 200
[2026-06-22 09:38:01,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:38:01,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:38:01,112.112 INFO    ] No update needed
[2026-06-22 09:38:01,115.115 INFO    ] Checking for camera pi updates...
[2026-06-22 09:38:01,150.150 INFO    ] 200
[2026-06-22 09:38:01,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:38:01,195.195 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:38:01,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:38:01,279.279 INFO    ] No camera update needed
[2026-06-22 09:38:01,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:38:01,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:38:01,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:38:01,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:38:03,341.341 INFO    ] ================================================
[2026-06-22 09:38:03,356.356 INFO    ] Launching Daemon at Mon Jun 22 09:38:03 IST 2026
[2026-06-22 09:38:03,368.368 INFO    ] ================================================
[2026-06-22 09:38:03,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:38:03
[2026-06-22 09:38:04,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:38:04,854.854 INFO    ] Initializing speech engine...
[2026-06-22 09:38:04,868.868 INFO    ] 2026-06-22 09:38:04
[2026-06-22 09:38:05,155.155 INFO    ] 2026-06-22 09:38:05
[2026-06-22 09:38:05,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:38:05,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:38:05,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:38:05,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:38:05,682.682 INFO    ] time= 22/06/2026 09:38:05
[2026-06-22 09:38:05,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:38:05,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:38:05,841.841 INFO    ] No existing commands found in stream
[2026-06-22 09:38:10,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:38:10,879.879 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-22 09:38:12,234.234 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:38:12,238.238 INFO    ] Checking for system updates...
[2026-06-22 09:38:12,275.275 INFO    ] 200
[2026-06-22 09:38:12,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:38:12,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:38:12,333.333 INFO    ] No update needed
[2026-06-22 09:38:12,335.335 INFO    ] Checking for camera pi updates...
[2026-06-22 09:38:12,373.373 INFO    ] 200
[2026-06-22 09:38:12,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:38:12,418.418 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:38:12,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:38:12,500.500 INFO    ] No camera update needed
[2026-06-22 09:38:12,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:38:12,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:38:12,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:38:12,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:38:14,557.557 INFO    ] ================================================
[2026-06-22 09:38:14,572.572 INFO    ] Launching Daemon at Mon Jun 22 09:38:14 IST 2026
[2026-06-22 09:38:14,583.583 INFO    ] ================================================
[2026-06-22 09:38:15,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:38:15
[2026-06-22 09:38:15,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:38:15,970.970 INFO    ] Initializing speech engine...
[2026-06-22 09:38:15,981.981 INFO    ] 2026-06-22 09:38:15
[2026-06-22 09:38:16,243.243 INFO    ] 2026-06-22 09:38:16
[2026-06-22 09:38:16,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:38:16,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:38:16,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:38:16,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:38:16,713.713 INFO    ] time= 22/06/2026 09:38:16
[2026-06-22 09:38:16,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:38:16,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:38:16,940.940 INFO    ] No existing commands found in stream
[2026-06-22 09:38:21,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:38:21,957.957 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-22 09:38:23,463.463 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:38:23,466.466 INFO    ] Checking for system updates...
[2026-06-22 09:38:23,503.503 INFO    ] 200
[2026-06-22 09:38:23,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:38:23,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:38:23,572.572 INFO    ] No update needed
[2026-06-22 09:38:23,575.575 INFO    ] Checking for camera pi updates...
[2026-06-22 09:38:23,614.614 INFO    ] 200
[2026-06-22 09:38:23,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:38:23,665.665 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:38:23,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:38:23,739.739 INFO    ] No camera update needed
[2026-06-22 09:38:23,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:38:23,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:38:23,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:38:23,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:38:25,799.799 INFO    ] ================================================
[2026-06-22 09:38:25,815.815 INFO    ] Launching Daemon at Mon Jun 22 09:38:25 IST 2026
[2026-06-22 09:38:25,830.830 INFO    ] ================================================
[2026-06-22 09:38:26,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:38:26
[2026-06-22 09:38:27,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:38:27,433.433 INFO    ] Initializing speech engine...
[2026-06-22 09:38:27,446.446 INFO    ] 2026-06-22 09:38:27
[2026-06-22 09:38:27,759.759 INFO    ] 2026-06-22 09:38:27
[2026-06-22 09:38:27,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:38:28,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:38:28,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:38:28,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:38:28,287.287 INFO    ] time= 22/06/2026 09:38:28
[2026-06-22 09:38:28,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:38:28,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:38:28,436.436 INFO    ] No existing commands found in stream
[2026-06-22 09:38:33,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:38:33,461.461 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-22 09:38:36,446.446 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:38:36,450.450 INFO    ] Checking for system updates...
[2026-06-22 09:38:36,487.487 INFO    ] 200
[2026-06-22 09:38:36,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:38:36,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:38:36,547.547 INFO    ] No update needed
[2026-06-22 09:38:36,550.550 INFO    ] Checking for camera pi updates...
[2026-06-22 09:38:36,586.586 INFO    ] 200
[2026-06-22 09:38:36,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:38:36,636.636 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:38:36,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:38:36,717.717 INFO    ] No camera update needed
[2026-06-22 09:38:36,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:38:36,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:38:36,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:38:36,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:38:38,777.777 INFO    ] ================================================
[2026-06-22 09:38:38,793.793 INFO    ] Launching Daemon at Mon Jun 22 09:38:38 IST 2026
[2026-06-22 09:38:38,805.805 INFO    ] ================================================
[2026-06-22 09:38:39,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:38:39
[2026-06-22 09:38:40,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:38:40,403.403 INFO    ] Initializing speech engine...
[2026-06-22 09:38:40,415.415 INFO    ] 2026-06-22 09:38:40
[2026-06-22 09:38:40,692.692 INFO    ] 2026-06-22 09:38:40
[2026-06-22 09:38:40,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:38:40,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:38:40,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:38:41,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:38:41,206.206 INFO    ] time= 22/06/2026 09:38:41
[2026-06-22 09:38:41,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:38:41,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:38:41,404.404 INFO    ] No existing commands found in stream
[2026-06-22 09:38:46,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:38:46,434.434 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-22 09:38:47,988.988 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:38:47,990.990 INFO    ] Checking for system updates...
[2026-06-22 09:38:48,012.012 INFO    ] 200
[2026-06-22 09:38:48,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:38:48,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:38:48,047.047 INFO    ] No update needed
[2026-06-22 09:38:48,049.049 INFO    ] Checking for camera pi updates...
[2026-06-22 09:38:48,070.070 INFO    ] 200
[2026-06-22 09:38:48,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:38:48,120.120 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:38:48,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:38:48,211.211 INFO    ] No camera update needed
[2026-06-22 09:38:48,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:38:48,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:38:48,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:38:48,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:38:50,267.267 INFO    ] ================================================
[2026-06-22 09:38:50,283.283 INFO    ] Launching Daemon at Mon Jun 22 09:38:50 IST 2026
[2026-06-22 09:38:50,293.293 INFO    ] ================================================
[2026-06-22 09:38:50,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:38:50
[2026-06-22 09:38:51,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:38:51,644.644 INFO    ] Initializing speech engine...
[2026-06-22 09:38:51,666.666 INFO    ] 2026-06-22 09:38:51
[2026-06-22 09:38:51,921.921 INFO    ] 2026-06-22 09:38:51
[2026-06-22 09:38:51,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:38:52,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:38:52,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:38:52,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:38:52,377.377 INFO    ] time= 22/06/2026 09:38:52
[2026-06-22 09:38:52,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:38:52,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:38:52,586.586 INFO    ] No existing commands found in stream
[2026-06-22 09:38:57,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:38:57,607.607 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-22 09:39:00,140.140 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:39:00,143.143 INFO    ] Checking for system updates...
[2026-06-22 09:39:00,179.179 INFO    ] 200
[2026-06-22 09:39:00,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:39:00,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:39:00,237.237 INFO    ] No update needed
[2026-06-22 09:39:00,240.240 INFO    ] Checking for camera pi updates...
[2026-06-22 09:39:00,273.273 INFO    ] 200
[2026-06-22 09:39:00,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:39:00,316.316 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:39:00,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:39:00,407.407 INFO    ] No camera update needed
[2026-06-22 09:39:00,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:39:00,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:39:00,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:39:00,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:39:02,473.473 INFO    ] ================================================
[2026-06-22 09:39:02,494.494 INFO    ] Launching Daemon at Mon Jun 22 09:39:02 IST 2026
[2026-06-22 09:39:02,509.509 INFO    ] ================================================
[2026-06-22 09:39:03,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:39:03
[2026-06-22 09:39:03,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:39:04,055.055 INFO    ] Initializing speech engine...
[2026-06-22 09:39:04,065.065 INFO    ] 2026-06-22 09:39:04
[2026-06-22 09:39:04,319.319 INFO    ] 2026-06-22 09:39:04
[2026-06-22 09:39:04,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:39:04,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:39:04,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:39:04,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:39:04,807.807 INFO    ] time= 22/06/2026 09:39:04
[2026-06-22 09:39:04,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:39:04,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:39:05,007.007 INFO    ] No existing commands found in stream
[2026-06-22 09:39:10,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:39:10,033.033 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-22 09:39:14,248.248 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:39:14,251.251 INFO    ] Checking for system updates...
[2026-06-22 09:39:14,287.287 INFO    ] 200
[2026-06-22 09:39:14,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:39:14,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:39:14,345.345 INFO    ] No update needed
[2026-06-22 09:39:14,348.348 INFO    ] Checking for camera pi updates...
[2026-06-22 09:39:14,381.381 INFO    ] 200
[2026-06-22 09:39:14,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:39:14,426.426 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:39:14,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:39:14,510.510 INFO    ] No camera update needed
[2026-06-22 09:39:14,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:39:14,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:39:14,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:39:14,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:39:16,566.566 INFO    ] ================================================
[2026-06-22 09:39:16,581.581 INFO    ] Launching Daemon at Mon Jun 22 09:39:16 IST 2026
[2026-06-22 09:39:16,592.592 INFO    ] ================================================
[2026-06-22 09:39:17,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:39:17
[2026-06-22 09:39:17,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:39:17,957.957 INFO    ] Initializing speech engine...
[2026-06-22 09:39:17,962.962 INFO    ] 2026-06-22 09:39:17
[2026-06-22 09:39:18,226.226 INFO    ] 2026-06-22 09:39:18
[2026-06-22 09:39:18,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:39:18,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:39:18,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:39:18,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:39:18,716.716 INFO    ] time= 22/06/2026 09:39:18
[2026-06-22 09:39:18,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:39:18,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:39:18,905.905 INFO    ] No existing commands found in stream
[2026-06-22 09:39:23,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:39:23,935.935 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-22 09:39:28,291.291 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:39:28,294.294 INFO    ] Checking for system updates...
[2026-06-22 09:39:28,329.329 INFO    ] 200
[2026-06-22 09:39:28,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:39:28,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:39:28,388.388 INFO    ] No update needed
[2026-06-22 09:39:28,390.390 INFO    ] Checking for camera pi updates...
[2026-06-22 09:39:28,424.424 INFO    ] 200
[2026-06-22 09:39:28,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:39:28,467.467 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:39:28,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:39:28,563.563 INFO    ] No camera update needed
[2026-06-22 09:39:28,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:39:28,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:39:28,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:39:28,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:39:30,620.620 INFO    ] ================================================
[2026-06-22 09:39:30,635.635 INFO    ] Launching Daemon at Mon Jun 22 09:39:30 IST 2026
[2026-06-22 09:39:30,646.646 INFO    ] ================================================
[2026-06-22 09:39:31,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:39:31
[2026-06-22 09:39:31,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:39:32,127.127 INFO    ] Initializing speech engine...
[2026-06-22 09:39:32,137.137 INFO    ] 2026-06-22 09:39:32
[2026-06-22 09:39:32,467.467 INFO    ] 2026-06-22 09:39:32
[2026-06-22 09:39:32,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:39:32,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:39:32,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:39:32,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:39:32,894.894 INFO    ] time= 22/06/2026 09:39:32
[2026-06-22 09:39:32,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:39:32,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:39:33,076.076 INFO    ] No existing commands found in stream
[2026-06-22 09:39:38,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:39:38,090.090 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-22 09:39:38,642.642 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:39:38,645.645 INFO    ] Checking for system updates...
[2026-06-22 09:39:38,690.690 INFO    ] 200
[2026-06-22 09:39:38,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:39:38,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:39:38,752.752 INFO    ] No update needed
[2026-06-22 09:39:38,755.755 INFO    ] Checking for camera pi updates...
[2026-06-22 09:39:38,794.794 INFO    ] 200
[2026-06-22 09:39:38,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:39:38,839.839 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:39:38,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:39:38,997.997 INFO    ] No camera update needed
[2026-06-22 09:39:38,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:39:39,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:39:39,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:39:39,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:39:41,053.053 INFO    ] ================================================
[2026-06-22 09:39:41,069.069 INFO    ] Launching Daemon at Mon Jun 22 09:39:41 IST 2026
[2026-06-22 09:39:41,079.079 INFO    ] ================================================
[2026-06-22 09:39:41,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:39:41
[2026-06-22 09:39:42,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:39:42,488.488 INFO    ] Initializing speech engine...
[2026-06-22 09:39:42,493.493 INFO    ] 2026-06-22 09:39:42
[2026-06-22 09:39:42,691.691 INFO    ] 2026-06-22 09:39:42
[2026-06-22 09:39:42,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:39:42,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:39:42,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:39:43,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:39:43,158.158 INFO    ] time= 22/06/2026 09:39:43
[2026-06-22 09:39:43,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:39:43,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:39:43,367.367 INFO    ] No existing commands found in stream
[2026-06-22 09:39:48,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:39:48,397.397 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-22 09:39:51,254.254 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:39:51,256.256 INFO    ] Checking for system updates...
[2026-06-22 09:39:51,276.276 INFO    ] 200
[2026-06-22 09:39:51,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:39:51,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:39:51,309.309 INFO    ] No update needed
[2026-06-22 09:39:51,310.310 INFO    ] Checking for camera pi updates...
[2026-06-22 09:39:51,330.330 INFO    ] 200
[2026-06-22 09:39:51,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:39:51,373.373 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:39:51,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:39:51,464.464 INFO    ] No camera update needed
[2026-06-22 09:39:51,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:39:51,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:39:51,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:39:51,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:39:53,519.519 INFO    ] ================================================
[2026-06-22 09:39:53,535.535 INFO    ] Launching Daemon at Mon Jun 22 09:39:53 IST 2026
[2026-06-22 09:39:53,545.545 INFO    ] ================================================
[2026-06-22 09:39:54,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:39:54
[2026-06-22 09:39:54,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:39:54,972.972 INFO    ] Initializing speech engine...
[2026-06-22 09:39:54,990.990 INFO    ] 2026-06-22 09:39:54
[2026-06-22 09:39:55,257.257 INFO    ] 2026-06-22 09:39:55
[2026-06-22 09:39:55,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:39:55,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:39:55,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:39:55,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:39:55,643.643 INFO    ] time= 22/06/2026 09:39:55
[2026-06-22 09:39:55,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:39:55,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:39:55,827.827 INFO    ] No existing commands found in stream
[2026-06-22 09:40:00,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:40:00,854.854 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-22 09:40:02,265.265 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:40:02,268.268 INFO    ] Checking for system updates...
[2026-06-22 09:40:02,327.327 INFO    ] 200
[2026-06-22 09:40:02,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:40:02,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:40:02,407.407 INFO    ] No update needed
[2026-06-22 09:40:02,411.411 INFO    ] Checking for camera pi updates...
[2026-06-22 09:40:02,470.470 INFO    ] 200
[2026-06-22 09:40:02,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:40:02,547.547 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:40:02,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:40:02,623.623 INFO    ] No camera update needed
[2026-06-22 09:40:02,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:40:02,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:40:02,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:40:02,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:40:04,692.692 INFO    ] ================================================
[2026-06-22 09:40:04,707.707 INFO    ] Launching Daemon at Mon Jun 22 09:40:04 IST 2026
[2026-06-22 09:40:04,718.718 INFO    ] ================================================
[2026-06-22 09:40:05,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:40:05
[2026-06-22 09:40:05,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:40:06,182.182 INFO    ] Initializing speech engine...
[2026-06-22 09:40:06,208.208 INFO    ] 2026-06-22 09:40:06
[2026-06-22 09:40:06,475.475 INFO    ] 2026-06-22 09:40:06
[2026-06-22 09:40:06,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:40:06,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:40:06,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:40:06,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:40:06,964.964 INFO    ] time= 22/06/2026 09:40:06
[2026-06-22 09:40:07,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:40:07,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:40:07,152.152 INFO    ] No existing commands found in stream
[2026-06-22 09:40:12,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:40:12,166.166 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-22 09:40:12,603.603 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:40:12,604.604 INFO    ] Checking for system updates...
[2026-06-22 09:40:12,630.630 INFO    ] 200
[2026-06-22 09:40:12,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:40:12,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:40:12,688.688 INFO    ] No update needed
[2026-06-22 09:40:12,690.690 INFO    ] Checking for camera pi updates...
[2026-06-22 09:40:12,729.729 INFO    ] 200
[2026-06-22 09:40:12,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:40:12,771.771 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:40:12,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:40:12,874.874 INFO    ] No camera update needed
[2026-06-22 09:40:12,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:40:12,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:40:12,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:40:12,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:40:14,937.937 INFO    ] ================================================
[2026-06-22 09:40:14,951.951 INFO    ] Launching Daemon at Mon Jun 22 09:40:14 IST 2026
[2026-06-22 09:40:14,962.962 INFO    ] ================================================
[2026-06-22 09:40:15,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:40:15
[2026-06-22 09:40:16,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:40:16,316.316 INFO    ] Initializing speech engine...
[2026-06-22 09:40:16,323.323 INFO    ] 2026-06-22 09:40:16
[2026-06-22 09:40:16,582.582 INFO    ] 2026-06-22 09:40:16
[2026-06-22 09:40:16,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:40:16,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:40:16,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:40:17,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:40:17,071.071 INFO    ] time= 22/06/2026 09:40:17
[2026-06-22 09:40:17,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:40:17,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:40:17,292.292 INFO    ] No existing commands found in stream
[2026-06-22 09:40:22,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:40:22,315.315 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-22 09:40:26,095.095 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:40:26,097.097 INFO    ] Checking for system updates...
[2026-06-22 09:40:26,134.134 INFO    ] 200
[2026-06-22 09:40:26,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:40:26,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:40:26,192.192 INFO    ] No update needed
[2026-06-22 09:40:26,194.194 INFO    ] Checking for camera pi updates...
[2026-06-22 09:40:26,228.228 INFO    ] 200
[2026-06-22 09:40:26,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:40:26,271.271 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:40:26,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:40:26,359.359 INFO    ] No camera update needed
[2026-06-22 09:40:26,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:40:26,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:40:26,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:40:26,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:40:28,416.416 INFO    ] ================================================
[2026-06-22 09:40:28,432.432 INFO    ] Launching Daemon at Mon Jun 22 09:40:28 IST 2026
[2026-06-22 09:40:28,443.443 INFO    ] ================================================
[2026-06-22 09:40:28,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:40:28
[2026-06-22 09:40:29,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:40:29,758.758 INFO    ] Initializing speech engine...
[2026-06-22 09:40:29,772.772 INFO    ] 2026-06-22 09:40:29
[2026-06-22 09:40:30,038.038 INFO    ] 2026-06-22 09:40:30
[2026-06-22 09:40:30,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:40:30,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:40:30,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:40:30,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:40:30,531.531 INFO    ] time= 22/06/2026 09:40:30
[2026-06-22 09:40:30,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:40:30,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:40:30,736.736 INFO    ] No existing commands found in stream
[2026-06-22 09:40:35,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:40:35,762.762 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-22 09:40:40,079.079 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:40:40,082.082 INFO    ] Checking for system updates...
[2026-06-22 09:40:40,118.118 INFO    ] 200
[2026-06-22 09:40:40,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:40:40,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:40:40,184.184 INFO    ] No update needed
[2026-06-22 09:40:40,187.187 INFO    ] Checking for camera pi updates...
[2026-06-22 09:40:40,220.220 INFO    ] 200
[2026-06-22 09:40:40,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:40:40,269.269 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:40:40,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:40:40,352.352 INFO    ] No camera update needed
[2026-06-22 09:40:40,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:40:40,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:40:40,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:40:40,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:40:42,409.409 INFO    ] ================================================
[2026-06-22 09:40:42,425.425 INFO    ] Launching Daemon at Mon Jun 22 09:40:42 IST 2026
[2026-06-22 09:40:42,435.435 INFO    ] ================================================
[2026-06-22 09:40:43,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:40:43
[2026-06-22 09:40:43,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:40:43,935.935 INFO    ] Initializing speech engine...
[2026-06-22 09:40:43,945.945 INFO    ] 2026-06-22 09:40:43
[2026-06-22 09:40:44,201.201 INFO    ] 2026-06-22 09:40:44
[2026-06-22 09:40:44,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:40:44,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:40:44,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:40:44,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:40:44,584.584 INFO    ] time= 22/06/2026 09:40:44
[2026-06-22 09:40:44,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:40:44,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:40:44,781.781 INFO    ] No existing commands found in stream
[2026-06-22 09:40:49,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:40:49,797.797 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-22 09:40:52,315.315 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:40:52,318.318 INFO    ] Checking for system updates...
[2026-06-22 09:40:52,354.354 INFO    ] 200
[2026-06-22 09:40:52,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:40:52,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:40:52,412.412 INFO    ] No update needed
[2026-06-22 09:40:52,414.414 INFO    ] Checking for camera pi updates...
[2026-06-22 09:40:52,448.448 INFO    ] 200
[2026-06-22 09:40:52,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:40:52,496.496 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:40:52,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:40:52,578.578 INFO    ] No camera update needed
[2026-06-22 09:40:52,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:40:52,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:40:52,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:40:52,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:40:54,638.638 INFO    ] ================================================
[2026-06-22 09:40:54,655.655 INFO    ] Launching Daemon at Mon Jun 22 09:40:54 IST 2026
[2026-06-22 09:40:54,666.666 INFO    ] ================================================
[2026-06-22 09:40:55,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:40:55
[2026-06-22 09:40:55,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:40:56,139.139 INFO    ] Initializing speech engine...
[2026-06-22 09:40:56,148.148 INFO    ] 2026-06-22 09:40:56
[2026-06-22 09:40:56,413.413 INFO    ] 2026-06-22 09:40:56
[2026-06-22 09:40:56,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:40:56,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:40:56,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:40:56,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:40:56,945.945 INFO    ] time= 22/06/2026 09:40:56
[2026-06-22 09:40:56,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:40:56,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:40:57,116.116 INFO    ] No existing commands found in stream
[2026-06-22 09:41:02,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:41:02,138.138 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-22 09:41:04,919.919 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:41:04,922.922 INFO    ] Checking for system updates...
[2026-06-22 09:41:04,959.959 INFO    ] 200
[2026-06-22 09:41:04,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:41:05,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:41:05,027.027 INFO    ] No update needed
[2026-06-22 09:41:05,030.030 INFO    ] Checking for camera pi updates...
[2026-06-22 09:41:05,065.065 INFO    ] 200
[2026-06-22 09:41:05,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:41:05,109.109 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:41:05,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:41:05,198.198 INFO    ] No camera update needed
[2026-06-22 09:41:05,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:41:05,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:41:05,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:41:05,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:41:07,258.258 INFO    ] ================================================
[2026-06-22 09:41:07,274.274 INFO    ] Launching Daemon at Mon Jun 22 09:41:07 IST 2026
[2026-06-22 09:41:07,284.284 INFO    ] ================================================
[2026-06-22 09:41:07,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:41:07
[2026-06-22 09:41:08,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:41:08,729.729 INFO    ] Initializing speech engine...
[2026-06-22 09:41:08,735.735 INFO    ] 2026-06-22 09:41:08
[2026-06-22 09:41:09,017.017 INFO    ] 2026-06-22 09:41:09
[2026-06-22 09:41:09,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:41:09,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:41:09,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:41:09,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:41:09,502.502 INFO    ] time= 22/06/2026 09:41:09
[2026-06-22 09:41:09,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:41:09,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:41:09,627.627 INFO    ] No existing commands found in stream
[2026-06-22 09:41:14,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:41:14,651.651 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-22 09:41:16,397.397 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:41:16,399.399 INFO    ] Checking for system updates...
[2026-06-22 09:41:16,421.421 INFO    ] 200
[2026-06-22 09:41:16,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:41:16,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:41:16,453.453 INFO    ] No update needed
[2026-06-22 09:41:16,455.455 INFO    ] Checking for camera pi updates...
[2026-06-22 09:41:16,475.475 INFO    ] 200
[2026-06-22 09:41:16,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:41:16,511.511 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:41:16,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:41:16,576.576 INFO    ] No camera update needed
[2026-06-22 09:41:16,578.578 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:41:16,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:41:16,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:41:16,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:41:18,641.641 INFO    ] ================================================
[2026-06-22 09:41:18,657.657 INFO    ] Launching Daemon at Mon Jun 22 09:41:18 IST 2026
[2026-06-22 09:41:18,667.667 INFO    ] ================================================
[2026-06-22 09:41:19,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:41:19
[2026-06-22 09:41:19,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:41:20,092.092 INFO    ] Initializing speech engine...
[2026-06-22 09:41:20,116.116 INFO    ] 2026-06-22 09:41:20
[2026-06-22 09:41:20,396.396 INFO    ] 2026-06-22 09:41:20
[2026-06-22 09:41:20,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:41:20,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:41:20,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:41:20,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:41:20,770.770 INFO    ] time= 22/06/2026 09:41:20
[2026-06-22 09:41:20,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:41:20,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:41:20,950.950 INFO    ] No existing commands found in stream
[2026-06-22 09:41:25,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:41:25,978.978 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-22 09:41:29,090.090 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:41:29,092.092 INFO    ] Checking for system updates...
[2026-06-22 09:41:29,129.129 INFO    ] 200
[2026-06-22 09:41:29,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:41:29,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:41:29,206.206 INFO    ] No update needed
[2026-06-22 09:41:29,209.209 INFO    ] Checking for camera pi updates...
[2026-06-22 09:41:29,252.252 INFO    ] 200
[2026-06-22 09:41:29,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:41:29,301.301 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:41:29,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:41:29,400.400 INFO    ] No camera update needed
[2026-06-22 09:41:29,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:41:29,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:41:29,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:41:29,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:41:31,460.460 INFO    ] ================================================
[2026-06-22 09:41:31,476.476 INFO    ] Launching Daemon at Mon Jun 22 09:41:31 IST 2026
[2026-06-22 09:41:31,487.487 INFO    ] ================================================
[2026-06-22 09:41:32,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:41:32
[2026-06-22 09:41:32,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:41:33,160.160 INFO    ] Initializing speech engine...
[2026-06-22 09:41:33,169.169 INFO    ] 2026-06-22 09:41:33
[2026-06-22 09:41:33,419.419 INFO    ] 2026-06-22 09:41:33
[2026-06-22 09:41:33,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:41:33,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:41:33,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:41:33,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:41:33,797.797 INFO    ] time= 22/06/2026 09:41:33
[2026-06-22 09:41:33,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:41:33,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:41:33,980.980 INFO    ] No existing commands found in stream
[2026-06-22 09:41:39,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:41:39,007.007 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-22 09:41:40,431.431 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:41:40,434.434 INFO    ] Checking for system updates...
[2026-06-22 09:41:40,471.471 INFO    ] 200
[2026-06-22 09:41:40,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:41:40,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:41:40,532.532 INFO    ] No update needed
[2026-06-22 09:41:40,535.535 INFO    ] Checking for camera pi updates...
[2026-06-22 09:41:40,568.568 INFO    ] 200
[2026-06-22 09:41:40,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:41:40,616.616 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:41:40,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:41:40,695.695 INFO    ] No camera update needed
[2026-06-22 09:41:40,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:41:40,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:41:40,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:41:40,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:41:42,756.756 INFO    ] ================================================
[2026-06-22 09:41:42,771.771 INFO    ] Launching Daemon at Mon Jun 22 09:41:42 IST 2026
[2026-06-22 09:41:42,782.782 INFO    ] ================================================
[2026-06-22 09:41:43,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:41:43
[2026-06-22 09:41:43,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:41:44,105.105 INFO    ] Initializing speech engine...
[2026-06-22 09:41:44,114.114 INFO    ] 2026-06-22 09:41:44
[2026-06-22 09:41:44,405.405 INFO    ] 2026-06-22 09:41:44
[2026-06-22 09:41:44,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:41:44,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:41:44,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:41:44,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:41:44,822.822 INFO    ] time= 22/06/2026 09:41:44
[2026-06-22 09:41:44,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:41:44,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:41:44,997.997 INFO    ] No existing commands found in stream
[2026-06-22 09:41:50,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:41:50,025.025 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-22 09:41:51,488.488 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:41:51,490.490 INFO    ] Checking for system updates...
[2026-06-22 09:41:51,528.528 INFO    ] 200
[2026-06-22 09:41:51,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:41:51,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:41:51,603.603 INFO    ] No update needed
[2026-06-22 09:41:51,606.606 INFO    ] Checking for camera pi updates...
[2026-06-22 09:41:51,643.643 INFO    ] 200
[2026-06-22 09:41:51,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:41:51,697.697 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:41:51,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:41:51,878.878 INFO    ] No camera update needed
[2026-06-22 09:41:51,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:41:51,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:41:51,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:41:51,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:41:53,941.941 INFO    ] ================================================
[2026-06-22 09:41:53,957.957 INFO    ] Launching Daemon at Mon Jun 22 09:41:53 IST 2026
[2026-06-22 09:41:53,968.968 INFO    ] ================================================
[2026-06-22 09:41:54,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:41:54
[2026-06-22 09:41:55,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:41:55,373.373 INFO    ] Initializing speech engine...
[2026-06-22 09:41:55,381.381 INFO    ] 2026-06-22 09:41:55
[2026-06-22 09:41:55,595.595 INFO    ] 2026-06-22 09:41:55
[2026-06-22 09:41:55,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:41:55,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:41:55,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:41:56,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:41:56,089.089 INFO    ] time= 22/06/2026 09:41:56
[2026-06-22 09:41:56,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:41:56,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:41:56,312.312 INFO    ] No existing commands found in stream
[2026-06-22 09:42:01,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:42:01,327.327 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-22 09:42:04,756.756 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:42:04,760.760 INFO    ] Checking for system updates...
[2026-06-22 09:42:04,803.803 INFO    ] 200
[2026-06-22 09:42:04,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:42:04,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:42:04,868.868 INFO    ] No update needed
[2026-06-22 09:42:04,872.872 INFO    ] Checking for camera pi updates...
[2026-06-22 09:42:04,907.907 INFO    ] 200
[2026-06-22 09:42:04,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:42:04,957.957 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:42:05,040.040 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:42:05,042.042 INFO    ] No camera update needed
[2026-06-22 09:42:05,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:42:05,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:42:05,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:42:05,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:42:07,099.099 INFO    ] ================================================
[2026-06-22 09:42:07,115.115 INFO    ] Launching Daemon at Mon Jun 22 09:42:07 IST 2026
[2026-06-22 09:42:07,126.126 INFO    ] ================================================
[2026-06-22 09:42:07,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:42:07
[2026-06-22 09:42:08,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:42:08,687.687 INFO    ] Initializing speech engine...
[2026-06-22 09:42:08,692.692 INFO    ] 2026-06-22 09:42:08
[2026-06-22 09:42:08,959.959 INFO    ] 2026-06-22 09:42:08
[2026-06-22 09:42:09,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:42:09,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:42:09,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:42:09,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:42:09,454.454 INFO    ] time= 22/06/2026 09:42:09
[2026-06-22 09:42:09,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:42:09,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:42:09,604.604 INFO    ] No existing commands found in stream
[2026-06-22 09:42:14,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:42:14,639.639 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-22 09:42:18,827.827 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:42:18,830.830 INFO    ] Checking for system updates...
[2026-06-22 09:42:18,868.868 INFO    ] 200
[2026-06-22 09:42:18,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:42:18,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:42:18,941.941 INFO    ] No update needed
[2026-06-22 09:42:18,942.942 INFO    ] Checking for camera pi updates...
[2026-06-22 09:42:18,962.962 INFO    ] 200
[2026-06-22 09:42:18,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:42:18,987.987 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:42:19,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:42:19,071.071 INFO    ] No camera update needed
[2026-06-22 09:42:19,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:42:19,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:42:19,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:42:19,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:42:21,133.133 INFO    ] ================================================
[2026-06-22 09:42:21,149.149 INFO    ] Launching Daemon at Mon Jun 22 09:42:21 IST 2026
[2026-06-22 09:42:21,160.160 INFO    ] ================================================
[2026-06-22 09:42:21,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:42:21
[2026-06-22 09:42:22,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:42:22,539.539 INFO    ] Initializing speech engine...
[2026-06-22 09:42:22,561.561 INFO    ] 2026-06-22 09:42:22
[2026-06-22 09:42:22,855.855 INFO    ] 2026-06-22 09:42:22
[2026-06-22 09:42:22,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:42:23,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:42:23,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:42:23,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:42:23,248.248 INFO    ] time= 22/06/2026 09:42:23
[2026-06-22 09:42:23,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:42:23,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:42:23,374.374 INFO    ] No existing commands found in stream
[2026-06-22 09:42:28,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:42:28,389.389 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-22 09:42:31,371.371 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:42:31,374.374 INFO    ] Checking for system updates...
[2026-06-22 09:42:31,414.414 INFO    ] 200
[2026-06-22 09:42:31,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:42:31,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:42:31,471.471 INFO    ] No update needed
[2026-06-22 09:42:31,474.474 INFO    ] Checking for camera pi updates...
[2026-06-22 09:42:31,508.508 INFO    ] 200
[2026-06-22 09:42:31,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:42:31,551.551 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:42:31,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:42:31,615.615 INFO    ] No camera update needed
[2026-06-22 09:42:31,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:42:31,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:42:31,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:42:31,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:42:33,673.673 INFO    ] ================================================
[2026-06-22 09:42:33,689.689 INFO    ] Launching Daemon at Mon Jun 22 09:42:33 IST 2026
[2026-06-22 09:42:33,700.700 INFO    ] ================================================
[2026-06-22 09:42:34,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:42:34
[2026-06-22 09:42:34,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:42:35,192.192 INFO    ] Initializing speech engine...
[2026-06-22 09:42:35,208.208 INFO    ] 2026-06-22 09:42:35
[2026-06-22 09:42:35,497.497 INFO    ] 2026-06-22 09:42:35
[2026-06-22 09:42:35,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:42:35,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:42:35,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:42:35,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:42:35,926.926 INFO    ] time= 22/06/2026 09:42:35
[2026-06-22 09:42:35,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:42:35,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:42:36,015.015 INFO    ] No existing commands found in stream
[2026-06-22 09:42:41,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:42:41,029.029 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-22 09:42:41,611.611 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:42:41,613.613 INFO    ] Checking for system updates...
[2026-06-22 09:42:41,650.650 INFO    ] 200
[2026-06-22 09:42:41,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:42:41,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:42:41,710.710 INFO    ] No update needed
[2026-06-22 09:42:41,713.713 INFO    ] Checking for camera pi updates...
[2026-06-22 09:42:41,751.751 INFO    ] 200
[2026-06-22 09:42:41,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:42:41,801.801 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:42:41,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:42:41,859.859 INFO    ] No camera update needed
[2026-06-22 09:42:41,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:42:41,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:42:41,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:42:41,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:42:43,919.919 INFO    ] ================================================
[2026-06-22 09:42:43,936.936 INFO    ] Launching Daemon at Mon Jun 22 09:42:43 IST 2026
[2026-06-22 09:42:43,947.947 INFO    ] ================================================
[2026-06-22 09:42:44,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:42:44
[2026-06-22 09:42:45,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:42:45,369.369 INFO    ] Initializing speech engine...
[2026-06-22 09:42:45,377.377 INFO    ] 2026-06-22 09:42:45
[2026-06-22 09:42:45,679.679 INFO    ] 2026-06-22 09:42:45
[2026-06-22 09:42:45,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:42:45,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:42:45,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:42:46,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:42:46,083.083 INFO    ] time= 22/06/2026 09:42:46
[2026-06-22 09:42:46,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:42:46,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:42:46,191.191 INFO    ] No existing commands found in stream
[2026-06-22 09:42:51,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:42:51,207.207 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-22 09:42:54,384.384 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:42:54,385.385 INFO    ] Checking for system updates...
[2026-06-22 09:42:54,406.406 INFO    ] 200
[2026-06-22 09:42:54,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:42:54,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:42:54,438.438 INFO    ] No update needed
[2026-06-22 09:42:54,440.440 INFO    ] Checking for camera pi updates...
[2026-06-22 09:42:54,469.469 INFO    ] 200
[2026-06-22 09:42:54,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:42:54,512.512 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:42:54,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:42:54,597.597 INFO    ] No camera update needed
[2026-06-22 09:42:54,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:42:54,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:42:54,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:42:54,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:42:56,652.652 INFO    ] ================================================
[2026-06-22 09:42:56,668.668 INFO    ] Launching Daemon at Mon Jun 22 09:42:56 IST 2026
[2026-06-22 09:42:56,679.679 INFO    ] ================================================
[2026-06-22 09:42:57,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:42:57
[2026-06-22 09:42:57,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:42:58,142.142 INFO    ] Initializing speech engine...
[2026-06-22 09:42:58,150.150 INFO    ] 2026-06-22 09:42:58
[2026-06-22 09:42:58,411.411 INFO    ] 2026-06-22 09:42:58
[2026-06-22 09:42:58,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:42:58,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:42:58,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:42:58,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:42:58,891.891 INFO    ] time= 22/06/2026 09:42:58
[2026-06-22 09:42:58,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:42:58,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:42:59,076.076 INFO    ] No existing commands found in stream
[2026-06-22 09:43:04,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:43:04,116.116 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-22 09:43:07,296.296 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:43:07,299.299 INFO    ] Checking for system updates...
[2026-06-22 09:43:07,335.335 INFO    ] 200
[2026-06-22 09:43:07,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:43:07,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:43:07,394.394 INFO    ] No update needed
[2026-06-22 09:43:07,397.397 INFO    ] Checking for camera pi updates...
[2026-06-22 09:43:07,430.430 INFO    ] 200
[2026-06-22 09:43:07,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:43:07,473.473 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:43:07,554.554 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:43:07,557.557 INFO    ] No camera update needed
[2026-06-22 09:43:07,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:43:07,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:43:07,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:43:07,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:43:09,613.613 INFO    ] ================================================
[2026-06-22 09:43:09,628.628 INFO    ] Launching Daemon at Mon Jun 22 09:43:09 IST 2026
[2026-06-22 09:43:09,638.638 INFO    ] ================================================
[2026-06-22 09:43:10,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:43:10
[2026-06-22 09:43:10,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:43:10,957.957 INFO    ] Initializing speech engine...
[2026-06-22 09:43:10,970.970 INFO    ] 2026-06-22 09:43:10
[2026-06-22 09:43:11,235.235 INFO    ] 2026-06-22 09:43:11
[2026-06-22 09:43:11,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:43:11,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:43:11,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:43:11,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:43:11,720.720 INFO    ] time= 22/06/2026 09:43:11
[2026-06-22 09:43:11,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:43:11,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:43:11,936.936 INFO    ] No existing commands found in stream
[2026-06-22 09:43:16,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:43:16,965.965 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-22 09:43:18,753.753 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:43:18,754.754 INFO    ] Checking for system updates...
[2026-06-22 09:43:18,778.778 INFO    ] 200
[2026-06-22 09:43:18,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:43:18,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:43:18,836.836 INFO    ] No update needed
[2026-06-22 09:43:18,838.838 INFO    ] Checking for camera pi updates...
[2026-06-22 09:43:18,872.872 INFO    ] 200
[2026-06-22 09:43:18,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:43:18,919.919 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:43:19,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:43:19,003.003 INFO    ] No camera update needed
[2026-06-22 09:43:19,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:43:19,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:43:19,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:43:19,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:43:21,059.059 INFO    ] ================================================
[2026-06-22 09:43:21,074.074 INFO    ] Launching Daemon at Mon Jun 22 09:43:21 IST 2026
[2026-06-22 09:43:21,084.084 INFO    ] ================================================
[2026-06-22 09:43:21,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:43:21
[2026-06-22 09:43:22,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:43:22,395.395 INFO    ] Initializing speech engine...
[2026-06-22 09:43:22,419.419 INFO    ] 2026-06-22 09:43:22
[2026-06-22 09:43:22,671.671 INFO    ] 2026-06-22 09:43:22
[2026-06-22 09:43:22,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:43:22,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:43:22,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:43:23,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:43:23,147.147 INFO    ] time= 22/06/2026 09:43:23
[2026-06-22 09:43:23,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:43:23,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:43:23,367.367 INFO    ] No existing commands found in stream
[2026-06-22 09:43:28,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:43:28,395.395 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-22 09:43:30,360.360 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:43:30,363.363 INFO    ] Checking for system updates...
[2026-06-22 09:43:30,398.398 INFO    ] 200
[2026-06-22 09:43:30,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:43:30,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:43:30,462.462 INFO    ] No update needed
[2026-06-22 09:43:30,464.464 INFO    ] Checking for camera pi updates...
[2026-06-22 09:43:30,499.499 INFO    ] 200
[2026-06-22 09:43:30,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:43:30,542.542 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:43:30,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:43:30,629.629 INFO    ] No camera update needed
[2026-06-22 09:43:30,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:43:30,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:43:30,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:43:30,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:43:32,692.692 INFO    ] ================================================
[2026-06-22 09:43:32,709.709 INFO    ] Launching Daemon at Mon Jun 22 09:43:32 IST 2026
[2026-06-22 09:43:32,721.721 INFO    ] ================================================
[2026-06-22 09:43:33,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:43:33
[2026-06-22 09:43:33,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:43:34,152.152 INFO    ] Initializing speech engine...
[2026-06-22 09:43:34,172.172 INFO    ] 2026-06-22 09:43:34
[2026-06-22 09:43:34,447.447 INFO    ] 2026-06-22 09:43:34
[2026-06-22 09:43:34,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:43:34,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:43:34,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:43:34,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:43:34,863.863 INFO    ] time= 22/06/2026 09:43:34
[2026-06-22 09:43:34,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:43:34,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:43:34,946.946 INFO    ] No existing commands found in stream
[2026-06-22 09:43:39,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:43:39,962.962 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-22 09:43:40,800.800 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:43:40,803.803 INFO    ] Checking for system updates...
[2026-06-22 09:43:40,842.842 INFO    ] 200
[2026-06-22 09:43:40,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:43:40,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:43:40,899.899 INFO    ] No update needed
[2026-06-22 09:43:40,902.902 INFO    ] Checking for camera pi updates...
[2026-06-22 09:43:40,939.939 INFO    ] 200
[2026-06-22 09:43:40,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:43:40,983.983 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:43:41,064.064 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:43:41,067.067 INFO    ] No camera update needed
[2026-06-22 09:43:41,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:43:41,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:43:41,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:43:41,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:43:43,121.121 INFO    ] ================================================
[2026-06-22 09:43:43,137.137 INFO    ] Launching Daemon at Mon Jun 22 09:43:43 IST 2026
[2026-06-22 09:43:43,147.147 INFO    ] ================================================
[2026-06-22 09:43:43,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:43:43
[2026-06-22 09:43:44,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:43:44,533.533 INFO    ] Initializing speech engine...
[2026-06-22 09:43:44,545.545 INFO    ] 2026-06-22 09:43:44
[2026-06-22 09:43:44,794.794 INFO    ] 2026-06-22 09:43:44
[2026-06-22 09:43:44,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:43:45,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:43:45,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:43:45,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:43:45,163.163 INFO    ] time= 22/06/2026 09:43:45
[2026-06-22 09:43:45,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:43:45,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:43:45,360.360 INFO    ] No existing commands found in stream
[2026-06-22 09:43:50,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:43:50,369.369 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-22 09:43:54,638.638 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:43:54,640.640 INFO    ] Checking for system updates...
[2026-06-22 09:43:54,660.660 INFO    ] 200
[2026-06-22 09:43:54,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:43:54,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:43:54,695.695 INFO    ] No update needed
[2026-06-22 09:43:54,697.697 INFO    ] Checking for camera pi updates...
[2026-06-22 09:43:54,735.735 INFO    ] 200
[2026-06-22 09:43:54,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:43:54,779.779 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:43:54,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:43:54,963.963 INFO    ] No camera update needed
[2026-06-22 09:43:54,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:43:54,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:43:54,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:43:54,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:43:57,020.020 INFO    ] ================================================
[2026-06-22 09:43:57,035.035 INFO    ] Launching Daemon at Mon Jun 22 09:43:57 IST 2026
[2026-06-22 09:43:57,046.046 INFO    ] ================================================
[2026-06-22 09:43:57,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:43:57
[2026-06-22 09:43:58,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:43:58,544.544 INFO    ] Initializing speech engine...
[2026-06-22 09:43:58,557.557 INFO    ] 2026-06-22 09:43:58
[2026-06-22 09:43:58,837.837 INFO    ] 2026-06-22 09:43:58
[2026-06-22 09:43:58,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:43:59,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:43:59,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:43:59,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:43:59,320.320 INFO    ] time= 22/06/2026 09:43:59
[2026-06-22 09:43:59,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:43:59,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:43:59,534.534 INFO    ] No existing commands found in stream
[2026-06-22 09:44:04,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:44:04,557.557 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-22 09:44:05,584.584 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:44:05,587.587 INFO    ] Checking for system updates...
[2026-06-22 09:44:05,631.631 INFO    ] 200
[2026-06-22 09:44:05,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:44:05,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:44:05,702.702 INFO    ] No update needed
[2026-06-22 09:44:05,705.705 INFO    ] Checking for camera pi updates...
[2026-06-22 09:44:05,744.744 INFO    ] 200
[2026-06-22 09:44:05,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:44:05,791.791 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:44:05,893.893 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:44:05,895.895 INFO    ] No camera update needed
[2026-06-22 09:44:05,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:44:05,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:44:05,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:44:05,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:44:07,953.953 INFO    ] ================================================
[2026-06-22 09:44:07,968.968 INFO    ] Launching Daemon at Mon Jun 22 09:44:07 IST 2026
[2026-06-22 09:44:07,979.979 INFO    ] ================================================
[2026-06-22 09:44:08,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:44:08
[2026-06-22 09:44:09,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:44:09,552.552 INFO    ] Initializing speech engine...
[2026-06-22 09:44:09,563.563 INFO    ] 2026-06-22 09:44:09
[2026-06-22 09:44:09,843.843 INFO    ] 2026-06-22 09:44:09
[2026-06-22 09:44:09,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:44:10,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:44:10,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:44:10,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:44:10,234.234 INFO    ] time= 22/06/2026 09:44:10
[2026-06-22 09:44:10,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:44:10,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:44:10,314.314 INFO    ] No existing commands found in stream
[2026-06-22 09:44:15,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:44:15,337.337 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-22 09:44:16,221.221 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:44:16,224.224 INFO    ] Checking for system updates...
[2026-06-22 09:44:16,262.262 INFO    ] 200
[2026-06-22 09:44:16,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:44:16,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:44:16,323.323 INFO    ] No update needed
[2026-06-22 09:44:16,325.325 INFO    ] Checking for camera pi updates...
[2026-06-22 09:44:16,359.359 INFO    ] 200
[2026-06-22 09:44:16,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:44:16,406.406 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:44:16,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:44:16,489.489 INFO    ] No camera update needed
[2026-06-22 09:44:16,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:44:16,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:44:16,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:44:16,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:44:18,545.545 INFO    ] ================================================
[2026-06-22 09:44:18,560.560 INFO    ] Launching Daemon at Mon Jun 22 09:44:18 IST 2026
[2026-06-22 09:44:18,571.571 INFO    ] ================================================
[2026-06-22 09:44:19,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:44:19
[2026-06-22 09:44:19,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:44:20,022.022 INFO    ] Initializing speech engine...
[2026-06-22 09:44:20,029.029 INFO    ] 2026-06-22 09:44:20
[2026-06-22 09:44:20,285.285 INFO    ] 2026-06-22 09:44:20
[2026-06-22 09:44:20,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:44:20,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:44:20,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:44:20,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:44:20,738.738 INFO    ] time= 22/06/2026 09:44:20
[2026-06-22 09:44:20,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:44:20,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:44:20,962.962 INFO    ] No existing commands found in stream
[2026-06-22 09:44:25,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:44:25,992.992 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-22 09:44:26,565.565 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:44:26,567.567 INFO    ] Checking for system updates...
[2026-06-22 09:44:26,607.607 INFO    ] 200
[2026-06-22 09:44:26,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:44:26,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:44:26,665.665 INFO    ] No update needed
[2026-06-22 09:44:26,667.667 INFO    ] Checking for camera pi updates...
[2026-06-22 09:44:26,706.706 INFO    ] 200
[2026-06-22 09:44:26,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:44:26,750.750 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:44:26,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:44:26,825.825 INFO    ] No camera update needed
[2026-06-22 09:44:26,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:44:26,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:44:26,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:44:26,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:44:28,886.886 INFO    ] ================================================
[2026-06-22 09:44:28,902.902 INFO    ] Launching Daemon at Mon Jun 22 09:44:28 IST 2026
[2026-06-22 09:44:28,913.913 INFO    ] ================================================
[2026-06-22 09:44:29,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:44:29
[2026-06-22 09:44:29,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:44:30,250.250 INFO    ] Initializing speech engine...
[2026-06-22 09:44:30,260.260 INFO    ] 2026-06-22 09:44:30
[2026-06-22 09:44:30,512.512 INFO    ] 2026-06-22 09:44:30
[2026-06-22 09:44:30,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:44:30,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:44:30,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:44:30,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:44:30,892.892 INFO    ] time= 22/06/2026 09:44:30
[2026-06-22 09:44:30,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:44:30,939.939 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:44:31,056.056 INFO    ] No existing commands found in stream
[2026-06-22 09:44:36,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:44:36,088.088 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-22 09:44:37,164.164 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:44:37,165.165 INFO    ] Checking for system updates...
[2026-06-22 09:44:37,199.199 INFO    ] 200
[2026-06-22 09:44:37,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:44:37,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:44:37,261.261 INFO    ] No update needed
[2026-06-22 09:44:37,264.264 INFO    ] Checking for camera pi updates...
[2026-06-22 09:44:37,298.298 INFO    ] 200
[2026-06-22 09:44:37,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:44:37,342.342 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:44:37,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:44:37,429.429 INFO    ] No camera update needed
[2026-06-22 09:44:37,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:44:37,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:44:37,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:44:37,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:44:39,485.485 INFO    ] ================================================
[2026-06-22 09:44:39,500.500 INFO    ] Launching Daemon at Mon Jun 22 09:44:39 IST 2026
[2026-06-22 09:44:39,511.511 INFO    ] ================================================
[2026-06-22 09:44:40,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:44:40
[2026-06-22 09:44:40,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:44:40,853.853 INFO    ] Initializing speech engine...
[2026-06-22 09:44:40,862.862 INFO    ] 2026-06-22 09:44:40
[2026-06-22 09:44:41,109.109 INFO    ] 2026-06-22 09:44:41
[2026-06-22 09:44:41,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:44:41,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:44:41,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:44:41,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:44:41,562.562 INFO    ] time= 22/06/2026 09:44:41
[2026-06-22 09:44:41,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:44:41,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:44:41,792.792 INFO    ] No existing commands found in stream
[2026-06-22 09:44:46,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:44:46,822.822 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-22 09:44:49,039.039 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:44:49,042.042 INFO    ] Checking for system updates...
[2026-06-22 09:44:49,079.079 INFO    ] 200
[2026-06-22 09:44:49,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:44:49,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:44:49,139.139 INFO    ] No update needed
[2026-06-22 09:44:49,142.142 INFO    ] Checking for camera pi updates...
[2026-06-22 09:44:49,177.177 INFO    ] 200
[2026-06-22 09:44:49,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:44:49,221.221 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:44:49,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:44:49,306.306 INFO    ] No camera update needed
[2026-06-22 09:44:49,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:44:49,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:44:49,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:44:49,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:44:51,366.366 INFO    ] ================================================
[2026-06-22 09:44:51,382.382 INFO    ] Launching Daemon at Mon Jun 22 09:44:51 IST 2026
[2026-06-22 09:44:51,393.393 INFO    ] ================================================
[2026-06-22 09:44:52,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:44:52
[2026-06-22 09:44:52,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:44:52,976.976 INFO    ] Initializing speech engine...
[2026-06-22 09:44:52,983.983 INFO    ] 2026-06-22 09:44:52
[2026-06-22 09:44:53,254.254 INFO    ] 2026-06-22 09:44:53
[2026-06-22 09:44:53,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:44:53,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:44:53,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:44:53,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:44:53,733.733 INFO    ] time= 22/06/2026 09:44:53
[2026-06-22 09:44:53,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:44:53,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:44:53,991.991 INFO    ] No existing commands found in stream
[2026-06-22 09:44:59,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:44:59,016.016 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-22 09:45:02,234.234 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:45:02,254.254 INFO    ] Checking for system updates...
[2026-06-22 09:45:02,329.329 INFO    ] 200
[2026-06-22 09:45:02,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:45:02,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:45:02,507.507 INFO    ] No update needed
[2026-06-22 09:45:02,511.511 INFO    ] Checking for camera pi updates...
[2026-06-22 09:45:02,559.559 INFO    ] 200
[2026-06-22 09:45:02,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:45:02,616.616 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:45:02,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:45:02,672.672 INFO    ] No camera update needed
[2026-06-22 09:45:02,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:45:02,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:45:02,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:45:02,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:45:04,736.736 INFO    ] ================================================
[2026-06-22 09:45:04,752.752 INFO    ] Launching Daemon at Mon Jun 22 09:45:04 IST 2026
[2026-06-22 09:45:04,764.764 INFO    ] ================================================
[2026-06-22 09:45:05,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:45:05
[2026-06-22 09:45:05,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:45:06,193.193 INFO    ] Initializing speech engine...
[2026-06-22 09:45:06,203.203 INFO    ] 2026-06-22 09:45:06
[2026-06-22 09:45:06,454.454 INFO    ] 2026-06-22 09:45:06
[2026-06-22 09:45:06,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:45:06,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:45:06,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:45:06,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:45:06,946.946 INFO    ] time= 22/06/2026 09:45:06
[2026-06-22 09:45:06,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:45:06,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:45:07,097.097 INFO    ] No existing commands found in stream
[2026-06-22 09:45:12,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:45:12,115.115 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-22 09:45:14,391.391 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:45:14,394.394 INFO    ] Checking for system updates...
[2026-06-22 09:45:14,430.430 INFO    ] 200
[2026-06-22 09:45:14,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:45:14,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:45:14,489.489 INFO    ] No update needed
[2026-06-22 09:45:14,491.491 INFO    ] Checking for camera pi updates...
[2026-06-22 09:45:14,525.525 INFO    ] 200
[2026-06-22 09:45:14,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:45:14,568.568 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:45:14,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:45:14,660.660 INFO    ] No camera update needed
[2026-06-22 09:45:14,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:45:14,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:45:14,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:45:14,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:45:16,720.720 INFO    ] ================================================
[2026-06-22 09:45:16,735.735 INFO    ] Launching Daemon at Mon Jun 22 09:45:16 IST 2026
[2026-06-22 09:45:16,746.746 INFO    ] ================================================
[2026-06-22 09:45:17,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:45:17
[2026-06-22 09:45:17,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:45:18,112.112 INFO    ] Initializing speech engine...
[2026-06-22 09:45:18,121.121 INFO    ] 2026-06-22 09:45:18
[2026-06-22 09:45:18,415.415 INFO    ] 2026-06-22 09:45:18
[2026-06-22 09:45:18,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:45:18,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:45:18,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:45:18,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:45:18,791.791 INFO    ] time= 22/06/2026 09:45:18
[2026-06-22 09:45:18,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:45:18,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:45:18,915.915 INFO    ] No existing commands found in stream
[2026-06-22 09:45:23,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:45:23,931.931 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-22 09:45:25,590.590 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:45:25,592.592 INFO    ] Checking for system updates...
[2026-06-22 09:45:25,621.621 INFO    ] 200
[2026-06-22 09:45:25,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:45:25,677.677 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:45:25,679.679 INFO    ] No update needed
[2026-06-22 09:45:25,681.681 INFO    ] Checking for camera pi updates...
[2026-06-22 09:45:25,715.715 INFO    ] 200
[2026-06-22 09:45:25,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:45:25,765.765 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:45:25,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:45:25,860.860 INFO    ] No camera update needed
[2026-06-22 09:45:25,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:45:25,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:45:25,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:45:25,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:45:27,917.917 INFO    ] ================================================
[2026-06-22 09:45:27,933.933 INFO    ] Launching Daemon at Mon Jun 22 09:45:27 IST 2026
[2026-06-22 09:45:27,944.944 INFO    ] ================================================
[2026-06-22 09:45:28,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:45:28
[2026-06-22 09:45:29,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:45:29,269.269 INFO    ] Initializing speech engine...
[2026-06-22 09:45:29,277.277 INFO    ] 2026-06-22 09:45:29
[2026-06-22 09:45:29,572.572 INFO    ] 2026-06-22 09:45:29
[2026-06-22 09:45:29,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:45:29,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:45:29,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:45:29,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:45:29,991.991 INFO    ] time= 22/06/2026 09:45:29
[2026-06-22 09:45:30,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:45:30,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:45:30,083.083 INFO    ] No existing commands found in stream
[2026-06-22 09:45:35,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:45:35,120.120 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-22 09:45:36,046.046 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:45:36,048.048 INFO    ] Checking for system updates...
[2026-06-22 09:45:36,095.095 INFO    ] 200
[2026-06-22 09:45:36,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:45:36,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:45:36,160.160 INFO    ] No update needed
[2026-06-22 09:45:36,163.163 INFO    ] Checking for camera pi updates...
[2026-06-22 09:45:36,197.197 INFO    ] 200
[2026-06-22 09:45:36,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:45:36,241.241 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:45:36,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:45:36,293.293 INFO    ] No camera update needed
[2026-06-22 09:45:36,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:45:36,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:45:36,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:45:36,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:45:38,348.348 INFO    ] ================================================
[2026-06-22 09:45:38,364.364 INFO    ] Launching Daemon at Mon Jun 22 09:45:38 IST 2026
[2026-06-22 09:45:38,375.375 INFO    ] ================================================
[2026-06-22 09:45:39,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:45:39
[2026-06-22 09:45:39,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:45:40,009.009 INFO    ] Initializing speech engine...
[2026-06-22 09:45:40,020.020 INFO    ] 2026-06-22 09:45:40
[2026-06-22 09:45:40,291.291 INFO    ] 2026-06-22 09:45:40
[2026-06-22 09:45:40,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:45:40,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:45:40,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:45:40,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:45:40,784.784 INFO    ] time= 22/06/2026 09:45:40
[2026-06-22 09:45:40,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:45:40,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:45:41,003.003 INFO    ] No existing commands found in stream
[2026-06-22 09:45:46,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:45:46,038.038 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-22 09:45:47,867.867 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:45:47,870.870 INFO    ] Checking for system updates...
[2026-06-22 09:45:47,908.908 INFO    ] 200
[2026-06-22 09:45:47,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:45:47,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:45:47,969.969 INFO    ] No update needed
[2026-06-22 09:45:47,971.971 INFO    ] Checking for camera pi updates...
[2026-06-22 09:45:48,007.007 INFO    ] 200
[2026-06-22 09:45:48,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:45:48,051.051 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:45:48,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:45:48,148.148 INFO    ] No camera update needed
[2026-06-22 09:45:48,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:45:48,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:45:48,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:45:48,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:45:50,208.208 INFO    ] ================================================
[2026-06-22 09:45:50,224.224 INFO    ] Launching Daemon at Mon Jun 22 09:45:50 IST 2026
[2026-06-22 09:45:50,235.235 INFO    ] ================================================
[2026-06-22 09:45:50,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:45:50
[2026-06-22 09:45:51,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:45:51,809.809 INFO    ] Initializing speech engine...
[2026-06-22 09:45:51,820.820 INFO    ] 2026-06-22 09:45:51
[2026-06-22 09:45:52,112.112 INFO    ] 2026-06-22 09:45:52
[2026-06-22 09:45:52,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:45:52,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:45:52,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:45:52,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:45:52,646.646 INFO    ] time= 22/06/2026 09:45:52
[2026-06-22 09:45:52,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:45:52,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:45:52,800.800 INFO    ] No existing commands found in stream
[2026-06-22 09:45:57,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:45:57,827.827 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-22 09:45:59,846.846 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:45:59,849.849 INFO    ] Checking for system updates...
[2026-06-22 09:45:59,888.888 INFO    ] 200
[2026-06-22 09:45:59,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:45:59,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:45:59,955.955 INFO    ] No update needed
[2026-06-22 09:45:59,958.958 INFO    ] Checking for camera pi updates...
[2026-06-22 09:45:59,998.998 INFO    ] 200
[2026-06-22 09:46:00,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:46:00,046.046 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:46:00,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:46:00,228.228 INFO    ] No camera update needed
[2026-06-22 09:46:00,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:46:00,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:46:00,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:46:00,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:46:02,293.293 INFO    ] ================================================
[2026-06-22 09:46:02,312.312 INFO    ] Launching Daemon at Mon Jun 22 09:46:02 IST 2026
[2026-06-22 09:46:02,326.326 INFO    ] ================================================
[2026-06-22 09:46:03,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:46:03
[2026-06-22 09:46:03,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:46:04,018.018 INFO    ] Initializing speech engine...
[2026-06-22 09:46:04,023.023 INFO    ] 2026-06-22 09:46:04
[2026-06-22 09:46:04,269.269 INFO    ] 2026-06-22 09:46:04
[2026-06-22 09:46:04,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:46:04,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:46:04,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:46:04,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:46:04,746.746 INFO    ] time= 22/06/2026 09:46:04
[2026-06-22 09:46:04,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:46:04,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:46:04,982.982 INFO    ] No existing commands found in stream
[2026-06-22 09:46:10,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:46:10,006.006 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-22 09:46:10,702.702 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:46:10,705.705 INFO    ] Checking for system updates...
[2026-06-22 09:46:10,745.745 INFO    ] 200
[2026-06-22 09:46:10,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:46:10,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:46:10,804.804 INFO    ] No update needed
[2026-06-22 09:46:10,806.806 INFO    ] Checking for camera pi updates...
[2026-06-22 09:46:10,841.841 INFO    ] 200
[2026-06-22 09:46:10,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:46:10,884.884 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:46:10,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:46:10,968.968 INFO    ] No camera update needed
[2026-06-22 09:46:10,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:46:10,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:46:10,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:46:10,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:46:13,023.023 INFO    ] ================================================
[2026-06-22 09:46:13,039.039 INFO    ] Launching Daemon at Mon Jun 22 09:46:13 IST 2026
[2026-06-22 09:46:13,050.050 INFO    ] ================================================
[2026-06-22 09:46:13,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:46:13
[2026-06-22 09:46:14,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:46:14,404.404 INFO    ] Initializing speech engine...
[2026-06-22 09:46:14,420.420 INFO    ] 2026-06-22 09:46:14
[2026-06-22 09:46:14,703.703 INFO    ] 2026-06-22 09:46:14
[2026-06-22 09:46:14,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:46:14,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:46:14,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:46:15,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:46:15,122.122 INFO    ] time= 22/06/2026 09:46:15
[2026-06-22 09:46:15,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:46:15,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:46:15,208.208 INFO    ] No existing commands found in stream
[2026-06-22 09:46:20,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:46:20,236.236 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-22 09:46:23,059.059 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:46:23,062.062 INFO    ] Checking for system updates...
[2026-06-22 09:46:23,099.099 INFO    ] 200
[2026-06-22 09:46:23,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:46:23,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:46:23,157.157 INFO    ] No update needed
[2026-06-22 09:46:23,159.159 INFO    ] Checking for camera pi updates...
[2026-06-22 09:46:23,193.193 INFO    ] 200
[2026-06-22 09:46:23,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:46:23,236.236 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:46:23,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:46:23,319.319 INFO    ] No camera update needed
[2026-06-22 09:46:23,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:46:23,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:46:23,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:46:23,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:46:25,375.375 INFO    ] ================================================
[2026-06-22 09:46:25,390.390 INFO    ] Launching Daemon at Mon Jun 22 09:46:25 IST 2026
[2026-06-22 09:46:25,401.401 INFO    ] ================================================
[2026-06-22 09:46:25,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:46:25
[2026-06-22 09:46:26,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:46:26,852.852 INFO    ] Initializing speech engine...
[2026-06-22 09:46:26,862.862 INFO    ] 2026-06-22 09:46:26
[2026-06-22 09:46:27,113.113 INFO    ] 2026-06-22 09:46:27
[2026-06-22 09:46:27,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:46:27,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:46:27,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:46:27,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:46:27,648.648 INFO    ] time= 22/06/2026 09:46:27
[2026-06-22 09:46:27,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:46:27,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:46:27,822.822 INFO    ] No existing commands found in stream
[2026-06-22 09:46:32,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:46:32,840.840 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-22 09:46:37,461.461 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:46:37,464.464 INFO    ] Checking for system updates...
[2026-06-22 09:46:37,504.504 INFO    ] 200
[2026-06-22 09:46:37,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:46:37,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:46:37,563.563 INFO    ] No update needed
[2026-06-22 09:46:37,566.566 INFO    ] Checking for camera pi updates...
[2026-06-22 09:46:37,601.601 INFO    ] 200
[2026-06-22 09:46:37,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:46:37,649.649 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:46:37,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:46:37,734.734 INFO    ] No camera update needed
[2026-06-22 09:46:37,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:46:37,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:46:37,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:46:37,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:46:39,789.789 INFO    ] ================================================
[2026-06-22 09:46:39,805.805 INFO    ] Launching Daemon at Mon Jun 22 09:46:39 IST 2026
[2026-06-22 09:46:39,817.817 INFO    ] ================================================
[2026-06-22 09:46:40,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:46:40
[2026-06-22 09:46:40,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:46:41,183.183 INFO    ] Initializing speech engine...
[2026-06-22 09:46:41,193.193 INFO    ] 2026-06-22 09:46:41
[2026-06-22 09:46:41,456.456 INFO    ] 2026-06-22 09:46:41
[2026-06-22 09:46:41,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:46:41,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:46:41,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:46:41,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:46:41,961.961 INFO    ] time= 22/06/2026 09:46:41
[2026-06-22 09:46:42,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:46:42,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:46:42,141.141 INFO    ] No existing commands found in stream
[2026-06-22 09:46:47,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:46:47,168.168 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-22 09:46:51,601.601 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:46:51,604.604 INFO    ] Checking for system updates...
[2026-06-22 09:46:51,641.641 INFO    ] 200
[2026-06-22 09:46:51,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:46:51,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:46:51,701.701 INFO    ] No update needed
[2026-06-22 09:46:51,704.704 INFO    ] Checking for camera pi updates...
[2026-06-22 09:46:51,738.738 INFO    ] 200
[2026-06-22 09:46:51,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:46:51,782.782 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:46:51,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:46:51,836.836 INFO    ] No camera update needed
[2026-06-22 09:46:51,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:46:51,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:46:51,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:46:51,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:46:53,893.893 INFO    ] ================================================
[2026-06-22 09:46:53,909.909 INFO    ] Launching Daemon at Mon Jun 22 09:46:53 IST 2026
[2026-06-22 09:46:53,920.920 INFO    ] ================================================
[2026-06-22 09:46:54,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:46:54
[2026-06-22 09:46:54,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:46:55,286.286 INFO    ] Initializing speech engine...
[2026-06-22 09:46:55,305.305 INFO    ] 2026-06-22 09:46:55
[2026-06-22 09:46:55,590.590 INFO    ] 2026-06-22 09:46:55
[2026-06-22 09:46:55,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:46:55,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:46:55,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:46:56,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:46:56,083.083 INFO    ] time= 22/06/2026 09:46:56
[2026-06-22 09:46:56,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:46:56,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:46:56,255.255 INFO    ] No existing commands found in stream
[2026-06-22 09:47:01,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:47:01,270.270 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-22 09:47:03,296.296 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:47:03,300.300 INFO    ] Checking for system updates...
[2026-06-22 09:47:03,349.349 INFO    ] 200
[2026-06-22 09:47:03,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:47:03,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:47:03,418.418 INFO    ] No update needed
[2026-06-22 09:47:03,420.420 INFO    ] Checking for camera pi updates...
[2026-06-22 09:47:03,463.463 INFO    ] 200
[2026-06-22 09:47:03,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:47:03,518.518 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:47:03,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:47:03,614.614 INFO    ] No camera update needed
[2026-06-22 09:47:03,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:47:03,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:47:03,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:47:03,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:47:05,672.672 INFO    ] ================================================
[2026-06-22 09:47:05,689.689 INFO    ] Launching Daemon at Mon Jun 22 09:47:05 IST 2026
[2026-06-22 09:47:05,700.700 INFO    ] ================================================
[2026-06-22 09:47:06,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:47:06
[2026-06-22 09:47:07,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:47:07,276.276 INFO    ] Initializing speech engine...
[2026-06-22 09:47:07,295.295 INFO    ] 2026-06-22 09:47:07
[2026-06-22 09:47:07,553.553 INFO    ] 2026-06-22 09:47:07
[2026-06-22 09:47:07,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:47:07,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:47:07,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:47:08,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:47:08,393.393 INFO    ] time= 22/06/2026 09:47:08
[2026-06-22 09:47:08,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:47:08,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:47:08,638.638 INFO    ] No existing commands found in stream
[2026-06-22 09:47:13,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:47:13,666.666 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-22 09:47:15,940.940 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:47:15,942.942 INFO    ] Checking for system updates...
[2026-06-22 09:47:15,982.982 INFO    ] 200
[2026-06-22 09:47:15,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:47:16,044.044 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:47:16,047.047 INFO    ] No update needed
[2026-06-22 09:47:16,049.049 INFO    ] Checking for camera pi updates...
[2026-06-22 09:47:16,086.086 INFO    ] 200
[2026-06-22 09:47:16,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:47:16,133.133 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:47:16,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:47:16,219.219 INFO    ] No camera update needed
[2026-06-22 09:47:16,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:47:16,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:47:16,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:47:16,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:47:18,277.277 INFO    ] ================================================
[2026-06-22 09:47:18,293.293 INFO    ] Launching Daemon at Mon Jun 22 09:47:18 IST 2026
[2026-06-22 09:47:18,306.306 INFO    ] ================================================
[2026-06-22 09:47:18,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:47:18
[2026-06-22 09:47:19,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:47:19,979.979 INFO    ] Initializing speech engine...
[2026-06-22 09:47:19,992.992 INFO    ] 2026-06-22 09:47:19
[2026-06-22 09:47:20,286.286 INFO    ] 2026-06-22 09:47:20
[2026-06-22 09:47:20,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:47:20,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:47:20,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:47:20,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:47:20,724.724 INFO    ] time= 22/06/2026 09:47:20
[2026-06-22 09:47:20,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:47:20,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:47:20,965.965 INFO    ] No existing commands found in stream
[2026-06-22 09:47:25,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:47:25,997.997 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-22 09:47:28,442.442 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:47:28,445.445 INFO    ] Checking for system updates...
[2026-06-22 09:47:28,481.481 INFO    ] 200
[2026-06-22 09:47:28,483.483 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:47:28,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:47:28,539.539 INFO    ] No update needed
[2026-06-22 09:47:28,541.541 INFO    ] Checking for camera pi updates...
[2026-06-22 09:47:28,575.575 INFO    ] 200
[2026-06-22 09:47:28,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:47:28,618.618 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:47:28,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:47:28,713.713 INFO    ] No camera update needed
[2026-06-22 09:47:28,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:47:28,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:47:28,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:47:28,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:47:30,769.769 INFO    ] ================================================
[2026-06-22 09:47:30,785.785 INFO    ] Launching Daemon at Mon Jun 22 09:47:30 IST 2026
[2026-06-22 09:47:30,796.796 INFO    ] ================================================
[2026-06-22 09:47:31,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:47:31
[2026-06-22 09:47:32,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:47:32,391.391 INFO    ] Initializing speech engine...
[2026-06-22 09:47:32,406.406 INFO    ] 2026-06-22 09:47:32
[2026-06-22 09:47:32,722.722 INFO    ] 2026-06-22 09:47:32
[2026-06-22 09:47:32,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:47:32,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:47:33,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:47:33,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:47:33,244.244 INFO    ] time= 22/06/2026 09:47:33
[2026-06-22 09:47:33,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:47:33,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:47:33,374.374 INFO    ] No existing commands found in stream
[2026-06-22 09:47:38,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:47:38,392.392 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-22 09:47:41,901.901 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:47:41,903.903 INFO    ] Checking for system updates...
[2026-06-22 09:47:41,943.943 INFO    ] 200
[2026-06-22 09:47:41,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:47:41,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:47:42,001.001 INFO    ] No update needed
[2026-06-22 09:47:42,003.003 INFO    ] Checking for camera pi updates...
[2026-06-22 09:47:42,037.037 INFO    ] 200
[2026-06-22 09:47:42,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:47:42,081.081 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:47:42,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:47:42,172.172 INFO    ] No camera update needed
[2026-06-22 09:47:42,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:47:42,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:47:42,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:47:42,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:47:44,232.232 INFO    ] ================================================
[2026-06-22 09:47:44,248.248 INFO    ] Launching Daemon at Mon Jun 22 09:47:44 IST 2026
[2026-06-22 09:47:44,259.259 INFO    ] ================================================
[2026-06-22 09:47:44,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:47:44
[2026-06-22 09:47:45,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:47:45,753.753 INFO    ] Initializing speech engine...
[2026-06-22 09:47:45,767.767 INFO    ] 2026-06-22 09:47:45
[2026-06-22 09:47:46,034.034 INFO    ] 2026-06-22 09:47:46
[2026-06-22 09:47:46,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:47:46,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:47:46,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:47:46,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:47:46,611.611 INFO    ] time= 22/06/2026 09:47:46
[2026-06-22 09:47:46,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:47:46,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:47:46,770.770 INFO    ] No existing commands found in stream
[2026-06-22 09:47:51,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:47:51,789.789 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-22 09:47:54,681.681 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:47:54,684.684 INFO    ] Checking for system updates...
[2026-06-22 09:47:54,725.725 INFO    ] 200
[2026-06-22 09:47:54,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:47:54,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:47:54,791.791 INFO    ] No update needed
[2026-06-22 09:47:54,793.793 INFO    ] Checking for camera pi updates...
[2026-06-22 09:47:54,831.831 INFO    ] 200
[2026-06-22 09:47:54,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:47:54,880.880 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:47:54,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:47:54,965.965 INFO    ] No camera update needed
[2026-06-22 09:47:54,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:47:54,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:47:54,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:47:54,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:47:57,021.021 INFO    ] ================================================
[2026-06-22 09:47:57,037.037 INFO    ] Launching Daemon at Mon Jun 22 09:47:57 IST 2026
[2026-06-22 09:47:57,048.048 INFO    ] ================================================
[2026-06-22 09:47:57,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:47:57
[2026-06-22 09:47:58,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:47:58,679.679 INFO    ] Initializing speech engine...
[2026-06-22 09:47:58,693.693 INFO    ] 2026-06-22 09:47:58
[2026-06-22 09:47:58,981.981 INFO    ] 2026-06-22 09:47:58
[2026-06-22 09:47:59,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:47:59,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:47:59,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:47:59,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:47:59,477.477 INFO    ] time= 22/06/2026 09:47:59
[2026-06-22 09:47:59,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:47:59,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:47:59,670.670 INFO    ] No existing commands found in stream
[2026-06-22 09:48:04,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:48:04,701.701 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-22 09:48:08,142.142 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:48:08,145.145 INFO    ] Checking for system updates...
[2026-06-22 09:48:08,187.187 INFO    ] 200
[2026-06-22 09:48:08,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:48:08,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:48:08,244.244 INFO    ] No update needed
[2026-06-22 09:48:08,247.247 INFO    ] Checking for camera pi updates...
[2026-06-22 09:48:08,281.281 INFO    ] 200
[2026-06-22 09:48:08,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:48:08,323.323 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:48:08,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:48:08,523.523 INFO    ] No camera update needed
[2026-06-22 09:48:08,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:48:08,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:48:08,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:48:08,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:48:10,579.579 INFO    ] ================================================
[2026-06-22 09:48:10,594.594 INFO    ] Launching Daemon at Mon Jun 22 09:48:10 IST 2026
[2026-06-22 09:48:10,606.606 INFO    ] ================================================
[2026-06-22 09:48:11,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:48:11
[2026-06-22 09:48:11,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:48:11,994.994 INFO    ] Initializing speech engine...
[2026-06-22 09:48:12,007.007 INFO    ] 2026-06-22 09:48:11
[2026-06-22 09:48:12,254.254 INFO    ] 2026-06-22 09:48:12
[2026-06-22 09:48:12,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:48:12,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:48:12,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:48:12,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:48:12,823.823 INFO    ] time= 22/06/2026 09:48:12
[2026-06-22 09:48:12,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:48:12,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:48:12,978.978 INFO    ] No existing commands found in stream
[2026-06-22 09:48:17,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:48:17,998.998 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-22 09:48:21,861.861 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:48:21,864.864 INFO    ] Checking for system updates...
[2026-06-22 09:48:21,900.900 INFO    ] 200
[2026-06-22 09:48:21,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:48:21,967.967 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:48:21,970.970 INFO    ] No update needed
[2026-06-22 09:48:21,972.972 INFO    ] Checking for camera pi updates...
[2026-06-22 09:48:22,011.011 INFO    ] 200
[2026-06-22 09:48:22,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:48:22,059.059 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:48:22,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:48:22,139.139 INFO    ] No camera update needed
[2026-06-22 09:48:22,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:48:22,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:48:22,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:48:22,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:48:24,195.195 INFO    ] ================================================
[2026-06-22 09:48:24,211.211 INFO    ] Launching Daemon at Mon Jun 22 09:48:24 IST 2026
[2026-06-22 09:48:24,222.222 INFO    ] ================================================
[2026-06-22 09:48:24,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:48:24
[2026-06-22 09:48:25,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:48:25,767.767 INFO    ] Initializing speech engine...
[2026-06-22 09:48:25,775.775 INFO    ] 2026-06-22 09:48:25
[2026-06-22 09:48:26,036.036 INFO    ] 2026-06-22 09:48:26
[2026-06-22 09:48:26,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:48:26,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:48:26,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:48:26,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:48:26,501.501 INFO    ] time= 22/06/2026 09:48:26
[2026-06-22 09:48:26,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:48:26,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:48:26,723.723 INFO    ] No existing commands found in stream
[2026-06-22 09:48:31,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:48:31,750.750 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-22 09:48:35,490.490 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:48:35,493.493 INFO    ] Checking for system updates...
[2026-06-22 09:48:35,533.533 INFO    ] 200
[2026-06-22 09:48:35,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:48:35,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:48:35,599.599 INFO    ] No update needed
[2026-06-22 09:48:35,601.601 INFO    ] Checking for camera pi updates...
[2026-06-22 09:48:35,645.645 INFO    ] 200
[2026-06-22 09:48:35,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:48:35,702.702 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:48:35,768.768 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:48:35,770.770 INFO    ] No camera update needed
[2026-06-22 09:48:35,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:48:35,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:48:35,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:48:35,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:48:37,827.827 INFO    ] ================================================
[2026-06-22 09:48:37,843.843 INFO    ] Launching Daemon at Mon Jun 22 09:48:37 IST 2026
[2026-06-22 09:48:37,855.855 INFO    ] ================================================
[2026-06-22 09:48:38,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:48:38
[2026-06-22 09:48:38,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:48:39,240.240 INFO    ] Initializing speech engine...
[2026-06-22 09:48:39,248.248 INFO    ] 2026-06-22 09:48:39
[2026-06-22 09:48:39,522.522 INFO    ] 2026-06-22 09:48:39
[2026-06-22 09:48:39,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:48:39,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:48:39,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:48:39,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:48:39,877.877 INFO    ] time= 22/06/2026 09:48:39
[2026-06-22 09:48:39,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:48:39,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:48:40,025.025 INFO    ] No existing commands found in stream
[2026-06-22 09:48:45,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:48:45,047.047 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-22 09:48:48,697.697 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:48:48,698.698 INFO    ] Checking for system updates...
[2026-06-22 09:48:48,724.724 INFO    ] 200
[2026-06-22 09:48:48,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:48:48,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:48:48,784.784 INFO    ] No update needed
[2026-06-22 09:48:48,787.787 INFO    ] Checking for camera pi updates...
[2026-06-22 09:48:48,821.821 INFO    ] 200
[2026-06-22 09:48:48,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:48:48,871.871 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:48:48,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:48:48,942.942 INFO    ] No camera update needed
[2026-06-22 09:48:48,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:48:48,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:48:48,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:48:48,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:48:51,006.006 INFO    ] ================================================
[2026-06-22 09:48:51,021.021 INFO    ] Launching Daemon at Mon Jun 22 09:48:51 IST 2026
[2026-06-22 09:48:51,032.032 INFO    ] ================================================
[2026-06-22 09:48:51,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:48:51
[2026-06-22 09:48:52,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:48:52,375.375 INFO    ] Initializing speech engine...
[2026-06-22 09:48:52,382.382 INFO    ] 2026-06-22 09:48:52
[2026-06-22 09:48:52,629.629 INFO    ] 2026-06-22 09:48:52
[2026-06-22 09:48:52,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:48:52,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:48:52,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:48:53,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:48:53,134.134 INFO    ] time= 22/06/2026 09:48:53
[2026-06-22 09:48:53,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:48:53,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:48:53,343.343 INFO    ] No existing commands found in stream
[2026-06-22 09:48:58,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:48:58,368.368 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-22 09:48:59,332.332 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:48:59,334.334 INFO    ] Checking for system updates...
[2026-06-22 09:48:59,375.375 INFO    ] 200
[2026-06-22 09:48:59,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:48:59,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:48:59,435.435 INFO    ] No update needed
[2026-06-22 09:48:59,438.438 INFO    ] Checking for camera pi updates...
[2026-06-22 09:48:59,479.479 INFO    ] 200
[2026-06-22 09:48:59,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:48:59,529.529 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:48:59,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:48:59,610.610 INFO    ] No camera update needed
[2026-06-22 09:48:59,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:48:59,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:48:59,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:48:59,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:49:01,671.671 INFO    ] ================================================
[2026-06-22 09:49:01,687.687 INFO    ] Launching Daemon at Mon Jun 22 09:49:01 IST 2026
[2026-06-22 09:49:01,698.698 INFO    ] ================================================
[2026-06-22 09:49:02,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:49:02
[2026-06-22 09:49:03,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:49:03,451.451 INFO    ] Initializing speech engine...
[2026-06-22 09:49:03,466.466 INFO    ] 2026-06-22 09:49:03
[2026-06-22 09:49:03,757.757 INFO    ] 2026-06-22 09:49:03
[2026-06-22 09:49:03,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:49:04,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:49:04,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:49:04,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:49:04,285.285 INFO    ] time= 22/06/2026 09:49:04
[2026-06-22 09:49:04,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:49:04,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:49:04,483.483 INFO    ] No existing commands found in stream
[2026-06-22 09:49:09,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:49:09,511.511 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-22 09:49:10,424.424 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:49:10,427.427 INFO    ] Checking for system updates...
[2026-06-22 09:49:10,467.467 INFO    ] 200
[2026-06-22 09:49:10,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:49:10,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:49:10,533.533 INFO    ] No update needed
[2026-06-22 09:49:10,535.535 INFO    ] Checking for camera pi updates...
[2026-06-22 09:49:10,570.570 INFO    ] 200
[2026-06-22 09:49:10,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:49:10,613.613 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:49:10,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:49:10,683.683 INFO    ] No camera update needed
[2026-06-22 09:49:10,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:49:10,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:49:10,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:49:10,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:49:12,739.739 INFO    ] ================================================
[2026-06-22 09:49:12,754.754 INFO    ] Launching Daemon at Mon Jun 22 09:49:12 IST 2026
[2026-06-22 09:49:12,765.765 INFO    ] ================================================
[2026-06-22 09:49:13,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:49:13
[2026-06-22 09:49:14,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:49:14,331.331 INFO    ] Initializing speech engine...
[2026-06-22 09:49:14,344.344 INFO    ] 2026-06-22 09:49:14
[2026-06-22 09:49:14,662.662 INFO    ] 2026-06-22 09:49:14
[2026-06-22 09:49:14,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:49:14,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:49:14,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:49:15,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:49:15,189.189 INFO    ] time= 22/06/2026 09:49:15
[2026-06-22 09:49:15,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:49:15,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:49:15,350.350 INFO    ] No existing commands found in stream
[2026-06-22 09:49:20,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:49:20,381.381 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-22 09:49:23,926.926 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:49:23,927.927 INFO    ] Checking for system updates...
[2026-06-22 09:49:23,949.949 INFO    ] 200
[2026-06-22 09:49:23,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:49:23,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:49:23,986.986 INFO    ] No update needed
[2026-06-22 09:49:23,987.987 INFO    ] Checking for camera pi updates...
[2026-06-22 09:49:24,011.011 INFO    ] 200
[2026-06-22 09:49:24,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:49:24,046.046 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:49:24,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:49:24,135.135 INFO    ] No camera update needed
[2026-06-22 09:49:24,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:49:24,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:49:24,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:49:24,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:49:26,195.195 INFO    ] ================================================
[2026-06-22 09:49:26,210.210 INFO    ] Launching Daemon at Mon Jun 22 09:49:26 IST 2026
[2026-06-22 09:49:26,221.221 INFO    ] ================================================
[2026-06-22 09:49:26,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:49:26
[2026-06-22 09:49:27,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:49:27,596.596 INFO    ] Initializing speech engine...
[2026-06-22 09:49:27,601.601 INFO    ] 2026-06-22 09:49:27
[2026-06-22 09:49:27,851.851 INFO    ] 2026-06-22 09:49:27
[2026-06-22 09:49:27,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:49:28,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:49:28,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:49:28,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:49:28,321.321 INFO    ] time= 22/06/2026 09:49:28
[2026-06-22 09:49:28,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:49:28,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:49:28,536.536 INFO    ] No existing commands found in stream
[2026-06-22 09:49:33,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:49:33,570.570 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-22 09:49:34,105.105 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:49:34,108.108 INFO    ] Checking for system updates...
[2026-06-22 09:49:34,145.145 INFO    ] 200
[2026-06-22 09:49:34,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:49:34,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:49:34,212.212 INFO    ] No update needed
[2026-06-22 09:49:34,214.214 INFO    ] Checking for camera pi updates...
[2026-06-22 09:49:34,250.250 INFO    ] 200
[2026-06-22 09:49:34,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:49:34,300.300 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:49:34,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:49:34,381.381 INFO    ] No camera update needed
[2026-06-22 09:49:34,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:49:34,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:49:34,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:49:34,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:49:36,441.441 INFO    ] ================================================
[2026-06-22 09:49:36,458.458 INFO    ] Launching Daemon at Mon Jun 22 09:49:36 IST 2026
[2026-06-22 09:49:36,470.470 INFO    ] ================================================
[2026-06-22 09:49:37,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:49:37
[2026-06-22 09:49:37,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:49:37,840.840 INFO    ] Initializing speech engine...
[2026-06-22 09:49:37,848.848 INFO    ] 2026-06-22 09:49:37
[2026-06-22 09:49:38,110.110 INFO    ] 2026-06-22 09:49:38
[2026-06-22 09:49:38,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:49:38,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:49:38,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:49:38,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:49:38,653.653 INFO    ] time= 22/06/2026 09:49:38
[2026-06-22 09:49:38,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:49:38,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:49:38,803.803 INFO    ] No existing commands found in stream
[2026-06-22 09:49:43,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:49:43,822.822 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-22 09:49:46,987.987 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:49:46,988.988 INFO    ] Checking for system updates...
[2026-06-22 09:49:47,011.011 INFO    ] 200
[2026-06-22 09:49:47,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:49:47,051.051 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:49:47,054.054 INFO    ] No update needed
[2026-06-22 09:49:47,057.057 INFO    ] Checking for camera pi updates...
[2026-06-22 09:49:47,092.092 INFO    ] 200
[2026-06-22 09:49:47,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:49:47,145.145 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:49:47,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:49:47,229.229 INFO    ] No camera update needed
[2026-06-22 09:49:47,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:49:47,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:49:47,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:49:47,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:49:49,289.289 INFO    ] ================================================
[2026-06-22 09:49:49,305.305 INFO    ] Launching Daemon at Mon Jun 22 09:49:49 IST 2026
[2026-06-22 09:49:49,316.316 INFO    ] ================================================
[2026-06-22 09:49:49,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:49:49
[2026-06-22 09:49:50,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:49:50,653.653 INFO    ] Initializing speech engine...
[2026-06-22 09:49:50,667.667 INFO    ] 2026-06-22 09:49:50
[2026-06-22 09:49:50,958.958 INFO    ] 2026-06-22 09:49:50
[2026-06-22 09:49:50,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:49:51,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:49:51,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:49:51,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:49:51,393.393 INFO    ] time= 22/06/2026 09:49:51
[2026-06-22 09:49:51,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:49:51,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:49:51,562.562 INFO    ] No existing commands found in stream
[2026-06-22 09:49:56,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:49:56,596.596 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-22 09:49:59,255.255 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:49:59,257.257 INFO    ] Checking for system updates...
[2026-06-22 09:49:59,280.280 INFO    ] 200
[2026-06-22 09:49:59,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:49:59,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:49:59,314.314 INFO    ] No update needed
[2026-06-22 09:49:59,316.316 INFO    ] Checking for camera pi updates...
[2026-06-22 09:49:59,336.336 INFO    ] 200
[2026-06-22 09:49:59,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:49:59,379.379 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:49:59,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:49:59,465.465 INFO    ] No camera update needed
[2026-06-22 09:49:59,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:49:59,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:49:59,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:49:59,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:50:01,551.551 INFO    ] ================================================
[2026-06-22 09:50:01,616.616 INFO    ] Launching Daemon at Mon Jun 22 09:50:01 IST 2026
[2026-06-22 09:50:01,658.658 INFO    ] ================================================
[2026-06-22 09:50:02,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:50:02
[2026-06-22 09:50:03,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:50:03,874.874 INFO    ] Initializing speech engine...
[2026-06-22 09:50:03,892.892 INFO    ] 2026-06-22 09:50:03
[2026-06-22 09:50:04,147.147 INFO    ] 2026-06-22 09:50:04
[2026-06-22 09:50:04,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:50:04,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:50:04,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:50:04,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:50:04,637.637 INFO    ] time= 22/06/2026 09:50:04
[2026-06-22 09:50:04,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:50:04,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:50:04,767.767 INFO    ] No existing commands found in stream
[2026-06-22 09:50:09,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:50:09,782.782 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-22 09:50:11,196.196 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:50:11,199.199 INFO    ] Checking for system updates...
[2026-06-22 09:50:11,235.235 INFO    ] 200
[2026-06-22 09:50:11,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:50:11,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:50:11,306.306 INFO    ] No update needed
[2026-06-22 09:50:11,308.308 INFO    ] Checking for camera pi updates...
[2026-06-22 09:50:11,342.342 INFO    ] 200
[2026-06-22 09:50:11,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:50:11,370.370 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:50:11,554.554 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:50:11,556.556 INFO    ] No camera update needed
[2026-06-22 09:50:11,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:50:11,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:50:11,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:50:11,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:50:13,613.613 INFO    ] ================================================
[2026-06-22 09:50:13,629.629 INFO    ] Launching Daemon at Mon Jun 22 09:50:13 IST 2026
[2026-06-22 09:50:13,641.641 INFO    ] ================================================
[2026-06-22 09:50:14,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:50:14
[2026-06-22 09:50:14,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:50:15,090.090 INFO    ] Initializing speech engine...
[2026-06-22 09:50:15,109.109 INFO    ] 2026-06-22 09:50:15
[2026-06-22 09:50:15,361.361 INFO    ] 2026-06-22 09:50:15
[2026-06-22 09:50:15,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:50:15,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:50:15,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:50:15,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:50:15,736.736 INFO    ] time= 22/06/2026 09:50:15
[2026-06-22 09:50:15,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:50:15,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:50:15,933.933 INFO    ] No existing commands found in stream
[2026-06-22 09:50:20,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:50:20,949.949 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-22 09:50:21,444.444 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:50:21,447.447 INFO    ] Checking for system updates...
[2026-06-22 09:50:21,485.485 INFO    ] 200
[2026-06-22 09:50:21,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:50:21,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:50:21,549.549 INFO    ] No update needed
[2026-06-22 09:50:21,552.552 INFO    ] Checking for camera pi updates...
[2026-06-22 09:50:21,588.588 INFO    ] 200
[2026-06-22 09:50:21,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:50:21,632.632 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:50:21,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:50:21,713.713 INFO    ] No camera update needed
[2026-06-22 09:50:21,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:50:21,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:50:21,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:50:21,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:50:23,774.774 INFO    ] ================================================
[2026-06-22 09:50:23,790.790 INFO    ] Launching Daemon at Mon Jun 22 09:50:23 IST 2026
[2026-06-22 09:50:23,801.801 INFO    ] ================================================
[2026-06-22 09:50:24,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:50:24
[2026-06-22 09:50:25,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:50:25,289.289 INFO    ] Initializing speech engine...
[2026-06-22 09:50:25,299.299 INFO    ] 2026-06-22 09:50:25
[2026-06-22 09:50:25,549.549 INFO    ] 2026-06-22 09:50:25
[2026-06-22 09:50:25,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:50:25,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:50:25,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:50:25,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:50:25,929.929 INFO    ] time= 22/06/2026 09:50:25
[2026-06-22 09:50:25,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:50:25,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:50:26,101.101 INFO    ] No existing commands found in stream
[2026-06-22 09:50:31,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:50:31,129.129 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-22 09:50:32,284.284 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:50:32,287.287 INFO    ] Checking for system updates...
[2026-06-22 09:50:32,338.338 INFO    ] 200
[2026-06-22 09:50:32,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:50:32,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:50:32,415.415 INFO    ] No update needed
[2026-06-22 09:50:32,418.418 INFO    ] Checking for camera pi updates...
[2026-06-22 09:50:32,457.457 INFO    ] 200
[2026-06-22 09:50:32,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:50:32,511.511 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:50:32,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:50:32,584.584 INFO    ] No camera update needed
[2026-06-22 09:50:32,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:50:32,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:50:32,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:50:32,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:50:34,659.659 INFO    ] ================================================
[2026-06-22 09:50:34,675.675 INFO    ] Launching Daemon at Mon Jun 22 09:50:34 IST 2026
[2026-06-22 09:50:34,686.686 INFO    ] ================================================
[2026-06-22 09:50:35,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:50:35
[2026-06-22 09:50:35,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:50:36,029.029 INFO    ] Initializing speech engine...
[2026-06-22 09:50:36,038.038 INFO    ] 2026-06-22 09:50:36
[2026-06-22 09:50:36,299.299 INFO    ] 2026-06-22 09:50:36
[2026-06-22 09:50:36,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:50:36,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:50:36,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:50:36,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:50:36,788.788 INFO    ] time= 22/06/2026 09:50:36
[2026-06-22 09:50:36,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:50:36,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:50:37,020.020 INFO    ] No existing commands found in stream
[2026-06-22 09:50:42,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:50:42,046.046 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-22 09:50:45,523.523 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:50:45,527.527 INFO    ] Checking for system updates...
[2026-06-22 09:50:45,564.564 INFO    ] 200
[2026-06-22 09:50:45,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:50:45,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:50:45,623.623 INFO    ] No update needed
[2026-06-22 09:50:45,626.626 INFO    ] Checking for camera pi updates...
[2026-06-22 09:50:45,660.660 INFO    ] 200
[2026-06-22 09:50:45,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:50:45,703.703 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:50:45,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:50:45,787.787 INFO    ] No camera update needed
[2026-06-22 09:50:45,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:50:45,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:50:45,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:50:45,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:50:47,843.843 INFO    ] ================================================
[2026-06-22 09:50:47,858.858 INFO    ] Launching Daemon at Mon Jun 22 09:50:47 IST 2026
[2026-06-22 09:50:47,869.869 INFO    ] ================================================
[2026-06-22 09:50:48,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:50:48
[2026-06-22 09:50:49,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:50:49,412.412 INFO    ] Initializing speech engine...
[2026-06-22 09:50:49,420.420 INFO    ] 2026-06-22 09:50:49
[2026-06-22 09:50:49,712.712 INFO    ] 2026-06-22 09:50:49
[2026-06-22 09:50:49,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:50:49,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:50:49,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:50:50,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:50:50,214.214 INFO    ] time= 22/06/2026 09:50:50
[2026-06-22 09:50:50,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:50:50,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:50:50,425.425 INFO    ] No existing commands found in stream
[2026-06-22 09:50:55,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:50:55,449.449 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-22 09:50:57,330.330 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:50:57,333.333 INFO    ] Checking for system updates...
[2026-06-22 09:50:57,370.370 INFO    ] 200
[2026-06-22 09:50:57,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:50:57,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:50:57,437.437 INFO    ] No update needed
[2026-06-22 09:50:57,439.439 INFO    ] Checking for camera pi updates...
[2026-06-22 09:50:57,477.477 INFO    ] 200
[2026-06-22 09:50:57,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:50:57,525.525 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:50:57,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:50:57,609.609 INFO    ] No camera update needed
[2026-06-22 09:50:57,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:50:57,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:50:57,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:50:57,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:50:59,668.668 INFO    ] ================================================
[2026-06-22 09:50:59,683.683 INFO    ] Launching Daemon at Mon Jun 22 09:50:59 IST 2026
[2026-06-22 09:50:59,695.695 INFO    ] ================================================
[2026-06-22 09:51:00,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:51:00
[2026-06-22 09:51:01,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:51:01,385.385 INFO    ] Initializing speech engine...
[2026-06-22 09:51:01,397.397 INFO    ] 2026-06-22 09:51:01
[2026-06-22 09:51:01,671.671 INFO    ] 2026-06-22 09:51:01
[2026-06-22 09:51:01,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:51:01,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:51:01,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:51:02,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:51:02,065.065 INFO    ] time= 22/06/2026 09:51:02
[2026-06-22 09:51:02,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:51:02,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:51:02,144.144 INFO    ] No existing commands found in stream
[2026-06-22 09:51:07,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:51:07,186.186 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-22 09:51:08,591.591 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:51:08,593.593 INFO    ] Checking for system updates...
[2026-06-22 09:51:08,630.630 INFO    ] 200
[2026-06-22 09:51:08,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:51:08,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:51:08,687.687 INFO    ] No update needed
[2026-06-22 09:51:08,689.689 INFO    ] Checking for camera pi updates...
[2026-06-22 09:51:08,727.727 INFO    ] 200
[2026-06-22 09:51:08,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:51:08,769.769 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:51:08,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:51:08,829.829 INFO    ] No camera update needed
[2026-06-22 09:51:08,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:51:08,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:51:08,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:51:08,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:51:10,887.887 INFO    ] ================================================
[2026-06-22 09:51:10,902.902 INFO    ] Launching Daemon at Mon Jun 22 09:51:10 IST 2026
[2026-06-22 09:51:10,913.913 INFO    ] ================================================
[2026-06-22 09:51:11,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:51:11
[2026-06-22 09:51:12,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:51:12,296.296 INFO    ] Initializing speech engine...
[2026-06-22 09:51:12,309.309 INFO    ] 2026-06-22 09:51:12
[2026-06-22 09:51:12,574.574 INFO    ] 2026-06-22 09:51:12
[2026-06-22 09:51:12,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:51:12,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:51:12,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:51:13,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:51:13,067.067 INFO    ] time= 22/06/2026 09:51:13
[2026-06-22 09:51:13,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:51:13,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:51:13,261.261 INFO    ] No existing commands found in stream
[2026-06-22 09:51:18,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:51:18,289.289 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-22 09:51:20,637.637 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:51:20,640.640 INFO    ] Checking for system updates...
[2026-06-22 09:51:20,676.676 INFO    ] 200
[2026-06-22 09:51:20,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:51:20,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:51:20,735.735 INFO    ] No update needed
[2026-06-22 09:51:20,737.737 INFO    ] Checking for camera pi updates...
[2026-06-22 09:51:20,771.771 INFO    ] 200
[2026-06-22 09:51:20,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:51:20,818.818 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:51:20,899.899 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:51:20,901.901 INFO    ] No camera update needed
[2026-06-22 09:51:20,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:51:20,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:51:20,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:51:20,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:51:22,959.959 INFO    ] ================================================
[2026-06-22 09:51:22,974.974 INFO    ] Launching Daemon at Mon Jun 22 09:51:22 IST 2026
[2026-06-22 09:51:22,986.986 INFO    ] ================================================
[2026-06-22 09:51:23,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:51:23
[2026-06-22 09:51:24,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:51:24,499.499 INFO    ] Initializing speech engine...
[2026-06-22 09:51:24,511.511 INFO    ] 2026-06-22 09:51:24
[2026-06-22 09:51:24,794.794 INFO    ] 2026-06-22 09:51:24
[2026-06-22 09:51:24,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:51:25,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:51:25,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:51:25,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:51:25,293.293 INFO    ] time= 22/06/2026 09:51:25
[2026-06-22 09:51:25,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:51:25,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:51:25,510.510 INFO    ] No existing commands found in stream
[2026-06-22 09:51:30,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:51:30,537.537 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-22 09:51:33,245.245 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:51:33,248.248 INFO    ] Checking for system updates...
[2026-06-22 09:51:33,298.298 INFO    ] 200
[2026-06-22 09:51:33,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:51:33,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:51:33,355.355 INFO    ] No update needed
[2026-06-22 09:51:33,358.358 INFO    ] Checking for camera pi updates...
[2026-06-22 09:51:33,391.391 INFO    ] 200
[2026-06-22 09:51:33,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:51:33,435.435 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:51:33,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:51:33,545.545 INFO    ] No camera update needed
[2026-06-22 09:51:33,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:51:33,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:51:33,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:51:33,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:51:35,600.600 INFO    ] ================================================
[2026-06-22 09:51:35,615.615 INFO    ] Launching Daemon at Mon Jun 22 09:51:35 IST 2026
[2026-06-22 09:51:35,626.626 INFO    ] ================================================
[2026-06-22 09:51:36,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:51:36
[2026-06-22 09:51:36,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:51:37,185.185 INFO    ] Initializing speech engine...
[2026-06-22 09:51:37,197.197 INFO    ] 2026-06-22 09:51:37
[2026-06-22 09:51:37,508.508 INFO    ] 2026-06-22 09:51:37
[2026-06-22 09:51:37,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:51:37,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:51:37,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:51:37,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:51:38,030.030 INFO    ] time= 22/06/2026 09:51:37
[2026-06-22 09:51:38,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:51:38,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:51:38,186.186 INFO    ] No existing commands found in stream
[2026-06-22 09:51:43,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:51:43,220.220 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-22 09:51:45,424.424 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:51:45,427.427 INFO    ] Checking for system updates...
[2026-06-22 09:51:45,464.464 INFO    ] 200
[2026-06-22 09:51:45,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:51:45,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:51:45,532.532 INFO    ] No update needed
[2026-06-22 09:51:45,534.534 INFO    ] Checking for camera pi updates...
[2026-06-22 09:51:45,569.569 INFO    ] 200
[2026-06-22 09:51:45,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:51:45,619.619 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:51:45,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:51:45,722.722 INFO    ] No camera update needed
[2026-06-22 09:51:45,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:51:45,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:51:45,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:51:45,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:51:47,782.782 INFO    ] ================================================
[2026-06-22 09:51:47,797.797 INFO    ] Launching Daemon at Mon Jun 22 09:51:47 IST 2026
[2026-06-22 09:51:47,808.808 INFO    ] ================================================
[2026-06-22 09:51:48,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:51:48
[2026-06-22 09:51:48,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:51:49,179.179 INFO    ] Initializing speech engine...
[2026-06-22 09:51:49,186.186 INFO    ] 2026-06-22 09:51:49
[2026-06-22 09:51:49,447.447 INFO    ] 2026-06-22 09:51:49
[2026-06-22 09:51:49,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:51:49,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:51:49,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:51:49,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:51:49,953.953 INFO    ] time= 22/06/2026 09:51:49
[2026-06-22 09:51:49,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:51:50,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:51:50,145.145 INFO    ] No existing commands found in stream
[2026-06-22 09:51:55,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:51:55,162.162 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-22 09:51:56,023.023 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:51:56,026.026 INFO    ] Checking for system updates...
[2026-06-22 09:51:56,065.065 INFO    ] 200
[2026-06-22 09:51:56,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:51:56,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:51:56,123.123 INFO    ] No update needed
[2026-06-22 09:51:56,125.125 INFO    ] Checking for camera pi updates...
[2026-06-22 09:51:56,162.162 INFO    ] 200
[2026-06-22 09:51:56,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:51:56,210.210 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:51:56,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:51:56,303.303 INFO    ] No camera update needed
[2026-06-22 09:51:56,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:51:56,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:51:56,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:51:56,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:51:58,360.360 INFO    ] ================================================
[2026-06-22 09:51:58,376.376 INFO    ] Launching Daemon at Mon Jun 22 09:51:58 IST 2026
[2026-06-22 09:51:58,386.386 INFO    ] ================================================
[2026-06-22 09:51:58,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:51:58
[2026-06-22 09:51:59,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:51:59,741.741 INFO    ] Initializing speech engine...
[2026-06-22 09:51:59,747.747 INFO    ] 2026-06-22 09:51:59
[2026-06-22 09:52:00,042.042 INFO    ] 2026-06-22 09:52:00
[2026-06-22 09:52:00,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:52:00,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:52:00,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:52:00,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:52:00,426.426 INFO    ] time= 22/06/2026 09:52:00
[2026-06-22 09:52:00,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:52:00,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:52:00,555.555 INFO    ] No existing commands found in stream
[2026-06-22 09:52:05,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:52:05,593.593 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-22 09:52:08,152.152 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:52:08,155.155 INFO    ] Checking for system updates...
[2026-06-22 09:52:08,191.191 INFO    ] 200
[2026-06-22 09:52:08,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:52:08,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:52:08,251.251 INFO    ] No update needed
[2026-06-22 09:52:08,253.253 INFO    ] Checking for camera pi updates...
[2026-06-22 09:52:08,289.289 INFO    ] 200
[2026-06-22 09:52:08,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:52:08,332.332 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:52:08,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:52:08,419.419 INFO    ] No camera update needed
[2026-06-22 09:52:08,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:52:08,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:52:08,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:52:08,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:52:10,477.477 INFO    ] ================================================
[2026-06-22 09:52:10,493.493 INFO    ] Launching Daemon at Mon Jun 22 09:52:10 IST 2026
[2026-06-22 09:52:10,503.503 INFO    ] ================================================
[2026-06-22 09:52:11,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:52:11
[2026-06-22 09:52:11,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:52:11,902.902 INFO    ] Initializing speech engine...
[2026-06-22 09:52:11,917.917 INFO    ] 2026-06-22 09:52:11
[2026-06-22 09:52:12,183.183 INFO    ] 2026-06-22 09:52:12
[2026-06-22 09:52:12,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:52:12,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:52:12,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:52:12,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:52:12,658.658 INFO    ] time= 22/06/2026 09:52:12
[2026-06-22 09:52:12,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:52:12,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:52:12,908.908 INFO    ] No existing commands found in stream
[2026-06-22 09:52:17,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:52:17,922.922 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-22 09:52:20,013.013 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:52:20,015.015 INFO    ] Checking for system updates...
[2026-06-22 09:52:20,052.052 INFO    ] 200
[2026-06-22 09:52:20,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:52:20,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:52:20,111.111 INFO    ] No update needed
[2026-06-22 09:52:20,113.113 INFO    ] Checking for camera pi updates...
[2026-06-22 09:52:20,151.151 INFO    ] 200
[2026-06-22 09:52:20,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:52:20,194.194 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:52:20,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:52:20,379.379 INFO    ] No camera update needed
[2026-06-22 09:52:20,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:52:20,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:52:20,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:52:20,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:52:22,436.436 INFO    ] ================================================
[2026-06-22 09:52:22,451.451 INFO    ] Launching Daemon at Mon Jun 22 09:52:22 IST 2026
[2026-06-22 09:52:22,462.462 INFO    ] ================================================
[2026-06-22 09:52:23,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:52:23
[2026-06-22 09:52:23,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:52:23,897.897 INFO    ] Initializing speech engine...
[2026-06-22 09:52:23,907.907 INFO    ] 2026-06-22 09:52:23
[2026-06-22 09:52:24,159.159 INFO    ] 2026-06-22 09:52:24
[2026-06-22 09:52:24,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:52:24,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:52:24,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:52:24,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:52:24,540.540 INFO    ] time= 22/06/2026 09:52:24
[2026-06-22 09:52:24,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:52:24,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:52:24,713.713 INFO    ] No existing commands found in stream
[2026-06-22 09:52:29,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:52:29,741.741 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-22 09:52:33,126.126 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:52:33,129.129 INFO    ] Checking for system updates...
[2026-06-22 09:52:33,178.178 INFO    ] 200
[2026-06-22 09:52:33,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:52:33,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:52:33,256.256 INFO    ] No update needed
[2026-06-22 09:52:33,260.260 INFO    ] Checking for camera pi updates...
[2026-06-22 09:52:33,298.298 INFO    ] 200
[2026-06-22 09:52:33,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:52:33,365.365 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:52:33,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:52:33,452.452 INFO    ] No camera update needed
[2026-06-22 09:52:33,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:52:33,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:52:33,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:52:33,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:52:35,510.510 INFO    ] ================================================
[2026-06-22 09:52:35,526.526 INFO    ] Launching Daemon at Mon Jun 22 09:52:35 IST 2026
[2026-06-22 09:52:35,537.537 INFO    ] ================================================
[2026-06-22 09:52:36,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:52:36
[2026-06-22 09:52:36,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:52:36,916.916 INFO    ] Initializing speech engine...
[2026-06-22 09:52:36,923.923 INFO    ] 2026-06-22 09:52:36
[2026-06-22 09:52:37,185.185 INFO    ] 2026-06-22 09:52:37
[2026-06-22 09:52:37,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:52:37,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:52:37,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:52:37,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:52:37,742.742 INFO    ] time= 22/06/2026 09:52:37
[2026-06-22 09:52:37,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:52:37,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:52:37,896.896 INFO    ] No existing commands found in stream
[2026-06-22 09:52:42,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:52:42,913.913 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-22 09:52:46,522.522 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:52:46,525.525 INFO    ] Checking for system updates...
[2026-06-22 09:52:46,561.561 INFO    ] 200
[2026-06-22 09:52:46,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:52:46,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:52:46,619.619 INFO    ] No update needed
[2026-06-22 09:52:46,622.622 INFO    ] Checking for camera pi updates...
[2026-06-22 09:52:46,656.656 INFO    ] 200
[2026-06-22 09:52:46,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:52:46,698.698 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:52:46,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:52:46,807.807 INFO    ] No camera update needed
[2026-06-22 09:52:46,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:52:46,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:52:46,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:52:46,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:52:48,863.863 INFO    ] ================================================
[2026-06-22 09:52:48,879.879 INFO    ] Launching Daemon at Mon Jun 22 09:52:48 IST 2026
[2026-06-22 09:52:48,890.890 INFO    ] ================================================
[2026-06-22 09:52:49,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:52:49
[2026-06-22 09:52:49,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:52:50,211.211 INFO    ] Initializing speech engine...
[2026-06-22 09:52:50,220.220 INFO    ] 2026-06-22 09:52:50
[2026-06-22 09:52:50,516.516 INFO    ] 2026-06-22 09:52:50
[2026-06-22 09:52:50,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:52:50,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:52:50,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:52:50,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:52:50,938.938 INFO    ] time= 22/06/2026 09:52:50
[2026-06-22 09:52:50,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:52:50,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:52:51,024.024 INFO    ] No existing commands found in stream
[2026-06-22 09:52:56,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:52:56,039.039 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-22 09:52:57,773.773 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:52:57,776.776 INFO    ] Checking for system updates...
[2026-06-22 09:52:57,814.814 INFO    ] 200
[2026-06-22 09:52:57,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:52:57,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:52:57,876.876 INFO    ] No update needed
[2026-06-22 09:52:57,879.879 INFO    ] Checking for camera pi updates...
[2026-06-22 09:52:57,914.914 INFO    ] 200
[2026-06-22 09:52:57,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:52:57,964.964 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:52:58,050.050 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:52:58,053.053 INFO    ] No camera update needed
[2026-06-22 09:52:58,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:52:58,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:52:58,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:52:58,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:53:00,113.113 INFO    ] ================================================
[2026-06-22 09:53:00,128.128 INFO    ] Launching Daemon at Mon Jun 22 09:53:00 IST 2026
[2026-06-22 09:53:00,139.139 INFO    ] ================================================
[2026-06-22 09:53:00,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:53:00
[2026-06-22 09:53:01,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:53:01,833.833 INFO    ] Initializing speech engine...
[2026-06-22 09:53:01,845.845 INFO    ] 2026-06-22 09:53:01
[2026-06-22 09:53:02,160.160 INFO    ] 2026-06-22 09:53:02
[2026-06-22 09:53:02,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:53:02,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:53:02,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:53:02,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:53:02,579.579 INFO    ] time= 22/06/2026 09:53:02
[2026-06-22 09:53:02,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:53:02,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:53:02,689.689 INFO    ] No existing commands found in stream
[2026-06-22 09:53:07,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:53:07,704.704 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-22 09:53:08,405.405 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:53:08,408.408 INFO    ] Checking for system updates...
[2026-06-22 09:53:08,448.448 INFO    ] 200
[2026-06-22 09:53:08,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:53:08,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:53:08,506.506 INFO    ] No update needed
[2026-06-22 09:53:08,509.509 INFO    ] Checking for camera pi updates...
[2026-06-22 09:53:08,542.542 INFO    ] 200
[2026-06-22 09:53:08,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:53:08,585.585 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:53:08,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:53:08,669.669 INFO    ] No camera update needed
[2026-06-22 09:53:08,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:53:08,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:53:08,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:53:08,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:53:10,726.726 INFO    ] ================================================
[2026-06-22 09:53:10,741.741 INFO    ] Launching Daemon at Mon Jun 22 09:53:10 IST 2026
[2026-06-22 09:53:10,751.751 INFO    ] ================================================
[2026-06-22 09:53:11,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:53:11
[2026-06-22 09:53:12,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:53:12,332.332 INFO    ] Initializing speech engine...
[2026-06-22 09:53:12,342.342 INFO    ] 2026-06-22 09:53:12
[2026-06-22 09:53:12,599.599 INFO    ] 2026-06-22 09:53:12
[2026-06-22 09:53:12,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:53:12,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:53:12,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:53:13,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:53:13,044.044 INFO    ] time= 22/06/2026 09:53:13
[2026-06-22 09:53:13,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:53:13,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:53:13,222.222 INFO    ] No existing commands found in stream
[2026-06-22 09:53:18,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:53:18,236.236 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-22 09:53:20,257.257 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:53:20,259.259 INFO    ] Checking for system updates...
[2026-06-22 09:53:20,296.296 INFO    ] 200
[2026-06-22 09:53:20,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:53:20,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:53:20,355.355 INFO    ] No update needed
[2026-06-22 09:53:20,358.358 INFO    ] Checking for camera pi updates...
[2026-06-22 09:53:20,392.392 INFO    ] 200
[2026-06-22 09:53:20,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:53:20,435.435 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:53:20,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:53:20,524.524 INFO    ] No camera update needed
[2026-06-22 09:53:20,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:53:20,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:53:20,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:53:20,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:53:22,579.579 INFO    ] ================================================
[2026-06-22 09:53:22,595.595 INFO    ] Launching Daemon at Mon Jun 22 09:53:22 IST 2026
[2026-06-22 09:53:22,606.606 INFO    ] ================================================
[2026-06-22 09:53:23,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:53:23
[2026-06-22 09:53:23,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:53:23,934.934 INFO    ] Initializing speech engine...
[2026-06-22 09:53:23,941.941 INFO    ] 2026-06-22 09:53:23
[2026-06-22 09:53:24,240.240 INFO    ] 2026-06-22 09:53:24
[2026-06-22 09:53:24,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:53:24,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:53:24,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:53:24,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:53:24,628.628 INFO    ] time= 22/06/2026 09:53:24
[2026-06-22 09:53:24,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:53:24,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:53:24,755.755 INFO    ] No existing commands found in stream
[2026-06-22 09:53:29,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:53:29,770.770 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-22 09:53:30,506.506 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:53:30,507.507 INFO    ] Checking for system updates...
[2026-06-22 09:53:30,530.530 INFO    ] 200
[2026-06-22 09:53:30,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:53:30,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:53:30,589.589 INFO    ] No update needed
[2026-06-22 09:53:30,591.591 INFO    ] Checking for camera pi updates...
[2026-06-22 09:53:30,628.628 INFO    ] 200
[2026-06-22 09:53:30,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:53:30,671.671 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:53:30,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:53:30,758.758 INFO    ] No camera update needed
[2026-06-22 09:53:30,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:53:30,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:53:30,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:53:30,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:53:32,815.815 INFO    ] ================================================
[2026-06-22 09:53:32,830.830 INFO    ] Launching Daemon at Mon Jun 22 09:53:32 IST 2026
[2026-06-22 09:53:32,840.840 INFO    ] ================================================
[2026-06-22 09:53:33,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:53:33
[2026-06-22 09:53:34,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:53:34,398.398 INFO    ] Initializing speech engine...
[2026-06-22 09:53:34,403.403 INFO    ] 2026-06-22 09:53:34
[2026-06-22 09:53:34,689.689 INFO    ] 2026-06-22 09:53:34
[2026-06-22 09:53:34,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:53:35,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:53:35,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:53:35,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:53:35,326.326 INFO    ] time= 22/06/2026 09:53:35
[2026-06-22 09:53:35,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:53:35,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:53:35,601.601 INFO    ] No existing commands found in stream
[2026-06-22 09:53:40,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:53:40,635.635 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-22 09:53:42,184.184 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:53:42,191.191 INFO    ] Checking for system updates...
[2026-06-22 09:53:42,235.235 INFO    ] 200
[2026-06-22 09:53:42,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:53:42,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:53:42,310.310 INFO    ] No update needed
[2026-06-22 09:53:42,313.313 INFO    ] Checking for camera pi updates...
[2026-06-22 09:53:42,351.351 INFO    ] 200
[2026-06-22 09:53:42,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:53:42,408.408 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:53:42,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:53:42,494.494 INFO    ] No camera update needed
[2026-06-22 09:53:42,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:53:42,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:53:42,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:53:42,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:53:44,552.552 INFO    ] ================================================
[2026-06-22 09:53:44,567.567 INFO    ] Launching Daemon at Mon Jun 22 09:53:44 IST 2026
[2026-06-22 09:53:44,579.579 INFO    ] ================================================
[2026-06-22 09:53:45,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:53:45
[2026-06-22 09:53:45,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:53:45,936.936 INFO    ] Initializing speech engine...
[2026-06-22 09:53:45,949.949 INFO    ] 2026-06-22 09:53:45
[2026-06-22 09:53:46,239.239 INFO    ] 2026-06-22 09:53:46
[2026-06-22 09:53:46,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:53:46,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:53:46,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:53:46,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:53:46,666.666 INFO    ] time= 22/06/2026 09:53:46
[2026-06-22 09:53:46,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:53:46,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:53:46,752.752 INFO    ] No existing commands found in stream
[2026-06-22 09:53:51,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:53:51,769.769 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-22 09:53:53,437.437 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:53:53,438.438 INFO    ] Checking for system updates...
[2026-06-22 09:53:53,459.459 INFO    ] 200
[2026-06-22 09:53:53,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:53:53,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:53:53,493.493 INFO    ] No update needed
[2026-06-22 09:53:53,494.494 INFO    ] Checking for camera pi updates...
[2026-06-22 09:53:53,514.514 INFO    ] 200
[2026-06-22 09:53:53,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:53:53,546.546 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:53:53,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:53:53,654.654 INFO    ] No camera update needed
[2026-06-22 09:53:53,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:53:53,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:53:53,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:53:53,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:53:55,713.713 INFO    ] ================================================
[2026-06-22 09:53:55,729.729 INFO    ] Launching Daemon at Mon Jun 22 09:53:55 IST 2026
[2026-06-22 09:53:55,740.740 INFO    ] ================================================
[2026-06-22 09:53:56,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:53:56
[2026-06-22 09:53:57,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:53:57,380.380 INFO    ] Initializing speech engine...
[2026-06-22 09:53:57,391.391 INFO    ] 2026-06-22 09:53:57
[2026-06-22 09:53:57,681.681 INFO    ] 2026-06-22 09:53:57
[2026-06-22 09:53:57,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:53:57,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:53:57,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:53:58,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:53:58,149.149 INFO    ] time= 22/06/2026 09:53:58
[2026-06-22 09:53:58,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:53:58,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:53:58,307.307 INFO    ] No existing commands found in stream
[2026-06-22 09:54:03,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:54:03,341.341 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-22 09:54:07,564.564 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:54:07,567.567 INFO    ] Checking for system updates...
[2026-06-22 09:54:07,604.604 INFO    ] 200
[2026-06-22 09:54:07,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:54:07,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:54:07,672.672 INFO    ] No update needed
[2026-06-22 09:54:07,675.675 INFO    ] Checking for camera pi updates...
[2026-06-22 09:54:07,714.714 INFO    ] 200
[2026-06-22 09:54:07,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:54:07,764.764 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:54:07,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:54:07,854.854 INFO    ] No camera update needed
[2026-06-22 09:54:07,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:54:07,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:54:07,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:54:07,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:54:09,914.914 INFO    ] ================================================
[2026-06-22 09:54:09,930.930 INFO    ] Launching Daemon at Mon Jun 22 09:54:09 IST 2026
[2026-06-22 09:54:09,942.942 INFO    ] ================================================
[2026-06-22 09:54:10,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:54:10
[2026-06-22 09:54:11,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:54:11,541.541 INFO    ] Initializing speech engine...
[2026-06-22 09:54:11,556.556 INFO    ] 2026-06-22 09:54:11
[2026-06-22 09:54:11,827.827 INFO    ] 2026-06-22 09:54:11
[2026-06-22 09:54:11,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:54:12,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:54:12,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:54:12,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:54:12,318.318 INFO    ] time= 22/06/2026 09:54:12
[2026-06-22 09:54:12,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:54:12,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:54:12,551.551 INFO    ] No existing commands found in stream
[2026-06-22 09:54:17,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:54:17,575.575 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-22 09:54:18,465.465 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:54:18,468.468 INFO    ] Checking for system updates...
[2026-06-22 09:54:18,506.506 INFO    ] 200
[2026-06-22 09:54:18,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:54:18,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:54:18,560.560 INFO    ] No update needed
[2026-06-22 09:54:18,561.561 INFO    ] Checking for camera pi updates...
[2026-06-22 09:54:18,581.581 INFO    ] 200
[2026-06-22 09:54:18,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:54:18,606.606 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:54:18,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:54:18,704.704 INFO    ] No camera update needed
[2026-06-22 09:54:18,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:54:18,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:54:18,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:54:18,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:54:20,762.762 INFO    ] ================================================
[2026-06-22 09:54:20,778.778 INFO    ] Launching Daemon at Mon Jun 22 09:54:20 IST 2026
[2026-06-22 09:54:20,789.789 INFO    ] ================================================
[2026-06-22 09:54:21,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:54:21
[2026-06-22 09:54:21,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:54:22,128.128 INFO    ] Initializing speech engine...
[2026-06-22 09:54:22,141.141 INFO    ] 2026-06-22 09:54:22
[2026-06-22 09:54:22,393.393 INFO    ] 2026-06-22 09:54:22
[2026-06-22 09:54:22,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:54:22,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:54:22,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:54:22,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:54:22,850.850 INFO    ] time= 22/06/2026 09:54:22
[2026-06-22 09:54:22,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:54:22,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:54:23,123.123 INFO    ] No existing commands found in stream
[2026-06-22 09:54:28,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:54:28,141.141 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-22 09:54:29,352.352 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:54:29,355.355 INFO    ] Checking for system updates...
[2026-06-22 09:54:29,391.391 INFO    ] 200
[2026-06-22 09:54:29,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:54:29,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:54:29,457.457 INFO    ] No update needed
[2026-06-22 09:54:29,460.460 INFO    ] Checking for camera pi updates...
[2026-06-22 09:54:29,494.494 INFO    ] 200
[2026-06-22 09:54:29,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:54:29,539.539 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:54:29,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:54:29,692.692 INFO    ] No camera update needed
[2026-06-22 09:54:29,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:54:29,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:54:29,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:54:29,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:54:31,754.754 INFO    ] ================================================
[2026-06-22 09:54:31,770.770 INFO    ] Launching Daemon at Mon Jun 22 09:54:31 IST 2026
[2026-06-22 09:54:31,783.783 INFO    ] ================================================
[2026-06-22 09:54:32,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:54:32
[2026-06-22 09:54:32,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:54:33,252.252 INFO    ] Initializing speech engine...
[2026-06-22 09:54:33,275.275 INFO    ] 2026-06-22 09:54:33
[2026-06-22 09:54:33,531.531 INFO    ] 2026-06-22 09:54:33
[2026-06-22 09:54:33,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:54:33,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:54:33,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:54:34,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:54:34,087.087 INFO    ] time= 22/06/2026 09:54:34
[2026-06-22 09:54:34,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:54:34,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:54:34,241.241 INFO    ] No existing commands found in stream
[2026-06-22 09:54:39,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:54:39,258.258 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-22 09:54:41,718.718 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:54:41,719.719 INFO    ] Checking for system updates...
[2026-06-22 09:54:41,740.740 INFO    ] 200
[2026-06-22 09:54:41,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:54:41,778.778 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:54:41,781.781 INFO    ] No update needed
[2026-06-22 09:54:41,783.783 INFO    ] Checking for camera pi updates...
[2026-06-22 09:54:41,816.816 INFO    ] 200
[2026-06-22 09:54:41,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:54:41,860.860 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:54:41,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:54:41,943.943 INFO    ] No camera update needed
[2026-06-22 09:54:41,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:54:41,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:54:41,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:54:41,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:54:44,001.001 INFO    ] ================================================
[2026-06-22 09:54:44,018.018 INFO    ] Launching Daemon at Mon Jun 22 09:54:44 IST 2026
[2026-06-22 09:54:44,029.029 INFO    ] ================================================
[2026-06-22 09:54:44,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:54:44
[2026-06-22 09:54:45,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:54:45,372.372 INFO    ] Initializing speech engine...
[2026-06-22 09:54:45,386.386 INFO    ] 2026-06-22 09:54:45
[2026-06-22 09:54:45,661.661 INFO    ] 2026-06-22 09:54:45
[2026-06-22 09:54:45,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:54:45,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:54:45,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:54:46,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:54:46,065.065 INFO    ] time= 22/06/2026 09:54:46
[2026-06-22 09:54:46,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:54:46,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:54:46,232.232 INFO    ] No existing commands found in stream
[2026-06-22 09:54:51,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:54:51,266.266 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-22 09:54:52,920.920 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:54:52,921.921 INFO    ] Checking for system updates...
[2026-06-22 09:54:52,941.941 INFO    ] 200
[2026-06-22 09:54:52,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:54:52,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:54:52,983.983 INFO    ] No update needed
[2026-06-22 09:54:52,985.985 INFO    ] Checking for camera pi updates...
[2026-06-22 09:54:53,019.019 INFO    ] 200
[2026-06-22 09:54:53,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:54:53,061.061 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:54:53,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:54:53,158.158 INFO    ] No camera update needed
[2026-06-22 09:54:53,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:54:53,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:54:53,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:54:53,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:54:55,213.213 INFO    ] ================================================
[2026-06-22 09:54:55,229.229 INFO    ] Launching Daemon at Mon Jun 22 09:54:55 IST 2026
[2026-06-22 09:54:55,240.240 INFO    ] ================================================
[2026-06-22 09:54:55,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:54:55
[2026-06-22 09:54:56,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:54:56,606.606 INFO    ] Initializing speech engine...
[2026-06-22 09:54:56,613.613 INFO    ] 2026-06-22 09:54:56
[2026-06-22 09:54:56,870.870 INFO    ] 2026-06-22 09:54:56
[2026-06-22 09:54:56,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:54:57,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:54:57,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:54:57,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:54:57,366.366 INFO    ] time= 22/06/2026 09:54:57
[2026-06-22 09:54:57,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:54:57,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:54:57,614.614 INFO    ] No existing commands found in stream
[2026-06-22 09:55:02,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:55:02,630.630 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-22 09:55:05,142.142 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:55:05,145.145 INFO    ] Checking for system updates...
[2026-06-22 09:55:05,181.181 INFO    ] 200
[2026-06-22 09:55:05,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:55:05,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:55:05,239.239 INFO    ] No update needed
[2026-06-22 09:55:05,241.241 INFO    ] Checking for camera pi updates...
[2026-06-22 09:55:05,275.275 INFO    ] 200
[2026-06-22 09:55:05,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:55:05,318.318 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:55:05,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:55:05,397.397 INFO    ] No camera update needed
[2026-06-22 09:55:05,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:55:05,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:55:05,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:55:05,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:55:07,456.456 INFO    ] ================================================
[2026-06-22 09:55:07,471.471 INFO    ] Launching Daemon at Mon Jun 22 09:55:07 IST 2026
[2026-06-22 09:55:07,482.482 INFO    ] ================================================
[2026-06-22 09:55:08,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:55:08
[2026-06-22 09:55:08,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:55:08,951.951 INFO    ] Initializing speech engine...
[2026-06-22 09:55:08,960.960 INFO    ] 2026-06-22 09:55:08
[2026-06-22 09:55:09,230.230 INFO    ] 2026-06-22 09:55:09
[2026-06-22 09:55:09,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:55:09,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:55:09,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:55:09,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:55:09,623.623 INFO    ] time= 22/06/2026 09:55:09
[2026-06-22 09:55:09,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:55:09,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:55:09,708.708 INFO    ] No existing commands found in stream
[2026-06-22 09:55:14,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:55:14,746.746 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-22 09:55:18,136.136 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:55:18,138.138 INFO    ] Checking for system updates...
[2026-06-22 09:55:18,158.158 INFO    ] 200
[2026-06-22 09:55:18,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:55:18,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:55:18,195.195 INFO    ] No update needed
[2026-06-22 09:55:18,197.197 INFO    ] Checking for camera pi updates...
[2026-06-22 09:55:18,231.231 INFO    ] 200
[2026-06-22 09:55:18,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:55:18,280.280 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:55:18,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:55:18,381.381 INFO    ] No camera update needed
[2026-06-22 09:55:18,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:55:18,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:55:18,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:55:18,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:55:20,437.437 INFO    ] ================================================
[2026-06-22 09:55:20,453.453 INFO    ] Launching Daemon at Mon Jun 22 09:55:20 IST 2026
[2026-06-22 09:55:20,463.463 INFO    ] ================================================
[2026-06-22 09:55:21,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:55:21
[2026-06-22 09:55:21,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:55:21,782.782 INFO    ] Initializing speech engine...
[2026-06-22 09:55:21,798.798 INFO    ] 2026-06-22 09:55:21
[2026-06-22 09:55:22,074.074 INFO    ] 2026-06-22 09:55:22
[2026-06-22 09:55:22,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:55:22,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:55:22,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:55:22,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:55:22,475.475 INFO    ] time= 22/06/2026 09:55:22
[2026-06-22 09:55:22,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:55:22,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:55:22,559.559 INFO    ] No existing commands found in stream
[2026-06-22 09:55:27,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:55:27,587.587 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-22 09:55:29,402.402 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:55:29,405.405 INFO    ] Checking for system updates...
[2026-06-22 09:55:29,444.444 INFO    ] 200
[2026-06-22 09:55:29,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:55:29,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:55:29,505.505 INFO    ] No update needed
[2026-06-22 09:55:29,508.508 INFO    ] Checking for camera pi updates...
[2026-06-22 09:55:29,542.542 INFO    ] 200
[2026-06-22 09:55:29,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:55:29,586.586 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:55:29,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:55:29,672.672 INFO    ] No camera update needed
[2026-06-22 09:55:29,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:55:29,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:55:29,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:55:29,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:55:31,731.731 INFO    ] ================================================
[2026-06-22 09:55:31,747.747 INFO    ] Launching Daemon at Mon Jun 22 09:55:31 IST 2026
[2026-06-22 09:55:31,758.758 INFO    ] ================================================
[2026-06-22 09:55:32,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:55:32
[2026-06-22 09:55:32,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:55:33,277.277 INFO    ] Initializing speech engine...
[2026-06-22 09:55:33,294.294 INFO    ] 2026-06-22 09:55:33
[2026-06-22 09:55:33,564.564 INFO    ] 2026-06-22 09:55:33
[2026-06-22 09:55:33,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:55:33,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:55:33,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:55:33,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:55:33,986.986 INFO    ] time= 22/06/2026 09:55:33
[2026-06-22 09:55:34,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:55:34,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:55:34,153.153 INFO    ] No existing commands found in stream
[2026-06-22 09:55:39,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:55:39,168.168 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-22 09:55:40,903.903 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:55:40,906.906 INFO    ] Checking for system updates...
[2026-06-22 09:55:40,941.941 INFO    ] 200
[2026-06-22 09:55:40,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:55:40,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:55:40,999.999 INFO    ] No update needed
[2026-06-22 09:55:41,002.002 INFO    ] Checking for camera pi updates...
[2026-06-22 09:55:41,036.036 INFO    ] 200
[2026-06-22 09:55:41,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:55:41,083.083 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:55:41,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:55:41,193.193 INFO    ] No camera update needed
[2026-06-22 09:55:41,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:55:41,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:55:41,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:55:41,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:55:43,251.251 INFO    ] ================================================
[2026-06-22 09:55:43,267.267 INFO    ] Launching Daemon at Mon Jun 22 09:55:43 IST 2026
[2026-06-22 09:55:43,278.278 INFO    ] ================================================
[2026-06-22 09:55:43,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:55:43
[2026-06-22 09:55:44,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:55:44,682.682 INFO    ] Initializing speech engine...
[2026-06-22 09:55:44,695.695 INFO    ] 2026-06-22 09:55:44
[2026-06-22 09:55:44,956.956 INFO    ] 2026-06-22 09:55:44
[2026-06-22 09:55:44,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:55:45,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:55:45,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:55:45,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:55:45,503.503 INFO    ] time= 22/06/2026 09:55:45
[2026-06-22 09:55:45,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:55:45,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:55:45,660.660 INFO    ] No existing commands found in stream
[2026-06-22 09:55:50,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:55:50,678.678 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-22 09:55:54,891.891 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:55:54,894.894 INFO    ] Checking for system updates...
[2026-06-22 09:55:54,929.929 INFO    ] 200
[2026-06-22 09:55:54,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:55:54,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:55:54,986.986 INFO    ] No update needed
[2026-06-22 09:55:54,988.988 INFO    ] Checking for camera pi updates...
[2026-06-22 09:55:55,025.025 INFO    ] 200
[2026-06-22 09:55:55,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:55:55,067.067 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:55:55,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:55:55,165.165 INFO    ] No camera update needed
[2026-06-22 09:55:55,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:55:55,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:55:55,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:55:55,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:55:57,222.222 INFO    ] ================================================
[2026-06-22 09:55:57,238.238 INFO    ] Launching Daemon at Mon Jun 22 09:55:57 IST 2026
[2026-06-22 09:55:57,249.249 INFO    ] ================================================
[2026-06-22 09:55:57,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:55:57
[2026-06-22 09:55:58,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:55:58,704.704 INFO    ] Initializing speech engine...
[2026-06-22 09:55:58,715.715 INFO    ] 2026-06-22 09:55:58
[2026-06-22 09:55:58,983.983 INFO    ] 2026-06-22 09:55:58
[2026-06-22 09:55:59,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:55:59,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:55:59,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:55:59,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:55:59,532.532 INFO    ] time= 22/06/2026 09:55:59
[2026-06-22 09:55:59,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:55:59,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:55:59,682.682 INFO    ] No existing commands found in stream
[2026-06-22 09:56:04,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:56:04,702.702 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-22 09:56:08,147.147 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:56:08,149.149 INFO    ] Checking for system updates...
[2026-06-22 09:56:08,170.170 INFO    ] 200
[2026-06-22 09:56:08,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:56:08,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:56:08,203.203 INFO    ] No update needed
[2026-06-22 09:56:08,205.205 INFO    ] Checking for camera pi updates...
[2026-06-22 09:56:08,225.225 INFO    ] 200
[2026-06-22 09:56:08,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:56:08,266.266 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:56:08,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:56:08,353.353 INFO    ] No camera update needed
[2026-06-22 09:56:08,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:56:08,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:56:08,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:56:08,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:56:10,411.411 INFO    ] ================================================
[2026-06-22 09:56:10,426.426 INFO    ] Launching Daemon at Mon Jun 22 09:56:10 IST 2026
[2026-06-22 09:56:10,437.437 INFO    ] ================================================
[2026-06-22 09:56:11,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:56:11
[2026-06-22 09:56:11,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:56:11,754.754 INFO    ] Initializing speech engine...
[2026-06-22 09:56:11,777.777 INFO    ] 2026-06-22 09:56:11
[2026-06-22 09:56:12,031.031 INFO    ] 2026-06-22 09:56:12
[2026-06-22 09:56:12,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:56:12,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:56:12,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:56:12,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:56:12,408.408 INFO    ] time= 22/06/2026 09:56:12
[2026-06-22 09:56:12,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:56:12,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:56:12,593.593 INFO    ] No existing commands found in stream
[2026-06-22 09:56:17,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:56:17,623.623 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-22 09:56:19,656.656 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:56:19,657.657 INFO    ] Checking for system updates...
[2026-06-22 09:56:19,678.678 INFO    ] 200
[2026-06-22 09:56:19,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:56:19,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:56:19,712.712 INFO    ] No update needed
[2026-06-22 09:56:19,714.714 INFO    ] Checking for camera pi updates...
[2026-06-22 09:56:19,738.738 INFO    ] 200
[2026-06-22 09:56:19,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:56:19,782.782 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:56:19,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:56:19,878.878 INFO    ] No camera update needed
[2026-06-22 09:56:19,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:56:19,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:56:19,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:56:19,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:56:21,935.935 INFO    ] ================================================
[2026-06-22 09:56:21,951.951 INFO    ] Launching Daemon at Mon Jun 22 09:56:21 IST 2026
[2026-06-22 09:56:21,962.962 INFO    ] ================================================
[2026-06-22 09:56:22,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:56:22
[2026-06-22 09:56:23,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:56:23,357.357 INFO    ] Initializing speech engine...
[2026-06-22 09:56:23,365.365 INFO    ] 2026-06-22 09:56:23
[2026-06-22 09:56:23,637.637 INFO    ] 2026-06-22 09:56:23
[2026-06-22 09:56:23,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:56:23,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:56:23,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:56:24,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:56:24,120.120 INFO    ] time= 22/06/2026 09:56:24
[2026-06-22 09:56:24,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:56:24,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:56:24,342.342 INFO    ] No existing commands found in stream
[2026-06-22 09:56:29,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:56:29,374.374 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-22 09:56:32,163.163 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:56:32,166.166 INFO    ] Checking for system updates...
[2026-06-22 09:56:32,204.204 INFO    ] 200
[2026-06-22 09:56:32,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:56:32,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:56:32,278.278 INFO    ] No update needed
[2026-06-22 09:56:32,281.281 INFO    ] Checking for camera pi updates...
[2026-06-22 09:56:32,332.332 INFO    ] 200
[2026-06-22 09:56:32,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:56:32,390.390 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:56:32,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:56:32,548.548 INFO    ] No camera update needed
[2026-06-22 09:56:32,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:56:32,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:56:32,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:56:32,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:56:34,606.606 INFO    ] ================================================
[2026-06-22 09:56:34,623.623 INFO    ] Launching Daemon at Mon Jun 22 09:56:34 IST 2026
[2026-06-22 09:56:34,633.633 INFO    ] ================================================
[2026-06-22 09:56:35,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:56:35
[2026-06-22 09:56:35,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:56:36,147.147 INFO    ] Initializing speech engine...
[2026-06-22 09:56:36,162.162 INFO    ] 2026-06-22 09:56:36
[2026-06-22 09:56:36,447.447 INFO    ] 2026-06-22 09:56:36
[2026-06-22 09:56:36,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:56:36,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:56:36,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:56:36,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:56:37,001.001 INFO    ] time= 22/06/2026 09:56:36
[2026-06-22 09:56:37,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:56:37,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:56:37,187.187 INFO    ] No existing commands found in stream
[2026-06-22 09:56:42,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:56:42,217.217 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-22 09:56:45,548.548 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:56:45,550.550 INFO    ] Checking for system updates...
[2026-06-22 09:56:45,571.571 INFO    ] 200
[2026-06-22 09:56:45,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:56:45,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:56:45,606.606 INFO    ] No update needed
[2026-06-22 09:56:45,607.607 INFO    ] Checking for camera pi updates...
[2026-06-22 09:56:45,627.627 INFO    ] 200
[2026-06-22 09:56:45,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:56:45,653.653 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:56:45,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:56:45,729.729 INFO    ] No camera update needed
[2026-06-22 09:56:45,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:56:45,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:56:45,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:56:45,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:56:47,787.787 INFO    ] ================================================
[2026-06-22 09:56:47,803.803 INFO    ] Launching Daemon at Mon Jun 22 09:56:47 IST 2026
[2026-06-22 09:56:47,814.814 INFO    ] ================================================
[2026-06-22 09:56:48,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:56:48
[2026-06-22 09:56:48,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:56:49,175.175 INFO    ] Initializing speech engine...
[2026-06-22 09:56:49,191.191 INFO    ] 2026-06-22 09:56:49
[2026-06-22 09:56:49,479.479 INFO    ] 2026-06-22 09:56:49
[2026-06-22 09:56:49,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:56:49,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:56:49,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:56:49,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:56:49,834.834 INFO    ] time= 22/06/2026 09:56:49
[2026-06-22 09:56:49,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:56:49,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:56:49,986.986 INFO    ] No existing commands found in stream
[2026-06-22 09:56:54,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:56:55,000.000 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-22 09:56:55,765.765 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:56:55,768.768 INFO    ] Checking for system updates...
[2026-06-22 09:56:55,805.805 INFO    ] 200
[2026-06-22 09:56:55,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:56:55,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:56:55,871.871 INFO    ] No update needed
[2026-06-22 09:56:55,874.874 INFO    ] Checking for camera pi updates...
[2026-06-22 09:56:55,908.908 INFO    ] 200
[2026-06-22 09:56:55,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:56:55,954.954 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:56:56,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:56:56,042.042 INFO    ] No camera update needed
[2026-06-22 09:56:56,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:56:56,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:56:56,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:56:56,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:56:58,102.102 INFO    ] ================================================
[2026-06-22 09:56:58,118.118 INFO    ] Launching Daemon at Mon Jun 22 09:56:58 IST 2026
[2026-06-22 09:56:58,129.129 INFO    ] ================================================
[2026-06-22 09:56:58,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:56:58
[2026-06-22 09:56:59,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:56:59,757.757 INFO    ] Initializing speech engine...
[2026-06-22 09:56:59,764.764 INFO    ] 2026-06-22 09:56:59
[2026-06-22 09:57:00,051.051 INFO    ] 2026-06-22 09:57:00
[2026-06-22 09:57:00,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:57:00,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:57:00,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:57:00,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:57:00,586.586 INFO    ] time= 22/06/2026 09:57:00
[2026-06-22 09:57:00,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:57:00,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:57:00,753.753 INFO    ] No existing commands found in stream
[2026-06-22 09:57:05,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:57:05,788.788 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-22 09:57:09,718.718 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:57:09,721.721 INFO    ] Checking for system updates...
[2026-06-22 09:57:09,763.763 INFO    ] 200
[2026-06-22 09:57:09,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:57:09,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:57:09,824.824 INFO    ] No update needed
[2026-06-22 09:57:09,827.827 INFO    ] Checking for camera pi updates...
[2026-06-22 09:57:09,863.863 INFO    ] 200
[2026-06-22 09:57:09,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:57:09,913.913 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:57:10,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:57:10,021.021 INFO    ] No camera update needed
[2026-06-22 09:57:10,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:57:10,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:57:10,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:57:10,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:57:12,081.081 INFO    ] ================================================
[2026-06-22 09:57:12,096.096 INFO    ] Launching Daemon at Mon Jun 22 09:57:12 IST 2026
[2026-06-22 09:57:12,107.107 INFO    ] ================================================
[2026-06-22 09:57:12,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:57:12
[2026-06-22 09:57:13,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:57:13,448.448 INFO    ] Initializing speech engine...
[2026-06-22 09:57:13,461.461 INFO    ] 2026-06-22 09:57:13
[2026-06-22 09:57:13,755.755 INFO    ] 2026-06-22 09:57:13
[2026-06-22 09:57:13,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:57:14,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:57:14,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:57:14,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:57:14,277.277 INFO    ] time= 22/06/2026 09:57:14
[2026-06-22 09:57:14,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:57:14,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:57:14,546.546 INFO    ] No existing commands found in stream
[2026-06-22 09:57:19,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:57:19,572.572 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-22 09:57:21,707.707 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:57:21,709.709 INFO    ] Checking for system updates...
[2026-06-22 09:57:21,746.746 INFO    ] 200
[2026-06-22 09:57:21,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:57:21,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:57:21,809.809 INFO    ] No update needed
[2026-06-22 09:57:21,812.812 INFO    ] Checking for camera pi updates...
[2026-06-22 09:57:21,852.852 INFO    ] 200
[2026-06-22 09:57:21,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:57:21,896.896 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:57:21,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:57:21,978.978 INFO    ] No camera update needed
[2026-06-22 09:57:21,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:57:21,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:57:21,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:57:21,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:57:24,034.034 INFO    ] ================================================
[2026-06-22 09:57:24,049.049 INFO    ] Launching Daemon at Mon Jun 22 09:57:24 IST 2026
[2026-06-22 09:57:24,060.060 INFO    ] ================================================
[2026-06-22 09:57:24,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:57:24
[2026-06-22 09:57:25,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:57:25,399.399 INFO    ] Initializing speech engine...
[2026-06-22 09:57:25,405.405 INFO    ] 2026-06-22 09:57:25
[2026-06-22 09:57:25,704.704 INFO    ] 2026-06-22 09:57:25
[2026-06-22 09:57:25,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:57:25,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:57:25,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:57:26,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:57:26,088.088 INFO    ] time= 22/06/2026 09:57:26
[2026-06-22 09:57:26,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:57:26,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:57:26,215.215 INFO    ] No existing commands found in stream
[2026-06-22 09:57:31,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:57:31,231.231 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-22 09:57:35,358.358 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:57:35,359.359 INFO    ] Checking for system updates...
[2026-06-22 09:57:35,380.380 INFO    ] 200
[2026-06-22 09:57:35,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:57:35,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:57:35,420.420 INFO    ] No update needed
[2026-06-22 09:57:35,422.422 INFO    ] Checking for camera pi updates...
[2026-06-22 09:57:35,460.460 INFO    ] 200
[2026-06-22 09:57:35,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:57:35,509.509 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:57:35,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:57:35,593.593 INFO    ] No camera update needed
[2026-06-22 09:57:35,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:57:35,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:57:35,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:57:35,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:57:37,648.648 INFO    ] ================================================
[2026-06-22 09:57:37,663.663 INFO    ] Launching Daemon at Mon Jun 22 09:57:37 IST 2026
[2026-06-22 09:57:37,674.674 INFO    ] ================================================
[2026-06-22 09:57:38,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:57:38
[2026-06-22 09:57:38,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:57:39,031.031 INFO    ] Initializing speech engine...
[2026-06-22 09:57:39,038.038 INFO    ] 2026-06-22 09:57:39
[2026-06-22 09:57:39,295.295 INFO    ] 2026-06-22 09:57:39
[2026-06-22 09:57:39,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:57:39,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:57:39,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:57:39,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:57:39,844.844 INFO    ] time= 22/06/2026 09:57:39
[2026-06-22 09:57:39,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:57:39,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:57:39,994.994 INFO    ] No existing commands found in stream
[2026-06-22 09:57:45,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:57:45,010.010 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-22 09:57:47,107.107 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:57:47,109.109 INFO    ] Checking for system updates...
[2026-06-22 09:57:47,129.129 INFO    ] 200
[2026-06-22 09:57:47,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:57:47,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:57:47,161.161 INFO    ] No update needed
[2026-06-22 09:57:47,163.163 INFO    ] Checking for camera pi updates...
[2026-06-22 09:57:47,182.182 INFO    ] 200
[2026-06-22 09:57:47,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:57:47,206.206 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:57:47,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:57:47,281.281 INFO    ] No camera update needed
[2026-06-22 09:57:47,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:57:47,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:57:47,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:57:47,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:57:49,338.338 INFO    ] ================================================
[2026-06-22 09:57:49,353.353 INFO    ] Launching Daemon at Mon Jun 22 09:57:49 IST 2026
[2026-06-22 09:57:49,367.367 INFO    ] ================================================
[2026-06-22 09:57:50,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:57:50
[2026-06-22 09:57:50,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:57:50,913.913 INFO    ] Initializing speech engine...
[2026-06-22 09:57:50,925.925 INFO    ] 2026-06-22 09:57:50
[2026-06-22 09:57:51,238.238 INFO    ] 2026-06-22 09:57:51
[2026-06-22 09:57:51,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:57:51,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:57:51,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:57:51,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:57:51,743.743 INFO    ] time= 22/06/2026 09:57:51
[2026-06-22 09:57:51,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:57:51,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:57:51,897.897 INFO    ] No existing commands found in stream
[2026-06-22 09:57:56,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:57:56,916.916 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-22 09:58:00,647.647 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:58:00,649.649 INFO    ] Checking for system updates...
[2026-06-22 09:58:00,670.670 INFO    ] 200
[2026-06-22 09:58:00,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:58:00,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:58:00,704.704 INFO    ] No update needed
[2026-06-22 09:58:00,705.705 INFO    ] Checking for camera pi updates...
[2026-06-22 09:58:00,726.726 INFO    ] 200
[2026-06-22 09:58:00,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:58:00,776.776 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:58:00,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:58:00,875.875 INFO    ] No camera update needed
[2026-06-22 09:58:00,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:58:00,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:58:00,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:58:00,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:58:02,936.936 INFO    ] ================================================
[2026-06-22 09:58:02,953.953 INFO    ] Launching Daemon at Mon Jun 22 09:58:02 IST 2026
[2026-06-22 09:58:02,968.968 INFO    ] ================================================
[2026-06-22 09:58:03,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:58:03
[2026-06-22 09:58:04,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:58:04,534.534 INFO    ] Initializing speech engine...
[2026-06-22 09:58:04,545.545 INFO    ] 2026-06-22 09:58:04
[2026-06-22 09:58:04,857.857 INFO    ] 2026-06-22 09:58:04
[2026-06-22 09:58:04,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:58:05,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:58:05,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:58:05,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:58:05,376.376 INFO    ] time= 22/06/2026 09:58:05
[2026-06-22 09:58:05,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:58:05,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:58:05,525.525 INFO    ] No existing commands found in stream
[2026-06-22 09:58:10,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:58:10,551.551 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-22 09:58:11,288.288 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 09:58:11,290.290 INFO    ] Checking for system updates...
[2026-06-22 09:58:11,310.310 INFO    ] 200
[2026-06-22 09:58:11,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:58:11,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:58:11,364.364 INFO    ] No update needed
[2026-06-22 09:58:11,367.367 INFO    ] Checking for camera pi updates...
[2026-06-22 09:58:11,406.406 INFO    ] 200
[2026-06-22 09:58:11,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:58:11,454.454 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:58:11,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:58:11,541.541 INFO    ] No camera update needed
[2026-06-22 09:58:11,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:58:11,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:58:11,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:58:11,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:58:13,600.600 INFO    ] ================================================
[2026-06-22 09:58:13,616.616 INFO    ] Launching Daemon at Mon Jun 22 09:58:13 IST 2026
[2026-06-22 09:58:13,627.627 INFO    ] ================================================
[2026-06-22 09:58:14,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:58:14
[2026-06-22 09:58:14,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:58:14,941.941 INFO    ] Initializing speech engine...
[2026-06-22 09:58:14,964.964 INFO    ] 2026-06-22 09:58:14
[2026-06-22 09:58:15,219.219 INFO    ] 2026-06-22 09:58:15
[2026-06-22 09:58:15,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:58:15,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:58:15,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:58:15,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:58:15,686.686 INFO    ] time= 22/06/2026 09:58:15
[2026-06-22 09:58:15,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:58:15,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:58:15,929.929 INFO    ] No existing commands found in stream
[2026-06-22 09:58:20,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:58:20,960.960 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-22 09:58:22,873.873 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:58:22,876.876 INFO    ] Checking for system updates...
[2026-06-22 09:58:22,912.912 INFO    ] 200
[2026-06-22 09:58:22,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:58:22,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:58:22,970.970 INFO    ] No update needed
[2026-06-22 09:58:22,973.973 INFO    ] Checking for camera pi updates...
[2026-06-22 09:58:23,007.007 INFO    ] 200
[2026-06-22 09:58:23,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:58:23,051.051 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:58:23,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:58:23,168.168 INFO    ] No camera update needed
[2026-06-22 09:58:23,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:58:23,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:58:23,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:58:23,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:58:25,224.224 INFO    ] ================================================
[2026-06-22 09:58:25,240.240 INFO    ] Launching Daemon at Mon Jun 22 09:58:25 IST 2026
[2026-06-22 09:58:25,251.251 INFO    ] ================================================
[2026-06-22 09:58:25,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:58:25
[2026-06-22 09:58:26,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:58:26,618.618 INFO    ] Initializing speech engine...
[2026-06-22 09:58:26,628.628 INFO    ] 2026-06-22 09:58:26
[2026-06-22 09:58:26,873.873 INFO    ] 2026-06-22 09:58:26
[2026-06-22 09:58:26,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:58:27,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:58:27,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:58:27,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:58:27,367.367 INFO    ] time= 22/06/2026 09:58:27
[2026-06-22 09:58:27,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:58:27,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:58:27,566.566 INFO    ] No existing commands found in stream
[2026-06-22 09:58:32,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:58:32,596.596 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-22 09:58:33,423.423 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:58:33,425.425 INFO    ] Checking for system updates...
[2026-06-22 09:58:33,463.463 INFO    ] 200
[2026-06-22 09:58:33,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:58:33,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:58:33,522.522 INFO    ] No update needed
[2026-06-22 09:58:33,525.525 INFO    ] Checking for camera pi updates...
[2026-06-22 09:58:33,559.559 INFO    ] 200
[2026-06-22 09:58:33,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:58:33,618.618 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:58:33,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:58:33,733.733 INFO    ] No camera update needed
[2026-06-22 09:58:33,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:58:33,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:58:33,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:58:33,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:58:35,790.790 INFO    ] ================================================
[2026-06-22 09:58:35,807.807 INFO    ] Launching Daemon at Mon Jun 22 09:58:35 IST 2026
[2026-06-22 09:58:35,817.817 INFO    ] ================================================
[2026-06-22 09:58:36,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:58:36
[2026-06-22 09:58:36,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:58:37,206.206 INFO    ] Initializing speech engine...
[2026-06-22 09:58:37,230.230 INFO    ] 2026-06-22 09:58:37
[2026-06-22 09:58:37,503.503 INFO    ] 2026-06-22 09:58:37
[2026-06-22 09:58:37,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:58:37,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:58:37,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:58:37,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:58:37,918.918 INFO    ] time= 22/06/2026 09:58:37
[2026-06-22 09:58:37,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:58:37,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:58:38,075.075 INFO    ] No existing commands found in stream
[2026-06-22 09:58:43,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:58:43,103.103 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-22 09:58:47,472.472 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:58:47,475.475 INFO    ] Checking for system updates...
[2026-06-22 09:58:47,511.511 INFO    ] 200
[2026-06-22 09:58:47,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:58:47,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:58:47,569.569 INFO    ] No update needed
[2026-06-22 09:58:47,571.571 INFO    ] Checking for camera pi updates...
[2026-06-22 09:58:47,605.605 INFO    ] 200
[2026-06-22 09:58:47,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:58:47,652.652 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:58:47,741.741 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:58:47,744.744 INFO    ] No camera update needed
[2026-06-22 09:58:47,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:58:47,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:58:47,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:58:47,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:58:49,799.799 INFO    ] ================================================
[2026-06-22 09:58:49,814.814 INFO    ] Launching Daemon at Mon Jun 22 09:58:49 IST 2026
[2026-06-22 09:58:49,825.825 INFO    ] ================================================
[2026-06-22 09:58:50,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:58:50
[2026-06-22 09:58:51,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:58:51,331.331 INFO    ] Initializing speech engine...
[2026-06-22 09:58:51,339.339 INFO    ] 2026-06-22 09:58:51
[2026-06-22 09:58:51,627.627 INFO    ] 2026-06-22 09:58:51
[2026-06-22 09:58:51,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:58:51,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:58:51,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:58:52,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:58:52,177.177 INFO    ] time= 22/06/2026 09:58:52
[2026-06-22 09:58:52,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:58:52,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:58:52,325.325 INFO    ] No existing commands found in stream
[2026-06-22 09:58:57,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:58:57,351.351 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-22 09:58:59,658.658 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 09:58:59,661.661 INFO    ] Checking for system updates...
[2026-06-22 09:58:59,698.698 INFO    ] 200
[2026-06-22 09:58:59,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:58:59,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:58:59,757.757 INFO    ] No update needed
[2026-06-22 09:58:59,759.759 INFO    ] Checking for camera pi updates...
[2026-06-22 09:58:59,795.795 INFO    ] 200
[2026-06-22 09:58:59,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:58:59,839.839 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:58:59,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:58:59,928.928 INFO    ] No camera update needed
[2026-06-22 09:58:59,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:58:59,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:58:59,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:58:59,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:59:01,988.988 INFO    ] ================================================
[2026-06-22 09:59:02,005.005 INFO    ] Launching Daemon at Mon Jun 22 09:59:01 IST 2026
[2026-06-22 09:59:02,018.018 INFO    ] ================================================
[2026-06-22 09:59:02,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:59:02
[2026-06-22 09:59:03,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:59:03,595.595 INFO    ] Initializing speech engine...
[2026-06-22 09:59:03,601.601 INFO    ] 2026-06-22 09:59:03
[2026-06-22 09:59:03,874.874 INFO    ] 2026-06-22 09:59:03
[2026-06-22 09:59:03,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:59:04,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:59:04,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:59:04,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:59:04,341.341 INFO    ] time= 22/06/2026 09:59:04
[2026-06-22 09:59:04,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:59:04,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:59:04,552.552 INFO    ] No existing commands found in stream
[2026-06-22 09:59:09,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:59:09,582.582 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-22 09:59:10,508.508 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:59:10,511.511 INFO    ] Checking for system updates...
[2026-06-22 09:59:10,551.551 INFO    ] 200
[2026-06-22 09:59:10,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:59:10,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:59:10,617.617 INFO    ] No update needed
[2026-06-22 09:59:10,620.620 INFO    ] Checking for camera pi updates...
[2026-06-22 09:59:10,655.655 INFO    ] 200
[2026-06-22 09:59:10,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:59:10,699.699 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:59:10,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:59:10,777.777 INFO    ] No camera update needed
[2026-06-22 09:59:10,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:59:10,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:59:10,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:59:10,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:59:12,835.835 INFO    ] ================================================
[2026-06-22 09:59:12,850.850 INFO    ] Launching Daemon at Mon Jun 22 09:59:12 IST 2026
[2026-06-22 09:59:12,861.861 INFO    ] ================================================
[2026-06-22 09:59:13,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:59:13
[2026-06-22 09:59:14,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:59:14,362.362 INFO    ] Initializing speech engine...
[2026-06-22 09:59:14,376.376 INFO    ] 2026-06-22 09:59:14
[2026-06-22 09:59:14,682.682 INFO    ] 2026-06-22 09:59:14
[2026-06-22 09:59:14,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:59:14,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:59:14,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:59:15,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:59:15,189.189 INFO    ] time= 22/06/2026 09:59:15
[2026-06-22 09:59:15,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:59:15,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:59:15,353.353 INFO    ] No existing commands found in stream
[2026-06-22 09:59:20,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:59:20,388.388 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-22 09:59:20,862.862 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 09:59:20,864.864 INFO    ] Checking for system updates...
[2026-06-22 09:59:20,885.885 INFO    ] 200
[2026-06-22 09:59:20,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:59:20,917.917 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:59:20,918.918 INFO    ] No update needed
[2026-06-22 09:59:20,920.920 INFO    ] Checking for camera pi updates...
[2026-06-22 09:59:20,945.945 INFO    ] 200
[2026-06-22 09:59:20,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:59:20,989.989 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:59:21,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:59:21,065.065 INFO    ] No camera update needed
[2026-06-22 09:59:21,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:59:21,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:59:21,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:59:21,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:59:23,124.124 INFO    ] ================================================
[2026-06-22 09:59:23,140.140 INFO    ] Launching Daemon at Mon Jun 22 09:59:23 IST 2026
[2026-06-22 09:59:23,151.151 INFO    ] ================================================
[2026-06-22 09:59:23,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:59:23
[2026-06-22 09:59:24,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:59:24,616.616 INFO    ] Initializing speech engine...
[2026-06-22 09:59:24,631.631 INFO    ] 2026-06-22 09:59:24
[2026-06-22 09:59:24,887.887 INFO    ] 2026-06-22 09:59:24
[2026-06-22 09:59:24,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:59:25,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:59:25,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:59:25,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:59:25,448.448 INFO    ] time= 22/06/2026 09:59:25
[2026-06-22 09:59:25,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:59:25,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:59:25,609.609 INFO    ] No existing commands found in stream
[2026-06-22 09:59:30,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:59:30,627.627 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-22 09:59:31,334.334 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 09:59:31,337.337 INFO    ] Checking for system updates...
[2026-06-22 09:59:31,376.376 INFO    ] 200
[2026-06-22 09:59:31,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:59:31,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:59:31,439.439 INFO    ] No update needed
[2026-06-22 09:59:31,441.441 INFO    ] Checking for camera pi updates...
[2026-06-22 09:59:31,479.479 INFO    ] 200
[2026-06-22 09:59:31,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:59:31,526.526 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:59:31,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:59:31,581.581 INFO    ] No camera update needed
[2026-06-22 09:59:31,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:59:31,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:59:31,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:59:31,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:59:33,648.648 INFO    ] ================================================
[2026-06-22 09:59:33,663.663 INFO    ] Launching Daemon at Mon Jun 22 09:59:33 IST 2026
[2026-06-22 09:59:33,673.673 INFO    ] ================================================
[2026-06-22 09:59:34,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:59:34
[2026-06-22 09:59:34,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:59:35,021.021 INFO    ] Initializing speech engine...
[2026-06-22 09:59:35,035.035 INFO    ] 2026-06-22 09:59:35
[2026-06-22 09:59:35,303.303 INFO    ] 2026-06-22 09:59:35
[2026-06-22 09:59:35,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:59:35,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:59:35,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:59:35,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:59:35,807.807 INFO    ] time= 22/06/2026 09:59:35
[2026-06-22 09:59:35,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:59:35,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:59:36,006.006 INFO    ] No existing commands found in stream
[2026-06-22 09:59:41,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:59:41,038.038 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-22 09:59:44,846.846 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 09:59:44,848.848 INFO    ] Checking for system updates...
[2026-06-22 09:59:44,869.869 INFO    ] 200
[2026-06-22 09:59:44,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:59:44,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:59:44,902.902 INFO    ] No update needed
[2026-06-22 09:59:44,903.903 INFO    ] Checking for camera pi updates...
[2026-06-22 09:59:44,922.922 INFO    ] 200
[2026-06-22 09:59:44,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:59:44,947.947 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:59:45,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 09:59:45,037.037 INFO    ] No camera update needed
[2026-06-22 09:59:45,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:59:45,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:59:45,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:59:45,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 09:59:47,093.093 INFO    ] ================================================
[2026-06-22 09:59:47,108.108 INFO    ] Launching Daemon at Mon Jun 22 09:59:47 IST 2026
[2026-06-22 09:59:47,119.119 INFO    ] ================================================
[2026-06-22 09:59:47,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 09:59:47
[2026-06-22 09:59:48,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 09:59:48,622.622 INFO    ] Initializing speech engine...
[2026-06-22 09:59:48,633.633 INFO    ] 2026-06-22 09:59:48
[2026-06-22 09:59:48,941.941 INFO    ] 2026-06-22 09:59:48
[2026-06-22 09:59:49,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 09:59:49,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 09:59:49,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 09:59:49,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 09:59:49,446.446 INFO    ] time= 22/06/2026 09:59:49
[2026-06-22 09:59:49,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 09:59:49,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-22 09:59:49,600.600 INFO    ] No existing commands found in stream
[2026-06-22 09:59:54,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 09:59:54,618.618 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-22 09:59:58,777.777 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 09:59:58,779.779 INFO    ] Checking for system updates...
[2026-06-22 09:59:58,800.800 INFO    ] 200
[2026-06-22 09:59:58,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:59:58,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:59:58,833.833 INFO    ] No update needed
[2026-06-22 09:59:58,835.835 INFO    ] Checking for camera pi updates...
[2026-06-22 09:59:58,855.855 INFO    ] 200
[2026-06-22 09:59:58,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 09:59:58,885.885 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 09:59:58,974.974 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 09:59:58,977.977 INFO    ] No camera update needed
[2026-06-22 09:59:58,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-22 09:59:58,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 09:59:58,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 09:59:58,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:00:01,033.033 INFO    ] ================================================
[2026-06-22 10:00:01,048.048 INFO    ] Launching Daemon at Mon Jun 22 10:00:01 IST 2026
[2026-06-22 10:00:01,059.059 INFO    ] ================================================
[2026-06-22 10:00:02,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:00:02
[2026-06-22 10:00:04,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:00:06,008.008 INFO    ] Initializing speech engine...
[2026-06-22 10:00:06,013.013 INFO    ] 2026-06-22 10:00:06
[2026-06-22 10:00:06,390.390 INFO    ] 2026-06-22 10:00:06
[2026-06-22 10:00:06,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:00:06,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:00:06,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:00:06,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:00:06,840.840 INFO    ] time= 22/06/2026 10:00:06
[2026-06-22 10:00:06,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:00:06,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:00:06,999.999 INFO    ] No existing commands found in stream
[2026-06-22 10:00:12,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:00:12,026.026 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-22 10:00:13,475.475 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:00:13,478.478 INFO    ] Checking for system updates...
[2026-06-22 10:00:13,515.515 INFO    ] 200
[2026-06-22 10:00:13,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:00:13,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:00:13,573.573 INFO    ] No update needed
[2026-06-22 10:00:13,576.576 INFO    ] Checking for camera pi updates...
[2026-06-22 10:00:13,610.610 INFO    ] 200
[2026-06-22 10:00:13,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:00:13,657.657 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:00:13,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:00:13,751.751 INFO    ] No camera update needed
[2026-06-22 10:00:13,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:00:13,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:00:13,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:00:13,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:00:15,806.806 INFO    ] ================================================
[2026-06-22 10:00:15,821.821 INFO    ] Launching Daemon at Mon Jun 22 10:00:15 IST 2026
[2026-06-22 10:00:15,831.831 INFO    ] ================================================
[2026-06-22 10:00:16,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:00:16
[2026-06-22 10:00:16,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:00:17,231.231 INFO    ] Initializing speech engine...
[2026-06-22 10:00:17,252.252 INFO    ] 2026-06-22 10:00:17
[2026-06-22 10:00:17,510.510 INFO    ] 2026-06-22 10:00:17
[2026-06-22 10:00:17,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:00:17,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:00:17,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:00:17,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:00:17,982.982 INFO    ] time= 22/06/2026 10:00:17
[2026-06-22 10:00:18,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:00:18,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:00:18,198.198 INFO    ] No existing commands found in stream
[2026-06-22 10:00:23,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:00:23,231.231 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-22 10:00:24,672.672 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:00:24,675.675 INFO    ] Checking for system updates...
[2026-06-22 10:00:24,711.711 INFO    ] 200
[2026-06-22 10:00:24,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:00:24,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:00:24,768.768 INFO    ] No update needed
[2026-06-22 10:00:24,771.771 INFO    ] Checking for camera pi updates...
[2026-06-22 10:00:24,805.805 INFO    ] 200
[2026-06-22 10:00:24,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:00:24,848.848 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:00:24,919.919 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:00:24,921.921 INFO    ] No camera update needed
[2026-06-22 10:00:24,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:00:24,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:00:24,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:00:24,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:00:26,978.978 INFO    ] ================================================
[2026-06-22 10:00:26,993.993 INFO    ] Launching Daemon at Mon Jun 22 10:00:26 IST 2026
[2026-06-22 10:00:27,003.003 INFO    ] ================================================
[2026-06-22 10:00:27,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:00:27
[2026-06-22 10:00:28,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:00:28,349.349 INFO    ] Initializing speech engine...
[2026-06-22 10:00:28,359.359 INFO    ] 2026-06-22 10:00:28
[2026-06-22 10:00:28,621.621 INFO    ] 2026-06-22 10:00:28
[2026-06-22 10:00:28,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:00:28,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:00:28,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:00:29,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:00:29,088.088 INFO    ] time= 22/06/2026 10:00:29
[2026-06-22 10:00:29,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:00:29,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:00:29,294.294 INFO    ] No existing commands found in stream
[2026-06-22 10:00:34,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:00:34,328.328 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-22 10:00:37,687.687 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:00:37,688.688 INFO    ] Checking for system updates...
[2026-06-22 10:00:37,709.709 INFO    ] 200
[2026-06-22 10:00:37,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:00:37,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:00:37,765.765 INFO    ] No update needed
[2026-06-22 10:00:37,768.768 INFO    ] Checking for camera pi updates...
[2026-06-22 10:00:37,802.802 INFO    ] 200
[2026-06-22 10:00:37,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:00:37,845.845 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:00:37,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:00:37,931.931 INFO    ] No camera update needed
[2026-06-22 10:00:37,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:00:37,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:00:37,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:00:37,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:00:39,987.987 INFO    ] ================================================
[2026-06-22 10:00:40,004.004 INFO    ] Launching Daemon at Mon Jun 22 10:00:39 IST 2026
[2026-06-22 10:00:40,015.015 INFO    ] ================================================
[2026-06-22 10:00:40,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:00:40
[2026-06-22 10:00:41,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:00:41,357.357 INFO    ] Initializing speech engine...
[2026-06-22 10:00:41,367.367 INFO    ] 2026-06-22 10:00:41
[2026-06-22 10:00:41,624.624 INFO    ] 2026-06-22 10:00:41
[2026-06-22 10:00:41,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:00:41,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:00:41,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:00:42,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:00:42,078.078 INFO    ] time= 22/06/2026 10:00:42
[2026-06-22 10:00:42,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:00:42,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:00:42,304.304 INFO    ] No existing commands found in stream
[2026-06-22 10:00:47,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:00:47,332.332 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-22 10:00:48,807.807 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:00:48,809.809 INFO    ] Checking for system updates...
[2026-06-22 10:00:48,841.841 INFO    ] 200
[2026-06-22 10:00:48,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:00:48,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:00:48,904.904 INFO    ] No update needed
[2026-06-22 10:00:48,906.906 INFO    ] Checking for camera pi updates...
[2026-06-22 10:00:48,943.943 INFO    ] 200
[2026-06-22 10:00:48,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:00:48,990.990 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:00:49,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:00:49,176.176 INFO    ] No camera update needed
[2026-06-22 10:00:49,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:00:49,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:00:49,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:00:49,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:00:51,232.232 INFO    ] ================================================
[2026-06-22 10:00:51,248.248 INFO    ] Launching Daemon at Mon Jun 22 10:00:51 IST 2026
[2026-06-22 10:00:51,259.259 INFO    ] ================================================
[2026-06-22 10:00:51,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:00:51
[2026-06-22 10:00:52,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:00:52,571.571 INFO    ] Initializing speech engine...
[2026-06-22 10:00:52,578.578 INFO    ] 2026-06-22 10:00:52
[2026-06-22 10:00:52,871.871 INFO    ] 2026-06-22 10:00:52
[2026-06-22 10:00:52,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:00:53,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:00:53,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:00:53,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:00:53,247.247 INFO    ] time= 22/06/2026 10:00:53
[2026-06-22 10:00:53,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:00:53,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:00:53,369.369 INFO    ] No existing commands found in stream
[2026-06-22 10:00:58,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:00:58,385.385 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-22 10:01:00,552.552 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:01:00,555.555 INFO    ] Checking for system updates...
[2026-06-22 10:01:00,591.591 INFO    ] 200
[2026-06-22 10:01:00,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:01:00,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:01:00,660.660 INFO    ] No update needed
[2026-06-22 10:01:00,662.662 INFO    ] Checking for camera pi updates...
[2026-06-22 10:01:00,695.695 INFO    ] 200
[2026-06-22 10:01:00,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:01:00,739.739 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:01:00,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:01:00,810.810 INFO    ] No camera update needed
[2026-06-22 10:01:00,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:01:00,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:01:00,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:01:00,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:01:02,867.867 INFO    ] ================================================
[2026-06-22 10:01:02,885.885 INFO    ] Launching Daemon at Mon Jun 22 10:01:02 IST 2026
[2026-06-22 10:01:02,899.899 INFO    ] ================================================
[2026-06-22 10:01:03,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:01:03
[2026-06-22 10:01:04,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:01:04,386.386 INFO    ] Initializing speech engine...
[2026-06-22 10:01:04,402.402 INFO    ] 2026-06-22 10:01:04
[2026-06-22 10:01:04,673.673 INFO    ] 2026-06-22 10:01:04
[2026-06-22 10:01:04,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:01:04,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:01:04,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:01:05,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:01:05,087.087 INFO    ] time= 22/06/2026 10:01:05
[2026-06-22 10:01:05,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:01:05,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:01:05,242.242 INFO    ] No existing commands found in stream
[2026-06-22 10:01:10,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:01:10,272.272 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-22 10:01:14,293.293 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:01:14,296.296 INFO    ] Checking for system updates...
[2026-06-22 10:01:14,332.332 INFO    ] 200
[2026-06-22 10:01:14,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:01:14,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:01:14,402.402 INFO    ] No update needed
[2026-06-22 10:01:14,404.404 INFO    ] Checking for camera pi updates...
[2026-06-22 10:01:14,438.438 INFO    ] 200
[2026-06-22 10:01:14,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:01:14,482.482 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:01:14,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:01:14,582.582 INFO    ] No camera update needed
[2026-06-22 10:01:14,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:01:14,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:01:14,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:01:14,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:01:16,636.636 INFO    ] ================================================
[2026-06-22 10:01:16,653.653 INFO    ] Launching Daemon at Mon Jun 22 10:01:16 IST 2026
[2026-06-22 10:01:16,664.664 INFO    ] ================================================
[2026-06-22 10:01:17,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:01:17
[2026-06-22 10:01:17,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:01:18,136.136 INFO    ] Initializing speech engine...
[2026-06-22 10:01:18,143.143 INFO    ] 2026-06-22 10:01:18
[2026-06-22 10:01:18,404.404 INFO    ] 2026-06-22 10:01:18
[2026-06-22 10:01:18,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:01:18,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:01:18,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:01:18,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:01:18,948.948 INFO    ] time= 22/06/2026 10:01:18
[2026-06-22 10:01:18,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:01:18,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:01:19,089.089 INFO    ] No existing commands found in stream
[2026-06-22 10:01:24,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:01:24,116.116 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-22 10:01:26,852.852 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:01:26,855.855 INFO    ] Checking for system updates...
[2026-06-22 10:01:26,894.894 INFO    ] 200
[2026-06-22 10:01:26,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:01:26,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:01:26,954.954 INFO    ] No update needed
[2026-06-22 10:01:26,957.957 INFO    ] Checking for camera pi updates...
[2026-06-22 10:01:26,991.991 INFO    ] 200
[2026-06-22 10:01:26,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:01:27,034.034 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:01:27,125.125 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:01:27,128.128 INFO    ] No camera update needed
[2026-06-22 10:01:27,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:01:27,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:01:27,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:01:27,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:01:29,188.188 INFO    ] ================================================
[2026-06-22 10:01:29,203.203 INFO    ] Launching Daemon at Mon Jun 22 10:01:29 IST 2026
[2026-06-22 10:01:29,215.215 INFO    ] ================================================
[2026-06-22 10:01:29,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:01:29
[2026-06-22 10:01:30,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:01:30,601.601 INFO    ] Initializing speech engine...
[2026-06-22 10:01:30,609.609 INFO    ] 2026-06-22 10:01:30
[2026-06-22 10:01:30,871.871 INFO    ] 2026-06-22 10:01:30
[2026-06-22 10:01:30,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:01:31,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:01:31,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:01:31,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:01:31,331.331 INFO    ] time= 22/06/2026 10:01:31
[2026-06-22 10:01:31,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:01:31,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:01:31,540.540 INFO    ] No existing commands found in stream
[2026-06-22 10:01:36,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:01:36,571.571 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-22 10:01:39,056.056 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:01:39,058.058 INFO    ] Checking for system updates...
[2026-06-22 10:01:39,079.079 INFO    ] 200
[2026-06-22 10:01:39,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:01:39,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:01:39,116.116 INFO    ] No update needed
[2026-06-22 10:01:39,117.117 INFO    ] Checking for camera pi updates...
[2026-06-22 10:01:39,137.137 INFO    ] 200
[2026-06-22 10:01:39,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:01:39,162.162 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:01:39,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:01:39,251.251 INFO    ] No camera update needed
[2026-06-22 10:01:39,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:01:39,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:01:39,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:01:39,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:01:41,311.311 INFO    ] ================================================
[2026-06-22 10:01:41,326.326 INFO    ] Launching Daemon at Mon Jun 22 10:01:41 IST 2026
[2026-06-22 10:01:41,337.337 INFO    ] ================================================
[2026-06-22 10:01:41,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:01:41
[2026-06-22 10:01:42,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:01:42,712.712 INFO    ] Initializing speech engine...
[2026-06-22 10:01:42,722.722 INFO    ] 2026-06-22 10:01:42
[2026-06-22 10:01:42,977.977 INFO    ] 2026-06-22 10:01:42
[2026-06-22 10:01:43,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:01:43,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:01:43,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:01:43,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:01:43,527.527 INFO    ] time= 22/06/2026 10:01:43
[2026-06-22 10:01:43,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:01:43,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:01:43,680.680 INFO    ] No existing commands found in stream
[2026-06-22 10:01:48,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:01:48,698.698 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-22 10:01:51,483.483 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:01:51,487.487 INFO    ] Checking for system updates...
[2026-06-22 10:01:51,523.523 INFO    ] 200
[2026-06-22 10:01:51,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:01:51,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:01:51,582.582 INFO    ] No update needed
[2026-06-22 10:01:51,584.584 INFO    ] Checking for camera pi updates...
[2026-06-22 10:01:51,619.619 INFO    ] 200
[2026-06-22 10:01:51,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:01:51,664.664 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:01:51,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:01:51,756.756 INFO    ] No camera update needed
[2026-06-22 10:01:51,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:01:51,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:01:51,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:01:51,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:01:53,815.815 INFO    ] ================================================
[2026-06-22 10:01:53,831.831 INFO    ] Launching Daemon at Mon Jun 22 10:01:53 IST 2026
[2026-06-22 10:01:53,842.842 INFO    ] ================================================
[2026-06-22 10:01:54,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:01:54
[2026-06-22 10:01:55,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:01:55,308.308 INFO    ] Initializing speech engine...
[2026-06-22 10:01:55,314.314 INFO    ] 2026-06-22 10:01:55
[2026-06-22 10:01:55,576.576 INFO    ] 2026-06-22 10:01:55
[2026-06-22 10:01:55,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:01:55,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:01:55,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:01:56,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:01:56,074.074 INFO    ] time= 22/06/2026 10:01:56
[2026-06-22 10:01:56,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:01:56,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:01:56,228.228 INFO    ] No existing commands found in stream
[2026-06-22 10:02:01,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:02:01,267.267 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-22 10:02:02,072.072 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:02:02,079.079 INFO    ] Checking for system updates...
[2026-06-22 10:02:02,124.124 INFO    ] 200
[2026-06-22 10:02:02,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:02:02,194.194 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:02:02,197.197 INFO    ] No update needed
[2026-06-22 10:02:02,201.201 INFO    ] Checking for camera pi updates...
[2026-06-22 10:02:02,239.239 INFO    ] 200
[2026-06-22 10:02:02,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:02:02,290.290 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:02:02,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:02:02,353.353 INFO    ] No camera update needed
[2026-06-22 10:02:02,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:02:02,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:02:02,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:02:02,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:02:04,416.416 INFO    ] ================================================
[2026-06-22 10:02:04,431.431 INFO    ] Launching Daemon at Mon Jun 22 10:02:04 IST 2026
[2026-06-22 10:02:04,443.443 INFO    ] ================================================
[2026-06-22 10:02:05,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:02:05
[2026-06-22 10:02:05,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:02:06,029.029 INFO    ] Initializing speech engine...
[2026-06-22 10:02:06,043.043 INFO    ] 2026-06-22 10:02:06
[2026-06-22 10:02:06,283.283 INFO    ] 2026-06-22 10:02:06
[2026-06-22 10:02:06,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:02:06,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:02:06,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:02:06,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:02:06,721.721 INFO    ] time= 22/06/2026 10:02:06
[2026-06-22 10:02:06,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:02:06,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:02:06,974.974 INFO    ] No existing commands found in stream
[2026-06-22 10:02:12,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:02:12,009.009 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-22 10:02:15,405.405 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:02:15,408.408 INFO    ] Checking for system updates...
[2026-06-22 10:02:15,446.446 INFO    ] 200
[2026-06-22 10:02:15,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:02:15,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:02:15,506.506 INFO    ] No update needed
[2026-06-22 10:02:15,508.508 INFO    ] Checking for camera pi updates...
[2026-06-22 10:02:15,543.543 INFO    ] 200
[2026-06-22 10:02:15,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:02:15,588.588 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:02:15,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:02:15,672.672 INFO    ] No camera update needed
[2026-06-22 10:02:15,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:02:15,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:02:15,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:02:15,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:02:17,732.732 INFO    ] ================================================
[2026-06-22 10:02:17,748.748 INFO    ] Launching Daemon at Mon Jun 22 10:02:17 IST 2026
[2026-06-22 10:02:17,759.759 INFO    ] ================================================
[2026-06-22 10:02:18,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:02:18
[2026-06-22 10:02:18,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:02:19,113.113 INFO    ] Initializing speech engine...
[2026-06-22 10:02:19,122.122 INFO    ] 2026-06-22 10:02:19
[2026-06-22 10:02:19,414.414 INFO    ] 2026-06-22 10:02:19
[2026-06-22 10:02:19,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:02:19,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:02:19,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:02:19,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:02:19,799.799 INFO    ] time= 22/06/2026 10:02:19
[2026-06-22 10:02:19,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:02:19,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:02:20,001.001 INFO    ] No existing commands found in stream
[2026-06-22 10:02:25,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:02:25,013.013 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-22 10:02:27,787.787 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:02:27,789.789 INFO    ] Checking for system updates...
[2026-06-22 10:02:27,809.809 INFO    ] 200
[2026-06-22 10:02:27,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:02:27,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:02:27,842.842 INFO    ] No update needed
[2026-06-22 10:02:27,843.843 INFO    ] Checking for camera pi updates...
[2026-06-22 10:02:27,865.865 INFO    ] 200
[2026-06-22 10:02:27,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:02:27,891.891 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:02:27,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:02:27,972.972 INFO    ] No camera update needed
[2026-06-22 10:02:27,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:02:27,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:02:27,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:02:27,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:02:30,027.027 INFO    ] ================================================
[2026-06-22 10:02:30,042.042 INFO    ] Launching Daemon at Mon Jun 22 10:02:30 IST 2026
[2026-06-22 10:02:30,053.053 INFO    ] ================================================
[2026-06-22 10:02:30,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:02:30
[2026-06-22 10:02:31,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:02:31,407.407 INFO    ] Initializing speech engine...
[2026-06-22 10:02:31,421.421 INFO    ] 2026-06-22 10:02:31
[2026-06-22 10:02:31,717.717 INFO    ] 2026-06-22 10:02:31
[2026-06-22 10:02:31,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:02:32,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:02:32,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:02:32,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:02:32,316.316 INFO    ] time= 22/06/2026 10:02:32
[2026-06-22 10:02:32,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:02:32,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:02:32,501.501 INFO    ] No existing commands found in stream
[2026-06-22 10:02:37,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:02:37,539.539 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-22 10:02:39,215.215 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:02:39,217.217 INFO    ] Checking for system updates...
[2026-06-22 10:02:39,238.238 INFO    ] 200
[2026-06-22 10:02:39,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:02:39,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:02:39,273.273 INFO    ] No update needed
[2026-06-22 10:02:39,274.274 INFO    ] Checking for camera pi updates...
[2026-06-22 10:02:39,297.297 INFO    ] 200
[2026-06-22 10:02:39,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:02:39,339.339 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:02:39,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:02:39,403.403 INFO    ] No camera update needed
[2026-06-22 10:02:39,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:02:39,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:02:39,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:02:39,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:02:41,459.459 INFO    ] ================================================
[2026-06-22 10:02:41,475.475 INFO    ] Launching Daemon at Mon Jun 22 10:02:41 IST 2026
[2026-06-22 10:02:41,486.486 INFO    ] ================================================
[2026-06-22 10:02:42,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:02:42
[2026-06-22 10:02:42,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:02:42,994.994 INFO    ] Initializing speech engine...
[2026-06-22 10:02:43,006.006 INFO    ] 2026-06-22 10:02:42
[2026-06-22 10:02:43,279.279 INFO    ] 2026-06-22 10:02:43
[2026-06-22 10:02:43,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:02:43,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:02:43,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:02:43,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:02:43,850.850 INFO    ] time= 22/06/2026 10:02:43
[2026-06-22 10:02:43,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:02:43,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:02:44,009.009 INFO    ] No existing commands found in stream
[2026-06-22 10:02:49,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:02:49,033.033 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-22 10:02:51,698.698 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:02:51,699.699 INFO    ] Checking for system updates...
[2026-06-22 10:02:51,722.722 INFO    ] 200
[2026-06-22 10:02:51,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:02:51,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:02:51,756.756 INFO    ] No update needed
[2026-06-22 10:02:51,758.758 INFO    ] Checking for camera pi updates...
[2026-06-22 10:02:51,777.777 INFO    ] 200
[2026-06-22 10:02:51,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:02:51,803.803 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:02:51,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:02:51,960.960 INFO    ] No camera update needed
[2026-06-22 10:02:51,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:02:51,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:02:51,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:02:51,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:02:54,019.019 INFO    ] ================================================
[2026-06-22 10:02:54,035.035 INFO    ] Launching Daemon at Mon Jun 22 10:02:54 IST 2026
[2026-06-22 10:02:54,046.046 INFO    ] ================================================
[2026-06-22 10:02:54,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:02:54
[2026-06-22 10:02:55,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:02:55,467.467 INFO    ] Initializing speech engine...
[2026-06-22 10:02:55,475.475 INFO    ] 2026-06-22 10:02:55
[2026-06-22 10:02:55,736.736 INFO    ] 2026-06-22 10:02:55
[2026-06-22 10:02:55,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:02:55,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:02:56,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:02:56,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:02:56,215.215 INFO    ] time= 22/06/2026 10:02:56
[2026-06-22 10:02:56,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:02:56,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:02:56,437.437 INFO    ] No existing commands found in stream
[2026-06-22 10:03:01,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:03:01,474.474 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-22 10:03:03,226.226 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:03:03,228.228 INFO    ] Checking for system updates...
[2026-06-22 10:03:03,264.264 INFO    ] 200
[2026-06-22 10:03:03,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:03:03,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:03:03,324.324 INFO    ] No update needed
[2026-06-22 10:03:03,326.326 INFO    ] Checking for camera pi updates...
[2026-06-22 10:03:03,360.360 INFO    ] 200
[2026-06-22 10:03:03,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:03:03,404.404 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:03:03,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:03:03,490.490 INFO    ] No camera update needed
[2026-06-22 10:03:03,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:03:03,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:03:03,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:03:03,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:03:05,546.546 INFO    ] ================================================
[2026-06-22 10:03:05,562.562 INFO    ] Launching Daemon at Mon Jun 22 10:03:05 IST 2026
[2026-06-22 10:03:05,573.573 INFO    ] ================================================
[2026-06-22 10:03:06,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:03:06
[2026-06-22 10:03:06,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:03:06,928.928 INFO    ] Initializing speech engine...
[2026-06-22 10:03:06,936.936 INFO    ] 2026-06-22 10:03:06
[2026-06-22 10:03:07,228.228 INFO    ] 2026-06-22 10:03:07
[2026-06-22 10:03:07,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:03:07,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:03:07,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:03:07,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:03:07,645.645 INFO    ] time= 22/06/2026 10:03:07
[2026-06-22 10:03:07,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:03:07,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:03:07,833.833 INFO    ] No existing commands found in stream
[2026-06-22 10:03:12,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:03:12,867.867 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-22 10:03:13,713.713 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:03:13,716.716 INFO    ] Checking for system updates...
[2026-06-22 10:03:13,757.757 INFO    ] 200
[2026-06-22 10:03:13,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:03:13,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:03:13,814.814 INFO    ] No update needed
[2026-06-22 10:03:13,816.816 INFO    ] Checking for camera pi updates...
[2026-06-22 10:03:13,849.849 INFO    ] 200
[2026-06-22 10:03:13,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:03:13,893.893 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:03:13,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:03:13,971.971 INFO    ] No camera update needed
[2026-06-22 10:03:13,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:03:13,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:03:13,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:03:13,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:03:16,027.027 INFO    ] ================================================
[2026-06-22 10:03:16,043.043 INFO    ] Launching Daemon at Mon Jun 22 10:03:16 IST 2026
[2026-06-22 10:03:16,054.054 INFO    ] ================================================
[2026-06-22 10:03:16,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:03:16
[2026-06-22 10:03:17,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:03:17,432.432 INFO    ] Initializing speech engine...
[2026-06-22 10:03:17,438.438 INFO    ] 2026-06-22 10:03:17
[2026-06-22 10:03:17,688.688 INFO    ] 2026-06-22 10:03:17
[2026-06-22 10:03:17,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:03:17,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:03:17,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:03:18,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:03:18,213.213 INFO    ] time= 22/06/2026 10:03:18
[2026-06-22 10:03:18,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:03:18,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:03:18,388.388 INFO    ] No existing commands found in stream
[2026-06-22 10:03:23,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:03:23,418.418 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-22 10:03:24,137.137 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:03:24,139.139 INFO    ] Checking for system updates...
[2026-06-22 10:03:24,160.160 INFO    ] 200
[2026-06-22 10:03:24,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:03:24,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:03:24,193.193 INFO    ] No update needed
[2026-06-22 10:03:24,196.196 INFO    ] Checking for camera pi updates...
[2026-06-22 10:03:24,231.231 INFO    ] 200
[2026-06-22 10:03:24,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:03:24,275.275 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:03:24,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:03:24,374.374 INFO    ] No camera update needed
[2026-06-22 10:03:24,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:03:24,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:03:24,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:03:24,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:03:26,435.435 INFO    ] ================================================
[2026-06-22 10:03:26,450.450 INFO    ] Launching Daemon at Mon Jun 22 10:03:26 IST 2026
[2026-06-22 10:03:26,461.461 INFO    ] ================================================
[2026-06-22 10:03:27,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:03:27
[2026-06-22 10:03:27,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:03:28,004.004 INFO    ] Initializing speech engine...
[2026-06-22 10:03:28,013.013 INFO    ] 2026-06-22 10:03:28
[2026-06-22 10:03:28,284.284 INFO    ] 2026-06-22 10:03:28
[2026-06-22 10:03:28,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:03:28,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:03:28,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:03:28,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:03:28,841.841 INFO    ] time= 22/06/2026 10:03:28
[2026-06-22 10:03:28,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:03:28,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:03:28,995.995 INFO    ] No existing commands found in stream
[2026-06-22 10:03:34,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:03:34,014.014 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-22 10:03:38,024.024 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:03:38,027.027 INFO    ] Checking for system updates...
[2026-06-22 10:03:38,064.064 INFO    ] 200
[2026-06-22 10:03:38,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:03:38,128.128 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:03:38,131.131 INFO    ] No update needed
[2026-06-22 10:03:38,133.133 INFO    ] Checking for camera pi updates...
[2026-06-22 10:03:38,172.172 INFO    ] 200
[2026-06-22 10:03:38,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:03:38,221.221 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:03:38,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:03:38,281.281 INFO    ] No camera update needed
[2026-06-22 10:03:38,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:03:38,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:03:38,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:03:38,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:03:40,339.339 INFO    ] ================================================
[2026-06-22 10:03:40,354.354 INFO    ] Launching Daemon at Mon Jun 22 10:03:40 IST 2026
[2026-06-22 10:03:40,365.365 INFO    ] ================================================
[2026-06-22 10:03:40,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:03:40
[2026-06-22 10:03:41,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:03:41,817.817 INFO    ] Initializing speech engine...
[2026-06-22 10:03:41,826.826 INFO    ] 2026-06-22 10:03:41
[2026-06-22 10:03:42,040.040 INFO    ] 2026-06-22 10:03:42
[2026-06-22 10:03:42,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:03:42,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:03:42,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:03:42,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:03:42,539.539 INFO    ] time= 22/06/2026 10:03:42
[2026-06-22 10:03:42,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:03:42,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:03:42,735.735 INFO    ] No existing commands found in stream
[2026-06-22 10:03:47,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:03:47,750.750 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-22 10:03:50,948.948 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:03:50,951.951 INFO    ] Checking for system updates...
[2026-06-22 10:03:50,988.988 INFO    ] 200
[2026-06-22 10:03:50,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:03:51,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:03:51,050.050 INFO    ] No update needed
[2026-06-22 10:03:51,053.053 INFO    ] Checking for camera pi updates...
[2026-06-22 10:03:51,088.088 INFO    ] 200
[2026-06-22 10:03:51,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:03:51,133.133 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:03:51,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:03:51,209.209 INFO    ] No camera update needed
[2026-06-22 10:03:51,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:03:51,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:03:51,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:03:51,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:03:53,270.270 INFO    ] ================================================
[2026-06-22 10:03:53,285.285 INFO    ] Launching Daemon at Mon Jun 22 10:03:53 IST 2026
[2026-06-22 10:03:53,296.296 INFO    ] ================================================
[2026-06-22 10:03:53,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:03:53
[2026-06-22 10:03:54,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:03:54,658.658 INFO    ] Initializing speech engine...
[2026-06-22 10:03:54,667.667 INFO    ] 2026-06-22 10:03:54
[2026-06-22 10:03:54,962.962 INFO    ] 2026-06-22 10:03:54
[2026-06-22 10:03:55,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:03:55,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:03:55,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:03:55,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:03:55,565.565 INFO    ] time= 22/06/2026 10:03:55
[2026-06-22 10:03:55,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:03:55,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:03:55,738.738 INFO    ] No existing commands found in stream
[2026-06-22 10:04:00,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:04:00,766.766 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-22 10:04:04,501.501 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:04:04,504.504 INFO    ] Checking for system updates...
[2026-06-22 10:04:04,540.540 INFO    ] 200
[2026-06-22 10:04:04,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:04:04,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:04:04,598.598 INFO    ] No update needed
[2026-06-22 10:04:04,600.600 INFO    ] Checking for camera pi updates...
[2026-06-22 10:04:04,634.634 INFO    ] 200
[2026-06-22 10:04:04,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:04:04,678.678 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:04:04,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:04:04,763.763 INFO    ] No camera update needed
[2026-06-22 10:04:04,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:04:04,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:04:04,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:04:04,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:04:06,820.820 INFO    ] ================================================
[2026-06-22 10:04:06,835.835 INFO    ] Launching Daemon at Mon Jun 22 10:04:06 IST 2026
[2026-06-22 10:04:06,846.846 INFO    ] ================================================
[2026-06-22 10:04:07,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:04:07
[2026-06-22 10:04:07,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:04:08,211.211 INFO    ] Initializing speech engine...
[2026-06-22 10:04:08,217.217 INFO    ] 2026-06-22 10:04:08
[2026-06-22 10:04:08,516.516 INFO    ] 2026-06-22 10:04:08
[2026-06-22 10:04:08,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:04:08,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:04:08,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:04:08,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:04:08,935.935 INFO    ] time= 22/06/2026 10:04:08
[2026-06-22 10:04:08,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:04:08,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:04:09,021.021 INFO    ] No existing commands found in stream
[2026-06-22 10:04:14,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:04:14,054.054 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-22 10:04:14,796.796 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:04:14,798.798 INFO    ] Checking for system updates...
[2026-06-22 10:04:14,818.818 INFO    ] 200
[2026-06-22 10:04:14,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:04:14,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:04:14,856.856 INFO    ] No update needed
[2026-06-22 10:04:14,858.858 INFO    ] Checking for camera pi updates...
[2026-06-22 10:04:14,892.892 INFO    ] 200
[2026-06-22 10:04:14,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:04:14,936.936 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:04:15,023.023 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:04:15,026.026 INFO    ] No camera update needed
[2026-06-22 10:04:15,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:04:15,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:04:15,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:04:15,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:04:17,082.082 INFO    ] ================================================
[2026-06-22 10:04:17,097.097 INFO    ] Launching Daemon at Mon Jun 22 10:04:17 IST 2026
[2026-06-22 10:04:17,108.108 INFO    ] ================================================
[2026-06-22 10:04:17,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:04:17
[2026-06-22 10:04:18,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:04:18,439.439 INFO    ] Initializing speech engine...
[2026-06-22 10:04:18,465.465 INFO    ] 2026-06-22 10:04:18
[2026-06-22 10:04:18,737.737 INFO    ] 2026-06-22 10:04:18
[2026-06-22 10:04:18,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:04:19,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:04:19,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:04:19,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:04:19,287.287 INFO    ] time= 22/06/2026 10:04:19
[2026-06-22 10:04:19,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:04:19,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:04:19,536.536 INFO    ] No existing commands found in stream
[2026-06-22 10:04:24,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:04:24,563.563 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-22 10:04:27,431.431 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:04:27,433.433 INFO    ] Checking for system updates...
[2026-06-22 10:04:27,469.469 INFO    ] 200
[2026-06-22 10:04:27,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:04:27,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:04:27,532.532 INFO    ] No update needed
[2026-06-22 10:04:27,534.534 INFO    ] Checking for camera pi updates...
[2026-06-22 10:04:27,568.568 INFO    ] 200
[2026-06-22 10:04:27,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:04:27,611.611 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:04:27,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:04:27,692.692 INFO    ] No camera update needed
[2026-06-22 10:04:27,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:04:27,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:04:27,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:04:27,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:04:29,748.748 INFO    ] ================================================
[2026-06-22 10:04:29,763.763 INFO    ] Launching Daemon at Mon Jun 22 10:04:29 IST 2026
[2026-06-22 10:04:29,774.774 INFO    ] ================================================
[2026-06-22 10:04:30,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:04:30
[2026-06-22 10:04:30,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:04:31,210.210 INFO    ] Initializing speech engine...
[2026-06-22 10:04:31,233.233 INFO    ] 2026-06-22 10:04:31
[2026-06-22 10:04:31,513.513 INFO    ] 2026-06-22 10:04:31
[2026-06-22 10:04:31,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:04:31,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:04:31,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:04:31,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:04:32,048.048 INFO    ] time= 22/06/2026 10:04:31
[2026-06-22 10:04:32,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:04:32,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:04:32,241.241 INFO    ] No existing commands found in stream
[2026-06-22 10:04:37,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:04:37,267.267 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-22 10:04:39,042.042 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:04:39,043.043 INFO    ] Checking for system updates...
[2026-06-22 10:04:39,065.065 INFO    ] 200
[2026-06-22 10:04:39,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:04:39,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:04:39,122.122 INFO    ] No update needed
[2026-06-22 10:04:39,126.126 INFO    ] Checking for camera pi updates...
[2026-06-22 10:04:39,160.160 INFO    ] 200
[2026-06-22 10:04:39,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:04:39,203.203 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:04:39,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:04:39,289.289 INFO    ] No camera update needed
[2026-06-22 10:04:39,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:04:39,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:04:39,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:04:39,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:04:41,345.345 INFO    ] ================================================
[2026-06-22 10:04:41,361.361 INFO    ] Launching Daemon at Mon Jun 22 10:04:41 IST 2026
[2026-06-22 10:04:41,372.372 INFO    ] ================================================
[2026-06-22 10:04:41,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:04:41
[2026-06-22 10:04:42,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:04:42,766.766 INFO    ] Initializing speech engine...
[2026-06-22 10:04:42,772.772 INFO    ] 2026-06-22 10:04:42
[2026-06-22 10:04:43,041.041 INFO    ] 2026-06-22 10:04:43
[2026-06-22 10:04:43,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:04:43,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:04:43,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:04:43,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:04:43,420.420 INFO    ] time= 22/06/2026 10:04:43
[2026-06-22 10:04:43,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:04:43,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:04:43,548.548 INFO    ] No existing commands found in stream
[2026-06-22 10:04:48,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:04:48,566.566 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-22 10:04:50,598.598 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:04:50,601.601 INFO    ] Checking for system updates...
[2026-06-22 10:04:50,637.637 INFO    ] 200
[2026-06-22 10:04:50,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:04:50,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:04:50,697.697 INFO    ] No update needed
[2026-06-22 10:04:50,704.704 INFO    ] Checking for camera pi updates...
[2026-06-22 10:04:50,738.738 INFO    ] 200
[2026-06-22 10:04:50,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:04:50,782.782 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:04:50,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:04:50,889.889 INFO    ] No camera update needed
[2026-06-22 10:04:50,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:04:50,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:04:50,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:04:50,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:04:52,946.946 INFO    ] ================================================
[2026-06-22 10:04:52,961.961 INFO    ] Launching Daemon at Mon Jun 22 10:04:52 IST 2026
[2026-06-22 10:04:52,972.972 INFO    ] ================================================
[2026-06-22 10:04:53,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:04:53
[2026-06-22 10:04:54,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:04:54,542.542 INFO    ] Initializing speech engine...
[2026-06-22 10:04:54,557.557 INFO    ] 2026-06-22 10:04:54
[2026-06-22 10:04:54,848.848 INFO    ] 2026-06-22 10:04:54
[2026-06-22 10:04:54,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:04:55,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:04:55,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:04:55,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:04:55,313.313 INFO    ] time= 22/06/2026 10:04:55
[2026-06-22 10:04:55,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:04:55,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:04:55,530.530 INFO    ] No existing commands found in stream
[2026-06-22 10:05:00,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:05:00,564.564 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-22 10:05:01,153.153 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:05:01,159.159 INFO    ] Checking for system updates...
[2026-06-22 10:05:01,250.250 INFO    ] 200
[2026-06-22 10:05:01,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:05:01,556.556 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:05:01,560.560 INFO    ] No update needed
[2026-06-22 10:05:01,565.565 INFO    ] Checking for camera pi updates...
[2026-06-22 10:05:01,680.680 INFO    ] 200
[2026-06-22 10:05:01,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:05:01,750.750 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:05:01,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:05:01,923.923 INFO    ] No camera update needed
[2026-06-22 10:05:01,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:05:01,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:05:01,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:05:01,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:05:03,985.985 INFO    ] ================================================
[2026-06-22 10:05:04,003.003 INFO    ] Launching Daemon at Mon Jun 22 10:05:03 IST 2026
[2026-06-22 10:05:04,014.014 INFO    ] ================================================
[2026-06-22 10:05:04,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:05:04
[2026-06-22 10:05:05,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:05:05,526.526 INFO    ] Initializing speech engine...
[2026-06-22 10:05:05,532.532 INFO    ] 2026-06-22 10:05:05
[2026-06-22 10:05:05,827.827 INFO    ] 2026-06-22 10:05:05
[2026-06-22 10:05:05,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:05:06,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:05:06,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:05:06,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:05:06,248.248 INFO    ] time= 22/06/2026 10:05:06
[2026-06-22 10:05:06,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:05:06,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:05:06,401.401 INFO    ] No existing commands found in stream
[2026-06-22 10:05:11,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:05:11,435.435 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-22 10:05:13,704.704 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:05:13,706.706 INFO    ] Checking for system updates...
[2026-06-22 10:05:13,726.726 INFO    ] 200
[2026-06-22 10:05:13,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:05:13,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:05:13,759.759 INFO    ] No update needed
[2026-06-22 10:05:13,761.761 INFO    ] Checking for camera pi updates...
[2026-06-22 10:05:13,793.793 INFO    ] 200
[2026-06-22 10:05:13,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:05:13,838.838 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:05:13,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:05:13,926.926 INFO    ] No camera update needed
[2026-06-22 10:05:13,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:05:13,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:05:13,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:05:13,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:05:15,984.984 INFO    ] ================================================
[2026-06-22 10:05:16,999.999 INFO    ] Launching Daemon at Mon Jun 22 10:05:15 IST 2026
[2026-06-22 10:05:16,010.010 INFO    ] ================================================
[2026-06-22 10:05:16,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:05:16
[2026-06-22 10:05:17,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:05:17,366.366 INFO    ] Initializing speech engine...
[2026-06-22 10:05:17,375.375 INFO    ] 2026-06-22 10:05:17
[2026-06-22 10:05:17,670.670 INFO    ] 2026-06-22 10:05:17
[2026-06-22 10:05:17,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:05:17,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:05:17,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:05:18,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:05:18,197.197 INFO    ] time= 22/06/2026 10:05:18
[2026-06-22 10:05:18,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:05:18,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:05:18,436.436 INFO    ] No existing commands found in stream
[2026-06-22 10:05:23,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:05:23,457.457 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-22 10:05:27,698.698 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:05:27,701.701 INFO    ] Checking for system updates...
[2026-06-22 10:05:27,736.736 INFO    ] 200
[2026-06-22 10:05:27,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:05:27,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:05:27,793.793 INFO    ] No update needed
[2026-06-22 10:05:27,796.796 INFO    ] Checking for camera pi updates...
[2026-06-22 10:05:27,830.830 INFO    ] 200
[2026-06-22 10:05:27,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:05:27,872.872 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:05:27,953.953 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:05:27,956.956 INFO    ] No camera update needed
[2026-06-22 10:05:27,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:05:27,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:05:27,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:05:27,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:05:30,011.011 INFO    ] ================================================
[2026-06-22 10:05:30,027.027 INFO    ] Launching Daemon at Mon Jun 22 10:05:30 IST 2026
[2026-06-22 10:05:30,038.038 INFO    ] ================================================
[2026-06-22 10:05:30,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:05:30
[2026-06-22 10:05:31,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:05:31,514.514 INFO    ] Initializing speech engine...
[2026-06-22 10:05:31,528.528 INFO    ] 2026-06-22 10:05:31
[2026-06-22 10:05:31,805.805 INFO    ] 2026-06-22 10:05:31
[2026-06-22 10:05:31,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:05:32,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:05:32,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:05:32,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:05:32,189.189 INFO    ] time= 22/06/2026 10:05:32
[2026-06-22 10:05:32,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:05:32,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:05:32,378.378 INFO    ] No existing commands found in stream
[2026-06-22 10:05:37,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:05:37,403.403 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-22 10:05:38,033.033 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:05:38,035.035 INFO    ] Checking for system updates...
[2026-06-22 10:05:38,072.072 INFO    ] 200
[2026-06-22 10:05:38,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:05:38,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:05:38,129.129 INFO    ] No update needed
[2026-06-22 10:05:38,132.132 INFO    ] Checking for camera pi updates...
[2026-06-22 10:05:38,165.165 INFO    ] 200
[2026-06-22 10:05:38,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:05:38,208.208 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:05:38,308.308 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:05:38,310.310 INFO    ] No camera update needed
[2026-06-22 10:05:38,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:05:38,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:05:38,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:05:38,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:05:40,367.367 INFO    ] ================================================
[2026-06-22 10:05:40,381.381 INFO    ] Launching Daemon at Mon Jun 22 10:05:40 IST 2026
[2026-06-22 10:05:40,392.392 INFO    ] ================================================
[2026-06-22 10:05:40,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:05:40
[2026-06-22 10:05:41,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:05:41,766.766 INFO    ] Initializing speech engine...
[2026-06-22 10:05:41,775.775 INFO    ] 2026-06-22 10:05:41
[2026-06-22 10:05:42,034.034 INFO    ] 2026-06-22 10:05:42
[2026-06-22 10:05:42,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:05:42,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:05:42,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:05:42,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:05:42,517.517 INFO    ] time= 22/06/2026 10:05:42
[2026-06-22 10:05:42,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:05:42,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:05:42,650.650 INFO    ] No existing commands found in stream
[2026-06-22 10:05:47,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:05:47,686.686 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-22 10:05:50,381.381 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:05:50,383.383 INFO    ] Checking for system updates...
[2026-06-22 10:05:50,408.408 INFO    ] 200
[2026-06-22 10:05:50,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:05:50,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:05:50,467.467 INFO    ] No update needed
[2026-06-22 10:05:50,469.469 INFO    ] Checking for camera pi updates...
[2026-06-22 10:05:50,505.505 INFO    ] 200
[2026-06-22 10:05:50,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:05:50,553.553 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:05:50,650.650 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:05:50,653.653 INFO    ] No camera update needed
[2026-06-22 10:05:50,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:05:50,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:05:50,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:05:50,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:05:52,711.711 INFO    ] ================================================
[2026-06-22 10:05:52,726.726 INFO    ] Launching Daemon at Mon Jun 22 10:05:52 IST 2026
[2026-06-22 10:05:52,737.737 INFO    ] ================================================
[2026-06-22 10:05:53,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:05:53
[2026-06-22 10:05:53,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:05:54,218.218 INFO    ] Initializing speech engine...
[2026-06-22 10:05:54,232.232 INFO    ] 2026-06-22 10:05:54
[2026-06-22 10:05:54,513.513 INFO    ] 2026-06-22 10:05:54
[2026-06-22 10:05:54,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:05:54,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:05:54,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:05:55,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:05:55,061.061 INFO    ] time= 22/06/2026 10:05:55
[2026-06-22 10:05:55,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:05:55,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:05:55,220.220 INFO    ] No existing commands found in stream
[2026-06-22 10:06:00,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:06:00,240.240 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-22 10:06:02,149.149 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:06:02,153.153 INFO    ] Checking for system updates...
[2026-06-22 10:06:02,195.195 INFO    ] 200
[2026-06-22 10:06:02,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:06:02,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:06:02,266.266 INFO    ] No update needed
[2026-06-22 10:06:02,270.270 INFO    ] Checking for camera pi updates...
[2026-06-22 10:06:02,309.309 INFO    ] 200
[2026-06-22 10:06:02,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:06:02,359.359 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:06:02,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:06:02,423.423 INFO    ] No camera update needed
[2026-06-22 10:06:02,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:06:02,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:06:02,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:06:02,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:06:04,488.488 INFO    ] ================================================
[2026-06-22 10:06:04,503.503 INFO    ] Launching Daemon at Mon Jun 22 10:06:04 IST 2026
[2026-06-22 10:06:04,514.514 INFO    ] ================================================
[2026-06-22 10:06:05,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:06:05
[2026-06-22 10:06:05,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:06:05,940.940 INFO    ] Initializing speech engine...
[2026-06-22 10:06:05,946.946 INFO    ] 2026-06-22 10:06:05
[2026-06-22 10:06:06,128.128 INFO    ] 2026-06-22 10:06:06
[2026-06-22 10:06:06,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:06:06,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:06:06,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:06:06,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:06:06,511.511 INFO    ] time= 22/06/2026 10:06:06
[2026-06-22 10:06:06,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:06:06,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:06:06,712.712 INFO    ] No existing commands found in stream
[2026-06-22 10:06:11,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:06:11,726.726 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-22 10:06:13,030.030 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:06:13,032.032 INFO    ] Checking for system updates...
[2026-06-22 10:06:13,053.053 INFO    ] 200
[2026-06-22 10:06:13,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:06:13,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:06:13,086.086 INFO    ] No update needed
[2026-06-22 10:06:13,088.088 INFO    ] Checking for camera pi updates...
[2026-06-22 10:06:13,114.114 INFO    ] 200
[2026-06-22 10:06:13,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:06:13,157.157 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:06:13,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:06:13,235.235 INFO    ] No camera update needed
[2026-06-22 10:06:13,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:06:13,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:06:13,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:06:13,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:06:15,290.290 INFO    ] ================================================
[2026-06-22 10:06:15,306.306 INFO    ] Launching Daemon at Mon Jun 22 10:06:15 IST 2026
[2026-06-22 10:06:15,317.317 INFO    ] ================================================
[2026-06-22 10:06:15,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:06:15
[2026-06-22 10:06:16,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:06:16,826.826 INFO    ] Initializing speech engine...
[2026-06-22 10:06:16,839.839 INFO    ] 2026-06-22 10:06:16
[2026-06-22 10:06:17,120.120 INFO    ] 2026-06-22 10:06:17
[2026-06-22 10:06:17,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:06:17,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:06:17,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:06:17,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:06:17,582.582 INFO    ] time= 22/06/2026 10:06:17
[2026-06-22 10:06:17,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:06:17,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:06:17,805.805 INFO    ] No existing commands found in stream
[2026-06-22 10:06:22,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:06:22,831.831 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-22 10:06:24,021.021 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:06:24,024.024 INFO    ] Checking for system updates...
[2026-06-22 10:06:24,061.061 INFO    ] 200
[2026-06-22 10:06:24,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:06:24,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:06:24,128.128 INFO    ] No update needed
[2026-06-22 10:06:24,131.131 INFO    ] Checking for camera pi updates...
[2026-06-22 10:06:24,165.165 INFO    ] 200
[2026-06-22 10:06:24,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:06:24,213.213 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:06:24,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:06:24,282.282 INFO    ] No camera update needed
[2026-06-22 10:06:24,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:06:24,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:06:24,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:06:24,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:06:26,340.340 INFO    ] ================================================
[2026-06-22 10:06:26,355.355 INFO    ] Launching Daemon at Mon Jun 22 10:06:26 IST 2026
[2026-06-22 10:06:26,365.365 INFO    ] ================================================
[2026-06-22 10:06:27,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:06:27
[2026-06-22 10:06:27,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:06:27,878.878 INFO    ] Initializing speech engine...
[2026-06-22 10:06:27,886.886 INFO    ] 2026-06-22 10:06:27
[2026-06-22 10:06:28,155.155 INFO    ] 2026-06-22 10:06:28
[2026-06-22 10:06:28,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:06:28,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:06:28,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:06:28,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:06:28,658.658 INFO    ] time= 22/06/2026 10:06:28
[2026-06-22 10:06:28,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:06:28,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:06:28,893.893 INFO    ] No existing commands found in stream
[2026-06-22 10:06:33,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:06:33,927.927 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-22 10:06:36,088.088 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:06:36,091.091 INFO    ] Checking for system updates...
[2026-06-22 10:06:36,128.128 INFO    ] 200
[2026-06-22 10:06:36,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:06:36,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:06:36,186.186 INFO    ] No update needed
[2026-06-22 10:06:36,188.188 INFO    ] Checking for camera pi updates...
[2026-06-22 10:06:36,223.223 INFO    ] 200
[2026-06-22 10:06:36,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:06:36,266.266 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:06:36,353.353 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:06:36,355.355 INFO    ] No camera update needed
[2026-06-22 10:06:36,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:06:36,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:06:36,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:06:36,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:06:38,410.410 INFO    ] ================================================
[2026-06-22 10:06:38,425.425 INFO    ] Launching Daemon at Mon Jun 22 10:06:38 IST 2026
[2026-06-22 10:06:38,436.436 INFO    ] ================================================
[2026-06-22 10:06:39,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:06:39
[2026-06-22 10:06:39,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:06:39,866.866 INFO    ] Initializing speech engine...
[2026-06-22 10:06:39,876.876 INFO    ] 2026-06-22 10:06:39
[2026-06-22 10:06:40,125.125 INFO    ] 2026-06-22 10:06:40
[2026-06-22 10:06:40,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:06:40,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:06:40,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:06:40,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:06:40,606.606 INFO    ] time= 22/06/2026 10:06:40
[2026-06-22 10:06:40,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:06:40,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:06:40,793.793 INFO    ] No existing commands found in stream
[2026-06-22 10:06:45,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:06:45,830.830 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-22 10:06:49,815.815 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:06:49,816.816 INFO    ] Checking for system updates...
[2026-06-22 10:06:49,844.844 INFO    ] 200
[2026-06-22 10:06:49,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:06:49,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:06:49,903.903 INFO    ] No update needed
[2026-06-22 10:06:49,905.905 INFO    ] Checking for camera pi updates...
[2026-06-22 10:06:49,939.939 INFO    ] 200
[2026-06-22 10:06:49,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:06:49,982.982 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:06:50,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:06:50,071.071 INFO    ] No camera update needed
[2026-06-22 10:06:50,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:06:50,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:06:50,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:06:50,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:06:52,127.127 INFO    ] ================================================
[2026-06-22 10:06:52,143.143 INFO    ] Launching Daemon at Mon Jun 22 10:06:52 IST 2026
[2026-06-22 10:06:52,153.153 INFO    ] ================================================
[2026-06-22 10:06:52,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:06:52
[2026-06-22 10:06:53,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:06:53,781.781 INFO    ] Initializing speech engine...
[2026-06-22 10:06:53,788.788 INFO    ] 2026-06-22 10:06:53
[2026-06-22 10:06:54,063.063 INFO    ] 2026-06-22 10:06:54
[2026-06-22 10:06:54,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:06:54,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:06:54,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:06:54,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:06:54,569.569 INFO    ] time= 22/06/2026 10:06:54
[2026-06-22 10:06:54,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:06:54,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:06:54,794.794 INFO    ] No existing commands found in stream
[2026-06-22 10:06:59,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:06:59,821.821 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-22 10:07:02,888.888 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:07:02,892.892 INFO    ] Checking for system updates...
[2026-06-22 10:07:02,936.936 INFO    ] 200
[2026-06-22 10:07:02,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:07:03,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:07:03,012.012 INFO    ] No update needed
[2026-06-22 10:07:03,016.016 INFO    ] Checking for camera pi updates...
[2026-06-22 10:07:03,054.054 INFO    ] 200
[2026-06-22 10:07:03,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:07:03,102.102 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:07:03,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:07:03,195.195 INFO    ] No camera update needed
[2026-06-22 10:07:03,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:07:03,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:07:03,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:07:03,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:07:05,254.254 INFO    ] ================================================
[2026-06-22 10:07:05,269.269 INFO    ] Launching Daemon at Mon Jun 22 10:07:05 IST 2026
[2026-06-22 10:07:05,280.280 INFO    ] ================================================
[2026-06-22 10:07:05,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:07:05
[2026-06-22 10:07:06,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:07:06,768.768 INFO    ] Initializing speech engine...
[2026-06-22 10:07:06,777.777 INFO    ] 2026-06-22 10:07:06
[2026-06-22 10:07:07,050.050 INFO    ] 2026-06-22 10:07:07
[2026-06-22 10:07:07,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:07:07,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:07:07,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:07:07,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:07:07,539.539 INFO    ] time= 22/06/2026 10:07:07
[2026-06-22 10:07:07,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:07:07,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:07:07,759.759 INFO    ] No existing commands found in stream
[2026-06-22 10:07:12,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:07:12,787.787 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-22 10:07:15,063.063 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:07:15,066.066 INFO    ] Checking for system updates...
[2026-06-22 10:07:15,102.102 INFO    ] 200
[2026-06-22 10:07:15,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:07:15,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:07:15,161.161 INFO    ] No update needed
[2026-06-22 10:07:15,163.163 INFO    ] Checking for camera pi updates...
[2026-06-22 10:07:15,197.197 INFO    ] 200
[2026-06-22 10:07:15,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:07:15,240.240 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:07:15,393.393 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:07:15,396.396 INFO    ] No camera update needed
[2026-06-22 10:07:15,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:07:15,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:07:15,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:07:15,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:07:17,450.450 INFO    ] ================================================
[2026-06-22 10:07:17,466.466 INFO    ] Launching Daemon at Mon Jun 22 10:07:17 IST 2026
[2026-06-22 10:07:17,476.476 INFO    ] ================================================
[2026-06-22 10:07:18,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:07:18
[2026-06-22 10:07:18,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:07:18,989.989 INFO    ] Initializing speech engine...
[2026-06-22 10:07:19,003.003 INFO    ] 2026-06-22 10:07:18
[2026-06-22 10:07:19,269.269 INFO    ] 2026-06-22 10:07:19
[2026-06-22 10:07:19,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:07:19,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:07:19,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:07:19,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:07:19,736.736 INFO    ] time= 22/06/2026 10:07:19
[2026-06-22 10:07:19,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:07:19,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:07:19,944.944 INFO    ] No existing commands found in stream
[2026-06-22 10:07:24,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:07:24,968.968 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-22 10:07:25,528.528 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:07:25,531.531 INFO    ] Checking for system updates...
[2026-06-22 10:07:25,567.567 INFO    ] 200
[2026-06-22 10:07:25,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:07:25,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:07:25,625.625 INFO    ] No update needed
[2026-06-22 10:07:25,627.627 INFO    ] Checking for camera pi updates...
[2026-06-22 10:07:25,660.660 INFO    ] 200
[2026-06-22 10:07:25,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:07:25,703.703 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:07:25,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:07:25,791.791 INFO    ] No camera update needed
[2026-06-22 10:07:25,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:07:25,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:07:25,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:07:25,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:07:27,850.850 INFO    ] ================================================
[2026-06-22 10:07:27,866.866 INFO    ] Launching Daemon at Mon Jun 22 10:07:27 IST 2026
[2026-06-22 10:07:27,877.877 INFO    ] ================================================
[2026-06-22 10:07:28,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:07:28
[2026-06-22 10:07:29,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:07:29,296.296 INFO    ] Initializing speech engine...
[2026-06-22 10:07:29,311.311 INFO    ] 2026-06-22 10:07:29
[2026-06-22 10:07:29,576.576 INFO    ] 2026-06-22 10:07:29
[2026-06-22 10:07:29,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:07:29,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:07:29,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:07:30,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:07:30,056.056 INFO    ] time= 22/06/2026 10:07:30
[2026-06-22 10:07:30,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:07:30,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:07:30,302.302 INFO    ] No existing commands found in stream
[2026-06-22 10:07:35,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:07:35,317.317 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-22 10:07:38,455.455 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:07:38,458.458 INFO    ] Checking for system updates...
[2026-06-22 10:07:38,498.498 INFO    ] 200
[2026-06-22 10:07:38,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:07:38,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:07:38,561.561 INFO    ] No update needed
[2026-06-22 10:07:38,564.564 INFO    ] Checking for camera pi updates...
[2026-06-22 10:07:38,597.597 INFO    ] 200
[2026-06-22 10:07:38,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:07:38,640.640 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:07:38,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:07:38,729.729 INFO    ] No camera update needed
[2026-06-22 10:07:38,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:07:38,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:07:38,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:07:38,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:07:40,789.789 INFO    ] ================================================
[2026-06-22 10:07:40,804.804 INFO    ] Launching Daemon at Mon Jun 22 10:07:40 IST 2026
[2026-06-22 10:07:40,815.815 INFO    ] ================================================
[2026-06-22 10:07:41,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:07:41
[2026-06-22 10:07:41,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:07:42,131.131 INFO    ] Initializing speech engine...
[2026-06-22 10:07:42,156.156 INFO    ] 2026-06-22 10:07:42
[2026-06-22 10:07:42,409.409 INFO    ] 2026-06-22 10:07:42
[2026-06-22 10:07:42,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:07:42,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:07:42,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:07:42,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:07:42,786.786 INFO    ] time= 22/06/2026 10:07:42
[2026-06-22 10:07:42,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:07:42,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:07:42,979.979 INFO    ] No existing commands found in stream
[2026-06-22 10:07:47,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:07:47,998.998 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-22 10:07:49,397.397 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:07:49,399.399 INFO    ] Checking for system updates...
[2026-06-22 10:07:49,422.422 INFO    ] 200
[2026-06-22 10:07:49,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:07:49,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:07:49,458.458 INFO    ] No update needed
[2026-06-22 10:07:49,459.459 INFO    ] Checking for camera pi updates...
[2026-06-22 10:07:49,496.496 INFO    ] 200
[2026-06-22 10:07:49,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:07:49,545.545 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:07:49,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:07:49,663.663 INFO    ] No camera update needed
[2026-06-22 10:07:49,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:07:49,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:07:49,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:07:49,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:07:51,721.721 INFO    ] ================================================
[2026-06-22 10:07:51,736.736 INFO    ] Launching Daemon at Mon Jun 22 10:07:51 IST 2026
[2026-06-22 10:07:51,747.747 INFO    ] ================================================
[2026-06-22 10:07:52,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:07:52
[2026-06-22 10:07:52,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:07:53,086.086 INFO    ] Initializing speech engine...
[2026-06-22 10:07:53,094.094 INFO    ] 2026-06-22 10:07:53
[2026-06-22 10:07:53,347.347 INFO    ] 2026-06-22 10:07:53
[2026-06-22 10:07:53,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:07:53,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:07:53,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:07:53,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:07:53,723.723 INFO    ] time= 22/06/2026 10:07:53
[2026-06-22 10:07:53,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:07:53,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:07:53,897.897 INFO    ] No existing commands found in stream
[2026-06-22 10:07:58,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:07:58,930.930 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-22 10:08:03,170.170 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:08:03,173.173 INFO    ] Checking for system updates...
[2026-06-22 10:08:03,208.208 INFO    ] 200
[2026-06-22 10:08:03,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:08:03,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:08:03,266.266 INFO    ] No update needed
[2026-06-22 10:08:03,268.268 INFO    ] Checking for camera pi updates...
[2026-06-22 10:08:03,307.307 INFO    ] 200
[2026-06-22 10:08:03,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:08:03,355.355 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:08:03,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:08:03,437.437 INFO    ] No camera update needed
[2026-06-22 10:08:03,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:08:03,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:08:03,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:08:03,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:08:05,497.497 INFO    ] ================================================
[2026-06-22 10:08:05,512.512 INFO    ] Launching Daemon at Mon Jun 22 10:08:05 IST 2026
[2026-06-22 10:08:05,523.523 INFO    ] ================================================
[2026-06-22 10:08:05,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:08:05
[2026-06-22 10:08:06,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:08:06,894.894 INFO    ] Initializing speech engine...
[2026-06-22 10:08:06,900.900 INFO    ] 2026-06-22 10:08:06
[2026-06-22 10:08:07,172.172 INFO    ] 2026-06-22 10:08:07
[2026-06-22 10:08:07,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:08:07,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:08:07,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:08:07,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:08:07,667.667 INFO    ] time= 22/06/2026 10:08:07
[2026-06-22 10:08:07,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:08:07,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:08:07,900.900 INFO    ] No existing commands found in stream
[2026-06-22 10:08:12,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:08:12,924.924 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-22 10:08:16,807.807 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:08:16,809.809 INFO    ] Checking for system updates...
[2026-06-22 10:08:16,829.829 INFO    ] 200
[2026-06-22 10:08:16,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:08:16,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:08:16,863.863 INFO    ] No update needed
[2026-06-22 10:08:16,865.865 INFO    ] Checking for camera pi updates...
[2026-06-22 10:08:16,887.887 INFO    ] 200
[2026-06-22 10:08:16,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:08:16,917.917 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:08:16,992.992 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:08:16,995.995 INFO    ] No camera update needed
[2026-06-22 10:08:16,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:08:17,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:08:17,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:08:17,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:08:19,052.052 INFO    ] ================================================
[2026-06-22 10:08:19,067.067 INFO    ] Launching Daemon at Mon Jun 22 10:08:19 IST 2026
[2026-06-22 10:08:19,078.078 INFO    ] ================================================
[2026-06-22 10:08:19,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:08:19
[2026-06-22 10:08:20,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:08:20,593.593 INFO    ] Initializing speech engine...
[2026-06-22 10:08:20,604.604 INFO    ] 2026-06-22 10:08:20
[2026-06-22 10:08:20,877.877 INFO    ] 2026-06-22 10:08:20
[2026-06-22 10:08:20,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:08:21,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:08:21,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:08:21,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:08:21,361.361 INFO    ] time= 22/06/2026 10:08:21
[2026-06-22 10:08:21,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:08:21,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:08:21,543.543 INFO    ] No existing commands found in stream
[2026-06-22 10:08:26,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:08:26,579.579 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-22 10:08:30,776.776 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:08:30,777.777 INFO    ] Checking for system updates...
[2026-06-22 10:08:30,798.798 INFO    ] 200
[2026-06-22 10:08:30,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:08:30,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:08:30,833.833 INFO    ] No update needed
[2026-06-22 10:08:30,834.834 INFO    ] Checking for camera pi updates...
[2026-06-22 10:08:30,868.868 INFO    ] 200
[2026-06-22 10:08:30,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:08:30,912.912 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:08:31,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:08:31,016.016 INFO    ] No camera update needed
[2026-06-22 10:08:31,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:08:31,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:08:31,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:08:31,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:08:33,071.071 INFO    ] ================================================
[2026-06-22 10:08:33,086.086 INFO    ] Launching Daemon at Mon Jun 22 10:08:33 IST 2026
[2026-06-22 10:08:33,096.096 INFO    ] ================================================
[2026-06-22 10:08:33,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:08:33
[2026-06-22 10:08:34,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:08:34,423.423 INFO    ] Initializing speech engine...
[2026-06-22 10:08:34,441.441 INFO    ] 2026-06-22 10:08:34
[2026-06-22 10:08:34,695.695 INFO    ] 2026-06-22 10:08:34
[2026-06-22 10:08:34,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:08:34,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:08:34,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:08:35,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:08:35,239.239 INFO    ] time= 22/06/2026 10:08:35
[2026-06-22 10:08:35,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:08:35,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:08:35,379.379 INFO    ] No existing commands found in stream
[2026-06-22 10:08:40,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:08:40,409.409 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-22 10:08:42,241.241 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:08:42,244.244 INFO    ] Checking for system updates...
[2026-06-22 10:08:42,284.284 INFO    ] 200
[2026-06-22 10:08:42,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:08:42,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:08:42,341.341 INFO    ] No update needed
[2026-06-22 10:08:42,343.343 INFO    ] Checking for camera pi updates...
[2026-06-22 10:08:42,377.377 INFO    ] 200
[2026-06-22 10:08:42,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:08:42,424.424 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:08:42,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:08:42,529.529 INFO    ] No camera update needed
[2026-06-22 10:08:42,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:08:42,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:08:42,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:08:42,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:08:44,585.585 INFO    ] ================================================
[2026-06-22 10:08:44,601.601 INFO    ] Launching Daemon at Mon Jun 22 10:08:44 IST 2026
[2026-06-22 10:08:44,611.611 INFO    ] ================================================
[2026-06-22 10:08:45,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:08:45
[2026-06-22 10:08:45,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:08:46,159.159 INFO    ] Initializing speech engine...
[2026-06-22 10:08:46,165.165 INFO    ] 2026-06-22 10:08:46
[2026-06-22 10:08:46,427.427 INFO    ] 2026-06-22 10:08:46
[2026-06-22 10:08:46,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:08:46,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:08:46,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:08:46,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:08:46,885.885 INFO    ] time= 22/06/2026 10:08:46
[2026-06-22 10:08:46,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:08:46,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:08:47,121.121 INFO    ] No existing commands found in stream
[2026-06-22 10:08:52,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:08:52,140.140 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-22 10:08:54,162.162 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:08:54,165.165 INFO    ] Checking for system updates...
[2026-06-22 10:08:54,203.203 INFO    ] 200
[2026-06-22 10:08:54,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:08:54,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:08:54,261.261 INFO    ] No update needed
[2026-06-22 10:08:54,263.263 INFO    ] Checking for camera pi updates...
[2026-06-22 10:08:54,299.299 INFO    ] 200
[2026-06-22 10:08:54,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:08:54,347.347 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:08:54,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:08:54,449.449 INFO    ] No camera update needed
[2026-06-22 10:08:54,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:08:54,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:08:54,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:08:54,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:08:56,506.506 INFO    ] ================================================
[2026-06-22 10:08:56,521.521 INFO    ] Launching Daemon at Mon Jun 22 10:08:56 IST 2026
[2026-06-22 10:08:56,531.531 INFO    ] ================================================
[2026-06-22 10:08:57,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:08:57
[2026-06-22 10:08:57,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:08:57,875.875 INFO    ] Initializing speech engine...
[2026-06-22 10:08:57,884.884 INFO    ] 2026-06-22 10:08:57
[2026-06-22 10:08:58,136.136 INFO    ] 2026-06-22 10:08:58
[2026-06-22 10:08:58,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:08:58,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:08:58,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:08:58,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:08:58,599.599 INFO    ] time= 22/06/2026 10:08:58
[2026-06-22 10:08:58,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:08:58,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:08:58,813.813 INFO    ] No existing commands found in stream
[2026-06-22 10:09:03,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:09:03,846.846 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-22 10:09:05,211.211 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:09:05,214.214 INFO    ] Checking for system updates...
[2026-06-22 10:09:05,253.253 INFO    ] 200
[2026-06-22 10:09:05,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:09:05,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:09:05,312.312 INFO    ] No update needed
[2026-06-22 10:09:05,314.314 INFO    ] Checking for camera pi updates...
[2026-06-22 10:09:05,348.348 INFO    ] 200
[2026-06-22 10:09:05,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:09:05,397.397 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:09:05,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:09:05,480.480 INFO    ] No camera update needed
[2026-06-22 10:09:05,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:09:05,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:09:05,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:09:05,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:09:07,537.537 INFO    ] ================================================
[2026-06-22 10:09:07,552.552 INFO    ] Launching Daemon at Mon Jun 22 10:09:07 IST 2026
[2026-06-22 10:09:07,562.562 INFO    ] ================================================
[2026-06-22 10:09:08,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:09:08
[2026-06-22 10:09:08,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:09:08,898.898 INFO    ] Initializing speech engine...
[2026-06-22 10:09:08,905.905 INFO    ] 2026-06-22 10:09:08
[2026-06-22 10:09:09,151.151 INFO    ] 2026-06-22 10:09:09
[2026-06-22 10:09:09,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:09:09,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:09:09,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:09:09,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:09:09,629.629 INFO    ] time= 22/06/2026 10:09:09
[2026-06-22 10:09:09,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:09:09,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:09:09,843.843 INFO    ] No existing commands found in stream
[2026-06-22 10:09:14,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:09:14,881.881 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-22 10:09:17,025.025 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:09:17,027.027 INFO    ] Checking for system updates...
[2026-06-22 10:09:17,052.052 INFO    ] 200
[2026-06-22 10:09:17,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:09:17,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:09:17,111.111 INFO    ] No update needed
[2026-06-22 10:09:17,114.114 INFO    ] Checking for camera pi updates...
[2026-06-22 10:09:17,153.153 INFO    ] 200
[2026-06-22 10:09:17,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:09:17,199.199 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:09:17,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:09:17,390.390 INFO    ] No camera update needed
[2026-06-22 10:09:17,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:09:17,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:09:17,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:09:17,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:09:19,448.448 INFO    ] ================================================
[2026-06-22 10:09:19,464.464 INFO    ] Launching Daemon at Mon Jun 22 10:09:19 IST 2026
[2026-06-22 10:09:19,475.475 INFO    ] ================================================
[2026-06-22 10:09:20,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:09:20
[2026-06-22 10:09:20,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:09:20,843.843 INFO    ] Initializing speech engine...
[2026-06-22 10:09:20,853.853 INFO    ] 2026-06-22 10:09:20
[2026-06-22 10:09:21,105.105 INFO    ] 2026-06-22 10:09:21
[2026-06-22 10:09:21,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:09:21,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:09:21,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:09:21,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:09:21,606.606 INFO    ] time= 22/06/2026 10:09:21
[2026-06-22 10:09:21,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:09:21,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:09:21,798.798 INFO    ] No existing commands found in stream
[2026-06-22 10:09:26,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:09:26,831.831 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-22 10:09:28,466.466 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:09:28,468.468 INFO    ] Checking for system updates...
[2026-06-22 10:09:28,489.489 INFO    ] 200
[2026-06-22 10:09:28,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:09:28,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:09:28,522.522 INFO    ] No update needed
[2026-06-22 10:09:28,523.523 INFO    ] Checking for camera pi updates...
[2026-06-22 10:09:28,544.544 INFO    ] 200
[2026-06-22 10:09:28,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:09:28,585.585 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:09:28,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:09:28,672.672 INFO    ] No camera update needed
[2026-06-22 10:09:28,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:09:28,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:09:28,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:09:28,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:09:30,731.731 INFO    ] ================================================
[2026-06-22 10:09:30,746.746 INFO    ] Launching Daemon at Mon Jun 22 10:09:30 IST 2026
[2026-06-22 10:09:30,757.757 INFO    ] ================================================
[2026-06-22 10:09:31,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:09:31
[2026-06-22 10:09:31,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:09:32,284.284 INFO    ] Initializing speech engine...
[2026-06-22 10:09:32,302.302 INFO    ] 2026-06-22 10:09:32
[2026-06-22 10:09:32,602.602 INFO    ] 2026-06-22 10:09:32
[2026-06-22 10:09:32,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:09:32,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:09:32,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:09:33,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:09:33,049.049 INFO    ] time= 22/06/2026 10:09:33
[2026-06-22 10:09:33,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:09:33,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:09:33,140.140 INFO    ] No existing commands found in stream
[2026-06-22 10:09:38,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:09:38,156.156 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-22 10:09:41,692.692 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:09:41,695.695 INFO    ] Checking for system updates...
[2026-06-22 10:09:41,730.730 INFO    ] 200
[2026-06-22 10:09:41,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:09:41,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:09:41,795.795 INFO    ] No update needed
[2026-06-22 10:09:41,797.797 INFO    ] Checking for camera pi updates...
[2026-06-22 10:09:41,832.832 INFO    ] 200
[2026-06-22 10:09:41,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:09:41,876.876 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:09:41,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:09:41,956.956 INFO    ] No camera update needed
[2026-06-22 10:09:41,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:09:41,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:09:41,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:09:41,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:09:44,013.013 INFO    ] ================================================
[2026-06-22 10:09:44,030.030 INFO    ] Launching Daemon at Mon Jun 22 10:09:44 IST 2026
[2026-06-22 10:09:44,043.043 INFO    ] ================================================
[2026-06-22 10:09:44,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:09:44
[2026-06-22 10:09:45,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:09:45,545.545 INFO    ] Initializing speech engine...
[2026-06-22 10:09:45,553.553 INFO    ] 2026-06-22 10:09:45
[2026-06-22 10:09:45,816.816 INFO    ] 2026-06-22 10:09:45
[2026-06-22 10:09:45,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:09:46,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:09:46,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:09:46,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:09:46,208.208 INFO    ] time= 22/06/2026 10:09:46
[2026-06-22 10:09:46,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:09:46,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:09:46,362.362 INFO    ] No existing commands found in stream
[2026-06-22 10:09:51,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:09:51,395.395 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-22 10:09:53,766.766 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:09:53,768.768 INFO    ] Checking for system updates...
[2026-06-22 10:09:53,800.800 INFO    ] 200
[2026-06-22 10:09:53,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:09:53,857.857 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:09:53,859.859 INFO    ] No update needed
[2026-06-22 10:09:53,862.862 INFO    ] Checking for camera pi updates...
[2026-06-22 10:09:53,897.897 INFO    ] 200
[2026-06-22 10:09:53,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:09:53,942.942 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:09:54,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:09:54,033.033 INFO    ] No camera update needed
[2026-06-22 10:09:54,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:09:54,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:09:54,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:09:54,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:09:56,092.092 INFO    ] ================================================
[2026-06-22 10:09:56,107.107 INFO    ] Launching Daemon at Mon Jun 22 10:09:56 IST 2026
[2026-06-22 10:09:56,118.118 INFO    ] ================================================
[2026-06-22 10:09:56,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:09:56
[2026-06-22 10:09:57,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:09:57,652.652 INFO    ] Initializing speech engine...
[2026-06-22 10:09:57,660.660 INFO    ] 2026-06-22 10:09:57
[2026-06-22 10:09:57,937.937 INFO    ] 2026-06-22 10:09:57
[2026-06-22 10:09:57,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:09:58,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:09:58,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:09:58,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:09:58,415.415 INFO    ] time= 22/06/2026 10:09:58
[2026-06-22 10:09:58,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:09:58,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:09:58,667.667 INFO    ] No existing commands found in stream
[2026-06-22 10:10:03,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:10:03,693.693 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-22 10:10:06,917.917 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:10:06,919.919 INFO    ] Checking for system updates...
[2026-06-22 10:10:06,940.940 INFO    ] 200
[2026-06-22 10:10:06,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:10:06,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:10:06,976.976 INFO    ] No update needed
[2026-06-22 10:10:06,977.977 INFO    ] Checking for camera pi updates...
[2026-06-22 10:10:06,998.998 INFO    ] 200
[2026-06-22 10:10:07,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:10:07,041.041 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:10:07,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:10:07,141.141 INFO    ] No camera update needed
[2026-06-22 10:10:07,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:10:07,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:10:07,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:10:07,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:10:09,207.207 INFO    ] ================================================
[2026-06-22 10:10:09,222.222 INFO    ] Launching Daemon at Mon Jun 22 10:10:09 IST 2026
[2026-06-22 10:10:09,232.232 INFO    ] ================================================
[2026-06-22 10:10:09,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:10:09
[2026-06-22 10:10:10,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:10:10,560.560 INFO    ] Initializing speech engine...
[2026-06-22 10:10:10,569.569 INFO    ] 2026-06-22 10:10:10
[2026-06-22 10:10:10,863.863 INFO    ] 2026-06-22 10:10:10
[2026-06-22 10:10:10,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:10:11,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:10:11,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:10:11,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:10:11,244.244 INFO    ] time= 22/06/2026 10:10:11
[2026-06-22 10:10:11,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:10:11,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:10:11,369.369 INFO    ] No existing commands found in stream
[2026-06-22 10:10:16,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:10:16,386.386 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-22 10:10:17,399.399 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:10:17,402.402 INFO    ] Checking for system updates...
[2026-06-22 10:10:17,442.442 INFO    ] 200
[2026-06-22 10:10:17,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:10:17,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:10:17,500.500 INFO    ] No update needed
[2026-06-22 10:10:17,502.502 INFO    ] Checking for camera pi updates...
[2026-06-22 10:10:17,536.536 INFO    ] 200
[2026-06-22 10:10:17,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:10:17,580.580 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:10:17,674.674 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:10:17,676.676 INFO    ] No camera update needed
[2026-06-22 10:10:17,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:10:17,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:10:17,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:10:17,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:10:19,731.731 INFO    ] ================================================
[2026-06-22 10:10:19,746.746 INFO    ] Launching Daemon at Mon Jun 22 10:10:19 IST 2026
[2026-06-22 10:10:19,757.757 INFO    ] ================================================
[2026-06-22 10:10:20,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:10:20
[2026-06-22 10:10:20,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:10:21,122.122 INFO    ] Initializing speech engine...
[2026-06-22 10:10:21,129.129 INFO    ] 2026-06-22 10:10:21
[2026-06-22 10:10:21,427.427 INFO    ] 2026-06-22 10:10:21
[2026-06-22 10:10:21,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:10:21,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:10:21,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:10:21,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:10:21,852.852 INFO    ] time= 22/06/2026 10:10:21
[2026-06-22 10:10:21,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:10:21,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:10:21,937.937 INFO    ] No existing commands found in stream
[2026-06-22 10:10:26,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:10:26,952.952 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-22 10:10:30,746.746 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:10:30,748.748 INFO    ] Checking for system updates...
[2026-06-22 10:10:30,769.769 INFO    ] 200
[2026-06-22 10:10:30,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:10:30,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:10:30,803.803 INFO    ] No update needed
[2026-06-22 10:10:30,805.805 INFO    ] Checking for camera pi updates...
[2026-06-22 10:10:30,836.836 INFO    ] 200
[2026-06-22 10:10:30,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:10:30,880.880 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:10:30,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:10:30,966.966 INFO    ] No camera update needed
[2026-06-22 10:10:30,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:10:30,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:10:30,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:10:30,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:10:33,029.029 INFO    ] ================================================
[2026-06-22 10:10:33,046.046 INFO    ] Launching Daemon at Mon Jun 22 10:10:33 IST 2026
[2026-06-22 10:10:33,058.058 INFO    ] ================================================
[2026-06-22 10:10:33,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:10:33
[2026-06-22 10:10:34,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:10:34,679.679 INFO    ] Initializing speech engine...
[2026-06-22 10:10:34,691.691 INFO    ] 2026-06-22 10:10:34
[2026-06-22 10:10:34,996.996 INFO    ] 2026-06-22 10:10:34
[2026-06-22 10:10:35,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:10:35,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:10:35,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:10:35,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:10:35,506.506 INFO    ] time= 22/06/2026 10:10:35
[2026-06-22 10:10:35,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:10:35,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:10:35,657.657 INFO    ] No existing commands found in stream
[2026-06-22 10:10:40,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:10:40,679.679 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-22 10:10:43,633.633 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:10:43,637.637 INFO    ] Checking for system updates...
[2026-06-22 10:10:43,673.673 INFO    ] 200
[2026-06-22 10:10:43,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:10:43,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:10:43,732.732 INFO    ] No update needed
[2026-06-22 10:10:43,735.735 INFO    ] Checking for camera pi updates...
[2026-06-22 10:10:43,773.773 INFO    ] 200
[2026-06-22 10:10:43,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:10:43,822.822 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:10:43,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:10:43,932.932 INFO    ] No camera update needed
[2026-06-22 10:10:43,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:10:43,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:10:43,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:10:43,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:10:45,990.990 INFO    ] ================================================
[2026-06-22 10:10:46,006.006 INFO    ] Launching Daemon at Mon Jun 22 10:10:46 IST 2026
[2026-06-22 10:10:46,017.017 INFO    ] ================================================
[2026-06-22 10:10:46,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:10:46
[2026-06-22 10:10:47,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:10:47,371.371 INFO    ] Initializing speech engine...
[2026-06-22 10:10:47,380.380 INFO    ] 2026-06-22 10:10:47
[2026-06-22 10:10:47,675.675 INFO    ] 2026-06-22 10:10:47
[2026-06-22 10:10:47,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:10:47,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:10:47,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:10:48,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:10:48,196.196 INFO    ] time= 22/06/2026 10:10:48
[2026-06-22 10:10:48,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:10:48,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:10:48,442.442 INFO    ] No existing commands found in stream
[2026-06-22 10:10:53,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:10:53,461.461 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-22 10:10:55,946.946 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:10:55,948.948 INFO    ] Checking for system updates...
[2026-06-22 10:10:55,970.970 INFO    ] 200
[2026-06-22 10:10:55,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:10:56,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:10:56,003.003 INFO    ] No update needed
[2026-06-22 10:10:56,004.004 INFO    ] Checking for camera pi updates...
[2026-06-22 10:10:56,023.023 INFO    ] 200
[2026-06-22 10:10:56,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:10:56,058.058 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:10:56,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:10:56,140.140 INFO    ] No camera update needed
[2026-06-22 10:10:56,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:10:56,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:10:56,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:10:56,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:10:58,195.195 INFO    ] ================================================
[2026-06-22 10:10:58,210.210 INFO    ] Launching Daemon at Mon Jun 22 10:10:58 IST 2026
[2026-06-22 10:10:58,221.221 INFO    ] ================================================
[2026-06-22 10:10:58,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:10:58
[2026-06-22 10:10:59,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:10:59,824.824 INFO    ] Initializing speech engine...
[2026-06-22 10:10:59,836.836 INFO    ] 2026-06-22 10:10:59
[2026-06-22 10:11:00,119.119 INFO    ] 2026-06-22 10:11:00
[2026-06-22 10:11:00,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:11:00,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:11:00,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:11:00,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:11:00,647.647 INFO    ] time= 22/06/2026 10:11:00
[2026-06-22 10:11:00,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:11:00,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:11:00,826.826 INFO    ] No existing commands found in stream
[2026-06-22 10:11:05,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:11:05,855.855 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-22 10:11:09,807.807 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:11:09,808.808 INFO    ] Checking for system updates...
[2026-06-22 10:11:09,829.829 INFO    ] 200
[2026-06-22 10:11:09,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:11:09,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:11:09,866.866 INFO    ] No update needed
[2026-06-22 10:11:09,868.868 INFO    ] Checking for camera pi updates...
[2026-06-22 10:11:09,906.906 INFO    ] 200
[2026-06-22 10:11:09,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:11:09,950.950 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:11:10,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:11:10,049.049 INFO    ] No camera update needed
[2026-06-22 10:11:10,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:11:10,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:11:10,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:11:10,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:11:12,108.108 INFO    ] ================================================
[2026-06-22 10:11:12,123.123 INFO    ] Launching Daemon at Mon Jun 22 10:11:12 IST 2026
[2026-06-22 10:11:12,134.134 INFO    ] ================================================
[2026-06-22 10:11:12,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:11:12
[2026-06-22 10:11:13,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:11:13,472.472 INFO    ] Initializing speech engine...
[2026-06-22 10:11:13,482.482 INFO    ] 2026-06-22 10:11:13
[2026-06-22 10:11:13,729.729 INFO    ] 2026-06-22 10:11:13
[2026-06-22 10:11:13,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:11:13,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:11:14,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:11:14,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:11:14,209.209 INFO    ] time= 22/06/2026 10:11:14
[2026-06-22 10:11:14,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:11:14,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:11:14,419.419 INFO    ] No existing commands found in stream
[2026-06-22 10:11:19,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:11:19,448.448 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-22 10:11:20,444.444 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:11:20,446.446 INFO    ] Checking for system updates...
[2026-06-22 10:11:20,468.468 INFO    ] 200
[2026-06-22 10:11:20,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:11:20,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:11:20,501.501 INFO    ] No update needed
[2026-06-22 10:11:20,502.502 INFO    ] Checking for camera pi updates...
[2026-06-22 10:11:20,521.521 INFO    ] 200
[2026-06-22 10:11:20,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:11:20,546.546 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:11:20,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:11:20,743.743 INFO    ] No camera update needed
[2026-06-22 10:11:20,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:11:20,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:11:20,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:11:20,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:11:22,800.800 INFO    ] ================================================
[2026-06-22 10:11:22,815.815 INFO    ] Launching Daemon at Mon Jun 22 10:11:22 IST 2026
[2026-06-22 10:11:22,826.826 INFO    ] ================================================
[2026-06-22 10:11:23,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:11:23
[2026-06-22 10:11:23,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:11:24,255.255 INFO    ] Initializing speech engine...
[2026-06-22 10:11:24,264.264 INFO    ] 2026-06-22 10:11:24
[2026-06-22 10:11:24,514.514 INFO    ] 2026-06-22 10:11:24
[2026-06-22 10:11:24,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:11:24,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:11:24,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:11:24,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:11:24,972.972 INFO    ] time= 22/06/2026 10:11:24
[2026-06-22 10:11:25,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:11:25,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:11:25,223.223 INFO    ] No existing commands found in stream
[2026-06-22 10:11:30,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:11:30,249.249 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-22 10:11:34,041.041 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:11:34,044.044 INFO    ] Checking for system updates...
[2026-06-22 10:11:34,080.080 INFO    ] 200
[2026-06-22 10:11:34,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:11:34,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:11:34,139.139 INFO    ] No update needed
[2026-06-22 10:11:34,141.141 INFO    ] Checking for camera pi updates...
[2026-06-22 10:11:34,182.182 INFO    ] 200
[2026-06-22 10:11:34,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:11:34,224.224 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:11:34,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:11:34,312.312 INFO    ] No camera update needed
[2026-06-22 10:11:34,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:11:34,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:11:34,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:11:34,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:11:36,369.369 INFO    ] ================================================
[2026-06-22 10:11:36,384.384 INFO    ] Launching Daemon at Mon Jun 22 10:11:36 IST 2026
[2026-06-22 10:11:36,395.395 INFO    ] ================================================
[2026-06-22 10:11:36,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:11:36
[2026-06-22 10:11:37,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:11:37,807.807 INFO    ] Initializing speech engine...
[2026-06-22 10:11:37,816.816 INFO    ] 2026-06-22 10:11:37
[2026-06-22 10:11:38,065.065 INFO    ] 2026-06-22 10:11:38
[2026-06-22 10:11:38,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:11:38,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:11:38,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:11:38,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:11:38,441.441 INFO    ] time= 22/06/2026 10:11:38
[2026-06-22 10:11:38,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:11:38,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:11:38,629.629 INFO    ] No existing commands found in stream
[2026-06-22 10:11:42,110.110 INFO    ] Received new command: ID=1782103302058-0
[2026-06-22 10:11:42,112.112 INFO    ] process_and_cleanup_command: msg_id=1782103302058-0
[2026-06-22 10:11:42,115.115 INFO    ] is_command_expired: timestamp=2026-06-22T04:41:41.166Z, expiry=30s
[2026-06-22 10:11:42,197.197 INFO    ] Command removed from stream: 1782103302058-0. returning for processing...
[2026-06-22 10:11:42,200.200 INFO    ] ***** get_valid_command
[2026-06-22 10:11:42,202.202 INFO    ] {'timestamp': '2026-06-22T04:41:41.166Z', 'source': 'webapp', 'timeout': '10', 'command': 'start-order', 'data': '{"request_id":"start-order-1782103301165-sc822eqw6","orderId":"TM06202507260622101058360","is_vending":false}'}
[2026-06-22 10:11:42,205.205 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'start-order-1782103301165-sc822eqw6', 'orderId': 'TM06202507260622101058360'}
[2026-06-22 10:11:42,207.207 INFO    ] Handling start order...
[2026-06-22 10:11:42,209.209 INFO    ] handle_start_order_command
[2026-06-22 10:11:42,215.215 INFO    ] _send_start_order_success: request_id=start-order-1782103301165-sc822eqw6, order_id=TM06202507260622101058360
[2026-06-22 10:11:42,218.218 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM06202507
[2026-06-22 10:11:42,287.287 INFO    ] [_send_start_order_success] Message added to stream with ID: 1782103302238-0
[2026-06-22 10:11:42,290.290 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-22 10:11:42,292.292 INFO    ] Checking for system updates...
[2026-06-22 10:11:42,333.333 INFO    ] 200
[2026-06-22 10:11:42,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:11:42,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:11:42,391.391 INFO    ] No update needed
[2026-06-22 10:11:42,393.393 INFO    ] Checking for camera pi updates...
[2026-06-22 10:11:42,427.427 INFO    ] 200
[2026-06-22 10:11:42,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:11:42,469.469 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:11:42,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:11:42,559.559 INFO    ] No camera update needed
[2026-06-22 10:11:42,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:11:42,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:11:42,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:11:42,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:11:44,616.616 INFO    ] ================================================
[2026-06-22 10:11:44,630.630 INFO    ] Launching Daemon at Mon Jun 22 10:11:44 IST 2026
[2026-06-22 10:11:44,641.641 INFO    ] ================================================
[2026-06-22 10:11:45,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:11:45
[2026-06-22 10:11:45,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:11:46,202.202 INFO    ] Initializing speech engine...
[2026-06-22 10:11:46,214.214 INFO    ] 2026-06-22 10:11:46
[2026-06-22 10:11:46,524.524 INFO    ] 2026-06-22 10:11:46
[2026-06-22 10:11:46,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:11:46,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:11:46,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:11:46,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:11:47,036.036 INFO    ] time= 22/06/2026 10:11:47
[2026-06-22 10:11:47,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:11:47,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:11:47,224.224 INFO    ] Found 2 existing command(s) in stream
[2026-06-22 10:11:47,264.264 INFO    ] Checking historical command: ID=1782103302238-0
[2026-06-22 10:11:47,308.308 INFO    ] process_and_cleanup_command: msg_id=1782103302238-0
[2026-06-22 10:11:47,368.368 INFO    ] is_command_expired: timestamp=2026-06-22T04:41:42.216548Z, expiry=30s
[2026-06-22 10:11:47,600.600 INFO    ] Command removed from stream: 1782103302238-0. returning for processing...
[2026-06-22 10:11:47,603.603 INFO    ] ***** get_valid_command
[2026-06-22 10:11:47,658.658 INFO    ] {'status': 'success', 'message': 'start-order success', 'message_type': 'command_response', 'imei': 'TM06202507', 'metadata_request_id': 'start-order-1782103301165-sc822eqw6', 'timestamp': '2026-06-22T04:41:42.216548Z', 'metadata_order_id': 'TM06202507260622101058360'}
[2026-06-22 10:11:47,679.679 INFO    ] Checking historical command: ID=1782103304196-0
[2026-06-22 10:11:47,682.682 INFO    ] process_and_cleanup_command: msg_id=1782103304196-0
[2026-06-22 10:11:47,733.733 INFO    ] is_command_expired: timestamp=2026-06-22T04:41:43.354Z, expiry=30s
[2026-06-22 10:11:47,871.871 INFO    ] Command removed from stream: 1782103304196-0. returning for processing...
[2026-06-22 10:11:47,927.927 INFO    ] ***** get_valid_command
[2026-06-22 10:11:47,937.937 INFO    ] {'timestamp': '2026-06-22T04:41:43.354Z', 'command': 'process-order', 'data': '{"request_id":"process-order-1782103303354-lf28palur","orderId":"TM06202507260622101058360","is_vending":false,"accessCode":"86594009"}', 'timeout': '60', 'source': 'webapp'}
[2026-06-22 10:11:47,944.944 INFO    ] ***** Parsed command data: {'orderId': 'TM06202507260622101058360', 'request_id': 'process-order-1782103303354-lf28palur', 'accessCode': '86594009', 'is_vending': False}
[2026-06-22 10:11:47,953.953 INFO    ] Handling process order...
[2026-06-22 10:11:47,962.962 INFO    ] Processing process-order command...
[2026-06-22 10:11:47,971.971 INFO    ] 🔍 Lock file Order ID: TM06202507260622101058360, TS: 2026-06-22 10:11:42
[2026-06-22 10:11:47,990.990 INFO    ] ✅ Order lock valid for TM06202507260622101058360
[2026-06-22 10:11:47,996.996 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-22 10:11:48,003.003 INFO    ] processing access code 86594009 for order TM06202507260622101058360
[2026-06-22 10:11:48,011.011 INFO    ] 🔍 Lock file Order ID: TM06202507260622101058360, TS: 2026-06-22 10:11:42
[2026-06-22 10:11:48,018.018 INFO    ] ✅ Order lock valid for TM06202507260622101058360
[2026-06-22 10:11:48,025.025 INFO    ] 2026-06-22 10:11:48
[2026-06-22 10:11:48,074.074 INFO    ] 200
[2026-06-22 10:11:48,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:11:48,090.090 INFO    ] 86594009
[2026-06-22 10:11:48,096.096 INFO    ] 2026-06-22 10:11:48
[2026-06-22 10:11:48,103.103 INFO    ] session id :460744620
[2026-06-22 10:11:48,107.107 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=86594009&imei=TM06202507&session_id=460744620
[2026-06-22 10:11:49,669.669 INFO    ] 200
[2026-06-22 10:11:49,672.672 INFO    ] {"data": {"mobile": "9441442794", "order_id": "TM06202507260622101058360", "access_code": "86594009", "bill_amount": "10", "proposed_sku_json": [{"tray_id": "15", "qty": 1, "mrp": "10", "door_id": "1", "name": "McVities Triple Nut Cookies 58gm", "sku_total": 10, "image_url": "https://images.tinymart.in/product/4500714-2989.png", "offer_desc": "", "unit_price": 10, "skuid": "4500714", "offer_id": ""}], "invoice_bill": "10"}, "msg": "Order Data", "status": true, "rstatus": true}
[2026-06-22 10:11:49,675.675 INFO    ] 10
[2026-06-22 10:11:49,678.678 INFO    ] TM06202507260622101058360
[2026-06-22 10:11:49,680.680 INFO    ] 9441442794
[2026-06-22 10:11:49,683.683 INFO    ] 2026-06-22 10:11:49
[2026-06-22 10:11:49,686.686 INFO    ] Door Opening for user mobile ending with  two seven nine four 
[2026-06-22 10:11:49,689.689 INFO    ] Door Opening for user mobile ending with  two seven nine four 
[2026-06-22 10:11:49,692.692 INFO    ] 95495eff52f2c8047e652c0bce84744d
[2026-06-22 10:11:49,695.695 INFO    ] 2026-06-22 10:11:49
[2026-06-22 10:11:49,697.697 INFO    ] playing audio file
[2026-06-22 10:11:49,716.716 INFO    ] 2026-06-22 10:11:49
[2026-06-22 10:11:49,719.719 INFO    ] 2026-06-22 10:11:49
[2026-06-22 10:11:49,724.724 INFO    ] publish_status: order_id=TM06202507260622101058360
[2026-06-22 10:11:49,727.727 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622101058360
[2026-06-22 10:11:49,791.791 INFO    ] [publish_status] Message added to stream with ID: 1782103309728-0
[2026-06-22 10:11:49,794.794 INFO    ] Published to order:TM06202507260622101058360: {'server_status': 'order-started', 'order_id': 'TM06202507260622101058360', 'timestamp': '2026-06-22T04:41:49.721620Z', 'server_response': '{"rstatus": true, "data": {"bill_amount": "10", "proposed_sku_json": [{"sku_total": 10, "offer_id": "", "tray_id": "15", "skuid": "4500714", "mrp": "10", "unit_price": 10, "image_url": "https://images.tinymart.in/product/4500714-2989.png", "door_id": "1", "qty": 1, "name": "McVities Triple Nut Cookies 58gm", "offer_desc": ""}], "order_id": "TM06202507260622101058360", "invoice_bill": "10", "mobile": "9441442794", "access_code": "86594009"}, "status": true, "msg": "Order Data"}'} (ID: 1782103309728-0)
[2026-06-22 10:11:50,497.497 INFO    ] {'server_status': 'order-started', 'order_id': 'TM06202507260622101058360', 'server_response': {'rstatus': True, 'data': {'bill_amount': '10', 'proposed_sku_json': [{'sku_total': 10, 'offer_id': '', 'tray_id': '15', 'skuid': '4500714', 'mrp': '10', 'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500714-2989.png', 'door_id': '1', 'qty': 1, 'name': 'McVities Triple Nut Cookies 58gm', 'offer_desc': ''}], 'order_id': 'TM06202507260622101058360', 'invoice_bill': '10', 'mobile': '9441442794', 'access_code': '86594009'}, 'status': True, 'msg': 'Order Data'}}
[2026-06-22 10:11:50,500.500 INFO    ] 200
[2026-06-22 10:11:50,502.502 INFO    ] {"data":{"server_status":"order-started","order_id":"TM06202507260622101058360","server_response":{"rstatus":true,"data":{"bill_amount":"10","proposed_sku_json":[{"sku_total":10,"offer_id":"","tray_id":"15","skuid":"4500714","mrp":"10","unit_price":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500714-2989.png","door_id":"1","qty":1,"name":"McVities Triple Nut Cookies 58gm","offer_desc":""}],"order_id":"TM06202507260622101058360","invoice_bill":"10","mobile":"9441442794","access_code":"86594009"},"status":true,"msg":"Order Data"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 10:11:50,505.505 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}, 'data': {'server_status': 'order-started', 'order_id': 'TM06202507260622101058360', 'server_response': {'msg': 'Order Data', 'data': {'bill_amount': '10', 'access_code': '86594009', 'order_id': 'TM06202507260622101058360', 'proposed_sku_json': [{'sku_total': 10, 'tray_id': '15', 'offer_desc': '', 'offer_id': '', 'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500714-2989.png', 'name': 'McVities Triple Nut Cookies 58gm', 'door_id': '1', 'skuid': '4500714', 'mrp': '10', 'qty': 1}], 'mobile': '9441442794', 'invoice_bill': '10'}, 'status': True, 'rstatus': True}}}
[2026-06-22 10:11:50,508.508 INFO    ] 2026-06-22 10:11:50
[2026-06-22 10:11:50,553.553 INFO    ] 200
[2026-06-22 10:11:50,556.556 INFO    ] True
[2026-06-22 10:11:50,691.691 INFO    ] 200
[2026-06-22 10:11:50,693.693 INFO    ] {"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": ""}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 10:11:50,697.697 INFO    ] {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'rstatus': False, 'status': 'False', 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait'}
[2026-06-22 10:11:50,700.700 INFO    ] *** process_order ***
[2026-06-22 10:11:51,879.879 INFO    ] 200
[2026-06-22 10:11:51,882.882 INFO    ] {"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": ""}, "rstatus": true, "delay": 0, "status": "True", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 10:11:51,885.885 INFO    ] {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'rstatus': True, 'status': 'True', 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait'}
[2026-06-22 10:11:51,887.887 INFO    ] *** process_order ***
[2026-06-22 10:11:51,890.890 INFO    ] publish_status: order_id=TM06202507260622101058360
[2026-06-22 10:11:51,892.892 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622101058360
[2026-06-22 10:11:51,959.959 INFO    ] [publish_status] Message added to stream with ID: 1782103311908-0
[2026-06-22 10:11:51,962.962 INFO    ] Published to order:TM06202507260622101058360: {'server_status': 'doorOpened', 'order_id': 'TM06202507260622101058360', 'server_response': '{"SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "You can pull the door now."}, "status": "True", "rstatus": true, "delay": 0, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Door is open..."}'} (ID: 1782103311908-0)
[2026-06-22 10:11:53,041.041 INFO    ] 2026-06-22 10:11:53
[2026-06-22 10:11:53,043.043 INFO    ] publish_status: order_id=TM06202507260622101058360
[2026-06-22 10:11:53,046.046 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622101058360
[2026-06-22 10:11:53,140.140 INFO    ] [publish_status] Message added to stream with ID: 1782103313088-0
[2026-06-22 10:11:53,143.143 INFO    ] Published to order:TM06202507260622101058360: {'server_status': 'processOrder', 'order_id': 'TM06202507260622101058360', 'timestamp': '2026-06-22T04:41:53.042364Z', 'server_response': '{"SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "rstatus": true, "status": "True", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}'} (ID: 1782103313088-0)
[2026-06-22 10:11:53,276.276 INFO    ] {'server_status': 'processOrder', 'order_id': 'TM06202507260622101058360', 'server_response': {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'rstatus': True, 'status': 'True', 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait'}}
[2026-06-22 10:11:53,279.279 INFO    ] 200
[2026-06-22 10:11:53,281.281 INFO    ] {"data":{"server_status":"processOrder","order_id":"TM06202507260622101058360","server_response":{"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"SectionStatus":{"UI_Header":"","Header":" Your order is under process  ","Note":"","SubHeader":"Please wait while we process your order"},"rstatus":true,"status":"true","delay":0,"SectionMain":{"Header":"Processing Order"},"voiceNote":"Please Wait"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 10:11:53,285.285 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}, 'data': {'server_status': 'processOrder', 'order_id': 'TM06202507260622101058360', 'server_response': {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'rstatus': True, 'status': 'true', 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait'}}}
[2026-06-22 10:11:53,287.287 INFO    ] 2026-06-22 10:11:53
[2026-06-22 10:11:53,290.290 INFO    ] None
[2026-06-22 10:11:53,293.293 INFO    ] Opening Door now
[2026-06-22 10:11:53,295.295 INFO    ] Opening Door now
[2026-06-22 10:11:53,298.298 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-22 10:11:53,301.301 INFO    ] 2026-06-22 10:11:53
[2026-06-22 10:11:53,304.304 INFO    ] playing audio file
[2026-06-22 10:11:53,321.321 INFO    ] 2026-06-22 10:11:53
[2026-06-22 10:11:53,324.324 INFO    ] 2026-06-22 10:11:53
[2026-06-22 10:11:56,385.385 INFO    ] 200
[2026-06-22 10:11:56,388.388 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "McVities Triple Nut Cookies 58gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Door 1 is open now"}
[2026-06-22 10:11:56,391.391 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'McVities Triple Nut Cookies 58gm'}]}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'status': 'False', 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Door 1 is open now'}
[2026-06-22 10:11:59,464.464 INFO    ] 200
[2026-06-22 10:11:59,467.467 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "McVities Triple Nut Cookies 58gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 10:11:59,471.471 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'McVities Triple Nut Cookies 58gm'}]}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'status': 'False', 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1'}
[2026-06-22 10:12:02,542.542 INFO    ] 200
[2026-06-22 10:12:02,546.546 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "McVities Triple Nut Cookies 58gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 10:12:02,549.549 INFO    ] Please close door 1
[2026-06-22 10:12:02,552.552 INFO    ] Please close door 1
[2026-06-22 10:12:02,555.555 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-22 10:12:02,558.558 INFO    ] 2026-06-22 10:12:02
[2026-06-22 10:12:02,561.561 INFO    ] playing audio file
[2026-06-22 10:12:02,580.580 INFO    ] 2026-06-22 10:12:02
[2026-06-22 10:12:02,584.584 INFO    ] publish_status: order_id=TM06202507260622101058360
[2026-06-22 10:12:02,587.587 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622101058360
[2026-06-22 10:12:02,658.658 INFO    ] [publish_status] Message added to stream with ID: 1782103322603-0
[2026-06-22 10:12:02,661.661 INFO    ] Published to order:TM06202507260622101058360: {'server_status': 'OrderStatus', 'order_id': 'TM06202507260622101058360', 'timestamp': '2026-06-22T04:42:02.582139Z', 'server_response': '{"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "McVities Triple Nut Cookies 58gm"}]}, "SectionStatus": {"UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "status": "False", "error": {"umessage": "In Progress", "code": 20001, "data": {}, "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}'} (ID: 1782103322603-0)
[2026-06-22 10:12:03,259.259 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM06202507260622101058360', 'server_response': {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'McVities Triple Nut Cookies 58gm'}]}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'status': 'False', 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1'}}
[2026-06-22 10:12:03,263.263 INFO    ] 200
[2026-06-22 10:12:03,266.266 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM06202507260622101058360","server_response":{"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"McVities Triple Nut Cookies 58gm"}]},"SectionStatus":{"UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Header":"Please Close Door 1","Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"status":"false","error":{"umessage":"In Progress","code":20001,"data":[],"tmessage":"In Progress"},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 10:12:03,270.270 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}, 'data': {'server_status': 'OrderStatus', 'order_id': 'TM06202507260622101058360', 'server_response': {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'McVities Triple Nut Cookies 58gm'}]}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'status': 'false', 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1'}}}
[2026-06-22 10:12:03,274.274 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'McVities Triple Nut Cookies 58gm'}]}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'status': 'False', 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1'}
[2026-06-22 10:12:06,338.338 INFO    ] 200
[2026-06-22 10:12:06,341.341 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "McVities Triple Nut Cookies 58gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 10:12:06,345.345 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'McVities Triple Nut Cookies 58gm'}]}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'status': 'False', 'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1'}
[2026-06-22 10:12:09,418.418 INFO    ] 200
[2026-06-22 10:12:09,421.421 INFO    ] {"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"}, "rstatus": true, "delay": 100, "status": "True", "SectionMain": {"Header": "Door Closed"}, "voiceNote": "Transaction Completed"}
[2026-06-22 10:12:09,425.425 INFO    ] {'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionStatus': {'UI_Header': '', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate'}, 'rstatus': True, 'status': 'True', 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed'}
[2026-06-22 10:12:09,428.428 INFO    ] 2026-06-22 10:12:09
[2026-06-22 10:12:09,431.431 INFO    ] Order Completed 
[2026-06-22 10:12:09,435.435 INFO    ] Order Completed 
[2026-06-22 10:12:09,438.438 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-22 10:12:09,442.442 INFO    ] 2026-06-22 10:12:09
[2026-06-22 10:12:09,445.445 INFO    ] playing audio file
[2026-06-22 10:12:09,465.465 INFO    ] 2026-06-22 10:12:09
[2026-06-22 10:12:09,469.469 INFO    ] {'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionStatus': {'UI_Header': '', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate'}, 'rstatus': True, 'status': 'True', 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed'}
[2026-06-22 10:12:09,472.472 INFO    ] 2026-06-22 10:12:09
[2026-06-22 10:12:09,887.887 INFO    ] 200
[2026-06-22 10:12:09,890.890 INFO    ] {"skus": [{"tray_id": "15", "qty": 1, "mrp": "10", "door_id": "", "name": "McVities Triple Nut Cookies 58gm per peice", "sku_total": 10.0, "image_url": "https://images.tinymart.in/product/4500714-2989.png", "unit_price": "10", "skuid": "4500714"}], "anomaly": 0, "rstatus": true, "orderId": "TM06202507260622101058360", "logic": "WBL", "total_amount": 10.0, "res": "True"}
[2026-06-22 10:12:09,894.894 INFO    ] {'total_amount': 10.0, 'res': 'True', 'anomaly': 0, 'skus': [{'sku_total': 10.0, 'tray_id': '15', 'mrp': '10', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500714-2989.png', 'door_id': '', 'qty': 1, 'name': 'McVities Triple Nut Cookies 58gm per peice', 'skuid': '4500714'}], 'rstatus': True, 'orderId': 'TM06202507260622101058360', 'logic': 'WBL'}
[2026-06-22 10:12:09,898.898 INFO    ] {'total_amount': 10.0, 'res': 'True', 'anomaly': 0, 'skus': [{'sku_total': 10.0, 'tray_id': '15', 'mrp': '10', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500714-2989.png', 'door_id': '', 'qty': 1, 'name': 'McVities Triple Nut Cookies 58gm per peice', 'skuid': '4500714'}], 'rstatus': True, 'orderId': 'TM06202507260622101058360', 'logic': 'WBL'}
[2026-06-22 10:12:09,901.901 INFO    ] 2026-06-22 10:12:09
[2026-06-22 10:12:09,905.905 INFO    ] 2026-06-22 10:12:09
[2026-06-22 10:12:09,908.908 INFO    ] 10
[2026-06-22 10:12:09,911.911 INFO    ] 2026-06-22 10:12:09
[2026-06-22 10:12:09,915.915 INFO    ] 2026-06-22 10:12:09
[2026-06-22 10:12:09,920.920 INFO    ]  Your Bill Amount is 10
[2026-06-22 10:12:09,923.923 INFO    ]  Your Bill Amount is 10
[2026-06-22 10:12:09,926.926 INFO    ] 85bfbe5b6a8f89327a526d08bc1ad1da
[2026-06-22 10:12:09,930.930 INFO    ] 2026-06-22 10:12:09
[2026-06-22 10:12:09,934.934 INFO    ] playing audio file
[2026-06-22 10:12:09,954.954 INFO    ] 2026-06-22 10:12:09
[2026-06-22 10:12:09,958.958 INFO    ] 2026-06-22 10:12:09
[2026-06-22 10:12:09,963.963 INFO    ] publish_status: order_id=TM06202507260622101058360
[2026-06-22 10:12:09,967.967 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622101058360
[2026-06-22 10:12:10,031.031 INFO    ] [publish_status] Message added to stream with ID: 1782103329978-0
[2026-06-22 10:12:10,035.035 INFO    ] Published to order:TM06202507260622101058360: {'server_status': 'invoiceOrder', 'order_id': 'TM06202507260622101058360', 'timestamp': '2026-06-22T04:42:09.960562Z', 'server_response': '{"total_amount": 10.0, "res": "True", "anomaly": 0, "skus": [{"sku_total": 10.0, "tray_id": "15", "mrp": "10", "unit_price": "10", "image_url": "https://images.tinymart.in/product/4500714-2989.png", "door_id": "", "qty": 1, "name": "McVities Triple Nut Cookies 58gm per peice", "skuid": "4500714"}], "rstatus": true, "orderId": "TM06202507260622101058360", "logic": "WBL"}'} (ID: 1782103329978-0)
[2026-06-22 10:12:10,578.578 INFO    ] {'server_status': 'invoiceOrder', 'order_id': 'TM06202507260622101058360', 'server_response': {'total_amount': 10.0, 'res': 'True', 'anomaly': 0, 'skus': [{'sku_total': 10.0, 'tray_id': '15', 'mrp': '10', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500714-2989.png', 'door_id': '', 'qty': 1, 'name': 'McVities Triple Nut Cookies 58gm per peice', 'skuid': '4500714'}], 'rstatus': True, 'orderId': 'TM06202507260622101058360', 'logic': 'WBL'}}
[2026-06-22 10:12:10,582.582 INFO    ] 200
[2026-06-22 10:12:10,585.585 INFO    ] {"data":{"server_status":"invoiceOrder","order_id":"TM06202507260622101058360","server_response":{"total_amount":10,"res":"true","anomaly":0,"skus":[{"sku_total":10,"tray_id":"15","mrp":"10","unit_price":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500714-2989.png","door_id":"","qty":1,"name":"McVities Triple Nut Cookies 58gm per peice","skuid":"4500714"}],"rstatus":true,"orderId":"TM06202507260622101058360","logic":"WBL"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 10:12:10,590.590 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}, 'data': {'server_status': 'invoiceOrder', 'order_id': 'TM06202507260622101058360', 'server_response': {'total_amount': 10, 'res': 'true', 'anomaly': 0, 'skus': [{'sku_total': 10, 'tray_id': '15', 'name': 'McVities Triple Nut Cookies 58gm per peice', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500714-2989.png', 'door_id': '', 'qty': 1, 'mrp': '10', 'skuid': '4500714'}], 'rstatus': True, 'orderId': 'TM06202507260622101058360', 'logic': 'WBL'}}}
[2026-06-22 10:12:10,594.594 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}, 'data': {'server_status': 'invoiceOrder', 'order_id': 'TM06202507260622101058360', 'server_response': {'total_amount': 10, 'res': 'true', 'anomaly': 0, 'skus': [{'sku_total': 10, 'tray_id': '15', 'name': 'McVities Triple Nut Cookies 58gm per peice', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500714-2989.png', 'door_id': '', 'qty': 1, 'mrp': '10', 'skuid': '4500714'}], 'rstatus': True, 'orderId': 'TM06202507260622101058360', 'logic': 'WBL'}}}
[2026-06-22 10:12:10,598.598 INFO    ] 2026-06-22 10:12:10
[2026-06-22 10:12:14,884.884 INFO    ] 200
[2026-06-22 10:12:14,887.887 INFO    ] {"orders_data_synced": [], "order_items": [], "orders_data": [], "orders_synced": [], "tray_synced": ["TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360", "TM06202507260622101058360"], "order_items_synced": ["TM06202507260622101058360_0"], "orders": [], "status": true, "tray_sync": []}
[2026-06-22 10:12:14,890.890 INFO    ] 2026-06-22 10:12:14
[2026-06-22 10:12:15,008.008 INFO    ] 200
[2026-06-22 10:12:15,011.011 INFO    ] True
[2026-06-22 10:12:15,014.014 INFO    ] cleanup_start_order_file_after_processing: order_id=TM06202507260622101058360
[2026-06-22 10:12:15,019.019 INFO    ] start order file deleted
[2026-06-22 10:12:15,022.022 INFO    ] Checking for system updates...
[2026-06-22 10:12:15,058.058 INFO    ] 200
[2026-06-22 10:12:15,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:12:15,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:12:15,118.118 INFO    ] No update needed
[2026-06-22 10:12:15,121.121 INFO    ] Checking for camera pi updates...
[2026-06-22 10:12:15,157.157 INFO    ] 200
[2026-06-22 10:12:15,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:12:15,201.201 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:12:15,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:12:15,284.284 INFO    ] No camera update needed
[2026-06-22 10:12:15,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:12:15,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:12:15,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:12:15,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:12:17,346.346 INFO    ] ================================================
[2026-06-22 10:12:17,367.367 INFO    ] Launching Daemon at Mon Jun 22 10:12:17 IST 2026
[2026-06-22 10:12:17,378.378 INFO    ] ================================================
[2026-06-22 10:12:18,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:12:18
[2026-06-22 10:12:18,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:12:19,035.035 INFO    ] Initializing speech engine...
[2026-06-22 10:12:19,049.049 INFO    ] 2026-06-22 10:12:19
[2026-06-22 10:12:19,359.359 INFO    ] 2026-06-22 10:12:19
[2026-06-22 10:12:19,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:12:19,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:12:19,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:12:19,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:12:19,870.870 INFO    ] time= 22/06/2026 10:12:19
[2026-06-22 10:12:19,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:12:19,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:12:20,044.044 INFO    ] No existing commands found in stream
[2026-06-22 10:12:25,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:12:25,082.082 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-22 10:12:27,625.625 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:12:27,628.628 INFO    ] Checking for system updates...
[2026-06-22 10:12:27,666.666 INFO    ] 200
[2026-06-22 10:12:27,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:12:27,722.722 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:12:27,725.725 INFO    ] No update needed
[2026-06-22 10:12:27,728.728 INFO    ] Checking for camera pi updates...
[2026-06-22 10:12:27,763.763 INFO    ] 200
[2026-06-22 10:12:27,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:12:27,809.809 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:12:27,899.899 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:12:27,902.902 INFO    ] No camera update needed
[2026-06-22 10:12:27,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:12:27,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:12:27,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:12:27,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:12:29,964.964 INFO    ] ================================================
[2026-06-22 10:12:29,979.979 INFO    ] Launching Daemon at Mon Jun 22 10:12:29 IST 2026
[2026-06-22 10:12:29,989.989 INFO    ] ================================================
[2026-06-22 10:12:30,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:12:30
[2026-06-22 10:12:31,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:12:31,379.379 INFO    ] Initializing speech engine...
[2026-06-22 10:12:31,397.397 INFO    ] 2026-06-22 10:12:31
[2026-06-22 10:12:31,681.681 INFO    ] 2026-06-22 10:12:31
[2026-06-22 10:12:31,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:12:31,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:12:31,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:12:32,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:12:32,089.089 INFO    ] time= 22/06/2026 10:12:32
[2026-06-22 10:12:32,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:12:32,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:12:32,355.355 INFO    ] No existing commands found in stream
[2026-06-22 10:12:37,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:12:37,372.372 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-22 10:12:39,939.939 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:12:39,942.942 INFO    ] Checking for system updates...
[2026-06-22 10:12:39,982.982 INFO    ] 200
[2026-06-22 10:12:39,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:12:40,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:12:40,039.039 INFO    ] No update needed
[2026-06-22 10:12:40,042.042 INFO    ] Checking for camera pi updates...
[2026-06-22 10:12:40,075.075 INFO    ] 200
[2026-06-22 10:12:40,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:12:40,118.118 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:12:40,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:12:40,208.208 INFO    ] No camera update needed
[2026-06-22 10:12:40,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:12:40,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:12:40,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:12:40,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:12:42,265.265 INFO    ] ================================================
[2026-06-22 10:12:42,280.280 INFO    ] Launching Daemon at Mon Jun 22 10:12:42 IST 2026
[2026-06-22 10:12:42,290.290 INFO    ] ================================================
[2026-06-22 10:12:42,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:12:42
[2026-06-22 10:12:43,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:12:43,662.662 INFO    ] Initializing speech engine...
[2026-06-22 10:12:43,671.671 INFO    ] 2026-06-22 10:12:43
[2026-06-22 10:12:43,934.934 INFO    ] 2026-06-22 10:12:43
[2026-06-22 10:12:43,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:12:44,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:12:44,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:12:44,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:12:44,406.406 INFO    ] time= 22/06/2026 10:12:44
[2026-06-22 10:12:44,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:12:44,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:12:44,620.620 INFO    ] No existing commands found in stream
[2026-06-22 10:12:49,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:12:49,646.646 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-22 10:12:52,875.875 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:12:52,876.876 INFO    ] Checking for system updates...
[2026-06-22 10:12:52,901.901 INFO    ] 200
[2026-06-22 10:12:52,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:12:52,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:12:52,970.970 INFO    ] No update needed
[2026-06-22 10:12:52,973.973 INFO    ] Checking for camera pi updates...
[2026-06-22 10:12:53,007.007 INFO    ] 200
[2026-06-22 10:12:53,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:12:53,050.050 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:12:53,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:12:53,121.121 INFO    ] No camera update needed
[2026-06-22 10:12:53,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:12:53,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:12:53,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:12:53,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:12:55,179.179 INFO    ] ================================================
[2026-06-22 10:12:55,194.194 INFO    ] Launching Daemon at Mon Jun 22 10:12:55 IST 2026
[2026-06-22 10:12:55,205.205 INFO    ] ================================================
[2026-06-22 10:12:55,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:12:55
[2026-06-22 10:12:56,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:12:56,551.551 INFO    ] Initializing speech engine...
[2026-06-22 10:12:56,559.559 INFO    ] 2026-06-22 10:12:56
[2026-06-22 10:12:56,811.811 INFO    ] 2026-06-22 10:12:56
[2026-06-22 10:12:56,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:12:57,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:12:57,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:12:57,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:12:57,276.276 INFO    ] time= 22/06/2026 10:12:57
[2026-06-22 10:12:57,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:12:57,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:12:57,537.537 INFO    ] No existing commands found in stream
[2026-06-22 10:13:02,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:13:02,550.550 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-22 10:13:04,171.171 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:13:04,173.173 INFO    ] Checking for system updates...
[2026-06-22 10:13:04,209.209 INFO    ] 200
[2026-06-22 10:13:04,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:13:04,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:13:04,267.267 INFO    ] No update needed
[2026-06-22 10:13:04,269.269 INFO    ] Checking for camera pi updates...
[2026-06-22 10:13:04,303.303 INFO    ] 200
[2026-06-22 10:13:04,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:13:04,349.349 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:13:04,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:13:04,439.439 INFO    ] No camera update needed
[2026-06-22 10:13:04,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:13:04,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:13:04,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:13:04,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:13:06,496.496 INFO    ] ================================================
[2026-06-22 10:13:06,511.511 INFO    ] Launching Daemon at Mon Jun 22 10:13:06 IST 2026
[2026-06-22 10:13:06,521.521 INFO    ] ================================================
[2026-06-22 10:13:07,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:13:07
[2026-06-22 10:13:07,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:13:08,153.153 INFO    ] Initializing speech engine...
[2026-06-22 10:13:08,167.167 INFO    ] 2026-06-22 10:13:08
[2026-06-22 10:13:08,480.480 INFO    ] 2026-06-22 10:13:08
[2026-06-22 10:13:08,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:13:08,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:13:08,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:13:08,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:13:08,987.987 INFO    ] time= 22/06/2026 10:13:08
[2026-06-22 10:13:09,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:13:09,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:13:09,143.143 INFO    ] No existing commands found in stream
[2026-06-22 10:13:14,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:13:14,171.171 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-22 10:13:18,383.383 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:13:18,386.386 INFO    ] Checking for system updates...
[2026-06-22 10:13:18,423.423 INFO    ] 200
[2026-06-22 10:13:18,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:13:18,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:13:18,488.488 INFO    ] No update needed
[2026-06-22 10:13:18,490.490 INFO    ] Checking for camera pi updates...
[2026-06-22 10:13:18,524.524 INFO    ] 200
[2026-06-22 10:13:18,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:13:18,567.567 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:13:18,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:13:18,655.655 INFO    ] No camera update needed
[2026-06-22 10:13:18,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:13:18,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:13:18,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:13:18,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:13:20,711.711 INFO    ] ================================================
[2026-06-22 10:13:20,726.726 INFO    ] Launching Daemon at Mon Jun 22 10:13:20 IST 2026
[2026-06-22 10:13:20,737.737 INFO    ] ================================================
[2026-06-22 10:13:21,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:13:21
[2026-06-22 10:13:21,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:13:22,102.102 INFO    ] Initializing speech engine...
[2026-06-22 10:13:22,111.111 INFO    ] 2026-06-22 10:13:22
[2026-06-22 10:13:22,371.371 INFO    ] 2026-06-22 10:13:22
[2026-06-22 10:13:22,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:13:22,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:13:22,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:13:22,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:13:22,790.790 INFO    ] time= 22/06/2026 10:13:22
[2026-06-22 10:13:22,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:13:22,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:13:22,939.939 INFO    ] No existing commands found in stream
[2026-06-22 10:13:27,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:13:27,952.952 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-22 10:13:32,092.092 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:13:32,095.095 INFO    ] Checking for system updates...
[2026-06-22 10:13:32,138.138 INFO    ] 200
[2026-06-22 10:13:32,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:13:32,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:13:32,202.202 INFO    ] No update needed
[2026-06-22 10:13:32,205.205 INFO    ] Checking for camera pi updates...
[2026-06-22 10:13:32,248.248 INFO    ] 200
[2026-06-22 10:13:32,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:13:32,294.294 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:13:32,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:13:32,351.351 INFO    ] No camera update needed
[2026-06-22 10:13:32,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:13:32,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:13:32,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:13:32,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:13:34,418.418 INFO    ] ================================================
[2026-06-22 10:13:34,434.434 INFO    ] Launching Daemon at Mon Jun 22 10:13:34 IST 2026
[2026-06-22 10:13:34,445.445 INFO    ] ================================================
[2026-06-22 10:13:35,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:13:35
[2026-06-22 10:13:35,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:13:35,993.993 INFO    ] Initializing speech engine...
[2026-06-22 10:13:36,007.007 INFO    ] 2026-06-22 10:13:35
[2026-06-22 10:13:36,294.294 INFO    ] 2026-06-22 10:13:36
[2026-06-22 10:13:36,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:13:36,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:13:36,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:13:36,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:13:36,767.767 INFO    ] time= 22/06/2026 10:13:36
[2026-06-22 10:13:36,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:13:36,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:13:36,985.985 INFO    ] No existing commands found in stream
[2026-06-22 10:13:42,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:13:42,017.017 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-22 10:13:42,805.805 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:13:42,807.807 INFO    ] Checking for system updates...
[2026-06-22 10:13:42,829.829 INFO    ] 200
[2026-06-22 10:13:42,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:13:42,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:13:42,878.878 INFO    ] No update needed
[2026-06-22 10:13:42,881.881 INFO    ] Checking for camera pi updates...
[2026-06-22 10:13:42,915.915 INFO    ] 200
[2026-06-22 10:13:42,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:13:42,958.958 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:13:43,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:13:43,056.056 INFO    ] No camera update needed
[2026-06-22 10:13:43,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:13:43,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:13:43,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:13:43,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:13:45,113.113 INFO    ] ================================================
[2026-06-22 10:13:45,129.129 INFO    ] Launching Daemon at Mon Jun 22 10:13:45 IST 2026
[2026-06-22 10:13:45,140.140 INFO    ] ================================================
[2026-06-22 10:13:45,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:13:45
[2026-06-22 10:13:46,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:13:46,685.685 INFO    ] Initializing speech engine...
[2026-06-22 10:13:46,698.698 INFO    ] 2026-06-22 10:13:46
[2026-06-22 10:13:46,971.971 INFO    ] 2026-06-22 10:13:46
[2026-06-22 10:13:47,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:13:47,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:13:47,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:13:47,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:13:47,486.486 INFO    ] time= 22/06/2026 10:13:47
[2026-06-22 10:13:47,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:13:47,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:13:47,683.683 INFO    ] No existing commands found in stream
[2026-06-22 10:13:52,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:13:52,707.707 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-22 10:13:53,534.534 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:13:53,537.537 INFO    ] Checking for system updates...
[2026-06-22 10:13:53,578.578 INFO    ] 200
[2026-06-22 10:13:53,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:13:53,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:13:53,635.635 INFO    ] No update needed
[2026-06-22 10:13:53,638.638 INFO    ] Checking for camera pi updates...
[2026-06-22 10:13:53,672.672 INFO    ] 200
[2026-06-22 10:13:53,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:13:53,715.715 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:13:53,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:13:53,800.800 INFO    ] No camera update needed
[2026-06-22 10:13:53,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:13:53,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:13:53,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:13:53,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:13:55,856.856 INFO    ] ================================================
[2026-06-22 10:13:55,871.871 INFO    ] Launching Daemon at Mon Jun 22 10:13:55 IST 2026
[2026-06-22 10:13:55,882.882 INFO    ] ================================================
[2026-06-22 10:13:56,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:13:56
[2026-06-22 10:13:56,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:13:57,210.210 INFO    ] Initializing speech engine...
[2026-06-22 10:13:57,216.216 INFO    ] 2026-06-22 10:13:57
[2026-06-22 10:13:57,515.515 INFO    ] 2026-06-22 10:13:57
[2026-06-22 10:13:57,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:13:57,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:13:57,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:13:57,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:13:57,942.942 INFO    ] time= 22/06/2026 10:13:57
[2026-06-22 10:13:57,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:13:57,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:13:58,119.119 INFO    ] No existing commands found in stream
[2026-06-22 10:14:03,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:14:03,147.147 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-22 10:14:03,642.642 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:14:03,644.644 INFO    ] Checking for system updates...
[2026-06-22 10:14:03,687.687 INFO    ] 200
[2026-06-22 10:14:03,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:14:03,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:14:03,745.745 INFO    ] No update needed
[2026-06-22 10:14:03,747.747 INFO    ] Checking for camera pi updates...
[2026-06-22 10:14:03,781.781 INFO    ] 200
[2026-06-22 10:14:03,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:14:03,824.824 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:14:03,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:14:03,907.907 INFO    ] No camera update needed
[2026-06-22 10:14:03,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:14:03,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:14:03,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:14:03,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:14:05,962.962 INFO    ] ================================================
[2026-06-22 10:14:05,978.978 INFO    ] Launching Daemon at Mon Jun 22 10:14:05 IST 2026
[2026-06-22 10:14:05,990.990 INFO    ] ================================================
[2026-06-22 10:14:06,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:14:06
[2026-06-22 10:14:07,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:14:07,459.459 INFO    ] Initializing speech engine...
[2026-06-22 10:14:07,467.467 INFO    ] 2026-06-22 10:14:07
[2026-06-22 10:14:07,740.740 INFO    ] 2026-06-22 10:14:07
[2026-06-22 10:14:07,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:14:08,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:14:08,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:14:08,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:14:08,343.343 INFO    ] time= 22/06/2026 10:14:08
[2026-06-22 10:14:08,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:14:08,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:14:08,608.608 INFO    ] No existing commands found in stream
[2026-06-22 10:14:13,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:14:13,647.647 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-22 10:14:14,877.877 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:14:14,878.878 INFO    ] Checking for system updates...
[2026-06-22 10:14:14,899.899 INFO    ] 200
[2026-06-22 10:14:14,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:14:14,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:14:14,938.938 INFO    ] No update needed
[2026-06-22 10:14:14,940.940 INFO    ] Checking for camera pi updates...
[2026-06-22 10:14:14,977.977 INFO    ] 200
[2026-06-22 10:14:14,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:14:15,024.024 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:14:15,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:14:15,119.119 INFO    ] No camera update needed
[2026-06-22 10:14:15,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:14:15,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:14:15,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:14:15,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:14:17,175.175 INFO    ] ================================================
[2026-06-22 10:14:17,191.191 INFO    ] Launching Daemon at Mon Jun 22 10:14:17 IST 2026
[2026-06-22 10:14:17,202.202 INFO    ] ================================================
[2026-06-22 10:14:17,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:14:17
[2026-06-22 10:14:18,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:14:18,539.539 INFO    ] Initializing speech engine...
[2026-06-22 10:14:18,558.558 INFO    ] 2026-06-22 10:14:18
[2026-06-22 10:14:18,825.825 INFO    ] 2026-06-22 10:14:18
[2026-06-22 10:14:18,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:14:19,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:14:19,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:14:19,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:14:19,237.237 INFO    ] time= 22/06/2026 10:14:19
[2026-06-22 10:14:19,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:14:19,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:14:19,323.323 INFO    ] No existing commands found in stream
[2026-06-22 10:14:24,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:14:24,341.341 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-22 10:14:27,350.350 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:14:27,353.353 INFO    ] Checking for system updates...
[2026-06-22 10:14:27,388.388 INFO    ] 200
[2026-06-22 10:14:27,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:14:27,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:14:27,446.446 INFO    ] No update needed
[2026-06-22 10:14:27,449.449 INFO    ] Checking for camera pi updates...
[2026-06-22 10:14:27,482.482 INFO    ] 200
[2026-06-22 10:14:27,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:14:27,527.527 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:14:27,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:14:27,611.611 INFO    ] No camera update needed
[2026-06-22 10:14:27,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:14:27,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:14:27,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:14:27,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:14:29,666.666 INFO    ] ================================================
[2026-06-22 10:14:29,682.682 INFO    ] Launching Daemon at Mon Jun 22 10:14:29 IST 2026
[2026-06-22 10:14:29,693.693 INFO    ] ================================================
[2026-06-22 10:14:30,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:14:30
[2026-06-22 10:14:30,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:14:31,019.019 INFO    ] Initializing speech engine...
[2026-06-22 10:14:31,025.025 INFO    ] 2026-06-22 10:14:31
[2026-06-22 10:14:31,315.315 INFO    ] 2026-06-22 10:14:31
[2026-06-22 10:14:31,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:14:31,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:14:31,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:14:31,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:14:31,771.771 INFO    ] time= 22/06/2026 10:14:31
[2026-06-22 10:14:31,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:14:31,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:14:32,000.000 INFO    ] No existing commands found in stream
[2026-06-22 10:14:37,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:14:37,021.021 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-22 10:14:39,035.035 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:14:39,037.037 INFO    ] Checking for system updates...
[2026-06-22 10:14:39,076.076 INFO    ] 200
[2026-06-22 10:14:39,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:14:39,131.131 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:14:39,133.133 INFO    ] No update needed
[2026-06-22 10:14:39,135.135 INFO    ] Checking for camera pi updates...
[2026-06-22 10:14:39,169.169 INFO    ] 200
[2026-06-22 10:14:39,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:14:39,211.211 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:14:39,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:14:39,294.294 INFO    ] No camera update needed
[2026-06-22 10:14:39,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:14:39,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:14:39,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:14:39,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:14:41,351.351 INFO    ] ================================================
[2026-06-22 10:14:41,367.367 INFO    ] Launching Daemon at Mon Jun 22 10:14:41 IST 2026
[2026-06-22 10:14:41,377.377 INFO    ] ================================================
[2026-06-22 10:14:41,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:14:41
[2026-06-22 10:14:42,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:14:42,695.695 INFO    ] Initializing speech engine...
[2026-06-22 10:14:42,709.709 INFO    ] 2026-06-22 10:14:42
[2026-06-22 10:14:42,992.992 INFO    ] 2026-06-22 10:14:42
[2026-06-22 10:14:43,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:14:43,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:14:43,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:14:43,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:14:43,363.363 INFO    ] time= 22/06/2026 10:14:43
[2026-06-22 10:14:43,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:14:43,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:14:43,527.527 INFO    ] No existing commands found in stream
[2026-06-22 10:14:48,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:14:48,556.556 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-22 10:14:51,587.587 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:14:51,590.590 INFO    ] Checking for system updates...
[2026-06-22 10:14:51,631.631 INFO    ] 200
[2026-06-22 10:14:51,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:14:51,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:14:51,695.695 INFO    ] No update needed
[2026-06-22 10:14:51,698.698 INFO    ] Checking for camera pi updates...
[2026-06-22 10:14:51,736.736 INFO    ] 200
[2026-06-22 10:14:51,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:14:51,790.790 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:14:51,894.894 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:14:51,897.897 INFO    ] No camera update needed
[2026-06-22 10:14:51,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:14:51,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:14:51,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:14:51,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:14:53,956.956 INFO    ] ================================================
[2026-06-22 10:14:53,972.972 INFO    ] Launching Daemon at Mon Jun 22 10:14:53 IST 2026
[2026-06-22 10:14:53,983.983 INFO    ] ================================================
[2026-06-22 10:14:54,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:14:54
[2026-06-22 10:14:55,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:14:55,342.342 INFO    ] Initializing speech engine...
[2026-06-22 10:14:55,345.345 INFO    ] 2026-06-22 10:14:55
[2026-06-22 10:14:55,597.597 INFO    ] 2026-06-22 10:14:55
[2026-06-22 10:14:55,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:14:55,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:14:55,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:14:56,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:14:56,011.011 INFO    ] time= 22/06/2026 10:14:56
[2026-06-22 10:14:56,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:14:56,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:14:56,209.209 INFO    ] No existing commands found in stream
[2026-06-22 10:15:01,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:15:01,232.232 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-22 10:15:02,263.263 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:15:02,267.267 INFO    ] Checking for system updates...
[2026-06-22 10:15:02,312.312 INFO    ] 200
[2026-06-22 10:15:02,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:15:02,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:15:02,390.390 INFO    ] No update needed
[2026-06-22 10:15:02,394.394 INFO    ] Checking for camera pi updates...
[2026-06-22 10:15:02,440.440 INFO    ] 200
[2026-06-22 10:15:02,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:15:02,493.493 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:15:02,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:15:02,562.562 INFO    ] No camera update needed
[2026-06-22 10:15:02,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:15:02,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:15:02,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:15:02,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:15:04,627.627 INFO    ] ================================================
[2026-06-22 10:15:04,643.643 INFO    ] Launching Daemon at Mon Jun 22 10:15:04 IST 2026
[2026-06-22 10:15:04,654.654 INFO    ] ================================================
[2026-06-22 10:15:05,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:15:05
[2026-06-22 10:15:05,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:15:06,265.265 INFO    ] Initializing speech engine...
[2026-06-22 10:15:06,273.273 INFO    ] 2026-06-22 10:15:06
[2026-06-22 10:15:06,493.493 INFO    ] 2026-06-22 10:15:06
[2026-06-22 10:15:06,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:15:06,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:15:06,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:15:06,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:15:06,973.973 INFO    ] time= 22/06/2026 10:15:06
[2026-06-22 10:15:07,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:15:07,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:15:07,213.213 INFO    ] No existing commands found in stream
[2026-06-22 10:15:12,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:15:12,239.239 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-22 10:15:15,812.812 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:15:15,814.814 INFO    ] Checking for system updates...
[2026-06-22 10:15:15,858.858 INFO    ] 200
[2026-06-22 10:15:15,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:15:15,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:15:15,915.915 INFO    ] No update needed
[2026-06-22 10:15:15,917.917 INFO    ] Checking for camera pi updates...
[2026-06-22 10:15:15,955.955 INFO    ] 200
[2026-06-22 10:15:15,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:15:15,999.999 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:15:16,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:15:16,066.066 INFO    ] No camera update needed
[2026-06-22 10:15:16,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:15:16,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:15:16,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:15:16,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:15:18,121.121 INFO    ] ================================================
[2026-06-22 10:15:18,136.136 INFO    ] Launching Daemon at Mon Jun 22 10:15:18 IST 2026
[2026-06-22 10:15:18,147.147 INFO    ] ================================================
[2026-06-22 10:15:18,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:15:18
[2026-06-22 10:15:19,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:15:19,664.664 INFO    ] Initializing speech engine...
[2026-06-22 10:15:19,673.673 INFO    ] 2026-06-22 10:15:19
[2026-06-22 10:15:19,933.933 INFO    ] 2026-06-22 10:15:19
[2026-06-22 10:15:19,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:15:20,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:15:20,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:15:20,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:15:20,405.405 INFO    ] time= 22/06/2026 10:15:20
[2026-06-22 10:15:20,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:15:20,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:15:20,585.585 INFO    ] No existing commands found in stream
[2026-06-22 10:15:25,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:15:25,600.600 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-22 10:15:27,987.987 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:15:27,990.990 INFO    ] Checking for system updates...
[2026-06-22 10:15:28,026.026 INFO    ] 200
[2026-06-22 10:15:28,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:15:28,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:15:28,090.090 INFO    ] No update needed
[2026-06-22 10:15:28,093.093 INFO    ] Checking for camera pi updates...
[2026-06-22 10:15:28,126.126 INFO    ] 200
[2026-06-22 10:15:28,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:15:28,174.174 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:15:28,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:15:28,249.249 INFO    ] No camera update needed
[2026-06-22 10:15:28,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:15:28,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:15:28,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:15:28,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:15:30,307.307 INFO    ] ================================================
[2026-06-22 10:15:30,323.323 INFO    ] Launching Daemon at Mon Jun 22 10:15:30 IST 2026
[2026-06-22 10:15:30,335.335 INFO    ] ================================================
[2026-06-22 10:15:30,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:15:30
[2026-06-22 10:15:31,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:15:31,883.883 INFO    ] Initializing speech engine...
[2026-06-22 10:15:31,890.890 INFO    ] 2026-06-22 10:15:31
[2026-06-22 10:15:32,164.164 INFO    ] 2026-06-22 10:15:32
[2026-06-22 10:15:32,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:15:32,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:15:32,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:15:32,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:15:32,681.681 INFO    ] time= 22/06/2026 10:15:32
[2026-06-22 10:15:32,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:15:32,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:15:32,868.868 INFO    ] No existing commands found in stream
[2026-06-22 10:15:37,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:15:37,901.901 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-22 10:15:40,012.012 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:15:40,014.014 INFO    ] Checking for system updates...
[2026-06-22 10:15:40,052.052 INFO    ] 200
[2026-06-22 10:15:40,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:15:40,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:15:40,117.117 INFO    ] No update needed
[2026-06-22 10:15:40,119.119 INFO    ] Checking for camera pi updates...
[2026-06-22 10:15:40,153.153 INFO    ] 200
[2026-06-22 10:15:40,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:15:40,195.195 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:15:40,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:15:40,279.279 INFO    ] No camera update needed
[2026-06-22 10:15:40,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:15:40,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:15:40,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:15:40,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:15:42,335.335 INFO    ] ================================================
[2026-06-22 10:15:42,351.351 INFO    ] Launching Daemon at Mon Jun 22 10:15:42 IST 2026
[2026-06-22 10:15:42,362.362 INFO    ] ================================================
[2026-06-22 10:15:42,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:15:42
[2026-06-22 10:15:43,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:15:43,712.712 INFO    ] Initializing speech engine...
[2026-06-22 10:15:43,728.728 INFO    ] 2026-06-22 10:15:43
[2026-06-22 10:15:44,025.025 INFO    ] 2026-06-22 10:15:43
[2026-06-22 10:15:44,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:15:44,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:15:44,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:15:44,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:15:44,435.435 INFO    ] time= 22/06/2026 10:15:44
[2026-06-22 10:15:44,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:15:44,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:15:44,546.546 INFO    ] No existing commands found in stream
[2026-06-22 10:15:49,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:15:49,562.562 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-22 10:15:52,130.130 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:15:52,131.131 INFO    ] Checking for system updates...
[2026-06-22 10:15:52,152.152 INFO    ] 200
[2026-06-22 10:15:52,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:15:52,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:15:52,188.188 INFO    ] No update needed
[2026-06-22 10:15:52,190.190 INFO    ] Checking for camera pi updates...
[2026-06-22 10:15:52,225.225 INFO    ] 200
[2026-06-22 10:15:52,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:15:52,276.276 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:15:52,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:15:52,363.363 INFO    ] No camera update needed
[2026-06-22 10:15:52,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:15:52,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:15:52,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:15:52,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:15:54,424.424 INFO    ] ================================================
[2026-06-22 10:15:54,440.440 INFO    ] Launching Daemon at Mon Jun 22 10:15:54 IST 2026
[2026-06-22 10:15:54,451.451 INFO    ] ================================================
[2026-06-22 10:15:55,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:15:55
[2026-06-22 10:15:55,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:15:55,867.867 INFO    ] Initializing speech engine...
[2026-06-22 10:15:55,883.883 INFO    ] 2026-06-22 10:15:55
[2026-06-22 10:15:56,170.170 INFO    ] 2026-06-22 10:15:56
[2026-06-22 10:15:56,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:15:56,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:15:56,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:15:56,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:15:56,594.594 INFO    ] time= 22/06/2026 10:15:56
[2026-06-22 10:15:56,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:15:56,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:15:56,694.694 INFO    ] No existing commands found in stream
[2026-06-22 10:16:01,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:16:01,730.730 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-22 10:16:02,732.732 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:16:02,736.736 INFO    ] Checking for system updates...
[2026-06-22 10:16:02,786.786 INFO    ] 200
[2026-06-22 10:16:02,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:16:02,855.855 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:16:02,858.858 INFO    ] No update needed
[2026-06-22 10:16:02,862.862 INFO    ] Checking for camera pi updates...
[2026-06-22 10:16:02,914.914 INFO    ] 200
[2026-06-22 10:16:02,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:16:02,978.978 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:16:03,040.040 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:16:03,044.044 INFO    ] No camera update needed
[2026-06-22 10:16:03,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:16:03,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:16:03,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:16:03,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:16:05,105.105 INFO    ] ================================================
[2026-06-22 10:16:05,121.121 INFO    ] Launching Daemon at Mon Jun 22 10:16:05 IST 2026
[2026-06-22 10:16:05,133.133 INFO    ] ================================================
[2026-06-22 10:16:05,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:16:05
[2026-06-22 10:16:06,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:16:06,600.600 INFO    ] Initializing speech engine...
[2026-06-22 10:16:06,612.612 INFO    ] 2026-06-22 10:16:06
[2026-06-22 10:16:06,908.908 INFO    ] 2026-06-22 10:16:06
[2026-06-22 10:16:06,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:16:07,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:16:07,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:16:07,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:16:07,447.447 INFO    ] time= 22/06/2026 10:16:07
[2026-06-22 10:16:07,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:16:07,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:16:07,581.581 INFO    ] No existing commands found in stream
[2026-06-22 10:16:12,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:16:12,612.612 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-22 10:16:13,216.216 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:16:13,217.217 INFO    ] Checking for system updates...
[2026-06-22 10:16:13,238.238 INFO    ] 200
[2026-06-22 10:16:13,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:16:13,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:16:13,274.274 INFO    ] No update needed
[2026-06-22 10:16:13,275.275 INFO    ] Checking for camera pi updates...
[2026-06-22 10:16:13,312.312 INFO    ] 200
[2026-06-22 10:16:13,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:16:13,361.361 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:16:13,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:16:13,439.439 INFO    ] No camera update needed
[2026-06-22 10:16:13,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:16:13,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:16:13,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:16:13,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:16:15,500.500 INFO    ] ================================================
[2026-06-22 10:16:15,516.516 INFO    ] Launching Daemon at Mon Jun 22 10:16:15 IST 2026
[2026-06-22 10:16:15,527.527 INFO    ] ================================================
[2026-06-22 10:16:16,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:16:16
[2026-06-22 10:16:16,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:16:16,953.953 INFO    ] Initializing speech engine...
[2026-06-22 10:16:16,958.958 INFO    ] 2026-06-22 10:16:16
[2026-06-22 10:16:17,157.157 INFO    ] 2026-06-22 10:16:17
[2026-06-22 10:16:17,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:16:17,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:16:17,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:16:17,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:16:17,656.656 INFO    ] time= 22/06/2026 10:16:17
[2026-06-22 10:16:17,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:16:17,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:16:17,869.869 INFO    ] No existing commands found in stream
[2026-06-22 10:16:22,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:16:22,887.887 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-22 10:16:26,141.141 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:16:26,144.144 INFO    ] Checking for system updates...
[2026-06-22 10:16:26,181.181 INFO    ] 200
[2026-06-22 10:16:26,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:16:26,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:16:26,241.241 INFO    ] No update needed
[2026-06-22 10:16:26,244.244 INFO    ] Checking for camera pi updates...
[2026-06-22 10:16:26,280.280 INFO    ] 200
[2026-06-22 10:16:26,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:16:26,326.326 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:16:26,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:16:26,415.415 INFO    ] No camera update needed
[2026-06-22 10:16:26,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:16:26,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:16:26,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:16:26,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:16:28,476.476 INFO    ] ================================================
[2026-06-22 10:16:28,492.492 INFO    ] Launching Daemon at Mon Jun 22 10:16:28 IST 2026
[2026-06-22 10:16:28,503.503 INFO    ] ================================================
[2026-06-22 10:16:29,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:16:29
[2026-06-22 10:16:29,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:16:29,940.940 INFO    ] Initializing speech engine...
[2026-06-22 10:16:29,945.945 INFO    ] 2026-06-22 10:16:29
[2026-06-22 10:16:30,209.209 INFO    ] 2026-06-22 10:16:30
[2026-06-22 10:16:30,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:16:30,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:16:30,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:16:30,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:16:30,749.749 INFO    ] time= 22/06/2026 10:16:30
[2026-06-22 10:16:30,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:16:30,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:16:30,905.905 INFO    ] No existing commands found in stream
[2026-06-22 10:16:35,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:16:35,927.927 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-22 10:16:40,211.211 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:16:40,213.213 INFO    ] Checking for system updates...
[2026-06-22 10:16:40,250.250 INFO    ] 200
[2026-06-22 10:16:40,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:16:40,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:16:40,309.309 INFO    ] No update needed
[2026-06-22 10:16:40,311.311 INFO    ] Checking for camera pi updates...
[2026-06-22 10:16:40,346.346 INFO    ] 200
[2026-06-22 10:16:40,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:16:40,390.390 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:16:40,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:16:40,475.475 INFO    ] No camera update needed
[2026-06-22 10:16:40,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:16:40,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:16:40,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:16:40,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:16:42,531.531 INFO    ] ================================================
[2026-06-22 10:16:42,547.547 INFO    ] Launching Daemon at Mon Jun 22 10:16:42 IST 2026
[2026-06-22 10:16:42,557.557 INFO    ] ================================================
[2026-06-22 10:16:43,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:16:43
[2026-06-22 10:16:43,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:16:43,880.880 INFO    ] Initializing speech engine...
[2026-06-22 10:16:43,899.899 INFO    ] 2026-06-22 10:16:43
[2026-06-22 10:16:44,164.164 INFO    ] 2026-06-22 10:16:44
[2026-06-22 10:16:44,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:16:44,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:16:44,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:16:44,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:16:44,682.682 INFO    ] time= 22/06/2026 10:16:44
[2026-06-22 10:16:44,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:16:44,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:16:44,896.896 INFO    ] No existing commands found in stream
[2026-06-22 10:16:49,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:16:49,918.918 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-22 10:16:50,775.775 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:16:50,777.777 INFO    ] Checking for system updates...
[2026-06-22 10:16:50,798.798 INFO    ] 200
[2026-06-22 10:16:50,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:16:50,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:16:50,847.847 INFO    ] No update needed
[2026-06-22 10:16:50,850.850 INFO    ] Checking for camera pi updates...
[2026-06-22 10:16:50,891.891 INFO    ] 200
[2026-06-22 10:16:50,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:16:50,941.941 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:16:51,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:16:51,035.035 INFO    ] No camera update needed
[2026-06-22 10:16:51,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:16:51,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:16:51,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:16:51,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:16:53,097.097 INFO    ] ================================================
[2026-06-22 10:16:53,113.113 INFO    ] Launching Daemon at Mon Jun 22 10:16:53 IST 2026
[2026-06-22 10:16:53,123.123 INFO    ] ================================================
[2026-06-22 10:16:53,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:16:53
[2026-06-22 10:16:54,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:16:54,592.592 INFO    ] Initializing speech engine...
[2026-06-22 10:16:54,600.600 INFO    ] 2026-06-22 10:16:54
[2026-06-22 10:16:54,862.862 INFO    ] 2026-06-22 10:16:54
[2026-06-22 10:16:54,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:16:55,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:16:55,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:16:55,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:16:55,415.415 INFO    ] time= 22/06/2026 10:16:55
[2026-06-22 10:16:55,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:16:55,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:16:55,570.570 INFO    ] No existing commands found in stream
[2026-06-22 10:17:00,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:17:00,597.597 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-22 10:17:03,622.622 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:17:03,624.624 INFO    ] Checking for system updates...
[2026-06-22 10:17:03,667.667 INFO    ] 200
[2026-06-22 10:17:03,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:17:03,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:17:03,734.734 INFO    ] No update needed
[2026-06-22 10:17:03,737.737 INFO    ] Checking for camera pi updates...
[2026-06-22 10:17:03,776.776 INFO    ] 200
[2026-06-22 10:17:03,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:17:03,828.828 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:17:03,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:17:03,914.914 INFO    ] No camera update needed
[2026-06-22 10:17:03,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:17:03,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:17:03,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:17:03,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:17:05,971.971 INFO    ] ================================================
[2026-06-22 10:17:05,987.987 INFO    ] Launching Daemon at Mon Jun 22 10:17:05 IST 2026
[2026-06-22 10:17:06,998.998 INFO    ] ================================================
[2026-06-22 10:17:06,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:17:06
[2026-06-22 10:17:07,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:17:07,466.466 INFO    ] Initializing speech engine...
[2026-06-22 10:17:07,477.477 INFO    ] 2026-06-22 10:17:07
[2026-06-22 10:17:07,729.729 INFO    ] 2026-06-22 10:17:07
[2026-06-22 10:17:07,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:17:07,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:17:08,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:17:08,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:17:08,209.209 INFO    ] time= 22/06/2026 10:17:08
[2026-06-22 10:17:08,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:17:08,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:17:08,424.424 INFO    ] No existing commands found in stream
[2026-06-22 10:17:13,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:17:13,455.455 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-22 10:17:17,187.187 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:17:17,189.189 INFO    ] Checking for system updates...
[2026-06-22 10:17:17,226.226 INFO    ] 200
[2026-06-22 10:17:17,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:17:17,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:17:17,286.286 INFO    ] No update needed
[2026-06-22 10:17:17,289.289 INFO    ] Checking for camera pi updates...
[2026-06-22 10:17:17,325.325 INFO    ] 200
[2026-06-22 10:17:17,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:17:17,373.373 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:17:17,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:17:17,466.466 INFO    ] No camera update needed
[2026-06-22 10:17:17,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:17:17,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:17:17,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:17:17,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:17:19,523.523 INFO    ] ================================================
[2026-06-22 10:17:19,539.539 INFO    ] Launching Daemon at Mon Jun 22 10:17:19 IST 2026
[2026-06-22 10:17:19,550.550 INFO    ] ================================================
[2026-06-22 10:17:20,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:17:20
[2026-06-22 10:17:20,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:17:20,911.911 INFO    ] Initializing speech engine...
[2026-06-22 10:17:20,920.920 INFO    ] 2026-06-22 10:17:20
[2026-06-22 10:17:21,170.170 INFO    ] 2026-06-22 10:17:21
[2026-06-22 10:17:21,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:17:21,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:17:21,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:17:21,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:17:21,505.505 INFO    ] time= 22/06/2026 10:17:21
[2026-06-22 10:17:21,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:17:21,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:17:21,619.619 INFO    ] No existing commands found in stream
[2026-06-22 10:17:26,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:17:26,647.647 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-22 10:17:27,434.434 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:17:27,436.436 INFO    ] Checking for system updates...
[2026-06-22 10:17:27,472.472 INFO    ] 200
[2026-06-22 10:17:27,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:17:27,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:17:27,540.540 INFO    ] No update needed
[2026-06-22 10:17:27,543.543 INFO    ] Checking for camera pi updates...
[2026-06-22 10:17:27,580.580 INFO    ] 200
[2026-06-22 10:17:27,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:17:27,626.626 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:17:27,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:17:27,715.715 INFO    ] No camera update needed
[2026-06-22 10:17:27,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:17:27,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:17:27,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:17:27,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:17:29,776.776 INFO    ] ================================================
[2026-06-22 10:17:29,792.792 INFO    ] Launching Daemon at Mon Jun 22 10:17:29 IST 2026
[2026-06-22 10:17:29,803.803 INFO    ] ================================================
[2026-06-22 10:17:30,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:17:30
[2026-06-22 10:17:30,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:17:31,174.174 INFO    ] Initializing speech engine...
[2026-06-22 10:17:31,182.182 INFO    ] 2026-06-22 10:17:31
[2026-06-22 10:17:31,442.442 INFO    ] 2026-06-22 10:17:31
[2026-06-22 10:17:31,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:17:31,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:17:31,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:17:31,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:17:31,948.948 INFO    ] time= 22/06/2026 10:17:31
[2026-06-22 10:17:32,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:17:32,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:17:32,200.200 INFO    ] No existing commands found in stream
[2026-06-22 10:17:37,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:17:37,240.240 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-22 10:17:40,435.435 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:17:40,437.437 INFO    ] Checking for system updates...
[2026-06-22 10:17:40,460.460 INFO    ] 200
[2026-06-22 10:17:40,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:17:40,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:17:40,526.526 INFO    ] No update needed
[2026-06-22 10:17:40,529.529 INFO    ] Checking for camera pi updates...
[2026-06-22 10:17:40,564.564 INFO    ] 200
[2026-06-22 10:17:40,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:17:40,609.609 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:17:40,781.781 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:17:40,784.784 INFO    ] No camera update needed
[2026-06-22 10:17:40,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:17:40,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:17:40,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:17:40,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:17:42,841.841 INFO    ] ================================================
[2026-06-22 10:17:42,857.857 INFO    ] Launching Daemon at Mon Jun 22 10:17:42 IST 2026
[2026-06-22 10:17:42,868.868 INFO    ] ================================================
[2026-06-22 10:17:43,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:17:43
[2026-06-22 10:17:43,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:17:44,274.274 INFO    ] Initializing speech engine...
[2026-06-22 10:17:44,286.286 INFO    ] 2026-06-22 10:17:44
[2026-06-22 10:17:44,565.565 INFO    ] 2026-06-22 10:17:44
[2026-06-22 10:17:44,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:17:44,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:17:44,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:17:45,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:17:45,117.117 INFO    ] time= 22/06/2026 10:17:45
[2026-06-22 10:17:45,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:17:45,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:17:45,245.245 INFO    ] No existing commands found in stream
[2026-06-22 10:17:50,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:17:50,279.279 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-22 10:17:51,496.496 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:17:51,498.498 INFO    ] Checking for system updates...
[2026-06-22 10:17:51,519.519 INFO    ] 200
[2026-06-22 10:17:51,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:17:51,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:17:51,552.552 INFO    ] No update needed
[2026-06-22 10:17:51,553.553 INFO    ] Checking for camera pi updates...
[2026-06-22 10:17:51,587.587 INFO    ] 200
[2026-06-22 10:17:51,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:17:51,631.631 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:17:51,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:17:51,722.722 INFO    ] No camera update needed
[2026-06-22 10:17:51,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:17:51,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:17:51,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:17:51,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:17:53,779.779 INFO    ] ================================================
[2026-06-22 10:17:53,795.795 INFO    ] Launching Daemon at Mon Jun 22 10:17:53 IST 2026
[2026-06-22 10:17:53,806.806 INFO    ] ================================================
[2026-06-22 10:17:54,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:17:54
[2026-06-22 10:17:55,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:17:55,306.306 INFO    ] Initializing speech engine...
[2026-06-22 10:17:55,315.315 INFO    ] 2026-06-22 10:17:55
[2026-06-22 10:17:55,565.565 INFO    ] 2026-06-22 10:17:55
[2026-06-22 10:17:55,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:17:55,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:17:55,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:17:55,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:17:56,057.057 INFO    ] time= 22/06/2026 10:17:56
[2026-06-22 10:17:56,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:17:56,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:17:56,274.274 INFO    ] No existing commands found in stream
[2026-06-22 10:18:01,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:18:01,291.291 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-22 10:18:03,485.485 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:18:03,487.487 INFO    ] Checking for system updates...
[2026-06-22 10:18:03,524.524 INFO    ] 200
[2026-06-22 10:18:03,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:18:03,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:18:03,588.588 INFO    ] No update needed
[2026-06-22 10:18:03,590.590 INFO    ] Checking for camera pi updates...
[2026-06-22 10:18:03,625.625 INFO    ] 200
[2026-06-22 10:18:03,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:18:03,667.667 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:18:03,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:18:03,752.752 INFO    ] No camera update needed
[2026-06-22 10:18:03,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:18:03,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:18:03,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:18:03,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:18:05,810.810 INFO    ] ================================================
[2026-06-22 10:18:05,825.825 INFO    ] Launching Daemon at Mon Jun 22 10:18:05 IST 2026
[2026-06-22 10:18:05,836.836 INFO    ] ================================================
[2026-06-22 10:18:06,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:18:06
[2026-06-22 10:18:07,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:18:07,357.357 INFO    ] Initializing speech engine...
[2026-06-22 10:18:07,382.382 INFO    ] 2026-06-22 10:18:07
[2026-06-22 10:18:07,657.657 INFO    ] 2026-06-22 10:18:07
[2026-06-22 10:18:07,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:18:07,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:18:07,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:18:08,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:18:08,073.073 INFO    ] time= 22/06/2026 10:18:08
[2026-06-22 10:18:08,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:18:08,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:18:08,247.247 INFO    ] No existing commands found in stream
[2026-06-22 10:18:13,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:18:13,270.270 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-22 10:18:14,411.411 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:18:14,414.414 INFO    ] Checking for system updates...
[2026-06-22 10:18:14,450.450 INFO    ] 200
[2026-06-22 10:18:14,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:18:14,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:18:14,513.513 INFO    ] No update needed
[2026-06-22 10:18:14,515.515 INFO    ] Checking for camera pi updates...
[2026-06-22 10:18:14,552.552 INFO    ] 200
[2026-06-22 10:18:14,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:18:14,595.595 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:18:14,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:18:14,703.703 INFO    ] No camera update needed
[2026-06-22 10:18:14,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:18:14,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:18:14,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:18:14,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:18:16,758.758 INFO    ] ================================================
[2026-06-22 10:18:16,774.774 INFO    ] Launching Daemon at Mon Jun 22 10:18:16 IST 2026
[2026-06-22 10:18:16,785.785 INFO    ] ================================================
[2026-06-22 10:18:17,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:18:17
[2026-06-22 10:18:17,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:18:18,299.299 INFO    ] Initializing speech engine...
[2026-06-22 10:18:18,313.313 INFO    ] 2026-06-22 10:18:18
[2026-06-22 10:18:18,597.597 INFO    ] 2026-06-22 10:18:18
[2026-06-22 10:18:18,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:18:19,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:18:19,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:18:19,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:18:19,447.447 INFO    ] time= 22/06/2026 10:18:19
[2026-06-22 10:18:19,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:18:19,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:18:20,354.354 INFO    ] No existing commands found in stream
[2026-06-22 10:18:25,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:18:25,370.370 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-22 10:18:28,320.320 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:18:28,321.321 INFO    ] Checking for system updates...
[2026-06-22 10:18:28,342.342 INFO    ] 200
[2026-06-22 10:18:28,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:18:28,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:18:28,378.378 INFO    ] No update needed
[2026-06-22 10:18:28,379.379 INFO    ] Checking for camera pi updates...
[2026-06-22 10:18:28,419.419 INFO    ] 200
[2026-06-22 10:18:28,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:18:28,464.464 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:18:28,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:18:28,549.549 INFO    ] No camera update needed
[2026-06-22 10:18:28,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:18:28,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:18:28,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:18:28,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:18:30,605.605 INFO    ] ================================================
[2026-06-22 10:18:30,622.622 INFO    ] Launching Daemon at Mon Jun 22 10:18:30 IST 2026
[2026-06-22 10:18:30,633.633 INFO    ] ================================================
[2026-06-22 10:18:31,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:18:31
[2026-06-22 10:18:31,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:18:32,041.041 INFO    ] Initializing speech engine...
[2026-06-22 10:18:32,053.053 INFO    ] 2026-06-22 10:18:32
[2026-06-22 10:18:32,356.356 INFO    ] 2026-06-22 10:18:32
[2026-06-22 10:18:32,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:18:32,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:18:32,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:18:32,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:18:32,845.845 INFO    ] time= 22/06/2026 10:18:32
[2026-06-22 10:18:32,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:18:32,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:18:33,059.059 INFO    ] No existing commands found in stream
[2026-06-22 10:18:38,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:18:38,092.092 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-22 10:18:42,383.383 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:18:42,386.386 INFO    ] Checking for system updates...
[2026-06-22 10:18:42,422.422 INFO    ] 200
[2026-06-22 10:18:42,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:18:42,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:18:42,481.481 INFO    ] No update needed
[2026-06-22 10:18:42,484.484 INFO    ] Checking for camera pi updates...
[2026-06-22 10:18:42,523.523 INFO    ] 200
[2026-06-22 10:18:42,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:18:42,568.568 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:18:42,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:18:42,649.649 INFO    ] No camera update needed
[2026-06-22 10:18:42,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:18:42,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:18:42,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:18:42,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:18:44,705.705 INFO    ] ================================================
[2026-06-22 10:18:44,721.721 INFO    ] Launching Daemon at Mon Jun 22 10:18:44 IST 2026
[2026-06-22 10:18:44,732.732 INFO    ] ================================================
[2026-06-22 10:18:45,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:18:45
[2026-06-22 10:18:45,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:18:46,051.051 INFO    ] Initializing speech engine...
[2026-06-22 10:18:46,074.074 INFO    ] 2026-06-22 10:18:46
[2026-06-22 10:18:46,330.330 INFO    ] 2026-06-22 10:18:46
[2026-06-22 10:18:46,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:18:46,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:18:46,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:18:46,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:18:46,812.812 INFO    ] time= 22/06/2026 10:18:46
[2026-06-22 10:18:46,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:18:46,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:18:47,026.026 INFO    ] No existing commands found in stream
[2026-06-22 10:18:52,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:18:52,051.051 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-22 10:18:53,466.466 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:18:53,469.469 INFO    ] Checking for system updates...
[2026-06-22 10:18:53,505.505 INFO    ] 200
[2026-06-22 10:18:53,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:18:53,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:18:53,565.565 INFO    ] No update needed
[2026-06-22 10:18:53,567.567 INFO    ] Checking for camera pi updates...
[2026-06-22 10:18:53,606.606 INFO    ] 200
[2026-06-22 10:18:53,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:18:53,658.658 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:18:53,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:18:53,747.747 INFO    ] No camera update needed
[2026-06-22 10:18:53,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:18:53,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:18:53,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:18:53,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:18:55,805.805 INFO    ] ================================================
[2026-06-22 10:18:55,821.821 INFO    ] Launching Daemon at Mon Jun 22 10:18:55 IST 2026
[2026-06-22 10:18:55,832.832 INFO    ] ================================================
[2026-06-22 10:18:56,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:18:56
[2026-06-22 10:18:56,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:18:57,236.236 INFO    ] Initializing speech engine...
[2026-06-22 10:18:57,249.249 INFO    ] 2026-06-22 10:18:57
[2026-06-22 10:18:57,516.516 INFO    ] 2026-06-22 10:18:57
[2026-06-22 10:18:57,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:18:57,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:18:57,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:18:57,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:18:58,022.022 INFO    ] time= 22/06/2026 10:18:57
[2026-06-22 10:18:58,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:18:58,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:18:58,226.226 INFO    ] No existing commands found in stream
[2026-06-22 10:19:03,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:19:03,252.252 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-22 10:19:04,335.335 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:19:04,337.337 INFO    ] Checking for system updates...
[2026-06-22 10:19:04,374.374 INFO    ] 200
[2026-06-22 10:19:04,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:19:04,438.438 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:19:04,441.441 INFO    ] No update needed
[2026-06-22 10:19:04,443.443 INFO    ] Checking for camera pi updates...
[2026-06-22 10:19:04,478.478 INFO    ] 200
[2026-06-22 10:19:04,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:19:04,528.528 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:19:04,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:19:04,590.590 INFO    ] No camera update needed
[2026-06-22 10:19:04,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:19:04,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:19:04,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:19:04,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:19:06,646.646 INFO    ] ================================================
[2026-06-22 10:19:06,662.662 INFO    ] Launching Daemon at Mon Jun 22 10:19:06 IST 2026
[2026-06-22 10:19:06,673.673 INFO    ] ================================================
[2026-06-22 10:19:07,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:19:07
[2026-06-22 10:19:07,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:19:08,047.047 INFO    ] Initializing speech engine...
[2026-06-22 10:19:08,054.054 INFO    ] 2026-06-22 10:19:08
[2026-06-22 10:19:08,316.316 INFO    ] 2026-06-22 10:19:08
[2026-06-22 10:19:08,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:19:08,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:19:08,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:19:08,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:19:08,826.826 INFO    ] time= 22/06/2026 10:19:08
[2026-06-22 10:19:08,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:19:08,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:19:08,994.994 INFO    ] No existing commands found in stream
[2026-06-22 10:19:14,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:19:14,020.020 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-22 10:19:18,146.146 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:19:18,147.147 INFO    ] Checking for system updates...
[2026-06-22 10:19:18,169.169 INFO    ] 200
[2026-06-22 10:19:18,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:19:18,201.201 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:19:18,202.202 INFO    ] No update needed
[2026-06-22 10:19:18,203.203 INFO    ] Checking for camera pi updates...
[2026-06-22 10:19:18,226.226 INFO    ] 200
[2026-06-22 10:19:18,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:19:18,274.274 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:19:18,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:19:18,359.359 INFO    ] No camera update needed
[2026-06-22 10:19:18,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:19:18,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:19:18,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:19:18,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:19:20,416.416 INFO    ] ================================================
[2026-06-22 10:19:20,431.431 INFO    ] Launching Daemon at Mon Jun 22 10:19:20 IST 2026
[2026-06-22 10:19:20,442.442 INFO    ] ================================================
[2026-06-22 10:19:21,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:19:21
[2026-06-22 10:19:21,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:19:21,872.872 INFO    ] Initializing speech engine...
[2026-06-22 10:19:21,883.883 INFO    ] 2026-06-22 10:19:21
[2026-06-22 10:19:22,163.163 INFO    ] 2026-06-22 10:19:22
[2026-06-22 10:19:22,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:19:22,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:19:22,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:19:22,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:19:22,700.700 INFO    ] time= 22/06/2026 10:19:22
[2026-06-22 10:19:22,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:19:22,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:19:22,881.881 INFO    ] No existing commands found in stream
[2026-06-22 10:19:27,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:19:27,915.915 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-22 10:19:29,355.355 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:19:29,357.357 INFO    ] Checking for system updates...
[2026-06-22 10:19:29,379.379 INFO    ] 200
[2026-06-22 10:19:29,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:19:29,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:19:29,417.417 INFO    ] No update needed
[2026-06-22 10:19:29,419.419 INFO    ] Checking for camera pi updates...
[2026-06-22 10:19:29,455.455 INFO    ] 200
[2026-06-22 10:19:29,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:19:29,505.505 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:19:29,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:19:29,589.589 INFO    ] No camera update needed
[2026-06-22 10:19:29,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:19:29,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:19:29,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:19:29,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:19:31,656.656 INFO    ] ================================================
[2026-06-22 10:19:31,673.673 INFO    ] Launching Daemon at Mon Jun 22 10:19:31 IST 2026
[2026-06-22 10:19:31,687.687 INFO    ] ================================================
[2026-06-22 10:19:32,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:19:32
[2026-06-22 10:19:32,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:19:33,244.244 INFO    ] Initializing speech engine...
[2026-06-22 10:19:33,260.260 INFO    ] 2026-06-22 10:19:33
[2026-06-22 10:19:33,522.522 INFO    ] 2026-06-22 10:19:33
[2026-06-22 10:19:33,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:19:33,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:19:33,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:19:34,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:19:34,011.011 INFO    ] time= 22/06/2026 10:19:34
[2026-06-22 10:19:34,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:19:34,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:19:34,215.215 INFO    ] No existing commands found in stream
[2026-06-22 10:19:39,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:19:39,230.230 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-22 10:19:41,792.792 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:19:41,795.795 INFO    ] Checking for system updates...
[2026-06-22 10:19:41,831.831 INFO    ] 200
[2026-06-22 10:19:41,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:19:41,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:19:41,891.891 INFO    ] No update needed
[2026-06-22 10:19:41,893.893 INFO    ] Checking for camera pi updates...
[2026-06-22 10:19:41,928.928 INFO    ] 200
[2026-06-22 10:19:41,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:19:41,972.972 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:19:42,121.121 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:19:42,123.123 INFO    ] No camera update needed
[2026-06-22 10:19:42,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:19:42,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:19:42,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:19:42,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:19:44,178.178 INFO    ] ================================================
[2026-06-22 10:19:44,193.193 INFO    ] Launching Daemon at Mon Jun 22 10:19:44 IST 2026
[2026-06-22 10:19:44,204.204 INFO    ] ================================================
[2026-06-22 10:19:44,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:19:44
[2026-06-22 10:19:45,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:19:45,660.660 INFO    ] Initializing speech engine...
[2026-06-22 10:19:45,675.675 INFO    ] 2026-06-22 10:19:45
[2026-06-22 10:19:45,957.957 INFO    ] 2026-06-22 10:19:45
[2026-06-22 10:19:46,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:19:46,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:19:46,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:19:46,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:19:46,509.509 INFO    ] time= 22/06/2026 10:19:46
[2026-06-22 10:19:46,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:19:46,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:19:46,653.653 INFO    ] No existing commands found in stream
[2026-06-22 10:19:51,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:19:51,685.685 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-22 10:19:56,005.005 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:19:56,006.006 INFO    ] Checking for system updates...
[2026-06-22 10:19:56,028.028 INFO    ] 200
[2026-06-22 10:19:56,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:19:56,062.062 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:19:56,064.064 INFO    ] No update needed
[2026-06-22 10:19:56,067.067 INFO    ] Checking for camera pi updates...
[2026-06-22 10:19:56,105.105 INFO    ] 200
[2026-06-22 10:19:56,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:19:56,150.150 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:19:56,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:19:56,234.234 INFO    ] No camera update needed
[2026-06-22 10:19:56,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:19:56,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:19:56,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:19:56,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:19:58,290.290 INFO    ] ================================================
[2026-06-22 10:19:58,305.305 INFO    ] Launching Daemon at Mon Jun 22 10:19:58 IST 2026
[2026-06-22 10:19:58,316.316 INFO    ] ================================================
[2026-06-22 10:19:58,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:19:58
[2026-06-22 10:19:59,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:19:59,784.784 INFO    ] Initializing speech engine...
[2026-06-22 10:19:59,792.792 INFO    ] 2026-06-22 10:19:59
[2026-06-22 10:20:00,012.012 INFO    ] 2026-06-22 10:19:59
[2026-06-22 10:20:00,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:20:00,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:20:00,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:20:00,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:20:00,513.513 INFO    ] time= 22/06/2026 10:20:00
[2026-06-22 10:20:00,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:20:00,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:20:00,683.683 INFO    ] No existing commands found in stream
[2026-06-22 10:20:05,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:20:05,717.717 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-22 10:20:08,602.602 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:20:08,605.605 INFO    ] Checking for system updates...
[2026-06-22 10:20:08,665.665 INFO    ] 200
[2026-06-22 10:20:08,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:20:08,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:20:08,725.725 INFO    ] No update needed
[2026-06-22 10:20:08,728.728 INFO    ] Checking for camera pi updates...
[2026-06-22 10:20:08,769.769 INFO    ] 200
[2026-06-22 10:20:08,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:20:08,817.817 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:20:08,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:20:08,903.903 INFO    ] No camera update needed
[2026-06-22 10:20:08,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:20:08,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:20:08,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:20:08,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:20:10,960.960 INFO    ] ================================================
[2026-06-22 10:20:10,976.976 INFO    ] Launching Daemon at Mon Jun 22 10:20:10 IST 2026
[2026-06-22 10:20:10,986.986 INFO    ] ================================================
[2026-06-22 10:20:11,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:20:11
[2026-06-22 10:20:12,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:20:12,412.412 INFO    ] Initializing speech engine...
[2026-06-22 10:20:12,425.425 INFO    ] 2026-06-22 10:20:12
[2026-06-22 10:20:12,677.677 INFO    ] 2026-06-22 10:20:12
[2026-06-22 10:20:12,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:20:12,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:20:12,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:20:13,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:20:13,073.073 INFO    ] time= 22/06/2026 10:20:13
[2026-06-22 10:20:13,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:20:13,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:20:13,290.290 INFO    ] No existing commands found in stream
[2026-06-22 10:20:18,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:20:18,318.318 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-22 10:20:22,521.521 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:20:22,524.524 INFO    ] Checking for system updates...
[2026-06-22 10:20:22,563.563 INFO    ] 200
[2026-06-22 10:20:22,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:20:22,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:20:22,628.628 INFO    ] No update needed
[2026-06-22 10:20:22,631.631 INFO    ] Checking for camera pi updates...
[2026-06-22 10:20:22,668.668 INFO    ] 200
[2026-06-22 10:20:22,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:20:22,710.710 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:20:22,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:20:22,812.812 INFO    ] No camera update needed
[2026-06-22 10:20:22,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:20:22,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:20:22,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:20:22,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:20:24,869.869 INFO    ] ================================================
[2026-06-22 10:20:24,885.885 INFO    ] Launching Daemon at Mon Jun 22 10:20:24 IST 2026
[2026-06-22 10:20:24,895.895 INFO    ] ================================================
[2026-06-22 10:20:25,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:20:25
[2026-06-22 10:20:26,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:20:26,370.370 INFO    ] Initializing speech engine...
[2026-06-22 10:20:26,379.379 INFO    ] 2026-06-22 10:20:26
[2026-06-22 10:20:26,639.639 INFO    ] 2026-06-22 10:20:26
[2026-06-22 10:20:26,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:20:26,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:20:26,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:20:27,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:20:27,194.194 INFO    ] time= 22/06/2026 10:20:27
[2026-06-22 10:20:27,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:20:27,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:20:27,342.342 INFO    ] No existing commands found in stream
[2026-06-22 10:20:32,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:20:32,370.370 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-22 10:20:33,150.150 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:20:33,153.153 INFO    ] Checking for system updates...
[2026-06-22 10:20:33,189.189 INFO    ] 200
[2026-06-22 10:20:33,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:20:33,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:20:33,255.255 INFO    ] No update needed
[2026-06-22 10:20:33,257.257 INFO    ] Checking for camera pi updates...
[2026-06-22 10:20:33,291.291 INFO    ] 200
[2026-06-22 10:20:33,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:20:33,334.334 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:20:33,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:20:33,404.404 INFO    ] No camera update needed
[2026-06-22 10:20:33,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:20:33,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:20:33,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:20:33,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:20:35,463.463 INFO    ] ================================================
[2026-06-22 10:20:35,478.478 INFO    ] Launching Daemon at Mon Jun 22 10:20:35 IST 2026
[2026-06-22 10:20:35,489.489 INFO    ] ================================================
[2026-06-22 10:20:36,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:20:36
[2026-06-22 10:20:36,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:20:37,086.086 INFO    ] Initializing speech engine...
[2026-06-22 10:20:37,099.099 INFO    ] 2026-06-22 10:20:37
[2026-06-22 10:20:37,372.372 INFO    ] 2026-06-22 10:20:37
[2026-06-22 10:20:37,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:20:37,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:20:37,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:20:37,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:20:37,918.918 INFO    ] time= 22/06/2026 10:20:37
[2026-06-22 10:20:37,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:20:37,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:20:38,094.094 INFO    ] No existing commands found in stream
[2026-06-22 10:20:43,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:20:43,112.112 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-22 10:20:45,092.092 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:20:45,093.093 INFO    ] Checking for system updates...
[2026-06-22 10:20:45,125.125 INFO    ] 200
[2026-06-22 10:20:45,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:20:45,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:20:45,191.191 INFO    ] No update needed
[2026-06-22 10:20:45,194.194 INFO    ] Checking for camera pi updates...
[2026-06-22 10:20:45,232.232 INFO    ] 200
[2026-06-22 10:20:45,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:20:45,276.276 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:20:45,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:20:45,335.335 INFO    ] No camera update needed
[2026-06-22 10:20:45,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:20:45,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:20:45,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:20:45,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:20:47,390.390 INFO    ] ================================================
[2026-06-22 10:20:47,405.405 INFO    ] Launching Daemon at Mon Jun 22 10:20:47 IST 2026
[2026-06-22 10:20:47,416.416 INFO    ] ================================================
[2026-06-22 10:20:48,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:20:48
[2026-06-22 10:20:48,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:20:49,067.067 INFO    ] Initializing speech engine...
[2026-06-22 10:20:49,078.078 INFO    ] 2026-06-22 10:20:49
[2026-06-22 10:20:49,342.342 INFO    ] 2026-06-22 10:20:49
[2026-06-22 10:20:49,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:20:49,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:20:49,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:20:49,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:20:49,919.919 INFO    ] time= 22/06/2026 10:20:49
[2026-06-22 10:20:49,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:20:49,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:20:50,117.117 INFO    ] No existing commands found in stream
[2026-06-22 10:20:55,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:20:55,158.158 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-22 10:20:56,662.662 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:20:56,663.663 INFO    ] Checking for system updates...
[2026-06-22 10:20:56,686.686 INFO    ] 200
[2026-06-22 10:20:56,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:20:56,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:20:56,746.746 INFO    ] No update needed
[2026-06-22 10:20:56,750.750 INFO    ] Checking for camera pi updates...
[2026-06-22 10:20:56,789.789 INFO    ] 200
[2026-06-22 10:20:56,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:20:56,842.842 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:20:56,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:20:56,933.933 INFO    ] No camera update needed
[2026-06-22 10:20:56,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:20:56,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:20:56,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:20:56,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:20:58,989.989 INFO    ] ================================================
[2026-06-22 10:20:59,005.005 INFO    ] Launching Daemon at Mon Jun 22 10:20:58 IST 2026
[2026-06-22 10:20:59,015.015 INFO    ] ================================================
[2026-06-22 10:20:59,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:20:59
[2026-06-22 10:21:00,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:21:00,473.473 INFO    ] Initializing speech engine...
[2026-06-22 10:21:00,483.483 INFO    ] 2026-06-22 10:21:00
[2026-06-22 10:21:00,733.733 INFO    ] 2026-06-22 10:21:00
[2026-06-22 10:21:00,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:21:01,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:21:01,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:21:01,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:21:01,236.236 INFO    ] time= 22/06/2026 10:21:01
[2026-06-22 10:21:01,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:21:01,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:21:01,333.333 INFO    ] No existing commands found in stream
[2026-06-22 10:21:06,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:21:06,372.372 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-22 10:21:08,751.751 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:21:08,754.754 INFO    ] Checking for system updates...
[2026-06-22 10:21:08,790.790 INFO    ] 200
[2026-06-22 10:21:08,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:21:08,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:21:08,854.854 INFO    ] No update needed
[2026-06-22 10:21:08,857.857 INFO    ] Checking for camera pi updates...
[2026-06-22 10:21:08,891.891 INFO    ] 200
[2026-06-22 10:21:08,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:21:08,939.939 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:21:09,037.037 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:21:09,039.039 INFO    ] No camera update needed
[2026-06-22 10:21:09,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:21:09,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:21:09,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:21:09,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:21:11,095.095 INFO    ] ================================================
[2026-06-22 10:21:11,111.111 INFO    ] Launching Daemon at Mon Jun 22 10:21:11 IST 2026
[2026-06-22 10:21:11,122.122 INFO    ] ================================================
[2026-06-22 10:21:11,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:21:11
[2026-06-22 10:21:12,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:21:12,537.537 INFO    ] Initializing speech engine...
[2026-06-22 10:21:12,542.542 INFO    ] 2026-06-22 10:21:12
[2026-06-22 10:21:12,839.839 INFO    ] 2026-06-22 10:21:12
[2026-06-22 10:21:12,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:21:13,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:21:13,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:21:13,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:21:13,263.263 INFO    ] time= 22/06/2026 10:21:13
[2026-06-22 10:21:13,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:21:13,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:21:13,459.459 INFO    ] No existing commands found in stream
[2026-06-22 10:21:18,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:21:18,492.492 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-22 10:21:21,183.183 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:21:21,185.185 INFO    ] Checking for system updates...
[2026-06-22 10:21:21,221.221 INFO    ] 200
[2026-06-22 10:21:21,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:21:21,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:21:21,285.285 INFO    ] No update needed
[2026-06-22 10:21:21,288.288 INFO    ] Checking for camera pi updates...
[2026-06-22 10:21:21,326.326 INFO    ] 200
[2026-06-22 10:21:21,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:21:21,369.369 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:21:21,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:21:21,449.449 INFO    ] No camera update needed
[2026-06-22 10:21:21,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:21:21,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:21:21,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:21:21,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:21:23,504.504 INFO    ] ================================================
[2026-06-22 10:21:23,521.521 INFO    ] Launching Daemon at Mon Jun 22 10:21:23 IST 2026
[2026-06-22 10:21:23,532.532 INFO    ] ================================================
[2026-06-22 10:21:24,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:21:24
[2026-06-22 10:21:24,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:21:24,858.858 INFO    ] Initializing speech engine...
[2026-06-22 10:21:24,871.871 INFO    ] 2026-06-22 10:21:24
[2026-06-22 10:21:25,129.129 INFO    ] 2026-06-22 10:21:25
[2026-06-22 10:21:25,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:21:25,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:21:25,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:21:25,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:21:25,545.545 INFO    ] time= 22/06/2026 10:21:25
[2026-06-22 10:21:25,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:21:25,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:21:25,631.631 INFO    ] No existing commands found in stream
[2026-06-22 10:21:30,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:21:30,647.647 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-22 10:21:33,980.980 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:21:33,983.983 INFO    ] Checking for system updates...
[2026-06-22 10:21:34,023.023 INFO    ] 200
[2026-06-22 10:21:34,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:21:34,078.078 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:21:34,081.081 INFO    ] No update needed
[2026-06-22 10:21:34,083.083 INFO    ] Checking for camera pi updates...
[2026-06-22 10:21:34,119.119 INFO    ] 200
[2026-06-22 10:21:34,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:21:34,161.161 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:21:34,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:21:34,246.246 INFO    ] No camera update needed
[2026-06-22 10:21:34,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:21:34,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:21:34,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:21:34,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:21:36,302.302 INFO    ] ================================================
[2026-06-22 10:21:36,317.317 INFO    ] Launching Daemon at Mon Jun 22 10:21:36 IST 2026
[2026-06-22 10:21:36,328.328 INFO    ] ================================================
[2026-06-22 10:21:36,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:21:36
[2026-06-22 10:21:37,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:21:37,877.877 INFO    ] Initializing speech engine...
[2026-06-22 10:21:37,886.886 INFO    ] 2026-06-22 10:21:37
[2026-06-22 10:21:38,176.176 INFO    ] 2026-06-22 10:21:38
[2026-06-22 10:21:38,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:21:38,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:21:38,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:21:38,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:21:38,718.718 INFO    ] time= 22/06/2026 10:21:38
[2026-06-22 10:21:38,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:21:38,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:21:38,874.874 INFO    ] No existing commands found in stream
[2026-06-22 10:21:43,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:21:43,912.912 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-22 10:21:45,360.360 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:21:45,363.363 INFO    ] Checking for system updates...
[2026-06-22 10:21:45,405.405 INFO    ] 200
[2026-06-22 10:21:45,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:21:45,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:21:45,473.473 INFO    ] No update needed
[2026-06-22 10:21:45,476.476 INFO    ] Checking for camera pi updates...
[2026-06-22 10:21:45,516.516 INFO    ] 200
[2026-06-22 10:21:45,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:21:45,567.567 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:21:45,734.734 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:21:45,737.737 INFO    ] No camera update needed
[2026-06-22 10:21:45,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:21:45,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:21:45,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:21:45,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:21:47,799.799 INFO    ] ================================================
[2026-06-22 10:21:47,815.815 INFO    ] Launching Daemon at Mon Jun 22 10:21:47 IST 2026
[2026-06-22 10:21:47,825.825 INFO    ] ================================================
[2026-06-22 10:21:48,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:21:48
[2026-06-22 10:21:49,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:21:49,365.365 INFO    ] Initializing speech engine...
[2026-06-22 10:21:49,379.379 INFO    ] 2026-06-22 10:21:49
[2026-06-22 10:21:49,667.667 INFO    ] 2026-06-22 10:21:49
[2026-06-22 10:21:49,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:21:49,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:21:49,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:21:50,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:21:50,202.202 INFO    ] time= 22/06/2026 10:21:50
[2026-06-22 10:21:50,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:21:50,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:21:50,378.378 INFO    ] No existing commands found in stream
[2026-06-22 10:21:55,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:21:55,392.392 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-22 10:21:58,995.995 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:21:58,998.998 INFO    ] Checking for system updates...
[2026-06-22 10:21:59,035.035 INFO    ] 200
[2026-06-22 10:21:59,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:21:59,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:21:59,077.077 INFO    ] No update needed
[2026-06-22 10:21:59,078.078 INFO    ] Checking for camera pi updates...
[2026-06-22 10:21:59,101.101 INFO    ] 200
[2026-06-22 10:21:59,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:21:59,126.126 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:21:59,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:21:59,198.198 INFO    ] No camera update needed
[2026-06-22 10:21:59,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:21:59,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:21:59,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:21:59,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:22:01,262.262 INFO    ] ================================================
[2026-06-22 10:22:01,290.290 INFO    ] Launching Daemon at Mon Jun 22 10:22:01 IST 2026
[2026-06-22 10:22:01,319.319 INFO    ] ================================================
[2026-06-22 10:22:02,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:22:02
[2026-06-22 10:22:02,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:22:02,989.989 INFO    ] Initializing speech engine...
[2026-06-22 10:22:03,012.012 INFO    ] 2026-06-22 10:22:02
[2026-06-22 10:22:03,276.276 INFO    ] 2026-06-22 10:22:03
[2026-06-22 10:22:03,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:22:03,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:22:03,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:22:03,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:22:03,658.658 INFO    ] time= 22/06/2026 10:22:03
[2026-06-22 10:22:03,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:22:03,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:22:03,787.787 INFO    ] No existing commands found in stream
[2026-06-22 10:22:08,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:22:08,802.802 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-22 10:22:12,316.316 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:22:12,317.317 INFO    ] Checking for system updates...
[2026-06-22 10:22:12,338.338 INFO    ] 200
[2026-06-22 10:22:12,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:22:12,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:22:12,371.371 INFO    ] No update needed
[2026-06-22 10:22:12,372.372 INFO    ] Checking for camera pi updates...
[2026-06-22 10:22:12,406.406 INFO    ] 200
[2026-06-22 10:22:12,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:22:12,450.450 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:22:12,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:22:12,535.535 INFO    ] No camera update needed
[2026-06-22 10:22:12,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:22:12,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:22:12,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:22:12,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:22:14,590.590 INFO    ] ================================================
[2026-06-22 10:22:14,606.606 INFO    ] Launching Daemon at Mon Jun 22 10:22:14 IST 2026
[2026-06-22 10:22:14,616.616 INFO    ] ================================================
[2026-06-22 10:22:15,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:22:15
[2026-06-22 10:22:15,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:22:16,092.092 INFO    ] Initializing speech engine...
[2026-06-22 10:22:16,106.106 INFO    ] 2026-06-22 10:22:16
[2026-06-22 10:22:16,380.380 INFO    ] 2026-06-22 10:22:16
[2026-06-22 10:22:16,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:22:16,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:22:16,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:22:16,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:22:16,867.867 INFO    ] time= 22/06/2026 10:22:16
[2026-06-22 10:22:16,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:22:16,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:22:17,098.098 INFO    ] No existing commands found in stream
[2026-06-22 10:22:22,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:22:22,123.123 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-22 10:22:24,337.337 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:22:24,340.340 INFO    ] Checking for system updates...
[2026-06-22 10:22:24,379.379 INFO    ] 200
[2026-06-22 10:22:24,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:22:24,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:22:24,448.448 INFO    ] No update needed
[2026-06-22 10:22:24,451.451 INFO    ] Checking for camera pi updates...
[2026-06-22 10:22:24,485.485 INFO    ] 200
[2026-06-22 10:22:24,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:22:24,535.535 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:22:24,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:22:24,613.613 INFO    ] No camera update needed
[2026-06-22 10:22:24,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:22:24,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:22:24,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:22:24,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:22:26,668.668 INFO    ] ================================================
[2026-06-22 10:22:26,683.683 INFO    ] Launching Daemon at Mon Jun 22 10:22:26 IST 2026
[2026-06-22 10:22:26,693.693 INFO    ] ================================================
[2026-06-22 10:22:27,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:22:27
[2026-06-22 10:22:28,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:22:28,358.358 INFO    ] Initializing speech engine...
[2026-06-22 10:22:28,370.370 INFO    ] 2026-06-22 10:22:28
[2026-06-22 10:22:28,669.669 INFO    ] 2026-06-22 10:22:28
[2026-06-22 10:22:28,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:22:28,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:22:28,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:22:29,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:22:29,217.217 INFO    ] time= 22/06/2026 10:22:29
[2026-06-22 10:22:29,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:22:29,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:22:29,385.385 INFO    ] No existing commands found in stream
[2026-06-22 10:22:34,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:22:34,420.420 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-22 10:22:37,250.250 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:22:37,253.253 INFO    ] Checking for system updates...
[2026-06-22 10:22:37,290.290 INFO    ] 200
[2026-06-22 10:22:37,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:22:37,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:22:37,364.364 INFO    ] No update needed
[2026-06-22 10:22:37,367.367 INFO    ] Checking for camera pi updates...
[2026-06-22 10:22:37,403.403 INFO    ] 200
[2026-06-22 10:22:37,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:22:37,447.447 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:22:37,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:22:37,543.543 INFO    ] No camera update needed
[2026-06-22 10:22:37,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:22:37,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:22:37,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:22:37,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:22:39,598.598 INFO    ] ================================================
[2026-06-22 10:22:39,613.613 INFO    ] Launching Daemon at Mon Jun 22 10:22:39 IST 2026
[2026-06-22 10:22:39,624.624 INFO    ] ================================================
[2026-06-22 10:22:40,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:22:40
[2026-06-22 10:22:40,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:22:41,226.226 INFO    ] Initializing speech engine...
[2026-06-22 10:22:41,232.232 INFO    ] 2026-06-22 10:22:41
[2026-06-22 10:22:41,509.509 INFO    ] 2026-06-22 10:22:41
[2026-06-22 10:22:41,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:22:41,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:22:41,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:22:41,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:22:42,024.024 INFO    ] time= 22/06/2026 10:22:41
[2026-06-22 10:22:42,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:22:42,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:22:42,240.240 INFO    ] No existing commands found in stream
[2026-06-22 10:22:47,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:22:47,255.255 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-22 10:22:50,820.820 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:22:50,823.823 INFO    ] Checking for system updates...
[2026-06-22 10:22:50,864.864 INFO    ] 200
[2026-06-22 10:22:50,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:22:50,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:22:50,922.922 INFO    ] No update needed
[2026-06-22 10:22:50,927.927 INFO    ] Checking for camera pi updates...
[2026-06-22 10:22:50,963.963 INFO    ] 200
[2026-06-22 10:22:50,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:22:51,007.007 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:22:51,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:22:51,098.098 INFO    ] No camera update needed
[2026-06-22 10:22:51,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:22:51,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:22:51,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:22:51,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:22:53,153.153 INFO    ] ================================================
[2026-06-22 10:22:53,169.169 INFO    ] Launching Daemon at Mon Jun 22 10:22:53 IST 2026
[2026-06-22 10:22:53,180.180 INFO    ] ================================================
[2026-06-22 10:22:53,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:22:53
[2026-06-22 10:22:54,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:22:54,553.553 INFO    ] Initializing speech engine...
[2026-06-22 10:22:54,560.560 INFO    ] 2026-06-22 10:22:54
[2026-06-22 10:22:54,823.823 INFO    ] 2026-06-22 10:22:54
[2026-06-22 10:22:54,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:22:55,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:22:55,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:22:55,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:22:55,368.368 INFO    ] time= 22/06/2026 10:22:55
[2026-06-22 10:22:55,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:22:55,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:22:55,515.515 INFO    ] No existing commands found in stream
[2026-06-22 10:23:00,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:23:00,539.539 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-22 10:23:03,175.175 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:23:03,178.178 INFO    ] Checking for system updates...
[2026-06-22 10:23:03,215.215 INFO    ] 200
[2026-06-22 10:23:03,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:23:03,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:23:03,275.275 INFO    ] No update needed
[2026-06-22 10:23:03,278.278 INFO    ] Checking for camera pi updates...
[2026-06-22 10:23:03,318.318 INFO    ] 200
[2026-06-22 10:23:03,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:23:03,369.369 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:23:03,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:23:03,458.458 INFO    ] No camera update needed
[2026-06-22 10:23:03,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:23:03,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:23:03,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:23:03,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:23:05,519.519 INFO    ] ================================================
[2026-06-22 10:23:05,534.534 INFO    ] Launching Daemon at Mon Jun 22 10:23:05 IST 2026
[2026-06-22 10:23:05,545.545 INFO    ] ================================================
[2026-06-22 10:23:06,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:23:06
[2026-06-22 10:23:06,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:23:06,995.995 INFO    ] Initializing speech engine...
[2026-06-22 10:23:07,001.001 INFO    ] 2026-06-22 10:23:06
[2026-06-22 10:23:07,250.250 INFO    ] 2026-06-22 10:23:07
[2026-06-22 10:23:07,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:23:07,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:23:07,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:23:07,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:23:07,718.718 INFO    ] time= 22/06/2026 10:23:07
[2026-06-22 10:23:07,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:23:07,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:23:07,954.954 INFO    ] No existing commands found in stream
[2026-06-22 10:23:12,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:23:12,978.978 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-22 10:23:16,492.492 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:23:16,495.495 INFO    ] Checking for system updates...
[2026-06-22 10:23:16,534.534 INFO    ] 200
[2026-06-22 10:23:16,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:23:16,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:23:16,598.598 INFO    ] No update needed
[2026-06-22 10:23:16,601.601 INFO    ] Checking for camera pi updates...
[2026-06-22 10:23:16,638.638 INFO    ] 200
[2026-06-22 10:23:16,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:23:16,684.684 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:23:16,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:23:16,773.773 INFO    ] No camera update needed
[2026-06-22 10:23:16,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:23:16,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:23:16,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:23:16,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:23:18,834.834 INFO    ] ================================================
[2026-06-22 10:23:18,849.849 INFO    ] Launching Daemon at Mon Jun 22 10:23:18 IST 2026
[2026-06-22 10:23:18,861.861 INFO    ] ================================================
[2026-06-22 10:23:19,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:23:19
[2026-06-22 10:23:20,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:23:20,500.500 INFO    ] Initializing speech engine...
[2026-06-22 10:23:20,509.509 INFO    ] 2026-06-22 10:23:20
[2026-06-22 10:23:20,794.794 INFO    ] 2026-06-22 10:23:20
[2026-06-22 10:23:20,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:23:21,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:23:21,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:23:21,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:23:21,304.304 INFO    ] time= 22/06/2026 10:23:21
[2026-06-22 10:23:21,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:23:21,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:23:21,539.539 INFO    ] No existing commands found in stream
[2026-06-22 10:23:26,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:23:26,558.558 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-22 10:23:28,364.364 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:23:28,367.367 INFO    ] Checking for system updates...
[2026-06-22 10:23:28,405.405 INFO    ] 200
[2026-06-22 10:23:28,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:23:28,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:23:28,465.465 INFO    ] No update needed
[2026-06-22 10:23:28,468.468 INFO    ] Checking for camera pi updates...
[2026-06-22 10:23:28,504.504 INFO    ] 200
[2026-06-22 10:23:28,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:23:28,556.556 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:23:28,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:23:28,659.659 INFO    ] No camera update needed
[2026-06-22 10:23:28,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:23:28,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:23:28,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:23:28,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:23:30,720.720 INFO    ] ================================================
[2026-06-22 10:23:30,739.739 INFO    ] Launching Daemon at Mon Jun 22 10:23:30 IST 2026
[2026-06-22 10:23:30,752.752 INFO    ] ================================================
[2026-06-22 10:23:31,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:23:31
[2026-06-22 10:23:31,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:23:32,228.228 INFO    ] Initializing speech engine...
[2026-06-22 10:23:32,251.251 INFO    ] 2026-06-22 10:23:32
[2026-06-22 10:23:32,518.518 INFO    ] 2026-06-22 10:23:32
[2026-06-22 10:23:32,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:23:32,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:23:32,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:23:32,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:23:32,943.943 INFO    ] time= 22/06/2026 10:23:32
[2026-06-22 10:23:32,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:23:32,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:23:33,116.116 INFO    ] No existing commands found in stream
[2026-06-22 10:23:38,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:23:38,144.144 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-22 10:23:40,301.301 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:23:40,303.303 INFO    ] Checking for system updates...
[2026-06-22 10:23:40,340.340 INFO    ] 200
[2026-06-22 10:23:40,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:23:40,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:23:40,397.397 INFO    ] No update needed
[2026-06-22 10:23:40,400.400 INFO    ] Checking for camera pi updates...
[2026-06-22 10:23:40,433.433 INFO    ] 200
[2026-06-22 10:23:40,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:23:40,476.476 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:23:40,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:23:40,559.559 INFO    ] No camera update needed
[2026-06-22 10:23:40,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:23:40,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:23:40,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:23:40,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:23:42,615.615 INFO    ] ================================================
[2026-06-22 10:23:42,630.630 INFO    ] Launching Daemon at Mon Jun 22 10:23:42 IST 2026
[2026-06-22 10:23:42,641.641 INFO    ] ================================================
[2026-06-22 10:23:43,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:23:43
[2026-06-22 10:23:43,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:23:43,969.969 INFO    ] Initializing speech engine...
[2026-06-22 10:23:43,981.981 INFO    ] 2026-06-22 10:23:43
[2026-06-22 10:23:44,228.228 INFO    ] 2026-06-22 10:23:44
[2026-06-22 10:23:44,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:23:44,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:23:44,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:23:44,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:23:44,734.734 INFO    ] time= 22/06/2026 10:23:44
[2026-06-22 10:23:44,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:23:44,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:23:44,913.913 INFO    ] No existing commands found in stream
[2026-06-22 10:23:49,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:23:49,946.946 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-22 10:23:50,791.791 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:23:50,799.799 INFO    ] Checking for system updates...
[2026-06-22 10:23:50,847.847 INFO    ] 200
[2026-06-22 10:23:50,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:23:50,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:23:50,904.904 INFO    ] No update needed
[2026-06-22 10:23:50,907.907 INFO    ] Checking for camera pi updates...
[2026-06-22 10:23:50,942.942 INFO    ] 200
[2026-06-22 10:23:50,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:23:50,986.986 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:23:51,139.139 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:23:51,141.141 INFO    ] No camera update needed
[2026-06-22 10:23:51,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:23:51,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:23:51,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:23:51,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:23:53,198.198 INFO    ] ================================================
[2026-06-22 10:23:53,213.213 INFO    ] Launching Daemon at Mon Jun 22 10:23:53 IST 2026
[2026-06-22 10:23:53,224.224 INFO    ] ================================================
[2026-06-22 10:23:53,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:23:53
[2026-06-22 10:23:54,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:23:54,880.880 INFO    ] Initializing speech engine...
[2026-06-22 10:23:54,888.888 INFO    ] 2026-06-22 10:23:54
[2026-06-22 10:23:55,150.150 INFO    ] 2026-06-22 10:23:55
[2026-06-22 10:23:55,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:23:55,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:23:55,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:23:55,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:23:55,551.551 INFO    ] time= 22/06/2026 10:23:55
[2026-06-22 10:23:55,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:23:55,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:23:55,706.706 INFO    ] No existing commands found in stream
[2026-06-22 10:24:00,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:24:00,735.735 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-22 10:24:03,487.487 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:24:03,490.490 INFO    ] Checking for system updates...
[2026-06-22 10:24:03,532.532 INFO    ] 200
[2026-06-22 10:24:03,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:24:03,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:24:03,592.592 INFO    ] No update needed
[2026-06-22 10:24:03,595.595 INFO    ] Checking for camera pi updates...
[2026-06-22 10:24:03,636.636 INFO    ] 200
[2026-06-22 10:24:03,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:24:03,681.681 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:24:03,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:24:03,767.767 INFO    ] No camera update needed
[2026-06-22 10:24:03,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:24:03,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:24:03,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:24:03,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:24:05,827.827 INFO    ] ================================================
[2026-06-22 10:24:05,844.844 INFO    ] Launching Daemon at Mon Jun 22 10:24:05 IST 2026
[2026-06-22 10:24:05,855.855 INFO    ] ================================================
[2026-06-22 10:24:06,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:24:06
[2026-06-22 10:24:07,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:24:07,554.554 INFO    ] Initializing speech engine...
[2026-06-22 10:24:07,566.566 INFO    ] 2026-06-22 10:24:07
[2026-06-22 10:24:07,859.859 INFO    ] 2026-06-22 10:24:07
[2026-06-22 10:24:07,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:24:08,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:24:08,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:24:08,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:24:08,407.407 INFO    ] time= 22/06/2026 10:24:08
[2026-06-22 10:24:08,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:24:08,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:24:08,565.565 INFO    ] No existing commands found in stream
[2026-06-22 10:24:13,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:24:13,592.592 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-22 10:24:17,169.169 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:24:17,172.172 INFO    ] Checking for system updates...
[2026-06-22 10:24:17,210.210 INFO    ] 200
[2026-06-22 10:24:17,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:24:17,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:24:17,270.270 INFO    ] No update needed
[2026-06-22 10:24:17,273.273 INFO    ] Checking for camera pi updates...
[2026-06-22 10:24:17,309.309 INFO    ] 200
[2026-06-22 10:24:17,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:24:17,354.354 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:24:17,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:24:17,440.440 INFO    ] No camera update needed
[2026-06-22 10:24:17,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:24:17,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:24:17,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:24:17,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:24:19,501.501 INFO    ] ================================================
[2026-06-22 10:24:19,517.517 INFO    ] Launching Daemon at Mon Jun 22 10:24:19 IST 2026
[2026-06-22 10:24:19,529.529 INFO    ] ================================================
[2026-06-22 10:24:20,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:24:20
[2026-06-22 10:24:20,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:24:20,899.899 INFO    ] Initializing speech engine...
[2026-06-22 10:24:20,907.907 INFO    ] 2026-06-22 10:24:20
[2026-06-22 10:24:21,169.169 INFO    ] 2026-06-22 10:24:21
[2026-06-22 10:24:21,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:24:21,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:24:21,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:24:21,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:24:21,718.718 INFO    ] time= 22/06/2026 10:24:21
[2026-06-22 10:24:21,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:24:21,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:24:21,870.870 INFO    ] No existing commands found in stream
[2026-06-22 10:24:26,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:24:26,887.887 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-22 10:24:30,253.253 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:24:30,255.255 INFO    ] Checking for system updates...
[2026-06-22 10:24:30,292.292 INFO    ] 200
[2026-06-22 10:24:30,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:24:30,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:24:30,350.350 INFO    ] No update needed
[2026-06-22 10:24:30,352.352 INFO    ] Checking for camera pi updates...
[2026-06-22 10:24:30,391.391 INFO    ] 200
[2026-06-22 10:24:30,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:24:30,434.434 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:24:30,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:24:30,529.529 INFO    ] No camera update needed
[2026-06-22 10:24:30,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:24:30,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:24:30,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:24:30,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:24:32,587.587 INFO    ] ================================================
[2026-06-22 10:24:32,603.603 INFO    ] Launching Daemon at Mon Jun 22 10:24:32 IST 2026
[2026-06-22 10:24:32,614.614 INFO    ] ================================================
[2026-06-22 10:24:33,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:24:33
[2026-06-22 10:24:33,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:24:34,275.275 INFO    ] Initializing speech engine...
[2026-06-22 10:24:34,286.286 INFO    ] 2026-06-22 10:24:34
[2026-06-22 10:24:34,566.566 INFO    ] 2026-06-22 10:24:34
[2026-06-22 10:24:34,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:24:34,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:24:34,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:24:35,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:24:35,204.204 INFO    ] time= 22/06/2026 10:24:35
[2026-06-22 10:24:35,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:24:35,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:24:35,455.455 INFO    ] No existing commands found in stream
[2026-06-22 10:24:40,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:24:40,474.474 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-22 10:24:41,444.444 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:24:41,447.447 INFO    ] Checking for system updates...
[2026-06-22 10:24:41,485.485 INFO    ] 200
[2026-06-22 10:24:41,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:24:41,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:24:41,543.543 INFO    ] No update needed
[2026-06-22 10:24:41,546.546 INFO    ] Checking for camera pi updates...
[2026-06-22 10:24:41,580.580 INFO    ] 200
[2026-06-22 10:24:41,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:24:41,623.623 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:24:41,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:24:41,706.706 INFO    ] No camera update needed
[2026-06-22 10:24:41,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:24:41,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:24:41,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:24:41,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:24:43,763.763 INFO    ] ================================================
[2026-06-22 10:24:43,778.778 INFO    ] Launching Daemon at Mon Jun 22 10:24:43 IST 2026
[2026-06-22 10:24:43,789.789 INFO    ] ================================================
[2026-06-22 10:24:44,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:24:44
[2026-06-22 10:24:44,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:24:45,186.186 INFO    ] Initializing speech engine...
[2026-06-22 10:24:45,196.196 INFO    ] 2026-06-22 10:24:45
[2026-06-22 10:24:45,453.453 INFO    ] 2026-06-22 10:24:45
[2026-06-22 10:24:45,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:24:45,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:24:45,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:24:45,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:24:45,967.967 INFO    ] time= 22/06/2026 10:24:45
[2026-06-22 10:24:45,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:24:46,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:24:46,117.117 INFO    ] No existing commands found in stream
[2026-06-22 10:24:51,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:24:51,142.142 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-22 10:24:55,032.032 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:24:55,034.034 INFO    ] Checking for system updates...
[2026-06-22 10:24:55,070.070 INFO    ] 200
[2026-06-22 10:24:55,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:24:55,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:24:55,128.128 INFO    ] No update needed
[2026-06-22 10:24:55,130.130 INFO    ] Checking for camera pi updates...
[2026-06-22 10:24:55,164.164 INFO    ] 200
[2026-06-22 10:24:55,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:24:55,207.207 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:24:55,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:24:55,278.278 INFO    ] No camera update needed
[2026-06-22 10:24:55,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:24:55,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:24:55,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:24:55,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:24:57,334.334 INFO    ] ================================================
[2026-06-22 10:24:57,350.350 INFO    ] Launching Daemon at Mon Jun 22 10:24:57 IST 2026
[2026-06-22 10:24:57,361.361 INFO    ] ================================================
[2026-06-22 10:24:57,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:24:57
[2026-06-22 10:24:58,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:24:58,696.696 INFO    ] Initializing speech engine...
[2026-06-22 10:24:58,705.705 INFO    ] 2026-06-22 10:24:58
[2026-06-22 10:24:58,956.956 INFO    ] 2026-06-22 10:24:58
[2026-06-22 10:24:58,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:24:59,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:24:59,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:24:59,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:24:59,339.339 INFO    ] time= 22/06/2026 10:24:59
[2026-06-22 10:24:59,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:24:59,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:24:59,538.538 INFO    ] No existing commands found in stream
[2026-06-22 10:25:04,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:25:04,553.553 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-22 10:25:06,104.104 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:25:06,107.107 INFO    ] Checking for system updates...
[2026-06-22 10:25:06,147.147 INFO    ] 200
[2026-06-22 10:25:06,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:25:06,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:25:06,229.229 INFO    ] No update needed
[2026-06-22 10:25:06,233.233 INFO    ] Checking for camera pi updates...
[2026-06-22 10:25:06,280.280 INFO    ] 200
[2026-06-22 10:25:06,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:25:06,342.342 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:25:06,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:25:06,411.411 INFO    ] No camera update needed
[2026-06-22 10:25:06,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:25:06,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:25:06,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:25:06,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:25:08,471.471 INFO    ] ================================================
[2026-06-22 10:25:08,487.487 INFO    ] Launching Daemon at Mon Jun 22 10:25:08 IST 2026
[2026-06-22 10:25:08,498.498 INFO    ] ================================================
[2026-06-22 10:25:09,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:25:09
[2026-06-22 10:25:09,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:25:09,805.805 INFO    ] Initializing speech engine...
[2026-06-22 10:25:09,827.827 INFO    ] 2026-06-22 10:25:09
[2026-06-22 10:25:10,082.082 INFO    ] 2026-06-22 10:25:10
[2026-06-22 10:25:10,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:25:10,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:25:10,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:25:10,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:25:10,585.585 INFO    ] time= 22/06/2026 10:25:10
[2026-06-22 10:25:10,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:25:10,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:25:10,769.769 INFO    ] No existing commands found in stream
[2026-06-22 10:25:15,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:25:15,785.785 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-22 10:25:18,465.465 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:25:18,467.467 INFO    ] Checking for system updates...
[2026-06-22 10:25:18,489.489 INFO    ] 200
[2026-06-22 10:25:18,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:25:18,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:25:18,522.522 INFO    ] No update needed
[2026-06-22 10:25:18,523.523 INFO    ] Checking for camera pi updates...
[2026-06-22 10:25:18,551.551 INFO    ] 200
[2026-06-22 10:25:18,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:25:18,593.593 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:25:18,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:25:18,674.674 INFO    ] No camera update needed
[2026-06-22 10:25:18,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:25:18,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:25:18,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:25:18,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:25:20,731.731 INFO    ] ================================================
[2026-06-22 10:25:20,747.747 INFO    ] Launching Daemon at Mon Jun 22 10:25:20 IST 2026
[2026-06-22 10:25:20,758.758 INFO    ] ================================================
[2026-06-22 10:25:21,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:25:21
[2026-06-22 10:25:21,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:25:22,293.293 INFO    ] Initializing speech engine...
[2026-06-22 10:25:22,302.302 INFO    ] 2026-06-22 10:25:22
[2026-06-22 10:25:22,586.586 INFO    ] 2026-06-22 10:25:22
[2026-06-22 10:25:22,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:25:22,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:25:22,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:25:23,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:25:23,122.122 INFO    ] time= 22/06/2026 10:25:23
[2026-06-22 10:25:23,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:25:23,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:25:23,276.276 INFO    ] No existing commands found in stream
[2026-06-22 10:25:28,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:25:28,297.297 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-22 10:25:31,030.030 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:25:31,032.032 INFO    ] Checking for system updates...
[2026-06-22 10:25:31,062.062 INFO    ] 200
[2026-06-22 10:25:31,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:25:31,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:25:31,121.121 INFO    ] No update needed
[2026-06-22 10:25:31,124.124 INFO    ] Checking for camera pi updates...
[2026-06-22 10:25:31,161.161 INFO    ] 200
[2026-06-22 10:25:31,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:25:31,207.207 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:25:31,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:25:31,289.289 INFO    ] No camera update needed
[2026-06-22 10:25:31,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:25:31,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:25:31,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:25:31,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:25:33,350.350 INFO    ] ================================================
[2026-06-22 10:25:33,366.366 INFO    ] Launching Daemon at Mon Jun 22 10:25:33 IST 2026
[2026-06-22 10:25:33,377.377 INFO    ] ================================================
[2026-06-22 10:25:33,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:25:33
[2026-06-22 10:25:34,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:25:34,831.831 INFO    ] Initializing speech engine...
[2026-06-22 10:25:34,837.837 INFO    ] 2026-06-22 10:25:34
[2026-06-22 10:25:35,085.085 INFO    ] 2026-06-22 10:25:35
[2026-06-22 10:25:35,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:25:35,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:25:35,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:25:35,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:25:35,552.552 INFO    ] time= 22/06/2026 10:25:35
[2026-06-22 10:25:35,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:25:35,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:25:35,691.691 INFO    ] No existing commands found in stream
[2026-06-22 10:25:40,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:25:40,718.718 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-22 10:25:42,323.323 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:25:42,326.326 INFO    ] Checking for system updates...
[2026-06-22 10:25:42,363.363 INFO    ] 200
[2026-06-22 10:25:42,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:25:42,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:25:42,422.422 INFO    ] No update needed
[2026-06-22 10:25:42,425.425 INFO    ] Checking for camera pi updates...
[2026-06-22 10:25:42,462.462 INFO    ] 200
[2026-06-22 10:25:42,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:25:42,506.506 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:25:42,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:25:42,595.595 INFO    ] No camera update needed
[2026-06-22 10:25:42,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:25:42,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:25:42,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:25:42,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:25:44,651.651 INFO    ] ================================================
[2026-06-22 10:25:44,667.667 INFO    ] Launching Daemon at Mon Jun 22 10:25:44 IST 2026
[2026-06-22 10:25:44,678.678 INFO    ] ================================================
[2026-06-22 10:25:45,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:25:45
[2026-06-22 10:25:45,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:25:45,991.991 INFO    ] Initializing speech engine...
[2026-06-22 10:25:46,003.003 INFO    ] 2026-06-22 10:25:45
[2026-06-22 10:25:46,280.280 INFO    ] 2026-06-22 10:25:46
[2026-06-22 10:25:46,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:25:46,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:25:46,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:25:46,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:25:46,787.787 INFO    ] time= 22/06/2026 10:25:46
[2026-06-22 10:25:46,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:25:46,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:25:47,049.049 INFO    ] No existing commands found in stream
[2026-06-22 10:25:52,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:25:52,071.071 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-22 10:25:52,635.635 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:25:52,636.636 INFO    ] Checking for system updates...
[2026-06-22 10:25:52,657.657 INFO    ] 200
[2026-06-22 10:25:52,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:25:52,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:25:52,690.690 INFO    ] No update needed
[2026-06-22 10:25:52,691.691 INFO    ] Checking for camera pi updates...
[2026-06-22 10:25:52,710.710 INFO    ] 200
[2026-06-22 10:25:52,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:25:52,735.735 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:25:52,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:25:52,915.915 INFO    ] No camera update needed
[2026-06-22 10:25:52,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:25:52,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:25:52,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:25:52,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:25:54,972.972 INFO    ] ================================================
[2026-06-22 10:25:54,988.988 INFO    ] Launching Daemon at Mon Jun 22 10:25:54 IST 2026
[2026-06-22 10:25:55,999.999 INFO    ] ================================================
[2026-06-22 10:25:55,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:25:55
[2026-06-22 10:25:56,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:25:56,343.343 INFO    ] Initializing speech engine...
[2026-06-22 10:25:56,349.349 INFO    ] 2026-06-22 10:25:56
[2026-06-22 10:25:56,639.639 INFO    ] 2026-06-22 10:25:56
[2026-06-22 10:25:56,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:25:56,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:25:56,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:25:57,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:25:57,131.131 INFO    ] time= 22/06/2026 10:25:57
[2026-06-22 10:25:57,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:25:57,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:25:57,377.377 INFO    ] No existing commands found in stream
[2026-06-22 10:26:02,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:26:02,400.400 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-22 10:26:03,522.522 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:26:03,525.525 INFO    ] Checking for system updates...
[2026-06-22 10:26:03,564.564 INFO    ] 200
[2026-06-22 10:26:03,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:26:03,625.625 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:26:03,628.628 INFO    ] No update needed
[2026-06-22 10:26:03,630.630 INFO    ] Checking for camera pi updates...
[2026-06-22 10:26:03,668.668 INFO    ] 200
[2026-06-22 10:26:03,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:26:03,716.716 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:26:03,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:26:03,804.804 INFO    ] No camera update needed
[2026-06-22 10:26:03,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:26:03,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:26:03,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:26:03,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:26:05,862.862 INFO    ] ================================================
[2026-06-22 10:26:05,878.878 INFO    ] Launching Daemon at Mon Jun 22 10:26:05 IST 2026
[2026-06-22 10:26:05,889.889 INFO    ] ================================================
[2026-06-22 10:26:06,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:26:06
[2026-06-22 10:26:06,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:26:07,271.271 INFO    ] Initializing speech engine...
[2026-06-22 10:26:07,276.276 INFO    ] 2026-06-22 10:26:07
[2026-06-22 10:26:07,539.539 INFO    ] 2026-06-22 10:26:07
[2026-06-22 10:26:07,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:26:07,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:26:07,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:26:07,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:26:08,034.034 INFO    ] time= 22/06/2026 10:26:07
[2026-06-22 10:26:08,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:26:08,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:26:08,207.207 INFO    ] No existing commands found in stream
[2026-06-22 10:26:13,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:26:13,240.240 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-22 10:26:15,295.295 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:26:15,298.298 INFO    ] Checking for system updates...
[2026-06-22 10:26:15,334.334 INFO    ] 200
[2026-06-22 10:26:15,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:26:15,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:26:15,398.398 INFO    ] No update needed
[2026-06-22 10:26:15,401.401 INFO    ] Checking for camera pi updates...
[2026-06-22 10:26:15,434.434 INFO    ] 200
[2026-06-22 10:26:15,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:26:15,477.477 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:26:15,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:26:15,580.580 INFO    ] No camera update needed
[2026-06-22 10:26:15,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:26:15,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:26:15,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:26:15,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:26:17,637.637 INFO    ] ================================================
[2026-06-22 10:26:17,652.652 INFO    ] Launching Daemon at Mon Jun 22 10:26:17 IST 2026
[2026-06-22 10:26:17,663.663 INFO    ] ================================================
[2026-06-22 10:26:18,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:26:18
[2026-06-22 10:26:18,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:26:19,085.085 INFO    ] Initializing speech engine...
[2026-06-22 10:26:19,109.109 INFO    ] 2026-06-22 10:26:19
[2026-06-22 10:26:19,386.386 INFO    ] 2026-06-22 10:26:19
[2026-06-22 10:26:19,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:26:19,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:26:19,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:26:19,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:26:19,799.799 INFO    ] time= 22/06/2026 10:26:19
[2026-06-22 10:26:19,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:26:19,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:26:19,888.888 INFO    ] No existing commands found in stream
[2026-06-22 10:26:24,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:26:24,921.921 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-22 10:26:28,887.887 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:26:28,889.889 INFO    ] Checking for system updates...
[2026-06-22 10:26:28,925.925 INFO    ] 200
[2026-06-22 10:26:28,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:26:28,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:26:28,983.983 INFO    ] No update needed
[2026-06-22 10:26:28,986.986 INFO    ] Checking for camera pi updates...
[2026-06-22 10:26:29,019.019 INFO    ] 200
[2026-06-22 10:26:29,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:26:29,063.063 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:26:29,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:26:29,166.166 INFO    ] No camera update needed
[2026-06-22 10:26:29,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:26:29,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:26:29,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:26:29,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:26:31,222.222 INFO    ] ================================================
[2026-06-22 10:26:31,238.238 INFO    ] Launching Daemon at Mon Jun 22 10:26:31 IST 2026
[2026-06-22 10:26:31,249.249 INFO    ] ================================================
[2026-06-22 10:26:31,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:26:31
[2026-06-22 10:26:32,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:26:32,793.793 INFO    ] Initializing speech engine...
[2026-06-22 10:26:32,809.809 INFO    ] 2026-06-22 10:26:32
[2026-06-22 10:26:33,098.098 INFO    ] 2026-06-22 10:26:33
[2026-06-22 10:26:33,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:26:33,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:26:33,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:26:33,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:26:33,640.640 INFO    ] time= 22/06/2026 10:26:33
[2026-06-22 10:26:33,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:26:33,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:26:33,881.881 INFO    ] No existing commands found in stream
[2026-06-22 10:26:38,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:26:38,902.902 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-22 10:26:42,570.570 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:26:42,573.573 INFO    ] Checking for system updates...
[2026-06-22 10:26:42,609.609 INFO    ] 200
[2026-06-22 10:26:42,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:26:42,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:26:42,675.675 INFO    ] No update needed
[2026-06-22 10:26:42,677.677 INFO    ] Checking for camera pi updates...
[2026-06-22 10:26:42,716.716 INFO    ] 200
[2026-06-22 10:26:42,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:26:42,767.767 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:26:42,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:26:42,853.853 INFO    ] No camera update needed
[2026-06-22 10:26:42,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:26:42,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:26:42,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:26:42,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:26:44,912.912 INFO    ] ================================================
[2026-06-22 10:26:44,928.928 INFO    ] Launching Daemon at Mon Jun 22 10:26:44 IST 2026
[2026-06-22 10:26:44,939.939 INFO    ] ================================================
[2026-06-22 10:26:45,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:26:45
[2026-06-22 10:26:46,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:26:46,307.307 INFO    ] Initializing speech engine...
[2026-06-22 10:26:46,315.315 INFO    ] 2026-06-22 10:26:46
[2026-06-22 10:26:46,574.574 INFO    ] 2026-06-22 10:26:46
[2026-06-22 10:26:46,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:26:46,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:26:46,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:26:47,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:26:47,078.078 INFO    ] time= 22/06/2026 10:26:47
[2026-06-22 10:26:47,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:26:47,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:26:47,263.263 INFO    ] No existing commands found in stream
[2026-06-22 10:26:52,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:26:52,290.290 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-22 10:26:56,236.236 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:26:56,239.239 INFO    ] Checking for system updates...
[2026-06-22 10:26:56,276.276 INFO    ] 200
[2026-06-22 10:26:56,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:26:56,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:26:56,335.335 INFO    ] No update needed
[2026-06-22 10:26:56,338.338 INFO    ] Checking for camera pi updates...
[2026-06-22 10:26:56,376.376 INFO    ] 200
[2026-06-22 10:26:56,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:26:56,420.420 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:26:56,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:26:56,516.516 INFO    ] No camera update needed
[2026-06-22 10:26:56,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:26:56,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:26:56,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:26:56,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:26:58,576.576 INFO    ] ================================================
[2026-06-22 10:26:58,591.591 INFO    ] Launching Daemon at Mon Jun 22 10:26:58 IST 2026
[2026-06-22 10:26:58,603.603 INFO    ] ================================================
[2026-06-22 10:26:59,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:26:59
[2026-06-22 10:26:59,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:27:00,050.050 INFO    ] Initializing speech engine...
[2026-06-22 10:27:00,059.059 INFO    ] 2026-06-22 10:27:00
[2026-06-22 10:27:00,309.309 INFO    ] 2026-06-22 10:27:00
[2026-06-22 10:27:00,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:27:00,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:27:00,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:27:00,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:27:00,793.793 INFO    ] time= 22/06/2026 10:27:00
[2026-06-22 10:27:00,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:27:00,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:27:01,021.021 INFO    ] No existing commands found in stream
[2026-06-22 10:27:06,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:27:06,038.038 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-22 10:27:08,983.983 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:27:08,986.986 INFO    ] Checking for system updates...
[2026-06-22 10:27:09,027.027 INFO    ] 200
[2026-06-22 10:27:09,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:27:09,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:27:09,097.097 INFO    ] No update needed
[2026-06-22 10:27:09,100.100 INFO    ] Checking for camera pi updates...
[2026-06-22 10:27:09,139.139 INFO    ] 200
[2026-06-22 10:27:09,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:27:09,188.188 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:27:09,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:27:09,276.276 INFO    ] No camera update needed
[2026-06-22 10:27:09,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:27:09,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:27:09,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:27:09,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:27:11,338.338 INFO    ] ================================================
[2026-06-22 10:27:11,354.354 INFO    ] Launching Daemon at Mon Jun 22 10:27:11 IST 2026
[2026-06-22 10:27:11,365.365 INFO    ] ================================================
[2026-06-22 10:27:11,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:27:11
[2026-06-22 10:27:12,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:27:12,851.851 INFO    ] Initializing speech engine...
[2026-06-22 10:27:12,860.860 INFO    ] 2026-06-22 10:27:12
[2026-06-22 10:27:13,152.152 INFO    ] 2026-06-22 10:27:13
[2026-06-22 10:27:13,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:27:13,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:27:13,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:27:13,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:27:13,702.702 INFO    ] time= 22/06/2026 10:27:13
[2026-06-22 10:27:13,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:27:13,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:27:13,861.861 INFO    ] No existing commands found in stream
[2026-06-22 10:27:18,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:27:18,886.886 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-22 10:27:19,425.425 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:27:19,428.428 INFO    ] Checking for system updates...
[2026-06-22 10:27:19,465.465 INFO    ] 200
[2026-06-22 10:27:19,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:27:19,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:27:19,524.524 INFO    ] No update needed
[2026-06-22 10:27:19,527.527 INFO    ] Checking for camera pi updates...
[2026-06-22 10:27:19,561.561 INFO    ] 200
[2026-06-22 10:27:19,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:27:19,610.610 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:27:19,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:27:19,695.695 INFO    ] No camera update needed
[2026-06-22 10:27:19,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:27:19,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:27:19,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:27:19,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:27:21,755.755 INFO    ] ================================================
[2026-06-22 10:27:21,772.772 INFO    ] Launching Daemon at Mon Jun 22 10:27:21 IST 2026
[2026-06-22 10:27:21,784.784 INFO    ] ================================================
[2026-06-22 10:27:22,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:27:22
[2026-06-22 10:27:23,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:27:23,524.524 INFO    ] Initializing speech engine...
[2026-06-22 10:27:23,532.532 INFO    ] 2026-06-22 10:27:23
[2026-06-22 10:27:23,810.810 INFO    ] 2026-06-22 10:27:23
[2026-06-22 10:27:23,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:27:24,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:27:24,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:27:24,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:27:24,305.305 INFO    ] time= 22/06/2026 10:27:24
[2026-06-22 10:27:24,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:27:24,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:27:24,519.519 INFO    ] No existing commands found in stream
[2026-06-22 10:27:29,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:27:29,549.549 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-22 10:27:32,164.164 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:27:32,167.167 INFO    ] Checking for system updates...
[2026-06-22 10:27:32,210.210 INFO    ] 200
[2026-06-22 10:27:32,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:27:32,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:27:32,271.271 INFO    ] No update needed
[2026-06-22 10:27:32,274.274 INFO    ] Checking for camera pi updates...
[2026-06-22 10:27:32,319.319 INFO    ] 200
[2026-06-22 10:27:32,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:27:32,367.367 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:27:32,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:27:32,430.430 INFO    ] No camera update needed
[2026-06-22 10:27:32,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:27:32,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:27:32,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:27:32,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:27:34,495.495 INFO    ] ================================================
[2026-06-22 10:27:34,510.510 INFO    ] Launching Daemon at Mon Jun 22 10:27:34 IST 2026
[2026-06-22 10:27:34,522.522 INFO    ] ================================================
[2026-06-22 10:27:35,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:27:35
[2026-06-22 10:27:35,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:27:36,066.066 INFO    ] Initializing speech engine...
[2026-06-22 10:27:36,078.078 INFO    ] 2026-06-22 10:27:36
[2026-06-22 10:27:36,362.362 INFO    ] 2026-06-22 10:27:36
[2026-06-22 10:27:36,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:27:36,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:27:36,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:27:37,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:27:37,089.089 INFO    ] time= 22/06/2026 10:27:37
[2026-06-22 10:27:37,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:27:37,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:27:37,351.351 INFO    ] No existing commands found in stream
[2026-06-22 10:27:42,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:27:42,381.381 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-22 10:27:45,148.148 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:27:45,151.151 INFO    ] Checking for system updates...
[2026-06-22 10:27:45,188.188 INFO    ] 200
[2026-06-22 10:27:45,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:27:45,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:27:45,248.248 INFO    ] No update needed
[2026-06-22 10:27:45,251.251 INFO    ] Checking for camera pi updates...
[2026-06-22 10:27:45,285.285 INFO    ] 200
[2026-06-22 10:27:45,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:27:45,328.328 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:27:45,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:27:45,409.409 INFO    ] No camera update needed
[2026-06-22 10:27:45,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:27:45,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:27:45,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:27:45,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:27:47,465.465 INFO    ] ================================================
[2026-06-22 10:27:47,481.481 INFO    ] Launching Daemon at Mon Jun 22 10:27:47 IST 2026
[2026-06-22 10:27:47,492.492 INFO    ] ================================================
[2026-06-22 10:27:48,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:27:48
[2026-06-22 10:27:48,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:27:48,841.841 INFO    ] Initializing speech engine...
[2026-06-22 10:27:48,856.856 INFO    ] 2026-06-22 10:27:48
[2026-06-22 10:27:49,112.112 INFO    ] 2026-06-22 10:27:49
[2026-06-22 10:27:49,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:27:49,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:27:49,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:27:49,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:27:49,491.491 INFO    ] time= 22/06/2026 10:27:49
[2026-06-22 10:27:49,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:27:49,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:27:49,669.669 INFO    ] No existing commands found in stream
[2026-06-22 10:27:54,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:27:54,701.701 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-22 10:27:56,645.645 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:27:56,648.648 INFO    ] Checking for system updates...
[2026-06-22 10:27:56,684.684 INFO    ] 200
[2026-06-22 10:27:56,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:27:56,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:27:56,742.742 INFO    ] No update needed
[2026-06-22 10:27:56,745.745 INFO    ] Checking for camera pi updates...
[2026-06-22 10:27:56,779.779 INFO    ] 200
[2026-06-22 10:27:56,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:27:56,822.822 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:27:56,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:27:56,900.900 INFO    ] No camera update needed
[2026-06-22 10:27:56,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:27:56,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:27:56,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:27:56,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:27:58,955.955 INFO    ] ================================================
[2026-06-22 10:27:58,971.971 INFO    ] Launching Daemon at Mon Jun 22 10:27:58 IST 2026
[2026-06-22 10:27:58,982.982 INFO    ] ================================================
[2026-06-22 10:27:59,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:27:59
[2026-06-22 10:28:00,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:28:00,324.324 INFO    ] Initializing speech engine...
[2026-06-22 10:28:00,333.333 INFO    ] 2026-06-22 10:28:00
[2026-06-22 10:28:00,583.583 INFO    ] 2026-06-22 10:28:00
[2026-06-22 10:28:00,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:28:00,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:28:00,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:28:01,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:28:01,069.069 INFO    ] time= 22/06/2026 10:28:01
[2026-06-22 10:28:01,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:28:01,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:28:01,294.294 INFO    ] No existing commands found in stream
[2026-06-22 10:28:06,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:28:06,319.319 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-22 10:28:08,832.832 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:28:08,835.835 INFO    ] Checking for system updates...
[2026-06-22 10:28:08,871.871 INFO    ] 200
[2026-06-22 10:28:08,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:28:08,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:28:08,936.936 INFO    ] No update needed
[2026-06-22 10:28:08,938.938 INFO    ] Checking for camera pi updates...
[2026-06-22 10:28:08,973.973 INFO    ] 200
[2026-06-22 10:28:08,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:28:09,021.021 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:28:09,203.203 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:28:09,206.206 INFO    ] No camera update needed
[2026-06-22 10:28:09,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:28:09,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:28:09,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:28:09,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:28:11,265.265 INFO    ] ================================================
[2026-06-22 10:28:11,281.281 INFO    ] Launching Daemon at Mon Jun 22 10:28:11 IST 2026
[2026-06-22 10:28:11,292.292 INFO    ] ================================================
[2026-06-22 10:28:11,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:28:11
[2026-06-22 10:28:12,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:28:12,655.655 INFO    ] Initializing speech engine...
[2026-06-22 10:28:12,680.680 INFO    ] 2026-06-22 10:28:12
[2026-06-22 10:28:12,939.939 INFO    ] 2026-06-22 10:28:12
[2026-06-22 10:28:12,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:28:13,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:28:13,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:28:13,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:28:13,438.438 INFO    ] time= 22/06/2026 10:28:13
[2026-06-22 10:28:13,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:28:13,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:28:13,651.651 INFO    ] No existing commands found in stream
[2026-06-22 10:28:18,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:28:18,670.670 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-22 10:28:22,496.496 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:28:22,498.498 INFO    ] Checking for system updates...
[2026-06-22 10:28:22,518.518 INFO    ] 200
[2026-06-22 10:28:22,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:28:22,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:28:22,554.554 INFO    ] No update needed
[2026-06-22 10:28:22,555.555 INFO    ] Checking for camera pi updates...
[2026-06-22 10:28:22,577.577 INFO    ] 200
[2026-06-22 10:28:22,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:28:22,620.620 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:28:22,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:28:22,706.706 INFO    ] No camera update needed
[2026-06-22 10:28:22,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:28:22,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:28:22,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:28:22,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:28:24,764.764 INFO    ] ================================================
[2026-06-22 10:28:24,781.781 INFO    ] Launching Daemon at Mon Jun 22 10:28:24 IST 2026
[2026-06-22 10:28:24,792.792 INFO    ] ================================================
[2026-06-22 10:28:25,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:28:25
[2026-06-22 10:28:25,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:28:26,109.109 INFO    ] Initializing speech engine...
[2026-06-22 10:28:26,116.116 INFO    ] 2026-06-22 10:28:26
[2026-06-22 10:28:26,418.418 INFO    ] 2026-06-22 10:28:26
[2026-06-22 10:28:26,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:28:26,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:28:26,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:28:26,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:28:26,801.801 INFO    ] time= 22/06/2026 10:28:26
[2026-06-22 10:28:26,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:28:26,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:28:26,956.956 INFO    ] No existing commands found in stream
[2026-06-22 10:28:31,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:28:31,995.995 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-22 10:28:34,113.113 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:28:34,115.115 INFO    ] Checking for system updates...
[2026-06-22 10:28:34,154.154 INFO    ] 200
[2026-06-22 10:28:34,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:28:34,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:28:34,211.211 INFO    ] No update needed
[2026-06-22 10:28:34,214.214 INFO    ] Checking for camera pi updates...
[2026-06-22 10:28:34,247.247 INFO    ] 200
[2026-06-22 10:28:34,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:28:34,291.291 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:28:34,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:28:34,375.375 INFO    ] No camera update needed
[2026-06-22 10:28:34,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:28:34,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:28:34,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:28:34,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:28:36,431.431 INFO    ] ================================================
[2026-06-22 10:28:36,447.447 INFO    ] Launching Daemon at Mon Jun 22 10:28:36 IST 2026
[2026-06-22 10:28:36,459.459 INFO    ] ================================================
[2026-06-22 10:28:36,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:28:36
[2026-06-22 10:28:37,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:28:37,873.873 INFO    ] Initializing speech engine...
[2026-06-22 10:28:37,882.882 INFO    ] 2026-06-22 10:28:37
[2026-06-22 10:28:38,131.131 INFO    ] 2026-06-22 10:28:38
[2026-06-22 10:28:38,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:28:38,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:28:38,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:28:38,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:28:38,686.686 INFO    ] time= 22/06/2026 10:28:38
[2026-06-22 10:28:38,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:28:38,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:28:38,826.826 INFO    ] No existing commands found in stream
[2026-06-22 10:28:43,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:28:43,850.850 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-22 10:28:47,026.026 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:28:47,027.027 INFO    ] Checking for system updates...
[2026-06-22 10:28:47,048.048 INFO    ] 200
[2026-06-22 10:28:47,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:28:47,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:28:47,080.080 INFO    ] No update needed
[2026-06-22 10:28:47,082.082 INFO    ] Checking for camera pi updates...
[2026-06-22 10:28:47,111.111 INFO    ] 200
[2026-06-22 10:28:47,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:28:47,155.155 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:28:47,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:28:47,232.232 INFO    ] No camera update needed
[2026-06-22 10:28:47,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:28:47,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:28:47,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:28:47,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:28:49,288.288 INFO    ] ================================================
[2026-06-22 10:28:49,304.304 INFO    ] Launching Daemon at Mon Jun 22 10:28:49 IST 2026
[2026-06-22 10:28:49,316.316 INFO    ] ================================================
[2026-06-22 10:28:49,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:28:49
[2026-06-22 10:28:50,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:28:50,735.735 INFO    ] Initializing speech engine...
[2026-06-22 10:28:50,758.758 INFO    ] 2026-06-22 10:28:50
[2026-06-22 10:28:51,013.013 INFO    ] 2026-06-22 10:28:51
[2026-06-22 10:28:51,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:28:51,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:28:51,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:28:51,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:28:51,485.485 INFO    ] time= 22/06/2026 10:28:51
[2026-06-22 10:28:51,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:28:51,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:28:51,677.677 INFO    ] No existing commands found in stream
[2026-06-22 10:28:56,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:28:56,716.716 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-22 10:28:57,742.742 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:28:57,745.745 INFO    ] Checking for system updates...
[2026-06-22 10:28:57,782.782 INFO    ] 200
[2026-06-22 10:28:57,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:28:57,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:28:57,841.841 INFO    ] No update needed
[2026-06-22 10:28:57,844.844 INFO    ] Checking for camera pi updates...
[2026-06-22 10:28:57,883.883 INFO    ] 200
[2026-06-22 10:28:57,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:28:57,928.928 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:28:58,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:28:58,017.017 INFO    ] No camera update needed
[2026-06-22 10:28:58,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:28:58,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:28:58,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:28:58,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:29:00,078.078 INFO    ] ================================================
[2026-06-22 10:29:00,093.093 INFO    ] Launching Daemon at Mon Jun 22 10:29:00 IST 2026
[2026-06-22 10:29:00,105.105 INFO    ] ================================================
[2026-06-22 10:29:00,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:29:00
[2026-06-22 10:29:01,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:29:01,848.848 INFO    ] Initializing speech engine...
[2026-06-22 10:29:01,858.858 INFO    ] 2026-06-22 10:29:01
[2026-06-22 10:29:02,152.152 INFO    ] 2026-06-22 10:29:02
[2026-06-22 10:29:02,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:29:02,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:29:02,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:29:02,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:29:02,642.642 INFO    ] time= 22/06/2026 10:29:02
[2026-06-22 10:29:02,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:29:02,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:29:02,881.881 INFO    ] No existing commands found in stream
[2026-06-22 10:29:07,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:29:07,893.893 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-22 10:29:11,161.161 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:29:11,164.164 INFO    ] Checking for system updates...
[2026-06-22 10:29:11,201.201 INFO    ] 200
[2026-06-22 10:29:11,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:29:11,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:29:11,262.262 INFO    ] No update needed
[2026-06-22 10:29:11,264.264 INFO    ] Checking for camera pi updates...
[2026-06-22 10:29:11,299.299 INFO    ] 200
[2026-06-22 10:29:11,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:29:11,346.346 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:29:11,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:29:11,451.451 INFO    ] No camera update needed
[2026-06-22 10:29:11,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:29:11,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:29:11,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:29:11,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:29:13,506.506 INFO    ] ================================================
[2026-06-22 10:29:13,521.521 INFO    ] Launching Daemon at Mon Jun 22 10:29:13 IST 2026
[2026-06-22 10:29:13,532.532 INFO    ] ================================================
[2026-06-22 10:29:14,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:29:14
[2026-06-22 10:29:14,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:29:14,865.865 INFO    ] Initializing speech engine...
[2026-06-22 10:29:14,874.874 INFO    ] 2026-06-22 10:29:14
[2026-06-22 10:29:15,168.168 INFO    ] 2026-06-22 10:29:15
[2026-06-22 10:29:15,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:29:15,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:29:15,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:29:15,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:29:15,594.594 INFO    ] time= 22/06/2026 10:29:15
[2026-06-22 10:29:15,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:29:15,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:29:15,757.757 INFO    ] No existing commands found in stream
[2026-06-22 10:29:20,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:29:20,790.790 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-22 10:29:23,936.936 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:29:23,938.938 INFO    ] Checking for system updates...
[2026-06-22 10:29:23,974.974 INFO    ] 200
[2026-06-22 10:29:23,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:29:24,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:29:24,039.039 INFO    ] No update needed
[2026-06-22 10:29:24,041.041 INFO    ] Checking for camera pi updates...
[2026-06-22 10:29:24,075.075 INFO    ] 200
[2026-06-22 10:29:24,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:29:24,118.118 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:29:24,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:29:24,201.201 INFO    ] No camera update needed
[2026-06-22 10:29:24,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:29:24,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:29:24,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:29:24,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:29:26,256.256 INFO    ] ================================================
[2026-06-22 10:29:26,272.272 INFO    ] Launching Daemon at Mon Jun 22 10:29:26 IST 2026
[2026-06-22 10:29:26,287.287 INFO    ] ================================================
[2026-06-22 10:29:26,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:29:26
[2026-06-22 10:29:27,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:29:27,622.622 INFO    ] Initializing speech engine...
[2026-06-22 10:29:27,630.630 INFO    ] 2026-06-22 10:29:27
[2026-06-22 10:29:27,926.926 INFO    ] 2026-06-22 10:29:27
[2026-06-22 10:29:27,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:29:28,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:29:28,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:29:28,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:29:28,355.355 INFO    ] time= 22/06/2026 10:29:28
[2026-06-22 10:29:28,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:29:28,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:29:28,533.533 INFO    ] No existing commands found in stream
[2026-06-22 10:29:33,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:29:33,561.561 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-22 10:29:37,413.413 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:29:37,415.415 INFO    ] Checking for system updates...
[2026-06-22 10:29:37,451.451 INFO    ] 200
[2026-06-22 10:29:37,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:29:37,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:29:37,511.511 INFO    ] No update needed
[2026-06-22 10:29:37,513.513 INFO    ] Checking for camera pi updates...
[2026-06-22 10:29:37,559.559 INFO    ] 200
[2026-06-22 10:29:37,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:29:37,602.602 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:29:37,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:29:37,687.687 INFO    ] No camera update needed
[2026-06-22 10:29:37,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:29:37,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:29:37,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:29:37,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:29:39,744.744 INFO    ] ================================================
[2026-06-22 10:29:39,759.759 INFO    ] Launching Daemon at Mon Jun 22 10:29:39 IST 2026
[2026-06-22 10:29:39,770.770 INFO    ] ================================================
[2026-06-22 10:29:40,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:29:40
[2026-06-22 10:29:40,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:29:41,160.160 INFO    ] Initializing speech engine...
[2026-06-22 10:29:41,171.171 INFO    ] 2026-06-22 10:29:41
[2026-06-22 10:29:41,432.432 INFO    ] 2026-06-22 10:29:41
[2026-06-22 10:29:41,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:29:41,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:29:41,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:29:41,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:29:41,978.978 INFO    ] time= 22/06/2026 10:29:41
[2026-06-22 10:29:41,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:29:42,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:29:42,132.132 INFO    ] No existing commands found in stream
[2026-06-22 10:29:47,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:29:47,153.153 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-22 10:29:47,647.647 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:29:47,650.650 INFO    ] Checking for system updates...
[2026-06-22 10:29:47,688.688 INFO    ] 200
[2026-06-22 10:29:47,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:29:47,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:29:47,749.749 INFO    ] No update needed
[2026-06-22 10:29:47,751.751 INFO    ] Checking for camera pi updates...
[2026-06-22 10:29:47,788.788 INFO    ] 200
[2026-06-22 10:29:47,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:29:47,839.839 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:29:47,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:29:47,933.933 INFO    ] No camera update needed
[2026-06-22 10:29:47,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:29:47,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:29:47,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:29:47,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:29:49,992.992 INFO    ] ================================================
[2026-06-22 10:29:50,008.008 INFO    ] Launching Daemon at Mon Jun 22 10:29:50 IST 2026
[2026-06-22 10:29:50,019.019 INFO    ] ================================================
[2026-06-22 10:29:50,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:29:50
[2026-06-22 10:29:51,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:29:51,360.360 INFO    ] Initializing speech engine...
[2026-06-22 10:29:51,369.369 INFO    ] 2026-06-22 10:29:51
[2026-06-22 10:29:51,618.618 INFO    ] 2026-06-22 10:29:51
[2026-06-22 10:29:51,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:29:51,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:29:51,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:29:52,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:29:52,087.087 INFO    ] time= 22/06/2026 10:29:52
[2026-06-22 10:29:52,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:29:52,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:29:52,328.328 INFO    ] No existing commands found in stream
[2026-06-22 10:29:57,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:29:57,371.371 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-22 10:30:00,572.572 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:30:00,574.574 INFO    ] Checking for system updates...
[2026-06-22 10:30:00,610.610 INFO    ] 200
[2026-06-22 10:30:00,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:30:00,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:30:00,671.671 INFO    ] No update needed
[2026-06-22 10:30:00,673.673 INFO    ] Checking for camera pi updates...
[2026-06-22 10:30:00,711.711 INFO    ] 200
[2026-06-22 10:30:00,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:30:00,755.755 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:30:00,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:30:00,839.839 INFO    ] No camera update needed
[2026-06-22 10:30:00,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:30:00,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:30:00,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:30:00,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:30:02,923.923 INFO    ] ================================================
[2026-06-22 10:30:02,981.981 INFO    ] Launching Daemon at Mon Jun 22 10:30:02 IST 2026
[2026-06-22 10:30:03,004.004 INFO    ] ================================================
[2026-06-22 10:30:03,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:30:03
[2026-06-22 10:30:04,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:30:04,856.856 INFO    ] Initializing speech engine...
[2026-06-22 10:30:04,865.865 INFO    ] 2026-06-22 10:30:04
[2026-06-22 10:30:05,137.137 INFO    ] 2026-06-22 10:30:05
[2026-06-22 10:30:05,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:30:05,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:30:05,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:30:05,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:30:05,665.665 INFO    ] time= 22/06/2026 10:30:05
[2026-06-22 10:30:05,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:30:05,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:30:05,875.875 INFO    ] No existing commands found in stream
[2026-06-22 10:30:10,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:30:10,908.908 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-22 10:30:11,846.846 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:30:11,849.849 INFO    ] Checking for system updates...
[2026-06-22 10:30:11,885.885 INFO    ] 200
[2026-06-22 10:30:11,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:30:11,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:30:11,942.942 INFO    ] No update needed
[2026-06-22 10:30:11,945.945 INFO    ] Checking for camera pi updates...
[2026-06-22 10:30:11,981.981 INFO    ] 200
[2026-06-22 10:30:11,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:30:12,026.026 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:30:12,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:30:12,205.205 INFO    ] No camera update needed
[2026-06-22 10:30:12,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:30:12,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:30:12,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:30:12,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:30:14,256.256 INFO    ] ================================================
[2026-06-22 10:30:14,272.272 INFO    ] Launching Daemon at Mon Jun 22 10:30:14 IST 2026
[2026-06-22 10:30:14,283.283 INFO    ] ================================================
[2026-06-22 10:30:14,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:30:14
[2026-06-22 10:30:15,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:30:15,752.752 INFO    ] Initializing speech engine...
[2026-06-22 10:30:15,761.761 INFO    ] 2026-06-22 10:30:15
[2026-06-22 10:30:16,010.010 INFO    ] 2026-06-22 10:30:16
[2026-06-22 10:30:16,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:30:16,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:30:16,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:30:16,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:30:16,506.506 INFO    ] time= 22/06/2026 10:30:16
[2026-06-22 10:30:16,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:30:16,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:30:16,723.723 INFO    ] No existing commands found in stream
[2026-06-22 10:30:21,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:30:21,742.742 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-22 10:30:23,238.238 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:30:23,240.240 INFO    ] Checking for system updates...
[2026-06-22 10:30:23,271.271 INFO    ] 200
[2026-06-22 10:30:23,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:30:23,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:30:23,331.331 INFO    ] No update needed
[2026-06-22 10:30:23,334.334 INFO    ] Checking for camera pi updates...
[2026-06-22 10:30:23,374.374 INFO    ] 200
[2026-06-22 10:30:23,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:30:23,423.423 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:30:23,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:30:23,532.532 INFO    ] No camera update needed
[2026-06-22 10:30:23,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:30:23,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:30:23,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:30:23,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:30:25,593.593 INFO    ] ================================================
[2026-06-22 10:30:25,608.608 INFO    ] Launching Daemon at Mon Jun 22 10:30:25 IST 2026
[2026-06-22 10:30:25,619.619 INFO    ] ================================================
[2026-06-22 10:30:26,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:30:26
[2026-06-22 10:30:26,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:30:27,080.080 INFO    ] Initializing speech engine...
[2026-06-22 10:30:27,089.089 INFO    ] 2026-06-22 10:30:27
[2026-06-22 10:30:27,352.352 INFO    ] 2026-06-22 10:30:27
[2026-06-22 10:30:27,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:30:27,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:30:27,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:30:27,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:30:27,827.827 INFO    ] time= 22/06/2026 10:30:27
[2026-06-22 10:30:27,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:30:27,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:30:27,984.984 INFO    ] No existing commands found in stream
[2026-06-22 10:30:33,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:30:33,024.024 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-22 10:30:35,195.195 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:30:35,198.198 INFO    ] Checking for system updates...
[2026-06-22 10:30:35,235.235 INFO    ] 200
[2026-06-22 10:30:35,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:30:35,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:30:35,293.293 INFO    ] No update needed
[2026-06-22 10:30:35,295.295 INFO    ] Checking for camera pi updates...
[2026-06-22 10:30:35,330.330 INFO    ] 200
[2026-06-22 10:30:35,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:30:35,373.373 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:30:35,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:30:35,465.465 INFO    ] No camera update needed
[2026-06-22 10:30:35,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:30:35,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:30:35,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:30:35,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:30:37,523.523 INFO    ] ================================================
[2026-06-22 10:30:37,539.539 INFO    ] Launching Daemon at Mon Jun 22 10:30:37 IST 2026
[2026-06-22 10:30:37,551.551 INFO    ] ================================================
[2026-06-22 10:30:38,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:30:38
[2026-06-22 10:30:38,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:30:38,951.951 INFO    ] Initializing speech engine...
[2026-06-22 10:30:38,960.960 INFO    ] 2026-06-22 10:30:38
[2026-06-22 10:30:39,261.261 INFO    ] 2026-06-22 10:30:39
[2026-06-22 10:30:39,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:30:39,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:30:39,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:30:39,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:30:39,697.697 INFO    ] time= 22/06/2026 10:30:39
[2026-06-22 10:30:39,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:30:39,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:30:39,862.862 INFO    ] No existing commands found in stream
[2026-06-22 10:30:44,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:30:44,895.895 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-22 10:30:46,755.755 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:30:46,758.758 INFO    ] Checking for system updates...
[2026-06-22 10:30:46,795.795 INFO    ] 200
[2026-06-22 10:30:46,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:30:46,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:30:46,853.853 INFO    ] No update needed
[2026-06-22 10:30:46,855.855 INFO    ] Checking for camera pi updates...
[2026-06-22 10:30:46,894.894 INFO    ] 200
[2026-06-22 10:30:46,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:30:46,938.938 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:30:47,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:30:47,023.023 INFO    ] No camera update needed
[2026-06-22 10:30:47,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:30:47,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:30:47,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:30:47,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:30:49,080.080 INFO    ] ================================================
[2026-06-22 10:30:49,096.096 INFO    ] Launching Daemon at Mon Jun 22 10:30:49 IST 2026
[2026-06-22 10:30:49,108.108 INFO    ] ================================================
[2026-06-22 10:30:49,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:30:49
[2026-06-22 10:30:50,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:30:50,438.438 INFO    ] Initializing speech engine...
[2026-06-22 10:30:50,461.461 INFO    ] 2026-06-22 10:30:50
[2026-06-22 10:30:50,718.718 INFO    ] 2026-06-22 10:30:50
[2026-06-22 10:30:50,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:30:50,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:30:51,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:30:51,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:30:51,193.193 INFO    ] time= 22/06/2026 10:30:51
[2026-06-22 10:30:51,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:30:51,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:30:51,414.414 INFO    ] No existing commands found in stream
[2026-06-22 10:30:56,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:30:56,440.440 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-22 10:31:00,035.035 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:31:00,037.037 INFO    ] Checking for system updates...
[2026-06-22 10:31:00,078.078 INFO    ] 200
[2026-06-22 10:31:00,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 10:31:00,082.082 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-22 10:31:00,085.085 INFO    ] Checking for camera pi updates...
[2026-06-22 10:31:00,138.138 INFO    ] 200
[2026-06-22 10:31:00,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 10:31:00,144.144 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-22 10:31:00,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:31:00,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:31:00,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:31:00,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:31:02,206.206 INFO    ] ================================================
[2026-06-22 10:31:02,227.227 INFO    ] Launching Daemon at Mon Jun 22 10:31:02 IST 2026
[2026-06-22 10:31:02,243.243 INFO    ] ================================================
[2026-06-22 10:31:02,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:31:02
[2026-06-22 10:31:03,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:31:03,768.768 INFO    ] Initializing speech engine...
[2026-06-22 10:31:03,777.777 INFO    ] 2026-06-22 10:31:03
[2026-06-22 10:31:04,030.030 INFO    ] 2026-06-22 10:31:04
[2026-06-22 10:31:04,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:31:04,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:31:04,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:31:04,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:31:04,476.476 INFO    ] time= 22/06/2026 10:31:04
[2026-06-22 10:31:04,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:31:04,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:31:04,671.671 INFO    ] No existing commands found in stream
[2026-06-22 10:31:09,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:31:09,686.686 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-22 10:31:10,213.213 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:31:10,216.216 INFO    ] Checking for system updates...
[2026-06-22 10:31:10,251.251 INFO    ] 200
[2026-06-22 10:31:10,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:31:10,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:31:10,308.308 INFO    ] No update needed
[2026-06-22 10:31:10,311.311 INFO    ] Checking for camera pi updates...
[2026-06-22 10:31:10,345.345 INFO    ] 200
[2026-06-22 10:31:10,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:31:10,388.388 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:31:10,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:31:10,469.469 INFO    ] No camera update needed
[2026-06-22 10:31:10,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:31:10,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:31:10,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:31:10,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:31:12,527.527 INFO    ] ================================================
[2026-06-22 10:31:12,544.544 INFO    ] Launching Daemon at Mon Jun 22 10:31:12 IST 2026
[2026-06-22 10:31:12,556.556 INFO    ] ================================================
[2026-06-22 10:31:13,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:31:13
[2026-06-22 10:31:13,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:31:13,970.970 INFO    ] Initializing speech engine...
[2026-06-22 10:31:13,989.989 INFO    ] 2026-06-22 10:31:13
[2026-06-22 10:31:14,257.257 INFO    ] 2026-06-22 10:31:14
[2026-06-22 10:31:14,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:31:14,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:31:14,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:31:14,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:31:14,682.682 INFO    ] time= 22/06/2026 10:31:14
[2026-06-22 10:31:14,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:31:14,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:31:14,837.837 INFO    ] No existing commands found in stream
[2026-06-22 10:31:19,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:31:19,860.860 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-22 10:31:23,356.356 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:31:23,357.357 INFO    ] Checking for system updates...
[2026-06-22 10:31:23,378.378 INFO    ] 200
[2026-06-22 10:31:23,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:31:23,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:31:23,437.437 INFO    ] No update needed
[2026-06-22 10:31:23,440.440 INFO    ] Checking for camera pi updates...
[2026-06-22 10:31:23,475.475 INFO    ] 200
[2026-06-22 10:31:23,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:31:23,519.519 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:31:23,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:31:23,614.614 INFO    ] No camera update needed
[2026-06-22 10:31:23,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:31:23,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:31:23,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:31:23,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:31:25,675.675 INFO    ] ================================================
[2026-06-22 10:31:25,690.690 INFO    ] Launching Daemon at Mon Jun 22 10:31:25 IST 2026
[2026-06-22 10:31:25,701.701 INFO    ] ================================================
[2026-06-22 10:31:26,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:31:26
[2026-06-22 10:31:26,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:31:27,069.069 INFO    ] Initializing speech engine...
[2026-06-22 10:31:27,079.079 INFO    ] 2026-06-22 10:31:27
[2026-06-22 10:31:27,329.329 INFO    ] 2026-06-22 10:31:27
[2026-06-22 10:31:27,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:31:27,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:31:27,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:31:27,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:31:27,829.829 INFO    ] time= 22/06/2026 10:31:27
[2026-06-22 10:31:27,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:31:27,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:31:28,049.049 INFO    ] No existing commands found in stream
[2026-06-22 10:31:33,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:31:33,078.078 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-22 10:31:37,124.124 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:31:37,126.126 INFO    ] Checking for system updates...
[2026-06-22 10:31:37,147.147 INFO    ] 200
[2026-06-22 10:31:37,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:31:37,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:31:37,181.181 INFO    ] No update needed
[2026-06-22 10:31:37,182.182 INFO    ] Checking for camera pi updates...
[2026-06-22 10:31:37,202.202 INFO    ] 200
[2026-06-22 10:31:37,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:31:37,249.249 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:31:37,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:31:37,338.338 INFO    ] No camera update needed
[2026-06-22 10:31:37,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:31:37,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:31:37,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:31:37,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:31:39,400.400 INFO    ] ================================================
[2026-06-22 10:31:39,415.415 INFO    ] Launching Daemon at Mon Jun 22 10:31:39 IST 2026
[2026-06-22 10:31:39,427.427 INFO    ] ================================================
[2026-06-22 10:31:40,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:31:40
[2026-06-22 10:31:40,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:31:40,807.807 INFO    ] Initializing speech engine...
[2026-06-22 10:31:40,818.818 INFO    ] 2026-06-22 10:31:40
[2026-06-22 10:31:41,080.080 INFO    ] 2026-06-22 10:31:41
[2026-06-22 10:31:41,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:31:41,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:31:41,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:31:41,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:31:41,566.566 INFO    ] time= 22/06/2026 10:31:41
[2026-06-22 10:31:41,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:31:41,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:31:41,778.778 INFO    ] No existing commands found in stream
[2026-06-22 10:31:46,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:31:46,846.846 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-22 10:31:47,802.802 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:31:47,805.805 INFO    ] Checking for system updates...
[2026-06-22 10:31:47,841.841 INFO    ] 200
[2026-06-22 10:31:47,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:31:47,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:31:47,901.901 INFO    ] No update needed
[2026-06-22 10:31:47,903.903 INFO    ] Checking for camera pi updates...
[2026-06-22 10:31:47,937.937 INFO    ] 200
[2026-06-22 10:31:47,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:31:47,980.980 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:31:48,035.035 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:31:48,038.038 INFO    ] No camera update needed
[2026-06-22 10:31:48,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:31:48,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:31:48,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:31:48,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:31:50,096.096 INFO    ] ================================================
[2026-06-22 10:31:50,112.112 INFO    ] Launching Daemon at Mon Jun 22 10:31:50 IST 2026
[2026-06-22 10:31:50,124.124 INFO    ] ================================================
[2026-06-22 10:31:50,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:31:50
[2026-06-22 10:31:51,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:31:51,589.589 INFO    ] Initializing speech engine...
[2026-06-22 10:31:51,600.600 INFO    ] 2026-06-22 10:31:51
[2026-06-22 10:31:51,869.869 INFO    ] 2026-06-22 10:31:51
[2026-06-22 10:31:51,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:31:52,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:31:52,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:31:52,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:31:52,301.301 INFO    ] time= 22/06/2026 10:31:52
[2026-06-22 10:31:52,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:31:52,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:31:52,390.390 INFO    ] No existing commands found in stream
[2026-06-22 10:31:57,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:31:57,423.423 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-22 10:32:01,733.733 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:32:01,737.737 INFO    ] Checking for system updates...
[2026-06-22 10:32:01,794.794 INFO    ] 200
[2026-06-22 10:32:01,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:32:01,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:32:01,879.879 INFO    ] No update needed
[2026-06-22 10:32:01,882.882 INFO    ] Checking for camera pi updates...
[2026-06-22 10:32:01,926.926 INFO    ] 200
[2026-06-22 10:32:01,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:32:01,975.975 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:32:02,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:32:02,049.049 INFO    ] No camera update needed
[2026-06-22 10:32:02,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:32:02,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:32:02,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:32:02,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:32:04,112.112 INFO    ] ================================================
[2026-06-22 10:32:04,128.128 INFO    ] Launching Daemon at Mon Jun 22 10:32:04 IST 2026
[2026-06-22 10:32:04,139.139 INFO    ] ================================================
[2026-06-22 10:32:04,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:32:04
[2026-06-22 10:32:05,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:32:05,660.660 INFO    ] Initializing speech engine...
[2026-06-22 10:32:05,673.673 INFO    ] 2026-06-22 10:32:05
[2026-06-22 10:32:05,959.959 INFO    ] 2026-06-22 10:32:05
[2026-06-22 10:32:05,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:32:06,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:32:06,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:32:06,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:32:06,410.410 INFO    ] time= 22/06/2026 10:32:06
[2026-06-22 10:32:06,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:32:06,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:32:06,625.625 INFO    ] No existing commands found in stream
[2026-06-22 10:32:11,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:32:11,652.652 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-22 10:32:12,482.482 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:32:12,485.485 INFO    ] Checking for system updates...
[2026-06-22 10:32:12,522.522 INFO    ] 200
[2026-06-22 10:32:12,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:32:12,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:32:12,594.594 INFO    ] No update needed
[2026-06-22 10:32:12,597.597 INFO    ] Checking for camera pi updates...
[2026-06-22 10:32:12,632.632 INFO    ] 200
[2026-06-22 10:32:12,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:32:12,679.679 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:32:12,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:32:12,768.768 INFO    ] No camera update needed
[2026-06-22 10:32:12,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:32:12,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:32:12,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:32:12,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:32:14,826.826 INFO    ] ================================================
[2026-06-22 10:32:14,843.843 INFO    ] Launching Daemon at Mon Jun 22 10:32:14 IST 2026
[2026-06-22 10:32:14,854.854 INFO    ] ================================================
[2026-06-22 10:32:15,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:32:15
[2026-06-22 10:32:16,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:32:16,456.456 INFO    ] Initializing speech engine...
[2026-06-22 10:32:16,466.466 INFO    ] 2026-06-22 10:32:16
[2026-06-22 10:32:16,740.740 INFO    ] 2026-06-22 10:32:16
[2026-06-22 10:32:16,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:32:16,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:32:16,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:32:17,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:32:17,100.100 INFO    ] time= 22/06/2026 10:32:17
[2026-06-22 10:32:17,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:32:17,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:32:17,300.300 INFO    ] No existing commands found in stream
[2026-06-22 10:32:22,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:32:22,315.315 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-22 10:32:23,950.950 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:32:23,953.953 INFO    ] Checking for system updates...
[2026-06-22 10:32:23,990.990 INFO    ] 200
[2026-06-22 10:32:23,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:32:24,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:32:24,058.058 INFO    ] No update needed
[2026-06-22 10:32:24,060.060 INFO    ] Checking for camera pi updates...
[2026-06-22 10:32:24,103.103 INFO    ] 200
[2026-06-22 10:32:24,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:32:24,152.152 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:32:24,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:32:24,306.306 INFO    ] No camera update needed
[2026-06-22 10:32:24,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:32:24,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:32:24,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:32:24,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:32:26,364.364 INFO    ] ================================================
[2026-06-22 10:32:26,380.380 INFO    ] Launching Daemon at Mon Jun 22 10:32:26 IST 2026
[2026-06-22 10:32:26,391.391 INFO    ] ================================================
[2026-06-22 10:32:26,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:32:26
[2026-06-22 10:32:27,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:32:27,715.715 INFO    ] Initializing speech engine...
[2026-06-22 10:32:27,734.734 INFO    ] 2026-06-22 10:32:27
[2026-06-22 10:32:27,984.984 INFO    ] 2026-06-22 10:32:27
[2026-06-22 10:32:28,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:32:28,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:32:28,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:32:28,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:32:28,469.469 INFO    ] time= 22/06/2026 10:32:28
[2026-06-22 10:32:28,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:32:28,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:32:28,691.691 INFO    ] No existing commands found in stream
[2026-06-22 10:32:33,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:32:33,724.724 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-22 10:32:35,757.757 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:32:35,759.759 INFO    ] Checking for system updates...
[2026-06-22 10:32:35,779.779 INFO    ] 200
[2026-06-22 10:32:35,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:32:35,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:32:35,815.815 INFO    ] No update needed
[2026-06-22 10:32:35,816.816 INFO    ] Checking for camera pi updates...
[2026-06-22 10:32:35,848.848 INFO    ] 200
[2026-06-22 10:32:35,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:32:35,896.896 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:32:35,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:32:35,975.975 INFO    ] No camera update needed
[2026-06-22 10:32:35,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:32:35,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:32:35,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:32:35,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:32:38,035.035 INFO    ] ================================================
[2026-06-22 10:32:38,050.050 INFO    ] Launching Daemon at Mon Jun 22 10:32:38 IST 2026
[2026-06-22 10:32:38,061.061 INFO    ] ================================================
[2026-06-22 10:32:38,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:32:38
[2026-06-22 10:32:39,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:32:39,493.493 INFO    ] Initializing speech engine...
[2026-06-22 10:32:39,507.507 INFO    ] 2026-06-22 10:32:39
[2026-06-22 10:32:39,779.779 INFO    ] 2026-06-22 10:32:39
[2026-06-22 10:32:39,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:32:40,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:32:40,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:32:40,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:32:40,391.391 INFO    ] time= 22/06/2026 10:32:40
[2026-06-22 10:32:40,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:32:40,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:32:40,564.564 INFO    ] No existing commands found in stream
[2026-06-22 10:32:45,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:32:45,581.581 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-22 10:32:46,087.087 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:32:46,088.088 INFO    ] Checking for system updates...
[2026-06-22 10:32:46,109.109 INFO    ] 200
[2026-06-22 10:32:46,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:32:46,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:32:46,168.168 INFO    ] No update needed
[2026-06-22 10:32:46,171.171 INFO    ] Checking for camera pi updates...
[2026-06-22 10:32:46,208.208 INFO    ] 200
[2026-06-22 10:32:46,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:32:46,254.254 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:32:46,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:32:46,341.341 INFO    ] No camera update needed
[2026-06-22 10:32:46,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:32:46,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:32:46,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:32:46,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:32:48,399.399 INFO    ] ================================================
[2026-06-22 10:32:48,415.415 INFO    ] Launching Daemon at Mon Jun 22 10:32:48 IST 2026
[2026-06-22 10:32:48,426.426 INFO    ] ================================================
[2026-06-22 10:32:49,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:32:49
[2026-06-22 10:32:49,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:32:50,035.035 INFO    ] Initializing speech engine...
[2026-06-22 10:32:50,048.048 INFO    ] 2026-06-22 10:32:50
[2026-06-22 10:32:50,333.333 INFO    ] 2026-06-22 10:32:50
[2026-06-22 10:32:50,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:32:50,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:32:50,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:32:50,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:32:50,922.922 INFO    ] time= 22/06/2026 10:32:50
[2026-06-22 10:32:50,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:32:50,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:32:51,114.114 INFO    ] No existing commands found in stream
[2026-06-22 10:32:56,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:32:56,131.131 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-22 10:32:58,726.726 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:32:58,729.729 INFO    ] Checking for system updates...
[2026-06-22 10:32:58,768.768 INFO    ] 200
[2026-06-22 10:32:58,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:32:58,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:32:58,835.835 INFO    ] No update needed
[2026-06-22 10:32:58,838.838 INFO    ] Checking for camera pi updates...
[2026-06-22 10:32:58,876.876 INFO    ] 200
[2026-06-22 10:32:58,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:32:58,924.924 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:32:59,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:32:59,006.006 INFO    ] No camera update needed
[2026-06-22 10:32:59,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:32:59,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:32:59,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:32:59,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:33:01,063.063 INFO    ] ================================================
[2026-06-22 10:33:01,079.079 INFO    ] Launching Daemon at Mon Jun 22 10:33:01 IST 2026
[2026-06-22 10:33:01,089.089 INFO    ] ================================================
[2026-06-22 10:33:01,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:33:01
[2026-06-22 10:33:02,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:33:02,769.769 INFO    ] Initializing speech engine...
[2026-06-22 10:33:02,774.774 INFO    ] 2026-06-22 10:33:02
[2026-06-22 10:33:03,097.097 INFO    ] 2026-06-22 10:33:03
[2026-06-22 10:33:03,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:33:03,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:33:03,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:33:03,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:33:03,601.601 INFO    ] time= 22/06/2026 10:33:03
[2026-06-22 10:33:03,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:33:03,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:33:03,820.820 INFO    ] No existing commands found in stream
[2026-06-22 10:33:08,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:33:08,846.846 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-22 10:33:10,597.597 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:33:10,599.599 INFO    ] Checking for system updates...
[2026-06-22 10:33:10,620.620 INFO    ] 200
[2026-06-22 10:33:10,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:33:10,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:33:10,679.679 INFO    ] No update needed
[2026-06-22 10:33:10,682.682 INFO    ] Checking for camera pi updates...
[2026-06-22 10:33:10,717.717 INFO    ] 200
[2026-06-22 10:33:10,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:33:10,761.761 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:33:10,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:33:10,871.871 INFO    ] No camera update needed
[2026-06-22 10:33:10,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:33:10,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:33:10,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:33:10,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:33:12,930.930 INFO    ] ================================================
[2026-06-22 10:33:12,946.946 INFO    ] Launching Daemon at Mon Jun 22 10:33:12 IST 2026
[2026-06-22 10:33:12,957.957 INFO    ] ================================================
[2026-06-22 10:33:13,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:33:13
[2026-06-22 10:33:14,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:33:14,580.580 INFO    ] Initializing speech engine...
[2026-06-22 10:33:14,588.588 INFO    ] 2026-06-22 10:33:14
[2026-06-22 10:33:14,864.864 INFO    ] 2026-06-22 10:33:14
[2026-06-22 10:33:14,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:33:15,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:33:15,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:33:15,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:33:15,436.436 INFO    ] time= 22/06/2026 10:33:15
[2026-06-22 10:33:15,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:33:15,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:33:16,600.600 INFO    ] No existing commands found in stream
[2026-06-22 10:33:21,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:33:21,619.619 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-22 10:33:24,147.147 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:33:24,148.148 INFO    ] Checking for system updates...
[2026-06-22 10:33:24,171.171 INFO    ] 200
[2026-06-22 10:33:24,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:33:24,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:33:24,207.207 INFO    ] No update needed
[2026-06-22 10:33:24,208.208 INFO    ] Checking for camera pi updates...
[2026-06-22 10:33:24,228.228 INFO    ] 200
[2026-06-22 10:33:24,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:33:24,256.256 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:33:24,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:33:24,343.343 INFO    ] No camera update needed
[2026-06-22 10:33:24,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:33:24,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:33:24,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:33:24,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:33:26,403.403 INFO    ] ================================================
[2026-06-22 10:33:26,419.419 INFO    ] Launching Daemon at Mon Jun 22 10:33:26 IST 2026
[2026-06-22 10:33:26,431.431 INFO    ] ================================================
[2026-06-22 10:33:27,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:33:26
[2026-06-22 10:33:27,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:33:27,760.760 INFO    ] Initializing speech engine...
[2026-06-22 10:33:27,769.769 INFO    ] 2026-06-22 10:33:27
[2026-06-22 10:33:28,065.065 INFO    ] 2026-06-22 10:33:28
[2026-06-22 10:33:28,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:33:28,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:33:28,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:33:28,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:33:28,493.493 INFO    ] time= 22/06/2026 10:33:28
[2026-06-22 10:33:28,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:33:28,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:33:28,721.721 INFO    ] No existing commands found in stream
[2026-06-22 10:33:33,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:33:33,734.734 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-22 10:33:37,029.029 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:33:37,031.031 INFO    ] Checking for system updates...
[2026-06-22 10:33:37,051.051 INFO    ] 200
[2026-06-22 10:33:37,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:33:37,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:33:37,107.107 INFO    ] No update needed
[2026-06-22 10:33:37,109.109 INFO    ] Checking for camera pi updates...
[2026-06-22 10:33:37,147.147 INFO    ] 200
[2026-06-22 10:33:37,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:33:37,190.190 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:33:37,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:33:37,283.283 INFO    ] No camera update needed
[2026-06-22 10:33:37,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:33:37,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:33:37,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:33:37,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:33:39,339.339 INFO    ] ================================================
[2026-06-22 10:33:39,355.355 INFO    ] Launching Daemon at Mon Jun 22 10:33:39 IST 2026
[2026-06-22 10:33:39,366.366 INFO    ] ================================================
[2026-06-22 10:33:39,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:33:39
[2026-06-22 10:33:40,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:33:40,832.832 INFO    ] Initializing speech engine...
[2026-06-22 10:33:40,842.842 INFO    ] 2026-06-22 10:33:40
[2026-06-22 10:33:41,100.100 INFO    ] 2026-06-22 10:33:41
[2026-06-22 10:33:41,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:33:41,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:33:41,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:33:41,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:33:41,660.660 INFO    ] time= 22/06/2026 10:33:41
[2026-06-22 10:33:41,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:33:41,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:33:41,820.820 INFO    ] No existing commands found in stream
[2026-06-22 10:33:46,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:33:46,848.848 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-22 10:33:49,808.808 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:33:49,810.810 INFO    ] Checking for system updates...
[2026-06-22 10:33:49,846.846 INFO    ] 200
[2026-06-22 10:33:49,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:33:49,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:33:49,904.904 INFO    ] No update needed
[2026-06-22 10:33:49,907.907 INFO    ] Checking for camera pi updates...
[2026-06-22 10:33:49,941.941 INFO    ] 200
[2026-06-22 10:33:49,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:33:49,985.985 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:33:50,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:33:50,091.091 INFO    ] No camera update needed
[2026-06-22 10:33:50,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:33:50,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:33:50,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:33:50,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:33:52,147.147 INFO    ] ================================================
[2026-06-22 10:33:52,162.162 INFO    ] Launching Daemon at Mon Jun 22 10:33:52 IST 2026
[2026-06-22 10:33:52,173.173 INFO    ] ================================================
[2026-06-22 10:33:52,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:33:52
[2026-06-22 10:33:53,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:33:53,598.598 INFO    ] Initializing speech engine...
[2026-06-22 10:33:53,607.607 INFO    ] 2026-06-22 10:33:53
[2026-06-22 10:33:53,878.878 INFO    ] 2026-06-22 10:33:53
[2026-06-22 10:33:53,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:33:54,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:33:54,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:33:54,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:33:54,289.289 INFO    ] time= 22/06/2026 10:33:54
[2026-06-22 10:33:54,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:33:54,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:33:54,479.479 INFO    ] No existing commands found in stream
[2026-06-22 10:33:59,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:33:59,505.505 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-22 10:34:03,903.903 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:34:03,905.905 INFO    ] Checking for system updates...
[2026-06-22 10:34:03,941.941 INFO    ] 200
[2026-06-22 10:34:03,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:34:03,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:34:04,000.000 INFO    ] No update needed
[2026-06-22 10:34:04,002.002 INFO    ] Checking for camera pi updates...
[2026-06-22 10:34:04,036.036 INFO    ] 200
[2026-06-22 10:34:04,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:34:04,083.083 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:34:04,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:34:04,161.161 INFO    ] No camera update needed
[2026-06-22 10:34:04,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:34:04,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:34:04,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:34:04,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:34:06,217.217 INFO    ] ================================================
[2026-06-22 10:34:06,232.232 INFO    ] Launching Daemon at Mon Jun 22 10:34:06 IST 2026
[2026-06-22 10:34:06,243.243 INFO    ] ================================================
[2026-06-22 10:34:06,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:34:06
[2026-06-22 10:34:07,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:34:07,689.689 INFO    ] Initializing speech engine...
[2026-06-22 10:34:07,714.714 INFO    ] 2026-06-22 10:34:07
[2026-06-22 10:34:07,990.990 INFO    ] 2026-06-22 10:34:07
[2026-06-22 10:34:08,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:34:08,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:34:08,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:34:08,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:34:08,418.418 INFO    ] time= 22/06/2026 10:34:08
[2026-06-22 10:34:08,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:34:08,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:34:08,583.583 INFO    ] No existing commands found in stream
[2026-06-22 10:34:13,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:34:13,611.611 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-22 10:34:14,460.460 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:34:14,463.463 INFO    ] Checking for system updates...
[2026-06-22 10:34:14,499.499 INFO    ] 200
[2026-06-22 10:34:14,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:34:14,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:34:14,564.564 INFO    ] No update needed
[2026-06-22 10:34:14,567.567 INFO    ] Checking for camera pi updates...
[2026-06-22 10:34:14,601.601 INFO    ] 200
[2026-06-22 10:34:14,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:34:14,646.646 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:34:14,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:34:14,750.750 INFO    ] No camera update needed
[2026-06-22 10:34:14,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:34:14,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:34:14,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:34:14,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:34:16,806.806 INFO    ] ================================================
[2026-06-22 10:34:16,821.821 INFO    ] Launching Daemon at Mon Jun 22 10:34:16 IST 2026
[2026-06-22 10:34:16,832.832 INFO    ] ================================================
[2026-06-22 10:34:17,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:34:17
[2026-06-22 10:34:17,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:34:18,159.159 INFO    ] Initializing speech engine...
[2026-06-22 10:34:18,167.167 INFO    ] 2026-06-22 10:34:18
[2026-06-22 10:34:18,470.470 INFO    ] 2026-06-22 10:34:18
[2026-06-22 10:34:18,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:34:18,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:34:18,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:34:18,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:34:18,902.902 INFO    ] time= 22/06/2026 10:34:18
[2026-06-22 10:34:18,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:34:18,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:34:18,996.996 INFO    ] No existing commands found in stream
[2026-06-22 10:34:24,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:34:24,020.020 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-22 10:34:25,052.052 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:34:25,054.054 INFO    ] Checking for system updates...
[2026-06-22 10:34:25,095.095 INFO    ] 200
[2026-06-22 10:34:25,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:34:25,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:34:25,162.162 INFO    ] No update needed
[2026-06-22 10:34:25,165.165 INFO    ] Checking for camera pi updates...
[2026-06-22 10:34:25,200.200 INFO    ] 200
[2026-06-22 10:34:25,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:34:25,252.252 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:34:25,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:34:25,308.308 INFO    ] No camera update needed
[2026-06-22 10:34:25,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:34:25,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:34:25,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:34:25,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:34:27,368.368 INFO    ] ================================================
[2026-06-22 10:34:27,383.383 INFO    ] Launching Daemon at Mon Jun 22 10:34:27 IST 2026
[2026-06-22 10:34:27,394.394 INFO    ] ================================================
[2026-06-22 10:34:27,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:34:27
[2026-06-22 10:34:28,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:34:28,757.757 INFO    ] Initializing speech engine...
[2026-06-22 10:34:28,767.767 INFO    ] 2026-06-22 10:34:28
[2026-06-22 10:34:29,032.032 INFO    ] 2026-06-22 10:34:29
[2026-06-22 10:34:29,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:34:29,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:34:29,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:34:29,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:34:29,577.577 INFO    ] time= 22/06/2026 10:34:29
[2026-06-22 10:34:29,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:34:29,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:34:29,730.730 INFO    ] No existing commands found in stream
[2026-06-22 10:34:34,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:34:34,752.752 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-22 10:34:36,073.073 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:34:36,076.076 INFO    ] Checking for system updates...
[2026-06-22 10:34:36,112.112 INFO    ] 200
[2026-06-22 10:34:36,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:34:36,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:34:36,180.180 INFO    ] No update needed
[2026-06-22 10:34:36,183.183 INFO    ] Checking for camera pi updates...
[2026-06-22 10:34:36,216.216 INFO    ] 200
[2026-06-22 10:34:36,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:34:36,270.270 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:34:36,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:34:36,330.330 INFO    ] No camera update needed
[2026-06-22 10:34:36,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:34:36,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:34:36,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:34:36,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:34:38,388.388 INFO    ] ================================================
[2026-06-22 10:34:38,404.404 INFO    ] Launching Daemon at Mon Jun 22 10:34:38 IST 2026
[2026-06-22 10:34:38,414.414 INFO    ] ================================================
[2026-06-22 10:34:38,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:34:38
[2026-06-22 10:34:39,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:34:39,746.746 INFO    ] Initializing speech engine...
[2026-06-22 10:34:39,754.754 INFO    ] 2026-06-22 10:34:39
[2026-06-22 10:34:40,043.043 INFO    ] 2026-06-22 10:34:40
[2026-06-22 10:34:40,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:34:40,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:34:40,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:34:40,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:34:40,630.630 INFO    ] time= 22/06/2026 10:34:40
[2026-06-22 10:34:40,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:34:40,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:34:40,774.774 INFO    ] No existing commands found in stream
[2026-06-22 10:34:45,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:34:45,808.808 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-22 10:34:46,938.938 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:34:46,940.940 INFO    ] Checking for system updates...
[2026-06-22 10:34:46,962.962 INFO    ] 200
[2026-06-22 10:34:46,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:34:47,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:34:47,003.003 INFO    ] No update needed
[2026-06-22 10:34:47,006.006 INFO    ] Checking for camera pi updates...
[2026-06-22 10:34:47,041.041 INFO    ] 200
[2026-06-22 10:34:47,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:34:47,088.088 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:34:47,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:34:47,169.169 INFO    ] No camera update needed
[2026-06-22 10:34:47,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:34:47,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:34:47,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:34:47,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:34:49,224.224 INFO    ] ================================================
[2026-06-22 10:34:49,239.239 INFO    ] Launching Daemon at Mon Jun 22 10:34:49 IST 2026
[2026-06-22 10:34:49,250.250 INFO    ] ================================================
[2026-06-22 10:34:49,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:34:49
[2026-06-22 10:34:50,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:34:50,826.826 INFO    ] Initializing speech engine...
[2026-06-22 10:34:50,832.832 INFO    ] 2026-06-22 10:34:50
[2026-06-22 10:34:51,106.106 INFO    ] 2026-06-22 10:34:51
[2026-06-22 10:34:51,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:34:51,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:34:51,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:34:51,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:34:51,505.505 INFO    ] time= 22/06/2026 10:34:51
[2026-06-22 10:34:51,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:34:51,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:34:51,634.634 INFO    ] No existing commands found in stream
[2026-06-22 10:34:56,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:34:56,649.649 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-22 10:35:00,287.287 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:35:00,290.290 INFO    ] Checking for system updates...
[2026-06-22 10:35:00,327.327 INFO    ] 200
[2026-06-22 10:35:00,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:35:00,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:35:00,393.393 INFO    ] No update needed
[2026-06-22 10:35:00,395.395 INFO    ] Checking for camera pi updates...
[2026-06-22 10:35:00,434.434 INFO    ] 200
[2026-06-22 10:35:00,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:35:00,478.478 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:35:00,557.557 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:35:00,560.560 INFO    ] No camera update needed
[2026-06-22 10:35:00,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:35:00,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:35:00,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:35:00,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:35:02,639.639 INFO    ] ================================================
[2026-06-22 10:35:02,666.666 INFO    ] Launching Daemon at Mon Jun 22 10:35:02 IST 2026
[2026-06-22 10:35:02,691.691 INFO    ] ================================================
[2026-06-22 10:35:03,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:35:03
[2026-06-22 10:35:04,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:35:04,437.437 INFO    ] Initializing speech engine...
[2026-06-22 10:35:04,459.459 INFO    ] 2026-06-22 10:35:04
[2026-06-22 10:35:04,734.734 INFO    ] 2026-06-22 10:35:04
[2026-06-22 10:35:04,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:35:05,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:35:05,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:35:05,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:35:05,354.354 INFO    ] time= 22/06/2026 10:35:05
[2026-06-22 10:35:05,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:35:05,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:35:05,520.520 INFO    ] No existing commands found in stream
[2026-06-22 10:35:10,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:35:10,548.548 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-22 10:35:13,543.543 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:35:13,544.544 INFO    ] Checking for system updates...
[2026-06-22 10:35:13,566.566 INFO    ] 200
[2026-06-22 10:35:13,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:35:13,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:35:13,599.599 INFO    ] No update needed
[2026-06-22 10:35:13,600.600 INFO    ] Checking for camera pi updates...
[2026-06-22 10:35:13,622.622 INFO    ] 200
[2026-06-22 10:35:13,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:35:13,665.665 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:35:13,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:35:13,773.773 INFO    ] No camera update needed
[2026-06-22 10:35:13,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:35:13,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:35:13,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:35:13,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:35:15,828.828 INFO    ] ================================================
[2026-06-22 10:35:15,843.843 INFO    ] Launching Daemon at Mon Jun 22 10:35:15 IST 2026
[2026-06-22 10:35:15,854.854 INFO    ] ================================================
[2026-06-22 10:35:16,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:35:16
[2026-06-22 10:35:16,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:35:17,230.230 INFO    ] Initializing speech engine...
[2026-06-22 10:35:17,237.237 INFO    ] 2026-06-22 10:35:17
[2026-06-22 10:35:17,509.509 INFO    ] 2026-06-22 10:35:17
[2026-06-22 10:35:17,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:35:17,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:35:17,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:35:18,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:35:18,092.092 INFO    ] time= 22/06/2026 10:35:18
[2026-06-22 10:35:18,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:35:18,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:35:18,294.294 INFO    ] No existing commands found in stream
[2026-06-22 10:35:23,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:35:23,321.321 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-22 10:35:24,102.102 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:35:24,105.105 INFO    ] Checking for system updates...
[2026-06-22 10:35:24,143.143 INFO    ] 200
[2026-06-22 10:35:24,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:35:24,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:35:24,212.212 INFO    ] No update needed
[2026-06-22 10:35:24,215.215 INFO    ] Checking for camera pi updates...
[2026-06-22 10:35:24,255.255 INFO    ] 200
[2026-06-22 10:35:24,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:35:24,301.301 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:35:24,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:35:24,388.388 INFO    ] No camera update needed
[2026-06-22 10:35:24,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:35:24,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:35:24,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:35:24,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:35:26,449.449 INFO    ] ================================================
[2026-06-22 10:35:26,464.464 INFO    ] Launching Daemon at Mon Jun 22 10:35:26 IST 2026
[2026-06-22 10:35:26,475.475 INFO    ] ================================================
[2026-06-22 10:35:27,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:35:27
[2026-06-22 10:35:27,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:35:27,888.888 INFO    ] Initializing speech engine...
[2026-06-22 10:35:27,897.897 INFO    ] 2026-06-22 10:35:27
[2026-06-22 10:35:28,170.170 INFO    ] 2026-06-22 10:35:28
[2026-06-22 10:35:28,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:35:28,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:35:28,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:35:28,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:35:28,578.578 INFO    ] time= 22/06/2026 10:35:28
[2026-06-22 10:35:28,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:35:28,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:35:28,690.690 INFO    ] No existing commands found in stream
[2026-06-22 10:35:33,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:35:33,705.705 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-22 10:35:37,688.688 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:35:37,690.690 INFO    ] Checking for system updates...
[2026-06-22 10:35:37,731.731 INFO    ] 200
[2026-06-22 10:35:37,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:35:37,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:35:37,789.789 INFO    ] No update needed
[2026-06-22 10:35:37,792.792 INFO    ] Checking for camera pi updates...
[2026-06-22 10:35:37,826.826 INFO    ] 200
[2026-06-22 10:35:37,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:35:37,869.869 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:35:37,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:35:37,962.962 INFO    ] No camera update needed
[2026-06-22 10:35:37,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:35:37,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:35:37,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:35:37,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:35:40,022.022 INFO    ] ================================================
[2026-06-22 10:35:40,037.037 INFO    ] Launching Daemon at Mon Jun 22 10:35:40 IST 2026
[2026-06-22 10:35:40,048.048 INFO    ] ================================================
[2026-06-22 10:35:40,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:35:40
[2026-06-22 10:35:41,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:35:41,617.617 INFO    ] Initializing speech engine...
[2026-06-22 10:35:41,630.630 INFO    ] 2026-06-22 10:35:41
[2026-06-22 10:35:41,917.917 INFO    ] 2026-06-22 10:35:41
[2026-06-22 10:35:41,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:35:42,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:35:42,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:35:42,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:35:42,469.469 INFO    ] time= 22/06/2026 10:35:42
[2026-06-22 10:35:42,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:35:42,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:35:42,626.626 INFO    ] No existing commands found in stream
[2026-06-22 10:35:47,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:35:47,646.646 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-22 10:35:50,398.398 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:35:50,400.400 INFO    ] Checking for system updates...
[2026-06-22 10:35:50,421.421 INFO    ] 200
[2026-06-22 10:35:50,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:35:50,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:35:50,455.455 INFO    ] No update needed
[2026-06-22 10:35:50,456.456 INFO    ] Checking for camera pi updates...
[2026-06-22 10:35:50,491.491 INFO    ] 200
[2026-06-22 10:35:50,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:35:50,537.537 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:35:50,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:35:50,632.632 INFO    ] No camera update needed
[2026-06-22 10:35:50,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:35:50,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:35:50,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:35:50,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:35:52,691.691 INFO    ] ================================================
[2026-06-22 10:35:52,707.707 INFO    ] Launching Daemon at Mon Jun 22 10:35:52 IST 2026
[2026-06-22 10:35:52,718.718 INFO    ] ================================================
[2026-06-22 10:35:53,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:35:53
[2026-06-22 10:35:53,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:35:54,124.124 INFO    ] Initializing speech engine...
[2026-06-22 10:35:54,153.153 INFO    ] 2026-06-22 10:35:54
[2026-06-22 10:35:54,422.422 INFO    ] 2026-06-22 10:35:54
[2026-06-22 10:35:54,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:35:54,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:35:54,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:35:54,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:35:54,813.813 INFO    ] time= 22/06/2026 10:35:54
[2026-06-22 10:35:54,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:35:54,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:35:54,943.943 INFO    ] No existing commands found in stream
[2026-06-22 10:35:59,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:35:59,958.958 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-22 10:36:02,069.069 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:36:02,073.073 INFO    ] Checking for system updates...
[2026-06-22 10:36:02,117.117 INFO    ] 200
[2026-06-22 10:36:02,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:36:02,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:36:02,190.190 INFO    ] No update needed
[2026-06-22 10:36:02,193.193 INFO    ] Checking for camera pi updates...
[2026-06-22 10:36:02,242.242 INFO    ] 200
[2026-06-22 10:36:02,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:36:02,296.296 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:36:02,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:36:02,362.362 INFO    ] No camera update needed
[2026-06-22 10:36:02,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:36:02,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:36:02,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:36:02,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:36:04,427.427 INFO    ] ================================================
[2026-06-22 10:36:04,449.449 INFO    ] Launching Daemon at Mon Jun 22 10:36:04 IST 2026
[2026-06-22 10:36:04,460.460 INFO    ] ================================================
[2026-06-22 10:36:05,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:36:05
[2026-06-22 10:36:05,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:36:05,886.886 INFO    ] Initializing speech engine...
[2026-06-22 10:36:05,895.895 INFO    ] 2026-06-22 10:36:05
[2026-06-22 10:36:06,146.146 INFO    ] 2026-06-22 10:36:06
[2026-06-22 10:36:06,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:36:06,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:36:06,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:36:06,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:36:06,722.722 INFO    ] time= 22/06/2026 10:36:06
[2026-06-22 10:36:06,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:36:06,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:36:06,881.881 INFO    ] No existing commands found in stream
[2026-06-22 10:36:11,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:36:11,902.902 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-22 10:36:14,945.945 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:36:14,947.947 INFO    ] Checking for system updates...
[2026-06-22 10:36:14,983.983 INFO    ] 200
[2026-06-22 10:36:14,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:36:15,040.040 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:36:15,042.042 INFO    ] No update needed
[2026-06-22 10:36:15,045.045 INFO    ] Checking for camera pi updates...
[2026-06-22 10:36:15,079.079 INFO    ] 200
[2026-06-22 10:36:15,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:36:15,128.128 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:36:15,255.255 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:36:15,258.258 INFO    ] No camera update needed
[2026-06-22 10:36:15,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:36:15,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:36:15,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:36:15,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:36:17,318.318 INFO    ] ================================================
[2026-06-22 10:36:17,334.334 INFO    ] Launching Daemon at Mon Jun 22 10:36:17 IST 2026
[2026-06-22 10:36:17,345.345 INFO    ] ================================================
[2026-06-22 10:36:17,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:36:17
[2026-06-22 10:36:18,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:36:18,808.808 INFO    ] Initializing speech engine...
[2026-06-22 10:36:18,819.819 INFO    ] 2026-06-22 10:36:18
[2026-06-22 10:36:19,080.080 INFO    ] 2026-06-22 10:36:19
[2026-06-22 10:36:19,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:36:19,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:36:19,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:36:19,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:36:19,541.541 INFO    ] time= 22/06/2026 10:36:19
[2026-06-22 10:36:19,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:36:19,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:36:19,827.827 INFO    ] No existing commands found in stream
[2026-06-22 10:36:24,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:36:24,853.853 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-22 10:36:27,499.499 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:36:27,501.501 INFO    ] Checking for system updates...
[2026-06-22 10:36:27,522.522 INFO    ] 200
[2026-06-22 10:36:27,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:36:27,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:36:27,557.557 INFO    ] No update needed
[2026-06-22 10:36:27,558.558 INFO    ] Checking for camera pi updates...
[2026-06-22 10:36:27,578.578 INFO    ] 200
[2026-06-22 10:36:27,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:36:27,614.614 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:36:27,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:36:27,716.716 INFO    ] No camera update needed
[2026-06-22 10:36:27,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:36:27,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:36:27,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:36:27,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:36:29,778.778 INFO    ] ================================================
[2026-06-22 10:36:29,794.794 INFO    ] Launching Daemon at Mon Jun 22 10:36:29 IST 2026
[2026-06-22 10:36:29,805.805 INFO    ] ================================================
[2026-06-22 10:36:30,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:36:30
[2026-06-22 10:36:30,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:36:31,152.152 INFO    ] Initializing speech engine...
[2026-06-22 10:36:31,160.160 INFO    ] 2026-06-22 10:36:31
[2026-06-22 10:36:31,473.473 INFO    ] 2026-06-22 10:36:31
[2026-06-22 10:36:31,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:36:31,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:36:31,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:36:31,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:36:31,916.916 INFO    ] time= 22/06/2026 10:36:31
[2026-06-22 10:36:31,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:36:31,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:36:32,043.043 INFO    ] No existing commands found in stream
[2026-06-22 10:36:37,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:36:37,057.057 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-22 10:36:39,204.204 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:36:39,207.207 INFO    ] Checking for system updates...
[2026-06-22 10:36:39,243.243 INFO    ] 200
[2026-06-22 10:36:39,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:36:39,299.299 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:36:39,302.302 INFO    ] No update needed
[2026-06-22 10:36:39,304.304 INFO    ] Checking for camera pi updates...
[2026-06-22 10:36:39,340.340 INFO    ] 200
[2026-06-22 10:36:39,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:36:39,384.384 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:36:39,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:36:39,589.589 INFO    ] No camera update needed
[2026-06-22 10:36:39,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:36:39,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:36:39,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:36:39,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:36:41,644.644 INFO    ] ================================================
[2026-06-22 10:36:41,660.660 INFO    ] Launching Daemon at Mon Jun 22 10:36:41 IST 2026
[2026-06-22 10:36:41,671.671 INFO    ] ================================================
[2026-06-22 10:36:42,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:36:42
[2026-06-22 10:36:42,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:36:43,009.009 INFO    ] Initializing speech engine...
[2026-06-22 10:36:43,018.018 INFO    ] 2026-06-22 10:36:43
[2026-06-22 10:36:43,316.316 INFO    ] 2026-06-22 10:36:43
[2026-06-22 10:36:43,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:36:43,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:36:43,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:36:43,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:36:43,740.740 INFO    ] time= 22/06/2026 10:36:43
[2026-06-22 10:36:43,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:36:43,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:36:43,834.834 INFO    ] No existing commands found in stream
[2026-06-22 10:36:48,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:36:48,851.851 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-22 10:36:51,787.787 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:36:51,790.790 INFO    ] Checking for system updates...
[2026-06-22 10:36:51,828.828 INFO    ] 200
[2026-06-22 10:36:51,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:36:51,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:36:51,888.888 INFO    ] No update needed
[2026-06-22 10:36:51,891.891 INFO    ] Checking for camera pi updates...
[2026-06-22 10:36:51,930.930 INFO    ] 200
[2026-06-22 10:36:51,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:36:51,974.974 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:36:52,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:36:52,066.066 INFO    ] No camera update needed
[2026-06-22 10:36:52,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:36:52,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:36:52,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:36:52,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:36:54,125.125 INFO    ] ================================================
[2026-06-22 10:36:54,140.140 INFO    ] Launching Daemon at Mon Jun 22 10:36:54 IST 2026
[2026-06-22 10:36:54,151.151 INFO    ] ================================================
[2026-06-22 10:36:54,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:36:54
[2026-06-22 10:36:55,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:36:55,534.534 INFO    ] Initializing speech engine...
[2026-06-22 10:36:55,542.542 INFO    ] 2026-06-22 10:36:55
[2026-06-22 10:36:55,843.843 INFO    ] 2026-06-22 10:36:55
[2026-06-22 10:36:55,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:36:56,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:36:56,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:36:56,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:36:56,271.271 INFO    ] time= 22/06/2026 10:36:56
[2026-06-22 10:36:56,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:36:56,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:36:56,436.436 INFO    ] No existing commands found in stream
[2026-06-22 10:37:01,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:37:01,462.462 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-22 10:37:05,740.740 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:37:05,742.742 INFO    ] Checking for system updates...
[2026-06-22 10:37:05,764.764 INFO    ] 200
[2026-06-22 10:37:05,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:37:05,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:37:05,798.798 INFO    ] No update needed
[2026-06-22 10:37:05,799.799 INFO    ] Checking for camera pi updates...
[2026-06-22 10:37:05,819.819 INFO    ] 200
[2026-06-22 10:37:05,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:37:05,851.851 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:37:05,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:37:05,930.930 INFO    ] No camera update needed
[2026-06-22 10:37:05,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:37:05,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:37:05,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:37:05,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:37:07,986.986 INFO    ] ================================================
[2026-06-22 10:37:08,002.002 INFO    ] Launching Daemon at Mon Jun 22 10:37:07 IST 2026
[2026-06-22 10:37:08,014.014 INFO    ] ================================================
[2026-06-22 10:37:08,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:37:08
[2026-06-22 10:37:09,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:37:09,358.358 INFO    ] Initializing speech engine...
[2026-06-22 10:37:09,371.371 INFO    ] 2026-06-22 10:37:09
[2026-06-22 10:37:09,647.647 INFO    ] 2026-06-22 10:37:09
[2026-06-22 10:37:09,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:37:09,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:37:09,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:37:10,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:37:10,102.102 INFO    ] time= 22/06/2026 10:37:10
[2026-06-22 10:37:10,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:37:10,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:37:10,322.322 INFO    ] No existing commands found in stream
[2026-06-22 10:37:15,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:37:15,347.347 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-22 10:37:17,826.826 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:37:17,828.828 INFO    ] Checking for system updates...
[2026-06-22 10:37:17,864.864 INFO    ] 200
[2026-06-22 10:37:17,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:37:17,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:37:17,923.923 INFO    ] No update needed
[2026-06-22 10:37:17,925.925 INFO    ] Checking for camera pi updates...
[2026-06-22 10:37:17,959.959 INFO    ] 200
[2026-06-22 10:37:17,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:37:18,003.003 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:37:18,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:37:18,094.094 INFO    ] No camera update needed
[2026-06-22 10:37:18,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:37:18,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:37:18,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:37:18,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:37:20,151.151 INFO    ] ================================================
[2026-06-22 10:37:20,167.167 INFO    ] Launching Daemon at Mon Jun 22 10:37:20 IST 2026
[2026-06-22 10:37:20,179.179 INFO    ] ================================================
[2026-06-22 10:37:20,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:37:20
[2026-06-22 10:37:21,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:37:21,500.500 INFO    ] Initializing speech engine...
[2026-06-22 10:37:21,509.509 INFO    ] 2026-06-22 10:37:21
[2026-06-22 10:37:21,805.805 INFO    ] 2026-06-22 10:37:21
[2026-06-22 10:37:21,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:37:22,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:37:22,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:37:22,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:37:22,230.230 INFO    ] time= 22/06/2026 10:37:22
[2026-06-22 10:37:22,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:37:22,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:37:22,318.318 INFO    ] No existing commands found in stream
[2026-06-22 10:37:27,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:37:27,356.356 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-22 10:37:31,079.079 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:37:31,081.081 INFO    ] Checking for system updates...
[2026-06-22 10:37:31,117.117 INFO    ] 200
[2026-06-22 10:37:31,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:37:31,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:37:31,175.175 INFO    ] No update needed
[2026-06-22 10:37:31,178.178 INFO    ] Checking for camera pi updates...
[2026-06-22 10:37:31,211.211 INFO    ] 200
[2026-06-22 10:37:31,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:37:31,254.254 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:37:31,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:37:31,351.351 INFO    ] No camera update needed
[2026-06-22 10:37:31,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:37:31,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:37:31,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:37:31,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:37:33,418.418 INFO    ] ================================================
[2026-06-22 10:37:33,433.433 INFO    ] Launching Daemon at Mon Jun 22 10:37:33 IST 2026
[2026-06-22 10:37:33,446.446 INFO    ] ================================================
[2026-06-22 10:37:34,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:37:34
[2026-06-22 10:37:34,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:37:35,104.104 INFO    ] Initializing speech engine...
[2026-06-22 10:37:35,116.116 INFO    ] 2026-06-22 10:37:35
[2026-06-22 10:37:35,430.430 INFO    ] 2026-06-22 10:37:35
[2026-06-22 10:37:35,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:37:35,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:37:35,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:37:36,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:37:36,106.106 INFO    ] time= 22/06/2026 10:37:36
[2026-06-22 10:37:36,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:37:36,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:37:36,413.413 INFO    ] No existing commands found in stream
[2026-06-22 10:37:41,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:37:41,447.447 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-22 10:37:44,581.581 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:37:44,582.582 INFO    ] Checking for system updates...
[2026-06-22 10:37:44,603.603 INFO    ] 200
[2026-06-22 10:37:44,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:37:44,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:37:44,637.637 INFO    ] No update needed
[2026-06-22 10:37:44,639.639 INFO    ] Checking for camera pi updates...
[2026-06-22 10:37:44,659.659 INFO    ] 200
[2026-06-22 10:37:44,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:37:44,688.688 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:37:44,755.755 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:37:44,758.758 INFO    ] No camera update needed
[2026-06-22 10:37:44,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:37:44,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:37:44,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:37:44,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:37:46,823.823 INFO    ] ================================================
[2026-06-22 10:37:46,839.839 INFO    ] Launching Daemon at Mon Jun 22 10:37:46 IST 2026
[2026-06-22 10:37:46,851.851 INFO    ] ================================================
[2026-06-22 10:37:47,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:37:47
[2026-06-22 10:37:47,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:37:48,185.185 INFO    ] Initializing speech engine...
[2026-06-22 10:37:48,201.201 INFO    ] 2026-06-22 10:37:48
[2026-06-22 10:37:48,454.454 INFO    ] 2026-06-22 10:37:48
[2026-06-22 10:37:48,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:37:48,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:37:48,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:37:48,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:37:48,962.962 INFO    ] time= 22/06/2026 10:37:48
[2026-06-22 10:37:49,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:37:49,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:37:49,151.151 INFO    ] No existing commands found in stream
[2026-06-22 10:37:54,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:37:54,184.184 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-22 10:37:57,111.111 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:37:57,112.112 INFO    ] Checking for system updates...
[2026-06-22 10:37:57,133.133 INFO    ] 200
[2026-06-22 10:37:57,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:37:57,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:37:57,167.167 INFO    ] No update needed
[2026-06-22 10:37:57,168.168 INFO    ] Checking for camera pi updates...
[2026-06-22 10:37:57,188.188 INFO    ] 200
[2026-06-22 10:37:57,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:37:57,230.230 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:37:57,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:37:57,311.311 INFO    ] No camera update needed
[2026-06-22 10:37:57,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:37:57,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:37:57,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:37:57,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:37:59,371.371 INFO    ] ================================================
[2026-06-22 10:37:59,387.387 INFO    ] Launching Daemon at Mon Jun 22 10:37:59 IST 2026
[2026-06-22 10:37:59,398.398 INFO    ] ================================================
[2026-06-22 10:38:00,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:38:00
[2026-06-22 10:38:00,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:38:00,911.911 INFO    ] Initializing speech engine...
[2026-06-22 10:38:00,921.921 INFO    ] 2026-06-22 10:38:00
[2026-06-22 10:38:01,166.166 INFO    ] 2026-06-22 10:38:01
[2026-06-22 10:38:01,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:38:01,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:38:01,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:38:01,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:38:01,592.592 INFO    ] time= 22/06/2026 10:38:01
[2026-06-22 10:38:01,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:38:01,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:38:01,689.689 INFO    ] No existing commands found in stream
[2026-06-22 10:38:06,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:38:06,702.702 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-22 10:38:09,124.124 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:38:09,128.128 INFO    ] Checking for system updates...
[2026-06-22 10:38:09,164.164 INFO    ] 200
[2026-06-22 10:38:09,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:38:09,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:38:09,222.222 INFO    ] No update needed
[2026-06-22 10:38:09,224.224 INFO    ] Checking for camera pi updates...
[2026-06-22 10:38:09,259.259 INFO    ] 200
[2026-06-22 10:38:09,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:38:09,305.305 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:38:09,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:38:09,389.389 INFO    ] No camera update needed
[2026-06-22 10:38:09,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:38:09,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:38:09,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:38:09,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:38:11,445.445 INFO    ] ================================================
[2026-06-22 10:38:11,460.460 INFO    ] Launching Daemon at Mon Jun 22 10:38:11 IST 2026
[2026-06-22 10:38:11,472.472 INFO    ] ================================================
[2026-06-22 10:38:12,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:38:12
[2026-06-22 10:38:12,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:38:12,929.929 INFO    ] Initializing speech engine...
[2026-06-22 10:38:12,948.948 INFO    ] 2026-06-22 10:38:12
[2026-06-22 10:38:13,198.198 INFO    ] 2026-06-22 10:38:13
[2026-06-22 10:38:13,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:38:13,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:38:13,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:38:13,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:38:13,664.664 INFO    ] time= 22/06/2026 10:38:13
[2026-06-22 10:38:13,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:38:13,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:38:13,904.904 INFO    ] No existing commands found in stream
[2026-06-22 10:38:18,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:38:18,924.924 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-22 10:38:20,410.410 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:38:20,411.411 INFO    ] Checking for system updates...
[2026-06-22 10:38:20,432.432 INFO    ] 200
[2026-06-22 10:38:20,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:38:20,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:38:20,467.467 INFO    ] No update needed
[2026-06-22 10:38:20,469.469 INFO    ] Checking for camera pi updates...
[2026-06-22 10:38:20,488.488 INFO    ] 200
[2026-06-22 10:38:20,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:38:20,527.527 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:38:20,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:38:20,612.612 INFO    ] No camera update needed
[2026-06-22 10:38:20,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:38:20,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:38:20,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:38:20,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:38:22,669.669 INFO    ] ================================================
[2026-06-22 10:38:22,684.684 INFO    ] Launching Daemon at Mon Jun 22 10:38:22 IST 2026
[2026-06-22 10:38:22,696.696 INFO    ] ================================================
[2026-06-22 10:38:23,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:38:23
[2026-06-22 10:38:23,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:38:24,030.030 INFO    ] Initializing speech engine...
[2026-06-22 10:38:24,039.039 INFO    ] 2026-06-22 10:38:24
[2026-06-22 10:38:24,298.298 INFO    ] 2026-06-22 10:38:24
[2026-06-22 10:38:24,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:38:24,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:38:24,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:38:24,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:38:24,838.838 INFO    ] time= 22/06/2026 10:38:24
[2026-06-22 10:38:24,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:38:24,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:38:24,955.955 INFO    ] No existing commands found in stream
[2026-06-22 10:38:29,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:38:29,987.987 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-22 10:38:32,692.692 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:38:32,695.695 INFO    ] Checking for system updates...
[2026-06-22 10:38:32,731.731 INFO    ] 200
[2026-06-22 10:38:32,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:38:32,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:38:32,788.788 INFO    ] No update needed
[2026-06-22 10:38:32,791.791 INFO    ] Checking for camera pi updates...
[2026-06-22 10:38:32,825.825 INFO    ] 200
[2026-06-22 10:38:32,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:38:32,870.870 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:38:32,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:38:32,953.953 INFO    ] No camera update needed
[2026-06-22 10:38:32,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:38:32,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:38:32,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:38:32,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:38:35,011.011 INFO    ] ================================================
[2026-06-22 10:38:35,027.027 INFO    ] Launching Daemon at Mon Jun 22 10:38:35 IST 2026
[2026-06-22 10:38:35,038.038 INFO    ] ================================================
[2026-06-22 10:38:35,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:38:35
[2026-06-22 10:38:36,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:38:36,442.442 INFO    ] Initializing speech engine...
[2026-06-22 10:38:36,465.465 INFO    ] 2026-06-22 10:38:36
[2026-06-22 10:38:36,721.721 INFO    ] 2026-06-22 10:38:36
[2026-06-22 10:38:36,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:38:36,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:38:36,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:38:37,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:38:37,098.098 INFO    ] time= 22/06/2026 10:38:37
[2026-06-22 10:38:37,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:38:37,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:38:37,282.282 INFO    ] No existing commands found in stream
[2026-06-22 10:38:42,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:38:42,310.310 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-22 10:38:44,915.915 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:38:44,918.918 INFO    ] Checking for system updates...
[2026-06-22 10:38:44,954.954 INFO    ] 200
[2026-06-22 10:38:44,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:38:45,010.010 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:38:45,012.012 INFO    ] No update needed
[2026-06-22 10:38:45,015.015 INFO    ] Checking for camera pi updates...
[2026-06-22 10:38:45,062.062 INFO    ] 200
[2026-06-22 10:38:45,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:38:45,105.105 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:38:45,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:38:45,284.284 INFO    ] No camera update needed
[2026-06-22 10:38:45,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:38:45,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:38:45,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:38:45,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:38:47,341.341 INFO    ] ================================================
[2026-06-22 10:38:47,357.357 INFO    ] Launching Daemon at Mon Jun 22 10:38:47 IST 2026
[2026-06-22 10:38:47,369.369 INFO    ] ================================================
[2026-06-22 10:38:47,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:38:47
[2026-06-22 10:38:48,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:38:48,752.752 INFO    ] Initializing speech engine...
[2026-06-22 10:38:48,759.759 INFO    ] 2026-06-22 10:38:48
[2026-06-22 10:38:49,019.019 INFO    ] 2026-06-22 10:38:49
[2026-06-22 10:38:49,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:38:49,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:38:49,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:38:49,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:38:49,497.497 INFO    ] time= 22/06/2026 10:38:49
[2026-06-22 10:38:49,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:38:49,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:38:49,701.701 INFO    ] No existing commands found in stream
[2026-06-22 10:38:54,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:38:54,728.728 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-22 10:38:55,979.979 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:38:55,981.981 INFO    ] Checking for system updates...
[2026-06-22 10:38:56,001.001 INFO    ] 200
[2026-06-22 10:38:56,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:38:56,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:38:56,045.045 INFO    ] No update needed
[2026-06-22 10:38:56,048.048 INFO    ] Checking for camera pi updates...
[2026-06-22 10:38:56,086.086 INFO    ] 200
[2026-06-22 10:38:56,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:38:56,129.129 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:38:56,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:38:56,220.220 INFO    ] No camera update needed
[2026-06-22 10:38:56,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:38:56,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:38:56,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:38:56,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:38:58,278.278 INFO    ] ================================================
[2026-06-22 10:38:58,294.294 INFO    ] Launching Daemon at Mon Jun 22 10:38:58 IST 2026
[2026-06-22 10:38:58,305.305 INFO    ] ================================================
[2026-06-22 10:38:58,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:38:58
[2026-06-22 10:38:59,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:38:59,742.742 INFO    ] Initializing speech engine...
[2026-06-22 10:38:59,751.751 INFO    ] 2026-06-22 10:38:59
[2026-06-22 10:38:59,997.997 INFO    ] 2026-06-22 10:38:59
[2026-06-22 10:39:00,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:39:00,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:39:00,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:39:00,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:39:00,474.474 INFO    ] time= 22/06/2026 10:39:00
[2026-06-22 10:39:00,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:39:00,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:39:00,713.713 INFO    ] No existing commands found in stream
[2026-06-22 10:39:05,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:39:05,730.730 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-22 10:39:09,050.050 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:39:09,053.053 INFO    ] Checking for system updates...
[2026-06-22 10:39:09,089.089 INFO    ] 200
[2026-06-22 10:39:09,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:39:09,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:39:09,147.147 INFO    ] No update needed
[2026-06-22 10:39:09,149.149 INFO    ] Checking for camera pi updates...
[2026-06-22 10:39:09,182.182 INFO    ] 200
[2026-06-22 10:39:09,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:39:09,226.226 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:39:09,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:39:09,317.317 INFO    ] No camera update needed
[2026-06-22 10:39:09,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:39:09,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:39:09,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:39:09,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:39:11,374.374 INFO    ] ================================================
[2026-06-22 10:39:11,390.390 INFO    ] Launching Daemon at Mon Jun 22 10:39:11 IST 2026
[2026-06-22 10:39:11,402.402 INFO    ] ================================================
[2026-06-22 10:39:11,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:39:11
[2026-06-22 10:39:12,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:39:12,726.726 INFO    ] Initializing speech engine...
[2026-06-22 10:39:12,742.742 INFO    ] 2026-06-22 10:39:12
[2026-06-22 10:39:13,029.029 INFO    ] 2026-06-22 10:39:12
[2026-06-22 10:39:13,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:39:13,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:39:13,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:39:13,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:39:13,433.433 INFO    ] time= 22/06/2026 10:39:13
[2026-06-22 10:39:13,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:39:13,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:39:13,629.629 INFO    ] No existing commands found in stream
[2026-06-22 10:39:18,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:39:18,642.642 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-22 10:39:22,241.241 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:39:22,242.242 INFO    ] Checking for system updates...
[2026-06-22 10:39:22,269.269 INFO    ] 200
[2026-06-22 10:39:22,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:39:22,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:39:22,330.330 INFO    ] No update needed
[2026-06-22 10:39:22,333.333 INFO    ] Checking for camera pi updates...
[2026-06-22 10:39:22,368.368 INFO    ] 200
[2026-06-22 10:39:22,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:39:22,413.413 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:39:22,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:39:22,498.498 INFO    ] No camera update needed
[2026-06-22 10:39:22,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:39:22,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:39:22,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:39:22,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:39:24,558.558 INFO    ] ================================================
[2026-06-22 10:39:24,573.573 INFO    ] Launching Daemon at Mon Jun 22 10:39:24 IST 2026
[2026-06-22 10:39:24,583.583 INFO    ] ================================================
[2026-06-22 10:39:25,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:39:25
[2026-06-22 10:39:25,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:39:26,032.032 INFO    ] Initializing speech engine...
[2026-06-22 10:39:26,041.041 INFO    ] 2026-06-22 10:39:26
[2026-06-22 10:39:26,343.343 INFO    ] 2026-06-22 10:39:26
[2026-06-22 10:39:26,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:39:26,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:39:26,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:39:26,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:39:26,767.767 INFO    ] time= 22/06/2026 10:39:26
[2026-06-22 10:39:26,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:39:26,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:39:26,857.857 INFO    ] No existing commands found in stream
[2026-06-22 10:39:31,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:39:31,872.872 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-22 10:39:33,757.757 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:39:33,760.760 INFO    ] Checking for system updates...
[2026-06-22 10:39:33,798.798 INFO    ] 200
[2026-06-22 10:39:33,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:39:33,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:39:33,865.865 INFO    ] No update needed
[2026-06-22 10:39:33,868.868 INFO    ] Checking for camera pi updates...
[2026-06-22 10:39:33,903.903 INFO    ] 200
[2026-06-22 10:39:33,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:39:33,949.949 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:39:34,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:39:34,037.037 INFO    ] No camera update needed
[2026-06-22 10:39:34,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:39:34,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:39:34,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:39:34,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:39:36,098.098 INFO    ] ================================================
[2026-06-22 10:39:36,113.113 INFO    ] Launching Daemon at Mon Jun 22 10:39:36 IST 2026
[2026-06-22 10:39:36,124.124 INFO    ] ================================================
[2026-06-22 10:39:36,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:39:36
[2026-06-22 10:39:37,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:39:37,504.504 INFO    ] Initializing speech engine...
[2026-06-22 10:39:37,511.511 INFO    ] 2026-06-22 10:39:37
[2026-06-22 10:39:37,769.769 INFO    ] 2026-06-22 10:39:37
[2026-06-22 10:39:37,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:39:38,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:39:38,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:39:38,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:39:38,248.248 INFO    ] time= 22/06/2026 10:39:38
[2026-06-22 10:39:38,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:39:38,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:39:38,382.382 INFO    ] No existing commands found in stream
[2026-06-22 10:39:43,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:39:43,397.397 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-22 10:39:46,026.026 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:39:46,029.029 INFO    ] Checking for system updates...
[2026-06-22 10:39:46,066.066 INFO    ] 200
[2026-06-22 10:39:46,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:39:46,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:39:46,123.123 INFO    ] No update needed
[2026-06-22 10:39:46,126.126 INFO    ] Checking for camera pi updates...
[2026-06-22 10:39:46,159.159 INFO    ] 200
[2026-06-22 10:39:46,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:39:46,202.202 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:39:46,285.285 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:39:46,287.287 INFO    ] No camera update needed
[2026-06-22 10:39:46,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:39:46,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:39:46,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:39:46,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:39:48,343.343 INFO    ] ================================================
[2026-06-22 10:39:48,358.358 INFO    ] Launching Daemon at Mon Jun 22 10:39:48 IST 2026
[2026-06-22 10:39:48,369.369 INFO    ] ================================================
[2026-06-22 10:39:48,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:39:48
[2026-06-22 10:39:49,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:39:49,780.780 INFO    ] Initializing speech engine...
[2026-06-22 10:39:49,789.789 INFO    ] 2026-06-22 10:39:49
[2026-06-22 10:39:50,039.039 INFO    ] 2026-06-22 10:39:50
[2026-06-22 10:39:50,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:39:50,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:39:50,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:39:50,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:39:50,489.489 INFO    ] time= 22/06/2026 10:39:50
[2026-06-22 10:39:50,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:39:50,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:39:50,741.741 INFO    ] No existing commands found in stream
[2026-06-22 10:39:55,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:39:55,774.774 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-22 10:39:58,559.559 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:39:58,562.562 INFO    ] Checking for system updates...
[2026-06-22 10:39:58,603.603 INFO    ] 200
[2026-06-22 10:39:58,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:39:58,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:39:58,662.662 INFO    ] No update needed
[2026-06-22 10:39:58,664.664 INFO    ] Checking for camera pi updates...
[2026-06-22 10:39:58,698.698 INFO    ] 200
[2026-06-22 10:39:58,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:39:58,741.741 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:39:58,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:39:58,825.825 INFO    ] No camera update needed
[2026-06-22 10:39:58,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:39:58,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:39:58,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:39:58,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:40:00,880.880 INFO    ] ================================================
[2026-06-22 10:40:00,895.895 INFO    ] Launching Daemon at Mon Jun 22 10:40:00 IST 2026
[2026-06-22 10:40:00,905.905 INFO    ] ================================================
[2026-06-22 10:40:01,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:40:01
[2026-06-22 10:40:02,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:40:03,051.051 INFO    ] Initializing speech engine...
[2026-06-22 10:40:03,056.056 INFO    ] 2026-06-22 10:40:03
[2026-06-22 10:40:03,458.458 INFO    ] 2026-06-22 10:40:03
[2026-06-22 10:40:03,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:40:03,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:40:03,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:40:03,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:40:03,922.922 INFO    ] time= 22/06/2026 10:40:03
[2026-06-22 10:40:03,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:40:03,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:40:04,081.081 INFO    ] No existing commands found in stream
[2026-06-22 10:40:09,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:40:09,112.112 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-22 10:40:12,066.066 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:40:12,069.069 INFO    ] Checking for system updates...
[2026-06-22 10:40:12,106.106 INFO    ] 200
[2026-06-22 10:40:12,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:40:12,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:40:12,163.163 INFO    ] No update needed
[2026-06-22 10:40:12,165.165 INFO    ] Checking for camera pi updates...
[2026-06-22 10:40:12,205.205 INFO    ] 200
[2026-06-22 10:40:12,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:40:12,252.252 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:40:12,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:40:12,333.333 INFO    ] No camera update needed
[2026-06-22 10:40:12,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:40:12,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:40:12,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:40:12,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:40:14,389.389 INFO    ] ================================================
[2026-06-22 10:40:14,404.404 INFO    ] Launching Daemon at Mon Jun 22 10:40:14 IST 2026
[2026-06-22 10:40:14,415.415 INFO    ] ================================================
[2026-06-22 10:40:14,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:40:14
[2026-06-22 10:40:15,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:40:15,816.816 INFO    ] Initializing speech engine...
[2026-06-22 10:40:15,824.824 INFO    ] 2026-06-22 10:40:15
[2026-06-22 10:40:16,116.116 INFO    ] 2026-06-22 10:40:16
[2026-06-22 10:40:16,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:40:16,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:40:16,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:40:16,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:40:16,635.635 INFO    ] time= 22/06/2026 10:40:16
[2026-06-22 10:40:16,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:40:16,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:40:16,850.850 INFO    ] No existing commands found in stream
[2026-06-22 10:40:21,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:40:21,867.867 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-22 10:40:25,760.760 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:40:25,763.763 INFO    ] Checking for system updates...
[2026-06-22 10:40:25,800.800 INFO    ] 200
[2026-06-22 10:40:25,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:40:25,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:40:25,857.857 INFO    ] No update needed
[2026-06-22 10:40:25,860.860 INFO    ] Checking for camera pi updates...
[2026-06-22 10:40:25,895.895 INFO    ] 200
[2026-06-22 10:40:25,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:40:25,938.938 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:40:26,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:40:26,027.027 INFO    ] No camera update needed
[2026-06-22 10:40:26,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:40:26,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:40:26,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:40:26,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:40:28,082.082 INFO    ] ================================================
[2026-06-22 10:40:28,097.097 INFO    ] Launching Daemon at Mon Jun 22 10:40:28 IST 2026
[2026-06-22 10:40:28,108.108 INFO    ] ================================================
[2026-06-22 10:40:28,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:40:28
[2026-06-22 10:40:29,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:40:29,499.499 INFO    ] Initializing speech engine...
[2026-06-22 10:40:29,515.515 INFO    ] 2026-06-22 10:40:29
[2026-06-22 10:40:29,795.795 INFO    ] 2026-06-22 10:40:29
[2026-06-22 10:40:29,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:40:30,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:40:30,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:40:30,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:40:30,303.303 INFO    ] time= 22/06/2026 10:40:30
[2026-06-22 10:40:30,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:40:30,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:40:30,556.556 INFO    ] No existing commands found in stream
[2026-06-22 10:40:35,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:40:35,569.569 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-22 10:40:39,086.086 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:40:39,087.087 INFO    ] Checking for system updates...
[2026-06-22 10:40:39,108.108 INFO    ] 200
[2026-06-22 10:40:39,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:40:39,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:40:39,144.144 INFO    ] No update needed
[2026-06-22 10:40:39,147.147 INFO    ] Checking for camera pi updates...
[2026-06-22 10:40:39,182.182 INFO    ] 200
[2026-06-22 10:40:39,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:40:39,225.225 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:40:39,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:40:39,329.329 INFO    ] No camera update needed
[2026-06-22 10:40:39,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:40:39,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:40:39,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:40:39,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:40:41,384.384 INFO    ] ================================================
[2026-06-22 10:40:41,399.399 INFO    ] Launching Daemon at Mon Jun 22 10:40:41 IST 2026
[2026-06-22 10:40:41,410.410 INFO    ] ================================================
[2026-06-22 10:40:41,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:40:41
[2026-06-22 10:40:42,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:40:42,768.768 INFO    ] Initializing speech engine...
[2026-06-22 10:40:42,775.775 INFO    ] 2026-06-22 10:40:42
[2026-06-22 10:40:43,023.023 INFO    ] 2026-06-22 10:40:43
[2026-06-22 10:40:43,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:40:43,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:40:43,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:40:43,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:40:43,520.520 INFO    ] time= 22/06/2026 10:40:43
[2026-06-22 10:40:43,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:40:43,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:40:43,719.719 INFO    ] No existing commands found in stream
[2026-06-22 10:40:48,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:40:48,746.746 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-22 10:40:49,607.607 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:40:49,609.609 INFO    ] Checking for system updates...
[2026-06-22 10:40:49,646.646 INFO    ] 200
[2026-06-22 10:40:49,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:40:49,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:40:49,703.703 INFO    ] No update needed
[2026-06-22 10:40:49,706.706 INFO    ] Checking for camera pi updates...
[2026-06-22 10:40:49,744.744 INFO    ] 200
[2026-06-22 10:40:49,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:40:49,787.787 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:40:49,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:40:49,969.969 INFO    ] No camera update needed
[2026-06-22 10:40:49,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:40:49,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:40:49,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:40:49,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:40:52,025.025 INFO    ] ================================================
[2026-06-22 10:40:52,040.040 INFO    ] Launching Daemon at Mon Jun 22 10:40:52 IST 2026
[2026-06-22 10:40:52,052.052 INFO    ] ================================================
[2026-06-22 10:40:52,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:40:52
[2026-06-22 10:40:53,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:40:53,480.480 INFO    ] Initializing speech engine...
[2026-06-22 10:40:53,489.489 INFO    ] 2026-06-22 10:40:53
[2026-06-22 10:40:53,781.781 INFO    ] 2026-06-22 10:40:53
[2026-06-22 10:40:53,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:40:54,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:40:54,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:40:54,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:40:54,310.310 INFO    ] time= 22/06/2026 10:40:54
[2026-06-22 10:40:54,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:40:54,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:40:54,486.486 INFO    ] No existing commands found in stream
[2026-06-22 10:40:59,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:40:59,522.522 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-22 10:41:01,882.882 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:41:01,887.887 INFO    ] Checking for system updates...
[2026-06-22 10:41:01,984.984 INFO    ] 200
[2026-06-22 10:41:01,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:41:02,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:41:02,072.072 INFO    ] No update needed
[2026-06-22 10:41:02,076.076 INFO    ] Checking for camera pi updates...
[2026-06-22 10:41:02,121.121 INFO    ] 200
[2026-06-22 10:41:02,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:41:02,222.222 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:41:02,283.283 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:41:02,287.287 INFO    ] No camera update needed
[2026-06-22 10:41:02,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:41:02,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:41:02,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:41:02,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:41:04,358.358 INFO    ] ================================================
[2026-06-22 10:41:04,374.374 INFO    ] Launching Daemon at Mon Jun 22 10:41:04 IST 2026
[2026-06-22 10:41:04,385.385 INFO    ] ================================================
[2026-06-22 10:41:04,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:41:04
[2026-06-22 10:41:05,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:41:05,814.814 INFO    ] Initializing speech engine...
[2026-06-22 10:41:05,827.827 INFO    ] 2026-06-22 10:41:05
[2026-06-22 10:41:06,080.080 INFO    ] 2026-06-22 10:41:06
[2026-06-22 10:41:06,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:41:06,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:41:06,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:41:06,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:41:06,566.566 INFO    ] time= 22/06/2026 10:41:06
[2026-06-22 10:41:06,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:41:06,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:41:06,819.819 INFO    ] No existing commands found in stream
[2026-06-22 10:41:11,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:41:11,838.838 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-22 10:41:15,065.065 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:41:15,067.067 INFO    ] Checking for system updates...
[2026-06-22 10:41:15,089.089 INFO    ] 200
[2026-06-22 10:41:15,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:41:15,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:41:15,122.122 INFO    ] No update needed
[2026-06-22 10:41:15,123.123 INFO    ] Checking for camera pi updates...
[2026-06-22 10:41:15,143.143 INFO    ] 200
[2026-06-22 10:41:15,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:41:15,173.173 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:41:15,255.255 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:41:15,258.258 INFO    ] No camera update needed
[2026-06-22 10:41:15,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:41:15,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:41:15,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:41:15,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:41:17,316.316 INFO    ] ================================================
[2026-06-22 10:41:17,331.331 INFO    ] Launching Daemon at Mon Jun 22 10:41:17 IST 2026
[2026-06-22 10:41:17,342.342 INFO    ] ================================================
[2026-06-22 10:41:17,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:41:17
[2026-06-22 10:41:18,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:41:18,680.680 INFO    ] Initializing speech engine...
[2026-06-22 10:41:18,704.704 INFO    ] 2026-06-22 10:41:18
[2026-06-22 10:41:18,977.977 INFO    ] 2026-06-22 10:41:18
[2026-06-22 10:41:19,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:41:19,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:41:19,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:41:19,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:41:19,398.398 INFO    ] time= 22/06/2026 10:41:19
[2026-06-22 10:41:19,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:41:19,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:41:19,583.583 INFO    ] No existing commands found in stream
[2026-06-22 10:41:24,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:41:24,612.612 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-22 10:41:28,058.058 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:41:28,061.061 INFO    ] Checking for system updates...
[2026-06-22 10:41:28,097.097 INFO    ] 200
[2026-06-22 10:41:28,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:41:28,159.159 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:41:28,162.162 INFO    ] No update needed
[2026-06-22 10:41:28,164.164 INFO    ] Checking for camera pi updates...
[2026-06-22 10:41:28,199.199 INFO    ] 200
[2026-06-22 10:41:28,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:41:28,250.250 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:41:28,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:41:28,320.320 INFO    ] No camera update needed
[2026-06-22 10:41:28,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:41:28,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:41:28,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:41:28,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:41:30,381.381 INFO    ] ================================================
[2026-06-22 10:41:30,396.396 INFO    ] Launching Daemon at Mon Jun 22 10:41:30 IST 2026
[2026-06-22 10:41:30,406.406 INFO    ] ================================================
[2026-06-22 10:41:30,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:41:30
[2026-06-22 10:41:31,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:41:31,837.837 INFO    ] Initializing speech engine...
[2026-06-22 10:41:31,852.852 INFO    ] 2026-06-22 10:41:31
[2026-06-22 10:41:32,129.129 INFO    ] 2026-06-22 10:41:32
[2026-06-22 10:41:32,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:41:32,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:41:32,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:41:32,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:41:32,483.483 INFO    ] time= 22/06/2026 10:41:32
[2026-06-22 10:41:32,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:41:32,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:41:32,679.679 INFO    ] No existing commands found in stream
[2026-06-22 10:41:37,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:41:37,718.718 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-22 10:41:41,867.867 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:41:41,870.870 INFO    ] Checking for system updates...
[2026-06-22 10:41:41,906.906 INFO    ] 200
[2026-06-22 10:41:41,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:41:41,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:41:41,963.963 INFO    ] No update needed
[2026-06-22 10:41:41,965.965 INFO    ] Checking for camera pi updates...
[2026-06-22 10:41:42,006.006 INFO    ] 200
[2026-06-22 10:41:42,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:41:42,055.055 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:41:42,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:41:42,141.141 INFO    ] No camera update needed
[2026-06-22 10:41:42,143.143 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:41:42,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:41:42,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:41:42,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:41:44,198.198 INFO    ] ================================================
[2026-06-22 10:41:44,213.213 INFO    ] Launching Daemon at Mon Jun 22 10:41:44 IST 2026
[2026-06-22 10:41:44,223.223 INFO    ] ================================================
[2026-06-22 10:41:44,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:41:44
[2026-06-22 10:41:45,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:41:45,642.642 INFO    ] Initializing speech engine...
[2026-06-22 10:41:45,666.666 INFO    ] 2026-06-22 10:41:45
[2026-06-22 10:41:45,923.923 INFO    ] 2026-06-22 10:41:45
[2026-06-22 10:41:45,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:41:46,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:41:46,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:41:46,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:41:46,411.411 INFO    ] time= 22/06/2026 10:41:46
[2026-06-22 10:41:46,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:41:46,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:41:46,625.625 INFO    ] No existing commands found in stream
[2026-06-22 10:41:51,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:41:51,658.658 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-22 10:41:54,650.650 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:41:54,653.653 INFO    ] Checking for system updates...
[2026-06-22 10:41:54,691.691 INFO    ] 200
[2026-06-22 10:41:54,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:41:54,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:41:54,760.760 INFO    ] No update needed
[2026-06-22 10:41:54,763.763 INFO    ] Checking for camera pi updates...
[2026-06-22 10:41:54,799.799 INFO    ] 200
[2026-06-22 10:41:54,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:41:54,850.850 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:41:54,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:41:54,935.935 INFO    ] No camera update needed
[2026-06-22 10:41:54,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:41:54,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:41:54,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:41:54,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:41:57,997.997 INFO    ] ================================================
[2026-06-22 10:41:57,013.013 INFO    ] Launching Daemon at Mon Jun 22 10:41:57 IST 2026
[2026-06-22 10:41:57,024.024 INFO    ] ================================================
[2026-06-22 10:41:57,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:41:57
[2026-06-22 10:41:58,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:41:58,389.389 INFO    ] Initializing speech engine...
[2026-06-22 10:41:58,398.398 INFO    ] 2026-06-22 10:41:58
[2026-06-22 10:41:58,660.660 INFO    ] 2026-06-22 10:41:58
[2026-06-22 10:41:58,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:41:58,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:41:58,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:41:59,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:41:59,123.123 INFO    ] time= 22/06/2026 10:41:59
[2026-06-22 10:41:59,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:41:59,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:41:59,364.364 INFO    ] No existing commands found in stream
[2026-06-22 10:42:04,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:42:04,385.385 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-22 10:42:08,370.370 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:42:08,373.373 INFO    ] Checking for system updates...
[2026-06-22 10:42:08,413.413 INFO    ] 200
[2026-06-22 10:42:08,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:42:08,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:42:08,470.470 INFO    ] No update needed
[2026-06-22 10:42:08,472.472 INFO    ] Checking for camera pi updates...
[2026-06-22 10:42:08,508.508 INFO    ] 200
[2026-06-22 10:42:08,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:42:08,551.551 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:42:08,633.633 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:42:08,636.636 INFO    ] No camera update needed
[2026-06-22 10:42:08,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:42:08,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:42:08,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:42:08,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:42:10,693.693 INFO    ] ================================================
[2026-06-22 10:42:10,709.709 INFO    ] Launching Daemon at Mon Jun 22 10:42:10 IST 2026
[2026-06-22 10:42:10,720.720 INFO    ] ================================================
[2026-06-22 10:42:11,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:42:11
[2026-06-22 10:42:11,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:42:12,079.079 INFO    ] Initializing speech engine...
[2026-06-22 10:42:12,087.087 INFO    ] 2026-06-22 10:42:12
[2026-06-22 10:42:12,348.348 INFO    ] 2026-06-22 10:42:12
[2026-06-22 10:42:12,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:42:12,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:42:12,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:42:12,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:42:12,717.717 INFO    ] time= 22/06/2026 10:42:12
[2026-06-22 10:42:12,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:42:12,764.764 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:42:12,903.903 INFO    ] No existing commands found in stream
[2026-06-22 10:42:17,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:42:17,930.930 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-22 10:42:19,107.107 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:42:19,109.109 INFO    ] Checking for system updates...
[2026-06-22 10:42:19,129.129 INFO    ] 200
[2026-06-22 10:42:19,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:42:19,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:42:19,194.194 INFO    ] No update needed
[2026-06-22 10:42:19,197.197 INFO    ] Checking for camera pi updates...
[2026-06-22 10:42:19,235.235 INFO    ] 200
[2026-06-22 10:42:19,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:42:19,278.278 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:42:19,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:42:19,362.362 INFO    ] No camera update needed
[2026-06-22 10:42:19,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:42:19,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:42:19,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:42:19,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:42:21,420.420 INFO    ] ================================================
[2026-06-22 10:42:21,436.436 INFO    ] Launching Daemon at Mon Jun 22 10:42:21 IST 2026
[2026-06-22 10:42:21,447.447 INFO    ] ================================================
[2026-06-22 10:42:22,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:42:22
[2026-06-22 10:42:22,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:42:22,877.877 INFO    ] Initializing speech engine...
[2026-06-22 10:42:22,886.886 INFO    ] 2026-06-22 10:42:22
[2026-06-22 10:42:23,184.184 INFO    ] 2026-06-22 10:42:23
[2026-06-22 10:42:23,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:42:23,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:42:23,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:42:23,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:42:23,696.696 INFO    ] time= 22/06/2026 10:42:23
[2026-06-22 10:42:23,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:42:23,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:42:23,893.893 INFO    ] No existing commands found in stream
[2026-06-22 10:42:28,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:42:28,908.908 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-22 10:42:33,264.264 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:42:33,266.266 INFO    ] Checking for system updates...
[2026-06-22 10:42:33,302.302 INFO    ] 200
[2026-06-22 10:42:33,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:42:33,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:42:33,361.361 INFO    ] No update needed
[2026-06-22 10:42:33,364.364 INFO    ] Checking for camera pi updates...
[2026-06-22 10:42:33,397.397 INFO    ] 200
[2026-06-22 10:42:33,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:42:33,441.441 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:42:33,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:42:33,530.530 INFO    ] No camera update needed
[2026-06-22 10:42:33,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:42:33,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:42:33,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:42:33,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:42:35,587.587 INFO    ] ================================================
[2026-06-22 10:42:35,602.602 INFO    ] Launching Daemon at Mon Jun 22 10:42:35 IST 2026
[2026-06-22 10:42:35,613.613 INFO    ] ================================================
[2026-06-22 10:42:36,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:42:36
[2026-06-22 10:42:36,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:42:36,976.976 INFO    ] Initializing speech engine...
[2026-06-22 10:42:36,993.993 INFO    ] 2026-06-22 10:42:36
[2026-06-22 10:42:37,249.249 INFO    ] 2026-06-22 10:42:37
[2026-06-22 10:42:37,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:42:37,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:42:37,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:42:37,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:42:37,811.811 INFO    ] time= 22/06/2026 10:42:37
[2026-06-22 10:42:37,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:42:37,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:42:37,966.966 INFO    ] No existing commands found in stream
[2026-06-22 10:42:42,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:42:42,982.982 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-22 10:42:46,520.520 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:42:46,522.522 INFO    ] Checking for system updates...
[2026-06-22 10:42:46,559.559 INFO    ] 200
[2026-06-22 10:42:46,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:42:46,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:42:46,625.625 INFO    ] No update needed
[2026-06-22 10:42:46,628.628 INFO    ] Checking for camera pi updates...
[2026-06-22 10:42:46,661.661 INFO    ] 200
[2026-06-22 10:42:46,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:42:46,705.705 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:42:46,789.789 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:42:46,791.791 INFO    ] No camera update needed
[2026-06-22 10:42:46,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:42:46,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:42:46,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:42:46,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:42:48,849.849 INFO    ] ================================================
[2026-06-22 10:42:48,865.865 INFO    ] Launching Daemon at Mon Jun 22 10:42:48 IST 2026
[2026-06-22 10:42:48,876.876 INFO    ] ================================================
[2026-06-22 10:42:49,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:42:49
[2026-06-22 10:42:50,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:42:50,349.349 INFO    ] Initializing speech engine...
[2026-06-22 10:42:50,355.355 INFO    ] 2026-06-22 10:42:50
[2026-06-22 10:42:50,603.603 INFO    ] 2026-06-22 10:42:50
[2026-06-22 10:42:50,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:42:50,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:42:50,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:42:51,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:42:51,071.071 INFO    ] time= 22/06/2026 10:42:51
[2026-06-22 10:42:51,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:42:51,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:42:51,195.195 INFO    ] No existing commands found in stream
[2026-06-22 10:42:56,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:42:56,213.213 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-22 10:42:59,972.972 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:42:59,975.975 INFO    ] Checking for system updates...
[2026-06-22 10:43:00,012.012 INFO    ] 200
[2026-06-22 10:43:00,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:43:00,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:43:00,072.072 INFO    ] No update needed
[2026-06-22 10:43:00,075.075 INFO    ] Checking for camera pi updates...
[2026-06-22 10:43:00,114.114 INFO    ] 200
[2026-06-22 10:43:00,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:43:00,168.168 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:43:00,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:43:00,361.361 INFO    ] No camera update needed
[2026-06-22 10:43:00,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:43:00,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:43:00,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:43:00,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:43:02,426.426 INFO    ] ================================================
[2026-06-22 10:43:02,452.452 INFO    ] Launching Daemon at Mon Jun 22 10:43:02 IST 2026
[2026-06-22 10:43:02,471.471 INFO    ] ================================================
[2026-06-22 10:43:03,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:43:03
[2026-06-22 10:43:03,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:43:04,034.034 INFO    ] Initializing speech engine...
[2026-06-22 10:43:04,049.049 INFO    ] 2026-06-22 10:43:04
[2026-06-22 10:43:04,337.337 INFO    ] 2026-06-22 10:43:04
[2026-06-22 10:43:04,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:43:04,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:43:04,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:43:04,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:43:04,841.841 INFO    ] time= 22/06/2026 10:43:04
[2026-06-22 10:43:04,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:43:04,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:43:05,068.068 INFO    ] No existing commands found in stream
[2026-06-22 10:43:10,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:43:10,092.092 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-22 10:43:13,771.771 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:43:13,774.774 INFO    ] Checking for system updates...
[2026-06-22 10:43:13,813.813 INFO    ] 200
[2026-06-22 10:43:13,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:43:13,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:43:13,883.883 INFO    ] No update needed
[2026-06-22 10:43:13,886.886 INFO    ] Checking for camera pi updates...
[2026-06-22 10:43:13,921.921 INFO    ] 200
[2026-06-22 10:43:13,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:43:13,966.966 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:43:14,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:43:14,037.037 INFO    ] No camera update needed
[2026-06-22 10:43:14,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:43:14,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:43:14,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:43:14,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:43:16,101.101 INFO    ] ================================================
[2026-06-22 10:43:16,116.116 INFO    ] Launching Daemon at Mon Jun 22 10:43:16 IST 2026
[2026-06-22 10:43:16,127.127 INFO    ] ================================================
[2026-06-22 10:43:16,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:43:16
[2026-06-22 10:43:17,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:43:17,681.681 INFO    ] Initializing speech engine...
[2026-06-22 10:43:17,695.695 INFO    ] 2026-06-22 10:43:17
[2026-06-22 10:43:17,981.981 INFO    ] 2026-06-22 10:43:17
[2026-06-22 10:43:18,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:43:18,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:43:18,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:43:18,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:43:18,444.444 INFO    ] time= 22/06/2026 10:43:18
[2026-06-22 10:43:18,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:43:18,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:43:18,675.675 INFO    ] No existing commands found in stream
[2026-06-22 10:43:23,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:43:23,707.707 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-22 10:43:27,501.501 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:43:27,504.504 INFO    ] Checking for system updates...
[2026-06-22 10:43:27,545.545 INFO    ] 200
[2026-06-22 10:43:27,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:43:27,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:43:27,603.603 INFO    ] No update needed
[2026-06-22 10:43:27,606.606 INFO    ] Checking for camera pi updates...
[2026-06-22 10:43:27,644.644 INFO    ] 200
[2026-06-22 10:43:27,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:43:27,687.687 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:43:27,768.768 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:43:27,771.771 INFO    ] No camera update needed
[2026-06-22 10:43:27,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:43:27,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:43:27,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:43:27,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:43:29,828.828 INFO    ] ================================================
[2026-06-22 10:43:29,844.844 INFO    ] Launching Daemon at Mon Jun 22 10:43:29 IST 2026
[2026-06-22 10:43:29,855.855 INFO    ] ================================================
[2026-06-22 10:43:30,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:43:30
[2026-06-22 10:43:31,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:43:31,353.353 INFO    ] Initializing speech engine...
[2026-06-22 10:43:31,368.368 INFO    ] 2026-06-22 10:43:31
[2026-06-22 10:43:31,638.638 INFO    ] 2026-06-22 10:43:31
[2026-06-22 10:43:31,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:43:31,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:43:31,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:43:32,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:43:32,147.147 INFO    ] time= 22/06/2026 10:43:32
[2026-06-22 10:43:32,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:43:32,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:43:32,470.470 INFO    ] No existing commands found in stream
[2026-06-22 10:43:37,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:43:37,510.510 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-22 10:43:38,961.961 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:43:38,964.964 INFO    ] Checking for system updates...
[2026-06-22 10:43:39,001.001 INFO    ] 200
[2026-06-22 10:43:39,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:43:39,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:43:39,066.066 INFO    ] No update needed
[2026-06-22 10:43:39,068.068 INFO    ] Checking for camera pi updates...
[2026-06-22 10:43:39,103.103 INFO    ] 200
[2026-06-22 10:43:39,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:43:39,147.147 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:43:39,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:43:39,200.200 INFO    ] No camera update needed
[2026-06-22 10:43:39,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:43:39,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:43:39,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:43:39,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:43:41,255.255 INFO    ] ================================================
[2026-06-22 10:43:41,271.271 INFO    ] Launching Daemon at Mon Jun 22 10:43:41 IST 2026
[2026-06-22 10:43:41,282.282 INFO    ] ================================================
[2026-06-22 10:43:41,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:43:41
[2026-06-22 10:43:42,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:43:42,710.710 INFO    ] Initializing speech engine...
[2026-06-22 10:43:42,719.719 INFO    ] 2026-06-22 10:43:42
[2026-06-22 10:43:43,013.013 INFO    ] 2026-06-22 10:43:42
[2026-06-22 10:43:43,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:43:43,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:43:43,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:43:43,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:43:43,436.436 INFO    ] time= 22/06/2026 10:43:43
[2026-06-22 10:43:43,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:43:43,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:43:43,521.521 INFO    ] No existing commands found in stream
[2026-06-22 10:43:48,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:43:48,537.537 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-22 10:43:50,958.958 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:43:50,960.960 INFO    ] Checking for system updates...
[2026-06-22 10:43:50,997.997 INFO    ] 200
[2026-06-22 10:43:50,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:43:51,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:43:51,059.059 INFO    ] No update needed
[2026-06-22 10:43:51,062.062 INFO    ] Checking for camera pi updates...
[2026-06-22 10:43:51,095.095 INFO    ] 200
[2026-06-22 10:43:51,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:43:51,144.144 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:43:51,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:43:51,228.228 INFO    ] No camera update needed
[2026-06-22 10:43:51,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:43:51,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:43:51,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:43:51,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:43:53,284.284 INFO    ] ================================================
[2026-06-22 10:43:53,300.300 INFO    ] Launching Daemon at Mon Jun 22 10:43:53 IST 2026
[2026-06-22 10:43:53,311.311 INFO    ] ================================================
[2026-06-22 10:43:53,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:43:53
[2026-06-22 10:43:54,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:43:54,730.730 INFO    ] Initializing speech engine...
[2026-06-22 10:43:54,739.739 INFO    ] 2026-06-22 10:43:54
[2026-06-22 10:43:55,033.033 INFO    ] 2026-06-22 10:43:55
[2026-06-22 10:43:55,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:43:55,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:43:55,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:43:55,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:43:55,453.453 INFO    ] time= 22/06/2026 10:43:55
[2026-06-22 10:43:55,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:43:55,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:43:55,540.540 INFO    ] No existing commands found in stream
[2026-06-22 10:44:00,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:44:00,578.578 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-22 10:44:04,499.499 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:44:04,502.502 INFO    ] Checking for system updates...
[2026-06-22 10:44:04,537.537 INFO    ] 200
[2026-06-22 10:44:04,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:44:04,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:44:04,595.595 INFO    ] No update needed
[2026-06-22 10:44:04,598.598 INFO    ] Checking for camera pi updates...
[2026-06-22 10:44:04,635.635 INFO    ] 200
[2026-06-22 10:44:04,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:44:04,681.681 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:44:04,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:44:04,770.770 INFO    ] No camera update needed
[2026-06-22 10:44:04,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:44:04,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:44:04,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:44:04,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:44:06,828.828 INFO    ] ================================================
[2026-06-22 10:44:06,845.845 INFO    ] Launching Daemon at Mon Jun 22 10:44:06 IST 2026
[2026-06-22 10:44:06,856.856 INFO    ] ================================================
[2026-06-22 10:44:07,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:44:07
[2026-06-22 10:44:08,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:44:08,327.327 INFO    ] Initializing speech engine...
[2026-06-22 10:44:08,335.335 INFO    ] 2026-06-22 10:44:08
[2026-06-22 10:44:08,621.621 INFO    ] 2026-06-22 10:44:08
[2026-06-22 10:44:08,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:44:08,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:44:08,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:44:09,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:44:09,092.092 INFO    ] time= 22/06/2026 10:44:09
[2026-06-22 10:44:09,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:44:09,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:44:09,297.297 INFO    ] No existing commands found in stream
[2026-06-22 10:44:14,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:44:14,325.325 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-22 10:44:16,531.531 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:44:16,534.534 INFO    ] Checking for system updates...
[2026-06-22 10:44:16,571.571 INFO    ] 200
[2026-06-22 10:44:16,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:44:16,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:44:16,631.631 INFO    ] No update needed
[2026-06-22 10:44:16,634.634 INFO    ] Checking for camera pi updates...
[2026-06-22 10:44:16,672.672 INFO    ] 200
[2026-06-22 10:44:16,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:44:16,717.717 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:44:16,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:44:16,795.795 INFO    ] No camera update needed
[2026-06-22 10:44:16,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:44:16,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:44:16,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:44:16,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:44:18,855.855 INFO    ] ================================================
[2026-06-22 10:44:18,870.870 INFO    ] Launching Daemon at Mon Jun 22 10:44:18 IST 2026
[2026-06-22 10:44:18,881.881 INFO    ] ================================================
[2026-06-22 10:44:19,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:44:19
[2026-06-22 10:44:20,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:44:20,455.455 INFO    ] Initializing speech engine...
[2026-06-22 10:44:20,464.464 INFO    ] 2026-06-22 10:44:20
[2026-06-22 10:44:20,714.714 INFO    ] 2026-06-22 10:44:20
[2026-06-22 10:44:20,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:44:20,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:44:21,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:44:21,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:44:21,175.175 INFO    ] time= 22/06/2026 10:44:21
[2026-06-22 10:44:21,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:44:21,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:44:21,435.435 INFO    ] No existing commands found in stream
[2026-06-22 10:44:26,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:44:26,454.454 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-22 10:44:27,113.113 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:44:27,116.116 INFO    ] Checking for system updates...
[2026-06-22 10:44:27,152.152 INFO    ] 200
[2026-06-22 10:44:27,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:44:27,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:44:27,210.210 INFO    ] No update needed
[2026-06-22 10:44:27,212.212 INFO    ] Checking for camera pi updates...
[2026-06-22 10:44:27,250.250 INFO    ] 200
[2026-06-22 10:44:27,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:44:27,298.298 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:44:27,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:44:27,364.364 INFO    ] No camera update needed
[2026-06-22 10:44:27,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:44:27,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:44:27,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:44:27,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:44:29,420.420 INFO    ] ================================================
[2026-06-22 10:44:29,436.436 INFO    ] Launching Daemon at Mon Jun 22 10:44:29 IST 2026
[2026-06-22 10:44:29,447.447 INFO    ] ================================================
[2026-06-22 10:44:30,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:44:30
[2026-06-22 10:44:30,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:44:30,800.800 INFO    ] Initializing speech engine...
[2026-06-22 10:44:30,809.809 INFO    ] 2026-06-22 10:44:30
[2026-06-22 10:44:31,069.069 INFO    ] 2026-06-22 10:44:31
[2026-06-22 10:44:31,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:44:31,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:44:31,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:44:31,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:44:31,528.528 INFO    ] time= 22/06/2026 10:44:31
[2026-06-22 10:44:31,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:44:31,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:44:31,614.614 INFO    ] No existing commands found in stream
[2026-06-22 10:44:36,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:44:36,636.636 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-22 10:44:38,289.289 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:44:38,292.292 INFO    ] Checking for system updates...
[2026-06-22 10:44:38,331.331 INFO    ] 200
[2026-06-22 10:44:38,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:44:38,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:44:38,388.388 INFO    ] No update needed
[2026-06-22 10:44:38,391.391 INFO    ] Checking for camera pi updates...
[2026-06-22 10:44:38,428.428 INFO    ] 200
[2026-06-22 10:44:38,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:44:38,475.475 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:44:38,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:44:38,559.559 INFO    ] No camera update needed
[2026-06-22 10:44:38,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:44:38,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:44:38,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:44:38,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:44:40,617.617 INFO    ] ================================================
[2026-06-22 10:44:40,632.632 INFO    ] Launching Daemon at Mon Jun 22 10:44:40 IST 2026
[2026-06-22 10:44:40,643.643 INFO    ] ================================================
[2026-06-22 10:44:41,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:44:41
[2026-06-22 10:44:41,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:44:41,950.950 INFO    ] Initializing speech engine...
[2026-06-22 10:44:41,962.962 INFO    ] 2026-06-22 10:44:41
[2026-06-22 10:44:42,249.249 INFO    ] 2026-06-22 10:44:42
[2026-06-22 10:44:42,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:44:42,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:44:42,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:44:42,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:44:42,741.741 INFO    ] time= 22/06/2026 10:44:42
[2026-06-22 10:44:42,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:44:42,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:44:42,938.938 INFO    ] No existing commands found in stream
[2026-06-22 10:44:47,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:44:47,970.970 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-22 10:44:50,705.705 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:44:50,706.706 INFO    ] Checking for system updates...
[2026-06-22 10:44:50,727.727 INFO    ] 200
[2026-06-22 10:44:50,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:44:50,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:44:50,761.761 INFO    ] No update needed
[2026-06-22 10:44:50,762.762 INFO    ] Checking for camera pi updates...
[2026-06-22 10:44:50,782.782 INFO    ] 200
[2026-06-22 10:44:50,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:44:50,820.820 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:44:50,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:44:50,902.902 INFO    ] No camera update needed
[2026-06-22 10:44:50,905.905 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:44:50,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:44:50,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:44:50,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:44:52,962.962 INFO    ] ================================================
[2026-06-22 10:44:52,977.977 INFO    ] Launching Daemon at Mon Jun 22 10:44:52 IST 2026
[2026-06-22 10:44:52,988.988 INFO    ] ================================================
[2026-06-22 10:44:53,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:44:53
[2026-06-22 10:44:54,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:44:54,318.318 INFO    ] Initializing speech engine...
[2026-06-22 10:44:54,328.328 INFO    ] 2026-06-22 10:44:54
[2026-06-22 10:44:54,619.619 INFO    ] 2026-06-22 10:44:54
[2026-06-22 10:44:54,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:44:54,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:44:54,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:44:55,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:44:55,036.036 INFO    ] time= 22/06/2026 10:44:55
[2026-06-22 10:44:55,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:44:55,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:44:55,231.231 INFO    ] No existing commands found in stream
[2026-06-22 10:45:00,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:45:00,259.259 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-22 10:45:01,380.380 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:45:01,383.383 INFO    ] Checking for system updates...
[2026-06-22 10:45:01,418.418 INFO    ] 200
[2026-06-22 10:45:01,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:45:01,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:45:01,477.477 INFO    ] No update needed
[2026-06-22 10:45:01,479.479 INFO    ] Checking for camera pi updates...
[2026-06-22 10:45:01,516.516 INFO    ] 200
[2026-06-22 10:45:01,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:45:01,563.563 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:45:01,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:45:01,644.644 INFO    ] No camera update needed
[2026-06-22 10:45:01,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:45:01,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:45:01,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:45:01,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:45:03,740.740 INFO    ] ================================================
[2026-06-22 10:45:03,755.755 INFO    ] Launching Daemon at Mon Jun 22 10:45:03 IST 2026
[2026-06-22 10:45:03,771.771 INFO    ] ================================================
[2026-06-22 10:45:04,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:45:04
[2026-06-22 10:45:04,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:45:05,198.198 INFO    ] Initializing speech engine...
[2026-06-22 10:45:05,207.207 INFO    ] 2026-06-22 10:45:05
[2026-06-22 10:45:05,499.499 INFO    ] 2026-06-22 10:45:05
[2026-06-22 10:45:05,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:45:05,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:45:05,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:45:05,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:45:05,879.879 INFO    ] time= 22/06/2026 10:45:05
[2026-06-22 10:45:05,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:45:05,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:45:06,004.004 INFO    ] No existing commands found in stream
[2026-06-22 10:45:11,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:45:11,019.019 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-22 10:45:15,219.219 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:45:15,222.222 INFO    ] Checking for system updates...
[2026-06-22 10:45:15,258.258 INFO    ] 200
[2026-06-22 10:45:15,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:45:15,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:45:15,316.316 INFO    ] No update needed
[2026-06-22 10:45:15,319.319 INFO    ] Checking for camera pi updates...
[2026-06-22 10:45:15,354.354 INFO    ] 200
[2026-06-22 10:45:15,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:45:15,397.397 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:45:15,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:45:15,481.481 INFO    ] No camera update needed
[2026-06-22 10:45:15,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:45:15,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:45:15,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:45:15,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:45:17,537.537 INFO    ] ================================================
[2026-06-22 10:45:17,553.553 INFO    ] Launching Daemon at Mon Jun 22 10:45:17 IST 2026
[2026-06-22 10:45:17,565.565 INFO    ] ================================================
[2026-06-22 10:45:18,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:45:18
[2026-06-22 10:45:18,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:45:19,032.032 INFO    ] Initializing speech engine...
[2026-06-22 10:45:19,038.038 INFO    ] 2026-06-22 10:45:19
[2026-06-22 10:45:19,299.299 INFO    ] 2026-06-22 10:45:19
[2026-06-22 10:45:19,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:45:19,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:45:19,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:45:19,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:45:19,784.784 INFO    ] time= 22/06/2026 10:45:19
[2026-06-22 10:45:19,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:45:19,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:45:19,990.990 INFO    ] No existing commands found in stream
[2026-06-22 10:45:25,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:45:25,014.014 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-22 10:45:27,994.994 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:45:27,995.995 INFO    ] Checking for system updates...
[2026-06-22 10:45:28,017.017 INFO    ] 200
[2026-06-22 10:45:28,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:45:28,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:45:28,072.072 INFO    ] No update needed
[2026-06-22 10:45:28,074.074 INFO    ] Checking for camera pi updates...
[2026-06-22 10:45:28,111.111 INFO    ] 200
[2026-06-22 10:45:28,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:45:28,159.159 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:45:28,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:45:28,242.242 INFO    ] No camera update needed
[2026-06-22 10:45:28,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:45:28,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:45:28,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:45:28,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:45:30,297.297 INFO    ] ================================================
[2026-06-22 10:45:30,312.312 INFO    ] Launching Daemon at Mon Jun 22 10:45:30 IST 2026
[2026-06-22 10:45:30,323.323 INFO    ] ================================================
[2026-06-22 10:45:30,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:45:30
[2026-06-22 10:45:31,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:45:31,795.795 INFO    ] Initializing speech engine...
[2026-06-22 10:45:31,810.810 INFO    ] 2026-06-22 10:45:31
[2026-06-22 10:45:32,064.064 INFO    ] 2026-06-22 10:45:32
[2026-06-22 10:45:32,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:45:32,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:45:32,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:45:32,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:45:32,468.468 INFO    ] time= 22/06/2026 10:45:32
[2026-06-22 10:45:32,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:45:32,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:45:32,666.666 INFO    ] No existing commands found in stream
[2026-06-22 10:45:37,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:45:37,690.690 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-22 10:45:39,947.947 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:45:39,949.949 INFO    ] Checking for system updates...
[2026-06-22 10:45:39,970.970 INFO    ] 200
[2026-06-22 10:45:39,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:45:40,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:45:40,003.003 INFO    ] No update needed
[2026-06-22 10:45:40,005.005 INFO    ] Checking for camera pi updates...
[2026-06-22 10:45:40,025.025 INFO    ] 200
[2026-06-22 10:45:40,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:45:40,071.071 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:45:40,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:45:40,161.161 INFO    ] No camera update needed
[2026-06-22 10:45:40,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:45:40,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:45:40,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:45:40,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:45:42,218.218 INFO    ] ================================================
[2026-06-22 10:45:42,234.234 INFO    ] Launching Daemon at Mon Jun 22 10:45:42 IST 2026
[2026-06-22 10:45:42,246.246 INFO    ] ================================================
[2026-06-22 10:45:42,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:45:42
[2026-06-22 10:45:43,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:45:43,570.570 INFO    ] Initializing speech engine...
[2026-06-22 10:45:43,593.593 INFO    ] 2026-06-22 10:45:43
[2026-06-22 10:45:43,850.850 INFO    ] 2026-06-22 10:45:43
[2026-06-22 10:45:43,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:45:44,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:45:44,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:45:44,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:45:44,226.226 INFO    ] time= 22/06/2026 10:45:44
[2026-06-22 10:45:44,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:45:44,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:45:44,424.424 INFO    ] No existing commands found in stream
[2026-06-22 10:45:49,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:45:49,437.437 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-22 10:45:51,845.845 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:45:51,846.846 INFO    ] Checking for system updates...
[2026-06-22 10:45:51,867.867 INFO    ] 200
[2026-06-22 10:45:51,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:45:51,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:45:51,910.910 INFO    ] No update needed
[2026-06-22 10:45:51,911.911 INFO    ] Checking for camera pi updates...
[2026-06-22 10:45:51,931.931 INFO    ] 200
[2026-06-22 10:45:51,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:45:51,976.976 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:45:52,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:45:52,060.060 INFO    ] No camera update needed
[2026-06-22 10:45:52,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:45:52,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:45:52,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:45:52,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:45:54,119.119 INFO    ] ================================================
[2026-06-22 10:45:54,135.135 INFO    ] Launching Daemon at Mon Jun 22 10:45:54 IST 2026
[2026-06-22 10:45:54,146.146 INFO    ] ================================================
[2026-06-22 10:45:54,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:45:54
[2026-06-22 10:45:55,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:45:55,559.559 INFO    ] Initializing speech engine...
[2026-06-22 10:45:55,582.582 INFO    ] 2026-06-22 10:45:55
[2026-06-22 10:45:55,837.837 INFO    ] 2026-06-22 10:45:55
[2026-06-22 10:45:55,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:45:56,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:45:56,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:45:56,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:45:56,214.214 INFO    ] time= 22/06/2026 10:45:56
[2026-06-22 10:45:56,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:45:56,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:45:56,413.413 INFO    ] No existing commands found in stream
[2026-06-22 10:46:01,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:46:01,430.430 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-22 10:46:04,323.323 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:46:04,326.326 INFO    ] Checking for system updates...
[2026-06-22 10:46:04,366.366 INFO    ] 200
[2026-06-22 10:46:04,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:46:04,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:46:04,429.429 INFO    ] No update needed
[2026-06-22 10:46:04,432.432 INFO    ] Checking for camera pi updates...
[2026-06-22 10:46:04,465.465 INFO    ] 200
[2026-06-22 10:46:04,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:46:04,512.512 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:46:04,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:46:04,573.573 INFO    ] No camera update needed
[2026-06-22 10:46:04,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:46:04,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:46:04,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:46:04,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:46:06,629.629 INFO    ] ================================================
[2026-06-22 10:46:06,644.644 INFO    ] Launching Daemon at Mon Jun 22 10:46:06 IST 2026
[2026-06-22 10:46:06,655.655 INFO    ] ================================================
[2026-06-22 10:46:07,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:46:07
[2026-06-22 10:46:07,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:46:08,094.094 INFO    ] Initializing speech engine...
[2026-06-22 10:46:08,100.100 INFO    ] 2026-06-22 10:46:08
[2026-06-22 10:46:08,398.398 INFO    ] 2026-06-22 10:46:08
[2026-06-22 10:46:08,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:46:08,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:46:08,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:46:08,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:46:08,815.815 INFO    ] time= 22/06/2026 10:46:08
[2026-06-22 10:46:08,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:46:08,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:46:08,980.980 INFO    ] No existing commands found in stream
[2026-06-22 10:46:14,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:46:14,008.008 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-22 10:46:16,779.779 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:46:16,781.781 INFO    ] Checking for system updates...
[2026-06-22 10:46:16,821.821 INFO    ] 200
[2026-06-22 10:46:16,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:46:16,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:46:16,884.884 INFO    ] No update needed
[2026-06-22 10:46:16,887.887 INFO    ] Checking for camera pi updates...
[2026-06-22 10:46:16,924.924 INFO    ] 200
[2026-06-22 10:46:16,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:46:16,968.968 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:46:17,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:46:17,057.057 INFO    ] No camera update needed
[2026-06-22 10:46:17,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:46:17,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:46:17,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:46:17,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:46:19,113.113 INFO    ] ================================================
[2026-06-22 10:46:19,128.128 INFO    ] Launching Daemon at Mon Jun 22 10:46:19 IST 2026
[2026-06-22 10:46:19,139.139 INFO    ] ================================================
[2026-06-22 10:46:19,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:46:19
[2026-06-22 10:46:20,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:46:20,494.494 INFO    ] Initializing speech engine...
[2026-06-22 10:46:20,510.510 INFO    ] 2026-06-22 10:46:20
[2026-06-22 10:46:20,793.793 INFO    ] 2026-06-22 10:46:20
[2026-06-22 10:46:20,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:46:21,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:46:21,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:46:21,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:46:21,209.209 INFO    ] time= 22/06/2026 10:46:21
[2026-06-22 10:46:21,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:46:21,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:46:21,405.405 INFO    ] No existing commands found in stream
[2026-06-22 10:46:26,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:46:26,444.444 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-22 10:46:28,460.460 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:46:28,463.463 INFO    ] Checking for system updates...
[2026-06-22 10:46:28,500.500 INFO    ] 200
[2026-06-22 10:46:28,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:46:28,556.556 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:46:28,559.559 INFO    ] No update needed
[2026-06-22 10:46:28,561.561 INFO    ] Checking for camera pi updates...
[2026-06-22 10:46:28,595.595 INFO    ] 200
[2026-06-22 10:46:28,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:46:28,643.643 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:46:28,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:46:28,728.728 INFO    ] No camera update needed
[2026-06-22 10:46:28,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:46:28,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:46:28,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:46:28,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:46:30,784.784 INFO    ] ================================================
[2026-06-22 10:46:30,800.800 INFO    ] Launching Daemon at Mon Jun 22 10:46:30 IST 2026
[2026-06-22 10:46:30,810.810 INFO    ] ================================================
[2026-06-22 10:46:31,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:46:31
[2026-06-22 10:46:32,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:46:32,354.354 INFO    ] Initializing speech engine...
[2026-06-22 10:46:32,364.364 INFO    ] 2026-06-22 10:46:32
[2026-06-22 10:46:32,686.686 INFO    ] 2026-06-22 10:46:32
[2026-06-22 10:46:32,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:46:33,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:46:33,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:46:33,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:46:33,308.308 INFO    ] time= 22/06/2026 10:46:33
[2026-06-22 10:46:33,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:46:33,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:46:34,227.227 INFO    ] No existing commands found in stream
[2026-06-22 10:46:39,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:46:39,240.240 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-22 10:46:43,184.184 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:46:43,187.187 INFO    ] Checking for system updates...
[2026-06-22 10:46:43,223.223 INFO    ] 200
[2026-06-22 10:46:43,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:46:43,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:46:43,286.286 INFO    ] No update needed
[2026-06-22 10:46:43,289.289 INFO    ] Checking for camera pi updates...
[2026-06-22 10:46:43,325.325 INFO    ] 200
[2026-06-22 10:46:43,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:46:43,368.368 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:46:43,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:46:43,460.460 INFO    ] No camera update needed
[2026-06-22 10:46:43,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:46:43,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:46:43,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:46:43,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:46:45,517.517 INFO    ] ================================================
[2026-06-22 10:46:45,532.532 INFO    ] Launching Daemon at Mon Jun 22 10:46:45 IST 2026
[2026-06-22 10:46:45,543.543 INFO    ] ================================================
[2026-06-22 10:46:46,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:46:46
[2026-06-22 10:46:46,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:46:46,870.870 INFO    ] Initializing speech engine...
[2026-06-22 10:46:46,879.879 INFO    ] 2026-06-22 10:46:46
[2026-06-22 10:46:47,174.174 INFO    ] 2026-06-22 10:46:47
[2026-06-22 10:46:47,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:46:47,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:46:47,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:46:47,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:46:47,591.591 INFO    ] time= 22/06/2026 10:46:47
[2026-06-22 10:46:47,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:46:47,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:46:47,750.750 INFO    ] No existing commands found in stream
[2026-06-22 10:46:52,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:46:52,778.778 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-22 10:46:53,886.886 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:46:53,888.888 INFO    ] Checking for system updates...
[2026-06-22 10:46:53,910.910 INFO    ] 200
[2026-06-22 10:46:53,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:46:53,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:46:53,946.946 INFO    ] No update needed
[2026-06-22 10:46:53,948.948 INFO    ] Checking for camera pi updates...
[2026-06-22 10:46:53,970.970 INFO    ] 200
[2026-06-22 10:46:53,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:46:54,017.017 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:46:54,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:46:54,103.103 INFO    ] No camera update needed
[2026-06-22 10:46:54,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:46:54,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:46:54,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:46:54,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:46:56,162.162 INFO    ] ================================================
[2026-06-22 10:46:56,177.177 INFO    ] Launching Daemon at Mon Jun 22 10:46:56 IST 2026
[2026-06-22 10:46:56,188.188 INFO    ] ================================================
[2026-06-22 10:46:56,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:46:56
[2026-06-22 10:46:57,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:46:57,592.592 INFO    ] Initializing speech engine...
[2026-06-22 10:46:57,606.606 INFO    ] 2026-06-22 10:46:57
[2026-06-22 10:46:57,891.891 INFO    ] 2026-06-22 10:46:57
[2026-06-22 10:46:57,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:46:58,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:46:58,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:46:58,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:46:58,379.379 INFO    ] time= 22/06/2026 10:46:58
[2026-06-22 10:46:58,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:46:58,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:46:58,583.583 INFO    ] No existing commands found in stream
[2026-06-22 10:47:03,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:47:03,610.610 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-22 10:47:07,289.289 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:47:07,291.291 INFO    ] Checking for system updates...
[2026-06-22 10:47:07,323.323 INFO    ] 200
[2026-06-22 10:47:07,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:47:07,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:47:07,382.382 INFO    ] No update needed
[2026-06-22 10:47:07,385.385 INFO    ] Checking for camera pi updates...
[2026-06-22 10:47:07,423.423 INFO    ] 200
[2026-06-22 10:47:07,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:47:07,468.468 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:47:07,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:47:07,619.619 INFO    ] No camera update needed
[2026-06-22 10:47:07,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:47:07,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:47:07,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:47:07,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:47:09,676.676 INFO    ] ================================================
[2026-06-22 10:47:09,692.692 INFO    ] Launching Daemon at Mon Jun 22 10:47:09 IST 2026
[2026-06-22 10:47:09,702.702 INFO    ] ================================================
[2026-06-22 10:47:10,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:47:10
[2026-06-22 10:47:10,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:47:11,039.039 INFO    ] Initializing speech engine...
[2026-06-22 10:47:11,062.062 INFO    ] 2026-06-22 10:47:11
[2026-06-22 10:47:11,317.317 INFO    ] 2026-06-22 10:47:11
[2026-06-22 10:47:11,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:47:11,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:47:11,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:47:11,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:47:11,790.790 INFO    ] time= 22/06/2026 10:47:11
[2026-06-22 10:47:11,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:47:11,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:47:12,016.016 INFO    ] No existing commands found in stream
[2026-06-22 10:47:17,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:47:17,044.044 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-22 10:47:21,426.426 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:47:21,428.428 INFO    ] Checking for system updates...
[2026-06-22 10:47:21,469.469 INFO    ] 200
[2026-06-22 10:47:21,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:47:21,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:47:21,535.535 INFO    ] No update needed
[2026-06-22 10:47:21,537.537 INFO    ] Checking for camera pi updates...
[2026-06-22 10:47:21,571.571 INFO    ] 200
[2026-06-22 10:47:21,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:47:21,619.619 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:47:21,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:47:21,687.687 INFO    ] No camera update needed
[2026-06-22 10:47:21,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:47:21,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:47:21,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:47:21,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:47:23,745.745 INFO    ] ================================================
[2026-06-22 10:47:23,761.761 INFO    ] Launching Daemon at Mon Jun 22 10:47:23 IST 2026
[2026-06-22 10:47:23,772.772 INFO    ] ================================================
[2026-06-22 10:47:24,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:47:24
[2026-06-22 10:47:25,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:47:25,435.435 INFO    ] Initializing speech engine...
[2026-06-22 10:47:25,447.447 INFO    ] 2026-06-22 10:47:25
[2026-06-22 10:47:25,768.768 INFO    ] 2026-06-22 10:47:25
[2026-06-22 10:47:25,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:47:26,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:47:26,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:47:26,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:47:26,297.297 INFO    ] time= 22/06/2026 10:47:26
[2026-06-22 10:47:26,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:47:26,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:47:26,458.458 INFO    ] No existing commands found in stream
[2026-06-22 10:47:31,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:47:31,487.487 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-22 10:47:33,251.251 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:47:33,255.255 INFO    ] Checking for system updates...
[2026-06-22 10:47:33,296.296 INFO    ] 200
[2026-06-22 10:47:33,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:47:33,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:47:33,358.358 INFO    ] No update needed
[2026-06-22 10:47:33,361.361 INFO    ] Checking for camera pi updates...
[2026-06-22 10:47:33,400.400 INFO    ] 200
[2026-06-22 10:47:33,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:47:33,444.444 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:47:33,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:47:33,550.550 INFO    ] No camera update needed
[2026-06-22 10:47:33,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:47:33,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:47:33,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:47:33,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:47:35,607.607 INFO    ] ================================================
[2026-06-22 10:47:35,623.623 INFO    ] Launching Daemon at Mon Jun 22 10:47:35 IST 2026
[2026-06-22 10:47:35,633.633 INFO    ] ================================================
[2026-06-22 10:47:36,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:47:36
[2026-06-22 10:47:36,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:47:37,108.108 INFO    ] Initializing speech engine...
[2026-06-22 10:47:37,122.122 INFO    ] 2026-06-22 10:47:37
[2026-06-22 10:47:37,387.387 INFO    ] 2026-06-22 10:47:37
[2026-06-22 10:47:37,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:47:37,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:47:37,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:47:37,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:47:37,883.883 INFO    ] time= 22/06/2026 10:47:37
[2026-06-22 10:47:37,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:47:37,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:47:38,085.085 INFO    ] No existing commands found in stream
[2026-06-22 10:47:43,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:47:43,107.107 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-22 10:47:44,492.492 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:47:44,496.496 INFO    ] Checking for system updates...
[2026-06-22 10:47:44,533.533 INFO    ] 200
[2026-06-22 10:47:44,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:47:44,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:47:44,592.592 INFO    ] No update needed
[2026-06-22 10:47:44,595.595 INFO    ] Checking for camera pi updates...
[2026-06-22 10:47:44,632.632 INFO    ] 200
[2026-06-22 10:47:44,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:47:44,680.680 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:47:44,765.765 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:47:44,768.768 INFO    ] No camera update needed
[2026-06-22 10:47:44,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:47:44,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:47:44,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:47:44,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:47:46,826.826 INFO    ] ================================================
[2026-06-22 10:47:46,841.841 INFO    ] Launching Daemon at Mon Jun 22 10:47:46 IST 2026
[2026-06-22 10:47:46,852.852 INFO    ] ================================================
[2026-06-22 10:47:47,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:47:47
[2026-06-22 10:47:48,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:47:48,342.342 INFO    ] Initializing speech engine...
[2026-06-22 10:47:48,349.349 INFO    ] 2026-06-22 10:47:48
[2026-06-22 10:47:48,621.621 INFO    ] 2026-06-22 10:47:48
[2026-06-22 10:47:48,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:47:48,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:47:48,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:47:49,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:47:49,126.126 INFO    ] time= 22/06/2026 10:47:49
[2026-06-22 10:47:49,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:47:49,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:47:49,323.323 INFO    ] No existing commands found in stream
[2026-06-22 10:47:54,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:47:54,355.355 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-22 10:47:58,621.621 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:47:58,623.623 INFO    ] Checking for system updates...
[2026-06-22 10:47:58,645.645 INFO    ] 200
[2026-06-22 10:47:58,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:47:58,697.697 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:47:58,700.700 INFO    ] No update needed
[2026-06-22 10:47:58,703.703 INFO    ] Checking for camera pi updates...
[2026-06-22 10:47:58,737.737 INFO    ] 200
[2026-06-22 10:47:58,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:47:58,785.785 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:47:58,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:47:58,875.875 INFO    ] No camera update needed
[2026-06-22 10:47:58,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:47:58,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:47:58,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:47:58,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:48:00,933.933 INFO    ] ================================================
[2026-06-22 10:48:00,949.949 INFO    ] Launching Daemon at Mon Jun 22 10:48:00 IST 2026
[2026-06-22 10:48:00,960.960 INFO    ] ================================================
[2026-06-22 10:48:01,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:48:01
[2026-06-22 10:48:02,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:48:02,760.760 INFO    ] Initializing speech engine...
[2026-06-22 10:48:02,772.772 INFO    ] 2026-06-22 10:48:02
[2026-06-22 10:48:03,093.093 INFO    ] 2026-06-22 10:48:03
[2026-06-22 10:48:03,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:48:03,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:48:03,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:48:03,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:48:03,690.690 INFO    ] time= 22/06/2026 10:48:03
[2026-06-22 10:48:03,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:48:03,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:48:03,872.872 INFO    ] No existing commands found in stream
[2026-06-22 10:48:08,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:48:08,900.900 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-22 10:48:12,400.400 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:48:12,402.402 INFO    ] Checking for system updates...
[2026-06-22 10:48:12,439.439 INFO    ] 200
[2026-06-22 10:48:12,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:48:12,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:48:12,506.506 INFO    ] No update needed
[2026-06-22 10:48:12,516.516 INFO    ] Checking for camera pi updates...
[2026-06-22 10:48:12,557.557 INFO    ] 200
[2026-06-22 10:48:12,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:48:12,603.603 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:48:12,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:48:12,695.695 INFO    ] No camera update needed
[2026-06-22 10:48:12,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:48:12,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:48:12,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:48:12,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:48:14,756.756 INFO    ] ================================================
[2026-06-22 10:48:14,772.772 INFO    ] Launching Daemon at Mon Jun 22 10:48:14 IST 2026
[2026-06-22 10:48:14,783.783 INFO    ] ================================================
[2026-06-22 10:48:15,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:48:15
[2026-06-22 10:48:15,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:48:16,247.247 INFO    ] Initializing speech engine...
[2026-06-22 10:48:16,262.262 INFO    ] 2026-06-22 10:48:16
[2026-06-22 10:48:16,539.539 INFO    ] 2026-06-22 10:48:16
[2026-06-22 10:48:16,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:48:16,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:48:16,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:48:16,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:48:16,968.968 INFO    ] time= 22/06/2026 10:48:16
[2026-06-22 10:48:16,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:48:16,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:48:17,137.137 INFO    ] No existing commands found in stream
[2026-06-22 10:48:22,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:48:22,170.170 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-22 10:48:22,682.682 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:48:22,684.684 INFO    ] Checking for system updates...
[2026-06-22 10:48:22,720.720 INFO    ] 200
[2026-06-22 10:48:22,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:48:22,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:48:22,778.778 INFO    ] No update needed
[2026-06-22 10:48:22,780.780 INFO    ] Checking for camera pi updates...
[2026-06-22 10:48:22,814.814 INFO    ] 200
[2026-06-22 10:48:22,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:48:22,857.857 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:48:22,936.936 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:48:22,938.938 INFO    ] No camera update needed
[2026-06-22 10:48:22,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:48:22,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:48:22,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:48:22,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:48:25,002.002 INFO    ] ================================================
[2026-06-22 10:48:25,018.018 INFO    ] Launching Daemon at Mon Jun 22 10:48:25 IST 2026
[2026-06-22 10:48:25,029.029 INFO    ] ================================================
[2026-06-22 10:48:25,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:48:25
[2026-06-22 10:48:26,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:48:26,351.351 INFO    ] Initializing speech engine...
[2026-06-22 10:48:26,358.358 INFO    ] 2026-06-22 10:48:26
[2026-06-22 10:48:26,654.654 INFO    ] 2026-06-22 10:48:26
[2026-06-22 10:48:26,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:48:26,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:48:26,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:48:27,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:48:27,037.037 INFO    ] time= 22/06/2026 10:48:27
[2026-06-22 10:48:27,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:48:27,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:48:27,167.167 INFO    ] No existing commands found in stream
[2026-06-22 10:48:32,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:48:32,185.185 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-22 10:48:33,453.453 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:48:33,456.456 INFO    ] Checking for system updates...
[2026-06-22 10:48:33,494.494 INFO    ] 200
[2026-06-22 10:48:33,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:48:33,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:48:33,556.556 INFO    ] No update needed
[2026-06-22 10:48:33,558.558 INFO    ] Checking for camera pi updates...
[2026-06-22 10:48:33,592.592 INFO    ] 200
[2026-06-22 10:48:33,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:48:33,635.635 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:48:33,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:48:33,741.741 INFO    ] No camera update needed
[2026-06-22 10:48:33,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:48:33,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:48:33,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:48:33,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:48:35,798.798 INFO    ] ================================================
[2026-06-22 10:48:35,814.814 INFO    ] Launching Daemon at Mon Jun 22 10:48:35 IST 2026
[2026-06-22 10:48:35,826.826 INFO    ] ================================================
[2026-06-22 10:48:36,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:48:36
[2026-06-22 10:48:36,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:48:37,173.173 INFO    ] Initializing speech engine...
[2026-06-22 10:48:37,182.182 INFO    ] 2026-06-22 10:48:37
[2026-06-22 10:48:37,432.432 INFO    ] 2026-06-22 10:48:37
[2026-06-22 10:48:37,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:48:37,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:48:37,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:48:37,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:48:38,002.002 INFO    ] time= 22/06/2026 10:48:37
[2026-06-22 10:48:38,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:48:38,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:48:38,145.145 INFO    ] No existing commands found in stream
[2026-06-22 10:48:43,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:48:43,173.173 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-22 10:48:48,488.488 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:48:48,491.491 INFO    ] Checking for system updates...
[2026-06-22 10:48:48,529.529 INFO    ] 200
[2026-06-22 10:48:48,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:48:48,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:48:48,590.590 INFO    ] No update needed
[2026-06-22 10:48:48,592.592 INFO    ] Checking for camera pi updates...
[2026-06-22 10:48:48,628.628 INFO    ] 200
[2026-06-22 10:48:48,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:48:48,672.672 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:48:48,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:48:48,775.775 INFO    ] No camera update needed
[2026-06-22 10:48:48,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:48:48,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:48:48,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:48:48,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:48:50,832.832 INFO    ] ================================================
[2026-06-22 10:48:50,848.848 INFO    ] Launching Daemon at Mon Jun 22 10:48:50 IST 2026
[2026-06-22 10:48:50,860.860 INFO    ] ================================================
[2026-06-22 10:48:51,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:48:51
[2026-06-22 10:48:52,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:48:52,338.338 INFO    ] Initializing speech engine...
[2026-06-22 10:48:52,347.347 INFO    ] 2026-06-22 10:48:52
[2026-06-22 10:48:52,649.649 INFO    ] 2026-06-22 10:48:52
[2026-06-22 10:48:52,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:48:52,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:48:52,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:48:53,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:48:53,044.044 INFO    ] time= 22/06/2026 10:48:53
[2026-06-22 10:48:53,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:48:53,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:48:53,171.171 INFO    ] No existing commands found in stream
[2026-06-22 10:48:58,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:48:58,187.187 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-22 10:48:59,076.076 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:48:59,077.077 INFO    ] Checking for system updates...
[2026-06-22 10:48:59,105.105 INFO    ] 200
[2026-06-22 10:48:59,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:48:59,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:48:59,163.163 INFO    ] No update needed
[2026-06-22 10:48:59,166.166 INFO    ] Checking for camera pi updates...
[2026-06-22 10:48:59,200.200 INFO    ] 200
[2026-06-22 10:48:59,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:48:59,243.243 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:48:59,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:48:59,330.330 INFO    ] No camera update needed
[2026-06-22 10:48:59,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:48:59,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:48:59,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:48:59,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:49:01,385.385 INFO    ] ================================================
[2026-06-22 10:49:01,401.401 INFO    ] Launching Daemon at Mon Jun 22 10:49:01 IST 2026
[2026-06-22 10:49:01,413.413 INFO    ] ================================================
[2026-06-22 10:49:01,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:49:01
[2026-06-22 10:49:02,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:49:03,069.069 INFO    ] Initializing speech engine...
[2026-06-22 10:49:03,080.080 INFO    ] 2026-06-22 10:49:03
[2026-06-22 10:49:03,385.385 INFO    ] 2026-06-22 10:49:03
[2026-06-22 10:49:03,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:49:03,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:49:03,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:49:03,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:49:03,923.923 INFO    ] time= 22/06/2026 10:49:03
[2026-06-22 10:49:03,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:49:04,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:49:04,110.110 INFO    ] No existing commands found in stream
[2026-06-22 10:49:09,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:49:09,126.126 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-22 10:49:10,883.883 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:49:10,886.886 INFO    ] Checking for system updates...
[2026-06-22 10:49:10,922.922 INFO    ] 200
[2026-06-22 10:49:10,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:49:10,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:49:10,981.981 INFO    ] No update needed
[2026-06-22 10:49:10,983.983 INFO    ] Checking for camera pi updates...
[2026-06-22 10:49:11,020.020 INFO    ] 200
[2026-06-22 10:49:11,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:49:11,063.063 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:49:11,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:49:11,216.216 INFO    ] No camera update needed
[2026-06-22 10:49:11,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:49:11,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:49:11,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:49:11,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:49:13,273.273 INFO    ] ================================================
[2026-06-22 10:49:13,288.288 INFO    ] Launching Daemon at Mon Jun 22 10:49:13 IST 2026
[2026-06-22 10:49:13,299.299 INFO    ] ================================================
[2026-06-22 10:49:13,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:49:13
[2026-06-22 10:49:14,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:49:14,790.790 INFO    ] Initializing speech engine...
[2026-06-22 10:49:14,800.800 INFO    ] 2026-06-22 10:49:14
[2026-06-22 10:49:15,087.087 INFO    ] 2026-06-22 10:49:15
[2026-06-22 10:49:15,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:49:15,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:49:15,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:49:15,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:49:15,566.566 INFO    ] time= 22/06/2026 10:49:15
[2026-06-22 10:49:15,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:49:15,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:49:15,762.762 INFO    ] No existing commands found in stream
[2026-06-22 10:49:20,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:49:20,788.788 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-22 10:49:23,634.634 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:49:23,637.637 INFO    ] Checking for system updates...
[2026-06-22 10:49:23,673.673 INFO    ] 200
[2026-06-22 10:49:23,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:49:23,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:49:23,731.731 INFO    ] No update needed
[2026-06-22 10:49:23,733.733 INFO    ] Checking for camera pi updates...
[2026-06-22 10:49:23,766.766 INFO    ] 200
[2026-06-22 10:49:23,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:49:23,810.810 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:49:23,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:49:23,897.897 INFO    ] No camera update needed
[2026-06-22 10:49:23,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:49:23,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:49:23,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:49:23,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:49:25,954.954 INFO    ] ================================================
[2026-06-22 10:49:25,970.970 INFO    ] Launching Daemon at Mon Jun 22 10:49:25 IST 2026
[2026-06-22 10:49:25,981.981 INFO    ] ================================================
[2026-06-22 10:49:26,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:49:26
[2026-06-22 10:49:27,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:49:27,420.420 INFO    ] Initializing speech engine...
[2026-06-22 10:49:27,429.429 INFO    ] 2026-06-22 10:49:27
[2026-06-22 10:49:27,689.689 INFO    ] 2026-06-22 10:49:27
[2026-06-22 10:49:27,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:49:27,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:49:27,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:49:28,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:49:28,180.180 INFO    ] time= 22/06/2026 10:49:28
[2026-06-22 10:49:28,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:49:28,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:49:28,384.384 INFO    ] No existing commands found in stream
[2026-06-22 10:49:33,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:49:33,399.399 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-22 10:49:34,691.691 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:49:34,694.694 INFO    ] Checking for system updates...
[2026-06-22 10:49:34,730.730 INFO    ] 200
[2026-06-22 10:49:34,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:49:34,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:49:34,794.794 INFO    ] No update needed
[2026-06-22 10:49:34,797.797 INFO    ] Checking for camera pi updates...
[2026-06-22 10:49:34,831.831 INFO    ] 200
[2026-06-22 10:49:34,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:49:34,874.874 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:49:34,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:49:34,956.956 INFO    ] No camera update needed
[2026-06-22 10:49:34,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:49:34,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:49:34,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:49:34,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:49:37,016.016 INFO    ] ================================================
[2026-06-22 10:49:37,031.031 INFO    ] Launching Daemon at Mon Jun 22 10:49:37 IST 2026
[2026-06-22 10:49:37,042.042 INFO    ] ================================================
[2026-06-22 10:49:37,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:49:37
[2026-06-22 10:49:38,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:49:38,533.533 INFO    ] Initializing speech engine...
[2026-06-22 10:49:38,541.541 INFO    ] 2026-06-22 10:49:38
[2026-06-22 10:49:38,807.807 INFO    ] 2026-06-22 10:49:38
[2026-06-22 10:49:38,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:49:39,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:49:39,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:49:39,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:49:39,354.354 INFO    ] time= 22/06/2026 10:49:39
[2026-06-22 10:49:39,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:49:39,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:49:39,535.535 INFO    ] No existing commands found in stream
[2026-06-22 10:49:44,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:49:44,569.569 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-22 10:49:48,926.926 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:49:48,928.928 INFO    ] Checking for system updates...
[2026-06-22 10:49:48,949.949 INFO    ] 200
[2026-06-22 10:49:48,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:49:48,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:49:48,984.984 INFO    ] No update needed
[2026-06-22 10:49:48,985.985 INFO    ] Checking for camera pi updates...
[2026-06-22 10:49:49,005.005 INFO    ] 200
[2026-06-22 10:49:49,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:49:49,029.029 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:49:49,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:49:49,110.110 INFO    ] No camera update needed
[2026-06-22 10:49:49,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:49:49,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:49:49,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:49:49,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:49:51,165.165 INFO    ] ================================================
[2026-06-22 10:49:51,181.181 INFO    ] Launching Daemon at Mon Jun 22 10:49:51 IST 2026
[2026-06-22 10:49:51,192.192 INFO    ] ================================================
[2026-06-22 10:49:51,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:49:51
[2026-06-22 10:49:52,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:49:52,506.506 INFO    ] Initializing speech engine...
[2026-06-22 10:49:52,528.528 INFO    ] 2026-06-22 10:49:52
[2026-06-22 10:49:52,780.780 INFO    ] 2026-06-22 10:49:52
[2026-06-22 10:49:52,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:49:53,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:49:53,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:49:53,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:49:53,259.259 INFO    ] time= 22/06/2026 10:49:53
[2026-06-22 10:49:53,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:49:53,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:49:53,485.485 INFO    ] No existing commands found in stream
[2026-06-22 10:49:58,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:49:58,513.513 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-22 10:50:00,120.120 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:50:00,122.122 INFO    ] Checking for system updates...
[2026-06-22 10:50:00,158.158 INFO    ] 200
[2026-06-22 10:50:00,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:50:00,218.218 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:50:00,221.221 INFO    ] No update needed
[2026-06-22 10:50:00,223.223 INFO    ] Checking for camera pi updates...
[2026-06-22 10:50:00,257.257 INFO    ] 200
[2026-06-22 10:50:00,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:50:00,305.305 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:50:00,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:50:00,415.415 INFO    ] No camera update needed
[2026-06-22 10:50:00,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:50:00,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:50:00,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:50:00,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:50:02,501.501 INFO    ] ================================================
[2026-06-22 10:50:02,523.523 INFO    ] Launching Daemon at Mon Jun 22 10:50:02 IST 2026
[2026-06-22 10:50:02,540.540 INFO    ] ================================================
[2026-06-22 10:50:03,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:50:03
[2026-06-22 10:50:03,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:50:04,216.216 INFO    ] Initializing speech engine...
[2026-06-22 10:50:04,223.223 INFO    ] 2026-06-22 10:50:04
[2026-06-22 10:50:04,493.493 INFO    ] 2026-06-22 10:50:04
[2026-06-22 10:50:04,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:50:04,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:50:04,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:50:04,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:50:05,037.037 INFO    ] time= 22/06/2026 10:50:05
[2026-06-22 10:50:05,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:50:05,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:50:05,188.188 INFO    ] No existing commands found in stream
[2026-06-22 10:50:10,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:50:10,208.208 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-22 10:50:14,467.467 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:50:14,470.470 INFO    ] Checking for system updates...
[2026-06-22 10:50:14,509.509 INFO    ] 200
[2026-06-22 10:50:14,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:50:14,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:50:14,576.576 INFO    ] No update needed
[2026-06-22 10:50:14,579.579 INFO    ] Checking for camera pi updates...
[2026-06-22 10:50:14,614.614 INFO    ] 200
[2026-06-22 10:50:14,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:50:14,657.657 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:50:14,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:50:14,739.739 INFO    ] No camera update needed
[2026-06-22 10:50:14,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:50:14,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:50:14,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:50:14,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:50:16,797.797 INFO    ] ================================================
[2026-06-22 10:50:16,812.812 INFO    ] Launching Daemon at Mon Jun 22 10:50:16 IST 2026
[2026-06-22 10:50:16,824.824 INFO    ] ================================================
[2026-06-22 10:50:17,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:50:17
[2026-06-22 10:50:17,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:50:18,287.287 INFO    ] Initializing speech engine...
[2026-06-22 10:50:18,301.301 INFO    ] 2026-06-22 10:50:18
[2026-06-22 10:50:18,576.576 INFO    ] 2026-06-22 10:50:18
[2026-06-22 10:50:18,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:50:18,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:50:18,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:50:19,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:50:19,114.114 INFO    ] time= 22/06/2026 10:50:19
[2026-06-22 10:50:19,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:50:19,139.139 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:50:19,268.268 INFO    ] No existing commands found in stream
[2026-06-22 10:50:24,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:50:24,292.292 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-22 10:50:28,617.617 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:50:28,619.619 INFO    ] Checking for system updates...
[2026-06-22 10:50:28,639.639 INFO    ] 200
[2026-06-22 10:50:28,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:50:28,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:50:28,674.674 INFO    ] No update needed
[2026-06-22 10:50:28,676.676 INFO    ] Checking for camera pi updates...
[2026-06-22 10:50:28,711.711 INFO    ] 200
[2026-06-22 10:50:28,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:50:28,755.755 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:50:28,844.844 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:50:28,847.847 INFO    ] No camera update needed
[2026-06-22 10:50:28,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:50:28,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:50:28,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:50:28,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:50:30,903.903 INFO    ] ================================================
[2026-06-22 10:50:30,918.918 INFO    ] Launching Daemon at Mon Jun 22 10:50:30 IST 2026
[2026-06-22 10:50:30,930.930 INFO    ] ================================================
[2026-06-22 10:50:31,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:50:31
[2026-06-22 10:50:32,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:50:32,470.470 INFO    ] Initializing speech engine...
[2026-06-22 10:50:32,485.485 INFO    ] 2026-06-22 10:50:32
[2026-06-22 10:50:32,758.758 INFO    ] 2026-06-22 10:50:32
[2026-06-22 10:50:32,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:50:33,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:50:33,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:50:33,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:50:33,380.380 INFO    ] time= 22/06/2026 10:50:33
[2026-06-22 10:50:33,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:50:33,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:50:33,544.544 INFO    ] No existing commands found in stream
[2026-06-22 10:50:38,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:50:38,567.567 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-22 10:50:39,505.505 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:50:39,508.508 INFO    ] Checking for system updates...
[2026-06-22 10:50:39,544.544 INFO    ] 200
[2026-06-22 10:50:39,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:50:39,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:50:39,602.602 INFO    ] No update needed
[2026-06-22 10:50:39,604.604 INFO    ] Checking for camera pi updates...
[2026-06-22 10:50:39,638.638 INFO    ] 200
[2026-06-22 10:50:39,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:50:39,681.681 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:50:39,755.755 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:50:39,758.758 INFO    ] No camera update needed
[2026-06-22 10:50:39,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:50:39,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:50:39,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:50:39,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:50:41,813.813 INFO    ] ================================================
[2026-06-22 10:50:41,829.829 INFO    ] Launching Daemon at Mon Jun 22 10:50:41 IST 2026
[2026-06-22 10:50:41,840.840 INFO    ] ================================================
[2026-06-22 10:50:42,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:50:42
[2026-06-22 10:50:42,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:50:43,203.203 INFO    ] Initializing speech engine...
[2026-06-22 10:50:43,212.212 INFO    ] 2026-06-22 10:50:43
[2026-06-22 10:50:43,472.472 INFO    ] 2026-06-22 10:50:43
[2026-06-22 10:50:43,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:50:43,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:50:43,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:50:43,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:50:43,960.960 INFO    ] time= 22/06/2026 10:50:43
[2026-06-22 10:50:44,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:50:44,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:50:44,254.254 INFO    ] No existing commands found in stream
[2026-06-22 10:50:49,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:50:49,277.277 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-22 10:50:51,843.843 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:50:51,846.846 INFO    ] Checking for system updates...
[2026-06-22 10:50:51,885.885 INFO    ] 200
[2026-06-22 10:50:51,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:50:51,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:50:51,942.942 INFO    ] No update needed
[2026-06-22 10:50:51,945.945 INFO    ] Checking for camera pi updates...
[2026-06-22 10:50:51,978.978 INFO    ] 200
[2026-06-22 10:50:51,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:50:52,022.022 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:50:52,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:50:52,109.109 INFO    ] No camera update needed
[2026-06-22 10:50:52,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:50:52,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:50:52,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:50:52,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:50:54,163.163 INFO    ] ================================================
[2026-06-22 10:50:54,180.180 INFO    ] Launching Daemon at Mon Jun 22 10:50:54 IST 2026
[2026-06-22 10:50:54,191.191 INFO    ] ================================================
[2026-06-22 10:50:54,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:50:54
[2026-06-22 10:50:55,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:50:55,648.648 INFO    ] Initializing speech engine...
[2026-06-22 10:50:55,653.653 INFO    ] 2026-06-22 10:50:55
[2026-06-22 10:50:55,921.921 INFO    ] 2026-06-22 10:50:55
[2026-06-22 10:50:55,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:50:56,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:50:56,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:50:56,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:50:56,467.467 INFO    ] time= 22/06/2026 10:50:56
[2026-06-22 10:50:56,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:50:56,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:50:56,624.624 INFO    ] No existing commands found in stream
[2026-06-22 10:51:01,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:51:01,649.649 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-22 10:51:05,743.743 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:51:05,746.746 INFO    ] Checking for system updates...
[2026-06-22 10:51:05,786.786 INFO    ] 200
[2026-06-22 10:51:05,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:51:05,847.847 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:51:05,850.850 INFO    ] No update needed
[2026-06-22 10:51:05,852.852 INFO    ] Checking for camera pi updates...
[2026-06-22 10:51:05,887.887 INFO    ] 200
[2026-06-22 10:51:05,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:51:05,930.930 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:51:06,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:51:06,014.014 INFO    ] No camera update needed
[2026-06-22 10:51:06,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:51:06,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:51:06,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:51:06,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:51:08,073.073 INFO    ] ================================================
[2026-06-22 10:51:08,089.089 INFO    ] Launching Daemon at Mon Jun 22 10:51:08 IST 2026
[2026-06-22 10:51:08,100.100 INFO    ] ================================================
[2026-06-22 10:51:08,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:51:08
[2026-06-22 10:51:09,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:51:09,552.552 INFO    ] Initializing speech engine...
[2026-06-22 10:51:09,562.562 INFO    ] 2026-06-22 10:51:09
[2026-06-22 10:51:09,810.810 INFO    ] 2026-06-22 10:51:09
[2026-06-22 10:51:09,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:51:10,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:51:10,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:51:10,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:51:10,307.307 INFO    ] time= 22/06/2026 10:51:10
[2026-06-22 10:51:10,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:51:10,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:51:10,490.490 INFO    ] No existing commands found in stream
[2026-06-22 10:51:15,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:51:15,528.528 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-22 10:51:17,512.512 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:51:17,515.515 INFO    ] Checking for system updates...
[2026-06-22 10:51:17,551.551 INFO    ] 200
[2026-06-22 10:51:17,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:51:17,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:51:17,614.614 INFO    ] No update needed
[2026-06-22 10:51:17,616.616 INFO    ] Checking for camera pi updates...
[2026-06-22 10:51:17,653.653 INFO    ] 200
[2026-06-22 10:51:17,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:51:17,695.695 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:51:17,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:51:17,855.855 INFO    ] No camera update needed
[2026-06-22 10:51:17,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:51:17,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:51:17,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:51:17,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:51:19,912.912 INFO    ] ================================================
[2026-06-22 10:51:19,928.928 INFO    ] Launching Daemon at Mon Jun 22 10:51:19 IST 2026
[2026-06-22 10:51:19,938.938 INFO    ] ================================================
[2026-06-22 10:51:20,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:51:20
[2026-06-22 10:51:21,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:51:21,367.367 INFO    ] Initializing speech engine...
[2026-06-22 10:51:21,386.386 INFO    ] 2026-06-22 10:51:21
[2026-06-22 10:51:21,651.651 INFO    ] 2026-06-22 10:51:21
[2026-06-22 10:51:21,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:51:21,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:51:21,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:51:22,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:51:22,062.062 INFO    ] time= 22/06/2026 10:51:22
[2026-06-22 10:51:22,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:51:22,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:51:22,153.153 INFO    ] No existing commands found in stream
[2026-06-22 10:51:27,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:51:27,186.186 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-22 10:51:28,423.423 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:51:28,426.426 INFO    ] Checking for system updates...
[2026-06-22 10:51:28,472.472 INFO    ] 200
[2026-06-22 10:51:28,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:51:28,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:51:28,534.534 INFO    ] No update needed
[2026-06-22 10:51:28,536.536 INFO    ] Checking for camera pi updates...
[2026-06-22 10:51:28,573.573 INFO    ] 200
[2026-06-22 10:51:28,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:51:28,616.616 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:51:28,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:51:28,700.700 INFO    ] No camera update needed
[2026-06-22 10:51:28,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:51:28,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:51:28,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:51:28,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:51:30,756.756 INFO    ] ================================================
[2026-06-22 10:51:30,771.771 INFO    ] Launching Daemon at Mon Jun 22 10:51:30 IST 2026
[2026-06-22 10:51:30,782.782 INFO    ] ================================================
[2026-06-22 10:51:31,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:51:31
[2026-06-22 10:51:31,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:51:32,159.159 INFO    ] Initializing speech engine...
[2026-06-22 10:51:32,167.167 INFO    ] 2026-06-22 10:51:32
[2026-06-22 10:51:32,473.473 INFO    ] 2026-06-22 10:51:32
[2026-06-22 10:51:32,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:51:32,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:51:32,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:51:32,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:51:32,910.910 INFO    ] time= 22/06/2026 10:51:32
[2026-06-22 10:51:32,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:51:32,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:51:33,080.080 INFO    ] No existing commands found in stream
[2026-06-22 10:51:38,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:51:38,113.113 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-22 10:51:40,020.020 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:51:40,023.023 INFO    ] Checking for system updates...
[2026-06-22 10:51:40,059.059 INFO    ] 200
[2026-06-22 10:51:40,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:51:40,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:51:40,116.116 INFO    ] No update needed
[2026-06-22 10:51:40,119.119 INFO    ] Checking for camera pi updates...
[2026-06-22 10:51:40,152.152 INFO    ] 200
[2026-06-22 10:51:40,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:51:40,195.195 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:51:40,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:51:40,278.278 INFO    ] No camera update needed
[2026-06-22 10:51:40,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:51:40,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:51:40,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:51:40,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:51:42,336.336 INFO    ] ================================================
[2026-06-22 10:51:42,351.351 INFO    ] Launching Daemon at Mon Jun 22 10:51:42 IST 2026
[2026-06-22 10:51:42,362.362 INFO    ] ================================================
[2026-06-22 10:51:42,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:51:42
[2026-06-22 10:51:43,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:51:43,797.797 INFO    ] Initializing speech engine...
[2026-06-22 10:51:43,817.817 INFO    ] 2026-06-22 10:51:43
[2026-06-22 10:51:44,078.078 INFO    ] 2026-06-22 10:51:44
[2026-06-22 10:51:44,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:51:44,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:51:44,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:51:44,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:51:44,481.481 INFO    ] time= 22/06/2026 10:51:44
[2026-06-22 10:51:44,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:51:44,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:51:44,674.674 INFO    ] No existing commands found in stream
[2026-06-22 10:51:49,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:51:49,707.707 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-22 10:51:52,331.331 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:51:52,334.334 INFO    ] Checking for system updates...
[2026-06-22 10:51:52,370.370 INFO    ] 200
[2026-06-22 10:51:52,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:51:52,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:51:52,430.430 INFO    ] No update needed
[2026-06-22 10:51:52,432.432 INFO    ] Checking for camera pi updates...
[2026-06-22 10:51:52,468.468 INFO    ] 200
[2026-06-22 10:51:52,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:51:52,514.514 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:51:52,594.594 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:51:52,596.596 INFO    ] No camera update needed
[2026-06-22 10:51:52,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:51:52,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:51:52,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:51:52,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:51:54,652.652 INFO    ] ================================================
[2026-06-22 10:51:54,667.667 INFO    ] Launching Daemon at Mon Jun 22 10:51:54 IST 2026
[2026-06-22 10:51:54,678.678 INFO    ] ================================================
[2026-06-22 10:51:55,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:51:55
[2026-06-22 10:51:55,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:51:56,136.136 INFO    ] Initializing speech engine...
[2026-06-22 10:51:56,145.145 INFO    ] 2026-06-22 10:51:56
[2026-06-22 10:51:56,406.406 INFO    ] 2026-06-22 10:51:56
[2026-06-22 10:51:56,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:51:56,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:51:56,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:51:56,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:51:56,802.802 INFO    ] time= 22/06/2026 10:51:56
[2026-06-22 10:51:56,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:51:56,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:51:56,994.994 INFO    ] No existing commands found in stream
[2026-06-22 10:52:02,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:52:02,012.012 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-22 10:52:02,806.806 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:52:02,809.809 INFO    ] Checking for system updates...
[2026-06-22 10:52:02,846.846 INFO    ] 200
[2026-06-22 10:52:02,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:52:02,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:52:02,922.922 INFO    ] No update needed
[2026-06-22 10:52:02,925.925 INFO    ] Checking for camera pi updates...
[2026-06-22 10:52:02,960.960 INFO    ] 200
[2026-06-22 10:52:02,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:52:03,018.018 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:52:03,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:52:03,072.072 INFO    ] No camera update needed
[2026-06-22 10:52:03,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:52:03,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:52:03,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:52:03,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:52:05,130.130 INFO    ] ================================================
[2026-06-22 10:52:05,146.146 INFO    ] Launching Daemon at Mon Jun 22 10:52:05 IST 2026
[2026-06-22 10:52:05,156.156 INFO    ] ================================================
[2026-06-22 10:52:05,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:52:05
[2026-06-22 10:52:06,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:52:06,677.677 INFO    ] Initializing speech engine...
[2026-06-22 10:52:06,688.688 INFO    ] 2026-06-22 10:52:06
[2026-06-22 10:52:06,971.971 INFO    ] 2026-06-22 10:52:06
[2026-06-22 10:52:07,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:52:07,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:52:07,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:52:07,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:52:07,501.501 INFO    ] time= 22/06/2026 10:52:07
[2026-06-22 10:52:07,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:52:07,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:52:07,652.652 INFO    ] No existing commands found in stream
[2026-06-22 10:52:12,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:52:12,670.670 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-22 10:52:15,588.588 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:52:15,591.591 INFO    ] Checking for system updates...
[2026-06-22 10:52:15,629.629 INFO    ] 200
[2026-06-22 10:52:15,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:52:15,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:52:15,687.687 INFO    ] No update needed
[2026-06-22 10:52:15,690.690 INFO    ] Checking for camera pi updates...
[2026-06-22 10:52:15,728.728 INFO    ] 200
[2026-06-22 10:52:15,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:52:15,776.776 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:52:15,864.864 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:52:15,867.867 INFO    ] No camera update needed
[2026-06-22 10:52:15,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:52:15,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:52:15,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:52:15,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:52:17,927.927 INFO    ] ================================================
[2026-06-22 10:52:17,942.942 INFO    ] Launching Daemon at Mon Jun 22 10:52:17 IST 2026
[2026-06-22 10:52:17,953.953 INFO    ] ================================================
[2026-06-22 10:52:18,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:52:18
[2026-06-22 10:52:19,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:52:19,275.275 INFO    ] Initializing speech engine...
[2026-06-22 10:52:19,290.290 INFO    ] 2026-06-22 10:52:19
[2026-06-22 10:52:19,570.570 INFO    ] 2026-06-22 10:52:19
[2026-06-22 10:52:19,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:52:19,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:52:19,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:52:19,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:52:19,945.945 INFO    ] time= 22/06/2026 10:52:19
[2026-06-22 10:52:19,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:52:19,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:52:20,070.070 INFO    ] No existing commands found in stream
[2026-06-22 10:52:25,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:52:25,088.088 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-22 10:52:28,683.683 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:52:28,686.686 INFO    ] Checking for system updates...
[2026-06-22 10:52:28,732.732 INFO    ] 200
[2026-06-22 10:52:28,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:52:28,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:52:28,789.789 INFO    ] No update needed
[2026-06-22 10:52:28,791.791 INFO    ] Checking for camera pi updates...
[2026-06-22 10:52:28,826.826 INFO    ] 200
[2026-06-22 10:52:28,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:52:28,870.870 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:52:28,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:52:28,937.937 INFO    ] No camera update needed
[2026-06-22 10:52:28,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:52:28,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:52:28,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:52:28,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:52:31,994.994 INFO    ] ================================================
[2026-06-22 10:52:31,011.011 INFO    ] Launching Daemon at Mon Jun 22 10:52:31 IST 2026
[2026-06-22 10:52:31,024.024 INFO    ] ================================================
[2026-06-22 10:52:31,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:52:31
[2026-06-22 10:52:32,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:52:32,702.702 INFO    ] Initializing speech engine...
[2026-06-22 10:52:32,711.711 INFO    ] 2026-06-22 10:52:32
[2026-06-22 10:52:33,034.034 INFO    ] 2026-06-22 10:52:33
[2026-06-22 10:52:33,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:52:33,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:52:33,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:52:33,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:52:33,591.591 INFO    ] time= 22/06/2026 10:52:33
[2026-06-22 10:52:33,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:52:33,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:52:33,803.803 INFO    ] No existing commands found in stream
[2026-06-22 10:52:38,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:52:38,819.819 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-22 10:52:41,273.273 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:52:41,276.276 INFO    ] Checking for system updates...
[2026-06-22 10:52:41,314.314 INFO    ] 200
[2026-06-22 10:52:41,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:52:41,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:52:41,372.372 INFO    ] No update needed
[2026-06-22 10:52:41,374.374 INFO    ] Checking for camera pi updates...
[2026-06-22 10:52:41,408.408 INFO    ] 200
[2026-06-22 10:52:41,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:52:41,451.451 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:52:41,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:52:41,536.536 INFO    ] No camera update needed
[2026-06-22 10:52:41,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:52:41,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:52:41,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:52:41,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:52:43,594.594 INFO    ] ================================================
[2026-06-22 10:52:43,610.610 INFO    ] Launching Daemon at Mon Jun 22 10:52:43 IST 2026
[2026-06-22 10:52:43,621.621 INFO    ] ================================================
[2026-06-22 10:52:44,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:52:44
[2026-06-22 10:52:44,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:52:45,060.060 INFO    ] Initializing speech engine...
[2026-06-22 10:52:45,067.067 INFO    ] 2026-06-22 10:52:45
[2026-06-22 10:52:45,324.324 INFO    ] 2026-06-22 10:52:45
[2026-06-22 10:52:45,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:52:45,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:52:45,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:52:45,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:52:45,786.786 INFO    ] time= 22/06/2026 10:52:45
[2026-06-22 10:52:45,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:52:45,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:52:45,952.952 INFO    ] No existing commands found in stream
[2026-06-22 10:52:50,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:52:50,986.986 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-22 10:52:52,466.466 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:52:52,468.468 INFO    ] Checking for system updates...
[2026-06-22 10:52:52,504.504 INFO    ] 200
[2026-06-22 10:52:52,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:52:52,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:52:52,561.561 INFO    ] No update needed
[2026-06-22 10:52:52,563.563 INFO    ] Checking for camera pi updates...
[2026-06-22 10:52:52,597.597 INFO    ] 200
[2026-06-22 10:52:52,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:52:52,640.640 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:52:52,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:52:52,700.700 INFO    ] No camera update needed
[2026-06-22 10:52:52,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:52:52,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:52:52,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:52:52,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:52:54,755.755 INFO    ] ================================================
[2026-06-22 10:52:54,770.770 INFO    ] Launching Daemon at Mon Jun 22 10:52:54 IST 2026
[2026-06-22 10:52:54,780.780 INFO    ] ================================================
[2026-06-22 10:52:55,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:52:55
[2026-06-22 10:52:55,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:52:56,184.184 INFO    ] Initializing speech engine...
[2026-06-22 10:52:56,195.195 INFO    ] 2026-06-22 10:52:56
[2026-06-22 10:52:56,450.450 INFO    ] 2026-06-22 10:52:56
[2026-06-22 10:52:56,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:52:56,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:52:56,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:52:56,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:52:56,995.995 INFO    ] time= 22/06/2026 10:52:56
[2026-06-22 10:52:57,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:52:57,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:52:57,145.145 INFO    ] No existing commands found in stream
[2026-06-22 10:53:02,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:53:02,160.160 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-22 10:53:03,100.100 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:53:03,103.103 INFO    ] Checking for system updates...
[2026-06-22 10:53:03,140.140 INFO    ] 200
[2026-06-22 10:53:03,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:53:03,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:53:03,206.206 INFO    ] No update needed
[2026-06-22 10:53:03,209.209 INFO    ] Checking for camera pi updates...
[2026-06-22 10:53:03,246.246 INFO    ] 200
[2026-06-22 10:53:03,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:53:03,294.294 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:53:03,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:53:03,380.380 INFO    ] No camera update needed
[2026-06-22 10:53:03,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:53:03,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:53:03,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:53:03,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:53:05,436.436 INFO    ] ================================================
[2026-06-22 10:53:05,450.450 INFO    ] Launching Daemon at Mon Jun 22 10:53:05 IST 2026
[2026-06-22 10:53:05,461.461 INFO    ] ================================================
[2026-06-22 10:53:06,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:53:06
[2026-06-22 10:53:06,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:53:07,017.017 INFO    ] Initializing speech engine...
[2026-06-22 10:53:07,028.028 INFO    ] 2026-06-22 10:53:07
[2026-06-22 10:53:07,275.275 INFO    ] 2026-06-22 10:53:07
[2026-06-22 10:53:07,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:53:07,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:53:07,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:53:07,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:53:07,832.832 INFO    ] time= 22/06/2026 10:53:07
[2026-06-22 10:53:07,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:53:07,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:53:07,989.989 INFO    ] No existing commands found in stream
[2026-06-22 10:53:13,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:53:13,011.011 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-22 10:53:14,908.908 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:53:14,911.911 INFO    ] Checking for system updates...
[2026-06-22 10:53:14,947.947 INFO    ] 200
[2026-06-22 10:53:14,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:53:15,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:53:15,005.005 INFO    ] No update needed
[2026-06-22 10:53:15,007.007 INFO    ] Checking for camera pi updates...
[2026-06-22 10:53:15,041.041 INFO    ] 200
[2026-06-22 10:53:15,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:53:15,083.083 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:53:15,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:53:15,170.170 INFO    ] No camera update needed
[2026-06-22 10:53:15,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:53:15,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:53:15,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:53:15,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:53:17,224.224 INFO    ] ================================================
[2026-06-22 10:53:17,239.239 INFO    ] Launching Daemon at Mon Jun 22 10:53:17 IST 2026
[2026-06-22 10:53:17,250.250 INFO    ] ================================================
[2026-06-22 10:53:17,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:53:17
[2026-06-22 10:53:18,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:53:18,617.617 INFO    ] Initializing speech engine...
[2026-06-22 10:53:18,627.627 INFO    ] 2026-06-22 10:53:18
[2026-06-22 10:53:18,889.889 INFO    ] 2026-06-22 10:53:18
[2026-06-22 10:53:18,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:53:19,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:53:19,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:53:19,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:53:19,432.432 INFO    ] time= 22/06/2026 10:53:19
[2026-06-22 10:53:19,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:53:19,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:53:19,574.574 INFO    ] No existing commands found in stream
[2026-06-22 10:53:24,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:53:24,601.601 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-22 10:53:25,097.097 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:53:25,099.099 INFO    ] Checking for system updates...
[2026-06-22 10:53:25,120.120 INFO    ] 200
[2026-06-22 10:53:25,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:53:25,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:53:25,160.160 INFO    ] No update needed
[2026-06-22 10:53:25,163.163 INFO    ] Checking for camera pi updates...
[2026-06-22 10:53:25,202.202 INFO    ] 200
[2026-06-22 10:53:25,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:53:25,246.246 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:53:25,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:53:25,430.430 INFO    ] No camera update needed
[2026-06-22 10:53:25,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:53:25,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:53:25,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:53:25,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:53:27,486.486 INFO    ] ================================================
[2026-06-22 10:53:27,502.502 INFO    ] Launching Daemon at Mon Jun 22 10:53:27 IST 2026
[2026-06-22 10:53:27,512.512 INFO    ] ================================================
[2026-06-22 10:53:28,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:53:28
[2026-06-22 10:53:28,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:53:29,052.052 INFO    ] Initializing speech engine...
[2026-06-22 10:53:29,059.059 INFO    ] 2026-06-22 10:53:29
[2026-06-22 10:53:29,367.367 INFO    ] 2026-06-22 10:53:29
[2026-06-22 10:53:29,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:53:29,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:53:29,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:53:29,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:53:29,872.872 INFO    ] time= 22/06/2026 10:53:29
[2026-06-22 10:53:29,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:53:29,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:53:30,025.025 INFO    ] No existing commands found in stream
[2026-06-22 10:53:35,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:53:35,044.044 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-22 10:53:35,883.883 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:53:35,886.886 INFO    ] Checking for system updates...
[2026-06-22 10:53:35,922.922 INFO    ] 200
[2026-06-22 10:53:35,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:53:35,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:53:35,983.983 INFO    ] No update needed
[2026-06-22 10:53:35,985.985 INFO    ] Checking for camera pi updates...
[2026-06-22 10:53:36,019.019 INFO    ] 200
[2026-06-22 10:53:36,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:53:36,069.069 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:53:36,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:53:36,172.172 INFO    ] No camera update needed
[2026-06-22 10:53:36,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:53:36,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:53:36,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:53:36,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:53:38,227.227 INFO    ] ================================================
[2026-06-22 10:53:38,241.241 INFO    ] Launching Daemon at Mon Jun 22 10:53:38 IST 2026
[2026-06-22 10:53:38,252.252 INFO    ] ================================================
[2026-06-22 10:53:38,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:53:38
[2026-06-22 10:53:39,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:53:39,643.643 INFO    ] Initializing speech engine...
[2026-06-22 10:53:39,649.649 INFO    ] 2026-06-22 10:53:39
[2026-06-22 10:53:39,910.910 INFO    ] 2026-06-22 10:53:39
[2026-06-22 10:53:39,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:53:40,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:53:40,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:53:40,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:53:40,372.372 INFO    ] time= 22/06/2026 10:53:40
[2026-06-22 10:53:40,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:53:40,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:53:40,591.591 INFO    ] No existing commands found in stream
[2026-06-22 10:53:45,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:53:45,620.620 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-22 10:53:47,124.124 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:53:47,125.125 INFO    ] Checking for system updates...
[2026-06-22 10:53:47,147.147 INFO    ] 200
[2026-06-22 10:53:47,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:53:47,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:53:47,212.212 INFO    ] No update needed
[2026-06-22 10:53:47,215.215 INFO    ] Checking for camera pi updates...
[2026-06-22 10:53:47,249.249 INFO    ] 200
[2026-06-22 10:53:47,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:53:47,292.292 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:53:47,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:53:47,378.378 INFO    ] No camera update needed
[2026-06-22 10:53:47,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:53:47,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:53:47,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:53:47,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:53:49,436.436 INFO    ] ================================================
[2026-06-22 10:53:49,451.451 INFO    ] Launching Daemon at Mon Jun 22 10:53:49 IST 2026
[2026-06-22 10:53:49,462.462 INFO    ] ================================================
[2026-06-22 10:53:50,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:53:50
[2026-06-22 10:53:50,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:53:50,773.773 INFO    ] Initializing speech engine...
[2026-06-22 10:53:50,787.787 INFO    ] 2026-06-22 10:53:50
[2026-06-22 10:53:51,051.051 INFO    ] 2026-06-22 10:53:51
[2026-06-22 10:53:51,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:53:51,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:53:51,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:53:51,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:53:51,525.525 INFO    ] time= 22/06/2026 10:53:51
[2026-06-22 10:53:51,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:53:51,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:53:51,755.755 INFO    ] No existing commands found in stream
[2026-06-22 10:53:56,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:53:56,773.773 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-22 10:53:58,404.404 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:53:58,406.406 INFO    ] Checking for system updates...
[2026-06-22 10:53:58,443.443 INFO    ] 200
[2026-06-22 10:53:58,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:53:58,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:53:58,503.503 INFO    ] No update needed
[2026-06-22 10:53:58,506.506 INFO    ] Checking for camera pi updates...
[2026-06-22 10:53:58,543.543 INFO    ] 200
[2026-06-22 10:53:58,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:53:58,597.597 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:53:58,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:53:58,680.680 INFO    ] No camera update needed
[2026-06-22 10:53:58,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:53:58,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:53:58,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:53:58,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:54:00,738.738 INFO    ] ================================================
[2026-06-22 10:54:00,753.753 INFO    ] Launching Daemon at Mon Jun 22 10:54:00 IST 2026
[2026-06-22 10:54:00,763.763 INFO    ] ================================================
[2026-06-22 10:54:01,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:54:01
[2026-06-22 10:54:02,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:54:02,517.517 INFO    ] Initializing speech engine...
[2026-06-22 10:54:02,527.527 INFO    ] 2026-06-22 10:54:02
[2026-06-22 10:54:02,809.809 INFO    ] 2026-06-22 10:54:02
[2026-06-22 10:54:02,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:54:03,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:54:03,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:54:03,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:54:03,289.289 INFO    ] time= 22/06/2026 10:54:03
[2026-06-22 10:54:03,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:54:03,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:54:03,598.598 INFO    ] No existing commands found in stream
[2026-06-22 10:54:08,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:54:08,632.632 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-22 10:54:11,320.320 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:54:11,322.322 INFO    ] Checking for system updates...
[2026-06-22 10:54:11,342.342 INFO    ] 200
[2026-06-22 10:54:11,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:54:11,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:54:11,394.394 INFO    ] No update needed
[2026-06-22 10:54:11,396.396 INFO    ] Checking for camera pi updates...
[2026-06-22 10:54:11,434.434 INFO    ] 200
[2026-06-22 10:54:11,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:54:11,478.478 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:54:11,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:54:11,584.584 INFO    ] No camera update needed
[2026-06-22 10:54:11,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:54:11,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:54:11,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:54:11,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:54:13,642.642 INFO    ] ================================================
[2026-06-22 10:54:13,657.657 INFO    ] Launching Daemon at Mon Jun 22 10:54:13 IST 2026
[2026-06-22 10:54:13,667.667 INFO    ] ================================================
[2026-06-22 10:54:14,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:54:14
[2026-06-22 10:54:14,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:54:15,075.075 INFO    ] Initializing speech engine...
[2026-06-22 10:54:15,084.084 INFO    ] 2026-06-22 10:54:15
[2026-06-22 10:54:15,335.335 INFO    ] 2026-06-22 10:54:15
[2026-06-22 10:54:15,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:54:15,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:54:15,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:54:15,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:54:15,744.744 INFO    ] time= 22/06/2026 10:54:15
[2026-06-22 10:54:15,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:54:15,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:54:15,828.828 INFO    ] No existing commands found in stream
[2026-06-22 10:54:20,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:54:20,847.847 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-22 10:54:24,703.703 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:54:24,706.706 INFO    ] Checking for system updates...
[2026-06-22 10:54:24,741.741 INFO    ] 200
[2026-06-22 10:54:24,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:54:24,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:54:24,799.799 INFO    ] No update needed
[2026-06-22 10:54:24,802.802 INFO    ] Checking for camera pi updates...
[2026-06-22 10:54:24,839.839 INFO    ] 200
[2026-06-22 10:54:24,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:54:24,882.882 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:54:24,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:54:24,935.935 INFO    ] No camera update needed
[2026-06-22 10:54:24,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:54:24,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:54:24,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:54:24,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:54:26,991.991 INFO    ] ================================================
[2026-06-22 10:54:27,007.007 INFO    ] Launching Daemon at Mon Jun 22 10:54:27 IST 2026
[2026-06-22 10:54:27,017.017 INFO    ] ================================================
[2026-06-22 10:54:27,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:54:27
[2026-06-22 10:54:28,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:54:28,515.515 INFO    ] Initializing speech engine...
[2026-06-22 10:54:28,526.526 INFO    ] 2026-06-22 10:54:28
[2026-06-22 10:54:28,837.837 INFO    ] 2026-06-22 10:54:28
[2026-06-22 10:54:28,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:54:29,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:54:29,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:54:29,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:54:29,353.353 INFO    ] time= 22/06/2026 10:54:29
[2026-06-22 10:54:29,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:54:29,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:54:29,499.499 INFO    ] No existing commands found in stream
[2026-06-22 10:54:34,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:54:34,521.521 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-22 10:54:35,653.653 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:54:35,655.655 INFO    ] Checking for system updates...
[2026-06-22 10:54:35,693.693 INFO    ] 200
[2026-06-22 10:54:35,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:54:35,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:54:35,755.755 INFO    ] No update needed
[2026-06-22 10:54:35,757.757 INFO    ] Checking for camera pi updates...
[2026-06-22 10:54:35,790.790 INFO    ] 200
[2026-06-22 10:54:35,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:54:35,833.833 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:54:35,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:54:35,920.920 INFO    ] No camera update needed
[2026-06-22 10:54:35,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:54:35,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:54:35,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:54:35,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:54:37,977.977 INFO    ] ================================================
[2026-06-22 10:54:37,992.992 INFO    ] Launching Daemon at Mon Jun 22 10:54:37 IST 2026
[2026-06-22 10:54:38,003.003 INFO    ] ================================================
[2026-06-22 10:54:38,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:54:38
[2026-06-22 10:54:39,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:54:39,551.551 INFO    ] Initializing speech engine...
[2026-06-22 10:54:39,560.560 INFO    ] 2026-06-22 10:54:39
[2026-06-22 10:54:39,831.831 INFO    ] 2026-06-22 10:54:39
[2026-06-22 10:54:39,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:54:40,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:54:40,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:54:40,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:54:40,382.382 INFO    ] time= 22/06/2026 10:54:40
[2026-06-22 10:54:40,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:54:40,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:54:40,539.539 INFO    ] No existing commands found in stream
[2026-06-22 10:54:45,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:54:45,577.577 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-22 10:54:47,889.889 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:54:47,891.891 INFO    ] Checking for system updates...
[2026-06-22 10:54:47,913.913 INFO    ] 200
[2026-06-22 10:54:47,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:54:47,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:54:47,949.949 INFO    ] No update needed
[2026-06-22 10:54:47,951.951 INFO    ] Checking for camera pi updates...
[2026-06-22 10:54:47,970.970 INFO    ] 200
[2026-06-22 10:54:47,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:54:48,001.001 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:54:48,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:54:48,106.106 INFO    ] No camera update needed
[2026-06-22 10:54:48,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:54:48,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:54:48,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:54:48,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:54:50,165.165 INFO    ] ================================================
[2026-06-22 10:54:50,181.181 INFO    ] Launching Daemon at Mon Jun 22 10:54:50 IST 2026
[2026-06-22 10:54:50,191.191 INFO    ] ================================================
[2026-06-22 10:54:50,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:54:50
[2026-06-22 10:54:51,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:54:51,513.513 INFO    ] Initializing speech engine...
[2026-06-22 10:54:51,520.520 INFO    ] 2026-06-22 10:54:51
[2026-06-22 10:54:51,820.820 INFO    ] 2026-06-22 10:54:51
[2026-06-22 10:54:51,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:54:52,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:54:52,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:54:52,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:54:52,204.204 INFO    ] time= 22/06/2026 10:54:52
[2026-06-22 10:54:52,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:54:52,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:54:52,337.337 INFO    ] No existing commands found in stream
[2026-06-22 10:54:57,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:54:57,369.369 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-22 10:54:59,351.351 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:54:59,354.354 INFO    ] Checking for system updates...
[2026-06-22 10:54:59,391.391 INFO    ] 200
[2026-06-22 10:54:59,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:54:59,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:54:59,451.451 INFO    ] No update needed
[2026-06-22 10:54:59,453.453 INFO    ] Checking for camera pi updates...
[2026-06-22 10:54:59,487.487 INFO    ] 200
[2026-06-22 10:54:59,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:54:59,536.536 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:54:59,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:54:59,640.640 INFO    ] No camera update needed
[2026-06-22 10:54:59,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:54:59,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:54:59,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:54:59,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:55:01,702.702 INFO    ] ================================================
[2026-06-22 10:55:01,725.725 INFO    ] Launching Daemon at Mon Jun 22 10:55:01 IST 2026
[2026-06-22 10:55:01,741.741 INFO    ] ================================================
[2026-06-22 10:55:02,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:55:02
[2026-06-22 10:55:03,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:55:03,320.320 INFO    ] Initializing speech engine...
[2026-06-22 10:55:03,328.328 INFO    ] 2026-06-22 10:55:03
[2026-06-22 10:55:03,622.622 INFO    ] 2026-06-22 10:55:03
[2026-06-22 10:55:03,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:55:03,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:55:03,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:55:03,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:55:04,001.001 INFO    ] time= 22/06/2026 10:55:03
[2026-06-22 10:55:04,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:55:04,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:55:04,124.124 INFO    ] No existing commands found in stream
[2026-06-22 10:55:09,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:55:09,139.139 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-22 10:55:13,304.304 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:55:13,307.307 INFO    ] Checking for system updates...
[2026-06-22 10:55:13,344.344 INFO    ] 200
[2026-06-22 10:55:13,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:55:13,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:55:13,402.402 INFO    ] No update needed
[2026-06-22 10:55:13,404.404 INFO    ] Checking for camera pi updates...
[2026-06-22 10:55:13,440.440 INFO    ] 200
[2026-06-22 10:55:13,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:55:13,486.486 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:55:13,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:55:13,538.538 INFO    ] No camera update needed
[2026-06-22 10:55:13,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:55:13,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:55:13,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:55:13,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:55:15,593.593 INFO    ] ================================================
[2026-06-22 10:55:15,608.608 INFO    ] Launching Daemon at Mon Jun 22 10:55:15 IST 2026
[2026-06-22 10:55:15,619.619 INFO    ] ================================================
[2026-06-22 10:55:16,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:55:16
[2026-06-22 10:55:16,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:55:16,951.951 INFO    ] Initializing speech engine...
[2026-06-22 10:55:16,967.967 INFO    ] 2026-06-22 10:55:16
[2026-06-22 10:55:17,234.234 INFO    ] 2026-06-22 10:55:17
[2026-06-22 10:55:17,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:55:17,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:55:17,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:55:17,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:55:17,606.606 INFO    ] time= 22/06/2026 10:55:17
[2026-06-22 10:55:17,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:55:17,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:55:17,728.728 INFO    ] No existing commands found in stream
[2026-06-22 10:55:22,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:55:22,743.743 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-22 10:55:25,312.312 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:55:25,315.315 INFO    ] Checking for system updates...
[2026-06-22 10:55:25,351.351 INFO    ] 200
[2026-06-22 10:55:25,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:55:25,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:55:25,411.411 INFO    ] No update needed
[2026-06-22 10:55:25,413.413 INFO    ] Checking for camera pi updates...
[2026-06-22 10:55:25,446.446 INFO    ] 200
[2026-06-22 10:55:25,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:55:25,490.490 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:55:25,569.569 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:55:25,571.571 INFO    ] No camera update needed
[2026-06-22 10:55:25,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:55:25,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:55:25,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:55:25,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:55:27,626.626 INFO    ] ================================================
[2026-06-22 10:55:27,641.641 INFO    ] Launching Daemon at Mon Jun 22 10:55:27 IST 2026
[2026-06-22 10:55:27,651.651 INFO    ] ================================================
[2026-06-22 10:55:28,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:55:28
[2026-06-22 10:55:28,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:55:28,989.989 INFO    ] Initializing speech engine...
[2026-06-22 10:55:29,002.002 INFO    ] 2026-06-22 10:55:28
[2026-06-22 10:55:29,267.267 INFO    ] 2026-06-22 10:55:29
[2026-06-22 10:55:29,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:55:29,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:55:29,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:55:29,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:55:29,676.676 INFO    ] time= 22/06/2026 10:55:29
[2026-06-22 10:55:29,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:55:29,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:55:29,857.857 INFO    ] No existing commands found in stream
[2026-06-22 10:55:34,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:55:34,885.885 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-22 10:55:38,733.733 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:55:38,735.735 INFO    ] Checking for system updates...
[2026-06-22 10:55:38,775.775 INFO    ] 200
[2026-06-22 10:55:38,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:55:38,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:55:38,832.832 INFO    ] No update needed
[2026-06-22 10:55:38,834.834 INFO    ] Checking for camera pi updates...
[2026-06-22 10:55:38,868.868 INFO    ] 200
[2026-06-22 10:55:38,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:55:38,913.913 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:55:38,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:55:38,999.999 INFO    ] No camera update needed
[2026-06-22 10:55:39,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:55:39,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:55:39,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:55:39,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:55:41,055.055 INFO    ] ================================================
[2026-06-22 10:55:41,070.070 INFO    ] Launching Daemon at Mon Jun 22 10:55:41 IST 2026
[2026-06-22 10:55:41,081.081 INFO    ] ================================================
[2026-06-22 10:55:41,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:55:41
[2026-06-22 10:55:42,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:55:42,403.403 INFO    ] Initializing speech engine...
[2026-06-22 10:55:42,416.416 INFO    ] 2026-06-22 10:55:42
[2026-06-22 10:55:42,696.696 INFO    ] 2026-06-22 10:55:42
[2026-06-22 10:55:42,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:55:42,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:55:42,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:55:43,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:55:43,094.094 INFO    ] time= 22/06/2026 10:55:43
[2026-06-22 10:55:43,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:55:43,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:55:43,232.232 INFO    ] No existing commands found in stream
[2026-06-22 10:55:48,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:55:48,244.244 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-22 10:55:50,078.078 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:55:50,080.080 INFO    ] Checking for system updates...
[2026-06-22 10:55:50,100.100 INFO    ] 200
[2026-06-22 10:55:50,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:55:50,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:55:50,147.147 INFO    ] No update needed
[2026-06-22 10:55:50,150.150 INFO    ] Checking for camera pi updates...
[2026-06-22 10:55:50,187.187 INFO    ] 200
[2026-06-22 10:55:50,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:55:50,230.230 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:55:50,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:55:50,323.323 INFO    ] No camera update needed
[2026-06-22 10:55:50,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:55:50,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:55:50,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:55:50,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:55:52,379.379 INFO    ] ================================================
[2026-06-22 10:55:52,393.393 INFO    ] Launching Daemon at Mon Jun 22 10:55:52 IST 2026
[2026-06-22 10:55:52,404.404 INFO    ] ================================================
[2026-06-22 10:55:52,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:55:52
[2026-06-22 10:55:53,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:55:53,819.819 INFO    ] Initializing speech engine...
[2026-06-22 10:55:53,842.842 INFO    ] 2026-06-22 10:55:53
[2026-06-22 10:55:54,096.096 INFO    ] 2026-06-22 10:55:54
[2026-06-22 10:55:54,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:55:54,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:55:54,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:55:54,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:55:54,548.548 INFO    ] time= 22/06/2026 10:55:54
[2026-06-22 10:55:54,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:55:54,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:55:54,784.784 INFO    ] No existing commands found in stream
[2026-06-22 10:55:59,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:55:59,812.812 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-22 10:56:04,179.179 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:56:04,182.182 INFO    ] Checking for system updates...
[2026-06-22 10:56:04,218.218 INFO    ] 200
[2026-06-22 10:56:04,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:56:04,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:56:04,275.275 INFO    ] No update needed
[2026-06-22 10:56:04,278.278 INFO    ] Checking for camera pi updates...
[2026-06-22 10:56:04,313.313 INFO    ] 200
[2026-06-22 10:56:04,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:56:04,356.356 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:56:04,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:56:04,465.465 INFO    ] No camera update needed
[2026-06-22 10:56:04,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:56:04,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:56:04,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:56:04,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:56:06,522.522 INFO    ] ================================================
[2026-06-22 10:56:06,538.538 INFO    ] Launching Daemon at Mon Jun 22 10:56:06 IST 2026
[2026-06-22 10:56:06,548.548 INFO    ] ================================================
[2026-06-22 10:56:07,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:56:07
[2026-06-22 10:56:07,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:56:08,003.003 INFO    ] Initializing speech engine...
[2026-06-22 10:56:08,012.012 INFO    ] 2026-06-22 10:56:08
[2026-06-22 10:56:08,262.262 INFO    ] 2026-06-22 10:56:08
[2026-06-22 10:56:08,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:56:08,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:56:08,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:56:08,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:56:08,743.743 INFO    ] time= 22/06/2026 10:56:08
[2026-06-22 10:56:08,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:56:08,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:56:08,939.939 INFO    ] No existing commands found in stream
[2026-06-22 10:56:13,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:56:13,969.969 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-22 10:56:14,542.542 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:56:14,545.545 INFO    ] Checking for system updates...
[2026-06-22 10:56:14,581.581 INFO    ] 200
[2026-06-22 10:56:14,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:56:14,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:56:14,640.640 INFO    ] No update needed
[2026-06-22 10:56:14,642.642 INFO    ] Checking for camera pi updates...
[2026-06-22 10:56:14,677.677 INFO    ] 200
[2026-06-22 10:56:14,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:56:14,720.720 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:56:14,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:56:14,822.822 INFO    ] No camera update needed
[2026-06-22 10:56:14,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:56:14,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:56:14,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:56:14,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:56:16,880.880 INFO    ] ================================================
[2026-06-22 10:56:16,895.895 INFO    ] Launching Daemon at Mon Jun 22 10:56:16 IST 2026
[2026-06-22 10:56:16,907.907 INFO    ] ================================================
[2026-06-22 10:56:17,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:56:17
[2026-06-22 10:56:17,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:56:18,229.229 INFO    ] Initializing speech engine...
[2026-06-22 10:56:18,238.238 INFO    ] 2026-06-22 10:56:18
[2026-06-22 10:56:18,525.525 INFO    ] 2026-06-22 10:56:18
[2026-06-22 10:56:18,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:56:18,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:56:18,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:56:18,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:56:18,934.934 INFO    ] time= 22/06/2026 10:56:18
[2026-06-22 10:56:18,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:56:18,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:56:19,019.019 INFO    ] No existing commands found in stream
[2026-06-22 10:56:24,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:56:24,037.037 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-22 10:56:27,644.644 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:56:27,647.647 INFO    ] Checking for system updates...
[2026-06-22 10:56:27,683.683 INFO    ] 200
[2026-06-22 10:56:27,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:56:27,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:56:27,736.736 INFO    ] No update needed
[2026-06-22 10:56:27,738.738 INFO    ] Checking for camera pi updates...
[2026-06-22 10:56:27,759.759 INFO    ] 200
[2026-06-22 10:56:27,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:56:27,792.792 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:56:27,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:56:27,889.889 INFO    ] No camera update needed
[2026-06-22 10:56:27,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:56:27,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:56:27,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:56:27,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:56:29,948.948 INFO    ] ================================================
[2026-06-22 10:56:29,963.963 INFO    ] Launching Daemon at Mon Jun 22 10:56:29 IST 2026
[2026-06-22 10:56:29,974.974 INFO    ] ================================================
[2026-06-22 10:56:30,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:56:30
[2026-06-22 10:56:31,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:56:31,379.379 INFO    ] Initializing speech engine...
[2026-06-22 10:56:31,391.391 INFO    ] 2026-06-22 10:56:31
[2026-06-22 10:56:31,686.686 INFO    ] 2026-06-22 10:56:31
[2026-06-22 10:56:31,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:56:31,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:56:31,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:56:32,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:56:32,249.249 INFO    ] time= 22/06/2026 10:56:32
[2026-06-22 10:56:32,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:56:32,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:56:32,421.421 INFO    ] No existing commands found in stream
[2026-06-22 10:56:37,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:56:37,456.456 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-22 10:56:40,778.778 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 10:56:40,781.781 INFO    ] Checking for system updates...
[2026-06-22 10:56:40,818.818 INFO    ] 200
[2026-06-22 10:56:40,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:56:40,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:56:40,876.876 INFO    ] No update needed
[2026-06-22 10:56:40,879.879 INFO    ] Checking for camera pi updates...
[2026-06-22 10:56:40,913.913 INFO    ] 200
[2026-06-22 10:56:40,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:56:40,956.956 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:56:41,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:56:41,035.035 INFO    ] No camera update needed
[2026-06-22 10:56:41,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:56:41,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:56:41,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:56:41,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:56:43,090.090 INFO    ] ================================================
[2026-06-22 10:56:43,105.105 INFO    ] Launching Daemon at Mon Jun 22 10:56:43 IST 2026
[2026-06-22 10:56:43,116.116 INFO    ] ================================================
[2026-06-22 10:56:43,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:56:43
[2026-06-22 10:56:44,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:56:44,437.437 INFO    ] Initializing speech engine...
[2026-06-22 10:56:44,458.458 INFO    ] 2026-06-22 10:56:44
[2026-06-22 10:56:44,718.718 INFO    ] 2026-06-22 10:56:44
[2026-06-22 10:56:44,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:56:44,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:56:45,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:56:45,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:56:45,205.205 INFO    ] time= 22/06/2026 10:56:45
[2026-06-22 10:56:45,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:56:45,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:56:45,430.430 INFO    ] No existing commands found in stream
[2026-06-22 10:56:50,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:56:50,459.459 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-22 10:56:51,247.247 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:56:51,249.249 INFO    ] Checking for system updates...
[2026-06-22 10:56:51,270.270 INFO    ] 200
[2026-06-22 10:56:51,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:56:51,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:56:51,321.321 INFO    ] No update needed
[2026-06-22 10:56:51,324.324 INFO    ] Checking for camera pi updates...
[2026-06-22 10:56:51,358.358 INFO    ] 200
[2026-06-22 10:56:51,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:56:51,402.402 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:56:51,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:56:51,496.496 INFO    ] No camera update needed
[2026-06-22 10:56:51,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:56:51,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:56:51,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:56:51,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:56:53,555.555 INFO    ] ================================================
[2026-06-22 10:56:53,570.570 INFO    ] Launching Daemon at Mon Jun 22 10:56:53 IST 2026
[2026-06-22 10:56:53,580.580 INFO    ] ================================================
[2026-06-22 10:56:54,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:56:54
[2026-06-22 10:56:54,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:56:54,898.898 INFO    ] Initializing speech engine...
[2026-06-22 10:56:54,921.921 INFO    ] 2026-06-22 10:56:54
[2026-06-22 10:56:55,177.177 INFO    ] 2026-06-22 10:56:55
[2026-06-22 10:56:55,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:56:55,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:56:55,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:56:55,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:56:55,645.645 INFO    ] time= 22/06/2026 10:56:55
[2026-06-22 10:56:55,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:56:55,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:56:55,844.844 INFO    ] No existing commands found in stream
[2026-06-22 10:57:00,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:57:00,858.858 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-22 10:57:03,934.934 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:57:03,937.937 INFO    ] Checking for system updates...
[2026-06-22 10:57:03,972.972 INFO    ] 200
[2026-06-22 10:57:03,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:57:04,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:57:04,030.030 INFO    ] No update needed
[2026-06-22 10:57:04,032.032 INFO    ] Checking for camera pi updates...
[2026-06-22 10:57:04,065.065 INFO    ] 200
[2026-06-22 10:57:04,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:57:04,108.108 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:57:04,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:57:04,168.168 INFO    ] No camera update needed
[2026-06-22 10:57:04,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:57:04,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:57:04,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:57:04,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:57:06,223.223 INFO    ] ================================================
[2026-06-22 10:57:06,243.243 INFO    ] Launching Daemon at Mon Jun 22 10:57:06 IST 2026
[2026-06-22 10:57:06,253.253 INFO    ] ================================================
[2026-06-22 10:57:06,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:57:06
[2026-06-22 10:57:07,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:57:07,679.679 INFO    ] Initializing speech engine...
[2026-06-22 10:57:07,684.684 INFO    ] 2026-06-22 10:57:07
[2026-06-22 10:57:07,930.930 INFO    ] 2026-06-22 10:57:07
[2026-06-22 10:57:07,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:57:08,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:57:08,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:57:08,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:57:08,386.386 INFO    ] time= 22/06/2026 10:57:08
[2026-06-22 10:57:08,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:57:08,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:57:08,625.625 INFO    ] No existing commands found in stream
[2026-06-22 10:57:13,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:57:13,653.653 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-22 10:57:15,527.527 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:57:15,661.661 INFO    ] Checking for system updates...
[2026-06-22 10:57:15,700.700 INFO    ] 200
[2026-06-22 10:57:15,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:57:15,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:57:15,763.763 INFO    ] No update needed
[2026-06-22 10:57:15,766.766 INFO    ] Checking for camera pi updates...
[2026-06-22 10:57:15,801.801 INFO    ] 200
[2026-06-22 10:57:15,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:57:15,847.847 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:57:15,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:57:15,909.909 INFO    ] No camera update needed
[2026-06-22 10:57:15,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:57:15,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:57:15,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:57:15,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:57:17,965.965 INFO    ] ================================================
[2026-06-22 10:57:17,980.980 INFO    ] Launching Daemon at Mon Jun 22 10:57:17 IST 2026
[2026-06-22 10:57:17,991.991 INFO    ] ================================================
[2026-06-22 10:57:18,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:57:18
[2026-06-22 10:57:19,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:57:19,306.306 INFO    ] Initializing speech engine...
[2026-06-22 10:57:19,312.312 INFO    ] 2026-06-22 10:57:19
[2026-06-22 10:57:19,586.586 INFO    ] 2026-06-22 10:57:19
[2026-06-22 10:57:19,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:57:19,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:57:19,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:57:19,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:57:19,966.966 INFO    ] time= 22/06/2026 10:57:19
[2026-06-22 10:57:19,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:57:20,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:57:20,138.138 INFO    ] No existing commands found in stream
[2026-06-22 10:57:25,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:57:25,166.166 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-22 10:57:29,119.119 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:57:29,121.121 INFO    ] Checking for system updates...
[2026-06-22 10:57:29,143.143 INFO    ] 200
[2026-06-22 10:57:29,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:57:29,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:57:29,176.176 INFO    ] No update needed
[2026-06-22 10:57:29,178.178 INFO    ] Checking for camera pi updates...
[2026-06-22 10:57:29,197.197 INFO    ] 200
[2026-06-22 10:57:29,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:57:29,225.225 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:57:29,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:57:29,328.328 INFO    ] No camera update needed
[2026-06-22 10:57:29,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:57:29,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:57:29,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:57:29,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:57:31,385.385 INFO    ] ================================================
[2026-06-22 10:57:31,405.405 INFO    ] Launching Daemon at Mon Jun 22 10:57:31 IST 2026
[2026-06-22 10:57:31,417.417 INFO    ] ================================================
[2026-06-22 10:57:32,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:57:32
[2026-06-22 10:57:32,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:57:33,103.103 INFO    ] Initializing speech engine...
[2026-06-22 10:57:33,112.112 INFO    ] 2026-06-22 10:57:33
[2026-06-22 10:57:33,387.387 INFO    ] 2026-06-22 10:57:33
[2026-06-22 10:57:33,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:57:33,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:57:33,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:57:33,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:57:33,938.938 INFO    ] time= 22/06/2026 10:57:33
[2026-06-22 10:57:33,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:57:33,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:57:34,104.104 INFO    ] No existing commands found in stream
[2026-06-22 10:57:39,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:57:39,139.139 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-22 10:57:42,220.220 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 10:57:42,223.223 INFO    ] Checking for system updates...
[2026-06-22 10:57:42,260.260 INFO    ] 200
[2026-06-22 10:57:42,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:57:42,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:57:42,321.321 INFO    ] No update needed
[2026-06-22 10:57:42,324.324 INFO    ] Checking for camera pi updates...
[2026-06-22 10:57:42,359.359 INFO    ] 200
[2026-06-22 10:57:42,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:57:42,407.407 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:57:42,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:57:42,585.585 INFO    ] No camera update needed
[2026-06-22 10:57:42,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:57:42,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:57:42,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:57:42,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:57:44,640.640 INFO    ] ================================================
[2026-06-22 10:57:44,655.655 INFO    ] Launching Daemon at Mon Jun 22 10:57:44 IST 2026
[2026-06-22 10:57:44,666.666 INFO    ] ================================================
[2026-06-22 10:57:45,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:57:45
[2026-06-22 10:57:45,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:57:46,134.134 INFO    ] Initializing speech engine...
[2026-06-22 10:57:46,143.143 INFO    ] 2026-06-22 10:57:46
[2026-06-22 10:57:46,411.411 INFO    ] 2026-06-22 10:57:46
[2026-06-22 10:57:46,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:57:46,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:57:46,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:57:46,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:57:46,822.822 INFO    ] time= 22/06/2026 10:57:46
[2026-06-22 10:57:46,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:57:46,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:57:46,978.978 INFO    ] No existing commands found in stream
[2026-06-22 10:57:51,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:57:52,001.001 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-22 10:57:54,143.143 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:57:54,144.144 INFO    ] Checking for system updates...
[2026-06-22 10:57:54,165.165 INFO    ] 200
[2026-06-22 10:57:54,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:57:54,197.197 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:57:54,199.199 INFO    ] No update needed
[2026-06-22 10:57:54,200.200 INFO    ] Checking for camera pi updates...
[2026-06-22 10:57:54,220.220 INFO    ] 200
[2026-06-22 10:57:54,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:57:54,248.248 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:57:54,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:57:54,329.329 INFO    ] No camera update needed
[2026-06-22 10:57:54,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:57:54,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:57:54,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:57:54,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:57:56,390.390 INFO    ] ================================================
[2026-06-22 10:57:56,406.406 INFO    ] Launching Daemon at Mon Jun 22 10:57:56 IST 2026
[2026-06-22 10:57:56,417.417 INFO    ] ================================================
[2026-06-22 10:57:56,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:57:56
[2026-06-22 10:57:57,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:57:57,769.769 INFO    ] Initializing speech engine...
[2026-06-22 10:57:57,778.778 INFO    ] 2026-06-22 10:57:57
[2026-06-22 10:57:58,077.077 INFO    ] 2026-06-22 10:57:58
[2026-06-22 10:57:58,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:57:58,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:57:58,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:57:58,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:57:58,477.477 INFO    ] time= 22/06/2026 10:57:58
[2026-06-22 10:57:58,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:57:58,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:57:58,584.584 INFO    ] No existing commands found in stream
[2026-06-22 10:58:03,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:58:03,600.600 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-22 10:58:07,853.853 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:58:07,856.856 INFO    ] Checking for system updates...
[2026-06-22 10:58:07,896.896 INFO    ] 200
[2026-06-22 10:58:07,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:58:07,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:58:07,955.955 INFO    ] No update needed
[2026-06-22 10:58:07,957.957 INFO    ] Checking for camera pi updates...
[2026-06-22 10:58:07,992.992 INFO    ] 200
[2026-06-22 10:58:07,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:58:08,035.035 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:58:08,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:58:08,118.118 INFO    ] No camera update needed
[2026-06-22 10:58:08,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:58:08,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:58:08,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:58:08,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:58:10,174.174 INFO    ] ================================================
[2026-06-22 10:58:10,189.189 INFO    ] Launching Daemon at Mon Jun 22 10:58:10 IST 2026
[2026-06-22 10:58:10,200.200 INFO    ] ================================================
[2026-06-22 10:58:10,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:58:10
[2026-06-22 10:58:11,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:58:11,717.717 INFO    ] Initializing speech engine...
[2026-06-22 10:58:11,730.730 INFO    ] 2026-06-22 10:58:11
[2026-06-22 10:58:12,012.012 INFO    ] 2026-06-22 10:58:11
[2026-06-22 10:58:12,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:58:12,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:58:12,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:58:12,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:58:12,548.548 INFO    ] time= 22/06/2026 10:58:12
[2026-06-22 10:58:12,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:58:12,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:58:12,703.703 INFO    ] No existing commands found in stream
[2026-06-22 10:58:17,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:58:17,730.730 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-22 10:58:19,202.202 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:58:19,204.204 INFO    ] Checking for system updates...
[2026-06-22 10:58:19,226.226 INFO    ] 200
[2026-06-22 10:58:19,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:58:19,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:58:19,259.259 INFO    ] No update needed
[2026-06-22 10:58:19,261.261 INFO    ] Checking for camera pi updates...
[2026-06-22 10:58:19,297.297 INFO    ] 200
[2026-06-22 10:58:19,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:58:19,341.341 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:58:19,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:58:19,427.427 INFO    ] No camera update needed
[2026-06-22 10:58:19,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:58:19,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:58:19,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:58:19,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:58:21,483.483 INFO    ] ================================================
[2026-06-22 10:58:21,498.498 INFO    ] Launching Daemon at Mon Jun 22 10:58:21 IST 2026
[2026-06-22 10:58:21,509.509 INFO    ] ================================================
[2026-06-22 10:58:22,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:58:22
[2026-06-22 10:58:22,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:58:22,850.850 INFO    ] Initializing speech engine...
[2026-06-22 10:58:22,863.863 INFO    ] 2026-06-22 10:58:22
[2026-06-22 10:58:23,110.110 INFO    ] 2026-06-22 10:58:23
[2026-06-22 10:58:23,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:58:23,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:58:23,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:58:23,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:58:23,501.501 INFO    ] time= 22/06/2026 10:58:23
[2026-06-22 10:58:23,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:58:23,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:58:23,592.592 INFO    ] No existing commands found in stream
[2026-06-22 10:58:28,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:58:28,630.630 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-22 10:58:31,535.535 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:58:31,538.538 INFO    ] Checking for system updates...
[2026-06-22 10:58:31,578.578 INFO    ] 200
[2026-06-22 10:58:31,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:58:31,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:58:31,642.642 INFO    ] No update needed
[2026-06-22 10:58:31,645.645 INFO    ] Checking for camera pi updates...
[2026-06-22 10:58:31,681.681 INFO    ] 200
[2026-06-22 10:58:31,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:58:31,728.728 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:58:31,787.787 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:58:31,789.789 INFO    ] No camera update needed
[2026-06-22 10:58:31,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:58:31,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:58:31,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:58:31,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:58:33,848.848 INFO    ] ================================================
[2026-06-22 10:58:33,863.863 INFO    ] Launching Daemon at Mon Jun 22 10:58:33 IST 2026
[2026-06-22 10:58:33,874.874 INFO    ] ================================================
[2026-06-22 10:58:34,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:58:34
[2026-06-22 10:58:34,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:58:35,243.243 INFO    ] Initializing speech engine...
[2026-06-22 10:58:35,251.251 INFO    ] 2026-06-22 10:58:35
[2026-06-22 10:58:35,498.498 INFO    ] 2026-06-22 10:58:35
[2026-06-22 10:58:35,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:58:35,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:58:35,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:58:36,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:58:36,041.041 INFO    ] time= 22/06/2026 10:58:36
[2026-06-22 10:58:36,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:58:36,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:58:36,191.191 INFO    ] No existing commands found in stream
[2026-06-22 10:58:41,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:58:41,221.221 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-22 10:58:42,785.785 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:58:42,787.787 INFO    ] Checking for system updates...
[2026-06-22 10:58:42,807.807 INFO    ] 200
[2026-06-22 10:58:42,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:58:42,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:58:42,842.842 INFO    ] No update needed
[2026-06-22 10:58:42,843.843 INFO    ] Checking for camera pi updates...
[2026-06-22 10:58:42,864.864 INFO    ] 200
[2026-06-22 10:58:42,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:58:42,901.901 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:58:42,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:58:43,000.000 INFO    ] No camera update needed
[2026-06-22 10:58:43,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:58:43,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:58:43,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:58:43,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:58:45,057.057 INFO    ] ================================================
[2026-06-22 10:58:45,073.073 INFO    ] Launching Daemon at Mon Jun 22 10:58:45 IST 2026
[2026-06-22 10:58:45,084.084 INFO    ] ================================================
[2026-06-22 10:58:45,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:58:45
[2026-06-22 10:58:46,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:58:46,607.607 INFO    ] Initializing speech engine...
[2026-06-22 10:58:46,620.620 INFO    ] 2026-06-22 10:58:46
[2026-06-22 10:58:46,908.908 INFO    ] 2026-06-22 10:58:46
[2026-06-22 10:58:46,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:58:47,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:58:47,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:58:47,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:58:47,386.386 INFO    ] time= 22/06/2026 10:58:47
[2026-06-22 10:58:47,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:58:47,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:58:47,600.600 INFO    ] No existing commands found in stream
[2026-06-22 10:58:52,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:58:52,625.625 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-22 10:58:54,283.283 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 10:58:54,287.287 INFO    ] Checking for system updates...
[2026-06-22 10:58:54,325.325 INFO    ] 200
[2026-06-22 10:58:54,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:58:54,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:58:54,385.385 INFO    ] No update needed
[2026-06-22 10:58:54,387.387 INFO    ] Checking for camera pi updates...
[2026-06-22 10:58:54,423.423 INFO    ] 200
[2026-06-22 10:58:54,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:58:54,472.472 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:58:54,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:58:54,583.583 INFO    ] No camera update needed
[2026-06-22 10:58:54,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:58:54,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:58:54,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:58:54,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:58:56,644.644 INFO    ] ================================================
[2026-06-22 10:58:56,659.659 INFO    ] Launching Daemon at Mon Jun 22 10:58:56 IST 2026
[2026-06-22 10:58:56,670.670 INFO    ] ================================================
[2026-06-22 10:58:57,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:58:57
[2026-06-22 10:58:57,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:58:58,188.188 INFO    ] Initializing speech engine...
[2026-06-22 10:58:58,196.196 INFO    ] 2026-06-22 10:58:58
[2026-06-22 10:58:58,483.483 INFO    ] 2026-06-22 10:58:58
[2026-06-22 10:58:58,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:58:58,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:58:58,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:58:58,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:58:58,946.946 INFO    ] time= 22/06/2026 10:58:58
[2026-06-22 10:58:58,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:58:59,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:58:59,157.157 INFO    ] No existing commands found in stream
[2026-06-22 10:59:04,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:59:04,187.187 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-22 10:59:07,990.990 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:59:07,991.991 INFO    ] Checking for system updates...
[2026-06-22 10:59:08,024.024 INFO    ] 200
[2026-06-22 10:59:08,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:59:08,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:59:08,084.084 INFO    ] No update needed
[2026-06-22 10:59:08,087.087 INFO    ] Checking for camera pi updates...
[2026-06-22 10:59:08,121.121 INFO    ] 200
[2026-06-22 10:59:08,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:59:08,165.165 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:59:08,245.245 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:59:08,248.248 INFO    ] No camera update needed
[2026-06-22 10:59:08,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:59:08,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:59:08,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:59:08,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:59:10,306.306 INFO    ] ================================================
[2026-06-22 10:59:10,321.321 INFO    ] Launching Daemon at Mon Jun 22 10:59:10 IST 2026
[2026-06-22 10:59:10,333.333 INFO    ] ================================================
[2026-06-22 10:59:10,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:59:10
[2026-06-22 10:59:11,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:59:11,660.660 INFO    ] Initializing speech engine...
[2026-06-22 10:59:11,673.673 INFO    ] 2026-06-22 10:59:11
[2026-06-22 10:59:11,952.952 INFO    ] 2026-06-22 10:59:11
[2026-06-22 10:59:11,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:59:12,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:59:12,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:59:12,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:59:12,322.322 INFO    ] time= 22/06/2026 10:59:12
[2026-06-22 10:59:12,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:59:12,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:59:12,446.446 INFO    ] No existing commands found in stream
[2026-06-22 10:59:17,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:59:17,458.458 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-22 10:59:20,372.372 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 10:59:20,375.375 INFO    ] Checking for system updates...
[2026-06-22 10:59:20,413.413 INFO    ] 200
[2026-06-22 10:59:20,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:59:20,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:59:20,476.476 INFO    ] No update needed
[2026-06-22 10:59:20,478.478 INFO    ] Checking for camera pi updates...
[2026-06-22 10:59:20,512.512 INFO    ] 200
[2026-06-22 10:59:20,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:59:20,556.556 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:59:20,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 10:59:20,642.642 INFO    ] No camera update needed
[2026-06-22 10:59:20,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:59:20,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:59:20,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:59:20,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:59:22,698.698 INFO    ] ================================================
[2026-06-22 10:59:22,713.713 INFO    ] Launching Daemon at Mon Jun 22 10:59:22 IST 2026
[2026-06-22 10:59:22,724.724 INFO    ] ================================================
[2026-06-22 10:59:23,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:59:23
[2026-06-22 10:59:23,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:59:24,042.042 INFO    ] Initializing speech engine...
[2026-06-22 10:59:24,048.048 INFO    ] 2026-06-22 10:59:24
[2026-06-22 10:59:24,338.338 INFO    ] 2026-06-22 10:59:24
[2026-06-22 10:59:24,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:59:24,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:59:24,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:59:24,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:59:24,860.860 INFO    ] time= 22/06/2026 10:59:24
[2026-06-22 10:59:24,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:59:24,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:59:25,082.082 INFO    ] No existing commands found in stream
[2026-06-22 10:59:30,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:59:30,103.103 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-22 10:59:34,063.063 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 10:59:34,066.066 INFO    ] Checking for system updates...
[2026-06-22 10:59:34,102.102 INFO    ] 200
[2026-06-22 10:59:34,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:59:34,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:59:34,161.161 INFO    ] No update needed
[2026-06-22 10:59:34,163.163 INFO    ] Checking for camera pi updates...
[2026-06-22 10:59:34,199.199 INFO    ] 200
[2026-06-22 10:59:34,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:59:34,245.245 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:59:34,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:59:34,327.327 INFO    ] No camera update needed
[2026-06-22 10:59:34,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:59:34,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:59:34,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:59:34,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:59:36,384.384 INFO    ] ================================================
[2026-06-22 10:59:36,399.399 INFO    ] Launching Daemon at Mon Jun 22 10:59:36 IST 2026
[2026-06-22 10:59:36,410.410 INFO    ] ================================================
[2026-06-22 10:59:36,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:59:36
[2026-06-22 10:59:37,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:59:37,755.755 INFO    ] Initializing speech engine...
[2026-06-22 10:59:37,772.772 INFO    ] 2026-06-22 10:59:37
[2026-06-22 10:59:38,040.040 INFO    ] 2026-06-22 10:59:38
[2026-06-22 10:59:38,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:59:38,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:59:38,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:59:38,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:59:38,449.449 INFO    ] time= 22/06/2026 10:59:38
[2026-06-22 10:59:38,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:59:38,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:59:38,625.625 INFO    ] No existing commands found in stream
[2026-06-22 10:59:43,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:59:43,663.663 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-22 10:59:47,727.727 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:59:47,729.729 INFO    ] Checking for system updates...
[2026-06-22 10:59:47,749.749 INFO    ] 200
[2026-06-22 10:59:47,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:59:47,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:59:47,807.807 INFO    ] No update needed
[2026-06-22 10:59:47,810.810 INFO    ] Checking for camera pi updates...
[2026-06-22 10:59:47,845.845 INFO    ] 200
[2026-06-22 10:59:47,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:59:47,889.889 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:59:48,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:59:48,071.071 INFO    ] No camera update needed
[2026-06-22 10:59:48,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:59:48,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:59:48,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:59:48,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 10:59:50,129.129 INFO    ] ================================================
[2026-06-22 10:59:50,144.144 INFO    ] Launching Daemon at Mon Jun 22 10:59:50 IST 2026
[2026-06-22 10:59:50,155.155 INFO    ] ================================================
[2026-06-22 10:59:50,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 10:59:50
[2026-06-22 10:59:51,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 10:59:51,479.479 INFO    ] Initializing speech engine...
[2026-06-22 10:59:51,485.485 INFO    ] 2026-06-22 10:59:51
[2026-06-22 10:59:51,775.775 INFO    ] 2026-06-22 10:59:51
[2026-06-22 10:59:51,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 10:59:52,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 10:59:52,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 10:59:52,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 10:59:52,187.187 INFO    ] time= 22/06/2026 10:59:52
[2026-06-22 10:59:52,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 10:59:52,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-22 10:59:52,353.353 INFO    ] No existing commands found in stream
[2026-06-22 10:59:57,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 10:59:57,381.381 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-22 10:59:59,415.415 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 10:59:59,417.417 INFO    ] Checking for system updates...
[2026-06-22 10:59:59,454.454 INFO    ] 200
[2026-06-22 10:59:59,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:59:59,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:59:59,518.518 INFO    ] No update needed
[2026-06-22 10:59:59,521.521 INFO    ] Checking for camera pi updates...
[2026-06-22 10:59:59,558.558 INFO    ] 200
[2026-06-22 10:59:59,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 10:59:59,602.602 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 10:59:59,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 10:59:59,689.689 INFO    ] No camera update needed
[2026-06-22 10:59:59,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-22 10:59:59,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 10:59:59,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 10:59:59,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:00:01,769.769 INFO    ] ================================================
[2026-06-22 11:00:02,039.039 INFO    ] Launching Daemon at Mon Jun 22 11:00:02 IST 2026
[2026-06-22 11:00:02,086.086 INFO    ] ================================================
[2026-06-22 11:00:04,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:00:04
[2026-06-22 11:00:06,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:00:06,635.635 INFO    ] Initializing speech engine...
[2026-06-22 11:00:06,652.652 INFO    ] 2026-06-22 11:00:06
[2026-06-22 11:00:06,957.957 INFO    ] 2026-06-22 11:00:06
[2026-06-22 11:00:07,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:00:07,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:00:07,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:00:07,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:00:07,465.465 INFO    ] time= 22/06/2026 11:00:07
[2026-06-22 11:00:07,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:00:07,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:00:07,620.620 INFO    ] No existing commands found in stream
[2026-06-22 11:00:12,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:00:12,642.642 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-22 11:00:13,264.264 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:00:13,267.267 INFO    ] Checking for system updates...
[2026-06-22 11:00:13,303.303 INFO    ] 200
[2026-06-22 11:00:13,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:00:13,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:00:13,362.362 INFO    ] No update needed
[2026-06-22 11:00:13,364.364 INFO    ] Checking for camera pi updates...
[2026-06-22 11:00:13,398.398 INFO    ] 200
[2026-06-22 11:00:13,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:00:13,440.440 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:00:13,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:00:13,549.549 INFO    ] No camera update needed
[2026-06-22 11:00:13,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:00:13,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:00:13,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:00:13,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:00:15,606.606 INFO    ] ================================================
[2026-06-22 11:00:15,623.623 INFO    ] Launching Daemon at Mon Jun 22 11:00:15 IST 2026
[2026-06-22 11:00:15,633.633 INFO    ] ================================================
[2026-06-22 11:00:16,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:00:16
[2026-06-22 11:00:16,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:00:17,178.178 INFO    ] Initializing speech engine...
[2026-06-22 11:00:17,194.194 INFO    ] 2026-06-22 11:00:17
[2026-06-22 11:00:17,449.449 INFO    ] 2026-06-22 11:00:17
[2026-06-22 11:00:17,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:00:17,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:00:17,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:00:17,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:00:17,925.925 INFO    ] time= 22/06/2026 11:00:17
[2026-06-22 11:00:17,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:00:18,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:00:18,164.164 INFO    ] No existing commands found in stream
[2026-06-22 11:00:23,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:00:23,182.182 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-22 11:00:25,347.347 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:00:25,350.350 INFO    ] Checking for system updates...
[2026-06-22 11:00:25,387.387 INFO    ] 200
[2026-06-22 11:00:25,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:00:25,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:00:25,445.445 INFO    ] No update needed
[2026-06-22 11:00:25,448.448 INFO    ] Checking for camera pi updates...
[2026-06-22 11:00:25,482.482 INFO    ] 200
[2026-06-22 11:00:25,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:00:25,532.532 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:00:25,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:00:25,613.613 INFO    ] No camera update needed
[2026-06-22 11:00:25,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:00:25,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:00:25,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:00:25,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:00:27,672.672 INFO    ] ================================================
[2026-06-22 11:00:27,688.688 INFO    ] Launching Daemon at Mon Jun 22 11:00:27 IST 2026
[2026-06-22 11:00:27,700.700 INFO    ] ================================================
[2026-06-22 11:00:28,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:00:28
[2026-06-22 11:00:28,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:00:29,146.146 INFO    ] Initializing speech engine...
[2026-06-22 11:00:29,155.155 INFO    ] 2026-06-22 11:00:29
[2026-06-22 11:00:29,415.415 INFO    ] 2026-06-22 11:00:29
[2026-06-22 11:00:29,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:00:29,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:00:29,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:00:29,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:00:29,955.955 INFO    ] time= 22/06/2026 11:00:29
[2026-06-22 11:00:29,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:00:29,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:00:30,101.101 INFO    ] No existing commands found in stream
[2026-06-22 11:00:35,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:00:35,123.123 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-22 11:00:38,048.048 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:00:38,050.050 INFO    ] Checking for system updates...
[2026-06-22 11:00:38,087.087 INFO    ] 200
[2026-06-22 11:00:38,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:00:38,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:00:38,146.146 INFO    ] No update needed
[2026-06-22 11:00:38,148.148 INFO    ] Checking for camera pi updates...
[2026-06-22 11:00:38,183.183 INFO    ] 200
[2026-06-22 11:00:38,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:00:38,226.226 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:00:38,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:00:38,311.311 INFO    ] No camera update needed
[2026-06-22 11:00:38,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:00:38,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:00:38,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:00:38,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:00:40,367.367 INFO    ] ================================================
[2026-06-22 11:00:40,382.382 INFO    ] Launching Daemon at Mon Jun 22 11:00:40 IST 2026
[2026-06-22 11:00:40,393.393 INFO    ] ================================================
[2026-06-22 11:00:40,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:00:40
[2026-06-22 11:00:41,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:00:41,759.759 INFO    ] Initializing speech engine...
[2026-06-22 11:00:41,766.766 INFO    ] 2026-06-22 11:00:41
[2026-06-22 11:00:42,047.047 INFO    ] 2026-06-22 11:00:42
[2026-06-22 11:00:42,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:00:42,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:00:42,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:00:42,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:00:42,576.576 INFO    ] time= 22/06/2026 11:00:42
[2026-06-22 11:00:42,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:00:42,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:00:42,722.722 INFO    ] No existing commands found in stream
[2026-06-22 11:00:47,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:00:47,746.746 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-22 11:00:48,756.756 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:00:48,758.758 INFO    ] Checking for system updates...
[2026-06-22 11:00:48,799.799 INFO    ] 200
[2026-06-22 11:00:48,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:00:48,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:00:48,856.856 INFO    ] No update needed
[2026-06-22 11:00:48,859.859 INFO    ] Checking for camera pi updates...
[2026-06-22 11:00:48,893.893 INFO    ] 200
[2026-06-22 11:00:48,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:00:48,940.940 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:00:49,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:00:49,038.038 INFO    ] No camera update needed
[2026-06-22 11:00:49,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:00:49,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:00:49,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:00:49,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:00:51,094.094 INFO    ] ================================================
[2026-06-22 11:00:51,109.109 INFO    ] Launching Daemon at Mon Jun 22 11:00:51 IST 2026
[2026-06-22 11:00:51,121.121 INFO    ] ================================================
[2026-06-22 11:00:51,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:00:51
[2026-06-22 11:00:52,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:00:52,463.463 INFO    ] Initializing speech engine...
[2026-06-22 11:00:52,472.472 INFO    ] 2026-06-22 11:00:52
[2026-06-22 11:00:52,729.729 INFO    ] 2026-06-22 11:00:52
[2026-06-22 11:00:52,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:00:53,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:00:53,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:00:53,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:00:53,222.222 INFO    ] time= 22/06/2026 11:00:53
[2026-06-22 11:00:53,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:00:53,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:00:53,423.423 INFO    ] No existing commands found in stream
[2026-06-22 11:00:58,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:00:58,439.439 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-22 11:00:59,071.071 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:00:59,072.072 INFO    ] Checking for system updates...
[2026-06-22 11:00:59,098.098 INFO    ] 200
[2026-06-22 11:00:59,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:00:59,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:00:59,156.156 INFO    ] No update needed
[2026-06-22 11:00:59,159.159 INFO    ] Checking for camera pi updates...
[2026-06-22 11:00:59,199.199 INFO    ] 200
[2026-06-22 11:00:59,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:00:59,241.241 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:00:59,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:00:59,318.318 INFO    ] No camera update needed
[2026-06-22 11:00:59,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:00:59,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:00:59,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:00:59,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:01:01,373.373 INFO    ] ================================================
[2026-06-22 11:01:01,389.389 INFO    ] Launching Daemon at Mon Jun 22 11:01:01 IST 2026
[2026-06-22 11:01:01,400.400 INFO    ] ================================================
[2026-06-22 11:01:02,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:01:02
[2026-06-22 11:01:02,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:01:03,131.131 INFO    ] Initializing speech engine...
[2026-06-22 11:01:03,162.162 INFO    ] 2026-06-22 11:01:03
[2026-06-22 11:01:03,448.448 INFO    ] 2026-06-22 11:01:03
[2026-06-22 11:01:03,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:01:03,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:01:03,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:01:03,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:01:03,862.862 INFO    ] time= 22/06/2026 11:01:03
[2026-06-22 11:01:03,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:01:03,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:01:04,072.072 INFO    ] No existing commands found in stream
[2026-06-22 11:01:09,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:01:09,087.087 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-22 11:01:12,445.445 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:01:12,447.447 INFO    ] Checking for system updates...
[2026-06-22 11:01:12,483.483 INFO    ] 200
[2026-06-22 11:01:12,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:01:12,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:01:12,542.542 INFO    ] No update needed
[2026-06-22 11:01:12,544.544 INFO    ] Checking for camera pi updates...
[2026-06-22 11:01:12,581.581 INFO    ] 200
[2026-06-22 11:01:12,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:01:12,624.624 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:01:12,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:01:12,706.706 INFO    ] No camera update needed
[2026-06-22 11:01:12,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:01:12,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:01:12,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:01:12,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:01:14,764.764 INFO    ] ================================================
[2026-06-22 11:01:14,779.779 INFO    ] Launching Daemon at Mon Jun 22 11:01:14 IST 2026
[2026-06-22 11:01:14,790.790 INFO    ] ================================================
[2026-06-22 11:01:15,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:01:15
[2026-06-22 11:01:15,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:01:16,214.214 INFO    ] Initializing speech engine...
[2026-06-22 11:01:16,232.232 INFO    ] 2026-06-22 11:01:16
[2026-06-22 11:01:16,496.496 INFO    ] 2026-06-22 11:01:16
[2026-06-22 11:01:16,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:01:16,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:01:16,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:01:16,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:01:16,992.992 INFO    ] time= 22/06/2026 11:01:16
[2026-06-22 11:01:17,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:01:17,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:01:17,240.240 INFO    ] No existing commands found in stream
[2026-06-22 11:01:22,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:01:22,263.263 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-22 11:01:23,776.776 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:01:23,778.778 INFO    ] Checking for system updates...
[2026-06-22 11:01:23,814.814 INFO    ] 200
[2026-06-22 11:01:23,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:01:23,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:01:23,872.872 INFO    ] No update needed
[2026-06-22 11:01:23,874.874 INFO    ] Checking for camera pi updates...
[2026-06-22 11:01:23,907.907 INFO    ] 200
[2026-06-22 11:01:23,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:01:23,951.951 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:01:24,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:01:24,050.050 INFO    ] No camera update needed
[2026-06-22 11:01:24,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:01:24,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:01:24,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:01:24,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:01:26,105.105 INFO    ] ================================================
[2026-06-22 11:01:26,121.121 INFO    ] Launching Daemon at Mon Jun 22 11:01:26 IST 2026
[2026-06-22 11:01:26,131.131 INFO    ] ================================================
[2026-06-22 11:01:26,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:01:26
[2026-06-22 11:01:27,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:01:27,596.596 INFO    ] Initializing speech engine...
[2026-06-22 11:01:27,610.610 INFO    ] 2026-06-22 11:01:27
[2026-06-22 11:01:27,880.880 INFO    ] 2026-06-22 11:01:27
[2026-06-22 11:01:27,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:01:28,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:01:28,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:01:28,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:01:28,381.381 INFO    ] time= 22/06/2026 11:01:28
[2026-06-22 11:01:28,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:01:28,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:01:28,571.571 INFO    ] No existing commands found in stream
[2026-06-22 11:01:33,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:01:33,593.593 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-22 11:01:37,077.077 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:01:37,080.080 INFO    ] Checking for system updates...
[2026-06-22 11:01:37,117.117 INFO    ] 200
[2026-06-22 11:01:37,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:01:37,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:01:37,183.183 INFO    ] No update needed
[2026-06-22 11:01:37,186.186 INFO    ] Checking for camera pi updates...
[2026-06-22 11:01:37,223.223 INFO    ] 200
[2026-06-22 11:01:37,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:01:37,267.267 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:01:37,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:01:37,351.351 INFO    ] No camera update needed
[2026-06-22 11:01:37,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:01:37,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:01:37,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:01:37,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:01:39,406.406 INFO    ] ================================================
[2026-06-22 11:01:39,422.422 INFO    ] Launching Daemon at Mon Jun 22 11:01:39 IST 2026
[2026-06-22 11:01:39,433.433 INFO    ] ================================================
[2026-06-22 11:01:40,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:01:39
[2026-06-22 11:01:40,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:01:40,843.843 INFO    ] Initializing speech engine...
[2026-06-22 11:01:40,852.852 INFO    ] 2026-06-22 11:01:40
[2026-06-22 11:01:41,142.142 INFO    ] 2026-06-22 11:01:41
[2026-06-22 11:01:41,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:01:41,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:01:41,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:01:41,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:01:41,549.549 INFO    ] time= 22/06/2026 11:01:41
[2026-06-22 11:01:41,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:01:41,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:01:41,649.649 INFO    ] No existing commands found in stream
[2026-06-22 11:01:46,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:01:46,688.688 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-22 11:01:50,558.558 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:01:50,560.560 INFO    ] Checking for system updates...
[2026-06-22 11:01:50,596.596 INFO    ] 200
[2026-06-22 11:01:50,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:01:50,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:01:50,655.655 INFO    ] No update needed
[2026-06-22 11:01:50,657.657 INFO    ] Checking for camera pi updates...
[2026-06-22 11:01:50,691.691 INFO    ] 200
[2026-06-22 11:01:50,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:01:50,738.738 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:01:50,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:01:50,941.941 INFO    ] No camera update needed
[2026-06-22 11:01:50,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:01:50,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:01:50,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:01:50,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:01:53,001.001 INFO    ] ================================================
[2026-06-22 11:01:53,016.016 INFO    ] Launching Daemon at Mon Jun 22 11:01:53 IST 2026
[2026-06-22 11:01:53,027.027 INFO    ] ================================================
[2026-06-22 11:01:53,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:01:53
[2026-06-22 11:01:54,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:01:54,467.467 INFO    ] Initializing speech engine...
[2026-06-22 11:01:54,485.485 INFO    ] 2026-06-22 11:01:54
[2026-06-22 11:01:54,758.758 INFO    ] 2026-06-22 11:01:54
[2026-06-22 11:01:54,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:01:54,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:01:55,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:01:55,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:01:55,173.173 INFO    ] time= 22/06/2026 11:01:55
[2026-06-22 11:01:55,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:01:55,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:01:55,262.262 INFO    ] No existing commands found in stream
[2026-06-22 11:02:00,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:02:00,297.297 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-22 11:02:03,026.026 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:02:03,029.029 INFO    ] Checking for system updates...
[2026-06-22 11:02:03,084.084 INFO    ] 200
[2026-06-22 11:02:03,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:02:03,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:02:03,166.166 INFO    ] No update needed
[2026-06-22 11:02:03,169.169 INFO    ] Checking for camera pi updates...
[2026-06-22 11:02:03,208.208 INFO    ] 200
[2026-06-22 11:02:03,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:02:03,256.256 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:02:03,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:02:03,343.343 INFO    ] No camera update needed
[2026-06-22 11:02:03,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:02:03,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:02:03,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:02:03,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:02:05,404.404 INFO    ] ================================================
[2026-06-22 11:02:05,419.419 INFO    ] Launching Daemon at Mon Jun 22 11:02:05 IST 2026
[2026-06-22 11:02:05,430.430 INFO    ] ================================================
[2026-06-22 11:02:06,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:02:06
[2026-06-22 11:02:06,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:02:06,920.920 INFO    ] Initializing speech engine...
[2026-06-22 11:02:06,930.930 INFO    ] 2026-06-22 11:02:06
[2026-06-22 11:02:07,203.203 INFO    ] 2026-06-22 11:02:07
[2026-06-22 11:02:07,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:02:07,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:02:07,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:02:07,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:02:07,695.695 INFO    ] time= 22/06/2026 11:02:07
[2026-06-22 11:02:07,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:02:07,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:02:07,888.888 INFO    ] No existing commands found in stream
[2026-06-22 11:02:12,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:02:12,916.916 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-22 11:02:15,235.235 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:02:15,238.238 INFO    ] Checking for system updates...
[2026-06-22 11:02:15,278.278 INFO    ] 200
[2026-06-22 11:02:15,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:02:15,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:02:15,343.343 INFO    ] No update needed
[2026-06-22 11:02:15,345.345 INFO    ] Checking for camera pi updates...
[2026-06-22 11:02:15,381.381 INFO    ] 200
[2026-06-22 11:02:15,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:02:15,428.428 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:02:15,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:02:15,507.507 INFO    ] No camera update needed
[2026-06-22 11:02:15,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:02:15,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:02:15,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:02:15,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:02:17,562.562 INFO    ] ================================================
[2026-06-22 11:02:17,577.577 INFO    ] Launching Daemon at Mon Jun 22 11:02:17 IST 2026
[2026-06-22 11:02:17,588.588 INFO    ] ================================================
[2026-06-22 11:02:18,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:02:18
[2026-06-22 11:02:18,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:02:19,018.018 INFO    ] Initializing speech engine...
[2026-06-22 11:02:19,043.043 INFO    ] 2026-06-22 11:02:19
[2026-06-22 11:02:19,323.323 INFO    ] 2026-06-22 11:02:19
[2026-06-22 11:02:19,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:02:19,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:02:19,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:02:19,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:02:19,947.947 INFO    ] time= 22/06/2026 11:02:19
[2026-06-22 11:02:19,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:02:19,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:02:20,925.925 INFO    ] No existing commands found in stream
[2026-06-22 11:02:25,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:02:25,938.938 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-22 11:02:30,101.101 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:02:30,104.104 INFO    ] Checking for system updates...
[2026-06-22 11:02:30,143.143 INFO    ] 200
[2026-06-22 11:02:30,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:02:30,201.201 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:02:30,204.204 INFO    ] No update needed
[2026-06-22 11:02:30,207.207 INFO    ] Checking for camera pi updates...
[2026-06-22 11:02:30,246.246 INFO    ] 200
[2026-06-22 11:02:30,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:02:30,294.294 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:02:30,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:02:30,405.405 INFO    ] No camera update needed
[2026-06-22 11:02:30,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:02:30,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:02:30,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:02:30,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:02:32,463.463 INFO    ] ================================================
[2026-06-22 11:02:32,480.480 INFO    ] Launching Daemon at Mon Jun 22 11:02:32 IST 2026
[2026-06-22 11:02:32,492.492 INFO    ] ================================================
[2026-06-22 11:02:33,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:02:33
[2026-06-22 11:02:33,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:02:34,163.163 INFO    ] Initializing speech engine...
[2026-06-22 11:02:34,171.171 INFO    ] 2026-06-22 11:02:34
[2026-06-22 11:02:34,469.469 INFO    ] 2026-06-22 11:02:34
[2026-06-22 11:02:34,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:02:34,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:02:34,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:02:35,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:02:35,028.028 INFO    ] time= 22/06/2026 11:02:35
[2026-06-22 11:02:35,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:02:35,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:02:35,190.190 INFO    ] No existing commands found in stream
[2026-06-22 11:02:40,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:02:40,207.207 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-22 11:02:43,503.503 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:02:43,505.505 INFO    ] Checking for system updates...
[2026-06-22 11:02:43,535.535 INFO    ] 200
[2026-06-22 11:02:43,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:02:43,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:02:43,593.593 INFO    ] No update needed
[2026-06-22 11:02:43,595.595 INFO    ] Checking for camera pi updates...
[2026-06-22 11:02:43,629.629 INFO    ] 200
[2026-06-22 11:02:43,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:02:43,673.673 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:02:43,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:02:43,758.758 INFO    ] No camera update needed
[2026-06-22 11:02:43,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:02:43,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:02:43,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:02:43,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:02:45,818.818 INFO    ] ================================================
[2026-06-22 11:02:45,833.833 INFO    ] Launching Daemon at Mon Jun 22 11:02:45 IST 2026
[2026-06-22 11:02:45,844.844 INFO    ] ================================================
[2026-06-22 11:02:46,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:02:46
[2026-06-22 11:02:47,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:02:47,436.436 INFO    ] Initializing speech engine...
[2026-06-22 11:02:47,451.451 INFO    ] 2026-06-22 11:02:47
[2026-06-22 11:02:47,738.738 INFO    ] 2026-06-22 11:02:47
[2026-06-22 11:02:47,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:02:48,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:02:48,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:02:48,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:02:48,457.457 INFO    ] time= 22/06/2026 11:02:48
[2026-06-22 11:02:48,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:02:48,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:02:48,707.707 INFO    ] No existing commands found in stream
[2026-06-22 11:02:53,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:02:53,740.740 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-22 11:02:57,810.810 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:02:57,811.811 INFO    ] Checking for system updates...
[2026-06-22 11:02:57,835.835 INFO    ] 200
[2026-06-22 11:02:57,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:02:57,885.885 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:02:57,888.888 INFO    ] No update needed
[2026-06-22 11:02:57,891.891 INFO    ] Checking for camera pi updates...
[2026-06-22 11:02:57,926.926 INFO    ] 200
[2026-06-22 11:02:57,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:02:57,971.971 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:02:58,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:02:58,078.078 INFO    ] No camera update needed
[2026-06-22 11:02:58,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:02:58,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:02:58,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:02:58,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:03:00,133.133 INFO    ] ================================================
[2026-06-22 11:03:00,148.148 INFO    ] Launching Daemon at Mon Jun 22 11:03:00 IST 2026
[2026-06-22 11:03:00,159.159 INFO    ] ================================================
[2026-06-22 11:03:00,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:03:00
[2026-06-22 11:03:01,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:03:01,651.651 INFO    ] Initializing speech engine...
[2026-06-22 11:03:01,681.681 INFO    ] 2026-06-22 11:03:01
[2026-06-22 11:03:02,143.143 INFO    ] 2026-06-22 11:03:02
[2026-06-22 11:03:02,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:03:02,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:03:02,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:03:02,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:03:02,538.538 INFO    ] time= 22/06/2026 11:03:02
[2026-06-22 11:03:02,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:03:02,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:03:02,637.637 INFO    ] No existing commands found in stream
[2026-06-22 11:03:07,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:03:07,650.650 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-22 11:03:11,868.868 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:03:11,869.869 INFO    ] Checking for system updates...
[2026-06-22 11:03:11,890.890 INFO    ] 200
[2026-06-22 11:03:11,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:03:11,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:03:11,925.925 INFO    ] No update needed
[2026-06-22 11:03:11,927.927 INFO    ] Checking for camera pi updates...
[2026-06-22 11:03:11,947.947 INFO    ] 200
[2026-06-22 11:03:11,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:03:11,976.976 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:03:12,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:03:12,063.063 INFO    ] No camera update needed
[2026-06-22 11:03:12,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:03:12,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:03:12,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:03:12,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:03:14,118.118 INFO    ] ================================================
[2026-06-22 11:03:14,134.134 INFO    ] Launching Daemon at Mon Jun 22 11:03:14 IST 2026
[2026-06-22 11:03:14,144.144 INFO    ] ================================================
[2026-06-22 11:03:14,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:03:14
[2026-06-22 11:03:15,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:03:15,468.468 INFO    ] Initializing speech engine...
[2026-06-22 11:03:15,481.481 INFO    ] 2026-06-22 11:03:15
[2026-06-22 11:03:15,748.748 INFO    ] 2026-06-22 11:03:15
[2026-06-22 11:03:15,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:03:15,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:03:16,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:03:16,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:03:16,227.227 INFO    ] time= 22/06/2026 11:03:16
[2026-06-22 11:03:16,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:03:16,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:03:16,442.442 INFO    ] No existing commands found in stream
[2026-06-22 11:03:21,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:03:21,467.467 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-22 11:03:23,828.828 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:03:23,831.831 INFO    ] Checking for system updates...
[2026-06-22 11:03:23,868.868 INFO    ] 200
[2026-06-22 11:03:23,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:03:23,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:03:23,927.927 INFO    ] No update needed
[2026-06-22 11:03:23,929.929 INFO    ] Checking for camera pi updates...
[2026-06-22 11:03:23,964.964 INFO    ] 200
[2026-06-22 11:03:23,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:03:24,013.013 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:03:24,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:03:24,098.098 INFO    ] No camera update needed
[2026-06-22 11:03:24,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:03:24,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:03:24,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:03:24,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:03:26,155.155 INFO    ] ================================================
[2026-06-22 11:03:26,170.170 INFO    ] Launching Daemon at Mon Jun 22 11:03:26 IST 2026
[2026-06-22 11:03:26,181.181 INFO    ] ================================================
[2026-06-22 11:03:26,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:03:26
[2026-06-22 11:03:27,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:03:27,627.627 INFO    ] Initializing speech engine...
[2026-06-22 11:03:27,635.635 INFO    ] 2026-06-22 11:03:27
[2026-06-22 11:03:27,887.887 INFO    ] 2026-06-22 11:03:27
[2026-06-22 11:03:27,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:03:28,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:03:28,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:03:28,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:03:28,316.316 INFO    ] time= 22/06/2026 11:03:28
[2026-06-22 11:03:28,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:03:28,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:03:28,472.472 INFO    ] No existing commands found in stream
[2026-06-22 11:03:33,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:03:33,480.480 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-22 11:03:37,633.633 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:03:37,635.635 INFO    ] Checking for system updates...
[2026-06-22 11:03:37,671.671 INFO    ] 200
[2026-06-22 11:03:37,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:03:37,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:03:37,730.730 INFO    ] No update needed
[2026-06-22 11:03:37,732.732 INFO    ] Checking for camera pi updates...
[2026-06-22 11:03:37,766.766 INFO    ] 200
[2026-06-22 11:03:37,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:03:37,815.815 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:03:37,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:03:37,897.897 INFO    ] No camera update needed
[2026-06-22 11:03:37,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:03:37,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:03:37,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:03:37,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:03:39,951.951 INFO    ] ================================================
[2026-06-22 11:03:39,967.967 INFO    ] Launching Daemon at Mon Jun 22 11:03:39 IST 2026
[2026-06-22 11:03:39,977.977 INFO    ] ================================================
[2026-06-22 11:03:40,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:03:40
[2026-06-22 11:03:41,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:03:41,346.346 INFO    ] Initializing speech engine...
[2026-06-22 11:03:41,352.352 INFO    ] 2026-06-22 11:03:41
[2026-06-22 11:03:41,620.620 INFO    ] 2026-06-22 11:03:41
[2026-06-22 11:03:41,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:03:41,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:03:41,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:03:42,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:03:42,024.024 INFO    ] time= 22/06/2026 11:03:42
[2026-06-22 11:03:42,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:03:42,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:03:42,199.199 INFO    ] No existing commands found in stream
[2026-06-22 11:03:47,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:03:47,227.227 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-22 11:03:52,612.612 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:03:52,615.615 INFO    ] Checking for system updates...
[2026-06-22 11:03:52,653.653 INFO    ] 200
[2026-06-22 11:03:52,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:03:52,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:03:52,721.721 INFO    ] No update needed
[2026-06-22 11:03:52,724.724 INFO    ] Checking for camera pi updates...
[2026-06-22 11:03:52,763.763 INFO    ] 200
[2026-06-22 11:03:52,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:03:52,820.820 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:03:53,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:03:53,008.008 INFO    ] No camera update needed
[2026-06-22 11:03:53,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:03:53,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:03:53,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:03:53,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:03:55,064.064 INFO    ] ================================================
[2026-06-22 11:03:55,079.079 INFO    ] Launching Daemon at Mon Jun 22 11:03:55 IST 2026
[2026-06-22 11:03:55,090.090 INFO    ] ================================================
[2026-06-22 11:03:55,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:03:55
[2026-06-22 11:03:56,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:03:56,449.449 INFO    ] Initializing speech engine...
[2026-06-22 11:03:56,468.468 INFO    ] 2026-06-22 11:03:56
[2026-06-22 11:03:56,721.721 INFO    ] 2026-06-22 11:03:56
[2026-06-22 11:03:56,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:03:56,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:03:57,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:03:57,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:03:57,208.208 INFO    ] time= 22/06/2026 11:03:57
[2026-06-22 11:03:57,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:03:57,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:03:57,417.417 INFO    ] No existing commands found in stream
[2026-06-22 11:04:02,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:04:02,441.441 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-22 11:04:04,263.263 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:04:04,266.266 INFO    ] Checking for system updates...
[2026-06-22 11:04:04,301.301 INFO    ] 200
[2026-06-22 11:04:04,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:04:04,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:04:04,360.360 INFO    ] No update needed
[2026-06-22 11:04:04,362.362 INFO    ] Checking for camera pi updates...
[2026-06-22 11:04:04,396.396 INFO    ] 200
[2026-06-22 11:04:04,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:04:04,444.444 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:04:04,521.521 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:04:04,524.524 INFO    ] No camera update needed
[2026-06-22 11:04:04,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:04:04,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:04:04,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:04:04,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:04:06,582.582 INFO    ] ================================================
[2026-06-22 11:04:06,599.599 INFO    ] Launching Daemon at Mon Jun 22 11:04:06 IST 2026
[2026-06-22 11:04:06,610.610 INFO    ] ================================================
[2026-06-22 11:04:07,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:04:07
[2026-06-22 11:04:07,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:04:08,248.248 INFO    ] Initializing speech engine...
[2026-06-22 11:04:08,257.257 INFO    ] 2026-06-22 11:04:08
[2026-06-22 11:04:08,530.530 INFO    ] 2026-06-22 11:04:08
[2026-06-22 11:04:08,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:04:08,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:04:08,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:04:09,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:04:09,080.080 INFO    ] time= 22/06/2026 11:04:09
[2026-06-22 11:04:09,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:04:09,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:04:09,259.259 INFO    ] No existing commands found in stream
[2026-06-22 11:04:14,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:04:14,294.294 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-22 11:04:16,431.431 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:04:16,434.434 INFO    ] Checking for system updates...
[2026-06-22 11:04:16,480.480 INFO    ] 200
[2026-06-22 11:04:16,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:04:16,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:04:16,543.543 INFO    ] No update needed
[2026-06-22 11:04:16,546.546 INFO    ] Checking for camera pi updates...
[2026-06-22 11:04:16,583.583 INFO    ] 200
[2026-06-22 11:04:16,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:04:16,626.626 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:04:16,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:04:16,743.743 INFO    ] No camera update needed
[2026-06-22 11:04:16,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:04:16,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:04:16,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:04:16,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:04:18,802.802 INFO    ] ================================================
[2026-06-22 11:04:18,817.817 INFO    ] Launching Daemon at Mon Jun 22 11:04:18 IST 2026
[2026-06-22 11:04:18,828.828 INFO    ] ================================================
[2026-06-22 11:04:19,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:04:19
[2026-06-22 11:04:19,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:04:20,272.272 INFO    ] Initializing speech engine...
[2026-06-22 11:04:20,283.283 INFO    ] 2026-06-22 11:04:20
[2026-06-22 11:04:20,559.559 INFO    ] 2026-06-22 11:04:20
[2026-06-22 11:04:20,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:04:20,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:04:20,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:04:21,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:04:21,084.084 INFO    ] time= 22/06/2026 11:04:21
[2026-06-22 11:04:21,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:04:21,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:04:21,267.267 INFO    ] No existing commands found in stream
[2026-06-22 11:04:26,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:04:26,287.287 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-22 11:04:30,224.224 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:04:30,226.226 INFO    ] Checking for system updates...
[2026-06-22 11:04:30,247.247 INFO    ] 200
[2026-06-22 11:04:30,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:04:30,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:04:30,286.286 INFO    ] No update needed
[2026-06-22 11:04:30,289.289 INFO    ] Checking for camera pi updates...
[2026-06-22 11:04:30,327.327 INFO    ] 200
[2026-06-22 11:04:30,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:04:30,374.374 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:04:30,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:04:30,466.466 INFO    ] No camera update needed
[2026-06-22 11:04:30,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:04:30,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:04:30,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:04:30,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:04:32,527.527 INFO    ] ================================================
[2026-06-22 11:04:32,544.544 INFO    ] Launching Daemon at Mon Jun 22 11:04:32 IST 2026
[2026-06-22 11:04:32,556.556 INFO    ] ================================================
[2026-06-22 11:04:33,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:04:33
[2026-06-22 11:04:33,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:04:34,221.221 INFO    ] Initializing speech engine...
[2026-06-22 11:04:34,232.232 INFO    ] 2026-06-22 11:04:34
[2026-06-22 11:04:34,514.514 INFO    ] 2026-06-22 11:04:34
[2026-06-22 11:04:34,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:04:34,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:04:34,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:04:34,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:04:34,999.999 INFO    ] time= 22/06/2026 11:04:34
[2026-06-22 11:04:35,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:04:35,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:04:35,217.217 INFO    ] No existing commands found in stream
[2026-06-22 11:04:40,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:04:40,242.242 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-22 11:04:41,568.568 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:04:41,569.569 INFO    ] Checking for system updates...
[2026-06-22 11:04:41,607.607 INFO    ] 200
[2026-06-22 11:04:41,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:04:41,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:04:41,671.671 INFO    ] No update needed
[2026-06-22 11:04:41,673.673 INFO    ] Checking for camera pi updates...
[2026-06-22 11:04:41,709.709 INFO    ] 200
[2026-06-22 11:04:41,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:04:41,754.754 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:04:41,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:04:41,846.846 INFO    ] No camera update needed
[2026-06-22 11:04:41,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:04:41,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:04:41,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:04:41,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:04:43,906.906 INFO    ] ================================================
[2026-06-22 11:04:43,921.921 INFO    ] Launching Daemon at Mon Jun 22 11:04:43 IST 2026
[2026-06-22 11:04:43,932.932 INFO    ] ================================================
[2026-06-22 11:04:44,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:04:44
[2026-06-22 11:04:44,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:04:45,248.248 INFO    ] Initializing speech engine...
[2026-06-22 11:04:45,254.254 INFO    ] 2026-06-22 11:04:45
[2026-06-22 11:04:45,548.548 INFO    ] 2026-06-22 11:04:45
[2026-06-22 11:04:45,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:04:45,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:04:45,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:04:46,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:04:46,128.128 INFO    ] time= 22/06/2026 11:04:46
[2026-06-22 11:04:46,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:04:46,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:04:46,284.284 INFO    ] No existing commands found in stream
[2026-06-22 11:04:51,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:04:51,314.314 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-22 11:04:54,248.248 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:04:54,250.250 INFO    ] Checking for system updates...
[2026-06-22 11:04:54,287.287 INFO    ] 200
[2026-06-22 11:04:54,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:04:54,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:04:54,350.350 INFO    ] No update needed
[2026-06-22 11:04:54,352.352 INFO    ] Checking for camera pi updates...
[2026-06-22 11:04:54,389.389 INFO    ] 200
[2026-06-22 11:04:54,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:04:54,436.436 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:04:54,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:04:54,518.518 INFO    ] No camera update needed
[2026-06-22 11:04:54,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:04:54,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:04:54,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:04:54,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:04:56,573.573 INFO    ] ================================================
[2026-06-22 11:04:56,589.589 INFO    ] Launching Daemon at Mon Jun 22 11:04:56 IST 2026
[2026-06-22 11:04:56,600.600 INFO    ] ================================================
[2026-06-22 11:04:57,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:04:57
[2026-06-22 11:04:57,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:04:58,225.225 INFO    ] Initializing speech engine...
[2026-06-22 11:04:58,236.236 INFO    ] 2026-06-22 11:04:58
[2026-06-22 11:04:58,522.522 INFO    ] 2026-06-22 11:04:58
[2026-06-22 11:04:58,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:04:58,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:04:58,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:04:59,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:04:59,079.079 INFO    ] time= 22/06/2026 11:04:59
[2026-06-22 11:04:59,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:04:59,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:04:59,236.236 INFO    ] No existing commands found in stream
[2026-06-22 11:05:04,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:05:04,250.250 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-22 11:05:05,300.300 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:05:05,303.303 INFO    ] Checking for system updates...
[2026-06-22 11:05:05,343.343 INFO    ] 200
[2026-06-22 11:05:05,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:05:05,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:05:05,403.403 INFO    ] No update needed
[2026-06-22 11:05:05,405.405 INFO    ] Checking for camera pi updates...
[2026-06-22 11:05:05,441.441 INFO    ] 200
[2026-06-22 11:05:05,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:05:05,491.491 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:05:05,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:05:05,555.555 INFO    ] No camera update needed
[2026-06-22 11:05:05,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:05:05,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:05:05,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:05:05,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:05:07,622.622 INFO    ] ================================================
[2026-06-22 11:05:07,638.638 INFO    ] Launching Daemon at Mon Jun 22 11:05:07 IST 2026
[2026-06-22 11:05:07,648.648 INFO    ] ================================================
[2026-06-22 11:05:08,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:05:08
[2026-06-22 11:05:08,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:05:09,093.093 INFO    ] Initializing speech engine...
[2026-06-22 11:05:09,109.109 INFO    ] 2026-06-22 11:05:09
[2026-06-22 11:05:09,393.393 INFO    ] 2026-06-22 11:05:09
[2026-06-22 11:05:09,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:05:09,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:05:09,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:05:09,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:05:09,807.807 INFO    ] time= 22/06/2026 11:05:09
[2026-06-22 11:05:09,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:05:09,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:05:09,896.896 INFO    ] No existing commands found in stream
[2026-06-22 11:05:14,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:05:14,911.911 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-22 11:05:16,096.096 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:05:16,099.099 INFO    ] Checking for system updates...
[2026-06-22 11:05:16,139.139 INFO    ] 200
[2026-06-22 11:05:16,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:05:16,201.201 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:05:16,204.204 INFO    ] No update needed
[2026-06-22 11:05:16,207.207 INFO    ] Checking for camera pi updates...
[2026-06-22 11:05:16,241.241 INFO    ] 200
[2026-06-22 11:05:16,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:05:16,285.285 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:05:16,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:05:16,377.377 INFO    ] No camera update needed
[2026-06-22 11:05:16,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:05:16,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:05:16,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:05:16,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:05:18,433.433 INFO    ] ================================================
[2026-06-22 11:05:18,449.449 INFO    ] Launching Daemon at Mon Jun 22 11:05:18 IST 2026
[2026-06-22 11:05:18,460.460 INFO    ] ================================================
[2026-06-22 11:05:18,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:05:18
[2026-06-22 11:05:19,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:05:19,819.819 INFO    ] Initializing speech engine...
[2026-06-22 11:05:19,828.828 INFO    ] 2026-06-22 11:05:19
[2026-06-22 11:05:20,077.077 INFO    ] 2026-06-22 11:05:20
[2026-06-22 11:05:20,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:05:20,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:05:20,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:05:20,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:05:20,639.639 INFO    ] time= 22/06/2026 11:05:20
[2026-06-22 11:05:20,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:05:20,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:05:20,817.817 INFO    ] No existing commands found in stream
[2026-06-22 11:05:25,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:05:25,850.850 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-22 11:05:27,144.144 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:05:27,146.146 INFO    ] Checking for system updates...
[2026-06-22 11:05:27,167.167 INFO    ] 200
[2026-06-22 11:05:27,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:05:27,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:05:27,214.214 INFO    ] No update needed
[2026-06-22 11:05:27,217.217 INFO    ] Checking for camera pi updates...
[2026-06-22 11:05:27,251.251 INFO    ] 200
[2026-06-22 11:05:27,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:05:27,296.296 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:05:27,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:05:27,382.382 INFO    ] No camera update needed
[2026-06-22 11:05:27,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:05:27,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:05:27,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:05:27,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:05:29,439.439 INFO    ] ================================================
[2026-06-22 11:05:29,455.455 INFO    ] Launching Daemon at Mon Jun 22 11:05:29 IST 2026
[2026-06-22 11:05:29,466.466 INFO    ] ================================================
[2026-06-22 11:05:30,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:05:30
[2026-06-22 11:05:30,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:05:30,961.961 INFO    ] Initializing speech engine...
[2026-06-22 11:05:30,970.970 INFO    ] 2026-06-22 11:05:30
[2026-06-22 11:05:31,257.257 INFO    ] 2026-06-22 11:05:31
[2026-06-22 11:05:31,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:05:31,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:05:31,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:05:31,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:05:31,807.807 INFO    ] time= 22/06/2026 11:05:31
[2026-06-22 11:05:31,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:05:31,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:05:31,957.957 INFO    ] No existing commands found in stream
[2026-06-22 11:05:36,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:05:36,991.991 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-22 11:05:37,782.782 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:05:37,785.785 INFO    ] Checking for system updates...
[2026-06-22 11:05:37,822.822 INFO    ] 200
[2026-06-22 11:05:37,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:05:37,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:05:37,882.882 INFO    ] No update needed
[2026-06-22 11:05:37,885.885 INFO    ] Checking for camera pi updates...
[2026-06-22 11:05:37,920.920 INFO    ] 200
[2026-06-22 11:05:37,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:05:37,970.970 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:05:38,052.052 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:05:38,055.055 INFO    ] No camera update needed
[2026-06-22 11:05:38,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:05:38,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:05:38,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:05:38,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:05:40,115.115 INFO    ] ================================================
[2026-06-22 11:05:40,130.130 INFO    ] Launching Daemon at Mon Jun 22 11:05:40 IST 2026
[2026-06-22 11:05:40,140.140 INFO    ] ================================================
[2026-06-22 11:05:40,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:05:40
[2026-06-22 11:05:41,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:05:41,518.518 INFO    ] Initializing speech engine...
[2026-06-22 11:05:41,524.524 INFO    ] 2026-06-22 11:05:41
[2026-06-22 11:05:41,788.788 INFO    ] 2026-06-22 11:05:41
[2026-06-22 11:05:41,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:05:42,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:05:42,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:05:42,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:05:42,220.220 INFO    ] time= 22/06/2026 11:05:42
[2026-06-22 11:05:42,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:05:42,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:05:42,350.350 INFO    ] No existing commands found in stream
[2026-06-22 11:05:47,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:05:47,370.370 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-22 11:05:50,287.287 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:05:50,289.289 INFO    ] Checking for system updates...
[2026-06-22 11:05:50,330.330 INFO    ] 200
[2026-06-22 11:05:50,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:05:50,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:05:50,388.388 INFO    ] No update needed
[2026-06-22 11:05:50,390.390 INFO    ] Checking for camera pi updates...
[2026-06-22 11:05:50,424.424 INFO    ] 200
[2026-06-22 11:05:50,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:05:50,467.467 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:05:50,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:05:50,547.547 INFO    ] No camera update needed
[2026-06-22 11:05:50,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:05:50,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:05:50,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:05:50,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:05:52,603.603 INFO    ] ================================================
[2026-06-22 11:05:52,619.619 INFO    ] Launching Daemon at Mon Jun 22 11:05:52 IST 2026
[2026-06-22 11:05:52,630.630 INFO    ] ================================================
[2026-06-22 11:05:53,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:05:53
[2026-06-22 11:05:53,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:05:53,960.960 INFO    ] Initializing speech engine...
[2026-06-22 11:05:53,971.971 INFO    ] 2026-06-22 11:05:53
[2026-06-22 11:05:54,220.220 INFO    ] 2026-06-22 11:05:54
[2026-06-22 11:05:54,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:05:54,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:05:54,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:05:54,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:05:54,628.628 INFO    ] time= 22/06/2026 11:05:54
[2026-06-22 11:05:54,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:05:54,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:05:54,810.810 INFO    ] No existing commands found in stream
[2026-06-22 11:05:59,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:05:59,843.843 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-22 11:06:01,698.698 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:06:01,700.700 INFO    ] Checking for system updates...
[2026-06-22 11:06:01,722.722 INFO    ] 200
[2026-06-22 11:06:01,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:06:01,782.782 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:06:01,789.789 INFO    ] No update needed
[2026-06-22 11:06:01,792.792 INFO    ] Checking for camera pi updates...
[2026-06-22 11:06:01,848.848 INFO    ] 200
[2026-06-22 11:06:01,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:06:01,939.939 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:06:02,125.125 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:06:02,128.128 INFO    ] No camera update needed
[2026-06-22 11:06:02,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:06:02,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:06:02,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:06:02,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:06:04,204.204 INFO    ] ================================================
[2026-06-22 11:06:04,219.219 INFO    ] Launching Daemon at Mon Jun 22 11:06:04 IST 2026
[2026-06-22 11:06:04,231.231 INFO    ] ================================================
[2026-06-22 11:06:04,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:06:04
[2026-06-22 11:06:05,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:06:05,709.709 INFO    ] Initializing speech engine...
[2026-06-22 11:06:05,718.718 INFO    ] 2026-06-22 11:06:05
[2026-06-22 11:06:05,968.968 INFO    ] 2026-06-22 11:06:05
[2026-06-22 11:06:06,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:06:06,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:06:06,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:06:06,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:06:06,346.346 INFO    ] time= 22/06/2026 11:06:06
[2026-06-22 11:06:06,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:06:06,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:06:06,536.536 INFO    ] No existing commands found in stream
[2026-06-22 11:06:11,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:06:11,559.559 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-22 11:06:14,565.565 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:06:14,567.567 INFO    ] Checking for system updates...
[2026-06-22 11:06:14,604.604 INFO    ] 200
[2026-06-22 11:06:14,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:06:14,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:06:14,662.662 INFO    ] No update needed
[2026-06-22 11:06:14,664.664 INFO    ] Checking for camera pi updates...
[2026-06-22 11:06:14,697.697 INFO    ] 200
[2026-06-22 11:06:14,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:06:14,744.744 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:06:14,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:06:14,849.849 INFO    ] No camera update needed
[2026-06-22 11:06:14,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:06:14,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:06:14,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:06:14,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:06:16,906.906 INFO    ] ================================================
[2026-06-22 11:06:16,922.922 INFO    ] Launching Daemon at Mon Jun 22 11:06:16 IST 2026
[2026-06-22 11:06:16,933.933 INFO    ] ================================================
[2026-06-22 11:06:17,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:06:17
[2026-06-22 11:06:18,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:06:18,260.260 INFO    ] Initializing speech engine...
[2026-06-22 11:06:18,266.266 INFO    ] 2026-06-22 11:06:18
[2026-06-22 11:06:18,563.563 INFO    ] 2026-06-22 11:06:18
[2026-06-22 11:06:18,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:06:18,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:06:18,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:06:18,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:06:18,973.973 INFO    ] time= 22/06/2026 11:06:18
[2026-06-22 11:06:18,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:06:18,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:06:19,063.063 INFO    ] No existing commands found in stream
[2026-06-22 11:06:24,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:06:24,101.101 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-22 11:06:26,011.011 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:06:26,014.014 INFO    ] Checking for system updates...
[2026-06-22 11:06:26,052.052 INFO    ] 200
[2026-06-22 11:06:26,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:06:26,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:06:26,117.117 INFO    ] No update needed
[2026-06-22 11:06:26,120.120 INFO    ] Checking for camera pi updates...
[2026-06-22 11:06:26,158.158 INFO    ] 200
[2026-06-22 11:06:26,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:06:26,203.203 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:06:26,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:06:26,287.287 INFO    ] No camera update needed
[2026-06-22 11:06:26,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:06:26,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:06:26,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:06:26,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:06:28,346.346 INFO    ] ================================================
[2026-06-22 11:06:28,362.362 INFO    ] Launching Daemon at Mon Jun 22 11:06:28 IST 2026
[2026-06-22 11:06:28,373.373 INFO    ] ================================================
[2026-06-22 11:06:29,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:06:29
[2026-06-22 11:06:29,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:06:29,872.872 INFO    ] Initializing speech engine...
[2026-06-22 11:06:29,882.882 INFO    ] 2026-06-22 11:06:29
[2026-06-22 11:06:30,172.172 INFO    ] 2026-06-22 11:06:30
[2026-06-22 11:06:30,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:06:30,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:06:30,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:06:30,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:06:30,666.666 INFO    ] time= 22/06/2026 11:06:30
[2026-06-22 11:06:30,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:06:30,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:06:30,875.875 INFO    ] No existing commands found in stream
[2026-06-22 11:06:35,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:06:35,912.912 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-22 11:06:38,721.721 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:06:38,723.723 INFO    ] Checking for system updates...
[2026-06-22 11:06:38,761.761 INFO    ] 200
[2026-06-22 11:06:38,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:06:38,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:06:38,823.823 INFO    ] No update needed
[2026-06-22 11:06:38,825.825 INFO    ] Checking for camera pi updates...
[2026-06-22 11:06:38,860.860 INFO    ] 200
[2026-06-22 11:06:38,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:06:38,905.905 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:06:38,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:06:38,984.984 INFO    ] No camera update needed
[2026-06-22 11:06:38,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:06:38,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:06:38,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:06:39,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:06:41,044.044 INFO    ] ================================================
[2026-06-22 11:06:41,060.060 INFO    ] Launching Daemon at Mon Jun 22 11:06:41 IST 2026
[2026-06-22 11:06:41,071.071 INFO    ] ================================================
[2026-06-22 11:06:41,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:06:41
[2026-06-22 11:06:42,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:06:42,412.412 INFO    ] Initializing speech engine...
[2026-06-22 11:06:42,436.436 INFO    ] 2026-06-22 11:06:42
[2026-06-22 11:06:42,711.711 INFO    ] 2026-06-22 11:06:42
[2026-06-22 11:06:42,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:06:43,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:06:43,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:06:43,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:06:43,208.208 INFO    ] time= 22/06/2026 11:06:43
[2026-06-22 11:06:43,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:06:43,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:06:43,415.415 INFO    ] No existing commands found in stream
[2026-06-22 11:06:48,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:06:48,453.453 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-22 11:06:51,839.839 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:06:51,841.841 INFO    ] Checking for system updates...
[2026-06-22 11:06:51,862.862 INFO    ] 200
[2026-06-22 11:06:51,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:06:51,894.894 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:06:51,896.896 INFO    ] No update needed
[2026-06-22 11:06:51,897.897 INFO    ] Checking for camera pi updates...
[2026-06-22 11:06:51,917.917 INFO    ] 200
[2026-06-22 11:06:51,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:06:51,942.942 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:06:52,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:06:52,050.050 INFO    ] No camera update needed
[2026-06-22 11:06:52,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:06:52,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:06:52,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:06:52,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:06:54,108.108 INFO    ] ================================================
[2026-06-22 11:06:54,125.125 INFO    ] Launching Daemon at Mon Jun 22 11:06:54 IST 2026
[2026-06-22 11:06:54,136.136 INFO    ] ================================================
[2026-06-22 11:06:54,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:06:54
[2026-06-22 11:06:55,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:06:55,590.590 INFO    ] Initializing speech engine...
[2026-06-22 11:06:55,605.605 INFO    ] 2026-06-22 11:06:55
[2026-06-22 11:06:55,892.892 INFO    ] 2026-06-22 11:06:55
[2026-06-22 11:06:55,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:06:56,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:06:56,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:06:56,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:06:56,311.311 INFO    ] time= 22/06/2026 11:06:56
[2026-06-22 11:06:56,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:06:56,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:06:56,507.507 INFO    ] No existing commands found in stream
[2026-06-22 11:07:01,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:07:01,540.540 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-22 11:07:03,298.298 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:07:03,302.302 INFO    ] Checking for system updates...
[2026-06-22 11:07:03,346.346 INFO    ] 200
[2026-06-22 11:07:03,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:07:03,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:07:03,405.405 INFO    ] No update needed
[2026-06-22 11:07:03,408.408 INFO    ] Checking for camera pi updates...
[2026-06-22 11:07:03,451.451 INFO    ] 200
[2026-06-22 11:07:03,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:07:03,493.493 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:07:03,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:07:03,579.579 INFO    ] No camera update needed
[2026-06-22 11:07:03,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:07:03,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:07:03,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:07:03,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:07:05,636.636 INFO    ] ================================================
[2026-06-22 11:07:05,651.651 INFO    ] Launching Daemon at Mon Jun 22 11:07:05 IST 2026
[2026-06-22 11:07:05,662.662 INFO    ] ================================================
[2026-06-22 11:07:06,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:07:06
[2026-06-22 11:07:06,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:07:07,038.038 INFO    ] Initializing speech engine...
[2026-06-22 11:07:07,048.048 INFO    ] 2026-06-22 11:07:07
[2026-06-22 11:07:07,297.297 INFO    ] 2026-06-22 11:07:07
[2026-06-22 11:07:07,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:07:07,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:07:07,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:07:07,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:07:07,673.673 INFO    ] time= 22/06/2026 11:07:07
[2026-06-22 11:07:07,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:07:07,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:07:07,867.867 INFO    ] No existing commands found in stream
[2026-06-22 11:07:12,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:07:12,882.882 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-22 11:07:17,123.123 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:07:17,125.125 INFO    ] Checking for system updates...
[2026-06-22 11:07:17,162.162 INFO    ] 200
[2026-06-22 11:07:17,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:07:17,218.218 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:07:17,220.220 INFO    ] No update needed
[2026-06-22 11:07:17,222.222 INFO    ] Checking for camera pi updates...
[2026-06-22 11:07:17,256.256 INFO    ] 200
[2026-06-22 11:07:17,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:07:17,299.299 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:07:17,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:07:17,387.387 INFO    ] No camera update needed
[2026-06-22 11:07:17,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:07:17,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:07:17,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:07:17,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:07:19,442.442 INFO    ] ================================================
[2026-06-22 11:07:19,457.457 INFO    ] Launching Daemon at Mon Jun 22 11:07:19 IST 2026
[2026-06-22 11:07:19,468.468 INFO    ] ================================================
[2026-06-22 11:07:20,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:07:20
[2026-06-22 11:07:20,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:07:20,804.804 INFO    ] Initializing speech engine...
[2026-06-22 11:07:20,812.812 INFO    ] 2026-06-22 11:07:20
[2026-06-22 11:07:21,053.053 INFO    ] 2026-06-22 11:07:21
[2026-06-22 11:07:21,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:07:21,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:07:21,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:07:21,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:07:21,521.521 INFO    ] time= 22/06/2026 11:07:21
[2026-06-22 11:07:21,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:07:21,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:07:21,750.750 INFO    ] No existing commands found in stream
[2026-06-22 11:07:26,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:07:26,774.774 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-22 11:07:27,330.330 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:07:27,332.332 INFO    ] Checking for system updates...
[2026-06-22 11:07:27,369.369 INFO    ] 200
[2026-06-22 11:07:27,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:07:27,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:07:27,427.427 INFO    ] No update needed
[2026-06-22 11:07:27,429.429 INFO    ] Checking for camera pi updates...
[2026-06-22 11:07:27,462.462 INFO    ] 200
[2026-06-22 11:07:27,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:07:27,510.510 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:07:27,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:07:27,593.593 INFO    ] No camera update needed
[2026-06-22 11:07:27,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:07:27,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:07:27,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:07:27,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:07:29,649.649 INFO    ] ================================================
[2026-06-22 11:07:29,664.664 INFO    ] Launching Daemon at Mon Jun 22 11:07:29 IST 2026
[2026-06-22 11:07:29,675.675 INFO    ] ================================================
[2026-06-22 11:07:30,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:07:30
[2026-06-22 11:07:30,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:07:31,046.046 INFO    ] Initializing speech engine...
[2026-06-22 11:07:31,055.055 INFO    ] 2026-06-22 11:07:31
[2026-06-22 11:07:31,314.314 INFO    ] 2026-06-22 11:07:31
[2026-06-22 11:07:31,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:07:31,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:07:31,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:07:31,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:07:31,864.864 INFO    ] time= 22/06/2026 11:07:31
[2026-06-22 11:07:31,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:07:31,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:07:32,001.001 INFO    ] No existing commands found in stream
[2026-06-22 11:07:37,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:07:37,014.014 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-22 11:07:38,025.025 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:07:38,027.027 INFO    ] Checking for system updates...
[2026-06-22 11:07:38,063.063 INFO    ] 200
[2026-06-22 11:07:38,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:07:38,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:07:38,121.121 INFO    ] No update needed
[2026-06-22 11:07:38,123.123 INFO    ] Checking for camera pi updates...
[2026-06-22 11:07:38,157.157 INFO    ] 200
[2026-06-22 11:07:38,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:07:38,201.201 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:07:38,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:07:38,285.285 INFO    ] No camera update needed
[2026-06-22 11:07:38,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:07:38,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:07:38,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:07:38,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:07:40,341.341 INFO    ] ================================================
[2026-06-22 11:07:40,356.356 INFO    ] Launching Daemon at Mon Jun 22 11:07:40 IST 2026
[2026-06-22 11:07:40,367.367 INFO    ] ================================================
[2026-06-22 11:07:40,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:07:40
[2026-06-22 11:07:41,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:07:41,710.710 INFO    ] Initializing speech engine...
[2026-06-22 11:07:41,717.717 INFO    ] 2026-06-22 11:07:41
[2026-06-22 11:07:42,009.009 INFO    ] 2026-06-22 11:07:41
[2026-06-22 11:07:42,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:07:42,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:07:42,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:07:42,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:07:42,429.429 INFO    ] time= 22/06/2026 11:07:42
[2026-06-22 11:07:42,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:07:42,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:07:42,526.526 INFO    ] No existing commands found in stream
[2026-06-22 11:07:47,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:07:47,559.559 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-22 11:07:50,904.904 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:07:50,906.906 INFO    ] Checking for system updates...
[2026-06-22 11:07:50,929.929 INFO    ] 200
[2026-06-22 11:07:50,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:07:50,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:07:50,962.962 INFO    ] No update needed
[2026-06-22 11:07:50,963.963 INFO    ] Checking for camera pi updates...
[2026-06-22 11:07:50,993.993 INFO    ] 200
[2026-06-22 11:07:50,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:07:51,038.038 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:07:51,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:07:51,119.119 INFO    ] No camera update needed
[2026-06-22 11:07:51,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:07:51,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:07:51,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:07:51,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:07:53,174.174 INFO    ] ================================================
[2026-06-22 11:07:53,189.189 INFO    ] Launching Daemon at Mon Jun 22 11:07:53 IST 2026
[2026-06-22 11:07:53,200.200 INFO    ] ================================================
[2026-06-22 11:07:53,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:07:53
[2026-06-22 11:07:54,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:07:54,533.533 INFO    ] Initializing speech engine...
[2026-06-22 11:07:54,549.549 INFO    ] 2026-06-22 11:07:54
[2026-06-22 11:07:54,834.834 INFO    ] 2026-06-22 11:07:54
[2026-06-22 11:07:54,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:07:55,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:07:55,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:07:55,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:07:55,255.255 INFO    ] time= 22/06/2026 11:07:55
[2026-06-22 11:07:55,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:07:55,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:07:55,340.340 INFO    ] No existing commands found in stream
[2026-06-22 11:08:00,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:08:00,356.356 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-22 11:08:04,687.687 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:08:04,689.689 INFO    ] Checking for system updates...
[2026-06-22 11:08:04,726.726 INFO    ] 200
[2026-06-22 11:08:04,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:08:04,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:08:04,783.783 INFO    ] No update needed
[2026-06-22 11:08:04,786.786 INFO    ] Checking for camera pi updates...
[2026-06-22 11:08:04,819.819 INFO    ] 200
[2026-06-22 11:08:04,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:08:04,863.863 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:08:05,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:08:05,054.054 INFO    ] No camera update needed
[2026-06-22 11:08:05,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:08:05,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:08:05,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:08:05,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:08:07,110.110 INFO    ] ================================================
[2026-06-22 11:08:07,125.125 INFO    ] Launching Daemon at Mon Jun 22 11:08:07 IST 2026
[2026-06-22 11:08:07,138.138 INFO    ] ================================================
[2026-06-22 11:08:07,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:08:07
[2026-06-22 11:08:08,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:08:08,608.608 INFO    ] Initializing speech engine...
[2026-06-22 11:08:08,617.617 INFO    ] 2026-06-22 11:08:08
[2026-06-22 11:08:08,892.892 INFO    ] 2026-06-22 11:08:08
[2026-06-22 11:08:08,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:08:09,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:08:09,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:08:09,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:08:09,360.360 INFO    ] time= 22/06/2026 11:08:09
[2026-06-22 11:08:09,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:08:09,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:08:09,559.559 INFO    ] No existing commands found in stream
[2026-06-22 11:08:14,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:08:14,589.589 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-22 11:08:15,827.827 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:08:15,830.830 INFO    ] Checking for system updates...
[2026-06-22 11:08:15,867.867 INFO    ] 200
[2026-06-22 11:08:15,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:08:15,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:08:15,926.926 INFO    ] No update needed
[2026-06-22 11:08:15,929.929 INFO    ] Checking for camera pi updates...
[2026-06-22 11:08:15,962.962 INFO    ] 200
[2026-06-22 11:08:15,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:08:16,006.006 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:08:16,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:08:16,093.093 INFO    ] No camera update needed
[2026-06-22 11:08:16,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:08:16,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:08:16,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:08:16,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:08:18,149.149 INFO    ] ================================================
[2026-06-22 11:08:18,164.164 INFO    ] Launching Daemon at Mon Jun 22 11:08:18 IST 2026
[2026-06-22 11:08:18,175.175 INFO    ] ================================================
[2026-06-22 11:08:18,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:08:18
[2026-06-22 11:08:19,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:08:19,619.619 INFO    ] Initializing speech engine...
[2026-06-22 11:08:19,635.635 INFO    ] 2026-06-22 11:08:19
[2026-06-22 11:08:19,923.923 INFO    ] 2026-06-22 11:08:19
[2026-06-22 11:08:19,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:08:20,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:08:20,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:08:20,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:08:20,342.342 INFO    ] time= 22/06/2026 11:08:20
[2026-06-22 11:08:20,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:08:20,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:08:20,520.520 INFO    ] No existing commands found in stream
[2026-06-22 11:08:25,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:08:25,553.553 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-22 11:08:28,095.095 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:08:28,098.098 INFO    ] Checking for system updates...
[2026-06-22 11:08:28,135.135 INFO    ] 200
[2026-06-22 11:08:28,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:08:28,193.193 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:08:28,196.196 INFO    ] No update needed
[2026-06-22 11:08:28,199.199 INFO    ] Checking for camera pi updates...
[2026-06-22 11:08:28,234.234 INFO    ] 200
[2026-06-22 11:08:28,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:08:28,279.279 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:08:28,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:08:28,365.365 INFO    ] No camera update needed
[2026-06-22 11:08:28,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:08:28,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:08:28,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:08:28,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:08:30,423.423 INFO    ] ================================================
[2026-06-22 11:08:30,439.439 INFO    ] Launching Daemon at Mon Jun 22 11:08:30 IST 2026
[2026-06-22 11:08:30,451.451 INFO    ] ================================================
[2026-06-22 11:08:31,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:08:31
[2026-06-22 11:08:31,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:08:31,784.784 INFO    ] Initializing speech engine...
[2026-06-22 11:08:31,808.808 INFO    ] 2026-06-22 11:08:31
[2026-06-22 11:08:32,091.091 INFO    ] 2026-06-22 11:08:32
[2026-06-22 11:08:32,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:08:32,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:08:32,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:08:32,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:08:32,613.613 INFO    ] time= 22/06/2026 11:08:32
[2026-06-22 11:08:32,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:08:32,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:08:32,848.848 INFO    ] No existing commands found in stream
[2026-06-22 11:08:37,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:08:37,876.876 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-22 11:08:42,249.249 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:08:42,251.251 INFO    ] Checking for system updates...
[2026-06-22 11:08:42,272.272 INFO    ] 200
[2026-06-22 11:08:42,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:08:42,305.305 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:08:42,306.306 INFO    ] No update needed
[2026-06-22 11:08:42,308.308 INFO    ] Checking for camera pi updates...
[2026-06-22 11:08:42,332.332 INFO    ] 200
[2026-06-22 11:08:42,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:08:42,376.376 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:08:42,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:08:42,467.467 INFO    ] No camera update needed
[2026-06-22 11:08:42,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:08:42,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:08:42,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:08:42,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:08:44,522.522 INFO    ] ================================================
[2026-06-22 11:08:44,538.538 INFO    ] Launching Daemon at Mon Jun 22 11:08:44 IST 2026
[2026-06-22 11:08:44,549.549 INFO    ] ================================================
[2026-06-22 11:08:45,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:08:45
[2026-06-22 11:08:45,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:08:45,957.957 INFO    ] Initializing speech engine...
[2026-06-22 11:08:45,972.972 INFO    ] 2026-06-22 11:08:45
[2026-06-22 11:08:46,239.239 INFO    ] 2026-06-22 11:08:46
[2026-06-22 11:08:46,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:08:46,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:08:46,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:08:46,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:08:46,611.611 INFO    ] time= 22/06/2026 11:08:46
[2026-06-22 11:08:46,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:08:46,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:08:46,804.804 INFO    ] No existing commands found in stream
[2026-06-22 11:08:51,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:08:51,818.818 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-22 11:08:55,753.753 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:08:55,756.756 INFO    ] Checking for system updates...
[2026-06-22 11:08:55,792.792 INFO    ] 200
[2026-06-22 11:08:55,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:08:55,847.847 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:08:55,849.849 INFO    ] No update needed
[2026-06-22 11:08:55,851.851 INFO    ] Checking for camera pi updates...
[2026-06-22 11:08:55,887.887 INFO    ] 200
[2026-06-22 11:08:55,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:08:55,930.930 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:08:56,028.028 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:08:56,031.031 INFO    ] No camera update needed
[2026-06-22 11:08:56,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:08:56,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:08:56,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:08:56,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:08:58,090.090 INFO    ] ================================================
[2026-06-22 11:08:58,106.106 INFO    ] Launching Daemon at Mon Jun 22 11:08:58 IST 2026
[2026-06-22 11:08:58,117.117 INFO    ] ================================================
[2026-06-22 11:08:58,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:08:58
[2026-06-22 11:08:59,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:08:59,488.488 INFO    ] Initializing speech engine...
[2026-06-22 11:08:59,498.498 INFO    ] 2026-06-22 11:08:59
[2026-06-22 11:08:59,747.747 INFO    ] 2026-06-22 11:08:59
[2026-06-22 11:08:59,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:09:00,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:09:00,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:09:00,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:09:00,236.236 INFO    ] time= 22/06/2026 11:09:00
[2026-06-22 11:09:00,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:09:00,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:09:00,413.413 INFO    ] No existing commands found in stream
[2026-06-22 11:09:05,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:09:05,437.437 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-22 11:09:07,323.323 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:09:07,325.325 INFO    ] Checking for system updates...
[2026-06-22 11:09:07,346.346 INFO    ] 200
[2026-06-22 11:09:07,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:09:07,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:09:07,410.410 INFO    ] No update needed
[2026-06-22 11:09:07,412.412 INFO    ] Checking for camera pi updates...
[2026-06-22 11:09:07,446.446 INFO    ] 200
[2026-06-22 11:09:07,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:09:07,489.489 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:09:07,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:09:07,574.574 INFO    ] No camera update needed
[2026-06-22 11:09:07,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:09:07,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:09:07,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:09:07,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:09:09,630.630 INFO    ] ================================================
[2026-06-22 11:09:09,646.646 INFO    ] Launching Daemon at Mon Jun 22 11:09:09 IST 2026
[2026-06-22 11:09:09,657.657 INFO    ] ================================================
[2026-06-22 11:09:10,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:09:10
[2026-06-22 11:09:10,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:09:10,996.996 INFO    ] Initializing speech engine...
[2026-06-22 11:09:11,005.005 INFO    ] 2026-06-22 11:09:10
[2026-06-22 11:09:11,300.300 INFO    ] 2026-06-22 11:09:11
[2026-06-22 11:09:11,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:09:11,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:09:11,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:09:11,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:09:11,699.699 INFO    ] time= 22/06/2026 11:09:11
[2026-06-22 11:09:11,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:09:11,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:09:11,809.809 INFO    ] No existing commands found in stream
[2026-06-22 11:09:16,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:09:16,827.827 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-22 11:09:17,937.937 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:09:17,939.939 INFO    ] Checking for system updates...
[2026-06-22 11:09:17,979.979 INFO    ] 200
[2026-06-22 11:09:17,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:09:18,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:09:18,037.037 INFO    ] No update needed
[2026-06-22 11:09:18,040.040 INFO    ] Checking for camera pi updates...
[2026-06-22 11:09:18,078.078 INFO    ] 200
[2026-06-22 11:09:18,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:09:18,120.120 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:09:18,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:09:18,208.208 INFO    ] No camera update needed
[2026-06-22 11:09:18,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:09:18,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:09:18,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:09:18,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:09:20,264.264 INFO    ] ================================================
[2026-06-22 11:09:20,280.280 INFO    ] Launching Daemon at Mon Jun 22 11:09:20 IST 2026
[2026-06-22 11:09:20,292.292 INFO    ] ================================================
[2026-06-22 11:09:20,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:09:20
[2026-06-22 11:09:21,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:09:21,660.660 INFO    ] Initializing speech engine...
[2026-06-22 11:09:21,670.670 INFO    ] 2026-06-22 11:09:21
[2026-06-22 11:09:21,930.930 INFO    ] 2026-06-22 11:09:21
[2026-06-22 11:09:21,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:09:22,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:09:22,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:09:22,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:09:22,472.472 INFO    ] time= 22/06/2026 11:09:22
[2026-06-22 11:09:22,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:09:22,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:09:22,622.622 INFO    ] No existing commands found in stream
[2026-06-22 11:09:27,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:09:27,640.640 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-22 11:09:28,222.222 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:09:28,224.224 INFO    ] Checking for system updates...
[2026-06-22 11:09:28,254.254 INFO    ] 200
[2026-06-22 11:09:28,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:09:28,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:09:28,314.314 INFO    ] No update needed
[2026-06-22 11:09:28,317.317 INFO    ] Checking for camera pi updates...
[2026-06-22 11:09:28,352.352 INFO    ] 200
[2026-06-22 11:09:28,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:09:28,397.397 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:09:28,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:09:28,470.470 INFO    ] No camera update needed
[2026-06-22 11:09:28,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:09:28,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:09:28,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:09:28,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:09:30,530.530 INFO    ] ================================================
[2026-06-22 11:09:30,546.546 INFO    ] Launching Daemon at Mon Jun 22 11:09:30 IST 2026
[2026-06-22 11:09:30,557.557 INFO    ] ================================================
[2026-06-22 11:09:31,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:09:31
[2026-06-22 11:09:31,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:09:31,932.932 INFO    ] Initializing speech engine...
[2026-06-22 11:09:31,940.940 INFO    ] 2026-06-22 11:09:31
[2026-06-22 11:09:32,236.236 INFO    ] 2026-06-22 11:09:32
[2026-06-22 11:09:32,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:09:32,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:09:32,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:09:32,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:09:32,813.813 INFO    ] time= 22/06/2026 11:09:32
[2026-06-22 11:09:32,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:09:32,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:09:32,980.980 INFO    ] No existing commands found in stream
[2026-06-22 11:09:37,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:09:38,000.000 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-22 11:09:41,384.384 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:09:41,387.387 INFO    ] Checking for system updates...
[2026-06-22 11:09:41,423.423 INFO    ] 200
[2026-06-22 11:09:41,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:09:41,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:09:41,480.480 INFO    ] No update needed
[2026-06-22 11:09:41,482.482 INFO    ] Checking for camera pi updates...
[2026-06-22 11:09:41,519.519 INFO    ] 200
[2026-06-22 11:09:41,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:09:41,562.562 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:09:41,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:09:41,645.645 INFO    ] No camera update needed
[2026-06-22 11:09:41,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:09:41,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:09:41,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:09:41,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:09:43,701.701 INFO    ] ================================================
[2026-06-22 11:09:43,717.717 INFO    ] Launching Daemon at Mon Jun 22 11:09:43 IST 2026
[2026-06-22 11:09:43,728.728 INFO    ] ================================================
[2026-06-22 11:09:44,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:09:44
[2026-06-22 11:09:45,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:09:45,319.319 INFO    ] Initializing speech engine...
[2026-06-22 11:09:45,326.326 INFO    ] 2026-06-22 11:09:45
[2026-06-22 11:09:45,574.574 INFO    ] 2026-06-22 11:09:45
[2026-06-22 11:09:45,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:09:45,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:09:45,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:09:46,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:09:46,051.051 INFO    ] time= 22/06/2026 11:09:46
[2026-06-22 11:09:46,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:09:46,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:09:46,265.265 INFO    ] No existing commands found in stream
[2026-06-22 11:09:51,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:09:51,295.295 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-22 11:09:51,951.951 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:09:51,954.954 INFO    ] Checking for system updates...
[2026-06-22 11:09:51,990.990 INFO    ] 200
[2026-06-22 11:09:51,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:09:52,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:09:52,054.054 INFO    ] No update needed
[2026-06-22 11:09:52,056.056 INFO    ] Checking for camera pi updates...
[2026-06-22 11:09:52,092.092 INFO    ] 200
[2026-06-22 11:09:52,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:09:52,136.136 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:09:52,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:09:52,227.227 INFO    ] No camera update needed
[2026-06-22 11:09:52,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:09:52,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:09:52,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:09:52,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:09:54,284.284 INFO    ] ================================================
[2026-06-22 11:09:54,300.300 INFO    ] Launching Daemon at Mon Jun 22 11:09:54 IST 2026
[2026-06-22 11:09:54,312.312 INFO    ] ================================================
[2026-06-22 11:09:54,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:09:54
[2026-06-22 11:09:55,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:09:55,773.773 INFO    ] Initializing speech engine...
[2026-06-22 11:09:55,782.782 INFO    ] 2026-06-22 11:09:55
[2026-06-22 11:09:56,031.031 INFO    ] 2026-06-22 11:09:56
[2026-06-22 11:09:56,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:09:56,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:09:56,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:09:56,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:09:56,519.519 INFO    ] time= 22/06/2026 11:09:56
[2026-06-22 11:09:56,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:09:56,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:09:56,744.744 INFO    ] No existing commands found in stream
[2026-06-22 11:10:01,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:10:01,778.778 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-22 11:10:08,482.482 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:10:08,485.485 INFO    ] Checking for system updates...
[2026-06-22 11:10:08,521.521 INFO    ] 200
[2026-06-22 11:10:08,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:10:08,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:10:08,580.580 INFO    ] No update needed
[2026-06-22 11:10:08,582.582 INFO    ] Checking for camera pi updates...
[2026-06-22 11:10:08,616.616 INFO    ] 200
[2026-06-22 11:10:08,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:10:08,658.658 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:10:08,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:10:08,859.859 INFO    ] No camera update needed
[2026-06-22 11:10:08,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:10:08,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:10:08,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:10:08,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:10:10,915.915 INFO    ] ================================================
[2026-06-22 11:10:10,930.930 INFO    ] Launching Daemon at Mon Jun 22 11:10:10 IST 2026
[2026-06-22 11:10:10,941.941 INFO    ] ================================================
[2026-06-22 11:10:11,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:10:11
[2026-06-22 11:10:12,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:10:12,372.372 INFO    ] Initializing speech engine...
[2026-06-22 11:10:12,378.378 INFO    ] 2026-06-22 11:10:12
[2026-06-22 11:10:12,626.626 INFO    ] 2026-06-22 11:10:12
[2026-06-22 11:10:12,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:10:12,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:10:12,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:10:13,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:10:13,104.104 INFO    ] time= 22/06/2026 11:10:13
[2026-06-22 11:10:13,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:10:13,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:10:13,325.325 INFO    ] No existing commands found in stream
[2026-06-22 11:10:18,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:10:18,352.352 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-22 11:10:21,468.468 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:10:21,471.471 INFO    ] Checking for system updates...
[2026-06-22 11:10:21,506.506 INFO    ] 200
[2026-06-22 11:10:21,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:10:21,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:10:21,563.563 INFO    ] No update needed
[2026-06-22 11:10:21,566.566 INFO    ] Checking for camera pi updates...
[2026-06-22 11:10:21,599.599 INFO    ] 200
[2026-06-22 11:10:21,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:10:21,645.645 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:10:21,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:10:21,700.700 INFO    ] No camera update needed
[2026-06-22 11:10:21,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:10:21,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:10:21,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:10:21,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:10:23,756.756 INFO    ] ================================================
[2026-06-22 11:10:23,771.771 INFO    ] Launching Daemon at Mon Jun 22 11:10:23 IST 2026
[2026-06-22 11:10:23,782.782 INFO    ] ================================================
[2026-06-22 11:10:24,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:10:24
[2026-06-22 11:10:24,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:10:25,238.238 INFO    ] Initializing speech engine...
[2026-06-22 11:10:25,244.244 INFO    ] 2026-06-22 11:10:25
[2026-06-22 11:10:25,507.507 INFO    ] 2026-06-22 11:10:25
[2026-06-22 11:10:25,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:10:25,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:10:25,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:10:25,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:10:26,014.014 INFO    ] time= 22/06/2026 11:10:25
[2026-06-22 11:10:26,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:10:26,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:10:26,211.211 INFO    ] No existing commands found in stream
[2026-06-22 11:10:31,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:10:31,233.233 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-22 11:10:32,250.250 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:10:32,253.253 INFO    ] Checking for system updates...
[2026-06-22 11:10:32,292.292 INFO    ] 200
[2026-06-22 11:10:32,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:10:32,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:10:32,356.356 INFO    ] No update needed
[2026-06-22 11:10:32,360.360 INFO    ] Checking for camera pi updates...
[2026-06-22 11:10:32,399.399 INFO    ] 200
[2026-06-22 11:10:32,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:10:32,449.449 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:10:32,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:10:32,503.503 INFO    ] No camera update needed
[2026-06-22 11:10:32,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:10:32,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:10:32,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:10:32,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:10:34,562.562 INFO    ] ================================================
[2026-06-22 11:10:34,584.584 INFO    ] Launching Daemon at Mon Jun 22 11:10:34 IST 2026
[2026-06-22 11:10:34,595.595 INFO    ] ================================================
[2026-06-22 11:10:35,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:10:35
[2026-06-22 11:10:35,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:10:36,056.056 INFO    ] Initializing speech engine...
[2026-06-22 11:10:36,066.066 INFO    ] 2026-06-22 11:10:36
[2026-06-22 11:10:36,324.324 INFO    ] 2026-06-22 11:10:36
[2026-06-22 11:10:36,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:10:36,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:10:36,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:10:36,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:10:36,858.858 INFO    ] time= 22/06/2026 11:10:36
[2026-06-22 11:10:36,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:10:36,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:10:36,995.995 INFO    ] No existing commands found in stream
[2026-06-22 11:10:42,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:10:42,016.016 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-22 11:10:45,585.585 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:10:45,587.587 INFO    ] Checking for system updates...
[2026-06-22 11:10:45,607.607 INFO    ] 200
[2026-06-22 11:10:45,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:10:45,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:10:45,652.652 INFO    ] No update needed
[2026-06-22 11:10:45,655.655 INFO    ] Checking for camera pi updates...
[2026-06-22 11:10:45,690.690 INFO    ] 200
[2026-06-22 11:10:45,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:10:45,733.733 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:10:45,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:10:45,832.832 INFO    ] No camera update needed
[2026-06-22 11:10:45,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:10:45,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:10:45,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:10:45,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:10:47,888.888 INFO    ] ================================================
[2026-06-22 11:10:47,904.904 INFO    ] Launching Daemon at Mon Jun 22 11:10:47 IST 2026
[2026-06-22 11:10:47,914.914 INFO    ] ================================================
[2026-06-22 11:10:48,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:10:48
[2026-06-22 11:10:49,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:10:49,397.397 INFO    ] Initializing speech engine...
[2026-06-22 11:10:49,406.406 INFO    ] 2026-06-22 11:10:49
[2026-06-22 11:10:49,677.677 INFO    ] 2026-06-22 11:10:49
[2026-06-22 11:10:49,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:10:49,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:10:49,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:10:50,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:10:50,156.156 INFO    ] time= 22/06/2026 11:10:50
[2026-06-22 11:10:50,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:10:50,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:10:50,391.391 INFO    ] No existing commands found in stream
[2026-06-22 11:10:55,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:10:55,411.411 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-22 11:10:57,714.714 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:10:57,715.715 INFO    ] Checking for system updates...
[2026-06-22 11:10:57,742.742 INFO    ] 200
[2026-06-22 11:10:57,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:10:57,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:10:57,804.804 INFO    ] No update needed
[2026-06-22 11:10:57,807.807 INFO    ] Checking for camera pi updates...
[2026-06-22 11:10:57,841.841 INFO    ] 200
[2026-06-22 11:10:57,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:10:57,884.884 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:10:57,993.993 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:10:57,996.996 INFO    ] No camera update needed
[2026-06-22 11:10:57,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:10:58,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:10:58,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:10:58,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:11:00,051.051 INFO    ] ================================================
[2026-06-22 11:11:00,067.067 INFO    ] Launching Daemon at Mon Jun 22 11:11:00 IST 2026
[2026-06-22 11:11:00,078.078 INFO    ] ================================================
[2026-06-22 11:11:00,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:11:00
[2026-06-22 11:11:01,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:11:01,629.629 INFO    ] Initializing speech engine...
[2026-06-22 11:11:01,634.634 INFO    ] 2026-06-22 11:11:01
[2026-06-22 11:11:01,914.914 INFO    ] 2026-06-22 11:11:01
[2026-06-22 11:11:01,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:11:02,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:11:02,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:11:02,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:11:02,284.284 INFO    ] time= 22/06/2026 11:11:02
[2026-06-22 11:11:02,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:11:02,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:11:02,361.361 INFO    ] No existing commands found in stream
[2026-06-22 11:11:07,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:11:07,374.374 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-22 11:11:08,489.489 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:11:08,491.491 INFO    ] Checking for system updates...
[2026-06-22 11:11:08,527.527 INFO    ] 200
[2026-06-22 11:11:08,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:11:08,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:11:08,586.586 INFO    ] No update needed
[2026-06-22 11:11:08,589.589 INFO    ] Checking for camera pi updates...
[2026-06-22 11:11:08,627.627 INFO    ] 200
[2026-06-22 11:11:08,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:11:08,674.674 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:11:08,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:11:08,759.759 INFO    ] No camera update needed
[2026-06-22 11:11:08,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:11:08,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:11:08,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:11:08,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:11:10,816.816 INFO    ] ================================================
[2026-06-22 11:11:10,832.832 INFO    ] Launching Daemon at Mon Jun 22 11:11:10 IST 2026
[2026-06-22 11:11:10,843.843 INFO    ] ================================================
[2026-06-22 11:11:11,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:11:11
[2026-06-22 11:11:11,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:11:12,174.174 INFO    ] Initializing speech engine...
[2026-06-22 11:11:12,195.195 INFO    ] 2026-06-22 11:11:12
[2026-06-22 11:11:12,456.456 INFO    ] 2026-06-22 11:11:12
[2026-06-22 11:11:12,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:11:12,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:11:12,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:11:12,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:11:12,906.906 INFO    ] time= 22/06/2026 11:11:12
[2026-06-22 11:11:12,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:11:13,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:11:13,165.165 INFO    ] No existing commands found in stream
[2026-06-22 11:11:18,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:11:18,196.196 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-22 11:11:20,551.551 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:11:20,554.554 INFO    ] Checking for system updates...
[2026-06-22 11:11:20,591.591 INFO    ] 200
[2026-06-22 11:11:20,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:11:20,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:11:20,651.651 INFO    ] No update needed
[2026-06-22 11:11:20,653.653 INFO    ] Checking for camera pi updates...
[2026-06-22 11:11:20,690.690 INFO    ] 200
[2026-06-22 11:11:20,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:11:20,733.733 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:11:20,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:11:20,817.817 INFO    ] No camera update needed
[2026-06-22 11:11:20,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:11:20,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:11:20,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:11:20,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:11:22,871.871 INFO    ] ================================================
[2026-06-22 11:11:22,887.887 INFO    ] Launching Daemon at Mon Jun 22 11:11:22 IST 2026
[2026-06-22 11:11:22,899.899 INFO    ] ================================================
[2026-06-22 11:11:23,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:11:23
[2026-06-22 11:11:23,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:11:24,258.258 INFO    ] Initializing speech engine...
[2026-06-22 11:11:24,271.271 INFO    ] 2026-06-22 11:11:24
[2026-06-22 11:11:24,552.552 INFO    ] 2026-06-22 11:11:24
[2026-06-22 11:11:24,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:11:24,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:11:24,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:11:25,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:11:25,251.251 INFO    ] time= 22/06/2026 11:11:25
[2026-06-22 11:11:25,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:11:25,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:11:25,490.490 INFO    ] No existing commands found in stream
[2026-06-22 11:11:30,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:11:30,510.510 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-22 11:11:31,856.856 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:11:31,857.857 INFO    ] Checking for system updates...
[2026-06-22 11:11:31,878.878 INFO    ] 200
[2026-06-22 11:11:31,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:11:31,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:11:31,917.917 INFO    ] No update needed
[2026-06-22 11:11:31,919.919 INFO    ] Checking for camera pi updates...
[2026-06-22 11:11:31,939.939 INFO    ] 200
[2026-06-22 11:11:31,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:11:31,986.986 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:11:32,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:11:32,050.050 INFO    ] No camera update needed
[2026-06-22 11:11:32,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:11:32,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:11:32,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:11:32,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:11:34,112.112 INFO    ] ================================================
[2026-06-22 11:11:34,128.128 INFO    ] Launching Daemon at Mon Jun 22 11:11:34 IST 2026
[2026-06-22 11:11:34,140.140 INFO    ] ================================================
[2026-06-22 11:11:34,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:11:34
[2026-06-22 11:11:35,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:11:35,604.604 INFO    ] Initializing speech engine...
[2026-06-22 11:11:35,613.613 INFO    ] 2026-06-22 11:11:35
[2026-06-22 11:11:35,863.863 INFO    ] 2026-06-22 11:11:35
[2026-06-22 11:11:35,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:11:36,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:11:36,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:11:36,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:11:36,378.378 INFO    ] time= 22/06/2026 11:11:36
[2026-06-22 11:11:36,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:11:36,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:11:36,559.559 INFO    ] No existing commands found in stream
[2026-06-22 11:11:41,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:11:41,591.591 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-22 11:11:45,846.846 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:11:45,849.849 INFO    ] Checking for system updates...
[2026-06-22 11:11:45,891.891 INFO    ] 200
[2026-06-22 11:11:45,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:11:45,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:11:45,955.955 INFO    ] No update needed
[2026-06-22 11:11:45,958.958 INFO    ] Checking for camera pi updates...
[2026-06-22 11:11:45,996.996 INFO    ] 200
[2026-06-22 11:11:45,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:11:46,043.043 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:11:46,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:11:46,132.132 INFO    ] No camera update needed
[2026-06-22 11:11:46,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:11:46,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:11:46,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:11:46,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:11:48,188.188 INFO    ] ================================================
[2026-06-22 11:11:48,204.204 INFO    ] Launching Daemon at Mon Jun 22 11:11:48 IST 2026
[2026-06-22 11:11:48,214.214 INFO    ] ================================================
[2026-06-22 11:11:48,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:11:48
[2026-06-22 11:11:49,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:11:49,685.685 INFO    ] Initializing speech engine...
[2026-06-22 11:11:49,693.693 INFO    ] 2026-06-22 11:11:49
[2026-06-22 11:11:49,967.967 INFO    ] 2026-06-22 11:11:49
[2026-06-22 11:11:50,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:11:50,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:11:50,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:11:50,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:11:50,445.445 INFO    ] time= 22/06/2026 11:11:50
[2026-06-22 11:11:50,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:11:50,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:11:50,663.663 INFO    ] No existing commands found in stream
[2026-06-22 11:11:55,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:11:55,681.681 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-22 11:11:59,814.814 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:11:59,816.816 INFO    ] Checking for system updates...
[2026-06-22 11:11:59,839.839 INFO    ] 200
[2026-06-22 11:11:59,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:11:59,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:11:59,874.874 INFO    ] No update needed
[2026-06-22 11:11:59,876.876 INFO    ] Checking for camera pi updates...
[2026-06-22 11:11:59,900.900 INFO    ] 200
[2026-06-22 11:11:59,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:11:59,948.948 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:12:00,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:12:00,031.031 INFO    ] No camera update needed
[2026-06-22 11:12:00,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:12:00,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:12:00,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:12:00,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:12:02,101.101 INFO    ] ================================================
[2026-06-22 11:12:02,143.143 INFO    ] Launching Daemon at Mon Jun 22 11:12:02 IST 2026
[2026-06-22 11:12:02,162.162 INFO    ] ================================================
[2026-06-22 11:12:02,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:12:02
[2026-06-22 11:12:03,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:12:04,005.005 INFO    ] Initializing speech engine...
[2026-06-22 11:12:04,014.014 INFO    ] 2026-06-22 11:12:04
[2026-06-22 11:12:04,303.303 INFO    ] 2026-06-22 11:12:04
[2026-06-22 11:12:04,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:12:04,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:12:04,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:12:04,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:12:04,850.850 INFO    ] time= 22/06/2026 11:12:04
[2026-06-22 11:12:04,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:12:04,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:12:04,990.990 INFO    ] No existing commands found in stream
[2026-06-22 11:12:10,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:12:10,022.022 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-22 11:12:13,211.211 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:12:13,214.214 INFO    ] Checking for system updates...
[2026-06-22 11:12:13,251.251 INFO    ] 200
[2026-06-22 11:12:13,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:12:13,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:12:13,315.315 INFO    ] No update needed
[2026-06-22 11:12:13,317.317 INFO    ] Checking for camera pi updates...
[2026-06-22 11:12:13,354.354 INFO    ] 200
[2026-06-22 11:12:13,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:12:13,402.402 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:12:13,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:12:13,587.587 INFO    ] No camera update needed
[2026-06-22 11:12:13,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:12:13,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:12:13,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:12:13,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:12:15,642.642 INFO    ] ================================================
[2026-06-22 11:12:15,658.658 INFO    ] Launching Daemon at Mon Jun 22 11:12:15 IST 2026
[2026-06-22 11:12:15,669.669 INFO    ] ================================================
[2026-06-22 11:12:16,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:12:16
[2026-06-22 11:12:16,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:12:17,168.168 INFO    ] Initializing speech engine...
[2026-06-22 11:12:17,176.176 INFO    ] 2026-06-22 11:12:17
[2026-06-22 11:12:17,460.460 INFO    ] 2026-06-22 11:12:17
[2026-06-22 11:12:17,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:12:17,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:12:17,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:12:17,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:12:17,932.932 INFO    ] time= 22/06/2026 11:12:17
[2026-06-22 11:12:17,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:12:18,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:12:18,139.139 INFO    ] No existing commands found in stream
[2026-06-22 11:12:23,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:12:23,169.169 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-22 11:12:26,897.897 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:12:26,899.899 INFO    ] Checking for system updates...
[2026-06-22 11:12:26,920.920 INFO    ] 200
[2026-06-22 11:12:26,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:12:26,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:12:26,978.978 INFO    ] No update needed
[2026-06-22 11:12:26,980.980 INFO    ] Checking for camera pi updates...
[2026-06-22 11:12:27,021.021 INFO    ] 200
[2026-06-22 11:12:27,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:12:27,069.069 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:12:27,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:12:27,161.161 INFO    ] No camera update needed
[2026-06-22 11:12:27,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:12:27,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:12:27,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:12:27,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:12:29,216.216 INFO    ] ================================================
[2026-06-22 11:12:29,231.231 INFO    ] Launching Daemon at Mon Jun 22 11:12:29 IST 2026
[2026-06-22 11:12:29,243.243 INFO    ] ================================================
[2026-06-22 11:12:29,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:12:29
[2026-06-22 11:12:30,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:12:30,606.606 INFO    ] Initializing speech engine...
[2026-06-22 11:12:30,611.611 INFO    ] 2026-06-22 11:12:30
[2026-06-22 11:12:30,871.871 INFO    ] 2026-06-22 11:12:30
[2026-06-22 11:12:30,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:12:31,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:12:31,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:12:31,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:12:31,239.239 INFO    ] time= 22/06/2026 11:12:31
[2026-06-22 11:12:31,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:12:31,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:12:31,366.366 INFO    ] No existing commands found in stream
[2026-06-22 11:12:36,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:12:36,389.389 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-22 11:12:37,203.203 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:12:37,205.205 INFO    ] Checking for system updates...
[2026-06-22 11:12:37,234.234 INFO    ] 200
[2026-06-22 11:12:37,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:12:37,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:12:37,296.296 INFO    ] No update needed
[2026-06-22 11:12:37,299.299 INFO    ] Checking for camera pi updates...
[2026-06-22 11:12:37,336.336 INFO    ] 200
[2026-06-22 11:12:37,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:12:37,379.379 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:12:37,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:12:37,459.459 INFO    ] No camera update needed
[2026-06-22 11:12:37,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:12:37,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:12:37,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:12:37,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:12:39,517.517 INFO    ] ================================================
[2026-06-22 11:12:39,532.532 INFO    ] Launching Daemon at Mon Jun 22 11:12:39 IST 2026
[2026-06-22 11:12:39,544.544 INFO    ] ================================================
[2026-06-22 11:12:40,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:12:40
[2026-06-22 11:12:40,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:12:40,853.853 INFO    ] Initializing speech engine...
[2026-06-22 11:12:40,861.861 INFO    ] 2026-06-22 11:12:40
[2026-06-22 11:12:41,136.136 INFO    ] 2026-06-22 11:12:41
[2026-06-22 11:12:41,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:12:41,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:12:41,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:12:41,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:12:41,512.512 INFO    ] time= 22/06/2026 11:12:41
[2026-06-22 11:12:41,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:12:41,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:12:41,708.708 INFO    ] No existing commands found in stream
[2026-06-22 11:12:46,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:12:46,727.727 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-22 11:12:49,431.431 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:12:49,434.434 INFO    ] Checking for system updates...
[2026-06-22 11:12:49,470.470 INFO    ] 200
[2026-06-22 11:12:49,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:12:49,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:12:49,530.530 INFO    ] No update needed
[2026-06-22 11:12:49,533.533 INFO    ] Checking for camera pi updates...
[2026-06-22 11:12:49,572.572 INFO    ] 200
[2026-06-22 11:12:49,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:12:49,620.620 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:12:49,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:12:49,701.701 INFO    ] No camera update needed
[2026-06-22 11:12:49,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:12:49,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:12:49,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:12:49,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:12:51,759.759 INFO    ] ================================================
[2026-06-22 11:12:51,775.775 INFO    ] Launching Daemon at Mon Jun 22 11:12:51 IST 2026
[2026-06-22 11:12:51,787.787 INFO    ] ================================================
[2026-06-22 11:12:52,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:12:52
[2026-06-22 11:12:53,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:12:53,296.296 INFO    ] Initializing speech engine...
[2026-06-22 11:12:53,302.302 INFO    ] 2026-06-22 11:12:53
[2026-06-22 11:12:53,557.557 INFO    ] 2026-06-22 11:12:53
[2026-06-22 11:12:53,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:12:53,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:12:53,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:12:53,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:12:54,057.057 INFO    ] time= 22/06/2026 11:12:54
[2026-06-22 11:12:54,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:12:54,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:12:54,260.260 INFO    ] No existing commands found in stream
[2026-06-22 11:12:59,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:12:59,277.277 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-22 11:13:03,581.581 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:13:03,584.584 INFO    ] Checking for system updates...
[2026-06-22 11:13:03,624.624 INFO    ] 200
[2026-06-22 11:13:03,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:13:03,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:13:03,694.694 INFO    ] No update needed
[2026-06-22 11:13:03,697.697 INFO    ] Checking for camera pi updates...
[2026-06-22 11:13:03,734.734 INFO    ] 200
[2026-06-22 11:13:03,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:13:03,781.781 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:13:03,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:13:03,864.864 INFO    ] No camera update needed
[2026-06-22 11:13:03,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:13:03,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:13:03,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:13:03,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:13:05,919.919 INFO    ] ================================================
[2026-06-22 11:13:05,934.934 INFO    ] Launching Daemon at Mon Jun 22 11:13:05 IST 2026
[2026-06-22 11:13:05,946.946 INFO    ] ================================================
[2026-06-22 11:13:06,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:13:06
[2026-06-22 11:13:07,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:13:07,410.410 INFO    ] Initializing speech engine...
[2026-06-22 11:13:07,416.416 INFO    ] 2026-06-22 11:13:07
[2026-06-22 11:13:07,678.678 INFO    ] 2026-06-22 11:13:07
[2026-06-22 11:13:07,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:13:07,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:13:07,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:13:08,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:13:08,197.197 INFO    ] time= 22/06/2026 11:13:08
[2026-06-22 11:13:08,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:13:08,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:13:08,361.361 INFO    ] No existing commands found in stream
[2026-06-22 11:13:13,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:13:13,392.392 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-22 11:13:16,463.463 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:13:16,466.466 INFO    ] Checking for system updates...
[2026-06-22 11:13:16,501.501 INFO    ] 200
[2026-06-22 11:13:16,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:13:16,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:13:16,566.566 INFO    ] No update needed
[2026-06-22 11:13:16,569.569 INFO    ] Checking for camera pi updates...
[2026-06-22 11:13:16,604.604 INFO    ] 200
[2026-06-22 11:13:16,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:13:16,653.653 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:13:16,734.734 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:13:16,736.736 INFO    ] No camera update needed
[2026-06-22 11:13:16,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:13:16,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:13:16,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:13:16,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:13:18,795.795 INFO    ] ================================================
[2026-06-22 11:13:18,810.810 INFO    ] Launching Daemon at Mon Jun 22 11:13:18 IST 2026
[2026-06-22 11:13:18,822.822 INFO    ] ================================================
[2026-06-22 11:13:19,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:13:19
[2026-06-22 11:13:19,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:13:20,155.155 INFO    ] Initializing speech engine...
[2026-06-22 11:13:20,169.169 INFO    ] 2026-06-22 11:13:20
[2026-06-22 11:13:20,455.455 INFO    ] 2026-06-22 11:13:20
[2026-06-22 11:13:20,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:13:20,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:13:20,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:13:20,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:13:20,929.929 INFO    ] time= 22/06/2026 11:13:20
[2026-06-22 11:13:20,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:13:21,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:13:21,164.164 INFO    ] No existing commands found in stream
[2026-06-22 11:13:26,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:13:26,186.186 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-22 11:13:30,538.538 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:13:30,541.541 INFO    ] Checking for system updates...
[2026-06-22 11:13:30,580.580 INFO    ] 200
[2026-06-22 11:13:30,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:13:30,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:13:30,638.638 INFO    ] No update needed
[2026-06-22 11:13:30,641.641 INFO    ] Checking for camera pi updates...
[2026-06-22 11:13:30,674.674 INFO    ] 200
[2026-06-22 11:13:30,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:13:30,723.723 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:13:30,781.781 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:13:30,784.784 INFO    ] No camera update needed
[2026-06-22 11:13:30,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:13:30,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:13:30,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:13:30,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:13:32,843.843 INFO    ] ================================================
[2026-06-22 11:13:32,860.860 INFO    ] Launching Daemon at Mon Jun 22 11:13:32 IST 2026
[2026-06-22 11:13:32,872.872 INFO    ] ================================================
[2026-06-22 11:13:33,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:13:33
[2026-06-22 11:13:34,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:13:34,354.354 INFO    ] Initializing speech engine...
[2026-06-22 11:13:34,365.365 INFO    ] 2026-06-22 11:13:34
[2026-06-22 11:13:34,610.610 INFO    ] 2026-06-22 11:13:34
[2026-06-22 11:13:34,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:13:34,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:13:34,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:13:34,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:13:34,978.978 INFO    ] time= 22/06/2026 11:13:34
[2026-06-22 11:13:34,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:13:35,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:13:35,173.173 INFO    ] No existing commands found in stream
[2026-06-22 11:13:40,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:13:40,187.187 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-22 11:13:41,712.712 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:13:41,714.714 INFO    ] Checking for system updates...
[2026-06-22 11:13:41,751.751 INFO    ] 200
[2026-06-22 11:13:41,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:13:41,815.815 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:13:41,818.818 INFO    ] No update needed
[2026-06-22 11:13:41,821.821 INFO    ] Checking for camera pi updates...
[2026-06-22 11:13:41,859.859 INFO    ] 200
[2026-06-22 11:13:41,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:13:41,909.909 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:13:42,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:13:42,018.018 INFO    ] No camera update needed
[2026-06-22 11:13:42,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:13:42,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:13:42,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:13:42,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:13:44,075.075 INFO    ] ================================================
[2026-06-22 11:13:44,091.091 INFO    ] Launching Daemon at Mon Jun 22 11:13:44 IST 2026
[2026-06-22 11:13:44,102.102 INFO    ] ================================================
[2026-06-22 11:13:44,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:13:44
[2026-06-22 11:13:45,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:13:45,436.436 INFO    ] Initializing speech engine...
[2026-06-22 11:13:45,442.442 INFO    ] 2026-06-22 11:13:45
[2026-06-22 11:13:45,704.704 INFO    ] 2026-06-22 11:13:45
[2026-06-22 11:13:45,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:13:45,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:13:45,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:13:46,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:13:46,194.194 INFO    ] time= 22/06/2026 11:13:46
[2026-06-22 11:13:46,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:13:46,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:13:46,403.403 INFO    ] No existing commands found in stream
[2026-06-22 11:13:51,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:13:51,419.419 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-22 11:13:53,670.670 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:13:53,673.673 INFO    ] Checking for system updates...
[2026-06-22 11:13:53,712.712 INFO    ] 200
[2026-06-22 11:13:53,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:13:53,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:13:53,776.776 INFO    ] No update needed
[2026-06-22 11:13:53,778.778 INFO    ] Checking for camera pi updates...
[2026-06-22 11:13:53,815.815 INFO    ] 200
[2026-06-22 11:13:53,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:13:53,858.858 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:13:53,944.944 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:13:53,947.947 INFO    ] No camera update needed
[2026-06-22 11:13:53,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:13:53,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:13:53,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:13:53,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:13:56,005.005 INFO    ] ================================================
[2026-06-22 11:13:56,020.020 INFO    ] Launching Daemon at Mon Jun 22 11:13:56 IST 2026
[2026-06-22 11:13:56,032.032 INFO    ] ================================================
[2026-06-22 11:13:56,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:13:56
[2026-06-22 11:13:57,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:13:57,372.372 INFO    ] Initializing speech engine...
[2026-06-22 11:13:57,382.382 INFO    ] 2026-06-22 11:13:57
[2026-06-22 11:13:57,630.630 INFO    ] 2026-06-22 11:13:57
[2026-06-22 11:13:57,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:13:57,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:13:57,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:13:58,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:13:58,097.097 INFO    ] time= 22/06/2026 11:13:58
[2026-06-22 11:13:58,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:13:58,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:13:58,257.257 INFO    ] No existing commands found in stream
[2026-06-22 11:14:03,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:14:03,271.271 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-22 11:14:06,677.677 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:14:06,680.680 INFO    ] Checking for system updates...
[2026-06-22 11:14:06,720.720 INFO    ] 200
[2026-06-22 11:14:06,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:14:06,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:14:06,786.786 INFO    ] No update needed
[2026-06-22 11:14:06,788.788 INFO    ] Checking for camera pi updates...
[2026-06-22 11:14:06,822.822 INFO    ] 200
[2026-06-22 11:14:06,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:14:06,871.871 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:14:06,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:14:06,958.958 INFO    ] No camera update needed
[2026-06-22 11:14:06,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:14:06,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:14:06,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:14:06,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:14:09,016.016 INFO    ] ================================================
[2026-06-22 11:14:09,032.032 INFO    ] Launching Daemon at Mon Jun 22 11:14:09 IST 2026
[2026-06-22 11:14:09,044.044 INFO    ] ================================================
[2026-06-22 11:14:09,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:14:09
[2026-06-22 11:14:10,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:14:10,377.377 INFO    ] Initializing speech engine...
[2026-06-22 11:14:10,385.385 INFO    ] 2026-06-22 11:14:10
[2026-06-22 11:14:10,632.632 INFO    ] 2026-06-22 11:14:10
[2026-06-22 11:14:10,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:14:10,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:14:10,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:14:11,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:14:11,103.103 INFO    ] time= 22/06/2026 11:14:11
[2026-06-22 11:14:11,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:14:11,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:14:11,344.344 INFO    ] No existing commands found in stream
[2026-06-22 11:14:16,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:14:16,374.374 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-22 11:14:19,616.616 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:14:19,618.618 INFO    ] Checking for system updates...
[2026-06-22 11:14:19,655.655 INFO    ] 200
[2026-06-22 11:14:19,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:14:19,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:14:19,713.713 INFO    ] No update needed
[2026-06-22 11:14:19,716.716 INFO    ] Checking for camera pi updates...
[2026-06-22 11:14:19,755.755 INFO    ] 200
[2026-06-22 11:14:19,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:14:19,797.797 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:14:19,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:14:19,978.978 INFO    ] No camera update needed
[2026-06-22 11:14:19,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:14:19,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:14:19,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:14:19,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:14:22,034.034 INFO    ] ================================================
[2026-06-22 11:14:22,050.050 INFO    ] Launching Daemon at Mon Jun 22 11:14:22 IST 2026
[2026-06-22 11:14:22,061.061 INFO    ] ================================================
[2026-06-22 11:14:22,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:14:22
[2026-06-22 11:14:23,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:14:23,384.384 INFO    ] Initializing speech engine...
[2026-06-22 11:14:23,397.397 INFO    ] 2026-06-22 11:14:23
[2026-06-22 11:14:23,661.661 INFO    ] 2026-06-22 11:14:23
[2026-06-22 11:14:23,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:14:23,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:14:23,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:14:24,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:14:24,079.079 INFO    ] time= 22/06/2026 11:14:24
[2026-06-22 11:14:24,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:14:24,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:14:24,275.275 INFO    ] No existing commands found in stream
[2026-06-22 11:14:29,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:14:29,290.290 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-22 11:14:33,592.592 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:14:33,595.595 INFO    ] Checking for system updates...
[2026-06-22 11:14:33,638.638 INFO    ] 200
[2026-06-22 11:14:33,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:14:33,704.704 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:14:33,708.708 INFO    ] No update needed
[2026-06-22 11:14:33,711.711 INFO    ] Checking for camera pi updates...
[2026-06-22 11:14:33,747.747 INFO    ] 200
[2026-06-22 11:14:33,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:14:33,798.798 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:14:33,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:14:33,883.883 INFO    ] No camera update needed
[2026-06-22 11:14:33,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:14:33,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:14:33,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:14:33,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:14:35,939.939 INFO    ] ================================================
[2026-06-22 11:14:35,955.955 INFO    ] Launching Daemon at Mon Jun 22 11:14:35 IST 2026
[2026-06-22 11:14:35,969.969 INFO    ] ================================================
[2026-06-22 11:14:36,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:14:36
[2026-06-22 11:14:37,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:14:37,353.353 INFO    ] Initializing speech engine...
[2026-06-22 11:14:37,362.362 INFO    ] 2026-06-22 11:14:37
[2026-06-22 11:14:37,607.607 INFO    ] 2026-06-22 11:14:37
[2026-06-22 11:14:37,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:14:37,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:14:37,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:14:38,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:14:38,081.081 INFO    ] time= 22/06/2026 11:14:38
[2026-06-22 11:14:38,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:14:38,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:14:38,309.309 INFO    ] No existing commands found in stream
[2026-06-22 11:14:43,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:14:43,328.328 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-22 11:14:47,710.710 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:14:47,712.712 INFO    ] Checking for system updates...
[2026-06-22 11:14:47,733.733 INFO    ] 200
[2026-06-22 11:14:47,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:14:47,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:14:47,769.769 INFO    ] No update needed
[2026-06-22 11:14:47,771.771 INFO    ] Checking for camera pi updates...
[2026-06-22 11:14:47,801.801 INFO    ] 200
[2026-06-22 11:14:47,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:14:47,845.845 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:14:47,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:14:47,927.927 INFO    ] No camera update needed
[2026-06-22 11:14:47,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:14:47,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:14:47,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:14:47,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:14:49,986.986 INFO    ] ================================================
[2026-06-22 11:14:50,002.002 INFO    ] Launching Daemon at Mon Jun 22 11:14:49 IST 2026
[2026-06-22 11:14:50,012.012 INFO    ] ================================================
[2026-06-22 11:14:50,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:14:50
[2026-06-22 11:14:51,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:14:51,714.714 INFO    ] Initializing speech engine...
[2026-06-22 11:14:51,726.726 INFO    ] 2026-06-22 11:14:51
[2026-06-22 11:14:52,041.041 INFO    ] 2026-06-22 11:14:52
[2026-06-22 11:14:52,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:14:52,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:14:52,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:14:52,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:14:52,549.549 INFO    ] time= 22/06/2026 11:14:52
[2026-06-22 11:14:52,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:14:52,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:14:52,706.706 INFO    ] No existing commands found in stream
[2026-06-22 11:14:57,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:14:57,729.729 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-22 11:15:02,235.235 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:15:02,240.240 INFO    ] Checking for system updates...
[2026-06-22 11:15:02,396.396 INFO    ] 200
[2026-06-22 11:15:02,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:15:02,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:15:02,562.562 INFO    ] No update needed
[2026-06-22 11:15:02,566.566 INFO    ] Checking for camera pi updates...
[2026-06-22 11:15:02,650.650 INFO    ] 200
[2026-06-22 11:15:02,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:15:02,733.733 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:15:02,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:15:02,844.844 INFO    ] No camera update needed
[2026-06-22 11:15:02,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:15:02,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:15:02,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:15:02,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:15:04,909.909 INFO    ] ================================================
[2026-06-22 11:15:04,925.925 INFO    ] Launching Daemon at Mon Jun 22 11:15:04 IST 2026
[2026-06-22 11:15:04,936.936 INFO    ] ================================================
[2026-06-22 11:15:05,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:15:05
[2026-06-22 11:15:06,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:15:06,400.400 INFO    ] Initializing speech engine...
[2026-06-22 11:15:06,405.405 INFO    ] 2026-06-22 11:15:06
[2026-06-22 11:15:06,668.668 INFO    ] 2026-06-22 11:15:06
[2026-06-22 11:15:06,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:15:06,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:15:06,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:15:07,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:15:07,145.145 INFO    ] time= 22/06/2026 11:15:07
[2026-06-22 11:15:07,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:15:07,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:15:07,380.380 INFO    ] No existing commands found in stream
[2026-06-22 11:15:12,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:15:12,410.410 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-22 11:15:14,710.710 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:15:14,713.713 INFO    ] Checking for system updates...
[2026-06-22 11:15:14,767.767 INFO    ] 200
[2026-06-22 11:15:14,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 11:15:14,773.773 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-22 11:15:14,775.775 INFO    ] Checking for camera pi updates...
[2026-06-22 11:15:14,824.824 INFO    ] 200
[2026-06-22 11:15:14,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 11:15:14,830.830 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-22 11:15:14,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:15:14,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:15:14,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:15:14,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:15:16,889.889 INFO    ] ================================================
[2026-06-22 11:15:16,905.905 INFO    ] Launching Daemon at Mon Jun 22 11:15:16 IST 2026
[2026-06-22 11:15:16,915.915 INFO    ] ================================================
[2026-06-22 11:15:17,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:15:17
[2026-06-22 11:15:18,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:15:18,371.371 INFO    ] Initializing speech engine...
[2026-06-22 11:15:18,380.380 INFO    ] 2026-06-22 11:15:18
[2026-06-22 11:15:18,632.632 INFO    ] 2026-06-22 11:15:18
[2026-06-22 11:15:18,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:15:18,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:15:18,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:15:19,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:15:19,126.126 INFO    ] time= 22/06/2026 11:15:19
[2026-06-22 11:15:19,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:15:19,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:15:19,345.345 INFO    ] No existing commands found in stream
[2026-06-22 11:15:24,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:15:24,363.363 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-22 11:15:28,760.760 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:15:28,762.762 INFO    ] Checking for system updates...
[2026-06-22 11:15:28,783.783 INFO    ] 200
[2026-06-22 11:15:28,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:15:28,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:15:28,820.820 INFO    ] No update needed
[2026-06-22 11:15:28,821.821 INFO    ] Checking for camera pi updates...
[2026-06-22 11:15:28,850.850 INFO    ] 200
[2026-06-22 11:15:28,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:15:28,899.899 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:15:28,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:15:28,976.976 INFO    ] No camera update needed
[2026-06-22 11:15:28,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:15:28,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:15:28,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:15:28,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:15:31,037.037 INFO    ] ================================================
[2026-06-22 11:15:31,052.052 INFO    ] Launching Daemon at Mon Jun 22 11:15:31 IST 2026
[2026-06-22 11:15:31,062.062 INFO    ] ================================================
[2026-06-22 11:15:31,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:15:31
[2026-06-22 11:15:32,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:15:32,628.628 INFO    ] Initializing speech engine...
[2026-06-22 11:15:32,640.640 INFO    ] 2026-06-22 11:15:32
[2026-06-22 11:15:32,925.925 INFO    ] 2026-06-22 11:15:32
[2026-06-22 11:15:32,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:15:33,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:15:33,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:15:33,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:15:33,337.337 INFO    ] time= 22/06/2026 11:15:33
[2026-06-22 11:15:33,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:15:33,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:15:33,535.535 INFO    ] No existing commands found in stream
[2026-06-22 11:15:38,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:15:38,553.553 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-22 11:15:39,999.999 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:15:40,002.002 INFO    ] Checking for system updates...
[2026-06-22 11:15:40,037.037 INFO    ] 200
[2026-06-22 11:15:40,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:15:40,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:15:40,096.096 INFO    ] No update needed
[2026-06-22 11:15:40,099.099 INFO    ] Checking for camera pi updates...
[2026-06-22 11:15:40,141.141 INFO    ] 200
[2026-06-22 11:15:40,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:15:40,185.185 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:15:40,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:15:40,278.278 INFO    ] No camera update needed
[2026-06-22 11:15:40,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:15:40,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:15:40,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:15:40,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:15:42,338.338 INFO    ] ================================================
[2026-06-22 11:15:42,354.354 INFO    ] Launching Daemon at Mon Jun 22 11:15:42 IST 2026
[2026-06-22 11:15:42,365.365 INFO    ] ================================================
[2026-06-22 11:15:42,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:15:42
[2026-06-22 11:15:43,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:15:43,932.932 INFO    ] Initializing speech engine...
[2026-06-22 11:15:43,940.940 INFO    ] 2026-06-22 11:15:43
[2026-06-22 11:15:44,253.253 INFO    ] 2026-06-22 11:15:44
[2026-06-22 11:15:44,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:15:44,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:15:44,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:15:44,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:15:44,774.774 INFO    ] time= 22/06/2026 11:15:44
[2026-06-22 11:15:44,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:15:44,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:15:44,908.908 INFO    ] No existing commands found in stream
[2026-06-22 11:15:49,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:15:49,940.940 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-22 11:15:51,418.418 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:15:51,421.421 INFO    ] Checking for system updates...
[2026-06-22 11:15:51,461.461 INFO    ] 200
[2026-06-22 11:15:51,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:15:51,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:15:51,519.519 INFO    ] No update needed
[2026-06-22 11:15:51,521.521 INFO    ] Checking for camera pi updates...
[2026-06-22 11:15:51,560.560 INFO    ] 200
[2026-06-22 11:15:51,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:15:51,609.609 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:15:51,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:15:51,700.700 INFO    ] No camera update needed
[2026-06-22 11:15:51,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:15:51,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:15:51,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:15:51,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:15:53,756.756 INFO    ] ================================================
[2026-06-22 11:15:53,772.772 INFO    ] Launching Daemon at Mon Jun 22 11:15:53 IST 2026
[2026-06-22 11:15:53,783.783 INFO    ] ================================================
[2026-06-22 11:15:54,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:15:54
[2026-06-22 11:15:54,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:15:55,284.284 INFO    ] Initializing speech engine...
[2026-06-22 11:15:55,298.298 INFO    ] 2026-06-22 11:15:55
[2026-06-22 11:15:55,588.588 INFO    ] 2026-06-22 11:15:55
[2026-06-22 11:15:55,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:15:55,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:15:55,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:15:56,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:15:56,076.076 INFO    ] time= 22/06/2026 11:15:56
[2026-06-22 11:15:56,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:15:56,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:15:56,301.301 INFO    ] No existing commands found in stream
[2026-06-22 11:16:01,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:16:01,323.323 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-22 11:16:02,846.846 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:16:02,848.848 INFO    ] Checking for system updates...
[2026-06-22 11:16:02,885.885 INFO    ] 200
[2026-06-22 11:16:02,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:16:02,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:16:02,951.951 INFO    ] No update needed
[2026-06-22 11:16:02,954.954 INFO    ] Checking for camera pi updates...
[2026-06-22 11:16:02,989.989 INFO    ] 200
[2026-06-22 11:16:02,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:16:03,033.033 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:16:03,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:16:03,131.131 INFO    ] No camera update needed
[2026-06-22 11:16:03,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:16:03,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:16:03,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:16:03,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:16:05,187.187 INFO    ] ================================================
[2026-06-22 11:16:05,203.203 INFO    ] Launching Daemon at Mon Jun 22 11:16:05 IST 2026
[2026-06-22 11:16:05,214.214 INFO    ] ================================================
[2026-06-22 11:16:05,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:16:05
[2026-06-22 11:16:06,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:16:06,730.730 INFO    ] Initializing speech engine...
[2026-06-22 11:16:06,739.739 INFO    ] 2026-06-22 11:16:06
[2026-06-22 11:16:06,986.986 INFO    ] 2026-06-22 11:16:06
[2026-06-22 11:16:07,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:16:07,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:16:07,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:16:07,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:16:07,469.469 INFO    ] time= 22/06/2026 11:16:07
[2026-06-22 11:16:07,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:16:07,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:16:07,677.677 INFO    ] No existing commands found in stream
[2026-06-22 11:16:12,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:16:12,704.704 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-22 11:16:15,029.029 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:16:15,031.031 INFO    ] Checking for system updates...
[2026-06-22 11:16:15,054.054 INFO    ] 200
[2026-06-22 11:16:15,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:16:15,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:16:15,118.118 INFO    ] No update needed
[2026-06-22 11:16:15,120.120 INFO    ] Checking for camera pi updates...
[2026-06-22 11:16:15,154.154 INFO    ] 200
[2026-06-22 11:16:15,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:16:15,197.197 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:16:15,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:16:15,280.280 INFO    ] No camera update needed
[2026-06-22 11:16:15,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:16:15,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:16:15,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:16:15,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:16:17,337.337 INFO    ] ================================================
[2026-06-22 11:16:17,353.353 INFO    ] Launching Daemon at Mon Jun 22 11:16:17 IST 2026
[2026-06-22 11:16:17,363.363 INFO    ] ================================================
[2026-06-22 11:16:18,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:16:18
[2026-06-22 11:16:18,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:16:18,858.858 INFO    ] Initializing speech engine...
[2026-06-22 11:16:18,865.865 INFO    ] 2026-06-22 11:16:18
[2026-06-22 11:16:19,133.133 INFO    ] 2026-06-22 11:16:19
[2026-06-22 11:16:19,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:16:19,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:16:19,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:16:19,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:16:19,658.658 INFO    ] time= 22/06/2026 11:16:19
[2026-06-22 11:16:19,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:16:19,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:16:19,792.792 INFO    ] No existing commands found in stream
[2026-06-22 11:16:24,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:16:24,822.822 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-22 11:16:28,369.369 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:16:28,371.371 INFO    ] Checking for system updates...
[2026-06-22 11:16:28,407.407 INFO    ] 200
[2026-06-22 11:16:28,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:16:28,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:16:28,474.474 INFO    ] No update needed
[2026-06-22 11:16:28,477.477 INFO    ] Checking for camera pi updates...
[2026-06-22 11:16:28,513.513 INFO    ] 200
[2026-06-22 11:16:28,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:16:28,558.558 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:16:28,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:16:28,738.738 INFO    ] No camera update needed
[2026-06-22 11:16:28,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:16:28,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:16:28,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:16:28,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:16:30,797.797 INFO    ] ================================================
[2026-06-22 11:16:30,813.813 INFO    ] Launching Daemon at Mon Jun 22 11:16:30 IST 2026
[2026-06-22 11:16:30,824.824 INFO    ] ================================================
[2026-06-22 11:16:31,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:16:31
[2026-06-22 11:16:32,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:16:32,431.431 INFO    ] Initializing speech engine...
[2026-06-22 11:16:32,439.439 INFO    ] 2026-06-22 11:16:32
[2026-06-22 11:16:32,719.719 INFO    ] 2026-06-22 11:16:32
[2026-06-22 11:16:32,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:16:32,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:16:32,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:16:33,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:16:33,145.145 INFO    ] time= 22/06/2026 11:16:33
[2026-06-22 11:16:33,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:16:33,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:16:33,306.306 INFO    ] No existing commands found in stream
[2026-06-22 11:16:38,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:16:38,333.333 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-22 11:16:40,658.658 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:16:40,661.661 INFO    ] Checking for system updates...
[2026-06-22 11:16:40,702.702 INFO    ] 200
[2026-06-22 11:16:40,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:16:40,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:16:40,768.768 INFO    ] No update needed
[2026-06-22 11:16:40,770.770 INFO    ] Checking for camera pi updates...
[2026-06-22 11:16:40,808.808 INFO    ] 200
[2026-06-22 11:16:40,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:16:40,857.857 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:16:40,941.941 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:16:40,943.943 INFO    ] No camera update needed
[2026-06-22 11:16:40,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:16:40,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:16:40,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:16:40,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:16:43,999.999 INFO    ] ================================================
[2026-06-22 11:16:43,015.015 INFO    ] Launching Daemon at Mon Jun 22 11:16:43 IST 2026
[2026-06-22 11:16:43,026.026 INFO    ] ================================================
[2026-06-22 11:16:43,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:16:43
[2026-06-22 11:16:44,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:16:44,362.362 INFO    ] Initializing speech engine...
[2026-06-22 11:16:44,370.370 INFO    ] 2026-06-22 11:16:44
[2026-06-22 11:16:44,622.622 INFO    ] 2026-06-22 11:16:44
[2026-06-22 11:16:44,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:16:44,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:16:44,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:16:45,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:16:45,107.107 INFO    ] time= 22/06/2026 11:16:45
[2026-06-22 11:16:45,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:16:45,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:16:45,328.328 INFO    ] No existing commands found in stream
[2026-06-22 11:16:50,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:16:50,356.356 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-22 11:16:52,938.938 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:16:52,941.941 INFO    ] Checking for system updates...
[2026-06-22 11:16:52,981.981 INFO    ] 200
[2026-06-22 11:16:52,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:16:53,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:16:53,039.039 INFO    ] No update needed
[2026-06-22 11:16:53,042.042 INFO    ] Checking for camera pi updates...
[2026-06-22 11:16:53,080.080 INFO    ] 200
[2026-06-22 11:16:53,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:16:53,129.129 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:16:53,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:16:53,224.224 INFO    ] No camera update needed
[2026-06-22 11:16:53,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:16:53,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:16:53,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:16:53,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:16:55,281.281 INFO    ] ================================================
[2026-06-22 11:16:55,297.297 INFO    ] Launching Daemon at Mon Jun 22 11:16:55 IST 2026
[2026-06-22 11:16:55,308.308 INFO    ] ================================================
[2026-06-22 11:16:55,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:16:55
[2026-06-22 11:16:56,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:16:56,679.679 INFO    ] Initializing speech engine...
[2026-06-22 11:16:56,685.685 INFO    ] 2026-06-22 11:16:56
[2026-06-22 11:16:56,964.964 INFO    ] 2026-06-22 11:16:56
[2026-06-22 11:16:57,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:16:57,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:16:57,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:16:57,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:16:57,763.763 INFO    ] time= 22/06/2026 11:16:57
[2026-06-22 11:16:57,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:16:57,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:16:58,082.082 INFO    ] No existing commands found in stream
[2026-06-22 11:17:03,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:17:03,108.108 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-22 11:17:07,241.241 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:17:07,244.244 INFO    ] Checking for system updates...
[2026-06-22 11:17:07,285.285 INFO    ] 200
[2026-06-22 11:17:07,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:17:07,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:17:07,353.353 INFO    ] No update needed
[2026-06-22 11:17:07,355.355 INFO    ] Checking for camera pi updates...
[2026-06-22 11:17:07,391.391 INFO    ] 200
[2026-06-22 11:17:07,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:17:07,441.441 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:17:07,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:17:07,527.527 INFO    ] No camera update needed
[2026-06-22 11:17:07,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:17:07,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:17:07,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:17:07,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:17:09,588.588 INFO    ] ================================================
[2026-06-22 11:17:09,605.605 INFO    ] Launching Daemon at Mon Jun 22 11:17:09 IST 2026
[2026-06-22 11:17:09,616.616 INFO    ] ================================================
[2026-06-22 11:17:10,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:17:10
[2026-06-22 11:17:10,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:17:11,172.172 INFO    ] Initializing speech engine...
[2026-06-22 11:17:11,186.186 INFO    ] 2026-06-22 11:17:11
[2026-06-22 11:17:11,467.467 INFO    ] 2026-06-22 11:17:11
[2026-06-22 11:17:11,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:17:11,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:17:11,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:17:11,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:17:12,005.005 INFO    ] time= 22/06/2026 11:17:11
[2026-06-22 11:17:12,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:17:12,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:17:12,163.163 INFO    ] No existing commands found in stream
[2026-06-22 11:17:17,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:17:17,191.191 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-22 11:17:19,296.296 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:17:19,299.299 INFO    ] Checking for system updates...
[2026-06-22 11:17:19,341.341 INFO    ] 200
[2026-06-22 11:17:19,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:17:19,407.407 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:17:19,410.410 INFO    ] No update needed
[2026-06-22 11:17:19,413.413 INFO    ] Checking for camera pi updates...
[2026-06-22 11:17:19,452.452 INFO    ] 200
[2026-06-22 11:17:19,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:17:19,506.506 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:17:19,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:17:19,579.579 INFO    ] No camera update needed
[2026-06-22 11:17:19,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:17:19,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:17:19,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:17:19,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:17:21,636.636 INFO    ] ================================================
[2026-06-22 11:17:21,657.657 INFO    ] Launching Daemon at Mon Jun 22 11:17:21 IST 2026
[2026-06-22 11:17:21,669.669 INFO    ] ================================================
[2026-06-22 11:17:22,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:17:22
[2026-06-22 11:17:22,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:17:23,209.209 INFO    ] Initializing speech engine...
[2026-06-22 11:17:23,215.215 INFO    ] 2026-06-22 11:17:23
[2026-06-22 11:17:23,534.534 INFO    ] 2026-06-22 11:17:23
[2026-06-22 11:17:23,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:17:23,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:17:23,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:17:24,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:17:24,047.047 INFO    ] time= 22/06/2026 11:17:24
[2026-06-22 11:17:24,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:17:24,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:17:24,204.204 INFO    ] No existing commands found in stream
[2026-06-22 11:17:29,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:17:29,223.223 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-22 11:17:31,051.051 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:17:31,054.054 INFO    ] Checking for system updates...
[2026-06-22 11:17:31,092.092 INFO    ] 200
[2026-06-22 11:17:31,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:17:31,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:17:31,160.160 INFO    ] No update needed
[2026-06-22 11:17:31,163.163 INFO    ] Checking for camera pi updates...
[2026-06-22 11:17:31,202.202 INFO    ] 200
[2026-06-22 11:17:31,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:17:31,251.251 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:17:31,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:17:31,335.335 INFO    ] No camera update needed
[2026-06-22 11:17:31,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:17:31,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:17:31,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:17:31,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:17:33,397.397 INFO    ] ================================================
[2026-06-22 11:17:33,413.413 INFO    ] Launching Daemon at Mon Jun 22 11:17:33 IST 2026
[2026-06-22 11:17:33,424.424 INFO    ] ================================================
[2026-06-22 11:17:34,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:17:34
[2026-06-22 11:17:34,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:17:35,062.062 INFO    ] Initializing speech engine...
[2026-06-22 11:17:35,069.069 INFO    ] 2026-06-22 11:17:35
[2026-06-22 11:17:35,359.359 INFO    ] 2026-06-22 11:17:35
[2026-06-22 11:17:35,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:17:35,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:17:35,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:17:35,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:17:35,852.852 INFO    ] time= 22/06/2026 11:17:35
[2026-06-22 11:17:35,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:17:35,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:17:36,051.051 INFO    ] No existing commands found in stream
[2026-06-22 11:17:41,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:17:41,077.077 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-22 11:17:43,870.870 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:17:43,871.871 INFO    ] Checking for system updates...
[2026-06-22 11:17:43,892.892 INFO    ] 200
[2026-06-22 11:17:43,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:17:43,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:17:43,926.926 INFO    ] No update needed
[2026-06-22 11:17:43,927.927 INFO    ] Checking for camera pi updates...
[2026-06-22 11:17:43,955.955 INFO    ] 200
[2026-06-22 11:17:43,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:17:44,001.001 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:17:44,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:17:44,056.056 INFO    ] No camera update needed
[2026-06-22 11:17:44,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:17:44,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:17:44,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:17:44,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:17:46,116.116 INFO    ] ================================================
[2026-06-22 11:17:46,131.131 INFO    ] Launching Daemon at Mon Jun 22 11:17:46 IST 2026
[2026-06-22 11:17:46,142.142 INFO    ] ================================================
[2026-06-22 11:17:46,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:17:46
[2026-06-22 11:17:47,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:17:47,493.493 INFO    ] Initializing speech engine...
[2026-06-22 11:17:47,519.519 INFO    ] 2026-06-22 11:17:47
[2026-06-22 11:17:47,794.794 INFO    ] 2026-06-22 11:17:47
[2026-06-22 11:17:47,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:17:47,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:17:47,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:17:48,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:17:48,181.181 INFO    ] time= 22/06/2026 11:17:48
[2026-06-22 11:17:48,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:17:48,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:17:48,307.307 INFO    ] No existing commands found in stream
[2026-06-22 11:17:53,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:17:53,322.322 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-22 11:17:56,095.095 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:17:56,098.098 INFO    ] Checking for system updates...
[2026-06-22 11:17:56,134.134 INFO    ] 200
[2026-06-22 11:17:56,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:17:56,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:17:56,201.201 INFO    ] No update needed
[2026-06-22 11:17:56,204.204 INFO    ] Checking for camera pi updates...
[2026-06-22 11:17:56,243.243 INFO    ] 200
[2026-06-22 11:17:56,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:17:56,293.293 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:17:56,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:17:56,399.399 INFO    ] No camera update needed
[2026-06-22 11:17:56,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:17:56,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:17:56,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:17:56,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:17:58,456.456 INFO    ] ================================================
[2026-06-22 11:17:58,471.471 INFO    ] Launching Daemon at Mon Jun 22 11:17:58 IST 2026
[2026-06-22 11:17:58,483.483 INFO    ] ================================================
[2026-06-22 11:17:58,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:17:58
[2026-06-22 11:17:59,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:17:59,819.819 INFO    ] Initializing speech engine...
[2026-06-22 11:17:59,842.842 INFO    ] 2026-06-22 11:17:59
[2026-06-22 11:18:00,093.093 INFO    ] 2026-06-22 11:18:00
[2026-06-22 11:18:00,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:18:00,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:18:00,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:18:00,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:18:00,651.651 INFO    ] time= 22/06/2026 11:18:00
[2026-06-22 11:18:00,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:18:00,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:18:00,807.807 INFO    ] No existing commands found in stream
[2026-06-22 11:18:05,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:18:05,834.834 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-22 11:18:07,824.824 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:18:07,827.827 INFO    ] Checking for system updates...
[2026-06-22 11:18:07,862.862 INFO    ] 200
[2026-06-22 11:18:07,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:18:07,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:18:07,921.921 INFO    ] No update needed
[2026-06-22 11:18:07,924.924 INFO    ] Checking for camera pi updates...
[2026-06-22 11:18:07,957.957 INFO    ] 200
[2026-06-22 11:18:07,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:18:08,000.000 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:18:08,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:18:08,086.086 INFO    ] No camera update needed
[2026-06-22 11:18:08,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:18:08,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:18:08,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:18:08,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:18:10,143.143 INFO    ] ================================================
[2026-06-22 11:18:10,158.158 INFO    ] Launching Daemon at Mon Jun 22 11:18:10 IST 2026
[2026-06-22 11:18:10,169.169 INFO    ] ================================================
[2026-06-22 11:18:10,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:18:10
[2026-06-22 11:18:11,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:18:11,602.602 INFO    ] Initializing speech engine...
[2026-06-22 11:18:11,610.610 INFO    ] 2026-06-22 11:18:11
[2026-06-22 11:18:11,859.859 INFO    ] 2026-06-22 11:18:11
[2026-06-22 11:18:11,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:18:12,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:18:12,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:18:12,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:18:12,417.417 INFO    ] time= 22/06/2026 11:18:12
[2026-06-22 11:18:12,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:18:12,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:18:12,568.568 INFO    ] No existing commands found in stream
[2026-06-22 11:18:17,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:18:17,586.586 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-22 11:18:19,712.712 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:18:19,713.713 INFO    ] Checking for system updates...
[2026-06-22 11:18:19,736.736 INFO    ] 200
[2026-06-22 11:18:19,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:18:19,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:18:19,776.776 INFO    ] No update needed
[2026-06-22 11:18:19,778.778 INFO    ] Checking for camera pi updates...
[2026-06-22 11:18:19,816.816 INFO    ] 200
[2026-06-22 11:18:19,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:18:19,864.864 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:18:19,940.940 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:18:19,943.943 INFO    ] No camera update needed
[2026-06-22 11:18:19,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:18:19,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:18:19,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:18:19,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:18:22,002.002 INFO    ] ================================================
[2026-06-22 11:18:22,017.017 INFO    ] Launching Daemon at Mon Jun 22 11:18:22 IST 2026
[2026-06-22 11:18:22,028.028 INFO    ] ================================================
[2026-06-22 11:18:22,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:18:22
[2026-06-22 11:18:23,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:18:23,461.461 INFO    ] Initializing speech engine...
[2026-06-22 11:18:23,467.467 INFO    ] 2026-06-22 11:18:23
[2026-06-22 11:18:23,715.715 INFO    ] 2026-06-22 11:18:23
[2026-06-22 11:18:23,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:18:24,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:18:24,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:18:24,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:18:24,272.272 INFO    ] time= 22/06/2026 11:18:24
[2026-06-22 11:18:24,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:18:24,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:18:24,425.425 INFO    ] No existing commands found in stream
[2026-06-22 11:18:29,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:18:29,452.452 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-22 11:18:33,458.458 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:18:33,461.461 INFO    ] Checking for system updates...
[2026-06-22 11:18:33,501.501 INFO    ] 200
[2026-06-22 11:18:33,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:18:33,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:18:33,561.561 INFO    ] No update needed
[2026-06-22 11:18:33,563.563 INFO    ] Checking for camera pi updates...
[2026-06-22 11:18:33,597.597 INFO    ] 200
[2026-06-22 11:18:33,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:18:33,646.646 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:18:33,741.741 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:18:33,743.743 INFO    ] No camera update needed
[2026-06-22 11:18:33,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:18:33,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:18:33,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:18:33,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:18:35,799.799 INFO    ] ================================================
[2026-06-22 11:18:35,814.814 INFO    ] Launching Daemon at Mon Jun 22 11:18:35 IST 2026
[2026-06-22 11:18:35,825.825 INFO    ] ================================================
[2026-06-22 11:18:36,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:18:36
[2026-06-22 11:18:36,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:18:37,168.168 INFO    ] Initializing speech engine...
[2026-06-22 11:18:37,177.177 INFO    ] 2026-06-22 11:18:37
[2026-06-22 11:18:37,427.427 INFO    ] 2026-06-22 11:18:37
[2026-06-22 11:18:37,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:18:37,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:18:37,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:18:37,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:18:37,936.936 INFO    ] time= 22/06/2026 11:18:37
[2026-06-22 11:18:37,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:18:38,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:18:38,137.137 INFO    ] No existing commands found in stream
[2026-06-22 11:18:43,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:18:43,169.169 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-22 11:18:45,624.624 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:18:45,627.627 INFO    ] Checking for system updates...
[2026-06-22 11:18:45,664.664 INFO    ] 200
[2026-06-22 11:18:45,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:18:45,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:18:45,725.725 INFO    ] No update needed
[2026-06-22 11:18:45,728.728 INFO    ] Checking for camera pi updates...
[2026-06-22 11:18:45,763.763 INFO    ] 200
[2026-06-22 11:18:45,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:18:45,808.808 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:18:45,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:18:45,893.893 INFO    ] No camera update needed
[2026-06-22 11:18:45,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:18:45,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:18:45,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:18:45,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:18:47,955.955 INFO    ] ================================================
[2026-06-22 11:18:47,970.970 INFO    ] Launching Daemon at Mon Jun 22 11:18:47 IST 2026
[2026-06-22 11:18:47,981.981 INFO    ] ================================================
[2026-06-22 11:18:48,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:18:48
[2026-06-22 11:18:49,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:18:49,326.326 INFO    ] Initializing speech engine...
[2026-06-22 11:18:49,331.331 INFO    ] 2026-06-22 11:18:49
[2026-06-22 11:18:49,579.579 INFO    ] 2026-06-22 11:18:49
[2026-06-22 11:18:49,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:18:49,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:18:49,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:18:50,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:18:50,076.076 INFO    ] time= 22/06/2026 11:18:50
[2026-06-22 11:18:50,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:18:50,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:18:50,276.276 INFO    ] No existing commands found in stream
[2026-06-22 11:18:55,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:18:55,303.303 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-22 11:18:58,736.736 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:18:58,738.738 INFO    ] Checking for system updates...
[2026-06-22 11:18:58,759.759 INFO    ] 200
[2026-06-22 11:18:58,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:18:58,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:18:58,794.794 INFO    ] No update needed
[2026-06-22 11:18:58,796.796 INFO    ] Checking for camera pi updates...
[2026-06-22 11:18:58,822.822 INFO    ] 200
[2026-06-22 11:18:58,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:18:58,874.874 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:18:58,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:18:58,965.965 INFO    ] No camera update needed
[2026-06-22 11:18:58,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:18:58,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:18:58,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:18:58,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:19:01,066.066 INFO    ] ================================================
[2026-06-22 11:19:01,113.113 INFO    ] Launching Daemon at Mon Jun 22 11:19:01 IST 2026
[2026-06-22 11:19:01,141.141 INFO    ] ================================================
[2026-06-22 11:19:01,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:19:01
[2026-06-22 11:19:02,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:19:02,889.889 INFO    ] Initializing speech engine...
[2026-06-22 11:19:02,897.897 INFO    ] 2026-06-22 11:19:02
[2026-06-22 11:19:03,157.157 INFO    ] 2026-06-22 11:19:03
[2026-06-22 11:19:03,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:19:03,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:19:03,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:19:03,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:19:03,633.633 INFO    ] time= 22/06/2026 11:19:03
[2026-06-22 11:19:03,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:19:03,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:19:03,859.859 INFO    ] No existing commands found in stream
[2026-06-22 11:19:08,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:19:08,887.887 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-22 11:19:12,104.104 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:19:12,107.107 INFO    ] Checking for system updates...
[2026-06-22 11:19:12,164.164 INFO    ] 200
[2026-06-22 11:19:12,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:19:12,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:19:12,228.228 INFO    ] No update needed
[2026-06-22 11:19:12,230.230 INFO    ] Checking for camera pi updates...
[2026-06-22 11:19:12,265.265 INFO    ] 200
[2026-06-22 11:19:12,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:19:12,308.308 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:19:12,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:19:12,416.416 INFO    ] No camera update needed
[2026-06-22 11:19:12,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:19:12,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:19:12,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:19:12,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:19:14,472.472 INFO    ] ================================================
[2026-06-22 11:19:14,487.487 INFO    ] Launching Daemon at Mon Jun 22 11:19:14 IST 2026
[2026-06-22 11:19:14,497.497 INFO    ] ================================================
[2026-06-22 11:19:15,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:19:15
[2026-06-22 11:19:15,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:19:15,926.926 INFO    ] Initializing speech engine...
[2026-06-22 11:19:15,932.932 INFO    ] 2026-06-22 11:19:15
[2026-06-22 11:19:16,191.191 INFO    ] 2026-06-22 11:19:16
[2026-06-22 11:19:16,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:19:16,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:19:16,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:19:16,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:19:16,671.671 INFO    ] time= 22/06/2026 11:19:16
[2026-06-22 11:19:16,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:19:16,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:19:16,874.874 INFO    ] No existing commands found in stream
[2026-06-22 11:19:21,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:19:21,901.901 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-22 11:19:25,423.423 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:19:25,425.425 INFO    ] Checking for system updates...
[2026-06-22 11:19:25,450.450 INFO    ] 200
[2026-06-22 11:19:25,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:19:25,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:19:25,509.509 INFO    ] No update needed
[2026-06-22 11:19:25,511.511 INFO    ] Checking for camera pi updates...
[2026-06-22 11:19:25,545.545 INFO    ] 200
[2026-06-22 11:19:25,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:19:25,592.592 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:19:25,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:19:25,671.671 INFO    ] No camera update needed
[2026-06-22 11:19:25,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:19:25,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:19:25,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:19:25,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:19:27,728.728 INFO    ] ================================================
[2026-06-22 11:19:27,743.743 INFO    ] Launching Daemon at Mon Jun 22 11:19:27 IST 2026
[2026-06-22 11:19:27,754.754 INFO    ] ================================================
[2026-06-22 11:19:28,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:19:28
[2026-06-22 11:19:28,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:19:29,171.171 INFO    ] Initializing speech engine...
[2026-06-22 11:19:29,183.183 INFO    ] 2026-06-22 11:19:29
[2026-06-22 11:19:29,431.431 INFO    ] 2026-06-22 11:19:29
[2026-06-22 11:19:29,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:19:29,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:19:29,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:19:29,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:19:29,800.800 INFO    ] time= 22/06/2026 11:19:29
[2026-06-22 11:19:29,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:19:29,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:19:29,978.978 INFO    ] No existing commands found in stream
[2026-06-22 11:19:34,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:19:35,002.002 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-22 11:19:35,566.566 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:19:35,568.568 INFO    ] Checking for system updates...
[2026-06-22 11:19:35,608.608 INFO    ] 200
[2026-06-22 11:19:35,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:19:35,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:19:35,666.666 INFO    ] No update needed
[2026-06-22 11:19:35,668.668 INFO    ] Checking for camera pi updates...
[2026-06-22 11:19:35,706.706 INFO    ] 200
[2026-06-22 11:19:35,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:19:35,755.755 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:19:35,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:19:35,841.841 INFO    ] No camera update needed
[2026-06-22 11:19:35,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:19:35,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:19:35,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:19:35,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:19:37,898.898 INFO    ] ================================================
[2026-06-22 11:19:37,913.913 INFO    ] Launching Daemon at Mon Jun 22 11:19:37 IST 2026
[2026-06-22 11:19:37,924.924 INFO    ] ================================================
[2026-06-22 11:19:38,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:19:38
[2026-06-22 11:19:39,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:19:39,318.318 INFO    ] Initializing speech engine...
[2026-06-22 11:19:39,340.340 INFO    ] 2026-06-22 11:19:39
[2026-06-22 11:19:39,594.594 INFO    ] 2026-06-22 11:19:39
[2026-06-22 11:19:39,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:19:39,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:19:39,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:19:40,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:19:40,088.088 INFO    ] time= 22/06/2026 11:19:40
[2026-06-22 11:19:40,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:19:40,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:19:40,204.204 INFO    ] No existing commands found in stream
[2026-06-22 11:19:45,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:19:45,218.218 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-22 11:19:46,032.032 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:19:46,035.035 INFO    ] Checking for system updates...
[2026-06-22 11:19:46,076.076 INFO    ] 200
[2026-06-22 11:19:46,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:19:46,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:19:46,139.139 INFO    ] No update needed
[2026-06-22 11:19:46,142.142 INFO    ] Checking for camera pi updates...
[2026-06-22 11:19:46,180.180 INFO    ] 200
[2026-06-22 11:19:46,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:19:46,236.236 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:19:46,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:19:46,321.321 INFO    ] No camera update needed
[2026-06-22 11:19:46,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:19:46,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:19:46,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:19:46,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:19:48,381.381 INFO    ] ================================================
[2026-06-22 11:19:48,397.397 INFO    ] Launching Daemon at Mon Jun 22 11:19:48 IST 2026
[2026-06-22 11:19:48,407.407 INFO    ] ================================================
[2026-06-22 11:19:49,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:19:49
[2026-06-22 11:19:49,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:19:49,882.882 INFO    ] Initializing speech engine...
[2026-06-22 11:19:49,907.907 INFO    ] 2026-06-22 11:19:49
[2026-06-22 11:19:50,189.189 INFO    ] 2026-06-22 11:19:50
[2026-06-22 11:19:50,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:19:50,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:19:50,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:19:50,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:19:50,575.575 INFO    ] time= 22/06/2026 11:19:50
[2026-06-22 11:19:50,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:19:50,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:19:50,701.701 INFO    ] No existing commands found in stream
[2026-06-22 11:19:55,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:19:55,716.716 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-22 11:20:00,061.061 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:20:00,064.064 INFO    ] Checking for system updates...
[2026-06-22 11:20:00,103.103 INFO    ] 200
[2026-06-22 11:20:00,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:20:00,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:20:00,169.169 INFO    ] No update needed
[2026-06-22 11:20:00,171.171 INFO    ] Checking for camera pi updates...
[2026-06-22 11:20:00,209.209 INFO    ] 200
[2026-06-22 11:20:00,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:20:00,251.251 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:20:00,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:20:00,334.334 INFO    ] No camera update needed
[2026-06-22 11:20:00,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:20:00,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:20:00,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:20:00,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:20:02,416.416 INFO    ] ================================================
[2026-06-22 11:20:02,439.439 INFO    ] Launching Daemon at Mon Jun 22 11:20:02 IST 2026
[2026-06-22 11:20:02,457.457 INFO    ] ================================================
[2026-06-22 11:20:03,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:20:03
[2026-06-22 11:20:03,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:20:03,978.978 INFO    ] Initializing speech engine...
[2026-06-22 11:20:04,001.001 INFO    ] 2026-06-22 11:20:03
[2026-06-22 11:20:04,258.258 INFO    ] 2026-06-22 11:20:04
[2026-06-22 11:20:04,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:20:04,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:20:04,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:20:04,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:20:04,767.767 INFO    ] time= 22/06/2026 11:20:04
[2026-06-22 11:20:04,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:20:04,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:20:04,978.978 INFO    ] No existing commands found in stream
[2026-06-22 11:20:10,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:20:10,003.003 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-22 11:20:14,523.523 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:20:14,526.526 INFO    ] Checking for system updates...
[2026-06-22 11:20:14,562.562 INFO    ] 200
[2026-06-22 11:20:14,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:20:14,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:20:14,627.627 INFO    ] No update needed
[2026-06-22 11:20:14,629.629 INFO    ] Checking for camera pi updates...
[2026-06-22 11:20:14,662.662 INFO    ] 200
[2026-06-22 11:20:14,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:20:14,711.711 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:20:14,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:20:14,803.803 INFO    ] No camera update needed
[2026-06-22 11:20:14,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:20:14,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:20:14,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:20:14,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:20:16,858.858 INFO    ] ================================================
[2026-06-22 11:20:16,873.873 INFO    ] Launching Daemon at Mon Jun 22 11:20:16 IST 2026
[2026-06-22 11:20:16,884.884 INFO    ] ================================================
[2026-06-22 11:20:17,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:20:17
[2026-06-22 11:20:18,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:20:18,434.434 INFO    ] Initializing speech engine...
[2026-06-22 11:20:18,449.449 INFO    ] 2026-06-22 11:20:18
[2026-06-22 11:20:18,735.735 INFO    ] 2026-06-22 11:20:18
[2026-06-22 11:20:18,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:20:19,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:20:19,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:20:19,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:20:19,280.280 INFO    ] time= 22/06/2026 11:20:19
[2026-06-22 11:20:19,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:20:19,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:20:19,434.434 INFO    ] No existing commands found in stream
[2026-06-22 11:20:24,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:20:24,468.468 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-22 11:20:27,920.920 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:20:27,923.923 INFO    ] Checking for system updates...
[2026-06-22 11:20:27,962.962 INFO    ] 200
[2026-06-22 11:20:27,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:20:28,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:20:28,026.026 INFO    ] No update needed
[2026-06-22 11:20:28,028.028 INFO    ] Checking for camera pi updates...
[2026-06-22 11:20:28,065.065 INFO    ] 200
[2026-06-22 11:20:28,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:20:28,113.113 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:20:28,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:20:28,174.174 INFO    ] No camera update needed
[2026-06-22 11:20:28,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:20:28,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:20:28,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:20:28,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:20:30,230.230 INFO    ] ================================================
[2026-06-22 11:20:30,245.245 INFO    ] Launching Daemon at Mon Jun 22 11:20:30 IST 2026
[2026-06-22 11:20:30,257.257 INFO    ] ================================================
[2026-06-22 11:20:30,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:20:30
[2026-06-22 11:20:31,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:20:31,727.727 INFO    ] Initializing speech engine...
[2026-06-22 11:20:31,741.741 INFO    ] 2026-06-22 11:20:31
[2026-06-22 11:20:32,027.027 INFO    ] 2026-06-22 11:20:31
[2026-06-22 11:20:32,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:20:32,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:20:32,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:20:32,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:20:32,618.618 INFO    ] time= 22/06/2026 11:20:32
[2026-06-22 11:20:32,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:20:32,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:20:32,747.747 INFO    ] No existing commands found in stream
[2026-06-22 11:20:37,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:20:37,762.762 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-22 11:20:40,221.221 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:20:40,223.223 INFO    ] Checking for system updates...
[2026-06-22 11:20:40,243.243 INFO    ] 200
[2026-06-22 11:20:40,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:20:40,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:20:40,278.278 INFO    ] No update needed
[2026-06-22 11:20:40,280.280 INFO    ] Checking for camera pi updates...
[2026-06-22 11:20:40,299.299 INFO    ] 200
[2026-06-22 11:20:40,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:20:40,339.339 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:20:40,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:20:40,537.537 INFO    ] No camera update needed
[2026-06-22 11:20:40,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:20:40,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:20:40,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:20:40,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:20:42,593.593 INFO    ] ================================================
[2026-06-22 11:20:42,609.609 INFO    ] Launching Daemon at Mon Jun 22 11:20:42 IST 2026
[2026-06-22 11:20:42,620.620 INFO    ] ================================================
[2026-06-22 11:20:43,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:20:43
[2026-06-22 11:20:43,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:20:44,058.058 INFO    ] Initializing speech engine...
[2026-06-22 11:20:44,066.066 INFO    ] 2026-06-22 11:20:44
[2026-06-22 11:20:44,311.311 INFO    ] 2026-06-22 11:20:44
[2026-06-22 11:20:44,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:20:44,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:20:44,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:20:44,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:20:44,869.869 INFO    ] time= 22/06/2026 11:20:44
[2026-06-22 11:20:44,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:20:44,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:20:45,020.020 INFO    ] No existing commands found in stream
[2026-06-22 11:20:50,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:20:50,039.039 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-22 11:20:50,956.956 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:20:50,958.958 INFO    ] Checking for system updates...
[2026-06-22 11:20:50,983.983 INFO    ] 200
[2026-06-22 11:20:50,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:20:51,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:20:51,031.031 INFO    ] No update needed
[2026-06-22 11:20:51,033.033 INFO    ] Checking for camera pi updates...
[2026-06-22 11:20:51,072.072 INFO    ] 200
[2026-06-22 11:20:51,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:20:51,121.121 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:20:51,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:20:51,226.226 INFO    ] No camera update needed
[2026-06-22 11:20:51,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:20:51,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:20:51,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:20:51,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:20:53,283.283 INFO    ] ================================================
[2026-06-22 11:20:53,298.298 INFO    ] Launching Daemon at Mon Jun 22 11:20:53 IST 2026
[2026-06-22 11:20:53,309.309 INFO    ] ================================================
[2026-06-22 11:20:53,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:20:53
[2026-06-22 11:20:54,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:20:54,627.627 INFO    ] Initializing speech engine...
[2026-06-22 11:20:54,646.646 INFO    ] 2026-06-22 11:20:54
[2026-06-22 11:20:54,893.893 INFO    ] 2026-06-22 11:20:54
[2026-06-22 11:20:54,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:20:55,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:20:55,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:20:55,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:20:55,368.368 INFO    ] time= 22/06/2026 11:20:55
[2026-06-22 11:20:55,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:20:55,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:20:55,582.582 INFO    ] No existing commands found in stream
[2026-06-22 11:21:00,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:21:00,610.610 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-22 11:21:03,532.532 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:21:03,534.534 INFO    ] Checking for system updates...
[2026-06-22 11:21:03,574.574 INFO    ] 200
[2026-06-22 11:21:03,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:21:03,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:21:03,638.638 INFO    ] No update needed
[2026-06-22 11:21:03,640.640 INFO    ] Checking for camera pi updates...
[2026-06-22 11:21:03,677.677 INFO    ] 200
[2026-06-22 11:21:03,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:21:03,726.726 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:21:03,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:21:03,809.809 INFO    ] No camera update needed
[2026-06-22 11:21:03,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:21:03,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:21:03,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:21:03,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:21:05,864.864 INFO    ] ================================================
[2026-06-22 11:21:05,879.879 INFO    ] Launching Daemon at Mon Jun 22 11:21:05 IST 2026
[2026-06-22 11:21:05,890.890 INFO    ] ================================================
[2026-06-22 11:21:06,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:21:06
[2026-06-22 11:21:07,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:21:07,371.371 INFO    ] Initializing speech engine...
[2026-06-22 11:21:07,380.380 INFO    ] 2026-06-22 11:21:07
[2026-06-22 11:21:07,654.654 INFO    ] 2026-06-22 11:21:07
[2026-06-22 11:21:07,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:21:07,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:21:07,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:21:08,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:21:08,104.104 INFO    ] time= 22/06/2026 11:21:08
[2026-06-22 11:21:08,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:21:08,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:21:08,339.339 INFO    ] No existing commands found in stream
[2026-06-22 11:21:13,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:21:13,378.378 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-22 11:21:14,235.235 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:21:14,236.236 INFO    ] Checking for system updates...
[2026-06-22 11:21:14,259.259 INFO    ] 200
[2026-06-22 11:21:14,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:21:14,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:21:14,292.292 INFO    ] No update needed
[2026-06-22 11:21:14,293.293 INFO    ] Checking for camera pi updates...
[2026-06-22 11:21:14,317.317 INFO    ] 200
[2026-06-22 11:21:14,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:21:14,359.359 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:21:14,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:21:14,433.433 INFO    ] No camera update needed
[2026-06-22 11:21:14,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:21:14,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:21:14,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:21:14,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:21:16,488.488 INFO    ] ================================================
[2026-06-22 11:21:16,503.503 INFO    ] Launching Daemon at Mon Jun 22 11:21:16 IST 2026
[2026-06-22 11:21:16,514.514 INFO    ] ================================================
[2026-06-22 11:21:17,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:21:17
[2026-06-22 11:21:17,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:21:18,029.029 INFO    ] Initializing speech engine...
[2026-06-22 11:21:18,037.037 INFO    ] 2026-06-22 11:21:18
[2026-06-22 11:21:18,314.314 INFO    ] 2026-06-22 11:21:18
[2026-06-22 11:21:18,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:21:18,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:21:18,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:21:18,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:21:18,876.876 INFO    ] time= 22/06/2026 11:21:18
[2026-06-22 11:21:18,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:21:18,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:21:19,026.026 INFO    ] No existing commands found in stream
[2026-06-22 11:21:24,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:21:24,053.053 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-22 11:21:26,222.222 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:21:26,225.225 INFO    ] Checking for system updates...
[2026-06-22 11:21:26,262.262 INFO    ] 200
[2026-06-22 11:21:26,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:21:26,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:21:26,326.326 INFO    ] No update needed
[2026-06-22 11:21:26,329.329 INFO    ] Checking for camera pi updates...
[2026-06-22 11:21:26,362.362 INFO    ] 200
[2026-06-22 11:21:26,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:21:26,409.409 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:21:26,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:21:26,472.472 INFO    ] No camera update needed
[2026-06-22 11:21:26,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:21:26,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:21:26,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:21:26,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:21:28,527.527 INFO    ] ================================================
[2026-06-22 11:21:28,542.542 INFO    ] Launching Daemon at Mon Jun 22 11:21:28 IST 2026
[2026-06-22 11:21:28,553.553 INFO    ] ================================================
[2026-06-22 11:21:29,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:21:29
[2026-06-22 11:21:29,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:21:29,956.956 INFO    ] Initializing speech engine...
[2026-06-22 11:21:29,961.961 INFO    ] 2026-06-22 11:21:29
[2026-06-22 11:21:30,235.235 INFO    ] 2026-06-22 11:21:30
[2026-06-22 11:21:30,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:21:30,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:21:30,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:21:30,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:21:30,680.680 INFO    ] time= 22/06/2026 11:21:30
[2026-06-22 11:21:30,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:21:30,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:21:30,955.955 INFO    ] No existing commands found in stream
[2026-06-22 11:21:35,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:21:35,974.974 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-22 11:21:39,262.262 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:21:39,265.265 INFO    ] Checking for system updates...
[2026-06-22 11:21:39,308.308 INFO    ] 200
[2026-06-22 11:21:39,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:21:39,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:21:39,374.374 INFO    ] No update needed
[2026-06-22 11:21:39,376.376 INFO    ] Checking for camera pi updates...
[2026-06-22 11:21:39,415.415 INFO    ] 200
[2026-06-22 11:21:39,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:21:39,462.462 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:21:39,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:21:39,542.542 INFO    ] No camera update needed
[2026-06-22 11:21:39,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:21:39,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:21:39,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:21:39,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:21:41,602.602 INFO    ] ================================================
[2026-06-22 11:21:41,617.617 INFO    ] Launching Daemon at Mon Jun 22 11:21:41 IST 2026
[2026-06-22 11:21:41,628.628 INFO    ] ================================================
[2026-06-22 11:21:42,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:21:42
[2026-06-22 11:21:42,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:21:43,025.025 INFO    ] Initializing speech engine...
[2026-06-22 11:21:43,038.038 INFO    ] 2026-06-22 11:21:43
[2026-06-22 11:21:43,345.345 INFO    ] 2026-06-22 11:21:43
[2026-06-22 11:21:43,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:21:43,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:21:43,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:21:43,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:21:43,851.851 INFO    ] time= 22/06/2026 11:21:43
[2026-06-22 11:21:43,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:21:43,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:21:44,009.009 INFO    ] No existing commands found in stream
[2026-06-22 11:21:49,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:21:49,031.031 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-22 11:21:49,845.845 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:21:49,846.846 INFO    ] Checking for system updates...
[2026-06-22 11:21:49,869.869 INFO    ] 200
[2026-06-22 11:21:49,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:21:49,903.903 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:21:49,905.905 INFO    ] No update needed
[2026-06-22 11:21:49,906.906 INFO    ] Checking for camera pi updates...
[2026-06-22 11:21:49,927.927 INFO    ] 200
[2026-06-22 11:21:49,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:21:49,971.971 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:21:50,043.043 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:21:50,046.046 INFO    ] No camera update needed
[2026-06-22 11:21:50,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:21:50,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:21:50,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:21:50,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:21:52,103.103 INFO    ] ================================================
[2026-06-22 11:21:52,118.118 INFO    ] Launching Daemon at Mon Jun 22 11:21:52 IST 2026
[2026-06-22 11:21:52,129.129 INFO    ] ================================================
[2026-06-22 11:21:52,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:21:52
[2026-06-22 11:21:53,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:21:53,572.572 INFO    ] Initializing speech engine...
[2026-06-22 11:21:53,587.587 INFO    ] 2026-06-22 11:21:53
[2026-06-22 11:21:53,853.853 INFO    ] 2026-06-22 11:21:53
[2026-06-22 11:21:53,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:21:54,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:21:54,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:21:54,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:21:54,330.330 INFO    ] time= 22/06/2026 11:21:54
[2026-06-22 11:21:54,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:21:54,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:21:54,566.566 INFO    ] No existing commands found in stream
[2026-06-22 11:21:59,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:21:59,594.594 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-22 11:22:03,663.663 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:22:03,666.666 INFO    ] Checking for system updates...
[2026-06-22 11:22:03,703.703 INFO    ] 200
[2026-06-22 11:22:03,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:22:03,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:22:03,761.761 INFO    ] No update needed
[2026-06-22 11:22:03,764.764 INFO    ] Checking for camera pi updates...
[2026-06-22 11:22:03,803.803 INFO    ] 200
[2026-06-22 11:22:03,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:22:03,853.853 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:22:03,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:22:03,935.935 INFO    ] No camera update needed
[2026-06-22 11:22:03,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:22:03,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:22:03,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:22:03,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:22:05,989.989 INFO    ] ================================================
[2026-06-22 11:22:06,004.004 INFO    ] Launching Daemon at Mon Jun 22 11:22:05 IST 2026
[2026-06-22 11:22:06,015.015 INFO    ] ================================================
[2026-06-22 11:22:06,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:22:06
[2026-06-22 11:22:07,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:22:07,586.586 INFO    ] Initializing speech engine...
[2026-06-22 11:22:07,598.598 INFO    ] 2026-06-22 11:22:07
[2026-06-22 11:22:07,852.852 INFO    ] 2026-06-22 11:22:07
[2026-06-22 11:22:07,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:22:08,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:22:08,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:22:08,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:22:08,366.366 INFO    ] time= 22/06/2026 11:22:08
[2026-06-22 11:22:08,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:22:08,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:22:08,592.592 INFO    ] No existing commands found in stream
[2026-06-22 11:22:13,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:22:13,620.620 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-22 11:22:17,826.826 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:22:17,829.829 INFO    ] Checking for system updates...
[2026-06-22 11:22:17,868.868 INFO    ] 200
[2026-06-22 11:22:17,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:22:17,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:22:17,927.927 INFO    ] No update needed
[2026-06-22 11:22:17,930.930 INFO    ] Checking for camera pi updates...
[2026-06-22 11:22:17,967.967 INFO    ] 200
[2026-06-22 11:22:17,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:22:18,014.014 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:22:18,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:22:18,104.104 INFO    ] No camera update needed
[2026-06-22 11:22:18,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:22:18,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:22:18,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:22:18,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:22:20,160.160 INFO    ] ================================================
[2026-06-22 11:22:20,176.176 INFO    ] Launching Daemon at Mon Jun 22 11:22:20 IST 2026
[2026-06-22 11:22:20,186.186 INFO    ] ================================================
[2026-06-22 11:22:20,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:22:20
[2026-06-22 11:22:21,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:22:21,590.590 INFO    ] Initializing speech engine...
[2026-06-22 11:22:21,598.598 INFO    ] 2026-06-22 11:22:21
[2026-06-22 11:22:21,873.873 INFO    ] 2026-06-22 11:22:21
[2026-06-22 11:22:21,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:22:22,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:22:22,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:22:22,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:22:22,450.450 INFO    ] time= 22/06/2026 11:22:22
[2026-06-22 11:22:22,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:22:22,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:22:22,599.599 INFO    ] No existing commands found in stream
[2026-06-22 11:22:27,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:22:27,622.622 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-22 11:22:29,577.577 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:22:29,580.580 INFO    ] Checking for system updates...
[2026-06-22 11:22:29,628.628 INFO    ] 200
[2026-06-22 11:22:29,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:22:29,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:22:29,720.720 INFO    ] No update needed
[2026-06-22 11:22:29,725.725 INFO    ] Checking for camera pi updates...
[2026-06-22 11:22:29,762.762 INFO    ] 200
[2026-06-22 11:22:29,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:22:29,819.819 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:22:29,900.900 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:22:29,903.903 INFO    ] No camera update needed
[2026-06-22 11:22:29,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:22:29,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:22:29,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:22:29,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:22:31,961.961 INFO    ] ================================================
[2026-06-22 11:22:31,977.977 INFO    ] Launching Daemon at Mon Jun 22 11:22:31 IST 2026
[2026-06-22 11:22:31,988.988 INFO    ] ================================================
[2026-06-22 11:22:32,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:22:32
[2026-06-22 11:22:33,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:22:33,474.474 INFO    ] Initializing speech engine...
[2026-06-22 11:22:33,480.480 INFO    ] 2026-06-22 11:22:33
[2026-06-22 11:22:33,777.777 INFO    ] 2026-06-22 11:22:33
[2026-06-22 11:22:33,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:22:34,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:22:34,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:22:34,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:22:34,193.193 INFO    ] time= 22/06/2026 11:22:34
[2026-06-22 11:22:34,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:22:34,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:22:34,280.280 INFO    ] No existing commands found in stream
[2026-06-22 11:22:39,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:22:39,313.313 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-22 11:22:41,921.921 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:22:41,923.923 INFO    ] Checking for system updates...
[2026-06-22 11:22:41,960.960 INFO    ] 200
[2026-06-22 11:22:41,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:22:42,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:22:42,017.017 INFO    ] No update needed
[2026-06-22 11:22:42,019.019 INFO    ] Checking for camera pi updates...
[2026-06-22 11:22:42,057.057 INFO    ] 200
[2026-06-22 11:22:42,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:22:42,101.101 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:22:42,189.189 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:22:42,192.192 INFO    ] No camera update needed
[2026-06-22 11:22:42,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:22:42,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:22:42,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:22:42,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:22:44,250.250 INFO    ] ================================================
[2026-06-22 11:22:44,266.266 INFO    ] Launching Daemon at Mon Jun 22 11:22:44 IST 2026
[2026-06-22 11:22:44,276.276 INFO    ] ================================================
[2026-06-22 11:22:44,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:22:44
[2026-06-22 11:22:45,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:22:45,724.724 INFO    ] Initializing speech engine...
[2026-06-22 11:22:45,733.733 INFO    ] 2026-06-22 11:22:45
[2026-06-22 11:22:45,987.987 INFO    ] 2026-06-22 11:22:45
[2026-06-22 11:22:46,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:22:46,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:22:46,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:22:46,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:22:46,479.479 INFO    ] time= 22/06/2026 11:22:46
[2026-06-22 11:22:46,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:22:46,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:22:46,694.694 INFO    ] No existing commands found in stream
[2026-06-22 11:22:51,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:22:51,724.724 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-22 11:22:52,514.514 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:22:52,517.517 INFO    ] Checking for system updates...
[2026-06-22 11:22:52,557.557 INFO    ] 200
[2026-06-22 11:22:52,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:22:52,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:22:52,621.621 INFO    ] No update needed
[2026-06-22 11:22:52,624.624 INFO    ] Checking for camera pi updates...
[2026-06-22 11:22:52,657.657 INFO    ] 200
[2026-06-22 11:22:52,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:22:52,700.700 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:22:52,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:22:52,906.906 INFO    ] No camera update needed
[2026-06-22 11:22:52,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:22:52,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:22:52,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:22:52,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:22:54,960.960 INFO    ] ================================================
[2026-06-22 11:22:54,975.975 INFO    ] Launching Daemon at Mon Jun 22 11:22:54 IST 2026
[2026-06-22 11:22:54,986.986 INFO    ] ================================================
[2026-06-22 11:22:55,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:22:55
[2026-06-22 11:22:56,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:22:56,520.520 INFO    ] Initializing speech engine...
[2026-06-22 11:22:56,532.532 INFO    ] 2026-06-22 11:22:56
[2026-06-22 11:22:56,822.822 INFO    ] 2026-06-22 11:22:56
[2026-06-22 11:22:56,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:22:57,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:22:57,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:22:57,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:22:57,285.285 INFO    ] time= 22/06/2026 11:22:57
[2026-06-22 11:22:57,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:22:57,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:22:57,498.498 INFO    ] No existing commands found in stream
[2026-06-22 11:23:02,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:23:02,531.531 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-22 11:23:04,721.721 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:23:04,724.724 INFO    ] Checking for system updates...
[2026-06-22 11:23:04,765.765 INFO    ] 200
[2026-06-22 11:23:04,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:23:04,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:23:04,832.832 INFO    ] No update needed
[2026-06-22 11:23:04,835.835 INFO    ] Checking for camera pi updates...
[2026-06-22 11:23:04,873.873 INFO    ] 200
[2026-06-22 11:23:04,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:23:04,927.927 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:23:05,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:23:05,012.012 INFO    ] No camera update needed
[2026-06-22 11:23:05,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:23:05,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:23:05,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:23:05,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:23:07,068.068 INFO    ] ================================================
[2026-06-22 11:23:07,084.084 INFO    ] Launching Daemon at Mon Jun 22 11:23:07 IST 2026
[2026-06-22 11:23:07,094.094 INFO    ] ================================================
[2026-06-22 11:23:07,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:23:07
[2026-06-22 11:23:08,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:23:08,655.655 INFO    ] Initializing speech engine...
[2026-06-22 11:23:08,668.668 INFO    ] 2026-06-22 11:23:08
[2026-06-22 11:23:08,951.951 INFO    ] 2026-06-22 11:23:08
[2026-06-22 11:23:08,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:23:09,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:23:09,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:23:09,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:23:09,419.419 INFO    ] time= 22/06/2026 11:23:09
[2026-06-22 11:23:09,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:23:09,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:23:09,654.654 INFO    ] No existing commands found in stream
[2026-06-22 11:23:14,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:23:14,680.680 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-22 11:23:15,466.466 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:23:15,467.467 INFO    ] Checking for system updates...
[2026-06-22 11:23:15,489.489 INFO    ] 200
[2026-06-22 11:23:15,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:23:15,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:23:15,555.555 INFO    ] No update needed
[2026-06-22 11:23:15,558.558 INFO    ] Checking for camera pi updates...
[2026-06-22 11:23:15,593.593 INFO    ] 200
[2026-06-22 11:23:15,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:23:15,643.643 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:23:15,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:23:15,721.721 INFO    ] No camera update needed
[2026-06-22 11:23:15,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:23:15,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:23:15,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:23:15,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:23:17,776.776 INFO    ] ================================================
[2026-06-22 11:23:17,792.792 INFO    ] Launching Daemon at Mon Jun 22 11:23:17 IST 2026
[2026-06-22 11:23:17,803.803 INFO    ] ================================================
[2026-06-22 11:23:18,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:23:18
[2026-06-22 11:23:19,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:23:19,286.286 INFO    ] Initializing speech engine...
[2026-06-22 11:23:19,296.296 INFO    ] 2026-06-22 11:23:19
[2026-06-22 11:23:19,552.552 INFO    ] 2026-06-22 11:23:19
[2026-06-22 11:23:19,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:23:19,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:23:19,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:23:19,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:23:20,018.018 INFO    ] time= 22/06/2026 11:23:19
[2026-06-22 11:23:20,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:23:20,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:23:20,234.234 INFO    ] No existing commands found in stream
[2026-06-22 11:23:25,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:23:25,262.262 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-22 11:23:29,085.085 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:23:29,087.087 INFO    ] Checking for system updates...
[2026-06-22 11:23:29,127.127 INFO    ] 200
[2026-06-22 11:23:29,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:23:29,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:23:29,191.191 INFO    ] No update needed
[2026-06-22 11:23:29,194.194 INFO    ] Checking for camera pi updates...
[2026-06-22 11:23:29,231.231 INFO    ] 200
[2026-06-22 11:23:29,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:23:29,276.276 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:23:29,345.345 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:23:29,348.348 INFO    ] No camera update needed
[2026-06-22 11:23:29,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:23:29,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:23:29,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:23:29,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:23:31,409.409 INFO    ] ================================================
[2026-06-22 11:23:31,426.426 INFO    ] Launching Daemon at Mon Jun 22 11:23:31 IST 2026
[2026-06-22 11:23:31,438.438 INFO    ] ================================================
[2026-06-22 11:23:32,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:23:32
[2026-06-22 11:23:32,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:23:32,930.930 INFO    ] Initializing speech engine...
[2026-06-22 11:23:32,939.939 INFO    ] 2026-06-22 11:23:32
[2026-06-22 11:23:33,184.184 INFO    ] 2026-06-22 11:23:33
[2026-06-22 11:23:33,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:23:33,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:23:33,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:23:33,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:23:33,739.739 INFO    ] time= 22/06/2026 11:23:33
[2026-06-22 11:23:33,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:23:33,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:23:33,890.890 INFO    ] No existing commands found in stream
[2026-06-22 11:23:38,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:23:38,908.908 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-22 11:23:41,641.641 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:23:41,643.643 INFO    ] Checking for system updates...
[2026-06-22 11:23:41,680.680 INFO    ] 200
[2026-06-22 11:23:41,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:23:41,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:23:41,746.746 INFO    ] No update needed
[2026-06-22 11:23:41,749.749 INFO    ] Checking for camera pi updates...
[2026-06-22 11:23:41,788.788 INFO    ] 200
[2026-06-22 11:23:41,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:23:41,833.833 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:23:41,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:23:41,941.941 INFO    ] No camera update needed
[2026-06-22 11:23:41,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:23:41,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:23:41,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:23:41,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:23:44,999.999 INFO    ] ================================================
[2026-06-22 11:23:44,014.014 INFO    ] Launching Daemon at Mon Jun 22 11:23:44 IST 2026
[2026-06-22 11:23:44,025.025 INFO    ] ================================================
[2026-06-22 11:23:44,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:23:44
[2026-06-22 11:23:45,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:23:45,452.452 INFO    ] Initializing speech engine...
[2026-06-22 11:23:45,461.461 INFO    ] 2026-06-22 11:23:45
[2026-06-22 11:23:45,708.708 INFO    ] 2026-06-22 11:23:45
[2026-06-22 11:23:45,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:23:45,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:23:45,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:23:46,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:23:46,176.176 INFO    ] time= 22/06/2026 11:23:46
[2026-06-22 11:23:46,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:23:46,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:23:46,404.404 INFO    ] No existing commands found in stream
[2026-06-22 11:23:51,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:23:51,428.428 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-22 11:23:55,021.021 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:23:55,024.024 INFO    ] Checking for system updates...
[2026-06-22 11:23:55,063.063 INFO    ] 200
[2026-06-22 11:23:55,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:23:55,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:23:55,120.120 INFO    ] No update needed
[2026-06-22 11:23:55,122.122 INFO    ] Checking for camera pi updates...
[2026-06-22 11:23:55,157.157 INFO    ] 200
[2026-06-22 11:23:55,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:23:55,199.199 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:23:55,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:23:55,284.284 INFO    ] No camera update needed
[2026-06-22 11:23:55,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:23:55,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:23:55,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:23:55,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:23:57,342.342 INFO    ] ================================================
[2026-06-22 11:23:57,358.358 INFO    ] Launching Daemon at Mon Jun 22 11:23:57 IST 2026
[2026-06-22 11:23:57,369.369 INFO    ] ================================================
[2026-06-22 11:23:57,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:23:57
[2026-06-22 11:23:58,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:23:58,812.812 INFO    ] Initializing speech engine...
[2026-06-22 11:23:58,820.820 INFO    ] 2026-06-22 11:23:58
[2026-06-22 11:23:59,072.072 INFO    ] 2026-06-22 11:23:59
[2026-06-22 11:23:59,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:23:59,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:23:59,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:23:59,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:23:59,558.558 INFO    ] time= 22/06/2026 11:23:59
[2026-06-22 11:23:59,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:23:59,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:23:59,787.787 INFO    ] No existing commands found in stream
[2026-06-22 11:24:04,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:24:04,811.811 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-22 11:24:08,625.625 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:24:08,627.627 INFO    ] Checking for system updates...
[2026-06-22 11:24:08,647.647 INFO    ] 200
[2026-06-22 11:24:08,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:24:08,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:24:08,698.698 INFO    ] No update needed
[2026-06-22 11:24:08,700.700 INFO    ] Checking for camera pi updates...
[2026-06-22 11:24:08,734.734 INFO    ] 200
[2026-06-22 11:24:08,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:24:08,777.777 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:24:08,880.880 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:24:08,883.883 INFO    ] No camera update needed
[2026-06-22 11:24:08,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:24:08,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:24:08,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:24:08,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:24:10,938.938 INFO    ] ================================================
[2026-06-22 11:24:10,953.953 INFO    ] Launching Daemon at Mon Jun 22 11:24:10 IST 2026
[2026-06-22 11:24:10,966.966 INFO    ] ================================================
[2026-06-22 11:24:11,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:24:11
[2026-06-22 11:24:12,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:24:12,317.317 INFO    ] Initializing speech engine...
[2026-06-22 11:24:12,326.326 INFO    ] 2026-06-22 11:24:12
[2026-06-22 11:24:12,576.576 INFO    ] 2026-06-22 11:24:12
[2026-06-22 11:24:12,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:24:12,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:24:12,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:24:12,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:24:12,951.951 INFO    ] time= 22/06/2026 11:24:12
[2026-06-22 11:24:12,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:24:13,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:24:13,136.136 INFO    ] No existing commands found in stream
[2026-06-22 11:24:18,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:24:18,165.165 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-22 11:24:19,056.056 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:24:19,057.057 INFO    ] Checking for system updates...
[2026-06-22 11:24:19,078.078 INFO    ] 200
[2026-06-22 11:24:19,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:24:19,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:24:19,111.111 INFO    ] No update needed
[2026-06-22 11:24:19,112.112 INFO    ] Checking for camera pi updates...
[2026-06-22 11:24:19,131.131 INFO    ] 200
[2026-06-22 11:24:19,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:24:19,163.163 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:24:19,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:24:19,228.228 INFO    ] No camera update needed
[2026-06-22 11:24:19,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:24:19,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:24:19,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:24:19,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:24:21,286.286 INFO    ] ================================================
[2026-06-22 11:24:21,301.301 INFO    ] Launching Daemon at Mon Jun 22 11:24:21 IST 2026
[2026-06-22 11:24:21,311.311 INFO    ] ================================================
[2026-06-22 11:24:21,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:24:21
[2026-06-22 11:24:22,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:24:22,666.666 INFO    ] Initializing speech engine...
[2026-06-22 11:24:22,682.682 INFO    ] 2026-06-22 11:24:22
[2026-06-22 11:24:22,935.935 INFO    ] 2026-06-22 11:24:22
[2026-06-22 11:24:22,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:24:23,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:24:23,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:24:23,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:24:23,389.389 INFO    ] time= 22/06/2026 11:24:23
[2026-06-22 11:24:23,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:24:23,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:24:23,503.503 INFO    ] No existing commands found in stream
[2026-06-22 11:24:28,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:24:28,526.526 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-22 11:24:31,792.792 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:24:31,796.796 INFO    ] Checking for system updates...
[2026-06-22 11:24:31,840.840 INFO    ] 200
[2026-06-22 11:24:31,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:24:31,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:24:31,911.911 INFO    ] No update needed
[2026-06-22 11:24:31,914.914 INFO    ] Checking for camera pi updates...
[2026-06-22 11:24:31,952.952 INFO    ] 200
[2026-06-22 11:24:31,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:24:32,005.005 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:24:32,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:24:32,074.074 INFO    ] No camera update needed
[2026-06-22 11:24:32,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:24:32,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:24:32,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:24:32,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:24:34,138.138 INFO    ] ================================================
[2026-06-22 11:24:34,153.153 INFO    ] Launching Daemon at Mon Jun 22 11:24:34 IST 2026
[2026-06-22 11:24:34,164.164 INFO    ] ================================================
[2026-06-22 11:24:34,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:24:34
[2026-06-22 11:24:35,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:24:35,590.590 INFO    ] Initializing speech engine...
[2026-06-22 11:24:35,598.598 INFO    ] 2026-06-22 11:24:35
[2026-06-22 11:24:35,883.883 INFO    ] 2026-06-22 11:24:35
[2026-06-22 11:24:35,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:24:36,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:24:36,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:24:36,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:24:36,435.435 INFO    ] time= 22/06/2026 11:24:36
[2026-06-22 11:24:36,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:24:36,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:24:36,574.574 INFO    ] No existing commands found in stream
[2026-06-22 11:24:41,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:24:41,606.606 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-22 11:24:43,790.790 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:24:43,793.793 INFO    ] Checking for system updates...
[2026-06-22 11:24:43,834.834 INFO    ] 200
[2026-06-22 11:24:43,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:24:43,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:24:43,892.892 INFO    ] No update needed
[2026-06-22 11:24:43,895.895 INFO    ] Checking for camera pi updates...
[2026-06-22 11:24:43,930.930 INFO    ] 200
[2026-06-22 11:24:43,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:24:43,973.973 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:24:44,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:24:44,076.076 INFO    ] No camera update needed
[2026-06-22 11:24:44,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:24:44,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:24:44,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:24:44,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:24:46,132.132 INFO    ] ================================================
[2026-06-22 11:24:46,147.147 INFO    ] Launching Daemon at Mon Jun 22 11:24:46 IST 2026
[2026-06-22 11:24:46,158.158 INFO    ] ================================================
[2026-06-22 11:24:46,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:24:46
[2026-06-22 11:24:47,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:24:47,652.652 INFO    ] Initializing speech engine...
[2026-06-22 11:24:47,661.661 INFO    ] 2026-06-22 11:24:47
[2026-06-22 11:24:47,948.948 INFO    ] 2026-06-22 11:24:47
[2026-06-22 11:24:47,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:24:48,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:24:48,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:24:48,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:24:48,498.498 INFO    ] time= 22/06/2026 11:24:48
[2026-06-22 11:24:48,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:24:48,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:24:48,667.667 INFO    ] No existing commands found in stream
[2026-06-22 11:24:53,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:24:53,696.696 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-22 11:24:57,331.331 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:24:57,334.334 INFO    ] Checking for system updates...
[2026-06-22 11:24:57,371.371 INFO    ] 200
[2026-06-22 11:24:57,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:24:57,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:24:57,429.429 INFO    ] No update needed
[2026-06-22 11:24:57,431.431 INFO    ] Checking for camera pi updates...
[2026-06-22 11:24:57,465.465 INFO    ] 200
[2026-06-22 11:24:57,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:24:57,508.508 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:24:57,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:24:57,697.697 INFO    ] No camera update needed
[2026-06-22 11:24:57,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:24:57,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:24:57,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:24:57,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:24:59,752.752 INFO    ] ================================================
[2026-06-22 11:24:59,768.768 INFO    ] Launching Daemon at Mon Jun 22 11:24:59 IST 2026
[2026-06-22 11:24:59,779.779 INFO    ] ================================================
[2026-06-22 11:25:00,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:25:00
[2026-06-22 11:25:00,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:25:01,113.113 INFO    ] Initializing speech engine...
[2026-06-22 11:25:01,145.145 INFO    ] 2026-06-22 11:25:01
[2026-06-22 11:25:01,780.780 INFO    ] 2026-06-22 11:25:01
[2026-06-22 11:25:01,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:25:02,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:25:02,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:25:02,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:25:02,259.259 INFO    ] time= 22/06/2026 11:25:02
[2026-06-22 11:25:02,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:25:02,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:25:02,402.402 INFO    ] No existing commands found in stream
[2026-06-22 11:25:07,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:25:07,425.425 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-22 11:25:08,303.303 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:25:08,306.306 INFO    ] Checking for system updates...
[2026-06-22 11:25:08,342.342 INFO    ] 200
[2026-06-22 11:25:08,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:25:08,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:25:08,406.406 INFO    ] No update needed
[2026-06-22 11:25:08,408.408 INFO    ] Checking for camera pi updates...
[2026-06-22 11:25:08,445.445 INFO    ] 200
[2026-06-22 11:25:08,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:25:08,489.489 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:25:08,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:25:08,570.570 INFO    ] No camera update needed
[2026-06-22 11:25:08,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:25:08,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:25:08,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:25:08,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:25:10,626.626 INFO    ] ================================================
[2026-06-22 11:25:10,641.641 INFO    ] Launching Daemon at Mon Jun 22 11:25:10 IST 2026
[2026-06-22 11:25:10,653.653 INFO    ] ================================================
[2026-06-22 11:25:11,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:25:11
[2026-06-22 11:25:11,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:25:12,114.114 INFO    ] Initializing speech engine...
[2026-06-22 11:25:12,133.133 INFO    ] 2026-06-22 11:25:12
[2026-06-22 11:25:12,401.401 INFO    ] 2026-06-22 11:25:12
[2026-06-22 11:25:12,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:25:12,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:25:12,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:25:12,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:25:12,809.809 INFO    ] time= 22/06/2026 11:25:12
[2026-06-22 11:25:12,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:25:12,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:25:12,895.895 INFO    ] No existing commands found in stream
[2026-06-22 11:25:17,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:25:17,933.933 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-22 11:25:20,331.331 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:25:20,333.333 INFO    ] Checking for system updates...
[2026-06-22 11:25:20,370.370 INFO    ] 200
[2026-06-22 11:25:20,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:25:20,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:25:20,427.427 INFO    ] No update needed
[2026-06-22 11:25:20,429.429 INFO    ] Checking for camera pi updates...
[2026-06-22 11:25:20,463.463 INFO    ] 200
[2026-06-22 11:25:20,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:25:20,508.508 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:25:20,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:25:20,595.595 INFO    ] No camera update needed
[2026-06-22 11:25:20,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:25:20,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:25:20,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:25:20,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:25:22,650.650 INFO    ] ================================================
[2026-06-22 11:25:22,666.666 INFO    ] Launching Daemon at Mon Jun 22 11:25:22 IST 2026
[2026-06-22 11:25:22,677.677 INFO    ] ================================================
[2026-06-22 11:25:23,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:25:23
[2026-06-22 11:25:23,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:25:24,060.060 INFO    ] Initializing speech engine...
[2026-06-22 11:25:24,069.069 INFO    ] 2026-06-22 11:25:24
[2026-06-22 11:25:24,315.315 INFO    ] 2026-06-22 11:25:24
[2026-06-22 11:25:24,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:25:24,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:25:24,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:25:24,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:25:24,788.788 INFO    ] time= 22/06/2026 11:25:24
[2026-06-22 11:25:24,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:25:24,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:25:24,999.999 INFO    ] No existing commands found in stream
[2026-06-22 11:25:30,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:25:30,032.032 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-22 11:25:31,016.016 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:25:31,018.018 INFO    ] Checking for system updates...
[2026-06-22 11:25:31,039.039 INFO    ] 200
[2026-06-22 11:25:31,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:25:31,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:25:31,072.072 INFO    ] No update needed
[2026-06-22 11:25:31,074.074 INFO    ] Checking for camera pi updates...
[2026-06-22 11:25:31,094.094 INFO    ] 200
[2026-06-22 11:25:31,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:25:31,138.138 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:25:31,229.229 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:25:31,232.232 INFO    ] No camera update needed
[2026-06-22 11:25:31,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:25:31,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:25:31,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:25:31,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:25:33,292.292 INFO    ] ================================================
[2026-06-22 11:25:33,307.307 INFO    ] Launching Daemon at Mon Jun 22 11:25:33 IST 2026
[2026-06-22 11:25:33,318.318 INFO    ] ================================================
[2026-06-22 11:25:33,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:25:33
[2026-06-22 11:25:34,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:25:34,749.749 INFO    ] Initializing speech engine...
[2026-06-22 11:25:34,759.759 INFO    ] 2026-06-22 11:25:34
[2026-06-22 11:25:35,008.008 INFO    ] 2026-06-22 11:25:35
[2026-06-22 11:25:35,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:25:35,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:25:35,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:25:35,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:25:35,383.383 INFO    ] time= 22/06/2026 11:25:35
[2026-06-22 11:25:35,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:25:35,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:25:35,575.575 INFO    ] No existing commands found in stream
[2026-06-22 11:25:40,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:25:40,598.598 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-22 11:25:44,945.945 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:25:44,948.948 INFO    ] Checking for system updates...
[2026-06-22 11:25:44,983.983 INFO    ] 200
[2026-06-22 11:25:44,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:25:45,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:25:45,046.046 INFO    ] No update needed
[2026-06-22 11:25:45,048.048 INFO    ] Checking for camera pi updates...
[2026-06-22 11:25:45,085.085 INFO    ] 200
[2026-06-22 11:25:45,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:25:45,132.132 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:25:45,238.238 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:25:45,240.240 INFO    ] No camera update needed
[2026-06-22 11:25:45,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:25:45,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:25:45,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:25:45,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:25:47,297.297 INFO    ] ================================================
[2026-06-22 11:25:47,313.313 INFO    ] Launching Daemon at Mon Jun 22 11:25:47 IST 2026
[2026-06-22 11:25:47,324.324 INFO    ] ================================================
[2026-06-22 11:25:47,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:25:47
[2026-06-22 11:25:48,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:25:48,668.668 INFO    ] Initializing speech engine...
[2026-06-22 11:25:48,681.681 INFO    ] 2026-06-22 11:25:48
[2026-06-22 11:25:48,945.945 INFO    ] 2026-06-22 11:25:48
[2026-06-22 11:25:48,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:25:49,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:25:49,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:25:49,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:25:49,499.499 INFO    ] time= 22/06/2026 11:25:49
[2026-06-22 11:25:49,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:25:49,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:25:49,653.653 INFO    ] No existing commands found in stream
[2026-06-22 11:25:54,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:25:54,669.669 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-22 11:25:56,530.530 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:25:56,533.533 INFO    ] Checking for system updates...
[2026-06-22 11:25:56,570.570 INFO    ] 200
[2026-06-22 11:25:56,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:25:56,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:25:56,631.631 INFO    ] No update needed
[2026-06-22 11:25:56,633.633 INFO    ] Checking for camera pi updates...
[2026-06-22 11:25:56,667.667 INFO    ] 200
[2026-06-22 11:25:56,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:25:56,710.710 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:25:56,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:25:56,798.798 INFO    ] No camera update needed
[2026-06-22 11:25:56,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:25:56,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:25:56,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:25:56,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:25:58,857.857 INFO    ] ================================================
[2026-06-22 11:25:58,872.872 INFO    ] Launching Daemon at Mon Jun 22 11:25:58 IST 2026
[2026-06-22 11:25:58,883.883 INFO    ] ================================================
[2026-06-22 11:25:59,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:25:59
[2026-06-22 11:26:00,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:26:00,386.386 INFO    ] Initializing speech engine...
[2026-06-22 11:26:00,393.393 INFO    ] 2026-06-22 11:26:00
[2026-06-22 11:26:00,669.669 INFO    ] 2026-06-22 11:26:00
[2026-06-22 11:26:00,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:26:00,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:26:00,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:26:01,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:26:01,230.230 INFO    ] time= 22/06/2026 11:26:01
[2026-06-22 11:26:01,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:26:01,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:26:01,341.341 INFO    ] No existing commands found in stream
[2026-06-22 11:26:06,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:26:06,379.379 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-22 11:26:07,501.501 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:26:07,503.503 INFO    ] Checking for system updates...
[2026-06-22 11:26:07,540.540 INFO    ] 200
[2026-06-22 11:26:07,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:26:07,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:26:07,598.598 INFO    ] No update needed
[2026-06-22 11:26:07,600.600 INFO    ] Checking for camera pi updates...
[2026-06-22 11:26:07,639.639 INFO    ] 200
[2026-06-22 11:26:07,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:26:07,688.688 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:26:07,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:26:07,771.771 INFO    ] No camera update needed
[2026-06-22 11:26:07,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:26:07,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:26:07,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:26:07,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:26:09,826.826 INFO    ] ================================================
[2026-06-22 11:26:09,842.842 INFO    ] Launching Daemon at Mon Jun 22 11:26:09 IST 2026
[2026-06-22 11:26:09,853.853 INFO    ] ================================================
[2026-06-22 11:26:10,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:26:10
[2026-06-22 11:26:10,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:26:11,182.182 INFO    ] Initializing speech engine...
[2026-06-22 11:26:11,197.197 INFO    ] 2026-06-22 11:26:11
[2026-06-22 11:26:11,482.482 INFO    ] 2026-06-22 11:26:11
[2026-06-22 11:26:11,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:26:11,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:26:11,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:26:11,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:26:11,977.977 INFO    ] time= 22/06/2026 11:26:11
[2026-06-22 11:26:12,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:26:12,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:26:12,212.212 INFO    ] No existing commands found in stream
[2026-06-22 11:26:17,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:26:17,238.238 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-22 11:26:21,305.305 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:26:21,307.307 INFO    ] Checking for system updates...
[2026-06-22 11:26:21,328.328 INFO    ] 200
[2026-06-22 11:26:21,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:26:21,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:26:21,381.381 INFO    ] No update needed
[2026-06-22 11:26:21,384.384 INFO    ] Checking for camera pi updates...
[2026-06-22 11:26:21,427.427 INFO    ] 200
[2026-06-22 11:26:21,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:26:21,469.469 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:26:21,549.549 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:26:21,552.552 INFO    ] No camera update needed
[2026-06-22 11:26:21,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:26:21,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:26:21,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:26:21,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:26:23,607.607 INFO    ] ================================================
[2026-06-22 11:26:23,623.623 INFO    ] Launching Daemon at Mon Jun 22 11:26:23 IST 2026
[2026-06-22 11:26:23,635.635 INFO    ] ================================================
[2026-06-22 11:26:24,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:26:24
[2026-06-22 11:26:24,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:26:25,086.086 INFO    ] Initializing speech engine...
[2026-06-22 11:26:25,097.097 INFO    ] 2026-06-22 11:26:25
[2026-06-22 11:26:25,391.391 INFO    ] 2026-06-22 11:26:25
[2026-06-22 11:26:25,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:26:25,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:26:25,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:26:25,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:26:25,939.939 INFO    ] time= 22/06/2026 11:26:25
[2026-06-22 11:26:25,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:26:25,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:26:26,086.086 INFO    ] No existing commands found in stream
[2026-06-22 11:26:31,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:26:31,112.112 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-22 11:26:31,823.823 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:26:31,827.827 INFO    ] Checking for system updates...
[2026-06-22 11:26:31,867.867 INFO    ] 200
[2026-06-22 11:26:31,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:26:31,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:26:31,932.932 INFO    ] No update needed
[2026-06-22 11:26:31,936.936 INFO    ] Checking for camera pi updates...
[2026-06-22 11:26:31,975.975 INFO    ] 200
[2026-06-22 11:26:31,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:26:32,031.031 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:26:32,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:26:32,096.096 INFO    ] No camera update needed
[2026-06-22 11:26:32,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:26:32,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:26:32,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:26:32,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:26:34,161.161 INFO    ] ================================================
[2026-06-22 11:26:34,177.177 INFO    ] Launching Daemon at Mon Jun 22 11:26:34 IST 2026
[2026-06-22 11:26:34,188.188 INFO    ] ================================================
[2026-06-22 11:26:34,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:26:34
[2026-06-22 11:26:35,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:26:35,817.817 INFO    ] Initializing speech engine...
[2026-06-22 11:26:35,829.829 INFO    ] 2026-06-22 11:26:35
[2026-06-22 11:26:36,053.053 INFO    ] 2026-06-22 11:26:36
[2026-06-22 11:26:36,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:26:36,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:26:36,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:26:36,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:26:36,565.565 INFO    ] time= 22/06/2026 11:26:36
[2026-06-22 11:26:36,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:26:36,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:26:36,725.725 INFO    ] No existing commands found in stream
[2026-06-22 11:26:41,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:26:41,748.748 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-22 11:26:45,632.632 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:26:45,635.635 INFO    ] Checking for system updates...
[2026-06-22 11:26:45,671.671 INFO    ] 200
[2026-06-22 11:26:45,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:26:45,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:26:45,732.732 INFO    ] No update needed
[2026-06-22 11:26:45,735.735 INFO    ] Checking for camera pi updates...
[2026-06-22 11:26:45,772.772 INFO    ] 200
[2026-06-22 11:26:45,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:26:45,816.816 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:26:45,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:26:45,893.893 INFO    ] No camera update needed
[2026-06-22 11:26:45,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:26:45,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:26:45,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:26:45,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:26:47,948.948 INFO    ] ================================================
[2026-06-22 11:26:47,964.964 INFO    ] Launching Daemon at Mon Jun 22 11:26:47 IST 2026
[2026-06-22 11:26:47,975.975 INFO    ] ================================================
[2026-06-22 11:26:48,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:26:48
[2026-06-22 11:26:49,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:26:49,518.518 INFO    ] Initializing speech engine...
[2026-06-22 11:26:49,531.531 INFO    ] 2026-06-22 11:26:49
[2026-06-22 11:26:49,842.842 INFO    ] 2026-06-22 11:26:49
[2026-06-22 11:26:49,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:26:50,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:26:50,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:26:50,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:26:50,352.352 INFO    ] time= 22/06/2026 11:26:50
[2026-06-22 11:26:50,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:26:50,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:26:50,506.506 INFO    ] No existing commands found in stream
[2026-06-22 11:26:55,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:26:55,525.525 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-22 11:26:58,478.478 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:26:58,480.480 INFO    ] Checking for system updates...
[2026-06-22 11:26:58,501.501 INFO    ] 200
[2026-06-22 11:26:58,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:26:58,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:26:58,534.534 INFO    ] No update needed
[2026-06-22 11:26:58,536.536 INFO    ] Checking for camera pi updates...
[2026-06-22 11:26:58,559.559 INFO    ] 200
[2026-06-22 11:26:58,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:26:58,595.595 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:26:58,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:26:58,697.697 INFO    ] No camera update needed
[2026-06-22 11:26:58,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:26:58,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:26:58,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:26:58,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:27:00,753.753 INFO    ] ================================================
[2026-06-22 11:27:00,769.769 INFO    ] Launching Daemon at Mon Jun 22 11:27:00 IST 2026
[2026-06-22 11:27:00,780.780 INFO    ] ================================================
[2026-06-22 11:27:01,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:27:01
[2026-06-22 11:27:02,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:27:02,463.463 INFO    ] Initializing speech engine...
[2026-06-22 11:27:02,475.475 INFO    ] 2026-06-22 11:27:02
[2026-06-22 11:27:02,764.764 INFO    ] 2026-06-22 11:27:02
[2026-06-22 11:27:02,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:27:03,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:27:03,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:27:03,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:27:03,317.317 INFO    ] time= 22/06/2026 11:27:03
[2026-06-22 11:27:03,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:27:03,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:27:03,548.548 INFO    ] No existing commands found in stream
[2026-06-22 11:27:08,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:27:08,574.574 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-22 11:27:09,837.837 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:27:09,840.840 INFO    ] Checking for system updates...
[2026-06-22 11:27:09,876.876 INFO    ] 200
[2026-06-22 11:27:09,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:27:09,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:27:09,933.933 INFO    ] No update needed
[2026-06-22 11:27:09,935.935 INFO    ] Checking for camera pi updates...
[2026-06-22 11:27:09,970.970 INFO    ] 200
[2026-06-22 11:27:09,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:27:10,012.012 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:27:10,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:27:10,099.099 INFO    ] No camera update needed
[2026-06-22 11:27:10,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:27:10,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:27:10,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:27:10,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:27:12,153.153 INFO    ] ================================================
[2026-06-22 11:27:12,169.169 INFO    ] Launching Daemon at Mon Jun 22 11:27:12 IST 2026
[2026-06-22 11:27:12,179.179 INFO    ] ================================================
[2026-06-22 11:27:12,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:27:12
[2026-06-22 11:27:13,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:27:13,534.534 INFO    ] Initializing speech engine...
[2026-06-22 11:27:13,543.543 INFO    ] 2026-06-22 11:27:13
[2026-06-22 11:27:13,801.801 INFO    ] 2026-06-22 11:27:13
[2026-06-22 11:27:13,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:27:14,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:27:14,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:27:14,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:27:14,321.321 INFO    ] time= 22/06/2026 11:27:14
[2026-06-22 11:27:14,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:27:14,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:27:14,480.480 INFO    ] No existing commands found in stream
[2026-06-22 11:27:19,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:27:19,511.511 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-22 11:27:21,140.140 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:27:21,143.143 INFO    ] Checking for system updates...
[2026-06-22 11:27:21,180.180 INFO    ] 200
[2026-06-22 11:27:21,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:27:21,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:27:21,246.246 INFO    ] No update needed
[2026-06-22 11:27:21,249.249 INFO    ] Checking for camera pi updates...
[2026-06-22 11:27:21,285.285 INFO    ] 200
[2026-06-22 11:27:21,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:27:21,334.334 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:27:21,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:27:21,431.431 INFO    ] No camera update needed
[2026-06-22 11:27:21,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:27:21,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:27:21,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:27:21,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:27:23,487.487 INFO    ] ================================================
[2026-06-22 11:27:23,502.502 INFO    ] Launching Daemon at Mon Jun 22 11:27:23 IST 2026
[2026-06-22 11:27:23,513.513 INFO    ] ================================================
[2026-06-22 11:27:24,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:27:24
[2026-06-22 11:27:24,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:27:24,873.873 INFO    ] Initializing speech engine...
[2026-06-22 11:27:24,887.887 INFO    ] 2026-06-22 11:27:24
[2026-06-22 11:27:25,175.175 INFO    ] 2026-06-22 11:27:25
[2026-06-22 11:27:25,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:27:25,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:27:25,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:27:25,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:27:25,600.600 INFO    ] time= 22/06/2026 11:27:25
[2026-06-22 11:27:25,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:27:25,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:27:25,799.799 INFO    ] No existing commands found in stream
[2026-06-22 11:27:30,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:27:30,827.827 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-22 11:27:32,536.536 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:27:32,539.539 INFO    ] Checking for system updates...
[2026-06-22 11:27:32,587.587 INFO    ] 200
[2026-06-22 11:27:32,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:27:32,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:27:32,654.654 INFO    ] No update needed
[2026-06-22 11:27:32,657.657 INFO    ] Checking for camera pi updates...
[2026-06-22 11:27:32,696.696 INFO    ] 200
[2026-06-22 11:27:32,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:27:32,740.740 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:27:32,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:27:32,792.792 INFO    ] No camera update needed
[2026-06-22 11:27:32,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:27:32,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:27:32,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:27:32,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:27:34,851.851 INFO    ] ================================================
[2026-06-22 11:27:34,866.866 INFO    ] Launching Daemon at Mon Jun 22 11:27:34 IST 2026
[2026-06-22 11:27:34,876.876 INFO    ] ================================================
[2026-06-22 11:27:35,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:27:35
[2026-06-22 11:27:35,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:27:36,192.192 INFO    ] Initializing speech engine...
[2026-06-22 11:27:36,199.199 INFO    ] 2026-06-22 11:27:36
[2026-06-22 11:27:36,493.493 INFO    ] 2026-06-22 11:27:36
[2026-06-22 11:27:36,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:27:36,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:27:36,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:27:36,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:27:37,021.021 INFO    ] time= 22/06/2026 11:27:36
[2026-06-22 11:27:37,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:27:37,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:27:37,228.228 INFO    ] No existing commands found in stream
[2026-06-22 11:27:42,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:27:42,269.269 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-22 11:27:44,441.441 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:27:44,444.444 INFO    ] Checking for system updates...
[2026-06-22 11:27:44,481.481 INFO    ] 200
[2026-06-22 11:27:44,483.483 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:27:44,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:27:44,556.556 INFO    ] No update needed
[2026-06-22 11:27:44,558.558 INFO    ] Checking for camera pi updates...
[2026-06-22 11:27:44,593.593 INFO    ] 200
[2026-06-22 11:27:44,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:27:44,638.638 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:27:44,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:27:44,727.727 INFO    ] No camera update needed
[2026-06-22 11:27:44,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:27:44,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:27:44,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:27:44,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:27:46,787.787 INFO    ] ================================================
[2026-06-22 11:27:46,802.802 INFO    ] Launching Daemon at Mon Jun 22 11:27:46 IST 2026
[2026-06-22 11:27:46,813.813 INFO    ] ================================================
[2026-06-22 11:27:47,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:27:47
[2026-06-22 11:27:47,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:27:48,241.241 INFO    ] Initializing speech engine...
[2026-06-22 11:27:48,250.250 INFO    ] 2026-06-22 11:27:48
[2026-06-22 11:27:48,496.496 INFO    ] 2026-06-22 11:27:48
[2026-06-22 11:27:48,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:27:48,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:27:48,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:27:48,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:27:48,972.972 INFO    ] time= 22/06/2026 11:27:48
[2026-06-22 11:27:49,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:27:49,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:27:49,149.149 INFO    ] No existing commands found in stream
[2026-06-22 11:27:54,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:27:54,177.177 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-22 11:27:55,468.468 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:27:55,470.470 INFO    ] Checking for system updates...
[2026-06-22 11:27:55,506.506 INFO    ] 200
[2026-06-22 11:27:55,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:27:55,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:27:55,565.565 INFO    ] No update needed
[2026-06-22 11:27:55,568.568 INFO    ] Checking for camera pi updates...
[2026-06-22 11:27:55,605.605 INFO    ] 200
[2026-06-22 11:27:55,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:27:55,648.648 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:27:55,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:27:55,726.726 INFO    ] No camera update needed
[2026-06-22 11:27:55,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:27:55,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:27:55,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:27:55,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:27:57,783.783 INFO    ] ================================================
[2026-06-22 11:27:57,799.799 INFO    ] Launching Daemon at Mon Jun 22 11:27:57 IST 2026
[2026-06-22 11:27:57,809.809 INFO    ] ================================================
[2026-06-22 11:27:58,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:27:58
[2026-06-22 11:27:58,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:27:59,227.227 INFO    ] Initializing speech engine...
[2026-06-22 11:27:59,234.234 INFO    ] 2026-06-22 11:27:59
[2026-06-22 11:27:59,531.531 INFO    ] 2026-06-22 11:27:59
[2026-06-22 11:27:59,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:27:59,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:27:59,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:27:59,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:27:59,956.956 INFO    ] time= 22/06/2026 11:27:59
[2026-06-22 11:27:59,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:27:59,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:28:00,044.044 INFO    ] No existing commands found in stream
[2026-06-22 11:28:05,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:28:05,058.058 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-22 11:28:08,306.306 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:28:08,308.308 INFO    ] Checking for system updates...
[2026-06-22 11:28:08,328.328 INFO    ] 200
[2026-06-22 11:28:08,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:28:08,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:28:08,361.361 INFO    ] No update needed
[2026-06-22 11:28:08,362.362 INFO    ] Checking for camera pi updates...
[2026-06-22 11:28:08,382.382 INFO    ] 200
[2026-06-22 11:28:08,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:28:08,414.414 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:28:08,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:28:08,515.515 INFO    ] No camera update needed
[2026-06-22 11:28:08,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:28:08,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:28:08,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:28:08,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:28:10,571.571 INFO    ] ================================================
[2026-06-22 11:28:10,586.586 INFO    ] Launching Daemon at Mon Jun 22 11:28:10 IST 2026
[2026-06-22 11:28:10,596.596 INFO    ] ================================================
[2026-06-22 11:28:11,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:28:11
[2026-06-22 11:28:11,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:28:12,022.022 INFO    ] Initializing speech engine...
[2026-06-22 11:28:12,031.031 INFO    ] 2026-06-22 11:28:12
[2026-06-22 11:28:12,278.278 INFO    ] 2026-06-22 11:28:12
[2026-06-22 11:28:12,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:28:12,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:28:12,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:28:12,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:28:12,836.836 INFO    ] time= 22/06/2026 11:28:12
[2026-06-22 11:28:12,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:28:12,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:28:12,990.990 INFO    ] No existing commands found in stream
[2026-06-22 11:28:18,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:28:18,009.009 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-22 11:28:21,689.689 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:28:21,692.692 INFO    ] Checking for system updates...
[2026-06-22 11:28:21,730.730 INFO    ] 200
[2026-06-22 11:28:21,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:28:21,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:28:21,797.797 INFO    ] No update needed
[2026-06-22 11:28:21,800.800 INFO    ] Checking for camera pi updates...
[2026-06-22 11:28:21,840.840 INFO    ] 200
[2026-06-22 11:28:21,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:28:21,886.886 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:28:21,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:28:21,973.973 INFO    ] No camera update needed
[2026-06-22 11:28:21,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:28:21,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:28:21,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:28:21,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:28:24,033.033 INFO    ] ================================================
[2026-06-22 11:28:24,049.049 INFO    ] Launching Daemon at Mon Jun 22 11:28:24 IST 2026
[2026-06-22 11:28:24,060.060 INFO    ] ================================================
[2026-06-22 11:28:24,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:28:24
[2026-06-22 11:28:25,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:28:25,494.494 INFO    ] Initializing speech engine...
[2026-06-22 11:28:25,503.503 INFO    ] 2026-06-22 11:28:25
[2026-06-22 11:28:25,750.750 INFO    ] 2026-06-22 11:28:25
[2026-06-22 11:28:25,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:28:26,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:28:26,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:28:26,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:28:26,307.307 INFO    ] time= 22/06/2026 11:28:26
[2026-06-22 11:28:26,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:28:26,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:28:26,457.457 INFO    ] No existing commands found in stream
[2026-06-22 11:28:31,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:28:31,480.480 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-22 11:28:35,694.694 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:28:35,696.696 INFO    ] Checking for system updates...
[2026-06-22 11:28:35,717.717 INFO    ] 200
[2026-06-22 11:28:35,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:28:35,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:28:35,764.764 INFO    ] No update needed
[2026-06-22 11:28:35,767.767 INFO    ] Checking for camera pi updates...
[2026-06-22 11:28:35,800.800 INFO    ] 200
[2026-06-22 11:28:35,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:28:35,843.843 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:28:35,921.921 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:28:35,924.924 INFO    ] No camera update needed
[2026-06-22 11:28:35,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:28:35,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:28:35,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:28:35,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:28:37,980.980 INFO    ] ================================================
[2026-06-22 11:28:38,995.995 INFO    ] Launching Daemon at Mon Jun 22 11:28:37 IST 2026
[2026-06-22 11:28:38,006.006 INFO    ] ================================================
[2026-06-22 11:28:38,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:28:38
[2026-06-22 11:28:39,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:28:39,373.373 INFO    ] Initializing speech engine...
[2026-06-22 11:28:39,384.384 INFO    ] 2026-06-22 11:28:39
[2026-06-22 11:28:39,642.642 INFO    ] 2026-06-22 11:28:39
[2026-06-22 11:28:39,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:28:39,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:28:39,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:28:40,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:28:40,140.140 INFO    ] time= 22/06/2026 11:28:40
[2026-06-22 11:28:40,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:28:40,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:28:40,368.368 INFO    ] No existing commands found in stream
[2026-06-22 11:28:45,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:28:45,397.397 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-22 11:28:47,018.018 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:28:47,019.019 INFO    ] Checking for system updates...
[2026-06-22 11:28:47,043.043 INFO    ] 200
[2026-06-22 11:28:47,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:28:47,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:28:47,102.102 INFO    ] No update needed
[2026-06-22 11:28:47,104.104 INFO    ] Checking for camera pi updates...
[2026-06-22 11:28:47,138.138 INFO    ] 200
[2026-06-22 11:28:47,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:28:47,181.181 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:28:47,274.274 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:28:47,276.276 INFO    ] No camera update needed
[2026-06-22 11:28:47,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:28:47,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:28:47,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:28:47,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:28:49,333.333 INFO    ] ================================================
[2026-06-22 11:28:49,349.349 INFO    ] Launching Daemon at Mon Jun 22 11:28:49 IST 2026
[2026-06-22 11:28:49,359.359 INFO    ] ================================================
[2026-06-22 11:28:49,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:28:49
[2026-06-22 11:28:50,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:28:50,733.733 INFO    ] Initializing speech engine...
[2026-06-22 11:28:50,741.741 INFO    ] 2026-06-22 11:28:50
[2026-06-22 11:28:51,028.028 INFO    ] 2026-06-22 11:28:51
[2026-06-22 11:28:51,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:28:51,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:28:51,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:28:51,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:28:51,499.499 INFO    ] time= 22/06/2026 11:28:51
[2026-06-22 11:28:51,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:28:51,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:28:51,706.706 INFO    ] No existing commands found in stream
[2026-06-22 11:28:56,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:28:56,734.734 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-22 11:28:59,760.760 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:28:59,763.763 INFO    ] Checking for system updates...
[2026-06-22 11:28:59,800.800 INFO    ] 200
[2026-06-22 11:28:59,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:28:59,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:28:59,859.859 INFO    ] No update needed
[2026-06-22 11:28:59,861.861 INFO    ] Checking for camera pi updates...
[2026-06-22 11:28:59,909.909 INFO    ] 200
[2026-06-22 11:28:59,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:28:59,952.952 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:29:00,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:29:00,040.040 INFO    ] No camera update needed
[2026-06-22 11:29:00,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:29:00,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:29:00,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:29:00,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:29:02,098.098 INFO    ] ================================================
[2026-06-22 11:29:02,119.119 INFO    ] Launching Daemon at Mon Jun 22 11:29:02 IST 2026
[2026-06-22 11:29:02,137.137 INFO    ] ================================================
[2026-06-22 11:29:02,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:29:02
[2026-06-22 11:29:03,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:29:03,867.867 INFO    ] Initializing speech engine...
[2026-06-22 11:29:03,873.873 INFO    ] 2026-06-22 11:29:03
[2026-06-22 11:29:04,162.162 INFO    ] 2026-06-22 11:29:04
[2026-06-22 11:29:04,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:29:04,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:29:04,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:29:04,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:29:04,656.656 INFO    ] time= 22/06/2026 11:29:04
[2026-06-22 11:29:04,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:29:04,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:29:04,840.840 INFO    ] No existing commands found in stream
[2026-06-22 11:29:09,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:29:09,886.886 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-22 11:29:11,673.673 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:29:11,675.675 INFO    ] Checking for system updates...
[2026-06-22 11:29:11,697.697 INFO    ] 200
[2026-06-22 11:29:11,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:29:11,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:29:11,733.733 INFO    ] No update needed
[2026-06-22 11:29:11,735.735 INFO    ] Checking for camera pi updates...
[2026-06-22 11:29:11,756.756 INFO    ] 200
[2026-06-22 11:29:11,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:29:11,804.804 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:29:11,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:29:11,988.988 INFO    ] No camera update needed
[2026-06-22 11:29:11,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:29:11,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:29:12,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:29:12,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:29:14,046.046 INFO    ] ================================================
[2026-06-22 11:29:14,062.062 INFO    ] Launching Daemon at Mon Jun 22 11:29:14 IST 2026
[2026-06-22 11:29:14,076.076 INFO    ] ================================================
[2026-06-22 11:29:14,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:29:14
[2026-06-22 11:29:15,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:29:15,415.415 INFO    ] Initializing speech engine...
[2026-06-22 11:29:15,424.424 INFO    ] 2026-06-22 11:29:15
[2026-06-22 11:29:15,680.680 INFO    ] 2026-06-22 11:29:15
[2026-06-22 11:29:15,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:29:15,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:29:15,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:29:16,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:29:16,097.097 INFO    ] time= 22/06/2026 11:29:16
[2026-06-22 11:29:16,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:29:16,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:29:16,254.254 INFO    ] No existing commands found in stream
[2026-06-22 11:29:21,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:29:21,287.287 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-22 11:29:21,849.849 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:29:21,852.852 INFO    ] Checking for system updates...
[2026-06-22 11:29:21,889.889 INFO    ] 200
[2026-06-22 11:29:21,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:29:21,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:29:21,956.956 INFO    ] No update needed
[2026-06-22 11:29:21,960.960 INFO    ] Checking for camera pi updates...
[2026-06-22 11:29:21,999.999 INFO    ] 200
[2026-06-22 11:29:22,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:29:22,045.045 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:29:22,125.125 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:29:22,127.127 INFO    ] No camera update needed
[2026-06-22 11:29:22,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:29:22,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:29:22,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:29:22,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:29:24,182.182 INFO    ] ================================================
[2026-06-22 11:29:24,198.198 INFO    ] Launching Daemon at Mon Jun 22 11:29:24 IST 2026
[2026-06-22 11:29:24,209.209 INFO    ] ================================================
[2026-06-22 11:29:24,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:29:24
[2026-06-22 11:29:25,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:29:25,576.576 INFO    ] Initializing speech engine...
[2026-06-22 11:29:25,583.583 INFO    ] 2026-06-22 11:29:25
[2026-06-22 11:29:25,843.843 INFO    ] 2026-06-22 11:29:25
[2026-06-22 11:29:25,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:29:26,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:29:26,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:29:26,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:29:26,326.326 INFO    ] time= 22/06/2026 11:29:26
[2026-06-22 11:29:26,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:29:26,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:29:26,535.535 INFO    ] No existing commands found in stream
[2026-06-22 11:29:31,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:29:31,554.554 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-22 11:29:34,534.534 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:29:34,537.537 INFO    ] Checking for system updates...
[2026-06-22 11:29:34,574.574 INFO    ] 200
[2026-06-22 11:29:34,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:29:34,634.634 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:29:34,636.636 INFO    ] No update needed
[2026-06-22 11:29:34,639.639 INFO    ] Checking for camera pi updates...
[2026-06-22 11:29:34,672.672 INFO    ] 200
[2026-06-22 11:29:34,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:29:34,716.716 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:29:34,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:29:34,818.818 INFO    ] No camera update needed
[2026-06-22 11:29:34,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:29:34,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:29:34,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:29:34,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:29:36,875.875 INFO    ] ================================================
[2026-06-22 11:29:36,890.890 INFO    ] Launching Daemon at Mon Jun 22 11:29:36 IST 2026
[2026-06-22 11:29:36,902.902 INFO    ] ================================================
[2026-06-22 11:29:37,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:29:37
[2026-06-22 11:29:38,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:29:38,337.337 INFO    ] Initializing speech engine...
[2026-06-22 11:29:38,346.346 INFO    ] 2026-06-22 11:29:38
[2026-06-22 11:29:38,595.595 INFO    ] 2026-06-22 11:29:38
[2026-06-22 11:29:38,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:29:38,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:29:38,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:29:39,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:29:39,067.067 INFO    ] time= 22/06/2026 11:29:39
[2026-06-22 11:29:39,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:29:39,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:29:39,328.328 INFO    ] No existing commands found in stream
[2026-06-22 11:29:44,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:29:44,341.341 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-22 11:29:48,038.038 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:29:48,041.041 INFO    ] Checking for system updates...
[2026-06-22 11:29:48,077.077 INFO    ] 200
[2026-06-22 11:29:48,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:29:48,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:29:48,142.142 INFO    ] No update needed
[2026-06-22 11:29:48,145.145 INFO    ] Checking for camera pi updates...
[2026-06-22 11:29:48,180.180 INFO    ] 200
[2026-06-22 11:29:48,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:29:48,228.228 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:29:48,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:29:48,318.318 INFO    ] No camera update needed
[2026-06-22 11:29:48,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:29:48,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:29:48,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:29:48,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:29:50,377.377 INFO    ] ================================================
[2026-06-22 11:29:50,392.392 INFO    ] Launching Daemon at Mon Jun 22 11:29:50 IST 2026
[2026-06-22 11:29:50,403.403 INFO    ] ================================================
[2026-06-22 11:29:51,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:29:51
[2026-06-22 11:29:51,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:29:51,948.948 INFO    ] Initializing speech engine...
[2026-06-22 11:29:51,962.962 INFO    ] 2026-06-22 11:29:51
[2026-06-22 11:29:52,281.281 INFO    ] 2026-06-22 11:29:52
[2026-06-22 11:29:52,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:29:52,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:29:52,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:29:52,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:29:52,798.798 INFO    ] time= 22/06/2026 11:29:52
[2026-06-22 11:29:52,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:29:52,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:29:52,965.965 INFO    ] No existing commands found in stream
[2026-06-22 11:29:57,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:29:58,000.000 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-22 11:29:59,807.807 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:29:59,809.809 INFO    ] Checking for system updates...
[2026-06-22 11:29:59,830.830 INFO    ] 200
[2026-06-22 11:29:59,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:29:59,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:29:59,863.863 INFO    ] No update needed
[2026-06-22 11:29:59,865.865 INFO    ] Checking for camera pi updates...
[2026-06-22 11:29:59,885.885 INFO    ] 200
[2026-06-22 11:29:59,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:29:59,924.924 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:30:00,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:30:00,004.004 INFO    ] No camera update needed
[2026-06-22 11:30:00,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:30:00,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:30:00,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:30:00,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:30:02,163.163 INFO    ] ================================================
[2026-06-22 11:30:02,356.356 INFO    ] Launching Daemon at Mon Jun 22 11:30:02 IST 2026
[2026-06-22 11:30:02,390.390 INFO    ] ================================================
[2026-06-22 11:30:03,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:30:03
[2026-06-22 11:30:04,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:30:04,273.273 INFO    ] Initializing speech engine...
[2026-06-22 11:30:04,286.286 INFO    ] 2026-06-22 11:30:04
[2026-06-22 11:30:04,550.550 INFO    ] 2026-06-22 11:30:04
[2026-06-22 11:30:04,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:30:04,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:30:04,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:30:04,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:30:05,057.057 INFO    ] time= 22/06/2026 11:30:05
[2026-06-22 11:30:05,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:30:05,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:30:05,221.221 INFO    ] No existing commands found in stream
[2026-06-22 11:30:10,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:30:10,335.335 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-22 11:30:14,529.529 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:30:14,531.531 INFO    ] Checking for system updates...
[2026-06-22 11:30:14,571.571 INFO    ] 200
[2026-06-22 11:30:14,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:30:14,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:30:14,632.632 INFO    ] No update needed
[2026-06-22 11:30:14,634.634 INFO    ] Checking for camera pi updates...
[2026-06-22 11:30:14,672.672 INFO    ] 200
[2026-06-22 11:30:14,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:30:14,720.720 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:30:14,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:30:14,792.792 INFO    ] No camera update needed
[2026-06-22 11:30:14,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:30:14,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:30:14,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:30:14,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:30:16,848.848 INFO    ] ================================================
[2026-06-22 11:30:16,863.863 INFO    ] Launching Daemon at Mon Jun 22 11:30:16 IST 2026
[2026-06-22 11:30:16,874.874 INFO    ] ================================================
[2026-06-22 11:30:17,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:30:17
[2026-06-22 11:30:18,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:30:18,301.301 INFO    ] Initializing speech engine...
[2026-06-22 11:30:18,316.316 INFO    ] 2026-06-22 11:30:18
[2026-06-22 11:30:18,582.582 INFO    ] 2026-06-22 11:30:18
[2026-06-22 11:30:18,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:30:18,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:30:18,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:30:18,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:30:18,978.978 INFO    ] time= 22/06/2026 11:30:18
[2026-06-22 11:30:18,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:30:19,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:30:19,146.146 INFO    ] No existing commands found in stream
[2026-06-22 11:30:24,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:30:24,173.173 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-22 11:30:27,682.682 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:30:27,683.683 INFO    ] Checking for system updates...
[2026-06-22 11:30:27,707.707 INFO    ] 200
[2026-06-22 11:30:27,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:30:27,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:30:27,741.741 INFO    ] No update needed
[2026-06-22 11:30:27,744.744 INFO    ] Checking for camera pi updates...
[2026-06-22 11:30:27,779.779 INFO    ] 200
[2026-06-22 11:30:27,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:30:27,827.827 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:30:27,919.919 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:30:27,922.922 INFO    ] No camera update needed
[2026-06-22 11:30:27,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:30:27,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:30:27,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:30:27,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:30:29,982.982 INFO    ] ================================================
[2026-06-22 11:30:30,997.997 INFO    ] Launching Daemon at Mon Jun 22 11:30:29 IST 2026
[2026-06-22 11:30:30,008.008 INFO    ] ================================================
[2026-06-22 11:30:30,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:30:30
[2026-06-22 11:30:31,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:30:31,389.389 INFO    ] Initializing speech engine...
[2026-06-22 11:30:31,398.398 INFO    ] 2026-06-22 11:30:31
[2026-06-22 11:30:31,683.683 INFO    ] 2026-06-22 11:30:31
[2026-06-22 11:30:31,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:30:31,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:30:31,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:30:32,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:30:32,249.249 INFO    ] time= 22/06/2026 11:30:32
[2026-06-22 11:30:32,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:30:32,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:30:32,426.426 INFO    ] No existing commands found in stream
[2026-06-22 11:30:37,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:30:37,466.466 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-22 11:30:41,790.790 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:30:41,791.791 INFO    ] Checking for system updates...
[2026-06-22 11:30:41,812.812 INFO    ] 200
[2026-06-22 11:30:41,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:30:41,845.845 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:30:41,846.846 INFO    ] No update needed
[2026-06-22 11:30:41,848.848 INFO    ] Checking for camera pi updates...
[2026-06-22 11:30:41,869.869 INFO    ] 200
[2026-06-22 11:30:41,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:30:41,920.920 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:30:42,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:30:42,006.006 INFO    ] No camera update needed
[2026-06-22 11:30:42,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:30:42,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:30:42,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:30:42,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:30:44,066.066 INFO    ] ================================================
[2026-06-22 11:30:44,081.081 INFO    ] Launching Daemon at Mon Jun 22 11:30:44 IST 2026
[2026-06-22 11:30:44,092.092 INFO    ] ================================================
[2026-06-22 11:30:44,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:30:44
[2026-06-22 11:30:45,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:30:45,510.510 INFO    ] Initializing speech engine...
[2026-06-22 11:30:45,518.518 INFO    ] 2026-06-22 11:30:45
[2026-06-22 11:30:45,782.782 INFO    ] 2026-06-22 11:30:45
[2026-06-22 11:30:45,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:30:46,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:30:46,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:30:46,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:30:46,211.211 INFO    ] time= 22/06/2026 11:30:46
[2026-06-22 11:30:46,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:30:46,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:30:46,375.375 INFO    ] No existing commands found in stream
[2026-06-22 11:30:51,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:30:51,408.408 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-22 11:30:52,402.402 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:30:52,403.403 INFO    ] Checking for system updates...
[2026-06-22 11:30:52,424.424 INFO    ] 200
[2026-06-22 11:30:52,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:30:52,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:30:52,460.460 INFO    ] No update needed
[2026-06-22 11:30:52,461.461 INFO    ] Checking for camera pi updates...
[2026-06-22 11:30:52,492.492 INFO    ] 200
[2026-06-22 11:30:52,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:30:52,540.540 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:30:52,632.632 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:30:52,635.635 INFO    ] No camera update needed
[2026-06-22 11:30:52,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:30:52,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:30:52,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:30:52,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:30:54,693.693 INFO    ] ================================================
[2026-06-22 11:30:54,709.709 INFO    ] Launching Daemon at Mon Jun 22 11:30:54 IST 2026
[2026-06-22 11:30:54,720.720 INFO    ] ================================================
[2026-06-22 11:30:55,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:30:55
[2026-06-22 11:30:55,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:30:56,092.092 INFO    ] Initializing speech engine...
[2026-06-22 11:30:56,103.103 INFO    ] 2026-06-22 11:30:56
[2026-06-22 11:30:56,368.368 INFO    ] 2026-06-22 11:30:56
[2026-06-22 11:30:56,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:30:56,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:30:56,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:30:56,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:30:56,853.853 INFO    ] time= 22/06/2026 11:30:56
[2026-06-22 11:30:56,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:30:56,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:30:57,030.030 INFO    ] No existing commands found in stream
[2026-06-22 11:31:02,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:31:02,046.046 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-22 11:31:05,365.365 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:31:05,367.367 INFO    ] Checking for system updates...
[2026-06-22 11:31:05,403.403 INFO    ] 200
[2026-06-22 11:31:05,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:31:05,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:31:05,462.462 INFO    ] No update needed
[2026-06-22 11:31:05,464.464 INFO    ] Checking for camera pi updates...
[2026-06-22 11:31:05,499.499 INFO    ] 200
[2026-06-22 11:31:05,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:31:05,543.543 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:31:05,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:31:05,622.622 INFO    ] No camera update needed
[2026-06-22 11:31:05,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:31:05,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:31:05,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:31:05,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:31:07,679.679 INFO    ] ================================================
[2026-06-22 11:31:07,695.695 INFO    ] Launching Daemon at Mon Jun 22 11:31:07 IST 2026
[2026-06-22 11:31:07,705.705 INFO    ] ================================================
[2026-06-22 11:31:08,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:31:08
[2026-06-22 11:31:08,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:31:09,170.170 INFO    ] Initializing speech engine...
[2026-06-22 11:31:09,193.193 INFO    ] 2026-06-22 11:31:09
[2026-06-22 11:31:09,452.452 INFO    ] 2026-06-22 11:31:09
[2026-06-22 11:31:09,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:31:09,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:31:09,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:31:09,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:31:09,972.972 INFO    ] time= 22/06/2026 11:31:09
[2026-06-22 11:31:10,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:31:10,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:31:10,186.186 INFO    ] No existing commands found in stream
[2026-06-22 11:31:15,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:31:15,208.208 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-22 11:31:18,318.318 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:31:18,320.320 INFO    ] Checking for system updates...
[2026-06-22 11:31:18,340.340 INFO    ] 200
[2026-06-22 11:31:18,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:31:18,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:31:18,373.373 INFO    ] No update needed
[2026-06-22 11:31:18,375.375 INFO    ] Checking for camera pi updates...
[2026-06-22 11:31:18,398.398 INFO    ] 200
[2026-06-22 11:31:18,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:31:18,450.450 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:31:18,631.631 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:31:18,634.634 INFO    ] No camera update needed
[2026-06-22 11:31:18,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:31:18,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:31:18,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:31:18,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:31:20,690.690 INFO    ] ================================================
[2026-06-22 11:31:20,706.706 INFO    ] Launching Daemon at Mon Jun 22 11:31:20 IST 2026
[2026-06-22 11:31:20,716.716 INFO    ] ================================================
[2026-06-22 11:31:21,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:31:21
[2026-06-22 11:31:21,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:31:22,058.058 INFO    ] Initializing speech engine...
[2026-06-22 11:31:22,075.075 INFO    ] 2026-06-22 11:31:22
[2026-06-22 11:31:22,331.331 INFO    ] 2026-06-22 11:31:22
[2026-06-22 11:31:22,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:31:22,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:31:22,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:31:22,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:31:22,817.817 INFO    ] time= 22/06/2026 11:31:22
[2026-06-22 11:31:22,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:31:22,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:31:23,034.034 INFO    ] No existing commands found in stream
[2026-06-22 11:31:28,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:31:28,062.062 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-22 11:31:29,200.200 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:31:29,203.203 INFO    ] Checking for system updates...
[2026-06-22 11:31:29,244.244 INFO    ] 200
[2026-06-22 11:31:29,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:31:29,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:31:29,309.309 INFO    ] No update needed
[2026-06-22 11:31:29,311.311 INFO    ] Checking for camera pi updates...
[2026-06-22 11:31:29,345.345 INFO    ] 200
[2026-06-22 11:31:29,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:31:29,393.393 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:31:29,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:31:29,484.484 INFO    ] No camera update needed
[2026-06-22 11:31:29,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:31:29,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:31:29,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:31:29,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:31:31,541.541 INFO    ] ================================================
[2026-06-22 11:31:31,559.559 INFO    ] Launching Daemon at Mon Jun 22 11:31:31 IST 2026
[2026-06-22 11:31:31,570.570 INFO    ] ================================================
[2026-06-22 11:31:32,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:31:32
[2026-06-22 11:31:32,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:31:33,075.075 INFO    ] Initializing speech engine...
[2026-06-22 11:31:33,091.091 INFO    ] 2026-06-22 11:31:33
[2026-06-22 11:31:33,376.376 INFO    ] 2026-06-22 11:31:33
[2026-06-22 11:31:33,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:31:33,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:31:33,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:31:33,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:31:33,798.798 INFO    ] time= 22/06/2026 11:31:33
[2026-06-22 11:31:33,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:31:33,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:31:33,886.886 INFO    ] No existing commands found in stream
[2026-06-22 11:31:38,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:31:38,925.925 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-22 11:31:40,279.279 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:31:40,281.281 INFO    ] Checking for system updates...
[2026-06-22 11:31:40,317.317 INFO    ] 200
[2026-06-22 11:31:40,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:31:40,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:31:40,383.383 INFO    ] No update needed
[2026-06-22 11:31:40,386.386 INFO    ] Checking for camera pi updates...
[2026-06-22 11:31:40,419.419 INFO    ] 200
[2026-06-22 11:31:40,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:31:40,462.462 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:31:40,553.553 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:31:40,555.555 INFO    ] No camera update needed
[2026-06-22 11:31:40,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:31:40,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:31:40,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:31:40,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:31:42,610.610 INFO    ] ================================================
[2026-06-22 11:31:42,625.625 INFO    ] Launching Daemon at Mon Jun 22 11:31:42 IST 2026
[2026-06-22 11:31:42,636.636 INFO    ] ================================================
[2026-06-22 11:31:43,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:31:43
[2026-06-22 11:31:43,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:31:43,960.960 INFO    ] Initializing speech engine...
[2026-06-22 11:31:43,976.976 INFO    ] 2026-06-22 11:31:43
[2026-06-22 11:31:44,262.262 INFO    ] 2026-06-22 11:31:44
[2026-06-22 11:31:44,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:31:44,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:31:44,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:31:44,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:31:44,680.680 INFO    ] time= 22/06/2026 11:31:44
[2026-06-22 11:31:44,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:31:44,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:31:44,772.772 INFO    ] No existing commands found in stream
[2026-06-22 11:31:49,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:31:49,800.800 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-22 11:31:54,119.119 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:31:54,122.122 INFO    ] Checking for system updates...
[2026-06-22 11:31:54,162.162 INFO    ] 200
[2026-06-22 11:31:54,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:31:54,218.218 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:31:54,220.220 INFO    ] No update needed
[2026-06-22 11:31:54,223.223 INFO    ] Checking for camera pi updates...
[2026-06-22 11:31:54,256.256 INFO    ] 200
[2026-06-22 11:31:54,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:31:54,299.299 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:31:54,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:31:54,389.389 INFO    ] No camera update needed
[2026-06-22 11:31:54,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:31:54,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:31:54,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:31:54,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:31:56,445.445 INFO    ] ================================================
[2026-06-22 11:31:56,460.460 INFO    ] Launching Daemon at Mon Jun 22 11:31:56 IST 2026
[2026-06-22 11:31:56,471.471 INFO    ] ================================================
[2026-06-22 11:31:57,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:31:57
[2026-06-22 11:31:57,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:31:57,909.909 INFO    ] Initializing speech engine...
[2026-06-22 11:31:57,919.919 INFO    ] 2026-06-22 11:31:57
[2026-06-22 11:31:58,170.170 INFO    ] 2026-06-22 11:31:58
[2026-06-22 11:31:58,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:31:58,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:31:58,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:31:58,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:31:58,670.670 INFO    ] time= 22/06/2026 11:31:58
[2026-06-22 11:31:58,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:31:58,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:31:58,883.883 INFO    ] No existing commands found in stream
[2026-06-22 11:32:03,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:32:03,910.910 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-22 11:32:04,878.878 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:32:04,881.881 INFO    ] Checking for system updates...
[2026-06-22 11:32:04,922.922 INFO    ] 200
[2026-06-22 11:32:04,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:32:04,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:32:04,979.979 INFO    ] No update needed
[2026-06-22 11:32:04,981.981 INFO    ] Checking for camera pi updates...
[2026-06-22 11:32:05,019.019 INFO    ] 200
[2026-06-22 11:32:05,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:32:05,062.062 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:32:05,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:32:05,131.131 INFO    ] No camera update needed
[2026-06-22 11:32:05,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:32:05,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:32:05,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:32:05,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:32:07,186.186 INFO    ] ================================================
[2026-06-22 11:32:07,201.201 INFO    ] Launching Daemon at Mon Jun 22 11:32:07 IST 2026
[2026-06-22 11:32:07,212.212 INFO    ] ================================================
[2026-06-22 11:32:07,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:32:07
[2026-06-22 11:32:08,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:32:08,608.608 INFO    ] Initializing speech engine...
[2026-06-22 11:32:08,633.633 INFO    ] 2026-06-22 11:32:08
[2026-06-22 11:32:08,910.910 INFO    ] 2026-06-22 11:32:08
[2026-06-22 11:32:08,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:32:09,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:32:09,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:32:09,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:32:09,326.326 INFO    ] time= 22/06/2026 11:32:09
[2026-06-22 11:32:09,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:32:09,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:32:09,413.413 INFO    ] No existing commands found in stream
[2026-06-22 11:32:14,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:32:14,442.442 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-22 11:32:16,197.197 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:32:16,199.199 INFO    ] Checking for system updates...
[2026-06-22 11:32:16,225.225 INFO    ] 200
[2026-06-22 11:32:16,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:32:16,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:32:16,284.284 INFO    ] No update needed
[2026-06-22 11:32:16,286.286 INFO    ] Checking for camera pi updates...
[2026-06-22 11:32:16,325.325 INFO    ] 200
[2026-06-22 11:32:16,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:32:16,370.370 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:32:16,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:32:16,457.457 INFO    ] No camera update needed
[2026-06-22 11:32:16,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:32:16,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:32:16,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:32:16,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:32:18,513.513 INFO    ] ================================================
[2026-06-22 11:32:18,529.529 INFO    ] Launching Daemon at Mon Jun 22 11:32:18 IST 2026
[2026-06-22 11:32:18,540.540 INFO    ] ================================================
[2026-06-22 11:32:19,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:32:19
[2026-06-22 11:32:19,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:32:19,994.994 INFO    ] Initializing speech engine...
[2026-06-22 11:32:20,001.001 INFO    ] 2026-06-22 11:32:19
[2026-06-22 11:32:20,295.295 INFO    ] 2026-06-22 11:32:20
[2026-06-22 11:32:20,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:32:20,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:32:20,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:32:20,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:32:20,690.690 INFO    ] time= 22/06/2026 11:32:20
[2026-06-22 11:32:20,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:32:20,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:32:20,884.884 INFO    ] No existing commands found in stream
[2026-06-22 11:32:25,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:32:25,900.900 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-22 11:32:29,727.727 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:32:29,729.729 INFO    ] Checking for system updates...
[2026-06-22 11:32:29,760.760 INFO    ] 200
[2026-06-22 11:32:29,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:32:29,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:32:29,825.825 INFO    ] No update needed
[2026-06-22 11:32:29,827.827 INFO    ] Checking for camera pi updates...
[2026-06-22 11:32:29,866.866 INFO    ] 200
[2026-06-22 11:32:29,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:32:29,908.908 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:32:29,978.978 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:32:29,980.980 INFO    ] No camera update needed
[2026-06-22 11:32:29,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:32:29,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:32:29,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:32:29,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:32:32,038.038 INFO    ] ================================================
[2026-06-22 11:32:32,059.059 INFO    ] Launching Daemon at Mon Jun 22 11:32:32 IST 2026
[2026-06-22 11:32:32,075.075 INFO    ] ================================================
[2026-06-22 11:32:32,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:32:32
[2026-06-22 11:32:33,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:32:33,672.672 INFO    ] Initializing speech engine...
[2026-06-22 11:32:33,677.677 INFO    ] 2026-06-22 11:32:33
[2026-06-22 11:32:33,933.933 INFO    ] 2026-06-22 11:32:33
[2026-06-22 11:32:33,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:32:34,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:32:34,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:32:35,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:32:35,348.348 INFO    ] time= 22/06/2026 11:32:35
[2026-06-22 11:32:35,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:32:35,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:32:35,462.462 INFO    ] No existing commands found in stream
[2026-06-22 11:32:40,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:32:40,476.476 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-22 11:32:42,967.967 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:32:42,968.968 INFO    ] Checking for system updates...
[2026-06-22 11:32:42,989.989 INFO    ] 200
[2026-06-22 11:32:42,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:32:43,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:32:43,022.022 INFO    ] No update needed
[2026-06-22 11:32:43,024.024 INFO    ] Checking for camera pi updates...
[2026-06-22 11:32:43,047.047 INFO    ] 200
[2026-06-22 11:32:43,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:32:43,088.088 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:32:43,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:32:43,181.181 INFO    ] No camera update needed
[2026-06-22 11:32:43,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:32:43,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:32:43,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:32:43,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:32:45,236.236 INFO    ] ================================================
[2026-06-22 11:32:45,253.253 INFO    ] Launching Daemon at Mon Jun 22 11:32:45 IST 2026
[2026-06-22 11:32:45,264.264 INFO    ] ================================================
[2026-06-22 11:32:45,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:32:45
[2026-06-22 11:32:46,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:32:46,666.666 INFO    ] Initializing speech engine...
[2026-06-22 11:32:46,680.680 INFO    ] 2026-06-22 11:32:46
[2026-06-22 11:32:46,976.976 INFO    ] 2026-06-22 11:32:46
[2026-06-22 11:32:47,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:32:47,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:32:47,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:32:47,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:32:47,467.467 INFO    ] time= 22/06/2026 11:32:47
[2026-06-22 11:32:47,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:32:47,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:32:47,688.688 INFO    ] No existing commands found in stream
[2026-06-22 11:32:52,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:32:52,711.711 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-22 11:32:53,816.816 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:32:53,818.818 INFO    ] Checking for system updates...
[2026-06-22 11:32:53,839.839 INFO    ] 200
[2026-06-22 11:32:53,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:32:53,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:32:53,898.898 INFO    ] No update needed
[2026-06-22 11:32:53,902.902 INFO    ] Checking for camera pi updates...
[2026-06-22 11:32:53,937.937 INFO    ] 200
[2026-06-22 11:32:53,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:32:53,981.981 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:32:54,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:32:54,066.066 INFO    ] No camera update needed
[2026-06-22 11:32:54,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:32:54,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:32:54,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:32:54,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:32:56,127.127 INFO    ] ================================================
[2026-06-22 11:32:56,143.143 INFO    ] Launching Daemon at Mon Jun 22 11:32:56 IST 2026
[2026-06-22 11:32:56,154.154 INFO    ] ================================================
[2026-06-22 11:32:56,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:32:56
[2026-06-22 11:32:57,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:32:57,825.825 INFO    ] Initializing speech engine...
[2026-06-22 11:32:57,833.833 INFO    ] 2026-06-22 11:32:57
[2026-06-22 11:32:58,114.114 INFO    ] 2026-06-22 11:32:58
[2026-06-22 11:32:58,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:32:58,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:32:58,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:32:58,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:32:58,591.591 INFO    ] time= 22/06/2026 11:32:58
[2026-06-22 11:32:58,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:32:58,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:32:58,817.817 INFO    ] No existing commands found in stream
[2026-06-22 11:33:03,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:33:03,846.846 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-22 11:33:04,458.458 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:33:04,461.461 INFO    ] Checking for system updates...
[2026-06-22 11:33:04,497.497 INFO    ] 200
[2026-06-22 11:33:04,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:33:04,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:33:04,566.566 INFO    ] No update needed
[2026-06-22 11:33:04,569.569 INFO    ] Checking for camera pi updates...
[2026-06-22 11:33:04,606.606 INFO    ] 200
[2026-06-22 11:33:04,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:33:04,654.654 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:33:04,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:33:04,754.754 INFO    ] No camera update needed
[2026-06-22 11:33:04,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:33:04,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:33:04,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:33:04,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:33:06,810.810 INFO    ] ================================================
[2026-06-22 11:33:06,826.826 INFO    ] Launching Daemon at Mon Jun 22 11:33:06 IST 2026
[2026-06-22 11:33:06,837.837 INFO    ] ================================================
[2026-06-22 11:33:07,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:33:07
[2026-06-22 11:33:07,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:33:08,245.245 INFO    ] Initializing speech engine...
[2026-06-22 11:33:08,256.256 INFO    ] 2026-06-22 11:33:08
[2026-06-22 11:33:08,521.521 INFO    ] 2026-06-22 11:33:08
[2026-06-22 11:33:08,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:33:08,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:33:08,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:33:08,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:33:08,986.986 INFO    ] time= 22/06/2026 11:33:08
[2026-06-22 11:33:09,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:33:09,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:33:09,226.226 INFO    ] No existing commands found in stream
[2026-06-22 11:33:14,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:33:14,255.255 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-22 11:33:15,329.329 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:33:15,332.332 INFO    ] Checking for system updates...
[2026-06-22 11:33:15,370.370 INFO    ] 200
[2026-06-22 11:33:15,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:33:15,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:33:15,436.436 INFO    ] No update needed
[2026-06-22 11:33:15,439.439 INFO    ] Checking for camera pi updates...
[2026-06-22 11:33:15,475.475 INFO    ] 200
[2026-06-22 11:33:15,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:33:15,524.524 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:33:15,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:33:15,606.606 INFO    ] No camera update needed
[2026-06-22 11:33:15,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:33:15,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:33:15,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:33:15,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:33:17,663.663 INFO    ] ================================================
[2026-06-22 11:33:17,678.678 INFO    ] Launching Daemon at Mon Jun 22 11:33:17 IST 2026
[2026-06-22 11:33:17,689.689 INFO    ] ================================================
[2026-06-22 11:33:18,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:33:18
[2026-06-22 11:33:18,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:33:19,240.240 INFO    ] Initializing speech engine...
[2026-06-22 11:33:19,255.255 INFO    ] 2026-06-22 11:33:19
[2026-06-22 11:33:19,534.534 INFO    ] 2026-06-22 11:33:19
[2026-06-22 11:33:19,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:33:19,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:33:19,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:33:19,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:33:20,036.036 INFO    ] time= 22/06/2026 11:33:19
[2026-06-22 11:33:20,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:33:20,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:33:20,240.240 INFO    ] No existing commands found in stream
[2026-06-22 11:33:25,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:33:25,263.263 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-22 11:33:27,743.743 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:33:27,744.744 INFO    ] Checking for system updates...
[2026-06-22 11:33:27,777.777 INFO    ] 200
[2026-06-22 11:33:27,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:33:27,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:33:27,840.840 INFO    ] No update needed
[2026-06-22 11:33:27,843.843 INFO    ] Checking for camera pi updates...
[2026-06-22 11:33:27,880.880 INFO    ] 200
[2026-06-22 11:33:27,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:33:27,927.927 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:33:28,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:33:28,080.080 INFO    ] No camera update needed
[2026-06-22 11:33:28,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:33:28,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:33:28,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:33:28,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:33:30,136.136 INFO    ] ================================================
[2026-06-22 11:33:30,151.151 INFO    ] Launching Daemon at Mon Jun 22 11:33:30 IST 2026
[2026-06-22 11:33:30,162.162 INFO    ] ================================================
[2026-06-22 11:33:30,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:33:30
[2026-06-22 11:33:31,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:33:31,760.760 INFO    ] Initializing speech engine...
[2026-06-22 11:33:31,771.771 INFO    ] 2026-06-22 11:33:31
[2026-06-22 11:33:32,073.073 INFO    ] 2026-06-22 11:33:32
[2026-06-22 11:33:32,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:33:32,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:33:32,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:33:32,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:33:32,659.659 INFO    ] time= 22/06/2026 11:33:32
[2026-06-22 11:33:32,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:33:32,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:33:32,800.800 INFO    ] No existing commands found in stream
[2026-06-22 11:33:37,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:33:37,813.813 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-22 11:33:38,711.711 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:33:38,712.712 INFO    ] Checking for system updates...
[2026-06-22 11:33:38,734.734 INFO    ] 200
[2026-06-22 11:33:38,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:33:38,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:33:38,789.789 INFO    ] No update needed
[2026-06-22 11:33:38,791.791 INFO    ] Checking for camera pi updates...
[2026-06-22 11:33:38,827.827 INFO    ] 200
[2026-06-22 11:33:38,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:33:38,874.874 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:33:38,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:33:38,962.962 INFO    ] No camera update needed
[2026-06-22 11:33:38,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:33:38,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:33:38,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:33:38,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:33:41,018.018 INFO    ] ================================================
[2026-06-22 11:33:41,034.034 INFO    ] Launching Daemon at Mon Jun 22 11:33:41 IST 2026
[2026-06-22 11:33:41,045.045 INFO    ] ================================================
[2026-06-22 11:33:41,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:33:41
[2026-06-22 11:33:42,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:33:42,395.395 INFO    ] Initializing speech engine...
[2026-06-22 11:33:42,404.404 INFO    ] 2026-06-22 11:33:42
[2026-06-22 11:33:42,700.700 INFO    ] 2026-06-22 11:33:42
[2026-06-22 11:33:42,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:33:42,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:33:42,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:33:43,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:33:43,100.100 INFO    ] time= 22/06/2026 11:33:43
[2026-06-22 11:33:43,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:33:43,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:33:43,210.210 INFO    ] No existing commands found in stream
[2026-06-22 11:33:48,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:33:48,249.249 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-22 11:33:49,828.828 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:33:49,831.831 INFO    ] Checking for system updates...
[2026-06-22 11:33:49,870.870 INFO    ] 200
[2026-06-22 11:33:49,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:33:49,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:33:49,934.934 INFO    ] No update needed
[2026-06-22 11:33:49,937.937 INFO    ] Checking for camera pi updates...
[2026-06-22 11:33:49,971.971 INFO    ] 200
[2026-06-22 11:33:49,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:33:50,015.015 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:33:50,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:33:50,118.118 INFO    ] No camera update needed
[2026-06-22 11:33:50,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:33:50,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:33:50,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:33:50,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:33:52,175.175 INFO    ] ================================================
[2026-06-22 11:33:52,190.190 INFO    ] Launching Daemon at Mon Jun 22 11:33:52 IST 2026
[2026-06-22 11:33:52,201.201 INFO    ] ================================================
[2026-06-22 11:33:52,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:33:52
[2026-06-22 11:33:53,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:33:53,639.639 INFO    ] Initializing speech engine...
[2026-06-22 11:33:53,658.658 INFO    ] 2026-06-22 11:33:53
[2026-06-22 11:33:53,925.925 INFO    ] 2026-06-22 11:33:53
[2026-06-22 11:33:53,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:33:54,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:33:54,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:33:54,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:33:54,345.345 INFO    ] time= 22/06/2026 11:33:54
[2026-06-22 11:33:54,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:33:54,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:33:54,503.503 INFO    ] No existing commands found in stream
[2026-06-22 11:33:59,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:33:59,531.531 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-22 11:34:02,889.889 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:34:02,892.892 INFO    ] Checking for system updates...
[2026-06-22 11:34:02,941.941 INFO    ] 200
[2026-06-22 11:34:02,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:34:03,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:34:03,017.017 INFO    ] No update needed
[2026-06-22 11:34:03,020.020 INFO    ] Checking for camera pi updates...
[2026-06-22 11:34:03,090.090 INFO    ] 200
[2026-06-22 11:34:03,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:34:03,138.138 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:34:03,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:34:03,190.190 INFO    ] No camera update needed
[2026-06-22 11:34:03,193.193 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:34:03,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:34:03,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:34:03,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:34:05,246.246 INFO    ] ================================================
[2026-06-22 11:34:05,261.261 INFO    ] Launching Daemon at Mon Jun 22 11:34:05 IST 2026
[2026-06-22 11:34:05,272.272 INFO    ] ================================================
[2026-06-22 11:34:05,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:34:05
[2026-06-22 11:34:06,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:34:06,819.819 INFO    ] Initializing speech engine...
[2026-06-22 11:34:06,829.829 INFO    ] 2026-06-22 11:34:06
[2026-06-22 11:34:07,080.080 INFO    ] 2026-06-22 11:34:07
[2026-06-22 11:34:07,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:34:07,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:34:07,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:34:07,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:34:07,572.572 INFO    ] time= 22/06/2026 11:34:07
[2026-06-22 11:34:07,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:34:07,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:34:07,790.790 INFO    ] No existing commands found in stream
[2026-06-22 11:34:12,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:34:12,809.809 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-22 11:34:16,440.440 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:34:16,443.443 INFO    ] Checking for system updates...
[2026-06-22 11:34:16,479.479 INFO    ] 200
[2026-06-22 11:34:16,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:34:16,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:34:16,538.538 INFO    ] No update needed
[2026-06-22 11:34:16,540.540 INFO    ] Checking for camera pi updates...
[2026-06-22 11:34:16,577.577 INFO    ] 200
[2026-06-22 11:34:16,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:34:16,623.623 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:34:16,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:34:16,701.701 INFO    ] No camera update needed
[2026-06-22 11:34:16,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:34:16,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:34:16,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:34:16,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:34:18,757.757 INFO    ] ================================================
[2026-06-22 11:34:18,772.772 INFO    ] Launching Daemon at Mon Jun 22 11:34:18 IST 2026
[2026-06-22 11:34:18,782.782 INFO    ] ================================================
[2026-06-22 11:34:19,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:34:19
[2026-06-22 11:34:19,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:34:20,118.118 INFO    ] Initializing speech engine...
[2026-06-22 11:34:20,131.131 INFO    ] 2026-06-22 11:34:20
[2026-06-22 11:34:20,411.411 INFO    ] 2026-06-22 11:34:20
[2026-06-22 11:34:20,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:34:20,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:34:20,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:34:20,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:34:20,799.799 INFO    ] time= 22/06/2026 11:34:20
[2026-06-22 11:34:20,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:34:20,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:34:20,954.954 INFO    ] No existing commands found in stream
[2026-06-22 11:34:25,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:34:25,987.987 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-22 11:34:30,181.181 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:34:30,182.182 INFO    ] Checking for system updates...
[2026-06-22 11:34:30,204.204 INFO    ] 200
[2026-06-22 11:34:30,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:34:30,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:34:30,264.264 INFO    ] No update needed
[2026-06-22 11:34:30,267.267 INFO    ] Checking for camera pi updates...
[2026-06-22 11:34:30,304.304 INFO    ] 200
[2026-06-22 11:34:30,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:34:30,348.348 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:34:30,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:34:30,440.440 INFO    ] No camera update needed
[2026-06-22 11:34:30,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:34:30,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:34:30,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:34:30,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:34:32,498.498 INFO    ] ================================================
[2026-06-22 11:34:32,516.516 INFO    ] Launching Daemon at Mon Jun 22 11:34:32 IST 2026
[2026-06-22 11:34:32,530.530 INFO    ] ================================================
[2026-06-22 11:34:33,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:34:33
[2026-06-22 11:34:33,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:34:33,961.961 INFO    ] Initializing speech engine...
[2026-06-22 11:34:33,968.968 INFO    ] 2026-06-22 11:34:33
[2026-06-22 11:34:34,227.227 INFO    ] 2026-06-22 11:34:34
[2026-06-22 11:34:34,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:34:34,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:34:34,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:34:34,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:34:34,780.780 INFO    ] time= 22/06/2026 11:34:34
[2026-06-22 11:34:34,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:34:34,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:34:34,923.923 INFO    ] No existing commands found in stream
[2026-06-22 11:34:39,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:34:39,949.949 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-22 11:34:43,860.860 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:34:43,863.863 INFO    ] Checking for system updates...
[2026-06-22 11:34:43,899.899 INFO    ] 200
[2026-06-22 11:34:43,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:34:43,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:34:43,959.959 INFO    ] No update needed
[2026-06-22 11:34:43,962.962 INFO    ] Checking for camera pi updates...
[2026-06-22 11:34:43,997.997 INFO    ] 200
[2026-06-22 11:34:44,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:34:44,041.041 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:34:44,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:34:44,122.122 INFO    ] No camera update needed
[2026-06-22 11:34:44,124.124 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:34:44,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:34:44,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:34:44,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:34:46,180.180 INFO    ] ================================================
[2026-06-22 11:34:46,196.196 INFO    ] Launching Daemon at Mon Jun 22 11:34:46 IST 2026
[2026-06-22 11:34:46,207.207 INFO    ] ================================================
[2026-06-22 11:34:46,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:34:46
[2026-06-22 11:34:47,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:34:47,692.692 INFO    ] Initializing speech engine...
[2026-06-22 11:34:47,701.701 INFO    ] 2026-06-22 11:34:47
[2026-06-22 11:34:47,972.972 INFO    ] 2026-06-22 11:34:47
[2026-06-22 11:34:48,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:34:48,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:34:48,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:34:48,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:34:48,470.470 INFO    ] time= 22/06/2026 11:34:48
[2026-06-22 11:34:48,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:34:48,542.542 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:34:48,686.686 INFO    ] No existing commands found in stream
[2026-06-22 11:34:53,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:34:53,707.707 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-22 11:34:55,928.928 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:34:55,930.930 INFO    ] Checking for system updates...
[2026-06-22 11:34:55,966.966 INFO    ] 200
[2026-06-22 11:34:55,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:34:56,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:34:56,031.031 INFO    ] No update needed
[2026-06-22 11:34:56,033.033 INFO    ] Checking for camera pi updates...
[2026-06-22 11:34:56,071.071 INFO    ] 200
[2026-06-22 11:34:56,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:34:56,126.126 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:34:56,214.214 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:34:56,217.217 INFO    ] No camera update needed
[2026-06-22 11:34:56,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:34:56,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:34:56,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:34:56,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:34:58,275.275 INFO    ] ================================================
[2026-06-22 11:34:58,291.291 INFO    ] Launching Daemon at Mon Jun 22 11:34:58 IST 2026
[2026-06-22 11:34:58,301.301 INFO    ] ================================================
[2026-06-22 11:34:58,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:34:58
[2026-06-22 11:34:59,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:34:59,676.676 INFO    ] Initializing speech engine...
[2026-06-22 11:34:59,683.683 INFO    ] 2026-06-22 11:34:59
[2026-06-22 11:34:59,950.950 INFO    ] 2026-06-22 11:34:59
[2026-06-22 11:34:59,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:35:00,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:35:00,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:35:00,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:35:00,353.353 INFO    ] time= 22/06/2026 11:35:00
[2026-06-22 11:35:00,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:35:00,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:35:00,526.526 INFO    ] No existing commands found in stream
[2026-06-22 11:35:05,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:35:05,554.554 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-22 11:35:07,633.633 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:35:07,634.634 INFO    ] Checking for system updates...
[2026-06-22 11:35:07,669.669 INFO    ] 200
[2026-06-22 11:35:07,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:35:07,726.726 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:35:07,729.729 INFO    ] No update needed
[2026-06-22 11:35:07,732.732 INFO    ] Checking for camera pi updates...
[2026-06-22 11:35:07,767.767 INFO    ] 200
[2026-06-22 11:35:07,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:35:07,813.813 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:35:07,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:35:07,920.920 INFO    ] No camera update needed
[2026-06-22 11:35:07,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:35:07,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:35:07,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:35:07,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:35:09,976.976 INFO    ] ================================================
[2026-06-22 11:35:09,992.992 INFO    ] Launching Daemon at Mon Jun 22 11:35:09 IST 2026
[2026-06-22 11:35:10,003.003 INFO    ] ================================================
[2026-06-22 11:35:10,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:35:10
[2026-06-22 11:35:11,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:35:11,381.381 INFO    ] Initializing speech engine...
[2026-06-22 11:35:11,394.394 INFO    ] 2026-06-22 11:35:11
[2026-06-22 11:35:11,662.662 INFO    ] 2026-06-22 11:35:11
[2026-06-22 11:35:11,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:35:11,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:35:11,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:35:12,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:35:12,073.073 INFO    ] time= 22/06/2026 11:35:12
[2026-06-22 11:35:12,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:35:12,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:35:12,218.218 INFO    ] No existing commands found in stream
[2026-06-22 11:35:17,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:35:17,240.240 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-22 11:35:19,338.338 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:35:19,341.341 INFO    ] Checking for system updates...
[2026-06-22 11:35:19,377.377 INFO    ] 200
[2026-06-22 11:35:19,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:35:19,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:35:19,434.434 INFO    ] No update needed
[2026-06-22 11:35:19,437.437 INFO    ] Checking for camera pi updates...
[2026-06-22 11:35:19,472.472 INFO    ] 200
[2026-06-22 11:35:19,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:35:19,518.518 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:35:19,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:35:19,603.603 INFO    ] No camera update needed
[2026-06-22 11:35:19,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:35:19,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:35:19,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:35:19,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:35:21,660.660 INFO    ] ================================================
[2026-06-22 11:35:21,676.676 INFO    ] Launching Daemon at Mon Jun 22 11:35:21 IST 2026
[2026-06-22 11:35:21,687.687 INFO    ] ================================================
[2026-06-22 11:35:22,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:35:22
[2026-06-22 11:35:22,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:35:23,054.054 INFO    ] Initializing speech engine...
[2026-06-22 11:35:23,061.061 INFO    ] 2026-06-22 11:35:23
[2026-06-22 11:35:23,355.355 INFO    ] 2026-06-22 11:35:23
[2026-06-22 11:35:23,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:35:23,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:35:23,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:35:23,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:35:23,774.774 INFO    ] time= 22/06/2026 11:35:23
[2026-06-22 11:35:23,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:35:23,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:35:23,956.956 INFO    ] No existing commands found in stream
[2026-06-22 11:35:28,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:35:28,984.984 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-22 11:35:31,182.182 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:35:31,185.185 INFO    ] Checking for system updates...
[2026-06-22 11:35:31,221.221 INFO    ] 200
[2026-06-22 11:35:31,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:35:31,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:35:31,279.279 INFO    ] No update needed
[2026-06-22 11:35:31,281.281 INFO    ] Checking for camera pi updates...
[2026-06-22 11:35:31,318.318 INFO    ] 200
[2026-06-22 11:35:31,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:35:31,362.362 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:35:31,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:35:31,520.520 INFO    ] No camera update needed
[2026-06-22 11:35:31,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:35:31,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:35:31,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:35:31,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:35:33,584.584 INFO    ] ================================================
[2026-06-22 11:35:33,600.600 INFO    ] Launching Daemon at Mon Jun 22 11:35:33 IST 2026
[2026-06-22 11:35:33,611.611 INFO    ] ================================================
[2026-06-22 11:35:34,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:35:34
[2026-06-22 11:35:34,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:35:35,020.020 INFO    ] Initializing speech engine...
[2026-06-22 11:35:35,033.033 INFO    ] 2026-06-22 11:35:35
[2026-06-22 11:35:35,302.302 INFO    ] 2026-06-22 11:35:35
[2026-06-22 11:35:35,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:35:35,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:35:35,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:35:35,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:35:35,783.783 INFO    ] time= 22/06/2026 11:35:35
[2026-06-22 11:35:35,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:35:35,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:35:35,932.932 INFO    ] No existing commands found in stream
[2026-06-22 11:35:40,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:35:40,949.949 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-22 11:35:43,819.819 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:35:43,822.822 INFO    ] Checking for system updates...
[2026-06-22 11:35:43,861.861 INFO    ] 200
[2026-06-22 11:35:43,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:35:43,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:35:43,919.919 INFO    ] No update needed
[2026-06-22 11:35:43,921.921 INFO    ] Checking for camera pi updates...
[2026-06-22 11:35:43,956.956 INFO    ] 200
[2026-06-22 11:35:43,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:35:44,000.000 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:35:44,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:35:44,059.059 INFO    ] No camera update needed
[2026-06-22 11:35:44,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:35:44,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:35:44,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:35:44,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:35:46,117.117 INFO    ] ================================================
[2026-06-22 11:35:46,132.132 INFO    ] Launching Daemon at Mon Jun 22 11:35:46 IST 2026
[2026-06-22 11:35:46,144.144 INFO    ] ================================================
[2026-06-22 11:35:46,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:35:46
[2026-06-22 11:35:47,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:35:47,587.587 INFO    ] Initializing speech engine...
[2026-06-22 11:35:47,594.594 INFO    ] 2026-06-22 11:35:47
[2026-06-22 11:35:47,891.891 INFO    ] 2026-06-22 11:35:47
[2026-06-22 11:35:47,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:35:49,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:35:49,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:35:49,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:35:49,373.373 INFO    ] time= 22/06/2026 11:35:49
[2026-06-22 11:35:49,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:35:49,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:35:49,463.463 INFO    ] No existing commands found in stream
[2026-06-22 11:35:54,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:35:54,478.478 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-22 11:35:57,914.914 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:35:57,918.918 INFO    ] Checking for system updates...
[2026-06-22 11:35:57,959.959 INFO    ] 200
[2026-06-22 11:35:57,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:35:58,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:35:58,022.022 INFO    ] No update needed
[2026-06-22 11:35:58,025.025 INFO    ] Checking for camera pi updates...
[2026-06-22 11:35:58,061.061 INFO    ] 200
[2026-06-22 11:35:58,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:35:58,108.108 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:35:58,190.190 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:35:58,192.192 INFO    ] No camera update needed
[2026-06-22 11:35:58,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:35:58,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:35:58,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:35:58,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:36:00,252.252 INFO    ] ================================================
[2026-06-22 11:36:00,268.268 INFO    ] Launching Daemon at Mon Jun 22 11:36:00 IST 2026
[2026-06-22 11:36:00,280.280 INFO    ] ================================================
[2026-06-22 11:36:00,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:36:00
[2026-06-22 11:36:01,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:36:02,202.202 INFO    ] Initializing speech engine...
[2026-06-22 11:36:02,221.221 INFO    ] 2026-06-22 11:36:02
[2026-06-22 11:36:02,681.681 INFO    ] 2026-06-22 11:36:02
[2026-06-22 11:36:02,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:36:02,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:36:02,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:36:03,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:36:03,087.087 INFO    ] time= 22/06/2026 11:36:03
[2026-06-22 11:36:03,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:36:03,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:36:03,204.204 INFO    ] No existing commands found in stream
[2026-06-22 11:36:08,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:36:08,222.222 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-22 11:36:10,066.066 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:36:10,069.069 INFO    ] Checking for system updates...
[2026-06-22 11:36:10,106.106 INFO    ] 200
[2026-06-22 11:36:10,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:36:10,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:36:10,165.165 INFO    ] No update needed
[2026-06-22 11:36:10,167.167 INFO    ] Checking for camera pi updates...
[2026-06-22 11:36:10,206.206 INFO    ] 200
[2026-06-22 11:36:10,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:36:10,254.254 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:36:10,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:36:10,337.337 INFO    ] No camera update needed
[2026-06-22 11:36:10,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:36:10,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:36:10,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:36:10,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:36:12,392.392 INFO    ] ================================================
[2026-06-22 11:36:12,408.408 INFO    ] Launching Daemon at Mon Jun 22 11:36:12 IST 2026
[2026-06-22 11:36:12,418.418 INFO    ] ================================================
[2026-06-22 11:36:12,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:36:12
[2026-06-22 11:36:13,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:36:13,868.868 INFO    ] Initializing speech engine...
[2026-06-22 11:36:13,878.878 INFO    ] 2026-06-22 11:36:13
[2026-06-22 11:36:14,140.140 INFO    ] 2026-06-22 11:36:14
[2026-06-22 11:36:14,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:36:14,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:36:14,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:36:14,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:36:14,598.598 INFO    ] time= 22/06/2026 11:36:14
[2026-06-22 11:36:14,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:36:14,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:36:14,837.837 INFO    ] No existing commands found in stream
[2026-06-22 11:36:19,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:36:19,854.854 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-22 11:36:24,226.226 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:36:24,229.229 INFO    ] Checking for system updates...
[2026-06-22 11:36:24,265.265 INFO    ] 200
[2026-06-22 11:36:24,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:36:24,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:36:24,327.327 INFO    ] No update needed
[2026-06-22 11:36:24,329.329 INFO    ] Checking for camera pi updates...
[2026-06-22 11:36:24,362.362 INFO    ] 200
[2026-06-22 11:36:24,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:36:24,405.405 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:36:24,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:36:24,507.507 INFO    ] No camera update needed
[2026-06-22 11:36:24,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:36:24,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:36:24,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:36:24,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:36:26,556.556 INFO    ] ================================================
[2026-06-22 11:36:26,571.571 INFO    ] Launching Daemon at Mon Jun 22 11:36:26 IST 2026
[2026-06-22 11:36:26,581.581 INFO    ] ================================================
[2026-06-22 11:36:27,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:36:27
[2026-06-22 11:36:27,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:36:28,005.005 INFO    ] Initializing speech engine...
[2026-06-22 11:36:28,014.014 INFO    ] 2026-06-22 11:36:28
[2026-06-22 11:36:28,262.262 INFO    ] 2026-06-22 11:36:28
[2026-06-22 11:36:28,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:36:28,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:36:28,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:36:28,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:36:28,750.750 INFO    ] time= 22/06/2026 11:36:28
[2026-06-22 11:36:28,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:36:28,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:36:28,975.975 INFO    ] No existing commands found in stream
[2026-06-22 11:36:33,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:36:33,992.992 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-22 11:36:37,157.157 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:36:37,159.159 INFO    ] Checking for system updates...
[2026-06-22 11:36:37,196.196 INFO    ] 200
[2026-06-22 11:36:37,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:36:37,253.253 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:36:37,256.256 INFO    ] No update needed
[2026-06-22 11:36:37,259.259 INFO    ] Checking for camera pi updates...
[2026-06-22 11:36:37,292.292 INFO    ] 200
[2026-06-22 11:36:37,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:36:37,336.336 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:36:37,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:36:37,420.420 INFO    ] No camera update needed
[2026-06-22 11:36:37,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:36:37,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:36:37,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:36:37,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:36:39,479.479 INFO    ] ================================================
[2026-06-22 11:36:39,494.494 INFO    ] Launching Daemon at Mon Jun 22 11:36:39 IST 2026
[2026-06-22 11:36:39,505.505 INFO    ] ================================================
[2026-06-22 11:36:40,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:36:40
[2026-06-22 11:36:40,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:36:41,013.013 INFO    ] Initializing speech engine...
[2026-06-22 11:36:41,028.028 INFO    ] 2026-06-22 11:36:41
[2026-06-22 11:36:41,318.318 INFO    ] 2026-06-22 11:36:41
[2026-06-22 11:36:41,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:36:41,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:36:41,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:36:41,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:36:41,707.707 INFO    ] time= 22/06/2026 11:36:41
[2026-06-22 11:36:41,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:36:41,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:36:41,833.833 INFO    ] No existing commands found in stream
[2026-06-22 11:36:46,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:36:46,848.848 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-22 11:36:50,993.993 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:36:50,995.995 INFO    ] Checking for system updates...
[2026-06-22 11:36:51,017.017 INFO    ] 200
[2026-06-22 11:36:51,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:36:51,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:36:51,054.054 INFO    ] No update needed
[2026-06-22 11:36:51,057.057 INFO    ] Checking for camera pi updates...
[2026-06-22 11:36:51,091.091 INFO    ] 200
[2026-06-22 11:36:51,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:36:51,141.141 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:36:51,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:36:51,224.224 INFO    ] No camera update needed
[2026-06-22 11:36:51,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:36:51,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:36:51,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:36:51,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:36:53,279.279 INFO    ] ================================================
[2026-06-22 11:36:53,295.295 INFO    ] Launching Daemon at Mon Jun 22 11:36:53 IST 2026
[2026-06-22 11:36:53,306.306 INFO    ] ================================================
[2026-06-22 11:36:53,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:36:53
[2026-06-22 11:36:54,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:36:54,864.864 INFO    ] Initializing speech engine...
[2026-06-22 11:36:54,878.878 INFO    ] 2026-06-22 11:36:54
[2026-06-22 11:36:55,164.164 INFO    ] 2026-06-22 11:36:55
[2026-06-22 11:36:55,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:36:55,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:36:55,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:36:55,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:36:55,674.674 INFO    ] time= 22/06/2026 11:36:55
[2026-06-22 11:36:55,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:36:55,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:36:55,893.893 INFO    ] No existing commands found in stream
[2026-06-22 11:37:00,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:37:00,922.922 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-22 11:37:01,515.515 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:37:01,518.518 INFO    ] Checking for system updates...
[2026-06-22 11:37:01,555.555 INFO    ] 200
[2026-06-22 11:37:01,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:37:01,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:37:01,613.613 INFO    ] No update needed
[2026-06-22 11:37:01,616.616 INFO    ] Checking for camera pi updates...
[2026-06-22 11:37:01,649.649 INFO    ] 200
[2026-06-22 11:37:01,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:37:01,692.692 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:37:01,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:37:01,750.750 INFO    ] No camera update needed
[2026-06-22 11:37:01,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:37:01,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:37:01,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:37:01,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:37:03,807.807 INFO    ] ================================================
[2026-06-22 11:37:03,822.822 INFO    ] Launching Daemon at Mon Jun 22 11:37:03 IST 2026
[2026-06-22 11:37:03,833.833 INFO    ] ================================================
[2026-06-22 11:37:04,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:37:04
[2026-06-22 11:37:05,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:37:05,264.264 INFO    ] Initializing speech engine...
[2026-06-22 11:37:05,273.273 INFO    ] 2026-06-22 11:37:05
[2026-06-22 11:37:05,569.569 INFO    ] 2026-06-22 11:37:05
[2026-06-22 11:37:05,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:37:05,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:37:05,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:37:05,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:37:05,992.992 INFO    ] time= 22/06/2026 11:37:05
[2026-06-22 11:37:05,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:37:06,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:37:06,149.149 INFO    ] No existing commands found in stream
[2026-06-22 11:37:11,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:37:11,182.182 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-22 11:37:13,312.312 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:37:13,315.315 INFO    ] Checking for system updates...
[2026-06-22 11:37:13,352.352 INFO    ] 200
[2026-06-22 11:37:13,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:37:13,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:37:13,409.409 INFO    ] No update needed
[2026-06-22 11:37:13,411.411 INFO    ] Checking for camera pi updates...
[2026-06-22 11:37:13,445.445 INFO    ] 200
[2026-06-22 11:37:13,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:37:13,489.489 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:37:13,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:37:13,580.580 INFO    ] No camera update needed
[2026-06-22 11:37:13,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:37:13,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:37:13,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:37:13,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:37:15,636.636 INFO    ] ================================================
[2026-06-22 11:37:15,652.652 INFO    ] Launching Daemon at Mon Jun 22 11:37:15 IST 2026
[2026-06-22 11:37:15,663.663 INFO    ] ================================================
[2026-06-22 11:37:16,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:37:16
[2026-06-22 11:37:16,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:37:17,035.035 INFO    ] Initializing speech engine...
[2026-06-22 11:37:17,044.044 INFO    ] 2026-06-22 11:37:17
[2026-06-22 11:37:17,302.302 INFO    ] 2026-06-22 11:37:17
[2026-06-22 11:37:17,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:37:17,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:37:17,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:37:17,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:37:17,778.778 INFO    ] time= 22/06/2026 11:37:17
[2026-06-22 11:37:17,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:37:17,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:37:18,005.005 INFO    ] No existing commands found in stream
[2026-06-22 11:37:23,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:37:23,036.036 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-22 11:37:24,583.583 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:37:24,586.586 INFO    ] Checking for system updates...
[2026-06-22 11:37:24,626.626 INFO    ] 200
[2026-06-22 11:37:24,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:37:24,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:37:24,683.683 INFO    ] No update needed
[2026-06-22 11:37:24,686.686 INFO    ] Checking for camera pi updates...
[2026-06-22 11:37:24,723.723 INFO    ] 200
[2026-06-22 11:37:24,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:37:24,772.772 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:37:24,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:37:24,877.877 INFO    ] No camera update needed
[2026-06-22 11:37:24,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:37:24,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:37:24,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:37:24,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:37:26,934.934 INFO    ] ================================================
[2026-06-22 11:37:26,950.950 INFO    ] Launching Daemon at Mon Jun 22 11:37:26 IST 2026
[2026-06-22 11:37:26,961.961 INFO    ] ================================================
[2026-06-22 11:37:27,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:37:27
[2026-06-22 11:37:28,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:37:28,344.344 INFO    ] Initializing speech engine...
[2026-06-22 11:37:28,351.351 INFO    ] 2026-06-22 11:37:28
[2026-06-22 11:37:28,614.614 INFO    ] 2026-06-22 11:37:28
[2026-06-22 11:37:28,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:37:28,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:37:28,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:37:29,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:37:29,084.084 INFO    ] time= 22/06/2026 11:37:29
[2026-06-22 11:37:29,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:37:29,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:37:29,328.328 INFO    ] No existing commands found in stream
[2026-06-22 11:37:34,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:37:34,361.361 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-22 11:37:36,289.289 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:37:36,291.291 INFO    ] Checking for system updates...
[2026-06-22 11:37:36,327.327 INFO    ] 200
[2026-06-22 11:37:36,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:37:36,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:37:36,370.370 INFO    ] No update needed
[2026-06-22 11:37:36,371.371 INFO    ] Checking for camera pi updates...
[2026-06-22 11:37:36,391.391 INFO    ] 200
[2026-06-22 11:37:36,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:37:36,416.416 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:37:36,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:37:36,497.497 INFO    ] No camera update needed
[2026-06-22 11:37:36,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:37:36,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:37:36,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:37:36,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:37:38,553.553 INFO    ] ================================================
[2026-06-22 11:37:38,569.569 INFO    ] Launching Daemon at Mon Jun 22 11:37:38 IST 2026
[2026-06-22 11:37:38,580.580 INFO    ] ================================================
[2026-06-22 11:37:39,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:37:39
[2026-06-22 11:37:39,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:37:39,927.927 INFO    ] Initializing speech engine...
[2026-06-22 11:37:39,937.937 INFO    ] 2026-06-22 11:37:39
[2026-06-22 11:37:40,183.183 INFO    ] 2026-06-22 11:37:40
[2026-06-22 11:37:40,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:37:40,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:37:40,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:37:40,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:37:40,751.751 INFO    ] time= 22/06/2026 11:37:40
[2026-06-22 11:37:40,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:37:40,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:37:40,915.915 INFO    ] No existing commands found in stream
[2026-06-22 11:37:45,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:37:45,952.952 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-22 11:37:48,873.873 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:37:48,875.875 INFO    ] Checking for system updates...
[2026-06-22 11:37:48,897.897 INFO    ] 200
[2026-06-22 11:37:48,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:37:48,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:37:48,930.930 INFO    ] No update needed
[2026-06-22 11:37:48,932.932 INFO    ] Checking for camera pi updates...
[2026-06-22 11:37:48,951.951 INFO    ] 200
[2026-06-22 11:37:48,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:37:48,984.984 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:37:49,052.052 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:37:49,055.055 INFO    ] No camera update needed
[2026-06-22 11:37:49,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:37:49,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:37:49,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:37:49,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:37:51,111.111 INFO    ] ================================================
[2026-06-22 11:37:51,127.127 INFO    ] Launching Daemon at Mon Jun 22 11:37:51 IST 2026
[2026-06-22 11:37:51,137.137 INFO    ] ================================================
[2026-06-22 11:37:51,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:37:51
[2026-06-22 11:37:52,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:37:52,620.620 INFO    ] Initializing speech engine...
[2026-06-22 11:37:52,626.626 INFO    ] 2026-06-22 11:37:52
[2026-06-22 11:37:52,891.891 INFO    ] 2026-06-22 11:37:52
[2026-06-22 11:37:52,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:37:53,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:37:53,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:37:53,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:37:53,373.373 INFO    ] time= 22/06/2026 11:37:53
[2026-06-22 11:37:53,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:37:53,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:37:53,601.601 INFO    ] No existing commands found in stream
[2026-06-22 11:37:58,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:37:58,631.631 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-22 11:38:02,176.176 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:38:02,179.179 INFO    ] Checking for system updates...
[2026-06-22 11:38:02,265.265 INFO    ] 200
[2026-06-22 11:38:02,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:38:02,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:38:02,366.366 INFO    ] No update needed
[2026-06-22 11:38:02,371.371 INFO    ] Checking for camera pi updates...
[2026-06-22 11:38:02,428.428 INFO    ] 200
[2026-06-22 11:38:02,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:38:02,479.479 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:38:02,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:38:02,547.547 INFO    ] No camera update needed
[2026-06-22 11:38:02,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:38:02,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:38:02,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:38:02,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:38:04,618.618 INFO    ] ================================================
[2026-06-22 11:38:04,634.634 INFO    ] Launching Daemon at Mon Jun 22 11:38:04 IST 2026
[2026-06-22 11:38:04,645.645 INFO    ] ================================================
[2026-06-22 11:38:05,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:38:05
[2026-06-22 11:38:05,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:38:06,265.265 INFO    ] Initializing speech engine...
[2026-06-22 11:38:06,285.285 INFO    ] 2026-06-22 11:38:06
[2026-06-22 11:38:06,552.552 INFO    ] 2026-06-22 11:38:06
[2026-06-22 11:38:06,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:38:06,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:38:06,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:38:06,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:38:07,012.012 INFO    ] time= 22/06/2026 11:38:06
[2026-06-22 11:38:07,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:38:07,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:38:07,201.201 INFO    ] No existing commands found in stream
[2026-06-22 11:38:12,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:38:12,225.225 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-22 11:38:15,172.172 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:38:15,174.174 INFO    ] Checking for system updates...
[2026-06-22 11:38:15,196.196 INFO    ] 200
[2026-06-22 11:38:15,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:38:15,252.252 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:38:15,255.255 INFO    ] No update needed
[2026-06-22 11:38:15,258.258 INFO    ] Checking for camera pi updates...
[2026-06-22 11:38:15,292.292 INFO    ] 200
[2026-06-22 11:38:15,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:38:15,337.337 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:38:15,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:38:15,413.413 INFO    ] No camera update needed
[2026-06-22 11:38:15,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:38:15,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:38:15,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:38:15,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:38:17,473.473 INFO    ] ================================================
[2026-06-22 11:38:17,488.488 INFO    ] Launching Daemon at Mon Jun 22 11:38:17 IST 2026
[2026-06-22 11:38:17,499.499 INFO    ] ================================================
[2026-06-22 11:38:18,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:38:18
[2026-06-22 11:38:18,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:38:18,973.973 INFO    ] Initializing speech engine...
[2026-06-22 11:38:18,986.986 INFO    ] 2026-06-22 11:38:18
[2026-06-22 11:38:19,254.254 INFO    ] 2026-06-22 11:38:19
[2026-06-22 11:38:19,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:38:19,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:38:19,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:38:19,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:38:19,785.785 INFO    ] time= 22/06/2026 11:38:19
[2026-06-22 11:38:19,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:38:19,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:38:19,992.992 INFO    ] No existing commands found in stream
[2026-06-22 11:38:25,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:38:25,026.026 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-22 11:38:28,851.851 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:38:28,854.854 INFO    ] Checking for system updates...
[2026-06-22 11:38:28,890.890 INFO    ] 200
[2026-06-22 11:38:28,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:38:28,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:38:28,948.948 INFO    ] No update needed
[2026-06-22 11:38:28,950.950 INFO    ] Checking for camera pi updates...
[2026-06-22 11:38:28,988.988 INFO    ] 200
[2026-06-22 11:38:28,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:38:29,031.031 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:38:29,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:38:29,120.120 INFO    ] No camera update needed
[2026-06-22 11:38:29,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:38:29,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:38:29,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:38:29,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:38:31,176.176 INFO    ] ================================================
[2026-06-22 11:38:31,192.192 INFO    ] Launching Daemon at Mon Jun 22 11:38:31 IST 2026
[2026-06-22 11:38:31,202.202 INFO    ] ================================================
[2026-06-22 11:38:31,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:38:31
[2026-06-22 11:38:32,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:38:32,783.783 INFO    ] Initializing speech engine...
[2026-06-22 11:38:32,790.790 INFO    ] 2026-06-22 11:38:32
[2026-06-22 11:38:33,058.058 INFO    ] 2026-06-22 11:38:33
[2026-06-22 11:38:33,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:38:33,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:38:33,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:38:33,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:38:33,597.597 INFO    ] time= 22/06/2026 11:38:33
[2026-06-22 11:38:33,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:38:33,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:38:33,825.825 INFO    ] No existing commands found in stream
[2026-06-22 11:38:38,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:38:38,853.853 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-22 11:38:42,904.904 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:38:42,906.906 INFO    ] Checking for system updates...
[2026-06-22 11:38:42,947.947 INFO    ] 200
[2026-06-22 11:38:42,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:38:43,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:38:43,004.004 INFO    ] No update needed
[2026-06-22 11:38:43,007.007 INFO    ] Checking for camera pi updates...
[2026-06-22 11:38:43,057.057 INFO    ] 200
[2026-06-22 11:38:43,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:38:43,104.104 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:38:43,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:38:43,205.205 INFO    ] No camera update needed
[2026-06-22 11:38:43,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:38:43,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:38:43,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:38:43,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:38:45,272.272 INFO    ] ================================================
[2026-06-22 11:38:45,287.287 INFO    ] Launching Daemon at Mon Jun 22 11:38:45 IST 2026
[2026-06-22 11:38:45,298.298 INFO    ] ================================================
[2026-06-22 11:38:45,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:38:45
[2026-06-22 11:38:46,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:38:46,713.713 INFO    ] Initializing speech engine...
[2026-06-22 11:38:46,720.720 INFO    ] 2026-06-22 11:38:46
[2026-06-22 11:38:47,020.020 INFO    ] 2026-06-22 11:38:46
[2026-06-22 11:38:47,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:38:47,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:38:47,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:38:47,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:38:47,442.442 INFO    ] time= 22/06/2026 11:38:47
[2026-06-22 11:38:47,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:38:47,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:38:47,623.623 INFO    ] No existing commands found in stream
[2026-06-22 11:38:52,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:38:52,652.652 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-22 11:38:56,981.981 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:38:56,984.984 INFO    ] Checking for system updates...
[2026-06-22 11:38:57,019.019 INFO    ] 200
[2026-06-22 11:38:57,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:38:57,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:38:57,077.077 INFO    ] No update needed
[2026-06-22 11:38:57,079.079 INFO    ] Checking for camera pi updates...
[2026-06-22 11:38:57,112.112 INFO    ] 200
[2026-06-22 11:38:57,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:38:57,155.155 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:38:57,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:38:57,262.262 INFO    ] No camera update needed
[2026-06-22 11:38:57,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:38:57,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:38:57,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:38:57,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:38:59,318.318 INFO    ] ================================================
[2026-06-22 11:38:59,334.334 INFO    ] Launching Daemon at Mon Jun 22 11:38:59 IST 2026
[2026-06-22 11:38:59,345.345 INFO    ] ================================================
[2026-06-22 11:38:59,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:38:59
[2026-06-22 11:39:00,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:39:00,887.887 INFO    ] Initializing speech engine...
[2026-06-22 11:39:00,898.898 INFO    ] 2026-06-22 11:39:00
[2026-06-22 11:39:01,180.180 INFO    ] 2026-06-22 11:39:01
[2026-06-22 11:39:01,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:39:01,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:39:01,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:39:01,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:39:01,721.721 INFO    ] time= 22/06/2026 11:39:01
[2026-06-22 11:39:01,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:39:01,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:39:01,915.915 INFO    ] No existing commands found in stream
[2026-06-22 11:39:06,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:39:06,945.945 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-22 11:39:08,918.918 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:39:08,920.920 INFO    ] Checking for system updates...
[2026-06-22 11:39:08,941.941 INFO    ] 200
[2026-06-22 11:39:08,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:39:08,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:39:08,979.979 INFO    ] No update needed
[2026-06-22 11:39:08,981.981 INFO    ] Checking for camera pi updates...
[2026-06-22 11:39:09,016.016 INFO    ] 200
[2026-06-22 11:39:09,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:39:09,065.065 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:39:09,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:39:09,173.173 INFO    ] No camera update needed
[2026-06-22 11:39:09,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:39:09,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:39:09,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:39:09,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:39:11,232.232 INFO    ] ================================================
[2026-06-22 11:39:11,248.248 INFO    ] Launching Daemon at Mon Jun 22 11:39:11 IST 2026
[2026-06-22 11:39:11,258.258 INFO    ] ================================================
[2026-06-22 11:39:11,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:39:11
[2026-06-22 11:39:12,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:39:12,574.574 INFO    ] Initializing speech engine...
[2026-06-22 11:39:12,580.580 INFO    ] 2026-06-22 11:39:12
[2026-06-22 11:39:12,874.874 INFO    ] 2026-06-22 11:39:12
[2026-06-22 11:39:12,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:39:13,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:39:13,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:39:13,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:39:13,263.263 INFO    ] time= 22/06/2026 11:39:13
[2026-06-22 11:39:13,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:39:13,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:39:13,377.377 INFO    ] No existing commands found in stream
[2026-06-22 11:39:18,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:39:18,389.389 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-22 11:39:22,311.311 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:39:22,313.313 INFO    ] Checking for system updates...
[2026-06-22 11:39:22,374.374 INFO    ] 200
[2026-06-22 11:39:22,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 11:39:22,379.379 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-22 11:39:22,382.382 INFO    ] Checking for camera pi updates...
[2026-06-22 11:39:22,451.451 INFO    ] 200
[2026-06-22 11:39:22,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:39:22,498.498 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:39:22,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:39:22,606.606 INFO    ] No camera update needed
[2026-06-22 11:39:22,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:39:22,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:39:22,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:39:22,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:39:24,661.661 INFO    ] ================================================
[2026-06-22 11:39:24,676.676 INFO    ] Launching Daemon at Mon Jun 22 11:39:24 IST 2026
[2026-06-22 11:39:24,687.687 INFO    ] ================================================
[2026-06-22 11:39:25,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:39:25
[2026-06-22 11:39:25,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:39:26,261.261 INFO    ] Initializing speech engine...
[2026-06-22 11:39:26,272.272 INFO    ] 2026-06-22 11:39:26
[2026-06-22 11:39:26,582.582 INFO    ] 2026-06-22 11:39:26
[2026-06-22 11:39:26,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:39:26,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:39:26,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:39:27,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:39:27,093.093 INFO    ] time= 22/06/2026 11:39:27
[2026-06-22 11:39:27,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:39:27,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:39:27,249.249 INFO    ] No existing commands found in stream
[2026-06-22 11:39:32,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:39:32,282.282 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-22 11:39:33,865.865 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:39:33,868.868 INFO    ] Checking for system updates...
[2026-06-22 11:39:33,904.904 INFO    ] 200
[2026-06-22 11:39:33,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:39:33,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:39:33,963.963 INFO    ] No update needed
[2026-06-22 11:39:33,966.966 INFO    ] Checking for camera pi updates...
[2026-06-22 11:39:33,999.999 INFO    ] 200
[2026-06-22 11:39:34,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:39:34,042.042 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:39:34,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:39:34,222.222 INFO    ] No camera update needed
[2026-06-22 11:39:34,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:39:34,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:39:34,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:39:34,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:39:36,279.279 INFO    ] ================================================
[2026-06-22 11:39:36,294.294 INFO    ] Launching Daemon at Mon Jun 22 11:39:36 IST 2026
[2026-06-22 11:39:36,304.304 INFO    ] ================================================
[2026-06-22 11:39:36,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:39:36
[2026-06-22 11:39:37,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:39:37,743.743 INFO    ] Initializing speech engine...
[2026-06-22 11:39:37,752.752 INFO    ] 2026-06-22 11:39:37
[2026-06-22 11:39:38,005.005 INFO    ] 2026-06-22 11:39:37
[2026-06-22 11:39:38,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:39:38,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:39:38,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:39:38,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:39:38,555.555 INFO    ] time= 22/06/2026 11:39:38
[2026-06-22 11:39:38,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:39:38,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:39:38,705.705 INFO    ] No existing commands found in stream
[2026-06-22 11:39:43,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:39:43,724.724 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-22 11:39:45,999.999 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:39:46,001.001 INFO    ] Checking for system updates...
[2026-06-22 11:39:46,042.042 INFO    ] 200
[2026-06-22 11:39:46,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:39:46,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:39:46,101.101 INFO    ] No update needed
[2026-06-22 11:39:46,104.104 INFO    ] Checking for camera pi updates...
[2026-06-22 11:39:46,138.138 INFO    ] 200
[2026-06-22 11:39:46,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:39:46,181.181 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:39:46,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:39:46,268.268 INFO    ] No camera update needed
[2026-06-22 11:39:46,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:39:46,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:39:46,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:39:46,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:39:48,325.325 INFO    ] ================================================
[2026-06-22 11:39:48,342.342 INFO    ] Launching Daemon at Mon Jun 22 11:39:48 IST 2026
[2026-06-22 11:39:48,358.358 INFO    ] ================================================
[2026-06-22 11:39:48,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:39:48
[2026-06-22 11:39:49,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:39:49,786.786 INFO    ] Initializing speech engine...
[2026-06-22 11:39:49,793.793 INFO    ] 2026-06-22 11:39:49
[2026-06-22 11:39:50,092.092 INFO    ] 2026-06-22 11:39:50
[2026-06-22 11:39:50,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:39:50,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:39:50,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:39:50,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:39:50,490.490 INFO    ] time= 22/06/2026 11:39:50
[2026-06-22 11:39:50,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:39:50,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:39:50,619.619 INFO    ] No existing commands found in stream
[2026-06-22 11:39:55,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:39:55,634.634 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-22 11:39:59,828.828 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:39:59,830.830 INFO    ] Checking for system updates...
[2026-06-22 11:39:59,867.867 INFO    ] 200
[2026-06-22 11:39:59,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:39:59,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:39:59,927.927 INFO    ] No update needed
[2026-06-22 11:39:59,929.929 INFO    ] Checking for camera pi updates...
[2026-06-22 11:39:59,964.964 INFO    ] 200
[2026-06-22 11:39:59,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:40:00,007.007 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:40:00,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:40:00,096.096 INFO    ] No camera update needed
[2026-06-22 11:40:00,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:40:00,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:40:00,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:40:00,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:40:02,200.200 INFO    ] ================================================
[2026-06-22 11:40:02,292.292 INFO    ] Launching Daemon at Mon Jun 22 11:40:02 IST 2026
[2026-06-22 11:40:02,385.385 INFO    ] ================================================
[2026-06-22 11:40:03,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:40:03
[2026-06-22 11:40:04,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:40:04,487.487 INFO    ] Initializing speech engine...
[2026-06-22 11:40:04,496.496 INFO    ] 2026-06-22 11:40:04
[2026-06-22 11:40:04,781.781 INFO    ] 2026-06-22 11:40:04
[2026-06-22 11:40:04,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:40:05,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:40:05,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:40:05,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:40:05,318.318 INFO    ] time= 22/06/2026 11:40:05
[2026-06-22 11:40:05,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:40:05,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:40:05,464.464 INFO    ] No existing commands found in stream
[2026-06-22 11:40:10,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:40:10,492.492 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-22 11:40:12,385.385 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:40:12,387.387 INFO    ] Checking for system updates...
[2026-06-22 11:40:12,409.409 INFO    ] 200
[2026-06-22 11:40:12,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:40:12,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:40:12,459.459 INFO    ] No update needed
[2026-06-22 11:40:12,461.461 INFO    ] Checking for camera pi updates...
[2026-06-22 11:40:12,495.495 INFO    ] 200
[2026-06-22 11:40:12,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:40:12,538.538 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:40:12,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:40:12,643.643 INFO    ] No camera update needed
[2026-06-22 11:40:12,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:40:12,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:40:12,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:40:12,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:40:14,699.699 INFO    ] ================================================
[2026-06-22 11:40:14,714.714 INFO    ] Launching Daemon at Mon Jun 22 11:40:14 IST 2026
[2026-06-22 11:40:14,725.725 INFO    ] ================================================
[2026-06-22 11:40:15,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:40:15
[2026-06-22 11:40:15,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:40:16,093.093 INFO    ] Initializing speech engine...
[2026-06-22 11:40:16,102.102 INFO    ] 2026-06-22 11:40:16
[2026-06-22 11:40:16,392.392 INFO    ] 2026-06-22 11:40:16
[2026-06-22 11:40:16,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:40:16,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:40:16,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:40:16,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:40:16,809.809 INFO    ] time= 22/06/2026 11:40:16
[2026-06-22 11:40:16,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:40:16,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:40:16,895.895 INFO    ] No existing commands found in stream
[2026-06-22 11:40:21,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:40:21,923.923 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-22 11:40:24,735.735 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:40:24,738.738 INFO    ] Checking for system updates...
[2026-06-22 11:40:24,774.774 INFO    ] 200
[2026-06-22 11:40:24,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:40:24,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:40:24,832.832 INFO    ] No update needed
[2026-06-22 11:40:24,834.834 INFO    ] Checking for camera pi updates...
[2026-06-22 11:40:24,871.871 INFO    ] 200
[2026-06-22 11:40:24,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:40:24,913.913 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:40:24,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:40:24,998.998 INFO    ] No camera update needed
[2026-06-22 11:40:25,000.000 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:40:25,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:40:25,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:40:25,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:40:27,052.052 INFO    ] ================================================
[2026-06-22 11:40:27,067.067 INFO    ] Launching Daemon at Mon Jun 22 11:40:27 IST 2026
[2026-06-22 11:40:27,078.078 INFO    ] ================================================
[2026-06-22 11:40:27,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:40:27
[2026-06-22 11:40:28,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:40:28,503.503 INFO    ] Initializing speech engine...
[2026-06-22 11:40:28,522.522 INFO    ] 2026-06-22 11:40:28
[2026-06-22 11:40:28,790.790 INFO    ] 2026-06-22 11:40:28
[2026-06-22 11:40:28,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:40:29,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:40:29,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:40:29,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:40:29,202.202 INFO    ] time= 22/06/2026 11:40:29
[2026-06-22 11:40:29,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:40:29,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:40:29,293.293 INFO    ] No existing commands found in stream
[2026-06-22 11:40:34,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:40:34,320.320 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-22 11:40:38,340.340 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:40:38,341.341 INFO    ] Checking for system updates...
[2026-06-22 11:40:38,364.364 INFO    ] 200
[2026-06-22 11:40:38,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:40:38,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:40:38,421.421 INFO    ] No update needed
[2026-06-22 11:40:38,424.424 INFO    ] Checking for camera pi updates...
[2026-06-22 11:40:38,457.457 INFO    ] 200
[2026-06-22 11:40:38,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:40:38,500.500 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:40:38,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:40:38,594.594 INFO    ] No camera update needed
[2026-06-22 11:40:38,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:40:38,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:40:38,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:40:38,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:40:40,649.649 INFO    ] ================================================
[2026-06-22 11:40:40,664.664 INFO    ] Launching Daemon at Mon Jun 22 11:40:40 IST 2026
[2026-06-22 11:40:40,675.675 INFO    ] ================================================
[2026-06-22 11:40:41,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:40:41
[2026-06-22 11:40:41,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:40:42,176.176 INFO    ] Initializing speech engine...
[2026-06-22 11:40:42,185.185 INFO    ] 2026-06-22 11:40:42
[2026-06-22 11:40:42,470.470 INFO    ] 2026-06-22 11:40:42
[2026-06-22 11:40:42,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:40:42,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:40:42,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:40:43,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:40:43,008.008 INFO    ] time= 22/06/2026 11:40:43
[2026-06-22 11:40:43,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:40:43,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:40:43,165.165 INFO    ] No existing commands found in stream
[2026-06-22 11:40:48,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:40:48,192.192 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-22 11:40:49,502.502 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:40:49,505.505 INFO    ] Checking for system updates...
[2026-06-22 11:40:49,542.542 INFO    ] 200
[2026-06-22 11:40:49,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:40:49,604.604 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:40:49,607.607 INFO    ] No update needed
[2026-06-22 11:40:49,610.610 INFO    ] Checking for camera pi updates...
[2026-06-22 11:40:49,646.646 INFO    ] 200
[2026-06-22 11:40:49,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:40:49,695.695 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:40:49,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:40:49,791.791 INFO    ] No camera update needed
[2026-06-22 11:40:49,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:40:49,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:40:49,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:40:49,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:40:51,850.850 INFO    ] ================================================
[2026-06-22 11:40:51,866.866 INFO    ] Launching Daemon at Mon Jun 22 11:40:51 IST 2026
[2026-06-22 11:40:51,877.877 INFO    ] ================================================
[2026-06-22 11:40:52,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:40:52
[2026-06-22 11:40:53,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:40:53,373.373 INFO    ] Initializing speech engine...
[2026-06-22 11:40:53,384.384 INFO    ] 2026-06-22 11:40:53
[2026-06-22 11:40:53,672.672 INFO    ] 2026-06-22 11:40:53
[2026-06-22 11:40:53,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:40:53,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:40:53,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:40:54,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:40:54,212.212 INFO    ] time= 22/06/2026 11:40:54
[2026-06-22 11:40:54,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:40:54,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:40:54,388.388 INFO    ] No existing commands found in stream
[2026-06-22 11:40:59,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:40:59,427.427 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-22 11:41:02,030.030 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:41:02,034.034 INFO    ] Checking for system updates...
[2026-06-22 11:41:02,078.078 INFO    ] 200
[2026-06-22 11:41:02,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:41:02,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:41:02,147.147 INFO    ] No update needed
[2026-06-22 11:41:02,151.151 INFO    ] Checking for camera pi updates...
[2026-06-22 11:41:02,196.196 INFO    ] 200
[2026-06-22 11:41:02,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:41:02,262.262 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:41:02,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:41:02,332.332 INFO    ] No camera update needed
[2026-06-22 11:41:02,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:41:02,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:41:02,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:41:02,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:41:04,397.397 INFO    ] ================================================
[2026-06-22 11:41:04,411.411 INFO    ] Launching Daemon at Mon Jun 22 11:41:04 IST 2026
[2026-06-22 11:41:04,422.422 INFO    ] ================================================
[2026-06-22 11:41:04,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:41:04
[2026-06-22 11:41:05,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:41:05,830.830 INFO    ] Initializing speech engine...
[2026-06-22 11:41:05,836.836 INFO    ] 2026-06-22 11:41:05
[2026-06-22 11:41:06,130.130 INFO    ] 2026-06-22 11:41:06
[2026-06-22 11:41:06,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:41:06,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:41:06,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:41:06,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:41:06,598.598 INFO    ] time= 22/06/2026 11:41:06
[2026-06-22 11:41:06,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:41:06,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:41:06,822.822 INFO    ] No existing commands found in stream
[2026-06-22 11:41:11,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:41:11,841.841 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-22 11:41:12,516.516 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:41:12,519.519 INFO    ] Checking for system updates...
[2026-06-22 11:41:12,555.555 INFO    ] 200
[2026-06-22 11:41:12,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:41:12,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:41:12,615.615 INFO    ] No update needed
[2026-06-22 11:41:12,617.617 INFO    ] Checking for camera pi updates...
[2026-06-22 11:41:12,652.652 INFO    ] 200
[2026-06-22 11:41:12,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:41:12,695.695 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:41:12,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:41:12,781.781 INFO    ] No camera update needed
[2026-06-22 11:41:12,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:41:12,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:41:12,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:41:12,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:41:14,838.838 INFO    ] ================================================
[2026-06-22 11:41:14,855.855 INFO    ] Launching Daemon at Mon Jun 22 11:41:14 IST 2026
[2026-06-22 11:41:14,866.866 INFO    ] ================================================
[2026-06-22 11:41:15,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:41:15
[2026-06-22 11:41:16,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:41:16,359.359 INFO    ] Initializing speech engine...
[2026-06-22 11:41:16,367.367 INFO    ] 2026-06-22 11:41:16
[2026-06-22 11:41:16,623.623 INFO    ] 2026-06-22 11:41:16
[2026-06-22 11:41:16,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:41:16,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:41:16,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:41:17,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:41:17,082.082 INFO    ] time= 22/06/2026 11:41:17
[2026-06-22 11:41:17,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:41:17,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:41:17,339.339 INFO    ] No existing commands found in stream
[2026-06-22 11:41:22,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:41:22,358.358 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-22 11:41:23,071.071 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:41:23,074.074 INFO    ] Checking for system updates...
[2026-06-22 11:41:23,110.110 INFO    ] 200
[2026-06-22 11:41:23,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:41:23,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:41:23,169.169 INFO    ] No update needed
[2026-06-22 11:41:23,171.171 INFO    ] Checking for camera pi updates...
[2026-06-22 11:41:23,206.206 INFO    ] 200
[2026-06-22 11:41:23,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:41:23,248.248 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:41:23,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:41:23,335.335 INFO    ] No camera update needed
[2026-06-22 11:41:23,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:41:23,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:41:23,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:41:23,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:41:25,391.391 INFO    ] ================================================
[2026-06-22 11:41:25,406.406 INFO    ] Launching Daemon at Mon Jun 22 11:41:25 IST 2026
[2026-06-22 11:41:25,417.417 INFO    ] ================================================
[2026-06-22 11:41:25,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:41:25
[2026-06-22 11:41:26,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:41:26,872.872 INFO    ] Initializing speech engine...
[2026-06-22 11:41:26,880.880 INFO    ] 2026-06-22 11:41:26
[2026-06-22 11:41:27,153.153 INFO    ] 2026-06-22 11:41:27
[2026-06-22 11:41:27,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:41:27,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:41:27,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:41:27,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:41:27,660.660 INFO    ] time= 22/06/2026 11:41:27
[2026-06-22 11:41:27,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:41:27,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:41:27,870.870 INFO    ] No existing commands found in stream
[2026-06-22 11:41:32,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:41:32,901.901 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-22 11:41:37,148.148 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:41:37,149.149 INFO    ] Checking for system updates...
[2026-06-22 11:41:37,170.170 INFO    ] 200
[2026-06-22 11:41:37,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:41:37,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:41:37,221.221 INFO    ] No update needed
[2026-06-22 11:41:37,224.224 INFO    ] Checking for camera pi updates...
[2026-06-22 11:41:37,258.258 INFO    ] 200
[2026-06-22 11:41:37,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:41:37,303.303 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:41:37,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:41:37,478.478 INFO    ] No camera update needed
[2026-06-22 11:41:37,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:41:37,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:41:37,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:41:37,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:41:39,536.536 INFO    ] ================================================
[2026-06-22 11:41:39,551.551 INFO    ] Launching Daemon at Mon Jun 22 11:41:39 IST 2026
[2026-06-22 11:41:39,562.562 INFO    ] ================================================
[2026-06-22 11:41:40,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:41:40
[2026-06-22 11:41:40,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:41:40,878.878 INFO    ] Initializing speech engine...
[2026-06-22 11:41:40,901.901 INFO    ] 2026-06-22 11:41:40
[2026-06-22 11:41:41,156.156 INFO    ] 2026-06-22 11:41:41
[2026-06-22 11:41:41,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:41:41,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:41:41,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:41:41,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:41:41,626.626 INFO    ] time= 22/06/2026 11:41:41
[2026-06-22 11:41:41,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:41:41,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:41:41,867.867 INFO    ] No existing commands found in stream
[2026-06-22 11:41:46,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:41:46,887.887 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-22 11:41:51,316.316 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:41:51,318.318 INFO    ] Checking for system updates...
[2026-06-22 11:41:51,354.354 INFO    ] 200
[2026-06-22 11:41:51,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:41:51,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:41:51,412.412 INFO    ] No update needed
[2026-06-22 11:41:51,415.415 INFO    ] Checking for camera pi updates...
[2026-06-22 11:41:51,448.448 INFO    ] 200
[2026-06-22 11:41:51,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:41:51,491.491 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:41:51,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:41:51,575.575 INFO    ] No camera update needed
[2026-06-22 11:41:51,578.578 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:41:51,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:41:51,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:41:51,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:41:53,631.631 INFO    ] ================================================
[2026-06-22 11:41:53,647.647 INFO    ] Launching Daemon at Mon Jun 22 11:41:53 IST 2026
[2026-06-22 11:41:53,657.657 INFO    ] ================================================
[2026-06-22 11:41:54,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:41:54
[2026-06-22 11:41:54,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:41:55,199.199 INFO    ] Initializing speech engine...
[2026-06-22 11:41:55,208.208 INFO    ] 2026-06-22 11:41:55
[2026-06-22 11:41:55,485.485 INFO    ] 2026-06-22 11:41:55
[2026-06-22 11:41:55,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:41:55,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:41:55,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:41:56,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:41:56,048.048 INFO    ] time= 22/06/2026 11:41:56
[2026-06-22 11:41:56,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:41:56,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:41:56,205.205 INFO    ] No existing commands found in stream
[2026-06-22 11:42:01,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:42:01,224.224 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-22 11:42:05,723.723 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:42:05,726.726 INFO    ] Checking for system updates...
[2026-06-22 11:42:05,763.763 INFO    ] 200
[2026-06-22 11:42:05,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:42:05,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:42:05,822.822 INFO    ] No update needed
[2026-06-22 11:42:05,824.824 INFO    ] Checking for camera pi updates...
[2026-06-22 11:42:05,859.859 INFO    ] 200
[2026-06-22 11:42:05,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:42:05,904.904 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:42:05,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:42:05,990.990 INFO    ] No camera update needed
[2026-06-22 11:42:05,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:42:05,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:42:06,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:42:06,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:42:08,051.051 INFO    ] ================================================
[2026-06-22 11:42:08,066.066 INFO    ] Launching Daemon at Mon Jun 22 11:42:08 IST 2026
[2026-06-22 11:42:08,077.077 INFO    ] ================================================
[2026-06-22 11:42:08,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:42:08
[2026-06-22 11:42:09,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:42:09,493.493 INFO    ] Initializing speech engine...
[2026-06-22 11:42:09,500.500 INFO    ] 2026-06-22 11:42:09
[2026-06-22 11:42:09,794.794 INFO    ] 2026-06-22 11:42:09
[2026-06-22 11:42:09,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:42:10,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:42:10,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:42:10,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:42:10,188.188 INFO    ] time= 22/06/2026 11:42:10
[2026-06-22 11:42:10,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:42:10,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:42:10,389.389 INFO    ] No existing commands found in stream
[2026-06-22 11:42:15,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:42:15,404.404 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-22 11:42:17,321.321 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:42:17,323.323 INFO    ] Checking for system updates...
[2026-06-22 11:42:17,350.350 INFO    ] 200
[2026-06-22 11:42:17,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:42:17,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:42:17,409.409 INFO    ] No update needed
[2026-06-22 11:42:17,411.411 INFO    ] Checking for camera pi updates...
[2026-06-22 11:42:17,446.446 INFO    ] 200
[2026-06-22 11:42:17,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:42:17,490.490 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:42:17,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:42:17,573.573 INFO    ] No camera update needed
[2026-06-22 11:42:17,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:42:17,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:42:17,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:42:17,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:42:19,629.629 INFO    ] ================================================
[2026-06-22 11:42:19,644.644 INFO    ] Launching Daemon at Mon Jun 22 11:42:19 IST 2026
[2026-06-22 11:42:19,654.654 INFO    ] ================================================
[2026-06-22 11:42:20,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:42:20
[2026-06-22 11:42:20,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:42:21,111.111 INFO    ] Initializing speech engine...
[2026-06-22 11:42:21,118.118 INFO    ] 2026-06-22 11:42:21
[2026-06-22 11:42:21,378.378 INFO    ] 2026-06-22 11:42:21
[2026-06-22 11:42:21,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:42:21,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:42:21,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:42:21,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:42:21,839.839 INFO    ] time= 22/06/2026 11:42:21
[2026-06-22 11:42:21,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:42:21,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:42:22,051.051 INFO    ] No existing commands found in stream
[2026-06-22 11:42:27,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:42:27,089.089 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-22 11:42:29,567.567 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:42:29,570.570 INFO    ] Checking for system updates...
[2026-06-22 11:42:29,608.608 INFO    ] 200
[2026-06-22 11:42:29,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:42:29,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:42:29,668.668 INFO    ] No update needed
[2026-06-22 11:42:29,670.670 INFO    ] Checking for camera pi updates...
[2026-06-22 11:42:29,707.707 INFO    ] 200
[2026-06-22 11:42:29,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:42:29,751.751 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:42:29,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:42:29,837.837 INFO    ] No camera update needed
[2026-06-22 11:42:29,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:42:29,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:42:29,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:42:29,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:42:31,899.899 INFO    ] ================================================
[2026-06-22 11:42:31,916.916 INFO    ] Launching Daemon at Mon Jun 22 11:42:31 IST 2026
[2026-06-22 11:42:31,928.928 INFO    ] ================================================
[2026-06-22 11:42:32,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:42:32
[2026-06-22 11:42:33,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:42:33,410.410 INFO    ] Initializing speech engine...
[2026-06-22 11:42:33,418.418 INFO    ] 2026-06-22 11:42:33
[2026-06-22 11:42:33,689.689 INFO    ] 2026-06-22 11:42:33
[2026-06-22 11:42:33,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:42:34,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:42:34,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:42:34,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:42:34,367.367 INFO    ] time= 22/06/2026 11:42:34
[2026-06-22 11:42:34,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:42:34,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:42:34,620.620 INFO    ] No existing commands found in stream
[2026-06-22 11:42:39,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:42:39,660.660 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-22 11:42:42,500.500 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:42:42,502.502 INFO    ] Checking for system updates...
[2026-06-22 11:42:42,539.539 INFO    ] 200
[2026-06-22 11:42:42,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:42:42,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:42:42,603.603 INFO    ] No update needed
[2026-06-22 11:42:42,605.605 INFO    ] Checking for camera pi updates...
[2026-06-22 11:42:42,639.639 INFO    ] 200
[2026-06-22 11:42:42,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:42:42,682.682 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:42:42,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:42:42,785.785 INFO    ] No camera update needed
[2026-06-22 11:42:42,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:42:42,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:42:42,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:42:42,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:42:44,845.845 INFO    ] ================================================
[2026-06-22 11:42:44,860.860 INFO    ] Launching Daemon at Mon Jun 22 11:42:44 IST 2026
[2026-06-22 11:42:44,871.871 INFO    ] ================================================
[2026-06-22 11:42:45,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:42:45
[2026-06-22 11:42:45,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:42:46,247.247 INFO    ] Initializing speech engine...
[2026-06-22 11:42:46,255.255 INFO    ] 2026-06-22 11:42:46
[2026-06-22 11:42:46,515.515 INFO    ] 2026-06-22 11:42:46
[2026-06-22 11:42:46,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:42:46,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:42:46,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:42:47,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:42:47,118.118 INFO    ] time= 22/06/2026 11:42:47
[2026-06-22 11:42:47,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:42:47,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:42:47,342.342 INFO    ] No existing commands found in stream
[2026-06-22 11:42:52,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:42:52,380.380 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-22 11:42:54,481.481 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:42:54,485.485 INFO    ] Checking for system updates...
[2026-06-22 11:42:54,523.523 INFO    ] 200
[2026-06-22 11:42:54,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:42:54,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:42:54,588.588 INFO    ] No update needed
[2026-06-22 11:42:54,591.591 INFO    ] Checking for camera pi updates...
[2026-06-22 11:42:54,626.626 INFO    ] 200
[2026-06-22 11:42:54,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:42:54,675.675 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:42:54,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:42:54,759.759 INFO    ] No camera update needed
[2026-06-22 11:42:54,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:42:54,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:42:54,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:42:54,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:42:56,811.811 INFO    ] ================================================
[2026-06-22 11:42:56,826.826 INFO    ] Launching Daemon at Mon Jun 22 11:42:56 IST 2026
[2026-06-22 11:42:56,837.837 INFO    ] ================================================
[2026-06-22 11:42:57,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:42:57
[2026-06-22 11:42:57,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:42:58,240.240 INFO    ] Initializing speech engine...
[2026-06-22 11:42:58,263.263 INFO    ] 2026-06-22 11:42:58
[2026-06-22 11:42:58,519.519 INFO    ] 2026-06-22 11:42:58
[2026-06-22 11:42:58,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:42:58,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:42:58,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:42:58,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:42:58,895.895 INFO    ] time= 22/06/2026 11:42:58
[2026-06-22 11:42:58,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:42:58,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:42:59,075.075 INFO    ] No existing commands found in stream
[2026-06-22 11:43:04,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:43:04,108.108 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-22 11:43:08,447.447 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:43:08,449.449 INFO    ] Checking for system updates...
[2026-06-22 11:43:08,470.470 INFO    ] 200
[2026-06-22 11:43:08,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:43:08,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:43:08,509.509 INFO    ] No update needed
[2026-06-22 11:43:08,512.512 INFO    ] Checking for camera pi updates...
[2026-06-22 11:43:08,545.545 INFO    ] 200
[2026-06-22 11:43:08,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:43:08,594.594 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:43:08,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:43:08,682.682 INFO    ] No camera update needed
[2026-06-22 11:43:08,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:43:08,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:43:08,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:43:08,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:43:10,740.740 INFO    ] ================================================
[2026-06-22 11:43:10,755.755 INFO    ] Launching Daemon at Mon Jun 22 11:43:10 IST 2026
[2026-06-22 11:43:10,766.766 INFO    ] ================================================
[2026-06-22 11:43:11,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:43:11
[2026-06-22 11:43:11,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:43:12,185.185 INFO    ] Initializing speech engine...
[2026-06-22 11:43:12,197.197 INFO    ] 2026-06-22 11:43:12
[2026-06-22 11:43:12,448.448 INFO    ] 2026-06-22 11:43:12
[2026-06-22 11:43:12,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:43:12,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:43:12,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:43:12,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:43:12,935.935 INFO    ] time= 22/06/2026 11:43:12
[2026-06-22 11:43:13,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:43:13,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:43:13,155.155 INFO    ] No existing commands found in stream
[2026-06-22 11:43:14,188.188 INFO    ] Received new command: ID=1782108794030-0
[2026-06-22 11:43:14,193.193 INFO    ] process_and_cleanup_command: msg_id=1782108794030-0
[2026-06-22 11:43:14,198.198 INFO    ] is_command_expired: timestamp=2026-06-22T06:13:12.302Z, expiry=30s
[2026-06-22 11:43:14,335.335 INFO    ] Command removed from stream: 1782108794030-0. returning for processing...
[2026-06-22 11:43:14,346.346 INFO    ] ***** get_valid_command
[2026-06-22 11:43:14,351.351 INFO    ] {'source': 'webapp', 'command': 'start-order', 'timeout': '10', 'data': '{"request_id":"start-order-1782108792302-gwsfjjtyk","orderId":"TM06202507260622114019369","is_vending":false}', 'timestamp': '2026-06-22T06:13:12.302Z'}
[2026-06-22 11:43:14,361.361 INFO    ] ***** Parsed command data: {'is_vending': False, 'orderId': 'TM06202507260622114019369', 'request_id': 'start-order-1782108792302-gwsfjjtyk'}
[2026-06-22 11:43:14,369.369 INFO    ] Handling start order...
[2026-06-22 11:43:14,377.377 INFO    ] handle_start_order_command
[2026-06-22 11:43:14,388.388 INFO    ] _send_start_order_success: request_id=start-order-1782108792302-gwsfjjtyk, order_id=TM06202507260622114019369
[2026-06-22 11:43:14,395.395 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM06202507
[2026-06-22 11:43:14,475.475 INFO    ] [_send_start_order_success] Message added to stream with ID: 1782108794410-0
[2026-06-22 11:43:14,480.480 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-22 11:43:14,485.485 INFO    ] Checking for system updates...
[2026-06-22 11:43:14,530.530 INFO    ] 200
[2026-06-22 11:43:14,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:43:14,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:43:14,659.659 INFO    ] No update needed
[2026-06-22 11:43:14,668.668 INFO    ] Checking for camera pi updates...
[2026-06-22 11:43:14,730.730 INFO    ] 200
[2026-06-22 11:43:14,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:43:14,787.787 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:43:14,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:43:14,924.924 INFO    ] No camera update needed
[2026-06-22 11:43:14,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:43:14,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:43:14,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:43:15,005.005 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-22 11:43:15,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:43:17,087.087 INFO    ] ================================================
[2026-06-22 11:43:17,102.102 INFO    ] Launching Daemon at Mon Jun 22 11:43:17 IST 2026
[2026-06-22 11:43:17,112.112 INFO    ] ================================================
[2026-06-22 11:43:17,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:43:17
[2026-06-22 11:43:18,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:43:18,463.463 INFO    ] Initializing speech engine...
[2026-06-22 11:43:18,476.476 INFO    ] 2026-06-22 11:43:18
[2026-06-22 11:43:18,742.742 INFO    ] 2026-06-22 11:43:18
[2026-06-22 11:43:18,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:43:18,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:43:19,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:43:19,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:43:19,225.225 INFO    ] time= 22/06/2026 11:43:19
[2026-06-22 11:43:19,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:43:19,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:43:19,455.455 INFO    ] Found 1 existing command(s) in stream
[2026-06-22 11:43:19,487.487 INFO    ] Checking historical command: ID=1782108794410-0
[2026-06-22 11:43:19,541.541 INFO    ] process_and_cleanup_command: msg_id=1782108794410-0
[2026-06-22 11:43:19,590.590 INFO    ] is_command_expired: timestamp=2026-06-22T06:13:14.390362Z, expiry=30s
[2026-06-22 11:43:19,782.782 INFO    ] Command removed from stream: 1782108794410-0. returning for processing...
[2026-06-22 11:43:19,813.813 INFO    ] ***** get_valid_command
[2026-06-22 11:43:19,821.821 INFO    ] {'message': 'start-order success', 'message_type': 'command_response', 'metadata_request_id': 'start-order-1782108792302-gwsfjjtyk', 'status': 'success', 'metadata_order_id': 'TM06202507260622114019369', 'imei': 'TM06202507', 'timestamp': '2026-06-22T06:13:14.390362Z'}
[2026-06-22 11:43:19,826.826 INFO    ] Processed historical messages, no valid command available...
[2026-06-22 11:43:24,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:43:24,839.839 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-22 11:43:27,253.253 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:43:27,267.267 INFO    ] Checking for system updates...
[2026-06-22 11:43:27,303.303 INFO    ] 200
[2026-06-22 11:43:27,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:43:27,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:43:27,363.363 INFO    ] No update needed
[2026-06-22 11:43:27,366.366 INFO    ] Checking for camera pi updates...
[2026-06-22 11:43:27,404.404 INFO    ] 200
[2026-06-22 11:43:27,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:43:27,447.447 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:43:27,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:43:27,525.525 INFO    ] No camera update needed
[2026-06-22 11:43:27,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:43:27,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:43:27,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:43:27,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:43:29,579.579 INFO    ] ================================================
[2026-06-22 11:43:29,595.595 INFO    ] Launching Daemon at Mon Jun 22 11:43:29 IST 2026
[2026-06-22 11:43:29,606.606 INFO    ] ================================================
[2026-06-22 11:43:30,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:43:30
[2026-06-22 11:43:30,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:43:31,001.001 INFO    ] Initializing speech engine...
[2026-06-22 11:43:31,010.010 INFO    ] 2026-06-22 11:43:31
[2026-06-22 11:43:31,276.276 INFO    ] 2026-06-22 11:43:31
[2026-06-22 11:43:31,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:43:31,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:43:31,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:43:31,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:43:31,877.877 INFO    ] time= 22/06/2026 11:43:31
[2026-06-22 11:43:31,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:43:31,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:43:32,094.094 INFO    ] No existing commands found in stream
[2026-06-22 11:43:37,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:43:37,135.135 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-22 11:43:40,782.782 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:43:40,812.812 INFO    ] Checking for system updates...
[2026-06-22 11:43:40,857.857 INFO    ] 200
[2026-06-22 11:43:40,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:43:40,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:43:40,917.917 INFO    ] No update needed
[2026-06-22 11:43:40,919.919 INFO    ] Checking for camera pi updates...
[2026-06-22 11:43:40,957.957 INFO    ] 200
[2026-06-22 11:43:40,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:43:41,000.000 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:43:41,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:43:41,183.183 INFO    ] No camera update needed
[2026-06-22 11:43:41,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:43:41,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:43:41,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:43:41,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:43:43,240.240 INFO    ] ================================================
[2026-06-22 11:43:43,255.255 INFO    ] Launching Daemon at Mon Jun 22 11:43:43 IST 2026
[2026-06-22 11:43:43,265.265 INFO    ] ================================================
[2026-06-22 11:43:43,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:43:43
[2026-06-22 11:43:44,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:43:44,948.948 INFO    ] Initializing speech engine...
[2026-06-22 11:43:44,956.956 INFO    ] 2026-06-22 11:43:44
[2026-06-22 11:43:45,252.252 INFO    ] 2026-06-22 11:43:45
[2026-06-22 11:43:45,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:43:45,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:43:45,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:43:45,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:43:45,783.783 INFO    ] time= 22/06/2026 11:43:45
[2026-06-22 11:43:45,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:43:45,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:43:45,929.929 INFO    ] No existing commands found in stream
[2026-06-22 11:43:50,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:43:50,954.954 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-22 11:43:52,376.376 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:43:52,391.391 INFO    ] Checking for system updates...
[2026-06-22 11:43:52,414.414 INFO    ] 200
[2026-06-22 11:43:52,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:43:52,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:43:52,450.450 INFO    ] No update needed
[2026-06-22 11:43:52,451.451 INFO    ] Checking for camera pi updates...
[2026-06-22 11:43:52,471.471 INFO    ] 200
[2026-06-22 11:43:52,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:43:52,502.502 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:43:52,594.594 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:43:52,597.597 INFO    ] No camera update needed
[2026-06-22 11:43:52,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:43:52,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:43:52,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:43:52,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:43:54,651.651 INFO    ] ================================================
[2026-06-22 11:43:54,666.666 INFO    ] Launching Daemon at Mon Jun 22 11:43:54 IST 2026
[2026-06-22 11:43:54,677.677 INFO    ] ================================================
[2026-06-22 11:43:55,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:43:55
[2026-06-22 11:43:55,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:43:56,007.007 INFO    ] Initializing speech engine...
[2026-06-22 11:43:56,015.015 INFO    ] 2026-06-22 11:43:56
[2026-06-22 11:43:56,280.280 INFO    ] 2026-06-22 11:43:56
[2026-06-22 11:43:56,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:43:56,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:43:56,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:43:56,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:43:56,707.707 INFO    ] time= 22/06/2026 11:43:56
[2026-06-22 11:43:56,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:43:56,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:43:56,899.899 INFO    ] No existing commands found in stream
[2026-06-22 11:44:01,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:44:01,928.928 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-22 11:44:02,645.645 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:44:02,675.675 INFO    ] Lock file expired, elapsed: 48s, order: TM06202507260622114019369
[2026-06-22 11:44:02,678.678 INFO    ] Cancelling order TM06202507260622114019369 - Error 20101: Order timed out. Please try again.
[2026-06-22 11:44:02,767.767 INFO    ] {'server_response': {'SectionStatus': {'Note': '', 'Header': 'Order Failed', 'SubHeader': '[20101] Order timed out. Please try again.'}, 'error_code': 20101, 'error_message': 'Order timed out. Please try again.'}, 'order_id': 'TM06202507260622114019369', 'server_status': 'Cancelled'}
[2026-06-22 11:44:02,770.770 INFO    ] 200
[2026-06-22 11:44:02,774.774 INFO    ] {"data":{"server_response":{"SectionStatus":{"Note":"","Header":"Order Failed","SubHeader":"[20101] Order timed out. Please try again."},"error_code":20101,"error_message":"Order timed out. Please try again."},"order_id":"TM06202507260622114019369","server_status":"Cancelled"},"response":{"status":true,"code":"MISSING_ORDER","data":"order not found","msg":"order not found"}}
[2026-06-22 11:44:02,777.777 INFO    ] {'response': {'code': 'MISSING_ORDER', 'status': True, 'msg': 'order not found', 'data': 'order not found'}, 'data': {'server_status': 'Cancelled', 'order_id': 'TM06202507260622114019369', 'server_response': {'SectionStatus': {'SubHeader': '[20101] Order timed out. Please try again.', 'Header': 'Order Failed', 'Note': ''}, 'error_code': 20101, 'error_message': 'Order timed out. Please try again.'}}}
[2026-06-22 11:44:02,780.780 INFO    ] Expired start-order file deleted, server response code: MISSING_ORDER
[2026-06-22 11:44:02,782.782 INFO    ] Checking for system updates...
[2026-06-22 11:44:02,819.819 INFO    ] 200
[2026-06-22 11:44:02,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:44:02,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:44:02,882.882 INFO    ] No update needed
[2026-06-22 11:44:02,885.885 INFO    ] Checking for camera pi updates...
[2026-06-22 11:44:02,929.929 INFO    ] 200
[2026-06-22 11:44:02,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:44:02,978.978 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:44:03,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:44:03,052.052 INFO    ] No camera update needed
[2026-06-22 11:44:03,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:44:03,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:44:03,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:44:03,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:44:05,110.110 INFO    ] ================================================
[2026-06-22 11:44:05,125.125 INFO    ] Launching Daemon at Mon Jun 22 11:44:05 IST 2026
[2026-06-22 11:44:05,136.136 INFO    ] ================================================
[2026-06-22 11:44:05,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:44:05
[2026-06-22 11:44:06,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:44:06,588.588 INFO    ] Initializing speech engine...
[2026-06-22 11:44:06,601.601 INFO    ] 2026-06-22 11:44:06
[2026-06-22 11:44:06,919.919 INFO    ] 2026-06-22 11:44:06
[2026-06-22 11:44:07,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:44:07,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:44:07,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:44:07,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:44:07,449.449 INFO    ] time= 22/06/2026 11:44:07
[2026-06-22 11:44:07,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:44:07,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:44:07,603.603 INFO    ] No existing commands found in stream
[2026-06-22 11:44:12,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:44:12,641.641 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-22 11:44:14,736.736 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:44:14,739.739 INFO    ] Checking for system updates...
[2026-06-22 11:44:14,784.784 INFO    ] 200
[2026-06-22 11:44:14,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:44:14,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:44:14,852.852 INFO    ] No update needed
[2026-06-22 11:44:14,855.855 INFO    ] Checking for camera pi updates...
[2026-06-22 11:44:14,889.889 INFO    ] 200
[2026-06-22 11:44:14,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:44:14,932.932 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:44:15,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:44:15,039.039 INFO    ] No camera update needed
[2026-06-22 11:44:15,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:44:15,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:44:15,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:44:15,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:44:17,096.096 INFO    ] ================================================
[2026-06-22 11:44:17,111.111 INFO    ] Launching Daemon at Mon Jun 22 11:44:17 IST 2026
[2026-06-22 11:44:17,122.122 INFO    ] ================================================
[2026-06-22 11:44:17,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:44:17
[2026-06-22 11:44:18,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:44:18,522.522 INFO    ] Initializing speech engine...
[2026-06-22 11:44:18,529.529 INFO    ] 2026-06-22 11:44:18
[2026-06-22 11:44:18,833.833 INFO    ] 2026-06-22 11:44:18
[2026-06-22 11:44:18,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:44:19,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:44:19,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:44:19,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:44:19,228.228 INFO    ] time= 22/06/2026 11:44:19
[2026-06-22 11:44:19,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:44:19,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:44:19,361.361 INFO    ] No existing commands found in stream
[2026-06-22 11:44:24,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:44:24,394.394 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-22 11:44:27,921.921 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:44:27,924.924 INFO    ] Checking for system updates...
[2026-06-22 11:44:27,966.966 INFO    ] 200
[2026-06-22 11:44:27,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:44:28,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:44:28,024.024 INFO    ] No update needed
[2026-06-22 11:44:28,027.027 INFO    ] Checking for camera pi updates...
[2026-06-22 11:44:28,065.065 INFO    ] 200
[2026-06-22 11:44:28,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:44:28,109.109 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:44:28,185.185 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:44:28,188.188 INFO    ] No camera update needed
[2026-06-22 11:44:28,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:44:28,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:44:28,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:44:28,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:44:30,245.245 INFO    ] ================================================
[2026-06-22 11:44:30,260.260 INFO    ] Launching Daemon at Mon Jun 22 11:44:30 IST 2026
[2026-06-22 11:44:30,270.270 INFO    ] ================================================
[2026-06-22 11:44:30,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:44:30
[2026-06-22 11:44:31,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:44:31,659.659 INFO    ] Initializing speech engine...
[2026-06-22 11:44:31,667.667 INFO    ] 2026-06-22 11:44:31
[2026-06-22 11:44:31,938.938 INFO    ] 2026-06-22 11:44:31
[2026-06-22 11:44:32,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:44:32,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:44:32,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:44:32,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:44:32,490.490 INFO    ] time= 22/06/2026 11:44:32
[2026-06-22 11:44:32,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:44:32,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:44:32,663.663 INFO    ] No existing commands found in stream
[2026-06-22 11:44:33,309.309 INFO    ] Received new command: ID=1782108873162-0
[2026-06-22 11:44:33,346.346 INFO    ] process_and_cleanup_command: msg_id=1782108873162-0
[2026-06-22 11:44:33,353.353 INFO    ] is_command_expired: timestamp=2026-06-22T06:14:31.751Z, expiry=30s
[2026-06-22 11:44:33,478.478 INFO    ] Command removed from stream: 1782108873162-0. returning for processing...
[2026-06-22 11:44:33,481.481 INFO    ] ***** get_valid_command
[2026-06-22 11:44:33,489.489 INFO    ] {'timeout': '10', 'source': 'webapp', 'timestamp': '2026-06-22T06:14:31.751Z', 'command': 'start-order', 'data': '{"request_id":"start-order-1782108871750-zep4ulkel","orderId":"TM06202507260622114019369","is_vending":false}'}
[2026-06-22 11:44:33,494.494 INFO    ] ***** Parsed command data: {'orderId': 'TM06202507260622114019369', 'request_id': 'start-order-1782108871750-zep4ulkel', 'is_vending': False}
[2026-06-22 11:44:33,499.499 INFO    ] Handling start order...
[2026-06-22 11:44:33,505.505 INFO    ] handle_start_order_command
[2026-06-22 11:44:33,517.517 INFO    ] _send_start_order_success: request_id=start-order-1782108871750-zep4ulkel, order_id=TM06202507260622114019369
[2026-06-22 11:44:33,521.521 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM06202507
[2026-06-22 11:44:33,608.608 INFO    ] [_send_start_order_success] Message added to stream with ID: 1782108873550-0
[2026-06-22 11:44:33,619.619 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-22 11:44:33,629.629 INFO    ] Checking for system updates...
[2026-06-22 11:44:33,748.748 INFO    ] 200
[2026-06-22 11:44:33,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:44:33,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:44:33,841.841 INFO    ] No update needed
[2026-06-22 11:44:33,869.869 INFO    ] Checking for camera pi updates...
[2026-06-22 11:44:33,922.922 INFO    ] 200
[2026-06-22 11:44:33,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:44:34,030.030 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:44:34,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:44:34,122.122 INFO    ] No camera update needed
[2026-06-22 11:44:34,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:44:34,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:44:34,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:44:34,162.162 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-22 11:44:34,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:44:36,219.219 INFO    ] ================================================
[2026-06-22 11:44:36,233.233 INFO    ] Launching Daemon at Mon Jun 22 11:44:36 IST 2026
[2026-06-22 11:44:36,244.244 INFO    ] ================================================
[2026-06-22 11:44:36,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:44:36
[2026-06-22 11:44:37,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:44:37,672.672 INFO    ] Initializing speech engine...
[2026-06-22 11:44:37,688.688 INFO    ] 2026-06-22 11:44:37
[2026-06-22 11:44:37,946.946 INFO    ] 2026-06-22 11:44:37
[2026-06-22 11:44:37,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:44:38,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:44:38,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:44:38,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:44:38,367.367 INFO    ] time= 22/06/2026 11:44:38
[2026-06-22 11:44:38,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:44:38,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:44:38,550.550 INFO    ] Found 1 existing command(s) in stream
[2026-06-22 11:44:38,573.573 INFO    ] Checking historical command: ID=1782108873550-0
[2026-06-22 11:44:38,579.579 INFO    ] process_and_cleanup_command: msg_id=1782108873550-0
[2026-06-22 11:44:38,597.597 INFO    ] is_command_expired: timestamp=2026-06-22T06:14:33.518124Z, expiry=30s
[2026-06-22 11:44:38,754.754 INFO    ] Command removed from stream: 1782108873550-0. returning for processing...
[2026-06-22 11:44:38,791.791 INFO    ] ***** get_valid_command
[2026-06-22 11:44:38,851.851 INFO    ] {'timestamp': '2026-06-22T06:14:33.518124Z', 'metadata_request_id': 'start-order-1782108871750-zep4ulkel', 'message': 'start-order success', 'message_type': 'command_response', 'status': 'success', 'metadata_order_id': 'TM06202507260622114019369', 'imei': 'TM06202507'}
[2026-06-22 11:44:38,870.870 INFO    ] Processed historical messages, no valid command available...
[2026-06-22 11:44:43,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:44:43,897.897 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-22 11:44:47,735.735 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:44:47,748.748 INFO    ] Checking for system updates...
[2026-06-22 11:44:47,785.785 INFO    ] 200
[2026-06-22 11:44:47,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:44:47,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:44:47,849.849 INFO    ] No update needed
[2026-06-22 11:44:47,851.851 INFO    ] Checking for camera pi updates...
[2026-06-22 11:44:47,889.889 INFO    ] 200
[2026-06-22 11:44:47,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:44:47,933.933 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:44:48,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:44:48,023.023 INFO    ] No camera update needed
[2026-06-22 11:44:48,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:44:48,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:44:48,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:44:48,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:44:50,077.077 INFO    ] ================================================
[2026-06-22 11:44:50,093.093 INFO    ] Launching Daemon at Mon Jun 22 11:44:50 IST 2026
[2026-06-22 11:44:50,104.104 INFO    ] ================================================
[2026-06-22 11:44:50,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:44:50
[2026-06-22 11:44:51,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:44:51,469.469 INFO    ] Initializing speech engine...
[2026-06-22 11:44:51,478.478 INFO    ] 2026-06-22 11:44:51
[2026-06-22 11:44:51,730.730 INFO    ] 2026-06-22 11:44:51
[2026-06-22 11:44:51,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:44:51,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:44:51,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:44:52,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:44:52,205.205 INFO    ] time= 22/06/2026 11:44:52
[2026-06-22 11:44:52,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:44:52,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:44:52,426.426 INFO    ] Found 1 existing command(s) in stream
[2026-06-22 11:44:52,467.467 INFO    ] Checking historical command: ID=1782108889060-0
[2026-06-22 11:44:52,521.521 INFO    ] process_and_cleanup_command: msg_id=1782108889060-0
[2026-06-22 11:44:52,553.553 INFO    ] is_command_expired: timestamp=2026-06-22T06:14:48.795Z, expiry=30s
[2026-06-22 11:44:52,767.767 INFO    ] Command removed from stream: 1782108889060-0. returning for processing...
[2026-06-22 11:44:52,777.777 INFO    ] ***** get_valid_command
[2026-06-22 11:44:52,780.780 INFO    ] {'data': '{"request_id":"process-order-1782108888795-h0nsyh06s","orderId":"TM06202507260622114019369","is_vending":false,"accessCode":"82111725"}', 'timestamp': '2026-06-22T06:14:48.795Z', 'timeout': '60', 'source': 'webapp', 'command': 'process-order'}
[2026-06-22 11:44:52,783.783 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'process-order-1782108888795-h0nsyh06s', 'orderId': 'TM06202507260622114019369', 'accessCode': '82111725'}
[2026-06-22 11:44:52,787.787 INFO    ] Handling process order...
[2026-06-22 11:44:52,815.815 INFO    ] Processing process-order command...
[2026-06-22 11:44:52,915.915 INFO    ] 🔍 Lock file Order ID: TM06202507260622114019369, TS: 2026-06-22 11:44:33
[2026-06-22 11:44:52,931.931 INFO    ] ✅ Order lock valid for TM06202507260622114019369
[2026-06-22 11:44:52,935.935 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-22 11:44:52,978.978 INFO    ] processing access code 82111725 for order TM06202507260622114019369
[2026-06-22 11:44:52,988.988 INFO    ] 🔍 Lock file Order ID: TM06202507260622114019369, TS: 2026-06-22 11:44:33
[2026-06-22 11:44:52,991.991 INFO    ] ✅ Order lock valid for TM06202507260622114019369
[2026-06-22 11:44:53,042.042 INFO    ] 2026-06-22 11:44:52
[2026-06-22 11:44:53,164.164 INFO    ] 200
[2026-06-22 11:44:53,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:44:53,211.211 INFO    ] 82111725
[2026-06-22 11:44:53,216.216 INFO    ] 2026-06-22 11:44:53
[2026-06-22 11:44:53,223.223 INFO    ] session id :911973669
[2026-06-22 11:44:53,230.230 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=82111725&imei=TM06202507&session_id=911973669
[2026-06-22 11:44:53,805.805 INFO    ] 200
[2026-06-22 11:44:53,811.811 INFO    ] {"data": {"mobile": "9149407609", "order_id": "TM06202507260622114019369", "access_code": "82111725", "bill_amount": "40.0", "proposed_sku_json": [{"tray_id": "15", "qty": 1, "mrp": "10", "door_id": "1", "name": "McVities Triple Nut Cookies 58gm", "sku_total": 10, "image_url": "https://images.tinymart.in/product/4500714-2989.png", "offer_desc": "", "unit_price": 10, "skuid": "4500714", "offer_id": ""}, {"tray_id": "14", "qty": 1, "mrp": "30", "door_id": "1", "name": "Farmely Panchmeva 21gm", "sku_total": 30, "image_url": "https://images.tinymart.in/product/4500668-1144.jpg", "offer_desc": "", "unit_price": 30, "skuid": "4500668", "offer_id": ""}], "invoice_bill": "40.0"}, "msg": "Order Data", "status": true, "rstatus": true}
[2026-06-22 11:44:53,819.819 INFO    ] 40
[2026-06-22 11:44:53,826.826 INFO    ] TM06202507260622114019369
[2026-06-22 11:44:53,831.831 INFO    ] 9149407609
[2026-06-22 11:44:53,836.836 INFO    ] 2026-06-22 11:44:53
[2026-06-22 11:44:53,842.842 INFO    ] Door Opening for user mobile ending with  seven six zero nine 
[2026-06-22 11:44:53,847.847 INFO    ] Door Opening for user mobile ending with  seven six zero nine 
[2026-06-22 11:44:53,852.852 INFO    ] 482cb90b7947fce33906d7a4ec758353
[2026-06-22 11:44:53,859.859 INFO    ] 2026-06-22 11:44:53
[2026-06-22 11:44:53,864.864 INFO    ] playing audio file
[2026-06-22 11:44:53,887.887 INFO    ] 2026-06-22 11:44:53
[2026-06-22 11:44:53,893.893 INFO    ] 2026-06-22 11:44:53
[2026-06-22 11:44:53,902.902 INFO    ] publish_status: order_id=TM06202507260622114019369
[2026-06-22 11:44:53,908.908 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622114019369
[2026-06-22 11:44:54,058.058 INFO    ] [publish_status] Message added to stream with ID: 1782108893940-0
[2026-06-22 11:44:54,074.074 INFO    ] Published to order:TM06202507260622114019369: {'server_response': '{"data": {"bill_amount": "40.0", "access_code": "82111725", "invoice_bill": "40.0", "order_id": "TM06202507260622114019369", "proposed_sku_json": [{"sku_total": 10, "qty": 1, "skuid": "4500714", "offer_desc": "", "mrp": "10", "tray_id": "15", "offer_id": "", "image_url": "https://images.tinymart.in/product/4500714-2989.png", "unit_price": 10, "name": "McVities Triple Nut Cookies 58gm", "door_id": "1"}, {"sku_total": 30, "qty": 1, "skuid": "4500668", "offer_desc": "", "mrp": "30", "tray_id": "14", "offer_id": "", "image_url": "https://images.tinymart.in/product/4500668-1144.jpg", "unit_price": 30, "name": "Farmely Panchmeva 21gm", "door_id": "1"}], "mobile": "9149407609"}, "msg": "Order Data", "status": true, "rstatus": true}', 'timestamp': '2026-06-22T06:14:53.895058Z', 'server_status': 'order-started', 'order_id': 'TM06202507260622114019369'} (ID: 1782108893940-0)
[2026-06-22 11:44:54,746.746 INFO    ] {'server_response': {'data': {'bill_amount': '40.0', 'access_code': '82111725', 'invoice_bill': '40.0', 'order_id': 'TM06202507260622114019369', 'proposed_sku_json': [{'sku_total': 10, 'qty': 1, 'skuid': '4500714', 'offer_desc': '', 'mrp': '10', 'tray_id': '15', 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500714-2989.png', 'unit_price': 10, 'name': 'McVities Triple Nut Cookies 58gm', 'door_id': '1'}, {'sku_total': 30, 'qty': 1, 'skuid': '4500668', 'offer_desc': '', 'mrp': '30', 'tray_id': '14', 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'unit_price': 30, 'name': 'Farmely Panchmeva 21gm', 'door_id': '1'}], 'mobile': '9149407609'}, 'msg': 'Order Data', 'status': True, 'rstatus': True}, 'server_status': 'order-started', 'order_id': 'TM06202507260622114019369'}
[2026-06-22 11:44:54,803.803 INFO    ] 200
[2026-06-22 11:44:54,830.830 INFO    ] {"data":{"server_response":{"data":{"bill_amount":"40.0","access_code":"82111725","invoice_bill":"40.0","order_id":"TM06202507260622114019369","proposed_sku_json":[{"sku_total":10,"qty":1,"skuid":"4500714","offer_desc":"","mrp":"10","tray_id":"15","offer_id":"","image_url":"https:\/\/images.tinymart.in\/product\/4500714-2989.png","unit_price":10,"name":"McVities Triple Nut Cookies 58gm","door_id":"1"},{"sku_total":30,"qty":1,"skuid":"4500668","offer_desc":"","mrp":"30","tray_id":"14","offer_id":"","image_url":"https:\/\/images.tinymart.in\/product\/4500668-1144.jpg","unit_price":30,"name":"Farmely Panchmeva 21gm","door_id":"1"}],"mobile":"9149407609"},"msg":"Order Data","status":true,"rstatus":true},"server_status":"order-started","order_id":"TM06202507260622114019369"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 11:44:54,848.848 INFO    ] {'data': {'order_id': 'TM06202507260622114019369', 'server_response': {'data': {'bill_amount': '40.0', 'access_code': '82111725', 'mobile': '9149407609', 'invoice_bill': '40.0', 'proposed_sku_json': [{'sku_total': 10, 'qty': 1, 'unit_price': 10, 'offer_desc': '', 'mrp': '10', 'tray_id': '15', 'door_id': '1', 'image_url': 'https://images.tinymart.in/product/4500714-2989.png', 'skuid': '4500714', 'name': 'McVities Triple Nut Cookies 58gm', 'offer_id': ''}, {'sku_total': 30, 'qty': 1, 'unit_price': 30, 'offer_desc': '', 'mrp': '30', 'tray_id': '14', 'door_id': '1', 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'skuid': '4500668', 'name': 'Farmely Panchmeva 21gm', 'offer_id': ''}], 'order_id': 'TM06202507260622114019369'}, 'msg': 'Order Data', 'status': True, 'rstatus': True}, 'server_status': 'order-started'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-06-22 11:44:54,853.853 INFO    ] 2026-06-22 11:44:54
[2026-06-22 11:44:54,901.901 INFO    ] 200
[2026-06-22 11:44:54,904.904 INFO    ] True
[2026-06-22 11:44:55,054.054 INFO    ] 200
[2026-06-22 11:44:55,057.057 INFO    ] {"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": ""}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 11:44:55,060.060 INFO    ] {'rstatus': False, 'error': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'voiceNote': 'Please Wait', '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 :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False'}
[2026-06-22 11:44:55,064.064 INFO    ] *** process_order ***
[2026-06-22 11:44:56,247.247 INFO    ] 200
[2026-06-22 11:44:56,250.250 INFO    ] {"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": ""}, "rstatus": true, "delay": 0, "status": "True", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 11:44:56,252.252 INFO    ] {'rstatus': True, 'delay': 0, '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 :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'voiceNote': 'Please Wait'}
[2026-06-22 11:44:56,255.255 INFO    ] *** process_order ***
[2026-06-22 11:44:56,257.257 INFO    ] publish_status: order_id=TM06202507260622114019369
[2026-06-22 11:44:56,260.260 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622114019369
[2026-06-22 11:44:56,330.330 INFO    ] [publish_status] Message added to stream with ID: 1782108896280-0
[2026-06-22 11:44:56,333.333 INFO    ] Published to order:TM06202507260622114019369: {'server_response': '{"rstatus": true, "delay": 0, "SectionStatus": {"Note": "", "SubHeader": "You can pull the door now.", "Header": " Your order is under process  ", "UI_Header": ""}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "status": "True", "voiceNote": "Door is open..."}', 'server_status': 'doorOpened', 'order_id': 'TM06202507260622114019369'} (ID: 1782108896280-0)
[2026-06-22 11:44:57,392.392 INFO    ] 2026-06-22 11:44:57
[2026-06-22 11:44:57,395.395 INFO    ] publish_status: order_id=TM06202507260622114019369
[2026-06-22 11:44:57,398.398 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622114019369
[2026-06-22 11:44:57,490.490 INFO    ] [publish_status] Message added to stream with ID: 1782108897440-0
[2026-06-22 11:44:57,493.493 INFO    ] Published to order:TM06202507260622114019369: {'server_response': '{"rstatus": true, "delay": 0, "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 :)"}, "SectionMain": {"Header": "Processing Order"}, "status": "True", "voiceNote": "Please Wait"}', 'timestamp': '2026-06-22T06:14:57.393437Z', 'server_status': 'processOrder', 'order_id': 'TM06202507260622114019369'} (ID: 1782108897440-0)
[2026-06-22 11:44:57,637.637 INFO    ] {'server_response': {'rstatus': True, 'delay': 0, '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 :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'voiceNote': 'Please Wait'}, 'server_status': 'processOrder', 'order_id': 'TM06202507260622114019369'}
[2026-06-22 11:44:57,639.639 INFO    ] 200
[2026-06-22 11:44:57,642.642 INFO    ] {"data":{"server_response":{"rstatus":true,"delay":0,"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 :)"},"SectionMain":{"Header":"Processing Order"},"status":"true","voiceNote":"Please Wait"},"server_status":"processOrder","order_id":"TM06202507260622114019369"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 11:44:57,646.646 INFO    ] {'data': {'order_id': 'TM06202507260622114019369', 'server_response': {'rstatus': True, 'status': 'true', '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 :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'voiceNote': 'Please Wait'}, 'server_status': 'processOrder'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-06-22 11:44:57,649.649 INFO    ] 2026-06-22 11:44:57
[2026-06-22 11:44:57,651.651 INFO    ] None
[2026-06-22 11:44:57,654.654 INFO    ] Opening Door now
[2026-06-22 11:44:57,657.657 INFO    ] Opening Door now
[2026-06-22 11:44:57,659.659 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-22 11:44:57,662.662 INFO    ] 2026-06-22 11:44:57
[2026-06-22 11:44:57,664.664 INFO    ] playing audio file
[2026-06-22 11:44:57,682.682 INFO    ] 2026-06-22 11:44:57
[2026-06-22 11:44:57,685.685 INFO    ] 2026-06-22 11:44:57
[2026-06-22 11:45:00,752.752 INFO    ] 200
[2026-06-22 11:45:00,755.755 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "McVities Triple Nut Cookies 58gm"}, {"qty": 1, "name": "Farmely Panchmeva 21gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Door 1 is open now"}
[2026-06-22 11:45:00,759.759 INFO    ] {'rstatus': False, 'error': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'voiceNote': 'Door 1 is open now', 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'McVities Triple Nut Cookies 58gm'}, {'qty': 1, 'name': 'Farmely Panchmeva 21gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-22 11:45:03,847.847 INFO    ] 200
[2026-06-22 11:45:03,850.850 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "McVities Triple Nut Cookies 58gm"}, {"qty": 1, "name": "Farmely Panchmeva 21gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 11:45:03,853.853 INFO    ] {'rstatus': False, 'error': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'McVities Triple Nut Cookies 58gm'}, {'qty': 1, 'name': 'Farmely Panchmeva 21gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-22 11:45:06,910.910 INFO    ] 200
[2026-06-22 11:45:06,913.913 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "McVities Triple Nut Cookies 58gm"}, {"qty": 1, "name": "Farmely Panchmeva 21gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 11:45:06,916.916 INFO    ] Please close door 1
[2026-06-22 11:45:06,918.918 INFO    ] Please close door 1
[2026-06-22 11:45:06,921.921 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-22 11:45:06,924.924 INFO    ] 2026-06-22 11:45:06
[2026-06-22 11:45:06,927.927 INFO    ] playing audio file
[2026-06-22 11:45:06,943.943 INFO    ] 2026-06-22 11:45:06
[2026-06-22 11:45:06,947.947 INFO    ] publish_status: order_id=TM06202507260622114019369
[2026-06-22 11:45:06,950.950 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622114019369
[2026-06-22 11:45:07,053.053 INFO    ] [publish_status] Message added to stream with ID: 1782108907001-0
[2026-06-22 11:45:07,057.057 INFO    ] Published to order:TM06202507260622114019369: {'server_response': '{"rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "voiceNote": "Please close door 1", "SectionStatus": {"Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW"}, "SectionSKU": {"skus": [{"qty": 1, "name": "McVities Triple Nut Cookies 58gm"}, {"qty": 1, "name": "Farmely Panchmeva 21gm"}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "status": "False"}', 'timestamp': '2026-06-22T06:15:06.945224Z', 'server_status': 'OrderStatus', 'order_id': 'TM06202507260622114019369'} (ID: 1782108907001-0)
[2026-06-22 11:45:07,665.665 INFO    ] {'server_response': {'rstatus': False, 'error': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'McVities Triple Nut Cookies 58gm'}, {'qty': 1, 'name': 'Farmely Panchmeva 21gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}, 'server_status': 'OrderStatus', 'order_id': 'TM06202507260622114019369'}
[2026-06-22 11:45:07,669.669 INFO    ] 200
[2026-06-22 11:45:07,672.672 INFO    ] {"data":{"server_response":{"rstatus":false,"error":{"data":[],"code":20001,"tmessage":"In Progress","umessage":"In Progress"},"voiceNote":"Please close door 1","SectionStatus":{"Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 1","UI_Header":"DOOR 1\nIS \nOPEN \nNOW"},"SectionSKU":{"skus":[{"qty":1,"name":"McVities Triple Nut Cookies 58gm"},{"qty":1,"name":"Farmely Panchmeva 21gm"}],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"status":"false"},"server_status":"OrderStatus","order_id":"TM06202507260622114019369"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 11:45:07,676.676 INFO    ] {'data': {'order_id': 'TM06202507260622114019369', 'server_response': {'rstatus': False, 'error': {'data': [], 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'McVities Triple Nut Cookies 58gm'}, {'qty': 1, 'name': 'Farmely Panchmeva 21gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false'}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-06-22 11:45:07,680.680 INFO    ] {'rstatus': False, 'error': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'McVities Triple Nut Cookies 58gm'}, {'qty': 1, 'name': 'Farmely Panchmeva 21gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-22 11:45:10,745.745 INFO    ] 200
[2026-06-22 11:45:10,749.749 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "McVities Triple Nut Cookies 58gm"}, {"qty": 1, "name": "Farmely Panchmeva 21gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 11:45:10,752.752 INFO    ] {'rstatus': False, 'error': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'McVities Triple Nut Cookies 58gm'}, {'qty': 1, 'name': 'Farmely Panchmeva 21gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-22 11:45:13,817.817 INFO    ] 200
[2026-06-22 11:45:13,820.820 INFO    ] {"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"}, "rstatus": true, "delay": 100, "status": "True", "SectionMain": {"Header": "Door Closed"}, "voiceNote": "Transaction Completed"}
[2026-06-22 11:45:13,823.823 INFO    ] {'rstatus': True, 'delay': 100, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'UI_Header': ''}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'voiceNote': 'Transaction Completed'}
[2026-06-22 11:45:13,827.827 INFO    ] 2026-06-22 11:45:13
[2026-06-22 11:45:13,830.830 INFO    ] Order Completed 
[2026-06-22 11:45:13,833.833 INFO    ] Order Completed 
[2026-06-22 11:45:13,836.836 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-22 11:45:13,840.840 INFO    ] 2026-06-22 11:45:13
[2026-06-22 11:45:13,843.843 INFO    ] playing audio file
[2026-06-22 11:45:13,863.863 INFO    ] 2026-06-22 11:45:13
[2026-06-22 11:45:13,866.866 INFO    ] {'rstatus': True, 'delay': 100, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'UI_Header': ''}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'voiceNote': 'Transaction Completed'}
[2026-06-22 11:45:13,870.870 INFO    ] 2026-06-22 11:45:13
[2026-06-22 11:45:16,467.467 INFO    ] 200
[2026-06-22 11:45:16,471.471 INFO    ] {"skus": [{"tray_id": "14", "qty": 1, "mrp": "30", "door_id": "", "name": "Farmely Panchmeva 21gm per peice", "sku_total": 30.0, "image_url": "https://images.tinymart.in/product/4500668-1144.jpg", "unit_price": "30", "skuid": "4500668"}, {"tray_id": "15", "qty": 1, "mrp": "10", "door_id": "", "name": "McVities Triple Nut Cookies 58gm per peice", "sku_total": 10.0, "image_url": "https://images.tinymart.in/product/4500714-2989.png", "unit_price": "10", "skuid": "4500714"}], "anomaly": 0, "rstatus": true, "orderId": "TM06202507260622114019369", "logic": "WBL", "total_amount": 40.0, "res": "True"}
[2026-06-22 11:45:16,475.475 INFO    ] {'rstatus': True, 'logic': 'WBL', 'anomaly': 0, 'total_amount': 40.0, 'skus': [{'sku_total': 30.0, 'qty': 1, 'skuid': '4500668', 'mrp': '30', 'tray_id': '14', 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'unit_price': '30', 'name': 'Farmely Panchmeva 21gm per peice', 'door_id': ''}, {'sku_total': 10.0, 'qty': 1, 'skuid': '4500714', 'mrp': '10', 'tray_id': '15', 'image_url': 'https://images.tinymart.in/product/4500714-2989.png', 'unit_price': '10', 'name': 'McVities Triple Nut Cookies 58gm per peice', 'door_id': ''}], 'res': 'True', 'orderId': 'TM06202507260622114019369'}
[2026-06-22 11:45:16,478.478 INFO    ] {'rstatus': True, 'logic': 'WBL', 'anomaly': 0, 'total_amount': 40.0, 'skus': [{'sku_total': 30.0, 'qty': 1, 'skuid': '4500668', 'mrp': '30', 'tray_id': '14', 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'unit_price': '30', 'name': 'Farmely Panchmeva 21gm per peice', 'door_id': ''}, {'sku_total': 10.0, 'qty': 1, 'skuid': '4500714', 'mrp': '10', 'tray_id': '15', 'image_url': 'https://images.tinymart.in/product/4500714-2989.png', 'unit_price': '10', 'name': 'McVities Triple Nut Cookies 58gm per peice', 'door_id': ''}], 'res': 'True', 'orderId': 'TM06202507260622114019369'}
[2026-06-22 11:45:16,481.481 INFO    ] 2026-06-22 11:45:16
[2026-06-22 11:45:16,484.484 INFO    ] 2026-06-22 11:45:16
[2026-06-22 11:45:16,486.486 INFO    ] 40
[2026-06-22 11:45:16,489.489 INFO    ] 2026-06-22 11:45:16
[2026-06-22 11:45:16,492.492 INFO    ] 2026-06-22 11:45:16
[2026-06-22 11:45:16,495.495 INFO    ]  Your Bill Amount is 40
[2026-06-22 11:45:16,497.497 INFO    ]  Your Bill Amount is 40
[2026-06-22 11:45:16,500.500 INFO    ] 88965e4060b051d18121185ac205626e
[2026-06-22 11:45:16,503.503 INFO    ] 2026-06-22 11:45:16
[2026-06-22 11:45:16,506.506 INFO    ] playing audio file
[2026-06-22 11:45:16,524.524 INFO    ] 2026-06-22 11:45:16
[2026-06-22 11:45:16,528.528 INFO    ] 2026-06-22 11:45:16
[2026-06-22 11:45:16,531.531 INFO    ] publish_status: order_id=TM06202507260622114019369
[2026-06-22 11:45:16,535.535 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622114019369
[2026-06-22 11:45:16,602.602 INFO    ] [publish_status] Message added to stream with ID: 1782108916551-0
[2026-06-22 11:45:16,605.605 INFO    ] Published to order:TM06202507260622114019369: {'server_response': '{"rstatus": true, "logic": "WBL", "anomaly": 0, "total_amount": 40.0, "skus": [{"sku_total": 30.0, "qty": 1, "skuid": "4500668", "mrp": "30", "tray_id": "14", "image_url": "https://images.tinymart.in/product/4500668-1144.jpg", "unit_price": "30", "name": "Farmely Panchmeva 21gm per peice", "door_id": ""}, {"sku_total": 10.0, "qty": 1, "skuid": "4500714", "mrp": "10", "tray_id": "15", "image_url": "https://images.tinymart.in/product/4500714-2989.png", "unit_price": "10", "name": "McVities Triple Nut Cookies 58gm per peice", "door_id": ""}], "res": "True", "orderId": "TM06202507260622114019369"}', 'timestamp': '2026-06-22T06:15:16.529608Z', 'server_status': 'invoiceOrder', 'order_id': 'TM06202507260622114019369'} (ID: 1782108916551-0)
[2026-06-22 11:45:17,192.192 INFO    ] {'server_response': {'rstatus': True, 'logic': 'WBL', 'anomaly': 0, 'total_amount': 40.0, 'skus': [{'sku_total': 30.0, 'qty': 1, 'skuid': '4500668', 'mrp': '30', 'tray_id': '14', 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'unit_price': '30', 'name': 'Farmely Panchmeva 21gm per peice', 'door_id': ''}, {'sku_total': 10.0, 'qty': 1, 'skuid': '4500714', 'mrp': '10', 'tray_id': '15', 'image_url': 'https://images.tinymart.in/product/4500714-2989.png', 'unit_price': '10', 'name': 'McVities Triple Nut Cookies 58gm per peice', 'door_id': ''}], 'res': 'True', 'orderId': 'TM06202507260622114019369'}, 'server_status': 'invoiceOrder', 'order_id': 'TM06202507260622114019369'}
[2026-06-22 11:45:17,196.196 INFO    ] 200
[2026-06-22 11:45:17,199.199 INFO    ] {"data":{"server_response":{"rstatus":true,"logic":"WBL","anomaly":0,"total_amount":40,"skus":[{"sku_total":30,"qty":1,"skuid":"4500668","mrp":"30","tray_id":"14","image_url":"https:\/\/images.tinymart.in\/product\/4500668-1144.jpg","unit_price":"30","name":"Farmely Panchmeva 21gm per peice","door_id":""},{"sku_total":10,"qty":1,"skuid":"4500714","mrp":"10","tray_id":"15","image_url":"https:\/\/images.tinymart.in\/product\/4500714-2989.png","unit_price":"10","name":"McVities Triple Nut Cookies 58gm per peice","door_id":""}],"res":"true","orderId":"TM06202507260622114019369"},"server_status":"invoiceOrder","order_id":"TM06202507260622114019369"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 11:45:17,203.203 INFO    ] {'data': {'order_id': 'TM06202507260622114019369', 'server_response': {'rstatus': True, 'logic': 'WBL', 'anomaly': 0, 'total_amount': 40, 'skus': [{'sku_total': 30, 'qty': 1, 'mrp': '30', 'tray_id': '14', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'skuid': '4500668', 'name': 'Farmely Panchmeva 21gm per peice', 'unit_price': '30'}, {'sku_total': 10, 'qty': 1, 'mrp': '10', 'tray_id': '15', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500714-2989.png', 'skuid': '4500714', 'name': 'McVities Triple Nut Cookies 58gm per peice', 'unit_price': '10'}], 'res': 'true', 'orderId': 'TM06202507260622114019369'}, 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-06-22 11:45:17,211.211 INFO    ] {'data': {'order_id': 'TM06202507260622114019369', 'server_response': {'rstatus': True, 'logic': 'WBL', 'anomaly': 0, 'total_amount': 40, 'skus': [{'sku_total': 30, 'qty': 1, 'mrp': '30', 'tray_id': '14', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'skuid': '4500668', 'name': 'Farmely Panchmeva 21gm per peice', 'unit_price': '30'}, {'sku_total': 10, 'qty': 1, 'mrp': '10', 'tray_id': '15', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500714-2989.png', 'skuid': '4500714', 'name': 'McVities Triple Nut Cookies 58gm per peice', 'unit_price': '10'}], 'res': 'true', 'orderId': 'TM06202507260622114019369'}, 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}}
[2026-06-22 11:45:17,220.220 INFO    ] 2026-06-22 11:45:17
[2026-06-22 11:45:20,963.963 INFO    ] 200
[2026-06-22 11:45:20,966.966 INFO    ] {"orders_data_synced": [], "order_items": [], "orders_data": [], "orders_synced": [], "tray_synced": ["TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369", "TM06202507260622114019369"], "order_items_synced": ["TM06202507260622114019369_0", "TM06202507260622114019369_1"], "orders": [], "status": true, "tray_sync": []}
[2026-06-22 11:45:20,969.969 INFO    ] 2026-06-22 11:45:20
[2026-06-22 11:45:21,097.097 INFO    ] 200
[2026-06-22 11:45:21,100.100 INFO    ] True
[2026-06-22 11:45:21,102.102 INFO    ] cleanup_start_order_file_after_processing: order_id=TM06202507260622114019369
[2026-06-22 11:45:21,106.106 INFO    ] start order file deleted
[2026-06-22 11:45:21,108.108 INFO    ] Checking for system updates...
[2026-06-22 11:45:21,142.142 INFO    ] 200
[2026-06-22 11:45:21,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:45:21,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:45:21,202.202 INFO    ] No update needed
[2026-06-22 11:45:21,205.205 INFO    ] Checking for camera pi updates...
[2026-06-22 11:45:21,243.243 INFO    ] 200
[2026-06-22 11:45:21,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:45:21,288.288 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:45:21,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:45:21,387.387 INFO    ] No camera update needed
[2026-06-22 11:45:21,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:45:21,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:45:21,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:45:21,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:45:23,444.444 INFO    ] ================================================
[2026-06-22 11:45:23,459.459 INFO    ] Launching Daemon at Mon Jun 22 11:45:23 IST 2026
[2026-06-22 11:45:23,469.469 INFO    ] ================================================
[2026-06-22 11:45:24,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:45:24
[2026-06-22 11:45:24,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:45:24,853.853 INFO    ] Initializing speech engine...
[2026-06-22 11:45:24,861.861 INFO    ] 2026-06-22 11:45:24
[2026-06-22 11:45:25,106.106 INFO    ] 2026-06-22 11:45:25
[2026-06-22 11:45:25,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:45:25,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:45:25,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:45:25,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:45:25,581.581 INFO    ] time= 22/06/2026 11:45:25
[2026-06-22 11:45:25,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:45:25,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:45:25,802.802 INFO    ] No existing commands found in stream
[2026-06-22 11:45:30,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:45:30,835.835 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-22 11:45:33,221.221 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:45:33,224.224 INFO    ] Checking for system updates...
[2026-06-22 11:45:33,261.261 INFO    ] 200
[2026-06-22 11:45:33,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:45:33,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:45:33,327.327 INFO    ] No update needed
[2026-06-22 11:45:33,329.329 INFO    ] Checking for camera pi updates...
[2026-06-22 11:45:33,367.367 INFO    ] 200
[2026-06-22 11:45:33,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:45:33,415.415 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:45:33,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:45:33,503.503 INFO    ] No camera update needed
[2026-06-22 11:45:33,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:45:33,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:45:33,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:45:33,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:45:35,558.558 INFO    ] ================================================
[2026-06-22 11:45:35,574.574 INFO    ] Launching Daemon at Mon Jun 22 11:45:35 IST 2026
[2026-06-22 11:45:35,584.584 INFO    ] ================================================
[2026-06-22 11:45:36,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:45:36
[2026-06-22 11:45:36,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:45:36,927.927 INFO    ] Initializing speech engine...
[2026-06-22 11:45:36,950.950 INFO    ] 2026-06-22 11:45:36
[2026-06-22 11:45:37,207.207 INFO    ] 2026-06-22 11:45:37
[2026-06-22 11:45:37,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:45:37,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:45:37,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:45:37,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:45:37,706.706 INFO    ] time= 22/06/2026 11:45:37
[2026-06-22 11:45:37,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:45:37,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:45:37,932.932 INFO    ] No existing commands found in stream
[2026-06-22 11:45:42,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:45:42,952.952 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-22 11:45:43,816.816 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:45:43,819.819 INFO    ] Checking for system updates...
[2026-06-22 11:45:43,859.859 INFO    ] 200
[2026-06-22 11:45:43,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:45:43,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:45:43,918.918 INFO    ] No update needed
[2026-06-22 11:45:43,921.921 INFO    ] Checking for camera pi updates...
[2026-06-22 11:45:43,955.955 INFO    ] 200
[2026-06-22 11:45:43,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:45:44,003.003 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:45:44,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:45:44,211.211 INFO    ] No camera update needed
[2026-06-22 11:45:44,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:45:44,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:45:44,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:45:44,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:45:46,269.269 INFO    ] ================================================
[2026-06-22 11:45:46,284.284 INFO    ] Launching Daemon at Mon Jun 22 11:45:46 IST 2026
[2026-06-22 11:45:46,295.295 INFO    ] ================================================
[2026-06-22 11:45:46,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:45:46
[2026-06-22 11:45:47,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:45:47,728.728 INFO    ] Initializing speech engine...
[2026-06-22 11:45:47,737.737 INFO    ] 2026-06-22 11:45:47
[2026-06-22 11:45:47,983.983 INFO    ] 2026-06-22 11:45:47
[2026-06-22 11:45:48,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:45:48,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:45:48,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:45:48,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:45:48,524.524 INFO    ] time= 22/06/2026 11:45:48
[2026-06-22 11:45:48,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:45:48,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:45:48,691.691 INFO    ] No existing commands found in stream
[2026-06-22 11:45:53,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:45:53,713.713 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-22 11:45:54,779.779 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:45:54,782.782 INFO    ] Checking for system updates...
[2026-06-22 11:45:54,823.823 INFO    ] 200
[2026-06-22 11:45:54,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:45:54,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:45:54,889.889 INFO    ] No update needed
[2026-06-22 11:45:54,891.891 INFO    ] Checking for camera pi updates...
[2026-06-22 11:45:54,926.926 INFO    ] 200
[2026-06-22 11:45:54,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:45:54,979.979 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:45:55,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:45:55,077.077 INFO    ] No camera update needed
[2026-06-22 11:45:55,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:45:55,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:45:55,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:45:55,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:45:57,134.134 INFO    ] ================================================
[2026-06-22 11:45:57,150.150 INFO    ] Launching Daemon at Mon Jun 22 11:45:57 IST 2026
[2026-06-22 11:45:57,161.161 INFO    ] ================================================
[2026-06-22 11:45:57,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:45:57
[2026-06-22 11:45:58,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:45:58,527.527 INFO    ] Initializing speech engine...
[2026-06-22 11:45:58,534.534 INFO    ] 2026-06-22 11:45:58
[2026-06-22 11:45:58,837.837 INFO    ] 2026-06-22 11:45:58
[2026-06-22 11:45:58,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:45:59,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:45:59,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:45:59,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:45:59,220.220 INFO    ] time= 22/06/2026 11:45:59
[2026-06-22 11:45:59,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:45:59,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:45:59,415.415 INFO    ] No existing commands found in stream
[2026-06-22 11:46:04,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:46:04,427.427 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-22 11:46:06,184.184 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:46:06,187.187 INFO    ] Checking for system updates...
[2026-06-22 11:46:06,226.226 INFO    ] 200
[2026-06-22 11:46:06,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:46:06,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:46:06,290.290 INFO    ] No update needed
[2026-06-22 11:46:06,292.292 INFO    ] Checking for camera pi updates...
[2026-06-22 11:46:06,329.329 INFO    ] 200
[2026-06-22 11:46:06,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:46:06,373.373 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:46:06,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:46:06,457.457 INFO    ] No camera update needed
[2026-06-22 11:46:06,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:46:06,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:46:06,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:46:06,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:46:08,504.504 INFO    ] ================================================
[2026-06-22 11:46:08,519.519 INFO    ] Launching Daemon at Mon Jun 22 11:46:08 IST 2026
[2026-06-22 11:46:08,530.530 INFO    ] ================================================
[2026-06-22 11:46:09,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:46:09
[2026-06-22 11:46:09,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:46:09,948.948 INFO    ] Initializing speech engine...
[2026-06-22 11:46:09,961.961 INFO    ] 2026-06-22 11:46:09
[2026-06-22 11:46:10,209.209 INFO    ] 2026-06-22 11:46:10
[2026-06-22 11:46:10,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:46:10,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:46:10,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:46:10,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:46:10,710.710 INFO    ] time= 22/06/2026 11:46:10
[2026-06-22 11:46:10,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:46:10,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:46:10,921.921 INFO    ] No existing commands found in stream
[2026-06-22 11:46:15,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:46:15,949.949 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-22 11:46:18,916.916 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:46:18,919.919 INFO    ] Checking for system updates...
[2026-06-22 11:46:18,959.959 INFO    ] 200
[2026-06-22 11:46:18,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:46:19,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:46:19,018.018 INFO    ] No update needed
[2026-06-22 11:46:19,021.021 INFO    ] Checking for camera pi updates...
[2026-06-22 11:46:19,055.055 INFO    ] 200
[2026-06-22 11:46:19,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:46:19,098.098 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:46:19,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:46:19,182.182 INFO    ] No camera update needed
[2026-06-22 11:46:19,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:46:19,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:46:19,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:46:19,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:46:21,237.237 INFO    ] ================================================
[2026-06-22 11:46:21,252.252 INFO    ] Launching Daemon at Mon Jun 22 11:46:21 IST 2026
[2026-06-22 11:46:21,263.263 INFO    ] ================================================
[2026-06-22 11:46:21,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:46:21
[2026-06-22 11:46:22,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:46:22,665.665 INFO    ] Initializing speech engine...
[2026-06-22 11:46:22,671.671 INFO    ] 2026-06-22 11:46:22
[2026-06-22 11:46:22,969.969 INFO    ] 2026-06-22 11:46:22
[2026-06-22 11:46:23,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:46:23,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:46:23,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:46:23,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:46:23,387.387 INFO    ] time= 22/06/2026 11:46:23
[2026-06-22 11:46:23,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:46:23,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:46:23,596.596 INFO    ] No existing commands found in stream
[2026-06-22 11:46:28,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:46:28,618.618 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-22 11:46:30,200.200 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:46:30,202.202 INFO    ] Checking for system updates...
[2026-06-22 11:46:30,238.238 INFO    ] 200
[2026-06-22 11:46:30,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:46:30,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:46:30,297.297 INFO    ] No update needed
[2026-06-22 11:46:30,299.299 INFO    ] Checking for camera pi updates...
[2026-06-22 11:46:30,337.337 INFO    ] 200
[2026-06-22 11:46:30,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:46:30,380.380 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:46:30,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:46:30,465.465 INFO    ] No camera update needed
[2026-06-22 11:46:30,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:46:30,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:46:30,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:46:30,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:46:32,530.530 INFO    ] ================================================
[2026-06-22 11:46:32,547.547 INFO    ] Launching Daemon at Mon Jun 22 11:46:32 IST 2026
[2026-06-22 11:46:32,559.559 INFO    ] ================================================
[2026-06-22 11:46:33,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:46:33
[2026-06-22 11:46:33,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:46:34,041.041 INFO    ] Initializing speech engine...
[2026-06-22 11:46:34,050.050 INFO    ] 2026-06-22 11:46:34
[2026-06-22 11:46:34,309.309 INFO    ] 2026-06-22 11:46:34
[2026-06-22 11:46:34,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:46:34,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:46:34,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:46:34,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:46:34,788.788 INFO    ] time= 22/06/2026 11:46:34
[2026-06-22 11:46:34,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:46:34,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:46:34,977.977 INFO    ] No existing commands found in stream
[2026-06-22 11:46:40,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:46:40,013.013 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-22 11:46:43,788.788 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:46:43,791.791 INFO    ] Checking for system updates...
[2026-06-22 11:46:43,829.829 INFO    ] 200
[2026-06-22 11:46:43,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:46:43,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:46:43,893.893 INFO    ] No update needed
[2026-06-22 11:46:43,896.896 INFO    ] Checking for camera pi updates...
[2026-06-22 11:46:43,935.935 INFO    ] 200
[2026-06-22 11:46:43,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:46:43,983.983 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:46:44,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:46:44,063.063 INFO    ] No camera update needed
[2026-06-22 11:46:44,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:46:44,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:46:44,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:46:44,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:46:46,123.123 INFO    ] ================================================
[2026-06-22 11:46:46,138.138 INFO    ] Launching Daemon at Mon Jun 22 11:46:46 IST 2026
[2026-06-22 11:46:46,150.150 INFO    ] ================================================
[2026-06-22 11:46:46,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:46:46
[2026-06-22 11:46:47,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:46:47,559.559 INFO    ] Initializing speech engine...
[2026-06-22 11:46:47,568.568 INFO    ] 2026-06-22 11:46:47
[2026-06-22 11:46:47,859.859 INFO    ] 2026-06-22 11:46:47
[2026-06-22 11:46:47,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:46:48,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:46:48,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:46:48,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:46:48,486.486 INFO    ] time= 22/06/2026 11:46:48
[2026-06-22 11:46:48,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:46:48,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:46:48,660.660 INFO    ] No existing commands found in stream
[2026-06-22 11:46:53,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:46:53,675.675 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-22 11:46:54,192.192 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:46:54,195.195 INFO    ] Checking for system updates...
[2026-06-22 11:46:54,235.235 INFO    ] 200
[2026-06-22 11:46:54,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:46:54,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:46:54,298.298 INFO    ] No update needed
[2026-06-22 11:46:54,300.300 INFO    ] Checking for camera pi updates...
[2026-06-22 11:46:54,334.334 INFO    ] 200
[2026-06-22 11:46:54,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:46:54,377.377 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:46:54,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:46:54,468.468 INFO    ] No camera update needed
[2026-06-22 11:46:54,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:46:54,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:46:54,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:46:54,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:46:56,523.523 INFO    ] ================================================
[2026-06-22 11:46:56,538.538 INFO    ] Launching Daemon at Mon Jun 22 11:46:56 IST 2026
[2026-06-22 11:46:56,549.549 INFO    ] ================================================
[2026-06-22 11:46:57,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:46:57
[2026-06-22 11:46:57,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:46:58,151.151 INFO    ] Initializing speech engine...
[2026-06-22 11:46:58,159.159 INFO    ] 2026-06-22 11:46:58
[2026-06-22 11:46:58,474.474 INFO    ] 2026-06-22 11:46:58
[2026-06-22 11:46:58,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:46:58,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:46:58,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:46:58,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:46:58,983.983 INFO    ] time= 22/06/2026 11:46:58
[2026-06-22 11:46:59,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:46:59,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:46:59,160.160 INFO    ] No existing commands found in stream
[2026-06-22 11:47:04,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:47:04,200.200 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-22 11:47:07,026.026 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:47:07,029.029 INFO    ] Checking for system updates...
[2026-06-22 11:47:07,068.068 INFO    ] 200
[2026-06-22 11:47:07,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:47:07,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:47:07,136.136 INFO    ] No update needed
[2026-06-22 11:47:07,139.139 INFO    ] Checking for camera pi updates...
[2026-06-22 11:47:07,174.174 INFO    ] 200
[2026-06-22 11:47:07,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:47:07,223.223 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:47:07,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:47:07,312.312 INFO    ] No camera update needed
[2026-06-22 11:47:07,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:47:07,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:47:07,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:47:07,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:47:09,371.371 INFO    ] ================================================
[2026-06-22 11:47:09,386.386 INFO    ] Launching Daemon at Mon Jun 22 11:47:09 IST 2026
[2026-06-22 11:47:09,397.397 INFO    ] ================================================
[2026-06-22 11:47:09,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:47:09
[2026-06-22 11:47:10,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:47:10,817.817 INFO    ] Initializing speech engine...
[2026-06-22 11:47:10,823.823 INFO    ] 2026-06-22 11:47:10
[2026-06-22 11:47:11,122.122 INFO    ] 2026-06-22 11:47:11
[2026-06-22 11:47:11,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:47:11,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:47:11,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:47:11,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:47:11,547.547 INFO    ] time= 22/06/2026 11:47:11
[2026-06-22 11:47:11,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:47:11,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:47:11,724.724 INFO    ] No existing commands found in stream
[2026-06-22 11:47:16,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:47:16,763.763 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-22 11:47:20,798.798 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:47:20,799.799 INFO    ] Checking for system updates...
[2026-06-22 11:47:20,824.824 INFO    ] 200
[2026-06-22 11:47:20,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:47:20,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:47:20,869.869 INFO    ] No update needed
[2026-06-22 11:47:20,872.872 INFO    ] Checking for camera pi updates...
[2026-06-22 11:47:20,906.906 INFO    ] 200
[2026-06-22 11:47:20,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:47:20,954.954 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:47:21,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:47:21,043.043 INFO    ] No camera update needed
[2026-06-22 11:47:21,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:47:21,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:47:21,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:47:21,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:47:23,102.102 INFO    ] ================================================
[2026-06-22 11:47:23,117.117 INFO    ] Launching Daemon at Mon Jun 22 11:47:23 IST 2026
[2026-06-22 11:47:23,128.128 INFO    ] ================================================
[2026-06-22 11:47:23,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:47:23
[2026-06-22 11:47:24,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:47:24,515.515 INFO    ] Initializing speech engine...
[2026-06-22 11:47:24,525.525 INFO    ] 2026-06-22 11:47:24
[2026-06-22 11:47:24,795.795 INFO    ] 2026-06-22 11:47:24
[2026-06-22 11:47:24,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:47:25,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:47:25,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:47:25,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:47:25,216.216 INFO    ] time= 22/06/2026 11:47:25
[2026-06-22 11:47:25,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:47:25,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:47:25,306.306 INFO    ] No existing commands found in stream
[2026-06-22 11:47:30,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:47:30,340.340 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-22 11:47:31,448.448 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:47:31,450.450 INFO    ] Checking for system updates...
[2026-06-22 11:47:31,490.490 INFO    ] 200
[2026-06-22 11:47:31,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:47:31,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:47:31,555.555 INFO    ] No update needed
[2026-06-22 11:47:31,557.557 INFO    ] Checking for camera pi updates...
[2026-06-22 11:47:31,607.607 INFO    ] 200
[2026-06-22 11:47:31,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:47:31,659.659 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:47:31,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:47:31,728.728 INFO    ] No camera update needed
[2026-06-22 11:47:31,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:47:31,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:47:31,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:47:31,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:47:33,790.790 INFO    ] ================================================
[2026-06-22 11:47:33,805.805 INFO    ] Launching Daemon at Mon Jun 22 11:47:33 IST 2026
[2026-06-22 11:47:33,816.816 INFO    ] ================================================
[2026-06-22 11:47:34,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:47:34
[2026-06-22 11:47:34,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:47:35,180.180 INFO    ] Initializing speech engine...
[2026-06-22 11:47:35,188.188 INFO    ] 2026-06-22 11:47:35
[2026-06-22 11:47:35,453.453 INFO    ] 2026-06-22 11:47:35
[2026-06-22 11:47:35,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:47:35,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:47:35,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:47:37,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:47:37,370.370 INFO    ] time= 22/06/2026 11:47:37
[2026-06-22 11:47:37,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:47:37,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:47:37,457.457 INFO    ] No existing commands found in stream
[2026-06-22 11:47:42,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:47:42,471.471 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-22 11:47:45,098.098 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:47:45,101.101 INFO    ] Checking for system updates...
[2026-06-22 11:47:45,138.138 INFO    ] 200
[2026-06-22 11:47:45,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:47:45,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:47:45,200.200 INFO    ] No update needed
[2026-06-22 11:47:45,202.202 INFO    ] Checking for camera pi updates...
[2026-06-22 11:47:45,238.238 INFO    ] 200
[2026-06-22 11:47:45,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:47:45,284.284 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:47:50,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:47:50,504.504 INFO    ] No camera update needed
[2026-06-22 11:47:50,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:47:50,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:47:50,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:47:50,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:47:52,563.563 INFO    ] ================================================
[2026-06-22 11:47:52,579.579 INFO    ] Launching Daemon at Mon Jun 22 11:47:52 IST 2026
[2026-06-22 11:47:52,590.590 INFO    ] ================================================
[2026-06-22 11:47:53,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:47:53
[2026-06-22 11:47:53,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:47:54,166.166 INFO    ] Initializing speech engine...
[2026-06-22 11:47:54,174.174 INFO    ] 2026-06-22 11:47:54
[2026-06-22 11:47:54,446.446 INFO    ] 2026-06-22 11:47:54
[2026-06-22 11:47:54,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:47:54,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:47:54,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:47:54,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:47:54,875.875 INFO    ] time= 22/06/2026 11:47:54
[2026-06-22 11:47:54,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:47:54,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:47:55,065.065 INFO    ] No existing commands found in stream
[2026-06-22 11:48:00,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:48:00,093.093 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-22 11:48:04,549.549 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:48:04,552.552 INFO    ] Checking for system updates...
[2026-06-22 11:48:04,589.589 INFO    ] 200
[2026-06-22 11:48:04,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:48:04,646.646 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:48:04,649.649 INFO    ] No update needed
[2026-06-22 11:48:04,652.652 INFO    ] Checking for camera pi updates...
[2026-06-22 11:48:04,690.690 INFO    ] 200
[2026-06-22 11:48:04,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:48:04,739.739 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:48:04,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:48:04,823.823 INFO    ] No camera update needed
[2026-06-22 11:48:04,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:48:04,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:48:04,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:48:04,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:48:06,884.884 INFO    ] ================================================
[2026-06-22 11:48:06,899.899 INFO    ] Launching Daemon at Mon Jun 22 11:48:06 IST 2026
[2026-06-22 11:48:06,910.910 INFO    ] ================================================
[2026-06-22 11:48:07,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:48:07
[2026-06-22 11:48:08,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:48:08,322.322 INFO    ] Initializing speech engine...
[2026-06-22 11:48:08,329.329 INFO    ] 2026-06-22 11:48:08
[2026-06-22 11:48:08,623.623 INFO    ] 2026-06-22 11:48:08
[2026-06-22 11:48:08,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:48:08,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:48:08,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:48:09,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:48:09,047.047 INFO    ] time= 22/06/2026 11:48:09
[2026-06-22 11:48:09,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:48:09,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:48:09,133.133 INFO    ] No existing commands found in stream
[2026-06-22 11:48:14,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:48:14,172.172 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-22 11:48:17,926.926 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:48:17,929.929 INFO    ] Checking for system updates...
[2026-06-22 11:48:17,965.965 INFO    ] 200
[2026-06-22 11:48:17,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:48:18,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:48:18,023.023 INFO    ] No update needed
[2026-06-22 11:48:18,026.026 INFO    ] Checking for camera pi updates...
[2026-06-22 11:48:18,061.061 INFO    ] 200
[2026-06-22 11:48:18,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:48:18,104.104 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:48:18,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:48:18,182.182 INFO    ] No camera update needed
[2026-06-22 11:48:18,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:48:18,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:48:18,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:48:18,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:48:20,238.238 INFO    ] ================================================
[2026-06-22 11:48:20,253.253 INFO    ] Launching Daemon at Mon Jun 22 11:48:20 IST 2026
[2026-06-22 11:48:20,264.264 INFO    ] ================================================
[2026-06-22 11:48:20,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:48:20
[2026-06-22 11:48:21,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:48:21,681.681 INFO    ] Initializing speech engine...
[2026-06-22 11:48:21,690.690 INFO    ] 2026-06-22 11:48:21
[2026-06-22 11:48:21,985.985 INFO    ] 2026-06-22 11:48:21
[2026-06-22 11:48:22,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:48:22,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:48:22,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:48:22,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:48:22,484.484 INFO    ] time= 22/06/2026 11:48:22
[2026-06-22 11:48:22,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:48:22,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:48:22,687.687 INFO    ] No existing commands found in stream
[2026-06-22 11:48:27,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:48:27,702.702 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-22 11:48:30,758.758 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:48:30,761.761 INFO    ] Checking for system updates...
[2026-06-22 11:48:30,797.797 INFO    ] 200
[2026-06-22 11:48:30,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:48:30,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:48:30,855.855 INFO    ] No update needed
[2026-06-22 11:48:30,857.857 INFO    ] Checking for camera pi updates...
[2026-06-22 11:48:30,892.892 INFO    ] 200
[2026-06-22 11:48:30,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:48:30,935.935 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:48:31,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:48:31,027.027 INFO    ] No camera update needed
[2026-06-22 11:48:31,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:48:31,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:48:31,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:48:31,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:48:33,083.083 INFO    ] ================================================
[2026-06-22 11:48:33,099.099 INFO    ] Launching Daemon at Mon Jun 22 11:48:33 IST 2026
[2026-06-22 11:48:33,110.110 INFO    ] ================================================
[2026-06-22 11:48:33,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:48:33
[2026-06-22 11:48:34,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:48:34,583.583 INFO    ] Initializing speech engine...
[2026-06-22 11:48:34,594.594 INFO    ] 2026-06-22 11:48:34
[2026-06-22 11:48:34,853.853 INFO    ] 2026-06-22 11:48:34
[2026-06-22 11:48:34,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:48:35,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:48:35,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:48:35,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:48:35,314.314 INFO    ] time= 22/06/2026 11:48:35
[2026-06-22 11:48:35,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:48:35,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:48:35,553.553 INFO    ] No existing commands found in stream
[2026-06-22 11:48:40,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:48:40,570.570 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-22 11:48:41,991.991 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:48:41,992.992 INFO    ] Checking for system updates...
[2026-06-22 11:48:42,013.013 INFO    ] 200
[2026-06-22 11:48:42,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:48:42,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:48:42,046.046 INFO    ] No update needed
[2026-06-22 11:48:42,047.047 INFO    ] Checking for camera pi updates...
[2026-06-22 11:48:42,067.067 INFO    ] 200
[2026-06-22 11:48:42,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:48:42,113.113 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:48:42,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:48:42,212.212 INFO    ] No camera update needed
[2026-06-22 11:48:42,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:48:42,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:48:42,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:48:42,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:48:44,268.268 INFO    ] ================================================
[2026-06-22 11:48:44,284.284 INFO    ] Launching Daemon at Mon Jun 22 11:48:44 IST 2026
[2026-06-22 11:48:44,295.295 INFO    ] ================================================
[2026-06-22 11:48:44,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:48:44
[2026-06-22 11:48:45,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:48:45,671.671 INFO    ] Initializing speech engine...
[2026-06-22 11:48:45,678.678 INFO    ] 2026-06-22 11:48:45
[2026-06-22 11:48:45,941.941 INFO    ] 2026-06-22 11:48:45
[2026-06-22 11:48:45,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:48:46,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:48:46,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:48:46,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:48:46,402.402 INFO    ] time= 22/06/2026 11:48:46
[2026-06-22 11:48:46,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:48:46,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:48:46,638.638 INFO    ] No existing commands found in stream
[2026-06-22 11:48:51,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:48:51,657.657 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-22 11:48:54,871.871 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:48:54,873.873 INFO    ] Checking for system updates...
[2026-06-22 11:48:54,906.906 INFO    ] 200
[2026-06-22 11:48:54,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:48:54,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:48:54,967.967 INFO    ] No update needed
[2026-06-22 11:48:54,970.970 INFO    ] Checking for camera pi updates...
[2026-06-22 11:48:55,005.005 INFO    ] 200
[2026-06-22 11:48:55,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:48:55,051.051 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:48:55,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:48:55,140.140 INFO    ] No camera update needed
[2026-06-22 11:48:55,143.143 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:48:55,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:48:55,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:48:55,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:48:57,200.200 INFO    ] ================================================
[2026-06-22 11:48:57,217.217 INFO    ] Launching Daemon at Mon Jun 22 11:48:57 IST 2026
[2026-06-22 11:48:57,228.228 INFO    ] ================================================
[2026-06-22 11:48:57,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:48:57
[2026-06-22 11:48:58,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:48:58,703.703 INFO    ] Initializing speech engine...
[2026-06-22 11:48:58,711.711 INFO    ] 2026-06-22 11:48:58
[2026-06-22 11:48:58,985.985 INFO    ] 2026-06-22 11:48:58
[2026-06-22 11:48:59,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:48:59,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:48:59,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:48:59,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:48:59,365.365 INFO    ] time= 22/06/2026 11:48:59
[2026-06-22 11:48:59,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:48:59,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:48:59,546.546 INFO    ] No existing commands found in stream
[2026-06-22 11:49:04,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:49:04,579.579 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-22 11:49:06,894.894 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:49:06,897.897 INFO    ] Checking for system updates...
[2026-06-22 11:49:06,939.939 INFO    ] 200
[2026-06-22 11:49:06,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:49:06,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:49:07,000.000 INFO    ] No update needed
[2026-06-22 11:49:07,002.002 INFO    ] Checking for camera pi updates...
[2026-06-22 11:49:07,036.036 INFO    ] 200
[2026-06-22 11:49:07,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:49:07,079.079 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:49:07,182.182 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:49:07,185.185 INFO    ] No camera update needed
[2026-06-22 11:49:07,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:49:07,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:49:07,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:49:07,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:49:09,241.241 INFO    ] ================================================
[2026-06-22 11:49:09,257.257 INFO    ] Launching Daemon at Mon Jun 22 11:49:09 IST 2026
[2026-06-22 11:49:09,268.268 INFO    ] ================================================
[2026-06-22 11:49:09,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:49:09
[2026-06-22 11:49:10,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:49:10,592.592 INFO    ] Initializing speech engine...
[2026-06-22 11:49:10,614.614 INFO    ] 2026-06-22 11:49:10
[2026-06-22 11:49:10,866.866 INFO    ] 2026-06-22 11:49:10
[2026-06-22 11:49:10,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:49:11,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:49:11,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:49:11,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:49:11,302.302 INFO    ] time= 22/06/2026 11:49:11
[2026-06-22 11:49:11,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:49:11,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:49:11,461.461 INFO    ] No existing commands found in stream
[2026-06-22 11:49:16,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:49:16,480.480 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-22 11:49:19,414.414 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:49:19,416.416 INFO    ] Checking for system updates...
[2026-06-22 11:49:19,437.437 INFO    ] 200
[2026-06-22 11:49:19,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:49:19,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:49:19,472.472 INFO    ] No update needed
[2026-06-22 11:49:19,473.473 INFO    ] Checking for camera pi updates...
[2026-06-22 11:49:19,492.492 INFO    ] 200
[2026-06-22 11:49:19,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:49:19,533.533 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:49:19,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:49:19,630.630 INFO    ] No camera update needed
[2026-06-22 11:49:19,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:49:19,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:49:19,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:49:19,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:49:21,688.688 INFO    ] ================================================
[2026-06-22 11:49:21,704.704 INFO    ] Launching Daemon at Mon Jun 22 11:49:21 IST 2026
[2026-06-22 11:49:21,715.715 INFO    ] ================================================
[2026-06-22 11:49:22,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:49:22
[2026-06-22 11:49:22,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:49:23,300.300 INFO    ] Initializing speech engine...
[2026-06-22 11:49:23,314.314 INFO    ] 2026-06-22 11:49:23
[2026-06-22 11:49:23,589.589 INFO    ] 2026-06-22 11:49:23
[2026-06-22 11:49:23,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:49:23,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:49:23,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:49:24,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:49:24,127.127 INFO    ] time= 22/06/2026 11:49:24
[2026-06-22 11:49:24,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:49:24,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:49:24,271.271 INFO    ] No existing commands found in stream
[2026-06-22 11:49:29,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:49:29,297.297 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-22 11:49:31,155.155 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:49:31,157.157 INFO    ] Checking for system updates...
[2026-06-22 11:49:31,178.178 INFO    ] 200
[2026-06-22 11:49:31,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:49:31,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:49:31,219.219 INFO    ] No update needed
[2026-06-22 11:49:31,222.222 INFO    ] Checking for camera pi updates...
[2026-06-22 11:49:31,257.257 INFO    ] 200
[2026-06-22 11:49:31,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:49:31,300.300 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:49:31,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:49:31,359.359 INFO    ] No camera update needed
[2026-06-22 11:49:31,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:49:31,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:49:31,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:49:31,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:49:33,421.421 INFO    ] ================================================
[2026-06-22 11:49:33,436.436 INFO    ] Launching Daemon at Mon Jun 22 11:49:33 IST 2026
[2026-06-22 11:49:33,447.447 INFO    ] ================================================
[2026-06-22 11:49:34,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:49:34
[2026-06-22 11:49:34,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:49:34,875.875 INFO    ] Initializing speech engine...
[2026-06-22 11:49:34,883.883 INFO    ] 2026-06-22 11:49:34
[2026-06-22 11:49:35,111.111 INFO    ] 2026-06-22 11:49:35
[2026-06-22 11:49:35,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:49:35,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:49:35,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:49:35,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:49:35,611.611 INFO    ] time= 22/06/2026 11:49:35
[2026-06-22 11:49:35,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:49:35,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:49:35,817.817 INFO    ] No existing commands found in stream
[2026-06-22 11:49:40,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:49:40,833.833 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-22 11:49:43,795.795 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:49:43,796.796 INFO    ] Checking for system updates...
[2026-06-22 11:49:43,821.821 INFO    ] 200
[2026-06-22 11:49:43,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:49:43,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:49:43,882.882 INFO    ] No update needed
[2026-06-22 11:49:43,885.885 INFO    ] Checking for camera pi updates...
[2026-06-22 11:49:43,918.918 INFO    ] 200
[2026-06-22 11:49:43,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:49:43,962.962 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:49:44,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:49:44,057.057 INFO    ] No camera update needed
[2026-06-22 11:49:44,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:49:44,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:49:44,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:49:44,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:49:46,112.112 INFO    ] ================================================
[2026-06-22 11:49:46,128.128 INFO    ] Launching Daemon at Mon Jun 22 11:49:46 IST 2026
[2026-06-22 11:49:46,139.139 INFO    ] ================================================
[2026-06-22 11:49:46,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:49:46
[2026-06-22 11:49:47,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:49:47,561.561 INFO    ] Initializing speech engine...
[2026-06-22 11:49:47,570.570 INFO    ] 2026-06-22 11:49:47
[2026-06-22 11:49:47,816.816 INFO    ] 2026-06-22 11:49:47
[2026-06-22 11:49:47,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:49:48,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:49:48,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:49:48,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:49:48,265.265 INFO    ] time= 22/06/2026 11:49:48
[2026-06-22 11:49:48,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:49:48,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:49:48,538.538 INFO    ] No existing commands found in stream
[2026-06-22 11:49:53,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:49:53,571.571 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-22 11:49:55,475.475 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:49:55,478.478 INFO    ] Checking for system updates...
[2026-06-22 11:49:55,518.518 INFO    ] 200
[2026-06-22 11:49:55,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:49:55,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:49:55,576.576 INFO    ] No update needed
[2026-06-22 11:49:55,578.578 INFO    ] Checking for camera pi updates...
[2026-06-22 11:49:55,612.612 INFO    ] 200
[2026-06-22 11:49:55,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:49:55,655.655 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:49:55,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:49:55,756.756 INFO    ] No camera update needed
[2026-06-22 11:49:55,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:49:55,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:49:55,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:49:55,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:49:57,810.810 INFO    ] ================================================
[2026-06-22 11:49:57,826.826 INFO    ] Launching Daemon at Mon Jun 22 11:49:57 IST 2026
[2026-06-22 11:49:57,838.838 INFO    ] ================================================
[2026-06-22 11:49:58,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:49:58
[2026-06-22 11:49:58,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:49:59,177.177 INFO    ] Initializing speech engine...
[2026-06-22 11:49:59,185.185 INFO    ] 2026-06-22 11:49:59
[2026-06-22 11:49:59,430.430 INFO    ] 2026-06-22 11:49:59
[2026-06-22 11:49:59,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:49:59,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:49:59,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:49:59,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:49:59,931.931 INFO    ] time= 22/06/2026 11:49:59
[2026-06-22 11:49:59,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:49:59,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:50:00,125.125 INFO    ] No existing commands found in stream
[2026-06-22 11:50:05,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:50:05,152.152 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-22 11:50:08,546.546 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:50:08,548.548 INFO    ] Checking for system updates...
[2026-06-22 11:50:08,584.584 INFO    ] 200
[2026-06-22 11:50:08,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:50:08,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:50:08,643.643 INFO    ] No update needed
[2026-06-22 11:50:08,646.646 INFO    ] Checking for camera pi updates...
[2026-06-22 11:50:08,681.681 INFO    ] 200
[2026-06-22 11:50:08,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:50:08,725.725 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:50:08,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:50:08,811.811 INFO    ] No camera update needed
[2026-06-22 11:50:08,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:50:08,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:50:08,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:50:08,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:50:10,866.866 INFO    ] ================================================
[2026-06-22 11:50:10,881.881 INFO    ] Launching Daemon at Mon Jun 22 11:50:10 IST 2026
[2026-06-22 11:50:10,893.893 INFO    ] ================================================
[2026-06-22 11:50:11,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:50:11
[2026-06-22 11:50:12,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:50:12,292.292 INFO    ] Initializing speech engine...
[2026-06-22 11:50:12,299.299 INFO    ] 2026-06-22 11:50:12
[2026-06-22 11:50:12,578.578 INFO    ] 2026-06-22 11:50:12
[2026-06-22 11:50:12,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:50:12,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:50:12,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:50:13,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:50:13,085.085 INFO    ] time= 22/06/2026 11:50:13
[2026-06-22 11:50:13,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:50:13,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:50:13,307.307 INFO    ] No existing commands found in stream
[2026-06-22 11:50:18,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:50:18,338.338 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-22 11:50:20,853.853 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:50:20,856.856 INFO    ] Checking for system updates...
[2026-06-22 11:50:20,892.892 INFO    ] 200
[2026-06-22 11:50:20,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:50:20,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:50:20,951.951 INFO    ] No update needed
[2026-06-22 11:50:20,953.953 INFO    ] Checking for camera pi updates...
[2026-06-22 11:50:20,990.990 INFO    ] 200
[2026-06-22 11:50:20,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:50:21,033.033 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:50:21,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:50:21,126.126 INFO    ] No camera update needed
[2026-06-22 11:50:21,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:50:21,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:50:21,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:50:21,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:50:23,185.185 INFO    ] ================================================
[2026-06-22 11:50:23,201.201 INFO    ] Launching Daemon at Mon Jun 22 11:50:23 IST 2026
[2026-06-22 11:50:23,212.212 INFO    ] ================================================
[2026-06-22 11:50:23,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:50:23
[2026-06-22 11:50:24,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:50:24,546.546 INFO    ] Initializing speech engine...
[2026-06-22 11:50:24,555.555 INFO    ] 2026-06-22 11:50:24
[2026-06-22 11:50:24,811.811 INFO    ] 2026-06-22 11:50:24
[2026-06-22 11:50:24,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:50:25,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:50:25,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:50:25,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:50:25,295.295 INFO    ] time= 22/06/2026 11:50:25
[2026-06-22 11:50:25,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:50:25,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:50:25,499.499 INFO    ] No existing commands found in stream
[2026-06-22 11:50:30,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:50:30,522.522 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-22 11:50:31,234.234 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:50:31,236.236 INFO    ] Checking for system updates...
[2026-06-22 11:50:31,257.257 INFO    ] 200
[2026-06-22 11:50:31,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:50:31,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:50:31,291.291 INFO    ] No update needed
[2026-06-22 11:50:31,292.292 INFO    ] Checking for camera pi updates...
[2026-06-22 11:50:31,312.312 INFO    ] 200
[2026-06-22 11:50:31,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:50:31,341.341 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:50:31,410.410 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:50:31,412.412 INFO    ] No camera update needed
[2026-06-22 11:50:31,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:50:31,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:50:31,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:50:31,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:50:33,472.472 INFO    ] ================================================
[2026-06-22 11:50:33,488.488 INFO    ] Launching Daemon at Mon Jun 22 11:50:33 IST 2026
[2026-06-22 11:50:33,500.500 INFO    ] ================================================
[2026-06-22 11:50:34,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:50:34
[2026-06-22 11:50:34,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:50:34,941.941 INFO    ] Initializing speech engine...
[2026-06-22 11:50:34,956.956 INFO    ] 2026-06-22 11:50:34
[2026-06-22 11:50:35,222.222 INFO    ] 2026-06-22 11:50:35
[2026-06-22 11:50:35,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:50:35,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:50:35,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:50:35,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:50:35,712.712 INFO    ] time= 22/06/2026 11:50:35
[2026-06-22 11:50:35,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:50:35,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:50:35,909.909 INFO    ] No existing commands found in stream
[2026-06-22 11:50:40,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:50:40,939.939 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-22 11:50:43,940.940 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:50:43,943.943 INFO    ] Checking for system updates...
[2026-06-22 11:50:43,984.984 INFO    ] 200
[2026-06-22 11:50:43,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:50:44,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:50:44,053.053 INFO    ] No update needed
[2026-06-22 11:50:44,057.057 INFO    ] Checking for camera pi updates...
[2026-06-22 11:50:44,095.095 INFO    ] 200
[2026-06-22 11:50:44,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:50:44,141.141 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:50:44,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:50:44,222.222 INFO    ] No camera update needed
[2026-06-22 11:50:44,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:50:44,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:50:44,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:50:44,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:50:46,281.281 INFO    ] ================================================
[2026-06-22 11:50:46,297.297 INFO    ] Launching Daemon at Mon Jun 22 11:50:46 IST 2026
[2026-06-22 11:50:46,307.307 INFO    ] ================================================
[2026-06-22 11:50:46,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:50:46
[2026-06-22 11:50:47,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:50:47,657.657 INFO    ] Initializing speech engine...
[2026-06-22 11:50:47,663.663 INFO    ] 2026-06-22 11:50:47
[2026-06-22 11:50:47,908.908 INFO    ] 2026-06-22 11:50:47
[2026-06-22 11:50:47,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:50:48,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:50:48,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:50:48,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:50:48,387.387 INFO    ] time= 22/06/2026 11:50:48
[2026-06-22 11:50:48,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:50:48,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:50:48,607.607 INFO    ] No existing commands found in stream
[2026-06-22 11:50:53,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:50:53,630.630 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-22 11:50:55,186.186 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:50:55,188.188 INFO    ] Checking for system updates...
[2026-06-22 11:50:55,224.224 INFO    ] 200
[2026-06-22 11:50:55,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:50:55,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:50:55,282.282 INFO    ] No update needed
[2026-06-22 11:50:55,284.284 INFO    ] Checking for camera pi updates...
[2026-06-22 11:50:55,318.318 INFO    ] 200
[2026-06-22 11:50:55,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:50:55,367.367 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:50:55,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:50:55,449.449 INFO    ] No camera update needed
[2026-06-22 11:50:55,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:50:55,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:50:55,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:50:55,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:50:57,505.505 INFO    ] ================================================
[2026-06-22 11:50:57,520.520 INFO    ] Launching Daemon at Mon Jun 22 11:50:57 IST 2026
[2026-06-22 11:50:57,531.531 INFO    ] ================================================
[2026-06-22 11:50:58,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:50:58
[2026-06-22 11:50:58,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:50:58,887.887 INFO    ] Initializing speech engine...
[2026-06-22 11:50:58,895.895 INFO    ] 2026-06-22 11:50:58
[2026-06-22 11:50:59,190.190 INFO    ] 2026-06-22 11:50:59
[2026-06-22 11:50:59,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:50:59,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:50:59,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:50:59,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:50:59,609.609 INFO    ] time= 22/06/2026 11:50:59
[2026-06-22 11:50:59,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:50:59,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:50:59,700.700 INFO    ] No existing commands found in stream
[2026-06-22 11:51:04,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:51:04,738.738 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-22 11:51:07,659.659 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:51:07,662.662 INFO    ] Checking for system updates...
[2026-06-22 11:51:07,698.698 INFO    ] 200
[2026-06-22 11:51:07,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:51:07,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:51:07,755.755 INFO    ] No update needed
[2026-06-22 11:51:07,757.757 INFO    ] Checking for camera pi updates...
[2026-06-22 11:51:07,794.794 INFO    ] 200
[2026-06-22 11:51:07,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:51:07,837.837 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:51:07,941.941 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:51:07,944.944 INFO    ] No camera update needed
[2026-06-22 11:51:07,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:51:07,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:51:07,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:51:07,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:51:10,999.999 INFO    ] ================================================
[2026-06-22 11:51:10,014.014 INFO    ] Launching Daemon at Mon Jun 22 11:51:10 IST 2026
[2026-06-22 11:51:10,025.025 INFO    ] ================================================
[2026-06-22 11:51:10,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:51:10
[2026-06-22 11:51:11,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:51:11,488.488 INFO    ] Initializing speech engine...
[2026-06-22 11:51:11,495.495 INFO    ] 2026-06-22 11:51:11
[2026-06-22 11:51:11,804.804 INFO    ] 2026-06-22 11:51:11
[2026-06-22 11:51:11,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:51:12,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:51:12,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:51:12,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:51:12,316.316 INFO    ] time= 22/06/2026 11:51:12
[2026-06-22 11:51:12,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:51:12,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:51:12,477.477 INFO    ] No existing commands found in stream
[2026-06-22 11:51:17,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:51:17,515.515 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-22 11:51:19,020.020 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:51:19,023.023 INFO    ] Checking for system updates...
[2026-06-22 11:51:19,060.060 INFO    ] 200
[2026-06-22 11:51:19,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:51:19,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:51:19,120.120 INFO    ] No update needed
[2026-06-22 11:51:19,123.123 INFO    ] Checking for camera pi updates...
[2026-06-22 11:51:19,157.157 INFO    ] 200
[2026-06-22 11:51:19,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:51:19,204.204 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:51:19,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:51:19,289.289 INFO    ] No camera update needed
[2026-06-22 11:51:19,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:51:19,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:51:19,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:51:19,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:51:21,345.345 INFO    ] ================================================
[2026-06-22 11:51:21,360.360 INFO    ] Launching Daemon at Mon Jun 22 11:51:21 IST 2026
[2026-06-22 11:51:21,371.371 INFO    ] ================================================
[2026-06-22 11:51:21,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:51:21
[2026-06-22 11:51:22,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:51:22,778.778 INFO    ] Initializing speech engine...
[2026-06-22 11:51:22,801.801 INFO    ] 2026-06-22 11:51:22
[2026-06-22 11:51:23,058.058 INFO    ] 2026-06-22 11:51:23
[2026-06-22 11:51:23,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:51:23,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:51:23,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:51:23,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:51:23,438.438 INFO    ] time= 22/06/2026 11:51:23
[2026-06-22 11:51:23,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:51:23,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:51:23,629.629 INFO    ] No existing commands found in stream
[2026-06-22 11:51:28,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:51:28,651.651 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-22 11:51:31,762.762 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:51:31,765.765 INFO    ] Checking for system updates...
[2026-06-22 11:51:31,807.807 INFO    ] 200
[2026-06-22 11:51:31,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:51:31,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:51:31,882.882 INFO    ] No update needed
[2026-06-22 11:51:31,885.885 INFO    ] Checking for camera pi updates...
[2026-06-22 11:51:31,929.929 INFO    ] 200
[2026-06-22 11:51:31,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:51:31,982.982 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:51:32,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:51:32,043.043 INFO    ] No camera update needed
[2026-06-22 11:51:32,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:51:32,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:51:32,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:51:32,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:51:34,113.113 INFO    ] ================================================
[2026-06-22 11:51:34,129.129 INFO    ] Launching Daemon at Mon Jun 22 11:51:34 IST 2026
[2026-06-22 11:51:34,141.141 INFO    ] ================================================
[2026-06-22 11:51:34,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:51:34
[2026-06-22 11:51:35,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:51:35,611.611 INFO    ] Initializing speech engine...
[2026-06-22 11:51:35,617.617 INFO    ] 2026-06-22 11:51:35
[2026-06-22 11:51:35,876.876 INFO    ] 2026-06-22 11:51:35
[2026-06-22 11:51:35,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:51:36,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:51:36,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:51:36,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:51:36,419.419 INFO    ] time= 22/06/2026 11:51:36
[2026-06-22 11:51:36,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:51:36,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:51:36,572.572 INFO    ] No existing commands found in stream
[2026-06-22 11:51:41,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:51:41,590.590 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-22 11:51:44,416.416 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:51:44,417.417 INFO    ] Checking for system updates...
[2026-06-22 11:51:44,438.438 INFO    ] 200
[2026-06-22 11:51:44,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:51:44,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:51:44,471.471 INFO    ] No update needed
[2026-06-22 11:51:44,472.472 INFO    ] Checking for camera pi updates...
[2026-06-22 11:51:44,500.500 INFO    ] 200
[2026-06-22 11:51:44,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:51:44,545.545 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:51:44,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:51:44,630.630 INFO    ] No camera update needed
[2026-06-22 11:51:44,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:51:44,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:51:44,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:51:44,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:51:46,685.685 INFO    ] ================================================
[2026-06-22 11:51:46,701.701 INFO    ] Launching Daemon at Mon Jun 22 11:51:46 IST 2026
[2026-06-22 11:51:46,712.712 INFO    ] ================================================
[2026-06-22 11:51:47,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:51:47
[2026-06-22 11:51:47,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:51:48,045.045 INFO    ] Initializing speech engine...
[2026-06-22 11:51:48,055.055 INFO    ] 2026-06-22 11:51:48
[2026-06-22 11:51:48,300.300 INFO    ] 2026-06-22 11:51:48
[2026-06-22 11:51:48,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:51:48,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:51:48,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:51:48,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:51:48,789.789 INFO    ] time= 22/06/2026 11:51:48
[2026-06-22 11:51:48,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:51:48,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:51:48,976.976 INFO    ] No existing commands found in stream
[2026-06-22 11:51:54,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:51:54,006.006 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-22 11:51:55,546.546 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:51:55,548.548 INFO    ] Checking for system updates...
[2026-06-22 11:51:55,568.568 INFO    ] 200
[2026-06-22 11:51:55,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:51:55,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:51:55,617.617 INFO    ] No update needed
[2026-06-22 11:51:55,620.620 INFO    ] Checking for camera pi updates...
[2026-06-22 11:51:55,653.653 INFO    ] 200
[2026-06-22 11:51:55,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:51:55,697.697 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:51:55,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:51:55,807.807 INFO    ] No camera update needed
[2026-06-22 11:51:55,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:51:55,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:51:55,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:51:55,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:51:57,862.862 INFO    ] ================================================
[2026-06-22 11:51:57,878.878 INFO    ] Launching Daemon at Mon Jun 22 11:51:57 IST 2026
[2026-06-22 11:51:57,890.890 INFO    ] ================================================
[2026-06-22 11:51:58,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:51:58
[2026-06-22 11:51:59,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:51:59,402.402 INFO    ] Initializing speech engine...
[2026-06-22 11:51:59,408.408 INFO    ] 2026-06-22 11:51:59
[2026-06-22 11:51:59,695.695 INFO    ] 2026-06-22 11:51:59
[2026-06-22 11:51:59,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:51:59,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:51:59,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:52:00,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:52:00,135.135 INFO    ] time= 22/06/2026 11:52:00
[2026-06-22 11:52:00,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:52:00,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:52:00,305.305 INFO    ] No existing commands found in stream
[2026-06-22 11:52:05,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:52:05,339.339 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-22 11:52:09,249.249 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:52:09,251.251 INFO    ] Checking for system updates...
[2026-06-22 11:52:09,288.288 INFO    ] 200
[2026-06-22 11:52:09,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:52:09,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:52:09,348.348 INFO    ] No update needed
[2026-06-22 11:52:09,351.351 INFO    ] Checking for camera pi updates...
[2026-06-22 11:52:09,385.385 INFO    ] 200
[2026-06-22 11:52:09,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:52:09,418.418 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:52:09,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:52:09,598.598 INFO    ] No camera update needed
[2026-06-22 11:52:09,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:52:09,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:52:09,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:52:09,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:52:11,655.655 INFO    ] ================================================
[2026-06-22 11:52:11,671.671 INFO    ] Launching Daemon at Mon Jun 22 11:52:11 IST 2026
[2026-06-22 11:52:11,682.682 INFO    ] ================================================
[2026-06-22 11:52:12,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:52:12
[2026-06-22 11:52:12,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:52:13,081.081 INFO    ] Initializing speech engine...
[2026-06-22 11:52:13,091.091 INFO    ] 2026-06-22 11:52:13
[2026-06-22 11:52:13,350.350 INFO    ] 2026-06-22 11:52:13
[2026-06-22 11:52:13,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:52:13,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:52:13,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:52:13,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:52:13,840.840 INFO    ] time= 22/06/2026 11:52:13
[2026-06-22 11:52:13,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:52:13,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:52:14,051.051 INFO    ] No existing commands found in stream
[2026-06-22 11:52:19,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:52:19,074.074 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-22 11:52:19,934.934 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:52:19,937.937 INFO    ] Checking for system updates...
[2026-06-22 11:52:19,974.974 INFO    ] 200
[2026-06-22 11:52:19,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:52:20,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:52:20,046.046 INFO    ] No update needed
[2026-06-22 11:52:20,048.048 INFO    ] Checking for camera pi updates...
[2026-06-22 11:52:20,082.082 INFO    ] 200
[2026-06-22 11:52:20,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:52:20,126.126 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:52:20,212.212 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:52:20,214.214 INFO    ] No camera update needed
[2026-06-22 11:52:20,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:52:20,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:52:20,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:52:20,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:52:22,272.272 INFO    ] ================================================
[2026-06-22 11:52:22,288.288 INFO    ] Launching Daemon at Mon Jun 22 11:52:22 IST 2026
[2026-06-22 11:52:22,300.300 INFO    ] ================================================
[2026-06-22 11:52:22,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:52:22
[2026-06-22 11:52:23,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:52:23,716.716 INFO    ] Initializing speech engine...
[2026-06-22 11:52:23,730.730 INFO    ] 2026-06-22 11:52:23
[2026-06-22 11:52:23,998.998 INFO    ] 2026-06-22 11:52:23
[2026-06-22 11:52:24,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:52:24,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:52:24,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:52:24,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:52:24,430.430 INFO    ] time= 22/06/2026 11:52:24
[2026-06-22 11:52:24,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:52:24,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:52:24,585.585 INFO    ] No existing commands found in stream
[2026-06-22 11:52:29,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:52:29,609.609 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-22 11:52:33,009.009 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:52:33,012.012 INFO    ] Checking for system updates...
[2026-06-22 11:52:33,050.050 INFO    ] 200
[2026-06-22 11:52:33,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:52:33,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:52:33,124.124 INFO    ] No update needed
[2026-06-22 11:52:33,128.128 INFO    ] Checking for camera pi updates...
[2026-06-22 11:52:33,170.170 INFO    ] 200
[2026-06-22 11:52:33,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:52:33,224.224 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:52:33,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:52:33,312.312 INFO    ] No camera update needed
[2026-06-22 11:52:33,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:52:33,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:52:33,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:52:33,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:52:35,368.368 INFO    ] ================================================
[2026-06-22 11:52:35,385.385 INFO    ] Launching Daemon at Mon Jun 22 11:52:35 IST 2026
[2026-06-22 11:52:35,397.397 INFO    ] ================================================
[2026-06-22 11:52:35,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:52:35
[2026-06-22 11:52:36,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:52:36,826.826 INFO    ] Initializing speech engine...
[2026-06-22 11:52:36,835.835 INFO    ] 2026-06-22 11:52:36
[2026-06-22 11:52:37,081.081 INFO    ] 2026-06-22 11:52:37
[2026-06-22 11:52:37,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:52:37,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:52:37,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:52:37,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:52:37,550.550 INFO    ] time= 22/06/2026 11:52:37
[2026-06-22 11:52:37,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:52:37,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:52:37,694.694 INFO    ] No existing commands found in stream
[2026-06-22 11:52:42,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:52:42,710.710 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-22 11:52:44,558.558 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:52:44,560.560 INFO    ] Checking for system updates...
[2026-06-22 11:52:44,599.599 INFO    ] 200
[2026-06-22 11:52:44,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:52:44,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:52:44,661.661 INFO    ] No update needed
[2026-06-22 11:52:44,664.664 INFO    ] Checking for camera pi updates...
[2026-06-22 11:52:44,705.705 INFO    ] 200
[2026-06-22 11:52:44,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:52:44,752.752 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:52:44,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:52:44,858.858 INFO    ] No camera update needed
[2026-06-22 11:52:44,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:52:44,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:52:44,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:52:44,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:52:46,918.918 INFO    ] ================================================
[2026-06-22 11:52:46,933.933 INFO    ] Launching Daemon at Mon Jun 22 11:52:46 IST 2026
[2026-06-22 11:52:46,944.944 INFO    ] ================================================
[2026-06-22 11:52:47,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:52:47
[2026-06-22 11:52:48,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:52:48,481.481 INFO    ] Initializing speech engine...
[2026-06-22 11:52:48,504.504 INFO    ] 2026-06-22 11:52:48
[2026-06-22 11:52:48,762.762 INFO    ] 2026-06-22 11:52:48
[2026-06-22 11:52:48,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:52:48,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:52:48,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:52:49,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:52:49,131.131 INFO    ] time= 22/06/2026 11:52:49
[2026-06-22 11:52:49,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:52:49,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:52:49,243.243 INFO    ] No existing commands found in stream
[2026-06-22 11:52:54,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:52:54,281.281 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-22 11:52:56,419.419 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:52:56,422.422 INFO    ] Checking for system updates...
[2026-06-22 11:52:56,458.458 INFO    ] 200
[2026-06-22 11:52:56,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:52:56,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:52:56,520.520 INFO    ] No update needed
[2026-06-22 11:52:56,522.522 INFO    ] Checking for camera pi updates...
[2026-06-22 11:52:56,561.561 INFO    ] 200
[2026-06-22 11:52:56,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:52:56,605.605 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:52:56,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:52:56,697.697 INFO    ] No camera update needed
[2026-06-22 11:52:56,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:52:56,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:52:56,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:52:56,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:52:58,757.757 INFO    ] ================================================
[2026-06-22 11:52:58,773.773 INFO    ] Launching Daemon at Mon Jun 22 11:52:58 IST 2026
[2026-06-22 11:52:58,784.784 INFO    ] ================================================
[2026-06-22 11:52:59,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:52:59
[2026-06-22 11:52:59,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:53:00,121.121 INFO    ] Initializing speech engine...
[2026-06-22 11:53:00,131.131 INFO    ] 2026-06-22 11:53:00
[2026-06-22 11:53:00,378.378 INFO    ] 2026-06-22 11:53:00
[2026-06-22 11:53:00,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:53:00,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:53:00,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:53:00,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:53:00,827.827 INFO    ] time= 22/06/2026 11:53:00
[2026-06-22 11:53:00,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:53:00,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:53:01,068.068 INFO    ] No existing commands found in stream
[2026-06-22 11:53:06,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:53:06,100.100 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-22 11:53:08,009.009 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:53:08,012.012 INFO    ] Checking for system updates...
[2026-06-22 11:53:08,048.048 INFO    ] 200
[2026-06-22 11:53:08,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:53:08,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:53:08,113.113 INFO    ] No update needed
[2026-06-22 11:53:08,115.115 INFO    ] Checking for camera pi updates...
[2026-06-22 11:53:08,153.153 INFO    ] 200
[2026-06-22 11:53:08,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:53:08,197.197 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:53:08,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:53:08,296.296 INFO    ] No camera update needed
[2026-06-22 11:53:08,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:53:08,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:53:08,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:53:08,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:53:10,351.351 INFO    ] ================================================
[2026-06-22 11:53:10,367.367 INFO    ] Launching Daemon at Mon Jun 22 11:53:10 IST 2026
[2026-06-22 11:53:10,378.378 INFO    ] ================================================
[2026-06-22 11:53:10,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:53:10
[2026-06-22 11:53:11,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:53:11,751.751 INFO    ] Initializing speech engine...
[2026-06-22 11:53:11,758.758 INFO    ] 2026-06-22 11:53:11
[2026-06-22 11:53:12,058.058 INFO    ] 2026-06-22 11:53:12
[2026-06-22 11:53:12,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:53:12,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:53:12,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:53:12,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:53:12,464.464 INFO    ] time= 22/06/2026 11:53:12
[2026-06-22 11:53:12,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:53:12,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:53:12,573.573 INFO    ] No existing commands found in stream
[2026-06-22 11:53:17,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:53:17,589.589 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-22 11:53:20,192.192 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:53:20,195.195 INFO    ] Checking for system updates...
[2026-06-22 11:53:20,231.231 INFO    ] 200
[2026-06-22 11:53:20,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:53:20,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:53:20,290.290 INFO    ] No update needed
[2026-06-22 11:53:20,292.292 INFO    ] Checking for camera pi updates...
[2026-06-22 11:53:20,327.327 INFO    ] 200
[2026-06-22 11:53:20,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:53:20,371.371 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:53:20,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:53:20,472.472 INFO    ] No camera update needed
[2026-06-22 11:53:20,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:53:20,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:53:20,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:53:20,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:53:22,529.529 INFO    ] ================================================
[2026-06-22 11:53:22,544.544 INFO    ] Launching Daemon at Mon Jun 22 11:53:22 IST 2026
[2026-06-22 11:53:22,555.555 INFO    ] ================================================
[2026-06-22 11:53:23,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:53:23
[2026-06-22 11:53:23,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:53:23,959.959 INFO    ] Initializing speech engine...
[2026-06-22 11:53:23,968.968 INFO    ] 2026-06-22 11:53:23
[2026-06-22 11:53:24,225.225 INFO    ] 2026-06-22 11:53:24
[2026-06-22 11:53:24,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:53:24,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:53:24,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:53:24,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:53:24,677.677 INFO    ] time= 22/06/2026 11:53:24
[2026-06-22 11:53:24,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:53:24,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:53:24,827.827 INFO    ] No existing commands found in stream
[2026-06-22 11:53:29,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:53:29,842.842 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-22 11:53:33,921.921 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:53:33,924.924 INFO    ] Checking for system updates...
[2026-06-22 11:53:33,960.960 INFO    ] 200
[2026-06-22 11:53:33,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:53:34,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:53:34,019.019 INFO    ] No update needed
[2026-06-22 11:53:34,021.021 INFO    ] Checking for camera pi updates...
[2026-06-22 11:53:34,055.055 INFO    ] 200
[2026-06-22 11:53:34,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:53:34,099.099 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:53:34,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:53:34,185.185 INFO    ] No camera update needed
[2026-06-22 11:53:34,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:53:34,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:53:34,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:53:34,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:53:36,243.243 INFO    ] ================================================
[2026-06-22 11:53:36,259.259 INFO    ] Launching Daemon at Mon Jun 22 11:53:36 IST 2026
[2026-06-22 11:53:36,270.270 INFO    ] ================================================
[2026-06-22 11:53:36,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:53:36
[2026-06-22 11:53:37,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:53:37,591.591 INFO    ] Initializing speech engine...
[2026-06-22 11:53:37,614.614 INFO    ] 2026-06-22 11:53:37
[2026-06-22 11:53:37,867.867 INFO    ] 2026-06-22 11:53:37
[2026-06-22 11:53:37,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:53:38,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:53:38,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:53:38,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:53:38,336.336 INFO    ] time= 22/06/2026 11:53:38
[2026-06-22 11:53:38,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:53:38,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:53:38,584.584 INFO    ] No existing commands found in stream
[2026-06-22 11:53:43,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:53:43,606.606 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-22 11:53:46,310.310 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:53:46,312.312 INFO    ] Checking for system updates...
[2026-06-22 11:53:46,354.354 INFO    ] 200
[2026-06-22 11:53:46,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:53:46,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:53:46,421.421 INFO    ] No update needed
[2026-06-22 11:53:46,423.423 INFO    ] Checking for camera pi updates...
[2026-06-22 11:53:46,467.467 INFO    ] 200
[2026-06-22 11:53:46,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:53:46,513.513 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:53:46,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:53:46,627.627 INFO    ] No camera update needed
[2026-06-22 11:53:46,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:53:46,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:53:46,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:53:46,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:53:48,688.688 INFO    ] ================================================
[2026-06-22 11:53:48,703.703 INFO    ] Launching Daemon at Mon Jun 22 11:53:48 IST 2026
[2026-06-22 11:53:48,714.714 INFO    ] ================================================
[2026-06-22 11:53:49,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:53:49
[2026-06-22 11:53:49,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:53:50,044.044 INFO    ] Initializing speech engine...
[2026-06-22 11:53:50,059.059 INFO    ] 2026-06-22 11:53:50
[2026-06-22 11:53:50,320.320 INFO    ] 2026-06-22 11:53:50
[2026-06-22 11:53:50,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:53:50,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:53:50,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:53:50,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:53:50,793.793 INFO    ] time= 22/06/2026 11:53:50
[2026-06-22 11:53:50,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:53:50,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:53:51,036.036 INFO    ] No existing commands found in stream
[2026-06-22 11:53:56,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:53:56,063.063 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-22 11:53:56,968.968 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:53:56,969.969 INFO    ] Checking for system updates...
[2026-06-22 11:53:56,992.992 INFO    ] 200
[2026-06-22 11:53:56,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:53:57,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:53:57,027.027 INFO    ] No update needed
[2026-06-22 11:53:57,028.028 INFO    ] Checking for camera pi updates...
[2026-06-22 11:53:57,048.048 INFO    ] 200
[2026-06-22 11:53:57,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:53:57,089.089 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:53:57,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:53:57,183.183 INFO    ] No camera update needed
[2026-06-22 11:53:57,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:53:57,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:53:57,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:53:57,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:53:59,246.246 INFO    ] ================================================
[2026-06-22 11:53:59,262.262 INFO    ] Launching Daemon at Mon Jun 22 11:53:59 IST 2026
[2026-06-22 11:53:59,273.273 INFO    ] ================================================
[2026-06-22 11:53:59,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:53:59
[2026-06-22 11:54:00,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:54:00,717.717 INFO    ] Initializing speech engine...
[2026-06-22 11:54:00,726.726 INFO    ] 2026-06-22 11:54:00
[2026-06-22 11:54:00,997.997 INFO    ] 2026-06-22 11:54:00
[2026-06-22 11:54:01,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:54:01,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:54:01,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:54:01,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:54:01,450.450 INFO    ] time= 22/06/2026 11:54:01
[2026-06-22 11:54:01,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:54:01,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:54:01,572.572 INFO    ] No existing commands found in stream
[2026-06-22 11:54:06,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:54:06,586.586 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-22 11:54:07,600.600 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:54:07,603.603 INFO    ] Checking for system updates...
[2026-06-22 11:54:07,639.639 INFO    ] 200
[2026-06-22 11:54:07,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:54:07,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:54:07,703.703 INFO    ] No update needed
[2026-06-22 11:54:07,706.706 INFO    ] Checking for camera pi updates...
[2026-06-22 11:54:07,750.750 INFO    ] 200
[2026-06-22 11:54:07,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:54:07,799.799 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:54:07,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:54:07,891.891 INFO    ] No camera update needed
[2026-06-22 11:54:07,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:54:07,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:54:07,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:54:07,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:54:09,949.949 INFO    ] ================================================
[2026-06-22 11:54:09,965.965 INFO    ] Launching Daemon at Mon Jun 22 11:54:09 IST 2026
[2026-06-22 11:54:09,977.977 INFO    ] ================================================
[2026-06-22 11:54:10,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:54:10
[2026-06-22 11:54:11,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:54:11,568.568 INFO    ] Initializing speech engine...
[2026-06-22 11:54:11,580.580 INFO    ] 2026-06-22 11:54:11
[2026-06-22 11:54:11,870.870 INFO    ] 2026-06-22 11:54:11
[2026-06-22 11:54:11,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:54:12,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:54:12,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:54:12,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:54:12,405.405 INFO    ] time= 22/06/2026 11:54:12
[2026-06-22 11:54:12,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:54:12,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:54:12,560.560 INFO    ] No existing commands found in stream
[2026-06-22 11:54:17,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:54:17,594.594 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-22 11:54:19,637.637 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:54:19,639.639 INFO    ] Checking for system updates...
[2026-06-22 11:54:19,665.665 INFO    ] 200
[2026-06-22 11:54:19,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:54:19,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:54:19,726.726 INFO    ] No update needed
[2026-06-22 11:54:19,729.729 INFO    ] Checking for camera pi updates...
[2026-06-22 11:54:19,765.765 INFO    ] 200
[2026-06-22 11:54:19,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:54:19,810.810 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:54:20,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:54:20,007.007 INFO    ] No camera update needed
[2026-06-22 11:54:20,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:54:20,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:54:20,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:54:20,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:54:22,069.069 INFO    ] ================================================
[2026-06-22 11:54:22,085.085 INFO    ] Launching Daemon at Mon Jun 22 11:54:22 IST 2026
[2026-06-22 11:54:22,097.097 INFO    ] ================================================
[2026-06-22 11:54:22,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:54:22
[2026-06-22 11:54:23,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:54:23,608.608 INFO    ] Initializing speech engine...
[2026-06-22 11:54:23,622.622 INFO    ] 2026-06-22 11:54:23
[2026-06-22 11:54:23,883.883 INFO    ] 2026-06-22 11:54:23
[2026-06-22 11:54:23,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:54:24,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:54:24,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:54:24,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:54:24,354.354 INFO    ] time= 22/06/2026 11:54:24
[2026-06-22 11:54:24,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:54:24,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:54:24,572.572 INFO    ] No existing commands found in stream
[2026-06-22 11:54:29,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:54:29,602.602 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-22 11:54:33,508.508 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:54:33,510.510 INFO    ] Checking for system updates...
[2026-06-22 11:54:33,547.547 INFO    ] 200
[2026-06-22 11:54:33,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:54:33,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:54:33,604.604 INFO    ] No update needed
[2026-06-22 11:54:33,607.607 INFO    ] Checking for camera pi updates...
[2026-06-22 11:54:33,645.645 INFO    ] 200
[2026-06-22 11:54:33,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:54:33,695.695 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:54:33,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:54:33,750.750 INFO    ] No camera update needed
[2026-06-22 11:54:33,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:54:33,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:54:33,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:54:33,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:54:35,809.809 INFO    ] ================================================
[2026-06-22 11:54:35,825.825 INFO    ] Launching Daemon at Mon Jun 22 11:54:35 IST 2026
[2026-06-22 11:54:35,836.836 INFO    ] ================================================
[2026-06-22 11:54:36,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:54:36
[2026-06-22 11:54:37,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:54:37,431.431 INFO    ] Initializing speech engine...
[2026-06-22 11:54:37,440.440 INFO    ] 2026-06-22 11:54:37
[2026-06-22 11:54:37,726.726 INFO    ] 2026-06-22 11:54:37
[2026-06-22 11:54:37,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:54:38,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:54:38,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:54:38,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:54:38,263.263 INFO    ] time= 22/06/2026 11:54:38
[2026-06-22 11:54:38,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:54:38,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:54:38,416.416 INFO    ] No existing commands found in stream
[2026-06-22 11:54:43,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:54:43,443.443 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-22 11:54:47,605.605 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:54:47,609.609 INFO    ] Checking for system updates...
[2026-06-22 11:54:47,647.647 INFO    ] 200
[2026-06-22 11:54:47,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:54:47,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:54:47,709.709 INFO    ] No update needed
[2026-06-22 11:54:47,711.711 INFO    ] Checking for camera pi updates...
[2026-06-22 11:54:47,747.747 INFO    ] 200
[2026-06-22 11:54:47,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:54:47,793.793 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:54:47,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:54:47,852.852 INFO    ] No camera update needed
[2026-06-22 11:54:47,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:54:47,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:54:47,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:54:47,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:54:49,915.915 INFO    ] ================================================
[2026-06-22 11:54:49,931.931 INFO    ] Launching Daemon at Mon Jun 22 11:54:49 IST 2026
[2026-06-22 11:54:49,942.942 INFO    ] ================================================
[2026-06-22 11:54:50,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:54:50
[2026-06-22 11:54:51,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:54:51,372.372 INFO    ] Initializing speech engine...
[2026-06-22 11:54:51,382.382 INFO    ] 2026-06-22 11:54:51
[2026-06-22 11:54:51,633.633 INFO    ] 2026-06-22 11:54:51
[2026-06-22 11:54:51,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:54:51,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:54:51,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:54:52,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:54:52,139.139 INFO    ] time= 22/06/2026 11:54:52
[2026-06-22 11:54:52,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:54:52,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:54:52,340.340 INFO    ] No existing commands found in stream
[2026-06-22 11:54:57,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:54:57,354.354 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-22 11:54:59,287.287 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:54:59,289.289 INFO    ] Checking for system updates...
[2026-06-22 11:54:59,314.314 INFO    ] 200
[2026-06-22 11:54:59,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:54:59,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:54:59,374.374 INFO    ] No update needed
[2026-06-22 11:54:59,376.376 INFO    ] Checking for camera pi updates...
[2026-06-22 11:54:59,415.415 INFO    ] 200
[2026-06-22 11:54:59,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:54:59,457.457 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:54:59,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:54:59,533.533 INFO    ] No camera update needed
[2026-06-22 11:54:59,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:54:59,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:54:59,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:54:59,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:55:01,612.612 INFO    ] ================================================
[2026-06-22 11:55:01,763.763 INFO    ] Launching Daemon at Mon Jun 22 11:55:01 IST 2026
[2026-06-22 11:55:01,803.803 INFO    ] ================================================
[2026-06-22 11:55:02,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:55:02
[2026-06-22 11:55:03,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:55:03,868.868 INFO    ] Initializing speech engine...
[2026-06-22 11:55:03,879.879 INFO    ] 2026-06-22 11:55:03
[2026-06-22 11:55:04,165.165 INFO    ] 2026-06-22 11:55:04
[2026-06-22 11:55:04,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:55:04,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:55:04,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:55:04,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:55:04,696.696 INFO    ] time= 22/06/2026 11:55:04
[2026-06-22 11:55:04,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:55:04,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:55:04,847.847 INFO    ] No existing commands found in stream
[2026-06-22 11:55:09,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:55:09,864.864 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-22 11:55:11,474.474 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:55:11,476.476 INFO    ] Checking for system updates...
[2026-06-22 11:55:11,496.496 INFO    ] 200
[2026-06-22 11:55:11,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:55:11,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:55:11,542.542 INFO    ] No update needed
[2026-06-22 11:55:11,545.545 INFO    ] Checking for camera pi updates...
[2026-06-22 11:55:11,580.580 INFO    ] 200
[2026-06-22 11:55:11,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:55:11,623.623 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:55:11,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:55:11,677.677 INFO    ] No camera update needed
[2026-06-22 11:55:11,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:55:11,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:55:11,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:55:11,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:55:13,732.732 INFO    ] ================================================
[2026-06-22 11:55:13,748.748 INFO    ] Launching Daemon at Mon Jun 22 11:55:13 IST 2026
[2026-06-22 11:55:13,760.760 INFO    ] ================================================
[2026-06-22 11:55:14,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:55:14
[2026-06-22 11:55:15,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:55:15,333.333 INFO    ] Initializing speech engine...
[2026-06-22 11:55:15,345.345 INFO    ] 2026-06-22 11:55:15
[2026-06-22 11:55:15,629.629 INFO    ] 2026-06-22 11:55:15
[2026-06-22 11:55:15,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:55:15,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:55:15,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:55:16,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:55:16,409.409 INFO    ] time= 22/06/2026 11:55:16
[2026-06-22 11:55:16,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:55:16,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:55:16,694.694 INFO    ] No existing commands found in stream
[2026-06-22 11:55:21,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:55:21,730.730 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-22 11:55:24,299.299 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:55:24,302.302 INFO    ] Checking for system updates...
[2026-06-22 11:55:24,343.343 INFO    ] 200
[2026-06-22 11:55:24,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:55:24,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:55:24,402.402 INFO    ] No update needed
[2026-06-22 11:55:24,405.405 INFO    ] Checking for camera pi updates...
[2026-06-22 11:55:24,444.444 INFO    ] 200
[2026-06-22 11:55:24,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:55:24,487.487 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:55:24,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:55:24,577.577 INFO    ] No camera update needed
[2026-06-22 11:55:24,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:55:24,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:55:24,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:55:24,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:55:26,634.634 INFO    ] ================================================
[2026-06-22 11:55:26,650.650 INFO    ] Launching Daemon at Mon Jun 22 11:55:26 IST 2026
[2026-06-22 11:55:26,662.662 INFO    ] ================================================
[2026-06-22 11:55:27,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:55:27
[2026-06-22 11:55:27,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:55:28,075.075 INFO    ] Initializing speech engine...
[2026-06-22 11:55:28,090.090 INFO    ] 2026-06-22 11:55:28
[2026-06-22 11:55:28,381.381 INFO    ] 2026-06-22 11:55:28
[2026-06-22 11:55:28,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:55:28,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:55:28,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:55:28,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:55:28,916.916 INFO    ] time= 22/06/2026 11:55:28
[2026-06-22 11:55:28,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:55:28,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:55:29,096.096 INFO    ] No existing commands found in stream
[2026-06-22 11:55:34,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:55:34,126.126 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-22 11:55:34,885.885 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:55:34,886.886 INFO    ] Checking for system updates...
[2026-06-22 11:55:34,908.908 INFO    ] 200
[2026-06-22 11:55:34,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:55:34,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:55:34,961.961 INFO    ] No update needed
[2026-06-22 11:55:34,969.969 INFO    ] Checking for camera pi updates...
[2026-06-22 11:55:35,004.004 INFO    ] 200
[2026-06-22 11:55:35,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:55:35,053.053 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:55:35,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:55:35,140.140 INFO    ] No camera update needed
[2026-06-22 11:55:35,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:55:35,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:55:35,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:55:35,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:55:37,198.198 INFO    ] ================================================
[2026-06-22 11:55:37,213.213 INFO    ] Launching Daemon at Mon Jun 22 11:55:37 IST 2026
[2026-06-22 11:55:37,224.224 INFO    ] ================================================
[2026-06-22 11:55:37,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:55:37
[2026-06-22 11:55:38,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:55:38,910.910 INFO    ] Initializing speech engine...
[2026-06-22 11:55:38,918.918 INFO    ] 2026-06-22 11:55:38
[2026-06-22 11:55:39,236.236 INFO    ] 2026-06-22 11:55:39
[2026-06-22 11:55:39,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:55:39,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:55:39,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:55:39,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:55:39,748.748 INFO    ] time= 22/06/2026 11:55:39
[2026-06-22 11:55:39,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:55:39,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:55:39,902.902 INFO    ] No existing commands found in stream
[2026-06-22 11:55:44,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:55:44,923.923 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-22 11:55:47,274.274 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:55:47,277.277 INFO    ] Checking for system updates...
[2026-06-22 11:55:47,319.319 INFO    ] 200
[2026-06-22 11:55:47,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:55:47,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:55:47,386.386 INFO    ] No update needed
[2026-06-22 11:55:47,389.389 INFO    ] Checking for camera pi updates...
[2026-06-22 11:55:47,423.423 INFO    ] 200
[2026-06-22 11:55:47,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:55:47,467.467 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:55:47,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:55:47,566.566 INFO    ] No camera update needed
[2026-06-22 11:55:47,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:55:47,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:55:47,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:55:47,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:55:49,622.622 INFO    ] ================================================
[2026-06-22 11:55:49,637.637 INFO    ] Launching Daemon at Mon Jun 22 11:55:49 IST 2026
[2026-06-22 11:55:49,648.648 INFO    ] ================================================
[2026-06-22 11:55:50,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:55:50
[2026-06-22 11:55:50,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:55:50,982.982 INFO    ] Initializing speech engine...
[2026-06-22 11:55:51,000.000 INFO    ] 2026-06-22 11:55:50
[2026-06-22 11:55:51,252.252 INFO    ] 2026-06-22 11:55:51
[2026-06-22 11:55:51,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:55:51,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:55:51,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:55:51,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:55:51,699.699 INFO    ] time= 22/06/2026 11:55:51
[2026-06-22 11:55:51,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:55:51,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:55:51,880.880 INFO    ] No existing commands found in stream
[2026-06-22 11:55:56,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:55:56,894.894 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-22 11:55:58,543.543 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:55:58,546.546 INFO    ] Checking for system updates...
[2026-06-22 11:55:58,583.583 INFO    ] 200
[2026-06-22 11:55:58,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:55:58,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:55:58,650.650 INFO    ] No update needed
[2026-06-22 11:55:58,653.653 INFO    ] Checking for camera pi updates...
[2026-06-22 11:55:58,688.688 INFO    ] 200
[2026-06-22 11:55:58,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:55:58,732.732 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:55:58,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:55:58,808.808 INFO    ] No camera update needed
[2026-06-22 11:55:58,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:55:58,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:55:58,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:55:58,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:56:00,862.862 INFO    ] ================================================
[2026-06-22 11:56:00,877.877 INFO    ] Launching Daemon at Mon Jun 22 11:56:00 IST 2026
[2026-06-22 11:56:00,889.889 INFO    ] ================================================
[2026-06-22 11:56:01,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:56:01
[2026-06-22 11:56:02,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:56:02,623.623 INFO    ] Initializing speech engine...
[2026-06-22 11:56:02,637.637 INFO    ] 2026-06-22 11:56:02
[2026-06-22 11:56:02,968.968 INFO    ] 2026-06-22 11:56:02
[2026-06-22 11:56:03,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:56:03,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:56:03,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:56:03,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:56:03,357.357 INFO    ] time= 22/06/2026 11:56:03
[2026-06-22 11:56:03,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:56:03,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:56:03,440.440 INFO    ] No existing commands found in stream
[2026-06-22 11:56:08,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:56:08,454.454 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-22 11:56:11,206.206 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:56:11,209.209 INFO    ] Checking for system updates...
[2026-06-22 11:56:11,251.251 INFO    ] 200
[2026-06-22 11:56:11,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:56:11,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:56:11,319.319 INFO    ] No update needed
[2026-06-22 11:56:11,321.321 INFO    ] Checking for camera pi updates...
[2026-06-22 11:56:11,359.359 INFO    ] 200
[2026-06-22 11:56:11,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:56:11,402.402 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:56:11,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:56:11,475.475 INFO    ] No camera update needed
[2026-06-22 11:56:11,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:56:11,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:56:11,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:56:11,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:56:13,533.533 INFO    ] ================================================
[2026-06-22 11:56:13,549.549 INFO    ] Launching Daemon at Mon Jun 22 11:56:13 IST 2026
[2026-06-22 11:56:13,559.559 INFO    ] ================================================
[2026-06-22 11:56:14,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:56:14
[2026-06-22 11:56:14,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:56:14,982.982 INFO    ] Initializing speech engine...
[2026-06-22 11:56:14,991.991 INFO    ] 2026-06-22 11:56:14
[2026-06-22 11:56:15,237.237 INFO    ] 2026-06-22 11:56:15
[2026-06-22 11:56:15,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:56:15,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:56:15,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:56:15,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:56:15,699.699 INFO    ] time= 22/06/2026 11:56:15
[2026-06-22 11:56:15,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:56:15,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:56:15,852.852 INFO    ] No existing commands found in stream
[2026-06-22 11:56:20,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:56:20,875.875 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-22 11:56:23,244.244 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:56:23,247.247 INFO    ] Checking for system updates...
[2026-06-22 11:56:23,287.287 INFO    ] 200
[2026-06-22 11:56:23,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:56:23,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:56:23,364.364 INFO    ] No update needed
[2026-06-22 11:56:23,367.367 INFO    ] Checking for camera pi updates...
[2026-06-22 11:56:23,401.401 INFO    ] 200
[2026-06-22 11:56:23,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:56:23,450.450 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:56:23,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:56:23,648.648 INFO    ] No camera update needed
[2026-06-22 11:56:23,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:56:23,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:56:23,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:56:23,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:56:25,703.703 INFO    ] ================================================
[2026-06-22 11:56:25,719.719 INFO    ] Launching Daemon at Mon Jun 22 11:56:25 IST 2026
[2026-06-22 11:56:25,730.730 INFO    ] ================================================
[2026-06-22 11:56:26,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:56:26
[2026-06-22 11:56:26,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:56:27,058.058 INFO    ] Initializing speech engine...
[2026-06-22 11:56:27,072.072 INFO    ] 2026-06-22 11:56:27
[2026-06-22 11:56:27,362.362 INFO    ] 2026-06-22 11:56:27
[2026-06-22 11:56:27,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:56:27,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:56:27,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:56:27,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:56:27,891.891 INFO    ] time= 22/06/2026 11:56:27
[2026-06-22 11:56:27,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:56:28,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:56:28,097.097 INFO    ] No existing commands found in stream
[2026-06-22 11:56:33,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:56:33,127.127 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-22 11:56:34,219.219 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:56:34,220.220 INFO    ] Checking for system updates...
[2026-06-22 11:56:34,241.241 INFO    ] 200
[2026-06-22 11:56:34,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:56:34,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:56:34,291.291 INFO    ] No update needed
[2026-06-22 11:56:34,293.293 INFO    ] Checking for camera pi updates...
[2026-06-22 11:56:34,327.327 INFO    ] 200
[2026-06-22 11:56:34,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:56:34,370.370 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:56:34,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:56:34,458.458 INFO    ] No camera update needed
[2026-06-22 11:56:34,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:56:34,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:56:34,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:56:34,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:56:36,513.513 INFO    ] ================================================
[2026-06-22 11:56:36,529.529 INFO    ] Launching Daemon at Mon Jun 22 11:56:36 IST 2026
[2026-06-22 11:56:36,539.539 INFO    ] ================================================
[2026-06-22 11:56:37,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:56:37
[2026-06-22 11:56:37,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:56:37,863.863 INFO    ] Initializing speech engine...
[2026-06-22 11:56:37,881.881 INFO    ] 2026-06-22 11:56:37
[2026-06-22 11:56:38,128.128 INFO    ] 2026-06-22 11:56:38
[2026-06-22 11:56:38,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:56:38,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:56:38,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:56:38,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:56:38,569.569 INFO    ] time= 22/06/2026 11:56:38
[2026-06-22 11:56:38,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:56:38,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:56:38,753.753 INFO    ] No existing commands found in stream
[2026-06-22 11:56:43,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:56:43,768.768 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-22 11:56:47,111.111 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:56:47,113.113 INFO    ] Checking for system updates...
[2026-06-22 11:56:47,135.135 INFO    ] 200
[2026-06-22 11:56:47,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:56:47,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:56:47,183.183 INFO    ] No update needed
[2026-06-22 11:56:47,186.186 INFO    ] Checking for camera pi updates...
[2026-06-22 11:56:47,222.222 INFO    ] 200
[2026-06-22 11:56:47,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:56:47,273.273 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:56:47,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:56:47,328.328 INFO    ] No camera update needed
[2026-06-22 11:56:47,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:56:47,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:56:47,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:56:47,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:56:49,387.387 INFO    ] ================================================
[2026-06-22 11:56:49,403.403 INFO    ] Launching Daemon at Mon Jun 22 11:56:49 IST 2026
[2026-06-22 11:56:49,414.414 INFO    ] ================================================
[2026-06-22 11:56:50,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:56:50
[2026-06-22 11:56:50,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:56:50,991.991 INFO    ] Initializing speech engine...
[2026-06-22 11:56:50,998.998 INFO    ] 2026-06-22 11:56:50
[2026-06-22 11:56:51,308.308 INFO    ] 2026-06-22 11:56:51
[2026-06-22 11:56:51,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:56:51,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:56:51,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:56:52,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:56:52,063.063 INFO    ] time= 22/06/2026 11:56:52
[2026-06-22 11:56:52,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:56:52,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:56:52,387.387 INFO    ] No existing commands found in stream
[2026-06-22 11:56:57,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:56:57,409.409 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-22 11:56:58,551.551 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:56:58,554.554 INFO    ] Checking for system updates...
[2026-06-22 11:56:58,591.591 INFO    ] 200
[2026-06-22 11:56:58,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:56:58,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:56:58,659.659 INFO    ] No update needed
[2026-06-22 11:56:58,662.662 INFO    ] Checking for camera pi updates...
[2026-06-22 11:56:58,701.701 INFO    ] 200
[2026-06-22 11:56:58,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:56:58,747.747 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:56:58,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:56:58,839.839 INFO    ] No camera update needed
[2026-06-22 11:56:58,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:56:58,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:56:58,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:56:58,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:57:00,900.900 INFO    ] ================================================
[2026-06-22 11:57:00,915.915 INFO    ] Launching Daemon at Mon Jun 22 11:57:00 IST 2026
[2026-06-22 11:57:00,927.927 INFO    ] ================================================
[2026-06-22 11:57:01,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:57:01
[2026-06-22 11:57:02,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:57:02,563.563 INFO    ] Initializing speech engine...
[2026-06-22 11:57:02,571.571 INFO    ] 2026-06-22 11:57:02
[2026-06-22 11:57:02,864.864 INFO    ] 2026-06-22 11:57:02
[2026-06-22 11:57:02,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:57:03,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:57:03,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:57:03,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:57:03,315.315 INFO    ] time= 22/06/2026 11:57:03
[2026-06-22 11:57:03,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:57:03,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:57:03,471.471 INFO    ] No existing commands found in stream
[2026-06-22 11:57:08,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:57:08,504.504 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-22 11:57:08,954.954 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:57:08,957.957 INFO    ] Checking for system updates...
[2026-06-22 11:57:08,992.992 INFO    ] 200
[2026-06-22 11:57:08,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:57:09,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:57:09,051.051 INFO    ] No update needed
[2026-06-22 11:57:09,053.053 INFO    ] Checking for camera pi updates...
[2026-06-22 11:57:09,091.091 INFO    ] 200
[2026-06-22 11:57:09,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:57:09,138.138 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:57:09,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:57:09,230.230 INFO    ] No camera update needed
[2026-06-22 11:57:09,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:57:09,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:57:09,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:57:09,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:57:11,287.287 INFO    ] ================================================
[2026-06-22 11:57:11,303.303 INFO    ] Launching Daemon at Mon Jun 22 11:57:11 IST 2026
[2026-06-22 11:57:11,313.313 INFO    ] ================================================
[2026-06-22 11:57:11,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:57:11
[2026-06-22 11:57:12,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:57:12,765.765 INFO    ] Initializing speech engine...
[2026-06-22 11:57:12,783.783 INFO    ] 2026-06-22 11:57:12
[2026-06-22 11:57:13,034.034 INFO    ] 2026-06-22 11:57:13
[2026-06-22 11:57:13,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:57:13,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:57:13,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:57:13,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:57:13,520.520 INFO    ] time= 22/06/2026 11:57:13
[2026-06-22 11:57:13,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:57:13,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:57:13,745.745 INFO    ] No existing commands found in stream
[2026-06-22 11:57:18,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:57:18,780.780 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-22 11:57:22,800.800 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:57:22,802.802 INFO    ] Checking for system updates...
[2026-06-22 11:57:22,822.822 INFO    ] 200
[2026-06-22 11:57:22,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:57:22,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:57:22,856.856 INFO    ] No update needed
[2026-06-22 11:57:22,857.857 INFO    ] Checking for camera pi updates...
[2026-06-22 11:57:22,877.877 INFO    ] 200
[2026-06-22 11:57:22,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:57:22,922.922 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:57:23,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:57:23,016.016 INFO    ] No camera update needed
[2026-06-22 11:57:23,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:57:23,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:57:23,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:57:23,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:57:25,073.073 INFO    ] ================================================
[2026-06-22 11:57:25,089.089 INFO    ] Launching Daemon at Mon Jun 22 11:57:25 IST 2026
[2026-06-22 11:57:25,100.100 INFO    ] ================================================
[2026-06-22 11:57:25,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:57:25
[2026-06-22 11:57:26,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:57:26,525.525 INFO    ] Initializing speech engine...
[2026-06-22 11:57:26,535.535 INFO    ] 2026-06-22 11:57:26
[2026-06-22 11:57:26,782.782 INFO    ] 2026-06-22 11:57:26
[2026-06-22 11:57:26,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:57:27,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:57:27,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:57:27,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:57:27,393.393 INFO    ] time= 22/06/2026 11:57:27
[2026-06-22 11:57:27,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:57:27,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:57:27,643.643 INFO    ] No existing commands found in stream
[2026-06-22 11:57:32,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:57:32,659.659 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-22 11:57:35,679.679 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:57:35,680.680 INFO    ] Checking for system updates...
[2026-06-22 11:57:35,704.704 INFO    ] 200
[2026-06-22 11:57:35,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:57:35,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:57:35,761.761 INFO    ] No update needed
[2026-06-22 11:57:35,763.763 INFO    ] Checking for camera pi updates...
[2026-06-22 11:57:35,797.797 INFO    ] 200
[2026-06-22 11:57:35,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:57:35,846.846 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:57:35,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:57:35,929.929 INFO    ] No camera update needed
[2026-06-22 11:57:35,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:57:35,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:57:35,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:57:35,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:57:37,987.987 INFO    ] ================================================
[2026-06-22 11:57:38,002.002 INFO    ] Launching Daemon at Mon Jun 22 11:57:37 IST 2026
[2026-06-22 11:57:38,013.013 INFO    ] ================================================
[2026-06-22 11:57:38,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:57:38
[2026-06-22 11:57:39,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:57:39,486.486 INFO    ] Initializing speech engine...
[2026-06-22 11:57:39,495.495 INFO    ] 2026-06-22 11:57:39
[2026-06-22 11:57:39,754.754 INFO    ] 2026-06-22 11:57:39
[2026-06-22 11:57:39,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:57:40,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:57:40,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:57:40,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:57:40,249.249 INFO    ] time= 22/06/2026 11:57:40
[2026-06-22 11:57:40,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:57:40,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:57:40,447.447 INFO    ] No existing commands found in stream
[2026-06-22 11:57:45,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:57:45,471.471 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-22 11:57:49,436.436 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:57:49,438.438 INFO    ] Checking for system updates...
[2026-06-22 11:57:49,459.459 INFO    ] 200
[2026-06-22 11:57:49,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:57:49,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:57:49,493.493 INFO    ] No update needed
[2026-06-22 11:57:49,494.494 INFO    ] Checking for camera pi updates...
[2026-06-22 11:57:49,515.515 INFO    ] 200
[2026-06-22 11:57:49,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:57:49,563.563 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:57:49,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:57:49,659.659 INFO    ] No camera update needed
[2026-06-22 11:57:49,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:57:49,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:57:49,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:57:49,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:57:51,716.716 INFO    ] ================================================
[2026-06-22 11:57:51,731.731 INFO    ] Launching Daemon at Mon Jun 22 11:57:51 IST 2026
[2026-06-22 11:57:51,743.743 INFO    ] ================================================
[2026-06-22 11:57:52,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:57:52
[2026-06-22 11:57:52,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:57:53,083.083 INFO    ] Initializing speech engine...
[2026-06-22 11:57:53,093.093 INFO    ] 2026-06-22 11:57:53
[2026-06-22 11:57:53,339.339 INFO    ] 2026-06-22 11:57:53
[2026-06-22 11:57:53,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:57:53,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:57:53,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:57:53,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:57:53,817.817 INFO    ] time= 22/06/2026 11:57:53
[2026-06-22 11:57:53,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:57:53,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:57:54,048.048 INFO    ] No existing commands found in stream
[2026-06-22 11:57:59,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:57:59,066.066 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-22 11:58:00,668.668 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 11:58:00,670.670 INFO    ] Checking for system updates...
[2026-06-22 11:58:00,710.710 INFO    ] 200
[2026-06-22 11:58:00,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:58:00,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:58:00,768.768 INFO    ] No update needed
[2026-06-22 11:58:00,770.770 INFO    ] Checking for camera pi updates...
[2026-06-22 11:58:00,804.804 INFO    ] 200
[2026-06-22 11:58:00,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:58:00,854.854 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:58:00,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:58:00,940.940 INFO    ] No camera update needed
[2026-06-22 11:58:00,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:58:00,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:58:00,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:58:00,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:58:03,001.001 INFO    ] ================================================
[2026-06-22 11:58:03,018.018 INFO    ] Launching Daemon at Mon Jun 22 11:58:03 IST 2026
[2026-06-22 11:58:03,028.028 INFO    ] ================================================
[2026-06-22 11:58:03,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:58:03
[2026-06-22 11:58:04,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:58:04,549.549 INFO    ] Initializing speech engine...
[2026-06-22 11:58:04,562.562 INFO    ] 2026-06-22 11:58:04
[2026-06-22 11:58:04,847.847 INFO    ] 2026-06-22 11:58:04
[2026-06-22 11:58:04,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:58:05,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:58:05,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:58:05,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:58:05,392.392 INFO    ] time= 22/06/2026 11:58:05
[2026-06-22 11:58:05,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:58:05,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:58:05,571.571 INFO    ] No existing commands found in stream
[2026-06-22 11:58:10,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:58:10,605.605 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-22 11:58:12,049.049 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 11:58:12,051.051 INFO    ] Checking for system updates...
[2026-06-22 11:58:12,072.072 INFO    ] 200
[2026-06-22 11:58:12,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:58:12,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:58:12,106.106 INFO    ] No update needed
[2026-06-22 11:58:12,107.107 INFO    ] Checking for camera pi updates...
[2026-06-22 11:58:12,139.139 INFO    ] 200
[2026-06-22 11:58:12,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:58:12,188.188 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:58:12,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:58:12,275.275 INFO    ] No camera update needed
[2026-06-22 11:58:12,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:58:12,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:58:12,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:58:12,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:58:14,335.335 INFO    ] ================================================
[2026-06-22 11:58:14,351.351 INFO    ] Launching Daemon at Mon Jun 22 11:58:14 IST 2026
[2026-06-22 11:58:14,361.361 INFO    ] ================================================
[2026-06-22 11:58:14,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:58:14
[2026-06-22 11:58:15,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:58:15,764.764 INFO    ] Initializing speech engine...
[2026-06-22 11:58:15,777.777 INFO    ] 2026-06-22 11:58:15
[2026-06-22 11:58:16,045.045 INFO    ] 2026-06-22 11:58:16
[2026-06-22 11:58:16,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:58:16,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:58:16,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:58:16,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:58:16,527.527 INFO    ] time= 22/06/2026 11:58:16
[2026-06-22 11:58:16,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:58:16,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:58:16,782.782 INFO    ] No existing commands found in stream
[2026-06-22 11:58:21,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:58:21,804.804 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-22 11:58:25,105.105 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 11:58:25,108.108 INFO    ] Checking for system updates...
[2026-06-22 11:58:25,144.144 INFO    ] 200
[2026-06-22 11:58:25,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:58:25,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:58:25,202.202 INFO    ] No update needed
[2026-06-22 11:58:25,205.205 INFO    ] Checking for camera pi updates...
[2026-06-22 11:58:25,242.242 INFO    ] 200
[2026-06-22 11:58:25,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:58:25,290.290 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:58:25,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:58:25,480.480 INFO    ] No camera update needed
[2026-06-22 11:58:25,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:58:25,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:58:25,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:58:25,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:58:27,537.537 INFO    ] ================================================
[2026-06-22 11:58:27,552.552 INFO    ] Launching Daemon at Mon Jun 22 11:58:27 IST 2026
[2026-06-22 11:58:27,562.562 INFO    ] ================================================
[2026-06-22 11:58:28,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:58:28
[2026-06-22 11:58:28,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:58:28,911.911 INFO    ] Initializing speech engine...
[2026-06-22 11:58:28,917.917 INFO    ] 2026-06-22 11:58:28
[2026-06-22 11:58:29,208.208 INFO    ] 2026-06-22 11:58:29
[2026-06-22 11:58:29,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:58:29,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:58:29,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:58:29,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:58:29,908.908 INFO    ] time= 22/06/2026 11:58:29
[2026-06-22 11:58:29,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:58:30,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:58:30,155.155 INFO    ] No existing commands found in stream
[2026-06-22 11:58:35,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:58:35,186.186 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-22 11:58:38,801.801 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:58:38,802.802 INFO    ] Checking for system updates...
[2026-06-22 11:58:38,824.824 INFO    ] 200
[2026-06-22 11:58:38,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:58:38,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:58:38,868.868 INFO    ] No update needed
[2026-06-22 11:58:38,870.870 INFO    ] Checking for camera pi updates...
[2026-06-22 11:58:38,920.920 INFO    ] 200
[2026-06-22 11:58:38,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:58:38,968.968 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:58:39,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:58:39,050.050 INFO    ] No camera update needed
[2026-06-22 11:58:39,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:58:39,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:58:39,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:58:39,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:58:41,105.105 INFO    ] ================================================
[2026-06-22 11:58:41,119.119 INFO    ] Launching Daemon at Mon Jun 22 11:58:41 IST 2026
[2026-06-22 11:58:41,130.130 INFO    ] ================================================
[2026-06-22 11:58:41,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:58:41
[2026-06-22 11:58:42,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:58:42,511.511 INFO    ] Initializing speech engine...
[2026-06-22 11:58:42,525.525 INFO    ] 2026-06-22 11:58:42
[2026-06-22 11:58:42,805.805 INFO    ] 2026-06-22 11:58:42
[2026-06-22 11:58:42,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:58:43,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:58:43,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:58:43,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:58:43,344.344 INFO    ] time= 22/06/2026 11:58:43
[2026-06-22 11:58:43,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:58:43,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:58:43,518.518 INFO    ] No existing commands found in stream
[2026-06-22 11:58:48,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:58:48,547.547 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-22 11:58:52,607.607 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:58:52,609.609 INFO    ] Checking for system updates...
[2026-06-22 11:58:52,630.630 INFO    ] 200
[2026-06-22 11:58:52,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:58:52,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:58:52,664.664 INFO    ] No update needed
[2026-06-22 11:58:52,666.666 INFO    ] Checking for camera pi updates...
[2026-06-22 11:58:52,697.697 INFO    ] 200
[2026-06-22 11:58:52,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:58:52,742.742 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:58:52,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:58:52,801.801 INFO    ] No camera update needed
[2026-06-22 11:58:52,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:58:52,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:58:52,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:58:52,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:58:54,856.856 INFO    ] ================================================
[2026-06-22 11:58:54,871.871 INFO    ] Launching Daemon at Mon Jun 22 11:58:54 IST 2026
[2026-06-22 11:58:54,881.881 INFO    ] ================================================
[2026-06-22 11:58:55,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:58:55
[2026-06-22 11:58:55,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:58:56,255.255 INFO    ] Initializing speech engine...
[2026-06-22 11:58:56,264.264 INFO    ] 2026-06-22 11:58:56
[2026-06-22 11:58:56,523.523 INFO    ] 2026-06-22 11:58:56
[2026-06-22 11:58:56,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:58:56,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:58:56,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:58:56,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:58:57,009.009 INFO    ] time= 22/06/2026 11:58:56
[2026-06-22 11:58:57,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:58:57,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:58:57,224.224 INFO    ] No existing commands found in stream
[2026-06-22 11:59:02,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:59:02,241.241 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-22 11:59:03,617.617 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:59:03,619.619 INFO    ] Checking for system updates...
[2026-06-22 11:59:03,655.655 INFO    ] 200
[2026-06-22 11:59:03,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:59:03,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:59:03,720.720 INFO    ] No update needed
[2026-06-22 11:59:03,722.722 INFO    ] Checking for camera pi updates...
[2026-06-22 11:59:03,756.756 INFO    ] 200
[2026-06-22 11:59:03,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:59:03,799.799 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:59:03,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:59:03,888.888 INFO    ] No camera update needed
[2026-06-22 11:59:03,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:59:03,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:59:03,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:59:03,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:59:05,944.944 INFO    ] ================================================
[2026-06-22 11:59:05,959.959 INFO    ] Launching Daemon at Mon Jun 22 11:59:05 IST 2026
[2026-06-22 11:59:05,969.969 INFO    ] ================================================
[2026-06-22 11:59:06,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:59:06
[2026-06-22 11:59:07,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:59:07,432.432 INFO    ] Initializing speech engine...
[2026-06-22 11:59:07,450.450 INFO    ] 2026-06-22 11:59:07
[2026-06-22 11:59:07,724.724 INFO    ] 2026-06-22 11:59:07
[2026-06-22 11:59:07,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:59:07,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:59:08,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:59:08,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:59:08,225.225 INFO    ] time= 22/06/2026 11:59:08
[2026-06-22 11:59:08,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:59:08,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:59:08,438.438 INFO    ] No existing commands found in stream
[2026-06-22 11:59:13,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:59:13,456.456 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-22 11:59:17,037.037 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:59:17,039.039 INFO    ] Checking for system updates...
[2026-06-22 11:59:17,075.075 INFO    ] 200
[2026-06-22 11:59:17,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:59:17,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:59:17,134.134 INFO    ] No update needed
[2026-06-22 11:59:17,136.136 INFO    ] Checking for camera pi updates...
[2026-06-22 11:59:17,170.170 INFO    ] 200
[2026-06-22 11:59:17,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:59:17,213.213 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:59:17,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:59:17,298.298 INFO    ] No camera update needed
[2026-06-22 11:59:17,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:59:17,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:59:17,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:59:17,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:59:19,354.354 INFO    ] ================================================
[2026-06-22 11:59:19,369.369 INFO    ] Launching Daemon at Mon Jun 22 11:59:19 IST 2026
[2026-06-22 11:59:19,380.380 INFO    ] ================================================
[2026-06-22 11:59:19,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:59:19
[2026-06-22 11:59:20,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:59:20,757.757 INFO    ] Initializing speech engine...
[2026-06-22 11:59:20,766.766 INFO    ] 2026-06-22 11:59:20
[2026-06-22 11:59:21,029.029 INFO    ] 2026-06-22 11:59:21
[2026-06-22 11:59:21,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:59:21,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:59:21,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:59:21,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:59:21,573.573 INFO    ] time= 22/06/2026 11:59:21
[2026-06-22 11:59:21,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:59:21,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:59:21,728.728 INFO    ] No existing commands found in stream
[2026-06-22 11:59:26,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:59:26,739.739 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-22 11:59:27,665.665 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 11:59:27,668.668 INFO    ] Checking for system updates...
[2026-06-22 11:59:27,705.705 INFO    ] 200
[2026-06-22 11:59:27,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:59:27,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:59:27,765.765 INFO    ] No update needed
[2026-06-22 11:59:27,768.768 INFO    ] Checking for camera pi updates...
[2026-06-22 11:59:27,803.803 INFO    ] 200
[2026-06-22 11:59:27,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:59:27,852.852 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:59:27,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 11:59:27,966.966 INFO    ] No camera update needed
[2026-06-22 11:59:27,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:59:27,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:59:27,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:59:27,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:59:30,026.026 INFO    ] ================================================
[2026-06-22 11:59:30,041.041 INFO    ] Launching Daemon at Mon Jun 22 11:59:30 IST 2026
[2026-06-22 11:59:30,052.052 INFO    ] ================================================
[2026-06-22 11:59:30,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:59:30
[2026-06-22 11:59:31,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:59:31,494.494 INFO    ] Initializing speech engine...
[2026-06-22 11:59:31,500.500 INFO    ] 2026-06-22 11:59:31
[2026-06-22 11:59:31,789.789 INFO    ] 2026-06-22 11:59:31
[2026-06-22 11:59:31,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:59:32,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:59:32,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:59:32,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:59:32,347.347 INFO    ] time= 22/06/2026 11:59:32
[2026-06-22 11:59:32,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:59:32,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:59:32,517.517 INFO    ] No existing commands found in stream
[2026-06-22 11:59:37,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:59:37,552.552 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-22 11:59:38,583.583 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 11:59:38,586.586 INFO    ] Checking for system updates...
[2026-06-22 11:59:38,622.622 INFO    ] 200
[2026-06-22 11:59:38,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:59:38,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:59:38,680.680 INFO    ] No update needed
[2026-06-22 11:59:38,683.683 INFO    ] Checking for camera pi updates...
[2026-06-22 11:59:38,720.720 INFO    ] 200
[2026-06-22 11:59:38,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:59:38,764.764 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:59:38,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:59:38,850.850 INFO    ] No camera update needed
[2026-06-22 11:59:38,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:59:38,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:59:38,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:59:38,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:59:40,910.910 INFO    ] ================================================
[2026-06-22 11:59:40,925.925 INFO    ] Launching Daemon at Mon Jun 22 11:59:40 IST 2026
[2026-06-22 11:59:40,935.935 INFO    ] ================================================
[2026-06-22 11:59:41,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:59:41
[2026-06-22 11:59:42,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:59:42,314.314 INFO    ] Initializing speech engine...
[2026-06-22 11:59:42,322.322 INFO    ] 2026-06-22 11:59:42
[2026-06-22 11:59:42,568.568 INFO    ] 2026-06-22 11:59:42
[2026-06-22 11:59:42,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:59:42,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:59:42,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:59:43,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:59:43,116.116 INFO    ] time= 22/06/2026 11:59:43
[2026-06-22 11:59:43,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:59:43,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:59:43,293.293 INFO    ] No existing commands found in stream
[2026-06-22 11:59:48,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 11:59:48,321.321 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-22 11:59:52,008.008 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 11:59:52,009.009 INFO    ] Checking for system updates...
[2026-06-22 11:59:52,030.030 INFO    ] 200
[2026-06-22 11:59:52,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:59:52,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:59:52,063.063 INFO    ] No update needed
[2026-06-22 11:59:52,065.065 INFO    ] Checking for camera pi updates...
[2026-06-22 11:59:52,085.085 INFO    ] 200
[2026-06-22 11:59:52,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 11:59:52,118.118 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 11:59:52,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 11:59:52,225.225 INFO    ] No camera update needed
[2026-06-22 11:59:52,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-22 11:59:52,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 11:59:52,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 11:59:52,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 11:59:54,286.286 INFO    ] ================================================
[2026-06-22 11:59:54,301.301 INFO    ] Launching Daemon at Mon Jun 22 11:59:54 IST 2026
[2026-06-22 11:59:54,311.311 INFO    ] ================================================
[2026-06-22 11:59:54,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 11:59:54
[2026-06-22 11:59:55,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 11:59:55,772.772 INFO    ] Initializing speech engine...
[2026-06-22 11:59:55,781.781 INFO    ] 2026-06-22 11:59:55
[2026-06-22 11:59:56,039.039 INFO    ] 2026-06-22 11:59:56
[2026-06-22 11:59:56,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 11:59:56,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 11:59:56,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 11:59:56,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 11:59:56,495.495 INFO    ] time= 22/06/2026 11:59:56
[2026-06-22 11:59:56,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 11:59:56,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-22 11:59:56,726.726 INFO    ] No existing commands found in stream
[2026-06-22 12:00:01,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:00:01,759.759 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-22 12:00:09,800.800 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:00:09,803.803 INFO    ] Checking for system updates...
[2026-06-22 12:00:09,839.839 INFO    ] 200
[2026-06-22 12:00:09,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:00:09,894.894 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:00:09,897.897 INFO    ] No update needed
[2026-06-22 12:00:09,899.899 INFO    ] Checking for camera pi updates...
[2026-06-22 12:00:09,932.932 INFO    ] 200
[2026-06-22 12:00:09,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:00:09,975.975 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:00:10,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:00:10,068.068 INFO    ] No camera update needed
[2026-06-22 12:00:10,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:00:10,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:00:10,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:00:10,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:00:12,122.122 INFO    ] ================================================
[2026-06-22 12:00:12,138.138 INFO    ] Launching Daemon at Mon Jun 22 12:00:12 IST 2026
[2026-06-22 12:00:12,149.149 INFO    ] ================================================
[2026-06-22 12:00:12,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:00:12
[2026-06-22 12:00:13,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:00:13,620.620 INFO    ] Initializing speech engine...
[2026-06-22 12:00:13,640.640 INFO    ] 2026-06-22 12:00:13
[2026-06-22 12:00:13,908.908 INFO    ] 2026-06-22 12:00:13
[2026-06-22 12:00:13,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:00:14,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:00:14,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:00:14,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:00:14,325.325 INFO    ] time= 22/06/2026 12:00:14
[2026-06-22 12:00:14,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:00:14,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:00:14,525.525 INFO    ] No existing commands found in stream
[2026-06-22 12:00:19,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:00:19,556.556 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-22 12:00:22,690.690 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:00:22,692.692 INFO    ] Checking for system updates...
[2026-06-22 12:00:22,714.714 INFO    ] 200
[2026-06-22 12:00:22,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:00:22,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:00:22,747.747 INFO    ] No update needed
[2026-06-22 12:00:22,748.748 INFO    ] Checking for camera pi updates...
[2026-06-22 12:00:22,767.767 INFO    ] 200
[2026-06-22 12:00:22,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:00:22,807.807 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:00:22,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:00:22,891.891 INFO    ] No camera update needed
[2026-06-22 12:00:22,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:00:22,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:00:22,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:00:22,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:00:24,946.946 INFO    ] ================================================
[2026-06-22 12:00:24,962.962 INFO    ] Launching Daemon at Mon Jun 22 12:00:24 IST 2026
[2026-06-22 12:00:24,974.974 INFO    ] ================================================
[2026-06-22 12:00:25,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:00:25
[2026-06-22 12:00:26,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:00:26,289.289 INFO    ] Initializing speech engine...
[2026-06-22 12:00:26,304.304 INFO    ] 2026-06-22 12:00:26
[2026-06-22 12:00:26,571.571 INFO    ] 2026-06-22 12:00:26
[2026-06-22 12:00:26,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:00:26,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:00:26,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:00:27,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:00:27,036.036 INFO    ] time= 22/06/2026 12:00:27
[2026-06-22 12:00:27,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:00:27,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:00:27,165.165 INFO    ] No existing commands found in stream
[2026-06-22 12:00:32,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:00:32,180.180 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-22 12:00:33,328.328 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:00:33,330.330 INFO    ] Checking for system updates...
[2026-06-22 12:00:33,369.369 INFO    ] 200
[2026-06-22 12:00:33,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:00:33,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:00:33,428.428 INFO    ] No update needed
[2026-06-22 12:00:33,430.430 INFO    ] Checking for camera pi updates...
[2026-06-22 12:00:33,465.465 INFO    ] 200
[2026-06-22 12:00:33,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:00:33,509.509 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:00:33,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:00:33,605.605 INFO    ] No camera update needed
[2026-06-22 12:00:33,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:00:33,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:00:33,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:00:33,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:00:35,661.661 INFO    ] ================================================
[2026-06-22 12:00:35,677.677 INFO    ] Launching Daemon at Mon Jun 22 12:00:35 IST 2026
[2026-06-22 12:00:35,688.688 INFO    ] ================================================
[2026-06-22 12:00:36,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:00:36
[2026-06-22 12:00:36,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:00:37,083.083 INFO    ] Initializing speech engine...
[2026-06-22 12:00:37,091.091 INFO    ] 2026-06-22 12:00:37
[2026-06-22 12:00:37,395.395 INFO    ] 2026-06-22 12:00:37
[2026-06-22 12:00:37,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:00:37,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:00:37,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:00:37,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:00:37,907.907 INFO    ] time= 22/06/2026 12:00:37
[2026-06-22 12:00:37,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:00:37,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:00:38,062.062 INFO    ] No existing commands found in stream
[2026-06-22 12:00:43,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:00:43,100.100 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-22 12:00:46,257.257 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:00:46,258.258 INFO    ] Checking for system updates...
[2026-06-22 12:00:46,281.281 INFO    ] 200
[2026-06-22 12:00:46,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:00:46,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:00:46,341.341 INFO    ] No update needed
[2026-06-22 12:00:46,344.344 INFO    ] Checking for camera pi updates...
[2026-06-22 12:00:46,378.378 INFO    ] 200
[2026-06-22 12:00:46,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:00:46,427.427 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:00:46,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:00:46,528.528 INFO    ] No camera update needed
[2026-06-22 12:00:46,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:00:46,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:00:46,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:00:46,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:00:48,584.584 INFO    ] ================================================
[2026-06-22 12:00:48,600.600 INFO    ] Launching Daemon at Mon Jun 22 12:00:48 IST 2026
[2026-06-22 12:00:48,612.612 INFO    ] ================================================
[2026-06-22 12:00:49,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:00:49
[2026-06-22 12:00:49,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:00:50,042.042 INFO    ] Initializing speech engine...
[2026-06-22 12:00:50,058.058 INFO    ] 2026-06-22 12:00:50
[2026-06-22 12:00:50,342.342 INFO    ] 2026-06-22 12:00:50
[2026-06-22 12:00:50,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:00:50,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:00:50,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:00:50,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:00:50,767.767 INFO    ] time= 22/06/2026 12:00:50
[2026-06-22 12:00:50,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:00:50,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:00:50,855.855 INFO    ] No existing commands found in stream
[2026-06-22 12:00:55,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:00:55,893.893 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-22 12:00:57,513.513 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:00:57,514.514 INFO    ] Checking for system updates...
[2026-06-22 12:00:57,535.535 INFO    ] 200
[2026-06-22 12:00:57,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:00:57,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:00:57,568.568 INFO    ] No update needed
[2026-06-22 12:00:57,569.569 INFO    ] Checking for camera pi updates...
[2026-06-22 12:00:57,598.598 INFO    ] 200
[2026-06-22 12:00:57,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:00:57,646.646 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:00:57,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:00:57,716.716 INFO    ] No camera update needed
[2026-06-22 12:00:57,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:00:57,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:00:57,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:00:57,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:00:59,771.771 INFO    ] ================================================
[2026-06-22 12:00:59,787.787 INFO    ] Launching Daemon at Mon Jun 22 12:00:59 IST 2026
[2026-06-22 12:00:59,799.799 INFO    ] ================================================
[2026-06-22 12:01:00,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:01:00
[2026-06-22 12:01:00,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:01:01,145.145 INFO    ] Initializing speech engine...
[2026-06-22 12:01:01,152.152 INFO    ] 2026-06-22 12:01:01
[2026-06-22 12:01:01,406.406 INFO    ] 2026-06-22 12:01:01
[2026-06-22 12:01:01,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:01:01,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:01:01,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:01:01,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:01:01,927.927 INFO    ] time= 22/06/2026 12:01:01
[2026-06-22 12:01:01,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:01:01,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:01:02,039.039 INFO    ] No existing commands found in stream
[2026-06-22 12:01:07,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:01:07,052.052 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-22 12:01:08,066.066 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:01:08,068.068 INFO    ] Checking for system updates...
[2026-06-22 12:01:08,105.105 INFO    ] 200
[2026-06-22 12:01:08,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:01:08,162.162 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:01:08,165.165 INFO    ] No update needed
[2026-06-22 12:01:08,168.168 INFO    ] Checking for camera pi updates...
[2026-06-22 12:01:08,203.203 INFO    ] 200
[2026-06-22 12:01:08,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:01:08,252.252 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:01:08,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:01:08,347.347 INFO    ] No camera update needed
[2026-06-22 12:01:08,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:01:08,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:01:08,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:01:08,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:01:10,406.406 INFO    ] ================================================
[2026-06-22 12:01:10,422.422 INFO    ] Launching Daemon at Mon Jun 22 12:01:10 IST 2026
[2026-06-22 12:01:10,434.434 INFO    ] ================================================
[2026-06-22 12:01:10,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:01:10
[2026-06-22 12:01:11,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:01:11,767.767 INFO    ] Initializing speech engine...
[2026-06-22 12:01:11,777.777 INFO    ] 2026-06-22 12:01:11
[2026-06-22 12:01:12,050.050 INFO    ] 2026-06-22 12:01:12
[2026-06-22 12:01:12,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:01:12,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:01:12,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:01:12,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:01:12,460.460 INFO    ] time= 22/06/2026 12:01:12
[2026-06-22 12:01:12,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:01:12,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:01:12,583.583 INFO    ] No existing commands found in stream
[2026-06-22 12:01:17,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:01:17,611.611 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-22 12:01:22,016.016 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:01:22,018.018 INFO    ] Checking for system updates...
[2026-06-22 12:01:22,054.054 INFO    ] 200
[2026-06-22 12:01:22,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:01:22,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:01:22,111.111 INFO    ] No update needed
[2026-06-22 12:01:22,114.114 INFO    ] Checking for camera pi updates...
[2026-06-22 12:01:22,150.150 INFO    ] 200
[2026-06-22 12:01:22,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:01:22,193.193 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:01:22,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:01:22,281.281 INFO    ] No camera update needed
[2026-06-22 12:01:22,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:01:22,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:01:22,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:01:22,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:01:24,337.337 INFO    ] ================================================
[2026-06-22 12:01:24,353.353 INFO    ] Launching Daemon at Mon Jun 22 12:01:24 IST 2026
[2026-06-22 12:01:24,365.365 INFO    ] ================================================
[2026-06-22 12:01:24,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:01:24
[2026-06-22 12:01:25,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:01:25,882.882 INFO    ] Initializing speech engine...
[2026-06-22 12:01:25,887.887 INFO    ] 2026-06-22 12:01:25
[2026-06-22 12:01:26,150.150 INFO    ] 2026-06-22 12:01:26
[2026-06-22 12:01:26,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:01:26,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:01:26,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:01:26,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:01:26,692.692 INFO    ] time= 22/06/2026 12:01:26
[2026-06-22 12:01:26,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:01:26,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:01:26,828.828 INFO    ] No existing commands found in stream
[2026-06-22 12:01:31,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:01:31,857.857 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-22 12:01:32,844.844 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:01:32,847.847 INFO    ] Checking for system updates...
[2026-06-22 12:01:32,884.884 INFO    ] 200
[2026-06-22 12:01:32,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:01:32,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:01:32,947.947 INFO    ] No update needed
[2026-06-22 12:01:32,950.950 INFO    ] Checking for camera pi updates...
[2026-06-22 12:01:32,984.984 INFO    ] 200
[2026-06-22 12:01:32,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:01:33,032.032 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:01:33,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:01:33,086.086 INFO    ] No camera update needed
[2026-06-22 12:01:33,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:01:33,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:01:33,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:01:33,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:01:35,143.143 INFO    ] ================================================
[2026-06-22 12:01:35,159.159 INFO    ] Launching Daemon at Mon Jun 22 12:01:35 IST 2026
[2026-06-22 12:01:35,170.170 INFO    ] ================================================
[2026-06-22 12:01:35,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:01:35
[2026-06-22 12:01:36,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:01:36,667.667 INFO    ] Initializing speech engine...
[2026-06-22 12:01:36,676.676 INFO    ] 2026-06-22 12:01:36
[2026-06-22 12:01:36,967.967 INFO    ] 2026-06-22 12:01:36
[2026-06-22 12:01:37,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:01:37,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:01:37,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:01:37,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:01:37,498.498 INFO    ] time= 22/06/2026 12:01:37
[2026-06-22 12:01:37,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:01:37,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:01:37,669.669 INFO    ] No existing commands found in stream
[2026-06-22 12:01:42,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:01:42,709.709 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-22 12:01:45,737.737 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:01:45,738.738 INFO    ] Checking for system updates...
[2026-06-22 12:01:45,759.759 INFO    ] 200
[2026-06-22 12:01:45,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:01:45,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:01:45,792.792 INFO    ] No update needed
[2026-06-22 12:01:45,793.793 INFO    ] Checking for camera pi updates...
[2026-06-22 12:01:45,824.824 INFO    ] 200
[2026-06-22 12:01:45,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:01:45,871.871 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:01:45,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:01:45,955.955 INFO    ] No camera update needed
[2026-06-22 12:01:45,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:01:45,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:01:45,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:01:45,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:01:48,010.010 INFO    ] ================================================
[2026-06-22 12:01:48,025.025 INFO    ] Launching Daemon at Mon Jun 22 12:01:48 IST 2026
[2026-06-22 12:01:48,037.037 INFO    ] ================================================
[2026-06-22 12:01:48,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:01:48
[2026-06-22 12:01:49,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:01:49,543.543 INFO    ] Initializing speech engine...
[2026-06-22 12:01:49,553.553 INFO    ] 2026-06-22 12:01:49
[2026-06-22 12:01:49,823.823 INFO    ] 2026-06-22 12:01:49
[2026-06-22 12:01:49,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:01:50,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:01:50,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:01:50,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:01:50,323.323 INFO    ] time= 22/06/2026 12:01:50
[2026-06-22 12:01:50,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:01:50,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:01:50,615.615 INFO    ] No existing commands found in stream
[2026-06-22 12:01:55,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:01:55,638.638 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-22 12:01:57,913.913 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:01:57,916.916 INFO    ] Checking for system updates...
[2026-06-22 12:01:57,951.951 INFO    ] 200
[2026-06-22 12:01:57,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:01:58,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:01:58,009.009 INFO    ] No update needed
[2026-06-22 12:01:58,011.011 INFO    ] Checking for camera pi updates...
[2026-06-22 12:01:58,049.049 INFO    ] 200
[2026-06-22 12:01:58,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:01:58,093.093 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:01:58,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:01:58,186.186 INFO    ] No camera update needed
[2026-06-22 12:01:58,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:01:58,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:01:58,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:01:58,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:02:00,242.242 INFO    ] ================================================
[2026-06-22 12:02:00,257.257 INFO    ] Launching Daemon at Mon Jun 22 12:02:00 IST 2026
[2026-06-22 12:02:00,268.268 INFO    ] ================================================
[2026-06-22 12:02:00,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:02:00
[2026-06-22 12:02:01,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:02:01,947.947 INFO    ] Initializing speech engine...
[2026-06-22 12:02:01,957.957 INFO    ] 2026-06-22 12:02:01
[2026-06-22 12:02:02,246.246 INFO    ] 2026-06-22 12:02:02
[2026-06-22 12:02:02,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:02:02,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:02:02,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:02:02,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:02:02,829.829 INFO    ] time= 22/06/2026 12:02:02
[2026-06-22 12:02:02,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:02:02,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:02:03,023.023 INFO    ] No existing commands found in stream
[2026-06-22 12:02:08,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:02:08,057.057 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-22 12:02:09,577.577 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:02:09,580.580 INFO    ] Checking for system updates...
[2026-06-22 12:02:09,619.619 INFO    ] 200
[2026-06-22 12:02:09,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:02:09,675.675 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:02:09,678.678 INFO    ] No update needed
[2026-06-22 12:02:09,680.680 INFO    ] Checking for camera pi updates...
[2026-06-22 12:02:09,714.714 INFO    ] 200
[2026-06-22 12:02:09,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:02:09,762.762 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:02:09,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:02:09,853.853 INFO    ] No camera update needed
[2026-06-22 12:02:09,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:02:09,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:02:09,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:02:09,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:02:11,911.911 INFO    ] ================================================
[2026-06-22 12:02:11,927.927 INFO    ] Launching Daemon at Mon Jun 22 12:02:11 IST 2026
[2026-06-22 12:02:11,938.938 INFO    ] ================================================
[2026-06-22 12:02:12,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:02:12
[2026-06-22 12:02:13,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:02:13,433.433 INFO    ] Initializing speech engine...
[2026-06-22 12:02:13,446.446 INFO    ] 2026-06-22 12:02:13
[2026-06-22 12:02:13,728.728 INFO    ] 2026-06-22 12:02:13
[2026-06-22 12:02:13,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:02:14,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:02:14,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:02:14,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:02:14,280.280 INFO    ] time= 22/06/2026 12:02:14
[2026-06-22 12:02:14,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:02:14,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:02:14,435.435 INFO    ] No existing commands found in stream
[2026-06-22 12:02:19,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:02:19,456.456 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-22 12:02:20,591.591 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:02:20,593.593 INFO    ] Checking for system updates...
[2026-06-22 12:02:20,616.616 INFO    ] 200
[2026-06-22 12:02:20,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:02:20,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:02:20,675.675 INFO    ] No update needed
[2026-06-22 12:02:20,678.678 INFO    ] Checking for camera pi updates...
[2026-06-22 12:02:20,712.712 INFO    ] 200
[2026-06-22 12:02:20,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:02:20,761.761 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:02:20,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:02:20,848.848 INFO    ] No camera update needed
[2026-06-22 12:02:20,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:02:20,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:02:20,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:02:20,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:02:22,908.908 INFO    ] ================================================
[2026-06-22 12:02:22,924.924 INFO    ] Launching Daemon at Mon Jun 22 12:02:22 IST 2026
[2026-06-22 12:02:22,935.935 INFO    ] ================================================
[2026-06-22 12:02:23,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:02:23
[2026-06-22 12:02:24,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:02:24,458.458 INFO    ] Initializing speech engine...
[2026-06-22 12:02:24,468.468 INFO    ] 2026-06-22 12:02:24
[2026-06-22 12:02:24,728.728 INFO    ] 2026-06-22 12:02:24
[2026-06-22 12:02:24,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:02:25,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:02:25,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:02:25,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:02:25,288.288 INFO    ] time= 22/06/2026 12:02:25
[2026-06-22 12:02:25,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:02:25,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:02:25,441.441 INFO    ] No existing commands found in stream
[2026-06-22 12:02:30,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:02:30,459.459 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-22 12:02:32,883.883 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:02:32,886.886 INFO    ] Checking for system updates...
[2026-06-22 12:02:32,922.922 INFO    ] 200
[2026-06-22 12:02:32,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:02:32,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:02:32,980.980 INFO    ] No update needed
[2026-06-22 12:02:32,983.983 INFO    ] Checking for camera pi updates...
[2026-06-22 12:02:33,017.017 INFO    ] 200
[2026-06-22 12:02:33,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:02:33,060.060 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:02:33,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:02:33,211.211 INFO    ] No camera update needed
[2026-06-22 12:02:33,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:02:33,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:02:33,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:02:33,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:02:35,268.268 INFO    ] ================================================
[2026-06-22 12:02:35,285.285 INFO    ] Launching Daemon at Mon Jun 22 12:02:35 IST 2026
[2026-06-22 12:02:35,296.296 INFO    ] ================================================
[2026-06-22 12:02:35,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:02:35
[2026-06-22 12:02:36,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:02:36,716.716 INFO    ] Initializing speech engine...
[2026-06-22 12:02:36,731.731 INFO    ] 2026-06-22 12:02:36
[2026-06-22 12:02:37,002.002 INFO    ] 2026-06-22 12:02:36
[2026-06-22 12:02:37,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:02:37,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:02:37,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:02:37,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:02:37,440.440 INFO    ] time= 22/06/2026 12:02:37
[2026-06-22 12:02:37,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:02:37,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:02:37,684.684 INFO    ] No existing commands found in stream
[2026-06-22 12:02:42,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:02:42,712.712 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-22 12:02:45,134.134 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:02:45,137.137 INFO    ] Checking for system updates...
[2026-06-22 12:02:45,174.174 INFO    ] 200
[2026-06-22 12:02:45,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:02:45,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:02:45,246.246 INFO    ] No update needed
[2026-06-22 12:02:45,248.248 INFO    ] Checking for camera pi updates...
[2026-06-22 12:02:45,282.282 INFO    ] 200
[2026-06-22 12:02:45,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:02:45,327.327 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:02:45,408.408 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:02:45,410.410 INFO    ] No camera update needed
[2026-06-22 12:02:45,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:02:45,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:02:45,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:02:45,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:02:47,468.468 INFO    ] ================================================
[2026-06-22 12:02:47,485.485 INFO    ] Launching Daemon at Mon Jun 22 12:02:47 IST 2026
[2026-06-22 12:02:47,497.497 INFO    ] ================================================
[2026-06-22 12:02:48,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:02:48
[2026-06-22 12:02:48,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:02:48,908.908 INFO    ] Initializing speech engine...
[2026-06-22 12:02:48,916.916 INFO    ] 2026-06-22 12:02:48
[2026-06-22 12:02:49,215.215 INFO    ] 2026-06-22 12:02:49
[2026-06-22 12:02:49,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:02:49,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:02:49,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:02:49,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:02:49,644.644 INFO    ] time= 22/06/2026 12:02:49
[2026-06-22 12:02:49,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:02:49,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:02:49,733.733 INFO    ] No existing commands found in stream
[2026-06-22 12:02:54,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:02:54,751.751 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-22 12:02:58,834.834 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:02:58,837.837 INFO    ] Checking for system updates...
[2026-06-22 12:02:58,872.872 INFO    ] 200
[2026-06-22 12:02:58,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:02:58,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:02:58,930.930 INFO    ] No update needed
[2026-06-22 12:02:58,932.932 INFO    ] Checking for camera pi updates...
[2026-06-22 12:02:58,966.966 INFO    ] 200
[2026-06-22 12:02:58,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:02:59,011.011 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:02:59,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:02:59,093.093 INFO    ] No camera update needed
[2026-06-22 12:02:59,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:02:59,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:02:59,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:02:59,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:03:01,148.148 INFO    ] ================================================
[2026-06-22 12:03:01,164.164 INFO    ] Launching Daemon at Mon Jun 22 12:03:01 IST 2026
[2026-06-22 12:03:01,175.175 INFO    ] ================================================
[2026-06-22 12:03:01,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:03:01
[2026-06-22 12:03:02,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:03:03,118.118 INFO    ] Initializing speech engine...
[2026-06-22 12:03:03,127.127 INFO    ] 2026-06-22 12:03:03
[2026-06-22 12:03:03,402.402 INFO    ] 2026-06-22 12:03:03
[2026-06-22 12:03:03,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:03:03,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:03:03,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:03:04,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:03:04,870.870 INFO    ] time= 22/06/2026 12:03:04
[2026-06-22 12:03:04,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:03:04,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:03:05,885.885 INFO    ] No existing commands found in stream
[2026-06-22 12:03:10,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:03:10,909.909 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-22 12:03:14,837.837 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:03:14,840.840 INFO    ] Checking for system updates...
[2026-06-22 12:03:14,876.876 INFO    ] 200
[2026-06-22 12:03:14,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:03:14,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:03:14,942.942 INFO    ] No update needed
[2026-06-22 12:03:14,945.945 INFO    ] Checking for camera pi updates...
[2026-06-22 12:03:14,979.979 INFO    ] 200
[2026-06-22 12:03:14,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:03:15,028.028 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:03:15,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:03:15,113.113 INFO    ] No camera update needed
[2026-06-22 12:03:15,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:03:15,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:03:15,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:03:15,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:03:17,169.169 INFO    ] ================================================
[2026-06-22 12:03:17,185.185 INFO    ] Launching Daemon at Mon Jun 22 12:03:17 IST 2026
[2026-06-22 12:03:17,195.195 INFO    ] ================================================
[2026-06-22 12:03:17,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:03:17
[2026-06-22 12:03:18,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:03:18,888.888 INFO    ] Initializing speech engine...
[2026-06-22 12:03:18,899.899 INFO    ] 2026-06-22 12:03:18
[2026-06-22 12:03:19,190.190 INFO    ] 2026-06-22 12:03:19
[2026-06-22 12:03:19,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:03:19,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:03:19,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:03:19,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:03:19,734.734 INFO    ] time= 22/06/2026 12:03:19
[2026-06-22 12:03:19,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:03:19,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:03:19,895.895 INFO    ] No existing commands found in stream
[2026-06-22 12:03:24,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:03:24,933.933 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-22 12:03:27,859.859 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:03:27,863.863 INFO    ] Checking for system updates...
[2026-06-22 12:03:27,901.901 INFO    ] 200
[2026-06-22 12:03:27,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:03:27,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:03:27,963.963 INFO    ] No update needed
[2026-06-22 12:03:27,966.966 INFO    ] Checking for camera pi updates...
[2026-06-22 12:03:28,001.001 INFO    ] 200
[2026-06-22 12:03:28,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:03:28,046.046 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:03:28,148.148 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:03:28,151.151 INFO    ] No camera update needed
[2026-06-22 12:03:28,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:03:28,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:03:28,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:03:28,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:03:30,213.213 INFO    ] ================================================
[2026-06-22 12:03:30,228.228 INFO    ] Launching Daemon at Mon Jun 22 12:03:30 IST 2026
[2026-06-22 12:03:30,239.239 INFO    ] ================================================
[2026-06-22 12:03:30,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:03:30
[2026-06-22 12:03:31,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:03:31,802.802 INFO    ] Initializing speech engine...
[2026-06-22 12:03:31,816.816 INFO    ] 2026-06-22 12:03:31
[2026-06-22 12:03:32,093.093 INFO    ] 2026-06-22 12:03:32
[2026-06-22 12:03:32,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:03:32,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:03:32,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:03:32,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:03:32,595.595 INFO    ] time= 22/06/2026 12:03:32
[2026-06-22 12:03:32,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:03:32,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:03:32,815.815 INFO    ] No existing commands found in stream
[2026-06-22 12:03:37,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:03:37,849.849 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-22 12:03:39,697.697 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:03:39,699.699 INFO    ] Checking for system updates...
[2026-06-22 12:03:39,735.735 INFO    ] 200
[2026-06-22 12:03:39,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:03:39,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:03:39,796.796 INFO    ] No update needed
[2026-06-22 12:03:39,799.799 INFO    ] Checking for camera pi updates...
[2026-06-22 12:03:39,833.833 INFO    ] 200
[2026-06-22 12:03:39,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:03:39,882.882 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:03:39,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:03:39,969.969 INFO    ] No camera update needed
[2026-06-22 12:03:39,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:03:39,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:03:39,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:03:39,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:03:42,026.026 INFO    ] ================================================
[2026-06-22 12:03:42,042.042 INFO    ] Launching Daemon at Mon Jun 22 12:03:42 IST 2026
[2026-06-22 12:03:42,053.053 INFO    ] ================================================
[2026-06-22 12:03:42,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:03:42
[2026-06-22 12:03:43,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:03:43,536.536 INFO    ] Initializing speech engine...
[2026-06-22 12:03:43,542.542 INFO    ] 2026-06-22 12:03:43
[2026-06-22 12:03:43,804.804 INFO    ] 2026-06-22 12:03:43
[2026-06-22 12:03:43,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:03:44,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:03:44,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:03:44,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:03:44,292.292 INFO    ] time= 22/06/2026 12:03:44
[2026-06-22 12:03:44,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:03:44,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:03:44,500.500 INFO    ] No existing commands found in stream
[2026-06-22 12:03:49,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:03:49,517.517 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-22 12:03:53,373.373 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:03:53,376.376 INFO    ] Checking for system updates...
[2026-06-22 12:03:53,418.418 INFO    ] 200
[2026-06-22 12:03:53,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:03:53,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:03:53,479.479 INFO    ] No update needed
[2026-06-22 12:03:53,482.482 INFO    ] Checking for camera pi updates...
[2026-06-22 12:03:53,520.520 INFO    ] 200
[2026-06-22 12:03:53,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:03:53,571.571 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:03:53,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:03:53,656.656 INFO    ] No camera update needed
[2026-06-22 12:03:53,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:03:53,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:03:53,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:03:53,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:03:55,716.716 INFO    ] ================================================
[2026-06-22 12:03:55,731.731 INFO    ] Launching Daemon at Mon Jun 22 12:03:55 IST 2026
[2026-06-22 12:03:55,742.742 INFO    ] ================================================
[2026-06-22 12:03:56,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:03:56
[2026-06-22 12:03:56,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:03:57,172.172 INFO    ] Initializing speech engine...
[2026-06-22 12:03:57,178.178 INFO    ] 2026-06-22 12:03:57
[2026-06-22 12:03:57,423.423 INFO    ] 2026-06-22 12:03:57
[2026-06-22 12:03:57,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:03:57,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:03:57,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:03:57,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:03:57,936.936 INFO    ] time= 22/06/2026 12:03:57
[2026-06-22 12:03:58,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:03:58,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:03:58,147.147 INFO    ] No existing commands found in stream
[2026-06-22 12:04:03,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:04:03,160.160 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-22 12:04:06,937.937 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:04:06,939.939 INFO    ] Checking for system updates...
[2026-06-22 12:04:06,975.975 INFO    ] 200
[2026-06-22 12:04:06,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:04:07,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:04:07,033.033 INFO    ] No update needed
[2026-06-22 12:04:07,036.036 INFO    ] Checking for camera pi updates...
[2026-06-22 12:04:07,069.069 INFO    ] 200
[2026-06-22 12:04:07,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:04:07,119.119 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:04:07,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:04:07,200.200 INFO    ] No camera update needed
[2026-06-22 12:04:07,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:04:07,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:04:07,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:04:07,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:04:09,257.257 INFO    ] ================================================
[2026-06-22 12:04:09,273.273 INFO    ] Launching Daemon at Mon Jun 22 12:04:09 IST 2026
[2026-06-22 12:04:09,283.283 INFO    ] ================================================
[2026-06-22 12:04:09,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:04:09
[2026-06-22 12:04:10,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:04:10,898.898 INFO    ] Initializing speech engine...
[2026-06-22 12:04:10,910.910 INFO    ] 2026-06-22 12:04:10
[2026-06-22 12:04:11,189.189 INFO    ] 2026-06-22 12:04:11
[2026-06-22 12:04:11,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:04:11,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:04:11,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:04:11,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:04:11,724.724 INFO    ] time= 22/06/2026 12:04:11
[2026-06-22 12:04:11,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:04:11,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:04:11,880.880 INFO    ] No existing commands found in stream
[2026-06-22 12:04:16,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:04:16,897.897 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-22 12:04:20,617.617 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:04:20,620.620 INFO    ] Checking for system updates...
[2026-06-22 12:04:20,658.658 INFO    ] 200
[2026-06-22 12:04:20,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:04:20,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:04:20,721.721 INFO    ] No update needed
[2026-06-22 12:04:20,723.723 INFO    ] Checking for camera pi updates...
[2026-06-22 12:04:20,761.761 INFO    ] 200
[2026-06-22 12:04:20,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:04:20,806.806 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:04:20,864.864 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:04:20,867.867 INFO    ] No camera update needed
[2026-06-22 12:04:20,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:04:20,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:04:20,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:04:20,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:04:22,925.925 INFO    ] ================================================
[2026-06-22 12:04:22,940.940 INFO    ] Launching Daemon at Mon Jun 22 12:04:22 IST 2026
[2026-06-22 12:04:22,951.951 INFO    ] ================================================
[2026-06-22 12:04:23,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:04:23
[2026-06-22 12:04:24,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:04:24,409.409 INFO    ] Initializing speech engine...
[2026-06-22 12:04:24,420.420 INFO    ] 2026-06-22 12:04:24
[2026-06-22 12:04:24,668.668 INFO    ] 2026-06-22 12:04:24
[2026-06-22 12:04:24,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:04:24,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:04:24,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:04:25,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:04:25,147.147 INFO    ] time= 22/06/2026 12:04:25
[2026-06-22 12:04:25,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:04:25,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:04:25,347.347 INFO    ] No existing commands found in stream
[2026-06-22 12:04:30,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:04:30,380.380 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-22 12:04:31,238.238 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:04:31,241.241 INFO    ] Checking for system updates...
[2026-06-22 12:04:31,276.276 INFO    ] 200
[2026-06-22 12:04:31,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:04:31,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:04:31,340.340 INFO    ] No update needed
[2026-06-22 12:04:31,342.342 INFO    ] Checking for camera pi updates...
[2026-06-22 12:04:31,376.376 INFO    ] 200
[2026-06-22 12:04:31,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:04:31,424.424 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:04:31,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:04:31,521.521 INFO    ] No camera update needed
[2026-06-22 12:04:31,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:04:31,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:04:31,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:04:31,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:04:33,580.580 INFO    ] ================================================
[2026-06-22 12:04:33,596.596 INFO    ] Launching Daemon at Mon Jun 22 12:04:33 IST 2026
[2026-06-22 12:04:33,607.607 INFO    ] ================================================
[2026-06-22 12:04:34,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:04:34
[2026-06-22 12:04:34,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:04:35,121.121 INFO    ] Initializing speech engine...
[2026-06-22 12:04:35,132.132 INFO    ] 2026-06-22 12:04:35
[2026-06-22 12:04:35,393.393 INFO    ] 2026-06-22 12:04:35
[2026-06-22 12:04:35,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:04:35,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:04:35,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:04:35,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:04:35,951.951 INFO    ] time= 22/06/2026 12:04:35
[2026-06-22 12:04:35,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:04:35,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:04:36,112.112 INFO    ] No existing commands found in stream
[2026-06-22 12:04:41,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:04:41,129.129 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-22 12:04:45,622.622 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:04:45,624.624 INFO    ] Checking for system updates...
[2026-06-22 12:04:45,646.646 INFO    ] 200
[2026-06-22 12:04:45,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:04:45,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:04:45,681.681 INFO    ] No update needed
[2026-06-22 12:04:45,683.683 INFO    ] Checking for camera pi updates...
[2026-06-22 12:04:45,718.718 INFO    ] 200
[2026-06-22 12:04:45,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:04:45,774.774 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:04:45,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:04:45,961.961 INFO    ] No camera update needed
[2026-06-22 12:04:45,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:04:45,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:04:45,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:04:45,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:04:48,019.019 INFO    ] ================================================
[2026-06-22 12:04:48,035.035 INFO    ] Launching Daemon at Mon Jun 22 12:04:48 IST 2026
[2026-06-22 12:04:48,046.046 INFO    ] ================================================
[2026-06-22 12:04:48,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:04:48
[2026-06-22 12:04:49,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:04:49,560.560 INFO    ] Initializing speech engine...
[2026-06-22 12:04:49,574.574 INFO    ] 2026-06-22 12:04:49
[2026-06-22 12:04:49,841.841 INFO    ] 2026-06-22 12:04:49
[2026-06-22 12:04:49,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:04:50,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:04:50,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:04:50,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:04:50,372.372 INFO    ] time= 22/06/2026 12:04:50
[2026-06-22 12:04:50,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:04:50,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:04:50,528.528 INFO    ] No existing commands found in stream
[2026-06-22 12:04:55,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:04:55,550.550 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-22 12:04:58,379.379 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:04:58,382.382 INFO    ] Checking for system updates...
[2026-06-22 12:04:58,420.420 INFO    ] 200
[2026-06-22 12:04:58,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:04:58,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:04:58,479.479 INFO    ] No update needed
[2026-06-22 12:04:58,482.482 INFO    ] Checking for camera pi updates...
[2026-06-22 12:04:58,516.516 INFO    ] 200
[2026-06-22 12:04:58,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:04:58,560.560 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:04:58,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:04:58,646.646 INFO    ] No camera update needed
[2026-06-22 12:04:58,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:04:58,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:04:58,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:04:58,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:05:00,704.704 INFO    ] ================================================
[2026-06-22 12:05:00,719.719 INFO    ] Launching Daemon at Mon Jun 22 12:05:00 IST 2026
[2026-06-22 12:05:00,730.730 INFO    ] ================================================
[2026-06-22 12:05:01,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:05:01
[2026-06-22 12:05:02,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:05:02,584.584 INFO    ] Initializing speech engine...
[2026-06-22 12:05:02,597.597 INFO    ] 2026-06-22 12:05:02
[2026-06-22 12:05:02,893.893 INFO    ] 2026-06-22 12:05:02
[2026-06-22 12:05:02,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:05:03,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:05:03,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:05:03,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:05:03,460.460 INFO    ] time= 22/06/2026 12:05:03
[2026-06-22 12:05:03,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:05:03,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:05:03,668.668 INFO    ] No existing commands found in stream
[2026-06-22 12:05:08,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:05:08,696.696 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-22 12:05:11,545.545 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:05:11,547.547 INFO    ] Checking for system updates...
[2026-06-22 12:05:11,587.587 INFO    ] 200
[2026-06-22 12:05:11,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:05:11,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:05:11,645.645 INFO    ] No update needed
[2026-06-22 12:05:11,647.647 INFO    ] Checking for camera pi updates...
[2026-06-22 12:05:11,685.685 INFO    ] 200
[2026-06-22 12:05:11,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:05:11,732.732 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:05:11,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:05:11,810.810 INFO    ] No camera update needed
[2026-06-22 12:05:11,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:05:11,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:05:11,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:05:11,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:05:13,866.866 INFO    ] ================================================
[2026-06-22 12:05:13,881.881 INFO    ] Launching Daemon at Mon Jun 22 12:05:13 IST 2026
[2026-06-22 12:05:13,892.892 INFO    ] ================================================
[2026-06-22 12:05:14,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:05:14
[2026-06-22 12:05:14,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:05:15,208.208 INFO    ] Initializing speech engine...
[2026-06-22 12:05:15,221.221 INFO    ] 2026-06-22 12:05:15
[2026-06-22 12:05:15,506.506 INFO    ] 2026-06-22 12:05:15
[2026-06-22 12:05:15,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:05:15,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:05:15,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:05:15,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:05:15,928.928 INFO    ] time= 22/06/2026 12:05:15
[2026-06-22 12:05:15,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:05:15,939.939 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:05:16,016.016 INFO    ] No existing commands found in stream
[2026-06-22 12:05:21,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:05:21,053.053 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-22 12:05:23,007.007 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:05:23,010.010 INFO    ] Checking for system updates...
[2026-06-22 12:05:23,049.049 INFO    ] 200
[2026-06-22 12:05:23,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:05:23,111.111 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:05:23,113.113 INFO    ] No update needed
[2026-06-22 12:05:23,116.116 INFO    ] Checking for camera pi updates...
[2026-06-22 12:05:23,153.153 INFO    ] 200
[2026-06-22 12:05:23,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:05:23,201.201 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:05:23,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:05:23,282.282 INFO    ] No camera update needed
[2026-06-22 12:05:23,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:05:23,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:05:23,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:05:23,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:05:25,340.340 INFO    ] ================================================
[2026-06-22 12:05:25,357.357 INFO    ] Launching Daemon at Mon Jun 22 12:05:25 IST 2026
[2026-06-22 12:05:25,368.368 INFO    ] ================================================
[2026-06-22 12:05:25,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:05:25
[2026-06-22 12:05:26,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:05:26,868.868 INFO    ] Initializing speech engine...
[2026-06-22 12:05:26,891.891 INFO    ] 2026-06-22 12:05:26
[2026-06-22 12:05:27,147.147 INFO    ] 2026-06-22 12:05:27
[2026-06-22 12:05:27,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:05:27,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:05:27,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:05:27,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:05:27,647.647 INFO    ] time= 22/06/2026 12:05:27
[2026-06-22 12:05:27,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:05:27,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:05:27,845.845 INFO    ] No existing commands found in stream
[2026-06-22 12:05:32,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:05:32,870.870 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-22 12:05:35,679.679 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:05:35,682.682 INFO    ] Checking for system updates...
[2026-06-22 12:05:35,722.722 INFO    ] 200
[2026-06-22 12:05:35,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:05:35,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:05:35,788.788 INFO    ] No update needed
[2026-06-22 12:05:35,790.790 INFO    ] Checking for camera pi updates...
[2026-06-22 12:05:35,828.828 INFO    ] 200
[2026-06-22 12:05:35,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:05:35,871.871 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:05:35,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:05:35,948.948 INFO    ] No camera update needed
[2026-06-22 12:05:35,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:05:35,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:05:35,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:05:35,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:05:38,009.009 INFO    ] ================================================
[2026-06-22 12:05:38,024.024 INFO    ] Launching Daemon at Mon Jun 22 12:05:38 IST 2026
[2026-06-22 12:05:38,034.034 INFO    ] ================================================
[2026-06-22 12:05:38,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:05:38
[2026-06-22 12:05:39,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:05:39,478.478 INFO    ] Initializing speech engine...
[2026-06-22 12:05:39,499.499 INFO    ] 2026-06-22 12:05:39
[2026-06-22 12:05:39,785.785 INFO    ] 2026-06-22 12:05:39
[2026-06-22 12:05:39,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:05:40,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:05:40,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:05:40,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:05:40,216.216 INFO    ] time= 22/06/2026 12:05:40
[2026-06-22 12:05:40,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:05:40,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:05:40,401.401 INFO    ] No existing commands found in stream
[2026-06-22 12:05:45,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:05:45,429.429 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-22 12:05:46,494.494 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:05:46,497.497 INFO    ] Checking for system updates...
[2026-06-22 12:05:46,534.534 INFO    ] 200
[2026-06-22 12:05:46,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:05:46,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:05:46,600.600 INFO    ] No update needed
[2026-06-22 12:05:46,603.603 INFO    ] Checking for camera pi updates...
[2026-06-22 12:05:46,641.641 INFO    ] 200
[2026-06-22 12:05:46,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:05:46,684.684 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:05:46,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:05:46,772.772 INFO    ] No camera update needed
[2026-06-22 12:05:46,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:05:46,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:05:46,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:05:46,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:05:48,826.826 INFO    ] ================================================
[2026-06-22 12:05:48,841.841 INFO    ] Launching Daemon at Mon Jun 22 12:05:48 IST 2026
[2026-06-22 12:05:48,852.852 INFO    ] ================================================
[2026-06-22 12:05:49,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:05:49
[2026-06-22 12:05:49,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:05:50,203.203 INFO    ] Initializing speech engine...
[2026-06-22 12:05:50,211.211 INFO    ] 2026-06-22 12:05:50
[2026-06-22 12:05:50,467.467 INFO    ] 2026-06-22 12:05:50
[2026-06-22 12:05:50,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:05:50,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:05:50,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:05:50,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:05:51,011.011 INFO    ] time= 22/06/2026 12:05:50
[2026-06-22 12:05:51,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:05:51,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:05:51,168.168 INFO    ] No existing commands found in stream
[2026-06-22 12:05:56,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:05:56,183.183 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-22 12:05:57,743.743 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:05:57,746.746 INFO    ] Checking for system updates...
[2026-06-22 12:05:57,787.787 INFO    ] 200
[2026-06-22 12:05:57,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:05:57,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:05:57,853.853 INFO    ] No update needed
[2026-06-22 12:05:57,856.856 INFO    ] Checking for camera pi updates...
[2026-06-22 12:05:57,893.893 INFO    ] 200
[2026-06-22 12:05:57,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:05:57,937.937 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:05:58,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:05:58,023.023 INFO    ] No camera update needed
[2026-06-22 12:05:58,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:05:58,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:05:58,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:05:58,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:06:00,084.084 INFO    ] ================================================
[2026-06-22 12:06:00,099.099 INFO    ] Launching Daemon at Mon Jun 22 12:06:00 IST 2026
[2026-06-22 12:06:00,111.111 INFO    ] ================================================
[2026-06-22 12:06:00,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:06:00
[2026-06-22 12:06:01,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:06:01,451.451 INFO    ] Initializing speech engine...
[2026-06-22 12:06:01,458.458 INFO    ] 2026-06-22 12:06:01
[2026-06-22 12:06:01,715.715 INFO    ] 2026-06-22 12:06:01
[2026-06-22 12:06:01,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:06:02,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:06:02,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:06:02,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:06:02,267.267 INFO    ] time= 22/06/2026 12:06:02
[2026-06-22 12:06:02,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:06:02,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:06:02,363.363 INFO    ] No existing commands found in stream
[2026-06-22 12:06:07,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:06:07,376.376 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-22 12:06:09,892.892 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:06:09,893.893 INFO    ] Checking for system updates...
[2026-06-22 12:06:09,915.915 INFO    ] 200
[2026-06-22 12:06:09,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:06:09,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:06:09,958.958 INFO    ] No update needed
[2026-06-22 12:06:09,961.961 INFO    ] Checking for camera pi updates...
[2026-06-22 12:06:09,996.996 INFO    ] 200
[2026-06-22 12:06:09,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:06:10,048.048 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:06:10,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:06:10,131.131 INFO    ] No camera update needed
[2026-06-22 12:06:10,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:06:10,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:06:10,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:06:10,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:06:12,186.186 INFO    ] ================================================
[2026-06-22 12:06:12,201.201 INFO    ] Launching Daemon at Mon Jun 22 12:06:12 IST 2026
[2026-06-22 12:06:12,212.212 INFO    ] ================================================
[2026-06-22 12:06:12,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:06:12
[2026-06-22 12:06:13,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:06:13,549.549 INFO    ] Initializing speech engine...
[2026-06-22 12:06:13,558.558 INFO    ] 2026-06-22 12:06:13
[2026-06-22 12:06:13,805.805 INFO    ] 2026-06-22 12:06:13
[2026-06-22 12:06:13,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:06:14,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:06:14,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:06:14,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:06:14,362.362 INFO    ] time= 22/06/2026 12:06:14
[2026-06-22 12:06:14,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:06:14,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:06:14,521.521 INFO    ] No existing commands found in stream
[2026-06-22 12:06:19,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:06:19,551.551 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-22 12:06:20,959.959 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:06:20,962.962 INFO    ] Checking for system updates...
[2026-06-22 12:06:21,001.001 INFO    ] 200
[2026-06-22 12:06:21,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:06:21,062.062 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:06:21,064.064 INFO    ] No update needed
[2026-06-22 12:06:21,067.067 INFO    ] Checking for camera pi updates...
[2026-06-22 12:06:21,105.105 INFO    ] 200
[2026-06-22 12:06:21,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:06:21,159.159 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:06:21,211.211 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:06:21,213.213 INFO    ] No camera update needed
[2026-06-22 12:06:21,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:06:21,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:06:21,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:06:21,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:06:23,270.270 INFO    ] ================================================
[2026-06-22 12:06:23,285.285 INFO    ] Launching Daemon at Mon Jun 22 12:06:23 IST 2026
[2026-06-22 12:06:23,295.295 INFO    ] ================================================
[2026-06-22 12:06:23,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:06:23
[2026-06-22 12:06:24,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:06:24,718.718 INFO    ] Initializing speech engine...
[2026-06-22 12:06:24,734.734 INFO    ] 2026-06-22 12:06:24
[2026-06-22 12:06:25,018.018 INFO    ] 2026-06-22 12:06:24
[2026-06-22 12:06:25,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:06:25,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:06:25,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:06:25,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:06:25,435.435 INFO    ] time= 22/06/2026 12:06:25
[2026-06-22 12:06:25,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:06:25,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:06:25,562.562 INFO    ] No existing commands found in stream
[2026-06-22 12:06:30,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:06:30,590.590 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-22 12:06:33,428.428 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:06:33,431.431 INFO    ] Checking for system updates...
[2026-06-22 12:06:33,471.471 INFO    ] 200
[2026-06-22 12:06:33,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:06:33,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:06:33,535.535 INFO    ] No update needed
[2026-06-22 12:06:33,538.538 INFO    ] Checking for camera pi updates...
[2026-06-22 12:06:33,571.571 INFO    ] 200
[2026-06-22 12:06:33,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:06:33,615.615 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:06:33,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:06:33,705.705 INFO    ] No camera update needed
[2026-06-22 12:06:33,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:06:33,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:06:33,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:06:33,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:06:35,761.761 INFO    ] ================================================
[2026-06-22 12:06:35,776.776 INFO    ] Launching Daemon at Mon Jun 22 12:06:35 IST 2026
[2026-06-22 12:06:35,786.786 INFO    ] ================================================
[2026-06-22 12:06:36,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:06:36
[2026-06-22 12:06:36,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:06:37,189.189 INFO    ] Initializing speech engine...
[2026-06-22 12:06:37,201.201 INFO    ] 2026-06-22 12:06:37
[2026-06-22 12:06:37,466.466 INFO    ] 2026-06-22 12:06:37
[2026-06-22 12:06:37,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:06:37,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:06:37,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:06:37,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:06:37,997.997 INFO    ] time= 22/06/2026 12:06:37
[2026-06-22 12:06:38,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:06:38,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:06:38,207.207 INFO    ] No existing commands found in stream
[2026-06-22 12:06:43,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:06:43,221.221 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-22 12:06:44,147.147 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:06:44,150.150 INFO    ] Checking for system updates...
[2026-06-22 12:06:44,190.190 INFO    ] 200
[2026-06-22 12:06:44,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:06:44,253.253 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:06:44,255.255 INFO    ] No update needed
[2026-06-22 12:06:44,258.258 INFO    ] Checking for camera pi updates...
[2026-06-22 12:06:44,295.295 INFO    ] 200
[2026-06-22 12:06:44,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:06:44,339.339 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:06:44,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:06:44,421.421 INFO    ] No camera update needed
[2026-06-22 12:06:44,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:06:44,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:06:44,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:06:44,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:06:46,477.477 INFO    ] ================================================
[2026-06-22 12:06:46,492.492 INFO    ] Launching Daemon at Mon Jun 22 12:06:46 IST 2026
[2026-06-22 12:06:46,503.503 INFO    ] ================================================
[2026-06-22 12:06:47,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:06:47
[2026-06-22 12:06:47,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:06:47,842.842 INFO    ] Initializing speech engine...
[2026-06-22 12:06:47,849.849 INFO    ] 2026-06-22 12:06:47
[2026-06-22 12:06:48,108.108 INFO    ] 2026-06-22 12:06:48
[2026-06-22 12:06:48,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:06:48,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:06:48,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:06:48,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:06:48,652.652 INFO    ] time= 22/06/2026 12:06:48
[2026-06-22 12:06:48,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:06:48,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:06:48,805.805 INFO    ] No existing commands found in stream
[2026-06-22 12:06:53,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:06:53,821.821 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-22 12:06:56,377.377 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:06:56,380.380 INFO    ] Checking for system updates...
[2026-06-22 12:06:56,419.419 INFO    ] 200
[2026-06-22 12:06:56,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:06:56,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:06:56,484.484 INFO    ] No update needed
[2026-06-22 12:06:56,487.487 INFO    ] Checking for camera pi updates...
[2026-06-22 12:06:56,524.524 INFO    ] 200
[2026-06-22 12:06:56,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:06:56,573.573 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:06:56,752.752 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:06:56,755.755 INFO    ] No camera update needed
[2026-06-22 12:06:56,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:06:56,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:06:56,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:06:56,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:06:58,811.811 INFO    ] ================================================
[2026-06-22 12:06:58,826.826 INFO    ] Launching Daemon at Mon Jun 22 12:06:58 IST 2026
[2026-06-22 12:06:58,837.837 INFO    ] ================================================
[2026-06-22 12:06:59,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:06:59
[2026-06-22 12:07:00,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:07:00,396.396 INFO    ] Initializing speech engine...
[2026-06-22 12:07:00,408.408 INFO    ] 2026-06-22 12:07:00
[2026-06-22 12:07:00,696.696 INFO    ] 2026-06-22 12:07:00
[2026-06-22 12:07:00,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:07:01,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:07:01,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:07:01,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:07:01,212.212 INFO    ] time= 22/06/2026 12:07:01
[2026-06-22 12:07:01,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:07:01,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:07:01,319.319 INFO    ] No existing commands found in stream
[2026-06-22 12:07:06,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:07:06,329.329 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-22 12:07:07,103.103 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:07:07,105.105 INFO    ] Checking for system updates...
[2026-06-22 12:07:07,126.126 INFO    ] 200
[2026-06-22 12:07:07,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:07:07,163.163 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:07:07,166.166 INFO    ] No update needed
[2026-06-22 12:07:07,168.168 INFO    ] Checking for camera pi updates...
[2026-06-22 12:07:07,202.202 INFO    ] 200
[2026-06-22 12:07:07,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:07:07,248.248 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:07:07,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:07:07,347.347 INFO    ] No camera update needed
[2026-06-22 12:07:07,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:07:07,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:07:07,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:07:07,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:07:09,401.401 INFO    ] ================================================
[2026-06-22 12:07:09,416.416 INFO    ] Launching Daemon at Mon Jun 22 12:07:09 IST 2026
[2026-06-22 12:07:09,427.427 INFO    ] ================================================
[2026-06-22 12:07:10,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:07:10
[2026-06-22 12:07:10,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:07:10,758.758 INFO    ] Initializing speech engine...
[2026-06-22 12:07:10,777.777 INFO    ] 2026-06-22 12:07:10
[2026-06-22 12:07:11,024.024 INFO    ] 2026-06-22 12:07:11
[2026-06-22 12:07:11,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:07:11,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:07:11,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:07:11,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:07:11,577.577 INFO    ] time= 22/06/2026 12:07:11
[2026-06-22 12:07:11,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:07:11,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:07:11,711.711 INFO    ] No existing commands found in stream
[2026-06-22 12:07:16,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:07:16,741.741 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-22 12:07:19,878.878 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:07:19,881.881 INFO    ] Checking for system updates...
[2026-06-22 12:07:19,920.920 INFO    ] 200
[2026-06-22 12:07:19,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:07:19,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:07:19,981.981 INFO    ] No update needed
[2026-06-22 12:07:19,984.984 INFO    ] Checking for camera pi updates...
[2026-06-22 12:07:20,018.018 INFO    ] 200
[2026-06-22 12:07:20,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:07:20,065.065 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:07:20,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:07:20,151.151 INFO    ] No camera update needed
[2026-06-22 12:07:20,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:07:20,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:07:20,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:07:20,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:07:22,205.205 INFO    ] ================================================
[2026-06-22 12:07:22,220.220 INFO    ] Launching Daemon at Mon Jun 22 12:07:22 IST 2026
[2026-06-22 12:07:22,231.231 INFO    ] ================================================
[2026-06-22 12:07:22,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:07:22
[2026-06-22 12:07:23,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:07:23,553.553 INFO    ] Initializing speech engine...
[2026-06-22 12:07:23,566.566 INFO    ] 2026-06-22 12:07:23
[2026-06-22 12:07:23,847.847 INFO    ] 2026-06-22 12:07:23
[2026-06-22 12:07:23,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:07:24,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:07:24,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:07:24,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:07:24,249.249 INFO    ] time= 22/06/2026 12:07:24
[2026-06-22 12:07:24,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:07:24,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:07:24,416.416 INFO    ] No existing commands found in stream
[2026-06-22 12:07:29,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:07:29,443.443 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-22 12:07:33,536.536 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:07:33,538.538 INFO    ] Checking for system updates...
[2026-06-22 12:07:33,574.574 INFO    ] 200
[2026-06-22 12:07:33,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:07:33,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:07:33,636.636 INFO    ] No update needed
[2026-06-22 12:07:33,638.638 INFO    ] Checking for camera pi updates...
[2026-06-22 12:07:33,674.674 INFO    ] 200
[2026-06-22 12:07:33,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:07:33,720.720 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:07:33,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:07:33,801.801 INFO    ] No camera update needed
[2026-06-22 12:07:33,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:07:33,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:07:33,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:07:33,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:07:35,858.858 INFO    ] ================================================
[2026-06-22 12:07:35,873.873 INFO    ] Launching Daemon at Mon Jun 22 12:07:35 IST 2026
[2026-06-22 12:07:35,883.883 INFO    ] ================================================
[2026-06-22 12:07:36,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:07:36
[2026-06-22 12:07:36,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:07:37,257.257 INFO    ] Initializing speech engine...
[2026-06-22 12:07:37,267.267 INFO    ] 2026-06-22 12:07:37
[2026-06-22 12:07:37,545.545 INFO    ] 2026-06-22 12:07:37
[2026-06-22 12:07:37,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:07:37,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:07:37,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:07:38,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:07:38,079.079 INFO    ] time= 22/06/2026 12:07:38
[2026-06-22 12:07:38,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:07:38,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:07:38,274.274 INFO    ] No existing commands found in stream
[2026-06-22 12:07:43,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:07:43,304.304 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-22 12:07:44,459.459 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:07:44,460.460 INFO    ] Checking for system updates...
[2026-06-22 12:07:44,481.481 INFO    ] 200
[2026-06-22 12:07:44,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:07:44,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:07:44,541.541 INFO    ] No update needed
[2026-06-22 12:07:44,543.543 INFO    ] Checking for camera pi updates...
[2026-06-22 12:07:44,580.580 INFO    ] 200
[2026-06-22 12:07:44,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:07:44,623.623 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:07:44,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:07:44,715.715 INFO    ] No camera update needed
[2026-06-22 12:07:44,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:07:44,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:07:44,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:07:44,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:07:46,783.783 INFO    ] ================================================
[2026-06-22 12:07:46,800.800 INFO    ] Launching Daemon at Mon Jun 22 12:07:46 IST 2026
[2026-06-22 12:07:46,812.812 INFO    ] ================================================
[2026-06-22 12:07:47,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:07:47
[2026-06-22 12:07:47,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:07:48,257.257 INFO    ] Initializing speech engine...
[2026-06-22 12:07:48,264.264 INFO    ] 2026-06-22 12:07:48
[2026-06-22 12:07:48,509.509 INFO    ] 2026-06-22 12:07:48
[2026-06-22 12:07:48,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:07:48,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:07:48,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:07:48,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:07:49,051.051 INFO    ] time= 22/06/2026 12:07:48
[2026-06-22 12:07:49,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:07:49,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:07:49,202.202 INFO    ] No existing commands found in stream
[2026-06-22 12:07:54,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:07:54,229.229 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-22 12:07:56,078.078 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:07:56,081.081 INFO    ] Checking for system updates...
[2026-06-22 12:07:56,126.126 INFO    ] 200
[2026-06-22 12:07:56,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:07:56,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:07:56,188.188 INFO    ] No update needed
[2026-06-22 12:07:56,190.190 INFO    ] Checking for camera pi updates...
[2026-06-22 12:07:56,226.226 INFO    ] 200
[2026-06-22 12:07:56,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:07:56,270.270 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:07:56,355.355 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:07:56,357.357 INFO    ] No camera update needed
[2026-06-22 12:07:56,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:07:56,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:07:56,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:07:56,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:07:58,415.415 INFO    ] ================================================
[2026-06-22 12:07:58,430.430 INFO    ] Launching Daemon at Mon Jun 22 12:07:58 IST 2026
[2026-06-22 12:07:58,441.441 INFO    ] ================================================
[2026-06-22 12:07:59,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:07:58
[2026-06-22 12:07:59,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:07:59,933.933 INFO    ] Initializing speech engine...
[2026-06-22 12:07:59,940.940 INFO    ] 2026-06-22 12:07:59
[2026-06-22 12:08:00,232.232 INFO    ] 2026-06-22 12:08:00
[2026-06-22 12:08:00,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:08:00,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:08:00,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:08:00,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:08:00,627.627 INFO    ] time= 22/06/2026 12:08:00
[2026-06-22 12:08:00,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:08:00,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:08:00,779.779 INFO    ] No existing commands found in stream
[2026-06-22 12:08:05,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:08:05,812.812 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-22 12:08:06,856.856 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:08:07,115.115 INFO    ] Checking for system updates...
[2026-06-22 12:08:07,160.160 INFO    ] 200
[2026-06-22 12:08:07,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:08:07,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:08:07,222.222 INFO    ] No update needed
[2026-06-22 12:08:07,225.225 INFO    ] Checking for camera pi updates...
[2026-06-22 12:08:07,262.262 INFO    ] 200
[2026-06-22 12:08:07,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:08:07,305.305 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:08:07,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:08:07,386.386 INFO    ] No camera update needed
[2026-06-22 12:08:07,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:08:07,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:08:07,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:08:07,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:08:09,440.440 INFO    ] ================================================
[2026-06-22 12:08:09,456.456 INFO    ] Launching Daemon at Mon Jun 22 12:08:09 IST 2026
[2026-06-22 12:08:09,466.466 INFO    ] ================================================
[2026-06-22 12:08:10,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:08:10
[2026-06-22 12:08:10,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:08:10,965.965 INFO    ] Initializing speech engine...
[2026-06-22 12:08:10,973.973 INFO    ] 2026-06-22 12:08:10
[2026-06-22 12:08:11,244.244 INFO    ] 2026-06-22 12:08:11
[2026-06-22 12:08:11,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:08:11,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:08:11,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:08:11,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:08:11,796.796 INFO    ] time= 22/06/2026 12:08:11
[2026-06-22 12:08:11,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:08:11,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:08:12,121.121 INFO    ] No existing commands found in stream
[2026-06-22 12:08:17,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:08:17,206.206 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-22 12:08:19,776.776 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:08:19,778.778 INFO    ] Checking for system updates...
[2026-06-22 12:08:19,814.814 INFO    ] 200
[2026-06-22 12:08:19,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:08:19,875.875 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:08:19,878.878 INFO    ] No update needed
[2026-06-22 12:08:19,880.880 INFO    ] Checking for camera pi updates...
[2026-06-22 12:08:19,917.917 INFO    ] 200
[2026-06-22 12:08:19,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:08:19,963.963 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:08:20,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:08:20,063.063 INFO    ] No camera update needed
[2026-06-22 12:08:20,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:08:20,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:08:20,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:08:20,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:08:22,119.119 INFO    ] ================================================
[2026-06-22 12:08:22,135.135 INFO    ] Launching Daemon at Mon Jun 22 12:08:22 IST 2026
[2026-06-22 12:08:22,145.145 INFO    ] ================================================
[2026-06-22 12:08:22,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:08:22
[2026-06-22 12:08:23,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:08:23,581.581 INFO    ] Initializing speech engine...
[2026-06-22 12:08:23,588.588 INFO    ] 2026-06-22 12:08:23
[2026-06-22 12:08:23,857.857 INFO    ] 2026-06-22 12:08:23
[2026-06-22 12:08:23,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:08:24,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:08:24,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:08:24,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:08:24,385.385 INFO    ] time= 22/06/2026 12:08:24
[2026-06-22 12:08:24,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:08:24,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:08:24,523.523 INFO    ] No existing commands found in stream
[2026-06-22 12:08:29,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:08:29,550.550 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-22 12:08:32,466.466 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:08:32,469.469 INFO    ] Checking for system updates...
[2026-06-22 12:08:32,515.515 INFO    ] 200
[2026-06-22 12:08:32,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:08:32,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:08:32,573.573 INFO    ] No update needed
[2026-06-22 12:08:32,576.576 INFO    ] Checking for camera pi updates...
[2026-06-22 12:08:32,612.612 INFO    ] 200
[2026-06-22 12:08:32,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:08:32,661.661 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:08:32,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:08:32,749.749 INFO    ] No camera update needed
[2026-06-22 12:08:32,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:08:32,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:08:32,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:08:32,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:08:34,807.807 INFO    ] ================================================
[2026-06-22 12:08:34,822.822 INFO    ] Launching Daemon at Mon Jun 22 12:08:34 IST 2026
[2026-06-22 12:08:34,833.833 INFO    ] ================================================
[2026-06-22 12:08:35,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:08:35
[2026-06-22 12:08:35,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:08:36,153.153 INFO    ] Initializing speech engine...
[2026-06-22 12:08:36,171.171 INFO    ] 2026-06-22 12:08:36
[2026-06-22 12:08:36,421.421 INFO    ] 2026-06-22 12:08:36
[2026-06-22 12:08:36,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:08:36,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:08:36,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:08:36,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:08:36,918.918 INFO    ] time= 22/06/2026 12:08:36
[2026-06-22 12:08:36,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:08:36,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:08:37,124.124 INFO    ] No existing commands found in stream
[2026-06-22 12:08:42,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:08:42,159.159 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-22 12:08:43,163.163 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:08:43,166.166 INFO    ] Checking for system updates...
[2026-06-22 12:08:43,202.202 INFO    ] 200
[2026-06-22 12:08:43,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:08:43,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:08:43,265.265 INFO    ] No update needed
[2026-06-22 12:08:43,268.268 INFO    ] Checking for camera pi updates...
[2026-06-22 12:08:43,301.301 INFO    ] 200
[2026-06-22 12:08:43,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:08:43,348.348 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:08:43,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:08:43,430.430 INFO    ] No camera update needed
[2026-06-22 12:08:43,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:08:43,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:08:43,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:08:43,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:08:45,487.487 INFO    ] ================================================
[2026-06-22 12:08:45,503.503 INFO    ] Launching Daemon at Mon Jun 22 12:08:45 IST 2026
[2026-06-22 12:08:45,514.514 INFO    ] ================================================
[2026-06-22 12:08:46,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:08:46
[2026-06-22 12:08:46,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:08:46,841.841 INFO    ] Initializing speech engine...
[2026-06-22 12:08:46,866.866 INFO    ] 2026-06-22 12:08:46
[2026-06-22 12:08:47,137.137 INFO    ] 2026-06-22 12:08:47
[2026-06-22 12:08:47,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:08:47,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:08:47,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:08:47,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:08:47,659.659 INFO    ] time= 22/06/2026 12:08:47
[2026-06-22 12:08:47,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:08:47,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:08:47,896.896 INFO    ] No existing commands found in stream
[2026-06-22 12:08:52,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:08:52,935.935 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-22 12:08:56,710.710 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:08:56,713.713 INFO    ] Checking for system updates...
[2026-06-22 12:08:56,762.762 INFO    ] 200
[2026-06-22 12:08:56,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 12:08:56,768.768 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-22 12:08:56,770.770 INFO    ] Checking for camera pi updates...
[2026-06-22 12:08:56,816.816 INFO    ] 200
[2026-06-22 12:08:56,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 12:08:56,822.822 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-22 12:08:56,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:08:56,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:08:56,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:08:56,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:08:58,884.884 INFO    ] ================================================
[2026-06-22 12:08:58,902.902 INFO    ] Launching Daemon at Mon Jun 22 12:08:58 IST 2026
[2026-06-22 12:08:58,920.920 INFO    ] ================================================
[2026-06-22 12:08:59,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:08:59
[2026-06-22 12:09:00,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:09:00,345.345 INFO    ] Initializing speech engine...
[2026-06-22 12:09:00,357.357 INFO    ] 2026-06-22 12:09:00
[2026-06-22 12:09:00,624.624 INFO    ] 2026-06-22 12:09:00
[2026-06-22 12:09:00,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:09:00,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:09:00,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:09:01,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:09:01,086.086 INFO    ] time= 22/06/2026 12:09:01
[2026-06-22 12:09:01,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:09:01,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:09:01,371.371 INFO    ] No existing commands found in stream
[2026-06-22 12:09:06,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:09:06,395.395 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-22 12:09:07,781.781 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:09:07,783.783 INFO    ] Checking for system updates...
[2026-06-22 12:09:07,823.823 INFO    ] 200
[2026-06-22 12:09:07,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:09:07,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:09:07,888.888 INFO    ] No update needed
[2026-06-22 12:09:07,891.891 INFO    ] Checking for camera pi updates...
[2026-06-22 12:09:07,926.926 INFO    ] 200
[2026-06-22 12:09:07,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:09:07,971.971 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:09:08,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:09:08,053.053 INFO    ] No camera update needed
[2026-06-22 12:09:08,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:09:08,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:09:08,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:09:08,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:09:10,108.108 INFO    ] ================================================
[2026-06-22 12:09:10,124.124 INFO    ] Launching Daemon at Mon Jun 22 12:09:10 IST 2026
[2026-06-22 12:09:10,135.135 INFO    ] ================================================
[2026-06-22 12:09:10,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:09:10
[2026-06-22 12:09:11,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:09:11,667.667 INFO    ] Initializing speech engine...
[2026-06-22 12:09:11,679.679 INFO    ] 2026-06-22 12:09:11
[2026-06-22 12:09:11,971.971 INFO    ] 2026-06-22 12:09:11
[2026-06-22 12:09:12,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:09:12,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:09:12,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:09:12,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:09:12,465.465 INFO    ] time= 22/06/2026 12:09:12
[2026-06-22 12:09:12,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:09:12,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:09:12,668.668 INFO    ] No existing commands found in stream
[2026-06-22 12:09:17,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:09:17,694.694 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-22 12:09:18,962.962 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:09:18,965.965 INFO    ] Checking for system updates...
[2026-06-22 12:09:19,006.006 INFO    ] 200
[2026-06-22 12:09:19,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:09:19,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:09:19,068.068 INFO    ] No update needed
[2026-06-22 12:09:19,070.070 INFO    ] Checking for camera pi updates...
[2026-06-22 12:09:19,108.108 INFO    ] 200
[2026-06-22 12:09:19,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:09:19,157.157 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:09:19,237.237 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:09:19,239.239 INFO    ] No camera update needed
[2026-06-22 12:09:19,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:09:19,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:09:19,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:09:19,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:09:21,296.296 INFO    ] ================================================
[2026-06-22 12:09:21,312.312 INFO    ] Launching Daemon at Mon Jun 22 12:09:21 IST 2026
[2026-06-22 12:09:21,323.323 INFO    ] ================================================
[2026-06-22 12:09:21,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:09:21
[2026-06-22 12:09:22,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:09:22,857.857 INFO    ] Initializing speech engine...
[2026-06-22 12:09:22,871.871 INFO    ] 2026-06-22 12:09:22
[2026-06-22 12:09:23,182.182 INFO    ] 2026-06-22 12:09:23
[2026-06-22 12:09:23,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:09:23,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:09:23,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:09:23,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:09:23,704.704 INFO    ] time= 22/06/2026 12:09:23
[2026-06-22 12:09:23,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:09:23,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:09:23,876.876 INFO    ] No existing commands found in stream
[2026-06-22 12:09:28,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:09:28,911.911 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-22 12:09:33,277.277 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:09:33,280.280 INFO    ] Checking for system updates...
[2026-06-22 12:09:33,317.317 INFO    ] 200
[2026-06-22 12:09:33,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:09:33,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:09:33,384.384 INFO    ] No update needed
[2026-06-22 12:09:33,387.387 INFO    ] Checking for camera pi updates...
[2026-06-22 12:09:33,422.422 INFO    ] 200
[2026-06-22 12:09:33,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:09:33,472.472 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:09:33,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:09:33,559.559 INFO    ] No camera update needed
[2026-06-22 12:09:33,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:09:33,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:09:33,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:09:33,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:09:35,618.618 INFO    ] ================================================
[2026-06-22 12:09:35,635.635 INFO    ] Launching Daemon at Mon Jun 22 12:09:35 IST 2026
[2026-06-22 12:09:35,646.646 INFO    ] ================================================
[2026-06-22 12:09:36,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:09:36
[2026-06-22 12:09:36,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:09:37,170.170 INFO    ] Initializing speech engine...
[2026-06-22 12:09:37,185.185 INFO    ] 2026-06-22 12:09:37
[2026-06-22 12:09:37,494.494 INFO    ] 2026-06-22 12:09:37
[2026-06-22 12:09:37,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:09:37,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:09:37,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:09:37,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:09:38,007.007 INFO    ] time= 22/06/2026 12:09:38
[2026-06-22 12:09:38,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:09:38,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:09:38,159.159 INFO    ] No existing commands found in stream
[2026-06-22 12:09:43,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:09:43,176.176 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-22 12:09:46,053.053 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:09:46,055.055 INFO    ] Checking for system updates...
[2026-06-22 12:09:46,085.085 INFO    ] 200
[2026-06-22 12:09:46,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:09:46,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:09:46,149.149 INFO    ] No update needed
[2026-06-22 12:09:46,152.152 INFO    ] Checking for camera pi updates...
[2026-06-22 12:09:46,189.189 INFO    ] 200
[2026-06-22 12:09:46,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:09:46,237.237 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:09:46,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:09:46,322.322 INFO    ] No camera update needed
[2026-06-22 12:09:46,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:09:46,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:09:46,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:09:46,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:09:48,378.378 INFO    ] ================================================
[2026-06-22 12:09:48,393.393 INFO    ] Launching Daemon at Mon Jun 22 12:09:48 IST 2026
[2026-06-22 12:09:48,405.405 INFO    ] ================================================
[2026-06-22 12:09:48,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:09:48
[2026-06-22 12:09:49,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:09:49,741.741 INFO    ] Initializing speech engine...
[2026-06-22 12:09:49,765.765 INFO    ] 2026-06-22 12:09:49
[2026-06-22 12:09:50,040.040 INFO    ] 2026-06-22 12:09:50
[2026-06-22 12:09:50,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:09:50,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:09:50,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:09:50,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:09:50,463.463 INFO    ] time= 22/06/2026 12:09:50
[2026-06-22 12:09:50,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:09:50,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:09:50,621.621 INFO    ] No existing commands found in stream
[2026-06-22 12:09:55,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:09:55,649.649 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-22 12:09:56,904.904 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:09:56,907.907 INFO    ] Checking for system updates...
[2026-06-22 12:09:56,943.943 INFO    ] 200
[2026-06-22 12:09:56,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:09:57,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:09:57,007.007 INFO    ] No update needed
[2026-06-22 12:09:57,009.009 INFO    ] Checking for camera pi updates...
[2026-06-22 12:09:57,043.043 INFO    ] 200
[2026-06-22 12:09:57,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:09:57,091.091 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:09:57,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:09:57,200.200 INFO    ] No camera update needed
[2026-06-22 12:09:57,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:09:57,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:09:57,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:09:57,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:09:59,256.256 INFO    ] ================================================
[2026-06-22 12:09:59,272.272 INFO    ] Launching Daemon at Mon Jun 22 12:09:59 IST 2026
[2026-06-22 12:09:59,283.283 INFO    ] ================================================
[2026-06-22 12:09:59,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:09:59
[2026-06-22 12:10:00,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:10:00,802.802 INFO    ] Initializing speech engine...
[2026-06-22 12:10:00,816.816 INFO    ] 2026-06-22 12:10:00
[2026-06-22 12:10:01,111.111 INFO    ] 2026-06-22 12:10:01
[2026-06-22 12:10:01,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:10:01,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:10:01,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:10:01,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:10:01,613.613 INFO    ] time= 22/06/2026 12:10:01
[2026-06-22 12:10:01,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:10:01,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:10:01,718.718 INFO    ] No existing commands found in stream
[2026-06-22 12:10:06,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:10:06,729.729 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-22 12:10:08,614.614 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:10:08,617.617 INFO    ] Checking for system updates...
[2026-06-22 12:10:08,653.653 INFO    ] 200
[2026-06-22 12:10:08,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:10:08,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:10:08,710.710 INFO    ] No update needed
[2026-06-22 12:10:08,713.713 INFO    ] Checking for camera pi updates...
[2026-06-22 12:10:08,751.751 INFO    ] 200
[2026-06-22 12:10:08,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:10:08,799.799 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:10:08,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:10:08,881.881 INFO    ] No camera update needed
[2026-06-22 12:10:08,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:10:08,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:10:08,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:10:08,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:10:10,938.938 INFO    ] ================================================
[2026-06-22 12:10:10,954.954 INFO    ] Launching Daemon at Mon Jun 22 12:10:10 IST 2026
[2026-06-22 12:10:10,965.965 INFO    ] ================================================
[2026-06-22 12:10:11,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:10:11
[2026-06-22 12:10:12,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:10:12,597.597 INFO    ] Initializing speech engine...
[2026-06-22 12:10:12,611.611 INFO    ] 2026-06-22 12:10:12
[2026-06-22 12:10:12,929.929 INFO    ] 2026-06-22 12:10:12
[2026-06-22 12:10:13,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:10:13,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:10:13,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:10:13,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:10:13,439.439 INFO    ] time= 22/06/2026 12:10:13
[2026-06-22 12:10:13,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:10:13,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:10:13,596.596 INFO    ] No existing commands found in stream
[2026-06-22 12:10:18,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:10:18,618.618 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-22 12:10:19,595.595 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:10:19,597.597 INFO    ] Checking for system updates...
[2026-06-22 12:10:19,619.619 INFO    ] 200
[2026-06-22 12:10:19,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:10:19,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:10:19,655.655 INFO    ] No update needed
[2026-06-22 12:10:19,657.657 INFO    ] Checking for camera pi updates...
[2026-06-22 12:10:19,687.687 INFO    ] 200
[2026-06-22 12:10:19,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:10:19,737.737 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:10:19,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:10:19,825.825 INFO    ] No camera update needed
[2026-06-22 12:10:19,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:10:19,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:10:19,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:10:19,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:10:21,883.883 INFO    ] ================================================
[2026-06-22 12:10:21,898.898 INFO    ] Launching Daemon at Mon Jun 22 12:10:21 IST 2026
[2026-06-22 12:10:21,909.909 INFO    ] ================================================
[2026-06-22 12:10:22,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:10:22
[2026-06-22 12:10:22,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:10:23,243.243 INFO    ] Initializing speech engine...
[2026-06-22 12:10:23,252.252 INFO    ] 2026-06-22 12:10:23
[2026-06-22 12:10:23,505.505 INFO    ] 2026-06-22 12:10:23
[2026-06-22 12:10:23,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:10:23,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:10:23,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:10:24,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:10:24,053.053 INFO    ] time= 22/06/2026 12:10:24
[2026-06-22 12:10:24,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:10:24,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:10:24,217.217 INFO    ] No existing commands found in stream
[2026-06-22 12:10:29,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:10:29,246.246 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-22 12:10:31,154.154 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:10:31,157.157 INFO    ] Checking for system updates...
[2026-06-22 12:10:31,198.198 INFO    ] 200
[2026-06-22 12:10:31,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:10:31,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:10:31,266.266 INFO    ] No update needed
[2026-06-22 12:10:31,269.269 INFO    ] Checking for camera pi updates...
[2026-06-22 12:10:31,309.309 INFO    ] 200
[2026-06-22 12:10:31,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:10:31,359.359 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:10:31,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:10:31,443.443 INFO    ] No camera update needed
[2026-06-22 12:10:31,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:10:31,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:10:31,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:10:31,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:10:33,504.504 INFO    ] ================================================
[2026-06-22 12:10:33,520.520 INFO    ] Launching Daemon at Mon Jun 22 12:10:33 IST 2026
[2026-06-22 12:10:33,531.531 INFO    ] ================================================
[2026-06-22 12:10:34,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:10:34
[2026-06-22 12:10:34,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:10:34,921.921 INFO    ] Initializing speech engine...
[2026-06-22 12:10:34,933.933 INFO    ] 2026-06-22 12:10:34
[2026-06-22 12:10:35,221.221 INFO    ] 2026-06-22 12:10:35
[2026-06-22 12:10:35,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:10:35,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:10:35,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:10:35,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:10:35,753.753 INFO    ] time= 22/06/2026 12:10:35
[2026-06-22 12:10:35,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:10:35,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:10:35,911.911 INFO    ] No existing commands found in stream
[2026-06-22 12:10:40,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:10:40,950.950 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-22 12:10:44,831.831 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:10:44,833.833 INFO    ] Checking for system updates...
[2026-06-22 12:10:44,854.854 INFO    ] 200
[2026-06-22 12:10:44,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:10:44,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:10:44,889.889 INFO    ] No update needed
[2026-06-22 12:10:44,892.892 INFO    ] Checking for camera pi updates...
[2026-06-22 12:10:44,926.926 INFO    ] 200
[2026-06-22 12:10:44,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:10:44,978.978 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:10:45,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:10:45,082.082 INFO    ] No camera update needed
[2026-06-22 12:10:45,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:10:45,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:10:45,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:10:45,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:10:47,138.138 INFO    ] ================================================
[2026-06-22 12:10:47,153.153 INFO    ] Launching Daemon at Mon Jun 22 12:10:47 IST 2026
[2026-06-22 12:10:47,164.164 INFO    ] ================================================
[2026-06-22 12:10:47,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:10:47
[2026-06-22 12:10:48,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:10:48,584.584 INFO    ] Initializing speech engine...
[2026-06-22 12:10:48,603.603 INFO    ] 2026-06-22 12:10:48
[2026-06-22 12:10:48,849.849 INFO    ] 2026-06-22 12:10:48
[2026-06-22 12:10:48,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:10:49,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:10:49,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:10:49,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:10:49,354.354 INFO    ] time= 22/06/2026 12:10:49
[2026-06-22 12:10:49,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:10:49,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:10:49,546.546 INFO    ] No existing commands found in stream
[2026-06-22 12:10:54,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:10:54,570.570 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-22 12:10:57,256.256 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:10:57,258.258 INFO    ] Checking for system updates...
[2026-06-22 12:10:57,298.298 INFO    ] 200
[2026-06-22 12:10:57,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:10:57,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:10:57,363.363 INFO    ] No update needed
[2026-06-22 12:10:57,366.366 INFO    ] Checking for camera pi updates...
[2026-06-22 12:10:57,400.400 INFO    ] 200
[2026-06-22 12:10:57,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:10:57,443.443 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:10:57,541.541 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:10:57,544.544 INFO    ] No camera update needed
[2026-06-22 12:10:57,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:10:57,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:10:57,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:10:57,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:10:59,600.600 INFO    ] ================================================
[2026-06-22 12:10:59,615.615 INFO    ] Launching Daemon at Mon Jun 22 12:10:59 IST 2026
[2026-06-22 12:10:59,626.626 INFO    ] ================================================
[2026-06-22 12:11:00,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:11:00
[2026-06-22 12:11:00,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:11:01,150.150 INFO    ] Initializing speech engine...
[2026-06-22 12:11:01,160.160 INFO    ] 2026-06-22 12:11:01
[2026-06-22 12:11:01,439.439 INFO    ] 2026-06-22 12:11:01
[2026-06-22 12:11:01,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:11:01,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:11:01,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:11:01,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:11:01,903.903 INFO    ] time= 22/06/2026 12:11:01
[2026-06-22 12:11:01,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:11:01,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:11:01,980.980 INFO    ] No existing commands found in stream
[2026-06-22 12:11:06,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:11:06,993.993 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-22 12:11:09,696.696 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:11:09,699.699 INFO    ] Checking for system updates...
[2026-06-22 12:11:09,735.735 INFO    ] 200
[2026-06-22 12:11:09,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:11:09,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:11:09,802.802 INFO    ] No update needed
[2026-06-22 12:11:09,804.804 INFO    ] Checking for camera pi updates...
[2026-06-22 12:11:09,837.837 INFO    ] 200
[2026-06-22 12:11:09,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:11:09,884.884 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:11:10,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:11:10,083.083 INFO    ] No camera update needed
[2026-06-22 12:11:10,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:11:10,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:11:10,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:11:10,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:11:12,139.139 INFO    ] ================================================
[2026-06-22 12:11:12,154.154 INFO    ] Launching Daemon at Mon Jun 22 12:11:12 IST 2026
[2026-06-22 12:11:12,166.166 INFO    ] ================================================
[2026-06-22 12:11:12,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:11:12
[2026-06-22 12:11:13,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:11:13,726.726 INFO    ] Initializing speech engine...
[2026-06-22 12:11:13,735.735 INFO    ] 2026-06-22 12:11:13
[2026-06-22 12:11:14,001.001 INFO    ] 2026-06-22 12:11:13
[2026-06-22 12:11:14,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:11:14,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:11:14,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:11:14,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:11:14,529.529 INFO    ] time= 22/06/2026 12:11:14
[2026-06-22 12:11:14,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:11:14,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:11:14,722.722 INFO    ] No existing commands found in stream
[2026-06-22 12:11:19,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:11:19,741.741 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-22 12:11:20,346.346 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:11:20,349.349 INFO    ] Checking for system updates...
[2026-06-22 12:11:20,386.386 INFO    ] 200
[2026-06-22 12:11:20,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:11:20,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:11:20,444.444 INFO    ] No update needed
[2026-06-22 12:11:20,447.447 INFO    ] Checking for camera pi updates...
[2026-06-22 12:11:20,484.484 INFO    ] 200
[2026-06-22 12:11:20,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:11:20,533.533 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:11:20,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:11:20,606.606 INFO    ] No camera update needed
[2026-06-22 12:11:20,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:11:20,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:11:20,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:11:20,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:11:22,664.664 INFO    ] ================================================
[2026-06-22 12:11:22,679.679 INFO    ] Launching Daemon at Mon Jun 22 12:11:22 IST 2026
[2026-06-22 12:11:22,690.690 INFO    ] ================================================
[2026-06-22 12:11:23,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:11:23
[2026-06-22 12:11:23,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:11:24,032.032 INFO    ] Initializing speech engine...
[2026-06-22 12:11:24,039.039 INFO    ] 2026-06-22 12:11:24
[2026-06-22 12:11:24,297.297 INFO    ] 2026-06-22 12:11:24
[2026-06-22 12:11:24,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:11:24,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:11:24,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:11:24,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:11:24,855.855 INFO    ] time= 22/06/2026 12:11:24
[2026-06-22 12:11:24,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:11:24,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:11:25,058.058 INFO    ] No existing commands found in stream
[2026-06-22 12:11:30,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:11:30,091.091 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-22 12:11:33,449.449 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:11:33,452.452 INFO    ] Checking for system updates...
[2026-06-22 12:11:33,491.491 INFO    ] 200
[2026-06-22 12:11:33,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:11:33,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:11:33,549.549 INFO    ] No update needed
[2026-06-22 12:11:33,551.551 INFO    ] Checking for camera pi updates...
[2026-06-22 12:11:33,586.586 INFO    ] 200
[2026-06-22 12:11:33,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:11:33,632.632 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:11:33,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:11:33,717.717 INFO    ] No camera update needed
[2026-06-22 12:11:33,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:11:33,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:11:33,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:11:33,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:11:35,773.773 INFO    ] ================================================
[2026-06-22 12:11:35,788.788 INFO    ] Launching Daemon at Mon Jun 22 12:11:35 IST 2026
[2026-06-22 12:11:35,799.799 INFO    ] ================================================
[2026-06-22 12:11:36,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:11:36
[2026-06-22 12:11:36,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:11:37,215.215 INFO    ] Initializing speech engine...
[2026-06-22 12:11:37,231.231 INFO    ] 2026-06-22 12:11:37
[2026-06-22 12:11:37,517.517 INFO    ] 2026-06-22 12:11:37
[2026-06-22 12:11:37,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:11:37,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:11:37,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:11:37,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:11:37,934.934 INFO    ] time= 22/06/2026 12:11:37
[2026-06-22 12:11:37,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:11:37,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:11:38,017.017 INFO    ] No existing commands found in stream
[2026-06-22 12:11:43,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:11:43,033.033 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-22 12:11:47,049.049 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:11:47,052.052 INFO    ] Checking for system updates...
[2026-06-22 12:11:47,089.089 INFO    ] 200
[2026-06-22 12:11:47,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:11:47,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:11:47,147.147 INFO    ] No update needed
[2026-06-22 12:11:47,149.149 INFO    ] Checking for camera pi updates...
[2026-06-22 12:11:47,186.186 INFO    ] 200
[2026-06-22 12:11:47,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:11:47,229.229 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:11:47,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:11:47,316.316 INFO    ] No camera update needed
[2026-06-22 12:11:47,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:11:47,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:11:47,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:11:47,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:11:49,373.373 INFO    ] ================================================
[2026-06-22 12:11:49,388.388 INFO    ] Launching Daemon at Mon Jun 22 12:11:49 IST 2026
[2026-06-22 12:11:49,399.399 INFO    ] ================================================
[2026-06-22 12:11:49,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:11:49
[2026-06-22 12:11:50,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:11:50,742.742 INFO    ] Initializing speech engine...
[2026-06-22 12:11:50,748.748 INFO    ] 2026-06-22 12:11:50
[2026-06-22 12:11:51,040.040 INFO    ] 2026-06-22 12:11:51
[2026-06-22 12:11:51,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:11:51,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:11:51,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:11:51,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:11:51,461.461 INFO    ] time= 22/06/2026 12:11:51
[2026-06-22 12:11:51,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:11:51,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:11:51,642.642 INFO    ] No existing commands found in stream
[2026-06-22 12:11:56,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:11:56,670.670 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-22 12:11:58,676.676 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:11:58,679.679 INFO    ] Checking for system updates...
[2026-06-22 12:11:58,718.718 INFO    ] 200
[2026-06-22 12:11:58,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:11:58,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:11:58,777.777 INFO    ] No update needed
[2026-06-22 12:11:58,779.779 INFO    ] Checking for camera pi updates...
[2026-06-22 12:11:58,815.815 INFO    ] 200
[2026-06-22 12:11:58,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:11:58,859.859 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:11:58,965.965 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:11:58,967.967 INFO    ] No camera update needed
[2026-06-22 12:11:58,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:11:58,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:11:58,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:11:58,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:12:01,026.026 INFO    ] ================================================
[2026-06-22 12:12:01,041.041 INFO    ] Launching Daemon at Mon Jun 22 12:12:01 IST 2026
[2026-06-22 12:12:01,052.052 INFO    ] ================================================
[2026-06-22 12:12:01,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:12:01
[2026-06-22 12:12:02,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:12:02,619.619 INFO    ] Initializing speech engine...
[2026-06-22 12:12:02,634.634 INFO    ] 2026-06-22 12:12:02
[2026-06-22 12:12:02,943.943 INFO    ] 2026-06-22 12:12:02
[2026-06-22 12:12:02,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:12:03,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:12:03,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:12:03,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:12:03,394.394 INFO    ] time= 22/06/2026 12:12:03
[2026-06-22 12:12:03,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:12:03,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:12:03,521.521 INFO    ] No existing commands found in stream
[2026-06-22 12:12:08,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:12:08,544.544 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-22 12:12:12,360.360 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:12:12,363.363 INFO    ] Checking for system updates...
[2026-06-22 12:12:12,399.399 INFO    ] 200
[2026-06-22 12:12:12,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:12:12,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:12:12,458.458 INFO    ] No update needed
[2026-06-22 12:12:12,461.461 INFO    ] Checking for camera pi updates...
[2026-06-22 12:12:12,498.498 INFO    ] 200
[2026-06-22 12:12:12,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:12:12,545.545 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:12:12,644.644 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:12:12,647.647 INFO    ] No camera update needed
[2026-06-22 12:12:12,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:12:12,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:12:12,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:12:12,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:12:14,703.703 INFO    ] ================================================
[2026-06-22 12:12:14,718.718 INFO    ] Launching Daemon at Mon Jun 22 12:12:14 IST 2026
[2026-06-22 12:12:14,728.728 INFO    ] ================================================
[2026-06-22 12:12:15,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:12:15
[2026-06-22 12:12:15,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:12:16,047.047 INFO    ] Initializing speech engine...
[2026-06-22 12:12:16,067.067 INFO    ] 2026-06-22 12:12:16
[2026-06-22 12:12:16,326.326 INFO    ] 2026-06-22 12:12:16
[2026-06-22 12:12:16,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:12:16,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:12:16,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:12:16,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:12:16,703.703 INFO    ] time= 22/06/2026 12:12:16
[2026-06-22 12:12:16,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:12:16,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:12:16,901.901 INFO    ] No existing commands found in stream
[2026-06-22 12:12:21,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:12:21,916.916 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-22 12:12:23,639.639 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:12:23,641.641 INFO    ] Checking for system updates...
[2026-06-22 12:12:23,678.678 INFO    ] 200
[2026-06-22 12:12:23,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:12:23,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:12:23,744.744 INFO    ] No update needed
[2026-06-22 12:12:23,747.747 INFO    ] Checking for camera pi updates...
[2026-06-22 12:12:23,781.781 INFO    ] 200
[2026-06-22 12:12:23,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:12:23,830.830 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:12:23,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:12:23,915.915 INFO    ] No camera update needed
[2026-06-22 12:12:23,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:12:23,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:12:23,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:12:23,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:12:25,974.974 INFO    ] ================================================
[2026-06-22 12:12:25,990.990 INFO    ] Launching Daemon at Mon Jun 22 12:12:25 IST 2026
[2026-06-22 12:12:26,001.001 INFO    ] ================================================
[2026-06-22 12:12:26,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:12:26
[2026-06-22 12:12:27,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:12:27,427.427 INFO    ] Initializing speech engine...
[2026-06-22 12:12:27,436.436 INFO    ] 2026-06-22 12:12:27
[2026-06-22 12:12:27,682.682 INFO    ] 2026-06-22 12:12:27
[2026-06-22 12:12:27,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:12:27,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:12:27,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:12:28,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:12:28,186.186 INFO    ] time= 22/06/2026 12:12:28
[2026-06-22 12:12:28,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:12:28,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:12:28,374.374 INFO    ] No existing commands found in stream
[2026-06-22 12:12:33,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:12:33,399.399 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-22 12:12:34,805.805 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:12:34,808.808 INFO    ] Checking for system updates...
[2026-06-22 12:12:34,844.844 INFO    ] 200
[2026-06-22 12:12:34,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:12:34,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:12:34,904.904 INFO    ] No update needed
[2026-06-22 12:12:34,907.907 INFO    ] Checking for camera pi updates...
[2026-06-22 12:12:34,942.942 INFO    ] 200
[2026-06-22 12:12:34,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:12:34,991.991 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:12:35,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:12:35,101.101 INFO    ] No camera update needed
[2026-06-22 12:12:35,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:12:35,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:12:35,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:12:35,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:12:37,161.161 INFO    ] ================================================
[2026-06-22 12:12:37,176.176 INFO    ] Launching Daemon at Mon Jun 22 12:12:37 IST 2026
[2026-06-22 12:12:37,187.187 INFO    ] ================================================
[2026-06-22 12:12:37,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:12:37
[2026-06-22 12:12:38,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:12:38,567.567 INFO    ] Initializing speech engine...
[2026-06-22 12:12:38,590.590 INFO    ] 2026-06-22 12:12:38
[2026-06-22 12:12:38,875.875 INFO    ] 2026-06-22 12:12:38
[2026-06-22 12:12:38,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:12:39,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:12:39,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:12:39,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:12:39,430.430 INFO    ] time= 22/06/2026 12:12:39
[2026-06-22 12:12:39,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:12:39,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:12:39,582.582 INFO    ] No existing commands found in stream
[2026-06-22 12:12:44,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:12:44,602.602 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-22 12:12:45,127.127 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:12:45,130.130 INFO    ] Checking for system updates...
[2026-06-22 12:12:45,171.171 INFO    ] 200
[2026-06-22 12:12:45,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:12:45,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:12:45,230.230 INFO    ] No update needed
[2026-06-22 12:12:45,232.232 INFO    ] Checking for camera pi updates...
[2026-06-22 12:12:45,271.271 INFO    ] 200
[2026-06-22 12:12:45,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:12:45,321.321 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:12:45,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:12:45,406.406 INFO    ] No camera update needed
[2026-06-22 12:12:45,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:12:45,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:12:45,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:12:45,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:12:47,467.467 INFO    ] ================================================
[2026-06-22 12:12:47,482.482 INFO    ] Launching Daemon at Mon Jun 22 12:12:47 IST 2026
[2026-06-22 12:12:47,493.493 INFO    ] ================================================
[2026-06-22 12:12:48,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:12:48
[2026-06-22 12:12:48,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:12:49,029.029 INFO    ] Initializing speech engine...
[2026-06-22 12:12:49,042.042 INFO    ] 2026-06-22 12:12:49
[2026-06-22 12:12:49,324.324 INFO    ] 2026-06-22 12:12:49
[2026-06-22 12:12:49,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:12:49,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:12:49,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:12:49,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:12:49,863.863 INFO    ] time= 22/06/2026 12:12:49
[2026-06-22 12:12:49,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:12:49,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:12:50,020.020 INFO    ] No existing commands found in stream
[2026-06-22 12:12:55,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:12:55,058.058 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-22 12:12:58,429.429 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:12:58,432.432 INFO    ] Checking for system updates...
[2026-06-22 12:12:58,470.470 INFO    ] 200
[2026-06-22 12:12:58,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:12:58,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:12:58,536.536 INFO    ] No update needed
[2026-06-22 12:12:58,539.539 INFO    ] Checking for camera pi updates...
[2026-06-22 12:12:58,586.586 INFO    ] 200
[2026-06-22 12:12:58,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:12:58,635.635 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:12:58,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:12:58,723.723 INFO    ] No camera update needed
[2026-06-22 12:12:58,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:12:58,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:12:58,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:12:58,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:13:00,781.781 INFO    ] ================================================
[2026-06-22 12:13:00,797.797 INFO    ] Launching Daemon at Mon Jun 22 12:13:00 IST 2026
[2026-06-22 12:13:00,808.808 INFO    ] ================================================
[2026-06-22 12:13:01,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:13:01
[2026-06-22 12:13:01,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:13:02,377.377 INFO    ] Initializing speech engine...
[2026-06-22 12:13:02,384.384 INFO    ] 2026-06-22 12:13:02
[2026-06-22 12:13:02,682.682 INFO    ] 2026-06-22 12:13:02
[2026-06-22 12:13:02,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:13:03,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:13:03,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:13:03,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:13:03,209.209 INFO    ] time= 22/06/2026 12:13:03
[2026-06-22 12:13:03,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:13:03,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:13:03,419.419 INFO    ] No existing commands found in stream
[2026-06-22 12:13:08,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:13:08,442.442 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-22 12:13:10,977.977 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:13:10,980.980 INFO    ] Checking for system updates...
[2026-06-22 12:13:11,016.016 INFO    ] 200
[2026-06-22 12:13:11,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:13:11,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:13:11,073.073 INFO    ] No update needed
[2026-06-22 12:13:11,075.075 INFO    ] Checking for camera pi updates...
[2026-06-22 12:13:11,109.109 INFO    ] 200
[2026-06-22 12:13:11,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:13:11,152.152 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:13:11,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:13:11,232.232 INFO    ] No camera update needed
[2026-06-22 12:13:11,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:13:11,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:13:11,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:13:11,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:13:13,288.288 INFO    ] ================================================
[2026-06-22 12:13:13,305.305 INFO    ] Launching Daemon at Mon Jun 22 12:13:13 IST 2026
[2026-06-22 12:13:13,316.316 INFO    ] ================================================
[2026-06-22 12:13:13,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:13:13
[2026-06-22 12:13:14,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:13:14,767.767 INFO    ] Initializing speech engine...
[2026-06-22 12:13:14,776.776 INFO    ] 2026-06-22 12:13:14
[2026-06-22 12:13:15,038.038 INFO    ] 2026-06-22 12:13:15
[2026-06-22 12:13:15,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:13:15,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:13:15,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:13:15,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:13:15,550.550 INFO    ] time= 22/06/2026 12:13:15
[2026-06-22 12:13:15,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:13:15,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:13:15,725.725 INFO    ] No existing commands found in stream
[2026-06-22 12:13:20,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:13:20,748.748 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-22 12:13:24,203.203 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:13:24,205.205 INFO    ] Checking for system updates...
[2026-06-22 12:13:24,227.227 INFO    ] 200
[2026-06-22 12:13:24,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:13:24,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:13:24,260.260 INFO    ] No update needed
[2026-06-22 12:13:24,262.262 INFO    ] Checking for camera pi updates...
[2026-06-22 12:13:24,281.281 INFO    ] 200
[2026-06-22 12:13:24,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:13:24,310.310 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:13:24,490.490 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:13:24,493.493 INFO    ] No camera update needed
[2026-06-22 12:13:24,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:13:24,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:13:24,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:13:24,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:13:26,551.551 INFO    ] ================================================
[2026-06-22 12:13:26,567.567 INFO    ] Launching Daemon at Mon Jun 22 12:13:26 IST 2026
[2026-06-22 12:13:26,578.578 INFO    ] ================================================
[2026-06-22 12:13:27,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:13:27
[2026-06-22 12:13:27,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:13:27,960.960 INFO    ] Initializing speech engine...
[2026-06-22 12:13:27,969.969 INFO    ] 2026-06-22 12:13:27
[2026-06-22 12:13:28,243.243 INFO    ] 2026-06-22 12:13:28
[2026-06-22 12:13:28,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:13:28,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:13:28,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:13:28,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:13:28,778.778 INFO    ] time= 22/06/2026 12:13:28
[2026-06-22 12:13:28,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:13:28,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:13:28,946.946 INFO    ] No existing commands found in stream
[2026-06-22 12:13:33,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:13:33,980.980 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-22 12:13:35,441.441 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:13:35,444.444 INFO    ] Checking for system updates...
[2026-06-22 12:13:35,481.481 INFO    ] 200
[2026-06-22 12:13:35,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:13:35,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:13:35,541.541 INFO    ] No update needed
[2026-06-22 12:13:35,544.544 INFO    ] Checking for camera pi updates...
[2026-06-22 12:13:35,579.579 INFO    ] 200
[2026-06-22 12:13:35,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:13:35,624.624 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:13:35,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:13:35,710.710 INFO    ] No camera update needed
[2026-06-22 12:13:35,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:13:35,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:13:35,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:13:35,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:13:37,766.766 INFO    ] ================================================
[2026-06-22 12:13:37,782.782 INFO    ] Launching Daemon at Mon Jun 22 12:13:37 IST 2026
[2026-06-22 12:13:37,793.793 INFO    ] ================================================
[2026-06-22 12:13:38,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:13:38
[2026-06-22 12:13:39,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:13:39,292.292 INFO    ] Initializing speech engine...
[2026-06-22 12:13:39,299.299 INFO    ] 2026-06-22 12:13:39
[2026-06-22 12:13:39,560.560 INFO    ] 2026-06-22 12:13:39
[2026-06-22 12:13:39,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:13:39,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:13:39,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:13:39,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:13:40,018.018 INFO    ] time= 22/06/2026 12:13:39
[2026-06-22 12:13:40,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:13:40,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:13:40,239.239 INFO    ] No existing commands found in stream
[2026-06-22 12:13:45,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:13:45,269.269 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-22 12:13:48,582.582 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:13:48,584.584 INFO    ] Checking for system updates...
[2026-06-22 12:13:48,605.605 INFO    ] 200
[2026-06-22 12:13:48,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:13:48,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:13:48,655.655 INFO    ] No update needed
[2026-06-22 12:13:48,658.658 INFO    ] Checking for camera pi updates...
[2026-06-22 12:13:48,692.692 INFO    ] 200
[2026-06-22 12:13:48,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:13:48,740.740 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:13:48,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:13:48,803.803 INFO    ] No camera update needed
[2026-06-22 12:13:48,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:13:48,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:13:48,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:13:48,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:13:50,860.860 INFO    ] ================================================
[2026-06-22 12:13:50,875.875 INFO    ] Launching Daemon at Mon Jun 22 12:13:50 IST 2026
[2026-06-22 12:13:50,886.886 INFO    ] ================================================
[2026-06-22 12:13:51,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:13:51
[2026-06-22 12:13:52,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:13:52,423.423 INFO    ] Initializing speech engine...
[2026-06-22 12:13:52,437.437 INFO    ] 2026-06-22 12:13:52
[2026-06-22 12:13:52,754.754 INFO    ] 2026-06-22 12:13:52
[2026-06-22 12:13:52,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:13:53,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:13:53,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:13:53,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:13:53,428.428 INFO    ] time= 22/06/2026 12:13:53
[2026-06-22 12:13:53,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:13:53,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:13:53,682.682 INFO    ] No existing commands found in stream
[2026-06-22 12:13:58,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:13:58,725.725 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-22 12:14:01,160.160 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:14:01,162.162 INFO    ] Checking for system updates...
[2026-06-22 12:14:01,182.182 INFO    ] 200
[2026-06-22 12:14:01,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:14:01,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:14:01,218.218 INFO    ] No update needed
[2026-06-22 12:14:01,219.219 INFO    ] Checking for camera pi updates...
[2026-06-22 12:14:01,242.242 INFO    ] 200
[2026-06-22 12:14:01,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:14:01,285.285 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:14:01,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:14:01,373.373 INFO    ] No camera update needed
[2026-06-22 12:14:01,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:14:01,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:14:01,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:14:01,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:14:03,437.437 INFO    ] ================================================
[2026-06-22 12:14:03,455.455 INFO    ] Launching Daemon at Mon Jun 22 12:14:03 IST 2026
[2026-06-22 12:14:03,467.467 INFO    ] ================================================
[2026-06-22 12:14:04,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:14:04
[2026-06-22 12:14:04,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:14:04,970.970 INFO    ] Initializing speech engine...
[2026-06-22 12:14:04,975.975 INFO    ] 2026-06-22 12:14:04
[2026-06-22 12:14:05,237.237 INFO    ] 2026-06-22 12:14:05
[2026-06-22 12:14:05,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:14:05,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:14:05,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:14:05,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:14:05,726.726 INFO    ] time= 22/06/2026 12:14:05
[2026-06-22 12:14:05,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:14:05,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:14:05,931.931 INFO    ] No existing commands found in stream
[2026-06-22 12:14:10,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:14:10,948.948 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-22 12:14:12,832.832 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:14:12,835.835 INFO    ] Checking for system updates...
[2026-06-22 12:14:12,870.870 INFO    ] 200
[2026-06-22 12:14:12,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:14:12,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:14:12,928.928 INFO    ] No update needed
[2026-06-22 12:14:12,930.930 INFO    ] Checking for camera pi updates...
[2026-06-22 12:14:12,964.964 INFO    ] 200
[2026-06-22 12:14:12,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:14:13,007.007 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:14:13,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:14:13,097.097 INFO    ] No camera update needed
[2026-06-22 12:14:13,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:14:13,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:14:13,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:14:13,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:14:15,155.155 INFO    ] ================================================
[2026-06-22 12:14:15,171.171 INFO    ] Launching Daemon at Mon Jun 22 12:14:15 IST 2026
[2026-06-22 12:14:15,183.183 INFO    ] ================================================
[2026-06-22 12:14:15,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:14:15
[2026-06-22 12:14:16,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:14:16,602.602 INFO    ] Initializing speech engine...
[2026-06-22 12:14:16,614.614 INFO    ] 2026-06-22 12:14:16
[2026-06-22 12:14:16,896.896 INFO    ] 2026-06-22 12:14:16
[2026-06-22 12:14:16,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:14:17,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:14:17,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:14:17,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:14:17,364.364 INFO    ] time= 22/06/2026 12:14:17
[2026-06-22 12:14:17,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:14:17,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:14:17,591.591 INFO    ] No existing commands found in stream
[2026-06-22 12:14:22,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:14:22,621.621 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-22 12:14:24,156.156 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:14:24,159.159 INFO    ] Checking for system updates...
[2026-06-22 12:14:24,195.195 INFO    ] 200
[2026-06-22 12:14:24,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:14:24,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:14:24,253.253 INFO    ] No update needed
[2026-06-22 12:14:24,256.256 INFO    ] Checking for camera pi updates...
[2026-06-22 12:14:24,295.295 INFO    ] 200
[2026-06-22 12:14:24,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:14:24,338.338 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:14:24,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:14:24,424.424 INFO    ] No camera update needed
[2026-06-22 12:14:24,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:14:24,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:14:24,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:14:24,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:14:26,483.483 INFO    ] ================================================
[2026-06-22 12:14:26,499.499 INFO    ] Launching Daemon at Mon Jun 22 12:14:26 IST 2026
[2026-06-22 12:14:26,511.511 INFO    ] ================================================
[2026-06-22 12:14:27,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:14:27
[2026-06-22 12:14:27,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:14:27,931.931 INFO    ] Initializing speech engine...
[2026-06-22 12:14:27,943.943 INFO    ] 2026-06-22 12:14:27
[2026-06-22 12:14:28,212.212 INFO    ] 2026-06-22 12:14:28
[2026-06-22 12:14:28,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:14:28,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:14:28,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:14:28,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:14:28,746.746 INFO    ] time= 22/06/2026 12:14:28
[2026-06-22 12:14:28,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:14:28,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:14:28,881.881 INFO    ] No existing commands found in stream
[2026-06-22 12:14:33,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:14:33,912.912 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-22 12:14:35,942.942 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:14:35,944.944 INFO    ] Checking for system updates...
[2026-06-22 12:14:35,966.966 INFO    ] 200
[2026-06-22 12:14:35,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:14:35,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:14:35,999.999 INFO    ] No update needed
[2026-06-22 12:14:36,000.000 INFO    ] Checking for camera pi updates...
[2026-06-22 12:14:36,019.019 INFO    ] 200
[2026-06-22 12:14:36,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:14:36,047.047 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:14:36,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:14:36,150.150 INFO    ] No camera update needed
[2026-06-22 12:14:36,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:14:36,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:14:36,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:14:36,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:14:38,207.207 INFO    ] ================================================
[2026-06-22 12:14:38,222.222 INFO    ] Launching Daemon at Mon Jun 22 12:14:38 IST 2026
[2026-06-22 12:14:38,234.234 INFO    ] ================================================
[2026-06-22 12:14:38,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:14:38
[2026-06-22 12:14:39,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:14:39,654.654 INFO    ] Initializing speech engine...
[2026-06-22 12:14:39,663.663 INFO    ] 2026-06-22 12:14:39
[2026-06-22 12:14:39,909.909 INFO    ] 2026-06-22 12:14:39
[2026-06-22 12:14:39,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:14:40,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:14:40,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:14:40,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:14:40,412.412 INFO    ] time= 22/06/2026 12:14:40
[2026-06-22 12:14:40,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:14:40,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:14:40,614.614 INFO    ] No existing commands found in stream
[2026-06-22 12:14:45,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:14:45,630.630 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-22 12:14:47,650.650 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:14:47,653.653 INFO    ] Checking for system updates...
[2026-06-22 12:14:47,690.690 INFO    ] 200
[2026-06-22 12:14:47,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:14:47,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:14:47,749.749 INFO    ] No update needed
[2026-06-22 12:14:47,751.751 INFO    ] Checking for camera pi updates...
[2026-06-22 12:14:47,785.785 INFO    ] 200
[2026-06-22 12:14:47,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:14:47,828.828 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:14:47,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:14:47,921.921 INFO    ] No camera update needed
[2026-06-22 12:14:47,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:14:47,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:14:47,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:14:47,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:14:49,976.976 INFO    ] ================================================
[2026-06-22 12:14:49,991.991 INFO    ] Launching Daemon at Mon Jun 22 12:14:49 IST 2026
[2026-06-22 12:14:50,003.003 INFO    ] ================================================
[2026-06-22 12:14:50,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:14:50
[2026-06-22 12:14:51,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:14:51,387.387 INFO    ] Initializing speech engine...
[2026-06-22 12:14:51,396.396 INFO    ] 2026-06-22 12:14:51
[2026-06-22 12:14:51,647.647 INFO    ] 2026-06-22 12:14:51
[2026-06-22 12:14:51,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:14:51,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:14:51,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:14:52,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:14:52,140.140 INFO    ] time= 22/06/2026 12:14:52
[2026-06-22 12:14:52,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:14:52,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:14:52,273.273 INFO    ] No existing commands found in stream
[2026-06-22 12:14:57,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:14:57,296.296 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-22 12:15:00,737.737 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:15:00,739.739 INFO    ] Checking for system updates...
[2026-06-22 12:15:00,776.776 INFO    ] 200
[2026-06-22 12:15:00,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:15:00,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:15:00,836.836 INFO    ] No update needed
[2026-06-22 12:15:00,839.839 INFO    ] Checking for camera pi updates...
[2026-06-22 12:15:00,877.877 INFO    ] 200
[2026-06-22 12:15:00,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:15:00,926.926 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:15:01,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:15:01,016.016 INFO    ] No camera update needed
[2026-06-22 12:15:01,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:15:01,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:15:01,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:15:01,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:15:03,127.127 INFO    ] ================================================
[2026-06-22 12:15:03,150.150 INFO    ] Launching Daemon at Mon Jun 22 12:15:03 IST 2026
[2026-06-22 12:15:03,170.170 INFO    ] ================================================
[2026-06-22 12:15:03,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:15:03
[2026-06-22 12:15:04,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:15:04,811.811 INFO    ] Initializing speech engine...
[2026-06-22 12:15:04,819.819 INFO    ] 2026-06-22 12:15:04
[2026-06-22 12:15:05,099.099 INFO    ] 2026-06-22 12:15:05
[2026-06-22 12:15:05,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:15:05,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:15:05,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:15:05,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:15:05,549.549 INFO    ] time= 22/06/2026 12:15:05
[2026-06-22 12:15:05,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:15:05,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:15:05,713.713 INFO    ] No existing commands found in stream
[2026-06-22 12:15:10,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:15:10,752.752 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-22 12:15:13,809.809 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:15:13,812.812 INFO    ] Checking for system updates...
[2026-06-22 12:15:13,851.851 INFO    ] 200
[2026-06-22 12:15:13,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:15:13,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:15:13,912.912 INFO    ] No update needed
[2026-06-22 12:15:13,915.915 INFO    ] Checking for camera pi updates...
[2026-06-22 12:15:13,952.952 INFO    ] 200
[2026-06-22 12:15:13,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:15:13,997.997 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:15:14,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:15:14,082.082 INFO    ] No camera update needed
[2026-06-22 12:15:14,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:15:14,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:15:14,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:15:14,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:15:16,140.140 INFO    ] ================================================
[2026-06-22 12:15:16,156.156 INFO    ] Launching Daemon at Mon Jun 22 12:15:16 IST 2026
[2026-06-22 12:15:16,167.167 INFO    ] ================================================
[2026-06-22 12:15:16,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:15:16
[2026-06-22 12:15:17,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:15:17,740.740 INFO    ] Initializing speech engine...
[2026-06-22 12:15:17,748.748 INFO    ] 2026-06-22 12:15:17
[2026-06-22 12:15:18,031.031 INFO    ] 2026-06-22 12:15:18
[2026-06-22 12:15:18,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:15:18,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:15:18,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:15:18,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:15:18,492.492 INFO    ] time= 22/06/2026 12:15:18
[2026-06-22 12:15:18,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:15:18,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:15:18,630.630 INFO    ] No existing commands found in stream
[2026-06-22 12:15:23,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:15:23,654.654 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-22 12:15:25,198.198 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:15:25,201.201 INFO    ] Checking for system updates...
[2026-06-22 12:15:25,239.239 INFO    ] 200
[2026-06-22 12:15:25,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:15:25,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:15:25,297.297 INFO    ] No update needed
[2026-06-22 12:15:25,300.300 INFO    ] Checking for camera pi updates...
[2026-06-22 12:15:25,333.333 INFO    ] 200
[2026-06-22 12:15:25,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:15:25,377.377 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:15:25,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:15:25,581.581 INFO    ] No camera update needed
[2026-06-22 12:15:25,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:15:25,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:15:25,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:15:25,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:15:27,638.638 INFO    ] ================================================
[2026-06-22 12:15:27,654.654 INFO    ] Launching Daemon at Mon Jun 22 12:15:27 IST 2026
[2026-06-22 12:15:27,665.665 INFO    ] ================================================
[2026-06-22 12:15:28,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:15:28
[2026-06-22 12:15:28,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:15:29,205.205 INFO    ] Initializing speech engine...
[2026-06-22 12:15:29,217.217 INFO    ] 2026-06-22 12:15:29
[2026-06-22 12:15:29,497.497 INFO    ] 2026-06-22 12:15:29
[2026-06-22 12:15:29,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:15:29,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:15:29,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:15:29,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:15:29,902.902 INFO    ] time= 22/06/2026 12:15:29
[2026-06-22 12:15:29,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:15:29,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:15:30,099.099 INFO    ] No existing commands found in stream
[2026-06-22 12:15:35,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:15:35,127.127 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-22 12:15:38,339.339 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:15:38,342.342 INFO    ] Checking for system updates...
[2026-06-22 12:15:38,385.385 INFO    ] 200
[2026-06-22 12:15:38,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:15:38,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:15:38,448.448 INFO    ] No update needed
[2026-06-22 12:15:38,450.450 INFO    ] Checking for camera pi updates...
[2026-06-22 12:15:38,490.490 INFO    ] 200
[2026-06-22 12:15:38,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:15:38,540.540 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:15:38,624.624 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:15:38,627.627 INFO    ] No camera update needed
[2026-06-22 12:15:38,630.630 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:15:38,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:15:38,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:15:38,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:15:40,686.686 INFO    ] ================================================
[2026-06-22 12:15:40,703.703 INFO    ] Launching Daemon at Mon Jun 22 12:15:40 IST 2026
[2026-06-22 12:15:40,714.714 INFO    ] ================================================
[2026-06-22 12:15:41,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:15:41
[2026-06-22 12:15:41,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:15:42,068.068 INFO    ] Initializing speech engine...
[2026-06-22 12:15:42,077.077 INFO    ] 2026-06-22 12:15:42
[2026-06-22 12:15:42,323.323 INFO    ] 2026-06-22 12:15:42
[2026-06-22 12:15:42,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:15:42,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:15:42,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:15:42,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:15:42,882.882 INFO    ] time= 22/06/2026 12:15:42
[2026-06-22 12:15:42,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:15:42,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:15:43,033.033 INFO    ] No existing commands found in stream
[2026-06-22 12:15:48,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:15:48,050.050 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-22 12:15:51,301.301 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:15:51,304.304 INFO    ] Checking for system updates...
[2026-06-22 12:15:51,343.343 INFO    ] 200
[2026-06-22 12:15:51,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:15:51,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:15:51,417.417 INFO    ] No update needed
[2026-06-22 12:15:51,421.421 INFO    ] Checking for camera pi updates...
[2026-06-22 12:15:51,461.461 INFO    ] 200
[2026-06-22 12:15:51,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:15:51,512.512 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:15:51,594.594 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:15:51,597.597 INFO    ] No camera update needed
[2026-06-22 12:15:51,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:15:51,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:15:51,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:15:51,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:15:53,657.657 INFO    ] ================================================
[2026-06-22 12:15:53,673.673 INFO    ] Launching Daemon at Mon Jun 22 12:15:53 IST 2026
[2026-06-22 12:15:53,690.690 INFO    ] ================================================
[2026-06-22 12:15:54,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:15:54
[2026-06-22 12:15:54,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:15:55,149.149 INFO    ] Initializing speech engine...
[2026-06-22 12:15:55,163.163 INFO    ] 2026-06-22 12:15:55
[2026-06-22 12:15:55,444.444 INFO    ] 2026-06-22 12:15:55
[2026-06-22 12:15:55,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:15:55,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:15:55,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:15:55,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:15:55,829.829 INFO    ] time= 22/06/2026 12:15:55
[2026-06-22 12:15:55,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:15:55,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:15:56,033.033 INFO    ] No existing commands found in stream
[2026-06-22 12:16:01,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:16:01,056.056 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-22 12:16:03,221.221 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:16:03,224.224 INFO    ] Checking for system updates...
[2026-06-22 12:16:03,261.261 INFO    ] 200
[2026-06-22 12:16:03,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:16:03,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:16:03,327.327 INFO    ] No update needed
[2026-06-22 12:16:03,329.329 INFO    ] Checking for camera pi updates...
[2026-06-22 12:16:03,363.363 INFO    ] 200
[2026-06-22 12:16:03,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:16:03,406.406 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:16:03,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:16:03,489.489 INFO    ] No camera update needed
[2026-06-22 12:16:03,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:16:03,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:16:03,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:16:03,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:16:05,548.548 INFO    ] ================================================
[2026-06-22 12:16:05,565.565 INFO    ] Launching Daemon at Mon Jun 22 12:16:05 IST 2026
[2026-06-22 12:16:05,576.576 INFO    ] ================================================
[2026-06-22 12:16:06,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:16:06
[2026-06-22 12:16:06,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:16:07,041.041 INFO    ] Initializing speech engine...
[2026-06-22 12:16:07,047.047 INFO    ] 2026-06-22 12:16:07
[2026-06-22 12:16:07,292.292 INFO    ] 2026-06-22 12:16:07
[2026-06-22 12:16:07,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:16:07,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:16:07,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:16:07,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:16:07,784.784 INFO    ] time= 22/06/2026 12:16:07
[2026-06-22 12:16:07,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:16:07,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:16:07,993.993 INFO    ] No existing commands found in stream
[2026-06-22 12:16:13,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:16:13,016.016 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-22 12:16:15,858.858 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:16:15,861.861 INFO    ] Checking for system updates...
[2026-06-22 12:16:15,896.896 INFO    ] 200
[2026-06-22 12:16:15,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:16:15,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:16:15,962.962 INFO    ] No update needed
[2026-06-22 12:16:15,964.964 INFO    ] Checking for camera pi updates...
[2026-06-22 12:16:15,998.998 INFO    ] 200
[2026-06-22 12:16:16,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:16:16,047.047 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:16:16,119.119 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:16:16,121.121 INFO    ] No camera update needed
[2026-06-22 12:16:16,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:16:16,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:16:16,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:16:16,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:16:18,178.178 INFO    ] ================================================
[2026-06-22 12:16:18,200.200 INFO    ] Launching Daemon at Mon Jun 22 12:16:18 IST 2026
[2026-06-22 12:16:18,212.212 INFO    ] ================================================
[2026-06-22 12:16:18,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:16:18
[2026-06-22 12:16:19,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:16:19,727.727 INFO    ] Initializing speech engine...
[2026-06-22 12:16:19,737.737 INFO    ] 2026-06-22 12:16:19
[2026-06-22 12:16:20,019.019 INFO    ] 2026-06-22 12:16:20
[2026-06-22 12:16:20,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:16:20,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:16:20,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:16:20,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:16:20,560.560 INFO    ] time= 22/06/2026 12:16:20
[2026-06-22 12:16:20,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:16:20,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:16:20,716.716 INFO    ] No existing commands found in stream
[2026-06-22 12:16:25,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:16:25,735.735 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-22 12:16:28,184.184 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:16:28,187.187 INFO    ] Checking for system updates...
[2026-06-22 12:16:28,224.224 INFO    ] 200
[2026-06-22 12:16:28,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:16:28,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:16:28,284.284 INFO    ] No update needed
[2026-06-22 12:16:28,287.287 INFO    ] Checking for camera pi updates...
[2026-06-22 12:16:28,322.322 INFO    ] 200
[2026-06-22 12:16:28,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:16:28,368.368 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:16:28,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:16:28,438.438 INFO    ] No camera update needed
[2026-06-22 12:16:28,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:16:28,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:16:28,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:16:28,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:16:30,497.497 INFO    ] ================================================
[2026-06-22 12:16:30,513.513 INFO    ] Launching Daemon at Mon Jun 22 12:16:30 IST 2026
[2026-06-22 12:16:30,523.523 INFO    ] ================================================
[2026-06-22 12:16:31,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:16:31
[2026-06-22 12:16:31,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:16:32,045.045 INFO    ] Initializing speech engine...
[2026-06-22 12:16:32,056.056 INFO    ] 2026-06-22 12:16:32
[2026-06-22 12:16:32,339.339 INFO    ] 2026-06-22 12:16:32
[2026-06-22 12:16:32,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:16:32,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:16:32,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:16:32,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:16:32,808.808 INFO    ] time= 22/06/2026 12:16:32
[2026-06-22 12:16:32,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:16:32,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:16:33,060.060 INFO    ] No existing commands found in stream
[2026-06-22 12:16:38,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:16:38,083.083 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-22 12:16:41,005.005 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:16:41,008.008 INFO    ] Checking for system updates...
[2026-06-22 12:16:41,048.048 INFO    ] 200
[2026-06-22 12:16:41,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:16:41,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:16:41,106.106 INFO    ] No update needed
[2026-06-22 12:16:41,108.108 INFO    ] Checking for camera pi updates...
[2026-06-22 12:16:41,142.142 INFO    ] 200
[2026-06-22 12:16:41,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:16:41,186.186 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:16:41,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:16:41,271.271 INFO    ] No camera update needed
[2026-06-22 12:16:41,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:16:41,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:16:41,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:16:41,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:16:43,328.328 INFO    ] ================================================
[2026-06-22 12:16:43,344.344 INFO    ] Launching Daemon at Mon Jun 22 12:16:43 IST 2026
[2026-06-22 12:16:43,355.355 INFO    ] ================================================
[2026-06-22 12:16:43,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:16:43
[2026-06-22 12:16:44,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:16:44,788.788 INFO    ] Initializing speech engine...
[2026-06-22 12:16:44,797.797 INFO    ] 2026-06-22 12:16:44
[2026-06-22 12:16:45,055.055 INFO    ] 2026-06-22 12:16:45
[2026-06-22 12:16:45,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:16:45,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:16:45,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:16:45,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:16:45,547.547 INFO    ] time= 22/06/2026 12:16:45
[2026-06-22 12:16:45,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:16:45,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:16:45,751.751 INFO    ] No existing commands found in stream
[2026-06-22 12:16:50,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:16:50,766.766 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-22 12:16:51,676.676 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:16:51,679.679 INFO    ] Checking for system updates...
[2026-06-22 12:16:51,720.720 INFO    ] 200
[2026-06-22 12:16:51,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:16:51,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:16:51,787.787 INFO    ] No update needed
[2026-06-22 12:16:51,789.789 INFO    ] Checking for camera pi updates...
[2026-06-22 12:16:51,827.827 INFO    ] 200
[2026-06-22 12:16:51,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:16:51,871.871 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:16:51,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:16:51,978.978 INFO    ] No camera update needed
[2026-06-22 12:16:51,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:16:51,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:16:51,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:16:51,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:16:54,035.035 INFO    ] ================================================
[2026-06-22 12:16:54,050.050 INFO    ] Launching Daemon at Mon Jun 22 12:16:54 IST 2026
[2026-06-22 12:16:54,061.061 INFO    ] ================================================
[2026-06-22 12:16:54,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:16:54
[2026-06-22 12:16:55,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:16:55,374.374 INFO    ] Initializing speech engine...
[2026-06-22 12:16:55,387.387 INFO    ] 2026-06-22 12:16:55
[2026-06-22 12:16:55,649.649 INFO    ] 2026-06-22 12:16:55
[2026-06-22 12:16:55,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:16:55,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:16:55,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:16:56,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:16:56,118.118 INFO    ] time= 22/06/2026 12:16:56
[2026-06-22 12:16:56,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:16:56,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:16:56,328.328 INFO    ] No existing commands found in stream
[2026-06-22 12:17:01,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:17:01,359.359 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-22 12:17:05,107.107 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:17:05,110.110 INFO    ] Checking for system updates...
[2026-06-22 12:17:05,148.148 INFO    ] 200
[2026-06-22 12:17:05,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:17:05,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:17:05,209.209 INFO    ] No update needed
[2026-06-22 12:17:05,212.212 INFO    ] Checking for camera pi updates...
[2026-06-22 12:17:05,252.252 INFO    ] 200
[2026-06-22 12:17:05,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:17:05,297.297 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:17:05,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:17:05,409.409 INFO    ] No camera update needed
[2026-06-22 12:17:05,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:17:05,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:17:05,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:17:05,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:17:07,469.469 INFO    ] ================================================
[2026-06-22 12:17:07,484.484 INFO    ] Launching Daemon at Mon Jun 22 12:17:07 IST 2026
[2026-06-22 12:17:07,495.495 INFO    ] ================================================
[2026-06-22 12:17:08,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:17:08
[2026-06-22 12:17:08,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:17:08,882.882 INFO    ] Initializing speech engine...
[2026-06-22 12:17:08,899.899 INFO    ] 2026-06-22 12:17:08
[2026-06-22 12:17:09,189.189 INFO    ] 2026-06-22 12:17:09
[2026-06-22 12:17:09,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:17:09,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:17:09,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:17:09,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:17:09,735.735 INFO    ] time= 22/06/2026 12:17:09
[2026-06-22 12:17:09,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:17:09,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:17:09,958.958 INFO    ] No existing commands found in stream
[2026-06-22 12:17:14,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:17:14,986.986 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-22 12:17:16,413.413 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:17:16,416.416 INFO    ] Checking for system updates...
[2026-06-22 12:17:16,456.456 INFO    ] 200
[2026-06-22 12:17:16,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:17:16,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:17:16,513.513 INFO    ] No update needed
[2026-06-22 12:17:16,515.515 INFO    ] Checking for camera pi updates...
[2026-06-22 12:17:16,550.550 INFO    ] 200
[2026-06-22 12:17:16,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:17:16,612.612 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:17:16,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:17:16,702.702 INFO    ] No camera update needed
[2026-06-22 12:17:16,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:17:16,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:17:16,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:17:16,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:17:18,759.759 INFO    ] ================================================
[2026-06-22 12:17:18,774.774 INFO    ] Launching Daemon at Mon Jun 22 12:17:18 IST 2026
[2026-06-22 12:17:18,785.785 INFO    ] ================================================
[2026-06-22 12:17:19,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:17:19
[2026-06-22 12:17:19,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:17:20,172.172 INFO    ] Initializing speech engine...
[2026-06-22 12:17:20,181.181 INFO    ] 2026-06-22 12:17:20
[2026-06-22 12:17:20,427.427 INFO    ] 2026-06-22 12:17:20
[2026-06-22 12:17:20,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:17:20,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:17:20,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:17:20,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:17:20,905.905 INFO    ] time= 22/06/2026 12:17:20
[2026-06-22 12:17:20,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:17:20,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:17:21,122.122 INFO    ] No existing commands found in stream
[2026-06-22 12:17:26,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:17:26,152.152 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-22 12:17:30,387.387 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:17:30,391.391 INFO    ] Checking for system updates...
[2026-06-22 12:17:30,433.433 INFO    ] 200
[2026-06-22 12:17:30,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:17:30,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:17:30,502.502 INFO    ] No update needed
[2026-06-22 12:17:30,505.505 INFO    ] Checking for camera pi updates...
[2026-06-22 12:17:30,541.541 INFO    ] 200
[2026-06-22 12:17:30,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:17:30,586.586 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:17:30,765.765 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:17:30,768.768 INFO    ] No camera update needed
[2026-06-22 12:17:30,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:17:30,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:17:30,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:17:30,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:17:32,830.830 INFO    ] ================================================
[2026-06-22 12:17:32,845.845 INFO    ] Launching Daemon at Mon Jun 22 12:17:32 IST 2026
[2026-06-22 12:17:32,855.855 INFO    ] ================================================
[2026-06-22 12:17:33,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:17:33
[2026-06-22 12:17:34,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:17:34,296.296 INFO    ] Initializing speech engine...
[2026-06-22 12:17:34,306.306 INFO    ] 2026-06-22 12:17:34
[2026-06-22 12:17:34,554.554 INFO    ] 2026-06-22 12:17:34
[2026-06-22 12:17:34,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:17:34,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:17:34,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:17:34,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:17:35,038.038 INFO    ] time= 22/06/2026 12:17:34
[2026-06-22 12:17:35,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:17:35,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:17:35,255.255 INFO    ] No existing commands found in stream
[2026-06-22 12:17:40,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:17:40,282.282 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-22 12:17:43,805.805 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:17:43,807.807 INFO    ] Checking for system updates...
[2026-06-22 12:17:43,828.828 INFO    ] 200
[2026-06-22 12:17:43,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:17:43,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:17:43,862.862 INFO    ] No update needed
[2026-06-22 12:17:43,863.863 INFO    ] Checking for camera pi updates...
[2026-06-22 12:17:43,883.883 INFO    ] 200
[2026-06-22 12:17:43,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:17:43,917.917 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:17:44,023.023 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:17:44,026.026 INFO    ] No camera update needed
[2026-06-22 12:17:44,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:17:44,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:17:44,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:17:44,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:17:46,085.085 INFO    ] ================================================
[2026-06-22 12:17:46,101.101 INFO    ] Launching Daemon at Mon Jun 22 12:17:46 IST 2026
[2026-06-22 12:17:46,112.112 INFO    ] ================================================
[2026-06-22 12:17:46,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:17:46
[2026-06-22 12:17:47,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:17:47,545.545 INFO    ] Initializing speech engine...
[2026-06-22 12:17:47,550.550 INFO    ] 2026-06-22 12:17:47
[2026-06-22 12:17:47,812.812 INFO    ] 2026-06-22 12:17:47
[2026-06-22 12:17:47,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:17:48,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:17:48,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:17:48,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:17:48,270.270 INFO    ] time= 22/06/2026 12:17:48
[2026-06-22 12:17:48,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:17:48,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:17:48,495.495 INFO    ] No existing commands found in stream
[2026-06-22 12:17:53,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:17:53,522.522 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-22 12:17:57,564.564 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:17:57,567.567 INFO    ] Checking for system updates...
[2026-06-22 12:17:57,610.610 INFO    ] 200
[2026-06-22 12:17:57,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:17:57,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:17:57,676.676 INFO    ] No update needed
[2026-06-22 12:17:57,679.679 INFO    ] Checking for camera pi updates...
[2026-06-22 12:17:57,712.712 INFO    ] 200
[2026-06-22 12:17:57,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:17:57,756.756 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:17:57,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:17:57,861.861 INFO    ] No camera update needed
[2026-06-22 12:17:57,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:17:57,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:17:57,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:17:57,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:17:59,919.919 INFO    ] ================================================
[2026-06-22 12:17:59,935.935 INFO    ] Launching Daemon at Mon Jun 22 12:17:59 IST 2026
[2026-06-22 12:17:59,946.946 INFO    ] ================================================
[2026-06-22 12:18:00,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:18:00
[2026-06-22 12:18:01,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:18:01,789.789 INFO    ] Initializing speech engine...
[2026-06-22 12:18:01,802.802 INFO    ] 2026-06-22 12:18:01
[2026-06-22 12:18:02,151.151 INFO    ] 2026-06-22 12:18:02
[2026-06-22 12:18:02,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:18:02,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:18:02,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:18:02,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:18:02,693.693 INFO    ] time= 22/06/2026 12:18:02
[2026-06-22 12:18:02,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:18:02,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:18:02,927.927 INFO    ] No existing commands found in stream
[2026-06-22 12:18:07,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:18:07,955.955 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-22 12:18:08,852.852 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:18:08,856.856 INFO    ] Checking for system updates...
[2026-06-22 12:18:08,892.892 INFO    ] 200
[2026-06-22 12:18:08,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:18:08,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:18:08,952.952 INFO    ] No update needed
[2026-06-22 12:18:08,954.954 INFO    ] Checking for camera pi updates...
[2026-06-22 12:18:08,987.987 INFO    ] 200
[2026-06-22 12:18:08,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:18:09,030.030 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:18:09,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:18:09,113.113 INFO    ] No camera update needed
[2026-06-22 12:18:09,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:18:09,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:18:09,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:18:09,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:18:11,170.170 INFO    ] ================================================
[2026-06-22 12:18:11,185.185 INFO    ] Launching Daemon at Mon Jun 22 12:18:11 IST 2026
[2026-06-22 12:18:11,195.195 INFO    ] ================================================
[2026-06-22 12:18:11,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:18:11
[2026-06-22 12:18:12,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:18:12,563.563 INFO    ] Initializing speech engine...
[2026-06-22 12:18:12,573.573 INFO    ] 2026-06-22 12:18:12
[2026-06-22 12:18:12,852.852 INFO    ] 2026-06-22 12:18:12
[2026-06-22 12:18:12,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:18:13,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:18:13,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:18:13,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:18:13,382.382 INFO    ] time= 22/06/2026 12:18:13
[2026-06-22 12:18:13,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:18:13,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:18:13,544.544 INFO    ] No existing commands found in stream
[2026-06-22 12:18:18,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:18:18,566.566 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-22 12:18:20,395.395 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:18:20,398.398 INFO    ] Checking for system updates...
[2026-06-22 12:18:20,438.438 INFO    ] 200
[2026-06-22 12:18:20,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:18:20,495.495 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:18:20,497.497 INFO    ] No update needed
[2026-06-22 12:18:20,500.500 INFO    ] Checking for camera pi updates...
[2026-06-22 12:18:20,534.534 INFO    ] 200
[2026-06-22 12:18:20,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:18:20,578.578 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:18:20,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:18:20,660.660 INFO    ] No camera update needed
[2026-06-22 12:18:20,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:18:20,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:18:20,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:18:20,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:18:22,715.715 INFO    ] ================================================
[2026-06-22 12:18:22,730.730 INFO    ] Launching Daemon at Mon Jun 22 12:18:22 IST 2026
[2026-06-22 12:18:22,741.741 INFO    ] ================================================
[2026-06-22 12:18:23,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:18:23
[2026-06-22 12:18:24,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:18:24,303.303 INFO    ] Initializing speech engine...
[2026-06-22 12:18:24,312.312 INFO    ] 2026-06-22 12:18:24
[2026-06-22 12:18:24,585.585 INFO    ] 2026-06-22 12:18:24
[2026-06-22 12:18:24,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:18:24,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:18:24,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:18:25,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:18:25,120.120 INFO    ] time= 22/06/2026 12:18:25
[2026-06-22 12:18:25,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:18:25,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:18:25,360.360 INFO    ] No existing commands found in stream
[2026-06-22 12:18:30,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:18:30,394.394 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-22 12:18:32,538.538 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:18:32,541.541 INFO    ] Checking for system updates...
[2026-06-22 12:18:32,581.581 INFO    ] 200
[2026-06-22 12:18:32,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:18:32,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:18:32,644.644 INFO    ] No update needed
[2026-06-22 12:18:32,647.647 INFO    ] Checking for camera pi updates...
[2026-06-22 12:18:32,685.685 INFO    ] 200
[2026-06-22 12:18:32,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:18:32,737.737 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:18:32,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:18:32,825.825 INFO    ] No camera update needed
[2026-06-22 12:18:32,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:18:32,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:18:32,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:18:32,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:18:34,882.882 INFO    ] ================================================
[2026-06-22 12:18:34,898.898 INFO    ] Launching Daemon at Mon Jun 22 12:18:34 IST 2026
[2026-06-22 12:18:34,908.908 INFO    ] ================================================
[2026-06-22 12:18:35,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:18:35
[2026-06-22 12:18:36,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:18:36,280.280 INFO    ] Initializing speech engine...
[2026-06-22 12:18:36,291.291 INFO    ] 2026-06-22 12:18:36
[2026-06-22 12:18:36,551.551 INFO    ] 2026-06-22 12:18:36
[2026-06-22 12:18:36,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:18:36,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:18:36,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:18:37,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:18:37,093.093 INFO    ] time= 22/06/2026 12:18:37
[2026-06-22 12:18:37,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:18:37,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:18:37,253.253 INFO    ] No existing commands found in stream
[2026-06-22 12:18:42,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:18:42,275.275 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-22 12:18:43,613.613 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:18:43,616.616 INFO    ] Checking for system updates...
[2026-06-22 12:18:43,653.653 INFO    ] 200
[2026-06-22 12:18:43,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:18:43,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:18:43,719.719 INFO    ] No update needed
[2026-06-22 12:18:43,721.721 INFO    ] Checking for camera pi updates...
[2026-06-22 12:18:43,755.755 INFO    ] 200
[2026-06-22 12:18:43,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:18:43,798.798 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:18:43,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:18:43,890.890 INFO    ] No camera update needed
[2026-06-22 12:18:43,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:18:43,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:18:43,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:18:43,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:18:45,947.947 INFO    ] ================================================
[2026-06-22 12:18:45,962.962 INFO    ] Launching Daemon at Mon Jun 22 12:18:45 IST 2026
[2026-06-22 12:18:45,973.973 INFO    ] ================================================
[2026-06-22 12:18:46,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:18:46
[2026-06-22 12:18:47,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:18:47,513.513 INFO    ] Initializing speech engine...
[2026-06-22 12:18:47,519.519 INFO    ] 2026-06-22 12:18:47
[2026-06-22 12:18:47,810.810 INFO    ] 2026-06-22 12:18:47
[2026-06-22 12:18:47,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:18:48,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:18:48,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:18:48,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:18:48,350.350 INFO    ] time= 22/06/2026 12:18:48
[2026-06-22 12:18:48,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:18:48,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:18:48,511.511 INFO    ] No existing commands found in stream
[2026-06-22 12:18:53,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:18:53,543.543 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-22 12:18:57,857.857 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:18:57,860.860 INFO    ] Checking for system updates...
[2026-06-22 12:18:57,897.897 INFO    ] 200
[2026-06-22 12:18:57,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:18:57,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:18:57,954.954 INFO    ] No update needed
[2026-06-22 12:18:57,957.957 INFO    ] Checking for camera pi updates...
[2026-06-22 12:18:57,991.991 INFO    ] 200
[2026-06-22 12:18:57,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:18:58,040.040 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:18:58,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:18:58,108.108 INFO    ] No camera update needed
[2026-06-22 12:18:58,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:18:58,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:18:58,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:18:58,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:19:00,163.163 INFO    ] ================================================
[2026-06-22 12:19:00,179.179 INFO    ] Launching Daemon at Mon Jun 22 12:19:00 IST 2026
[2026-06-22 12:19:00,190.190 INFO    ] ================================================
[2026-06-22 12:19:00,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:19:00
[2026-06-22 12:19:01,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:19:01,761.761 INFO    ] Initializing speech engine...
[2026-06-22 12:19:01,773.773 INFO    ] 2026-06-22 12:19:01
[2026-06-22 12:19:02,067.067 INFO    ] 2026-06-22 12:19:02
[2026-06-22 12:19:02,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:19:02,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:19:02,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:19:02,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:19:02,536.536 INFO    ] time= 22/06/2026 12:19:02
[2026-06-22 12:19:02,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:19:02,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:19:02,754.754 INFO    ] No existing commands found in stream
[2026-06-22 12:19:07,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:19:07,784.784 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-22 12:19:09,678.678 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:19:09,681.681 INFO    ] Checking for system updates...
[2026-06-22 12:19:09,716.716 INFO    ] 200
[2026-06-22 12:19:09,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:19:09,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:19:09,782.782 INFO    ] No update needed
[2026-06-22 12:19:09,784.784 INFO    ] Checking for camera pi updates...
[2026-06-22 12:19:09,819.819 INFO    ] 200
[2026-06-22 12:19:09,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:19:09,868.868 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:19:09,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:19:09,960.960 INFO    ] No camera update needed
[2026-06-22 12:19:09,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:19:09,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:19:09,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:19:09,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:19:12,019.019 INFO    ] ================================================
[2026-06-22 12:19:12,034.034 INFO    ] Launching Daemon at Mon Jun 22 12:19:12 IST 2026
[2026-06-22 12:19:12,044.044 INFO    ] ================================================
[2026-06-22 12:19:12,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:19:12
[2026-06-22 12:19:13,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:19:13,392.392 INFO    ] Initializing speech engine...
[2026-06-22 12:19:13,415.415 INFO    ] 2026-06-22 12:19:13
[2026-06-22 12:19:13,688.688 INFO    ] 2026-06-22 12:19:13
[2026-06-22 12:19:13,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:19:13,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:19:13,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:19:14,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:19:14,102.102 INFO    ] time= 22/06/2026 12:19:14
[2026-06-22 12:19:14,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:19:14,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:19:14,242.242 INFO    ] No existing commands found in stream
[2026-06-22 12:19:19,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:19:19,270.270 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-22 12:19:21,088.088 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:19:21,090.090 INFO    ] Checking for system updates...
[2026-06-22 12:19:21,129.129 INFO    ] 200
[2026-06-22 12:19:21,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:19:21,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:19:21,186.186 INFO    ] No update needed
[2026-06-22 12:19:21,189.189 INFO    ] Checking for camera pi updates...
[2026-06-22 12:19:21,222.222 INFO    ] 200
[2026-06-22 12:19:21,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:19:21,267.267 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:19:21,322.322 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:19:21,325.325 INFO    ] No camera update needed
[2026-06-22 12:19:21,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:19:21,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:19:21,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:19:21,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:19:23,380.380 INFO    ] ================================================
[2026-06-22 12:19:23,395.395 INFO    ] Launching Daemon at Mon Jun 22 12:19:23 IST 2026
[2026-06-22 12:19:23,406.406 INFO    ] ================================================
[2026-06-22 12:19:23,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:19:23
[2026-06-22 12:19:24,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:19:24,845.845 INFO    ] Initializing speech engine...
[2026-06-22 12:19:24,854.854 INFO    ] 2026-06-22 12:19:24
[2026-06-22 12:19:25,106.106 INFO    ] 2026-06-22 12:19:25
[2026-06-22 12:19:25,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:19:25,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:19:25,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:19:25,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:19:25,593.593 INFO    ] time= 22/06/2026 12:19:25
[2026-06-22 12:19:25,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:19:25,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:19:25,837.837 INFO    ] No existing commands found in stream
[2026-06-22 12:19:30,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:19:30,863.863 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-22 12:19:34,920.920 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:19:34,922.922 INFO    ] Checking for system updates...
[2026-06-22 12:19:34,943.943 INFO    ] 200
[2026-06-22 12:19:34,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:19:34,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:19:34,978.978 INFO    ] No update needed
[2026-06-22 12:19:34,980.980 INFO    ] Checking for camera pi updates...
[2026-06-22 12:19:35,010.010 INFO    ] 200
[2026-06-22 12:19:35,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:19:35,057.057 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:19:35,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:19:35,239.239 INFO    ] No camera update needed
[2026-06-22 12:19:35,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:19:35,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:19:35,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:19:35,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:19:37,295.295 INFO    ] ================================================
[2026-06-22 12:19:37,311.311 INFO    ] Launching Daemon at Mon Jun 22 12:19:37 IST 2026
[2026-06-22 12:19:37,321.321 INFO    ] ================================================
[2026-06-22 12:19:37,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:19:37
[2026-06-22 12:19:38,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:19:38,658.658 INFO    ] Initializing speech engine...
[2026-06-22 12:19:38,663.663 INFO    ] 2026-06-22 12:19:38
[2026-06-22 12:19:38,957.957 INFO    ] 2026-06-22 12:19:38
[2026-06-22 12:19:38,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:19:39,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:19:39,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:19:39,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:19:39,337.337 INFO    ] time= 22/06/2026 12:19:39
[2026-06-22 12:19:39,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:19:39,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:19:39,462.462 INFO    ] No existing commands found in stream
[2026-06-22 12:19:44,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:19:44,477.477 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-22 12:19:48,184.184 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:19:48,187.187 INFO    ] Checking for system updates...
[2026-06-22 12:19:48,226.226 INFO    ] 200
[2026-06-22 12:19:48,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:19:48,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:19:48,287.287 INFO    ] No update needed
[2026-06-22 12:19:48,289.289 INFO    ] Checking for camera pi updates...
[2026-06-22 12:19:48,324.324 INFO    ] 200
[2026-06-22 12:19:48,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:19:48,374.374 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:19:48,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:19:48,471.471 INFO    ] No camera update needed
[2026-06-22 12:19:48,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:19:48,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:19:48,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:19:48,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:19:50,527.527 INFO    ] ================================================
[2026-06-22 12:19:50,545.545 INFO    ] Launching Daemon at Mon Jun 22 12:19:50 IST 2026
[2026-06-22 12:19:50,555.555 INFO    ] ================================================
[2026-06-22 12:19:51,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:19:51
[2026-06-22 12:19:51,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:19:52,150.150 INFO    ] Initializing speech engine...
[2026-06-22 12:19:52,162.162 INFO    ] 2026-06-22 12:19:52
[2026-06-22 12:19:52,468.468 INFO    ] 2026-06-22 12:19:52
[2026-06-22 12:19:52,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:19:52,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:19:52,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:19:52,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:19:52,971.971 INFO    ] time= 22/06/2026 12:19:52
[2026-06-22 12:19:52,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:19:53,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:19:53,136.136 INFO    ] No existing commands found in stream
[2026-06-22 12:19:58,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:19:58,170.170 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-22 12:20:02,306.306 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:20:02,310.310 INFO    ] Checking for system updates...
[2026-06-22 12:20:02,361.361 INFO    ] 200
[2026-06-22 12:20:02,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:20:02,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:20:02,433.433 INFO    ] No update needed
[2026-06-22 12:20:02,447.447 INFO    ] Checking for camera pi updates...
[2026-06-22 12:20:02,500.500 INFO    ] 200
[2026-06-22 12:20:02,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:20:02,556.556 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:20:02,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:20:02,664.664 INFO    ] No camera update needed
[2026-06-22 12:20:02,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:20:02,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:20:02,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:20:02,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:20:04,735.735 INFO    ] ================================================
[2026-06-22 12:20:04,751.751 INFO    ] Launching Daemon at Mon Jun 22 12:20:04 IST 2026
[2026-06-22 12:20:04,763.763 INFO    ] ================================================
[2026-06-22 12:20:05,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:20:05
[2026-06-22 12:20:06,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:20:06,271.271 INFO    ] Initializing speech engine...
[2026-06-22 12:20:06,278.278 INFO    ] 2026-06-22 12:20:06
[2026-06-22 12:20:06,520.520 INFO    ] 2026-06-22 12:20:06
[2026-06-22 12:20:06,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:20:06,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:20:06,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:20:06,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:20:06,946.946 INFO    ] time= 22/06/2026 12:20:06
[2026-06-22 12:20:06,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:20:06,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:20:07,130.130 INFO    ] No existing commands found in stream
[2026-06-22 12:20:12,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:20:12,163.163 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-22 12:20:16,419.419 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:20:16,422.422 INFO    ] Checking for system updates...
[2026-06-22 12:20:16,462.462 INFO    ] 200
[2026-06-22 12:20:16,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:20:16,517.517 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:20:16,520.520 INFO    ] No update needed
[2026-06-22 12:20:16,522.522 INFO    ] Checking for camera pi updates...
[2026-06-22 12:20:16,560.560 INFO    ] 200
[2026-06-22 12:20:16,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:20:16,605.605 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:20:16,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:20:16,692.692 INFO    ] No camera update needed
[2026-06-22 12:20:16,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:20:16,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:20:16,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:20:16,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:20:18,758.758 INFO    ] ================================================
[2026-06-22 12:20:18,774.774 INFO    ] Launching Daemon at Mon Jun 22 12:20:18 IST 2026
[2026-06-22 12:20:18,785.785 INFO    ] ================================================
[2026-06-22 12:20:19,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:20:19
[2026-06-22 12:20:19,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:20:20,106.106 INFO    ] Initializing speech engine...
[2026-06-22 12:20:20,114.114 INFO    ] 2026-06-22 12:20:20
[2026-06-22 12:20:20,389.389 INFO    ] 2026-06-22 12:20:20
[2026-06-22 12:20:20,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:20:20,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:20:20,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:20:20,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:20:20,861.861 INFO    ] time= 22/06/2026 12:20:20
[2026-06-22 12:20:20,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:20:20,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:20:21,128.128 INFO    ] No existing commands found in stream
[2026-06-22 12:20:26,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:20:26,152.152 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-22 12:20:26,702.702 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:20:26,705.705 INFO    ] Checking for system updates...
[2026-06-22 12:20:26,746.746 INFO    ] 200
[2026-06-22 12:20:26,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:20:26,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:20:26,811.811 INFO    ] No update needed
[2026-06-22 12:20:26,814.814 INFO    ] Checking for camera pi updates...
[2026-06-22 12:20:26,847.847 INFO    ] 200
[2026-06-22 12:20:26,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:20:26,890.890 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:20:26,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:20:26,999.999 INFO    ] No camera update needed
[2026-06-22 12:20:27,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:20:27,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:20:27,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:20:27,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:20:29,056.056 INFO    ] ================================================
[2026-06-22 12:20:29,072.072 INFO    ] Launching Daemon at Mon Jun 22 12:20:29 IST 2026
[2026-06-22 12:20:29,083.083 INFO    ] ================================================
[2026-06-22 12:20:29,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:20:29
[2026-06-22 12:20:30,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:20:30,408.408 INFO    ] Initializing speech engine...
[2026-06-22 12:20:30,414.414 INFO    ] 2026-06-22 12:20:30
[2026-06-22 12:20:30,715.715 INFO    ] 2026-06-22 12:20:30
[2026-06-22 12:20:30,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:20:30,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:20:30,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:20:31,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:20:31,148.148 INFO    ] time= 22/06/2026 12:20:31
[2026-06-22 12:20:31,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:20:31,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:20:31,238.238 INFO    ] No existing commands found in stream
[2026-06-22 12:20:36,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:20:36,271.271 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-22 12:20:36,819.819 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:20:36,820.820 INFO    ] Checking for system updates...
[2026-06-22 12:20:36,845.845 INFO    ] 200
[2026-06-22 12:20:36,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:20:36,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:20:36,903.903 INFO    ] No update needed
[2026-06-22 12:20:36,906.906 INFO    ] Checking for camera pi updates...
[2026-06-22 12:20:36,940.940 INFO    ] 200
[2026-06-22 12:20:36,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:20:36,988.988 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:20:37,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:20:37,072.072 INFO    ] No camera update needed
[2026-06-22 12:20:37,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:20:37,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:20:37,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:20:37,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:20:39,129.129 INFO    ] ================================================
[2026-06-22 12:20:39,145.145 INFO    ] Launching Daemon at Mon Jun 22 12:20:39 IST 2026
[2026-06-22 12:20:39,156.156 INFO    ] ================================================
[2026-06-22 12:20:39,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:20:39
[2026-06-22 12:20:40,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:20:40,496.496 INFO    ] Initializing speech engine...
[2026-06-22 12:20:40,511.511 INFO    ] 2026-06-22 12:20:40
[2026-06-22 12:20:40,804.804 INFO    ] 2026-06-22 12:20:40
[2026-06-22 12:20:40,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:20:41,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:20:41,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:20:41,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:20:41,239.239 INFO    ] time= 22/06/2026 12:20:41
[2026-06-22 12:20:41,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:20:41,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:20:41,326.326 INFO    ] No existing commands found in stream
[2026-06-22 12:20:46,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:20:46,341.341 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-22 12:20:47,148.148 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:20:47,149.149 INFO    ] Checking for system updates...
[2026-06-22 12:20:47,170.170 INFO    ] 200
[2026-06-22 12:20:47,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:20:47,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:20:47,206.206 INFO    ] No update needed
[2026-06-22 12:20:47,207.207 INFO    ] Checking for camera pi updates...
[2026-06-22 12:20:47,228.228 INFO    ] 200
[2026-06-22 12:20:47,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:20:47,280.280 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:20:47,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:20:47,380.380 INFO    ] No camera update needed
[2026-06-22 12:20:47,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:20:47,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:20:47,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:20:47,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:20:49,438.438 INFO    ] ================================================
[2026-06-22 12:20:49,454.454 INFO    ] Launching Daemon at Mon Jun 22 12:20:49 IST 2026
[2026-06-22 12:20:49,465.465 INFO    ] ================================================
[2026-06-22 12:20:50,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:20:50
[2026-06-22 12:20:50,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:20:51,047.047 INFO    ] Initializing speech engine...
[2026-06-22 12:20:51,056.056 INFO    ] 2026-06-22 12:20:51
[2026-06-22 12:20:51,346.346 INFO    ] 2026-06-22 12:20:51
[2026-06-22 12:20:51,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:20:51,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:20:51,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:20:51,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:20:51,884.884 INFO    ] time= 22/06/2026 12:20:51
[2026-06-22 12:20:51,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:20:51,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:20:52,043.043 INFO    ] No existing commands found in stream
[2026-06-22 12:20:57,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:20:57,067.067 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-22 12:21:00,620.620 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:21:00,624.624 INFO    ] Checking for system updates...
[2026-06-22 12:21:00,663.663 INFO    ] 200
[2026-06-22 12:21:00,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:21:00,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:21:00,732.732 INFO    ] No update needed
[2026-06-22 12:21:00,734.734 INFO    ] Checking for camera pi updates...
[2026-06-22 12:21:00,774.774 INFO    ] 200
[2026-06-22 12:21:00,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:21:00,820.820 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:21:00,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:21:00,905.905 INFO    ] No camera update needed
[2026-06-22 12:21:00,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:21:00,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:21:00,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:21:00,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:21:02,978.978 INFO    ] ================================================
[2026-06-22 12:21:03,998.998 INFO    ] Launching Daemon at Mon Jun 22 12:21:02 IST 2026
[2026-06-22 12:21:03,016.016 INFO    ] ================================================
[2026-06-22 12:21:03,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:21:03
[2026-06-22 12:21:04,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:21:04,529.529 INFO    ] Initializing speech engine...
[2026-06-22 12:21:04,538.538 INFO    ] 2026-06-22 12:21:04
[2026-06-22 12:21:04,803.803 INFO    ] 2026-06-22 12:21:04
[2026-06-22 12:21:04,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:21:05,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:21:05,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:21:05,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:21:05,290.290 INFO    ] time= 22/06/2026 12:21:05
[2026-06-22 12:21:05,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:21:05,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:21:05,544.544 INFO    ] No existing commands found in stream
[2026-06-22 12:21:10,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:21:10,567.567 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-22 12:21:13,852.852 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:21:13,855.855 INFO    ] Checking for system updates...
[2026-06-22 12:21:13,892.892 INFO    ] 200
[2026-06-22 12:21:13,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:21:13,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:21:13,950.950 INFO    ] No update needed
[2026-06-22 12:21:13,953.953 INFO    ] Checking for camera pi updates...
[2026-06-22 12:21:13,990.990 INFO    ] 200
[2026-06-22 12:21:13,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:21:14,033.033 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:21:14,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:21:14,129.129 INFO    ] No camera update needed
[2026-06-22 12:21:14,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:21:14,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:21:14,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:21:14,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:21:16,187.187 INFO    ] ================================================
[2026-06-22 12:21:16,203.203 INFO    ] Launching Daemon at Mon Jun 22 12:21:16 IST 2026
[2026-06-22 12:21:16,214.214 INFO    ] ================================================
[2026-06-22 12:21:16,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:21:16
[2026-06-22 12:21:17,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:21:17,552.552 INFO    ] Initializing speech engine...
[2026-06-22 12:21:17,561.561 INFO    ] 2026-06-22 12:21:17
[2026-06-22 12:21:17,813.813 INFO    ] 2026-06-22 12:21:17
[2026-06-22 12:21:17,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:21:18,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:21:18,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:21:18,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:21:18,278.278 INFO    ] time= 22/06/2026 12:21:18
[2026-06-22 12:21:18,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:21:18,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:21:18,497.497 INFO    ] No existing commands found in stream
[2026-06-22 12:21:23,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:21:23,527.527 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-22 12:21:26,602.602 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:21:26,605.605 INFO    ] Checking for system updates...
[2026-06-22 12:21:26,643.643 INFO    ] 200
[2026-06-22 12:21:26,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:21:26,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:21:26,701.701 INFO    ] No update needed
[2026-06-22 12:21:26,703.703 INFO    ] Checking for camera pi updates...
[2026-06-22 12:21:26,737.737 INFO    ] 200
[2026-06-22 12:21:26,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:21:26,780.780 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:21:26,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:21:26,866.866 INFO    ] No camera update needed
[2026-06-22 12:21:26,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:21:26,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:21:26,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:21:26,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:21:28,929.929 INFO    ] ================================================
[2026-06-22 12:21:28,945.945 INFO    ] Launching Daemon at Mon Jun 22 12:21:28 IST 2026
[2026-06-22 12:21:28,956.956 INFO    ] ================================================
[2026-06-22 12:21:29,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:21:29
[2026-06-22 12:21:30,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:21:30,402.402 INFO    ] Initializing speech engine...
[2026-06-22 12:21:30,415.415 INFO    ] 2026-06-22 12:21:30
[2026-06-22 12:21:30,719.719 INFO    ] 2026-06-22 12:21:30
[2026-06-22 12:21:30,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:21:30,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:21:30,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:21:31,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:21:31,223.223 INFO    ] time= 22/06/2026 12:21:31
[2026-06-22 12:21:31,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:21:31,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:21:31,375.375 INFO    ] No existing commands found in stream
[2026-06-22 12:21:36,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:21:36,394.394 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-22 12:21:38,326.326 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:21:38,327.327 INFO    ] Checking for system updates...
[2026-06-22 12:21:38,348.348 INFO    ] 200
[2026-06-22 12:21:38,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:21:38,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:21:38,388.388 INFO    ] No update needed
[2026-06-22 12:21:38,390.390 INFO    ] Checking for camera pi updates...
[2026-06-22 12:21:38,425.425 INFO    ] 200
[2026-06-22 12:21:38,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:21:38,469.469 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:21:38,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:21:38,653.653 INFO    ] No camera update needed
[2026-06-22 12:21:38,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:21:38,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:21:38,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:21:38,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:21:40,712.712 INFO    ] ================================================
[2026-06-22 12:21:40,727.727 INFO    ] Launching Daemon at Mon Jun 22 12:21:40 IST 2026
[2026-06-22 12:21:40,737.737 INFO    ] ================================================
[2026-06-22 12:21:41,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:21:41
[2026-06-22 12:21:41,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:21:42,166.166 INFO    ] Initializing speech engine...
[2026-06-22 12:21:42,175.175 INFO    ] 2026-06-22 12:21:42
[2026-06-22 12:21:42,431.431 INFO    ] 2026-06-22 12:21:42
[2026-06-22 12:21:42,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:21:42,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:21:42,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:21:42,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:21:42,912.912 INFO    ] time= 22/06/2026 12:21:42
[2026-06-22 12:21:42,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:21:42,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:21:43,133.133 INFO    ] No existing commands found in stream
[2026-06-22 12:21:48,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:21:48,150.150 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-22 12:21:51,879.879 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:21:51,882.882 INFO    ] Checking for system updates...
[2026-06-22 12:21:51,917.917 INFO    ] 200
[2026-06-22 12:21:51,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:21:51,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:21:51,975.975 INFO    ] No update needed
[2026-06-22 12:21:51,977.977 INFO    ] Checking for camera pi updates...
[2026-06-22 12:21:52,016.016 INFO    ] 200
[2026-06-22 12:21:52,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:21:52,059.059 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:21:52,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:21:52,117.117 INFO    ] No camera update needed
[2026-06-22 12:21:52,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:21:52,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:21:52,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:21:52,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:21:54,176.176 INFO    ] ================================================
[2026-06-22 12:21:54,192.192 INFO    ] Launching Daemon at Mon Jun 22 12:21:54 IST 2026
[2026-06-22 12:21:54,203.203 INFO    ] ================================================
[2026-06-22 12:21:54,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:21:54
[2026-06-22 12:21:55,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:21:55,548.548 INFO    ] Initializing speech engine...
[2026-06-22 12:21:55,558.558 INFO    ] 2026-06-22 12:21:55
[2026-06-22 12:21:55,811.811 INFO    ] 2026-06-22 12:21:55
[2026-06-22 12:21:55,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:21:56,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:21:56,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:21:56,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:21:56,265.265 INFO    ] time= 22/06/2026 12:21:56
[2026-06-22 12:21:56,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:21:56,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:21:56,497.497 INFO    ] No existing commands found in stream
[2026-06-22 12:22:01,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:22:01,538.538 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-22 12:22:04,154.154 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:22:04,156.156 INFO    ] Checking for system updates...
[2026-06-22 12:22:04,194.194 INFO    ] 200
[2026-06-22 12:22:04,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:22:04,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:22:04,252.252 INFO    ] No update needed
[2026-06-22 12:22:04,254.254 INFO    ] Checking for camera pi updates...
[2026-06-22 12:22:04,289.289 INFO    ] 200
[2026-06-22 12:22:04,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:22:04,332.332 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:22:04,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:22:04,433.433 INFO    ] No camera update needed
[2026-06-22 12:22:04,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:22:04,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:22:04,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:22:04,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:22:06,489.489 INFO    ] ================================================
[2026-06-22 12:22:06,504.504 INFO    ] Launching Daemon at Mon Jun 22 12:22:06 IST 2026
[2026-06-22 12:22:06,514.514 INFO    ] ================================================
[2026-06-22 12:22:07,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:22:07
[2026-06-22 12:22:07,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:22:07,935.935 INFO    ] Initializing speech engine...
[2026-06-22 12:22:07,959.959 INFO    ] 2026-06-22 12:22:07
[2026-06-22 12:22:08,232.232 INFO    ] 2026-06-22 12:22:08
[2026-06-22 12:22:08,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:22:08,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:22:08,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:22:08,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:22:08,646.646 INFO    ] time= 22/06/2026 12:22:08
[2026-06-22 12:22:08,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:22:08,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:22:08,732.732 INFO    ] No existing commands found in stream
[2026-06-22 12:22:13,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:22:13,770.770 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-22 12:22:15,029.029 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:22:15,032.032 INFO    ] Checking for system updates...
[2026-06-22 12:22:15,068.068 INFO    ] 200
[2026-06-22 12:22:15,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:22:15,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:22:15,127.127 INFO    ] No update needed
[2026-06-22 12:22:15,129.129 INFO    ] Checking for camera pi updates...
[2026-06-22 12:22:15,163.163 INFO    ] 200
[2026-06-22 12:22:15,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:22:15,210.210 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:22:15,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:22:15,311.311 INFO    ] No camera update needed
[2026-06-22 12:22:15,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:22:15,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:22:15,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:22:15,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:22:17,367.367 INFO    ] ================================================
[2026-06-22 12:22:17,383.383 INFO    ] Launching Daemon at Mon Jun 22 12:22:17 IST 2026
[2026-06-22 12:22:17,394.394 INFO    ] ================================================
[2026-06-22 12:22:17,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:22:17
[2026-06-22 12:22:18,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:22:18,830.830 INFO    ] Initializing speech engine...
[2026-06-22 12:22:18,844.844 INFO    ] 2026-06-22 12:22:18
[2026-06-22 12:22:19,098.098 INFO    ] 2026-06-22 12:22:19
[2026-06-22 12:22:19,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:22:19,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:22:19,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:22:19,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:22:19,573.573 INFO    ] time= 22/06/2026 12:22:19
[2026-06-22 12:22:19,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:22:19,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:22:19,798.798 INFO    ] No existing commands found in stream
[2026-06-22 12:22:24,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:22:24,826.826 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-22 12:22:26,505.505 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:22:26,508.508 INFO    ] Checking for system updates...
[2026-06-22 12:22:26,543.543 INFO    ] 200
[2026-06-22 12:22:26,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:22:26,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:22:26,601.601 INFO    ] No update needed
[2026-06-22 12:22:26,603.603 INFO    ] Checking for camera pi updates...
[2026-06-22 12:22:26,642.642 INFO    ] 200
[2026-06-22 12:22:26,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:22:26,690.690 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:22:26,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:22:26,780.780 INFO    ] No camera update needed
[2026-06-22 12:22:26,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:22:26,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:22:26,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:22:26,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:22:28,834.834 INFO    ] ================================================
[2026-06-22 12:22:28,850.850 INFO    ] Launching Daemon at Mon Jun 22 12:22:28 IST 2026
[2026-06-22 12:22:28,861.861 INFO    ] ================================================
[2026-06-22 12:22:29,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:22:29
[2026-06-22 12:22:29,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:22:30,229.229 INFO    ] Initializing speech engine...
[2026-06-22 12:22:30,232.232 INFO    ] 2026-06-22 12:22:30
[2026-06-22 12:22:30,506.506 INFO    ] 2026-06-22 12:22:30
[2026-06-22 12:22:30,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:22:30,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:22:30,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:22:31,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:22:31,089.089 INFO    ] time= 22/06/2026 12:22:31
[2026-06-22 12:22:31,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:22:31,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:22:31,257.257 INFO    ] No existing commands found in stream
[2026-06-22 12:22:36,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:22:36,270.270 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-22 12:22:37,856.856 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:22:37,858.858 INFO    ] Checking for system updates...
[2026-06-22 12:22:37,895.895 INFO    ] 200
[2026-06-22 12:22:37,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:22:37,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:22:37,956.956 INFO    ] No update needed
[2026-06-22 12:22:37,958.958 INFO    ] Checking for camera pi updates...
[2026-06-22 12:22:37,992.992 INFO    ] 200
[2026-06-22 12:22:37,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:22:38,040.040 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:22:38,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:22:38,127.127 INFO    ] No camera update needed
[2026-06-22 12:22:38,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:22:38,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:22:38,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:22:38,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:22:40,182.182 INFO    ] ================================================
[2026-06-22 12:22:40,199.199 INFO    ] Launching Daemon at Mon Jun 22 12:22:40 IST 2026
[2026-06-22 12:22:40,210.210 INFO    ] ================================================
[2026-06-22 12:22:40,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:22:40
[2026-06-22 12:22:41,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:22:41,544.544 INFO    ] Initializing speech engine...
[2026-06-22 12:22:41,553.553 INFO    ] 2026-06-22 12:22:41
[2026-06-22 12:22:41,802.802 INFO    ] 2026-06-22 12:22:41
[2026-06-22 12:22:41,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:22:42,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:22:42,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:22:42,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:22:42,280.280 INFO    ] time= 22/06/2026 12:22:42
[2026-06-22 12:22:42,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:22:42,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:22:42,516.516 INFO    ] No existing commands found in stream
[2026-06-22 12:22:47,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:22:47,540.540 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-22 12:22:50,199.199 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:22:50,202.202 INFO    ] Checking for system updates...
[2026-06-22 12:22:50,238.238 INFO    ] 200
[2026-06-22 12:22:50,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:22:50,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:22:50,303.303 INFO    ] No update needed
[2026-06-22 12:22:50,306.306 INFO    ] Checking for camera pi updates...
[2026-06-22 12:22:50,342.342 INFO    ] 200
[2026-06-22 12:22:50,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:22:50,390.390 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:22:50,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:22:50,478.478 INFO    ] No camera update needed
[2026-06-22 12:22:50,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:22:50,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:22:50,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:22:50,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:22:52,534.534 INFO    ] ================================================
[2026-06-22 12:22:52,550.550 INFO    ] Launching Daemon at Mon Jun 22 12:22:52 IST 2026
[2026-06-22 12:22:52,560.560 INFO    ] ================================================
[2026-06-22 12:22:53,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:22:53
[2026-06-22 12:22:53,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:22:53,901.901 INFO    ] Initializing speech engine...
[2026-06-22 12:22:53,917.917 INFO    ] 2026-06-22 12:22:53
[2026-06-22 12:22:54,189.189 INFO    ] 2026-06-22 12:22:54
[2026-06-22 12:22:54,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:22:54,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:22:54,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:22:54,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:22:54,797.797 INFO    ] time= 22/06/2026 12:22:54
[2026-06-22 12:22:54,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:22:54,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:22:54,996.996 INFO    ] No existing commands found in stream
[2026-06-22 12:23:00,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:23:00,013.013 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-22 12:23:01,607.607 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:23:01,611.611 INFO    ] Checking for system updates...
[2026-06-22 12:23:01,673.673 INFO    ] 200
[2026-06-22 12:23:01,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:23:01,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:23:01,758.758 INFO    ] No update needed
[2026-06-22 12:23:01,761.761 INFO    ] Checking for camera pi updates...
[2026-06-22 12:23:01,803.803 INFO    ] 200
[2026-06-22 12:23:01,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:23:01,851.851 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:23:01,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:23:01,957.957 INFO    ] No camera update needed
[2026-06-22 12:23:01,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:23:01,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:23:01,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:23:01,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:23:04,021.021 INFO    ] ================================================
[2026-06-22 12:23:04,037.037 INFO    ] Launching Daemon at Mon Jun 22 12:23:04 IST 2026
[2026-06-22 12:23:04,048.048 INFO    ] ================================================
[2026-06-22 12:23:04,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:23:04
[2026-06-22 12:23:05,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:23:05,450.450 INFO    ] Initializing speech engine...
[2026-06-22 12:23:05,457.457 INFO    ] 2026-06-22 12:23:05
[2026-06-22 12:23:05,750.750 INFO    ] 2026-06-22 12:23:05
[2026-06-22 12:23:05,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:23:05,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:23:05,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:23:06,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:23:06,209.209 INFO    ] time= 22/06/2026 12:23:06
[2026-06-22 12:23:06,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:23:06,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:23:06,368.368 INFO    ] No existing commands found in stream
[2026-06-22 12:23:11,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:23:11,396.396 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-22 12:23:15,249.249 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:23:15,252.252 INFO    ] Checking for system updates...
[2026-06-22 12:23:15,290.290 INFO    ] 200
[2026-06-22 12:23:15,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:23:15,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:23:15,349.349 INFO    ] No update needed
[2026-06-22 12:23:15,352.352 INFO    ] Checking for camera pi updates...
[2026-06-22 12:23:15,387.387 INFO    ] 200
[2026-06-22 12:23:15,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:23:15,433.433 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:23:15,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:23:15,525.525 INFO    ] No camera update needed
[2026-06-22 12:23:15,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:23:15,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:23:15,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:23:15,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:23:17,583.583 INFO    ] ================================================
[2026-06-22 12:23:17,599.599 INFO    ] Launching Daemon at Mon Jun 22 12:23:17 IST 2026
[2026-06-22 12:23:17,610.610 INFO    ] ================================================
[2026-06-22 12:23:18,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:23:18
[2026-06-22 12:23:18,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:23:19,027.027 INFO    ] Initializing speech engine...
[2026-06-22 12:23:19,036.036 INFO    ] 2026-06-22 12:23:19
[2026-06-22 12:23:19,322.322 INFO    ] 2026-06-22 12:23:19
[2026-06-22 12:23:19,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:23:19,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:23:19,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:23:19,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:23:19,726.726 INFO    ] time= 22/06/2026 12:23:19
[2026-06-22 12:23:19,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:23:19,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:23:19,907.907 INFO    ] No existing commands found in stream
[2026-06-22 12:23:24,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:23:24,936.936 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-22 12:23:26,731.731 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:23:26,733.733 INFO    ] Checking for system updates...
[2026-06-22 12:23:26,773.773 INFO    ] 200
[2026-06-22 12:23:26,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:23:26,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:23:26,837.837 INFO    ] No update needed
[2026-06-22 12:23:26,840.840 INFO    ] Checking for camera pi updates...
[2026-06-22 12:23:26,877.877 INFO    ] 200
[2026-06-22 12:23:26,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:23:26,927.927 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:23:27,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:23:27,022.022 INFO    ] No camera update needed
[2026-06-22 12:23:27,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:23:27,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:23:27,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:23:27,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:23:29,081.081 INFO    ] ================================================
[2026-06-22 12:23:29,097.097 INFO    ] Launching Daemon at Mon Jun 22 12:23:29 IST 2026
[2026-06-22 12:23:29,108.108 INFO    ] ================================================
[2026-06-22 12:23:29,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:23:29
[2026-06-22 12:23:30,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:23:30,651.651 INFO    ] Initializing speech engine...
[2026-06-22 12:23:30,658.658 INFO    ] 2026-06-22 12:23:30
[2026-06-22 12:23:30,920.920 INFO    ] 2026-06-22 12:23:30
[2026-06-22 12:23:30,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:23:31,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:23:31,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:23:31,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:23:31,597.597 INFO    ] time= 22/06/2026 12:23:31
[2026-06-22 12:23:31,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:23:31,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:23:31,878.878 INFO    ] No existing commands found in stream
[2026-06-22 12:23:36,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:23:36,911.911 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-22 12:23:38,654.654 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:23:38,655.655 INFO    ] Checking for system updates...
[2026-06-22 12:23:38,676.676 INFO    ] 200
[2026-06-22 12:23:38,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:23:38,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:23:38,709.709 INFO    ] No update needed
[2026-06-22 12:23:38,710.710 INFO    ] Checking for camera pi updates...
[2026-06-22 12:23:38,729.729 INFO    ] 200
[2026-06-22 12:23:38,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:23:38,759.759 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:23:38,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:23:38,865.865 INFO    ] No camera update needed
[2026-06-22 12:23:38,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:23:38,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:23:38,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:23:38,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:23:40,921.921 INFO    ] ================================================
[2026-06-22 12:23:40,937.937 INFO    ] Launching Daemon at Mon Jun 22 12:23:40 IST 2026
[2026-06-22 12:23:40,948.948 INFO    ] ================================================
[2026-06-22 12:23:41,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:23:41
[2026-06-22 12:23:42,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:23:42,287.287 INFO    ] Initializing speech engine...
[2026-06-22 12:23:42,294.294 INFO    ] 2026-06-22 12:23:42
[2026-06-22 12:23:42,553.553 INFO    ] 2026-06-22 12:23:42
[2026-06-22 12:23:42,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:23:42,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:23:42,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:23:42,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:23:43,015.015 INFO    ] time= 22/06/2026 12:23:42
[2026-06-22 12:23:43,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:23:43,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:23:43,254.254 INFO    ] No existing commands found in stream
[2026-06-22 12:23:48,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:23:48,270.270 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-22 12:23:52,616.616 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:23:52,619.619 INFO    ] Checking for system updates...
[2026-06-22 12:23:52,655.655 INFO    ] 200
[2026-06-22 12:23:52,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:23:52,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:23:52,713.713 INFO    ] No update needed
[2026-06-22 12:23:52,715.715 INFO    ] Checking for camera pi updates...
[2026-06-22 12:23:52,749.749 INFO    ] 200
[2026-06-22 12:23:52,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:23:52,793.793 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:23:52,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:23:52,974.974 INFO    ] No camera update needed
[2026-06-22 12:23:52,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:23:52,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:23:52,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:23:52,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:23:55,030.030 INFO    ] ================================================
[2026-06-22 12:23:55,046.046 INFO    ] Launching Daemon at Mon Jun 22 12:23:55 IST 2026
[2026-06-22 12:23:55,057.057 INFO    ] ================================================
[2026-06-22 12:23:55,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:23:55
[2026-06-22 12:23:56,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:23:56,426.426 INFO    ] Initializing speech engine...
[2026-06-22 12:23:56,433.433 INFO    ] 2026-06-22 12:23:56
[2026-06-22 12:23:56,692.692 INFO    ] 2026-06-22 12:23:56
[2026-06-22 12:23:56,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:23:56,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:23:56,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:23:57,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:23:57,184.184 INFO    ] time= 22/06/2026 12:23:57
[2026-06-22 12:23:57,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:23:57,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:23:57,384.384 INFO    ] No existing commands found in stream
[2026-06-22 12:24:02,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:24:02,403.403 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-22 12:24:06,737.737 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:24:06,740.740 INFO    ] Checking for system updates...
[2026-06-22 12:24:06,783.783 INFO    ] 200
[2026-06-22 12:24:06,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:24:06,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:24:06,860.860 INFO    ] No update needed
[2026-06-22 12:24:06,863.863 INFO    ] Checking for camera pi updates...
[2026-06-22 12:24:06,904.904 INFO    ] 200
[2026-06-22 12:24:06,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:24:06,956.956 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:24:07,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:24:07,047.047 INFO    ] No camera update needed
[2026-06-22 12:24:07,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:24:07,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:24:07,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:24:07,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:24:09,105.105 INFO    ] ================================================
[2026-06-22 12:24:09,120.120 INFO    ] Launching Daemon at Mon Jun 22 12:24:09 IST 2026
[2026-06-22 12:24:09,132.132 INFO    ] ================================================
[2026-06-22 12:24:09,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:24:09
[2026-06-22 12:24:10,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:24:10,542.542 INFO    ] Initializing speech engine...
[2026-06-22 12:24:10,556.556 INFO    ] 2026-06-22 12:24:10
[2026-06-22 12:24:10,837.837 INFO    ] 2026-06-22 12:24:10
[2026-06-22 12:24:10,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:24:11,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:24:11,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:24:11,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:24:11,262.262 INFO    ] time= 22/06/2026 12:24:11
[2026-06-22 12:24:11,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:24:11,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:24:11,471.471 INFO    ] No existing commands found in stream
[2026-06-22 12:24:16,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:24:16,494.494 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-22 12:24:20,256.256 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:24:20,258.258 INFO    ] Checking for system updates...
[2026-06-22 12:24:20,294.294 INFO    ] 200
[2026-06-22 12:24:20,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:24:20,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:24:20,352.352 INFO    ] No update needed
[2026-06-22 12:24:20,355.355 INFO    ] Checking for camera pi updates...
[2026-06-22 12:24:20,388.388 INFO    ] 200
[2026-06-22 12:24:20,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:24:20,432.432 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:24:20,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:24:20,494.494 INFO    ] No camera update needed
[2026-06-22 12:24:20,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:24:20,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:24:20,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:24:20,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:24:22,550.550 INFO    ] ================================================
[2026-06-22 12:24:22,565.565 INFO    ] Launching Daemon at Mon Jun 22 12:24:22 IST 2026
[2026-06-22 12:24:22,576.576 INFO    ] ================================================
[2026-06-22 12:24:23,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:24:23
[2026-06-22 12:24:23,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:24:24,066.066 INFO    ] Initializing speech engine...
[2026-06-22 12:24:24,076.076 INFO    ] 2026-06-22 12:24:24
[2026-06-22 12:24:24,347.347 INFO    ] 2026-06-22 12:24:24
[2026-06-22 12:24:24,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:24:24,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:24:24,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:24:24,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:24:24,852.852 INFO    ] time= 22/06/2026 12:24:24
[2026-06-22 12:24:24,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:24:24,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:24:25,073.073 INFO    ] No existing commands found in stream
[2026-06-22 12:24:30,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:24:30,092.092 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-22 12:24:30,950.950 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:24:30,951.951 INFO    ] Checking for system updates...
[2026-06-22 12:24:30,973.973 INFO    ] 200
[2026-06-22 12:24:30,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:24:31,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:24:31,006.006 INFO    ] No update needed
[2026-06-22 12:24:31,009.009 INFO    ] Checking for camera pi updates...
[2026-06-22 12:24:31,042.042 INFO    ] 200
[2026-06-22 12:24:31,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:24:31,086.086 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:24:31,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:24:31,174.174 INFO    ] No camera update needed
[2026-06-22 12:24:31,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:24:31,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:24:31,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:24:31,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:24:33,230.230 INFO    ] ================================================
[2026-06-22 12:24:33,246.246 INFO    ] Launching Daemon at Mon Jun 22 12:24:33 IST 2026
[2026-06-22 12:24:33,258.258 INFO    ] ================================================
[2026-06-22 12:24:33,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:24:33
[2026-06-22 12:24:34,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:24:34,652.652 INFO    ] Initializing speech engine...
[2026-06-22 12:24:34,657.657 INFO    ] 2026-06-22 12:24:34
[2026-06-22 12:24:34,933.933 INFO    ] 2026-06-22 12:24:34
[2026-06-22 12:24:34,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:24:35,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:24:35,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:24:35,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:24:35,424.424 INFO    ] time= 22/06/2026 12:24:35
[2026-06-22 12:24:35,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:24:35,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:24:35,558.558 INFO    ] No existing commands found in stream
[2026-06-22 12:24:40,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:24:40,573.573 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-22 12:24:43,401.401 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:24:43,404.404 INFO    ] Checking for system updates...
[2026-06-22 12:24:43,441.441 INFO    ] 200
[2026-06-22 12:24:43,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:24:43,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:24:43,506.506 INFO    ] No update needed
[2026-06-22 12:24:43,508.508 INFO    ] Checking for camera pi updates...
[2026-06-22 12:24:43,545.545 INFO    ] 200
[2026-06-22 12:24:43,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:24:43,591.591 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:24:43,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:24:43,700.700 INFO    ] No camera update needed
[2026-06-22 12:24:43,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:24:43,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:24:43,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:24:43,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:24:45,757.757 INFO    ] ================================================
[2026-06-22 12:24:45,773.773 INFO    ] Launching Daemon at Mon Jun 22 12:24:45 IST 2026
[2026-06-22 12:24:45,784.784 INFO    ] ================================================
[2026-06-22 12:24:46,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:24:46
[2026-06-22 12:24:46,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:24:47,246.246 INFO    ] Initializing speech engine...
[2026-06-22 12:24:47,251.251 INFO    ] 2026-06-22 12:24:47
[2026-06-22 12:24:47,522.522 INFO    ] 2026-06-22 12:24:47
[2026-06-22 12:24:47,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:24:47,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:24:47,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:24:48,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:24:48,114.114 INFO    ] time= 22/06/2026 12:24:48
[2026-06-22 12:24:48,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:24:48,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:24:48,322.322 INFO    ] No existing commands found in stream
[2026-06-22 12:24:53,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:24:53,356.356 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-22 12:24:58,750.750 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:24:58,752.752 INFO    ] Checking for system updates...
[2026-06-22 12:24:58,790.790 INFO    ] 200
[2026-06-22 12:24:58,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:24:58,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:24:58,849.849 INFO    ] No update needed
[2026-06-22 12:24:58,851.851 INFO    ] Checking for camera pi updates...
[2026-06-22 12:24:58,887.887 INFO    ] 200
[2026-06-22 12:24:58,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:24:58,930.930 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:24:59,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:24:59,030.030 INFO    ] No camera update needed
[2026-06-22 12:24:59,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:24:59,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:24:59,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:24:59,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:25:01,103.103 INFO    ] ================================================
[2026-06-22 12:25:01,139.139 INFO    ] Launching Daemon at Mon Jun 22 12:25:01 IST 2026
[2026-06-22 12:25:01,177.177 INFO    ] ================================================
[2026-06-22 12:25:02,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:25:02
[2026-06-22 12:25:02,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:25:03,026.026 INFO    ] Initializing speech engine...
[2026-06-22 12:25:03,041.041 INFO    ] 2026-06-22 12:25:03
[2026-06-22 12:25:03,325.325 INFO    ] 2026-06-22 12:25:03
[2026-06-22 12:25:03,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:25:03,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:25:03,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:25:03,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:25:03,891.891 INFO    ] time= 22/06/2026 12:25:03
[2026-06-22 12:25:03,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:25:03,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:25:04,047.047 INFO    ] No existing commands found in stream
[2026-06-22 12:25:09,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:25:09,072.072 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-22 12:25:09,937.937 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:25:09,939.939 INFO    ] Checking for system updates...
[2026-06-22 12:25:09,976.976 INFO    ] 200
[2026-06-22 12:25:09,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:25:10,030.030 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:25:10,032.032 INFO    ] No update needed
[2026-06-22 12:25:10,035.035 INFO    ] Checking for camera pi updates...
[2026-06-22 12:25:10,073.073 INFO    ] 200
[2026-06-22 12:25:10,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:25:10,121.121 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:25:10,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:25:10,202.202 INFO    ] No camera update needed
[2026-06-22 12:25:10,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:25:10,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:25:10,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:25:10,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:25:12,257.257 INFO    ] ================================================
[2026-06-22 12:25:12,274.274 INFO    ] Launching Daemon at Mon Jun 22 12:25:12 IST 2026
[2026-06-22 12:25:12,284.284 INFO    ] ================================================
[2026-06-22 12:25:12,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:25:12
[2026-06-22 12:25:13,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:25:13,612.612 INFO    ] Initializing speech engine...
[2026-06-22 12:25:13,632.632 INFO    ] 2026-06-22 12:25:13
[2026-06-22 12:25:13,883.883 INFO    ] 2026-06-22 12:25:13
[2026-06-22 12:25:13,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:25:14,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:25:14,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:25:14,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:25:14,398.398 INFO    ] time= 22/06/2026 12:25:14
[2026-06-22 12:25:14,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:25:14,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:25:14,585.585 INFO    ] No existing commands found in stream
[2026-06-22 12:25:19,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:25:19,613.613 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-22 12:25:20,899.899 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:25:20,901.901 INFO    ] Checking for system updates...
[2026-06-22 12:25:20,942.942 INFO    ] 200
[2026-06-22 12:25:20,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:25:21,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:25:21,006.006 INFO    ] No update needed
[2026-06-22 12:25:21,009.009 INFO    ] Checking for camera pi updates...
[2026-06-22 12:25:21,043.043 INFO    ] 200
[2026-06-22 12:25:21,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:25:21,096.096 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:25:21,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:25:21,205.205 INFO    ] No camera update needed
[2026-06-22 12:25:21,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:25:21,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:25:21,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:25:21,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:25:23,263.263 INFO    ] ================================================
[2026-06-22 12:25:23,278.278 INFO    ] Launching Daemon at Mon Jun 22 12:25:23 IST 2026
[2026-06-22 12:25:23,289.289 INFO    ] ================================================
[2026-06-22 12:25:23,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:25:23
[2026-06-22 12:25:24,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:25:24,825.825 INFO    ] Initializing speech engine...
[2026-06-22 12:25:24,834.834 INFO    ] 2026-06-22 12:25:24
[2026-06-22 12:25:25,152.152 INFO    ] 2026-06-22 12:25:25
[2026-06-22 12:25:25,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:25:25,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:25:25,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:25:25,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:25:25,662.662 INFO    ] time= 22/06/2026 12:25:25
[2026-06-22 12:25:25,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:25:25,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:25:25,834.834 INFO    ] No existing commands found in stream
[2026-06-22 12:25:30,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:25:30,870.870 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-22 12:25:34,065.065 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:25:34,068.068 INFO    ] Checking for system updates...
[2026-06-22 12:25:34,106.106 INFO    ] 200
[2026-06-22 12:25:34,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:25:34,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:25:34,165.165 INFO    ] No update needed
[2026-06-22 12:25:34,168.168 INFO    ] Checking for camera pi updates...
[2026-06-22 12:25:34,201.201 INFO    ] 200
[2026-06-22 12:25:34,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:25:34,246.246 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:25:34,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:25:34,329.329 INFO    ] No camera update needed
[2026-06-22 12:25:34,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:25:34,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:25:34,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:25:34,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:25:36,386.386 INFO    ] ================================================
[2026-06-22 12:25:36,401.401 INFO    ] Launching Daemon at Mon Jun 22 12:25:36 IST 2026
[2026-06-22 12:25:36,412.412 INFO    ] ================================================
[2026-06-22 12:25:36,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:25:36
[2026-06-22 12:25:37,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:25:37,729.729 INFO    ] Initializing speech engine...
[2026-06-22 12:25:37,742.742 INFO    ] 2026-06-22 12:25:37
[2026-06-22 12:25:38,008.008 INFO    ] 2026-06-22 12:25:37
[2026-06-22 12:25:38,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:25:38,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:25:38,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:25:38,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:25:38,578.578 INFO    ] time= 22/06/2026 12:25:38
[2026-06-22 12:25:38,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:25:38,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:25:38,735.735 INFO    ] No existing commands found in stream
[2026-06-22 12:25:43,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:25:43,754.754 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-22 12:25:46,905.905 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:25:46,907.907 INFO    ] Checking for system updates...
[2026-06-22 12:25:46,948.948 INFO    ] 200
[2026-06-22 12:25:46,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:25:47,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:25:47,007.007 INFO    ] No update needed
[2026-06-22 12:25:47,009.009 INFO    ] Checking for camera pi updates...
[2026-06-22 12:25:47,042.042 INFO    ] 200
[2026-06-22 12:25:47,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:25:47,091.091 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:25:47,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:25:47,183.183 INFO    ] No camera update needed
[2026-06-22 12:25:47,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:25:47,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:25:47,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:25:47,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:25:49,237.237 INFO    ] ================================================
[2026-06-22 12:25:49,253.253 INFO    ] Launching Daemon at Mon Jun 22 12:25:49 IST 2026
[2026-06-22 12:25:49,263.263 INFO    ] ================================================
[2026-06-22 12:25:49,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:25:49
[2026-06-22 12:25:50,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:25:50,644.644 INFO    ] Initializing speech engine...
[2026-06-22 12:25:50,662.662 INFO    ] 2026-06-22 12:25:50
[2026-06-22 12:25:50,938.938 INFO    ] 2026-06-22 12:25:50
[2026-06-22 12:25:50,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:25:51,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:25:51,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:25:51,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:25:51,330.330 INFO    ] time= 22/06/2026 12:25:51
[2026-06-22 12:25:51,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:25:51,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:25:51,523.523 INFO    ] No existing commands found in stream
[2026-06-22 12:25:56,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:25:56,542.542 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-22 12:25:58,346.346 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:25:58,349.349 INFO    ] Checking for system updates...
[2026-06-22 12:25:58,390.390 INFO    ] 200
[2026-06-22 12:25:58,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:25:58,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:25:58,455.455 INFO    ] No update needed
[2026-06-22 12:25:58,458.458 INFO    ] Checking for camera pi updates...
[2026-06-22 12:25:58,496.496 INFO    ] 200
[2026-06-22 12:25:58,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:25:58,544.544 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:25:58,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:25:58,727.727 INFO    ] No camera update needed
[2026-06-22 12:25:58,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:25:58,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:25:58,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:25:58,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:26:00,783.783 INFO    ] ================================================
[2026-06-22 12:26:00,799.799 INFO    ] Launching Daemon at Mon Jun 22 12:26:00 IST 2026
[2026-06-22 12:26:00,810.810 INFO    ] ================================================
[2026-06-22 12:26:01,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:26:01
[2026-06-22 12:26:01,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:26:02,389.389 INFO    ] Initializing speech engine...
[2026-06-22 12:26:02,407.407 INFO    ] 2026-06-22 12:26:02
[2026-06-22 12:26:02,798.798 INFO    ] 2026-06-22 12:26:02
[2026-06-22 12:26:02,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:26:03,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:26:03,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:26:03,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:26:03,310.310 INFO    ] time= 22/06/2026 12:26:03
[2026-06-22 12:26:03,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:26:03,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:26:03,495.495 INFO    ] No existing commands found in stream
[2026-06-22 12:26:08,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:26:08,524.524 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-22 12:26:11,561.561 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:26:11,563.563 INFO    ] Checking for system updates...
[2026-06-22 12:26:11,584.584 INFO    ] 200
[2026-06-22 12:26:11,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:26:11,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:26:11,630.630 INFO    ] No update needed
[2026-06-22 12:26:11,632.632 INFO    ] Checking for camera pi updates...
[2026-06-22 12:26:11,666.666 INFO    ] 200
[2026-06-22 12:26:11,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:26:11,709.709 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:26:11,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:26:11,802.802 INFO    ] No camera update needed
[2026-06-22 12:26:11,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:26:11,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:26:11,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:26:11,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:26:13,857.857 INFO    ] ================================================
[2026-06-22 12:26:13,873.873 INFO    ] Launching Daemon at Mon Jun 22 12:26:13 IST 2026
[2026-06-22 12:26:13,883.883 INFO    ] ================================================
[2026-06-22 12:26:14,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:26:14
[2026-06-22 12:26:14,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:26:15,206.206 INFO    ] Initializing speech engine...
[2026-06-22 12:26:15,218.218 INFO    ] 2026-06-22 12:26:15
[2026-06-22 12:26:15,480.480 INFO    ] 2026-06-22 12:26:15
[2026-06-22 12:26:15,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:26:15,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:26:15,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:26:15,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:26:16,032.032 INFO    ] time= 22/06/2026 12:26:15
[2026-06-22 12:26:16,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:26:16,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:26:16,187.187 INFO    ] No existing commands found in stream
[2026-06-22 12:26:21,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:26:21,204.204 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-22 12:26:21,662.662 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:26:21,665.665 INFO    ] Checking for system updates...
[2026-06-22 12:26:21,701.701 INFO    ] 200
[2026-06-22 12:26:21,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:26:21,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:26:21,758.758 INFO    ] No update needed
[2026-06-22 12:26:21,760.760 INFO    ] Checking for camera pi updates...
[2026-06-22 12:26:21,797.797 INFO    ] 200
[2026-06-22 12:26:21,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:26:21,843.843 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:26:21,923.923 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:26:21,926.926 INFO    ] No camera update needed
[2026-06-22 12:26:21,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:26:21,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:26:21,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:26:21,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:26:23,983.983 INFO    ] ================================================
[2026-06-22 12:26:24,003.003 INFO    ] Launching Daemon at Mon Jun 22 12:26:23 IST 2026
[2026-06-22 12:26:24,014.014 INFO    ] ================================================
[2026-06-22 12:26:24,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:26:24
[2026-06-22 12:26:25,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:26:25,363.363 INFO    ] Initializing speech engine...
[2026-06-22 12:26:25,372.372 INFO    ] 2026-06-22 12:26:25
[2026-06-22 12:26:25,618.618 INFO    ] 2026-06-22 12:26:25
[2026-06-22 12:26:25,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:26:25,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:26:25,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:26:26,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:26:26,117.117 INFO    ] time= 22/06/2026 12:26:26
[2026-06-22 12:26:26,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:26:26,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:26:26,323.323 INFO    ] No existing commands found in stream
[2026-06-22 12:26:31,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:26:31,340.340 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-22 12:26:34,072.072 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:26:34,075.075 INFO    ] Checking for system updates...
[2026-06-22 12:26:34,113.113 INFO    ] 200
[2026-06-22 12:26:34,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:26:34,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:26:34,176.176 INFO    ] No update needed
[2026-06-22 12:26:34,178.178 INFO    ] Checking for camera pi updates...
[2026-06-22 12:26:34,215.215 INFO    ] 200
[2026-06-22 12:26:34,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:26:34,261.261 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:26:34,343.343 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:26:34,346.346 INFO    ] No camera update needed
[2026-06-22 12:26:34,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:26:34,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:26:34,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:26:34,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:26:36,401.401 INFO    ] ================================================
[2026-06-22 12:26:36,416.416 INFO    ] Launching Daemon at Mon Jun 22 12:26:36 IST 2026
[2026-06-22 12:26:36,427.427 INFO    ] ================================================
[2026-06-22 12:26:36,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:26:36
[2026-06-22 12:26:37,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:26:37,807.807 INFO    ] Initializing speech engine...
[2026-06-22 12:26:37,817.817 INFO    ] 2026-06-22 12:26:37
[2026-06-22 12:26:38,085.085 INFO    ] 2026-06-22 12:26:38
[2026-06-22 12:26:38,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:26:38,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:26:38,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:26:38,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:26:38,579.579 INFO    ] time= 22/06/2026 12:26:38
[2026-06-22 12:26:38,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:26:38,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:26:38,790.790 INFO    ] No existing commands found in stream
[2026-06-22 12:26:43,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:26:43,812.812 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-22 12:26:44,780.780 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:26:44,782.782 INFO    ] Checking for system updates...
[2026-06-22 12:26:44,807.807 INFO    ] 200
[2026-06-22 12:26:44,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:26:44,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:26:44,867.867 INFO    ] No update needed
[2026-06-22 12:26:44,870.870 INFO    ] Checking for camera pi updates...
[2026-06-22 12:26:44,908.908 INFO    ] 200
[2026-06-22 12:26:44,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:26:44,954.954 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:26:45,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:26:45,061.061 INFO    ] No camera update needed
[2026-06-22 12:26:45,064.064 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:26:45,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:26:45,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:26:45,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:26:47,118.118 INFO    ] ================================================
[2026-06-22 12:26:47,134.134 INFO    ] Launching Daemon at Mon Jun 22 12:26:47 IST 2026
[2026-06-22 12:26:47,144.144 INFO    ] ================================================
[2026-06-22 12:26:47,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:26:47
[2026-06-22 12:26:48,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:26:48,628.628 INFO    ] Initializing speech engine...
[2026-06-22 12:26:48,635.635 INFO    ] 2026-06-22 12:26:48
[2026-06-22 12:26:48,916.916 INFO    ] 2026-06-22 12:26:48
[2026-06-22 12:26:48,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:26:49,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:26:49,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:26:49,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:26:49,392.392 INFO    ] time= 22/06/2026 12:26:49
[2026-06-22 12:26:49,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:26:49,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:26:49,607.607 INFO    ] No existing commands found in stream
[2026-06-22 12:26:54,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:26:54,624.624 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-22 12:26:57,136.136 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:26:57,138.138 INFO    ] Checking for system updates...
[2026-06-22 12:26:57,159.159 INFO    ] 200
[2026-06-22 12:26:57,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:26:57,194.194 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:26:57,196.196 INFO    ] No update needed
[2026-06-22 12:26:57,197.197 INFO    ] Checking for camera pi updates...
[2026-06-22 12:26:57,221.221 INFO    ] 200
[2026-06-22 12:26:57,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:26:57,272.272 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:26:57,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:26:57,360.360 INFO    ] No camera update needed
[2026-06-22 12:26:57,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:26:57,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:26:57,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:26:57,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:26:59,418.418 INFO    ] ================================================
[2026-06-22 12:26:59,435.435 INFO    ] Launching Daemon at Mon Jun 22 12:26:59 IST 2026
[2026-06-22 12:26:59,447.447 INFO    ] ================================================
[2026-06-22 12:27:00,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:27:00
[2026-06-22 12:27:00,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:27:00,933.933 INFO    ] Initializing speech engine...
[2026-06-22 12:27:00,949.949 INFO    ] 2026-06-22 12:27:00
[2026-06-22 12:27:01,220.220 INFO    ] 2026-06-22 12:27:01
[2026-06-22 12:27:01,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:27:01,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:27:01,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:27:01,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:27:01,666.666 INFO    ] time= 22/06/2026 12:27:01
[2026-06-22 12:27:01,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:27:01,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:27:01,783.783 INFO    ] No existing commands found in stream
[2026-06-22 12:27:06,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:27:06,796.796 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-22 12:27:07,386.386 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:27:07,388.388 INFO    ] Checking for system updates...
[2026-06-22 12:27:07,415.415 INFO    ] 200
[2026-06-22 12:27:07,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:27:07,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:27:07,493.493 INFO    ] No update needed
[2026-06-22 12:27:07,495.495 INFO    ] Checking for camera pi updates...
[2026-06-22 12:27:07,529.529 INFO    ] 200
[2026-06-22 12:27:07,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:27:07,573.573 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:27:07,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:27:07,661.661 INFO    ] No camera update needed
[2026-06-22 12:27:07,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:27:07,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:27:07,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:27:07,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:27:09,717.717 INFO    ] ================================================
[2026-06-22 12:27:09,732.732 INFO    ] Launching Daemon at Mon Jun 22 12:27:09 IST 2026
[2026-06-22 12:27:09,743.743 INFO    ] ================================================
[2026-06-22 12:27:10,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:27:10
[2026-06-22 12:27:10,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:27:11,078.078 INFO    ] Initializing speech engine...
[2026-06-22 12:27:11,086.086 INFO    ] 2026-06-22 12:27:11
[2026-06-22 12:27:11,332.332 INFO    ] 2026-06-22 12:27:11
[2026-06-22 12:27:11,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:27:11,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:27:11,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:27:11,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:27:11,830.830 INFO    ] time= 22/06/2026 12:27:11
[2026-06-22 12:27:11,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:27:11,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:27:12,044.044 INFO    ] No existing commands found in stream
[2026-06-22 12:27:17,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:27:17,062.062 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-22 12:27:18,296.296 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:27:18,298.298 INFO    ] Checking for system updates...
[2026-06-22 12:27:18,337.337 INFO    ] 200
[2026-06-22 12:27:18,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:27:18,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:27:18,402.402 INFO    ] No update needed
[2026-06-22 12:27:18,404.404 INFO    ] Checking for camera pi updates...
[2026-06-22 12:27:18,438.438 INFO    ] 200
[2026-06-22 12:27:18,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:27:18,485.485 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:27:18,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:27:18,607.607 INFO    ] No camera update needed
[2026-06-22 12:27:18,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:27:18,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:27:18,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:27:18,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:27:20,663.663 INFO    ] ================================================
[2026-06-22 12:27:20,677.677 INFO    ] Launching Daemon at Mon Jun 22 12:27:20 IST 2026
[2026-06-22 12:27:20,688.688 INFO    ] ================================================
[2026-06-22 12:27:21,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:27:21
[2026-06-22 12:27:21,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:27:22,024.024 INFO    ] Initializing speech engine...
[2026-06-22 12:27:22,031.031 INFO    ] 2026-06-22 12:27:22
[2026-06-22 12:27:22,278.278 INFO    ] 2026-06-22 12:27:22
[2026-06-22 12:27:22,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:27:22,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:27:22,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:27:22,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:27:22,650.650 INFO    ] time= 22/06/2026 12:27:22
[2026-06-22 12:27:22,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:27:22,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:27:22,843.843 INFO    ] No existing commands found in stream
[2026-06-22 12:27:27,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:27:27,857.857 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-22 12:27:31,437.437 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:27:31,440.440 INFO    ] Checking for system updates...
[2026-06-22 12:27:31,477.477 INFO    ] 200
[2026-06-22 12:27:31,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:27:31,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:27:31,541.541 INFO    ] No update needed
[2026-06-22 12:27:31,543.543 INFO    ] Checking for camera pi updates...
[2026-06-22 12:27:31,580.580 INFO    ] 200
[2026-06-22 12:27:31,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:27:31,624.624 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:27:31,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:27:31,693.693 INFO    ] No camera update needed
[2026-06-22 12:27:31,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:27:31,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:27:31,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:27:31,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:27:33,762.762 INFO    ] ================================================
[2026-06-22 12:27:33,778.778 INFO    ] Launching Daemon at Mon Jun 22 12:27:33 IST 2026
[2026-06-22 12:27:33,789.789 INFO    ] ================================================
[2026-06-22 12:27:34,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:27:34
[2026-06-22 12:27:34,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:27:35,188.188 INFO    ] Initializing speech engine...
[2026-06-22 12:27:35,200.200 INFO    ] 2026-06-22 12:27:35
[2026-06-22 12:27:35,464.464 INFO    ] 2026-06-22 12:27:35
[2026-06-22 12:27:35,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:27:35,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:27:35,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:27:35,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:27:35,928.928 INFO    ] time= 22/06/2026 12:27:35
[2026-06-22 12:27:35,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:27:35,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:27:36,082.082 INFO    ] No existing commands found in stream
[2026-06-22 12:27:41,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:27:41,108.108 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-22 12:27:43,114.114 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:27:43,116.116 INFO    ] Checking for system updates...
[2026-06-22 12:27:43,137.137 INFO    ] 200
[2026-06-22 12:27:43,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:27:43,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:27:43,170.170 INFO    ] No update needed
[2026-06-22 12:27:43,171.171 INFO    ] Checking for camera pi updates...
[2026-06-22 12:27:43,191.191 INFO    ] 200
[2026-06-22 12:27:43,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:27:43,215.215 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:27:43,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:27:43,299.299 INFO    ] No camera update needed
[2026-06-22 12:27:43,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:27:43,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:27:43,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:27:43,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:27:45,357.357 INFO    ] ================================================
[2026-06-22 12:27:45,373.373 INFO    ] Launching Daemon at Mon Jun 22 12:27:45 IST 2026
[2026-06-22 12:27:45,390.390 INFO    ] ================================================
[2026-06-22 12:27:45,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:27:45
[2026-06-22 12:27:46,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:27:46,796.796 INFO    ] Initializing speech engine...
[2026-06-22 12:27:46,811.811 INFO    ] 2026-06-22 12:27:46
[2026-06-22 12:27:47,090.090 INFO    ] 2026-06-22 12:27:47
[2026-06-22 12:27:47,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:27:47,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:27:47,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:27:47,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:27:47,497.497 INFO    ] time= 22/06/2026 12:27:47
[2026-06-22 12:27:47,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:27:47,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:27:47,666.666 INFO    ] No existing commands found in stream
[2026-06-22 12:27:52,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:27:52,699.699 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-22 12:27:56,154.154 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:27:56,157.157 INFO    ] Checking for system updates...
[2026-06-22 12:27:56,192.192 INFO    ] 200
[2026-06-22 12:27:56,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:27:56,254.254 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:27:56,256.256 INFO    ] No update needed
[2026-06-22 12:27:56,259.259 INFO    ] Checking for camera pi updates...
[2026-06-22 12:27:56,292.292 INFO    ] 200
[2026-06-22 12:27:56,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:27:56,335.335 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:27:56,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:27:56,423.423 INFO    ] No camera update needed
[2026-06-22 12:27:56,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:27:56,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:27:56,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:27:56,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:27:58,479.479 INFO    ] ================================================
[2026-06-22 12:27:58,494.494 INFO    ] Launching Daemon at Mon Jun 22 12:27:58 IST 2026
[2026-06-22 12:27:58,505.505 INFO    ] ================================================
[2026-06-22 12:27:59,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:27:59
[2026-06-22 12:27:59,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:27:59,833.833 INFO    ] Initializing speech engine...
[2026-06-22 12:27:59,846.846 INFO    ] 2026-06-22 12:27:59
[2026-06-22 12:28:00,125.125 INFO    ] 2026-06-22 12:28:00
[2026-06-22 12:28:00,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:28:00,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:28:00,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:28:00,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:28:00,537.537 INFO    ] time= 22/06/2026 12:28:00
[2026-06-22 12:28:00,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:28:00,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:28:00,724.724 INFO    ] No existing commands found in stream
[2026-06-22 12:28:05,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:28:05,757.757 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-22 12:28:08,870.870 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:28:08,873.873 INFO    ] Checking for system updates...
[2026-06-22 12:28:08,909.909 INFO    ] 200
[2026-06-22 12:28:08,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:28:08,967.967 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:28:08,970.970 INFO    ] No update needed
[2026-06-22 12:28:08,972.972 INFO    ] Checking for camera pi updates...
[2026-06-22 12:28:09,006.006 INFO    ] 200
[2026-06-22 12:28:09,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:28:09,052.052 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:28:09,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:28:09,134.134 INFO    ] No camera update needed
[2026-06-22 12:28:09,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:28:09,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:28:09,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:28:09,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:28:11,190.190 INFO    ] ================================================
[2026-06-22 12:28:11,205.205 INFO    ] Launching Daemon at Mon Jun 22 12:28:11 IST 2026
[2026-06-22 12:28:11,217.217 INFO    ] ================================================
[2026-06-22 12:28:11,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:28:11
[2026-06-22 12:28:12,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:28:12,810.810 INFO    ] Initializing speech engine...
[2026-06-22 12:28:12,824.824 INFO    ] 2026-06-22 12:28:12
[2026-06-22 12:28:13,108.108 INFO    ] 2026-06-22 12:28:13
[2026-06-22 12:28:13,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:28:13,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:28:13,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:28:13,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:28:13,578.578 INFO    ] time= 22/06/2026 12:28:13
[2026-06-22 12:28:13,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:28:13,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:28:13,770.770 INFO    ] No existing commands found in stream
[2026-06-22 12:28:18,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:28:18,804.804 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-22 12:28:21,834.834 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:28:21,837.837 INFO    ] Checking for system updates...
[2026-06-22 12:28:21,875.875 INFO    ] 200
[2026-06-22 12:28:21,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:28:21,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:28:21,934.934 INFO    ] No update needed
[2026-06-22 12:28:21,937.937 INFO    ] Checking for camera pi updates...
[2026-06-22 12:28:21,971.971 INFO    ] 200
[2026-06-22 12:28:21,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:28:22,015.015 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:28:22,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:28:22,097.097 INFO    ] No camera update needed
[2026-06-22 12:28:22,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:28:22,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:28:22,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:28:22,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:28:24,156.156 INFO    ] ================================================
[2026-06-22 12:28:24,171.171 INFO    ] Launching Daemon at Mon Jun 22 12:28:24 IST 2026
[2026-06-22 12:28:24,182.182 INFO    ] ================================================
[2026-06-22 12:28:24,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:28:24
[2026-06-22 12:28:25,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:28:25,541.541 INFO    ] Initializing speech engine...
[2026-06-22 12:28:25,550.550 INFO    ] 2026-06-22 12:28:25
[2026-06-22 12:28:25,796.796 INFO    ] 2026-06-22 12:28:25
[2026-06-22 12:28:25,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:28:26,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:28:26,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:28:26,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:28:26,244.244 INFO    ] time= 22/06/2026 12:28:26
[2026-06-22 12:28:26,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:28:26,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:28:26,478.478 INFO    ] No existing commands found in stream
[2026-06-22 12:28:31,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:28:31,506.506 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-22 12:28:35,859.859 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:28:35,862.862 INFO    ] Checking for system updates...
[2026-06-22 12:28:35,902.902 INFO    ] 200
[2026-06-22 12:28:35,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:28:35,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:28:35,963.963 INFO    ] No update needed
[2026-06-22 12:28:35,966.966 INFO    ] Checking for camera pi updates...
[2026-06-22 12:28:36,000.000 INFO    ] 200
[2026-06-22 12:28:36,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:28:36,048.048 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:28:36,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:28:36,106.106 INFO    ] No camera update needed
[2026-06-22 12:28:36,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:28:36,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:28:36,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:28:36,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:28:38,161.161 INFO    ] ================================================
[2026-06-22 12:28:38,177.177 INFO    ] Launching Daemon at Mon Jun 22 12:28:38 IST 2026
[2026-06-22 12:28:38,187.187 INFO    ] ================================================
[2026-06-22 12:28:38,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:28:38
[2026-06-22 12:28:39,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:28:39,689.689 INFO    ] Initializing speech engine...
[2026-06-22 12:28:39,701.701 INFO    ] 2026-06-22 12:28:39
[2026-06-22 12:28:40,008.008 INFO    ] 2026-06-22 12:28:39
[2026-06-22 12:28:40,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:28:40,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:28:40,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:28:40,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:28:40,516.516 INFO    ] time= 22/06/2026 12:28:40
[2026-06-22 12:28:40,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:28:40,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:28:40,674.674 INFO    ] No existing commands found in stream
[2026-06-22 12:28:45,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:28:45,697.697 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-22 12:28:47,774.774 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:28:47,776.776 INFO    ] Checking for system updates...
[2026-06-22 12:28:47,805.805 INFO    ] 200
[2026-06-22 12:28:47,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:28:47,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:28:47,864.864 INFO    ] No update needed
[2026-06-22 12:28:47,867.867 INFO    ] Checking for camera pi updates...
[2026-06-22 12:28:47,902.902 INFO    ] 200
[2026-06-22 12:28:47,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:28:47,967.967 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:28:48,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:28:48,066.066 INFO    ] No camera update needed
[2026-06-22 12:28:48,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:28:48,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:28:48,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:28:48,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:28:50,125.125 INFO    ] ================================================
[2026-06-22 12:28:50,142.142 INFO    ] Launching Daemon at Mon Jun 22 12:28:50 IST 2026
[2026-06-22 12:28:50,153.153 INFO    ] ================================================
[2026-06-22 12:28:50,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:28:50
[2026-06-22 12:28:51,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:28:51,478.478 INFO    ] Initializing speech engine...
[2026-06-22 12:28:51,488.488 INFO    ] 2026-06-22 12:28:51
[2026-06-22 12:28:51,732.732 INFO    ] 2026-06-22 12:28:51
[2026-06-22 12:28:51,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:28:52,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:28:52,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:28:52,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:28:52,284.284 INFO    ] time= 22/06/2026 12:28:52
[2026-06-22 12:28:52,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:28:52,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:28:52,438.438 INFO    ] No existing commands found in stream
[2026-06-22 12:28:57,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:28:57,454.454 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-22 12:28:59,090.090 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:28:59,092.092 INFO    ] Checking for system updates...
[2026-06-22 12:28:59,128.128 INFO    ] 200
[2026-06-22 12:28:59,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:28:59,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:28:59,187.187 INFO    ] No update needed
[2026-06-22 12:28:59,190.190 INFO    ] Checking for camera pi updates...
[2026-06-22 12:28:59,223.223 INFO    ] 200
[2026-06-22 12:28:59,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:28:59,266.266 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:28:59,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:28:59,351.351 INFO    ] No camera update needed
[2026-06-22 12:28:59,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:28:59,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:28:59,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:28:59,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:29:01,407.407 INFO    ] ================================================
[2026-06-22 12:29:01,423.423 INFO    ] Launching Daemon at Mon Jun 22 12:29:01 IST 2026
[2026-06-22 12:29:01,435.435 INFO    ] ================================================
[2026-06-22 12:29:02,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:29:02
[2026-06-22 12:29:02,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:29:03,081.081 INFO    ] Initializing speech engine...
[2026-06-22 12:29:03,096.096 INFO    ] 2026-06-22 12:29:03
[2026-06-22 12:29:03,420.420 INFO    ] 2026-06-22 12:29:03
[2026-06-22 12:29:03,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:29:03,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:29:03,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:29:03,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:29:03,830.830 INFO    ] time= 22/06/2026 12:29:03
[2026-06-22 12:29:03,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:29:03,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:29:04,027.027 INFO    ] No existing commands found in stream
[2026-06-22 12:29:09,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:29:09,041.041 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-22 12:29:11,533.533 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:29:11,536.536 INFO    ] Checking for system updates...
[2026-06-22 12:29:11,574.574 INFO    ] 200
[2026-06-22 12:29:11,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:29:11,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:29:11,634.634 INFO    ] No update needed
[2026-06-22 12:29:11,637.637 INFO    ] Checking for camera pi updates...
[2026-06-22 12:29:11,676.676 INFO    ] 200
[2026-06-22 12:29:11,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:29:11,725.725 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:29:11,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:29:11,837.837 INFO    ] No camera update needed
[2026-06-22 12:29:11,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:29:11,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:29:11,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:29:11,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:29:13,894.894 INFO    ] ================================================
[2026-06-22 12:29:13,910.910 INFO    ] Launching Daemon at Mon Jun 22 12:29:13 IST 2026
[2026-06-22 12:29:13,921.921 INFO    ] ================================================
[2026-06-22 12:29:14,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:29:14
[2026-06-22 12:29:15,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:29:15,454.454 INFO    ] Initializing speech engine...
[2026-06-22 12:29:15,463.463 INFO    ] 2026-06-22 12:29:15
[2026-06-22 12:29:15,736.736 INFO    ] 2026-06-22 12:29:15
[2026-06-22 12:29:15,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:29:16,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:29:16,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:29:16,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:29:16,288.288 INFO    ] time= 22/06/2026 12:29:16
[2026-06-22 12:29:16,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:29:16,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:29:16,447.447 INFO    ] No existing commands found in stream
[2026-06-22 12:29:21,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:29:21,482.482 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-22 12:29:23,391.391 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:29:23,394.394 INFO    ] Checking for system updates...
[2026-06-22 12:29:23,431.431 INFO    ] 200
[2026-06-22 12:29:23,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:29:23,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:29:23,491.491 INFO    ] No update needed
[2026-06-22 12:29:23,494.494 INFO    ] Checking for camera pi updates...
[2026-06-22 12:29:23,530.530 INFO    ] 200
[2026-06-22 12:29:23,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:29:23,579.579 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:29:23,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:29:23,673.673 INFO    ] No camera update needed
[2026-06-22 12:29:23,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:29:23,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:29:23,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:29:23,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:29:25,732.732 INFO    ] ================================================
[2026-06-22 12:29:25,748.748 INFO    ] Launching Daemon at Mon Jun 22 12:29:25 IST 2026
[2026-06-22 12:29:25,759.759 INFO    ] ================================================
[2026-06-22 12:29:26,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:29:26
[2026-06-22 12:29:26,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:29:27,097.097 INFO    ] Initializing speech engine...
[2026-06-22 12:29:27,106.106 INFO    ] 2026-06-22 12:29:27
[2026-06-22 12:29:27,364.364 INFO    ] 2026-06-22 12:29:27
[2026-06-22 12:29:27,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:29:27,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:29:27,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:29:27,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:29:27,812.812 INFO    ] time= 22/06/2026 12:29:27
[2026-06-22 12:29:27,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:29:27,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:29:28,058.058 INFO    ] No existing commands found in stream
[2026-06-22 12:29:33,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:29:33,078.078 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-22 12:29:35,823.823 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:29:35,826.826 INFO    ] Checking for system updates...
[2026-06-22 12:29:35,863.863 INFO    ] 200
[2026-06-22 12:29:35,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:29:35,927.927 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:29:35,929.929 INFO    ] No update needed
[2026-06-22 12:29:35,932.932 INFO    ] Checking for camera pi updates...
[2026-06-22 12:29:35,966.966 INFO    ] 200
[2026-06-22 12:29:35,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:29:36,008.008 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:29:36,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:29:36,096.096 INFO    ] No camera update needed
[2026-06-22 12:29:36,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:29:36,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:29:36,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:29:36,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:29:38,156.156 INFO    ] ================================================
[2026-06-22 12:29:38,172.172 INFO    ] Launching Daemon at Mon Jun 22 12:29:38 IST 2026
[2026-06-22 12:29:38,183.183 INFO    ] ================================================
[2026-06-22 12:29:38,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:29:38
[2026-06-22 12:29:39,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:29:39,852.852 INFO    ] Initializing speech engine...
[2026-06-22 12:29:39,860.860 INFO    ] 2026-06-22 12:29:39
[2026-06-22 12:29:40,164.164 INFO    ] 2026-06-22 12:29:40
[2026-06-22 12:29:40,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:29:40,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:29:40,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:29:40,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:29:40,675.675 INFO    ] time= 22/06/2026 12:29:40
[2026-06-22 12:29:40,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:29:40,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:29:40,835.835 INFO    ] No existing commands found in stream
[2026-06-22 12:29:45,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:29:45,879.879 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-22 12:29:47,075.075 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:29:47,078.078 INFO    ] Checking for system updates...
[2026-06-22 12:29:47,116.116 INFO    ] 200
[2026-06-22 12:29:47,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:29:47,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:29:47,177.177 INFO    ] No update needed
[2026-06-22 12:29:47,180.180 INFO    ] Checking for camera pi updates...
[2026-06-22 12:29:47,215.215 INFO    ] 200
[2026-06-22 12:29:47,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:29:47,260.260 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:29:47,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:29:47,345.345 INFO    ] No camera update needed
[2026-06-22 12:29:47,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:29:47,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:29:47,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:29:47,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:29:49,408.408 INFO    ] ================================================
[2026-06-22 12:29:49,423.423 INFO    ] Launching Daemon at Mon Jun 22 12:29:49 IST 2026
[2026-06-22 12:29:49,435.435 INFO    ] ================================================
[2026-06-22 12:29:50,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:29:50
[2026-06-22 12:29:50,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:29:50,984.984 INFO    ] Initializing speech engine...
[2026-06-22 12:29:50,998.998 INFO    ] 2026-06-22 12:29:50
[2026-06-22 12:29:51,286.286 INFO    ] 2026-06-22 12:29:51
[2026-06-22 12:29:51,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:29:51,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:29:51,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:29:51,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:29:51,816.816 INFO    ] time= 22/06/2026 12:29:51
[2026-06-22 12:29:51,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:29:51,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:29:51,980.980 INFO    ] No existing commands found in stream
[2026-06-22 12:29:57,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:29:57,015.015 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-22 12:30:00,623.623 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:30:00,624.624 INFO    ] Checking for system updates...
[2026-06-22 12:30:00,646.646 INFO    ] 200
[2026-06-22 12:30:00,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:30:00,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:30:00,680.680 INFO    ] No update needed
[2026-06-22 12:30:00,681.681 INFO    ] Checking for camera pi updates...
[2026-06-22 12:30:00,701.701 INFO    ] 200
[2026-06-22 12:30:00,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:30:00,726.726 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:30:00,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:30:00,813.813 INFO    ] No camera update needed
[2026-06-22 12:30:00,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:30:00,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:30:00,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:30:00,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:30:02,891.891 INFO    ] ================================================
[2026-06-22 12:30:02,938.938 INFO    ] Launching Daemon at Mon Jun 22 12:30:02 IST 2026
[2026-06-22 12:30:02,964.964 INFO    ] ================================================
[2026-06-22 12:30:03,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:30:03
[2026-06-22 12:30:04,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:30:04,581.581 INFO    ] Initializing speech engine...
[2026-06-22 12:30:04,601.601 INFO    ] 2026-06-22 12:30:04
[2026-06-22 12:30:04,864.864 INFO    ] 2026-06-22 12:30:04
[2026-06-22 12:30:04,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:30:05,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:30:05,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:30:05,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:30:05,342.342 INFO    ] time= 22/06/2026 12:30:05
[2026-06-22 12:30:05,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:30:05,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:30:05,559.559 INFO    ] No existing commands found in stream
[2026-06-22 12:30:10,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:30:10,589.589 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-22 12:30:13,439.439 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:30:13,442.442 INFO    ] Checking for system updates...
[2026-06-22 12:30:13,477.477 INFO    ] 200
[2026-06-22 12:30:13,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:30:13,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:30:13,536.536 INFO    ] No update needed
[2026-06-22 12:30:13,539.539 INFO    ] Checking for camera pi updates...
[2026-06-22 12:30:13,573.573 INFO    ] 200
[2026-06-22 12:30:13,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:30:13,617.617 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:30:13,797.797 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:30:13,799.799 INFO    ] No camera update needed
[2026-06-22 12:30:13,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:30:13,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:30:13,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:30:13,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:30:15,853.853 INFO    ] ================================================
[2026-06-22 12:30:15,869.869 INFO    ] Launching Daemon at Mon Jun 22 12:30:15 IST 2026
[2026-06-22 12:30:15,879.879 INFO    ] ================================================
[2026-06-22 12:30:16,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:30:16
[2026-06-22 12:30:17,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:30:17,363.363 INFO    ] Initializing speech engine...
[2026-06-22 12:30:17,371.371 INFO    ] 2026-06-22 12:30:17
[2026-06-22 12:30:17,656.656 INFO    ] 2026-06-22 12:30:17
[2026-06-22 12:30:17,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:30:17,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:30:17,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:30:18,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:30:18,191.191 INFO    ] time= 22/06/2026 12:30:18
[2026-06-22 12:30:18,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:30:18,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:30:18,341.341 INFO    ] No existing commands found in stream
[2026-06-22 12:30:23,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:30:23,372.372 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-22 12:30:24,558.558 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:30:24,561.561 INFO    ] Checking for system updates...
[2026-06-22 12:30:24,605.605 INFO    ] 200
[2026-06-22 12:30:24,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:30:24,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:30:24,669.669 INFO    ] No update needed
[2026-06-22 12:30:24,671.671 INFO    ] Checking for camera pi updates...
[2026-06-22 12:30:24,706.706 INFO    ] 200
[2026-06-22 12:30:24,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:30:24,749.749 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:30:24,834.834 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:30:24,837.837 INFO    ] No camera update needed
[2026-06-22 12:30:24,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:30:24,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:30:24,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:30:24,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:30:26,893.893 INFO    ] ================================================
[2026-06-22 12:30:26,909.909 INFO    ] Launching Daemon at Mon Jun 22 12:30:26 IST 2026
[2026-06-22 12:30:26,920.920 INFO    ] ================================================
[2026-06-22 12:30:27,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:30:27
[2026-06-22 12:30:28,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:30:28,360.360 INFO    ] Initializing speech engine...
[2026-06-22 12:30:28,379.379 INFO    ] 2026-06-22 12:30:28
[2026-06-22 12:30:28,644.644 INFO    ] 2026-06-22 12:30:28
[2026-06-22 12:30:28,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:30:28,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:30:28,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:30:29,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:30:29,121.121 INFO    ] time= 22/06/2026 12:30:29
[2026-06-22 12:30:29,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:30:29,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:30:29,309.309 INFO    ] No existing commands found in stream
[2026-06-22 12:30:34,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:30:34,339.339 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-22 12:30:37,589.589 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:30:37,591.591 INFO    ] Checking for system updates...
[2026-06-22 12:30:37,627.627 INFO    ] 200
[2026-06-22 12:30:37,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:30:37,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:30:37,685.685 INFO    ] No update needed
[2026-06-22 12:30:37,687.687 INFO    ] Checking for camera pi updates...
[2026-06-22 12:30:37,726.726 INFO    ] 200
[2026-06-22 12:30:37,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:30:37,774.774 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:30:37,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:30:37,870.870 INFO    ] No camera update needed
[2026-06-22 12:30:37,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:30:37,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:30:37,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:30:37,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:30:39,927.927 INFO    ] ================================================
[2026-06-22 12:30:39,943.943 INFO    ] Launching Daemon at Mon Jun 22 12:30:39 IST 2026
[2026-06-22 12:30:39,955.955 INFO    ] ================================================
[2026-06-22 12:30:40,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:30:40
[2026-06-22 12:30:41,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:30:41,284.284 INFO    ] Initializing speech engine...
[2026-06-22 12:30:41,297.297 INFO    ] 2026-06-22 12:30:41
[2026-06-22 12:30:41,546.546 INFO    ] 2026-06-22 12:30:41
[2026-06-22 12:30:41,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:30:41,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:30:41,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:30:41,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:30:42,015.015 INFO    ] time= 22/06/2026 12:30:41
[2026-06-22 12:30:42,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:30:42,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:30:42,235.235 INFO    ] No existing commands found in stream
[2026-06-22 12:30:47,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:30:47,262.262 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-22 12:30:50,370.370 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:30:50,373.373 INFO    ] Checking for system updates...
[2026-06-22 12:30:50,411.411 INFO    ] 200
[2026-06-22 12:30:50,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:30:50,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:30:50,478.478 INFO    ] No update needed
[2026-06-22 12:30:50,481.481 INFO    ] Checking for camera pi updates...
[2026-06-22 12:30:50,520.520 INFO    ] 200
[2026-06-22 12:30:50,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:30:50,565.565 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:30:50,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:30:50,657.657 INFO    ] No camera update needed
[2026-06-22 12:30:50,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:30:50,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:30:50,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:30:50,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:30:52,715.715 INFO    ] ================================================
[2026-06-22 12:30:52,731.731 INFO    ] Launching Daemon at Mon Jun 22 12:30:52 IST 2026
[2026-06-22 12:30:52,742.742 INFO    ] ================================================
[2026-06-22 12:30:53,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:30:53
[2026-06-22 12:30:53,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:30:54,081.081 INFO    ] Initializing speech engine...
[2026-06-22 12:30:54,089.089 INFO    ] 2026-06-22 12:30:54
[2026-06-22 12:30:54,353.353 INFO    ] 2026-06-22 12:30:54
[2026-06-22 12:30:54,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:30:54,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:30:54,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:30:54,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:30:54,875.875 INFO    ] time= 22/06/2026 12:30:54
[2026-06-22 12:30:54,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:30:54,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:30:55,923.923 INFO    ] No existing commands found in stream
[2026-06-22 12:31:00,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:31:00,939.939 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-22 12:31:04,937.937 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:31:04,940.940 INFO    ] Checking for system updates...
[2026-06-22 12:31:04,979.979 INFO    ] 200
[2026-06-22 12:31:04,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:31:05,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:31:05,037.037 INFO    ] No update needed
[2026-06-22 12:31:05,040.040 INFO    ] Checking for camera pi updates...
[2026-06-22 12:31:05,079.079 INFO    ] 200
[2026-06-22 12:31:05,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:31:05,122.122 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:31:05,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:31:05,211.211 INFO    ] No camera update needed
[2026-06-22 12:31:05,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:31:05,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:31:05,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:31:05,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:31:07,270.270 INFO    ] ================================================
[2026-06-22 12:31:07,286.286 INFO    ] Launching Daemon at Mon Jun 22 12:31:07 IST 2026
[2026-06-22 12:31:07,296.296 INFO    ] ================================================
[2026-06-22 12:31:07,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:31:07
[2026-06-22 12:31:08,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:31:08,676.676 INFO    ] Initializing speech engine...
[2026-06-22 12:31:08,690.690 INFO    ] 2026-06-22 12:31:08
[2026-06-22 12:31:08,932.932 INFO    ] 2026-06-22 12:31:08
[2026-06-22 12:31:08,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:31:09,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:31:09,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:31:09,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:31:09,488.488 INFO    ] time= 22/06/2026 12:31:09
[2026-06-22 12:31:09,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:31:09,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:31:09,642.642 INFO    ] No existing commands found in stream
[2026-06-22 12:31:14,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:31:14,658.658 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-22 12:31:19,192.192 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:31:19,195.195 INFO    ] Checking for system updates...
[2026-06-22 12:31:19,231.231 INFO    ] 200
[2026-06-22 12:31:19,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:31:19,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:31:19,298.298 INFO    ] No update needed
[2026-06-22 12:31:19,301.301 INFO    ] Checking for camera pi updates...
[2026-06-22 12:31:19,339.339 INFO    ] 200
[2026-06-22 12:31:19,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:31:19,384.384 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:31:19,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:31:19,462.462 INFO    ] No camera update needed
[2026-06-22 12:31:19,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:31:19,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:31:19,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:31:19,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:31:21,521.521 INFO    ] ================================================
[2026-06-22 12:31:21,537.537 INFO    ] Launching Daemon at Mon Jun 22 12:31:21 IST 2026
[2026-06-22 12:31:21,548.548 INFO    ] ================================================
[2026-06-22 12:31:22,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:31:22
[2026-06-22 12:31:22,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:31:22,911.911 INFO    ] Initializing speech engine...
[2026-06-22 12:31:22,922.922 INFO    ] 2026-06-22 12:31:22
[2026-06-22 12:31:23,181.181 INFO    ] 2026-06-22 12:31:23
[2026-06-22 12:31:23,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:31:23,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:31:23,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:31:23,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:31:23,729.729 INFO    ] time= 22/06/2026 12:31:23
[2026-06-22 12:31:23,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:31:23,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:31:23,884.884 INFO    ] No existing commands found in stream
[2026-06-22 12:31:28,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:31:28,902.902 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-22 12:31:32,408.408 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:31:32,411.411 INFO    ] Checking for system updates...
[2026-06-22 12:31:32,450.450 INFO    ] 200
[2026-06-22 12:31:32,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:31:32,509.509 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:31:32,512.512 INFO    ] No update needed
[2026-06-22 12:31:32,515.515 INFO    ] Checking for camera pi updates...
[2026-06-22 12:31:32,552.552 INFO    ] 200
[2026-06-22 12:31:32,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:31:32,602.602 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:31:32,664.664 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:31:32,667.667 INFO    ] No camera update needed
[2026-06-22 12:31:32,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:31:32,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:31:32,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:31:32,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:31:34,726.726 INFO    ] ================================================
[2026-06-22 12:31:34,741.741 INFO    ] Launching Daemon at Mon Jun 22 12:31:34 IST 2026
[2026-06-22 12:31:34,752.752 INFO    ] ================================================
[2026-06-22 12:31:35,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:31:35
[2026-06-22 12:31:35,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:31:36,197.197 INFO    ] Initializing speech engine...
[2026-06-22 12:31:36,208.208 INFO    ] 2026-06-22 12:31:36
[2026-06-22 12:31:36,454.454 INFO    ] 2026-06-22 12:31:36
[2026-06-22 12:31:36,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:31:36,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:31:36,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:31:37,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:31:37,011.011 INFO    ] time= 22/06/2026 12:31:37
[2026-06-22 12:31:37,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:31:37,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:31:37,164.164 INFO    ] No existing commands found in stream
[2026-06-22 12:31:42,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:31:42,187.187 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-22 12:31:46,721.721 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:31:46,722.722 INFO    ] Checking for system updates...
[2026-06-22 12:31:46,743.743 INFO    ] 200
[2026-06-22 12:31:46,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:31:46,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:31:46,789.789 INFO    ] No update needed
[2026-06-22 12:31:46,791.791 INFO    ] Checking for camera pi updates...
[2026-06-22 12:31:46,825.825 INFO    ] 200
[2026-06-22 12:31:46,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:31:46,869.869 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:31:46,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:31:46,956.956 INFO    ] No camera update needed
[2026-06-22 12:31:46,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:31:46,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:31:46,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:31:46,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:31:49,011.011 INFO    ] ================================================
[2026-06-22 12:31:49,028.028 INFO    ] Launching Daemon at Mon Jun 22 12:31:49 IST 2026
[2026-06-22 12:31:49,039.039 INFO    ] ================================================
[2026-06-22 12:31:49,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:31:49
[2026-06-22 12:31:50,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:31:50,442.442 INFO    ] Initializing speech engine...
[2026-06-22 12:31:50,448.448 INFO    ] 2026-06-22 12:31:50
[2026-06-22 12:31:50,749.749 INFO    ] 2026-06-22 12:31:50
[2026-06-22 12:31:50,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:31:50,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:31:50,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:31:51,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:31:51,109.109 INFO    ] time= 22/06/2026 12:31:51
[2026-06-22 12:31:51,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:31:51,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:31:51,266.266 INFO    ] No existing commands found in stream
[2026-06-22 12:31:56,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:31:56,279.279 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-22 12:32:01,508.508 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:32:01,512.512 INFO    ] Checking for system updates...
[2026-06-22 12:32:01,592.592 INFO    ] 200
[2026-06-22 12:32:01,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:32:01,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:32:01,680.680 INFO    ] No update needed
[2026-06-22 12:32:01,683.683 INFO    ] Checking for camera pi updates...
[2026-06-22 12:32:01,763.763 INFO    ] 200
[2026-06-22 12:32:01,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:32:01,826.826 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:32:01,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:32:01,887.887 INFO    ] No camera update needed
[2026-06-22 12:32:01,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:32:01,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:32:01,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:32:01,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:32:03,948.948 INFO    ] ================================================
[2026-06-22 12:32:03,964.964 INFO    ] Launching Daemon at Mon Jun 22 12:32:03 IST 2026
[2026-06-22 12:32:03,975.975 INFO    ] ================================================
[2026-06-22 12:32:04,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:32:04
[2026-06-22 12:32:05,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:32:05,628.628 INFO    ] Initializing speech engine...
[2026-06-22 12:32:05,635.635 INFO    ] 2026-06-22 12:32:05
[2026-06-22 12:32:05,932.932 INFO    ] 2026-06-22 12:32:05
[2026-06-22 12:32:05,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:32:06,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:32:06,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:32:06,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:32:06,385.385 INFO    ] time= 22/06/2026 12:32:06
[2026-06-22 12:32:06,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:32:06,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:32:06,512.512 INFO    ] No existing commands found in stream
[2026-06-22 12:32:11,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:32:11,546.546 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-22 12:32:15,689.689 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:32:15,692.692 INFO    ] Checking for system updates...
[2026-06-22 12:32:15,728.728 INFO    ] 200
[2026-06-22 12:32:15,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:32:15,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:32:15,787.787 INFO    ] No update needed
[2026-06-22 12:32:15,789.789 INFO    ] Checking for camera pi updates...
[2026-06-22 12:32:15,827.827 INFO    ] 200
[2026-06-22 12:32:15,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:32:15,875.875 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:32:15,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:32:15,931.931 INFO    ] No camera update needed
[2026-06-22 12:32:15,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:32:15,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:32:15,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:32:15,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:32:17,987.987 INFO    ] ================================================
[2026-06-22 12:32:18,003.003 INFO    ] Launching Daemon at Mon Jun 22 12:32:17 IST 2026
[2026-06-22 12:32:18,014.014 INFO    ] ================================================
[2026-06-22 12:32:18,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:32:18
[2026-06-22 12:32:19,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:32:19,448.448 INFO    ] Initializing speech engine...
[2026-06-22 12:32:19,457.457 INFO    ] 2026-06-22 12:32:19
[2026-06-22 12:32:19,705.705 INFO    ] 2026-06-22 12:32:19
[2026-06-22 12:32:19,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:32:19,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:32:20,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:32:20,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:32:20,175.175 INFO    ] time= 22/06/2026 12:32:20
[2026-06-22 12:32:20,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:32:20,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:32:20,398.398 INFO    ] No existing commands found in stream
[2026-06-22 12:32:25,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:32:25,427.427 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-22 12:32:29,016.016 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:32:29,019.019 INFO    ] Checking for system updates...
[2026-06-22 12:32:29,063.063 INFO    ] 200
[2026-06-22 12:32:29,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:32:29,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:32:29,130.130 INFO    ] No update needed
[2026-06-22 12:32:29,132.132 INFO    ] Checking for camera pi updates...
[2026-06-22 12:32:29,166.166 INFO    ] 200
[2026-06-22 12:32:29,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:32:29,209.209 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:32:29,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:32:29,371.371 INFO    ] No camera update needed
[2026-06-22 12:32:29,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:32:29,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:32:29,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:32:29,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:32:31,428.428 INFO    ] ================================================
[2026-06-22 12:32:31,446.446 INFO    ] Launching Daemon at Mon Jun 22 12:32:31 IST 2026
[2026-06-22 12:32:31,458.458 INFO    ] ================================================
[2026-06-22 12:32:32,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:32:32
[2026-06-22 12:32:32,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:32:33,089.089 INFO    ] Initializing speech engine...
[2026-06-22 12:32:33,095.095 INFO    ] 2026-06-22 12:32:33
[2026-06-22 12:32:33,394.394 INFO    ] 2026-06-22 12:32:33
[2026-06-22 12:32:33,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:32:33,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:32:33,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:32:33,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:32:33,946.946 INFO    ] time= 22/06/2026 12:32:33
[2026-06-22 12:32:33,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:32:34,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:32:34,121.121 INFO    ] No existing commands found in stream
[2026-06-22 12:32:39,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:32:39,143.143 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-22 12:32:50,700.700 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:32:50,703.703 INFO    ] Checking for system updates...
[2026-06-22 12:32:50,735.735 INFO    ] 200
[2026-06-22 12:32:50,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:32:50,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:32:50,769.769 INFO    ] No update needed
[2026-06-22 12:32:50,770.770 INFO    ] Checking for camera pi updates...
[2026-06-22 12:32:50,791.791 INFO    ] 200
[2026-06-22 12:32:50,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:32:50,818.818 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:32:50,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:32:50,893.893 INFO    ] No camera update needed
[2026-06-22 12:32:50,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:32:50,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:32:50,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:32:50,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:32:52,948.948 INFO    ] ================================================
[2026-06-22 12:32:52,965.965 INFO    ] Launching Daemon at Mon Jun 22 12:32:52 IST 2026
[2026-06-22 12:32:52,976.976 INFO    ] ================================================
[2026-06-22 12:32:53,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:32:53
[2026-06-22 12:32:54,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:32:54,473.473 INFO    ] Initializing speech engine...
[2026-06-22 12:32:54,482.482 INFO    ] 2026-06-22 12:32:54
[2026-06-22 12:32:54,732.732 INFO    ] 2026-06-22 12:32:54
[2026-06-22 12:32:54,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:32:54,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:32:54,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:32:55,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:32:55,212.212 INFO    ] time= 22/06/2026 12:32:55
[2026-06-22 12:32:55,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:32:55,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:32:55,451.451 INFO    ] No existing commands found in stream
[2026-06-22 12:33:00,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:33:00,469.469 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-22 12:33:09,246.246 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:33:09,248.248 INFO    ] Checking for system updates...
[2026-06-22 12:33:09,285.285 INFO    ] 200
[2026-06-22 12:33:09,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:33:09,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:33:09,343.343 INFO    ] No update needed
[2026-06-22 12:33:09,346.346 INFO    ] Checking for camera pi updates...
[2026-06-22 12:33:09,380.380 INFO    ] 200
[2026-06-22 12:33:09,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:33:09,426.426 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:33:09,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:33:09,508.508 INFO    ] No camera update needed
[2026-06-22 12:33:09,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:33:09,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:33:09,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:33:09,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:33:11,565.565 INFO    ] ================================================
[2026-06-22 12:33:11,581.581 INFO    ] Launching Daemon at Mon Jun 22 12:33:11 IST 2026
[2026-06-22 12:33:11,592.592 INFO    ] ================================================
[2026-06-22 12:33:12,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:33:12
[2026-06-22 12:33:12,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:33:13,009.009 INFO    ] Initializing speech engine...
[2026-06-22 12:33:13,018.018 INFO    ] 2026-06-22 12:33:13
[2026-06-22 12:33:13,263.263 INFO    ] 2026-06-22 12:33:13
[2026-06-22 12:33:13,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:33:13,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:33:13,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:33:13,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:33:13,752.752 INFO    ] time= 22/06/2026 12:33:13
[2026-06-22 12:33:13,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:33:13,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:33:13,950.950 INFO    ] No existing commands found in stream
[2026-06-22 12:33:18,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:33:18,980.980 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-22 12:33:23,983.983 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:33:23,986.986 INFO    ] Checking for system updates...
[2026-06-22 12:33:24,021.021 INFO    ] 200
[2026-06-22 12:33:24,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:33:24,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:33:24,079.079 INFO    ] No update needed
[2026-06-22 12:33:24,081.081 INFO    ] Checking for camera pi updates...
[2026-06-22 12:33:24,115.115 INFO    ] 200
[2026-06-22 12:33:24,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:33:24,162.162 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:33:24,239.239 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:33:24,242.242 INFO    ] No camera update needed
[2026-06-22 12:33:24,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:33:24,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:33:24,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:33:24,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:33:26,296.296 INFO    ] ================================================
[2026-06-22 12:33:26,312.312 INFO    ] Launching Daemon at Mon Jun 22 12:33:26 IST 2026
[2026-06-22 12:33:26,323.323 INFO    ] ================================================
[2026-06-22 12:33:26,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:33:26
[2026-06-22 12:33:27,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:33:27,673.673 INFO    ] Initializing speech engine...
[2026-06-22 12:33:27,683.683 INFO    ] 2026-06-22 12:33:27
[2026-06-22 12:33:27,928.928 INFO    ] 2026-06-22 12:33:27
[2026-06-22 12:33:27,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:33:28,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:33:28,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:33:28,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:33:28,385.385 INFO    ] time= 22/06/2026 12:33:28
[2026-06-22 12:33:28,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:33:28,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:33:28,560.560 INFO    ] No existing commands found in stream
[2026-06-22 12:33:33,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:33:33,573.573 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-22 12:33:35,095.095 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:33:35,097.097 INFO    ] Checking for system updates...
[2026-06-22 12:33:35,134.134 INFO    ] 200
[2026-06-22 12:33:35,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:33:35,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:33:35,198.198 INFO    ] No update needed
[2026-06-22 12:33:35,201.201 INFO    ] Checking for camera pi updates...
[2026-06-22 12:33:35,231.231 INFO    ] 200
[2026-06-22 12:33:35,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:33:35,256.256 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:33:35,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:33:35,335.335 INFO    ] No camera update needed
[2026-06-22 12:33:35,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:33:35,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:33:35,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:33:35,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:33:37,394.394 INFO    ] ================================================
[2026-06-22 12:33:37,410.410 INFO    ] Launching Daemon at Mon Jun 22 12:33:37 IST 2026
[2026-06-22 12:33:37,420.420 INFO    ] ================================================
[2026-06-22 12:33:37,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:33:37
[2026-06-22 12:33:38,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:33:38,761.761 INFO    ] Initializing speech engine...
[2026-06-22 12:33:38,770.770 INFO    ] 2026-06-22 12:33:38
[2026-06-22 12:33:39,016.016 INFO    ] 2026-06-22 12:33:39
[2026-06-22 12:33:39,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:33:39,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:33:39,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:33:39,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:33:39,519.519 INFO    ] time= 22/06/2026 12:33:39
[2026-06-22 12:33:39,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:33:39,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:33:39,727.727 INFO    ] No existing commands found in stream
[2026-06-22 12:33:44,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:33:44,743.743 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-22 12:33:45,974.974 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:33:45,976.976 INFO    ] Checking for system updates...
[2026-06-22 12:33:46,012.012 INFO    ] 200
[2026-06-22 12:33:46,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:33:46,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:33:46,072.072 INFO    ] No update needed
[2026-06-22 12:33:46,074.074 INFO    ] Checking for camera pi updates...
[2026-06-22 12:33:46,109.109 INFO    ] 200
[2026-06-22 12:33:46,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:33:46,156.156 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:33:46,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:33:46,237.237 INFO    ] No camera update needed
[2026-06-22 12:33:46,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:33:46,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:33:46,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:33:46,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:33:48,294.294 INFO    ] ================================================
[2026-06-22 12:33:48,310.310 INFO    ] Launching Daemon at Mon Jun 22 12:33:48 IST 2026
[2026-06-22 12:33:48,321.321 INFO    ] ================================================
[2026-06-22 12:33:48,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:33:48
[2026-06-22 12:33:49,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:33:49,695.695 INFO    ] Initializing speech engine...
[2026-06-22 12:33:49,706.706 INFO    ] 2026-06-22 12:33:49
[2026-06-22 12:33:49,969.969 INFO    ] 2026-06-22 12:33:49
[2026-06-22 12:33:50,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:33:50,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:33:50,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:33:50,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:33:50,466.466 INFO    ] time= 22/06/2026 12:33:50
[2026-06-22 12:33:50,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:33:50,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:33:50,672.672 INFO    ] No existing commands found in stream
[2026-06-22 12:33:55,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:33:55,690.690 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-22 12:33:56,868.868 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:33:56,870.870 INFO    ] Checking for system updates...
[2026-06-22 12:33:56,906.906 INFO    ] 200
[2026-06-22 12:33:56,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:33:56,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:33:56,963.963 INFO    ] No update needed
[2026-06-22 12:33:56,966.966 INFO    ] Checking for camera pi updates...
[2026-06-22 12:33:57,000.000 INFO    ] 200
[2026-06-22 12:33:57,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:33:57,043.043 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:33:57,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:33:57,131.131 INFO    ] No camera update needed
[2026-06-22 12:33:57,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:33:57,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:33:57,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:33:57,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:33:59,186.186 INFO    ] ================================================
[2026-06-22 12:33:59,202.202 INFO    ] Launching Daemon at Mon Jun 22 12:33:59 IST 2026
[2026-06-22 12:33:59,213.213 INFO    ] ================================================
[2026-06-22 12:33:59,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:33:59
[2026-06-22 12:34:00,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:34:00,642.642 INFO    ] Initializing speech engine...
[2026-06-22 12:34:00,651.651 INFO    ] 2026-06-22 12:34:00
[2026-06-22 12:34:00,919.919 INFO    ] 2026-06-22 12:34:00
[2026-06-22 12:34:00,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:34:01,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:34:01,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:34:01,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:34:01,360.360 INFO    ] time= 22/06/2026 12:34:01
[2026-06-22 12:34:01,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:34:01,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:34:01,457.457 INFO    ] No existing commands found in stream
[2026-06-22 12:34:06,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:34:06,475.475 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-22 12:34:09,733.733 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:34:09,736.736 INFO    ] Checking for system updates...
[2026-06-22 12:34:09,773.773 INFO    ] 200
[2026-06-22 12:34:09,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:34:09,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:34:09,838.838 INFO    ] No update needed
[2026-06-22 12:34:09,841.841 INFO    ] Checking for camera pi updates...
[2026-06-22 12:34:09,875.875 INFO    ] 200
[2026-06-22 12:34:09,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:34:09,919.919 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:34:09,993.993 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:34:09,996.996 INFO    ] No camera update needed
[2026-06-22 12:34:09,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:34:10,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:34:10,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:34:10,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:34:12,053.053 INFO    ] ================================================
[2026-06-22 12:34:12,069.069 INFO    ] Launching Daemon at Mon Jun 22 12:34:12 IST 2026
[2026-06-22 12:34:12,080.080 INFO    ] ================================================
[2026-06-22 12:34:12,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:34:12
[2026-06-22 12:34:13,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:34:13,457.457 INFO    ] Initializing speech engine...
[2026-06-22 12:34:13,466.466 INFO    ] 2026-06-22 12:34:13
[2026-06-22 12:34:13,720.720 INFO    ] 2026-06-22 12:34:13
[2026-06-22 12:34:13,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:34:14,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:34:14,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:34:14,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:34:14,224.224 INFO    ] time= 22/06/2026 12:34:14
[2026-06-22 12:34:14,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:34:14,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:34:14,415.415 INFO    ] No existing commands found in stream
[2026-06-22 12:34:19,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:34:19,438.438 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-22 12:34:21,952.952 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:34:21,955.955 INFO    ] Checking for system updates...
[2026-06-22 12:34:21,996.996 INFO    ] 200
[2026-06-22 12:34:21,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:34:22,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:34:22,053.053 INFO    ] No update needed
[2026-06-22 12:34:22,055.055 INFO    ] Checking for camera pi updates...
[2026-06-22 12:34:22,095.095 INFO    ] 200
[2026-06-22 12:34:22,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:34:22,138.138 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:34:22,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:34:22,229.229 INFO    ] No camera update needed
[2026-06-22 12:34:22,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:34:22,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:34:22,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:34:22,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:34:24,285.285 INFO    ] ================================================
[2026-06-22 12:34:24,301.301 INFO    ] Launching Daemon at Mon Jun 22 12:34:24 IST 2026
[2026-06-22 12:34:24,312.312 INFO    ] ================================================
[2026-06-22 12:34:24,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:34:24
[2026-06-22 12:34:25,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:34:25,672.672 INFO    ] Initializing speech engine...
[2026-06-22 12:34:25,682.682 INFO    ] 2026-06-22 12:34:25
[2026-06-22 12:34:25,943.943 INFO    ] 2026-06-22 12:34:25
[2026-06-22 12:34:26,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:34:26,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:34:26,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:34:26,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:34:26,491.491 INFO    ] time= 22/06/2026 12:34:26
[2026-06-22 12:34:26,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:34:26,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:34:26,662.662 INFO    ] No existing commands found in stream
[2026-06-22 12:34:31,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:34:31,679.679 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-22 12:34:33,765.765 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:34:33,768.768 INFO    ] Checking for system updates...
[2026-06-22 12:34:33,805.805 INFO    ] 200
[2026-06-22 12:34:33,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:34:33,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:34:33,864.864 INFO    ] No update needed
[2026-06-22 12:34:33,866.866 INFO    ] Checking for camera pi updates...
[2026-06-22 12:34:33,900.900 INFO    ] 200
[2026-06-22 12:34:33,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:34:33,950.950 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:34:34,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:34:34,027.027 INFO    ] No camera update needed
[2026-06-22 12:34:34,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:34:34,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:34:34,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:34:34,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:34:36,083.083 INFO    ] ================================================
[2026-06-22 12:34:36,098.098 INFO    ] Launching Daemon at Mon Jun 22 12:34:36 IST 2026
[2026-06-22 12:34:36,109.109 INFO    ] ================================================
[2026-06-22 12:34:36,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:34:36
[2026-06-22 12:34:37,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:34:37,492.492 INFO    ] Initializing speech engine...
[2026-06-22 12:34:37,500.500 INFO    ] 2026-06-22 12:34:37
[2026-06-22 12:34:37,763.763 INFO    ] 2026-06-22 12:34:37
[2026-06-22 12:34:37,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:34:38,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:34:38,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:34:38,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:34:38,237.237 INFO    ] time= 22/06/2026 12:34:38
[2026-06-22 12:34:38,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:34:38,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:34:38,459.459 INFO    ] No existing commands found in stream
[2026-06-22 12:34:43,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:34:43,478.478 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-22 12:34:47,161.161 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:34:47,163.163 INFO    ] Checking for system updates...
[2026-06-22 12:34:47,204.204 INFO    ] 200
[2026-06-22 12:34:47,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:34:47,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:34:47,264.264 INFO    ] No update needed
[2026-06-22 12:34:47,266.266 INFO    ] Checking for camera pi updates...
[2026-06-22 12:34:47,305.305 INFO    ] 200
[2026-06-22 12:34:47,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:34:47,349.349 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:34:47,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:34:47,431.431 INFO    ] No camera update needed
[2026-06-22 12:34:47,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:34:47,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:34:47,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:34:47,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:34:49,486.486 INFO    ] ================================================
[2026-06-22 12:34:49,502.502 INFO    ] Launching Daemon at Mon Jun 22 12:34:49 IST 2026
[2026-06-22 12:34:49,513.513 INFO    ] ================================================
[2026-06-22 12:34:50,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:34:50
[2026-06-22 12:34:50,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:34:50,837.837 INFO    ] Initializing speech engine...
[2026-06-22 12:34:50,852.852 INFO    ] 2026-06-22 12:34:50
[2026-06-22 12:34:51,121.121 INFO    ] 2026-06-22 12:34:51
[2026-06-22 12:34:51,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:34:51,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:34:51,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:34:51,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:34:51,623.623 INFO    ] time= 22/06/2026 12:34:51
[2026-06-22 12:34:51,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:34:51,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:34:51,832.832 INFO    ] No existing commands found in stream
[2026-06-22 12:34:56,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:34:56,860.860 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-22 12:35:00,821.821 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:35:00,824.824 INFO    ] Checking for system updates...
[2026-06-22 12:35:00,864.864 INFO    ] 200
[2026-06-22 12:35:00,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:35:00,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:35:00,932.932 INFO    ] No update needed
[2026-06-22 12:35:00,935.935 INFO    ] Checking for camera pi updates...
[2026-06-22 12:35:00,970.970 INFO    ] 200
[2026-06-22 12:35:00,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:35:01,021.021 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:35:01,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:35:01,117.117 INFO    ] No camera update needed
[2026-06-22 12:35:01,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:35:01,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:35:01,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:35:01,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:35:03,179.179 INFO    ] ================================================
[2026-06-22 12:35:03,194.194 INFO    ] Launching Daemon at Mon Jun 22 12:35:03 IST 2026
[2026-06-22 12:35:03,205.205 INFO    ] ================================================
[2026-06-22 12:35:03,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:35:03
[2026-06-22 12:35:04,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:35:04,628.628 INFO    ] Initializing speech engine...
[2026-06-22 12:35:04,651.651 INFO    ] 2026-06-22 12:35:04
[2026-06-22 12:35:04,907.907 INFO    ] 2026-06-22 12:35:04
[2026-06-22 12:35:04,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:35:05,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:35:05,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:35:05,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:35:05,284.284 INFO    ] time= 22/06/2026 12:35:05
[2026-06-22 12:35:05,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:35:05,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:35:05,486.486 INFO    ] No existing commands found in stream
[2026-06-22 12:35:10,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:35:10,499.499 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-22 12:35:11,070.070 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:35:11,072.072 INFO    ] Checking for system updates...
[2026-06-22 12:35:11,112.112 INFO    ] 200
[2026-06-22 12:35:11,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:35:11,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:35:11,170.170 INFO    ] No update needed
[2026-06-22 12:35:11,172.172 INFO    ] Checking for camera pi updates...
[2026-06-22 12:35:11,210.210 INFO    ] 200
[2026-06-22 12:35:11,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:35:11,253.253 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:35:11,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:35:11,339.339 INFO    ] No camera update needed
[2026-06-22 12:35:11,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:35:11,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:35:11,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:35:11,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:35:13,397.397 INFO    ] ================================================
[2026-06-22 12:35:13,413.413 INFO    ] Launching Daemon at Mon Jun 22 12:35:13 IST 2026
[2026-06-22 12:35:13,424.424 INFO    ] ================================================
[2026-06-22 12:35:14,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:35:14
[2026-06-22 12:35:14,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:35:14,933.933 INFO    ] Initializing speech engine...
[2026-06-22 12:35:14,942.942 INFO    ] 2026-06-22 12:35:14
[2026-06-22 12:35:15,220.220 INFO    ] 2026-06-22 12:35:15
[2026-06-22 12:35:15,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:35:15,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:35:15,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:35:15,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:35:15,752.752 INFO    ] time= 22/06/2026 12:35:15
[2026-06-22 12:35:15,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:35:15,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:35:15,916.916 INFO    ] No existing commands found in stream
[2026-06-22 12:35:20,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:35:20,946.946 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-22 12:35:23,739.739 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:35:23,741.741 INFO    ] Checking for system updates...
[2026-06-22 12:35:23,762.762 INFO    ] 200
[2026-06-22 12:35:23,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:35:23,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:35:23,805.805 INFO    ] No update needed
[2026-06-22 12:35:23,808.808 INFO    ] Checking for camera pi updates...
[2026-06-22 12:35:23,843.843 INFO    ] 200
[2026-06-22 12:35:23,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:35:23,887.887 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:35:23,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:35:23,966.966 INFO    ] No camera update needed
[2026-06-22 12:35:23,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:35:23,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:35:23,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:35:23,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:35:26,025.025 INFO    ] ================================================
[2026-06-22 12:35:26,040.040 INFO    ] Launching Daemon at Mon Jun 22 12:35:26 IST 2026
[2026-06-22 12:35:26,051.051 INFO    ] ================================================
[2026-06-22 12:35:26,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:35:26
[2026-06-22 12:35:27,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:35:27,425.425 INFO    ] Initializing speech engine...
[2026-06-22 12:35:27,434.434 INFO    ] 2026-06-22 12:35:27
[2026-06-22 12:35:27,682.682 INFO    ] 2026-06-22 12:35:27
[2026-06-22 12:35:27,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:35:27,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:35:27,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:35:28,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:35:28,180.180 INFO    ] time= 22/06/2026 12:35:28
[2026-06-22 12:35:28,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:35:28,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:35:28,379.379 INFO    ] No existing commands found in stream
[2026-06-22 12:35:33,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:35:33,406.406 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-22 12:35:35,925.925 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:35:35,927.927 INFO    ] Checking for system updates...
[2026-06-22 12:35:35,967.967 INFO    ] 200
[2026-06-22 12:35:35,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:35:36,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:35:36,025.025 INFO    ] No update needed
[2026-06-22 12:35:36,027.027 INFO    ] Checking for camera pi updates...
[2026-06-22 12:35:36,061.061 INFO    ] 200
[2026-06-22 12:35:36,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:35:36,104.104 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:35:36,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:35:36,200.200 INFO    ] No camera update needed
[2026-06-22 12:35:36,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:35:36,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:35:36,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:35:36,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:35:38,256.256 INFO    ] ================================================
[2026-06-22 12:35:38,272.272 INFO    ] Launching Daemon at Mon Jun 22 12:35:38 IST 2026
[2026-06-22 12:35:38,282.282 INFO    ] ================================================
[2026-06-22 12:35:38,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:35:38
[2026-06-22 12:35:39,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:35:39,616.616 INFO    ] Initializing speech engine...
[2026-06-22 12:35:39,630.630 INFO    ] 2026-06-22 12:35:39
[2026-06-22 12:35:39,899.899 INFO    ] 2026-06-22 12:35:39
[2026-06-22 12:35:39,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:35:40,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:35:40,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:35:40,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:35:40,459.459 INFO    ] time= 22/06/2026 12:35:40
[2026-06-22 12:35:40,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:35:40,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:35:40,590.590 INFO    ] No existing commands found in stream
[2026-06-22 12:35:45,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:35:45,619.619 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-22 12:35:51,527.527 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:35:51,530.530 INFO    ] Checking for system updates...
[2026-06-22 12:35:51,567.567 INFO    ] 200
[2026-06-22 12:35:51,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:35:51,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:35:51,632.632 INFO    ] No update needed
[2026-06-22 12:35:51,635.635 INFO    ] Checking for camera pi updates...
[2026-06-22 12:35:51,670.670 INFO    ] 200
[2026-06-22 12:35:51,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:35:51,719.719 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:35:51,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:35:51,811.811 INFO    ] No camera update needed
[2026-06-22 12:35:51,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:35:51,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:35:51,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:35:51,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:35:53,868.868 INFO    ] ================================================
[2026-06-22 12:35:53,883.883 INFO    ] Launching Daemon at Mon Jun 22 12:35:53 IST 2026
[2026-06-22 12:35:53,894.894 INFO    ] ================================================
[2026-06-22 12:35:54,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:35:54
[2026-06-22 12:35:55,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:35:55,359.359 INFO    ] Initializing speech engine...
[2026-06-22 12:35:55,365.365 INFO    ] 2026-06-22 12:35:55
[2026-06-22 12:35:55,614.614 INFO    ] 2026-06-22 12:35:55
[2026-06-22 12:35:55,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:35:55,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:35:55,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:35:56,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:35:56,064.064 INFO    ] time= 22/06/2026 12:35:56
[2026-06-22 12:35:56,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:35:56,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:35:56,310.310 INFO    ] No existing commands found in stream
[2026-06-22 12:36:01,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:36:01,341.341 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-22 12:36:04,072.072 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:36:04,075.075 INFO    ] Checking for system updates...
[2026-06-22 12:36:04,112.112 INFO    ] 200
[2026-06-22 12:36:04,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:36:04,170.170 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:36:04,172.172 INFO    ] No update needed
[2026-06-22 12:36:04,175.175 INFO    ] Checking for camera pi updates...
[2026-06-22 12:36:04,210.210 INFO    ] 200
[2026-06-22 12:36:04,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:36:04,254.254 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:36:04,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:36:04,341.341 INFO    ] No camera update needed
[2026-06-22 12:36:04,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:36:04,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:36:04,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:36:04,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:36:06,402.402 INFO    ] ================================================
[2026-06-22 12:36:06,418.418 INFO    ] Launching Daemon at Mon Jun 22 12:36:06 IST 2026
[2026-06-22 12:36:06,429.429 INFO    ] ================================================
[2026-06-22 12:36:07,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:36:07
[2026-06-22 12:36:07,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:36:07,900.900 INFO    ] Initializing speech engine...
[2026-06-22 12:36:07,910.910 INFO    ] 2026-06-22 12:36:07
[2026-06-22 12:36:08,169.169 INFO    ] 2026-06-22 12:36:08
[2026-06-22 12:36:08,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:36:08,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:36:08,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:36:08,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:36:08,708.708 INFO    ] time= 22/06/2026 12:36:08
[2026-06-22 12:36:08,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:36:08,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:36:08,871.871 INFO    ] No existing commands found in stream
[2026-06-22 12:36:13,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:36:13,887.887 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-22 12:36:16,358.358 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:36:16,360.360 INFO    ] Checking for system updates...
[2026-06-22 12:36:16,380.380 INFO    ] 200
[2026-06-22 12:36:16,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:36:16,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:36:16,417.417 INFO    ] No update needed
[2026-06-22 12:36:16,419.419 INFO    ] Checking for camera pi updates...
[2026-06-22 12:36:16,438.438 INFO    ] 200
[2026-06-22 12:36:16,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:36:16,478.478 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:36:16,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:36:16,563.563 INFO    ] No camera update needed
[2026-06-22 12:36:16,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:36:16,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:36:16,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:36:16,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:36:18,619.619 INFO    ] ================================================
[2026-06-22 12:36:18,635.635 INFO    ] Launching Daemon at Mon Jun 22 12:36:18 IST 2026
[2026-06-22 12:36:18,645.645 INFO    ] ================================================
[2026-06-22 12:36:19,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:36:19
[2026-06-22 12:36:19,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:36:20,018.018 INFO    ] Initializing speech engine...
[2026-06-22 12:36:20,028.028 INFO    ] 2026-06-22 12:36:20
[2026-06-22 12:36:20,292.292 INFO    ] 2026-06-22 12:36:20
[2026-06-22 12:36:20,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:36:20,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:36:20,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:36:20,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:36:20,836.836 INFO    ] time= 22/06/2026 12:36:20
[2026-06-22 12:36:20,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:36:20,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:36:20,990.990 INFO    ] No existing commands found in stream
[2026-06-22 12:36:26,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:36:26,007.007 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-22 12:36:26,718.718 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:36:26,720.720 INFO    ] Checking for system updates...
[2026-06-22 12:36:26,759.759 INFO    ] 200
[2026-06-22 12:36:26,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:36:26,816.816 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:36:26,818.818 INFO    ] No update needed
[2026-06-22 12:36:26,820.820 INFO    ] Checking for camera pi updates...
[2026-06-22 12:36:26,857.857 INFO    ] 200
[2026-06-22 12:36:26,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:36:26,901.901 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:36:26,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:36:26,984.984 INFO    ] No camera update needed
[2026-06-22 12:36:26,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:36:26,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:36:26,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:36:26,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:36:29,040.040 INFO    ] ================================================
[2026-06-22 12:36:29,055.055 INFO    ] Launching Daemon at Mon Jun 22 12:36:29 IST 2026
[2026-06-22 12:36:29,071.071 INFO    ] ================================================
[2026-06-22 12:36:29,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:36:29
[2026-06-22 12:36:30,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:36:30,395.395 INFO    ] Initializing speech engine...
[2026-06-22 12:36:30,409.409 INFO    ] 2026-06-22 12:36:30
[2026-06-22 12:36:30,665.665 INFO    ] 2026-06-22 12:36:30
[2026-06-22 12:36:30,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:36:30,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:36:30,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:36:31,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:36:31,191.191 INFO    ] time= 22/06/2026 12:36:31
[2026-06-22 12:36:31,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:36:31,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:36:31,419.419 INFO    ] No existing commands found in stream
[2026-06-22 12:36:36,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:36:36,451.451 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-22 12:36:39,981.981 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:36:39,983.983 INFO    ] Checking for system updates...
[2026-06-22 12:36:40,005.005 INFO    ] 200
[2026-06-22 12:36:40,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:36:40,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:36:40,038.038 INFO    ] No update needed
[2026-06-22 12:36:40,039.039 INFO    ] Checking for camera pi updates...
[2026-06-22 12:36:40,061.061 INFO    ] 200
[2026-06-22 12:36:40,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:36:40,110.110 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:36:40,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:36:40,295.295 INFO    ] No camera update needed
[2026-06-22 12:36:40,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:36:40,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:36:40,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:36:40,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:36:42,352.352 INFO    ] ================================================
[2026-06-22 12:36:42,368.368 INFO    ] Launching Daemon at Mon Jun 22 12:36:42 IST 2026
[2026-06-22 12:36:42,379.379 INFO    ] ================================================
[2026-06-22 12:36:43,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:36:43
[2026-06-22 12:36:43,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:36:43,785.785 INFO    ] Initializing speech engine...
[2026-06-22 12:36:43,794.794 INFO    ] 2026-06-22 12:36:43
[2026-06-22 12:36:44,063.063 INFO    ] 2026-06-22 12:36:44
[2026-06-22 12:36:44,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:36:44,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:36:44,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:36:44,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:36:44,594.594 INFO    ] time= 22/06/2026 12:36:44
[2026-06-22 12:36:44,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:36:44,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:36:44,776.776 INFO    ] No existing commands found in stream
[2026-06-22 12:36:49,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:36:49,816.816 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-22 12:36:50,950.950 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:36:50,952.952 INFO    ] Checking for system updates...
[2026-06-22 12:36:50,973.973 INFO    ] 200
[2026-06-22 12:36:50,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:36:51,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:36:51,007.007 INFO    ] No update needed
[2026-06-22 12:36:51,008.008 INFO    ] Checking for camera pi updates...
[2026-06-22 12:36:51,028.028 INFO    ] 200
[2026-06-22 12:36:51,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:36:51,053.053 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:36:51,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:36:51,152.152 INFO    ] No camera update needed
[2026-06-22 12:36:51,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:36:51,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:36:51,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:36:51,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:36:53,207.207 INFO    ] ================================================
[2026-06-22 12:36:53,222.222 INFO    ] Launching Daemon at Mon Jun 22 12:36:53 IST 2026
[2026-06-22 12:36:53,233.233 INFO    ] ================================================
[2026-06-22 12:36:53,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:36:53
[2026-06-22 12:36:54,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:36:54,575.575 INFO    ] Initializing speech engine...
[2026-06-22 12:36:54,584.584 INFO    ] 2026-06-22 12:36:54
[2026-06-22 12:36:54,841.841 INFO    ] 2026-06-22 12:36:54
[2026-06-22 12:36:54,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:36:55,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:36:55,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:36:55,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:36:55,389.389 INFO    ] time= 22/06/2026 12:36:55
[2026-06-22 12:36:55,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:36:55,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:36:55,543.543 INFO    ] No existing commands found in stream
[2026-06-22 12:37:00,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:37:00,566.566 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-22 12:37:01,687.687 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:37:01,690.690 INFO    ] Checking for system updates...
[2026-06-22 12:37:01,731.731 INFO    ] 200
[2026-06-22 12:37:01,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:37:01,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:37:01,803.803 INFO    ] No update needed
[2026-06-22 12:37:01,806.806 INFO    ] Checking for camera pi updates...
[2026-06-22 12:37:01,844.844 INFO    ] 200
[2026-06-22 12:37:01,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:37:01,898.898 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:37:01,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:37:01,989.989 INFO    ] No camera update needed
[2026-06-22 12:37:01,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:37:01,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:37:02,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:37:02,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:37:04,054.054 INFO    ] ================================================
[2026-06-22 12:37:04,070.070 INFO    ] Launching Daemon at Mon Jun 22 12:37:04 IST 2026
[2026-06-22 12:37:04,081.081 INFO    ] ================================================
[2026-06-22 12:37:04,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:37:04
[2026-06-22 12:37:05,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:37:05,545.545 INFO    ] Initializing speech engine...
[2026-06-22 12:37:05,557.557 INFO    ] 2026-06-22 12:37:05
[2026-06-22 12:37:05,865.865 INFO    ] 2026-06-22 12:37:05
[2026-06-22 12:37:05,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:37:06,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:37:06,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:37:06,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:37:06,404.404 INFO    ] time= 22/06/2026 12:37:06
[2026-06-22 12:37:06,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:37:06,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:37:06,540.540 INFO    ] No existing commands found in stream
[2026-06-22 12:37:11,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:37:11,569.569 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-22 12:37:14,303.303 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:37:14,306.306 INFO    ] Checking for system updates...
[2026-06-22 12:37:14,347.347 INFO    ] 200
[2026-06-22 12:37:14,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:37:14,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:37:14,413.413 INFO    ] No update needed
[2026-06-22 12:37:14,415.415 INFO    ] Checking for camera pi updates...
[2026-06-22 12:37:14,450.450 INFO    ] 200
[2026-06-22 12:37:14,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:37:14,494.494 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:37:14,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:37:14,579.579 INFO    ] No camera update needed
[2026-06-22 12:37:14,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:37:14,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:37:14,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:37:14,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:37:16,637.637 INFO    ] ================================================
[2026-06-22 12:37:16,652.652 INFO    ] Launching Daemon at Mon Jun 22 12:37:16 IST 2026
[2026-06-22 12:37:16,662.662 INFO    ] ================================================
[2026-06-22 12:37:17,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:37:17
[2026-06-22 12:37:17,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:37:18,224.224 INFO    ] Initializing speech engine...
[2026-06-22 12:37:18,232.232 INFO    ] 2026-06-22 12:37:18
[2026-06-22 12:37:18,517.517 INFO    ] 2026-06-22 12:37:18
[2026-06-22 12:37:18,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:37:18,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:37:18,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:37:19,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:37:19,055.055 INFO    ] time= 22/06/2026 12:37:19
[2026-06-22 12:37:19,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:37:19,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:37:19,211.211 INFO    ] No existing commands found in stream
[2026-06-22 12:37:24,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:37:24,244.244 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-22 12:37:25,494.494 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:37:25,497.497 INFO    ] Checking for system updates...
[2026-06-22 12:37:25,535.535 INFO    ] 200
[2026-06-22 12:37:25,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:37:25,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:37:25,597.597 INFO    ] No update needed
[2026-06-22 12:37:25,599.599 INFO    ] Checking for camera pi updates...
[2026-06-22 12:37:25,636.636 INFO    ] 200
[2026-06-22 12:37:25,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:37:25,682.682 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:37:25,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:37:25,766.766 INFO    ] No camera update needed
[2026-06-22 12:37:25,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:37:25,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:37:25,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:37:25,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:37:27,822.822 INFO    ] ================================================
[2026-06-22 12:37:27,837.837 INFO    ] Launching Daemon at Mon Jun 22 12:37:27 IST 2026
[2026-06-22 12:37:27,848.848 INFO    ] ================================================
[2026-06-22 12:37:28,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:37:28
[2026-06-22 12:37:28,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:37:29,170.170 INFO    ] Initializing speech engine...
[2026-06-22 12:37:29,176.176 INFO    ] 2026-06-22 12:37:29
[2026-06-22 12:37:29,468.468 INFO    ] 2026-06-22 12:37:29
[2026-06-22 12:37:29,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:37:29,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:37:29,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:37:29,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:37:29,883.883 INFO    ] time= 22/06/2026 12:37:29
[2026-06-22 12:37:29,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:37:29,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:37:30,074.074 INFO    ] No existing commands found in stream
[2026-06-22 12:37:35,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:37:35,102.102 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-22 12:37:36,623.623 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:37:36,626.626 INFO    ] Checking for system updates...
[2026-06-22 12:37:36,665.665 INFO    ] 200
[2026-06-22 12:37:36,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:37:36,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:37:36,723.723 INFO    ] No update needed
[2026-06-22 12:37:36,726.726 INFO    ] Checking for camera pi updates...
[2026-06-22 12:37:36,763.763 INFO    ] 200
[2026-06-22 12:37:36,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:37:36,806.806 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:37:36,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:37:36,914.914 INFO    ] No camera update needed
[2026-06-22 12:37:36,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:37:36,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:37:36,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:37:36,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:37:38,969.969 INFO    ] ================================================
[2026-06-22 12:37:38,984.984 INFO    ] Launching Daemon at Mon Jun 22 12:37:38 IST 2026
[2026-06-22 12:37:39,995.995 INFO    ] ================================================
[2026-06-22 12:37:39,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:37:39
[2026-06-22 12:37:40,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:37:40,326.326 INFO    ] Initializing speech engine...
[2026-06-22 12:37:40,336.336 INFO    ] 2026-06-22 12:37:40
[2026-06-22 12:37:40,598.598 INFO    ] 2026-06-22 12:37:40
[2026-06-22 12:37:40,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:37:40,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:37:40,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:37:41,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:37:41,101.101 INFO    ] time= 22/06/2026 12:37:41
[2026-06-22 12:37:41,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:37:41,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:37:41,278.278 INFO    ] No existing commands found in stream
[2026-06-22 12:37:46,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:37:46,307.307 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-22 12:37:49,056.056 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:37:49,059.059 INFO    ] Checking for system updates...
[2026-06-22 12:37:49,094.094 INFO    ] 200
[2026-06-22 12:37:49,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:37:49,154.154 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:37:49,157.157 INFO    ] No update needed
[2026-06-22 12:37:49,159.159 INFO    ] Checking for camera pi updates...
[2026-06-22 12:37:49,193.193 INFO    ] 200
[2026-06-22 12:37:49,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:37:49,236.236 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:37:49,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:37:49,327.327 INFO    ] No camera update needed
[2026-06-22 12:37:49,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:37:49,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:37:49,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:37:49,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:37:51,383.383 INFO    ] ================================================
[2026-06-22 12:37:51,398.398 INFO    ] Launching Daemon at Mon Jun 22 12:37:51 IST 2026
[2026-06-22 12:37:51,409.409 INFO    ] ================================================
[2026-06-22 12:37:51,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:37:51
[2026-06-22 12:37:52,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:37:52,824.824 INFO    ] Initializing speech engine...
[2026-06-22 12:37:52,833.833 INFO    ] 2026-06-22 12:37:52
[2026-06-22 12:37:53,079.079 INFO    ] 2026-06-22 12:37:53
[2026-06-22 12:37:53,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:37:53,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:37:53,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:37:53,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:37:53,548.548 INFO    ] time= 22/06/2026 12:37:53
[2026-06-22 12:37:53,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:37:53,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:37:53,763.763 INFO    ] No existing commands found in stream
[2026-06-22 12:37:58,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:37:58,796.796 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-22 12:37:59,871.871 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:37:59,872.872 INFO    ] Checking for system updates...
[2026-06-22 12:37:59,894.894 INFO    ] 200
[2026-06-22 12:37:59,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:37:59,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:37:59,928.928 INFO    ] No update needed
[2026-06-22 12:37:59,929.929 INFO    ] Checking for camera pi updates...
[2026-06-22 12:37:59,948.948 INFO    ] 200
[2026-06-22 12:37:59,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:37:59,983.983 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:38:00,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:38:00,066.066 INFO    ] No camera update needed
[2026-06-22 12:38:00,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:38:00,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:38:00,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:38:00,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:38:02,129.129 INFO    ] ================================================
[2026-06-22 12:38:02,150.150 INFO    ] Launching Daemon at Mon Jun 22 12:38:02 IST 2026
[2026-06-22 12:38:02,165.165 INFO    ] ================================================
[2026-06-22 12:38:02,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:38:02
[2026-06-22 12:38:03,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:38:03,849.849 INFO    ] Initializing speech engine...
[2026-06-22 12:38:03,859.859 INFO    ] 2026-06-22 12:38:03
[2026-06-22 12:38:04,130.130 INFO    ] 2026-06-22 12:38:04
[2026-06-22 12:38:04,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:38:04,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:38:04,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:38:04,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:38:04,679.679 INFO    ] time= 22/06/2026 12:38:04
[2026-06-22 12:38:04,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:38:04,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:38:04,837.837 INFO    ] No existing commands found in stream
[2026-06-22 12:38:09,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:38:09,856.856 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-22 12:38:11,574.574 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:38:11,577.577 INFO    ] Checking for system updates...
[2026-06-22 12:38:11,615.615 INFO    ] 200
[2026-06-22 12:38:11,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:38:11,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:38:11,680.680 INFO    ] No update needed
[2026-06-22 12:38:11,682.682 INFO    ] Checking for camera pi updates...
[2026-06-22 12:38:11,717.717 INFO    ] 200
[2026-06-22 12:38:11,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:38:11,766.766 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:38:11,850.850 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:38:11,852.852 INFO    ] No camera update needed
[2026-06-22 12:38:11,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:38:11,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:38:11,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:38:11,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:38:13,910.910 INFO    ] ================================================
[2026-06-22 12:38:13,925.925 INFO    ] Launching Daemon at Mon Jun 22 12:38:13 IST 2026
[2026-06-22 12:38:13,936.936 INFO    ] ================================================
[2026-06-22 12:38:14,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:38:14
[2026-06-22 12:38:14,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:38:15,249.249 INFO    ] Initializing speech engine...
[2026-06-22 12:38:15,256.256 INFO    ] 2026-06-22 12:38:15
[2026-06-22 12:38:15,547.547 INFO    ] 2026-06-22 12:38:15
[2026-06-22 12:38:15,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:38:15,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:38:15,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:38:15,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:38:15,961.961 INFO    ] time= 22/06/2026 12:38:15
[2026-06-22 12:38:15,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:38:15,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:38:16,134.134 INFO    ] No existing commands found in stream
[2026-06-22 12:38:21,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:38:21,162.162 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-22 12:38:23,503.503 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:38:23,506.506 INFO    ] Checking for system updates...
[2026-06-22 12:38:23,545.545 INFO    ] 200
[2026-06-22 12:38:23,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:38:23,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:38:23,608.608 INFO    ] No update needed
[2026-06-22 12:38:23,611.611 INFO    ] Checking for camera pi updates...
[2026-06-22 12:38:23,648.648 INFO    ] 200
[2026-06-22 12:38:23,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:38:23,695.695 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:38:23,786.786 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:38:23,789.789 INFO    ] No camera update needed
[2026-06-22 12:38:23,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:38:23,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:38:23,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:38:23,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:38:25,849.849 INFO    ] ================================================
[2026-06-22 12:38:25,864.864 INFO    ] Launching Daemon at Mon Jun 22 12:38:25 IST 2026
[2026-06-22 12:38:25,875.875 INFO    ] ================================================
[2026-06-22 12:38:26,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:38:26
[2026-06-22 12:38:27,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:38:27,313.313 INFO    ] Initializing speech engine...
[2026-06-22 12:38:27,328.328 INFO    ] 2026-06-22 12:38:27
[2026-06-22 12:38:27,598.598 INFO    ] 2026-06-22 12:38:27
[2026-06-22 12:38:27,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:38:27,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:38:27,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:38:28,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:38:28,121.121 INFO    ] time= 22/06/2026 12:38:28
[2026-06-22 12:38:28,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:38:28,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:38:28,265.265 INFO    ] No existing commands found in stream
[2026-06-22 12:38:33,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:38:33,298.298 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-22 12:38:34,884.884 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:38:34,887.887 INFO    ] Checking for system updates...
[2026-06-22 12:38:34,924.924 INFO    ] 200
[2026-06-22 12:38:34,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:38:34,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:38:34,986.986 INFO    ] No update needed
[2026-06-22 12:38:34,989.989 INFO    ] Checking for camera pi updates...
[2026-06-22 12:38:35,026.026 INFO    ] 200
[2026-06-22 12:38:35,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:38:35,074.074 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:38:35,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:38:35,160.160 INFO    ] No camera update needed
[2026-06-22 12:38:35,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:38:35,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:38:35,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:38:35,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:38:37,220.220 INFO    ] ================================================
[2026-06-22 12:38:37,235.235 INFO    ] Launching Daemon at Mon Jun 22 12:38:37 IST 2026
[2026-06-22 12:38:37,245.245 INFO    ] ================================================
[2026-06-22 12:38:37,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:38:37
[2026-06-22 12:38:38,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:38:38,623.623 INFO    ] Initializing speech engine...
[2026-06-22 12:38:38,633.633 INFO    ] 2026-06-22 12:38:38
[2026-06-22 12:38:38,881.881 INFO    ] 2026-06-22 12:38:38
[2026-06-22 12:38:38,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:38:39,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:38:39,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:38:39,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:38:39,356.356 INFO    ] time= 22/06/2026 12:38:39
[2026-06-22 12:38:39,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:38:39,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:38:39,598.598 INFO    ] No existing commands found in stream
[2026-06-22 12:38:44,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:38:44,616.616 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-22 12:38:46,095.095 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:38:46,097.097 INFO    ] Checking for system updates...
[2026-06-22 12:38:46,117.117 INFO    ] 200
[2026-06-22 12:38:46,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:38:46,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:38:46,151.151 INFO    ] No update needed
[2026-06-22 12:38:46,152.152 INFO    ] Checking for camera pi updates...
[2026-06-22 12:38:46,172.172 INFO    ] 200
[2026-06-22 12:38:46,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:38:46,216.216 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:38:46,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:38:46,402.402 INFO    ] No camera update needed
[2026-06-22 12:38:46,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:38:46,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:38:46,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:38:46,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:38:48,460.460 INFO    ] ================================================
[2026-06-22 12:38:48,476.476 INFO    ] Launching Daemon at Mon Jun 22 12:38:48 IST 2026
[2026-06-22 12:38:48,487.487 INFO    ] ================================================
[2026-06-22 12:38:49,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:38:49
[2026-06-22 12:38:49,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:38:49,972.972 INFO    ] Initializing speech engine...
[2026-06-22 12:38:49,979.979 INFO    ] 2026-06-22 12:38:49
[2026-06-22 12:38:50,255.255 INFO    ] 2026-06-22 12:38:50
[2026-06-22 12:38:50,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:38:50,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:38:50,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:38:50,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:38:50,756.756 INFO    ] time= 22/06/2026 12:38:50
[2026-06-22 12:38:50,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:38:50,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:38:50,964.964 INFO    ] No existing commands found in stream
[2026-06-22 12:38:55,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:38:55,991.991 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-22 12:38:58,533.533 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:38:58,537.537 INFO    ] Checking for system updates...
[2026-06-22 12:38:58,574.574 INFO    ] 200
[2026-06-22 12:38:58,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:38:58,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:38:58,641.641 INFO    ] No update needed
[2026-06-22 12:38:58,644.644 INFO    ] Checking for camera pi updates...
[2026-06-22 12:38:58,682.682 INFO    ] 200
[2026-06-22 12:38:58,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:38:58,732.732 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:38:58,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:38:58,841.841 INFO    ] No camera update needed
[2026-06-22 12:38:58,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:38:58,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:38:58,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:38:58,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:39:00,900.900 INFO    ] ================================================
[2026-06-22 12:39:00,916.916 INFO    ] Launching Daemon at Mon Jun 22 12:39:00 IST 2026
[2026-06-22 12:39:00,926.926 INFO    ] ================================================
[2026-06-22 12:39:01,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:39:01
[2026-06-22 12:39:02,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:39:02,641.641 INFO    ] Initializing speech engine...
[2026-06-22 12:39:02,650.650 INFO    ] 2026-06-22 12:39:02
[2026-06-22 12:39:02,936.936 INFO    ] 2026-06-22 12:39:02
[2026-06-22 12:39:03,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:39:03,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:39:03,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:39:03,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:39:03,481.481 INFO    ] time= 22/06/2026 12:39:03
[2026-06-22 12:39:03,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:39:03,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:39:03,696.696 INFO    ] No existing commands found in stream
[2026-06-22 12:39:08,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:39:08,711.711 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-22 12:39:12,607.607 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:39:12,611.611 INFO    ] Checking for system updates...
[2026-06-22 12:39:12,649.649 INFO    ] 200
[2026-06-22 12:39:12,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:39:12,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:39:12,709.709 INFO    ] No update needed
[2026-06-22 12:39:12,711.711 INFO    ] Checking for camera pi updates...
[2026-06-22 12:39:12,746.746 INFO    ] 200
[2026-06-22 12:39:12,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:39:12,788.788 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:39:12,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:39:12,886.886 INFO    ] No camera update needed
[2026-06-22 12:39:12,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:39:12,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:39:12,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:39:12,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:39:14,941.941 INFO    ] ================================================
[2026-06-22 12:39:14,956.956 INFO    ] Launching Daemon at Mon Jun 22 12:39:14 IST 2026
[2026-06-22 12:39:14,966.966 INFO    ] ================================================
[2026-06-22 12:39:15,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:39:15
[2026-06-22 12:39:16,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:39:16,369.369 INFO    ] Initializing speech engine...
[2026-06-22 12:39:16,377.377 INFO    ] 2026-06-22 12:39:16
[2026-06-22 12:39:16,638.638 INFO    ] 2026-06-22 12:39:16
[2026-06-22 12:39:16,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:39:16,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:39:16,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:39:16,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:39:16,997.997 INFO    ] time= 22/06/2026 12:39:16
[2026-06-22 12:39:17,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:39:17,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:39:17,194.194 INFO    ] No existing commands found in stream
[2026-06-22 12:39:22,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:39:22,207.207 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-22 12:39:26,558.558 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:39:26,560.560 INFO    ] Checking for system updates...
[2026-06-22 12:39:26,601.601 INFO    ] 200
[2026-06-22 12:39:26,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:39:26,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:39:26,666.666 INFO    ] No update needed
[2026-06-22 12:39:26,669.669 INFO    ] Checking for camera pi updates...
[2026-06-22 12:39:26,705.705 INFO    ] 200
[2026-06-22 12:39:26,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:39:26,748.748 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:39:26,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:39:26,825.825 INFO    ] No camera update needed
[2026-06-22 12:39:26,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:39:26,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:39:26,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:39:26,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:39:28,884.884 INFO    ] ================================================
[2026-06-22 12:39:28,899.899 INFO    ] Launching Daemon at Mon Jun 22 12:39:28 IST 2026
[2026-06-22 12:39:28,910.910 INFO    ] ================================================
[2026-06-22 12:39:29,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:39:29
[2026-06-22 12:39:29,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:39:30,245.245 INFO    ] Initializing speech engine...
[2026-06-22 12:39:30,260.260 INFO    ] 2026-06-22 12:39:30
[2026-06-22 12:39:30,527.527 INFO    ] 2026-06-22 12:39:30
[2026-06-22 12:39:30,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:39:30,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:39:30,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:39:30,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:39:31,035.035 INFO    ] time= 22/06/2026 12:39:30
[2026-06-22 12:39:31,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:39:31,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:39:31,250.250 INFO    ] No existing commands found in stream
[2026-06-22 12:39:36,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:39:36,282.282 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-22 12:39:36,956.956 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:39:36,959.959 INFO    ] Checking for system updates...
[2026-06-22 12:39:37,011.011 INFO    ] 200
[2026-06-22 12:39:37,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:39:37,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:39:37,077.077 INFO    ] No update needed
[2026-06-22 12:39:37,080.080 INFO    ] Checking for camera pi updates...
[2026-06-22 12:39:37,117.117 INFO    ] 200
[2026-06-22 12:39:37,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:39:37,170.170 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:39:37,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:39:37,233.233 INFO    ] No camera update needed
[2026-06-22 12:39:37,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:39:37,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:39:37,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:39:37,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:39:39,293.293 INFO    ] ================================================
[2026-06-22 12:39:39,308.308 INFO    ] Launching Daemon at Mon Jun 22 12:39:39 IST 2026
[2026-06-22 12:39:39,319.319 INFO    ] ================================================
[2026-06-22 12:39:39,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:39:39
[2026-06-22 12:39:40,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:39:40,797.797 INFO    ] Initializing speech engine...
[2026-06-22 12:39:40,811.811 INFO    ] 2026-06-22 12:39:40
[2026-06-22 12:39:41,129.129 INFO    ] 2026-06-22 12:39:41
[2026-06-22 12:39:41,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:39:41,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:39:41,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:39:41,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:39:41,656.656 INFO    ] time= 22/06/2026 12:39:41
[2026-06-22 12:39:41,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:39:41,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:39:41,794.794 INFO    ] No existing commands found in stream
[2026-06-22 12:39:46,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:39:46,831.831 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-22 12:39:50,518.518 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:39:50,521.521 INFO    ] Checking for system updates...
[2026-06-22 12:39:50,564.564 INFO    ] 200
[2026-06-22 12:39:50,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:39:50,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:39:50,626.626 INFO    ] No update needed
[2026-06-22 12:39:50,629.629 INFO    ] Checking for camera pi updates...
[2026-06-22 12:39:50,667.667 INFO    ] 200
[2026-06-22 12:39:50,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:39:50,710.710 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:39:50,797.797 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:39:50,800.800 INFO    ] No camera update needed
[2026-06-22 12:39:50,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:39:50,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:39:50,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:39:50,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:39:52,855.855 INFO    ] ================================================
[2026-06-22 12:39:52,869.869 INFO    ] Launching Daemon at Mon Jun 22 12:39:52 IST 2026
[2026-06-22 12:39:52,880.880 INFO    ] ================================================
[2026-06-22 12:39:53,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:39:53
[2026-06-22 12:39:53,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:39:54,243.243 INFO    ] Initializing speech engine...
[2026-06-22 12:39:54,253.253 INFO    ] 2026-06-22 12:39:54
[2026-06-22 12:39:54,506.506 INFO    ] 2026-06-22 12:39:54
[2026-06-22 12:39:54,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:39:54,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:39:54,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:39:55,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:39:55,076.076 INFO    ] time= 22/06/2026 12:39:55
[2026-06-22 12:39:55,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:39:55,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:39:55,218.218 INFO    ] No existing commands found in stream
[2026-06-22 12:40:00,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:40:00,246.246 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-22 12:40:01,963.963 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:40:01,971.971 INFO    ] Checking for system updates...
[2026-06-22 12:40:02,063.063 INFO    ] 200
[2026-06-22 12:40:02,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:40:02,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:40:02,153.153 INFO    ] No update needed
[2026-06-22 12:40:02,163.163 INFO    ] Checking for camera pi updates...
[2026-06-22 12:40:02,208.208 INFO    ] 200
[2026-06-22 12:40:02,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:40:02,261.261 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:40:02,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:40:02,393.393 INFO    ] No camera update needed
[2026-06-22 12:40:02,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:40:02,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:40:02,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:40:02,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:40:04,458.458 INFO    ] ================================================
[2026-06-22 12:40:04,473.473 INFO    ] Launching Daemon at Mon Jun 22 12:40:04 IST 2026
[2026-06-22 12:40:04,484.484 INFO    ] ================================================
[2026-06-22 12:40:05,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:40:05
[2026-06-22 12:40:05,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:40:05,938.938 INFO    ] Initializing speech engine...
[2026-06-22 12:40:05,956.956 INFO    ] 2026-06-22 12:40:05
[2026-06-22 12:40:06,210.210 INFO    ] 2026-06-22 12:40:06
[2026-06-22 12:40:06,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:40:06,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:40:06,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:40:06,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:40:06,739.739 INFO    ] time= 22/06/2026 12:40:06
[2026-06-22 12:40:06,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:40:06,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:40:06,945.945 INFO    ] No existing commands found in stream
[2026-06-22 12:40:11,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:40:11,972.972 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-22 12:40:16,266.266 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:40:16,269.269 INFO    ] Checking for system updates...
[2026-06-22 12:40:16,310.310 INFO    ] 200
[2026-06-22 12:40:16,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:40:16,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:40:16,371.371 INFO    ] No update needed
[2026-06-22 12:40:16,374.374 INFO    ] Checking for camera pi updates...
[2026-06-22 12:40:16,415.415 INFO    ] 200
[2026-06-22 12:40:16,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:40:16,465.465 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:40:16,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:40:16,550.550 INFO    ] No camera update needed
[2026-06-22 12:40:16,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:40:16,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:40:16,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:40:16,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:40:18,611.611 INFO    ] ================================================
[2026-06-22 12:40:18,626.626 INFO    ] Launching Daemon at Mon Jun 22 12:40:18 IST 2026
[2026-06-22 12:40:18,637.637 INFO    ] ================================================
[2026-06-22 12:40:19,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:40:19
[2026-06-22 12:40:19,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:40:20,276.276 INFO    ] Initializing speech engine...
[2026-06-22 12:40:20,283.283 INFO    ] 2026-06-22 12:40:20
[2026-06-22 12:40:20,559.559 INFO    ] 2026-06-22 12:40:20
[2026-06-22 12:40:20,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:40:20,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:40:20,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:40:20,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:40:21,064.064 INFO    ] time= 22/06/2026 12:40:21
[2026-06-22 12:40:21,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:40:21,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:40:21,283.283 INFO    ] No existing commands found in stream
[2026-06-22 12:40:26,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:40:26,305.305 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-22 12:40:29,765.765 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:40:29,767.767 INFO    ] Checking for system updates...
[2026-06-22 12:40:29,793.793 INFO    ] 200
[2026-06-22 12:40:29,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:40:29,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:40:29,860.860 INFO    ] No update needed
[2026-06-22 12:40:29,863.863 INFO    ] Checking for camera pi updates...
[2026-06-22 12:40:29,904.904 INFO    ] 200
[2026-06-22 12:40:29,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:40:29,958.958 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:40:30,052.052 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:40:30,055.055 INFO    ] No camera update needed
[2026-06-22 12:40:30,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:40:30,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:40:30,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:40:30,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:40:32,117.117 INFO    ] ================================================
[2026-06-22 12:40:32,133.133 INFO    ] Launching Daemon at Mon Jun 22 12:40:32 IST 2026
[2026-06-22 12:40:32,145.145 INFO    ] ================================================
[2026-06-22 12:40:32,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:40:32
[2026-06-22 12:40:33,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:40:33,607.607 INFO    ] Initializing speech engine...
[2026-06-22 12:40:33,626.626 INFO    ] 2026-06-22 12:40:33
[2026-06-22 12:40:33,882.882 INFO    ] 2026-06-22 12:40:33
[2026-06-22 12:40:33,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:40:34,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:40:34,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:40:34,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:40:34,440.440 INFO    ] time= 22/06/2026 12:40:34
[2026-06-22 12:40:34,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:40:34,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:40:34,595.595 INFO    ] No existing commands found in stream
[2026-06-22 12:40:39,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:40:39,617.617 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-22 12:40:40,413.413 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:40:40,416.416 INFO    ] Checking for system updates...
[2026-06-22 12:40:40,453.453 INFO    ] 200
[2026-06-22 12:40:40,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:40:40,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:40:40,516.516 INFO    ] No update needed
[2026-06-22 12:40:40,518.518 INFO    ] Checking for camera pi updates...
[2026-06-22 12:40:40,552.552 INFO    ] 200
[2026-06-22 12:40:40,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:40:40,598.598 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:40:40,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:40:40,700.700 INFO    ] No camera update needed
[2026-06-22 12:40:40,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:40:40,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:40:40,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:40:40,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:40:42,755.755 INFO    ] ================================================
[2026-06-22 12:40:42,770.770 INFO    ] Launching Daemon at Mon Jun 22 12:40:42 IST 2026
[2026-06-22 12:40:42,781.781 INFO    ] ================================================
[2026-06-22 12:40:43,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:40:43
[2026-06-22 12:40:43,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:40:44,096.096 INFO    ] Initializing speech engine...
[2026-06-22 12:40:44,104.104 INFO    ] 2026-06-22 12:40:44
[2026-06-22 12:40:44,390.390 INFO    ] 2026-06-22 12:40:44
[2026-06-22 12:40:44,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:40:44,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:40:44,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:40:44,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:40:44,794.794 INFO    ] time= 22/06/2026 12:40:44
[2026-06-22 12:40:44,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:40:44,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:40:44,978.978 INFO    ] No existing commands found in stream
[2026-06-22 12:40:50,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:40:50,006.006 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-22 12:40:54,155.155 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:40:54,158.158 INFO    ] Checking for system updates...
[2026-06-22 12:40:54,195.195 INFO    ] 200
[2026-06-22 12:40:54,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:40:54,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:40:54,257.257 INFO    ] No update needed
[2026-06-22 12:40:54,260.260 INFO    ] Checking for camera pi updates...
[2026-06-22 12:40:54,297.297 INFO    ] 200
[2026-06-22 12:40:54,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:40:54,339.339 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:40:54,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:40:54,521.521 INFO    ] No camera update needed
[2026-06-22 12:40:54,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:40:54,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:40:54,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:40:54,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:40:56,576.576 INFO    ] ================================================
[2026-06-22 12:40:56,591.591 INFO    ] Launching Daemon at Mon Jun 22 12:40:56 IST 2026
[2026-06-22 12:40:56,601.601 INFO    ] ================================================
[2026-06-22 12:40:57,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:40:57
[2026-06-22 12:40:57,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:40:58,031.031 INFO    ] Initializing speech engine...
[2026-06-22 12:40:58,038.038 INFO    ] 2026-06-22 12:40:58
[2026-06-22 12:40:58,308.308 INFO    ] 2026-06-22 12:40:58
[2026-06-22 12:40:58,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:40:58,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:40:58,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:40:58,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:40:58,853.853 INFO    ] time= 22/06/2026 12:40:58
[2026-06-22 12:40:58,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:40:58,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:40:59,009.009 INFO    ] No existing commands found in stream
[2026-06-22 12:41:04,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:41:04,031.031 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-22 12:41:04,707.707 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:41:04,710.710 INFO    ] Checking for system updates...
[2026-06-22 12:41:04,749.749 INFO    ] 200
[2026-06-22 12:41:04,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:41:04,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:41:04,807.807 INFO    ] No update needed
[2026-06-22 12:41:04,810.810 INFO    ] Checking for camera pi updates...
[2026-06-22 12:41:04,844.844 INFO    ] 200
[2026-06-22 12:41:04,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:41:04,887.887 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:41:04,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:41:04,973.973 INFO    ] No camera update needed
[2026-06-22 12:41:04,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:41:04,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:41:04,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:41:04,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:41:07,031.031 INFO    ] ================================================
[2026-06-22 12:41:07,047.047 INFO    ] Launching Daemon at Mon Jun 22 12:41:07 IST 2026
[2026-06-22 12:41:07,058.058 INFO    ] ================================================
[2026-06-22 12:41:07,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:41:07
[2026-06-22 12:41:08,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:41:08,520.520 INFO    ] Initializing speech engine...
[2026-06-22 12:41:08,527.527 INFO    ] 2026-06-22 12:41:08
[2026-06-22 12:41:08,787.787 INFO    ] 2026-06-22 12:41:08
[2026-06-22 12:41:08,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:41:09,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:41:09,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:41:09,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:41:09,263.263 INFO    ] time= 22/06/2026 12:41:09
[2026-06-22 12:41:09,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:41:09,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:41:09,482.482 INFO    ] No existing commands found in stream
[2026-06-22 12:41:14,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:41:14,501.501 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-22 12:41:15,953.953 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:41:15,956.956 INFO    ] Checking for system updates...
[2026-06-22 12:41:15,996.996 INFO    ] 200
[2026-06-22 12:41:15,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:41:16,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:41:16,054.054 INFO    ] No update needed
[2026-06-22 12:41:16,056.056 INFO    ] Checking for camera pi updates...
[2026-06-22 12:41:16,090.090 INFO    ] 200
[2026-06-22 12:41:16,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:41:16,139.139 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:41:16,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:41:16,217.217 INFO    ] No camera update needed
[2026-06-22 12:41:16,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:41:16,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:41:16,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:41:16,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:41:18,275.275 INFO    ] ================================================
[2026-06-22 12:41:18,291.291 INFO    ] Launching Daemon at Mon Jun 22 12:41:18 IST 2026
[2026-06-22 12:41:18,303.303 INFO    ] ================================================
[2026-06-22 12:41:18,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:41:18
[2026-06-22 12:41:19,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:41:19,687.687 INFO    ] Initializing speech engine...
[2026-06-22 12:41:19,710.710 INFO    ] 2026-06-22 12:41:19
[2026-06-22 12:41:19,975.975 INFO    ] 2026-06-22 12:41:19
[2026-06-22 12:41:20,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:41:20,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:41:20,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:41:20,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:41:20,523.523 INFO    ] time= 22/06/2026 12:41:20
[2026-06-22 12:41:20,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:41:20,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:41:20,694.694 INFO    ] No existing commands found in stream
[2026-06-22 12:41:25,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:41:25,727.727 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-22 12:41:27,447.447 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:41:27,450.450 INFO    ] Checking for system updates...
[2026-06-22 12:41:27,490.490 INFO    ] 200
[2026-06-22 12:41:27,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:41:27,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:41:27,547.547 INFO    ] No update needed
[2026-06-22 12:41:27,550.550 INFO    ] Checking for camera pi updates...
[2026-06-22 12:41:27,584.584 INFO    ] 200
[2026-06-22 12:41:27,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:41:27,631.631 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:41:27,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:41:27,724.724 INFO    ] No camera update needed
[2026-06-22 12:41:27,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:41:27,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:41:27,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:41:27,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:41:29,782.782 INFO    ] ================================================
[2026-06-22 12:41:29,797.797 INFO    ] Launching Daemon at Mon Jun 22 12:41:29 IST 2026
[2026-06-22 12:41:29,808.808 INFO    ] ================================================
[2026-06-22 12:41:30,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:41:30
[2026-06-22 12:41:31,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:41:31,405.405 INFO    ] Initializing speech engine...
[2026-06-22 12:41:31,408.408 INFO    ] 2026-06-22 12:41:31
[2026-06-22 12:41:31,688.688 INFO    ] 2026-06-22 12:41:31
[2026-06-22 12:41:31,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:41:31,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:41:31,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:41:32,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:41:32,222.222 INFO    ] time= 22/06/2026 12:41:32
[2026-06-22 12:41:32,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:41:32,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:41:32,437.437 INFO    ] No existing commands found in stream
[2026-06-22 12:41:37,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:41:37,466.466 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-22 12:41:40,006.006 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:41:40,008.008 INFO    ] Checking for system updates...
[2026-06-22 12:41:40,048.048 INFO    ] 200
[2026-06-22 12:41:40,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:41:40,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:41:40,106.106 INFO    ] No update needed
[2026-06-22 12:41:40,108.108 INFO    ] Checking for camera pi updates...
[2026-06-22 12:41:40,145.145 INFO    ] 200
[2026-06-22 12:41:40,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:41:40,189.189 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:41:40,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:41:40,271.271 INFO    ] No camera update needed
[2026-06-22 12:41:40,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:41:40,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:41:40,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:41:40,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:41:42,326.326 INFO    ] ================================================
[2026-06-22 12:41:42,342.342 INFO    ] Launching Daemon at Mon Jun 22 12:41:42 IST 2026
[2026-06-22 12:41:42,353.353 INFO    ] ================================================
[2026-06-22 12:41:42,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:41:42
[2026-06-22 12:41:43,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:41:43,721.721 INFO    ] Initializing speech engine...
[2026-06-22 12:41:43,731.731 INFO    ] 2026-06-22 12:41:43
[2026-06-22 12:41:43,980.980 INFO    ] 2026-06-22 12:41:43
[2026-06-22 12:41:44,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:41:44,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:41:44,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:41:44,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:41:44,482.482 INFO    ] time= 22/06/2026 12:41:44
[2026-06-22 12:41:44,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:41:44,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:41:44,679.679 INFO    ] No existing commands found in stream
[2026-06-22 12:41:49,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:41:49,707.707 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-22 12:41:53,134.134 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:41:53,137.137 INFO    ] Checking for system updates...
[2026-06-22 12:41:53,172.172 INFO    ] 200
[2026-06-22 12:41:53,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:41:53,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:41:53,230.230 INFO    ] No update needed
[2026-06-22 12:41:53,233.233 INFO    ] Checking for camera pi updates...
[2026-06-22 12:41:53,269.269 INFO    ] 200
[2026-06-22 12:41:53,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:41:53,313.313 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:41:53,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:41:53,398.398 INFO    ] No camera update needed
[2026-06-22 12:41:53,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:41:53,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:41:53,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:41:53,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:41:55,456.456 INFO    ] ================================================
[2026-06-22 12:41:55,472.472 INFO    ] Launching Daemon at Mon Jun 22 12:41:55 IST 2026
[2026-06-22 12:41:55,484.484 INFO    ] ================================================
[2026-06-22 12:41:56,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:41:56
[2026-06-22 12:41:56,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:41:57,139.139 INFO    ] Initializing speech engine...
[2026-06-22 12:41:57,151.151 INFO    ] 2026-06-22 12:41:57
[2026-06-22 12:41:57,461.461 INFO    ] 2026-06-22 12:41:57
[2026-06-22 12:41:57,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:41:57,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:41:57,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:41:57,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:41:57,971.971 INFO    ] time= 22/06/2026 12:41:57
[2026-06-22 12:41:57,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:41:58,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:41:58,136.136 INFO    ] No existing commands found in stream
[2026-06-22 12:42:03,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:42:03,169.169 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-22 12:42:05,241.241 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:42:05,245.245 INFO    ] Checking for system updates...
[2026-06-22 12:42:05,285.285 INFO    ] 200
[2026-06-22 12:42:05,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:42:05,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:42:05,342.342 INFO    ] No update needed
[2026-06-22 12:42:05,345.345 INFO    ] Checking for camera pi updates...
[2026-06-22 12:42:05,383.383 INFO    ] 200
[2026-06-22 12:42:05,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:42:05,427.427 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:42:05,511.511 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:42:05,513.513 INFO    ] No camera update needed
[2026-06-22 12:42:05,516.516 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:42:05,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:42:05,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:42:05,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:42:07,570.570 INFO    ] ================================================
[2026-06-22 12:42:07,585.585 INFO    ] Launching Daemon at Mon Jun 22 12:42:07 IST 2026
[2026-06-22 12:42:07,596.596 INFO    ] ================================================
[2026-06-22 12:42:08,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:42:08
[2026-06-22 12:42:08,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:42:08,952.952 INFO    ] Initializing speech engine...
[2026-06-22 12:42:08,960.960 INFO    ] 2026-06-22 12:42:08
[2026-06-22 12:42:09,216.216 INFO    ] 2026-06-22 12:42:09
[2026-06-22 12:42:09,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:42:09,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:42:09,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:42:09,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:42:09,689.689 INFO    ] time= 22/06/2026 12:42:09
[2026-06-22 12:42:09,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:42:09,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:42:09,915.915 INFO    ] No existing commands found in stream
[2026-06-22 12:42:14,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:42:14,932.932 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-22 12:42:19,298.298 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:42:19,300.300 INFO    ] Checking for system updates...
[2026-06-22 12:42:19,320.320 INFO    ] 200
[2026-06-22 12:42:19,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:42:19,352.352 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:42:19,355.355 INFO    ] No update needed
[2026-06-22 12:42:19,357.357 INFO    ] Checking for camera pi updates...
[2026-06-22 12:42:19,396.396 INFO    ] 200
[2026-06-22 12:42:19,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:42:19,443.443 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:42:19,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:42:19,500.500 INFO    ] No camera update needed
[2026-06-22 12:42:19,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:42:19,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:42:19,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:42:19,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:42:21,555.555 INFO    ] ================================================
[2026-06-22 12:42:21,570.570 INFO    ] Launching Daemon at Mon Jun 22 12:42:21 IST 2026
[2026-06-22 12:42:21,581.581 INFO    ] ================================================
[2026-06-22 12:42:22,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:42:22
[2026-06-22 12:42:22,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:42:23,144.144 INFO    ] Initializing speech engine...
[2026-06-22 12:42:23,156.156 INFO    ] 2026-06-22 12:42:23
[2026-06-22 12:42:23,433.433 INFO    ] 2026-06-22 12:42:23
[2026-06-22 12:42:23,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:42:23,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:42:23,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:42:23,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:42:23,985.985 INFO    ] time= 22/06/2026 12:42:23
[2026-06-22 12:42:23,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:42:24,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:42:24,153.153 INFO    ] No existing commands found in stream
[2026-06-22 12:42:29,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:42:29,192.192 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-22 12:42:30,091.091 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:42:30,094.094 INFO    ] Checking for system updates...
[2026-06-22 12:42:30,136.136 INFO    ] 200
[2026-06-22 12:42:30,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:42:30,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:42:30,200.200 INFO    ] No update needed
[2026-06-22 12:42:30,202.202 INFO    ] Checking for camera pi updates...
[2026-06-22 12:42:30,237.237 INFO    ] 200
[2026-06-22 12:42:30,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:42:30,284.284 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:42:30,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:42:30,369.369 INFO    ] No camera update needed
[2026-06-22 12:42:30,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:42:30,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:42:30,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:42:30,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:42:32,430.430 INFO    ] ================================================
[2026-06-22 12:42:32,446.446 INFO    ] Launching Daemon at Mon Jun 22 12:42:32 IST 2026
[2026-06-22 12:42:32,458.458 INFO    ] ================================================
[2026-06-22 12:42:33,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:42:33
[2026-06-22 12:42:33,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:42:33,881.881 INFO    ] Initializing speech engine...
[2026-06-22 12:42:33,894.894 INFO    ] 2026-06-22 12:42:33
[2026-06-22 12:42:34,160.160 INFO    ] 2026-06-22 12:42:34
[2026-06-22 12:42:34,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:42:34,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:42:34,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:42:34,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:42:34,689.689 INFO    ] time= 22/06/2026 12:42:34
[2026-06-22 12:42:34,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:42:34,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:42:34,895.895 INFO    ] No existing commands found in stream
[2026-06-22 12:42:39,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:42:39,926.926 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-22 12:42:43,633.633 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:42:43,636.636 INFO    ] Checking for system updates...
[2026-06-22 12:42:43,673.673 INFO    ] 200
[2026-06-22 12:42:43,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:42:43,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:42:43,740.740 INFO    ] No update needed
[2026-06-22 12:42:43,742.742 INFO    ] Checking for camera pi updates...
[2026-06-22 12:42:43,777.777 INFO    ] 200
[2026-06-22 12:42:43,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:42:43,820.820 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:42:43,899.899 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:42:43,902.902 INFO    ] No camera update needed
[2026-06-22 12:42:43,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:42:43,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:42:43,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:42:43,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:42:45,956.956 INFO    ] ================================================
[2026-06-22 12:42:45,972.972 INFO    ] Launching Daemon at Mon Jun 22 12:42:45 IST 2026
[2026-06-22 12:42:45,982.982 INFO    ] ================================================
[2026-06-22 12:42:46,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:42:46
[2026-06-22 12:42:47,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:42:47,442.442 INFO    ] Initializing speech engine...
[2026-06-22 12:42:47,451.451 INFO    ] 2026-06-22 12:42:47
[2026-06-22 12:42:47,700.700 INFO    ] 2026-06-22 12:42:47
[2026-06-22 12:42:47,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:42:47,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:42:47,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:42:48,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:42:48,158.158 INFO    ] time= 22/06/2026 12:42:48
[2026-06-22 12:42:48,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:42:48,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:42:48,327.327 INFO    ] No existing commands found in stream
[2026-06-22 12:42:53,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:42:53,341.341 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-22 12:42:55,464.464 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:42:55,465.465 INFO    ] Checking for system updates...
[2026-06-22 12:42:55,496.496 INFO    ] 200
[2026-06-22 12:42:55,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:42:55,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:42:55,562.562 INFO    ] No update needed
[2026-06-22 12:42:55,564.564 INFO    ] Checking for camera pi updates...
[2026-06-22 12:42:55,603.603 INFO    ] 200
[2026-06-22 12:42:55,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:42:55,645.645 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:42:55,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:42:55,749.749 INFO    ] No camera update needed
[2026-06-22 12:42:55,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:42:55,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:42:55,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:42:55,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:42:57,804.804 INFO    ] ================================================
[2026-06-22 12:42:57,820.820 INFO    ] Launching Daemon at Mon Jun 22 12:42:57 IST 2026
[2026-06-22 12:42:57,830.830 INFO    ] ================================================
[2026-06-22 12:42:58,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:42:58
[2026-06-22 12:42:59,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:42:59,376.376 INFO    ] Initializing speech engine...
[2026-06-22 12:42:59,390.390 INFO    ] 2026-06-22 12:42:59
[2026-06-22 12:42:59,673.673 INFO    ] 2026-06-22 12:42:59
[2026-06-22 12:42:59,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:42:59,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:42:59,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:43:00,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:43:00,213.213 INFO    ] time= 22/06/2026 12:43:00
[2026-06-22 12:43:00,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:43:00,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:43:00,371.371 INFO    ] No existing commands found in stream
[2026-06-22 12:43:05,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:43:05,393.393 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-22 12:43:06,932.932 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:43:06,935.935 INFO    ] Checking for system updates...
[2026-06-22 12:43:06,976.976 INFO    ] 200
[2026-06-22 12:43:06,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:43:07,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:43:07,035.035 INFO    ] No update needed
[2026-06-22 12:43:07,038.038 INFO    ] Checking for camera pi updates...
[2026-06-22 12:43:07,073.073 INFO    ] 200
[2026-06-22 12:43:07,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:43:07,122.122 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:43:07,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:43:07,201.201 INFO    ] No camera update needed
[2026-06-22 12:43:07,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:43:07,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:43:07,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:43:07,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:43:09,249.249 INFO    ] ================================================
[2026-06-22 12:43:09,264.264 INFO    ] Launching Daemon at Mon Jun 22 12:43:09 IST 2026
[2026-06-22 12:43:09,275.275 INFO    ] ================================================
[2026-06-22 12:43:09,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:43:09
[2026-06-22 12:43:10,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:43:10,786.786 INFO    ] Initializing speech engine...
[2026-06-22 12:43:10,799.799 INFO    ] 2026-06-22 12:43:10
[2026-06-22 12:43:11,079.079 INFO    ] 2026-06-22 12:43:11
[2026-06-22 12:43:11,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:43:11,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:43:11,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:43:11,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:43:11,625.625 INFO    ] time= 22/06/2026 12:43:11
[2026-06-22 12:43:11,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:43:11,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:43:11,783.783 INFO    ] No existing commands found in stream
[2026-06-22 12:43:16,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:43:16,811.811 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-22 12:43:19,284.284 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:43:19,288.288 INFO    ] Checking for system updates...
[2026-06-22 12:43:19,328.328 INFO    ] 200
[2026-06-22 12:43:19,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:43:19,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:43:19,388.388 INFO    ] No update needed
[2026-06-22 12:43:19,391.391 INFO    ] Checking for camera pi updates...
[2026-06-22 12:43:19,425.425 INFO    ] 200
[2026-06-22 12:43:19,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:43:19,470.470 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:43:19,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:43:19,564.564 INFO    ] No camera update needed
[2026-06-22 12:43:19,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:43:19,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:43:19,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:43:19,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:43:21,622.622 INFO    ] ================================================
[2026-06-22 12:43:21,644.644 INFO    ] Launching Daemon at Mon Jun 22 12:43:21 IST 2026
[2026-06-22 12:43:21,655.655 INFO    ] ================================================
[2026-06-22 12:43:22,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:43:22
[2026-06-22 12:43:22,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:43:23,079.079 INFO    ] Initializing speech engine...
[2026-06-22 12:43:23,092.092 INFO    ] 2026-06-22 12:43:23
[2026-06-22 12:43:23,357.357 INFO    ] 2026-06-22 12:43:23
[2026-06-22 12:43:23,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:43:23,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:43:23,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:43:23,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:43:23,854.854 INFO    ] time= 22/06/2026 12:43:23
[2026-06-22 12:43:23,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:43:23,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:43:24,056.056 INFO    ] No existing commands found in stream
[2026-06-22 12:43:29,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:43:29,083.083 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-22 12:43:32,680.680 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:43:32,682.682 INFO    ] Checking for system updates...
[2026-06-22 12:43:32,721.721 INFO    ] 200
[2026-06-22 12:43:32,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:43:32,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:43:32,785.785 INFO    ] No update needed
[2026-06-22 12:43:32,788.788 INFO    ] Checking for camera pi updates...
[2026-06-22 12:43:32,822.822 INFO    ] 200
[2026-06-22 12:43:32,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:43:32,869.869 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:43:32,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:43:32,933.933 INFO    ] No camera update needed
[2026-06-22 12:43:32,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:43:32,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:43:32,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:43:32,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:43:34,990.990 INFO    ] ================================================
[2026-06-22 12:43:35,005.005 INFO    ] Launching Daemon at Mon Jun 22 12:43:34 IST 2026
[2026-06-22 12:43:35,016.016 INFO    ] ================================================
[2026-06-22 12:43:35,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:43:35
[2026-06-22 12:43:36,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:43:36,366.366 INFO    ] Initializing speech engine...
[2026-06-22 12:43:36,375.375 INFO    ] 2026-06-22 12:43:36
[2026-06-22 12:43:36,621.621 INFO    ] 2026-06-22 12:43:36
[2026-06-22 12:43:36,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:43:36,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:43:36,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:43:37,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:43:37,117.117 INFO    ] time= 22/06/2026 12:43:37
[2026-06-22 12:43:37,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:43:37,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:43:37,334.334 INFO    ] No existing commands found in stream
[2026-06-22 12:43:42,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:43:42,359.359 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-22 12:43:46,342.342 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:43:46,345.345 INFO    ] Checking for system updates...
[2026-06-22 12:43:46,381.381 INFO    ] 200
[2026-06-22 12:43:46,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:43:46,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:43:46,439.439 INFO    ] No update needed
[2026-06-22 12:43:46,442.442 INFO    ] Checking for camera pi updates...
[2026-06-22 12:43:46,476.476 INFO    ] 200
[2026-06-22 12:43:46,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:43:46,529.529 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:43:46,636.636 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:43:46,638.638 INFO    ] No camera update needed
[2026-06-22 12:43:46,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:43:46,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:43:46,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:43:46,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:43:48,696.696 INFO    ] ================================================
[2026-06-22 12:43:48,712.712 INFO    ] Launching Daemon at Mon Jun 22 12:43:48 IST 2026
[2026-06-22 12:43:48,723.723 INFO    ] ================================================
[2026-06-22 12:43:49,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:43:49
[2026-06-22 12:43:49,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:43:50,063.063 INFO    ] Initializing speech engine...
[2026-06-22 12:43:50,077.077 INFO    ] 2026-06-22 12:43:50
[2026-06-22 12:43:50,361.361 INFO    ] 2026-06-22 12:43:50
[2026-06-22 12:43:50,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:43:50,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:43:50,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:43:50,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:43:50,774.774 INFO    ] time= 22/06/2026 12:43:50
[2026-06-22 12:43:50,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:43:50,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:43:50,911.911 INFO    ] No existing commands found in stream
[2026-06-22 12:43:55,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:43:55,944.944 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-22 12:43:57,447.447 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:43:57,448.448 INFO    ] Checking for system updates...
[2026-06-22 12:43:57,470.470 INFO    ] 200
[2026-06-22 12:43:57,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:43:57,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:43:57,506.506 INFO    ] No update needed
[2026-06-22 12:43:57,507.507 INFO    ] Checking for camera pi updates...
[2026-06-22 12:43:57,533.533 INFO    ] 200
[2026-06-22 12:43:57,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:43:57,578.578 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:43:57,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:43:57,670.670 INFO    ] No camera update needed
[2026-06-22 12:43:57,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:43:57,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:43:57,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:43:57,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:43:59,730.730 INFO    ] ================================================
[2026-06-22 12:43:59,746.746 INFO    ] Launching Daemon at Mon Jun 22 12:43:59 IST 2026
[2026-06-22 12:43:59,757.757 INFO    ] ================================================
[2026-06-22 12:44:00,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:44:00
[2026-06-22 12:44:00,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:44:01,085.085 INFO    ] Initializing speech engine...
[2026-06-22 12:44:01,093.093 INFO    ] 2026-06-22 12:44:01
[2026-06-22 12:44:01,466.466 INFO    ] 2026-06-22 12:44:01
[2026-06-22 12:44:01,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:44:01,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:44:01,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:44:01,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:44:01,896.896 INFO    ] time= 22/06/2026 12:44:01
[2026-06-22 12:44:01,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:44:01,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:44:02,029.029 INFO    ] No existing commands found in stream
[2026-06-22 12:44:07,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:44:07,069.069 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-22 12:44:08,220.220 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:44:08,222.222 INFO    ] Checking for system updates...
[2026-06-22 12:44:08,262.262 INFO    ] 200
[2026-06-22 12:44:08,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:44:08,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:44:08,321.321 INFO    ] No update needed
[2026-06-22 12:44:08,323.323 INFO    ] Checking for camera pi updates...
[2026-06-22 12:44:08,360.360 INFO    ] 200
[2026-06-22 12:44:08,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:44:08,407.407 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:44:08,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:44:08,477.477 INFO    ] No camera update needed
[2026-06-22 12:44:08,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:44:08,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:44:08,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:44:08,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:44:10,534.534 INFO    ] ================================================
[2026-06-22 12:44:10,551.551 INFO    ] Launching Daemon at Mon Jun 22 12:44:10 IST 2026
[2026-06-22 12:44:10,562.562 INFO    ] ================================================
[2026-06-22 12:44:11,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:44:11
[2026-06-22 12:44:11,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:44:11,935.935 INFO    ] Initializing speech engine...
[2026-06-22 12:44:11,945.945 INFO    ] 2026-06-22 12:44:11
[2026-06-22 12:44:12,198.198 INFO    ] 2026-06-22 12:44:12
[2026-06-22 12:44:12,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:44:12,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:44:12,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:44:12,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:44:12,692.692 INFO    ] time= 22/06/2026 12:44:12
[2026-06-22 12:44:12,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:44:12,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:44:12,906.906 INFO    ] No existing commands found in stream
[2026-06-22 12:44:17,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:44:17,924.924 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-22 12:44:19,462.462 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:44:19,465.465 INFO    ] Checking for system updates...
[2026-06-22 12:44:19,501.501 INFO    ] 200
[2026-06-22 12:44:19,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:44:19,560.560 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:44:19,563.563 INFO    ] No update needed
[2026-06-22 12:44:19,565.565 INFO    ] Checking for camera pi updates...
[2026-06-22 12:44:19,599.599 INFO    ] 200
[2026-06-22 12:44:19,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:44:19,643.643 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:44:19,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:44:19,730.730 INFO    ] No camera update needed
[2026-06-22 12:44:19,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:44:19,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:44:19,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:44:19,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:44:21,789.789 INFO    ] ================================================
[2026-06-22 12:44:21,804.804 INFO    ] Launching Daemon at Mon Jun 22 12:44:21 IST 2026
[2026-06-22 12:44:21,815.815 INFO    ] ================================================
[2026-06-22 12:44:22,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:44:22
[2026-06-22 12:44:22,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:44:23,181.181 INFO    ] Initializing speech engine...
[2026-06-22 12:44:23,190.190 INFO    ] 2026-06-22 12:44:23
[2026-06-22 12:44:23,438.438 INFO    ] 2026-06-22 12:44:23
[2026-06-22 12:44:23,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:44:23,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:44:23,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:44:23,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:44:23,995.995 INFO    ] time= 22/06/2026 12:44:23
[2026-06-22 12:44:24,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:44:24,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:44:24,149.149 INFO    ] No existing commands found in stream
[2026-06-22 12:44:29,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:44:29,163.163 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-22 12:44:30,633.633 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:44:30,635.635 INFO    ] Checking for system updates...
[2026-06-22 12:44:30,655.655 INFO    ] 200
[2026-06-22 12:44:30,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:44:30,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:44:30,689.689 INFO    ] No update needed
[2026-06-22 12:44:30,690.690 INFO    ] Checking for camera pi updates...
[2026-06-22 12:44:30,712.712 INFO    ] 200
[2026-06-22 12:44:30,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:44:30,748.748 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:44:30,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:44:30,830.830 INFO    ] No camera update needed
[2026-06-22 12:44:30,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:44:30,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:44:30,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:44:30,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:44:32,890.890 INFO    ] ================================================
[2026-06-22 12:44:32,906.906 INFO    ] Launching Daemon at Mon Jun 22 12:44:32 IST 2026
[2026-06-22 12:44:32,917.917 INFO    ] ================================================
[2026-06-22 12:44:33,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:44:33
[2026-06-22 12:44:34,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:44:34,333.333 INFO    ] Initializing speech engine...
[2026-06-22 12:44:34,343.343 INFO    ] 2026-06-22 12:44:34
[2026-06-22 12:44:34,595.595 INFO    ] 2026-06-22 12:44:34
[2026-06-22 12:44:34,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:44:34,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:44:34,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:44:35,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:44:35,105.105 INFO    ] time= 22/06/2026 12:44:35
[2026-06-22 12:44:35,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:44:35,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:44:35,236.236 INFO    ] No existing commands found in stream
[2026-06-22 12:44:40,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:44:40,269.269 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-22 12:44:42,363.363 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:44:42,365.365 INFO    ] Checking for system updates...
[2026-06-22 12:44:42,385.385 INFO    ] 200
[2026-06-22 12:44:42,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:44:42,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:44:42,420.420 INFO    ] No update needed
[2026-06-22 12:44:42,422.422 INFO    ] Checking for camera pi updates...
[2026-06-22 12:44:42,452.452 INFO    ] 200
[2026-06-22 12:44:42,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:44:42,500.500 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:44:42,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:44:42,612.612 INFO    ] No camera update needed
[2026-06-22 12:44:42,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:44:42,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:44:42,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:44:42,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:44:44,667.667 INFO    ] ================================================
[2026-06-22 12:44:44,683.683 INFO    ] Launching Daemon at Mon Jun 22 12:44:44 IST 2026
[2026-06-22 12:44:44,694.694 INFO    ] ================================================
[2026-06-22 12:44:45,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:44:45
[2026-06-22 12:44:45,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:44:46,190.190 INFO    ] Initializing speech engine...
[2026-06-22 12:44:46,197.197 INFO    ] 2026-06-22 12:44:46
[2026-06-22 12:44:46,459.459 INFO    ] 2026-06-22 12:44:46
[2026-06-22 12:44:46,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:44:46,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:44:46,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:44:46,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:44:47,004.004 INFO    ] time= 22/06/2026 12:44:46
[2026-06-22 12:44:47,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:44:47,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:44:47,180.180 INFO    ] No existing commands found in stream
[2026-06-22 12:44:52,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:44:52,214.214 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-22 12:44:55,972.972 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:44:55,975.975 INFO    ] Checking for system updates...
[2026-06-22 12:44:56,012.012 INFO    ] 200
[2026-06-22 12:44:56,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:44:56,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:44:56,075.075 INFO    ] No update needed
[2026-06-22 12:44:56,077.077 INFO    ] Checking for camera pi updates...
[2026-06-22 12:44:56,111.111 INFO    ] 200
[2026-06-22 12:44:56,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:44:56,154.154 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:44:56,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:44:56,207.207 INFO    ] No camera update needed
[2026-06-22 12:44:56,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:44:56,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:44:56,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:44:56,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:44:58,262.262 INFO    ] ================================================
[2026-06-22 12:44:58,278.278 INFO    ] Launching Daemon at Mon Jun 22 12:44:58 IST 2026
[2026-06-22 12:44:58,289.289 INFO    ] ================================================
[2026-06-22 12:44:58,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:44:58
[2026-06-22 12:44:59,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:44:59,600.600 INFO    ] Initializing speech engine...
[2026-06-22 12:44:59,622.622 INFO    ] 2026-06-22 12:44:59
[2026-06-22 12:44:59,874.874 INFO    ] 2026-06-22 12:44:59
[2026-06-22 12:44:59,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:45:00,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:45:00,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:45:00,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:45:00,347.347 INFO    ] time= 22/06/2026 12:45:00
[2026-06-22 12:45:00,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:45:00,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:45:00,583.583 INFO    ] No existing commands found in stream
[2026-06-22 12:45:05,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:45:05,601.601 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-22 12:45:07,290.290 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:45:07,292.292 INFO    ] Checking for system updates...
[2026-06-22 12:45:07,334.334 INFO    ] 200
[2026-06-22 12:45:07,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:45:07,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:45:07,407.407 INFO    ] No update needed
[2026-06-22 12:45:07,409.409 INFO    ] Checking for camera pi updates...
[2026-06-22 12:45:07,443.443 INFO    ] 200
[2026-06-22 12:45:07,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:45:07,493.493 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:45:07,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:45:07,684.684 INFO    ] No camera update needed
[2026-06-22 12:45:07,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:45:07,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:45:07,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:45:07,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:45:09,742.742 INFO    ] ================================================
[2026-06-22 12:45:09,758.758 INFO    ] Launching Daemon at Mon Jun 22 12:45:09 IST 2026
[2026-06-22 12:45:09,769.769 INFO    ] ================================================
[2026-06-22 12:45:10,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:45:10
[2026-06-22 12:45:10,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:45:11,291.291 INFO    ] Initializing speech engine...
[2026-06-22 12:45:11,306.306 INFO    ] 2026-06-22 12:45:11
[2026-06-22 12:45:11,590.590 INFO    ] 2026-06-22 12:45:11
[2026-06-22 12:45:11,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:45:11,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:45:11,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:45:12,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:45:12,107.107 INFO    ] time= 22/06/2026 12:45:12
[2026-06-22 12:45:12,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:45:12,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:45:12,297.297 INFO    ] No existing commands found in stream
[2026-06-22 12:45:17,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:45:17,332.332 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-22 12:45:21,707.707 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:45:21,709.709 INFO    ] Checking for system updates...
[2026-06-22 12:45:21,731.731 INFO    ] 200
[2026-06-22 12:45:21,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:45:21,765.765 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:45:21,767.767 INFO    ] No update needed
[2026-06-22 12:45:21,768.768 INFO    ] Checking for camera pi updates...
[2026-06-22 12:45:21,799.799 INFO    ] 200
[2026-06-22 12:45:21,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:45:21,846.846 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:45:21,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:45:21,933.933 INFO    ] No camera update needed
[2026-06-22 12:45:21,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:45:21,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:45:21,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:45:21,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:45:23,989.989 INFO    ] ================================================
[2026-06-22 12:45:24,004.004 INFO    ] Launching Daemon at Mon Jun 22 12:45:23 IST 2026
[2026-06-22 12:45:24,015.015 INFO    ] ================================================
[2026-06-22 12:45:24,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:45:24
[2026-06-22 12:45:25,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:45:25,636.636 INFO    ] Initializing speech engine...
[2026-06-22 12:45:25,645.645 INFO    ] 2026-06-22 12:45:25
[2026-06-22 12:45:25,930.930 INFO    ] 2026-06-22 12:45:25
[2026-06-22 12:45:25,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:45:26,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:45:26,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:45:26,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:45:26,463.463 INFO    ] time= 22/06/2026 12:45:26
[2026-06-22 12:45:26,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:45:26,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:45:26,620.620 INFO    ] No existing commands found in stream
[2026-06-22 12:45:31,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:45:31,642.642 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-22 12:45:32,246.246 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:45:32,250.250 INFO    ] Checking for system updates...
[2026-06-22 12:45:32,289.289 INFO    ] 200
[2026-06-22 12:45:32,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:45:32,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:45:32,367.367 INFO    ] No update needed
[2026-06-22 12:45:32,370.370 INFO    ] Checking for camera pi updates...
[2026-06-22 12:45:32,410.410 INFO    ] 200
[2026-06-22 12:45:32,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:45:32,467.467 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:45:32,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:45:32,522.522 INFO    ] No camera update needed
[2026-06-22 12:45:32,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:45:32,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:45:32,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:45:32,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:45:34,582.582 INFO    ] ================================================
[2026-06-22 12:45:34,598.598 INFO    ] Launching Daemon at Mon Jun 22 12:45:34 IST 2026
[2026-06-22 12:45:34,609.609 INFO    ] ================================================
[2026-06-22 12:45:35,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:45:35
[2026-06-22 12:45:35,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:45:36,159.159 INFO    ] Initializing speech engine...
[2026-06-22 12:45:36,171.171 INFO    ] 2026-06-22 12:45:36
[2026-06-22 12:45:36,460.460 INFO    ] 2026-06-22 12:45:36
[2026-06-22 12:45:36,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:45:36,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:45:36,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:45:36,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:45:36,997.997 INFO    ] time= 22/06/2026 12:45:36
[2026-06-22 12:45:37,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:45:37,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:45:37,154.154 INFO    ] No existing commands found in stream
[2026-06-22 12:45:42,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:45:42,179.179 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-22 12:45:46,054.054 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:45:46,057.057 INFO    ] Checking for system updates...
[2026-06-22 12:45:46,095.095 INFO    ] 200
[2026-06-22 12:45:46,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:45:46,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:45:46,156.156 INFO    ] No update needed
[2026-06-22 12:45:46,159.159 INFO    ] Checking for camera pi updates...
[2026-06-22 12:45:46,198.198 INFO    ] 200
[2026-06-22 12:45:46,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:45:46,242.242 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:45:46,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:45:46,331.331 INFO    ] No camera update needed
[2026-06-22 12:45:46,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:45:46,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:45:46,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:45:46,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:45:48,395.395 INFO    ] ================================================
[2026-06-22 12:45:48,411.411 INFO    ] Launching Daemon at Mon Jun 22 12:45:48 IST 2026
[2026-06-22 12:45:48,422.422 INFO    ] ================================================
[2026-06-22 12:45:48,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:45:48
[2026-06-22 12:45:49,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:45:49,970.970 INFO    ] Initializing speech engine...
[2026-06-22 12:45:49,983.983 INFO    ] 2026-06-22 12:45:49
[2026-06-22 12:45:50,272.272 INFO    ] 2026-06-22 12:45:50
[2026-06-22 12:45:50,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:45:50,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:45:50,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:45:50,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:45:50,846.846 INFO    ] time= 22/06/2026 12:45:50
[2026-06-22 12:45:50,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:45:50,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:45:51,010.010 INFO    ] No existing commands found in stream
[2026-06-22 12:45:56,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:45:56,033.033 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-22 12:45:56,533.533 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:45:56,536.536 INFO    ] Checking for system updates...
[2026-06-22 12:45:56,574.574 INFO    ] 200
[2026-06-22 12:45:56,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:45:56,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:45:56,634.634 INFO    ] No update needed
[2026-06-22 12:45:56,637.637 INFO    ] Checking for camera pi updates...
[2026-06-22 12:45:56,672.672 INFO    ] 200
[2026-06-22 12:45:56,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:45:56,718.718 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:45:56,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:45:56,802.802 INFO    ] No camera update needed
[2026-06-22 12:45:56,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:45:56,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:45:56,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:45:56,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:45:58,862.862 INFO    ] ================================================
[2026-06-22 12:45:58,878.878 INFO    ] Launching Daemon at Mon Jun 22 12:45:58 IST 2026
[2026-06-22 12:45:58,890.890 INFO    ] ================================================
[2026-06-22 12:45:59,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:45:59
[2026-06-22 12:46:00,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:46:00,298.298 INFO    ] Initializing speech engine...
[2026-06-22 12:46:00,313.313 INFO    ] 2026-06-22 12:46:00
[2026-06-22 12:46:00,580.580 INFO    ] 2026-06-22 12:46:00
[2026-06-22 12:46:00,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:46:00,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:46:00,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:46:01,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:46:01,063.063 INFO    ] time= 22/06/2026 12:46:01
[2026-06-22 12:46:01,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:46:01,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:46:01,290.290 INFO    ] No existing commands found in stream
[2026-06-22 12:46:06,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:46:06,324.324 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-22 12:46:08,038.038 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:46:08,041.041 INFO    ] Checking for system updates...
[2026-06-22 12:46:08,077.077 INFO    ] 200
[2026-06-22 12:46:08,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:46:08,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:46:08,138.138 INFO    ] No update needed
[2026-06-22 12:46:08,141.141 INFO    ] Checking for camera pi updates...
[2026-06-22 12:46:08,179.179 INFO    ] 200
[2026-06-22 12:46:08,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:46:08,227.227 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:46:08,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:46:08,318.318 INFO    ] No camera update needed
[2026-06-22 12:46:08,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:46:08,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:46:08,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:46:08,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:46:10,378.378 INFO    ] ================================================
[2026-06-22 12:46:10,394.394 INFO    ] Launching Daemon at Mon Jun 22 12:46:10 IST 2026
[2026-06-22 12:46:10,405.405 INFO    ] ================================================
[2026-06-22 12:46:10,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:46:10
[2026-06-22 12:46:11,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:46:11,841.841 INFO    ] Initializing speech engine...
[2026-06-22 12:46:11,848.848 INFO    ] 2026-06-22 12:46:11
[2026-06-22 12:46:12,097.097 INFO    ] 2026-06-22 12:46:12
[2026-06-22 12:46:12,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:46:12,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:46:12,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:46:12,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:46:12,962.962 INFO    ] time= 22/06/2026 12:46:12
[2026-06-22 12:46:13,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:46:13,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:46:13,133.133 INFO    ] No existing commands found in stream
[2026-06-22 12:46:18,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:46:18,161.161 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-22 12:46:22,492.492 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:46:22,495.495 INFO    ] Checking for system updates...
[2026-06-22 12:46:22,531.531 INFO    ] 200
[2026-06-22 12:46:22,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:46:22,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:46:22,591.591 INFO    ] No update needed
[2026-06-22 12:46:22,594.594 INFO    ] Checking for camera pi updates...
[2026-06-22 12:46:22,629.629 INFO    ] 200
[2026-06-22 12:46:22,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:46:22,674.674 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:46:22,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:46:22,761.761 INFO    ] No camera update needed
[2026-06-22 12:46:22,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:46:22,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:46:22,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:46:22,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:46:24,820.820 INFO    ] ================================================
[2026-06-22 12:46:24,836.836 INFO    ] Launching Daemon at Mon Jun 22 12:46:24 IST 2026
[2026-06-22 12:46:24,847.847 INFO    ] ================================================
[2026-06-22 12:46:25,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:46:25
[2026-06-22 12:46:25,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:46:26,174.174 INFO    ] Initializing speech engine...
[2026-06-22 12:46:26,188.188 INFO    ] 2026-06-22 12:46:26
[2026-06-22 12:46:26,471.471 INFO    ] 2026-06-22 12:46:26
[2026-06-22 12:46:26,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:46:26,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:46:26,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:46:26,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:46:26,885.885 INFO    ] time= 22/06/2026 12:46:26
[2026-06-22 12:46:26,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:46:26,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:46:27,040.040 INFO    ] No existing commands found in stream
[2026-06-22 12:46:32,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:46:32,078.078 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-22 12:46:35,027.027 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:46:35,030.030 INFO    ] Checking for system updates...
[2026-06-22 12:46:35,066.066 INFO    ] 200
[2026-06-22 12:46:35,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:46:35,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:46:35,123.123 INFO    ] No update needed
[2026-06-22 12:46:35,126.126 INFO    ] Checking for camera pi updates...
[2026-06-22 12:46:35,165.165 INFO    ] 200
[2026-06-22 12:46:35,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:46:35,213.213 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:46:35,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:46:35,316.316 INFO    ] No camera update needed
[2026-06-22 12:46:35,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:46:35,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:46:35,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:46:35,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:46:37,371.371 INFO    ] ================================================
[2026-06-22 12:46:37,387.387 INFO    ] Launching Daemon at Mon Jun 22 12:46:37 IST 2026
[2026-06-22 12:46:37,399.399 INFO    ] ================================================
[2026-06-22 12:46:37,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:46:37
[2026-06-22 12:46:38,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:46:38,790.790 INFO    ] Initializing speech engine...
[2026-06-22 12:46:38,803.803 INFO    ] 2026-06-22 12:46:38
[2026-06-22 12:46:39,088.088 INFO    ] 2026-06-22 12:46:39
[2026-06-22 12:46:39,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:46:39,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:46:39,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:46:39,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:46:39,488.488 INFO    ] time= 22/06/2026 12:46:39
[2026-06-22 12:46:39,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:46:39,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:46:39,624.624 INFO    ] No existing commands found in stream
[2026-06-22 12:46:44,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:46:44,658.658 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-22 12:46:47,837.837 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:46:47,839.839 INFO    ] Checking for system updates...
[2026-06-22 12:46:47,881.881 INFO    ] 200
[2026-06-22 12:46:47,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:46:47,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:46:47,942.942 INFO    ] No update needed
[2026-06-22 12:46:47,945.945 INFO    ] Checking for camera pi updates...
[2026-06-22 12:46:47,980.980 INFO    ] 200
[2026-06-22 12:46:47,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:46:48,030.030 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:46:48,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:46:48,143.143 INFO    ] No camera update needed
[2026-06-22 12:46:48,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:46:48,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:46:48,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:46:48,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:46:50,203.203 INFO    ] ================================================
[2026-06-22 12:46:50,218.218 INFO    ] Launching Daemon at Mon Jun 22 12:46:50 IST 2026
[2026-06-22 12:46:50,230.230 INFO    ] ================================================
[2026-06-22 12:46:50,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:46:50
[2026-06-22 12:46:51,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:46:51,561.561 INFO    ] Initializing speech engine...
[2026-06-22 12:46:51,580.580 INFO    ] 2026-06-22 12:46:51
[2026-06-22 12:46:51,827.827 INFO    ] 2026-06-22 12:46:51
[2026-06-22 12:46:51,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:46:52,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:46:52,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:46:52,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:46:52,356.356 INFO    ] time= 22/06/2026 12:46:52
[2026-06-22 12:46:52,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:46:52,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:46:52,541.541 INFO    ] No existing commands found in stream
[2026-06-22 12:46:57,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:46:57,564.564 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-22 12:47:00,959.959 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:47:00,961.961 INFO    ] Checking for system updates...
[2026-06-22 12:47:01,001.001 INFO    ] 200
[2026-06-22 12:47:01,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:47:01,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:47:01,059.059 INFO    ] No update needed
[2026-06-22 12:47:01,062.062 INFO    ] Checking for camera pi updates...
[2026-06-22 12:47:01,096.096 INFO    ] 200
[2026-06-22 12:47:01,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:47:01,140.140 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:47:01,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:47:01,292.292 INFO    ] No camera update needed
[2026-06-22 12:47:01,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:47:01,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:47:01,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:47:01,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:47:03,349.349 INFO    ] ================================================
[2026-06-22 12:47:03,365.365 INFO    ] Launching Daemon at Mon Jun 22 12:47:03 IST 2026
[2026-06-22 12:47:03,376.376 INFO    ] ================================================
[2026-06-22 12:47:03,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:47:03
[2026-06-22 12:47:04,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:47:04,814.814 INFO    ] Initializing speech engine...
[2026-06-22 12:47:04,833.833 INFO    ] 2026-06-22 12:47:04
[2026-06-22 12:47:05,094.094 INFO    ] 2026-06-22 12:47:05
[2026-06-22 12:47:05,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:47:05,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:47:05,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:47:05,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:47:05,602.602 INFO    ] time= 22/06/2026 12:47:05
[2026-06-22 12:47:05,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:47:05,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:47:05,807.807 INFO    ] No existing commands found in stream
[2026-06-22 12:47:10,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:47:10,836.836 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-22 12:47:14,741.741 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:47:14,744.744 INFO    ] Checking for system updates...
[2026-06-22 12:47:14,785.785 INFO    ] 200
[2026-06-22 12:47:14,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:47:14,847.847 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:47:14,849.849 INFO    ] No update needed
[2026-06-22 12:47:14,852.852 INFO    ] Checking for camera pi updates...
[2026-06-22 12:47:14,889.889 INFO    ] 200
[2026-06-22 12:47:14,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:47:14,937.937 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:47:15,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:47:15,116.116 INFO    ] No camera update needed
[2026-06-22 12:47:15,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:47:15,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:47:15,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:47:15,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:47:17,172.172 INFO    ] ================================================
[2026-06-22 12:47:17,188.188 INFO    ] Launching Daemon at Mon Jun 22 12:47:17 IST 2026
[2026-06-22 12:47:17,199.199 INFO    ] ================================================
[2026-06-22 12:47:17,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:47:17
[2026-06-22 12:47:18,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:47:18,725.725 INFO    ] Initializing speech engine...
[2026-06-22 12:47:18,738.738 INFO    ] 2026-06-22 12:47:18
[2026-06-22 12:47:19,024.024 INFO    ] 2026-06-22 12:47:19
[2026-06-22 12:47:19,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:47:19,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:47:19,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:47:19,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:47:19,555.555 INFO    ] time= 22/06/2026 12:47:19
[2026-06-22 12:47:19,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:47:19,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:47:19,701.701 INFO    ] No existing commands found in stream
[2026-06-22 12:47:24,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:47:24,727.727 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-22 12:47:27,615.615 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:47:27,618.618 INFO    ] Checking for system updates...
[2026-06-22 12:47:27,659.659 INFO    ] 200
[2026-06-22 12:47:27,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:47:27,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:47:27,717.717 INFO    ] No update needed
[2026-06-22 12:47:27,719.719 INFO    ] Checking for camera pi updates...
[2026-06-22 12:47:27,757.757 INFO    ] 200
[2026-06-22 12:47:27,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:47:27,800.800 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:47:27,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:47:27,895.895 INFO    ] No camera update needed
[2026-06-22 12:47:27,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:47:27,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:47:27,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:47:27,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:47:29,957.957 INFO    ] ================================================
[2026-06-22 12:47:29,973.973 INFO    ] Launching Daemon at Mon Jun 22 12:47:29 IST 2026
[2026-06-22 12:47:29,984.984 INFO    ] ================================================
[2026-06-22 12:47:30,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:47:30
[2026-06-22 12:47:31,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:47:31,434.434 INFO    ] Initializing speech engine...
[2026-06-22 12:47:31,443.443 INFO    ] 2026-06-22 12:47:31
[2026-06-22 12:47:31,696.696 INFO    ] 2026-06-22 12:47:31
[2026-06-22 12:47:31,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:47:31,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:47:31,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:47:32,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:47:32,154.154 INFO    ] time= 22/06/2026 12:47:32
[2026-06-22 12:47:32,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:47:32,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:47:32,270.270 INFO    ] No existing commands found in stream
[2026-06-22 12:47:37,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:47:37,309.309 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-22 12:47:39,374.374 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:47:39,376.376 INFO    ] Checking for system updates...
[2026-06-22 12:47:39,413.413 INFO    ] 200
[2026-06-22 12:47:39,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:47:39,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:47:39,471.471 INFO    ] No update needed
[2026-06-22 12:47:39,474.474 INFO    ] Checking for camera pi updates...
[2026-06-22 12:47:39,507.507 INFO    ] 200
[2026-06-22 12:47:39,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:47:39,556.556 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:47:39,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:47:39,638.638 INFO    ] No camera update needed
[2026-06-22 12:47:39,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:47:39,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:47:39,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:47:39,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:47:41,693.693 INFO    ] ================================================
[2026-06-22 12:47:41,710.710 INFO    ] Launching Daemon at Mon Jun 22 12:47:41 IST 2026
[2026-06-22 12:47:41,721.721 INFO    ] ================================================
[2026-06-22 12:47:42,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:47:42
[2026-06-22 12:47:43,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:47:43,329.329 INFO    ] Initializing speech engine...
[2026-06-22 12:47:43,343.343 INFO    ] 2026-06-22 12:47:43
[2026-06-22 12:47:43,635.635 INFO    ] 2026-06-22 12:47:43
[2026-06-22 12:47:43,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:47:43,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:47:43,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:47:44,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:47:44,169.169 INFO    ] time= 22/06/2026 12:47:44
[2026-06-22 12:47:44,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:47:44,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:47:44,335.335 INFO    ] No existing commands found in stream
[2026-06-22 12:47:49,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:47:49,369.369 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-22 12:47:51,098.098 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:47:51,101.101 INFO    ] Checking for system updates...
[2026-06-22 12:47:51,144.144 INFO    ] 200
[2026-06-22 12:47:51,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:47:51,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:47:51,208.208 INFO    ] No update needed
[2026-06-22 12:47:51,211.211 INFO    ] Checking for camera pi updates...
[2026-06-22 12:47:51,253.253 INFO    ] 200
[2026-06-22 12:47:51,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:47:51,304.304 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:47:51,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:47:51,392.392 INFO    ] No camera update needed
[2026-06-22 12:47:51,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:47:51,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:47:51,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:47:51,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:47:53,452.452 INFO    ] ================================================
[2026-06-22 12:47:53,469.469 INFO    ] Launching Daemon at Mon Jun 22 12:47:53 IST 2026
[2026-06-22 12:47:53,482.482 INFO    ] ================================================
[2026-06-22 12:47:54,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:47:54
[2026-06-22 12:47:54,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:47:55,152.152 INFO    ] Initializing speech engine...
[2026-06-22 12:47:55,157.157 INFO    ] 2026-06-22 12:47:55
[2026-06-22 12:47:55,484.484 INFO    ] 2026-06-22 12:47:55
[2026-06-22 12:47:55,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:47:55,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:47:55,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:47:55,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:47:55,884.884 INFO    ] time= 22/06/2026 12:47:55
[2026-06-22 12:47:55,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:47:55,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:47:55,976.976 INFO    ] No existing commands found in stream
[2026-06-22 12:48:00,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:48:00,989.989 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-22 12:48:02,634.634 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:48:02,637.637 INFO    ] Checking for system updates...
[2026-06-22 12:48:02,681.681 INFO    ] 200
[2026-06-22 12:48:02,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:48:02,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:48:02,767.767 INFO    ] No update needed
[2026-06-22 12:48:02,770.770 INFO    ] Checking for camera pi updates...
[2026-06-22 12:48:02,811.811 INFO    ] 200
[2026-06-22 12:48:02,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:48:02,862.862 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:48:02,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:48:02,974.974 INFO    ] No camera update needed
[2026-06-22 12:48:02,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:48:02,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:48:02,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:48:02,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:48:05,039.039 INFO    ] ================================================
[2026-06-22 12:48:05,055.055 INFO    ] Launching Daemon at Mon Jun 22 12:48:05 IST 2026
[2026-06-22 12:48:05,066.066 INFO    ] ================================================
[2026-06-22 12:48:05,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:48:05
[2026-06-22 12:48:06,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:48:06,521.521 INFO    ] Initializing speech engine...
[2026-06-22 12:48:06,527.527 INFO    ] 2026-06-22 12:48:06
[2026-06-22 12:48:06,823.823 INFO    ] 2026-06-22 12:48:06
[2026-06-22 12:48:06,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:48:07,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:48:07,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:48:07,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:48:07,244.244 INFO    ] time= 22/06/2026 12:48:07
[2026-06-22 12:48:07,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:48:07,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:48:07,330.330 INFO    ] No existing commands found in stream
[2026-06-22 12:48:12,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:48:12,349.349 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-22 12:48:14,492.492 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:48:14,495.495 INFO    ] Checking for system updates...
[2026-06-22 12:48:14,536.536 INFO    ] 200
[2026-06-22 12:48:14,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:48:14,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:48:14,601.601 INFO    ] No update needed
[2026-06-22 12:48:14,604.604 INFO    ] Checking for camera pi updates...
[2026-06-22 12:48:14,644.644 INFO    ] 200
[2026-06-22 12:48:14,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:48:14,693.693 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:48:14,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:48:14,781.781 INFO    ] No camera update needed
[2026-06-22 12:48:14,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:48:14,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:48:14,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:48:14,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:48:16,840.840 INFO    ] ================================================
[2026-06-22 12:48:16,856.856 INFO    ] Launching Daemon at Mon Jun 22 12:48:16 IST 2026
[2026-06-22 12:48:16,867.867 INFO    ] ================================================
[2026-06-22 12:48:17,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:48:17
[2026-06-22 12:48:18,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:48:18,290.290 INFO    ] Initializing speech engine...
[2026-06-22 12:48:18,299.299 INFO    ] 2026-06-22 12:48:18
[2026-06-22 12:48:18,547.547 INFO    ] 2026-06-22 12:48:18
[2026-06-22 12:48:18,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:48:18,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:48:18,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:48:18,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:48:19,043.043 INFO    ] time= 22/06/2026 12:48:18
[2026-06-22 12:48:19,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:48:19,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:48:19,244.244 INFO    ] No existing commands found in stream
[2026-06-22 12:48:24,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:48:24,271.271 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-22 12:48:25,321.321 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:48:25,324.324 INFO    ] Checking for system updates...
[2026-06-22 12:48:25,361.361 INFO    ] 200
[2026-06-22 12:48:25,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:48:25,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:48:25,421.421 INFO    ] No update needed
[2026-06-22 12:48:25,423.423 INFO    ] Checking for camera pi updates...
[2026-06-22 12:48:25,458.458 INFO    ] 200
[2026-06-22 12:48:25,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:48:25,507.507 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:48:25,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:48:25,571.571 INFO    ] No camera update needed
[2026-06-22 12:48:25,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:48:25,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:48:25,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:48:25,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:48:27,632.632 INFO    ] ================================================
[2026-06-22 12:48:27,648.648 INFO    ] Launching Daemon at Mon Jun 22 12:48:27 IST 2026
[2026-06-22 12:48:27,660.660 INFO    ] ================================================
[2026-06-22 12:48:28,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:48:28
[2026-06-22 12:48:28,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:48:29,045.045 INFO    ] Initializing speech engine...
[2026-06-22 12:48:29,051.051 INFO    ] 2026-06-22 12:48:29
[2026-06-22 12:48:29,312.312 INFO    ] 2026-06-22 12:48:29
[2026-06-22 12:48:29,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:48:29,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:48:29,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:48:29,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:48:29,836.836 INFO    ] time= 22/06/2026 12:48:29
[2026-06-22 12:48:29,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:48:29,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:48:30,030.030 INFO    ] No existing commands found in stream
[2026-06-22 12:48:35,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:48:35,049.049 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-22 12:48:38,112.112 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:48:38,114.114 INFO    ] Checking for system updates...
[2026-06-22 12:48:38,136.136 INFO    ] 200
[2026-06-22 12:48:38,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:48:38,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:48:38,170.170 INFO    ] No update needed
[2026-06-22 12:48:38,171.171 INFO    ] Checking for camera pi updates...
[2026-06-22 12:48:38,192.192 INFO    ] 200
[2026-06-22 12:48:38,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:48:38,228.228 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:48:38,299.299 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:48:38,303.303 INFO    ] No camera update needed
[2026-06-22 12:48:38,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:48:38,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:48:38,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:48:38,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:48:40,363.363 INFO    ] ================================================
[2026-06-22 12:48:40,378.378 INFO    ] Launching Daemon at Mon Jun 22 12:48:40 IST 2026
[2026-06-22 12:48:40,390.390 INFO    ] ================================================
[2026-06-22 12:48:40,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:48:40
[2026-06-22 12:48:41,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:48:41,820.820 INFO    ] Initializing speech engine...
[2026-06-22 12:48:41,829.829 INFO    ] 2026-06-22 12:48:41
[2026-06-22 12:48:42,074.074 INFO    ] 2026-06-22 12:48:42
[2026-06-22 12:48:42,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:48:42,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:48:42,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:48:42,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:48:42,538.538 INFO    ] time= 22/06/2026 12:48:42
[2026-06-22 12:48:42,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:48:42,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:48:42,782.782 INFO    ] No existing commands found in stream
[2026-06-22 12:48:47,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:48:47,799.799 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-22 12:48:50,883.883 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:48:50,886.886 INFO    ] Checking for system updates...
[2026-06-22 12:48:50,921.921 INFO    ] 200
[2026-06-22 12:48:50,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:48:50,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:48:50,987.987 INFO    ] No update needed
[2026-06-22 12:48:50,989.989 INFO    ] Checking for camera pi updates...
[2026-06-22 12:48:51,024.024 INFO    ] 200
[2026-06-22 12:48:51,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:48:51,072.072 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:48:51,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:48:51,154.154 INFO    ] No camera update needed
[2026-06-22 12:48:51,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:48:51,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:48:51,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:48:51,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:48:53,212.212 INFO    ] ================================================
[2026-06-22 12:48:53,228.228 INFO    ] Launching Daemon at Mon Jun 22 12:48:53 IST 2026
[2026-06-22 12:48:53,239.239 INFO    ] ================================================
[2026-06-22 12:48:53,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:48:53
[2026-06-22 12:48:54,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:48:54,557.557 INFO    ] Initializing speech engine...
[2026-06-22 12:48:54,563.563 INFO    ] 2026-06-22 12:48:54
[2026-06-22 12:48:54,846.846 INFO    ] 2026-06-22 12:48:54
[2026-06-22 12:48:54,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:48:55,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:48:55,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:48:55,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:48:55,293.293 INFO    ] time= 22/06/2026 12:48:55
[2026-06-22 12:48:55,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:48:55,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:48:55,545.545 INFO    ] No existing commands found in stream
[2026-06-22 12:49:00,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:49:00,583.583 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-22 12:49:02,682.682 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:49:02,686.686 INFO    ] Checking for system updates...
[2026-06-22 12:49:02,729.729 INFO    ] 200
[2026-06-22 12:49:02,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:49:02,798.798 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:49:02,801.801 INFO    ] No update needed
[2026-06-22 12:49:02,805.805 INFO    ] Checking for camera pi updates...
[2026-06-22 12:49:02,847.847 INFO    ] 200
[2026-06-22 12:49:02,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:49:02,900.900 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:49:03,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:49:03,008.008 INFO    ] No camera update needed
[2026-06-22 12:49:03,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:49:03,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:49:03,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:49:03,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:49:05,072.072 INFO    ] ================================================
[2026-06-22 12:49:05,088.088 INFO    ] Launching Daemon at Mon Jun 22 12:49:05 IST 2026
[2026-06-22 12:49:05,099.099 INFO    ] ================================================
[2026-06-22 12:49:05,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:49:05
[2026-06-22 12:49:06,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:49:06,577.577 INFO    ] Initializing speech engine...
[2026-06-22 12:49:06,589.589 INFO    ] 2026-06-22 12:49:06
[2026-06-22 12:49:06,878.878 INFO    ] 2026-06-22 12:49:06
[2026-06-22 12:49:06,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:49:10,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:49:10,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:49:10,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:49:10,363.363 INFO    ] time= 22/06/2026 12:49:10
[2026-06-22 12:49:10,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:49:10,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:49:10,437.437 INFO    ] No existing commands found in stream
[2026-06-22 12:49:15,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:49:15,450.450 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-22 12:49:19,882.882 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:49:19,884.884 INFO    ] Checking for system updates...
[2026-06-22 12:49:19,920.920 INFO    ] 200
[2026-06-22 12:49:19,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:49:19,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:49:19,982.982 INFO    ] No update needed
[2026-06-22 12:49:19,988.988 INFO    ] Checking for camera pi updates...
[2026-06-22 12:49:20,027.027 INFO    ] 200
[2026-06-22 12:49:20,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:49:20,070.070 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:49:20,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:49:20,248.248 INFO    ] No camera update needed
[2026-06-22 12:49:20,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:49:20,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:49:20,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:49:20,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:49:22,305.305 INFO    ] ================================================
[2026-06-22 12:49:22,321.321 INFO    ] Launching Daemon at Mon Jun 22 12:49:22 IST 2026
[2026-06-22 12:49:22,332.332 INFO    ] ================================================
[2026-06-22 12:49:22,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:49:22
[2026-06-22 12:49:23,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:49:23,716.716 INFO    ] Initializing speech engine...
[2026-06-22 12:49:23,722.722 INFO    ] 2026-06-22 12:49:23
[2026-06-22 12:49:23,994.994 INFO    ] 2026-06-22 12:49:23
[2026-06-22 12:49:24,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:49:24,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:49:24,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:49:24,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:49:24,476.476 INFO    ] time= 22/06/2026 12:49:24
[2026-06-22 12:49:24,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:49:24,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:49:24,679.679 INFO    ] No existing commands found in stream
[2026-06-22 12:49:29,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:49:29,695.695 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-22 12:49:32,072.072 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:49:32,075.075 INFO    ] Checking for system updates...
[2026-06-22 12:49:32,119.119 INFO    ] 200
[2026-06-22 12:49:32,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:49:32,188.188 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:49:32,190.190 INFO    ] No update needed
[2026-06-22 12:49:32,193.193 INFO    ] Checking for camera pi updates...
[2026-06-22 12:49:32,235.235 INFO    ] 200
[2026-06-22 12:49:32,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:49:32,282.282 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:49:32,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:49:32,337.337 INFO    ] No camera update needed
[2026-06-22 12:49:32,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:49:32,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:49:32,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:49:32,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:49:34,396.396 INFO    ] ================================================
[2026-06-22 12:49:34,411.411 INFO    ] Launching Daemon at Mon Jun 22 12:49:34 IST 2026
[2026-06-22 12:49:34,423.423 INFO    ] ================================================
[2026-06-22 12:49:35,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:49:35
[2026-06-22 12:49:35,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:49:35,881.881 INFO    ] Initializing speech engine...
[2026-06-22 12:49:35,890.890 INFO    ] 2026-06-22 12:49:35
[2026-06-22 12:49:36,178.178 INFO    ] 2026-06-22 12:49:36
[2026-06-22 12:49:36,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:49:36,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:49:36,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:49:36,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:49:36,729.729 INFO    ] time= 22/06/2026 12:49:36
[2026-06-22 12:49:36,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:49:36,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:49:36,892.892 INFO    ] No existing commands found in stream
[2026-06-22 12:49:41,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:49:41,926.926 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-22 12:49:42,945.945 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:49:42,948.948 INFO    ] Checking for system updates...
[2026-06-22 12:49:42,987.987 INFO    ] 200
[2026-06-22 12:49:42,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:49:43,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:49:43,048.048 INFO    ] No update needed
[2026-06-22 12:49:43,051.051 INFO    ] Checking for camera pi updates...
[2026-06-22 12:49:43,086.086 INFO    ] 200
[2026-06-22 12:49:43,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:49:43,132.132 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:49:43,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:49:43,215.215 INFO    ] No camera update needed
[2026-06-22 12:49:43,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:49:43,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:49:43,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:49:43,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:49:45,276.276 INFO    ] ================================================
[2026-06-22 12:49:45,292.292 INFO    ] Launching Daemon at Mon Jun 22 12:49:45 IST 2026
[2026-06-22 12:49:45,303.303 INFO    ] ================================================
[2026-06-22 12:49:45,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:49:45
[2026-06-22 12:49:46,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:49:46,633.633 INFO    ] Initializing speech engine...
[2026-06-22 12:49:46,641.641 INFO    ] 2026-06-22 12:49:46
[2026-06-22 12:49:46,915.915 INFO    ] 2026-06-22 12:49:46
[2026-06-22 12:49:46,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:49:47,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:49:47,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:49:47,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:49:47,293.293 INFO    ] time= 22/06/2026 12:49:47
[2026-06-22 12:49:47,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:49:47,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:49:47,463.463 INFO    ] No existing commands found in stream
[2026-06-22 12:49:52,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:49:52,496.496 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-22 12:49:54,765.765 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:49:54,768.768 INFO    ] Checking for system updates...
[2026-06-22 12:49:54,810.810 INFO    ] 200
[2026-06-22 12:49:54,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:49:54,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:49:54,878.878 INFO    ] No update needed
[2026-06-22 12:49:54,881.881 INFO    ] Checking for camera pi updates...
[2026-06-22 12:49:54,920.920 INFO    ] 200
[2026-06-22 12:49:54,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:49:54,972.972 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:49:55,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:49:55,067.067 INFO    ] No camera update needed
[2026-06-22 12:49:55,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:49:55,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:49:55,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:49:55,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:49:57,126.126 INFO    ] ================================================
[2026-06-22 12:49:57,142.142 INFO    ] Launching Daemon at Mon Jun 22 12:49:57 IST 2026
[2026-06-22 12:49:57,153.153 INFO    ] ================================================
[2026-06-22 12:49:57,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:49:57
[2026-06-22 12:49:58,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:49:58,598.598 INFO    ] Initializing speech engine...
[2026-06-22 12:49:58,613.613 INFO    ] 2026-06-22 12:49:58
[2026-06-22 12:49:58,883.883 INFO    ] 2026-06-22 12:49:58
[2026-06-22 12:49:58,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:49:59,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:49:59,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:49:59,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:49:59,350.350 INFO    ] time= 22/06/2026 12:49:59
[2026-06-22 12:49:59,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:49:59,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:49:59,549.549 INFO    ] No existing commands found in stream
[2026-06-22 12:50:04,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:50:04,563.563 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-22 12:50:08,455.455 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:50:08,456.456 INFO    ] Checking for system updates...
[2026-06-22 12:50:08,477.477 INFO    ] 200
[2026-06-22 12:50:08,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:50:08,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:50:08,511.511 INFO    ] No update needed
[2026-06-22 12:50:08,514.514 INFO    ] Checking for camera pi updates...
[2026-06-22 12:50:08,550.550 INFO    ] 200
[2026-06-22 12:50:08,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:50:08,595.595 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:50:08,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:50:08,678.678 INFO    ] No camera update needed
[2026-06-22 12:50:08,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:50:08,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:50:08,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:50:08,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:50:10,739.739 INFO    ] ================================================
[2026-06-22 12:50:10,755.755 INFO    ] Launching Daemon at Mon Jun 22 12:50:10 IST 2026
[2026-06-22 12:50:10,766.766 INFO    ] ================================================
[2026-06-22 12:50:11,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:50:11
[2026-06-22 12:50:11,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:50:12,114.114 INFO    ] Initializing speech engine...
[2026-06-22 12:50:12,125.125 INFO    ] 2026-06-22 12:50:12
[2026-06-22 12:50:12,385.385 INFO    ] 2026-06-22 12:50:12
[2026-06-22 12:50:12,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:50:12,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:50:12,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:50:12,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:50:12,848.848 INFO    ] time= 22/06/2026 12:50:12
[2026-06-22 12:50:12,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:50:12,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:50:13,084.084 INFO    ] No existing commands found in stream
[2026-06-22 12:50:18,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:50:18,106.106 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-22 12:50:19,815.815 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:50:19,816.816 INFO    ] Checking for system updates...
[2026-06-22 12:50:19,837.837 INFO    ] 200
[2026-06-22 12:50:19,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:50:19,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:50:19,874.874 INFO    ] No update needed
[2026-06-22 12:50:19,876.876 INFO    ] Checking for camera pi updates...
[2026-06-22 12:50:19,895.895 INFO    ] 200
[2026-06-22 12:50:19,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:50:19,924.924 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:50:20,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:50:20,010.010 INFO    ] No camera update needed
[2026-06-22 12:50:20,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:50:20,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:50:20,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:50:20,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:50:22,069.069 INFO    ] ================================================
[2026-06-22 12:50:22,090.090 INFO    ] Launching Daemon at Mon Jun 22 12:50:22 IST 2026
[2026-06-22 12:50:22,102.102 INFO    ] ================================================
[2026-06-22 12:50:22,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:50:22
[2026-06-22 12:50:23,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:50:23,542.542 INFO    ] Initializing speech engine...
[2026-06-22 12:50:23,566.566 INFO    ] 2026-06-22 12:50:23
[2026-06-22 12:50:23,838.838 INFO    ] 2026-06-22 12:50:23
[2026-06-22 12:50:23,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:50:24,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:50:24,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:50:24,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:50:24,356.356 INFO    ] time= 22/06/2026 12:50:24
[2026-06-22 12:50:24,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:50:24,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:50:24,560.560 INFO    ] No existing commands found in stream
[2026-06-22 12:50:29,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:50:29,592.592 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-22 12:50:32,489.489 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:50:32,492.492 INFO    ] Checking for system updates...
[2026-06-22 12:50:32,532.532 INFO    ] 200
[2026-06-22 12:50:32,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:50:32,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:50:32,603.603 INFO    ] No update needed
[2026-06-22 12:50:32,606.606 INFO    ] Checking for camera pi updates...
[2026-06-22 12:50:32,646.646 INFO    ] 200
[2026-06-22 12:50:32,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:50:32,704.704 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:50:32,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:50:32,768.768 INFO    ] No camera update needed
[2026-06-22 12:50:32,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:50:32,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:50:32,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:50:32,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:50:34,827.827 INFO    ] ================================================
[2026-06-22 12:50:34,842.842 INFO    ] Launching Daemon at Mon Jun 22 12:50:34 IST 2026
[2026-06-22 12:50:34,853.853 INFO    ] ================================================
[2026-06-22 12:50:35,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:50:35
[2026-06-22 12:50:35,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:50:36,173.173 INFO    ] Initializing speech engine...
[2026-06-22 12:50:36,182.182 INFO    ] 2026-06-22 12:50:36
[2026-06-22 12:50:36,470.470 INFO    ] 2026-06-22 12:50:36
[2026-06-22 12:50:36,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:50:36,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:50:36,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:50:36,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:50:36,952.952 INFO    ] time= 22/06/2026 12:50:36
[2026-06-22 12:50:36,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:50:37,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:50:37,122.122 INFO    ] No existing commands found in stream
[2026-06-22 12:50:42,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:50:42,138.138 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-22 12:50:45,471.471 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:50:45,473.473 INFO    ] Checking for system updates...
[2026-06-22 12:50:45,494.494 INFO    ] 200
[2026-06-22 12:50:45,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:50:45,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:50:45,529.529 INFO    ] No update needed
[2026-06-22 12:50:45,530.530 INFO    ] Checking for camera pi updates...
[2026-06-22 12:50:45,559.559 INFO    ] 200
[2026-06-22 12:50:45,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:50:45,607.607 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:50:45,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:50:45,701.701 INFO    ] No camera update needed
[2026-06-22 12:50:45,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:50:45,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:50:45,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:50:45,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:50:47,756.756 INFO    ] ================================================
[2026-06-22 12:50:47,771.771 INFO    ] Launching Daemon at Mon Jun 22 12:50:47 IST 2026
[2026-06-22 12:50:47,781.781 INFO    ] ================================================
[2026-06-22 12:50:48,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:50:48
[2026-06-22 12:50:48,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:50:49,142.142 INFO    ] Initializing speech engine...
[2026-06-22 12:50:49,149.149 INFO    ] 2026-06-22 12:50:49
[2026-06-22 12:50:49,411.411 INFO    ] 2026-06-22 12:50:49
[2026-06-22 12:50:49,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:50:49,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:50:49,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:50:49,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:50:49,896.896 INFO    ] time= 22/06/2026 12:50:49
[2026-06-22 12:50:49,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:50:49,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:50:50,091.091 INFO    ] No existing commands found in stream
[2026-06-22 12:50:55,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:50:55,119.119 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-22 12:50:58,102.102 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:50:58,104.104 INFO    ] Checking for system updates...
[2026-06-22 12:50:58,126.126 INFO    ] 200
[2026-06-22 12:50:58,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:50:58,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:50:58,163.163 INFO    ] No update needed
[2026-06-22 12:50:58,166.166 INFO    ] Checking for camera pi updates...
[2026-06-22 12:50:58,199.199 INFO    ] 200
[2026-06-22 12:50:58,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:50:58,242.242 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:50:58,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:50:58,324.324 INFO    ] No camera update needed
[2026-06-22 12:50:58,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:50:58,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:50:58,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:50:58,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:51:00,380.380 INFO    ] ================================================
[2026-06-22 12:51:00,395.395 INFO    ] Launching Daemon at Mon Jun 22 12:51:00 IST 2026
[2026-06-22 12:51:00,405.405 INFO    ] ================================================
[2026-06-22 12:51:00,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:51:00
[2026-06-22 12:51:01,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:51:02,049.049 INFO    ] Initializing speech engine...
[2026-06-22 12:51:02,062.062 INFO    ] 2026-06-22 12:51:02
[2026-06-22 12:51:02,354.354 INFO    ] 2026-06-22 12:51:02
[2026-06-22 12:51:02,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:51:02,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:51:02,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:51:02,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:51:02,817.817 INFO    ] time= 22/06/2026 12:51:02
[2026-06-22 12:51:02,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:51:02,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:51:03,009.009 INFO    ] No existing commands found in stream
[2026-06-22 12:51:08,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:51:08,038.038 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-22 12:51:11,946.946 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:51:11,949.949 INFO    ] Checking for system updates...
[2026-06-22 12:51:11,989.989 INFO    ] 200
[2026-06-22 12:51:11,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:51:12,046.046 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:51:12,048.048 INFO    ] No update needed
[2026-06-22 12:51:12,050.050 INFO    ] Checking for camera pi updates...
[2026-06-22 12:51:12,084.084 INFO    ] 200
[2026-06-22 12:51:12,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:51:12,127.127 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:51:12,214.214 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:51:12,216.216 INFO    ] No camera update needed
[2026-06-22 12:51:12,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:51:12,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:51:12,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:51:12,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:51:14,273.273 INFO    ] ================================================
[2026-06-22 12:51:14,288.288 INFO    ] Launching Daemon at Mon Jun 22 12:51:14 IST 2026
[2026-06-22 12:51:14,299.299 INFO    ] ================================================
[2026-06-22 12:51:14,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:51:14
[2026-06-22 12:51:15,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:51:15,718.718 INFO    ] Initializing speech engine...
[2026-06-22 12:51:15,727.727 INFO    ] 2026-06-22 12:51:15
[2026-06-22 12:51:16,018.018 INFO    ] 2026-06-22 12:51:15
[2026-06-22 12:51:16,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:51:16,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:51:16,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:51:16,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:51:16,426.426 INFO    ] time= 22/06/2026 12:51:16
[2026-06-22 12:51:16,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:51:16,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:51:16,516.516 INFO    ] No existing commands found in stream
[2026-06-22 12:51:21,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:51:21,537.537 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-22 12:51:25,707.707 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:51:25,710.710 INFO    ] Checking for system updates...
[2026-06-22 12:51:25,747.747 INFO    ] 200
[2026-06-22 12:51:25,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:51:25,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:51:25,812.812 INFO    ] No update needed
[2026-06-22 12:51:25,815.815 INFO    ] Checking for camera pi updates...
[2026-06-22 12:51:25,853.853 INFO    ] 200
[2026-06-22 12:51:25,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:51:25,902.902 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:51:26,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:51:26,082.082 INFO    ] No camera update needed
[2026-06-22 12:51:26,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:51:26,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:51:26,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:51:26,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:51:28,137.137 INFO    ] ================================================
[2026-06-22 12:51:28,154.154 INFO    ] Launching Daemon at Mon Jun 22 12:51:28 IST 2026
[2026-06-22 12:51:28,164.164 INFO    ] ================================================
[2026-06-22 12:51:28,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:51:28
[2026-06-22 12:51:29,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:51:29,509.509 INFO    ] Initializing speech engine...
[2026-06-22 12:51:29,522.522 INFO    ] 2026-06-22 12:51:29
[2026-06-22 12:51:29,787.787 INFO    ] 2026-06-22 12:51:29
[2026-06-22 12:51:29,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:51:30,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:51:30,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:51:30,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:51:30,255.255 INFO    ] time= 22/06/2026 12:51:30
[2026-06-22 12:51:30,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:51:30,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:51:30,480.480 INFO    ] No existing commands found in stream
[2026-06-22 12:51:35,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:51:35,510.510 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-22 12:51:36,579.579 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:51:36,582.582 INFO    ] Checking for system updates...
[2026-06-22 12:51:36,618.618 INFO    ] 200
[2026-06-22 12:51:36,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:51:36,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:51:36,676.676 INFO    ] No update needed
[2026-06-22 12:51:36,678.678 INFO    ] Checking for camera pi updates...
[2026-06-22 12:51:36,712.712 INFO    ] 200
[2026-06-22 12:51:36,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:51:36,757.757 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:51:36,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:51:36,838.838 INFO    ] No camera update needed
[2026-06-22 12:51:36,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:51:36,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:51:36,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:51:36,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:51:38,896.896 INFO    ] ================================================
[2026-06-22 12:51:38,912.912 INFO    ] Launching Daemon at Mon Jun 22 12:51:38 IST 2026
[2026-06-22 12:51:38,923.923 INFO    ] ================================================
[2026-06-22 12:51:39,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:51:39
[2026-06-22 12:51:40,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:51:40,247.247 INFO    ] Initializing speech engine...
[2026-06-22 12:51:40,255.255 INFO    ] 2026-06-22 12:51:40
[2026-06-22 12:51:40,530.530 INFO    ] 2026-06-22 12:51:40
[2026-06-22 12:51:40,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:51:40,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:51:40,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:51:41,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:51:41,098.098 INFO    ] time= 22/06/2026 12:51:41
[2026-06-22 12:51:41,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:51:41,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:51:41,274.274 INFO    ] No existing commands found in stream
[2026-06-22 12:51:46,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:51:46,302.302 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-22 12:51:46,809.809 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:51:46,812.812 INFO    ] Checking for system updates...
[2026-06-22 12:51:46,850.850 INFO    ] 200
[2026-06-22 12:51:46,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:51:46,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:51:46,916.916 INFO    ] No update needed
[2026-06-22 12:51:46,919.919 INFO    ] Checking for camera pi updates...
[2026-06-22 12:51:46,954.954 INFO    ] 200
[2026-06-22 12:51:46,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:51:46,997.997 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:51:47,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:51:47,082.082 INFO    ] No camera update needed
[2026-06-22 12:51:47,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:51:47,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:51:47,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:51:47,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:51:49,138.138 INFO    ] ================================================
[2026-06-22 12:51:49,155.155 INFO    ] Launching Daemon at Mon Jun 22 12:51:49 IST 2026
[2026-06-22 12:51:49,165.165 INFO    ] ================================================
[2026-06-22 12:51:49,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:51:49
[2026-06-22 12:51:50,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:51:50,575.575 INFO    ] Initializing speech engine...
[2026-06-22 12:51:50,585.585 INFO    ] 2026-06-22 12:51:50
[2026-06-22 12:51:50,869.869 INFO    ] 2026-06-22 12:51:50
[2026-06-22 12:51:50,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:51:51,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:51:51,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:51:51,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:51:51,402.402 INFO    ] time= 22/06/2026 12:51:51
[2026-06-22 12:51:51,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:51:51,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:51:51,565.565 INFO    ] No existing commands found in stream
[2026-06-22 12:51:56,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:51:56,606.606 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-22 12:51:58,679.679 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:51:58,682.682 INFO    ] Checking for system updates...
[2026-06-22 12:51:58,718.718 INFO    ] 200
[2026-06-22 12:51:58,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:51:58,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:51:58,775.775 INFO    ] No update needed
[2026-06-22 12:51:58,778.778 INFO    ] Checking for camera pi updates...
[2026-06-22 12:51:58,816.816 INFO    ] 200
[2026-06-22 12:51:58,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:51:58,860.860 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:51:58,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:51:58,947.947 INFO    ] No camera update needed
[2026-06-22 12:51:58,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:51:58,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:51:58,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:51:58,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:52:01,007.007 INFO    ] ================================================
[2026-06-22 12:52:01,023.023 INFO    ] Launching Daemon at Mon Jun 22 12:52:01 IST 2026
[2026-06-22 12:52:01,034.034 INFO    ] ================================================
[2026-06-22 12:52:01,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:52:01
[2026-06-22 12:52:02,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:52:02,703.703 INFO    ] Initializing speech engine...
[2026-06-22 12:52:02,710.710 INFO    ] 2026-06-22 12:52:02
[2026-06-22 12:52:03,016.016 INFO    ] 2026-06-22 12:52:02
[2026-06-22 12:52:03,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:52:03,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:52:03,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:52:03,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:52:03,500.500 INFO    ] time= 22/06/2026 12:52:03
[2026-06-22 12:52:03,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:52:03,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:52:03,711.711 INFO    ] No existing commands found in stream
[2026-06-22 12:52:08,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:52:08,736.736 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-22 12:52:09,937.937 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:52:09,939.939 INFO    ] Checking for system updates...
[2026-06-22 12:52:09,977.977 INFO    ] 200
[2026-06-22 12:52:09,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:52:10,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:52:10,039.039 INFO    ] No update needed
[2026-06-22 12:52:10,041.041 INFO    ] Checking for camera pi updates...
[2026-06-22 12:52:10,075.075 INFO    ] 200
[2026-06-22 12:52:10,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:52:10,118.118 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:52:10,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:52:10,202.202 INFO    ] No camera update needed
[2026-06-22 12:52:10,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:52:10,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:52:10,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:52:10,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:52:12,259.259 INFO    ] ================================================
[2026-06-22 12:52:12,275.275 INFO    ] Launching Daemon at Mon Jun 22 12:52:12 IST 2026
[2026-06-22 12:52:12,286.286 INFO    ] ================================================
[2026-06-22 12:52:12,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:52:12
[2026-06-22 12:52:13,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:52:13,613.613 INFO    ] Initializing speech engine...
[2026-06-22 12:52:13,630.630 INFO    ] 2026-06-22 12:52:13
[2026-06-22 12:52:13,894.894 INFO    ] 2026-06-22 12:52:13
[2026-06-22 12:52:13,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:52:14,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:52:14,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:52:14,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:52:14,369.369 INFO    ] time= 22/06/2026 12:52:14
[2026-06-22 12:52:14,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:52:14,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:52:14,653.653 INFO    ] No existing commands found in stream
[2026-06-22 12:52:19,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:52:19,682.682 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-22 12:52:22,649.649 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:52:22,652.652 INFO    ] Checking for system updates...
[2026-06-22 12:52:22,689.689 INFO    ] 200
[2026-06-22 12:52:22,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:52:22,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:52:22,748.748 INFO    ] No update needed
[2026-06-22 12:52:22,751.751 INFO    ] Checking for camera pi updates...
[2026-06-22 12:52:22,785.785 INFO    ] 200
[2026-06-22 12:52:22,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:52:22,829.829 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:52:22,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:52:22,913.913 INFO    ] No camera update needed
[2026-06-22 12:52:22,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:52:22,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:52:22,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:52:22,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:52:24,970.970 INFO    ] ================================================
[2026-06-22 12:52:24,986.986 INFO    ] Launching Daemon at Mon Jun 22 12:52:24 IST 2026
[2026-06-22 12:52:25,997.997 INFO    ] ================================================
[2026-06-22 12:52:25,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:52:25
[2026-06-22 12:52:26,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:52:26,479.479 INFO    ] Initializing speech engine...
[2026-06-22 12:52:26,488.488 INFO    ] 2026-06-22 12:52:26
[2026-06-22 12:52:26,783.783 INFO    ] 2026-06-22 12:52:26
[2026-06-22 12:52:26,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:52:27,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:52:27,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:52:27,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:52:27,255.255 INFO    ] time= 22/06/2026 12:52:27
[2026-06-22 12:52:27,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:52:27,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:52:27,570.570 INFO    ] No existing commands found in stream
[2026-06-22 12:52:32,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:52:32,600.600 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-22 12:52:34,363.363 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:52:34,366.366 INFO    ] Checking for system updates...
[2026-06-22 12:52:34,401.401 INFO    ] 200
[2026-06-22 12:52:34,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:52:34,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:52:34,459.459 INFO    ] No update needed
[2026-06-22 12:52:34,461.461 INFO    ] Checking for camera pi updates...
[2026-06-22 12:52:34,500.500 INFO    ] 200
[2026-06-22 12:52:34,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:52:34,554.554 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:52:34,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:52:34,613.613 INFO    ] No camera update needed
[2026-06-22 12:52:34,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:52:34,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:52:34,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:52:34,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:52:36,670.670 INFO    ] ================================================
[2026-06-22 12:52:36,686.686 INFO    ] Launching Daemon at Mon Jun 22 12:52:36 IST 2026
[2026-06-22 12:52:36,697.697 INFO    ] ================================================
[2026-06-22 12:52:37,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:52:37
[2026-06-22 12:52:37,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:52:38,041.041 INFO    ] Initializing speech engine...
[2026-06-22 12:52:38,050.050 INFO    ] 2026-06-22 12:52:38
[2026-06-22 12:52:38,308.308 INFO    ] 2026-06-22 12:52:38
[2026-06-22 12:52:38,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:52:38,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:52:38,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:52:38,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:52:38,822.822 INFO    ] time= 22/06/2026 12:52:38
[2026-06-22 12:52:38,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:52:38,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:52:39,005.005 INFO    ] No existing commands found in stream
[2026-06-22 12:52:44,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:52:44,027.027 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-22 12:52:45,026.026 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:52:45,029.029 INFO    ] Checking for system updates...
[2026-06-22 12:52:45,068.068 INFO    ] 200
[2026-06-22 12:52:45,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:52:45,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:52:45,127.127 INFO    ] No update needed
[2026-06-22 12:52:45,129.129 INFO    ] Checking for camera pi updates...
[2026-06-22 12:52:45,163.163 INFO    ] 200
[2026-06-22 12:52:45,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:52:45,209.209 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:52:45,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:52:45,292.292 INFO    ] No camera update needed
[2026-06-22 12:52:45,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:52:45,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:52:45,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:52:45,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:52:47,349.349 INFO    ] ================================================
[2026-06-22 12:52:47,365.365 INFO    ] Launching Daemon at Mon Jun 22 12:52:47 IST 2026
[2026-06-22 12:52:47,375.375 INFO    ] ================================================
[2026-06-22 12:52:47,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:52:47
[2026-06-22 12:52:48,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:52:48,796.796 INFO    ] Initializing speech engine...
[2026-06-22 12:52:48,805.805 INFO    ] 2026-06-22 12:52:48
[2026-06-22 12:52:49,096.096 INFO    ] 2026-06-22 12:52:49
[2026-06-22 12:52:49,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:52:49,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:52:49,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:52:49,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:52:49,510.510 INFO    ] time= 22/06/2026 12:52:49
[2026-06-22 12:52:49,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:52:49,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:52:49,595.595 INFO    ] No existing commands found in stream
[2026-06-22 12:52:54,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:52:54,630.630 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-22 12:52:57,018.018 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:52:57,020.020 INFO    ] Checking for system updates...
[2026-06-22 12:52:57,060.060 INFO    ] 200
[2026-06-22 12:52:57,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:52:57,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:52:57,125.125 INFO    ] No update needed
[2026-06-22 12:52:57,128.128 INFO    ] Checking for camera pi updates...
[2026-06-22 12:52:57,162.162 INFO    ] 200
[2026-06-22 12:52:57,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:52:57,208.208 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:52:57,298.298 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:52:57,300.300 INFO    ] No camera update needed
[2026-06-22 12:52:57,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:52:57,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:52:57,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:52:57,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:52:59,359.359 INFO    ] ================================================
[2026-06-22 12:52:59,374.374 INFO    ] Launching Daemon at Mon Jun 22 12:52:59 IST 2026
[2026-06-22 12:52:59,385.385 INFO    ] ================================================
[2026-06-22 12:52:59,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:52:59
[2026-06-22 12:53:00,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:53:00,934.934 INFO    ] Initializing speech engine...
[2026-06-22 12:53:00,946.946 INFO    ] 2026-06-22 12:53:00
[2026-06-22 12:53:01,230.230 INFO    ] 2026-06-22 12:53:01
[2026-06-22 12:53:01,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:53:01,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:53:01,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:53:01,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:53:01,713.713 INFO    ] time= 22/06/2026 12:53:01
[2026-06-22 12:53:01,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:53:01,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:53:01,891.891 INFO    ] No existing commands found in stream
[2026-06-22 12:53:06,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:53:06,919.919 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-22 12:53:10,448.448 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:53:10,451.451 INFO    ] Checking for system updates...
[2026-06-22 12:53:10,489.489 INFO    ] 200
[2026-06-22 12:53:10,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:53:10,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:53:10,547.547 INFO    ] No update needed
[2026-06-22 12:53:10,550.550 INFO    ] Checking for camera pi updates...
[2026-06-22 12:53:10,583.583 INFO    ] 200
[2026-06-22 12:53:10,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:53:10,630.630 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:53:10,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:53:10,715.715 INFO    ] No camera update needed
[2026-06-22 12:53:10,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:53:10,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:53:10,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:53:10,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:53:12,770.770 INFO    ] ================================================
[2026-06-22 12:53:12,785.785 INFO    ] Launching Daemon at Mon Jun 22 12:53:12 IST 2026
[2026-06-22 12:53:12,796.796 INFO    ] ================================================
[2026-06-22 12:53:13,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:53:13
[2026-06-22 12:53:13,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:53:14,209.209 INFO    ] Initializing speech engine...
[2026-06-22 12:53:14,218.218 INFO    ] 2026-06-22 12:53:14
[2026-06-22 12:53:14,507.507 INFO    ] 2026-06-22 12:53:14
[2026-06-22 12:53:14,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:53:14,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:53:14,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:53:14,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:53:14,918.918 INFO    ] time= 22/06/2026 12:53:14
[2026-06-22 12:53:14,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:53:14,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:53:15,093.093 INFO    ] No existing commands found in stream
[2026-06-22 12:53:20,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:53:20,121.121 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-22 12:53:23,874.874 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:53:23,877.877 INFO    ] Checking for system updates...
[2026-06-22 12:53:23,914.914 INFO    ] 200
[2026-06-22 12:53:23,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:53:23,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:53:23,971.971 INFO    ] No update needed
[2026-06-22 12:53:23,973.973 INFO    ] Checking for camera pi updates...
[2026-06-22 12:53:24,007.007 INFO    ] 200
[2026-06-22 12:53:24,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:53:24,050.050 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:53:24,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:53:24,147.147 INFO    ] No camera update needed
[2026-06-22 12:53:24,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:53:24,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:53:24,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:53:24,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:53:26,201.201 INFO    ] ================================================
[2026-06-22 12:53:26,216.216 INFO    ] Launching Daemon at Mon Jun 22 12:53:26 IST 2026
[2026-06-22 12:53:26,227.227 INFO    ] ================================================
[2026-06-22 12:53:26,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:53:26
[2026-06-22 12:53:27,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:53:27,545.545 INFO    ] Initializing speech engine...
[2026-06-22 12:53:27,553.553 INFO    ] 2026-06-22 12:53:27
[2026-06-22 12:53:27,828.828 INFO    ] 2026-06-22 12:53:27
[2026-06-22 12:53:27,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:53:28,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:53:28,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:53:28,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:53:28,328.328 INFO    ] time= 22/06/2026 12:53:28
[2026-06-22 12:53:28,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:53:28,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:53:28,538.538 INFO    ] No existing commands found in stream
[2026-06-22 12:53:33,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:53:33,564.564 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-22 12:53:36,305.305 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:53:36,307.307 INFO    ] Checking for system updates...
[2026-06-22 12:53:36,345.345 INFO    ] 200
[2026-06-22 12:53:36,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:53:36,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:53:36,402.402 INFO    ] No update needed
[2026-06-22 12:53:36,404.404 INFO    ] Checking for camera pi updates...
[2026-06-22 12:53:36,439.439 INFO    ] 200
[2026-06-22 12:53:36,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:53:36,490.490 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:53:36,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:53:36,576.576 INFO    ] No camera update needed
[2026-06-22 12:53:36,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:53:36,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:53:36,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:53:36,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:53:38,632.632 INFO    ] ================================================
[2026-06-22 12:53:38,648.648 INFO    ] Launching Daemon at Mon Jun 22 12:53:38 IST 2026
[2026-06-22 12:53:38,659.659 INFO    ] ================================================
[2026-06-22 12:53:39,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:53:39
[2026-06-22 12:53:39,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:53:40,016.016 INFO    ] Initializing speech engine...
[2026-06-22 12:53:40,032.032 INFO    ] 2026-06-22 12:53:40
[2026-06-22 12:53:40,318.318 INFO    ] 2026-06-22 12:53:40
[2026-06-22 12:53:40,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:53:40,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:53:40,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:53:40,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:53:40,820.820 INFO    ] time= 22/06/2026 12:53:40
[2026-06-22 12:53:40,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:53:40,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:53:41,086.086 INFO    ] No existing commands found in stream
[2026-06-22 12:53:46,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:53:46,120.120 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-22 12:53:47,125.125 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:53:47,127.127 INFO    ] Checking for system updates...
[2026-06-22 12:53:47,165.165 INFO    ] 200
[2026-06-22 12:53:47,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:53:47,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:53:47,229.229 INFO    ] No update needed
[2026-06-22 12:53:47,231.231 INFO    ] Checking for camera pi updates...
[2026-06-22 12:53:47,268.268 INFO    ] 200
[2026-06-22 12:53:47,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:53:47,311.311 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:53:47,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:53:47,379.379 INFO    ] No camera update needed
[2026-06-22 12:53:47,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:53:47,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:53:47,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:53:47,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:53:49,435.435 INFO    ] ================================================
[2026-06-22 12:53:49,451.451 INFO    ] Launching Daemon at Mon Jun 22 12:53:49 IST 2026
[2026-06-22 12:53:49,462.462 INFO    ] ================================================
[2026-06-22 12:53:50,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:53:50
[2026-06-22 12:53:50,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:53:50,802.802 INFO    ] Initializing speech engine...
[2026-06-22 12:53:50,821.821 INFO    ] 2026-06-22 12:53:50
[2026-06-22 12:53:51,087.087 INFO    ] 2026-06-22 12:53:51
[2026-06-22 12:53:51,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:53:51,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:53:51,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:53:51,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:53:51,497.497 INFO    ] time= 22/06/2026 12:53:51
[2026-06-22 12:53:51,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:53:51,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:53:51,665.665 INFO    ] No existing commands found in stream
[2026-06-22 12:53:56,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:53:56,698.698 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-22 12:53:59,167.167 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:53:59,170.170 INFO    ] Checking for system updates...
[2026-06-22 12:53:59,206.206 INFO    ] 200
[2026-06-22 12:53:59,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:53:59,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:53:59,265.265 INFO    ] No update needed
[2026-06-22 12:53:59,267.267 INFO    ] Checking for camera pi updates...
[2026-06-22 12:53:59,302.302 INFO    ] 200
[2026-06-22 12:53:59,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:53:59,345.345 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:53:59,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:53:59,411.411 INFO    ] No camera update needed
[2026-06-22 12:53:59,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:53:59,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:53:59,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:53:59,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:54:01,472.472 INFO    ] ================================================
[2026-06-22 12:54:01,512.512 INFO    ] Launching Daemon at Mon Jun 22 12:54:01 IST 2026
[2026-06-22 12:54:01,529.529 INFO    ] ================================================
[2026-06-22 12:54:02,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:54:02
[2026-06-22 12:54:02,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:54:03,214.214 INFO    ] Initializing speech engine...
[2026-06-22 12:54:03,220.220 INFO    ] 2026-06-22 12:54:03
[2026-06-22 12:54:03,512.512 INFO    ] 2026-06-22 12:54:03
[2026-06-22 12:54:03,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:54:03,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:54:03,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:54:04,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:54:04,062.062 INFO    ] time= 22/06/2026 12:54:04
[2026-06-22 12:54:04,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:54:04,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:54:04,315.315 INFO    ] No existing commands found in stream
[2026-06-22 12:54:09,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:54:09,336.336 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-22 12:54:10,177.177 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:54:10,179.179 INFO    ] Checking for system updates...
[2026-06-22 12:54:10,216.216 INFO    ] 200
[2026-06-22 12:54:10,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:54:10,271.271 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:54:10,274.274 INFO    ] No update needed
[2026-06-22 12:54:10,276.276 INFO    ] Checking for camera pi updates...
[2026-06-22 12:54:10,313.313 INFO    ] 200
[2026-06-22 12:54:10,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:54:10,360.360 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:54:10,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:54:10,430.430 INFO    ] No camera update needed
[2026-06-22 12:54:10,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:54:10,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:54:10,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:54:10,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:54:12,484.484 INFO    ] ================================================
[2026-06-22 12:54:12,500.500 INFO    ] Launching Daemon at Mon Jun 22 12:54:12 IST 2026
[2026-06-22 12:54:12,510.510 INFO    ] ================================================
[2026-06-22 12:54:13,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:54:13
[2026-06-22 12:54:13,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:54:14,112.112 INFO    ] Initializing speech engine...
[2026-06-22 12:54:14,124.124 INFO    ] 2026-06-22 12:54:14
[2026-06-22 12:54:14,389.389 INFO    ] 2026-06-22 12:54:14
[2026-06-22 12:54:14,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:54:14,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:54:14,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:54:14,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:54:14,945.945 INFO    ] time= 22/06/2026 12:54:14
[2026-06-22 12:54:14,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:54:14,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:54:15,103.103 INFO    ] No existing commands found in stream
[2026-06-22 12:54:20,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:54:20,127.127 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-22 12:54:22,115.115 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:54:22,118.118 INFO    ] Checking for system updates...
[2026-06-22 12:54:22,155.155 INFO    ] 200
[2026-06-22 12:54:22,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:54:22,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:54:22,220.220 INFO    ] No update needed
[2026-06-22 12:54:22,223.223 INFO    ] Checking for camera pi updates...
[2026-06-22 12:54:22,259.259 INFO    ] 200
[2026-06-22 12:54:22,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:54:22,304.304 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:54:22,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:54:22,380.380 INFO    ] No camera update needed
[2026-06-22 12:54:22,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:54:22,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:54:22,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:54:22,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:54:24,438.438 INFO    ] ================================================
[2026-06-22 12:54:24,453.453 INFO    ] Launching Daemon at Mon Jun 22 12:54:24 IST 2026
[2026-06-22 12:54:24,464.464 INFO    ] ================================================
[2026-06-22 12:54:25,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:54:25
[2026-06-22 12:54:25,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:54:25,902.902 INFO    ] Initializing speech engine...
[2026-06-22 12:54:25,911.911 INFO    ] 2026-06-22 12:54:25
[2026-06-22 12:54:26,198.198 INFO    ] 2026-06-22 12:54:26
[2026-06-22 12:54:26,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:54:26,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:54:26,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:54:26,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:54:26,756.756 INFO    ] time= 22/06/2026 12:54:26
[2026-06-22 12:54:26,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:54:26,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:54:26,928.928 INFO    ] No existing commands found in stream
[2026-06-22 12:54:31,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:54:31,961.961 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-22 12:54:32,733.733 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:54:32,736.736 INFO    ] Checking for system updates...
[2026-06-22 12:54:32,772.772 INFO    ] 200
[2026-06-22 12:54:32,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:54:32,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:54:32,832.832 INFO    ] No update needed
[2026-06-22 12:54:32,835.835 INFO    ] Checking for camera pi updates...
[2026-06-22 12:54:32,871.871 INFO    ] 200
[2026-06-22 12:54:32,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:54:32,919.919 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:54:33,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:54:33,032.032 INFO    ] No camera update needed
[2026-06-22 12:54:33,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:54:33,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:54:33,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:54:33,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:54:35,095.095 INFO    ] ================================================
[2026-06-22 12:54:35,111.111 INFO    ] Launching Daemon at Mon Jun 22 12:54:35 IST 2026
[2026-06-22 12:54:35,127.127 INFO    ] ================================================
[2026-06-22 12:54:35,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:54:35
[2026-06-22 12:54:36,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:54:36,589.589 INFO    ] Initializing speech engine...
[2026-06-22 12:54:36,598.598 INFO    ] 2026-06-22 12:54:36
[2026-06-22 12:54:36,849.849 INFO    ] 2026-06-22 12:54:36
[2026-06-22 12:54:36,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:54:37,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:54:37,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:54:37,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:54:37,350.350 INFO    ] time= 22/06/2026 12:54:37
[2026-06-22 12:54:37,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:54:37,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:54:37,560.560 INFO    ] No existing commands found in stream
[2026-06-22 12:54:42,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:54:42,591.591 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-22 12:54:45,898.898 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:54:45,901.901 INFO    ] Checking for system updates...
[2026-06-22 12:54:45,938.938 INFO    ] 200
[2026-06-22 12:54:45,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:54:45,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:54:46,002.002 INFO    ] No update needed
[2026-06-22 12:54:46,005.005 INFO    ] Checking for camera pi updates...
[2026-06-22 12:54:46,039.039 INFO    ] 200
[2026-06-22 12:54:46,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:54:46,092.092 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:54:46,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:54:46,147.147 INFO    ] No camera update needed
[2026-06-22 12:54:46,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:54:46,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:54:46,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:54:46,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:54:48,204.204 INFO    ] ================================================
[2026-06-22 12:54:48,220.220 INFO    ] Launching Daemon at Mon Jun 22 12:54:48 IST 2026
[2026-06-22 12:54:48,231.231 INFO    ] ================================================
[2026-06-22 12:54:48,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:54:48
[2026-06-22 12:54:49,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:54:49,606.606 INFO    ] Initializing speech engine...
[2026-06-22 12:54:49,614.614 INFO    ] 2026-06-22 12:54:49
[2026-06-22 12:54:49,876.876 INFO    ] 2026-06-22 12:54:49
[2026-06-22 12:54:49,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:54:50,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:54:50,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:54:50,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:54:50,421.421 INFO    ] time= 22/06/2026 12:54:50
[2026-06-22 12:54:50,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:54:50,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:54:50,572.572 INFO    ] No existing commands found in stream
[2026-06-22 12:54:55,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:54:55,591.591 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-22 12:54:57,637.637 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:54:57,640.640 INFO    ] Checking for system updates...
[2026-06-22 12:54:57,678.678 INFO    ] 200
[2026-06-22 12:54:57,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:54:57,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:54:57,738.738 INFO    ] No update needed
[2026-06-22 12:54:57,741.741 INFO    ] Checking for camera pi updates...
[2026-06-22 12:54:57,776.776 INFO    ] 200
[2026-06-22 12:54:57,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:54:57,820.820 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:54:57,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:54:57,907.907 INFO    ] No camera update needed
[2026-06-22 12:54:57,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:54:57,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:54:57,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:54:57,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:54:59,966.966 INFO    ] ================================================
[2026-06-22 12:54:59,982.982 INFO    ] Launching Daemon at Mon Jun 22 12:54:59 IST 2026
[2026-06-22 12:54:59,993.993 INFO    ] ================================================
[2026-06-22 12:55:00,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:55:00
[2026-06-22 12:55:01,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:55:01,863.863 INFO    ] Initializing speech engine...
[2026-06-22 12:55:01,867.867 INFO    ] 2026-06-22 12:55:01
[2026-06-22 12:55:02,273.273 INFO    ] 2026-06-22 12:55:02
[2026-06-22 12:55:02,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:55:02,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:55:02,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:55:02,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:55:02,755.755 INFO    ] time= 22/06/2026 12:55:02
[2026-06-22 12:55:02,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:55:02,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:55:02,870.870 INFO    ] No existing commands found in stream
[2026-06-22 12:55:07,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:55:07,903.903 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-22 12:55:11,803.803 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:55:11,804.804 INFO    ] Checking for system updates...
[2026-06-22 12:55:11,837.837 INFO    ] 200
[2026-06-22 12:55:11,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:55:11,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:55:11,896.896 INFO    ] No update needed
[2026-06-22 12:55:11,898.898 INFO    ] Checking for camera pi updates...
[2026-06-22 12:55:11,932.932 INFO    ] 200
[2026-06-22 12:55:11,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:55:11,975.975 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:55:12,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:55:12,077.077 INFO    ] No camera update needed
[2026-06-22 12:55:12,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:55:12,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:55:12,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:55:12,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:55:14,134.134 INFO    ] ================================================
[2026-06-22 12:55:14,149.149 INFO    ] Launching Daemon at Mon Jun 22 12:55:14 IST 2026
[2026-06-22 12:55:14,160.160 INFO    ] ================================================
[2026-06-22 12:55:14,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:55:14
[2026-06-22 12:55:15,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:55:15,514.514 INFO    ] Initializing speech engine...
[2026-06-22 12:55:15,539.539 INFO    ] 2026-06-22 12:55:15
[2026-06-22 12:55:15,814.814 INFO    ] 2026-06-22 12:55:15
[2026-06-22 12:55:15,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:55:16,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:55:16,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:55:16,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:55:16,327.327 INFO    ] time= 22/06/2026 12:55:16
[2026-06-22 12:55:16,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:55:16,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:55:16,575.575 INFO    ] No existing commands found in stream
[2026-06-22 12:55:21,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:55:21,602.602 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-22 12:55:24,959.959 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:55:24,961.961 INFO    ] Checking for system updates...
[2026-06-22 12:55:24,983.983 INFO    ] 200
[2026-06-22 12:55:24,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:55:25,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:55:25,018.018 INFO    ] No update needed
[2026-06-22 12:55:25,020.020 INFO    ] Checking for camera pi updates...
[2026-06-22 12:55:25,049.049 INFO    ] 200
[2026-06-22 12:55:25,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:55:25,092.092 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:55:25,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:55:25,174.174 INFO    ] No camera update needed
[2026-06-22 12:55:25,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:55:25,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:55:25,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:55:25,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:55:27,231.231 INFO    ] ================================================
[2026-06-22 12:55:27,246.246 INFO    ] Launching Daemon at Mon Jun 22 12:55:27 IST 2026
[2026-06-22 12:55:27,257.257 INFO    ] ================================================
[2026-06-22 12:55:27,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:55:27
[2026-06-22 12:55:28,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:55:28,604.604 INFO    ] Initializing speech engine...
[2026-06-22 12:55:28,613.613 INFO    ] 2026-06-22 12:55:28
[2026-06-22 12:55:28,862.862 INFO    ] 2026-06-22 12:55:28
[2026-06-22 12:55:28,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:55:29,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:55:29,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:55:29,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:55:29,350.350 INFO    ] time= 22/06/2026 12:55:29
[2026-06-22 12:55:29,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:55:29,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:55:29,588.588 INFO    ] No existing commands found in stream
[2026-06-22 12:55:34,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:55:34,606.606 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-22 12:55:35,458.458 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:55:35,461.461 INFO    ] Checking for system updates...
[2026-06-22 12:55:35,497.497 INFO    ] 200
[2026-06-22 12:55:35,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:55:35,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:55:35,555.555 INFO    ] No update needed
[2026-06-22 12:55:35,558.558 INFO    ] Checking for camera pi updates...
[2026-06-22 12:55:35,595.595 INFO    ] 200
[2026-06-22 12:55:35,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:55:35,639.639 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:55:35,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:55:35,842.842 INFO    ] No camera update needed
[2026-06-22 12:55:35,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:55:35,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:55:35,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:55:35,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:55:37,899.899 INFO    ] ================================================
[2026-06-22 12:55:37,915.915 INFO    ] Launching Daemon at Mon Jun 22 12:55:37 IST 2026
[2026-06-22 12:55:37,927.927 INFO    ] ================================================
[2026-06-22 12:55:38,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:55:38
[2026-06-22 12:55:39,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:55:39,253.253 INFO    ] Initializing speech engine...
[2026-06-22 12:55:39,276.276 INFO    ] 2026-06-22 12:55:39
[2026-06-22 12:55:39,532.532 INFO    ] 2026-06-22 12:55:39
[2026-06-22 12:55:39,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:55:39,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:55:39,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:55:39,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:55:40,022.022 INFO    ] time= 22/06/2026 12:55:39
[2026-06-22 12:55:40,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:55:40,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:55:40,246.246 INFO    ] No existing commands found in stream
[2026-06-22 12:55:45,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:55:45,277.277 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-22 12:55:47,531.531 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:55:47,532.532 INFO    ] Checking for system updates...
[2026-06-22 12:55:47,553.553 INFO    ] 200
[2026-06-22 12:55:47,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:55:47,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:55:47,587.587 INFO    ] No update needed
[2026-06-22 12:55:47,588.588 INFO    ] Checking for camera pi updates...
[2026-06-22 12:55:47,608.608 INFO    ] 200
[2026-06-22 12:55:47,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:55:47,639.639 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:55:47,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:55:47,708.708 INFO    ] No camera update needed
[2026-06-22 12:55:47,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:55:47,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:55:47,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:55:47,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:55:49,767.767 INFO    ] ================================================
[2026-06-22 12:55:49,782.782 INFO    ] Launching Daemon at Mon Jun 22 12:55:49 IST 2026
[2026-06-22 12:55:49,793.793 INFO    ] ================================================
[2026-06-22 12:55:50,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:55:50
[2026-06-22 12:55:51,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:55:51,336.336 INFO    ] Initializing speech engine...
[2026-06-22 12:55:51,349.349 INFO    ] 2026-06-22 12:55:51
[2026-06-22 12:55:51,635.635 INFO    ] 2026-06-22 12:55:51
[2026-06-22 12:55:51,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:55:51,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:55:51,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:55:52,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:55:52,105.105 INFO    ] time= 22/06/2026 12:55:52
[2026-06-22 12:55:52,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:55:52,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:55:52,324.324 INFO    ] No existing commands found in stream
[2026-06-22 12:55:57,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:55:57,352.352 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-22 12:55:59,986.986 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:55:59,989.989 INFO    ] Checking for system updates...
[2026-06-22 12:56:00,031.031 INFO    ] 200
[2026-06-22 12:56:00,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:56:00,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:56:00,099.099 INFO    ] No update needed
[2026-06-22 12:56:00,102.102 INFO    ] Checking for camera pi updates...
[2026-06-22 12:56:00,141.141 INFO    ] 200
[2026-06-22 12:56:00,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:56:00,187.187 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:56:00,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:56:00,274.274 INFO    ] No camera update needed
[2026-06-22 12:56:00,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:56:00,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:56:00,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:56:00,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:56:02,335.335 INFO    ] ================================================
[2026-06-22 12:56:02,352.352 INFO    ] Launching Daemon at Mon Jun 22 12:56:02 IST 2026
[2026-06-22 12:56:02,365.365 INFO    ] ================================================
[2026-06-22 12:56:03,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:56:03
[2026-06-22 12:56:03,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:56:03,910.910 INFO    ] Initializing speech engine...
[2026-06-22 12:56:03,920.920 INFO    ] 2026-06-22 12:56:03
[2026-06-22 12:56:04,214.214 INFO    ] 2026-06-22 12:56:04
[2026-06-22 12:56:04,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:56:04,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:56:04,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:56:04,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:56:04,595.595 INFO    ] time= 22/06/2026 12:56:04
[2026-06-22 12:56:04,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:56:04,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:56:04,779.779 INFO    ] No existing commands found in stream
[2026-06-22 12:56:09,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:56:09,807.807 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-22 12:56:13,432.432 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:56:13,433.433 INFO    ] Checking for system updates...
[2026-06-22 12:56:13,457.457 INFO    ] 200
[2026-06-22 12:56:13,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:56:13,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:56:13,522.522 INFO    ] No update needed
[2026-06-22 12:56:13,525.525 INFO    ] Checking for camera pi updates...
[2026-06-22 12:56:13,559.559 INFO    ] 200
[2026-06-22 12:56:13,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:56:13,602.602 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:56:13,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:56:13,698.698 INFO    ] No camera update needed
[2026-06-22 12:56:13,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:56:13,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:56:13,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:56:13,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:56:15,754.754 INFO    ] ================================================
[2026-06-22 12:56:15,770.770 INFO    ] Launching Daemon at Mon Jun 22 12:56:15 IST 2026
[2026-06-22 12:56:15,781.781 INFO    ] ================================================
[2026-06-22 12:56:16,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:56:16
[2026-06-22 12:56:16,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:56:17,115.115 INFO    ] Initializing speech engine...
[2026-06-22 12:56:17,129.129 INFO    ] 2026-06-22 12:56:17
[2026-06-22 12:56:17,385.385 INFO    ] 2026-06-22 12:56:17
[2026-06-22 12:56:17,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:56:17,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:56:17,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:56:17,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:56:17,882.882 INFO    ] time= 22/06/2026 12:56:17
[2026-06-22 12:56:17,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:56:17,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:56:18,079.079 INFO    ] No existing commands found in stream
[2026-06-22 12:56:23,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:56:23,109.109 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-22 12:56:24,710.710 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:56:24,712.712 INFO    ] Checking for system updates...
[2026-06-22 12:56:24,733.733 INFO    ] 200
[2026-06-22 12:56:24,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:56:24,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:56:24,774.774 INFO    ] No update needed
[2026-06-22 12:56:24,777.777 INFO    ] Checking for camera pi updates...
[2026-06-22 12:56:24,811.811 INFO    ] 200
[2026-06-22 12:56:24,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:56:24,856.856 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:56:24,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:56:24,932.932 INFO    ] No camera update needed
[2026-06-22 12:56:24,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:56:24,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:56:24,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:56:24,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:56:26,988.988 INFO    ] ================================================
[2026-06-22 12:56:27,005.005 INFO    ] Launching Daemon at Mon Jun 22 12:56:26 IST 2026
[2026-06-22 12:56:27,015.015 INFO    ] ================================================
[2026-06-22 12:56:27,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:56:27
[2026-06-22 12:56:28,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:56:28,359.359 INFO    ] Initializing speech engine...
[2026-06-22 12:56:28,368.368 INFO    ] 2026-06-22 12:56:28
[2026-06-22 12:56:28,614.614 INFO    ] 2026-06-22 12:56:28
[2026-06-22 12:56:28,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:56:28,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:56:28,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:56:29,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:56:29,116.116 INFO    ] time= 22/06/2026 12:56:29
[2026-06-22 12:56:29,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:56:29,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:56:29,324.324 INFO    ] No existing commands found in stream
[2026-06-22 12:56:34,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:56:34,343.343 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-22 12:56:38,566.566 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:56:38,568.568 INFO    ] Checking for system updates...
[2026-06-22 12:56:38,605.605 INFO    ] 200
[2026-06-22 12:56:38,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:56:38,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:56:38,669.669 INFO    ] No update needed
[2026-06-22 12:56:38,675.675 INFO    ] Checking for camera pi updates...
[2026-06-22 12:56:38,709.709 INFO    ] 200
[2026-06-22 12:56:38,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:56:38,752.752 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:56:38,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:56:38,844.844 INFO    ] No camera update needed
[2026-06-22 12:56:38,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:56:38,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:56:38,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:56:38,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:56:40,900.900 INFO    ] ================================================
[2026-06-22 12:56:40,916.916 INFO    ] Launching Daemon at Mon Jun 22 12:56:40 IST 2026
[2026-06-22 12:56:40,927.927 INFO    ] ================================================
[2026-06-22 12:56:41,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:56:41
[2026-06-22 12:56:42,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:56:42,273.273 INFO    ] Initializing speech engine...
[2026-06-22 12:56:42,287.287 INFO    ] 2026-06-22 12:56:42
[2026-06-22 12:56:42,576.576 INFO    ] 2026-06-22 12:56:42
[2026-06-22 12:56:42,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:56:42,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:56:42,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:56:42,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:56:42,998.998 INFO    ] time= 22/06/2026 12:56:42
[2026-06-22 12:56:43,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:56:43,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:56:43,201.201 INFO    ] No existing commands found in stream
[2026-06-22 12:56:48,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:56:48,234.234 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-22 12:56:49,027.027 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:56:49,030.030 INFO    ] Checking for system updates...
[2026-06-22 12:56:49,067.067 INFO    ] 200
[2026-06-22 12:56:49,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:56:49,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:56:49,128.128 INFO    ] No update needed
[2026-06-22 12:56:49,131.131 INFO    ] Checking for camera pi updates...
[2026-06-22 12:56:49,169.169 INFO    ] 200
[2026-06-22 12:56:49,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:56:49,213.213 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:56:49,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:56:49,292.292 INFO    ] No camera update needed
[2026-06-22 12:56:49,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:56:49,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:56:49,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:56:49,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:56:51,347.347 INFO    ] ================================================
[2026-06-22 12:56:51,363.363 INFO    ] Launching Daemon at Mon Jun 22 12:56:51 IST 2026
[2026-06-22 12:56:51,374.374 INFO    ] ================================================
[2026-06-22 12:56:51,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:56:51
[2026-06-22 12:56:52,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:56:52,721.721 INFO    ] Initializing speech engine...
[2026-06-22 12:56:52,730.730 INFO    ] 2026-06-22 12:56:52
[2026-06-22 12:56:52,991.991 INFO    ] 2026-06-22 12:56:52
[2026-06-22 12:56:53,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:56:53,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:56:53,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:56:53,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:56:53,541.541 INFO    ] time= 22/06/2026 12:56:53
[2026-06-22 12:56:53,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:56:53,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:56:53,714.714 INFO    ] No existing commands found in stream
[2026-06-22 12:56:58,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:56:58,747.747 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-22 12:57:02,369.369 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:57:02,372.372 INFO    ] Checking for system updates...
[2026-06-22 12:57:02,413.413 INFO    ] 200
[2026-06-22 12:57:02,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:57:02,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:57:02,480.480 INFO    ] No update needed
[2026-06-22 12:57:02,483.483 INFO    ] Checking for camera pi updates...
[2026-06-22 12:57:02,528.528 INFO    ] 200
[2026-06-22 12:57:02,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:57:02,580.580 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:57:02,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:57:02,634.634 INFO    ] No camera update needed
[2026-06-22 12:57:02,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:57:02,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:57:02,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:57:02,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:57:04,696.696 INFO    ] ================================================
[2026-06-22 12:57:04,712.712 INFO    ] Launching Daemon at Mon Jun 22 12:57:04 IST 2026
[2026-06-22 12:57:04,722.722 INFO    ] ================================================
[2026-06-22 12:57:05,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:57:05
[2026-06-22 12:57:06,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:57:06,297.297 INFO    ] Initializing speech engine...
[2026-06-22 12:57:06,304.304 INFO    ] 2026-06-22 12:57:06
[2026-06-22 12:57:06,578.578 INFO    ] 2026-06-22 12:57:06
[2026-06-22 12:57:06,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:57:06,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:57:06,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:57:06,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:57:06,951.951 INFO    ] time= 22/06/2026 12:57:06
[2026-06-22 12:57:06,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:57:07,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:57:07,131.131 INFO    ] No existing commands found in stream
[2026-06-22 12:57:12,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:57:12,159.159 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-22 12:57:14,364.364 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:57:14,367.367 INFO    ] Checking for system updates...
[2026-06-22 12:57:14,403.403 INFO    ] 200
[2026-06-22 12:57:14,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:57:14,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:57:14,462.462 INFO    ] No update needed
[2026-06-22 12:57:14,464.464 INFO    ] Checking for camera pi updates...
[2026-06-22 12:57:14,499.499 INFO    ] 200
[2026-06-22 12:57:14,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:57:14,542.542 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:57:14,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:57:14,629.629 INFO    ] No camera update needed
[2026-06-22 12:57:14,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:57:14,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:57:14,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:57:14,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:57:16,686.686 INFO    ] ================================================
[2026-06-22 12:57:16,701.701 INFO    ] Launching Daemon at Mon Jun 22 12:57:16 IST 2026
[2026-06-22 12:57:16,713.713 INFO    ] ================================================
[2026-06-22 12:57:17,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:57:17
[2026-06-22 12:57:17,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:57:18,076.076 INFO    ] Initializing speech engine...
[2026-06-22 12:57:18,090.090 INFO    ] 2026-06-22 12:57:18
[2026-06-22 12:57:18,377.377 INFO    ] 2026-06-22 12:57:18
[2026-06-22 12:57:18,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:57:18,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:57:18,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:57:18,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:57:18,803.803 INFO    ] time= 22/06/2026 12:57:18
[2026-06-22 12:57:18,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:57:18,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:57:18,888.888 INFO    ] No existing commands found in stream
[2026-06-22 12:57:23,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:57:23,904.904 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-22 12:57:24,543.543 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:57:24,545.545 INFO    ] Checking for system updates...
[2026-06-22 12:57:24,566.566 INFO    ] 200
[2026-06-22 12:57:24,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:57:24,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:57:24,610.610 INFO    ] No update needed
[2026-06-22 12:57:24,613.613 INFO    ] Checking for camera pi updates...
[2026-06-22 12:57:24,648.648 INFO    ] 200
[2026-06-22 12:57:24,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:57:24,692.692 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:57:24,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:57:24,779.779 INFO    ] No camera update needed
[2026-06-22 12:57:24,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:57:24,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:57:24,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:57:24,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:57:26,837.837 INFO    ] ================================================
[2026-06-22 12:57:26,854.854 INFO    ] Launching Daemon at Mon Jun 22 12:57:26 IST 2026
[2026-06-22 12:57:26,865.865 INFO    ] ================================================
[2026-06-22 12:57:27,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:57:27
[2026-06-22 12:57:28,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:57:28,409.409 INFO    ] Initializing speech engine...
[2026-06-22 12:57:28,423.423 INFO    ] 2026-06-22 12:57:28
[2026-06-22 12:57:28,742.742 INFO    ] 2026-06-22 12:57:28
[2026-06-22 12:57:28,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:57:29,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:57:29,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:57:29,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:57:29,259.259 INFO    ] time= 22/06/2026 12:57:29
[2026-06-22 12:57:29,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:57:29,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:57:29,429.429 INFO    ] No existing commands found in stream
[2026-06-22 12:57:34,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:57:34,463.463 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-22 12:57:38,224.224 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:57:38,226.226 INFO    ] Checking for system updates...
[2026-06-22 12:57:38,247.247 INFO    ] 200
[2026-06-22 12:57:38,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:57:38,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:57:38,280.280 INFO    ] No update needed
[2026-06-22 12:57:38,282.282 INFO    ] Checking for camera pi updates...
[2026-06-22 12:57:38,301.301 INFO    ] 200
[2026-06-22 12:57:38,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:57:38,341.341 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:57:38,532.532 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:57:38,535.535 INFO    ] No camera update needed
[2026-06-22 12:57:38,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:57:38,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:57:38,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:57:38,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:57:40,595.595 INFO    ] ================================================
[2026-06-22 12:57:40,611.611 INFO    ] Launching Daemon at Mon Jun 22 12:57:40 IST 2026
[2026-06-22 12:57:40,623.623 INFO    ] ================================================
[2026-06-22 12:57:41,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:57:41
[2026-06-22 12:57:41,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:57:42,000.000 INFO    ] Initializing speech engine...
[2026-06-22 12:57:42,016.016 INFO    ] 2026-06-22 12:57:42
[2026-06-22 12:57:42,300.300 INFO    ] 2026-06-22 12:57:42
[2026-06-22 12:57:42,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:57:42,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:57:42,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:57:42,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:57:42,789.789 INFO    ] time= 22/06/2026 12:57:42
[2026-06-22 12:57:42,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:57:42,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:57:43,065.065 INFO    ] No existing commands found in stream
[2026-06-22 12:57:48,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:57:48,086.086 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-22 12:57:48,668.668 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:57:48,670.670 INFO    ] Checking for system updates...
[2026-06-22 12:57:48,691.691 INFO    ] 200
[2026-06-22 12:57:48,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:57:48,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:57:48,743.743 INFO    ] No update needed
[2026-06-22 12:57:48,746.746 INFO    ] Checking for camera pi updates...
[2026-06-22 12:57:48,782.782 INFO    ] 200
[2026-06-22 12:57:48,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:57:48,827.827 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:57:48,908.908 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:57:48,910.910 INFO    ] No camera update needed
[2026-06-22 12:57:48,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:57:48,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:57:48,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:57:48,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:57:50,971.971 INFO    ] ================================================
[2026-06-22 12:57:50,990.990 INFO    ] Launching Daemon at Mon Jun 22 12:57:50 IST 2026
[2026-06-22 12:57:51,002.002 INFO    ] ================================================
[2026-06-22 12:57:51,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:57:51
[2026-06-22 12:57:52,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:57:52,465.465 INFO    ] Initializing speech engine...
[2026-06-22 12:57:52,474.474 INFO    ] 2026-06-22 12:57:52
[2026-06-22 12:57:52,734.734 INFO    ] 2026-06-22 12:57:52
[2026-06-22 12:57:52,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:57:53,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:57:53,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:57:53,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:57:53,235.235 INFO    ] time= 22/06/2026 12:57:53
[2026-06-22 12:57:53,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:57:53,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:57:53,432.432 INFO    ] No existing commands found in stream
[2026-06-22 12:57:58,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:57:58,450.450 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-22 12:58:00,299.299 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 12:58:00,300.300 INFO    ] Checking for system updates...
[2026-06-22 12:58:00,321.321 INFO    ] 200
[2026-06-22 12:58:00,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:58:00,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:58:00,355.355 INFO    ] No update needed
[2026-06-22 12:58:00,356.356 INFO    ] Checking for camera pi updates...
[2026-06-22 12:58:00,375.375 INFO    ] 200
[2026-06-22 12:58:00,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:58:00,400.400 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:58:00,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:58:00,489.489 INFO    ] No camera update needed
[2026-06-22 12:58:00,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:58:00,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:58:00,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:58:00,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:58:02,562.562 INFO    ] ================================================
[2026-06-22 12:58:02,585.585 INFO    ] Launching Daemon at Mon Jun 22 12:58:02 IST 2026
[2026-06-22 12:58:02,602.602 INFO    ] ================================================
[2026-06-22 12:58:03,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:58:03
[2026-06-22 12:58:03,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:58:04,124.124 INFO    ] Initializing speech engine...
[2026-06-22 12:58:04,134.134 INFO    ] 2026-06-22 12:58:04
[2026-06-22 12:58:04,384.384 INFO    ] 2026-06-22 12:58:04
[2026-06-22 12:58:04,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:58:04,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:58:04,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:58:04,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:58:04,828.828 INFO    ] time= 22/06/2026 12:58:04
[2026-06-22 12:58:04,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:58:04,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:58:05,095.095 INFO    ] No existing commands found in stream
[2026-06-22 12:58:10,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:58:10,122.122 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-22 12:58:11,228.228 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:58:11,231.231 INFO    ] Checking for system updates...
[2026-06-22 12:58:11,268.268 INFO    ] 200
[2026-06-22 12:58:11,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:58:11,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:58:11,329.329 INFO    ] No update needed
[2026-06-22 12:58:11,331.331 INFO    ] Checking for camera pi updates...
[2026-06-22 12:58:11,370.370 INFO    ] 200
[2026-06-22 12:58:11,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:58:11,413.413 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:58:11,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:58:11,491.491 INFO    ] No camera update needed
[2026-06-22 12:58:11,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:58:11,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:58:11,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:58:11,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:58:13,548.548 INFO    ] ================================================
[2026-06-22 12:58:13,564.564 INFO    ] Launching Daemon at Mon Jun 22 12:58:13 IST 2026
[2026-06-22 12:58:13,575.575 INFO    ] ================================================
[2026-06-22 12:58:14,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:58:14
[2026-06-22 12:58:14,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:58:14,941.941 INFO    ] Initializing speech engine...
[2026-06-22 12:58:14,954.954 INFO    ] 2026-06-22 12:58:14
[2026-06-22 12:58:15,216.216 INFO    ] 2026-06-22 12:58:15
[2026-06-22 12:58:15,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:58:15,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:58:15,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:58:15,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:58:15,779.779 INFO    ] time= 22/06/2026 12:58:15
[2026-06-22 12:58:15,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:58:15,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:58:15,993.993 INFO    ] No existing commands found in stream
[2026-06-22 12:58:21,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:58:21,011.011 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-22 12:58:24,394.394 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:58:24,396.396 INFO    ] Checking for system updates...
[2026-06-22 12:58:24,433.433 INFO    ] 200
[2026-06-22 12:58:24,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:58:24,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:58:24,491.491 INFO    ] No update needed
[2026-06-22 12:58:24,494.494 INFO    ] Checking for camera pi updates...
[2026-06-22 12:58:24,528.528 INFO    ] 200
[2026-06-22 12:58:24,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:58:24,571.571 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:58:24,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:58:24,669.669 INFO    ] No camera update needed
[2026-06-22 12:58:24,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:58:24,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:58:24,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:58:24,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:58:26,724.724 INFO    ] ================================================
[2026-06-22 12:58:26,740.740 INFO    ] Launching Daemon at Mon Jun 22 12:58:26 IST 2026
[2026-06-22 12:58:26,751.751 INFO    ] ================================================
[2026-06-22 12:58:27,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:58:27
[2026-06-22 12:58:27,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:58:28,103.103 INFO    ] Initializing speech engine...
[2026-06-22 12:58:28,127.127 INFO    ] 2026-06-22 12:58:28
[2026-06-22 12:58:28,394.394 INFO    ] 2026-06-22 12:58:28
[2026-06-22 12:58:28,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:58:28,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:58:28,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:58:28,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:58:28,904.904 INFO    ] time= 22/06/2026 12:58:28
[2026-06-22 12:58:28,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:58:29,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:58:29,141.141 INFO    ] No existing commands found in stream
[2026-06-22 12:58:34,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:58:34,168.168 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-22 12:58:38,045.045 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 12:58:38,048.048 INFO    ] Checking for system updates...
[2026-06-22 12:58:38,084.084 INFO    ] 200
[2026-06-22 12:58:38,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:58:38,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:58:38,141.141 INFO    ] No update needed
[2026-06-22 12:58:38,143.143 INFO    ] Checking for camera pi updates...
[2026-06-22 12:58:38,177.177 INFO    ] 200
[2026-06-22 12:58:38,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:58:38,219.219 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:58:38,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:58:38,302.302 INFO    ] No camera update needed
[2026-06-22 12:58:38,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:58:38,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:58:38,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:58:38,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:58:40,357.357 INFO    ] ================================================
[2026-06-22 12:58:40,372.372 INFO    ] Launching Daemon at Mon Jun 22 12:58:40 IST 2026
[2026-06-22 12:58:40,383.383 INFO    ] ================================================
[2026-06-22 12:58:41,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:58:40
[2026-06-22 12:58:41,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:58:41,910.910 INFO    ] Initializing speech engine...
[2026-06-22 12:58:41,924.924 INFO    ] 2026-06-22 12:58:41
[2026-06-22 12:58:42,191.191 INFO    ] 2026-06-22 12:58:42
[2026-06-22 12:58:42,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:58:42,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:58:42,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:58:42,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:58:42,657.657 INFO    ] time= 22/06/2026 12:58:42
[2026-06-22 12:58:42,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:58:42,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:58:42,854.854 INFO    ] No existing commands found in stream
[2026-06-22 12:58:47,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:58:47,895.895 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-22 12:58:49,270.270 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:58:49,271.271 INFO    ] Checking for system updates...
[2026-06-22 12:58:49,292.292 INFO    ] 200
[2026-06-22 12:58:49,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:58:49,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:58:49,328.328 INFO    ] No update needed
[2026-06-22 12:58:49,329.329 INFO    ] Checking for camera pi updates...
[2026-06-22 12:58:49,356.356 INFO    ] 200
[2026-06-22 12:58:49,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:58:49,401.401 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:58:49,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:58:49,481.481 INFO    ] No camera update needed
[2026-06-22 12:58:49,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:58:49,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:58:49,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:58:49,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:58:51,540.540 INFO    ] ================================================
[2026-06-22 12:58:51,555.555 INFO    ] Launching Daemon at Mon Jun 22 12:58:51 IST 2026
[2026-06-22 12:58:51,565.565 INFO    ] ================================================
[2026-06-22 12:58:52,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:58:52
[2026-06-22 12:58:52,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:58:53,010.010 INFO    ] Initializing speech engine...
[2026-06-22 12:58:53,024.024 INFO    ] 2026-06-22 12:58:53
[2026-06-22 12:58:53,309.309 INFO    ] 2026-06-22 12:58:53
[2026-06-22 12:58:53,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:58:53,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:58:53,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:58:53,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:58:53,719.719 INFO    ] time= 22/06/2026 12:58:53
[2026-06-22 12:58:53,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:58:53,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:58:53,916.916 INFO    ] No existing commands found in stream
[2026-06-22 12:58:58,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:58:58,949.949 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-22 12:59:01,070.070 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:59:01,071.071 INFO    ] Checking for system updates...
[2026-06-22 12:59:01,093.093 INFO    ] 200
[2026-06-22 12:59:01,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:59:01,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:59:01,127.127 INFO    ] No update needed
[2026-06-22 12:59:01,128.128 INFO    ] Checking for camera pi updates...
[2026-06-22 12:59:01,150.150 INFO    ] 200
[2026-06-22 12:59:01,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:59:01,193.193 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:59:01,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 12:59:01,271.271 INFO    ] No camera update needed
[2026-06-22 12:59:01,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:59:01,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:59:01,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:59:01,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:59:03,327.327 INFO    ] ================================================
[2026-06-22 12:59:03,342.342 INFO    ] Launching Daemon at Mon Jun 22 12:59:03 IST 2026
[2026-06-22 12:59:03,353.353 INFO    ] ================================================
[2026-06-22 12:59:03,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:59:03
[2026-06-22 12:59:04,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:59:04,811.811 INFO    ] Initializing speech engine...
[2026-06-22 12:59:04,821.821 INFO    ] 2026-06-22 12:59:04
[2026-06-22 12:59:05,083.083 INFO    ] 2026-06-22 12:59:05
[2026-06-22 12:59:05,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:59:05,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:59:05,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:59:05,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:59:05,628.628 INFO    ] time= 22/06/2026 12:59:05
[2026-06-22 12:59:05,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:59:05,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:59:05,782.782 INFO    ] No existing commands found in stream
[2026-06-22 12:59:10,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:59:10,798.798 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-22 12:59:14,456.456 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 12:59:14,458.458 INFO    ] Checking for system updates...
[2026-06-22 12:59:14,494.494 INFO    ] 200
[2026-06-22 12:59:14,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:59:14,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:59:14,552.552 INFO    ] No update needed
[2026-06-22 12:59:14,554.554 INFO    ] Checking for camera pi updates...
[2026-06-22 12:59:14,588.588 INFO    ] 200
[2026-06-22 12:59:14,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:59:14,632.632 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:59:14,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:59:14,727.727 INFO    ] No camera update needed
[2026-06-22 12:59:14,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:59:14,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:59:14,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:59:14,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:59:16,783.783 INFO    ] ================================================
[2026-06-22 12:59:16,799.799 INFO    ] Launching Daemon at Mon Jun 22 12:59:16 IST 2026
[2026-06-22 12:59:16,810.810 INFO    ] ================================================
[2026-06-22 12:59:17,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:59:17
[2026-06-22 12:59:18,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:59:18,310.310 INFO    ] Initializing speech engine...
[2026-06-22 12:59:18,323.323 INFO    ] 2026-06-22 12:59:18
[2026-06-22 12:59:18,607.607 INFO    ] 2026-06-22 12:59:18
[2026-06-22 12:59:18,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:59:18,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:59:18,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:59:19,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:59:19,153.153 INFO    ] time= 22/06/2026 12:59:19
[2026-06-22 12:59:19,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:59:19,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:59:19,308.308 INFO    ] No existing commands found in stream
[2026-06-22 12:59:24,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:59:24,342.342 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-22 12:59:25,510.510 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 12:59:25,513.513 INFO    ] Checking for system updates...
[2026-06-22 12:59:25,550.550 INFO    ] 200
[2026-06-22 12:59:25,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:59:25,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:59:25,608.608 INFO    ] No update needed
[2026-06-22 12:59:25,611.611 INFO    ] Checking for camera pi updates...
[2026-06-22 12:59:25,647.647 INFO    ] 200
[2026-06-22 12:59:25,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:59:25,691.691 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:59:25,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:59:25,813.813 INFO    ] No camera update needed
[2026-06-22 12:59:25,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:59:25,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:59:25,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:59:25,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:59:27,871.871 INFO    ] ================================================
[2026-06-22 12:59:27,886.886 INFO    ] Launching Daemon at Mon Jun 22 12:59:27 IST 2026
[2026-06-22 12:59:27,897.897 INFO    ] ================================================
[2026-06-22 12:59:28,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:59:28
[2026-06-22 12:59:29,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:59:29,347.347 INFO    ] Initializing speech engine...
[2026-06-22 12:59:29,356.356 INFO    ] 2026-06-22 12:59:29
[2026-06-22 12:59:29,650.650 INFO    ] 2026-06-22 12:59:29
[2026-06-22 12:59:29,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:59:29,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:59:29,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:59:30,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:59:30,187.187 INFO    ] time= 22/06/2026 12:59:30
[2026-06-22 12:59:30,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:59:30,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:59:30,341.341 INFO    ] No existing commands found in stream
[2026-06-22 12:59:35,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:59:35,360.360 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-22 12:59:38,195.195 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 12:59:38,198.198 INFO    ] Checking for system updates...
[2026-06-22 12:59:38,234.234 INFO    ] 200
[2026-06-22 12:59:38,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:59:38,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:59:38,292.292 INFO    ] No update needed
[2026-06-22 12:59:38,295.295 INFO    ] Checking for camera pi updates...
[2026-06-22 12:59:38,328.328 INFO    ] 200
[2026-06-22 12:59:38,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:59:38,371.371 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:59:38,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:59:38,478.478 INFO    ] No camera update needed
[2026-06-22 12:59:38,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:59:38,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:59:38,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:59:38,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:59:40,534.534 INFO    ] ================================================
[2026-06-22 12:59:40,549.549 INFO    ] Launching Daemon at Mon Jun 22 12:59:40 IST 2026
[2026-06-22 12:59:40,560.560 INFO    ] ================================================
[2026-06-22 12:59:41,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:59:41
[2026-06-22 12:59:41,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:59:41,902.902 INFO    ] Initializing speech engine...
[2026-06-22 12:59:41,911.911 INFO    ] 2026-06-22 12:59:41
[2026-06-22 12:59:42,162.162 INFO    ] 2026-06-22 12:59:42
[2026-06-22 12:59:42,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:59:42,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:59:42,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:59:42,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:59:42,730.730 INFO    ] time= 22/06/2026 12:59:42
[2026-06-22 12:59:42,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:59:42,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:59:42,906.906 INFO    ] No existing commands found in stream
[2026-06-22 12:59:47,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:59:47,939.939 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-22 12:59:50,118.118 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 12:59:50,120.120 INFO    ] Checking for system updates...
[2026-06-22 12:59:50,156.156 INFO    ] 200
[2026-06-22 12:59:50,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:59:50,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:59:50,213.213 INFO    ] No update needed
[2026-06-22 12:59:50,216.216 INFO    ] Checking for camera pi updates...
[2026-06-22 12:59:50,249.249 INFO    ] 200
[2026-06-22 12:59:50,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 12:59:50,292.292 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 12:59:50,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 12:59:50,453.453 INFO    ] No camera update needed
[2026-06-22 12:59:50,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-22 12:59:50,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 12:59:50,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 12:59:50,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 12:59:52,509.509 INFO    ] ================================================
[2026-06-22 12:59:52,524.524 INFO    ] Launching Daemon at Mon Jun 22 12:59:52 IST 2026
[2026-06-22 12:59:52,535.535 INFO    ] ================================================
[2026-06-22 12:59:53,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 12:59:53
[2026-06-22 12:59:53,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 12:59:53,899.899 INFO    ] Initializing speech engine...
[2026-06-22 12:59:53,907.907 INFO    ] 2026-06-22 12:59:53
[2026-06-22 12:59:54,167.167 INFO    ] 2026-06-22 12:59:54
[2026-06-22 12:59:54,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 12:59:54,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 12:59:54,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 12:59:54,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 12:59:54,712.712 INFO    ] time= 22/06/2026 12:59:54
[2026-06-22 12:59:54,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 12:59:54,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-22 12:59:54,861.861 INFO    ] No existing commands found in stream
[2026-06-22 12:59:59,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 12:59:59,878.878 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-22 13:00:01,114.114 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:00:01,115.115 INFO    ] Checking for system updates...
[2026-06-22 13:00:01,136.136 INFO    ] 200
[2026-06-22 13:00:01,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:00:01,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:00:01,169.169 INFO    ] No update needed
[2026-06-22 13:00:01,171.171 INFO    ] Checking for camera pi updates...
[2026-06-22 13:00:01,202.202 INFO    ] 200
[2026-06-22 13:00:01,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:00:01,248.248 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:00:01,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:00:01,338.338 INFO    ] No camera update needed
[2026-06-22 13:00:01,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:00:01,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:00:01,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:00:01,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:00:03,608.608 INFO    ] ================================================
[2026-06-22 13:00:03,687.687 INFO    ] Launching Daemon at Mon Jun 22 13:00:03 IST 2026
[2026-06-22 13:00:03,717.717 INFO    ] ================================================
[2026-06-22 13:00:05,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:00:05
[2026-06-22 13:00:06,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:00:06,682.682 INFO    ] Initializing speech engine...
[2026-06-22 13:00:06,690.690 INFO    ] 2026-06-22 13:00:06
[2026-06-22 13:00:06,997.997 INFO    ] 2026-06-22 13:00:06
[2026-06-22 13:00:07,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:00:07,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:00:07,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:00:07,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:00:07,926.926 INFO    ] time= 22/06/2026 13:00:07
[2026-06-22 13:00:07,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:00:07,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:00:08,951.951 INFO    ] No existing commands found in stream
[2026-06-22 13:00:13,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:00:13,991.991 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-22 13:00:16,077.077 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:00:16,080.080 INFO    ] Checking for system updates...
[2026-06-22 13:00:16,118.118 INFO    ] 200
[2026-06-22 13:00:16,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:00:16,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:00:16,181.181 INFO    ] No update needed
[2026-06-22 13:00:16,183.183 INFO    ] Checking for camera pi updates...
[2026-06-22 13:00:16,220.220 INFO    ] 200
[2026-06-22 13:00:16,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:00:16,267.267 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:00:16,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:00:16,362.362 INFO    ] No camera update needed
[2026-06-22 13:00:16,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:00:16,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:00:16,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:00:16,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:00:18,425.425 INFO    ] ================================================
[2026-06-22 13:00:18,441.441 INFO    ] Launching Daemon at Mon Jun 22 13:00:18 IST 2026
[2026-06-22 13:00:18,452.452 INFO    ] ================================================
[2026-06-22 13:00:19,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:00:19
[2026-06-22 13:00:19,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:00:19,956.956 INFO    ] Initializing speech engine...
[2026-06-22 13:00:19,965.965 INFO    ] 2026-06-22 13:00:19
[2026-06-22 13:00:20,231.231 INFO    ] 2026-06-22 13:00:20
[2026-06-22 13:00:20,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:00:20,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:00:20,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:00:20,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:00:20,724.724 INFO    ] time= 22/06/2026 13:00:20
[2026-06-22 13:00:20,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:00:20,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:00:20,969.969 INFO    ] No existing commands found in stream
[2026-06-22 13:00:25,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:00:25,999.999 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-22 13:00:26,835.835 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:00:26,838.838 INFO    ] Checking for system updates...
[2026-06-22 13:00:26,874.874 INFO    ] 200
[2026-06-22 13:00:26,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:00:26,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:00:26,932.932 INFO    ] No update needed
[2026-06-22 13:00:26,934.934 INFO    ] Checking for camera pi updates...
[2026-06-22 13:00:26,971.971 INFO    ] 200
[2026-06-22 13:00:26,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:00:27,017.017 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:00:27,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:00:27,104.104 INFO    ] No camera update needed
[2026-06-22 13:00:27,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:00:27,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:00:27,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:00:27,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:00:29,159.159 INFO    ] ================================================
[2026-06-22 13:00:29,174.174 INFO    ] Launching Daemon at Mon Jun 22 13:00:29 IST 2026
[2026-06-22 13:00:29,185.185 INFO    ] ================================================
[2026-06-22 13:00:29,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:00:29
[2026-06-22 13:00:30,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:00:30,552.552 INFO    ] Initializing speech engine...
[2026-06-22 13:00:30,566.566 INFO    ] 2026-06-22 13:00:30
[2026-06-22 13:00:30,852.852 INFO    ] 2026-06-22 13:00:30
[2026-06-22 13:00:30,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:00:31,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:00:31,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:00:31,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:00:31,273.273 INFO    ] time= 22/06/2026 13:00:31
[2026-06-22 13:00:31,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:00:31,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:00:31,358.358 INFO    ] No existing commands found in stream
[2026-06-22 13:00:36,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:00:36,373.373 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-22 13:00:38,750.750 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:00:38,753.753 INFO    ] Checking for system updates...
[2026-06-22 13:00:38,789.789 INFO    ] 200
[2026-06-22 13:00:38,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:00:38,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:00:38,851.851 INFO    ] No update needed
[2026-06-22 13:00:38,854.854 INFO    ] Checking for camera pi updates...
[2026-06-22 13:00:38,889.889 INFO    ] 200
[2026-06-22 13:00:38,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:00:38,932.932 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:00:39,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:00:39,007.007 INFO    ] No camera update needed
[2026-06-22 13:00:39,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:00:39,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:00:39,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:00:39,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:00:41,061.061 INFO    ] ================================================
[2026-06-22 13:00:41,077.077 INFO    ] Launching Daemon at Mon Jun 22 13:00:41 IST 2026
[2026-06-22 13:00:41,088.088 INFO    ] ================================================
[2026-06-22 13:00:41,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:00:41
[2026-06-22 13:00:42,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:00:42,620.620 INFO    ] Initializing speech engine...
[2026-06-22 13:00:42,628.628 INFO    ] 2026-06-22 13:00:42
[2026-06-22 13:00:42,903.903 INFO    ] 2026-06-22 13:00:42
[2026-06-22 13:00:42,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:00:43,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:00:43,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:00:43,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:00:43,652.652 INFO    ] time= 22/06/2026 13:00:43
[2026-06-22 13:00:43,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:00:43,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:00:43,927.927 INFO    ] No existing commands found in stream
[2026-06-22 13:00:48,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:00:48,941.941 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-22 13:00:52,898.898 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:00:52,900.900 INFO    ] Checking for system updates...
[2026-06-22 13:00:52,922.922 INFO    ] 200
[2026-06-22 13:00:52,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:00:52,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:00:52,971.971 INFO    ] No update needed
[2026-06-22 13:00:52,973.973 INFO    ] Checking for camera pi updates...
[2026-06-22 13:00:53,007.007 INFO    ] 200
[2026-06-22 13:00:53,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:00:53,055.055 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:00:53,154.154 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:00:53,156.156 INFO    ] No camera update needed
[2026-06-22 13:00:53,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:00:53,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:00:53,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:00:53,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:00:55,213.213 INFO    ] ================================================
[2026-06-22 13:00:55,228.228 INFO    ] Launching Daemon at Mon Jun 22 13:00:55 IST 2026
[2026-06-22 13:00:55,239.239 INFO    ] ================================================
[2026-06-22 13:00:55,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:00:55
[2026-06-22 13:00:56,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:00:56,652.652 INFO    ] Initializing speech engine...
[2026-06-22 13:00:56,661.661 INFO    ] 2026-06-22 13:00:56
[2026-06-22 13:00:56,953.953 INFO    ] 2026-06-22 13:00:56
[2026-06-22 13:00:56,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:00:57,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:00:57,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:00:57,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:00:57,373.373 INFO    ] time= 22/06/2026 13:00:57
[2026-06-22 13:00:57,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:00:57,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:00:57,563.563 INFO    ] No existing commands found in stream
[2026-06-22 13:01:02,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:01:02,603.603 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-22 13:01:06,031.031 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:01:06,033.033 INFO    ] Checking for system updates...
[2026-06-22 13:01:06,070.070 INFO    ] 200
[2026-06-22 13:01:06,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:01:06,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:01:06,128.128 INFO    ] No update needed
[2026-06-22 13:01:06,130.130 INFO    ] Checking for camera pi updates...
[2026-06-22 13:01:06,164.164 INFO    ] 200
[2026-06-22 13:01:06,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:01:06,214.214 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:01:06,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:01:06,283.283 INFO    ] No camera update needed
[2026-06-22 13:01:06,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:01:06,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:01:06,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:01:06,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:01:08,339.339 INFO    ] ================================================
[2026-06-22 13:01:08,354.354 INFO    ] Launching Daemon at Mon Jun 22 13:01:08 IST 2026
[2026-06-22 13:01:08,365.365 INFO    ] ================================================
[2026-06-22 13:01:08,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:01:08
[2026-06-22 13:01:09,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:01:09,816.816 INFO    ] Initializing speech engine...
[2026-06-22 13:01:09,822.822 INFO    ] 2026-06-22 13:01:09
[2026-06-22 13:01:10,033.033 INFO    ] 2026-06-22 13:01:10
[2026-06-22 13:01:10,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:01:10,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:01:10,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:01:10,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:01:10,518.518 INFO    ] time= 22/06/2026 13:01:10
[2026-06-22 13:01:10,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:01:10,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:01:10,719.719 INFO    ] No existing commands found in stream
[2026-06-22 13:01:15,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:01:15,734.734 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-22 13:01:17,254.254 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:01:17,257.257 INFO    ] Checking for system updates...
[2026-06-22 13:01:17,293.293 INFO    ] 200
[2026-06-22 13:01:17,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:01:17,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:01:17,351.351 INFO    ] No update needed
[2026-06-22 13:01:17,353.353 INFO    ] Checking for camera pi updates...
[2026-06-22 13:01:17,387.387 INFO    ] 200
[2026-06-22 13:01:17,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:01:17,430.430 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:01:17,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:01:17,515.515 INFO    ] No camera update needed
[2026-06-22 13:01:17,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:01:17,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:01:17,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:01:17,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:01:19,570.570 INFO    ] ================================================
[2026-06-22 13:01:19,585.585 INFO    ] Launching Daemon at Mon Jun 22 13:01:19 IST 2026
[2026-06-22 13:01:19,595.595 INFO    ] ================================================
[2026-06-22 13:01:20,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:01:20
[2026-06-22 13:01:20,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:01:20,954.954 INFO    ] Initializing speech engine...
[2026-06-22 13:01:20,963.963 INFO    ] 2026-06-22 13:01:20
[2026-06-22 13:01:21,212.212 INFO    ] 2026-06-22 13:01:21
[2026-06-22 13:01:21,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:01:21,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:01:21,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:01:21,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:01:21,767.767 INFO    ] time= 22/06/2026 13:01:21
[2026-06-22 13:01:21,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:01:21,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:01:21,921.921 INFO    ] No existing commands found in stream
[2026-06-22 13:01:26,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:01:26,937.937 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-22 13:01:29,361.361 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:01:29,363.363 INFO    ] Checking for system updates...
[2026-06-22 13:01:29,401.401 INFO    ] 200
[2026-06-22 13:01:29,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:01:29,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:01:29,460.460 INFO    ] No update needed
[2026-06-22 13:01:29,462.462 INFO    ] Checking for camera pi updates...
[2026-06-22 13:01:29,500.500 INFO    ] 200
[2026-06-22 13:01:29,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:01:29,550.550 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:01:29,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:01:29,643.643 INFO    ] No camera update needed
[2026-06-22 13:01:29,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:01:29,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:01:29,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:01:29,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:01:31,703.703 INFO    ] ================================================
[2026-06-22 13:01:31,718.718 INFO    ] Launching Daemon at Mon Jun 22 13:01:31 IST 2026
[2026-06-22 13:01:31,730.730 INFO    ] ================================================
[2026-06-22 13:01:32,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:01:32
[2026-06-22 13:01:32,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:01:33,254.254 INFO    ] Initializing speech engine...
[2026-06-22 13:01:33,265.265 INFO    ] 2026-06-22 13:01:33
[2026-06-22 13:01:33,512.512 INFO    ] 2026-06-22 13:01:33
[2026-06-22 13:01:33,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:01:33,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:01:33,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:01:34,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:01:34,131.131 INFO    ] time= 22/06/2026 13:01:34
[2026-06-22 13:01:34,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:01:34,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:01:34,341.341 INFO    ] No existing commands found in stream
[2026-06-22 13:01:39,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:01:39,360.360 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-22 13:01:42,066.066 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:01:42,069.069 INFO    ] Checking for system updates...
[2026-06-22 13:01:42,105.105 INFO    ] 200
[2026-06-22 13:01:42,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:01:42,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:01:42,163.163 INFO    ] No update needed
[2026-06-22 13:01:42,165.165 INFO    ] Checking for camera pi updates...
[2026-06-22 13:01:42,200.200 INFO    ] 200
[2026-06-22 13:01:42,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:01:42,243.243 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:01:42,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:01:42,346.346 INFO    ] No camera update needed
[2026-06-22 13:01:42,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:01:42,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:01:42,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:01:42,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:01:44,403.403 INFO    ] ================================================
[2026-06-22 13:01:44,419.419 INFO    ] Launching Daemon at Mon Jun 22 13:01:44 IST 2026
[2026-06-22 13:01:44,431.431 INFO    ] ================================================
[2026-06-22 13:01:44,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:01:44
[2026-06-22 13:01:45,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:01:45,763.763 INFO    ] Initializing speech engine...
[2026-06-22 13:01:45,777.777 INFO    ] 2026-06-22 13:01:45
[2026-06-22 13:01:46,065.065 INFO    ] 2026-06-22 13:01:46
[2026-06-22 13:01:46,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:01:46,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:01:46,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:01:46,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:01:46,476.476 INFO    ] time= 22/06/2026 13:01:46
[2026-06-22 13:01:46,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:01:46,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:01:46,626.626 INFO    ] No existing commands found in stream
[2026-06-22 13:01:51,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:01:51,653.653 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-22 13:01:55,738.738 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:01:55,741.741 INFO    ] Checking for system updates...
[2026-06-22 13:01:55,776.776 INFO    ] 200
[2026-06-22 13:01:55,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:01:55,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:01:55,834.834 INFO    ] No update needed
[2026-06-22 13:01:55,837.837 INFO    ] Checking for camera pi updates...
[2026-06-22 13:01:55,871.871 INFO    ] 200
[2026-06-22 13:01:55,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:01:55,914.914 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:01:56,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:01:56,004.004 INFO    ] No camera update needed
[2026-06-22 13:01:56,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:01:56,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:01:56,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:01:56,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:01:58,061.061 INFO    ] ================================================
[2026-06-22 13:01:58,076.076 INFO    ] Launching Daemon at Mon Jun 22 13:01:58 IST 2026
[2026-06-22 13:01:58,088.088 INFO    ] ================================================
[2026-06-22 13:01:58,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:01:58
[2026-06-22 13:01:59,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:01:59,663.663 INFO    ] Initializing speech engine...
[2026-06-22 13:01:59,668.668 INFO    ] 2026-06-22 13:01:59
[2026-06-22 13:01:59,932.932 INFO    ] 2026-06-22 13:01:59
[2026-06-22 13:01:59,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:02:00,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:02:00,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:02:00,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:02:00,354.354 INFO    ] time= 22/06/2026 13:02:00
[2026-06-22 13:02:00,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:02:00,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:02:00,513.513 INFO    ] No existing commands found in stream
[2026-06-22 13:02:05,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:02:05,546.546 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-22 13:02:06,702.702 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:02:06,705.705 INFO    ] Checking for system updates...
[2026-06-22 13:02:06,743.743 INFO    ] 200
[2026-06-22 13:02:06,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:02:06,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:02:06,803.803 INFO    ] No update needed
[2026-06-22 13:02:06,806.806 INFO    ] Checking for camera pi updates...
[2026-06-22 13:02:06,841.841 INFO    ] 200
[2026-06-22 13:02:06,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:02:06,887.887 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:02:07,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:02:07,004.004 INFO    ] No camera update needed
[2026-06-22 13:02:07,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:02:07,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:02:07,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:02:07,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:02:09,063.063 INFO    ] ================================================
[2026-06-22 13:02:09,079.079 INFO    ] Launching Daemon at Mon Jun 22 13:02:09 IST 2026
[2026-06-22 13:02:09,091.091 INFO    ] ================================================
[2026-06-22 13:02:09,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:02:09
[2026-06-22 13:02:10,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:02:10,611.611 INFO    ] Initializing speech engine...
[2026-06-22 13:02:10,620.620 INFO    ] 2026-06-22 13:02:10
[2026-06-22 13:02:10,909.909 INFO    ] 2026-06-22 13:02:10
[2026-06-22 13:02:10,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:02:11,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:02:11,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:02:11,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:02:11,459.459 INFO    ] time= 22/06/2026 13:02:11
[2026-06-22 13:02:11,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:02:11,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:02:11,614.614 INFO    ] No existing commands found in stream
[2026-06-22 13:02:16,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:02:16,636.636 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-22 13:02:17,586.586 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:02:17,587.587 INFO    ] Checking for system updates...
[2026-06-22 13:02:17,608.608 INFO    ] 200
[2026-06-22 13:02:17,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:02:17,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:02:17,642.642 INFO    ] No update needed
[2026-06-22 13:02:17,644.644 INFO    ] Checking for camera pi updates...
[2026-06-22 13:02:17,667.667 INFO    ] 200
[2026-06-22 13:02:17,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:02:17,699.699 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:02:17,797.797 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:02:17,800.800 INFO    ] No camera update needed
[2026-06-22 13:02:17,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:02:17,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:02:17,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:02:17,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:02:19,860.860 INFO    ] ================================================
[2026-06-22 13:02:19,875.875 INFO    ] Launching Daemon at Mon Jun 22 13:02:19 IST 2026
[2026-06-22 13:02:19,886.886 INFO    ] ================================================
[2026-06-22 13:02:20,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:02:20
[2026-06-22 13:02:21,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:02:21,434.434 INFO    ] Initializing speech engine...
[2026-06-22 13:02:21,441.441 INFO    ] 2026-06-22 13:02:21
[2026-06-22 13:02:21,732.732 INFO    ] 2026-06-22 13:02:21
[2026-06-22 13:02:21,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:02:22,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:02:22,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:02:22,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:02:22,282.282 INFO    ] time= 22/06/2026 13:02:22
[2026-06-22 13:02:22,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:02:22,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:02:22,453.453 INFO    ] No existing commands found in stream
[2026-06-22 13:02:27,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:02:27,488.488 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-22 13:02:30,550.550 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:02:30,553.553 INFO    ] Checking for system updates...
[2026-06-22 13:02:30,590.590 INFO    ] 200
[2026-06-22 13:02:30,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:02:30,645.645 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:02:30,647.647 INFO    ] No update needed
[2026-06-22 13:02:30,650.650 INFO    ] Checking for camera pi updates...
[2026-06-22 13:02:30,684.684 INFO    ] 200
[2026-06-22 13:02:30,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:02:30,727.727 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:02:30,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:02:30,823.823 INFO    ] No camera update needed
[2026-06-22 13:02:30,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:02:30,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:02:30,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:02:30,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:02:32,881.881 INFO    ] ================================================
[2026-06-22 13:02:32,898.898 INFO    ] Launching Daemon at Mon Jun 22 13:02:32 IST 2026
[2026-06-22 13:02:32,910.910 INFO    ] ================================================
[2026-06-22 13:02:33,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:02:33
[2026-06-22 13:02:34,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:02:34,369.369 INFO    ] Initializing speech engine...
[2026-06-22 13:02:34,379.379 INFO    ] 2026-06-22 13:02:34
[2026-06-22 13:02:34,624.624 INFO    ] 2026-06-22 13:02:34
[2026-06-22 13:02:34,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:02:34,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:02:34,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:02:35,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:02:35,064.064 INFO    ] time= 22/06/2026 13:02:35
[2026-06-22 13:02:35,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:02:35,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:02:35,265.265 INFO    ] No existing commands found in stream
[2026-06-22 13:02:40,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:02:40,279.279 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-22 13:02:44,568.568 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:02:44,571.571 INFO    ] Checking for system updates...
[2026-06-22 13:02:44,608.608 INFO    ] 200
[2026-06-22 13:02:44,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:02:44,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:02:44,666.666 INFO    ] No update needed
[2026-06-22 13:02:44,668.668 INFO    ] Checking for camera pi updates...
[2026-06-22 13:02:44,702.702 INFO    ] 200
[2026-06-22 13:02:44,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:02:44,746.746 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:02:44,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:02:44,822.822 INFO    ] No camera update needed
[2026-06-22 13:02:44,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:02:44,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:02:44,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:02:44,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:02:46,879.879 INFO    ] ================================================
[2026-06-22 13:02:46,895.895 INFO    ] Launching Daemon at Mon Jun 22 13:02:46 IST 2026
[2026-06-22 13:02:46,905.905 INFO    ] ================================================
[2026-06-22 13:02:47,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:02:47
[2026-06-22 13:02:48,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:02:48,373.373 INFO    ] Initializing speech engine...
[2026-06-22 13:02:48,378.378 INFO    ] 2026-06-22 13:02:48
[2026-06-22 13:02:48,648.648 INFO    ] 2026-06-22 13:02:48
[2026-06-22 13:02:48,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:02:48,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:02:48,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:02:49,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:02:49,154.154 INFO    ] time= 22/06/2026 13:02:49
[2026-06-22 13:02:49,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:02:49,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:02:49,356.356 INFO    ] No existing commands found in stream
[2026-06-22 13:02:54,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:02:54,385.385 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-22 13:02:56,496.496 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:02:56,497.497 INFO    ] Checking for system updates...
[2026-06-22 13:02:56,518.518 INFO    ] 200
[2026-06-22 13:02:56,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:02:56,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:02:56,573.573 INFO    ] No update needed
[2026-06-22 13:02:56,576.576 INFO    ] Checking for camera pi updates...
[2026-06-22 13:02:56,610.610 INFO    ] 200
[2026-06-22 13:02:56,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:02:56,653.653 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:02:56,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:02:56,751.751 INFO    ] No camera update needed
[2026-06-22 13:02:56,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:02:56,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:02:56,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:02:56,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:02:58,805.805 INFO    ] ================================================
[2026-06-22 13:02:58,820.820 INFO    ] Launching Daemon at Mon Jun 22 13:02:58 IST 2026
[2026-06-22 13:02:58,832.832 INFO    ] ================================================
[2026-06-22 13:02:59,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:02:59
[2026-06-22 13:02:59,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:03:00,146.146 INFO    ] Initializing speech engine...
[2026-06-22 13:03:00,165.165 INFO    ] 2026-06-22 13:03:00
[2026-06-22 13:03:00,412.412 INFO    ] 2026-06-22 13:03:00
[2026-06-22 13:03:00,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:03:00,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:03:00,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:03:00,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:03:00,965.965 INFO    ] time= 22/06/2026 13:03:00
[2026-06-22 13:03:00,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:03:00,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:03:01,120.120 INFO    ] No existing commands found in stream
[2026-06-22 13:03:06,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:03:06,138.138 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-22 13:03:07,158.158 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:03:07,161.161 INFO    ] Checking for system updates...
[2026-06-22 13:03:07,196.196 INFO    ] 200
[2026-06-22 13:03:07,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:03:07,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:03:07,257.257 INFO    ] No update needed
[2026-06-22 13:03:07,259.259 INFO    ] Checking for camera pi updates...
[2026-06-22 13:03:07,296.296 INFO    ] 200
[2026-06-22 13:03:07,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:03:07,341.341 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:03:07,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:03:07,424.424 INFO    ] No camera update needed
[2026-06-22 13:03:07,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:03:07,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:03:07,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:03:07,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:03:09,484.484 INFO    ] ================================================
[2026-06-22 13:03:09,499.499 INFO    ] Launching Daemon at Mon Jun 22 13:03:09 IST 2026
[2026-06-22 13:03:09,510.510 INFO    ] ================================================
[2026-06-22 13:03:10,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:03:10
[2026-06-22 13:03:10,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:03:10,846.846 INFO    ] Initializing speech engine...
[2026-06-22 13:03:10,855.855 INFO    ] 2026-06-22 13:03:10
[2026-06-22 13:03:11,151.151 INFO    ] 2026-06-22 13:03:11
[2026-06-22 13:03:11,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:03:11,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:03:11,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:03:11,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:03:11,576.576 INFO    ] time= 22/06/2026 13:03:11
[2026-06-22 13:03:11,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:03:11,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:03:11,802.802 INFO    ] No existing commands found in stream
[2026-06-22 13:03:16,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:03:16,818.818 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-22 13:03:19,113.113 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:03:19,116.116 INFO    ] Checking for system updates...
[2026-06-22 13:03:19,151.151 INFO    ] 200
[2026-06-22 13:03:19,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:03:19,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:03:19,211.211 INFO    ] No update needed
[2026-06-22 13:03:19,213.213 INFO    ] Checking for camera pi updates...
[2026-06-22 13:03:19,247.247 INFO    ] 200
[2026-06-22 13:03:19,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:03:19,298.298 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:03:19,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:03:19,406.406 INFO    ] No camera update needed
[2026-06-22 13:03:19,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:03:19,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:03:19,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:03:19,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:03:21,466.466 INFO    ] ================================================
[2026-06-22 13:03:21,482.482 INFO    ] Launching Daemon at Mon Jun 22 13:03:21 IST 2026
[2026-06-22 13:03:21,493.493 INFO    ] ================================================
[2026-06-22 13:03:22,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:03:22
[2026-06-22 13:03:22,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:03:22,876.876 INFO    ] Initializing speech engine...
[2026-06-22 13:03:22,885.885 INFO    ] 2026-06-22 13:03:22
[2026-06-22 13:03:23,153.153 INFO    ] 2026-06-22 13:03:23
[2026-06-22 13:03:23,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:03:23,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:03:23,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:03:23,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:03:23,702.702 INFO    ] time= 22/06/2026 13:03:23
[2026-06-22 13:03:23,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:03:23,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:03:23,852.852 INFO    ] No existing commands found in stream
[2026-06-22 13:03:28,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:03:28,872.872 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-22 13:03:31,015.015 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:03:31,016.016 INFO    ] Checking for system updates...
[2026-06-22 13:03:31,037.037 INFO    ] 200
[2026-06-22 13:03:31,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:03:31,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:03:31,072.072 INFO    ] No update needed
[2026-06-22 13:03:31,073.073 INFO    ] Checking for camera pi updates...
[2026-06-22 13:03:31,092.092 INFO    ] 200
[2026-06-22 13:03:31,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:03:31,117.117 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:03:31,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:03:31,205.205 INFO    ] No camera update needed
[2026-06-22 13:03:31,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:03:31,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:03:31,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:03:31,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:03:33,263.263 INFO    ] ================================================
[2026-06-22 13:03:33,281.281 INFO    ] Launching Daemon at Mon Jun 22 13:03:33 IST 2026
[2026-06-22 13:03:33,297.297 INFO    ] ================================================
[2026-06-22 13:03:33,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:03:33
[2026-06-22 13:03:34,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:03:34,940.940 INFO    ] Initializing speech engine...
[2026-06-22 13:03:34,953.953 INFO    ] 2026-06-22 13:03:34
[2026-06-22 13:03:35,235.235 INFO    ] 2026-06-22 13:03:35
[2026-06-22 13:03:35,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:03:35,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:03:35,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:03:35,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:03:35,730.730 INFO    ] time= 22/06/2026 13:03:35
[2026-06-22 13:03:35,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:03:35,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:03:35,983.983 INFO    ] No existing commands found in stream
[2026-06-22 13:03:41,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:03:41,016.016 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-22 13:03:44,569.569 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:03:44,572.572 INFO    ] Checking for system updates...
[2026-06-22 13:03:44,610.610 INFO    ] 200
[2026-06-22 13:03:44,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:03:44,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:03:44,670.670 INFO    ] No update needed
[2026-06-22 13:03:44,672.672 INFO    ] Checking for camera pi updates...
[2026-06-22 13:03:44,707.707 INFO    ] 200
[2026-06-22 13:03:44,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:03:44,756.756 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:03:44,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:03:44,842.842 INFO    ] No camera update needed
[2026-06-22 13:03:44,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:03:44,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:03:44,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:03:44,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:03:46,898.898 INFO    ] ================================================
[2026-06-22 13:03:46,914.914 INFO    ] Launching Daemon at Mon Jun 22 13:03:46 IST 2026
[2026-06-22 13:03:46,925.925 INFO    ] ================================================
[2026-06-22 13:03:47,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:03:47
[2026-06-22 13:03:48,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:03:48,296.296 INFO    ] Initializing speech engine...
[2026-06-22 13:03:48,306.306 INFO    ] 2026-06-22 13:03:48
[2026-06-22 13:03:48,570.570 INFO    ] 2026-06-22 13:03:48
[2026-06-22 13:03:48,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:03:48,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:03:48,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:03:48,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:03:49,057.057 INFO    ] time= 22/06/2026 13:03:49
[2026-06-22 13:03:49,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:03:49,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:03:49,270.270 INFO    ] No existing commands found in stream
[2026-06-22 13:03:54,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:03:54,288.288 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-22 13:03:56,279.279 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:03:56,282.282 INFO    ] Checking for system updates...
[2026-06-22 13:03:56,318.318 INFO    ] 200
[2026-06-22 13:03:56,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:03:56,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:03:56,376.376 INFO    ] No update needed
[2026-06-22 13:03:56,378.378 INFO    ] Checking for camera pi updates...
[2026-06-22 13:03:56,412.412 INFO    ] 200
[2026-06-22 13:03:56,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:03:56,455.455 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:03:56,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:03:56,521.521 INFO    ] No camera update needed
[2026-06-22 13:03:56,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:03:56,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:03:56,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:03:56,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:03:58,581.581 INFO    ] ================================================
[2026-06-22 13:03:58,596.596 INFO    ] Launching Daemon at Mon Jun 22 13:03:58 IST 2026
[2026-06-22 13:03:58,606.606 INFO    ] ================================================
[2026-06-22 13:03:59,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:03:59
[2026-06-22 13:03:59,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:04:00,067.067 INFO    ] Initializing speech engine...
[2026-06-22 13:04:00,073.073 INFO    ] 2026-06-22 13:04:00
[2026-06-22 13:04:00,336.336 INFO    ] 2026-06-22 13:04:00
[2026-06-22 13:04:00,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:04:00,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:04:00,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:04:00,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:04:00,803.803 INFO    ] time= 22/06/2026 13:04:00
[2026-06-22 13:04:00,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:04:00,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:04:01,035.035 INFO    ] No existing commands found in stream
[2026-06-22 13:04:06,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:04:06,052.052 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-22 13:04:07,871.871 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:04:07,874.874 INFO    ] Checking for system updates...
[2026-06-22 13:04:07,912.912 INFO    ] 200
[2026-06-22 13:04:07,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:04:07,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:04:07,971.971 INFO    ] No update needed
[2026-06-22 13:04:07,973.973 INFO    ] Checking for camera pi updates...
[2026-06-22 13:04:08,012.012 INFO    ] 200
[2026-06-22 13:04:08,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:04:08,058.058 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:04:08,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:04:08,208.208 INFO    ] No camera update needed
[2026-06-22 13:04:08,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:04:08,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:04:08,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:04:08,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:04:10,265.265 INFO    ] ================================================
[2026-06-22 13:04:10,281.281 INFO    ] Launching Daemon at Mon Jun 22 13:04:10 IST 2026
[2026-06-22 13:04:10,291.291 INFO    ] ================================================
[2026-06-22 13:04:10,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:04:10
[2026-06-22 13:04:11,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:04:11,674.674 INFO    ] Initializing speech engine...
[2026-06-22 13:04:11,696.696 INFO    ] 2026-06-22 13:04:11
[2026-06-22 13:04:11,954.954 INFO    ] 2026-06-22 13:04:11
[2026-06-22 13:04:11,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:04:12,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:04:12,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:04:12,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:04:12,384.384 INFO    ] time= 22/06/2026 13:04:12
[2026-06-22 13:04:12,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:04:12,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:04:12,544.544 INFO    ] No existing commands found in stream
[2026-06-22 13:04:17,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:04:17,559.559 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-22 13:04:20,748.748 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:04:20,751.751 INFO    ] Checking for system updates...
[2026-06-22 13:04:20,788.788 INFO    ] 200
[2026-06-22 13:04:20,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:04:20,845.845 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:04:20,848.848 INFO    ] No update needed
[2026-06-22 13:04:20,850.850 INFO    ] Checking for camera pi updates...
[2026-06-22 13:04:20,885.885 INFO    ] 200
[2026-06-22 13:04:20,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:04:20,933.933 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:04:21,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:04:21,018.018 INFO    ] No camera update needed
[2026-06-22 13:04:21,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:04:21,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:04:21,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:04:21,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:04:23,073.073 INFO    ] ================================================
[2026-06-22 13:04:23,088.088 INFO    ] Launching Daemon at Mon Jun 22 13:04:23 IST 2026
[2026-06-22 13:04:23,099.099 INFO    ] ================================================
[2026-06-22 13:04:23,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:04:23
[2026-06-22 13:04:24,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:04:24,541.541 INFO    ] Initializing speech engine...
[2026-06-22 13:04:24,563.563 INFO    ] 2026-06-22 13:04:24
[2026-06-22 13:04:24,823.823 INFO    ] 2026-06-22 13:04:24
[2026-06-22 13:04:24,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:04:25,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:04:25,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:04:25,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:04:25,379.379 INFO    ] time= 22/06/2026 13:04:25
[2026-06-22 13:04:25,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:04:25,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:04:25,531.531 INFO    ] No existing commands found in stream
[2026-06-22 13:04:30,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:04:30,549.549 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-22 13:04:32,026.026 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:04:32,029.029 INFO    ] Checking for system updates...
[2026-06-22 13:04:32,073.073 INFO    ] 200
[2026-06-22 13:04:32,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:04:32,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:04:32,137.137 INFO    ] No update needed
[2026-06-22 13:04:32,140.140 INFO    ] Checking for camera pi updates...
[2026-06-22 13:04:32,187.187 INFO    ] 200
[2026-06-22 13:04:32,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:04:32,244.244 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:04:32,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:04:32,316.316 INFO    ] No camera update needed
[2026-06-22 13:04:32,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:04:32,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:04:32,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:04:32,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:04:34,383.383 INFO    ] ================================================
[2026-06-22 13:04:34,399.399 INFO    ] Launching Daemon at Mon Jun 22 13:04:34 IST 2026
[2026-06-22 13:04:34,410.410 INFO    ] ================================================
[2026-06-22 13:04:34,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:04:34
[2026-06-22 13:04:35,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:04:35,815.815 INFO    ] Initializing speech engine...
[2026-06-22 13:04:35,823.823 INFO    ] 2026-06-22 13:04:35
[2026-06-22 13:04:36,095.095 INFO    ] 2026-06-22 13:04:36
[2026-06-22 13:04:36,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:04:36,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:04:36,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:04:36,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:04:36,635.635 INFO    ] time= 22/06/2026 13:04:36
[2026-06-22 13:04:36,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:04:36,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:04:36,808.808 INFO    ] No existing commands found in stream
[2026-06-22 13:04:41,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:04:41,826.826 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-22 13:04:44,975.975 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:04:44,978.978 INFO    ] Checking for system updates...
[2026-06-22 13:04:45,015.015 INFO    ] 200
[2026-06-22 13:04:45,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:04:45,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:04:45,080.080 INFO    ] No update needed
[2026-06-22 13:04:45,083.083 INFO    ] Checking for camera pi updates...
[2026-06-22 13:04:45,126.126 INFO    ] 200
[2026-06-22 13:04:45,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:04:45,171.171 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:04:45,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:04:45,256.256 INFO    ] No camera update needed
[2026-06-22 13:04:45,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:04:45,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:04:45,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:04:45,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:04:47,315.315 INFO    ] ================================================
[2026-06-22 13:04:47,330.330 INFO    ] Launching Daemon at Mon Jun 22 13:04:47 IST 2026
[2026-06-22 13:04:47,341.341 INFO    ] ================================================
[2026-06-22 13:04:47,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:04:47
[2026-06-22 13:04:48,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:04:48,729.729 INFO    ] Initializing speech engine...
[2026-06-22 13:04:48,737.737 INFO    ] 2026-06-22 13:04:48
[2026-06-22 13:04:48,987.987 INFO    ] 2026-06-22 13:04:48
[2026-06-22 13:04:49,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:04:49,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:04:49,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:04:49,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:04:49,525.525 INFO    ] time= 22/06/2026 13:04:49
[2026-06-22 13:04:49,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:04:49,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:04:49,698.698 INFO    ] No existing commands found in stream
[2026-06-22 13:04:54,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:04:54,714.714 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-22 13:04:58,610.610 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:04:58,612.612 INFO    ] Checking for system updates...
[2026-06-22 13:04:58,648.648 INFO    ] 200
[2026-06-22 13:04:58,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:04:58,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:04:58,706.706 INFO    ] No update needed
[2026-06-22 13:04:58,709.709 INFO    ] Checking for camera pi updates...
[2026-06-22 13:04:58,742.742 INFO    ] 200
[2026-06-22 13:04:58,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:04:58,803.803 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:04:58,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:04:58,890.890 INFO    ] No camera update needed
[2026-06-22 13:04:58,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:04:58,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:04:58,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:04:58,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:05:00,948.948 INFO    ] ================================================
[2026-06-22 13:05:00,963.963 INFO    ] Launching Daemon at Mon Jun 22 13:05:00 IST 2026
[2026-06-22 13:05:00,974.974 INFO    ] ================================================
[2026-06-22 13:05:01,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:05:01
[2026-06-22 13:05:02,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:05:02,818.818 INFO    ] Initializing speech engine...
[2026-06-22 13:05:02,826.826 INFO    ] 2026-06-22 13:05:02
[2026-06-22 13:05:03,137.137 INFO    ] 2026-06-22 13:05:03
[2026-06-22 13:05:03,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:05:03,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:05:03,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:05:03,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:05:03,669.669 INFO    ] time= 22/06/2026 13:05:03
[2026-06-22 13:05:03,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:05:03,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:05:03,871.871 INFO    ] No existing commands found in stream
[2026-06-22 13:05:08,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:05:08,910.910 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-22 13:05:12,476.476 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:05:12,479.479 INFO    ] Checking for system updates...
[2026-06-22 13:05:12,515.515 INFO    ] 200
[2026-06-22 13:05:12,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:05:12,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:05:12,579.579 INFO    ] No update needed
[2026-06-22 13:05:12,582.582 INFO    ] Checking for camera pi updates...
[2026-06-22 13:05:12,621.621 INFO    ] 200
[2026-06-22 13:05:12,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:05:12,666.666 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:05:12,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:05:12,723.723 INFO    ] No camera update needed
[2026-06-22 13:05:12,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:05:12,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:05:12,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:05:12,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:05:14,781.781 INFO    ] ================================================
[2026-06-22 13:05:14,797.797 INFO    ] Launching Daemon at Mon Jun 22 13:05:14 IST 2026
[2026-06-22 13:05:14,808.808 INFO    ] ================================================
[2026-06-22 13:05:15,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:05:15
[2026-06-22 13:05:15,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:05:16,245.245 INFO    ] Initializing speech engine...
[2026-06-22 13:05:16,268.268 INFO    ] 2026-06-22 13:05:16
[2026-06-22 13:05:16,542.542 INFO    ] 2026-06-22 13:05:16
[2026-06-22 13:05:16,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:05:16,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:05:16,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:05:17,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:05:17,038.038 INFO    ] time= 22/06/2026 13:05:17
[2026-06-22 13:05:17,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:05:17,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:05:17,287.287 INFO    ] No existing commands found in stream
[2026-06-22 13:05:22,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:05:22,320.320 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-22 13:05:24,421.421 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:05:24,422.422 INFO    ] Checking for system updates...
[2026-06-22 13:05:24,449.449 INFO    ] 200
[2026-06-22 13:05:24,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:05:24,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:05:24,506.506 INFO    ] No update needed
[2026-06-22 13:05:24,508.508 INFO    ] Checking for camera pi updates...
[2026-06-22 13:05:24,542.542 INFO    ] 200
[2026-06-22 13:05:24,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:05:24,585.585 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:05:24,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:05:24,671.671 INFO    ] No camera update needed
[2026-06-22 13:05:24,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:05:24,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:05:24,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:05:24,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:05:26,729.729 INFO    ] ================================================
[2026-06-22 13:05:26,744.744 INFO    ] Launching Daemon at Mon Jun 22 13:05:26 IST 2026
[2026-06-22 13:05:26,755.755 INFO    ] ================================================
[2026-06-22 13:05:27,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:05:27
[2026-06-22 13:05:28,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:05:28,310.310 INFO    ] Initializing speech engine...
[2026-06-22 13:05:28,318.318 INFO    ] 2026-06-22 13:05:28
[2026-06-22 13:05:28,600.600 INFO    ] 2026-06-22 13:05:28
[2026-06-22 13:05:28,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:05:28,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:05:28,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:05:29,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:05:29,150.150 INFO    ] time= 22/06/2026 13:05:29
[2026-06-22 13:05:29,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:05:29,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:05:29,310.310 INFO    ] No existing commands found in stream
[2026-06-22 13:05:34,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:05:34,338.338 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-22 13:05:35,160.160 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:05:35,163.163 INFO    ] Checking for system updates...
[2026-06-22 13:05:35,204.204 INFO    ] 200
[2026-06-22 13:05:35,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:05:35,267.267 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:05:35,270.270 INFO    ] No update needed
[2026-06-22 13:05:35,272.272 INFO    ] Checking for camera pi updates...
[2026-06-22 13:05:35,307.307 INFO    ] 200
[2026-06-22 13:05:35,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:05:35,352.352 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:05:35,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:05:35,439.439 INFO    ] No camera update needed
[2026-06-22 13:05:35,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:05:35,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:05:35,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:05:35,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:05:37,499.499 INFO    ] ================================================
[2026-06-22 13:05:37,515.515 INFO    ] Launching Daemon at Mon Jun 22 13:05:37 IST 2026
[2026-06-22 13:05:37,526.526 INFO    ] ================================================
[2026-06-22 13:05:38,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:05:38
[2026-06-22 13:05:38,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:05:39,078.078 INFO    ] Initializing speech engine...
[2026-06-22 13:05:39,091.091 INFO    ] 2026-06-22 13:05:39
[2026-06-22 13:05:39,377.377 INFO    ] 2026-06-22 13:05:39
[2026-06-22 13:05:39,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:05:39,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:05:39,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:05:39,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:05:39,908.908 INFO    ] time= 22/06/2026 13:05:39
[2026-06-22 13:05:39,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:05:39,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:05:40,039.039 INFO    ] No existing commands found in stream
[2026-06-22 13:05:45,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:05:45,052.052 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-22 13:05:49,019.019 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:05:49,022.022 INFO    ] Checking for system updates...
[2026-06-22 13:05:49,061.061 INFO    ] 200
[2026-06-22 13:05:49,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:05:49,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:05:49,125.125 INFO    ] No update needed
[2026-06-22 13:05:49,128.128 INFO    ] Checking for camera pi updates...
[2026-06-22 13:05:49,165.165 INFO    ] 200
[2026-06-22 13:05:49,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:05:49,208.208 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:05:49,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:05:49,275.275 INFO    ] No camera update needed
[2026-06-22 13:05:49,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:05:49,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:05:49,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:05:49,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:05:51,332.332 INFO    ] ================================================
[2026-06-22 13:05:51,347.347 INFO    ] Launching Daemon at Mon Jun 22 13:05:51 IST 2026
[2026-06-22 13:05:51,358.358 INFO    ] ================================================
[2026-06-22 13:05:51,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:05:51
[2026-06-22 13:05:52,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:05:52,712.712 INFO    ] Initializing speech engine...
[2026-06-22 13:05:52,719.719 INFO    ] 2026-06-22 13:05:52
[2026-06-22 13:05:52,980.980 INFO    ] 2026-06-22 13:05:52
[2026-06-22 13:05:53,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:05:53,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:05:53,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:05:53,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:05:53,444.444 INFO    ] time= 22/06/2026 13:05:53
[2026-06-22 13:05:53,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:05:53,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:05:53,658.658 INFO    ] No existing commands found in stream
[2026-06-22 13:05:58,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:05:58,689.689 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-22 13:06:01,914.914 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:06:01,916.916 INFO    ] Checking for system updates...
[2026-06-22 13:06:01,979.979 INFO    ] 200
[2026-06-22 13:06:01,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:06:02,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:06:02,129.129 INFO    ] No update needed
[2026-06-22 13:06:02,133.133 INFO    ] Checking for camera pi updates...
[2026-06-22 13:06:02,203.203 INFO    ] 200
[2026-06-22 13:06:02,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:06:02,272.272 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:06:02,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:06:02,343.343 INFO    ] No camera update needed
[2026-06-22 13:06:02,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:06:02,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:06:02,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:06:02,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:06:04,421.421 INFO    ] ================================================
[2026-06-22 13:06:04,436.436 INFO    ] Launching Daemon at Mon Jun 22 13:06:04 IST 2026
[2026-06-22 13:06:04,447.447 INFO    ] ================================================
[2026-06-22 13:06:05,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:06:05
[2026-06-22 13:06:05,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:06:05,863.863 INFO    ] Initializing speech engine...
[2026-06-22 13:06:05,886.886 INFO    ] 2026-06-22 13:06:05
[2026-06-22 13:06:06,154.154 INFO    ] 2026-06-22 13:06:06
[2026-06-22 13:06:06,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:06:06,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:06:06,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:06:06,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:06:06,558.558 INFO    ] time= 22/06/2026 13:06:06
[2026-06-22 13:06:06,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:06:06,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:06:06,641.641 INFO    ] No existing commands found in stream
[2026-06-22 13:06:11,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:06:11,679.679 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-22 13:06:14,200.200 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:06:14,203.203 INFO    ] Checking for system updates...
[2026-06-22 13:06:14,238.238 INFO    ] 200
[2026-06-22 13:06:14,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:06:14,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:06:14,295.295 INFO    ] No update needed
[2026-06-22 13:06:14,298.298 INFO    ] Checking for camera pi updates...
[2026-06-22 13:06:14,332.332 INFO    ] 200
[2026-06-22 13:06:14,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:06:14,375.375 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:06:14,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:06:14,434.434 INFO    ] No camera update needed
[2026-06-22 13:06:14,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:06:14,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:06:14,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:06:14,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:06:16,489.489 INFO    ] ================================================
[2026-06-22 13:06:16,505.505 INFO    ] Launching Daemon at Mon Jun 22 13:06:16 IST 2026
[2026-06-22 13:06:16,516.516 INFO    ] ================================================
[2026-06-22 13:06:17,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:06:17
[2026-06-22 13:06:17,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:06:17,843.843 INFO    ] Initializing speech engine...
[2026-06-22 13:06:17,852.852 INFO    ] 2026-06-22 13:06:17
[2026-06-22 13:06:18,098.098 INFO    ] 2026-06-22 13:06:18
[2026-06-22 13:06:18,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:06:18,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:06:18,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:06:18,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:06:18,566.566 INFO    ] time= 22/06/2026 13:06:18
[2026-06-22 13:06:18,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:06:18,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:06:18,779.779 INFO    ] No existing commands found in stream
[2026-06-22 13:06:23,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:06:23,812.812 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-22 13:06:24,848.848 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:06:24,851.851 INFO    ] Checking for system updates...
[2026-06-22 13:06:24,889.889 INFO    ] 200
[2026-06-22 13:06:24,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:06:24,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:06:24,959.959 INFO    ] No update needed
[2026-06-22 13:06:24,961.961 INFO    ] Checking for camera pi updates...
[2026-06-22 13:06:24,995.995 INFO    ] 200
[2026-06-22 13:06:24,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:06:25,039.039 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:06:25,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:06:25,213.213 INFO    ] No camera update needed
[2026-06-22 13:06:25,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:06:25,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:06:25,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:06:25,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:06:27,268.268 INFO    ] ================================================
[2026-06-22 13:06:27,283.283 INFO    ] Launching Daemon at Mon Jun 22 13:06:27 IST 2026
[2026-06-22 13:06:27,294.294 INFO    ] ================================================
[2026-06-22 13:06:27,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:06:27
[2026-06-22 13:06:28,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:06:28,744.744 INFO    ] Initializing speech engine...
[2026-06-22 13:06:28,753.753 INFO    ] 2026-06-22 13:06:28
[2026-06-22 13:06:29,003.003 INFO    ] 2026-06-22 13:06:28
[2026-06-22 13:06:29,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:06:29,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:06:29,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:06:29,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:06:29,573.573 INFO    ] time= 22/06/2026 13:06:29
[2026-06-22 13:06:29,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:06:29,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:06:29,710.710 INFO    ] No existing commands found in stream
[2026-06-22 13:06:34,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:06:34,738.738 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-22 13:06:35,558.558 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:06:35,561.561 INFO    ] Checking for system updates...
[2026-06-22 13:06:35,599.599 INFO    ] 200
[2026-06-22 13:06:35,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:06:35,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:06:35,660.660 INFO    ] No update needed
[2026-06-22 13:06:35,662.662 INFO    ] Checking for camera pi updates...
[2026-06-22 13:06:35,696.696 INFO    ] 200
[2026-06-22 13:06:35,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:06:35,740.740 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:06:35,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:06:35,839.839 INFO    ] No camera update needed
[2026-06-22 13:06:35,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:06:35,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:06:35,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:06:35,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:06:37,894.894 INFO    ] ================================================
[2026-06-22 13:06:37,909.909 INFO    ] Launching Daemon at Mon Jun 22 13:06:37 IST 2026
[2026-06-22 13:06:37,920.920 INFO    ] ================================================
[2026-06-22 13:06:38,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:06:38
[2026-06-22 13:06:39,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:06:39,334.334 INFO    ] Initializing speech engine...
[2026-06-22 13:06:39,359.359 INFO    ] 2026-06-22 13:06:39
[2026-06-22 13:06:39,607.607 INFO    ] 2026-06-22 13:06:39
[2026-06-22 13:06:39,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:06:39,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:06:39,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:06:40,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:06:40,086.086 INFO    ] time= 22/06/2026 13:06:40
[2026-06-22 13:06:40,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:06:40,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:06:40,257.257 INFO    ] No existing commands found in stream
[2026-06-22 13:06:45,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:06:45,290.290 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-22 13:06:48,664.664 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:06:48,666.666 INFO    ] Checking for system updates...
[2026-06-22 13:06:48,689.689 INFO    ] 200
[2026-06-22 13:06:48,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:06:48,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:06:48,748.748 INFO    ] No update needed
[2026-06-22 13:06:48,751.751 INFO    ] Checking for camera pi updates...
[2026-06-22 13:06:48,786.786 INFO    ] 200
[2026-06-22 13:06:48,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:06:48,831.831 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:06:48,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:06:48,919.919 INFO    ] No camera update needed
[2026-06-22 13:06:48,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:06:48,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:06:48,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:06:48,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:06:50,978.978 INFO    ] ================================================
[2026-06-22 13:06:50,993.993 INFO    ] Launching Daemon at Mon Jun 22 13:06:50 IST 2026
[2026-06-22 13:06:51,007.007 INFO    ] ================================================
[2026-06-22 13:06:51,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:06:51
[2026-06-22 13:06:52,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:06:52,322.322 INFO    ] Initializing speech engine...
[2026-06-22 13:06:52,331.331 INFO    ] 2026-06-22 13:06:52
[2026-06-22 13:06:52,629.629 INFO    ] 2026-06-22 13:06:52
[2026-06-22 13:06:52,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:06:52,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:06:52,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:06:53,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:06:53,050.050 INFO    ] time= 22/06/2026 13:06:53
[2026-06-22 13:06:53,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:06:53,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:06:53,257.257 INFO    ] No existing commands found in stream
[2026-06-22 13:06:58,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:06:58,277.277 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-22 13:06:59,300.300 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:06:59,303.303 INFO    ] Checking for system updates...
[2026-06-22 13:06:59,361.361 INFO    ] 200
[2026-06-22 13:06:59,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 13:06:59,367.367 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-22 13:06:59,369.369 INFO    ] Checking for camera pi updates...
[2026-06-22 13:06:59,422.422 INFO    ] 200
[2026-06-22 13:06:59,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 13:06:59,428.428 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-22 13:06:59,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:06:59,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:06:59,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:06:59,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:07:01,486.486 INFO    ] ================================================
[2026-06-22 13:07:01,504.504 INFO    ] Launching Daemon at Mon Jun 22 13:07:01 IST 2026
[2026-06-22 13:07:01,517.517 INFO    ] ================================================
[2026-06-22 13:07:02,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:07:02
[2026-06-22 13:07:02,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:07:03,127.127 INFO    ] Initializing speech engine...
[2026-06-22 13:07:03,151.151 INFO    ] 2026-06-22 13:07:03
[2026-06-22 13:07:03,447.447 INFO    ] 2026-06-22 13:07:03
[2026-06-22 13:07:03,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:07:03,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:07:03,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:07:03,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:07:03,902.902 INFO    ] time= 22/06/2026 13:07:03
[2026-06-22 13:07:03,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:07:03,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:07:04,074.074 INFO    ] No existing commands found in stream
[2026-06-22 13:07:09,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:07:09,090.090 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-22 13:07:10,806.806 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:07:10,809.809 INFO    ] Checking for system updates...
[2026-06-22 13:07:10,850.850 INFO    ] 200
[2026-06-22 13:07:10,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:07:10,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:07:10,916.916 INFO    ] No update needed
[2026-06-22 13:07:10,918.918 INFO    ] Checking for camera pi updates...
[2026-06-22 13:07:10,953.953 INFO    ] 200
[2026-06-22 13:07:10,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:07:10,998.998 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:07:11,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:07:11,096.096 INFO    ] No camera update needed
[2026-06-22 13:07:11,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:07:11,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:07:11,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:07:11,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:07:13,156.156 INFO    ] ================================================
[2026-06-22 13:07:13,172.172 INFO    ] Launching Daemon at Mon Jun 22 13:07:13 IST 2026
[2026-06-22 13:07:13,183.183 INFO    ] ================================================
[2026-06-22 13:07:13,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:07:13
[2026-06-22 13:07:14,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:07:14,597.597 INFO    ] Initializing speech engine...
[2026-06-22 13:07:14,610.610 INFO    ] 2026-06-22 13:07:14
[2026-06-22 13:07:14,920.920 INFO    ] 2026-06-22 13:07:14
[2026-06-22 13:07:15,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:07:15,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:07:15,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:07:15,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:07:15,448.448 INFO    ] time= 22/06/2026 13:07:15
[2026-06-22 13:07:15,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:07:15,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:07:15,618.618 INFO    ] No existing commands found in stream
[2026-06-22 13:07:20,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:07:20,653.653 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-22 13:07:23,559.559 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:07:23,562.562 INFO    ] Checking for system updates...
[2026-06-22 13:07:23,600.600 INFO    ] 200
[2026-06-22 13:07:23,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:07:23,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:07:23,660.660 INFO    ] No update needed
[2026-06-22 13:07:23,663.663 INFO    ] Checking for camera pi updates...
[2026-06-22 13:07:23,701.701 INFO    ] 200
[2026-06-22 13:07:23,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:07:23,751.751 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:07:23,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:07:23,804.804 INFO    ] No camera update needed
[2026-06-22 13:07:23,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:07:23,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:07:23,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:07:23,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:07:25,860.860 INFO    ] ================================================
[2026-06-22 13:07:25,875.875 INFO    ] Launching Daemon at Mon Jun 22 13:07:25 IST 2026
[2026-06-22 13:07:25,885.885 INFO    ] ================================================
[2026-06-22 13:07:26,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:07:26
[2026-06-22 13:07:27,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:07:27,335.335 INFO    ] Initializing speech engine...
[2026-06-22 13:07:27,342.342 INFO    ] 2026-06-22 13:07:27
[2026-06-22 13:07:27,630.630 INFO    ] 2026-06-22 13:07:27
[2026-06-22 13:07:27,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:07:27,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:07:27,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:07:28,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:07:28,159.159 INFO    ] time= 22/06/2026 13:07:28
[2026-06-22 13:07:28,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:07:28,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:07:28,316.316 INFO    ] No existing commands found in stream
[2026-06-22 13:07:33,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:07:33,348.348 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-22 13:07:35,308.308 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:07:35,311.311 INFO    ] Checking for system updates...
[2026-06-22 13:07:35,348.348 INFO    ] 200
[2026-06-22 13:07:35,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:07:35,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:07:35,406.406 INFO    ] No update needed
[2026-06-22 13:07:35,409.409 INFO    ] Checking for camera pi updates...
[2026-06-22 13:07:35,447.447 INFO    ] 200
[2026-06-22 13:07:35,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:07:35,497.497 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:07:35,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:07:35,600.600 INFO    ] No camera update needed
[2026-06-22 13:07:35,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:07:35,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:07:35,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:07:35,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:07:37,656.656 INFO    ] ================================================
[2026-06-22 13:07:37,671.671 INFO    ] Launching Daemon at Mon Jun 22 13:07:37 IST 2026
[2026-06-22 13:07:37,682.682 INFO    ] ================================================
[2026-06-22 13:07:38,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:07:38
[2026-06-22 13:07:38,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:07:39,275.275 INFO    ] Initializing speech engine...
[2026-06-22 13:07:39,284.284 INFO    ] 2026-06-22 13:07:39
[2026-06-22 13:07:39,568.568 INFO    ] 2026-06-22 13:07:39
[2026-06-22 13:07:39,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:07:39,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:07:39,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:07:40,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:07:40,387.387 INFO    ] time= 22/06/2026 13:07:40
[2026-06-22 13:07:40,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:07:40,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:07:40,663.663 INFO    ] No existing commands found in stream
[2026-06-22 13:07:45,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:07:45,679.679 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-22 13:07:46,620.620 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:07:46,623.623 INFO    ] Checking for system updates...
[2026-06-22 13:07:46,664.664 INFO    ] 200
[2026-06-22 13:07:46,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:07:46,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:07:46,723.723 INFO    ] No update needed
[2026-06-22 13:07:46,726.726 INFO    ] Checking for camera pi updates...
[2026-06-22 13:07:46,761.761 INFO    ] 200
[2026-06-22 13:07:46,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:07:46,805.805 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:07:46,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:07:46,904.904 INFO    ] No camera update needed
[2026-06-22 13:07:46,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:07:46,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:07:46,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:07:46,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:07:48,966.966 INFO    ] ================================================
[2026-06-22 13:07:48,982.982 INFO    ] Launching Daemon at Mon Jun 22 13:07:48 IST 2026
[2026-06-22 13:07:48,993.993 INFO    ] ================================================
[2026-06-22 13:07:49,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:07:49
[2026-06-22 13:07:50,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:07:50,444.444 INFO    ] Initializing speech engine...
[2026-06-22 13:07:50,454.454 INFO    ] 2026-06-22 13:07:50
[2026-06-22 13:07:50,701.701 INFO    ] 2026-06-22 13:07:50
[2026-06-22 13:07:50,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:07:50,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:07:50,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:07:51,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:07:51,179.179 INFO    ] time= 22/06/2026 13:07:51
[2026-06-22 13:07:51,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:07:51,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:07:51,356.356 INFO    ] No existing commands found in stream
[2026-06-22 13:07:56,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:07:56,371.371 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-22 13:07:58,745.745 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:07:58,747.747 INFO    ] Checking for system updates...
[2026-06-22 13:07:58,771.771 INFO    ] 200
[2026-06-22 13:07:58,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:07:58,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:07:58,806.806 INFO    ] No update needed
[2026-06-22 13:07:58,808.808 INFO    ] Checking for camera pi updates...
[2026-06-22 13:07:58,846.846 INFO    ] 200
[2026-06-22 13:07:58,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:07:58,895.895 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:07:59,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:07:59,007.007 INFO    ] No camera update needed
[2026-06-22 13:07:59,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:07:59,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:07:59,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:07:59,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:08:01,075.075 INFO    ] ================================================
[2026-06-22 13:08:01,113.113 INFO    ] Launching Daemon at Mon Jun 22 13:08:01 IST 2026
[2026-06-22 13:08:01,147.147 INFO    ] ================================================
[2026-06-22 13:08:01,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:08:01
[2026-06-22 13:08:02,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:08:02,931.931 INFO    ] Initializing speech engine...
[2026-06-22 13:08:02,941.941 INFO    ] 2026-06-22 13:08:02
[2026-06-22 13:08:03,253.253 INFO    ] 2026-06-22 13:08:03
[2026-06-22 13:08:03,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:08:03,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:08:03,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:08:03,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:08:03,618.618 INFO    ] time= 22/06/2026 13:08:03
[2026-06-22 13:08:03,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:08:03,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:08:03,755.755 INFO    ] No existing commands found in stream
[2026-06-22 13:08:08,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:08:08,771.771 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-22 13:08:11,178.178 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:08:11,181.181 INFO    ] Checking for system updates...
[2026-06-22 13:08:11,216.216 INFO    ] 200
[2026-06-22 13:08:11,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:08:11,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:08:11,282.282 INFO    ] No update needed
[2026-06-22 13:08:11,284.284 INFO    ] Checking for camera pi updates...
[2026-06-22 13:08:11,322.322 INFO    ] 200
[2026-06-22 13:08:11,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:08:11,372.372 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:08:11,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:08:11,464.464 INFO    ] No camera update needed
[2026-06-22 13:08:11,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:08:11,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:08:11,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:08:11,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:08:13,520.520 INFO    ] ================================================
[2026-06-22 13:08:13,537.537 INFO    ] Launching Daemon at Mon Jun 22 13:08:13 IST 2026
[2026-06-22 13:08:13,548.548 INFO    ] ================================================
[2026-06-22 13:08:14,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:08:14
[2026-06-22 13:08:14,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:08:14,882.882 INFO    ] Initializing speech engine...
[2026-06-22 13:08:14,892.892 INFO    ] 2026-06-22 13:08:14
[2026-06-22 13:08:15,139.139 INFO    ] 2026-06-22 13:08:15
[2026-06-22 13:08:15,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:08:15,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:08:15,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:08:15,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:08:15,614.614 INFO    ] time= 22/06/2026 13:08:15
[2026-06-22 13:08:15,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:08:15,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:08:15,837.837 INFO    ] No existing commands found in stream
[2026-06-22 13:08:20,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:08:20,870.870 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-22 13:08:24,508.508 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:08:24,511.511 INFO    ] Checking for system updates...
[2026-06-22 13:08:24,543.543 INFO    ] 200
[2026-06-22 13:08:24,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:08:24,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:08:24,576.576 INFO    ] No update needed
[2026-06-22 13:08:24,577.577 INFO    ] Checking for camera pi updates...
[2026-06-22 13:08:24,597.597 INFO    ] 200
[2026-06-22 13:08:24,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:08:24,623.623 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:08:24,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:08:24,676.676 INFO    ] No camera update needed
[2026-06-22 13:08:24,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:08:24,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:08:24,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:08:24,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:08:26,731.731 INFO    ] ================================================
[2026-06-22 13:08:26,747.747 INFO    ] Launching Daemon at Mon Jun 22 13:08:26 IST 2026
[2026-06-22 13:08:26,758.758 INFO    ] ================================================
[2026-06-22 13:08:27,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:08:27
[2026-06-22 13:08:27,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:08:28,123.123 INFO    ] Initializing speech engine...
[2026-06-22 13:08:28,129.129 INFO    ] 2026-06-22 13:08:28
[2026-06-22 13:08:28,379.379 INFO    ] 2026-06-22 13:08:28
[2026-06-22 13:08:28,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:08:28,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:08:28,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:08:28,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:08:28,851.851 INFO    ] time= 22/06/2026 13:08:28
[2026-06-22 13:08:28,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:08:28,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:08:29,102.102 INFO    ] No existing commands found in stream
[2026-06-22 13:08:34,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:08:34,146.146 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-22 13:08:36,183.183 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:08:36,186.186 INFO    ] Checking for system updates...
[2026-06-22 13:08:36,223.223 INFO    ] 200
[2026-06-22 13:08:36,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:08:36,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:08:36,283.283 INFO    ] No update needed
[2026-06-22 13:08:36,286.286 INFO    ] Checking for camera pi updates...
[2026-06-22 13:08:36,321.321 INFO    ] 200
[2026-06-22 13:08:36,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:08:36,372.372 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:08:36,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:08:36,464.464 INFO    ] No camera update needed
[2026-06-22 13:08:36,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:08:36,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:08:36,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:08:36,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:08:38,522.522 INFO    ] ================================================
[2026-06-22 13:08:38,538.538 INFO    ] Launching Daemon at Mon Jun 22 13:08:38 IST 2026
[2026-06-22 13:08:38,549.549 INFO    ] ================================================
[2026-06-22 13:08:39,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:08:39
[2026-06-22 13:08:39,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:08:39,907.907 INFO    ] Initializing speech engine...
[2026-06-22 13:08:39,914.914 INFO    ] 2026-06-22 13:08:39
[2026-06-22 13:08:40,213.213 INFO    ] 2026-06-22 13:08:40
[2026-06-22 13:08:40,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:08:40,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:08:40,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:08:40,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:08:40,632.632 INFO    ] time= 22/06/2026 13:08:40
[2026-06-22 13:08:40,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:08:40,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:08:40,835.835 INFO    ] No existing commands found in stream
[2026-06-22 13:08:45,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:08:45,860.860 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-22 13:08:46,510.510 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:08:46,511.511 INFO    ] Checking for system updates...
[2026-06-22 13:08:46,534.534 INFO    ] 200
[2026-06-22 13:08:46,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:08:46,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:08:46,602.602 INFO    ] No update needed
[2026-06-22 13:08:46,605.605 INFO    ] Checking for camera pi updates...
[2026-06-22 13:08:46,645.645 INFO    ] 200
[2026-06-22 13:08:46,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:08:46,690.690 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:08:46,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:08:46,777.777 INFO    ] No camera update needed
[2026-06-22 13:08:46,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:08:46,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:08:46,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:08:46,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:08:48,837.837 INFO    ] ================================================
[2026-06-22 13:08:48,853.853 INFO    ] Launching Daemon at Mon Jun 22 13:08:48 IST 2026
[2026-06-22 13:08:48,864.864 INFO    ] ================================================
[2026-06-22 13:08:49,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:08:49
[2026-06-22 13:08:49,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:08:50,190.190 INFO    ] Initializing speech engine...
[2026-06-22 13:08:50,196.196 INFO    ] 2026-06-22 13:08:50
[2026-06-22 13:08:50,494.494 INFO    ] 2026-06-22 13:08:50
[2026-06-22 13:08:50,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:08:50,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:08:50,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:08:50,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:08:50,914.914 INFO    ] time= 22/06/2026 13:08:50
[2026-06-22 13:08:50,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:08:50,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:08:51,038.038 INFO    ] No existing commands found in stream
[2026-06-22 13:08:56,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:08:56,071.071 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-22 13:08:57,229.229 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:08:57,232.232 INFO    ] Checking for system updates...
[2026-06-22 13:08:57,270.270 INFO    ] 200
[2026-06-22 13:08:57,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:08:57,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:08:57,331.331 INFO    ] No update needed
[2026-06-22 13:08:57,333.333 INFO    ] Checking for camera pi updates...
[2026-06-22 13:08:57,373.373 INFO    ] 200
[2026-06-22 13:08:57,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:08:57,424.424 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:08:57,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:08:57,519.519 INFO    ] No camera update needed
[2026-06-22 13:08:57,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:08:57,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:08:57,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:08:57,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:08:59,578.578 INFO    ] ================================================
[2026-06-22 13:08:59,594.594 INFO    ] Launching Daemon at Mon Jun 22 13:08:59 IST 2026
[2026-06-22 13:08:59,606.606 INFO    ] ================================================
[2026-06-22 13:09:00,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:09:00
[2026-06-22 13:09:00,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:09:00,941.941 INFO    ] Initializing speech engine...
[2026-06-22 13:09:00,949.949 INFO    ] 2026-06-22 13:09:00
[2026-06-22 13:09:01,254.254 INFO    ] 2026-06-22 13:09:01
[2026-06-22 13:09:01,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:09:01,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:09:01,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:09:01,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:09:01,755.755 INFO    ] time= 22/06/2026 13:09:01
[2026-06-22 13:09:01,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:09:01,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:09:01,916.916 INFO    ] No existing commands found in stream
[2026-06-22 13:09:06,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:09:06,932.932 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-22 13:09:10,213.213 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:09:10,215.215 INFO    ] Checking for system updates...
[2026-06-22 13:09:10,235.235 INFO    ] 200
[2026-06-22 13:09:10,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:09:10,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:09:10,290.290 INFO    ] No update needed
[2026-06-22 13:09:10,292.292 INFO    ] Checking for camera pi updates...
[2026-06-22 13:09:10,326.326 INFO    ] 200
[2026-06-22 13:09:10,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:09:10,373.373 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:09:10,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:09:10,462.462 INFO    ] No camera update needed
[2026-06-22 13:09:10,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:09:10,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:09:10,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:09:10,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:09:12,517.517 INFO    ] ================================================
[2026-06-22 13:09:12,533.533 INFO    ] Launching Daemon at Mon Jun 22 13:09:12 IST 2026
[2026-06-22 13:09:12,544.544 INFO    ] ================================================
[2026-06-22 13:09:13,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:09:13
[2026-06-22 13:09:13,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:09:13,919.919 INFO    ] Initializing speech engine...
[2026-06-22 13:09:13,929.929 INFO    ] 2026-06-22 13:09:13
[2026-06-22 13:09:14,178.178 INFO    ] 2026-06-22 13:09:14
[2026-06-22 13:09:14,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:09:14,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:09:14,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:09:14,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:09:14,650.650 INFO    ] time= 22/06/2026 13:09:14
[2026-06-22 13:09:14,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:09:14,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:09:14,876.876 INFO    ] No existing commands found in stream
[2026-06-22 13:09:19,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:09:19,903.903 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-22 13:09:23,480.480 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:09:23,482.482 INFO    ] Checking for system updates...
[2026-06-22 13:09:23,502.502 INFO    ] 200
[2026-06-22 13:09:23,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:09:23,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:09:23,536.536 INFO    ] No update needed
[2026-06-22 13:09:23,537.537 INFO    ] Checking for camera pi updates...
[2026-06-22 13:09:23,556.556 INFO    ] 200
[2026-06-22 13:09:23,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:09:23,595.595 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:09:23,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:09:23,680.680 INFO    ] No camera update needed
[2026-06-22 13:09:23,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:09:23,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:09:23,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:09:23,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:09:25,737.737 INFO    ] ================================================
[2026-06-22 13:09:25,753.753 INFO    ] Launching Daemon at Mon Jun 22 13:09:25 IST 2026
[2026-06-22 13:09:25,763.763 INFO    ] ================================================
[2026-06-22 13:09:26,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:09:26
[2026-06-22 13:09:26,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:09:27,129.129 INFO    ] Initializing speech engine...
[2026-06-22 13:09:27,137.137 INFO    ] 2026-06-22 13:09:27
[2026-06-22 13:09:27,432.432 INFO    ] 2026-06-22 13:09:27
[2026-06-22 13:09:27,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:09:27,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:09:27,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:09:27,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:09:28,050.050 INFO    ] time= 22/06/2026 13:09:27
[2026-06-22 13:09:28,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:09:28,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:09:28,231.231 INFO    ] No existing commands found in stream
[2026-06-22 13:09:33,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:09:33,249.249 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-22 13:09:33,819.819 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:09:33,822.822 INFO    ] Checking for system updates...
[2026-06-22 13:09:33,858.858 INFO    ] 200
[2026-06-22 13:09:33,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:09:33,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:09:33,915.915 INFO    ] No update needed
[2026-06-22 13:09:33,918.918 INFO    ] Checking for camera pi updates...
[2026-06-22 13:09:33,952.952 INFO    ] 200
[2026-06-22 13:09:33,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:09:33,995.995 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:09:34,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:09:34,081.081 INFO    ] No camera update needed
[2026-06-22 13:09:34,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:09:34,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:09:34,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:09:34,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:09:36,137.137 INFO    ] ================================================
[2026-06-22 13:09:36,153.153 INFO    ] Launching Daemon at Mon Jun 22 13:09:36 IST 2026
[2026-06-22 13:09:36,164.164 INFO    ] ================================================
[2026-06-22 13:09:36,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:09:36
[2026-06-22 13:09:37,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:09:37,581.581 INFO    ] Initializing speech engine...
[2026-06-22 13:09:37,589.589 INFO    ] 2026-06-22 13:09:37
[2026-06-22 13:09:37,862.862 INFO    ] 2026-06-22 13:09:37
[2026-06-22 13:09:37,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:09:38,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:09:38,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:09:38,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:09:38,356.356 INFO    ] time= 22/06/2026 13:09:38
[2026-06-22 13:09:38,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:09:38,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:09:38,578.578 INFO    ] No existing commands found in stream
[2026-06-22 13:09:43,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:09:43,616.616 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-22 13:09:44,430.430 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:09:44,433.433 INFO    ] Checking for system updates...
[2026-06-22 13:09:44,470.470 INFO    ] 200
[2026-06-22 13:09:44,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:09:44,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:09:44,529.529 INFO    ] No update needed
[2026-06-22 13:09:44,531.531 INFO    ] Checking for camera pi updates...
[2026-06-22 13:09:44,567.567 INFO    ] 200
[2026-06-22 13:09:44,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:09:44,611.611 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:09:44,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:09:44,712.712 INFO    ] No camera update needed
[2026-06-22 13:09:44,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:09:44,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:09:44,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:09:44,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:09:46,770.770 INFO    ] ================================================
[2026-06-22 13:09:46,785.785 INFO    ] Launching Daemon at Mon Jun 22 13:09:46 IST 2026
[2026-06-22 13:09:46,797.797 INFO    ] ================================================
[2026-06-22 13:09:47,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:09:47
[2026-06-22 13:09:47,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:09:48,209.209 INFO    ] Initializing speech engine...
[2026-06-22 13:09:48,222.222 INFO    ] 2026-06-22 13:09:48
[2026-06-22 13:09:48,501.501 INFO    ] 2026-06-22 13:09:48
[2026-06-22 13:09:48,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:09:48,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:09:48,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:09:48,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:09:49,037.037 INFO    ] time= 22/06/2026 13:09:48
[2026-06-22 13:09:49,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:09:49,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:09:49,194.194 INFO    ] No existing commands found in stream
[2026-06-22 13:09:54,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:09:54,212.212 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-22 13:09:56,743.743 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:09:56,745.745 INFO    ] Checking for system updates...
[2026-06-22 13:09:56,771.771 INFO    ] 200
[2026-06-22 13:09:56,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:09:56,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:09:56,831.831 INFO    ] No update needed
[2026-06-22 13:09:56,833.833 INFO    ] Checking for camera pi updates...
[2026-06-22 13:09:56,868.868 INFO    ] 200
[2026-06-22 13:09:56,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:09:56,966.966 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:09:57,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:09:57,057.057 INFO    ] No camera update needed
[2026-06-22 13:09:57,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:09:57,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:09:57,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:09:57,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:09:59,115.115 INFO    ] ================================================
[2026-06-22 13:09:59,131.131 INFO    ] Launching Daemon at Mon Jun 22 13:09:59 IST 2026
[2026-06-22 13:09:59,143.143 INFO    ] ================================================
[2026-06-22 13:09:59,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:09:59
[2026-06-22 13:10:00,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:10:00,480.480 INFO    ] Initializing speech engine...
[2026-06-22 13:10:00,489.489 INFO    ] 2026-06-22 13:10:00
[2026-06-22 13:10:00,780.780 INFO    ] 2026-06-22 13:10:00
[2026-06-22 13:10:00,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:10:01,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:10:01,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:10:01,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:10:01,183.183 INFO    ] time= 22/06/2026 13:10:01
[2026-06-22 13:10:01,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:10:01,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:10:01,326.326 INFO    ] No existing commands found in stream
[2026-06-22 13:10:06,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:10:06,376.376 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-22 13:10:08,752.752 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:10:08,755.755 INFO    ] Checking for system updates...
[2026-06-22 13:10:08,791.791 INFO    ] 200
[2026-06-22 13:10:08,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:10:08,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:10:08,852.852 INFO    ] No update needed
[2026-06-22 13:10:08,854.854 INFO    ] Checking for camera pi updates...
[2026-06-22 13:10:08,889.889 INFO    ] 200
[2026-06-22 13:10:08,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:10:08,933.933 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:10:09,015.015 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:10:09,018.018 INFO    ] No camera update needed
[2026-06-22 13:10:09,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:10:09,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:10:09,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:10:09,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:10:11,077.077 INFO    ] ================================================
[2026-06-22 13:10:11,093.093 INFO    ] Launching Daemon at Mon Jun 22 13:10:11 IST 2026
[2026-06-22 13:10:11,104.104 INFO    ] ================================================
[2026-06-22 13:10:11,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:10:11
[2026-06-22 13:10:12,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:10:12,542.542 INFO    ] Initializing speech engine...
[2026-06-22 13:10:12,548.548 INFO    ] 2026-06-22 13:10:12
[2026-06-22 13:10:12,793.793 INFO    ] 2026-06-22 13:10:12
[2026-06-22 13:10:12,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:10:13,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:10:13,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:10:13,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:10:13,340.340 INFO    ] time= 22/06/2026 13:10:13
[2026-06-22 13:10:13,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:10:13,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:10:13,507.507 INFO    ] No existing commands found in stream
[2026-06-22 13:10:18,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:10:18,525.525 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-22 13:10:22,484.484 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:10:22,486.486 INFO    ] Checking for system updates...
[2026-06-22 13:10:22,507.507 INFO    ] 200
[2026-06-22 13:10:22,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:10:22,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:10:22,542.542 INFO    ] No update needed
[2026-06-22 13:10:22,543.543 INFO    ] Checking for camera pi updates...
[2026-06-22 13:10:22,562.562 INFO    ] 200
[2026-06-22 13:10:22,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:10:22,589.589 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:10:22,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:10:22,674.674 INFO    ] No camera update needed
[2026-06-22 13:10:22,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:10:22,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:10:22,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:10:22,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:10:24,729.729 INFO    ] ================================================
[2026-06-22 13:10:24,745.745 INFO    ] Launching Daemon at Mon Jun 22 13:10:24 IST 2026
[2026-06-22 13:10:24,756.756 INFO    ] ================================================
[2026-06-22 13:10:25,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:10:25
[2026-06-22 13:10:25,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:10:26,088.088 INFO    ] Initializing speech engine...
[2026-06-22 13:10:26,103.103 INFO    ] 2026-06-22 13:10:26
[2026-06-22 13:10:26,371.371 INFO    ] 2026-06-22 13:10:26
[2026-06-22 13:10:26,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:10:26,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:10:26,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:10:26,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:10:26,748.748 INFO    ] time= 22/06/2026 13:10:26
[2026-06-22 13:10:26,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:10:26,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:10:26,927.927 INFO    ] No existing commands found in stream
[2026-06-22 13:10:31,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:10:31,961.961 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-22 13:10:35,745.745 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:10:35,748.748 INFO    ] Checking for system updates...
[2026-06-22 13:10:35,788.788 INFO    ] 200
[2026-06-22 13:10:35,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:10:35,855.855 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:10:35,858.858 INFO    ] No update needed
[2026-06-22 13:10:35,860.860 INFO    ] Checking for camera pi updates...
[2026-06-22 13:10:35,901.901 INFO    ] 200
[2026-06-22 13:10:35,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:10:35,956.956 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:10:36,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:10:36,141.141 INFO    ] No camera update needed
[2026-06-22 13:10:36,143.143 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:10:36,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:10:36,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:10:36,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:10:38,200.200 INFO    ] ================================================
[2026-06-22 13:10:38,217.217 INFO    ] Launching Daemon at Mon Jun 22 13:10:38 IST 2026
[2026-06-22 13:10:38,228.228 INFO    ] ================================================
[2026-06-22 13:10:38,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:10:38
[2026-06-22 13:10:39,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:10:39,690.690 INFO    ] Initializing speech engine...
[2026-06-22 13:10:39,703.703 INFO    ] 2026-06-22 13:10:39
[2026-06-22 13:10:39,919.919 INFO    ] 2026-06-22 13:10:39
[2026-06-22 13:10:39,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:10:40,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:10:40,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:10:40,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:10:40,415.415 INFO    ] time= 22/06/2026 13:10:40
[2026-06-22 13:10:40,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:10:40,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:10:40,647.647 INFO    ] No existing commands found in stream
[2026-06-22 13:10:45,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:10:45,676.676 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-22 13:10:46,119.119 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:10:46,121.121 INFO    ] Checking for system updates...
[2026-06-22 13:10:46,157.157 INFO    ] 200
[2026-06-22 13:10:46,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:10:46,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:10:46,220.220 INFO    ] No update needed
[2026-06-22 13:10:46,222.222 INFO    ] Checking for camera pi updates...
[2026-06-22 13:10:46,256.256 INFO    ] 200
[2026-06-22 13:10:46,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:10:46,303.303 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:10:46,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:10:46,379.379 INFO    ] No camera update needed
[2026-06-22 13:10:46,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:10:46,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:10:46,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:10:46,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:10:48,436.436 INFO    ] ================================================
[2026-06-22 13:10:48,452.452 INFO    ] Launching Daemon at Mon Jun 22 13:10:48 IST 2026
[2026-06-22 13:10:48,463.463 INFO    ] ================================================
[2026-06-22 13:10:49,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:10:49
[2026-06-22 13:10:49,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:10:49,810.810 INFO    ] Initializing speech engine...
[2026-06-22 13:10:49,825.825 INFO    ] 2026-06-22 13:10:49
[2026-06-22 13:10:50,091.091 INFO    ] 2026-06-22 13:10:50
[2026-06-22 13:10:50,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:10:50,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:10:50,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:10:50,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:10:50,582.582 INFO    ] time= 22/06/2026 13:10:50
[2026-06-22 13:10:50,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:10:50,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:10:50,783.783 INFO    ] No existing commands found in stream
[2026-06-22 13:10:55,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:10:55,811.811 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-22 13:10:57,042.042 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:10:57,043.043 INFO    ] Checking for system updates...
[2026-06-22 13:10:57,064.064 INFO    ] 200
[2026-06-22 13:10:57,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:10:57,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:10:57,102.102 INFO    ] No update needed
[2026-06-22 13:10:57,105.105 INFO    ] Checking for camera pi updates...
[2026-06-22 13:10:57,138.138 INFO    ] 200
[2026-06-22 13:10:57,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:10:57,182.182 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:10:57,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:10:57,275.275 INFO    ] No camera update needed
[2026-06-22 13:10:57,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:10:57,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:10:57,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:10:57,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:10:59,331.331 INFO    ] ================================================
[2026-06-22 13:10:59,347.347 INFO    ] Launching Daemon at Mon Jun 22 13:10:59 IST 2026
[2026-06-22 13:10:59,358.358 INFO    ] ================================================
[2026-06-22 13:10:59,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:10:59
[2026-06-22 13:11:00,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:11:00,814.814 INFO    ] Initializing speech engine...
[2026-06-22 13:11:00,826.826 INFO    ] 2026-06-22 13:11:00
[2026-06-22 13:11:01,136.136 INFO    ] 2026-06-22 13:11:01
[2026-06-22 13:11:01,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:11:01,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:11:01,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:11:01,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:11:01,580.580 INFO    ] time= 22/06/2026 13:11:01
[2026-06-22 13:11:01,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:11:01,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:11:01,699.699 INFO    ] No existing commands found in stream
[2026-06-22 13:11:06,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:11:06,713.713 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-22 13:11:08,898.898 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:11:08,901.901 INFO    ] Checking for system updates...
[2026-06-22 13:11:08,936.936 INFO    ] 200
[2026-06-22 13:11:08,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:11:08,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:11:08,999.999 INFO    ] No update needed
[2026-06-22 13:11:09,001.001 INFO    ] Checking for camera pi updates...
[2026-06-22 13:11:09,035.035 INFO    ] 200
[2026-06-22 13:11:09,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:11:09,077.077 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:11:09,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:11:09,176.176 INFO    ] No camera update needed
[2026-06-22 13:11:09,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:11:09,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:11:09,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:11:09,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:11:11,232.232 INFO    ] ================================================
[2026-06-22 13:11:11,248.248 INFO    ] Launching Daemon at Mon Jun 22 13:11:11 IST 2026
[2026-06-22 13:11:11,259.259 INFO    ] ================================================
[2026-06-22 13:11:11,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:11:11
[2026-06-22 13:11:12,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:11:12,700.700 INFO    ] Initializing speech engine...
[2026-06-22 13:11:12,709.709 INFO    ] 2026-06-22 13:11:12
[2026-06-22 13:11:13,002.002 INFO    ] 2026-06-22 13:11:12
[2026-06-22 13:11:13,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:11:13,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:11:13,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:11:13,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:11:13,533.533 INFO    ] time= 22/06/2026 13:11:13
[2026-06-22 13:11:13,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:11:13,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:11:13,742.742 INFO    ] No existing commands found in stream
[2026-06-22 13:11:18,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:11:18,756.756 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-22 13:11:21,329.329 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:11:21,331.331 INFO    ] Checking for system updates...
[2026-06-22 13:11:21,372.372 INFO    ] 200
[2026-06-22 13:11:21,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:11:21,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:11:21,431.431 INFO    ] No update needed
[2026-06-22 13:11:21,434.434 INFO    ] Checking for camera pi updates...
[2026-06-22 13:11:21,472.472 INFO    ] 200
[2026-06-22 13:11:21,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:11:21,527.527 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:11:21,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:11:21,613.613 INFO    ] No camera update needed
[2026-06-22 13:11:21,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:11:21,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:11:21,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:11:21,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:11:23,672.672 INFO    ] ================================================
[2026-06-22 13:11:23,687.687 INFO    ] Launching Daemon at Mon Jun 22 13:11:23 IST 2026
[2026-06-22 13:11:23,697.697 INFO    ] ================================================
[2026-06-22 13:11:24,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:11:24
[2026-06-22 13:11:24,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:11:25,019.019 INFO    ] Initializing speech engine...
[2026-06-22 13:11:25,027.027 INFO    ] 2026-06-22 13:11:25
[2026-06-22 13:11:25,323.323 INFO    ] 2026-06-22 13:11:25
[2026-06-22 13:11:25,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:11:25,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:11:25,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:11:25,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:11:25,723.723 INFO    ] time= 22/06/2026 13:11:25
[2026-06-22 13:11:25,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:11:25,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:11:25,835.835 INFO    ] No existing commands found in stream
[2026-06-22 13:11:30,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:11:30,875.875 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-22 13:11:34,239.239 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:11:34,242.242 INFO    ] Checking for system updates...
[2026-06-22 13:11:34,278.278 INFO    ] 200
[2026-06-22 13:11:34,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:11:34,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:11:34,335.335 INFO    ] No update needed
[2026-06-22 13:11:34,338.338 INFO    ] Checking for camera pi updates...
[2026-06-22 13:11:34,371.371 INFO    ] 200
[2026-06-22 13:11:34,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:11:34,417.417 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:11:34,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:11:34,517.517 INFO    ] No camera update needed
[2026-06-22 13:11:34,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:11:34,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:11:34,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:11:34,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:11:36,575.575 INFO    ] ================================================
[2026-06-22 13:11:36,590.590 INFO    ] Launching Daemon at Mon Jun 22 13:11:36 IST 2026
[2026-06-22 13:11:36,600.600 INFO    ] ================================================
[2026-06-22 13:11:37,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:11:37
[2026-06-22 13:11:37,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:11:38,121.121 INFO    ] Initializing speech engine...
[2026-06-22 13:11:38,128.128 INFO    ] 2026-06-22 13:11:38
[2026-06-22 13:11:38,397.397 INFO    ] 2026-06-22 13:11:38
[2026-06-22 13:11:38,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:11:38,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:11:38,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:11:38,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:11:38,885.885 INFO    ] time= 22/06/2026 13:11:38
[2026-06-22 13:11:38,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:11:38,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:11:39,093.093 INFO    ] No existing commands found in stream
[2026-06-22 13:11:44,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:11:44,127.127 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-22 13:11:48,523.523 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:11:48,525.525 INFO    ] Checking for system updates...
[2026-06-22 13:11:48,546.546 INFO    ] 200
[2026-06-22 13:11:48,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:11:48,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:11:48,604.604 INFO    ] No update needed
[2026-06-22 13:11:48,607.607 INFO    ] Checking for camera pi updates...
[2026-06-22 13:11:48,643.643 INFO    ] 200
[2026-06-22 13:11:48,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:11:48,688.688 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:11:48,768.768 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:11:48,771.771 INFO    ] No camera update needed
[2026-06-22 13:11:48,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:11:48,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:11:48,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:11:48,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:11:50,828.828 INFO    ] ================================================
[2026-06-22 13:11:50,843.843 INFO    ] Launching Daemon at Mon Jun 22 13:11:50 IST 2026
[2026-06-22 13:11:50,854.854 INFO    ] ================================================
[2026-06-22 13:11:51,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:11:51
[2026-06-22 13:11:52,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:11:52,436.436 INFO    ] Initializing speech engine...
[2026-06-22 13:11:52,445.445 INFO    ] 2026-06-22 13:11:52
[2026-06-22 13:11:52,711.711 INFO    ] 2026-06-22 13:11:52
[2026-06-22 13:11:52,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:11:52,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:11:53,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:11:53,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:11:53,199.199 INFO    ] time= 22/06/2026 13:11:53
[2026-06-22 13:11:53,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:11:53,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:11:53,401.401 INFO    ] No existing commands found in stream
[2026-06-22 13:11:58,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:11:58,429.429 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-22 13:12:00,828.828 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:12:00,830.830 INFO    ] Checking for system updates...
[2026-06-22 13:12:00,851.851 INFO    ] 200
[2026-06-22 13:12:00,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:12:00,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:12:00,908.908 INFO    ] No update needed
[2026-06-22 13:12:00,910.910 INFO    ] Checking for camera pi updates...
[2026-06-22 13:12:00,943.943 INFO    ] 200
[2026-06-22 13:12:00,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:12:00,991.991 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:12:01,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:12:01,076.076 INFO    ] No camera update needed
[2026-06-22 13:12:01,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:12:01,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:12:01,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:12:01,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:12:03,134.134 INFO    ] ================================================
[2026-06-22 13:12:03,151.151 INFO    ] Launching Daemon at Mon Jun 22 13:12:03 IST 2026
[2026-06-22 13:12:03,162.162 INFO    ] ================================================
[2026-06-22 13:12:03,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:12:03
[2026-06-22 13:12:04,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:12:04,778.778 INFO    ] Initializing speech engine...
[2026-06-22 13:12:04,791.791 INFO    ] 2026-06-22 13:12:04
[2026-06-22 13:12:05,068.068 INFO    ] 2026-06-22 13:12:05
[2026-06-22 13:12:05,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:12:05,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:12:05,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:12:05,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:12:05,496.496 INFO    ] time= 22/06/2026 13:12:05
[2026-06-22 13:12:05,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:12:05,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:12:05,683.683 INFO    ] No existing commands found in stream
[2026-06-22 13:12:10,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:12:10,699.699 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-22 13:12:13,706.706 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:12:13,709.709 INFO    ] Checking for system updates...
[2026-06-22 13:12:13,746.746 INFO    ] 200
[2026-06-22 13:12:13,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:12:13,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:12:13,805.805 INFO    ] No update needed
[2026-06-22 13:12:13,808.808 INFO    ] Checking for camera pi updates...
[2026-06-22 13:12:13,841.841 INFO    ] 200
[2026-06-22 13:12:13,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:12:13,884.884 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:12:13,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:12:13,974.974 INFO    ] No camera update needed
[2026-06-22 13:12:13,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:12:13,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:12:13,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:12:13,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:12:16,027.027 INFO    ] ================================================
[2026-06-22 13:12:16,043.043 INFO    ] Launching Daemon at Mon Jun 22 13:12:16 IST 2026
[2026-06-22 13:12:16,053.053 INFO    ] ================================================
[2026-06-22 13:12:16,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:12:16
[2026-06-22 13:12:17,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:12:17,608.608 INFO    ] Initializing speech engine...
[2026-06-22 13:12:17,614.614 INFO    ] 2026-06-22 13:12:17
[2026-06-22 13:12:17,883.883 INFO    ] 2026-06-22 13:12:17
[2026-06-22 13:12:17,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:12:18,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:12:18,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:12:18,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:12:18,437.437 INFO    ] time= 22/06/2026 13:12:18
[2026-06-22 13:12:18,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:12:18,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:12:18,594.594 INFO    ] No existing commands found in stream
[2026-06-22 13:12:23,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:12:23,626.626 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-22 13:12:25,968.968 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:12:25,970.970 INFO    ] Checking for system updates...
[2026-06-22 13:12:26,001.001 INFO    ] 200
[2026-06-22 13:12:26,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:12:26,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:12:26,064.064 INFO    ] No update needed
[2026-06-22 13:12:26,066.066 INFO    ] Checking for camera pi updates...
[2026-06-22 13:12:26,121.121 INFO    ] 200
[2026-06-22 13:12:26,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:12:26,163.163 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:12:26,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:12:26,260.260 INFO    ] No camera update needed
[2026-06-22 13:12:26,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:12:26,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:12:26,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:12:26,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:12:28,315.315 INFO    ] ================================================
[2026-06-22 13:12:28,330.330 INFO    ] Launching Daemon at Mon Jun 22 13:12:28 IST 2026
[2026-06-22 13:12:28,341.341 INFO    ] ================================================
[2026-06-22 13:12:28,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:12:28
[2026-06-22 13:12:29,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:12:29,674.674 INFO    ] Initializing speech engine...
[2026-06-22 13:12:29,684.684 INFO    ] 2026-06-22 13:12:29
[2026-06-22 13:12:29,928.928 INFO    ] 2026-06-22 13:12:29
[2026-06-22 13:12:29,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:12:30,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:12:30,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:12:30,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:12:30,397.397 INFO    ] time= 22/06/2026 13:12:30
[2026-06-22 13:12:30,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:12:30,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:12:30,615.615 INFO    ] No existing commands found in stream
[2026-06-22 13:12:35,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:12:35,643.643 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-22 13:12:38,747.747 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:12:38,750.750 INFO    ] Checking for system updates...
[2026-06-22 13:12:38,787.787 INFO    ] 200
[2026-06-22 13:12:38,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:12:38,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:12:38,853.853 INFO    ] No update needed
[2026-06-22 13:12:38,856.856 INFO    ] Checking for camera pi updates...
[2026-06-22 13:12:38,892.892 INFO    ] 200
[2026-06-22 13:12:38,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:12:38,939.939 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:12:39,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:12:39,118.118 INFO    ] No camera update needed
[2026-06-22 13:12:39,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:12:39,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:12:39,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:12:39,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:12:41,177.177 INFO    ] ================================================
[2026-06-22 13:12:41,193.193 INFO    ] Launching Daemon at Mon Jun 22 13:12:41 IST 2026
[2026-06-22 13:12:41,204.204 INFO    ] ================================================
[2026-06-22 13:12:41,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:12:41
[2026-06-22 13:12:42,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:12:42,758.758 INFO    ] Initializing speech engine...
[2026-06-22 13:12:42,769.769 INFO    ] 2026-06-22 13:12:42
[2026-06-22 13:12:43,038.038 INFO    ] 2026-06-22 13:12:43
[2026-06-22 13:12:43,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:12:43,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:12:43,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:12:43,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:12:43,589.589 INFO    ] time= 22/06/2026 13:12:43
[2026-06-22 13:12:43,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:12:43,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:12:43,747.747 INFO    ] No existing commands found in stream
[2026-06-22 13:12:48,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:12:48,774.774 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-22 13:12:51,700.700 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:12:51,703.703 INFO    ] Checking for system updates...
[2026-06-22 13:12:51,742.742 INFO    ] 200
[2026-06-22 13:12:51,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:12:51,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:12:51,799.799 INFO    ] No update needed
[2026-06-22 13:12:51,801.801 INFO    ] Checking for camera pi updates...
[2026-06-22 13:12:51,838.838 INFO    ] 200
[2026-06-22 13:12:51,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:12:51,881.881 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:12:51,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:12:51,970.970 INFO    ] No camera update needed
[2026-06-22 13:12:51,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:12:51,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:12:51,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:12:51,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:12:54,026.026 INFO    ] ================================================
[2026-06-22 13:12:54,042.042 INFO    ] Launching Daemon at Mon Jun 22 13:12:54 IST 2026
[2026-06-22 13:12:54,053.053 INFO    ] ================================================
[2026-06-22 13:12:54,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:12:54
[2026-06-22 13:12:55,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:12:55,432.432 INFO    ] Initializing speech engine...
[2026-06-22 13:12:55,452.452 INFO    ] 2026-06-22 13:12:55
[2026-06-22 13:12:55,707.707 INFO    ] 2026-06-22 13:12:55
[2026-06-22 13:12:55,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:12:55,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:12:55,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:12:56,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:12:56,088.088 INFO    ] time= 22/06/2026 13:12:56
[2026-06-22 13:12:56,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:12:56,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:12:56,259.259 INFO    ] No existing commands found in stream
[2026-06-22 13:13:01,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:13:01,292.292 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-22 13:13:03,661.661 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:13:03,663.663 INFO    ] Checking for system updates...
[2026-06-22 13:13:03,700.700 INFO    ] 200
[2026-06-22 13:13:03,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:13:03,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:13:03,757.757 INFO    ] No update needed
[2026-06-22 13:13:03,760.760 INFO    ] Checking for camera pi updates...
[2026-06-22 13:13:03,793.793 INFO    ] 200
[2026-06-22 13:13:03,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:13:03,840.840 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:13:03,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:13:03,920.920 INFO    ] No camera update needed
[2026-06-22 13:13:03,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:13:03,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:13:03,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:13:03,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:13:05,978.978 INFO    ] ================================================
[2026-06-22 13:13:05,993.993 INFO    ] Launching Daemon at Mon Jun 22 13:13:05 IST 2026
[2026-06-22 13:13:06,004.004 INFO    ] ================================================
[2026-06-22 13:13:06,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:13:06
[2026-06-22 13:13:07,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:13:07,438.438 INFO    ] Initializing speech engine...
[2026-06-22 13:13:07,447.447 INFO    ] 2026-06-22 13:13:07
[2026-06-22 13:13:07,737.737 INFO    ] 2026-06-22 13:13:07
[2026-06-22 13:13:07,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:13:07,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:13:07,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:13:08,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:13:08,147.147 INFO    ] time= 22/06/2026 13:13:08
[2026-06-22 13:13:08,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:13:08,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:13:08,294.294 INFO    ] No existing commands found in stream
[2026-06-22 13:13:13,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:13:13,317.317 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-22 13:13:15,963.963 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:13:15,966.966 INFO    ] Checking for system updates...
[2026-06-22 13:13:16,005.005 INFO    ] 200
[2026-06-22 13:13:16,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:13:16,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:13:16,069.069 INFO    ] No update needed
[2026-06-22 13:13:16,072.072 INFO    ] Checking for camera pi updates...
[2026-06-22 13:13:16,110.110 INFO    ] 200
[2026-06-22 13:13:16,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:13:16,153.153 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:13:16,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:13:16,209.209 INFO    ] No camera update needed
[2026-06-22 13:13:16,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:13:16,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:13:16,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:13:16,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:13:18,266.266 INFO    ] ================================================
[2026-06-22 13:13:18,282.282 INFO    ] Launching Daemon at Mon Jun 22 13:13:18 IST 2026
[2026-06-22 13:13:18,293.293 INFO    ] ================================================
[2026-06-22 13:13:18,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:13:18
[2026-06-22 13:13:19,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:13:19,616.616 INFO    ] Initializing speech engine...
[2026-06-22 13:13:19,621.621 INFO    ] 2026-06-22 13:13:19
[2026-06-22 13:13:19,911.911 INFO    ] 2026-06-22 13:13:19
[2026-06-22 13:13:19,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:13:20,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:13:20,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:13:20,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:13:20,319.319 INFO    ] time= 22/06/2026 13:13:20
[2026-06-22 13:13:20,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:13:20,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:13:20,475.475 INFO    ] No existing commands found in stream
[2026-06-22 13:13:25,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:13:25,503.503 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-22 13:13:29,806.806 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:13:29,807.807 INFO    ] Checking for system updates...
[2026-06-22 13:13:29,828.828 INFO    ] 200
[2026-06-22 13:13:29,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:13:29,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:13:29,883.883 INFO    ] No update needed
[2026-06-22 13:13:29,885.885 INFO    ] Checking for camera pi updates...
[2026-06-22 13:13:29,923.923 INFO    ] 200
[2026-06-22 13:13:29,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:13:29,968.968 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:13:30,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:13:30,045.045 INFO    ] No camera update needed
[2026-06-22 13:13:30,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:13:30,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:13:30,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:13:30,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:13:32,104.104 INFO    ] ================================================
[2026-06-22 13:13:32,120.120 INFO    ] Launching Daemon at Mon Jun 22 13:13:32 IST 2026
[2026-06-22 13:13:32,132.132 INFO    ] ================================================
[2026-06-22 13:13:32,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:13:32
[2026-06-22 13:13:33,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:13:33,700.700 INFO    ] Initializing speech engine...
[2026-06-22 13:13:33,705.705 INFO    ] 2026-06-22 13:13:33
[2026-06-22 13:13:33,977.977 INFO    ] 2026-06-22 13:13:33
[2026-06-22 13:13:34,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:13:34,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:13:34,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:13:34,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:13:34,528.528 INFO    ] time= 22/06/2026 13:13:34
[2026-06-22 13:13:34,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:13:34,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:13:34,680.680 INFO    ] No existing commands found in stream
[2026-06-22 13:13:39,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:13:39,700.700 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-22 13:13:43,585.585 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:13:43,588.588 INFO    ] Checking for system updates...
[2026-06-22 13:13:43,629.629 INFO    ] 200
[2026-06-22 13:13:43,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:13:43,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:13:43,689.689 INFO    ] No update needed
[2026-06-22 13:13:43,691.691 INFO    ] Checking for camera pi updates...
[2026-06-22 13:13:43,726.726 INFO    ] 200
[2026-06-22 13:13:43,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:13:43,770.770 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:13:43,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:13:43,850.850 INFO    ] No camera update needed
[2026-06-22 13:13:43,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:13:43,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:13:43,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:13:43,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:13:45,908.908 INFO    ] ================================================
[2026-06-22 13:13:45,924.924 INFO    ] Launching Daemon at Mon Jun 22 13:13:45 IST 2026
[2026-06-22 13:13:45,935.935 INFO    ] ================================================
[2026-06-22 13:13:46,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:13:46
[2026-06-22 13:13:47,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:13:47,269.269 INFO    ] Initializing speech engine...
[2026-06-22 13:13:47,292.292 INFO    ] 2026-06-22 13:13:47
[2026-06-22 13:13:47,547.547 INFO    ] 2026-06-22 13:13:47
[2026-06-22 13:13:47,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:13:47,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:13:47,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:13:47,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:13:48,023.023 INFO    ] time= 22/06/2026 13:13:47
[2026-06-22 13:13:48,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:13:48,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:13:48,258.258 INFO    ] No existing commands found in stream
[2026-06-22 13:13:53,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:13:53,286.286 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-22 13:13:54,309.309 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:13:54,310.310 INFO    ] Checking for system updates...
[2026-06-22 13:13:54,331.331 INFO    ] 200
[2026-06-22 13:13:54,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:13:54,372.372 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:13:54,375.375 INFO    ] No update needed
[2026-06-22 13:13:54,377.377 INFO    ] Checking for camera pi updates...
[2026-06-22 13:13:54,412.412 INFO    ] 200
[2026-06-22 13:13:54,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:13:54,458.458 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:13:54,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:13:54,545.545 INFO    ] No camera update needed
[2026-06-22 13:13:54,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:13:54,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:13:54,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:13:54,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:13:56,603.603 INFO    ] ================================================
[2026-06-22 13:13:56,619.619 INFO    ] Launching Daemon at Mon Jun 22 13:13:56 IST 2026
[2026-06-22 13:13:56,630.630 INFO    ] ================================================
[2026-06-22 13:13:57,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:13:57
[2026-06-22 13:13:57,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:13:58,112.112 INFO    ] Initializing speech engine...
[2026-06-22 13:13:58,125.125 INFO    ] 2026-06-22 13:13:58
[2026-06-22 13:13:58,436.436 INFO    ] 2026-06-22 13:13:58
[2026-06-22 13:13:58,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:13:58,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:13:58,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:13:58,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:13:58,954.954 INFO    ] time= 22/06/2026 13:13:58
[2026-06-22 13:13:58,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:13:58,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:13:59,112.112 INFO    ] No existing commands found in stream
[2026-06-22 13:14:04,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:14:04,135.135 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-22 13:14:08,030.030 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:14:08,033.033 INFO    ] Checking for system updates...
[2026-06-22 13:14:08,072.072 INFO    ] 200
[2026-06-22 13:14:08,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:14:08,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:14:08,133.133 INFO    ] No update needed
[2026-06-22 13:14:08,136.136 INFO    ] Checking for camera pi updates...
[2026-06-22 13:14:08,171.171 INFO    ] 200
[2026-06-22 13:14:08,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:14:08,216.216 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:14:08,297.297 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:14:08,300.300 INFO    ] No camera update needed
[2026-06-22 13:14:08,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:14:08,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:14:08,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:14:08,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:14:10,358.358 INFO    ] ================================================
[2026-06-22 13:14:10,374.374 INFO    ] Launching Daemon at Mon Jun 22 13:14:10 IST 2026
[2026-06-22 13:14:10,385.385 INFO    ] ================================================
[2026-06-22 13:14:11,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:14:11
[2026-06-22 13:14:11,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:14:11,915.915 INFO    ] Initializing speech engine...
[2026-06-22 13:14:11,935.935 INFO    ] 2026-06-22 13:14:11
[2026-06-22 13:14:12,202.202 INFO    ] 2026-06-22 13:14:12
[2026-06-22 13:14:12,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:14:12,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:14:12,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:14:12,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:14:12,708.708 INFO    ] time= 22/06/2026 13:14:12
[2026-06-22 13:14:12,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:14:12,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:14:12,948.948 INFO    ] No existing commands found in stream
[2026-06-22 13:14:17,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:14:17,982.982 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-22 13:14:20,434.434 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:14:20,436.436 INFO    ] Checking for system updates...
[2026-06-22 13:14:20,457.457 INFO    ] 200
[2026-06-22 13:14:20,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:14:20,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:14:20,497.497 INFO    ] No update needed
[2026-06-22 13:14:20,505.505 INFO    ] Checking for camera pi updates...
[2026-06-22 13:14:20,540.540 INFO    ] 200
[2026-06-22 13:14:20,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:14:20,590.590 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:14:20,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:14:20,675.675 INFO    ] No camera update needed
[2026-06-22 13:14:20,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:14:20,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:14:20,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:14:20,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:14:22,735.735 INFO    ] ================================================
[2026-06-22 13:14:22,751.751 INFO    ] Launching Daemon at Mon Jun 22 13:14:22 IST 2026
[2026-06-22 13:14:22,762.762 INFO    ] ================================================
[2026-06-22 13:14:23,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:14:23
[2026-06-22 13:14:23,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:14:24,127.127 INFO    ] Initializing speech engine...
[2026-06-22 13:14:24,137.137 INFO    ] 2026-06-22 13:14:24
[2026-06-22 13:14:24,398.398 INFO    ] 2026-06-22 13:14:24
[2026-06-22 13:14:24,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:14:24,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:14:24,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:14:24,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:14:24,832.832 INFO    ] time= 22/06/2026 13:14:24
[2026-06-22 13:14:24,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:14:24,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:14:25,009.009 INFO    ] No existing commands found in stream
[2026-06-22 13:14:30,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:14:30,029.029 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-22 13:14:30,515.515 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:14:30,517.517 INFO    ] Checking for system updates...
[2026-06-22 13:14:30,538.538 INFO    ] 200
[2026-06-22 13:14:30,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:14:30,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:14:30,572.572 INFO    ] No update needed
[2026-06-22 13:14:30,573.573 INFO    ] Checking for camera pi updates...
[2026-06-22 13:14:30,603.603 INFO    ] 200
[2026-06-22 13:14:30,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:14:30,648.648 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:14:30,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:14:30,746.746 INFO    ] No camera update needed
[2026-06-22 13:14:30,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:14:30,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:14:30,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:14:30,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:14:32,807.807 INFO    ] ================================================
[2026-06-22 13:14:32,823.823 INFO    ] Launching Daemon at Mon Jun 22 13:14:32 IST 2026
[2026-06-22 13:14:32,834.834 INFO    ] ================================================
[2026-06-22 13:14:33,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:14:33
[2026-06-22 13:14:33,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:14:34,267.267 INFO    ] Initializing speech engine...
[2026-06-22 13:14:34,275.275 INFO    ] 2026-06-22 13:14:34
[2026-06-22 13:14:34,527.527 INFO    ] 2026-06-22 13:14:34
[2026-06-22 13:14:34,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:14:34,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:14:34,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:14:34,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:14:34,947.947 INFO    ] time= 22/06/2026 13:14:34
[2026-06-22 13:14:34,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:14:35,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:14:35,133.133 INFO    ] No existing commands found in stream
[2026-06-22 13:14:40,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:14:40,158.158 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-22 13:14:41,739.739 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:14:41,742.742 INFO    ] Checking for system updates...
[2026-06-22 13:14:41,778.778 INFO    ] 200
[2026-06-22 13:14:41,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:14:41,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:14:41,837.837 INFO    ] No update needed
[2026-06-22 13:14:41,840.840 INFO    ] Checking for camera pi updates...
[2026-06-22 13:14:41,874.874 INFO    ] 200
[2026-06-22 13:14:41,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:14:41,918.918 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:14:42,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:14:42,106.106 INFO    ] No camera update needed
[2026-06-22 13:14:42,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:14:42,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:14:42,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:14:42,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:14:44,164.164 INFO    ] ================================================
[2026-06-22 13:14:44,180.180 INFO    ] Launching Daemon at Mon Jun 22 13:14:44 IST 2026
[2026-06-22 13:14:44,191.191 INFO    ] ================================================
[2026-06-22 13:14:44,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:14:44
[2026-06-22 13:14:45,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:14:45,617.617 INFO    ] Initializing speech engine...
[2026-06-22 13:14:45,626.626 INFO    ] 2026-06-22 13:14:45
[2026-06-22 13:14:45,877.877 INFO    ] 2026-06-22 13:14:45
[2026-06-22 13:14:45,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:14:46,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:14:46,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:14:46,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:14:46,378.378 INFO    ] time= 22/06/2026 13:14:46
[2026-06-22 13:14:46,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:14:46,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:14:46,574.574 INFO    ] No existing commands found in stream
[2026-06-22 13:14:51,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:14:51,607.607 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-22 13:14:55,258.258 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:14:55,260.260 INFO    ] Checking for system updates...
[2026-06-22 13:14:55,296.296 INFO    ] 200
[2026-06-22 13:14:55,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:14:55,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:14:55,355.355 INFO    ] No update needed
[2026-06-22 13:14:55,357.357 INFO    ] Checking for camera pi updates...
[2026-06-22 13:14:55,395.395 INFO    ] 200
[2026-06-22 13:14:55,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:14:55,438.438 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:14:55,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:14:55,522.522 INFO    ] No camera update needed
[2026-06-22 13:14:55,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:14:55,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:14:55,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:14:55,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:14:57,578.578 INFO    ] ================================================
[2026-06-22 13:14:57,594.594 INFO    ] Launching Daemon at Mon Jun 22 13:14:57 IST 2026
[2026-06-22 13:14:57,604.604 INFO    ] ================================================
[2026-06-22 13:14:58,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:14:58
[2026-06-22 13:14:58,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:14:58,966.966 INFO    ] Initializing speech engine...
[2026-06-22 13:14:58,991.991 INFO    ] 2026-06-22 13:14:58
[2026-06-22 13:14:59,269.269 INFO    ] 2026-06-22 13:14:59
[2026-06-22 13:14:59,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:14:59,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:14:59,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:14:59,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:14:59,699.699 INFO    ] time= 22/06/2026 13:14:59
[2026-06-22 13:14:59,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:14:59,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:14:59,850.850 INFO    ] No existing commands found in stream
[2026-06-22 13:15:04,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:15:04,873.873 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-22 13:15:05,968.968 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:15:05,971.971 INFO    ] Checking for system updates...
[2026-06-22 13:15:06,008.008 INFO    ] 200
[2026-06-22 13:15:06,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:15:06,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:15:06,067.067 INFO    ] No update needed
[2026-06-22 13:15:06,069.069 INFO    ] Checking for camera pi updates...
[2026-06-22 13:15:06,103.103 INFO    ] 200
[2026-06-22 13:15:06,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:15:06,147.147 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:15:06,229.229 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:15:06,231.231 INFO    ] No camera update needed
[2026-06-22 13:15:06,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:15:06,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:15:06,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:15:06,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:15:08,286.286 INFO    ] ================================================
[2026-06-22 13:15:08,302.302 INFO    ] Launching Daemon at Mon Jun 22 13:15:08 IST 2026
[2026-06-22 13:15:08,313.313 INFO    ] ================================================
[2026-06-22 13:15:08,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:15:08
[2026-06-22 13:15:09,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:15:09,731.731 INFO    ] Initializing speech engine...
[2026-06-22 13:15:09,737.737 INFO    ] 2026-06-22 13:15:09
[2026-06-22 13:15:10,002.002 INFO    ] 2026-06-22 13:15:09
[2026-06-22 13:15:10,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:15:10,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:15:10,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:15:10,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:15:10,467.467 INFO    ] time= 22/06/2026 13:15:10
[2026-06-22 13:15:10,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:15:10,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:15:10,701.701 INFO    ] No existing commands found in stream
[2026-06-22 13:15:15,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:15:15,732.732 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-22 13:15:16,859.859 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:15:16,862.862 INFO    ] Checking for system updates...
[2026-06-22 13:15:16,903.903 INFO    ] 200
[2026-06-22 13:15:16,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:15:16,972.972 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:15:16,975.975 INFO    ] No update needed
[2026-06-22 13:15:16,977.977 INFO    ] Checking for camera pi updates...
[2026-06-22 13:15:17,011.011 INFO    ] 200
[2026-06-22 13:15:17,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:15:17,054.054 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:15:17,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:15:17,155.155 INFO    ] No camera update needed
[2026-06-22 13:15:17,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:15:17,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:15:17,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:15:17,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:15:19,211.211 INFO    ] ================================================
[2026-06-22 13:15:19,226.226 INFO    ] Launching Daemon at Mon Jun 22 13:15:19 IST 2026
[2026-06-22 13:15:19,237.237 INFO    ] ================================================
[2026-06-22 13:15:19,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:15:19
[2026-06-22 13:15:20,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:15:20,603.603 INFO    ] Initializing speech engine...
[2026-06-22 13:15:20,610.610 INFO    ] 2026-06-22 13:15:20
[2026-06-22 13:15:20,872.872 INFO    ] 2026-06-22 13:15:20
[2026-06-22 13:15:20,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:15:21,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:15:21,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:15:21,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:15:21,334.334 INFO    ] time= 22/06/2026 13:15:21
[2026-06-22 13:15:21,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:15:21,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:15:21,572.572 INFO    ] No existing commands found in stream
[2026-06-22 13:15:26,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:15:26,590.590 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-22 13:15:27,319.319 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:15:27,322.322 INFO    ] Checking for system updates...
[2026-06-22 13:15:27,358.358 INFO    ] 200
[2026-06-22 13:15:27,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:15:27,415.415 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:15:27,418.418 INFO    ] No update needed
[2026-06-22 13:15:27,420.420 INFO    ] Checking for camera pi updates...
[2026-06-22 13:15:27,458.458 INFO    ] 200
[2026-06-22 13:15:27,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:15:27,502.502 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:15:27,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:15:27,582.582 INFO    ] No camera update needed
[2026-06-22 13:15:27,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:15:27,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:15:27,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:15:27,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:15:29,640.640 INFO    ] ================================================
[2026-06-22 13:15:29,655.655 INFO    ] Launching Daemon at Mon Jun 22 13:15:29 IST 2026
[2026-06-22 13:15:29,666.666 INFO    ] ================================================
[2026-06-22 13:15:30,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:15:30
[2026-06-22 13:15:30,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:15:30,988.988 INFO    ] Initializing speech engine...
[2026-06-22 13:15:31,002.002 INFO    ] 2026-06-22 13:15:30
[2026-06-22 13:15:31,285.285 INFO    ] 2026-06-22 13:15:31
[2026-06-22 13:15:31,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:15:31,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:15:31,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:15:31,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:15:31,705.705 INFO    ] time= 22/06/2026 13:15:31
[2026-06-22 13:15:31,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:15:31,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:15:31,805.805 INFO    ] No existing commands found in stream
[2026-06-22 13:15:36,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:15:36,827.827 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-22 13:15:39,619.619 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:15:39,620.620 INFO    ] Checking for system updates...
[2026-06-22 13:15:39,641.641 INFO    ] 200
[2026-06-22 13:15:39,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:15:39,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:15:39,675.675 INFO    ] No update needed
[2026-06-22 13:15:39,676.676 INFO    ] Checking for camera pi updates...
[2026-06-22 13:15:39,698.698 INFO    ] 200
[2026-06-22 13:15:39,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:15:39,740.740 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:15:39,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:15:39,822.822 INFO    ] No camera update needed
[2026-06-22 13:15:39,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:15:39,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:15:39,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:15:39,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:15:41,879.879 INFO    ] ================================================
[2026-06-22 13:15:41,895.895 INFO    ] Launching Daemon at Mon Jun 22 13:15:41 IST 2026
[2026-06-22 13:15:41,906.906 INFO    ] ================================================
[2026-06-22 13:15:42,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:15:42
[2026-06-22 13:15:42,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:15:43,231.231 INFO    ] Initializing speech engine...
[2026-06-22 13:15:43,238.238 INFO    ] 2026-06-22 13:15:43
[2026-06-22 13:15:43,533.533 INFO    ] 2026-06-22 13:15:43
[2026-06-22 13:15:43,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:15:43,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:15:43,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:15:43,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:15:43,956.956 INFO    ] time= 22/06/2026 13:15:43
[2026-06-22 13:15:43,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:15:44,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:15:44,146.146 INFO    ] No existing commands found in stream
[2026-06-22 13:15:49,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:15:49,174.174 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-22 13:15:51,009.009 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:15:51,011.011 INFO    ] Checking for system updates...
[2026-06-22 13:15:51,031.031 INFO    ] 200
[2026-06-22 13:15:51,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:15:51,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:15:51,067.067 INFO    ] No update needed
[2026-06-22 13:15:51,068.068 INFO    ] Checking for camera pi updates...
[2026-06-22 13:15:51,087.087 INFO    ] 200
[2026-06-22 13:15:51,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:15:51,126.126 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:15:51,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:15:51,213.213 INFO    ] No camera update needed
[2026-06-22 13:15:51,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:15:51,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:15:51,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:15:51,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:15:53,268.268 INFO    ] ================================================
[2026-06-22 13:15:53,283.283 INFO    ] Launching Daemon at Mon Jun 22 13:15:53 IST 2026
[2026-06-22 13:15:53,293.293 INFO    ] ================================================
[2026-06-22 13:15:53,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:15:53
[2026-06-22 13:15:54,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:15:54,670.670 INFO    ] Initializing speech engine...
[2026-06-22 13:15:54,677.677 INFO    ] 2026-06-22 13:15:54
[2026-06-22 13:15:54,937.937 INFO    ] 2026-06-22 13:15:54
[2026-06-22 13:15:54,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:15:55,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:15:55,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:15:55,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:15:55,485.485 INFO    ] time= 22/06/2026 13:15:55
[2026-06-22 13:15:55,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:15:55,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:15:55,667.667 INFO    ] No existing commands found in stream
[2026-06-22 13:16:00,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:16:00,700.700 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-22 13:16:05,050.050 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:16:05,053.053 INFO    ] Checking for system updates...
[2026-06-22 13:16:05,090.090 INFO    ] 200
[2026-06-22 13:16:05,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:16:05,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:16:05,153.153 INFO    ] No update needed
[2026-06-22 13:16:05,155.155 INFO    ] Checking for camera pi updates...
[2026-06-22 13:16:05,190.190 INFO    ] 200
[2026-06-22 13:16:05,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:16:05,232.232 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:16:05,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:16:05,322.322 INFO    ] No camera update needed
[2026-06-22 13:16:05,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:16:05,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:16:05,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:16:05,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:16:07,378.378 INFO    ] ================================================
[2026-06-22 13:16:07,393.393 INFO    ] Launching Daemon at Mon Jun 22 13:16:07 IST 2026
[2026-06-22 13:16:07,404.404 INFO    ] ================================================
[2026-06-22 13:16:07,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:16:07
[2026-06-22 13:16:08,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:16:08,781.781 INFO    ] Initializing speech engine...
[2026-06-22 13:16:08,788.788 INFO    ] 2026-06-22 13:16:08
[2026-06-22 13:16:09,080.080 INFO    ] 2026-06-22 13:16:09
[2026-06-22 13:16:09,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:16:09,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:16:09,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:16:09,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:16:09,493.493 INFO    ] time= 22/06/2026 13:16:09
[2026-06-22 13:16:09,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:16:09,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:16:09,577.577 INFO    ] No existing commands found in stream
[2026-06-22 13:16:14,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:16:14,592.592 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-22 13:16:16,161.161 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:16:16,163.163 INFO    ] Checking for system updates...
[2026-06-22 13:16:16,200.200 INFO    ] 200
[2026-06-22 13:16:16,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 13:16:16,207.207 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-22 13:16:16,209.209 INFO    ] Checking for camera pi updates...
[2026-06-22 13:16:16,261.261 INFO    ] 200
[2026-06-22 13:16:16,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 13:16:16,266.266 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-22 13:16:16,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:16:16,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:16:16,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:16:16,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:16:18,335.335 INFO    ] ================================================
[2026-06-22 13:16:18,350.350 INFO    ] Launching Daemon at Mon Jun 22 13:16:18 IST 2026
[2026-06-22 13:16:18,361.361 INFO    ] ================================================
[2026-06-22 13:16:18,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:16:18
[2026-06-22 13:16:19,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:16:19,700.700 INFO    ] Initializing speech engine...
[2026-06-22 13:16:19,709.709 INFO    ] 2026-06-22 13:16:19
[2026-06-22 13:16:19,951.951 INFO    ] 2026-06-22 13:16:19
[2026-06-22 13:16:19,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:16:20,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:16:20,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:16:20,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:16:20,405.405 INFO    ] time= 22/06/2026 13:16:20
[2026-06-22 13:16:20,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:16:20,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:16:20,625.625 INFO    ] No existing commands found in stream
[2026-06-22 13:16:25,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:16:25,660.660 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-22 13:16:28,308.308 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:16:28,311.311 INFO    ] Checking for system updates...
[2026-06-22 13:16:28,351.351 INFO    ] 200
[2026-06-22 13:16:28,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:16:28,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:16:28,412.412 INFO    ] No update needed
[2026-06-22 13:16:28,414.414 INFO    ] Checking for camera pi updates...
[2026-06-22 13:16:28,448.448 INFO    ] 200
[2026-06-22 13:16:28,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:16:28,491.491 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:16:28,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:16:28,574.574 INFO    ] No camera update needed
[2026-06-22 13:16:28,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:16:28,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:16:28,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:16:28,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:16:30,630.630 INFO    ] ================================================
[2026-06-22 13:16:30,646.646 INFO    ] Launching Daemon at Mon Jun 22 13:16:30 IST 2026
[2026-06-22 13:16:30,657.657 INFO    ] ================================================
[2026-06-22 13:16:31,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:16:31
[2026-06-22 13:16:31,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:16:32,147.147 INFO    ] Initializing speech engine...
[2026-06-22 13:16:32,153.153 INFO    ] 2026-06-22 13:16:32
[2026-06-22 13:16:32,454.454 INFO    ] 2026-06-22 13:16:32
[2026-06-22 13:16:32,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:16:32,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:16:32,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:16:32,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:16:32,894.894 INFO    ] time= 22/06/2026 13:16:32
[2026-06-22 13:16:32,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:16:32,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:16:33,073.073 INFO    ] No existing commands found in stream
[2026-06-22 13:16:38,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:16:38,088.088 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-22 13:16:39,022.022 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:16:39,023.023 INFO    ] Checking for system updates...
[2026-06-22 13:16:39,044.044 INFO    ] 200
[2026-06-22 13:16:39,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:16:39,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:16:39,078.078 INFO    ] No update needed
[2026-06-22 13:16:39,079.079 INFO    ] Checking for camera pi updates...
[2026-06-22 13:16:39,100.100 INFO    ] 200
[2026-06-22 13:16:39,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:16:39,128.128 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:16:39,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:16:39,239.239 INFO    ] No camera update needed
[2026-06-22 13:16:39,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:16:39,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:16:39,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:16:39,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:16:41,294.294 INFO    ] ================================================
[2026-06-22 13:16:41,309.309 INFO    ] Launching Daemon at Mon Jun 22 13:16:41 IST 2026
[2026-06-22 13:16:41,320.320 INFO    ] ================================================
[2026-06-22 13:16:41,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:16:41
[2026-06-22 13:16:42,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:16:42,863.863 INFO    ] Initializing speech engine...
[2026-06-22 13:16:42,877.877 INFO    ] 2026-06-22 13:16:42
[2026-06-22 13:16:43,186.186 INFO    ] 2026-06-22 13:16:43
[2026-06-22 13:16:43,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:16:43,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:16:43,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:16:43,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:16:43,698.698 INFO    ] time= 22/06/2026 13:16:43
[2026-06-22 13:16:43,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:16:43,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:16:43,868.868 INFO    ] No existing commands found in stream
[2026-06-22 13:16:48,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:16:48,892.892 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-22 13:16:51,506.506 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:16:51,510.510 INFO    ] Checking for system updates...
[2026-06-22 13:16:51,548.548 INFO    ] 200
[2026-06-22 13:16:51,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:16:51,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:16:51,617.617 INFO    ] No update needed
[2026-06-22 13:16:51,620.620 INFO    ] Checking for camera pi updates...
[2026-06-22 13:16:51,657.657 INFO    ] 200
[2026-06-22 13:16:51,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:16:51,702.702 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:16:51,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:16:51,909.909 INFO    ] No camera update needed
[2026-06-22 13:16:51,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:16:51,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:16:51,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:16:51,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:16:53,968.968 INFO    ] ================================================
[2026-06-22 13:16:53,984.984 INFO    ] Launching Daemon at Mon Jun 22 13:16:53 IST 2026
[2026-06-22 13:16:54,995.995 INFO    ] ================================================
[2026-06-22 13:16:54,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:16:54
[2026-06-22 13:16:55,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:16:55,656.656 INFO    ] Initializing speech engine...
[2026-06-22 13:16:55,668.668 INFO    ] 2026-06-22 13:16:55
[2026-06-22 13:16:55,980.980 INFO    ] 2026-06-22 13:16:55
[2026-06-22 13:16:56,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:16:56,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:16:56,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:16:56,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:16:56,426.426 INFO    ] time= 22/06/2026 13:16:56
[2026-06-22 13:16:56,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:16:56,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:16:56,642.642 INFO    ] No existing commands found in stream
[2026-06-22 13:17:01,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:17:01,669.669 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-22 13:17:02,375.375 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:17:02,379.379 INFO    ] Checking for system updates...
[2026-06-22 13:17:02,451.451 INFO    ] 200
[2026-06-22 13:17:02,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:17:02,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:17:02,531.531 INFO    ] No update needed
[2026-06-22 13:17:02,534.534 INFO    ] Checking for camera pi updates...
[2026-06-22 13:17:02,576.576 INFO    ] 200
[2026-06-22 13:17:02,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:17:02,626.626 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:17:02,678.678 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:17:02,681.681 INFO    ] No camera update needed
[2026-06-22 13:17:02,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:17:02,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:17:02,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:17:02,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:17:04,743.743 INFO    ] ================================================
[2026-06-22 13:17:04,758.758 INFO    ] Launching Daemon at Mon Jun 22 13:17:04 IST 2026
[2026-06-22 13:17:04,769.769 INFO    ] ================================================
[2026-06-22 13:17:05,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:17:05
[2026-06-22 13:17:06,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:17:06,412.412 INFO    ] Initializing speech engine...
[2026-06-22 13:17:06,420.420 INFO    ] 2026-06-22 13:17:06
[2026-06-22 13:17:06,710.710 INFO    ] 2026-06-22 13:17:06
[2026-06-22 13:17:06,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:17:07,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:17:07,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:17:07,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:17:07,292.292 INFO    ] time= 22/06/2026 13:17:07
[2026-06-22 13:17:07,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:17:07,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:17:07,552.552 INFO    ] No existing commands found in stream
[2026-06-22 13:17:12,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:17:12,586.586 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-22 13:17:15,879.879 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:17:15,882.882 INFO    ] Checking for system updates...
[2026-06-22 13:17:15,919.919 INFO    ] 200
[2026-06-22 13:17:15,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:17:15,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:17:15,977.977 INFO    ] No update needed
[2026-06-22 13:17:15,979.979 INFO    ] Checking for camera pi updates...
[2026-06-22 13:17:16,013.013 INFO    ] 200
[2026-06-22 13:17:16,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:17:16,061.061 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:17:16,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:17:16,148.148 INFO    ] No camera update needed
[2026-06-22 13:17:16,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:17:16,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:17:16,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:17:16,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:17:18,205.205 INFO    ] ================================================
[2026-06-22 13:17:18,221.221 INFO    ] Launching Daemon at Mon Jun 22 13:17:18 IST 2026
[2026-06-22 13:17:18,232.232 INFO    ] ================================================
[2026-06-22 13:17:18,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:17:18
[2026-06-22 13:17:19,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:17:19,695.695 INFO    ] Initializing speech engine...
[2026-06-22 13:17:19,704.704 INFO    ] 2026-06-22 13:17:19
[2026-06-22 13:17:19,954.954 INFO    ] 2026-06-22 13:17:19
[2026-06-22 13:17:19,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:17:20,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:17:20,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:17:20,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:17:20,513.513 INFO    ] time= 22/06/2026 13:17:20
[2026-06-22 13:17:20,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:17:20,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:17:20,663.663 INFO    ] No existing commands found in stream
[2026-06-22 13:17:25,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:17:25,681.681 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-22 13:17:28,160.160 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:17:28,162.162 INFO    ] Checking for system updates...
[2026-06-22 13:17:28,199.199 INFO    ] 200
[2026-06-22 13:17:28,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:17:28,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:17:28,266.266 INFO    ] No update needed
[2026-06-22 13:17:28,269.269 INFO    ] Checking for camera pi updates...
[2026-06-22 13:17:28,308.308 INFO    ] 200
[2026-06-22 13:17:28,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:17:28,363.363 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:17:28,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:17:28,438.438 INFO    ] No camera update needed
[2026-06-22 13:17:28,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:17:28,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:17:28,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:17:28,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:17:30,498.498 INFO    ] ================================================
[2026-06-22 13:17:30,514.514 INFO    ] Launching Daemon at Mon Jun 22 13:17:30 IST 2026
[2026-06-22 13:17:30,526.526 INFO    ] ================================================
[2026-06-22 13:17:31,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:17:31
[2026-06-22 13:17:31,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:17:31,996.996 INFO    ] Initializing speech engine...
[2026-06-22 13:17:32,010.010 INFO    ] 2026-06-22 13:17:32
[2026-06-22 13:17:32,319.319 INFO    ] 2026-06-22 13:17:32
[2026-06-22 13:17:32,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:17:32,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:17:32,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:17:32,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:17:32,835.835 INFO    ] time= 22/06/2026 13:17:32
[2026-06-22 13:17:32,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:17:32,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:17:33,015.015 INFO    ] No existing commands found in stream
[2026-06-22 13:17:38,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:17:38,055.055 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-22 13:17:38,615.615 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:17:38,616.616 INFO    ] Checking for system updates...
[2026-06-22 13:17:38,637.637 INFO    ] 200
[2026-06-22 13:17:38,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:17:38,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:17:38,686.686 INFO    ] No update needed
[2026-06-22 13:17:38,689.689 INFO    ] Checking for camera pi updates...
[2026-06-22 13:17:38,723.723 INFO    ] 200
[2026-06-22 13:17:38,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:17:38,770.770 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:17:38,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:17:38,856.856 INFO    ] No camera update needed
[2026-06-22 13:17:38,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:17:38,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:17:38,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:17:38,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:17:40,917.917 INFO    ] ================================================
[2026-06-22 13:17:40,933.933 INFO    ] Launching Daemon at Mon Jun 22 13:17:40 IST 2026
[2026-06-22 13:17:40,943.943 INFO    ] ================================================
[2026-06-22 13:17:41,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:17:41
[2026-06-22 13:17:42,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:17:42,390.390 INFO    ] Initializing speech engine...
[2026-06-22 13:17:42,404.404 INFO    ] 2026-06-22 13:17:42
[2026-06-22 13:17:42,676.676 INFO    ] 2026-06-22 13:17:42
[2026-06-22 13:17:42,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:17:42,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:17:42,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:17:43,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:17:43,179.179 INFO    ] time= 22/06/2026 13:17:43
[2026-06-22 13:17:43,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:17:43,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:17:43,401.401 INFO    ] No existing commands found in stream
[2026-06-22 13:17:48,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:17:48,419.419 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-22 13:17:51,503.503 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:17:51,505.505 INFO    ] Checking for system updates...
[2026-06-22 13:17:51,527.527 INFO    ] 200
[2026-06-22 13:17:51,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:17:51,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:17:51,564.564 INFO    ] No update needed
[2026-06-22 13:17:51,566.566 INFO    ] Checking for camera pi updates...
[2026-06-22 13:17:51,600.600 INFO    ] 200
[2026-06-22 13:17:51,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:17:51,648.648 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:17:51,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:17:51,756.756 INFO    ] No camera update needed
[2026-06-22 13:17:51,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:17:51,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:17:51,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:17:51,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:17:53,812.812 INFO    ] ================================================
[2026-06-22 13:17:53,828.828 INFO    ] Launching Daemon at Mon Jun 22 13:17:53 IST 2026
[2026-06-22 13:17:53,839.839 INFO    ] ================================================
[2026-06-22 13:17:54,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:17:54
[2026-06-22 13:17:54,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:17:55,213.213 INFO    ] Initializing speech engine...
[2026-06-22 13:17:55,221.221 INFO    ] 2026-06-22 13:17:55
[2026-06-22 13:17:55,483.483 INFO    ] 2026-06-22 13:17:55
[2026-06-22 13:17:55,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:17:55,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:17:55,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:17:55,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:17:55,987.987 INFO    ] time= 22/06/2026 13:17:55
[2026-06-22 13:17:56,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:17:56,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:17:56,205.205 INFO    ] No existing commands found in stream
[2026-06-22 13:18:01,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:18:01,252.252 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-22 13:18:05,451.451 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:18:05,454.454 INFO    ] Checking for system updates...
[2026-06-22 13:18:05,492.492 INFO    ] 200
[2026-06-22 13:18:05,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:18:05,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:18:05,567.567 INFO    ] No update needed
[2026-06-22 13:18:05,570.570 INFO    ] Checking for camera pi updates...
[2026-06-22 13:18:05,607.607 INFO    ] 200
[2026-06-22 13:18:05,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:18:05,657.657 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:18:05,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:18:05,746.746 INFO    ] No camera update needed
[2026-06-22 13:18:05,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:18:05,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:18:05,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:18:05,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:18:07,806.806 INFO    ] ================================================
[2026-06-22 13:18:07,821.821 INFO    ] Launching Daemon at Mon Jun 22 13:18:07 IST 2026
[2026-06-22 13:18:07,832.832 INFO    ] ================================================
[2026-06-22 13:18:08,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:18:08
[2026-06-22 13:18:09,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:18:09,336.336 INFO    ] Initializing speech engine...
[2026-06-22 13:18:09,345.345 INFO    ] 2026-06-22 13:18:09
[2026-06-22 13:18:09,623.623 INFO    ] 2026-06-22 13:18:09
[2026-06-22 13:18:09,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:18:09,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:18:09,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:18:10,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:18:10,161.161 INFO    ] time= 22/06/2026 13:18:10
[2026-06-22 13:18:10,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:18:10,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:18:10,307.307 INFO    ] No existing commands found in stream
[2026-06-22 13:18:15,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:18:15,330.330 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-22 13:18:19,317.317 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:18:19,320.320 INFO    ] Checking for system updates...
[2026-06-22 13:18:19,356.356 INFO    ] 200
[2026-06-22 13:18:19,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:18:19,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:18:19,413.413 INFO    ] No update needed
[2026-06-22 13:18:19,416.416 INFO    ] Checking for camera pi updates...
[2026-06-22 13:18:19,451.451 INFO    ] 200
[2026-06-22 13:18:19,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:18:19,494.494 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:18:19,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:18:19,585.585 INFO    ] No camera update needed
[2026-06-22 13:18:19,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:18:19,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:18:19,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:18:19,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:18:21,643.643 INFO    ] ================================================
[2026-06-22 13:18:21,658.658 INFO    ] Launching Daemon at Mon Jun 22 13:18:21 IST 2026
[2026-06-22 13:18:21,669.669 INFO    ] ================================================
[2026-06-22 13:18:22,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:18:22
[2026-06-22 13:18:22,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:18:23,007.007 INFO    ] Initializing speech engine...
[2026-06-22 13:18:23,032.032 INFO    ] 2026-06-22 13:18:23
[2026-06-22 13:18:23,291.291 INFO    ] 2026-06-22 13:18:23
[2026-06-22 13:18:23,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:18:23,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:18:23,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:18:23,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:18:23,671.671 INFO    ] time= 22/06/2026 13:18:23
[2026-06-22 13:18:23,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:18:23,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:18:23,860.860 INFO    ] No existing commands found in stream
[2026-06-22 13:18:28,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:18:28,888.888 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-22 13:18:33,283.283 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:18:33,286.286 INFO    ] Checking for system updates...
[2026-06-22 13:18:33,326.326 INFO    ] 200
[2026-06-22 13:18:33,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:18:33,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:18:33,392.392 INFO    ] No update needed
[2026-06-22 13:18:33,395.395 INFO    ] Checking for camera pi updates...
[2026-06-22 13:18:33,434.434 INFO    ] 200
[2026-06-22 13:18:33,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:18:33,476.476 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:18:33,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:18:33,560.560 INFO    ] No camera update needed
[2026-06-22 13:18:33,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:18:33,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:18:33,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:18:33,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:18:35,616.616 INFO    ] ================================================
[2026-06-22 13:18:35,632.632 INFO    ] Launching Daemon at Mon Jun 22 13:18:35 IST 2026
[2026-06-22 13:18:35,643.643 INFO    ] ================================================
[2026-06-22 13:18:36,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:18:36
[2026-06-22 13:18:36,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:18:37,280.280 INFO    ] Initializing speech engine...
[2026-06-22 13:18:37,292.292 INFO    ] 2026-06-22 13:18:37
[2026-06-22 13:18:37,583.583 INFO    ] 2026-06-22 13:18:37
[2026-06-22 13:18:37,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:18:38,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:18:38,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:18:38,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:18:38,389.389 INFO    ] time= 22/06/2026 13:18:38
[2026-06-22 13:18:38,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:18:38,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:18:38,695.695 INFO    ] No existing commands found in stream
[2026-06-22 13:18:43,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:18:43,734.734 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-22 13:18:47,466.466 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:18:47,470.470 INFO    ] Checking for system updates...
[2026-06-22 13:18:47,507.507 INFO    ] 200
[2026-06-22 13:18:47,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:18:47,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:18:47,576.576 INFO    ] No update needed
[2026-06-22 13:18:47,579.579 INFO    ] Checking for camera pi updates...
[2026-06-22 13:18:47,614.614 INFO    ] 200
[2026-06-22 13:18:47,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:18:47,659.659 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:18:47,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:18:47,764.764 INFO    ] No camera update needed
[2026-06-22 13:18:47,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:18:47,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:18:47,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:18:47,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:18:49,826.826 INFO    ] ================================================
[2026-06-22 13:18:49,841.841 INFO    ] Launching Daemon at Mon Jun 22 13:18:49 IST 2026
[2026-06-22 13:18:49,853.853 INFO    ] ================================================
[2026-06-22 13:18:50,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:18:50
[2026-06-22 13:18:50,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:18:51,210.210 INFO    ] Initializing speech engine...
[2026-06-22 13:18:51,219.219 INFO    ] 2026-06-22 13:18:51
[2026-06-22 13:18:51,519.519 INFO    ] 2026-06-22 13:18:51
[2026-06-22 13:18:51,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:18:51,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:18:51,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:18:51,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:18:51,955.955 INFO    ] time= 22/06/2026 13:18:51
[2026-06-22 13:18:51,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:18:52,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:18:52,130.130 INFO    ] No existing commands found in stream
[2026-06-22 13:18:57,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:18:57,158.158 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-22 13:19:00,779.779 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:19:00,781.781 INFO    ] Checking for system updates...
[2026-06-22 13:19:00,817.817 INFO    ] 200
[2026-06-22 13:19:00,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:19:00,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:19:00,884.884 INFO    ] No update needed
[2026-06-22 13:19:00,887.887 INFO    ] Checking for camera pi updates...
[2026-06-22 13:19:00,925.925 INFO    ] 200
[2026-06-22 13:19:00,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:19:00,975.975 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:19:01,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:19:01,157.157 INFO    ] No camera update needed
[2026-06-22 13:19:01,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:19:01,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:19:01,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:19:01,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:19:03,215.215 INFO    ] ================================================
[2026-06-22 13:19:03,230.230 INFO    ] Launching Daemon at Mon Jun 22 13:19:03 IST 2026
[2026-06-22 13:19:03,241.241 INFO    ] ================================================
[2026-06-22 13:19:03,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:19:03
[2026-06-22 13:19:04,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:19:04,668.668 INFO    ] Initializing speech engine...
[2026-06-22 13:19:04,684.684 INFO    ] 2026-06-22 13:19:04
[2026-06-22 13:19:04,963.963 INFO    ] 2026-06-22 13:19:04
[2026-06-22 13:19:04,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:19:05,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:19:05,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:19:05,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:19:05,349.349 INFO    ] time= 22/06/2026 13:19:05
[2026-06-22 13:19:05,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:19:05,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:19:05,545.545 INFO    ] No existing commands found in stream
[2026-06-22 13:19:10,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:19:10,561.561 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-22 13:19:12,273.273 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:19:12,276.276 INFO    ] Checking for system updates...
[2026-06-22 13:19:12,312.312 INFO    ] 200
[2026-06-22 13:19:12,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:19:12,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:19:12,370.370 INFO    ] No update needed
[2026-06-22 13:19:12,372.372 INFO    ] Checking for camera pi updates...
[2026-06-22 13:19:12,406.406 INFO    ] 200
[2026-06-22 13:19:12,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:19:12,451.451 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:19:12,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:19:12,526.526 INFO    ] No camera update needed
[2026-06-22 13:19:12,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:19:12,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:19:12,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:19:12,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:19:14,581.581 INFO    ] ================================================
[2026-06-22 13:19:14,597.597 INFO    ] Launching Daemon at Mon Jun 22 13:19:14 IST 2026
[2026-06-22 13:19:14,608.608 INFO    ] ================================================
[2026-06-22 13:19:15,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:19:15
[2026-06-22 13:19:15,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:19:16,142.142 INFO    ] Initializing speech engine...
[2026-06-22 13:19:16,154.154 INFO    ] 2026-06-22 13:19:16
[2026-06-22 13:19:16,427.427 INFO    ] 2026-06-22 13:19:16
[2026-06-22 13:19:16,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:19:16,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:19:16,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:19:16,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:19:16,977.977 INFO    ] time= 22/06/2026 13:19:16
[2026-06-22 13:19:16,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:19:17,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:19:17,143.143 INFO    ] No existing commands found in stream
[2026-06-22 13:19:22,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:19:22,170.170 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-22 13:19:23,718.718 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:19:23,721.721 INFO    ] Checking for system updates...
[2026-06-22 13:19:23,758.758 INFO    ] 200
[2026-06-22 13:19:23,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:19:23,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:19:23,826.826 INFO    ] No update needed
[2026-06-22 13:19:23,829.829 INFO    ] Checking for camera pi updates...
[2026-06-22 13:19:23,867.867 INFO    ] 200
[2026-06-22 13:19:23,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:19:23,922.922 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:19:24,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:19:24,028.028 INFO    ] No camera update needed
[2026-06-22 13:19:24,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:19:24,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:19:24,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:19:24,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:19:26,087.087 INFO    ] ================================================
[2026-06-22 13:19:26,102.102 INFO    ] Launching Daemon at Mon Jun 22 13:19:26 IST 2026
[2026-06-22 13:19:26,113.113 INFO    ] ================================================
[2026-06-22 13:19:26,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:19:26
[2026-06-22 13:19:27,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:19:27,495.495 INFO    ] Initializing speech engine...
[2026-06-22 13:19:27,504.504 INFO    ] 2026-06-22 13:19:27
[2026-06-22 13:19:27,777.777 INFO    ] 2026-06-22 13:19:27
[2026-06-22 13:19:27,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:19:28,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:19:28,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:19:28,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:19:28,403.403 INFO    ] time= 22/06/2026 13:19:28
[2026-06-22 13:19:28,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:19:28,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:19:28,562.562 INFO    ] No existing commands found in stream
[2026-06-22 13:19:33,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:19:33,590.590 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-22 13:19:35,488.488 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:19:35,491.491 INFO    ] Checking for system updates...
[2026-06-22 13:19:35,531.531 INFO    ] 200
[2026-06-22 13:19:35,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:19:35,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:19:35,597.597 INFO    ] No update needed
[2026-06-22 13:19:35,599.599 INFO    ] Checking for camera pi updates...
[2026-06-22 13:19:35,633.633 INFO    ] 200
[2026-06-22 13:19:35,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:19:35,676.676 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:19:35,744.744 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:19:35,746.746 INFO    ] No camera update needed
[2026-06-22 13:19:35,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:19:35,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:19:35,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:19:35,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:19:37,805.805 INFO    ] ================================================
[2026-06-22 13:19:37,820.820 INFO    ] Launching Daemon at Mon Jun 22 13:19:37 IST 2026
[2026-06-22 13:19:37,830.830 INFO    ] ================================================
[2026-06-22 13:19:38,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:19:38
[2026-06-22 13:19:39,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:19:39,376.376 INFO    ] Initializing speech engine...
[2026-06-22 13:19:39,388.388 INFO    ] 2026-06-22 13:19:39
[2026-06-22 13:19:39,675.675 INFO    ] 2026-06-22 13:19:39
[2026-06-22 13:19:39,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:19:39,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:19:39,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:19:40,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:19:40,227.227 INFO    ] time= 22/06/2026 13:19:40
[2026-06-22 13:19:40,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:19:40,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:19:40,393.393 INFO    ] No existing commands found in stream
[2026-06-22 13:19:45,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:19:45,433.433 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-22 13:19:49,674.674 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:19:49,676.676 INFO    ] Checking for system updates...
[2026-06-22 13:19:49,697.697 INFO    ] 200
[2026-06-22 13:19:49,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:19:49,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:19:49,748.748 INFO    ] No update needed
[2026-06-22 13:19:49,751.751 INFO    ] Checking for camera pi updates...
[2026-06-22 13:19:49,787.787 INFO    ] 200
[2026-06-22 13:19:49,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:19:49,832.832 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:19:49,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:19:49,924.924 INFO    ] No camera update needed
[2026-06-22 13:19:49,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:19:49,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:19:49,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:19:49,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:19:51,982.982 INFO    ] ================================================
[2026-06-22 13:19:52,998.998 INFO    ] Launching Daemon at Mon Jun 22 13:19:51 IST 2026
[2026-06-22 13:19:52,008.008 INFO    ] ================================================
[2026-06-22 13:19:52,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:19:52
[2026-06-22 13:19:53,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:19:53,470.470 INFO    ] Initializing speech engine...
[2026-06-22 13:19:53,475.475 INFO    ] 2026-06-22 13:19:53
[2026-06-22 13:19:53,723.723 INFO    ] 2026-06-22 13:19:53
[2026-06-22 13:19:53,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:19:53,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:19:54,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:19:54,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:19:54,279.279 INFO    ] time= 22/06/2026 13:19:54
[2026-06-22 13:19:54,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:19:54,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:19:54,438.438 INFO    ] No existing commands found in stream
[2026-06-22 13:19:59,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:19:59,470.470 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-22 13:20:02,887.887 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:20:02,891.891 INFO    ] Checking for system updates...
[2026-06-22 13:20:02,960.960 INFO    ] 200
[2026-06-22 13:20:02,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:20:03,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:20:03,045.045 INFO    ] No update needed
[2026-06-22 13:20:03,048.048 INFO    ] Checking for camera pi updates...
[2026-06-22 13:20:03,088.088 INFO    ] 200
[2026-06-22 13:20:03,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:20:03,145.145 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:20:03,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:20:03,206.206 INFO    ] No camera update needed
[2026-06-22 13:20:03,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:20:03,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:20:03,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:20:03,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:20:05,267.267 INFO    ] ================================================
[2026-06-22 13:20:05,282.282 INFO    ] Launching Daemon at Mon Jun 22 13:20:05 IST 2026
[2026-06-22 13:20:05,293.293 INFO    ] ================================================
[2026-06-22 13:20:05,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:20:05
[2026-06-22 13:20:06,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:20:06,718.718 INFO    ] Initializing speech engine...
[2026-06-22 13:20:06,740.740 INFO    ] 2026-06-22 13:20:06
[2026-06-22 13:20:06,992.992 INFO    ] 2026-06-22 13:20:06
[2026-06-22 13:20:07,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:20:07,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:20:07,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:20:07,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:20:07,482.482 INFO    ] time= 22/06/2026 13:20:07
[2026-06-22 13:20:07,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:20:07,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:20:07,687.687 INFO    ] No existing commands found in stream
[2026-06-22 13:20:12,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:20:12,714.714 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-22 13:20:14,872.872 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:20:14,874.874 INFO    ] Checking for system updates...
[2026-06-22 13:20:14,895.895 INFO    ] 200
[2026-06-22 13:20:14,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:20:14,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:20:14,936.936 INFO    ] No update needed
[2026-06-22 13:20:14,938.938 INFO    ] Checking for camera pi updates...
[2026-06-22 13:20:14,972.972 INFO    ] 200
[2026-06-22 13:20:14,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:20:15,017.017 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:20:15,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:20:15,106.106 INFO    ] No camera update needed
[2026-06-22 13:20:15,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:20:15,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:20:15,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:20:15,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:20:17,164.164 INFO    ] ================================================
[2026-06-22 13:20:17,179.179 INFO    ] Launching Daemon at Mon Jun 22 13:20:17 IST 2026
[2026-06-22 13:20:17,190.190 INFO    ] ================================================
[2026-06-22 13:20:17,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:20:17
[2026-06-22 13:20:18,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:20:18,612.612 INFO    ] Initializing speech engine...
[2026-06-22 13:20:18,623.623 INFO    ] 2026-06-22 13:20:18
[2026-06-22 13:20:18,911.911 INFO    ] 2026-06-22 13:20:18
[2026-06-22 13:20:18,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:20:19,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:20:19,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:20:19,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:20:19,461.461 INFO    ] time= 22/06/2026 13:20:19
[2026-06-22 13:20:19,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:20:19,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:20:19,633.633 INFO    ] No existing commands found in stream
[2026-06-22 13:20:24,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:20:24,661.661 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-22 13:20:25,810.810 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:20:25,813.813 INFO    ] Checking for system updates...
[2026-06-22 13:20:25,851.851 INFO    ] 200
[2026-06-22 13:20:25,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:20:25,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:20:25,918.918 INFO    ] No update needed
[2026-06-22 13:20:25,921.921 INFO    ] Checking for camera pi updates...
[2026-06-22 13:20:25,955.955 INFO    ] 200
[2026-06-22 13:20:25,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:20:25,998.998 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:20:26,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:20:26,086.086 INFO    ] No camera update needed
[2026-06-22 13:20:26,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:20:26,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:20:26,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:20:26,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:20:28,141.141 INFO    ] ================================================
[2026-06-22 13:20:28,157.157 INFO    ] Launching Daemon at Mon Jun 22 13:20:28 IST 2026
[2026-06-22 13:20:28,168.168 INFO    ] ================================================
[2026-06-22 13:20:28,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:20:28
[2026-06-22 13:20:29,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:20:29,740.740 INFO    ] Initializing speech engine...
[2026-06-22 13:20:29,747.747 INFO    ] 2026-06-22 13:20:29
[2026-06-22 13:20:30,020.020 INFO    ] 2026-06-22 13:20:30
[2026-06-22 13:20:30,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:20:30,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:20:30,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:20:30,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:20:30,551.551 INFO    ] time= 22/06/2026 13:20:30
[2026-06-22 13:20:30,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:20:30,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:20:30,690.690 INFO    ] No existing commands found in stream
[2026-06-22 13:20:35,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:20:35,718.718 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-22 13:20:36,482.482 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:20:36,485.485 INFO    ] Checking for system updates...
[2026-06-22 13:20:36,522.522 INFO    ] 200
[2026-06-22 13:20:36,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:20:36,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:20:36,583.583 INFO    ] No update needed
[2026-06-22 13:20:36,585.585 INFO    ] Checking for camera pi updates...
[2026-06-22 13:20:36,619.619 INFO    ] 200
[2026-06-22 13:20:36,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:20:36,662.662 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:20:36,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:20:36,750.750 INFO    ] No camera update needed
[2026-06-22 13:20:36,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:20:36,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:20:36,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:20:36,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:20:38,809.809 INFO    ] ================================================
[2026-06-22 13:20:38,826.826 INFO    ] Launching Daemon at Mon Jun 22 13:20:38 IST 2026
[2026-06-22 13:20:38,837.837 INFO    ] ================================================
[2026-06-22 13:20:39,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:20:39
[2026-06-22 13:20:40,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:20:40,451.451 INFO    ] Initializing speech engine...
[2026-06-22 13:20:40,460.460 INFO    ] 2026-06-22 13:20:40
[2026-06-22 13:20:40,739.739 INFO    ] 2026-06-22 13:20:40
[2026-06-22 13:20:40,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:20:40,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:20:40,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:20:41,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:20:41,177.177 INFO    ] time= 22/06/2026 13:20:41
[2026-06-22 13:20:41,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:20:41,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:20:41,326.326 INFO    ] No existing commands found in stream
[2026-06-22 13:20:46,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:20:46,353.353 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-22 13:20:48,900.900 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:20:48,902.902 INFO    ] Checking for system updates...
[2026-06-22 13:20:48,939.939 INFO    ] 200
[2026-06-22 13:20:48,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:20:49,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:20:49,007.007 INFO    ] No update needed
[2026-06-22 13:20:49,009.009 INFO    ] Checking for camera pi updates...
[2026-06-22 13:20:49,043.043 INFO    ] 200
[2026-06-22 13:20:49,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:20:49,086.086 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:20:49,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:20:49,168.168 INFO    ] No camera update needed
[2026-06-22 13:20:49,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:20:49,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:20:49,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:20:49,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:20:51,222.222 INFO    ] ================================================
[2026-06-22 13:20:51,237.237 INFO    ] Launching Daemon at Mon Jun 22 13:20:51 IST 2026
[2026-06-22 13:20:51,248.248 INFO    ] ================================================
[2026-06-22 13:20:51,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:20:51
[2026-06-22 13:20:52,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:20:52,595.595 INFO    ] Initializing speech engine...
[2026-06-22 13:20:52,604.604 INFO    ] 2026-06-22 13:20:52
[2026-06-22 13:20:52,852.852 INFO    ] 2026-06-22 13:20:52
[2026-06-22 13:20:52,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:20:53,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:20:53,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:20:53,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:20:53,341.341 INFO    ] time= 22/06/2026 13:20:53
[2026-06-22 13:20:53,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:20:53,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:20:53,563.563 INFO    ] No existing commands found in stream
[2026-06-22 13:20:58,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:20:58,594.594 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-22 13:21:02,270.270 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:21:02,273.273 INFO    ] Checking for system updates...
[2026-06-22 13:21:02,320.320 INFO    ] 200
[2026-06-22 13:21:02,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:21:02,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:21:02,410.410 INFO    ] No update needed
[2026-06-22 13:21:02,413.413 INFO    ] Checking for camera pi updates...
[2026-06-22 13:21:02,460.460 INFO    ] 200
[2026-06-22 13:21:02,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:21:02,519.519 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:21:02,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:21:02,674.674 INFO    ] No camera update needed
[2026-06-22 13:21:02,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:21:02,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:21:02,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:21:02,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:21:04,735.735 INFO    ] ================================================
[2026-06-22 13:21:04,750.750 INFO    ] Launching Daemon at Mon Jun 22 13:21:04 IST 2026
[2026-06-22 13:21:04,761.761 INFO    ] ================================================
[2026-06-22 13:21:05,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:21:05
[2026-06-22 13:21:06,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:21:06,366.366 INFO    ] Initializing speech engine...
[2026-06-22 13:21:06,377.377 INFO    ] 2026-06-22 13:21:06
[2026-06-22 13:21:06,650.650 INFO    ] 2026-06-22 13:21:06
[2026-06-22 13:21:06,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:21:06,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:21:06,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:21:07,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:21:07,267.267 INFO    ] time= 22/06/2026 13:21:07
[2026-06-22 13:21:07,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:21:07,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:21:07,435.435 INFO    ] No existing commands found in stream
[2026-06-22 13:21:12,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:21:12,464.464 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-22 13:21:13,474.474 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:21:13,476.476 INFO    ] Checking for system updates...
[2026-06-22 13:21:13,497.497 INFO    ] 200
[2026-06-22 13:21:13,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:21:13,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:21:13,530.530 INFO    ] No update needed
[2026-06-22 13:21:13,531.531 INFO    ] Checking for camera pi updates...
[2026-06-22 13:21:13,562.562 INFO    ] 200
[2026-06-22 13:21:13,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:21:13,617.617 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:21:13,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:21:13,715.715 INFO    ] No camera update needed
[2026-06-22 13:21:13,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:21:13,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:21:13,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:21:13,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:21:15,775.775 INFO    ] ================================================
[2026-06-22 13:21:15,791.791 INFO    ] Launching Daemon at Mon Jun 22 13:21:15 IST 2026
[2026-06-22 13:21:15,801.801 INFO    ] ================================================
[2026-06-22 13:21:16,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:21:16
[2026-06-22 13:21:17,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:21:17,382.382 INFO    ] Initializing speech engine...
[2026-06-22 13:21:17,390.390 INFO    ] 2026-06-22 13:21:17
[2026-06-22 13:21:17,702.702 INFO    ] 2026-06-22 13:21:17
[2026-06-22 13:21:17,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:21:17,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:21:17,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:21:18,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:21:18,209.209 INFO    ] time= 22/06/2026 13:21:18
[2026-06-22 13:21:18,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:21:18,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:21:18,371.371 INFO    ] No existing commands found in stream
[2026-06-22 13:21:23,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:21:23,412.412 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-22 13:21:26,220.220 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:21:26,223.223 INFO    ] Checking for system updates...
[2026-06-22 13:21:26,266.266 INFO    ] 200
[2026-06-22 13:21:26,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:21:26,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:21:26,330.330 INFO    ] No update needed
[2026-06-22 13:21:26,333.333 INFO    ] Checking for camera pi updates...
[2026-06-22 13:21:26,373.373 INFO    ] 200
[2026-06-22 13:21:26,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:21:26,423.423 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:21:26,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:21:26,515.515 INFO    ] No camera update needed
[2026-06-22 13:21:26,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:21:26,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:21:26,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:21:26,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:21:28,570.570 INFO    ] ================================================
[2026-06-22 13:21:28,586.586 INFO    ] Launching Daemon at Mon Jun 22 13:21:28 IST 2026
[2026-06-22 13:21:28,597.597 INFO    ] ================================================
[2026-06-22 13:21:29,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:21:29
[2026-06-22 13:21:29,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:21:30,031.031 INFO    ] Initializing speech engine...
[2026-06-22 13:21:30,041.041 INFO    ] 2026-06-22 13:21:30
[2026-06-22 13:21:30,291.291 INFO    ] 2026-06-22 13:21:30
[2026-06-22 13:21:30,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:21:30,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:21:30,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:21:30,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:21:30,664.664 INFO    ] time= 22/06/2026 13:21:30
[2026-06-22 13:21:30,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:21:30,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:21:30,862.862 INFO    ] No existing commands found in stream
[2026-06-22 13:21:35,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:21:35,875.875 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-22 13:21:38,768.768 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:21:38,770.770 INFO    ] Checking for system updates...
[2026-06-22 13:21:38,806.806 INFO    ] 200
[2026-06-22 13:21:38,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:21:38,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:21:38,864.864 INFO    ] No update needed
[2026-06-22 13:21:38,866.866 INFO    ] Checking for camera pi updates...
[2026-06-22 13:21:38,905.905 INFO    ] 200
[2026-06-22 13:21:38,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:21:38,954.954 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:21:39,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:21:39,051.051 INFO    ] No camera update needed
[2026-06-22 13:21:39,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:21:39,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:21:39,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:21:39,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:21:41,105.105 INFO    ] ================================================
[2026-06-22 13:21:41,120.120 INFO    ] Launching Daemon at Mon Jun 22 13:21:41 IST 2026
[2026-06-22 13:21:41,131.131 INFO    ] ================================================
[2026-06-22 13:21:41,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:21:41
[2026-06-22 13:21:42,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:21:42,495.495 INFO    ] Initializing speech engine...
[2026-06-22 13:21:42,503.503 INFO    ] 2026-06-22 13:21:42
[2026-06-22 13:21:42,809.809 INFO    ] 2026-06-22 13:21:42
[2026-06-22 13:21:42,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:21:43,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:21:43,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:21:43,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:21:43,233.233 INFO    ] time= 22/06/2026 13:21:43
[2026-06-22 13:21:43,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:21:43,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:21:43,329.329 INFO    ] No existing commands found in stream
[2026-06-22 13:21:48,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:21:48,346.346 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-22 13:21:50,297.297 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:21:50,300.300 INFO    ] Checking for system updates...
[2026-06-22 13:21:50,341.341 INFO    ] 200
[2026-06-22 13:21:50,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:21:50,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:21:50,399.399 INFO    ] No update needed
[2026-06-22 13:21:50,401.401 INFO    ] Checking for camera pi updates...
[2026-06-22 13:21:50,435.435 INFO    ] 200
[2026-06-22 13:21:50,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:21:50,477.477 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:21:50,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:21:50,559.559 INFO    ] No camera update needed
[2026-06-22 13:21:50,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:21:50,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:21:50,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:21:50,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:21:52,615.615 INFO    ] ================================================
[2026-06-22 13:21:52,630.630 INFO    ] Launching Daemon at Mon Jun 22 13:21:52 IST 2026
[2026-06-22 13:21:52,640.640 INFO    ] ================================================
[2026-06-22 13:21:53,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:21:53
[2026-06-22 13:21:53,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:21:53,992.992 INFO    ] Initializing speech engine...
[2026-06-22 13:21:54,001.001 INFO    ] 2026-06-22 13:21:53
[2026-06-22 13:21:54,249.249 INFO    ] 2026-06-22 13:21:54
[2026-06-22 13:21:54,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:21:54,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:21:54,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:21:54,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:21:54,745.745 INFO    ] time= 22/06/2026 13:21:54
[2026-06-22 13:21:54,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:21:54,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:21:54,966.966 INFO    ] No existing commands found in stream
[2026-06-22 13:21:59,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:21:59,983.983 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-22 13:22:03,689.689 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:22:03,692.692 INFO    ] Checking for system updates...
[2026-06-22 13:22:03,728.728 INFO    ] 200
[2026-06-22 13:22:03,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:22:03,795.795 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:22:03,798.798 INFO    ] No update needed
[2026-06-22 13:22:03,804.804 INFO    ] Checking for camera pi updates...
[2026-06-22 13:22:03,855.855 INFO    ] 200
[2026-06-22 13:22:03,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:22:03,899.899 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:22:03,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:22:03,987.987 INFO    ] No camera update needed
[2026-06-22 13:22:03,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:22:03,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:22:03,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:22:04,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:22:06,045.045 INFO    ] ================================================
[2026-06-22 13:22:06,060.060 INFO    ] Launching Daemon at Mon Jun 22 13:22:06 IST 2026
[2026-06-22 13:22:06,070.070 INFO    ] ================================================
[2026-06-22 13:22:06,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:22:06
[2026-06-22 13:22:07,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:22:07,472.472 INFO    ] Initializing speech engine...
[2026-06-22 13:22:07,483.483 INFO    ] 2026-06-22 13:22:07
[2026-06-22 13:22:07,727.727 INFO    ] 2026-06-22 13:22:07
[2026-06-22 13:22:07,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:22:07,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:22:08,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:22:08,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:22:08,194.194 INFO    ] time= 22/06/2026 13:22:08
[2026-06-22 13:22:08,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:22:08,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:22:08,397.397 INFO    ] No existing commands found in stream
[2026-06-22 13:22:13,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:22:13,427.427 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-22 13:22:17,299.299 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:22:17,301.301 INFO    ] Checking for system updates...
[2026-06-22 13:22:17,342.342 INFO    ] 200
[2026-06-22 13:22:17,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:22:17,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:22:17,408.408 INFO    ] No update needed
[2026-06-22 13:22:17,410.410 INFO    ] Checking for camera pi updates...
[2026-06-22 13:22:17,448.448 INFO    ] 200
[2026-06-22 13:22:17,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:22:17,491.491 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:22:17,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:22:17,573.573 INFO    ] No camera update needed
[2026-06-22 13:22:17,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:22:17,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:22:17,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:22:17,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:22:19,633.633 INFO    ] ================================================
[2026-06-22 13:22:19,648.648 INFO    ] Launching Daemon at Mon Jun 22 13:22:19 IST 2026
[2026-06-22 13:22:19,658.658 INFO    ] ================================================
[2026-06-22 13:22:20,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:22:20
[2026-06-22 13:22:20,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:22:21,050.050 INFO    ] Initializing speech engine...
[2026-06-22 13:22:21,057.057 INFO    ] 2026-06-22 13:22:21
[2026-06-22 13:22:21,317.317 INFO    ] 2026-06-22 13:22:21
[2026-06-22 13:22:21,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:22:21,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:22:21,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:22:21,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:22:21,795.795 INFO    ] time= 22/06/2026 13:22:21
[2026-06-22 13:22:21,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:22:21,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:22:22,028.028 INFO    ] No existing commands found in stream
[2026-06-22 13:22:27,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:22:27,061.061 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-22 13:22:28,538.538 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:22:28,540.540 INFO    ] Checking for system updates...
[2026-06-22 13:22:28,581.581 INFO    ] 200
[2026-06-22 13:22:28,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:22:28,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:22:28,638.638 INFO    ] No update needed
[2026-06-22 13:22:28,640.640 INFO    ] Checking for camera pi updates...
[2026-06-22 13:22:28,674.674 INFO    ] 200
[2026-06-22 13:22:28,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:22:28,722.722 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:22:28,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:22:28,808.808 INFO    ] No camera update needed
[2026-06-22 13:22:28,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:22:28,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:22:28,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:22:28,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:22:30,862.862 INFO    ] ================================================
[2026-06-22 13:22:30,877.877 INFO    ] Launching Daemon at Mon Jun 22 13:22:30 IST 2026
[2026-06-22 13:22:30,888.888 INFO    ] ================================================
[2026-06-22 13:22:31,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:22:31
[2026-06-22 13:22:32,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:22:32,365.365 INFO    ] Initializing speech engine...
[2026-06-22 13:22:32,372.372 INFO    ] 2026-06-22 13:22:32
[2026-06-22 13:22:32,655.655 INFO    ] 2026-06-22 13:22:32
[2026-06-22 13:22:32,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:22:32,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:22:32,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:22:33,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:22:33,050.050 INFO    ] time= 22/06/2026 13:22:33
[2026-06-22 13:22:33,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:22:33,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:22:33,169.169 INFO    ] No existing commands found in stream
[2026-06-22 13:22:38,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:22:38,182.182 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-22 13:22:41,447.447 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:22:41,449.449 INFO    ] Checking for system updates...
[2026-06-22 13:22:41,489.489 INFO    ] 200
[2026-06-22 13:22:41,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:22:41,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:22:41,554.554 INFO    ] No update needed
[2026-06-22 13:22:41,556.556 INFO    ] Checking for camera pi updates...
[2026-06-22 13:22:41,591.591 INFO    ] 200
[2026-06-22 13:22:41,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:22:41,634.634 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:22:41,723.723 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:22:41,726.726 INFO    ] No camera update needed
[2026-06-22 13:22:41,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:22:41,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:22:41,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:22:41,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:22:43,782.782 INFO    ] ================================================
[2026-06-22 13:22:43,798.798 INFO    ] Launching Daemon at Mon Jun 22 13:22:43 IST 2026
[2026-06-22 13:22:43,809.809 INFO    ] ================================================
[2026-06-22 13:22:44,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:22:44
[2026-06-22 13:22:45,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:22:45,362.362 INFO    ] Initializing speech engine...
[2026-06-22 13:22:45,372.372 INFO    ] 2026-06-22 13:22:45
[2026-06-22 13:22:45,645.645 INFO    ] 2026-06-22 13:22:45
[2026-06-22 13:22:45,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:22:45,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:22:45,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:22:46,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:22:46,213.213 INFO    ] time= 22/06/2026 13:22:46
[2026-06-22 13:22:46,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:22:46,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:22:46,372.372 INFO    ] No existing commands found in stream
[2026-06-22 13:22:51,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:22:51,391.391 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-22 13:22:52,954.954 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:22:52,957.957 INFO    ] Checking for system updates...
[2026-06-22 13:22:52,998.998 INFO    ] 200
[2026-06-22 13:22:53,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:22:53,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:22:53,066.066 INFO    ] No update needed
[2026-06-22 13:22:53,069.069 INFO    ] Checking for camera pi updates...
[2026-06-22 13:22:53,108.108 INFO    ] 200
[2026-06-22 13:22:53,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:22:53,159.159 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:22:53,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:22:53,244.244 INFO    ] No camera update needed
[2026-06-22 13:22:53,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:22:53,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:22:53,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:22:53,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:22:55,304.304 INFO    ] ================================================
[2026-06-22 13:22:55,320.320 INFO    ] Launching Daemon at Mon Jun 22 13:22:55 IST 2026
[2026-06-22 13:22:55,331.331 INFO    ] ================================================
[2026-06-22 13:22:55,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:22:55
[2026-06-22 13:22:56,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:22:56,679.679 INFO    ] Initializing speech engine...
[2026-06-22 13:22:56,688.688 INFO    ] 2026-06-22 13:22:56
[2026-06-22 13:22:56,985.985 INFO    ] 2026-06-22 13:22:56
[2026-06-22 13:22:57,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:22:57,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:22:57,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:22:57,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:22:57,407.407 INFO    ] time= 22/06/2026 13:22:57
[2026-06-22 13:22:57,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:22:57,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:22:57,552.552 INFO    ] No existing commands found in stream
[2026-06-22 13:23:02,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:23:02,576.576 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-22 13:23:05,070.070 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:23:05,073.073 INFO    ] Checking for system updates...
[2026-06-22 13:23:05,118.118 INFO    ] 200
[2026-06-22 13:23:05,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:23:05,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:23:05,195.195 INFO    ] No update needed
[2026-06-22 13:23:05,198.198 INFO    ] Checking for camera pi updates...
[2026-06-22 13:23:05,244.244 INFO    ] 200
[2026-06-22 13:23:05,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:23:05,307.307 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:23:05,488.488 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:23:05,491.491 INFO    ] No camera update needed
[2026-06-22 13:23:05,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:23:05,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:23:05,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:23:05,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:23:07,546.546 INFO    ] ================================================
[2026-06-22 13:23:07,562.562 INFO    ] Launching Daemon at Mon Jun 22 13:23:07 IST 2026
[2026-06-22 13:23:07,573.573 INFO    ] ================================================
[2026-06-22 13:23:08,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:23:08
[2026-06-22 13:23:08,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:23:09,173.173 INFO    ] Initializing speech engine...
[2026-06-22 13:23:09,180.180 INFO    ] 2026-06-22 13:23:09
[2026-06-22 13:23:09,469.469 INFO    ] 2026-06-22 13:23:09
[2026-06-22 13:23:09,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:23:09,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:23:09,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:23:10,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:23:10,047.047 INFO    ] time= 22/06/2026 13:23:10
[2026-06-22 13:23:10,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:23:10,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:23:10,227.227 INFO    ] No existing commands found in stream
[2026-06-22 13:23:15,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:23:15,242.242 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-22 13:23:18,270.270 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:23:18,273.273 INFO    ] Checking for system updates...
[2026-06-22 13:23:18,310.310 INFO    ] 200
[2026-06-22 13:23:18,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:23:18,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:23:18,369.369 INFO    ] No update needed
[2026-06-22 13:23:18,371.371 INFO    ] Checking for camera pi updates...
[2026-06-22 13:23:18,406.406 INFO    ] 200
[2026-06-22 13:23:18,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:23:18,450.450 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:23:18,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:23:18,545.545 INFO    ] No camera update needed
[2026-06-22 13:23:18,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:23:18,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:23:18,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:23:18,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:23:20,602.602 INFO    ] ================================================
[2026-06-22 13:23:20,618.618 INFO    ] Launching Daemon at Mon Jun 22 13:23:20 IST 2026
[2026-06-22 13:23:20,630.630 INFO    ] ================================================
[2026-06-22 13:23:21,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:23:21
[2026-06-22 13:23:21,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:23:21,976.976 INFO    ] Initializing speech engine...
[2026-06-22 13:23:21,985.985 INFO    ] 2026-06-22 13:23:21
[2026-06-22 13:23:22,243.243 INFO    ] 2026-06-22 13:23:22
[2026-06-22 13:23:22,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:23:22,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:23:22,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:23:22,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:23:22,781.781 INFO    ] time= 22/06/2026 13:23:22
[2026-06-22 13:23:22,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:23:22,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:23:22,946.946 INFO    ] No existing commands found in stream
[2026-06-22 13:23:27,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:23:27,961.961 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-22 13:23:31,897.897 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:23:31,900.900 INFO    ] Checking for system updates...
[2026-06-22 13:23:31,939.939 INFO    ] 200
[2026-06-22 13:23:31,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:23:31,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:23:32,000.000 INFO    ] No update needed
[2026-06-22 13:23:32,003.003 INFO    ] Checking for camera pi updates...
[2026-06-22 13:23:32,039.039 INFO    ] 200
[2026-06-22 13:23:32,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:23:32,091.091 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:23:32,174.174 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:23:32,177.177 INFO    ] No camera update needed
[2026-06-22 13:23:32,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:23:32,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:23:32,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:23:32,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:23:34,251.251 INFO    ] ================================================
[2026-06-22 13:23:34,267.267 INFO    ] Launching Daemon at Mon Jun 22 13:23:34 IST 2026
[2026-06-22 13:23:34,278.278 INFO    ] ================================================
[2026-06-22 13:23:34,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:23:34
[2026-06-22 13:23:35,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:23:35,680.680 INFO    ] Initializing speech engine...
[2026-06-22 13:23:35,689.689 INFO    ] 2026-06-22 13:23:35
[2026-06-22 13:23:35,967.967 INFO    ] 2026-06-22 13:23:35
[2026-06-22 13:23:36,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:23:36,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:23:36,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:23:36,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:23:36,486.486 INFO    ] time= 22/06/2026 13:23:36
[2026-06-22 13:23:36,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:23:36,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:23:36,717.717 INFO    ] No existing commands found in stream
[2026-06-22 13:23:41,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:23:41,740.740 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-22 13:23:43,954.954 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:23:43,956.956 INFO    ] Checking for system updates...
[2026-06-22 13:23:43,992.992 INFO    ] 200
[2026-06-22 13:23:43,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:23:44,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:23:44,055.055 INFO    ] No update needed
[2026-06-22 13:23:44,057.057 INFO    ] Checking for camera pi updates...
[2026-06-22 13:23:44,095.095 INFO    ] 200
[2026-06-22 13:23:44,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:23:44,139.139 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:23:44,205.205 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:23:44,208.208 INFO    ] No camera update needed
[2026-06-22 13:23:44,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:23:44,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:23:44,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:23:44,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:23:46,264.264 INFO    ] ================================================
[2026-06-22 13:23:46,280.280 INFO    ] Launching Daemon at Mon Jun 22 13:23:46 IST 2026
[2026-06-22 13:23:46,291.291 INFO    ] ================================================
[2026-06-22 13:23:46,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:23:46
[2026-06-22 13:23:47,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:23:47,763.763 INFO    ] Initializing speech engine...
[2026-06-22 13:23:47,770.770 INFO    ] 2026-06-22 13:23:47
[2026-06-22 13:23:48,032.032 INFO    ] 2026-06-22 13:23:48
[2026-06-22 13:23:48,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:23:48,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:23:48,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:23:48,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:23:48,502.502 INFO    ] time= 22/06/2026 13:23:48
[2026-06-22 13:23:48,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:23:48,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:23:48,728.728 INFO    ] No existing commands found in stream
[2026-06-22 13:23:53,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:23:53,746.746 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-22 13:23:54,895.895 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:23:54,898.898 INFO    ] Checking for system updates...
[2026-06-22 13:23:54,935.935 INFO    ] 200
[2026-06-22 13:23:54,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:23:54,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:23:55,000.000 INFO    ] No update needed
[2026-06-22 13:23:55,003.003 INFO    ] Checking for camera pi updates...
[2026-06-22 13:23:55,041.041 INFO    ] 200
[2026-06-22 13:23:55,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:23:55,091.091 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:23:55,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:23:55,154.154 INFO    ] No camera update needed
[2026-06-22 13:23:55,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:23:55,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:23:55,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:23:55,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:23:57,215.215 INFO    ] ================================================
[2026-06-22 13:23:57,230.230 INFO    ] Launching Daemon at Mon Jun 22 13:23:57 IST 2026
[2026-06-22 13:23:57,242.242 INFO    ] ================================================
[2026-06-22 13:23:57,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:23:57
[2026-06-22 13:23:58,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:23:58,693.693 INFO    ] Initializing speech engine...
[2026-06-22 13:23:58,707.707 INFO    ] 2026-06-22 13:23:58
[2026-06-22 13:23:58,990.990 INFO    ] 2026-06-22 13:23:58
[2026-06-22 13:23:59,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:23:59,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:23:59,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:23:59,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:23:59,406.406 INFO    ] time= 22/06/2026 13:23:59
[2026-06-22 13:23:59,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:23:59,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:23:59,595.595 INFO    ] No existing commands found in stream
[2026-06-22 13:24:04,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:24:04,633.633 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-22 13:24:05,415.415 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:24:05,418.418 INFO    ] Checking for system updates...
[2026-06-22 13:24:05,457.457 INFO    ] 200
[2026-06-22 13:24:05,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:24:05,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:24:05,522.522 INFO    ] No update needed
[2026-06-22 13:24:05,524.524 INFO    ] Checking for camera pi updates...
[2026-06-22 13:24:05,558.558 INFO    ] 200
[2026-06-22 13:24:05,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:24:05,602.602 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:24:05,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:24:05,690.690 INFO    ] No camera update needed
[2026-06-22 13:24:05,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:24:05,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:24:05,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:24:05,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:24:07,746.746 INFO    ] ================================================
[2026-06-22 13:24:07,761.761 INFO    ] Launching Daemon at Mon Jun 22 13:24:07 IST 2026
[2026-06-22 13:24:07,773.773 INFO    ] ================================================
[2026-06-22 13:24:08,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:24:08
[2026-06-22 13:24:08,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:24:09,109.109 INFO    ] Initializing speech engine...
[2026-06-22 13:24:09,126.126 INFO    ] 2026-06-22 13:24:09
[2026-06-22 13:24:09,382.382 INFO    ] 2026-06-22 13:24:09
[2026-06-22 13:24:09,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:24:09,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:24:09,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:24:09,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:24:09,930.930 INFO    ] time= 22/06/2026 13:24:09
[2026-06-22 13:24:09,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:24:09,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:24:10,206.206 INFO    ] No existing commands found in stream
[2026-06-22 13:24:15,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:24:15,234.234 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-22 13:24:15,763.763 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:24:15,766.766 INFO    ] Checking for system updates...
[2026-06-22 13:24:15,805.805 INFO    ] 200
[2026-06-22 13:24:15,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:24:15,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:24:15,867.867 INFO    ] No update needed
[2026-06-22 13:24:15,870.870 INFO    ] Checking for camera pi updates...
[2026-06-22 13:24:15,903.903 INFO    ] 200
[2026-06-22 13:24:15,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:24:15,947.947 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:24:16,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:24:16,044.044 INFO    ] No camera update needed
[2026-06-22 13:24:16,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:24:16,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:24:16,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:24:16,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:24:18,100.100 INFO    ] ================================================
[2026-06-22 13:24:18,116.116 INFO    ] Launching Daemon at Mon Jun 22 13:24:18 IST 2026
[2026-06-22 13:24:18,127.127 INFO    ] ================================================
[2026-06-22 13:24:18,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:24:18
[2026-06-22 13:24:19,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:24:19,567.567 INFO    ] Initializing speech engine...
[2026-06-22 13:24:19,587.587 INFO    ] 2026-06-22 13:24:19
[2026-06-22 13:24:19,852.852 INFO    ] 2026-06-22 13:24:19
[2026-06-22 13:24:19,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:24:20,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:24:20,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:24:20,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:24:20,269.269 INFO    ] time= 22/06/2026 13:24:20
[2026-06-22 13:24:20,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:24:20,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:24:20,478.478 INFO    ] No existing commands found in stream
[2026-06-22 13:24:25,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:24:25,501.501 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-22 13:24:28,863.863 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:24:28,865.865 INFO    ] Checking for system updates...
[2026-06-22 13:24:28,891.891 INFO    ] 200
[2026-06-22 13:24:28,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:24:28,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:24:28,957.957 INFO    ] No update needed
[2026-06-22 13:24:28,960.960 INFO    ] Checking for camera pi updates...
[2026-06-22 13:24:28,994.994 INFO    ] 200
[2026-06-22 13:24:28,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:24:29,039.039 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:24:29,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:24:29,122.122 INFO    ] No camera update needed
[2026-06-22 13:24:29,124.124 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:24:29,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:24:29,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:24:29,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:24:31,180.180 INFO    ] ================================================
[2026-06-22 13:24:31,196.196 INFO    ] Launching Daemon at Mon Jun 22 13:24:31 IST 2026
[2026-06-22 13:24:31,207.207 INFO    ] ================================================
[2026-06-22 13:24:31,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:24:31
[2026-06-22 13:24:32,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:24:32,771.771 INFO    ] Initializing speech engine...
[2026-06-22 13:24:32,785.785 INFO    ] 2026-06-22 13:24:32
[2026-06-22 13:24:33,060.060 INFO    ] 2026-06-22 13:24:33
[2026-06-22 13:24:33,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:24:33,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:24:33,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:24:33,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:24:33,583.583 INFO    ] time= 22/06/2026 13:24:33
[2026-06-22 13:24:33,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:24:33,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:24:33,779.779 INFO    ] No existing commands found in stream
[2026-06-22 13:24:38,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:24:38,808.808 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-22 13:24:40,904.904 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:24:40,907.907 INFO    ] Checking for system updates...
[2026-06-22 13:24:40,943.943 INFO    ] 200
[2026-06-22 13:24:40,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:24:41,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:24:41,007.007 INFO    ] No update needed
[2026-06-22 13:24:41,009.009 INFO    ] Checking for camera pi updates...
[2026-06-22 13:24:41,046.046 INFO    ] 200
[2026-06-22 13:24:41,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:24:41,089.089 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:24:41,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:24:41,181.181 INFO    ] No camera update needed
[2026-06-22 13:24:41,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:24:41,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:24:41,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:24:41,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:24:43,238.238 INFO    ] ================================================
[2026-06-22 13:24:43,253.253 INFO    ] Launching Daemon at Mon Jun 22 13:24:43 IST 2026
[2026-06-22 13:24:43,264.264 INFO    ] ================================================
[2026-06-22 13:24:43,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:24:43
[2026-06-22 13:24:44,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:24:44,766.766 INFO    ] Initializing speech engine...
[2026-06-22 13:24:44,779.779 INFO    ] 2026-06-22 13:24:44
[2026-06-22 13:24:45,063.063 INFO    ] 2026-06-22 13:24:45
[2026-06-22 13:24:45,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:24:45,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:24:45,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:24:45,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:24:45,608.608 INFO    ] time= 22/06/2026 13:24:45
[2026-06-22 13:24:45,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:24:45,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:24:45,763.763 INFO    ] No existing commands found in stream
[2026-06-22 13:24:50,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:24:50,797.797 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-22 13:24:52,197.197 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:24:52,199.199 INFO    ] Checking for system updates...
[2026-06-22 13:24:52,220.220 INFO    ] 200
[2026-06-22 13:24:52,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:24:52,253.253 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:24:52,255.255 INFO    ] No update needed
[2026-06-22 13:24:52,256.256 INFO    ] Checking for camera pi updates...
[2026-06-22 13:24:52,279.279 INFO    ] 200
[2026-06-22 13:24:52,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:24:52,324.324 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:24:52,407.407 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:24:52,410.410 INFO    ] No camera update needed
[2026-06-22 13:24:52,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:24:52,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:24:52,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:24:52,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:24:54,469.469 INFO    ] ================================================
[2026-06-22 13:24:54,485.485 INFO    ] Launching Daemon at Mon Jun 22 13:24:54 IST 2026
[2026-06-22 13:24:54,496.496 INFO    ] ================================================
[2026-06-22 13:24:55,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:24:55
[2026-06-22 13:24:55,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:24:55,923.923 INFO    ] Initializing speech engine...
[2026-06-22 13:24:55,948.948 INFO    ] 2026-06-22 13:24:55
[2026-06-22 13:24:56,217.217 INFO    ] 2026-06-22 13:24:56
[2026-06-22 13:24:56,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:24:56,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:24:56,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:24:56,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:24:56,591.591 INFO    ] time= 22/06/2026 13:24:56
[2026-06-22 13:24:56,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:24:56,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:24:56,713.713 INFO    ] No existing commands found in stream
[2026-06-22 13:25:01,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:25:01,732.732 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-22 13:25:05,200.200 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:25:05,202.202 INFO    ] Checking for system updates...
[2026-06-22 13:25:05,239.239 INFO    ] 200
[2026-06-22 13:25:05,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:25:05,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:25:05,298.298 INFO    ] No update needed
[2026-06-22 13:25:05,305.305 INFO    ] Checking for camera pi updates...
[2026-06-22 13:25:05,340.340 INFO    ] 200
[2026-06-22 13:25:05,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:25:05,391.391 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:25:05,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:25:05,463.463 INFO    ] No camera update needed
[2026-06-22 13:25:05,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:25:05,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:25:05,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:25:05,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:25:07,524.524 INFO    ] ================================================
[2026-06-22 13:25:07,540.540 INFO    ] Launching Daemon at Mon Jun 22 13:25:07 IST 2026
[2026-06-22 13:25:07,551.551 INFO    ] ================================================
[2026-06-22 13:25:08,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:25:08
[2026-06-22 13:25:08,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:25:08,993.993 INFO    ] Initializing speech engine...
[2026-06-22 13:25:09,002.002 INFO    ] 2026-06-22 13:25:08
[2026-06-22 13:25:09,248.248 INFO    ] 2026-06-22 13:25:09
[2026-06-22 13:25:09,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:25:09,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:25:09,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:25:09,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:25:09,738.738 INFO    ] time= 22/06/2026 13:25:09
[2026-06-22 13:25:09,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:25:09,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:25:09,981.981 INFO    ] No existing commands found in stream
[2026-06-22 13:25:14,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:25:14,996.996 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-22 13:25:17,591.591 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:25:17,593.593 INFO    ] Checking for system updates...
[2026-06-22 13:25:17,617.617 INFO    ] 200
[2026-06-22 13:25:17,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:25:17,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:25:17,678.678 INFO    ] No update needed
[2026-06-22 13:25:17,681.681 INFO    ] Checking for camera pi updates...
[2026-06-22 13:25:17,718.718 INFO    ] 200
[2026-06-22 13:25:17,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:25:17,766.766 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:25:17,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:25:17,950.950 INFO    ] No camera update needed
[2026-06-22 13:25:17,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:25:17,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:25:17,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:25:17,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:25:20,007.007 INFO    ] ================================================
[2026-06-22 13:25:20,023.023 INFO    ] Launching Daemon at Mon Jun 22 13:25:20 IST 2026
[2026-06-22 13:25:20,034.034 INFO    ] ================================================
[2026-06-22 13:25:20,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:25:20
[2026-06-22 13:25:21,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:25:21,470.470 INFO    ] Initializing speech engine...
[2026-06-22 13:25:21,477.477 INFO    ] 2026-06-22 13:25:21
[2026-06-22 13:25:21,736.736 INFO    ] 2026-06-22 13:25:21
[2026-06-22 13:25:21,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:25:22,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:25:22,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:25:22,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:25:22,218.218 INFO    ] time= 22/06/2026 13:25:22
[2026-06-22 13:25:22,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:25:22,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:25:22,432.432 INFO    ] No existing commands found in stream
[2026-06-22 13:25:27,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:25:27,454.454 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-22 13:25:30,501.501 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:25:30,503.503 INFO    ] Checking for system updates...
[2026-06-22 13:25:30,540.540 INFO    ] 200
[2026-06-22 13:25:30,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:25:30,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:25:30,598.598 INFO    ] No update needed
[2026-06-22 13:25:30,600.600 INFO    ] Checking for camera pi updates...
[2026-06-22 13:25:30,638.638 INFO    ] 200
[2026-06-22 13:25:30,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:25:30,681.681 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:25:30,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:25:30,763.763 INFO    ] No camera update needed
[2026-06-22 13:25:30,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:25:30,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:25:30,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:25:30,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:25:32,820.820 INFO    ] ================================================
[2026-06-22 13:25:32,836.836 INFO    ] Launching Daemon at Mon Jun 22 13:25:32 IST 2026
[2026-06-22 13:25:32,848.848 INFO    ] ================================================
[2026-06-22 13:25:33,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:25:33
[2026-06-22 13:25:34,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:25:34,319.319 INFO    ] Initializing speech engine...
[2026-06-22 13:25:34,328.328 INFO    ] 2026-06-22 13:25:34
[2026-06-22 13:25:34,579.579 INFO    ] 2026-06-22 13:25:34
[2026-06-22 13:25:34,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:25:34,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:25:34,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:25:35,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:25:35,050.050 INFO    ] time= 22/06/2026 13:25:35
[2026-06-22 13:25:35,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:25:35,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:25:35,269.269 INFO    ] No existing commands found in stream
[2026-06-22 13:25:40,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:25:40,299.299 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-22 13:25:42,334.334 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:25:42,336.336 INFO    ] Checking for system updates...
[2026-06-22 13:25:42,357.357 INFO    ] 200
[2026-06-22 13:25:42,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:25:42,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:25:42,389.389 INFO    ] No update needed
[2026-06-22 13:25:42,391.391 INFO    ] Checking for camera pi updates...
[2026-06-22 13:25:42,410.410 INFO    ] 200
[2026-06-22 13:25:42,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:25:42,446.446 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:25:42,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:25:42,552.552 INFO    ] No camera update needed
[2026-06-22 13:25:42,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:25:42,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:25:42,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:25:42,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:25:44,612.612 INFO    ] ================================================
[2026-06-22 13:25:44,628.628 INFO    ] Launching Daemon at Mon Jun 22 13:25:44 IST 2026
[2026-06-22 13:25:44,639.639 INFO    ] ================================================
[2026-06-22 13:25:45,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:25:45
[2026-06-22 13:25:45,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:25:46,080.080 INFO    ] Initializing speech engine...
[2026-06-22 13:25:46,089.089 INFO    ] 2026-06-22 13:25:46
[2026-06-22 13:25:46,407.407 INFO    ] 2026-06-22 13:25:46
[2026-06-22 13:25:46,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:25:46,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:25:46,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:25:46,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:25:46,931.931 INFO    ] time= 22/06/2026 13:25:46
[2026-06-22 13:25:46,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:25:46,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:25:47,076.076 INFO    ] No existing commands found in stream
[2026-06-22 13:25:52,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:25:52,103.103 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-22 13:25:53,717.717 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:25:53,718.718 INFO    ] Checking for system updates...
[2026-06-22 13:25:53,752.752 INFO    ] 200
[2026-06-22 13:25:53,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:25:53,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:25:53,811.811 INFO    ] No update needed
[2026-06-22 13:25:53,813.813 INFO    ] Checking for camera pi updates...
[2026-06-22 13:25:53,847.847 INFO    ] 200
[2026-06-22 13:25:53,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:25:53,890.890 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:25:53,977.977 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:25:53,979.979 INFO    ] No camera update needed
[2026-06-22 13:25:53,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:25:53,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:25:53,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:25:53,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:25:56,036.036 INFO    ] ================================================
[2026-06-22 13:25:56,052.052 INFO    ] Launching Daemon at Mon Jun 22 13:25:56 IST 2026
[2026-06-22 13:25:56,063.063 INFO    ] ================================================
[2026-06-22 13:25:56,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:25:56
[2026-06-22 13:25:57,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:25:57,462.462 INFO    ] Initializing speech engine...
[2026-06-22 13:25:57,485.485 INFO    ] 2026-06-22 13:25:57
[2026-06-22 13:25:57,739.739 INFO    ] 2026-06-22 13:25:57
[2026-06-22 13:25:57,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:25:57,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:25:57,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:25:58,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:25:58,203.203 INFO    ] time= 22/06/2026 13:25:58
[2026-06-22 13:25:58,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:25:58,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:25:58,467.467 INFO    ] No existing commands found in stream
[2026-06-22 13:26:03,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:26:03,479.479 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-22 13:26:07,802.802 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:26:07,804.804 INFO    ] Checking for system updates...
[2026-06-22 13:26:07,826.826 INFO    ] 200
[2026-06-22 13:26:07,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:26:07,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:26:07,865.865 INFO    ] No update needed
[2026-06-22 13:26:07,868.868 INFO    ] Checking for camera pi updates...
[2026-06-22 13:26:07,901.901 INFO    ] 200
[2026-06-22 13:26:07,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:26:07,944.944 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:26:08,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:26:08,022.022 INFO    ] No camera update needed
[2026-06-22 13:26:08,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:26:08,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:26:08,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:26:08,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:26:10,085.085 INFO    ] ================================================
[2026-06-22 13:26:10,101.101 INFO    ] Launching Daemon at Mon Jun 22 13:26:10 IST 2026
[2026-06-22 13:26:10,113.113 INFO    ] ================================================
[2026-06-22 13:26:10,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:26:10
[2026-06-22 13:26:11,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:26:11,446.446 INFO    ] Initializing speech engine...
[2026-06-22 13:26:11,455.455 INFO    ] 2026-06-22 13:26:11
[2026-06-22 13:26:11,702.702 INFO    ] 2026-06-22 13:26:11
[2026-06-22 13:26:11,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:26:11,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:26:11,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:26:12,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:26:12,258.258 INFO    ] time= 22/06/2026 13:26:12
[2026-06-22 13:26:12,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:26:12,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:26:12,408.408 INFO    ] No existing commands found in stream
[2026-06-22 13:26:17,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:26:17,426.426 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-22 13:26:18,358.358 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:26:18,361.361 INFO    ] Checking for system updates...
[2026-06-22 13:26:18,396.396 INFO    ] 200
[2026-06-22 13:26:18,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:26:18,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:26:18,465.465 INFO    ] No update needed
[2026-06-22 13:26:18,468.468 INFO    ] Checking for camera pi updates...
[2026-06-22 13:26:18,502.502 INFO    ] 200
[2026-06-22 13:26:18,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:26:18,554.554 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:26:18,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:26:18,639.639 INFO    ] No camera update needed
[2026-06-22 13:26:18,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:26:18,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:26:18,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:26:18,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:26:20,697.697 INFO    ] ================================================
[2026-06-22 13:26:20,712.712 INFO    ] Launching Daemon at Mon Jun 22 13:26:20 IST 2026
[2026-06-22 13:26:20,723.723 INFO    ] ================================================
[2026-06-22 13:26:21,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:26:21
[2026-06-22 13:26:21,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:26:22,290.290 INFO    ] Initializing speech engine...
[2026-06-22 13:26:22,302.302 INFO    ] 2026-06-22 13:26:22
[2026-06-22 13:26:22,615.615 INFO    ] 2026-06-22 13:26:22
[2026-06-22 13:26:22,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:26:22,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:26:22,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:26:23,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:26:23,121.121 INFO    ] time= 22/06/2026 13:26:23
[2026-06-22 13:26:23,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:26:23,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:26:23,271.271 INFO    ] No existing commands found in stream
[2026-06-22 13:26:28,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:26:28,290.290 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-22 13:26:28,793.793 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:26:28,796.796 INFO    ] Checking for system updates...
[2026-06-22 13:26:28,834.834 INFO    ] 200
[2026-06-22 13:26:28,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:26:28,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:26:28,895.895 INFO    ] No update needed
[2026-06-22 13:26:28,897.897 INFO    ] Checking for camera pi updates...
[2026-06-22 13:26:28,931.931 INFO    ] 200
[2026-06-22 13:26:28,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:26:28,979.979 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:26:29,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:26:29,060.060 INFO    ] No camera update needed
[2026-06-22 13:26:29,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:26:29,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:26:29,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:26:29,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:26:31,115.115 INFO    ] ================================================
[2026-06-22 13:26:31,130.130 INFO    ] Launching Daemon at Mon Jun 22 13:26:31 IST 2026
[2026-06-22 13:26:31,141.141 INFO    ] ================================================
[2026-06-22 13:26:31,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:26:31
[2026-06-22 13:26:32,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:26:32,699.699 INFO    ] Initializing speech engine...
[2026-06-22 13:26:32,709.709 INFO    ] 2026-06-22 13:26:32
[2026-06-22 13:26:32,993.993 INFO    ] 2026-06-22 13:26:32
[2026-06-22 13:26:33,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:26:33,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:26:33,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:26:33,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:26:33,542.542 INFO    ] time= 22/06/2026 13:26:33
[2026-06-22 13:26:33,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:26:33,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:26:33,694.694 INFO    ] No existing commands found in stream
[2026-06-22 13:26:38,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:26:38,711.711 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-22 13:26:39,848.848 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:26:39,851.851 INFO    ] Checking for system updates...
[2026-06-22 13:26:39,891.891 INFO    ] 200
[2026-06-22 13:26:39,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:26:39,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:26:39,948.948 INFO    ] No update needed
[2026-06-22 13:26:39,950.950 INFO    ] Checking for camera pi updates...
[2026-06-22 13:26:39,985.985 INFO    ] 200
[2026-06-22 13:26:39,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:26:40,032.032 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:26:40,117.117 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:26:40,119.119 INFO    ] No camera update needed
[2026-06-22 13:26:40,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:26:40,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:26:40,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:26:40,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:26:42,177.177 INFO    ] ================================================
[2026-06-22 13:26:42,192.192 INFO    ] Launching Daemon at Mon Jun 22 13:26:42 IST 2026
[2026-06-22 13:26:42,202.202 INFO    ] ================================================
[2026-06-22 13:26:42,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:26:42
[2026-06-22 13:26:43,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:26:43,806.806 INFO    ] Initializing speech engine...
[2026-06-22 13:26:43,819.819 INFO    ] 2026-06-22 13:26:43
[2026-06-22 13:26:44,096.096 INFO    ] 2026-06-22 13:26:44
[2026-06-22 13:26:44,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:26:44,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:26:44,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:26:44,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:26:44,556.556 INFO    ] time= 22/06/2026 13:26:44
[2026-06-22 13:26:44,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:26:44,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:26:44,696.696 INFO    ] No existing commands found in stream
[2026-06-22 13:26:49,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:26:49,729.729 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-22 13:26:51,228.228 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:26:51,230.230 INFO    ] Checking for system updates...
[2026-06-22 13:26:51,262.262 INFO    ] 200
[2026-06-22 13:26:51,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:26:51,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:26:51,321.321 INFO    ] No update needed
[2026-06-22 13:26:51,323.323 INFO    ] Checking for camera pi updates...
[2026-06-22 13:26:51,360.360 INFO    ] 200
[2026-06-22 13:26:51,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:26:51,403.403 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:26:51,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:26:51,493.493 INFO    ] No camera update needed
[2026-06-22 13:26:51,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:26:51,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:26:51,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:26:51,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:26:53,548.548 INFO    ] ================================================
[2026-06-22 13:26:53,563.563 INFO    ] Launching Daemon at Mon Jun 22 13:26:53 IST 2026
[2026-06-22 13:26:53,574.574 INFO    ] ================================================
[2026-06-22 13:26:54,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:26:54
[2026-06-22 13:26:54,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:26:54,891.891 INFO    ] Initializing speech engine...
[2026-06-22 13:26:54,909.909 INFO    ] 2026-06-22 13:26:54
[2026-06-22 13:26:55,156.156 INFO    ] 2026-06-22 13:26:55
[2026-06-22 13:26:55,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:26:55,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:26:55,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:26:55,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:26:55,626.626 INFO    ] time= 22/06/2026 13:26:55
[2026-06-22 13:26:55,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:26:55,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:26:55,844.844 INFO    ] No existing commands found in stream
[2026-06-22 13:27:00,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:27:00,872.872 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-22 13:27:02,704.704 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:27:02,707.707 INFO    ] Checking for system updates...
[2026-06-22 13:27:02,759.759 INFO    ] 200
[2026-06-22 13:27:02,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:27:02,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:27:02,832.832 INFO    ] No update needed
[2026-06-22 13:27:02,836.836 INFO    ] Checking for camera pi updates...
[2026-06-22 13:27:02,881.881 INFO    ] 200
[2026-06-22 13:27:02,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:27:02,934.934 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:27:03,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:27:03,026.026 INFO    ] No camera update needed
[2026-06-22 13:27:03,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:27:03,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:27:03,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:27:03,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:27:05,097.097 INFO    ] ================================================
[2026-06-22 13:27:05,112.112 INFO    ] Launching Daemon at Mon Jun 22 13:27:05 IST 2026
[2026-06-22 13:27:05,129.129 INFO    ] ================================================
[2026-06-22 13:27:05,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:27:05
[2026-06-22 13:27:06,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:27:06,650.650 INFO    ] Initializing speech engine...
[2026-06-22 13:27:06,666.666 INFO    ] 2026-06-22 13:27:06
[2026-06-22 13:27:06,946.946 INFO    ] 2026-06-22 13:27:06
[2026-06-22 13:27:07,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:27:07,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:27:07,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:27:07,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:27:07,497.497 INFO    ] time= 22/06/2026 13:27:07
[2026-06-22 13:27:07,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:27:07,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:27:07,653.653 INFO    ] No existing commands found in stream
[2026-06-22 13:27:12,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:27:12,670.670 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-22 13:27:15,136.136 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:27:15,138.138 INFO    ] Checking for system updates...
[2026-06-22 13:27:15,167.167 INFO    ] 200
[2026-06-22 13:27:15,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:27:15,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:27:15,227.227 INFO    ] No update needed
[2026-06-22 13:27:15,230.230 INFO    ] Checking for camera pi updates...
[2026-06-22 13:27:15,267.267 INFO    ] 200
[2026-06-22 13:27:15,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:27:15,311.311 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:27:15,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:27:15,393.393 INFO    ] No camera update needed
[2026-06-22 13:27:15,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:27:15,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:27:15,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:27:15,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:27:17,453.453 INFO    ] ================================================
[2026-06-22 13:27:17,468.468 INFO    ] Launching Daemon at Mon Jun 22 13:27:17 IST 2026
[2026-06-22 13:27:17,479.479 INFO    ] ================================================
[2026-06-22 13:27:18,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:27:18
[2026-06-22 13:27:18,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:27:18,901.901 INFO    ] Initializing speech engine...
[2026-06-22 13:27:18,909.909 INFO    ] 2026-06-22 13:27:18
[2026-06-22 13:27:19,161.161 INFO    ] 2026-06-22 13:27:19
[2026-06-22 13:27:19,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:27:19,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:27:19,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:27:19,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:27:19,690.690 INFO    ] time= 22/06/2026 13:27:19
[2026-06-22 13:27:19,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:27:19,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:27:19,863.863 INFO    ] No existing commands found in stream
[2026-06-22 13:27:24,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:27:24,891.891 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-22 13:27:28,760.760 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:27:28,763.763 INFO    ] Checking for system updates...
[2026-06-22 13:27:28,800.800 INFO    ] 200
[2026-06-22 13:27:28,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:27:28,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:27:28,864.864 INFO    ] No update needed
[2026-06-22 13:27:28,867.867 INFO    ] Checking for camera pi updates...
[2026-06-22 13:27:28,901.901 INFO    ] 200
[2026-06-22 13:27:28,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:27:28,948.948 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:27:29,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:27:29,140.140 INFO    ] No camera update needed
[2026-06-22 13:27:29,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:27:29,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:27:29,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:27:29,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:27:31,195.195 INFO    ] ================================================
[2026-06-22 13:27:31,211.211 INFO    ] Launching Daemon at Mon Jun 22 13:27:31 IST 2026
[2026-06-22 13:27:31,222.222 INFO    ] ================================================
[2026-06-22 13:27:31,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:27:31
[2026-06-22 13:27:32,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:27:32,700.700 INFO    ] Initializing speech engine...
[2026-06-22 13:27:32,714.714 INFO    ] 2026-06-22 13:27:32
[2026-06-22 13:27:33,013.013 INFO    ] 2026-06-22 13:27:33
[2026-06-22 13:27:33,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:27:33,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:27:33,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:27:33,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:27:33,507.507 INFO    ] time= 22/06/2026 13:27:33
[2026-06-22 13:27:33,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:27:33,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:27:33,727.727 INFO    ] No existing commands found in stream
[2026-06-22 13:27:38,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:27:38,748.748 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-22 13:27:42,400.400 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:27:42,402.402 INFO    ] Checking for system updates...
[2026-06-22 13:27:42,423.423 INFO    ] 200
[2026-06-22 13:27:42,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:27:42,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:27:42,457.457 INFO    ] No update needed
[2026-06-22 13:27:42,458.458 INFO    ] Checking for camera pi updates...
[2026-06-22 13:27:42,477.477 INFO    ] 200
[2026-06-22 13:27:42,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:27:42,516.516 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:27:42,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:27:42,622.622 INFO    ] No camera update needed
[2026-06-22 13:27:42,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:27:42,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:27:42,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:27:42,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:27:44,678.678 INFO    ] ================================================
[2026-06-22 13:27:44,694.694 INFO    ] Launching Daemon at Mon Jun 22 13:27:44 IST 2026
[2026-06-22 13:27:44,706.706 INFO    ] ================================================
[2026-06-22 13:27:45,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:27:45
[2026-06-22 13:27:45,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:27:46,028.028 INFO    ] Initializing speech engine...
[2026-06-22 13:27:46,034.034 INFO    ] 2026-06-22 13:27:46
[2026-06-22 13:27:46,327.327 INFO    ] 2026-06-22 13:27:46
[2026-06-22 13:27:46,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:27:46,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:27:46,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:27:46,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:27:46,703.703 INFO    ] time= 22/06/2026 13:27:46
[2026-06-22 13:27:46,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:27:46,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:27:46,827.827 INFO    ] No existing commands found in stream
[2026-06-22 13:27:51,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:27:51,842.842 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-22 13:27:55,042.042 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:27:55,045.045 INFO    ] Checking for system updates...
[2026-06-22 13:27:55,086.086 INFO    ] 200
[2026-06-22 13:27:55,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:27:55,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:27:55,145.145 INFO    ] No update needed
[2026-06-22 13:27:55,148.148 INFO    ] Checking for camera pi updates...
[2026-06-22 13:27:55,183.183 INFO    ] 200
[2026-06-22 13:27:55,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:27:55,227.227 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:27:55,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:27:55,339.339 INFO    ] No camera update needed
[2026-06-22 13:27:55,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:27:55,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:27:55,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:27:55,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:27:57,398.398 INFO    ] ================================================
[2026-06-22 13:27:57,413.413 INFO    ] Launching Daemon at Mon Jun 22 13:27:57 IST 2026
[2026-06-22 13:27:57,424.424 INFO    ] ================================================
[2026-06-22 13:27:57,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:27:57
[2026-06-22 13:27:58,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:27:58,734.734 INFO    ] Initializing speech engine...
[2026-06-22 13:27:58,742.742 INFO    ] 2026-06-22 13:27:58
[2026-06-22 13:27:59,017.017 INFO    ] 2026-06-22 13:27:59
[2026-06-22 13:27:59,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:27:59,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:27:59,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:27:59,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:27:59,504.504 INFO    ] time= 22/06/2026 13:27:59
[2026-06-22 13:27:59,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:27:59,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:27:59,742.742 INFO    ] No existing commands found in stream
[2026-06-22 13:28:04,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:28:04,767.767 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-22 13:28:06,492.492 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:28:06,495.495 INFO    ] Checking for system updates...
[2026-06-22 13:28:06,534.534 INFO    ] 200
[2026-06-22 13:28:06,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:28:06,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:28:06,592.592 INFO    ] No update needed
[2026-06-22 13:28:06,594.594 INFO    ] Checking for camera pi updates...
[2026-06-22 13:28:06,631.631 INFO    ] 200
[2026-06-22 13:28:06,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:28:06,678.678 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:28:06,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:28:06,773.773 INFO    ] No camera update needed
[2026-06-22 13:28:06,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:28:06,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:28:06,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:28:06,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:28:08,828.828 INFO    ] ================================================
[2026-06-22 13:28:08,843.843 INFO    ] Launching Daemon at Mon Jun 22 13:28:08 IST 2026
[2026-06-22 13:28:08,855.855 INFO    ] ================================================
[2026-06-22 13:28:09,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:28:09
[2026-06-22 13:28:10,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:28:10,361.361 INFO    ] Initializing speech engine...
[2026-06-22 13:28:10,368.368 INFO    ] 2026-06-22 13:28:10
[2026-06-22 13:28:10,636.636 INFO    ] 2026-06-22 13:28:10
[2026-06-22 13:28:10,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:28:10,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:28:10,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:28:11,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:28:11,095.095 INFO    ] time= 22/06/2026 13:28:11
[2026-06-22 13:28:11,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:28:11,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:28:11,311.311 INFO    ] No existing commands found in stream
[2026-06-22 13:28:16,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:28:16,342.342 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-22 13:28:18,516.516 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:28:18,518.518 INFO    ] Checking for system updates...
[2026-06-22 13:28:18,539.539 INFO    ] 200
[2026-06-22 13:28:18,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:28:18,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:28:18,573.573 INFO    ] No update needed
[2026-06-22 13:28:18,575.575 INFO    ] Checking for camera pi updates...
[2026-06-22 13:28:18,596.596 INFO    ] 200
[2026-06-22 13:28:18,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:28:18,633.633 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:28:18,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:28:18,741.741 INFO    ] No camera update needed
[2026-06-22 13:28:18,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:28:18,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:28:18,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:28:18,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:28:20,798.798 INFO    ] ================================================
[2026-06-22 13:28:20,814.814 INFO    ] Launching Daemon at Mon Jun 22 13:28:20 IST 2026
[2026-06-22 13:28:20,825.825 INFO    ] ================================================
[2026-06-22 13:28:21,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:28:21
[2026-06-22 13:28:21,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:28:22,173.173 INFO    ] Initializing speech engine...
[2026-06-22 13:28:22,180.180 INFO    ] 2026-06-22 13:28:22
[2026-06-22 13:28:22,439.439 INFO    ] 2026-06-22 13:28:22
[2026-06-22 13:28:22,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:28:22,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:28:22,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:28:22,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:28:22,917.917 INFO    ] time= 22/06/2026 13:28:22
[2026-06-22 13:28:22,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:28:22,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:28:23,116.116 INFO    ] No existing commands found in stream
[2026-06-22 13:28:28,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:28:28,146.146 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-22 13:28:30,850.850 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:28:30,851.851 INFO    ] Checking for system updates...
[2026-06-22 13:28:30,874.874 INFO    ] 200
[2026-06-22 13:28:30,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:28:30,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:28:30,908.908 INFO    ] No update needed
[2026-06-22 13:28:30,909.909 INFO    ] Checking for camera pi updates...
[2026-06-22 13:28:30,935.935 INFO    ] 200
[2026-06-22 13:28:30,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:28:30,978.978 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:28:31,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:28:31,059.059 INFO    ] No camera update needed
[2026-06-22 13:28:31,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:28:31,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:28:31,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:28:31,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:28:33,118.118 INFO    ] ================================================
[2026-06-22 13:28:33,133.133 INFO    ] Launching Daemon at Mon Jun 22 13:28:33 IST 2026
[2026-06-22 13:28:33,145.145 INFO    ] ================================================
[2026-06-22 13:28:33,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:28:33
[2026-06-22 13:28:34,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:28:34,685.685 INFO    ] Initializing speech engine...
[2026-06-22 13:28:34,693.693 INFO    ] 2026-06-22 13:28:34
[2026-06-22 13:28:34,982.982 INFO    ] 2026-06-22 13:28:34
[2026-06-22 13:28:35,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:28:35,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:28:35,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:28:35,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:28:35,485.485 INFO    ] time= 22/06/2026 13:28:35
[2026-06-22 13:28:35,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:28:35,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:28:35,673.673 INFO    ] No existing commands found in stream
[2026-06-22 13:28:40,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:28:40,693.693 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-22 13:28:41,223.223 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:28:41,226.226 INFO    ] Checking for system updates...
[2026-06-22 13:28:41,264.264 INFO    ] 200
[2026-06-22 13:28:41,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:28:41,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:28:41,331.331 INFO    ] No update needed
[2026-06-22 13:28:41,333.333 INFO    ] Checking for camera pi updates...
[2026-06-22 13:28:41,370.370 INFO    ] 200
[2026-06-22 13:28:41,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:28:41,419.419 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:28:41,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:28:41,514.514 INFO    ] No camera update needed
[2026-06-22 13:28:41,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:28:41,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:28:41,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:28:41,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:28:43,577.577 INFO    ] ================================================
[2026-06-22 13:28:43,593.593 INFO    ] Launching Daemon at Mon Jun 22 13:28:43 IST 2026
[2026-06-22 13:28:43,604.604 INFO    ] ================================================
[2026-06-22 13:28:44,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:28:44
[2026-06-22 13:28:44,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:28:44,961.961 INFO    ] Initializing speech engine...
[2026-06-22 13:28:44,968.968 INFO    ] 2026-06-22 13:28:44
[2026-06-22 13:28:45,225.225 INFO    ] 2026-06-22 13:28:45
[2026-06-22 13:28:45,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:28:45,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:28:45,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:28:45,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:28:45,687.687 INFO    ] time= 22/06/2026 13:28:45
[2026-06-22 13:28:45,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:28:45,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:28:45,897.897 INFO    ] No existing commands found in stream
[2026-06-22 13:28:50,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:28:50,931.931 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-22 13:28:54,671.671 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:28:54,674.674 INFO    ] Checking for system updates...
[2026-06-22 13:28:54,712.712 INFO    ] 200
[2026-06-22 13:28:54,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:28:54,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:28:54,773.773 INFO    ] No update needed
[2026-06-22 13:28:54,775.775 INFO    ] Checking for camera pi updates...
[2026-06-22 13:28:54,811.811 INFO    ] 200
[2026-06-22 13:28:54,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:28:54,860.860 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:28:54,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:28:54,954.954 INFO    ] No camera update needed
[2026-06-22 13:28:54,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:28:54,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:28:54,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:28:54,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:28:57,012.012 INFO    ] ================================================
[2026-06-22 13:28:57,028.028 INFO    ] Launching Daemon at Mon Jun 22 13:28:57 IST 2026
[2026-06-22 13:28:57,038.038 INFO    ] ================================================
[2026-06-22 13:28:57,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:28:57
[2026-06-22 13:28:58,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:28:58,474.474 INFO    ] Initializing speech engine...
[2026-06-22 13:28:58,482.482 INFO    ] 2026-06-22 13:28:58
[2026-06-22 13:28:58,753.753 INFO    ] 2026-06-22 13:28:58
[2026-06-22 13:28:58,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:28:59,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:28:59,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:28:59,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:28:59,217.217 INFO    ] time= 22/06/2026 13:28:59
[2026-06-22 13:28:59,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:28:59,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:28:59,398.398 INFO    ] No existing commands found in stream
[2026-06-22 13:29:04,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:29:04,438.438 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-22 13:29:07,043.043 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:29:07,046.046 INFO    ] Checking for system updates...
[2026-06-22 13:29:07,082.082 INFO    ] 200
[2026-06-22 13:29:07,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:29:07,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:29:07,139.139 INFO    ] No update needed
[2026-06-22 13:29:07,141.141 INFO    ] Checking for camera pi updates...
[2026-06-22 13:29:07,176.176 INFO    ] 200
[2026-06-22 13:29:07,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:29:07,218.218 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:29:07,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:29:07,292.292 INFO    ] No camera update needed
[2026-06-22 13:29:07,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:29:07,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:29:07,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:29:07,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:29:09,348.348 INFO    ] ================================================
[2026-06-22 13:29:09,364.364 INFO    ] Launching Daemon at Mon Jun 22 13:29:09 IST 2026
[2026-06-22 13:29:09,376.376 INFO    ] ================================================
[2026-06-22 13:29:09,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:29:09
[2026-06-22 13:29:10,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:29:10,725.725 INFO    ] Initializing speech engine...
[2026-06-22 13:29:10,734.734 INFO    ] 2026-06-22 13:29:10
[2026-06-22 13:29:10,986.986 INFO    ] 2026-06-22 13:29:10
[2026-06-22 13:29:11,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:29:11,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:29:11,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:29:11,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:29:11,513.513 INFO    ] time= 22/06/2026 13:29:11
[2026-06-22 13:29:11,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:29:11,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:29:11,695.695 INFO    ] No existing commands found in stream
[2026-06-22 13:29:16,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:29:16,719.719 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-22 13:29:19,383.383 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:29:19,385.385 INFO    ] Checking for system updates...
[2026-06-22 13:29:19,421.421 INFO    ] 200
[2026-06-22 13:29:19,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:29:19,483.483 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:29:19,486.486 INFO    ] No update needed
[2026-06-22 13:29:19,488.488 INFO    ] Checking for camera pi updates...
[2026-06-22 13:29:19,522.522 INFO    ] 200
[2026-06-22 13:29:19,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:29:19,573.573 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:29:19,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:29:19,656.656 INFO    ] No camera update needed
[2026-06-22 13:29:19,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:29:19,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:29:19,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:29:19,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:29:21,715.715 INFO    ] ================================================
[2026-06-22 13:29:21,730.730 INFO    ] Launching Daemon at Mon Jun 22 13:29:21 IST 2026
[2026-06-22 13:29:21,741.741 INFO    ] ================================================
[2026-06-22 13:29:22,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:29:22
[2026-06-22 13:29:22,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:29:23,087.087 INFO    ] Initializing speech engine...
[2026-06-22 13:29:23,095.095 INFO    ] 2026-06-22 13:29:23
[2026-06-22 13:29:23,386.386 INFO    ] 2026-06-22 13:29:23
[2026-06-22 13:29:23,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:29:23,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:29:23,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:29:23,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:29:23,795.795 INFO    ] time= 22/06/2026 13:29:23
[2026-06-22 13:29:23,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:29:23,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:29:23,881.881 INFO    ] No existing commands found in stream
[2026-06-22 13:29:28,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:29:28,894.894 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-22 13:29:31,094.094 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:29:31,097.097 INFO    ] Checking for system updates...
[2026-06-22 13:29:31,137.137 INFO    ] 200
[2026-06-22 13:29:31,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:29:31,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:29:31,203.203 INFO    ] No update needed
[2026-06-22 13:29:31,206.206 INFO    ] Checking for camera pi updates...
[2026-06-22 13:29:31,244.244 INFO    ] 200
[2026-06-22 13:29:31,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:29:31,291.291 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:29:31,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:29:31,401.401 INFO    ] No camera update needed
[2026-06-22 13:29:31,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:29:31,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:29:31,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:29:31,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:29:33,460.460 INFO    ] ================================================
[2026-06-22 13:29:33,475.475 INFO    ] Launching Daemon at Mon Jun 22 13:29:33 IST 2026
[2026-06-22 13:29:33,486.486 INFO    ] ================================================
[2026-06-22 13:29:34,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:29:34
[2026-06-22 13:29:34,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:29:34,971.971 INFO    ] Initializing speech engine...
[2026-06-22 13:29:34,983.983 INFO    ] 2026-06-22 13:29:34
[2026-06-22 13:29:35,261.261 INFO    ] 2026-06-22 13:29:35
[2026-06-22 13:29:35,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:29:35,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:29:35,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:29:35,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:29:35,794.794 INFO    ] time= 22/06/2026 13:29:35
[2026-06-22 13:29:35,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:29:35,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:29:35,956.956 INFO    ] No existing commands found in stream
[2026-06-22 13:29:40,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:29:40,988.988 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-22 13:29:42,064.064 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:29:42,067.067 INFO    ] Checking for system updates...
[2026-06-22 13:29:42,103.103 INFO    ] 200
[2026-06-22 13:29:42,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:29:42,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:29:42,162.162 INFO    ] No update needed
[2026-06-22 13:29:42,165.165 INFO    ] Checking for camera pi updates...
[2026-06-22 13:29:42,198.198 INFO    ] 200
[2026-06-22 13:29:42,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:29:42,245.245 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:29:42,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:29:42,314.314 INFO    ] No camera update needed
[2026-06-22 13:29:42,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:29:42,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:29:42,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:29:42,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:29:44,370.370 INFO    ] ================================================
[2026-06-22 13:29:44,385.385 INFO    ] Launching Daemon at Mon Jun 22 13:29:44 IST 2026
[2026-06-22 13:29:44,397.397 INFO    ] ================================================
[2026-06-22 13:29:44,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:29:44
[2026-06-22 13:29:45,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:29:45,758.758 INFO    ] Initializing speech engine...
[2026-06-22 13:29:45,764.764 INFO    ] 2026-06-22 13:29:45
[2026-06-22 13:29:46,012.012 INFO    ] 2026-06-22 13:29:46
[2026-06-22 13:29:46,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:29:46,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:29:46,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:29:46,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:29:46,570.570 INFO    ] time= 22/06/2026 13:29:46
[2026-06-22 13:29:46,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:29:46,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:29:46,752.752 INFO    ] No existing commands found in stream
[2026-06-22 13:29:51,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:29:51,780.780 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-22 13:29:54,887.887 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:29:54,890.890 INFO    ] Checking for system updates...
[2026-06-22 13:29:54,927.927 INFO    ] 200
[2026-06-22 13:29:54,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:29:54,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:29:54,987.987 INFO    ] No update needed
[2026-06-22 13:29:54,989.989 INFO    ] Checking for camera pi updates...
[2026-06-22 13:29:55,023.023 INFO    ] 200
[2026-06-22 13:29:55,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:29:55,068.068 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:29:55,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:29:55,165.165 INFO    ] No camera update needed
[2026-06-22 13:29:55,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:29:55,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:29:55,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:29:55,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:29:57,224.224 INFO    ] ================================================
[2026-06-22 13:29:57,240.240 INFO    ] Launching Daemon at Mon Jun 22 13:29:57 IST 2026
[2026-06-22 13:29:57,251.251 INFO    ] ================================================
[2026-06-22 13:29:57,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:29:57
[2026-06-22 13:29:58,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:29:58,569.569 INFO    ] Initializing speech engine...
[2026-06-22 13:29:58,584.584 INFO    ] 2026-06-22 13:29:58
[2026-06-22 13:29:58,866.866 INFO    ] 2026-06-22 13:29:58
[2026-06-22 13:29:58,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:29:59,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:29:59,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:29:59,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:29:59,280.280 INFO    ] time= 22/06/2026 13:29:59
[2026-06-22 13:29:59,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:29:59,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:29:59,365.365 INFO    ] No existing commands found in stream
[2026-06-22 13:30:04,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:30:04,393.393 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-22 13:30:08,518.518 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:30:08,521.521 INFO    ] Checking for system updates...
[2026-06-22 13:30:08,557.557 INFO    ] 200
[2026-06-22 13:30:08,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:30:08,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:30:08,615.615 INFO    ] No update needed
[2026-06-22 13:30:08,618.618 INFO    ] Checking for camera pi updates...
[2026-06-22 13:30:08,652.652 INFO    ] 200
[2026-06-22 13:30:08,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:30:08,696.696 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:30:08,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:30:08,781.781 INFO    ] No camera update needed
[2026-06-22 13:30:08,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:30:08,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:30:08,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:30:08,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:30:10,837.837 INFO    ] ================================================
[2026-06-22 13:30:10,853.853 INFO    ] Launching Daemon at Mon Jun 22 13:30:10 IST 2026
[2026-06-22 13:30:10,865.865 INFO    ] ================================================
[2026-06-22 13:30:11,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:30:11
[2026-06-22 13:30:12,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:30:12,352.352 INFO    ] Initializing speech engine...
[2026-06-22 13:30:12,361.361 INFO    ] 2026-06-22 13:30:12
[2026-06-22 13:30:12,646.646 INFO    ] 2026-06-22 13:30:12
[2026-06-22 13:30:12,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:30:12,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:30:12,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:30:13,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:30:13,196.196 INFO    ] time= 22/06/2026 13:30:13
[2026-06-22 13:30:13,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:30:13,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:30:13,352.352 INFO    ] No existing commands found in stream
[2026-06-22 13:30:18,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:30:18,370.370 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-22 13:30:22,476.476 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:30:22,479.479 INFO    ] Checking for system updates...
[2026-06-22 13:30:22,517.517 INFO    ] 200
[2026-06-22 13:30:22,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:30:22,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:30:22,578.578 INFO    ] No update needed
[2026-06-22 13:30:22,580.580 INFO    ] Checking for camera pi updates...
[2026-06-22 13:30:22,614.614 INFO    ] 200
[2026-06-22 13:30:22,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:30:22,657.657 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:30:22,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:30:22,765.765 INFO    ] No camera update needed
[2026-06-22 13:30:22,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:30:22,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:30:22,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:30:22,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:30:24,821.821 INFO    ] ================================================
[2026-06-22 13:30:24,837.837 INFO    ] Launching Daemon at Mon Jun 22 13:30:24 IST 2026
[2026-06-22 13:30:24,848.848 INFO    ] ================================================
[2026-06-22 13:30:25,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:30:25
[2026-06-22 13:30:26,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:30:26,312.312 INFO    ] Initializing speech engine...
[2026-06-22 13:30:26,321.321 INFO    ] 2026-06-22 13:30:26
[2026-06-22 13:30:26,581.581 INFO    ] 2026-06-22 13:30:26
[2026-06-22 13:30:26,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:30:26,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:30:26,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:30:27,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:30:27,071.071 INFO    ] time= 22/06/2026 13:30:27
[2026-06-22 13:30:27,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:30:27,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:30:27,272.272 INFO    ] No existing commands found in stream
[2026-06-22 13:30:32,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:30:32,296.296 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-22 13:30:33,979.979 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:30:33,982.982 INFO    ] Checking for system updates...
[2026-06-22 13:30:34,021.021 INFO    ] 200
[2026-06-22 13:30:34,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:30:34,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:30:34,086.086 INFO    ] No update needed
[2026-06-22 13:30:34,088.088 INFO    ] Checking for camera pi updates...
[2026-06-22 13:30:34,127.127 INFO    ] 200
[2026-06-22 13:30:34,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:30:34,169.169 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:30:34,255.255 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:30:34,257.257 INFO    ] No camera update needed
[2026-06-22 13:30:34,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:30:34,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:30:34,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:30:34,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:30:36,312.312 INFO    ] ================================================
[2026-06-22 13:30:36,328.328 INFO    ] Launching Daemon at Mon Jun 22 13:30:36 IST 2026
[2026-06-22 13:30:36,341.341 INFO    ] ================================================
[2026-06-22 13:30:36,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:30:36
[2026-06-22 13:30:37,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:30:37,713.713 INFO    ] Initializing speech engine...
[2026-06-22 13:30:37,721.721 INFO    ] 2026-06-22 13:30:37
[2026-06-22 13:30:38,019.019 INFO    ] 2026-06-22 13:30:37
[2026-06-22 13:30:38,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:30:38,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:30:38,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:30:38,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:30:38,406.406 INFO    ] time= 22/06/2026 13:30:38
[2026-06-22 13:30:38,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:30:38,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:30:38,533.533 INFO    ] No existing commands found in stream
[2026-06-22 13:30:43,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:30:43,549.549 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-22 13:30:46,304.304 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:30:46,307.307 INFO    ] Checking for system updates...
[2026-06-22 13:30:46,356.356 INFO    ] 200
[2026-06-22 13:30:46,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:30:46,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:30:46,413.413 INFO    ] No update needed
[2026-06-22 13:30:46,415.415 INFO    ] Checking for camera pi updates...
[2026-06-22 13:30:46,450.450 INFO    ] 200
[2026-06-22 13:30:46,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:30:46,493.493 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:30:46,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:30:46,582.582 INFO    ] No camera update needed
[2026-06-22 13:30:46,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:30:46,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:30:46,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:30:46,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:30:48,638.638 INFO    ] ================================================
[2026-06-22 13:30:48,653.653 INFO    ] Launching Daemon at Mon Jun 22 13:30:48 IST 2026
[2026-06-22 13:30:48,664.664 INFO    ] ================================================
[2026-06-22 13:30:49,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:30:49
[2026-06-22 13:30:49,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:30:50,215.215 INFO    ] Initializing speech engine...
[2026-06-22 13:30:50,226.226 INFO    ] 2026-06-22 13:30:50
[2026-06-22 13:30:50,491.491 INFO    ] 2026-06-22 13:30:50
[2026-06-22 13:30:50,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:30:50,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:30:50,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:30:50,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:30:51,028.028 INFO    ] time= 22/06/2026 13:30:50
[2026-06-22 13:30:51,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:30:51,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:30:51,174.174 INFO    ] No existing commands found in stream
[2026-06-22 13:30:56,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:30:56,199.199 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-22 13:30:57,234.234 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:30:57,237.237 INFO    ] Checking for system updates...
[2026-06-22 13:30:57,274.274 INFO    ] 200
[2026-06-22 13:30:57,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:30:57,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:30:57,333.333 INFO    ] No update needed
[2026-06-22 13:30:57,335.335 INFO    ] Checking for camera pi updates...
[2026-06-22 13:30:57,370.370 INFO    ] 200
[2026-06-22 13:30:57,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:30:57,413.413 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:30:57,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:30:57,491.491 INFO    ] No camera update needed
[2026-06-22 13:30:57,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:30:57,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:30:57,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:30:57,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:30:59,547.547 INFO    ] ================================================
[2026-06-22 13:30:59,562.562 INFO    ] Launching Daemon at Mon Jun 22 13:30:59 IST 2026
[2026-06-22 13:30:59,573.573 INFO    ] ================================================
[2026-06-22 13:31:00,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:31:00
[2026-06-22 13:31:00,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:31:01,033.033 INFO    ] Initializing speech engine...
[2026-06-22 13:31:01,047.047 INFO    ] 2026-06-22 13:31:01
[2026-06-22 13:31:01,488.488 INFO    ] 2026-06-22 13:31:01
[2026-06-22 13:31:01,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:31:01,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:31:01,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:31:01,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:31:01,892.892 INFO    ] time= 22/06/2026 13:31:01
[2026-06-22 13:31:01,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:31:01,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:31:02,080.080 INFO    ] No existing commands found in stream
[2026-06-22 13:31:07,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:31:07,121.121 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-22 13:31:09,147.147 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:31:09,150.150 INFO    ] Checking for system updates...
[2026-06-22 13:31:09,193.193 INFO    ] 200
[2026-06-22 13:31:09,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:31:09,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:31:09,267.267 INFO    ] No update needed
[2026-06-22 13:31:09,270.270 INFO    ] Checking for camera pi updates...
[2026-06-22 13:31:09,310.310 INFO    ] 200
[2026-06-22 13:31:09,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:31:09,357.357 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:31:09,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:31:09,452.452 INFO    ] No camera update needed
[2026-06-22 13:31:09,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:31:09,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:31:09,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:31:09,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:31:11,513.513 INFO    ] ================================================
[2026-06-22 13:31:11,528.528 INFO    ] Launching Daemon at Mon Jun 22 13:31:11 IST 2026
[2026-06-22 13:31:11,540.540 INFO    ] ================================================
[2026-06-22 13:31:12,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:31:12
[2026-06-22 13:31:12,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:31:13,026.026 INFO    ] Initializing speech engine...
[2026-06-22 13:31:13,033.033 INFO    ] 2026-06-22 13:31:13
[2026-06-22 13:31:13,294.294 INFO    ] 2026-06-22 13:31:13
[2026-06-22 13:31:13,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:31:13,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:31:13,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:31:13,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:31:13,758.758 INFO    ] time= 22/06/2026 13:31:13
[2026-06-22 13:31:13,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:31:13,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:31:13,934.934 INFO    ] No existing commands found in stream
[2026-06-22 13:31:18,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:31:18,945.945 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-22 13:31:20,072.072 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:31:20,075.075 INFO    ] Checking for system updates...
[2026-06-22 13:31:20,111.111 INFO    ] 200
[2026-06-22 13:31:20,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:31:20,169.169 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:31:20,171.171 INFO    ] No update needed
[2026-06-22 13:31:20,174.174 INFO    ] Checking for camera pi updates...
[2026-06-22 13:31:20,207.207 INFO    ] 200
[2026-06-22 13:31:20,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:31:20,251.251 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:31:20,345.345 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:31:20,348.348 INFO    ] No camera update needed
[2026-06-22 13:31:20,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:31:20,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:31:20,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:31:20,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:31:22,404.404 INFO    ] ================================================
[2026-06-22 13:31:22,420.420 INFO    ] Launching Daemon at Mon Jun 22 13:31:22 IST 2026
[2026-06-22 13:31:22,431.431 INFO    ] ================================================
[2026-06-22 13:31:23,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:31:23
[2026-06-22 13:31:23,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:31:23,799.799 INFO    ] Initializing speech engine...
[2026-06-22 13:31:23,808.808 INFO    ] 2026-06-22 13:31:23
[2026-06-22 13:31:24,057.057 INFO    ] 2026-06-22 13:31:24
[2026-06-22 13:31:24,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:31:24,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:31:24,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:31:24,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:31:24,567.567 INFO    ] time= 22/06/2026 13:31:24
[2026-06-22 13:31:24,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:31:24,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:31:24,767.767 INFO    ] No existing commands found in stream
[2026-06-22 13:31:29,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:31:29,792.792 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-22 13:31:33,815.815 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:31:33,818.818 INFO    ] Checking for system updates...
[2026-06-22 13:31:33,854.854 INFO    ] 200
[2026-06-22 13:31:33,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:31:33,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:31:33,911.911 INFO    ] No update needed
[2026-06-22 13:31:33,914.914 INFO    ] Checking for camera pi updates...
[2026-06-22 13:31:33,951.951 INFO    ] 200
[2026-06-22 13:31:33,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:31:33,995.995 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:31:34,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:31:34,179.179 INFO    ] No camera update needed
[2026-06-22 13:31:34,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:31:34,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:31:34,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:31:34,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:31:36,238.238 INFO    ] ================================================
[2026-06-22 13:31:36,253.253 INFO    ] Launching Daemon at Mon Jun 22 13:31:36 IST 2026
[2026-06-22 13:31:36,264.264 INFO    ] ================================================
[2026-06-22 13:31:36,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:31:36
[2026-06-22 13:31:37,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:31:37,672.672 INFO    ] Initializing speech engine...
[2026-06-22 13:31:37,681.681 INFO    ] 2026-06-22 13:31:37
[2026-06-22 13:31:37,949.949 INFO    ] 2026-06-22 13:31:37
[2026-06-22 13:31:38,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:31:38,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:31:38,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:31:38,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:31:38,664.664 INFO    ] time= 22/06/2026 13:31:38
[2026-06-22 13:31:38,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:31:38,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:31:38,907.907 INFO    ] No existing commands found in stream
[2026-06-22 13:31:43,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:31:43,928.928 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-22 13:31:45,069.069 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:31:45,071.071 INFO    ] Checking for system updates...
[2026-06-22 13:31:45,092.092 INFO    ] 200
[2026-06-22 13:31:45,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:31:45,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:31:45,127.127 INFO    ] No update needed
[2026-06-22 13:31:45,129.129 INFO    ] Checking for camera pi updates...
[2026-06-22 13:31:45,151.151 INFO    ] 200
[2026-06-22 13:31:45,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:31:45,189.189 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:31:45,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:31:45,302.302 INFO    ] No camera update needed
[2026-06-22 13:31:45,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:31:45,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:31:45,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:31:45,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:31:47,358.358 INFO    ] ================================================
[2026-06-22 13:31:47,373.373 INFO    ] Launching Daemon at Mon Jun 22 13:31:47 IST 2026
[2026-06-22 13:31:47,383.383 INFO    ] ================================================
[2026-06-22 13:31:48,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:31:48
[2026-06-22 13:31:48,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:31:48,944.944 INFO    ] Initializing speech engine...
[2026-06-22 13:31:48,958.958 INFO    ] 2026-06-22 13:31:48
[2026-06-22 13:31:49,217.217 INFO    ] 2026-06-22 13:31:49
[2026-06-22 13:31:49,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:31:49,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:31:49,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:31:49,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:31:49,769.769 INFO    ] time= 22/06/2026 13:31:49
[2026-06-22 13:31:49,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:31:49,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:31:49,925.925 INFO    ] No existing commands found in stream
[2026-06-22 13:31:54,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:31:54,951.951 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-22 13:31:58,162.162 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:31:58,165.165 INFO    ] Checking for system updates...
[2026-06-22 13:31:58,209.209 INFO    ] 200
[2026-06-22 13:31:58,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:31:58,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:31:58,279.279 INFO    ] No update needed
[2026-06-22 13:31:58,282.282 INFO    ] Checking for camera pi updates...
[2026-06-22 13:31:58,320.320 INFO    ] 200
[2026-06-22 13:31:58,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:31:58,372.372 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:31:58,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:31:58,458.458 INFO    ] No camera update needed
[2026-06-22 13:31:58,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:31:58,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:31:58,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:31:58,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:32:00,518.518 INFO    ] ================================================
[2026-06-22 13:32:00,533.533 INFO    ] Launching Daemon at Mon Jun 22 13:32:00 IST 2026
[2026-06-22 13:32:00,544.544 INFO    ] ================================================
[2026-06-22 13:32:01,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:32:01
[2026-06-22 13:32:02,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:32:02,380.380 INFO    ] Initializing speech engine...
[2026-06-22 13:32:02,391.391 INFO    ] 2026-06-22 13:32:02
[2026-06-22 13:32:02,783.783 INFO    ] 2026-06-22 13:32:02
[2026-06-22 13:32:02,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:32:03,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:32:03,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:32:03,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:32:03,201.201 INFO    ] time= 22/06/2026 13:32:03
[2026-06-22 13:32:03,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:32:03,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:32:03,425.425 INFO    ] No existing commands found in stream
[2026-06-22 13:32:08,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:32:08,457.457 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-22 13:32:09,715.715 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:32:09,718.718 INFO    ] Checking for system updates...
[2026-06-22 13:32:09,754.754 INFO    ] 200
[2026-06-22 13:32:09,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:32:09,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:32:09,818.818 INFO    ] No update needed
[2026-06-22 13:32:09,820.820 INFO    ] Checking for camera pi updates...
[2026-06-22 13:32:09,857.857 INFO    ] 200
[2026-06-22 13:32:09,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:32:09,902.902 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:32:10,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:32:10,010.010 INFO    ] No camera update needed
[2026-06-22 13:32:10,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:32:10,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:32:10,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:32:10,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:32:12,068.068 INFO    ] ================================================
[2026-06-22 13:32:12,083.083 INFO    ] Launching Daemon at Mon Jun 22 13:32:12 IST 2026
[2026-06-22 13:32:12,095.095 INFO    ] ================================================
[2026-06-22 13:32:12,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:32:12
[2026-06-22 13:32:13,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:32:13,535.535 INFO    ] Initializing speech engine...
[2026-06-22 13:32:13,544.544 INFO    ] 2026-06-22 13:32:13
[2026-06-22 13:32:13,791.791 INFO    ] 2026-06-22 13:32:13
[2026-06-22 13:32:13,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:32:14,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:32:14,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:32:14,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:32:14,256.256 INFO    ] time= 22/06/2026 13:32:14
[2026-06-22 13:32:14,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:32:14,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:32:14,485.485 INFO    ] No existing commands found in stream
[2026-06-22 13:32:19,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:32:19,512.512 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-22 13:32:20,688.688 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:32:20,690.690 INFO    ] Checking for system updates...
[2026-06-22 13:32:20,711.711 INFO    ] 200
[2026-06-22 13:32:20,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:32:20,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:32:20,744.744 INFO    ] No update needed
[2026-06-22 13:32:20,746.746 INFO    ] Checking for camera pi updates...
[2026-06-22 13:32:20,765.765 INFO    ] 200
[2026-06-22 13:32:20,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:32:20,801.801 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:32:20,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:32:20,884.884 INFO    ] No camera update needed
[2026-06-22 13:32:20,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:32:20,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:32:20,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:32:20,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:32:22,940.940 INFO    ] ================================================
[2026-06-22 13:32:22,956.956 INFO    ] Launching Daemon at Mon Jun 22 13:32:22 IST 2026
[2026-06-22 13:32:22,967.967 INFO    ] ================================================
[2026-06-22 13:32:23,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:32:23
[2026-06-22 13:32:24,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:32:24,429.429 INFO    ] Initializing speech engine...
[2026-06-22 13:32:24,436.436 INFO    ] 2026-06-22 13:32:24
[2026-06-22 13:32:24,732.732 INFO    ] 2026-06-22 13:32:24
[2026-06-22 13:32:24,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:32:24,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:32:24,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:32:25,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:32:25,150.150 INFO    ] time= 22/06/2026 13:32:25
[2026-06-22 13:32:25,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:32:25,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:32:25,304.304 INFO    ] No existing commands found in stream
[2026-06-22 13:32:30,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:32:30,333.333 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-22 13:32:31,811.811 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:32:31,815.815 INFO    ] Checking for system updates...
[2026-06-22 13:32:31,881.881 INFO    ] 200
[2026-06-22 13:32:31,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 13:32:31,888.888 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-22 13:32:31,890.890 INFO    ] Checking for camera pi updates...
[2026-06-22 13:32:31,929.929 INFO    ] 200
[2026-06-22 13:32:31,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 13:32:31,935.935 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-22 13:32:31,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:32:31,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:32:31,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:32:31,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:32:34,995.995 INFO    ] ================================================
[2026-06-22 13:32:34,011.011 INFO    ] Launching Daemon at Mon Jun 22 13:32:34 IST 2026
[2026-06-22 13:32:34,022.022 INFO    ] ================================================
[2026-06-22 13:32:34,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:32:34
[2026-06-22 13:32:35,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:32:35,504.504 INFO    ] Initializing speech engine...
[2026-06-22 13:32:35,513.513 INFO    ] 2026-06-22 13:32:35
[2026-06-22 13:32:35,772.772 INFO    ] 2026-06-22 13:32:35
[2026-06-22 13:32:35,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:32:36,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:32:36,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:32:36,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:32:36,300.300 INFO    ] time= 22/06/2026 13:32:36
[2026-06-22 13:32:36,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:32:36,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:32:36,458.458 INFO    ] No existing commands found in stream
[2026-06-22 13:32:41,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:32:41,486.486 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-22 13:32:42,433.433 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:32:42,436.436 INFO    ] Checking for system updates...
[2026-06-22 13:32:42,475.475 INFO    ] 200
[2026-06-22 13:32:42,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:32:42,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:32:42,538.538 INFO    ] No update needed
[2026-06-22 13:32:42,540.540 INFO    ] Checking for camera pi updates...
[2026-06-22 13:32:42,574.574 INFO    ] 200
[2026-06-22 13:32:42,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:32:42,617.617 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:32:42,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:32:42,701.701 INFO    ] No camera update needed
[2026-06-22 13:32:42,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:32:42,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:32:42,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:32:42,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:32:44,761.761 INFO    ] ================================================
[2026-06-22 13:32:44,776.776 INFO    ] Launching Daemon at Mon Jun 22 13:32:44 IST 2026
[2026-06-22 13:32:44,788.788 INFO    ] ================================================
[2026-06-22 13:32:45,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:32:45
[2026-06-22 13:32:45,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:32:46,114.114 INFO    ] Initializing speech engine...
[2026-06-22 13:32:46,134.134 INFO    ] 2026-06-22 13:32:46
[2026-06-22 13:32:46,384.384 INFO    ] 2026-06-22 13:32:46
[2026-06-22 13:32:46,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:32:46,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:32:46,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:32:46,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:32:46,884.884 INFO    ] time= 22/06/2026 13:32:46
[2026-06-22 13:32:46,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:32:46,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:32:47,098.098 INFO    ] No existing commands found in stream
[2026-06-22 13:32:52,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:32:52,117.117 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-22 13:32:54,671.671 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:32:54,673.673 INFO    ] Checking for system updates...
[2026-06-22 13:32:54,705.705 INFO    ] 200
[2026-06-22 13:32:54,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:32:54,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:32:54,766.766 INFO    ] No update needed
[2026-06-22 13:32:54,769.769 INFO    ] Checking for camera pi updates...
[2026-06-22 13:32:54,804.804 INFO    ] 200
[2026-06-22 13:32:54,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:32:54,851.851 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:32:54,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:32:54,958.958 INFO    ] No camera update needed
[2026-06-22 13:32:54,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:32:54,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:32:54,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:32:54,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:32:57,015.015 INFO    ] ================================================
[2026-06-22 13:32:57,030.030 INFO    ] Launching Daemon at Mon Jun 22 13:32:57 IST 2026
[2026-06-22 13:32:57,042.042 INFO    ] ================================================
[2026-06-22 13:32:57,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:32:57
[2026-06-22 13:32:58,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:32:58,548.548 INFO    ] Initializing speech engine...
[2026-06-22 13:32:58,561.561 INFO    ] 2026-06-22 13:32:58
[2026-06-22 13:32:58,849.849 INFO    ] 2026-06-22 13:32:58
[2026-06-22 13:32:58,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:32:59,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:32:59,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:32:59,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:32:59,391.391 INFO    ] time= 22/06/2026 13:32:59
[2026-06-22 13:32:59,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:32:59,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:32:59,534.534 INFO    ] No existing commands found in stream
[2026-06-22 13:33:04,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:33:04,563.563 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-22 13:33:06,115.115 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:33:06,117.117 INFO    ] Checking for system updates...
[2026-06-22 13:33:06,138.138 INFO    ] 200
[2026-06-22 13:33:06,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:33:06,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:33:06,172.172 INFO    ] No update needed
[2026-06-22 13:33:06,173.173 INFO    ] Checking for camera pi updates...
[2026-06-22 13:33:06,214.214 INFO    ] 200
[2026-06-22 13:33:06,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:33:06,281.281 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:33:06,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:33:06,366.366 INFO    ] No camera update needed
[2026-06-22 13:33:06,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:33:06,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:33:06,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:33:06,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:33:08,424.424 INFO    ] ================================================
[2026-06-22 13:33:08,440.440 INFO    ] Launching Daemon at Mon Jun 22 13:33:08 IST 2026
[2026-06-22 13:33:08,451.451 INFO    ] ================================================
[2026-06-22 13:33:09,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:33:09
[2026-06-22 13:33:09,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:33:10,081.081 INFO    ] Initializing speech engine...
[2026-06-22 13:33:10,089.089 INFO    ] 2026-06-22 13:33:10
[2026-06-22 13:33:10,391.391 INFO    ] 2026-06-22 13:33:10
[2026-06-22 13:33:10,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:33:10,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:33:10,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:33:10,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:33:10,968.968 INFO    ] time= 22/06/2026 13:33:10
[2026-06-22 13:33:11,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:33:11,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:33:11,211.211 INFO    ] No existing commands found in stream
[2026-06-22 13:33:16,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:33:16,238.238 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-22 13:33:19,258.258 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:33:19,261.261 INFO    ] Checking for system updates...
[2026-06-22 13:33:19,302.302 INFO    ] 200
[2026-06-22 13:33:19,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:33:19,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:33:19,360.360 INFO    ] No update needed
[2026-06-22 13:33:19,363.363 INFO    ] Checking for camera pi updates...
[2026-06-22 13:33:19,397.397 INFO    ] 200
[2026-06-22 13:33:19,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:33:19,446.446 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:33:19,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:33:19,533.533 INFO    ] No camera update needed
[2026-06-22 13:33:19,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:33:19,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:33:19,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:33:19,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:33:21,592.592 INFO    ] ================================================
[2026-06-22 13:33:21,608.608 INFO    ] Launching Daemon at Mon Jun 22 13:33:21 IST 2026
[2026-06-22 13:33:21,619.619 INFO    ] ================================================
[2026-06-22 13:33:22,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:33:22
[2026-06-22 13:33:22,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:33:22,961.961 INFO    ] Initializing speech engine...
[2026-06-22 13:33:22,971.971 INFO    ] 2026-06-22 13:33:22
[2026-06-22 13:33:23,218.218 INFO    ] 2026-06-22 13:33:23
[2026-06-22 13:33:23,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:33:23,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:33:23,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:33:23,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:33:23,652.652 INFO    ] time= 22/06/2026 13:33:23
[2026-06-22 13:33:23,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:33:23,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:33:23,928.928 INFO    ] No existing commands found in stream
[2026-06-22 13:33:28,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:33:28,953.953 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-22 13:33:33,328.328 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:33:33,330.330 INFO    ] Checking for system updates...
[2026-06-22 13:33:33,367.367 INFO    ] 200
[2026-06-22 13:33:33,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:33:33,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:33:33,432.432 INFO    ] No update needed
[2026-06-22 13:33:33,434.434 INFO    ] Checking for camera pi updates...
[2026-06-22 13:33:33,472.472 INFO    ] 200
[2026-06-22 13:33:33,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:33:33,516.516 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:33:33,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:33:33,597.597 INFO    ] No camera update needed
[2026-06-22 13:33:33,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:33:33,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:33:33,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:33:33,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:33:35,660.660 INFO    ] ================================================
[2026-06-22 13:33:35,676.676 INFO    ] Launching Daemon at Mon Jun 22 13:33:35 IST 2026
[2026-06-22 13:33:35,687.687 INFO    ] ================================================
[2026-06-22 13:33:36,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:33:36
[2026-06-22 13:33:36,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:33:37,043.043 INFO    ] Initializing speech engine...
[2026-06-22 13:33:37,050.050 INFO    ] 2026-06-22 13:33:37
[2026-06-22 13:33:37,351.351 INFO    ] 2026-06-22 13:33:37
[2026-06-22 13:33:37,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:33:37,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:33:37,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:33:37,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:33:37,858.858 INFO    ] time= 22/06/2026 13:33:37
[2026-06-22 13:33:37,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:33:37,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:33:38,060.060 INFO    ] No existing commands found in stream
[2026-06-22 13:33:43,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:33:43,091.091 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-22 13:33:44,096.096 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:33:44,098.098 INFO    ] Checking for system updates...
[2026-06-22 13:33:44,120.120 INFO    ] 200
[2026-06-22 13:33:44,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:33:44,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:33:44,188.188 INFO    ] No update needed
[2026-06-22 13:33:44,191.191 INFO    ] Checking for camera pi updates...
[2026-06-22 13:33:44,228.228 INFO    ] 200
[2026-06-22 13:33:44,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:33:44,273.273 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:33:44,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:33:44,480.480 INFO    ] No camera update needed
[2026-06-22 13:33:44,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:33:44,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:33:44,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:33:44,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:33:46,540.540 INFO    ] ================================================
[2026-06-22 13:33:46,556.556 INFO    ] Launching Daemon at Mon Jun 22 13:33:46 IST 2026
[2026-06-22 13:33:46,567.567 INFO    ] ================================================
[2026-06-22 13:33:47,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:33:47
[2026-06-22 13:33:47,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:33:48,114.114 INFO    ] Initializing speech engine...
[2026-06-22 13:33:48,127.127 INFO    ] 2026-06-22 13:33:48
[2026-06-22 13:33:48,438.438 INFO    ] 2026-06-22 13:33:48
[2026-06-22 13:33:48,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:33:48,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:33:48,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:33:48,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:33:48,949.949 INFO    ] time= 22/06/2026 13:33:48
[2026-06-22 13:33:48,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:33:48,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:33:49,104.104 INFO    ] No existing commands found in stream
[2026-06-22 13:33:54,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:33:54,143.143 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-22 13:33:58,176.176 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:33:58,177.177 INFO    ] Checking for system updates...
[2026-06-22 13:33:58,199.199 INFO    ] 200
[2026-06-22 13:33:58,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:33:58,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:33:58,235.235 INFO    ] No update needed
[2026-06-22 13:33:58,236.236 INFO    ] Checking for camera pi updates...
[2026-06-22 13:33:58,265.265 INFO    ] 200
[2026-06-22 13:33:58,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:33:58,308.308 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:33:58,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:33:58,404.404 INFO    ] No camera update needed
[2026-06-22 13:33:58,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:33:58,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:33:58,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:33:58,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:34:00,462.462 INFO    ] ================================================
[2026-06-22 13:34:00,478.478 INFO    ] Launching Daemon at Mon Jun 22 13:34:00 IST 2026
[2026-06-22 13:34:00,489.489 INFO    ] ================================================
[2026-06-22 13:34:01,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:34:01
[2026-06-22 13:34:01,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:34:02,148.148 INFO    ] Initializing speech engine...
[2026-06-22 13:34:02,151.151 INFO    ] 2026-06-22 13:34:02
[2026-06-22 13:34:02,457.457 INFO    ] 2026-06-22 13:34:02
[2026-06-22 13:34:02,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:34:02,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:34:02,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:34:02,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:34:02,940.940 INFO    ] time= 22/06/2026 13:34:02
[2026-06-22 13:34:02,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:34:03,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:34:03,128.128 INFO    ] No existing commands found in stream
[2026-06-22 13:34:08,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:34:08,141.141 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-22 13:34:12,434.434 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:34:12,437.437 INFO    ] Checking for system updates...
[2026-06-22 13:34:12,473.473 INFO    ] 200
[2026-06-22 13:34:12,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:34:12,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:34:12,531.531 INFO    ] No update needed
[2026-06-22 13:34:12,533.533 INFO    ] Checking for camera pi updates...
[2026-06-22 13:34:12,568.568 INFO    ] 200
[2026-06-22 13:34:12,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:34:12,612.612 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:34:12,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:34:12,718.718 INFO    ] No camera update needed
[2026-06-22 13:34:12,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:34:12,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:34:12,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:34:12,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:34:14,777.777 INFO    ] ================================================
[2026-06-22 13:34:14,793.793 INFO    ] Launching Daemon at Mon Jun 22 13:34:14 IST 2026
[2026-06-22 13:34:14,805.805 INFO    ] ================================================
[2026-06-22 13:34:15,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:34:15
[2026-06-22 13:34:15,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:34:16,171.171 INFO    ] Initializing speech engine...
[2026-06-22 13:34:16,180.180 INFO    ] 2026-06-22 13:34:16
[2026-06-22 13:34:16,432.432 INFO    ] 2026-06-22 13:34:16
[2026-06-22 13:34:16,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:34:16,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:34:16,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:34:16,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:34:16,978.978 INFO    ] time= 22/06/2026 13:34:16
[2026-06-22 13:34:16,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:34:17,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:34:17,130.130 INFO    ] Found 1 existing command(s) in stream
[2026-06-22 13:34:17,162.162 INFO    ] Checking historical command: ID=1782115451627-0
[2026-06-22 13:34:17,211.211 INFO    ] process_and_cleanup_command: msg_id=1782115451627-0
[2026-06-22 13:34:17,244.244 INFO    ] is_command_expired: timestamp=2026-06-22T08:04:11.181Z, expiry=30s
[2026-06-22 13:34:17,420.420 INFO    ] Command removed from stream: 1782115451627-0. returning for processing...
[2026-06-22 13:34:17,461.461 INFO    ] ***** get_valid_command
[2026-06-22 13:34:17,471.471 INFO    ] {'timestamp': '2026-06-22T08:04:11.181Z', 'timeout': '10', 'command': 'start-order', 'data': '{"request_id":"start-order-1782115451181-iy1ums992","orderId":"TM06202507260622133325072","is_vending":false}', 'source': 'webapp'}
[2026-06-22 13:34:17,475.475 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1782115451181-iy1ums992', 'is_vending': False, 'orderId': 'TM06202507260622133325072'}
[2026-06-22 13:34:17,478.478 INFO    ] Handling start order...
[2026-06-22 13:34:17,480.480 INFO    ] handle_start_order_command
[2026-06-22 13:34:17,564.564 INFO    ] _send_start_order_success: request_id=start-order-1782115451181-iy1ums992, order_id=TM06202507260622133325072
[2026-06-22 13:34:17,612.612 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM06202507
[2026-06-22 13:34:17,718.718 INFO    ] [_send_start_order_success] Message added to stream with ID: 1782115457638-0
[2026-06-22 13:34:17,721.721 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-22 13:34:17,726.726 INFO    ] Checking for system updates...
[2026-06-22 13:34:17,772.772 INFO    ] 200
[2026-06-22 13:34:17,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:34:17,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:34:17,900.900 INFO    ] No update needed
[2026-06-22 13:34:17,906.906 INFO    ] Checking for camera pi updates...
[2026-06-22 13:34:17,950.950 INFO    ] 200
[2026-06-22 13:34:17,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:34:18,003.003 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:34:18,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:34:18,095.095 INFO    ] No camera update needed
[2026-06-22 13:34:18,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:34:18,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:34:18,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:34:18,135.135 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-22 13:34:18,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:34:20,195.195 INFO    ] ================================================
[2026-06-22 13:34:20,211.211 INFO    ] Launching Daemon at Mon Jun 22 13:34:20 IST 2026
[2026-06-22 13:34:20,222.222 INFO    ] ================================================
[2026-06-22 13:34:20,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:34:20
[2026-06-22 13:34:21,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:34:21,546.546 INFO    ] Initializing speech engine...
[2026-06-22 13:34:21,565.565 INFO    ] 2026-06-22 13:34:21
[2026-06-22 13:34:21,817.817 INFO    ] 2026-06-22 13:34:21
[2026-06-22 13:34:21,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:34:22,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:34:22,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:34:22,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:34:22,334.334 INFO    ] time= 22/06/2026 13:34:22
[2026-06-22 13:34:22,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:34:22,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:34:22,549.549 INFO    ] Found 2 existing command(s) in stream
[2026-06-22 13:34:22,593.593 INFO    ] Checking historical command: ID=1782115457638-0
[2026-06-22 13:34:22,657.657 INFO    ] process_and_cleanup_command: msg_id=1782115457638-0
[2026-06-22 13:34:22,672.672 INFO    ] is_command_expired: timestamp=2026-06-22T08:04:17.570838Z, expiry=30s
[2026-06-22 13:34:22,881.881 INFO    ] Command removed from stream: 1782115457638-0. returning for processing...
[2026-06-22 13:34:22,891.891 INFO    ] ***** get_valid_command
[2026-06-22 13:34:22,894.894 INFO    ] {'metadata_request_id': 'start-order-1782115451181-iy1ums992', 'message_type': 'command_response', 'metadata_order_id': 'TM06202507260622133325072', 'imei': 'TM06202507', 'status': 'success', 'timestamp': '2026-06-22T08:04:17.570838Z', 'message': 'start-order success'}
[2026-06-22 13:34:22,897.897 INFO    ] Checking historical command: ID=1782115460160-0
[2026-06-22 13:34:22,900.900 INFO    ] process_and_cleanup_command: msg_id=1782115460160-0
[2026-06-22 13:34:22,903.903 INFO    ] is_command_expired: timestamp=2026-06-22T08:04:19.794Z, expiry=30s
[2026-06-22 13:34:23,031.031 INFO    ] Command removed from stream: 1782115460160-0. returning for processing...
[2026-06-22 13:34:23,038.038 INFO    ] ***** get_valid_command
[2026-06-22 13:34:23,041.041 INFO    ] {'source': 'webapp', 'data': '{"request_id":"process-order-1782115459794-ttofuh7hm","orderId":"TM06202507260622133325072","is_vending":false,"accessCode":"82354106"}', 'timeout': '60', 'timestamp': '2026-06-22T08:04:19.794Z', 'command': 'process-order'}
[2026-06-22 13:34:23,091.091 INFO    ] ***** Parsed command data: {'orderId': 'TM06202507260622133325072', 'is_vending': False, 'accessCode': '82354106', 'request_id': 'process-order-1782115459794-ttofuh7hm'}
[2026-06-22 13:34:23,096.096 INFO    ] Handling process order...
[2026-06-22 13:34:23,099.099 INFO    ] Processing process-order command...
[2026-06-22 13:34:23,151.151 INFO    ] 🔍 Lock file Order ID: TM06202507260622133325072, TS: 2026-06-22 13:34:17
[2026-06-22 13:34:23,168.168 INFO    ] ✅ Order lock valid for TM06202507260622133325072
[2026-06-22 13:34:23,172.172 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-22 13:34:23,178.178 INFO    ] processing access code 82354106 for order TM06202507260622133325072
[2026-06-22 13:34:23,184.184 INFO    ] 🔍 Lock file Order ID: TM06202507260622133325072, TS: 2026-06-22 13:34:17
[2026-06-22 13:34:23,189.189 INFO    ] ✅ Order lock valid for TM06202507260622133325072
[2026-06-22 13:34:23,193.193 INFO    ] 2026-06-22 13:34:23
[2026-06-22 13:34:23,299.299 INFO    ] 200
[2026-06-22 13:34:23,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:34:23,352.352 INFO    ] 82354106
[2026-06-22 13:34:23,357.357 INFO    ] 2026-06-22 13:34:23
[2026-06-22 13:34:23,362.362 INFO    ] session id :925193689
[2026-06-22 13:34:23,370.370 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=82354106&imei=TM06202507&session_id=925193689
[2026-06-22 13:34:24,398.398 INFO    ] 200
[2026-06-22 13:34:24,412.412 INFO    ] {"data": {"mobile": "9845263381", "order_id": "TM06202507260622133325072", "access_code": "82354106", "bill_amount": "40", "proposed_sku_json": [{"tray_id": "42", "qty": 1, "mrp": "40", "door_id": "2", "name": "Pepsi ZeroSugar  300ml", "sku_total": 40, "image_url": "https://images.tinymart.in/product/186059-5330.png", "offer_desc": "", "unit_price": 40, "skuid": "186059", "offer_id": ""}], "invoice_bill": "40"}, "msg": "Order Data", "status": true, "rstatus": true}
[2026-06-22 13:34:24,418.418 INFO    ] 40
[2026-06-22 13:34:24,450.450 INFO    ] TM06202507260622133325072
[2026-06-22 13:34:24,460.460 INFO    ] 9845263381
[2026-06-22 13:34:24,483.483 INFO    ] 2026-06-22 13:34:24
[2026-06-22 13:34:24,495.495 INFO    ] Door Opening for user mobile ending with  three three eight one 
[2026-06-22 13:34:24,502.502 INFO    ] Door Opening for user mobile ending with  three three eight one 
[2026-06-22 13:34:24,534.534 INFO    ] d4885b7d27087a3ad26d44a2ba622f49
[2026-06-22 13:34:24,574.574 INFO    ] 2026-06-22 13:34:24
[2026-06-22 13:34:24,601.601 INFO    ] creating audio file
[2026-06-22 13:34:25,081.081 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-22 13:34:25,759.759 INFO    ] gTTS API call completed successfully
[2026-06-22 13:34:26,949.949 INFO    ] 2026-06-22 13:34:26
[2026-06-22 13:34:26,952.952 INFO    ] playing audio file
[2026-06-22 13:34:26,970.970 INFO    ] 2026-06-22 13:34:26
[2026-06-22 13:34:26,973.973 INFO    ] 2026-06-22 13:34:26
[2026-06-22 13:34:26,978.978 INFO    ] publish_status: order_id=TM06202507260622133325072
[2026-06-22 13:34:26,981.981 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622133325072
[2026-06-22 13:34:27,042.042 INFO    ] [publish_status] Message added to stream with ID: 1782115467007-0
[2026-06-22 13:34:27,045.045 INFO    ] Published to order:TM06202507260622133325072: {'server_response': '{"rstatus": true, "msg": "Order Data", "data": {"invoice_bill": "40", "access_code": "82354106", "order_id": "TM06202507260622133325072", "bill_amount": "40", "proposed_sku_json": [{"unit_price": 40, "qty": 1, "skuid": "186059", "offer_id": "", "name": "Pepsi ZeroSugar  300ml", "door_id": "2", "image_url": "https://images.tinymart.in/product/186059-5330.png", "sku_total": 40, "offer_desc": "", "mrp": "40", "tray_id": "42"}], "mobile": "9845263381"}, "status": true}', 'timestamp': '2026-06-22T08:04:26.975927Z', 'order_id': 'TM06202507260622133325072', 'server_status': 'order-started'} (ID: 1782115467007-0)
[2026-06-22 13:34:27,540.540 INFO    ] {'server_response': {'rstatus': True, 'msg': 'Order Data', 'data': {'invoice_bill': '40', 'access_code': '82354106', 'order_id': 'TM06202507260622133325072', 'bill_amount': '40', 'proposed_sku_json': [{'unit_price': 40, 'qty': 1, 'skuid': '186059', 'offer_id': '', 'name': 'Pepsi ZeroSugar  300ml', 'door_id': '2', 'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'sku_total': 40, 'offer_desc': '', 'mrp': '40', 'tray_id': '42'}], 'mobile': '9845263381'}, 'status': True}, 'order_id': 'TM06202507260622133325072', 'server_status': 'order-started'}
[2026-06-22 13:34:27,543.543 INFO    ] 200
[2026-06-22 13:34:27,545.545 INFO    ] {"data":{"server_response":{"rstatus":true,"msg":"Order Data","data":{"invoice_bill":"40","access_code":"82354106","order_id":"TM06202507260622133325072","bill_amount":"40","proposed_sku_json":[{"unit_price":40,"qty":1,"skuid":"186059","offer_id":"","name":"Pepsi ZeroSugar  300ml","door_id":"2","image_url":"https:\/\/images.tinymart.in\/product\/186059-5330.png","sku_total":40,"offer_desc":"","mrp":"40","tray_id":"42"}],"mobile":"9845263381"},"status":true},"order_id":"TM06202507260622133325072","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 13:34:27,548.548 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}, 'data': {'server_status': 'order-started', 'order_id': 'TM06202507260622133325072', 'server_response': {'rstatus': True, 'msg': 'Order Data', 'data': {'invoice_bill': '40', 'access_code': '82354106', 'order_id': 'TM06202507260622133325072', 'bill_amount': '40', 'proposed_sku_json': [{'qty': 1, 'sku_total': 40, 'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'name': 'Pepsi ZeroSugar  300ml', 'door_id': '2', 'unit_price': 40, 'skuid': '186059', 'offer_desc': '', 'offer_id': '', 'tray_id': '42', 'mrp': '40'}], 'mobile': '9845263381'}, 'status': True}}}
[2026-06-22 13:34:27,551.551 INFO    ] 2026-06-22 13:34:27
[2026-06-22 13:34:27,596.596 INFO    ] 200
[2026-06-22 13:34:27,599.599 INFO    ] True
[2026-06-22 13:34:27,734.734 INFO    ] 200
[2026-06-22 13:34:27,737.737 INFO    ] {"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": ""}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 13:34:27,741.741 INFO    ] {'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'voiceNote': 'Please Wait', 'rstatus': False, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False', 'SectionStatus': {'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}}
[2026-06-22 13:34:27,743.743 INFO    ] *** process_order ***
[2026-06-22 13:34:28,936.936 INFO    ] 200
[2026-06-22 13:34:28,938.938 INFO    ] {"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": ""}, "rstatus": true, "delay": 0, "status": "True", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 13:34:28,941.941 INFO    ] {'voiceNote': 'Please Wait', 'delay': 0, 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'SectionStatus': {'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}}
[2026-06-22 13:34:28,943.943 INFO    ] *** process_order ***
[2026-06-22 13:34:28,946.946 INFO    ] publish_status: order_id=TM06202507260622133325072
[2026-06-22 13:34:28,948.948 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622133325072
[2026-06-22 13:34:29,021.021 INFO    ] [publish_status] Message added to stream with ID: 1782115468987-0
[2026-06-22 13:34:29,024.024 INFO    ] Published to order:TM06202507260622133325072: {'server_response': '{"voiceNote": "Door is open...", "delay": 0, "rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionMain": {"Header": "Processing Order"}, "status": "True", "SectionStatus": {"UI_Header": "", "Note": "", "SubHeader": "You can pull the door now.", "Header": " Your order is under process  "}}', 'order_id': 'TM06202507260622133325072', 'server_status': 'doorOpened'} (ID: 1782115468987-0)
[2026-06-22 13:34:30,071.071 INFO    ] 2026-06-22 13:34:30
[2026-06-22 13:34:30,074.074 INFO    ] publish_status: order_id=TM06202507260622133325072
[2026-06-22 13:34:30,077.077 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622133325072
[2026-06-22 13:34:30,194.194 INFO    ] [publish_status] Message added to stream with ID: 1782115470127-0
[2026-06-22 13:34:30,197.197 INFO    ] Published to order:TM06202507260622133325072: {'server_response': '{"voiceNote": "Please Wait", "delay": 0, "rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionMain": {"Header": "Processing Order"}, "status": "True", "SectionStatus": {"UI_Header": "", "Note": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}}', 'timestamp': '2026-06-22T08:04:30.072882Z', 'order_id': 'TM06202507260622133325072', 'server_status': 'processOrder'} (ID: 1782115470127-0)
[2026-06-22 13:34:30,373.373 INFO    ] {'server_response': {'voiceNote': 'Please Wait', 'delay': 0, 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'SectionStatus': {'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}}, 'order_id': 'TM06202507260622133325072', 'server_status': 'processOrder'}
[2026-06-22 13:34:30,376.376 INFO    ] 200
[2026-06-22 13:34:30,379.379 INFO    ] {"data":{"server_response":{"voiceNote":"Please Wait","delay":0,"rstatus":true,"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"SectionMain":{"Header":"Processing Order"},"status":"true","SectionStatus":{"UI_Header":"","Note":"","SubHeader":"Please wait while we process your order","Header":" Your order is under process  "}},"order_id":"TM06202507260622133325072","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 13:34:30,382.382 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}, 'data': {'server_status': 'processOrder', 'order_id': 'TM06202507260622133325072', 'server_response': {'voiceNote': 'Please Wait', 'delay': 0, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'true', 'SectionStatus': {'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}}}}
[2026-06-22 13:34:30,385.385 INFO    ] 2026-06-22 13:34:30
[2026-06-22 13:34:30,387.387 INFO    ] None
[2026-06-22 13:34:30,390.390 INFO    ] Opening Door now
[2026-06-22 13:34:30,392.392 INFO    ] Opening Door now
[2026-06-22 13:34:30,395.395 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-22 13:34:30,398.398 INFO    ] 2026-06-22 13:34:30
[2026-06-22 13:34:30,401.401 INFO    ] playing audio file
[2026-06-22 13:34:30,419.419 INFO    ] 2026-06-22 13:34:30
[2026-06-22 13:34:30,422.422 INFO    ] 2026-06-22 13:34:30
[2026-06-22 13:34:33,489.489 INFO    ] 200
[2026-06-22 13:34:33,492.492 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Pepsi ZeroSugar  300ml"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Door 2 is open now"}
[2026-06-22 13:34:33,495.495 INFO    ] {'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'voiceNote': 'Door 2 is open now', 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Pepsi ZeroSugar  300ml'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2'}}
[2026-06-22 13:34:36,556.556 INFO    ] 200
[2026-06-22 13:34:36,559.559 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Pepsi ZeroSugar  300ml"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2"}
[2026-06-22 13:34:36,562.562 INFO    ] {'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Pepsi ZeroSugar  300ml'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2'}}
[2026-06-22 13:34:39,626.626 INFO    ] 200
[2026-06-22 13:34:39,628.628 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Pepsi ZeroSugar  300ml"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2"}
[2026-06-22 13:34:39,631.631 INFO    ] Please close door 2
[2026-06-22 13:34:39,634.634 INFO    ] Please close door 2
[2026-06-22 13:34:39,637.637 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-22 13:34:39,639.639 INFO    ] 2026-06-22 13:34:39
[2026-06-22 13:34:39,642.642 INFO    ] playing audio file
[2026-06-22 13:34:39,659.659 INFO    ] 2026-06-22 13:34:39
[2026-06-22 13:34:39,663.663 INFO    ] publish_status: order_id=TM06202507260622133325072
[2026-06-22 13:34:39,666.666 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622133325072
[2026-06-22 13:34:39,754.754 INFO    ] [publish_status] Message added to stream with ID: 1782115479707-0
[2026-06-22 13:34:39,757.757 INFO    ] Published to order:TM06202507260622133325072: {'server_response': '{"error": {"umessage": "In Progress", "code": 20001, "data": {}, "tmessage": "In Progress"}, "voiceNote": "Please close door 2", "rstatus": false, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Pepsi ZeroSugar  300ml"}]}, "SectionMain": {"Header": "Door Open"}, "status": "False", "SectionStatus": {"UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}}', 'timestamp': '2026-06-22T08:04:39.661797Z', 'order_id': 'TM06202507260622133325072', 'server_status': 'OrderStatus'} (ID: 1782115479707-0)
[2026-06-22 13:34:40,293.293 INFO    ] {'server_response': {'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Pepsi ZeroSugar  300ml'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2'}}, 'order_id': 'TM06202507260622133325072', 'server_status': 'OrderStatus'}
[2026-06-22 13:34:40,296.296 INFO    ] 200
[2026-06-22 13:34:40,298.298 INFO    ] {"data":{"server_response":{"error":{"umessage":"In Progress","code":20001,"data":[],"tmessage":"In Progress"},"voiceNote":"Please close door 2","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Pepsi ZeroSugar  300ml"}]},"SectionMain":{"Header":"Door Open"},"status":"false","SectionStatus":{"UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 2"}},"order_id":"TM06202507260622133325072","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 13:34:40,302.302 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}, 'data': {'server_status': 'OrderStatus', 'order_id': 'TM06202507260622133325072', 'server_response': {'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Pepsi ZeroSugar  300ml'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2'}}}}
[2026-06-22 13:34:40,305.305 INFO    ] {'error': {'umessage': 'In Progress', 'code': 20001, 'data': {}, 'tmessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Pepsi ZeroSugar  300ml'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2'}}
[2026-06-22 13:34:43,369.369 INFO    ] 200
[2026-06-22 13:34:43,372.372 INFO    ] {"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"}, "rstatus": true, "delay": 100, "status": "True", "SectionMain": {"Header": "Door Closed"}, "voiceNote": "Transaction Completed"}
[2026-06-22 13:34:43,375.375 INFO    ] {'voiceNote': 'Transaction Completed', 'delay': 100, 'rstatus': True, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'SectionStatus': {'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete '}}
[2026-06-22 13:34:43,377.377 INFO    ] 2026-06-22 13:34:43
[2026-06-22 13:34:43,383.383 INFO    ] Order Completed 
[2026-06-22 13:34:43,396.396 INFO    ] Order Completed 
[2026-06-22 13:34:43,398.398 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-22 13:34:43,401.401 INFO    ] 2026-06-22 13:34:43
[2026-06-22 13:34:43,404.404 INFO    ] playing audio file
[2026-06-22 13:34:43,423.423 INFO    ] 2026-06-22 13:34:43
[2026-06-22 13:34:43,433.433 INFO    ] {'voiceNote': 'Transaction Completed', 'delay': 100, 'rstatus': True, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'SectionStatus': {'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete '}}
[2026-06-22 13:34:43,436.436 INFO    ] 2026-06-22 13:34:43
[2026-06-22 13:34:45,147.147 INFO    ] 200
[2026-06-22 13:34:45,150.150 INFO    ] {"skus": [{"tray_id": "42", "qty": 1, "mrp": "40", "door_id": "", "name": "Pepsi ZeroSugar  300ml per peice", "sku_total": 40.0, "image_url": "https://images.tinymart.in/product/186059-5330.png", "unit_price": "40", "skuid": "186059"}], "anomaly": 0, "rstatus": true, "orderId": "TM06202507260622133325072", "logic": "WBL", "total_amount": 40.0, "res": "True"}
[2026-06-22 13:34:45,154.154 INFO    ] {'anomaly': 0, 'total_amount': 40.0, 'orderId': 'TM06202507260622133325072', 'rstatus': True, 'res': 'True', 'logic': 'WBL', 'skus': [{'unit_price': '40', 'qty': 1, 'skuid': '186059', 'name': 'Pepsi ZeroSugar  300ml per peice', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'sku_total': 40.0, 'mrp': '40', 'tray_id': '42'}]}
[2026-06-22 13:34:45,157.157 INFO    ] {'anomaly': 0, 'total_amount': 40.0, 'orderId': 'TM06202507260622133325072', 'rstatus': True, 'res': 'True', 'logic': 'WBL', 'skus': [{'unit_price': '40', 'qty': 1, 'skuid': '186059', 'name': 'Pepsi ZeroSugar  300ml per peice', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'sku_total': 40.0, 'mrp': '40', 'tray_id': '42'}]}
[2026-06-22 13:34:45,161.161 INFO    ] 2026-06-22 13:34:45
[2026-06-22 13:34:45,163.163 INFO    ] 2026-06-22 13:34:45
[2026-06-22 13:34:45,166.166 INFO    ] 40
[2026-06-22 13:34:45,169.169 INFO    ] 2026-06-22 13:34:45
[2026-06-22 13:34:45,172.172 INFO    ] 2026-06-22 13:34:45
[2026-06-22 13:34:45,175.175 INFO    ]  Your Bill Amount is 40
[2026-06-22 13:34:45,178.178 INFO    ]  Your Bill Amount is 40
[2026-06-22 13:34:45,181.181 INFO    ] 88965e4060b051d18121185ac205626e
[2026-06-22 13:34:45,183.183 INFO    ] 2026-06-22 13:34:45
[2026-06-22 13:34:45,186.186 INFO    ] playing audio file
[2026-06-22 13:34:45,205.205 INFO    ] 2026-06-22 13:34:45
[2026-06-22 13:34:45,209.209 INFO    ] 2026-06-22 13:34:45
[2026-06-22 13:34:45,212.212 INFO    ] publish_status: order_id=TM06202507260622133325072
[2026-06-22 13:34:45,216.216 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622133325072
[2026-06-22 13:34:45,285.285 INFO    ] [publish_status] Message added to stream with ID: 1782115485248-0
[2026-06-22 13:34:45,288.288 INFO    ] Published to order:TM06202507260622133325072: {'server_response': '{"anomaly": 0, "total_amount": 40.0, "orderId": "TM06202507260622133325072", "rstatus": true, "res": "True", "logic": "WBL", "skus": [{"unit_price": "40", "qty": 1, "skuid": "186059", "name": "Pepsi ZeroSugar  300ml per peice", "door_id": "", "image_url": "https://images.tinymart.in/product/186059-5330.png", "sku_total": 40.0, "mrp": "40", "tray_id": "42"}]}', 'timestamp': '2026-06-22T08:04:45.210571Z', 'order_id': 'TM06202507260622133325072', 'server_status': 'invoiceOrder'} (ID: 1782115485248-0)
[2026-06-22 13:34:45,832.832 INFO    ] {'server_response': {'anomaly': 0, 'total_amount': 40.0, 'orderId': 'TM06202507260622133325072', 'rstatus': True, 'res': 'True', 'logic': 'WBL', 'skus': [{'unit_price': '40', 'qty': 1, 'skuid': '186059', 'name': 'Pepsi ZeroSugar  300ml per peice', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'sku_total': 40.0, 'mrp': '40', 'tray_id': '42'}]}, 'order_id': 'TM06202507260622133325072', 'server_status': 'invoiceOrder'}
[2026-06-22 13:34:45,834.834 INFO    ] 200
[2026-06-22 13:34:45,837.837 INFO    ] {"data":{"server_response":{"anomaly":0,"total_amount":40,"orderId":"TM06202507260622133325072","rstatus":true,"res":"true","logic":"WBL","skus":[{"unit_price":"40","qty":1,"skuid":"186059","name":"Pepsi ZeroSugar  300ml per peice","door_id":"","image_url":"https:\/\/images.tinymart.in\/product\/186059-5330.png","sku_total":40,"mrp":"40","tray_id":"42"}]},"order_id":"TM06202507260622133325072","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 13:34:45,840.840 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}, 'data': {'server_status': 'invoiceOrder', 'order_id': 'TM06202507260622133325072', 'server_response': {'anomaly': 0, 'logic': 'WBL', 'res': 'true', 'orderId': 'TM06202507260622133325072', 'total_amount': 40, 'rstatus': True, 'skus': [{'sku_total': 40, 'door_id': '', 'name': 'Pepsi ZeroSugar  300ml per peice', 'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'qty': 1, 'unit_price': '40', 'skuid': '186059', 'mrp': '40', 'tray_id': '42'}]}}}
[2026-06-22 13:34:45,842.842 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}, 'data': {'server_status': 'invoiceOrder', 'order_id': 'TM06202507260622133325072', 'server_response': {'anomaly': 0, 'logic': 'WBL', 'res': 'true', 'orderId': 'TM06202507260622133325072', 'total_amount': 40, 'rstatus': True, 'skus': [{'sku_total': 40, 'door_id': '', 'name': 'Pepsi ZeroSugar  300ml per peice', 'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'qty': 1, 'unit_price': '40', 'skuid': '186059', 'mrp': '40', 'tray_id': '42'}]}}}
[2026-06-22 13:34:45,845.845 INFO    ] 2026-06-22 13:34:45
[2026-06-22 13:34:51,710.710 INFO    ] 200
[2026-06-22 13:34:51,713.713 INFO    ] {"orders_data_synced": [], "order_items": [], "orders_data": [], "orders_synced": [], "tray_synced": ["TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072", "TM06202507260622133325072"], "order_items_synced": [], "orders": [], "status": true, "tray_sync": []}
[2026-06-22 13:34:51,716.716 INFO    ] 2026-06-22 13:34:51
[2026-06-22 13:34:51,854.854 INFO    ] 200
[2026-06-22 13:34:51,857.857 INFO    ] True
[2026-06-22 13:34:51,861.861 INFO    ] cleanup_start_order_file_after_processing: order_id=TM06202507260622133325072
[2026-06-22 13:34:51,865.865 INFO    ] start order file deleted
[2026-06-22 13:34:51,868.868 INFO    ] Checking for system updates...
[2026-06-22 13:34:51,909.909 INFO    ] 200
[2026-06-22 13:34:51,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:34:51,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:34:51,969.969 INFO    ] No update needed
[2026-06-22 13:34:51,971.971 INFO    ] Checking for camera pi updates...
[2026-06-22 13:34:52,010.010 INFO    ] 200
[2026-06-22 13:34:52,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:34:52,053.053 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:34:52,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:34:52,159.159 INFO    ] No camera update needed
[2026-06-22 13:34:52,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:34:52,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:34:52,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:34:52,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:34:54,216.216 INFO    ] ================================================
[2026-06-22 13:34:54,231.231 INFO    ] Launching Daemon at Mon Jun 22 13:34:54 IST 2026
[2026-06-22 13:34:54,247.247 INFO    ] ================================================
[2026-06-22 13:34:54,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:34:54
[2026-06-22 13:34:55,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:34:55,627.627 INFO    ] Initializing speech engine...
[2026-06-22 13:34:55,633.633 INFO    ] 2026-06-22 13:34:55
[2026-06-22 13:34:55,882.882 INFO    ] 2026-06-22 13:34:55
[2026-06-22 13:34:55,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:34:56,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:34:56,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:34:56,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:34:56,353.353 INFO    ] time= 22/06/2026 13:34:56
[2026-06-22 13:34:56,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:34:56,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:34:56,562.562 INFO    ] No existing commands found in stream
[2026-06-22 13:35:01,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:35:01,598.598 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-22 13:35:05,736.736 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:35:05,739.739 INFO    ] Checking for system updates...
[2026-06-22 13:35:05,778.778 INFO    ] 200
[2026-06-22 13:35:05,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:35:05,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:35:05,836.836 INFO    ] No update needed
[2026-06-22 13:35:05,838.838 INFO    ] Checking for camera pi updates...
[2026-06-22 13:35:05,873.873 INFO    ] 200
[2026-06-22 13:35:05,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:35:05,921.921 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:35:06,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:35:06,009.009 INFO    ] No camera update needed
[2026-06-22 13:35:06,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:35:06,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:35:06,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:35:06,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:35:08,068.068 INFO    ] ================================================
[2026-06-22 13:35:08,083.083 INFO    ] Launching Daemon at Mon Jun 22 13:35:08 IST 2026
[2026-06-22 13:35:08,094.094 INFO    ] ================================================
[2026-06-22 13:35:08,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:35:08
[2026-06-22 13:35:09,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:35:09,744.744 INFO    ] Initializing speech engine...
[2026-06-22 13:35:09,757.757 INFO    ] 2026-06-22 13:35:09
[2026-06-22 13:35:10,050.050 INFO    ] 2026-06-22 13:35:10
[2026-06-22 13:35:10,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:35:10,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:35:10,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:35:10,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:35:10,608.608 INFO    ] time= 22/06/2026 13:35:10
[2026-06-22 13:35:10,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:35:10,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:35:10,866.866 INFO    ] No existing commands found in stream
[2026-06-22 13:35:15,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:35:15,900.900 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-22 13:35:20,472.472 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:35:20,475.475 INFO    ] Checking for system updates...
[2026-06-22 13:35:20,512.512 INFO    ] 200
[2026-06-22 13:35:20,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:35:20,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:35:20,572.572 INFO    ] No update needed
[2026-06-22 13:35:20,575.575 INFO    ] Checking for camera pi updates...
[2026-06-22 13:35:20,614.614 INFO    ] 200
[2026-06-22 13:35:20,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:35:20,659.659 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:35:20,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:35:20,738.738 INFO    ] No camera update needed
[2026-06-22 13:35:20,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:35:20,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:35:20,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:35:20,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:35:22,797.797 INFO    ] ================================================
[2026-06-22 13:35:22,813.813 INFO    ] Launching Daemon at Mon Jun 22 13:35:22 IST 2026
[2026-06-22 13:35:22,826.826 INFO    ] ================================================
[2026-06-22 13:35:23,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:35:23
[2026-06-22 13:35:24,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:35:24,332.332 INFO    ] Initializing speech engine...
[2026-06-22 13:35:24,345.345 INFO    ] 2026-06-22 13:35:24
[2026-06-22 13:35:24,624.624 INFO    ] 2026-06-22 13:35:24
[2026-06-22 13:35:24,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:35:24,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:35:24,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:35:25,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:35:25,028.028 INFO    ] time= 22/06/2026 13:35:25
[2026-06-22 13:35:25,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:35:25,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:35:25,158.158 INFO    ] No existing commands found in stream
[2026-06-22 13:35:30,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:35:30,174.174 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-22 13:35:32,005.005 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:35:32,008.008 INFO    ] Checking for system updates...
[2026-06-22 13:35:32,047.047 INFO    ] 200
[2026-06-22 13:35:32,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:35:32,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:35:32,118.118 INFO    ] No update needed
[2026-06-22 13:35:32,121.121 INFO    ] Checking for camera pi updates...
[2026-06-22 13:35:32,162.162 INFO    ] 200
[2026-06-22 13:35:32,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:35:32,209.209 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:35:32,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:35:32,287.287 INFO    ] No camera update needed
[2026-06-22 13:35:32,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:35:32,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:35:32,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:35:32,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:35:34,348.348 INFO    ] ================================================
[2026-06-22 13:35:34,364.364 INFO    ] Launching Daemon at Mon Jun 22 13:35:34 IST 2026
[2026-06-22 13:35:34,374.374 INFO    ] ================================================
[2026-06-22 13:35:34,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:35:34
[2026-06-22 13:35:35,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:35:35,687.687 INFO    ] Initializing speech engine...
[2026-06-22 13:35:35,695.695 INFO    ] 2026-06-22 13:35:35
[2026-06-22 13:35:35,998.998 INFO    ] 2026-06-22 13:35:35
[2026-06-22 13:35:36,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:35:36,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:35:36,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:35:36,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:35:36,637.637 INFO    ] time= 22/06/2026 13:35:36
[2026-06-22 13:35:36,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:35:36,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:35:36,783.783 INFO    ] No existing commands found in stream
[2026-06-22 13:35:41,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:35:41,817.817 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-22 13:35:45,568.568 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:35:45,570.570 INFO    ] Checking for system updates...
[2026-06-22 13:35:45,611.611 INFO    ] 200
[2026-06-22 13:35:45,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:35:45,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:35:45,676.676 INFO    ] No update needed
[2026-06-22 13:35:45,679.679 INFO    ] Checking for camera pi updates...
[2026-06-22 13:35:45,713.713 INFO    ] 200
[2026-06-22 13:35:45,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:35:45,760.760 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:35:45,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:35:45,843.843 INFO    ] No camera update needed
[2026-06-22 13:35:45,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:35:45,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:35:45,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:35:45,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:35:47,900.900 INFO    ] ================================================
[2026-06-22 13:35:47,915.915 INFO    ] Launching Daemon at Mon Jun 22 13:35:47 IST 2026
[2026-06-22 13:35:47,926.926 INFO    ] ================================================
[2026-06-22 13:35:48,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:35:48
[2026-06-22 13:35:49,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:35:49,253.253 INFO    ] Initializing speech engine...
[2026-06-22 13:35:49,261.261 INFO    ] 2026-06-22 13:35:49
[2026-06-22 13:35:49,532.532 INFO    ] 2026-06-22 13:35:49
[2026-06-22 13:35:49,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:35:49,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:35:49,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:35:50,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:35:50,085.085 INFO    ] time= 22/06/2026 13:35:50
[2026-06-22 13:35:50,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:35:50,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:35:50,235.235 INFO    ] No existing commands found in stream
[2026-06-22 13:35:55,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:35:55,254.254 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-22 13:35:55,798.798 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:35:55,801.801 INFO    ] Checking for system updates...
[2026-06-22 13:35:55,843.843 INFO    ] 200
[2026-06-22 13:35:55,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:35:55,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:35:55,904.904 INFO    ] No update needed
[2026-06-22 13:35:55,907.907 INFO    ] Checking for camera pi updates...
[2026-06-22 13:35:55,947.947 INFO    ] 200
[2026-06-22 13:35:55,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:35:55,996.996 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:35:56,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:35:56,181.181 INFO    ] No camera update needed
[2026-06-22 13:35:56,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:35:56,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:35:56,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:35:56,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:35:58,242.242 INFO    ] ================================================
[2026-06-22 13:35:58,258.258 INFO    ] Launching Daemon at Mon Jun 22 13:35:58 IST 2026
[2026-06-22 13:35:58,269.269 INFO    ] ================================================
[2026-06-22 13:35:58,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:35:58
[2026-06-22 13:35:59,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:35:59,602.602 INFO    ] Initializing speech engine...
[2026-06-22 13:35:59,609.609 INFO    ] 2026-06-22 13:35:59
[2026-06-22 13:35:59,908.908 INFO    ] 2026-06-22 13:35:59
[2026-06-22 13:35:59,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:36:00,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:36:00,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:36:00,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:36:00,298.298 INFO    ] time= 22/06/2026 13:36:00
[2026-06-22 13:36:00,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:36:00,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:36:00,424.424 INFO    ] No existing commands found in stream
[2026-06-22 13:36:05,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:36:05,440.440 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-22 13:36:07,091.091 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:36:07,094.094 INFO    ] Checking for system updates...
[2026-06-22 13:36:07,130.130 INFO    ] 200
[2026-06-22 13:36:07,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:36:07,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:36:07,188.188 INFO    ] No update needed
[2026-06-22 13:36:07,190.190 INFO    ] Checking for camera pi updates...
[2026-06-22 13:36:07,228.228 INFO    ] 200
[2026-06-22 13:36:07,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:36:07,275.275 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:36:07,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:36:07,349.349 INFO    ] No camera update needed
[2026-06-22 13:36:07,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:36:07,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:36:07,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:36:07,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:36:09,405.405 INFO    ] ================================================
[2026-06-22 13:36:09,421.421 INFO    ] Launching Daemon at Mon Jun 22 13:36:09 IST 2026
[2026-06-22 13:36:09,432.432 INFO    ] ================================================
[2026-06-22 13:36:10,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:36:09
[2026-06-22 13:36:10,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:36:10,750.750 INFO    ] Initializing speech engine...
[2026-06-22 13:36:10,763.763 INFO    ] 2026-06-22 13:36:10
[2026-06-22 13:36:11,030.030 INFO    ] 2026-06-22 13:36:11
[2026-06-22 13:36:11,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:36:11,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:36:11,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:36:11,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:36:11,409.409 INFO    ] time= 22/06/2026 13:36:11
[2026-06-22 13:36:11,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:36:11,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:36:11,603.603 INFO    ] No existing commands found in stream
[2026-06-22 13:36:16,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:36:16,623.623 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-22 13:36:20,402.402 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:36:20,405.405 INFO    ] Checking for system updates...
[2026-06-22 13:36:20,441.441 INFO    ] 200
[2026-06-22 13:36:20,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:36:20,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:36:20,501.501 INFO    ] No update needed
[2026-06-22 13:36:20,504.504 INFO    ] Checking for camera pi updates...
[2026-06-22 13:36:20,542.542 INFO    ] 200
[2026-06-22 13:36:20,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:36:20,587.587 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:36:20,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:36:20,673.673 INFO    ] No camera update needed
[2026-06-22 13:36:20,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:36:20,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:36:20,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:36:20,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:36:22,733.733 INFO    ] ================================================
[2026-06-22 13:36:22,748.748 INFO    ] Launching Daemon at Mon Jun 22 13:36:22 IST 2026
[2026-06-22 13:36:22,759.759 INFO    ] ================================================
[2026-06-22 13:36:23,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:36:23
[2026-06-22 13:36:23,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:36:24,190.190 INFO    ] Initializing speech engine...
[2026-06-22 13:36:24,203.203 INFO    ] 2026-06-22 13:36:24
[2026-06-22 13:36:24,471.471 INFO    ] 2026-06-22 13:36:24
[2026-06-22 13:36:24,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:36:24,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:36:24,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:36:24,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:36:24,974.974 INFO    ] time= 22/06/2026 13:36:24
[2026-06-22 13:36:25,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:36:25,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:36:25,156.156 INFO    ] No existing commands found in stream
[2026-06-22 13:36:30,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:36:30,190.190 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-22 13:36:33,041.041 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:36:33,043.043 INFO    ] Checking for system updates...
[2026-06-22 13:36:33,079.079 INFO    ] 200
[2026-06-22 13:36:33,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:36:33,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:36:33,141.141 INFO    ] No update needed
[2026-06-22 13:36:33,144.144 INFO    ] Checking for camera pi updates...
[2026-06-22 13:36:33,181.181 INFO    ] 200
[2026-06-22 13:36:33,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:36:33,228.228 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:36:33,280.280 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:36:33,282.282 INFO    ] No camera update needed
[2026-06-22 13:36:33,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:36:33,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:36:33,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:36:33,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:36:35,337.337 INFO    ] ================================================
[2026-06-22 13:36:35,353.353 INFO    ] Launching Daemon at Mon Jun 22 13:36:35 IST 2026
[2026-06-22 13:36:35,364.364 INFO    ] ================================================
[2026-06-22 13:36:35,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:36:35
[2026-06-22 13:36:36,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:36:36,900.900 INFO    ] Initializing speech engine...
[2026-06-22 13:36:36,908.908 INFO    ] 2026-06-22 13:36:36
[2026-06-22 13:36:37,192.192 INFO    ] 2026-06-22 13:36:37
[2026-06-22 13:36:37,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:36:37,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:36:37,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:36:37,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:36:37,727.727 INFO    ] time= 22/06/2026 13:36:37
[2026-06-22 13:36:37,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:36:37,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:36:37,905.905 INFO    ] No existing commands found in stream
[2026-06-22 13:36:42,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:36:42,934.934 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-22 13:36:44,510.510 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:36:44,511.511 INFO    ] Checking for system updates...
[2026-06-22 13:36:44,534.534 INFO    ] 200
[2026-06-22 13:36:44,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:36:44,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:36:44,598.598 INFO    ] No update needed
[2026-06-22 13:36:44,600.600 INFO    ] Checking for camera pi updates...
[2026-06-22 13:36:44,637.637 INFO    ] 200
[2026-06-22 13:36:44,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:36:44,681.681 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:36:44,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:36:44,792.792 INFO    ] No camera update needed
[2026-06-22 13:36:44,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:36:44,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:36:44,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:36:44,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:36:46,848.848 INFO    ] ================================================
[2026-06-22 13:36:46,864.864 INFO    ] Launching Daemon at Mon Jun 22 13:36:46 IST 2026
[2026-06-22 13:36:46,876.876 INFO    ] ================================================
[2026-06-22 13:36:47,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:36:47
[2026-06-22 13:36:48,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:36:48,288.288 INFO    ] Initializing speech engine...
[2026-06-22 13:36:48,311.311 INFO    ] 2026-06-22 13:36:48
[2026-06-22 13:36:48,563.563 INFO    ] 2026-06-22 13:36:48
[2026-06-22 13:36:48,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:36:48,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:36:48,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:36:48,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:36:49,068.068 INFO    ] time= 22/06/2026 13:36:49
[2026-06-22 13:36:49,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:36:49,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:36:49,271.271 INFO    ] No existing commands found in stream
[2026-06-22 13:36:54,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:36:54,288.288 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-22 13:36:56,102.102 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:36:56,104.104 INFO    ] Checking for system updates...
[2026-06-22 13:36:56,145.145 INFO    ] 200
[2026-06-22 13:36:56,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:36:56,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:36:56,202.202 INFO    ] No update needed
[2026-06-22 13:36:56,205.205 INFO    ] Checking for camera pi updates...
[2026-06-22 13:36:56,238.238 INFO    ] 200
[2026-06-22 13:36:56,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:36:56,280.280 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:36:56,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:36:56,387.387 INFO    ] No camera update needed
[2026-06-22 13:36:56,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:36:56,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:36:56,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:36:56,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:36:58,443.443 INFO    ] ================================================
[2026-06-22 13:36:58,459.459 INFO    ] Launching Daemon at Mon Jun 22 13:36:58 IST 2026
[2026-06-22 13:36:58,470.470 INFO    ] ================================================
[2026-06-22 13:36:59,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:36:59
[2026-06-22 13:36:59,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:36:59,814.814 INFO    ] Initializing speech engine...
[2026-06-22 13:36:59,823.823 INFO    ] 2026-06-22 13:36:59
[2026-06-22 13:37:00,069.069 INFO    ] 2026-06-22 13:37:00
[2026-06-22 13:37:00,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:37:00,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:37:00,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:37:00,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:37:00,506.506 INFO    ] time= 22/06/2026 13:37:00
[2026-06-22 13:37:00,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:37:00,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:37:00,766.766 INFO    ] No existing commands found in stream
[2026-06-22 13:37:05,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:37:05,789.789 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-22 13:37:06,380.380 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:37:06,383.383 INFO    ] Checking for system updates...
[2026-06-22 13:37:06,419.419 INFO    ] 200
[2026-06-22 13:37:06,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:37:06,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:37:06,482.482 INFO    ] No update needed
[2026-06-22 13:37:06,485.485 INFO    ] Checking for camera pi updates...
[2026-06-22 13:37:06,522.522 INFO    ] 200
[2026-06-22 13:37:06,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:37:06,570.570 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:37:06,657.657 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:37:06,660.660 INFO    ] No camera update needed
[2026-06-22 13:37:06,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:37:06,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:37:06,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:37:06,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:37:08,722.722 INFO    ] ================================================
[2026-06-22 13:37:08,738.738 INFO    ] Launching Daemon at Mon Jun 22 13:37:08 IST 2026
[2026-06-22 13:37:08,749.749 INFO    ] ================================================
[2026-06-22 13:37:09,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:37:09
[2026-06-22 13:37:09,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:37:10,159.159 INFO    ] Initializing speech engine...
[2026-06-22 13:37:10,168.168 INFO    ] 2026-06-22 13:37:10
[2026-06-22 13:37:10,434.434 INFO    ] 2026-06-22 13:37:10
[2026-06-22 13:37:10,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:37:10,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:37:10,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:37:10,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:37:10,891.891 INFO    ] time= 22/06/2026 13:37:10
[2026-06-22 13:37:10,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:37:10,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:37:11,132.132 INFO    ] No existing commands found in stream
[2026-06-22 13:37:16,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:37:16,158.158 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-22 13:37:18,727.727 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:37:18,730.730 INFO    ] Checking for system updates...
[2026-06-22 13:37:18,769.769 INFO    ] 200
[2026-06-22 13:37:18,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:37:18,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:37:18,832.832 INFO    ] No update needed
[2026-06-22 13:37:18,834.834 INFO    ] Checking for camera pi updates...
[2026-06-22 13:37:18,871.871 INFO    ] 200
[2026-06-22 13:37:18,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:37:18,915.915 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:37:18,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:37:19,001.001 INFO    ] No camera update needed
[2026-06-22 13:37:19,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:37:19,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:37:19,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:37:19,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:37:21,057.057 INFO    ] ================================================
[2026-06-22 13:37:21,073.073 INFO    ] Launching Daemon at Mon Jun 22 13:37:21 IST 2026
[2026-06-22 13:37:21,084.084 INFO    ] ================================================
[2026-06-22 13:37:21,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:37:21
[2026-06-22 13:37:22,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:37:22,515.515 INFO    ] Initializing speech engine...
[2026-06-22 13:37:22,523.523 INFO    ] 2026-06-22 13:37:22
[2026-06-22 13:37:22,779.779 INFO    ] 2026-06-22 13:37:22
[2026-06-22 13:37:22,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:37:23,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:37:23,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:37:23,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:37:23,241.241 INFO    ] time= 22/06/2026 13:37:23
[2026-06-22 13:37:23,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:37:23,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:37:23,468.468 INFO    ] No existing commands found in stream
[2026-06-22 13:37:28,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:37:28,495.495 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-22 13:37:30,597.597 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:37:30,600.600 INFO    ] Checking for system updates...
[2026-06-22 13:37:30,642.642 INFO    ] 200
[2026-06-22 13:37:30,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:37:30,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:37:30,701.701 INFO    ] No update needed
[2026-06-22 13:37:30,704.704 INFO    ] Checking for camera pi updates...
[2026-06-22 13:37:30,738.738 INFO    ] 200
[2026-06-22 13:37:30,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:37:30,782.782 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:37:30,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:37:30,871.871 INFO    ] No camera update needed
[2026-06-22 13:37:30,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:37:30,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:37:30,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:37:30,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:37:32,934.934 INFO    ] ================================================
[2026-06-22 13:37:32,952.952 INFO    ] Launching Daemon at Mon Jun 22 13:37:32 IST 2026
[2026-06-22 13:37:32,964.964 INFO    ] ================================================
[2026-06-22 13:37:33,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:37:33
[2026-06-22 13:37:34,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:37:34,454.454 INFO    ] Initializing speech engine...
[2026-06-22 13:37:34,471.471 INFO    ] 2026-06-22 13:37:34
[2026-06-22 13:37:34,724.724 INFO    ] 2026-06-22 13:37:34
[2026-06-22 13:37:34,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:37:35,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:37:35,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:37:35,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:37:35,214.214 INFO    ] time= 22/06/2026 13:37:35
[2026-06-22 13:37:35,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:37:35,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:37:35,419.419 INFO    ] No existing commands found in stream
[2026-06-22 13:37:40,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:37:40,459.459 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-22 13:37:42,477.477 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:37:42,479.479 INFO    ] Checking for system updates...
[2026-06-22 13:37:42,520.520 INFO    ] 200
[2026-06-22 13:37:42,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:37:42,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:37:42,586.586 INFO    ] No update needed
[2026-06-22 13:37:42,588.588 INFO    ] Checking for camera pi updates...
[2026-06-22 13:37:42,622.622 INFO    ] 200
[2026-06-22 13:37:42,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:37:42,667.667 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:37:42,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:37:42,722.722 INFO    ] No camera update needed
[2026-06-22 13:37:42,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:37:42,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:37:42,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:37:42,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:37:44,782.782 INFO    ] ================================================
[2026-06-22 13:37:44,797.797 INFO    ] Launching Daemon at Mon Jun 22 13:37:44 IST 2026
[2026-06-22 13:37:44,808.808 INFO    ] ================================================
[2026-06-22 13:37:45,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:37:45
[2026-06-22 13:37:45,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:37:46,163.163 INFO    ] Initializing speech engine...
[2026-06-22 13:37:46,179.179 INFO    ] 2026-06-22 13:37:46
[2026-06-22 13:37:46,463.463 INFO    ] 2026-06-22 13:37:46
[2026-06-22 13:37:46,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:37:46,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:37:46,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:37:46,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:37:46,817.817 INFO    ] time= 22/06/2026 13:37:46
[2026-06-22 13:37:46,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:37:46,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:37:46,899.899 INFO    ] No existing commands found in stream
[2026-06-22 13:37:51,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:37:51,914.914 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-22 13:37:55,890.890 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:37:55,892.892 INFO    ] Checking for system updates...
[2026-06-22 13:37:55,932.932 INFO    ] 200
[2026-06-22 13:37:55,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:37:55,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:37:55,997.997 INFO    ] No update needed
[2026-06-22 13:37:55,999.999 INFO    ] Checking for camera pi updates...
[2026-06-22 13:37:56,033.033 INFO    ] 200
[2026-06-22 13:37:56,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:37:56,081.081 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:37:56,166.166 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:37:56,168.168 INFO    ] No camera update needed
[2026-06-22 13:37:56,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:37:56,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:37:56,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:37:56,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:37:58,224.224 INFO    ] ================================================
[2026-06-22 13:37:58,239.239 INFO    ] Launching Daemon at Mon Jun 22 13:37:58 IST 2026
[2026-06-22 13:37:58,250.250 INFO    ] ================================================
[2026-06-22 13:37:58,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:37:58
[2026-06-22 13:37:59,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:37:59,583.583 INFO    ] Initializing speech engine...
[2026-06-22 13:37:59,596.596 INFO    ] 2026-06-22 13:37:59
[2026-06-22 13:37:59,871.871 INFO    ] 2026-06-22 13:37:59
[2026-06-22 13:37:59,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:38:00,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:38:00,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:38:00,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:38:00,291.291 INFO    ] time= 22/06/2026 13:38:00
[2026-06-22 13:38:00,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:38:00,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:38:00,376.376 INFO    ] No existing commands found in stream
[2026-06-22 13:38:05,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:38:05,391.391 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-22 13:38:07,575.575 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:38:07,578.578 INFO    ] Checking for system updates...
[2026-06-22 13:38:07,613.613 INFO    ] 200
[2026-06-22 13:38:07,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:38:07,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:38:07,671.671 INFO    ] No update needed
[2026-06-22 13:38:07,673.673 INFO    ] Checking for camera pi updates...
[2026-06-22 13:38:07,716.716 INFO    ] 200
[2026-06-22 13:38:07,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:38:07,763.763 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:38:07,872.872 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:38:07,874.874 INFO    ] No camera update needed
[2026-06-22 13:38:07,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:38:07,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:38:07,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:38:07,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:38:09,931.931 INFO    ] ================================================
[2026-06-22 13:38:09,947.947 INFO    ] Launching Daemon at Mon Jun 22 13:38:09 IST 2026
[2026-06-22 13:38:09,959.959 INFO    ] ================================================
[2026-06-22 13:38:10,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:38:10
[2026-06-22 13:38:11,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:38:11,344.344 INFO    ] Initializing speech engine...
[2026-06-22 13:38:11,353.353 INFO    ] 2026-06-22 13:38:11
[2026-06-22 13:38:11,605.605 INFO    ] 2026-06-22 13:38:11
[2026-06-22 13:38:11,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:38:11,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:38:11,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:38:12,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:38:12,169.169 INFO    ] time= 22/06/2026 13:38:12
[2026-06-22 13:38:12,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:38:12,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:38:12,322.322 INFO    ] No existing commands found in stream
[2026-06-22 13:38:17,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:38:17,337.337 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-22 13:38:19,667.667 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:38:19,670.670 INFO    ] Checking for system updates...
[2026-06-22 13:38:19,712.712 INFO    ] 200
[2026-06-22 13:38:19,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:38:19,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:38:19,781.781 INFO    ] No update needed
[2026-06-22 13:38:19,783.783 INFO    ] Checking for camera pi updates...
[2026-06-22 13:38:19,818.818 INFO    ] 200
[2026-06-22 13:38:19,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:38:19,869.869 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:38:19,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:38:19,955.955 INFO    ] No camera update needed
[2026-06-22 13:38:19,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:38:19,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:38:19,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:38:19,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:38:22,015.015 INFO    ] ================================================
[2026-06-22 13:38:22,032.032 INFO    ] Launching Daemon at Mon Jun 22 13:38:22 IST 2026
[2026-06-22 13:38:22,043.043 INFO    ] ================================================
[2026-06-22 13:38:22,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:38:22
[2026-06-22 13:38:23,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:38:23,622.622 INFO    ] Initializing speech engine...
[2026-06-22 13:38:23,634.634 INFO    ] 2026-06-22 13:38:23
[2026-06-22 13:38:23,922.922 INFO    ] 2026-06-22 13:38:23
[2026-06-22 13:38:23,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:38:24,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:38:24,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:38:24,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:38:24,478.478 INFO    ] time= 22/06/2026 13:38:24
[2026-06-22 13:38:24,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:38:24,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:38:24,665.665 INFO    ] No existing commands found in stream
[2026-06-22 13:38:29,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:38:29,705.705 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-22 13:38:33,339.339 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:38:33,342.342 INFO    ] Checking for system updates...
[2026-06-22 13:38:33,385.385 INFO    ] 200
[2026-06-22 13:38:33,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:38:33,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:38:33,446.446 INFO    ] No update needed
[2026-06-22 13:38:33,449.449 INFO    ] Checking for camera pi updates...
[2026-06-22 13:38:33,488.488 INFO    ] 200
[2026-06-22 13:38:33,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:38:33,534.534 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:38:33,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:38:33,626.626 INFO    ] No camera update needed
[2026-06-22 13:38:33,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:38:33,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:38:33,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:38:33,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:38:35,689.689 INFO    ] ================================================
[2026-06-22 13:38:35,705.705 INFO    ] Launching Daemon at Mon Jun 22 13:38:35 IST 2026
[2026-06-22 13:38:35,716.716 INFO    ] ================================================
[2026-06-22 13:38:36,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:38:36
[2026-06-22 13:38:36,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:38:37,046.046 INFO    ] Initializing speech engine...
[2026-06-22 13:38:37,054.054 INFO    ] 2026-06-22 13:38:37
[2026-06-22 13:38:37,352.352 INFO    ] 2026-06-22 13:38:37
[2026-06-22 13:38:37,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:38:37,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:38:37,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:38:37,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:38:37,777.777 INFO    ] time= 22/06/2026 13:38:37
[2026-06-22 13:38:37,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:38:37,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:38:37,926.926 INFO    ] No existing commands found in stream
[2026-06-22 13:38:42,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:38:42,954.954 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-22 13:38:44,219.219 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:38:44,222.222 INFO    ] Checking for system updates...
[2026-06-22 13:38:44,260.260 INFO    ] 200
[2026-06-22 13:38:44,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:38:44,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:38:44,320.320 INFO    ] No update needed
[2026-06-22 13:38:44,323.323 INFO    ] Checking for camera pi updates...
[2026-06-22 13:38:44,358.358 INFO    ] 200
[2026-06-22 13:38:44,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:38:44,410.410 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:38:44,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:38:44,495.495 INFO    ] No camera update needed
[2026-06-22 13:38:44,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:38:44,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:38:44,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:38:44,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:38:46,556.556 INFO    ] ================================================
[2026-06-22 13:38:46,573.573 INFO    ] Launching Daemon at Mon Jun 22 13:38:46 IST 2026
[2026-06-22 13:38:46,584.584 INFO    ] ================================================
[2026-06-22 13:38:47,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:38:47
[2026-06-22 13:38:47,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:38:48,150.150 INFO    ] Initializing speech engine...
[2026-06-22 13:38:48,159.159 INFO    ] 2026-06-22 13:38:48
[2026-06-22 13:38:48,453.453 INFO    ] 2026-06-22 13:38:48
[2026-06-22 13:38:48,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:38:48,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:38:48,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:38:48,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:38:49,006.006 INFO    ] time= 22/06/2026 13:38:48
[2026-06-22 13:38:49,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:38:49,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:38:49,164.164 INFO    ] No existing commands found in stream
[2026-06-22 13:38:54,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:38:54,187.187 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-22 13:38:58,422.422 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:38:58,425.425 INFO    ] Checking for system updates...
[2026-06-22 13:38:58,962.962 INFO    ] 200
[2026-06-22 13:38:58,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:38:59,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:38:59,022.022 INFO    ] No update needed
[2026-06-22 13:38:59,025.025 INFO    ] Checking for camera pi updates...
[2026-06-22 13:38:59,060.060 INFO    ] 200
[2026-06-22 13:38:59,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:38:59,105.105 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:38:59,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:38:59,190.190 INFO    ] No camera update needed
[2026-06-22 13:38:59,193.193 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:38:59,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:38:59,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:38:59,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:39:01,251.251 INFO    ] ================================================
[2026-06-22 13:39:01,266.266 INFO    ] Launching Daemon at Mon Jun 22 13:39:01 IST 2026
[2026-06-22 13:39:01,277.277 INFO    ] ================================================
[2026-06-22 13:39:02,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:39:02
[2026-06-22 13:39:02,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:39:03,254.254 INFO    ] Initializing speech engine...
[2026-06-22 13:39:03,280.280 INFO    ] 2026-06-22 13:39:03
[2026-06-22 13:39:03,542.542 INFO    ] 2026-06-22 13:39:03
[2026-06-22 13:39:03,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:39:03,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:39:03,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:39:03,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:39:04,054.054 INFO    ] time= 22/06/2026 13:39:03
[2026-06-22 13:39:04,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:39:04,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:39:04,243.243 INFO    ] No existing commands found in stream
[2026-06-22 13:39:09,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:39:09,281.281 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-22 13:39:10,160.160 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:39:10,162.162 INFO    ] Checking for system updates...
[2026-06-22 13:39:10,199.199 INFO    ] 200
[2026-06-22 13:39:10,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:39:10,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:39:10,246.246 INFO    ] No update needed
[2026-06-22 13:39:10,247.247 INFO    ] Checking for camera pi updates...
[2026-06-22 13:39:10,267.267 INFO    ] 200
[2026-06-22 13:39:10,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:39:10,292.292 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:39:10,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:39:10,377.377 INFO    ] No camera update needed
[2026-06-22 13:39:10,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:39:10,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:39:10,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:39:10,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:39:12,437.437 INFO    ] ================================================
[2026-06-22 13:39:12,453.453 INFO    ] Launching Daemon at Mon Jun 22 13:39:12 IST 2026
[2026-06-22 13:39:12,464.464 INFO    ] ================================================
[2026-06-22 13:39:13,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:39:13
[2026-06-22 13:39:13,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:39:14,000.000 INFO    ] Initializing speech engine...
[2026-06-22 13:39:14,031.031 INFO    ] 2026-06-22 13:39:14
[2026-06-22 13:39:14,329.329 INFO    ] 2026-06-22 13:39:14
[2026-06-22 13:39:14,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:39:14,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:39:14,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:39:14,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:39:14,848.848 INFO    ] time= 22/06/2026 13:39:14
[2026-06-22 13:39:14,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:39:14,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:39:14,991.991 INFO    ] No existing commands found in stream
[2026-06-22 13:39:20,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:39:20,020.020 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-22 13:39:22,257.257 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:39:22,260.260 INFO    ] Checking for system updates...
[2026-06-22 13:39:22,297.297 INFO    ] 200
[2026-06-22 13:39:22,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:39:22,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:39:22,354.354 INFO    ] No update needed
[2026-06-22 13:39:22,357.357 INFO    ] Checking for camera pi updates...
[2026-06-22 13:39:22,390.390 INFO    ] 200
[2026-06-22 13:39:22,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:39:22,433.433 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:39:22,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:39:22,517.517 INFO    ] No camera update needed
[2026-06-22 13:39:22,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:39:22,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:39:22,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:39:22,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:39:24,573.573 INFO    ] ================================================
[2026-06-22 13:39:24,589.589 INFO    ] Launching Daemon at Mon Jun 22 13:39:24 IST 2026
[2026-06-22 13:39:24,600.600 INFO    ] ================================================
[2026-06-22 13:39:25,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:39:25
[2026-06-22 13:39:25,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:39:25,910.910 INFO    ] Initializing speech engine...
[2026-06-22 13:39:25,933.933 INFO    ] 2026-06-22 13:39:25
[2026-06-22 13:39:26,191.191 INFO    ] 2026-06-22 13:39:26
[2026-06-22 13:39:26,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:39:26,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:39:26,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:39:26,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:39:26,713.713 INFO    ] time= 22/06/2026 13:39:26
[2026-06-22 13:39:26,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:39:26,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:39:26,904.904 INFO    ] No existing commands found in stream
[2026-06-22 13:39:31,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:39:31,931.931 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-22 13:39:35,098.098 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:39:35,101.101 INFO    ] Checking for system updates...
[2026-06-22 13:39:35,138.138 INFO    ] 200
[2026-06-22 13:39:35,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:39:35,194.194 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:39:35,197.197 INFO    ] No update needed
[2026-06-22 13:39:35,199.199 INFO    ] Checking for camera pi updates...
[2026-06-22 13:39:35,233.233 INFO    ] 200
[2026-06-22 13:39:35,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:39:35,278.278 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:39:35,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:39:35,362.362 INFO    ] No camera update needed
[2026-06-22 13:39:35,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:39:35,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:39:35,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:39:35,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:39:37,420.420 INFO    ] ================================================
[2026-06-22 13:39:37,436.436 INFO    ] Launching Daemon at Mon Jun 22 13:39:37 IST 2026
[2026-06-22 13:39:37,447.447 INFO    ] ================================================
[2026-06-22 13:39:38,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:39:38
[2026-06-22 13:39:38,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:39:38,966.966 INFO    ] Initializing speech engine...
[2026-06-22 13:39:38,978.978 INFO    ] 2026-06-22 13:39:38
[2026-06-22 13:39:39,266.266 INFO    ] 2026-06-22 13:39:39
[2026-06-22 13:39:39,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:39:39,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:39:39,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:39:39,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:39:39,794.794 INFO    ] time= 22/06/2026 13:39:39
[2026-06-22 13:39:39,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:39:39,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:39:39,958.958 INFO    ] No existing commands found in stream
[2026-06-22 13:39:44,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:39:44,990.990 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-22 13:39:47,292.292 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:39:47,293.293 INFO    ] Checking for system updates...
[2026-06-22 13:39:47,314.314 INFO    ] 200
[2026-06-22 13:39:47,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:39:47,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:39:47,349.349 INFO    ] No update needed
[2026-06-22 13:39:47,350.350 INFO    ] Checking for camera pi updates...
[2026-06-22 13:39:47,376.376 INFO    ] 200
[2026-06-22 13:39:47,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:39:47,419.419 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:39:47,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:39:47,503.503 INFO    ] No camera update needed
[2026-06-22 13:39:47,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:39:47,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:39:47,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:39:47,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:39:49,558.558 INFO    ] ================================================
[2026-06-22 13:39:49,574.574 INFO    ] Launching Daemon at Mon Jun 22 13:39:49 IST 2026
[2026-06-22 13:39:49,585.585 INFO    ] ================================================
[2026-06-22 13:39:50,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:39:50
[2026-06-22 13:39:50,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:39:50,967.967 INFO    ] Initializing speech engine...
[2026-06-22 13:39:50,975.975 INFO    ] 2026-06-22 13:39:50
[2026-06-22 13:39:51,234.234 INFO    ] 2026-06-22 13:39:51
[2026-06-22 13:39:51,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:39:51,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:39:51,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:39:51,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:39:51,728.728 INFO    ] time= 22/06/2026 13:39:51
[2026-06-22 13:39:51,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:39:51,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:39:51,921.921 INFO    ] No existing commands found in stream
[2026-06-22 13:39:56,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:39:56,945.945 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-22 13:39:57,973.973 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:39:57,974.974 INFO    ] Checking for system updates...
[2026-06-22 13:39:57,995.995 INFO    ] 200
[2026-06-22 13:39:57,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:39:58,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:39:58,033.033 INFO    ] No update needed
[2026-06-22 13:39:58,034.034 INFO    ] Checking for camera pi updates...
[2026-06-22 13:39:58,054.054 INFO    ] 200
[2026-06-22 13:39:58,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:39:58,100.100 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:39:58,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:39:58,186.186 INFO    ] No camera update needed
[2026-06-22 13:39:58,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:39:58,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:39:58,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:39:58,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:40:00,244.244 INFO    ] ================================================
[2026-06-22 13:40:00,260.260 INFO    ] Launching Daemon at Mon Jun 22 13:40:00 IST 2026
[2026-06-22 13:40:00,271.271 INFO    ] ================================================
[2026-06-22 13:40:00,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:40:00
[2026-06-22 13:40:01,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:40:01,689.689 INFO    ] Initializing speech engine...
[2026-06-22 13:40:01,711.711 INFO    ] 2026-06-22 13:40:01
[2026-06-22 13:40:02,152.152 INFO    ] 2026-06-22 13:40:02
[2026-06-22 13:40:02,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:40:02,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:40:02,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:40:02,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:40:02,867.867 INFO    ] time= 22/06/2026 13:40:02
[2026-06-22 13:40:02,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:40:02,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:40:02,941.941 INFO    ] No existing commands found in stream
[2026-06-22 13:40:07,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:40:07,954.954 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-22 13:40:10,513.513 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:40:10,515.515 INFO    ] Checking for system updates...
[2026-06-22 13:40:10,556.556 INFO    ] 200
[2026-06-22 13:40:10,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:40:10,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:40:10,621.621 INFO    ] No update needed
[2026-06-22 13:40:10,624.624 INFO    ] Checking for camera pi updates...
[2026-06-22 13:40:10,658.658 INFO    ] 200
[2026-06-22 13:40:10,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:40:10,707.707 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:40:10,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:40:10,889.889 INFO    ] No camera update needed
[2026-06-22 13:40:10,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:40:10,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:40:10,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:40:10,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:40:12,947.947 INFO    ] ================================================
[2026-06-22 13:40:12,963.963 INFO    ] Launching Daemon at Mon Jun 22 13:40:12 IST 2026
[2026-06-22 13:40:12,974.974 INFO    ] ================================================
[2026-06-22 13:40:13,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:40:13
[2026-06-22 13:40:14,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:40:14,431.431 INFO    ] Initializing speech engine...
[2026-06-22 13:40:14,447.447 INFO    ] 2026-06-22 13:40:14
[2026-06-22 13:40:14,728.728 INFO    ] 2026-06-22 13:40:14
[2026-06-22 13:40:14,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:40:14,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:40:15,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:40:15,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:40:15,228.228 INFO    ] time= 22/06/2026 13:40:15
[2026-06-22 13:40:15,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:40:15,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:40:15,421.421 INFO    ] No existing commands found in stream
[2026-06-22 13:40:20,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:40:20,436.436 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-22 13:40:24,587.587 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:40:24,590.590 INFO    ] Checking for system updates...
[2026-06-22 13:40:24,627.627 INFO    ] 200
[2026-06-22 13:40:24,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:40:24,684.684 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:40:24,687.687 INFO    ] No update needed
[2026-06-22 13:40:24,689.689 INFO    ] Checking for camera pi updates...
[2026-06-22 13:40:24,727.727 INFO    ] 200
[2026-06-22 13:40:24,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:40:24,772.772 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:40:24,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:40:24,883.883 INFO    ] No camera update needed
[2026-06-22 13:40:24,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:40:24,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:40:24,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:40:24,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:40:26,941.941 INFO    ] ================================================
[2026-06-22 13:40:26,956.956 INFO    ] Launching Daemon at Mon Jun 22 13:40:26 IST 2026
[2026-06-22 13:40:26,967.967 INFO    ] ================================================
[2026-06-22 13:40:27,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:40:27
[2026-06-22 13:40:28,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:40:28,401.401 INFO    ] Initializing speech engine...
[2026-06-22 13:40:28,411.411 INFO    ] 2026-06-22 13:40:28
[2026-06-22 13:40:28,661.661 INFO    ] 2026-06-22 13:40:28
[2026-06-22 13:40:28,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:40:28,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:40:28,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:40:29,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:40:29,158.158 INFO    ] time= 22/06/2026 13:40:29
[2026-06-22 13:40:29,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:40:29,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:40:29,352.352 INFO    ] No existing commands found in stream
[2026-06-22 13:40:34,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:40:34,380.380 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-22 13:40:37,259.259 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:40:37,262.262 INFO    ] Checking for system updates...
[2026-06-22 13:40:37,302.302 INFO    ] 200
[2026-06-22 13:40:37,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:40:37,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:40:37,366.366 INFO    ] No update needed
[2026-06-22 13:40:37,369.369 INFO    ] Checking for camera pi updates...
[2026-06-22 13:40:37,404.404 INFO    ] 200
[2026-06-22 13:40:37,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:40:37,448.448 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:40:37,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:40:37,538.538 INFO    ] No camera update needed
[2026-06-22 13:40:37,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:40:37,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:40:37,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:40:37,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:40:39,598.598 INFO    ] ================================================
[2026-06-22 13:40:39,625.625 INFO    ] Launching Daemon at Mon Jun 22 13:40:39 IST 2026
[2026-06-22 13:40:39,636.636 INFO    ] ================================================
[2026-06-22 13:40:40,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:40:40
[2026-06-22 13:40:40,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:40:41,073.073 INFO    ] Initializing speech engine...
[2026-06-22 13:40:41,079.079 INFO    ] 2026-06-22 13:40:41
[2026-06-22 13:40:41,338.338 INFO    ] 2026-06-22 13:40:41
[2026-06-22 13:40:41,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:40:41,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:40:41,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:40:41,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:40:41,855.855 INFO    ] time= 22/06/2026 13:40:41
[2026-06-22 13:40:41,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:40:41,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:40:42,058.058 INFO    ] No existing commands found in stream
[2026-06-22 13:40:47,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:40:47,088.088 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-22 13:40:50,960.960 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:40:50,963.963 INFO    ] Checking for system updates...
[2026-06-22 13:40:51,000.000 INFO    ] 200
[2026-06-22 13:40:51,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:40:51,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:40:51,059.059 INFO    ] No update needed
[2026-06-22 13:40:51,062.062 INFO    ] Checking for camera pi updates...
[2026-06-22 13:40:51,100.100 INFO    ] 200
[2026-06-22 13:40:51,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:40:51,148.148 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:40:51,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:40:51,240.240 INFO    ] No camera update needed
[2026-06-22 13:40:51,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:40:51,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:40:51,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:40:51,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:40:53,296.296 INFO    ] ================================================
[2026-06-22 13:40:53,312.312 INFO    ] Launching Daemon at Mon Jun 22 13:40:53 IST 2026
[2026-06-22 13:40:53,323.323 INFO    ] ================================================
[2026-06-22 13:40:53,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:40:53
[2026-06-22 13:40:54,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:40:54,911.911 INFO    ] Initializing speech engine...
[2026-06-22 13:40:54,917.917 INFO    ] 2026-06-22 13:40:54
[2026-06-22 13:40:55,199.199 INFO    ] 2026-06-22 13:40:55
[2026-06-22 13:40:55,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:40:55,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:40:55,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:40:55,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:40:55,727.727 INFO    ] time= 22/06/2026 13:40:55
[2026-06-22 13:40:55,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:40:55,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:40:55,873.873 INFO    ] No existing commands found in stream
[2026-06-22 13:41:00,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:41:00,896.896 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-22 13:41:03,470.470 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:41:03,473.473 INFO    ] Checking for system updates...
[2026-06-22 13:41:03,509.509 INFO    ] 200
[2026-06-22 13:41:03,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:41:03,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:41:03,569.569 INFO    ] No update needed
[2026-06-22 13:41:03,572.572 INFO    ] Checking for camera pi updates...
[2026-06-22 13:41:03,606.606 INFO    ] 200
[2026-06-22 13:41:03,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:41:03,650.650 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:41:03,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:41:03,741.741 INFO    ] No camera update needed
[2026-06-22 13:41:03,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:41:03,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:41:03,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:41:03,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:41:05,800.800 INFO    ] ================================================
[2026-06-22 13:41:05,816.816 INFO    ] Launching Daemon at Mon Jun 22 13:41:05 IST 2026
[2026-06-22 13:41:05,827.827 INFO    ] ================================================
[2026-06-22 13:41:06,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:41:06
[2026-06-22 13:41:06,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:41:07,209.209 INFO    ] Initializing speech engine...
[2026-06-22 13:41:07,218.218 INFO    ] 2026-06-22 13:41:07
[2026-06-22 13:41:07,507.507 INFO    ] 2026-06-22 13:41:07
[2026-06-22 13:41:07,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:41:07,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:41:07,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:41:07,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:41:07,917.917 INFO    ] time= 22/06/2026 13:41:07
[2026-06-22 13:41:07,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:41:07,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:41:08,004.004 INFO    ] No existing commands found in stream
[2026-06-22 13:41:13,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:41:13,042.042 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-22 13:41:16,281.281 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:41:16,284.284 INFO    ] Checking for system updates...
[2026-06-22 13:41:16,319.319 INFO    ] 200
[2026-06-22 13:41:16,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:41:16,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:41:16,383.383 INFO    ] No update needed
[2026-06-22 13:41:16,385.385 INFO    ] Checking for camera pi updates...
[2026-06-22 13:41:16,419.419 INFO    ] 200
[2026-06-22 13:41:16,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:41:16,465.465 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:41:16,575.575 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:41:16,578.578 INFO    ] No camera update needed
[2026-06-22 13:41:16,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:41:16,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:41:16,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:41:16,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:41:18,632.632 INFO    ] ================================================
[2026-06-22 13:41:18,648.648 INFO    ] Launching Daemon at Mon Jun 22 13:41:18 IST 2026
[2026-06-22 13:41:18,659.659 INFO    ] ================================================
[2026-06-22 13:41:19,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:41:19
[2026-06-22 13:41:19,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:41:20,139.139 INFO    ] Initializing speech engine...
[2026-06-22 13:41:20,153.153 INFO    ] 2026-06-22 13:41:20
[2026-06-22 13:41:20,430.430 INFO    ] 2026-06-22 13:41:20
[2026-06-22 13:41:20,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:41:20,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:41:20,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:41:20,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:41:20,965.965 INFO    ] time= 22/06/2026 13:41:20
[2026-06-22 13:41:20,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:41:20,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:41:21,118.118 INFO    ] No existing commands found in stream
[2026-06-22 13:41:26,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:41:26,137.137 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-22 13:41:26,812.812 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:41:26,815.815 INFO    ] Checking for system updates...
[2026-06-22 13:41:26,852.852 INFO    ] 200
[2026-06-22 13:41:26,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:41:26,908.908 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:41:26,911.911 INFO    ] No update needed
[2026-06-22 13:41:26,914.914 INFO    ] Checking for camera pi updates...
[2026-06-22 13:41:26,951.951 INFO    ] 200
[2026-06-22 13:41:26,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:41:26,995.995 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:41:27,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:41:27,057.057 INFO    ] No camera update needed
[2026-06-22 13:41:27,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:41:27,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:41:27,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:41:27,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:41:29,116.116 INFO    ] ================================================
[2026-06-22 13:41:29,131.131 INFO    ] Launching Daemon at Mon Jun 22 13:41:29 IST 2026
[2026-06-22 13:41:29,142.142 INFO    ] ================================================
[2026-06-22 13:41:29,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:41:29
[2026-06-22 13:41:30,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:41:30,580.580 INFO    ] Initializing speech engine...
[2026-06-22 13:41:30,605.605 INFO    ] 2026-06-22 13:41:30
[2026-06-22 13:41:30,873.873 INFO    ] 2026-06-22 13:41:30
[2026-06-22 13:41:30,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:41:31,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:41:31,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:41:31,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:41:31,358.358 INFO    ] time= 22/06/2026 13:41:31
[2026-06-22 13:41:31,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:41:31,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:41:31,516.516 INFO    ] No existing commands found in stream
[2026-06-22 13:41:36,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:41:36,529.529 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-22 13:41:39,833.833 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:41:39,836.836 INFO    ] Checking for system updates...
[2026-06-22 13:41:39,871.871 INFO    ] 200
[2026-06-22 13:41:39,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:41:39,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:41:39,929.929 INFO    ] No update needed
[2026-06-22 13:41:39,931.931 INFO    ] Checking for camera pi updates...
[2026-06-22 13:41:39,965.965 INFO    ] 200
[2026-06-22 13:41:39,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:41:40,007.007 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:41:40,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:41:40,099.099 INFO    ] No camera update needed
[2026-06-22 13:41:40,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:41:40,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:41:40,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:41:40,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:41:42,155.155 INFO    ] ================================================
[2026-06-22 13:41:42,170.170 INFO    ] Launching Daemon at Mon Jun 22 13:41:42 IST 2026
[2026-06-22 13:41:42,182.182 INFO    ] ================================================
[2026-06-22 13:41:42,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:41:42
[2026-06-22 13:41:43,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:41:43,662.662 INFO    ] Initializing speech engine...
[2026-06-22 13:41:43,668.668 INFO    ] 2026-06-22 13:41:43
[2026-06-22 13:41:43,938.938 INFO    ] 2026-06-22 13:41:43
[2026-06-22 13:41:43,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:41:44,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:41:44,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:41:44,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:41:44,409.409 INFO    ] time= 22/06/2026 13:41:44
[2026-06-22 13:41:44,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:41:44,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:41:44,625.625 INFO    ] No existing commands found in stream
[2026-06-22 13:41:49,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:41:49,657.657 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-22 13:41:53,962.962 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:41:53,965.965 INFO    ] Checking for system updates...
[2026-06-22 13:41:54,002.002 INFO    ] 200
[2026-06-22 13:41:54,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:41:54,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:41:54,061.061 INFO    ] No update needed
[2026-06-22 13:41:54,064.064 INFO    ] Checking for camera pi updates...
[2026-06-22 13:41:54,102.102 INFO    ] 200
[2026-06-22 13:41:54,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:41:54,147.147 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:41:54,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:41:54,226.226 INFO    ] No camera update needed
[2026-06-22 13:41:54,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:41:54,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:41:54,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:41:54,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:41:56,286.286 INFO    ] ================================================
[2026-06-22 13:41:56,301.301 INFO    ] Launching Daemon at Mon Jun 22 13:41:56 IST 2026
[2026-06-22 13:41:56,312.312 INFO    ] ================================================
[2026-06-22 13:41:56,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:41:56
[2026-06-22 13:41:57,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:41:57,659.659 INFO    ] Initializing speech engine...
[2026-06-22 13:41:57,672.672 INFO    ] 2026-06-22 13:41:57
[2026-06-22 13:41:57,933.933 INFO    ] 2026-06-22 13:41:57
[2026-06-22 13:41:57,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:41:58,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:41:58,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:41:58,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:41:58,475.475 INFO    ] time= 22/06/2026 13:41:58
[2026-06-22 13:41:58,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:41:58,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:41:58,609.609 INFO    ] No existing commands found in stream
[2026-06-22 13:42:03,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:42:03,639.639 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-22 13:42:05,238.238 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:42:05,241.241 INFO    ] Checking for system updates...
[2026-06-22 13:42:05,277.277 INFO    ] 200
[2026-06-22 13:42:05,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:42:05,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:42:05,334.334 INFO    ] No update needed
[2026-06-22 13:42:05,337.337 INFO    ] Checking for camera pi updates...
[2026-06-22 13:42:05,370.370 INFO    ] 200
[2026-06-22 13:42:05,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:42:05,413.413 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:42:05,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:42:05,500.500 INFO    ] No camera update needed
[2026-06-22 13:42:05,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:42:05,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:42:05,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:42:05,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:42:07,557.557 INFO    ] ================================================
[2026-06-22 13:42:07,572.572 INFO    ] Launching Daemon at Mon Jun 22 13:42:07 IST 2026
[2026-06-22 13:42:07,583.583 INFO    ] ================================================
[2026-06-22 13:42:08,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:42:08
[2026-06-22 13:42:08,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:42:09,071.071 INFO    ] Initializing speech engine...
[2026-06-22 13:42:09,084.084 INFO    ] 2026-06-22 13:42:09
[2026-06-22 13:42:09,390.390 INFO    ] 2026-06-22 13:42:09
[2026-06-22 13:42:09,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:42:09,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:42:09,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:42:09,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:42:09,902.902 INFO    ] time= 22/06/2026 13:42:09
[2026-06-22 13:42:09,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:42:09,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:42:10,058.058 INFO    ] No existing commands found in stream
[2026-06-22 13:42:15,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:42:15,086.086 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-22 13:42:16,727.727 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:42:16,730.730 INFO    ] Checking for system updates...
[2026-06-22 13:42:16,767.767 INFO    ] 200
[2026-06-22 13:42:16,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:42:16,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:42:16,827.827 INFO    ] No update needed
[2026-06-22 13:42:16,830.830 INFO    ] Checking for camera pi updates...
[2026-06-22 13:42:16,865.865 INFO    ] 200
[2026-06-22 13:42:16,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:42:16,910.910 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:42:17,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:42:17,093.093 INFO    ] No camera update needed
[2026-06-22 13:42:17,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:42:17,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:42:17,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:42:17,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:42:19,151.151 INFO    ] ================================================
[2026-06-22 13:42:19,167.167 INFO    ] Launching Daemon at Mon Jun 22 13:42:19 IST 2026
[2026-06-22 13:42:19,178.178 INFO    ] ================================================
[2026-06-22 13:42:19,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:42:19
[2026-06-22 13:42:20,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:42:20,536.536 INFO    ] Initializing speech engine...
[2026-06-22 13:42:20,542.542 INFO    ] 2026-06-22 13:42:20
[2026-06-22 13:42:20,801.801 INFO    ] 2026-06-22 13:42:20
[2026-06-22 13:42:20,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:42:21,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:42:21,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:42:21,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:42:21,344.344 INFO    ] time= 22/06/2026 13:42:21
[2026-06-22 13:42:21,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:42:21,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:42:21,489.489 INFO    ] No existing commands found in stream
[2026-06-22 13:42:26,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:42:26,510.510 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-22 13:42:27,106.106 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:42:27,108.108 INFO    ] Checking for system updates...
[2026-06-22 13:42:27,145.145 INFO    ] 200
[2026-06-22 13:42:27,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:42:27,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:42:27,205.205 INFO    ] No update needed
[2026-06-22 13:42:27,207.207 INFO    ] Checking for camera pi updates...
[2026-06-22 13:42:27,241.241 INFO    ] 200
[2026-06-22 13:42:27,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:42:27,284.284 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:42:27,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:42:27,339.339 INFO    ] No camera update needed
[2026-06-22 13:42:27,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:42:27,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:42:27,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:42:27,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:42:29,396.396 INFO    ] ================================================
[2026-06-22 13:42:29,412.412 INFO    ] Launching Daemon at Mon Jun 22 13:42:29 IST 2026
[2026-06-22 13:42:29,423.423 INFO    ] ================================================
[2026-06-22 13:42:30,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:42:29
[2026-06-22 13:42:30,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:42:30,868.868 INFO    ] Initializing speech engine...
[2026-06-22 13:42:30,876.876 INFO    ] 2026-06-22 13:42:30
[2026-06-22 13:42:31,134.134 INFO    ] 2026-06-22 13:42:31
[2026-06-22 13:42:31,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:42:31,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:42:31,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:42:31,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:42:31,714.714 INFO    ] time= 22/06/2026 13:42:31
[2026-06-22 13:42:31,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:42:31,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:42:31,889.889 INFO    ] No existing commands found in stream
[2026-06-22 13:42:36,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:42:36,929.929 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-22 13:42:38,650.650 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:42:38,653.653 INFO    ] Checking for system updates...
[2026-06-22 13:42:38,690.690 INFO    ] 200
[2026-06-22 13:42:38,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:42:38,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:42:38,749.749 INFO    ] No update needed
[2026-06-22 13:42:38,752.752 INFO    ] Checking for camera pi updates...
[2026-06-22 13:42:38,786.786 INFO    ] 200
[2026-06-22 13:42:38,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:42:38,830.830 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:42:38,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:42:38,918.918 INFO    ] No camera update needed
[2026-06-22 13:42:38,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:42:38,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:42:38,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:42:38,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:42:40,977.977 INFO    ] ================================================
[2026-06-22 13:42:40,992.992 INFO    ] Launching Daemon at Mon Jun 22 13:42:40 IST 2026
[2026-06-22 13:42:41,003.003 INFO    ] ================================================
[2026-06-22 13:42:41,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:42:41
[2026-06-22 13:42:42,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:42:42,442.442 INFO    ] Initializing speech engine...
[2026-06-22 13:42:42,463.463 INFO    ] 2026-06-22 13:42:42
[2026-06-22 13:42:42,735.735 INFO    ] 2026-06-22 13:42:42
[2026-06-22 13:42:42,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:42:42,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:42:42,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:42:43,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:42:43,153.153 INFO    ] time= 22/06/2026 13:42:43
[2026-06-22 13:42:43,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:42:43,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:42:43,347.347 INFO    ] No existing commands found in stream
[2026-06-22 13:42:48,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:42:48,380.380 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-22 13:42:52,881.881 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:42:52,883.883 INFO    ] Checking for system updates...
[2026-06-22 13:42:52,904.904 INFO    ] 200
[2026-06-22 13:42:52,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:42:52,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:42:52,958.958 INFO    ] No update needed
[2026-06-22 13:42:52,961.961 INFO    ] Checking for camera pi updates...
[2026-06-22 13:42:52,996.996 INFO    ] 200
[2026-06-22 13:42:53,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:42:53,041.041 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:42:53,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:42:53,129.129 INFO    ] No camera update needed
[2026-06-22 13:42:53,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:42:53,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:42:53,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:42:53,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:42:55,187.187 INFO    ] ================================================
[2026-06-22 13:42:55,202.202 INFO    ] Launching Daemon at Mon Jun 22 13:42:55 IST 2026
[2026-06-22 13:42:55,213.213 INFO    ] ================================================
[2026-06-22 13:42:55,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:42:55
[2026-06-22 13:42:56,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:42:56,523.523 INFO    ] Initializing speech engine...
[2026-06-22 13:42:56,532.532 INFO    ] 2026-06-22 13:42:56
[2026-06-22 13:42:56,820.820 INFO    ] 2026-06-22 13:42:56
[2026-06-22 13:42:56,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:42:57,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:42:57,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:42:57,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:42:57,229.229 INFO    ] time= 22/06/2026 13:42:57
[2026-06-22 13:42:57,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:42:57,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:42:57,379.379 INFO    ] No existing commands found in stream
[2026-06-22 13:43:02,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:43:02,407.407 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-22 13:43:04,376.376 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:43:04,378.378 INFO    ] Checking for system updates...
[2026-06-22 13:43:04,415.415 INFO    ] 200
[2026-06-22 13:43:04,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:43:04,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:43:04,477.477 INFO    ] No update needed
[2026-06-22 13:43:04,480.480 INFO    ] Checking for camera pi updates...
[2026-06-22 13:43:04,513.513 INFO    ] 200
[2026-06-22 13:43:04,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:43:04,556.556 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:43:04,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:43:04,663.663 INFO    ] No camera update needed
[2026-06-22 13:43:04,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:43:04,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:43:04,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:43:04,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:43:06,718.718 INFO    ] ================================================
[2026-06-22 13:43:06,733.733 INFO    ] Launching Daemon at Mon Jun 22 13:43:06 IST 2026
[2026-06-22 13:43:06,743.743 INFO    ] ================================================
[2026-06-22 13:43:07,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:43:07
[2026-06-22 13:43:08,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:43:08,390.390 INFO    ] Initializing speech engine...
[2026-06-22 13:43:08,402.402 INFO    ] 2026-06-22 13:43:08
[2026-06-22 13:43:08,686.686 INFO    ] 2026-06-22 13:43:08
[2026-06-22 13:43:08,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:43:09,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:43:09,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:43:09,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:43:09,215.215 INFO    ] time= 22/06/2026 13:43:09
[2026-06-22 13:43:09,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:43:09,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:43:09,367.367 INFO    ] No existing commands found in stream
[2026-06-22 13:43:14,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:43:14,387.387 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-22 13:43:18,676.676 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:43:18,677.677 INFO    ] Checking for system updates...
[2026-06-22 13:43:18,698.698 INFO    ] 200
[2026-06-22 13:43:18,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:43:18,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:43:18,730.730 INFO    ] No update needed
[2026-06-22 13:43:18,732.732 INFO    ] Checking for camera pi updates...
[2026-06-22 13:43:18,762.762 INFO    ] 200
[2026-06-22 13:43:18,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:43:18,804.804 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:43:18,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:43:18,909.909 INFO    ] No camera update needed
[2026-06-22 13:43:18,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:43:18,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:43:18,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:43:18,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:43:20,965.965 INFO    ] ================================================
[2026-06-22 13:43:20,980.980 INFO    ] Launching Daemon at Mon Jun 22 13:43:20 IST 2026
[2026-06-22 13:43:20,992.992 INFO    ] ================================================
[2026-06-22 13:43:21,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:43:21
[2026-06-22 13:43:22,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:43:22,364.364 INFO    ] Initializing speech engine...
[2026-06-22 13:43:22,371.371 INFO    ] 2026-06-22 13:43:22
[2026-06-22 13:43:22,632.632 INFO    ] 2026-06-22 13:43:22
[2026-06-22 13:43:22,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:43:23,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:43:23,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:43:23,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:43:23,405.405 INFO    ] time= 22/06/2026 13:43:23
[2026-06-22 13:43:23,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:43:23,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:43:23,604.604 INFO    ] No existing commands found in stream
[2026-06-22 13:43:28,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:43:28,627.627 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-22 13:43:29,921.921 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:43:29,923.923 INFO    ] Checking for system updates...
[2026-06-22 13:43:29,944.944 INFO    ] 200
[2026-06-22 13:43:29,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:43:30,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:43:30,002.002 INFO    ] No update needed
[2026-06-22 13:43:30,005.005 INFO    ] Checking for camera pi updates...
[2026-06-22 13:43:30,039.039 INFO    ] 200
[2026-06-22 13:43:30,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:43:30,082.082 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:43:30,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:43:30,163.163 INFO    ] No camera update needed
[2026-06-22 13:43:30,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:43:30,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:43:30,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:43:30,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:43:32,225.225 INFO    ] ================================================
[2026-06-22 13:43:32,242.242 INFO    ] Launching Daemon at Mon Jun 22 13:43:32 IST 2026
[2026-06-22 13:43:32,254.254 INFO    ] ================================================
[2026-06-22 13:43:32,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:43:32
[2026-06-22 13:43:33,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:43:33,950.950 INFO    ] Initializing speech engine...
[2026-06-22 13:43:33,963.963 INFO    ] 2026-06-22 13:43:33
[2026-06-22 13:43:34,255.255 INFO    ] 2026-06-22 13:43:34
[2026-06-22 13:43:34,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:43:34,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:43:34,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:43:34,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:43:34,800.800 INFO    ] time= 22/06/2026 13:43:34
[2026-06-22 13:43:34,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:43:34,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:43:34,989.989 INFO    ] No existing commands found in stream
[2026-06-22 13:43:40,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:43:40,023.023 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-22 13:43:43,289.289 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:43:43,291.291 INFO    ] Checking for system updates...
[2026-06-22 13:43:43,314.314 INFO    ] 200
[2026-06-22 13:43:43,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:43:43,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:43:43,347.347 INFO    ] No update needed
[2026-06-22 13:43:43,348.348 INFO    ] Checking for camera pi updates...
[2026-06-22 13:43:43,375.375 INFO    ] 200
[2026-06-22 13:43:43,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:43:43,418.418 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:43:43,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:43:43,511.511 INFO    ] No camera update needed
[2026-06-22 13:43:43,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:43:43,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:43:43,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:43:43,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:43:45,568.568 INFO    ] ================================================
[2026-06-22 13:43:45,583.583 INFO    ] Launching Daemon at Mon Jun 22 13:43:45 IST 2026
[2026-06-22 13:43:45,594.594 INFO    ] ================================================
[2026-06-22 13:43:46,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:43:46
[2026-06-22 13:43:46,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:43:47,082.082 INFO    ] Initializing speech engine...
[2026-06-22 13:43:47,093.093 INFO    ] 2026-06-22 13:43:47
[2026-06-22 13:43:47,340.340 INFO    ] 2026-06-22 13:43:47
[2026-06-22 13:43:47,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:43:47,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:43:47,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:43:48,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:43:48,155.155 INFO    ] time= 22/06/2026 13:43:48
[2026-06-22 13:43:48,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:43:48,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:43:48,427.427 INFO    ] No existing commands found in stream
[2026-06-22 13:43:53,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:43:53,460.460 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-22 13:43:58,857.857 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:43:58,858.858 INFO    ] Checking for system updates...
[2026-06-22 13:43:58,879.879 INFO    ] 200
[2026-06-22 13:43:58,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:43:58,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:43:58,922.922 INFO    ] No update needed
[2026-06-22 13:43:58,924.924 INFO    ] Checking for camera pi updates...
[2026-06-22 13:43:58,958.958 INFO    ] 200
[2026-06-22 13:43:58,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:43:59,001.001 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:43:59,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:43:59,074.074 INFO    ] No camera update needed
[2026-06-22 13:43:59,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:43:59,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:43:59,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:43:59,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:44:01,131.131 INFO    ] ================================================
[2026-06-22 13:44:01,148.148 INFO    ] Launching Daemon at Mon Jun 22 13:44:01 IST 2026
[2026-06-22 13:44:01,159.159 INFO    ] ================================================
[2026-06-22 13:44:01,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:44:01
[2026-06-22 13:44:02,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:44:02,802.802 INFO    ] Initializing speech engine...
[2026-06-22 13:44:02,820.820 INFO    ] 2026-06-22 13:44:02
[2026-06-22 13:44:03,104.104 INFO    ] 2026-06-22 13:44:03
[2026-06-22 13:44:03,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:44:03,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:44:03,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:44:03,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:44:03,544.544 INFO    ] time= 22/06/2026 13:44:03
[2026-06-22 13:44:03,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:44:03,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:44:03,758.758 INFO    ] No existing commands found in stream
[2026-06-22 13:44:08,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:44:08,772.772 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-22 13:44:10,446.446 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:44:10,449.449 INFO    ] Checking for system updates...
[2026-06-22 13:44:10,485.485 INFO    ] 200
[2026-06-22 13:44:10,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:44:10,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:44:10,542.542 INFO    ] No update needed
[2026-06-22 13:44:10,545.545 INFO    ] Checking for camera pi updates...
[2026-06-22 13:44:10,579.579 INFO    ] 200
[2026-06-22 13:44:10,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:44:10,627.627 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:44:10,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:44:10,710.710 INFO    ] No camera update needed
[2026-06-22 13:44:10,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:44:10,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:44:10,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:44:10,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:44:12,766.766 INFO    ] ================================================
[2026-06-22 13:44:12,781.781 INFO    ] Launching Daemon at Mon Jun 22 13:44:12 IST 2026
[2026-06-22 13:44:12,793.793 INFO    ] ================================================
[2026-06-22 13:44:13,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:44:13
[2026-06-22 13:44:13,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:44:14,135.135 INFO    ] Initializing speech engine...
[2026-06-22 13:44:14,141.141 INFO    ] 2026-06-22 13:44:14
[2026-06-22 13:44:14,443.443 INFO    ] 2026-06-22 13:44:14
[2026-06-22 13:44:14,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:44:14,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:44:14,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:44:14,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:44:14,868.868 INFO    ] time= 22/06/2026 13:44:14
[2026-06-22 13:44:14,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:44:14,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:44:14,963.963 INFO    ] No existing commands found in stream
[2026-06-22 13:44:19,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:44:19,979.979 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-22 13:44:23,989.989 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:44:23,990.990 INFO    ] Checking for system updates...
[2026-06-22 13:44:24,011.011 INFO    ] 200
[2026-06-22 13:44:24,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:44:24,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:44:24,061.061 INFO    ] No update needed
[2026-06-22 13:44:24,063.063 INFO    ] Checking for camera pi updates...
[2026-06-22 13:44:24,097.097 INFO    ] 200
[2026-06-22 13:44:24,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:44:24,140.140 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:44:24,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:44:24,345.345 INFO    ] No camera update needed
[2026-06-22 13:44:24,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:44:24,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:44:24,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:44:24,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:44:26,405.405 INFO    ] ================================================
[2026-06-22 13:44:26,421.421 INFO    ] Launching Daemon at Mon Jun 22 13:44:26 IST 2026
[2026-06-22 13:44:26,434.434 INFO    ] ================================================
[2026-06-22 13:44:27,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:44:27
[2026-06-22 13:44:27,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:44:27,808.808 INFO    ] Initializing speech engine...
[2026-06-22 13:44:27,814.814 INFO    ] 2026-06-22 13:44:27
[2026-06-22 13:44:28,064.064 INFO    ] 2026-06-22 13:44:28
[2026-06-22 13:44:28,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:44:28,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:44:28,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:44:28,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:44:28,558.558 INFO    ] time= 22/06/2026 13:44:28
[2026-06-22 13:44:28,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:44:28,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:44:28,756.756 INFO    ] No existing commands found in stream
[2026-06-22 13:44:33,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:44:33,786.786 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-22 13:44:37,522.522 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:44:37,525.525 INFO    ] Checking for system updates...
[2026-06-22 13:44:37,560.560 INFO    ] 200
[2026-06-22 13:44:37,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:44:37,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:44:37,618.618 INFO    ] No update needed
[2026-06-22 13:44:37,620.620 INFO    ] Checking for camera pi updates...
[2026-06-22 13:44:37,654.654 INFO    ] 200
[2026-06-22 13:44:37,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:44:37,698.698 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:44:37,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:44:37,835.835 INFO    ] No camera update needed
[2026-06-22 13:44:37,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:44:37,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:44:37,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:44:37,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:44:39,893.893 INFO    ] ================================================
[2026-06-22 13:44:39,908.908 INFO    ] Launching Daemon at Mon Jun 22 13:44:39 IST 2026
[2026-06-22 13:44:39,919.919 INFO    ] ================================================
[2026-06-22 13:44:40,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:44:40
[2026-06-22 13:44:41,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:44:41,306.306 INFO    ] Initializing speech engine...
[2026-06-22 13:44:41,315.315 INFO    ] 2026-06-22 13:44:41
[2026-06-22 13:44:41,571.571 INFO    ] 2026-06-22 13:44:41
[2026-06-22 13:44:41,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:44:41,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:44:41,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:44:41,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:44:42,034.034 INFO    ] time= 22/06/2026 13:44:42
[2026-06-22 13:44:42,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:44:42,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:44:42,264.264 INFO    ] No existing commands found in stream
[2026-06-22 13:44:47,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:44:47,294.294 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-22 13:44:50,868.868 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:44:50,871.871 INFO    ] Checking for system updates...
[2026-06-22 13:44:50,912.912 INFO    ] 200
[2026-06-22 13:44:50,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:44:50,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:44:50,970.970 INFO    ] No update needed
[2026-06-22 13:44:50,972.972 INFO    ] Checking for camera pi updates...
[2026-06-22 13:44:51,006.006 INFO    ] 200
[2026-06-22 13:44:51,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:44:51,049.049 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:44:51,136.136 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:44:51,139.139 INFO    ] No camera update needed
[2026-06-22 13:44:51,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:44:51,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:44:51,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:44:51,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:44:53,200.200 INFO    ] ================================================
[2026-06-22 13:44:53,216.216 INFO    ] Launching Daemon at Mon Jun 22 13:44:53 IST 2026
[2026-06-22 13:44:53,227.227 INFO    ] ================================================
[2026-06-22 13:44:53,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:44:53
[2026-06-22 13:44:54,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:44:54,657.657 INFO    ] Initializing speech engine...
[2026-06-22 13:44:54,666.666 INFO    ] 2026-06-22 13:44:54
[2026-06-22 13:44:54,966.966 INFO    ] 2026-06-22 13:44:54
[2026-06-22 13:44:55,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:44:55,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:44:55,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:44:55,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:44:55,400.400 INFO    ] time= 22/06/2026 13:44:55
[2026-06-22 13:44:55,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:44:55,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:44:55,548.548 INFO    ] No existing commands found in stream
[2026-06-22 13:45:00,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:45:00,579.579 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-22 13:45:01,839.839 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:45:01,842.842 INFO    ] Checking for system updates...
[2026-06-22 13:45:01,940.940 INFO    ] 200
[2026-06-22 13:45:01,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:45:02,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:45:02,023.023 INFO    ] No update needed
[2026-06-22 13:45:02,027.027 INFO    ] Checking for camera pi updates...
[2026-06-22 13:45:02,066.066 INFO    ] 200
[2026-06-22 13:45:02,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:45:02,116.116 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:45:02,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:45:02,200.200 INFO    ] No camera update needed
[2026-06-22 13:45:02,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:45:02,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:45:02,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:45:02,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:45:04,263.263 INFO    ] ================================================
[2026-06-22 13:45:04,279.279 INFO    ] Launching Daemon at Mon Jun 22 13:45:04 IST 2026
[2026-06-22 13:45:04,289.289 INFO    ] ================================================
[2026-06-22 13:45:04,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:45:04
[2026-06-22 13:45:05,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:45:05,986.986 INFO    ] Initializing speech engine...
[2026-06-22 13:45:06,000.000 INFO    ] 2026-06-22 13:45:05
[2026-06-22 13:45:06,288.288 INFO    ] 2026-06-22 13:45:06
[2026-06-22 13:45:06,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:45:06,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:45:06,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:45:06,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:45:06,765.765 INFO    ] time= 22/06/2026 13:45:06
[2026-06-22 13:45:06,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:45:06,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:45:07,010.010 INFO    ] No existing commands found in stream
[2026-06-22 13:45:12,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:45:12,027.027 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-22 13:45:14,307.307 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:45:14,310.310 INFO    ] Checking for system updates...
[2026-06-22 13:45:14,346.346 INFO    ] 200
[2026-06-22 13:45:14,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:45:14,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:45:14,409.409 INFO    ] No update needed
[2026-06-22 13:45:14,411.411 INFO    ] Checking for camera pi updates...
[2026-06-22 13:45:14,450.450 INFO    ] 200
[2026-06-22 13:45:14,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:45:14,493.493 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:45:14,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:45:14,579.579 INFO    ] No camera update needed
[2026-06-22 13:45:14,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:45:14,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:45:14,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:45:14,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:45:16,636.636 INFO    ] ================================================
[2026-06-22 13:45:16,651.651 INFO    ] Launching Daemon at Mon Jun 22 13:45:16 IST 2026
[2026-06-22 13:45:16,661.661 INFO    ] ================================================
[2026-06-22 13:45:17,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:45:17
[2026-06-22 13:45:17,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:45:18,116.116 INFO    ] Initializing speech engine...
[2026-06-22 13:45:18,143.143 INFO    ] 2026-06-22 13:45:18
[2026-06-22 13:45:18,424.424 INFO    ] 2026-06-22 13:45:18
[2026-06-22 13:45:18,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:45:18,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:45:18,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:45:18,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:45:18,823.823 INFO    ] time= 22/06/2026 13:45:18
[2026-06-22 13:45:18,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:45:18,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:45:18,954.954 INFO    ] No existing commands found in stream
[2026-06-22 13:45:23,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:45:23,973.973 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-22 13:45:26,609.609 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:45:26,612.612 INFO    ] Checking for system updates...
[2026-06-22 13:45:26,648.648 INFO    ] 200
[2026-06-22 13:45:26,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:45:26,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:45:26,715.715 INFO    ] No update needed
[2026-06-22 13:45:26,717.717 INFO    ] Checking for camera pi updates...
[2026-06-22 13:45:26,756.756 INFO    ] 200
[2026-06-22 13:45:26,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:45:26,799.799 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:45:26,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:45:26,883.883 INFO    ] No camera update needed
[2026-06-22 13:45:26,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:45:26,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:45:26,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:45:26,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:45:28,940.940 INFO    ] ================================================
[2026-06-22 13:45:28,956.956 INFO    ] Launching Daemon at Mon Jun 22 13:45:28 IST 2026
[2026-06-22 13:45:28,967.967 INFO    ] ================================================
[2026-06-22 13:45:29,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:45:29
[2026-06-22 13:45:30,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:45:30,423.423 INFO    ] Initializing speech engine...
[2026-06-22 13:45:30,430.430 INFO    ] 2026-06-22 13:45:30
[2026-06-22 13:45:30,734.734 INFO    ] 2026-06-22 13:45:30
[2026-06-22 13:45:30,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:45:30,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:45:30,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:45:31,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:45:31,182.182 INFO    ] time= 22/06/2026 13:45:31
[2026-06-22 13:45:31,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:45:31,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:45:31,345.345 INFO    ] No existing commands found in stream
[2026-06-22 13:45:36,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:45:36,368.368 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-22 13:45:37,969.969 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:45:37,971.971 INFO    ] Checking for system updates...
[2026-06-22 13:45:38,009.009 INFO    ] 200
[2026-06-22 13:45:38,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:45:38,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:45:38,067.067 INFO    ] No update needed
[2026-06-22 13:45:38,070.070 INFO    ] Checking for camera pi updates...
[2026-06-22 13:45:38,104.104 INFO    ] 200
[2026-06-22 13:45:38,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:45:38,148.148 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:45:38,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:45:38,267.267 INFO    ] No camera update needed
[2026-06-22 13:45:38,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:45:38,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:45:38,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:45:38,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:45:40,325.325 INFO    ] ================================================
[2026-06-22 13:45:40,340.340 INFO    ] Launching Daemon at Mon Jun 22 13:45:40 IST 2026
[2026-06-22 13:45:40,351.351 INFO    ] ================================================
[2026-06-22 13:45:41,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:45:41
[2026-06-22 13:45:41,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:45:42,045.045 INFO    ] Initializing speech engine...
[2026-06-22 13:45:42,059.059 INFO    ] 2026-06-22 13:45:42
[2026-06-22 13:45:42,354.354 INFO    ] 2026-06-22 13:45:42
[2026-06-22 13:45:42,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:45:42,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:45:42,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:45:42,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:45:42,914.914 INFO    ] time= 22/06/2026 13:45:42
[2026-06-22 13:45:42,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:45:43,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:45:43,217.217 INFO    ] No existing commands found in stream
[2026-06-22 13:45:48,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:45:48,234.234 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-22 13:45:51,195.195 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:45:51,198.198 INFO    ] Checking for system updates...
[2026-06-22 13:45:51,235.235 INFO    ] 200
[2026-06-22 13:45:51,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:45:51,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:45:51,305.305 INFO    ] No update needed
[2026-06-22 13:45:51,308.308 INFO    ] Checking for camera pi updates...
[2026-06-22 13:45:51,342.342 INFO    ] 200
[2026-06-22 13:45:51,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:45:51,388.388 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:45:51,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:45:51,458.458 INFO    ] No camera update needed
[2026-06-22 13:45:51,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:45:51,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:45:51,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:45:51,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:45:53,519.519 INFO    ] ================================================
[2026-06-22 13:45:53,534.534 INFO    ] Launching Daemon at Mon Jun 22 13:45:53 IST 2026
[2026-06-22 13:45:53,546.546 INFO    ] ================================================
[2026-06-22 13:45:54,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:45:54
[2026-06-22 13:45:54,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:45:54,954.954 INFO    ] Initializing speech engine...
[2026-06-22 13:45:54,959.959 INFO    ] 2026-06-22 13:45:54
[2026-06-22 13:45:55,235.235 INFO    ] 2026-06-22 13:45:55
[2026-06-22 13:45:55,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:45:55,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:45:55,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:45:55,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:45:55,739.739 INFO    ] time= 22/06/2026 13:45:55
[2026-06-22 13:45:55,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:45:55,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:45:55,898.898 INFO    ] No existing commands found in stream
[2026-06-22 13:46:00,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:46:00,939.939 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-22 13:46:01,825.825 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:46:01,829.829 INFO    ] Checking for system updates...
[2026-06-22 13:46:01,893.893 INFO    ] 200
[2026-06-22 13:46:01,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:46:02,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:46:02,040.040 INFO    ] No update needed
[2026-06-22 13:46:02,044.044 INFO    ] Checking for camera pi updates...
[2026-06-22 13:46:02,084.084 INFO    ] 200
[2026-06-22 13:46:02,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:46:02,137.137 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:46:02,188.188 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:46:02,191.191 INFO    ] No camera update needed
[2026-06-22 13:46:02,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:46:02,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:46:02,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:46:02,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:46:04,250.250 INFO    ] ================================================
[2026-06-22 13:46:04,267.267 INFO    ] Launching Daemon at Mon Jun 22 13:46:04 IST 2026
[2026-06-22 13:46:04,278.278 INFO    ] ================================================
[2026-06-22 13:46:04,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:46:04
[2026-06-22 13:46:05,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:46:05,746.746 INFO    ] Initializing speech engine...
[2026-06-22 13:46:05,751.751 INFO    ] 2026-06-22 13:46:05
[2026-06-22 13:46:06,016.016 INFO    ] 2026-06-22 13:46:06
[2026-06-22 13:46:06,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:46:06,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:46:06,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:46:06,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:46:06,504.504 INFO    ] time= 22/06/2026 13:46:06
[2026-06-22 13:46:06,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:46:06,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:46:06,724.724 INFO    ] No existing commands found in stream
[2026-06-22 13:46:11,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:46:11,759.759 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-22 13:46:15,513.513 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:46:15,515.515 INFO    ] Checking for system updates...
[2026-06-22 13:46:15,548.548 INFO    ] 200
[2026-06-22 13:46:15,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:46:15,604.604 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:46:15,607.607 INFO    ] No update needed
[2026-06-22 13:46:15,610.610 INFO    ] Checking for camera pi updates...
[2026-06-22 13:46:15,644.644 INFO    ] 200
[2026-06-22 13:46:15,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:46:15,687.687 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:46:15,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:46:15,778.778 INFO    ] No camera update needed
[2026-06-22 13:46:15,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:46:15,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:46:15,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:46:15,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:46:17,836.836 INFO    ] ================================================
[2026-06-22 13:46:17,851.851 INFO    ] Launching Daemon at Mon Jun 22 13:46:17 IST 2026
[2026-06-22 13:46:17,862.862 INFO    ] ================================================
[2026-06-22 13:46:18,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:46:18
[2026-06-22 13:46:18,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:46:19,237.237 INFO    ] Initializing speech engine...
[2026-06-22 13:46:19,244.244 INFO    ] 2026-06-22 13:46:19
[2026-06-22 13:46:19,506.506 INFO    ] 2026-06-22 13:46:19
[2026-06-22 13:46:19,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:46:19,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:46:19,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:46:19,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:46:19,994.994 INFO    ] time= 22/06/2026 13:46:19
[2026-06-22 13:46:20,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:46:20,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:46:20,232.232 INFO    ] No existing commands found in stream
[2026-06-22 13:46:25,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:46:25,266.266 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-22 13:46:26,342.342 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:46:26,344.344 INFO    ] Checking for system updates...
[2026-06-22 13:46:26,380.380 INFO    ] 200
[2026-06-22 13:46:26,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:46:26,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:46:26,438.438 INFO    ] No update needed
[2026-06-22 13:46:26,440.440 INFO    ] Checking for camera pi updates...
[2026-06-22 13:46:26,475.475 INFO    ] 200
[2026-06-22 13:46:26,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:46:26,518.518 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:46:26,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:46:26,705.705 INFO    ] No camera update needed
[2026-06-22 13:46:26,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:46:26,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:46:26,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:46:26,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:46:28,762.762 INFO    ] ================================================
[2026-06-22 13:46:28,778.778 INFO    ] Launching Daemon at Mon Jun 22 13:46:28 IST 2026
[2026-06-22 13:46:28,789.789 INFO    ] ================================================
[2026-06-22 13:46:29,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:46:29
[2026-06-22 13:46:29,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:46:30,164.164 INFO    ] Initializing speech engine...
[2026-06-22 13:46:30,174.174 INFO    ] 2026-06-22 13:46:30
[2026-06-22 13:46:30,434.434 INFO    ] 2026-06-22 13:46:30
[2026-06-22 13:46:30,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:46:30,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:46:30,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:46:30,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:46:30,980.980 INFO    ] time= 22/06/2026 13:46:30
[2026-06-22 13:46:30,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:46:31,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:46:31,131.131 INFO    ] No existing commands found in stream
[2026-06-22 13:46:36,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:46:36,149.149 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-22 13:46:37,149.149 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:46:37,150.150 INFO    ] Checking for system updates...
[2026-06-22 13:46:37,171.171 INFO    ] 200
[2026-06-22 13:46:37,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:46:37,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:46:37,204.204 INFO    ] No update needed
[2026-06-22 13:46:37,206.206 INFO    ] Checking for camera pi updates...
[2026-06-22 13:46:37,236.236 INFO    ] 200
[2026-06-22 13:46:37,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:46:37,279.279 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:46:37,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:46:37,365.365 INFO    ] No camera update needed
[2026-06-22 13:46:37,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:46:37,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:46:37,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:46:37,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:46:39,421.421 INFO    ] ================================================
[2026-06-22 13:46:39,437.437 INFO    ] Launching Daemon at Mon Jun 22 13:46:39 IST 2026
[2026-06-22 13:46:39,448.448 INFO    ] ================================================
[2026-06-22 13:46:40,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:46:40
[2026-06-22 13:46:40,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:46:40,893.893 INFO    ] Initializing speech engine...
[2026-06-22 13:46:40,903.903 INFO    ] 2026-06-22 13:46:40
[2026-06-22 13:46:41,153.153 INFO    ] 2026-06-22 13:46:41
[2026-06-22 13:46:41,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:46:41,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:46:41,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:46:41,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:46:41,695.695 INFO    ] time= 22/06/2026 13:46:41
[2026-06-22 13:46:41,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:46:41,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:46:41,862.862 INFO    ] No existing commands found in stream
[2026-06-22 13:46:46,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:46:46,877.877 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-22 13:46:48,936.936 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:46:48,939.939 INFO    ] Checking for system updates...
[2026-06-22 13:46:48,977.977 INFO    ] 200
[2026-06-22 13:46:48,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:46:49,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:46:49,035.035 INFO    ] No update needed
[2026-06-22 13:46:49,037.037 INFO    ] Checking for camera pi updates...
[2026-06-22 13:46:49,076.076 INFO    ] 200
[2026-06-22 13:46:49,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:46:49,126.126 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:46:49,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:46:49,209.209 INFO    ] No camera update needed
[2026-06-22 13:46:49,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:46:49,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:46:49,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:46:49,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:46:51,264.264 INFO    ] ================================================
[2026-06-22 13:46:51,280.280 INFO    ] Launching Daemon at Mon Jun 22 13:46:51 IST 2026
[2026-06-22 13:46:51,291.291 INFO    ] ================================================
[2026-06-22 13:46:51,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:46:51
[2026-06-22 13:46:52,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:46:52,649.649 INFO    ] Initializing speech engine...
[2026-06-22 13:46:52,659.659 INFO    ] 2026-06-22 13:46:52
[2026-06-22 13:46:52,963.963 INFO    ] 2026-06-22 13:46:52
[2026-06-22 13:46:52,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:46:53,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:46:53,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:46:53,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:46:53,330.330 INFO    ] time= 22/06/2026 13:46:53
[2026-06-22 13:46:53,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:46:53,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:46:53,487.487 INFO    ] No existing commands found in stream
[2026-06-22 13:46:58,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:46:58,501.501 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-22 13:47:02,046.046 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:47:02,050.050 INFO    ] Checking for system updates...
[2026-06-22 13:47:02,092.092 INFO    ] 200
[2026-06-22 13:47:02,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:47:02,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:47:02,164.164 INFO    ] No update needed
[2026-06-22 13:47:02,170.170 INFO    ] Checking for camera pi updates...
[2026-06-22 13:47:02,218.218 INFO    ] 200
[2026-06-22 13:47:02,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:47:02,277.277 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:47:02,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:47:02,334.334 INFO    ] No camera update needed
[2026-06-22 13:47:02,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:47:02,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:47:02,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:47:02,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:47:04,396.396 INFO    ] ================================================
[2026-06-22 13:47:04,413.413 INFO    ] Launching Daemon at Mon Jun 22 13:47:04 IST 2026
[2026-06-22 13:47:04,424.424 INFO    ] ================================================
[2026-06-22 13:47:04,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:47:04
[2026-06-22 13:47:05,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:47:05,833.833 INFO    ] Initializing speech engine...
[2026-06-22 13:47:05,856.856 INFO    ] 2026-06-22 13:47:05
[2026-06-22 13:47:06,110.110 INFO    ] 2026-06-22 13:47:06
[2026-06-22 13:47:06,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:47:06,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:47:06,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:47:06,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:47:06,578.578 INFO    ] time= 22/06/2026 13:47:06
[2026-06-22 13:47:06,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:47:06,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:47:06,846.846 INFO    ] No existing commands found in stream
[2026-06-22 13:47:11,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:47:11,880.880 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-22 13:47:12,590.590 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:47:12,593.593 INFO    ] Checking for system updates...
[2026-06-22 13:47:12,630.630 INFO    ] 200
[2026-06-22 13:47:12,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:47:12,694.694 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:47:12,697.697 INFO    ] No update needed
[2026-06-22 13:47:12,699.699 INFO    ] Checking for camera pi updates...
[2026-06-22 13:47:12,733.733 INFO    ] 200
[2026-06-22 13:47:12,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:47:12,782.782 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:47:12,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:47:12,864.864 INFO    ] No camera update needed
[2026-06-22 13:47:12,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:47:12,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:47:12,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:47:12,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:47:14,924.924 INFO    ] ================================================
[2026-06-22 13:47:14,939.939 INFO    ] Launching Daemon at Mon Jun 22 13:47:14 IST 2026
[2026-06-22 13:47:14,950.950 INFO    ] ================================================
[2026-06-22 13:47:15,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:47:15
[2026-06-22 13:47:16,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:47:16,331.331 INFO    ] Initializing speech engine...
[2026-06-22 13:47:16,341.341 INFO    ] 2026-06-22 13:47:16
[2026-06-22 13:47:16,610.610 INFO    ] 2026-06-22 13:47:16
[2026-06-22 13:47:16,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:47:16,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:47:16,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:47:17,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:47:17,029.029 INFO    ] time= 22/06/2026 13:47:17
[2026-06-22 13:47:17,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:47:17,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:47:17,117.117 INFO    ] No existing commands found in stream
[2026-06-22 13:47:22,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:47:22,156.156 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-22 13:47:26,299.299 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:47:26,301.301 INFO    ] Checking for system updates...
[2026-06-22 13:47:26,341.341 INFO    ] 200
[2026-06-22 13:47:26,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:47:26,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:47:26,398.398 INFO    ] No update needed
[2026-06-22 13:47:26,400.400 INFO    ] Checking for camera pi updates...
[2026-06-22 13:47:26,434.434 INFO    ] 200
[2026-06-22 13:47:26,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:47:26,481.481 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:47:26,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:47:26,570.570 INFO    ] No camera update needed
[2026-06-22 13:47:26,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:47:26,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:47:26,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:47:26,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:47:28,626.626 INFO    ] ================================================
[2026-06-22 13:47:28,641.641 INFO    ] Launching Daemon at Mon Jun 22 13:47:28 IST 2026
[2026-06-22 13:47:28,652.652 INFO    ] ================================================
[2026-06-22 13:47:29,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:47:29
[2026-06-22 13:47:29,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:47:30,019.019 INFO    ] Initializing speech engine...
[2026-06-22 13:47:30,025.025 INFO    ] 2026-06-22 13:47:30
[2026-06-22 13:47:30,286.286 INFO    ] 2026-06-22 13:47:30
[2026-06-22 13:47:30,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:47:30,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:47:30,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:47:30,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:47:30,811.811 INFO    ] time= 22/06/2026 13:47:30
[2026-06-22 13:47:30,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:47:30,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:47:30,979.979 INFO    ] No existing commands found in stream
[2026-06-22 13:47:35,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:47:35,998.998 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-22 13:47:36,503.503 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:47:36,506.506 INFO    ] Checking for system updates...
[2026-06-22 13:47:36,543.543 INFO    ] 200
[2026-06-22 13:47:36,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:47:36,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:47:36,602.602 INFO    ] No update needed
[2026-06-22 13:47:36,605.605 INFO    ] Checking for camera pi updates...
[2026-06-22 13:47:36,640.640 INFO    ] 200
[2026-06-22 13:47:36,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:47:36,689.689 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:47:36,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:47:36,772.772 INFO    ] No camera update needed
[2026-06-22 13:47:36,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:47:36,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:47:36,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:47:36,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:47:38,828.828 INFO    ] ================================================
[2026-06-22 13:47:38,843.843 INFO    ] Launching Daemon at Mon Jun 22 13:47:38 IST 2026
[2026-06-22 13:47:38,854.854 INFO    ] ================================================
[2026-06-22 13:47:39,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:47:39
[2026-06-22 13:47:40,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:47:40,272.272 INFO    ] Initializing speech engine...
[2026-06-22 13:47:40,285.285 INFO    ] 2026-06-22 13:47:40
[2026-06-22 13:47:40,571.571 INFO    ] 2026-06-22 13:47:40
[2026-06-22 13:47:40,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:47:40,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:47:40,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:47:40,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:47:40,992.992 INFO    ] time= 22/06/2026 13:47:40
[2026-06-22 13:47:40,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:47:41,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:47:41,122.122 INFO    ] No existing commands found in stream
[2026-06-22 13:47:46,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:47:46,150.150 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-22 13:47:48,857.857 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:47:48,860.860 INFO    ] Checking for system updates...
[2026-06-22 13:47:48,899.899 INFO    ] 200
[2026-06-22 13:47:48,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:47:48,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:47:48,957.957 INFO    ] No update needed
[2026-06-22 13:47:48,959.959 INFO    ] Checking for camera pi updates...
[2026-06-22 13:47:48,997.997 INFO    ] 200
[2026-06-22 13:47:48,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:47:49,044.044 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:47:49,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:47:49,152.152 INFO    ] No camera update needed
[2026-06-22 13:47:49,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:47:49,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:47:49,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:47:49,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:47:51,208.208 INFO    ] ================================================
[2026-06-22 13:47:51,222.222 INFO    ] Launching Daemon at Mon Jun 22 13:47:51 IST 2026
[2026-06-22 13:47:51,233.233 INFO    ] ================================================
[2026-06-22 13:47:51,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:47:51
[2026-06-22 13:47:52,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:47:52,573.573 INFO    ] Initializing speech engine...
[2026-06-22 13:47:52,582.582 INFO    ] 2026-06-22 13:47:52
[2026-06-22 13:47:52,833.833 INFO    ] 2026-06-22 13:47:52
[2026-06-22 13:47:52,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:47:53,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:47:53,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:47:53,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:47:53,210.210 INFO    ] time= 22/06/2026 13:47:53
[2026-06-22 13:47:53,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:47:53,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:47:53,399.399 INFO    ] No existing commands found in stream
[2026-06-22 13:47:58,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:47:58,424.424 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-22 13:48:01,461.461 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:48:01,464.464 INFO    ] Checking for system updates...
[2026-06-22 13:48:01,517.517 INFO    ] 200
[2026-06-22 13:48:01,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:48:01,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:48:01,659.659 INFO    ] No update needed
[2026-06-22 13:48:01,663.663 INFO    ] Checking for camera pi updates...
[2026-06-22 13:48:01,729.729 INFO    ] 200
[2026-06-22 13:48:01,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:48:01,800.800 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:48:01,900.900 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:48:01,903.903 INFO    ] No camera update needed
[2026-06-22 13:48:01,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:48:01,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:48:01,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:48:01,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:48:04,999.999 INFO    ] ================================================
[2026-06-22 13:48:04,015.015 INFO    ] Launching Daemon at Mon Jun 22 13:48:04 IST 2026
[2026-06-22 13:48:04,026.026 INFO    ] ================================================
[2026-06-22 13:48:04,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:48:04
[2026-06-22 13:48:05,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:48:05,458.458 INFO    ] Initializing speech engine...
[2026-06-22 13:48:05,474.474 INFO    ] 2026-06-22 13:48:05
[2026-06-22 13:48:05,762.762 INFO    ] 2026-06-22 13:48:05
[2026-06-22 13:48:05,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:48:06,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:48:06,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:48:06,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:48:06,318.318 INFO    ] time= 22/06/2026 13:48:06
[2026-06-22 13:48:06,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:48:06,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:48:06,476.476 INFO    ] No existing commands found in stream
[2026-06-22 13:48:11,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:48:11,495.495 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-22 13:48:15,629.629 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:48:15,631.631 INFO    ] Checking for system updates...
[2026-06-22 13:48:15,668.668 INFO    ] 200
[2026-06-22 13:48:15,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:48:15,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:48:15,727.727 INFO    ] No update needed
[2026-06-22 13:48:15,729.729 INFO    ] Checking for camera pi updates...
[2026-06-22 13:48:15,767.767 INFO    ] 200
[2026-06-22 13:48:15,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:48:15,811.811 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:48:15,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:48:15,892.892 INFO    ] No camera update needed
[2026-06-22 13:48:15,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:48:15,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:48:15,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:48:15,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:48:17,949.949 INFO    ] ================================================
[2026-06-22 13:48:17,965.965 INFO    ] Launching Daemon at Mon Jun 22 13:48:17 IST 2026
[2026-06-22 13:48:17,976.976 INFO    ] ================================================
[2026-06-22 13:48:18,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:48:18
[2026-06-22 13:48:19,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:48:19,419.419 INFO    ] Initializing speech engine...
[2026-06-22 13:48:19,428.428 INFO    ] 2026-06-22 13:48:19
[2026-06-22 13:48:19,727.727 INFO    ] 2026-06-22 13:48:19
[2026-06-22 13:48:19,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:48:19,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:48:19,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:48:20,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:48:20,118.118 INFO    ] time= 22/06/2026 13:48:20
[2026-06-22 13:48:20,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:48:20,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:48:20,248.248 INFO    ] No existing commands found in stream
[2026-06-22 13:48:25,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:48:25,263.263 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-22 13:48:26,436.436 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:48:26,439.439 INFO    ] Checking for system updates...
[2026-06-22 13:48:26,476.476 INFO    ] 200
[2026-06-22 13:48:26,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:48:26,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:48:26,555.555 INFO    ] No update needed
[2026-06-22 13:48:26,557.557 INFO    ] Checking for camera pi updates...
[2026-06-22 13:48:26,595.595 INFO    ] 200
[2026-06-22 13:48:26,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:48:26,644.644 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:48:26,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:48:26,711.711 INFO    ] No camera update needed
[2026-06-22 13:48:26,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:48:26,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:48:26,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:48:26,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:48:28,769.769 INFO    ] ================================================
[2026-06-22 13:48:28,784.784 INFO    ] Launching Daemon at Mon Jun 22 13:48:28 IST 2026
[2026-06-22 13:48:28,794.794 INFO    ] ================================================
[2026-06-22 13:48:29,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:48:29
[2026-06-22 13:48:29,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:48:30,217.217 INFO    ] Initializing speech engine...
[2026-06-22 13:48:30,233.233 INFO    ] 2026-06-22 13:48:30
[2026-06-22 13:48:30,526.526 INFO    ] 2026-06-22 13:48:30
[2026-06-22 13:48:30,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:48:30,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:48:30,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:48:30,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:48:30,893.893 INFO    ] time= 22/06/2026 13:48:30
[2026-06-22 13:48:30,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:48:30,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:48:31,053.053 INFO    ] No existing commands found in stream
[2026-06-22 13:48:36,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:48:36,066.066 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-22 13:48:37,638.638 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:48:37,641.641 INFO    ] Checking for system updates...
[2026-06-22 13:48:37,677.677 INFO    ] 200
[2026-06-22 13:48:37,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:48:37,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:48:37,747.747 INFO    ] No update needed
[2026-06-22 13:48:37,750.750 INFO    ] Checking for camera pi updates...
[2026-06-22 13:48:37,786.786 INFO    ] 200
[2026-06-22 13:48:37,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:48:37,831.831 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:48:37,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:48:37,932.932 INFO    ] No camera update needed
[2026-06-22 13:48:37,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:48:37,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:48:37,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:48:37,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:48:39,990.990 INFO    ] ================================================
[2026-06-22 13:48:40,005.005 INFO    ] Launching Daemon at Mon Jun 22 13:48:39 IST 2026
[2026-06-22 13:48:40,016.016 INFO    ] ================================================
[2026-06-22 13:48:40,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:48:40
[2026-06-22 13:48:41,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:48:41,385.385 INFO    ] Initializing speech engine...
[2026-06-22 13:48:41,393.393 INFO    ] 2026-06-22 13:48:41
[2026-06-22 13:48:41,646.646 INFO    ] 2026-06-22 13:48:41
[2026-06-22 13:48:41,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:48:41,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:48:41,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:48:42,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:48:42,128.128 INFO    ] time= 22/06/2026 13:48:42
[2026-06-22 13:48:42,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:48:42,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:48:42,349.349 INFO    ] No existing commands found in stream
[2026-06-22 13:48:47,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:48:47,372.372 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-22 13:48:50,322.322 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:48:50,323.323 INFO    ] Checking for system updates...
[2026-06-22 13:48:50,345.345 INFO    ] 200
[2026-06-22 13:48:50,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:48:50,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:48:50,379.379 INFO    ] No update needed
[2026-06-22 13:48:50,380.380 INFO    ] Checking for camera pi updates...
[2026-06-22 13:48:50,401.401 INFO    ] 200
[2026-06-22 13:48:50,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:48:50,450.450 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:48:50,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:48:50,536.536 INFO    ] No camera update needed
[2026-06-22 13:48:50,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:48:50,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:48:50,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:48:50,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:48:52,598.598 INFO    ] ================================================
[2026-06-22 13:48:52,613.613 INFO    ] Launching Daemon at Mon Jun 22 13:48:52 IST 2026
[2026-06-22 13:48:52,625.625 INFO    ] ================================================
[2026-06-22 13:48:53,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:48:53
[2026-06-22 13:48:53,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:48:54,063.063 INFO    ] Initializing speech engine...
[2026-06-22 13:48:54,073.073 INFO    ] 2026-06-22 13:48:54
[2026-06-22 13:48:54,342.342 INFO    ] 2026-06-22 13:48:54
[2026-06-22 13:48:54,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:48:54,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:48:54,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:48:54,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:48:54,844.844 INFO    ] time= 22/06/2026 13:48:54
[2026-06-22 13:48:54,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:48:54,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:48:55,031.031 INFO    ] No existing commands found in stream
[2026-06-22 13:49:00,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:49:00,059.059 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-22 13:49:01,734.734 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:49:01,738.738 INFO    ] Checking for system updates...
[2026-06-22 13:49:01,815.815 INFO    ] 200
[2026-06-22 13:49:01,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:49:01,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:49:01,928.928 INFO    ] No update needed
[2026-06-22 13:49:01,931.931 INFO    ] Checking for camera pi updates...
[2026-06-22 13:49:01,974.974 INFO    ] 200
[2026-06-22 13:49:01,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:49:02,073.073 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:49:02,148.148 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:49:02,151.151 INFO    ] No camera update needed
[2026-06-22 13:49:02,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:49:02,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:49:02,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:49:02,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:49:04,214.214 INFO    ] ================================================
[2026-06-22 13:49:04,230.230 INFO    ] Launching Daemon at Mon Jun 22 13:49:04 IST 2026
[2026-06-22 13:49:04,240.240 INFO    ] ================================================
[2026-06-22 13:49:04,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:49:04
[2026-06-22 13:49:05,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:49:05,748.748 INFO    ] Initializing speech engine...
[2026-06-22 13:49:05,755.755 INFO    ] 2026-06-22 13:49:05
[2026-06-22 13:49:06,049.049 INFO    ] 2026-06-22 13:49:06
[2026-06-22 13:49:06,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:49:06,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:49:06,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:49:06,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:49:06,464.464 INFO    ] time= 22/06/2026 13:49:06
[2026-06-22 13:49:06,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:49:06,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:49:06,654.654 INFO    ] No existing commands found in stream
[2026-06-22 13:49:11,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:49:11,693.693 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-22 13:49:15,798.798 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:49:15,800.800 INFO    ] Checking for system updates...
[2026-06-22 13:49:15,837.837 INFO    ] 200
[2026-06-22 13:49:15,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:49:15,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:49:15,899.899 INFO    ] No update needed
[2026-06-22 13:49:15,901.901 INFO    ] Checking for camera pi updates...
[2026-06-22 13:49:15,939.939 INFO    ] 200
[2026-06-22 13:49:15,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:49:15,981.981 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:49:16,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:49:16,034.034 INFO    ] No camera update needed
[2026-06-22 13:49:16,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:49:16,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:49:16,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:49:16,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:49:18,089.089 INFO    ] ================================================
[2026-06-22 13:49:18,105.105 INFO    ] Launching Daemon at Mon Jun 22 13:49:18 IST 2026
[2026-06-22 13:49:18,116.116 INFO    ] ================================================
[2026-06-22 13:49:18,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:49:18
[2026-06-22 13:49:19,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:49:19,638.638 INFO    ] Initializing speech engine...
[2026-06-22 13:49:19,640.640 INFO    ] 2026-06-22 13:49:19
[2026-06-22 13:49:19,942.942 INFO    ] 2026-06-22 13:49:19
[2026-06-22 13:49:19,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:49:20,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:49:20,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:49:20,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:49:20,426.426 INFO    ] time= 22/06/2026 13:49:20
[2026-06-22 13:49:20,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:49:20,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:49:20,657.657 INFO    ] No existing commands found in stream
[2026-06-22 13:49:25,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:49:25,682.682 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-22 13:49:27,631.631 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:49:27,634.634 INFO    ] Checking for system updates...
[2026-06-22 13:49:27,675.675 INFO    ] 200
[2026-06-22 13:49:27,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:49:27,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:49:27,741.741 INFO    ] No update needed
[2026-06-22 13:49:27,744.744 INFO    ] Checking for camera pi updates...
[2026-06-22 13:49:27,781.781 INFO    ] 200
[2026-06-22 13:49:27,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:49:27,826.826 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:49:27,908.908 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:49:27,911.911 INFO    ] No camera update needed
[2026-06-22 13:49:27,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:49:27,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:49:27,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:49:27,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:49:29,970.970 INFO    ] ================================================
[2026-06-22 13:49:29,985.985 INFO    ] Launching Daemon at Mon Jun 22 13:49:29 IST 2026
[2026-06-22 13:49:30,996.996 INFO    ] ================================================
[2026-06-22 13:49:30,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:49:30
[2026-06-22 13:49:31,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:49:31,331.331 INFO    ] Initializing speech engine...
[2026-06-22 13:49:31,340.340 INFO    ] 2026-06-22 13:49:31
[2026-06-22 13:49:31,593.593 INFO    ] 2026-06-22 13:49:31
[2026-06-22 13:49:31,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:49:31,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:49:31,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:49:32,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:49:32,105.105 INFO    ] time= 22/06/2026 13:49:32
[2026-06-22 13:49:32,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:49:32,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:49:32,303.303 INFO    ] No existing commands found in stream
[2026-06-22 13:49:37,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:49:37,331.331 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-22 13:49:38,958.958 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:49:38,961.961 INFO    ] Checking for system updates...
[2026-06-22 13:49:38,997.997 INFO    ] 200
[2026-06-22 13:49:38,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:49:39,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:49:39,054.054 INFO    ] No update needed
[2026-06-22 13:49:39,057.057 INFO    ] Checking for camera pi updates...
[2026-06-22 13:49:39,090.090 INFO    ] 200
[2026-06-22 13:49:39,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:49:39,136.136 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:49:39,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:49:39,224.224 INFO    ] No camera update needed
[2026-06-22 13:49:39,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:49:39,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:49:39,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:49:39,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:49:41,282.282 INFO    ] ================================================
[2026-06-22 13:49:41,298.298 INFO    ] Launching Daemon at Mon Jun 22 13:49:41 IST 2026
[2026-06-22 13:49:41,310.310 INFO    ] ================================================
[2026-06-22 13:49:41,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:49:41
[2026-06-22 13:49:42,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:49:42,958.958 INFO    ] Initializing speech engine...
[2026-06-22 13:49:42,970.970 INFO    ] 2026-06-22 13:49:42
[2026-06-22 13:49:43,248.248 INFO    ] 2026-06-22 13:49:43
[2026-06-22 13:49:43,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:49:43,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:49:43,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:49:43,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:49:43,779.779 INFO    ] time= 22/06/2026 13:49:43
[2026-06-22 13:49:43,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:49:43,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:49:43,967.967 INFO    ] No existing commands found in stream
[2026-06-22 13:49:48,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:49:49,000.000 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-22 13:49:52,328.328 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:49:52,331.331 INFO    ] Checking for system updates...
[2026-06-22 13:49:52,370.370 INFO    ] 200
[2026-06-22 13:49:52,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:49:52,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:49:52,431.431 INFO    ] No update needed
[2026-06-22 13:49:52,434.434 INFO    ] Checking for camera pi updates...
[2026-06-22 13:49:52,469.469 INFO    ] 200
[2026-06-22 13:49:52,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:49:52,519.519 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:49:52,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:49:52,609.609 INFO    ] No camera update needed
[2026-06-22 13:49:52,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:49:52,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:49:52,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:49:52,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:49:54,669.669 INFO    ] ================================================
[2026-06-22 13:49:54,684.684 INFO    ] Launching Daemon at Mon Jun 22 13:49:54 IST 2026
[2026-06-22 13:49:54,696.696 INFO    ] ================================================
[2026-06-22 13:49:55,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:49:55
[2026-06-22 13:49:55,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:49:56,025.025 INFO    ] Initializing speech engine...
[2026-06-22 13:49:56,032.032 INFO    ] 2026-06-22 13:49:56
[2026-06-22 13:49:56,326.326 INFO    ] 2026-06-22 13:49:56
[2026-06-22 13:49:56,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:49:56,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:49:56,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:49:56,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:49:56,723.723 INFO    ] time= 22/06/2026 13:49:56
[2026-06-22 13:49:56,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:49:56,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:49:56,833.833 INFO    ] No existing commands found in stream
[2026-06-22 13:50:01,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:50:01,852.852 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-22 13:50:08,128.128 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:50:08,129.129 INFO    ] Checking for system updates...
[2026-06-22 13:50:08,151.151 INFO    ] 200
[2026-06-22 13:50:08,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:50:08,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:50:08,184.184 INFO    ] No update needed
[2026-06-22 13:50:08,186.186 INFO    ] Checking for camera pi updates...
[2026-06-22 13:50:08,213.213 INFO    ] 200
[2026-06-22 13:50:08,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:50:08,257.257 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:50:08,353.353 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:50:08,356.356 INFO    ] No camera update needed
[2026-06-22 13:50:08,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:50:08,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:50:08,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:50:08,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:50:10,412.412 INFO    ] ================================================
[2026-06-22 13:50:10,428.428 INFO    ] Launching Daemon at Mon Jun 22 13:50:10 IST 2026
[2026-06-22 13:50:10,439.439 INFO    ] ================================================
[2026-06-22 13:50:11,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:50:11
[2026-06-22 13:50:11,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:50:11,878.878 INFO    ] Initializing speech engine...
[2026-06-22 13:50:11,886.886 INFO    ] 2026-06-22 13:50:11
[2026-06-22 13:50:12,138.138 INFO    ] 2026-06-22 13:50:12
[2026-06-22 13:50:12,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:50:12,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:50:12,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:50:12,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:50:12,696.696 INFO    ] time= 22/06/2026 13:50:12
[2026-06-22 13:50:12,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:50:12,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:50:12,837.837 INFO    ] No existing commands found in stream
[2026-06-22 13:50:17,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:50:17,872.872 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-22 13:50:21,836.836 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:50:21,839.839 INFO    ] Checking for system updates...
[2026-06-22 13:50:21,875.875 INFO    ] 200
[2026-06-22 13:50:21,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:50:21,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:50:21,933.933 INFO    ] No update needed
[2026-06-22 13:50:21,935.935 INFO    ] Checking for camera pi updates...
[2026-06-22 13:50:21,969.969 INFO    ] 200
[2026-06-22 13:50:21,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:50:22,012.012 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:50:22,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:50:22,099.099 INFO    ] No camera update needed
[2026-06-22 13:50:22,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:50:22,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:50:22,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:50:22,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:50:24,156.156 INFO    ] ================================================
[2026-06-22 13:50:24,172.172 INFO    ] Launching Daemon at Mon Jun 22 13:50:24 IST 2026
[2026-06-22 13:50:24,183.183 INFO    ] ================================================
[2026-06-22 13:50:24,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:50:24
[2026-06-22 13:50:25,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:50:25,613.613 INFO    ] Initializing speech engine...
[2026-06-22 13:50:25,622.622 INFO    ] 2026-06-22 13:50:25
[2026-06-22 13:50:25,910.910 INFO    ] 2026-06-22 13:50:25
[2026-06-22 13:50:25,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:50:26,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:50:26,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:50:26,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:50:26,409.409 INFO    ] time= 22/06/2026 13:50:26
[2026-06-22 13:50:26,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:50:26,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:50:26,619.619 INFO    ] No existing commands found in stream
[2026-06-22 13:50:31,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:50:31,641.641 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-22 13:50:32,328.328 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:50:32,331.331 INFO    ] Checking for system updates...
[2026-06-22 13:50:32,380.380 INFO    ] 200
[2026-06-22 13:50:32,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:50:32,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:50:32,451.451 INFO    ] No update needed
[2026-06-22 13:50:32,454.454 INFO    ] Checking for camera pi updates...
[2026-06-22 13:50:32,496.496 INFO    ] 200
[2026-06-22 13:50:32,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:50:32,551.551 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:50:32,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:50:32,605.605 INFO    ] No camera update needed
[2026-06-22 13:50:32,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:50:32,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:50:32,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:50:32,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:50:34,665.665 INFO    ] ================================================
[2026-06-22 13:50:34,680.680 INFO    ] Launching Daemon at Mon Jun 22 13:50:34 IST 2026
[2026-06-22 13:50:34,692.692 INFO    ] ================================================
[2026-06-22 13:50:35,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:50:35
[2026-06-22 13:50:35,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:50:36,181.181 INFO    ] Initializing speech engine...
[2026-06-22 13:50:36,194.194 INFO    ] 2026-06-22 13:50:36
[2026-06-22 13:50:36,402.402 INFO    ] 2026-06-22 13:50:36
[2026-06-22 13:50:36,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:50:36,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:50:36,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:50:36,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:50:36,916.916 INFO    ] time= 22/06/2026 13:50:36
[2026-06-22 13:50:36,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:50:36,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:50:37,103.103 INFO    ] No existing commands found in stream
[2026-06-22 13:50:42,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:50:42,128.128 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-22 13:50:42,900.900 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:50:42,903.903 INFO    ] Checking for system updates...
[2026-06-22 13:50:42,941.941 INFO    ] 200
[2026-06-22 13:50:42,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:50:42,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:50:42,999.999 INFO    ] No update needed
[2026-06-22 13:50:43,001.001 INFO    ] Checking for camera pi updates...
[2026-06-22 13:50:43,023.023 INFO    ] 200
[2026-06-22 13:50:43,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:50:43,048.048 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:50:43,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:50:43,227.227 INFO    ] No camera update needed
[2026-06-22 13:50:43,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:50:43,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:50:43,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:50:43,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:50:45,287.287 INFO    ] ================================================
[2026-06-22 13:50:45,305.305 INFO    ] Launching Daemon at Mon Jun 22 13:50:45 IST 2026
[2026-06-22 13:50:45,317.317 INFO    ] ================================================
[2026-06-22 13:50:46,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:50:46
[2026-06-22 13:50:46,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:50:47,085.085 INFO    ] Initializing speech engine...
[2026-06-22 13:50:47,094.094 INFO    ] 2026-06-22 13:50:47
[2026-06-22 13:50:47,404.404 INFO    ] 2026-06-22 13:50:47
[2026-06-22 13:50:47,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:50:47,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:50:47,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:50:47,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:50:47,900.900 INFO    ] time= 22/06/2026 13:50:47
[2026-06-22 13:50:47,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:50:47,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:50:48,043.043 INFO    ] No existing commands found in stream
[2026-06-22 13:50:53,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:50:53,058.058 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-22 13:50:57,102.102 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:50:57,104.104 INFO    ] Checking for system updates...
[2026-06-22 13:50:57,141.141 INFO    ] 200
[2026-06-22 13:50:57,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:50:57,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:50:57,226.226 INFO    ] No update needed
[2026-06-22 13:50:57,229.229 INFO    ] Checking for camera pi updates...
[2026-06-22 13:50:57,263.263 INFO    ] 200
[2026-06-22 13:50:57,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:50:57,308.308 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:50:57,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:50:57,397.397 INFO    ] No camera update needed
[2026-06-22 13:50:57,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:50:57,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:50:57,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:50:57,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:50:59,453.453 INFO    ] ================================================
[2026-06-22 13:50:59,469.469 INFO    ] Launching Daemon at Mon Jun 22 13:50:59 IST 2026
[2026-06-22 13:50:59,481.481 INFO    ] ================================================
[2026-06-22 13:51:00,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:51:00
[2026-06-22 13:51:00,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:51:00,842.842 INFO    ] Initializing speech engine...
[2026-06-22 13:51:00,849.849 INFO    ] 2026-06-22 13:51:00
[2026-06-22 13:51:01,153.153 INFO    ] 2026-06-22 13:51:01
[2026-06-22 13:51:01,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:51:01,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:51:01,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:51:01,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:51:01,594.594 INFO    ] time= 22/06/2026 13:51:01
[2026-06-22 13:51:01,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:51:01,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:51:01,681.681 INFO    ] No existing commands found in stream
[2026-06-22 13:51:06,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:51:06,699.699 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-22 13:51:10,759.759 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:51:10,762.762 INFO    ] Checking for system updates...
[2026-06-22 13:51:10,803.803 INFO    ] 200
[2026-06-22 13:51:10,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:51:10,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:51:10,871.871 INFO    ] No update needed
[2026-06-22 13:51:10,873.873 INFO    ] Checking for camera pi updates...
[2026-06-22 13:51:10,908.908 INFO    ] 200
[2026-06-22 13:51:10,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:51:10,953.953 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:51:11,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:51:11,039.039 INFO    ] No camera update needed
[2026-06-22 13:51:11,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:51:11,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:51:11,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:51:11,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:51:13,098.098 INFO    ] ================================================
[2026-06-22 13:51:13,113.113 INFO    ] Launching Daemon at Mon Jun 22 13:51:13 IST 2026
[2026-06-22 13:51:13,124.124 INFO    ] ================================================
[2026-06-22 13:51:13,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:51:13
[2026-06-22 13:51:14,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:51:14,511.511 INFO    ] Initializing speech engine...
[2026-06-22 13:51:14,520.520 INFO    ] 2026-06-22 13:51:14
[2026-06-22 13:51:14,767.767 INFO    ] 2026-06-22 13:51:14
[2026-06-22 13:51:14,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:51:15,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:51:15,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:51:15,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:51:15,316.316 INFO    ] time= 22/06/2026 13:51:15
[2026-06-22 13:51:15,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:51:15,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:51:15,475.475 INFO    ] No existing commands found in stream
[2026-06-22 13:51:20,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:51:20,489.489 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-22 13:51:23,201.201 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:51:23,204.204 INFO    ] Checking for system updates...
[2026-06-22 13:51:23,240.240 INFO    ] 200
[2026-06-22 13:51:23,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:51:23,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:51:23,300.300 INFO    ] No update needed
[2026-06-22 13:51:23,302.302 INFO    ] Checking for camera pi updates...
[2026-06-22 13:51:23,335.335 INFO    ] 200
[2026-06-22 13:51:23,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:51:23,379.379 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:51:23,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:51:23,477.477 INFO    ] No camera update needed
[2026-06-22 13:51:23,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:51:23,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:51:23,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:51:23,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:51:25,533.533 INFO    ] ================================================
[2026-06-22 13:51:25,548.548 INFO    ] Launching Daemon at Mon Jun 22 13:51:25 IST 2026
[2026-06-22 13:51:25,558.558 INFO    ] ================================================
[2026-06-22 13:51:26,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:51:26
[2026-06-22 13:51:26,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:51:27,022.022 INFO    ] Initializing speech engine...
[2026-06-22 13:51:27,031.031 INFO    ] 2026-06-22 13:51:27
[2026-06-22 13:51:27,281.281 INFO    ] 2026-06-22 13:51:27
[2026-06-22 13:51:27,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:51:27,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:51:27,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:51:27,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:51:27,840.840 INFO    ] time= 22/06/2026 13:51:27
[2026-06-22 13:51:27,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:51:27,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:51:27,992.992 INFO    ] No existing commands found in stream
[2026-06-22 13:51:33,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:51:33,010.010 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-22 13:51:35,196.196 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:51:35,198.198 INFO    ] Checking for system updates...
[2026-06-22 13:51:35,219.219 INFO    ] 200
[2026-06-22 13:51:35,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:51:35,253.253 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:51:35,255.255 INFO    ] No update needed
[2026-06-22 13:51:35,256.256 INFO    ] Checking for camera pi updates...
[2026-06-22 13:51:35,283.283 INFO    ] 200
[2026-06-22 13:51:35,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:51:35,332.332 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:51:35,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:51:35,413.413 INFO    ] No camera update needed
[2026-06-22 13:51:35,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:51:35,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:51:35,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:51:35,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:51:37,470.470 INFO    ] ================================================
[2026-06-22 13:51:37,489.489 INFO    ] Launching Daemon at Mon Jun 22 13:51:37 IST 2026
[2026-06-22 13:51:37,500.500 INFO    ] ================================================
[2026-06-22 13:51:38,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:51:38
[2026-06-22 13:51:38,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:51:38,869.869 INFO    ] Initializing speech engine...
[2026-06-22 13:51:38,879.879 INFO    ] 2026-06-22 13:51:38
[2026-06-22 13:51:39,140.140 INFO    ] 2026-06-22 13:51:39
[2026-06-22 13:51:39,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:51:39,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:51:39,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:51:39,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:51:39,647.647 INFO    ] time= 22/06/2026 13:51:39
[2026-06-22 13:51:39,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:51:39,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:51:39,839.839 INFO    ] No existing commands found in stream
[2026-06-22 13:51:44,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:51:44,858.858 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-22 13:51:47,705.705 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:51:47,708.708 INFO    ] Checking for system updates...
[2026-06-22 13:51:47,746.746 INFO    ] 200
[2026-06-22 13:51:47,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:51:47,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:51:47,804.804 INFO    ] No update needed
[2026-06-22 13:51:47,806.806 INFO    ] Checking for camera pi updates...
[2026-06-22 13:51:47,843.843 INFO    ] 200
[2026-06-22 13:51:47,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:51:47,887.887 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:51:47,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:51:47,974.974 INFO    ] No camera update needed
[2026-06-22 13:51:47,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:51:47,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:51:47,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:51:47,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:51:50,030.030 INFO    ] ================================================
[2026-06-22 13:51:50,046.046 INFO    ] Launching Daemon at Mon Jun 22 13:51:50 IST 2026
[2026-06-22 13:51:50,057.057 INFO    ] ================================================
[2026-06-22 13:51:50,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:51:50
[2026-06-22 13:51:51,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:51:51,575.575 INFO    ] Initializing speech engine...
[2026-06-22 13:51:51,581.581 INFO    ] 2026-06-22 13:51:51
[2026-06-22 13:51:51,838.838 INFO    ] 2026-06-22 13:51:51
[2026-06-22 13:51:51,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:51:52,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:51:52,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:51:52,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:51:52,309.309 INFO    ] time= 22/06/2026 13:51:52
[2026-06-22 13:51:52,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:51:52,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:51:52,529.529 INFO    ] No existing commands found in stream
[2026-06-22 13:51:57,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:51:57,550.550 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-22 13:51:59,688.688 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:51:59,689.689 INFO    ] Checking for system updates...
[2026-06-22 13:51:59,710.710 INFO    ] 200
[2026-06-22 13:51:59,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:51:59,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:51:59,748.748 INFO    ] No update needed
[2026-06-22 13:51:59,750.750 INFO    ] Checking for camera pi updates...
[2026-06-22 13:51:59,769.769 INFO    ] 200
[2026-06-22 13:51:59,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:51:59,801.801 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:51:59,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:51:59,888.888 INFO    ] No camera update needed
[2026-06-22 13:51:59,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:51:59,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:51:59,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:51:59,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:52:01,971.971 INFO    ] ================================================
[2026-06-22 13:52:02,998.998 INFO    ] Launching Daemon at Mon Jun 22 13:52:01 IST 2026
[2026-06-22 13:52:02,022.022 INFO    ] ================================================
[2026-06-22 13:52:02,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:52:02
[2026-06-22 13:52:03,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:52:03,663.663 INFO    ] Initializing speech engine...
[2026-06-22 13:52:03,670.670 INFO    ] 2026-06-22 13:52:03
[2026-06-22 13:52:03,939.939 INFO    ] 2026-06-22 13:52:03
[2026-06-22 13:52:03,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:52:04,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:52:04,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:52:04,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:52:04,469.469 INFO    ] time= 22/06/2026 13:52:04
[2026-06-22 13:52:04,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:52:04,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:52:04,643.643 INFO    ] No existing commands found in stream
[2026-06-22 13:52:09,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:52:09,661.661 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-22 13:52:10,284.284 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:52:10,287.287 INFO    ] Checking for system updates...
[2026-06-22 13:52:10,323.323 INFO    ] 200
[2026-06-22 13:52:10,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:52:10,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:52:10,381.381 INFO    ] No update needed
[2026-06-22 13:52:10,383.383 INFO    ] Checking for camera pi updates...
[2026-06-22 13:52:10,417.417 INFO    ] 200
[2026-06-22 13:52:10,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:52:10,464.464 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:52:10,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:52:10,551.551 INFO    ] No camera update needed
[2026-06-22 13:52:10,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:52:10,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:52:10,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:52:10,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:52:12,607.607 INFO    ] ================================================
[2026-06-22 13:52:12,623.623 INFO    ] Launching Daemon at Mon Jun 22 13:52:12 IST 2026
[2026-06-22 13:52:12,635.635 INFO    ] ================================================
[2026-06-22 13:52:13,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:52:13
[2026-06-22 13:52:13,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:52:14,265.265 INFO    ] Initializing speech engine...
[2026-06-22 13:52:14,280.280 INFO    ] 2026-06-22 13:52:14
[2026-06-22 13:52:14,557.557 INFO    ] 2026-06-22 13:52:14
[2026-06-22 13:52:14,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:52:14,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:52:14,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:52:15,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:52:15,098.098 INFO    ] time= 22/06/2026 13:52:15
[2026-06-22 13:52:15,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:52:15,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:52:15,253.253 INFO    ] No existing commands found in stream
[2026-06-22 13:52:20,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:52:20,286.286 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-22 13:52:23,883.883 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:52:23,887.887 INFO    ] Checking for system updates...
[2026-06-22 13:52:23,923.923 INFO    ] 200
[2026-06-22 13:52:23,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:52:23,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:52:23,989.989 INFO    ] No update needed
[2026-06-22 13:52:23,992.992 INFO    ] Checking for camera pi updates...
[2026-06-22 13:52:24,028.028 INFO    ] 200
[2026-06-22 13:52:24,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:52:24,072.072 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:52:24,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:52:24,170.170 INFO    ] No camera update needed
[2026-06-22 13:52:24,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:52:24,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:52:24,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:52:24,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:52:26,230.230 INFO    ] ================================================
[2026-06-22 13:52:26,246.246 INFO    ] Launching Daemon at Mon Jun 22 13:52:26 IST 2026
[2026-06-22 13:52:26,257.257 INFO    ] ================================================
[2026-06-22 13:52:26,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:52:26
[2026-06-22 13:52:27,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:52:27,756.756 INFO    ] Initializing speech engine...
[2026-06-22 13:52:27,766.766 INFO    ] 2026-06-22 13:52:27
[2026-06-22 13:52:28,030.030 INFO    ] 2026-06-22 13:52:28
[2026-06-22 13:52:28,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:52:28,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:52:28,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:52:28,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:52:28,557.557 INFO    ] time= 22/06/2026 13:52:28
[2026-06-22 13:52:28,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:52:28,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:52:28,754.754 INFO    ] No existing commands found in stream
[2026-06-22 13:52:33,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:52:33,780.780 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-22 13:52:37,655.655 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:52:37,663.663 INFO    ] Checking for system updates...
[2026-06-22 13:52:37,688.688 INFO    ] 200
[2026-06-22 13:52:37,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:52:37,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:52:37,721.721 INFO    ] No update needed
[2026-06-22 13:52:37,723.723 INFO    ] Checking for camera pi updates...
[2026-06-22 13:52:37,758.758 INFO    ] 200
[2026-06-22 13:52:37,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:52:37,802.802 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:52:37,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:52:37,910.910 INFO    ] No camera update needed
[2026-06-22 13:52:37,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:52:37,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:52:37,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:52:37,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:52:39,969.969 INFO    ] ================================================
[2026-06-22 13:52:39,986.986 INFO    ] Launching Daemon at Mon Jun 22 13:52:39 IST 2026
[2026-06-22 13:52:40,997.997 INFO    ] ================================================
[2026-06-22 13:52:40,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:52:40
[2026-06-22 13:52:41,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:52:41,332.332 INFO    ] Initializing speech engine...
[2026-06-22 13:52:41,341.341 INFO    ] 2026-06-22 13:52:41
[2026-06-22 13:52:41,591.591 INFO    ] 2026-06-22 13:52:41
[2026-06-22 13:52:41,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:52:41,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:52:41,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:52:42,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:52:42,090.090 INFO    ] time= 22/06/2026 13:52:42
[2026-06-22 13:52:42,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:52:42,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:52:42,302.302 INFO    ] No existing commands found in stream
[2026-06-22 13:52:47,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:52:47,333.333 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-22 13:52:48,599.599 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:52:48,601.601 INFO    ] Checking for system updates...
[2026-06-22 13:52:48,638.638 INFO    ] 200
[2026-06-22 13:52:48,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:52:48,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:52:48,695.695 INFO    ] No update needed
[2026-06-22 13:52:48,698.698 INFO    ] Checking for camera pi updates...
[2026-06-22 13:52:48,735.735 INFO    ] 200
[2026-06-22 13:52:48,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:52:48,782.782 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:52:48,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:52:48,964.964 INFO    ] No camera update needed
[2026-06-22 13:52:48,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:52:48,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:52:48,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:52:48,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:52:51,021.021 INFO    ] ================================================
[2026-06-22 13:52:51,037.037 INFO    ] Launching Daemon at Mon Jun 22 13:52:51 IST 2026
[2026-06-22 13:52:51,048.048 INFO    ] ================================================
[2026-06-22 13:52:51,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:52:51
[2026-06-22 13:52:52,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:52:52,649.649 INFO    ] Initializing speech engine...
[2026-06-22 13:52:52,657.657 INFO    ] 2026-06-22 13:52:52
[2026-06-22 13:52:52,943.943 INFO    ] 2026-06-22 13:52:52
[2026-06-22 13:52:52,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:52:53,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:52:53,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:52:53,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:52:53,394.394 INFO    ] time= 22/06/2026 13:52:53
[2026-06-22 13:52:53,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:52:53,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:52:53,611.611 INFO    ] No existing commands found in stream
[2026-06-22 13:52:58,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:52:58,647.647 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-22 13:52:59,593.593 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:52:59,596.596 INFO    ] Checking for system updates...
[2026-06-22 13:52:59,633.633 INFO    ] 200
[2026-06-22 13:52:59,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:52:59,691.691 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:52:59,694.694 INFO    ] No update needed
[2026-06-22 13:52:59,697.697 INFO    ] Checking for camera pi updates...
[2026-06-22 13:52:59,732.732 INFO    ] 200
[2026-06-22 13:52:59,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:52:59,778.778 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:52:59,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:52:59,839.839 INFO    ] No camera update needed
[2026-06-22 13:52:59,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:52:59,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:52:59,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:52:59,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:53:01,917.917 INFO    ] ================================================
[2026-06-22 13:53:01,967.967 INFO    ] Launching Daemon at Mon Jun 22 13:53:01 IST 2026
[2026-06-22 13:53:01,984.984 INFO    ] ================================================
[2026-06-22 13:53:02,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:53:02
[2026-06-22 13:53:03,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:53:03,729.729 INFO    ] Initializing speech engine...
[2026-06-22 13:53:03,741.741 INFO    ] 2026-06-22 13:53:03
[2026-06-22 13:53:04,002.002 INFO    ] 2026-06-22 13:53:03
[2026-06-22 13:53:04,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:53:04,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:53:04,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:53:04,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:53:04,483.483 INFO    ] time= 22/06/2026 13:53:04
[2026-06-22 13:53:04,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:53:04,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:53:04,708.708 INFO    ] No existing commands found in stream
[2026-06-22 13:53:09,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:53:09,734.734 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-22 13:53:10,322.322 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:53:10,325.325 INFO    ] Checking for system updates...
[2026-06-22 13:53:10,361.361 INFO    ] 200
[2026-06-22 13:53:10,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:53:10,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:53:10,427.427 INFO    ] No update needed
[2026-06-22 13:53:10,429.429 INFO    ] Checking for camera pi updates...
[2026-06-22 13:53:10,464.464 INFO    ] 200
[2026-06-22 13:53:10,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:53:10,508.508 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:53:10,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:53:10,594.594 INFO    ] No camera update needed
[2026-06-22 13:53:10,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:53:10,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:53:10,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:53:10,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:53:12,651.651 INFO    ] ================================================
[2026-06-22 13:53:12,667.667 INFO    ] Launching Daemon at Mon Jun 22 13:53:12 IST 2026
[2026-06-22 13:53:12,678.678 INFO    ] ================================================
[2026-06-22 13:53:13,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:53:13
[2026-06-22 13:53:13,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:53:14,064.064 INFO    ] Initializing speech engine...
[2026-06-22 13:53:14,079.079 INFO    ] 2026-06-22 13:53:14
[2026-06-22 13:53:14,335.335 INFO    ] 2026-06-22 13:53:14
[2026-06-22 13:53:14,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:53:14,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:53:14,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:53:15,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:53:15,784.784 INFO    ] time= 22/06/2026 13:53:15
[2026-06-22 13:53:15,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:53:15,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:53:16,823.823 INFO    ] No existing commands found in stream
[2026-06-22 13:53:21,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:53:21,836.836 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-22 13:53:26,080.080 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:53:26,081.081 INFO    ] Checking for system updates...
[2026-06-22 13:53:26,102.102 INFO    ] 200
[2026-06-22 13:53:26,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:53:26,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:53:26,139.139 INFO    ] No update needed
[2026-06-22 13:53:26,140.140 INFO    ] Checking for camera pi updates...
[2026-06-22 13:53:26,171.171 INFO    ] 200
[2026-06-22 13:53:26,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:53:26,216.216 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:53:26,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:53:26,328.328 INFO    ] No camera update needed
[2026-06-22 13:53:26,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:53:26,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:53:26,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:53:26,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:53:28,391.391 INFO    ] ================================================
[2026-06-22 13:53:28,408.408 INFO    ] Launching Daemon at Mon Jun 22 13:53:28 IST 2026
[2026-06-22 13:53:28,419.419 INFO    ] ================================================
[2026-06-22 13:53:28,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:53:28
[2026-06-22 13:53:29,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:53:29,779.779 INFO    ] Initializing speech engine...
[2026-06-22 13:53:29,789.789 INFO    ] 2026-06-22 13:53:29
[2026-06-22 13:53:30,041.041 INFO    ] 2026-06-22 13:53:30
[2026-06-22 13:53:30,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:53:30,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:53:30,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:53:30,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:53:30,510.510 INFO    ] time= 22/06/2026 13:53:30
[2026-06-22 13:53:30,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:53:30,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:53:30,748.748 INFO    ] No existing commands found in stream
[2026-06-22 13:53:35,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:53:35,781.781 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-22 13:53:37,842.842 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:53:37,844.844 INFO    ] Checking for system updates...
[2026-06-22 13:53:37,873.873 INFO    ] 200
[2026-06-22 13:53:37,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:53:37,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:53:37,932.932 INFO    ] No update needed
[2026-06-22 13:53:37,935.935 INFO    ] Checking for camera pi updates...
[2026-06-22 13:53:37,983.983 INFO    ] 200
[2026-06-22 13:53:37,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:53:38,027.027 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:53:38,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:53:38,109.109 INFO    ] No camera update needed
[2026-06-22 13:53:38,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:53:38,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:53:38,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:53:38,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:53:40,166.166 INFO    ] ================================================
[2026-06-22 13:53:40,182.182 INFO    ] Launching Daemon at Mon Jun 22 13:53:40 IST 2026
[2026-06-22 13:53:40,193.193 INFO    ] ================================================
[2026-06-22 13:53:40,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:53:40
[2026-06-22 13:53:41,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:53:41,637.637 INFO    ] Initializing speech engine...
[2026-06-22 13:53:41,645.645 INFO    ] 2026-06-22 13:53:41
[2026-06-22 13:53:41,943.943 INFO    ] 2026-06-22 13:53:41
[2026-06-22 13:53:41,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:53:42,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:53:42,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:53:42,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:53:42,484.484 INFO    ] time= 22/06/2026 13:53:42
[2026-06-22 13:53:42,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:53:42,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:53:42,738.738 INFO    ] No existing commands found in stream
[2026-06-22 13:53:47,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:53:47,767.767 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-22 13:53:50,066.066 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:53:50,068.068 INFO    ] Checking for system updates...
[2026-06-22 13:53:50,088.088 INFO    ] 200
[2026-06-22 13:53:50,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:53:50,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:53:50,121.121 INFO    ] No update needed
[2026-06-22 13:53:50,122.122 INFO    ] Checking for camera pi updates...
[2026-06-22 13:53:50,146.146 INFO    ] 200
[2026-06-22 13:53:50,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:53:50,177.177 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:53:50,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:53:50,263.263 INFO    ] No camera update needed
[2026-06-22 13:53:50,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:53:50,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:53:50,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:53:50,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:53:52,320.320 INFO    ] ================================================
[2026-06-22 13:53:52,336.336 INFO    ] Launching Daemon at Mon Jun 22 13:53:52 IST 2026
[2026-06-22 13:53:52,347.347 INFO    ] ================================================
[2026-06-22 13:53:52,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:53:52
[2026-06-22 13:53:53,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:53:53,731.731 INFO    ] Initializing speech engine...
[2026-06-22 13:53:53,741.741 INFO    ] 2026-06-22 13:53:53
[2026-06-22 13:53:54,013.013 INFO    ] 2026-06-22 13:53:53
[2026-06-22 13:53:54,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:53:54,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:53:54,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:53:54,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:53:54,444.444 INFO    ] time= 22/06/2026 13:53:54
[2026-06-22 13:53:54,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:53:54,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:53:54,531.531 INFO    ] No existing commands found in stream
[2026-06-22 13:53:59,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:53:59,547.547 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-22 13:54:03,079.079 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:54:03,083.083 INFO    ] Checking for system updates...
[2026-06-22 13:54:03,125.125 INFO    ] 200
[2026-06-22 13:54:03,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:54:03,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:54:03,199.199 INFO    ] No update needed
[2026-06-22 13:54:03,203.203 INFO    ] Checking for camera pi updates...
[2026-06-22 13:54:03,243.243 INFO    ] 200
[2026-06-22 13:54:03,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:54:03,297.297 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:54:03,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:54:03,390.390 INFO    ] No camera update needed
[2026-06-22 13:54:03,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:54:03,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:54:03,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:54:03,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:54:05,453.453 INFO    ] ================================================
[2026-06-22 13:54:05,469.469 INFO    ] Launching Daemon at Mon Jun 22 13:54:05 IST 2026
[2026-06-22 13:54:05,481.481 INFO    ] ================================================
[2026-06-22 13:54:06,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:54:06
[2026-06-22 13:54:06,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:54:06,993.993 INFO    ] Initializing speech engine...
[2026-06-22 13:54:06,999.999 INFO    ] 2026-06-22 13:54:06
[2026-06-22 13:54:07,311.311 INFO    ] 2026-06-22 13:54:07
[2026-06-22 13:54:07,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:54:07,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:54:07,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:54:07,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:54:07,892.892 INFO    ] time= 22/06/2026 13:54:07
[2026-06-22 13:54:07,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:54:07,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:54:08,038.038 INFO    ] No existing commands found in stream
[2026-06-22 13:54:13,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:54:13,071.071 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-22 13:54:15,457.457 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:54:15,460.460 INFO    ] Checking for system updates...
[2026-06-22 13:54:15,496.496 INFO    ] 200
[2026-06-22 13:54:15,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:54:15,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:54:15,555.555 INFO    ] No update needed
[2026-06-22 13:54:15,557.557 INFO    ] Checking for camera pi updates...
[2026-06-22 13:54:15,592.592 INFO    ] 200
[2026-06-22 13:54:15,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:54:15,634.634 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:54:15,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:54:15,694.694 INFO    ] No camera update needed
[2026-06-22 13:54:15,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:54:15,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:54:15,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:54:15,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:54:17,749.749 INFO    ] ================================================
[2026-06-22 13:54:17,766.766 INFO    ] Launching Daemon at Mon Jun 22 13:54:17 IST 2026
[2026-06-22 13:54:17,778.778 INFO    ] ================================================
[2026-06-22 13:54:18,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:54:18
[2026-06-22 13:54:18,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:54:19,190.190 INFO    ] Initializing speech engine...
[2026-06-22 13:54:19,208.208 INFO    ] 2026-06-22 13:54:19
[2026-06-22 13:54:19,467.467 INFO    ] 2026-06-22 13:54:19
[2026-06-22 13:54:19,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:54:19,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:54:19,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:54:19,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:54:19,940.940 INFO    ] time= 22/06/2026 13:54:19
[2026-06-22 13:54:20,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:54:20,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:54:20,161.161 INFO    ] No existing commands found in stream
[2026-06-22 13:54:25,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:54:25,188.188 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-22 13:54:25,743.743 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:54:25,744.744 INFO    ] Checking for system updates...
[2026-06-22 13:54:25,766.766 INFO    ] 200
[2026-06-22 13:54:25,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:54:25,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:54:25,814.814 INFO    ] No update needed
[2026-06-22 13:54:25,817.817 INFO    ] Checking for camera pi updates...
[2026-06-22 13:54:25,852.852 INFO    ] 200
[2026-06-22 13:54:25,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:54:25,905.905 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:54:25,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:54:25,971.971 INFO    ] No camera update needed
[2026-06-22 13:54:25,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:54:25,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:54:25,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:54:25,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:54:28,027.027 INFO    ] ================================================
[2026-06-22 13:54:28,043.043 INFO    ] Launching Daemon at Mon Jun 22 13:54:28 IST 2026
[2026-06-22 13:54:28,055.055 INFO    ] ================================================
[2026-06-22 13:54:28,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:54:28
[2026-06-22 13:54:29,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:54:29,633.633 INFO    ] Initializing speech engine...
[2026-06-22 13:54:29,645.645 INFO    ] 2026-06-22 13:54:29
[2026-06-22 13:54:29,933.933 INFO    ] 2026-06-22 13:54:29
[2026-06-22 13:54:30,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:54:30,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:54:30,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:54:30,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:54:30,633.633 INFO    ] time= 22/06/2026 13:54:30
[2026-06-22 13:54:30,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:54:30,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:54:30,861.861 INFO    ] No existing commands found in stream
[2026-06-22 13:54:35,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:54:35,878.878 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-22 13:54:38,474.474 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:54:38,477.477 INFO    ] Checking for system updates...
[2026-06-22 13:54:38,516.516 INFO    ] 200
[2026-06-22 13:54:38,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:54:38,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:54:38,574.574 INFO    ] No update needed
[2026-06-22 13:54:38,577.577 INFO    ] Checking for camera pi updates...
[2026-06-22 13:54:38,610.610 INFO    ] 200
[2026-06-22 13:54:38,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:54:38,655.655 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:54:38,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:54:38,729.729 INFO    ] No camera update needed
[2026-06-22 13:54:38,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:54:38,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:54:38,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:54:38,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:54:40,784.784 INFO    ] ================================================
[2026-06-22 13:54:40,801.801 INFO    ] Launching Daemon at Mon Jun 22 13:54:40 IST 2026
[2026-06-22 13:54:40,812.812 INFO    ] ================================================
[2026-06-22 13:54:41,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:54:41
[2026-06-22 13:54:41,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:54:42,145.145 INFO    ] Initializing speech engine...
[2026-06-22 13:54:42,153.153 INFO    ] 2026-06-22 13:54:42
[2026-06-22 13:54:42,410.410 INFO    ] 2026-06-22 13:54:42
[2026-06-22 13:54:42,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:54:42,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:54:42,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:54:42,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:54:42,969.969 INFO    ] time= 22/06/2026 13:54:42
[2026-06-22 13:54:42,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:54:42,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:54:43,108.108 INFO    ] No existing commands found in stream
[2026-06-22 13:54:48,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:54:48,133.133 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-22 13:54:49,095.095 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:54:49,097.097 INFO    ] Checking for system updates...
[2026-06-22 13:54:49,134.134 INFO    ] 200
[2026-06-22 13:54:49,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:54:49,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:54:49,193.193 INFO    ] No update needed
[2026-06-22 13:54:49,195.195 INFO    ] Checking for camera pi updates...
[2026-06-22 13:54:49,234.234 INFO    ] 200
[2026-06-22 13:54:49,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:54:49,283.283 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:54:49,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:54:49,368.368 INFO    ] No camera update needed
[2026-06-22 13:54:49,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:54:49,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:54:49,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:54:49,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:54:51,427.427 INFO    ] ================================================
[2026-06-22 13:54:51,443.443 INFO    ] Launching Daemon at Mon Jun 22 13:54:51 IST 2026
[2026-06-22 13:54:51,454.454 INFO    ] ================================================
[2026-06-22 13:54:52,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:54:52
[2026-06-22 13:54:52,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:54:53,049.049 INFO    ] Initializing speech engine...
[2026-06-22 13:54:53,057.057 INFO    ] 2026-06-22 13:54:53
[2026-06-22 13:54:53,349.349 INFO    ] 2026-06-22 13:54:53
[2026-06-22 13:54:53,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:54:53,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:54:53,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:54:53,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:54:53,898.898 INFO    ] time= 22/06/2026 13:54:53
[2026-06-22 13:54:53,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:54:53,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:54:54,059.059 INFO    ] No existing commands found in stream
[2026-06-22 13:54:59,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:54:59,089.089 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-22 13:54:59,765.765 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:54:59,767.767 INFO    ] Checking for system updates...
[2026-06-22 13:54:59,794.794 INFO    ] 200
[2026-06-22 13:54:59,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:54:59,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:54:59,863.863 INFO    ] No update needed
[2026-06-22 13:54:59,866.866 INFO    ] Checking for camera pi updates...
[2026-06-22 13:54:59,907.907 INFO    ] 200
[2026-06-22 13:54:59,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:54:59,949.949 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:55:00,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:55:00,100.100 INFO    ] No camera update needed
[2026-06-22 13:55:00,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:55:00,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:55:00,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:55:00,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:55:02,198.198 INFO    ] ================================================
[2026-06-22 13:55:02,241.241 INFO    ] Launching Daemon at Mon Jun 22 13:55:02 IST 2026
[2026-06-22 13:55:02,281.281 INFO    ] ================================================
[2026-06-22 13:55:03,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:55:03
[2026-06-22 13:55:03,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:55:04,128.128 INFO    ] Initializing speech engine...
[2026-06-22 13:55:04,139.139 INFO    ] 2026-06-22 13:55:04
[2026-06-22 13:55:04,401.401 INFO    ] 2026-06-22 13:55:04
[2026-06-22 13:55:04,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:55:04,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:55:04,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:55:04,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:55:04,891.891 INFO    ] time= 22/06/2026 13:55:04
[2026-06-22 13:55:04,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:55:04,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:55:05,105.105 INFO    ] No existing commands found in stream
[2026-06-22 13:55:10,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:55:10,138.138 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-22 13:55:11,860.860 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:55:11,862.862 INFO    ] Checking for system updates...
[2026-06-22 13:55:11,902.902 INFO    ] 200
[2026-06-22 13:55:11,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:55:11,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:55:11,962.962 INFO    ] No update needed
[2026-06-22 13:55:11,965.965 INFO    ] Checking for camera pi updates...
[2026-06-22 13:55:12,004.004 INFO    ] 200
[2026-06-22 13:55:12,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:55:12,048.048 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:55:12,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:55:12,132.132 INFO    ] No camera update needed
[2026-06-22 13:55:12,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:55:12,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:55:12,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:55:12,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:55:14,192.192 INFO    ] ================================================
[2026-06-22 13:55:14,207.207 INFO    ] Launching Daemon at Mon Jun 22 13:55:14 IST 2026
[2026-06-22 13:55:14,218.218 INFO    ] ================================================
[2026-06-22 13:55:14,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:55:14
[2026-06-22 13:55:15,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:55:15,535.535 INFO    ] Initializing speech engine...
[2026-06-22 13:55:15,550.550 INFO    ] 2026-06-22 13:55:15
[2026-06-22 13:55:15,813.813 INFO    ] 2026-06-22 13:55:15
[2026-06-22 13:55:15,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:55:16,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:55:16,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:55:16,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:55:16,321.321 INFO    ] time= 22/06/2026 13:55:16
[2026-06-22 13:55:16,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:55:16,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:55:16,515.515 INFO    ] No existing commands found in stream
[2026-06-22 13:55:21,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:55:21,537.537 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-22 13:55:22,680.680 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:55:22,683.683 INFO    ] Checking for system updates...
[2026-06-22 13:55:22,724.724 INFO    ] 200
[2026-06-22 13:55:22,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:55:22,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:55:22,790.790 INFO    ] No update needed
[2026-06-22 13:55:22,792.792 INFO    ] Checking for camera pi updates...
[2026-06-22 13:55:22,826.826 INFO    ] 200
[2026-06-22 13:55:22,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:55:22,869.869 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:55:22,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:55:22,953.953 INFO    ] No camera update needed
[2026-06-22 13:55:22,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:55:22,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:55:22,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:55:22,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:55:25,012.012 INFO    ] ================================================
[2026-06-22 13:55:25,028.028 INFO    ] Launching Daemon at Mon Jun 22 13:55:25 IST 2026
[2026-06-22 13:55:25,038.038 INFO    ] ================================================
[2026-06-22 13:55:25,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:55:25
[2026-06-22 13:55:26,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:55:26,407.407 INFO    ] Initializing speech engine...
[2026-06-22 13:55:26,416.416 INFO    ] 2026-06-22 13:55:26
[2026-06-22 13:55:26,676.676 INFO    ] 2026-06-22 13:55:26
[2026-06-22 13:55:26,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:55:26,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:55:26,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:55:27,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:55:27,135.135 INFO    ] time= 22/06/2026 13:55:27
[2026-06-22 13:55:27,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:55:27,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:55:27,342.342 INFO    ] No existing commands found in stream
[2026-06-22 13:55:32,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:55:32,367.367 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-22 13:55:33,265.265 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:55:33,270.270 INFO    ] Checking for system updates...
[2026-06-22 13:55:33,309.309 INFO    ] 200
[2026-06-22 13:55:33,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:55:33,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:55:33,367.367 INFO    ] No update needed
[2026-06-22 13:55:33,370.370 INFO    ] Checking for camera pi updates...
[2026-06-22 13:55:33,404.404 INFO    ] 200
[2026-06-22 13:55:33,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:55:33,447.447 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:55:33,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:55:33,531.531 INFO    ] No camera update needed
[2026-06-22 13:55:33,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:55:33,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:55:33,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:55:33,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:55:35,588.588 INFO    ] ================================================
[2026-06-22 13:55:35,603.603 INFO    ] Launching Daemon at Mon Jun 22 13:55:35 IST 2026
[2026-06-22 13:55:35,614.614 INFO    ] ================================================
[2026-06-22 13:55:36,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:55:36
[2026-06-22 13:55:36,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:55:37,167.167 INFO    ] Initializing speech engine...
[2026-06-22 13:55:37,178.178 INFO    ] 2026-06-22 13:55:37
[2026-06-22 13:55:37,424.424 INFO    ] 2026-06-22 13:55:37
[2026-06-22 13:55:37,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:55:37,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:55:37,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:55:37,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:55:37,897.897 INFO    ] time= 22/06/2026 13:55:37
[2026-06-22 13:55:37,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:55:37,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:55:38,096.096 INFO    ] No existing commands found in stream
[2026-06-22 13:55:43,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:55:43,131.131 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-22 13:55:46,264.264 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:55:46,266.266 INFO    ] Checking for system updates...
[2026-06-22 13:55:46,287.287 INFO    ] 200
[2026-06-22 13:55:46,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:55:46,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:55:46,351.351 INFO    ] No update needed
[2026-06-22 13:55:46,357.357 INFO    ] Checking for camera pi updates...
[2026-06-22 13:55:46,391.391 INFO    ] 200
[2026-06-22 13:55:46,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:55:46,434.434 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:55:46,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:55:46,519.519 INFO    ] No camera update needed
[2026-06-22 13:55:46,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:55:46,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:55:46,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:55:46,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:55:48,575.575 INFO    ] ================================================
[2026-06-22 13:55:48,595.595 INFO    ] Launching Daemon at Mon Jun 22 13:55:48 IST 2026
[2026-06-22 13:55:48,607.607 INFO    ] ================================================
[2026-06-22 13:55:49,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:55:49
[2026-06-22 13:55:49,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:55:50,066.066 INFO    ] Initializing speech engine...
[2026-06-22 13:55:50,076.076 INFO    ] 2026-06-22 13:55:50
[2026-06-22 13:55:50,339.339 INFO    ] 2026-06-22 13:55:50
[2026-06-22 13:55:50,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:55:50,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:55:50,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:55:50,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:55:50,825.825 INFO    ] time= 22/06/2026 13:55:50
[2026-06-22 13:55:50,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:55:50,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:55:51,041.041 INFO    ] No existing commands found in stream
[2026-06-22 13:55:56,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:55:56,066.066 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-22 13:55:56,950.950 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:55:56,953.953 INFO    ] Checking for system updates...
[2026-06-22 13:55:56,993.993 INFO    ] 200
[2026-06-22 13:55:56,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:55:57,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:55:57,057.057 INFO    ] No update needed
[2026-06-22 13:55:57,060.060 INFO    ] Checking for camera pi updates...
[2026-06-22 13:55:57,097.097 INFO    ] 200
[2026-06-22 13:55:57,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:55:57,140.140 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:55:57,229.229 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:55:57,232.232 INFO    ] No camera update needed
[2026-06-22 13:55:57,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:55:57,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:55:57,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:55:57,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:55:59,288.288 INFO    ] ================================================
[2026-06-22 13:55:59,303.303 INFO    ] Launching Daemon at Mon Jun 22 13:55:59 IST 2026
[2026-06-22 13:55:59,314.314 INFO    ] ================================================
[2026-06-22 13:55:59,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:55:59
[2026-06-22 13:56:00,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:56:00,789.789 INFO    ] Initializing speech engine...
[2026-06-22 13:56:00,803.803 INFO    ] 2026-06-22 13:56:00
[2026-06-22 13:56:01,082.082 INFO    ] 2026-06-22 13:56:01
[2026-06-22 13:56:01,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:56:01,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:56:01,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:56:01,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:56:01,519.519 INFO    ] time= 22/06/2026 13:56:01
[2026-06-22 13:56:01,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:56:01,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:56:01,625.625 INFO    ] No existing commands found in stream
[2026-06-22 13:56:06,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:56:06,640.640 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-22 13:56:07,658.658 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:56:07,661.661 INFO    ] Checking for system updates...
[2026-06-22 13:56:07,699.699 INFO    ] 200
[2026-06-22 13:56:07,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:56:07,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:56:07,760.760 INFO    ] No update needed
[2026-06-22 13:56:07,762.762 INFO    ] Checking for camera pi updates...
[2026-06-22 13:56:07,796.796 INFO    ] 200
[2026-06-22 13:56:07,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:56:07,839.839 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:56:07,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:56:07,927.927 INFO    ] No camera update needed
[2026-06-22 13:56:07,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:56:07,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:56:07,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:56:07,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:56:09,983.983 INFO    ] ================================================
[2026-06-22 13:56:10,998.998 INFO    ] Launching Daemon at Mon Jun 22 13:56:09 IST 2026
[2026-06-22 13:56:10,009.009 INFO    ] ================================================
[2026-06-22 13:56:10,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:56:10
[2026-06-22 13:56:11,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:56:11,389.389 INFO    ] Initializing speech engine...
[2026-06-22 13:56:11,398.398 INFO    ] 2026-06-22 13:56:11
[2026-06-22 13:56:11,644.644 INFO    ] 2026-06-22 13:56:11
[2026-06-22 13:56:11,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:56:11,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:56:11,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:56:12,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:56:12,145.145 INFO    ] time= 22/06/2026 13:56:12
[2026-06-22 13:56:12,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:56:12,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:56:12,340.340 INFO    ] No existing commands found in stream
[2026-06-22 13:56:17,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:56:17,370.370 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-22 13:56:21,798.798 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:56:21,800.800 INFO    ] Checking for system updates...
[2026-06-22 13:56:21,839.839 INFO    ] 200
[2026-06-22 13:56:21,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:56:21,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:56:21,897.897 INFO    ] No update needed
[2026-06-22 13:56:21,900.900 INFO    ] Checking for camera pi updates...
[2026-06-22 13:56:21,936.936 INFO    ] 200
[2026-06-22 13:56:21,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:56:21,980.980 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:56:22,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:56:22,062.062 INFO    ] No camera update needed
[2026-06-22 13:56:22,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:56:22,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:56:22,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:56:22,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:56:24,121.121 INFO    ] ================================================
[2026-06-22 13:56:24,136.136 INFO    ] Launching Daemon at Mon Jun 22 13:56:24 IST 2026
[2026-06-22 13:56:24,147.147 INFO    ] ================================================
[2026-06-22 13:56:24,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:56:24
[2026-06-22 13:56:25,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:56:25,599.599 INFO    ] Initializing speech engine...
[2026-06-22 13:56:25,609.609 INFO    ] 2026-06-22 13:56:25
[2026-06-22 13:56:25,871.871 INFO    ] 2026-06-22 13:56:25
[2026-06-22 13:56:25,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:56:26,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:56:26,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:56:26,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:56:26,354.354 INFO    ] time= 22/06/2026 13:56:26
[2026-06-22 13:56:26,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:56:26,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:56:26,546.546 INFO    ] No existing commands found in stream
[2026-06-22 13:56:31,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:56:31,577.577 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-22 13:56:34,864.864 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:56:34,867.867 INFO    ] Checking for system updates...
[2026-06-22 13:56:34,906.906 INFO    ] 200
[2026-06-22 13:56:34,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:56:34,967.967 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:56:34,969.969 INFO    ] No update needed
[2026-06-22 13:56:34,971.971 INFO    ] Checking for camera pi updates...
[2026-06-22 13:56:35,005.005 INFO    ] 200
[2026-06-22 13:56:35,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:56:35,049.049 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:56:35,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:56:35,136.136 INFO    ] No camera update needed
[2026-06-22 13:56:35,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:56:35,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:56:35,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:56:35,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:56:37,193.193 INFO    ] ================================================
[2026-06-22 13:56:37,208.208 INFO    ] Launching Daemon at Mon Jun 22 13:56:37 IST 2026
[2026-06-22 13:56:37,218.218 INFO    ] ================================================
[2026-06-22 13:56:37,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:56:37
[2026-06-22 13:56:38,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:56:38,707.707 INFO    ] Initializing speech engine...
[2026-06-22 13:56:38,715.715 INFO    ] 2026-06-22 13:56:38
[2026-06-22 13:56:39,013.013 INFO    ] 2026-06-22 13:56:39
[2026-06-22 13:56:39,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:56:39,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:56:39,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:56:39,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:56:39,554.554 INFO    ] time= 22/06/2026 13:56:39
[2026-06-22 13:56:39,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:56:39,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:56:39,698.698 INFO    ] No existing commands found in stream
[2026-06-22 13:56:44,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:56:44,728.728 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-22 13:56:47,878.878 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:56:47,881.881 INFO    ] Checking for system updates...
[2026-06-22 13:56:47,917.917 INFO    ] 200
[2026-06-22 13:56:47,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:56:47,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:56:47,979.979 INFO    ] No update needed
[2026-06-22 13:56:47,981.981 INFO    ] Checking for camera pi updates...
[2026-06-22 13:56:48,019.019 INFO    ] 200
[2026-06-22 13:56:48,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:56:48,062.062 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:56:48,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:56:48,136.136 INFO    ] No camera update needed
[2026-06-22 13:56:48,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:56:48,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:56:48,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:56:48,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:56:50,191.191 INFO    ] ================================================
[2026-06-22 13:56:50,206.206 INFO    ] Launching Daemon at Mon Jun 22 13:56:50 IST 2026
[2026-06-22 13:56:50,217.217 INFO    ] ================================================
[2026-06-22 13:56:50,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:56:50
[2026-06-22 13:56:51,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:56:51,617.617 INFO    ] Initializing speech engine...
[2026-06-22 13:56:51,626.626 INFO    ] 2026-06-22 13:56:51
[2026-06-22 13:56:51,914.914 INFO    ] 2026-06-22 13:56:51
[2026-06-22 13:56:51,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:56:52,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:56:52,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:56:52,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:56:52,412.412 INFO    ] time= 22/06/2026 13:56:52
[2026-06-22 13:56:52,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:56:52,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:56:52,603.603 INFO    ] No existing commands found in stream
[2026-06-22 13:56:57,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:56:57,617.617 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-22 13:56:59,780.780 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:56:59,782.782 INFO    ] Checking for system updates...
[2026-06-22 13:56:59,819.819 INFO    ] 200
[2026-06-22 13:56:59,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:56:59,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:56:59,883.883 INFO    ] No update needed
[2026-06-22 13:56:59,885.885 INFO    ] Checking for camera pi updates...
[2026-06-22 13:56:59,920.920 INFO    ] 200
[2026-06-22 13:56:59,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:56:59,971.971 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:57:00,052.052 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:57:00,054.054 INFO    ] No camera update needed
[2026-06-22 13:57:00,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:57:00,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:57:00,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:57:00,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:57:02,117.117 INFO    ] ================================================
[2026-06-22 13:57:02,141.141 INFO    ] Launching Daemon at Mon Jun 22 13:57:02 IST 2026
[2026-06-22 13:57:02,187.187 INFO    ] ================================================
[2026-06-22 13:57:02,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:57:02
[2026-06-22 13:57:03,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:57:03,897.897 INFO    ] Initializing speech engine...
[2026-06-22 13:57:03,905.905 INFO    ] 2026-06-22 13:57:03
[2026-06-22 13:57:04,176.176 INFO    ] 2026-06-22 13:57:04
[2026-06-22 13:57:04,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:57:04,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:57:04,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:57:04,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:57:04,667.667 INFO    ] time= 22/06/2026 13:57:04
[2026-06-22 13:57:04,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:57:04,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:57:04,879.879 INFO    ] No existing commands found in stream
[2026-06-22 13:57:09,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:57:09,905.905 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-22 13:57:13,284.284 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:57:13,287.287 INFO    ] Checking for system updates...
[2026-06-22 13:57:13,326.326 INFO    ] 200
[2026-06-22 13:57:13,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:57:13,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:57:13,385.385 INFO    ] No update needed
[2026-06-22 13:57:13,387.387 INFO    ] Checking for camera pi updates...
[2026-06-22 13:57:13,422.422 INFO    ] 200
[2026-06-22 13:57:13,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:57:13,465.465 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:57:13,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:57:13,551.551 INFO    ] No camera update needed
[2026-06-22 13:57:13,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:57:13,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:57:13,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:57:13,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:57:15,608.608 INFO    ] ================================================
[2026-06-22 13:57:15,623.623 INFO    ] Launching Daemon at Mon Jun 22 13:57:15 IST 2026
[2026-06-22 13:57:15,633.633 INFO    ] ================================================
[2026-06-22 13:57:16,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:57:16
[2026-06-22 13:57:16,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:57:17,088.088 INFO    ] Initializing speech engine...
[2026-06-22 13:57:17,097.097 INFO    ] 2026-06-22 13:57:17
[2026-06-22 13:57:17,350.350 INFO    ] 2026-06-22 13:57:17
[2026-06-22 13:57:17,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:57:17,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:57:17,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:57:17,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:57:17,838.838 INFO    ] time= 22/06/2026 13:57:17
[2026-06-22 13:57:17,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:57:17,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:57:18,078.078 INFO    ] No existing commands found in stream
[2026-06-22 13:57:23,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:57:23,099.099 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-22 13:57:23,619.619 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:57:23,622.622 INFO    ] Checking for system updates...
[2026-06-22 13:57:23,659.659 INFO    ] 200
[2026-06-22 13:57:23,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:57:23,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:57:23,718.718 INFO    ] No update needed
[2026-06-22 13:57:23,720.720 INFO    ] Checking for camera pi updates...
[2026-06-22 13:57:23,755.755 INFO    ] 200
[2026-06-22 13:57:23,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:57:23,798.798 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:57:23,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:57:23,851.851 INFO    ] No camera update needed
[2026-06-22 13:57:23,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:57:23,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:57:23,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:57:23,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:57:25,915.915 INFO    ] ================================================
[2026-06-22 13:57:25,929.929 INFO    ] Launching Daemon at Mon Jun 22 13:57:25 IST 2026
[2026-06-22 13:57:25,940.940 INFO    ] ================================================
[2026-06-22 13:57:26,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:57:26
[2026-06-22 13:57:27,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:57:27,281.281 INFO    ] Initializing speech engine...
[2026-06-22 13:57:27,290.290 INFO    ] 2026-06-22 13:57:27
[2026-06-22 13:57:27,550.550 INFO    ] 2026-06-22 13:57:27
[2026-06-22 13:57:27,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:57:27,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:57:27,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:57:27,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:57:27,952.952 INFO    ] time= 22/06/2026 13:57:27
[2026-06-22 13:57:27,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:57:28,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:57:28,143.143 INFO    ] No existing commands found in stream
[2026-06-22 13:57:33,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:57:33,177.177 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-22 13:57:36,489.489 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:57:36,492.492 INFO    ] Checking for system updates...
[2026-06-22 13:57:36,530.530 INFO    ] 200
[2026-06-22 13:57:36,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:57:36,586.586 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:57:36,588.588 INFO    ] No update needed
[2026-06-22 13:57:36,591.591 INFO    ] Checking for camera pi updates...
[2026-06-22 13:57:36,627.627 INFO    ] 200
[2026-06-22 13:57:36,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:57:36,671.671 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:57:36,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:57:36,757.757 INFO    ] No camera update needed
[2026-06-22 13:57:36,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:57:36,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:57:36,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:57:36,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:57:38,811.811 INFO    ] ================================================
[2026-06-22 13:57:38,826.826 INFO    ] Launching Daemon at Mon Jun 22 13:57:38 IST 2026
[2026-06-22 13:57:38,837.837 INFO    ] ================================================
[2026-06-22 13:57:39,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:57:39
[2026-06-22 13:57:39,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:57:40,269.269 INFO    ] Initializing speech engine...
[2026-06-22 13:57:40,278.278 INFO    ] 2026-06-22 13:57:40
[2026-06-22 13:57:40,561.561 INFO    ] 2026-06-22 13:57:40
[2026-06-22 13:57:40,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:57:40,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:57:40,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:57:41,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:57:41,124.124 INFO    ] time= 22/06/2026 13:57:41
[2026-06-22 13:57:41,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:57:41,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:57:41,300.300 INFO    ] No existing commands found in stream
[2026-06-22 13:57:46,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:57:46,335.335 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-22 13:57:50,106.106 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:57:50,109.109 INFO    ] Checking for system updates...
[2026-06-22 13:57:50,145.145 INFO    ] 200
[2026-06-22 13:57:50,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:57:50,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:57:50,202.202 INFO    ] No update needed
[2026-06-22 13:57:50,205.205 INFO    ] Checking for camera pi updates...
[2026-06-22 13:57:50,238.238 INFO    ] 200
[2026-06-22 13:57:50,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:57:50,281.281 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:57:50,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:57:50,370.370 INFO    ] No camera update needed
[2026-06-22 13:57:50,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:57:50,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:57:50,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:57:50,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:57:52,424.424 INFO    ] ================================================
[2026-06-22 13:57:52,439.439 INFO    ] Launching Daemon at Mon Jun 22 13:57:52 IST 2026
[2026-06-22 13:57:52,450.450 INFO    ] ================================================
[2026-06-22 13:57:53,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:57:53
[2026-06-22 13:57:53,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:57:53,811.811 INFO    ] Initializing speech engine...
[2026-06-22 13:57:53,817.817 INFO    ] 2026-06-22 13:57:53
[2026-06-22 13:57:54,077.077 INFO    ] 2026-06-22 13:57:54
[2026-06-22 13:57:54,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:57:54,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:57:54,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:57:54,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:57:54,569.569 INFO    ] time= 22/06/2026 13:57:54
[2026-06-22 13:57:54,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:57:54,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:57:54,772.772 INFO    ] No existing commands found in stream
[2026-06-22 13:57:59,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:57:59,787.787 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-22 13:58:00,870.870 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:58:00,872.872 INFO    ] Checking for system updates...
[2026-06-22 13:58:00,909.909 INFO    ] 200
[2026-06-22 13:58:00,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:58:00,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:58:00,967.967 INFO    ] No update needed
[2026-06-22 13:58:00,969.969 INFO    ] Checking for camera pi updates...
[2026-06-22 13:58:01,005.005 INFO    ] 200
[2026-06-22 13:58:01,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:58:01,049.049 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:58:01,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:58:01,174.174 INFO    ] No camera update needed
[2026-06-22 13:58:01,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:58:01,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:58:01,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:58:01,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:58:03,239.239 INFO    ] ================================================
[2026-06-22 13:58:03,258.258 INFO    ] Launching Daemon at Mon Jun 22 13:58:03 IST 2026
[2026-06-22 13:58:03,276.276 INFO    ] ================================================
[2026-06-22 13:58:03,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:58:03
[2026-06-22 13:58:04,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:58:04,743.743 INFO    ] Initializing speech engine...
[2026-06-22 13:58:04,764.764 INFO    ] 2026-06-22 13:58:04
[2026-06-22 13:58:05,024.024 INFO    ] 2026-06-22 13:58:05
[2026-06-22 13:58:05,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:58:05,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:58:05,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:58:05,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:58:05,401.401 INFO    ] time= 22/06/2026 13:58:05
[2026-06-22 13:58:05,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:58:05,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:58:05,579.579 INFO    ] No existing commands found in stream
[2026-06-22 13:58:10,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:58:10,607.607 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-22 13:58:12,230.230 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:58:12,232.232 INFO    ] Checking for system updates...
[2026-06-22 13:58:12,271.271 INFO    ] 200
[2026-06-22 13:58:12,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:58:12,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:58:12,330.330 INFO    ] No update needed
[2026-06-22 13:58:12,332.332 INFO    ] Checking for camera pi updates...
[2026-06-22 13:58:12,365.365 INFO    ] 200
[2026-06-22 13:58:12,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:58:12,409.409 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:58:12,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:58:12,499.499 INFO    ] No camera update needed
[2026-06-22 13:58:12,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:58:12,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:58:12,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:58:12,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:58:14,555.555 INFO    ] ================================================
[2026-06-22 13:58:14,570.570 INFO    ] Launching Daemon at Mon Jun 22 13:58:14 IST 2026
[2026-06-22 13:58:14,580.580 INFO    ] ================================================
[2026-06-22 13:58:15,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:58:15
[2026-06-22 13:58:15,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:58:15,899.899 INFO    ] Initializing speech engine...
[2026-06-22 13:58:15,907.907 INFO    ] 2026-06-22 13:58:15
[2026-06-22 13:58:16,198.198 INFO    ] 2026-06-22 13:58:16
[2026-06-22 13:58:16,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:58:16,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:58:16,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:58:16,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:58:16,617.617 INFO    ] time= 22/06/2026 13:58:16
[2026-06-22 13:58:16,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:58:16,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:58:16,813.813 INFO    ] No existing commands found in stream
[2026-06-22 13:58:21,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:58:21,841.841 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-22 13:58:25,135.135 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 13:58:25,138.138 INFO    ] Checking for system updates...
[2026-06-22 13:58:25,176.176 INFO    ] 200
[2026-06-22 13:58:25,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:58:25,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:58:25,234.234 INFO    ] No update needed
[2026-06-22 13:58:25,237.237 INFO    ] Checking for camera pi updates...
[2026-06-22 13:58:25,272.272 INFO    ] 200
[2026-06-22 13:58:25,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:58:25,316.316 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:58:25,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:58:25,404.404 INFO    ] No camera update needed
[2026-06-22 13:58:25,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:58:25,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:58:25,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:58:25,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:58:27,461.461 INFO    ] ================================================
[2026-06-22 13:58:27,476.476 INFO    ] Launching Daemon at Mon Jun 22 13:58:27 IST 2026
[2026-06-22 13:58:27,488.488 INFO    ] ================================================
[2026-06-22 13:58:28,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:58:27
[2026-06-22 13:58:28,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:58:28,831.831 INFO    ] Initializing speech engine...
[2026-06-22 13:58:28,839.839 INFO    ] 2026-06-22 13:58:28
[2026-06-22 13:58:29,092.092 INFO    ] 2026-06-22 13:58:29
[2026-06-22 13:58:29,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:58:29,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:58:29,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:58:29,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:58:29,582.582 INFO    ] time= 22/06/2026 13:58:29
[2026-06-22 13:58:29,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:58:29,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:58:29,787.787 INFO    ] No existing commands found in stream
[2026-06-22 13:58:34,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:58:34,817.817 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-22 13:58:36,754.754 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:58:36,756.756 INFO    ] Checking for system updates...
[2026-06-22 13:58:36,792.792 INFO    ] 200
[2026-06-22 13:58:36,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:58:36,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:58:36,856.856 INFO    ] No update needed
[2026-06-22 13:58:36,859.859 INFO    ] Checking for camera pi updates...
[2026-06-22 13:58:36,894.894 INFO    ] 200
[2026-06-22 13:58:36,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:58:36,941.941 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:58:37,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:58:37,034.034 INFO    ] No camera update needed
[2026-06-22 13:58:37,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:58:37,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:58:37,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:58:37,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:58:39,091.091 INFO    ] ================================================
[2026-06-22 13:58:39,106.106 INFO    ] Launching Daemon at Mon Jun 22 13:58:39 IST 2026
[2026-06-22 13:58:39,118.118 INFO    ] ================================================
[2026-06-22 13:58:39,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:58:39
[2026-06-22 13:58:40,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:58:40,438.438 INFO    ] Initializing speech engine...
[2026-06-22 13:58:40,447.447 INFO    ] 2026-06-22 13:58:40
[2026-06-22 13:58:40,738.738 INFO    ] 2026-06-22 13:58:40
[2026-06-22 13:58:40,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:58:40,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:58:40,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:58:41,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:58:41,150.150 INFO    ] time= 22/06/2026 13:58:41
[2026-06-22 13:58:41,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:58:41,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:58:41,240.240 INFO    ] No existing commands found in stream
[2026-06-22 13:58:46,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:58:46,278.278 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-22 13:58:49,255.255 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 13:58:49,257.257 INFO    ] Checking for system updates...
[2026-06-22 13:58:49,294.294 INFO    ] 200
[2026-06-22 13:58:49,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:58:49,356.356 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:58:49,358.358 INFO    ] No update needed
[2026-06-22 13:58:49,361.361 INFO    ] Checking for camera pi updates...
[2026-06-22 13:58:49,395.395 INFO    ] 200
[2026-06-22 13:58:49,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:58:49,439.439 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:58:49,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 13:58:49,533.533 INFO    ] No camera update needed
[2026-06-22 13:58:49,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:58:49,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:58:49,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:58:49,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:58:51,589.589 INFO    ] ================================================
[2026-06-22 13:58:51,605.605 INFO    ] Launching Daemon at Mon Jun 22 13:58:51 IST 2026
[2026-06-22 13:58:51,616.616 INFO    ] ================================================
[2026-06-22 13:58:52,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:58:52
[2026-06-22 13:58:52,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:58:53,066.066 INFO    ] Initializing speech engine...
[2026-06-22 13:58:53,075.075 INFO    ] 2026-06-22 13:58:53
[2026-06-22 13:58:53,370.370 INFO    ] 2026-06-22 13:58:53
[2026-06-22 13:58:53,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:58:53,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:58:53,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:58:53,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:58:53,763.763 INFO    ] time= 22/06/2026 13:58:53
[2026-06-22 13:58:53,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:58:53,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:58:53,924.924 INFO    ] No existing commands found in stream
[2026-06-22 13:58:58,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:58:58,952.952 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-22 13:58:59,974.974 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 13:58:59,977.977 INFO    ] Checking for system updates...
[2026-06-22 13:59:00,012.012 INFO    ] 200
[2026-06-22 13:59:00,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:59:00,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:59:00,070.070 INFO    ] No update needed
[2026-06-22 13:59:00,072.072 INFO    ] Checking for camera pi updates...
[2026-06-22 13:59:00,106.106 INFO    ] 200
[2026-06-22 13:59:00,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:59:00,149.149 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:59:00,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:59:00,233.233 INFO    ] No camera update needed
[2026-06-22 13:59:00,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:59:00,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:59:00,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:59:00,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:59:02,297.297 INFO    ] ================================================
[2026-06-22 13:59:02,324.324 INFO    ] Launching Daemon at Mon Jun 22 13:59:02 IST 2026
[2026-06-22 13:59:02,346.346 INFO    ] ================================================
[2026-06-22 13:59:03,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:59:03
[2026-06-22 13:59:03,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:59:03,958.958 INFO    ] Initializing speech engine...
[2026-06-22 13:59:03,965.965 INFO    ] 2026-06-22 13:59:03
[2026-06-22 13:59:04,242.242 INFO    ] 2026-06-22 13:59:04
[2026-06-22 13:59:04,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:59:04,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:59:04,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:59:04,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:59:04,809.809 INFO    ] time= 22/06/2026 13:59:04
[2026-06-22 13:59:04,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:59:04,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:59:04,968.968 INFO    ] No existing commands found in stream
[2026-06-22 13:59:09,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:59:09,982.982 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-22 13:59:11,196.196 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 13:59:11,199.199 INFO    ] Checking for system updates...
[2026-06-22 13:59:11,229.229 INFO    ] 200
[2026-06-22 13:59:11,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:59:11,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:59:11,263.263 INFO    ] No update needed
[2026-06-22 13:59:11,264.264 INFO    ] Checking for camera pi updates...
[2026-06-22 13:59:11,285.285 INFO    ] 200
[2026-06-22 13:59:11,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:59:11,313.313 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:59:11,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:59:11,409.409 INFO    ] No camera update needed
[2026-06-22 13:59:11,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:59:11,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:59:11,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:59:11,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:59:13,470.470 INFO    ] ================================================
[2026-06-22 13:59:13,487.487 INFO    ] Launching Daemon at Mon Jun 22 13:59:13 IST 2026
[2026-06-22 13:59:13,498.498 INFO    ] ================================================
[2026-06-22 13:59:14,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:59:14
[2026-06-22 13:59:14,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:59:14,818.818 INFO    ] Initializing speech engine...
[2026-06-22 13:59:14,824.824 INFO    ] 2026-06-22 13:59:14
[2026-06-22 13:59:15,101.101 INFO    ] 2026-06-22 13:59:15
[2026-06-22 13:59:15,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:59:15,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:59:15,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:59:15,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:59:15,479.479 INFO    ] time= 22/06/2026 13:59:15
[2026-06-22 13:59:15,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:59:15,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:59:15,665.665 INFO    ] No existing commands found in stream
[2026-06-22 13:59:20,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:59:20,688.688 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-22 13:59:22,918.918 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 13:59:22,919.919 INFO    ] Checking for system updates...
[2026-06-22 13:59:22,941.941 INFO    ] 200
[2026-06-22 13:59:22,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:59:22,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:59:22,974.974 INFO    ] No update needed
[2026-06-22 13:59:22,976.976 INFO    ] Checking for camera pi updates...
[2026-06-22 13:59:22,996.996 INFO    ] 200
[2026-06-22 13:59:22,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:59:23,020.020 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:59:23,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:59:23,072.072 INFO    ] No camera update needed
[2026-06-22 13:59:23,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:59:23,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:59:23,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:59:23,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:59:25,129.129 INFO    ] ================================================
[2026-06-22 13:59:25,145.145 INFO    ] Launching Daemon at Mon Jun 22 13:59:25 IST 2026
[2026-06-22 13:59:25,156.156 INFO    ] ================================================
[2026-06-22 13:59:25,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:59:25
[2026-06-22 13:59:26,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:59:26,803.803 INFO    ] Initializing speech engine...
[2026-06-22 13:59:26,815.815 INFO    ] 2026-06-22 13:59:26
[2026-06-22 13:59:27,122.122 INFO    ] 2026-06-22 13:59:27
[2026-06-22 13:59:27,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:59:27,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:59:27,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:59:27,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:59:27,631.631 INFO    ] time= 22/06/2026 13:59:27
[2026-06-22 13:59:27,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:59:27,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:59:27,770.770 INFO    ] No existing commands found in stream
[2026-06-22 13:59:32,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:59:32,800.800 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-22 13:59:36,299.299 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:59:36,301.301 INFO    ] Checking for system updates...
[2026-06-22 13:59:36,321.321 INFO    ] 200
[2026-06-22 13:59:36,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:59:36,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:59:36,366.366 INFO    ] No update needed
[2026-06-22 13:59:36,368.368 INFO    ] Checking for camera pi updates...
[2026-06-22 13:59:36,403.403 INFO    ] 200
[2026-06-22 13:59:36,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:59:36,447.447 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:59:36,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:59:36,527.527 INFO    ] No camera update needed
[2026-06-22 13:59:36,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:59:36,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:59:36,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:59:36,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:59:38,586.586 INFO    ] ================================================
[2026-06-22 13:59:38,602.602 INFO    ] Launching Daemon at Mon Jun 22 13:59:38 IST 2026
[2026-06-22 13:59:38,613.613 INFO    ] ================================================
[2026-06-22 13:59:39,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:59:39
[2026-06-22 13:59:39,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:59:40,023.023 INFO    ] Initializing speech engine...
[2026-06-22 13:59:40,029.029 INFO    ] 2026-06-22 13:59:40
[2026-06-22 13:59:40,302.302 INFO    ] 2026-06-22 13:59:40
[2026-06-22 13:59:40,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:59:40,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:59:40,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:59:40,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:59:40,749.749 INFO    ] time= 22/06/2026 13:59:40
[2026-06-22 13:59:40,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:59:40,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:59:41,022.022 INFO    ] No existing commands found in stream
[2026-06-22 13:59:46,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:59:46,047.047 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-22 13:59:47,706.706 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 13:59:47,709.709 INFO    ] Checking for system updates...
[2026-06-22 13:59:47,750.750 INFO    ] 200
[2026-06-22 13:59:47,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:59:47,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:59:47,811.811 INFO    ] No update needed
[2026-06-22 13:59:47,814.814 INFO    ] Checking for camera pi updates...
[2026-06-22 13:59:47,850.850 INFO    ] 200
[2026-06-22 13:59:47,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 13:59:47,900.900 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 13:59:47,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 13:59:48,002.002 INFO    ] No camera update needed
[2026-06-22 13:59:48,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-22 13:59:48,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 13:59:48,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 13:59:48,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 13:59:50,061.061 INFO    ] ================================================
[2026-06-22 13:59:50,077.077 INFO    ] Launching Daemon at Mon Jun 22 13:59:50 IST 2026
[2026-06-22 13:59:50,088.088 INFO    ] ================================================
[2026-06-22 13:59:50,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 13:59:50
[2026-06-22 13:59:51,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 13:59:51,424.424 INFO    ] Initializing speech engine...
[2026-06-22 13:59:51,433.433 INFO    ] 2026-06-22 13:59:51
[2026-06-22 13:59:51,709.709 INFO    ] 2026-06-22 13:59:51
[2026-06-22 13:59:51,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 13:59:51,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 13:59:52,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 13:59:52,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 13:59:52,182.182 INFO    ] time= 22/06/2026 13:59:52
[2026-06-22 13:59:52,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 13:59:52,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-22 13:59:52,408.408 INFO    ] No existing commands found in stream
[2026-06-22 13:59:57,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 13:59:57,435.435 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-22 14:00:01,489.489 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:00:01,492.492 INFO    ] Checking for system updates...
[2026-06-22 14:00:01,530.530 INFO    ] 200
[2026-06-22 14:00:01,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:00:01,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:00:01,596.596 INFO    ] No update needed
[2026-06-22 14:00:01,599.599 INFO    ] Checking for camera pi updates...
[2026-06-22 14:00:01,635.635 INFO    ] 200
[2026-06-22 14:00:01,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:00:01,680.680 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:00:01,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:00:01,769.769 INFO    ] No camera update needed
[2026-06-22 14:00:01,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:00:01,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:00:01,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:00:01,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:00:03,928.928 INFO    ] ================================================
[2026-06-22 14:00:04,988.988 INFO    ] Launching Daemon at Mon Jun 22 14:00:03 IST 2026
[2026-06-22 14:00:04,050.050 INFO    ] ================================================
[2026-06-22 14:00:05,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:00:05
[2026-06-22 14:00:06,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:00:07,133.133 INFO    ] Initializing speech engine...
[2026-06-22 14:00:07,140.140 INFO    ] 2026-06-22 14:00:07
[2026-06-22 14:00:07,410.410 INFO    ] 2026-06-22 14:00:07
[2026-06-22 14:00:07,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:00:07,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:00:07,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:00:07,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:00:07,898.898 INFO    ] time= 22/06/2026 14:00:07
[2026-06-22 14:00:07,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:00:07,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:00:08,145.145 INFO    ] No existing commands found in stream
[2026-06-22 14:00:13,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:00:13,172.172 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-22 14:00:17,325.325 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:00:17,327.327 INFO    ] Checking for system updates...
[2026-06-22 14:00:17,363.363 INFO    ] 200
[2026-06-22 14:00:17,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:00:17,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:00:17,420.420 INFO    ] No update needed
[2026-06-22 14:00:17,422.422 INFO    ] Checking for camera pi updates...
[2026-06-22 14:00:17,456.456 INFO    ] 200
[2026-06-22 14:00:17,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:00:17,502.502 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:00:17,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:00:17,593.593 INFO    ] No camera update needed
[2026-06-22 14:00:17,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:00:17,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:00:17,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:00:17,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:00:19,648.648 INFO    ] ================================================
[2026-06-22 14:00:19,663.663 INFO    ] Launching Daemon at Mon Jun 22 14:00:19 IST 2026
[2026-06-22 14:00:19,674.674 INFO    ] ================================================
[2026-06-22 14:00:20,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:00:20
[2026-06-22 14:00:20,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:00:21,178.178 INFO    ] Initializing speech engine...
[2026-06-22 14:00:21,188.188 INFO    ] 2026-06-22 14:00:21
[2026-06-22 14:00:21,436.436 INFO    ] 2026-06-22 14:00:21
[2026-06-22 14:00:21,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:00:21,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:00:21,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:00:21,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:00:21,936.936 INFO    ] time= 22/06/2026 14:00:21
[2026-06-22 14:00:21,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:00:22,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:00:22,141.141 INFO    ] No existing commands found in stream
[2026-06-22 14:00:27,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:00:27,169.169 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-22 14:00:29,194.194 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:00:29,196.196 INFO    ] Checking for system updates...
[2026-06-22 14:00:29,220.220 INFO    ] 200
[2026-06-22 14:00:29,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:00:29,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:00:29,280.280 INFO    ] No update needed
[2026-06-22 14:00:29,282.282 INFO    ] Checking for camera pi updates...
[2026-06-22 14:00:29,318.318 INFO    ] 200
[2026-06-22 14:00:29,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:00:29,363.363 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:00:29,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:00:29,416.416 INFO    ] No camera update needed
[2026-06-22 14:00:29,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:00:29,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:00:29,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:00:29,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:00:31,477.477 INFO    ] ================================================
[2026-06-22 14:00:31,492.492 INFO    ] Launching Daemon at Mon Jun 22 14:00:31 IST 2026
[2026-06-22 14:00:31,503.503 INFO    ] ================================================
[2026-06-22 14:00:32,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:00:32
[2026-06-22 14:00:32,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:00:32,888.888 INFO    ] Initializing speech engine...
[2026-06-22 14:00:32,895.895 INFO    ] 2026-06-22 14:00:32
[2026-06-22 14:00:33,200.200 INFO    ] 2026-06-22 14:00:33
[2026-06-22 14:00:33,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:00:33,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:00:33,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:00:33,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:00:33,683.683 INFO    ] time= 22/06/2026 14:00:33
[2026-06-22 14:00:33,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:00:33,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:00:33,862.862 INFO    ] No existing commands found in stream
[2026-06-22 14:00:38,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:00:38,878.878 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-22 14:00:39,770.770 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:00:39,771.771 INFO    ] Checking for system updates...
[2026-06-22 14:00:39,792.792 INFO    ] 200
[2026-06-22 14:00:39,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:00:39,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:00:39,843.843 INFO    ] No update needed
[2026-06-22 14:00:39,846.846 INFO    ] Checking for camera pi updates...
[2026-06-22 14:00:39,880.880 INFO    ] 200
[2026-06-22 14:00:39,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:00:39,927.927 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:00:39,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:00:39,985.985 INFO    ] No camera update needed
[2026-06-22 14:00:39,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:00:39,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:00:39,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:00:40,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:00:42,042.042 INFO    ] ================================================
[2026-06-22 14:00:42,058.058 INFO    ] Launching Daemon at Mon Jun 22 14:00:42 IST 2026
[2026-06-22 14:00:42,069.069 INFO    ] ================================================
[2026-06-22 14:00:42,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:00:42
[2026-06-22 14:00:43,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:00:43,421.421 INFO    ] Initializing speech engine...
[2026-06-22 14:00:43,437.437 INFO    ] 2026-06-22 14:00:43
[2026-06-22 14:00:43,723.723 INFO    ] 2026-06-22 14:00:43
[2026-06-22 14:00:43,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:00:43,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:00:43,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:00:44,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:00:44,227.227 INFO    ] time= 22/06/2026 14:00:44
[2026-06-22 14:00:44,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:00:44,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:00:44,472.472 INFO    ] No existing commands found in stream
[2026-06-22 14:00:49,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:00:49,496.496 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-22 14:00:53,187.187 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:00:53,190.190 INFO    ] Checking for system updates...
[2026-06-22 14:00:53,233.233 INFO    ] 200
[2026-06-22 14:00:53,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:00:53,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:00:53,293.293 INFO    ] No update needed
[2026-06-22 14:00:53,296.296 INFO    ] Checking for camera pi updates...
[2026-06-22 14:00:53,331.331 INFO    ] 200
[2026-06-22 14:00:53,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:00:53,376.376 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:00:53,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:00:53,456.456 INFO    ] No camera update needed
[2026-06-22 14:00:53,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:00:53,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:00:53,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:00:53,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:00:55,515.515 INFO    ] ================================================
[2026-06-22 14:00:55,531.531 INFO    ] Launching Daemon at Mon Jun 22 14:00:55 IST 2026
[2026-06-22 14:00:55,542.542 INFO    ] ================================================
[2026-06-22 14:00:56,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:00:56
[2026-06-22 14:00:56,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:00:56,978.978 INFO    ] Initializing speech engine...
[2026-06-22 14:00:56,984.984 INFO    ] 2026-06-22 14:00:56
[2026-06-22 14:00:57,277.277 INFO    ] 2026-06-22 14:00:57
[2026-06-22 14:00:57,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:00:57,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:00:57,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:00:57,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:00:57,693.693 INFO    ] time= 22/06/2026 14:00:57
[2026-06-22 14:00:57,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:00:57,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:00:57,832.832 INFO    ] No existing commands found in stream
[2026-06-22 14:01:02,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:01:02,860.860 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-22 14:01:07,291.291 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:01:07,294.294 INFO    ] Checking for system updates...
[2026-06-22 14:01:07,331.331 INFO    ] 200
[2026-06-22 14:01:07,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:01:07,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:01:07,391.391 INFO    ] No update needed
[2026-06-22 14:01:07,394.394 INFO    ] Checking for camera pi updates...
[2026-06-22 14:01:07,429.429 INFO    ] 200
[2026-06-22 14:01:07,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:01:07,473.473 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:01:07,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:01:07,573.573 INFO    ] No camera update needed
[2026-06-22 14:01:07,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:01:07,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:01:07,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:01:07,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:01:09,632.632 INFO    ] ================================================
[2026-06-22 14:01:09,648.648 INFO    ] Launching Daemon at Mon Jun 22 14:01:09 IST 2026
[2026-06-22 14:01:09,659.659 INFO    ] ================================================
[2026-06-22 14:01:10,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:01:10
[2026-06-22 14:01:10,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:01:11,279.279 INFO    ] Initializing speech engine...
[2026-06-22 14:01:11,290.290 INFO    ] 2026-06-22 14:01:11
[2026-06-22 14:01:11,569.569 INFO    ] 2026-06-22 14:01:11
[2026-06-22 14:01:11,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:01:11,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:01:11,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:01:12,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:01:12,120.120 INFO    ] time= 22/06/2026 14:01:12
[2026-06-22 14:01:12,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:01:12,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:01:12,281.281 INFO    ] No existing commands found in stream
[2026-06-22 14:01:17,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:01:17,300.300 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-22 14:01:17,916.916 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:01:17,918.918 INFO    ] Checking for system updates...
[2026-06-22 14:01:17,939.939 INFO    ] 200
[2026-06-22 14:01:17,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:01:17,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:01:17,998.998 INFO    ] No update needed
[2026-06-22 14:01:18,000.000 INFO    ] Checking for camera pi updates...
[2026-06-22 14:01:18,033.033 INFO    ] 200
[2026-06-22 14:01:18,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:01:18,080.080 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:01:18,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:01:18,262.262 INFO    ] No camera update needed
[2026-06-22 14:01:18,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:01:18,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:01:18,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:01:18,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:01:20,319.319 INFO    ] ================================================
[2026-06-22 14:01:20,334.334 INFO    ] Launching Daemon at Mon Jun 22 14:01:20 IST 2026
[2026-06-22 14:01:20,345.345 INFO    ] ================================================
[2026-06-22 14:01:20,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:01:20
[2026-06-22 14:01:21,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:01:21,810.810 INFO    ] Initializing speech engine...
[2026-06-22 14:01:21,827.827 INFO    ] 2026-06-22 14:01:21
[2026-06-22 14:01:22,101.101 INFO    ] 2026-06-22 14:01:22
[2026-06-22 14:01:22,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:01:22,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:01:22,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:01:22,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:01:22,627.627 INFO    ] time= 22/06/2026 14:01:22
[2026-06-22 14:01:22,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:01:22,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:01:22,883.883 INFO    ] No existing commands found in stream
[2026-06-22 14:01:27,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:01:27,913.913 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-22 14:01:31,317.317 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:01:31,320.320 INFO    ] Checking for system updates...
[2026-06-22 14:01:31,365.365 INFO    ] 200
[2026-06-22 14:01:31,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:01:31,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:01:31,428.428 INFO    ] No update needed
[2026-06-22 14:01:31,431.431 INFO    ] Checking for camera pi updates...
[2026-06-22 14:01:31,475.475 INFO    ] 200
[2026-06-22 14:01:31,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:01:31,522.522 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:01:31,608.608 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:01:31,610.610 INFO    ] No camera update needed
[2026-06-22 14:01:31,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:01:31,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:01:31,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:01:31,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:01:33,667.667 INFO    ] ================================================
[2026-06-22 14:01:33,682.682 INFO    ] Launching Daemon at Mon Jun 22 14:01:33 IST 2026
[2026-06-22 14:01:33,693.693 INFO    ] ================================================
[2026-06-22 14:01:34,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:01:34
[2026-06-22 14:01:34,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:01:35,123.123 INFO    ] Initializing speech engine...
[2026-06-22 14:01:35,130.130 INFO    ] 2026-06-22 14:01:35
[2026-06-22 14:01:35,393.393 INFO    ] 2026-06-22 14:01:35
[2026-06-22 14:01:35,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:01:35,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:01:35,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:01:35,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:01:35,885.885 INFO    ] time= 22/06/2026 14:01:35
[2026-06-22 14:01:35,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:01:35,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:01:36,097.097 INFO    ] No existing commands found in stream
[2026-06-22 14:01:41,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:01:41,118.118 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-22 14:01:42,337.337 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:01:42,339.339 INFO    ] Checking for system updates...
[2026-06-22 14:01:42,360.360 INFO    ] 200
[2026-06-22 14:01:42,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:01:42,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:01:42,417.417 INFO    ] No update needed
[2026-06-22 14:01:42,419.419 INFO    ] Checking for camera pi updates...
[2026-06-22 14:01:42,454.454 INFO    ] 200
[2026-06-22 14:01:42,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:01:42,497.497 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:01:42,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:01:42,568.568 INFO    ] No camera update needed
[2026-06-22 14:01:42,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:01:42,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:01:42,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:01:42,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:01:44,622.622 INFO    ] ================================================
[2026-06-22 14:01:44,637.637 INFO    ] Launching Daemon at Mon Jun 22 14:01:44 IST 2026
[2026-06-22 14:01:44,648.648 INFO    ] ================================================
[2026-06-22 14:01:45,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:01:45
[2026-06-22 14:01:45,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:01:46,008.008 INFO    ] Initializing speech engine...
[2026-06-22 14:01:46,017.017 INFO    ] 2026-06-22 14:01:46
[2026-06-22 14:01:46,290.290 INFO    ] 2026-06-22 14:01:46
[2026-06-22 14:01:46,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:01:46,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:01:46,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:01:46,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:01:46,702.702 INFO    ] time= 22/06/2026 14:01:46
[2026-06-22 14:01:46,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:01:46,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:01:46,897.897 INFO    ] No existing commands found in stream
[2026-06-22 14:01:51,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:01:51,925.925 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-22 14:01:54,578.578 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:01:54,581.581 INFO    ] Checking for system updates...
[2026-06-22 14:01:54,621.621 INFO    ] 200
[2026-06-22 14:01:54,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:01:54,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:01:54,679.679 INFO    ] No update needed
[2026-06-22 14:01:54,681.681 INFO    ] Checking for camera pi updates...
[2026-06-22 14:01:54,716.716 INFO    ] 200
[2026-06-22 14:01:54,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:01:54,758.758 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:01:54,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:01:54,846.846 INFO    ] No camera update needed
[2026-06-22 14:01:54,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:01:54,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:01:54,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:01:54,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:01:56,903.903 INFO    ] ================================================
[2026-06-22 14:01:56,919.919 INFO    ] Launching Daemon at Mon Jun 22 14:01:56 IST 2026
[2026-06-22 14:01:56,930.930 INFO    ] ================================================
[2026-06-22 14:01:57,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:01:57
[2026-06-22 14:01:58,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:01:58,446.446 INFO    ] Initializing speech engine...
[2026-06-22 14:01:58,466.466 INFO    ] 2026-06-22 14:01:58
[2026-06-22 14:01:58,728.728 INFO    ] 2026-06-22 14:01:58
[2026-06-22 14:01:58,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:01:59,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:01:59,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:01:59,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:01:59,226.226 INFO    ] time= 22/06/2026 14:01:59
[2026-06-22 14:01:59,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:01:59,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:01:59,451.451 INFO    ] No existing commands found in stream
[2026-06-22 14:02:04,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:02:04,499.499 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-22 14:02:08,790.790 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:02:08,793.793 INFO    ] Checking for system updates...
[2026-06-22 14:02:08,830.830 INFO    ] 200
[2026-06-22 14:02:08,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:02:08,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:02:08,889.889 INFO    ] No update needed
[2026-06-22 14:02:08,892.892 INFO    ] Checking for camera pi updates...
[2026-06-22 14:02:08,928.928 INFO    ] 200
[2026-06-22 14:02:08,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:02:08,972.972 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:02:09,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:02:09,073.073 INFO    ] No camera update needed
[2026-06-22 14:02:09,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:02:09,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:02:09,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:02:09,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:02:11,134.134 INFO    ] ================================================
[2026-06-22 14:02:11,150.150 INFO    ] Launching Daemon at Mon Jun 22 14:02:11 IST 2026
[2026-06-22 14:02:11,161.161 INFO    ] ================================================
[2026-06-22 14:02:11,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:02:11
[2026-06-22 14:02:12,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:02:12,581.581 INFO    ] Initializing speech engine...
[2026-06-22 14:02:12,594.594 INFO    ] 2026-06-22 14:02:12
[2026-06-22 14:02:12,860.860 INFO    ] 2026-06-22 14:02:12
[2026-06-22 14:02:12,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:02:13,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:02:13,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:02:13,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:02:13,330.330 INFO    ] time= 22/06/2026 14:02:13
[2026-06-22 14:02:13,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:02:13,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:02:13,572.572 INFO    ] No existing commands found in stream
[2026-06-22 14:02:18,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:02:18,599.599 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-22 14:02:20,327.327 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:02:20,329.329 INFO    ] Checking for system updates...
[2026-06-22 14:02:20,368.368 INFO    ] 200
[2026-06-22 14:02:20,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:02:20,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:02:20,425.425 INFO    ] No update needed
[2026-06-22 14:02:20,428.428 INFO    ] Checking for camera pi updates...
[2026-06-22 14:02:20,462.462 INFO    ] 200
[2026-06-22 14:02:20,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:02:20,506.506 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:02:20,593.593 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:02:20,595.595 INFO    ] No camera update needed
[2026-06-22 14:02:20,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:02:20,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:02:20,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:02:20,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:02:22,656.656 INFO    ] ================================================
[2026-06-22 14:02:22,672.672 INFO    ] Launching Daemon at Mon Jun 22 14:02:22 IST 2026
[2026-06-22 14:02:22,683.683 INFO    ] ================================================
[2026-06-22 14:02:23,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:02:23
[2026-06-22 14:02:23,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:02:24,151.151 INFO    ] Initializing speech engine...
[2026-06-22 14:02:24,159.159 INFO    ] 2026-06-22 14:02:24
[2026-06-22 14:02:24,428.428 INFO    ] 2026-06-22 14:02:24
[2026-06-22 14:02:24,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:02:24,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:02:24,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:02:24,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:02:24,909.909 INFO    ] time= 22/06/2026 14:02:24
[2026-06-22 14:02:24,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:02:24,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:02:25,062.062 INFO    ] No existing commands found in stream
[2026-06-22 14:02:30,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:02:30,075.075 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-22 14:02:31,500.500 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:02:31,503.503 INFO    ] Checking for system updates...
[2026-06-22 14:02:31,540.540 INFO    ] 200
[2026-06-22 14:02:31,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:02:31,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:02:31,603.603 INFO    ] No update needed
[2026-06-22 14:02:31,606.606 INFO    ] Checking for camera pi updates...
[2026-06-22 14:02:31,639.639 INFO    ] 200
[2026-06-22 14:02:31,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:02:31,681.681 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:02:31,735.735 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:02:31,738.738 INFO    ] No camera update needed
[2026-06-22 14:02:31,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:02:31,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:02:31,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:02:31,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:02:33,797.797 INFO    ] ================================================
[2026-06-22 14:02:33,812.812 INFO    ] Launching Daemon at Mon Jun 22 14:02:33 IST 2026
[2026-06-22 14:02:33,824.824 INFO    ] ================================================
[2026-06-22 14:02:34,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:02:34
[2026-06-22 14:02:35,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:02:35,288.288 INFO    ] Initializing speech engine...
[2026-06-22 14:02:35,297.297 INFO    ] 2026-06-22 14:02:35
[2026-06-22 14:02:35,547.547 INFO    ] 2026-06-22 14:02:35
[2026-06-22 14:02:35,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:02:35,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:02:35,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:02:35,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:02:36,000.000 INFO    ] time= 22/06/2026 14:02:35
[2026-06-22 14:02:36,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:02:36,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:02:36,176.176 INFO    ] No existing commands found in stream
[2026-06-22 14:02:41,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:02:41,210.210 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-22 14:02:44,766.766 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:02:44,769.769 INFO    ] Checking for system updates...
[2026-06-22 14:02:44,806.806 INFO    ] 200
[2026-06-22 14:02:44,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:02:44,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:02:44,869.869 INFO    ] No update needed
[2026-06-22 14:02:44,872.872 INFO    ] Checking for camera pi updates...
[2026-06-22 14:02:44,909.909 INFO    ] 200
[2026-06-22 14:02:44,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:02:44,954.954 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:02:45,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:02:45,009.009 INFO    ] No camera update needed
[2026-06-22 14:02:45,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:02:45,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:02:45,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:02:45,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:02:47,066.066 INFO    ] ================================================
[2026-06-22 14:02:47,082.082 INFO    ] Launching Daemon at Mon Jun 22 14:02:47 IST 2026
[2026-06-22 14:02:47,093.093 INFO    ] ================================================
[2026-06-22 14:02:47,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:02:47
[2026-06-22 14:02:48,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:02:48,475.475 INFO    ] Initializing speech engine...
[2026-06-22 14:02:48,484.484 INFO    ] 2026-06-22 14:02:48
[2026-06-22 14:02:48,749.749 INFO    ] 2026-06-22 14:02:48
[2026-06-22 14:02:48,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:02:49,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:02:49,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:02:49,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:02:49,297.297 INFO    ] time= 22/06/2026 14:02:49
[2026-06-22 14:02:49,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:02:49,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:02:49,450.450 INFO    ] No existing commands found in stream
[2026-06-22 14:02:54,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:02:54,468.468 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-22 14:02:55,410.410 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:02:55,413.413 INFO    ] Checking for system updates...
[2026-06-22 14:02:55,450.450 INFO    ] 200
[2026-06-22 14:02:55,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:02:55,509.509 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:02:55,512.512 INFO    ] No update needed
[2026-06-22 14:02:55,515.515 INFO    ] Checking for camera pi updates...
[2026-06-22 14:02:55,556.556 INFO    ] 200
[2026-06-22 14:02:55,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:02:55,603.603 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:02:55,657.657 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:02:55,660.660 INFO    ] No camera update needed
[2026-06-22 14:02:55,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:02:55,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:02:55,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:02:55,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:02:57,723.723 INFO    ] ================================================
[2026-06-22 14:02:57,738.738 INFO    ] Launching Daemon at Mon Jun 22 14:02:57 IST 2026
[2026-06-22 14:02:57,748.748 INFO    ] ================================================
[2026-06-22 14:02:58,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:02:58
[2026-06-22 14:02:58,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:02:59,205.205 INFO    ] Initializing speech engine...
[2026-06-22 14:02:59,214.214 INFO    ] 2026-06-22 14:02:59
[2026-06-22 14:02:59,514.514 INFO    ] 2026-06-22 14:02:59
[2026-06-22 14:02:59,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:02:59,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:02:59,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:02:59,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:02:59,942.942 INFO    ] time= 22/06/2026 14:02:59
[2026-06-22 14:02:59,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:02:59,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:03:00,031.031 INFO    ] No existing commands found in stream
[2026-06-22 14:03:05,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:03:05,064.064 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-22 14:03:07,425.425 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:03:07,426.426 INFO    ] Checking for system updates...
[2026-06-22 14:03:07,447.447 INFO    ] 200
[2026-06-22 14:03:07,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:03:07,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:03:07,480.480 INFO    ] No update needed
[2026-06-22 14:03:07,481.481 INFO    ] Checking for camera pi updates...
[2026-06-22 14:03:07,503.503 INFO    ] 200
[2026-06-22 14:03:07,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:03:07,539.539 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:03:07,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:03:07,621.621 INFO    ] No camera update needed
[2026-06-22 14:03:07,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:03:07,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:03:07,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:03:07,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:03:09,677.677 INFO    ] ================================================
[2026-06-22 14:03:09,692.692 INFO    ] Launching Daemon at Mon Jun 22 14:03:09 IST 2026
[2026-06-22 14:03:09,703.703 INFO    ] ================================================
[2026-06-22 14:03:10,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:03:10
[2026-06-22 14:03:10,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:03:11,119.119 INFO    ] Initializing speech engine...
[2026-06-22 14:03:11,139.139 INFO    ] 2026-06-22 14:03:11
[2026-06-22 14:03:11,390.390 INFO    ] 2026-06-22 14:03:11
[2026-06-22 14:03:11,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:03:11,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:03:11,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:03:11,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:03:11,896.896 INFO    ] time= 22/06/2026 14:03:11
[2026-06-22 14:03:11,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:03:11,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:03:12,116.116 INFO    ] No existing commands found in stream
[2026-06-22 14:03:17,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:03:17,130.130 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-22 14:03:20,016.016 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:03:20,019.019 INFO    ] Checking for system updates...
[2026-06-22 14:03:20,055.055 INFO    ] 200
[2026-06-22 14:03:20,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:03:20,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:03:20,114.114 INFO    ] No update needed
[2026-06-22 14:03:20,117.117 INFO    ] Checking for camera pi updates...
[2026-06-22 14:03:20,150.150 INFO    ] 200
[2026-06-22 14:03:20,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:03:20,193.193 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:03:20,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:03:20,370.370 INFO    ] No camera update needed
[2026-06-22 14:03:20,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:03:20,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:03:20,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:03:20,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:03:22,427.427 INFO    ] ================================================
[2026-06-22 14:03:22,442.442 INFO    ] Launching Daemon at Mon Jun 22 14:03:22 IST 2026
[2026-06-22 14:03:22,454.454 INFO    ] ================================================
[2026-06-22 14:03:23,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:03:23
[2026-06-22 14:03:23,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:03:23,900.900 INFO    ] Initializing speech engine...
[2026-06-22 14:03:23,909.909 INFO    ] 2026-06-22 14:03:23
[2026-06-22 14:03:24,158.158 INFO    ] 2026-06-22 14:03:24
[2026-06-22 14:03:24,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:03:24,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:03:24,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:03:24,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:03:24,650.650 INFO    ] time= 22/06/2026 14:03:24
[2026-06-22 14:03:24,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:03:24,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:03:24,857.857 INFO    ] No existing commands found in stream
[2026-06-22 14:03:29,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:03:29,886.886 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-22 14:03:31,613.613 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:03:31,616.616 INFO    ] Checking for system updates...
[2026-06-22 14:03:31,652.652 INFO    ] 200
[2026-06-22 14:03:31,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:03:31,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:03:31,710.710 INFO    ] No update needed
[2026-06-22 14:03:31,713.713 INFO    ] Checking for camera pi updates...
[2026-06-22 14:03:31,747.747 INFO    ] 200
[2026-06-22 14:03:31,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:03:31,791.791 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:03:31,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:03:31,858.858 INFO    ] No camera update needed
[2026-06-22 14:03:31,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:03:31,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:03:31,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:03:31,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:03:33,920.920 INFO    ] ================================================
[2026-06-22 14:03:33,936.936 INFO    ] Launching Daemon at Mon Jun 22 14:03:33 IST 2026
[2026-06-22 14:03:33,947.947 INFO    ] ================================================
[2026-06-22 14:03:34,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:03:34
[2026-06-22 14:03:35,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:03:35,523.523 INFO    ] Initializing speech engine...
[2026-06-22 14:03:35,532.532 INFO    ] 2026-06-22 14:03:35
[2026-06-22 14:03:35,799.799 INFO    ] 2026-06-22 14:03:35
[2026-06-22 14:03:35,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:03:36,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:03:36,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:03:36,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:03:36,277.277 INFO    ] time= 22/06/2026 14:03:36
[2026-06-22 14:03:36,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:03:36,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:03:36,503.503 INFO    ] No existing commands found in stream
[2026-06-22 14:03:41,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:03:41,526.526 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-22 14:03:42,540.540 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:03:42,543.543 INFO    ] Checking for system updates...
[2026-06-22 14:03:42,580.580 INFO    ] 200
[2026-06-22 14:03:42,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:03:42,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:03:42,643.643 INFO    ] No update needed
[2026-06-22 14:03:42,646.646 INFO    ] Checking for camera pi updates...
[2026-06-22 14:03:42,679.679 INFO    ] 200
[2026-06-22 14:03:42,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:03:42,732.732 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:03:42,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:03:42,820.820 INFO    ] No camera update needed
[2026-06-22 14:03:42,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:03:42,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:03:42,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:03:42,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:03:44,878.878 INFO    ] ================================================
[2026-06-22 14:03:44,894.894 INFO    ] Launching Daemon at Mon Jun 22 14:03:44 IST 2026
[2026-06-22 14:03:44,906.906 INFO    ] ================================================
[2026-06-22 14:03:45,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:03:45
[2026-06-22 14:03:46,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:03:46,268.268 INFO    ] Initializing speech engine...
[2026-06-22 14:03:46,282.282 INFO    ] 2026-06-22 14:03:46
[2026-06-22 14:03:46,568.568 INFO    ] 2026-06-22 14:03:46
[2026-06-22 14:03:46,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:03:46,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:03:46,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:03:46,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:03:46,990.990 INFO    ] time= 22/06/2026 14:03:46
[2026-06-22 14:03:46,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:03:47,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:03:47,188.188 INFO    ] No existing commands found in stream
[2026-06-22 14:03:52,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:03:52,216.216 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-22 14:03:53,528.528 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:03:53,531.531 INFO    ] Checking for system updates...
[2026-06-22 14:03:53,570.570 INFO    ] 200
[2026-06-22 14:03:53,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:03:53,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:03:53,630.630 INFO    ] No update needed
[2026-06-22 14:03:53,633.633 INFO    ] Checking for camera pi updates...
[2026-06-22 14:03:53,668.668 INFO    ] 200
[2026-06-22 14:03:53,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:03:53,717.717 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:03:53,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:03:53,816.816 INFO    ] No camera update needed
[2026-06-22 14:03:53,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:03:53,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:03:53,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:03:53,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:03:55,873.873 INFO    ] ================================================
[2026-06-22 14:03:55,888.888 INFO    ] Launching Daemon at Mon Jun 22 14:03:55 IST 2026
[2026-06-22 14:03:55,900.900 INFO    ] ================================================
[2026-06-22 14:03:56,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:03:56
[2026-06-22 14:03:57,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:03:57,413.413 INFO    ] Initializing speech engine...
[2026-06-22 14:03:57,427.427 INFO    ] 2026-06-22 14:03:57
[2026-06-22 14:03:57,702.702 INFO    ] 2026-06-22 14:03:57
[2026-06-22 14:03:57,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:03:58,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:03:58,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:03:58,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:03:58,240.240 INFO    ] time= 22/06/2026 14:03:58
[2026-06-22 14:03:58,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:03:58,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:03:58,399.399 INFO    ] No existing commands found in stream
[2026-06-22 14:04:03,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:04:03,432.432 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-22 14:04:07,212.212 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:04:07,216.216 INFO    ] Checking for system updates...
[2026-06-22 14:04:07,253.253 INFO    ] 200
[2026-06-22 14:04:07,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:04:07,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:04:07,313.313 INFO    ] No update needed
[2026-06-22 14:04:07,316.316 INFO    ] Checking for camera pi updates...
[2026-06-22 14:04:07,351.351 INFO    ] 200
[2026-06-22 14:04:07,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:04:07,395.395 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:04:07,484.484 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:04:07,487.487 INFO    ] No camera update needed
[2026-06-22 14:04:07,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:04:07,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:04:07,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:04:07,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:04:09,542.542 INFO    ] ================================================
[2026-06-22 14:04:09,558.558 INFO    ] Launching Daemon at Mon Jun 22 14:04:09 IST 2026
[2026-06-22 14:04:09,569.569 INFO    ] ================================================
[2026-06-22 14:04:10,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:04:10
[2026-06-22 14:04:10,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:04:11,126.126 INFO    ] Initializing speech engine...
[2026-06-22 14:04:11,141.141 INFO    ] 2026-06-22 14:04:11
[2026-06-22 14:04:11,427.427 INFO    ] 2026-06-22 14:04:11
[2026-06-22 14:04:11,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:04:11,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:04:11,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:04:11,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:04:11,946.946 INFO    ] time= 22/06/2026 14:04:11
[2026-06-22 14:04:11,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:04:12,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:04:12,153.153 INFO    ] No existing commands found in stream
[2026-06-22 14:04:17,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:04:17,195.195 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-22 14:04:19,234.234 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:04:19,236.236 INFO    ] Checking for system updates...
[2026-06-22 14:04:19,257.257 INFO    ] 200
[2026-06-22 14:04:19,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:04:19,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:04:19,313.313 INFO    ] No update needed
[2026-06-22 14:04:19,316.316 INFO    ] Checking for camera pi updates...
[2026-06-22 14:04:19,354.354 INFO    ] 200
[2026-06-22 14:04:19,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:04:19,397.397 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:04:19,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:04:19,478.478 INFO    ] No camera update needed
[2026-06-22 14:04:19,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:04:19,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:04:19,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:04:19,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:04:21,536.536 INFO    ] ================================================
[2026-06-22 14:04:21,552.552 INFO    ] Launching Daemon at Mon Jun 22 14:04:21 IST 2026
[2026-06-22 14:04:21,563.563 INFO    ] ================================================
[2026-06-22 14:04:22,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:04:22
[2026-06-22 14:04:22,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:04:22,904.904 INFO    ] Initializing speech engine...
[2026-06-22 14:04:22,916.916 INFO    ] 2026-06-22 14:04:22
[2026-06-22 14:04:23,193.193 INFO    ] 2026-06-22 14:04:23
[2026-06-22 14:04:23,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:04:23,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:04:23,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:04:23,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:04:23,674.674 INFO    ] time= 22/06/2026 14:04:23
[2026-06-22 14:04:23,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:04:23,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:04:23,899.899 INFO    ] No existing commands found in stream
[2026-06-22 14:04:28,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:04:28,928.928 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-22 14:04:31,614.614 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:04:31,617.617 INFO    ] Checking for system updates...
[2026-06-22 14:04:31,660.660 INFO    ] 200
[2026-06-22 14:04:31,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:04:31,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:04:31,724.724 INFO    ] No update needed
[2026-06-22 14:04:31,727.727 INFO    ] Checking for camera pi updates...
[2026-06-22 14:04:31,762.762 INFO    ] 200
[2026-06-22 14:04:31,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:04:31,807.807 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:04:31,882.882 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:04:31,885.885 INFO    ] No camera update needed
[2026-06-22 14:04:31,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:04:31,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:04:31,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:04:31,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:04:33,951.951 INFO    ] ================================================
[2026-06-22 14:04:33,967.967 INFO    ] Launching Daemon at Mon Jun 22 14:04:33 IST 2026
[2026-06-22 14:04:33,978.978 INFO    ] ================================================
[2026-06-22 14:04:34,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:04:34
[2026-06-22 14:04:35,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:04:35,325.325 INFO    ] Initializing speech engine...
[2026-06-22 14:04:35,328.328 INFO    ] 2026-06-22 14:04:35
[2026-06-22 14:04:35,630.630 INFO    ] 2026-06-22 14:04:35
[2026-06-22 14:04:35,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:04:35,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:04:35,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:04:36,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:04:36,128.128 INFO    ] time= 22/06/2026 14:04:36
[2026-06-22 14:04:36,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:04:36,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:04:36,327.327 INFO    ] No existing commands found in stream
[2026-06-22 14:04:41,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:04:41,356.356 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-22 14:04:43,239.239 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:04:43,242.242 INFO    ] Checking for system updates...
[2026-06-22 14:04:43,282.282 INFO    ] 200
[2026-06-22 14:04:43,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:04:43,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:04:43,348.348 INFO    ] No update needed
[2026-06-22 14:04:43,350.350 INFO    ] Checking for camera pi updates...
[2026-06-22 14:04:43,388.388 INFO    ] 200
[2026-06-22 14:04:43,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:04:43,431.431 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:04:43,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:04:43,512.512 INFO    ] No camera update needed
[2026-06-22 14:04:43,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:04:43,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:04:43,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:04:43,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:04:45,568.568 INFO    ] ================================================
[2026-06-22 14:04:45,583.583 INFO    ] Launching Daemon at Mon Jun 22 14:04:45 IST 2026
[2026-06-22 14:04:45,593.593 INFO    ] ================================================
[2026-06-22 14:04:46,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:04:46
[2026-06-22 14:04:46,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:04:46,934.934 INFO    ] Initializing speech engine...
[2026-06-22 14:04:46,939.939 INFO    ] 2026-06-22 14:04:46
[2026-06-22 14:04:47,192.192 INFO    ] 2026-06-22 14:04:47
[2026-06-22 14:04:47,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:04:47,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:04:47,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:04:47,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:04:47,741.741 INFO    ] time= 22/06/2026 14:04:47
[2026-06-22 14:04:47,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:04:47,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:04:47,897.897 INFO    ] No existing commands found in stream
[2026-06-22 14:04:52,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:04:52,911.911 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-22 14:04:53,795.795 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:04:53,798.798 INFO    ] Checking for system updates...
[2026-06-22 14:04:53,836.836 INFO    ] 200
[2026-06-22 14:04:53,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:04:53,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:04:53,903.903 INFO    ] No update needed
[2026-06-22 14:04:53,906.906 INFO    ] Checking for camera pi updates...
[2026-06-22 14:04:53,941.941 INFO    ] 200
[2026-06-22 14:04:53,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:04:53,986.986 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:04:54,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:04:54,077.077 INFO    ] No camera update needed
[2026-06-22 14:04:54,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:04:54,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:04:54,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:04:54,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:04:56,136.136 INFO    ] ================================================
[2026-06-22 14:04:56,152.152 INFO    ] Launching Daemon at Mon Jun 22 14:04:56 IST 2026
[2026-06-22 14:04:56,164.164 INFO    ] ================================================
[2026-06-22 14:04:56,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:04:56
[2026-06-22 14:04:57,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:04:57,577.577 INFO    ] Initializing speech engine...
[2026-06-22 14:04:57,586.586 INFO    ] 2026-06-22 14:04:57
[2026-06-22 14:04:57,861.861 INFO    ] 2026-06-22 14:04:57
[2026-06-22 14:04:57,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:04:58,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:04:58,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:04:58,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:04:58,326.326 INFO    ] time= 22/06/2026 14:04:58
[2026-06-22 14:04:58,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:04:58,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:04:58,571.571 INFO    ] No existing commands found in stream
[2026-06-22 14:05:03,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:05:03,598.598 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-22 14:05:07,126.126 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:05:07,129.129 INFO    ] Checking for system updates...
[2026-06-22 14:05:07,165.165 INFO    ] 200
[2026-06-22 14:05:07,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:05:07,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:05:07,225.225 INFO    ] No update needed
[2026-06-22 14:05:07,227.227 INFO    ] Checking for camera pi updates...
[2026-06-22 14:05:07,265.265 INFO    ] 200
[2026-06-22 14:05:07,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:05:07,302.302 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:05:07,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:05:07,379.379 INFO    ] No camera update needed
[2026-06-22 14:05:07,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:05:07,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:05:07,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:05:07,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:05:09,436.436 INFO    ] ================================================
[2026-06-22 14:05:09,452.452 INFO    ] Launching Daemon at Mon Jun 22 14:05:09 IST 2026
[2026-06-22 14:05:09,463.463 INFO    ] ================================================
[2026-06-22 14:05:10,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:05:10
[2026-06-22 14:05:10,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:05:10,911.911 INFO    ] Initializing speech engine...
[2026-06-22 14:05:10,917.917 INFO    ] 2026-06-22 14:05:10
[2026-06-22 14:05:11,179.179 INFO    ] 2026-06-22 14:05:11
[2026-06-22 14:05:11,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:05:11,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:05:11,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:05:11,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:05:11,651.651 INFO    ] time= 22/06/2026 14:05:11
[2026-06-22 14:05:11,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:05:11,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:05:11,799.799 INFO    ] No existing commands found in stream
[2026-06-22 14:05:16,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:05:16,831.831 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-22 14:05:20,500.500 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:05:20,502.502 INFO    ] Checking for system updates...
[2026-06-22 14:05:20,535.535 INFO    ] 200
[2026-06-22 14:05:20,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:05:20,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:05:20,595.595 INFO    ] No update needed
[2026-06-22 14:05:20,598.598 INFO    ] Checking for camera pi updates...
[2026-06-22 14:05:20,636.636 INFO    ] 200
[2026-06-22 14:05:20,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:05:20,680.680 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:05:20,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:05:20,734.734 INFO    ] No camera update needed
[2026-06-22 14:05:20,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:05:20,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:05:20,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:05:20,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:05:22,791.791 INFO    ] ================================================
[2026-06-22 14:05:22,807.807 INFO    ] Launching Daemon at Mon Jun 22 14:05:22 IST 2026
[2026-06-22 14:05:22,818.818 INFO    ] ================================================
[2026-06-22 14:05:23,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:05:23
[2026-06-22 14:05:23,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:05:24,214.214 INFO    ] Initializing speech engine...
[2026-06-22 14:05:24,237.237 INFO    ] 2026-06-22 14:05:24
[2026-06-22 14:05:24,491.491 INFO    ] 2026-06-22 14:05:24
[2026-06-22 14:05:24,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:05:24,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:05:24,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:05:24,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:05:24,950.950 INFO    ] time= 22/06/2026 14:05:24
[2026-06-22 14:05:25,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:05:25,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:05:25,205.205 INFO    ] No existing commands found in stream
[2026-06-22 14:05:30,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:05:30,231.231 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-22 14:05:34,366.366 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:05:34,369.369 INFO    ] Checking for system updates...
[2026-06-22 14:05:34,405.405 INFO    ] 200
[2026-06-22 14:05:34,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:05:34,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:05:34,463.463 INFO    ] No update needed
[2026-06-22 14:05:34,466.466 INFO    ] Checking for camera pi updates...
[2026-06-22 14:05:34,500.500 INFO    ] 200
[2026-06-22 14:05:34,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:05:34,542.542 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:05:34,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:05:34,630.630 INFO    ] No camera update needed
[2026-06-22 14:05:34,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:05:34,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:05:34,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:05:34,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:05:36,688.688 INFO    ] ================================================
[2026-06-22 14:05:36,706.706 INFO    ] Launching Daemon at Mon Jun 22 14:05:36 IST 2026
[2026-06-22 14:05:36,717.717 INFO    ] ================================================
[2026-06-22 14:05:37,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:05:37
[2026-06-22 14:05:37,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:05:38,106.106 INFO    ] Initializing speech engine...
[2026-06-22 14:05:38,119.119 INFO    ] 2026-06-22 14:05:38
[2026-06-22 14:05:38,383.383 INFO    ] 2026-06-22 14:05:38
[2026-06-22 14:05:38,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:05:38,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:05:38,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:05:38,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:05:38,854.854 INFO    ] time= 22/06/2026 14:05:38
[2026-06-22 14:05:38,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:05:38,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:05:39,078.078 INFO    ] No existing commands found in stream
[2026-06-22 14:05:44,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:05:44,106.106 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-22 14:05:45,410.410 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:05:45,413.413 INFO    ] Checking for system updates...
[2026-06-22 14:05:45,449.449 INFO    ] 200
[2026-06-22 14:05:45,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:05:45,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:05:45,513.513 INFO    ] No update needed
[2026-06-22 14:05:45,516.516 INFO    ] Checking for camera pi updates...
[2026-06-22 14:05:45,553.553 INFO    ] 200
[2026-06-22 14:05:45,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:05:45,600.600 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:05:45,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:05:45,687.687 INFO    ] No camera update needed
[2026-06-22 14:05:45,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:05:45,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:05:45,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:05:45,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:05:47,752.752 INFO    ] ================================================
[2026-06-22 14:05:47,767.767 INFO    ] Launching Daemon at Mon Jun 22 14:05:47 IST 2026
[2026-06-22 14:05:47,778.778 INFO    ] ================================================
[2026-06-22 14:05:48,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:05:48
[2026-06-22 14:05:48,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:05:49,234.234 INFO    ] Initializing speech engine...
[2026-06-22 14:05:49,243.243 INFO    ] 2026-06-22 14:05:49
[2026-06-22 14:05:49,506.506 INFO    ] 2026-06-22 14:05:49
[2026-06-22 14:05:49,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:05:49,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:05:49,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:05:49,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:05:49,996.996 INFO    ] time= 22/06/2026 14:05:49
[2026-06-22 14:05:50,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:05:50,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:05:50,199.199 INFO    ] No existing commands found in stream
[2026-06-22 14:05:55,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:05:55,218.218 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-22 14:05:59,576.576 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:05:59,579.579 INFO    ] Checking for system updates...
[2026-06-22 14:05:59,615.615 INFO    ] 200
[2026-06-22 14:05:59,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:05:59,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:05:59,678.678 INFO    ] No update needed
[2026-06-22 14:05:59,680.680 INFO    ] Checking for camera pi updates...
[2026-06-22 14:05:59,714.714 INFO    ] 200
[2026-06-22 14:05:59,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:05:59,758.758 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:05:59,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:05:59,847.847 INFO    ] No camera update needed
[2026-06-22 14:05:59,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:05:59,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:05:59,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:05:59,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:06:01,909.909 INFO    ] ================================================
[2026-06-22 14:06:01,930.930 INFO    ] Launching Daemon at Mon Jun 22 14:06:01 IST 2026
[2026-06-22 14:06:01,944.944 INFO    ] ================================================
[2026-06-22 14:06:02,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:06:02
[2026-06-22 14:06:03,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:06:03,565.565 INFO    ] Initializing speech engine...
[2026-06-22 14:06:03,576.576 INFO    ] 2026-06-22 14:06:03
[2026-06-22 14:06:03,852.852 INFO    ] 2026-06-22 14:06:03
[2026-06-22 14:06:03,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:06:04,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:06:04,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:06:04,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:06:04,423.423 INFO    ] time= 22/06/2026 14:06:04
[2026-06-22 14:06:04,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:06:04,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:06:04,581.581 INFO    ] No existing commands found in stream
[2026-06-22 14:06:09,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:06:09,605.605 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-22 14:06:13,532.532 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:06:13,533.533 INFO    ] Checking for system updates...
[2026-06-22 14:06:13,555.555 INFO    ] 200
[2026-06-22 14:06:13,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:06:13,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:06:13,599.599 INFO    ] No update needed
[2026-06-22 14:06:13,602.602 INFO    ] Checking for camera pi updates...
[2026-06-22 14:06:13,637.637 INFO    ] 200
[2026-06-22 14:06:13,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:06:13,687.687 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:06:13,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:06:13,778.778 INFO    ] No camera update needed
[2026-06-22 14:06:13,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:06:13,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:06:13,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:06:13,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:06:15,836.836 INFO    ] ================================================
[2026-06-22 14:06:15,851.851 INFO    ] Launching Daemon at Mon Jun 22 14:06:15 IST 2026
[2026-06-22 14:06:15,862.862 INFO    ] ================================================
[2026-06-22 14:06:16,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:06:16
[2026-06-22 14:06:17,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:06:17,292.292 INFO    ] Initializing speech engine...
[2026-06-22 14:06:17,301.301 INFO    ] 2026-06-22 14:06:17
[2026-06-22 14:06:17,559.559 INFO    ] 2026-06-22 14:06:17
[2026-06-22 14:06:17,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:06:17,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:06:17,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:06:17,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:06:18,044.044 INFO    ] time= 22/06/2026 14:06:17
[2026-06-22 14:06:18,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:06:18,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:06:18,274.274 INFO    ] No existing commands found in stream
[2026-06-22 14:06:23,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:06:23,293.293 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-22 14:06:24,457.457 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:06:24,459.459 INFO    ] Checking for system updates...
[2026-06-22 14:06:24,500.500 INFO    ] 200
[2026-06-22 14:06:24,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:06:24,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:06:24,561.561 INFO    ] No update needed
[2026-06-22 14:06:24,565.565 INFO    ] Checking for camera pi updates...
[2026-06-22 14:06:24,604.604 INFO    ] 200
[2026-06-22 14:06:24,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:06:24,653.653 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:06:24,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:06:24,745.745 INFO    ] No camera update needed
[2026-06-22 14:06:24,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:06:24,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:06:24,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:06:24,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:06:26,804.804 INFO    ] ================================================
[2026-06-22 14:06:26,820.820 INFO    ] Launching Daemon at Mon Jun 22 14:06:26 IST 2026
[2026-06-22 14:06:26,831.831 INFO    ] ================================================
[2026-06-22 14:06:27,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:06:27
[2026-06-22 14:06:28,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:06:28,379.379 INFO    ] Initializing speech engine...
[2026-06-22 14:06:28,390.390 INFO    ] 2026-06-22 14:06:28
[2026-06-22 14:06:28,674.674 INFO    ] 2026-06-22 14:06:28
[2026-06-22 14:06:28,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:06:29,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:06:29,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:06:30,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:06:30,149.149 INFO    ] time= 22/06/2026 14:06:30
[2026-06-22 14:06:30,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:06:30,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:06:30,229.229 INFO    ] No existing commands found in stream
[2026-06-22 14:06:35,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:06:35,247.247 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-22 14:06:39,509.509 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:06:39,510.510 INFO    ] Checking for system updates...
[2026-06-22 14:06:39,531.531 INFO    ] 200
[2026-06-22 14:06:39,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:06:39,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:06:39,567.567 INFO    ] No update needed
[2026-06-22 14:06:39,569.569 INFO    ] Checking for camera pi updates...
[2026-06-22 14:06:39,591.591 INFO    ] 200
[2026-06-22 14:06:39,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:06:39,625.625 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:06:39,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:06:39,712.712 INFO    ] No camera update needed
[2026-06-22 14:06:39,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:06:39,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:06:39,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:06:39,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:06:41,772.772 INFO    ] ================================================
[2026-06-22 14:06:41,788.788 INFO    ] Launching Daemon at Mon Jun 22 14:06:41 IST 2026
[2026-06-22 14:06:41,799.799 INFO    ] ================================================
[2026-06-22 14:06:42,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:06:42
[2026-06-22 14:06:43,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:06:43,429.429 INFO    ] Initializing speech engine...
[2026-06-22 14:06:43,439.439 INFO    ] 2026-06-22 14:06:43
[2026-06-22 14:06:43,710.710 INFO    ] 2026-06-22 14:06:43
[2026-06-22 14:06:43,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:06:43,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:06:44,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:06:44,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:06:44,222.222 INFO    ] time= 22/06/2026 14:06:44
[2026-06-22 14:06:44,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:06:44,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:06:44,411.411 INFO    ] No existing commands found in stream
[2026-06-22 14:06:49,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:06:49,433.433 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-22 14:06:53,309.309 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:06:53,312.312 INFO    ] Checking for system updates...
[2026-06-22 14:06:53,348.348 INFO    ] 200
[2026-06-22 14:06:53,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:06:53,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:06:53,413.413 INFO    ] No update needed
[2026-06-22 14:06:53,416.416 INFO    ] Checking for camera pi updates...
[2026-06-22 14:06:53,449.449 INFO    ] 200
[2026-06-22 14:06:53,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:06:53,492.492 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:06:53,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:06:53,575.575 INFO    ] No camera update needed
[2026-06-22 14:06:53,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:06:53,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:06:53,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:06:53,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:06:55,630.630 INFO    ] ================================================
[2026-06-22 14:06:55,646.646 INFO    ] Launching Daemon at Mon Jun 22 14:06:55 IST 2026
[2026-06-22 14:06:55,657.657 INFO    ] ================================================
[2026-06-22 14:06:56,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:06:56
[2026-06-22 14:06:56,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:06:57,094.094 INFO    ] Initializing speech engine...
[2026-06-22 14:06:57,106.106 INFO    ] 2026-06-22 14:06:57
[2026-06-22 14:06:57,362.362 INFO    ] 2026-06-22 14:06:57
[2026-06-22 14:06:57,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:06:57,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:06:57,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:06:57,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:06:57,834.834 INFO    ] time= 22/06/2026 14:06:57
[2026-06-22 14:06:57,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:06:57,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:06:58,068.068 INFO    ] No existing commands found in stream
[2026-06-22 14:07:03,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:07:03,092.092 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-22 14:07:03,649.649 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:07:03,652.652 INFO    ] Checking for system updates...
[2026-06-22 14:07:03,688.688 INFO    ] 200
[2026-06-22 14:07:03,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:07:03,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:07:03,755.755 INFO    ] No update needed
[2026-06-22 14:07:03,758.758 INFO    ] Checking for camera pi updates...
[2026-06-22 14:07:03,794.794 INFO    ] 200
[2026-06-22 14:07:03,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:07:03,839.839 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:07:03,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:07:03,928.928 INFO    ] No camera update needed
[2026-06-22 14:07:03,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:07:03,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:07:03,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:07:03,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:07:05,989.989 INFO    ] ================================================
[2026-06-22 14:07:06,006.006 INFO    ] Launching Daemon at Mon Jun 22 14:07:05 IST 2026
[2026-06-22 14:07:06,018.018 INFO    ] ================================================
[2026-06-22 14:07:06,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:07:06
[2026-06-22 14:07:07,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:07:07,457.457 INFO    ] Initializing speech engine...
[2026-06-22 14:07:07,476.476 INFO    ] 2026-06-22 14:07:07
[2026-06-22 14:07:07,726.726 INFO    ] 2026-06-22 14:07:07
[2026-06-22 14:07:07,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:07:07,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:07:08,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:07:08,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:07:08,196.196 INFO    ] time= 22/06/2026 14:07:08
[2026-06-22 14:07:08,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:07:08,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:07:08,435.435 INFO    ] No existing commands found in stream
[2026-06-22 14:07:13,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:07:13,468.468 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-22 14:07:14,829.829 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:07:14,832.832 INFO    ] Checking for system updates...
[2026-06-22 14:07:14,868.868 INFO    ] 200
[2026-06-22 14:07:14,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:07:14,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:07:14,929.929 INFO    ] No update needed
[2026-06-22 14:07:14,932.932 INFO    ] Checking for camera pi updates...
[2026-06-22 14:07:14,967.967 INFO    ] 200
[2026-06-22 14:07:14,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:07:15,012.012 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:07:15,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:07:15,101.101 INFO    ] No camera update needed
[2026-06-22 14:07:15,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:07:15,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:07:15,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:07:15,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:07:17,166.166 INFO    ] ================================================
[2026-06-22 14:07:17,182.182 INFO    ] Launching Daemon at Mon Jun 22 14:07:17 IST 2026
[2026-06-22 14:07:17,193.193 INFO    ] ================================================
[2026-06-22 14:07:17,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:07:17
[2026-06-22 14:07:18,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:07:18,636.636 INFO    ] Initializing speech engine...
[2026-06-22 14:07:18,656.656 INFO    ] 2026-06-22 14:07:18
[2026-06-22 14:07:18,908.908 INFO    ] 2026-06-22 14:07:18
[2026-06-22 14:07:18,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:07:19,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:07:19,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:07:19,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:07:19,413.413 INFO    ] time= 22/06/2026 14:07:19
[2026-06-22 14:07:19,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:07:19,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:07:19,628.628 INFO    ] No existing commands found in stream
[2026-06-22 14:07:24,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:07:24,651.651 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-22 14:07:27,372.372 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:07:27,375.375 INFO    ] Checking for system updates...
[2026-06-22 14:07:27,411.411 INFO    ] 200
[2026-06-22 14:07:27,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:07:27,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:07:27,477.477 INFO    ] No update needed
[2026-06-22 14:07:27,479.479 INFO    ] Checking for camera pi updates...
[2026-06-22 14:07:27,512.512 INFO    ] 200
[2026-06-22 14:07:27,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:07:27,555.555 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:07:27,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:07:27,620.620 INFO    ] No camera update needed
[2026-06-22 14:07:27,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:07:27,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:07:27,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:07:27,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:07:29,675.675 INFO    ] ================================================
[2026-06-22 14:07:29,691.691 INFO    ] Launching Daemon at Mon Jun 22 14:07:29 IST 2026
[2026-06-22 14:07:29,701.701 INFO    ] ================================================
[2026-06-22 14:07:30,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:07:30
[2026-06-22 14:07:30,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:07:31,135.135 INFO    ] Initializing speech engine...
[2026-06-22 14:07:31,140.140 INFO    ] 2026-06-22 14:07:31
[2026-06-22 14:07:31,426.426 INFO    ] 2026-06-22 14:07:31
[2026-06-22 14:07:31,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:07:31,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:07:31,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:07:31,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:07:31,949.949 INFO    ] time= 22/06/2026 14:07:31
[2026-06-22 14:07:32,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:07:32,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:07:32,175.175 INFO    ] No existing commands found in stream
[2026-06-22 14:07:37,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:07:37,193.193 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-22 14:07:40,143.143 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:07:40,146.146 INFO    ] Checking for system updates...
[2026-06-22 14:07:40,181.181 INFO    ] 200
[2026-06-22 14:07:40,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:07:40,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:07:40,240.240 INFO    ] No update needed
[2026-06-22 14:07:40,242.242 INFO    ] Checking for camera pi updates...
[2026-06-22 14:07:40,277.277 INFO    ] 200
[2026-06-22 14:07:40,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:07:40,321.321 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:07:40,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:07:40,473.473 INFO    ] No camera update needed
[2026-06-22 14:07:40,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:07:40,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:07:40,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:07:40,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:07:42,530.530 INFO    ] ================================================
[2026-06-22 14:07:42,545.545 INFO    ] Launching Daemon at Mon Jun 22 14:07:42 IST 2026
[2026-06-22 14:07:42,556.556 INFO    ] ================================================
[2026-06-22 14:07:43,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:07:43
[2026-06-22 14:07:43,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:07:44,041.041 INFO    ] Initializing speech engine...
[2026-06-22 14:07:44,053.053 INFO    ] 2026-06-22 14:07:44
[2026-06-22 14:07:44,337.337 INFO    ] 2026-06-22 14:07:44
[2026-06-22 14:07:44,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:07:44,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:07:44,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:07:44,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:07:44,860.860 INFO    ] time= 22/06/2026 14:07:44
[2026-06-22 14:07:44,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:07:44,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:07:45,014.014 INFO    ] No existing commands found in stream
[2026-06-22 14:07:50,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:07:50,031.031 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-22 14:07:53,399.399 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:07:53,402.402 INFO    ] Checking for system updates...
[2026-06-22 14:07:53,438.438 INFO    ] 200
[2026-06-22 14:07:53,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:07:53,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:07:53,497.497 INFO    ] No update needed
[2026-06-22 14:07:53,500.500 INFO    ] Checking for camera pi updates...
[2026-06-22 14:07:53,535.535 INFO    ] 200
[2026-06-22 14:07:53,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:07:53,583.583 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:07:53,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:07:53,664.664 INFO    ] No camera update needed
[2026-06-22 14:07:53,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:07:53,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:07:53,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:07:53,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:07:55,721.721 INFO    ] ================================================
[2026-06-22 14:07:55,736.736 INFO    ] Launching Daemon at Mon Jun 22 14:07:55 IST 2026
[2026-06-22 14:07:55,746.746 INFO    ] ================================================
[2026-06-22 14:07:56,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:07:56
[2026-06-22 14:07:56,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:07:57,116.116 INFO    ] Initializing speech engine...
[2026-06-22 14:07:57,121.121 INFO    ] 2026-06-22 14:07:57
[2026-06-22 14:07:57,371.371 INFO    ] 2026-06-22 14:07:57
[2026-06-22 14:07:57,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:07:57,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:07:57,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:07:57,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:07:57,873.873 INFO    ] time= 22/06/2026 14:07:57
[2026-06-22 14:07:57,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:07:57,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:07:58,087.087 INFO    ] No existing commands found in stream
[2026-06-22 14:08:03,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:08:03,108.108 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-22 14:08:04,665.665 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:08:04,668.668 INFO    ] Checking for system updates...
[2026-06-22 14:08:04,708.708 INFO    ] 200
[2026-06-22 14:08:04,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:08:04,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:08:04,766.766 INFO    ] No update needed
[2026-06-22 14:08:04,768.768 INFO    ] Checking for camera pi updates...
[2026-06-22 14:08:04,806.806 INFO    ] 200
[2026-06-22 14:08:04,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:08:04,850.850 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:08:04,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:08:04,937.937 INFO    ] No camera update needed
[2026-06-22 14:08:04,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:08:04,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:08:04,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:08:04,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:08:06,994.994 INFO    ] ================================================
[2026-06-22 14:08:07,009.009 INFO    ] Launching Daemon at Mon Jun 22 14:08:07 IST 2026
[2026-06-22 14:08:07,020.020 INFO    ] ================================================
[2026-06-22 14:08:07,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:08:07
[2026-06-22 14:08:08,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:08:08,675.675 INFO    ] Initializing speech engine...
[2026-06-22 14:08:08,687.687 INFO    ] 2026-06-22 14:08:08
[2026-06-22 14:08:08,951.951 INFO    ] 2026-06-22 14:08:08
[2026-06-22 14:08:09,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:08:09,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:08:09,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:08:09,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:08:09,343.343 INFO    ] time= 22/06/2026 14:08:09
[2026-06-22 14:08:09,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:08:09,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:08:09,458.458 INFO    ] No existing commands found in stream
[2026-06-22 14:08:14,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:08:14,473.473 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-22 14:08:18,993.993 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:08:18,996.996 INFO    ] Checking for system updates...
[2026-06-22 14:08:19,033.033 INFO    ] 200
[2026-06-22 14:08:19,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:08:19,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:08:19,105.105 INFO    ] No update needed
[2026-06-22 14:08:19,107.107 INFO    ] Checking for camera pi updates...
[2026-06-22 14:08:19,142.142 INFO    ] 200
[2026-06-22 14:08:19,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:08:19,185.185 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:08:19,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:08:19,272.272 INFO    ] No camera update needed
[2026-06-22 14:08:19,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:08:19,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:08:19,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:08:19,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:08:21,329.329 INFO    ] ================================================
[2026-06-22 14:08:21,344.344 INFO    ] Launching Daemon at Mon Jun 22 14:08:21 IST 2026
[2026-06-22 14:08:21,355.355 INFO    ] ================================================
[2026-06-22 14:08:21,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:08:21
[2026-06-22 14:08:22,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:08:22,714.714 INFO    ] Initializing speech engine...
[2026-06-22 14:08:22,724.724 INFO    ] 2026-06-22 14:08:22
[2026-06-22 14:08:22,978.978 INFO    ] 2026-06-22 14:08:22
[2026-06-22 14:08:23,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:08:23,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:08:23,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:08:23,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:08:23,485.485 INFO    ] time= 22/06/2026 14:08:23
[2026-06-22 14:08:23,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:08:23,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:08:23,684.684 INFO    ] No existing commands found in stream
[2026-06-22 14:08:28,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:08:28,709.709 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-22 14:08:31,667.667 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:08:31,670.670 INFO    ] Checking for system updates...
[2026-06-22 14:08:31,718.718 INFO    ] 200
[2026-06-22 14:08:31,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:08:31,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:08:31,787.787 INFO    ] No update needed
[2026-06-22 14:08:31,790.790 INFO    ] Checking for camera pi updates...
[2026-06-22 14:08:31,831.831 INFO    ] 200
[2026-06-22 14:08:31,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:08:31,885.885 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:08:31,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:08:31,941.941 INFO    ] No camera update needed
[2026-06-22 14:08:31,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:08:31,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:08:31,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:08:31,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:08:34,002.002 INFO    ] ================================================
[2026-06-22 14:08:34,018.018 INFO    ] Launching Daemon at Mon Jun 22 14:08:34 IST 2026
[2026-06-22 14:08:34,028.028 INFO    ] ================================================
[2026-06-22 14:08:34,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:08:34
[2026-06-22 14:08:35,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:08:35,614.614 INFO    ] Initializing speech engine...
[2026-06-22 14:08:35,620.620 INFO    ] 2026-06-22 14:08:35
[2026-06-22 14:08:35,894.894 INFO    ] 2026-06-22 14:08:35
[2026-06-22 14:08:36,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:08:36,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:08:36,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:08:36,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:08:36,429.429 INFO    ] time= 22/06/2026 14:08:36
[2026-06-22 14:08:36,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:08:36,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:08:36,583.583 INFO    ] No existing commands found in stream
[2026-06-22 14:08:41,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:08:41,612.612 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-22 14:08:44,337.337 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:08:44,339.339 INFO    ] Checking for system updates...
[2026-06-22 14:08:44,362.362 INFO    ] 200
[2026-06-22 14:08:44,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:08:44,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:08:44,398.398 INFO    ] No update needed
[2026-06-22 14:08:44,399.399 INFO    ] Checking for camera pi updates...
[2026-06-22 14:08:44,419.419 INFO    ] 200
[2026-06-22 14:08:44,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:08:44,467.467 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:08:44,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:08:44,548.548 INFO    ] No camera update needed
[2026-06-22 14:08:44,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:08:44,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:08:44,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:08:44,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:08:46,604.604 INFO    ] ================================================
[2026-06-22 14:08:46,619.619 INFO    ] Launching Daemon at Mon Jun 22 14:08:46 IST 2026
[2026-06-22 14:08:46,630.630 INFO    ] ================================================
[2026-06-22 14:08:47,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:08:47
[2026-06-22 14:08:47,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:08:48,109.109 INFO    ] Initializing speech engine...
[2026-06-22 14:08:48,118.118 INFO    ] 2026-06-22 14:08:48
[2026-06-22 14:08:48,406.406 INFO    ] 2026-06-22 14:08:48
[2026-06-22 14:08:48,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:08:48,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:08:48,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:08:48,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:08:48,885.885 INFO    ] time= 22/06/2026 14:08:48
[2026-06-22 14:08:48,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:08:48,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:08:49,093.093 INFO    ] No existing commands found in stream
[2026-06-22 14:08:54,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:08:54,118.118 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-22 14:08:56,571.571 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:08:56,574.574 INFO    ] Checking for system updates...
[2026-06-22 14:08:56,611.611 INFO    ] 200
[2026-06-22 14:08:56,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:08:56,667.667 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:08:56,670.670 INFO    ] No update needed
[2026-06-22 14:08:56,672.672 INFO    ] Checking for camera pi updates...
[2026-06-22 14:08:56,706.706 INFO    ] 200
[2026-06-22 14:08:56,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:08:56,750.750 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:08:56,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:08:56,840.840 INFO    ] No camera update needed
[2026-06-22 14:08:56,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:08:56,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:08:56,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:08:56,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:08:58,896.896 INFO    ] ================================================
[2026-06-22 14:08:58,911.911 INFO    ] Launching Daemon at Mon Jun 22 14:08:58 IST 2026
[2026-06-22 14:08:58,922.922 INFO    ] ================================================
[2026-06-22 14:08:59,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:08:59
[2026-06-22 14:09:00,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:09:00,292.292 INFO    ] Initializing speech engine...
[2026-06-22 14:09:00,299.299 INFO    ] 2026-06-22 14:09:00
[2026-06-22 14:09:00,562.562 INFO    ] 2026-06-22 14:09:00
[2026-06-22 14:09:00,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:09:00,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:09:00,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:09:01,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:09:01,110.110 INFO    ] time= 22/06/2026 14:09:01
[2026-06-22 14:09:01,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:09:01,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:09:01,266.266 INFO    ] No existing commands found in stream
[2026-06-22 14:09:06,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:09:06,289.289 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-22 14:09:10,629.629 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:09:10,632.632 INFO    ] Checking for system updates...
[2026-06-22 14:09:10,669.669 INFO    ] 200
[2026-06-22 14:09:10,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:09:10,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:09:10,736.736 INFO    ] No update needed
[2026-06-22 14:09:10,739.739 INFO    ] Checking for camera pi updates...
[2026-06-22 14:09:10,778.778 INFO    ] 200
[2026-06-22 14:09:10,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:09:10,826.826 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:09:10,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:09:10,914.914 INFO    ] No camera update needed
[2026-06-22 14:09:10,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:09:10,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:09:10,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:09:10,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:09:12,975.975 INFO    ] ================================================
[2026-06-22 14:09:12,990.990 INFO    ] Launching Daemon at Mon Jun 22 14:09:12 IST 2026
[2026-06-22 14:09:13,001.001 INFO    ] ================================================
[2026-06-22 14:09:13,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:09:13
[2026-06-22 14:09:14,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:09:14,358.358 INFO    ] Initializing speech engine...
[2026-06-22 14:09:14,367.367 INFO    ] 2026-06-22 14:09:14
[2026-06-22 14:09:14,667.667 INFO    ] 2026-06-22 14:09:14
[2026-06-22 14:09:14,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:09:14,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:09:14,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:09:15,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:09:15,093.093 INFO    ] time= 22/06/2026 14:09:15
[2026-06-22 14:09:15,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:09:15,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:09:15,182.182 INFO    ] No existing commands found in stream
[2026-06-22 14:09:20,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:09:20,198.198 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-22 14:09:23,670.670 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:09:23,673.673 INFO    ] Checking for system updates...
[2026-06-22 14:09:23,713.713 INFO    ] 200
[2026-06-22 14:09:23,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:09:23,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:09:23,771.771 INFO    ] No update needed
[2026-06-22 14:09:23,774.774 INFO    ] Checking for camera pi updates...
[2026-06-22 14:09:23,816.816 INFO    ] 200
[2026-06-22 14:09:23,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:09:23,858.858 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:09:23,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:09:23,952.952 INFO    ] No camera update needed
[2026-06-22 14:09:23,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:09:23,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:09:23,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:09:23,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:09:26,008.008 INFO    ] ================================================
[2026-06-22 14:09:26,024.024 INFO    ] Launching Daemon at Mon Jun 22 14:09:26 IST 2026
[2026-06-22 14:09:26,034.034 INFO    ] ================================================
[2026-06-22 14:09:26,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:09:26
[2026-06-22 14:09:27,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:09:27,396.396 INFO    ] Initializing speech engine...
[2026-06-22 14:09:27,405.405 INFO    ] 2026-06-22 14:09:27
[2026-06-22 14:09:27,656.656 INFO    ] 2026-06-22 14:09:27
[2026-06-22 14:09:27,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:09:27,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:09:27,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:09:28,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:09:28,194.194 INFO    ] time= 22/06/2026 14:09:28
[2026-06-22 14:09:28,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:09:28,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:09:28,376.376 INFO    ] No existing commands found in stream
[2026-06-22 14:09:33,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:09:33,407.407 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-22 14:09:37,525.525 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:09:37,526.526 INFO    ] Checking for system updates...
[2026-06-22 14:09:37,547.547 INFO    ] 200
[2026-06-22 14:09:37,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:09:37,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:09:37,580.580 INFO    ] No update needed
[2026-06-22 14:09:37,582.582 INFO    ] Checking for camera pi updates...
[2026-06-22 14:09:37,609.609 INFO    ] 200
[2026-06-22 14:09:37,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:09:37,652.652 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:09:37,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:09:37,759.759 INFO    ] No camera update needed
[2026-06-22 14:09:37,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:09:37,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:09:37,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:09:37,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:09:39,825.825 INFO    ] ================================================
[2026-06-22 14:09:39,840.840 INFO    ] Launching Daemon at Mon Jun 22 14:09:39 IST 2026
[2026-06-22 14:09:39,851.851 INFO    ] ================================================
[2026-06-22 14:09:40,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:09:40
[2026-06-22 14:09:41,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:09:41,403.403 INFO    ] Initializing speech engine...
[2026-06-22 14:09:41,410.410 INFO    ] 2026-06-22 14:09:41
[2026-06-22 14:09:41,709.709 INFO    ] 2026-06-22 14:09:41
[2026-06-22 14:09:41,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:09:42,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:09:42,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:09:42,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:09:42,252.252 INFO    ] time= 22/06/2026 14:09:42
[2026-06-22 14:09:42,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:09:42,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:09:42,417.417 INFO    ] No existing commands found in stream
[2026-06-22 14:09:47,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:09:47,456.456 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-22 14:09:48,921.921 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:09:48,922.922 INFO    ] Checking for system updates...
[2026-06-22 14:09:48,946.946 INFO    ] 200
[2026-06-22 14:09:48,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:09:48,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:09:48,980.980 INFO    ] No update needed
[2026-06-22 14:09:48,982.982 INFO    ] Checking for camera pi updates...
[2026-06-22 14:09:49,009.009 INFO    ] 200
[2026-06-22 14:09:49,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:09:49,053.053 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:09:49,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:09:49,236.236 INFO    ] No camera update needed
[2026-06-22 14:09:49,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:09:49,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:09:49,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:09:49,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:09:51,290.290 INFO    ] ================================================
[2026-06-22 14:09:51,306.306 INFO    ] Launching Daemon at Mon Jun 22 14:09:51 IST 2026
[2026-06-22 14:09:51,318.318 INFO    ] ================================================
[2026-06-22 14:09:51,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:09:51
[2026-06-22 14:09:52,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:09:52,970.970 INFO    ] Initializing speech engine...
[2026-06-22 14:09:52,980.980 INFO    ] 2026-06-22 14:09:52
[2026-06-22 14:09:53,250.250 INFO    ] 2026-06-22 14:09:53
[2026-06-22 14:09:53,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:09:53,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:09:53,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:09:53,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:09:53,720.720 INFO    ] time= 22/06/2026 14:09:53
[2026-06-22 14:09:53,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:09:53,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:09:53,962.962 INFO    ] No existing commands found in stream
[2026-06-22 14:09:58,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:09:58,995.995 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-22 14:10:02,183.183 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:10:02,187.187 INFO    ] Checking for system updates...
[2026-06-22 14:10:02,243.243 INFO    ] 200
[2026-06-22 14:10:02,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:10:02,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:10:02,321.321 INFO    ] No update needed
[2026-06-22 14:10:02,332.332 INFO    ] Checking for camera pi updates...
[2026-06-22 14:10:02,375.375 INFO    ] 200
[2026-06-22 14:10:02,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:10:02,434.434 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:10:02,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:10:02,489.489 INFO    ] No camera update needed
[2026-06-22 14:10:02,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:10:02,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:10:02,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:10:02,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:10:04,553.553 INFO    ] ================================================
[2026-06-22 14:10:04,568.568 INFO    ] Launching Daemon at Mon Jun 22 14:10:04 IST 2026
[2026-06-22 14:10:04,579.579 INFO    ] ================================================
[2026-06-22 14:10:05,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:10:05
[2026-06-22 14:10:05,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:10:06,129.129 INFO    ] Initializing speech engine...
[2026-06-22 14:10:06,138.138 INFO    ] 2026-06-22 14:10:06
[2026-06-22 14:10:06,364.364 INFO    ] 2026-06-22 14:10:06
[2026-06-22 14:10:06,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:10:06,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:10:06,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:10:06,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:10:06,883.883 INFO    ] time= 22/06/2026 14:10:06
[2026-06-22 14:10:06,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:10:06,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:10:07,044.044 INFO    ] No existing commands found in stream
[2026-06-22 14:10:12,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:10:12,083.083 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-22 14:10:12,685.685 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:10:12,686.686 INFO    ] Checking for system updates...
[2026-06-22 14:10:12,710.710 INFO    ] 200
[2026-06-22 14:10:12,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:10:12,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:10:12,777.777 INFO    ] No update needed
[2026-06-22 14:10:12,780.780 INFO    ] Checking for camera pi updates...
[2026-06-22 14:10:12,815.815 INFO    ] 200
[2026-06-22 14:10:12,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:10:12,859.859 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:10:12,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:10:12,952.952 INFO    ] No camera update needed
[2026-06-22 14:10:12,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:10:12,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:10:12,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:10:12,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:10:15,012.012 INFO    ] ================================================
[2026-06-22 14:10:15,028.028 INFO    ] Launching Daemon at Mon Jun 22 14:10:15 IST 2026
[2026-06-22 14:10:15,039.039 INFO    ] ================================================
[2026-06-22 14:10:15,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:10:15
[2026-06-22 14:10:16,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:10:16,449.449 INFO    ] Initializing speech engine...
[2026-06-22 14:10:16,462.462 INFO    ] 2026-06-22 14:10:16
[2026-06-22 14:10:16,728.728 INFO    ] 2026-06-22 14:10:16
[2026-06-22 14:10:16,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:10:16,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:10:16,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:10:17,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:10:17,203.203 INFO    ] time= 22/06/2026 14:10:17
[2026-06-22 14:10:17,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:10:17,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:10:17,428.428 INFO    ] No existing commands found in stream
[2026-06-22 14:10:22,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:10:22,464.464 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-22 14:10:24,502.502 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:10:24,504.504 INFO    ] Checking for system updates...
[2026-06-22 14:10:24,540.540 INFO    ] 200
[2026-06-22 14:10:24,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:10:24,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:10:24,604.604 INFO    ] No update needed
[2026-06-22 14:10:24,607.607 INFO    ] Checking for camera pi updates...
[2026-06-22 14:10:24,640.640 INFO    ] 200
[2026-06-22 14:10:24,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:10:24,688.688 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:10:24,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:10:24,773.773 INFO    ] No camera update needed
[2026-06-22 14:10:24,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:10:24,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:10:24,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:10:24,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:10:26,836.836 INFO    ] ================================================
[2026-06-22 14:10:26,852.852 INFO    ] Launching Daemon at Mon Jun 22 14:10:26 IST 2026
[2026-06-22 14:10:26,864.864 INFO    ] ================================================
[2026-06-22 14:10:27,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:10:27
[2026-06-22 14:10:27,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:10:28,190.190 INFO    ] Initializing speech engine...
[2026-06-22 14:10:28,219.219 INFO    ] 2026-06-22 14:10:28
[2026-06-22 14:10:28,472.472 INFO    ] 2026-06-22 14:10:28
[2026-06-22 14:10:28,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:10:28,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:10:28,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:10:28,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:10:28,975.975 INFO    ] time= 22/06/2026 14:10:28
[2026-06-22 14:10:29,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:10:29,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:10:29,202.202 INFO    ] No existing commands found in stream
[2026-06-22 14:10:34,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:10:34,235.235 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-22 14:10:35,986.986 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:10:35,988.988 INFO    ] Checking for system updates...
[2026-06-22 14:10:36,008.008 INFO    ] 200
[2026-06-22 14:10:36,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:10:36,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:10:36,066.066 INFO    ] No update needed
[2026-06-22 14:10:36,068.068 INFO    ] Checking for camera pi updates...
[2026-06-22 14:10:36,102.102 INFO    ] 200
[2026-06-22 14:10:36,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:10:36,146.146 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:10:36,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:10:36,230.230 INFO    ] No camera update needed
[2026-06-22 14:10:36,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:10:36,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:10:36,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:10:36,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:10:38,287.287 INFO    ] ================================================
[2026-06-22 14:10:38,302.302 INFO    ] Launching Daemon at Mon Jun 22 14:10:38 IST 2026
[2026-06-22 14:10:38,314.314 INFO    ] ================================================
[2026-06-22 14:10:38,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:10:38
[2026-06-22 14:10:39,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:10:39,641.641 INFO    ] Initializing speech engine...
[2026-06-22 14:10:39,654.654 INFO    ] 2026-06-22 14:10:39
[2026-06-22 14:10:39,905.905 INFO    ] 2026-06-22 14:10:39
[2026-06-22 14:10:39,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:10:40,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:10:40,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:10:40,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:10:40,435.435 INFO    ] time= 22/06/2026 14:10:40
[2026-06-22 14:10:40,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:10:40,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:10:40,627.627 INFO    ] No existing commands found in stream
[2026-06-22 14:10:45,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:10:45,645.645 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-22 14:10:48,997.997 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:10:48,998.998 INFO    ] Checking for system updates...
[2026-06-22 14:10:49,019.019 INFO    ] 200
[2026-06-22 14:10:49,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:10:49,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:10:49,073.073 INFO    ] No update needed
[2026-06-22 14:10:49,076.076 INFO    ] Checking for camera pi updates...
[2026-06-22 14:10:49,112.112 INFO    ] 200
[2026-06-22 14:10:49,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:10:49,156.156 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:10:49,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:10:49,265.265 INFO    ] No camera update needed
[2026-06-22 14:10:49,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:10:49,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:10:49,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:10:49,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:10:51,325.325 INFO    ] ================================================
[2026-06-22 14:10:51,341.341 INFO    ] Launching Daemon at Mon Jun 22 14:10:51 IST 2026
[2026-06-22 14:10:51,352.352 INFO    ] ================================================
[2026-06-22 14:10:51,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:10:51
[2026-06-22 14:10:52,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:10:52,685.685 INFO    ] Initializing speech engine...
[2026-06-22 14:10:52,694.694 INFO    ] 2026-06-22 14:10:52
[2026-06-22 14:10:52,943.943 INFO    ] 2026-06-22 14:10:52
[2026-06-22 14:10:52,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:10:53,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:10:53,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:10:53,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:10:53,431.431 INFO    ] time= 22/06/2026 14:10:53
[2026-06-22 14:10:53,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:10:53,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:10:53,651.651 INFO    ] No existing commands found in stream
[2026-06-22 14:10:58,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:10:58,679.679 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-22 14:11:00,261.261 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:11:00,264.264 INFO    ] Checking for system updates...
[2026-06-22 14:11:00,308.308 INFO    ] 200
[2026-06-22 14:11:00,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:11:00,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:11:00,365.365 INFO    ] No update needed
[2026-06-22 14:11:00,368.368 INFO    ] Checking for camera pi updates...
[2026-06-22 14:11:00,406.406 INFO    ] 200
[2026-06-22 14:11:00,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:11:00,453.453 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:11:00,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:11:00,540.540 INFO    ] No camera update needed
[2026-06-22 14:11:00,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:11:00,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:11:00,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:11:00,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:11:02,605.605 INFO    ] ================================================
[2026-06-22 14:11:02,626.626 INFO    ] Launching Daemon at Mon Jun 22 14:11:02 IST 2026
[2026-06-22 14:11:02,642.642 INFO    ] ================================================
[2026-06-22 14:11:03,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:11:03
[2026-06-22 14:11:03,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:11:04,188.188 INFO    ] Initializing speech engine...
[2026-06-22 14:11:04,197.197 INFO    ] 2026-06-22 14:11:04
[2026-06-22 14:11:04,455.455 INFO    ] 2026-06-22 14:11:04
[2026-06-22 14:11:04,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:11:04,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:11:04,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:11:04,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:11:04,909.909 INFO    ] time= 22/06/2026 14:11:04
[2026-06-22 14:11:04,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:11:05,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:11:05,131.131 INFO    ] No existing commands found in stream
[2026-06-22 14:11:10,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:11:10,161.161 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-22 14:11:11,823.823 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:11:11,826.826 INFO    ] Checking for system updates...
[2026-06-22 14:11:11,864.864 INFO    ] 200
[2026-06-22 14:11:11,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:11:11,928.928 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:11:11,930.930 INFO    ] No update needed
[2026-06-22 14:11:11,933.933 INFO    ] Checking for camera pi updates...
[2026-06-22 14:11:11,969.969 INFO    ] 200
[2026-06-22 14:11:11,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:11:12,013.013 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:11:12,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:11:12,065.065 INFO    ] No camera update needed
[2026-06-22 14:11:12,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:11:12,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:11:12,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:11:12,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:11:14,126.126 INFO    ] ================================================
[2026-06-22 14:11:14,141.141 INFO    ] Launching Daemon at Mon Jun 22 14:11:14 IST 2026
[2026-06-22 14:11:14,152.152 INFO    ] ================================================
[2026-06-22 14:11:14,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:11:14
[2026-06-22 14:11:15,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:11:15,717.717 INFO    ] Initializing speech engine...
[2026-06-22 14:11:15,731.731 INFO    ] 2026-06-22 14:11:15
[2026-06-22 14:11:16,020.020 INFO    ] 2026-06-22 14:11:16
[2026-06-22 14:11:16,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:11:16,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:11:16,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:11:16,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:11:16,504.504 INFO    ] time= 22/06/2026 14:11:16
[2026-06-22 14:11:16,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:11:16,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:11:16,715.715 INFO    ] No existing commands found in stream
[2026-06-22 14:11:21,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:11:21,735.735 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-22 14:11:23,616.616 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:11:23,618.618 INFO    ] Checking for system updates...
[2026-06-22 14:11:23,645.645 INFO    ] 200
[2026-06-22 14:11:23,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:11:23,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:11:23,705.705 INFO    ] No update needed
[2026-06-22 14:11:23,708.708 INFO    ] Checking for camera pi updates...
[2026-06-22 14:11:23,742.742 INFO    ] 200
[2026-06-22 14:11:23,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:11:23,787.787 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:11:23,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:11:23,886.886 INFO    ] No camera update needed
[2026-06-22 14:11:23,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:11:23,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:11:23,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:11:23,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:11:25,945.945 INFO    ] ================================================
[2026-06-22 14:11:25,962.962 INFO    ] Launching Daemon at Mon Jun 22 14:11:25 IST 2026
[2026-06-22 14:11:25,973.973 INFO    ] ================================================
[2026-06-22 14:11:26,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:11:26
[2026-06-22 14:11:27,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:11:27,340.340 INFO    ] Initializing speech engine...
[2026-06-22 14:11:27,348.348 INFO    ] 2026-06-22 14:11:27
[2026-06-22 14:11:27,599.599 INFO    ] 2026-06-22 14:11:27
[2026-06-22 14:11:27,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:11:27,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:11:27,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:11:28,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:11:28,068.068 INFO    ] time= 22/06/2026 14:11:28
[2026-06-22 14:11:28,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:11:28,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:11:28,270.270 INFO    ] No existing commands found in stream
[2026-06-22 14:11:33,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:11:33,300.300 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-22 14:11:36,285.285 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:11:36,287.287 INFO    ] Checking for system updates...
[2026-06-22 14:11:36,308.308 INFO    ] 200
[2026-06-22 14:11:36,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:11:36,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:11:36,343.343 INFO    ] No update needed
[2026-06-22 14:11:36,346.346 INFO    ] Checking for camera pi updates...
[2026-06-22 14:11:36,384.384 INFO    ] 200
[2026-06-22 14:11:36,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:11:36,432.432 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:11:36,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:11:36,516.516 INFO    ] No camera update needed
[2026-06-22 14:11:36,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:11:36,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:11:36,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:11:36,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:11:38,574.574 INFO    ] ================================================
[2026-06-22 14:11:38,590.590 INFO    ] Launching Daemon at Mon Jun 22 14:11:38 IST 2026
[2026-06-22 14:11:38,601.601 INFO    ] ================================================
[2026-06-22 14:11:39,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:11:39
[2026-06-22 14:11:39,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:11:40,075.075 INFO    ] Initializing speech engine...
[2026-06-22 14:11:40,081.081 INFO    ] 2026-06-22 14:11:40
[2026-06-22 14:11:40,352.352 INFO    ] 2026-06-22 14:11:40
[2026-06-22 14:11:40,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:11:40,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:11:40,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:11:40,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:11:40,865.865 INFO    ] time= 22/06/2026 14:11:40
[2026-06-22 14:11:40,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:11:40,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:11:41,108.108 INFO    ] No existing commands found in stream
[2026-06-22 14:11:46,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:11:46,131.131 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-22 14:11:46,795.795 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:11:46,796.796 INFO    ] Checking for system updates...
[2026-06-22 14:11:46,817.817 INFO    ] 200
[2026-06-22 14:11:46,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:11:46,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:11:46,863.863 INFO    ] No update needed
[2026-06-22 14:11:46,866.866 INFO    ] Checking for camera pi updates...
[2026-06-22 14:11:46,900.900 INFO    ] 200
[2026-06-22 14:11:46,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:11:46,945.945 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:11:47,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:11:47,028.028 INFO    ] No camera update needed
[2026-06-22 14:11:47,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:11:47,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:11:47,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:11:47,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:11:49,087.087 INFO    ] ================================================
[2026-06-22 14:11:49,102.102 INFO    ] Launching Daemon at Mon Jun 22 14:11:49 IST 2026
[2026-06-22 14:11:49,113.113 INFO    ] ================================================
[2026-06-22 14:11:49,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:11:49
[2026-06-22 14:11:50,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:11:50,426.426 INFO    ] Initializing speech engine...
[2026-06-22 14:11:50,449.449 INFO    ] 2026-06-22 14:11:50
[2026-06-22 14:11:50,703.703 INFO    ] 2026-06-22 14:11:50
[2026-06-22 14:11:50,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:11:50,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:11:51,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:11:51,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:11:51,204.204 INFO    ] time= 22/06/2026 14:11:51
[2026-06-22 14:11:51,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:11:51,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:11:51,393.393 INFO    ] No existing commands found in stream
[2026-06-22 14:11:56,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:11:56,423.423 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-22 14:12:00,560.560 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:12:00,561.561 INFO    ] Checking for system updates...
[2026-06-22 14:12:00,582.582 INFO    ] 200
[2026-06-22 14:12:00,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:12:00,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:12:00,616.616 INFO    ] No update needed
[2026-06-22 14:12:00,617.617 INFO    ] Checking for camera pi updates...
[2026-06-22 14:12:00,637.637 INFO    ] 200
[2026-06-22 14:12:00,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:12:00,665.665 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:12:00,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:12:00,855.855 INFO    ] No camera update needed
[2026-06-22 14:12:00,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:12:00,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:12:00,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:12:00,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:12:02,917.917 INFO    ] ================================================
[2026-06-22 14:12:02,933.933 INFO    ] Launching Daemon at Mon Jun 22 14:12:02 IST 2026
[2026-06-22 14:12:02,947.947 INFO    ] ================================================
[2026-06-22 14:12:03,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:12:03
[2026-06-22 14:12:04,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:12:04,416.416 INFO    ] Initializing speech engine...
[2026-06-22 14:12:04,425.425 INFO    ] 2026-06-22 14:12:04
[2026-06-22 14:12:04,729.729 INFO    ] 2026-06-22 14:12:04
[2026-06-22 14:12:04,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:12:04,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:12:04,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:12:05,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:12:05,124.124 INFO    ] time= 22/06/2026 14:12:05
[2026-06-22 14:12:05,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:12:05,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:12:05,257.257 INFO    ] No existing commands found in stream
[2026-06-22 14:12:10,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:12:10,276.276 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-22 14:12:12,205.205 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:12:12,207.207 INFO    ] Checking for system updates...
[2026-06-22 14:12:12,229.229 INFO    ] 200
[2026-06-22 14:12:12,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:12:12,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:12:12,268.268 INFO    ] No update needed
[2026-06-22 14:12:12,271.271 INFO    ] Checking for camera pi updates...
[2026-06-22 14:12:12,310.310 INFO    ] 200
[2026-06-22 14:12:12,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:12:12,354.354 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:12:12,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:12:12,447.447 INFO    ] No camera update needed
[2026-06-22 14:12:12,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:12:12,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:12:12,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:12:12,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:12:14,503.503 INFO    ] ================================================
[2026-06-22 14:12:14,520.520 INFO    ] Launching Daemon at Mon Jun 22 14:12:14 IST 2026
[2026-06-22 14:12:14,531.531 INFO    ] ================================================
[2026-06-22 14:12:15,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:12:15
[2026-06-22 14:12:15,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:12:15,843.843 INFO    ] Initializing speech engine...
[2026-06-22 14:12:15,851.851 INFO    ] 2026-06-22 14:12:15
[2026-06-22 14:12:16,124.124 INFO    ] 2026-06-22 14:12:16
[2026-06-22 14:12:16,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:12:16,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:12:16,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:12:16,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:12:16,698.698 INFO    ] time= 22/06/2026 14:12:16
[2026-06-22 14:12:16,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:12:16,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:12:16,874.874 INFO    ] No existing commands found in stream
[2026-06-22 14:12:21,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:12:21,907.907 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-22 14:12:24,698.698 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:12:24,701.701 INFO    ] Checking for system updates...
[2026-06-22 14:12:24,740.740 INFO    ] 200
[2026-06-22 14:12:24,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:12:24,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:12:24,799.799 INFO    ] No update needed
[2026-06-22 14:12:24,802.802 INFO    ] Checking for camera pi updates...
[2026-06-22 14:12:24,837.837 INFO    ] 200
[2026-06-22 14:12:24,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:12:24,880.880 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:12:24,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:12:24,964.964 INFO    ] No camera update needed
[2026-06-22 14:12:24,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:12:24,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:12:24,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:12:24,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:12:27,021.021 INFO    ] ================================================
[2026-06-22 14:12:27,036.036 INFO    ] Launching Daemon at Mon Jun 22 14:12:27 IST 2026
[2026-06-22 14:12:27,046.046 INFO    ] ================================================
[2026-06-22 14:12:27,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:12:27
[2026-06-22 14:12:28,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:12:28,397.397 INFO    ] Initializing speech engine...
[2026-06-22 14:12:28,412.412 INFO    ] 2026-06-22 14:12:28
[2026-06-22 14:12:28,691.691 INFO    ] 2026-06-22 14:12:28
[2026-06-22 14:12:28,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:12:28,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:12:28,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:12:29,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:12:29,213.213 INFO    ] time= 22/06/2026 14:12:29
[2026-06-22 14:12:29,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:12:29,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:12:29,412.412 INFO    ] No existing commands found in stream
[2026-06-22 14:12:34,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:12:34,443.443 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-22 14:12:38,195.195 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:12:38,198.198 INFO    ] Checking for system updates...
[2026-06-22 14:12:38,236.236 INFO    ] 200
[2026-06-22 14:12:38,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:12:38,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:12:38,296.296 INFO    ] No update needed
[2026-06-22 14:12:38,299.299 INFO    ] Checking for camera pi updates...
[2026-06-22 14:12:38,333.333 INFO    ] 200
[2026-06-22 14:12:38,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:12:38,378.378 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:12:38,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:12:38,467.467 INFO    ] No camera update needed
[2026-06-22 14:12:38,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:12:38,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:12:38,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:12:38,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:12:40,522.522 INFO    ] ================================================
[2026-06-22 14:12:40,538.538 INFO    ] Launching Daemon at Mon Jun 22 14:12:40 IST 2026
[2026-06-22 14:12:40,549.549 INFO    ] ================================================
[2026-06-22 14:12:41,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:12:41
[2026-06-22 14:12:41,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:12:42,219.219 INFO    ] Initializing speech engine...
[2026-06-22 14:12:42,234.234 INFO    ] 2026-06-22 14:12:42
[2026-06-22 14:12:42,520.520 INFO    ] 2026-06-22 14:12:42
[2026-06-22 14:12:42,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:12:42,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:12:42,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:12:43,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:12:43,088.088 INFO    ] time= 22/06/2026 14:12:43
[2026-06-22 14:12:43,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:12:43,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:12:43,236.236 INFO    ] No existing commands found in stream
[2026-06-22 14:12:48,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:12:48,271.271 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-22 14:12:52,224.224 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:12:52,227.227 INFO    ] Checking for system updates...
[2026-06-22 14:12:52,269.269 INFO    ] 200
[2026-06-22 14:12:52,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:12:52,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:12:52,335.335 INFO    ] No update needed
[2026-06-22 14:12:52,337.337 INFO    ] Checking for camera pi updates...
[2026-06-22 14:12:52,376.376 INFO    ] 200
[2026-06-22 14:12:52,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:12:52,425.425 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:12:52,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:12:52,501.501 INFO    ] No camera update needed
[2026-06-22 14:12:52,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:12:52,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:12:52,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:12:52,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:12:54,556.556 INFO    ] ================================================
[2026-06-22 14:12:54,572.572 INFO    ] Launching Daemon at Mon Jun 22 14:12:54 IST 2026
[2026-06-22 14:12:54,584.584 INFO    ] ================================================
[2026-06-22 14:12:55,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:12:55
[2026-06-22 14:12:55,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:12:56,081.081 INFO    ] Initializing speech engine...
[2026-06-22 14:12:56,090.090 INFO    ] 2026-06-22 14:12:56
[2026-06-22 14:12:56,383.383 INFO    ] 2026-06-22 14:12:56
[2026-06-22 14:12:56,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:12:56,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:12:56,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:12:56,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:12:56,937.937 INFO    ] time= 22/06/2026 14:12:56
[2026-06-22 14:12:56,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:12:56,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:12:57,106.106 INFO    ] No existing commands found in stream
[2026-06-22 14:13:02,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:13:02,131.131 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-22 14:13:05,221.221 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:13:05,224.224 INFO    ] Checking for system updates...
[2026-06-22 14:13:05,260.260 INFO    ] 200
[2026-06-22 14:13:05,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:13:05,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:13:05,324.324 INFO    ] No update needed
[2026-06-22 14:13:05,327.327 INFO    ] Checking for camera pi updates...
[2026-06-22 14:13:05,360.360 INFO    ] 200
[2026-06-22 14:13:05,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:13:05,406.406 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:13:05,485.485 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:13:05,488.488 INFO    ] No camera update needed
[2026-06-22 14:13:05,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:13:05,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:13:05,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:13:05,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:13:07,543.543 INFO    ] ================================================
[2026-06-22 14:13:07,558.558 INFO    ] Launching Daemon at Mon Jun 22 14:13:07 IST 2026
[2026-06-22 14:13:07,568.568 INFO    ] ================================================
[2026-06-22 14:13:08,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:13:08
[2026-06-22 14:13:08,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:13:09,223.223 INFO    ] Initializing speech engine...
[2026-06-22 14:13:09,232.232 INFO    ] 2026-06-22 14:13:09
[2026-06-22 14:13:09,538.538 INFO    ] 2026-06-22 14:13:09
[2026-06-22 14:13:09,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:13:09,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:13:09,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:13:10,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:13:10,190.190 INFO    ] time= 22/06/2026 14:13:10
[2026-06-22 14:13:10,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:13:10,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:13:10,435.435 INFO    ] No existing commands found in stream
[2026-06-22 14:13:15,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:13:15,457.457 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-22 14:13:17,580.580 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:13:17,584.584 INFO    ] Checking for system updates...
[2026-06-22 14:13:17,625.625 INFO    ] 200
[2026-06-22 14:13:17,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:13:17,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:13:17,686.686 INFO    ] No update needed
[2026-06-22 14:13:17,688.688 INFO    ] Checking for camera pi updates...
[2026-06-22 14:13:17,723.723 INFO    ] 200
[2026-06-22 14:13:17,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:13:17,773.773 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:13:17,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:13:17,859.859 INFO    ] No camera update needed
[2026-06-22 14:13:17,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:13:17,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:13:17,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:13:17,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:13:19,918.918 INFO    ] ================================================
[2026-06-22 14:13:19,935.935 INFO    ] Launching Daemon at Mon Jun 22 14:13:19 IST 2026
[2026-06-22 14:13:19,946.946 INFO    ] ================================================
[2026-06-22 14:13:20,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:13:20
[2026-06-22 14:13:21,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:13:21,504.504 INFO    ] Initializing speech engine...
[2026-06-22 14:13:21,518.518 INFO    ] 2026-06-22 14:13:21
[2026-06-22 14:13:21,811.811 INFO    ] 2026-06-22 14:13:21
[2026-06-22 14:13:21,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:13:22,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:13:22,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:13:22,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:13:22,358.358 INFO    ] time= 22/06/2026 14:13:22
[2026-06-22 14:13:22,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:13:22,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:13:22,519.519 INFO    ] No existing commands found in stream
[2026-06-22 14:13:27,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:13:27,552.552 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-22 14:13:34,001.001 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:13:34,003.003 INFO    ] Checking for system updates...
[2026-06-22 14:13:34,043.043 INFO    ] 200
[2026-06-22 14:13:34,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:13:34,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:13:34,109.109 INFO    ] No update needed
[2026-06-22 14:13:34,111.111 INFO    ] Checking for camera pi updates...
[2026-06-22 14:13:34,149.149 INFO    ] 200
[2026-06-22 14:13:34,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:13:34,197.197 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:13:34,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:13:34,304.304 INFO    ] No camera update needed
[2026-06-22 14:13:34,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:13:34,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:13:34,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:13:34,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:13:36,359.359 INFO    ] ================================================
[2026-06-22 14:13:36,376.376 INFO    ] Launching Daemon at Mon Jun 22 14:13:36 IST 2026
[2026-06-22 14:13:36,387.387 INFO    ] ================================================
[2026-06-22 14:13:36,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:13:36
[2026-06-22 14:13:37,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:13:37,952.952 INFO    ] Initializing speech engine...
[2026-06-22 14:13:37,961.961 INFO    ] 2026-06-22 14:13:37
[2026-06-22 14:13:38,238.238 INFO    ] 2026-06-22 14:13:38
[2026-06-22 14:13:38,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:13:38,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:13:38,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:13:38,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:13:38,801.801 INFO    ] time= 22/06/2026 14:13:38
[2026-06-22 14:13:38,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:13:38,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:13:38,964.964 INFO    ] No existing commands found in stream
[2026-06-22 14:13:43,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:13:44,002.002 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-22 14:13:45,582.582 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:13:45,583.583 INFO    ] Checking for system updates...
[2026-06-22 14:13:45,621.621 INFO    ] 200
[2026-06-22 14:13:45,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:13:45,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:13:45,683.683 INFO    ] No update needed
[2026-06-22 14:13:45,686.686 INFO    ] Checking for camera pi updates...
[2026-06-22 14:13:45,724.724 INFO    ] 200
[2026-06-22 14:13:45,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:13:45,767.767 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:13:45,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:13:45,860.860 INFO    ] No camera update needed
[2026-06-22 14:13:45,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:13:45,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:13:45,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:13:45,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:13:47,917.917 INFO    ] ================================================
[2026-06-22 14:13:47,933.933 INFO    ] Launching Daemon at Mon Jun 22 14:13:47 IST 2026
[2026-06-22 14:13:47,944.944 INFO    ] ================================================
[2026-06-22 14:13:48,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:13:48
[2026-06-22 14:13:49,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:13:49,597.597 INFO    ] Initializing speech engine...
[2026-06-22 14:13:49,604.604 INFO    ] 2026-06-22 14:13:49
[2026-06-22 14:13:49,894.894 INFO    ] 2026-06-22 14:13:49
[2026-06-22 14:13:49,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:13:50,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:13:50,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:13:50,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:13:50,374.374 INFO    ] time= 22/06/2026 14:13:50
[2026-06-22 14:13:50,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:13:50,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:13:50,617.617 INFO    ] No existing commands found in stream
[2026-06-22 14:13:55,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:13:55,653.653 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-22 14:13:58,643.643 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:13:58,645.645 INFO    ] Checking for system updates...
[2026-06-22 14:13:58,666.666 INFO    ] 200
[2026-06-22 14:13:58,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:13:58,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:13:58,699.699 INFO    ] No update needed
[2026-06-22 14:13:58,700.700 INFO    ] Checking for camera pi updates...
[2026-06-22 14:13:58,733.733 INFO    ] 200
[2026-06-22 14:13:58,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:13:58,777.777 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:13:58,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:13:58,865.865 INFO    ] No camera update needed
[2026-06-22 14:13:58,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:13:58,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:13:58,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:13:58,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:14:00,920.920 INFO    ] ================================================
[2026-06-22 14:14:00,936.936 INFO    ] Launching Daemon at Mon Jun 22 14:14:00 IST 2026
[2026-06-22 14:14:00,947.947 INFO    ] ================================================
[2026-06-22 14:14:01,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:14:01
[2026-06-22 14:14:02,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:14:02,625.625 INFO    ] Initializing speech engine...
[2026-06-22 14:14:02,637.637 INFO    ] 2026-06-22 14:14:02
[2026-06-22 14:14:02,938.938 INFO    ] 2026-06-22 14:14:02
[2026-06-22 14:14:02,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:14:03,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:14:03,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:14:03,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:14:03,381.381 INFO    ] time= 22/06/2026 14:14:03
[2026-06-22 14:14:03,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:14:03,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:14:03,471.471 INFO    ] No existing commands found in stream
[2026-06-22 14:14:08,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:14:08,489.489 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-22 14:14:09,343.343 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:14:09,345.345 INFO    ] Checking for system updates...
[2026-06-22 14:14:09,386.386 INFO    ] 200
[2026-06-22 14:14:09,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:14:09,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:14:09,450.450 INFO    ] No update needed
[2026-06-22 14:14:09,453.453 INFO    ] Checking for camera pi updates...
[2026-06-22 14:14:09,491.491 INFO    ] 200
[2026-06-22 14:14:09,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:14:09,535.535 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:14:09,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:14:09,637.637 INFO    ] No camera update needed
[2026-06-22 14:14:09,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:14:09,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:14:09,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:14:09,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:14:11,691.691 INFO    ] ================================================
[2026-06-22 14:14:11,707.707 INFO    ] Launching Daemon at Mon Jun 22 14:14:11 IST 2026
[2026-06-22 14:14:11,718.718 INFO    ] ================================================
[2026-06-22 14:14:12,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:14:12
[2026-06-22 14:14:12,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:14:13,235.235 INFO    ] Initializing speech engine...
[2026-06-22 14:14:13,248.248 INFO    ] 2026-06-22 14:14:13
[2026-06-22 14:14:13,563.563 INFO    ] 2026-06-22 14:14:13
[2026-06-22 14:14:13,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:14:13,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:14:13,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:14:14,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:14:14,087.087 INFO    ] time= 22/06/2026 14:14:14
[2026-06-22 14:14:14,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:14:14,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:14:14,242.242 INFO    ] No existing commands found in stream
[2026-06-22 14:14:19,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:14:19,261.261 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-22 14:14:22,087.087 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:14:22,089.089 INFO    ] Checking for system updates...
[2026-06-22 14:14:22,110.110 INFO    ] 200
[2026-06-22 14:14:22,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:14:22,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:14:22,167.167 INFO    ] No update needed
[2026-06-22 14:14:22,169.169 INFO    ] Checking for camera pi updates...
[2026-06-22 14:14:22,211.211 INFO    ] 200
[2026-06-22 14:14:22,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:14:22,254.254 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:14:22,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:14:22,344.344 INFO    ] No camera update needed
[2026-06-22 14:14:22,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:14:22,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:14:22,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:14:22,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:14:24,400.400 INFO    ] ================================================
[2026-06-22 14:14:24,416.416 INFO    ] Launching Daemon at Mon Jun 22 14:14:24 IST 2026
[2026-06-22 14:14:24,427.427 INFO    ] ================================================
[2026-06-22 14:14:25,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:14:25
[2026-06-22 14:14:25,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:14:25,972.972 INFO    ] Initializing speech engine...
[2026-06-22 14:14:25,987.987 INFO    ] 2026-06-22 14:14:25
[2026-06-22 14:14:26,257.257 INFO    ] 2026-06-22 14:14:26
[2026-06-22 14:14:26,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:14:26,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:14:26,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:14:26,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:14:26,805.805 INFO    ] time= 22/06/2026 14:14:26
[2026-06-22 14:14:26,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:14:26,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:14:26,975.975 INFO    ] No existing commands found in stream
[2026-06-22 14:14:32,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:14:32,016.016 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-22 14:14:33,344.344 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:14:33,347.347 INFO    ] Checking for system updates...
[2026-06-22 14:14:33,384.384 INFO    ] 200
[2026-06-22 14:14:33,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:14:33,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:14:33,442.442 INFO    ] No update needed
[2026-06-22 14:14:33,445.445 INFO    ] Checking for camera pi updates...
[2026-06-22 14:14:33,485.485 INFO    ] 200
[2026-06-22 14:14:33,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:14:33,529.529 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:14:33,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:14:33,630.630 INFO    ] No camera update needed
[2026-06-22 14:14:33,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:14:33,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:14:33,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:14:33,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:14:35,685.685 INFO    ] ================================================
[2026-06-22 14:14:35,701.701 INFO    ] Launching Daemon at Mon Jun 22 14:14:35 IST 2026
[2026-06-22 14:14:35,713.713 INFO    ] ================================================
[2026-06-22 14:14:36,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:14:36
[2026-06-22 14:14:36,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:14:37,297.297 INFO    ] Initializing speech engine...
[2026-06-22 14:14:37,308.308 INFO    ] 2026-06-22 14:14:37
[2026-06-22 14:14:37,625.625 INFO    ] 2026-06-22 14:14:37
[2026-06-22 14:14:37,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:14:37,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:14:37,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:14:38,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:14:38,106.106 INFO    ] time= 22/06/2026 14:14:38
[2026-06-22 14:14:38,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:14:38,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:14:38,286.286 INFO    ] No existing commands found in stream
[2026-06-22 14:14:43,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:14:43,313.313 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-22 14:14:43,959.959 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:14:43,961.961 INFO    ] Checking for system updates...
[2026-06-22 14:14:43,982.982 INFO    ] 200
[2026-06-22 14:14:43,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:14:44,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:14:44,025.025 INFO    ] No update needed
[2026-06-22 14:14:44,028.028 INFO    ] Checking for camera pi updates...
[2026-06-22 14:14:44,066.066 INFO    ] 200
[2026-06-22 14:14:44,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:14:44,127.127 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:14:44,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:14:44,229.229 INFO    ] No camera update needed
[2026-06-22 14:14:44,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:14:44,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:14:44,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:14:44,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:14:46,285.285 INFO    ] ================================================
[2026-06-22 14:14:46,302.302 INFO    ] Launching Daemon at Mon Jun 22 14:14:46 IST 2026
[2026-06-22 14:14:46,313.313 INFO    ] ================================================
[2026-06-22 14:14:46,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:14:46
[2026-06-22 14:14:47,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:14:47,931.931 INFO    ] Initializing speech engine...
[2026-06-22 14:14:47,943.943 INFO    ] 2026-06-22 14:14:47
[2026-06-22 14:14:48,227.227 INFO    ] 2026-06-22 14:14:48
[2026-06-22 14:14:48,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:14:48,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:14:48,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:14:48,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:14:48,724.724 INFO    ] time= 22/06/2026 14:14:48
[2026-06-22 14:14:48,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:14:48,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:14:48,930.930 INFO    ] No existing commands found in stream
[2026-06-22 14:14:53,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:14:53,951.951 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-22 14:14:56,929.929 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:14:56,932.932 INFO    ] Checking for system updates...
[2026-06-22 14:14:56,969.969 INFO    ] 200
[2026-06-22 14:14:56,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:14:57,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:14:57,029.029 INFO    ] No update needed
[2026-06-22 14:14:57,031.031 INFO    ] Checking for camera pi updates...
[2026-06-22 14:14:57,065.065 INFO    ] 200
[2026-06-22 14:14:57,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:14:57,113.113 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:14:57,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:14:57,196.196 INFO    ] No camera update needed
[2026-06-22 14:14:57,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:14:57,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:14:57,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:14:57,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:14:59,254.254 INFO    ] ================================================
[2026-06-22 14:14:59,269.269 INFO    ] Launching Daemon at Mon Jun 22 14:14:59 IST 2026
[2026-06-22 14:14:59,280.280 INFO    ] ================================================
[2026-06-22 14:14:59,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:14:59
[2026-06-22 14:15:00,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:15:00,678.678 INFO    ] Initializing speech engine...
[2026-06-22 14:15:00,697.697 INFO    ] 2026-06-22 14:15:00
[2026-06-22 14:15:00,959.959 INFO    ] 2026-06-22 14:15:00
[2026-06-22 14:15:00,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:15:01,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:15:01,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:15:01,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:15:01,359.359 INFO    ] time= 22/06/2026 14:15:01
[2026-06-22 14:15:01,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:15:01,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:15:01,458.458 INFO    ] No existing commands found in stream
[2026-06-22 14:15:06,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:15:06,473.473 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-22 14:15:07,421.421 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:15:07,423.423 INFO    ] Checking for system updates...
[2026-06-22 14:15:07,444.444 INFO    ] 200
[2026-06-22 14:15:07,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:15:07,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:15:07,479.479 INFO    ] No update needed
[2026-06-22 14:15:07,480.480 INFO    ] Checking for camera pi updates...
[2026-06-22 14:15:07,503.503 INFO    ] 200
[2026-06-22 14:15:07,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:15:07,534.534 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:15:07,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:15:07,618.618 INFO    ] No camera update needed
[2026-06-22 14:15:07,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:15:07,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:15:07,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:15:07,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:15:09,677.677 INFO    ] ================================================
[2026-06-22 14:15:09,694.694 INFO    ] Launching Daemon at Mon Jun 22 14:15:09 IST 2026
[2026-06-22 14:15:09,705.705 INFO    ] ================================================
[2026-06-22 14:15:10,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:15:10
[2026-06-22 14:15:10,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:15:11,147.147 INFO    ] Initializing speech engine...
[2026-06-22 14:15:11,153.153 INFO    ] 2026-06-22 14:15:11
[2026-06-22 14:15:11,447.447 INFO    ] 2026-06-22 14:15:11
[2026-06-22 14:15:11,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:15:11,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:15:11,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:15:11,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:15:11,864.864 INFO    ] time= 22/06/2026 14:15:11
[2026-06-22 14:15:11,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:15:11,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:15:11,966.966 INFO    ] No existing commands found in stream
[2026-06-22 14:15:17,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:15:17,004.004 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-22 14:15:20,232.232 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:15:20,235.235 INFO    ] Checking for system updates...
[2026-06-22 14:15:20,274.274 INFO    ] 200
[2026-06-22 14:15:20,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:15:20,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:15:20,334.334 INFO    ] No update needed
[2026-06-22 14:15:20,337.337 INFO    ] Checking for camera pi updates...
[2026-06-22 14:15:20,372.372 INFO    ] 200
[2026-06-22 14:15:20,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:15:20,421.421 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:15:20,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:15:20,512.512 INFO    ] No camera update needed
[2026-06-22 14:15:20,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:15:20,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:15:20,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:15:20,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:15:22,569.569 INFO    ] ================================================
[2026-06-22 14:15:22,584.584 INFO    ] Launching Daemon at Mon Jun 22 14:15:22 IST 2026
[2026-06-22 14:15:22,596.596 INFO    ] ================================================
[2026-06-22 14:15:23,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:15:23
[2026-06-22 14:15:23,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:15:23,943.943 INFO    ] Initializing speech engine...
[2026-06-22 14:15:23,952.952 INFO    ] 2026-06-22 14:15:23
[2026-06-22 14:15:24,245.245 INFO    ] 2026-06-22 14:15:24
[2026-06-22 14:15:24,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:15:24,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:15:24,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:15:24,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:15:24,666.666 INFO    ] time= 22/06/2026 14:15:24
[2026-06-22 14:15:24,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:15:24,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:15:24,846.846 INFO    ] No existing commands found in stream
[2026-06-22 14:15:29,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:15:29,874.874 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-22 14:15:32,899.899 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:15:32,902.902 INFO    ] Checking for system updates...
[2026-06-22 14:15:32,938.938 INFO    ] 200
[2026-06-22 14:15:32,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:15:32,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:15:32,996.996 INFO    ] No update needed
[2026-06-22 14:15:32,999.999 INFO    ] Checking for camera pi updates...
[2026-06-22 14:15:33,033.033 INFO    ] 200
[2026-06-22 14:15:33,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:15:33,081.081 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:15:33,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:15:33,172.172 INFO    ] No camera update needed
[2026-06-22 14:15:33,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:15:33,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:15:33,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:15:33,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:15:35,229.229 INFO    ] ================================================
[2026-06-22 14:15:35,244.244 INFO    ] Launching Daemon at Mon Jun 22 14:15:35 IST 2026
[2026-06-22 14:15:35,254.254 INFO    ] ================================================
[2026-06-22 14:15:35,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:15:35
[2026-06-22 14:15:36,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:15:36,693.693 INFO    ] Initializing speech engine...
[2026-06-22 14:15:36,702.702 INFO    ] 2026-06-22 14:15:36
[2026-06-22 14:15:37,001.001 INFO    ] 2026-06-22 14:15:36
[2026-06-22 14:15:37,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:15:37,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:15:37,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:15:37,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:15:37,423.423 INFO    ] time= 22/06/2026 14:15:37
[2026-06-22 14:15:37,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:15:37,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:15:37,512.512 INFO    ] No existing commands found in stream
[2026-06-22 14:15:42,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:15:42,550.550 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-22 14:15:46,265.265 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:15:46,266.266 INFO    ] Checking for system updates...
[2026-06-22 14:15:46,288.288 INFO    ] 200
[2026-06-22 14:15:46,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:15:46,321.321 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:15:46,322.322 INFO    ] No update needed
[2026-06-22 14:15:46,324.324 INFO    ] Checking for camera pi updates...
[2026-06-22 14:15:46,344.344 INFO    ] 200
[2026-06-22 14:15:46,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:15:46,372.372 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:15:46,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:15:46,462.462 INFO    ] No camera update needed
[2026-06-22 14:15:46,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:15:46,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:15:46,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:15:46,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:15:48,523.523 INFO    ] ================================================
[2026-06-22 14:15:48,539.539 INFO    ] Launching Daemon at Mon Jun 22 14:15:48 IST 2026
[2026-06-22 14:15:48,550.550 INFO    ] ================================================
[2026-06-22 14:15:49,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:15:49
[2026-06-22 14:15:49,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:15:49,972.972 INFO    ] Initializing speech engine...
[2026-06-22 14:15:49,984.984 INFO    ] 2026-06-22 14:15:49
[2026-06-22 14:15:50,235.235 INFO    ] 2026-06-22 14:15:50
[2026-06-22 14:15:50,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:15:50,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:15:50,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:15:50,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:15:50,803.803 INFO    ] time= 22/06/2026 14:15:50
[2026-06-22 14:15:50,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:15:50,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:15:50,940.940 INFO    ] No existing commands found in stream
[2026-06-22 14:15:55,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:15:55,970.970 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-22 14:15:59,697.697 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:15:59,700.700 INFO    ] Checking for system updates...
[2026-06-22 14:15:59,739.739 INFO    ] 200
[2026-06-22 14:15:59,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:15:59,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:15:59,798.798 INFO    ] No update needed
[2026-06-22 14:15:59,801.801 INFO    ] Checking for camera pi updates...
[2026-06-22 14:15:59,835.835 INFO    ] 200
[2026-06-22 14:15:59,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:15:59,878.878 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:15:59,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:15:59,962.962 INFO    ] No camera update needed
[2026-06-22 14:15:59,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:15:59,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:15:59,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:15:59,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:16:02,038.038 INFO    ] ================================================
[2026-06-22 14:16:02,088.088 INFO    ] Launching Daemon at Mon Jun 22 14:16:02 IST 2026
[2026-06-22 14:16:02,106.106 INFO    ] ================================================
[2026-06-22 14:16:02,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:16:02
[2026-06-22 14:16:03,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:16:03,761.761 INFO    ] Initializing speech engine...
[2026-06-22 14:16:03,775.775 INFO    ] 2026-06-22 14:16:03
[2026-06-22 14:16:04,038.038 INFO    ] 2026-06-22 14:16:04
[2026-06-22 14:16:04,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:16:04,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:16:04,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:16:04,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:16:04,543.543 INFO    ] time= 22/06/2026 14:16:04
[2026-06-22 14:16:04,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:16:04,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:16:04,750.750 INFO    ] No existing commands found in stream
[2026-06-22 14:16:09,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:16:09,769.769 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-22 14:16:12,197.197 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:16:12,200.200 INFO    ] Checking for system updates...
[2026-06-22 14:16:12,236.236 INFO    ] 200
[2026-06-22 14:16:12,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:16:12,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:16:12,294.294 INFO    ] No update needed
[2026-06-22 14:16:12,296.296 INFO    ] Checking for camera pi updates...
[2026-06-22 14:16:12,331.331 INFO    ] 200
[2026-06-22 14:16:12,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:16:12,375.375 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:16:12,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:16:12,571.571 INFO    ] No camera update needed
[2026-06-22 14:16:12,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:16:12,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:16:12,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:16:12,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:16:14,629.629 INFO    ] ================================================
[2026-06-22 14:16:14,652.652 INFO    ] Launching Daemon at Mon Jun 22 14:16:14 IST 2026
[2026-06-22 14:16:14,663.663 INFO    ] ================================================
[2026-06-22 14:16:15,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:16:15
[2026-06-22 14:16:15,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:16:16,254.254 INFO    ] Initializing speech engine...
[2026-06-22 14:16:16,268.268 INFO    ] 2026-06-22 14:16:16
[2026-06-22 14:16:16,563.563 INFO    ] 2026-06-22 14:16:16
[2026-06-22 14:16:16,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:16:16,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:16:16,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:16:17,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:16:17,111.111 INFO    ] time= 22/06/2026 14:16:17
[2026-06-22 14:16:17,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:16:17,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:16:17,268.268 INFO    ] No existing commands found in stream
[2026-06-22 14:16:22,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:16:22,295.295 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-22 14:16:24,320.320 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:16:24,322.322 INFO    ] Checking for system updates...
[2026-06-22 14:16:24,343.343 INFO    ] 200
[2026-06-22 14:16:24,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:16:24,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:16:24,376.376 INFO    ] No update needed
[2026-06-22 14:16:24,378.378 INFO    ] Checking for camera pi updates...
[2026-06-22 14:16:24,399.399 INFO    ] 200
[2026-06-22 14:16:24,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:16:24,435.435 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:16:24,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:16:24,529.529 INFO    ] No camera update needed
[2026-06-22 14:16:24,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:16:24,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:16:24,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:16:24,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:16:26,586.586 INFO    ] ================================================
[2026-06-22 14:16:26,602.602 INFO    ] Launching Daemon at Mon Jun 22 14:16:26 IST 2026
[2026-06-22 14:16:26,613.613 INFO    ] ================================================
[2026-06-22 14:16:27,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:16:27
[2026-06-22 14:16:27,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:16:27,972.972 INFO    ] Initializing speech engine...
[2026-06-22 14:16:27,979.979 INFO    ] 2026-06-22 14:16:27
[2026-06-22 14:16:28,286.286 INFO    ] 2026-06-22 14:16:28
[2026-06-22 14:16:28,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:16:28,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:16:28,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:16:28,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:16:28,721.721 INFO    ] time= 22/06/2026 14:16:28
[2026-06-22 14:16:28,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:16:28,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:16:28,827.827 INFO    ] No existing commands found in stream
[2026-06-22 14:16:33,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:16:33,865.865 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-22 14:16:36,348.348 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:16:36,350.350 INFO    ] Checking for system updates...
[2026-06-22 14:16:36,387.387 INFO    ] 200
[2026-06-22 14:16:36,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:16:36,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:16:36,446.446 INFO    ] No update needed
[2026-06-22 14:16:36,449.449 INFO    ] Checking for camera pi updates...
[2026-06-22 14:16:36,483.483 INFO    ] 200
[2026-06-22 14:16:36,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:16:36,527.527 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:16:36,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:16:36,611.611 INFO    ] No camera update needed
[2026-06-22 14:16:36,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:16:36,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:16:36,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:16:36,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:16:38,667.667 INFO    ] ================================================
[2026-06-22 14:16:38,683.683 INFO    ] Launching Daemon at Mon Jun 22 14:16:38 IST 2026
[2026-06-22 14:16:38,695.695 INFO    ] ================================================
[2026-06-22 14:16:39,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:16:39
[2026-06-22 14:16:39,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:16:40,103.103 INFO    ] Initializing speech engine...
[2026-06-22 14:16:40,126.126 INFO    ] 2026-06-22 14:16:40
[2026-06-22 14:16:40,380.380 INFO    ] 2026-06-22 14:16:40
[2026-06-22 14:16:40,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:16:40,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:16:40,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:16:40,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:16:40,759.759 INFO    ] time= 22/06/2026 14:16:40
[2026-06-22 14:16:40,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:16:40,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:16:40,956.956 INFO    ] No existing commands found in stream
[2026-06-22 14:16:45,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:16:45,973.973 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-22 14:16:47,839.839 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:16:47,842.842 INFO    ] Checking for system updates...
[2026-06-22 14:16:47,879.879 INFO    ] 200
[2026-06-22 14:16:47,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:16:47,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:16:47,938.938 INFO    ] No update needed
[2026-06-22 14:16:47,940.940 INFO    ] Checking for camera pi updates...
[2026-06-22 14:16:47,974.974 INFO    ] 200
[2026-06-22 14:16:47,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:16:48,018.018 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:16:48,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:16:48,103.103 INFO    ] No camera update needed
[2026-06-22 14:16:48,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:16:48,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:16:48,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:16:48,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:16:50,160.160 INFO    ] ================================================
[2026-06-22 14:16:50,177.177 INFO    ] Launching Daemon at Mon Jun 22 14:16:50 IST 2026
[2026-06-22 14:16:50,189.189 INFO    ] ================================================
[2026-06-22 14:16:50,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:16:50
[2026-06-22 14:16:51,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:16:51,782.782 INFO    ] Initializing speech engine...
[2026-06-22 14:16:51,792.792 INFO    ] 2026-06-22 14:16:51
[2026-06-22 14:16:52,075.075 INFO    ] 2026-06-22 14:16:52
[2026-06-22 14:16:52,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:16:52,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:16:52,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:16:52,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:16:52,610.610 INFO    ] time= 22/06/2026 14:16:52
[2026-06-22 14:16:52,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:16:52,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:16:52,791.791 INFO    ] No existing commands found in stream
[2026-06-22 14:16:57,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:16:57,820.820 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-22 14:17:00,178.178 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:17:00,179.179 INFO    ] Checking for system updates...
[2026-06-22 14:17:00,202.202 INFO    ] 200
[2026-06-22 14:17:00,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:17:00,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:17:00,241.241 INFO    ] No update needed
[2026-06-22 14:17:00,243.243 INFO    ] Checking for camera pi updates...
[2026-06-22 14:17:00,280.280 INFO    ] 200
[2026-06-22 14:17:00,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:17:00,326.326 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:17:00,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:17:00,408.408 INFO    ] No camera update needed
[2026-06-22 14:17:00,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:17:00,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:17:00,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:17:00,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:17:02,465.465 INFO    ] ================================================
[2026-06-22 14:17:02,485.485 INFO    ] Launching Daemon at Mon Jun 22 14:17:02 IST 2026
[2026-06-22 14:17:02,501.501 INFO    ] ================================================
[2026-06-22 14:17:03,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:17:03
[2026-06-22 14:17:03,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:17:04,126.126 INFO    ] Initializing speech engine...
[2026-06-22 14:17:04,135.135 INFO    ] 2026-06-22 14:17:04
[2026-06-22 14:17:04,387.387 INFO    ] 2026-06-22 14:17:04
[2026-06-22 14:17:04,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:17:04,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:17:04,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:17:04,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:17:04,767.767 INFO    ] time= 22/06/2026 14:17:04
[2026-06-22 14:17:04,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:17:04,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:17:04,945.945 INFO    ] No existing commands found in stream
[2026-06-22 14:17:09,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:17:09,978.978 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-22 14:17:12,279.279 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:17:12,281.281 INFO    ] Checking for system updates...
[2026-06-22 14:17:12,317.317 INFO    ] 200
[2026-06-22 14:17:12,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:17:12,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:17:12,382.382 INFO    ] No update needed
[2026-06-22 14:17:12,384.384 INFO    ] Checking for camera pi updates...
[2026-06-22 14:17:12,419.419 INFO    ] 200
[2026-06-22 14:17:12,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:17:12,466.466 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:17:12,549.549 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:17:12,552.552 INFO    ] No camera update needed
[2026-06-22 14:17:12,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:17:12,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:17:12,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:17:12,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:17:14,616.616 INFO    ] ================================================
[2026-06-22 14:17:14,631.631 INFO    ] Launching Daemon at Mon Jun 22 14:17:14 IST 2026
[2026-06-22 14:17:14,642.642 INFO    ] ================================================
[2026-06-22 14:17:15,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:17:15
[2026-06-22 14:17:15,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:17:16,234.234 INFO    ] Initializing speech engine...
[2026-06-22 14:17:16,245.245 INFO    ] 2026-06-22 14:17:16
[2026-06-22 14:17:16,528.528 INFO    ] 2026-06-22 14:17:16
[2026-06-22 14:17:16,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:17:16,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:17:16,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:17:16,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:17:17,020.020 INFO    ] time= 22/06/2026 14:17:16
[2026-06-22 14:17:17,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:17:17,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:17:17,218.218 INFO    ] No existing commands found in stream
[2026-06-22 14:17:22,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:17:22,250.250 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-22 14:17:23,158.158 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:17:23,159.159 INFO    ] Checking for system updates...
[2026-06-22 14:17:23,180.180 INFO    ] 200
[2026-06-22 14:17:23,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:17:23,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:17:23,217.217 INFO    ] No update needed
[2026-06-22 14:17:23,219.219 INFO    ] Checking for camera pi updates...
[2026-06-22 14:17:23,248.248 INFO    ] 200
[2026-06-22 14:17:23,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:17:23,293.293 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:17:23,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:17:23,385.385 INFO    ] No camera update needed
[2026-06-22 14:17:23,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:17:23,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:17:23,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:17:23,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:17:25,443.443 INFO    ] ================================================
[2026-06-22 14:17:25,459.459 INFO    ] Launching Daemon at Mon Jun 22 14:17:25 IST 2026
[2026-06-22 14:17:25,469.469 INFO    ] ================================================
[2026-06-22 14:17:26,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:17:26
[2026-06-22 14:17:26,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:17:27,107.107 INFO    ] Initializing speech engine...
[2026-06-22 14:17:27,119.119 INFO    ] 2026-06-22 14:17:27
[2026-06-22 14:17:27,398.398 INFO    ] 2026-06-22 14:17:27
[2026-06-22 14:17:27,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:17:27,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:17:27,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:17:27,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:17:27,892.892 INFO    ] time= 22/06/2026 14:17:27
[2026-06-22 14:17:27,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:17:27,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:17:28,106.106 INFO    ] Found 1 existing command(s) in stream
[2026-06-22 14:17:28,144.144 INFO    ] Checking historical command: ID=1782118041935-0
[2026-06-22 14:17:28,197.197 INFO    ] process_and_cleanup_command: msg_id=1782118041935-0
[2026-06-22 14:17:28,250.250 INFO    ] is_command_expired: timestamp=2026-06-22T08:47:21.493Z, expiry=30s
[2026-06-22 14:17:28,427.427 INFO    ] Command removed from stream: 1782118041935-0. returning for processing...
[2026-06-22 14:17:28,475.475 INFO    ] ***** get_valid_command
[2026-06-22 14:17:28,479.479 INFO    ] {'data': '{"request_id":"start-order-1782118041493-9vloun4h3","orderId":"TM06202507260622141639453","is_vending":false}', 'source': 'webapp', 'command': 'start-order', 'timeout': '10', 'timestamp': '2026-06-22T08:47:21.493Z'}
[2026-06-22 14:17:28,490.490 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1782118041493-9vloun4h3', 'orderId': 'TM06202507260622141639453', 'is_vending': False}
[2026-06-22 14:17:28,493.493 INFO    ] Handling start order...
[2026-06-22 14:17:28,496.496 INFO    ] handle_start_order_command
[2026-06-22 14:17:28,602.602 INFO    ] _send_start_order_success: request_id=start-order-1782118041493-9vloun4h3, order_id=TM06202507260622141639453
[2026-06-22 14:17:28,621.621 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM06202507
[2026-06-22 14:17:28,736.736 INFO    ] [_send_start_order_success] Message added to stream with ID: 1782118048657-0
[2026-06-22 14:17:28,740.740 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-22 14:17:28,746.746 INFO    ] Checking for system updates...
[2026-06-22 14:17:28,792.792 INFO    ] 200
[2026-06-22 14:17:28,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:17:28,917.917 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:17:28,924.924 INFO    ] No update needed
[2026-06-22 14:17:28,930.930 INFO    ] Checking for camera pi updates...
[2026-06-22 14:17:28,970.970 INFO    ] 200
[2026-06-22 14:17:28,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:17:29,027.027 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:17:29,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:17:29,132.132 INFO    ] No camera update needed
[2026-06-22 14:17:29,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:17:29,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:17:29,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:17:29,196.196 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-22 14:17:29,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:17:31,262.262 INFO    ] ================================================
[2026-06-22 14:17:31,278.278 INFO    ] Launching Daemon at Mon Jun 22 14:17:31 IST 2026
[2026-06-22 14:17:31,289.289 INFO    ] ================================================
[2026-06-22 14:17:31,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:17:31
[2026-06-22 14:17:32,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:17:33,013.013 INFO    ] Initializing speech engine...
[2026-06-22 14:17:33,023.023 INFO    ] 2026-06-22 14:17:33
[2026-06-22 14:17:33,317.317 INFO    ] 2026-06-22 14:17:33
[2026-06-22 14:17:33,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:17:33,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:17:33,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:17:33,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:17:33,819.819 INFO    ] time= 22/06/2026 14:17:33
[2026-06-22 14:17:33,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:17:33,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:17:34,000.000 INFO    ] Found 2 existing command(s) in stream
[2026-06-22 14:17:34,055.055 INFO    ] Checking historical command: ID=1782118048657-0
[2026-06-22 14:17:34,100.100 INFO    ] process_and_cleanup_command: msg_id=1782118048657-0
[2026-06-22 14:17:34,159.159 INFO    ] is_command_expired: timestamp=2026-06-22T08:47:28.614143Z, expiry=30s
[2026-06-22 14:17:34,333.333 INFO    ] Command removed from stream: 1782118048657-0. returning for processing...
[2026-06-22 14:17:34,379.379 INFO    ] ***** get_valid_command
[2026-06-22 14:17:34,383.383 INFO    ] {'timestamp': '2026-06-22T08:47:28.614143Z', 'message_type': 'command_response', 'metadata_request_id': 'start-order-1782118041493-9vloun4h3', 'metadata_order_id': 'TM06202507260622141639453', 'message': 'start-order success', 'imei': 'TM06202507', 'status': 'success'}
[2026-06-22 14:17:34,392.392 INFO    ] Checking historical command: ID=1782118051097-0
[2026-06-22 14:17:34,396.396 INFO    ] process_and_cleanup_command: msg_id=1782118051097-0
[2026-06-22 14:17:34,398.398 INFO    ] is_command_expired: timestamp=2026-06-22T08:47:30.756Z, expiry=30s
[2026-06-22 14:17:34,509.509 INFO    ] Command removed from stream: 1782118051097-0. returning for processing...
[2026-06-22 14:17:34,528.528 INFO    ] ***** get_valid_command
[2026-06-22 14:17:34,534.534 INFO    ] {'source': 'webapp', 'command': 'process-order', 'data': '{"request_id":"process-order-1782118050756-zpkb44ftp","orderId":"TM06202507260622141639453","is_vending":false,"accessCode":"77728538"}', 'timeout': '60', 'timestamp': '2026-06-22T08:47:30.756Z'}
[2026-06-22 14:17:34,568.568 INFO    ] ***** Parsed command data: {'orderId': 'TM06202507260622141639453', 'request_id': 'process-order-1782118050756-zpkb44ftp', 'is_vending': False, 'accessCode': '77728538'}
[2026-06-22 14:17:34,587.587 INFO    ] Handling process order...
[2026-06-22 14:17:34,590.590 INFO    ] Processing process-order command...
[2026-06-22 14:17:34,635.635 INFO    ] 🔍 Lock file Order ID: TM06202507260622141639453, TS: 2026-06-22 14:17:28
[2026-06-22 14:17:34,656.656 INFO    ] ✅ Order lock valid for TM06202507260622141639453
[2026-06-22 14:17:34,661.661 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-22 14:17:34,666.666 INFO    ] processing access code 77728538 for order TM06202507260622141639453
[2026-06-22 14:17:34,671.671 INFO    ] 🔍 Lock file Order ID: TM06202507260622141639453, TS: 2026-06-22 14:17:28
[2026-06-22 14:17:34,676.676 INFO    ] ✅ Order lock valid for TM06202507260622141639453
[2026-06-22 14:17:34,680.680 INFO    ] 2026-06-22 14:17:34
[2026-06-22 14:17:34,788.788 INFO    ] 200
[2026-06-22 14:17:34,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:17:34,859.859 INFO    ] 77728538
[2026-06-22 14:17:34,865.865 INFO    ] 2026-06-22 14:17:34
[2026-06-22 14:17:34,870.870 INFO    ] session id :910015165
[2026-06-22 14:17:34,878.878 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=77728538&imei=TM06202507&session_id=910015165
[2026-06-22 14:17:35,920.920 INFO    ] 200
[2026-06-22 14:17:35,940.940 INFO    ] {"data": {"mobile": "9969986559", "order_id": "TM06202507260622141639453", "access_code": "77728538", "bill_amount": "40", "proposed_sku_json": [{"tray_id": "42", "qty": 1, "mrp": "40", "door_id": "2", "name": "Pepsi ZeroSugar  300ml", "sku_total": 40, "image_url": "https://images.tinymart.in/product/186059-5330.png", "offer_desc": "", "unit_price": 40, "skuid": "186059", "offer_id": ""}], "invoice_bill": "40"}, "msg": "Order Data", "status": true, "rstatus": true}
[2026-06-22 14:17:35,947.947 INFO    ] 40
[2026-06-22 14:17:35,957.957 INFO    ] TM06202507260622141639453
[2026-06-22 14:17:35,980.980 INFO    ] 9969986559
[2026-06-22 14:17:35,990.990 INFO    ] 2026-06-22 14:17:35
[2026-06-22 14:17:35,996.996 INFO    ] Door Opening for user mobile ending with  six five five nine 
[2026-06-22 14:17:36,002.002 INFO    ] Door Opening for user mobile ending with  six five five nine 
[2026-06-22 14:17:36,008.008 INFO    ] 0e7d397cc829bd5d95b7e93d6341df62
[2026-06-22 14:17:36,014.014 INFO    ] 2026-06-22 14:17:36
[2026-06-22 14:17:36,019.019 INFO    ] playing audio file
[2026-06-22 14:17:36,047.047 INFO    ] 2026-06-22 14:17:36
[2026-06-22 14:17:36,055.055 INFO    ] 2026-06-22 14:17:36
[2026-06-22 14:17:36,070.070 INFO    ] publish_status: order_id=TM06202507260622141639453
[2026-06-22 14:17:36,084.084 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622141639453
[2026-06-22 14:17:36,164.164 INFO    ] [publish_status] Message added to stream with ID: 1782118056087-0
[2026-06-22 14:17:36,178.178 INFO    ] Published to order:TM06202507260622141639453: {'timestamp': '2026-06-22T08:47:36.056665Z', 'server_response': '{"msg": "Order Data", "data": {"mobile": "9969986559", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/186059-5330.png", "qty": 1, "skuid": "186059", "door_id": "2", "name": "Pepsi ZeroSugar  300ml", "tray_id": "42", "offer_id": "", "offer_desc": "", "unit_price": 40, "sku_total": 40, "mrp": "40"}], "access_code": "77728538", "invoice_bill": "40", "order_id": "TM06202507260622141639453", "bill_amount": "40"}, "rstatus": true, "status": true}', 'order_id': 'TM06202507260622141639453', 'server_status': 'order-started'} (ID: 1782118056087-0)
[2026-06-22 14:17:36,750.750 INFO    ] {'server_response': {'msg': 'Order Data', 'data': {'mobile': '9969986559', 'proposed_sku_json': [{'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'qty': 1, 'skuid': '186059', 'door_id': '2', 'name': 'Pepsi ZeroSugar  300ml', 'tray_id': '42', 'offer_id': '', 'offer_desc': '', 'unit_price': 40, 'sku_total': 40, 'mrp': '40'}], 'access_code': '77728538', 'invoice_bill': '40', 'order_id': 'TM06202507260622141639453', 'bill_amount': '40'}, 'rstatus': True, 'status': True}, 'order_id': 'TM06202507260622141639453', 'server_status': 'order-started'}
[2026-06-22 14:17:36,764.764 INFO    ] 200
[2026-06-22 14:17:36,782.782 INFO    ] {"data":{"server_response":{"msg":"Order Data","data":{"mobile":"9969986559","proposed_sku_json":[{"image_url":"https:\/\/images.tinymart.in\/product\/186059-5330.png","qty":1,"skuid":"186059","door_id":"2","name":"Pepsi ZeroSugar  300ml","tray_id":"42","offer_id":"","offer_desc":"","unit_price":40,"sku_total":40,"mrp":"40"}],"access_code":"77728538","invoice_bill":"40","order_id":"TM06202507260622141639453","bill_amount":"40"},"rstatus":true,"status":true},"order_id":"TM06202507260622141639453","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 14:17:36,839.839 INFO    ] {'data': {'server_response': {'msg': 'Order Data', 'data': {'mobile': '9969986559', 'proposed_sku_json': [{'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'qty': 1, 'skuid': '186059', 'name': 'Pepsi ZeroSugar  300ml', 'tray_id': '42', 'offer_id': '', 'offer_desc': '', 'unit_price': 40, 'sku_total': 40, 'mrp': '40', 'door_id': '2'}], 'access_code': '77728538', 'invoice_bill': '40', 'order_id': 'TM06202507260622141639453', 'bill_amount': '40'}, 'status': True, 'rstatus': True}, 'order_id': 'TM06202507260622141639453', 'server_status': 'order-started'}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-22 14:17:36,875.875 INFO    ] 2026-06-22 14:17:36
[2026-06-22 14:17:36,962.962 INFO    ] 200
[2026-06-22 14:17:36,969.969 INFO    ] True
[2026-06-22 14:17:37,090.090 INFO    ] 200
[2026-06-22 14:17:37,093.093 INFO    ] {"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": ""}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 14:17:37,097.097 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False'}
[2026-06-22 14:17:37,100.100 INFO    ] *** process_order ***
[2026-06-22 14:17:38,293.293 INFO    ] 200
[2026-06-22 14:17:38,296.296 INFO    ] {"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": ""}, "rstatus": true, "delay": 0, "status": "True", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 14:17:38,299.299 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'rstatus': True, 'delay': 0, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True'}
[2026-06-22 14:17:38,302.302 INFO    ] *** process_order ***
[2026-06-22 14:17:38,305.305 INFO    ] publish_status: order_id=TM06202507260622141639453
[2026-06-22 14:17:38,307.307 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622141639453
[2026-06-22 14:17:38,390.390 INFO    ] [publish_status] Message added to stream with ID: 1782118058328-0
[2026-06-22 14:17:38,393.393 INFO    ] Published to order:TM06202507260622141639453: {'server_response': '{"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Door is open...", "status": "True", "delay": 0, "SectionStatus": {"SubHeader": "You can pull the door now.", "Header": " Your order is under process  ", "Note": "", "UI_Header": ""}, "SectionMain": {"Header": "Processing Order"}, "rstatus": true}', 'order_id': 'TM06202507260622141639453', 'server_status': 'doorOpened'} (ID: 1782118058328-0)
[2026-06-22 14:17:39,441.441 INFO    ] 2026-06-22 14:17:39
[2026-06-22 14:17:39,444.444 INFO    ] publish_status: order_id=TM06202507260622141639453
[2026-06-22 14:17:39,446.446 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622141639453
[2026-06-22 14:17:39,518.518 INFO    ] [publish_status] Message added to stream with ID: 1782118059463-0
[2026-06-22 14:17:39,521.521 INFO    ] Published to order:TM06202507260622141639453: {'timestamp': '2026-06-22T08:47:39.442520Z', 'server_response': '{"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "rstatus": true, "delay": 0, "SectionStatus": {"Note": "", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Header": " Your order is under process  "}, "SectionMain": {"Header": "Processing Order"}, "status": "True"}', 'order_id': 'TM06202507260622141639453', 'server_status': 'processOrder'} (ID: 1782118059463-0)
[2026-06-22 14:17:39,664.664 INFO    ] {'server_response': {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'rstatus': True, 'delay': 0, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True'}, 'order_id': 'TM06202507260622141639453', 'server_status': 'processOrder'}
[2026-06-22 14:17:39,667.667 INFO    ] 200
[2026-06-22 14:17:39,669.669 INFO    ] {"data":{"server_response":{"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"voiceNote":"Please Wait","rstatus":true,"delay":0,"SectionStatus":{"Note":"","SubHeader":"Please wait while we process your order","UI_Header":"","Header":" Your order is under process  "},"SectionMain":{"Header":"Processing Order"},"status":"true"},"order_id":"TM06202507260622141639453","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 14:17:39,672.672 INFO    ] {'data': {'server_response': {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'status': 'true', 'delay': 0, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True}, 'order_id': 'TM06202507260622141639453', 'server_status': 'processOrder'}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-22 14:17:39,674.674 INFO    ] 2026-06-22 14:17:39
[2026-06-22 14:17:39,677.677 INFO    ] None
[2026-06-22 14:17:39,679.679 INFO    ] Opening Door now
[2026-06-22 14:17:39,682.682 INFO    ] Opening Door now
[2026-06-22 14:17:39,685.685 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-22 14:17:39,687.687 INFO    ] 2026-06-22 14:17:39
[2026-06-22 14:17:39,690.690 INFO    ] playing audio file
[2026-06-22 14:17:39,707.707 INFO    ] 2026-06-22 14:17:39
[2026-06-22 14:17:39,710.710 INFO    ] 2026-06-22 14:17:39
[2026-06-22 14:17:42,777.777 INFO    ] 200
[2026-06-22 14:17:42,780.780 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Pepsi ZeroSugar  300ml"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Door 2 is open now"}
[2026-06-22 14:17:42,783.783 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Pepsi ZeroSugar  300ml'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Door 2 is open now', 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-22 14:17:45,843.843 INFO    ] 200
[2026-06-22 14:17:45,846.846 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Pepsi ZeroSugar  300ml"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2"}
[2026-06-22 14:17:45,849.849 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Pepsi ZeroSugar  300ml'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-22 14:17:48,915.915 INFO    ] 200
[2026-06-22 14:17:48,918.918 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Pepsi ZeroSugar  300ml"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2"}
[2026-06-22 14:17:48,921.921 INFO    ] Please close door 2
[2026-06-22 14:17:48,924.924 INFO    ] Please close door 2
[2026-06-22 14:17:48,926.926 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-22 14:17:48,933.933 INFO    ] 2026-06-22 14:17:48
[2026-06-22 14:17:48,936.936 INFO    ] playing audio file
[2026-06-22 14:17:48,953.953 INFO    ] 2026-06-22 14:17:48
[2026-06-22 14:17:48,957.957 INFO    ] publish_status: order_id=TM06202507260622141639453
[2026-06-22 14:17:48,959.959 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622141639453
[2026-06-22 14:17:49,048.048 INFO    ] [publish_status] Message added to stream with ID: 1782118068993-0
[2026-06-22 14:17:49,051.051 INFO    ] Published to order:TM06202507260622141639453: {'timestamp': '2026-06-22T08:47:48.955358Z', 'server_response': '{"SectionSKU": {"skus": [{"qty": 1, "name": "Pepsi ZeroSugar  300ml"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "error": {"data": {}, "tmessage": "In Progress", "umessage": "In Progress", "code": 20001}, "rstatus": false, "SectionStatus": {"Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 2"}, "SectionMain": {"Header": "Door Open"}, "status": "False"}', 'order_id': 'TM06202507260622141639453', 'server_status': 'OrderStatus'} (ID: 1782118068993-0)
[2026-06-22 14:17:49,603.603 INFO    ] {'server_response': {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Pepsi ZeroSugar  300ml'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}, 'order_id': 'TM06202507260622141639453', 'server_status': 'OrderStatus'}
[2026-06-22 14:17:49,606.606 INFO    ] 200
[2026-06-22 14:17:49,608.608 INFO    ] {"data":{"server_response":{"SectionSKU":{"skus":[{"qty":1,"name":"Pepsi ZeroSugar  300ml"}],"Header":"Pick the below items from the door"},"voiceNote":"Please close door 2","error":{"data":[],"tmessage":"In Progress","umessage":"In Progress","code":20001},"rstatus":false,"SectionStatus":{"Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Header":"Please Close Door 2"},"SectionMain":{"Header":"Door Open"},"status":"false"},"order_id":"TM06202507260622141639453","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 14:17:49,611.611 INFO    ] {'data': {'server_response': {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Pepsi ZeroSugar  300ml'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'error': {'data': [], 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'status': 'false', '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'}, 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False}, 'order_id': 'TM06202507260622141639453', 'server_status': 'OrderStatus'}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-22 14:17:49,614.614 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Pepsi ZeroSugar  300ml'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'rstatus': False, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-22 14:17:52,669.669 INFO    ] 200
[2026-06-22 14:17:52,672.672 INFO    ] {"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"}, "rstatus": true, "delay": 100, "status": "True", "SectionMain": {"Header": "Door Closed"}, "voiceNote": "Transaction Completed"}
[2026-06-22 14:17:52,676.676 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'voiceNote': 'Transaction Completed', 'rstatus': True, '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 '}, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True'}
[2026-06-22 14:17:52,679.679 INFO    ] 2026-06-22 14:17:52
[2026-06-22 14:17:52,681.681 INFO    ] Order Completed 
[2026-06-22 14:17:52,684.684 INFO    ] Order Completed 
[2026-06-22 14:17:52,687.687 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-22 14:17:52,690.690 INFO    ] 2026-06-22 14:17:52
[2026-06-22 14:17:52,693.693 INFO    ] playing audio file
[2026-06-22 14:17:52,711.711 INFO    ] 2026-06-22 14:17:52
[2026-06-22 14:17:52,714.714 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'voiceNote': 'Transaction Completed', 'rstatus': True, '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 '}, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True'}
[2026-06-22 14:17:52,718.718 INFO    ] 2026-06-22 14:17:52
[2026-06-22 14:17:55,295.295 INFO    ] 200
[2026-06-22 14:17:55,297.297 INFO    ] {"skus": [{"tray_id": "42", "qty": 1, "mrp": "40", "door_id": "", "name": "Pepsi ZeroSugar  300ml per peice", "sku_total": 40.0, "image_url": "https://images.tinymart.in/product/186059-5330.png", "unit_price": "40", "skuid": "186059"}], "anomaly": 0, "rstatus": true, "orderId": "TM06202507260622141639453", "logic": "WBL", "total_amount": 40.0, "res": "True"}
[2026-06-22 14:17:55,300.300 INFO    ] {'orderId': 'TM06202507260622141639453', 'anomaly': 0, 'logic': 'WBL', 'skus': [{'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'qty': 1, 'skuid': '186059', 'door_id': '', 'name': 'Pepsi ZeroSugar  300ml per peice', 'tray_id': '42', 'unit_price': '40', 'sku_total': 40.0, 'mrp': '40'}], 'res': 'True', 'total_amount': 40.0, 'rstatus': True}
[2026-06-22 14:17:55,303.303 INFO    ] {'orderId': 'TM06202507260622141639453', 'anomaly': 0, 'logic': 'WBL', 'skus': [{'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'qty': 1, 'skuid': '186059', 'door_id': '', 'name': 'Pepsi ZeroSugar  300ml per peice', 'tray_id': '42', 'unit_price': '40', 'sku_total': 40.0, 'mrp': '40'}], 'res': 'True', 'total_amount': 40.0, 'rstatus': True}
[2026-06-22 14:17:55,305.305 INFO    ] 2026-06-22 14:17:55
[2026-06-22 14:17:55,308.308 INFO    ] 2026-06-22 14:17:55
[2026-06-22 14:17:55,310.310 INFO    ] 40
[2026-06-22 14:17:55,313.313 INFO    ] 2026-06-22 14:17:55
[2026-06-22 14:17:55,315.315 INFO    ] 2026-06-22 14:17:55
[2026-06-22 14:17:55,318.318 INFO    ]  Your Bill Amount is 40
[2026-06-22 14:17:55,320.320 INFO    ]  Your Bill Amount is 40
[2026-06-22 14:17:55,322.322 INFO    ] 88965e4060b051d18121185ac205626e
[2026-06-22 14:17:55,325.325 INFO    ] 2026-06-22 14:17:55
[2026-06-22 14:17:55,327.327 INFO    ] playing audio file
[2026-06-22 14:17:55,345.345 INFO    ] 2026-06-22 14:17:55
[2026-06-22 14:17:55,348.348 INFO    ] 2026-06-22 14:17:55
[2026-06-22 14:17:55,351.351 INFO    ] publish_status: order_id=TM06202507260622141639453
[2026-06-22 14:17:55,354.354 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622141639453
[2026-06-22 14:17:55,433.433 INFO    ] [publish_status] Message added to stream with ID: 1782118075378-0
[2026-06-22 14:17:55,436.436 INFO    ] Published to order:TM06202507260622141639453: {'timestamp': '2026-06-22T08:47:55.349796Z', 'server_response': '{"orderId": "TM06202507260622141639453", "anomaly": 0, "logic": "WBL", "skus": [{"image_url": "https://images.tinymart.in/product/186059-5330.png", "qty": 1, "skuid": "186059", "door_id": "", "name": "Pepsi ZeroSugar  300ml per peice", "tray_id": "42", "unit_price": "40", "sku_total": 40.0, "mrp": "40"}], "res": "True", "total_amount": 40.0, "rstatus": true}', 'order_id': 'TM06202507260622141639453', 'server_status': 'invoiceOrder'} (ID: 1782118075378-0)
[2026-06-22 14:17:55,974.974 INFO    ] {'server_response': {'orderId': 'TM06202507260622141639453', 'anomaly': 0, 'logic': 'WBL', 'skus': [{'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'qty': 1, 'skuid': '186059', 'door_id': '', 'name': 'Pepsi ZeroSugar  300ml per peice', 'tray_id': '42', 'unit_price': '40', 'sku_total': 40.0, 'mrp': '40'}], 'res': 'True', 'total_amount': 40.0, 'rstatus': True}, 'order_id': 'TM06202507260622141639453', 'server_status': 'invoiceOrder'}
[2026-06-22 14:17:55,977.977 INFO    ] 200
[2026-06-22 14:17:55,979.979 INFO    ] {"data":{"server_response":{"orderId":"TM06202507260622141639453","anomaly":0,"logic":"WBL","skus":[{"image_url":"https:\/\/images.tinymart.in\/product\/186059-5330.png","qty":1,"skuid":"186059","door_id":"","name":"Pepsi ZeroSugar  300ml per peice","tray_id":"42","unit_price":"40","sku_total":40,"mrp":"40"}],"res":"true","total_amount":40,"rstatus":true},"order_id":"TM06202507260622141639453","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 14:17:55,983.983 INFO    ] {'data': {'server_response': {'orderId': 'TM06202507260622141639453', 'anomaly': 0, 'logic': 'WBL', 'skus': [{'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'qty': 1, 'skuid': '186059', 'name': 'Pepsi ZeroSugar  300ml per peice', 'tray_id': '42', 'unit_price': '40', 'sku_total': 40, 'mrp': '40', 'door_id': ''}], 'res': 'true', 'total_amount': 40, 'rstatus': True}, 'order_id': 'TM06202507260622141639453', 'server_status': 'invoiceOrder'}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-22 14:17:55,986.986 INFO    ] {'data': {'server_response': {'orderId': 'TM06202507260622141639453', 'anomaly': 0, 'logic': 'WBL', 'skus': [{'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'qty': 1, 'skuid': '186059', 'name': 'Pepsi ZeroSugar  300ml per peice', 'tray_id': '42', 'unit_price': '40', 'sku_total': 40, 'mrp': '40', 'door_id': ''}], 'res': 'true', 'total_amount': 40, 'rstatus': True}, 'order_id': 'TM06202507260622141639453', 'server_status': 'invoiceOrder'}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-06-22 14:17:55,989.989 INFO    ] 2026-06-22 14:17:55
[2026-06-22 14:17:59,651.651 INFO    ] 200
[2026-06-22 14:17:59,654.654 INFO    ] {"orders_data_synced": [], "order_items": [], "orders_data": [], "orders_synced": [], "tray_synced": ["TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453", "TM06202507260622141639453"], "order_items_synced": ["TM06202507260622141639453_0"], "orders": [], "status": true, "tray_sync": []}
[2026-06-22 14:17:59,657.657 INFO    ] 2026-06-22 14:17:59
[2026-06-22 14:17:59,807.807 INFO    ] 200
[2026-06-22 14:17:59,809.809 INFO    ] True
[2026-06-22 14:17:59,811.811 INFO    ] cleanup_start_order_file_after_processing: order_id=TM06202507260622141639453
[2026-06-22 14:17:59,815.815 INFO    ] start order file deleted
[2026-06-22 14:17:59,818.818 INFO    ] Checking for system updates...
[2026-06-22 14:17:59,854.854 INFO    ] 200
[2026-06-22 14:17:59,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:17:59,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:17:59,912.912 INFO    ] No update needed
[2026-06-22 14:17:59,915.915 INFO    ] Checking for camera pi updates...
[2026-06-22 14:17:59,952.952 INFO    ] 200
[2026-06-22 14:17:59,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:18:00,004.004 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:18:00,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:18:00,061.061 INFO    ] No camera update needed
[2026-06-22 14:18:00,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:18:00,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:18:00,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:18:00,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:18:02,131.131 INFO    ] ================================================
[2026-06-22 14:18:02,163.163 INFO    ] Launching Daemon at Mon Jun 22 14:18:02 IST 2026
[2026-06-22 14:18:02,178.178 INFO    ] ================================================
[2026-06-22 14:18:02,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:18:02
[2026-06-22 14:18:03,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:18:03,978.978 INFO    ] Initializing speech engine...
[2026-06-22 14:18:03,986.986 INFO    ] 2026-06-22 14:18:03
[2026-06-22 14:18:04,256.256 INFO    ] 2026-06-22 14:18:04
[2026-06-22 14:18:04,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:18:04,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:18:04,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:18:04,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:18:04,735.735 INFO    ] time= 22/06/2026 14:18:04
[2026-06-22 14:18:04,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:18:04,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:18:04,969.969 INFO    ] No existing commands found in stream
[2026-06-22 14:18:09,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:18:09,998.998 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-22 14:18:10,484.484 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:18:10,486.486 INFO    ] Checking for system updates...
[2026-06-22 14:18:10,507.507 INFO    ] 200
[2026-06-22 14:18:10,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:18:10,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:18:10,540.540 INFO    ] No update needed
[2026-06-22 14:18:10,541.541 INFO    ] Checking for camera pi updates...
[2026-06-22 14:18:10,561.561 INFO    ] 200
[2026-06-22 14:18:10,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:18:10,605.605 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:18:10,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:18:10,690.690 INFO    ] No camera update needed
[2026-06-22 14:18:10,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:18:10,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:18:10,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:18:10,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:18:12,744.744 INFO    ] ================================================
[2026-06-22 14:18:12,759.759 INFO    ] Launching Daemon at Mon Jun 22 14:18:12 IST 2026
[2026-06-22 14:18:12,770.770 INFO    ] ================================================
[2026-06-22 14:18:13,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:18:13
[2026-06-22 14:18:13,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:18:14,231.231 INFO    ] Initializing speech engine...
[2026-06-22 14:18:14,240.240 INFO    ] 2026-06-22 14:18:14
[2026-06-22 14:18:14,506.506 INFO    ] 2026-06-22 14:18:14
[2026-06-22 14:18:14,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:18:14,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:18:14,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:18:14,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:18:14,985.985 INFO    ] time= 22/06/2026 14:18:14
[2026-06-22 14:18:15,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:18:15,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:18:15,218.218 INFO    ] No existing commands found in stream
[2026-06-22 14:18:20,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:18:20,243.243 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-22 14:18:20,843.843 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:18:20,844.844 INFO    ] Checking for system updates...
[2026-06-22 14:18:20,876.876 INFO    ] 200
[2026-06-22 14:18:20,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:18:20,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:18:20,941.941 INFO    ] No update needed
[2026-06-22 14:18:20,944.944 INFO    ] Checking for camera pi updates...
[2026-06-22 14:18:20,978.978 INFO    ] 200
[2026-06-22 14:18:20,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:18:21,020.020 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:18:21,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:18:21,179.179 INFO    ] No camera update needed
[2026-06-22 14:18:21,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:18:21,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:18:21,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:18:21,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:18:23,234.234 INFO    ] ================================================
[2026-06-22 14:18:23,249.249 INFO    ] Launching Daemon at Mon Jun 22 14:18:23 IST 2026
[2026-06-22 14:18:23,260.260 INFO    ] ================================================
[2026-06-22 14:18:23,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:18:23
[2026-06-22 14:18:24,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:18:24,582.582 INFO    ] Initializing speech engine...
[2026-06-22 14:18:24,608.608 INFO    ] 2026-06-22 14:18:24
[2026-06-22 14:18:24,876.876 INFO    ] 2026-06-22 14:18:24
[2026-06-22 14:18:24,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:18:25,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:18:25,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:18:25,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:18:25,355.355 INFO    ] time= 22/06/2026 14:18:25
[2026-06-22 14:18:25,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:18:25,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:18:25,560.560 INFO    ] No existing commands found in stream
[2026-06-22 14:18:30,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:18:30,582.582 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-22 14:18:32,177.177 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:18:32,180.180 INFO    ] Checking for system updates...
[2026-06-22 14:18:32,218.218 INFO    ] 200
[2026-06-22 14:18:32,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:18:32,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:18:32,279.279 INFO    ] No update needed
[2026-06-22 14:18:32,282.282 INFO    ] Checking for camera pi updates...
[2026-06-22 14:18:32,321.321 INFO    ] 200
[2026-06-22 14:18:32,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:18:32,372.372 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:18:32,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:18:32,442.442 INFO    ] No camera update needed
[2026-06-22 14:18:32,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:18:32,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:18:32,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:18:32,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:18:34,502.502 INFO    ] ================================================
[2026-06-22 14:18:34,517.517 INFO    ] Launching Daemon at Mon Jun 22 14:18:34 IST 2026
[2026-06-22 14:18:34,527.527 INFO    ] ================================================
[2026-06-22 14:18:35,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:18:35
[2026-06-22 14:18:35,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:18:35,985.985 INFO    ] Initializing speech engine...
[2026-06-22 14:18:35,991.991 INFO    ] 2026-06-22 14:18:35
[2026-06-22 14:18:36,251.251 INFO    ] 2026-06-22 14:18:36
[2026-06-22 14:18:36,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:18:36,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:18:36,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:18:36,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:18:36,985.985 INFO    ] time= 22/06/2026 14:18:36
[2026-06-22 14:18:37,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:18:37,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:18:37,204.204 INFO    ] No existing commands found in stream
[2026-06-22 14:18:42,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:18:42,238.238 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-22 14:18:46,186.186 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:18:46,188.188 INFO    ] Checking for system updates...
[2026-06-22 14:18:46,209.209 INFO    ] 200
[2026-06-22 14:18:46,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:18:46,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:18:46,242.242 INFO    ] No update needed
[2026-06-22 14:18:46,244.244 INFO    ] Checking for camera pi updates...
[2026-06-22 14:18:46,263.263 INFO    ] 200
[2026-06-22 14:18:46,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:18:46,300.300 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:18:46,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:18:46,365.365 INFO    ] No camera update needed
[2026-06-22 14:18:46,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:18:46,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:18:46,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:18:46,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:18:48,421.421 INFO    ] ================================================
[2026-06-22 14:18:48,436.436 INFO    ] Launching Daemon at Mon Jun 22 14:18:48 IST 2026
[2026-06-22 14:18:48,446.446 INFO    ] ================================================
[2026-06-22 14:18:49,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:18:49
[2026-06-22 14:18:49,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:18:49,890.890 INFO    ] Initializing speech engine...
[2026-06-22 14:18:49,899.899 INFO    ] 2026-06-22 14:18:49
[2026-06-22 14:18:50,144.144 INFO    ] 2026-06-22 14:18:50
[2026-06-22 14:18:50,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:18:50,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:18:50,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:18:50,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:18:50,710.710 INFO    ] time= 22/06/2026 14:18:50
[2026-06-22 14:18:50,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:18:50,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:18:50,865.865 INFO    ] No existing commands found in stream
[2026-06-22 14:18:55,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:18:55,882.882 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-22 14:18:59,096.096 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:18:59,097.097 INFO    ] Checking for system updates...
[2026-06-22 14:18:59,120.120 INFO    ] 200
[2026-06-22 14:18:59,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:18:59,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:18:59,153.153 INFO    ] No update needed
[2026-06-22 14:18:59,154.154 INFO    ] Checking for camera pi updates...
[2026-06-22 14:18:59,174.174 INFO    ] 200
[2026-06-22 14:18:59,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:18:59,209.209 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:18:59,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:18:59,292.292 INFO    ] No camera update needed
[2026-06-22 14:18:59,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:18:59,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:18:59,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:18:59,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:19:01,351.351 INFO    ] ================================================
[2026-06-22 14:19:01,366.366 INFO    ] Launching Daemon at Mon Jun 22 14:19:01 IST 2026
[2026-06-22 14:19:01,377.377 INFO    ] ================================================
[2026-06-22 14:19:02,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:19:02
[2026-06-22 14:19:02,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:19:03,122.122 INFO    ] Initializing speech engine...
[2026-06-22 14:19:03,134.134 INFO    ] 2026-06-22 14:19:03
[2026-06-22 14:19:03,425.425 INFO    ] 2026-06-22 14:19:03
[2026-06-22 14:19:03,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:19:03,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:19:03,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:19:03,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:19:03,903.903 INFO    ] time= 22/06/2026 14:19:03
[2026-06-22 14:19:03,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:19:03,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:19:04,084.084 INFO    ] No existing commands found in stream
[2026-06-22 14:19:09,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:19:09,118.118 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-22 14:19:10,555.555 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:19:10,558.558 INFO    ] Checking for system updates...
[2026-06-22 14:19:10,593.593 INFO    ] 200
[2026-06-22 14:19:10,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:19:10,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:19:10,651.651 INFO    ] No update needed
[2026-06-22 14:19:10,653.653 INFO    ] Checking for camera pi updates...
[2026-06-22 14:19:10,688.688 INFO    ] 200
[2026-06-22 14:19:10,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:19:10,731.731 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:19:10,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:19:10,815.815 INFO    ] No camera update needed
[2026-06-22 14:19:10,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:19:10,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:19:10,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:19:10,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:19:12,872.872 INFO    ] ================================================
[2026-06-22 14:19:12,888.888 INFO    ] Launching Daemon at Mon Jun 22 14:19:12 IST 2026
[2026-06-22 14:19:12,900.900 INFO    ] ================================================
[2026-06-22 14:19:13,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:19:13
[2026-06-22 14:19:14,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:19:14,426.426 INFO    ] Initializing speech engine...
[2026-06-22 14:19:14,441.441 INFO    ] 2026-06-22 14:19:14
[2026-06-22 14:19:14,724.724 INFO    ] 2026-06-22 14:19:14
[2026-06-22 14:19:14,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:19:15,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:19:15,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:19:15,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:19:15,271.271 INFO    ] time= 22/06/2026 14:19:15
[2026-06-22 14:19:15,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:19:15,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:19:15,431.431 INFO    ] No existing commands found in stream
[2026-06-22 14:19:20,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:19:20,447.447 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-22 14:19:22,813.813 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:19:22,816.816 INFO    ] Checking for system updates...
[2026-06-22 14:19:22,852.852 INFO    ] 200
[2026-06-22 14:19:22,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:19:22,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:19:22,915.915 INFO    ] No update needed
[2026-06-22 14:19:22,917.917 INFO    ] Checking for camera pi updates...
[2026-06-22 14:19:22,950.950 INFO    ] 200
[2026-06-22 14:19:22,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:19:22,994.994 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:19:23,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:19:23,088.088 INFO    ] No camera update needed
[2026-06-22 14:19:23,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:19:23,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:19:23,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:19:23,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:19:25,145.145 INFO    ] ================================================
[2026-06-22 14:19:25,160.160 INFO    ] Launching Daemon at Mon Jun 22 14:19:25 IST 2026
[2026-06-22 14:19:25,171.171 INFO    ] ================================================
[2026-06-22 14:19:25,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:19:25
[2026-06-22 14:19:26,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:19:26,492.492 INFO    ] Initializing speech engine...
[2026-06-22 14:19:26,500.500 INFO    ] 2026-06-22 14:19:26
[2026-06-22 14:19:26,802.802 INFO    ] 2026-06-22 14:19:26
[2026-06-22 14:19:26,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:19:27,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:19:27,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:19:27,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:19:27,196.196 INFO    ] time= 22/06/2026 14:19:27
[2026-06-22 14:19:27,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:19:27,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:19:27,311.311 INFO    ] No existing commands found in stream
[2026-06-22 14:19:32,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:19:32,323.323 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-22 14:19:33,558.558 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:19:33,561.561 INFO    ] Checking for system updates...
[2026-06-22 14:19:33,597.597 INFO    ] 200
[2026-06-22 14:19:33,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:19:33,652.652 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:19:33,654.654 INFO    ] No update needed
[2026-06-22 14:19:33,656.656 INFO    ] Checking for camera pi updates...
[2026-06-22 14:19:33,695.695 INFO    ] 200
[2026-06-22 14:19:33,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:19:33,743.743 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:19:33,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:19:33,828.828 INFO    ] No camera update needed
[2026-06-22 14:19:33,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:19:33,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:19:33,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:19:33,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:19:35,884.884 INFO    ] ================================================
[2026-06-22 14:19:35,900.900 INFO    ] Launching Daemon at Mon Jun 22 14:19:35 IST 2026
[2026-06-22 14:19:35,910.910 INFO    ] ================================================
[2026-06-22 14:19:36,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:19:36
[2026-06-22 14:19:37,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:19:37,490.490 INFO    ] Initializing speech engine...
[2026-06-22 14:19:37,498.498 INFO    ] 2026-06-22 14:19:37
[2026-06-22 14:19:37,773.773 INFO    ] 2026-06-22 14:19:37
[2026-06-22 14:19:37,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:19:38,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:19:38,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:19:38,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:19:38,211.211 INFO    ] time= 22/06/2026 14:19:38
[2026-06-22 14:19:38,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:19:38,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:19:38,468.468 INFO    ] No existing commands found in stream
[2026-06-22 14:19:43,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:19:43,499.499 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-22 14:19:46,600.600 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:19:46,602.602 INFO    ] Checking for system updates...
[2026-06-22 14:19:46,638.638 INFO    ] 200
[2026-06-22 14:19:46,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:19:46,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:19:46,696.696 INFO    ] No update needed
[2026-06-22 14:19:46,698.698 INFO    ] Checking for camera pi updates...
[2026-06-22 14:19:46,732.732 INFO    ] 200
[2026-06-22 14:19:46,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:19:46,776.776 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:19:46,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:19:46,862.862 INFO    ] No camera update needed
[2026-06-22 14:19:46,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:19:46,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:19:46,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:19:46,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:19:48,920.920 INFO    ] ================================================
[2026-06-22 14:19:48,935.935 INFO    ] Launching Daemon at Mon Jun 22 14:19:48 IST 2026
[2026-06-22 14:19:48,946.946 INFO    ] ================================================
[2026-06-22 14:19:49,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:19:49
[2026-06-22 14:19:50,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:19:50,417.417 INFO    ] Initializing speech engine...
[2026-06-22 14:19:50,424.424 INFO    ] 2026-06-22 14:19:50
[2026-06-22 14:19:50,687.687 INFO    ] 2026-06-22 14:19:50
[2026-06-22 14:19:50,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:19:50,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:19:50,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:19:51,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:19:51,194.194 INFO    ] time= 22/06/2026 14:19:51
[2026-06-22 14:19:51,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:19:51,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:19:51,388.388 INFO    ] No existing commands found in stream
[2026-06-22 14:19:56,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:19:56,419.419 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-22 14:19:58,690.690 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:19:58,693.693 INFO    ] Checking for system updates...
[2026-06-22 14:19:58,731.731 INFO    ] 200
[2026-06-22 14:19:58,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:19:58,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:19:58,791.791 INFO    ] No update needed
[2026-06-22 14:19:58,793.793 INFO    ] Checking for camera pi updates...
[2026-06-22 14:19:58,828.828 INFO    ] 200
[2026-06-22 14:19:58,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:19:58,872.872 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:19:58,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:19:58,953.953 INFO    ] No camera update needed
[2026-06-22 14:19:58,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:19:58,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:19:58,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:19:58,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:20:01,022.022 INFO    ] ================================================
[2026-06-22 14:20:01,106.106 INFO    ] Launching Daemon at Mon Jun 22 14:20:01 IST 2026
[2026-06-22 14:20:01,183.183 INFO    ] ================================================
[2026-06-22 14:20:02,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:20:02
[2026-06-22 14:20:02,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:20:03,285.285 INFO    ] Initializing speech engine...
[2026-06-22 14:20:03,306.306 INFO    ] 2026-06-22 14:20:03
[2026-06-22 14:20:03,592.592 INFO    ] 2026-06-22 14:20:03
[2026-06-22 14:20:03,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:20:03,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:20:03,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:20:04,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:20:04,014.014 INFO    ] time= 22/06/2026 14:20:04
[2026-06-22 14:20:04,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:20:04,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:20:04,206.206 INFO    ] No existing commands found in stream
[2026-06-22 14:20:09,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:20:09,229.229 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-22 14:20:12,088.088 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:20:12,091.091 INFO    ] Checking for system updates...
[2026-06-22 14:20:12,127.127 INFO    ] 200
[2026-06-22 14:20:12,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:20:12,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:20:12,184.184 INFO    ] No update needed
[2026-06-22 14:20:12,187.187 INFO    ] Checking for camera pi updates...
[2026-06-22 14:20:12,220.220 INFO    ] 200
[2026-06-22 14:20:12,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:20:12,267.267 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:20:12,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:20:12,352.352 INFO    ] No camera update needed
[2026-06-22 14:20:12,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:20:12,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:20:12,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:20:12,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:20:14,410.410 INFO    ] ================================================
[2026-06-22 14:20:14,425.425 INFO    ] Launching Daemon at Mon Jun 22 14:20:14 IST 2026
[2026-06-22 14:20:14,436.436 INFO    ] ================================================
[2026-06-22 14:20:15,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:20:15
[2026-06-22 14:20:15,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:20:15,859.859 INFO    ] Initializing speech engine...
[2026-06-22 14:20:15,884.884 INFO    ] 2026-06-22 14:20:15
[2026-06-22 14:20:16,156.156 INFO    ] 2026-06-22 14:20:16
[2026-06-22 14:20:16,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:20:16,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:20:16,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:20:16,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:20:16,559.559 INFO    ] time= 22/06/2026 14:20:16
[2026-06-22 14:20:16,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:20:16,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:20:16,753.753 INFO    ] No existing commands found in stream
[2026-06-22 14:20:21,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:20:21,768.768 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-22 14:20:24,093.093 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:20:24,095.095 INFO    ] Checking for system updates...
[2026-06-22 14:20:24,116.116 INFO    ] 200
[2026-06-22 14:20:24,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:20:24,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:20:24,149.149 INFO    ] No update needed
[2026-06-22 14:20:24,152.152 INFO    ] Checking for camera pi updates...
[2026-06-22 14:20:24,187.187 INFO    ] 200
[2026-06-22 14:20:24,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:20:24,231.231 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:20:24,410.410 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:20:24,413.413 INFO    ] No camera update needed
[2026-06-22 14:20:24,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:20:24,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:20:24,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:20:24,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:20:26,473.473 INFO    ] ================================================
[2026-06-22 14:20:26,489.489 INFO    ] Launching Daemon at Mon Jun 22 14:20:26 IST 2026
[2026-06-22 14:20:26,500.500 INFO    ] ================================================
[2026-06-22 14:20:27,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:20:27
[2026-06-22 14:20:27,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:20:27,900.900 INFO    ] Initializing speech engine...
[2026-06-22 14:20:27,914.914 INFO    ] 2026-06-22 14:20:27
[2026-06-22 14:20:28,181.181 INFO    ] 2026-06-22 14:20:28
[2026-06-22 14:20:28,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:20:28,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:20:28,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:20:28,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:20:28,558.558 INFO    ] time= 22/06/2026 14:20:28
[2026-06-22 14:20:28,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:20:28,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:20:28,743.743 INFO    ] No existing commands found in stream
[2026-06-22 14:20:33,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:20:33,771.771 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-22 14:20:36,606.606 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:20:36,609.609 INFO    ] Checking for system updates...
[2026-06-22 14:20:36,646.646 INFO    ] 200
[2026-06-22 14:20:36,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:20:36,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:20:36,707.707 INFO    ] No update needed
[2026-06-22 14:20:36,710.710 INFO    ] Checking for camera pi updates...
[2026-06-22 14:20:36,744.744 INFO    ] 200
[2026-06-22 14:20:36,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:20:36,793.793 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:20:36,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:20:36,905.905 INFO    ] No camera update needed
[2026-06-22 14:20:36,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:20:36,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:20:36,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:20:36,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:20:38,963.963 INFO    ] ================================================
[2026-06-22 14:20:38,979.979 INFO    ] Launching Daemon at Mon Jun 22 14:20:38 IST 2026
[2026-06-22 14:20:38,990.990 INFO    ] ================================================
[2026-06-22 14:20:39,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:20:39
[2026-06-22 14:20:40,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:20:40,454.454 INFO    ] Initializing speech engine...
[2026-06-22 14:20:40,462.462 INFO    ] 2026-06-22 14:20:40
[2026-06-22 14:20:40,720.720 INFO    ] 2026-06-22 14:20:40
[2026-06-22 14:20:40,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:20:41,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:20:41,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:20:41,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:20:41,282.282 INFO    ] time= 22/06/2026 14:20:41
[2026-06-22 14:20:41,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:20:41,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:20:41,445.445 INFO    ] No existing commands found in stream
[2026-06-22 14:20:46,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:20:46,478.478 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-22 14:20:49,299.299 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:20:49,302.302 INFO    ] Checking for system updates...
[2026-06-22 14:20:49,339.339 INFO    ] 200
[2026-06-22 14:20:49,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:20:49,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:20:49,399.399 INFO    ] No update needed
[2026-06-22 14:20:49,401.401 INFO    ] Checking for camera pi updates...
[2026-06-22 14:20:49,440.440 INFO    ] 200
[2026-06-22 14:20:49,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:20:49,490.490 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:20:49,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:20:49,577.577 INFO    ] No camera update needed
[2026-06-22 14:20:49,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:20:49,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:20:49,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:20:49,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:20:51,637.637 INFO    ] ================================================
[2026-06-22 14:20:51,653.653 INFO    ] Launching Daemon at Mon Jun 22 14:20:51 IST 2026
[2026-06-22 14:20:51,665.665 INFO    ] ================================================
[2026-06-22 14:20:52,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:20:52
[2026-06-22 14:20:52,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:20:53,110.110 INFO    ] Initializing speech engine...
[2026-06-22 14:20:53,119.119 INFO    ] 2026-06-22 14:20:53
[2026-06-22 14:20:53,379.379 INFO    ] 2026-06-22 14:20:53
[2026-06-22 14:20:53,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:20:53,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:20:53,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:20:53,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:20:53,874.874 INFO    ] time= 22/06/2026 14:20:53
[2026-06-22 14:20:53,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:20:53,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:20:54,081.081 INFO    ] No existing commands found in stream
[2026-06-22 14:20:59,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:20:59,106.106 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-22 14:21:00,846.846 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:21:00,849.849 INFO    ] Checking for system updates...
[2026-06-22 14:21:00,885.885 INFO    ] 200
[2026-06-22 14:21:00,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:21:00,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:21:00,944.944 INFO    ] No update needed
[2026-06-22 14:21:00,946.946 INFO    ] Checking for camera pi updates...
[2026-06-22 14:21:00,981.981 INFO    ] 200
[2026-06-22 14:21:00,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:21:01,024.024 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:21:01,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:21:01,112.112 INFO    ] No camera update needed
[2026-06-22 14:21:01,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:21:01,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:21:01,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:21:01,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:21:03,172.172 INFO    ] ================================================
[2026-06-22 14:21:03,188.188 INFO    ] Launching Daemon at Mon Jun 22 14:21:03 IST 2026
[2026-06-22 14:21:03,200.200 INFO    ] ================================================
[2026-06-22 14:21:03,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:21:03
[2026-06-22 14:21:04,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:21:04,610.610 INFO    ] Initializing speech engine...
[2026-06-22 14:21:04,625.625 INFO    ] 2026-06-22 14:21:04
[2026-06-22 14:21:04,886.886 INFO    ] 2026-06-22 14:21:04
[2026-06-22 14:21:04,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:21:05,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:21:05,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:21:05,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:21:05,443.443 INFO    ] time= 22/06/2026 14:21:05
[2026-06-22 14:21:05,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:21:05,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:21:05,594.594 INFO    ] No existing commands found in stream
[2026-06-22 14:21:10,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:21:10,613.613 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-22 14:21:11,276.276 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:21:11,278.278 INFO    ] Checking for system updates...
[2026-06-22 14:21:11,314.314 INFO    ] 200
[2026-06-22 14:21:11,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:21:11,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:21:11,373.373 INFO    ] No update needed
[2026-06-22 14:21:11,376.376 INFO    ] Checking for camera pi updates...
[2026-06-22 14:21:11,413.413 INFO    ] 200
[2026-06-22 14:21:11,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:21:11,457.457 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:21:11,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:21:11,517.517 INFO    ] No camera update needed
[2026-06-22 14:21:11,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:21:11,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:21:11,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:21:11,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:21:13,582.582 INFO    ] ================================================
[2026-06-22 14:21:13,597.597 INFO    ] Launching Daemon at Mon Jun 22 14:21:13 IST 2026
[2026-06-22 14:21:13,608.608 INFO    ] ================================================
[2026-06-22 14:21:14,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:21:14
[2026-06-22 14:21:14,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:21:15,052.052 INFO    ] Initializing speech engine...
[2026-06-22 14:21:15,061.061 INFO    ] 2026-06-22 14:21:15
[2026-06-22 14:21:15,307.307 INFO    ] 2026-06-22 14:21:15
[2026-06-22 14:21:15,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:21:15,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:21:15,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:21:15,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:21:15,803.803 INFO    ] time= 22/06/2026 14:21:15
[2026-06-22 14:21:15,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:21:15,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:21:16,002.002 INFO    ] No existing commands found in stream
[2026-06-22 14:21:21,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:21:21,031.031 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-22 14:21:24,576.576 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:21:24,578.578 INFO    ] Checking for system updates...
[2026-06-22 14:21:24,628.628 INFO    ] 200
[2026-06-22 14:21:24,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:21:24,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:21:24,731.731 INFO    ] No update needed
[2026-06-22 14:21:24,733.733 INFO    ] Checking for camera pi updates...
[2026-06-22 14:21:24,767.767 INFO    ] 200
[2026-06-22 14:21:24,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:21:24,810.810 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:21:24,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:21:24,892.892 INFO    ] No camera update needed
[2026-06-22 14:21:24,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:21:24,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:21:24,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:21:24,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:21:26,948.948 INFO    ] ================================================
[2026-06-22 14:21:26,963.963 INFO    ] Launching Daemon at Mon Jun 22 14:21:26 IST 2026
[2026-06-22 14:21:26,974.974 INFO    ] ================================================
[2026-06-22 14:21:27,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:21:27
[2026-06-22 14:21:28,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:21:28,393.393 INFO    ] Initializing speech engine...
[2026-06-22 14:21:28,402.402 INFO    ] 2026-06-22 14:21:28
[2026-06-22 14:21:28,648.648 INFO    ] 2026-06-22 14:21:28
[2026-06-22 14:21:28,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:21:28,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:21:28,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:21:29,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:21:29,162.162 INFO    ] time= 22/06/2026 14:21:29
[2026-06-22 14:21:29,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:21:29,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:21:29,416.416 INFO    ] No existing commands found in stream
[2026-06-22 14:21:34,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:21:34,447.447 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-22 14:21:37,237.237 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:21:37,240.240 INFO    ] Checking for system updates...
[2026-06-22 14:21:37,276.276 INFO    ] 200
[2026-06-22 14:21:37,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:21:37,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:21:37,334.334 INFO    ] No update needed
[2026-06-22 14:21:37,336.336 INFO    ] Checking for camera pi updates...
[2026-06-22 14:21:37,374.374 INFO    ] 200
[2026-06-22 14:21:37,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:21:37,417.417 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:21:37,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:21:37,506.506 INFO    ] No camera update needed
[2026-06-22 14:21:37,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:21:37,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:21:37,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:21:37,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:21:39,560.560 INFO    ] ================================================
[2026-06-22 14:21:39,575.575 INFO    ] Launching Daemon at Mon Jun 22 14:21:39 IST 2026
[2026-06-22 14:21:39,586.586 INFO    ] ================================================
[2026-06-22 14:21:40,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:21:40
[2026-06-22 14:21:40,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:21:40,896.896 INFO    ] Initializing speech engine...
[2026-06-22 14:21:40,910.910 INFO    ] 2026-06-22 14:21:40
[2026-06-22 14:21:41,190.190 INFO    ] 2026-06-22 14:21:41
[2026-06-22 14:21:41,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:21:41,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:21:41,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:21:41,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:21:41,700.700 INFO    ] time= 22/06/2026 14:21:41
[2026-06-22 14:21:41,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:21:41,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:21:41,921.921 INFO    ] No existing commands found in stream
[2026-06-22 14:21:46,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:21:46,937.937 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-22 14:21:48,307.307 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:21:48,309.309 INFO    ] Checking for system updates...
[2026-06-22 14:21:48,329.329 INFO    ] 200
[2026-06-22 14:21:48,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:21:48,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:21:48,367.367 INFO    ] No update needed
[2026-06-22 14:21:48,368.368 INFO    ] Checking for camera pi updates...
[2026-06-22 14:21:48,388.388 INFO    ] 200
[2026-06-22 14:21:48,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:21:48,426.426 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:21:48,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:21:48,503.503 INFO    ] No camera update needed
[2026-06-22 14:21:48,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:21:48,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:21:48,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:21:48,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:21:50,557.557 INFO    ] ================================================
[2026-06-22 14:21:50,572.572 INFO    ] Launching Daemon at Mon Jun 22 14:21:50 IST 2026
[2026-06-22 14:21:50,583.583 INFO    ] ================================================
[2026-06-22 14:21:51,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:21:51
[2026-06-22 14:21:51,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:21:52,220.220 INFO    ] Initializing speech engine...
[2026-06-22 14:21:52,235.235 INFO    ] 2026-06-22 14:21:52
[2026-06-22 14:21:52,523.523 INFO    ] 2026-06-22 14:21:52
[2026-06-22 14:21:52,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:21:52,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:21:52,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:21:52,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:21:53,001.001 INFO    ] time= 22/06/2026 14:21:52
[2026-06-22 14:21:53,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:21:53,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:21:53,215.215 INFO    ] No existing commands found in stream
[2026-06-22 14:21:58,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:21:58,249.249 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-22 14:21:58,701.701 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:21:58,703.703 INFO    ] Checking for system updates...
[2026-06-22 14:21:58,724.724 INFO    ] 200
[2026-06-22 14:21:58,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:21:58,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:21:58,758.758 INFO    ] No update needed
[2026-06-22 14:21:58,759.759 INFO    ] Checking for camera pi updates...
[2026-06-22 14:21:58,780.780 INFO    ] 200
[2026-06-22 14:21:58,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:21:58,816.816 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:21:58,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:21:58,913.913 INFO    ] No camera update needed
[2026-06-22 14:21:58,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:21:58,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:21:58,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:21:58,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:22:00,968.968 INFO    ] ================================================
[2026-06-22 14:22:00,983.983 INFO    ] Launching Daemon at Mon Jun 22 14:22:00 IST 2026
[2026-06-22 14:22:00,994.994 INFO    ] ================================================
[2026-06-22 14:22:01,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:22:01
[2026-06-22 14:22:02,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:22:02,690.690 INFO    ] Initializing speech engine...
[2026-06-22 14:22:02,718.718 INFO    ] 2026-06-22 14:22:02
[2026-06-22 14:22:03,028.028 INFO    ] 2026-06-22 14:22:02
[2026-06-22 14:22:03,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:22:03,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:22:03,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:22:03,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:22:03,480.480 INFO    ] time= 22/06/2026 14:22:03
[2026-06-22 14:22:03,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:22:03,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:22:03,651.651 INFO    ] No existing commands found in stream
[2026-06-22 14:22:08,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:22:08,667.667 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-22 14:22:10,970.970 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:22:10,972.972 INFO    ] Checking for system updates...
[2026-06-22 14:22:10,993.993 INFO    ] 200
[2026-06-22 14:22:10,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:22:11,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:22:11,049.049 INFO    ] No update needed
[2026-06-22 14:22:11,055.055 INFO    ] Checking for camera pi updates...
[2026-06-22 14:22:11,088.088 INFO    ] 200
[2026-06-22 14:22:11,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:22:11,144.144 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:22:11,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:22:11,236.236 INFO    ] No camera update needed
[2026-06-22 14:22:11,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:22:11,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:22:11,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:22:11,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:22:13,291.291 INFO    ] ================================================
[2026-06-22 14:22:13,307.307 INFO    ] Launching Daemon at Mon Jun 22 14:22:13 IST 2026
[2026-06-22 14:22:13,317.317 INFO    ] ================================================
[2026-06-22 14:22:13,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:22:13
[2026-06-22 14:22:14,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:22:14,648.648 INFO    ] Initializing speech engine...
[2026-06-22 14:22:14,661.661 INFO    ] 2026-06-22 14:22:14
[2026-06-22 14:22:14,912.912 INFO    ] 2026-06-22 14:22:14
[2026-06-22 14:22:14,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:22:15,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:22:15,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:22:15,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:22:15,385.385 INFO    ] time= 22/06/2026 14:22:15
[2026-06-22 14:22:15,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:22:15,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:22:15,639.639 INFO    ] No existing commands found in stream
[2026-06-22 14:22:20,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:22:20,657.657 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-22 14:22:23,652.652 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:22:23,655.655 INFO    ] Checking for system updates...
[2026-06-22 14:22:23,694.694 INFO    ] 200
[2026-06-22 14:22:23,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:22:23,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:22:23,760.760 INFO    ] No update needed
[2026-06-22 14:22:23,762.762 INFO    ] Checking for camera pi updates...
[2026-06-22 14:22:23,798.798 INFO    ] 200
[2026-06-22 14:22:23,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:22:23,845.845 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:22:23,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:22:23,942.942 INFO    ] No camera update needed
[2026-06-22 14:22:23,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:22:23,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:22:23,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:22:23,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:22:26,999.999 INFO    ] ================================================
[2026-06-22 14:22:26,014.014 INFO    ] Launching Daemon at Mon Jun 22 14:22:26 IST 2026
[2026-06-22 14:22:26,025.025 INFO    ] ================================================
[2026-06-22 14:22:26,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:22:26
[2026-06-22 14:22:27,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:22:27,513.513 INFO    ] Initializing speech engine...
[2026-06-22 14:22:27,522.522 INFO    ] 2026-06-22 14:22:27
[2026-06-22 14:22:27,794.794 INFO    ] 2026-06-22 14:22:27
[2026-06-22 14:22:27,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:22:28,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:22:28,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:22:28,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:22:28,281.281 INFO    ] time= 22/06/2026 14:22:28
[2026-06-22 14:22:28,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:22:28,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:22:28,520.520 INFO    ] No existing commands found in stream
[2026-06-22 14:22:33,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:22:33,547.547 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-22 14:22:37,556.556 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:22:37,557.557 INFO    ] Checking for system updates...
[2026-06-22 14:22:37,578.578 INFO    ] 200
[2026-06-22 14:22:37,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:22:37,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:22:37,613.613 INFO    ] No update needed
[2026-06-22 14:22:37,614.614 INFO    ] Checking for camera pi updates...
[2026-06-22 14:22:37,637.637 INFO    ] 200
[2026-06-22 14:22:37,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:22:37,683.683 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:22:37,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:22:37,775.775 INFO    ] No camera update needed
[2026-06-22 14:22:37,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:22:37,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:22:37,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:22:37,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:22:39,833.833 INFO    ] ================================================
[2026-06-22 14:22:39,848.848 INFO    ] Launching Daemon at Mon Jun 22 14:22:39 IST 2026
[2026-06-22 14:22:39,859.859 INFO    ] ================================================
[2026-06-22 14:22:40,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:22:40
[2026-06-22 14:22:40,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:22:41,199.199 INFO    ] Initializing speech engine...
[2026-06-22 14:22:41,206.206 INFO    ] 2026-06-22 14:22:41
[2026-06-22 14:22:41,494.494 INFO    ] 2026-06-22 14:22:41
[2026-06-22 14:22:41,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:22:41,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:22:41,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:22:41,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:22:41,990.990 INFO    ] time= 22/06/2026 14:22:41
[2026-06-22 14:22:42,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:22:42,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:22:42,180.180 INFO    ] No existing commands found in stream
[2026-06-22 14:22:47,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:22:47,203.203 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-22 14:22:51,451.451 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:22:51,454.454 INFO    ] Checking for system updates...
[2026-06-22 14:22:51,490.490 INFO    ] 200
[2026-06-22 14:22:51,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:22:51,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:22:51,550.550 INFO    ] No update needed
[2026-06-22 14:22:51,553.553 INFO    ] Checking for camera pi updates...
[2026-06-22 14:22:51,589.589 INFO    ] 200
[2026-06-22 14:22:51,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:22:51,632.632 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:22:51,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:22:51,715.715 INFO    ] No camera update needed
[2026-06-22 14:22:51,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:22:51,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:22:51,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:22:51,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:22:53,770.770 INFO    ] ================================================
[2026-06-22 14:22:53,786.786 INFO    ] Launching Daemon at Mon Jun 22 14:22:53 IST 2026
[2026-06-22 14:22:53,796.796 INFO    ] ================================================
[2026-06-22 14:22:54,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:22:54
[2026-06-22 14:22:54,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:22:55,102.102 INFO    ] Initializing speech engine...
[2026-06-22 14:22:55,117.117 INFO    ] 2026-06-22 14:22:55
[2026-06-22 14:22:55,382.382 INFO    ] 2026-06-22 14:22:55
[2026-06-22 14:22:55,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:22:55,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:22:55,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:22:55,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:22:55,862.862 INFO    ] time= 22/06/2026 14:22:55
[2026-06-22 14:22:55,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:22:55,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:22:56,056.056 INFO    ] No existing commands found in stream
[2026-06-22 14:23:01,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:23:01,088.088 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-22 14:23:02,252.252 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:23:02,255.255 INFO    ] Checking for system updates...
[2026-06-22 14:23:02,309.309 INFO    ] 200
[2026-06-22 14:23:02,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:23:02,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:23:02,384.384 INFO    ] No update needed
[2026-06-22 14:23:02,387.387 INFO    ] Checking for camera pi updates...
[2026-06-22 14:23:02,430.430 INFO    ] 200
[2026-06-22 14:23:02,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:23:02,481.481 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:23:02,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:23:02,537.537 INFO    ] No camera update needed
[2026-06-22 14:23:02,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:23:02,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:23:02,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:23:02,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:23:04,598.598 INFO    ] ================================================
[2026-06-22 14:23:04,612.612 INFO    ] Launching Daemon at Mon Jun 22 14:23:04 IST 2026
[2026-06-22 14:23:04,623.623 INFO    ] ================================================
[2026-06-22 14:23:05,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:23:05
[2026-06-22 14:23:05,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:23:06,075.075 INFO    ] Initializing speech engine...
[2026-06-22 14:23:06,085.085 INFO    ] 2026-06-22 14:23:06
[2026-06-22 14:23:06,354.354 INFO    ] 2026-06-22 14:23:06
[2026-06-22 14:23:06,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:23:06,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:23:06,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:23:06,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:23:06,826.826 INFO    ] time= 22/06/2026 14:23:06
[2026-06-22 14:23:06,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:23:06,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:23:06,906.906 INFO    ] No existing commands found in stream
[2026-06-22 14:23:11,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:23:11,918.918 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-22 14:23:13,422.422 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:23:13,424.424 INFO    ] Checking for system updates...
[2026-06-22 14:23:13,446.446 INFO    ] 200
[2026-06-22 14:23:13,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:23:13,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:23:13,496.496 INFO    ] No update needed
[2026-06-22 14:23:13,498.498 INFO    ] Checking for camera pi updates...
[2026-06-22 14:23:13,532.532 INFO    ] 200
[2026-06-22 14:23:13,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:23:13,575.575 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:23:13,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:23:13,684.684 INFO    ] No camera update needed
[2026-06-22 14:23:13,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:23:13,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:23:13,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:23:13,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:23:15,739.739 INFO    ] ================================================
[2026-06-22 14:23:15,754.754 INFO    ] Launching Daemon at Mon Jun 22 14:23:15 IST 2026
[2026-06-22 14:23:15,765.765 INFO    ] ================================================
[2026-06-22 14:23:16,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:23:16
[2026-06-22 14:23:16,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:23:17,083.083 INFO    ] Initializing speech engine...
[2026-06-22 14:23:17,091.091 INFO    ] 2026-06-22 14:23:17
[2026-06-22 14:23:17,364.364 INFO    ] 2026-06-22 14:23:17
[2026-06-22 14:23:17,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:23:17,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:23:17,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:23:17,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:23:17,871.871 INFO    ] time= 22/06/2026 14:23:17
[2026-06-22 14:23:17,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:23:17,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:23:18,049.049 INFO    ] No existing commands found in stream
[2026-06-22 14:23:23,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:23:23,061.061 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-22 14:23:25,020.020 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:23:25,022.022 INFO    ] Checking for system updates...
[2026-06-22 14:23:25,042.042 INFO    ] 200
[2026-06-22 14:23:25,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:23:25,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:23:25,084.084 INFO    ] No update needed
[2026-06-22 14:23:25,087.087 INFO    ] Checking for camera pi updates...
[2026-06-22 14:23:25,120.120 INFO    ] 200
[2026-06-22 14:23:25,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:23:25,166.166 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:23:25,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:23:25,251.251 INFO    ] No camera update needed
[2026-06-22 14:23:25,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:23:25,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:23:25,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:23:25,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:23:27,310.310 INFO    ] ================================================
[2026-06-22 14:23:27,325.325 INFO    ] Launching Daemon at Mon Jun 22 14:23:27 IST 2026
[2026-06-22 14:23:27,336.336 INFO    ] ================================================
[2026-06-22 14:23:27,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:23:27
[2026-06-22 14:23:28,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:23:28,661.661 INFO    ] Initializing speech engine...
[2026-06-22 14:23:28,686.686 INFO    ] 2026-06-22 14:23:28
[2026-06-22 14:23:28,951.951 INFO    ] 2026-06-22 14:23:28
[2026-06-22 14:23:28,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:23:29,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:23:29,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:23:29,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:23:29,459.459 INFO    ] time= 22/06/2026 14:23:29
[2026-06-22 14:23:29,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:23:29,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:23:29,711.711 INFO    ] No existing commands found in stream
[2026-06-22 14:23:34,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:23:34,742.742 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-22 14:23:37,839.839 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:23:37,841.841 INFO    ] Checking for system updates...
[2026-06-22 14:23:37,862.862 INFO    ] 200
[2026-06-22 14:23:37,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:23:37,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:23:37,910.910 INFO    ] No update needed
[2026-06-22 14:23:37,912.912 INFO    ] Checking for camera pi updates...
[2026-06-22 14:23:37,948.948 INFO    ] 200
[2026-06-22 14:23:37,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:23:37,991.991 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:23:38,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:23:38,127.127 INFO    ] No camera update needed
[2026-06-22 14:23:38,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:23:38,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:23:38,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:23:38,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:23:40,182.182 INFO    ] ================================================
[2026-06-22 14:23:40,198.198 INFO    ] Launching Daemon at Mon Jun 22 14:23:40 IST 2026
[2026-06-22 14:23:40,209.209 INFO    ] ================================================
[2026-06-22 14:23:40,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:23:40
[2026-06-22 14:23:41,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:23:41,583.583 INFO    ] Initializing speech engine...
[2026-06-22 14:23:41,594.594 INFO    ] 2026-06-22 14:23:41
[2026-06-22 14:23:41,858.858 INFO    ] 2026-06-22 14:23:41
[2026-06-22 14:23:41,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:23:42,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:23:42,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:23:42,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:23:42,269.269 INFO    ] time= 22/06/2026 14:23:42
[2026-06-22 14:23:42,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:23:42,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:23:42,352.352 INFO    ] No existing commands found in stream
[2026-06-22 14:23:47,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:23:47,373.373 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-22 14:23:49,996.996 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:23:49,999.999 INFO    ] Checking for system updates...
[2026-06-22 14:23:50,039.039 INFO    ] 200
[2026-06-22 14:23:50,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:23:50,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:23:50,097.097 INFO    ] No update needed
[2026-06-22 14:23:50,100.100 INFO    ] Checking for camera pi updates...
[2026-06-22 14:23:50,134.134 INFO    ] 200
[2026-06-22 14:23:50,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:23:50,182.182 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:23:50,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:23:50,284.284 INFO    ] No camera update needed
[2026-06-22 14:23:50,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:23:50,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:23:50,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:23:50,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:23:52,340.340 INFO    ] ================================================
[2026-06-22 14:23:52,356.356 INFO    ] Launching Daemon at Mon Jun 22 14:23:52 IST 2026
[2026-06-22 14:23:52,368.368 INFO    ] ================================================
[2026-06-22 14:23:52,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:23:52
[2026-06-22 14:23:53,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:23:53,697.697 INFO    ] Initializing speech engine...
[2026-06-22 14:23:53,721.721 INFO    ] 2026-06-22 14:23:53
[2026-06-22 14:23:53,995.995 INFO    ] 2026-06-22 14:23:53
[2026-06-22 14:23:54,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:23:54,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:23:54,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:23:54,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:23:54,409.409 INFO    ] time= 22/06/2026 14:23:54
[2026-06-22 14:23:54,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:23:54,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:23:54,497.497 INFO    ] No existing commands found in stream
[2026-06-22 14:23:59,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:23:59,511.511 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-22 14:24:01,107.107 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:24:01,110.110 INFO    ] Checking for system updates...
[2026-06-22 14:24:01,151.151 INFO    ] 200
[2026-06-22 14:24:01,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:24:01,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:24:01,211.211 INFO    ] No update needed
[2026-06-22 14:24:01,214.214 INFO    ] Checking for camera pi updates...
[2026-06-22 14:24:01,252.252 INFO    ] 200
[2026-06-22 14:24:01,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:24:01,301.301 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:24:01,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:24:01,406.406 INFO    ] No camera update needed
[2026-06-22 14:24:01,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:24:01,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:24:01,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:24:01,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:24:03,481.481 INFO    ] ================================================
[2026-06-22 14:24:03,497.497 INFO    ] Launching Daemon at Mon Jun 22 14:24:03 IST 2026
[2026-06-22 14:24:03,509.509 INFO    ] ================================================
[2026-06-22 14:24:04,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:24:04
[2026-06-22 14:24:04,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:24:05,084.084 INFO    ] Initializing speech engine...
[2026-06-22 14:24:05,098.098 INFO    ] 2026-06-22 14:24:05
[2026-06-22 14:24:05,375.375 INFO    ] 2026-06-22 14:24:05
[2026-06-22 14:24:05,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:24:05,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:24:05,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:24:05,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:24:05,835.835 INFO    ] time= 22/06/2026 14:24:05
[2026-06-22 14:24:05,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:24:05,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:24:06,049.049 INFO    ] No existing commands found in stream
[2026-06-22 14:24:11,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:24:11,080.080 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-22 14:24:13,666.666 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:24:13,669.669 INFO    ] Checking for system updates...
[2026-06-22 14:24:13,706.706 INFO    ] 200
[2026-06-22 14:24:13,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:24:13,765.765 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:24:13,768.768 INFO    ] No update needed
[2026-06-22 14:24:13,771.771 INFO    ] Checking for camera pi updates...
[2026-06-22 14:24:13,805.805 INFO    ] 200
[2026-06-22 14:24:13,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:24:13,847.847 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:24:13,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:24:13,937.937 INFO    ] No camera update needed
[2026-06-22 14:24:13,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:24:13,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:24:13,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:24:13,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:24:15,993.993 INFO    ] ================================================
[2026-06-22 14:24:16,009.009 INFO    ] Launching Daemon at Mon Jun 22 14:24:16 IST 2026
[2026-06-22 14:24:16,020.020 INFO    ] ================================================
[2026-06-22 14:24:16,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:24:16
[2026-06-22 14:24:17,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:24:17,369.369 INFO    ] Initializing speech engine...
[2026-06-22 14:24:17,384.384 INFO    ] 2026-06-22 14:24:17
[2026-06-22 14:24:17,639.639 INFO    ] 2026-06-22 14:24:17
[2026-06-22 14:24:17,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:24:17,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:24:17,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:24:18,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:24:18,134.134 INFO    ] time= 22/06/2026 14:24:18
[2026-06-22 14:24:18,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:24:18,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:24:18,344.344 INFO    ] No existing commands found in stream
[2026-06-22 14:24:23,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:24:23,363.363 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-22 14:24:26,772.772 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:24:26,774.774 INFO    ] Checking for system updates...
[2026-06-22 14:24:26,811.811 INFO    ] 200
[2026-06-22 14:24:26,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:24:26,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:24:26,868.868 INFO    ] No update needed
[2026-06-22 14:24:26,871.871 INFO    ] Checking for camera pi updates...
[2026-06-22 14:24:26,909.909 INFO    ] 200
[2026-06-22 14:24:26,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:24:26,951.951 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:24:27,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:24:27,048.048 INFO    ] No camera update needed
[2026-06-22 14:24:27,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:24:27,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:24:27,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:24:27,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:24:29,104.104 INFO    ] ================================================
[2026-06-22 14:24:29,119.119 INFO    ] Launching Daemon at Mon Jun 22 14:24:29 IST 2026
[2026-06-22 14:24:29,130.130 INFO    ] ================================================
[2026-06-22 14:24:29,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:24:29
[2026-06-22 14:24:30,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:24:30,646.646 INFO    ] Initializing speech engine...
[2026-06-22 14:24:30,663.663 INFO    ] 2026-06-22 14:24:30
[2026-06-22 14:24:30,971.971 INFO    ] 2026-06-22 14:24:30
[2026-06-22 14:24:31,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:24:31,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:24:31,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:24:31,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:24:31,492.492 INFO    ] time= 22/06/2026 14:24:31
[2026-06-22 14:24:31,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:24:31,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:24:31,672.672 INFO    ] No existing commands found in stream
[2026-06-22 14:24:36,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:24:36,705.705 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-22 14:24:38,651.651 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:24:38,652.652 INFO    ] Checking for system updates...
[2026-06-22 14:24:38,672.672 INFO    ] 200
[2026-06-22 14:24:38,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:24:38,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:24:38,706.706 INFO    ] No update needed
[2026-06-22 14:24:38,707.707 INFO    ] Checking for camera pi updates...
[2026-06-22 14:24:38,727.727 INFO    ] 200
[2026-06-22 14:24:38,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:24:38,770.770 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:24:38,958.958 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:24:38,961.961 INFO    ] No camera update needed
[2026-06-22 14:24:38,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:24:38,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:24:38,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:24:38,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:24:41,016.016 INFO    ] ================================================
[2026-06-22 14:24:41,032.032 INFO    ] Launching Daemon at Mon Jun 22 14:24:41 IST 2026
[2026-06-22 14:24:41,043.043 INFO    ] ================================================
[2026-06-22 14:24:41,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:24:41
[2026-06-22 14:24:42,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:24:42,465.465 INFO    ] Initializing speech engine...
[2026-06-22 14:24:42,480.480 INFO    ] 2026-06-22 14:24:42
[2026-06-22 14:24:42,747.747 INFO    ] 2026-06-22 14:24:42
[2026-06-22 14:24:42,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:24:42,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:24:42,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:24:43,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:24:43,126.126 INFO    ] time= 22/06/2026 14:24:43
[2026-06-22 14:24:43,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:24:43,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:24:43,310.310 INFO    ] No existing commands found in stream
[2026-06-22 14:24:48,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:24:48,340.340 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-22 14:24:49,313.313 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:24:49,316.316 INFO    ] Checking for system updates...
[2026-06-22 14:24:49,356.356 INFO    ] 200
[2026-06-22 14:24:49,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:24:49,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:24:49,413.413 INFO    ] No update needed
[2026-06-22 14:24:49,416.416 INFO    ] Checking for camera pi updates...
[2026-06-22 14:24:49,450.450 INFO    ] 200
[2026-06-22 14:24:49,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:24:49,494.494 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:24:49,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:24:49,577.577 INFO    ] No camera update needed
[2026-06-22 14:24:49,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:24:49,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:24:49,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:24:49,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:24:51,633.633 INFO    ] ================================================
[2026-06-22 14:24:51,648.648 INFO    ] Launching Daemon at Mon Jun 22 14:24:51 IST 2026
[2026-06-22 14:24:51,660.660 INFO    ] ================================================
[2026-06-22 14:24:52,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:24:52
[2026-06-22 14:24:52,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:24:53,121.121 INFO    ] Initializing speech engine...
[2026-06-22 14:24:53,129.129 INFO    ] 2026-06-22 14:24:53
[2026-06-22 14:24:53,392.392 INFO    ] 2026-06-22 14:24:53
[2026-06-22 14:24:53,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:24:53,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:24:53,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:24:53,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:24:53,750.750 INFO    ] time= 22/06/2026 14:24:53
[2026-06-22 14:24:53,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:24:53,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:24:53,948.948 INFO    ] No existing commands found in stream
[2026-06-22 14:24:58,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:24:58,962.962 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-22 14:25:02,838.838 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:25:02,841.841 INFO    ] Checking for system updates...
[2026-06-22 14:25:02,886.886 INFO    ] 200
[2026-06-22 14:25:02,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:25:02,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:25:02,963.963 INFO    ] No update needed
[2026-06-22 14:25:02,967.967 INFO    ] Checking for camera pi updates...
[2026-06-22 14:25:03,009.009 INFO    ] 200
[2026-06-22 14:25:03,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:25:03,069.069 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:25:03,154.154 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:25:03,157.157 INFO    ] No camera update needed
[2026-06-22 14:25:03,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:25:03,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:25:03,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:25:03,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:25:05,222.222 INFO    ] ================================================
[2026-06-22 14:25:05,238.238 INFO    ] Launching Daemon at Mon Jun 22 14:25:05 IST 2026
[2026-06-22 14:25:05,249.249 INFO    ] ================================================
[2026-06-22 14:25:05,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:25:05
[2026-06-22 14:25:06,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:25:06,710.710 INFO    ] Initializing speech engine...
[2026-06-22 14:25:06,730.730 INFO    ] 2026-06-22 14:25:06
[2026-06-22 14:25:06,989.989 INFO    ] 2026-06-22 14:25:06
[2026-06-22 14:25:07,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:25:07,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:25:07,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:25:07,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:25:07,523.523 INFO    ] time= 22/06/2026 14:25:07
[2026-06-22 14:25:07,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:25:07,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:25:07,713.713 INFO    ] No existing commands found in stream
[2026-06-22 14:25:12,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:25:12,747.747 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-22 14:25:15,022.022 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:25:15,023.023 INFO    ] Checking for system updates...
[2026-06-22 14:25:15,044.044 INFO    ] 200
[2026-06-22 14:25:15,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:25:15,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:25:15,107.107 INFO    ] No update needed
[2026-06-22 14:25:15,110.110 INFO    ] Checking for camera pi updates...
[2026-06-22 14:25:15,147.147 INFO    ] 200
[2026-06-22 14:25:15,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:25:15,196.196 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:25:15,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:25:15,280.280 INFO    ] No camera update needed
[2026-06-22 14:25:15,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:25:15,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:25:15,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:25:15,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:25:17,338.338 INFO    ] ================================================
[2026-06-22 14:25:17,353.353 INFO    ] Launching Daemon at Mon Jun 22 14:25:17 IST 2026
[2026-06-22 14:25:17,364.364 INFO    ] ================================================
[2026-06-22 14:25:17,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:25:17
[2026-06-22 14:25:18,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:25:18,797.797 INFO    ] Initializing speech engine...
[2026-06-22 14:25:18,807.807 INFO    ] 2026-06-22 14:25:18
[2026-06-22 14:25:19,062.062 INFO    ] 2026-06-22 14:25:19
[2026-06-22 14:25:19,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:25:19,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:25:19,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:25:19,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:25:19,561.561 INFO    ] time= 22/06/2026 14:25:19
[2026-06-22 14:25:19,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:25:19,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:25:19,753.753 INFO    ] No existing commands found in stream
[2026-06-22 14:25:24,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:25:24,775.775 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-22 14:25:26,127.127 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:25:26,130.130 INFO    ] Checking for system updates...
[2026-06-22 14:25:26,166.166 INFO    ] 200
[2026-06-22 14:25:26,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:25:26,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:25:26,229.229 INFO    ] No update needed
[2026-06-22 14:25:26,231.231 INFO    ] Checking for camera pi updates...
[2026-06-22 14:25:26,268.268 INFO    ] 200
[2026-06-22 14:25:26,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:25:26,311.311 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:25:26,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:25:26,392.392 INFO    ] No camera update needed
[2026-06-22 14:25:26,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:25:26,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:25:26,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:25:26,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:25:28,450.450 INFO    ] ================================================
[2026-06-22 14:25:28,465.465 INFO    ] Launching Daemon at Mon Jun 22 14:25:28 IST 2026
[2026-06-22 14:25:28,477.477 INFO    ] ================================================
[2026-06-22 14:25:29,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:25:29
[2026-06-22 14:25:29,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:25:29,810.810 INFO    ] Initializing speech engine...
[2026-06-22 14:25:29,819.819 INFO    ] 2026-06-22 14:25:29
[2026-06-22 14:25:30,070.070 INFO    ] 2026-06-22 14:25:30
[2026-06-22 14:25:30,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:25:30,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:25:30,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:25:30,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:25:30,551.551 INFO    ] time= 22/06/2026 14:25:30
[2026-06-22 14:25:30,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:25:30,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:25:30,777.777 INFO    ] No existing commands found in stream
[2026-06-22 14:25:35,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:25:35,800.800 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-22 14:25:37,877.877 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:25:37,880.880 INFO    ] Checking for system updates...
[2026-06-22 14:25:37,919.919 INFO    ] 200
[2026-06-22 14:25:37,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:25:37,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:25:37,976.976 INFO    ] No update needed
[2026-06-22 14:25:37,979.979 INFO    ] Checking for camera pi updates...
[2026-06-22 14:25:38,012.012 INFO    ] 200
[2026-06-22 14:25:38,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:25:38,055.055 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:25:38,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:25:38,148.148 INFO    ] No camera update needed
[2026-06-22 14:25:38,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:25:38,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:25:38,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:25:38,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:25:40,205.205 INFO    ] ================================================
[2026-06-22 14:25:40,221.221 INFO    ] Launching Daemon at Mon Jun 22 14:25:40 IST 2026
[2026-06-22 14:25:40,232.232 INFO    ] ================================================
[2026-06-22 14:25:40,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:25:40
[2026-06-22 14:25:41,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:25:41,693.693 INFO    ] Initializing speech engine...
[2026-06-22 14:25:41,700.700 INFO    ] 2026-06-22 14:25:41
[2026-06-22 14:25:41,959.959 INFO    ] 2026-06-22 14:25:41
[2026-06-22 14:25:42,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:25:42,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:25:42,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:25:42,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:25:42,511.511 INFO    ] time= 22/06/2026 14:25:42
[2026-06-22 14:25:42,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:25:42,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:25:42,647.647 INFO    ] No existing commands found in stream
[2026-06-22 14:25:47,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:25:47,675.675 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-22 14:25:48,336.336 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:25:48,337.337 INFO    ] Checking for system updates...
[2026-06-22 14:25:48,358.358 INFO    ] 200
[2026-06-22 14:25:48,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:25:48,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:25:48,392.392 INFO    ] No update needed
[2026-06-22 14:25:48,393.393 INFO    ] Checking for camera pi updates...
[2026-06-22 14:25:48,416.416 INFO    ] 200
[2026-06-22 14:25:48,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:25:48,445.445 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:25:48,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:25:48,536.536 INFO    ] No camera update needed
[2026-06-22 14:25:48,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:25:48,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:25:48,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:25:48,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:25:50,596.596 INFO    ] ================================================
[2026-06-22 14:25:50,612.612 INFO    ] Launching Daemon at Mon Jun 22 14:25:50 IST 2026
[2026-06-22 14:25:50,622.622 INFO    ] ================================================
[2026-06-22 14:25:51,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:25:51
[2026-06-22 14:25:51,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:25:52,026.026 INFO    ] Initializing speech engine...
[2026-06-22 14:25:52,049.049 INFO    ] 2026-06-22 14:25:52
[2026-06-22 14:25:52,308.308 INFO    ] 2026-06-22 14:25:52
[2026-06-22 14:25:52,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:25:52,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:25:52,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:25:52,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:25:52,797.797 INFO    ] time= 22/06/2026 14:25:52
[2026-06-22 14:25:52,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:25:52,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:25:53,009.009 INFO    ] No existing commands found in stream
[2026-06-22 14:25:58,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:25:58,037.037 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-22 14:25:59,203.203 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:25:59,206.206 INFO    ] Checking for system updates...
[2026-06-22 14:25:59,243.243 INFO    ] 200
[2026-06-22 14:25:59,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:25:59,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:25:59,301.301 INFO    ] No update needed
[2026-06-22 14:25:59,303.303 INFO    ] Checking for camera pi updates...
[2026-06-22 14:25:59,340.340 INFO    ] 200
[2026-06-22 14:25:59,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:25:59,388.388 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:25:59,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:25:59,476.476 INFO    ] No camera update needed
[2026-06-22 14:25:59,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:25:59,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:25:59,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:25:59,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:26:01,533.533 INFO    ] ================================================
[2026-06-22 14:26:01,549.549 INFO    ] Launching Daemon at Mon Jun 22 14:26:01 IST 2026
[2026-06-22 14:26:01,560.560 INFO    ] ================================================
[2026-06-22 14:26:02,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:26:02
[2026-06-22 14:26:02,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:26:03,320.320 INFO    ] Initializing speech engine...
[2026-06-22 14:26:03,331.331 INFO    ] 2026-06-22 14:26:03
[2026-06-22 14:26:03,647.647 INFO    ] 2026-06-22 14:26:03
[2026-06-22 14:26:03,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:26:03,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:26:03,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:26:04,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:26:04,127.127 INFO    ] time= 22/06/2026 14:26:04
[2026-06-22 14:26:04,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:26:04,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:26:04,365.365 INFO    ] No existing commands found in stream
[2026-06-22 14:26:09,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:26:09,393.393 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-22 14:26:12,802.802 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:26:12,805.805 INFO    ] Checking for system updates...
[2026-06-22 14:26:12,840.840 INFO    ] 200
[2026-06-22 14:26:12,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:26:12,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:26:12,898.898 INFO    ] No update needed
[2026-06-22 14:26:12,901.901 INFO    ] Checking for camera pi updates...
[2026-06-22 14:26:12,935.935 INFO    ] 200
[2026-06-22 14:26:12,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:26:12,979.979 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:26:13,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:26:13,053.053 INFO    ] No camera update needed
[2026-06-22 14:26:13,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:26:13,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:26:13,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:26:13,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:26:15,109.109 INFO    ] ================================================
[2026-06-22 14:26:15,125.125 INFO    ] Launching Daemon at Mon Jun 22 14:26:15 IST 2026
[2026-06-22 14:26:15,136.136 INFO    ] ================================================
[2026-06-22 14:26:15,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:26:15
[2026-06-22 14:26:16,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:26:16,625.625 INFO    ] Initializing speech engine...
[2026-06-22 14:26:16,639.639 INFO    ] 2026-06-22 14:26:16
[2026-06-22 14:26:16,951.951 INFO    ] 2026-06-22 14:26:16
[2026-06-22 14:26:17,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:26:17,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:26:17,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:26:17,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:26:17,476.476 INFO    ] time= 22/06/2026 14:26:17
[2026-06-22 14:26:17,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:26:17,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:26:17,650.650 INFO    ] No existing commands found in stream
[2026-06-22 14:26:22,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:26:22,684.684 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-22 14:26:26,946.946 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:26:26,949.949 INFO    ] Checking for system updates...
[2026-06-22 14:26:26,987.987 INFO    ] 200
[2026-06-22 14:26:26,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:26:27,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:26:27,045.045 INFO    ] No update needed
[2026-06-22 14:26:27,048.048 INFO    ] Checking for camera pi updates...
[2026-06-22 14:26:27,082.082 INFO    ] 200
[2026-06-22 14:26:27,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:26:27,126.126 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:26:27,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:26:27,195.195 INFO    ] No camera update needed
[2026-06-22 14:26:27,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:26:27,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:26:27,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:26:27,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:26:29,250.250 INFO    ] ================================================
[2026-06-22 14:26:29,266.266 INFO    ] Launching Daemon at Mon Jun 22 14:26:29 IST 2026
[2026-06-22 14:26:29,276.276 INFO    ] ================================================
[2026-06-22 14:26:29,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:26:29
[2026-06-22 14:26:30,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:26:30,844.844 INFO    ] Initializing speech engine...
[2026-06-22 14:26:30,858.858 INFO    ] 2026-06-22 14:26:30
[2026-06-22 14:26:31,131.131 INFO    ] 2026-06-22 14:26:31
[2026-06-22 14:26:31,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:26:31,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:26:31,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:26:31,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:26:31,866.866 INFO    ] time= 22/06/2026 14:26:31
[2026-06-22 14:26:31,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:26:31,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:26:32,118.118 INFO    ] No existing commands found in stream
[2026-06-22 14:26:37,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:26:37,154.154 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-22 14:26:37,914.914 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:26:37,917.917 INFO    ] Checking for system updates...
[2026-06-22 14:26:37,955.955 INFO    ] 200
[2026-06-22 14:26:37,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:26:38,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:26:38,023.023 INFO    ] No update needed
[2026-06-22 14:26:38,026.026 INFO    ] Checking for camera pi updates...
[2026-06-22 14:26:38,066.066 INFO    ] 200
[2026-06-22 14:26:38,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:26:38,111.111 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:26:38,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:26:38,201.201 INFO    ] No camera update needed
[2026-06-22 14:26:38,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:26:38,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:26:38,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:26:38,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:26:40,261.261 INFO    ] ================================================
[2026-06-22 14:26:40,278.278 INFO    ] Launching Daemon at Mon Jun 22 14:26:40 IST 2026
[2026-06-22 14:26:40,290.290 INFO    ] ================================================
[2026-06-22 14:26:40,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:26:40
[2026-06-22 14:26:41,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:26:41,647.647 INFO    ] Initializing speech engine...
[2026-06-22 14:26:41,656.656 INFO    ] 2026-06-22 14:26:41
[2026-06-22 14:26:41,907.907 INFO    ] 2026-06-22 14:26:41
[2026-06-22 14:26:41,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:26:42,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:26:42,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:26:42,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:26:42,384.384 INFO    ] time= 22/06/2026 14:26:42
[2026-06-22 14:26:42,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:26:42,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:26:42,598.598 INFO    ] No existing commands found in stream
[2026-06-22 14:26:47,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:26:47,628.628 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-22 14:26:51,572.572 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:26:51,575.575 INFO    ] Checking for system updates...
[2026-06-22 14:26:51,616.616 INFO    ] 200
[2026-06-22 14:26:51,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:26:51,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:26:51,673.673 INFO    ] No update needed
[2026-06-22 14:26:51,676.676 INFO    ] Checking for camera pi updates...
[2026-06-22 14:26:51,710.710 INFO    ] 200
[2026-06-22 14:26:51,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:26:51,759.759 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:26:51,940.940 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:26:51,942.942 INFO    ] No camera update needed
[2026-06-22 14:26:51,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:26:51,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:26:51,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:26:51,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:26:54,002.002 INFO    ] ================================================
[2026-06-22 14:26:54,017.017 INFO    ] Launching Daemon at Mon Jun 22 14:26:54 IST 2026
[2026-06-22 14:26:54,028.028 INFO    ] ================================================
[2026-06-22 14:26:54,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:26:54
[2026-06-22 14:26:55,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:26:55,695.695 INFO    ] Initializing speech engine...
[2026-06-22 14:26:55,702.702 INFO    ] 2026-06-22 14:26:55
[2026-06-22 14:26:55,983.983 INFO    ] 2026-06-22 14:26:55
[2026-06-22 14:26:56,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:26:56,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:26:56,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:26:56,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:26:56,554.554 INFO    ] time= 22/06/2026 14:26:56
[2026-06-22 14:26:56,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:26:56,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:26:56,712.712 INFO    ] No existing commands found in stream
[2026-06-22 14:27:01,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:27:01,737.737 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-22 14:27:02,905.905 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:27:02,909.909 INFO    ] Checking for system updates...
[2026-06-22 14:27:02,957.957 INFO    ] 200
[2026-06-22 14:27:02,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:27:03,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:27:03,067.067 INFO    ] No update needed
[2026-06-22 14:27:03,071.071 INFO    ] Checking for camera pi updates...
[2026-06-22 14:27:03,143.143 INFO    ] 200
[2026-06-22 14:27:03,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:27:03,202.202 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:27:03,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:27:03,265.265 INFO    ] No camera update needed
[2026-06-22 14:27:03,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:27:03,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:27:03,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:27:03,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:27:05,333.333 INFO    ] ================================================
[2026-06-22 14:27:05,348.348 INFO    ] Launching Daemon at Mon Jun 22 14:27:05 IST 2026
[2026-06-22 14:27:05,359.359 INFO    ] ================================================
[2026-06-22 14:27:05,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:27:05
[2026-06-22 14:27:06,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:27:06,736.736 INFO    ] Initializing speech engine...
[2026-06-22 14:27:06,743.743 INFO    ] 2026-06-22 14:27:06
[2026-06-22 14:27:07,002.002 INFO    ] 2026-06-22 14:27:06
[2026-06-22 14:27:07,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:27:07,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:27:07,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:27:07,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:27:07,549.549 INFO    ] time= 22/06/2026 14:27:07
[2026-06-22 14:27:07,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:27:07,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:27:07,704.704 INFO    ] No existing commands found in stream
[2026-06-22 14:27:12,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:27:12,720.720 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-22 14:27:13,737.737 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:27:13,740.740 INFO    ] Checking for system updates...
[2026-06-22 14:27:13,776.776 INFO    ] 200
[2026-06-22 14:27:13,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:27:13,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:27:13,836.836 INFO    ] No update needed
[2026-06-22 14:27:13,839.839 INFO    ] Checking for camera pi updates...
[2026-06-22 14:27:13,872.872 INFO    ] 200
[2026-06-22 14:27:13,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:27:13,916.916 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:27:14,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:27:14,007.007 INFO    ] No camera update needed
[2026-06-22 14:27:14,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:27:14,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:27:14,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:27:14,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:27:16,062.062 INFO    ] ================================================
[2026-06-22 14:27:16,077.077 INFO    ] Launching Daemon at Mon Jun 22 14:27:16 IST 2026
[2026-06-22 14:27:16,088.088 INFO    ] ================================================
[2026-06-22 14:27:16,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:27:16
[2026-06-22 14:27:17,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:27:17,420.420 INFO    ] Initializing speech engine...
[2026-06-22 14:27:17,428.428 INFO    ] 2026-06-22 14:27:17
[2026-06-22 14:27:17,723.723 INFO    ] 2026-06-22 14:27:17
[2026-06-22 14:27:17,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:27:17,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:27:17,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:27:18,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:27:18,149.149 INFO    ] time= 22/06/2026 14:27:18
[2026-06-22 14:27:18,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:27:18,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:27:18,331.331 INFO    ] No existing commands found in stream
[2026-06-22 14:27:23,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:27:23,359.359 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-22 14:27:27,216.216 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:27:27,219.219 INFO    ] Checking for system updates...
[2026-06-22 14:27:27,255.255 INFO    ] 200
[2026-06-22 14:27:27,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:27:27,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:27:27,319.319 INFO    ] No update needed
[2026-06-22 14:27:27,321.321 INFO    ] Checking for camera pi updates...
[2026-06-22 14:27:27,359.359 INFO    ] 200
[2026-06-22 14:27:27,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:27:27,402.402 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:27:27,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:27:27,486.486 INFO    ] No camera update needed
[2026-06-22 14:27:27,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:27:27,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:27:27,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:27:27,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:27:29,540.540 INFO    ] ================================================
[2026-06-22 14:27:29,556.556 INFO    ] Launching Daemon at Mon Jun 22 14:27:29 IST 2026
[2026-06-22 14:27:29,566.566 INFO    ] ================================================
[2026-06-22 14:27:30,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:27:30
[2026-06-22 14:27:30,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:27:30,964.964 INFO    ] Initializing speech engine...
[2026-06-22 14:27:30,973.973 INFO    ] 2026-06-22 14:27:30
[2026-06-22 14:27:31,221.221 INFO    ] 2026-06-22 14:27:31
[2026-06-22 14:27:31,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:27:31,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:27:31,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:27:31,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:27:31,688.688 INFO    ] time= 22/06/2026 14:27:31
[2026-06-22 14:27:31,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:27:31,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:27:31,910.910 INFO    ] No existing commands found in stream
[2026-06-22 14:27:36,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:27:36,949.949 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-22 14:27:38,668.668 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:27:38,670.670 INFO    ] Checking for system updates...
[2026-06-22 14:27:38,706.706 INFO    ] 200
[2026-06-22 14:27:38,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:27:38,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:27:38,766.766 INFO    ] No update needed
[2026-06-22 14:27:38,768.768 INFO    ] Checking for camera pi updates...
[2026-06-22 14:27:38,807.807 INFO    ] 200
[2026-06-22 14:27:38,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:27:38,850.850 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:27:38,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:27:38,931.931 INFO    ] No camera update needed
[2026-06-22 14:27:38,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:27:38,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:27:38,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:27:38,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:27:40,986.986 INFO    ] ================================================
[2026-06-22 14:27:41,002.002 INFO    ] Launching Daemon at Mon Jun 22 14:27:40 IST 2026
[2026-06-22 14:27:41,013.013 INFO    ] ================================================
[2026-06-22 14:27:41,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:27:41
[2026-06-22 14:27:42,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:27:42,442.442 INFO    ] Initializing speech engine...
[2026-06-22 14:27:42,451.451 INFO    ] 2026-06-22 14:27:42
[2026-06-22 14:27:42,697.697 INFO    ] 2026-06-22 14:27:42
[2026-06-22 14:27:42,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:27:42,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:27:42,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:27:43,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:27:43,067.067 INFO    ] time= 22/06/2026 14:27:43
[2026-06-22 14:27:43,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:27:43,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:27:43,248.248 INFO    ] No existing commands found in stream
[2026-06-22 14:27:48,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:27:48,272.272 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-22 14:27:52,130.130 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:27:52,133.133 INFO    ] Checking for system updates...
[2026-06-22 14:27:52,170.170 INFO    ] 200
[2026-06-22 14:27:52,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:27:52,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:27:52,231.231 INFO    ] No update needed
[2026-06-22 14:27:52,234.234 INFO    ] Checking for camera pi updates...
[2026-06-22 14:27:52,267.267 INFO    ] 200
[2026-06-22 14:27:52,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:27:52,318.318 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:27:52,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:27:52,407.407 INFO    ] No camera update needed
[2026-06-22 14:27:52,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:27:52,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:27:52,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:27:52,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:27:54,463.463 INFO    ] ================================================
[2026-06-22 14:27:54,478.478 INFO    ] Launching Daemon at Mon Jun 22 14:27:54 IST 2026
[2026-06-22 14:27:54,489.489 INFO    ] ================================================
[2026-06-22 14:27:55,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:27:55
[2026-06-22 14:27:55,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:27:55,812.812 INFO    ] Initializing speech engine...
[2026-06-22 14:27:55,826.826 INFO    ] 2026-06-22 14:27:55
[2026-06-22 14:27:56,112.112 INFO    ] 2026-06-22 14:27:56
[2026-06-22 14:27:56,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:27:56,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:27:56,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:27:56,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:27:56,535.535 INFO    ] time= 22/06/2026 14:27:56
[2026-06-22 14:27:56,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:27:56,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:27:56,711.711 INFO    ] No existing commands found in stream
[2026-06-22 14:28:01,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:28:01,742.742 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-22 14:28:05,858.858 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:28:05,861.861 INFO    ] Checking for system updates...
[2026-06-22 14:28:05,900.900 INFO    ] 200
[2026-06-22 14:28:05,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:28:05,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:28:05,964.964 INFO    ] No update needed
[2026-06-22 14:28:05,966.966 INFO    ] Checking for camera pi updates...
[2026-06-22 14:28:06,000.000 INFO    ] 200
[2026-06-22 14:28:06,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:28:06,044.044 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:28:06,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:28:06,134.134 INFO    ] No camera update needed
[2026-06-22 14:28:06,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:28:06,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:28:06,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:28:06,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:28:08,190.190 INFO    ] ================================================
[2026-06-22 14:28:08,206.206 INFO    ] Launching Daemon at Mon Jun 22 14:28:08 IST 2026
[2026-06-22 14:28:08,217.217 INFO    ] ================================================
[2026-06-22 14:28:08,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:28:08
[2026-06-22 14:28:09,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:28:09,735.735 INFO    ] Initializing speech engine...
[2026-06-22 14:28:09,747.747 INFO    ] 2026-06-22 14:28:09
[2026-06-22 14:28:10,031.031 INFO    ] 2026-06-22 14:28:10
[2026-06-22 14:28:10,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:28:10,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:28:10,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:28:10,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:28:10,549.549 INFO    ] time= 22/06/2026 14:28:10
[2026-06-22 14:28:10,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:28:10,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:28:10,743.743 INFO    ] No existing commands found in stream
[2026-06-22 14:28:15,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:28:15,780.780 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-22 14:28:20,002.002 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:28:20,004.004 INFO    ] Checking for system updates...
[2026-06-22 14:28:20,027.027 INFO    ] 200
[2026-06-22 14:28:20,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:28:20,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:28:20,064.064 INFO    ] No update needed
[2026-06-22 14:28:20,066.066 INFO    ] Checking for camera pi updates...
[2026-06-22 14:28:20,091.091 INFO    ] 200
[2026-06-22 14:28:20,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:28:20,137.137 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:28:20,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:28:20,274.274 INFO    ] No camera update needed
[2026-06-22 14:28:20,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:28:20,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:28:20,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:28:20,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:28:22,334.334 INFO    ] ================================================
[2026-06-22 14:28:22,349.349 INFO    ] Launching Daemon at Mon Jun 22 14:28:22 IST 2026
[2026-06-22 14:28:22,363.363 INFO    ] ================================================
[2026-06-22 14:28:22,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:28:22
[2026-06-22 14:28:23,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:28:23,851.851 INFO    ] Initializing speech engine...
[2026-06-22 14:28:23,861.861 INFO    ] 2026-06-22 14:28:23
[2026-06-22 14:28:24,130.130 INFO    ] 2026-06-22 14:28:24
[2026-06-22 14:28:24,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:28:24,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:28:24,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:28:24,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:28:24,601.601 INFO    ] time= 22/06/2026 14:28:24
[2026-06-22 14:28:24,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:28:24,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:28:24,825.825 INFO    ] No existing commands found in stream
[2026-06-22 14:28:29,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:28:29,854.854 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-22 14:28:33,381.381 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:28:33,384.384 INFO    ] Checking for system updates...
[2026-06-22 14:28:33,440.440 INFO    ] 200
[2026-06-22 14:28:33,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:28:33,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:28:33,500.500 INFO    ] No update needed
[2026-06-22 14:28:33,503.503 INFO    ] Checking for camera pi updates...
[2026-06-22 14:28:33,538.538 INFO    ] 200
[2026-06-22 14:28:33,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:28:33,585.585 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:28:33,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:28:33,668.668 INFO    ] No camera update needed
[2026-06-22 14:28:33,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:28:33,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:28:33,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:28:33,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:28:35,722.722 INFO    ] ================================================
[2026-06-22 14:28:35,737.737 INFO    ] Launching Daemon at Mon Jun 22 14:28:35 IST 2026
[2026-06-22 14:28:35,748.748 INFO    ] ================================================
[2026-06-22 14:28:36,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:28:36
[2026-06-22 14:28:36,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:28:37,219.219 INFO    ] Initializing speech engine...
[2026-06-22 14:28:37,227.227 INFO    ] 2026-06-22 14:28:37
[2026-06-22 14:28:37,497.497 INFO    ] 2026-06-22 14:28:37
[2026-06-22 14:28:37,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:28:37,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:28:37,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:28:37,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:28:37,979.979 INFO    ] time= 22/06/2026 14:28:37
[2026-06-22 14:28:38,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:28:38,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:28:38,217.217 INFO    ] No existing commands found in stream
[2026-06-22 14:28:43,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:28:43,239.239 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-22 14:28:45,258.258 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:28:45,259.259 INFO    ] Checking for system updates...
[2026-06-22 14:28:45,282.282 INFO    ] 200
[2026-06-22 14:28:45,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:28:45,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:28:45,324.324 INFO    ] No update needed
[2026-06-22 14:28:45,327.327 INFO    ] Checking for camera pi updates...
[2026-06-22 14:28:45,365.365 INFO    ] 200
[2026-06-22 14:28:45,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:28:45,408.408 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:28:45,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:28:45,527.527 INFO    ] No camera update needed
[2026-06-22 14:28:45,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:28:45,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:28:45,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:28:45,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:28:47,581.581 INFO    ] ================================================
[2026-06-22 14:28:47,596.596 INFO    ] Launching Daemon at Mon Jun 22 14:28:47 IST 2026
[2026-06-22 14:28:47,607.607 INFO    ] ================================================
[2026-06-22 14:28:48,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:28:48
[2026-06-22 14:28:48,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:28:49,099.099 INFO    ] Initializing speech engine...
[2026-06-22 14:28:49,106.106 INFO    ] 2026-06-22 14:28:49
[2026-06-22 14:28:49,395.395 INFO    ] 2026-06-22 14:28:49
[2026-06-22 14:28:49,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:28:49,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:28:49,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:28:49,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:28:49,927.927 INFO    ] time= 22/06/2026 14:28:49
[2026-06-22 14:28:49,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:28:49,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:28:50,078.078 INFO    ] No existing commands found in stream
[2026-06-22 14:28:55,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:28:55,097.097 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-22 14:28:57,854.854 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:28:57,857.857 INFO    ] Checking for system updates...
[2026-06-22 14:28:57,894.894 INFO    ] 200
[2026-06-22 14:28:57,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:28:57,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:28:57,958.958 INFO    ] No update needed
[2026-06-22 14:28:57,960.960 INFO    ] Checking for camera pi updates...
[2026-06-22 14:28:57,998.998 INFO    ] 200
[2026-06-22 14:28:58,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:28:58,047.047 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:28:58,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:28:58,238.238 INFO    ] No camera update needed
[2026-06-22 14:28:58,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:28:58,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:28:58,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:28:58,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:29:00,295.295 INFO    ] ================================================
[2026-06-22 14:29:00,310.310 INFO    ] Launching Daemon at Mon Jun 22 14:29:00 IST 2026
[2026-06-22 14:29:00,321.321 INFO    ] ================================================
[2026-06-22 14:29:00,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:29:00
[2026-06-22 14:29:01,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:29:02,076.076 INFO    ] Initializing speech engine...
[2026-06-22 14:29:02,079.079 INFO    ] 2026-06-22 14:29:02
[2026-06-22 14:29:02,451.451 INFO    ] 2026-06-22 14:29:02
[2026-06-22 14:29:02,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:29:02,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:29:02,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:29:02,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:29:02,907.907 INFO    ] time= 22/06/2026 14:29:02
[2026-06-22 14:29:02,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:29:02,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:29:03,062.062 INFO    ] No existing commands found in stream
[2026-06-22 14:29:08,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:29:08,086.086 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-22 14:29:09,993.993 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:29:09,994.994 INFO    ] Checking for system updates...
[2026-06-22 14:29:10,015.015 INFO    ] 200
[2026-06-22 14:29:10,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:29:10,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:29:10,060.060 INFO    ] No update needed
[2026-06-22 14:29:10,063.063 INFO    ] Checking for camera pi updates...
[2026-06-22 14:29:10,101.101 INFO    ] 200
[2026-06-22 14:29:10,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:29:10,143.143 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:29:10,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:29:10,225.225 INFO    ] No camera update needed
[2026-06-22 14:29:10,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:29:10,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:29:10,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:29:10,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:29:12,284.284 INFO    ] ================================================
[2026-06-22 14:29:12,299.299 INFO    ] Launching Daemon at Mon Jun 22 14:29:12 IST 2026
[2026-06-22 14:29:12,310.310 INFO    ] ================================================
[2026-06-22 14:29:12,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:29:12
[2026-06-22 14:29:13,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:29:13,664.664 INFO    ] Initializing speech engine...
[2026-06-22 14:29:13,673.673 INFO    ] 2026-06-22 14:29:13
[2026-06-22 14:29:13,968.968 INFO    ] 2026-06-22 14:29:13
[2026-06-22 14:29:14,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:29:14,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:29:14,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:29:14,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:29:14,391.391 INFO    ] time= 22/06/2026 14:29:14
[2026-06-22 14:29:14,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:29:14,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:29:14,590.590 INFO    ] No existing commands found in stream
[2026-06-22 14:29:19,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:29:19,622.622 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-22 14:29:23,146.146 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:29:23,148.148 INFO    ] Checking for system updates...
[2026-06-22 14:29:23,169.169 INFO    ] 200
[2026-06-22 14:29:23,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:29:23,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:29:23,204.204 INFO    ] No update needed
[2026-06-22 14:29:23,206.206 INFO    ] Checking for camera pi updates...
[2026-06-22 14:29:23,226.226 INFO    ] 200
[2026-06-22 14:29:23,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:29:23,258.258 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:29:23,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:29:23,342.342 INFO    ] No camera update needed
[2026-06-22 14:29:23,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:29:23,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:29:23,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:29:23,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:29:25,398.398 INFO    ] ================================================
[2026-06-22 14:29:25,413.413 INFO    ] Launching Daemon at Mon Jun 22 14:29:25 IST 2026
[2026-06-22 14:29:25,424.424 INFO    ] ================================================
[2026-06-22 14:29:26,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:29:26
[2026-06-22 14:29:26,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:29:26,907.907 INFO    ] Initializing speech engine...
[2026-06-22 14:29:26,921.921 INFO    ] 2026-06-22 14:29:26
[2026-06-22 14:29:27,201.201 INFO    ] 2026-06-22 14:29:27
[2026-06-22 14:29:27,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:29:27,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:29:27,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:29:27,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:29:27,755.755 INFO    ] time= 22/06/2026 14:29:27
[2026-06-22 14:29:27,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:29:27,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:29:27,915.915 INFO    ] No existing commands found in stream
[2026-06-22 14:29:32,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:29:32,940.940 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-22 14:29:36,487.487 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:29:36,489.489 INFO    ] Checking for system updates...
[2026-06-22 14:29:36,511.511 INFO    ] 200
[2026-06-22 14:29:36,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:29:36,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:29:36,550.550 INFO    ] No update needed
[2026-06-22 14:29:36,551.551 INFO    ] Checking for camera pi updates...
[2026-06-22 14:29:36,574.574 INFO    ] 200
[2026-06-22 14:29:36,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:29:36,623.623 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:29:36,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:29:36,702.702 INFO    ] No camera update needed
[2026-06-22 14:29:36,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:29:36,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:29:36,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:29:36,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:29:38,761.761 INFO    ] ================================================
[2026-06-22 14:29:38,776.776 INFO    ] Launching Daemon at Mon Jun 22 14:29:38 IST 2026
[2026-06-22 14:29:38,787.787 INFO    ] ================================================
[2026-06-22 14:29:39,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:29:39
[2026-06-22 14:29:39,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:29:40,298.298 INFO    ] Initializing speech engine...
[2026-06-22 14:29:40,307.307 INFO    ] 2026-06-22 14:29:40
[2026-06-22 14:29:40,575.575 INFO    ] 2026-06-22 14:29:40
[2026-06-22 14:29:40,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:29:40,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:29:40,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:29:41,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:29:41,079.079 INFO    ] time= 22/06/2026 14:29:41
[2026-06-22 14:29:41,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:29:41,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:29:41,336.336 INFO    ] No existing commands found in stream
[2026-06-22 14:29:46,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:29:46,370.370 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-22 14:29:48,983.983 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:29:48,986.986 INFO    ] Checking for system updates...
[2026-06-22 14:29:49,027.027 INFO    ] 200
[2026-06-22 14:29:49,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:29:49,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:29:49,090.090 INFO    ] No update needed
[2026-06-22 14:29:49,093.093 INFO    ] Checking for camera pi updates...
[2026-06-22 14:29:49,127.127 INFO    ] 200
[2026-06-22 14:29:49,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:29:49,175.175 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:29:49,274.274 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:29:49,277.277 INFO    ] No camera update needed
[2026-06-22 14:29:49,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:29:49,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:29:49,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:29:49,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:29:51,335.335 INFO    ] ================================================
[2026-06-22 14:29:51,350.350 INFO    ] Launching Daemon at Mon Jun 22 14:29:51 IST 2026
[2026-06-22 14:29:51,361.361 INFO    ] ================================================
[2026-06-22 14:29:51,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:29:51
[2026-06-22 14:29:52,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:29:52,849.849 INFO    ] Initializing speech engine...
[2026-06-22 14:29:52,858.858 INFO    ] 2026-06-22 14:29:52
[2026-06-22 14:29:53,145.145 INFO    ] 2026-06-22 14:29:53
[2026-06-22 14:29:53,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:29:53,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:29:53,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:29:53,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:29:53,698.698 INFO    ] time= 22/06/2026 14:29:53
[2026-06-22 14:29:53,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:29:53,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:29:53,859.859 INFO    ] No existing commands found in stream
[2026-06-22 14:29:58,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:29:58,892.892 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-22 14:30:02,553.553 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:30:02,578.578 INFO    ] Checking for system updates...
[2026-06-22 14:30:02,694.694 INFO    ] 200
[2026-06-22 14:30:02,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:30:02,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:30:02,850.850 INFO    ] No update needed
[2026-06-22 14:30:02,853.853 INFO    ] Checking for camera pi updates...
[2026-06-22 14:30:02,947.947 INFO    ] 200
[2026-06-22 14:30:02,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:30:03,029.029 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:30:03,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:30:03,105.105 INFO    ] No camera update needed
[2026-06-22 14:30:03,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:30:03,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:30:03,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:30:03,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:30:05,167.167 INFO    ] ================================================
[2026-06-22 14:30:05,183.183 INFO    ] Launching Daemon at Mon Jun 22 14:30:05 IST 2026
[2026-06-22 14:30:05,193.193 INFO    ] ================================================
[2026-06-22 14:30:05,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:30:05
[2026-06-22 14:30:06,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:30:06,638.638 INFO    ] Initializing speech engine...
[2026-06-22 14:30:06,648.648 INFO    ] 2026-06-22 14:30:06
[2026-06-22 14:30:06,904.904 INFO    ] 2026-06-22 14:30:06
[2026-06-22 14:30:06,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:30:07,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:30:07,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:30:07,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:30:07,296.296 INFO    ] time= 22/06/2026 14:30:07
[2026-06-22 14:30:07,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:30:07,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:30:07,494.494 INFO    ] No existing commands found in stream
[2026-06-22 14:30:12,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:30:12,507.507 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-22 14:30:15,484.484 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:30:15,487.487 INFO    ] Checking for system updates...
[2026-06-22 14:30:15,523.523 INFO    ] 200
[2026-06-22 14:30:15,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:30:15,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:30:15,582.582 INFO    ] No update needed
[2026-06-22 14:30:15,584.584 INFO    ] Checking for camera pi updates...
[2026-06-22 14:30:15,621.621 INFO    ] 200
[2026-06-22 14:30:15,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:30:15,664.664 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:30:15,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:30:15,771.771 INFO    ] No camera update needed
[2026-06-22 14:30:15,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:30:15,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:30:15,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:30:15,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:30:17,831.831 INFO    ] ================================================
[2026-06-22 14:30:17,846.846 INFO    ] Launching Daemon at Mon Jun 22 14:30:17 IST 2026
[2026-06-22 14:30:17,857.857 INFO    ] ================================================
[2026-06-22 14:30:18,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:30:18
[2026-06-22 14:30:19,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:30:19,337.337 INFO    ] Initializing speech engine...
[2026-06-22 14:30:19,344.344 INFO    ] 2026-06-22 14:30:19
[2026-06-22 14:30:19,620.620 INFO    ] 2026-06-22 14:30:19
[2026-06-22 14:30:19,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:30:19,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:30:20,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:30:20,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:30:20,238.238 INFO    ] time= 22/06/2026 14:30:20
[2026-06-22 14:30:20,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:30:20,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:30:20,448.448 INFO    ] No existing commands found in stream
[2026-06-22 14:30:25,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:30:25,476.476 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-22 14:30:26,515.515 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:30:26,516.516 INFO    ] Checking for system updates...
[2026-06-22 14:30:26,537.537 INFO    ] 200
[2026-06-22 14:30:26,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:30:26,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:30:26,570.570 INFO    ] No update needed
[2026-06-22 14:30:26,572.572 INFO    ] Checking for camera pi updates...
[2026-06-22 14:30:26,592.592 INFO    ] 200
[2026-06-22 14:30:26,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:30:26,626.626 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:30:26,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:30:26,714.714 INFO    ] No camera update needed
[2026-06-22 14:30:26,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:30:26,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:30:26,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:30:26,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:30:28,772.772 INFO    ] ================================================
[2026-06-22 14:30:28,788.788 INFO    ] Launching Daemon at Mon Jun 22 14:30:28 IST 2026
[2026-06-22 14:30:28,799.799 INFO    ] ================================================
[2026-06-22 14:30:29,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:30:29
[2026-06-22 14:30:29,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:30:30,226.226 INFO    ] Initializing speech engine...
[2026-06-22 14:30:30,239.239 INFO    ] 2026-06-22 14:30:30
[2026-06-22 14:30:30,523.523 INFO    ] 2026-06-22 14:30:30
[2026-06-22 14:30:30,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:30:30,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:30:30,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:30:30,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:30:31,018.018 INFO    ] time= 22/06/2026 14:30:30
[2026-06-22 14:30:31,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:30:31,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:30:31,225.225 INFO    ] No existing commands found in stream
[2026-06-22 14:30:36,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:30:36,255.255 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-22 14:30:37,823.823 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:30:37,824.824 INFO    ] Checking for system updates...
[2026-06-22 14:30:37,845.845 INFO    ] 200
[2026-06-22 14:30:37,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:30:37,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:30:37,883.883 INFO    ] No update needed
[2026-06-22 14:30:37,884.884 INFO    ] Checking for camera pi updates...
[2026-06-22 14:30:37,905.905 INFO    ] 200
[2026-06-22 14:30:37,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:30:37,946.946 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:30:38,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:30:38,048.048 INFO    ] No camera update needed
[2026-06-22 14:30:38,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:30:38,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:30:38,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:30:38,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:30:40,107.107 INFO    ] ================================================
[2026-06-22 14:30:40,123.123 INFO    ] Launching Daemon at Mon Jun 22 14:30:40 IST 2026
[2026-06-22 14:30:40,135.135 INFO    ] ================================================
[2026-06-22 14:30:40,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:30:40
[2026-06-22 14:30:41,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:30:41,611.611 INFO    ] Initializing speech engine...
[2026-06-22 14:30:41,618.618 INFO    ] 2026-06-22 14:30:41
[2026-06-22 14:30:41,905.905 INFO    ] 2026-06-22 14:30:41
[2026-06-22 14:30:41,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:30:42,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:30:42,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:30:42,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:30:42,450.450 INFO    ] time= 22/06/2026 14:30:42
[2026-06-22 14:30:42,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:30:42,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:30:42,603.603 INFO    ] No existing commands found in stream
[2026-06-22 14:30:47,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:30:47,624.624 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-22 14:30:51,584.584 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:30:51,587.587 INFO    ] Checking for system updates...
[2026-06-22 14:30:51,624.624 INFO    ] 200
[2026-06-22 14:30:51,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:30:51,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:30:51,683.683 INFO    ] No update needed
[2026-06-22 14:30:51,686.686 INFO    ] Checking for camera pi updates...
[2026-06-22 14:30:51,721.721 INFO    ] 200
[2026-06-22 14:30:51,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:30:51,769.769 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:30:51,844.844 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:30:51,847.847 INFO    ] No camera update needed
[2026-06-22 14:30:51,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:30:51,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:30:51,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:30:51,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:30:53,903.903 INFO    ] ================================================
[2026-06-22 14:30:53,920.920 INFO    ] Launching Daemon at Mon Jun 22 14:30:53 IST 2026
[2026-06-22 14:30:53,931.931 INFO    ] ================================================
[2026-06-22 14:30:54,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:30:54
[2026-06-22 14:30:55,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:30:55,358.358 INFO    ] Initializing speech engine...
[2026-06-22 14:30:55,365.365 INFO    ] 2026-06-22 14:30:55
[2026-06-22 14:30:55,611.611 INFO    ] 2026-06-22 14:30:55
[2026-06-22 14:30:55,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:30:55,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:30:55,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:30:56,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:30:56,071.071 INFO    ] time= 22/06/2026 14:30:56
[2026-06-22 14:30:56,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:30:56,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:30:56,306.306 INFO    ] No existing commands found in stream
[2026-06-22 14:31:01,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:31:01,341.341 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-22 14:31:04,808.808 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:31:04,811.811 INFO    ] Checking for system updates...
[2026-06-22 14:31:04,847.847 INFO    ] 200
[2026-06-22 14:31:04,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:31:04,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:31:04,913.913 INFO    ] No update needed
[2026-06-22 14:31:04,915.915 INFO    ] Checking for camera pi updates...
[2026-06-22 14:31:04,950.950 INFO    ] 200
[2026-06-22 14:31:04,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:31:05,001.001 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:31:05,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:31:05,085.085 INFO    ] No camera update needed
[2026-06-22 14:31:05,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:31:05,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:31:05,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:31:05,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:31:07,148.148 INFO    ] ================================================
[2026-06-22 14:31:07,164.164 INFO    ] Launching Daemon at Mon Jun 22 14:31:07 IST 2026
[2026-06-22 14:31:07,175.175 INFO    ] ================================================
[2026-06-22 14:31:07,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:31:07
[2026-06-22 14:31:08,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:31:08,629.629 INFO    ] Initializing speech engine...
[2026-06-22 14:31:08,635.635 INFO    ] 2026-06-22 14:31:08
[2026-06-22 14:31:08,935.935 INFO    ] 2026-06-22 14:31:08
[2026-06-22 14:31:08,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:31:09,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:31:09,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:31:09,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:31:09,362.362 INFO    ] time= 22/06/2026 14:31:09
[2026-06-22 14:31:09,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:31:09,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:31:09,540.540 INFO    ] No existing commands found in stream
[2026-06-22 14:31:14,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:31:14,563.563 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-22 14:31:17,350.350 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:31:17,353.353 INFO    ] Checking for system updates...
[2026-06-22 14:31:17,389.389 INFO    ] 200
[2026-06-22 14:31:17,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:31:17,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:31:17,448.448 INFO    ] No update needed
[2026-06-22 14:31:17,451.451 INFO    ] Checking for camera pi updates...
[2026-06-22 14:31:17,485.485 INFO    ] 200
[2026-06-22 14:31:17,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:31:17,528.528 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:31:17,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:31:17,613.613 INFO    ] No camera update needed
[2026-06-22 14:31:17,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:31:17,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:31:17,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:31:17,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:31:19,668.668 INFO    ] ================================================
[2026-06-22 14:31:19,683.683 INFO    ] Launching Daemon at Mon Jun 22 14:31:19 IST 2026
[2026-06-22 14:31:19,694.694 INFO    ] ================================================
[2026-06-22 14:31:20,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:31:20
[2026-06-22 14:31:20,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:31:21,026.026 INFO    ] Initializing speech engine...
[2026-06-22 14:31:21,033.033 INFO    ] 2026-06-22 14:31:21
[2026-06-22 14:31:21,329.329 INFO    ] 2026-06-22 14:31:21
[2026-06-22 14:31:21,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:31:21,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:31:21,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:31:21,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:31:21,750.750 INFO    ] time= 22/06/2026 14:31:21
[2026-06-22 14:31:21,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:31:21,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:31:21,838.838 INFO    ] No existing commands found in stream
[2026-06-22 14:31:26,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:31:26,871.871 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-22 14:31:28,717.717 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:31:28,720.720 INFO    ] Checking for system updates...
[2026-06-22 14:31:28,756.756 INFO    ] 200
[2026-06-22 14:31:28,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:31:28,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:31:28,816.816 INFO    ] No update needed
[2026-06-22 14:31:28,818.818 INFO    ] Checking for camera pi updates...
[2026-06-22 14:31:28,852.852 INFO    ] 200
[2026-06-22 14:31:28,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:31:28,899.899 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:31:28,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:31:28,986.986 INFO    ] No camera update needed
[2026-06-22 14:31:28,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:31:28,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:31:28,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:31:29,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:31:31,041.041 INFO    ] ================================================
[2026-06-22 14:31:31,057.057 INFO    ] Launching Daemon at Mon Jun 22 14:31:31 IST 2026
[2026-06-22 14:31:31,068.068 INFO    ] ================================================
[2026-06-22 14:31:31,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:31:31
[2026-06-22 14:31:32,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:31:32,601.601 INFO    ] Initializing speech engine...
[2026-06-22 14:31:32,607.607 INFO    ] 2026-06-22 14:31:32
[2026-06-22 14:31:32,919.919 INFO    ] 2026-06-22 14:31:32
[2026-06-22 14:31:32,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:31:33,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:31:33,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:31:33,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:31:33,346.346 INFO    ] time= 22/06/2026 14:31:33
[2026-06-22 14:31:33,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:31:33,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:31:33,497.497 INFO    ] No existing commands found in stream
[2026-06-22 14:31:38,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:31:38,525.525 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-22 14:31:42,778.778 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:31:42,781.781 INFO    ] Checking for system updates...
[2026-06-22 14:31:42,817.817 INFO    ] 200
[2026-06-22 14:31:42,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:31:42,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:31:42,876.876 INFO    ] No update needed
[2026-06-22 14:31:42,878.878 INFO    ] Checking for camera pi updates...
[2026-06-22 14:31:42,917.917 INFO    ] 200
[2026-06-22 14:31:42,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:31:42,960.960 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:31:43,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:31:43,055.055 INFO    ] No camera update needed
[2026-06-22 14:31:43,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:31:43,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:31:43,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:31:43,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:31:45,113.113 INFO    ] ================================================
[2026-06-22 14:31:45,129.129 INFO    ] Launching Daemon at Mon Jun 22 14:31:45 IST 2026
[2026-06-22 14:31:45,140.140 INFO    ] ================================================
[2026-06-22 14:31:45,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:31:45
[2026-06-22 14:31:46,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:31:46,460.460 INFO    ] Initializing speech engine...
[2026-06-22 14:31:46,479.479 INFO    ] 2026-06-22 14:31:46
[2026-06-22 14:31:46,725.725 INFO    ] 2026-06-22 14:31:46
[2026-06-22 14:31:46,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:31:46,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:31:46,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:31:47,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:31:47,168.168 INFO    ] time= 22/06/2026 14:31:47
[2026-06-22 14:31:47,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:31:47,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:31:47,385.385 INFO    ] No existing commands found in stream
[2026-06-22 14:31:52,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:31:52,426.426 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-22 14:31:53,306.306 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:31:53,310.310 INFO    ] Checking for system updates...
[2026-06-22 14:31:53,350.350 INFO    ] 200
[2026-06-22 14:31:53,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:31:53,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:31:53,447.447 INFO    ] No update needed
[2026-06-22 14:31:53,450.450 INFO    ] Checking for camera pi updates...
[2026-06-22 14:31:53,491.491 INFO    ] 200
[2026-06-22 14:31:53,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:31:53,536.536 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:31:53,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:31:53,623.623 INFO    ] No camera update needed
[2026-06-22 14:31:53,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:31:53,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:31:53,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:31:53,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:31:55,679.679 INFO    ] ================================================
[2026-06-22 14:31:55,695.695 INFO    ] Launching Daemon at Mon Jun 22 14:31:55 IST 2026
[2026-06-22 14:31:55,706.706 INFO    ] ================================================
[2026-06-22 14:31:56,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:31:56
[2026-06-22 14:31:57,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:31:57,363.363 INFO    ] Initializing speech engine...
[2026-06-22 14:31:57,372.372 INFO    ] 2026-06-22 14:31:57
[2026-06-22 14:31:57,669.669 INFO    ] 2026-06-22 14:31:57
[2026-06-22 14:31:57,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:31:57,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:31:57,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:31:58,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:31:58,167.167 INFO    ] time= 22/06/2026 14:31:58
[2026-06-22 14:31:58,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:31:58,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:31:58,414.414 INFO    ] No existing commands found in stream
[2026-06-22 14:32:03,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:32:03,439.439 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-22 14:32:04,952.952 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:32:04,955.955 INFO    ] Checking for system updates...
[2026-06-22 14:32:04,991.991 INFO    ] 200
[2026-06-22 14:32:04,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:32:05,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:32:05,050.050 INFO    ] No update needed
[2026-06-22 14:32:05,053.053 INFO    ] Checking for camera pi updates...
[2026-06-22 14:32:05,092.092 INFO    ] 200
[2026-06-22 14:32:05,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:32:05,137.137 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:32:05,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:32:05,213.213 INFO    ] No camera update needed
[2026-06-22 14:32:05,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:32:05,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:32:05,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:32:05,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:32:07,271.271 INFO    ] ================================================
[2026-06-22 14:32:07,288.288 INFO    ] Launching Daemon at Mon Jun 22 14:32:07 IST 2026
[2026-06-22 14:32:07,302.302 INFO    ] ================================================
[2026-06-22 14:32:07,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:32:07
[2026-06-22 14:32:08,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:32:08,767.767 INFO    ] Initializing speech engine...
[2026-06-22 14:32:08,773.773 INFO    ] 2026-06-22 14:32:08
[2026-06-22 14:32:09,023.023 INFO    ] 2026-06-22 14:32:09
[2026-06-22 14:32:09,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:32:09,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:32:09,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:32:09,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:32:09,623.623 INFO    ] time= 22/06/2026 14:32:09
[2026-06-22 14:32:09,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:32:09,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:32:09,812.812 INFO    ] No existing commands found in stream
[2026-06-22 14:32:14,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:32:14,840.840 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-22 14:32:15,537.537 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:32:15,539.539 INFO    ] Checking for system updates...
[2026-06-22 14:32:15,560.560 INFO    ] 200
[2026-06-22 14:32:15,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:32:15,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:32:15,599.599 INFO    ] No update needed
[2026-06-22 14:32:15,601.601 INFO    ] Checking for camera pi updates...
[2026-06-22 14:32:15,636.636 INFO    ] 200
[2026-06-22 14:32:15,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:32:15,681.681 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:32:15,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:32:15,772.772 INFO    ] No camera update needed
[2026-06-22 14:32:15,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:32:15,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:32:15,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:32:15,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:32:17,832.832 INFO    ] ================================================
[2026-06-22 14:32:17,849.849 INFO    ] Launching Daemon at Mon Jun 22 14:32:17 IST 2026
[2026-06-22 14:32:17,860.860 INFO    ] ================================================
[2026-06-22 14:32:18,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:32:18
[2026-06-22 14:32:19,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:32:19,326.326 INFO    ] Initializing speech engine...
[2026-06-22 14:32:19,333.333 INFO    ] 2026-06-22 14:32:19
[2026-06-22 14:32:19,598.598 INFO    ] 2026-06-22 14:32:19
[2026-06-22 14:32:19,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:32:19,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:32:19,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:32:20,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:32:20,114.114 INFO    ] time= 22/06/2026 14:32:20
[2026-06-22 14:32:20,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:32:20,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:32:20,318.318 INFO    ] No existing commands found in stream
[2026-06-22 14:32:25,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:32:25,350.350 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-22 14:32:26,320.320 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:32:26,323.323 INFO    ] Checking for system updates...
[2026-06-22 14:32:26,361.361 INFO    ] 200
[2026-06-22 14:32:26,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:32:26,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:32:26,421.421 INFO    ] No update needed
[2026-06-22 14:32:26,424.424 INFO    ] Checking for camera pi updates...
[2026-06-22 14:32:26,459.459 INFO    ] 200
[2026-06-22 14:32:26,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:32:26,503.503 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:32:26,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:32:26,586.586 INFO    ] No camera update needed
[2026-06-22 14:32:26,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:32:26,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:32:26,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:32:26,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:32:28,643.643 INFO    ] ================================================
[2026-06-22 14:32:28,659.659 INFO    ] Launching Daemon at Mon Jun 22 14:32:28 IST 2026
[2026-06-22 14:32:28,671.671 INFO    ] ================================================
[2026-06-22 14:32:29,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:32:29
[2026-06-22 14:32:29,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:32:30,023.023 INFO    ] Initializing speech engine...
[2026-06-22 14:32:30,038.038 INFO    ] 2026-06-22 14:32:30
[2026-06-22 14:32:30,347.347 INFO    ] 2026-06-22 14:32:30
[2026-06-22 14:32:30,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:32:30,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:32:30,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:32:30,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:32:30,783.783 INFO    ] time= 22/06/2026 14:32:30
[2026-06-22 14:32:30,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:32:30,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:32:30,940.940 INFO    ] No existing commands found in stream
[2026-06-22 14:32:35,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:32:35,979.979 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-22 14:32:39,480.480 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:32:39,483.483 INFO    ] Checking for system updates...
[2026-06-22 14:32:39,520.520 INFO    ] 200
[2026-06-22 14:32:39,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:32:39,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:32:39,578.578 INFO    ] No update needed
[2026-06-22 14:32:39,581.581 INFO    ] Checking for camera pi updates...
[2026-06-22 14:32:39,615.615 INFO    ] 200
[2026-06-22 14:32:39,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:32:39,664.664 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:32:39,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:32:39,741.741 INFO    ] No camera update needed
[2026-06-22 14:32:39,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:32:39,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:32:39,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:32:39,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:32:41,797.797 INFO    ] ================================================
[2026-06-22 14:32:41,812.812 INFO    ] Launching Daemon at Mon Jun 22 14:32:41 IST 2026
[2026-06-22 14:32:41,822.822 INFO    ] ================================================
[2026-06-22 14:32:42,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:32:42
[2026-06-22 14:32:42,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:32:43,228.228 INFO    ] Initializing speech engine...
[2026-06-22 14:32:43,250.250 INFO    ] 2026-06-22 14:32:43
[2026-06-22 14:32:43,503.503 INFO    ] 2026-06-22 14:32:43
[2026-06-22 14:32:43,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:32:43,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:32:43,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:32:43,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:32:43,875.875 INFO    ] time= 22/06/2026 14:32:43
[2026-06-22 14:32:43,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:32:43,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:32:44,064.064 INFO    ] No existing commands found in stream
[2026-06-22 14:32:49,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:32:49,081.081 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-22 14:32:52,069.069 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:32:52,071.071 INFO    ] Checking for system updates...
[2026-06-22 14:32:52,108.108 INFO    ] 200
[2026-06-22 14:32:52,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:32:52,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:32:52,167.167 INFO    ] No update needed
[2026-06-22 14:32:52,169.169 INFO    ] Checking for camera pi updates...
[2026-06-22 14:32:52,203.203 INFO    ] 200
[2026-06-22 14:32:52,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:32:52,246.246 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:32:52,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:32:52,328.328 INFO    ] No camera update needed
[2026-06-22 14:32:52,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:32:52,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:32:52,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:32:52,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:32:54,385.385 INFO    ] ================================================
[2026-06-22 14:32:54,400.400 INFO    ] Launching Daemon at Mon Jun 22 14:32:54 IST 2026
[2026-06-22 14:32:54,412.412 INFO    ] ================================================
[2026-06-22 14:32:55,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:32:55
[2026-06-22 14:32:55,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:32:55,819.819 INFO    ] Initializing speech engine...
[2026-06-22 14:32:55,834.834 INFO    ] 2026-06-22 14:32:55
[2026-06-22 14:32:56,100.100 INFO    ] 2026-06-22 14:32:56
[2026-06-22 14:32:56,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:32:56,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:32:56,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:32:56,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:32:56,605.605 INFO    ] time= 22/06/2026 14:32:56
[2026-06-22 14:32:56,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:32:56,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:32:56,816.816 INFO    ] No existing commands found in stream
[2026-06-22 14:33:01,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:33:01,840.840 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-22 14:33:05,110.110 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:33:05,112.112 INFO    ] Checking for system updates...
[2026-06-22 14:33:05,148.148 INFO    ] 200
[2026-06-22 14:33:05,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:33:05,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:33:05,205.205 INFO    ] No update needed
[2026-06-22 14:33:05,208.208 INFO    ] Checking for camera pi updates...
[2026-06-22 14:33:05,246.246 INFO    ] 200
[2026-06-22 14:33:05,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:33:05,289.289 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:33:05,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:33:05,376.376 INFO    ] No camera update needed
[2026-06-22 14:33:05,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:33:05,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:33:05,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:33:05,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:33:07,433.433 INFO    ] ================================================
[2026-06-22 14:33:07,449.449 INFO    ] Launching Daemon at Mon Jun 22 14:33:07 IST 2026
[2026-06-22 14:33:07,461.461 INFO    ] ================================================
[2026-06-22 14:33:08,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:33:08
[2026-06-22 14:33:08,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:33:08,923.923 INFO    ] Initializing speech engine...
[2026-06-22 14:33:08,932.932 INFO    ] 2026-06-22 14:33:08
[2026-06-22 14:33:09,184.184 INFO    ] 2026-06-22 14:33:09
[2026-06-22 14:33:09,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:33:09,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:33:09,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:33:09,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:33:09,656.656 INFO    ] time= 22/06/2026 14:33:09
[2026-06-22 14:33:09,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:33:09,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:33:09,876.876 INFO    ] No existing commands found in stream
[2026-06-22 14:33:14,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:33:14,907.907 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-22 14:33:18,797.797 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:33:18,799.799 INFO    ] Checking for system updates...
[2026-06-22 14:33:18,821.821 INFO    ] 200
[2026-06-22 14:33:18,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:33:18,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:33:18,864.864 INFO    ] No update needed
[2026-06-22 14:33:18,866.866 INFO    ] Checking for camera pi updates...
[2026-06-22 14:33:18,905.905 INFO    ] 200
[2026-06-22 14:33:18,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:33:18,948.948 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:33:19,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:33:19,155.155 INFO    ] No camera update needed
[2026-06-22 14:33:19,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:33:19,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:33:19,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:33:19,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:33:21,210.210 INFO    ] ================================================
[2026-06-22 14:33:21,227.227 INFO    ] Launching Daemon at Mon Jun 22 14:33:21 IST 2026
[2026-06-22 14:33:21,238.238 INFO    ] ================================================
[2026-06-22 14:33:21,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:33:21
[2026-06-22 14:33:22,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:33:22,648.648 INFO    ] Initializing speech engine...
[2026-06-22 14:33:22,656.656 INFO    ] 2026-06-22 14:33:22
[2026-06-22 14:33:22,933.933 INFO    ] 2026-06-22 14:33:22
[2026-06-22 14:33:22,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:33:23,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:33:23,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:33:23,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:33:23,423.423 INFO    ] time= 22/06/2026 14:33:23
[2026-06-22 14:33:23,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:33:23,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:33:23,639.639 INFO    ] No existing commands found in stream
[2026-06-22 14:33:28,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:33:28,672.672 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-22 14:33:31,448.448 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:33:31,449.449 INFO    ] Checking for system updates...
[2026-06-22 14:33:31,478.478 INFO    ] 200
[2026-06-22 14:33:31,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:33:31,537.537 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:33:31,539.539 INFO    ] No update needed
[2026-06-22 14:33:31,542.542 INFO    ] Checking for camera pi updates...
[2026-06-22 14:33:31,583.583 INFO    ] 200
[2026-06-22 14:33:31,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:33:31,627.627 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:33:31,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:33:31,719.719 INFO    ] No camera update needed
[2026-06-22 14:33:31,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:33:31,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:33:31,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:33:31,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:33:33,775.775 INFO    ] ================================================
[2026-06-22 14:33:33,790.790 INFO    ] Launching Daemon at Mon Jun 22 14:33:33 IST 2026
[2026-06-22 14:33:33,801.801 INFO    ] ================================================
[2026-06-22 14:33:34,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:33:34
[2026-06-22 14:33:35,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:33:35,428.428 INFO    ] Initializing speech engine...
[2026-06-22 14:33:35,437.437 INFO    ] 2026-06-22 14:33:35
[2026-06-22 14:33:35,707.707 INFO    ] 2026-06-22 14:33:35
[2026-06-22 14:33:35,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:33:35,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:33:35,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:33:36,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:33:36,200.200 INFO    ] time= 22/06/2026 14:33:36
[2026-06-22 14:33:36,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:33:36,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:33:36,367.367 INFO    ] No existing commands found in stream
[2026-06-22 14:33:41,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:33:41,397.397 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-22 14:33:44,938.938 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:33:44,941.941 INFO    ] Checking for system updates...
[2026-06-22 14:33:44,981.981 INFO    ] 200
[2026-06-22 14:33:44,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:33:45,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:33:45,048.048 INFO    ] No update needed
[2026-06-22 14:33:45,051.051 INFO    ] Checking for camera pi updates...
[2026-06-22 14:33:45,086.086 INFO    ] 200
[2026-06-22 14:33:45,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:33:45,136.136 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:33:45,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:33:45,218.218 INFO    ] No camera update needed
[2026-06-22 14:33:45,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:33:45,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:33:45,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:33:45,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:33:47,272.272 INFO    ] ================================================
[2026-06-22 14:33:47,288.288 INFO    ] Launching Daemon at Mon Jun 22 14:33:47 IST 2026
[2026-06-22 14:33:47,299.299 INFO    ] ================================================
[2026-06-22 14:33:47,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:33:47
[2026-06-22 14:33:48,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:33:48,665.665 INFO    ] Initializing speech engine...
[2026-06-22 14:33:48,671.671 INFO    ] 2026-06-22 14:33:48
[2026-06-22 14:33:48,930.930 INFO    ] 2026-06-22 14:33:48
[2026-06-22 14:33:48,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:33:49,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:33:49,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:33:49,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:33:49,410.410 INFO    ] time= 22/06/2026 14:33:49
[2026-06-22 14:33:49,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:33:49,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:33:49,611.611 INFO    ] No existing commands found in stream
[2026-06-22 14:33:54,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:33:54,642.642 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-22 14:33:58,362.362 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:33:58,364.364 INFO    ] Checking for system updates...
[2026-06-22 14:33:58,387.387 INFO    ] 200
[2026-06-22 14:33:58,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:33:58,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:33:58,438.438 INFO    ] No update needed
[2026-06-22 14:33:58,440.440 INFO    ] Checking for camera pi updates...
[2026-06-22 14:33:58,474.474 INFO    ] 200
[2026-06-22 14:33:58,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:33:58,526.526 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:33:58,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:33:58,601.601 INFO    ] No camera update needed
[2026-06-22 14:33:58,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:33:58,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:33:58,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:33:58,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:34:00,659.659 INFO    ] ================================================
[2026-06-22 14:34:00,675.675 INFO    ] Launching Daemon at Mon Jun 22 14:34:00 IST 2026
[2026-06-22 14:34:00,686.686 INFO    ] ================================================
[2026-06-22 14:34:01,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:34:01
[2026-06-22 14:34:01,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:34:02,371.371 INFO    ] Initializing speech engine...
[2026-06-22 14:34:02,379.379 INFO    ] 2026-06-22 14:34:02
[2026-06-22 14:34:02,741.741 INFO    ] 2026-06-22 14:34:02
[2026-06-22 14:34:02,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:34:02,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:34:03,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:34:03,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:34:03,236.236 INFO    ] time= 22/06/2026 14:34:03
[2026-06-22 14:34:03,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:34:03,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:34:03,433.433 INFO    ] No existing commands found in stream
[2026-06-22 14:34:08,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:34:08,466.466 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-22 14:34:09,796.796 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:34:09,798.798 INFO    ] Checking for system updates...
[2026-06-22 14:34:09,834.834 INFO    ] 200
[2026-06-22 14:34:09,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:34:09,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:34:09,917.917 INFO    ] No update needed
[2026-06-22 14:34:09,919.919 INFO    ] Checking for camera pi updates...
[2026-06-22 14:34:09,953.953 INFO    ] 200
[2026-06-22 14:34:09,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:34:09,997.997 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:34:10,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:34:10,078.078 INFO    ] No camera update needed
[2026-06-22 14:34:10,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:34:10,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:34:10,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:34:10,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:34:12,133.133 INFO    ] ================================================
[2026-06-22 14:34:12,149.149 INFO    ] Launching Daemon at Mon Jun 22 14:34:12 IST 2026
[2026-06-22 14:34:12,161.161 INFO    ] ================================================
[2026-06-22 14:34:12,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:34:12
[2026-06-22 14:34:13,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:34:13,475.475 INFO    ] Initializing speech engine...
[2026-06-22 14:34:13,497.497 INFO    ] 2026-06-22 14:34:13
[2026-06-22 14:34:13,749.749 INFO    ] 2026-06-22 14:34:13
[2026-06-22 14:34:13,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:34:13,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:34:14,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:34:14,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:34:14,267.267 INFO    ] time= 22/06/2026 14:34:14
[2026-06-22 14:34:14,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:34:14,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:34:14,446.446 INFO    ] No existing commands found in stream
[2026-06-22 14:34:19,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:34:19,475.475 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-22 14:34:23,591.591 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:34:23,594.594 INFO    ] Checking for system updates...
[2026-06-22 14:34:23,636.636 INFO    ] 200
[2026-06-22 14:34:23,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:34:23,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:34:23,740.740 INFO    ] No update needed
[2026-06-22 14:34:23,746.746 INFO    ] Checking for camera pi updates...
[2026-06-22 14:34:23,788.788 INFO    ] 200
[2026-06-22 14:34:23,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:34:23,846.846 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:34:23,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:34:23,949.949 INFO    ] No camera update needed
[2026-06-22 14:34:23,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:34:23,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:34:23,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:34:23,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:34:26,009.009 INFO    ] ================================================
[2026-06-22 14:34:26,026.026 INFO    ] Launching Daemon at Mon Jun 22 14:34:26 IST 2026
[2026-06-22 14:34:26,037.037 INFO    ] ================================================
[2026-06-22 14:34:26,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:34:26
[2026-06-22 14:34:27,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:34:27,651.651 INFO    ] Initializing speech engine...
[2026-06-22 14:34:27,658.658 INFO    ] 2026-06-22 14:34:27
[2026-06-22 14:34:27,960.960 INFO    ] 2026-06-22 14:34:27
[2026-06-22 14:34:28,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:34:28,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:34:28,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:34:28,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:34:28,378.378 INFO    ] time= 22/06/2026 14:34:28
[2026-06-22 14:34:28,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:34:28,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:34:28,581.581 INFO    ] No existing commands found in stream
[2026-06-22 14:34:33,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:34:33,615.615 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-22 14:34:36,915.915 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:34:36,917.917 INFO    ] Checking for system updates...
[2026-06-22 14:34:36,939.939 INFO    ] 200
[2026-06-22 14:34:36,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:34:37,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:34:37,003.003 INFO    ] No update needed
[2026-06-22 14:34:37,005.005 INFO    ] Checking for camera pi updates...
[2026-06-22 14:34:37,041.041 INFO    ] 200
[2026-06-22 14:34:37,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:34:37,086.086 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:34:37,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:34:37,180.180 INFO    ] No camera update needed
[2026-06-22 14:34:37,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:34:37,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:34:37,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:34:37,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:34:39,240.240 INFO    ] ================================================
[2026-06-22 14:34:39,256.256 INFO    ] Launching Daemon at Mon Jun 22 14:34:39 IST 2026
[2026-06-22 14:34:39,267.267 INFO    ] ================================================
[2026-06-22 14:34:39,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:34:39
[2026-06-22 14:34:40,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:34:40,590.590 INFO    ] Initializing speech engine...
[2026-06-22 14:34:40,609.609 INFO    ] 2026-06-22 14:34:40
[2026-06-22 14:34:40,858.858 INFO    ] 2026-06-22 14:34:40
[2026-06-22 14:34:40,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:34:41,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:34:41,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:34:41,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:34:41,237.237 INFO    ] time= 22/06/2026 14:34:41
[2026-06-22 14:34:41,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:34:41,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:34:41,338.338 INFO    ] No existing commands found in stream
[2026-06-22 14:34:46,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:34:46,350.350 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-22 14:34:47,970.970 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:34:47,973.973 INFO    ] Checking for system updates...
[2026-06-22 14:34:48,014.014 INFO    ] 200
[2026-06-22 14:34:48,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 14:34:48,021.021 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-22 14:34:48,024.024 INFO    ] Checking for camera pi updates...
[2026-06-22 14:34:48,070.070 INFO    ] 200
[2026-06-22 14:34:48,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 14:34:48,076.076 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-22 14:34:48,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:34:48,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:34:48,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:34:48,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:34:50,145.145 INFO    ] ================================================
[2026-06-22 14:34:50,161.161 INFO    ] Launching Daemon at Mon Jun 22 14:34:50 IST 2026
[2026-06-22 14:34:50,172.172 INFO    ] ================================================
[2026-06-22 14:34:50,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:34:50
[2026-06-22 14:34:51,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:34:51,601.601 INFO    ] Initializing speech engine...
[2026-06-22 14:34:51,610.610 INFO    ] 2026-06-22 14:34:51
[2026-06-22 14:34:51,860.860 INFO    ] 2026-06-22 14:34:51
[2026-06-22 14:34:51,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:34:52,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:34:52,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:34:52,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:34:52,335.335 INFO    ] time= 22/06/2026 14:34:52
[2026-06-22 14:34:52,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:34:52,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:34:52,566.566 INFO    ] No existing commands found in stream
[2026-06-22 14:34:57,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:34:57,597.597 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-22 14:34:58,531.531 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:34:58,533.533 INFO    ] Checking for system updates...
[2026-06-22 14:34:58,570.570 INFO    ] 200
[2026-06-22 14:34:58,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:34:58,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:34:58,637.637 INFO    ] No update needed
[2026-06-22 14:34:58,641.641 INFO    ] Checking for camera pi updates...
[2026-06-22 14:34:58,675.675 INFO    ] 200
[2026-06-22 14:34:58,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:34:58,724.724 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:34:58,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:34:58,809.809 INFO    ] No camera update needed
[2026-06-22 14:34:58,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:34:58,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:34:58,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:34:58,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:35:00,867.867 INFO    ] ================================================
[2026-06-22 14:35:00,883.883 INFO    ] Launching Daemon at Mon Jun 22 14:35:00 IST 2026
[2026-06-22 14:35:00,894.894 INFO    ] ================================================
[2026-06-22 14:35:01,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:35:01
[2026-06-22 14:35:02,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:35:02,760.760 INFO    ] Initializing speech engine...
[2026-06-22 14:35:02,767.767 INFO    ] 2026-06-22 14:35:02
[2026-06-22 14:35:03,105.105 INFO    ] 2026-06-22 14:35:03
[2026-06-22 14:35:03,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:35:03,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:35:03,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:35:03,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:35:03,651.651 INFO    ] time= 22/06/2026 14:35:03
[2026-06-22 14:35:03,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:35:03,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:35:03,893.893 INFO    ] No existing commands found in stream
[2026-06-22 14:35:08,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:35:08,921.921 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-22 14:35:14,775.775 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:35:14,777.777 INFO    ] Checking for system updates...
[2026-06-22 14:35:14,808.808 INFO    ] 200
[2026-06-22 14:35:14,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:35:14,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:35:14,868.868 INFO    ] No update needed
[2026-06-22 14:35:14,871.871 INFO    ] Checking for camera pi updates...
[2026-06-22 14:35:14,905.905 INFO    ] 200
[2026-06-22 14:35:14,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:35:14,948.948 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:35:15,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:35:15,038.038 INFO    ] No camera update needed
[2026-06-22 14:35:15,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:35:15,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:35:15,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:35:15,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:35:17,100.100 INFO    ] ================================================
[2026-06-22 14:35:17,116.116 INFO    ] Launching Daemon at Mon Jun 22 14:35:17 IST 2026
[2026-06-22 14:35:17,128.128 INFO    ] ================================================
[2026-06-22 14:35:17,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:35:17
[2026-06-22 14:35:18,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:35:18,470.470 INFO    ] Initializing speech engine...
[2026-06-22 14:35:18,480.480 INFO    ] 2026-06-22 14:35:18
[2026-06-22 14:35:18,732.732 INFO    ] 2026-06-22 14:35:18
[2026-06-22 14:35:18,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:35:18,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:35:19,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:35:19,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:35:19,223.223 INFO    ] time= 22/06/2026 14:35:19
[2026-06-22 14:35:19,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:35:19,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:35:19,460.460 INFO    ] No existing commands found in stream
[2026-06-22 14:35:24,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:35:24,481.481 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-22 14:35:26,130.130 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:35:26,132.132 INFO    ] Checking for system updates...
[2026-06-22 14:35:26,154.154 INFO    ] 200
[2026-06-22 14:35:26,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:35:26,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:35:26,192.192 INFO    ] No update needed
[2026-06-22 14:35:26,195.195 INFO    ] Checking for camera pi updates...
[2026-06-22 14:35:26,230.230 INFO    ] 200
[2026-06-22 14:35:26,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:35:26,273.273 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:35:26,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:35:26,444.444 INFO    ] No camera update needed
[2026-06-22 14:35:26,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:35:26,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:35:26,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:35:26,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:35:28,501.501 INFO    ] ================================================
[2026-06-22 14:35:28,517.517 INFO    ] Launching Daemon at Mon Jun 22 14:35:28 IST 2026
[2026-06-22 14:35:28,528.528 INFO    ] ================================================
[2026-06-22 14:35:29,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:35:29
[2026-06-22 14:35:29,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:35:29,889.889 INFO    ] Initializing speech engine...
[2026-06-22 14:35:29,904.904 INFO    ] 2026-06-22 14:35:29
[2026-06-22 14:35:30,160.160 INFO    ] 2026-06-22 14:35:30
[2026-06-22 14:35:30,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:35:30,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:35:30,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:35:30,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:35:30,639.639 INFO    ] time= 22/06/2026 14:35:30
[2026-06-22 14:35:30,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:35:30,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:35:30,859.859 INFO    ] No existing commands found in stream
[2026-06-22 14:35:35,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:35:35,887.887 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-22 14:35:38,510.510 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:35:38,512.512 INFO    ] Checking for system updates...
[2026-06-22 14:35:38,533.533 INFO    ] 200
[2026-06-22 14:35:38,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:35:38,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:35:38,566.566 INFO    ] No update needed
[2026-06-22 14:35:38,568.568 INFO    ] Checking for camera pi updates...
[2026-06-22 14:35:38,587.587 INFO    ] 200
[2026-06-22 14:35:38,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:35:38,626.626 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:35:38,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:35:38,715.715 INFO    ] No camera update needed
[2026-06-22 14:35:38,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:35:38,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:35:38,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:35:38,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:35:40,776.776 INFO    ] ================================================
[2026-06-22 14:35:40,792.792 INFO    ] Launching Daemon at Mon Jun 22 14:35:40 IST 2026
[2026-06-22 14:35:40,803.803 INFO    ] ================================================
[2026-06-22 14:35:41,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:35:41
[2026-06-22 14:35:42,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:35:42,360.360 INFO    ] Initializing speech engine...
[2026-06-22 14:35:42,373.373 INFO    ] 2026-06-22 14:35:42
[2026-06-22 14:35:42,630.630 INFO    ] 2026-06-22 14:35:42
[2026-06-22 14:35:42,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:35:42,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:35:42,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:35:43,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:35:43,092.092 INFO    ] time= 22/06/2026 14:35:43
[2026-06-22 14:35:43,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:35:43,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:35:43,324.324 INFO    ] No existing commands found in stream
[2026-06-22 14:35:48,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:35:48,356.356 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-22 14:35:51,256.256 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:35:51,259.259 INFO    ] Checking for system updates...
[2026-06-22 14:35:51,295.295 INFO    ] 200
[2026-06-22 14:35:51,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:35:51,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:35:51,357.357 INFO    ] No update needed
[2026-06-22 14:35:51,359.359 INFO    ] Checking for camera pi updates...
[2026-06-22 14:35:51,392.392 INFO    ] 200
[2026-06-22 14:35:51,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:35:51,441.441 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:35:51,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:35:51,542.542 INFO    ] No camera update needed
[2026-06-22 14:35:51,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:35:51,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:35:51,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:35:51,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:35:53,598.598 INFO    ] ================================================
[2026-06-22 14:35:53,613.613 INFO    ] Launching Daemon at Mon Jun 22 14:35:53 IST 2026
[2026-06-22 14:35:53,624.624 INFO    ] ================================================
[2026-06-22 14:35:54,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:35:54
[2026-06-22 14:35:54,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:35:55,091.091 INFO    ] Initializing speech engine...
[2026-06-22 14:35:55,105.105 INFO    ] 2026-06-22 14:35:55
[2026-06-22 14:35:55,417.417 INFO    ] 2026-06-22 14:35:55
[2026-06-22 14:35:55,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:35:55,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:35:55,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:35:55,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:35:55,875.875 INFO    ] time= 22/06/2026 14:35:55
[2026-06-22 14:35:55,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:35:55,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:35:56,079.079 INFO    ] No existing commands found in stream
[2026-06-22 14:36:01,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:36:01,093.093 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-22 14:36:01,921.921 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:36:01,924.924 INFO    ] Checking for system updates...
[2026-06-22 14:36:01,971.971 INFO    ] 200
[2026-06-22 14:36:01,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:36:02,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:36:02,063.063 INFO    ] No update needed
[2026-06-22 14:36:02,066.066 INFO    ] Checking for camera pi updates...
[2026-06-22 14:36:02,111.111 INFO    ] 200
[2026-06-22 14:36:02,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:36:02,162.162 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:36:02,214.214 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:36:02,217.217 INFO    ] No camera update needed
[2026-06-22 14:36:02,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:36:02,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:36:02,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:36:02,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:36:04,279.279 INFO    ] ================================================
[2026-06-22 14:36:04,296.296 INFO    ] Launching Daemon at Mon Jun 22 14:36:04 IST 2026
[2026-06-22 14:36:04,307.307 INFO    ] ================================================
[2026-06-22 14:36:04,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:36:04
[2026-06-22 14:36:05,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:36:05,854.854 INFO    ] Initializing speech engine...
[2026-06-22 14:36:05,860.860 INFO    ] 2026-06-22 14:36:05
[2026-06-22 14:36:06,122.122 INFO    ] 2026-06-22 14:36:06
[2026-06-22 14:36:06,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:36:06,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:36:06,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:36:06,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:36:06,703.703 INFO    ] time= 22/06/2026 14:36:06
[2026-06-22 14:36:06,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:36:06,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:36:06,861.861 INFO    ] No existing commands found in stream
[2026-06-22 14:36:11,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:36:11,892.892 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-22 14:36:13,658.658 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:36:13,660.660 INFO    ] Checking for system updates...
[2026-06-22 14:36:13,680.680 INFO    ] 200
[2026-06-22 14:36:13,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:36:13,716.716 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:36:13,719.719 INFO    ] No update needed
[2026-06-22 14:36:13,721.721 INFO    ] Checking for camera pi updates...
[2026-06-22 14:36:13,756.756 INFO    ] 200
[2026-06-22 14:36:13,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:36:13,805.805 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:36:13,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:36:13,868.868 INFO    ] No camera update needed
[2026-06-22 14:36:13,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:36:13,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:36:13,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:36:13,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:36:15,926.926 INFO    ] ================================================
[2026-06-22 14:36:15,941.941 INFO    ] Launching Daemon at Mon Jun 22 14:36:15 IST 2026
[2026-06-22 14:36:15,952.952 INFO    ] ================================================
[2026-06-22 14:36:16,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:36:16
[2026-06-22 14:36:17,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:36:17,267.267 INFO    ] Initializing speech engine...
[2026-06-22 14:36:17,275.275 INFO    ] 2026-06-22 14:36:17
[2026-06-22 14:36:17,550.550 INFO    ] 2026-06-22 14:36:17
[2026-06-22 14:36:17,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:36:17,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:36:17,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:36:17,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:36:18,008.008 INFO    ] time= 22/06/2026 14:36:17
[2026-06-22 14:36:18,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:36:18,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:36:18,259.259 INFO    ] No existing commands found in stream
[2026-06-22 14:36:23,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:36:23,287.287 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-22 14:36:24,374.374 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:36:24,377.377 INFO    ] Checking for system updates...
[2026-06-22 14:36:24,416.416 INFO    ] 200
[2026-06-22 14:36:24,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:36:24,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:36:24,472.472 INFO    ] No update needed
[2026-06-22 14:36:24,475.475 INFO    ] Checking for camera pi updates...
[2026-06-22 14:36:24,511.511 INFO    ] 200
[2026-06-22 14:36:24,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:36:24,554.554 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:36:24,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:36:24,641.641 INFO    ] No camera update needed
[2026-06-22 14:36:24,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:36:24,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:36:24,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:36:24,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:36:26,697.697 INFO    ] ================================================
[2026-06-22 14:36:26,712.712 INFO    ] Launching Daemon at Mon Jun 22 14:36:26 IST 2026
[2026-06-22 14:36:26,724.724 INFO    ] ================================================
[2026-06-22 14:36:27,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:36:27
[2026-06-22 14:36:27,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:36:28,056.056 INFO    ] Initializing speech engine...
[2026-06-22 14:36:28,064.064 INFO    ] 2026-06-22 14:36:28
[2026-06-22 14:36:28,314.314 INFO    ] 2026-06-22 14:36:28
[2026-06-22 14:36:28,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:36:28,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:36:28,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:36:28,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:36:28,689.689 INFO    ] time= 22/06/2026 14:36:28
[2026-06-22 14:36:28,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:36:28,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:36:28,890.890 INFO    ] No existing commands found in stream
[2026-06-22 14:36:33,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:36:33,903.903 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-22 14:36:35,507.507 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:36:35,510.510 INFO    ] Checking for system updates...
[2026-06-22 14:36:35,549.549 INFO    ] 200
[2026-06-22 14:36:35,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:36:35,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:36:35,624.624 INFO    ] No update needed
[2026-06-22 14:36:35,627.627 INFO    ] Checking for camera pi updates...
[2026-06-22 14:36:35,663.663 INFO    ] 200
[2026-06-22 14:36:35,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:36:35,710.710 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:36:35,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:36:35,795.795 INFO    ] No camera update needed
[2026-06-22 14:36:35,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:36:35,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:36:35,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:36:35,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:36:37,851.851 INFO    ] ================================================
[2026-06-22 14:36:37,867.867 INFO    ] Launching Daemon at Mon Jun 22 14:36:37 IST 2026
[2026-06-22 14:36:37,878.878 INFO    ] ================================================
[2026-06-22 14:36:38,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:36:38
[2026-06-22 14:36:39,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:36:39,373.373 INFO    ] Initializing speech engine...
[2026-06-22 14:36:39,382.382 INFO    ] 2026-06-22 14:36:39
[2026-06-22 14:36:39,652.652 INFO    ] 2026-06-22 14:36:39
[2026-06-22 14:36:39,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:36:39,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:36:39,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:36:40,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:36:40,135.135 INFO    ] time= 22/06/2026 14:36:40
[2026-06-22 14:36:40,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:36:40,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:36:40,366.366 INFO    ] No existing commands found in stream
[2026-06-22 14:36:45,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:36:45,392.392 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-22 14:36:48,453.453 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:36:48,455.455 INFO    ] Checking for system updates...
[2026-06-22 14:36:48,476.476 INFO    ] 200
[2026-06-22 14:36:48,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:36:48,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:36:48,509.509 INFO    ] No update needed
[2026-06-22 14:36:48,510.510 INFO    ] Checking for camera pi updates...
[2026-06-22 14:36:48,536.536 INFO    ] 200
[2026-06-22 14:36:48,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:36:48,580.580 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:36:48,632.632 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:36:48,634.634 INFO    ] No camera update needed
[2026-06-22 14:36:48,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:36:48,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:36:48,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:36:48,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:36:50,690.690 INFO    ] ================================================
[2026-06-22 14:36:50,705.705 INFO    ] Launching Daemon at Mon Jun 22 14:36:50 IST 2026
[2026-06-22 14:36:50,717.717 INFO    ] ================================================
[2026-06-22 14:36:51,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:36:51
[2026-06-22 14:36:51,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:36:52,158.158 INFO    ] Initializing speech engine...
[2026-06-22 14:36:52,166.166 INFO    ] 2026-06-22 14:36:52
[2026-06-22 14:36:52,437.437 INFO    ] 2026-06-22 14:36:52
[2026-06-22 14:36:52,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:36:52,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:36:52,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:36:52,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:36:52,944.944 INFO    ] time= 22/06/2026 14:36:52
[2026-06-22 14:36:52,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:36:53,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:36:53,158.158 INFO    ] No existing commands found in stream
[2026-06-22 14:36:58,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:36:58,176.176 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-22 14:37:02,508.508 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:37:02,512.512 INFO    ] Checking for system updates...
[2026-06-22 14:37:02,560.560 INFO    ] 200
[2026-06-22 14:37:02,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:37:02,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:37:02,659.659 INFO    ] No update needed
[2026-06-22 14:37:02,662.662 INFO    ] Checking for camera pi updates...
[2026-06-22 14:37:02,696.696 INFO    ] 200
[2026-06-22 14:37:02,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:37:02,760.760 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:37:02,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:37:02,847.847 INFO    ] No camera update needed
[2026-06-22 14:37:02,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:37:02,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:37:02,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:37:02,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:37:04,903.903 INFO    ] ================================================
[2026-06-22 14:37:04,919.919 INFO    ] Launching Daemon at Mon Jun 22 14:37:04 IST 2026
[2026-06-22 14:37:04,930.930 INFO    ] ================================================
[2026-06-22 14:37:05,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:37:05
[2026-06-22 14:37:06,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:37:06,345.345 INFO    ] Initializing speech engine...
[2026-06-22 14:37:06,352.352 INFO    ] 2026-06-22 14:37:06
[2026-06-22 14:37:06,629.629 INFO    ] 2026-06-22 14:37:06
[2026-06-22 14:37:06,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:37:06,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:37:06,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:37:07,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:37:07,160.160 INFO    ] time= 22/06/2026 14:37:07
[2026-06-22 14:37:07,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:37:07,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:37:07,340.340 INFO    ] No existing commands found in stream
[2026-06-22 14:37:12,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:37:12,366.366 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-22 14:37:14,077.077 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:37:14,080.080 INFO    ] Checking for system updates...
[2026-06-22 14:37:14,119.119 INFO    ] 200
[2026-06-22 14:37:14,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:37:14,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:37:14,182.182 INFO    ] No update needed
[2026-06-22 14:37:14,185.185 INFO    ] Checking for camera pi updates...
[2026-06-22 14:37:14,218.218 INFO    ] 200
[2026-06-22 14:37:14,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:37:14,261.261 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:37:14,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:37:14,354.354 INFO    ] No camera update needed
[2026-06-22 14:37:14,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:37:14,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:37:14,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:37:14,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:37:16,410.410 INFO    ] ================================================
[2026-06-22 14:37:16,426.426 INFO    ] Launching Daemon at Mon Jun 22 14:37:16 IST 2026
[2026-06-22 14:37:16,437.437 INFO    ] ================================================
[2026-06-22 14:37:17,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:37:17
[2026-06-22 14:37:17,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:37:17,853.853 INFO    ] Initializing speech engine...
[2026-06-22 14:37:17,872.872 INFO    ] 2026-06-22 14:37:17
[2026-06-22 14:37:18,122.122 INFO    ] 2026-06-22 14:37:18
[2026-06-22 14:37:18,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:37:18,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:37:18,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:37:18,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:37:18,501.501 INFO    ] time= 22/06/2026 14:37:18
[2026-06-22 14:37:18,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:37:18,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:37:18,684.684 INFO    ] No existing commands found in stream
[2026-06-22 14:37:23,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:37:23,712.712 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-22 14:37:26,140.140 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:37:26,143.143 INFO    ] Checking for system updates...
[2026-06-22 14:37:26,180.180 INFO    ] 200
[2026-06-22 14:37:26,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:37:26,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:37:26,243.243 INFO    ] No update needed
[2026-06-22 14:37:26,246.246 INFO    ] Checking for camera pi updates...
[2026-06-22 14:37:26,279.279 INFO    ] 200
[2026-06-22 14:37:26,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:37:26,326.326 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:37:26,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:37:26,410.410 INFO    ] No camera update needed
[2026-06-22 14:37:26,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:37:26,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:37:26,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:37:26,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:37:28,466.466 INFO    ] ================================================
[2026-06-22 14:37:28,483.483 INFO    ] Launching Daemon at Mon Jun 22 14:37:28 IST 2026
[2026-06-22 14:37:28,494.494 INFO    ] ================================================
[2026-06-22 14:37:29,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:37:29
[2026-06-22 14:37:29,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:37:29,830.830 INFO    ] Initializing speech engine...
[2026-06-22 14:37:29,835.835 INFO    ] 2026-06-22 14:37:29
[2026-06-22 14:37:30,101.101 INFO    ] 2026-06-22 14:37:30
[2026-06-22 14:37:30,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:37:30,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:37:30,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:37:30,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:37:30,614.614 INFO    ] time= 22/06/2026 14:37:30
[2026-06-22 14:37:30,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:37:30,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:37:30,828.828 INFO    ] No existing commands found in stream
[2026-06-22 14:37:35,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:37:35,843.843 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-22 14:37:39,563.563 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:37:39,567.567 INFO    ] Checking for system updates...
[2026-06-22 14:37:39,604.604 INFO    ] 200
[2026-06-22 14:37:39,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:37:39,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:37:39,663.663 INFO    ] No update needed
[2026-06-22 14:37:39,666.666 INFO    ] Checking for camera pi updates...
[2026-06-22 14:37:39,704.704 INFO    ] 200
[2026-06-22 14:37:39,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:37:39,753.753 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:37:39,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:37:39,857.857 INFO    ] No camera update needed
[2026-06-22 14:37:39,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:37:39,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:37:39,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:37:39,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:37:41,915.915 INFO    ] ================================================
[2026-06-22 14:37:41,931.931 INFO    ] Launching Daemon at Mon Jun 22 14:37:41 IST 2026
[2026-06-22 14:37:41,943.943 INFO    ] ================================================
[2026-06-22 14:37:42,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:37:42
[2026-06-22 14:37:43,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:37:43,322.322 INFO    ] Initializing speech engine...
[2026-06-22 14:37:43,332.332 INFO    ] 2026-06-22 14:37:43
[2026-06-22 14:37:43,602.602 INFO    ] 2026-06-22 14:37:43
[2026-06-22 14:37:43,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:37:43,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:37:43,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:37:43,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:37:43,987.987 INFO    ] time= 22/06/2026 14:37:43
[2026-06-22 14:37:43,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:37:44,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:37:44,183.183 INFO    ] No existing commands found in stream
[2026-06-22 14:37:49,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:37:49,197.197 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-22 14:37:51,102.102 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:37:51,106.106 INFO    ] Checking for system updates...
[2026-06-22 14:37:51,151.151 INFO    ] 200
[2026-06-22 14:37:51,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:37:51,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:37:51,216.216 INFO    ] No update needed
[2026-06-22 14:37:51,219.219 INFO    ] Checking for camera pi updates...
[2026-06-22 14:37:51,260.260 INFO    ] 200
[2026-06-22 14:37:51,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:37:51,320.320 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:37:51,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:37:51,407.407 INFO    ] No camera update needed
[2026-06-22 14:37:51,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:37:51,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:37:51,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:37:51,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:37:53,469.469 INFO    ] ================================================
[2026-06-22 14:37:53,485.485 INFO    ] Launching Daemon at Mon Jun 22 14:37:53 IST 2026
[2026-06-22 14:37:53,496.496 INFO    ] ================================================
[2026-06-22 14:37:54,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:37:54
[2026-06-22 14:37:54,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:37:54,867.867 INFO    ] Initializing speech engine...
[2026-06-22 14:37:54,875.875 INFO    ] 2026-06-22 14:37:54
[2026-06-22 14:37:55,126.126 INFO    ] 2026-06-22 14:37:55
[2026-06-22 14:37:55,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:37:55,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:37:55,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:37:55,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:37:55,632.632 INFO    ] time= 22/06/2026 14:37:55
[2026-06-22 14:37:55,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:37:55,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:37:55,841.841 INFO    ] No existing commands found in stream
[2026-06-22 14:38:00,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:38:00,864.864 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-22 14:38:04,346.346 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:38:04,349.349 INFO    ] Checking for system updates...
[2026-06-22 14:38:04,386.386 INFO    ] 200
[2026-06-22 14:38:04,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:38:04,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:38:04,452.452 INFO    ] No update needed
[2026-06-22 14:38:04,455.455 INFO    ] Checking for camera pi updates...
[2026-06-22 14:38:04,492.492 INFO    ] 200
[2026-06-22 14:38:04,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:38:04,537.537 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:38:04,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:38:04,622.622 INFO    ] No camera update needed
[2026-06-22 14:38:04,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:38:04,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:38:04,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:38:04,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:38:06,682.682 INFO    ] ================================================
[2026-06-22 14:38:06,698.698 INFO    ] Launching Daemon at Mon Jun 22 14:38:06 IST 2026
[2026-06-22 14:38:06,709.709 INFO    ] ================================================
[2026-06-22 14:38:07,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:38:07
[2026-06-22 14:38:08,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:38:08,314.314 INFO    ] Initializing speech engine...
[2026-06-22 14:38:08,322.322 INFO    ] 2026-06-22 14:38:08
[2026-06-22 14:38:08,591.591 INFO    ] 2026-06-22 14:38:08
[2026-06-22 14:38:08,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:38:08,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:38:08,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:38:09,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:38:09,036.036 INFO    ] time= 22/06/2026 14:38:09
[2026-06-22 14:38:09,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:38:09,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:38:09,279.279 INFO    ] No existing commands found in stream
[2026-06-22 14:38:14,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:38:14,299.299 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-22 14:38:16,133.133 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:38:16,136.136 INFO    ] Checking for system updates...
[2026-06-22 14:38:16,177.177 INFO    ] 200
[2026-06-22 14:38:16,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:38:16,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:38:16,237.237 INFO    ] No update needed
[2026-06-22 14:38:16,240.240 INFO    ] Checking for camera pi updates...
[2026-06-22 14:38:16,275.275 INFO    ] 200
[2026-06-22 14:38:16,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:38:16,319.319 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:38:16,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:38:16,409.409 INFO    ] No camera update needed
[2026-06-22 14:38:16,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:38:16,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:38:16,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:38:16,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:38:18,467.467 INFO    ] ================================================
[2026-06-22 14:38:18,482.482 INFO    ] Launching Daemon at Mon Jun 22 14:38:18 IST 2026
[2026-06-22 14:38:18,494.494 INFO    ] ================================================
[2026-06-22 14:38:19,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:38:19
[2026-06-22 14:38:19,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:38:20,099.099 INFO    ] Initializing speech engine...
[2026-06-22 14:38:20,104.104 INFO    ] 2026-06-22 14:38:20
[2026-06-22 14:38:20,379.379 INFO    ] 2026-06-22 14:38:20
[2026-06-22 14:38:20,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:38:20,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:38:20,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:38:20,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:38:20,929.929 INFO    ] time= 22/06/2026 14:38:20
[2026-06-22 14:38:20,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:38:20,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:38:21,110.110 INFO    ] No existing commands found in stream
[2026-06-22 14:38:26,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:38:26,149.149 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-22 14:38:27,784.784 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:38:27,785.785 INFO    ] Checking for system updates...
[2026-06-22 14:38:27,811.811 INFO    ] 200
[2026-06-22 14:38:27,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:38:27,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:38:27,870.870 INFO    ] No update needed
[2026-06-22 14:38:27,872.872 INFO    ] Checking for camera pi updates...
[2026-06-22 14:38:27,907.907 INFO    ] 200
[2026-06-22 14:38:27,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:38:27,951.951 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:38:28,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:38:28,020.020 INFO    ] No camera update needed
[2026-06-22 14:38:28,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:38:28,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:38:28,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:38:28,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:38:30,078.078 INFO    ] ================================================
[2026-06-22 14:38:30,094.094 INFO    ] Launching Daemon at Mon Jun 22 14:38:30 IST 2026
[2026-06-22 14:38:30,105.105 INFO    ] ================================================
[2026-06-22 14:38:30,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:38:30
[2026-06-22 14:38:31,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:38:31,520.520 INFO    ] Initializing speech engine...
[2026-06-22 14:38:31,527.527 INFO    ] 2026-06-22 14:38:31
[2026-06-22 14:38:31,826.826 INFO    ] 2026-06-22 14:38:31
[2026-06-22 14:38:31,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:38:32,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:38:32,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:38:32,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:38:32,312.312 INFO    ] time= 22/06/2026 14:38:32
[2026-06-22 14:38:32,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:38:32,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:38:32,477.477 INFO    ] No existing commands found in stream
[2026-06-22 14:38:37,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:38:37,491.491 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-22 14:38:41,198.198 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:38:41,201.201 INFO    ] Checking for system updates...
[2026-06-22 14:38:41,237.237 INFO    ] 200
[2026-06-22 14:38:41,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:38:41,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:38:41,297.297 INFO    ] No update needed
[2026-06-22 14:38:41,300.300 INFO    ] Checking for camera pi updates...
[2026-06-22 14:38:41,334.334 INFO    ] 200
[2026-06-22 14:38:41,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:38:41,378.378 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:38:41,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:38:41,464.464 INFO    ] No camera update needed
[2026-06-22 14:38:41,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:38:41,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:38:41,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:38:41,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:38:43,523.523 INFO    ] ================================================
[2026-06-22 14:38:43,538.538 INFO    ] Launching Daemon at Mon Jun 22 14:38:43 IST 2026
[2026-06-22 14:38:43,549.549 INFO    ] ================================================
[2026-06-22 14:38:44,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:38:44
[2026-06-22 14:38:44,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:38:44,969.969 INFO    ] Initializing speech engine...
[2026-06-22 14:38:44,978.978 INFO    ] 2026-06-22 14:38:44
[2026-06-22 14:38:45,238.238 INFO    ] 2026-06-22 14:38:45
[2026-06-22 14:38:45,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:38:45,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:38:45,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:38:45,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:38:45,789.789 INFO    ] time= 22/06/2026 14:38:45
[2026-06-22 14:38:45,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:38:45,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:38:45,925.925 INFO    ] No existing commands found in stream
[2026-06-22 14:38:50,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:38:50,952.952 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-22 14:38:54,230.230 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:38:54,232.232 INFO    ] Checking for system updates...
[2026-06-22 14:38:54,253.253 INFO    ] 200
[2026-06-22 14:38:54,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:38:54,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:38:54,286.286 INFO    ] No update needed
[2026-06-22 14:38:54,288.288 INFO    ] Checking for camera pi updates...
[2026-06-22 14:38:54,307.307 INFO    ] 200
[2026-06-22 14:38:54,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:38:54,331.331 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:38:54,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:38:54,419.419 INFO    ] No camera update needed
[2026-06-22 14:38:54,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:38:54,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:38:54,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:38:54,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:38:56,476.476 INFO    ] ================================================
[2026-06-22 14:38:56,491.491 INFO    ] Launching Daemon at Mon Jun 22 14:38:56 IST 2026
[2026-06-22 14:38:56,503.503 INFO    ] ================================================
[2026-06-22 14:38:57,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:38:57
[2026-06-22 14:38:57,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:38:57,962.962 INFO    ] Initializing speech engine...
[2026-06-22 14:38:57,981.981 INFO    ] 2026-06-22 14:38:57
[2026-06-22 14:38:58,248.248 INFO    ] 2026-06-22 14:38:58
[2026-06-22 14:38:58,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:38:58,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:38:58,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:38:58,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:38:58,771.771 INFO    ] time= 22/06/2026 14:38:58
[2026-06-22 14:38:58,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:38:58,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:38:59,005.005 INFO    ] No existing commands found in stream
[2026-06-22 14:39:04,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:39:04,026.026 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-22 14:39:08,159.159 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:39:08,161.161 INFO    ] Checking for system updates...
[2026-06-22 14:39:08,197.197 INFO    ] 200
[2026-06-22 14:39:08,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:39:08,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:39:08,255.255 INFO    ] No update needed
[2026-06-22 14:39:08,257.257 INFO    ] Checking for camera pi updates...
[2026-06-22 14:39:08,291.291 INFO    ] 200
[2026-06-22 14:39:08,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:39:08,336.336 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:39:08,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:39:08,425.425 INFO    ] No camera update needed
[2026-06-22 14:39:08,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:39:08,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:39:08,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:39:08,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:39:10,480.480 INFO    ] ================================================
[2026-06-22 14:39:10,496.496 INFO    ] Launching Daemon at Mon Jun 22 14:39:10 IST 2026
[2026-06-22 14:39:10,507.507 INFO    ] ================================================
[2026-06-22 14:39:11,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:39:11
[2026-06-22 14:39:11,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:39:11,921.921 INFO    ] Initializing speech engine...
[2026-06-22 14:39:11,946.946 INFO    ] 2026-06-22 14:39:11
[2026-06-22 14:39:12,210.210 INFO    ] 2026-06-22 14:39:12
[2026-06-22 14:39:12,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:39:12,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:39:12,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:39:12,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:39:12,726.726 INFO    ] time= 22/06/2026 14:39:12
[2026-06-22 14:39:12,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:39:12,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:39:12,962.962 INFO    ] No existing commands found in stream
[2026-06-22 14:39:17,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:39:17,996.996 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-22 14:39:19,786.786 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:39:19,788.788 INFO    ] Checking for system updates...
[2026-06-22 14:39:19,825.825 INFO    ] 200
[2026-06-22 14:39:19,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:39:19,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:39:19,882.882 INFO    ] No update needed
[2026-06-22 14:39:19,885.885 INFO    ] Checking for camera pi updates...
[2026-06-22 14:39:19,919.919 INFO    ] 200
[2026-06-22 14:39:19,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:39:19,965.965 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:39:20,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:39:20,050.050 INFO    ] No camera update needed
[2026-06-22 14:39:20,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:39:20,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:39:20,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:39:20,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:39:22,108.108 INFO    ] ================================================
[2026-06-22 14:39:22,124.124 INFO    ] Launching Daemon at Mon Jun 22 14:39:22 IST 2026
[2026-06-22 14:39:22,136.136 INFO    ] ================================================
[2026-06-22 14:39:22,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:39:22
[2026-06-22 14:39:23,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:39:23,463.463 INFO    ] Initializing speech engine...
[2026-06-22 14:39:23,472.472 INFO    ] 2026-06-22 14:39:23
[2026-06-22 14:39:23,726.726 INFO    ] 2026-06-22 14:39:23
[2026-06-22 14:39:23,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:39:24,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:39:24,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:39:24,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:39:24,168.168 INFO    ] time= 22/06/2026 14:39:24
[2026-06-22 14:39:24,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:39:24,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:39:24,402.402 INFO    ] No existing commands found in stream
[2026-06-22 14:39:29,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:39:29,435.435 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-22 14:39:32,812.812 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:39:32,815.815 INFO    ] Checking for system updates...
[2026-06-22 14:39:32,851.851 INFO    ] 200
[2026-06-22 14:39:32,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:39:32,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:39:32,907.907 INFO    ] No update needed
[2026-06-22 14:39:32,910.910 INFO    ] Checking for camera pi updates...
[2026-06-22 14:39:32,943.943 INFO    ] 200
[2026-06-22 14:39:32,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:39:32,986.986 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:39:33,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:39:33,165.165 INFO    ] No camera update needed
[2026-06-22 14:39:33,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:39:33,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:39:33,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:39:33,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:39:35,227.227 INFO    ] ================================================
[2026-06-22 14:39:35,242.242 INFO    ] Launching Daemon at Mon Jun 22 14:39:35 IST 2026
[2026-06-22 14:39:35,254.254 INFO    ] ================================================
[2026-06-22 14:39:35,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:39:35
[2026-06-22 14:39:36,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:39:36,613.613 INFO    ] Initializing speech engine...
[2026-06-22 14:39:36,619.619 INFO    ] 2026-06-22 14:39:36
[2026-06-22 14:39:36,869.869 INFO    ] 2026-06-22 14:39:36
[2026-06-22 14:39:36,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:39:37,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:39:37,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:39:37,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:39:37,349.349 INFO    ] time= 22/06/2026 14:39:37
[2026-06-22 14:39:37,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:39:37,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:39:37,569.569 INFO    ] No existing commands found in stream
[2026-06-22 14:39:42,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:39:42,590.590 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-22 14:39:43,482.482 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:39:43,485.485 INFO    ] Checking for system updates...
[2026-06-22 14:39:43,521.521 INFO    ] 200
[2026-06-22 14:39:43,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:39:43,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:39:43,579.579 INFO    ] No update needed
[2026-06-22 14:39:43,582.582 INFO    ] Checking for camera pi updates...
[2026-06-22 14:39:43,615.615 INFO    ] 200
[2026-06-22 14:39:43,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:39:43,658.658 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:39:43,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:39:43,817.817 INFO    ] No camera update needed
[2026-06-22 14:39:43,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:39:43,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:39:43,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:39:43,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:39:45,875.875 INFO    ] ================================================
[2026-06-22 14:39:45,891.891 INFO    ] Launching Daemon at Mon Jun 22 14:39:45 IST 2026
[2026-06-22 14:39:45,902.902 INFO    ] ================================================
[2026-06-22 14:39:46,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:39:46
[2026-06-22 14:39:46,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:39:47,243.243 INFO    ] Initializing speech engine...
[2026-06-22 14:39:47,251.251 INFO    ] 2026-06-22 14:39:47
[2026-06-22 14:39:47,500.500 INFO    ] 2026-06-22 14:39:47
[2026-06-22 14:39:47,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:39:47,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:39:47,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:39:47,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:39:48,000.000 INFO    ] time= 22/06/2026 14:39:47
[2026-06-22 14:39:48,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:39:48,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:39:48,206.206 INFO    ] No existing commands found in stream
[2026-06-22 14:39:53,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:39:53,237.237 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-22 14:39:57,567.567 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:39:57,568.568 INFO    ] Checking for system updates...
[2026-06-22 14:39:57,589.589 INFO    ] 200
[2026-06-22 14:39:57,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:39:57,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:39:57,645.645 INFO    ] No update needed
[2026-06-22 14:39:57,648.648 INFO    ] Checking for camera pi updates...
[2026-06-22 14:39:57,682.682 INFO    ] 200
[2026-06-22 14:39:57,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:39:57,727.727 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:39:57,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:39:57,813.813 INFO    ] No camera update needed
[2026-06-22 14:39:57,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:39:57,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:39:57,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:39:57,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:39:59,880.880 INFO    ] ================================================
[2026-06-22 14:39:59,895.895 INFO    ] Launching Daemon at Mon Jun 22 14:39:59 IST 2026
[2026-06-22 14:39:59,905.905 INFO    ] ================================================
[2026-06-22 14:40:00,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:40:00
[2026-06-22 14:40:01,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:40:02,087.087 INFO    ] Initializing speech engine...
[2026-06-22 14:40:02,090.090 INFO    ] 2026-06-22 14:40:02
[2026-06-22 14:40:02,438.438 INFO    ] 2026-06-22 14:40:02
[2026-06-22 14:40:02,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:40:02,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:40:02,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:40:02,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:40:02,819.819 INFO    ] time= 22/06/2026 14:40:02
[2026-06-22 14:40:02,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:40:02,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:40:02,991.991 INFO    ] No existing commands found in stream
[2026-06-22 14:40:08,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:40:08,005.005 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-22 14:40:09,375.375 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:40:09,378.378 INFO    ] Checking for system updates...
[2026-06-22 14:40:09,414.414 INFO    ] 200
[2026-06-22 14:40:09,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:40:09,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:40:09,475.475 INFO    ] No update needed
[2026-06-22 14:40:09,478.478 INFO    ] Checking for camera pi updates...
[2026-06-22 14:40:09,511.511 INFO    ] 200
[2026-06-22 14:40:09,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:40:09,558.558 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:40:09,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:40:09,658.658 INFO    ] No camera update needed
[2026-06-22 14:40:09,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:40:09,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:40:09,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:40:09,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:40:11,714.714 INFO    ] ================================================
[2026-06-22 14:40:11,729.729 INFO    ] Launching Daemon at Mon Jun 22 14:40:11 IST 2026
[2026-06-22 14:40:11,740.740 INFO    ] ================================================
[2026-06-22 14:40:12,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:40:12
[2026-06-22 14:40:12,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:40:13,071.071 INFO    ] Initializing speech engine...
[2026-06-22 14:40:13,080.080 INFO    ] 2026-06-22 14:40:13
[2026-06-22 14:40:13,326.326 INFO    ] 2026-06-22 14:40:13
[2026-06-22 14:40:13,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:40:13,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:40:13,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:40:13,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:40:13,795.795 INFO    ] time= 22/06/2026 14:40:13
[2026-06-22 14:40:13,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:40:13,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:40:14,035.035 INFO    ] No existing commands found in stream
[2026-06-22 14:40:19,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:40:19,052.052 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-22 14:40:22,825.825 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:40:22,827.827 INFO    ] Checking for system updates...
[2026-06-22 14:40:22,848.848 INFO    ] 200
[2026-06-22 14:40:22,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:40:22,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:40:22,881.881 INFO    ] No update needed
[2026-06-22 14:40:22,882.882 INFO    ] Checking for camera pi updates...
[2026-06-22 14:40:22,902.902 INFO    ] 200
[2026-06-22 14:40:22,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:40:22,941.941 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:40:23,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:40:23,021.021 INFO    ] No camera update needed
[2026-06-22 14:40:23,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:40:23,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:40:23,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:40:23,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:40:25,077.077 INFO    ] ================================================
[2026-06-22 14:40:25,092.092 INFO    ] Launching Daemon at Mon Jun 22 14:40:25 IST 2026
[2026-06-22 14:40:25,103.103 INFO    ] ================================================
[2026-06-22 14:40:25,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:40:25
[2026-06-22 14:40:26,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:40:26,618.618 INFO    ] Initializing speech engine...
[2026-06-22 14:40:26,629.629 INFO    ] 2026-06-22 14:40:26
[2026-06-22 14:40:26,942.942 INFO    ] 2026-06-22 14:40:26
[2026-06-22 14:40:27,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:40:27,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:40:27,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:40:27,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:40:27,449.449 INFO    ] time= 22/06/2026 14:40:27
[2026-06-22 14:40:27,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:40:27,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:40:27,610.610 INFO    ] No existing commands found in stream
[2026-06-22 14:40:32,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:40:32,640.640 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-22 14:40:37,329.329 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:40:37,332.332 INFO    ] Checking for system updates...
[2026-06-22 14:40:37,377.377 INFO    ] 200
[2026-06-22 14:40:37,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:40:37,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:40:37,442.442 INFO    ] No update needed
[2026-06-22 14:40:37,445.445 INFO    ] Checking for camera pi updates...
[2026-06-22 14:40:37,482.482 INFO    ] 200
[2026-06-22 14:40:37,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:40:37,526.526 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:40:37,608.608 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:40:37,611.611 INFO    ] No camera update needed
[2026-06-22 14:40:37,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:40:37,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:40:37,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:40:37,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:40:39,669.669 INFO    ] ================================================
[2026-06-22 14:40:39,684.684 INFO    ] Launching Daemon at Mon Jun 22 14:40:39 IST 2026
[2026-06-22 14:40:39,695.695 INFO    ] ================================================
[2026-06-22 14:40:40,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:40:40
[2026-06-22 14:40:40,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:40:41,128.128 INFO    ] Initializing speech engine...
[2026-06-22 14:40:41,137.137 INFO    ] 2026-06-22 14:40:41
[2026-06-22 14:40:41,425.425 INFO    ] 2026-06-22 14:40:41
[2026-06-22 14:40:41,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:40:41,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:40:41,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:40:41,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:40:41,839.839 INFO    ] time= 22/06/2026 14:40:41
[2026-06-22 14:40:41,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:40:41,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:40:42,017.017 INFO    ] No existing commands found in stream
[2026-06-22 14:40:47,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:40:47,045.045 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-22 14:40:48,507.507 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:40:48,508.508 INFO    ] Checking for system updates...
[2026-06-22 14:40:48,530.530 INFO    ] 200
[2026-06-22 14:40:48,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:40:48,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:40:48,577.577 INFO    ] No update needed
[2026-06-22 14:40:48,580.580 INFO    ] Checking for camera pi updates...
[2026-06-22 14:40:48,614.614 INFO    ] 200
[2026-06-22 14:40:48,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:40:48,663.663 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:40:48,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:40:48,748.748 INFO    ] No camera update needed
[2026-06-22 14:40:48,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:40:48,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:40:48,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:40:48,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:40:50,806.806 INFO    ] ================================================
[2026-06-22 14:40:50,821.821 INFO    ] Launching Daemon at Mon Jun 22 14:40:50 IST 2026
[2026-06-22 14:40:50,832.832 INFO    ] ================================================
[2026-06-22 14:40:51,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:40:51
[2026-06-22 14:40:51,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:40:52,249.249 INFO    ] Initializing speech engine...
[2026-06-22 14:40:52,258.258 INFO    ] 2026-06-22 14:40:52
[2026-06-22 14:40:52,510.510 INFO    ] 2026-06-22 14:40:52
[2026-06-22 14:40:52,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:40:52,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:40:52,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:40:52,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:40:53,009.009 INFO    ] time= 22/06/2026 14:40:52
[2026-06-22 14:40:53,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:40:53,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:40:53,208.208 INFO    ] No existing commands found in stream
[2026-06-22 14:40:58,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:40:58,227.227 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-22 14:41:01,804.804 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:41:01,814.814 INFO    ] Checking for system updates...
[2026-06-22 14:41:01,927.927 INFO    ] 200
[2026-06-22 14:41:01,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:41:02,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:41:02,006.006 INFO    ] No update needed
[2026-06-22 14:41:02,009.009 INFO    ] Checking for camera pi updates...
[2026-06-22 14:41:02,048.048 INFO    ] 200
[2026-06-22 14:41:02,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:41:02,101.101 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:41:02,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:41:02,162.162 INFO    ] No camera update needed
[2026-06-22 14:41:02,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:41:02,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:41:02,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:41:02,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:41:04,226.226 INFO    ] ================================================
[2026-06-22 14:41:04,241.241 INFO    ] Launching Daemon at Mon Jun 22 14:41:04 IST 2026
[2026-06-22 14:41:04,252.252 INFO    ] ================================================
[2026-06-22 14:41:04,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:41:04
[2026-06-22 14:41:05,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:41:05,681.681 INFO    ] Initializing speech engine...
[2026-06-22 14:41:05,690.690 INFO    ] 2026-06-22 14:41:05
[2026-06-22 14:41:05,940.940 INFO    ] 2026-06-22 14:41:05
[2026-06-22 14:41:05,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:41:06,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:41:06,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:41:06,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:41:06,411.411 INFO    ] time= 22/06/2026 14:41:06
[2026-06-22 14:41:06,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:41:06,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:41:06,572.572 INFO    ] No existing commands found in stream
[2026-06-22 14:41:11,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:41:11,602.602 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-22 14:41:15,472.472 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:41:15,475.475 INFO    ] Checking for system updates...
[2026-06-22 14:41:15,510.510 INFO    ] 200
[2026-06-22 14:41:15,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:41:15,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:41:15,569.569 INFO    ] No update needed
[2026-06-22 14:41:15,571.571 INFO    ] Checking for camera pi updates...
[2026-06-22 14:41:15,604.604 INFO    ] 200
[2026-06-22 14:41:15,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:41:15,648.648 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:41:15,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:41:15,699.699 INFO    ] No camera update needed
[2026-06-22 14:41:15,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:41:15,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:41:15,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:41:15,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:41:17,758.758 INFO    ] ================================================
[2026-06-22 14:41:17,774.774 INFO    ] Launching Daemon at Mon Jun 22 14:41:17 IST 2026
[2026-06-22 14:41:17,785.785 INFO    ] ================================================
[2026-06-22 14:41:18,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:41:18
[2026-06-22 14:41:18,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:41:19,129.129 INFO    ] Initializing speech engine...
[2026-06-22 14:41:19,135.135 INFO    ] 2026-06-22 14:41:19
[2026-06-22 14:41:19,382.382 INFO    ] 2026-06-22 14:41:19
[2026-06-22 14:41:19,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:41:19,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:41:19,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:41:19,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:41:19,862.862 INFO    ] time= 22/06/2026 14:41:19
[2026-06-22 14:41:19,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:41:19,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:41:20,109.109 INFO    ] No existing commands found in stream
[2026-06-22 14:41:25,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:41:25,123.123 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-22 14:41:26,226.226 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:41:26,228.228 INFO    ] Checking for system updates...
[2026-06-22 14:41:26,264.264 INFO    ] 200
[2026-06-22 14:41:26,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:41:26,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:41:26,322.322 INFO    ] No update needed
[2026-06-22 14:41:26,324.324 INFO    ] Checking for camera pi updates...
[2026-06-22 14:41:26,358.358 INFO    ] 200
[2026-06-22 14:41:26,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:41:26,401.401 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:41:26,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:41:26,454.454 INFO    ] No camera update needed
[2026-06-22 14:41:26,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:41:26,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:41:26,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:41:26,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:41:28,511.511 INFO    ] ================================================
[2026-06-22 14:41:28,526.526 INFO    ] Launching Daemon at Mon Jun 22 14:41:28 IST 2026
[2026-06-22 14:41:28,538.538 INFO    ] ================================================
[2026-06-22 14:41:29,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:41:29
[2026-06-22 14:41:29,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:41:29,861.861 INFO    ] Initializing speech engine...
[2026-06-22 14:41:29,876.876 INFO    ] 2026-06-22 14:41:29
[2026-06-22 14:41:30,147.147 INFO    ] 2026-06-22 14:41:30
[2026-06-22 14:41:30,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:41:30,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:41:30,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:41:30,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:41:30,561.561 INFO    ] time= 22/06/2026 14:41:30
[2026-06-22 14:41:30,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:41:30,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:41:30,667.667 INFO    ] No existing commands found in stream
[2026-06-22 14:41:35,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:41:35,700.700 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-22 14:41:39,525.525 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:41:39,528.528 INFO    ] Checking for system updates...
[2026-06-22 14:41:39,565.565 INFO    ] 200
[2026-06-22 14:41:39,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:41:39,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:41:39,623.623 INFO    ] No update needed
[2026-06-22 14:41:39,625.625 INFO    ] Checking for camera pi updates...
[2026-06-22 14:41:39,662.662 INFO    ] 200
[2026-06-22 14:41:39,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:41:39,706.706 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:41:39,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:41:39,892.892 INFO    ] No camera update needed
[2026-06-22 14:41:39,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:41:39,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:41:39,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:41:39,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:41:41,950.950 INFO    ] ================================================
[2026-06-22 14:41:41,965.965 INFO    ] Launching Daemon at Mon Jun 22 14:41:41 IST 2026
[2026-06-22 14:41:41,977.977 INFO    ] ================================================
[2026-06-22 14:41:42,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:41:42
[2026-06-22 14:41:43,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:41:43,482.482 INFO    ] Initializing speech engine...
[2026-06-22 14:41:43,490.490 INFO    ] 2026-06-22 14:41:43
[2026-06-22 14:41:43,768.768 INFO    ] 2026-06-22 14:41:43
[2026-06-22 14:41:43,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:41:44,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:41:44,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:41:44,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:41:44,332.332 INFO    ] time= 22/06/2026 14:41:44
[2026-06-22 14:41:44,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:41:44,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:41:45,486.486 INFO    ] No existing commands found in stream
[2026-06-22 14:41:50,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:41:50,502.502 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-22 14:41:53,741.741 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:41:53,744.744 INFO    ] Checking for system updates...
[2026-06-22 14:41:53,781.781 INFO    ] 200
[2026-06-22 14:41:53,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:41:53,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:41:53,841.841 INFO    ] No update needed
[2026-06-22 14:41:53,844.844 INFO    ] Checking for camera pi updates...
[2026-06-22 14:41:53,879.879 INFO    ] 200
[2026-06-22 14:41:53,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:41:53,922.922 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:41:54,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:41:54,024.024 INFO    ] No camera update needed
[2026-06-22 14:41:54,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:41:54,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:41:54,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:41:54,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:41:56,082.082 INFO    ] ================================================
[2026-06-22 14:41:56,097.097 INFO    ] Launching Daemon at Mon Jun 22 14:41:56 IST 2026
[2026-06-22 14:41:56,108.108 INFO    ] ================================================
[2026-06-22 14:41:56,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:41:56
[2026-06-22 14:41:57,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:41:57,457.457 INFO    ] Initializing speech engine...
[2026-06-22 14:41:57,465.465 INFO    ] 2026-06-22 14:41:57
[2026-06-22 14:41:57,726.726 INFO    ] 2026-06-22 14:41:57
[2026-06-22 14:41:57,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:41:57,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:41:57,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:41:58,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:41:58,213.213 INFO    ] time= 22/06/2026 14:41:58
[2026-06-22 14:41:58,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:41:58,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:41:58,366.366 INFO    ] No existing commands found in stream
[2026-06-22 14:42:03,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:42:03,391.391 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-22 14:42:04,910.910 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:42:04,913.913 INFO    ] Checking for system updates...
[2026-06-22 14:42:04,953.953 INFO    ] 200
[2026-06-22 14:42:04,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:42:05,010.010 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:42:05,012.012 INFO    ] No update needed
[2026-06-22 14:42:05,015.015 INFO    ] Checking for camera pi updates...
[2026-06-22 14:42:05,049.049 INFO    ] 200
[2026-06-22 14:42:05,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:42:05,092.092 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:42:05,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:42:05,175.175 INFO    ] No camera update needed
[2026-06-22 14:42:05,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:42:05,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:42:05,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:42:05,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:42:07,230.230 INFO    ] ================================================
[2026-06-22 14:42:07,246.246 INFO    ] Launching Daemon at Mon Jun 22 14:42:07 IST 2026
[2026-06-22 14:42:07,257.257 INFO    ] ================================================
[2026-06-22 14:42:07,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:42:07
[2026-06-22 14:42:08,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:42:08,723.723 INFO    ] Initializing speech engine...
[2026-06-22 14:42:08,736.736 INFO    ] 2026-06-22 14:42:08
[2026-06-22 14:42:09,047.047 INFO    ] 2026-06-22 14:42:09
[2026-06-22 14:42:09,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:42:09,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:42:09,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:42:09,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:42:09,554.554 INFO    ] time= 22/06/2026 14:42:09
[2026-06-22 14:42:09,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:42:09,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:42:09,722.722 INFO    ] No existing commands found in stream
[2026-06-22 14:42:14,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:42:14,752.752 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-22 14:42:18,152.152 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:42:18,155.155 INFO    ] Checking for system updates...
[2026-06-22 14:42:18,193.193 INFO    ] 200
[2026-06-22 14:42:18,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:42:18,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:42:18,259.259 INFO    ] No update needed
[2026-06-22 14:42:18,262.262 INFO    ] Checking for camera pi updates...
[2026-06-22 14:42:18,297.297 INFO    ] 200
[2026-06-22 14:42:18,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:42:18,341.341 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:42:18,424.424 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:42:18,427.427 INFO    ] No camera update needed
[2026-06-22 14:42:18,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:42:18,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:42:18,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:42:18,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:42:20,487.487 INFO    ] ================================================
[2026-06-22 14:42:20,503.503 INFO    ] Launching Daemon at Mon Jun 22 14:42:20 IST 2026
[2026-06-22 14:42:20,514.514 INFO    ] ================================================
[2026-06-22 14:42:21,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:42:21
[2026-06-22 14:42:21,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:42:22,051.051 INFO    ] Initializing speech engine...
[2026-06-22 14:42:22,058.058 INFO    ] 2026-06-22 14:42:22
[2026-06-22 14:42:22,334.334 INFO    ] 2026-06-22 14:42:22
[2026-06-22 14:42:22,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:42:22,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:42:22,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:42:22,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:42:22,846.846 INFO    ] time= 22/06/2026 14:42:22
[2026-06-22 14:42:22,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:42:22,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:42:23,039.039 INFO    ] No existing commands found in stream
[2026-06-22 14:42:28,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:42:28,073.073 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-22 14:42:30,548.548 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:42:30,551.551 INFO    ] Checking for system updates...
[2026-06-22 14:42:30,588.588 INFO    ] 200
[2026-06-22 14:42:30,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:42:30,646.646 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:42:30,649.649 INFO    ] No update needed
[2026-06-22 14:42:30,651.651 INFO    ] Checking for camera pi updates...
[2026-06-22 14:42:30,687.687 INFO    ] 200
[2026-06-22 14:42:30,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:42:30,736.736 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:42:30,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:42:30,826.826 INFO    ] No camera update needed
[2026-06-22 14:42:30,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:42:30,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:42:30,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:42:30,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:42:32,885.885 INFO    ] ================================================
[2026-06-22 14:42:32,900.900 INFO    ] Launching Daemon at Mon Jun 22 14:42:32 IST 2026
[2026-06-22 14:42:32,911.911 INFO    ] ================================================
[2026-06-22 14:42:33,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:42:33
[2026-06-22 14:42:34,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:42:34,314.314 INFO    ] Initializing speech engine...
[2026-06-22 14:42:34,337.337 INFO    ] 2026-06-22 14:42:34
[2026-06-22 14:42:34,592.592 INFO    ] 2026-06-22 14:42:34
[2026-06-22 14:42:34,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:42:34,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:42:34,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:42:35,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:42:35,073.073 INFO    ] time= 22/06/2026 14:42:35
[2026-06-22 14:42:35,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:42:35,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:42:35,309.309 INFO    ] No existing commands found in stream
[2026-06-22 14:42:40,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:42:40,330.330 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-22 14:42:44,286.286 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:42:44,287.287 INFO    ] Checking for system updates...
[2026-06-22 14:42:44,310.310 INFO    ] 200
[2026-06-22 14:42:44,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:42:44,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:42:44,349.349 INFO    ] No update needed
[2026-06-22 14:42:44,350.350 INFO    ] Checking for camera pi updates...
[2026-06-22 14:42:44,372.372 INFO    ] 200
[2026-06-22 14:42:44,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:42:44,417.417 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:42:44,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:42:44,501.501 INFO    ] No camera update needed
[2026-06-22 14:42:44,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:42:44,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:42:44,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:42:44,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:42:46,560.560 INFO    ] ================================================
[2026-06-22 14:42:46,576.576 INFO    ] Launching Daemon at Mon Jun 22 14:42:46 IST 2026
[2026-06-22 14:42:46,587.587 INFO    ] ================================================
[2026-06-22 14:42:47,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:42:47
[2026-06-22 14:42:47,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:42:48,045.045 INFO    ] Initializing speech engine...
[2026-06-22 14:42:48,051.051 INFO    ] 2026-06-22 14:42:48
[2026-06-22 14:42:48,313.313 INFO    ] 2026-06-22 14:42:48
[2026-06-22 14:42:48,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:42:48,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:42:48,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:42:48,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:42:48,873.873 INFO    ] time= 22/06/2026 14:42:48
[2026-06-22 14:42:48,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:42:48,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:42:49,025.025 INFO    ] No existing commands found in stream
[2026-06-22 14:42:54,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:42:54,059.059 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-22 14:42:57,727.727 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:42:57,730.730 INFO    ] Checking for system updates...
[2026-06-22 14:42:57,769.769 INFO    ] 200
[2026-06-22 14:42:57,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:42:57,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:42:57,830.830 INFO    ] No update needed
[2026-06-22 14:42:57,833.833 INFO    ] Checking for camera pi updates...
[2026-06-22 14:42:57,868.868 INFO    ] 200
[2026-06-22 14:42:57,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:42:57,914.914 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:42:57,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:42:58,001.001 INFO    ] No camera update needed
[2026-06-22 14:42:58,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:42:58,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:42:58,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:42:58,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:43:00,062.062 INFO    ] ================================================
[2026-06-22 14:43:00,077.077 INFO    ] Launching Daemon at Mon Jun 22 14:43:00 IST 2026
[2026-06-22 14:43:00,094.094 INFO    ] ================================================
[2026-06-22 14:43:00,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:43:00
[2026-06-22 14:43:01,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:43:01,700.700 INFO    ] Initializing speech engine...
[2026-06-22 14:43:01,703.703 INFO    ] 2026-06-22 14:43:01
[2026-06-22 14:43:02,074.074 INFO    ] 2026-06-22 14:43:02
[2026-06-22 14:43:02,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:43:02,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:43:02,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:43:02,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:43:02,609.609 INFO    ] time= 22/06/2026 14:43:02
[2026-06-22 14:43:02,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:43:02,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:43:02,741.741 INFO    ] No existing commands found in stream
[2026-06-22 14:43:07,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:43:07,779.779 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-22 14:43:08,959.959 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:43:08,962.962 INFO    ] Checking for system updates...
[2026-06-22 14:43:08,997.997 INFO    ] 200
[2026-06-22 14:43:09,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:43:09,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:43:09,055.055 INFO    ] No update needed
[2026-06-22 14:43:09,057.057 INFO    ] Checking for camera pi updates...
[2026-06-22 14:43:09,091.091 INFO    ] 200
[2026-06-22 14:43:09,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:43:09,139.139 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:43:09,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:43:09,225.225 INFO    ] No camera update needed
[2026-06-22 14:43:09,227.227 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:43:09,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:43:09,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:43:09,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:43:11,279.279 INFO    ] ================================================
[2026-06-22 14:43:11,294.294 INFO    ] Launching Daemon at Mon Jun 22 14:43:11 IST 2026
[2026-06-22 14:43:11,306.306 INFO    ] ================================================
[2026-06-22 14:43:11,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:43:11
[2026-06-22 14:43:12,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:43:12,749.749 INFO    ] Initializing speech engine...
[2026-06-22 14:43:12,754.754 INFO    ] 2026-06-22 14:43:12
[2026-06-22 14:43:13,003.003 INFO    ] 2026-06-22 14:43:12
[2026-06-22 14:43:13,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:43:13,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:43:13,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:43:13,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:43:13,381.381 INFO    ] time= 22/06/2026 14:43:13
[2026-06-22 14:43:13,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:43:13,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:43:13,580.580 INFO    ] No existing commands found in stream
[2026-06-22 14:43:18,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:43:18,598.598 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-22 14:43:22,204.204 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:43:22,205.205 INFO    ] Checking for system updates...
[2026-06-22 14:43:22,240.240 INFO    ] 200
[2026-06-22 14:43:22,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:43:22,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:43:22,297.297 INFO    ] No update needed
[2026-06-22 14:43:22,299.299 INFO    ] Checking for camera pi updates...
[2026-06-22 14:43:22,337.337 INFO    ] 200
[2026-06-22 14:43:22,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:43:22,379.379 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:43:22,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:43:22,462.462 INFO    ] No camera update needed
[2026-06-22 14:43:22,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:43:22,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:43:22,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:43:22,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:43:24,517.517 INFO    ] ================================================
[2026-06-22 14:43:24,532.532 INFO    ] Launching Daemon at Mon Jun 22 14:43:24 IST 2026
[2026-06-22 14:43:24,546.546 INFO    ] ================================================
[2026-06-22 14:43:25,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:43:25
[2026-06-22 14:43:25,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:43:25,878.878 INFO    ] Initializing speech engine...
[2026-06-22 14:43:25,887.887 INFO    ] 2026-06-22 14:43:25
[2026-06-22 14:43:26,139.139 INFO    ] 2026-06-22 14:43:26
[2026-06-22 14:43:26,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:43:26,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:43:26,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:43:26,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:43:26,616.616 INFO    ] time= 22/06/2026 14:43:26
[2026-06-22 14:43:26,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:43:26,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:43:26,815.815 INFO    ] No existing commands found in stream
[2026-06-22 14:43:31,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:43:31,850.850 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-22 14:43:35,817.817 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:43:35,819.819 INFO    ] Checking for system updates...
[2026-06-22 14:43:35,844.844 INFO    ] 200
[2026-06-22 14:43:35,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:43:35,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:43:35,902.902 INFO    ] No update needed
[2026-06-22 14:43:35,904.904 INFO    ] Checking for camera pi updates...
[2026-06-22 14:43:35,939.939 INFO    ] 200
[2026-06-22 14:43:35,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:43:35,982.982 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:43:36,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:43:36,065.065 INFO    ] No camera update needed
[2026-06-22 14:43:36,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:43:36,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:43:36,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:43:36,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:43:38,122.122 INFO    ] ================================================
[2026-06-22 14:43:38,137.137 INFO    ] Launching Daemon at Mon Jun 22 14:43:38 IST 2026
[2026-06-22 14:43:38,148.148 INFO    ] ================================================
[2026-06-22 14:43:38,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:43:38
[2026-06-22 14:43:39,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:43:39,514.514 INFO    ] Initializing speech engine...
[2026-06-22 14:43:39,525.525 INFO    ] 2026-06-22 14:43:39
[2026-06-22 14:43:39,771.771 INFO    ] 2026-06-22 14:43:39
[2026-06-22 14:43:39,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:43:40,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:43:40,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:43:40,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:43:40,265.265 INFO    ] time= 22/06/2026 14:43:40
[2026-06-22 14:43:40,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:43:40,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:43:40,485.485 INFO    ] No existing commands found in stream
[2026-06-22 14:43:45,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:43:45,506.506 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-22 14:43:47,238.238 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:43:47,241.241 INFO    ] Checking for system updates...
[2026-06-22 14:43:47,278.278 INFO    ] 200
[2026-06-22 14:43:47,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:43:47,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:43:47,337.337 INFO    ] No update needed
[2026-06-22 14:43:47,340.340 INFO    ] Checking for camera pi updates...
[2026-06-22 14:43:47,378.378 INFO    ] 200
[2026-06-22 14:43:47,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:43:47,427.427 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:43:47,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:43:47,607.607 INFO    ] No camera update needed
[2026-06-22 14:43:47,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:43:47,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:43:47,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:43:47,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:43:49,667.667 INFO    ] ================================================
[2026-06-22 14:43:49,682.682 INFO    ] Launching Daemon at Mon Jun 22 14:43:49 IST 2026
[2026-06-22 14:43:49,692.692 INFO    ] ================================================
[2026-06-22 14:43:50,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:43:50
[2026-06-22 14:43:50,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:43:51,008.008 INFO    ] Initializing speech engine...
[2026-06-22 14:43:51,021.021 INFO    ] 2026-06-22 14:43:51
[2026-06-22 14:43:51,288.288 INFO    ] 2026-06-22 14:43:51
[2026-06-22 14:43:51,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:43:51,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:43:51,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:43:51,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:43:51,771.771 INFO    ] time= 22/06/2026 14:43:51
[2026-06-22 14:43:51,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:43:51,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:43:52,024.024 INFO    ] No existing commands found in stream
[2026-06-22 14:43:57,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:43:57,055.055 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-22 14:44:00,308.308 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:44:00,310.310 INFO    ] Checking for system updates...
[2026-06-22 14:44:00,350.350 INFO    ] 200
[2026-06-22 14:44:00,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:44:00,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:44:00,414.414 INFO    ] No update needed
[2026-06-22 14:44:00,417.417 INFO    ] Checking for camera pi updates...
[2026-06-22 14:44:00,450.450 INFO    ] 200
[2026-06-22 14:44:00,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:44:00,493.493 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:44:00,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:44:00,564.564 INFO    ] No camera update needed
[2026-06-22 14:44:00,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:44:00,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:44:00,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:44:00,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:44:02,629.629 INFO    ] ================================================
[2026-06-22 14:44:02,656.656 INFO    ] Launching Daemon at Mon Jun 22 14:44:02 IST 2026
[2026-06-22 14:44:02,688.688 INFO    ] ================================================
[2026-06-22 14:44:03,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:44:03
[2026-06-22 14:44:03,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:44:04,181.181 INFO    ] Initializing speech engine...
[2026-06-22 14:44:04,194.194 INFO    ] 2026-06-22 14:44:04
[2026-06-22 14:44:04,463.463 INFO    ] 2026-06-22 14:44:04
[2026-06-22 14:44:04,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:44:04,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:44:04,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:44:04,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:44:04,908.908 INFO    ] time= 22/06/2026 14:44:04
[2026-06-22 14:44:04,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:44:04,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:44:05,096.096 INFO    ] No existing commands found in stream
[2026-06-22 14:44:10,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:44:10,110.110 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-22 14:44:11,110.110 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:44:11,113.113 INFO    ] Checking for system updates...
[2026-06-22 14:44:11,149.149 INFO    ] 200
[2026-06-22 14:44:11,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:44:11,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:44:11,211.211 INFO    ] No update needed
[2026-06-22 14:44:11,214.214 INFO    ] Checking for camera pi updates...
[2026-06-22 14:44:11,247.247 INFO    ] 200
[2026-06-22 14:44:11,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:44:11,294.294 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:44:11,409.409 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:44:11,411.411 INFO    ] No camera update needed
[2026-06-22 14:44:11,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:44:11,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:44:11,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:44:11,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:44:13,468.468 INFO    ] ================================================
[2026-06-22 14:44:13,487.487 INFO    ] Launching Daemon at Mon Jun 22 14:44:13 IST 2026
[2026-06-22 14:44:13,498.498 INFO    ] ================================================
[2026-06-22 14:44:14,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:44:14
[2026-06-22 14:44:14,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:44:14,831.831 INFO    ] Initializing speech engine...
[2026-06-22 14:44:14,852.852 INFO    ] 2026-06-22 14:44:14
[2026-06-22 14:44:15,121.121 INFO    ] 2026-06-22 14:44:15
[2026-06-22 14:44:15,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:44:15,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:44:15,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:44:15,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:44:15,538.538 INFO    ] time= 22/06/2026 14:44:15
[2026-06-22 14:44:15,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:44:15,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:44:15,696.696 INFO    ] No existing commands found in stream
[2026-06-22 14:44:20,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:44:20,724.724 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-22 14:44:22,805.805 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:44:22,807.807 INFO    ] Checking for system updates...
[2026-06-22 14:44:22,828.828 INFO    ] 200
[2026-06-22 14:44:22,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:44:22,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:44:22,872.872 INFO    ] No update needed
[2026-06-22 14:44:22,875.875 INFO    ] Checking for camera pi updates...
[2026-06-22 14:44:22,908.908 INFO    ] 200
[2026-06-22 14:44:22,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:44:22,956.956 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:44:23,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:44:23,050.050 INFO    ] No camera update needed
[2026-06-22 14:44:23,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:44:23,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:44:23,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:44:23,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:44:25,104.104 INFO    ] ================================================
[2026-06-22 14:44:25,119.119 INFO    ] Launching Daemon at Mon Jun 22 14:44:25 IST 2026
[2026-06-22 14:44:25,130.130 INFO    ] ================================================
[2026-06-22 14:44:25,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:44:25
[2026-06-22 14:44:26,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:44:26,449.449 INFO    ] Initializing speech engine...
[2026-06-22 14:44:26,457.457 INFO    ] 2026-06-22 14:44:26
[2026-06-22 14:44:26,750.750 INFO    ] 2026-06-22 14:44:26
[2026-06-22 14:44:26,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:44:26,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:44:26,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:44:27,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:44:27,130.130 INFO    ] time= 22/06/2026 14:44:27
[2026-06-22 14:44:27,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:44:27,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:44:27,253.253 INFO    ] No existing commands found in stream
[2026-06-22 14:44:32,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:44:32,269.269 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-22 14:44:35,356.356 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:44:35,358.358 INFO    ] Checking for system updates...
[2026-06-22 14:44:35,394.394 INFO    ] 200
[2026-06-22 14:44:35,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:44:35,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:44:35,452.452 INFO    ] No update needed
[2026-06-22 14:44:35,454.454 INFO    ] Checking for camera pi updates...
[2026-06-22 14:44:35,489.489 INFO    ] 200
[2026-06-22 14:44:35,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:44:35,535.535 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:44:35,608.608 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:44:35,610.610 INFO    ] No camera update needed
[2026-06-22 14:44:35,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:44:35,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:44:35,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:44:35,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:44:37,667.667 INFO    ] ================================================
[2026-06-22 14:44:37,682.682 INFO    ] Launching Daemon at Mon Jun 22 14:44:37 IST 2026
[2026-06-22 14:44:37,693.693 INFO    ] ================================================
[2026-06-22 14:44:38,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:44:38
[2026-06-22 14:44:38,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:44:39,129.129 INFO    ] Initializing speech engine...
[2026-06-22 14:44:39,140.140 INFO    ] 2026-06-22 14:44:39
[2026-06-22 14:44:39,389.389 INFO    ] 2026-06-22 14:44:39
[2026-06-22 14:44:39,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:44:39,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:44:39,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:44:39,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:44:39,891.891 INFO    ] time= 22/06/2026 14:44:39
[2026-06-22 14:44:39,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:44:39,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:44:40,098.098 INFO    ] No existing commands found in stream
[2026-06-22 14:44:45,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:44:45,112.112 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-22 14:44:47,543.543 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:44:47,545.545 INFO    ] Checking for system updates...
[2026-06-22 14:44:47,583.583 INFO    ] 200
[2026-06-22 14:44:47,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:44:47,646.646 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:44:47,648.648 INFO    ] No update needed
[2026-06-22 14:44:47,651.651 INFO    ] Checking for camera pi updates...
[2026-06-22 14:44:47,686.686 INFO    ] 200
[2026-06-22 14:44:47,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:44:47,734.734 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:44:47,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:44:47,811.811 INFO    ] No camera update needed
[2026-06-22 14:44:47,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:44:47,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:44:47,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:44:47,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:44:49,868.868 INFO    ] ================================================
[2026-06-22 14:44:49,883.883 INFO    ] Launching Daemon at Mon Jun 22 14:44:49 IST 2026
[2026-06-22 14:44:49,894.894 INFO    ] ================================================
[2026-06-22 14:44:50,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:44:50
[2026-06-22 14:44:50,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:44:51,257.257 INFO    ] Initializing speech engine...
[2026-06-22 14:44:51,267.267 INFO    ] 2026-06-22 14:44:51
[2026-06-22 14:44:51,531.531 INFO    ] 2026-06-22 14:44:51
[2026-06-22 14:44:51,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:44:51,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:44:51,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:44:52,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:44:52,079.079 INFO    ] time= 22/06/2026 14:44:52
[2026-06-22 14:44:52,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:44:52,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:44:52,251.251 INFO    ] No existing commands found in stream
[2026-06-22 14:44:57,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:44:57,285.285 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-22 14:45:00,836.836 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:45:00,839.839 INFO    ] Checking for system updates...
[2026-06-22 14:45:00,877.877 INFO    ] 200
[2026-06-22 14:45:00,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:45:00,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:45:00,936.936 INFO    ] No update needed
[2026-06-22 14:45:00,939.939 INFO    ] Checking for camera pi updates...
[2026-06-22 14:45:00,974.974 INFO    ] 200
[2026-06-22 14:45:00,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:45:01,024.024 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:45:01,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:45:01,126.126 INFO    ] No camera update needed
[2026-06-22 14:45:01,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:45:01,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:45:01,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:45:01,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:45:03,204.204 INFO    ] ================================================
[2026-06-22 14:45:03,230.230 INFO    ] Launching Daemon at Mon Jun 22 14:45:03 IST 2026
[2026-06-22 14:45:03,247.247 INFO    ] ================================================
[2026-06-22 14:45:03,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:45:03
[2026-06-22 14:45:04,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:45:04,782.782 INFO    ] Initializing speech engine...
[2026-06-22 14:45:04,794.794 INFO    ] 2026-06-22 14:45:04
[2026-06-22 14:45:05,077.077 INFO    ] 2026-06-22 14:45:05
[2026-06-22 14:45:05,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:45:05,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:45:05,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:45:05,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:45:05,561.561 INFO    ] time= 22/06/2026 14:45:05
[2026-06-22 14:45:05,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:45:05,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:45:05,786.786 INFO    ] No existing commands found in stream
[2026-06-22 14:45:10,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:45:10,819.819 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-22 14:45:14,304.304 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:45:14,306.306 INFO    ] Checking for system updates...
[2026-06-22 14:45:14,327.327 INFO    ] 200
[2026-06-22 14:45:14,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:45:14,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:45:14,362.362 INFO    ] No update needed
[2026-06-22 14:45:14,363.363 INFO    ] Checking for camera pi updates...
[2026-06-22 14:45:14,383.383 INFO    ] 200
[2026-06-22 14:45:14,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:45:14,412.412 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:45:14,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:45:14,499.499 INFO    ] No camera update needed
[2026-06-22 14:45:14,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:45:14,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:45:14,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:45:14,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:45:16,555.555 INFO    ] ================================================
[2026-06-22 14:45:16,570.570 INFO    ] Launching Daemon at Mon Jun 22 14:45:16 IST 2026
[2026-06-22 14:45:16,581.581 INFO    ] ================================================
[2026-06-22 14:45:17,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:45:17
[2026-06-22 14:45:17,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:45:18,024.024 INFO    ] Initializing speech engine...
[2026-06-22 14:45:18,033.033 INFO    ] 2026-06-22 14:45:18
[2026-06-22 14:45:18,298.298 INFO    ] 2026-06-22 14:45:18
[2026-06-22 14:45:18,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:45:18,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:45:18,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:45:18,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:45:18,795.795 INFO    ] time= 22/06/2026 14:45:18
[2026-06-22 14:45:18,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:45:18,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:45:19,000.000 INFO    ] No existing commands found in stream
[2026-06-22 14:45:24,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:45:24,020.020 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-22 14:45:25,377.377 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:45:25,378.378 INFO    ] Checking for system updates...
[2026-06-22 14:45:25,399.399 INFO    ] 200
[2026-06-22 14:45:25,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:45:25,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:45:25,462.462 INFO    ] No update needed
[2026-06-22 14:45:25,464.464 INFO    ] Checking for camera pi updates...
[2026-06-22 14:45:25,501.501 INFO    ] 200
[2026-06-22 14:45:25,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:45:25,549.549 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:45:25,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:45:25,632.632 INFO    ] No camera update needed
[2026-06-22 14:45:25,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:45:25,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:45:25,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:45:25,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:45:27,693.693 INFO    ] ================================================
[2026-06-22 14:45:27,708.708 INFO    ] Launching Daemon at Mon Jun 22 14:45:27 IST 2026
[2026-06-22 14:45:27,719.719 INFO    ] ================================================
[2026-06-22 14:45:28,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:45:28
[2026-06-22 14:45:28,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:45:29,224.224 INFO    ] Initializing speech engine...
[2026-06-22 14:45:29,235.235 INFO    ] 2026-06-22 14:45:29
[2026-06-22 14:45:29,518.518 INFO    ] 2026-06-22 14:45:29
[2026-06-22 14:45:29,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:45:29,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:45:29,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:45:30,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:45:30,049.049 INFO    ] time= 22/06/2026 14:45:30
[2026-06-22 14:45:30,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:45:30,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:45:30,185.185 INFO    ] No existing commands found in stream
[2026-06-22 14:45:35,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:45:35,217.217 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-22 14:45:38,672.672 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:45:38,673.673 INFO    ] Checking for system updates...
[2026-06-22 14:45:38,696.696 INFO    ] 200
[2026-06-22 14:45:38,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:45:38,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:45:38,738.738 INFO    ] No update needed
[2026-06-22 14:45:38,741.741 INFO    ] Checking for camera pi updates...
[2026-06-22 14:45:38,776.776 INFO    ] 200
[2026-06-22 14:45:38,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:45:38,824.824 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:45:38,914.914 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:45:38,917.917 INFO    ] No camera update needed
[2026-06-22 14:45:38,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:45:38,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:45:38,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:45:38,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:45:40,976.976 INFO    ] ================================================
[2026-06-22 14:45:40,991.991 INFO    ] Launching Daemon at Mon Jun 22 14:45:40 IST 2026
[2026-06-22 14:45:41,002.002 INFO    ] ================================================
[2026-06-22 14:45:41,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:45:41
[2026-06-22 14:45:42,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:45:42,468.468 INFO    ] Initializing speech engine...
[2026-06-22 14:45:42,474.474 INFO    ] 2026-06-22 14:45:42
[2026-06-22 14:45:42,736.736 INFO    ] 2026-06-22 14:45:42
[2026-06-22 14:45:42,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:45:43,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:45:43,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:45:43,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:45:43,611.611 INFO    ] time= 22/06/2026 14:45:43
[2026-06-22 14:45:43,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:45:43,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:45:43,846.846 INFO    ] No existing commands found in stream
[2026-06-22 14:45:48,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:45:48,859.859 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-22 14:45:50,664.664 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:45:50,666.666 INFO    ] Checking for system updates...
[2026-06-22 14:45:50,688.688 INFO    ] 200
[2026-06-22 14:45:50,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:45:50,722.722 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:45:50,724.724 INFO    ] No update needed
[2026-06-22 14:45:50,726.726 INFO    ] Checking for camera pi updates...
[2026-06-22 14:45:50,761.761 INFO    ] 200
[2026-06-22 14:45:50,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:45:50,805.805 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:45:51,002.002 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:45:51,005.005 INFO    ] No camera update needed
[2026-06-22 14:45:51,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:45:51,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:45:51,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:45:51,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:45:53,061.061 INFO    ] ================================================
[2026-06-22 14:45:53,077.077 INFO    ] Launching Daemon at Mon Jun 22 14:45:53 IST 2026
[2026-06-22 14:45:53,088.088 INFO    ] ================================================
[2026-06-22 14:45:53,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:45:53
[2026-06-22 14:45:54,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:45:54,706.706 INFO    ] Initializing speech engine...
[2026-06-22 14:45:54,714.714 INFO    ] 2026-06-22 14:45:54
[2026-06-22 14:45:55,008.008 INFO    ] 2026-06-22 14:45:54
[2026-06-22 14:45:55,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:45:55,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:45:55,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:45:55,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:45:55,445.445 INFO    ] time= 22/06/2026 14:45:55
[2026-06-22 14:45:55,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:45:55,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:45:55,722.722 INFO    ] No existing commands found in stream
[2026-06-22 14:46:00,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:46:00,744.744 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-22 14:46:05,017.017 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:46:05,020.020 INFO    ] Checking for system updates...
[2026-06-22 14:46:05,057.057 INFO    ] 200
[2026-06-22 14:46:05,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:46:05,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:46:05,113.113 INFO    ] No update needed
[2026-06-22 14:46:05,116.116 INFO    ] Checking for camera pi updates...
[2026-06-22 14:46:05,150.150 INFO    ] 200
[2026-06-22 14:46:05,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:46:05,193.193 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:46:05,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:46:05,279.279 INFO    ] No camera update needed
[2026-06-22 14:46:05,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:46:05,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:46:05,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:46:05,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:46:07,334.334 INFO    ] ================================================
[2026-06-22 14:46:07,348.348 INFO    ] Launching Daemon at Mon Jun 22 14:46:07 IST 2026
[2026-06-22 14:46:07,359.359 INFO    ] ================================================
[2026-06-22 14:46:07,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:46:07
[2026-06-22 14:46:08,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:46:08,780.780 INFO    ] Initializing speech engine...
[2026-06-22 14:46:08,804.804 INFO    ] 2026-06-22 14:46:08
[2026-06-22 14:46:09,091.091 INFO    ] 2026-06-22 14:46:09
[2026-06-22 14:46:09,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:46:09,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:46:09,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:46:09,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:46:09,637.637 INFO    ] time= 22/06/2026 14:46:09
[2026-06-22 14:46:09,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:46:09,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:46:09,818.818 INFO    ] No existing commands found in stream
[2026-06-22 14:46:14,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:46:14,851.851 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-22 14:46:17,683.683 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:46:17,686.686 INFO    ] Checking for system updates...
[2026-06-22 14:46:17,722.722 INFO    ] 200
[2026-06-22 14:46:17,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:46:17,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:46:17,781.781 INFO    ] No update needed
[2026-06-22 14:46:17,784.784 INFO    ] Checking for camera pi updates...
[2026-06-22 14:46:17,821.821 INFO    ] 200
[2026-06-22 14:46:17,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:46:17,866.866 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:46:17,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:46:17,952.952 INFO    ] No camera update needed
[2026-06-22 14:46:17,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:46:17,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:46:17,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:46:17,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:46:20,012.012 INFO    ] ================================================
[2026-06-22 14:46:20,027.027 INFO    ] Launching Daemon at Mon Jun 22 14:46:20 IST 2026
[2026-06-22 14:46:20,038.038 INFO    ] ================================================
[2026-06-22 14:46:20,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:46:20
[2026-06-22 14:46:21,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:46:21,447.447 INFO    ] Initializing speech engine...
[2026-06-22 14:46:21,461.461 INFO    ] 2026-06-22 14:46:21
[2026-06-22 14:46:21,728.728 INFO    ] 2026-06-22 14:46:21
[2026-06-22 14:46:21,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:46:21,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:46:21,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:46:22,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:46:22,111.111 INFO    ] time= 22/06/2026 14:46:22
[2026-06-22 14:46:22,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:46:22,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:46:22,305.305 INFO    ] No existing commands found in stream
[2026-06-22 14:46:27,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:46:27,323.323 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-22 14:46:30,222.222 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:46:30,225.225 INFO    ] Checking for system updates...
[2026-06-22 14:46:30,263.263 INFO    ] 200
[2026-06-22 14:46:30,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:46:30,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:46:30,323.323 INFO    ] No update needed
[2026-06-22 14:46:30,325.325 INFO    ] Checking for camera pi updates...
[2026-06-22 14:46:30,364.364 INFO    ] 200
[2026-06-22 14:46:30,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:46:30,414.414 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:46:30,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:46:30,516.516 INFO    ] No camera update needed
[2026-06-22 14:46:30,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:46:30,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:46:30,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:46:30,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:46:32,574.574 INFO    ] ================================================
[2026-06-22 14:46:32,592.592 INFO    ] Launching Daemon at Mon Jun 22 14:46:32 IST 2026
[2026-06-22 14:46:32,605.605 INFO    ] ================================================
[2026-06-22 14:46:33,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:46:33
[2026-06-22 14:46:33,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:46:34,183.183 INFO    ] Initializing speech engine...
[2026-06-22 14:46:34,198.198 INFO    ] 2026-06-22 14:46:34
[2026-06-22 14:46:34,484.484 INFO    ] 2026-06-22 14:46:34
[2026-06-22 14:46:34,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:46:34,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:46:34,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:46:34,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:46:35,039.039 INFO    ] time= 22/06/2026 14:46:34
[2026-06-22 14:46:35,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:46:35,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:46:35,203.203 INFO    ] No existing commands found in stream
[2026-06-22 14:46:40,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:46:40,236.236 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-22 14:46:43,626.626 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:46:43,629.629 INFO    ] Checking for system updates...
[2026-06-22 14:46:43,673.673 INFO    ] 200
[2026-06-22 14:46:43,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:46:43,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:46:43,735.735 INFO    ] No update needed
[2026-06-22 14:46:43,738.738 INFO    ] Checking for camera pi updates...
[2026-06-22 14:46:43,774.774 INFO    ] 200
[2026-06-22 14:46:43,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:46:43,819.819 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:46:43,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:46:43,905.905 INFO    ] No camera update needed
[2026-06-22 14:46:43,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:46:43,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:46:43,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:46:43,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:46:45,960.960 INFO    ] ================================================
[2026-06-22 14:46:45,976.976 INFO    ] Launching Daemon at Mon Jun 22 14:46:45 IST 2026
[2026-06-22 14:46:45,987.987 INFO    ] ================================================
[2026-06-22 14:46:46,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:46:46
[2026-06-22 14:46:47,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:46:47,411.411 INFO    ] Initializing speech engine...
[2026-06-22 14:46:47,417.417 INFO    ] 2026-06-22 14:46:47
[2026-06-22 14:46:47,676.676 INFO    ] 2026-06-22 14:46:47
[2026-06-22 14:46:47,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:46:47,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:46:47,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:46:48,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:46:48,219.219 INFO    ] time= 22/06/2026 14:46:48
[2026-06-22 14:46:48,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:46:48,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:46:48,370.370 INFO    ] No existing commands found in stream
[2026-06-22 14:46:53,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:46:53,388.388 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-22 14:46:56,721.721 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:46:56,724.724 INFO    ] Checking for system updates...
[2026-06-22 14:46:56,761.761 INFO    ] 200
[2026-06-22 14:46:56,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:46:56,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:46:56,820.820 INFO    ] No update needed
[2026-06-22 14:46:56,822.822 INFO    ] Checking for camera pi updates...
[2026-06-22 14:46:56,857.857 INFO    ] 200
[2026-06-22 14:46:56,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:46:56,900.900 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:46:56,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:46:56,991.991 INFO    ] No camera update needed
[2026-06-22 14:46:56,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:46:56,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:46:57,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:46:57,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:46:59,046.046 INFO    ] ================================================
[2026-06-22 14:46:59,061.061 INFO    ] Launching Daemon at Mon Jun 22 14:46:59 IST 2026
[2026-06-22 14:46:59,072.072 INFO    ] ================================================
[2026-06-22 14:46:59,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:46:59
[2026-06-22 14:47:00,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:47:00,684.684 INFO    ] Initializing speech engine...
[2026-06-22 14:47:00,695.695 INFO    ] 2026-06-22 14:47:00
[2026-06-22 14:47:00,984.984 INFO    ] 2026-06-22 14:47:00
[2026-06-22 14:47:01,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:47:01,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:47:01,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:47:01,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:47:01,544.544 INFO    ] time= 22/06/2026 14:47:01
[2026-06-22 14:47:01,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:47:01,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:47:01,735.735 INFO    ] No existing commands found in stream
[2026-06-22 14:47:06,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:47:06,770.770 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-22 14:47:07,376.376 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:47:07,379.379 INFO    ] Checking for system updates...
[2026-06-22 14:47:07,415.415 INFO    ] 200
[2026-06-22 14:47:07,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:47:07,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:47:07,479.479 INFO    ] No update needed
[2026-06-22 14:47:07,481.481 INFO    ] Checking for camera pi updates...
[2026-06-22 14:47:07,518.518 INFO    ] 200
[2026-06-22 14:47:07,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:47:07,565.565 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:47:07,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:47:07,652.652 INFO    ] No camera update needed
[2026-06-22 14:47:07,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:47:07,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:47:07,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:47:07,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:47:09,706.706 INFO    ] ================================================
[2026-06-22 14:47:09,722.722 INFO    ] Launching Daemon at Mon Jun 22 14:47:09 IST 2026
[2026-06-22 14:47:09,733.733 INFO    ] ================================================
[2026-06-22 14:47:10,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:47:10
[2026-06-22 14:47:10,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:47:11,081.081 INFO    ] Initializing speech engine...
[2026-06-22 14:47:11,090.090 INFO    ] 2026-06-22 14:47:11
[2026-06-22 14:47:11,340.340 INFO    ] 2026-06-22 14:47:11
[2026-06-22 14:47:11,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:47:11,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:47:11,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:47:11,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:47:11,837.837 INFO    ] time= 22/06/2026 14:47:11
[2026-06-22 14:47:11,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:47:11,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:47:12,038.038 INFO    ] No existing commands found in stream
[2026-06-22 14:47:17,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:47:17,068.068 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-22 14:47:20,527.527 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:47:20,528.528 INFO    ] Checking for system updates...
[2026-06-22 14:47:20,549.549 INFO    ] 200
[2026-06-22 14:47:20,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:47:20,583.583 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:47:20,585.585 INFO    ] No update needed
[2026-06-22 14:47:20,586.586 INFO    ] Checking for camera pi updates...
[2026-06-22 14:47:20,608.608 INFO    ] 200
[2026-06-22 14:47:20,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:47:20,652.652 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:47:20,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:47:20,720.720 INFO    ] No camera update needed
[2026-06-22 14:47:20,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:47:20,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:47:20,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:47:20,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:47:22,777.777 INFO    ] ================================================
[2026-06-22 14:47:22,792.792 INFO    ] Launching Daemon at Mon Jun 22 14:47:22 IST 2026
[2026-06-22 14:47:22,803.803 INFO    ] ================================================
[2026-06-22 14:47:23,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:47:23
[2026-06-22 14:47:23,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:47:24,206.206 INFO    ] Initializing speech engine...
[2026-06-22 14:47:24,219.219 INFO    ] 2026-06-22 14:47:24
[2026-06-22 14:47:24,486.486 INFO    ] 2026-06-22 14:47:24
[2026-06-22 14:47:24,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:47:24,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:47:24,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:47:24,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:47:25,055.055 INFO    ] time= 22/06/2026 14:47:25
[2026-06-22 14:47:25,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:47:25,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:47:25,214.214 INFO    ] No existing commands found in stream
[2026-06-22 14:47:30,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:47:30,231.231 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-22 14:47:33,192.192 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:47:33,195.195 INFO    ] Checking for system updates...
[2026-06-22 14:47:33,238.238 INFO    ] 200
[2026-06-22 14:47:33,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:47:33,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:47:33,308.308 INFO    ] No update needed
[2026-06-22 14:47:33,311.311 INFO    ] Checking for camera pi updates...
[2026-06-22 14:47:33,346.346 INFO    ] 200
[2026-06-22 14:47:33,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:47:33,394.394 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:47:33,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:47:33,483.483 INFO    ] No camera update needed
[2026-06-22 14:47:33,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:47:33,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:47:33,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:47:33,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:47:35,542.542 INFO    ] ================================================
[2026-06-22 14:47:35,558.558 INFO    ] Launching Daemon at Mon Jun 22 14:47:35 IST 2026
[2026-06-22 14:47:35,569.569 INFO    ] ================================================
[2026-06-22 14:47:36,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:47:36
[2026-06-22 14:47:36,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:47:37,073.073 INFO    ] Initializing speech engine...
[2026-06-22 14:47:37,080.080 INFO    ] 2026-06-22 14:47:37
[2026-06-22 14:47:37,342.342 INFO    ] 2026-06-22 14:47:37
[2026-06-22 14:47:37,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:47:37,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:47:37,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:47:37,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:47:37,849.849 INFO    ] time= 22/06/2026 14:47:37
[2026-06-22 14:47:37,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:47:37,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:47:38,053.053 INFO    ] No existing commands found in stream
[2026-06-22 14:47:43,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:47:43,087.087 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-22 14:47:46,740.740 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:47:46,743.743 INFO    ] Checking for system updates...
[2026-06-22 14:47:46,784.784 INFO    ] 200
[2026-06-22 14:47:46,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:47:46,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:47:46,845.845 INFO    ] No update needed
[2026-06-22 14:47:46,848.848 INFO    ] Checking for camera pi updates...
[2026-06-22 14:47:46,884.884 INFO    ] 200
[2026-06-22 14:47:46,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:47:46,931.931 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:47:47,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:47:47,015.015 INFO    ] No camera update needed
[2026-06-22 14:47:47,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:47:47,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:47:47,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:47:47,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:47:49,069.069 INFO    ] ================================================
[2026-06-22 14:47:49,084.084 INFO    ] Launching Daemon at Mon Jun 22 14:47:49 IST 2026
[2026-06-22 14:47:49,095.095 INFO    ] ================================================
[2026-06-22 14:47:49,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:47:49
[2026-06-22 14:47:50,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:47:50,451.451 INFO    ] Initializing speech engine...
[2026-06-22 14:47:50,460.460 INFO    ] 2026-06-22 14:47:50
[2026-06-22 14:47:50,747.747 INFO    ] 2026-06-22 14:47:50
[2026-06-22 14:47:50,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:47:50,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:47:50,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:47:51,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:47:51,151.151 INFO    ] time= 22/06/2026 14:47:51
[2026-06-22 14:47:51,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:47:51,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:47:51,347.347 INFO    ] No existing commands found in stream
[2026-06-22 14:47:56,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:47:56,363.363 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-22 14:47:59,464.464 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:47:59,466.466 INFO    ] Checking for system updates...
[2026-06-22 14:47:59,487.487 INFO    ] 200
[2026-06-22 14:47:59,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:47:59,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:47:59,521.521 INFO    ] No update needed
[2026-06-22 14:47:59,522.522 INFO    ] Checking for camera pi updates...
[2026-06-22 14:47:59,542.542 INFO    ] 200
[2026-06-22 14:47:59,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:47:59,571.571 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:47:59,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:47:59,779.779 INFO    ] No camera update needed
[2026-06-22 14:47:59,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:47:59,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:47:59,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:47:59,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:48:01,852.852 INFO    ] ================================================
[2026-06-22 14:48:01,870.870 INFO    ] Launching Daemon at Mon Jun 22 14:48:01 IST 2026
[2026-06-22 14:48:01,883.883 INFO    ] ================================================
[2026-06-22 14:48:02,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:48:02
[2026-06-22 14:48:03,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:48:03,427.427 INFO    ] Initializing speech engine...
[2026-06-22 14:48:03,445.445 INFO    ] 2026-06-22 14:48:03
[2026-06-22 14:48:03,715.715 INFO    ] 2026-06-22 14:48:03
[2026-06-22 14:48:03,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:48:03,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:48:03,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:48:04,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:48:04,134.134 INFO    ] time= 22/06/2026 14:48:04
[2026-06-22 14:48:04,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:48:04,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:48:04,303.303 INFO    ] No existing commands found in stream
[2026-06-22 14:48:09,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:48:09,330.330 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-22 14:48:13,541.541 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:48:13,544.544 INFO    ] Checking for system updates...
[2026-06-22 14:48:13,580.580 INFO    ] 200
[2026-06-22 14:48:13,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:48:13,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:48:13,640.640 INFO    ] No update needed
[2026-06-22 14:48:13,642.642 INFO    ] Checking for camera pi updates...
[2026-06-22 14:48:13,680.680 INFO    ] 200
[2026-06-22 14:48:13,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:48:13,727.727 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:48:13,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:48:13,804.804 INFO    ] No camera update needed
[2026-06-22 14:48:13,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:48:13,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:48:13,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:48:13,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:48:15,859.859 INFO    ] ================================================
[2026-06-22 14:48:15,875.875 INFO    ] Launching Daemon at Mon Jun 22 14:48:15 IST 2026
[2026-06-22 14:48:15,886.886 INFO    ] ================================================
[2026-06-22 14:48:16,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:48:16
[2026-06-22 14:48:16,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:48:17,276.276 INFO    ] Initializing speech engine...
[2026-06-22 14:48:17,283.283 INFO    ] 2026-06-22 14:48:17
[2026-06-22 14:48:17,548.548 INFO    ] 2026-06-22 14:48:17
[2026-06-22 14:48:17,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:48:17,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:48:17,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:48:17,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:48:17,964.964 INFO    ] time= 22/06/2026 14:48:17
[2026-06-22 14:48:17,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:48:18,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:48:18,153.153 INFO    ] No existing commands found in stream
[2026-06-22 14:48:23,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:48:23,187.187 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-22 14:48:26,939.939 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:48:26,942.942 INFO    ] Checking for system updates...
[2026-06-22 14:48:26,978.978 INFO    ] 200
[2026-06-22 14:48:26,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:48:27,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:48:27,038.038 INFO    ] No update needed
[2026-06-22 14:48:27,041.041 INFO    ] Checking for camera pi updates...
[2026-06-22 14:48:27,079.079 INFO    ] 200
[2026-06-22 14:48:27,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:48:27,123.123 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:48:27,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:48:27,212.212 INFO    ] No camera update needed
[2026-06-22 14:48:27,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:48:27,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:48:27,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:48:27,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:48:29,268.268 INFO    ] ================================================
[2026-06-22 14:48:29,284.284 INFO    ] Launching Daemon at Mon Jun 22 14:48:29 IST 2026
[2026-06-22 14:48:29,295.295 INFO    ] ================================================
[2026-06-22 14:48:29,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:48:29
[2026-06-22 14:48:30,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:48:30,623.623 INFO    ] Initializing speech engine...
[2026-06-22 14:48:30,631.631 INFO    ] 2026-06-22 14:48:30
[2026-06-22 14:48:30,905.905 INFO    ] 2026-06-22 14:48:30
[2026-06-22 14:48:30,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:48:31,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:48:31,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:48:31,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:48:31,308.308 INFO    ] time= 22/06/2026 14:48:31
[2026-06-22 14:48:31,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:48:31,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:48:31,506.506 INFO    ] No existing commands found in stream
[2026-06-22 14:48:36,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:48:36,526.526 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-22 14:48:38,847.847 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:48:38,849.849 INFO    ] Checking for system updates...
[2026-06-22 14:48:38,886.886 INFO    ] 200
[2026-06-22 14:48:38,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:48:38,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:48:38,943.943 INFO    ] No update needed
[2026-06-22 14:48:38,945.945 INFO    ] Checking for camera pi updates...
[2026-06-22 14:48:38,979.979 INFO    ] 200
[2026-06-22 14:48:38,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:48:39,024.024 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:48:39,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:48:39,088.088 INFO    ] No camera update needed
[2026-06-22 14:48:39,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:48:39,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:48:39,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:48:39,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:48:41,145.145 INFO    ] ================================================
[2026-06-22 14:48:41,160.160 INFO    ] Launching Daemon at Mon Jun 22 14:48:41 IST 2026
[2026-06-22 14:48:41,171.171 INFO    ] ================================================
[2026-06-22 14:48:41,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:48:41
[2026-06-22 14:48:42,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:48:42,555.555 INFO    ] Initializing speech engine...
[2026-06-22 14:48:42,561.561 INFO    ] 2026-06-22 14:48:42
[2026-06-22 14:48:42,809.809 INFO    ] 2026-06-22 14:48:42
[2026-06-22 14:48:42,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:48:43,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:48:43,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:48:43,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:48:43,377.377 INFO    ] time= 22/06/2026 14:48:43
[2026-06-22 14:48:43,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:48:43,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:48:43,521.521 INFO    ] No existing commands found in stream
[2026-06-22 14:48:48,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:48:48,552.552 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-22 14:48:50,877.877 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:48:50,880.880 INFO    ] Checking for system updates...
[2026-06-22 14:48:50,918.918 INFO    ] 200
[2026-06-22 14:48:50,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:48:50,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:48:50,987.987 INFO    ] No update needed
[2026-06-22 14:48:50,989.989 INFO    ] Checking for camera pi updates...
[2026-06-22 14:48:51,027.027 INFO    ] 200
[2026-06-22 14:48:51,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:48:51,074.074 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:48:51,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:48:51,160.160 INFO    ] No camera update needed
[2026-06-22 14:48:51,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:48:51,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:48:51,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:48:51,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:48:53,215.215 INFO    ] ================================================
[2026-06-22 14:48:53,231.231 INFO    ] Launching Daemon at Mon Jun 22 14:48:53 IST 2026
[2026-06-22 14:48:53,242.242 INFO    ] ================================================
[2026-06-22 14:48:53,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:48:53
[2026-06-22 14:48:54,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:48:54,561.561 INFO    ] Initializing speech engine...
[2026-06-22 14:48:54,567.567 INFO    ] 2026-06-22 14:48:54
[2026-06-22 14:48:54,865.865 INFO    ] 2026-06-22 14:48:54
[2026-06-22 14:48:54,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:48:55,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:48:55,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:48:55,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:48:55,500.500 INFO    ] time= 22/06/2026 14:48:55
[2026-06-22 14:48:55,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:48:55,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:48:55,640.640 INFO    ] No existing commands found in stream
[2026-06-22 14:49:00,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:49:00,670.670 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-22 14:49:01,908.908 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:49:01,912.912 INFO    ] Checking for system updates...
[2026-06-22 14:49:01,957.957 INFO    ] 200
[2026-06-22 14:49:01,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:49:02,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:49:02,035.035 INFO    ] No update needed
[2026-06-22 14:49:02,038.038 INFO    ] Checking for camera pi updates...
[2026-06-22 14:49:02,081.081 INFO    ] 200
[2026-06-22 14:49:02,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:49:02,138.138 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:49:02,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:49:02,206.206 INFO    ] No camera update needed
[2026-06-22 14:49:02,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:49:02,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:49:02,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:49:02,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:49:04,266.266 INFO    ] ================================================
[2026-06-22 14:49:04,281.281 INFO    ] Launching Daemon at Mon Jun 22 14:49:04 IST 2026
[2026-06-22 14:49:04,291.291 INFO    ] ================================================
[2026-06-22 14:49:04,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:49:04
[2026-06-22 14:49:05,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:49:05,845.845 INFO    ] Initializing speech engine...
[2026-06-22 14:49:05,859.859 INFO    ] 2026-06-22 14:49:05
[2026-06-22 14:49:06,140.140 INFO    ] 2026-06-22 14:49:06
[2026-06-22 14:49:06,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:49:06,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:49:06,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:49:06,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:49:06,646.646 INFO    ] time= 22/06/2026 14:49:06
[2026-06-22 14:49:06,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:49:06,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:49:06,846.846 INFO    ] No existing commands found in stream
[2026-06-22 14:49:11,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:49:11,866.866 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-22 14:49:12,357.357 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:49:12,359.359 INFO    ] Checking for system updates...
[2026-06-22 14:49:12,396.396 INFO    ] 200
[2026-06-22 14:49:12,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:49:12,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:49:12,453.453 INFO    ] No update needed
[2026-06-22 14:49:12,456.456 INFO    ] Checking for camera pi updates...
[2026-06-22 14:49:12,490.490 INFO    ] 200
[2026-06-22 14:49:12,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:49:12,534.534 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:49:12,621.621 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:49:12,623.623 INFO    ] No camera update needed
[2026-06-22 14:49:12,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:49:12,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:49:12,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:49:12,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:49:14,681.681 INFO    ] ================================================
[2026-06-22 14:49:14,697.697 INFO    ] Launching Daemon at Mon Jun 22 14:49:14 IST 2026
[2026-06-22 14:49:14,708.708 INFO    ] ================================================
[2026-06-22 14:49:15,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:49:15
[2026-06-22 14:49:15,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:49:16,087.087 INFO    ] Initializing speech engine...
[2026-06-22 14:49:16,096.096 INFO    ] 2026-06-22 14:49:16
[2026-06-22 14:49:16,344.344 INFO    ] 2026-06-22 14:49:16
[2026-06-22 14:49:16,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:49:16,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:49:16,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:49:16,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:49:16,846.846 INFO    ] time= 22/06/2026 14:49:16
[2026-06-22 14:49:16,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:49:16,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:49:17,020.020 INFO    ] No existing commands found in stream
[2026-06-22 14:49:22,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:49:22,033.033 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-22 14:49:23,301.301 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:49:23,305.305 INFO    ] Checking for system updates...
[2026-06-22 14:49:23,346.346 INFO    ] 200
[2026-06-22 14:49:23,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:49:23,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:49:23,412.412 INFO    ] No update needed
[2026-06-22 14:49:23,414.414 INFO    ] Checking for camera pi updates...
[2026-06-22 14:49:23,452.452 INFO    ] 200
[2026-06-22 14:49:23,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:49:23,496.496 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:49:23,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:49:23,591.591 INFO    ] No camera update needed
[2026-06-22 14:49:23,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:49:23,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:49:23,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:49:23,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:49:25,647.647 INFO    ] ================================================
[2026-06-22 14:49:25,664.664 INFO    ] Launching Daemon at Mon Jun 22 14:49:25 IST 2026
[2026-06-22 14:49:25,676.676 INFO    ] ================================================
[2026-06-22 14:49:26,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:49:26
[2026-06-22 14:49:26,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:49:27,006.006 INFO    ] Initializing speech engine...
[2026-06-22 14:49:27,030.030 INFO    ] 2026-06-22 14:49:27
[2026-06-22 14:49:27,312.312 INFO    ] 2026-06-22 14:49:27
[2026-06-22 14:49:27,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:49:27,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:49:27,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:49:27,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:49:27,715.715 INFO    ] time= 22/06/2026 14:49:27
[2026-06-22 14:49:27,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:49:27,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:49:27,823.823 INFO    ] No existing commands found in stream
[2026-06-22 14:49:32,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:49:32,838.838 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-22 14:49:34,613.613 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:49:34,616.616 INFO    ] Checking for system updates...
[2026-06-22 14:49:34,662.662 INFO    ] 200
[2026-06-22 14:49:34,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:49:34,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:49:34,728.728 INFO    ] No update needed
[2026-06-22 14:49:34,731.731 INFO    ] Checking for camera pi updates...
[2026-06-22 14:49:34,770.770 INFO    ] 200
[2026-06-22 14:49:34,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:49:34,820.820 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:49:34,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:49:34,909.909 INFO    ] No camera update needed
[2026-06-22 14:49:34,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:49:34,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:49:34,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:49:34,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:49:36,969.969 INFO    ] ================================================
[2026-06-22 14:49:36,986.986 INFO    ] Launching Daemon at Mon Jun 22 14:49:36 IST 2026
[2026-06-22 14:49:37,997.997 INFO    ] ================================================
[2026-06-22 14:49:37,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:49:37
[2026-06-22 14:49:38,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:49:38,558.558 INFO    ] Initializing speech engine...
[2026-06-22 14:49:38,572.572 INFO    ] 2026-06-22 14:49:38
[2026-06-22 14:49:38,844.844 INFO    ] 2026-06-22 14:49:38
[2026-06-22 14:49:38,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:49:39,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:49:39,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:49:39,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:49:39,400.400 INFO    ] time= 22/06/2026 14:49:39
[2026-06-22 14:49:39,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:49:39,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:49:39,573.573 INFO    ] No existing commands found in stream
[2026-06-22 14:49:44,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:49:44,613.613 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-22 14:49:48,010.010 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:49:48,013.013 INFO    ] Checking for system updates...
[2026-06-22 14:49:48,051.051 INFO    ] 200
[2026-06-22 14:49:48,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:49:48,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:49:48,110.110 INFO    ] No update needed
[2026-06-22 14:49:48,113.113 INFO    ] Checking for camera pi updates...
[2026-06-22 14:49:48,148.148 INFO    ] 200
[2026-06-22 14:49:48,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:49:48,194.194 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:49:48,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:49:48,310.310 INFO    ] No camera update needed
[2026-06-22 14:49:48,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:49:48,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:49:48,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:49:48,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:49:50,368.368 INFO    ] ================================================
[2026-06-22 14:49:50,384.384 INFO    ] Launching Daemon at Mon Jun 22 14:49:50 IST 2026
[2026-06-22 14:49:50,395.395 INFO    ] ================================================
[2026-06-22 14:49:50,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:49:50
[2026-06-22 14:49:51,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:49:51,780.780 INFO    ] Initializing speech engine...
[2026-06-22 14:49:51,786.786 INFO    ] 2026-06-22 14:49:51
[2026-06-22 14:49:52,033.033 INFO    ] 2026-06-22 14:49:52
[2026-06-22 14:49:52,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:49:52,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:49:52,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:49:52,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:49:52,504.504 INFO    ] time= 22/06/2026 14:49:52
[2026-06-22 14:49:52,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:49:52,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:49:52,724.724 INFO    ] No existing commands found in stream
[2026-06-22 14:49:57,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:49:57,754.754 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-22 14:50:01,176.176 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:50:01,179.179 INFO    ] Checking for system updates...
[2026-06-22 14:50:01,224.224 INFO    ] 200
[2026-06-22 14:50:01,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:50:01,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:50:01,570.570 INFO    ] No update needed
[2026-06-22 14:50:01,600.600 INFO    ] Checking for camera pi updates...
[2026-06-22 14:50:01,719.719 INFO    ] 200
[2026-06-22 14:50:01,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:50:01,896.896 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:50:02,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:50:02,174.174 INFO    ] No camera update needed
[2026-06-22 14:50:02,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:50:02,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:50:02,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:50:02,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:50:04,239.239 INFO    ] ================================================
[2026-06-22 14:50:04,255.255 INFO    ] Launching Daemon at Mon Jun 22 14:50:04 IST 2026
[2026-06-22 14:50:04,266.266 INFO    ] ================================================
[2026-06-22 14:50:04,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:50:04
[2026-06-22 14:50:05,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:50:05,680.680 INFO    ] Initializing speech engine...
[2026-06-22 14:50:05,689.689 INFO    ] 2026-06-22 14:50:05
[2026-06-22 14:50:05,973.973 INFO    ] 2026-06-22 14:50:05
[2026-06-22 14:50:06,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:50:06,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:50:06,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:50:06,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:50:06,446.446 INFO    ] time= 22/06/2026 14:50:06
[2026-06-22 14:50:06,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:50:06,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:50:06,642.642 INFO    ] No existing commands found in stream
[2026-06-22 14:50:11,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:50:11,656.656 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-22 14:50:12,621.621 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:50:12,624.624 INFO    ] Checking for system updates...
[2026-06-22 14:50:12,660.660 INFO    ] 200
[2026-06-22 14:50:12,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:50:12,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:50:12,720.720 INFO    ] No update needed
[2026-06-22 14:50:12,723.723 INFO    ] Checking for camera pi updates...
[2026-06-22 14:50:12,760.760 INFO    ] 200
[2026-06-22 14:50:12,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:50:12,806.806 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:50:12,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:50:12,893.893 INFO    ] No camera update needed
[2026-06-22 14:50:12,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:50:12,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:50:12,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:50:12,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:50:14,949.949 INFO    ] ================================================
[2026-06-22 14:50:14,965.965 INFO    ] Launching Daemon at Mon Jun 22 14:50:14 IST 2026
[2026-06-22 14:50:14,975.975 INFO    ] ================================================
[2026-06-22 14:50:15,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:50:15
[2026-06-22 14:50:16,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:50:16,496.496 INFO    ] Initializing speech engine...
[2026-06-22 14:50:16,508.508 INFO    ] 2026-06-22 14:50:16
[2026-06-22 14:50:16,787.787 INFO    ] 2026-06-22 14:50:16
[2026-06-22 14:50:16,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:50:17,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:50:17,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:50:17,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:50:17,268.268 INFO    ] time= 22/06/2026 14:50:17
[2026-06-22 14:50:17,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:50:17,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:50:17,480.480 INFO    ] No existing commands found in stream
[2026-06-22 14:50:22,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:50:22,511.511 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-22 14:50:25,814.814 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:50:25,817.817 INFO    ] Checking for system updates...
[2026-06-22 14:50:25,854.854 INFO    ] 200
[2026-06-22 14:50:25,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:50:25,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:50:25,919.919 INFO    ] No update needed
[2026-06-22 14:50:25,922.922 INFO    ] Checking for camera pi updates...
[2026-06-22 14:50:25,958.958 INFO    ] 200
[2026-06-22 14:50:25,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:50:26,007.007 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:50:26,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:50:26,101.101 INFO    ] No camera update needed
[2026-06-22 14:50:26,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:50:26,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:50:26,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:50:26,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:50:28,160.160 INFO    ] ================================================
[2026-06-22 14:50:28,176.176 INFO    ] Launching Daemon at Mon Jun 22 14:50:28 IST 2026
[2026-06-22 14:50:28,187.187 INFO    ] ================================================
[2026-06-22 14:50:28,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:50:28
[2026-06-22 14:50:29,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:50:29,659.659 INFO    ] Initializing speech engine...
[2026-06-22 14:50:29,667.667 INFO    ] 2026-06-22 14:50:29
[2026-06-22 14:50:29,936.936 INFO    ] 2026-06-22 14:50:29
[2026-06-22 14:50:29,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:50:30,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:50:30,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:50:30,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:50:30,360.360 INFO    ] time= 22/06/2026 14:50:30
[2026-06-22 14:50:30,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:50:30,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:50:30,448.448 INFO    ] No existing commands found in stream
[2026-06-22 14:50:35,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:50:35,487.487 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-22 14:50:38,252.252 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:50:38,254.254 INFO    ] Checking for system updates...
[2026-06-22 14:50:38,291.291 INFO    ] 200
[2026-06-22 14:50:38,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:50:38,356.356 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:50:38,359.359 INFO    ] No update needed
[2026-06-22 14:50:38,362.362 INFO    ] Checking for camera pi updates...
[2026-06-22 14:50:38,398.398 INFO    ] 200
[2026-06-22 14:50:38,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:50:38,443.443 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:50:38,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:50:38,531.531 INFO    ] No camera update needed
[2026-06-22 14:50:38,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:50:38,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:50:38,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:50:38,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:50:40,590.590 INFO    ] ================================================
[2026-06-22 14:50:40,606.606 INFO    ] Launching Daemon at Mon Jun 22 14:50:40 IST 2026
[2026-06-22 14:50:40,618.618 INFO    ] ================================================
[2026-06-22 14:50:41,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:50:41
[2026-06-22 14:50:41,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:50:41,933.933 INFO    ] Initializing speech engine...
[2026-06-22 14:50:41,942.942 INFO    ] 2026-06-22 14:50:41
[2026-06-22 14:50:42,215.215 INFO    ] 2026-06-22 14:50:42
[2026-06-22 14:50:42,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:50:42,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:50:42,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:50:42,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:50:42,733.733 INFO    ] time= 22/06/2026 14:50:42
[2026-06-22 14:50:42,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:50:42,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:50:42,929.929 INFO    ] No existing commands found in stream
[2026-06-22 14:50:47,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:50:47,953.953 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-22 14:50:50,420.420 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:50:50,423.423 INFO    ] Checking for system updates...
[2026-06-22 14:50:50,460.460 INFO    ] 200
[2026-06-22 14:50:50,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:50:50,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:50:50,520.520 INFO    ] No update needed
[2026-06-22 14:50:50,523.523 INFO    ] Checking for camera pi updates...
[2026-06-22 14:50:50,559.559 INFO    ] 200
[2026-06-22 14:50:50,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:50:50,603.603 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:50:50,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:50:50,694.694 INFO    ] No camera update needed
[2026-06-22 14:50:50,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:50:50,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:50:50,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:50:50,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:50:52,754.754 INFO    ] ================================================
[2026-06-22 14:50:52,770.770 INFO    ] Launching Daemon at Mon Jun 22 14:50:52 IST 2026
[2026-06-22 14:50:52,782.782 INFO    ] ================================================
[2026-06-22 14:50:53,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:50:53
[2026-06-22 14:50:53,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:50:54,102.102 INFO    ] Initializing speech engine...
[2026-06-22 14:50:54,108.108 INFO    ] 2026-06-22 14:50:54
[2026-06-22 14:50:54,402.402 INFO    ] 2026-06-22 14:50:54
[2026-06-22 14:50:54,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:50:54,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:50:54,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:50:54,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:50:54,815.815 INFO    ] time= 22/06/2026 14:50:54
[2026-06-22 14:50:54,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:50:54,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:50:54,978.978 INFO    ] No existing commands found in stream
[2026-06-22 14:51:00,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:51:00,011.011 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-22 14:51:02,301.301 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:51:02,304.304 INFO    ] Checking for system updates...
[2026-06-22 14:51:02,350.350 INFO    ] 200
[2026-06-22 14:51:02,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:51:02,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:51:02,430.430 INFO    ] No update needed
[2026-06-22 14:51:02,437.437 INFO    ] Checking for camera pi updates...
[2026-06-22 14:51:02,476.476 INFO    ] 200
[2026-06-22 14:51:02,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:51:02,524.524 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:51:02,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:51:02,591.591 INFO    ] No camera update needed
[2026-06-22 14:51:02,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:51:02,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:51:02,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:51:02,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:51:04,652.652 INFO    ] ================================================
[2026-06-22 14:51:04,668.668 INFO    ] Launching Daemon at Mon Jun 22 14:51:04 IST 2026
[2026-06-22 14:51:04,679.679 INFO    ] ================================================
[2026-06-22 14:51:05,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:51:05
[2026-06-22 14:51:05,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:51:06,073.073 INFO    ] Initializing speech engine...
[2026-06-22 14:51:06,083.083 INFO    ] 2026-06-22 14:51:06
[2026-06-22 14:51:06,345.345 INFO    ] 2026-06-22 14:51:06
[2026-06-22 14:51:06,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:51:06,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:51:06,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:51:06,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:51:06,833.833 INFO    ] time= 22/06/2026 14:51:06
[2026-06-22 14:51:06,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:51:06,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:51:07,038.038 INFO    ] No existing commands found in stream
[2026-06-22 14:51:12,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:51:12,055.055 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-22 14:51:12,603.603 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:51:12,606.606 INFO    ] Checking for system updates...
[2026-06-22 14:51:12,642.642 INFO    ] 200
[2026-06-22 14:51:12,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:51:12,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:51:12,702.702 INFO    ] No update needed
[2026-06-22 14:51:12,704.704 INFO    ] Checking for camera pi updates...
[2026-06-22 14:51:12,739.739 INFO    ] 200
[2026-06-22 14:51:12,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:51:12,783.783 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:51:12,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:51:12,862.862 INFO    ] No camera update needed
[2026-06-22 14:51:12,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:51:12,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:51:12,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:51:12,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:51:14,920.920 INFO    ] ================================================
[2026-06-22 14:51:14,936.936 INFO    ] Launching Daemon at Mon Jun 22 14:51:14 IST 2026
[2026-06-22 14:51:14,947.947 INFO    ] ================================================
[2026-06-22 14:51:15,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:51:15
[2026-06-22 14:51:16,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:51:16,553.553 INFO    ] Initializing speech engine...
[2026-06-22 14:51:16,562.562 INFO    ] 2026-06-22 14:51:16
[2026-06-22 14:51:16,841.841 INFO    ] 2026-06-22 14:51:16
[2026-06-22 14:51:16,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:51:17,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:51:17,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:51:17,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:51:17,417.417 INFO    ] time= 22/06/2026 14:51:17
[2026-06-22 14:51:17,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:51:17,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:51:17,583.583 INFO    ] No existing commands found in stream
[2026-06-22 14:51:22,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:51:22,616.616 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-22 14:51:28,206.206 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:51:28,208.208 INFO    ] Checking for system updates...
[2026-06-22 14:51:28,255.255 INFO    ] 200
[2026-06-22 14:51:28,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:51:28,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:51:28,321.321 INFO    ] No update needed
[2026-06-22 14:51:28,324.324 INFO    ] Checking for camera pi updates...
[2026-06-22 14:51:28,365.365 INFO    ] 200
[2026-06-22 14:51:28,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:51:28,411.411 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:51:28,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:51:28,488.488 INFO    ] No camera update needed
[2026-06-22 14:51:28,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:51:28,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:51:28,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:51:28,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:51:30,543.543 INFO    ] ================================================
[2026-06-22 14:51:30,559.559 INFO    ] Launching Daemon at Mon Jun 22 14:51:30 IST 2026
[2026-06-22 14:51:30,570.570 INFO    ] ================================================
[2026-06-22 14:51:31,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:51:31
[2026-06-22 14:51:31,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:51:32,128.128 INFO    ] Initializing speech engine...
[2026-06-22 14:51:32,141.141 INFO    ] 2026-06-22 14:51:32
[2026-06-22 14:51:32,441.441 INFO    ] 2026-06-22 14:51:32
[2026-06-22 14:51:32,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:51:32,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:51:32,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:51:32,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:51:32,855.855 INFO    ] time= 22/06/2026 14:51:32
[2026-06-22 14:51:32,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:51:32,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:51:32,933.933 INFO    ] No existing commands found in stream
[2026-06-22 14:51:37,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:51:37,947.947 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-22 14:51:40,215.215 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:51:40,217.217 INFO    ] Checking for system updates...
[2026-06-22 14:51:40,253.253 INFO    ] 200
[2026-06-22 14:51:40,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:51:40,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:51:40,311.311 INFO    ] No update needed
[2026-06-22 14:51:40,313.313 INFO    ] Checking for camera pi updates...
[2026-06-22 14:51:40,347.347 INFO    ] 200
[2026-06-22 14:51:40,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:51:40,396.396 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:51:40,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:51:40,481.481 INFO    ] No camera update needed
[2026-06-22 14:51:40,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:51:40,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:51:40,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:51:40,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:51:42,539.539 INFO    ] ================================================
[2026-06-22 14:51:42,554.554 INFO    ] Launching Daemon at Mon Jun 22 14:51:42 IST 2026
[2026-06-22 14:51:42,564.564 INFO    ] ================================================
[2026-06-22 14:51:43,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:51:43
[2026-06-22 14:51:43,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:51:44,098.098 INFO    ] Initializing speech engine...
[2026-06-22 14:51:44,106.106 INFO    ] 2026-06-22 14:51:44
[2026-06-22 14:51:44,375.375 INFO    ] 2026-06-22 14:51:44
[2026-06-22 14:51:44,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:51:44,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:51:44,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:51:44,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:51:44,852.852 INFO    ] time= 22/06/2026 14:51:44
[2026-06-22 14:51:44,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:51:44,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:51:45,094.094 INFO    ] No existing commands found in stream
[2026-06-22 14:51:50,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:51:50,114.114 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-22 14:51:53,457.457 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:51:53,458.458 INFO    ] Checking for system updates...
[2026-06-22 14:51:53,480.480 INFO    ] 200
[2026-06-22 14:51:53,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:51:53,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:51:53,514.514 INFO    ] No update needed
[2026-06-22 14:51:53,515.515 INFO    ] Checking for camera pi updates...
[2026-06-22 14:51:53,538.538 INFO    ] 200
[2026-06-22 14:51:53,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:51:53,582.582 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:51:53,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:51:53,672.672 INFO    ] No camera update needed
[2026-06-22 14:51:53,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:51:53,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:51:53,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:51:53,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:51:55,728.728 INFO    ] ================================================
[2026-06-22 14:51:55,742.742 INFO    ] Launching Daemon at Mon Jun 22 14:51:55 IST 2026
[2026-06-22 14:51:55,753.753 INFO    ] ================================================
[2026-06-22 14:51:56,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:51:56
[2026-06-22 14:51:57,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:51:57,314.314 INFO    ] Initializing speech engine...
[2026-06-22 14:51:57,323.323 INFO    ] 2026-06-22 14:51:57
[2026-06-22 14:51:57,580.580 INFO    ] 2026-06-22 14:51:57
[2026-06-22 14:51:57,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:51:57,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:51:57,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:51:58,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:51:58,167.167 INFO    ] time= 22/06/2026 14:51:58
[2026-06-22 14:51:58,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:51:58,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:51:58,347.347 INFO    ] No existing commands found in stream
[2026-06-22 14:52:03,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:52:03,381.381 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-22 14:52:04,760.760 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:52:04,763.763 INFO    ] Checking for system updates...
[2026-06-22 14:52:04,800.800 INFO    ] 200
[2026-06-22 14:52:04,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:52:04,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:52:04,859.859 INFO    ] No update needed
[2026-06-22 14:52:04,862.862 INFO    ] Checking for camera pi updates...
[2026-06-22 14:52:04,898.898 INFO    ] 200
[2026-06-22 14:52:04,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:52:04,942.942 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:52:05,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:52:05,123.123 INFO    ] No camera update needed
[2026-06-22 14:52:05,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:52:05,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:52:05,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:52:05,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:52:07,183.183 INFO    ] ================================================
[2026-06-22 14:52:07,199.199 INFO    ] Launching Daemon at Mon Jun 22 14:52:07 IST 2026
[2026-06-22 14:52:07,209.209 INFO    ] ================================================
[2026-06-22 14:52:07,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:52:07
[2026-06-22 14:52:08,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:52:08,745.745 INFO    ] Initializing speech engine...
[2026-06-22 14:52:08,751.751 INFO    ] 2026-06-22 14:52:08
[2026-06-22 14:52:09,022.022 INFO    ] 2026-06-22 14:52:09
[2026-06-22 14:52:09,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:52:09,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:52:09,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:52:09,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:52:09,586.586 INFO    ] time= 22/06/2026 14:52:09
[2026-06-22 14:52:09,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:52:09,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:52:09,725.725 INFO    ] No existing commands found in stream
[2026-06-22 14:52:14,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:52:14,756.756 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-22 14:52:15,705.705 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:52:15,708.708 INFO    ] Checking for system updates...
[2026-06-22 14:52:15,749.749 INFO    ] 200
[2026-06-22 14:52:15,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:52:15,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:52:15,823.823 INFO    ] No update needed
[2026-06-22 14:52:15,826.826 INFO    ] Checking for camera pi updates...
[2026-06-22 14:52:15,863.863 INFO    ] 200
[2026-06-22 14:52:15,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:52:15,916.916 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:52:16,023.023 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:52:16,025.025 INFO    ] No camera update needed
[2026-06-22 14:52:16,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:52:16,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:52:16,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:52:16,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:52:18,082.082 INFO    ] ================================================
[2026-06-22 14:52:18,099.099 INFO    ] Launching Daemon at Mon Jun 22 14:52:18 IST 2026
[2026-06-22 14:52:18,110.110 INFO    ] ================================================
[2026-06-22 14:52:18,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:52:18
[2026-06-22 14:52:19,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:52:19,522.522 INFO    ] Initializing speech engine...
[2026-06-22 14:52:19,530.530 INFO    ] 2026-06-22 14:52:19
[2026-06-22 14:52:19,805.805 INFO    ] 2026-06-22 14:52:19
[2026-06-22 14:52:19,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:52:20,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:52:20,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:52:20,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:52:20,218.218 INFO    ] time= 22/06/2026 14:52:20
[2026-06-22 14:52:20,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:52:20,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:52:20,386.386 INFO    ] No existing commands found in stream
[2026-06-22 14:52:25,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:52:25,414.414 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-22 14:52:27,040.040 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:52:27,043.043 INFO    ] Checking for system updates...
[2026-06-22 14:52:27,079.079 INFO    ] 200
[2026-06-22 14:52:27,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:52:27,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:52:27,143.143 INFO    ] No update needed
[2026-06-22 14:52:27,146.146 INFO    ] Checking for camera pi updates...
[2026-06-22 14:52:27,183.183 INFO    ] 200
[2026-06-22 14:52:27,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:52:27,228.228 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:52:27,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:52:27,312.312 INFO    ] No camera update needed
[2026-06-22 14:52:27,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:52:27,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:52:27,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:52:27,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:52:29,369.369 INFO    ] ================================================
[2026-06-22 14:52:29,385.385 INFO    ] Launching Daemon at Mon Jun 22 14:52:29 IST 2026
[2026-06-22 14:52:29,395.395 INFO    ] ================================================
[2026-06-22 14:52:29,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:52:29
[2026-06-22 14:52:30,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:52:30,863.863 INFO    ] Initializing speech engine...
[2026-06-22 14:52:30,873.873 INFO    ] 2026-06-22 14:52:30
[2026-06-22 14:52:31,142.142 INFO    ] 2026-06-22 14:52:31
[2026-06-22 14:52:31,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:52:31,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:52:31,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:52:31,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:52:31,708.708 INFO    ] time= 22/06/2026 14:52:31
[2026-06-22 14:52:31,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:52:31,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:52:32,038.038 INFO    ] No existing commands found in stream
[2026-06-22 14:52:37,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:52:37,063.063 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-22 14:52:40,971.971 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:52:40,973.973 INFO    ] Checking for system updates...
[2026-06-22 14:52:41,010.010 INFO    ] 200
[2026-06-22 14:52:41,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:52:41,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:52:41,070.070 INFO    ] No update needed
[2026-06-22 14:52:41,073.073 INFO    ] Checking for camera pi updates...
[2026-06-22 14:52:41,106.106 INFO    ] 200
[2026-06-22 14:52:41,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:52:41,148.148 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:52:41,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:52:41,238.238 INFO    ] No camera update needed
[2026-06-22 14:52:41,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:52:41,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:52:41,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:52:41,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:52:43,293.293 INFO    ] ================================================
[2026-06-22 14:52:43,308.308 INFO    ] Launching Daemon at Mon Jun 22 14:52:43 IST 2026
[2026-06-22 14:52:43,318.318 INFO    ] ================================================
[2026-06-22 14:52:43,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:52:43
[2026-06-22 14:52:44,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:52:44,657.657 INFO    ] Initializing speech engine...
[2026-06-22 14:52:44,663.663 INFO    ] 2026-06-22 14:52:44
[2026-06-22 14:52:44,908.908 INFO    ] 2026-06-22 14:52:44
[2026-06-22 14:52:44,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:52:45,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:52:45,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:52:45,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:52:45,344.344 INFO    ] time= 22/06/2026 14:52:45
[2026-06-22 14:52:45,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:52:45,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:52:45,619.619 INFO    ] No existing commands found in stream
[2026-06-22 14:52:50,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:52:50,634.634 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-22 14:52:52,583.583 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:52:52,585.585 INFO    ] Checking for system updates...
[2026-06-22 14:52:52,621.621 INFO    ] 200
[2026-06-22 14:52:52,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:52:52,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:52:52,680.680 INFO    ] No update needed
[2026-06-22 14:52:52,683.683 INFO    ] Checking for camera pi updates...
[2026-06-22 14:52:52,722.722 INFO    ] 200
[2026-06-22 14:52:52,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:52:52,765.765 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:52:52,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:52:52,851.851 INFO    ] No camera update needed
[2026-06-22 14:52:52,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:52:52,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:52:52,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:52:52,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:52:54,907.907 INFO    ] ================================================
[2026-06-22 14:52:54,923.923 INFO    ] Launching Daemon at Mon Jun 22 14:52:54 IST 2026
[2026-06-22 14:52:54,933.933 INFO    ] ================================================
[2026-06-22 14:52:55,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:52:55
[2026-06-22 14:52:56,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:52:56,432.432 INFO    ] Initializing speech engine...
[2026-06-22 14:52:56,443.443 INFO    ] 2026-06-22 14:52:56
[2026-06-22 14:52:56,710.710 INFO    ] 2026-06-22 14:52:56
[2026-06-22 14:52:56,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:52:57,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:52:57,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:52:57,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:52:57,257.257 INFO    ] time= 22/06/2026 14:52:57
[2026-06-22 14:52:57,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:52:57,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:52:57,424.424 INFO    ] No existing commands found in stream
[2026-06-22 14:53:02,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:53:02,460.460 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-22 14:53:05,535.535 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:53:05,538.538 INFO    ] Checking for system updates...
[2026-06-22 14:53:05,575.575 INFO    ] 200
[2026-06-22 14:53:05,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:53:05,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:53:05,635.635 INFO    ] No update needed
[2026-06-22 14:53:05,638.638 INFO    ] Checking for camera pi updates...
[2026-06-22 14:53:05,676.676 INFO    ] 200
[2026-06-22 14:53:05,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:53:05,721.721 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:53:05,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:53:05,811.811 INFO    ] No camera update needed
[2026-06-22 14:53:05,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:53:05,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:53:05,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:53:05,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:53:07,873.873 INFO    ] ================================================
[2026-06-22 14:53:07,889.889 INFO    ] Launching Daemon at Mon Jun 22 14:53:07 IST 2026
[2026-06-22 14:53:07,900.900 INFO    ] ================================================
[2026-06-22 14:53:08,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:53:08
[2026-06-22 14:53:09,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:53:09,321.321 INFO    ] Initializing speech engine...
[2026-06-22 14:53:09,344.344 INFO    ] 2026-06-22 14:53:09
[2026-06-22 14:53:09,612.612 INFO    ] 2026-06-22 14:53:09
[2026-06-22 14:53:09,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:53:09,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:53:09,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:53:10,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:53:10,022.022 INFO    ] time= 22/06/2026 14:53:10
[2026-06-22 14:53:10,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:53:10,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:53:10,214.214 INFO    ] No existing commands found in stream
[2026-06-22 14:53:15,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:53:15,247.247 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-22 14:53:15,833.833 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:53:15,834.834 INFO    ] Checking for system updates...
[2026-06-22 14:53:15,864.864 INFO    ] 200
[2026-06-22 14:53:15,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:53:15,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:53:15,922.922 INFO    ] No update needed
[2026-06-22 14:53:15,924.924 INFO    ] Checking for camera pi updates...
[2026-06-22 14:53:15,964.964 INFO    ] 200
[2026-06-22 14:53:15,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:53:16,007.007 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:53:16,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:53:16,095.095 INFO    ] No camera update needed
[2026-06-22 14:53:16,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:53:16,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:53:16,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:53:16,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:53:18,153.153 INFO    ] ================================================
[2026-06-22 14:53:18,168.168 INFO    ] Launching Daemon at Mon Jun 22 14:53:18 IST 2026
[2026-06-22 14:53:18,178.178 INFO    ] ================================================
[2026-06-22 14:53:18,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:53:18
[2026-06-22 14:53:19,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:53:19,491.491 INFO    ] Initializing speech engine...
[2026-06-22 14:53:19,516.516 INFO    ] 2026-06-22 14:53:19
[2026-06-22 14:53:19,771.771 INFO    ] 2026-06-22 14:53:19
[2026-06-22 14:53:19,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:53:19,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:53:20,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:53:20,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:53:20,147.147 INFO    ] time= 22/06/2026 14:53:20
[2026-06-22 14:53:20,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:53:20,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:53:20,349.349 INFO    ] No existing commands found in stream
[2026-06-22 14:53:25,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:53:25,363.363 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-22 14:53:26,855.855 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:53:26,857.857 INFO    ] Checking for system updates...
[2026-06-22 14:53:26,879.879 INFO    ] 200
[2026-06-22 14:53:26,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:53:26,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:53:26,914.914 INFO    ] No update needed
[2026-06-22 14:53:26,915.915 INFO    ] Checking for camera pi updates...
[2026-06-22 14:53:26,935.935 INFO    ] 200
[2026-06-22 14:53:26,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:53:26,959.959 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:53:27,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:53:27,039.039 INFO    ] No camera update needed
[2026-06-22 14:53:27,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:53:27,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:53:27,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:53:27,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:53:29,094.094 INFO    ] ================================================
[2026-06-22 14:53:29,110.110 INFO    ] Launching Daemon at Mon Jun 22 14:53:29 IST 2026
[2026-06-22 14:53:29,120.120 INFO    ] ================================================
[2026-06-22 14:53:29,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:53:29
[2026-06-22 14:53:30,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:53:30,497.497 INFO    ] Initializing speech engine...
[2026-06-22 14:53:30,507.507 INFO    ] 2026-06-22 14:53:30
[2026-06-22 14:53:30,769.769 INFO    ] 2026-06-22 14:53:30
[2026-06-22 14:53:30,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:53:31,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:53:31,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:53:31,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:53:31,259.259 INFO    ] time= 22/06/2026 14:53:31
[2026-06-22 14:53:31,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:53:31,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:53:31,501.501 INFO    ] No existing commands found in stream
[2026-06-22 14:53:36,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:53:36,535.535 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-22 14:53:39,445.445 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:53:39,446.446 INFO    ] Checking for system updates...
[2026-06-22 14:53:39,469.469 INFO    ] 200
[2026-06-22 14:53:39,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:53:39,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:53:39,528.528 INFO    ] No update needed
[2026-06-22 14:53:39,531.531 INFO    ] Checking for camera pi updates...
[2026-06-22 14:53:39,566.566 INFO    ] 200
[2026-06-22 14:53:39,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:53:39,610.610 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:53:39,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:53:39,703.703 INFO    ] No camera update needed
[2026-06-22 14:53:39,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:53:39,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:53:39,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:53:39,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:53:41,762.762 INFO    ] ================================================
[2026-06-22 14:53:41,777.777 INFO    ] Launching Daemon at Mon Jun 22 14:53:41 IST 2026
[2026-06-22 14:53:41,788.788 INFO    ] ================================================
[2026-06-22 14:53:42,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:53:42
[2026-06-22 14:53:42,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:53:43,166.166 INFO    ] Initializing speech engine...
[2026-06-22 14:53:43,172.172 INFO    ] 2026-06-22 14:53:43
[2026-06-22 14:53:43,432.432 INFO    ] 2026-06-22 14:53:43
[2026-06-22 14:53:43,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:53:43,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:53:43,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:53:44,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:53:44,186.186 INFO    ] time= 22/06/2026 14:53:44
[2026-06-22 14:53:44,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:53:44,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:53:44,424.424 INFO    ] No existing commands found in stream
[2026-06-22 14:53:49,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:53:49,437.437 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-22 14:53:52,565.565 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:53:52,567.567 INFO    ] Checking for system updates...
[2026-06-22 14:53:52,589.589 INFO    ] 200
[2026-06-22 14:53:52,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:53:52,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:53:52,647.647 INFO    ] No update needed
[2026-06-22 14:53:52,650.650 INFO    ] Checking for camera pi updates...
[2026-06-22 14:53:52,683.683 INFO    ] 200
[2026-06-22 14:53:52,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:53:52,728.728 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:53:52,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:53:52,818.818 INFO    ] No camera update needed
[2026-06-22 14:53:52,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:53:52,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:53:52,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:53:52,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:53:54,875.875 INFO    ] ================================================
[2026-06-22 14:53:54,890.890 INFO    ] Launching Daemon at Mon Jun 22 14:53:54 IST 2026
[2026-06-22 14:53:54,900.900 INFO    ] ================================================
[2026-06-22 14:53:55,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:53:55
[2026-06-22 14:53:55,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:53:56,296.296 INFO    ] Initializing speech engine...
[2026-06-22 14:53:56,304.304 INFO    ] 2026-06-22 14:53:56
[2026-06-22 14:53:56,618.618 INFO    ] 2026-06-22 14:53:56
[2026-06-22 14:53:56,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:53:56,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:53:57,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:53:57,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:53:57,295.295 INFO    ] time= 22/06/2026 14:53:57
[2026-06-22 14:53:57,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:53:57,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:53:57,545.545 INFO    ] No existing commands found in stream
[2026-06-22 14:54:02,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:54:02,575.575 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-22 14:54:06,164.164 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:54:06,167.167 INFO    ] Checking for system updates...
[2026-06-22 14:54:06,207.207 INFO    ] 200
[2026-06-22 14:54:06,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:54:06,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:54:06,270.270 INFO    ] No update needed
[2026-06-22 14:54:06,273.273 INFO    ] Checking for camera pi updates...
[2026-06-22 14:54:06,307.307 INFO    ] 200
[2026-06-22 14:54:06,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:54:06,351.351 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:54:06,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:54:06,542.542 INFO    ] No camera update needed
[2026-06-22 14:54:06,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:54:06,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:54:06,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:54:06,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:54:08,600.600 INFO    ] ================================================
[2026-06-22 14:54:08,615.615 INFO    ] Launching Daemon at Mon Jun 22 14:54:08 IST 2026
[2026-06-22 14:54:08,626.626 INFO    ] ================================================
[2026-06-22 14:54:09,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:54:09
[2026-06-22 14:54:09,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:54:10,028.028 INFO    ] Initializing speech engine...
[2026-06-22 14:54:10,043.043 INFO    ] 2026-06-22 14:54:10
[2026-06-22 14:54:10,319.319 INFO    ] 2026-06-22 14:54:10
[2026-06-22 14:54:10,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:54:10,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:54:10,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:54:10,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:54:10,706.706 INFO    ] time= 22/06/2026 14:54:10
[2026-06-22 14:54:10,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:54:10,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:54:10,888.888 INFO    ] No existing commands found in stream
[2026-06-22 14:54:15,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:54:15,916.916 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-22 14:54:16,453.453 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:54:16,456.456 INFO    ] Checking for system updates...
[2026-06-22 14:54:16,491.491 INFO    ] 200
[2026-06-22 14:54:16,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:54:16,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:54:16,550.550 INFO    ] No update needed
[2026-06-22 14:54:16,552.552 INFO    ] Checking for camera pi updates...
[2026-06-22 14:54:16,586.586 INFO    ] 200
[2026-06-22 14:54:16,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:54:16,628.628 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:54:16,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:54:16,681.681 INFO    ] No camera update needed
[2026-06-22 14:54:16,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:54:16,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:54:16,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:54:16,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:54:18,736.736 INFO    ] ================================================
[2026-06-22 14:54:18,751.751 INFO    ] Launching Daemon at Mon Jun 22 14:54:18 IST 2026
[2026-06-22 14:54:18,762.762 INFO    ] ================================================
[2026-06-22 14:54:19,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:54:19
[2026-06-22 14:54:19,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:54:20,250.250 INFO    ] Initializing speech engine...
[2026-06-22 14:54:20,262.262 INFO    ] 2026-06-22 14:54:20
[2026-06-22 14:54:20,535.535 INFO    ] 2026-06-22 14:54:20
[2026-06-22 14:54:20,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:54:20,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:54:20,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:54:20,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:54:21,023.023 INFO    ] time= 22/06/2026 14:54:20
[2026-06-22 14:54:21,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:54:21,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:54:21,194.194 INFO    ] No existing commands found in stream
[2026-06-22 14:54:26,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:54:26,227.227 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-22 14:54:29,899.899 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:54:29,902.902 INFO    ] Checking for system updates...
[2026-06-22 14:54:29,940.940 INFO    ] 200
[2026-06-22 14:54:29,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:54:29,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:54:29,999.999 INFO    ] No update needed
[2026-06-22 14:54:30,001.001 INFO    ] Checking for camera pi updates...
[2026-06-22 14:54:30,039.039 INFO    ] 200
[2026-06-22 14:54:30,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:54:30,088.088 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:54:30,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:54:30,192.192 INFO    ] No camera update needed
[2026-06-22 14:54:30,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:54:30,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:54:30,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:54:30,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:54:32,250.250 INFO    ] ================================================
[2026-06-22 14:54:32,267.267 INFO    ] Launching Daemon at Mon Jun 22 14:54:32 IST 2026
[2026-06-22 14:54:32,279.279 INFO    ] ================================================
[2026-06-22 14:54:32,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:54:32
[2026-06-22 14:54:33,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:54:33,790.790 INFO    ] Initializing speech engine...
[2026-06-22 14:54:33,799.799 INFO    ] 2026-06-22 14:54:33
[2026-06-22 14:54:34,045.045 INFO    ] 2026-06-22 14:54:34
[2026-06-22 14:54:34,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:54:34,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:54:34,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:54:34,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:54:34,598.598 INFO    ] time= 22/06/2026 14:54:34
[2026-06-22 14:54:34,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:54:34,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:54:34,761.761 INFO    ] No existing commands found in stream
[2026-06-22 14:54:39,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:54:39,789.789 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-22 14:54:41,720.720 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:54:41,723.723 INFO    ] Checking for system updates...
[2026-06-22 14:54:41,762.762 INFO    ] 200
[2026-06-22 14:54:41,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:54:41,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:54:41,825.825 INFO    ] No update needed
[2026-06-22 14:54:41,827.827 INFO    ] Checking for camera pi updates...
[2026-06-22 14:54:41,861.861 INFO    ] 200
[2026-06-22 14:54:41,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:54:41,904.904 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:54:41,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:54:41,985.985 INFO    ] No camera update needed
[2026-06-22 14:54:41,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:54:41,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:54:41,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:54:42,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:54:44,039.039 INFO    ] ================================================
[2026-06-22 14:54:44,055.055 INFO    ] Launching Daemon at Mon Jun 22 14:54:44 IST 2026
[2026-06-22 14:54:44,065.065 INFO    ] ================================================
[2026-06-22 14:54:44,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:54:44
[2026-06-22 14:54:45,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:54:45,549.549 INFO    ] Initializing speech engine...
[2026-06-22 14:54:45,556.556 INFO    ] 2026-06-22 14:54:45
[2026-06-22 14:54:45,829.829 INFO    ] 2026-06-22 14:54:45
[2026-06-22 14:54:45,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:54:46,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:54:46,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:54:46,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:54:46,407.407 INFO    ] time= 22/06/2026 14:54:46
[2026-06-22 14:54:46,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:54:46,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:54:46,567.567 INFO    ] No existing commands found in stream
[2026-06-22 14:54:51,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:54:51,601.601 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-22 14:54:52,041.041 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:54:52,042.042 INFO    ] Checking for system updates...
[2026-06-22 14:54:52,064.064 INFO    ] 200
[2026-06-22 14:54:52,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:54:52,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:54:52,098.098 INFO    ] No update needed
[2026-06-22 14:54:52,099.099 INFO    ] Checking for camera pi updates...
[2026-06-22 14:54:52,124.124 INFO    ] 200
[2026-06-22 14:54:52,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:54:52,168.168 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:54:52,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:54:52,256.256 INFO    ] No camera update needed
[2026-06-22 14:54:52,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:54:52,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:54:52,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:54:52,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:54:54,312.312 INFO    ] ================================================
[2026-06-22 14:54:54,327.327 INFO    ] Launching Daemon at Mon Jun 22 14:54:54 IST 2026
[2026-06-22 14:54:54,338.338 INFO    ] ================================================
[2026-06-22 14:54:54,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:54:54
[2026-06-22 14:54:55,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:54:55,683.683 INFO    ] Initializing speech engine...
[2026-06-22 14:54:55,694.694 INFO    ] 2026-06-22 14:54:55
[2026-06-22 14:54:55,943.943 INFO    ] 2026-06-22 14:54:55
[2026-06-22 14:54:55,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:54:56,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:54:56,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:54:56,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:54:56,506.506 INFO    ] time= 22/06/2026 14:54:56
[2026-06-22 14:54:56,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:54:56,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:54:56,662.662 INFO    ] No existing commands found in stream
[2026-06-22 14:55:01,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:55:01,694.694 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-22 14:55:03,384.384 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:55:03,388.388 INFO    ] Checking for system updates...
[2026-06-22 14:55:03,439.439 INFO    ] 200
[2026-06-22 14:55:03,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:55:03,516.516 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:55:03,519.519 INFO    ] No update needed
[2026-06-22 14:55:03,522.522 INFO    ] Checking for camera pi updates...
[2026-06-22 14:55:03,555.555 INFO    ] 200
[2026-06-22 14:55:03,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:55:03,602.602 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:55:03,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:55:03,679.679 INFO    ] No camera update needed
[2026-06-22 14:55:03,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:55:03,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:55:03,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:55:03,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:55:05,735.735 INFO    ] ================================================
[2026-06-22 14:55:05,750.750 INFO    ] Launching Daemon at Mon Jun 22 14:55:05 IST 2026
[2026-06-22 14:55:05,760.760 INFO    ] ================================================
[2026-06-22 14:55:06,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:55:06
[2026-06-22 14:55:06,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:55:07,181.181 INFO    ] Initializing speech engine...
[2026-06-22 14:55:07,204.204 INFO    ] 2026-06-22 14:55:07
[2026-06-22 14:55:07,457.457 INFO    ] 2026-06-22 14:55:07
[2026-06-22 14:55:07,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:55:07,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:55:07,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:55:07,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:55:07,926.926 INFO    ] time= 22/06/2026 14:55:07
[2026-06-22 14:55:07,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:55:07,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:55:08,053.053 INFO    ] No existing commands found in stream
[2026-06-22 14:55:13,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:55:13,086.086 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-22 14:55:14,298.298 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:55:14,300.300 INFO    ] Checking for system updates...
[2026-06-22 14:55:14,326.326 INFO    ] 200
[2026-06-22 14:55:14,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:55:14,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:55:14,358.358 INFO    ] No update needed
[2026-06-22 14:55:14,360.360 INFO    ] Checking for camera pi updates...
[2026-06-22 14:55:14,381.381 INFO    ] 200
[2026-06-22 14:55:14,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:55:14,406.406 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:55:14,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:55:14,478.478 INFO    ] No camera update needed
[2026-06-22 14:55:14,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:55:14,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:55:14,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:55:14,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:55:16,534.534 INFO    ] ================================================
[2026-06-22 14:55:16,549.549 INFO    ] Launching Daemon at Mon Jun 22 14:55:16 IST 2026
[2026-06-22 14:55:16,559.559 INFO    ] ================================================
[2026-06-22 14:55:17,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:55:17
[2026-06-22 14:55:17,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:55:17,898.898 INFO    ] Initializing speech engine...
[2026-06-22 14:55:17,906.906 INFO    ] 2026-06-22 14:55:17
[2026-06-22 14:55:18,196.196 INFO    ] 2026-06-22 14:55:18
[2026-06-22 14:55:18,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:55:18,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:55:18,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:55:18,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:55:18,607.607 INFO    ] time= 22/06/2026 14:55:18
[2026-06-22 14:55:18,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:55:18,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:55:18,691.691 INFO    ] No existing commands found in stream
[2026-06-22 14:55:23,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:55:23,706.706 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-22 14:55:25,180.180 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:55:25,183.183 INFO    ] Checking for system updates...
[2026-06-22 14:55:25,222.222 INFO    ] 200
[2026-06-22 14:55:25,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:55:25,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:55:25,279.279 INFO    ] No update needed
[2026-06-22 14:55:25,281.281 INFO    ] Checking for camera pi updates...
[2026-06-22 14:55:25,315.315 INFO    ] 200
[2026-06-22 14:55:25,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:55:25,358.358 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:55:25,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:55:25,448.448 INFO    ] No camera update needed
[2026-06-22 14:55:25,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:55:25,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:55:25,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:55:25,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:55:27,503.503 INFO    ] ================================================
[2026-06-22 14:55:27,519.519 INFO    ] Launching Daemon at Mon Jun 22 14:55:27 IST 2026
[2026-06-22 14:55:27,530.530 INFO    ] ================================================
[2026-06-22 14:55:28,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:55:28
[2026-06-22 14:55:28,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:55:29,038.038 INFO    ] Initializing speech engine...
[2026-06-22 14:55:29,048.048 INFO    ] 2026-06-22 14:55:29
[2026-06-22 14:55:29,321.321 INFO    ] 2026-06-22 14:55:29
[2026-06-22 14:55:29,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:55:29,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:55:29,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:55:29,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:55:29,800.800 INFO    ] time= 22/06/2026 14:55:29
[2026-06-22 14:55:29,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:55:29,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:55:30,022.022 INFO    ] No existing commands found in stream
[2026-06-22 14:55:35,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:55:35,051.051 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-22 14:55:39,336.336 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:55:39,337.337 INFO    ] Checking for system updates...
[2026-06-22 14:55:39,359.359 INFO    ] 200
[2026-06-22 14:55:39,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:55:39,394.394 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:55:39,395.395 INFO    ] No update needed
[2026-06-22 14:55:39,397.397 INFO    ] Checking for camera pi updates...
[2026-06-22 14:55:39,417.417 INFO    ] 200
[2026-06-22 14:55:39,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:55:39,449.449 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:55:39,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:55:39,559.559 INFO    ] No camera update needed
[2026-06-22 14:55:39,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:55:39,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:55:39,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:55:39,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:55:41,620.620 INFO    ] ================================================
[2026-06-22 14:55:41,636.636 INFO    ] Launching Daemon at Mon Jun 22 14:55:41 IST 2026
[2026-06-22 14:55:41,647.647 INFO    ] ================================================
[2026-06-22 14:55:42,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:55:42
[2026-06-22 14:55:42,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:55:42,970.970 INFO    ] Initializing speech engine...
[2026-06-22 14:55:42,982.982 INFO    ] 2026-06-22 14:55:42
[2026-06-22 14:55:43,247.247 INFO    ] 2026-06-22 14:55:43
[2026-06-22 14:55:43,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:55:43,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:55:43,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:55:43,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:55:43,614.614 INFO    ] time= 22/06/2026 14:55:43
[2026-06-22 14:55:43,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:55:43,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:55:43,809.809 INFO    ] No existing commands found in stream
[2026-06-22 14:55:48,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:55:48,823.823 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-22 14:55:52,140.140 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:55:52,142.142 INFO    ] Checking for system updates...
[2026-06-22 14:55:52,172.172 INFO    ] 200
[2026-06-22 14:55:52,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:55:52,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:55:52,236.236 INFO    ] No update needed
[2026-06-22 14:55:52,238.238 INFO    ] Checking for camera pi updates...
[2026-06-22 14:55:52,272.272 INFO    ] 200
[2026-06-22 14:55:52,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:55:52,316.316 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:55:52,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:55:52,398.398 INFO    ] No camera update needed
[2026-06-22 14:55:52,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:55:52,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:55:52,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:55:52,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:55:54,455.455 INFO    ] ================================================
[2026-06-22 14:55:54,470.470 INFO    ] Launching Daemon at Mon Jun 22 14:55:54 IST 2026
[2026-06-22 14:55:54,482.482 INFO    ] ================================================
[2026-06-22 14:55:55,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:55:55
[2026-06-22 14:55:55,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:55:55,801.801 INFO    ] Initializing speech engine...
[2026-06-22 14:55:55,809.809 INFO    ] 2026-06-22 14:55:55
[2026-06-22 14:55:56,078.078 INFO    ] 2026-06-22 14:55:56
[2026-06-22 14:55:56,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:55:56,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:55:56,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:55:56,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:55:56,475.475 INFO    ] time= 22/06/2026 14:55:56
[2026-06-22 14:55:56,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:55:56,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:55:56,638.638 INFO    ] No existing commands found in stream
[2026-06-22 14:56:01,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:56:01,670.670 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-22 14:56:04,764.764 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:56:04,767.767 INFO    ] Checking for system updates...
[2026-06-22 14:56:04,802.802 INFO    ] 200
[2026-06-22 14:56:04,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:56:04,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:56:04,861.861 INFO    ] No update needed
[2026-06-22 14:56:04,863.863 INFO    ] Checking for camera pi updates...
[2026-06-22 14:56:04,897.897 INFO    ] 200
[2026-06-22 14:56:04,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:56:04,940.940 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:56:05,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:56:05,023.023 INFO    ] No camera update needed
[2026-06-22 14:56:05,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:56:05,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:56:05,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:56:05,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:56:07,079.079 INFO    ] ================================================
[2026-06-22 14:56:07,094.094 INFO    ] Launching Daemon at Mon Jun 22 14:56:07 IST 2026
[2026-06-22 14:56:07,106.106 INFO    ] ================================================
[2026-06-22 14:56:07,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:56:07
[2026-06-22 14:56:08,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:56:08,534.534 INFO    ] Initializing speech engine...
[2026-06-22 14:56:08,554.554 INFO    ] 2026-06-22 14:56:08
[2026-06-22 14:56:08,816.816 INFO    ] 2026-06-22 14:56:08
[2026-06-22 14:56:08,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:56:09,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:56:09,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:56:09,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:56:09,227.227 INFO    ] time= 22/06/2026 14:56:09
[2026-06-22 14:56:09,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:56:09,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:56:09,389.389 INFO    ] No existing commands found in stream
[2026-06-22 14:56:14,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:56:14,422.422 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-22 14:56:15,652.652 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:56:15,654.654 INFO    ] Checking for system updates...
[2026-06-22 14:56:15,688.688 INFO    ] 200
[2026-06-22 14:56:15,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:56:15,742.742 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:56:15,745.745 INFO    ] No update needed
[2026-06-22 14:56:15,747.747 INFO    ] Checking for camera pi updates...
[2026-06-22 14:56:15,781.781 INFO    ] 200
[2026-06-22 14:56:15,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:56:15,832.832 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:56:16,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:56:16,016.016 INFO    ] No camera update needed
[2026-06-22 14:56:16,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:56:16,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:56:16,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:56:16,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:56:18,072.072 INFO    ] ================================================
[2026-06-22 14:56:18,088.088 INFO    ] Launching Daemon at Mon Jun 22 14:56:18 IST 2026
[2026-06-22 14:56:18,099.099 INFO    ] ================================================
[2026-06-22 14:56:18,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:56:18
[2026-06-22 14:56:19,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:56:19,412.412 INFO    ] Initializing speech engine...
[2026-06-22 14:56:19,428.428 INFO    ] 2026-06-22 14:56:19
[2026-06-22 14:56:19,706.706 INFO    ] 2026-06-22 14:56:19
[2026-06-22 14:56:19,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:56:19,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:56:19,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:56:20,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:56:20,111.111 INFO    ] time= 22/06/2026 14:56:20
[2026-06-22 14:56:20,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:56:20,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:56:20,272.272 INFO    ] No existing commands found in stream
[2026-06-22 14:56:25,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:56:25,300.300 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-22 14:56:28,008.008 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:56:28,011.011 INFO    ] Checking for system updates...
[2026-06-22 14:56:28,049.049 INFO    ] 200
[2026-06-22 14:56:28,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:56:28,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:56:28,106.106 INFO    ] No update needed
[2026-06-22 14:56:28,109.109 INFO    ] Checking for camera pi updates...
[2026-06-22 14:56:28,143.143 INFO    ] 200
[2026-06-22 14:56:28,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:56:28,186.186 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:56:28,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:56:28,275.275 INFO    ] No camera update needed
[2026-06-22 14:56:28,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:56:28,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:56:28,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:56:28,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:56:30,331.331 INFO    ] ================================================
[2026-06-22 14:56:30,346.346 INFO    ] Launching Daemon at Mon Jun 22 14:56:30 IST 2026
[2026-06-22 14:56:30,357.357 INFO    ] ================================================
[2026-06-22 14:56:30,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:56:30
[2026-06-22 14:56:31,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:56:31,905.905 INFO    ] Initializing speech engine...
[2026-06-22 14:56:31,910.910 INFO    ] 2026-06-22 14:56:31
[2026-06-22 14:56:32,224.224 INFO    ] 2026-06-22 14:56:32
[2026-06-22 14:56:32,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:56:32,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:56:32,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:56:32,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:56:32,778.778 INFO    ] time= 22/06/2026 14:56:32
[2026-06-22 14:56:32,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:56:32,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:56:32,947.947 INFO    ] No existing commands found in stream
[2026-06-22 14:56:37,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:56:37,961.961 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-22 14:56:39,698.698 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:56:39,701.701 INFO    ] Checking for system updates...
[2026-06-22 14:56:39,738.738 INFO    ] 200
[2026-06-22 14:56:39,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:56:39,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:56:39,804.804 INFO    ] No update needed
[2026-06-22 14:56:39,807.807 INFO    ] Checking for camera pi updates...
[2026-06-22 14:56:39,842.842 INFO    ] 200
[2026-06-22 14:56:39,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:56:39,886.886 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:56:39,974.974 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:56:39,977.977 INFO    ] No camera update needed
[2026-06-22 14:56:39,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:56:39,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:56:39,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:56:39,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:56:42,037.037 INFO    ] ================================================
[2026-06-22 14:56:42,053.053 INFO    ] Launching Daemon at Mon Jun 22 14:56:42 IST 2026
[2026-06-22 14:56:42,064.064 INFO    ] ================================================
[2026-06-22 14:56:42,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:56:42
[2026-06-22 14:56:43,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:56:43,564.564 INFO    ] Initializing speech engine...
[2026-06-22 14:56:43,575.575 INFO    ] 2026-06-22 14:56:43
[2026-06-22 14:56:43,881.881 INFO    ] 2026-06-22 14:56:43
[2026-06-22 14:56:43,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:56:44,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:56:44,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:56:44,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:56:44,399.399 INFO    ] time= 22/06/2026 14:56:44
[2026-06-22 14:56:44,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:56:44,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:56:44,540.540 INFO    ] No existing commands found in stream
[2026-06-22 14:56:49,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:56:49,568.568 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-22 14:56:51,048.048 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:56:51,049.049 INFO    ] Checking for system updates...
[2026-06-22 14:56:51,071.071 INFO    ] 200
[2026-06-22 14:56:51,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:56:51,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:56:51,134.134 INFO    ] No update needed
[2026-06-22 14:56:51,137.137 INFO    ] Checking for camera pi updates...
[2026-06-22 14:56:51,175.175 INFO    ] 200
[2026-06-22 14:56:51,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:56:51,219.219 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:56:51,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:56:51,307.307 INFO    ] No camera update needed
[2026-06-22 14:56:51,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:56:51,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:56:51,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:56:51,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:56:53,366.366 INFO    ] ================================================
[2026-06-22 14:56:53,382.382 INFO    ] Launching Daemon at Mon Jun 22 14:56:53 IST 2026
[2026-06-22 14:56:53,393.393 INFO    ] ================================================
[2026-06-22 14:56:53,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:56:53
[2026-06-22 14:56:54,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:56:54,760.760 INFO    ] Initializing speech engine...
[2026-06-22 14:56:54,767.767 INFO    ] 2026-06-22 14:56:54
[2026-06-22 14:56:55,028.028 INFO    ] 2026-06-22 14:56:55
[2026-06-22 14:56:55,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:56:55,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:56:55,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:56:55,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:56:55,573.573 INFO    ] time= 22/06/2026 14:56:55
[2026-06-22 14:56:55,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:56:55,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:56:55,729.729 INFO    ] No existing commands found in stream
[2026-06-22 14:57:00,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:57:00,751.751 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-22 14:57:04,420.420 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:57:04,423.423 INFO    ] Checking for system updates...
[2026-06-22 14:57:04,459.459 INFO    ] 200
[2026-06-22 14:57:04,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:57:04,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:57:04,522.522 INFO    ] No update needed
[2026-06-22 14:57:04,524.524 INFO    ] Checking for camera pi updates...
[2026-06-22 14:57:04,558.558 INFO    ] 200
[2026-06-22 14:57:04,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:57:04,602.602 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:57:04,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:57:04,681.681 INFO    ] No camera update needed
[2026-06-22 14:57:04,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:57:04,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:57:04,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:57:04,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:57:06,739.739 INFO    ] ================================================
[2026-06-22 14:57:06,753.753 INFO    ] Launching Daemon at Mon Jun 22 14:57:06 IST 2026
[2026-06-22 14:57:06,764.764 INFO    ] ================================================
[2026-06-22 14:57:07,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:57:07
[2026-06-22 14:57:07,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:57:08,158.158 INFO    ] Initializing speech engine...
[2026-06-22 14:57:08,168.168 INFO    ] 2026-06-22 14:57:08
[2026-06-22 14:57:08,429.429 INFO    ] 2026-06-22 14:57:08
[2026-06-22 14:57:08,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:57:08,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:57:08,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:57:08,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:57:08,985.985 INFO    ] time= 22/06/2026 14:57:08
[2026-06-22 14:57:08,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:57:09,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:57:09,122.122 INFO    ] No existing commands found in stream
[2026-06-22 14:57:14,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:57:14,150.150 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-22 14:57:18,210.210 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:57:18,213.213 INFO    ] Checking for system updates...
[2026-06-22 14:57:18,250.250 INFO    ] 200
[2026-06-22 14:57:18,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:57:18,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:57:18,311.311 INFO    ] No update needed
[2026-06-22 14:57:18,313.313 INFO    ] Checking for camera pi updates...
[2026-06-22 14:57:18,348.348 INFO    ] 200
[2026-06-22 14:57:18,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:57:18,391.391 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:57:18,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:57:18,483.483 INFO    ] No camera update needed
[2026-06-22 14:57:18,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:57:18,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:57:18,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:57:18,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:57:20,538.538 INFO    ] ================================================
[2026-06-22 14:57:20,553.553 INFO    ] Launching Daemon at Mon Jun 22 14:57:20 IST 2026
[2026-06-22 14:57:20,563.563 INFO    ] ================================================
[2026-06-22 14:57:21,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:57:21
[2026-06-22 14:57:21,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:57:21,905.905 INFO    ] Initializing speech engine...
[2026-06-22 14:57:21,912.912 INFO    ] 2026-06-22 14:57:21
[2026-06-22 14:57:22,157.157 INFO    ] 2026-06-22 14:57:22
[2026-06-22 14:57:22,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:57:22,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:57:22,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:57:22,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:57:22,650.650 INFO    ] time= 22/06/2026 14:57:22
[2026-06-22 14:57:22,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:57:22,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:57:22,853.853 INFO    ] No existing commands found in stream
[2026-06-22 14:57:27,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:57:27,880.880 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-22 14:57:29,792.792 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 14:57:29,795.795 INFO    ] Checking for system updates...
[2026-06-22 14:57:29,831.831 INFO    ] 200
[2026-06-22 14:57:29,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:57:29,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:57:29,888.888 INFO    ] No update needed
[2026-06-22 14:57:29,891.891 INFO    ] Checking for camera pi updates...
[2026-06-22 14:57:29,924.924 INFO    ] 200
[2026-06-22 14:57:29,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:57:29,968.968 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:57:30,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:57:30,071.071 INFO    ] No camera update needed
[2026-06-22 14:57:30,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:57:30,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:57:30,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:57:30,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:57:32,127.127 INFO    ] ================================================
[2026-06-22 14:57:32,143.143 INFO    ] Launching Daemon at Mon Jun 22 14:57:32 IST 2026
[2026-06-22 14:57:32,158.158 INFO    ] ================================================
[2026-06-22 14:57:32,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:57:32
[2026-06-22 14:57:33,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:57:33,780.780 INFO    ] Initializing speech engine...
[2026-06-22 14:57:33,793.793 INFO    ] 2026-06-22 14:57:33
[2026-06-22 14:57:34,041.041 INFO    ] 2026-06-22 14:57:34
[2026-06-22 14:57:34,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:57:34,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:57:34,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:57:34,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:57:34,527.527 INFO    ] time= 22/06/2026 14:57:34
[2026-06-22 14:57:34,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:57:34,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:57:34,731.731 INFO    ] No existing commands found in stream
[2026-06-22 14:57:39,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:57:39,761.761 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-22 14:57:43,745.745 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:57:43,747.747 INFO    ] Checking for system updates...
[2026-06-22 14:57:43,769.769 INFO    ] 200
[2026-06-22 14:57:43,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:57:43,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:57:43,802.802 INFO    ] No update needed
[2026-06-22 14:57:43,803.803 INFO    ] Checking for camera pi updates...
[2026-06-22 14:57:43,824.824 INFO    ] 200
[2026-06-22 14:57:43,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:57:43,855.855 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:57:43,935.935 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:57:43,937.937 INFO    ] No camera update needed
[2026-06-22 14:57:43,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:57:43,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:57:43,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:57:43,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:57:46,995.995 INFO    ] ================================================
[2026-06-22 14:57:46,010.010 INFO    ] Launching Daemon at Mon Jun 22 14:57:46 IST 2026
[2026-06-22 14:57:46,021.021 INFO    ] ================================================
[2026-06-22 14:57:46,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:57:46
[2026-06-22 14:57:47,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:57:47,496.496 INFO    ] Initializing speech engine...
[2026-06-22 14:57:47,510.510 INFO    ] 2026-06-22 14:57:47
[2026-06-22 14:57:47,791.791 INFO    ] 2026-06-22 14:57:47
[2026-06-22 14:57:47,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:57:48,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:57:48,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:57:48,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:57:48,330.330 INFO    ] time= 22/06/2026 14:57:48
[2026-06-22 14:57:48,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:57:48,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:57:48,490.490 INFO    ] No existing commands found in stream
[2026-06-22 14:57:53,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:57:53,527.527 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-22 14:57:54,187.187 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:57:54,190.190 INFO    ] Checking for system updates...
[2026-06-22 14:57:54,228.228 INFO    ] 200
[2026-06-22 14:57:54,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:57:54,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:57:54,290.290 INFO    ] No update needed
[2026-06-22 14:57:54,293.293 INFO    ] Checking for camera pi updates...
[2026-06-22 14:57:54,327.327 INFO    ] 200
[2026-06-22 14:57:54,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:57:54,369.369 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:57:54,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:57:54,457.457 INFO    ] No camera update needed
[2026-06-22 14:57:54,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:57:54,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:57:54,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:57:54,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:57:56,512.512 INFO    ] ================================================
[2026-06-22 14:57:56,527.527 INFO    ] Launching Daemon at Mon Jun 22 14:57:56 IST 2026
[2026-06-22 14:57:56,538.538 INFO    ] ================================================
[2026-06-22 14:57:57,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:57:57
[2026-06-22 14:57:57,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:57:57,959.959 INFO    ] Initializing speech engine...
[2026-06-22 14:57:57,968.968 INFO    ] 2026-06-22 14:57:57
[2026-06-22 14:57:58,213.213 INFO    ] 2026-06-22 14:57:58
[2026-06-22 14:57:58,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:57:58,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:57:58,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:57:58,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:57:58,717.717 INFO    ] time= 22/06/2026 14:57:58
[2026-06-22 14:57:58,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:57:58,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:57:58,910.910 INFO    ] No existing commands found in stream
[2026-06-22 14:58:03,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:58:03,939.939 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-22 14:58:06,948.948 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:58:06,951.951 INFO    ] Checking for system updates...
[2026-06-22 14:58:06,986.986 INFO    ] 200
[2026-06-22 14:58:06,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:58:07,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:58:07,045.045 INFO    ] No update needed
[2026-06-22 14:58:07,047.047 INFO    ] Checking for camera pi updates...
[2026-06-22 14:58:07,085.085 INFO    ] 200
[2026-06-22 14:58:07,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:58:07,129.129 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:58:07,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:58:07,218.218 INFO    ] No camera update needed
[2026-06-22 14:58:07,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:58:07,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:58:07,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:58:07,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:58:09,276.276 INFO    ] ================================================
[2026-06-22 14:58:09,292.292 INFO    ] Launching Daemon at Mon Jun 22 14:58:09 IST 2026
[2026-06-22 14:58:09,303.303 INFO    ] ================================================
[2026-06-22 14:58:09,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:58:09
[2026-06-22 14:58:10,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:58:10,692.692 INFO    ] Initializing speech engine...
[2026-06-22 14:58:10,701.701 INFO    ] 2026-06-22 14:58:10
[2026-06-22 14:58:10,995.995 INFO    ] 2026-06-22 14:58:10
[2026-06-22 14:58:11,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:58:11,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:58:11,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:58:11,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:58:11,378.378 INFO    ] time= 22/06/2026 14:58:11
[2026-06-22 14:58:11,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:58:11,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:58:11,502.502 INFO    ] No existing commands found in stream
[2026-06-22 14:58:16,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:58:16,517.517 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-22 14:58:19,311.311 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:58:19,313.313 INFO    ] Checking for system updates...
[2026-06-22 14:58:19,334.334 INFO    ] 200
[2026-06-22 14:58:19,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:58:19,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:58:19,381.381 INFO    ] No update needed
[2026-06-22 14:58:19,384.384 INFO    ] Checking for camera pi updates...
[2026-06-22 14:58:19,418.418 INFO    ] 200
[2026-06-22 14:58:19,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:58:19,463.463 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:58:19,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:58:19,661.661 INFO    ] No camera update needed
[2026-06-22 14:58:19,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:58:19,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:58:19,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:58:19,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:58:21,719.719 INFO    ] ================================================
[2026-06-22 14:58:21,735.735 INFO    ] Launching Daemon at Mon Jun 22 14:58:21 IST 2026
[2026-06-22 14:58:21,746.746 INFO    ] ================================================
[2026-06-22 14:58:22,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:58:22
[2026-06-22 14:58:22,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:58:23,242.242 INFO    ] Initializing speech engine...
[2026-06-22 14:58:23,254.254 INFO    ] 2026-06-22 14:58:23
[2026-06-22 14:58:23,541.541 INFO    ] 2026-06-22 14:58:23
[2026-06-22 14:58:23,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:58:23,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:58:23,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:58:24,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:58:24,086.086 INFO    ] time= 22/06/2026 14:58:24
[2026-06-22 14:58:24,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:58:24,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:58:24,233.233 INFO    ] No existing commands found in stream
[2026-06-22 14:58:29,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:58:29,260.260 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-22 14:58:32,279.279 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:58:32,283.283 INFO    ] Checking for system updates...
[2026-06-22 14:58:32,340.340 INFO    ] 200
[2026-06-22 14:58:32,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:58:32,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:58:32,410.410 INFO    ] No update needed
[2026-06-22 14:58:32,413.413 INFO    ] Checking for camera pi updates...
[2026-06-22 14:58:32,449.449 INFO    ] 200
[2026-06-22 14:58:32,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:58:32,501.501 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:58:32,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:58:32,556.556 INFO    ] No camera update needed
[2026-06-22 14:58:32,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:58:32,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:58:32,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:58:32,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:58:34,615.615 INFO    ] ================================================
[2026-06-22 14:58:34,630.630 INFO    ] Launching Daemon at Mon Jun 22 14:58:34 IST 2026
[2026-06-22 14:58:34,641.641 INFO    ] ================================================
[2026-06-22 14:58:35,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:58:35
[2026-06-22 14:58:35,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:58:36,019.019 INFO    ] Initializing speech engine...
[2026-06-22 14:58:36,035.035 INFO    ] 2026-06-22 14:58:36
[2026-06-22 14:58:36,316.316 INFO    ] 2026-06-22 14:58:36
[2026-06-22 14:58:36,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:58:36,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:58:36,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:58:36,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:58:36,738.738 INFO    ] time= 22/06/2026 14:58:36
[2026-06-22 14:58:36,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:58:36,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:58:36,826.826 INFO    ] No existing commands found in stream
[2026-06-22 14:58:41,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:58:41,854.854 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-22 14:58:43,166.166 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 14:58:43,169.169 INFO    ] Checking for system updates...
[2026-06-22 14:58:43,206.206 INFO    ] 200
[2026-06-22 14:58:43,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:58:43,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:58:43,272.272 INFO    ] No update needed
[2026-06-22 14:58:43,275.275 INFO    ] Checking for camera pi updates...
[2026-06-22 14:58:43,310.310 INFO    ] 200
[2026-06-22 14:58:43,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:58:43,359.359 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:58:43,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:58:43,457.457 INFO    ] No camera update needed
[2026-06-22 14:58:43,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:58:43,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:58:43,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:58:43,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:58:45,516.516 INFO    ] ================================================
[2026-06-22 14:58:45,535.535 INFO    ] Launching Daemon at Mon Jun 22 14:58:45 IST 2026
[2026-06-22 14:58:45,547.547 INFO    ] ================================================
[2026-06-22 14:58:46,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:58:46
[2026-06-22 14:58:46,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:58:46,910.910 INFO    ] Initializing speech engine...
[2026-06-22 14:58:46,919.919 INFO    ] 2026-06-22 14:58:46
[2026-06-22 14:58:47,177.177 INFO    ] 2026-06-22 14:58:47
[2026-06-22 14:58:47,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:58:47,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:58:47,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:58:47,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:58:47,641.641 INFO    ] time= 22/06/2026 14:58:47
[2026-06-22 14:58:47,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:58:47,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:58:47,865.865 INFO    ] No existing commands found in stream
[2026-06-22 14:58:52,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:58:52,892.892 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-22 14:58:53,852.852 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:58:53,854.854 INFO    ] Checking for system updates...
[2026-06-22 14:58:53,894.894 INFO    ] 200
[2026-06-22 14:58:53,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:58:53,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:58:53,954.954 INFO    ] No update needed
[2026-06-22 14:58:53,957.957 INFO    ] Checking for camera pi updates...
[2026-06-22 14:58:53,991.991 INFO    ] 200
[2026-06-22 14:58:53,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:58:54,038.038 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:58:54,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:58:54,142.142 INFO    ] No camera update needed
[2026-06-22 14:58:54,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:58:54,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:58:54,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:58:54,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:58:56,199.199 INFO    ] ================================================
[2026-06-22 14:58:56,215.215 INFO    ] Launching Daemon at Mon Jun 22 14:58:56 IST 2026
[2026-06-22 14:58:56,227.227 INFO    ] ================================================
[2026-06-22 14:58:56,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:58:56
[2026-06-22 14:58:57,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:58:57,758.758 INFO    ] Initializing speech engine...
[2026-06-22 14:58:57,766.766 INFO    ] 2026-06-22 14:58:57
[2026-06-22 14:58:58,050.050 INFO    ] 2026-06-22 14:58:58
[2026-06-22 14:58:58,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:58:58,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:58:58,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:58:58,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:58:58,517.517 INFO    ] time= 22/06/2026 14:58:58
[2026-06-22 14:58:58,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:58:58,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:58:58,745.745 INFO    ] No existing commands found in stream
[2026-06-22 14:59:03,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:59:03,772.772 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-22 14:59:08,008.008 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:59:08,011.011 INFO    ] Checking for system updates...
[2026-06-22 14:59:08,049.049 INFO    ] 200
[2026-06-22 14:59:08,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:59:08,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:59:08,109.109 INFO    ] No update needed
[2026-06-22 14:59:08,112.112 INFO    ] Checking for camera pi updates...
[2026-06-22 14:59:08,150.150 INFO    ] 200
[2026-06-22 14:59:08,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:59:08,198.198 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:59:08,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:59:08,287.287 INFO    ] No camera update needed
[2026-06-22 14:59:08,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:59:08,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:59:08,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:59:08,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:59:10,343.343 INFO    ] ================================================
[2026-06-22 14:59:10,360.360 INFO    ] Launching Daemon at Mon Jun 22 14:59:10 IST 2026
[2026-06-22 14:59:10,371.371 INFO    ] ================================================
[2026-06-22 14:59:10,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:59:10
[2026-06-22 14:59:11,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:59:11,736.736 INFO    ] Initializing speech engine...
[2026-06-22 14:59:11,741.741 INFO    ] 2026-06-22 14:59:11
[2026-06-22 14:59:12,045.045 INFO    ] 2026-06-22 14:59:12
[2026-06-22 14:59:12,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:59:12,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:59:12,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:59:12,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:59:12,469.469 INFO    ] time= 22/06/2026 14:59:12
[2026-06-22 14:59:12,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:59:12,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:59:12,558.558 INFO    ] No existing commands found in stream
[2026-06-22 14:59:17,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:59:17,590.590 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-22 14:59:20,077.077 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 14:59:20,080.080 INFO    ] Checking for system updates...
[2026-06-22 14:59:20,116.116 INFO    ] 200
[2026-06-22 14:59:20,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:59:20,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:59:20,175.175 INFO    ] No update needed
[2026-06-22 14:59:20,177.177 INFO    ] Checking for camera pi updates...
[2026-06-22 14:59:20,215.215 INFO    ] 200
[2026-06-22 14:59:20,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:59:20,263.263 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:59:20,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:59:20,355.355 INFO    ] No camera update needed
[2026-06-22 14:59:20,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:59:20,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:59:20,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:59:20,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:59:22,412.412 INFO    ] ================================================
[2026-06-22 14:59:22,428.428 INFO    ] Launching Daemon at Mon Jun 22 14:59:22 IST 2026
[2026-06-22 14:59:22,439.439 INFO    ] ================================================
[2026-06-22 14:59:23,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:59:23
[2026-06-22 14:59:23,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:59:23,977.977 INFO    ] Initializing speech engine...
[2026-06-22 14:59:23,983.983 INFO    ] 2026-06-22 14:59:23
[2026-06-22 14:59:24,270.270 INFO    ] 2026-06-22 14:59:24
[2026-06-22 14:59:24,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:59:24,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:59:24,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:59:24,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:59:24,821.821 INFO    ] time= 22/06/2026 14:59:24
[2026-06-22 14:59:24,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:59:24,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:59:25,005.005 INFO    ] No existing commands found in stream
[2026-06-22 14:59:30,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:59:30,040.040 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-22 14:59:32,998.998 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 14:59:33,001.001 INFO    ] Checking for system updates...
[2026-06-22 14:59:33,037.037 INFO    ] 200
[2026-06-22 14:59:33,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:59:33,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:59:33,094.094 INFO    ] No update needed
[2026-06-22 14:59:33,097.097 INFO    ] Checking for camera pi updates...
[2026-06-22 14:59:33,131.131 INFO    ] 200
[2026-06-22 14:59:33,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:59:33,178.178 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:59:33,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:59:33,267.267 INFO    ] No camera update needed
[2026-06-22 14:59:33,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:59:33,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:59:33,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:59:33,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:59:35,323.323 INFO    ] ================================================
[2026-06-22 14:59:35,338.338 INFO    ] Launching Daemon at Mon Jun 22 14:59:35 IST 2026
[2026-06-22 14:59:35,349.349 INFO    ] ================================================
[2026-06-22 14:59:35,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:59:35
[2026-06-22 14:59:36,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:59:36,717.717 INFO    ] Initializing speech engine...
[2026-06-22 14:59:36,736.736 INFO    ] 2026-06-22 14:59:36
[2026-06-22 14:59:36,987.987 INFO    ] 2026-06-22 14:59:36
[2026-06-22 14:59:37,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:59:37,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:59:37,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:59:37,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:59:37,472.472 INFO    ] time= 22/06/2026 14:59:37
[2026-06-22 14:59:37,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:59:37,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:59:37,707.707 INFO    ] No existing commands found in stream
[2026-06-22 14:59:42,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:59:42,735.735 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-22 14:59:45,863.863 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 14:59:45,866.866 INFO    ] Checking for system updates...
[2026-06-22 14:59:45,903.903 INFO    ] 200
[2026-06-22 14:59:45,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:59:45,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:59:45,965.965 INFO    ] No update needed
[2026-06-22 14:59:45,967.967 INFO    ] Checking for camera pi updates...
[2026-06-22 14:59:46,006.006 INFO    ] 200
[2026-06-22 14:59:46,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:59:46,051.051 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:59:46,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 14:59:46,136.136 INFO    ] No camera update needed
[2026-06-22 14:59:46,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:59:46,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:59:46,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:59:46,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:59:48,196.196 INFO    ] ================================================
[2026-06-22 14:59:48,211.211 INFO    ] Launching Daemon at Mon Jun 22 14:59:48 IST 2026
[2026-06-22 14:59:48,222.222 INFO    ] ================================================
[2026-06-22 14:59:48,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:59:48
[2026-06-22 14:59:49,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 14:59:49,557.557 INFO    ] Initializing speech engine...
[2026-06-22 14:59:49,566.566 INFO    ] 2026-06-22 14:59:49
[2026-06-22 14:59:49,832.832 INFO    ] 2026-06-22 14:59:49
[2026-06-22 14:59:49,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 14:59:50,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 14:59:50,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 14:59:50,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 14:59:50,399.399 INFO    ] time= 22/06/2026 14:59:50
[2026-06-22 14:59:50,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 14:59:50,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-22 14:59:50,573.573 INFO    ] No existing commands found in stream
[2026-06-22 14:59:55,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 14:59:55,608.608 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-22 14:59:56,873.873 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 14:59:56,875.875 INFO    ] Checking for system updates...
[2026-06-22 14:59:56,896.896 INFO    ] 200
[2026-06-22 14:59:56,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:59:56,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:59:56,937.937 INFO    ] No update needed
[2026-06-22 14:59:56,940.940 INFO    ] Checking for camera pi updates...
[2026-06-22 14:59:56,975.975 INFO    ] 200
[2026-06-22 14:59:56,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 14:59:57,024.024 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 14:59:57,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 14:59:57,136.136 INFO    ] No camera update needed
[2026-06-22 14:59:57,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-22 14:59:57,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 14:59:57,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 14:59:57,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 14:59:59,194.194 INFO    ] ================================================
[2026-06-22 14:59:59,210.210 INFO    ] Launching Daemon at Mon Jun 22 14:59:59 IST 2026
[2026-06-22 14:59:59,220.220 INFO    ] ================================================
[2026-06-22 14:59:59,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 14:59:59
[2026-06-22 15:00:00,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:00:00,750.750 INFO    ] Initializing speech engine...
[2026-06-22 15:00:00,756.756 INFO    ] 2026-06-22 15:00:00
[2026-06-22 15:00:01,032.032 INFO    ] 2026-06-22 15:00:01
[2026-06-22 15:00:01,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:00:01,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:00:01,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:00:01,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:00:01,890.890 INFO    ] time= 22/06/2026 15:00:01
[2026-06-22 15:00:01,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:00:01,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:00:02,228.228 INFO    ] No existing commands found in stream
[2026-06-22 15:00:07,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:00:07,338.338 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-22 15:00:09,931.931 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:00:09,934.934 INFO    ] Checking for system updates...
[2026-06-22 15:00:09,977.977 INFO    ] 200
[2026-06-22 15:00:09,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:00:10,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:00:10,037.037 INFO    ] No update needed
[2026-06-22 15:00:10,040.040 INFO    ] Checking for camera pi updates...
[2026-06-22 15:00:10,076.076 INFO    ] 200
[2026-06-22 15:00:10,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:00:10,121.121 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:00:10,211.211 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:00:10,214.214 INFO    ] No camera update needed
[2026-06-22 15:00:10,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:00:10,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:00:10,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:00:10,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:00:12,272.272 INFO    ] ================================================
[2026-06-22 15:00:12,288.288 INFO    ] Launching Daemon at Mon Jun 22 15:00:12 IST 2026
[2026-06-22 15:00:12,299.299 INFO    ] ================================================
[2026-06-22 15:00:12,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:00:12
[2026-06-22 15:00:13,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:00:13,715.715 INFO    ] Initializing speech engine...
[2026-06-22 15:00:13,727.727 INFO    ] 2026-06-22 15:00:13
[2026-06-22 15:00:14,040.040 INFO    ] 2026-06-22 15:00:13
[2026-06-22 15:00:14,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:00:14,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:00:14,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:00:14,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:00:14,576.576 INFO    ] time= 22/06/2026 15:00:14
[2026-06-22 15:00:14,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:00:14,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:00:14,724.724 INFO    ] No existing commands found in stream
[2026-06-22 15:00:19,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:00:19,758.758 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-22 15:00:23,973.973 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:00:23,977.977 INFO    ] Checking for system updates...
[2026-06-22 15:00:24,013.013 INFO    ] 200
[2026-06-22 15:00:24,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:00:24,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:00:24,073.073 INFO    ] No update needed
[2026-06-22 15:00:24,076.076 INFO    ] Checking for camera pi updates...
[2026-06-22 15:00:24,111.111 INFO    ] 200
[2026-06-22 15:00:24,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:00:24,156.156 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:00:24,333.333 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:00:24,336.336 INFO    ] No camera update needed
[2026-06-22 15:00:24,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:00:24,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:00:24,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:00:24,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:00:26,395.395 INFO    ] ================================================
[2026-06-22 15:00:26,410.410 INFO    ] Launching Daemon at Mon Jun 22 15:00:26 IST 2026
[2026-06-22 15:00:26,421.421 INFO    ] ================================================
[2026-06-22 15:00:26,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:00:26
[2026-06-22 15:00:27,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:00:27,733.733 INFO    ] Initializing speech engine...
[2026-06-22 15:00:27,756.756 INFO    ] 2026-06-22 15:00:27
[2026-06-22 15:00:28,008.008 INFO    ] 2026-06-22 15:00:28
[2026-06-22 15:00:28,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:00:28,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:00:28,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:00:28,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:00:28,387.387 INFO    ] time= 22/06/2026 15:00:28
[2026-06-22 15:00:28,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:00:28,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:00:28,589.589 INFO    ] No existing commands found in stream
[2026-06-22 15:00:33,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:00:33,600.600 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-22 15:00:34,497.497 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:00:34,500.500 INFO    ] Checking for system updates...
[2026-06-22 15:00:34,536.536 INFO    ] 200
[2026-06-22 15:00:34,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:00:34,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:00:34,600.600 INFO    ] No update needed
[2026-06-22 15:00:34,602.602 INFO    ] Checking for camera pi updates...
[2026-06-22 15:00:34,639.639 INFO    ] 200
[2026-06-22 15:00:34,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:00:34,682.682 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:00:34,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:00:34,768.768 INFO    ] No camera update needed
[2026-06-22 15:00:34,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:00:34,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:00:34,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:00:34,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:00:36,824.824 INFO    ] ================================================
[2026-06-22 15:00:36,839.839 INFO    ] Launching Daemon at Mon Jun 22 15:00:36 IST 2026
[2026-06-22 15:00:36,850.850 INFO    ] ================================================
[2026-06-22 15:00:37,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:00:37
[2026-06-22 15:00:38,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:00:38,287.287 INFO    ] Initializing speech engine...
[2026-06-22 15:00:38,295.295 INFO    ] 2026-06-22 15:00:38
[2026-06-22 15:00:38,558.558 INFO    ] 2026-06-22 15:00:38
[2026-06-22 15:00:38,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:00:38,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:00:38,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:00:39,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:00:39,104.104 INFO    ] time= 22/06/2026 15:00:39
[2026-06-22 15:00:39,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:00:39,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:00:39,265.265 INFO    ] No existing commands found in stream
[2026-06-22 15:00:44,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:00:44,282.282 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-22 15:00:45,701.701 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:00:45,703.703 INFO    ] Checking for system updates...
[2026-06-22 15:00:45,744.744 INFO    ] 200
[2026-06-22 15:00:45,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:00:45,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:00:45,802.802 INFO    ] No update needed
[2026-06-22 15:00:45,805.805 INFO    ] Checking for camera pi updates...
[2026-06-22 15:00:45,846.846 INFO    ] 200
[2026-06-22 15:00:45,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:00:45,890.890 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:00:45,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:00:45,972.972 INFO    ] No camera update needed
[2026-06-22 15:00:45,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:00:45,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:00:45,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:00:45,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:00:48,028.028 INFO    ] ================================================
[2026-06-22 15:00:48,043.043 INFO    ] Launching Daemon at Mon Jun 22 15:00:48 IST 2026
[2026-06-22 15:00:48,054.054 INFO    ] ================================================
[2026-06-22 15:00:48,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:00:48
[2026-06-22 15:00:49,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:00:49,398.398 INFO    ] Initializing speech engine...
[2026-06-22 15:00:49,419.419 INFO    ] 2026-06-22 15:00:49
[2026-06-22 15:00:49,704.704 INFO    ] 2026-06-22 15:00:49
[2026-06-22 15:00:49,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:00:49,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:00:49,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:00:50,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:00:50,122.122 INFO    ] time= 22/06/2026 15:00:50
[2026-06-22 15:00:50,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:00:50,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:00:50,213.213 INFO    ] No existing commands found in stream
[2026-06-22 15:00:55,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:00:55,241.241 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-22 15:00:55,730.730 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:00:55,732.732 INFO    ] Checking for system updates...
[2026-06-22 15:00:55,758.758 INFO    ] 200
[2026-06-22 15:00:55,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:00:55,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:00:55,817.817 INFO    ] No update needed
[2026-06-22 15:00:55,820.820 INFO    ] Checking for camera pi updates...
[2026-06-22 15:00:55,860.860 INFO    ] 200
[2026-06-22 15:00:55,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:00:55,905.905 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:00:55,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:00:55,992.992 INFO    ] No camera update needed
[2026-06-22 15:00:55,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:00:55,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:00:56,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:00:56,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:00:58,051.051 INFO    ] ================================================
[2026-06-22 15:00:58,067.067 INFO    ] Launching Daemon at Mon Jun 22 15:00:58 IST 2026
[2026-06-22 15:00:58,077.077 INFO    ] ================================================
[2026-06-22 15:00:58,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:00:58
[2026-06-22 15:00:59,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:00:59,442.442 INFO    ] Initializing speech engine...
[2026-06-22 15:00:59,454.454 INFO    ] 2026-06-22 15:00:59
[2026-06-22 15:00:59,698.698 INFO    ] 2026-06-22 15:00:59
[2026-06-22 15:00:59,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:00:59,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:00:59,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:01:00,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:01:00,251.251 INFO    ] time= 22/06/2026 15:01:00
[2026-06-22 15:01:00,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:01:00,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:01:00,426.426 INFO    ] No existing commands found in stream
[2026-06-22 15:01:05,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:01:05,454.454 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-22 15:01:08,347.347 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:01:08,350.350 INFO    ] Checking for system updates...
[2026-06-22 15:01:08,390.390 INFO    ] 200
[2026-06-22 15:01:08,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:01:08,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:01:08,450.450 INFO    ] No update needed
[2026-06-22 15:01:08,452.452 INFO    ] Checking for camera pi updates...
[2026-06-22 15:01:08,491.491 INFO    ] 200
[2026-06-22 15:01:08,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:01:08,537.537 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:01:08,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:01:08,656.656 INFO    ] No camera update needed
[2026-06-22 15:01:08,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:01:08,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:01:08,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:01:08,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:01:10,717.717 INFO    ] ================================================
[2026-06-22 15:01:10,734.734 INFO    ] Launching Daemon at Mon Jun 22 15:01:10 IST 2026
[2026-06-22 15:01:10,745.745 INFO    ] ================================================
[2026-06-22 15:01:11,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:01:11
[2026-06-22 15:01:11,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:01:12,158.158 INFO    ] Initializing speech engine...
[2026-06-22 15:01:12,167.167 INFO    ] 2026-06-22 15:01:12
[2026-06-22 15:01:12,443.443 INFO    ] 2026-06-22 15:01:12
[2026-06-22 15:01:12,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:01:12,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:01:12,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:01:13,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:01:13,047.047 INFO    ] time= 22/06/2026 15:01:13
[2026-06-22 15:01:13,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:01:13,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:01:13,191.191 INFO    ] No existing commands found in stream
[2026-06-22 15:01:18,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:01:18,230.230 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-22 15:01:19,445.445 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:01:19,446.446 INFO    ] Checking for system updates...
[2026-06-22 15:01:19,476.476 INFO    ] 200
[2026-06-22 15:01:19,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:01:19,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:01:19,535.535 INFO    ] No update needed
[2026-06-22 15:01:19,537.537 INFO    ] Checking for camera pi updates...
[2026-06-22 15:01:19,571.571 INFO    ] 200
[2026-06-22 15:01:19,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:01:19,617.617 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:01:19,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:01:19,722.722 INFO    ] No camera update needed
[2026-06-22 15:01:19,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:01:19,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:01:19,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:01:19,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:01:21,777.777 INFO    ] ================================================
[2026-06-22 15:01:21,793.793 INFO    ] Launching Daemon at Mon Jun 22 15:01:21 IST 2026
[2026-06-22 15:01:21,804.804 INFO    ] ================================================
[2026-06-22 15:01:22,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:01:22
[2026-06-22 15:01:23,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:01:23,273.273 INFO    ] Initializing speech engine...
[2026-06-22 15:01:23,291.291 INFO    ] 2026-06-22 15:01:23
[2026-06-22 15:01:23,563.563 INFO    ] 2026-06-22 15:01:23
[2026-06-22 15:01:23,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:01:23,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:01:23,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:01:24,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:01:24,051.051 INFO    ] time= 22/06/2026 15:01:24
[2026-06-22 15:01:24,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:01:24,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:01:24,251.251 INFO    ] No existing commands found in stream
[2026-06-22 15:01:29,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:01:29,267.267 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-22 15:01:30,858.858 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:01:30,859.859 INFO    ] Checking for system updates...
[2026-06-22 15:01:30,880.880 INFO    ] 200
[2026-06-22 15:01:30,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:01:30,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:01:30,916.916 INFO    ] No update needed
[2026-06-22 15:01:30,918.918 INFO    ] Checking for camera pi updates...
[2026-06-22 15:01:30,939.939 INFO    ] 200
[2026-06-22 15:01:30,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:01:30,972.972 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:01:31,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:01:31,065.065 INFO    ] No camera update needed
[2026-06-22 15:01:31,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:01:31,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:01:31,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:01:31,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:01:33,127.127 INFO    ] ================================================
[2026-06-22 15:01:33,151.151 INFO    ] Launching Daemon at Mon Jun 22 15:01:33 IST 2026
[2026-06-22 15:01:33,163.163 INFO    ] ================================================
[2026-06-22 15:01:33,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:01:33
[2026-06-22 15:01:34,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:01:34,619.619 INFO    ] Initializing speech engine...
[2026-06-22 15:01:34,628.628 INFO    ] 2026-06-22 15:01:34
[2026-06-22 15:01:34,874.874 INFO    ] 2026-06-22 15:01:34
[2026-06-22 15:01:34,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:01:35,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:01:35,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:01:35,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:01:35,353.353 INFO    ] time= 22/06/2026 15:01:35
[2026-06-22 15:01:35,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:01:35,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:01:35,573.573 INFO    ] No existing commands found in stream
[2026-06-22 15:01:40,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:01:40,600.600 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-22 15:01:42,553.553 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:01:42,556.556 INFO    ] Checking for system updates...
[2026-06-22 15:01:42,591.591 INFO    ] 200
[2026-06-22 15:01:42,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:01:42,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:01:42,649.649 INFO    ] No update needed
[2026-06-22 15:01:42,651.651 INFO    ] Checking for camera pi updates...
[2026-06-22 15:01:42,685.685 INFO    ] 200
[2026-06-22 15:01:42,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:01:42,733.733 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:01:42,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:01:42,820.820 INFO    ] No camera update needed
[2026-06-22 15:01:42,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:01:42,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:01:42,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:01:42,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:01:44,877.877 INFO    ] ================================================
[2026-06-22 15:01:44,892.892 INFO    ] Launching Daemon at Mon Jun 22 15:01:44 IST 2026
[2026-06-22 15:01:44,902.902 INFO    ] ================================================
[2026-06-22 15:01:45,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:01:45
[2026-06-22 15:01:45,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:01:46,238.238 INFO    ] Initializing speech engine...
[2026-06-22 15:01:46,242.242 INFO    ] 2026-06-22 15:01:46
[2026-06-22 15:01:46,488.488 INFO    ] 2026-06-22 15:01:46
[2026-06-22 15:01:46,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:01:46,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:01:46,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:01:46,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:01:46,856.856 INFO    ] time= 22/06/2026 15:01:46
[2026-06-22 15:01:46,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:01:46,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:01:47,038.038 INFO    ] No existing commands found in stream
[2026-06-22 15:01:52,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:01:52,066.066 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-22 15:01:53,521.521 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:01:53,523.523 INFO    ] Checking for system updates...
[2026-06-22 15:01:53,571.571 INFO    ] 200
[2026-06-22 15:01:53,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:01:53,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:01:53,633.633 INFO    ] No update needed
[2026-06-22 15:01:53,636.636 INFO    ] Checking for camera pi updates...
[2026-06-22 15:01:53,670.670 INFO    ] 200
[2026-06-22 15:01:53,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:01:53,714.714 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:01:53,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:01:53,810.810 INFO    ] No camera update needed
[2026-06-22 15:01:53,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:01:53,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:01:53,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:01:53,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:01:55,869.869 INFO    ] ================================================
[2026-06-22 15:01:55,885.885 INFO    ] Launching Daemon at Mon Jun 22 15:01:55 IST 2026
[2026-06-22 15:01:55,895.895 INFO    ] ================================================
[2026-06-22 15:01:56,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:01:56
[2026-06-22 15:01:56,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:01:57,222.222 INFO    ] Initializing speech engine...
[2026-06-22 15:01:57,228.228 INFO    ] 2026-06-22 15:01:57
[2026-06-22 15:01:57,523.523 INFO    ] 2026-06-22 15:01:57
[2026-06-22 15:01:57,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:01:57,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:01:57,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:01:57,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:01:57,915.915 INFO    ] time= 22/06/2026 15:01:57
[2026-06-22 15:01:57,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:01:57,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:01:58,097.097 INFO    ] No existing commands found in stream
[2026-06-22 15:02:03,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:02:03,120.120 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-22 15:02:04,097.097 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:02:04,099.099 INFO    ] Checking for system updates...
[2026-06-22 15:02:04,136.136 INFO    ] 200
[2026-06-22 15:02:04,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:02:04,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:02:04,193.193 INFO    ] No update needed
[2026-06-22 15:02:04,196.196 INFO    ] Checking for camera pi updates...
[2026-06-22 15:02:04,233.233 INFO    ] 200
[2026-06-22 15:02:04,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:02:04,280.280 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:02:04,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:02:04,365.365 INFO    ] No camera update needed
[2026-06-22 15:02:04,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:02:04,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:02:04,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:02:04,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:02:06,424.424 INFO    ] ================================================
[2026-06-22 15:02:06,439.439 INFO    ] Launching Daemon at Mon Jun 22 15:02:06 IST 2026
[2026-06-22 15:02:06,450.450 INFO    ] ================================================
[2026-06-22 15:02:07,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:02:07
[2026-06-22 15:02:07,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:02:08,053.053 INFO    ] Initializing speech engine...
[2026-06-22 15:02:08,059.059 INFO    ] 2026-06-22 15:02:08
[2026-06-22 15:02:08,330.330 INFO    ] 2026-06-22 15:02:08
[2026-06-22 15:02:08,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:02:08,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:02:08,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:02:08,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:02:08,880.880 INFO    ] time= 22/06/2026 15:02:08
[2026-06-22 15:02:08,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:02:08,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:02:09,039.039 INFO    ] No existing commands found in stream
[2026-06-22 15:02:14,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:02:14,071.071 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-22 15:02:15,472.472 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:02:15,474.474 INFO    ] Checking for system updates...
[2026-06-22 15:02:15,495.495 INFO    ] 200
[2026-06-22 15:02:15,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:02:15,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:02:15,530.530 INFO    ] No update needed
[2026-06-22 15:02:15,532.532 INFO    ] Checking for camera pi updates...
[2026-06-22 15:02:15,557.557 INFO    ] 200
[2026-06-22 15:02:15,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:02:15,607.607 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:02:15,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:02:15,691.691 INFO    ] No camera update needed
[2026-06-22 15:02:15,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:02:15,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:02:15,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:02:15,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:02:17,749.749 INFO    ] ================================================
[2026-06-22 15:02:17,764.764 INFO    ] Launching Daemon at Mon Jun 22 15:02:17 IST 2026
[2026-06-22 15:02:17,775.775 INFO    ] ================================================
[2026-06-22 15:02:18,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:02:18
[2026-06-22 15:02:18,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:02:19,198.198 INFO    ] Initializing speech engine...
[2026-06-22 15:02:19,218.218 INFO    ] 2026-06-22 15:02:19
[2026-06-22 15:02:19,478.478 INFO    ] 2026-06-22 15:02:19
[2026-06-22 15:02:19,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:02:19,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:02:19,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:02:19,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:02:19,883.883 INFO    ] time= 22/06/2026 15:02:19
[2026-06-22 15:02:19,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:02:19,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:02:20,077.077 INFO    ] No existing commands found in stream
[2026-06-22 15:02:25,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:02:25,113.113 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-22 15:02:25,680.680 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:02:25,682.682 INFO    ] Checking for system updates...
[2026-06-22 15:02:25,719.719 INFO    ] 200
[2026-06-22 15:02:25,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:02:25,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:02:25,775.775 INFO    ] No update needed
[2026-06-22 15:02:25,778.778 INFO    ] Checking for camera pi updates...
[2026-06-22 15:02:25,811.811 INFO    ] 200
[2026-06-22 15:02:25,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:02:25,854.854 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:02:26,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:02:26,040.040 INFO    ] No camera update needed
[2026-06-22 15:02:26,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:02:26,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:02:26,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:02:26,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:02:28,102.102 INFO    ] ================================================
[2026-06-22 15:02:28,118.118 INFO    ] Launching Daemon at Mon Jun 22 15:02:28 IST 2026
[2026-06-22 15:02:28,129.129 INFO    ] ================================================
[2026-06-22 15:02:28,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:02:28
[2026-06-22 15:02:29,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:02:29,602.602 INFO    ] Initializing speech engine...
[2026-06-22 15:02:29,615.615 INFO    ] 2026-06-22 15:02:29
[2026-06-22 15:02:29,891.891 INFO    ] 2026-06-22 15:02:29
[2026-06-22 15:02:29,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:02:30,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:02:30,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:02:30,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:02:30,438.438 INFO    ] time= 22/06/2026 15:02:30
[2026-06-22 15:02:30,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:02:30,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:02:30,595.595 INFO    ] No existing commands found in stream
[2026-06-22 15:02:35,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:02:35,629.629 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-22 15:02:38,893.893 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:02:38,896.896 INFO    ] Checking for system updates...
[2026-06-22 15:02:38,935.935 INFO    ] 200
[2026-06-22 15:02:38,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:02:38,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:02:38,994.994 INFO    ] No update needed
[2026-06-22 15:02:38,996.996 INFO    ] Checking for camera pi updates...
[2026-06-22 15:02:39,034.034 INFO    ] 200
[2026-06-22 15:02:39,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:02:39,079.079 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:02:39,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:02:39,157.157 INFO    ] No camera update needed
[2026-06-22 15:02:39,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:02:39,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:02:39,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:02:39,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:02:41,216.216 INFO    ] ================================================
[2026-06-22 15:02:41,230.230 INFO    ] Launching Daemon at Mon Jun 22 15:02:41 IST 2026
[2026-06-22 15:02:41,241.241 INFO    ] ================================================
[2026-06-22 15:02:41,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:02:41
[2026-06-22 15:02:42,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:02:42,652.652 INFO    ] Initializing speech engine...
[2026-06-22 15:02:42,661.661 INFO    ] 2026-06-22 15:02:42
[2026-06-22 15:02:42,910.910 INFO    ] 2026-06-22 15:02:42
[2026-06-22 15:02:42,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:02:43,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:02:43,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:02:43,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:02:43,404.404 INFO    ] time= 22/06/2026 15:02:43
[2026-06-22 15:02:43,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:02:43,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:02:43,615.615 INFO    ] No existing commands found in stream
[2026-06-22 15:02:48,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:02:48,633.633 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-22 15:02:52,356.356 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:02:52,358.358 INFO    ] Checking for system updates...
[2026-06-22 15:02:52,399.399 INFO    ] 200
[2026-06-22 15:02:52,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:02:52,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:02:52,467.467 INFO    ] No update needed
[2026-06-22 15:02:52,471.471 INFO    ] Checking for camera pi updates...
[2026-06-22 15:02:52,508.508 INFO    ] 200
[2026-06-22 15:02:52,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:02:52,558.558 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:02:52,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:02:52,648.648 INFO    ] No camera update needed
[2026-06-22 15:02:52,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:02:52,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:02:52,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:02:52,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:02:54,703.703 INFO    ] ================================================
[2026-06-22 15:02:54,718.718 INFO    ] Launching Daemon at Mon Jun 22 15:02:54 IST 2026
[2026-06-22 15:02:54,729.729 INFO    ] ================================================
[2026-06-22 15:02:55,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:02:55
[2026-06-22 15:02:55,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:02:56,216.216 INFO    ] Initializing speech engine...
[2026-06-22 15:02:56,236.236 INFO    ] 2026-06-22 15:02:56
[2026-06-22 15:02:56,496.496 INFO    ] 2026-06-22 15:02:56
[2026-06-22 15:02:56,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:02:56,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:02:56,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:02:56,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:02:56,998.998 INFO    ] time= 22/06/2026 15:02:56
[2026-06-22 15:02:57,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:02:57,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:02:57,213.213 INFO    ] No existing commands found in stream
[2026-06-22 15:03:02,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:03:02,235.235 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-22 15:03:04,710.710 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:03:04,712.712 INFO    ] Checking for system updates...
[2026-06-22 15:03:04,750.750 INFO    ] 200
[2026-06-22 15:03:04,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:03:04,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:03:04,810.810 INFO    ] No update needed
[2026-06-22 15:03:04,812.812 INFO    ] Checking for camera pi updates...
[2026-06-22 15:03:04,846.846 INFO    ] 200
[2026-06-22 15:03:04,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:03:04,889.889 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:03:04,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:03:04,963.963 INFO    ] No camera update needed
[2026-06-22 15:03:04,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:03:04,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:03:04,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:03:04,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:03:07,018.018 INFO    ] ================================================
[2026-06-22 15:03:07,033.033 INFO    ] Launching Daemon at Mon Jun 22 15:03:07 IST 2026
[2026-06-22 15:03:07,044.044 INFO    ] ================================================
[2026-06-22 15:03:07,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:03:07
[2026-06-22 15:03:08,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:03:08,523.523 INFO    ] Initializing speech engine...
[2026-06-22 15:03:08,537.537 INFO    ] 2026-06-22 15:03:08
[2026-06-22 15:03:08,823.823 INFO    ] 2026-06-22 15:03:08
[2026-06-22 15:03:08,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:03:09,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:03:09,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:03:09,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:03:09,371.371 INFO    ] time= 22/06/2026 15:03:09
[2026-06-22 15:03:09,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:03:09,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:03:09,530.530 INFO    ] No existing commands found in stream
[2026-06-22 15:03:14,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:03:14,564.564 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-22 15:03:15,011.011 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:03:15,014.014 INFO    ] Checking for system updates...
[2026-06-22 15:03:15,050.050 INFO    ] 200
[2026-06-22 15:03:15,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:03:15,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:03:15,111.111 INFO    ] No update needed
[2026-06-22 15:03:15,113.113 INFO    ] Checking for camera pi updates...
[2026-06-22 15:03:15,147.147 INFO    ] 200
[2026-06-22 15:03:15,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:03:15,191.191 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:03:15,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:03:15,277.277 INFO    ] No camera update needed
[2026-06-22 15:03:15,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:03:15,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:03:15,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:03:15,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:03:17,333.333 INFO    ] ================================================
[2026-06-22 15:03:17,348.348 INFO    ] Launching Daemon at Mon Jun 22 15:03:17 IST 2026
[2026-06-22 15:03:17,358.358 INFO    ] ================================================
[2026-06-22 15:03:17,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:03:17
[2026-06-22 15:03:18,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:03:18,797.797 INFO    ] Initializing speech engine...
[2026-06-22 15:03:18,807.807 INFO    ] 2026-06-22 15:03:18
[2026-06-22 15:03:19,055.055 INFO    ] 2026-06-22 15:03:19
[2026-06-22 15:03:19,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:03:19,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:03:19,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:03:19,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:03:19,528.528 INFO    ] time= 22/06/2026 15:03:19
[2026-06-22 15:03:19,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:03:19,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:03:19,748.748 INFO    ] No existing commands found in stream
[2026-06-22 15:03:24,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:03:24,776.776 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-22 15:03:27,327.327 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:03:27,329.329 INFO    ] Checking for system updates...
[2026-06-22 15:03:27,368.368 INFO    ] 200
[2026-06-22 15:03:27,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:03:27,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:03:27,439.439 INFO    ] No update needed
[2026-06-22 15:03:27,442.442 INFO    ] Checking for camera pi updates...
[2026-06-22 15:03:27,477.477 INFO    ] 200
[2026-06-22 15:03:27,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:03:27,521.521 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:03:27,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:03:27,611.611 INFO    ] No camera update needed
[2026-06-22 15:03:27,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:03:27,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:03:27,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:03:27,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:03:29,671.671 INFO    ] ================================================
[2026-06-22 15:03:29,687.687 INFO    ] Launching Daemon at Mon Jun 22 15:03:29 IST 2026
[2026-06-22 15:03:29,698.698 INFO    ] ================================================
[2026-06-22 15:03:30,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:03:30
[2026-06-22 15:03:30,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:03:31,113.113 INFO    ] Initializing speech engine...
[2026-06-22 15:03:31,133.133 INFO    ] 2026-06-22 15:03:31
[2026-06-22 15:03:31,390.390 INFO    ] 2026-06-22 15:03:31
[2026-06-22 15:03:31,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:03:31,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:03:31,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:03:31,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:03:31,805.805 INFO    ] time= 22/06/2026 15:03:31
[2026-06-22 15:03:31,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:03:31,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:03:31,992.992 INFO    ] No existing commands found in stream
[2026-06-22 15:03:37,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:03:37,032.032 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-22 15:03:40,233.233 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:03:40,236.236 INFO    ] Checking for system updates...
[2026-06-22 15:03:40,272.272 INFO    ] 200
[2026-06-22 15:03:40,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:03:40,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:03:40,339.339 INFO    ] No update needed
[2026-06-22 15:03:40,342.342 INFO    ] Checking for camera pi updates...
[2026-06-22 15:03:40,375.375 INFO    ] 200
[2026-06-22 15:03:40,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:03:40,419.419 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:03:40,489.489 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:03:40,491.491 INFO    ] No camera update needed
[2026-06-22 15:03:40,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:03:40,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:03:40,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:03:40,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:03:42,550.550 INFO    ] ================================================
[2026-06-22 15:03:42,566.566 INFO    ] Launching Daemon at Mon Jun 22 15:03:42 IST 2026
[2026-06-22 15:03:42,577.577 INFO    ] ================================================
[2026-06-22 15:03:43,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:03:43
[2026-06-22 15:03:43,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:03:44,003.003 INFO    ] Initializing speech engine...
[2026-06-22 15:03:44,012.012 INFO    ] 2026-06-22 15:03:44
[2026-06-22 15:03:44,262.262 INFO    ] 2026-06-22 15:03:44
[2026-06-22 15:03:44,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:03:44,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:03:44,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:03:44,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:03:44,757.757 INFO    ] time= 22/06/2026 15:03:44
[2026-06-22 15:03:44,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:03:44,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:03:44,972.972 INFO    ] No existing commands found in stream
[2026-06-22 15:03:49,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:03:49,993.993 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-22 15:03:51,513.513 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:03:51,516.516 INFO    ] Checking for system updates...
[2026-06-22 15:03:51,552.552 INFO    ] 200
[2026-06-22 15:03:51,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:03:51,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:03:51,611.611 INFO    ] No update needed
[2026-06-22 15:03:51,613.613 INFO    ] Checking for camera pi updates...
[2026-06-22 15:03:51,647.647 INFO    ] 200
[2026-06-22 15:03:51,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:03:51,696.696 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:03:51,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:03:51,779.779 INFO    ] No camera update needed
[2026-06-22 15:03:51,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:03:51,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:03:51,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:03:51,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:03:53,836.836 INFO    ] ================================================
[2026-06-22 15:03:53,851.851 INFO    ] Launching Daemon at Mon Jun 22 15:03:53 IST 2026
[2026-06-22 15:03:53,862.862 INFO    ] ================================================
[2026-06-22 15:03:54,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:03:54
[2026-06-22 15:03:55,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:03:55,383.383 INFO    ] Initializing speech engine...
[2026-06-22 15:03:55,397.397 INFO    ] 2026-06-22 15:03:55
[2026-06-22 15:03:55,685.685 INFO    ] 2026-06-22 15:03:55
[2026-06-22 15:03:55,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:03:55,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:03:55,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:03:56,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:03:56,221.221 INFO    ] time= 22/06/2026 15:03:56
[2026-06-22 15:03:56,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:03:56,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:03:56,389.389 INFO    ] No existing commands found in stream
[2026-06-22 15:04:01,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:04:01,422.422 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-22 15:04:04,869.869 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:04:04,872.872 INFO    ] Checking for system updates...
[2026-06-22 15:04:04,916.916 INFO    ] 200
[2026-06-22 15:04:04,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:04:04,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:04:04,976.976 INFO    ] No update needed
[2026-06-22 15:04:04,979.979 INFO    ] Checking for camera pi updates...
[2026-06-22 15:04:05,013.013 INFO    ] 200
[2026-06-22 15:04:05,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:04:05,058.058 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:04:05,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:04:05,143.143 INFO    ] No camera update needed
[2026-06-22 15:04:05,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:04:05,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:04:05,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:04:05,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:04:07,198.198 INFO    ] ================================================
[2026-06-22 15:04:07,214.214 INFO    ] Launching Daemon at Mon Jun 22 15:04:07 IST 2026
[2026-06-22 15:04:07,224.224 INFO    ] ================================================
[2026-06-22 15:04:07,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:04:07
[2026-06-22 15:04:08,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:04:08,885.885 INFO    ] Initializing speech engine...
[2026-06-22 15:04:08,897.897 INFO    ] 2026-06-22 15:04:08
[2026-06-22 15:04:09,208.208 INFO    ] 2026-06-22 15:04:09
[2026-06-22 15:04:09,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:04:09,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:04:09,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:04:09,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:04:09,723.723 INFO    ] time= 22/06/2026 15:04:09
[2026-06-22 15:04:09,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:04:09,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:04:09,887.887 INFO    ] No existing commands found in stream
[2026-06-22 15:04:14,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:04:14,917.917 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-22 15:04:17,519.519 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:04:17,522.522 INFO    ] Checking for system updates...
[2026-06-22 15:04:17,571.571 INFO    ] 200
[2026-06-22 15:04:17,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:04:17,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:04:17,628.628 INFO    ] No update needed
[2026-06-22 15:04:17,630.630 INFO    ] Checking for camera pi updates...
[2026-06-22 15:04:17,665.665 INFO    ] 200
[2026-06-22 15:04:17,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:04:17,714.714 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:04:17,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:04:17,811.811 INFO    ] No camera update needed
[2026-06-22 15:04:17,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:04:17,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:04:17,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:04:17,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:04:19,866.866 INFO    ] ================================================
[2026-06-22 15:04:19,881.881 INFO    ] Launching Daemon at Mon Jun 22 15:04:19 IST 2026
[2026-06-22 15:04:19,892.892 INFO    ] ================================================
[2026-06-22 15:04:20,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:04:20
[2026-06-22 15:04:21,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:04:21,360.360 INFO    ] Initializing speech engine...
[2026-06-22 15:04:21,371.371 INFO    ] 2026-06-22 15:04:21
[2026-06-22 15:04:21,667.667 INFO    ] 2026-06-22 15:04:21
[2026-06-22 15:04:21,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:04:21,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:04:22,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:04:22,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:04:22,215.215 INFO    ] time= 22/06/2026 15:04:22
[2026-06-22 15:04:22,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:04:22,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:04:22,387.387 INFO    ] No existing commands found in stream
[2026-06-22 15:04:27,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:04:27,421.421 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-22 15:04:30,065.065 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:04:30,068.068 INFO    ] Checking for system updates...
[2026-06-22 15:04:30,110.110 INFO    ] 200
[2026-06-22 15:04:30,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:04:30,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:04:30,177.177 INFO    ] No update needed
[2026-06-22 15:04:30,179.179 INFO    ] Checking for camera pi updates...
[2026-06-22 15:04:30,213.213 INFO    ] 200
[2026-06-22 15:04:30,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:04:30,263.263 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:04:30,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:04:30,454.454 INFO    ] No camera update needed
[2026-06-22 15:04:30,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:04:30,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:04:30,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:04:30,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:04:32,512.512 INFO    ] ================================================
[2026-06-22 15:04:32,530.530 INFO    ] Launching Daemon at Mon Jun 22 15:04:32 IST 2026
[2026-06-22 15:04:32,542.542 INFO    ] ================================================
[2026-06-22 15:04:33,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:04:33
[2026-06-22 15:04:33,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:04:34,287.287 INFO    ] Initializing speech engine...
[2026-06-22 15:04:34,301.301 INFO    ] 2026-06-22 15:04:34
[2026-06-22 15:04:34,577.577 INFO    ] 2026-06-22 15:04:34
[2026-06-22 15:04:34,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:04:34,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:04:34,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:04:35,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:04:35,101.101 INFO    ] time= 22/06/2026 15:04:35
[2026-06-22 15:04:35,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:04:35,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:04:35,247.247 INFO    ] No existing commands found in stream
[2026-06-22 15:04:40,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:04:40,266.266 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-22 15:04:41,291.291 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:04:41,292.292 INFO    ] Checking for system updates...
[2026-06-22 15:04:41,312.312 INFO    ] 200
[2026-06-22 15:04:41,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:04:41,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:04:41,350.350 INFO    ] No update needed
[2026-06-22 15:04:41,353.353 INFO    ] Checking for camera pi updates...
[2026-06-22 15:04:41,389.389 INFO    ] 200
[2026-06-22 15:04:41,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:04:41,437.437 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:04:41,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:04:41,520.520 INFO    ] No camera update needed
[2026-06-22 15:04:41,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:04:41,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:04:41,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:04:41,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:04:43,575.575 INFO    ] ================================================
[2026-06-22 15:04:43,590.590 INFO    ] Launching Daemon at Mon Jun 22 15:04:43 IST 2026
[2026-06-22 15:04:43,600.600 INFO    ] ================================================
[2026-06-22 15:04:44,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:04:44
[2026-06-22 15:04:44,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:04:45,088.088 INFO    ] Initializing speech engine...
[2026-06-22 15:04:45,098.098 INFO    ] 2026-06-22 15:04:45
[2026-06-22 15:04:45,347.347 INFO    ] 2026-06-22 15:04:45
[2026-06-22 15:04:45,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:04:45,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:04:45,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:04:45,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:04:45,739.739 INFO    ] time= 22/06/2026 15:04:45
[2026-06-22 15:04:45,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:04:45,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:04:45,822.822 INFO    ] No existing commands found in stream
[2026-06-22 15:04:50,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:04:50,837.837 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-22 15:04:54,116.116 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:04:54,117.117 INFO    ] Checking for system updates...
[2026-06-22 15:04:54,140.140 INFO    ] 200
[2026-06-22 15:04:54,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:04:54,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:04:54,185.185 INFO    ] No update needed
[2026-06-22 15:04:54,187.187 INFO    ] Checking for camera pi updates...
[2026-06-22 15:04:54,225.225 INFO    ] 200
[2026-06-22 15:04:54,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:04:54,269.269 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:04:54,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:04:54,377.377 INFO    ] No camera update needed
[2026-06-22 15:04:54,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:04:54,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:04:54,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:04:54,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:04:56,436.436 INFO    ] ================================================
[2026-06-22 15:04:56,454.454 INFO    ] Launching Daemon at Mon Jun 22 15:04:56 IST 2026
[2026-06-22 15:04:56,466.466 INFO    ] ================================================
[2026-06-22 15:04:57,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:04:57
[2026-06-22 15:04:57,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:04:58,042.042 INFO    ] Initializing speech engine...
[2026-06-22 15:04:58,050.050 INFO    ] 2026-06-22 15:04:58
[2026-06-22 15:04:58,309.309 INFO    ] 2026-06-22 15:04:58
[2026-06-22 15:04:58,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:04:58,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:04:58,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:04:58,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:04:58,782.782 INFO    ] time= 22/06/2026 15:04:58
[2026-06-22 15:04:58,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:04:58,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:04:58,982.982 INFO    ] No existing commands found in stream
[2026-06-22 15:05:04,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:05:04,010.010 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-22 15:05:06,927.927 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:05:06,930.930 INFO    ] Checking for system updates...
[2026-06-22 15:05:06,973.973 INFO    ] 200
[2026-06-22 15:05:06,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:05:07,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:05:07,031.031 INFO    ] No update needed
[2026-06-22 15:05:07,033.033 INFO    ] Checking for camera pi updates...
[2026-06-22 15:05:07,067.067 INFO    ] 200
[2026-06-22 15:05:07,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:05:07,115.115 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:05:07,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:05:07,198.198 INFO    ] No camera update needed
[2026-06-22 15:05:07,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:05:07,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:05:07,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:05:07,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:05:09,255.255 INFO    ] ================================================
[2026-06-22 15:05:09,271.271 INFO    ] Launching Daemon at Mon Jun 22 15:05:09 IST 2026
[2026-06-22 15:05:09,283.283 INFO    ] ================================================
[2026-06-22 15:05:09,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:05:09
[2026-06-22 15:05:10,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:05:10,650.650 INFO    ] Initializing speech engine...
[2026-06-22 15:05:10,658.658 INFO    ] 2026-06-22 15:05:10
[2026-06-22 15:05:10,915.915 INFO    ] 2026-06-22 15:05:10
[2026-06-22 15:05:10,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:05:11,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:05:11,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:05:11,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:05:11,400.400 INFO    ] time= 22/06/2026 15:05:11
[2026-06-22 15:05:11,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:05:11,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:05:11,598.598 INFO    ] No existing commands found in stream
[2026-06-22 15:05:16,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:05:16,625.625 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-22 15:05:20,503.503 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:05:20,505.505 INFO    ] Checking for system updates...
[2026-06-22 15:05:20,546.546 INFO    ] 200
[2026-06-22 15:05:20,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:05:20,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:05:20,611.611 INFO    ] No update needed
[2026-06-22 15:05:20,613.613 INFO    ] Checking for camera pi updates...
[2026-06-22 15:05:20,646.646 INFO    ] 200
[2026-06-22 15:05:20,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:05:20,690.690 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:05:20,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:05:20,750.750 INFO    ] No camera update needed
[2026-06-22 15:05:20,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:05:20,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:05:20,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:05:20,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:05:22,807.807 INFO    ] ================================================
[2026-06-22 15:05:22,823.823 INFO    ] Launching Daemon at Mon Jun 22 15:05:22 IST 2026
[2026-06-22 15:05:22,834.834 INFO    ] ================================================
[2026-06-22 15:05:23,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:05:23
[2026-06-22 15:05:23,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:05:24,179.179 INFO    ] Initializing speech engine...
[2026-06-22 15:05:24,193.193 INFO    ] 2026-06-22 15:05:24
[2026-06-22 15:05:24,461.461 INFO    ] 2026-06-22 15:05:24
[2026-06-22 15:05:24,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:05:24,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:05:24,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:05:24,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:05:24,943.943 INFO    ] time= 22/06/2026 15:05:24
[2026-06-22 15:05:24,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:05:25,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:05:25,169.169 INFO    ] No existing commands found in stream
[2026-06-22 15:05:30,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:05:30,199.199 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-22 15:05:31,526.526 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:05:31,528.528 INFO    ] Checking for system updates...
[2026-06-22 15:05:31,565.565 INFO    ] 200
[2026-06-22 15:05:31,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:05:31,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:05:31,623.623 INFO    ] No update needed
[2026-06-22 15:05:31,625.625 INFO    ] Checking for camera pi updates...
[2026-06-22 15:05:31,659.659 INFO    ] 200
[2026-06-22 15:05:31,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:05:31,706.706 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:05:31,783.783 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:05:31,786.786 INFO    ] No camera update needed
[2026-06-22 15:05:31,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:05:31,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:05:31,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:05:31,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:05:33,842.842 INFO    ] ================================================
[2026-06-22 15:05:33,858.858 INFO    ] Launching Daemon at Mon Jun 22 15:05:33 IST 2026
[2026-06-22 15:05:33,869.869 INFO    ] ================================================
[2026-06-22 15:05:34,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:05:34
[2026-06-22 15:05:35,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:05:35,295.295 INFO    ] Initializing speech engine...
[2026-06-22 15:05:35,305.305 INFO    ] 2026-06-22 15:05:35
[2026-06-22 15:05:35,551.551 INFO    ] 2026-06-22 15:05:35
[2026-06-22 15:05:35,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:05:35,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:05:35,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:05:36,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:05:36,079.079 INFO    ] time= 22/06/2026 15:05:36
[2026-06-22 15:05:36,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:05:36,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:05:36,263.263 INFO    ] No existing commands found in stream
[2026-06-22 15:05:41,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:05:41,279.279 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-22 15:05:44,027.027 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:05:44,030.030 INFO    ] Checking for system updates...
[2026-06-22 15:05:44,068.068 INFO    ] 200
[2026-06-22 15:05:44,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:05:44,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:05:44,133.133 INFO    ] No update needed
[2026-06-22 15:05:44,136.136 INFO    ] Checking for camera pi updates...
[2026-06-22 15:05:44,171.171 INFO    ] 200
[2026-06-22 15:05:44,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:05:44,216.216 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:05:44,299.299 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:05:44,302.302 INFO    ] No camera update needed
[2026-06-22 15:05:44,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:05:44,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:05:44,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:05:44,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:05:46,360.360 INFO    ] ================================================
[2026-06-22 15:05:46,376.376 INFO    ] Launching Daemon at Mon Jun 22 15:05:46 IST 2026
[2026-06-22 15:05:46,387.387 INFO    ] ================================================
[2026-06-22 15:05:47,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:05:47
[2026-06-22 15:05:47,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:05:47,919.919 INFO    ] Initializing speech engine...
[2026-06-22 15:05:47,928.928 INFO    ] 2026-06-22 15:05:47
[2026-06-22 15:05:48,241.241 INFO    ] 2026-06-22 15:05:48
[2026-06-22 15:05:48,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:05:48,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:05:48,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:05:48,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:05:48,930.930 INFO    ] time= 22/06/2026 15:05:48
[2026-06-22 15:05:48,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:05:49,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:05:49,160.160 INFO    ] No existing commands found in stream
[2026-06-22 15:05:54,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:05:54,200.200 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-22 15:05:55,772.772 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:05:55,775.775 INFO    ] Checking for system updates...
[2026-06-22 15:05:55,813.813 INFO    ] 200
[2026-06-22 15:05:55,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:05:55,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:05:55,879.879 INFO    ] No update needed
[2026-06-22 15:05:55,881.881 INFO    ] Checking for camera pi updates...
[2026-06-22 15:05:55,918.918 INFO    ] 200
[2026-06-22 15:05:55,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:05:55,960.960 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:05:56,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:05:56,031.031 INFO    ] No camera update needed
[2026-06-22 15:05:56,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:05:56,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:05:56,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:05:56,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:05:58,087.087 INFO    ] ================================================
[2026-06-22 15:05:58,102.102 INFO    ] Launching Daemon at Mon Jun 22 15:05:58 IST 2026
[2026-06-22 15:05:58,113.113 INFO    ] ================================================
[2026-06-22 15:05:58,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:05:58
[2026-06-22 15:05:59,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:05:59,490.490 INFO    ] Initializing speech engine...
[2026-06-22 15:05:59,497.497 INFO    ] 2026-06-22 15:05:59
[2026-06-22 15:05:59,779.779 INFO    ] 2026-06-22 15:05:59
[2026-06-22 15:05:59,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:06:00,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:06:00,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:06:00,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:06:00,262.262 INFO    ] time= 22/06/2026 15:06:00
[2026-06-22 15:06:00,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:06:00,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:06:00,487.487 INFO    ] No existing commands found in stream
[2026-06-22 15:06:05,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:06:05,515.515 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-22 15:06:07,680.680 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:06:07,683.683 INFO    ] Checking for system updates...
[2026-06-22 15:06:07,720.720 INFO    ] 200
[2026-06-22 15:06:07,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:06:07,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:06:07,777.777 INFO    ] No update needed
[2026-06-22 15:06:07,779.779 INFO    ] Checking for camera pi updates...
[2026-06-22 15:06:07,813.813 INFO    ] 200
[2026-06-22 15:06:07,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:06:07,856.856 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:06:07,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:06:07,938.938 INFO    ] No camera update needed
[2026-06-22 15:06:07,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:06:07,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:06:07,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:06:07,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:06:10,996.996 INFO    ] ================================================
[2026-06-22 15:06:10,011.011 INFO    ] Launching Daemon at Mon Jun 22 15:06:10 IST 2026
[2026-06-22 15:06:10,022.022 INFO    ] ================================================
[2026-06-22 15:06:10,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:06:10
[2026-06-22 15:06:11,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:06:11,359.359 INFO    ] Initializing speech engine...
[2026-06-22 15:06:11,365.365 INFO    ] 2026-06-22 15:06:11
[2026-06-22 15:06:11,662.662 INFO    ] 2026-06-22 15:06:11
[2026-06-22 15:06:11,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:06:11,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:06:11,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:06:12,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:06:12,091.091 INFO    ] time= 22/06/2026 15:06:12
[2026-06-22 15:06:12,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:06:12,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:06:12,313.313 INFO    ] No existing commands found in stream
[2026-06-22 15:06:17,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:06:17,327.327 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-22 15:06:18,650.650 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:06:18,652.652 INFO    ] Checking for system updates...
[2026-06-22 15:06:18,673.673 INFO    ] 200
[2026-06-22 15:06:18,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:06:18,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:06:18,708.708 INFO    ] No update needed
[2026-06-22 15:06:18,711.711 INFO    ] Checking for camera pi updates...
[2026-06-22 15:06:18,748.748 INFO    ] 200
[2026-06-22 15:06:18,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:06:18,791.791 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:06:18,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:06:18,870.870 INFO    ] No camera update needed
[2026-06-22 15:06:18,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:06:18,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:06:18,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:06:18,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:06:20,926.926 INFO    ] ================================================
[2026-06-22 15:06:20,941.941 INFO    ] Launching Daemon at Mon Jun 22 15:06:20 IST 2026
[2026-06-22 15:06:20,952.952 INFO    ] ================================================
[2026-06-22 15:06:21,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:06:21
[2026-06-22 15:06:22,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:06:22,405.405 INFO    ] Initializing speech engine...
[2026-06-22 15:06:22,412.412 INFO    ] 2026-06-22 15:06:22
[2026-06-22 15:06:22,700.700 INFO    ] 2026-06-22 15:06:22
[2026-06-22 15:06:22,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:06:22,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:06:22,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:06:23,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:06:23,184.184 INFO    ] time= 22/06/2026 15:06:23
[2026-06-22 15:06:23,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:06:23,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:06:23,397.397 INFO    ] No existing commands found in stream
[2026-06-22 15:06:28,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:06:28,429.429 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-22 15:06:30,358.358 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:06:30,360.360 INFO    ] Checking for system updates...
[2026-06-22 15:06:30,397.397 INFO    ] 200
[2026-06-22 15:06:30,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:06:30,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:06:30,464.464 INFO    ] No update needed
[2026-06-22 15:06:30,467.467 INFO    ] Checking for camera pi updates...
[2026-06-22 15:06:30,505.505 INFO    ] 200
[2026-06-22 15:06:30,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:06:30,554.554 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:06:30,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:06:30,610.610 INFO    ] No camera update needed
[2026-06-22 15:06:30,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:06:30,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:06:30,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:06:30,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:06:32,670.670 INFO    ] ================================================
[2026-06-22 15:06:32,688.688 INFO    ] Launching Daemon at Mon Jun 22 15:06:32 IST 2026
[2026-06-22 15:06:32,699.699 INFO    ] ================================================
[2026-06-22 15:06:33,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:06:33
[2026-06-22 15:06:33,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:06:34,214.214 INFO    ] Initializing speech engine...
[2026-06-22 15:06:34,220.220 INFO    ] 2026-06-22 15:06:34
[2026-06-22 15:06:34,485.485 INFO    ] 2026-06-22 15:06:34
[2026-06-22 15:06:34,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:06:34,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:06:34,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:06:34,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:06:34,898.898 INFO    ] time= 22/06/2026 15:06:34
[2026-06-22 15:06:34,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:06:34,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:06:34,986.986 INFO    ] No existing commands found in stream
[2026-06-22 15:06:40,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:06:40,025.025 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-22 15:06:43,553.553 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:06:43,556.556 INFO    ] Checking for system updates...
[2026-06-22 15:06:43,595.595 INFO    ] 200
[2026-06-22 15:06:43,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:06:43,652.652 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:06:43,654.654 INFO    ] No update needed
[2026-06-22 15:06:43,657.657 INFO    ] Checking for camera pi updates...
[2026-06-22 15:06:43,695.695 INFO    ] 200
[2026-06-22 15:06:43,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:06:43,740.740 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:06:43,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:06:43,924.924 INFO    ] No camera update needed
[2026-06-22 15:06:43,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:06:43,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:06:43,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:06:43,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:06:45,981.981 INFO    ] ================================================
[2026-06-22 15:06:46,996.996 INFO    ] Launching Daemon at Mon Jun 22 15:06:45 IST 2026
[2026-06-22 15:06:46,008.008 INFO    ] ================================================
[2026-06-22 15:06:46,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:06:46
[2026-06-22 15:06:47,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:06:47,510.510 INFO    ] Initializing speech engine...
[2026-06-22 15:06:47,518.518 INFO    ] 2026-06-22 15:06:47
[2026-06-22 15:06:47,801.801 INFO    ] 2026-06-22 15:06:47
[2026-06-22 15:06:47,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:06:48,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:06:48,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:06:48,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:06:48,258.258 INFO    ] time= 22/06/2026 15:06:48
[2026-06-22 15:06:48,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:06:48,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:06:48,479.479 INFO    ] No existing commands found in stream
[2026-06-22 15:06:53,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:06:53,509.509 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-22 15:06:55,963.963 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:06:55,966.966 INFO    ] Checking for system updates...
[2026-06-22 15:06:56,008.008 INFO    ] 200
[2026-06-22 15:06:56,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:06:56,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:06:56,069.069 INFO    ] No update needed
[2026-06-22 15:06:56,071.071 INFO    ] Checking for camera pi updates...
[2026-06-22 15:06:56,110.110 INFO    ] 200
[2026-06-22 15:06:56,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:06:56,165.165 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:06:56,237.237 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:06:56,240.240 INFO    ] No camera update needed
[2026-06-22 15:06:56,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:06:56,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:06:56,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:06:56,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:06:58,298.298 INFO    ] ================================================
[2026-06-22 15:06:58,314.314 INFO    ] Launching Daemon at Mon Jun 22 15:06:58 IST 2026
[2026-06-22 15:06:58,326.326 INFO    ] ================================================
[2026-06-22 15:06:58,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:06:58
[2026-06-22 15:06:59,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:06:59,935.935 INFO    ] Initializing speech engine...
[2026-06-22 15:06:59,939.939 INFO    ] 2026-06-22 15:06:59
[2026-06-22 15:07:00,212.212 INFO    ] 2026-06-22 15:07:00
[2026-06-22 15:07:00,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:07:00,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:07:00,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:07:00,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:07:00,733.733 INFO    ] time= 22/06/2026 15:07:00
[2026-06-22 15:07:00,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:07:00,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:07:00,924.924 INFO    ] No existing commands found in stream
[2026-06-22 15:07:05,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:07:05,956.956 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-22 15:07:07,602.602 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:07:07,605.605 INFO    ] Checking for system updates...
[2026-06-22 15:07:07,642.642 INFO    ] 200
[2026-06-22 15:07:07,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:07:07,704.704 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:07:07,706.706 INFO    ] No update needed
[2026-06-22 15:07:07,709.709 INFO    ] Checking for camera pi updates...
[2026-06-22 15:07:07,747.747 INFO    ] 200
[2026-06-22 15:07:07,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:07:07,790.790 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:07:07,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:07:07,877.877 INFO    ] No camera update needed
[2026-06-22 15:07:07,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:07:07,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:07:07,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:07:07,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:07:09,932.932 INFO    ] ================================================
[2026-06-22 15:07:09,948.948 INFO    ] Launching Daemon at Mon Jun 22 15:07:09 IST 2026
[2026-06-22 15:07:09,962.962 INFO    ] ================================================
[2026-06-22 15:07:10,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:07:10
[2026-06-22 15:07:11,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:07:11,369.369 INFO    ] Initializing speech engine...
[2026-06-22 15:07:11,383.383 INFO    ] 2026-06-22 15:07:11
[2026-06-22 15:07:11,650.650 INFO    ] 2026-06-22 15:07:11
[2026-06-22 15:07:11,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:07:11,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:07:11,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:07:12,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:07:12,113.113 INFO    ] time= 22/06/2026 15:07:12
[2026-06-22 15:07:12,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:07:12,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:07:12,371.371 INFO    ] No existing commands found in stream
[2026-06-22 15:07:17,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:07:17,396.396 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-22 15:07:19,878.878 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:07:19,880.880 INFO    ] Checking for system updates...
[2026-06-22 15:07:19,917.917 INFO    ] 200
[2026-06-22 15:07:19,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:07:19,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:07:19,977.977 INFO    ] No update needed
[2026-06-22 15:07:19,980.980 INFO    ] Checking for camera pi updates...
[2026-06-22 15:07:20,024.024 INFO    ] 200
[2026-06-22 15:07:20,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:07:20,075.075 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:07:20,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:07:20,158.158 INFO    ] No camera update needed
[2026-06-22 15:07:20,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:07:20,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:07:20,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:07:20,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:07:22,216.216 INFO    ] ================================================
[2026-06-22 15:07:22,232.232 INFO    ] Launching Daemon at Mon Jun 22 15:07:22 IST 2026
[2026-06-22 15:07:22,243.243 INFO    ] ================================================
[2026-06-22 15:07:22,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:07:22
[2026-06-22 15:07:23,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:07:23,591.591 INFO    ] Initializing speech engine...
[2026-06-22 15:07:23,611.611 INFO    ] 2026-06-22 15:07:23
[2026-06-22 15:07:23,863.863 INFO    ] 2026-06-22 15:07:23
[2026-06-22 15:07:23,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:07:24,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:07:24,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:07:24,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:07:24,243.243 INFO    ] time= 22/06/2026 15:07:24
[2026-06-22 15:07:24,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:07:24,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:07:24,434.434 INFO    ] No existing commands found in stream
[2026-06-22 15:07:29,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:07:29,459.459 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-22 15:07:33,595.595 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:07:33,597.597 INFO    ] Checking for system updates...
[2026-06-22 15:07:33,635.635 INFO    ] 200
[2026-06-22 15:07:33,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:07:33,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:07:33,692.692 INFO    ] No update needed
[2026-06-22 15:07:33,695.695 INFO    ] Checking for camera pi updates...
[2026-06-22 15:07:33,729.729 INFO    ] 200
[2026-06-22 15:07:33,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:07:33,771.771 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:07:33,855.855 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:07:33,858.858 INFO    ] No camera update needed
[2026-06-22 15:07:33,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:07:33,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:07:33,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:07:33,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:07:35,915.915 INFO    ] ================================================
[2026-06-22 15:07:35,930.930 INFO    ] Launching Daemon at Mon Jun 22 15:07:35 IST 2026
[2026-06-22 15:07:35,941.941 INFO    ] ================================================
[2026-06-22 15:07:36,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:07:36
[2026-06-22 15:07:37,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:07:37,552.552 INFO    ] Initializing speech engine...
[2026-06-22 15:07:37,560.560 INFO    ] 2026-06-22 15:07:37
[2026-06-22 15:07:37,858.858 INFO    ] 2026-06-22 15:07:37
[2026-06-22 15:07:37,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:07:38,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:07:38,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:07:38,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:07:38,388.388 INFO    ] time= 22/06/2026 15:07:38
[2026-06-22 15:07:38,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:07:38,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:07:38,544.544 INFO    ] No existing commands found in stream
[2026-06-22 15:07:43,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:07:43,577.577 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-22 15:07:48,096.096 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:07:48,100.100 INFO    ] Checking for system updates...
[2026-06-22 15:07:48,143.143 INFO    ] 200
[2026-06-22 15:07:48,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:07:48,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:07:48,209.209 INFO    ] No update needed
[2026-06-22 15:07:48,212.212 INFO    ] Checking for camera pi updates...
[2026-06-22 15:07:48,246.246 INFO    ] 200
[2026-06-22 15:07:48,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:07:48,290.290 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:07:48,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:07:48,377.377 INFO    ] No camera update needed
[2026-06-22 15:07:48,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:07:48,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:07:48,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:07:48,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:07:50,432.432 INFO    ] ================================================
[2026-06-22 15:07:50,449.449 INFO    ] Launching Daemon at Mon Jun 22 15:07:50 IST 2026
[2026-06-22 15:07:50,460.460 INFO    ] ================================================
[2026-06-22 15:07:51,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:07:51
[2026-06-22 15:07:51,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:07:52,101.101 INFO    ] Initializing speech engine...
[2026-06-22 15:07:52,114.114 INFO    ] 2026-06-22 15:07:52
[2026-06-22 15:07:52,404.404 INFO    ] 2026-06-22 15:07:52
[2026-06-22 15:07:52,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:07:52,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:07:52,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:07:53,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:07:53,188.188 INFO    ] time= 22/06/2026 15:07:53
[2026-06-22 15:07:53,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:07:53,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:07:53,475.475 INFO    ] No existing commands found in stream
[2026-06-22 15:07:58,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:07:58,504.504 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-22 15:08:02,176.176 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:08:02,179.179 INFO    ] Checking for system updates...
[2026-06-22 15:08:02,221.221 INFO    ] 200
[2026-06-22 15:08:02,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:08:02,292.292 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:08:02,296.296 INFO    ] No update needed
[2026-06-22 15:08:02,299.299 INFO    ] Checking for camera pi updates...
[2026-06-22 15:08:02,344.344 INFO    ] 200
[2026-06-22 15:08:02,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:08:02,407.407 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:08:02,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:08:02,463.463 INFO    ] No camera update needed
[2026-06-22 15:08:02,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:08:02,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:08:02,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:08:02,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:08:04,524.524 INFO    ] ================================================
[2026-06-22 15:08:04,540.540 INFO    ] Launching Daemon at Mon Jun 22 15:08:04 IST 2026
[2026-06-22 15:08:04,551.551 INFO    ] ================================================
[2026-06-22 15:08:05,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:08:05
[2026-06-22 15:08:05,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:08:05,943.943 INFO    ] Initializing speech engine...
[2026-06-22 15:08:05,953.953 INFO    ] 2026-06-22 15:08:05
[2026-06-22 15:08:06,205.205 INFO    ] 2026-06-22 15:08:06
[2026-06-22 15:08:06,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:08:06,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:08:06,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:08:06,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:08:06,681.681 INFO    ] time= 22/06/2026 15:08:06
[2026-06-22 15:08:06,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:08:06,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:08:06,901.901 INFO    ] No existing commands found in stream
[2026-06-22 15:08:11,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:08:11,929.929 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-22 15:08:12,802.802 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:08:12,805.805 INFO    ] Checking for system updates...
[2026-06-22 15:08:12,845.845 INFO    ] 200
[2026-06-22 15:08:12,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:08:12,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:08:12,902.902 INFO    ] No update needed
[2026-06-22 15:08:12,905.905 INFO    ] Checking for camera pi updates...
[2026-06-22 15:08:12,939.939 INFO    ] 200
[2026-06-22 15:08:12,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:08:12,986.986 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:08:13,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:08:13,075.075 INFO    ] No camera update needed
[2026-06-22 15:08:13,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:08:13,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:08:13,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:08:13,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:08:15,132.132 INFO    ] ================================================
[2026-06-22 15:08:15,148.148 INFO    ] Launching Daemon at Mon Jun 22 15:08:15 IST 2026
[2026-06-22 15:08:15,159.159 INFO    ] ================================================
[2026-06-22 15:08:15,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:08:15
[2026-06-22 15:08:16,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:08:16,567.567 INFO    ] Initializing speech engine...
[2026-06-22 15:08:16,582.582 INFO    ] 2026-06-22 15:08:16
[2026-06-22 15:08:16,849.849 INFO    ] 2026-06-22 15:08:16
[2026-06-22 15:08:16,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:08:17,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:08:17,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:08:17,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:08:17,334.334 INFO    ] time= 22/06/2026 15:08:17
[2026-06-22 15:08:17,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:08:17,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:08:17,571.571 INFO    ] No existing commands found in stream
[2026-06-22 15:08:22,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:08:22,594.594 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-22 15:08:27,043.043 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:08:27,045.045 INFO    ] Checking for system updates...
[2026-06-22 15:08:27,079.079 INFO    ] 200
[2026-06-22 15:08:27,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:08:27,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:08:27,137.137 INFO    ] No update needed
[2026-06-22 15:08:27,140.140 INFO    ] Checking for camera pi updates...
[2026-06-22 15:08:27,174.174 INFO    ] 200
[2026-06-22 15:08:27,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:08:27,217.217 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:08:27,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:08:27,304.304 INFO    ] No camera update needed
[2026-06-22 15:08:27,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:08:27,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:08:27,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:08:27,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:08:29,362.362 INFO    ] ================================================
[2026-06-22 15:08:29,379.379 INFO    ] Launching Daemon at Mon Jun 22 15:08:29 IST 2026
[2026-06-22 15:08:29,390.390 INFO    ] ================================================
[2026-06-22 15:08:30,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:08:30
[2026-06-22 15:08:30,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:08:30,863.863 INFO    ] Initializing speech engine...
[2026-06-22 15:08:30,872.872 INFO    ] 2026-06-22 15:08:30
[2026-06-22 15:08:31,122.122 INFO    ] 2026-06-22 15:08:31
[2026-06-22 15:08:31,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:08:31,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:08:31,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:08:31,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:08:31,601.601 INFO    ] time= 22/06/2026 15:08:31
[2026-06-22 15:08:31,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:08:31,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:08:31,859.859 INFO    ] No existing commands found in stream
[2026-06-22 15:08:36,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:08:36,889.889 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-22 15:08:38,486.486 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:08:38,489.489 INFO    ] Checking for system updates...
[2026-06-22 15:08:38,530.530 INFO    ] 200
[2026-06-22 15:08:38,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:08:38,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:08:38,599.599 INFO    ] No update needed
[2026-06-22 15:08:38,602.602 INFO    ] Checking for camera pi updates...
[2026-06-22 15:08:38,637.637 INFO    ] 200
[2026-06-22 15:08:38,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:08:38,683.683 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:08:38,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:08:38,771.771 INFO    ] No camera update needed
[2026-06-22 15:08:38,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:08:38,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:08:38,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:08:38,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:08:40,830.830 INFO    ] ================================================
[2026-06-22 15:08:40,846.846 INFO    ] Launching Daemon at Mon Jun 22 15:08:40 IST 2026
[2026-06-22 15:08:40,857.857 INFO    ] ================================================
[2026-06-22 15:08:41,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:08:41
[2026-06-22 15:08:42,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:08:42,522.522 INFO    ] Initializing speech engine...
[2026-06-22 15:08:42,533.533 INFO    ] 2026-06-22 15:08:42
[2026-06-22 15:08:42,821.821 INFO    ] 2026-06-22 15:08:42
[2026-06-22 15:08:42,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:08:43,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:08:43,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:08:43,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:08:43,348.348 INFO    ] time= 22/06/2026 15:08:43
[2026-06-22 15:08:43,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:08:43,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:08:43,523.523 INFO    ] No existing commands found in stream
[2026-06-22 15:08:48,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:08:48,558.558 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-22 15:08:51,119.119 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:08:51,120.120 INFO    ] Checking for system updates...
[2026-06-22 15:08:51,142.142 INFO    ] 200
[2026-06-22 15:08:51,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:08:51,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:08:51,194.194 INFO    ] No update needed
[2026-06-22 15:08:51,197.197 INFO    ] Checking for camera pi updates...
[2026-06-22 15:08:51,232.232 INFO    ] 200
[2026-06-22 15:08:51,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:08:51,277.277 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:08:51,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:08:51,478.478 INFO    ] No camera update needed
[2026-06-22 15:08:51,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:08:51,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:08:51,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:08:51,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:08:53,538.538 INFO    ] ================================================
[2026-06-22 15:08:53,553.553 INFO    ] Launching Daemon at Mon Jun 22 15:08:53 IST 2026
[2026-06-22 15:08:53,564.564 INFO    ] ================================================
[2026-06-22 15:08:54,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:08:54
[2026-06-22 15:08:54,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:08:55,112.112 INFO    ] Initializing speech engine...
[2026-06-22 15:08:55,120.120 INFO    ] 2026-06-22 15:08:55
[2026-06-22 15:08:55,438.438 INFO    ] 2026-06-22 15:08:55
[2026-06-22 15:08:55,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:08:55,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:08:55,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:08:55,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:08:55,947.947 INFO    ] time= 22/06/2026 15:08:55
[2026-06-22 15:08:55,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:08:55,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:08:56,132.132 INFO    ] No existing commands found in stream
[2026-06-22 15:09:01,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:09:01,167.167 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-22 15:09:03,720.720 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:09:03,723.723 INFO    ] Checking for system updates...
[2026-06-22 15:09:03,772.772 INFO    ] 200
[2026-06-22 15:09:03,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:09:03,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:09:03,841.841 INFO    ] No update needed
[2026-06-22 15:09:03,843.843 INFO    ] Checking for camera pi updates...
[2026-06-22 15:09:03,881.881 INFO    ] 200
[2026-06-22 15:09:03,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:09:03,930.930 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:09:04,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:09:04,016.016 INFO    ] No camera update needed
[2026-06-22 15:09:04,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:09:04,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:09:04,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:09:04,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:09:06,073.073 INFO    ] ================================================
[2026-06-22 15:09:06,088.088 INFO    ] Launching Daemon at Mon Jun 22 15:09:06 IST 2026
[2026-06-22 15:09:06,099.099 INFO    ] ================================================
[2026-06-22 15:09:06,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:09:06
[2026-06-22 15:09:07,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:09:07,626.626 INFO    ] Initializing speech engine...
[2026-06-22 15:09:07,635.635 INFO    ] 2026-06-22 15:09:07
[2026-06-22 15:09:07,920.920 INFO    ] 2026-06-22 15:09:07
[2026-06-22 15:09:07,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:09:08,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:09:08,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:09:08,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:09:08,629.629 INFO    ] time= 22/06/2026 15:09:08
[2026-06-22 15:09:08,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:09:08,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:09:08,856.856 INFO    ] No existing commands found in stream
[2026-06-22 15:09:13,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:09:13,876.876 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-22 15:09:16,025.025 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:09:16,028.028 INFO    ] Checking for system updates...
[2026-06-22 15:09:16,068.068 INFO    ] 200
[2026-06-22 15:09:16,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:09:16,131.131 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:09:16,134.134 INFO    ] No update needed
[2026-06-22 15:09:16,141.141 INFO    ] Checking for camera pi updates...
[2026-06-22 15:09:16,177.177 INFO    ] 200
[2026-06-22 15:09:16,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:09:16,226.226 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:09:16,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:09:16,280.280 INFO    ] No camera update needed
[2026-06-22 15:09:16,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:09:16,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:09:16,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:09:16,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:09:18,335.335 INFO    ] ================================================
[2026-06-22 15:09:18,350.350 INFO    ] Launching Daemon at Mon Jun 22 15:09:18 IST 2026
[2026-06-22 15:09:18,360.360 INFO    ] ================================================
[2026-06-22 15:09:19,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:09:18
[2026-06-22 15:09:19,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:09:19,867.867 INFO    ] Initializing speech engine...
[2026-06-22 15:09:19,880.880 INFO    ] 2026-06-22 15:09:19
[2026-06-22 15:09:20,191.191 INFO    ] 2026-06-22 15:09:20
[2026-06-22 15:09:20,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:09:20,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:09:20,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:09:20,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:09:20,702.702 INFO    ] time= 22/06/2026 15:09:20
[2026-06-22 15:09:20,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:09:20,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:09:20,862.862 INFO    ] No existing commands found in stream
[2026-06-22 15:09:25,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:09:25,895.895 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-22 15:09:27,210.210 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:09:27,211.211 INFO    ] Checking for system updates...
[2026-06-22 15:09:27,232.232 INFO    ] 200
[2026-06-22 15:09:27,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:09:27,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:09:27,266.266 INFO    ] No update needed
[2026-06-22 15:09:27,268.268 INFO    ] Checking for camera pi updates...
[2026-06-22 15:09:27,288.288 INFO    ] 200
[2026-06-22 15:09:27,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:09:27,333.333 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:09:27,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:09:27,422.422 INFO    ] No camera update needed
[2026-06-22 15:09:27,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:09:27,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:09:27,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:09:27,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:09:29,477.477 INFO    ] ================================================
[2026-06-22 15:09:29,492.492 INFO    ] Launching Daemon at Mon Jun 22 15:09:29 IST 2026
[2026-06-22 15:09:29,503.503 INFO    ] ================================================
[2026-06-22 15:09:30,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:09:30
[2026-06-22 15:09:30,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:09:30,969.969 INFO    ] Initializing speech engine...
[2026-06-22 15:09:30,973.973 INFO    ] 2026-06-22 15:09:30
[2026-06-22 15:09:31,220.220 INFO    ] 2026-06-22 15:09:31
[2026-06-22 15:09:31,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:09:31,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:09:31,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:09:31,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:09:31,688.688 INFO    ] time= 22/06/2026 15:09:31
[2026-06-22 15:09:31,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:09:31,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:09:31,917.917 INFO    ] No existing commands found in stream
[2026-06-22 15:09:36,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:09:36,941.941 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-22 15:09:39,177.177 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:09:39,180.180 INFO    ] Checking for system updates...
[2026-06-22 15:09:39,216.216 INFO    ] 200
[2026-06-22 15:09:39,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:09:39,271.271 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:09:39,273.273 INFO    ] No update needed
[2026-06-22 15:09:39,275.275 INFO    ] Checking for camera pi updates...
[2026-06-22 15:09:39,313.313 INFO    ] 200
[2026-06-22 15:09:39,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:09:39,361.361 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:09:39,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:09:39,464.464 INFO    ] No camera update needed
[2026-06-22 15:09:39,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:09:39,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:09:39,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:09:39,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:09:41,521.521 INFO    ] ================================================
[2026-06-22 15:09:41,536.536 INFO    ] Launching Daemon at Mon Jun 22 15:09:41 IST 2026
[2026-06-22 15:09:41,547.547 INFO    ] ================================================
[2026-06-22 15:09:42,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:09:42
[2026-06-22 15:09:42,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:09:43,148.148 INFO    ] Initializing speech engine...
[2026-06-22 15:09:43,156.156 INFO    ] 2026-06-22 15:09:43
[2026-06-22 15:09:43,427.427 INFO    ] 2026-06-22 15:09:43
[2026-06-22 15:09:43,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:09:43,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:09:43,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:09:43,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:09:43,972.972 INFO    ] time= 22/06/2026 15:09:43
[2026-06-22 15:09:43,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:09:44,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:09:44,125.125 INFO    ] No existing commands found in stream
[2026-06-22 15:09:49,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:09:49,144.144 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-22 15:09:52,464.464 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:09:52,466.466 INFO    ] Checking for system updates...
[2026-06-22 15:09:52,487.487 INFO    ] 200
[2026-06-22 15:09:52,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:09:52,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:09:52,528.528 INFO    ] No update needed
[2026-06-22 15:09:52,531.531 INFO    ] Checking for camera pi updates...
[2026-06-22 15:09:52,566.566 INFO    ] 200
[2026-06-22 15:09:52,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:09:52,610.610 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:09:52,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:09:52,694.694 INFO    ] No camera update needed
[2026-06-22 15:09:52,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:09:52,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:09:52,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:09:52,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:09:54,754.754 INFO    ] ================================================
[2026-06-22 15:09:54,770.770 INFO    ] Launching Daemon at Mon Jun 22 15:09:54 IST 2026
[2026-06-22 15:09:54,780.780 INFO    ] ================================================
[2026-06-22 15:09:55,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:09:55
[2026-06-22 15:09:55,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:09:56,224.224 INFO    ] Initializing speech engine...
[2026-06-22 15:09:56,233.233 INFO    ] 2026-06-22 15:09:56
[2026-06-22 15:09:56,478.478 INFO    ] 2026-06-22 15:09:56
[2026-06-22 15:09:56,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:09:56,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:09:56,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:09:56,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:09:56,947.947 INFO    ] time= 22/06/2026 15:09:56
[2026-06-22 15:09:57,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:09:57,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:09:57,166.166 INFO    ] No existing commands found in stream
[2026-06-22 15:10:02,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:10:02,198.198 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-22 15:10:08,314.314 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:10:08,317.317 INFO    ] Checking for system updates...
[2026-06-22 15:10:08,356.356 INFO    ] 200
[2026-06-22 15:10:08,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:10:08,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:10:08,416.416 INFO    ] No update needed
[2026-06-22 15:10:08,419.419 INFO    ] Checking for camera pi updates...
[2026-06-22 15:10:08,453.453 INFO    ] 200
[2026-06-22 15:10:08,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:10:08,497.497 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:10:08,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:10:08,604.604 INFO    ] No camera update needed
[2026-06-22 15:10:08,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:10:08,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:10:08,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:10:08,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:10:10,660.660 INFO    ] ================================================
[2026-06-22 15:10:10,676.676 INFO    ] Launching Daemon at Mon Jun 22 15:10:10 IST 2026
[2026-06-22 15:10:10,687.687 INFO    ] ================================================
[2026-06-22 15:10:11,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:10:11
[2026-06-22 15:10:11,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:10:12,041.041 INFO    ] Initializing speech engine...
[2026-06-22 15:10:12,050.050 INFO    ] 2026-06-22 15:10:12
[2026-06-22 15:10:12,342.342 INFO    ] 2026-06-22 15:10:12
[2026-06-22 15:10:12,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:10:12,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:10:12,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:10:12,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:10:12,766.766 INFO    ] time= 22/06/2026 15:10:12
[2026-06-22 15:10:12,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:10:12,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:10:12,950.950 INFO    ] No existing commands found in stream
[2026-06-22 15:10:17,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:10:17,983.983 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-22 15:10:20,561.561 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:10:20,564.564 INFO    ] Checking for system updates...
[2026-06-22 15:10:20,604.604 INFO    ] 200
[2026-06-22 15:10:20,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:10:20,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:10:20,668.668 INFO    ] No update needed
[2026-06-22 15:10:20,670.670 INFO    ] Checking for camera pi updates...
[2026-06-22 15:10:20,704.704 INFO    ] 200
[2026-06-22 15:10:20,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:10:20,748.748 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:10:20,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:10:20,827.827 INFO    ] No camera update needed
[2026-06-22 15:10:20,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:10:20,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:10:20,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:10:20,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:10:22,885.885 INFO    ] ================================================
[2026-06-22 15:10:22,900.900 INFO    ] Launching Daemon at Mon Jun 22 15:10:22 IST 2026
[2026-06-22 15:10:22,910.910 INFO    ] ================================================
[2026-06-22 15:10:23,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:10:23
[2026-06-22 15:10:23,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:10:24,239.239 INFO    ] Initializing speech engine...
[2026-06-22 15:10:24,247.247 INFO    ] 2026-06-22 15:10:24
[2026-06-22 15:10:24,495.495 INFO    ] 2026-06-22 15:10:24
[2026-06-22 15:10:24,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:10:24,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:10:24,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:10:24,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:10:25,042.042 INFO    ] time= 22/06/2026 15:10:25
[2026-06-22 15:10:25,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:10:25,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:10:25,184.184 INFO    ] No existing commands found in stream
[2026-06-22 15:10:30,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:10:30,216.216 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-22 15:10:31,752.752 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:10:31,756.756 INFO    ] Checking for system updates...
[2026-06-22 15:10:31,793.793 INFO    ] 200
[2026-06-22 15:10:31,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:10:31,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:10:31,861.861 INFO    ] No update needed
[2026-06-22 15:10:31,863.863 INFO    ] Checking for camera pi updates...
[2026-06-22 15:10:31,897.897 INFO    ] 200
[2026-06-22 15:10:31,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:10:31,940.940 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:10:32,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:10:32,007.007 INFO    ] No camera update needed
[2026-06-22 15:10:32,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:10:32,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:10:32,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:10:32,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:10:34,073.073 INFO    ] ================================================
[2026-06-22 15:10:34,088.088 INFO    ] Launching Daemon at Mon Jun 22 15:10:34 IST 2026
[2026-06-22 15:10:34,100.100 INFO    ] ================================================
[2026-06-22 15:10:34,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:10:34
[2026-06-22 15:10:35,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:10:35,531.531 INFO    ] Initializing speech engine...
[2026-06-22 15:10:35,538.538 INFO    ] 2026-06-22 15:10:35
[2026-06-22 15:10:35,831.831 INFO    ] 2026-06-22 15:10:35
[2026-06-22 15:10:35,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:10:36,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:10:36,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:10:36,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:10:36,220.220 INFO    ] time= 22/06/2026 15:10:36
[2026-06-22 15:10:36,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:10:36,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:10:36,410.410 INFO    ] No existing commands found in stream
[2026-06-22 15:10:41,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:10:41,427.427 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-22 15:10:42,831.831 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:10:42,833.833 INFO    ] Checking for system updates...
[2026-06-22 15:10:42,874.874 INFO    ] 200
[2026-06-22 15:10:42,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:10:42,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:10:42,942.942 INFO    ] No update needed
[2026-06-22 15:10:42,944.944 INFO    ] Checking for camera pi updates...
[2026-06-22 15:10:42,981.981 INFO    ] 200
[2026-06-22 15:10:42,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:10:43,028.028 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:10:43,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:10:43,130.130 INFO    ] No camera update needed
[2026-06-22 15:10:43,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:10:43,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:10:43,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:10:43,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:10:45,185.185 INFO    ] ================================================
[2026-06-22 15:10:45,200.200 INFO    ] Launching Daemon at Mon Jun 22 15:10:45 IST 2026
[2026-06-22 15:10:45,211.211 INFO    ] ================================================
[2026-06-22 15:10:45,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:10:45
[2026-06-22 15:10:46,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:10:46,674.674 INFO    ] Initializing speech engine...
[2026-06-22 15:10:46,682.682 INFO    ] 2026-06-22 15:10:46
[2026-06-22 15:10:46,928.928 INFO    ] 2026-06-22 15:10:46
[2026-06-22 15:10:46,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:10:47,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:10:47,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:10:47,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:10:47,399.399 INFO    ] time= 22/06/2026 15:10:47
[2026-06-22 15:10:47,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:10:47,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:10:47,623.623 INFO    ] No existing commands found in stream
[2026-06-22 15:10:52,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:10:52,648.648 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-22 15:10:54,499.499 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:10:54,501.501 INFO    ] Checking for system updates...
[2026-06-22 15:10:54,538.538 INFO    ] 200
[2026-06-22 15:10:54,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:10:54,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:10:54,595.595 INFO    ] No update needed
[2026-06-22 15:10:54,597.597 INFO    ] Checking for camera pi updates...
[2026-06-22 15:10:54,634.634 INFO    ] 200
[2026-06-22 15:10:54,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:10:54,672.672 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:10:54,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:10:54,856.856 INFO    ] No camera update needed
[2026-06-22 15:10:54,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:10:54,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:10:54,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:10:54,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:10:56,913.913 INFO    ] ================================================
[2026-06-22 15:10:56,928.928 INFO    ] Launching Daemon at Mon Jun 22 15:10:56 IST 2026
[2026-06-22 15:10:56,939.939 INFO    ] ================================================
[2026-06-22 15:10:57,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:10:57
[2026-06-22 15:10:58,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:10:58,260.260 INFO    ] Initializing speech engine...
[2026-06-22 15:10:58,266.266 INFO    ] 2026-06-22 15:10:58
[2026-06-22 15:10:58,556.556 INFO    ] 2026-06-22 15:10:58
[2026-06-22 15:10:58,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:10:58,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:10:58,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:10:58,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:10:58,971.971 INFO    ] time= 22/06/2026 15:10:58
[2026-06-22 15:10:58,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:10:58,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:10:59,055.055 INFO    ] No existing commands found in stream
[2026-06-22 15:11:04,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:11:04,093.093 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-22 15:11:05,412.412 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:11:05,415.415 INFO    ] Checking for system updates...
[2026-06-22 15:11:05,450.450 INFO    ] 200
[2026-06-22 15:11:05,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:11:05,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:11:05,518.518 INFO    ] No update needed
[2026-06-22 15:11:05,520.520 INFO    ] Checking for camera pi updates...
[2026-06-22 15:11:05,557.557 INFO    ] 200
[2026-06-22 15:11:05,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:11:05,605.605 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:11:05,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:11:05,686.686 INFO    ] No camera update needed
[2026-06-22 15:11:05,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:11:05,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:11:05,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:11:05,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:11:07,742.742 INFO    ] ================================================
[2026-06-22 15:11:07,757.757 INFO    ] Launching Daemon at Mon Jun 22 15:11:07 IST 2026
[2026-06-22 15:11:07,768.768 INFO    ] ================================================
[2026-06-22 15:11:08,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:11:08
[2026-06-22 15:11:08,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:11:09,194.194 INFO    ] Initializing speech engine...
[2026-06-22 15:11:09,201.201 INFO    ] 2026-06-22 15:11:09
[2026-06-22 15:11:09,505.505 INFO    ] 2026-06-22 15:11:09
[2026-06-22 15:11:09,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:11:09,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:11:09,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:11:10,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:11:10,027.027 INFO    ] time= 22/06/2026 15:11:10
[2026-06-22 15:11:10,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:11:10,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:11:10,210.210 INFO    ] No existing commands found in stream
[2026-06-22 15:11:15,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:11:15,225.225 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-22 15:11:19,318.318 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:11:19,321.321 INFO    ] Checking for system updates...
[2026-06-22 15:11:19,358.358 INFO    ] 200
[2026-06-22 15:11:19,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:11:19,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:11:19,418.418 INFO    ] No update needed
[2026-06-22 15:11:19,420.420 INFO    ] Checking for camera pi updates...
[2026-06-22 15:11:19,458.458 INFO    ] 200
[2026-06-22 15:11:19,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:11:19,501.501 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:11:19,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:11:19,582.582 INFO    ] No camera update needed
[2026-06-22 15:11:19,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:11:19,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:11:19,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:11:19,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:11:21,637.637 INFO    ] ================================================
[2026-06-22 15:11:21,652.652 INFO    ] Launching Daemon at Mon Jun 22 15:11:21 IST 2026
[2026-06-22 15:11:21,663.663 INFO    ] ================================================
[2026-06-22 15:11:22,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:11:22
[2026-06-22 15:11:22,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:11:23,017.017 INFO    ] Initializing speech engine...
[2026-06-22 15:11:23,026.026 INFO    ] 2026-06-22 15:11:23
[2026-06-22 15:11:23,321.321 INFO    ] 2026-06-22 15:11:23
[2026-06-22 15:11:23,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:11:23,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:11:23,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:11:23,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:11:23,746.746 INFO    ] time= 22/06/2026 15:11:23
[2026-06-22 15:11:23,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:11:23,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:11:23,917.917 INFO    ] No existing commands found in stream
[2026-06-22 15:11:28,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:11:28,946.946 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-22 15:11:31,046.046 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:11:31,049.049 INFO    ] Checking for system updates...
[2026-06-22 15:11:31,085.085 INFO    ] 200
[2026-06-22 15:11:31,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:11:31,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:11:31,149.149 INFO    ] No update needed
[2026-06-22 15:11:31,151.151 INFO    ] Checking for camera pi updates...
[2026-06-22 15:11:31,208.208 INFO    ] 200
[2026-06-22 15:11:31,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:11:31,262.262 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:11:31,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:11:31,353.353 INFO    ] No camera update needed
[2026-06-22 15:11:31,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:11:31,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:11:31,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:11:31,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:11:33,413.413 INFO    ] ================================================
[2026-06-22 15:11:33,429.429 INFO    ] Launching Daemon at Mon Jun 22 15:11:33 IST 2026
[2026-06-22 15:11:33,440.440 INFO    ] ================================================
[2026-06-22 15:11:34,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:11:34
[2026-06-22 15:11:34,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:11:34,992.992 INFO    ] Initializing speech engine...
[2026-06-22 15:11:35,000.000 INFO    ] 2026-06-22 15:11:34
[2026-06-22 15:11:35,280.280 INFO    ] 2026-06-22 15:11:35
[2026-06-22 15:11:35,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:11:35,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:11:35,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:11:35,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:11:35,848.848 INFO    ] time= 22/06/2026 15:11:35
[2026-06-22 15:11:35,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:11:35,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:11:36,010.010 INFO    ] No existing commands found in stream
[2026-06-22 15:11:41,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:11:41,043.043 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-22 15:11:42,402.402 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:11:42,404.404 INFO    ] Checking for system updates...
[2026-06-22 15:11:42,425.425 INFO    ] 200
[2026-06-22 15:11:42,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:11:42,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:11:42,459.459 INFO    ] No update needed
[2026-06-22 15:11:42,460.460 INFO    ] Checking for camera pi updates...
[2026-06-22 15:11:42,482.482 INFO    ] 200
[2026-06-22 15:11:42,483.483 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:11:42,525.525 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:11:42,624.624 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:11:42,627.627 INFO    ] No camera update needed
[2026-06-22 15:11:42,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:11:42,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:11:42,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:11:42,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:11:44,682.682 INFO    ] ================================================
[2026-06-22 15:11:44,698.698 INFO    ] Launching Daemon at Mon Jun 22 15:11:44 IST 2026
[2026-06-22 15:11:44,708.708 INFO    ] ================================================
[2026-06-22 15:11:45,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:11:45
[2026-06-22 15:11:45,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:11:46,053.053 INFO    ] Initializing speech engine...
[2026-06-22 15:11:46,059.059 INFO    ] 2026-06-22 15:11:46
[2026-06-22 15:11:46,314.314 INFO    ] 2026-06-22 15:11:46
[2026-06-22 15:11:46,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:11:46,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:11:46,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:11:46,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:11:46,698.698 INFO    ] time= 22/06/2026 15:11:46
[2026-06-22 15:11:46,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:11:46,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:11:46,894.894 INFO    ] No existing commands found in stream
[2026-06-22 15:11:51,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:11:51,907.907 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-22 15:11:55,601.601 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:11:55,604.604 INFO    ] Checking for system updates...
[2026-06-22 15:11:55,641.641 INFO    ] 200
[2026-06-22 15:11:55,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:11:55,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:11:55,701.701 INFO    ] No update needed
[2026-06-22 15:11:55,704.704 INFO    ] Checking for camera pi updates...
[2026-06-22 15:11:55,739.739 INFO    ] 200
[2026-06-22 15:11:55,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:11:55,790.790 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:11:55,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:11:55,888.888 INFO    ] No camera update needed
[2026-06-22 15:11:55,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:11:55,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:11:55,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:11:55,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:11:57,950.950 INFO    ] ================================================
[2026-06-22 15:11:57,966.966 INFO    ] Launching Daemon at Mon Jun 22 15:11:57 IST 2026
[2026-06-22 15:11:57,977.977 INFO    ] ================================================
[2026-06-22 15:11:58,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:11:58
[2026-06-22 15:11:59,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:11:59,552.552 INFO    ] Initializing speech engine...
[2026-06-22 15:11:59,562.562 INFO    ] 2026-06-22 15:11:59
[2026-06-22 15:11:59,851.851 INFO    ] 2026-06-22 15:11:59
[2026-06-22 15:11:59,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:12:00,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:12:00,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:12:00,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:12:00,389.389 INFO    ] time= 22/06/2026 15:12:00
[2026-06-22 15:12:00,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:12:00,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:12:00,536.536 INFO    ] No existing commands found in stream
[2026-06-22 15:12:05,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:12:05,561.561 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-22 15:12:06,662.662 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:12:06,664.664 INFO    ] Checking for system updates...
[2026-06-22 15:12:06,686.686 INFO    ] 200
[2026-06-22 15:12:06,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:12:06,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:12:06,741.741 INFO    ] No update needed
[2026-06-22 15:12:06,744.744 INFO    ] Checking for camera pi updates...
[2026-06-22 15:12:06,779.779 INFO    ] 200
[2026-06-22 15:12:06,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:12:06,825.825 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:12:06,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:12:06,912.912 INFO    ] No camera update needed
[2026-06-22 15:12:06,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:12:06,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:12:06,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:12:06,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:12:08,979.979 INFO    ] ================================================
[2026-06-22 15:12:09,995.995 INFO    ] Launching Daemon at Mon Jun 22 15:12:08 IST 2026
[2026-06-22 15:12:09,006.006 INFO    ] ================================================
[2026-06-22 15:12:09,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:12:09
[2026-06-22 15:12:10,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:12:10,582.582 INFO    ] Initializing speech engine...
[2026-06-22 15:12:10,594.594 INFO    ] 2026-06-22 15:12:10
[2026-06-22 15:12:10,864.864 INFO    ] 2026-06-22 15:12:10
[2026-06-22 15:12:10,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:12:11,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:12:11,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:12:11,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:12:11,415.415 INFO    ] time= 22/06/2026 15:12:11
[2026-06-22 15:12:11,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:12:11,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:12:11,581.581 INFO    ] No existing commands found in stream
[2026-06-22 15:12:16,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:12:16,620.620 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-22 15:12:19,003.003 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:12:19,006.006 INFO    ] Checking for system updates...
[2026-06-22 15:12:19,043.043 INFO    ] 200
[2026-06-22 15:12:19,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:12:19,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:12:19,111.111 INFO    ] No update needed
[2026-06-22 15:12:19,113.113 INFO    ] Checking for camera pi updates...
[2026-06-22 15:12:19,151.151 INFO    ] 200
[2026-06-22 15:12:19,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:12:19,200.200 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:12:19,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:12:19,282.282 INFO    ] No camera update needed
[2026-06-22 15:12:19,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:12:19,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:12:19,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:12:19,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:12:21,339.339 INFO    ] ================================================
[2026-06-22 15:12:21,355.355 INFO    ] Launching Daemon at Mon Jun 22 15:12:21 IST 2026
[2026-06-22 15:12:21,365.365 INFO    ] ================================================
[2026-06-22 15:12:21,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:12:21
[2026-06-22 15:12:22,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:12:22,930.930 INFO    ] Initializing speech engine...
[2026-06-22 15:12:22,939.939 INFO    ] 2026-06-22 15:12:22
[2026-06-22 15:12:23,233.233 INFO    ] 2026-06-22 15:12:23
[2026-06-22 15:12:23,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:12:23,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:12:23,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:12:23,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:12:23,712.712 INFO    ] time= 22/06/2026 15:12:23
[2026-06-22 15:12:23,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:12:23,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:12:23,909.909 INFO    ] No existing commands found in stream
[2026-06-22 15:12:28,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:12:28,940.940 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-22 15:12:31,968.968 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:12:31,971.971 INFO    ] Checking for system updates...
[2026-06-22 15:12:32,008.008 INFO    ] 200
[2026-06-22 15:12:32,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:12:32,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:12:32,077.077 INFO    ] No update needed
[2026-06-22 15:12:32,080.080 INFO    ] Checking for camera pi updates...
[2026-06-22 15:12:32,122.122 INFO    ] 200
[2026-06-22 15:12:32,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:12:32,174.174 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:12:32,239.239 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:12:32,241.241 INFO    ] No camera update needed
[2026-06-22 15:12:32,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:12:32,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:12:32,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:12:32,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:12:34,301.301 INFO    ] ================================================
[2026-06-22 15:12:34,317.317 INFO    ] Launching Daemon at Mon Jun 22 15:12:34 IST 2026
[2026-06-22 15:12:34,332.332 INFO    ] ================================================
[2026-06-22 15:12:34,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:12:34
[2026-06-22 15:12:35,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:12:35,812.812 INFO    ] Initializing speech engine...
[2026-06-22 15:12:35,818.818 INFO    ] 2026-06-22 15:12:35
[2026-06-22 15:12:36,080.080 INFO    ] 2026-06-22 15:12:36
[2026-06-22 15:12:36,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:12:36,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:12:36,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:12:36,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:12:36,548.548 INFO    ] time= 22/06/2026 15:12:36
[2026-06-22 15:12:36,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:12:36,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:12:36,766.766 INFO    ] No existing commands found in stream
[2026-06-22 15:12:41,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:12:41,793.793 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-22 15:12:45,480.480 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:12:45,483.483 INFO    ] Checking for system updates...
[2026-06-22 15:12:45,519.519 INFO    ] 200
[2026-06-22 15:12:45,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:12:45,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:12:45,587.587 INFO    ] No update needed
[2026-06-22 15:12:45,589.589 INFO    ] Checking for camera pi updates...
[2026-06-22 15:12:45,623.623 INFO    ] 200
[2026-06-22 15:12:45,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:12:45,666.666 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:12:45,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:12:45,765.765 INFO    ] No camera update needed
[2026-06-22 15:12:45,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:12:45,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:12:45,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:12:45,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:12:47,822.822 INFO    ] ================================================
[2026-06-22 15:12:47,838.838 INFO    ] Launching Daemon at Mon Jun 22 15:12:47 IST 2026
[2026-06-22 15:12:47,848.848 INFO    ] ================================================
[2026-06-22 15:12:48,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:12:48
[2026-06-22 15:12:48,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:12:49,179.179 INFO    ] Initializing speech engine...
[2026-06-22 15:12:49,185.185 INFO    ] 2026-06-22 15:12:49
[2026-06-22 15:12:49,486.486 INFO    ] 2026-06-22 15:12:49
[2026-06-22 15:12:49,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:12:49,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:12:49,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:12:49,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:12:49,913.913 INFO    ] time= 22/06/2026 15:12:49
[2026-06-22 15:12:49,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:12:49,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:12:50,040.040 INFO    ] No existing commands found in stream
[2026-06-22 15:12:55,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:12:55,072.072 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-22 15:12:59,044.044 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:12:59,046.046 INFO    ] Checking for system updates...
[2026-06-22 15:12:59,067.067 INFO    ] 200
[2026-06-22 15:12:59,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:12:59,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:12:59,119.119 INFO    ] No update needed
[2026-06-22 15:12:59,121.121 INFO    ] Checking for camera pi updates...
[2026-06-22 15:12:59,162.162 INFO    ] 200
[2026-06-22 15:12:59,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:12:59,212.212 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:12:59,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:12:59,397.397 INFO    ] No camera update needed
[2026-06-22 15:12:59,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:12:59,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:12:59,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:12:59,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:13:01,451.451 INFO    ] ================================================
[2026-06-22 15:13:01,467.467 INFO    ] Launching Daemon at Mon Jun 22 15:13:01 IST 2026
[2026-06-22 15:13:01,478.478 INFO    ] ================================================
[2026-06-22 15:13:02,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:13:02
[2026-06-22 15:13:02,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:13:03,144.144 INFO    ] Initializing speech engine...
[2026-06-22 15:13:03,170.170 INFO    ] 2026-06-22 15:13:03
[2026-06-22 15:13:03,487.487 INFO    ] 2026-06-22 15:13:03
[2026-06-22 15:13:03,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:13:03,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:13:03,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:13:03,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:13:03,918.918 INFO    ] time= 22/06/2026 15:13:03
[2026-06-22 15:13:03,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:13:03,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:13:04,117.117 INFO    ] No existing commands found in stream
[2026-06-22 15:13:09,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:13:09,137.137 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-22 15:13:11,556.556 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:13:11,559.559 INFO    ] Checking for system updates...
[2026-06-22 15:13:11,601.601 INFO    ] 200
[2026-06-22 15:13:11,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:13:11,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:13:11,669.669 INFO    ] No update needed
[2026-06-22 15:13:11,672.672 INFO    ] Checking for camera pi updates...
[2026-06-22 15:13:11,710.710 INFO    ] 200
[2026-06-22 15:13:11,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:13:11,754.754 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:13:11,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:13:11,831.831 INFO    ] No camera update needed
[2026-06-22 15:13:11,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:13:11,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:13:11,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:13:11,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:13:13,891.891 INFO    ] ================================================
[2026-06-22 15:13:13,906.906 INFO    ] Launching Daemon at Mon Jun 22 15:13:13 IST 2026
[2026-06-22 15:13:13,918.918 INFO    ] ================================================
[2026-06-22 15:13:14,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:13:14
[2026-06-22 15:13:15,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:13:15,342.342 INFO    ] Initializing speech engine...
[2026-06-22 15:13:15,350.350 INFO    ] 2026-06-22 15:13:15
[2026-06-22 15:13:15,637.637 INFO    ] 2026-06-22 15:13:15
[2026-06-22 15:13:15,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:13:15,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:13:15,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:13:16,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:13:16,177.177 INFO    ] time= 22/06/2026 15:13:16
[2026-06-22 15:13:16,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:13:16,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:13:16,335.335 INFO    ] No existing commands found in stream
[2026-06-22 15:13:21,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:13:21,353.353 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-22 15:13:25,859.859 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:13:25,861.861 INFO    ] Checking for system updates...
[2026-06-22 15:13:25,883.883 INFO    ] 200
[2026-06-22 15:13:25,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:13:25,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:13:25,921.921 INFO    ] No update needed
[2026-06-22 15:13:25,924.924 INFO    ] Checking for camera pi updates...
[2026-06-22 15:13:25,959.959 INFO    ] 200
[2026-06-22 15:13:25,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:13:26,005.005 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:13:26,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:13:26,113.113 INFO    ] No camera update needed
[2026-06-22 15:13:26,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:13:26,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:13:26,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:13:26,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:13:28,173.173 INFO    ] ================================================
[2026-06-22 15:13:28,188.188 INFO    ] Launching Daemon at Mon Jun 22 15:13:28 IST 2026
[2026-06-22 15:13:28,199.199 INFO    ] ================================================
[2026-06-22 15:13:28,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:13:28
[2026-06-22 15:13:29,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:13:29,736.736 INFO    ] Initializing speech engine...
[2026-06-22 15:13:29,750.750 INFO    ] 2026-06-22 15:13:29
[2026-06-22 15:13:30,059.059 INFO    ] 2026-06-22 15:13:30
[2026-06-22 15:13:30,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:13:30,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:13:30,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:13:30,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:13:30,570.570 INFO    ] time= 22/06/2026 15:13:30
[2026-06-22 15:13:30,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:13:30,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:13:30,731.731 INFO    ] No existing commands found in stream
[2026-06-22 15:13:35,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:13:35,761.761 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-22 15:13:38,125.125 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:13:38,128.128 INFO    ] Checking for system updates...
[2026-06-22 15:13:38,166.166 INFO    ] 200
[2026-06-22 15:13:38,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:13:38,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:13:38,226.226 INFO    ] No update needed
[2026-06-22 15:13:38,229.229 INFO    ] Checking for camera pi updates...
[2026-06-22 15:13:38,269.269 INFO    ] 200
[2026-06-22 15:13:38,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:13:38,319.319 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:13:38,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:13:38,414.414 INFO    ] No camera update needed
[2026-06-22 15:13:38,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:13:38,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:13:38,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:13:38,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:13:40,476.476 INFO    ] ================================================
[2026-06-22 15:13:40,492.492 INFO    ] Launching Daemon at Mon Jun 22 15:13:40 IST 2026
[2026-06-22 15:13:40,503.503 INFO    ] ================================================
[2026-06-22 15:13:41,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:13:41
[2026-06-22 15:13:41,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:13:41,878.878 INFO    ] Initializing speech engine...
[2026-06-22 15:13:41,888.888 INFO    ] 2026-06-22 15:13:41
[2026-06-22 15:13:42,152.152 INFO    ] 2026-06-22 15:13:42
[2026-06-22 15:13:42,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:13:42,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:13:42,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:13:42,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:13:42,623.623 INFO    ] time= 22/06/2026 15:13:42
[2026-06-22 15:13:42,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:13:42,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:13:42,824.824 INFO    ] No existing commands found in stream
[2026-06-22 15:13:47,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:13:47,848.848 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-22 15:13:50,930.930 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:13:50,932.932 INFO    ] Checking for system updates...
[2026-06-22 15:13:50,970.970 INFO    ] 200
[2026-06-22 15:13:50,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:13:51,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:13:51,035.035 INFO    ] No update needed
[2026-06-22 15:13:51,038.038 INFO    ] Checking for camera pi updates...
[2026-06-22 15:13:51,071.071 INFO    ] 200
[2026-06-22 15:13:51,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:13:51,115.115 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:13:51,166.166 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:13:51,168.168 INFO    ] No camera update needed
[2026-06-22 15:13:51,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:13:51,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:13:51,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:13:51,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:13:53,226.226 INFO    ] ================================================
[2026-06-22 15:13:53,241.241 INFO    ] Launching Daemon at Mon Jun 22 15:13:53 IST 2026
[2026-06-22 15:13:53,252.252 INFO    ] ================================================
[2026-06-22 15:13:53,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:13:53
[2026-06-22 15:13:54,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:13:54,585.585 INFO    ] Initializing speech engine...
[2026-06-22 15:13:54,594.594 INFO    ] 2026-06-22 15:13:54
[2026-06-22 15:13:54,893.893 INFO    ] 2026-06-22 15:13:54
[2026-06-22 15:13:54,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:13:55,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:13:55,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:13:55,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:13:55,321.321 INFO    ] time= 22/06/2026 15:13:55
[2026-06-22 15:13:55,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:13:55,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:13:55,412.412 INFO    ] No existing commands found in stream
[2026-06-22 15:14:00,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:14:00,423.423 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-22 15:14:03,978.978 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:14:03,980.980 INFO    ] Checking for system updates...
[2026-06-22 15:14:04,016.016 INFO    ] 200
[2026-06-22 15:14:04,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:14:04,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:14:04,073.073 INFO    ] No update needed
[2026-06-22 15:14:04,075.075 INFO    ] Checking for camera pi updates...
[2026-06-22 15:14:04,108.108 INFO    ] 200
[2026-06-22 15:14:04,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:14:04,152.152 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:14:04,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:14:04,234.234 INFO    ] No camera update needed
[2026-06-22 15:14:04,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:14:04,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:14:04,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:14:04,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:14:06,289.289 INFO    ] ================================================
[2026-06-22 15:14:06,304.304 INFO    ] Launching Daemon at Mon Jun 22 15:14:06 IST 2026
[2026-06-22 15:14:06,315.315 INFO    ] ================================================
[2026-06-22 15:14:06,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:14:06
[2026-06-22 15:14:07,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:14:07,786.786 INFO    ] Initializing speech engine...
[2026-06-22 15:14:07,793.793 INFO    ] 2026-06-22 15:14:07
[2026-06-22 15:14:08,054.054 INFO    ] 2026-06-22 15:14:08
[2026-06-22 15:14:08,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:14:08,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:14:08,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:14:08,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:14:08,529.529 INFO    ] time= 22/06/2026 15:14:08
[2026-06-22 15:14:08,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:14:08,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:14:08,723.723 INFO    ] No existing commands found in stream
[2026-06-22 15:14:13,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:14:13,756.756 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-22 15:14:14,600.600 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:14:14,602.602 INFO    ] Checking for system updates...
[2026-06-22 15:14:14,638.638 INFO    ] 200
[2026-06-22 15:14:14,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:14:14,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:14:14,695.695 INFO    ] No update needed
[2026-06-22 15:14:14,698.698 INFO    ] Checking for camera pi updates...
[2026-06-22 15:14:14,732.732 INFO    ] 200
[2026-06-22 15:14:14,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:14:14,780.780 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:14:14,872.872 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:14:14,875.875 INFO    ] No camera update needed
[2026-06-22 15:14:14,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:14:14,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:14:14,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:14:14,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:14:16,931.931 INFO    ] ================================================
[2026-06-22 15:14:16,946.946 INFO    ] Launching Daemon at Mon Jun 22 15:14:16 IST 2026
[2026-06-22 15:14:16,965.965 INFO    ] ================================================
[2026-06-22 15:14:17,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:14:17
[2026-06-22 15:14:18,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:14:18,329.329 INFO    ] Initializing speech engine...
[2026-06-22 15:14:18,339.339 INFO    ] 2026-06-22 15:14:18
[2026-06-22 15:14:18,598.598 INFO    ] 2026-06-22 15:14:18
[2026-06-22 15:14:18,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:14:18,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:14:18,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:14:19,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:14:19,074.074 INFO    ] time= 22/06/2026 15:14:19
[2026-06-22 15:14:19,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:14:19,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:14:19,284.284 INFO    ] No existing commands found in stream
[2026-06-22 15:14:24,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:14:24,311.311 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-22 15:14:27,432.432 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:14:27,434.434 INFO    ] Checking for system updates...
[2026-06-22 15:14:27,455.455 INFO    ] 200
[2026-06-22 15:14:27,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:14:27,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:14:27,506.506 INFO    ] No update needed
[2026-06-22 15:14:27,509.509 INFO    ] Checking for camera pi updates...
[2026-06-22 15:14:27,543.543 INFO    ] 200
[2026-06-22 15:14:27,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:14:27,591.591 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:14:27,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:14:27,684.684 INFO    ] No camera update needed
[2026-06-22 15:14:27,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:14:27,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:14:27,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:14:27,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:14:29,739.739 INFO    ] ================================================
[2026-06-22 15:14:29,753.753 INFO    ] Launching Daemon at Mon Jun 22 15:14:29 IST 2026
[2026-06-22 15:14:29,764.764 INFO    ] ================================================
[2026-06-22 15:14:30,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:14:30
[2026-06-22 15:14:30,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:14:31,131.131 INFO    ] Initializing speech engine...
[2026-06-22 15:14:31,138.138 INFO    ] 2026-06-22 15:14:31
[2026-06-22 15:14:31,399.399 INFO    ] 2026-06-22 15:14:31
[2026-06-22 15:14:31,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:14:31,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:14:31,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:14:31,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:14:31,858.858 INFO    ] time= 22/06/2026 15:14:31
[2026-06-22 15:14:31,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:14:31,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:14:32,076.076 INFO    ] No existing commands found in stream
[2026-06-22 15:14:37,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:14:37,119.119 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-22 15:14:38,912.912 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:14:38,914.914 INFO    ] Checking for system updates...
[2026-06-22 15:14:38,934.934 INFO    ] 200
[2026-06-22 15:14:38,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:14:38,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:14:38,968.968 INFO    ] No update needed
[2026-06-22 15:14:38,971.971 INFO    ] Checking for camera pi updates...
[2026-06-22 15:14:39,008.008 INFO    ] 200
[2026-06-22 15:14:39,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:14:39,051.051 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:14:39,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:14:39,160.160 INFO    ] No camera update needed
[2026-06-22 15:14:39,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:14:39,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:14:39,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:14:39,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:14:41,216.216 INFO    ] ================================================
[2026-06-22 15:14:41,231.231 INFO    ] Launching Daemon at Mon Jun 22 15:14:41 IST 2026
[2026-06-22 15:14:41,242.242 INFO    ] ================================================
[2026-06-22 15:14:41,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:14:41
[2026-06-22 15:14:42,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:14:42,786.786 INFO    ] Initializing speech engine...
[2026-06-22 15:14:42,796.796 INFO    ] 2026-06-22 15:14:42
[2026-06-22 15:14:43,047.047 INFO    ] 2026-06-22 15:14:43
[2026-06-22 15:14:43,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:14:43,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:14:43,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:14:43,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:14:43,525.525 INFO    ] time= 22/06/2026 15:14:43
[2026-06-22 15:14:43,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:14:43,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:14:43,764.764 INFO    ] No existing commands found in stream
[2026-06-22 15:14:48,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:14:48,790.790 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-22 15:14:50,459.459 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:14:50,461.461 INFO    ] Checking for system updates...
[2026-06-22 15:14:50,495.495 INFO    ] 200
[2026-06-22 15:14:50,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:14:50,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:14:50,558.558 INFO    ] No update needed
[2026-06-22 15:14:50,561.561 INFO    ] Checking for camera pi updates...
[2026-06-22 15:14:50,595.595 INFO    ] 200
[2026-06-22 15:14:50,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:14:50,651.651 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:14:50,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:14:50,732.732 INFO    ] No camera update needed
[2026-06-22 15:14:50,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:14:50,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:14:50,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:14:50,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:14:52,789.789 INFO    ] ================================================
[2026-06-22 15:14:52,804.804 INFO    ] Launching Daemon at Mon Jun 22 15:14:52 IST 2026
[2026-06-22 15:14:52,814.814 INFO    ] ================================================
[2026-06-22 15:14:53,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:14:53
[2026-06-22 15:14:53,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:14:54,296.296 INFO    ] Initializing speech engine...
[2026-06-22 15:14:54,310.310 INFO    ] 2026-06-22 15:14:54
[2026-06-22 15:14:54,586.586 INFO    ] 2026-06-22 15:14:54
[2026-06-22 15:14:54,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:14:54,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:14:54,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:14:55,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:14:55,126.126 INFO    ] time= 22/06/2026 15:14:55
[2026-06-22 15:14:55,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:14:55,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:14:55,290.290 INFO    ] No existing commands found in stream
[2026-06-22 15:15:00,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:15:00,320.320 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-22 15:15:03,408.408 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:15:03,411.411 INFO    ] Checking for system updates...
[2026-06-22 15:15:03,456.456 INFO    ] 200
[2026-06-22 15:15:03,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:15:03,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:15:03,522.522 INFO    ] No update needed
[2026-06-22 15:15:03,525.525 INFO    ] Checking for camera pi updates...
[2026-06-22 15:15:03,562.562 INFO    ] 200
[2026-06-22 15:15:03,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:15:03,613.613 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:15:03,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:15:03,704.704 INFO    ] No camera update needed
[2026-06-22 15:15:03,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:15:03,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:15:03,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:15:03,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:15:05,765.765 INFO    ] ================================================
[2026-06-22 15:15:05,780.780 INFO    ] Launching Daemon at Mon Jun 22 15:15:05 IST 2026
[2026-06-22 15:15:05,791.791 INFO    ] ================================================
[2026-06-22 15:15:06,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:15:06
[2026-06-22 15:15:06,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:15:07,200.200 INFO    ] Initializing speech engine...
[2026-06-22 15:15:07,216.216 INFO    ] 2026-06-22 15:15:07
[2026-06-22 15:15:07,503.503 INFO    ] 2026-06-22 15:15:07
[2026-06-22 15:15:07,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:15:07,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:15:07,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:15:07,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:15:08,006.006 INFO    ] time= 22/06/2026 15:15:07
[2026-06-22 15:15:08,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:15:08,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:15:08,211.211 INFO    ] No existing commands found in stream
[2026-06-22 15:15:13,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:15:13,230.230 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-22 15:15:16,927.927 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:15:16,930.930 INFO    ] Checking for system updates...
[2026-06-22 15:15:16,966.966 INFO    ] 200
[2026-06-22 15:15:16,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:15:17,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:15:17,028.028 INFO    ] No update needed
[2026-06-22 15:15:17,030.030 INFO    ] Checking for camera pi updates...
[2026-06-22 15:15:17,067.067 INFO    ] 200
[2026-06-22 15:15:17,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:15:17,110.110 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:15:17,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:15:17,292.292 INFO    ] No camera update needed
[2026-06-22 15:15:17,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:15:17,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:15:17,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:15:17,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:15:19,353.353 INFO    ] ================================================
[2026-06-22 15:15:19,368.368 INFO    ] Launching Daemon at Mon Jun 22 15:15:19 IST 2026
[2026-06-22 15:15:19,379.379 INFO    ] ================================================
[2026-06-22 15:15:20,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:15:20
[2026-06-22 15:15:20,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:15:20,961.961 INFO    ] Initializing speech engine...
[2026-06-22 15:15:20,970.970 INFO    ] 2026-06-22 15:15:20
[2026-06-22 15:15:21,254.254 INFO    ] 2026-06-22 15:15:21
[2026-06-22 15:15:21,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:15:21,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:15:21,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:15:21,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:15:21,810.810 INFO    ] time= 22/06/2026 15:15:21
[2026-06-22 15:15:21,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:15:21,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:15:21,975.975 INFO    ] No existing commands found in stream
[2026-06-22 15:15:27,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:15:27,009.009 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-22 15:15:29,270.270 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:15:29,273.273 INFO    ] Checking for system updates...
[2026-06-22 15:15:29,310.310 INFO    ] 200
[2026-06-22 15:15:29,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:15:29,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:15:29,374.374 INFO    ] No update needed
[2026-06-22 15:15:29,377.377 INFO    ] Checking for camera pi updates...
[2026-06-22 15:15:29,412.412 INFO    ] 200
[2026-06-22 15:15:29,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:15:29,457.457 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:15:29,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:15:29,539.539 INFO    ] No camera update needed
[2026-06-22 15:15:29,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:15:29,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:15:29,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:15:29,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:15:31,597.597 INFO    ] ================================================
[2026-06-22 15:15:31,613.613 INFO    ] Launching Daemon at Mon Jun 22 15:15:31 IST 2026
[2026-06-22 15:15:31,624.624 INFO    ] ================================================
[2026-06-22 15:15:32,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:15:32
[2026-06-22 15:15:32,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:15:33,133.133 INFO    ] Initializing speech engine...
[2026-06-22 15:15:33,143.143 INFO    ] 2026-06-22 15:15:33
[2026-06-22 15:15:33,429.429 INFO    ] 2026-06-22 15:15:33
[2026-06-22 15:15:33,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:15:33,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:15:33,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:15:33,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:15:33,847.847 INFO    ] time= 22/06/2026 15:15:33
[2026-06-22 15:15:33,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:15:33,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:15:34,049.049 INFO    ] No existing commands found in stream
[2026-06-22 15:15:39,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:15:39,062.062 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-22 15:15:42,235.235 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:15:42,237.237 INFO    ] Checking for system updates...
[2026-06-22 15:15:42,273.273 INFO    ] 200
[2026-06-22 15:15:42,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:15:42,329.329 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:15:42,331.331 INFO    ] No update needed
[2026-06-22 15:15:42,333.333 INFO    ] Checking for camera pi updates...
[2026-06-22 15:15:42,367.367 INFO    ] 200
[2026-06-22 15:15:42,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:15:42,421.421 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:15:42,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:15:42,503.503 INFO    ] No camera update needed
[2026-06-22 15:15:42,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:15:42,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:15:42,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:15:42,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:15:44,559.559 INFO    ] ================================================
[2026-06-22 15:15:44,575.575 INFO    ] Launching Daemon at Mon Jun 22 15:15:44 IST 2026
[2026-06-22 15:15:44,586.586 INFO    ] ================================================
[2026-06-22 15:15:45,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:15:45
[2026-06-22 15:15:45,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:15:45,928.928 INFO    ] Initializing speech engine...
[2026-06-22 15:15:45,934.934 INFO    ] 2026-06-22 15:15:45
[2026-06-22 15:15:46,181.181 INFO    ] 2026-06-22 15:15:46
[2026-06-22 15:15:46,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:15:46,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:15:46,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:15:46,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:15:46,653.653 INFO    ] time= 22/06/2026 15:15:46
[2026-06-22 15:15:46,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:15:46,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:15:46,870.870 INFO    ] No existing commands found in stream
[2026-06-22 15:15:51,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:15:51,906.906 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-22 15:15:55,147.147 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:15:55,149.149 INFO    ] Checking for system updates...
[2026-06-22 15:15:55,185.185 INFO    ] 200
[2026-06-22 15:15:55,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:15:55,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:15:55,243.243 INFO    ] No update needed
[2026-06-22 15:15:55,246.246 INFO    ] Checking for camera pi updates...
[2026-06-22 15:15:55,280.280 INFO    ] 200
[2026-06-22 15:15:55,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:15:55,328.328 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:15:55,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:15:55,416.416 INFO    ] No camera update needed
[2026-06-22 15:15:55,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:15:55,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:15:55,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:15:55,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:15:57,481.481 INFO    ] ================================================
[2026-06-22 15:15:57,498.498 INFO    ] Launching Daemon at Mon Jun 22 15:15:57 IST 2026
[2026-06-22 15:15:57,510.510 INFO    ] ================================================
[2026-06-22 15:15:58,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:15:58
[2026-06-22 15:15:58,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:15:59,055.055 INFO    ] Initializing speech engine...
[2026-06-22 15:15:59,068.068 INFO    ] 2026-06-22 15:15:59
[2026-06-22 15:15:59,352.352 INFO    ] 2026-06-22 15:15:59
[2026-06-22 15:15:59,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:15:59,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:15:59,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:15:59,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:15:59,748.748 INFO    ] time= 22/06/2026 15:15:59
[2026-06-22 15:15:59,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:15:59,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:15:59,953.953 INFO    ] No existing commands found in stream
[2026-06-22 15:16:04,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:16:04,971.971 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-22 15:16:08,567.567 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:16:08,570.570 INFO    ] Checking for system updates...
[2026-06-22 15:16:08,607.607 INFO    ] 200
[2026-06-22 15:16:08,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:16:08,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:16:08,664.664 INFO    ] No update needed
[2026-06-22 15:16:08,667.667 INFO    ] Checking for camera pi updates...
[2026-06-22 15:16:08,700.700 INFO    ] 200
[2026-06-22 15:16:08,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:16:08,744.744 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:16:08,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:16:08,836.836 INFO    ] No camera update needed
[2026-06-22 15:16:08,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:16:08,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:16:08,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:16:08,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:16:10,894.894 INFO    ] ================================================
[2026-06-22 15:16:10,910.910 INFO    ] Launching Daemon at Mon Jun 22 15:16:10 IST 2026
[2026-06-22 15:16:10,921.921 INFO    ] ================================================
[2026-06-22 15:16:11,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:16:11
[2026-06-22 15:16:12,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:16:12,516.516 INFO    ] Initializing speech engine...
[2026-06-22 15:16:12,524.524 INFO    ] 2026-06-22 15:16:12
[2026-06-22 15:16:12,816.816 INFO    ] 2026-06-22 15:16:12
[2026-06-22 15:16:12,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:16:13,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:16:13,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:16:13,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:16:13,295.295 INFO    ] time= 22/06/2026 15:16:13
[2026-06-22 15:16:13,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:16:13,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:16:13,548.548 INFO    ] No existing commands found in stream
[2026-06-22 15:16:18,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:16:18,581.581 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-22 15:16:20,422.422 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:16:20,425.425 INFO    ] Checking for system updates...
[2026-06-22 15:16:20,461.461 INFO    ] 200
[2026-06-22 15:16:20,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:16:20,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:16:20,521.521 INFO    ] No update needed
[2026-06-22 15:16:20,523.523 INFO    ] Checking for camera pi updates...
[2026-06-22 15:16:20,558.558 INFO    ] 200
[2026-06-22 15:16:20,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:16:20,606.606 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:16:20,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:16:20,674.674 INFO    ] No camera update needed
[2026-06-22 15:16:20,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:16:20,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:16:20,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:16:20,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:16:22,730.730 INFO    ] ================================================
[2026-06-22 15:16:22,746.746 INFO    ] Launching Daemon at Mon Jun 22 15:16:22 IST 2026
[2026-06-22 15:16:22,758.758 INFO    ] ================================================
[2026-06-22 15:16:23,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:16:23
[2026-06-22 15:16:23,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:16:24,130.130 INFO    ] Initializing speech engine...
[2026-06-22 15:16:24,140.140 INFO    ] 2026-06-22 15:16:24
[2026-06-22 15:16:24,386.386 INFO    ] 2026-06-22 15:16:24
[2026-06-22 15:16:24,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:16:24,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:16:24,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:16:24,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:16:24,875.875 INFO    ] time= 22/06/2026 15:16:24
[2026-06-22 15:16:24,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:16:24,947.947 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:16:25,072.072 INFO    ] No existing commands found in stream
[2026-06-22 15:16:30,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:16:30,102.102 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-22 15:16:34,147.147 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:16:34,149.149 INFO    ] Checking for system updates...
[2026-06-22 15:16:34,185.185 INFO    ] 200
[2026-06-22 15:16:34,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:16:34,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:16:34,242.242 INFO    ] No update needed
[2026-06-22 15:16:34,245.245 INFO    ] Checking for camera pi updates...
[2026-06-22 15:16:34,279.279 INFO    ] 200
[2026-06-22 15:16:34,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:16:34,322.322 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:16:34,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:16:34,402.402 INFO    ] No camera update needed
[2026-06-22 15:16:34,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:16:34,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:16:34,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:16:34,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:16:36,457.457 INFO    ] ================================================
[2026-06-22 15:16:36,473.473 INFO    ] Launching Daemon at Mon Jun 22 15:16:36 IST 2026
[2026-06-22 15:16:36,484.484 INFO    ] ================================================
[2026-06-22 15:16:36,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:16:36
[2026-06-22 15:16:37,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:16:37,828.828 INFO    ] Initializing speech engine...
[2026-06-22 15:16:37,846.846 INFO    ] 2026-06-22 15:16:37
[2026-06-22 15:16:38,100.100 INFO    ] 2026-06-22 15:16:38
[2026-06-22 15:16:38,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:16:38,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:16:38,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:16:38,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:16:38,588.588 INFO    ] time= 22/06/2026 15:16:38
[2026-06-22 15:16:38,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:16:38,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:16:38,827.827 INFO    ] No existing commands found in stream
[2026-06-22 15:16:43,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:16:43,844.844 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-22 15:16:47,933.933 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:16:47,936.936 INFO    ] Checking for system updates...
[2026-06-22 15:16:47,972.972 INFO    ] 200
[2026-06-22 15:16:47,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:16:48,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:16:48,029.029 INFO    ] No update needed
[2026-06-22 15:16:48,032.032 INFO    ] Checking for camera pi updates...
[2026-06-22 15:16:48,066.066 INFO    ] 200
[2026-06-22 15:16:48,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:16:48,109.109 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:16:48,189.189 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:16:48,191.191 INFO    ] No camera update needed
[2026-06-22 15:16:48,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:16:48,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:16:48,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:16:48,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:16:50,249.249 INFO    ] ================================================
[2026-06-22 15:16:50,265.265 INFO    ] Launching Daemon at Mon Jun 22 15:16:50 IST 2026
[2026-06-22 15:16:50,276.276 INFO    ] ================================================
[2026-06-22 15:16:50,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:16:50
[2026-06-22 15:16:51,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:16:51,611.611 INFO    ] Initializing speech engine...
[2026-06-22 15:16:51,620.620 INFO    ] 2026-06-22 15:16:51
[2026-06-22 15:16:51,868.868 INFO    ] 2026-06-22 15:16:51
[2026-06-22 15:16:51,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:16:52,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:16:52,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:16:52,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:16:52,333.333 INFO    ] time= 22/06/2026 15:16:52
[2026-06-22 15:16:52,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:16:52,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:16:52,585.585 INFO    ] No existing commands found in stream
[2026-06-22 15:16:57,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:16:57,618.618 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-22 15:17:00,307.307 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:17:00,309.309 INFO    ] Checking for system updates...
[2026-06-22 15:17:00,346.346 INFO    ] 200
[2026-06-22 15:17:00,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:17:00,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:17:00,404.404 INFO    ] No update needed
[2026-06-22 15:17:00,406.406 INFO    ] Checking for camera pi updates...
[2026-06-22 15:17:00,444.444 INFO    ] 200
[2026-06-22 15:17:00,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:17:00,488.488 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:17:00,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:17:00,582.582 INFO    ] No camera update needed
[2026-06-22 15:17:00,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:17:00,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:17:00,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:17:00,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:17:02,643.643 INFO    ] ================================================
[2026-06-22 15:17:02,661.661 INFO    ] Launching Daemon at Mon Jun 22 15:17:02 IST 2026
[2026-06-22 15:17:02,674.674 INFO    ] ================================================
[2026-06-22 15:17:03,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:17:03
[2026-06-22 15:17:03,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:17:04,205.205 INFO    ] Initializing speech engine...
[2026-06-22 15:17:04,214.214 INFO    ] 2026-06-22 15:17:04
[2026-06-22 15:17:04,458.458 INFO    ] 2026-06-22 15:17:04
[2026-06-22 15:17:04,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:17:04,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:17:04,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:17:04,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:17:04,962.962 INFO    ] time= 22/06/2026 15:17:04
[2026-06-22 15:17:05,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:17:05,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:17:05,163.163 INFO    ] No existing commands found in stream
[2026-06-22 15:17:10,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:17:10,179.179 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-22 15:17:12,001.001 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:17:12,003.003 INFO    ] Checking for system updates...
[2026-06-22 15:17:12,040.040 INFO    ] 200
[2026-06-22 15:17:12,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:17:12,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:17:12,097.097 INFO    ] No update needed
[2026-06-22 15:17:12,099.099 INFO    ] Checking for camera pi updates...
[2026-06-22 15:17:12,133.133 INFO    ] 200
[2026-06-22 15:17:12,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:17:12,177.177 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:17:12,266.266 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:17:12,269.269 INFO    ] No camera update needed
[2026-06-22 15:17:12,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:17:12,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:17:12,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:17:12,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:17:14,325.325 INFO    ] ================================================
[2026-06-22 15:17:14,341.341 INFO    ] Launching Daemon at Mon Jun 22 15:17:14 IST 2026
[2026-06-22 15:17:14,352.352 INFO    ] ================================================
[2026-06-22 15:17:14,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:17:14
[2026-06-22 15:17:15,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:17:15,748.748 INFO    ] Initializing speech engine...
[2026-06-22 15:17:15,760.760 INFO    ] 2026-06-22 15:17:15
[2026-06-22 15:17:16,046.046 INFO    ] 2026-06-22 15:17:16
[2026-06-22 15:17:16,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:17:16,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:17:16,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:17:16,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:17:16,583.583 INFO    ] time= 22/06/2026 15:17:16
[2026-06-22 15:17:16,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:17:16,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:17:16,740.740 INFO    ] No existing commands found in stream
[2026-06-22 15:17:21,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:17:21,754.754 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-22 15:17:22,347.347 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:17:22,350.350 INFO    ] Checking for system updates...
[2026-06-22 15:17:22,391.391 INFO    ] 200
[2026-06-22 15:17:22,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:17:22,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:17:22,450.450 INFO    ] No update needed
[2026-06-22 15:17:22,452.452 INFO    ] Checking for camera pi updates...
[2026-06-22 15:17:22,487.487 INFO    ] 200
[2026-06-22 15:17:22,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:17:22,531.531 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:17:22,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:17:22,716.716 INFO    ] No camera update needed
[2026-06-22 15:17:22,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:17:22,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:17:22,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:17:22,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:17:24,774.774 INFO    ] ================================================
[2026-06-22 15:17:24,790.790 INFO    ] Launching Daemon at Mon Jun 22 15:17:24 IST 2026
[2026-06-22 15:17:24,802.802 INFO    ] ================================================
[2026-06-22 15:17:25,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:17:25
[2026-06-22 15:17:25,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:17:26,217.217 INFO    ] Initializing speech engine...
[2026-06-22 15:17:26,230.230 INFO    ] 2026-06-22 15:17:26
[2026-06-22 15:17:26,509.509 INFO    ] 2026-06-22 15:17:26
[2026-06-22 15:17:26,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:17:26,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:17:26,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:17:26,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:17:26,977.977 INFO    ] time= 22/06/2026 15:17:26
[2026-06-22 15:17:27,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:17:27,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:17:27,189.189 INFO    ] No existing commands found in stream
[2026-06-22 15:17:32,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:17:32,216.216 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-22 15:17:36,585.585 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:17:36,587.587 INFO    ] Checking for system updates...
[2026-06-22 15:17:36,608.608 INFO    ] 200
[2026-06-22 15:17:36,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:17:36,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:17:36,648.648 INFO    ] No update needed
[2026-06-22 15:17:36,651.651 INFO    ] Checking for camera pi updates...
[2026-06-22 15:17:36,688.688 INFO    ] 200
[2026-06-22 15:17:36,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:17:36,732.732 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:17:36,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:17:36,809.809 INFO    ] No camera update needed
[2026-06-22 15:17:36,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:17:36,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:17:36,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:17:36,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:17:38,864.864 INFO    ] ================================================
[2026-06-22 15:17:38,880.880 INFO    ] Launching Daemon at Mon Jun 22 15:17:38 IST 2026
[2026-06-22 15:17:38,891.891 INFO    ] ================================================
[2026-06-22 15:17:39,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:17:39
[2026-06-22 15:17:40,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:17:40,314.314 INFO    ] Initializing speech engine...
[2026-06-22 15:17:40,324.324 INFO    ] 2026-06-22 15:17:40
[2026-06-22 15:17:40,574.574 INFO    ] 2026-06-22 15:17:40
[2026-06-22 15:17:40,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:17:41,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:17:41,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:17:41,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:17:41,227.227 INFO    ] time= 22/06/2026 15:17:41
[2026-06-22 15:17:41,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:17:41,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:17:41,455.455 INFO    ] No existing commands found in stream
[2026-06-22 15:17:46,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:17:46,470.470 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-22 15:17:50,580.580 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:17:50,582.582 INFO    ] Checking for system updates...
[2026-06-22 15:17:50,602.602 INFO    ] 200
[2026-06-22 15:17:50,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:17:50,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:17:50,636.636 INFO    ] No update needed
[2026-06-22 15:17:50,637.637 INFO    ] Checking for camera pi updates...
[2026-06-22 15:17:50,659.659 INFO    ] 200
[2026-06-22 15:17:50,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:17:50,704.704 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:17:50,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:17:50,792.792 INFO    ] No camera update needed
[2026-06-22 15:17:50,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:17:50,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:17:50,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:17:50,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:17:52,853.853 INFO    ] ================================================
[2026-06-22 15:17:52,868.868 INFO    ] Launching Daemon at Mon Jun 22 15:17:52 IST 2026
[2026-06-22 15:17:52,879.879 INFO    ] ================================================
[2026-06-22 15:17:53,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:17:53
[2026-06-22 15:17:54,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:17:54,507.507 INFO    ] Initializing speech engine...
[2026-06-22 15:17:54,514.514 INFO    ] 2026-06-22 15:17:54
[2026-06-22 15:17:54,789.789 INFO    ] 2026-06-22 15:17:54
[2026-06-22 15:17:54,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:17:55,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:17:55,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:17:55,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:17:55,340.340 INFO    ] time= 22/06/2026 15:17:55
[2026-06-22 15:17:55,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:17:55,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:17:55,501.501 INFO    ] No existing commands found in stream
[2026-06-22 15:18:00,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:18:00,528.528 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-22 15:18:03,626.626 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:18:03,629.629 INFO    ] Checking for system updates...
[2026-06-22 15:18:03,667.667 INFO    ] 200
[2026-06-22 15:18:03,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:18:03,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:18:03,732.732 INFO    ] No update needed
[2026-06-22 15:18:03,734.734 INFO    ] Checking for camera pi updates...
[2026-06-22 15:18:03,770.770 INFO    ] 200
[2026-06-22 15:18:03,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:18:03,815.815 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:18:03,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:18:03,910.910 INFO    ] No camera update needed
[2026-06-22 15:18:03,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:18:03,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:18:03,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:18:03,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:18:05,971.971 INFO    ] ================================================
[2026-06-22 15:18:05,987.987 INFO    ] Launching Daemon at Mon Jun 22 15:18:05 IST 2026
[2026-06-22 15:18:06,998.998 INFO    ] ================================================
[2026-06-22 15:18:06,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:18:06
[2026-06-22 15:18:07,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:18:07,578.578 INFO    ] Initializing speech engine...
[2026-06-22 15:18:07,587.587 INFO    ] 2026-06-22 15:18:07
[2026-06-22 15:18:07,857.857 INFO    ] 2026-06-22 15:18:07
[2026-06-22 15:18:07,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:18:08,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:18:08,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:18:08,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:18:08,397.397 INFO    ] time= 22/06/2026 15:18:08
[2026-06-22 15:18:08,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:18:08,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:18:08,584.584 INFO    ] No existing commands found in stream
[2026-06-22 15:18:13,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:18:13,623.623 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-22 15:18:14,530.530 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:18:14,532.532 INFO    ] Checking for system updates...
[2026-06-22 15:18:14,556.556 INFO    ] 200
[2026-06-22 15:18:14,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:18:14,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:18:14,606.606 INFO    ] No update needed
[2026-06-22 15:18:14,608.608 INFO    ] Checking for camera pi updates...
[2026-06-22 15:18:14,643.643 INFO    ] 200
[2026-06-22 15:18:14,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:18:14,689.689 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:18:14,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:18:14,781.781 INFO    ] No camera update needed
[2026-06-22 15:18:14,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:18:14,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:18:14,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:18:14,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:18:16,837.837 INFO    ] ================================================
[2026-06-22 15:18:16,854.854 INFO    ] Launching Daemon at Mon Jun 22 15:18:16 IST 2026
[2026-06-22 15:18:16,865.865 INFO    ] ================================================
[2026-06-22 15:18:17,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:18:17
[2026-06-22 15:18:17,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:18:18,182.182 INFO    ] Initializing speech engine...
[2026-06-22 15:18:18,201.201 INFO    ] 2026-06-22 15:18:18
[2026-06-22 15:18:18,453.453 INFO    ] 2026-06-22 15:18:18
[2026-06-22 15:18:18,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:18:18,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:18:18,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:18:18,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:18:18,933.933 INFO    ] time= 22/06/2026 15:18:18
[2026-06-22 15:18:18,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:18:19,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:18:19,159.159 INFO    ] No existing commands found in stream
[2026-06-22 15:18:24,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:18:24,187.187 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-22 15:18:26,566.566 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:18:26,568.568 INFO    ] Checking for system updates...
[2026-06-22 15:18:26,604.604 INFO    ] 200
[2026-06-22 15:18:26,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:18:26,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:18:26,666.666 INFO    ] No update needed
[2026-06-22 15:18:26,669.669 INFO    ] Checking for camera pi updates...
[2026-06-22 15:18:26,702.702 INFO    ] 200
[2026-06-22 15:18:26,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:18:26,745.745 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:18:26,818.818 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:18:26,821.821 INFO    ] No camera update needed
[2026-06-22 15:18:26,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:18:26,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:18:26,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:18:26,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:18:28,877.877 INFO    ] ================================================
[2026-06-22 15:18:28,892.892 INFO    ] Launching Daemon at Mon Jun 22 15:18:28 IST 2026
[2026-06-22 15:18:28,903.903 INFO    ] ================================================
[2026-06-22 15:18:29,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:18:29
[2026-06-22 15:18:29,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:18:30,233.233 INFO    ] Initializing speech engine...
[2026-06-22 15:18:30,242.242 INFO    ] 2026-06-22 15:18:30
[2026-06-22 15:18:30,491.491 INFO    ] 2026-06-22 15:18:30
[2026-06-22 15:18:30,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:18:30,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:18:30,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:18:30,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:18:30,972.972 INFO    ] time= 22/06/2026 15:18:30
[2026-06-22 15:18:31,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:18:31,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:18:31,197.197 INFO    ] No existing commands found in stream
[2026-06-22 15:18:36,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:18:36,228.228 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-22 15:18:40,450.450 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:18:40,452.452 INFO    ] Checking for system updates...
[2026-06-22 15:18:40,491.491 INFO    ] 200
[2026-06-22 15:18:40,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:18:40,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:18:40,549.549 INFO    ] No update needed
[2026-06-22 15:18:40,552.552 INFO    ] Checking for camera pi updates...
[2026-06-22 15:18:40,585.585 INFO    ] 200
[2026-06-22 15:18:40,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:18:40,628.628 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:18:40,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:18:40,710.710 INFO    ] No camera update needed
[2026-06-22 15:18:40,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:18:40,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:18:40,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:18:40,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:18:42,765.765 INFO    ] ================================================
[2026-06-22 15:18:42,780.780 INFO    ] Launching Daemon at Mon Jun 22 15:18:42 IST 2026
[2026-06-22 15:18:42,791.791 INFO    ] ================================================
[2026-06-22 15:18:43,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:18:43
[2026-06-22 15:18:43,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:18:44,196.196 INFO    ] Initializing speech engine...
[2026-06-22 15:18:44,204.204 INFO    ] 2026-06-22 15:18:44
[2026-06-22 15:18:44,474.474 INFO    ] 2026-06-22 15:18:44
[2026-06-22 15:18:44,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:18:44,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:18:44,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:18:44,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:18:44,947.947 INFO    ] time= 22/06/2026 15:18:44
[2026-06-22 15:18:45,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:18:45,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:18:45,196.196 INFO    ] No existing commands found in stream
[2026-06-22 15:18:50,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:18:50,216.216 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-22 15:18:51,705.705 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:18:51,708.708 INFO    ] Checking for system updates...
[2026-06-22 15:18:51,746.746 INFO    ] 200
[2026-06-22 15:18:51,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:18:51,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:18:51,809.809 INFO    ] No update needed
[2026-06-22 15:18:51,811.811 INFO    ] Checking for camera pi updates...
[2026-06-22 15:18:51,845.845 INFO    ] 200
[2026-06-22 15:18:51,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:18:51,888.888 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:18:51,944.944 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:18:51,947.947 INFO    ] No camera update needed
[2026-06-22 15:18:51,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:18:51,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:18:51,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:18:51,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:18:54,003.003 INFO    ] ================================================
[2026-06-22 15:18:54,019.019 INFO    ] Launching Daemon at Mon Jun 22 15:18:54 IST 2026
[2026-06-22 15:18:54,031.031 INFO    ] ================================================
[2026-06-22 15:18:54,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:18:54
[2026-06-22 15:18:55,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:18:55,457.457 INFO    ] Initializing speech engine...
[2026-06-22 15:18:55,471.471 INFO    ] 2026-06-22 15:18:55
[2026-06-22 15:18:55,759.759 INFO    ] 2026-06-22 15:18:55
[2026-06-22 15:18:55,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:18:56,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:18:56,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:18:56,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:18:56,255.255 INFO    ] time= 22/06/2026 15:18:56
[2026-06-22 15:18:56,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:18:56,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:18:56,485.485 INFO    ] No existing commands found in stream
[2026-06-22 15:19:01,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:19:01,514.514 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-22 15:19:03,117.117 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:19:03,119.119 INFO    ] Checking for system updates...
[2026-06-22 15:19:03,157.157 INFO    ] 200
[2026-06-22 15:19:03,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:19:03,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:19:03,231.231 INFO    ] No update needed
[2026-06-22 15:19:03,234.234 INFO    ] Checking for camera pi updates...
[2026-06-22 15:19:03,293.293 INFO    ] 200
[2026-06-22 15:19:03,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:19:03,341.341 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:19:03,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:19:03,407.407 INFO    ] No camera update needed
[2026-06-22 15:19:03,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:19:03,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:19:03,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:19:03,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:19:05,462.462 INFO    ] ================================================
[2026-06-22 15:19:05,478.478 INFO    ] Launching Daemon at Mon Jun 22 15:19:05 IST 2026
[2026-06-22 15:19:05,489.489 INFO    ] ================================================
[2026-06-22 15:19:06,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:19:06
[2026-06-22 15:19:06,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:19:06,851.851 INFO    ] Initializing speech engine...
[2026-06-22 15:19:06,870.870 INFO    ] 2026-06-22 15:19:06
[2026-06-22 15:19:07,118.118 INFO    ] 2026-06-22 15:19:07
[2026-06-22 15:19:07,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:19:07,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:19:07,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:19:07,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:19:07,585.585 INFO    ] time= 22/06/2026 15:19:07
[2026-06-22 15:19:07,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:19:07,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:19:07,821.821 INFO    ] No existing commands found in stream
[2026-06-22 15:19:12,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:19:12,838.838 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-22 15:19:14,206.206 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:19:14,209.209 INFO    ] Checking for system updates...
[2026-06-22 15:19:14,245.245 INFO    ] 200
[2026-06-22 15:19:14,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:19:14,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:19:14,304.304 INFO    ] No update needed
[2026-06-22 15:19:14,305.305 INFO    ] Checking for camera pi updates...
[2026-06-22 15:19:14,326.326 INFO    ] 200
[2026-06-22 15:19:14,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:19:14,351.351 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:19:14,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:19:14,431.431 INFO    ] No camera update needed
[2026-06-22 15:19:14,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:19:14,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:19:14,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:19:14,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:19:16,489.489 INFO    ] ================================================
[2026-06-22 15:19:16,506.506 INFO    ] Launching Daemon at Mon Jun 22 15:19:16 IST 2026
[2026-06-22 15:19:16,518.518 INFO    ] ================================================
[2026-06-22 15:19:17,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:19:17
[2026-06-22 15:19:17,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:19:17,833.833 INFO    ] Initializing speech engine...
[2026-06-22 15:19:17,839.839 INFO    ] 2026-06-22 15:19:17
[2026-06-22 15:19:18,135.135 INFO    ] 2026-06-22 15:19:18
[2026-06-22 15:19:18,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:19:18,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:19:18,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:19:18,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:19:18,541.541 INFO    ] time= 22/06/2026 15:19:18
[2026-06-22 15:19:18,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:19:18,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:19:18,694.694 INFO    ] No existing commands found in stream
[2026-06-22 15:19:23,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:19:23,727.727 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-22 15:19:25,705.705 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:19:25,707.707 INFO    ] Checking for system updates...
[2026-06-22 15:19:25,731.731 INFO    ] 200
[2026-06-22 15:19:25,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:19:25,765.765 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:19:25,766.766 INFO    ] No update needed
[2026-06-22 15:19:25,768.768 INFO    ] Checking for camera pi updates...
[2026-06-22 15:19:25,787.787 INFO    ] 200
[2026-06-22 15:19:25,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:19:25,821.821 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:19:26,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:19:26,013.013 INFO    ] No camera update needed
[2026-06-22 15:19:26,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:19:26,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:19:26,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:19:26,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:19:28,072.072 INFO    ] ================================================
[2026-06-22 15:19:28,087.087 INFO    ] Launching Daemon at Mon Jun 22 15:19:28 IST 2026
[2026-06-22 15:19:28,099.099 INFO    ] ================================================
[2026-06-22 15:19:28,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:19:28
[2026-06-22 15:19:29,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:19:29,462.462 INFO    ] Initializing speech engine...
[2026-06-22 15:19:29,480.480 INFO    ] 2026-06-22 15:19:29
[2026-06-22 15:19:29,732.732 INFO    ] 2026-06-22 15:19:29
[2026-06-22 15:19:29,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:19:30,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:19:30,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:19:30,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:19:30,205.205 INFO    ] time= 22/06/2026 15:19:30
[2026-06-22 15:19:30,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:19:30,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:19:30,442.442 INFO    ] No existing commands found in stream
[2026-06-22 15:19:35,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:19:35,459.459 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-22 15:19:38,965.965 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:19:38,967.967 INFO    ] Checking for system updates...
[2026-06-22 15:19:38,987.987 INFO    ] 200
[2026-06-22 15:19:38,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:19:39,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:19:39,027.027 INFO    ] No update needed
[2026-06-22 15:19:39,029.029 INFO    ] Checking for camera pi updates...
[2026-06-22 15:19:39,066.066 INFO    ] 200
[2026-06-22 15:19:39,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:19:39,112.112 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:19:39,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:19:39,210.210 INFO    ] No camera update needed
[2026-06-22 15:19:39,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:19:39,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:19:39,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:19:39,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:19:41,267.267 INFO    ] ================================================
[2026-06-22 15:19:41,282.282 INFO    ] Launching Daemon at Mon Jun 22 15:19:41 IST 2026
[2026-06-22 15:19:41,293.293 INFO    ] ================================================
[2026-06-22 15:19:41,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:19:41
[2026-06-22 15:19:42,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:19:42,609.609 INFO    ] Initializing speech engine...
[2026-06-22 15:19:42,624.624 INFO    ] 2026-06-22 15:19:42
[2026-06-22 15:19:42,901.901 INFO    ] 2026-06-22 15:19:42
[2026-06-22 15:19:42,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:19:43,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:19:43,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:19:43,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:19:43,304.304 INFO    ] time= 22/06/2026 15:19:43
[2026-06-22 15:19:43,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:19:43,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:19:43,482.482 INFO    ] No existing commands found in stream
[2026-06-22 15:19:48,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:19:48,510.510 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-22 15:19:50,389.389 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:19:50,392.392 INFO    ] Checking for system updates...
[2026-06-22 15:19:50,430.430 INFO    ] 200
[2026-06-22 15:19:50,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:19:50,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:19:50,492.492 INFO    ] No update needed
[2026-06-22 15:19:50,494.494 INFO    ] Checking for camera pi updates...
[2026-06-22 15:19:50,530.530 INFO    ] 200
[2026-06-22 15:19:50,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:19:50,572.572 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:19:50,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:19:50,670.670 INFO    ] No camera update needed
[2026-06-22 15:19:50,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:19:50,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:19:50,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:19:50,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:19:52,725.725 INFO    ] ================================================
[2026-06-22 15:19:52,741.741 INFO    ] Launching Daemon at Mon Jun 22 15:19:52 IST 2026
[2026-06-22 15:19:52,752.752 INFO    ] ================================================
[2026-06-22 15:19:53,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:19:53
[2026-06-22 15:19:53,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:19:54,171.171 INFO    ] Initializing speech engine...
[2026-06-22 15:19:54,181.181 INFO    ] 2026-06-22 15:19:54
[2026-06-22 15:19:54,438.438 INFO    ] 2026-06-22 15:19:54
[2026-06-22 15:19:54,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:19:54,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:19:54,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:19:54,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:19:54,924.924 INFO    ] time= 22/06/2026 15:19:54
[2026-06-22 15:19:54,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:19:54,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:19:55,119.119 INFO    ] No existing commands found in stream
[2026-06-22 15:20:00,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:20:00,150.150 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-22 15:20:07,322.322 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:20:07,326.326 INFO    ] Checking for system updates...
[2026-06-22 15:20:07,365.365 INFO    ] 200
[2026-06-22 15:20:07,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 15:20:07,370.370 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-22 15:20:07,373.373 INFO    ] Checking for camera pi updates...
[2026-06-22 15:20:07,409.409 INFO    ] 200
[2026-06-22 15:20:07,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 15:20:07,414.414 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-22 15:20:07,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:20:07,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:20:07,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:20:07,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:20:09,474.474 INFO    ] ================================================
[2026-06-22 15:20:09,490.490 INFO    ] Launching Daemon at Mon Jun 22 15:20:09 IST 2026
[2026-06-22 15:20:09,501.501 INFO    ] ================================================
[2026-06-22 15:20:10,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:20:10
[2026-06-22 15:20:10,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:20:10,925.925 INFO    ] Initializing speech engine...
[2026-06-22 15:20:10,930.930 INFO    ] 2026-06-22 15:20:10
[2026-06-22 15:20:11,177.177 INFO    ] 2026-06-22 15:20:11
[2026-06-22 15:20:11,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:20:11,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:20:11,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:20:11,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:20:11,641.641 INFO    ] time= 22/06/2026 15:20:11
[2026-06-22 15:20:11,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:20:11,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:20:11,819.819 INFO    ] No existing commands found in stream
[2026-06-22 15:20:16,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:20:16,852.852 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-22 15:20:19,909.909 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:20:19,910.910 INFO    ] Checking for system updates...
[2026-06-22 15:20:19,931.931 INFO    ] 200
[2026-06-22 15:20:19,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:20:19,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:20:19,966.966 INFO    ] No update needed
[2026-06-22 15:20:19,968.968 INFO    ] Checking for camera pi updates...
[2026-06-22 15:20:19,992.992 INFO    ] 200
[2026-06-22 15:20:19,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:20:20,039.039 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:20:20,121.121 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:20:20,123.123 INFO    ] No camera update needed
[2026-06-22 15:20:20,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:20:20,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:20:20,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:20:20,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:20:22,179.179 INFO    ] ================================================
[2026-06-22 15:20:22,196.196 INFO    ] Launching Daemon at Mon Jun 22 15:20:22 IST 2026
[2026-06-22 15:20:22,207.207 INFO    ] ================================================
[2026-06-22 15:20:22,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:20:22
[2026-06-22 15:20:23,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:20:23,520.520 INFO    ] Initializing speech engine...
[2026-06-22 15:20:23,535.535 INFO    ] 2026-06-22 15:20:23
[2026-06-22 15:20:23,797.797 INFO    ] 2026-06-22 15:20:23
[2026-06-22 15:20:23,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:20:24,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:20:24,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:20:24,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:20:24,268.268 INFO    ] time= 22/06/2026 15:20:24
[2026-06-22 15:20:24,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:20:24,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:20:24,488.488 INFO    ] No existing commands found in stream
[2026-06-22 15:20:29,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:20:29,518.518 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-22 15:20:33,151.151 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:20:33,154.154 INFO    ] Checking for system updates...
[2026-06-22 15:20:33,190.190 INFO    ] 200
[2026-06-22 15:20:33,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:20:33,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:20:33,247.247 INFO    ] No update needed
[2026-06-22 15:20:33,250.250 INFO    ] Checking for camera pi updates...
[2026-06-22 15:20:33,283.283 INFO    ] 200
[2026-06-22 15:20:33,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:20:33,328.328 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:20:33,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:20:33,409.409 INFO    ] No camera update needed
[2026-06-22 15:20:33,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:20:33,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:20:33,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:20:33,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:20:35,467.467 INFO    ] ================================================
[2026-06-22 15:20:35,482.482 INFO    ] Launching Daemon at Mon Jun 22 15:20:35 IST 2026
[2026-06-22 15:20:35,493.493 INFO    ] ================================================
[2026-06-22 15:20:36,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:20:36
[2026-06-22 15:20:36,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:20:36,812.812 INFO    ] Initializing speech engine...
[2026-06-22 15:20:36,829.829 INFO    ] 2026-06-22 15:20:36
[2026-06-22 15:20:37,081.081 INFO    ] 2026-06-22 15:20:37
[2026-06-22 15:20:37,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:20:37,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:20:37,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:20:37,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:20:37,556.556 INFO    ] time= 22/06/2026 15:20:37
[2026-06-22 15:20:37,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:20:37,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:20:37,765.765 INFO    ] No existing commands found in stream
[2026-06-22 15:20:42,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:20:42,798.798 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-22 15:20:44,684.684 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:20:44,686.686 INFO    ] Checking for system updates...
[2026-06-22 15:20:44,726.726 INFO    ] 200
[2026-06-22 15:20:44,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:20:44,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:20:44,794.794 INFO    ] No update needed
[2026-06-22 15:20:44,797.797 INFO    ] Checking for camera pi updates...
[2026-06-22 15:20:44,834.834 INFO    ] 200
[2026-06-22 15:20:44,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:20:44,883.883 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:20:44,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:20:44,974.974 INFO    ] No camera update needed
[2026-06-22 15:20:44,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:20:44,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:20:44,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:20:44,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:20:47,034.034 INFO    ] ================================================
[2026-06-22 15:20:47,051.051 INFO    ] Launching Daemon at Mon Jun 22 15:20:47 IST 2026
[2026-06-22 15:20:47,062.062 INFO    ] ================================================
[2026-06-22 15:20:47,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:20:47
[2026-06-22 15:20:48,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:20:48,610.610 INFO    ] Initializing speech engine...
[2026-06-22 15:20:48,620.620 INFO    ] 2026-06-22 15:20:48
[2026-06-22 15:20:48,907.907 INFO    ] 2026-06-22 15:20:48
[2026-06-22 15:20:48,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:20:49,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:20:49,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:20:49,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:20:49,445.445 INFO    ] time= 22/06/2026 15:20:49
[2026-06-22 15:20:49,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:20:49,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:20:49,625.625 INFO    ] No existing commands found in stream
[2026-06-22 15:20:54,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:20:54,660.660 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-22 15:20:56,571.571 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:20:56,572.572 INFO    ] Checking for system updates...
[2026-06-22 15:20:56,594.594 INFO    ] 200
[2026-06-22 15:20:56,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:20:56,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:20:56,640.640 INFO    ] No update needed
[2026-06-22 15:20:56,643.643 INFO    ] Checking for camera pi updates...
[2026-06-22 15:20:56,679.679 INFO    ] 200
[2026-06-22 15:20:56,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:20:56,728.728 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:20:56,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:20:56,818.818 INFO    ] No camera update needed
[2026-06-22 15:20:56,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:20:56,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:20:56,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:20:56,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:20:58,874.874 INFO    ] ================================================
[2026-06-22 15:20:58,889.889 INFO    ] Launching Daemon at Mon Jun 22 15:20:58 IST 2026
[2026-06-22 15:20:58,900.900 INFO    ] ================================================
[2026-06-22 15:20:59,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:20:59
[2026-06-22 15:21:00,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:21:00,329.329 INFO    ] Initializing speech engine...
[2026-06-22 15:21:00,338.338 INFO    ] 2026-06-22 15:21:00
[2026-06-22 15:21:00,585.585 INFO    ] 2026-06-22 15:21:00
[2026-06-22 15:21:00,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:21:00,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:21:00,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:21:01,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:21:01,056.056 INFO    ] time= 22/06/2026 15:21:01
[2026-06-22 15:21:01,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:21:01,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:21:01,277.277 INFO    ] No existing commands found in stream
[2026-06-22 15:21:06,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:21:06,308.308 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-22 15:21:07,017.017 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:21:07,020.020 INFO    ] Checking for system updates...
[2026-06-22 15:21:07,057.057 INFO    ] 200
[2026-06-22 15:21:07,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:21:07,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:21:07,114.114 INFO    ] No update needed
[2026-06-22 15:21:07,116.116 INFO    ] Checking for camera pi updates...
[2026-06-22 15:21:07,150.150 INFO    ] 200
[2026-06-22 15:21:07,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:21:07,194.194 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:21:07,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:21:07,279.279 INFO    ] No camera update needed
[2026-06-22 15:21:07,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:21:07,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:21:07,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:21:07,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:21:09,336.336 INFO    ] ================================================
[2026-06-22 15:21:09,351.351 INFO    ] Launching Daemon at Mon Jun 22 15:21:09 IST 2026
[2026-06-22 15:21:09,362.362 INFO    ] ================================================
[2026-06-22 15:21:09,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:21:09
[2026-06-22 15:21:10,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:21:10,713.713 INFO    ] Initializing speech engine...
[2026-06-22 15:21:10,720.720 INFO    ] 2026-06-22 15:21:10
[2026-06-22 15:21:10,979.979 INFO    ] 2026-06-22 15:21:10
[2026-06-22 15:21:11,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:21:11,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:21:11,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:21:11,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:21:11,463.463 INFO    ] time= 22/06/2026 15:21:11
[2026-06-22 15:21:11,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:21:11,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:21:11,680.680 INFO    ] No existing commands found in stream
[2026-06-22 15:21:16,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:21:16,701.701 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-22 15:21:17,167.167 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:21:17,169.169 INFO    ] Checking for system updates...
[2026-06-22 15:21:17,206.206 INFO    ] 200
[2026-06-22 15:21:17,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:21:17,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:21:17,263.263 INFO    ] No update needed
[2026-06-22 15:21:17,266.266 INFO    ] Checking for camera pi updates...
[2026-06-22 15:21:17,300.300 INFO    ] 200
[2026-06-22 15:21:17,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:21:17,343.343 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:21:17,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:21:17,418.418 INFO    ] No camera update needed
[2026-06-22 15:21:17,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:21:17,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:21:17,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:21:17,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:21:19,476.476 INFO    ] ================================================
[2026-06-22 15:21:19,491.491 INFO    ] Launching Daemon at Mon Jun 22 15:21:19 IST 2026
[2026-06-22 15:21:19,502.502 INFO    ] ================================================
[2026-06-22 15:21:20,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:21:20
[2026-06-22 15:21:20,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:21:20,902.902 INFO    ] Initializing speech engine...
[2026-06-22 15:21:20,911.911 INFO    ] 2026-06-22 15:21:20
[2026-06-22 15:21:21,184.184 INFO    ] 2026-06-22 15:21:21
[2026-06-22 15:21:21,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:21:21,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:21:21,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:21:21,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:21:21,667.667 INFO    ] time= 22/06/2026 15:21:21
[2026-06-22 15:21:21,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:21:21,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:21:21,899.899 INFO    ] No existing commands found in stream
[2026-06-22 15:21:26,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:21:26,928.928 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-22 15:21:30,791.791 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:21:30,792.792 INFO    ] Checking for system updates...
[2026-06-22 15:21:30,814.814 INFO    ] 200
[2026-06-22 15:21:30,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:21:30,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:21:30,879.879 INFO    ] No update needed
[2026-06-22 15:21:30,882.882 INFO    ] Checking for camera pi updates...
[2026-06-22 15:21:30,919.919 INFO    ] 200
[2026-06-22 15:21:30,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:21:30,962.962 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:21:31,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:21:31,145.145 INFO    ] No camera update needed
[2026-06-22 15:21:31,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:21:31,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:21:31,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:21:31,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:21:33,202.202 INFO    ] ================================================
[2026-06-22 15:21:33,217.217 INFO    ] Launching Daemon at Mon Jun 22 15:21:33 IST 2026
[2026-06-22 15:21:33,233.233 INFO    ] ================================================
[2026-06-22 15:21:33,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:21:33
[2026-06-22 15:21:34,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:21:34,691.691 INFO    ] Initializing speech engine...
[2026-06-22 15:21:34,698.698 INFO    ] 2026-06-22 15:21:34
[2026-06-22 15:21:34,960.960 INFO    ] 2026-06-22 15:21:34
[2026-06-22 15:21:34,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:21:35,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:21:35,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:21:35,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:21:35,506.506 INFO    ] time= 22/06/2026 15:21:35
[2026-06-22 15:21:35,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:21:35,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:21:35,679.679 INFO    ] No existing commands found in stream
[2026-06-22 15:21:40,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:21:40,712.712 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-22 15:21:41,727.727 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:21:41,730.730 INFO    ] Checking for system updates...
[2026-06-22 15:21:41,769.769 INFO    ] 200
[2026-06-22 15:21:41,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:21:41,825.825 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:21:41,828.828 INFO    ] No update needed
[2026-06-22 15:21:41,830.830 INFO    ] Checking for camera pi updates...
[2026-06-22 15:21:41,863.863 INFO    ] 200
[2026-06-22 15:21:41,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:21:41,907.907 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:21:41,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:21:41,992.992 INFO    ] No camera update needed
[2026-06-22 15:21:41,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:21:41,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:21:42,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:21:42,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:21:44,050.050 INFO    ] ================================================
[2026-06-22 15:21:44,069.069 INFO    ] Launching Daemon at Mon Jun 22 15:21:44 IST 2026
[2026-06-22 15:21:44,079.079 INFO    ] ================================================
[2026-06-22 15:21:44,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:21:44
[2026-06-22 15:21:45,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:21:45,561.561 INFO    ] Initializing speech engine...
[2026-06-22 15:21:45,570.570 INFO    ] 2026-06-22 15:21:45
[2026-06-22 15:21:45,855.855 INFO    ] 2026-06-22 15:21:45
[2026-06-22 15:21:45,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:21:46,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:21:46,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:21:46,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:21:46,403.403 INFO    ] time= 22/06/2026 15:21:46
[2026-06-22 15:21:46,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:21:46,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:21:46,552.552 INFO    ] No existing commands found in stream
[2026-06-22 15:21:51,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:21:51,578.578 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-22 15:21:52,747.747 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:21:52,750.750 INFO    ] Checking for system updates...
[2026-06-22 15:21:52,788.788 INFO    ] 200
[2026-06-22 15:21:52,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:21:52,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:21:52,846.846 INFO    ] No update needed
[2026-06-22 15:21:52,849.849 INFO    ] Checking for camera pi updates...
[2026-06-22 15:21:52,889.889 INFO    ] 200
[2026-06-22 15:21:52,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:21:52,931.931 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:21:53,023.023 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:21:53,026.026 INFO    ] No camera update needed
[2026-06-22 15:21:53,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:21:53,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:21:53,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:21:53,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:21:55,081.081 INFO    ] ================================================
[2026-06-22 15:21:55,096.096 INFO    ] Launching Daemon at Mon Jun 22 15:21:55 IST 2026
[2026-06-22 15:21:55,107.107 INFO    ] ================================================
[2026-06-22 15:21:55,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:21:55
[2026-06-22 15:21:56,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:21:56,566.566 INFO    ] Initializing speech engine...
[2026-06-22 15:21:56,575.575 INFO    ] 2026-06-22 15:21:56
[2026-06-22 15:21:56,836.836 INFO    ] 2026-06-22 15:21:56
[2026-06-22 15:21:56,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:21:57,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:21:57,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:21:57,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:21:57,240.240 INFO    ] time= 22/06/2026 15:21:57
[2026-06-22 15:21:57,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:21:57,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:21:57,402.402 INFO    ] No existing commands found in stream
[2026-06-22 15:22:02,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:22:02,416.416 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-22 15:22:06,299.299 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:22:06,301.301 INFO    ] Checking for system updates...
[2026-06-22 15:22:06,337.337 INFO    ] 200
[2026-06-22 15:22:06,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:22:06,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:22:06,400.400 INFO    ] No update needed
[2026-06-22 15:22:06,402.402 INFO    ] Checking for camera pi updates...
[2026-06-22 15:22:06,436.436 INFO    ] 200
[2026-06-22 15:22:06,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:22:06,479.479 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:22:06,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:22:06,531.531 INFO    ] No camera update needed
[2026-06-22 15:22:06,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:22:06,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:22:06,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:22:06,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:22:08,582.582 INFO    ] ================================================
[2026-06-22 15:22:08,598.598 INFO    ] Launching Daemon at Mon Jun 22 15:22:08 IST 2026
[2026-06-22 15:22:08,609.609 INFO    ] ================================================
[2026-06-22 15:22:09,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:22:09
[2026-06-22 15:22:09,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:22:09,934.934 INFO    ] Initializing speech engine...
[2026-06-22 15:22:09,947.947 INFO    ] 2026-06-22 15:22:09
[2026-06-22 15:22:10,213.213 INFO    ] 2026-06-22 15:22:10
[2026-06-22 15:22:10,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:22:10,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:22:10,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:22:10,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:22:10,716.716 INFO    ] time= 22/06/2026 15:22:10
[2026-06-22 15:22:10,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:22:10,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:22:10,939.939 INFO    ] No existing commands found in stream
[2026-06-22 15:22:15,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:22:15,956.956 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-22 15:22:16,648.648 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:22:16,651.651 INFO    ] Checking for system updates...
[2026-06-22 15:22:16,687.687 INFO    ] 200
[2026-06-22 15:22:16,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:22:16,742.742 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:22:16,745.745 INFO    ] No update needed
[2026-06-22 15:22:16,747.747 INFO    ] Checking for camera pi updates...
[2026-06-22 15:22:16,781.781 INFO    ] 200
[2026-06-22 15:22:16,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:22:16,824.824 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:22:16,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:22:16,905.905 INFO    ] No camera update needed
[2026-06-22 15:22:16,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:22:16,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:22:16,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:22:16,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:22:18,963.963 INFO    ] ================================================
[2026-06-22 15:22:18,978.978 INFO    ] Launching Daemon at Mon Jun 22 15:22:18 IST 2026
[2026-06-22 15:22:18,989.989 INFO    ] ================================================
[2026-06-22 15:22:19,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:22:19
[2026-06-22 15:22:20,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:22:20,633.633 INFO    ] Initializing speech engine...
[2026-06-22 15:22:20,647.647 INFO    ] 2026-06-22 15:22:20
[2026-06-22 15:22:20,947.947 INFO    ] 2026-06-22 15:22:20
[2026-06-22 15:22:21,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:22:21,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:22:21,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:22:21,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:22:21,494.494 INFO    ] time= 22/06/2026 15:22:21
[2026-06-22 15:22:21,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:22:21,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:22:21,654.654 INFO    ] No existing commands found in stream
[2026-06-22 15:22:26,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:22:26,678.678 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-22 15:22:30,644.644 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:22:30,646.646 INFO    ] Checking for system updates...
[2026-06-22 15:22:30,679.679 INFO    ] 200
[2026-06-22 15:22:30,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:22:30,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:22:30,739.739 INFO    ] No update needed
[2026-06-22 15:22:30,742.742 INFO    ] Checking for camera pi updates...
[2026-06-22 15:22:30,776.776 INFO    ] 200
[2026-06-22 15:22:30,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:22:30,821.821 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:22:30,919.919 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:22:30,922.922 INFO    ] No camera update needed
[2026-06-22 15:22:30,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:22:30,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:22:30,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:22:30,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:22:32,987.987 INFO    ] ================================================
[2026-06-22 15:22:33,003.003 INFO    ] Launching Daemon at Mon Jun 22 15:22:32 IST 2026
[2026-06-22 15:22:33,014.014 INFO    ] ================================================
[2026-06-22 15:22:33,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:22:33
[2026-06-22 15:22:34,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:22:34,686.686 INFO    ] Initializing speech engine...
[2026-06-22 15:22:34,699.699 INFO    ] 2026-06-22 15:22:34
[2026-06-22 15:22:34,990.990 INFO    ] 2026-06-22 15:22:34
[2026-06-22 15:22:35,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:22:35,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:22:35,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:22:35,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:22:35,547.547 INFO    ] time= 22/06/2026 15:22:35
[2026-06-22 15:22:35,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:22:35,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:22:35,722.722 INFO    ] No existing commands found in stream
[2026-06-22 15:22:40,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:22:40,757.757 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-22 15:22:44,321.321 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:22:44,324.324 INFO    ] Checking for system updates...
[2026-06-22 15:22:44,367.367 INFO    ] 200
[2026-06-22 15:22:44,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:22:44,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:22:44,432.432 INFO    ] No update needed
[2026-06-22 15:22:44,434.434 INFO    ] Checking for camera pi updates...
[2026-06-22 15:22:44,469.469 INFO    ] 200
[2026-06-22 15:22:44,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:22:44,520.520 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:22:44,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:22:44,605.605 INFO    ] No camera update needed
[2026-06-22 15:22:44,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:22:44,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:22:44,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:22:44,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:22:46,668.668 INFO    ] ================================================
[2026-06-22 15:22:46,685.685 INFO    ] Launching Daemon at Mon Jun 22 15:22:46 IST 2026
[2026-06-22 15:22:46,696.696 INFO    ] ================================================
[2026-06-22 15:22:47,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:22:47
[2026-06-22 15:22:47,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:22:48,255.255 INFO    ] Initializing speech engine...
[2026-06-22 15:22:48,268.268 INFO    ] 2026-06-22 15:22:48
[2026-06-22 15:22:48,560.560 INFO    ] 2026-06-22 15:22:48
[2026-06-22 15:22:48,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:22:48,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:22:48,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:22:49,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:22:49,102.102 INFO    ] time= 22/06/2026 15:22:49
[2026-06-22 15:22:49,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:22:49,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:22:49,274.274 INFO    ] No existing commands found in stream
[2026-06-22 15:22:54,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:22:54,309.309 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-22 15:22:55,173.173 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:22:55,176.176 INFO    ] Checking for system updates...
[2026-06-22 15:22:55,218.218 INFO    ] 200
[2026-06-22 15:22:55,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:22:55,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:22:55,279.279 INFO    ] No update needed
[2026-06-22 15:22:55,282.282 INFO    ] Checking for camera pi updates...
[2026-06-22 15:22:55,320.320 INFO    ] 200
[2026-06-22 15:22:55,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:22:55,364.364 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:22:55,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:22:55,453.453 INFO    ] No camera update needed
[2026-06-22 15:22:55,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:22:55,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:22:55,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:22:55,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:22:57,508.508 INFO    ] ================================================
[2026-06-22 15:22:57,523.523 INFO    ] Launching Daemon at Mon Jun 22 15:22:57 IST 2026
[2026-06-22 15:22:57,534.534 INFO    ] ================================================
[2026-06-22 15:22:58,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:22:58
[2026-06-22 15:22:58,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:22:58,850.850 INFO    ] Initializing speech engine...
[2026-06-22 15:22:58,862.862 INFO    ] 2026-06-22 15:22:58
[2026-06-22 15:22:59,129.129 INFO    ] 2026-06-22 15:22:59
[2026-06-22 15:22:59,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:22:59,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:22:59,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:22:59,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:22:59,605.605 INFO    ] time= 22/06/2026 15:22:59
[2026-06-22 15:22:59,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:22:59,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:22:59,826.826 INFO    ] No existing commands found in stream
[2026-06-22 15:23:04,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:23:04,852.852 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-22 15:23:06,863.863 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:23:06,866.866 INFO    ] Checking for system updates...
[2026-06-22 15:23:06,902.902 INFO    ] 200
[2026-06-22 15:23:06,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:23:06,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:23:06,966.966 INFO    ] No update needed
[2026-06-22 15:23:06,969.969 INFO    ] Checking for camera pi updates...
[2026-06-22 15:23:07,003.003 INFO    ] 200
[2026-06-22 15:23:07,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:23:07,047.047 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:23:07,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:23:07,133.133 INFO    ] No camera update needed
[2026-06-22 15:23:07,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:23:07,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:23:07,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:23:07,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:23:09,187.187 INFO    ] ================================================
[2026-06-22 15:23:09,202.202 INFO    ] Launching Daemon at Mon Jun 22 15:23:09 IST 2026
[2026-06-22 15:23:09,214.214 INFO    ] ================================================
[2026-06-22 15:23:09,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:23:09
[2026-06-22 15:23:10,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:23:10,655.655 INFO    ] Initializing speech engine...
[2026-06-22 15:23:10,664.664 INFO    ] 2026-06-22 15:23:10
[2026-06-22 15:23:10,928.928 INFO    ] 2026-06-22 15:23:10
[2026-06-22 15:23:10,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:23:11,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:23:11,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:23:11,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:23:11,314.314 INFO    ] time= 22/06/2026 15:23:11
[2026-06-22 15:23:11,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:23:11,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:23:11,497.497 INFO    ] No existing commands found in stream
[2026-06-22 15:23:16,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:23:16,523.523 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-22 15:23:20,329.329 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:23:20,331.331 INFO    ] Checking for system updates...
[2026-06-22 15:23:20,371.371 INFO    ] 200
[2026-06-22 15:23:20,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:23:20,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:23:20,430.430 INFO    ] No update needed
[2026-06-22 15:23:20,432.432 INFO    ] Checking for camera pi updates...
[2026-06-22 15:23:20,466.466 INFO    ] 200
[2026-06-22 15:23:20,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:23:20,511.511 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:23:20,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:23:20,590.590 INFO    ] No camera update needed
[2026-06-22 15:23:20,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:23:20,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:23:20,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:23:20,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:23:22,645.645 INFO    ] ================================================
[2026-06-22 15:23:22,661.661 INFO    ] Launching Daemon at Mon Jun 22 15:23:22 IST 2026
[2026-06-22 15:23:22,672.672 INFO    ] ================================================
[2026-06-22 15:23:23,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:23:23
[2026-06-22 15:23:23,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:23:24,115.115 INFO    ] Initializing speech engine...
[2026-06-22 15:23:24,122.122 INFO    ] 2026-06-22 15:23:24
[2026-06-22 15:23:24,381.381 INFO    ] 2026-06-22 15:23:24
[2026-06-22 15:23:24,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:23:24,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:23:24,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:23:24,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:23:24,924.924 INFO    ] time= 22/06/2026 15:23:24
[2026-06-22 15:23:24,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:23:24,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:23:25,066.066 INFO    ] No existing commands found in stream
[2026-06-22 15:23:30,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:23:30,094.094 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-22 15:23:30,975.975 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:23:30,978.978 INFO    ] Checking for system updates...
[2026-06-22 15:23:31,014.014 INFO    ] 200
[2026-06-22 15:23:31,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:23:31,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:23:31,072.072 INFO    ] No update needed
[2026-06-22 15:23:31,074.074 INFO    ] Checking for camera pi updates...
[2026-06-22 15:23:31,116.116 INFO    ] 200
[2026-06-22 15:23:31,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:23:31,158.158 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:23:31,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:23:31,244.244 INFO    ] No camera update needed
[2026-06-22 15:23:31,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:23:31,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:23:31,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:23:31,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:23:33,303.303 INFO    ] ================================================
[2026-06-22 15:23:33,319.319 INFO    ] Launching Daemon at Mon Jun 22 15:23:33 IST 2026
[2026-06-22 15:23:33,330.330 INFO    ] ================================================
[2026-06-22 15:23:33,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:23:33
[2026-06-22 15:23:34,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:23:34,863.863 INFO    ] Initializing speech engine...
[2026-06-22 15:23:34,877.877 INFO    ] 2026-06-22 15:23:34
[2026-06-22 15:23:35,188.188 INFO    ] 2026-06-22 15:23:35
[2026-06-22 15:23:35,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:23:35,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:23:35,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:23:35,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:23:35,699.699 INFO    ] time= 22/06/2026 15:23:35
[2026-06-22 15:23:35,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:23:35,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:23:35,854.854 INFO    ] No existing commands found in stream
[2026-06-22 15:23:40,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:23:40,893.893 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-22 15:23:43,855.855 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:23:43,856.856 INFO    ] Checking for system updates...
[2026-06-22 15:23:43,878.878 INFO    ] 200
[2026-06-22 15:23:43,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:23:43,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:23:43,917.917 INFO    ] No update needed
[2026-06-22 15:23:43,919.919 INFO    ] Checking for camera pi updates...
[2026-06-22 15:23:43,957.957 INFO    ] 200
[2026-06-22 15:23:43,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:23:44,005.005 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:23:44,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:23:44,189.189 INFO    ] No camera update needed
[2026-06-22 15:23:44,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:23:44,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:23:44,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:23:44,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:23:46,246.246 INFO    ] ================================================
[2026-06-22 15:23:46,263.263 INFO    ] Launching Daemon at Mon Jun 22 15:23:46 IST 2026
[2026-06-22 15:23:46,274.274 INFO    ] ================================================
[2026-06-22 15:23:46,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:23:46
[2026-06-22 15:23:47,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:23:47,786.786 INFO    ] Initializing speech engine...
[2026-06-22 15:23:47,796.796 INFO    ] 2026-06-22 15:23:47
[2026-06-22 15:23:48,060.060 INFO    ] 2026-06-22 15:23:48
[2026-06-22 15:23:48,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:23:48,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:23:48,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:23:48,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:23:48,464.464 INFO    ] time= 22/06/2026 15:23:48
[2026-06-22 15:23:48,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:23:48,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:23:48,575.575 INFO    ] No existing commands found in stream
[2026-06-22 15:23:53,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:23:53,598.598 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-22 15:23:55,771.771 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:23:55,773.773 INFO    ] Checking for system updates...
[2026-06-22 15:23:55,809.809 INFO    ] 200
[2026-06-22 15:23:55,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:23:55,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:23:55,874.874 INFO    ] No update needed
[2026-06-22 15:23:55,877.877 INFO    ] Checking for camera pi updates...
[2026-06-22 15:23:55,912.912 INFO    ] 200
[2026-06-22 15:23:55,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:23:55,959.959 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:23:56,049.049 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:23:56,052.052 INFO    ] No camera update needed
[2026-06-22 15:23:56,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:23:56,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:23:56,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:23:56,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:23:58,107.107 INFO    ] ================================================
[2026-06-22 15:23:58,123.123 INFO    ] Launching Daemon at Mon Jun 22 15:23:58 IST 2026
[2026-06-22 15:23:58,134.134 INFO    ] ================================================
[2026-06-22 15:23:58,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:23:58
[2026-06-22 15:23:59,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:23:59,468.468 INFO    ] Initializing speech engine...
[2026-06-22 15:23:59,478.478 INFO    ] 2026-06-22 15:23:59
[2026-06-22 15:23:59,728.728 INFO    ] 2026-06-22 15:23:59
[2026-06-22 15:23:59,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:23:59,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:24:00,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:24:00,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:24:00,215.215 INFO    ] time= 22/06/2026 15:24:00
[2026-06-22 15:24:00,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:24:00,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:24:00,420.420 INFO    ] No existing commands found in stream
[2026-06-22 15:24:05,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:24:05,449.449 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-22 15:24:10,234.234 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:24:10,237.237 INFO    ] Checking for system updates...
[2026-06-22 15:24:10,276.276 INFO    ] 200
[2026-06-22 15:24:10,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:24:10,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:24:10,335.335 INFO    ] No update needed
[2026-06-22 15:24:10,336.336 INFO    ] Checking for camera pi updates...
[2026-06-22 15:24:10,370.370 INFO    ] 200
[2026-06-22 15:24:10,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:24:10,413.413 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:24:10,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:24:10,500.500 INFO    ] No camera update needed
[2026-06-22 15:24:10,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:24:10,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:24:10,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:24:10,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:24:12,555.555 INFO    ] ================================================
[2026-06-22 15:24:12,570.570 INFO    ] Launching Daemon at Mon Jun 22 15:24:12 IST 2026
[2026-06-22 15:24:12,581.581 INFO    ] ================================================
[2026-06-22 15:24:13,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:24:13
[2026-06-22 15:24:13,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:24:14,015.015 INFO    ] Initializing speech engine...
[2026-06-22 15:24:14,029.029 INFO    ] 2026-06-22 15:24:14
[2026-06-22 15:24:14,304.304 INFO    ] 2026-06-22 15:24:14
[2026-06-22 15:24:14,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:24:14,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:24:14,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:24:14,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:24:14,880.880 INFO    ] time= 22/06/2026 15:24:14
[2026-06-22 15:24:14,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:24:14,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:24:15,052.052 INFO    ] No existing commands found in stream
[2026-06-22 15:24:20,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:24:20,081.081 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-22 15:24:22,105.105 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:24:22,106.106 INFO    ] Checking for system updates...
[2026-06-22 15:24:22,127.127 INFO    ] 200
[2026-06-22 15:24:22,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:24:22,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:24:22,176.176 INFO    ] No update needed
[2026-06-22 15:24:22,178.178 INFO    ] Checking for camera pi updates...
[2026-06-22 15:24:22,215.215 INFO    ] 200
[2026-06-22 15:24:22,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:24:22,258.258 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:24:22,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:24:22,345.345 INFO    ] No camera update needed
[2026-06-22 15:24:22,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:24:22,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:24:22,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:24:22,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:24:24,400.400 INFO    ] ================================================
[2026-06-22 15:24:24,416.416 INFO    ] Launching Daemon at Mon Jun 22 15:24:24 IST 2026
[2026-06-22 15:24:24,427.427 INFO    ] ================================================
[2026-06-22 15:24:25,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:24:25
[2026-06-22 15:24:25,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:24:25,918.918 INFO    ] Initializing speech engine...
[2026-06-22 15:24:25,931.931 INFO    ] 2026-06-22 15:24:25
[2026-06-22 15:24:26,213.213 INFO    ] 2026-06-22 15:24:26
[2026-06-22 15:24:26,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:24:26,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:24:26,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:24:26,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:24:26,709.709 INFO    ] time= 22/06/2026 15:24:26
[2026-06-22 15:24:26,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:24:26,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:24:26,920.920 INFO    ] No existing commands found in stream
[2026-06-22 15:24:31,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:24:31,937.937 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-22 15:24:33,547.547 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:24:33,550.550 INFO    ] Checking for system updates...
[2026-06-22 15:24:33,590.590 INFO    ] 200
[2026-06-22 15:24:33,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:24:33,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:24:33,659.659 INFO    ] No update needed
[2026-06-22 15:24:33,661.661 INFO    ] Checking for camera pi updates...
[2026-06-22 15:24:33,698.698 INFO    ] 200
[2026-06-22 15:24:33,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:24:33,741.741 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:24:33,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:24:33,829.829 INFO    ] No camera update needed
[2026-06-22 15:24:33,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:24:33,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:24:33,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:24:33,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:24:35,891.891 INFO    ] ================================================
[2026-06-22 15:24:35,906.906 INFO    ] Launching Daemon at Mon Jun 22 15:24:35 IST 2026
[2026-06-22 15:24:35,917.917 INFO    ] ================================================
[2026-06-22 15:24:36,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:24:36
[2026-06-22 15:24:37,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:24:37,499.499 INFO    ] Initializing speech engine...
[2026-06-22 15:24:37,508.508 INFO    ] 2026-06-22 15:24:37
[2026-06-22 15:24:37,802.802 INFO    ] 2026-06-22 15:24:37
[2026-06-22 15:24:37,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:24:38,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:24:38,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:24:38,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:24:38,278.278 INFO    ] time= 22/06/2026 15:24:38
[2026-06-22 15:24:38,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:24:38,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:24:38,485.485 INFO    ] No existing commands found in stream
[2026-06-22 15:24:43,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:24:43,513.513 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-22 15:24:47,628.628 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:24:47,630.630 INFO    ] Checking for system updates...
[2026-06-22 15:24:47,651.651 INFO    ] 200
[2026-06-22 15:24:47,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:24:47,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:24:47,698.698 INFO    ] No update needed
[2026-06-22 15:24:47,700.700 INFO    ] Checking for camera pi updates...
[2026-06-22 15:24:47,737.737 INFO    ] 200
[2026-06-22 15:24:47,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:24:47,783.783 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:24:47,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:24:47,869.869 INFO    ] No camera update needed
[2026-06-22 15:24:47,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:24:47,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:24:47,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:24:47,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:24:49,925.925 INFO    ] ================================================
[2026-06-22 15:24:49,941.941 INFO    ] Launching Daemon at Mon Jun 22 15:24:49 IST 2026
[2026-06-22 15:24:49,952.952 INFO    ] ================================================
[2026-06-22 15:24:50,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:24:50
[2026-06-22 15:24:51,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:24:51,287.287 INFO    ] Initializing speech engine...
[2026-06-22 15:24:51,299.299 INFO    ] 2026-06-22 15:24:51
[2026-06-22 15:24:51,563.563 INFO    ] 2026-06-22 15:24:51
[2026-06-22 15:24:51,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:24:51,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:24:51,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:24:51,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:24:52,018.018 INFO    ] time= 22/06/2026 15:24:51
[2026-06-22 15:24:52,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:24:52,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:24:52,269.269 INFO    ] No existing commands found in stream
[2026-06-22 15:24:57,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:24:57,288.288 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-22 15:25:01,008.008 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:25:01,010.010 INFO    ] Checking for system updates...
[2026-06-22 15:25:01,032.032 INFO    ] 200
[2026-06-22 15:25:01,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:25:01,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:25:01,065.065 INFO    ] No update needed
[2026-06-22 15:25:01,066.066 INFO    ] Checking for camera pi updates...
[2026-06-22 15:25:01,087.087 INFO    ] 200
[2026-06-22 15:25:01,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:25:01,125.125 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:25:01,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:25:01,211.211 INFO    ] No camera update needed
[2026-06-22 15:25:01,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:25:01,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:25:01,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:25:01,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:25:03,281.281 INFO    ] ================================================
[2026-06-22 15:25:03,302.302 INFO    ] Launching Daemon at Mon Jun 22 15:25:03 IST 2026
[2026-06-22 15:25:03,316.316 INFO    ] ================================================
[2026-06-22 15:25:03,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:25:03
[2026-06-22 15:25:04,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:25:04,793.793 INFO    ] Initializing speech engine...
[2026-06-22 15:25:04,799.799 INFO    ] 2026-06-22 15:25:04
[2026-06-22 15:25:05,048.048 INFO    ] 2026-06-22 15:25:05
[2026-06-22 15:25:05,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:25:05,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:25:05,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:25:05,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:25:05,543.543 INFO    ] time= 22/06/2026 15:25:05
[2026-06-22 15:25:05,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:25:05,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:25:05,754.754 INFO    ] No existing commands found in stream
[2026-06-22 15:25:10,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:25:10,769.769 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-22 15:25:12,456.456 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:25:12,458.458 INFO    ] Checking for system updates...
[2026-06-22 15:25:12,495.495 INFO    ] 200
[2026-06-22 15:25:12,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:25:12,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:25:12,560.560 INFO    ] No update needed
[2026-06-22 15:25:12,562.562 INFO    ] Checking for camera pi updates...
[2026-06-22 15:25:12,597.597 INFO    ] 200
[2026-06-22 15:25:12,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:25:12,648.648 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:25:12,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:25:12,727.727 INFO    ] No camera update needed
[2026-06-22 15:25:12,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:25:12,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:25:12,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:25:12,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:25:14,785.785 INFO    ] ================================================
[2026-06-22 15:25:14,800.800 INFO    ] Launching Daemon at Mon Jun 22 15:25:14 IST 2026
[2026-06-22 15:25:14,812.812 INFO    ] ================================================
[2026-06-22 15:25:15,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:25:15
[2026-06-22 15:25:16,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:25:16,331.331 INFO    ] Initializing speech engine...
[2026-06-22 15:25:16,338.338 INFO    ] 2026-06-22 15:25:16
[2026-06-22 15:25:16,601.601 INFO    ] 2026-06-22 15:25:16
[2026-06-22 15:25:16,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:25:16,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:25:16,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:25:17,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:25:17,086.086 INFO    ] time= 22/06/2026 15:25:17
[2026-06-22 15:25:17,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:25:17,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:25:17,342.342 INFO    ] No existing commands found in stream
[2026-06-22 15:25:22,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:25:22,366.366 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-22 15:25:23,759.759 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:25:23,761.761 INFO    ] Checking for system updates...
[2026-06-22 15:25:23,783.783 INFO    ] 200
[2026-06-22 15:25:23,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:25:23,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:25:23,832.832 INFO    ] No update needed
[2026-06-22 15:25:23,835.835 INFO    ] Checking for camera pi updates...
[2026-06-22 15:25:23,873.873 INFO    ] 200
[2026-06-22 15:25:23,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:25:23,918.918 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:25:24,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:25:24,004.004 INFO    ] No camera update needed
[2026-06-22 15:25:24,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:25:24,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:25:24,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:25:24,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:25:26,061.061 INFO    ] ================================================
[2026-06-22 15:25:26,077.077 INFO    ] Launching Daemon at Mon Jun 22 15:25:26 IST 2026
[2026-06-22 15:25:26,088.088 INFO    ] ================================================
[2026-06-22 15:25:26,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:25:26
[2026-06-22 15:25:27,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:25:27,401.401 INFO    ] Initializing speech engine...
[2026-06-22 15:25:27,408.408 INFO    ] 2026-06-22 15:25:27
[2026-06-22 15:25:27,706.706 INFO    ] 2026-06-22 15:25:27
[2026-06-22 15:25:27,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:25:27,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:25:27,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:25:28,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:25:28,123.123 INFO    ] time= 22/06/2026 15:25:28
[2026-06-22 15:25:28,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:25:28,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:25:28,283.283 INFO    ] No existing commands found in stream
[2026-06-22 15:25:33,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:25:33,312.312 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-22 15:25:36,370.370 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:25:36,371.371 INFO    ] Checking for system updates...
[2026-06-22 15:25:36,393.393 INFO    ] 200
[2026-06-22 15:25:36,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:25:36,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:25:36,440.440 INFO    ] No update needed
[2026-06-22 15:25:36,443.443 INFO    ] Checking for camera pi updates...
[2026-06-22 15:25:36,476.476 INFO    ] 200
[2026-06-22 15:25:36,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:25:36,524.524 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:25:36,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:25:36,620.620 INFO    ] No camera update needed
[2026-06-22 15:25:36,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:25:36,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:25:36,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:25:36,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:25:38,675.675 INFO    ] ================================================
[2026-06-22 15:25:38,691.691 INFO    ] Launching Daemon at Mon Jun 22 15:25:38 IST 2026
[2026-06-22 15:25:38,703.703 INFO    ] ================================================
[2026-06-22 15:25:39,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:25:39
[2026-06-22 15:25:39,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:25:40,073.073 INFO    ] Initializing speech engine...
[2026-06-22 15:25:40,080.080 INFO    ] 2026-06-22 15:25:40
[2026-06-22 15:25:40,329.329 INFO    ] 2026-06-22 15:25:40
[2026-06-22 15:25:40,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:25:40,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:25:40,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:25:40,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:25:40,810.810 INFO    ] time= 22/06/2026 15:25:40
[2026-06-22 15:25:40,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:25:40,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:25:41,025.025 INFO    ] No existing commands found in stream
[2026-06-22 15:25:46,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:25:46,054.054 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-22 15:25:46,805.805 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:25:46,808.808 INFO    ] Checking for system updates...
[2026-06-22 15:25:46,847.847 INFO    ] 200
[2026-06-22 15:25:46,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:25:46,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:25:46,905.905 INFO    ] No update needed
[2026-06-22 15:25:46,907.907 INFO    ] Checking for camera pi updates...
[2026-06-22 15:25:46,945.945 INFO    ] 200
[2026-06-22 15:25:46,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:25:46,989.989 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:25:47,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:25:47,072.072 INFO    ] No camera update needed
[2026-06-22 15:25:47,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:25:47,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:25:47,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:25:47,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:25:49,129.129 INFO    ] ================================================
[2026-06-22 15:25:49,145.145 INFO    ] Launching Daemon at Mon Jun 22 15:25:49 IST 2026
[2026-06-22 15:25:49,155.155 INFO    ] ================================================
[2026-06-22 15:25:49,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:25:49
[2026-06-22 15:25:50,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:25:50,510.510 INFO    ] Initializing speech engine...
[2026-06-22 15:25:50,515.515 INFO    ] 2026-06-22 15:25:50
[2026-06-22 15:25:50,776.776 INFO    ] 2026-06-22 15:25:50
[2026-06-22 15:25:50,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:25:51,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:25:51,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:25:51,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:25:51,276.276 INFO    ] time= 22/06/2026 15:25:51
[2026-06-22 15:25:51,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:25:51,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:25:51,520.520 INFO    ] No existing commands found in stream
[2026-06-22 15:25:56,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:25:56,540.540 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-22 15:25:58,932.932 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:25:58,934.934 INFO    ] Checking for system updates...
[2026-06-22 15:25:58,956.956 INFO    ] 200
[2026-06-22 15:25:58,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:25:58,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:25:58,989.989 INFO    ] No update needed
[2026-06-22 15:25:58,990.990 INFO    ] Checking for camera pi updates...
[2026-06-22 15:25:59,010.010 INFO    ] 200
[2026-06-22 15:25:59,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:25:59,048.048 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:25:59,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:25:59,232.232 INFO    ] No camera update needed
[2026-06-22 15:25:59,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:25:59,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:25:59,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:25:59,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:26:01,291.291 INFO    ] ================================================
[2026-06-22 15:26:01,307.307 INFO    ] Launching Daemon at Mon Jun 22 15:26:01 IST 2026
[2026-06-22 15:26:01,318.318 INFO    ] ================================================
[2026-06-22 15:26:02,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:26:02
[2026-06-22 15:26:02,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:26:03,105.105 INFO    ] Initializing speech engine...
[2026-06-22 15:26:03,109.109 INFO    ] 2026-06-22 15:26:03
[2026-06-22 15:26:03,429.429 INFO    ] 2026-06-22 15:26:03
[2026-06-22 15:26:03,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:26:03,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:26:03,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:26:03,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:26:03,919.919 INFO    ] time= 22/06/2026 15:26:03
[2026-06-22 15:26:03,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:26:04,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:26:04,128.128 INFO    ] No existing commands found in stream
[2026-06-22 15:26:09,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:26:09,162.162 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-22 15:26:10,917.917 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:26:10,919.919 INFO    ] Checking for system updates...
[2026-06-22 15:26:10,959.959 INFO    ] 200
[2026-06-22 15:26:10,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:26:11,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:26:11,016.016 INFO    ] No update needed
[2026-06-22 15:26:11,019.019 INFO    ] Checking for camera pi updates...
[2026-06-22 15:26:11,056.056 INFO    ] 200
[2026-06-22 15:26:11,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:26:11,099.099 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:26:11,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:26:11,190.190 INFO    ] No camera update needed
[2026-06-22 15:26:11,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:26:11,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:26:11,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:26:11,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:26:13,247.247 INFO    ] ================================================
[2026-06-22 15:26:13,263.263 INFO    ] Launching Daemon at Mon Jun 22 15:26:13 IST 2026
[2026-06-22 15:26:13,274.274 INFO    ] ================================================
[2026-06-22 15:26:13,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:26:13
[2026-06-22 15:26:14,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:26:14,734.734 INFO    ] Initializing speech engine...
[2026-06-22 15:26:14,744.744 INFO    ] 2026-06-22 15:26:14
[2026-06-22 15:26:15,005.005 INFO    ] 2026-06-22 15:26:14
[2026-06-22 15:26:15,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:26:15,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:26:15,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:26:15,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:26:15,553.553 INFO    ] time= 22/06/2026 15:26:15
[2026-06-22 15:26:15,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:26:15,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:26:15,706.706 INFO    ] No existing commands found in stream
[2026-06-22 15:26:20,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:26:20,724.724 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-22 15:26:24,841.841 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:26:24,843.843 INFO    ] Checking for system updates...
[2026-06-22 15:26:24,863.863 INFO    ] 200
[2026-06-22 15:26:24,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:26:24,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:26:24,899.899 INFO    ] No update needed
[2026-06-22 15:26:24,900.900 INFO    ] Checking for camera pi updates...
[2026-06-22 15:26:24,920.920 INFO    ] 200
[2026-06-22 15:26:24,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:26:24,951.951 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:26:25,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:26:25,029.029 INFO    ] No camera update needed
[2026-06-22 15:26:25,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:26:25,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:26:25,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:26:25,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:26:27,086.086 INFO    ] ================================================
[2026-06-22 15:26:27,101.101 INFO    ] Launching Daemon at Mon Jun 22 15:26:27 IST 2026
[2026-06-22 15:26:27,112.112 INFO    ] ================================================
[2026-06-22 15:26:27,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:26:27
[2026-06-22 15:26:28,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:26:28,723.723 INFO    ] Initializing speech engine...
[2026-06-22 15:26:28,736.736 INFO    ] 2026-06-22 15:26:28
[2026-06-22 15:26:29,013.013 INFO    ] 2026-06-22 15:26:28
[2026-06-22 15:26:29,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:26:29,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:26:29,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:26:29,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:26:29,548.548 INFO    ] time= 22/06/2026 15:26:29
[2026-06-22 15:26:29,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:26:29,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:26:29,705.705 INFO    ] No existing commands found in stream
[2026-06-22 15:26:34,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:26:34,738.738 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-22 15:26:37,884.884 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:26:37,886.886 INFO    ] Checking for system updates...
[2026-06-22 15:26:37,906.906 INFO    ] 200
[2026-06-22 15:26:37,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:26:37,938.938 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:26:37,940.940 INFO    ] No update needed
[2026-06-22 15:26:37,942.942 INFO    ] Checking for camera pi updates...
[2026-06-22 15:26:37,961.961 INFO    ] 200
[2026-06-22 15:26:37,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:26:38,007.007 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:26:38,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:26:38,091.091 INFO    ] No camera update needed
[2026-06-22 15:26:38,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:26:38,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:26:38,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:26:38,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:26:40,150.150 INFO    ] ================================================
[2026-06-22 15:26:40,165.165 INFO    ] Launching Daemon at Mon Jun 22 15:26:40 IST 2026
[2026-06-22 15:26:40,176.176 INFO    ] ================================================
[2026-06-22 15:26:40,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:26:40
[2026-06-22 15:26:41,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:26:41,698.698 INFO    ] Initializing speech engine...
[2026-06-22 15:26:41,712.712 INFO    ] 2026-06-22 15:26:41
[2026-06-22 15:26:41,996.996 INFO    ] 2026-06-22 15:26:41
[2026-06-22 15:26:42,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:26:42,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:26:42,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:26:42,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:26:42,501.501 INFO    ] time= 22/06/2026 15:26:42
[2026-06-22 15:26:42,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:26:42,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:26:42,711.711 INFO    ] No existing commands found in stream
[2026-06-22 15:26:47,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:26:47,735.735 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-22 15:26:51,272.272 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:26:51,274.274 INFO    ] Checking for system updates...
[2026-06-22 15:26:51,308.308 INFO    ] 200
[2026-06-22 15:26:51,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:26:51,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:26:51,373.373 INFO    ] No update needed
[2026-06-22 15:26:51,376.376 INFO    ] Checking for camera pi updates...
[2026-06-22 15:26:51,409.409 INFO    ] 200
[2026-06-22 15:26:51,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:26:51,457.457 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:26:51,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:26:51,558.558 INFO    ] No camera update needed
[2026-06-22 15:26:51,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:26:51,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:26:51,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:26:51,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:26:53,614.614 INFO    ] ================================================
[2026-06-22 15:26:53,629.629 INFO    ] Launching Daemon at Mon Jun 22 15:26:53 IST 2026
[2026-06-22 15:26:53,640.640 INFO    ] ================================================
[2026-06-22 15:26:54,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:26:54
[2026-06-22 15:26:54,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:26:55,099.099 INFO    ] Initializing speech engine...
[2026-06-22 15:26:55,109.109 INFO    ] 2026-06-22 15:26:55
[2026-06-22 15:26:55,356.356 INFO    ] 2026-06-22 15:26:55
[2026-06-22 15:26:55,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:26:55,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:26:55,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:26:55,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:26:55,840.840 INFO    ] time= 22/06/2026 15:26:55
[2026-06-22 15:26:55,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:26:55,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:26:56,055.055 INFO    ] No existing commands found in stream
[2026-06-22 15:27:01,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:27:01,084.084 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-22 15:27:03,990.990 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:27:03,993.993 INFO    ] Checking for system updates...
[2026-06-22 15:27:04,033.033 INFO    ] 200
[2026-06-22 15:27:04,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:27:04,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:27:04,091.091 INFO    ] No update needed
[2026-06-22 15:27:04,094.094 INFO    ] Checking for camera pi updates...
[2026-06-22 15:27:04,131.131 INFO    ] 200
[2026-06-22 15:27:04,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:27:04,178.178 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:27:04,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:27:04,260.260 INFO    ] No camera update needed
[2026-06-22 15:27:04,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:27:04,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:27:04,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:27:04,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:27:06,316.316 INFO    ] ================================================
[2026-06-22 15:27:06,332.332 INFO    ] Launching Daemon at Mon Jun 22 15:27:06 IST 2026
[2026-06-22 15:27:06,344.344 INFO    ] ================================================
[2026-06-22 15:27:06,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:27:06
[2026-06-22 15:27:07,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:27:07,941.941 INFO    ] Initializing speech engine...
[2026-06-22 15:27:07,950.950 INFO    ] 2026-06-22 15:27:07
[2026-06-22 15:27:08,237.237 INFO    ] 2026-06-22 15:27:08
[2026-06-22 15:27:08,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:27:08,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:27:08,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:27:08,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:27:08,711.711 INFO    ] time= 22/06/2026 15:27:08
[2026-06-22 15:27:08,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:27:08,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:27:08,944.944 INFO    ] No existing commands found in stream
[2026-06-22 15:27:13,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:27:13,961.961 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-22 15:27:17,672.672 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:27:17,674.674 INFO    ] Checking for system updates...
[2026-06-22 15:27:17,695.695 INFO    ] 200
[2026-06-22 15:27:17,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:27:17,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:27:17,739.739 INFO    ] No update needed
[2026-06-22 15:27:17,741.741 INFO    ] Checking for camera pi updates...
[2026-06-22 15:27:17,776.776 INFO    ] 200
[2026-06-22 15:27:17,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:27:17,824.824 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:27:17,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:27:17,879.879 INFO    ] No camera update needed
[2026-06-22 15:27:17,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:27:17,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:27:17,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:27:17,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:27:19,937.937 INFO    ] ================================================
[2026-06-22 15:27:19,953.953 INFO    ] Launching Daemon at Mon Jun 22 15:27:19 IST 2026
[2026-06-22 15:27:19,964.964 INFO    ] ================================================
[2026-06-22 15:27:20,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:27:20
[2026-06-22 15:27:21,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:27:21,319.319 INFO    ] Initializing speech engine...
[2026-06-22 15:27:21,327.327 INFO    ] 2026-06-22 15:27:21
[2026-06-22 15:27:21,578.578 INFO    ] 2026-06-22 15:27:21
[2026-06-22 15:27:21,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:27:21,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:27:21,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:27:21,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:27:21,953.953 INFO    ] time= 22/06/2026 15:27:21
[2026-06-22 15:27:21,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:27:22,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:27:22,153.153 INFO    ] No existing commands found in stream
[2026-06-22 15:27:27,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:27:27,167.167 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-22 15:27:30,646.646 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:27:30,649.649 INFO    ] Checking for system updates...
[2026-06-22 15:27:30,689.689 INFO    ] 200
[2026-06-22 15:27:30,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:27:30,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:27:30,767.767 INFO    ] No update needed
[2026-06-22 15:27:30,770.770 INFO    ] Checking for camera pi updates...
[2026-06-22 15:27:30,807.807 INFO    ] 200
[2026-06-22 15:27:30,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:27:30,851.851 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:27:30,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:27:30,947.947 INFO    ] No camera update needed
[2026-06-22 15:27:30,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:27:30,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:27:30,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:27:30,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:27:33,007.007 INFO    ] ================================================
[2026-06-22 15:27:33,023.023 INFO    ] Launching Daemon at Mon Jun 22 15:27:33 IST 2026
[2026-06-22 15:27:33,034.034 INFO    ] ================================================
[2026-06-22 15:27:33,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:27:33
[2026-06-22 15:27:34,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:27:34,502.502 INFO    ] Initializing speech engine...
[2026-06-22 15:27:34,509.509 INFO    ] 2026-06-22 15:27:34
[2026-06-22 15:27:34,758.758 INFO    ] 2026-06-22 15:27:34
[2026-06-22 15:27:34,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:27:35,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:27:35,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:27:35,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:27:35,244.244 INFO    ] time= 22/06/2026 15:27:35
[2026-06-22 15:27:35,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:27:35,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:27:35,376.376 INFO    ] No existing commands found in stream
[2026-06-22 15:27:40,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:27:40,398.398 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-22 15:27:43,742.742 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:27:43,743.743 INFO    ] Checking for system updates...
[2026-06-22 15:27:43,776.776 INFO    ] 200
[2026-06-22 15:27:43,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:27:43,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:27:43,841.841 INFO    ] No update needed
[2026-06-22 15:27:43,844.844 INFO    ] Checking for camera pi updates...
[2026-06-22 15:27:43,881.881 INFO    ] 200
[2026-06-22 15:27:43,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:27:43,933.933 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:27:44,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:27:44,019.019 INFO    ] No camera update needed
[2026-06-22 15:27:44,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:27:44,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:27:44,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:27:44,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:27:46,078.078 INFO    ] ================================================
[2026-06-22 15:27:46,095.095 INFO    ] Launching Daemon at Mon Jun 22 15:27:46 IST 2026
[2026-06-22 15:27:46,107.107 INFO    ] ================================================
[2026-06-22 15:27:46,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:27:46
[2026-06-22 15:27:47,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:27:47,665.665 INFO    ] Initializing speech engine...
[2026-06-22 15:27:47,674.674 INFO    ] 2026-06-22 15:27:47
[2026-06-22 15:27:47,957.957 INFO    ] 2026-06-22 15:27:47
[2026-06-22 15:27:48,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:27:48,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:27:48,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:27:48,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:27:48,503.503 INFO    ] time= 22/06/2026 15:27:48
[2026-06-22 15:27:48,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:27:48,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:27:48,662.662 INFO    ] No existing commands found in stream
[2026-06-22 15:27:53,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:27:53,690.690 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-22 15:27:56,559.559 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:27:56,560.560 INFO    ] Checking for system updates...
[2026-06-22 15:27:56,581.581 INFO    ] 200
[2026-06-22 15:27:56,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:27:56,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:27:56,614.614 INFO    ] No update needed
[2026-06-22 15:27:56,616.616 INFO    ] Checking for camera pi updates...
[2026-06-22 15:27:56,635.635 INFO    ] 200
[2026-06-22 15:27:56,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:27:56,660.660 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:27:56,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:27:56,737.737 INFO    ] No camera update needed
[2026-06-22 15:27:56,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:27:56,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:27:56,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:27:56,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:27:58,794.794 INFO    ] ================================================
[2026-06-22 15:27:58,809.809 INFO    ] Launching Daemon at Mon Jun 22 15:27:58 IST 2026
[2026-06-22 15:27:58,820.820 INFO    ] ================================================
[2026-06-22 15:27:59,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:27:59
[2026-06-22 15:28:00,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:28:00,317.317 INFO    ] Initializing speech engine...
[2026-06-22 15:28:00,325.325 INFO    ] 2026-06-22 15:28:00
[2026-06-22 15:28:00,596.596 INFO    ] 2026-06-22 15:28:00
[2026-06-22 15:28:00,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:28:00,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:28:00,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:28:01,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:28:01,089.089 INFO    ] time= 22/06/2026 15:28:01
[2026-06-22 15:28:01,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:28:01,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:28:01,286.286 INFO    ] No existing commands found in stream
[2026-06-22 15:28:06,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:28:06,315.315 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-22 15:28:10,105.105 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:28:10,108.108 INFO    ] Checking for system updates...
[2026-06-22 15:28:10,145.145 INFO    ] 200
[2026-06-22 15:28:10,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:28:10,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:28:10,205.205 INFO    ] No update needed
[2026-06-22 15:28:10,208.208 INFO    ] Checking for camera pi updates...
[2026-06-22 15:28:10,246.246 INFO    ] 200
[2026-06-22 15:28:10,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:28:10,295.295 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:28:10,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:28:10,380.380 INFO    ] No camera update needed
[2026-06-22 15:28:10,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:28:10,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:28:10,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:28:10,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:28:12,437.437 INFO    ] ================================================
[2026-06-22 15:28:12,453.453 INFO    ] Launching Daemon at Mon Jun 22 15:28:12 IST 2026
[2026-06-22 15:28:12,463.463 INFO    ] ================================================
[2026-06-22 15:28:13,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:28:13
[2026-06-22 15:28:13,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:28:13,803.803 INFO    ] Initializing speech engine...
[2026-06-22 15:28:13,812.812 INFO    ] 2026-06-22 15:28:13
[2026-06-22 15:28:14,062.062 INFO    ] 2026-06-22 15:28:14
[2026-06-22 15:28:14,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:28:14,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:28:14,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:28:14,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:28:14,440.440 INFO    ] time= 22/06/2026 15:28:14
[2026-06-22 15:28:14,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:28:14,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:28:14,626.626 INFO    ] No existing commands found in stream
[2026-06-22 15:28:19,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:28:19,654.654 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-22 15:28:21,613.613 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:28:21,616.616 INFO    ] Checking for system updates...
[2026-06-22 15:28:21,651.651 INFO    ] 200
[2026-06-22 15:28:21,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:28:21,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:28:21,715.715 INFO    ] No update needed
[2026-06-22 15:28:21,717.717 INFO    ] Checking for camera pi updates...
[2026-06-22 15:28:21,751.751 INFO    ] 200
[2026-06-22 15:28:21,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:28:21,798.798 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:28:21,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:28:21,874.874 INFO    ] No camera update needed
[2026-06-22 15:28:21,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:28:21,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:28:21,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:28:21,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:28:23,930.930 INFO    ] ================================================
[2026-06-22 15:28:23,945.945 INFO    ] Launching Daemon at Mon Jun 22 15:28:23 IST 2026
[2026-06-22 15:28:23,956.956 INFO    ] ================================================
[2026-06-22 15:28:24,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:28:24
[2026-06-22 15:28:25,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:28:25,389.389 INFO    ] Initializing speech engine...
[2026-06-22 15:28:25,395.395 INFO    ] 2026-06-22 15:28:25
[2026-06-22 15:28:25,644.644 INFO    ] 2026-06-22 15:28:25
[2026-06-22 15:28:25,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:28:25,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:28:25,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:28:26,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:28:26,122.122 INFO    ] time= 22/06/2026 15:28:26
[2026-06-22 15:28:26,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:28:26,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:28:26,310.310 INFO    ] No existing commands found in stream
[2026-06-22 15:28:31,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:28:31,326.326 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-22 15:28:33,517.517 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:28:33,520.520 INFO    ] Checking for system updates...
[2026-06-22 15:28:33,556.556 INFO    ] 200
[2026-06-22 15:28:33,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:28:33,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:28:33,613.613 INFO    ] No update needed
[2026-06-22 15:28:33,616.616 INFO    ] Checking for camera pi updates...
[2026-06-22 15:28:33,650.650 INFO    ] 200
[2026-06-22 15:28:33,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:28:33,693.693 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:28:33,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:28:33,777.777 INFO    ] No camera update needed
[2026-06-22 15:28:33,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:28:33,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:28:33,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:28:33,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:28:35,836.836 INFO    ] ================================================
[2026-06-22 15:28:35,851.851 INFO    ] Launching Daemon at Mon Jun 22 15:28:35 IST 2026
[2026-06-22 15:28:35,862.862 INFO    ] ================================================
[2026-06-22 15:28:36,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:28:36
[2026-06-22 15:28:37,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:28:37,327.327 INFO    ] Initializing speech engine...
[2026-06-22 15:28:37,340.340 INFO    ] 2026-06-22 15:28:37
[2026-06-22 15:28:37,606.606 INFO    ] 2026-06-22 15:28:37
[2026-06-22 15:28:37,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:28:37,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:28:37,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:28:38,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:28:38,132.132 INFO    ] time= 22/06/2026 15:28:38
[2026-06-22 15:28:38,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:28:38,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:28:38,284.284 INFO    ] No existing commands found in stream
[2026-06-22 15:28:43,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:28:43,308.308 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-22 15:28:47,583.583 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:28:47,586.586 INFO    ] Checking for system updates...
[2026-06-22 15:28:47,623.623 INFO    ] 200
[2026-06-22 15:28:47,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:28:47,680.680 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:28:47,683.683 INFO    ] No update needed
[2026-06-22 15:28:47,685.685 INFO    ] Checking for camera pi updates...
[2026-06-22 15:28:47,719.719 INFO    ] 200
[2026-06-22 15:28:47,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:28:47,762.762 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:28:47,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:28:47,845.845 INFO    ] No camera update needed
[2026-06-22 15:28:47,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:28:47,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:28:47,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:28:47,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:28:49,902.902 INFO    ] ================================================
[2026-06-22 15:28:49,917.917 INFO    ] Launching Daemon at Mon Jun 22 15:28:49 IST 2026
[2026-06-22 15:28:49,927.927 INFO    ] ================================================
[2026-06-22 15:28:50,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:28:50
[2026-06-22 15:28:51,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:28:51,298.298 INFO    ] Initializing speech engine...
[2026-06-22 15:28:51,307.307 INFO    ] 2026-06-22 15:28:51
[2026-06-22 15:28:51,559.559 INFO    ] 2026-06-22 15:28:51
[2026-06-22 15:28:51,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:28:51,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:28:51,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:28:51,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:28:52,050.050 INFO    ] time= 22/06/2026 15:28:51
[2026-06-22 15:28:52,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:28:52,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:28:52,265.265 INFO    ] No existing commands found in stream
[2026-06-22 15:28:57,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:28:57,285.285 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-22 15:28:59,102.102 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:28:59,103.103 INFO    ] Checking for system updates...
[2026-06-22 15:28:59,130.130 INFO    ] 200
[2026-06-22 15:28:59,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:28:59,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:28:59,189.189 INFO    ] No update needed
[2026-06-22 15:28:59,191.191 INFO    ] Checking for camera pi updates...
[2026-06-22 15:28:59,233.233 INFO    ] 200
[2026-06-22 15:28:59,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:28:59,277.277 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:28:59,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:28:59,369.369 INFO    ] No camera update needed
[2026-06-22 15:28:59,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:28:59,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:28:59,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:28:59,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:29:01,426.426 INFO    ] ================================================
[2026-06-22 15:29:01,441.441 INFO    ] Launching Daemon at Mon Jun 22 15:29:01 IST 2026
[2026-06-22 15:29:01,452.452 INFO    ] ================================================
[2026-06-22 15:29:02,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:29:02
[2026-06-22 15:29:02,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:29:03,070.070 INFO    ] Initializing speech engine...
[2026-06-22 15:29:03,096.096 INFO    ] 2026-06-22 15:29:03
[2026-06-22 15:29:03,415.415 INFO    ] 2026-06-22 15:29:03
[2026-06-22 15:29:03,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:29:03,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:29:03,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:29:03,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:29:03,806.806 INFO    ] time= 22/06/2026 15:29:03
[2026-06-22 15:29:03,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:29:03,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:29:03,988.988 INFO    ] No existing commands found in stream
[2026-06-22 15:29:09,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:29:09,013.013 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-22 15:29:11,643.643 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:29:11,646.646 INFO    ] Checking for system updates...
[2026-06-22 15:29:11,682.682 INFO    ] 200
[2026-06-22 15:29:11,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:29:11,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:29:11,741.741 INFO    ] No update needed
[2026-06-22 15:29:11,743.743 INFO    ] Checking for camera pi updates...
[2026-06-22 15:29:11,777.777 INFO    ] 200
[2026-06-22 15:29:11,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:29:11,825.825 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:29:11,910.910 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:29:11,913.913 INFO    ] No camera update needed
[2026-06-22 15:29:11,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:29:11,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:29:11,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:29:11,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:29:13,968.968 INFO    ] ================================================
[2026-06-22 15:29:13,983.983 INFO    ] Launching Daemon at Mon Jun 22 15:29:13 IST 2026
[2026-06-22 15:29:14,994.994 INFO    ] ================================================
[2026-06-22 15:29:14,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:29:14
[2026-06-22 15:29:15,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:29:15,366.366 INFO    ] Initializing speech engine...
[2026-06-22 15:29:15,376.376 INFO    ] 2026-06-22 15:29:15
[2026-06-22 15:29:15,627.627 INFO    ] 2026-06-22 15:29:15
[2026-06-22 15:29:15,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:29:15,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:29:15,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:29:16,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:29:16,092.092 INFO    ] time= 22/06/2026 15:29:16
[2026-06-22 15:29:16,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:29:16,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:29:16,323.323 INFO    ] No existing commands found in stream
[2026-06-22 15:29:21,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:29:21,350.350 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-22 15:29:23,388.388 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:29:23,390.390 INFO    ] Checking for system updates...
[2026-06-22 15:29:23,410.410 INFO    ] 200
[2026-06-22 15:29:23,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:29:23,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:29:23,451.451 INFO    ] No update needed
[2026-06-22 15:29:23,453.453 INFO    ] Checking for camera pi updates...
[2026-06-22 15:29:23,487.487 INFO    ] 200
[2026-06-22 15:29:23,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:29:23,537.537 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:29:23,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:29:23,638.638 INFO    ] No camera update needed
[2026-06-22 15:29:23,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:29:23,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:29:23,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:29:23,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:29:25,695.695 INFO    ] ================================================
[2026-06-22 15:29:25,710.710 INFO    ] Launching Daemon at Mon Jun 22 15:29:25 IST 2026
[2026-06-22 15:29:25,720.720 INFO    ] ================================================
[2026-06-22 15:29:26,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:29:26
[2026-06-22 15:29:26,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:29:27,214.214 INFO    ] Initializing speech engine...
[2026-06-22 15:29:27,222.222 INFO    ] 2026-06-22 15:29:27
[2026-06-22 15:29:27,505.505 INFO    ] 2026-06-22 15:29:27
[2026-06-22 15:29:27,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:29:27,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:29:27,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:29:27,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:29:28,040.040 INFO    ] time= 22/06/2026 15:29:27
[2026-06-22 15:29:28,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:29:28,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:29:28,215.215 INFO    ] No existing commands found in stream
[2026-06-22 15:29:33,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:29:33,252.252 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-22 15:29:35,638.638 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:29:35,641.641 INFO    ] Checking for system updates...
[2026-06-22 15:29:35,679.679 INFO    ] 200
[2026-06-22 15:29:35,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:29:35,734.734 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:29:35,737.737 INFO    ] No update needed
[2026-06-22 15:29:35,739.739 INFO    ] Checking for camera pi updates...
[2026-06-22 15:29:35,780.780 INFO    ] 200
[2026-06-22 15:29:35,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:29:35,827.827 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:29:35,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:29:35,930.930 INFO    ] No camera update needed
[2026-06-22 15:29:35,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:29:35,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:29:35,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:29:35,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:29:37,986.986 INFO    ] ================================================
[2026-06-22 15:29:38,001.001 INFO    ] Launching Daemon at Mon Jun 22 15:29:37 IST 2026
[2026-06-22 15:29:38,011.011 INFO    ] ================================================
[2026-06-22 15:29:38,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:29:38
[2026-06-22 15:29:39,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:29:39,349.349 INFO    ] Initializing speech engine...
[2026-06-22 15:29:39,355.355 INFO    ] 2026-06-22 15:29:39
[2026-06-22 15:29:39,603.603 INFO    ] 2026-06-22 15:29:39
[2026-06-22 15:29:39,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:29:39,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:29:39,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:29:40,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:29:40,073.073 INFO    ] time= 22/06/2026 15:29:40
[2026-06-22 15:29:40,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:29:40,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:29:40,315.315 INFO    ] No existing commands found in stream
[2026-06-22 15:29:45,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:29:45,343.343 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-22 15:29:47,537.537 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:29:47,539.539 INFO    ] Checking for system updates...
[2026-06-22 15:29:47,575.575 INFO    ] 200
[2026-06-22 15:29:47,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:29:47,639.639 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:29:47,641.641 INFO    ] No update needed
[2026-06-22 15:29:47,643.643 INFO    ] Checking for camera pi updates...
[2026-06-22 15:29:47,680.680 INFO    ] 200
[2026-06-22 15:29:47,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:29:47,724.724 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:29:47,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:29:47,794.794 INFO    ] No camera update needed
[2026-06-22 15:29:47,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:29:47,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:29:47,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:29:47,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:29:49,853.853 INFO    ] ================================================
[2026-06-22 15:29:49,869.869 INFO    ] Launching Daemon at Mon Jun 22 15:29:49 IST 2026
[2026-06-22 15:29:49,880.880 INFO    ] ================================================
[2026-06-22 15:29:50,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:29:50
[2026-06-22 15:29:51,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:29:51,479.479 INFO    ] Initializing speech engine...
[2026-06-22 15:29:51,488.488 INFO    ] 2026-06-22 15:29:51
[2026-06-22 15:29:51,791.791 INFO    ] 2026-06-22 15:29:51
[2026-06-22 15:29:51,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:29:52,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:29:52,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:29:52,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:29:52,303.303 INFO    ] time= 22/06/2026 15:29:52
[2026-06-22 15:29:52,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:29:52,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:29:52,522.522 INFO    ] No existing commands found in stream
[2026-06-22 15:29:57,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:29:57,559.559 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-22 15:29:58,327.327 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:29:58,329.329 INFO    ] Checking for system updates...
[2026-06-22 15:29:58,355.355 INFO    ] 200
[2026-06-22 15:29:58,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:29:58,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:29:58,424.424 INFO    ] No update needed
[2026-06-22 15:29:58,427.427 INFO    ] Checking for camera pi updates...
[2026-06-22 15:29:58,461.461 INFO    ] 200
[2026-06-22 15:29:58,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:29:58,504.504 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:29:58,594.594 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:29:58,596.596 INFO    ] No camera update needed
[2026-06-22 15:29:58,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:29:58,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:29:58,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:29:58,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:30:00,651.651 INFO    ] ================================================
[2026-06-22 15:30:00,666.666 INFO    ] Launching Daemon at Mon Jun 22 15:30:00 IST 2026
[2026-06-22 15:30:00,677.677 INFO    ] ================================================
[2026-06-22 15:30:01,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:30:01
[2026-06-22 15:30:01,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:30:02,973.973 INFO    ] Initializing speech engine...
[2026-06-22 15:30:02,977.977 INFO    ] 2026-06-22 15:30:02
[2026-06-22 15:30:03,379.379 INFO    ] 2026-06-22 15:30:03
[2026-06-22 15:30:03,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:30:03,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:30:03,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:30:03,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:30:03,761.761 INFO    ] time= 22/06/2026 15:30:03
[2026-06-22 15:30:03,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:30:03,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:30:03,842.842 INFO    ] No existing commands found in stream
[2026-06-22 15:30:08,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:30:08,855.855 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-22 15:30:11,893.893 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:30:11,896.896 INFO    ] Checking for system updates...
[2026-06-22 15:30:11,935.935 INFO    ] 200
[2026-06-22 15:30:11,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:30:11,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:30:11,993.993 INFO    ] No update needed
[2026-06-22 15:30:11,996.996 INFO    ] Checking for camera pi updates...
[2026-06-22 15:30:12,034.034 INFO    ] 200
[2026-06-22 15:30:12,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:30:12,083.083 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:30:12,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:30:12,264.264 INFO    ] No camera update needed
[2026-06-22 15:30:12,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:30:12,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:30:12,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:30:12,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:30:14,321.321 INFO    ] ================================================
[2026-06-22 15:30:14,336.336 INFO    ] Launching Daemon at Mon Jun 22 15:30:14 IST 2026
[2026-06-22 15:30:14,347.347 INFO    ] ================================================
[2026-06-22 15:30:14,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:30:14
[2026-06-22 15:30:15,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:30:15,746.746 INFO    ] Initializing speech engine...
[2026-06-22 15:30:15,754.754 INFO    ] 2026-06-22 15:30:15
[2026-06-22 15:30:16,028.028 INFO    ] 2026-06-22 15:30:16
[2026-06-22 15:30:16,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:30:16,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:30:16,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:30:16,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:30:16,452.452 INFO    ] time= 22/06/2026 15:30:16
[2026-06-22 15:30:16,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:30:16,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:30:16,612.612 INFO    ] No existing commands found in stream
[2026-06-22 15:30:21,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:30:21,626.626 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-22 15:30:23,429.429 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:30:23,431.431 INFO    ] Checking for system updates...
[2026-06-22 15:30:23,468.468 INFO    ] 200
[2026-06-22 15:30:23,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:30:23,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:30:23,530.530 INFO    ] No update needed
[2026-06-22 15:30:23,532.532 INFO    ] Checking for camera pi updates...
[2026-06-22 15:30:23,566.566 INFO    ] 200
[2026-06-22 15:30:23,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:30:23,611.611 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:30:23,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:30:23,686.686 INFO    ] No camera update needed
[2026-06-22 15:30:23,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:30:23,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:30:23,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:30:23,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:30:25,742.742 INFO    ] ================================================
[2026-06-22 15:30:25,758.758 INFO    ] Launching Daemon at Mon Jun 22 15:30:25 IST 2026
[2026-06-22 15:30:25,770.770 INFO    ] ================================================
[2026-06-22 15:30:26,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:30:26
[2026-06-22 15:30:26,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:30:27,137.137 INFO    ] Initializing speech engine...
[2026-06-22 15:30:27,145.145 INFO    ] 2026-06-22 15:30:27
[2026-06-22 15:30:27,425.425 INFO    ] 2026-06-22 15:30:27
[2026-06-22 15:30:27,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:30:27,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:30:27,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:30:27,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:30:27,887.887 INFO    ] time= 22/06/2026 15:30:27
[2026-06-22 15:30:27,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:30:27,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:30:28,098.098 INFO    ] No existing commands found in stream
[2026-06-22 15:30:33,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:30:33,135.135 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-22 15:30:33,676.676 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:30:33,678.678 INFO    ] Checking for system updates...
[2026-06-22 15:30:33,730.730 INFO    ] 200
[2026-06-22 15:30:33,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:30:33,790.790 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:30:33,793.793 INFO    ] No update needed
[2026-06-22 15:30:33,795.795 INFO    ] Checking for camera pi updates...
[2026-06-22 15:30:33,829.829 INFO    ] 200
[2026-06-22 15:30:33,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:30:33,875.875 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:30:33,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:30:33,962.962 INFO    ] No camera update needed
[2026-06-22 15:30:33,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:30:33,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:30:33,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:30:33,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:30:36,019.019 INFO    ] ================================================
[2026-06-22 15:30:36,034.034 INFO    ] Launching Daemon at Mon Jun 22 15:30:36 IST 2026
[2026-06-22 15:30:36,045.045 INFO    ] ================================================
[2026-06-22 15:30:36,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:30:36
[2026-06-22 15:30:37,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:30:37,472.472 INFO    ] Initializing speech engine...
[2026-06-22 15:30:37,478.478 INFO    ] 2026-06-22 15:30:37
[2026-06-22 15:30:37,723.723 INFO    ] 2026-06-22 15:30:37
[2026-06-22 15:30:37,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:30:37,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:30:37,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:30:38,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:30:38,173.173 INFO    ] time= 22/06/2026 15:30:38
[2026-06-22 15:30:38,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:30:38,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:30:38,428.428 INFO    ] No existing commands found in stream
[2026-06-22 15:30:43,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:30:43,447.447 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-22 15:30:45,164.164 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:30:45,167.167 INFO    ] Checking for system updates...
[2026-06-22 15:30:45,203.203 INFO    ] 200
[2026-06-22 15:30:45,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:30:45,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:30:45,265.265 INFO    ] No update needed
[2026-06-22 15:30:45,268.268 INFO    ] Checking for camera pi updates...
[2026-06-22 15:30:45,305.305 INFO    ] 200
[2026-06-22 15:30:45,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:30:45,349.349 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:30:45,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:30:45,458.458 INFO    ] No camera update needed
[2026-06-22 15:30:45,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:30:45,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:30:45,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:30:45,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:30:47,514.514 INFO    ] ================================================
[2026-06-22 15:30:47,529.529 INFO    ] Launching Daemon at Mon Jun 22 15:30:47 IST 2026
[2026-06-22 15:30:47,540.540 INFO    ] ================================================
[2026-06-22 15:30:48,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:30:48
[2026-06-22 15:30:48,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:30:48,902.902 INFO    ] Initializing speech engine...
[2026-06-22 15:30:48,922.922 INFO    ] 2026-06-22 15:30:48
[2026-06-22 15:30:49,196.196 INFO    ] 2026-06-22 15:30:49
[2026-06-22 15:30:49,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:30:49,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:30:49,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:30:49,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:30:49,811.811 INFO    ] time= 22/06/2026 15:30:49
[2026-06-22 15:30:49,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:30:49,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:30:49,980.980 INFO    ] No existing commands found in stream
[2026-06-22 15:30:54,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:30:54,995.995 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-22 15:30:58,387.387 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:30:58,389.389 INFO    ] Checking for system updates...
[2026-06-22 15:30:58,410.410 INFO    ] 200
[2026-06-22 15:30:58,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:30:58,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:30:58,443.443 INFO    ] No update needed
[2026-06-22 15:30:58,445.445 INFO    ] Checking for camera pi updates...
[2026-06-22 15:30:58,465.465 INFO    ] 200
[2026-06-22 15:30:58,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:30:58,506.506 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:30:58,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:30:58,596.596 INFO    ] No camera update needed
[2026-06-22 15:30:58,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:30:58,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:30:58,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:30:58,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:31:00,656.656 INFO    ] ================================================
[2026-06-22 15:31:00,671.671 INFO    ] Launching Daemon at Mon Jun 22 15:31:00 IST 2026
[2026-06-22 15:31:00,682.682 INFO    ] ================================================
[2026-06-22 15:31:01,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:31:01
[2026-06-22 15:31:01,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:31:02,330.330 INFO    ] Initializing speech engine...
[2026-06-22 15:31:02,362.362 INFO    ] 2026-06-22 15:31:02
[2026-06-22 15:31:02,676.676 INFO    ] 2026-06-22 15:31:02
[2026-06-22 15:31:02,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:31:02,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:31:02,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:31:03,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:31:03,111.111 INFO    ] time= 22/06/2026 15:31:03
[2026-06-22 15:31:03,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:31:03,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:31:03,259.259 INFO    ] No existing commands found in stream
[2026-06-22 15:31:08,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:31:08,282.282 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-22 15:31:11,659.659 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:31:11,661.661 INFO    ] Checking for system updates...
[2026-06-22 15:31:11,697.697 INFO    ] 200
[2026-06-22 15:31:11,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:31:11,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:31:11,769.769 INFO    ] No update needed
[2026-06-22 15:31:11,772.772 INFO    ] Checking for camera pi updates...
[2026-06-22 15:31:11,810.810 INFO    ] 200
[2026-06-22 15:31:11,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:31:11,858.858 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:31:11,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:31:11,944.944 INFO    ] No camera update needed
[2026-06-22 15:31:11,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:31:11,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:31:11,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:31:11,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:31:14,001.001 INFO    ] ================================================
[2026-06-22 15:31:14,017.017 INFO    ] Launching Daemon at Mon Jun 22 15:31:14 IST 2026
[2026-06-22 15:31:14,027.027 INFO    ] ================================================
[2026-06-22 15:31:14,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:31:14
[2026-06-22 15:31:15,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:31:15,411.411 INFO    ] Initializing speech engine...
[2026-06-22 15:31:15,416.416 INFO    ] 2026-06-22 15:31:15
[2026-06-22 15:31:15,656.656 INFO    ] 2026-06-22 15:31:15
[2026-06-22 15:31:15,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:31:15,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:31:15,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:31:16,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:31:16,100.100 INFO    ] time= 22/06/2026 15:31:16
[2026-06-22 15:31:16,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:31:16,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:31:16,289.289 INFO    ] No existing commands found in stream
[2026-06-22 15:31:21,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:31:21,305.305 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-22 15:31:23,196.196 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:31:23,199.199 INFO    ] Checking for system updates...
[2026-06-22 15:31:23,236.236 INFO    ] 200
[2026-06-22 15:31:23,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:31:23,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:31:23,299.299 INFO    ] No update needed
[2026-06-22 15:31:23,301.301 INFO    ] Checking for camera pi updates...
[2026-06-22 15:31:23,340.340 INFO    ] 200
[2026-06-22 15:31:23,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:31:23,386.386 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:31:23,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:31:23,466.466 INFO    ] No camera update needed
[2026-06-22 15:31:23,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:31:23,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:31:23,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:31:23,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:31:25,525.525 INFO    ] ================================================
[2026-06-22 15:31:25,541.541 INFO    ] Launching Daemon at Mon Jun 22 15:31:25 IST 2026
[2026-06-22 15:31:25,552.552 INFO    ] ================================================
[2026-06-22 15:31:26,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:31:26
[2026-06-22 15:31:26,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:31:26,909.909 INFO    ] Initializing speech engine...
[2026-06-22 15:31:26,918.918 INFO    ] 2026-06-22 15:31:26
[2026-06-22 15:31:27,169.169 INFO    ] 2026-06-22 15:31:27
[2026-06-22 15:31:27,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:31:27,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:31:27,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:31:27,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:31:27,657.657 INFO    ] time= 22/06/2026 15:31:27
[2026-06-22 15:31:27,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:31:27,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:31:27,901.901 INFO    ] No existing commands found in stream
[2026-06-22 15:31:32,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:31:32,920.920 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-22 15:31:35,064.064 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:31:35,067.067 INFO    ] Checking for system updates...
[2026-06-22 15:31:35,106.106 INFO    ] 200
[2026-06-22 15:31:35,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:31:35,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:31:35,169.169 INFO    ] No update needed
[2026-06-22 15:31:35,172.172 INFO    ] Checking for camera pi updates...
[2026-06-22 15:31:35,205.205 INFO    ] 200
[2026-06-22 15:31:35,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:31:35,248.248 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:31:35,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:31:35,312.312 INFO    ] No camera update needed
[2026-06-22 15:31:35,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:31:35,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:31:35,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:31:35,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:31:37,369.369 INFO    ] ================================================
[2026-06-22 15:31:37,386.386 INFO    ] Launching Daemon at Mon Jun 22 15:31:37 IST 2026
[2026-06-22 15:31:37,397.397 INFO    ] ================================================
[2026-06-22 15:31:37,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:31:37
[2026-06-22 15:31:38,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:31:38,829.829 INFO    ] Initializing speech engine...
[2026-06-22 15:31:38,845.845 INFO    ] 2026-06-22 15:31:38
[2026-06-22 15:31:39,124.124 INFO    ] 2026-06-22 15:31:39
[2026-06-22 15:31:39,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:31:39,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:31:39,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:31:39,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:31:39,736.736 INFO    ] time= 22/06/2026 15:31:39
[2026-06-22 15:31:39,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:31:39,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:31:39,896.896 INFO    ] No existing commands found in stream
[2026-06-22 15:31:44,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:31:44,923.923 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-22 15:31:49,417.417 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:31:49,419.419 INFO    ] Checking for system updates...
[2026-06-22 15:31:49,458.458 INFO    ] 200
[2026-06-22 15:31:49,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:31:49,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:31:49,520.520 INFO    ] No update needed
[2026-06-22 15:31:49,522.522 INFO    ] Checking for camera pi updates...
[2026-06-22 15:31:49,563.563 INFO    ] 200
[2026-06-22 15:31:49,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:31:49,610.610 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:31:49,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:31:49,694.694 INFO    ] No camera update needed
[2026-06-22 15:31:49,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:31:49,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:31:49,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:31:49,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:31:51,750.750 INFO    ] ================================================
[2026-06-22 15:31:51,766.766 INFO    ] Launching Daemon at Mon Jun 22 15:31:51 IST 2026
[2026-06-22 15:31:51,777.777 INFO    ] ================================================
[2026-06-22 15:31:52,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:31:52
[2026-06-22 15:31:52,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:31:53,173.173 INFO    ] Initializing speech engine...
[2026-06-22 15:31:53,186.186 INFO    ] 2026-06-22 15:31:53
[2026-06-22 15:31:53,469.469 INFO    ] 2026-06-22 15:31:53
[2026-06-22 15:31:53,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:31:53,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:31:53,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:31:53,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:31:53,885.885 INFO    ] time= 22/06/2026 15:31:53
[2026-06-22 15:31:53,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:31:53,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:31:54,058.058 INFO    ] No existing commands found in stream
[2026-06-22 15:31:59,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:31:59,092.092 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-22 15:32:00,517.517 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:32:00,519.519 INFO    ] Checking for system updates...
[2026-06-22 15:32:00,547.547 INFO    ] 200
[2026-06-22 15:32:00,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:32:00,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:32:00,607.607 INFO    ] No update needed
[2026-06-22 15:32:00,610.610 INFO    ] Checking for camera pi updates...
[2026-06-22 15:32:00,645.645 INFO    ] 200
[2026-06-22 15:32:00,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:32:00,694.694 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:32:00,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:32:00,798.798 INFO    ] No camera update needed
[2026-06-22 15:32:00,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:32:00,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:32:00,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:32:00,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:32:02,868.868 INFO    ] ================================================
[2026-06-22 15:32:02,889.889 INFO    ] Launching Daemon at Mon Jun 22 15:32:02 IST 2026
[2026-06-22 15:32:02,901.901 INFO    ] ================================================
[2026-06-22 15:32:03,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:32:03
[2026-06-22 15:32:04,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:32:04,582.582 INFO    ] Initializing speech engine...
[2026-06-22 15:32:04,591.591 INFO    ] 2026-06-22 15:32:04
[2026-06-22 15:32:04,880.880 INFO    ] 2026-06-22 15:32:04
[2026-06-22 15:32:04,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:32:05,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:32:05,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:32:05,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:32:05,363.363 INFO    ] time= 22/06/2026 15:32:05
[2026-06-22 15:32:05,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:32:05,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:32:05,593.593 INFO    ] No existing commands found in stream
[2026-06-22 15:32:10,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:32:10,612.612 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-22 15:32:12,824.824 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:32:12,827.827 INFO    ] Checking for system updates...
[2026-06-22 15:32:12,864.864 INFO    ] 200
[2026-06-22 15:32:12,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:32:12,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:32:12,931.931 INFO    ] No update needed
[2026-06-22 15:32:12,934.934 INFO    ] Checking for camera pi updates...
[2026-06-22 15:32:12,972.972 INFO    ] 200
[2026-06-22 15:32:12,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:32:13,021.021 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:32:13,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:32:13,104.104 INFO    ] No camera update needed
[2026-06-22 15:32:13,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:32:13,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:32:13,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:32:13,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:32:15,164.164 INFO    ] ================================================
[2026-06-22 15:32:15,180.180 INFO    ] Launching Daemon at Mon Jun 22 15:32:15 IST 2026
[2026-06-22 15:32:15,190.190 INFO    ] ================================================
[2026-06-22 15:32:15,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:32:15
[2026-06-22 15:32:16,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:32:16,643.643 INFO    ] Initializing speech engine...
[2026-06-22 15:32:16,661.661 INFO    ] 2026-06-22 15:32:16
[2026-06-22 15:32:16,935.935 INFO    ] 2026-06-22 15:32:16
[2026-06-22 15:32:16,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:32:17,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:32:17,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:32:17,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:32:17,353.353 INFO    ] time= 22/06/2026 15:32:17
[2026-06-22 15:32:17,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:32:17,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:32:17,438.438 INFO    ] No existing commands found in stream
[2026-06-22 15:32:22,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:32:22,466.466 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-22 15:32:24,691.691 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:32:24,693.693 INFO    ] Checking for system updates...
[2026-06-22 15:32:24,714.714 INFO    ] 200
[2026-06-22 15:32:24,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:32:24,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:32:24,748.748 INFO    ] No update needed
[2026-06-22 15:32:24,750.750 INFO    ] Checking for camera pi updates...
[2026-06-22 15:32:24,785.785 INFO    ] 200
[2026-06-22 15:32:24,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:32:24,828.828 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:32:24,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:32:24,986.986 INFO    ] No camera update needed
[2026-06-22 15:32:24,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:32:24,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:32:24,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:32:25,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:32:27,041.041 INFO    ] ================================================
[2026-06-22 15:32:27,058.058 INFO    ] Launching Daemon at Mon Jun 22 15:32:27 IST 2026
[2026-06-22 15:32:27,070.070 INFO    ] ================================================
[2026-06-22 15:32:27,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:32:27
[2026-06-22 15:32:28,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:32:28,618.618 INFO    ] Initializing speech engine...
[2026-06-22 15:32:28,630.630 INFO    ] 2026-06-22 15:32:28
[2026-06-22 15:32:28,919.919 INFO    ] 2026-06-22 15:32:28
[2026-06-22 15:32:29,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:32:29,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:32:29,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:32:29,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:32:29,459.459 INFO    ] time= 22/06/2026 15:32:29
[2026-06-22 15:32:29,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:32:29,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:32:29,607.607 INFO    ] No existing commands found in stream
[2026-06-22 15:32:34,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:32:34,633.633 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-22 15:32:36,344.344 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:32:36,347.347 INFO    ] Checking for system updates...
[2026-06-22 15:32:36,385.385 INFO    ] 200
[2026-06-22 15:32:36,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:32:36,442.442 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:32:36,445.445 INFO    ] No update needed
[2026-06-22 15:32:36,448.448 INFO    ] Checking for camera pi updates...
[2026-06-22 15:32:36,483.483 INFO    ] 200
[2026-06-22 15:32:36,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:32:36,532.532 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:32:36,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:32:36,621.621 INFO    ] No camera update needed
[2026-06-22 15:32:36,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:32:36,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:32:36,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:32:36,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:32:38,679.679 INFO    ] ================================================
[2026-06-22 15:32:38,694.694 INFO    ] Launching Daemon at Mon Jun 22 15:32:38 IST 2026
[2026-06-22 15:32:38,705.705 INFO    ] ================================================
[2026-06-22 15:32:39,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:32:39
[2026-06-22 15:32:39,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:32:40,073.073 INFO    ] Initializing speech engine...
[2026-06-22 15:32:40,082.082 INFO    ] 2026-06-22 15:32:40
[2026-06-22 15:32:40,332.332 INFO    ] 2026-06-22 15:32:40
[2026-06-22 15:32:40,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:32:40,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:32:40,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:32:40,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:32:40,750.750 INFO    ] time= 22/06/2026 15:32:40
[2026-06-22 15:32:40,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:32:40,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:32:40,902.902 INFO    ] No existing commands found in stream
[2026-06-22 15:32:45,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:32:45,924.924 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-22 15:32:46,939.939 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:32:46,942.942 INFO    ] Checking for system updates...
[2026-06-22 15:32:46,977.977 INFO    ] 200
[2026-06-22 15:32:46,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:32:47,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:32:47,035.035 INFO    ] No update needed
[2026-06-22 15:32:47,038.038 INFO    ] Checking for camera pi updates...
[2026-06-22 15:32:47,072.072 INFO    ] 200
[2026-06-22 15:32:47,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:32:47,120.120 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:32:47,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:32:47,211.211 INFO    ] No camera update needed
[2026-06-22 15:32:47,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:32:47,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:32:47,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:32:47,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:32:49,268.268 INFO    ] ================================================
[2026-06-22 15:32:49,282.282 INFO    ] Launching Daemon at Mon Jun 22 15:32:49 IST 2026
[2026-06-22 15:32:49,293.293 INFO    ] ================================================
[2026-06-22 15:32:49,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:32:49
[2026-06-22 15:32:50,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:32:50,767.767 INFO    ] Initializing speech engine...
[2026-06-22 15:32:50,781.781 INFO    ] 2026-06-22 15:32:50
[2026-06-22 15:32:51,067.067 INFO    ] 2026-06-22 15:32:51
[2026-06-22 15:32:51,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:32:51,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:32:51,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:32:51,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:32:51,600.600 INFO    ] time= 22/06/2026 15:32:51
[2026-06-22 15:32:51,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:32:51,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:32:51,742.742 INFO    ] No existing commands found in stream
[2026-06-22 15:32:56,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:32:56,772.772 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-22 15:33:01,157.157 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:33:01,160.160 INFO    ] Checking for system updates...
[2026-06-22 15:33:01,202.202 INFO    ] 200
[2026-06-22 15:33:01,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:33:01,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:33:01,277.277 INFO    ] No update needed
[2026-06-22 15:33:01,279.279 INFO    ] Checking for camera pi updates...
[2026-06-22 15:33:01,314.314 INFO    ] 200
[2026-06-22 15:33:01,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:33:01,363.363 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:33:01,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:33:01,466.466 INFO    ] No camera update needed
[2026-06-22 15:33:01,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:33:01,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:33:01,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:33:01,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:33:03,524.524 INFO    ] ================================================
[2026-06-22 15:33:03,540.540 INFO    ] Launching Daemon at Mon Jun 22 15:33:03 IST 2026
[2026-06-22 15:33:03,551.551 INFO    ] ================================================
[2026-06-22 15:33:04,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:33:04
[2026-06-22 15:33:04,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:33:05,021.021 INFO    ] Initializing speech engine...
[2026-06-22 15:33:05,031.031 INFO    ] 2026-06-22 15:33:05
[2026-06-22 15:33:05,281.281 INFO    ] 2026-06-22 15:33:05
[2026-06-22 15:33:05,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:33:05,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:33:05,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:33:05,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:33:05,754.754 INFO    ] time= 22/06/2026 15:33:05
[2026-06-22 15:33:05,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:33:05,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:33:05,978.978 INFO    ] No existing commands found in stream
[2026-06-22 15:33:11,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:33:11,005.005 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-22 15:33:14,777.777 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:33:14,780.780 INFO    ] Checking for system updates...
[2026-06-22 15:33:14,816.816 INFO    ] 200
[2026-06-22 15:33:14,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:33:14,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:33:14,882.882 INFO    ] No update needed
[2026-06-22 15:33:14,884.884 INFO    ] Checking for camera pi updates...
[2026-06-22 15:33:14,918.918 INFO    ] 200
[2026-06-22 15:33:14,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:33:14,961.961 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:33:15,074.074 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:33:15,076.076 INFO    ] No camera update needed
[2026-06-22 15:33:15,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:33:15,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:33:15,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:33:15,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:33:17,134.134 INFO    ] ================================================
[2026-06-22 15:33:17,149.149 INFO    ] Launching Daemon at Mon Jun 22 15:33:17 IST 2026
[2026-06-22 15:33:17,159.159 INFO    ] ================================================
[2026-06-22 15:33:17,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:33:17
[2026-06-22 15:33:18,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:33:18,555.555 INFO    ] Initializing speech engine...
[2026-06-22 15:33:18,564.564 INFO    ] 2026-06-22 15:33:18
[2026-06-22 15:33:18,826.826 INFO    ] 2026-06-22 15:33:18
[2026-06-22 15:33:18,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:33:19,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:33:19,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:33:19,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:33:19,370.370 INFO    ] time= 22/06/2026 15:33:19
[2026-06-22 15:33:19,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:33:19,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:33:19,521.521 INFO    ] No existing commands found in stream
[2026-06-22 15:33:24,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:33:24,539.539 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-22 15:33:28,531.531 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:33:28,533.533 INFO    ] Checking for system updates...
[2026-06-22 15:33:28,573.573 INFO    ] 200
[2026-06-22 15:33:28,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:33:28,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:33:28,632.632 INFO    ] No update needed
[2026-06-22 15:33:28,634.634 INFO    ] Checking for camera pi updates...
[2026-06-22 15:33:28,668.668 INFO    ] 200
[2026-06-22 15:33:28,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:33:28,712.712 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:33:28,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:33:28,795.795 INFO    ] No camera update needed
[2026-06-22 15:33:28,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:33:28,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:33:28,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:33:28,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:33:30,850.850 INFO    ] ================================================
[2026-06-22 15:33:30,866.866 INFO    ] Launching Daemon at Mon Jun 22 15:33:30 IST 2026
[2026-06-22 15:33:30,877.877 INFO    ] ================================================
[2026-06-22 15:33:31,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:33:31
[2026-06-22 15:33:32,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:33:32,496.496 INFO    ] Initializing speech engine...
[2026-06-22 15:33:32,507.507 INFO    ] 2026-06-22 15:33:32
[2026-06-22 15:33:32,802.802 INFO    ] 2026-06-22 15:33:32
[2026-06-22 15:33:32,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:33:33,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:33:33,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:33:33,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:33:33,296.296 INFO    ] time= 22/06/2026 15:33:33
[2026-06-22 15:33:33,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:33:33,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:33:33,506.506 INFO    ] No existing commands found in stream
[2026-06-22 15:33:38,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:33:38,535.535 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-22 15:33:40,597.597 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:33:40,599.599 INFO    ] Checking for system updates...
[2026-06-22 15:33:40,621.621 INFO    ] 200
[2026-06-22 15:33:40,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:33:40,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:33:40,690.690 INFO    ] No update needed
[2026-06-22 15:33:40,693.693 INFO    ] Checking for camera pi updates...
[2026-06-22 15:33:40,728.728 INFO    ] 200
[2026-06-22 15:33:40,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:33:40,773.773 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:33:40,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:33:40,859.859 INFO    ] No camera update needed
[2026-06-22 15:33:40,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:33:40,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:33:40,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:33:40,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:33:42,919.919 INFO    ] ================================================
[2026-06-22 15:33:42,935.935 INFO    ] Launching Daemon at Mon Jun 22 15:33:42 IST 2026
[2026-06-22 15:33:42,946.946 INFO    ] ================================================
[2026-06-22 15:33:43,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:33:43
[2026-06-22 15:33:44,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:33:44,411.411 INFO    ] Initializing speech engine...
[2026-06-22 15:33:44,418.418 INFO    ] 2026-06-22 15:33:44
[2026-06-22 15:33:44,679.679 INFO    ] 2026-06-22 15:33:44
[2026-06-22 15:33:44,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:33:44,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:33:44,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:33:45,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:33:45,166.166 INFO    ] time= 22/06/2026 15:33:45
[2026-06-22 15:33:45,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:33:45,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:33:45,366.366 INFO    ] No existing commands found in stream
[2026-06-22 15:33:50,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:33:50,393.393 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-22 15:33:51,428.428 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:33:51,430.430 INFO    ] Checking for system updates...
[2026-06-22 15:33:51,455.455 INFO    ] 200
[2026-06-22 15:33:51,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:33:51,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:33:51,489.489 INFO    ] No update needed
[2026-06-22 15:33:51,490.490 INFO    ] Checking for camera pi updates...
[2026-06-22 15:33:51,510.510 INFO    ] 200
[2026-06-22 15:33:51,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:33:51,549.549 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:33:51,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:33:51,626.626 INFO    ] No camera update needed
[2026-06-22 15:33:51,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:33:51,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:33:51,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:33:51,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:33:53,683.683 INFO    ] ================================================
[2026-06-22 15:33:53,698.698 INFO    ] Launching Daemon at Mon Jun 22 15:33:53 IST 2026
[2026-06-22 15:33:53,709.709 INFO    ] ================================================
[2026-06-22 15:33:54,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:33:54
[2026-06-22 15:33:54,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:33:55,029.029 INFO    ] Initializing speech engine...
[2026-06-22 15:33:55,043.043 INFO    ] 2026-06-22 15:33:55
[2026-06-22 15:33:55,309.309 INFO    ] 2026-06-22 15:33:55
[2026-06-22 15:33:55,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:33:55,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:33:55,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:33:55,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:33:55,691.691 INFO    ] time= 22/06/2026 15:33:55
[2026-06-22 15:33:55,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:33:55,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:33:55,885.885 INFO    ] No existing commands found in stream
[2026-06-22 15:34:00,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:34:00,904.904 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-22 15:34:02,345.345 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:34:02,348.348 INFO    ] Checking for system updates...
[2026-06-22 15:34:02,395.395 INFO    ] 200
[2026-06-22 15:34:02,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:34:02,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:34:02,463.463 INFO    ] No update needed
[2026-06-22 15:34:02,467.467 INFO    ] Checking for camera pi updates...
[2026-06-22 15:34:02,521.521 INFO    ] 200
[2026-06-22 15:34:02,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:34:02,590.590 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:34:02,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:34:02,645.645 INFO    ] No camera update needed
[2026-06-22 15:34:02,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:34:02,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:34:02,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:34:02,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:34:04,704.704 INFO    ] ================================================
[2026-06-22 15:34:04,720.720 INFO    ] Launching Daemon at Mon Jun 22 15:34:04 IST 2026
[2026-06-22 15:34:04,731.731 INFO    ] ================================================
[2026-06-22 15:34:05,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:34:05
[2026-06-22 15:34:05,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:34:06,216.216 INFO    ] Initializing speech engine...
[2026-06-22 15:34:06,226.226 INFO    ] 2026-06-22 15:34:06
[2026-06-22 15:34:06,494.494 INFO    ] 2026-06-22 15:34:06
[2026-06-22 15:34:06,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:34:06,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:34:06,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:34:06,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:34:06,974.974 INFO    ] time= 22/06/2026 15:34:06
[2026-06-22 15:34:07,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:34:07,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:34:07,183.183 INFO    ] No existing commands found in stream
[2026-06-22 15:34:12,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:34:12,217.217 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-22 15:34:12,973.973 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:34:12,976.976 INFO    ] Checking for system updates...
[2026-06-22 15:34:13,012.012 INFO    ] 200
[2026-06-22 15:34:13,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:34:13,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:34:13,072.072 INFO    ] No update needed
[2026-06-22 15:34:13,075.075 INFO    ] Checking for camera pi updates...
[2026-06-22 15:34:13,113.113 INFO    ] 200
[2026-06-22 15:34:13,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:34:13,156.156 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:34:13,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:34:13,222.222 INFO    ] No camera update needed
[2026-06-22 15:34:13,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:34:13,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:34:13,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:34:13,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:34:15,280.280 INFO    ] ================================================
[2026-06-22 15:34:15,295.295 INFO    ] Launching Daemon at Mon Jun 22 15:34:15 IST 2026
[2026-06-22 15:34:15,306.306 INFO    ] ================================================
[2026-06-22 15:34:15,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:34:15
[2026-06-22 15:34:16,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:34:16,678.678 INFO    ] Initializing speech engine...
[2026-06-22 15:34:16,688.688 INFO    ] 2026-06-22 15:34:16
[2026-06-22 15:34:16,952.952 INFO    ] 2026-06-22 15:34:16
[2026-06-22 15:34:17,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:34:17,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:34:17,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:34:17,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:34:17,500.500 INFO    ] time= 22/06/2026 15:34:17
[2026-06-22 15:34:17,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:34:17,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:34:17,655.655 INFO    ] No existing commands found in stream
[2026-06-22 15:34:22,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:34:22,687.687 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-22 15:34:27,138.138 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:34:27,141.141 INFO    ] Checking for system updates...
[2026-06-22 15:34:27,178.178 INFO    ] 200
[2026-06-22 15:34:27,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:34:27,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:34:27,241.241 INFO    ] No update needed
[2026-06-22 15:34:27,243.243 INFO    ] Checking for camera pi updates...
[2026-06-22 15:34:27,268.268 INFO    ] 200
[2026-06-22 15:34:27,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:34:27,295.295 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:34:27,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:34:27,473.473 INFO    ] No camera update needed
[2026-06-22 15:34:27,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:34:27,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:34:27,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:34:27,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:34:29,542.542 INFO    ] ================================================
[2026-06-22 15:34:29,557.557 INFO    ] Launching Daemon at Mon Jun 22 15:34:29 IST 2026
[2026-06-22 15:34:29,568.568 INFO    ] ================================================
[2026-06-22 15:34:30,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:34:30
[2026-06-22 15:34:30,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:34:30,994.994 INFO    ] Initializing speech engine...
[2026-06-22 15:34:31,000.000 INFO    ] 2026-06-22 15:34:30
[2026-06-22 15:34:31,244.244 INFO    ] 2026-06-22 15:34:31
[2026-06-22 15:34:31,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:34:31,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:34:31,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:34:31,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:34:31,757.757 INFO    ] time= 22/06/2026 15:34:31
[2026-06-22 15:34:31,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:34:31,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:34:32,026.026 INFO    ] No existing commands found in stream
[2026-06-22 15:34:37,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:34:37,059.059 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-22 15:34:38,387.387 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:34:38,388.388 INFO    ] Checking for system updates...
[2026-06-22 15:34:38,409.409 INFO    ] 200
[2026-06-22 15:34:38,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:34:38,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:34:38,453.453 INFO    ] No update needed
[2026-06-22 15:34:38,456.456 INFO    ] Checking for camera pi updates...
[2026-06-22 15:34:38,490.490 INFO    ] 200
[2026-06-22 15:34:38,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:34:38,532.532 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:34:38,637.637 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:34:38,640.640 INFO    ] No camera update needed
[2026-06-22 15:34:38,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:34:38,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:34:38,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:34:38,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:34:40,697.697 INFO    ] ================================================
[2026-06-22 15:34:40,712.712 INFO    ] Launching Daemon at Mon Jun 22 15:34:40 IST 2026
[2026-06-22 15:34:40,723.723 INFO    ] ================================================
[2026-06-22 15:34:41,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:34:41
[2026-06-22 15:34:41,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:34:42,228.228 INFO    ] Initializing speech engine...
[2026-06-22 15:34:42,235.235 INFO    ] 2026-06-22 15:34:42
[2026-06-22 15:34:42,519.519 INFO    ] 2026-06-22 15:34:42
[2026-06-22 15:34:42,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:34:42,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:34:42,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:34:43,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:34:43,057.057 INFO    ] time= 22/06/2026 15:34:43
[2026-06-22 15:34:43,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:34:43,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:34:43,212.212 INFO    ] No existing commands found in stream
[2026-06-22 15:34:48,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:34:48,239.239 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-22 15:34:48,883.883 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:34:48,887.887 INFO    ] Checking for system updates...
[2026-06-22 15:34:48,924.924 INFO    ] 200
[2026-06-22 15:34:48,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:34:48,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:34:48,989.989 INFO    ] No update needed
[2026-06-22 15:34:48,992.992 INFO    ] Checking for camera pi updates...
[2026-06-22 15:34:49,027.027 INFO    ] 200
[2026-06-22 15:34:49,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:34:49,076.076 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:34:49,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:34:49,158.158 INFO    ] No camera update needed
[2026-06-22 15:34:49,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:34:49,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:34:49,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:34:49,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:34:51,212.212 INFO    ] ================================================
[2026-06-22 15:34:51,228.228 INFO    ] Launching Daemon at Mon Jun 22 15:34:51 IST 2026
[2026-06-22 15:34:51,238.238 INFO    ] ================================================
[2026-06-22 15:34:51,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:34:51
[2026-06-22 15:34:52,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:34:52,645.645 INFO    ] Initializing speech engine...
[2026-06-22 15:34:52,668.668 INFO    ] 2026-06-22 15:34:52
[2026-06-22 15:34:52,936.936 INFO    ] 2026-06-22 15:34:52
[2026-06-22 15:34:52,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:34:53,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:34:53,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:34:53,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:34:53,409.409 INFO    ] time= 22/06/2026 15:34:53
[2026-06-22 15:34:53,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:34:53,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:34:53,627.627 INFO    ] No existing commands found in stream
[2026-06-22 15:34:58,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:34:58,660.660 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-22 15:35:03,863.863 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:35:03,866.866 INFO    ] Checking for system updates...
[2026-06-22 15:35:03,903.903 INFO    ] 200
[2026-06-22 15:35:03,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:35:03,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:35:03,964.964 INFO    ] No update needed
[2026-06-22 15:35:03,967.967 INFO    ] Checking for camera pi updates...
[2026-06-22 15:35:04,002.002 INFO    ] 200
[2026-06-22 15:35:04,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:35:04,047.047 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:35:04,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:35:04,136.136 INFO    ] No camera update needed
[2026-06-22 15:35:04,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:35:04,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:35:04,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:35:04,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:35:06,195.195 INFO    ] ================================================
[2026-06-22 15:35:06,211.211 INFO    ] Launching Daemon at Mon Jun 22 15:35:06 IST 2026
[2026-06-22 15:35:06,221.221 INFO    ] ================================================
[2026-06-22 15:35:06,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:35:06
[2026-06-22 15:35:07,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:35:07,676.676 INFO    ] Initializing speech engine...
[2026-06-22 15:35:07,701.701 INFO    ] 2026-06-22 15:35:07
[2026-06-22 15:35:07,972.972 INFO    ] 2026-06-22 15:35:07
[2026-06-22 15:35:08,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:35:08,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:35:08,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:35:08,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:35:08,477.477 INFO    ] time= 22/06/2026 15:35:08
[2026-06-22 15:35:08,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:35:08,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:35:08,687.687 INFO    ] No existing commands found in stream
[2026-06-22 15:35:13,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:35:13,710.710 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-22 15:35:16,972.972 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:35:16,975.975 INFO    ] Checking for system updates...
[2026-06-22 15:35:17,011.011 INFO    ] 200
[2026-06-22 15:35:17,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:35:17,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:35:17,068.068 INFO    ] No update needed
[2026-06-22 15:35:17,071.071 INFO    ] Checking for camera pi updates...
[2026-06-22 15:35:17,105.105 INFO    ] 200
[2026-06-22 15:35:17,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:35:17,155.155 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:35:17,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:35:17,244.244 INFO    ] No camera update needed
[2026-06-22 15:35:17,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:35:17,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:35:17,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:35:17,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:35:19,299.299 INFO    ] ================================================
[2026-06-22 15:35:19,314.314 INFO    ] Launching Daemon at Mon Jun 22 15:35:19 IST 2026
[2026-06-22 15:35:19,325.325 INFO    ] ================================================
[2026-06-22 15:35:19,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:35:19
[2026-06-22 15:35:20,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:35:20,659.659 INFO    ] Initializing speech engine...
[2026-06-22 15:35:20,669.669 INFO    ] 2026-06-22 15:35:20
[2026-06-22 15:35:20,915.915 INFO    ] 2026-06-22 15:35:20
[2026-06-22 15:35:20,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:35:21,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:35:21,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:35:21,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:35:21,379.379 INFO    ] time= 22/06/2026 15:35:21
[2026-06-22 15:35:21,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:35:21,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:35:21,603.603 INFO    ] No existing commands found in stream
[2026-06-22 15:35:26,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:35:26,633.633 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-22 15:35:29,556.556 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:35:29,558.558 INFO    ] Checking for system updates...
[2026-06-22 15:35:29,595.595 INFO    ] 200
[2026-06-22 15:35:29,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:35:29,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:35:29,653.653 INFO    ] No update needed
[2026-06-22 15:35:29,655.655 INFO    ] Checking for camera pi updates...
[2026-06-22 15:35:29,689.689 INFO    ] 200
[2026-06-22 15:35:29,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:35:29,733.733 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:35:29,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:35:29,845.845 INFO    ] No camera update needed
[2026-06-22 15:35:29,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:35:29,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:35:29,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:35:29,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:35:31,905.905 INFO    ] ================================================
[2026-06-22 15:35:31,922.922 INFO    ] Launching Daemon at Mon Jun 22 15:35:31 IST 2026
[2026-06-22 15:35:31,934.934 INFO    ] ================================================
[2026-06-22 15:35:32,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:35:32
[2026-06-22 15:35:33,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:35:33,553.553 INFO    ] Initializing speech engine...
[2026-06-22 15:35:33,564.564 INFO    ] 2026-06-22 15:35:33
[2026-06-22 15:35:33,875.875 INFO    ] 2026-06-22 15:35:33
[2026-06-22 15:35:33,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:35:34,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:35:34,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:35:34,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:35:34,384.384 INFO    ] time= 22/06/2026 15:35:34
[2026-06-22 15:35:34,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:35:34,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:35:34,542.542 INFO    ] No existing commands found in stream
[2026-06-22 15:35:39,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:35:39,579.579 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-22 15:35:43,680.680 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:35:43,681.681 INFO    ] Checking for system updates...
[2026-06-22 15:35:43,703.703 INFO    ] 200
[2026-06-22 15:35:43,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:35:43,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:35:43,756.756 INFO    ] No update needed
[2026-06-22 15:35:43,758.758 INFO    ] Checking for camera pi updates...
[2026-06-22 15:35:43,792.792 INFO    ] 200
[2026-06-22 15:35:43,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:35:43,836.836 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:35:43,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:35:43,923.923 INFO    ] No camera update needed
[2026-06-22 15:35:43,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:35:43,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:35:43,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:35:43,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:35:45,980.980 INFO    ] ================================================
[2026-06-22 15:35:46,995.995 INFO    ] Launching Daemon at Mon Jun 22 15:35:45 IST 2026
[2026-06-22 15:35:46,006.006 INFO    ] ================================================
[2026-06-22 15:35:46,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:35:46
[2026-06-22 15:35:47,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:35:47,399.399 INFO    ] Initializing speech engine...
[2026-06-22 15:35:47,409.409 INFO    ] 2026-06-22 15:35:47
[2026-06-22 15:35:47,664.664 INFO    ] 2026-06-22 15:35:47
[2026-06-22 15:35:47,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:35:47,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:35:47,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:35:48,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:35:48,044.044 INFO    ] time= 22/06/2026 15:35:48
[2026-06-22 15:35:48,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:35:48,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:35:48,249.249 INFO    ] No existing commands found in stream
[2026-06-22 15:35:53,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:35:53,268.268 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-22 15:35:54,075.075 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:35:54,077.077 INFO    ] Checking for system updates...
[2026-06-22 15:35:54,099.099 INFO    ] 200
[2026-06-22 15:35:54,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:35:54,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:35:54,156.156 INFO    ] No update needed
[2026-06-22 15:35:54,159.159 INFO    ] Checking for camera pi updates...
[2026-06-22 15:35:54,199.199 INFO    ] 200
[2026-06-22 15:35:54,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:35:54,246.246 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:35:54,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:35:54,330.330 INFO    ] No camera update needed
[2026-06-22 15:35:54,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:35:54,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:35:54,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:35:54,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:35:56,390.390 INFO    ] ================================================
[2026-06-22 15:35:56,405.405 INFO    ] Launching Daemon at Mon Jun 22 15:35:56 IST 2026
[2026-06-22 15:35:56,416.416 INFO    ] ================================================
[2026-06-22 15:35:57,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:35:57
[2026-06-22 15:35:57,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:35:57,764.764 INFO    ] Initializing speech engine...
[2026-06-22 15:35:57,772.772 INFO    ] 2026-06-22 15:35:57
[2026-06-22 15:35:58,076.076 INFO    ] 2026-06-22 15:35:58
[2026-06-22 15:35:58,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:35:58,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:35:58,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:35:58,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:35:58,543.543 INFO    ] time= 22/06/2026 15:35:58
[2026-06-22 15:35:58,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:35:58,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:35:58,788.788 INFO    ] No existing commands found in stream
[2026-06-22 15:36:03,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:36:03,813.813 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-22 15:36:05,385.385 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:36:05,388.388 INFO    ] Checking for system updates...
[2026-06-22 15:36:05,428.428 INFO    ] 200
[2026-06-22 15:36:05,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:36:05,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:36:05,486.486 INFO    ] No update needed
[2026-06-22 15:36:05,488.488 INFO    ] Checking for camera pi updates...
[2026-06-22 15:36:05,523.523 INFO    ] 200
[2026-06-22 15:36:05,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:36:05,571.571 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:36:05,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:36:05,656.656 INFO    ] No camera update needed
[2026-06-22 15:36:05,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:36:05,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:36:05,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:36:05,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:36:07,726.726 INFO    ] ================================================
[2026-06-22 15:36:07,741.741 INFO    ] Launching Daemon at Mon Jun 22 15:36:07 IST 2026
[2026-06-22 15:36:07,752.752 INFO    ] ================================================
[2026-06-22 15:36:08,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:36:08
[2026-06-22 15:36:08,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:36:09,190.190 INFO    ] Initializing speech engine...
[2026-06-22 15:36:09,197.197 INFO    ] 2026-06-22 15:36:09
[2026-06-22 15:36:09,487.487 INFO    ] 2026-06-22 15:36:09
[2026-06-22 15:36:09,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:36:09,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:36:09,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:36:09,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:36:09,897.897 INFO    ] time= 22/06/2026 15:36:09
[2026-06-22 15:36:09,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:36:09,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:36:09,988.988 INFO    ] No existing commands found in stream
[2026-06-22 15:36:15,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:36:15,006.006 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-22 15:36:15,722.722 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:36:15,724.724 INFO    ] Checking for system updates...
[2026-06-22 15:36:15,760.760 INFO    ] 200
[2026-06-22 15:36:15,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:36:15,815.815 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:36:15,817.817 INFO    ] No update needed
[2026-06-22 15:36:15,819.819 INFO    ] Checking for camera pi updates...
[2026-06-22 15:36:15,853.853 INFO    ] 200
[2026-06-22 15:36:15,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:36:15,899.899 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:36:15,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:36:15,987.987 INFO    ] No camera update needed
[2026-06-22 15:36:15,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:36:15,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:36:15,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:36:16,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:36:18,042.042 INFO    ] ================================================
[2026-06-22 15:36:18,057.057 INFO    ] Launching Daemon at Mon Jun 22 15:36:18 IST 2026
[2026-06-22 15:36:18,069.069 INFO    ] ================================================
[2026-06-22 15:36:18,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:36:18
[2026-06-22 15:36:19,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:36:19,389.389 INFO    ] Initializing speech engine...
[2026-06-22 15:36:19,398.398 INFO    ] 2026-06-22 15:36:19
[2026-06-22 15:36:19,688.688 INFO    ] 2026-06-22 15:36:19
[2026-06-22 15:36:19,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:36:19,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:36:19,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:36:20,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:36:20,177.177 INFO    ] time= 22/06/2026 15:36:20
[2026-06-22 15:36:20,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:36:20,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:36:20,350.350 INFO    ] No existing commands found in stream
[2026-06-22 15:36:25,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:36:25,372.372 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-22 15:36:29,642.642 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:36:29,645.645 INFO    ] Checking for system updates...
[2026-06-22 15:36:29,680.680 INFO    ] 200
[2026-06-22 15:36:29,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:36:29,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:36:29,739.739 INFO    ] No update needed
[2026-06-22 15:36:29,741.741 INFO    ] Checking for camera pi updates...
[2026-06-22 15:36:29,776.776 INFO    ] 200
[2026-06-22 15:36:29,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:36:29,819.819 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:36:29,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:36:29,999.999 INFO    ] No camera update needed
[2026-06-22 15:36:30,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:36:30,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:36:30,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:36:30,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:36:32,057.057 INFO    ] ================================================
[2026-06-22 15:36:32,072.072 INFO    ] Launching Daemon at Mon Jun 22 15:36:32 IST 2026
[2026-06-22 15:36:32,084.084 INFO    ] ================================================
[2026-06-22 15:36:32,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:36:32
[2026-06-22 15:36:33,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:36:33,602.602 INFO    ] Initializing speech engine...
[2026-06-22 15:36:33,612.612 INFO    ] 2026-06-22 15:36:33
[2026-06-22 15:36:33,877.877 INFO    ] 2026-06-22 15:36:33
[2026-06-22 15:36:33,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:36:34,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:36:34,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:36:34,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:36:34,290.290 INFO    ] time= 22/06/2026 15:36:34
[2026-06-22 15:36:34,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:36:34,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:36:34,483.483 INFO    ] No existing commands found in stream
[2026-06-22 15:36:39,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:36:39,511.511 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-22 15:36:41,180.180 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:36:41,182.182 INFO    ] Checking for system updates...
[2026-06-22 15:36:41,203.203 INFO    ] 200
[2026-06-22 15:36:41,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:36:41,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:36:41,254.254 INFO    ] No update needed
[2026-06-22 15:36:41,257.257 INFO    ] Checking for camera pi updates...
[2026-06-22 15:36:41,291.291 INFO    ] 200
[2026-06-22 15:36:41,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:36:41,336.336 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:36:41,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:36:41,443.443 INFO    ] No camera update needed
[2026-06-22 15:36:41,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:36:41,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:36:41,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:36:41,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:36:43,502.502 INFO    ] ================================================
[2026-06-22 15:36:43,517.517 INFO    ] Launching Daemon at Mon Jun 22 15:36:43 IST 2026
[2026-06-22 15:36:43,528.528 INFO    ] ================================================
[2026-06-22 15:36:44,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:36:44
[2026-06-22 15:36:44,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:36:44,872.872 INFO    ] Initializing speech engine...
[2026-06-22 15:36:44,879.879 INFO    ] 2026-06-22 15:36:44
[2026-06-22 15:36:45,175.175 INFO    ] 2026-06-22 15:36:45
[2026-06-22 15:36:45,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:36:45,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:36:45,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:36:45,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:36:45,667.667 INFO    ] time= 22/06/2026 15:36:45
[2026-06-22 15:36:45,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:36:45,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:36:45,870.870 INFO    ] No existing commands found in stream
[2026-06-22 15:36:50,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:36:50,885.885 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-22 15:36:54,414.414 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:36:54,416.416 INFO    ] Checking for system updates...
[2026-06-22 15:36:54,437.437 INFO    ] 200
[2026-06-22 15:36:54,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:36:54,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:36:54,496.496 INFO    ] No update needed
[2026-06-22 15:36:54,499.499 INFO    ] Checking for camera pi updates...
[2026-06-22 15:36:54,532.532 INFO    ] 200
[2026-06-22 15:36:54,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:36:54,576.576 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:36:54,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:36:54,656.656 INFO    ] No camera update needed
[2026-06-22 15:36:54,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:36:54,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:36:54,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:36:54,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:36:56,710.710 INFO    ] ================================================
[2026-06-22 15:36:56,726.726 INFO    ] Launching Daemon at Mon Jun 22 15:36:56 IST 2026
[2026-06-22 15:36:56,737.737 INFO    ] ================================================
[2026-06-22 15:36:57,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:36:57
[2026-06-22 15:36:57,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:36:58,248.248 INFO    ] Initializing speech engine...
[2026-06-22 15:36:58,262.262 INFO    ] 2026-06-22 15:36:58
[2026-06-22 15:36:58,542.542 INFO    ] 2026-06-22 15:36:58
[2026-06-22 15:36:58,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:36:58,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:36:58,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:36:58,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:36:59,017.017 INFO    ] time= 22/06/2026 15:36:58
[2026-06-22 15:36:59,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:36:59,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:36:59,236.236 INFO    ] No existing commands found in stream
[2026-06-22 15:37:04,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:37:04,259.259 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-22 15:37:08,292.292 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:37:08,294.294 INFO    ] Checking for system updates...
[2026-06-22 15:37:08,315.315 INFO    ] 200
[2026-06-22 15:37:08,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:37:08,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:37:08,349.349 INFO    ] No update needed
[2026-06-22 15:37:08,351.351 INFO    ] Checking for camera pi updates...
[2026-06-22 15:37:08,380.380 INFO    ] 200
[2026-06-22 15:37:08,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:37:08,440.440 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:37:08,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:37:08,526.526 INFO    ] No camera update needed
[2026-06-22 15:37:08,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:37:08,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:37:08,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:37:08,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:37:10,586.586 INFO    ] ================================================
[2026-06-22 15:37:10,601.601 INFO    ] Launching Daemon at Mon Jun 22 15:37:10 IST 2026
[2026-06-22 15:37:10,611.611 INFO    ] ================================================
[2026-06-22 15:37:11,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:37:11
[2026-06-22 15:37:11,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:37:11,955.955 INFO    ] Initializing speech engine...
[2026-06-22 15:37:11,960.960 INFO    ] 2026-06-22 15:37:11
[2026-06-22 15:37:12,208.208 INFO    ] 2026-06-22 15:37:12
[2026-06-22 15:37:12,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:37:12,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:37:12,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:37:12,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:37:12,705.705 INFO    ] time= 22/06/2026 15:37:12
[2026-06-22 15:37:12,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:37:12,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:37:12,914.914 INFO    ] No existing commands found in stream
[2026-06-22 15:37:17,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:37:17,945.945 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-22 15:37:20,920.920 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:37:20,922.922 INFO    ] Checking for system updates...
[2026-06-22 15:37:20,943.943 INFO    ] 200
[2026-06-22 15:37:20,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:37:20,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:37:20,987.987 INFO    ] No update needed
[2026-06-22 15:37:20,990.990 INFO    ] Checking for camera pi updates...
[2026-06-22 15:37:21,026.026 INFO    ] 200
[2026-06-22 15:37:21,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:37:21,076.076 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:37:21,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:37:21,164.164 INFO    ] No camera update needed
[2026-06-22 15:37:21,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:37:21,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:37:21,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:37:21,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:37:23,224.224 INFO    ] ================================================
[2026-06-22 15:37:23,240.240 INFO    ] Launching Daemon at Mon Jun 22 15:37:23 IST 2026
[2026-06-22 15:37:23,252.252 INFO    ] ================================================
[2026-06-22 15:37:23,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:37:23
[2026-06-22 15:37:24,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:37:24,765.765 INFO    ] Initializing speech engine...
[2026-06-22 15:37:24,774.774 INFO    ] 2026-06-22 15:37:24
[2026-06-22 15:37:25,061.061 INFO    ] 2026-06-22 15:37:25
[2026-06-22 15:37:25,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:37:25,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:37:25,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:37:25,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:37:25,549.549 INFO    ] time= 22/06/2026 15:37:25
[2026-06-22 15:37:25,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:37:25,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:37:25,769.769 INFO    ] No existing commands found in stream
[2026-06-22 15:37:30,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:37:30,788.788 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-22 15:37:32,668.668 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:37:32,671.671 INFO    ] Checking for system updates...
[2026-06-22 15:37:32,713.713 INFO    ] 200
[2026-06-22 15:37:32,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:37:32,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:37:32,775.775 INFO    ] No update needed
[2026-06-22 15:37:32,777.777 INFO    ] Checking for camera pi updates...
[2026-06-22 15:37:32,811.811 INFO    ] 200
[2026-06-22 15:37:32,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:37:32,856.856 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:37:32,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:37:32,938.938 INFO    ] No camera update needed
[2026-06-22 15:37:32,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:37:32,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:37:32,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:37:32,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:37:34,993.993 INFO    ] ================================================
[2026-06-22 15:37:35,009.009 INFO    ] Launching Daemon at Mon Jun 22 15:37:35 IST 2026
[2026-06-22 15:37:35,021.021 INFO    ] ================================================
[2026-06-22 15:37:35,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:37:35
[2026-06-22 15:37:36,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:37:36,380.380 INFO    ] Initializing speech engine...
[2026-06-22 15:37:36,396.396 INFO    ] 2026-06-22 15:37:36
[2026-06-22 15:37:36,663.663 INFO    ] 2026-06-22 15:37:36
[2026-06-22 15:37:36,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:37:36,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:37:36,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:37:37,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:37:37,149.149 INFO    ] time= 22/06/2026 15:37:37
[2026-06-22 15:37:37,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:37:37,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:37:37,411.411 INFO    ] No existing commands found in stream
[2026-06-22 15:37:42,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:37:42,445.445 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-22 15:37:44,851.851 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:37:44,853.853 INFO    ] Checking for system updates...
[2026-06-22 15:37:44,873.873 INFO    ] 200
[2026-06-22 15:37:44,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:37:44,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:37:44,924.924 INFO    ] No update needed
[2026-06-22 15:37:44,927.927 INFO    ] Checking for camera pi updates...
[2026-06-22 15:37:44,962.962 INFO    ] 200
[2026-06-22 15:37:44,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:37:45,006.006 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:37:45,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:37:45,094.094 INFO    ] No camera update needed
[2026-06-22 15:37:45,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:37:45,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:37:45,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:37:45,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:37:47,154.154 INFO    ] ================================================
[2026-06-22 15:37:47,169.169 INFO    ] Launching Daemon at Mon Jun 22 15:37:47 IST 2026
[2026-06-22 15:37:47,180.180 INFO    ] ================================================
[2026-06-22 15:37:47,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:37:47
[2026-06-22 15:37:48,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:37:48,563.563 INFO    ] Initializing speech engine...
[2026-06-22 15:37:48,571.571 INFO    ] 2026-06-22 15:37:48
[2026-06-22 15:37:48,828.828 INFO    ] 2026-06-22 15:37:48
[2026-06-22 15:37:48,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:37:49,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:37:49,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:37:49,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:37:49,426.426 INFO    ] time= 22/06/2026 15:37:49
[2026-06-22 15:37:49,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:37:49,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:37:49,568.568 INFO    ] No existing commands found in stream
[2026-06-22 15:37:54,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:37:54,607.607 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-22 15:37:56,928.928 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:37:56,930.930 INFO    ] Checking for system updates...
[2026-06-22 15:37:56,966.966 INFO    ] 200
[2026-06-22 15:37:56,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:37:57,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:37:57,023.023 INFO    ] No update needed
[2026-06-22 15:37:57,025.025 INFO    ] Checking for camera pi updates...
[2026-06-22 15:37:57,062.062 INFO    ] 200
[2026-06-22 15:37:57,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:37:57,106.106 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:37:57,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:37:57,194.194 INFO    ] No camera update needed
[2026-06-22 15:37:57,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:37:57,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:37:57,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:37:57,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:37:59,249.249 INFO    ] ================================================
[2026-06-22 15:37:59,264.264 INFO    ] Launching Daemon at Mon Jun 22 15:37:59 IST 2026
[2026-06-22 15:37:59,275.275 INFO    ] ================================================
[2026-06-22 15:37:59,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:37:59
[2026-06-22 15:38:00,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:38:00,588.588 INFO    ] Initializing speech engine...
[2026-06-22 15:38:00,595.595 INFO    ] 2026-06-22 15:38:00
[2026-06-22 15:38:00,882.882 INFO    ] 2026-06-22 15:38:00
[2026-06-22 15:38:00,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:38:01,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:38:01,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:38:01,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:38:01,399.399 INFO    ] time= 22/06/2026 15:38:01
[2026-06-22 15:38:01,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:38:01,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:38:01,527.527 INFO    ] No existing commands found in stream
[2026-06-22 15:38:06,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:38:06,541.541 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-22 15:38:07,600.600 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:38:07,602.602 INFO    ] Checking for system updates...
[2026-06-22 15:38:07,623.623 INFO    ] 200
[2026-06-22 15:38:07,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:38:07,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:38:07,656.656 INFO    ] No update needed
[2026-06-22 15:38:07,658.658 INFO    ] Checking for camera pi updates...
[2026-06-22 15:38:07,677.677 INFO    ] 200
[2026-06-22 15:38:07,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:38:07,716.716 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:38:07,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:38:07,813.813 INFO    ] No camera update needed
[2026-06-22 15:38:07,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:38:07,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:38:07,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:38:07,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:38:09,871.871 INFO    ] ================================================
[2026-06-22 15:38:09,886.886 INFO    ] Launching Daemon at Mon Jun 22 15:38:09 IST 2026
[2026-06-22 15:38:09,898.898 INFO    ] ================================================
[2026-06-22 15:38:10,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:38:10
[2026-06-22 15:38:10,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:38:11,217.217 INFO    ] Initializing speech engine...
[2026-06-22 15:38:11,225.225 INFO    ] 2026-06-22 15:38:11
[2026-06-22 15:38:11,501.501 INFO    ] 2026-06-22 15:38:11
[2026-06-22 15:38:11,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:38:11,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:38:11,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:38:11,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:38:11,962.962 INFO    ] time= 22/06/2026 15:38:11
[2026-06-22 15:38:12,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:38:12,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:38:12,224.224 INFO    ] No existing commands found in stream
[2026-06-22 15:38:17,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:38:17,243.243 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-22 15:38:21,085.085 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:38:21,088.088 INFO    ] Checking for system updates...
[2026-06-22 15:38:21,124.124 INFO    ] 200
[2026-06-22 15:38:21,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:38:21,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:38:21,186.186 INFO    ] No update needed
[2026-06-22 15:38:21,189.189 INFO    ] Checking for camera pi updates...
[2026-06-22 15:38:21,224.224 INFO    ] 200
[2026-06-22 15:38:21,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:38:21,268.268 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:38:21,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:38:21,359.359 INFO    ] No camera update needed
[2026-06-22 15:38:21,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:38:21,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:38:21,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:38:21,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:38:23,416.416 INFO    ] ================================================
[2026-06-22 15:38:23,431.431 INFO    ] Launching Daemon at Mon Jun 22 15:38:23 IST 2026
[2026-06-22 15:38:23,443.443 INFO    ] ================================================
[2026-06-22 15:38:24,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:38:24
[2026-06-22 15:38:24,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:38:25,025.025 INFO    ] Initializing speech engine...
[2026-06-22 15:38:25,033.033 INFO    ] 2026-06-22 15:38:25
[2026-06-22 15:38:25,306.306 INFO    ] 2026-06-22 15:38:25
[2026-06-22 15:38:25,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:38:25,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:38:25,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:38:25,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:38:25,858.858 INFO    ] time= 22/06/2026 15:38:25
[2026-06-22 15:38:25,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:38:25,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:38:26,013.013 INFO    ] No existing commands found in stream
[2026-06-22 15:38:31,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:38:31,031.031 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-22 15:38:33,782.782 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:38:33,785.785 INFO    ] Checking for system updates...
[2026-06-22 15:38:33,822.822 INFO    ] 200
[2026-06-22 15:38:33,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:38:33,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:38:33,881.881 INFO    ] No update needed
[2026-06-22 15:38:33,883.883 INFO    ] Checking for camera pi updates...
[2026-06-22 15:38:33,917.917 INFO    ] 200
[2026-06-22 15:38:33,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:38:33,977.977 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:38:34,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:38:34,068.068 INFO    ] No camera update needed
[2026-06-22 15:38:34,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:38:34,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:38:34,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:38:34,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:38:36,125.125 INFO    ] ================================================
[2026-06-22 15:38:36,140.140 INFO    ] Launching Daemon at Mon Jun 22 15:38:36 IST 2026
[2026-06-22 15:38:36,151.151 INFO    ] ================================================
[2026-06-22 15:38:36,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:38:36
[2026-06-22 15:38:37,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:38:37,516.516 INFO    ] Initializing speech engine...
[2026-06-22 15:38:37,531.531 INFO    ] 2026-06-22 15:38:37
[2026-06-22 15:38:37,797.797 INFO    ] 2026-06-22 15:38:37
[2026-06-22 15:38:37,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:38:38,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:38:38,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:38:38,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:38:38,365.365 INFO    ] time= 22/06/2026 15:38:38
[2026-06-22 15:38:38,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:38:38,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:38:38,523.523 INFO    ] No existing commands found in stream
[2026-06-22 15:38:43,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:38:43,539.539 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-22 15:38:47,474.474 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:38:47,477.477 INFO    ] Checking for system updates...
[2026-06-22 15:38:47,513.513 INFO    ] 200
[2026-06-22 15:38:47,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:38:47,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:38:47,570.570 INFO    ] No update needed
[2026-06-22 15:38:47,572.572 INFO    ] Checking for camera pi updates...
[2026-06-22 15:38:47,606.606 INFO    ] 200
[2026-06-22 15:38:47,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:38:47,649.649 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:38:47,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:38:47,704.704 INFO    ] No camera update needed
[2026-06-22 15:38:47,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:38:47,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:38:47,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:38:47,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:38:49,758.758 INFO    ] ================================================
[2026-06-22 15:38:49,774.774 INFO    ] Launching Daemon at Mon Jun 22 15:38:49 IST 2026
[2026-06-22 15:38:49,785.785 INFO    ] ================================================
[2026-06-22 15:38:50,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:38:50
[2026-06-22 15:38:50,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:38:51,272.272 INFO    ] Initializing speech engine...
[2026-06-22 15:38:51,279.279 INFO    ] 2026-06-22 15:38:51
[2026-06-22 15:38:51,549.549 INFO    ] 2026-06-22 15:38:51
[2026-06-22 15:38:51,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:38:51,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:38:51,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:38:51,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:38:52,061.061 INFO    ] time= 22/06/2026 15:38:52
[2026-06-22 15:38:52,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:38:52,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:38:52,268.268 INFO    ] No existing commands found in stream
[2026-06-22 15:38:57,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:38:57,289.289 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-22 15:39:01,101.101 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:39:01,104.104 INFO    ] Checking for system updates...
[2026-06-22 15:39:01,142.142 INFO    ] 200
[2026-06-22 15:39:01,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:39:01,197.197 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:39:01,200.200 INFO    ] No update needed
[2026-06-22 15:39:01,203.203 INFO    ] Checking for camera pi updates...
[2026-06-22 15:39:01,250.250 INFO    ] 200
[2026-06-22 15:39:01,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:39:01,360.360 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:39:01,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:39:01,436.436 INFO    ] No camera update needed
[2026-06-22 15:39:01,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:39:01,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:39:01,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:39:01,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:39:03,500.500 INFO    ] ================================================
[2026-06-22 15:39:03,516.516 INFO    ] Launching Daemon at Mon Jun 22 15:39:03 IST 2026
[2026-06-22 15:39:03,527.527 INFO    ] ================================================
[2026-06-22 15:39:04,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:39:04
[2026-06-22 15:39:04,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:39:04,983.983 INFO    ] Initializing speech engine...
[2026-06-22 15:39:04,993.993 INFO    ] 2026-06-22 15:39:04
[2026-06-22 15:39:05,258.258 INFO    ] 2026-06-22 15:39:05
[2026-06-22 15:39:05,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:39:05,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:39:05,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:39:05,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:39:05,671.671 INFO    ] time= 22/06/2026 15:39:05
[2026-06-22 15:39:05,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:39:05,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:39:05,841.841 INFO    ] No existing commands found in stream
[2026-06-22 15:39:10,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:39:10,855.855 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-22 15:39:15,242.242 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:39:15,245.245 INFO    ] Checking for system updates...
[2026-06-22 15:39:15,281.281 INFO    ] 200
[2026-06-22 15:39:15,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:39:15,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:39:15,320.320 INFO    ] No update needed
[2026-06-22 15:39:15,321.321 INFO    ] Checking for camera pi updates...
[2026-06-22 15:39:15,341.341 INFO    ] 200
[2026-06-22 15:39:15,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:39:15,365.365 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:39:15,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:39:15,430.430 INFO    ] No camera update needed
[2026-06-22 15:39:15,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:39:15,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:39:15,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:39:15,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:39:17,485.485 INFO    ] ================================================
[2026-06-22 15:39:17,501.501 INFO    ] Launching Daemon at Mon Jun 22 15:39:17 IST 2026
[2026-06-22 15:39:17,512.512 INFO    ] ================================================
[2026-06-22 15:39:18,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:39:18
[2026-06-22 15:39:18,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:39:18,853.853 INFO    ] Initializing speech engine...
[2026-06-22 15:39:18,872.872 INFO    ] 2026-06-22 15:39:18
[2026-06-22 15:39:19,124.124 INFO    ] 2026-06-22 15:39:19
[2026-06-22 15:39:19,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:39:19,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:39:19,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:39:19,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:39:19,608.608 INFO    ] time= 22/06/2026 15:39:19
[2026-06-22 15:39:19,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:39:19,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:39:19,849.849 INFO    ] No existing commands found in stream
[2026-06-22 15:39:24,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:39:24,868.868 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-22 15:39:28,337.337 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:39:28,338.338 INFO    ] Checking for system updates...
[2026-06-22 15:39:28,359.359 INFO    ] 200
[2026-06-22 15:39:28,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:39:28,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:39:28,393.393 INFO    ] No update needed
[2026-06-22 15:39:28,394.394 INFO    ] Checking for camera pi updates...
[2026-06-22 15:39:28,425.425 INFO    ] 200
[2026-06-22 15:39:28,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:39:28,469.469 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:39:28,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:39:28,539.539 INFO    ] No camera update needed
[2026-06-22 15:39:28,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:39:28,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:39:28,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:39:28,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:39:30,599.599 INFO    ] ================================================
[2026-06-22 15:39:30,615.615 INFO    ] Launching Daemon at Mon Jun 22 15:39:30 IST 2026
[2026-06-22 15:39:30,626.626 INFO    ] ================================================
[2026-06-22 15:39:31,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:39:31
[2026-06-22 15:39:31,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:39:32,236.236 INFO    ] Initializing speech engine...
[2026-06-22 15:39:32,246.246 INFO    ] 2026-06-22 15:39:32
[2026-06-22 15:39:32,548.548 INFO    ] 2026-06-22 15:39:32
[2026-06-22 15:39:32,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:39:32,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:39:32,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:39:32,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:39:32,979.979 INFO    ] time= 22/06/2026 15:39:32
[2026-06-22 15:39:32,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:39:33,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:39:33,163.163 INFO    ] No existing commands found in stream
[2026-06-22 15:39:38,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:39:38,197.197 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-22 15:39:40,792.792 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:39:40,795.795 INFO    ] Checking for system updates...
[2026-06-22 15:39:40,840.840 INFO    ] 200
[2026-06-22 15:39:40,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:39:40,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:39:40,903.903 INFO    ] No update needed
[2026-06-22 15:39:40,906.906 INFO    ] Checking for camera pi updates...
[2026-06-22 15:39:40,941.941 INFO    ] 200
[2026-06-22 15:39:40,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:39:40,993.993 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:39:41,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:39:41,078.078 INFO    ] No camera update needed
[2026-06-22 15:39:41,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:39:41,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:39:41,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:39:41,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:39:43,142.142 INFO    ] ================================================
[2026-06-22 15:39:43,158.158 INFO    ] Launching Daemon at Mon Jun 22 15:39:43 IST 2026
[2026-06-22 15:39:43,170.170 INFO    ] ================================================
[2026-06-22 15:39:43,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:39:43
[2026-06-22 15:39:44,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:39:44,680.680 INFO    ] Initializing speech engine...
[2026-06-22 15:39:44,689.689 INFO    ] 2026-06-22 15:39:44
[2026-06-22 15:39:44,949.949 INFO    ] 2026-06-22 15:39:44
[2026-06-22 15:39:45,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:39:45,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:39:45,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:39:45,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:39:45,437.437 INFO    ] time= 22/06/2026 15:39:45
[2026-06-22 15:39:45,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:39:45,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:39:45,651.651 INFO    ] No existing commands found in stream
[2026-06-22 15:39:50,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:39:50,669.669 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-22 15:39:52,590.590 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:39:52,591.591 INFO    ] Checking for system updates...
[2026-06-22 15:39:52,615.615 INFO    ] 200
[2026-06-22 15:39:52,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:39:52,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:39:52,675.675 INFO    ] No update needed
[2026-06-22 15:39:52,677.677 INFO    ] Checking for camera pi updates...
[2026-06-22 15:39:52,712.712 INFO    ] 200
[2026-06-22 15:39:52,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:39:52,758.758 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:39:52,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:39:52,856.856 INFO    ] No camera update needed
[2026-06-22 15:39:52,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:39:52,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:39:52,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:39:52,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:39:54,913.913 INFO    ] ================================================
[2026-06-22 15:39:54,929.929 INFO    ] Launching Daemon at Mon Jun 22 15:39:54 IST 2026
[2026-06-22 15:39:54,940.940 INFO    ] ================================================
[2026-06-22 15:39:55,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:39:55
[2026-06-22 15:39:56,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:39:56,491.491 INFO    ] Initializing speech engine...
[2026-06-22 15:39:56,505.505 INFO    ] 2026-06-22 15:39:56
[2026-06-22 15:39:56,797.797 INFO    ] 2026-06-22 15:39:56
[2026-06-22 15:39:56,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:39:57,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:39:57,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:39:57,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:39:57,393.393 INFO    ] time= 22/06/2026 15:39:57
[2026-06-22 15:39:57,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:39:57,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:39:57,604.604 INFO    ] No existing commands found in stream
[2026-06-22 15:40:02,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:40:02,629.629 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-22 15:40:07,011.011 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:40:07,013.013 INFO    ] Checking for system updates...
[2026-06-22 15:40:07,050.050 INFO    ] 200
[2026-06-22 15:40:07,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:40:07,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:40:07,108.108 INFO    ] No update needed
[2026-06-22 15:40:07,110.110 INFO    ] Checking for camera pi updates...
[2026-06-22 15:40:07,144.144 INFO    ] 200
[2026-06-22 15:40:07,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:40:07,187.187 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:40:07,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:40:07,273.273 INFO    ] No camera update needed
[2026-06-22 15:40:07,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:40:07,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:40:07,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:40:07,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:40:09,331.331 INFO    ] ================================================
[2026-06-22 15:40:09,347.347 INFO    ] Launching Daemon at Mon Jun 22 15:40:09 IST 2026
[2026-06-22 15:40:09,358.358 INFO    ] ================================================
[2026-06-22 15:40:09,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:40:09
[2026-06-22 15:40:10,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:40:10,731.731 INFO    ] Initializing speech engine...
[2026-06-22 15:40:10,738.738 INFO    ] 2026-06-22 15:40:10
[2026-06-22 15:40:11,029.029 INFO    ] 2026-06-22 15:40:11
[2026-06-22 15:40:11,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:40:11,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:40:11,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:40:11,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:40:11,439.439 INFO    ] time= 22/06/2026 15:40:11
[2026-06-22 15:40:11,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:40:11,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:40:11,571.571 INFO    ] No existing commands found in stream
[2026-06-22 15:40:16,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:40:16,600.600 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-22 15:40:20,132.132 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:40:20,135.135 INFO    ] Checking for system updates...
[2026-06-22 15:40:20,171.171 INFO    ] 200
[2026-06-22 15:40:20,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:40:20,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:40:20,230.230 INFO    ] No update needed
[2026-06-22 15:40:20,232.232 INFO    ] Checking for camera pi updates...
[2026-06-22 15:40:20,266.266 INFO    ] 200
[2026-06-22 15:40:20,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:40:20,314.314 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:40:20,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:40:20,415.415 INFO    ] No camera update needed
[2026-06-22 15:40:20,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:40:20,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:40:20,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:40:20,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:40:22,473.473 INFO    ] ================================================
[2026-06-22 15:40:22,489.489 INFO    ] Launching Daemon at Mon Jun 22 15:40:22 IST 2026
[2026-06-22 15:40:22,500.500 INFO    ] ================================================
[2026-06-22 15:40:23,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:40:23
[2026-06-22 15:40:23,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:40:23,926.926 INFO    ] Initializing speech engine...
[2026-06-22 15:40:23,942.942 INFO    ] 2026-06-22 15:40:23
[2026-06-22 15:40:24,226.226 INFO    ] 2026-06-22 15:40:24
[2026-06-22 15:40:24,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:40:24,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:40:24,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:40:24,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:40:24,858.858 INFO    ] time= 22/06/2026 15:40:24
[2026-06-22 15:40:24,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:40:24,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:40:25,029.029 INFO    ] No existing commands found in stream
[2026-06-22 15:40:30,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:40:30,048.048 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-22 15:40:31,780.780 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:40:31,783.783 INFO    ] Checking for system updates...
[2026-06-22 15:40:31,825.825 INFO    ] 200
[2026-06-22 15:40:31,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:40:31,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:40:31,888.888 INFO    ] No update needed
[2026-06-22 15:40:31,891.891 INFO    ] Checking for camera pi updates...
[2026-06-22 15:40:31,927.927 INFO    ] 200
[2026-06-22 15:40:31,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:40:31,978.978 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:40:32,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:40:32,037.037 INFO    ] No camera update needed
[2026-06-22 15:40:32,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:40:32,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:40:32,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:40:32,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:40:34,096.096 INFO    ] ================================================
[2026-06-22 15:40:34,111.111 INFO    ] Launching Daemon at Mon Jun 22 15:40:34 IST 2026
[2026-06-22 15:40:34,123.123 INFO    ] ================================================
[2026-06-22 15:40:34,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:40:34
[2026-06-22 15:40:35,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:40:35,569.569 INFO    ] Initializing speech engine...
[2026-06-22 15:40:35,582.582 INFO    ] 2026-06-22 15:40:35
[2026-06-22 15:40:35,865.865 INFO    ] 2026-06-22 15:40:35
[2026-06-22 15:40:35,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:40:36,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:40:36,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:40:36,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:40:36,278.278 INFO    ] time= 22/06/2026 15:40:36
[2026-06-22 15:40:36,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:40:36,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:40:36,454.454 INFO    ] No existing commands found in stream
[2026-06-22 15:40:41,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:40:41,487.487 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-22 15:40:44,180.180 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:40:44,182.182 INFO    ] Checking for system updates...
[2026-06-22 15:40:44,202.202 INFO    ] 200
[2026-06-22 15:40:44,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:40:44,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:40:44,236.236 INFO    ] No update needed
[2026-06-22 15:40:44,237.237 INFO    ] Checking for camera pi updates...
[2026-06-22 15:40:44,257.257 INFO    ] 200
[2026-06-22 15:40:44,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:40:44,289.289 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:40:44,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:40:44,452.452 INFO    ] No camera update needed
[2026-06-22 15:40:44,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:40:44,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:40:44,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:40:44,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:40:46,509.509 INFO    ] ================================================
[2026-06-22 15:40:46,525.525 INFO    ] Launching Daemon at Mon Jun 22 15:40:46 IST 2026
[2026-06-22 15:40:46,536.536 INFO    ] ================================================
[2026-06-22 15:40:47,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:40:47
[2026-06-22 15:40:47,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:40:47,889.889 INFO    ] Initializing speech engine...
[2026-06-22 15:40:47,897.897 INFO    ] 2026-06-22 15:40:47
[2026-06-22 15:40:48,151.151 INFO    ] 2026-06-22 15:40:48
[2026-06-22 15:40:48,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:40:48,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:40:48,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:40:48,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:40:48,770.770 INFO    ] time= 22/06/2026 15:40:48
[2026-06-22 15:40:48,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:40:48,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:40:48,951.951 INFO    ] No existing commands found in stream
[2026-06-22 15:40:53,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:40:53,985.985 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-22 15:40:55,544.544 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:40:55,547.547 INFO    ] Checking for system updates...
[2026-06-22 15:40:55,589.589 INFO    ] 200
[2026-06-22 15:40:55,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:40:55,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:40:55,720.720 INFO    ] No update needed
[2026-06-22 15:40:55,722.722 INFO    ] Checking for camera pi updates...
[2026-06-22 15:40:55,759.759 INFO    ] 200
[2026-06-22 15:40:55,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:40:55,802.802 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:40:55,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:40:55,887.887 INFO    ] No camera update needed
[2026-06-22 15:40:55,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:40:55,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:40:55,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:40:55,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:40:57,942.942 INFO    ] ================================================
[2026-06-22 15:40:57,958.958 INFO    ] Launching Daemon at Mon Jun 22 15:40:57 IST 2026
[2026-06-22 15:40:57,970.970 INFO    ] ================================================
[2026-06-22 15:40:58,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:40:58
[2026-06-22 15:40:59,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:40:59,435.435 INFO    ] Initializing speech engine...
[2026-06-22 15:40:59,441.441 INFO    ] 2026-06-22 15:40:59
[2026-06-22 15:40:59,704.704 INFO    ] 2026-06-22 15:40:59
[2026-06-22 15:40:59,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:41:00,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:41:00,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:41:00,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:41:00,182.182 INFO    ] time= 22/06/2026 15:41:00
[2026-06-22 15:41:00,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:41:00,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:41:00,407.407 INFO    ] No existing commands found in stream
[2026-06-22 15:41:05,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:41:05,428.428 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-22 15:41:06,281.281 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:41:06,283.283 INFO    ] Checking for system updates...
[2026-06-22 15:41:06,320.320 INFO    ] 200
[2026-06-22 15:41:06,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:41:06,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:41:06,396.396 INFO    ] No update needed
[2026-06-22 15:41:06,399.399 INFO    ] Checking for camera pi updates...
[2026-06-22 15:41:06,442.442 INFO    ] 200
[2026-06-22 15:41:06,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:41:06,486.486 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:41:06,569.569 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:41:06,571.571 INFO    ] No camera update needed
[2026-06-22 15:41:06,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:41:06,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:41:06,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:41:06,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:41:08,629.629 INFO    ] ================================================
[2026-06-22 15:41:08,645.645 INFO    ] Launching Daemon at Mon Jun 22 15:41:08 IST 2026
[2026-06-22 15:41:08,656.656 INFO    ] ================================================
[2026-06-22 15:41:09,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:41:09
[2026-06-22 15:41:09,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:41:10,084.084 INFO    ] Initializing speech engine...
[2026-06-22 15:41:10,094.094 INFO    ] 2026-06-22 15:41:10
[2026-06-22 15:41:10,340.340 INFO    ] 2026-06-22 15:41:10
[2026-06-22 15:41:10,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:41:10,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:41:10,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:41:10,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:41:10,809.809 INFO    ] time= 22/06/2026 15:41:10
[2026-06-22 15:41:10,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:41:10,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:41:11,028.028 INFO    ] No existing commands found in stream
[2026-06-22 15:41:16,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:41:16,057.057 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-22 15:41:19,784.784 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:41:19,787.787 INFO    ] Checking for system updates...
[2026-06-22 15:41:19,823.823 INFO    ] 200
[2026-06-22 15:41:19,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:41:19,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:41:19,880.880 INFO    ] No update needed
[2026-06-22 15:41:19,883.883 INFO    ] Checking for camera pi updates...
[2026-06-22 15:41:19,916.916 INFO    ] 200
[2026-06-22 15:41:19,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:41:19,959.959 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:41:20,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:41:20,048.048 INFO    ] No camera update needed
[2026-06-22 15:41:20,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:41:20,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:41:20,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:41:20,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:41:22,106.106 INFO    ] ================================================
[2026-06-22 15:41:22,122.122 INFO    ] Launching Daemon at Mon Jun 22 15:41:22 IST 2026
[2026-06-22 15:41:22,133.133 INFO    ] ================================================
[2026-06-22 15:41:22,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:41:22
[2026-06-22 15:41:23,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:41:23,459.459 INFO    ] Initializing speech engine...
[2026-06-22 15:41:23,465.465 INFO    ] 2026-06-22 15:41:23
[2026-06-22 15:41:23,765.765 INFO    ] 2026-06-22 15:41:23
[2026-06-22 15:41:23,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:41:24,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:41:24,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:41:24,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:41:24,188.188 INFO    ] time= 22/06/2026 15:41:24
[2026-06-22 15:41:24,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:41:24,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:41:24,360.360 INFO    ] No existing commands found in stream
[2026-06-22 15:41:29,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:41:29,388.388 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-22 15:41:29,980.980 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:41:29,981.981 INFO    ] Checking for system updates...
[2026-06-22 15:41:30,002.002 INFO    ] 200
[2026-06-22 15:41:30,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:41:30,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:41:30,039.039 INFO    ] No update needed
[2026-06-22 15:41:30,041.041 INFO    ] Checking for camera pi updates...
[2026-06-22 15:41:30,061.061 INFO    ] 200
[2026-06-22 15:41:30,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:41:30,093.093 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:41:30,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:41:30,178.178 INFO    ] No camera update needed
[2026-06-22 15:41:30,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:41:30,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:41:30,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:41:30,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:41:32,238.238 INFO    ] ================================================
[2026-06-22 15:41:32,256.256 INFO    ] Launching Daemon at Mon Jun 22 15:41:32 IST 2026
[2026-06-22 15:41:32,268.268 INFO    ] ================================================
[2026-06-22 15:41:32,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:41:32
[2026-06-22 15:41:33,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:41:33,859.859 INFO    ] Initializing speech engine...
[2026-06-22 15:41:33,871.871 INFO    ] 2026-06-22 15:41:33
[2026-06-22 15:41:34,157.157 INFO    ] 2026-06-22 15:41:34
[2026-06-22 15:41:34,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:41:34,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:41:34,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:41:34,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:41:34,897.897 INFO    ] time= 22/06/2026 15:41:34
[2026-06-22 15:41:34,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:41:35,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:41:35,140.140 INFO    ] No existing commands found in stream
[2026-06-22 15:41:40,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:41:40,161.161 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-22 15:41:44,360.360 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:41:44,362.362 INFO    ] Checking for system updates...
[2026-06-22 15:41:44,384.384 INFO    ] 200
[2026-06-22 15:41:44,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:41:44,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:41:44,430.430 INFO    ] No update needed
[2026-06-22 15:41:44,433.433 INFO    ] Checking for camera pi updates...
[2026-06-22 15:41:44,468.468 INFO    ] 200
[2026-06-22 15:41:44,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:41:44,514.514 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:41:44,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:41:44,620.620 INFO    ] No camera update needed
[2026-06-22 15:41:44,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:41:44,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:41:44,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:41:44,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:41:46,680.680 INFO    ] ================================================
[2026-06-22 15:41:46,696.696 INFO    ] Launching Daemon at Mon Jun 22 15:41:46 IST 2026
[2026-06-22 15:41:46,708.708 INFO    ] ================================================
[2026-06-22 15:41:47,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:41:47
[2026-06-22 15:41:47,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:41:48,033.033 INFO    ] Initializing speech engine...
[2026-06-22 15:41:48,040.040 INFO    ] 2026-06-22 15:41:48
[2026-06-22 15:41:48,339.339 INFO    ] 2026-06-22 15:41:48
[2026-06-22 15:41:48,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:41:48,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:41:48,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:41:48,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:41:48,849.849 INFO    ] time= 22/06/2026 15:41:48
[2026-06-22 15:41:48,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:41:48,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:41:49,055.055 INFO    ] No existing commands found in stream
[2026-06-22 15:41:54,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:41:54,069.069 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-22 15:41:56,525.525 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:41:56,528.528 INFO    ] Checking for system updates...
[2026-06-22 15:41:56,565.565 INFO    ] 200
[2026-06-22 15:41:56,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:41:56,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:41:56,634.634 INFO    ] No update needed
[2026-06-22 15:41:56,637.637 INFO    ] Checking for camera pi updates...
[2026-06-22 15:41:56,672.672 INFO    ] 200
[2026-06-22 15:41:56,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:41:56,717.717 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:41:56,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:41:56,802.802 INFO    ] No camera update needed
[2026-06-22 15:41:56,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:41:56,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:41:56,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:41:56,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:41:58,862.862 INFO    ] ================================================
[2026-06-22 15:41:58,878.878 INFO    ] Launching Daemon at Mon Jun 22 15:41:58 IST 2026
[2026-06-22 15:41:58,889.889 INFO    ] ================================================
[2026-06-22 15:41:59,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:41:59
[2026-06-22 15:42:00,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:42:00,326.326 INFO    ] Initializing speech engine...
[2026-06-22 15:42:00,344.344 INFO    ] 2026-06-22 15:42:00
[2026-06-22 15:42:00,602.602 INFO    ] 2026-06-22 15:42:00
[2026-06-22 15:42:00,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:42:00,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:42:00,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:42:00,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:42:00,980.980 INFO    ] time= 22/06/2026 15:42:00
[2026-06-22 15:42:00,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:42:01,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:42:01,175.175 INFO    ] No existing commands found in stream
[2026-06-22 15:42:06,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:42:06,193.193 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-22 15:42:07,197.197 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:42:07,199.199 INFO    ] Checking for system updates...
[2026-06-22 15:42:07,235.235 INFO    ] 200
[2026-06-22 15:42:07,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:42:07,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:42:07,292.292 INFO    ] No update needed
[2026-06-22 15:42:07,294.294 INFO    ] Checking for camera pi updates...
[2026-06-22 15:42:07,328.328 INFO    ] 200
[2026-06-22 15:42:07,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:42:07,372.372 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:42:07,452.452 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:42:07,455.455 INFO    ] No camera update needed
[2026-06-22 15:42:07,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:42:07,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:42:07,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:42:07,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:42:09,512.512 INFO    ] ================================================
[2026-06-22 15:42:09,527.527 INFO    ] Launching Daemon at Mon Jun 22 15:42:09 IST 2026
[2026-06-22 15:42:09,538.538 INFO    ] ================================================
[2026-06-22 15:42:10,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:42:10
[2026-06-22 15:42:10,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:42:10,994.994 INFO    ] Initializing speech engine...
[2026-06-22 15:42:11,002.002 INFO    ] 2026-06-22 15:42:10
[2026-06-22 15:42:11,264.264 INFO    ] 2026-06-22 15:42:11
[2026-06-22 15:42:11,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:42:11,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:42:11,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:42:11,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:42:11,804.804 INFO    ] time= 22/06/2026 15:42:11
[2026-06-22 15:42:11,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:42:11,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:42:11,960.960 INFO    ] No existing commands found in stream
[2026-06-22 15:42:16,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:42:16,985.985 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-22 15:42:17,706.706 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:42:17,707.707 INFO    ] Checking for system updates...
[2026-06-22 15:42:17,728.728 INFO    ] 200
[2026-06-22 15:42:17,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:42:17,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:42:17,761.761 INFO    ] No update needed
[2026-06-22 15:42:17,762.762 INFO    ] Checking for camera pi updates...
[2026-06-22 15:42:17,781.781 INFO    ] 200
[2026-06-22 15:42:17,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:42:17,813.813 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:42:17,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:42:17,897.897 INFO    ] No camera update needed
[2026-06-22 15:42:17,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:42:17,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:42:17,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:42:17,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:42:19,958.958 INFO    ] ================================================
[2026-06-22 15:42:19,976.976 INFO    ] Launching Daemon at Mon Jun 22 15:42:19 IST 2026
[2026-06-22 15:42:19,988.988 INFO    ] ================================================
[2026-06-22 15:42:20,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:42:20
[2026-06-22 15:42:21,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:42:21,407.407 INFO    ] Initializing speech engine...
[2026-06-22 15:42:21,426.426 INFO    ] 2026-06-22 15:42:21
[2026-06-22 15:42:21,678.678 INFO    ] 2026-06-22 15:42:21
[2026-06-22 15:42:21,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:42:21,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:42:21,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:42:22,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:42:22,260.260 INFO    ] time= 22/06/2026 15:42:22
[2026-06-22 15:42:22,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:42:22,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:42:22,420.420 INFO    ] No existing commands found in stream
[2026-06-22 15:42:27,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:42:27,446.446 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-22 15:42:31,759.759 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:42:31,762.762 INFO    ] Checking for system updates...
[2026-06-22 15:42:31,804.804 INFO    ] 200
[2026-06-22 15:42:31,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:42:31,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:42:31,867.867 INFO    ] No update needed
[2026-06-22 15:42:31,870.870 INFO    ] Checking for camera pi updates...
[2026-06-22 15:42:31,906.906 INFO    ] 200
[2026-06-22 15:42:31,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:42:31,958.958 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:42:32,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:42:32,024.024 INFO    ] No camera update needed
[2026-06-22 15:42:32,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:42:32,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:42:32,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:42:32,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:42:34,083.083 INFO    ] ================================================
[2026-06-22 15:42:34,098.098 INFO    ] Launching Daemon at Mon Jun 22 15:42:34 IST 2026
[2026-06-22 15:42:34,109.109 INFO    ] ================================================
[2026-06-22 15:42:34,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:42:34
[2026-06-22 15:42:35,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:42:35,573.573 INFO    ] Initializing speech engine...
[2026-06-22 15:42:35,579.579 INFO    ] 2026-06-22 15:42:35
[2026-06-22 15:42:35,827.827 INFO    ] 2026-06-22 15:42:35
[2026-06-22 15:42:35,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:42:36,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:42:36,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:42:36,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:42:36,349.349 INFO    ] time= 22/06/2026 15:42:36
[2026-06-22 15:42:36,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:42:36,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:42:36,533.533 INFO    ] No existing commands found in stream
[2026-06-22 15:42:41,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:42:41,552.552 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-22 15:42:45,618.618 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:42:45,619.619 INFO    ] Checking for system updates...
[2026-06-22 15:42:45,640.640 INFO    ] 200
[2026-06-22 15:42:45,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:42:45,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:42:45,696.696 INFO    ] No update needed
[2026-06-22 15:42:45,699.699 INFO    ] Checking for camera pi updates...
[2026-06-22 15:42:45,732.732 INFO    ] 200
[2026-06-22 15:42:45,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:42:45,776.776 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:42:45,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:42:45,958.958 INFO    ] No camera update needed
[2026-06-22 15:42:45,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:42:45,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:42:45,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:42:45,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:42:48,015.015 INFO    ] ================================================
[2026-06-22 15:42:48,030.030 INFO    ] Launching Daemon at Mon Jun 22 15:42:48 IST 2026
[2026-06-22 15:42:48,041.041 INFO    ] ================================================
[2026-06-22 15:42:48,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:42:48
[2026-06-22 15:42:49,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:42:49,418.418 INFO    ] Initializing speech engine...
[2026-06-22 15:42:49,424.424 INFO    ] 2026-06-22 15:42:49
[2026-06-22 15:42:49,686.686 INFO    ] 2026-06-22 15:42:49
[2026-06-22 15:42:49,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:42:49,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:42:49,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:42:50,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:42:50,232.232 INFO    ] time= 22/06/2026 15:42:50
[2026-06-22 15:42:50,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:42:50,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:42:50,385.385 INFO    ] No existing commands found in stream
[2026-06-22 15:42:55,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:42:55,404.404 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-22 15:42:56,655.655 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:42:56,657.657 INFO    ] Checking for system updates...
[2026-06-22 15:42:56,678.678 INFO    ] 200
[2026-06-22 15:42:56,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:42:56,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:42:56,712.712 INFO    ] No update needed
[2026-06-22 15:42:56,713.713 INFO    ] Checking for camera pi updates...
[2026-06-22 15:42:56,733.733 INFO    ] 200
[2026-06-22 15:42:56,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:42:56,773.773 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:42:56,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:42:56,857.857 INFO    ] No camera update needed
[2026-06-22 15:42:56,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:42:56,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:42:56,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:42:56,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:42:58,920.920 INFO    ] ================================================
[2026-06-22 15:42:58,935.935 INFO    ] Launching Daemon at Mon Jun 22 15:42:58 IST 2026
[2026-06-22 15:42:58,946.946 INFO    ] ================================================
[2026-06-22 15:42:59,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:42:59
[2026-06-22 15:43:00,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:43:00,332.332 INFO    ] Initializing speech engine...
[2026-06-22 15:43:00,338.338 INFO    ] 2026-06-22 15:43:00
[2026-06-22 15:43:00,600.600 INFO    ] 2026-06-22 15:43:00
[2026-06-22 15:43:00,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:43:00,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:43:00,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:43:01,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:43:01,100.100 INFO    ] time= 22/06/2026 15:43:01
[2026-06-22 15:43:01,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:43:01,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:43:01,332.332 INFO    ] No existing commands found in stream
[2026-06-22 15:43:06,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:43:06,380.380 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-22 15:43:09,965.965 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:43:09,968.968 INFO    ] Checking for system updates...
[2026-06-22 15:43:10,012.012 INFO    ] 200
[2026-06-22 15:43:10,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:43:10,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:43:10,076.076 INFO    ] No update needed
[2026-06-22 15:43:10,079.079 INFO    ] Checking for camera pi updates...
[2026-06-22 15:43:10,114.114 INFO    ] 200
[2026-06-22 15:43:10,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:43:10,157.157 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:43:10,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:43:10,241.241 INFO    ] No camera update needed
[2026-06-22 15:43:10,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:43:10,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:43:10,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:43:10,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:43:12,300.300 INFO    ] ================================================
[2026-06-22 15:43:12,315.315 INFO    ] Launching Daemon at Mon Jun 22 15:43:12 IST 2026
[2026-06-22 15:43:12,326.326 INFO    ] ================================================
[2026-06-22 15:43:12,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:43:12
[2026-06-22 15:43:13,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:43:13,682.682 INFO    ] Initializing speech engine...
[2026-06-22 15:43:13,691.691 INFO    ] 2026-06-22 15:43:13
[2026-06-22 15:43:13,990.990 INFO    ] 2026-06-22 15:43:13
[2026-06-22 15:43:14,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:43:14,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:43:14,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:43:14,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:43:14,414.414 INFO    ] time= 22/06/2026 15:43:14
[2026-06-22 15:43:14,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:43:14,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:43:14,507.507 INFO    ] No existing commands found in stream
[2026-06-22 15:43:19,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:43:19,530.530 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-22 15:43:22,879.879 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:43:22,882.882 INFO    ] Checking for system updates...
[2026-06-22 15:43:22,918.918 INFO    ] 200
[2026-06-22 15:43:22,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:43:22,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:43:22,979.979 INFO    ] No update needed
[2026-06-22 15:43:22,981.981 INFO    ] Checking for camera pi updates...
[2026-06-22 15:43:23,016.016 INFO    ] 200
[2026-06-22 15:43:23,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:43:23,060.060 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:43:23,145.145 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:43:23,147.147 INFO    ] No camera update needed
[2026-06-22 15:43:23,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:43:23,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:43:23,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:43:23,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:43:25,202.202 INFO    ] ================================================
[2026-06-22 15:43:25,218.218 INFO    ] Launching Daemon at Mon Jun 22 15:43:25 IST 2026
[2026-06-22 15:43:25,228.228 INFO    ] ================================================
[2026-06-22 15:43:25,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:43:25
[2026-06-22 15:43:26,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:43:26,547.547 INFO    ] Initializing speech engine...
[2026-06-22 15:43:26,568.568 INFO    ] 2026-06-22 15:43:26
[2026-06-22 15:43:26,829.829 INFO    ] 2026-06-22 15:43:26
[2026-06-22 15:43:26,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:43:27,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:43:27,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:43:27,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:43:27,303.303 INFO    ] time= 22/06/2026 15:43:27
[2026-06-22 15:43:27,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:43:27,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:43:27,490.490 INFO    ] No existing commands found in stream
[2026-06-22 15:43:32,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:43:32,530.530 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-22 15:43:34,232.232 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:43:34,235.235 INFO    ] Checking for system updates...
[2026-06-22 15:43:34,271.271 INFO    ] 200
[2026-06-22 15:43:34,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:43:34,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:43:34,338.338 INFO    ] No update needed
[2026-06-22 15:43:34,340.340 INFO    ] Checking for camera pi updates...
[2026-06-22 15:43:34,379.379 INFO    ] 200
[2026-06-22 15:43:34,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:43:34,422.422 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:43:34,473.473 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:43:34,476.476 INFO    ] No camera update needed
[2026-06-22 15:43:34,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:43:34,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:43:34,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:43:34,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:43:36,534.534 INFO    ] ================================================
[2026-06-22 15:43:36,549.549 INFO    ] Launching Daemon at Mon Jun 22 15:43:36 IST 2026
[2026-06-22 15:43:36,560.560 INFO    ] ================================================
[2026-06-22 15:43:37,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:43:37
[2026-06-22 15:43:37,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:43:38,000.000 INFO    ] Initializing speech engine...
[2026-06-22 15:43:38,006.006 INFO    ] 2026-06-22 15:43:38
[2026-06-22 15:43:38,266.266 INFO    ] 2026-06-22 15:43:38
[2026-06-22 15:43:38,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:43:38,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:43:38,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:43:38,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:43:38,771.771 INFO    ] time= 22/06/2026 15:43:38
[2026-06-22 15:43:38,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:43:38,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:43:38,949.949 INFO    ] No existing commands found in stream
[2026-06-22 15:43:43,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:43:43,976.976 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-22 15:43:46,097.097 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:43:46,100.100 INFO    ] Checking for system updates...
[2026-06-22 15:43:46,136.136 INFO    ] 200
[2026-06-22 15:43:46,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:43:46,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:43:46,202.202 INFO    ] No update needed
[2026-06-22 15:43:46,204.204 INFO    ] Checking for camera pi updates...
[2026-06-22 15:43:46,238.238 INFO    ] 200
[2026-06-22 15:43:46,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:43:46,281.281 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:43:46,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:43:46,368.368 INFO    ] No camera update needed
[2026-06-22 15:43:46,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:43:46,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:43:46,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:43:46,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:43:48,428.428 INFO    ] ================================================
[2026-06-22 15:43:48,443.443 INFO    ] Launching Daemon at Mon Jun 22 15:43:48 IST 2026
[2026-06-22 15:43:48,454.454 INFO    ] ================================================
[2026-06-22 15:43:49,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:43:49
[2026-06-22 15:43:49,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:43:50,007.007 INFO    ] Initializing speech engine...
[2026-06-22 15:43:50,020.020 INFO    ] 2026-06-22 15:43:50
[2026-06-22 15:43:50,308.308 INFO    ] 2026-06-22 15:43:50
[2026-06-22 15:43:50,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:43:50,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:43:50,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:43:50,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:43:50,856.856 INFO    ] time= 22/06/2026 15:43:50
[2026-06-22 15:43:50,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:43:50,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:43:51,020.020 INFO    ] No existing commands found in stream
[2026-06-22 15:43:56,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:43:56,047.047 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-22 15:43:58,017.017 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:43:58,021.021 INFO    ] Checking for system updates...
[2026-06-22 15:43:58,058.058 INFO    ] 200
[2026-06-22 15:43:58,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:43:58,122.122 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:43:58,125.125 INFO    ] No update needed
[2026-06-22 15:43:58,129.129 INFO    ] Checking for camera pi updates...
[2026-06-22 15:43:58,164.164 INFO    ] 200
[2026-06-22 15:43:58,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:43:58,208.208 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:43:58,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:43:58,306.306 INFO    ] No camera update needed
[2026-06-22 15:43:58,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:43:58,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:43:58,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:43:58,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:44:00,365.365 INFO    ] ================================================
[2026-06-22 15:44:00,381.381 INFO    ] Launching Daemon at Mon Jun 22 15:44:00 IST 2026
[2026-06-22 15:44:00,391.391 INFO    ] ================================================
[2026-06-22 15:44:00,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:44:00
[2026-06-22 15:44:01,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:44:02,133.133 INFO    ] Initializing speech engine...
[2026-06-22 15:44:02,158.158 INFO    ] 2026-06-22 15:44:02
[2026-06-22 15:44:02,567.567 INFO    ] 2026-06-22 15:44:02
[2026-06-22 15:44:02,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:44:02,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:44:02,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:44:03,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:44:03,077.077 INFO    ] time= 22/06/2026 15:44:03
[2026-06-22 15:44:03,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:44:03,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:44:03,246.246 INFO    ] No existing commands found in stream
[2026-06-22 15:44:08,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:44:08,267.267 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-22 15:44:11,343.343 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:44:11,346.346 INFO    ] Checking for system updates...
[2026-06-22 15:44:11,385.385 INFO    ] 200
[2026-06-22 15:44:11,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:44:11,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:44:11,442.442 INFO    ] No update needed
[2026-06-22 15:44:11,444.444 INFO    ] Checking for camera pi updates...
[2026-06-22 15:44:11,478.478 INFO    ] 200
[2026-06-22 15:44:11,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:44:11,522.522 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:44:11,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:44:11,604.604 INFO    ] No camera update needed
[2026-06-22 15:44:11,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:44:11,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:44:11,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:44:11,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:44:13,660.660 INFO    ] ================================================
[2026-06-22 15:44:13,675.675 INFO    ] Launching Daemon at Mon Jun 22 15:44:13 IST 2026
[2026-06-22 15:44:13,686.686 INFO    ] ================================================
[2026-06-22 15:44:14,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:44:14
[2026-06-22 15:44:14,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:44:15,013.013 INFO    ] Initializing speech engine...
[2026-06-22 15:44:15,029.029 INFO    ] 2026-06-22 15:44:15
[2026-06-22 15:44:15,311.311 INFO    ] 2026-06-22 15:44:15
[2026-06-22 15:44:15,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:44:15,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:44:15,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:44:15,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:44:15,722.722 INFO    ] time= 22/06/2026 15:44:15
[2026-06-22 15:44:15,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:44:15,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:44:15,811.811 INFO    ] No existing commands found in stream
[2026-06-22 15:44:20,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:44:20,829.829 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-22 15:44:21,382.382 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:44:21,385.385 INFO    ] Checking for system updates...
[2026-06-22 15:44:21,424.424 INFO    ] 200
[2026-06-22 15:44:21,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:44:21,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:44:21,483.483 INFO    ] No update needed
[2026-06-22 15:44:21,486.486 INFO    ] Checking for camera pi updates...
[2026-06-22 15:44:21,519.519 INFO    ] 200
[2026-06-22 15:44:21,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:44:21,562.562 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:44:21,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:44:21,658.658 INFO    ] No camera update needed
[2026-06-22 15:44:21,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:44:21,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:44:21,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:44:21,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:44:23,714.714 INFO    ] ================================================
[2026-06-22 15:44:23,729.729 INFO    ] Launching Daemon at Mon Jun 22 15:44:23 IST 2026
[2026-06-22 15:44:23,740.740 INFO    ] ================================================
[2026-06-22 15:44:24,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:44:24
[2026-06-22 15:44:24,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:44:25,237.237 INFO    ] Initializing speech engine...
[2026-06-22 15:44:25,245.245 INFO    ] 2026-06-22 15:44:25
[2026-06-22 15:44:25,536.536 INFO    ] 2026-06-22 15:44:25
[2026-06-22 15:44:25,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:44:25,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:44:25,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:44:26,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:44:26,081.081 INFO    ] time= 22/06/2026 15:44:26
[2026-06-22 15:44:26,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:44:26,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:44:26,225.225 INFO    ] No existing commands found in stream
[2026-06-22 15:44:31,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:44:31,258.258 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-22 15:44:34,507.507 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:44:34,510.510 INFO    ] Checking for system updates...
[2026-06-22 15:44:34,533.533 INFO    ] 200
[2026-06-22 15:44:34,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:44:34,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:44:34,567.567 INFO    ] No update needed
[2026-06-22 15:44:34,568.568 INFO    ] Checking for camera pi updates...
[2026-06-22 15:44:34,588.588 INFO    ] 200
[2026-06-22 15:44:34,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:44:34,613.613 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:44:34,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:44:34,702.702 INFO    ] No camera update needed
[2026-06-22 15:44:34,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:44:34,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:44:34,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:44:34,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:44:36,762.762 INFO    ] ================================================
[2026-06-22 15:44:36,777.777 INFO    ] Launching Daemon at Mon Jun 22 15:44:36 IST 2026
[2026-06-22 15:44:36,788.788 INFO    ] ================================================
[2026-06-22 15:44:37,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:44:37
[2026-06-22 15:44:38,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:44:38,320.320 INFO    ] Initializing speech engine...
[2026-06-22 15:44:38,331.331 INFO    ] 2026-06-22 15:44:38
[2026-06-22 15:44:38,602.602 INFO    ] 2026-06-22 15:44:38
[2026-06-22 15:44:38,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:44:38,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:44:38,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:44:39,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:44:39,175.175 INFO    ] time= 22/06/2026 15:44:39
[2026-06-22 15:44:39,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:44:39,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:44:39,359.359 INFO    ] No existing commands found in stream
[2026-06-22 15:44:44,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:44:44,403.403 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-22 15:44:47,225.225 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:44:47,228.228 INFO    ] Checking for system updates...
[2026-06-22 15:44:47,268.268 INFO    ] 200
[2026-06-22 15:44:47,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:44:47,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:44:47,341.341 INFO    ] No update needed
[2026-06-22 15:44:47,343.343 INFO    ] Checking for camera pi updates...
[2026-06-22 15:44:47,377.377 INFO    ] 200
[2026-06-22 15:44:47,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:44:47,419.419 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:44:47,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:44:47,502.502 INFO    ] No camera update needed
[2026-06-22 15:44:47,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:44:47,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:44:47,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:44:47,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:44:49,558.558 INFO    ] ================================================
[2026-06-22 15:44:49,573.573 INFO    ] Launching Daemon at Mon Jun 22 15:44:49 IST 2026
[2026-06-22 15:44:49,584.584 INFO    ] ================================================
[2026-06-22 15:44:50,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:44:50
[2026-06-22 15:44:50,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:44:51,134.134 INFO    ] Initializing speech engine...
[2026-06-22 15:44:51,143.143 INFO    ] 2026-06-22 15:44:51
[2026-06-22 15:44:51,450.450 INFO    ] 2026-06-22 15:44:51
[2026-06-22 15:44:51,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:44:51,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:44:51,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:44:51,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:44:51,885.885 INFO    ] time= 22/06/2026 15:44:51
[2026-06-22 15:44:51,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:44:51,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:44:52,106.106 INFO    ] No existing commands found in stream
[2026-06-22 15:44:57,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:44:57,126.126 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-22 15:44:58,494.494 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:44:58,496.496 INFO    ] Checking for system updates...
[2026-06-22 15:44:58,532.532 INFO    ] 200
[2026-06-22 15:44:58,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:44:58,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:44:58,600.600 INFO    ] No update needed
[2026-06-22 15:44:58,603.603 INFO    ] Checking for camera pi updates...
[2026-06-22 15:44:58,640.640 INFO    ] 200
[2026-06-22 15:44:58,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:44:58,682.682 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:44:58,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:44:58,867.867 INFO    ] No camera update needed
[2026-06-22 15:44:58,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:44:58,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:44:58,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:44:58,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:45:00,922.922 INFO    ] ================================================
[2026-06-22 15:45:00,938.938 INFO    ] Launching Daemon at Mon Jun 22 15:45:00 IST 2026
[2026-06-22 15:45:00,948.948 INFO    ] ================================================
[2026-06-22 15:45:01,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:45:01
[2026-06-22 15:45:02,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:45:03,105.105 INFO    ] Initializing speech engine...
[2026-06-22 15:45:03,117.117 INFO    ] 2026-06-22 15:45:03
[2026-06-22 15:45:03,427.427 INFO    ] 2026-06-22 15:45:03
[2026-06-22 15:45:03,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:45:03,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:45:03,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:45:03,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:45:03,935.935 INFO    ] time= 22/06/2026 15:45:03
[2026-06-22 15:45:04,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:45:04,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:45:04,166.166 INFO    ] No existing commands found in stream
[2026-06-22 15:45:09,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:45:09,187.187 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-22 15:45:10,934.934 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:45:10,935.935 INFO    ] Checking for system updates...
[2026-06-22 15:45:10,970.970 INFO    ] 200
[2026-06-22 15:45:10,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:45:11,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:45:11,030.030 INFO    ] No update needed
[2026-06-22 15:45:11,033.033 INFO    ] Checking for camera pi updates...
[2026-06-22 15:45:11,071.071 INFO    ] 200
[2026-06-22 15:45:11,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:45:11,119.119 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:45:11,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:45:11,218.218 INFO    ] No camera update needed
[2026-06-22 15:45:11,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:45:11,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:45:11,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:45:11,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:45:13,276.276 INFO    ] ================================================
[2026-06-22 15:45:13,290.290 INFO    ] Launching Daemon at Mon Jun 22 15:45:13 IST 2026
[2026-06-22 15:45:13,301.301 INFO    ] ================================================
[2026-06-22 15:45:13,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:45:13
[2026-06-22 15:45:14,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:45:14,802.802 INFO    ] Initializing speech engine...
[2026-06-22 15:45:14,809.809 INFO    ] 2026-06-22 15:45:14
[2026-06-22 15:45:15,053.053 INFO    ] 2026-06-22 15:45:15
[2026-06-22 15:45:15,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:45:15,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:45:15,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:45:15,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:45:15,523.523 INFO    ] time= 22/06/2026 15:45:15
[2026-06-22 15:45:15,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:45:15,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:45:15,727.727 INFO    ] No existing commands found in stream
[2026-06-22 15:45:20,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:45:20,751.751 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-22 15:45:22,746.746 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:45:22,748.748 INFO    ] Checking for system updates...
[2026-06-22 15:45:22,784.784 INFO    ] 200
[2026-06-22 15:45:22,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:45:22,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:45:22,844.844 INFO    ] No update needed
[2026-06-22 15:45:22,846.846 INFO    ] Checking for camera pi updates...
[2026-06-22 15:45:22,880.880 INFO    ] 200
[2026-06-22 15:45:22,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:45:22,929.929 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:45:23,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:45:23,013.013 INFO    ] No camera update needed
[2026-06-22 15:45:23,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:45:23,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:45:23,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:45:23,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:45:25,069.069 INFO    ] ================================================
[2026-06-22 15:45:25,084.084 INFO    ] Launching Daemon at Mon Jun 22 15:45:25 IST 2026
[2026-06-22 15:45:25,094.094 INFO    ] ================================================
[2026-06-22 15:45:25,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:45:25
[2026-06-22 15:45:26,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:45:26,458.458 INFO    ] Initializing speech engine...
[2026-06-22 15:45:26,474.474 INFO    ] 2026-06-22 15:45:26
[2026-06-22 15:45:26,765.765 INFO    ] 2026-06-22 15:45:26
[2026-06-22 15:45:26,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:45:27,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:45:27,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:45:27,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:45:27,157.157 INFO    ] time= 22/06/2026 15:45:27
[2026-06-22 15:45:27,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:45:27,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:45:27,286.286 INFO    ] No existing commands found in stream
[2026-06-22 15:45:32,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:45:32,300.300 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-22 15:45:35,509.509 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:45:35,512.512 INFO    ] Checking for system updates...
[2026-06-22 15:45:35,549.549 INFO    ] 200
[2026-06-22 15:45:35,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:45:35,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:45:35,588.588 INFO    ] No update needed
[2026-06-22 15:45:35,589.589 INFO    ] Checking for camera pi updates...
[2026-06-22 15:45:35,610.610 INFO    ] 200
[2026-06-22 15:45:35,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:45:35,635.635 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:45:35,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:45:35,724.724 INFO    ] No camera update needed
[2026-06-22 15:45:35,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:45:35,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:45:35,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:45:35,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:45:37,784.784 INFO    ] ================================================
[2026-06-22 15:45:37,799.799 INFO    ] Launching Daemon at Mon Jun 22 15:45:37 IST 2026
[2026-06-22 15:45:37,810.810 INFO    ] ================================================
[2026-06-22 15:45:38,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:45:38
[2026-06-22 15:45:38,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:45:39,154.154 INFO    ] Initializing speech engine...
[2026-06-22 15:45:39,160.160 INFO    ] 2026-06-22 15:45:39
[2026-06-22 15:45:39,434.434 INFO    ] 2026-06-22 15:45:39
[2026-06-22 15:45:39,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:45:39,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:45:39,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:45:39,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:45:39,952.952 INFO    ] time= 22/06/2026 15:45:39
[2026-06-22 15:45:40,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:45:40,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:45:40,143.143 INFO    ] No existing commands found in stream
[2026-06-22 15:45:45,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:45:45,171.171 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-22 15:45:46,023.023 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:45:46,025.025 INFO    ] Checking for system updates...
[2026-06-22 15:45:46,046.046 INFO    ] 200
[2026-06-22 15:45:46,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:45:46,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:45:46,099.099 INFO    ] No update needed
[2026-06-22 15:45:46,102.102 INFO    ] Checking for camera pi updates...
[2026-06-22 15:45:46,136.136 INFO    ] 200
[2026-06-22 15:45:46,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:45:46,185.185 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:45:46,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:45:46,287.287 INFO    ] No camera update needed
[2026-06-22 15:45:46,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:45:46,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:45:46,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:45:46,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:45:48,342.342 INFO    ] ================================================
[2026-06-22 15:45:48,357.357 INFO    ] Launching Daemon at Mon Jun 22 15:45:48 IST 2026
[2026-06-22 15:45:48,368.368 INFO    ] ================================================
[2026-06-22 15:45:48,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:45:48
[2026-06-22 15:45:49,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:45:49,830.830 INFO    ] Initializing speech engine...
[2026-06-22 15:45:49,839.839 INFO    ] 2026-06-22 15:45:49
[2026-06-22 15:45:50,098.098 INFO    ] 2026-06-22 15:45:50
[2026-06-22 15:45:50,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:45:50,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:45:50,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:45:50,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:45:50,563.563 INFO    ] time= 22/06/2026 15:45:50
[2026-06-22 15:45:50,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:45:50,649.649 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:45:50,795.795 INFO    ] No existing commands found in stream
[2026-06-22 15:45:55,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:45:55,811.811 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-22 15:45:58,960.960 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:45:58,962.962 INFO    ] Checking for system updates...
[2026-06-22 15:45:58,994.994 INFO    ] 200
[2026-06-22 15:45:58,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:45:59,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:45:59,053.053 INFO    ] No update needed
[2026-06-22 15:45:59,056.056 INFO    ] Checking for camera pi updates...
[2026-06-22 15:45:59,094.094 INFO    ] 200
[2026-06-22 15:45:59,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:45:59,141.141 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:45:59,239.239 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:45:59,242.242 INFO    ] No camera update needed
[2026-06-22 15:45:59,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:45:59,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:45:59,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:45:59,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:46:01,299.299 INFO    ] ================================================
[2026-06-22 15:46:01,314.314 INFO    ] Launching Daemon at Mon Jun 22 15:46:01 IST 2026
[2026-06-22 15:46:01,325.325 INFO    ] ================================================
[2026-06-22 15:46:01,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:46:01
[2026-06-22 15:46:02,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:46:02,991.991 INFO    ] Initializing speech engine...
[2026-06-22 15:46:03,010.010 INFO    ] 2026-06-22 15:46:02
[2026-06-22 15:46:03,333.333 INFO    ] 2026-06-22 15:46:03
[2026-06-22 15:46:03,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:46:03,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:46:03,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:46:03,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:46:03,762.762 INFO    ] time= 22/06/2026 15:46:03
[2026-06-22 15:46:03,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:46:03,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:46:03,958.958 INFO    ] No existing commands found in stream
[2026-06-22 15:46:08,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:46:08,986.986 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-22 15:46:13,039.039 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:46:13,042.042 INFO    ] Checking for system updates...
[2026-06-22 15:46:13,078.078 INFO    ] 200
[2026-06-22 15:46:13,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:46:13,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:46:13,141.141 INFO    ] No update needed
[2026-06-22 15:46:13,144.144 INFO    ] Checking for camera pi updates...
[2026-06-22 15:46:13,178.178 INFO    ] 200
[2026-06-22 15:46:13,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:46:13,225.225 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:46:13,308.308 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:46:13,311.311 INFO    ] No camera update needed
[2026-06-22 15:46:13,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:46:13,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:46:13,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:46:13,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:46:15,368.368 INFO    ] ================================================
[2026-06-22 15:46:15,382.382 INFO    ] Launching Daemon at Mon Jun 22 15:46:15 IST 2026
[2026-06-22 15:46:15,393.393 INFO    ] ================================================
[2026-06-22 15:46:15,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:46:15
[2026-06-22 15:46:16,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:46:16,732.732 INFO    ] Initializing speech engine...
[2026-06-22 15:46:16,748.748 INFO    ] 2026-06-22 15:46:16
[2026-06-22 15:46:17,025.025 INFO    ] 2026-06-22 15:46:16
[2026-06-22 15:46:17,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:46:17,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:46:17,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:46:17,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:46:17,429.429 INFO    ] time= 22/06/2026 15:46:17
[2026-06-22 15:46:17,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:46:17,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:46:17,614.614 INFO    ] No existing commands found in stream
[2026-06-22 15:46:22,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:46:22,647.647 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-22 15:46:23,156.156 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:46:23,158.158 INFO    ] Checking for system updates...
[2026-06-22 15:46:23,194.194 INFO    ] 200
[2026-06-22 15:46:23,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:46:23,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:46:23,252.252 INFO    ] No update needed
[2026-06-22 15:46:23,255.255 INFO    ] Checking for camera pi updates...
[2026-06-22 15:46:23,291.291 INFO    ] 200
[2026-06-22 15:46:23,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:46:23,337.337 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:46:23,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:46:23,427.427 INFO    ] No camera update needed
[2026-06-22 15:46:23,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:46:23,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:46:23,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:46:23,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:46:25,484.484 INFO    ] ================================================
[2026-06-22 15:46:25,499.499 INFO    ] Launching Daemon at Mon Jun 22 15:46:25 IST 2026
[2026-06-22 15:46:25,509.509 INFO    ] ================================================
[2026-06-22 15:46:26,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:46:26
[2026-06-22 15:46:26,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:46:26,966.966 INFO    ] Initializing speech engine...
[2026-06-22 15:46:26,973.973 INFO    ] 2026-06-22 15:46:26
[2026-06-22 15:46:27,236.236 INFO    ] 2026-06-22 15:46:27
[2026-06-22 15:46:27,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:46:27,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:46:27,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:46:27,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:46:27,776.776 INFO    ] time= 22/06/2026 15:46:27
[2026-06-22 15:46:27,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:46:27,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:46:27,932.932 INFO    ] No existing commands found in stream
[2026-06-22 15:46:32,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:46:32,949.949 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-22 15:46:36,270.270 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:46:36,271.271 INFO    ] Checking for system updates...
[2026-06-22 15:46:36,292.292 INFO    ] 200
[2026-06-22 15:46:36,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:46:36,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:46:36,345.345 INFO    ] No update needed
[2026-06-22 15:46:36,348.348 INFO    ] Checking for camera pi updates...
[2026-06-22 15:46:36,382.382 INFO    ] 200
[2026-06-22 15:46:36,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:46:36,434.434 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:46:36,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:46:36,522.522 INFO    ] No camera update needed
[2026-06-22 15:46:36,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:46:36,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:46:36,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:46:36,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:46:38,578.578 INFO    ] ================================================
[2026-06-22 15:46:38,592.592 INFO    ] Launching Daemon at Mon Jun 22 15:46:38 IST 2026
[2026-06-22 15:46:38,603.603 INFO    ] ================================================
[2026-06-22 15:46:39,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:46:39
[2026-06-22 15:46:39,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:46:39,916.916 INFO    ] Initializing speech engine...
[2026-06-22 15:46:39,928.928 INFO    ] 2026-06-22 15:46:39
[2026-06-22 15:46:40,196.196 INFO    ] 2026-06-22 15:46:40
[2026-06-22 15:46:40,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:46:40,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:46:40,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:46:40,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:46:40,698.698 INFO    ] time= 22/06/2026 15:46:40
[2026-06-22 15:46:40,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:46:40,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:46:40,906.906 INFO    ] No existing commands found in stream
[2026-06-22 15:46:45,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:46:45,939.939 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-22 15:46:47,800.800 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:46:47,802.802 INFO    ] Checking for system updates...
[2026-06-22 15:46:47,839.839 INFO    ] 200
[2026-06-22 15:46:47,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:46:47,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:46:47,897.897 INFO    ] No update needed
[2026-06-22 15:46:47,899.899 INFO    ] Checking for camera pi updates...
[2026-06-22 15:46:47,932.932 INFO    ] 200
[2026-06-22 15:46:47,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:46:47,977.977 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:46:48,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:46:48,032.032 INFO    ] No camera update needed
[2026-06-22 15:46:48,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:46:48,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:46:48,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:46:48,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:46:50,089.089 INFO    ] ================================================
[2026-06-22 15:46:50,104.104 INFO    ] Launching Daemon at Mon Jun 22 15:46:50 IST 2026
[2026-06-22 15:46:50,114.114 INFO    ] ================================================
[2026-06-22 15:46:50,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:46:50
[2026-06-22 15:46:51,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:46:51,569.569 INFO    ] Initializing speech engine...
[2026-06-22 15:46:51,591.591 INFO    ] 2026-06-22 15:46:51
[2026-06-22 15:46:51,848.848 INFO    ] 2026-06-22 15:46:51
[2026-06-22 15:46:51,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:46:52,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:46:52,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:46:52,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:46:52,225.225 INFO    ] time= 22/06/2026 15:46:52
[2026-06-22 15:46:52,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:46:52,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:46:52,401.401 INFO    ] No existing commands found in stream
[2026-06-22 15:46:57,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:46:57,433.433 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-22 15:47:01,815.815 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:47:01,818.818 INFO    ] Checking for system updates...
[2026-06-22 15:47:01,877.877 INFO    ] 200
[2026-06-22 15:47:01,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:47:01,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:47:01,960.960 INFO    ] No update needed
[2026-06-22 15:47:01,963.963 INFO    ] Checking for camera pi updates...
[2026-06-22 15:47:02,006.006 INFO    ] 200
[2026-06-22 15:47:02,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:47:02,056.056 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:47:02,214.214 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:47:02,218.218 INFO    ] No camera update needed
[2026-06-22 15:47:02,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:47:02,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:47:02,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:47:02,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:47:04,279.279 INFO    ] ================================================
[2026-06-22 15:47:04,295.295 INFO    ] Launching Daemon at Mon Jun 22 15:47:04 IST 2026
[2026-06-22 15:47:04,305.305 INFO    ] ================================================
[2026-06-22 15:47:04,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:47:04
[2026-06-22 15:47:05,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:47:05,786.786 INFO    ] Initializing speech engine...
[2026-06-22 15:47:05,797.797 INFO    ] 2026-06-22 15:47:05
[2026-06-22 15:47:06,092.092 INFO    ] 2026-06-22 15:47:06
[2026-06-22 15:47:06,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:47:06,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:47:06,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:47:06,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:47:06,584.584 INFO    ] time= 22/06/2026 15:47:06
[2026-06-22 15:47:06,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:47:06,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:47:06,779.779 INFO    ] No existing commands found in stream
[2026-06-22 15:47:11,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:47:11,807.807 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-22 15:47:12,673.673 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:47:12,675.675 INFO    ] Checking for system updates...
[2026-06-22 15:47:12,697.697 INFO    ] 200
[2026-06-22 15:47:12,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:47:12,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:47:12,747.747 INFO    ] No update needed
[2026-06-22 15:47:12,750.750 INFO    ] Checking for camera pi updates...
[2026-06-22 15:47:12,792.792 INFO    ] 200
[2026-06-22 15:47:12,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:47:12,842.842 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:47:12,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:47:12,942.942 INFO    ] No camera update needed
[2026-06-22 15:47:12,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:47:12,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:47:12,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:47:12,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:47:15,014.014 INFO    ] ================================================
[2026-06-22 15:47:15,029.029 INFO    ] Launching Daemon at Mon Jun 22 15:47:15 IST 2026
[2026-06-22 15:47:15,040.040 INFO    ] ================================================
[2026-06-22 15:47:15,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:47:15
[2026-06-22 15:47:16,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:47:16,471.471 INFO    ] Initializing speech engine...
[2026-06-22 15:47:16,480.480 INFO    ] 2026-06-22 15:47:16
[2026-06-22 15:47:16,728.728 INFO    ] 2026-06-22 15:47:16
[2026-06-22 15:47:16,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:47:16,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:47:16,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:47:17,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:47:17,215.215 INFO    ] time= 22/06/2026 15:47:17
[2026-06-22 15:47:17,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:47:17,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:47:17,436.436 INFO    ] No existing commands found in stream
[2026-06-22 15:47:22,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:47:22,465.465 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-22 15:47:24,969.969 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:47:24,970.970 INFO    ] Checking for system updates...
[2026-06-22 15:47:24,991.991 INFO    ] 200
[2026-06-22 15:47:24,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:47:25,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:47:25,027.027 INFO    ] No update needed
[2026-06-22 15:47:25,028.028 INFO    ] Checking for camera pi updates...
[2026-06-22 15:47:25,060.060 INFO    ] 200
[2026-06-22 15:47:25,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:47:25,104.104 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:47:25,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:47:25,194.194 INFO    ] No camera update needed
[2026-06-22 15:47:25,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:47:25,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:47:25,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:47:25,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:47:27,254.254 INFO    ] ================================================
[2026-06-22 15:47:27,269.269 INFO    ] Launching Daemon at Mon Jun 22 15:47:27 IST 2026
[2026-06-22 15:47:27,279.279 INFO    ] ================================================
[2026-06-22 15:47:27,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:47:27
[2026-06-22 15:47:28,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:47:28,787.787 INFO    ] Initializing speech engine...
[2026-06-22 15:47:28,795.795 INFO    ] 2026-06-22 15:47:28
[2026-06-22 15:47:29,053.053 INFO    ] 2026-06-22 15:47:29
[2026-06-22 15:47:29,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:47:29,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:47:29,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:47:29,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:47:29,559.559 INFO    ] time= 22/06/2026 15:47:29
[2026-06-22 15:47:29,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:47:29,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:47:29,780.780 INFO    ] No existing commands found in stream
[2026-06-22 15:47:34,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:47:34,803.803 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-22 15:47:37,107.107 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:47:37,110.110 INFO    ] Checking for system updates...
[2026-06-22 15:47:37,148.148 INFO    ] 200
[2026-06-22 15:47:37,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:47:37,205.205 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:47:37,208.208 INFO    ] No update needed
[2026-06-22 15:47:37,211.211 INFO    ] Checking for camera pi updates...
[2026-06-22 15:47:37,247.247 INFO    ] 200
[2026-06-22 15:47:37,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:47:37,292.292 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:47:37,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:47:37,396.396 INFO    ] No camera update needed
[2026-06-22 15:47:37,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:47:37,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:47:37,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:47:37,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:47:39,451.451 INFO    ] ================================================
[2026-06-22 15:47:39,467.467 INFO    ] Launching Daemon at Mon Jun 22 15:47:39 IST 2026
[2026-06-22 15:47:39,478.478 INFO    ] ================================================
[2026-06-22 15:47:40,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:47:40
[2026-06-22 15:47:40,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:47:41,108.108 INFO    ] Initializing speech engine...
[2026-06-22 15:47:41,121.121 INFO    ] 2026-06-22 15:47:41
[2026-06-22 15:47:41,391.391 INFO    ] 2026-06-22 15:47:41
[2026-06-22 15:47:41,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:47:41,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:47:41,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:47:41,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:47:41,944.944 INFO    ] time= 22/06/2026 15:47:41
[2026-06-22 15:47:41,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:47:41,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:47:42,103.103 INFO    ] No existing commands found in stream
[2026-06-22 15:47:47,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:47:47,127.127 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-22 15:47:49,596.596 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:47:49,599.599 INFO    ] Checking for system updates...
[2026-06-22 15:47:49,636.636 INFO    ] 200
[2026-06-22 15:47:49,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:47:49,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:47:49,694.694 INFO    ] No update needed
[2026-06-22 15:47:49,697.697 INFO    ] Checking for camera pi updates...
[2026-06-22 15:47:49,731.731 INFO    ] 200
[2026-06-22 15:47:49,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:47:49,775.775 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:47:49,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:47:49,867.867 INFO    ] No camera update needed
[2026-06-22 15:47:49,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:47:49,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:47:49,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:47:49,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:47:51,924.924 INFO    ] ================================================
[2026-06-22 15:47:51,939.939 INFO    ] Launching Daemon at Mon Jun 22 15:47:51 IST 2026
[2026-06-22 15:47:51,949.949 INFO    ] ================================================
[2026-06-22 15:47:52,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:47:52
[2026-06-22 15:47:53,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:47:53,286.286 INFO    ] Initializing speech engine...
[2026-06-22 15:47:53,296.296 INFO    ] 2026-06-22 15:47:53
[2026-06-22 15:47:53,559.559 INFO    ] 2026-06-22 15:47:53
[2026-06-22 15:47:53,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:47:53,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:47:53,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:47:53,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:47:54,042.042 INFO    ] time= 22/06/2026 15:47:53
[2026-06-22 15:47:54,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:47:54,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:47:54,229.229 INFO    ] No existing commands found in stream
[2026-06-22 15:47:59,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:47:59,256.256 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-22 15:48:03,528.528 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:48:03,532.532 INFO    ] Checking for system updates...
[2026-06-22 15:48:03,575.575 INFO    ] 200
[2026-06-22 15:48:03,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:48:03,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:48:03,642.642 INFO    ] No update needed
[2026-06-22 15:48:03,645.645 INFO    ] Checking for camera pi updates...
[2026-06-22 15:48:03,680.680 INFO    ] 200
[2026-06-22 15:48:03,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:48:03,725.725 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:48:03,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:48:03,826.826 INFO    ] No camera update needed
[2026-06-22 15:48:03,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:48:03,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:48:03,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:48:03,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:48:05,885.885 INFO    ] ================================================
[2026-06-22 15:48:05,901.901 INFO    ] Launching Daemon at Mon Jun 22 15:48:05 IST 2026
[2026-06-22 15:48:05,911.911 INFO    ] ================================================
[2026-06-22 15:48:06,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:48:06
[2026-06-22 15:48:07,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:48:07,364.364 INFO    ] Initializing speech engine...
[2026-06-22 15:48:07,373.373 INFO    ] 2026-06-22 15:48:07
[2026-06-22 15:48:07,625.625 INFO    ] 2026-06-22 15:48:07
[2026-06-22 15:48:07,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:48:07,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:48:07,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:48:08,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:48:08,191.191 INFO    ] time= 22/06/2026 15:48:08
[2026-06-22 15:48:08,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:48:08,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:48:08,348.348 INFO    ] No existing commands found in stream
[2026-06-22 15:48:13,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:48:13,367.367 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-22 15:48:16,406.406 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:48:16,408.408 INFO    ] Checking for system updates...
[2026-06-22 15:48:16,445.445 INFO    ] 200
[2026-06-22 15:48:16,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:48:16,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:48:16,503.503 INFO    ] No update needed
[2026-06-22 15:48:16,505.505 INFO    ] Checking for camera pi updates...
[2026-06-22 15:48:16,539.539 INFO    ] 200
[2026-06-22 15:48:16,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:48:16,582.582 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:48:16,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:48:16,664.664 INFO    ] No camera update needed
[2026-06-22 15:48:16,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:48:16,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:48:16,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:48:16,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:48:18,720.720 INFO    ] ================================================
[2026-06-22 15:48:18,736.736 INFO    ] Launching Daemon at Mon Jun 22 15:48:18 IST 2026
[2026-06-22 15:48:18,746.746 INFO    ] ================================================
[2026-06-22 15:48:19,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:48:19
[2026-06-22 15:48:19,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:48:20,221.221 INFO    ] Initializing speech engine...
[2026-06-22 15:48:20,231.231 INFO    ] 2026-06-22 15:48:20
[2026-06-22 15:48:20,540.540 INFO    ] 2026-06-22 15:48:20
[2026-06-22 15:48:20,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:48:20,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:48:20,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:48:20,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:48:21,042.042 INFO    ] time= 22/06/2026 15:48:20
[2026-06-22 15:48:21,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:48:21,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:48:21,203.203 INFO    ] No existing commands found in stream
[2026-06-22 15:48:26,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:48:26,230.230 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-22 15:48:28,185.185 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:48:28,188.188 INFO    ] Checking for system updates...
[2026-06-22 15:48:28,231.231 INFO    ] 200
[2026-06-22 15:48:28,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:48:28,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:48:28,293.293 INFO    ] No update needed
[2026-06-22 15:48:28,295.295 INFO    ] Checking for camera pi updates...
[2026-06-22 15:48:28,332.332 INFO    ] 200
[2026-06-22 15:48:28,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:48:28,378.378 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:48:28,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:48:28,467.467 INFO    ] No camera update needed
[2026-06-22 15:48:28,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:48:28,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:48:28,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:48:28,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:48:30,523.523 INFO    ] ================================================
[2026-06-22 15:48:30,538.538 INFO    ] Launching Daemon at Mon Jun 22 15:48:30 IST 2026
[2026-06-22 15:48:30,550.550 INFO    ] ================================================
[2026-06-22 15:48:31,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:48:31
[2026-06-22 15:48:31,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:48:32,025.025 INFO    ] Initializing speech engine...
[2026-06-22 15:48:32,041.041 INFO    ] 2026-06-22 15:48:32
[2026-06-22 15:48:32,350.350 INFO    ] 2026-06-22 15:48:32
[2026-06-22 15:48:32,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:48:32,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:48:32,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:48:32,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:48:32,721.721 INFO    ] time= 22/06/2026 15:48:32
[2026-06-22 15:48:32,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:48:32,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:48:32,872.872 INFO    ] No existing commands found in stream
[2026-06-22 15:48:37,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:48:37,890.890 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-22 15:48:41,426.426 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:48:41,429.429 INFO    ] Checking for system updates...
[2026-06-22 15:48:41,465.465 INFO    ] 200
[2026-06-22 15:48:41,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:48:41,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:48:41,528.528 INFO    ] No update needed
[2026-06-22 15:48:41,530.530 INFO    ] Checking for camera pi updates...
[2026-06-22 15:48:41,564.564 INFO    ] 200
[2026-06-22 15:48:41,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:48:41,609.609 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:48:41,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:48:41,686.686 INFO    ] No camera update needed
[2026-06-22 15:48:41,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:48:41,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:48:41,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:48:41,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:48:43,741.741 INFO    ] ================================================
[2026-06-22 15:48:43,756.756 INFO    ] Launching Daemon at Mon Jun 22 15:48:43 IST 2026
[2026-06-22 15:48:43,767.767 INFO    ] ================================================
[2026-06-22 15:48:44,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:48:44
[2026-06-22 15:48:44,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:48:45,202.202 INFO    ] Initializing speech engine...
[2026-06-22 15:48:45,215.215 INFO    ] 2026-06-22 15:48:45
[2026-06-22 15:48:45,495.495 INFO    ] 2026-06-22 15:48:45
[2026-06-22 15:48:45,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:48:45,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:48:45,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:48:45,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:48:45,902.902 INFO    ] time= 22/06/2026 15:48:45
[2026-06-22 15:48:45,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:48:45,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:48:45,988.988 INFO    ] No existing commands found in stream
[2026-06-22 15:48:51,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:48:51,006.006 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-22 15:48:52,327.327 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:48:52,330.330 INFO    ] Checking for system updates...
[2026-06-22 15:48:52,367.367 INFO    ] 200
[2026-06-22 15:48:52,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:48:52,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:48:52,432.432 INFO    ] No update needed
[2026-06-22 15:48:52,435.435 INFO    ] Checking for camera pi updates...
[2026-06-22 15:48:52,473.473 INFO    ] 200
[2026-06-22 15:48:52,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:48:52,512.512 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:48:52,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:48:52,591.591 INFO    ] No camera update needed
[2026-06-22 15:48:52,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:48:52,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:48:52,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:48:52,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:48:54,640.640 INFO    ] ================================================
[2026-06-22 15:48:54,655.655 INFO    ] Launching Daemon at Mon Jun 22 15:48:54 IST 2026
[2026-06-22 15:48:54,665.665 INFO    ] ================================================
[2026-06-22 15:48:55,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:48:55
[2026-06-22 15:48:55,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:48:56,124.124 INFO    ] Initializing speech engine...
[2026-06-22 15:48:56,134.134 INFO    ] 2026-06-22 15:48:56
[2026-06-22 15:48:56,405.405 INFO    ] 2026-06-22 15:48:56
[2026-06-22 15:48:56,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:48:56,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:48:56,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:48:56,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:48:56,954.954 INFO    ] time= 22/06/2026 15:48:56
[2026-06-22 15:48:56,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:48:56,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:48:57,100.100 INFO    ] No existing commands found in stream
[2026-06-22 15:49:02,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:49:02,123.123 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-22 15:49:04,756.756 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:49:04,759.759 INFO    ] Checking for system updates...
[2026-06-22 15:49:04,797.797 INFO    ] 200
[2026-06-22 15:49:04,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:49:04,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:49:04,856.856 INFO    ] No update needed
[2026-06-22 15:49:04,859.859 INFO    ] Checking for camera pi updates...
[2026-06-22 15:49:04,894.894 INFO    ] 200
[2026-06-22 15:49:04,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:49:04,938.938 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:49:05,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:49:05,123.123 INFO    ] No camera update needed
[2026-06-22 15:49:05,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:49:05,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:49:05,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:49:05,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:49:07,185.185 INFO    ] ================================================
[2026-06-22 15:49:07,200.200 INFO    ] Launching Daemon at Mon Jun 22 15:49:07 IST 2026
[2026-06-22 15:49:07,212.212 INFO    ] ================================================
[2026-06-22 15:49:07,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:49:07
[2026-06-22 15:49:08,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:49:08,668.668 INFO    ] Initializing speech engine...
[2026-06-22 15:49:08,685.685 INFO    ] 2026-06-22 15:49:08
[2026-06-22 15:49:08,972.972 INFO    ] 2026-06-22 15:49:08
[2026-06-22 15:49:09,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:49:09,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:49:09,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:49:09,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:49:09,388.388 INFO    ] time= 22/06/2026 15:49:09
[2026-06-22 15:49:09,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:49:09,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:49:09,484.484 INFO    ] No existing commands found in stream
[2026-06-22 15:49:14,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:49:14,518.518 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-22 15:49:15,178.178 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:49:15,181.181 INFO    ] Checking for system updates...
[2026-06-22 15:49:15,218.218 INFO    ] 200
[2026-06-22 15:49:15,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:49:15,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:49:15,276.276 INFO    ] No update needed
[2026-06-22 15:49:15,282.282 INFO    ] Checking for camera pi updates...
[2026-06-22 15:49:15,319.319 INFO    ] 200
[2026-06-22 15:49:15,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:49:15,363.363 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:49:15,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:49:15,438.438 INFO    ] No camera update needed
[2026-06-22 15:49:15,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:49:15,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:49:15,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:49:15,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:49:17,494.494 INFO    ] ================================================
[2026-06-22 15:49:17,509.509 INFO    ] Launching Daemon at Mon Jun 22 15:49:17 IST 2026
[2026-06-22 15:49:17,521.521 INFO    ] ================================================
[2026-06-22 15:49:18,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:49:18
[2026-06-22 15:49:18,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:49:18,965.965 INFO    ] Initializing speech engine...
[2026-06-22 15:49:18,974.974 INFO    ] 2026-06-22 15:49:18
[2026-06-22 15:49:19,265.265 INFO    ] 2026-06-22 15:49:19
[2026-06-22 15:49:19,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:49:19,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:49:19,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:49:19,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:49:19,677.677 INFO    ] time= 22/06/2026 15:49:19
[2026-06-22 15:49:19,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:49:19,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:49:19,837.837 INFO    ] No existing commands found in stream
[2026-06-22 15:49:24,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:49:24,866.866 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-22 15:49:27,743.743 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:49:27,746.746 INFO    ] Checking for system updates...
[2026-06-22 15:49:27,784.784 INFO    ] 200
[2026-06-22 15:49:27,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:49:27,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:49:27,843.843 INFO    ] No update needed
[2026-06-22 15:49:27,845.845 INFO    ] Checking for camera pi updates...
[2026-06-22 15:49:27,880.880 INFO    ] 200
[2026-06-22 15:49:27,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:49:27,923.923 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:49:28,002.002 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:49:28,005.005 INFO    ] No camera update needed
[2026-06-22 15:49:28,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:49:28,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:49:28,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:49:28,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:49:30,065.065 INFO    ] ================================================
[2026-06-22 15:49:30,081.081 INFO    ] Launching Daemon at Mon Jun 22 15:49:30 IST 2026
[2026-06-22 15:49:30,092.092 INFO    ] ================================================
[2026-06-22 15:49:30,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:49:30
[2026-06-22 15:49:31,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:49:31,478.478 INFO    ] Initializing speech engine...
[2026-06-22 15:49:31,489.489 INFO    ] 2026-06-22 15:49:31
[2026-06-22 15:49:31,752.752 INFO    ] 2026-06-22 15:49:31
[2026-06-22 15:49:31,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:49:32,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:49:32,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:49:32,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:49:32,339.339 INFO    ] time= 22/06/2026 15:49:32
[2026-06-22 15:49:32,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:49:32,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:49:32,488.488 INFO    ] No existing commands found in stream
[2026-06-22 15:49:37,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:49:37,519.519 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-22 15:49:39,561.561 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:49:39,564.564 INFO    ] Checking for system updates...
[2026-06-22 15:49:39,600.600 INFO    ] 200
[2026-06-22 15:49:39,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:49:39,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:49:39,662.662 INFO    ] No update needed
[2026-06-22 15:49:39,665.665 INFO    ] Checking for camera pi updates...
[2026-06-22 15:49:39,698.698 INFO    ] 200
[2026-06-22 15:49:39,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:49:39,741.741 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:49:39,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:49:39,797.797 INFO    ] No camera update needed
[2026-06-22 15:49:39,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:49:39,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:49:39,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:49:39,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:49:41,854.854 INFO    ] ================================================
[2026-06-22 15:49:41,869.869 INFO    ] Launching Daemon at Mon Jun 22 15:49:41 IST 2026
[2026-06-22 15:49:41,881.881 INFO    ] ================================================
[2026-06-22 15:49:42,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:49:42
[2026-06-22 15:49:42,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:49:43,255.255 INFO    ] Initializing speech engine...
[2026-06-22 15:49:43,258.258 INFO    ] 2026-06-22 15:49:43
[2026-06-22 15:49:43,511.511 INFO    ] 2026-06-22 15:49:43
[2026-06-22 15:49:43,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:49:43,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:49:43,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:49:44,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:49:44,082.082 INFO    ] time= 22/06/2026 15:49:44
[2026-06-22 15:49:44,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:49:44,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:49:44,239.239 INFO    ] No existing commands found in stream
[2026-06-22 15:49:49,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:49:49,260.260 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-22 15:49:51,629.629 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:49:51,632.632 INFO    ] Checking for system updates...
[2026-06-22 15:49:51,670.670 INFO    ] 200
[2026-06-22 15:49:51,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:49:51,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:49:51,737.737 INFO    ] No update needed
[2026-06-22 15:49:51,740.740 INFO    ] Checking for camera pi updates...
[2026-06-22 15:49:51,776.776 INFO    ] 200
[2026-06-22 15:49:51,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:49:51,825.825 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:49:51,914.914 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:49:51,917.917 INFO    ] No camera update needed
[2026-06-22 15:49:51,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:49:51,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:49:51,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:49:51,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:49:53,978.978 INFO    ] ================================================
[2026-06-22 15:49:53,994.994 INFO    ] Launching Daemon at Mon Jun 22 15:49:53 IST 2026
[2026-06-22 15:49:54,005.005 INFO    ] ================================================
[2026-06-22 15:49:54,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:49:54
[2026-06-22 15:49:55,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:49:55,631.631 INFO    ] Initializing speech engine...
[2026-06-22 15:49:55,638.638 INFO    ] 2026-06-22 15:49:55
[2026-06-22 15:49:55,915.915 INFO    ] 2026-06-22 15:49:55
[2026-06-22 15:49:55,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:49:56,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:49:56,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:49:56,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:49:56,403.403 INFO    ] time= 22/06/2026 15:49:56
[2026-06-22 15:49:56,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:49:56,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:49:56,626.626 INFO    ] No existing commands found in stream
[2026-06-22 15:50:01,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:50:01,658.658 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-22 15:50:07,949.949 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:50:07,952.952 INFO    ] Checking for system updates...
[2026-06-22 15:50:07,989.989 INFO    ] 200
[2026-06-22 15:50:07,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:50:08,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:50:08,048.048 INFO    ] No update needed
[2026-06-22 15:50:08,051.051 INFO    ] Checking for camera pi updates...
[2026-06-22 15:50:08,086.086 INFO    ] 200
[2026-06-22 15:50:08,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:50:08,131.131 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:50:08,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:50:08,187.187 INFO    ] No camera update needed
[2026-06-22 15:50:08,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:50:08,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:50:08,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:50:08,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:50:10,247.247 INFO    ] ================================================
[2026-06-22 15:50:10,263.263 INFO    ] Launching Daemon at Mon Jun 22 15:50:10 IST 2026
[2026-06-22 15:50:10,274.274 INFO    ] ================================================
[2026-06-22 15:50:10,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:50:10
[2026-06-22 15:50:11,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:50:11,822.822 INFO    ] Initializing speech engine...
[2026-06-22 15:50:11,835.835 INFO    ] 2026-06-22 15:50:11
[2026-06-22 15:50:12,111.111 INFO    ] 2026-06-22 15:50:12
[2026-06-22 15:50:12,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:50:12,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:50:12,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:50:12,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:50:12,610.610 INFO    ] time= 22/06/2026 15:50:12
[2026-06-22 15:50:12,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:50:12,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:50:12,860.860 INFO    ] No existing commands found in stream
[2026-06-22 15:50:17,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:50:17,901.901 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-22 15:50:21,115.115 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:50:21,118.118 INFO    ] Checking for system updates...
[2026-06-22 15:50:21,156.156 INFO    ] 200
[2026-06-22 15:50:21,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:50:21,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:50:21,223.223 INFO    ] No update needed
[2026-06-22 15:50:21,227.227 INFO    ] Checking for camera pi updates...
[2026-06-22 15:50:21,262.262 INFO    ] 200
[2026-06-22 15:50:21,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:50:21,307.307 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:50:21,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:50:21,398.398 INFO    ] No camera update needed
[2026-06-22 15:50:21,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:50:21,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:50:21,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:50:21,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:50:23,458.458 INFO    ] ================================================
[2026-06-22 15:50:23,473.473 INFO    ] Launching Daemon at Mon Jun 22 15:50:23 IST 2026
[2026-06-22 15:50:23,484.484 INFO    ] ================================================
[2026-06-22 15:50:24,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:50:24
[2026-06-22 15:50:24,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:50:25,042.042 INFO    ] Initializing speech engine...
[2026-06-22 15:50:25,048.048 INFO    ] 2026-06-22 15:50:25
[2026-06-22 15:50:25,329.329 INFO    ] 2026-06-22 15:50:25
[2026-06-22 15:50:25,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:50:25,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:50:25,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:50:25,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:50:25,825.825 INFO    ] time= 22/06/2026 15:50:25
[2026-06-22 15:50:25,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:50:25,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:50:26,022.022 INFO    ] No existing commands found in stream
[2026-06-22 15:50:31,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:50:31,057.057 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-22 15:50:31,621.621 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:50:31,624.624 INFO    ] Checking for system updates...
[2026-06-22 15:50:31,661.661 INFO    ] 200
[2026-06-22 15:50:31,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:50:31,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:50:31,720.720 INFO    ] No update needed
[2026-06-22 15:50:31,723.723 INFO    ] Checking for camera pi updates...
[2026-06-22 15:50:31,765.765 INFO    ] 200
[2026-06-22 15:50:31,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:50:31,810.810 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:50:31,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:50:31,870.870 INFO    ] No camera update needed
[2026-06-22 15:50:31,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:50:31,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:50:31,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:50:31,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:50:33,927.927 INFO    ] ================================================
[2026-06-22 15:50:33,943.943 INFO    ] Launching Daemon at Mon Jun 22 15:50:33 IST 2026
[2026-06-22 15:50:33,953.953 INFO    ] ================================================
[2026-06-22 15:50:34,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:50:34
[2026-06-22 15:50:35,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:50:35,625.625 INFO    ] Initializing speech engine...
[2026-06-22 15:50:35,634.634 INFO    ] 2026-06-22 15:50:35
[2026-06-22 15:50:35,929.929 INFO    ] 2026-06-22 15:50:35
[2026-06-22 15:50:35,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:50:36,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:50:36,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:50:36,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:50:36,553.553 INFO    ] time= 22/06/2026 15:50:36
[2026-06-22 15:50:36,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:50:36,649.649 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:50:36,785.785 INFO    ] No existing commands found in stream
[2026-06-22 15:50:41,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:50:41,815.815 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-22 15:50:44,356.356 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:50:44,359.359 INFO    ] Checking for system updates...
[2026-06-22 15:50:44,397.397 INFO    ] 200
[2026-06-22 15:50:44,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:50:44,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:50:44,457.457 INFO    ] No update needed
[2026-06-22 15:50:44,460.460 INFO    ] Checking for camera pi updates...
[2026-06-22 15:50:44,495.495 INFO    ] 200
[2026-06-22 15:50:44,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:50:44,541.541 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:50:44,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:50:44,626.626 INFO    ] No camera update needed
[2026-06-22 15:50:44,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:50:44,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:50:44,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:50:44,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:50:46,687.687 INFO    ] ================================================
[2026-06-22 15:50:46,703.703 INFO    ] Launching Daemon at Mon Jun 22 15:50:46 IST 2026
[2026-06-22 15:50:46,714.714 INFO    ] ================================================
[2026-06-22 15:50:47,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:50:47
[2026-06-22 15:50:47,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:50:48,079.079 INFO    ] Initializing speech engine...
[2026-06-22 15:50:48,105.105 INFO    ] 2026-06-22 15:50:48
[2026-06-22 15:50:48,388.388 INFO    ] 2026-06-22 15:50:48
[2026-06-22 15:50:48,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:50:48,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:50:48,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:50:48,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:50:48,777.777 INFO    ] time= 22/06/2026 15:50:48
[2026-06-22 15:50:48,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:50:48,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:50:48,905.905 INFO    ] No existing commands found in stream
[2026-06-22 15:50:53,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:50:53,921.921 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-22 15:50:58,034.034 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:50:58,037.037 INFO    ] Checking for system updates...
[2026-06-22 15:50:58,075.075 INFO    ] 200
[2026-06-22 15:50:58,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:50:58,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:50:58,135.135 INFO    ] No update needed
[2026-06-22 15:50:58,138.138 INFO    ] Checking for camera pi updates...
[2026-06-22 15:50:58,172.172 INFO    ] 200
[2026-06-22 15:50:58,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:50:58,219.219 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:50:58,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:50:58,309.309 INFO    ] No camera update needed
[2026-06-22 15:50:58,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:50:58,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:50:58,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:50:58,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:51:00,367.367 INFO    ] ================================================
[2026-06-22 15:51:00,383.383 INFO    ] Launching Daemon at Mon Jun 22 15:51:00 IST 2026
[2026-06-22 15:51:00,394.394 INFO    ] ================================================
[2026-06-22 15:51:01,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:51:01
[2026-06-22 15:51:01,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:51:02,112.112 INFO    ] Initializing speech engine...
[2026-06-22 15:51:02,133.133 INFO    ] 2026-06-22 15:51:02
[2026-06-22 15:51:02,419.419 INFO    ] 2026-06-22 15:51:02
[2026-06-22 15:51:02,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:51:02,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:51:02,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:51:02,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:51:02,956.956 INFO    ] time= 22/06/2026 15:51:02
[2026-06-22 15:51:03,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:51:03,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:51:03,152.152 INFO    ] No existing commands found in stream
[2026-06-22 15:51:08,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:51:08,180.180 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-22 15:51:09,247.247 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:51:09,250.250 INFO    ] Checking for system updates...
[2026-06-22 15:51:09,286.286 INFO    ] 200
[2026-06-22 15:51:09,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:51:09,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:51:09,352.352 INFO    ] No update needed
[2026-06-22 15:51:09,355.355 INFO    ] Checking for camera pi updates...
[2026-06-22 15:51:09,390.390 INFO    ] 200
[2026-06-22 15:51:09,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:51:09,437.437 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:51:09,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:51:09,620.620 INFO    ] No camera update needed
[2026-06-22 15:51:09,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:51:09,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:51:09,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:51:09,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:51:11,678.678 INFO    ] ================================================
[2026-06-22 15:51:11,694.694 INFO    ] Launching Daemon at Mon Jun 22 15:51:11 IST 2026
[2026-06-22 15:51:11,705.705 INFO    ] ================================================
[2026-06-22 15:51:12,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:51:12
[2026-06-22 15:51:12,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:51:13,126.126 INFO    ] Initializing speech engine...
[2026-06-22 15:51:13,135.135 INFO    ] 2026-06-22 15:51:13
[2026-06-22 15:51:13,395.395 INFO    ] 2026-06-22 15:51:13
[2026-06-22 15:51:13,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:51:13,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:51:13,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:51:13,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:51:13,869.869 INFO    ] time= 22/06/2026 15:51:13
[2026-06-22 15:51:13,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:51:13,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:51:14,080.080 INFO    ] No existing commands found in stream
[2026-06-22 15:51:19,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:51:19,109.109 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-22 15:51:22,286.286 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:51:22,287.287 INFO    ] Checking for system updates...
[2026-06-22 15:51:22,308.308 INFO    ] 200
[2026-06-22 15:51:22,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:51:22,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:51:22,345.345 INFO    ] No update needed
[2026-06-22 15:51:22,347.347 INFO    ] Checking for camera pi updates...
[2026-06-22 15:51:22,381.381 INFO    ] 200
[2026-06-22 15:51:22,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:51:22,424.424 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:51:22,511.511 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:51:22,514.514 INFO    ] No camera update needed
[2026-06-22 15:51:22,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:51:22,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:51:22,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:51:22,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:51:24,572.572 INFO    ] ================================================
[2026-06-22 15:51:24,587.587 INFO    ] Launching Daemon at Mon Jun 22 15:51:24 IST 2026
[2026-06-22 15:51:24,598.598 INFO    ] ================================================
[2026-06-22 15:51:25,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:51:25
[2026-06-22 15:51:25,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:51:25,927.927 INFO    ] Initializing speech engine...
[2026-06-22 15:51:25,935.935 INFO    ] 2026-06-22 15:51:25
[2026-06-22 15:51:26,236.236 INFO    ] 2026-06-22 15:51:26
[2026-06-22 15:51:26,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:51:26,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:51:26,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:51:26,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:51:26,657.657 INFO    ] time= 22/06/2026 15:51:26
[2026-06-22 15:51:26,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:51:26,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:51:26,761.761 INFO    ] No existing commands found in stream
[2026-06-22 15:51:31,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:51:31,779.779 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-22 15:51:33,565.565 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:51:33,568.568 INFO    ] Checking for system updates...
[2026-06-22 15:51:33,605.605 INFO    ] 200
[2026-06-22 15:51:33,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:51:33,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:51:33,663.663 INFO    ] No update needed
[2026-06-22 15:51:33,666.666 INFO    ] Checking for camera pi updates...
[2026-06-22 15:51:33,701.701 INFO    ] 200
[2026-06-22 15:51:33,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:51:33,744.744 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:51:33,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:51:33,845.845 INFO    ] No camera update needed
[2026-06-22 15:51:33,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:51:33,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:51:33,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:51:33,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:51:35,901.901 INFO    ] ================================================
[2026-06-22 15:51:35,917.917 INFO    ] Launching Daemon at Mon Jun 22 15:51:35 IST 2026
[2026-06-22 15:51:35,928.928 INFO    ] ================================================
[2026-06-22 15:51:36,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:51:36
[2026-06-22 15:51:37,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:51:37,321.321 INFO    ] Initializing speech engine...
[2026-06-22 15:51:37,334.334 INFO    ] 2026-06-22 15:51:37
[2026-06-22 15:51:37,584.584 INFO    ] 2026-06-22 15:51:37
[2026-06-22 15:51:37,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:51:37,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:51:37,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:51:38,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:51:38,035.035 INFO    ] time= 22/06/2026 15:51:38
[2026-06-22 15:51:38,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:51:38,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:51:38,286.286 INFO    ] No existing commands found in stream
[2026-06-22 15:51:43,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:51:43,311.311 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-22 15:51:46,048.048 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:51:46,051.051 INFO    ] Checking for system updates...
[2026-06-22 15:51:46,088.088 INFO    ] 200
[2026-06-22 15:51:46,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:51:46,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:51:46,147.147 INFO    ] No update needed
[2026-06-22 15:51:46,149.149 INFO    ] Checking for camera pi updates...
[2026-06-22 15:51:46,188.188 INFO    ] 200
[2026-06-22 15:51:46,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:51:46,233.233 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:51:46,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:51:46,329.329 INFO    ] No camera update needed
[2026-06-22 15:51:46,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:51:46,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:51:46,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:51:46,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:51:48,387.387 INFO    ] ================================================
[2026-06-22 15:51:48,403.403 INFO    ] Launching Daemon at Mon Jun 22 15:51:48 IST 2026
[2026-06-22 15:51:48,413.413 INFO    ] ================================================
[2026-06-22 15:51:48,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:51:48
[2026-06-22 15:51:49,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:51:49,724.724 INFO    ] Initializing speech engine...
[2026-06-22 15:51:49,733.733 INFO    ] 2026-06-22 15:51:49
[2026-06-22 15:51:50,008.008 INFO    ] 2026-06-22 15:51:49
[2026-06-22 15:51:50,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:51:50,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:51:50,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:51:50,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:51:50,581.581 INFO    ] time= 22/06/2026 15:51:50
[2026-06-22 15:51:50,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:51:50,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:51:50,750.750 INFO    ] No existing commands found in stream
[2026-06-22 15:51:55,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:51:55,788.788 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-22 15:51:58,320.320 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:51:58,323.323 INFO    ] Checking for system updates...
[2026-06-22 15:51:58,360.360 INFO    ] 200
[2026-06-22 15:51:58,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:51:58,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:51:58,421.421 INFO    ] No update needed
[2026-06-22 15:51:58,424.424 INFO    ] Checking for camera pi updates...
[2026-06-22 15:51:58,459.459 INFO    ] 200
[2026-06-22 15:51:58,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:51:58,503.503 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:51:58,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:51:58,603.603 INFO    ] No camera update needed
[2026-06-22 15:51:58,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:51:58,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:51:58,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:51:58,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:52:00,662.662 INFO    ] ================================================
[2026-06-22 15:52:00,678.678 INFO    ] Launching Daemon at Mon Jun 22 15:52:00 IST 2026
[2026-06-22 15:52:00,689.689 INFO    ] ================================================
[2026-06-22 15:52:01,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:52:01
[2026-06-22 15:52:02,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:52:02,541.541 INFO    ] Initializing speech engine...
[2026-06-22 15:52:02,552.552 INFO    ] 2026-06-22 15:52:02
[2026-06-22 15:52:02,859.859 INFO    ] 2026-06-22 15:52:02
[2026-06-22 15:52:02,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:52:03,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:52:03,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:52:03,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:52:03,398.398 INFO    ] time= 22/06/2026 15:52:03
[2026-06-22 15:52:03,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:52:03,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:52:03,574.574 INFO    ] No existing commands found in stream
[2026-06-22 15:52:08,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:52:08,609.609 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-22 15:52:09,736.736 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:52:09,737.737 INFO    ] Checking for system updates...
[2026-06-22 15:52:09,758.758 INFO    ] 200
[2026-06-22 15:52:09,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:52:09,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:52:09,816.816 INFO    ] No update needed
[2026-06-22 15:52:09,819.819 INFO    ] Checking for camera pi updates...
[2026-06-22 15:52:09,852.852 INFO    ] 200
[2026-06-22 15:52:09,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:52:09,895.895 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:52:09,974.974 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:52:09,977.977 INFO    ] No camera update needed
[2026-06-22 15:52:09,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:52:09,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:52:09,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:52:09,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:52:12,034.034 INFO    ] ================================================
[2026-06-22 15:52:12,049.049 INFO    ] Launching Daemon at Mon Jun 22 15:52:12 IST 2026
[2026-06-22 15:52:12,060.060 INFO    ] ================================================
[2026-06-22 15:52:12,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:52:12
[2026-06-22 15:52:13,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:52:13,561.561 INFO    ] Initializing speech engine...
[2026-06-22 15:52:13,575.575 INFO    ] 2026-06-22 15:52:13
[2026-06-22 15:52:13,856.856 INFO    ] 2026-06-22 15:52:13
[2026-06-22 15:52:13,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:52:14,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:52:14,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:52:14,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:52:14,394.394 INFO    ] time= 22/06/2026 15:52:14
[2026-06-22 15:52:14,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:52:14,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:52:14,570.570 INFO    ] No existing commands found in stream
[2026-06-22 15:52:19,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:52:19,598.598 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-22 15:52:22,914.914 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:52:22,917.917 INFO    ] Checking for system updates...
[2026-06-22 15:52:22,958.958 INFO    ] 200
[2026-06-22 15:52:22,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:52:22,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:52:22,999.999 INFO    ] No update needed
[2026-06-22 15:52:23,000.000 INFO    ] Checking for camera pi updates...
[2026-06-22 15:52:23,020.020 INFO    ] 200
[2026-06-22 15:52:23,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:52:23,045.045 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:52:23,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:52:23,145.145 INFO    ] No camera update needed
[2026-06-22 15:52:23,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:52:23,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:52:23,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:52:23,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:52:25,205.205 INFO    ] ================================================
[2026-06-22 15:52:25,221.221 INFO    ] Launching Daemon at Mon Jun 22 15:52:25 IST 2026
[2026-06-22 15:52:25,232.232 INFO    ] ================================================
[2026-06-22 15:52:25,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:52:25
[2026-06-22 15:52:26,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:52:26,846.846 INFO    ] Initializing speech engine...
[2026-06-22 15:52:26,849.849 INFO    ] 2026-06-22 15:52:26
[2026-06-22 15:52:27,112.112 INFO    ] 2026-06-22 15:52:27
[2026-06-22 15:52:27,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:52:27,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:52:27,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:52:27,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:52:27,638.638 INFO    ] time= 22/06/2026 15:52:27
[2026-06-22 15:52:27,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:52:27,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:52:27,783.783 INFO    ] No existing commands found in stream
[2026-06-22 15:52:32,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:52:32,821.821 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-22 15:52:36,117.117 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:52:36,119.119 INFO    ] Checking for system updates...
[2026-06-22 15:52:36,155.155 INFO    ] 200
[2026-06-22 15:52:36,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:52:36,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:52:36,212.212 INFO    ] No update needed
[2026-06-22 15:52:36,214.214 INFO    ] Checking for camera pi updates...
[2026-06-22 15:52:36,248.248 INFO    ] 200
[2026-06-22 15:52:36,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:52:36,291.291 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:52:36,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:52:36,380.380 INFO    ] No camera update needed
[2026-06-22 15:52:36,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:52:36,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:52:36,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:52:36,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:52:38,438.438 INFO    ] ================================================
[2026-06-22 15:52:38,461.461 INFO    ] Launching Daemon at Mon Jun 22 15:52:38 IST 2026
[2026-06-22 15:52:38,478.478 INFO    ] ================================================
[2026-06-22 15:52:39,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:52:39
[2026-06-22 15:52:39,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:52:40,230.230 INFO    ] Initializing speech engine...
[2026-06-22 15:52:40,240.240 INFO    ] 2026-06-22 15:52:40
[2026-06-22 15:52:40,538.538 INFO    ] 2026-06-22 15:52:40
[2026-06-22 15:52:40,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:52:40,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:52:40,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:52:41,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:52:41,088.088 INFO    ] time= 22/06/2026 15:52:41
[2026-06-22 15:52:41,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:52:41,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:52:41,241.241 INFO    ] No existing commands found in stream
[2026-06-22 15:52:46,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:52:46,262.262 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-22 15:52:46,693.693 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:52:46,694.694 INFO    ] Checking for system updates...
[2026-06-22 15:52:46,715.715 INFO    ] 200
[2026-06-22 15:52:46,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:52:46,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:52:46,751.751 INFO    ] No update needed
[2026-06-22 15:52:46,753.753 INFO    ] Checking for camera pi updates...
[2026-06-22 15:52:46,773.773 INFO    ] 200
[2026-06-22 15:52:46,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:52:46,807.807 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:52:46,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:52:46,898.898 INFO    ] No camera update needed
[2026-06-22 15:52:46,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:52:46,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:52:46,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:52:46,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:52:48,959.959 INFO    ] ================================================
[2026-06-22 15:52:48,974.974 INFO    ] Launching Daemon at Mon Jun 22 15:52:48 IST 2026
[2026-06-22 15:52:48,985.985 INFO    ] ================================================
[2026-06-22 15:52:49,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:52:49
[2026-06-22 15:52:50,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:52:50,321.321 INFO    ] Initializing speech engine...
[2026-06-22 15:52:50,330.330 INFO    ] 2026-06-22 15:52:50
[2026-06-22 15:52:50,628.628 INFO    ] 2026-06-22 15:52:50
[2026-06-22 15:52:50,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:52:50,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:52:50,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:52:51,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:52:51,056.056 INFO    ] time= 22/06/2026 15:52:51
[2026-06-22 15:52:51,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:52:51,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:52:51,142.142 INFO    ] No existing commands found in stream
[2026-06-22 15:52:56,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:52:56,157.157 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-22 15:52:57,269.269 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:52:57,271.271 INFO    ] Checking for system updates...
[2026-06-22 15:52:57,307.307 INFO    ] 200
[2026-06-22 15:52:57,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:52:57,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:52:57,366.366 INFO    ] No update needed
[2026-06-22 15:52:57,368.368 INFO    ] Checking for camera pi updates...
[2026-06-22 15:52:57,402.402 INFO    ] 200
[2026-06-22 15:52:57,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:52:57,445.445 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:52:57,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:52:57,527.527 INFO    ] No camera update needed
[2026-06-22 15:52:57,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:52:57,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:52:57,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:52:57,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:52:59,582.582 INFO    ] ================================================
[2026-06-22 15:52:59,597.597 INFO    ] Launching Daemon at Mon Jun 22 15:52:59 IST 2026
[2026-06-22 15:52:59,608.608 INFO    ] ================================================
[2026-06-22 15:53:00,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:53:00
[2026-06-22 15:53:00,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:53:01,382.382 INFO    ] Initializing speech engine...
[2026-06-22 15:53:01,436.436 INFO    ] 2026-06-22 15:53:01
[2026-06-22 15:53:01,831.831 INFO    ] 2026-06-22 15:53:01
[2026-06-22 15:53:01,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:53:02,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:53:02,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:53:02,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:53:02,389.389 INFO    ] time= 22/06/2026 15:53:02
[2026-06-22 15:53:02,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:53:02,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:53:02,543.543 INFO    ] No existing commands found in stream
[2026-06-22 15:53:07,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:53:07,568.568 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-22 15:53:10,379.379 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:53:10,382.382 INFO    ] Checking for system updates...
[2026-06-22 15:53:10,418.418 INFO    ] 200
[2026-06-22 15:53:10,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:53:10,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:53:10,477.477 INFO    ] No update needed
[2026-06-22 15:53:10,479.479 INFO    ] Checking for camera pi updates...
[2026-06-22 15:53:10,513.513 INFO    ] 200
[2026-06-22 15:53:10,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:53:10,563.563 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:53:10,745.745 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:53:10,747.747 INFO    ] No camera update needed
[2026-06-22 15:53:10,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:53:10,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:53:10,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:53:10,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:53:12,803.803 INFO    ] ================================================
[2026-06-22 15:53:12,818.818 INFO    ] Launching Daemon at Mon Jun 22 15:53:12 IST 2026
[2026-06-22 15:53:12,829.829 INFO    ] ================================================
[2026-06-22 15:53:13,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:53:13
[2026-06-22 15:53:14,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:53:14,282.282 INFO    ] Initializing speech engine...
[2026-06-22 15:53:14,292.292 INFO    ] 2026-06-22 15:53:14
[2026-06-22 15:53:14,543.543 INFO    ] 2026-06-22 15:53:14
[2026-06-22 15:53:14,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:53:14,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:53:14,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:53:14,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:53:15,022.022 INFO    ] time= 22/06/2026 15:53:14
[2026-06-22 15:53:15,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:53:15,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:53:15,257.257 INFO    ] No existing commands found in stream
[2026-06-22 15:53:20,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:53:20,275.275 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-22 15:53:24,641.641 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:53:24,644.644 INFO    ] Checking for system updates...
[2026-06-22 15:53:24,680.680 INFO    ] 200
[2026-06-22 15:53:24,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:53:24,734.734 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:53:24,737.737 INFO    ] No update needed
[2026-06-22 15:53:24,739.739 INFO    ] Checking for camera pi updates...
[2026-06-22 15:53:24,773.773 INFO    ] 200
[2026-06-22 15:53:24,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:53:24,816.816 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:53:24,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:53:24,905.905 INFO    ] No camera update needed
[2026-06-22 15:53:24,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:53:24,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:53:24,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:53:24,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:53:26,962.962 INFO    ] ================================================
[2026-06-22 15:53:26,981.981 INFO    ] Launching Daemon at Mon Jun 22 15:53:26 IST 2026
[2026-06-22 15:53:26,992.992 INFO    ] ================================================
[2026-06-22 15:53:27,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:53:27
[2026-06-22 15:53:28,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:53:28,317.317 INFO    ] Initializing speech engine...
[2026-06-22 15:53:28,342.342 INFO    ] 2026-06-22 15:53:28
[2026-06-22 15:53:28,621.621 INFO    ] 2026-06-22 15:53:28
[2026-06-22 15:53:28,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:53:28,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:53:28,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:53:29,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:53:29,133.133 INFO    ] time= 22/06/2026 15:53:29
[2026-06-22 15:53:29,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:53:29,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:53:29,338.338 INFO    ] No existing commands found in stream
[2026-06-22 15:53:34,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:53:34,354.354 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-22 15:53:37,463.463 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:53:37,466.466 INFO    ] Checking for system updates...
[2026-06-22 15:53:37,503.503 INFO    ] 200
[2026-06-22 15:53:37,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:53:37,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:53:37,571.571 INFO    ] No update needed
[2026-06-22 15:53:37,574.574 INFO    ] Checking for camera pi updates...
[2026-06-22 15:53:37,609.609 INFO    ] 200
[2026-06-22 15:53:37,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:53:37,654.654 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:53:37,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:53:37,743.743 INFO    ] No camera update needed
[2026-06-22 15:53:37,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:53:37,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:53:37,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:53:37,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:53:39,805.805 INFO    ] ================================================
[2026-06-22 15:53:39,820.820 INFO    ] Launching Daemon at Mon Jun 22 15:53:39 IST 2026
[2026-06-22 15:53:39,831.831 INFO    ] ================================================
[2026-06-22 15:53:40,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:53:40
[2026-06-22 15:53:41,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:53:41,325.325 INFO    ] Initializing speech engine...
[2026-06-22 15:53:41,339.339 INFO    ] 2026-06-22 15:53:41
[2026-06-22 15:53:41,631.631 INFO    ] 2026-06-22 15:53:41
[2026-06-22 15:53:41,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:53:41,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:53:41,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:53:42,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:53:42,170.170 INFO    ] time= 22/06/2026 15:53:42
[2026-06-22 15:53:42,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:53:42,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:53:42,325.325 INFO    ] No existing commands found in stream
[2026-06-22 15:53:47,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:53:47,346.346 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-22 15:53:51,463.463 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:53:51,466.466 INFO    ] Checking for system updates...
[2026-06-22 15:53:51,505.505 INFO    ] 200
[2026-06-22 15:53:51,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:53:51,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:53:51,566.566 INFO    ] No update needed
[2026-06-22 15:53:51,569.569 INFO    ] Checking for camera pi updates...
[2026-06-22 15:53:51,608.608 INFO    ] 200
[2026-06-22 15:53:51,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:53:51,653.653 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:53:51,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:53:51,739.739 INFO    ] No camera update needed
[2026-06-22 15:53:51,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:53:51,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:53:51,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:53:51,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:53:53,798.798 INFO    ] ================================================
[2026-06-22 15:53:53,813.813 INFO    ] Launching Daemon at Mon Jun 22 15:53:53 IST 2026
[2026-06-22 15:53:53,825.825 INFO    ] ================================================
[2026-06-22 15:53:54,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:53:54
[2026-06-22 15:53:54,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:53:55,252.252 INFO    ] Initializing speech engine...
[2026-06-22 15:53:55,262.262 INFO    ] 2026-06-22 15:53:55
[2026-06-22 15:53:55,513.513 INFO    ] 2026-06-22 15:53:55
[2026-06-22 15:53:55,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:53:55,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:53:55,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:53:55,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:53:55,890.890 INFO    ] time= 22/06/2026 15:53:55
[2026-06-22 15:53:55,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:53:55,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:53:56,079.079 INFO    ] No existing commands found in stream
[2026-06-22 15:54:01,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:54:01,108.108 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-22 15:54:02,769.769 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:54:02,772.772 INFO    ] Checking for system updates...
[2026-06-22 15:54:02,811.811 INFO    ] 200
[2026-06-22 15:54:02,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:54:02,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:54:02,883.883 INFO    ] No update needed
[2026-06-22 15:54:02,886.886 INFO    ] Checking for camera pi updates...
[2026-06-22 15:54:02,919.919 INFO    ] 200
[2026-06-22 15:54:02,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:54:02,962.962 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:54:03,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:54:03,071.071 INFO    ] No camera update needed
[2026-06-22 15:54:03,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:54:03,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:54:03,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:54:03,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:54:05,128.128 INFO    ] ================================================
[2026-06-22 15:54:05,143.143 INFO    ] Launching Daemon at Mon Jun 22 15:54:05 IST 2026
[2026-06-22 15:54:05,153.153 INFO    ] ================================================
[2026-06-22 15:54:05,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:54:05
[2026-06-22 15:54:06,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:54:06,573.573 INFO    ] Initializing speech engine...
[2026-06-22 15:54:06,595.595 INFO    ] 2026-06-22 15:54:06
[2026-06-22 15:54:06,856.856 INFO    ] 2026-06-22 15:54:06
[2026-06-22 15:54:06,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:54:07,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:54:07,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:54:07,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:54:07,232.232 INFO    ] time= 22/06/2026 15:54:07
[2026-06-22 15:54:07,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:54:07,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:54:07,430.430 INFO    ] No existing commands found in stream
[2026-06-22 15:54:12,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:54:12,445.445 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-22 15:54:14,766.766 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:54:14,767.767 INFO    ] Checking for system updates...
[2026-06-22 15:54:14,800.800 INFO    ] 200
[2026-06-22 15:54:14,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:54:14,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:54:14,860.860 INFO    ] No update needed
[2026-06-22 15:54:14,863.863 INFO    ] Checking for camera pi updates...
[2026-06-22 15:54:14,898.898 INFO    ] 200
[2026-06-22 15:54:14,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:54:14,943.943 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:54:15,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:54:15,028.028 INFO    ] No camera update needed
[2026-06-22 15:54:15,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:54:15,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:54:15,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:54:15,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:54:17,085.085 INFO    ] ================================================
[2026-06-22 15:54:17,100.100 INFO    ] Launching Daemon at Mon Jun 22 15:54:17 IST 2026
[2026-06-22 15:54:17,111.111 INFO    ] ================================================
[2026-06-22 15:54:17,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:54:17
[2026-06-22 15:54:18,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:54:18,441.441 INFO    ] Initializing speech engine...
[2026-06-22 15:54:18,447.447 INFO    ] 2026-06-22 15:54:18
[2026-06-22 15:54:18,746.746 INFO    ] 2026-06-22 15:54:18
[2026-06-22 15:54:18,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:54:19,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:54:19,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:54:19,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:54:19,162.162 INFO    ] time= 22/06/2026 15:54:19
[2026-06-22 15:54:19,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:54:19,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:54:19,350.350 INFO    ] No existing commands found in stream
[2026-06-22 15:54:24,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:54:24,384.384 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-22 15:54:27,264.264 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:54:27,267.267 INFO    ] Checking for system updates...
[2026-06-22 15:54:27,303.303 INFO    ] 200
[2026-06-22 15:54:27,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:54:27,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:54:27,361.361 INFO    ] No update needed
[2026-06-22 15:54:27,363.363 INFO    ] Checking for camera pi updates...
[2026-06-22 15:54:27,397.397 INFO    ] 200
[2026-06-22 15:54:27,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:54:27,440.440 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:54:27,514.514 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:54:27,517.517 INFO    ] No camera update needed
[2026-06-22 15:54:27,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:54:27,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:54:27,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:54:27,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:54:29,582.582 INFO    ] ================================================
[2026-06-22 15:54:29,598.598 INFO    ] Launching Daemon at Mon Jun 22 15:54:29 IST 2026
[2026-06-22 15:54:29,609.609 INFO    ] ================================================
[2026-06-22 15:54:30,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:54:30
[2026-06-22 15:54:30,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:54:31,022.022 INFO    ] Initializing speech engine...
[2026-06-22 15:54:31,042.042 INFO    ] 2026-06-22 15:54:31
[2026-06-22 15:54:31,332.332 INFO    ] 2026-06-22 15:54:31
[2026-06-22 15:54:31,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:54:31,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:54:31,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:54:31,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:54:31,842.842 INFO    ] time= 22/06/2026 15:54:31
[2026-06-22 15:54:31,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:54:31,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:54:32,075.075 INFO    ] No existing commands found in stream
[2026-06-22 15:54:37,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:54:37,112.112 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-22 15:54:37,882.882 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:54:37,885.885 INFO    ] Checking for system updates...
[2026-06-22 15:54:37,920.920 INFO    ] 200
[2026-06-22 15:54:37,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:54:37,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:54:37,979.979 INFO    ] No update needed
[2026-06-22 15:54:37,981.981 INFO    ] Checking for camera pi updates...
[2026-06-22 15:54:38,015.015 INFO    ] 200
[2026-06-22 15:54:38,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:54:38,057.057 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:54:38,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:54:38,146.146 INFO    ] No camera update needed
[2026-06-22 15:54:38,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:54:38,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:54:38,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:54:38,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:54:40,201.201 INFO    ] ================================================
[2026-06-22 15:54:40,216.216 INFO    ] Launching Daemon at Mon Jun 22 15:54:40 IST 2026
[2026-06-22 15:54:40,227.227 INFO    ] ================================================
[2026-06-22 15:54:40,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:54:40
[2026-06-22 15:54:41,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:54:41,640.640 INFO    ] Initializing speech engine...
[2026-06-22 15:54:41,659.659 INFO    ] 2026-06-22 15:54:41
[2026-06-22 15:54:41,920.920 INFO    ] 2026-06-22 15:54:41
[2026-06-22 15:54:41,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:54:42,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:54:42,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:54:42,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:54:42,401.401 INFO    ] time= 22/06/2026 15:54:42
[2026-06-22 15:54:42,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:54:42,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:54:42,628.628 INFO    ] No existing commands found in stream
[2026-06-22 15:54:47,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:54:47,661.661 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-22 15:54:49,934.934 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:54:49,936.936 INFO    ] Checking for system updates...
[2026-06-22 15:54:49,974.974 INFO    ] 200
[2026-06-22 15:54:49,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:54:50,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:54:50,041.041 INFO    ] No update needed
[2026-06-22 15:54:50,043.043 INFO    ] Checking for camera pi updates...
[2026-06-22 15:54:50,078.078 INFO    ] 200
[2026-06-22 15:54:50,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:54:50,123.123 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:54:50,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:54:50,208.208 INFO    ] No camera update needed
[2026-06-22 15:54:50,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:54:50,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:54:50,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:54:50,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:54:52,265.265 INFO    ] ================================================
[2026-06-22 15:54:52,281.281 INFO    ] Launching Daemon at Mon Jun 22 15:54:52 IST 2026
[2026-06-22 15:54:52,293.293 INFO    ] ================================================
[2026-06-22 15:54:52,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:54:52
[2026-06-22 15:54:53,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:54:53,610.610 INFO    ] Initializing speech engine...
[2026-06-22 15:54:53,633.633 INFO    ] 2026-06-22 15:54:53
[2026-06-22 15:54:53,901.901 INFO    ] 2026-06-22 15:54:53
[2026-06-22 15:54:53,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:54:54,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:54:54,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:54:54,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:54:54,397.397 INFO    ] time= 22/06/2026 15:54:54
[2026-06-22 15:54:54,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:54:54,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:54:54,633.633 INFO    ] No existing commands found in stream
[2026-06-22 15:54:59,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:54:59,654.654 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-22 15:55:03,993.993 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:55:03,995.995 INFO    ] Checking for system updates...
[2026-06-22 15:55:04,031.031 INFO    ] 200
[2026-06-22 15:55:04,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:55:04,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:55:04,110.110 INFO    ] No update needed
[2026-06-22 15:55:04,112.112 INFO    ] Checking for camera pi updates...
[2026-06-22 15:55:04,146.146 INFO    ] 200
[2026-06-22 15:55:04,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:55:04,189.189 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:55:04,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:55:04,286.286 INFO    ] No camera update needed
[2026-06-22 15:55:04,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:55:04,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:55:04,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:55:04,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:55:06,341.341 INFO    ] ================================================
[2026-06-22 15:55:06,357.357 INFO    ] Launching Daemon at Mon Jun 22 15:55:06 IST 2026
[2026-06-22 15:55:06,368.368 INFO    ] ================================================
[2026-06-22 15:55:06,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:55:06
[2026-06-22 15:55:07,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:55:07,915.915 INFO    ] Initializing speech engine...
[2026-06-22 15:55:07,924.924 INFO    ] 2026-06-22 15:55:07
[2026-06-22 15:55:08,196.196 INFO    ] 2026-06-22 15:55:08
[2026-06-22 15:55:08,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:55:08,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:55:08,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:55:08,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:55:08,733.733 INFO    ] time= 22/06/2026 15:55:08
[2026-06-22 15:55:08,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:55:08,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:55:08,912.912 INFO    ] No existing commands found in stream
[2026-06-22 15:55:13,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:55:13,937.937 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-22 15:55:17,941.941 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:55:17,943.943 INFO    ] Checking for system updates...
[2026-06-22 15:55:17,964.964 INFO    ] 200
[2026-06-22 15:55:17,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:55:17,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:55:17,997.997 INFO    ] No update needed
[2026-06-22 15:55:17,999.999 INFO    ] Checking for camera pi updates...
[2026-06-22 15:55:18,019.019 INFO    ] 200
[2026-06-22 15:55:18,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:55:18,049.049 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:55:18,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:55:18,235.235 INFO    ] No camera update needed
[2026-06-22 15:55:18,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:55:18,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:55:18,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:55:18,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:55:20,294.294 INFO    ] ================================================
[2026-06-22 15:55:20,310.310 INFO    ] Launching Daemon at Mon Jun 22 15:55:20 IST 2026
[2026-06-22 15:55:20,321.321 INFO    ] ================================================
[2026-06-22 15:55:20,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:55:20
[2026-06-22 15:55:21,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:55:21,801.801 INFO    ] Initializing speech engine...
[2026-06-22 15:55:21,809.809 INFO    ] 2026-06-22 15:55:21
[2026-06-22 15:55:22,124.124 INFO    ] 2026-06-22 15:55:22
[2026-06-22 15:55:22,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:55:22,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:55:22,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:55:22,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:55:22,571.571 INFO    ] time= 22/06/2026 15:55:22
[2026-06-22 15:55:22,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:55:22,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:55:22,755.755 INFO    ] No existing commands found in stream
[2026-06-22 15:55:27,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:55:27,789.789 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-22 15:55:30,093.093 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:55:30,096.096 INFO    ] Checking for system updates...
[2026-06-22 15:55:30,132.132 INFO    ] 200
[2026-06-22 15:55:30,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:55:30,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:55:30,189.189 INFO    ] No update needed
[2026-06-22 15:55:30,192.192 INFO    ] Checking for camera pi updates...
[2026-06-22 15:55:30,225.225 INFO    ] 200
[2026-06-22 15:55:30,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:55:30,268.268 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:55:30,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:55:30,359.359 INFO    ] No camera update needed
[2026-06-22 15:55:30,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:55:30,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:55:30,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:55:30,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:55:32,416.416 INFO    ] ================================================
[2026-06-22 15:55:32,434.434 INFO    ] Launching Daemon at Mon Jun 22 15:55:32 IST 2026
[2026-06-22 15:55:32,445.445 INFO    ] ================================================
[2026-06-22 15:55:33,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:55:33
[2026-06-22 15:55:33,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:55:34,110.110 INFO    ] Initializing speech engine...
[2026-06-22 15:55:34,123.123 INFO    ] 2026-06-22 15:55:34
[2026-06-22 15:55:34,408.408 INFO    ] 2026-06-22 15:55:34
[2026-06-22 15:55:34,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:55:34,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:55:34,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:55:34,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:55:34,866.866 INFO    ] time= 22/06/2026 15:55:34
[2026-06-22 15:55:34,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:55:34,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:55:35,110.110 INFO    ] No existing commands found in stream
[2026-06-22 15:55:40,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:55:40,130.130 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-22 15:55:40,717.717 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:55:40,719.719 INFO    ] Checking for system updates...
[2026-06-22 15:55:40,740.740 INFO    ] 200
[2026-06-22 15:55:40,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:55:40,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:55:40,797.797 INFO    ] No update needed
[2026-06-22 15:55:40,799.799 INFO    ] Checking for camera pi updates...
[2026-06-22 15:55:40,836.836 INFO    ] 200
[2026-06-22 15:55:40,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:55:40,883.883 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:55:40,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:55:40,989.989 INFO    ] No camera update needed
[2026-06-22 15:55:40,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:55:40,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:55:40,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:55:41,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:55:43,045.045 INFO    ] ================================================
[2026-06-22 15:55:43,060.060 INFO    ] Launching Daemon at Mon Jun 22 15:55:43 IST 2026
[2026-06-22 15:55:43,071.071 INFO    ] ================================================
[2026-06-22 15:55:43,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:55:43
[2026-06-22 15:55:44,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:55:44,397.397 INFO    ] Initializing speech engine...
[2026-06-22 15:55:44,415.415 INFO    ] 2026-06-22 15:55:44
[2026-06-22 15:55:44,682.682 INFO    ] 2026-06-22 15:55:44
[2026-06-22 15:55:44,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:55:44,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:55:44,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:55:45,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:55:45,091.091 INFO    ] time= 22/06/2026 15:55:45
[2026-06-22 15:55:45,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:55:45,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:55:45,239.239 INFO    ] No existing commands found in stream
[2026-06-22 15:55:50,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:55:50,272.272 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-22 15:55:51,930.930 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:55:51,932.932 INFO    ] Checking for system updates...
[2026-06-22 15:55:51,968.968 INFO    ] 200
[2026-06-22 15:55:51,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:55:52,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:55:52,026.026 INFO    ] No update needed
[2026-06-22 15:55:52,028.028 INFO    ] Checking for camera pi updates...
[2026-06-22 15:55:52,062.062 INFO    ] 200
[2026-06-22 15:55:52,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:55:52,106.106 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:55:52,189.189 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:55:52,192.192 INFO    ] No camera update needed
[2026-06-22 15:55:52,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:55:52,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:55:52,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:55:52,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:55:54,246.246 INFO    ] ================================================
[2026-06-22 15:55:54,262.262 INFO    ] Launching Daemon at Mon Jun 22 15:55:54 IST 2026
[2026-06-22 15:55:54,273.273 INFO    ] ================================================
[2026-06-22 15:55:54,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:55:54
[2026-06-22 15:55:55,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:55:55,853.853 INFO    ] Initializing speech engine...
[2026-06-22 15:55:55,863.863 INFO    ] 2026-06-22 15:55:55
[2026-06-22 15:55:56,143.143 INFO    ] 2026-06-22 15:55:56
[2026-06-22 15:55:56,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:55:56,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:55:56,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:55:56,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:55:56,598.598 INFO    ] time= 22/06/2026 15:55:56
[2026-06-22 15:55:56,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:55:56,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:55:56,836.836 INFO    ] No existing commands found in stream
[2026-06-22 15:56:01,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:56:01,852.852 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-22 15:56:05,867.867 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:56:05,871.871 INFO    ] Checking for system updates...
[2026-06-22 15:56:05,913.913 INFO    ] 200
[2026-06-22 15:56:05,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:56:05,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:56:05,972.972 INFO    ] No update needed
[2026-06-22 15:56:05,974.974 INFO    ] Checking for camera pi updates...
[2026-06-22 15:56:06,009.009 INFO    ] 200
[2026-06-22 15:56:06,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:56:06,052.052 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:56:06,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:56:06,138.138 INFO    ] No camera update needed
[2026-06-22 15:56:06,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:56:06,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:56:06,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:56:06,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:56:08,194.194 INFO    ] ================================================
[2026-06-22 15:56:08,211.211 INFO    ] Launching Daemon at Mon Jun 22 15:56:08 IST 2026
[2026-06-22 15:56:08,222.222 INFO    ] ================================================
[2026-06-22 15:56:08,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:56:08
[2026-06-22 15:56:09,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:56:09,759.759 INFO    ] Initializing speech engine...
[2026-06-22 15:56:09,771.771 INFO    ] 2026-06-22 15:56:09
[2026-06-22 15:56:10,053.053 INFO    ] 2026-06-22 15:56:10
[2026-06-22 15:56:10,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:56:10,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:56:10,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:56:10,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:56:10,586.586 INFO    ] time= 22/06/2026 15:56:10
[2026-06-22 15:56:10,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:56:10,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:56:10,749.749 INFO    ] No existing commands found in stream
[2026-06-22 15:56:15,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:56:15,779.779 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-22 15:56:19,309.309 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:56:19,312.312 INFO    ] Checking for system updates...
[2026-06-22 15:56:19,355.355 INFO    ] 200
[2026-06-22 15:56:19,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:56:19,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:56:19,434.434 INFO    ] No update needed
[2026-06-22 15:56:19,437.437 INFO    ] Checking for camera pi updates...
[2026-06-22 15:56:19,482.482 INFO    ] 200
[2026-06-22 15:56:19,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:56:19,532.532 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:56:19,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:56:19,621.621 INFO    ] No camera update needed
[2026-06-22 15:56:19,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:56:19,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:56:19,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:56:19,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:56:21,677.677 INFO    ] ================================================
[2026-06-22 15:56:21,692.692 INFO    ] Launching Daemon at Mon Jun 22 15:56:21 IST 2026
[2026-06-22 15:56:21,703.703 INFO    ] ================================================
[2026-06-22 15:56:22,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:56:22
[2026-06-22 15:56:22,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:56:23,059.059 INFO    ] Initializing speech engine...
[2026-06-22 15:56:23,064.064 INFO    ] 2026-06-22 15:56:23
[2026-06-22 15:56:23,310.310 INFO    ] 2026-06-22 15:56:23
[2026-06-22 15:56:23,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:56:23,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:56:23,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:56:23,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:56:23,801.801 INFO    ] time= 22/06/2026 15:56:23
[2026-06-22 15:56:23,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:56:23,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:56:24,005.005 INFO    ] No existing commands found in stream
[2026-06-22 15:56:29,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:56:29,036.036 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-22 15:56:31,241.241 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:56:31,244.244 INFO    ] Checking for system updates...
[2026-06-22 15:56:31,284.284 INFO    ] 200
[2026-06-22 15:56:31,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:56:31,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:56:31,350.350 INFO    ] No update needed
[2026-06-22 15:56:31,353.353 INFO    ] Checking for camera pi updates...
[2026-06-22 15:56:31,393.393 INFO    ] 200
[2026-06-22 15:56:31,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:56:31,450.450 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:56:31,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:56:31,540.540 INFO    ] No camera update needed
[2026-06-22 15:56:31,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:56:31,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:56:31,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:56:31,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:56:33,605.605 INFO    ] ================================================
[2026-06-22 15:56:33,620.620 INFO    ] Launching Daemon at Mon Jun 22 15:56:33 IST 2026
[2026-06-22 15:56:33,631.631 INFO    ] ================================================
[2026-06-22 15:56:34,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:56:34
[2026-06-22 15:56:34,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:56:35,072.072 INFO    ] Initializing speech engine...
[2026-06-22 15:56:35,081.081 INFO    ] 2026-06-22 15:56:35
[2026-06-22 15:56:35,377.377 INFO    ] 2026-06-22 15:56:35
[2026-06-22 15:56:35,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:56:35,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:56:35,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:56:35,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:56:35,801.801 INFO    ] time= 22/06/2026 15:56:35
[2026-06-22 15:56:35,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:56:35,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:56:35,906.906 INFO    ] No existing commands found in stream
[2026-06-22 15:56:40,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:56:40,939.939 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-22 15:56:42,890.890 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:56:42,893.893 INFO    ] Checking for system updates...
[2026-06-22 15:56:42,934.934 INFO    ] 200
[2026-06-22 15:56:42,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:56:42,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:56:42,994.994 INFO    ] No update needed
[2026-06-22 15:56:42,997.997 INFO    ] Checking for camera pi updates...
[2026-06-22 15:56:43,032.032 INFO    ] 200
[2026-06-22 15:56:43,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:56:43,078.078 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:56:43,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:56:43,164.164 INFO    ] No camera update needed
[2026-06-22 15:56:43,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:56:43,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:56:43,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:56:43,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:56:45,223.223 INFO    ] ================================================
[2026-06-22 15:56:45,238.238 INFO    ] Launching Daemon at Mon Jun 22 15:56:45 IST 2026
[2026-06-22 15:56:45,248.248 INFO    ] ================================================
[2026-06-22 15:56:45,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:56:45
[2026-06-22 15:56:46,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:56:46,593.593 INFO    ] Initializing speech engine...
[2026-06-22 15:56:46,598.598 INFO    ] 2026-06-22 15:56:46
[2026-06-22 15:56:46,845.845 INFO    ] 2026-06-22 15:56:46
[2026-06-22 15:56:46,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:56:47,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:56:47,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:56:47,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:56:47,399.399 INFO    ] time= 22/06/2026 15:56:47
[2026-06-22 15:56:47,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:56:47,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:56:47,551.551 INFO    ] No existing commands found in stream
[2026-06-22 15:56:52,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:56:52,567.567 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-22 15:56:53,781.781 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:56:53,782.782 INFO    ] Checking for system updates...
[2026-06-22 15:56:53,813.813 INFO    ] 200
[2026-06-22 15:56:53,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:56:53,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:56:53,877.877 INFO    ] No update needed
[2026-06-22 15:56:53,880.880 INFO    ] Checking for camera pi updates...
[2026-06-22 15:56:53,915.915 INFO    ] 200
[2026-06-22 15:56:53,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:56:53,960.960 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:56:54,050.050 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:56:54,053.053 INFO    ] No camera update needed
[2026-06-22 15:56:54,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:56:54,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:56:54,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:56:54,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:56:56,119.119 INFO    ] ================================================
[2026-06-22 15:56:56,134.134 INFO    ] Launching Daemon at Mon Jun 22 15:56:56 IST 2026
[2026-06-22 15:56:56,145.145 INFO    ] ================================================
[2026-06-22 15:56:56,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:56:56
[2026-06-22 15:56:57,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:56:57,537.537 INFO    ] Initializing speech engine...
[2026-06-22 15:56:57,547.547 INFO    ] 2026-06-22 15:56:57
[2026-06-22 15:56:57,794.794 INFO    ] 2026-06-22 15:56:57
[2026-06-22 15:56:57,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:56:58,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:56:58,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:56:58,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:56:58,288.288 INFO    ] time= 22/06/2026 15:56:58
[2026-06-22 15:56:58,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:56:58,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:56:58,505.505 INFO    ] No existing commands found in stream
[2026-06-22 15:57:03,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:57:03,520.520 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-22 15:57:07,586.586 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:57:07,588.588 INFO    ] Checking for system updates...
[2026-06-22 15:57:07,608.608 INFO    ] 200
[2026-06-22 15:57:07,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:57:07,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:57:07,664.664 INFO    ] No update needed
[2026-06-22 15:57:07,667.667 INFO    ] Checking for camera pi updates...
[2026-06-22 15:57:07,701.701 INFO    ] 200
[2026-06-22 15:57:07,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:57:07,746.746 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:57:07,834.834 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:57:07,837.837 INFO    ] No camera update needed
[2026-06-22 15:57:07,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:57:07,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:57:07,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:57:07,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:57:09,895.895 INFO    ] ================================================
[2026-06-22 15:57:09,910.910 INFO    ] Launching Daemon at Mon Jun 22 15:57:09 IST 2026
[2026-06-22 15:57:09,922.922 INFO    ] ================================================
[2026-06-22 15:57:10,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:57:10
[2026-06-22 15:57:11,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:57:11,275.275 INFO    ] Initializing speech engine...
[2026-06-22 15:57:11,281.281 INFO    ] 2026-06-22 15:57:11
[2026-06-22 15:57:11,556.556 INFO    ] 2026-06-22 15:57:11
[2026-06-22 15:57:11,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:57:11,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:57:11,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:57:11,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:57:12,033.033 INFO    ] time= 22/06/2026 15:57:11
[2026-06-22 15:57:12,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:57:12,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:57:12,222.222 INFO    ] No existing commands found in stream
[2026-06-22 15:57:17,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:57:17,252.252 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-22 15:57:21,633.633 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:57:21,635.635 INFO    ] Checking for system updates...
[2026-06-22 15:57:21,669.669 INFO    ] 200
[2026-06-22 15:57:21,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:57:21,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:57:21,727.727 INFO    ] No update needed
[2026-06-22 15:57:21,730.730 INFO    ] Checking for camera pi updates...
[2026-06-22 15:57:21,765.765 INFO    ] 200
[2026-06-22 15:57:21,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:57:21,808.808 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:57:21,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:57:21,988.988 INFO    ] No camera update needed
[2026-06-22 15:57:21,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:57:21,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:57:21,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:57:22,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:57:24,046.046 INFO    ] ================================================
[2026-06-22 15:57:24,063.063 INFO    ] Launching Daemon at Mon Jun 22 15:57:24 IST 2026
[2026-06-22 15:57:24,074.074 INFO    ] ================================================
[2026-06-22 15:57:24,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:57:24
[2026-06-22 15:57:25,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:57:25,541.541 INFO    ] Initializing speech engine...
[2026-06-22 15:57:25,551.551 INFO    ] 2026-06-22 15:57:25
[2026-06-22 15:57:25,805.805 INFO    ] 2026-06-22 15:57:25
[2026-06-22 15:57:25,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:57:26,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:57:26,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:57:26,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:57:26,298.298 INFO    ] time= 22/06/2026 15:57:26
[2026-06-22 15:57:26,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:57:26,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:57:26,521.521 INFO    ] No existing commands found in stream
[2026-06-22 15:57:31,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:57:31,539.539 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-22 15:57:35,729.729 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:57:35,731.731 INFO    ] Checking for system updates...
[2026-06-22 15:57:35,771.771 INFO    ] 200
[2026-06-22 15:57:35,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:57:35,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:57:35,837.837 INFO    ] No update needed
[2026-06-22 15:57:35,840.840 INFO    ] Checking for camera pi updates...
[2026-06-22 15:57:35,873.873 INFO    ] 200
[2026-06-22 15:57:35,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:57:35,916.916 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:57:36,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:57:36,005.005 INFO    ] No camera update needed
[2026-06-22 15:57:36,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:57:36,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:57:36,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:57:36,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:57:38,059.059 INFO    ] ================================================
[2026-06-22 15:57:38,074.074 INFO    ] Launching Daemon at Mon Jun 22 15:57:38 IST 2026
[2026-06-22 15:57:38,085.085 INFO    ] ================================================
[2026-06-22 15:57:38,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:57:38
[2026-06-22 15:57:39,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:57:39,617.617 INFO    ] Initializing speech engine...
[2026-06-22 15:57:39,626.626 INFO    ] 2026-06-22 15:57:39
[2026-06-22 15:57:39,918.918 INFO    ] 2026-06-22 15:57:39
[2026-06-22 15:57:39,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:57:40,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:57:40,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:57:40,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:57:40,416.416 INFO    ] time= 22/06/2026 15:57:40
[2026-06-22 15:57:40,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:57:40,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:57:40,629.629 INFO    ] No existing commands found in stream
[2026-06-22 15:57:45,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:57:45,650.650 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-22 15:57:46,764.764 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:57:46,766.766 INFO    ] Checking for system updates...
[2026-06-22 15:57:46,789.789 INFO    ] 200
[2026-06-22 15:57:46,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:57:46,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:57:46,829.829 INFO    ] No update needed
[2026-06-22 15:57:46,830.830 INFO    ] Checking for camera pi updates...
[2026-06-22 15:57:46,854.854 INFO    ] 200
[2026-06-22 15:57:46,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:57:46,897.897 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:57:46,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:57:46,986.986 INFO    ] No camera update needed
[2026-06-22 15:57:46,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:57:46,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:57:46,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:57:47,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:57:49,045.045 INFO    ] ================================================
[2026-06-22 15:57:49,060.060 INFO    ] Launching Daemon at Mon Jun 22 15:57:49 IST 2026
[2026-06-22 15:57:49,072.072 INFO    ] ================================================
[2026-06-22 15:57:49,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:57:49
[2026-06-22 15:57:50,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:57:50,444.444 INFO    ] Initializing speech engine...
[2026-06-22 15:57:50,451.451 INFO    ] 2026-06-22 15:57:50
[2026-06-22 15:57:50,703.703 INFO    ] 2026-06-22 15:57:50
[2026-06-22 15:57:50,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:57:51,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:57:51,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:57:51,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:57:51,230.230 INFO    ] time= 22/06/2026 15:57:51
[2026-06-22 15:57:51,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:57:51,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:57:51,495.495 INFO    ] No existing commands found in stream
[2026-06-22 15:57:56,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:57:56,520.520 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-22 15:57:59,163.163 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:57:59,166.166 INFO    ] Checking for system updates...
[2026-06-22 15:57:59,202.202 INFO    ] 200
[2026-06-22 15:57:59,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:57:59,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:57:59,269.269 INFO    ] No update needed
[2026-06-22 15:57:59,271.271 INFO    ] Checking for camera pi updates...
[2026-06-22 15:57:59,305.305 INFO    ] 200
[2026-06-22 15:57:59,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:57:59,355.355 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:57:59,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:57:59,442.442 INFO    ] No camera update needed
[2026-06-22 15:57:59,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:57:59,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:57:59,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:57:59,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:58:01,498.498 INFO    ] ================================================
[2026-06-22 15:58:01,514.514 INFO    ] Launching Daemon at Mon Jun 22 15:58:01 IST 2026
[2026-06-22 15:58:01,525.525 INFO    ] ================================================
[2026-06-22 15:58:02,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:58:02
[2026-06-22 15:58:02,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:58:03,210.210 INFO    ] Initializing speech engine...
[2026-06-22 15:58:03,225.225 INFO    ] 2026-06-22 15:58:03
[2026-06-22 15:58:03,557.557 INFO    ] 2026-06-22 15:58:03
[2026-06-22 15:58:03,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:58:03,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:58:03,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:58:03,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:58:03,973.973 INFO    ] time= 22/06/2026 15:58:03
[2026-06-22 15:58:03,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:58:03,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:58:04,105.105 INFO    ] No existing commands found in stream
[2026-06-22 15:58:09,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:58:09,118.118 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-22 15:58:11,723.723 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:58:11,726.726 INFO    ] Checking for system updates...
[2026-06-22 15:58:11,766.766 INFO    ] 200
[2026-06-22 15:58:11,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:58:11,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:58:11,831.831 INFO    ] No update needed
[2026-06-22 15:58:11,833.833 INFO    ] Checking for camera pi updates...
[2026-06-22 15:58:11,866.866 INFO    ] 200
[2026-06-22 15:58:11,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:58:11,909.909 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:58:11,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:58:11,991.991 INFO    ] No camera update needed
[2026-06-22 15:58:11,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:58:11,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:58:12,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:58:12,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:58:14,046.046 INFO    ] ================================================
[2026-06-22 15:58:14,062.062 INFO    ] Launching Daemon at Mon Jun 22 15:58:14 IST 2026
[2026-06-22 15:58:14,074.074 INFO    ] ================================================
[2026-06-22 15:58:14,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:58:14
[2026-06-22 15:58:15,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:58:15,389.389 INFO    ] Initializing speech engine...
[2026-06-22 15:58:15,404.404 INFO    ] 2026-06-22 15:58:15
[2026-06-22 15:58:15,672.672 INFO    ] 2026-06-22 15:58:15
[2026-06-22 15:58:15,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:58:15,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:58:15,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:58:16,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:58:16,050.050 INFO    ] time= 22/06/2026 15:58:16
[2026-06-22 15:58:16,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:58:16,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:58:16,233.233 INFO    ] No existing commands found in stream
[2026-06-22 15:58:21,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:58:21,265.265 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-22 15:58:21,793.793 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 15:58:21,795.795 INFO    ] Checking for system updates...
[2026-06-22 15:58:21,815.815 INFO    ] 200
[2026-06-22 15:58:21,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:58:21,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:58:21,851.851 INFO    ] No update needed
[2026-06-22 15:58:21,852.852 INFO    ] Checking for camera pi updates...
[2026-06-22 15:58:21,871.871 INFO    ] 200
[2026-06-22 15:58:21,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:58:21,915.915 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:58:21,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:58:22,002.002 INFO    ] No camera update needed
[2026-06-22 15:58:22,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:58:22,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:58:22,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:58:22,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:58:24,061.061 INFO    ] ================================================
[2026-06-22 15:58:24,079.079 INFO    ] Launching Daemon at Mon Jun 22 15:58:24 IST 2026
[2026-06-22 15:58:24,093.093 INFO    ] ================================================
[2026-06-22 15:58:24,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:58:24
[2026-06-22 15:58:25,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:58:25,721.721 INFO    ] Initializing speech engine...
[2026-06-22 15:58:25,725.725 INFO    ] 2026-06-22 15:58:25
[2026-06-22 15:58:25,993.993 INFO    ] 2026-06-22 15:58:25
[2026-06-22 15:58:26,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:58:26,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:58:26,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:58:26,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:58:26,554.554 INFO    ] time= 22/06/2026 15:58:26
[2026-06-22 15:58:26,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:58:26,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:58:26,719.719 INFO    ] No existing commands found in stream
[2026-06-22 15:58:31,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:58:31,735.735 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-22 15:58:35,732.732 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:58:35,735.735 INFO    ] Checking for system updates...
[2026-06-22 15:58:35,774.774 INFO    ] 200
[2026-06-22 15:58:35,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:58:35,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:58:35,820.820 INFO    ] No update needed
[2026-06-22 15:58:35,821.821 INFO    ] Checking for camera pi updates...
[2026-06-22 15:58:35,841.841 INFO    ] 200
[2026-06-22 15:58:35,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:58:35,867.867 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:58:35,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:58:35,963.963 INFO    ] No camera update needed
[2026-06-22 15:58:35,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:58:35,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:58:35,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:58:35,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:58:38,018.018 INFO    ] ================================================
[2026-06-22 15:58:38,035.035 INFO    ] Launching Daemon at Mon Jun 22 15:58:38 IST 2026
[2026-06-22 15:58:38,046.046 INFO    ] ================================================
[2026-06-22 15:58:38,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:58:38
[2026-06-22 15:58:39,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:58:39,408.408 INFO    ] Initializing speech engine...
[2026-06-22 15:58:39,417.417 INFO    ] 2026-06-22 15:58:39
[2026-06-22 15:58:39,674.674 INFO    ] 2026-06-22 15:58:39
[2026-06-22 15:58:39,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:58:39,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:58:39,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:58:40,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:58:40,225.225 INFO    ] time= 22/06/2026 15:58:40
[2026-06-22 15:58:40,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:58:40,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:58:40,366.366 INFO    ] No existing commands found in stream
[2026-06-22 15:58:45,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:58:45,395.395 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-22 15:58:46,056.056 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 15:58:46,058.058 INFO    ] Checking for system updates...
[2026-06-22 15:58:46,099.099 INFO    ] 200
[2026-06-22 15:58:46,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:58:46,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:58:46,169.169 INFO    ] No update needed
[2026-06-22 15:58:46,172.172 INFO    ] Checking for camera pi updates...
[2026-06-22 15:58:46,207.207 INFO    ] 200
[2026-06-22 15:58:46,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:58:46,254.254 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:58:46,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:58:46,365.365 INFO    ] No camera update needed
[2026-06-22 15:58:46,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:58:46,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:58:46,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:58:46,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:58:48,425.425 INFO    ] ================================================
[2026-06-22 15:58:48,441.441 INFO    ] Launching Daemon at Mon Jun 22 15:58:48 IST 2026
[2026-06-22 15:58:48,452.452 INFO    ] ================================================
[2026-06-22 15:58:49,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:58:49
[2026-06-22 15:58:49,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:58:49,927.927 INFO    ] Initializing speech engine...
[2026-06-22 15:58:49,944.944 INFO    ] 2026-06-22 15:58:49
[2026-06-22 15:58:50,216.216 INFO    ] 2026-06-22 15:58:50
[2026-06-22 15:58:50,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:58:50,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:58:50,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:58:50,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:58:50,779.779 INFO    ] time= 22/06/2026 15:58:50
[2026-06-22 15:58:50,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:58:50,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:58:50,953.953 INFO    ] No existing commands found in stream
[2026-06-22 15:58:55,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:58:55,971.971 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-22 15:58:58,934.934 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:58:58,935.935 INFO    ] Checking for system updates...
[2026-06-22 15:58:58,957.957 INFO    ] 200
[2026-06-22 15:58:58,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:58:58,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:58:58,994.994 INFO    ] No update needed
[2026-06-22 15:58:58,995.995 INFO    ] Checking for camera pi updates...
[2026-06-22 15:58:59,021.021 INFO    ] 200
[2026-06-22 15:58:59,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:58:59,065.065 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:58:59,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:58:59,139.139 INFO    ] No camera update needed
[2026-06-22 15:58:59,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:58:59,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:58:59,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:58:59,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:59:01,205.205 INFO    ] ================================================
[2026-06-22 15:59:01,240.240 INFO    ] Launching Daemon at Mon Jun 22 15:59:01 IST 2026
[2026-06-22 15:59:01,270.270 INFO    ] ================================================
[2026-06-22 15:59:01,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:59:01
[2026-06-22 15:59:02,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:59:02,988.988 INFO    ] Initializing speech engine...
[2026-06-22 15:59:02,992.992 INFO    ] 2026-06-22 15:59:02
[2026-06-22 15:59:03,265.265 INFO    ] 2026-06-22 15:59:03
[2026-06-22 15:59:03,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:59:03,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:59:03,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:59:03,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:59:03,761.761 INFO    ] time= 22/06/2026 15:59:03
[2026-06-22 15:59:03,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:59:03,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:59:04,028.028 INFO    ] No existing commands found in stream
[2026-06-22 15:59:09,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:59:09,053.053 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-22 15:59:12,654.654 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 15:59:12,656.656 INFO    ] Checking for system updates...
[2026-06-22 15:59:12,678.678 INFO    ] 200
[2026-06-22 15:59:12,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:59:12,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:59:12,715.715 INFO    ] No update needed
[2026-06-22 15:59:12,717.717 INFO    ] Checking for camera pi updates...
[2026-06-22 15:59:12,752.752 INFO    ] 200
[2026-06-22 15:59:12,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:59:12,796.796 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:59:12,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:59:12,887.887 INFO    ] No camera update needed
[2026-06-22 15:59:12,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:59:12,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:59:12,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:59:12,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:59:14,946.946 INFO    ] ================================================
[2026-06-22 15:59:14,962.962 INFO    ] Launching Daemon at Mon Jun 22 15:59:14 IST 2026
[2026-06-22 15:59:14,973.973 INFO    ] ================================================
[2026-06-22 15:59:15,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:59:15
[2026-06-22 15:59:16,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:59:16,588.588 INFO    ] Initializing speech engine...
[2026-06-22 15:59:16,597.597 INFO    ] 2026-06-22 15:59:16
[2026-06-22 15:59:16,884.884 INFO    ] 2026-06-22 15:59:16
[2026-06-22 15:59:16,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:59:17,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:59:17,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:59:17,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:59:17,436.436 INFO    ] time= 22/06/2026 15:59:17
[2026-06-22 15:59:17,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:59:17,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:59:17,598.598 INFO    ] No existing commands found in stream
[2026-06-22 15:59:22,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:59:22,626.626 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-22 15:59:25,168.168 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 15:59:25,171.171 INFO    ] Checking for system updates...
[2026-06-22 15:59:25,209.209 INFO    ] 200
[2026-06-22 15:59:25,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:59:25,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:59:25,268.268 INFO    ] No update needed
[2026-06-22 15:59:25,271.271 INFO    ] Checking for camera pi updates...
[2026-06-22 15:59:25,306.306 INFO    ] 200
[2026-06-22 15:59:25,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:59:25,360.360 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:59:25,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 15:59:25,549.549 INFO    ] No camera update needed
[2026-06-22 15:59:25,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:59:25,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:59:25,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:59:25,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:59:27,606.606 INFO    ] ================================================
[2026-06-22 15:59:27,622.622 INFO    ] Launching Daemon at Mon Jun 22 15:59:27 IST 2026
[2026-06-22 15:59:27,633.633 INFO    ] ================================================
[2026-06-22 15:59:28,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:59:28
[2026-06-22 15:59:28,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:59:29,041.041 INFO    ] Initializing speech engine...
[2026-06-22 15:59:29,050.050 INFO    ] 2026-06-22 15:59:29
[2026-06-22 15:59:29,340.340 INFO    ] 2026-06-22 15:59:29
[2026-06-22 15:59:29,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:59:29,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:59:29,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:59:29,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:59:29,758.758 INFO    ] time= 22/06/2026 15:59:29
[2026-06-22 15:59:29,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:59:29,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:59:29,928.928 INFO    ] No existing commands found in stream
[2026-06-22 15:59:34,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:59:34,941.941 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-22 15:59:35,874.874 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 15:59:35,877.877 INFO    ] Checking for system updates...
[2026-06-22 15:59:35,912.912 INFO    ] 200
[2026-06-22 15:59:35,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:59:35,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:59:35,970.970 INFO    ] No update needed
[2026-06-22 15:59:35,972.972 INFO    ] Checking for camera pi updates...
[2026-06-22 15:59:36,006.006 INFO    ] 200
[2026-06-22 15:59:36,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:59:36,053.053 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:59:36,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:59:36,135.135 INFO    ] No camera update needed
[2026-06-22 15:59:36,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:59:36,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:59:36,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:59:36,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:59:38,189.189 INFO    ] ================================================
[2026-06-22 15:59:38,205.205 INFO    ] Launching Daemon at Mon Jun 22 15:59:38 IST 2026
[2026-06-22 15:59:38,216.216 INFO    ] ================================================
[2026-06-22 15:59:38,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:59:38
[2026-06-22 15:59:39,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:59:39,817.817 INFO    ] Initializing speech engine...
[2026-06-22 15:59:39,828.828 INFO    ] 2026-06-22 15:59:39
[2026-06-22 15:59:40,136.136 INFO    ] 2026-06-22 15:59:40
[2026-06-22 15:59:40,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:59:40,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:59:40,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:59:40,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:59:40,646.646 INFO    ] time= 22/06/2026 15:59:40
[2026-06-22 15:59:40,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:59:40,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:59:40,820.820 INFO    ] No existing commands found in stream
[2026-06-22 15:59:45,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:59:45,859.859 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-22 15:59:49,878.878 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 15:59:49,880.880 INFO    ] Checking for system updates...
[2026-06-22 15:59:49,902.902 INFO    ] 200
[2026-06-22 15:59:49,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:59:49,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:59:49,935.935 INFO    ] No update needed
[2026-06-22 15:59:49,937.937 INFO    ] Checking for camera pi updates...
[2026-06-22 15:59:49,956.956 INFO    ] 200
[2026-06-22 15:59:49,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 15:59:50,002.002 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 15:59:50,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 15:59:50,086.086 INFO    ] No camera update needed
[2026-06-22 15:59:50,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-22 15:59:50,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 15:59:50,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 15:59:50,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 15:59:52,144.144 INFO    ] ================================================
[2026-06-22 15:59:52,159.159 INFO    ] Launching Daemon at Mon Jun 22 15:59:52 IST 2026
[2026-06-22 15:59:52,170.170 INFO    ] ================================================
[2026-06-22 15:59:52,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 15:59:52
[2026-06-22 15:59:53,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 15:59:53,634.634 INFO    ] Initializing speech engine...
[2026-06-22 15:59:53,640.640 INFO    ] 2026-06-22 15:59:53
[2026-06-22 15:59:53,931.931 INFO    ] 2026-06-22 15:59:53
[2026-06-22 15:59:53,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 15:59:54,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 15:59:54,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 15:59:54,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 15:59:54,459.459 INFO    ] time= 22/06/2026 15:59:54
[2026-06-22 15:59:54,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 15:59:54,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-22 15:59:54,706.706 INFO    ] No existing commands found in stream
[2026-06-22 15:59:59,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 15:59:59,734.734 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-22 16:00:02,676.676 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:00:02,696.696 INFO    ] Checking for system updates...
[2026-06-22 16:00:03,010.010 INFO    ] 200
[2026-06-22 16:00:03,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:00:03,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:00:03,546.546 INFO    ] No update needed
[2026-06-22 16:00:03,575.575 INFO    ] Checking for camera pi updates...
[2026-06-22 16:00:03,841.841 INFO    ] 200
[2026-06-22 16:00:03,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:00:04,156.156 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:00:04,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:00:04,293.293 INFO    ] No camera update needed
[2026-06-22 16:00:04,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:00:04,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:00:04,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:00:04,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:00:06,440.440 INFO    ] ================================================
[2026-06-22 16:00:06,465.465 INFO    ] Launching Daemon at Mon Jun 22 16:00:06 IST 2026
[2026-06-22 16:00:06,484.484 INFO    ] ================================================
[2026-06-22 16:00:07,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:00:07
[2026-06-22 16:00:07,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:00:08,100.100 INFO    ] Initializing speech engine...
[2026-06-22 16:00:08,108.108 INFO    ] 2026-06-22 16:00:08
[2026-06-22 16:00:08,385.385 INFO    ] 2026-06-22 16:00:08
[2026-06-22 16:00:08,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:00:08,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:00:08,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:00:08,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:00:08,856.856 INFO    ] time= 22/06/2026 16:00:08
[2026-06-22 16:00:08,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:00:08,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:00:09,082.082 INFO    ] No existing commands found in stream
[2026-06-22 16:00:14,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:00:14,112.112 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-22 16:00:14,966.966 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:00:14,969.969 INFO    ] Checking for system updates...
[2026-06-22 16:00:15,005.005 INFO    ] 200
[2026-06-22 16:00:15,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:00:15,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:00:15,068.068 INFO    ] No update needed
[2026-06-22 16:00:15,071.071 INFO    ] Checking for camera pi updates...
[2026-06-22 16:00:15,105.105 INFO    ] 200
[2026-06-22 16:00:15,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:00:15,153.153 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:00:15,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:00:15,240.240 INFO    ] No camera update needed
[2026-06-22 16:00:15,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:00:15,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:00:15,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:00:15,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:00:17,297.297 INFO    ] ================================================
[2026-06-22 16:00:17,313.313 INFO    ] Launching Daemon at Mon Jun 22 16:00:17 IST 2026
[2026-06-22 16:00:17,324.324 INFO    ] ================================================
[2026-06-22 16:00:17,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:00:17
[2026-06-22 16:00:18,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:00:18,636.636 INFO    ] Initializing speech engine...
[2026-06-22 16:00:18,642.642 INFO    ] 2026-06-22 16:00:18
[2026-06-22 16:00:18,913.913 INFO    ] 2026-06-22 16:00:18
[2026-06-22 16:00:18,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:00:19,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:00:19,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:00:19,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:00:19,399.399 INFO    ] time= 22/06/2026 16:00:19
[2026-06-22 16:00:19,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:00:19,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:00:19,619.619 INFO    ] No existing commands found in stream
[2026-06-22 16:00:24,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:00:24,639.639 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-22 16:00:25,373.373 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:00:25,376.376 INFO    ] Checking for system updates...
[2026-06-22 16:00:25,416.416 INFO    ] 200
[2026-06-22 16:00:25,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:00:25,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:00:25,475.475 INFO    ] No update needed
[2026-06-22 16:00:25,477.477 INFO    ] Checking for camera pi updates...
[2026-06-22 16:00:25,515.515 INFO    ] 200
[2026-06-22 16:00:25,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:00:25,559.559 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:00:25,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:00:25,624.624 INFO    ] No camera update needed
[2026-06-22 16:00:25,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:00:25,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:00:25,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:00:25,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:00:27,683.683 INFO    ] ================================================
[2026-06-22 16:00:27,699.699 INFO    ] Launching Daemon at Mon Jun 22 16:00:27 IST 2026
[2026-06-22 16:00:27,710.710 INFO    ] ================================================
[2026-06-22 16:00:28,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:00:28
[2026-06-22 16:00:28,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:00:29,130.130 INFO    ] Initializing speech engine...
[2026-06-22 16:00:29,140.140 INFO    ] 2026-06-22 16:00:29
[2026-06-22 16:00:29,394.394 INFO    ] 2026-06-22 16:00:29
[2026-06-22 16:00:29,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:00:29,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:00:29,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:00:29,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:00:29,836.836 INFO    ] time= 22/06/2026 16:00:29
[2026-06-22 16:00:29,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:00:29,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:00:30,063.063 INFO    ] No existing commands found in stream
[2026-06-22 16:00:35,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:00:35,093.093 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-22 16:00:38,284.284 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:00:38,287.287 INFO    ] Checking for system updates...
[2026-06-22 16:00:38,322.322 INFO    ] 200
[2026-06-22 16:00:38,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:00:38,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:00:38,380.380 INFO    ] No update needed
[2026-06-22 16:00:38,383.383 INFO    ] Checking for camera pi updates...
[2026-06-22 16:00:38,416.416 INFO    ] 200
[2026-06-22 16:00:38,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:00:38,459.459 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:00:38,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:00:38,542.542 INFO    ] No camera update needed
[2026-06-22 16:00:38,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:00:38,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:00:38,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:00:38,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:00:40,600.600 INFO    ] ================================================
[2026-06-22 16:00:40,617.617 INFO    ] Launching Daemon at Mon Jun 22 16:00:40 IST 2026
[2026-06-22 16:00:40,628.628 INFO    ] ================================================
[2026-06-22 16:00:41,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:00:41
[2026-06-22 16:00:41,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:00:42,032.032 INFO    ] Initializing speech engine...
[2026-06-22 16:00:42,055.055 INFO    ] 2026-06-22 16:00:42
[2026-06-22 16:00:42,306.306 INFO    ] 2026-06-22 16:00:42
[2026-06-22 16:00:42,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:00:42,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:00:42,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:00:42,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:00:42,782.782 INFO    ] time= 22/06/2026 16:00:42
[2026-06-22 16:00:42,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:00:42,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:00:43,019.019 INFO    ] No existing commands found in stream
[2026-06-22 16:00:48,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:00:48,036.036 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-22 16:00:50,789.789 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:00:50,919.919 INFO    ] Checking for system updates...
[2026-06-22 16:00:50,965.965 INFO    ] 200
[2026-06-22 16:00:50,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:00:51,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:00:51,030.030 INFO    ] No update needed
[2026-06-22 16:00:51,033.033 INFO    ] Checking for camera pi updates...
[2026-06-22 16:00:51,066.066 INFO    ] 200
[2026-06-22 16:00:51,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:00:51,115.115 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:00:51,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:00:51,217.217 INFO    ] No camera update needed
[2026-06-22 16:00:51,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:00:51,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:00:51,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:00:51,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:00:53,274.274 INFO    ] ================================================
[2026-06-22 16:00:53,291.291 INFO    ] Launching Daemon at Mon Jun 22 16:00:53 IST 2026
[2026-06-22 16:00:53,302.302 INFO    ] ================================================
[2026-06-22 16:00:53,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:00:53
[2026-06-22 16:00:54,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:00:54,667.667 INFO    ] Initializing speech engine...
[2026-06-22 16:00:54,675.675 INFO    ] 2026-06-22 16:00:54
[2026-06-22 16:00:54,947.947 INFO    ] 2026-06-22 16:00:54
[2026-06-22 16:00:54,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:00:55,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:00:55,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:00:55,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:00:55,445.445 INFO    ] time= 22/06/2026 16:00:55
[2026-06-22 16:00:55,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:00:55,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:00:55,619.619 INFO    ] No existing commands found in stream
[2026-06-22 16:01:00,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:01:00,646.646 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-22 16:01:01,146.146 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:01:01,149.149 INFO    ] Checking for system updates...
[2026-06-22 16:01:01,187.187 INFO    ] 200
[2026-06-22 16:01:01,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:01:01,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:01:01,247.247 INFO    ] No update needed
[2026-06-22 16:01:01,250.250 INFO    ] Checking for camera pi updates...
[2026-06-22 16:01:01,285.285 INFO    ] 200
[2026-06-22 16:01:01,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:01:01,330.330 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:01:01,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:01:01,417.417 INFO    ] No camera update needed
[2026-06-22 16:01:01,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:01:01,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:01:01,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:01:01,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:01:03,479.479 INFO    ] ================================================
[2026-06-22 16:01:03,498.498 INFO    ] Launching Daemon at Mon Jun 22 16:01:03 IST 2026
[2026-06-22 16:01:03,511.511 INFO    ] ================================================
[2026-06-22 16:01:04,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:01:04
[2026-06-22 16:01:04,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:01:05,072.072 INFO    ] Initializing speech engine...
[2026-06-22 16:01:05,080.080 INFO    ] 2026-06-22 16:01:05
[2026-06-22 16:01:05,355.355 INFO    ] 2026-06-22 16:01:05
[2026-06-22 16:01:05,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:01:05,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:01:05,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:01:05,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:01:05,861.861 INFO    ] time= 22/06/2026 16:01:05
[2026-06-22 16:01:05,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:01:05,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:01:06,067.067 INFO    ] No existing commands found in stream
[2026-06-22 16:01:11,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:01:11,092.092 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-22 16:01:12,652.652 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:01:12,655.655 INFO    ] Checking for system updates...
[2026-06-22 16:01:12,691.691 INFO    ] 200
[2026-06-22 16:01:12,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:01:12,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:01:12,756.756 INFO    ] No update needed
[2026-06-22 16:01:12,759.759 INFO    ] Checking for camera pi updates...
[2026-06-22 16:01:12,794.794 INFO    ] 200
[2026-06-22 16:01:12,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:01:12,838.838 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:01:12,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:01:12,933.933 INFO    ] No camera update needed
[2026-06-22 16:01:12,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:01:12,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:01:12,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:01:12,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:01:14,991.991 INFO    ] ================================================
[2026-06-22 16:01:15,007.007 INFO    ] Launching Daemon at Mon Jun 22 16:01:15 IST 2026
[2026-06-22 16:01:15,017.017 INFO    ] ================================================
[2026-06-22 16:01:15,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:01:15
[2026-06-22 16:01:16,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:01:16,437.437 INFO    ] Initializing speech engine...
[2026-06-22 16:01:16,446.446 INFO    ] 2026-06-22 16:01:16
[2026-06-22 16:01:16,692.692 INFO    ] 2026-06-22 16:01:16
[2026-06-22 16:01:16,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:01:16,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:01:16,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:01:17,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:01:17,168.168 INFO    ] time= 22/06/2026 16:01:17
[2026-06-22 16:01:17,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:01:17,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:01:17,404.404 INFO    ] No existing commands found in stream
[2026-06-22 16:01:22,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:01:22,417.417 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-22 16:01:24,304.304 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:01:24,307.307 INFO    ] Checking for system updates...
[2026-06-22 16:01:24,347.347 INFO    ] 200
[2026-06-22 16:01:24,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:01:24,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:01:24,409.409 INFO    ] No update needed
[2026-06-22 16:01:24,411.411 INFO    ] Checking for camera pi updates...
[2026-06-22 16:01:24,448.448 INFO    ] 200
[2026-06-22 16:01:24,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:01:24,495.495 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:01:24,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:01:24,583.583 INFO    ] No camera update needed
[2026-06-22 16:01:24,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:01:24,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:01:24,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:01:24,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:01:26,638.638 INFO    ] ================================================
[2026-06-22 16:01:26,653.653 INFO    ] Launching Daemon at Mon Jun 22 16:01:26 IST 2026
[2026-06-22 16:01:26,664.664 INFO    ] ================================================
[2026-06-22 16:01:27,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:01:27
[2026-06-22 16:01:27,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:01:28,226.226 INFO    ] Initializing speech engine...
[2026-06-22 16:01:28,237.237 INFO    ] 2026-06-22 16:01:28
[2026-06-22 16:01:28,524.524 INFO    ] 2026-06-22 16:01:28
[2026-06-22 16:01:28,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:01:28,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:01:28,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:01:29,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:01:29,081.081 INFO    ] time= 22/06/2026 16:01:29
[2026-06-22 16:01:29,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:01:29,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:01:29,245.245 INFO    ] No existing commands found in stream
[2026-06-22 16:01:34,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:01:34,279.279 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-22 16:01:36,171.171 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:01:36,174.174 INFO    ] Checking for system updates...
[2026-06-22 16:01:36,213.213 INFO    ] 200
[2026-06-22 16:01:36,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:01:36,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:01:36,277.277 INFO    ] No update needed
[2026-06-22 16:01:36,280.280 INFO    ] Checking for camera pi updates...
[2026-06-22 16:01:36,314.314 INFO    ] 200
[2026-06-22 16:01:36,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:01:36,359.359 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:01:36,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:01:36,414.414 INFO    ] No camera update needed
[2026-06-22 16:01:36,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:01:36,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:01:36,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:01:36,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:01:38,472.472 INFO    ] ================================================
[2026-06-22 16:01:38,488.488 INFO    ] Launching Daemon at Mon Jun 22 16:01:38 IST 2026
[2026-06-22 16:01:38,499.499 INFO    ] ================================================
[2026-06-22 16:01:39,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:01:39
[2026-06-22 16:01:39,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:01:39,859.859 INFO    ] Initializing speech engine...
[2026-06-22 16:01:39,864.864 INFO    ] 2026-06-22 16:01:39
[2026-06-22 16:01:40,110.110 INFO    ] 2026-06-22 16:01:40
[2026-06-22 16:01:40,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:01:40,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:01:40,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:01:40,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:01:40,579.579 INFO    ] time= 22/06/2026 16:01:40
[2026-06-22 16:01:40,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:01:40,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:01:40,813.813 INFO    ] No existing commands found in stream
[2026-06-22 16:01:45,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:01:45,832.832 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-22 16:01:49,281.281 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:01:49,285.285 INFO    ] Checking for system updates...
[2026-06-22 16:01:49,322.322 INFO    ] 200
[2026-06-22 16:01:49,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:01:49,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:01:49,382.382 INFO    ] No update needed
[2026-06-22 16:01:49,385.385 INFO    ] Checking for camera pi updates...
[2026-06-22 16:01:49,419.419 INFO    ] 200
[2026-06-22 16:01:49,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:01:49,464.464 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:01:49,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:01:49,565.565 INFO    ] No camera update needed
[2026-06-22 16:01:49,568.568 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:01:49,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:01:49,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:01:49,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:01:51,624.624 INFO    ] ================================================
[2026-06-22 16:01:51,639.639 INFO    ] Launching Daemon at Mon Jun 22 16:01:51 IST 2026
[2026-06-22 16:01:51,650.650 INFO    ] ================================================
[2026-06-22 16:01:52,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:01:52
[2026-06-22 16:01:52,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:01:52,980.980 INFO    ] Initializing speech engine...
[2026-06-22 16:01:52,989.989 INFO    ] 2026-06-22 16:01:52
[2026-06-22 16:01:53,242.242 INFO    ] 2026-06-22 16:01:53
[2026-06-22 16:01:53,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:01:53,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:01:53,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:01:53,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:01:53,787.787 INFO    ] time= 22/06/2026 16:01:53
[2026-06-22 16:01:53,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:01:53,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:01:53,944.944 INFO    ] No existing commands found in stream
[2026-06-22 16:01:58,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:01:58,969.969 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-22 16:01:59,702.702 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:01:59,705.705 INFO    ] Checking for system updates...
[2026-06-22 16:01:59,745.745 INFO    ] 200
[2026-06-22 16:01:59,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:01:59,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:01:59,809.809 INFO    ] No update needed
[2026-06-22 16:01:59,811.811 INFO    ] Checking for camera pi updates...
[2026-06-22 16:01:59,848.848 INFO    ] 200
[2026-06-22 16:01:59,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:01:59,895.895 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:02:00,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:02:00,004.004 INFO    ] No camera update needed
[2026-06-22 16:02:00,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:02:00,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:02:00,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:02:00,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:02:02,071.071 INFO    ] ================================================
[2026-06-22 16:02:02,097.097 INFO    ] Launching Daemon at Mon Jun 22 16:02:02 IST 2026
[2026-06-22 16:02:02,126.126 INFO    ] ================================================
[2026-06-22 16:02:02,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:02:02
[2026-06-22 16:02:03,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:02:03,780.780 INFO    ] Initializing speech engine...
[2026-06-22 16:02:03,789.789 INFO    ] 2026-06-22 16:02:03
[2026-06-22 16:02:04,045.045 INFO    ] 2026-06-22 16:02:04
[2026-06-22 16:02:04,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:02:04,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:02:04,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:02:04,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:02:04,447.447 INFO    ] time= 22/06/2026 16:02:04
[2026-06-22 16:02:04,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:02:04,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:02:04,612.612 INFO    ] No existing commands found in stream
[2026-06-22 16:02:09,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:02:09,640.640 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-22 16:02:10,631.631 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:02:10,632.632 INFO    ] Checking for system updates...
[2026-06-22 16:02:10,654.654 INFO    ] 200
[2026-06-22 16:02:10,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:02:10,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:02:10,687.687 INFO    ] No update needed
[2026-06-22 16:02:10,689.689 INFO    ] Checking for camera pi updates...
[2026-06-22 16:02:10,715.715 INFO    ] 200
[2026-06-22 16:02:10,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:02:10,764.764 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:02:10,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:02:10,851.851 INFO    ] No camera update needed
[2026-06-22 16:02:10,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:02:10,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:02:10,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:02:10,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:02:12,909.909 INFO    ] ================================================
[2026-06-22 16:02:12,924.924 INFO    ] Launching Daemon at Mon Jun 22 16:02:12 IST 2026
[2026-06-22 16:02:12,935.935 INFO    ] ================================================
[2026-06-22 16:02:13,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:02:13
[2026-06-22 16:02:14,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:02:14,311.311 INFO    ] Initializing speech engine...
[2026-06-22 16:02:14,317.317 INFO    ] 2026-06-22 16:02:14
[2026-06-22 16:02:14,578.578 INFO    ] 2026-06-22 16:02:14
[2026-06-22 16:02:14,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:02:14,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:02:14,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:02:15,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:02:15,124.124 INFO    ] time= 22/06/2026 16:02:15
[2026-06-22 16:02:15,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:02:15,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:02:15,270.270 INFO    ] No existing commands found in stream
[2026-06-22 16:02:20,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:02:20,294.294 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-22 16:02:23,768.768 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:02:23,769.769 INFO    ] Checking for system updates...
[2026-06-22 16:02:23,790.790 INFO    ] 200
[2026-06-22 16:02:23,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:02:23,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:02:23,826.826 INFO    ] No update needed
[2026-06-22 16:02:23,829.829 INFO    ] Checking for camera pi updates...
[2026-06-22 16:02:23,863.863 INFO    ] 200
[2026-06-22 16:02:23,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:02:23,907.907 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:02:23,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:02:23,993.993 INFO    ] No camera update needed
[2026-06-22 16:02:23,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:02:23,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:02:24,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:02:24,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:02:26,048.048 INFO    ] ================================================
[2026-06-22 16:02:26,063.063 INFO    ] Launching Daemon at Mon Jun 22 16:02:26 IST 2026
[2026-06-22 16:02:26,074.074 INFO    ] ================================================
[2026-06-22 16:02:26,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:02:26
[2026-06-22 16:02:27,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:02:27,489.489 INFO    ] Initializing speech engine...
[2026-06-22 16:02:27,503.503 INFO    ] 2026-06-22 16:02:27
[2026-06-22 16:02:27,767.767 INFO    ] 2026-06-22 16:02:27
[2026-06-22 16:02:27,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:02:28,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:02:28,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:02:28,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:02:28,278.278 INFO    ] time= 22/06/2026 16:02:28
[2026-06-22 16:02:28,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:02:28,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:02:28,448.448 INFO    ] No existing commands found in stream
[2026-06-22 16:02:33,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:02:33,477.477 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-22 16:02:36,719.719 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:02:36,722.722 INFO    ] Checking for system updates...
[2026-06-22 16:02:36,758.758 INFO    ] 200
[2026-06-22 16:02:36,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:02:36,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:02:36,824.824 INFO    ] No update needed
[2026-06-22 16:02:36,827.827 INFO    ] Checking for camera pi updates...
[2026-06-22 16:02:36,885.885 INFO    ] 200
[2026-06-22 16:02:36,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:02:36,941.941 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:02:37,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:02:37,003.003 INFO    ] No camera update needed
[2026-06-22 16:02:37,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:02:37,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:02:37,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:02:37,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:02:39,068.068 INFO    ] ================================================
[2026-06-22 16:02:39,083.083 INFO    ] Launching Daemon at Mon Jun 22 16:02:39 IST 2026
[2026-06-22 16:02:39,093.093 INFO    ] ================================================
[2026-06-22 16:02:39,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:02:39
[2026-06-22 16:02:40,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:02:40,508.508 INFO    ] Initializing speech engine...
[2026-06-22 16:02:40,527.527 INFO    ] 2026-06-22 16:02:40
[2026-06-22 16:02:40,779.779 INFO    ] 2026-06-22 16:02:40
[2026-06-22 16:02:40,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:02:41,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:02:41,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:02:41,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:02:41,266.266 INFO    ] time= 22/06/2026 16:02:41
[2026-06-22 16:02:41,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:02:41,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:02:41,503.503 INFO    ] No existing commands found in stream
[2026-06-22 16:02:46,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:02:46,538.538 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-22 16:02:48,253.253 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:02:48,256.256 INFO    ] Checking for system updates...
[2026-06-22 16:02:48,296.296 INFO    ] 200
[2026-06-22 16:02:48,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:02:48,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:02:48,355.355 INFO    ] No update needed
[2026-06-22 16:02:48,358.358 INFO    ] Checking for camera pi updates...
[2026-06-22 16:02:48,392.392 INFO    ] 200
[2026-06-22 16:02:48,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:02:48,437.437 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:02:48,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:02:48,522.522 INFO    ] No camera update needed
[2026-06-22 16:02:48,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:02:48,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:02:48,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:02:48,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:02:50,582.582 INFO    ] ================================================
[2026-06-22 16:02:50,599.599 INFO    ] Launching Daemon at Mon Jun 22 16:02:50 IST 2026
[2026-06-22 16:02:50,610.610 INFO    ] ================================================
[2026-06-22 16:02:51,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:02:51
[2026-06-22 16:02:51,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:02:52,100.100 INFO    ] Initializing speech engine...
[2026-06-22 16:02:52,114.114 INFO    ] 2026-06-22 16:02:52
[2026-06-22 16:02:52,385.385 INFO    ] 2026-06-22 16:02:52
[2026-06-22 16:02:52,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:02:52,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:02:52,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:02:52,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:02:52,850.850 INFO    ] time= 22/06/2026 16:02:52
[2026-06-22 16:02:52,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:02:52,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:02:53,089.089 INFO    ] No existing commands found in stream
[2026-06-22 16:02:58,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:02:58,120.120 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-22 16:03:00,138.138 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:03:00,141.141 INFO    ] Checking for system updates...
[2026-06-22 16:03:00,177.177 INFO    ] 200
[2026-06-22 16:03:00,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:03:00,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:03:00,241.241 INFO    ] No update needed
[2026-06-22 16:03:00,243.243 INFO    ] Checking for camera pi updates...
[2026-06-22 16:03:00,277.277 INFO    ] 200
[2026-06-22 16:03:00,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:03:00,325.325 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:03:00,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:03:00,407.407 INFO    ] No camera update needed
[2026-06-22 16:03:00,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:03:00,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:03:00,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:03:00,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:03:02,486.486 INFO    ] ================================================
[2026-06-22 16:03:02,503.503 INFO    ] Launching Daemon at Mon Jun 22 16:03:02 IST 2026
[2026-06-22 16:03:02,515.515 INFO    ] ================================================
[2026-06-22 16:03:03,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:03:03
[2026-06-22 16:03:03,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:03:04,040.040 INFO    ] Initializing speech engine...
[2026-06-22 16:03:04,049.049 INFO    ] 2026-06-22 16:03:04
[2026-06-22 16:03:04,300.300 INFO    ] 2026-06-22 16:03:04
[2026-06-22 16:03:04,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:03:04,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:03:04,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:03:04,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:03:04,808.808 INFO    ] time= 22/06/2026 16:03:04
[2026-06-22 16:03:04,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:03:04,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:03:05,018.018 INFO    ] No existing commands found in stream
[2026-06-22 16:03:10,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:03:10,038.038 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-22 16:03:10,653.653 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:03:10,656.656 INFO    ] Checking for system updates...
[2026-06-22 16:03:10,692.692 INFO    ] 200
[2026-06-22 16:03:10,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:03:10,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:03:10,750.750 INFO    ] No update needed
[2026-06-22 16:03:10,752.752 INFO    ] Checking for camera pi updates...
[2026-06-22 16:03:10,787.787 INFO    ] 200
[2026-06-22 16:03:10,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:03:10,831.831 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:03:10,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:03:10,912.912 INFO    ] No camera update needed
[2026-06-22 16:03:10,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:03:10,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:03:10,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:03:10,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:03:12,969.969 INFO    ] ================================================
[2026-06-22 16:03:12,984.984 INFO    ] Launching Daemon at Mon Jun 22 16:03:12 IST 2026
[2026-06-22 16:03:13,995.995 INFO    ] ================================================
[2026-06-22 16:03:13,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:03:13
[2026-06-22 16:03:14,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:03:14,621.621 INFO    ] Initializing speech engine...
[2026-06-22 16:03:14,629.629 INFO    ] 2026-06-22 16:03:14
[2026-06-22 16:03:14,946.946 INFO    ] 2026-06-22 16:03:14
[2026-06-22 16:03:15,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:03:15,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:03:15,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:03:15,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:03:15,455.455 INFO    ] time= 22/06/2026 16:03:15
[2026-06-22 16:03:15,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:03:15,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:03:15,630.630 INFO    ] No existing commands found in stream
[2026-06-22 16:03:20,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:03:20,659.659 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-22 16:03:24,663.663 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:03:24,665.665 INFO    ] Checking for system updates...
[2026-06-22 16:03:24,686.686 INFO    ] 200
[2026-06-22 16:03:24,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:03:24,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:03:24,720.720 INFO    ] No update needed
[2026-06-22 16:03:24,721.721 INFO    ] Checking for camera pi updates...
[2026-06-22 16:03:24,741.741 INFO    ] 200
[2026-06-22 16:03:24,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:03:24,771.771 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:03:24,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:03:24,841.841 INFO    ] No camera update needed
[2026-06-22 16:03:24,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:03:24,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:03:24,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:03:24,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:03:26,899.899 INFO    ] ================================================
[2026-06-22 16:03:26,914.914 INFO    ] Launching Daemon at Mon Jun 22 16:03:26 IST 2026
[2026-06-22 16:03:26,926.926 INFO    ] ================================================
[2026-06-22 16:03:27,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:03:27
[2026-06-22 16:03:27,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:03:28,243.243 INFO    ] Initializing speech engine...
[2026-06-22 16:03:28,264.264 INFO    ] 2026-06-22 16:03:28
[2026-06-22 16:03:28,531.531 INFO    ] 2026-06-22 16:03:28
[2026-06-22 16:03:28,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:03:28,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:03:28,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:03:28,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:03:29,017.017 INFO    ] time= 22/06/2026 16:03:28
[2026-06-22 16:03:29,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:03:29,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:03:29,256.256 INFO    ] No existing commands found in stream
[2026-06-22 16:03:34,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:03:34,281.281 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-22 16:03:37,974.974 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:03:37,977.977 INFO    ] Checking for system updates...
[2026-06-22 16:03:38,017.017 INFO    ] 200
[2026-06-22 16:03:38,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:03:38,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:03:38,078.078 INFO    ] No update needed
[2026-06-22 16:03:38,080.080 INFO    ] Checking for camera pi updates...
[2026-06-22 16:03:38,122.122 INFO    ] 200
[2026-06-22 16:03:38,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:03:38,171.171 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:03:38,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:03:38,353.353 INFO    ] No camera update needed
[2026-06-22 16:03:38,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:03:38,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:03:38,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:03:38,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:03:40,412.412 INFO    ] ================================================
[2026-06-22 16:03:40,428.428 INFO    ] Launching Daemon at Mon Jun 22 16:03:40 IST 2026
[2026-06-22 16:03:40,440.440 INFO    ] ================================================
[2026-06-22 16:03:41,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:03:41
[2026-06-22 16:03:41,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:03:41,806.806 INFO    ] Initializing speech engine...
[2026-06-22 16:03:41,815.815 INFO    ] 2026-06-22 16:03:41
[2026-06-22 16:03:42,067.067 INFO    ] 2026-06-22 16:03:42
[2026-06-22 16:03:42,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:03:42,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:03:42,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:03:42,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:03:42,537.537 INFO    ] time= 22/06/2026 16:03:42
[2026-06-22 16:03:42,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:03:42,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:03:42,775.775 INFO    ] No existing commands found in stream
[2026-06-22 16:03:47,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:03:47,791.791 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-22 16:03:52,194.194 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:03:52,197.197 INFO    ] Checking for system updates...
[2026-06-22 16:03:52,235.235 INFO    ] 200
[2026-06-22 16:03:52,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:03:52,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:03:52,303.303 INFO    ] No update needed
[2026-06-22 16:03:52,307.307 INFO    ] Checking for camera pi updates...
[2026-06-22 16:03:52,347.347 INFO    ] 200
[2026-06-22 16:03:52,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:03:52,397.397 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:03:52,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:03:52,490.490 INFO    ] No camera update needed
[2026-06-22 16:03:52,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:03:52,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:03:52,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:03:52,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:03:54,550.550 INFO    ] ================================================
[2026-06-22 16:03:54,566.566 INFO    ] Launching Daemon at Mon Jun 22 16:03:54 IST 2026
[2026-06-22 16:03:54,576.576 INFO    ] ================================================
[2026-06-22 16:03:55,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:03:55
[2026-06-22 16:03:55,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:03:55,889.889 INFO    ] Initializing speech engine...
[2026-06-22 16:03:55,897.897 INFO    ] 2026-06-22 16:03:55
[2026-06-22 16:03:56,172.172 INFO    ] 2026-06-22 16:03:56
[2026-06-22 16:03:56,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:03:56,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:03:56,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:03:56,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:03:56,740.740 INFO    ] time= 22/06/2026 16:03:56
[2026-06-22 16:03:56,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:03:56,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:03:56,892.892 INFO    ] No existing commands found in stream
[2026-06-22 16:04:01,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:04:01,911.911 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-22 16:04:04,422.422 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:04:04,425.425 INFO    ] Checking for system updates...
[2026-06-22 16:04:04,464.464 INFO    ] 200
[2026-06-22 16:04:04,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:04:04,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:04:04,523.523 INFO    ] No update needed
[2026-06-22 16:04:04,526.526 INFO    ] Checking for camera pi updates...
[2026-06-22 16:04:04,562.562 INFO    ] 200
[2026-06-22 16:04:04,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:04:04,609.609 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:04:04,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:04:04,693.693 INFO    ] No camera update needed
[2026-06-22 16:04:04,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:04:04,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:04:04,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:04:04,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:04:06,750.750 INFO    ] ================================================
[2026-06-22 16:04:06,768.768 INFO    ] Launching Daemon at Mon Jun 22 16:04:06 IST 2026
[2026-06-22 16:04:06,780.780 INFO    ] ================================================
[2026-06-22 16:04:07,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:04:07
[2026-06-22 16:04:08,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:04:08,430.430 INFO    ] Initializing speech engine...
[2026-06-22 16:04:08,440.440 INFO    ] 2026-06-22 16:04:08
[2026-06-22 16:04:08,707.707 INFO    ] 2026-06-22 16:04:08
[2026-06-22 16:04:08,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:04:08,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:04:08,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:04:09,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:04:09,120.120 INFO    ] time= 22/06/2026 16:04:09
[2026-06-22 16:04:09,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:04:09,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:04:09,306.306 INFO    ] No existing commands found in stream
[2026-06-22 16:04:14,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:04:14,342.342 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-22 16:04:15,059.059 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:04:15,062.062 INFO    ] Checking for system updates...
[2026-06-22 16:04:15,098.098 INFO    ] 200
[2026-06-22 16:04:15,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:04:15,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:04:15,155.155 INFO    ] No update needed
[2026-06-22 16:04:15,157.157 INFO    ] Checking for camera pi updates...
[2026-06-22 16:04:15,192.192 INFO    ] 200
[2026-06-22 16:04:15,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:04:15,235.235 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:04:15,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:04:15,317.317 INFO    ] No camera update needed
[2026-06-22 16:04:15,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:04:15,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:04:15,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:04:15,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:04:17,380.380 INFO    ] ================================================
[2026-06-22 16:04:17,397.397 INFO    ] Launching Daemon at Mon Jun 22 16:04:17 IST 2026
[2026-06-22 16:04:17,408.408 INFO    ] ================================================
[2026-06-22 16:04:17,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:04:17
[2026-06-22 16:04:18,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:04:18,757.757 INFO    ] Initializing speech engine...
[2026-06-22 16:04:18,771.771 INFO    ] 2026-06-22 16:04:18
[2026-06-22 16:04:19,054.054 INFO    ] 2026-06-22 16:04:19
[2026-06-22 16:04:19,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:04:19,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:04:19,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:04:19,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:04:19,475.475 INFO    ] time= 22/06/2026 16:04:19
[2026-06-22 16:04:19,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:04:19,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:04:19,667.667 INFO    ] No existing commands found in stream
[2026-06-22 16:04:24,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:04:24,695.695 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-22 16:04:28,993.993 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:04:28,995.995 INFO    ] Checking for system updates...
[2026-06-22 16:04:29,016.016 INFO    ] 200
[2026-06-22 16:04:29,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:04:29,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:04:29,062.062 INFO    ] No update needed
[2026-06-22 16:04:29,065.065 INFO    ] Checking for camera pi updates...
[2026-06-22 16:04:29,099.099 INFO    ] 200
[2026-06-22 16:04:29,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:04:29,143.143 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:04:29,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:04:29,249.249 INFO    ] No camera update needed
[2026-06-22 16:04:29,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:04:29,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:04:29,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:04:29,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:04:31,310.310 INFO    ] ================================================
[2026-06-22 16:04:31,331.331 INFO    ] Launching Daemon at Mon Jun 22 16:04:31 IST 2026
[2026-06-22 16:04:31,343.343 INFO    ] ================================================
[2026-06-22 16:04:31,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:04:31
[2026-06-22 16:04:32,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:04:32,885.885 INFO    ] Initializing speech engine...
[2026-06-22 16:04:32,894.894 INFO    ] 2026-06-22 16:04:32
[2026-06-22 16:04:33,143.143 INFO    ] 2026-06-22 16:04:33
[2026-06-22 16:04:33,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:04:33,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:04:33,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:04:33,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:04:33,703.703 INFO    ] time= 22/06/2026 16:04:33
[2026-06-22 16:04:33,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:04:33,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:04:33,865.865 INFO    ] No existing commands found in stream
[2026-06-22 16:04:38,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:04:38,896.896 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-22 16:04:41,540.540 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:04:41,543.543 INFO    ] Checking for system updates...
[2026-06-22 16:04:41,579.579 INFO    ] 200
[2026-06-22 16:04:41,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:04:41,645.645 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:04:41,647.647 INFO    ] No update needed
[2026-06-22 16:04:41,649.649 INFO    ] Checking for camera pi updates...
[2026-06-22 16:04:41,687.687 INFO    ] 200
[2026-06-22 16:04:41,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:04:41,734.734 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:04:41,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:04:41,810.810 INFO    ] No camera update needed
[2026-06-22 16:04:41,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:04:41,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:04:41,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:04:41,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:04:43,866.866 INFO    ] ================================================
[2026-06-22 16:04:43,881.881 INFO    ] Launching Daemon at Mon Jun 22 16:04:43 IST 2026
[2026-06-22 16:04:43,892.892 INFO    ] ================================================
[2026-06-22 16:04:44,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:04:44
[2026-06-22 16:04:44,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:04:45,230.230 INFO    ] Initializing speech engine...
[2026-06-22 16:04:45,256.256 INFO    ] 2026-06-22 16:04:45
[2026-06-22 16:04:45,528.528 INFO    ] 2026-06-22 16:04:45
[2026-06-22 16:04:45,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:04:45,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:04:45,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:04:46,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:04:46,160.160 INFO    ] time= 22/06/2026 16:04:46
[2026-06-22 16:04:46,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:04:46,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:04:46,302.302 INFO    ] No existing commands found in stream
[2026-06-22 16:04:51,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:04:51,330.330 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-22 16:04:54,923.923 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:04:54,926.926 INFO    ] Checking for system updates...
[2026-06-22 16:04:54,962.962 INFO    ] 200
[2026-06-22 16:04:54,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:04:55,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:04:55,020.020 INFO    ] No update needed
[2026-06-22 16:04:55,023.023 INFO    ] Checking for camera pi updates...
[2026-06-22 16:04:55,056.056 INFO    ] 200
[2026-06-22 16:04:55,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:04:55,100.100 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:04:55,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:04:55,165.165 INFO    ] No camera update needed
[2026-06-22 16:04:55,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:04:55,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:04:55,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:04:55,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:04:57,221.221 INFO    ] ================================================
[2026-06-22 16:04:57,236.236 INFO    ] Launching Daemon at Mon Jun 22 16:04:57 IST 2026
[2026-06-22 16:04:57,247.247 INFO    ] ================================================
[2026-06-22 16:04:57,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:04:57
[2026-06-22 16:04:58,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:04:58,605.605 INFO    ] Initializing speech engine...
[2026-06-22 16:04:58,631.631 INFO    ] 2026-06-22 16:04:58
[2026-06-22 16:04:58,904.904 INFO    ] 2026-06-22 16:04:58
[2026-06-22 16:04:58,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:04:59,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:04:59,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:04:59,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:04:59,413.413 INFO    ] time= 22/06/2026 16:04:59
[2026-06-22 16:04:59,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:04:59,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:04:59,675.675 INFO    ] No existing commands found in stream
[2026-06-22 16:05:04,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:05:04,700.700 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-22 16:05:06,338.338 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:05:06,342.342 INFO    ] Checking for system updates...
[2026-06-22 16:05:06,381.381 INFO    ] 200
[2026-06-22 16:05:06,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:05:06,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:05:06,419.419 INFO    ] No update needed
[2026-06-22 16:05:06,421.421 INFO    ] Checking for camera pi updates...
[2026-06-22 16:05:06,440.440 INFO    ] 200
[2026-06-22 16:05:06,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:05:06,467.467 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:05:06,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:05:06,555.555 INFO    ] No camera update needed
[2026-06-22 16:05:06,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:05:06,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:05:06,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:05:06,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:05:08,611.611 INFO    ] ================================================
[2026-06-22 16:05:08,626.626 INFO    ] Launching Daemon at Mon Jun 22 16:05:08 IST 2026
[2026-06-22 16:05:08,636.636 INFO    ] ================================================
[2026-06-22 16:05:09,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:05:09
[2026-06-22 16:05:09,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:05:09,967.967 INFO    ] Initializing speech engine...
[2026-06-22 16:05:09,990.990 INFO    ] 2026-06-22 16:05:09
[2026-06-22 16:05:10,246.246 INFO    ] 2026-06-22 16:05:10
[2026-06-22 16:05:10,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:05:10,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:05:10,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:05:10,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:05:10,815.815 INFO    ] time= 22/06/2026 16:05:10
[2026-06-22 16:05:10,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:05:10,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:05:10,973.973 INFO    ] No existing commands found in stream
[2026-06-22 16:05:15,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:05:15,989.989 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-22 16:05:19,314.314 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:05:19,317.317 INFO    ] Checking for system updates...
[2026-06-22 16:05:19,356.356 INFO    ] 200
[2026-06-22 16:05:19,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:05:19,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:05:19,419.419 INFO    ] No update needed
[2026-06-22 16:05:19,422.422 INFO    ] Checking for camera pi updates...
[2026-06-22 16:05:19,456.456 INFO    ] 200
[2026-06-22 16:05:19,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:05:19,505.505 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:05:19,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:05:19,594.594 INFO    ] No camera update needed
[2026-06-22 16:05:19,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:05:19,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:05:19,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:05:19,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:05:21,650.650 INFO    ] ================================================
[2026-06-22 16:05:21,666.666 INFO    ] Launching Daemon at Mon Jun 22 16:05:21 IST 2026
[2026-06-22 16:05:21,676.676 INFO    ] ================================================
[2026-06-22 16:05:22,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:05:22
[2026-06-22 16:05:22,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:05:23,151.151 INFO    ] Initializing speech engine...
[2026-06-22 16:05:23,161.161 INFO    ] 2026-06-22 16:05:23
[2026-06-22 16:05:23,427.427 INFO    ] 2026-06-22 16:05:23
[2026-06-22 16:05:23,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:05:23,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:05:23,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:05:24,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:05:24,040.040 INFO    ] time= 22/06/2026 16:05:24
[2026-06-22 16:05:24,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:05:24,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:05:24,207.207 INFO    ] No existing commands found in stream
[2026-06-22 16:05:29,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:05:29,240.240 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-22 16:05:33,063.063 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:05:33,066.066 INFO    ] Checking for system updates...
[2026-06-22 16:05:33,102.102 INFO    ] 200
[2026-06-22 16:05:33,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:05:33,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:05:33,161.161 INFO    ] No update needed
[2026-06-22 16:05:33,163.163 INFO    ] Checking for camera pi updates...
[2026-06-22 16:05:33,200.200 INFO    ] 200
[2026-06-22 16:05:33,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:05:33,243.243 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:05:33,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:05:33,328.328 INFO    ] No camera update needed
[2026-06-22 16:05:33,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:05:33,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:05:33,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:05:33,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:05:35,383.383 INFO    ] ================================================
[2026-06-22 16:05:35,398.398 INFO    ] Launching Daemon at Mon Jun 22 16:05:35 IST 2026
[2026-06-22 16:05:35,409.409 INFO    ] ================================================
[2026-06-22 16:05:35,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:05:35
[2026-06-22 16:05:36,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:05:36,843.843 INFO    ] Initializing speech engine...
[2026-06-22 16:05:36,848.848 INFO    ] 2026-06-22 16:05:36
[2026-06-22 16:05:37,098.098 INFO    ] 2026-06-22 16:05:37
[2026-06-22 16:05:37,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:05:37,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:05:37,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:05:37,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:05:37,572.572 INFO    ] time= 22/06/2026 16:05:37
[2026-06-22 16:05:37,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:05:37,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:05:37,801.801 INFO    ] No existing commands found in stream
[2026-06-22 16:05:42,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:05:42,832.832 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-22 16:05:46,874.874 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:05:46,877.877 INFO    ] Checking for system updates...
[2026-06-22 16:05:46,916.916 INFO    ] 200
[2026-06-22 16:05:46,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:05:46,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:05:46,973.973 INFO    ] No update needed
[2026-06-22 16:05:46,976.976 INFO    ] Checking for camera pi updates...
[2026-06-22 16:05:47,016.016 INFO    ] 200
[2026-06-22 16:05:47,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:05:47,062.062 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:05:47,242.242 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:05:47,245.245 INFO    ] No camera update needed
[2026-06-22 16:05:47,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:05:47,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:05:47,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:05:47,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:05:49,299.299 INFO    ] ================================================
[2026-06-22 16:05:49,315.315 INFO    ] Launching Daemon at Mon Jun 22 16:05:49 IST 2026
[2026-06-22 16:05:49,326.326 INFO    ] ================================================
[2026-06-22 16:05:49,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:05:49
[2026-06-22 16:05:50,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:05:50,676.676 INFO    ] Initializing speech engine...
[2026-06-22 16:05:50,690.690 INFO    ] 2026-06-22 16:05:50
[2026-06-22 16:05:50,971.971 INFO    ] 2026-06-22 16:05:50
[2026-06-22 16:05:51,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:05:51,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:05:51,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:05:51,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:05:51,373.373 INFO    ] time= 22/06/2026 16:05:51
[2026-06-22 16:05:51,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:05:51,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:05:51,530.530 INFO    ] No existing commands found in stream
[2026-06-22 16:05:56,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:05:56,564.564 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-22 16:05:59,610.610 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:05:59,613.613 INFO    ] Checking for system updates...
[2026-06-22 16:05:59,651.651 INFO    ] 200
[2026-06-22 16:05:59,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:05:59,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:05:59,709.709 INFO    ] No update needed
[2026-06-22 16:05:59,712.712 INFO    ] Checking for camera pi updates...
[2026-06-22 16:05:59,745.745 INFO    ] 200
[2026-06-22 16:05:59,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:05:59,788.788 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:05:59,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:05:59,881.881 INFO    ] No camera update needed
[2026-06-22 16:05:59,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:05:59,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:05:59,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:05:59,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:06:01,941.941 INFO    ] ================================================
[2026-06-22 16:06:01,962.962 INFO    ] Launching Daemon at Mon Jun 22 16:06:01 IST 2026
[2026-06-22 16:06:01,977.977 INFO    ] ================================================
[2026-06-22 16:06:02,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:06:02
[2026-06-22 16:06:03,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:06:03,623.623 INFO    ] Initializing speech engine...
[2026-06-22 16:06:03,633.633 INFO    ] 2026-06-22 16:06:03
[2026-06-22 16:06:03,902.902 INFO    ] 2026-06-22 16:06:03
[2026-06-22 16:06:03,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:06:04,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:06:04,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:06:04,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:06:04,456.456 INFO    ] time= 22/06/2026 16:06:04
[2026-06-22 16:06:04,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:06:04,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:06:04,646.646 INFO    ] No existing commands found in stream
[2026-06-22 16:06:09,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:06:09,680.680 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-22 16:06:10,521.521 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:06:10,523.523 INFO    ] Checking for system updates...
[2026-06-22 16:06:10,560.560 INFO    ] 200
[2026-06-22 16:06:10,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:06:10,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:06:10,618.618 INFO    ] No update needed
[2026-06-22 16:06:10,621.621 INFO    ] Checking for camera pi updates...
[2026-06-22 16:06:10,652.652 INFO    ] 200
[2026-06-22 16:06:10,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:06:10,678.678 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:06:10,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:06:10,746.746 INFO    ] No camera update needed
[2026-06-22 16:06:10,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:06:10,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:06:10,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:06:10,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:06:12,803.803 INFO    ] ================================================
[2026-06-22 16:06:12,818.818 INFO    ] Launching Daemon at Mon Jun 22 16:06:12 IST 2026
[2026-06-22 16:06:12,829.829 INFO    ] ================================================
[2026-06-22 16:06:13,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:06:13
[2026-06-22 16:06:13,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:06:14,257.257 INFO    ] Initializing speech engine...
[2026-06-22 16:06:14,277.277 INFO    ] 2026-06-22 16:06:14
[2026-06-22 16:06:14,537.537 INFO    ] 2026-06-22 16:06:14
[2026-06-22 16:06:14,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:06:14,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:06:14,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:06:14,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:06:14,944.944 INFO    ] time= 22/06/2026 16:06:14
[2026-06-22 16:06:14,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:06:15,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:06:15,130.130 INFO    ] No existing commands found in stream
[2026-06-22 16:06:20,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:06:20,163.163 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-22 16:06:22,103.103 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:06:22,105.105 INFO    ] Checking for system updates...
[2026-06-22 16:06:22,144.144 INFO    ] 200
[2026-06-22 16:06:22,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:06:22,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:06:22,207.207 INFO    ] No update needed
[2026-06-22 16:06:22,209.209 INFO    ] Checking for camera pi updates...
[2026-06-22 16:06:22,246.246 INFO    ] 200
[2026-06-22 16:06:22,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:06:22,289.289 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:06:22,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:06:22,378.378 INFO    ] No camera update needed
[2026-06-22 16:06:22,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:06:22,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:06:22,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:06:22,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:06:24,434.434 INFO    ] ================================================
[2026-06-22 16:06:24,450.450 INFO    ] Launching Daemon at Mon Jun 22 16:06:24 IST 2026
[2026-06-22 16:06:24,461.461 INFO    ] ================================================
[2026-06-22 16:06:25,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:06:25
[2026-06-22 16:06:25,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:06:25,943.943 INFO    ] Initializing speech engine...
[2026-06-22 16:06:25,948.948 INFO    ] 2026-06-22 16:06:25
[2026-06-22 16:06:26,221.221 INFO    ] 2026-06-22 16:06:26
[2026-06-22 16:06:26,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:06:26,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:06:26,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:06:26,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:06:26,782.782 INFO    ] time= 22/06/2026 16:06:26
[2026-06-22 16:06:26,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:06:26,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:06:26,965.965 INFO    ] No existing commands found in stream
[2026-06-22 16:06:31,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:06:31,990.990 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-22 16:06:33,750.750 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:06:33,753.753 INFO    ] Checking for system updates...
[2026-06-22 16:06:33,788.788 INFO    ] 200
[2026-06-22 16:06:33,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:06:33,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:06:33,846.846 INFO    ] No update needed
[2026-06-22 16:06:33,848.848 INFO    ] Checking for camera pi updates...
[2026-06-22 16:06:33,882.882 INFO    ] 200
[2026-06-22 16:06:33,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:06:33,927.927 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:06:34,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:06:34,010.010 INFO    ] No camera update needed
[2026-06-22 16:06:34,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:06:34,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:06:34,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:06:34,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:06:36,072.072 INFO    ] ================================================
[2026-06-22 16:06:36,088.088 INFO    ] Launching Daemon at Mon Jun 22 16:06:36 IST 2026
[2026-06-22 16:06:36,098.098 INFO    ] ================================================
[2026-06-22 16:06:36,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:06:36
[2026-06-22 16:06:37,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:06:37,470.470 INFO    ] Initializing speech engine...
[2026-06-22 16:06:37,477.477 INFO    ] 2026-06-22 16:06:37
[2026-06-22 16:06:37,733.733 INFO    ] 2026-06-22 16:06:37
[2026-06-22 16:06:37,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:06:38,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:06:38,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:06:38,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:06:38,289.289 INFO    ] time= 22/06/2026 16:06:38
[2026-06-22 16:06:38,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:06:38,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:06:38,445.445 INFO    ] No existing commands found in stream
[2026-06-22 16:06:43,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:06:43,462.462 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-22 16:06:47,609.609 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:06:47,616.616 INFO    ] Checking for system updates...
[2026-06-22 16:06:47,657.657 INFO    ] 200
[2026-06-22 16:06:47,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:06:47,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:06:47,714.714 INFO    ] No update needed
[2026-06-22 16:06:47,717.717 INFO    ] Checking for camera pi updates...
[2026-06-22 16:06:47,750.750 INFO    ] 200
[2026-06-22 16:06:47,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:06:47,793.793 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:06:47,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:06:47,867.867 INFO    ] No camera update needed
[2026-06-22 16:06:47,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:06:47,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:06:47,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:06:47,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:06:49,925.925 INFO    ] ================================================
[2026-06-22 16:06:49,941.941 INFO    ] Launching Daemon at Mon Jun 22 16:06:49 IST 2026
[2026-06-22 16:06:49,952.952 INFO    ] ================================================
[2026-06-22 16:06:50,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:06:50
[2026-06-22 16:06:51,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:06:51,419.419 INFO    ] Initializing speech engine...
[2026-06-22 16:06:51,426.426 INFO    ] 2026-06-22 16:06:51
[2026-06-22 16:06:51,685.685 INFO    ] 2026-06-22 16:06:51
[2026-06-22 16:06:51,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:06:51,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:06:51,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:06:52,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:06:52,146.146 INFO    ] time= 22/06/2026 16:06:52
[2026-06-22 16:06:52,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:06:52,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:06:52,357.357 INFO    ] No existing commands found in stream
[2026-06-22 16:06:57,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:06:57,390.390 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-22 16:07:01,777.777 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:07:01,781.781 INFO    ] Checking for system updates...
[2026-06-22 16:07:01,842.842 INFO    ] 200
[2026-06-22 16:07:01,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:07:01,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:07:01,925.925 INFO    ] No update needed
[2026-06-22 16:07:01,929.929 INFO    ] Checking for camera pi updates...
[2026-06-22 16:07:01,967.967 INFO    ] 200
[2026-06-22 16:07:01,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:07:02,016.016 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:07:02,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:07:02,086.086 INFO    ] No camera update needed
[2026-06-22 16:07:02,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:07:02,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:07:02,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:07:02,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:07:04,147.147 INFO    ] ================================================
[2026-06-22 16:07:04,162.162 INFO    ] Launching Daemon at Mon Jun 22 16:07:04 IST 2026
[2026-06-22 16:07:04,173.173 INFO    ] ================================================
[2026-06-22 16:07:04,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:07:04
[2026-06-22 16:07:05,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:07:05,748.748 INFO    ] Initializing speech engine...
[2026-06-22 16:07:05,757.757 INFO    ] 2026-06-22 16:07:05
[2026-06-22 16:07:06,025.025 INFO    ] 2026-06-22 16:07:06
[2026-06-22 16:07:06,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:07:06,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:07:06,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:07:06,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:07:06,574.574 INFO    ] time= 22/06/2026 16:07:06
[2026-06-22 16:07:06,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:07:06,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:07:06,759.759 INFO    ] No existing commands found in stream
[2026-06-22 16:07:11,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:07:11,782.782 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-22 16:07:14,597.597 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:07:14,600.600 INFO    ] Checking for system updates...
[2026-06-22 16:07:14,636.636 INFO    ] 200
[2026-06-22 16:07:14,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:07:14,691.691 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:07:14,694.694 INFO    ] No update needed
[2026-06-22 16:07:14,696.696 INFO    ] Checking for camera pi updates...
[2026-06-22 16:07:14,733.733 INFO    ] 200
[2026-06-22 16:07:14,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:07:14,776.776 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:07:14,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:07:14,863.863 INFO    ] No camera update needed
[2026-06-22 16:07:14,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:07:14,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:07:14,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:07:14,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:07:16,918.918 INFO    ] ================================================
[2026-06-22 16:07:16,933.933 INFO    ] Launching Daemon at Mon Jun 22 16:07:16 IST 2026
[2026-06-22 16:07:16,944.944 INFO    ] ================================================
[2026-06-22 16:07:17,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:07:17
[2026-06-22 16:07:18,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:07:18,416.416 INFO    ] Initializing speech engine...
[2026-06-22 16:07:18,423.423 INFO    ] 2026-06-22 16:07:18
[2026-06-22 16:07:18,716.716 INFO    ] 2026-06-22 16:07:18
[2026-06-22 16:07:18,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:07:18,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:07:18,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:07:19,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:07:19,088.088 INFO    ] time= 22/06/2026 16:07:19
[2026-06-22 16:07:19,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:07:19,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:07:19,275.275 INFO    ] No existing commands found in stream
[2026-06-22 16:07:24,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:07:24,308.308 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-22 16:07:26,143.143 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:07:26,146.146 INFO    ] Checking for system updates...
[2026-06-22 16:07:26,181.181 INFO    ] 200
[2026-06-22 16:07:26,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:07:26,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:07:26,239.239 INFO    ] No update needed
[2026-06-22 16:07:26,241.241 INFO    ] Checking for camera pi updates...
[2026-06-22 16:07:26,281.281 INFO    ] 200
[2026-06-22 16:07:26,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:07:26,326.326 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:07:26,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:07:26,431.431 INFO    ] No camera update needed
[2026-06-22 16:07:26,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:07:26,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:07:26,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:07:26,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:07:28,486.486 INFO    ] ================================================
[2026-06-22 16:07:28,502.502 INFO    ] Launching Daemon at Mon Jun 22 16:07:28 IST 2026
[2026-06-22 16:07:28,513.513 INFO    ] ================================================
[2026-06-22 16:07:29,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:07:29
[2026-06-22 16:07:29,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:07:29,888.888 INFO    ] Initializing speech engine...
[2026-06-22 16:07:29,898.898 INFO    ] 2026-06-22 16:07:29
[2026-06-22 16:07:30,161.161 INFO    ] 2026-06-22 16:07:30
[2026-06-22 16:07:30,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:07:30,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:07:30,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:07:30,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:07:30,742.742 INFO    ] time= 22/06/2026 16:07:30
[2026-06-22 16:07:30,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:07:30,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:07:30,921.921 INFO    ] No existing commands found in stream
[2026-06-22 16:07:35,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:07:35,939.939 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-22 16:07:40,212.212 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:07:40,216.216 INFO    ] Checking for system updates...
[2026-06-22 16:07:40,253.253 INFO    ] 200
[2026-06-22 16:07:40,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:07:40,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:07:40,320.320 INFO    ] No update needed
[2026-06-22 16:07:40,323.323 INFO    ] Checking for camera pi updates...
[2026-06-22 16:07:40,358.358 INFO    ] 200
[2026-06-22 16:07:40,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:07:40,409.409 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:07:40,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:07:40,496.496 INFO    ] No camera update needed
[2026-06-22 16:07:40,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:07:40,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:07:40,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:07:40,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:07:42,553.553 INFO    ] ================================================
[2026-06-22 16:07:42,569.569 INFO    ] Launching Daemon at Mon Jun 22 16:07:42 IST 2026
[2026-06-22 16:07:42,581.581 INFO    ] ================================================
[2026-06-22 16:07:43,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:07:43
[2026-06-22 16:07:43,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:07:44,124.124 INFO    ] Initializing speech engine...
[2026-06-22 16:07:44,131.131 INFO    ] 2026-06-22 16:07:44
[2026-06-22 16:07:44,403.403 INFO    ] 2026-06-22 16:07:44
[2026-06-22 16:07:44,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:07:44,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:07:44,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:07:44,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:07:44,802.802 INFO    ] time= 22/06/2026 16:07:44
[2026-06-22 16:07:44,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:07:44,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:07:44,912.912 INFO    ] No existing commands found in stream
[2026-06-22 16:07:49,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:07:49,928.928 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-22 16:07:50,964.964 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:07:50,966.966 INFO    ] Checking for system updates...
[2026-06-22 16:07:50,986.986 INFO    ] 200
[2026-06-22 16:07:50,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:07:51,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:07:51,020.020 INFO    ] No update needed
[2026-06-22 16:07:51,021.021 INFO    ] Checking for camera pi updates...
[2026-06-22 16:07:51,053.053 INFO    ] 200
[2026-06-22 16:07:51,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:07:51,096.096 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:07:51,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:07:51,264.264 INFO    ] No camera update needed
[2026-06-22 16:07:51,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:07:51,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:07:51,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:07:51,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:07:53,320.320 INFO    ] ================================================
[2026-06-22 16:07:53,336.336 INFO    ] Launching Daemon at Mon Jun 22 16:07:53 IST 2026
[2026-06-22 16:07:53,348.348 INFO    ] ================================================
[2026-06-22 16:07:53,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:07:53
[2026-06-22 16:07:54,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:07:54,716.716 INFO    ] Initializing speech engine...
[2026-06-22 16:07:54,726.726 INFO    ] 2026-06-22 16:07:54
[2026-06-22 16:07:54,973.973 INFO    ] 2026-06-22 16:07:54
[2026-06-22 16:07:55,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:07:55,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:07:55,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:07:55,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:07:55,478.478 INFO    ] time= 22/06/2026 16:07:55
[2026-06-22 16:07:55,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:07:55,542.542 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:07:55,684.684 INFO    ] No existing commands found in stream
[2026-06-22 16:08:00,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:08:00,701.701 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-22 16:08:03,022.022 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:08:03,025.025 INFO    ] Checking for system updates...
[2026-06-22 16:08:03,076.076 INFO    ] 200
[2026-06-22 16:08:03,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:08:03,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:08:03,151.151 INFO    ] No update needed
[2026-06-22 16:08:03,155.155 INFO    ] Checking for camera pi updates...
[2026-06-22 16:08:03,197.197 INFO    ] 200
[2026-06-22 16:08:03,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:08:03,243.243 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:08:03,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:08:03,328.328 INFO    ] No camera update needed
[2026-06-22 16:08:03,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:08:03,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:08:03,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:08:03,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:08:05,389.389 INFO    ] ================================================
[2026-06-22 16:08:05,405.405 INFO    ] Launching Daemon at Mon Jun 22 16:08:05 IST 2026
[2026-06-22 16:08:05,416.416 INFO    ] ================================================
[2026-06-22 16:08:05,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:08:05
[2026-06-22 16:08:06,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:08:06,982.982 INFO    ] Initializing speech engine...
[2026-06-22 16:08:06,990.990 INFO    ] 2026-06-22 16:08:06
[2026-06-22 16:08:07,297.297 INFO    ] 2026-06-22 16:08:07
[2026-06-22 16:08:07,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:08:07,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:08:07,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:08:07,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:08:07,818.818 INFO    ] time= 22/06/2026 16:08:07
[2026-06-22 16:08:07,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:08:07,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:08:07,983.983 INFO    ] No existing commands found in stream
[2026-06-22 16:08:13,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:08:13,012.012 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-22 16:08:16,726.726 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:08:16,727.727 INFO    ] Checking for system updates...
[2026-06-22 16:08:16,750.750 INFO    ] 200
[2026-06-22 16:08:16,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:08:16,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:08:16,813.813 INFO    ] No update needed
[2026-06-22 16:08:16,816.816 INFO    ] Checking for camera pi updates...
[2026-06-22 16:08:16,852.852 INFO    ] 200
[2026-06-22 16:08:16,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:08:16,898.898 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:08:16,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:08:16,992.992 INFO    ] No camera update needed
[2026-06-22 16:08:16,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:08:16,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:08:17,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:08:17,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:08:19,055.055 INFO    ] ================================================
[2026-06-22 16:08:19,070.070 INFO    ] Launching Daemon at Mon Jun 22 16:08:19 IST 2026
[2026-06-22 16:08:19,082.082 INFO    ] ================================================
[2026-06-22 16:08:19,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:08:19
[2026-06-22 16:08:20,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:08:20,468.468 INFO    ] Initializing speech engine...
[2026-06-22 16:08:20,476.476 INFO    ] 2026-06-22 16:08:20
[2026-06-22 16:08:20,741.741 INFO    ] 2026-06-22 16:08:20
[2026-06-22 16:08:20,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:08:20,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:08:20,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:08:21,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:08:21,166.166 INFO    ] time= 22/06/2026 16:08:21
[2026-06-22 16:08:21,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:08:21,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:08:21,325.325 INFO    ] No existing commands found in stream
[2026-06-22 16:08:26,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:08:26,348.348 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-22 16:08:29,760.760 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:08:29,763.763 INFO    ] Checking for system updates...
[2026-06-22 16:08:29,798.798 INFO    ] 200
[2026-06-22 16:08:29,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:08:29,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:08:29,858.858 INFO    ] No update needed
[2026-06-22 16:08:29,860.860 INFO    ] Checking for camera pi updates...
[2026-06-22 16:08:29,898.898 INFO    ] 200
[2026-06-22 16:08:29,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:08:29,947.947 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:08:30,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:08:30,030.030 INFO    ] No camera update needed
[2026-06-22 16:08:30,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:08:30,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:08:30,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:08:30,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:08:32,092.092 INFO    ] ================================================
[2026-06-22 16:08:32,111.111 INFO    ] Launching Daemon at Mon Jun 22 16:08:32 IST 2026
[2026-06-22 16:08:32,125.125 INFO    ] ================================================
[2026-06-22 16:08:32,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:08:32
[2026-06-22 16:08:33,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:08:33,582.582 INFO    ] Initializing speech engine...
[2026-06-22 16:08:33,590.590 INFO    ] 2026-06-22 16:08:33
[2026-06-22 16:08:33,887.887 INFO    ] 2026-06-22 16:08:33
[2026-06-22 16:08:33,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:08:34,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:08:34,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:08:34,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:08:34,270.270 INFO    ] time= 22/06/2026 16:08:34
[2026-06-22 16:08:34,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:08:34,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:08:34,400.400 INFO    ] No existing commands found in stream
[2026-06-22 16:08:39,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:08:39,416.416 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-22 16:08:42,480.480 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:08:42,483.483 INFO    ] Checking for system updates...
[2026-06-22 16:08:42,520.520 INFO    ] 200
[2026-06-22 16:08:42,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:08:42,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:08:42,588.588 INFO    ] No update needed
[2026-06-22 16:08:42,591.591 INFO    ] Checking for camera pi updates...
[2026-06-22 16:08:42,626.626 INFO    ] 200
[2026-06-22 16:08:42,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:08:42,670.670 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:08:42,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:08:42,754.754 INFO    ] No camera update needed
[2026-06-22 16:08:42,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:08:42,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:08:42,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:08:42,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:08:44,815.815 INFO    ] ================================================
[2026-06-22 16:08:44,831.831 INFO    ] Launching Daemon at Mon Jun 22 16:08:44 IST 2026
[2026-06-22 16:08:44,841.841 INFO    ] ================================================
[2026-06-22 16:08:45,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:08:45
[2026-06-22 16:08:45,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:08:46,179.179 INFO    ] Initializing speech engine...
[2026-06-22 16:08:46,187.187 INFO    ] 2026-06-22 16:08:46
[2026-06-22 16:08:46,449.449 INFO    ] 2026-06-22 16:08:46
[2026-06-22 16:08:46,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:08:46,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:08:46,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:08:46,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:08:46,918.918 INFO    ] time= 22/06/2026 16:08:46
[2026-06-22 16:08:46,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:08:47,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:08:47,132.132 INFO    ] No existing commands found in stream
[2026-06-22 16:08:52,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:08:52,157.157 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-22 16:08:55,137.137 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:08:55,140.140 INFO    ] Checking for system updates...
[2026-06-22 16:08:55,202.202 INFO    ] 200
[2026-06-22 16:08:55,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:08:55,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:08:55,279.279 INFO    ] No update needed
[2026-06-22 16:08:55,281.281 INFO    ] Checking for camera pi updates...
[2026-06-22 16:08:55,331.331 INFO    ] 200
[2026-06-22 16:08:55,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:08:55,392.392 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:08:55,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:08:55,500.500 INFO    ] No camera update needed
[2026-06-22 16:08:55,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:08:55,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:08:55,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:08:55,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:08:57,559.559 INFO    ] ================================================
[2026-06-22 16:08:57,575.575 INFO    ] Launching Daemon at Mon Jun 22 16:08:57 IST 2026
[2026-06-22 16:08:57,587.587 INFO    ] ================================================
[2026-06-22 16:08:58,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:08:58
[2026-06-22 16:08:58,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:08:58,958.958 INFO    ] Initializing speech engine...
[2026-06-22 16:08:58,968.968 INFO    ] 2026-06-22 16:08:58
[2026-06-22 16:08:59,217.217 INFO    ] 2026-06-22 16:08:59
[2026-06-22 16:08:59,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:08:59,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:08:59,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:08:59,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:08:59,589.589 INFO    ] time= 22/06/2026 16:08:59
[2026-06-22 16:08:59,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:08:59,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:08:59,784.784 INFO    ] No existing commands found in stream
[2026-06-22 16:09:04,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:09:04,797.797 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-22 16:09:08,540.540 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:09:08,543.543 INFO    ] Checking for system updates...
[2026-06-22 16:09:08,579.579 INFO    ] 200
[2026-06-22 16:09:08,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:09:08,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:09:08,636.636 INFO    ] No update needed
[2026-06-22 16:09:08,639.639 INFO    ] Checking for camera pi updates...
[2026-06-22 16:09:08,672.672 INFO    ] 200
[2026-06-22 16:09:08,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:09:08,715.715 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:09:08,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:09:08,805.805 INFO    ] No camera update needed
[2026-06-22 16:09:08,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:09:08,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:09:08,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:09:08,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:09:10,861.861 INFO    ] ================================================
[2026-06-22 16:09:10,877.877 INFO    ] Launching Daemon at Mon Jun 22 16:09:10 IST 2026
[2026-06-22 16:09:10,887.887 INFO    ] ================================================
[2026-06-22 16:09:11,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:09:11
[2026-06-22 16:09:11,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:09:12,270.270 INFO    ] Initializing speech engine...
[2026-06-22 16:09:12,279.279 INFO    ] 2026-06-22 16:09:12
[2026-06-22 16:09:12,546.546 INFO    ] 2026-06-22 16:09:12
[2026-06-22 16:09:12,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:09:12,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:09:12,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:09:12,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:09:13,043.043 INFO    ] time= 22/06/2026 16:09:12
[2026-06-22 16:09:13,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:09:13,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:09:13,251.251 INFO    ] No existing commands found in stream
[2026-06-22 16:09:18,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:09:18,282.282 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-22 16:09:21,487.487 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:09:21,490.490 INFO    ] Checking for system updates...
[2026-06-22 16:09:21,530.530 INFO    ] 200
[2026-06-22 16:09:21,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:09:21,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:09:21,588.588 INFO    ] No update needed
[2026-06-22 16:09:21,590.590 INFO    ] Checking for camera pi updates...
[2026-06-22 16:09:21,623.623 INFO    ] 200
[2026-06-22 16:09:21,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:09:21,667.667 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:09:21,741.741 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:09:21,743.743 INFO    ] No camera update needed
[2026-06-22 16:09:21,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:09:21,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:09:21,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:09:21,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:09:23,798.798 INFO    ] ================================================
[2026-06-22 16:09:23,814.814 INFO    ] Launching Daemon at Mon Jun 22 16:09:23 IST 2026
[2026-06-22 16:09:23,824.824 INFO    ] ================================================
[2026-06-22 16:09:24,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:09:24
[2026-06-22 16:09:24,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:09:25,199.199 INFO    ] Initializing speech engine...
[2026-06-22 16:09:25,204.204 INFO    ] 2026-06-22 16:09:25
[2026-06-22 16:09:25,451.451 INFO    ] 2026-06-22 16:09:25
[2026-06-22 16:09:25,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:09:25,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:09:25,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:09:25,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:09:26,006.006 INFO    ] time= 22/06/2026 16:09:25
[2026-06-22 16:09:26,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:09:26,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:09:26,159.159 INFO    ] No existing commands found in stream
[2026-06-22 16:09:31,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:09:31,176.176 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-22 16:09:33,314.314 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:09:33,317.317 INFO    ] Checking for system updates...
[2026-06-22 16:09:33,354.354 INFO    ] 200
[2026-06-22 16:09:33,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:09:33,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:09:33,412.412 INFO    ] No update needed
[2026-06-22 16:09:33,414.414 INFO    ] Checking for camera pi updates...
[2026-06-22 16:09:33,448.448 INFO    ] 200
[2026-06-22 16:09:33,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:09:33,496.496 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:09:33,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:09:33,582.582 INFO    ] No camera update needed
[2026-06-22 16:09:33,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:09:33,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:09:33,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:09:33,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:09:35,637.637 INFO    ] ================================================
[2026-06-22 16:09:35,653.653 INFO    ] Launching Daemon at Mon Jun 22 16:09:35 IST 2026
[2026-06-22 16:09:35,663.663 INFO    ] ================================================
[2026-06-22 16:09:36,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:09:36
[2026-06-22 16:09:36,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:09:37,279.279 INFO    ] Initializing speech engine...
[2026-06-22 16:09:37,290.290 INFO    ] 2026-06-22 16:09:37
[2026-06-22 16:09:37,569.569 INFO    ] 2026-06-22 16:09:37
[2026-06-22 16:09:37,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:09:37,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:09:37,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:09:38,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:09:38,108.108 INFO    ] time= 22/06/2026 16:09:38
[2026-06-22 16:09:38,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:09:38,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:09:38,302.302 INFO    ] No existing commands found in stream
[2026-06-22 16:09:43,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:09:43,331.331 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-22 16:09:46,908.908 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:09:46,910.910 INFO    ] Checking for system updates...
[2026-06-22 16:09:46,931.931 INFO    ] 200
[2026-06-22 16:09:46,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:09:46,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:09:46,976.976 INFO    ] No update needed
[2026-06-22 16:09:46,978.978 INFO    ] Checking for camera pi updates...
[2026-06-22 16:09:47,012.012 INFO    ] 200
[2026-06-22 16:09:47,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:09:47,056.056 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:09:47,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:09:47,135.135 INFO    ] No camera update needed
[2026-06-22 16:09:47,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:09:47,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:09:47,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:09:47,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:09:49,192.192 INFO    ] ================================================
[2026-06-22 16:09:49,207.207 INFO    ] Launching Daemon at Mon Jun 22 16:09:49 IST 2026
[2026-06-22 16:09:49,218.218 INFO    ] ================================================
[2026-06-22 16:09:49,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:09:49
[2026-06-22 16:09:50,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:09:50,633.633 INFO    ] Initializing speech engine...
[2026-06-22 16:09:50,652.652 INFO    ] 2026-06-22 16:09:50
[2026-06-22 16:09:50,903.903 INFO    ] 2026-06-22 16:09:50
[2026-06-22 16:09:50,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:09:51,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:09:51,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:09:51,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:09:51,281.281 INFO    ] time= 22/06/2026 16:09:51
[2026-06-22 16:09:51,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:09:51,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:09:51,482.482 INFO    ] No existing commands found in stream
[2026-06-22 16:09:56,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:09:56,496.496 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-22 16:09:57,974.974 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:09:57,976.976 INFO    ] Checking for system updates...
[2026-06-22 16:09:58,012.012 INFO    ] 200
[2026-06-22 16:09:58,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:09:58,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:09:58,078.078 INFO    ] No update needed
[2026-06-22 16:09:58,080.080 INFO    ] Checking for camera pi updates...
[2026-06-22 16:09:58,114.114 INFO    ] 200
[2026-06-22 16:09:58,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:09:58,163.163 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:09:58,345.345 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:09:58,347.347 INFO    ] No camera update needed
[2026-06-22 16:09:58,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:09:58,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:09:58,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:09:58,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:10:00,406.406 INFO    ] ================================================
[2026-06-22 16:10:00,421.421 INFO    ] Launching Daemon at Mon Jun 22 16:10:00 IST 2026
[2026-06-22 16:10:00,432.432 INFO    ] ================================================
[2026-06-22 16:10:00,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:10:00
[2026-06-22 16:10:01,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:10:02,520.520 INFO    ] Initializing speech engine...
[2026-06-22 16:10:02,525.525 INFO    ] 2026-06-22 16:10:02
[2026-06-22 16:10:02,936.936 INFO    ] 2026-06-22 16:10:02
[2026-06-22 16:10:03,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:10:03,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:10:03,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:10:03,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:10:03,661.661 INFO    ] time= 22/06/2026 16:10:03
[2026-06-22 16:10:03,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:10:03,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:10:03,879.879 INFO    ] No existing commands found in stream
[2026-06-22 16:10:08,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:10:08,902.902 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-22 16:10:13,306.306 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:10:13,308.308 INFO    ] Checking for system updates...
[2026-06-22 16:10:13,348.348 INFO    ] 200
[2026-06-22 16:10:13,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:10:13,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:10:13,411.411 INFO    ] No update needed
[2026-06-22 16:10:13,414.414 INFO    ] Checking for camera pi updates...
[2026-06-22 16:10:13,451.451 INFO    ] 200
[2026-06-22 16:10:13,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:10:13,493.493 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:10:13,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:10:13,593.593 INFO    ] No camera update needed
[2026-06-22 16:10:13,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:10:13,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:10:13,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:10:13,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:10:15,649.649 INFO    ] ================================================
[2026-06-22 16:10:15,665.665 INFO    ] Launching Daemon at Mon Jun 22 16:10:15 IST 2026
[2026-06-22 16:10:15,676.676 INFO    ] ================================================
[2026-06-22 16:10:16,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:10:16
[2026-06-22 16:10:16,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:10:17,013.013 INFO    ] Initializing speech engine...
[2026-06-22 16:10:17,020.020 INFO    ] 2026-06-22 16:10:17
[2026-06-22 16:10:17,314.314 INFO    ] 2026-06-22 16:10:17
[2026-06-22 16:10:17,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:10:17,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:10:17,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:10:17,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:10:17,737.737 INFO    ] time= 22/06/2026 16:10:17
[2026-06-22 16:10:17,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:10:17,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:10:17,890.890 INFO    ] No existing commands found in stream
[2026-06-22 16:10:22,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:10:22,918.918 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-22 16:10:26,989.989 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:10:26,991.991 INFO    ] Checking for system updates...
[2026-06-22 16:10:27,022.022 INFO    ] 200
[2026-06-22 16:10:27,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:10:27,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:10:27,083.083 INFO    ] No update needed
[2026-06-22 16:10:27,086.086 INFO    ] Checking for camera pi updates...
[2026-06-22 16:10:27,120.120 INFO    ] 200
[2026-06-22 16:10:27,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:10:27,168.168 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:10:27,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:10:27,249.249 INFO    ] No camera update needed
[2026-06-22 16:10:27,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:10:27,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:10:27,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:10:27,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:10:29,304.304 INFO    ] ================================================
[2026-06-22 16:10:29,318.318 INFO    ] Launching Daemon at Mon Jun 22 16:10:29 IST 2026
[2026-06-22 16:10:29,329.329 INFO    ] ================================================
[2026-06-22 16:10:29,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:10:29
[2026-06-22 16:10:30,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:10:30,710.710 INFO    ] Initializing speech engine...
[2026-06-22 16:10:30,724.724 INFO    ] 2026-06-22 16:10:30
[2026-06-22 16:10:30,991.991 INFO    ] 2026-06-22 16:10:30
[2026-06-22 16:10:31,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:10:31,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:10:31,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:10:31,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:10:31,468.468 INFO    ] time= 22/06/2026 16:10:31
[2026-06-22 16:10:31,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:10:31,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:10:31,707.707 INFO    ] No existing commands found in stream
[2026-06-22 16:10:36,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:10:36,732.732 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-22 16:10:39,992.992 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:10:39,995.995 INFO    ] Checking for system updates...
[2026-06-22 16:10:40,035.035 INFO    ] 200
[2026-06-22 16:10:40,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:10:40,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:10:40,107.107 INFO    ] No update needed
[2026-06-22 16:10:40,110.110 INFO    ] Checking for camera pi updates...
[2026-06-22 16:10:40,152.152 INFO    ] 200
[2026-06-22 16:10:40,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:10:40,195.195 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:10:40,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:10:40,301.301 INFO    ] No camera update needed
[2026-06-22 16:10:40,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:10:40,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:10:40,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:10:40,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:10:42,356.356 INFO    ] ================================================
[2026-06-22 16:10:42,372.372 INFO    ] Launching Daemon at Mon Jun 22 16:10:42 IST 2026
[2026-06-22 16:10:42,383.383 INFO    ] ================================================
[2026-06-22 16:10:42,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:10:42
[2026-06-22 16:10:43,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:10:43,866.866 INFO    ] Initializing speech engine...
[2026-06-22 16:10:43,874.874 INFO    ] 2026-06-22 16:10:43
[2026-06-22 16:10:44,149.149 INFO    ] 2026-06-22 16:10:44
[2026-06-22 16:10:44,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:10:44,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:10:44,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:10:44,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:10:44,626.626 INFO    ] time= 22/06/2026 16:10:44
[2026-06-22 16:10:44,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:10:44,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:10:44,836.836 INFO    ] No existing commands found in stream
[2026-06-22 16:10:49,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:10:49,868.868 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-22 16:10:54,200.200 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:10:54,203.203 INFO    ] Checking for system updates...
[2026-06-22 16:10:54,243.243 INFO    ] 200
[2026-06-22 16:10:54,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:10:54,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:10:54,308.308 INFO    ] No update needed
[2026-06-22 16:10:54,310.310 INFO    ] Checking for camera pi updates...
[2026-06-22 16:10:54,345.345 INFO    ] 200
[2026-06-22 16:10:54,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:10:54,389.389 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:10:54,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:10:54,485.485 INFO    ] No camera update needed
[2026-06-22 16:10:54,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:10:54,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:10:54,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:10:54,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:10:56,543.543 INFO    ] ================================================
[2026-06-22 16:10:56,558.558 INFO    ] Launching Daemon at Mon Jun 22 16:10:56 IST 2026
[2026-06-22 16:10:56,569.569 INFO    ] ================================================
[2026-06-22 16:10:57,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:10:57
[2026-06-22 16:10:57,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:10:57,894.894 INFO    ] Initializing speech engine...
[2026-06-22 16:10:57,903.903 INFO    ] 2026-06-22 16:10:57
[2026-06-22 16:10:58,194.194 INFO    ] 2026-06-22 16:10:58
[2026-06-22 16:10:58,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:10:58,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:10:58,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:10:58,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:10:58,609.609 INFO    ] time= 22/06/2026 16:10:58
[2026-06-22 16:10:58,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:10:58,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:10:58,809.809 INFO    ] No existing commands found in stream
[2026-06-22 16:11:03,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:11:03,842.842 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-22 16:11:07,519.519 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:11:07,520.520 INFO    ] Checking for system updates...
[2026-06-22 16:11:07,542.542 INFO    ] 200
[2026-06-22 16:11:07,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:11:07,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:11:07,584.584 INFO    ] No update needed
[2026-06-22 16:11:07,587.587 INFO    ] Checking for camera pi updates...
[2026-06-22 16:11:07,620.620 INFO    ] 200
[2026-06-22 16:11:07,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:11:07,664.664 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:11:07,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:11:07,748.748 INFO    ] No camera update needed
[2026-06-22 16:11:07,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:11:07,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:11:07,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:11:07,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:11:09,804.804 INFO    ] ================================================
[2026-06-22 16:11:09,820.820 INFO    ] Launching Daemon at Mon Jun 22 16:11:09 IST 2026
[2026-06-22 16:11:09,830.830 INFO    ] ================================================
[2026-06-22 16:11:10,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:11:10
[2026-06-22 16:11:10,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:11:11,243.243 INFO    ] Initializing speech engine...
[2026-06-22 16:11:11,268.268 INFO    ] 2026-06-22 16:11:11
[2026-06-22 16:11:11,539.539 INFO    ] 2026-06-22 16:11:11
[2026-06-22 16:11:11,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:11:11,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:11:11,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:11:11,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:11:11,960.960 INFO    ] time= 22/06/2026 16:11:11
[2026-06-22 16:11:11,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:11:11,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:11:12,135.135 INFO    ] No existing commands found in stream
[2026-06-22 16:11:17,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:11:17,162.162 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-22 16:11:18,816.816 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:11:18,819.819 INFO    ] Checking for system updates...
[2026-06-22 16:11:18,855.855 INFO    ] 200
[2026-06-22 16:11:18,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:11:18,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:11:18,912.912 INFO    ] No update needed
[2026-06-22 16:11:18,915.915 INFO    ] Checking for camera pi updates...
[2026-06-22 16:11:18,948.948 INFO    ] 200
[2026-06-22 16:11:18,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:11:18,996.996 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:11:19,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:11:19,088.088 INFO    ] No camera update needed
[2026-06-22 16:11:19,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:11:19,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:11:19,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:11:19,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:11:21,144.144 INFO    ] ================================================
[2026-06-22 16:11:21,160.160 INFO    ] Launching Daemon at Mon Jun 22 16:11:21 IST 2026
[2026-06-22 16:11:21,171.171 INFO    ] ================================================
[2026-06-22 16:11:21,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:11:21
[2026-06-22 16:11:22,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:11:22,699.699 INFO    ] Initializing speech engine...
[2026-06-22 16:11:22,709.709 INFO    ] 2026-06-22 16:11:22
[2026-06-22 16:11:22,981.981 INFO    ] 2026-06-22 16:11:22
[2026-06-22 16:11:23,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:11:23,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:11:23,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:11:23,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:11:23,503.503 INFO    ] time= 22/06/2026 16:11:23
[2026-06-22 16:11:23,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:11:23,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:11:23,709.709 INFO    ] No existing commands found in stream
[2026-06-22 16:11:28,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:11:28,730.730 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-22 16:11:32,982.982 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:11:32,985.985 INFO    ] Checking for system updates...
[2026-06-22 16:11:33,022.022 INFO    ] 200
[2026-06-22 16:11:33,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:11:33,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:11:33,080.080 INFO    ] No update needed
[2026-06-22 16:11:33,082.082 INFO    ] Checking for camera pi updates...
[2026-06-22 16:11:33,116.116 INFO    ] 200
[2026-06-22 16:11:33,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:11:33,160.160 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:11:33,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:11:33,244.244 INFO    ] No camera update needed
[2026-06-22 16:11:33,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:11:33,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:11:33,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:11:33,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:11:35,300.300 INFO    ] ================================================
[2026-06-22 16:11:35,315.315 INFO    ] Launching Daemon at Mon Jun 22 16:11:35 IST 2026
[2026-06-22 16:11:35,326.326 INFO    ] ================================================
[2026-06-22 16:11:35,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:11:35
[2026-06-22 16:11:36,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:11:36,789.789 INFO    ] Initializing speech engine...
[2026-06-22 16:11:36,795.795 INFO    ] 2026-06-22 16:11:36
[2026-06-22 16:11:37,056.056 INFO    ] 2026-06-22 16:11:37
[2026-06-22 16:11:37,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:11:37,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:11:37,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:11:37,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:11:37,622.622 INFO    ] time= 22/06/2026 16:11:37
[2026-06-22 16:11:37,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:11:37,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:11:37,783.783 INFO    ] No existing commands found in stream
[2026-06-22 16:11:42,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:11:42,811.811 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-22 16:11:44,663.663 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:11:44,666.666 INFO    ] Checking for system updates...
[2026-06-22 16:11:44,704.704 INFO    ] 200
[2026-06-22 16:11:44,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:11:44,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:11:44,769.769 INFO    ] No update needed
[2026-06-22 16:11:44,772.772 INFO    ] Checking for camera pi updates...
[2026-06-22 16:11:44,806.806 INFO    ] 200
[2026-06-22 16:11:44,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:11:44,849.849 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:11:44,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:11:44,961.961 INFO    ] No camera update needed
[2026-06-22 16:11:44,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:11:44,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:11:44,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:11:44,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:11:47,017.017 INFO    ] ================================================
[2026-06-22 16:11:47,032.032 INFO    ] Launching Daemon at Mon Jun 22 16:11:47 IST 2026
[2026-06-22 16:11:47,043.043 INFO    ] ================================================
[2026-06-22 16:11:47,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:11:47
[2026-06-22 16:11:48,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:11:48,423.423 INFO    ] Initializing speech engine...
[2026-06-22 16:11:48,433.433 INFO    ] 2026-06-22 16:11:48
[2026-06-22 16:11:48,692.692 INFO    ] 2026-06-22 16:11:48
[2026-06-22 16:11:48,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:11:48,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:11:48,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:11:49,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:11:49,239.239 INFO    ] time= 22/06/2026 16:11:49
[2026-06-22 16:11:49,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:11:49,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:11:49,392.392 INFO    ] No existing commands found in stream
[2026-06-22 16:11:54,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:11:54,410.410 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-22 16:11:58,851.851 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:11:58,854.854 INFO    ] Checking for system updates...
[2026-06-22 16:11:58,891.891 INFO    ] 200
[2026-06-22 16:11:58,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:11:58,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:11:58,948.948 INFO    ] No update needed
[2026-06-22 16:11:58,950.950 INFO    ] Checking for camera pi updates...
[2026-06-22 16:11:58,984.984 INFO    ] 200
[2026-06-22 16:11:58,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:11:59,027.027 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:11:59,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:11:59,112.112 INFO    ] No camera update needed
[2026-06-22 16:11:59,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:11:59,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:11:59,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:11:59,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:12:01,167.167 INFO    ] ================================================
[2026-06-22 16:12:01,182.182 INFO    ] Launching Daemon at Mon Jun 22 16:12:01 IST 2026
[2026-06-22 16:12:01,193.193 INFO    ] ================================================
[2026-06-22 16:12:01,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:12:01
[2026-06-22 16:12:02,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:12:02,839.839 INFO    ] Initializing speech engine...
[2026-06-22 16:12:02,851.851 INFO    ] 2026-06-22 16:12:02
[2026-06-22 16:12:03,173.173 INFO    ] 2026-06-22 16:12:03
[2026-06-22 16:12:03,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:12:03,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:12:03,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:12:03,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:12:03,595.595 INFO    ] time= 22/06/2026 16:12:03
[2026-06-22 16:12:03,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:12:03,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:12:03,709.709 INFO    ] No existing commands found in stream
[2026-06-22 16:12:08,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:12:08,731.731 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-22 16:12:11,034.034 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:12:11,037.037 INFO    ] Checking for system updates...
[2026-06-22 16:12:11,075.075 INFO    ] 200
[2026-06-22 16:12:11,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:12:11,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:12:11,132.132 INFO    ] No update needed
[2026-06-22 16:12:11,134.134 INFO    ] Checking for camera pi updates...
[2026-06-22 16:12:11,171.171 INFO    ] 200
[2026-06-22 16:12:11,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:12:11,214.214 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:12:11,294.294 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:12:11,297.297 INFO    ] No camera update needed
[2026-06-22 16:12:11,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:12:11,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:12:11,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:12:11,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:12:13,353.353 INFO    ] ================================================
[2026-06-22 16:12:13,368.368 INFO    ] Launching Daemon at Mon Jun 22 16:12:13 IST 2026
[2026-06-22 16:12:13,379.379 INFO    ] ================================================
[2026-06-22 16:12:13,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:12:13
[2026-06-22 16:12:14,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:12:14,790.790 INFO    ] Initializing speech engine...
[2026-06-22 16:12:14,800.800 INFO    ] 2026-06-22 16:12:14
[2026-06-22 16:12:15,067.067 INFO    ] 2026-06-22 16:12:15
[2026-06-22 16:12:15,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:12:15,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:12:15,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:12:15,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:12:15,550.550 INFO    ] time= 22/06/2026 16:12:15
[2026-06-22 16:12:15,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:12:15,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:12:15,772.772 INFO    ] No existing commands found in stream
[2026-06-22 16:12:20,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:12:20,800.800 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-22 16:12:22,246.246 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:12:22,249.249 INFO    ] Checking for system updates...
[2026-06-22 16:12:22,285.285 INFO    ] 200
[2026-06-22 16:12:22,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:12:22,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:12:22,343.343 INFO    ] No update needed
[2026-06-22 16:12:22,345.345 INFO    ] Checking for camera pi updates...
[2026-06-22 16:12:22,379.379 INFO    ] 200
[2026-06-22 16:12:22,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:12:22,422.422 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:12:22,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:12:22,505.505 INFO    ] No camera update needed
[2026-06-22 16:12:22,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:12:22,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:12:22,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:12:22,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:12:24,561.561 INFO    ] ================================================
[2026-06-22 16:12:24,576.576 INFO    ] Launching Daemon at Mon Jun 22 16:12:24 IST 2026
[2026-06-22 16:12:24,587.587 INFO    ] ================================================
[2026-06-22 16:12:25,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:12:25
[2026-06-22 16:12:25,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:12:26,004.004 INFO    ] Initializing speech engine...
[2026-06-22 16:12:26,012.012 INFO    ] 2026-06-22 16:12:26
[2026-06-22 16:12:26,302.302 INFO    ] 2026-06-22 16:12:26
[2026-06-22 16:12:26,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:12:26,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:12:26,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:12:26,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:12:26,668.668 INFO    ] time= 22/06/2026 16:12:26
[2026-06-22 16:12:26,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:12:26,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:12:26,791.791 INFO    ] No existing commands found in stream
[2026-06-22 16:12:31,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:12:31,829.829 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-22 16:12:34,588.588 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:12:34,591.591 INFO    ] Checking for system updates...
[2026-06-22 16:12:34,647.647 INFO    ] 200
[2026-06-22 16:12:34,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:12:34,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:12:34,709.709 INFO    ] No update needed
[2026-06-22 16:12:34,712.712 INFO    ] Checking for camera pi updates...
[2026-06-22 16:12:34,753.753 INFO    ] 200
[2026-06-22 16:12:34,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:12:34,806.806 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:12:34,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:12:34,908.908 INFO    ] No camera update needed
[2026-06-22 16:12:34,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:12:34,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:12:34,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:12:34,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:12:36,963.963 INFO    ] ================================================
[2026-06-22 16:12:36,978.978 INFO    ] Launching Daemon at Mon Jun 22 16:12:36 IST 2026
[2026-06-22 16:12:36,989.989 INFO    ] ================================================
[2026-06-22 16:12:37,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:12:37
[2026-06-22 16:12:38,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:12:38,318.318 INFO    ] Initializing speech engine...
[2026-06-22 16:12:38,327.327 INFO    ] 2026-06-22 16:12:38
[2026-06-22 16:12:38,613.613 INFO    ] 2026-06-22 16:12:38
[2026-06-22 16:12:38,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:12:38,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:12:38,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:12:39,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:12:39,102.102 INFO    ] time= 22/06/2026 16:12:39
[2026-06-22 16:12:39,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:12:39,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:12:39,290.290 INFO    ] No existing commands found in stream
[2026-06-22 16:12:44,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:12:44,305.305 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-22 16:12:48,649.649 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:12:48,651.651 INFO    ] Checking for system updates...
[2026-06-22 16:12:48,687.687 INFO    ] 200
[2026-06-22 16:12:48,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:12:48,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:12:48,749.749 INFO    ] No update needed
[2026-06-22 16:12:48,751.751 INFO    ] Checking for camera pi updates...
[2026-06-22 16:12:48,785.785 INFO    ] 200
[2026-06-22 16:12:48,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:12:48,830.830 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:12:48,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:12:48,936.936 INFO    ] No camera update needed
[2026-06-22 16:12:48,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:12:48,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:12:48,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:12:48,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:12:50,990.990 INFO    ] ================================================
[2026-06-22 16:12:51,006.006 INFO    ] Launching Daemon at Mon Jun 22 16:12:51 IST 2026
[2026-06-22 16:12:51,017.017 INFO    ] ================================================
[2026-06-22 16:12:51,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:12:51
[2026-06-22 16:12:52,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:12:52,457.457 INFO    ] Initializing speech engine...
[2026-06-22 16:12:52,465.465 INFO    ] 2026-06-22 16:12:52
[2026-06-22 16:12:52,716.716 INFO    ] 2026-06-22 16:12:52
[2026-06-22 16:12:52,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:12:52,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:12:52,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:12:53,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:12:53,191.191 INFO    ] time= 22/06/2026 16:12:53
[2026-06-22 16:12:53,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:12:53,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:12:53,432.432 INFO    ] No existing commands found in stream
[2026-06-22 16:12:58,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:12:58,458.458 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-22 16:12:59,845.845 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:12:59,847.847 INFO    ] Checking for system updates...
[2026-06-22 16:12:59,884.884 INFO    ] 200
[2026-06-22 16:12:59,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:12:59,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:12:59,948.948 INFO    ] No update needed
[2026-06-22 16:12:59,950.950 INFO    ] Checking for camera pi updates...
[2026-06-22 16:12:59,990.990 INFO    ] 200
[2026-06-22 16:12:59,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:13:00,034.034 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:13:00,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:13:00,115.115 INFO    ] No camera update needed
[2026-06-22 16:13:00,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:13:00,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:13:00,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:13:00,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:13:02,180.180 INFO    ] ================================================
[2026-06-22 16:13:02,197.197 INFO    ] Launching Daemon at Mon Jun 22 16:13:02 IST 2026
[2026-06-22 16:13:02,208.208 INFO    ] ================================================
[2026-06-22 16:13:02,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:13:02
[2026-06-22 16:13:03,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:13:03,804.804 INFO    ] Initializing speech engine...
[2026-06-22 16:13:03,815.815 INFO    ] 2026-06-22 16:13:03
[2026-06-22 16:13:04,074.074 INFO    ] 2026-06-22 16:13:04
[2026-06-22 16:13:04,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:13:04,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:13:04,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:13:04,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:13:04,526.526 INFO    ] time= 22/06/2026 16:13:04
[2026-06-22 16:13:04,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:13:04,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:13:04,649.649 INFO    ] No existing commands found in stream
[2026-06-22 16:13:09,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:13:09,668.668 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-22 16:13:12,534.534 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:13:12,537.537 INFO    ] Checking for system updates...
[2026-06-22 16:13:12,576.576 INFO    ] 200
[2026-06-22 16:13:12,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:13:12,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:13:12,639.639 INFO    ] No update needed
[2026-06-22 16:13:12,642.642 INFO    ] Checking for camera pi updates...
[2026-06-22 16:13:12,679.679 INFO    ] 200
[2026-06-22 16:13:12,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:13:12,729.729 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:13:12,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:13:12,817.817 INFO    ] No camera update needed
[2026-06-22 16:13:12,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:13:12,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:13:12,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:13:12,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:13:14,874.874 INFO    ] ================================================
[2026-06-22 16:13:14,888.888 INFO    ] Launching Daemon at Mon Jun 22 16:13:14 IST 2026
[2026-06-22 16:13:14,899.899 INFO    ] ================================================
[2026-06-22 16:13:15,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:13:15
[2026-06-22 16:13:16,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:13:16,390.390 INFO    ] Initializing speech engine...
[2026-06-22 16:13:16,399.399 INFO    ] 2026-06-22 16:13:16
[2026-06-22 16:13:16,644.644 INFO    ] 2026-06-22 16:13:16
[2026-06-22 16:13:16,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:13:16,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:13:16,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:13:17,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:13:17,147.147 INFO    ] time= 22/06/2026 16:13:17
[2026-06-22 16:13:17,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:13:17,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:13:17,351.351 INFO    ] No existing commands found in stream
[2026-06-22 16:13:22,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:13:22,387.387 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-22 16:13:25,380.380 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:13:25,383.383 INFO    ] Checking for system updates...
[2026-06-22 16:13:25,422.422 INFO    ] 200
[2026-06-22 16:13:25,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:13:25,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:13:25,479.479 INFO    ] No update needed
[2026-06-22 16:13:25,482.482 INFO    ] Checking for camera pi updates...
[2026-06-22 16:13:25,517.517 INFO    ] 200
[2026-06-22 16:13:25,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:13:25,560.560 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:13:25,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:13:25,661.661 INFO    ] No camera update needed
[2026-06-22 16:13:25,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:13:25,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:13:25,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:13:25,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:13:27,717.717 INFO    ] ================================================
[2026-06-22 16:13:27,732.732 INFO    ] Launching Daemon at Mon Jun 22 16:13:27 IST 2026
[2026-06-22 16:13:27,742.742 INFO    ] ================================================
[2026-06-22 16:13:28,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:13:28
[2026-06-22 16:13:28,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:13:29,177.177 INFO    ] Initializing speech engine...
[2026-06-22 16:13:29,200.200 INFO    ] 2026-06-22 16:13:29
[2026-06-22 16:13:29,463.463 INFO    ] 2026-06-22 16:13:29
[2026-06-22 16:13:29,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:13:29,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:13:29,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:13:29,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:13:29,963.963 INFO    ] time= 22/06/2026 16:13:29
[2026-06-22 16:13:30,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:13:30,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:13:30,175.175 INFO    ] No existing commands found in stream
[2026-06-22 16:13:35,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:13:35,198.198 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-22 16:13:37,949.949 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:13:37,951.951 INFO    ] Checking for system updates...
[2026-06-22 16:13:37,972.972 INFO    ] 200
[2026-06-22 16:13:37,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:13:38,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:13:38,015.015 INFO    ] No update needed
[2026-06-22 16:13:38,017.017 INFO    ] Checking for camera pi updates...
[2026-06-22 16:13:38,052.052 INFO    ] 200
[2026-06-22 16:13:38,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:13:38,096.096 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:13:38,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:13:38,187.187 INFO    ] No camera update needed
[2026-06-22 16:13:38,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:13:38,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:13:38,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:13:38,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:13:40,244.244 INFO    ] ================================================
[2026-06-22 16:13:40,260.260 INFO    ] Launching Daemon at Mon Jun 22 16:13:40 IST 2026
[2026-06-22 16:13:40,271.271 INFO    ] ================================================
[2026-06-22 16:13:40,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:13:40
[2026-06-22 16:13:41,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:13:41,723.723 INFO    ] Initializing speech engine...
[2026-06-22 16:13:41,733.733 INFO    ] 2026-06-22 16:13:41
[2026-06-22 16:13:41,996.996 INFO    ] 2026-06-22 16:13:41
[2026-06-22 16:13:42,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:13:42,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:13:42,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:13:42,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:13:42,552.552 INFO    ] time= 22/06/2026 16:13:42
[2026-06-22 16:13:42,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:13:42,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:13:42,706.706 INFO    ] No existing commands found in stream
[2026-06-22 16:13:47,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:13:47,724.724 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-22 16:13:49,062.062 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:13:49,065.065 INFO    ] Checking for system updates...
[2026-06-22 16:13:49,086.086 INFO    ] 200
[2026-06-22 16:13:49,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:13:49,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:13:49,137.137 INFO    ] No update needed
[2026-06-22 16:13:49,140.140 INFO    ] Checking for camera pi updates...
[2026-06-22 16:13:49,174.174 INFO    ] 200
[2026-06-22 16:13:49,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:13:49,221.221 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:13:49,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:13:49,305.305 INFO    ] No camera update needed
[2026-06-22 16:13:49,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:13:49,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:13:49,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:13:49,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:13:51,362.362 INFO    ] ================================================
[2026-06-22 16:13:51,378.378 INFO    ] Launching Daemon at Mon Jun 22 16:13:51 IST 2026
[2026-06-22 16:13:51,389.389 INFO    ] ================================================
[2026-06-22 16:13:51,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:13:51
[2026-06-22 16:13:52,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:13:52,758.758 INFO    ] Initializing speech engine...
[2026-06-22 16:13:52,767.767 INFO    ] 2026-06-22 16:13:52
[2026-06-22 16:13:53,031.031 INFO    ] 2026-06-22 16:13:53
[2026-06-22 16:13:53,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:13:53,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:13:53,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:13:53,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:13:53,522.522 INFO    ] time= 22/06/2026 16:13:53
[2026-06-22 16:13:53,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:13:53,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:13:53,775.775 INFO    ] No existing commands found in stream
[2026-06-22 16:13:58,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:13:58,795.795 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-22 16:14:00,836.836 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:14:00,839.839 INFO    ] Checking for system updates...
[2026-06-22 16:14:00,890.890 INFO    ] 200
[2026-06-22 16:14:00,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:14:00,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:14:00,952.952 INFO    ] No update needed
[2026-06-22 16:14:00,954.954 INFO    ] Checking for camera pi updates...
[2026-06-22 16:14:00,988.988 INFO    ] 200
[2026-06-22 16:14:00,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:14:01,034.034 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:14:01,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:14:01,095.095 INFO    ] No camera update needed
[2026-06-22 16:14:01,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:14:01,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:14:01,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:14:01,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:14:03,160.160 INFO    ] ================================================
[2026-06-22 16:14:03,182.182 INFO    ] Launching Daemon at Mon Jun 22 16:14:03 IST 2026
[2026-06-22 16:14:03,194.194 INFO    ] ================================================
[2026-06-22 16:14:03,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:14:03
[2026-06-22 16:14:04,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:14:04,794.794 INFO    ] Initializing speech engine...
[2026-06-22 16:14:04,802.802 INFO    ] 2026-06-22 16:14:04
[2026-06-22 16:14:05,082.082 INFO    ] 2026-06-22 16:14:05
[2026-06-22 16:14:05,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:14:05,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:14:05,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:14:05,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:14:05,562.562 INFO    ] time= 22/06/2026 16:14:05
[2026-06-22 16:14:05,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:14:05,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:14:05,762.762 INFO    ] No existing commands found in stream
[2026-06-22 16:14:10,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:14:10,787.787 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-22 16:14:15,080.080 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:14:15,083.083 INFO    ] Checking for system updates...
[2026-06-22 16:14:15,120.120 INFO    ] 200
[2026-06-22 16:14:15,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:14:15,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:14:15,179.179 INFO    ] No update needed
[2026-06-22 16:14:15,181.181 INFO    ] Checking for camera pi updates...
[2026-06-22 16:14:15,216.216 INFO    ] 200
[2026-06-22 16:14:15,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:14:15,259.259 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:14:15,445.445 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:14:15,448.448 INFO    ] No camera update needed
[2026-06-22 16:14:15,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:14:15,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:14:15,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:14:15,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:14:17,505.505 INFO    ] ================================================
[2026-06-22 16:14:17,521.521 INFO    ] Launching Daemon at Mon Jun 22 16:14:17 IST 2026
[2026-06-22 16:14:17,532.532 INFO    ] ================================================
[2026-06-22 16:14:18,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:14:18
[2026-06-22 16:14:18,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:14:18,852.852 INFO    ] Initializing speech engine...
[2026-06-22 16:14:18,858.858 INFO    ] 2026-06-22 16:14:18
[2026-06-22 16:14:19,143.143 INFO    ] 2026-06-22 16:14:19
[2026-06-22 16:14:19,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:14:19,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:14:19,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:14:19,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:14:19,547.547 INFO    ] time= 22/06/2026 16:14:19
[2026-06-22 16:14:19,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:14:19,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:14:19,701.701 INFO    ] No existing commands found in stream
[2026-06-22 16:14:24,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:14:24,729.729 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-22 16:14:27,761.761 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:14:27,763.763 INFO    ] Checking for system updates...
[2026-06-22 16:14:27,799.799 INFO    ] 200
[2026-06-22 16:14:27,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:14:27,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:14:27,860.860 INFO    ] No update needed
[2026-06-22 16:14:27,863.863 INFO    ] Checking for camera pi updates...
[2026-06-22 16:14:27,896.896 INFO    ] 200
[2026-06-22 16:14:27,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:14:27,939.939 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:14:28,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:14:28,019.019 INFO    ] No camera update needed
[2026-06-22 16:14:28,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:14:28,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:14:28,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:14:28,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:14:30,075.075 INFO    ] ================================================
[2026-06-22 16:14:30,091.091 INFO    ] Launching Daemon at Mon Jun 22 16:14:30 IST 2026
[2026-06-22 16:14:30,103.103 INFO    ] ================================================
[2026-06-22 16:14:30,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:14:30
[2026-06-22 16:14:31,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:14:31,570.570 INFO    ] Initializing speech engine...
[2026-06-22 16:14:31,578.578 INFO    ] 2026-06-22 16:14:31
[2026-06-22 16:14:31,831.831 INFO    ] 2026-06-22 16:14:31
[2026-06-22 16:14:31,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:14:32,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:14:32,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:14:32,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:14:32,339.339 INFO    ] time= 22/06/2026 16:14:32
[2026-06-22 16:14:32,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:14:32,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:14:32,489.489 INFO    ] No existing commands found in stream
[2026-06-22 16:14:37,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:14:37,528.528 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-22 16:14:39,896.896 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:14:39,899.899 INFO    ] Checking for system updates...
[2026-06-22 16:14:39,939.939 INFO    ] 200
[2026-06-22 16:14:39,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:14:39,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:14:39,997.997 INFO    ] No update needed
[2026-06-22 16:14:39,999.999 INFO    ] Checking for camera pi updates...
[2026-06-22 16:14:40,036.036 INFO    ] 200
[2026-06-22 16:14:40,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:14:40,079.079 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:14:40,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:14:40,161.161 INFO    ] No camera update needed
[2026-06-22 16:14:40,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:14:40,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:14:40,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:14:40,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:14:42,218.218 INFO    ] ================================================
[2026-06-22 16:14:42,234.234 INFO    ] Launching Daemon at Mon Jun 22 16:14:42 IST 2026
[2026-06-22 16:14:42,245.245 INFO    ] ================================================
[2026-06-22 16:14:42,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:14:42
[2026-06-22 16:14:43,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:14:43,611.611 INFO    ] Initializing speech engine...
[2026-06-22 16:14:43,630.630 INFO    ] 2026-06-22 16:14:43
[2026-06-22 16:14:43,898.898 INFO    ] 2026-06-22 16:14:43
[2026-06-22 16:14:43,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:14:44,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:14:44,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:14:44,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:14:44,378.378 INFO    ] time= 22/06/2026 16:14:44
[2026-06-22 16:14:44,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:14:44,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:14:44,527.527 INFO    ] No existing commands found in stream
[2026-06-22 16:14:49,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:14:49,549.549 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-22 16:14:52,994.994 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:14:52,997.997 INFO    ] Checking for system updates...
[2026-06-22 16:14:53,033.033 INFO    ] 200
[2026-06-22 16:14:53,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:14:53,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:14:53,092.092 INFO    ] No update needed
[2026-06-22 16:14:53,094.094 INFO    ] Checking for camera pi updates...
[2026-06-22 16:14:53,128.128 INFO    ] 200
[2026-06-22 16:14:53,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:14:53,171.171 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:14:53,237.237 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:14:53,239.239 INFO    ] No camera update needed
[2026-06-22 16:14:53,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:14:53,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:14:53,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:14:53,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:14:55,295.295 INFO    ] ================================================
[2026-06-22 16:14:55,311.311 INFO    ] Launching Daemon at Mon Jun 22 16:14:55 IST 2026
[2026-06-22 16:14:55,322.322 INFO    ] ================================================
[2026-06-22 16:14:55,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:14:55
[2026-06-22 16:14:56,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:14:56,695.695 INFO    ] Initializing speech engine...
[2026-06-22 16:14:56,702.702 INFO    ] 2026-06-22 16:14:56
[2026-06-22 16:14:56,965.965 INFO    ] 2026-06-22 16:14:56
[2026-06-22 16:14:56,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:14:57,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:14:57,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:14:57,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:14:57,455.455 INFO    ] time= 22/06/2026 16:14:57
[2026-06-22 16:14:57,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:14:57,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:14:57,668.668 INFO    ] No existing commands found in stream
[2026-06-22 16:15:02,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:15:02,687.687 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-22 16:15:07,023.023 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:15:07,026.026 INFO    ] Checking for system updates...
[2026-06-22 16:15:07,071.071 INFO    ] 200
[2026-06-22 16:15:07,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:15:07,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:15:07,142.142 INFO    ] No update needed
[2026-06-22 16:15:07,144.144 INFO    ] Checking for camera pi updates...
[2026-06-22 16:15:07,181.181 INFO    ] 200
[2026-06-22 16:15:07,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:15:07,224.224 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:15:07,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:15:07,309.309 INFO    ] No camera update needed
[2026-06-22 16:15:07,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:15:07,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:15:07,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:15:07,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:15:09,365.365 INFO    ] ================================================
[2026-06-22 16:15:09,382.382 INFO    ] Launching Daemon at Mon Jun 22 16:15:09 IST 2026
[2026-06-22 16:15:09,393.393 INFO    ] ================================================
[2026-06-22 16:15:09,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:15:09
[2026-06-22 16:15:10,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:15:10,745.745 INFO    ] Initializing speech engine...
[2026-06-22 16:15:10,761.761 INFO    ] 2026-06-22 16:15:10
[2026-06-22 16:15:11,022.022 INFO    ] 2026-06-22 16:15:11
[2026-06-22 16:15:11,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:15:11,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:15:11,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:15:11,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:15:11,580.580 INFO    ] time= 22/06/2026 16:15:11
[2026-06-22 16:15:11,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:15:11,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:15:11,733.733 INFO    ] No existing commands found in stream
[2026-06-22 16:15:16,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:15:16,757.757 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-22 16:15:18,771.771 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:15:18,774.774 INFO    ] Checking for system updates...
[2026-06-22 16:15:18,810.810 INFO    ] 200
[2026-06-22 16:15:18,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:15:18,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:15:18,868.868 INFO    ] No update needed
[2026-06-22 16:15:18,871.871 INFO    ] Checking for camera pi updates...
[2026-06-22 16:15:18,905.905 INFO    ] 200
[2026-06-22 16:15:18,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:15:18,948.948 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:15:19,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:15:19,034.034 INFO    ] No camera update needed
[2026-06-22 16:15:19,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:15:19,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:15:19,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:15:19,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:15:21,095.095 INFO    ] ================================================
[2026-06-22 16:15:21,117.117 INFO    ] Launching Daemon at Mon Jun 22 16:15:21 IST 2026
[2026-06-22 16:15:21,128.128 INFO    ] ================================================
[2026-06-22 16:15:21,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:15:21
[2026-06-22 16:15:22,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:15:22,566.566 INFO    ] Initializing speech engine...
[2026-06-22 16:15:22,571.571 INFO    ] 2026-06-22 16:15:22
[2026-06-22 16:15:22,871.871 INFO    ] 2026-06-22 16:15:22
[2026-06-22 16:15:22,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:15:23,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:15:23,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:15:23,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:15:23,294.294 INFO    ] time= 22/06/2026 16:15:23
[2026-06-22 16:15:23,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:15:23,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:15:23,481.481 INFO    ] No existing commands found in stream
[2026-06-22 16:15:28,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:15:28,514.514 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-22 16:15:32,766.766 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:15:32,769.769 INFO    ] Checking for system updates...
[2026-06-22 16:15:32,810.810 INFO    ] 200
[2026-06-22 16:15:32,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:15:32,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:15:32,872.872 INFO    ] No update needed
[2026-06-22 16:15:32,875.875 INFO    ] Checking for camera pi updates...
[2026-06-22 16:15:32,917.917 INFO    ] 200
[2026-06-22 16:15:32,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:15:32,963.963 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:15:33,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:15:33,022.022 INFO    ] No camera update needed
[2026-06-22 16:15:33,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:15:33,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:15:33,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:15:33,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:15:35,085.085 INFO    ] ================================================
[2026-06-22 16:15:35,101.101 INFO    ] Launching Daemon at Mon Jun 22 16:15:35 IST 2026
[2026-06-22 16:15:35,113.113 INFO    ] ================================================
[2026-06-22 16:15:35,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:15:35
[2026-06-22 16:15:36,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:15:36,607.607 INFO    ] Initializing speech engine...
[2026-06-22 16:15:36,612.612 INFO    ] 2026-06-22 16:15:36
[2026-06-22 16:15:36,872.872 INFO    ] 2026-06-22 16:15:36
[2026-06-22 16:15:36,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:15:37,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:15:37,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:15:37,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:15:37,320.320 INFO    ] time= 22/06/2026 16:15:37
[2026-06-22 16:15:37,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:15:37,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:15:37,563.563 INFO    ] No existing commands found in stream
[2026-06-22 16:15:42,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:15:42,591.591 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-22 16:15:44,835.835 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:15:44,836.836 INFO    ] Checking for system updates...
[2026-06-22 16:15:44,859.859 INFO    ] 200
[2026-06-22 16:15:44,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:15:44,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:15:44,895.895 INFO    ] No update needed
[2026-06-22 16:15:44,896.896 INFO    ] Checking for camera pi updates...
[2026-06-22 16:15:44,918.918 INFO    ] 200
[2026-06-22 16:15:44,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:15:44,952.952 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:15:45,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:15:45,038.038 INFO    ] No camera update needed
[2026-06-22 16:15:45,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:15:45,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:15:45,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:15:45,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:15:47,097.097 INFO    ] ================================================
[2026-06-22 16:15:47,114.114 INFO    ] Launching Daemon at Mon Jun 22 16:15:47 IST 2026
[2026-06-22 16:15:47,127.127 INFO    ] ================================================
[2026-06-22 16:15:47,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:15:47
[2026-06-22 16:15:48,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:15:48,595.595 INFO    ] Initializing speech engine...
[2026-06-22 16:15:48,611.611 INFO    ] 2026-06-22 16:15:48
[2026-06-22 16:15:48,902.902 INFO    ] 2026-06-22 16:15:48
[2026-06-22 16:15:48,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:15:49,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:15:49,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:15:49,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:15:49,470.470 INFO    ] time= 22/06/2026 16:15:49
[2026-06-22 16:15:49,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:15:49,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:15:49,631.631 INFO    ] No existing commands found in stream
[2026-06-22 16:15:54,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:15:54,645.645 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-22 16:15:57,793.793 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:15:57,796.796 INFO    ] Checking for system updates...
[2026-06-22 16:15:57,833.833 INFO    ] 200
[2026-06-22 16:15:57,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:15:57,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:15:57,891.891 INFO    ] No update needed
[2026-06-22 16:15:57,893.893 INFO    ] Checking for camera pi updates...
[2026-06-22 16:15:57,927.927 INFO    ] 200
[2026-06-22 16:15:57,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:15:57,970.970 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:15:58,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:15:58,072.072 INFO    ] No camera update needed
[2026-06-22 16:15:58,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:15:58,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:15:58,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:15:58,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:16:00,128.128 INFO    ] ================================================
[2026-06-22 16:16:00,143.143 INFO    ] Launching Daemon at Mon Jun 22 16:16:00 IST 2026
[2026-06-22 16:16:00,155.155 INFO    ] ================================================
[2026-06-22 16:16:00,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:16:00
[2026-06-22 16:16:01,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:16:01,737.737 INFO    ] Initializing speech engine...
[2026-06-22 16:16:01,747.747 INFO    ] 2026-06-22 16:16:01
[2026-06-22 16:16:02,049.049 INFO    ] 2026-06-22 16:16:02
[2026-06-22 16:16:02,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:16:02,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:16:02,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:16:02,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:16:02,600.600 INFO    ] time= 22/06/2026 16:16:02
[2026-06-22 16:16:02,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:16:02,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:16:02,743.743 INFO    ] No existing commands found in stream
[2026-06-22 16:16:07,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:16:07,759.759 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-22 16:16:10,958.958 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:16:10,959.959 INFO    ] Checking for system updates...
[2026-06-22 16:16:10,992.992 INFO    ] 200
[2026-06-22 16:16:10,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:16:11,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:16:11,052.052 INFO    ] No update needed
[2026-06-22 16:16:11,055.055 INFO    ] Checking for camera pi updates...
[2026-06-22 16:16:11,090.090 INFO    ] 200
[2026-06-22 16:16:11,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:16:11,133.133 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:16:11,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:16:11,221.221 INFO    ] No camera update needed
[2026-06-22 16:16:11,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:16:11,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:16:11,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:16:11,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:16:13,276.276 INFO    ] ================================================
[2026-06-22 16:16:13,292.292 INFO    ] Launching Daemon at Mon Jun 22 16:16:13 IST 2026
[2026-06-22 16:16:13,303.303 INFO    ] ================================================
[2026-06-22 16:16:13,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:16:13
[2026-06-22 16:16:14,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:16:14,636.636 INFO    ] Initializing speech engine...
[2026-06-22 16:16:14,655.655 INFO    ] 2026-06-22 16:16:14
[2026-06-22 16:16:14,902.902 INFO    ] 2026-06-22 16:16:14
[2026-06-22 16:16:14,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:16:15,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:16:15,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:16:15,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:16:15,388.388 INFO    ] time= 22/06/2026 16:16:15
[2026-06-22 16:16:15,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:16:15,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:16:15,624.624 INFO    ] No existing commands found in stream
[2026-06-22 16:16:20,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:16:20,642.642 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-22 16:16:22,612.612 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:16:22,613.613 INFO    ] Checking for system updates...
[2026-06-22 16:16:22,635.635 INFO    ] 200
[2026-06-22 16:16:22,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:16:22,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:16:22,670.670 INFO    ] No update needed
[2026-06-22 16:16:22,673.673 INFO    ] Checking for camera pi updates...
[2026-06-22 16:16:22,710.710 INFO    ] 200
[2026-06-22 16:16:22,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:16:22,758.758 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:16:22,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:16:22,926.926 INFO    ] No camera update needed
[2026-06-22 16:16:22,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:16:22,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:16:22,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:16:22,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:16:24,983.983 INFO    ] ================================================
[2026-06-22 16:16:25,998.998 INFO    ] Launching Daemon at Mon Jun 22 16:16:24 IST 2026
[2026-06-22 16:16:25,010.010 INFO    ] ================================================
[2026-06-22 16:16:25,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:16:25
[2026-06-22 16:16:26,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:16:26,517.517 INFO    ] Initializing speech engine...
[2026-06-22 16:16:26,530.530 INFO    ] 2026-06-22 16:16:26
[2026-06-22 16:16:26,814.814 INFO    ] 2026-06-22 16:16:26
[2026-06-22 16:16:26,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:16:27,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:16:27,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:16:27,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:16:27,353.353 INFO    ] time= 22/06/2026 16:16:27
[2026-06-22 16:16:27,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:16:27,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:16:27,505.505 INFO    ] No existing commands found in stream
[2026-06-22 16:16:32,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:16:32,520.520 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-22 16:16:35,361.361 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:16:35,364.364 INFO    ] Checking for system updates...
[2026-06-22 16:16:35,401.401 INFO    ] 200
[2026-06-22 16:16:35,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:16:35,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:16:35,468.468 INFO    ] No update needed
[2026-06-22 16:16:35,470.470 INFO    ] Checking for camera pi updates...
[2026-06-22 16:16:35,505.505 INFO    ] 200
[2026-06-22 16:16:35,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:16:35,549.549 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:16:35,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:16:35,633.633 INFO    ] No camera update needed
[2026-06-22 16:16:35,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:16:35,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:16:35,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:16:35,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:16:37,693.693 INFO    ] ================================================
[2026-06-22 16:16:37,709.709 INFO    ] Launching Daemon at Mon Jun 22 16:16:37 IST 2026
[2026-06-22 16:16:37,720.720 INFO    ] ================================================
[2026-06-22 16:16:38,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:16:38
[2026-06-22 16:16:38,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:16:39,052.052 INFO    ] Initializing speech engine...
[2026-06-22 16:16:39,071.071 INFO    ] 2026-06-22 16:16:39
[2026-06-22 16:16:39,354.354 INFO    ] 2026-06-22 16:16:39
[2026-06-22 16:16:39,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:16:39,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:16:39,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:16:39,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:16:39,763.763 INFO    ] time= 22/06/2026 16:16:39
[2026-06-22 16:16:39,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:16:39,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:16:39,850.850 INFO    ] No existing commands found in stream
[2026-06-22 16:16:44,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:16:44,886.886 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-22 16:16:49,187.187 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:16:49,190.190 INFO    ] Checking for system updates...
[2026-06-22 16:16:49,227.227 INFO    ] 200
[2026-06-22 16:16:49,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:16:49,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:16:49,283.283 INFO    ] No update needed
[2026-06-22 16:16:49,286.286 INFO    ] Checking for camera pi updates...
[2026-06-22 16:16:49,319.319 INFO    ] 200
[2026-06-22 16:16:49,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:16:49,362.362 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:16:49,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:16:49,444.444 INFO    ] No camera update needed
[2026-06-22 16:16:49,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:16:49,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:16:49,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:16:49,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:16:51,500.500 INFO    ] ================================================
[2026-06-22 16:16:51,516.516 INFO    ] Launching Daemon at Mon Jun 22 16:16:51 IST 2026
[2026-06-22 16:16:51,527.527 INFO    ] ================================================
[2026-06-22 16:16:52,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:16:52
[2026-06-22 16:16:52,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:16:52,948.948 INFO    ] Initializing speech engine...
[2026-06-22 16:16:52,956.956 INFO    ] 2026-06-22 16:16:52
[2026-06-22 16:16:53,218.218 INFO    ] 2026-06-22 16:16:53
[2026-06-22 16:16:53,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:16:53,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:16:53,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:16:53,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:16:53,675.675 INFO    ] time= 22/06/2026 16:16:53
[2026-06-22 16:16:53,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:16:53,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:16:53,896.896 INFO    ] No existing commands found in stream
[2026-06-22 16:16:58,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:16:58,931.931 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-22 16:17:03,185.185 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:17:03,188.188 INFO    ] Checking for system updates...
[2026-06-22 16:17:03,227.227 INFO    ] 200
[2026-06-22 16:17:03,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:17:03,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:17:03,292.292 INFO    ] No update needed
[2026-06-22 16:17:03,295.295 INFO    ] Checking for camera pi updates...
[2026-06-22 16:17:03,328.328 INFO    ] 200
[2026-06-22 16:17:03,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:17:03,371.371 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:17:03,430.430 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:17:03,433.433 INFO    ] No camera update needed
[2026-06-22 16:17:03,435.435 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:17:03,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:17:03,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:17:03,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:17:05,489.489 INFO    ] ================================================
[2026-06-22 16:17:05,504.504 INFO    ] Launching Daemon at Mon Jun 22 16:17:05 IST 2026
[2026-06-22 16:17:05,515.515 INFO    ] ================================================
[2026-06-22 16:17:06,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:17:06
[2026-06-22 16:17:06,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:17:06,977.977 INFO    ] Initializing speech engine...
[2026-06-22 16:17:06,983.983 INFO    ] 2026-06-22 16:17:06
[2026-06-22 16:17:07,278.278 INFO    ] 2026-06-22 16:17:07
[2026-06-22 16:17:07,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:17:07,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:17:07,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:17:07,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:17:07,784.784 INFO    ] time= 22/06/2026 16:17:07
[2026-06-22 16:17:07,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:17:07,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:17:08,044.044 INFO    ] No existing commands found in stream
[2026-06-22 16:17:13,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:17:13,068.068 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-22 16:17:14,660.660 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:17:14,663.663 INFO    ] Checking for system updates...
[2026-06-22 16:17:14,700.700 INFO    ] 200
[2026-06-22 16:17:14,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:17:14,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:17:14,761.761 INFO    ] No update needed
[2026-06-22 16:17:14,764.764 INFO    ] Checking for camera pi updates...
[2026-06-22 16:17:14,803.803 INFO    ] 200
[2026-06-22 16:17:14,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:17:14,846.846 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:17:14,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:17:14,938.938 INFO    ] No camera update needed
[2026-06-22 16:17:14,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:17:14,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:17:14,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:17:14,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:17:17,994.994 INFO    ] ================================================
[2026-06-22 16:17:17,010.010 INFO    ] Launching Daemon at Mon Jun 22 16:17:17 IST 2026
[2026-06-22 16:17:17,021.021 INFO    ] ================================================
[2026-06-22 16:17:17,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:17:17
[2026-06-22 16:17:18,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:17:18,391.391 INFO    ] Initializing speech engine...
[2026-06-22 16:17:18,401.401 INFO    ] 2026-06-22 16:17:18
[2026-06-22 16:17:18,650.650 INFO    ] 2026-06-22 16:17:18
[2026-06-22 16:17:18,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:17:18,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:17:18,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:17:19,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:17:19,205.205 INFO    ] time= 22/06/2026 16:17:19
[2026-06-22 16:17:19,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:17:19,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:17:19,364.364 INFO    ] No existing commands found in stream
[2026-06-22 16:17:24,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:17:24,382.382 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-22 16:17:26,690.690 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:17:26,693.693 INFO    ] Checking for system updates...
[2026-06-22 16:17:26,729.729 INFO    ] 200
[2026-06-22 16:17:26,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:17:26,790.790 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:17:26,792.792 INFO    ] No update needed
[2026-06-22 16:17:26,795.795 INFO    ] Checking for camera pi updates...
[2026-06-22 16:17:26,829.829 INFO    ] 200
[2026-06-22 16:17:26,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:17:26,886.886 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:17:27,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:17:27,021.021 INFO    ] No camera update needed
[2026-06-22 16:17:27,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:17:27,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:17:27,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:17:27,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:17:29,079.079 INFO    ] ================================================
[2026-06-22 16:17:29,095.095 INFO    ] Launching Daemon at Mon Jun 22 16:17:29 IST 2026
[2026-06-22 16:17:29,105.105 INFO    ] ================================================
[2026-06-22 16:17:29,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:17:29
[2026-06-22 16:17:30,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:17:30,437.437 INFO    ] Initializing speech engine...
[2026-06-22 16:17:30,443.443 INFO    ] 2026-06-22 16:17:30
[2026-06-22 16:17:30,737.737 INFO    ] 2026-06-22 16:17:30
[2026-06-22 16:17:30,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:17:30,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:17:31,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:17:31,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:17:31,153.153 INFO    ] time= 22/06/2026 16:17:31
[2026-06-22 16:17:31,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:17:31,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:17:31,325.325 INFO    ] No existing commands found in stream
[2026-06-22 16:17:36,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:17:36,353.353 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-22 16:17:38,141.141 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:17:38,143.143 INFO    ] Checking for system updates...
[2026-06-22 16:17:38,163.163 INFO    ] 200
[2026-06-22 16:17:38,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:17:38,197.197 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:17:38,198.198 INFO    ] No update needed
[2026-06-22 16:17:38,200.200 INFO    ] Checking for camera pi updates...
[2026-06-22 16:17:38,220.220 INFO    ] 200
[2026-06-22 16:17:38,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:17:38,248.248 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:17:38,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:17:38,314.314 INFO    ] No camera update needed
[2026-06-22 16:17:38,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:17:38,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:17:38,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:17:38,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:17:40,371.371 INFO    ] ================================================
[2026-06-22 16:17:40,387.387 INFO    ] Launching Daemon at Mon Jun 22 16:17:40 IST 2026
[2026-06-22 16:17:40,398.398 INFO    ] ================================================
[2026-06-22 16:17:40,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:17:40
[2026-06-22 16:17:41,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:17:41,750.750 INFO    ] Initializing speech engine...
[2026-06-22 16:17:41,759.759 INFO    ] 2026-06-22 16:17:41
[2026-06-22 16:17:42,053.053 INFO    ] 2026-06-22 16:17:42
[2026-06-22 16:17:42,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:17:42,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:17:42,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:17:42,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:17:42,675.675 INFO    ] time= 22/06/2026 16:17:42
[2026-06-22 16:17:42,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:17:42,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:17:42,825.825 INFO    ] No existing commands found in stream
[2026-06-22 16:17:47,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:17:47,860.860 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-22 16:17:50,886.886 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:17:50,889.889 INFO    ] Checking for system updates...
[2026-06-22 16:17:50,925.925 INFO    ] 200
[2026-06-22 16:17:50,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:17:50,981.981 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:17:50,983.983 INFO    ] No update needed
[2026-06-22 16:17:50,986.986 INFO    ] Checking for camera pi updates...
[2026-06-22 16:17:51,020.020 INFO    ] 200
[2026-06-22 16:17:51,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:17:51,067.067 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:17:51,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:17:51,118.118 INFO    ] No camera update needed
[2026-06-22 16:17:51,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:17:51,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:17:51,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:17:51,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:17:53,174.174 INFO    ] ================================================
[2026-06-22 16:17:53,190.190 INFO    ] Launching Daemon at Mon Jun 22 16:17:53 IST 2026
[2026-06-22 16:17:53,201.201 INFO    ] ================================================
[2026-06-22 16:17:53,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:17:53
[2026-06-22 16:17:54,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:17:54,557.557 INFO    ] Initializing speech engine...
[2026-06-22 16:17:54,570.570 INFO    ] 2026-06-22 16:17:54
[2026-06-22 16:17:54,820.820 INFO    ] 2026-06-22 16:17:54
[2026-06-22 16:17:54,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:17:55,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:17:55,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:17:55,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:17:55,313.313 INFO    ] time= 22/06/2026 16:17:55
[2026-06-22 16:17:55,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:17:55,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:17:55,529.529 INFO    ] No existing commands found in stream
[2026-06-22 16:18:00,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:18:00,548.548 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-22 16:18:01,035.035 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:18:01,038.038 INFO    ] Checking for system updates...
[2026-06-22 16:18:01,075.075 INFO    ] 200
[2026-06-22 16:18:01,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:18:01,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:18:01,132.132 INFO    ] No update needed
[2026-06-22 16:18:01,134.134 INFO    ] Checking for camera pi updates...
[2026-06-22 16:18:01,168.168 INFO    ] 200
[2026-06-22 16:18:01,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:18:01,235.235 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:18:01,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:18:01,329.329 INFO    ] No camera update needed
[2026-06-22 16:18:01,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:18:01,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:18:01,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:18:01,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:18:03,402.402 INFO    ] ================================================
[2026-06-22 16:18:03,417.417 INFO    ] Launching Daemon at Mon Jun 22 16:18:03 IST 2026
[2026-06-22 16:18:03,428.428 INFO    ] ================================================
[2026-06-22 16:18:03,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:18:03
[2026-06-22 16:18:04,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:18:04,845.845 INFO    ] Initializing speech engine...
[2026-06-22 16:18:04,860.860 INFO    ] 2026-06-22 16:18:04
[2026-06-22 16:18:05,126.126 INFO    ] 2026-06-22 16:18:05
[2026-06-22 16:18:05,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:18:05,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:18:05,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:18:05,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:18:05,552.552 INFO    ] time= 22/06/2026 16:18:05
[2026-06-22 16:18:05,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:18:05,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:18:05,711.711 INFO    ] No existing commands found in stream
[2026-06-22 16:18:10,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:18:10,724.724 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-22 16:18:13,670.670 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:18:13,672.672 INFO    ] Checking for system updates...
[2026-06-22 16:18:13,727.727 INFO    ] 200
[2026-06-22 16:18:13,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:18:13,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:18:13,790.790 INFO    ] No update needed
[2026-06-22 16:18:13,794.794 INFO    ] Checking for camera pi updates...
[2026-06-22 16:18:13,830.830 INFO    ] 200
[2026-06-22 16:18:13,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:18:13,876.876 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:18:13,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:18:13,960.960 INFO    ] No camera update needed
[2026-06-22 16:18:13,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:18:13,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:18:13,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:18:13,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:18:16,019.019 INFO    ] ================================================
[2026-06-22 16:18:16,037.037 INFO    ] Launching Daemon at Mon Jun 22 16:18:16 IST 2026
[2026-06-22 16:18:16,049.049 INFO    ] ================================================
[2026-06-22 16:18:16,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:18:16
[2026-06-22 16:18:17,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:18:17,646.646 INFO    ] Initializing speech engine...
[2026-06-22 16:18:17,655.655 INFO    ] 2026-06-22 16:18:17
[2026-06-22 16:18:17,950.950 INFO    ] 2026-06-22 16:18:17
[2026-06-22 16:18:17,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:18:18,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:18:18,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:18:18,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:18:18,374.374 INFO    ] time= 22/06/2026 16:18:18
[2026-06-22 16:18:18,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:18:18,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:18:18,539.539 INFO    ] No existing commands found in stream
[2026-06-22 16:18:23,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:18:23,561.561 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-22 16:18:24,078.078 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:18:24,081.081 INFO    ] Checking for system updates...
[2026-06-22 16:18:24,117.117 INFO    ] 200
[2026-06-22 16:18:24,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:18:24,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:18:24,174.174 INFO    ] No update needed
[2026-06-22 16:18:24,177.177 INFO    ] Checking for camera pi updates...
[2026-06-22 16:18:24,210.210 INFO    ] 200
[2026-06-22 16:18:24,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:18:24,256.256 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:18:24,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:18:24,461.461 INFO    ] No camera update needed
[2026-06-22 16:18:24,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:18:24,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:18:24,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:18:24,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:18:26,517.517 INFO    ] ================================================
[2026-06-22 16:18:26,533.533 INFO    ] Launching Daemon at Mon Jun 22 16:18:26 IST 2026
[2026-06-22 16:18:26,544.544 INFO    ] ================================================
[2026-06-22 16:18:27,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:18:27
[2026-06-22 16:18:27,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:18:27,964.964 INFO    ] Initializing speech engine...
[2026-06-22 16:18:27,973.973 INFO    ] 2026-06-22 16:18:27
[2026-06-22 16:18:28,269.269 INFO    ] 2026-06-22 16:18:28
[2026-06-22 16:18:28,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:18:28,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:18:28,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:18:28,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:18:28,693.693 INFO    ] time= 22/06/2026 16:18:28
[2026-06-22 16:18:28,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:18:28,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:18:28,781.781 INFO    ] No existing commands found in stream
[2026-06-22 16:18:33,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:18:33,813.813 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-22 16:18:37,674.674 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:18:37,677.677 INFO    ] Checking for system updates...
[2026-06-22 16:18:37,716.716 INFO    ] 200
[2026-06-22 16:18:37,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:18:37,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:18:37,775.775 INFO    ] No update needed
[2026-06-22 16:18:37,778.778 INFO    ] Checking for camera pi updates...
[2026-06-22 16:18:37,811.811 INFO    ] 200
[2026-06-22 16:18:37,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:18:37,854.854 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:18:37,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:18:37,934.934 INFO    ] No camera update needed
[2026-06-22 16:18:37,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:18:37,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:18:37,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:18:37,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:18:39,992.992 INFO    ] ================================================
[2026-06-22 16:18:40,007.007 INFO    ] Launching Daemon at Mon Jun 22 16:18:40 IST 2026
[2026-06-22 16:18:40,018.018 INFO    ] ================================================
[2026-06-22 16:18:40,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:18:40
[2026-06-22 16:18:41,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:18:41,355.355 INFO    ] Initializing speech engine...
[2026-06-22 16:18:41,377.377 INFO    ] 2026-06-22 16:18:41
[2026-06-22 16:18:41,631.631 INFO    ] 2026-06-22 16:18:41
[2026-06-22 16:18:41,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:18:41,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:18:41,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:18:42,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:18:42,130.130 INFO    ] time= 22/06/2026 16:18:42
[2026-06-22 16:18:42,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:18:42,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:18:42,348.348 INFO    ] No existing commands found in stream
[2026-06-22 16:18:47,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:18:47,373.373 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-22 16:18:51,089.089 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:18:51,092.092 INFO    ] Checking for system updates...
[2026-06-22 16:18:51,129.129 INFO    ] 200
[2026-06-22 16:18:51,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:18:51,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:18:51,189.189 INFO    ] No update needed
[2026-06-22 16:18:51,191.191 INFO    ] Checking for camera pi updates...
[2026-06-22 16:18:51,229.229 INFO    ] 200
[2026-06-22 16:18:51,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:18:51,272.272 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:18:51,355.355 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:18:51,358.358 INFO    ] No camera update needed
[2026-06-22 16:18:51,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:18:51,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:18:51,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:18:51,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:18:53,417.417 INFO    ] ================================================
[2026-06-22 16:18:53,432.432 INFO    ] Launching Daemon at Mon Jun 22 16:18:53 IST 2026
[2026-06-22 16:18:53,444.444 INFO    ] ================================================
[2026-06-22 16:18:54,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:18:53
[2026-06-22 16:18:54,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:18:54,982.982 INFO    ] Initializing speech engine...
[2026-06-22 16:18:54,996.996 INFO    ] 2026-06-22 16:18:54
[2026-06-22 16:18:55,311.311 INFO    ] 2026-06-22 16:18:55
[2026-06-22 16:18:55,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:18:55,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:18:55,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:18:55,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:18:56,040.040 INFO    ] time= 22/06/2026 16:18:55
[2026-06-22 16:18:56,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:18:56,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:18:56,297.297 INFO    ] No existing commands found in stream
[2026-06-22 16:19:01,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:19:01,312.312 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-22 16:19:05,059.059 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:19:05,062.062 INFO    ] Checking for system updates...
[2026-06-22 16:19:05,100.100 INFO    ] 200
[2026-06-22 16:19:05,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:19:05,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:19:05,160.160 INFO    ] No update needed
[2026-06-22 16:19:05,163.163 INFO    ] Checking for camera pi updates...
[2026-06-22 16:19:05,197.197 INFO    ] 200
[2026-06-22 16:19:05,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:19:05,241.241 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:19:05,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:19:05,326.326 INFO    ] No camera update needed
[2026-06-22 16:19:05,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:19:05,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:19:05,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:19:05,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:19:07,382.382 INFO    ] ================================================
[2026-06-22 16:19:07,399.399 INFO    ] Launching Daemon at Mon Jun 22 16:19:07 IST 2026
[2026-06-22 16:19:07,410.410 INFO    ] ================================================
[2026-06-22 16:19:07,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:19:07
[2026-06-22 16:19:08,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:19:08,747.747 INFO    ] Initializing speech engine...
[2026-06-22 16:19:08,756.756 INFO    ] 2026-06-22 16:19:08
[2026-06-22 16:19:09,050.050 INFO    ] 2026-06-22 16:19:09
[2026-06-22 16:19:09,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:19:09,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:19:09,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:19:09,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:19:09,549.549 INFO    ] time= 22/06/2026 16:19:09
[2026-06-22 16:19:09,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:19:09,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:19:09,824.824 INFO    ] No existing commands found in stream
[2026-06-22 16:19:14,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:19:14,850.850 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-22 16:19:16,074.074 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:19:16,077.077 INFO    ] Checking for system updates...
[2026-06-22 16:19:16,121.121 INFO    ] 200
[2026-06-22 16:19:16,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:19:16,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:19:16,184.184 INFO    ] No update needed
[2026-06-22 16:19:16,187.187 INFO    ] Checking for camera pi updates...
[2026-06-22 16:19:16,222.222 INFO    ] 200
[2026-06-22 16:19:16,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:19:16,270.270 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:19:16,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:19:16,356.356 INFO    ] No camera update needed
[2026-06-22 16:19:16,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:19:16,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:19:16,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:19:16,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:19:18,416.416 INFO    ] ================================================
[2026-06-22 16:19:18,431.431 INFO    ] Launching Daemon at Mon Jun 22 16:19:18 IST 2026
[2026-06-22 16:19:18,443.443 INFO    ] ================================================
[2026-06-22 16:19:19,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:19:19
[2026-06-22 16:19:19,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:19:19,948.948 INFO    ] Initializing speech engine...
[2026-06-22 16:19:19,954.954 INFO    ] 2026-06-22 16:19:19
[2026-06-22 16:19:20,221.221 INFO    ] 2026-06-22 16:19:20
[2026-06-22 16:19:20,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:19:20,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:19:20,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:19:20,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:19:20,612.612 INFO    ] time= 22/06/2026 16:19:20
[2026-06-22 16:19:20,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:19:20,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:19:20,697.697 INFO    ] No existing commands found in stream
[2026-06-22 16:19:25,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:19:25,710.710 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-22 16:19:26,144.144 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:19:26,147.147 INFO    ] Checking for system updates...
[2026-06-22 16:19:26,183.183 INFO    ] 200
[2026-06-22 16:19:26,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:19:26,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:19:26,248.248 INFO    ] No update needed
[2026-06-22 16:19:26,250.250 INFO    ] Checking for camera pi updates...
[2026-06-22 16:19:26,285.285 INFO    ] 200
[2026-06-22 16:19:26,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:19:26,333.333 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:19:26,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:19:26,439.439 INFO    ] No camera update needed
[2026-06-22 16:19:26,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:19:26,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:19:26,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:19:26,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:19:28,497.497 INFO    ] ================================================
[2026-06-22 16:19:28,513.513 INFO    ] Launching Daemon at Mon Jun 22 16:19:28 IST 2026
[2026-06-22 16:19:28,524.524 INFO    ] ================================================
[2026-06-22 16:19:29,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:19:29
[2026-06-22 16:19:29,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:19:29,949.949 INFO    ] Initializing speech engine...
[2026-06-22 16:19:29,958.958 INFO    ] 2026-06-22 16:19:29
[2026-06-22 16:19:30,205.205 INFO    ] 2026-06-22 16:19:30
[2026-06-22 16:19:30,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:19:30,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:19:30,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:19:30,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:19:30,790.790 INFO    ] time= 22/06/2026 16:19:30
[2026-06-22 16:19:30,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:19:30,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:19:30,964.964 INFO    ] No existing commands found in stream
[2026-06-22 16:19:35,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:19:35,983.983 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-22 16:19:36,695.695 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:19:36,698.698 INFO    ] Checking for system updates...
[2026-06-22 16:19:36,738.738 INFO    ] 200
[2026-06-22 16:19:36,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:19:36,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:19:36,796.796 INFO    ] No update needed
[2026-06-22 16:19:36,799.799 INFO    ] Checking for camera pi updates...
[2026-06-22 16:19:36,833.833 INFO    ] 200
[2026-06-22 16:19:36,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:19:36,876.876 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:19:36,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:19:36,959.959 INFO    ] No camera update needed
[2026-06-22 16:19:36,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:19:36,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:19:36,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:19:36,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:19:39,016.016 INFO    ] ================================================
[2026-06-22 16:19:39,032.032 INFO    ] Launching Daemon at Mon Jun 22 16:19:39 IST 2026
[2026-06-22 16:19:39,043.043 INFO    ] ================================================
[2026-06-22 16:19:39,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:19:39
[2026-06-22 16:19:40,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:19:40,527.527 INFO    ] Initializing speech engine...
[2026-06-22 16:19:40,540.540 INFO    ] 2026-06-22 16:19:40
[2026-06-22 16:19:40,822.822 INFO    ] 2026-06-22 16:19:40
[2026-06-22 16:19:40,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:19:41,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:19:41,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:19:41,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:19:41,312.312 INFO    ] time= 22/06/2026 16:19:41
[2026-06-22 16:19:41,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:19:41,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:19:41,486.486 INFO    ] No existing commands found in stream
[2026-06-22 16:19:46,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:19:46,500.500 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-22 16:19:48,783.783 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:19:48,786.786 INFO    ] Checking for system updates...
[2026-06-22 16:19:48,826.826 INFO    ] 200
[2026-06-22 16:19:48,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:19:48,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:19:48,890.890 INFO    ] No update needed
[2026-06-22 16:19:48,893.893 INFO    ] Checking for camera pi updates...
[2026-06-22 16:19:48,926.926 INFO    ] 200
[2026-06-22 16:19:48,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:19:48,972.972 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:19:49,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:19:49,074.074 INFO    ] No camera update needed
[2026-06-22 16:19:49,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:19:49,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:19:49,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:19:49,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:19:51,129.129 INFO    ] ================================================
[2026-06-22 16:19:51,145.145 INFO    ] Launching Daemon at Mon Jun 22 16:19:51 IST 2026
[2026-06-22 16:19:51,157.157 INFO    ] ================================================
[2026-06-22 16:19:51,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:19:51
[2026-06-22 16:19:52,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:19:52,805.805 INFO    ] Initializing speech engine...
[2026-06-22 16:19:52,813.813 INFO    ] 2026-06-22 16:19:52
[2026-06-22 16:19:53,065.065 INFO    ] 2026-06-22 16:19:53
[2026-06-22 16:19:53,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:19:53,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:19:53,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:19:53,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:19:53,594.594 INFO    ] time= 22/06/2026 16:19:53
[2026-06-22 16:19:53,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:19:53,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:19:53,795.795 INFO    ] No existing commands found in stream
[2026-06-22 16:19:58,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:19:58,828.828 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-22 16:20:01,669.669 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:20:01,671.671 INFO    ] Checking for system updates...
[2026-06-22 16:20:01,712.712 INFO    ] 200
[2026-06-22 16:20:01,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:20:01,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:20:01,770.770 INFO    ] No update needed
[2026-06-22 16:20:01,773.773 INFO    ] Checking for camera pi updates...
[2026-06-22 16:20:01,810.810 INFO    ] 200
[2026-06-22 16:20:01,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:20:01,853.853 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:20:02,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:20:02,046.046 INFO    ] No camera update needed
[2026-06-22 16:20:02,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:20:02,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:20:02,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:20:02,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:20:04,190.190 INFO    ] ================================================
[2026-06-22 16:20:04,206.206 INFO    ] Launching Daemon at Mon Jun 22 16:20:04 IST 2026
[2026-06-22 16:20:04,216.216 INFO    ] ================================================
[2026-06-22 16:20:04,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:20:04
[2026-06-22 16:20:05,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:20:05,926.926 INFO    ] Initializing speech engine...
[2026-06-22 16:20:05,933.933 INFO    ] 2026-06-22 16:20:05
[2026-06-22 16:20:06,247.247 INFO    ] 2026-06-22 16:20:06
[2026-06-22 16:20:06,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:20:06,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:20:06,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:20:06,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:20:06,758.758 INFO    ] time= 22/06/2026 16:20:06
[2026-06-22 16:20:06,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:20:06,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:20:06,928.928 INFO    ] No existing commands found in stream
[2026-06-22 16:20:11,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:20:11,963.963 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-22 16:20:15,695.695 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:20:15,696.696 INFO    ] Checking for system updates...
[2026-06-22 16:20:15,717.717 INFO    ] 200
[2026-06-22 16:20:15,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:20:15,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:20:15,769.769 INFO    ] No update needed
[2026-06-22 16:20:15,772.772 INFO    ] Checking for camera pi updates...
[2026-06-22 16:20:15,811.811 INFO    ] 200
[2026-06-22 16:20:15,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:20:15,868.868 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:20:15,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:20:15,941.941 INFO    ] No camera update needed
[2026-06-22 16:20:15,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:20:15,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:20:15,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:20:15,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:20:18,001.001 INFO    ] ================================================
[2026-06-22 16:20:18,016.016 INFO    ] Launching Daemon at Mon Jun 22 16:20:18 IST 2026
[2026-06-22 16:20:18,027.027 INFO    ] ================================================
[2026-06-22 16:20:18,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:20:18
[2026-06-22 16:20:19,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:20:19,365.365 INFO    ] Initializing speech engine...
[2026-06-22 16:20:19,378.378 INFO    ] 2026-06-22 16:20:19
[2026-06-22 16:20:19,628.628 INFO    ] 2026-06-22 16:20:19
[2026-06-22 16:20:19,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:20:19,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:20:19,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:20:20,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:20:20,113.113 INFO    ] time= 22/06/2026 16:20:20
[2026-06-22 16:20:20,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:20:20,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:20:20,331.331 INFO    ] No existing commands found in stream
[2026-06-22 16:20:25,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:20:25,364.364 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-22 16:20:26,992.992 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:20:26,995.995 INFO    ] Checking for system updates...
[2026-06-22 16:20:27,035.035 INFO    ] 200
[2026-06-22 16:20:27,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:20:27,091.091 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:20:27,094.094 INFO    ] No update needed
[2026-06-22 16:20:27,097.097 INFO    ] Checking for camera pi updates...
[2026-06-22 16:20:27,135.135 INFO    ] 200
[2026-06-22 16:20:27,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:20:27,184.184 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:20:27,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:20:27,340.340 INFO    ] No camera update needed
[2026-06-22 16:20:27,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:20:27,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:20:27,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:20:27,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:20:29,395.395 INFO    ] ================================================
[2026-06-22 16:20:29,410.410 INFO    ] Launching Daemon at Mon Jun 22 16:20:29 IST 2026
[2026-06-22 16:20:29,421.421 INFO    ] ================================================
[2026-06-22 16:20:30,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:20:30
[2026-06-22 16:20:30,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:20:30,895.895 INFO    ] Initializing speech engine...
[2026-06-22 16:20:30,902.902 INFO    ] 2026-06-22 16:20:30
[2026-06-22 16:20:31,150.150 INFO    ] 2026-06-22 16:20:31
[2026-06-22 16:20:31,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:20:31,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:20:31,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:20:31,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:20:31,648.648 INFO    ] time= 22/06/2026 16:20:31
[2026-06-22 16:20:31,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:20:31,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:20:31,841.841 INFO    ] No existing commands found in stream
[2026-06-22 16:20:36,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:20:36,870.870 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-22 16:20:41,002.002 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:20:41,005.005 INFO    ] Checking for system updates...
[2026-06-22 16:20:41,045.045 INFO    ] 200
[2026-06-22 16:20:41,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:20:41,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:20:41,104.104 INFO    ] No update needed
[2026-06-22 16:20:41,107.107 INFO    ] Checking for camera pi updates...
[2026-06-22 16:20:41,148.148 INFO    ] 200
[2026-06-22 16:20:41,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:20:41,192.192 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:20:41,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:20:41,266.266 INFO    ] No camera update needed
[2026-06-22 16:20:41,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:20:41,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:20:41,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:20:41,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:20:43,323.323 INFO    ] ================================================
[2026-06-22 16:20:43,338.338 INFO    ] Launching Daemon at Mon Jun 22 16:20:43 IST 2026
[2026-06-22 16:20:43,349.349 INFO    ] ================================================
[2026-06-22 16:20:43,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:20:43
[2026-06-22 16:20:44,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:20:44,692.692 INFO    ] Initializing speech engine...
[2026-06-22 16:20:44,715.715 INFO    ] 2026-06-22 16:20:44
[2026-06-22 16:20:44,970.970 INFO    ] 2026-06-22 16:20:44
[2026-06-22 16:20:45,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:20:45,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:20:45,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:20:45,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:20:45,526.526 INFO    ] time= 22/06/2026 16:20:45
[2026-06-22 16:20:45,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:20:45,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:20:45,675.675 INFO    ] No existing commands found in stream
[2026-06-22 16:20:50,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:20:50,696.696 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-22 16:20:53,499.499 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:20:53,501.501 INFO    ] Checking for system updates...
[2026-06-22 16:20:53,541.541 INFO    ] 200
[2026-06-22 16:20:53,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:20:53,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:20:53,599.599 INFO    ] No update needed
[2026-06-22 16:20:53,601.601 INFO    ] Checking for camera pi updates...
[2026-06-22 16:20:53,636.636 INFO    ] 200
[2026-06-22 16:20:53,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:20:53,691.691 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:20:53,748.748 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:20:53,750.750 INFO    ] No camera update needed
[2026-06-22 16:20:53,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:20:53,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:20:53,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:20:53,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:20:55,805.805 INFO    ] ================================================
[2026-06-22 16:20:55,820.820 INFO    ] Launching Daemon at Mon Jun 22 16:20:55 IST 2026
[2026-06-22 16:20:55,831.831 INFO    ] ================================================
[2026-06-22 16:20:56,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:20:56
[2026-06-22 16:20:56,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:20:57,173.173 INFO    ] Initializing speech engine...
[2026-06-22 16:20:57,182.182 INFO    ] 2026-06-22 16:20:57
[2026-06-22 16:20:57,436.436 INFO    ] 2026-06-22 16:20:57
[2026-06-22 16:20:57,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:20:57,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:20:57,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:20:57,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:20:57,953.953 INFO    ] time= 22/06/2026 16:20:57
[2026-06-22 16:20:58,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:20:58,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:20:58,154.154 INFO    ] No existing commands found in stream
[2026-06-22 16:21:03,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:21:03,179.179 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-22 16:21:03,999.999 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:21:04,001.001 INFO    ] Checking for system updates...
[2026-06-22 16:21:04,037.037 INFO    ] 200
[2026-06-22 16:21:04,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:21:04,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:21:04,101.101 INFO    ] No update needed
[2026-06-22 16:21:04,103.103 INFO    ] Checking for camera pi updates...
[2026-06-22 16:21:04,140.140 INFO    ] 200
[2026-06-22 16:21:04,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:21:04,187.187 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:21:04,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:21:04,290.290 INFO    ] No camera update needed
[2026-06-22 16:21:04,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:21:04,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:21:04,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:21:04,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:21:06,346.346 INFO    ] ================================================
[2026-06-22 16:21:06,361.361 INFO    ] Launching Daemon at Mon Jun 22 16:21:06 IST 2026
[2026-06-22 16:21:06,372.372 INFO    ] ================================================
[2026-06-22 16:21:06,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:21:06
[2026-06-22 16:21:07,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:21:07,965.965 INFO    ] Initializing speech engine...
[2026-06-22 16:21:07,972.972 INFO    ] 2026-06-22 16:21:07
[2026-06-22 16:21:08,245.245 INFO    ] 2026-06-22 16:21:08
[2026-06-22 16:21:08,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:21:08,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:21:08,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:21:08,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:21:08,746.746 INFO    ] time= 22/06/2026 16:21:08
[2026-06-22 16:21:08,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:21:08,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:21:08,907.907 INFO    ] No existing commands found in stream
[2026-06-22 16:21:13,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:21:13,946.946 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-22 16:21:14,450.450 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:21:14,452.452 INFO    ] Checking for system updates...
[2026-06-22 16:21:14,490.490 INFO    ] 200
[2026-06-22 16:21:14,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:21:14,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:21:14,560.560 INFO    ] No update needed
[2026-06-22 16:21:14,563.563 INFO    ] Checking for camera pi updates...
[2026-06-22 16:21:14,599.599 INFO    ] 200
[2026-06-22 16:21:14,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:21:14,643.643 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:21:14,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:21:14,716.716 INFO    ] No camera update needed
[2026-06-22 16:21:14,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:21:14,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:21:14,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:21:14,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:21:16,773.773 INFO    ] ================================================
[2026-06-22 16:21:16,788.788 INFO    ] Launching Daemon at Mon Jun 22 16:21:16 IST 2026
[2026-06-22 16:21:16,799.799 INFO    ] ================================================
[2026-06-22 16:21:17,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:21:17
[2026-06-22 16:21:17,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:21:18,273.273 INFO    ] Initializing speech engine...
[2026-06-22 16:21:18,280.280 INFO    ] 2026-06-22 16:21:18
[2026-06-22 16:21:18,560.560 INFO    ] 2026-06-22 16:21:18
[2026-06-22 16:21:18,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:21:18,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:21:18,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:21:19,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:21:19,096.096 INFO    ] time= 22/06/2026 16:21:19
[2026-06-22 16:21:19,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:21:19,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:21:19,260.260 INFO    ] No existing commands found in stream
[2026-06-22 16:21:24,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:21:24,289.289 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-22 16:21:27,280.280 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:21:27,283.283 INFO    ] Checking for system updates...
[2026-06-22 16:21:27,320.320 INFO    ] 200
[2026-06-22 16:21:27,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:21:27,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:21:27,379.379 INFO    ] No update needed
[2026-06-22 16:21:27,381.381 INFO    ] Checking for camera pi updates...
[2026-06-22 16:21:27,419.419 INFO    ] 200
[2026-06-22 16:21:27,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:21:27,466.466 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:21:27,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:21:27,556.556 INFO    ] No camera update needed
[2026-06-22 16:21:27,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:21:27,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:21:27,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:21:27,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:21:29,611.611 INFO    ] ================================================
[2026-06-22 16:21:29,626.626 INFO    ] Launching Daemon at Mon Jun 22 16:21:29 IST 2026
[2026-06-22 16:21:29,637.637 INFO    ] ================================================
[2026-06-22 16:21:30,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:21:30
[2026-06-22 16:21:30,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:21:31,060.060 INFO    ] Initializing speech engine...
[2026-06-22 16:21:31,069.069 INFO    ] 2026-06-22 16:21:31
[2026-06-22 16:21:31,315.315 INFO    ] 2026-06-22 16:21:31
[2026-06-22 16:21:31,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:21:31,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:21:31,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:21:31,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:21:31,710.710 INFO    ] time= 22/06/2026 16:21:31
[2026-06-22 16:21:31,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:21:31,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:21:31,899.899 INFO    ] No existing commands found in stream
[2026-06-22 16:21:36,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:21:36,926.926 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-22 16:21:40,960.960 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:21:40,962.962 INFO    ] Checking for system updates...
[2026-06-22 16:21:41,000.000 INFO    ] 200
[2026-06-22 16:21:41,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:21:41,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:21:41,060.060 INFO    ] No update needed
[2026-06-22 16:21:41,063.063 INFO    ] Checking for camera pi updates...
[2026-06-22 16:21:41,101.101 INFO    ] 200
[2026-06-22 16:21:41,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:21:41,150.150 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:21:41,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:21:41,236.236 INFO    ] No camera update needed
[2026-06-22 16:21:41,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:21:41,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:21:41,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:21:41,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:21:43,295.295 INFO    ] ================================================
[2026-06-22 16:21:43,311.311 INFO    ] Launching Daemon at Mon Jun 22 16:21:43 IST 2026
[2026-06-22 16:21:43,321.321 INFO    ] ================================================
[2026-06-22 16:21:43,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:21:43
[2026-06-22 16:21:44,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:21:44,637.637 INFO    ] Initializing speech engine...
[2026-06-22 16:21:44,643.643 INFO    ] 2026-06-22 16:21:44
[2026-06-22 16:21:44,932.932 INFO    ] 2026-06-22 16:21:44
[2026-06-22 16:21:44,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:21:45,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:21:45,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:21:45,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:21:45,340.340 INFO    ] time= 22/06/2026 16:21:45
[2026-06-22 16:21:45,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:21:45,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:21:45,427.427 INFO    ] No existing commands found in stream
[2026-06-22 16:21:50,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:21:50,465.465 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-22 16:21:51,320.320 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:21:51,323.323 INFO    ] Checking for system updates...
[2026-06-22 16:21:51,363.363 INFO    ] 200
[2026-06-22 16:21:51,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:21:51,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:21:51,423.423 INFO    ] No update needed
[2026-06-22 16:21:51,426.426 INFO    ] Checking for camera pi updates...
[2026-06-22 16:21:51,463.463 INFO    ] 200
[2026-06-22 16:21:51,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:21:51,511.511 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:21:51,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:21:51,605.605 INFO    ] No camera update needed
[2026-06-22 16:21:51,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:21:51,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:21:51,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:21:51,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:21:53,659.659 INFO    ] ================================================
[2026-06-22 16:21:53,675.675 INFO    ] Launching Daemon at Mon Jun 22 16:21:53 IST 2026
[2026-06-22 16:21:53,686.686 INFO    ] ================================================
[2026-06-22 16:21:54,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:21:54
[2026-06-22 16:21:54,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:21:55,013.013 INFO    ] Initializing speech engine...
[2026-06-22 16:21:55,038.038 INFO    ] 2026-06-22 16:21:55
[2026-06-22 16:21:55,309.309 INFO    ] 2026-06-22 16:21:55
[2026-06-22 16:21:55,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:21:55,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:21:55,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:21:55,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:21:55,723.723 INFO    ] time= 22/06/2026 16:21:55
[2026-06-22 16:21:55,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:21:55,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:21:55,906.906 INFO    ] No existing commands found in stream
[2026-06-22 16:22:00,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:22:00,939.939 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-22 16:22:04,515.515 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:22:04,517.517 INFO    ] Checking for system updates...
[2026-06-22 16:22:04,553.553 INFO    ] 200
[2026-06-22 16:22:04,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:22:04,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:22:04,619.619 INFO    ] No update needed
[2026-06-22 16:22:04,621.621 INFO    ] Checking for camera pi updates...
[2026-06-22 16:22:04,656.656 INFO    ] 200
[2026-06-22 16:22:04,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:22:04,702.702 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:22:04,787.787 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:22:04,790.790 INFO    ] No camera update needed
[2026-06-22 16:22:04,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:22:04,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:22:04,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:22:04,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:22:06,845.845 INFO    ] ================================================
[2026-06-22 16:22:06,860.860 INFO    ] Launching Daemon at Mon Jun 22 16:22:06 IST 2026
[2026-06-22 16:22:06,870.870 INFO    ] ================================================
[2026-06-22 16:22:07,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:22:07
[2026-06-22 16:22:07,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:22:08,281.281 INFO    ] Initializing speech engine...
[2026-06-22 16:22:08,290.290 INFO    ] 2026-06-22 16:22:08
[2026-06-22 16:22:08,551.551 INFO    ] 2026-06-22 16:22:08
[2026-06-22 16:22:08,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:22:08,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:22:08,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:22:09,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:22:09,036.036 INFO    ] time= 22/06/2026 16:22:09
[2026-06-22 16:22:09,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:22:09,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:22:09,241.241 INFO    ] No existing commands found in stream
[2026-06-22 16:22:14,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:22:14,255.255 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-22 16:22:14,953.953 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:22:14,956.956 INFO    ] Checking for system updates...
[2026-06-22 16:22:14,992.992 INFO    ] 200
[2026-06-22 16:22:14,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:22:15,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:22:15,049.049 INFO    ] No update needed
[2026-06-22 16:22:15,052.052 INFO    ] Checking for camera pi updates...
[2026-06-22 16:22:15,087.087 INFO    ] 200
[2026-06-22 16:22:15,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:22:15,132.132 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:22:15,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:22:15,214.214 INFO    ] No camera update needed
[2026-06-22 16:22:15,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:22:15,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:22:15,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:22:15,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:22:17,269.269 INFO    ] ================================================
[2026-06-22 16:22:17,285.285 INFO    ] Launching Daemon at Mon Jun 22 16:22:17 IST 2026
[2026-06-22 16:22:17,295.295 INFO    ] ================================================
[2026-06-22 16:22:17,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:22:17
[2026-06-22 16:22:18,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:22:18,643.643 INFO    ] Initializing speech engine...
[2026-06-22 16:22:18,653.653 INFO    ] 2026-06-22 16:22:18
[2026-06-22 16:22:18,912.912 INFO    ] 2026-06-22 16:22:18
[2026-06-22 16:22:18,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:22:19,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:22:19,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:22:19,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:22:19,457.457 INFO    ] time= 22/06/2026 16:22:19
[2026-06-22 16:22:19,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:22:19,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:22:19,607.607 INFO    ] No existing commands found in stream
[2026-06-22 16:22:24,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:22:24,623.623 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-22 16:22:26,329.329 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:22:26,330.330 INFO    ] Checking for system updates...
[2026-06-22 16:22:26,352.352 INFO    ] 200
[2026-06-22 16:22:26,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:22:26,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:22:26,392.392 INFO    ] No update needed
[2026-06-22 16:22:26,395.395 INFO    ] Checking for camera pi updates...
[2026-06-22 16:22:26,432.432 INFO    ] 200
[2026-06-22 16:22:26,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:22:26,484.484 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:22:26,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:22:26,543.543 INFO    ] No camera update needed
[2026-06-22 16:22:26,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:22:26,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:22:26,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:22:26,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:22:28,612.612 INFO    ] ================================================
[2026-06-22 16:22:28,627.627 INFO    ] Launching Daemon at Mon Jun 22 16:22:28 IST 2026
[2026-06-22 16:22:28,638.638 INFO    ] ================================================
[2026-06-22 16:22:29,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:22:29
[2026-06-22 16:22:29,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:22:30,093.093 INFO    ] Initializing speech engine...
[2026-06-22 16:22:30,104.104 INFO    ] 2026-06-22 16:22:30
[2026-06-22 16:22:30,416.416 INFO    ] 2026-06-22 16:22:30
[2026-06-22 16:22:30,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:22:30,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:22:30,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:22:30,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:22:30,918.918 INFO    ] time= 22/06/2026 16:22:30
[2026-06-22 16:22:30,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:22:30,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:22:31,073.073 INFO    ] No existing commands found in stream
[2026-06-22 16:22:36,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:22:36,090.090 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-22 16:22:38,544.544 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:22:38,546.546 INFO    ] Checking for system updates...
[2026-06-22 16:22:38,586.586 INFO    ] 200
[2026-06-22 16:22:38,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:22:38,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:22:38,642.642 INFO    ] No update needed
[2026-06-22 16:22:38,645.645 INFO    ] Checking for camera pi updates...
[2026-06-22 16:22:38,678.678 INFO    ] 200
[2026-06-22 16:22:38,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:22:38,722.722 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:22:38,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:22:38,808.808 INFO    ] No camera update needed
[2026-06-22 16:22:38,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:22:38,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:22:38,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:22:38,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:22:40,863.863 INFO    ] ================================================
[2026-06-22 16:22:40,878.878 INFO    ] Launching Daemon at Mon Jun 22 16:22:40 IST 2026
[2026-06-22 16:22:40,889.889 INFO    ] ================================================
[2026-06-22 16:22:41,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:22:41
[2026-06-22 16:22:42,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:22:42,347.347 INFO    ] Initializing speech engine...
[2026-06-22 16:22:42,355.355 INFO    ] 2026-06-22 16:22:42
[2026-06-22 16:22:42,614.614 INFO    ] 2026-06-22 16:22:42
[2026-06-22 16:22:42,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:22:42,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:22:42,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:22:44,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:22:44,026.026 INFO    ] time= 22/06/2026 16:22:44
[2026-06-22 16:22:44,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:22:44,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:22:44,104.104 INFO    ] No existing commands found in stream
[2026-06-22 16:22:49,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:22:49,119.119 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-22 16:22:52,578.578 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:22:52,581.581 INFO    ] Checking for system updates...
[2026-06-22 16:22:52,621.621 INFO    ] 200
[2026-06-22 16:22:52,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:22:52,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:22:52,681.681 INFO    ] No update needed
[2026-06-22 16:22:52,684.684 INFO    ] Checking for camera pi updates...
[2026-06-22 16:22:52,722.722 INFO    ] 200
[2026-06-22 16:22:52,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:22:52,772.772 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:22:52,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:22:52,882.882 INFO    ] No camera update needed
[2026-06-22 16:22:52,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:22:52,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:22:52,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:22:52,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:22:54,938.938 INFO    ] ================================================
[2026-06-22 16:22:54,954.954 INFO    ] Launching Daemon at Mon Jun 22 16:22:54 IST 2026
[2026-06-22 16:22:54,966.966 INFO    ] ================================================
[2026-06-22 16:22:55,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:22:55
[2026-06-22 16:22:56,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:22:56,299.299 INFO    ] Initializing speech engine...
[2026-06-22 16:22:56,306.306 INFO    ] 2026-06-22 16:22:56
[2026-06-22 16:22:56,548.548 INFO    ] 2026-06-22 16:22:56
[2026-06-22 16:22:56,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:22:56,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:22:56,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:22:56,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:22:57,037.037 INFO    ] time= 22/06/2026 16:22:56
[2026-06-22 16:22:57,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:22:57,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:22:57,236.236 INFO    ] No existing commands found in stream
[2026-06-22 16:23:02,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:23:02,264.264 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-22 16:23:04,073.073 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:23:04,076.076 INFO    ] Checking for system updates...
[2026-06-22 16:23:04,112.112 INFO    ] 200
[2026-06-22 16:23:04,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:23:04,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:23:04,173.173 INFO    ] No update needed
[2026-06-22 16:23:04,176.176 INFO    ] Checking for camera pi updates...
[2026-06-22 16:23:04,210.210 INFO    ] 200
[2026-06-22 16:23:04,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:23:04,254.254 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:23:04,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:23:04,349.349 INFO    ] No camera update needed
[2026-06-22 16:23:04,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:23:04,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:23:04,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:23:04,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:23:06,405.405 INFO    ] ================================================
[2026-06-22 16:23:06,422.422 INFO    ] Launching Daemon at Mon Jun 22 16:23:06 IST 2026
[2026-06-22 16:23:06,433.433 INFO    ] ================================================
[2026-06-22 16:23:07,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:23:07
[2026-06-22 16:23:07,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:23:07,992.992 INFO    ] Initializing speech engine...
[2026-06-22 16:23:07,999.999 INFO    ] 2026-06-22 16:23:07
[2026-06-22 16:23:08,279.279 INFO    ] 2026-06-22 16:23:08
[2026-06-22 16:23:08,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:23:09,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:23:09,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:23:09,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:23:09,974.974 INFO    ] time= 22/06/2026 16:23:09
[2026-06-22 16:23:10,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:23:10,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:23:10,949.949 INFO    ] No existing commands found in stream
[2026-06-22 16:23:15,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:23:15,964.964 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-22 16:23:17,607.607 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:23:17,610.610 INFO    ] Checking for system updates...
[2026-06-22 16:23:17,647.647 INFO    ] 200
[2026-06-22 16:23:17,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:23:17,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:23:17,710.710 INFO    ] No update needed
[2026-06-22 16:23:17,713.713 INFO    ] Checking for camera pi updates...
[2026-06-22 16:23:17,749.749 INFO    ] 200
[2026-06-22 16:23:17,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:23:17,795.795 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:23:17,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:23:17,899.899 INFO    ] No camera update needed
[2026-06-22 16:23:17,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:23:17,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:23:17,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:23:17,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:23:19,957.957 INFO    ] ================================================
[2026-06-22 16:23:19,973.973 INFO    ] Launching Daemon at Mon Jun 22 16:23:19 IST 2026
[2026-06-22 16:23:19,984.984 INFO    ] ================================================
[2026-06-22 16:23:20,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:23:20
[2026-06-22 16:23:21,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:23:21,352.352 INFO    ] Initializing speech engine...
[2026-06-22 16:23:21,361.361 INFO    ] 2026-06-22 16:23:21
[2026-06-22 16:23:21,616.616 INFO    ] 2026-06-22 16:23:21
[2026-06-22 16:23:21,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:23:21,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:23:21,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:23:22,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:23:22,112.112 INFO    ] time= 22/06/2026 16:23:22
[2026-06-22 16:23:22,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:23:22,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:23:22,319.319 INFO    ] No existing commands found in stream
[2026-06-22 16:23:27,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:23:27,333.333 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-22 16:23:30,802.802 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:23:30,805.805 INFO    ] Checking for system updates...
[2026-06-22 16:23:30,843.843 INFO    ] 200
[2026-06-22 16:23:30,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:23:30,903.903 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:23:30,906.906 INFO    ] No update needed
[2026-06-22 16:23:30,908.908 INFO    ] Checking for camera pi updates...
[2026-06-22 16:23:30,942.942 INFO    ] 200
[2026-06-22 16:23:30,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:23:30,989.989 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:23:31,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:23:31,072.072 INFO    ] No camera update needed
[2026-06-22 16:23:31,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:23:31,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:23:31,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:23:31,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:23:33,128.128 INFO    ] ================================================
[2026-06-22 16:23:33,144.144 INFO    ] Launching Daemon at Mon Jun 22 16:23:33 IST 2026
[2026-06-22 16:23:33,155.155 INFO    ] ================================================
[2026-06-22 16:23:33,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:23:33
[2026-06-22 16:23:34,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:23:34,639.639 INFO    ] Initializing speech engine...
[2026-06-22 16:23:34,646.646 INFO    ] 2026-06-22 16:23:34
[2026-06-22 16:23:34,916.916 INFO    ] 2026-06-22 16:23:34
[2026-06-22 16:23:34,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:23:35,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:23:35,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:23:35,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:23:35,425.425 INFO    ] time= 22/06/2026 16:23:35
[2026-06-22 16:23:35,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:23:35,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:23:35,643.643 INFO    ] No existing commands found in stream
[2026-06-22 16:23:40,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:23:40,675.675 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-22 16:23:42,439.439 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:23:42,442.442 INFO    ] Checking for system updates...
[2026-06-22 16:23:42,482.482 INFO    ] 200
[2026-06-22 16:23:42,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:23:42,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:23:42,547.547 INFO    ] No update needed
[2026-06-22 16:23:42,550.550 INFO    ] Checking for camera pi updates...
[2026-06-22 16:23:42,588.588 INFO    ] 200
[2026-06-22 16:23:42,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:23:42,633.633 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:23:42,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:23:42,729.729 INFO    ] No camera update needed
[2026-06-22 16:23:42,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:23:42,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:23:42,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:23:42,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:23:44,788.788 INFO    ] ================================================
[2026-06-22 16:23:44,804.804 INFO    ] Launching Daemon at Mon Jun 22 16:23:44 IST 2026
[2026-06-22 16:23:44,814.814 INFO    ] ================================================
[2026-06-22 16:23:45,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:23:45
[2026-06-22 16:23:45,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:23:46,164.164 INFO    ] Initializing speech engine...
[2026-06-22 16:23:46,173.173 INFO    ] 2026-06-22 16:23:46
[2026-06-22 16:23:46,467.467 INFO    ] 2026-06-22 16:23:46
[2026-06-22 16:23:46,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:23:46,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:23:46,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:23:46,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:23:46,881.881 INFO    ] time= 22/06/2026 16:23:46
[2026-06-22 16:23:46,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:23:46,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:23:47,068.068 INFO    ] No existing commands found in stream
[2026-06-22 16:23:52,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:23:52,096.096 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-22 16:23:55,146.146 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:23:55,149.149 INFO    ] Checking for system updates...
[2026-06-22 16:23:55,186.186 INFO    ] 200
[2026-06-22 16:23:55,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:23:55,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:23:55,244.244 INFO    ] No update needed
[2026-06-22 16:23:55,246.246 INFO    ] Checking for camera pi updates...
[2026-06-22 16:23:55,281.281 INFO    ] 200
[2026-06-22 16:23:55,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:23:55,326.326 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:23:55,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:23:55,430.430 INFO    ] No camera update needed
[2026-06-22 16:23:55,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:23:55,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:23:55,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:23:55,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:23:57,485.485 INFO    ] ================================================
[2026-06-22 16:23:57,501.501 INFO    ] Launching Daemon at Mon Jun 22 16:23:57 IST 2026
[2026-06-22 16:23:57,513.513 INFO    ] ================================================
[2026-06-22 16:23:58,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:23:58
[2026-06-22 16:23:58,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:23:58,930.930 INFO    ] Initializing speech engine...
[2026-06-22 16:23:58,933.933 INFO    ] 2026-06-22 16:23:58
[2026-06-22 16:23:59,199.199 INFO    ] 2026-06-22 16:23:59
[2026-06-22 16:23:59,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:23:59,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:23:59,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:23:59,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:23:59,631.631 INFO    ] time= 22/06/2026 16:23:59
[2026-06-22 16:23:59,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:23:59,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:23:59,810.810 INFO    ] No existing commands found in stream
[2026-06-22 16:24:04,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:24:04,825.825 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-22 16:24:09,122.122 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:24:09,125.125 INFO    ] Checking for system updates...
[2026-06-22 16:24:09,164.164 INFO    ] 200
[2026-06-22 16:24:09,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:24:09,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:24:09,211.211 INFO    ] No update needed
[2026-06-22 16:24:09,213.213 INFO    ] Checking for camera pi updates...
[2026-06-22 16:24:09,235.235 INFO    ] 200
[2026-06-22 16:24:09,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:24:09,259.259 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:24:09,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:24:09,360.360 INFO    ] No camera update needed
[2026-06-22 16:24:09,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:24:09,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:24:09,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:24:09,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:24:11,418.418 INFO    ] ================================================
[2026-06-22 16:24:11,434.434 INFO    ] Launching Daemon at Mon Jun 22 16:24:11 IST 2026
[2026-06-22 16:24:11,445.445 INFO    ] ================================================
[2026-06-22 16:24:12,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:24:12
[2026-06-22 16:24:12,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:24:12,911.911 INFO    ] Initializing speech engine...
[2026-06-22 16:24:12,920.920 INFO    ] 2026-06-22 16:24:12
[2026-06-22 16:24:13,183.183 INFO    ] 2026-06-22 16:24:13
[2026-06-22 16:24:13,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:24:13,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:24:13,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:24:13,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:24:13,877.877 INFO    ] time= 22/06/2026 16:24:13
[2026-06-22 16:24:13,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:24:13,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:24:14,109.109 INFO    ] No existing commands found in stream
[2026-06-22 16:24:19,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:24:19,142.142 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-22 16:24:20,903.903 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:24:20,905.905 INFO    ] Checking for system updates...
[2026-06-22 16:24:20,946.946 INFO    ] 200
[2026-06-22 16:24:20,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:24:21,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:24:21,004.004 INFO    ] No update needed
[2026-06-22 16:24:21,007.007 INFO    ] Checking for camera pi updates...
[2026-06-22 16:24:21,045.045 INFO    ] 200
[2026-06-22 16:24:21,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:24:21,088.088 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:24:21,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:24:21,176.176 INFO    ] No camera update needed
[2026-06-22 16:24:21,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:24:21,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:24:21,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:24:21,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:24:23,234.234 INFO    ] ================================================
[2026-06-22 16:24:23,250.250 INFO    ] Launching Daemon at Mon Jun 22 16:24:23 IST 2026
[2026-06-22 16:24:23,261.261 INFO    ] ================================================
[2026-06-22 16:24:23,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:24:23
[2026-06-22 16:24:24,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:24:24,754.754 INFO    ] Initializing speech engine...
[2026-06-22 16:24:24,776.776 INFO    ] 2026-06-22 16:24:24
[2026-06-22 16:24:25,031.031 INFO    ] 2026-06-22 16:24:25
[2026-06-22 16:24:25,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:24:25,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:24:25,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:24:25,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:24:25,521.521 INFO    ] time= 22/06/2026 16:24:25
[2026-06-22 16:24:25,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:24:25,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:24:25,707.707 INFO    ] No existing commands found in stream
[2026-06-22 16:24:30,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:24:30,737.737 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-22 16:24:33,718.718 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:24:33,721.721 INFO    ] Checking for system updates...
[2026-06-22 16:24:33,761.761 INFO    ] 200
[2026-06-22 16:24:33,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:24:33,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:24:33,825.825 INFO    ] No update needed
[2026-06-22 16:24:33,828.828 INFO    ] Checking for camera pi updates...
[2026-06-22 16:24:33,878.878 INFO    ] 200
[2026-06-22 16:24:33,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:24:33,921.921 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:24:34,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:24:34,119.119 INFO    ] No camera update needed
[2026-06-22 16:24:34,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:24:34,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:24:34,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:24:34,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:24:36,178.178 INFO    ] ================================================
[2026-06-22 16:24:36,194.194 INFO    ] Launching Daemon at Mon Jun 22 16:24:36 IST 2026
[2026-06-22 16:24:36,204.204 INFO    ] ================================================
[2026-06-22 16:24:36,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:24:36
[2026-06-22 16:24:37,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:24:37,567.567 INFO    ] Initializing speech engine...
[2026-06-22 16:24:37,578.578 INFO    ] 2026-06-22 16:24:37
[2026-06-22 16:24:37,839.839 INFO    ] 2026-06-22 16:24:37
[2026-06-22 16:24:37,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:24:38,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:24:38,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:24:38,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:24:38,396.396 INFO    ] time= 22/06/2026 16:24:38
[2026-06-22 16:24:38,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:24:38,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:24:38,538.538 INFO    ] No existing commands found in stream
[2026-06-22 16:24:43,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:24:43,570.570 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-22 16:24:47,016.016 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:24:47,018.018 INFO    ] Checking for system updates...
[2026-06-22 16:24:47,045.045 INFO    ] 200
[2026-06-22 16:24:47,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:24:47,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:24:47,102.102 INFO    ] No update needed
[2026-06-22 16:24:47,105.105 INFO    ] Checking for camera pi updates...
[2026-06-22 16:24:47,139.139 INFO    ] 200
[2026-06-22 16:24:47,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:24:47,182.182 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:24:47,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:24:47,289.289 INFO    ] No camera update needed
[2026-06-22 16:24:47,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:24:47,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:24:47,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:24:47,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:24:49,346.346 INFO    ] ================================================
[2026-06-22 16:24:49,362.362 INFO    ] Launching Daemon at Mon Jun 22 16:24:49 IST 2026
[2026-06-22 16:24:49,372.372 INFO    ] ================================================
[2026-06-22 16:24:49,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:24:49
[2026-06-22 16:24:50,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:24:50,742.742 INFO    ] Initializing speech engine...
[2026-06-22 16:24:50,751.751 INFO    ] 2026-06-22 16:24:50
[2026-06-22 16:24:51,010.010 INFO    ] 2026-06-22 16:24:51
[2026-06-22 16:24:51,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:24:51,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:24:51,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:24:51,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:24:51,552.552 INFO    ] time= 22/06/2026 16:24:51
[2026-06-22 16:24:51,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:24:51,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:24:51,702.702 INFO    ] No existing commands found in stream
[2026-06-22 16:24:56,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:24:56,720.720 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-22 16:24:57,563.563 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:24:57,565.565 INFO    ] Checking for system updates...
[2026-06-22 16:24:57,587.587 INFO    ] 200
[2026-06-22 16:24:57,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:24:57,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:24:57,622.622 INFO    ] No update needed
[2026-06-22 16:24:57,623.623 INFO    ] Checking for camera pi updates...
[2026-06-22 16:24:57,654.654 INFO    ] 200
[2026-06-22 16:24:57,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:24:57,702.702 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:24:57,781.781 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:24:57,783.783 INFO    ] No camera update needed
[2026-06-22 16:24:57,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:24:57,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:24:57,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:24:57,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:24:59,841.841 INFO    ] ================================================
[2026-06-22 16:24:59,857.857 INFO    ] Launching Daemon at Mon Jun 22 16:24:59 IST 2026
[2026-06-22 16:24:59,867.867 INFO    ] ================================================
[2026-06-22 16:25:00,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:25:00
[2026-06-22 16:25:01,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:25:01,677.677 INFO    ] Initializing speech engine...
[2026-06-22 16:25:01,680.680 INFO    ] 2026-06-22 16:25:01
[2026-06-22 16:25:02,057.057 INFO    ] 2026-06-22 16:25:02
[2026-06-22 16:25:02,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:25:02,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:25:02,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:25:02,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:25:02,547.547 INFO    ] time= 22/06/2026 16:25:02
[2026-06-22 16:25:02,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:25:02,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:25:02,674.674 INFO    ] No existing commands found in stream
[2026-06-22 16:25:07,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:25:07,707.707 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-22 16:25:11,247.247 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:25:11,248.248 INFO    ] Checking for system updates...
[2026-06-22 16:25:11,271.271 INFO    ] 200
[2026-06-22 16:25:11,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:25:11,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:25:11,305.305 INFO    ] No update needed
[2026-06-22 16:25:11,306.306 INFO    ] Checking for camera pi updates...
[2026-06-22 16:25:11,325.325 INFO    ] 200
[2026-06-22 16:25:11,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:25:11,354.354 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:25:11,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:25:11,421.421 INFO    ] No camera update needed
[2026-06-22 16:25:11,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:25:11,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:25:11,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:25:11,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:25:13,476.476 INFO    ] ================================================
[2026-06-22 16:25:13,491.491 INFO    ] Launching Daemon at Mon Jun 22 16:25:13 IST 2026
[2026-06-22 16:25:13,503.503 INFO    ] ================================================
[2026-06-22 16:25:14,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:25:14
[2026-06-22 16:25:14,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:25:14,926.926 INFO    ] Initializing speech engine...
[2026-06-22 16:25:14,935.935 INFO    ] 2026-06-22 16:25:14
[2026-06-22 16:25:15,184.184 INFO    ] 2026-06-22 16:25:15
[2026-06-22 16:25:15,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:25:15,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:25:15,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:25:15,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:25:15,669.669 INFO    ] time= 22/06/2026 16:25:15
[2026-06-22 16:25:15,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:25:15,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:25:15,889.889 INFO    ] No existing commands found in stream
[2026-06-22 16:25:20,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:25:20,925.925 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-22 16:25:24,663.663 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:25:24,666.666 INFO    ] Checking for system updates...
[2026-06-22 16:25:24,702.702 INFO    ] 200
[2026-06-22 16:25:24,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:25:24,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:25:24,766.766 INFO    ] No update needed
[2026-06-22 16:25:24,769.769 INFO    ] Checking for camera pi updates...
[2026-06-22 16:25:24,806.806 INFO    ] 200
[2026-06-22 16:25:24,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:25:24,853.853 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:25:24,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:25:24,947.947 INFO    ] No camera update needed
[2026-06-22 16:25:24,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:25:24,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:25:24,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:25:24,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:25:27,004.004 INFO    ] ================================================
[2026-06-22 16:25:27,020.020 INFO    ] Launching Daemon at Mon Jun 22 16:25:27 IST 2026
[2026-06-22 16:25:27,031.031 INFO    ] ================================================
[2026-06-22 16:25:27,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:25:27
[2026-06-22 16:25:28,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:25:28,401.401 INFO    ] Initializing speech engine...
[2026-06-22 16:25:28,416.416 INFO    ] 2026-06-22 16:25:28
[2026-06-22 16:25:28,702.702 INFO    ] 2026-06-22 16:25:28
[2026-06-22 16:25:28,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:25:28,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:25:28,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:25:29,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:25:29,122.122 INFO    ] time= 22/06/2026 16:25:29
[2026-06-22 16:25:29,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:25:29,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:25:29,319.319 INFO    ] No existing commands found in stream
[2026-06-22 16:25:34,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:25:34,334.334 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-22 16:25:37,251.251 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:25:37,253.253 INFO    ] Checking for system updates...
[2026-06-22 16:25:37,275.275 INFO    ] 200
[2026-06-22 16:25:37,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:25:37,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:25:37,328.328 INFO    ] No update needed
[2026-06-22 16:25:37,330.330 INFO    ] Checking for camera pi updates...
[2026-06-22 16:25:37,368.368 INFO    ] 200
[2026-06-22 16:25:37,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:25:37,416.416 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:25:37,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:25:37,519.519 INFO    ] No camera update needed
[2026-06-22 16:25:37,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:25:37,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:25:37,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:25:37,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:25:39,574.574 INFO    ] ================================================
[2026-06-22 16:25:39,590.590 INFO    ] Launching Daemon at Mon Jun 22 16:25:39 IST 2026
[2026-06-22 16:25:39,602.602 INFO    ] ================================================
[2026-06-22 16:25:40,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:25:40
[2026-06-22 16:25:40,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:25:40,914.914 INFO    ] Initializing speech engine...
[2026-06-22 16:25:40,922.922 INFO    ] 2026-06-22 16:25:40
[2026-06-22 16:25:41,196.196 INFO    ] 2026-06-22 16:25:41
[2026-06-22 16:25:41,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:25:41,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:25:41,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:25:41,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:25:41,753.753 INFO    ] time= 22/06/2026 16:25:41
[2026-06-22 16:25:41,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:25:41,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:25:41,926.926 INFO    ] No existing commands found in stream
[2026-06-22 16:25:46,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:25:46,943.943 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-22 16:25:48,306.306 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:25:48,307.307 INFO    ] Checking for system updates...
[2026-06-22 16:25:48,328.328 INFO    ] 200
[2026-06-22 16:25:48,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:25:48,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:25:48,362.362 INFO    ] No update needed
[2026-06-22 16:25:48,363.363 INFO    ] Checking for camera pi updates...
[2026-06-22 16:25:48,393.393 INFO    ] 200
[2026-06-22 16:25:48,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:25:48,447.447 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:25:48,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:25:48,529.529 INFO    ] No camera update needed
[2026-06-22 16:25:48,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:25:48,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:25:48,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:25:48,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:25:50,584.584 INFO    ] ================================================
[2026-06-22 16:25:50,600.600 INFO    ] Launching Daemon at Mon Jun 22 16:25:50 IST 2026
[2026-06-22 16:25:50,612.612 INFO    ] ================================================
[2026-06-22 16:25:51,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:25:51
[2026-06-22 16:25:51,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:25:51,975.975 INFO    ] Initializing speech engine...
[2026-06-22 16:25:51,983.983 INFO    ] 2026-06-22 16:25:51
[2026-06-22 16:25:52,239.239 INFO    ] 2026-06-22 16:25:52
[2026-06-22 16:25:52,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:25:52,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:25:52,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:25:52,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:25:52,783.783 INFO    ] time= 22/06/2026 16:25:52
[2026-06-22 16:25:52,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:25:52,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:25:52,962.962 INFO    ] No existing commands found in stream
[2026-06-22 16:25:57,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:25:57,996.996 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-22 16:25:58,754.754 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:25:58,757.757 INFO    ] Checking for system updates...
[2026-06-22 16:25:58,793.793 INFO    ] 200
[2026-06-22 16:25:58,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:25:58,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:25:58,851.851 INFO    ] No update needed
[2026-06-22 16:25:58,853.853 INFO    ] Checking for camera pi updates...
[2026-06-22 16:25:58,887.887 INFO    ] 200
[2026-06-22 16:25:58,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:25:58,935.935 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:25:59,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:25:59,033.033 INFO    ] No camera update needed
[2026-06-22 16:25:59,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:25:59,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:25:59,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:25:59,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:26:01,089.089 INFO    ] ================================================
[2026-06-22 16:26:01,104.104 INFO    ] Launching Daemon at Mon Jun 22 16:26:01 IST 2026
[2026-06-22 16:26:01,115.115 INFO    ] ================================================
[2026-06-22 16:26:01,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:26:01
[2026-06-22 16:26:02,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:26:02,914.914 INFO    ] Initializing speech engine...
[2026-06-22 16:26:02,927.927 INFO    ] 2026-06-22 16:26:02
[2026-06-22 16:26:03,242.242 INFO    ] 2026-06-22 16:26:03
[2026-06-22 16:26:03,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:26:03,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:26:03,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:26:03,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:26:03,789.789 INFO    ] time= 22/06/2026 16:26:03
[2026-06-22 16:26:03,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:26:03,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:26:03,947.947 INFO    ] No existing commands found in stream
[2026-06-22 16:26:08,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:26:08,982.982 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-22 16:26:09,503.503 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:26:09,506.506 INFO    ] Checking for system updates...
[2026-06-22 16:26:09,543.543 INFO    ] 200
[2026-06-22 16:26:09,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:26:09,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:26:09,612.612 INFO    ] No update needed
[2026-06-22 16:26:09,614.614 INFO    ] Checking for camera pi updates...
[2026-06-22 16:26:09,654.654 INFO    ] 200
[2026-06-22 16:26:09,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:26:09,705.705 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:26:09,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:26:09,808.808 INFO    ] No camera update needed
[2026-06-22 16:26:09,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:26:09,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:26:09,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:26:09,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:26:11,865.865 INFO    ] ================================================
[2026-06-22 16:26:11,881.881 INFO    ] Launching Daemon at Mon Jun 22 16:26:11 IST 2026
[2026-06-22 16:26:11,893.893 INFO    ] ================================================
[2026-06-22 16:26:12,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:26:12
[2026-06-22 16:26:13,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:26:13,370.370 INFO    ] Initializing speech engine...
[2026-06-22 16:26:13,380.380 INFO    ] 2026-06-22 16:26:13
[2026-06-22 16:26:13,663.663 INFO    ] 2026-06-22 16:26:13
[2026-06-22 16:26:13,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:26:13,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:26:13,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:26:14,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:26:14,196.196 INFO    ] time= 22/06/2026 16:26:14
[2026-06-22 16:26:14,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:26:14,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:26:14,388.388 INFO    ] No existing commands found in stream
[2026-06-22 16:26:19,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:26:19,427.427 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-22 16:26:23,219.219 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:26:23,222.222 INFO    ] Checking for system updates...
[2026-06-22 16:26:23,260.260 INFO    ] 200
[2026-06-22 16:26:23,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:26:23,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:26:23,321.321 INFO    ] No update needed
[2026-06-22 16:26:23,324.324 INFO    ] Checking for camera pi updates...
[2026-06-22 16:26:23,362.362 INFO    ] 200
[2026-06-22 16:26:23,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:26:23,411.411 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:26:23,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:26:23,497.497 INFO    ] No camera update needed
[2026-06-22 16:26:23,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:26:23,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:26:23,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:26:23,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:26:25,551.551 INFO    ] ================================================
[2026-06-22 16:26:25,567.567 INFO    ] Launching Daemon at Mon Jun 22 16:26:25 IST 2026
[2026-06-22 16:26:25,578.578 INFO    ] ================================================
[2026-06-22 16:26:26,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:26:26
[2026-06-22 16:26:26,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:26:27,119.119 INFO    ] Initializing speech engine...
[2026-06-22 16:26:27,133.133 INFO    ] 2026-06-22 16:26:27
[2026-06-22 16:26:27,421.421 INFO    ] 2026-06-22 16:26:27
[2026-06-22 16:26:27,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:26:27,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:26:27,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:26:27,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:26:27,958.958 INFO    ] time= 22/06/2026 16:26:27
[2026-06-22 16:26:27,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:26:28,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:26:28,124.124 INFO    ] No existing commands found in stream
[2026-06-22 16:26:33,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:26:33,160.160 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-22 16:26:34,636.636 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:26:34,639.639 INFO    ] Checking for system updates...
[2026-06-22 16:26:34,675.675 INFO    ] 200
[2026-06-22 16:26:34,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:26:34,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:26:34,741.741 INFO    ] No update needed
[2026-06-22 16:26:34,743.743 INFO    ] Checking for camera pi updates...
[2026-06-22 16:26:34,781.781 INFO    ] 200
[2026-06-22 16:26:34,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:26:34,830.830 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:26:35,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:26:35,010.010 INFO    ] No camera update needed
[2026-06-22 16:26:35,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:26:35,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:26:35,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:26:35,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:26:37,065.065 INFO    ] ================================================
[2026-06-22 16:26:37,081.081 INFO    ] Launching Daemon at Mon Jun 22 16:26:37 IST 2026
[2026-06-22 16:26:37,093.093 INFO    ] ================================================
[2026-06-22 16:26:37,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:26:37
[2026-06-22 16:26:38,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:26:38,720.720 INFO    ] Initializing speech engine...
[2026-06-22 16:26:38,726.726 INFO    ] 2026-06-22 16:26:38
[2026-06-22 16:26:39,010.010 INFO    ] 2026-06-22 16:26:38
[2026-06-22 16:26:39,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:26:39,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:26:39,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:26:39,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:26:39,421.421 INFO    ] time= 22/06/2026 16:26:39
[2026-06-22 16:26:39,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:26:39,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:26:39,585.585 INFO    ] No existing commands found in stream
[2026-06-22 16:26:44,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:26:44,611.611 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-22 16:26:47,163.163 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:26:47,165.165 INFO    ] Checking for system updates...
[2026-06-22 16:26:47,187.187 INFO    ] 200
[2026-06-22 16:26:47,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:26:47,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:26:47,238.238 INFO    ] No update needed
[2026-06-22 16:26:47,241.241 INFO    ] Checking for camera pi updates...
[2026-06-22 16:26:47,276.276 INFO    ] 200
[2026-06-22 16:26:47,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:26:47,321.321 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:26:47,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:26:47,426.426 INFO    ] No camera update needed
[2026-06-22 16:26:47,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:26:47,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:26:47,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:26:47,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:26:49,485.485 INFO    ] ================================================
[2026-06-22 16:26:49,501.501 INFO    ] Launching Daemon at Mon Jun 22 16:26:49 IST 2026
[2026-06-22 16:26:49,513.513 INFO    ] ================================================
[2026-06-22 16:26:50,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:26:50
[2026-06-22 16:26:50,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:26:51,122.122 INFO    ] Initializing speech engine...
[2026-06-22 16:26:51,131.131 INFO    ] 2026-06-22 16:26:51
[2026-06-22 16:26:51,401.401 INFO    ] 2026-06-22 16:26:51
[2026-06-22 16:26:51,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:26:51,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:26:51,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:26:51,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:26:51,876.876 INFO    ] time= 22/06/2026 16:26:51
[2026-06-22 16:26:51,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:26:51,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:26:52,097.097 INFO    ] No existing commands found in stream
[2026-06-22 16:26:57,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:26:57,124.124 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-22 16:26:57,987.987 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:26:57,990.990 INFO    ] Checking for system updates...
[2026-06-22 16:26:58,032.032 INFO    ] 200
[2026-06-22 16:26:58,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:26:58,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:26:58,091.091 INFO    ] No update needed
[2026-06-22 16:26:58,094.094 INFO    ] Checking for camera pi updates...
[2026-06-22 16:26:58,128.128 INFO    ] 200
[2026-06-22 16:26:58,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:26:58,177.177 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:26:58,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:26:58,242.242 INFO    ] No camera update needed
[2026-06-22 16:26:58,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:26:58,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:26:58,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:26:58,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:27:00,296.296 INFO    ] ================================================
[2026-06-22 16:27:00,311.311 INFO    ] Launching Daemon at Mon Jun 22 16:27:00 IST 2026
[2026-06-22 16:27:00,322.322 INFO    ] ================================================
[2026-06-22 16:27:00,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:27:00
[2026-06-22 16:27:01,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:27:02,010.010 INFO    ] Initializing speech engine...
[2026-06-22 16:27:02,020.020 INFO    ] 2026-06-22 16:27:02
[2026-06-22 16:27:02,328.328 INFO    ] 2026-06-22 16:27:02
[2026-06-22 16:27:02,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:27:02,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:27:02,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:27:03,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:27:03,942.942 INFO    ] time= 22/06/2026 16:27:03
[2026-06-22 16:27:03,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:27:03,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:27:04,038.038 INFO    ] No existing commands found in stream
[2026-06-22 16:27:09,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:27:09,053.053 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-22 16:27:10,516.516 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:27:10,517.517 INFO    ] Checking for system updates...
[2026-06-22 16:27:10,539.539 INFO    ] 200
[2026-06-22 16:27:10,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:27:10,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:27:10,574.574 INFO    ] No update needed
[2026-06-22 16:27:10,576.576 INFO    ] Checking for camera pi updates...
[2026-06-22 16:27:10,596.596 INFO    ] 200
[2026-06-22 16:27:10,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:27:10,628.628 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:27:10,723.723 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:27:10,726.726 INFO    ] No camera update needed
[2026-06-22 16:27:10,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:27:10,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:27:10,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:27:10,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:27:12,781.781 INFO    ] ================================================
[2026-06-22 16:27:12,796.796 INFO    ] Launching Daemon at Mon Jun 22 16:27:12 IST 2026
[2026-06-22 16:27:12,806.806 INFO    ] ================================================
[2026-06-22 16:27:13,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:27:13
[2026-06-22 16:27:13,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:27:14,169.169 INFO    ] Initializing speech engine...
[2026-06-22 16:27:14,179.179 INFO    ] 2026-06-22 16:27:14
[2026-06-22 16:27:14,429.429 INFO    ] 2026-06-22 16:27:14
[2026-06-22 16:27:14,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:27:14,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:27:14,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:27:14,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:27:14,982.982 INFO    ] time= 22/06/2026 16:27:14
[2026-06-22 16:27:14,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:27:15,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:27:15,134.134 INFO    ] Found 1 existing command(s) in stream
[2026-06-22 16:27:15,162.162 INFO    ] Checking historical command: ID=1782125832948-0
[2026-06-22 16:27:15,227.227 INFO    ] process_and_cleanup_command: msg_id=1782125832948-0
[2026-06-22 16:27:15,256.256 INFO    ] is_command_expired: timestamp=2026-06-22T10:57:14.686Z, expiry=30s
[2026-06-22 16:27:15,463.463 INFO    ] Command removed from stream: 1782125832948-0. returning for processing...
[2026-06-22 16:27:15,467.467 INFO    ] ***** get_valid_command
[2026-06-22 16:27:15,477.477 INFO    ] {'data': '{"request_id":"start-order-1782125834686-c122ck68r","orderId":"TM06202507260622162613376","is_vending":false}', 'timestamp': '2026-06-22T10:57:14.686Z', 'source': 'webapp', 'command': 'start-order', 'timeout': '10'}
[2026-06-22 16:27:15,480.480 INFO    ] ***** Parsed command data: {'orderId': 'TM06202507260622162613376', 'request_id': 'start-order-1782125834686-c122ck68r', 'is_vending': False}
[2026-06-22 16:27:15,483.483 INFO    ] Handling start order...
[2026-06-22 16:27:15,486.486 INFO    ] handle_start_order_command
[2026-06-22 16:27:15,595.595 INFO    ] _send_start_order_success: request_id=start-order-1782125834686-c122ck68r, order_id=TM06202507260622162613376
[2026-06-22 16:27:15,616.616 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM06202507
[2026-06-22 16:27:15,718.718 INFO    ] [_send_start_order_success] Message added to stream with ID: 1782125835642-0
[2026-06-22 16:27:15,724.724 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-22 16:27:15,729.729 INFO    ] Checking for system updates...
[2026-06-22 16:27:15,776.776 INFO    ] 200
[2026-06-22 16:27:15,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:27:15,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:27:15,922.922 INFO    ] No update needed
[2026-06-22 16:27:15,928.928 INFO    ] Checking for camera pi updates...
[2026-06-22 16:27:15,969.969 INFO    ] 200
[2026-06-22 16:27:15,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:27:16,026.026 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:27:16,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:27:16,115.115 INFO    ] No camera update needed
[2026-06-22 16:27:16,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:27:16,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:27:16,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:27:16,156.156 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-22 16:27:16,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:27:18,218.218 INFO    ] ================================================
[2026-06-22 16:27:18,233.233 INFO    ] Launching Daemon at Mon Jun 22 16:27:18 IST 2026
[2026-06-22 16:27:18,244.244 INFO    ] ================================================
[2026-06-22 16:27:18,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:27:18
[2026-06-22 16:27:19,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:27:19,667.667 INFO    ] Initializing speech engine...
[2026-06-22 16:27:19,680.680 INFO    ] 2026-06-22 16:27:19
[2026-06-22 16:27:19,946.946 INFO    ] 2026-06-22 16:27:19
[2026-06-22 16:27:19,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:27:20,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:27:20,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:27:20,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:27:20,461.461 INFO    ] time= 22/06/2026 16:27:20
[2026-06-22 16:27:20,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:27:20,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:27:20,614.614 INFO    ] Found 2 existing command(s) in stream
[2026-06-22 16:27:20,660.660 INFO    ] Checking historical command: ID=1782125835642-0
[2026-06-22 16:27:20,718.718 INFO    ] process_and_cleanup_command: msg_id=1782125835642-0
[2026-06-22 16:27:20,744.744 INFO    ] is_command_expired: timestamp=2026-06-22T10:57:15.602119Z, expiry=30s
[2026-06-22 16:27:20,953.953 INFO    ] Command removed from stream: 1782125835642-0. returning for processing...
[2026-06-22 16:27:21,008.008 INFO    ] ***** get_valid_command
[2026-06-22 16:27:21,051.051 INFO    ] {'status': 'success', 'message_type': 'command_response', 'metadata_request_id': 'start-order-1782125834686-c122ck68r', 'imei': 'TM06202507', 'timestamp': '2026-06-22T10:57:15.602119Z', 'message': 'start-order success', 'metadata_order_id': 'TM06202507260622162613376'}
[2026-06-22 16:27:21,086.086 INFO    ] Checking historical command: ID=1782125839065-0
[2026-06-22 16:27:21,095.095 INFO    ] process_and_cleanup_command: msg_id=1782125839065-0
[2026-06-22 16:27:21,100.100 INFO    ] is_command_expired: timestamp=2026-06-22T10:57:20.635Z, expiry=30s
[2026-06-22 16:27:21,242.242 INFO    ] Command removed from stream: 1782125839065-0. returning for processing...
[2026-06-22 16:27:21,246.246 INFO    ] ***** get_valid_command
[2026-06-22 16:27:21,252.252 INFO    ] {'timestamp': '2026-06-22T10:57:20.635Z', 'command': 'process-order', 'timeout': '60', 'source': 'webapp', 'data': '{"request_id":"process-order-1782125840635-z1d7qwpr4","orderId":"TM06202507260622162613376","is_vending":false,"accessCode":"79010480"}'}
[2026-06-22 16:27:21,255.255 INFO    ] ***** Parsed command data: {'is_vending': False, 'accessCode': '79010480', 'request_id': 'process-order-1782125840635-z1d7qwpr4', 'orderId': 'TM06202507260622162613376'}
[2026-06-22 16:27:21,311.311 INFO    ] Handling process order...
[2026-06-22 16:27:21,315.315 INFO    ] Processing process-order command...
[2026-06-22 16:27:21,319.319 INFO    ] 🔍 Lock file Order ID: TM06202507260622162613376, TS: 2026-06-22 16:27:15
[2026-06-22 16:27:21,386.386 INFO    ] ✅ Order lock valid for TM06202507260622162613376
[2026-06-22 16:27:21,392.392 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-22 16:27:21,396.396 INFO    ] processing access code 79010480 for order TM06202507260622162613376
[2026-06-22 16:27:21,404.404 INFO    ] 🔍 Lock file Order ID: TM06202507260622162613376, TS: 2026-06-22 16:27:15
[2026-06-22 16:27:21,409.409 INFO    ] ✅ Order lock valid for TM06202507260622162613376
[2026-06-22 16:27:21,414.414 INFO    ] 2026-06-22 16:27:21
[2026-06-22 16:27:21,459.459 INFO    ] 200
[2026-06-22 16:27:21,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:27:21,480.480 INFO    ] 79010480
[2026-06-22 16:27:21,562.562 INFO    ] 2026-06-22 16:27:21
[2026-06-22 16:27:21,595.595 INFO    ] session id :865292801
[2026-06-22 16:27:21,600.600 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=79010480&imei=TM06202507&session_id=865292801
[2026-06-22 16:27:22,732.732 INFO    ] 200
[2026-06-22 16:27:22,739.739 INFO    ] {"data": {"mobile": "7032703902", "order_id": "TM06202507260622162613376", "access_code": "79010480", "bill_amount": "20", "proposed_sku_json": [{"tray_id": "39", "qty": 1, "mrp": "20", "door_id": "2", "name": "Cad bury Dairy Milk Chocolate 18gm", "sku_total": 20, "image_url": "https://images.tinymart.in/product/4500541-6798.jpg", "offer_desc": "", "unit_price": 20, "skuid": "4500541", "offer_id": ""}], "invoice_bill": "20"}, "msg": "Order Data", "status": true, "rstatus": true}
[2026-06-22 16:27:22,758.758 INFO    ] 20
[2026-06-22 16:27:22,766.766 INFO    ] TM06202507260622162613376
[2026-06-22 16:27:22,804.804 INFO    ] 7032703902
[2026-06-22 16:27:22,850.850 INFO    ] 2026-06-22 16:27:22
[2026-06-22 16:27:22,871.871 INFO    ] Door Opening for user mobile ending with  three nine zero two 
[2026-06-22 16:27:22,875.875 INFO    ] Door Opening for user mobile ending with  three nine zero two 
[2026-06-22 16:27:22,883.883 INFO    ] 7239c9c630e064ce998b5083572f25f5
[2026-06-22 16:27:22,893.893 INFO    ] 2026-06-22 16:27:22
[2026-06-22 16:27:22,905.905 INFO    ] playing audio file
[2026-06-22 16:27:22,948.948 INFO    ] 2026-06-22 16:27:22
[2026-06-22 16:27:22,962.962 INFO    ] 2026-06-22 16:27:22
[2026-06-22 16:27:22,986.986 INFO    ] publish_status: order_id=TM06202507260622162613376
[2026-06-22 16:27:22,993.993 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622162613376
[2026-06-22 16:27:23,096.096 INFO    ] [publish_status] Message added to stream with ID: 1782125843017-0
[2026-06-22 16:27:23,130.130 INFO    ] Published to order:TM06202507260622162613376: {'server_status': 'order-started', 'timestamp': '2026-06-22T10:57:22.963895Z', 'server_response': '{"status": true, "msg": "Order Data", "rstatus": true, "data": {"order_id": "TM06202507260622162613376", "access_code": "79010480", "bill_amount": "20", "mobile": "7032703902", "invoice_bill": "20", "proposed_sku_json": [{"qty": 1, "mrp": "20", "name": "Cad bury Dairy Milk Chocolate 18gm", "skuid": "4500541", "sku_total": 20, "image_url": "https://images.tinymart.in/product/4500541-6798.jpg", "door_id": "2", "offer_desc": "", "offer_id": "", "unit_price": 20, "tray_id": "39"}]}}', 'order_id': 'TM06202507260622162613376'} (ID: 1782125843017-0)
[2026-06-22 16:27:23,669.669 INFO    ] {'server_status': 'order-started', 'server_response': {'status': True, 'msg': 'Order Data', 'rstatus': True, 'data': {'order_id': 'TM06202507260622162613376', 'access_code': '79010480', 'bill_amount': '20', 'mobile': '7032703902', 'invoice_bill': '20', 'proposed_sku_json': [{'qty': 1, 'mrp': '20', 'name': 'Cad bury Dairy Milk Chocolate 18gm', 'skuid': '4500541', 'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'door_id': '2', 'offer_desc': '', 'offer_id': '', 'unit_price': 20, 'tray_id': '39'}]}}, 'order_id': 'TM06202507260622162613376'}
[2026-06-22 16:27:23,672.672 INFO    ] 200
[2026-06-22 16:27:23,675.675 INFO    ] {"data":{"server_status":"order-started","server_response":{"status":true,"msg":"Order Data","rstatus":true,"data":{"order_id":"TM06202507260622162613376","access_code":"79010480","bill_amount":"20","mobile":"7032703902","invoice_bill":"20","proposed_sku_json":[{"qty":1,"mrp":"20","name":"Cad bury Dairy Milk Chocolate 18gm","skuid":"4500541","sku_total":20,"image_url":"https:\/\/images.tinymart.in\/product\/4500541-6798.jpg","door_id":"2","offer_desc":"","offer_id":"","unit_price":20,"tray_id":"39"}]}},"order_id":"TM06202507260622162613376"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 16:27:23,678.678 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'server_status': 'order-started', 'server_response': {'status': True, 'msg': 'Order Data', 'rstatus': True, 'data': {'order_id': 'TM06202507260622162613376', 'access_code': '79010480', 'bill_amount': '20', 'mobile': '7032703902', 'invoice_bill': '20', 'proposed_sku_json': [{'qty': 1, 'mrp': '20', 'name': 'Cad bury Dairy Milk Chocolate 18gm', 'skuid': '4500541', 'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'door_id': '2', 'offer_desc': '', 'offer_id': '', 'unit_price': 20, 'tray_id': '39'}]}}, 'order_id': 'TM06202507260622162613376'}}
[2026-06-22 16:27:23,680.680 INFO    ] 2026-06-22 16:27:23
[2026-06-22 16:27:23,728.728 INFO    ] 200
[2026-06-22 16:27:23,731.731 INFO    ] True
[2026-06-22 16:27:23,873.873 INFO    ] 200
[2026-06-22 16:27:23,877.877 INFO    ] {"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": ""}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 16:27:23,880.880 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'status': 'False', 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}, 'rstatus': False, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'SectionStatus': {'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}}
[2026-06-22 16:27:23,882.882 INFO    ] *** process_order ***
[2026-06-22 16:27:25,069.069 INFO    ] 200
[2026-06-22 16:27:25,072.072 INFO    ] {"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": ""}, "rstatus": true, "delay": 0, "status": "True", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 16:27:25,074.074 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'delay': 0, 'SectionStatus': {'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}}
[2026-06-22 16:27:25,077.077 INFO    ] *** process_order ***
[2026-06-22 16:27:25,080.080 INFO    ] publish_status: order_id=TM06202507260622162613376
[2026-06-22 16:27:25,082.082 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622162613376
[2026-06-22 16:27:25,146.146 INFO    ] [publish_status] Message added to stream with ID: 1782125845107-0
[2026-06-22 16:27:25,148.148 INFO    ] Published to order:TM06202507260622162613376: {'server_status': 'doorOpened', 'server_response': '{"SectionMain": {"Header": "Processing Order"}, "status": "True", "rstatus": true, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "You can pull the door now.", "Header": " Your order is under process  "}, "voiceNote": "Door is open...", "delay": 0, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}}', 'order_id': 'TM06202507260622162613376'} (ID: 1782125845107-0)
[2026-06-22 16:27:26,217.217 INFO    ] 2026-06-22 16:27:26
[2026-06-22 16:27:26,220.220 INFO    ] publish_status: order_id=TM06202507260622162613376
[2026-06-22 16:27:26,222.222 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622162613376
[2026-06-22 16:27:26,301.301 INFO    ] [publish_status] Message added to stream with ID: 1782125846262-0
[2026-06-22 16:27:26,304.304 INFO    ] Published to order:TM06202507260622162613376: {'server_status': 'processOrder', 'timestamp': '2026-06-22T10:57:26.218857Z', 'server_response': '{"SectionMain": {"Header": "Processing Order"}, "status": "True", "rstatus": true, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "delay": 0, "SectionStatus": {"UI_Header": "", "Note": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}}', 'order_id': 'TM06202507260622162613376'} (ID: 1782125846262-0)
[2026-06-22 16:27:26,452.452 INFO    ] {'server_status': 'processOrder', 'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'delay': 0, 'SectionStatus': {'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}}, 'order_id': 'TM06202507260622162613376'}
[2026-06-22 16:27:26,455.455 INFO    ] 200
[2026-06-22 16:27:26,458.458 INFO    ] {"data":{"server_status":"processOrder","server_response":{"SectionMain":{"Header":"Processing Order"},"status":"true","rstatus":true,"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"voiceNote":"Please Wait","delay":0,"SectionStatus":{"UI_Header":"","Note":"","SubHeader":"Please wait while we process your order","Header":" Your order is under process  "}},"order_id":"TM06202507260622162613376"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 16:27:26,461.461 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'server_status': 'processOrder', 'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'status': 'true', 'voiceNote': 'Please Wait', 'SectionStatus': {'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}, 'rstatus': True, 'delay': 0, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}}, 'order_id': 'TM06202507260622162613376'}}
[2026-06-22 16:27:26,464.464 INFO    ] 2026-06-22 16:27:26
[2026-06-22 16:27:26,466.466 INFO    ] None
[2026-06-22 16:27:26,469.469 INFO    ] Opening Door now
[2026-06-22 16:27:26,471.471 INFO    ] Opening Door now
[2026-06-22 16:27:26,473.473 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-22 16:27:26,476.476 INFO    ] 2026-06-22 16:27:26
[2026-06-22 16:27:26,479.479 INFO    ] playing audio file
[2026-06-22 16:27:26,497.497 INFO    ] 2026-06-22 16:27:26
[2026-06-22 16:27:26,500.500 INFO    ] 2026-06-22 16:27:26
[2026-06-22 16:27:29,569.569 INFO    ] 200
[2026-06-22 16:27:29,576.576 INFO    ] {"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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Door 2 is open now"}
[2026-06-22 16:27:29,580.580 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}, 'rstatus': False, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Door 2 is open now', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2'}}
[2026-06-22 16:27:32,654.654 INFO    ] 200
[2026-06-22 16:27:32,657.657 INFO    ] {"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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2"}
[2026-06-22 16:27:32,661.661 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}, 'rstatus': False, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2'}}
[2026-06-22 16:27:35,740.740 INFO    ] 200
[2026-06-22 16:27:35,743.743 INFO    ] {"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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2"}
[2026-06-22 16:27:35,747.747 INFO    ] Please close door 2
[2026-06-22 16:27:35,751.751 INFO    ] Please close door 2
[2026-06-22 16:27:35,754.754 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-22 16:27:35,758.758 INFO    ] 2026-06-22 16:27:35
[2026-06-22 16:27:35,761.761 INFO    ] playing audio file
[2026-06-22 16:27:35,779.779 INFO    ] 2026-06-22 16:27:35
[2026-06-22 16:27:35,782.782 INFO    ] publish_status: order_id=TM06202507260622162613376
[2026-06-22 16:27:35,786.786 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622162613376
[2026-06-22 16:27:35,887.887 INFO    ] [publish_status] Message added to stream with ID: 1782125855833-0
[2026-06-22 16:27:35,890.890 INFO    ] Published to order:TM06202507260622162613376: {'server_status': 'OrderStatus', 'timestamp': '2026-06-22T10:57:35.780922Z', 'server_response': '{"SectionMain": {"Header": "Door Open"}, "status": "False", "error": {"code": 20001, "umessage": "In Progress", "tmessage": "In Progress", "data": {}}, "rstatus": false, "SectionSKU": {"skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "SectionStatus": {"UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}}', 'order_id': 'TM06202507260622162613376'} (ID: 1782125855833-0)
[2026-06-22 16:27:36,587.587 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}, 'rstatus': False, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2'}}, 'order_id': 'TM06202507260622162613376'}
[2026-06-22 16:27:36,591.591 INFO    ] 200
[2026-06-22 16:27:36,594.594 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"SectionMain":{"Header":"Door Open"},"status":"false","error":{"code":20001,"umessage":"In Progress","tmessage":"In Progress","data":[]},"rstatus":false,"SectionSKU":{"skus":[{"qty":1,"name":"Cad bury Dairy Milk Chocolate 18gm"}],"Header":"Pick the below items from the door"},"voiceNote":"Please close door 2","SectionStatus":{"UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 2"}},"order_id":"TM06202507260622162613376"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 16:27:36,598.598 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'server_status': 'OrderStatus', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': []}, 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}], 'Header': 'Pick the below items from the door'}}, 'order_id': 'TM06202507260622162613376'}}
[2026-06-22 16:27:36,602.602 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}, 'rstatus': False, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2'}}
[2026-06-22 16:27:39,675.675 INFO    ] 200
[2026-06-22 16:27:39,678.678 INFO    ] {"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"}, "rstatus": true, "delay": 100, "status": "True", "SectionMain": {"Header": "Door Closed"}, "voiceNote": "Transaction Completed"}
[2026-06-22 16:27:39,938.938 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'voiceNote': 'Transaction Completed', 'delay': 100, 'SectionStatus': {'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete '}}
[2026-06-22 16:27:39,941.941 INFO    ] 2026-06-22 16:27:39
[2026-06-22 16:27:39,944.944 INFO    ] Order Completed 
[2026-06-22 16:27:39,947.947 INFO    ] Order Completed 
[2026-06-22 16:27:39,949.949 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-22 16:27:39,952.952 INFO    ] 2026-06-22 16:27:39
[2026-06-22 16:27:39,955.955 INFO    ] playing audio file
[2026-06-22 16:27:39,973.973 INFO    ] 2026-06-22 16:27:39
[2026-06-22 16:27:39,977.977 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'voiceNote': 'Transaction Completed', 'delay': 100, 'SectionStatus': {'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete '}}
[2026-06-22 16:27:39,980.980 INFO    ] 2026-06-22 16:27:39
[2026-06-22 16:27:41,619.619 INFO    ] 200
[2026-06-22 16:27:41,622.622 INFO    ] {"skus": [{"tray_id": "39", "qty": 1, "mrp": "20", "door_id": "", "name": "Cad bury Dairy Milk Chocolate 18gm per peice", "sku_total": 20.0, "image_url": "https://images.tinymart.in/product/4500541-6798.jpg", "unit_price": "20", "skuid": "4500541"}], "anomaly": 0, "rstatus": true, "orderId": "TM06202507260622162613376", "logic": "WBL", "total_amount": 20.0, "res": "True"}
[2026-06-22 16:27:41,625.625 INFO    ] {'res': 'True', 'skus': [{'qty': 1, 'mrp': '20', 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'skuid': '4500541', 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'door_id': '', 'unit_price': '20', 'tray_id': '39'}], 'rstatus': True, 'logic': 'WBL', 'total_amount': 20.0, 'anomaly': 0, 'orderId': 'TM06202507260622162613376'}
[2026-06-22 16:27:41,628.628 INFO    ] {'res': 'True', 'skus': [{'qty': 1, 'mrp': '20', 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'skuid': '4500541', 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'door_id': '', 'unit_price': '20', 'tray_id': '39'}], 'rstatus': True, 'logic': 'WBL', 'total_amount': 20.0, 'anomaly': 0, 'orderId': 'TM06202507260622162613376'}
[2026-06-22 16:27:41,630.630 INFO    ] 2026-06-22 16:27:41
[2026-06-22 16:27:41,633.633 INFO    ] 2026-06-22 16:27:41
[2026-06-22 16:27:41,636.636 INFO    ] 20
[2026-06-22 16:27:41,638.638 INFO    ] 2026-06-22 16:27:41
[2026-06-22 16:27:41,641.641 INFO    ] 2026-06-22 16:27:41
[2026-06-22 16:27:41,644.644 INFO    ]  Your Bill Amount is 20
[2026-06-22 16:27:41,647.647 INFO    ]  Your Bill Amount is 20
[2026-06-22 16:27:41,649.649 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-06-22 16:27:41,652.652 INFO    ] 2026-06-22 16:27:41
[2026-06-22 16:27:41,655.655 INFO    ] playing audio file
[2026-06-22 16:27:41,675.675 INFO    ] 2026-06-22 16:27:41
[2026-06-22 16:27:41,679.679 INFO    ] 2026-06-22 16:27:41
[2026-06-22 16:27:41,682.682 INFO    ] publish_status: order_id=TM06202507260622162613376
[2026-06-22 16:27:41,685.685 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622162613376
[2026-06-22 16:27:41,756.756 INFO    ] [publish_status] Message added to stream with ID: 1782125861717-0
[2026-06-22 16:27:41,758.758 INFO    ] Published to order:TM06202507260622162613376: {'server_status': 'invoiceOrder', 'timestamp': '2026-06-22T10:57:41.680685Z', 'server_response': '{"res": "True", "skus": [{"qty": 1, "mrp": "20", "name": "Cad bury Dairy Milk Chocolate 18gm per peice", "skuid": "4500541", "sku_total": 20.0, "image_url": "https://images.tinymart.in/product/4500541-6798.jpg", "door_id": "", "unit_price": "20", "tray_id": "39"}], "rstatus": true, "logic": "WBL", "total_amount": 20.0, "anomaly": 0, "orderId": "TM06202507260622162613376"}', 'order_id': 'TM06202507260622162613376'} (ID: 1782125861717-0)
[2026-06-22 16:27:42,327.327 INFO    ] {'server_status': 'invoiceOrder', 'server_response': {'res': 'True', 'skus': [{'qty': 1, 'mrp': '20', 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'skuid': '4500541', 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'door_id': '', 'unit_price': '20', 'tray_id': '39'}], 'rstatus': True, 'logic': 'WBL', 'total_amount': 20.0, 'anomaly': 0, 'orderId': 'TM06202507260622162613376'}, 'order_id': 'TM06202507260622162613376'}
[2026-06-22 16:27:42,330.330 INFO    ] 200
[2026-06-22 16:27:42,332.332 INFO    ] {"data":{"server_status":"invoiceOrder","server_response":{"res":"true","skus":[{"qty":1,"mrp":"20","name":"Cad bury Dairy Milk Chocolate 18gm per peice","skuid":"4500541","sku_total":20,"image_url":"https:\/\/images.tinymart.in\/product\/4500541-6798.jpg","door_id":"","unit_price":"20","tray_id":"39"}],"rstatus":true,"logic":"WBL","total_amount":20,"anomaly":0,"orderId":"TM06202507260622162613376"},"order_id":"TM06202507260622162613376"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 16:27:42,335.335 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'server_status': 'invoiceOrder', 'server_response': {'res': 'true', 'skus': [{'qty': 1, 'mrp': '20', 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'skuid': '4500541', 'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'door_id': '', 'unit_price': '20', 'tray_id': '39'}], 'logic': 'WBL', 'rstatus': True, 'orderId': 'TM06202507260622162613376', 'anomaly': 0, 'total_amount': 20}, 'order_id': 'TM06202507260622162613376'}}
[2026-06-22 16:27:42,338.338 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'server_status': 'invoiceOrder', 'server_response': {'res': 'true', 'skus': [{'qty': 1, 'mrp': '20', 'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'skuid': '4500541', 'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'door_id': '', 'unit_price': '20', 'tray_id': '39'}], 'logic': 'WBL', 'rstatus': True, 'orderId': 'TM06202507260622162613376', 'anomaly': 0, 'total_amount': 20}, 'order_id': 'TM06202507260622162613376'}}
[2026-06-22 16:27:42,341.341 INFO    ] 2026-06-22 16:27:42
[2026-06-22 16:27:45,861.861 INFO    ] 200
[2026-06-22 16:27:45,863.863 INFO    ] {"orders_data_synced": [], "order_items": [], "orders_data": [], "orders_synced": [], "tray_synced": ["TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376", "TM06202507260622162613376"], "order_items_synced": ["TM06202507260622162613376_0"], "orders": [], "status": true, "tray_sync": []}
[2026-06-22 16:27:45,866.866 INFO    ] 2026-06-22 16:27:45
[2026-06-22 16:27:45,988.988 INFO    ] 200
[2026-06-22 16:27:45,990.990 INFO    ] True
[2026-06-22 16:27:45,993.993 INFO    ] cleanup_start_order_file_after_processing: order_id=TM06202507260622162613376
[2026-06-22 16:27:45,996.996 INFO    ] start order file deleted
[2026-06-22 16:27:45,999.999 INFO    ] Checking for system updates...
[2026-06-22 16:27:46,034.034 INFO    ] 200
[2026-06-22 16:27:46,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:27:46,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:27:46,092.092 INFO    ] No update needed
[2026-06-22 16:27:46,094.094 INFO    ] Checking for camera pi updates...
[2026-06-22 16:27:46,133.133 INFO    ] 200
[2026-06-22 16:27:46,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:27:46,176.176 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:27:46,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:27:46,462.462 INFO    ] No camera update needed
[2026-06-22 16:27:46,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:27:46,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:27:46,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:27:46,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:27:48,518.518 INFO    ] ================================================
[2026-06-22 16:27:48,533.533 INFO    ] Launching Daemon at Mon Jun 22 16:27:48 IST 2026
[2026-06-22 16:27:48,544.544 INFO    ] ================================================
[2026-06-22 16:27:49,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:27:49
[2026-06-22 16:27:49,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:27:49,879.879 INFO    ] Initializing speech engine...
[2026-06-22 16:27:49,888.888 INFO    ] 2026-06-22 16:27:49
[2026-06-22 16:27:50,189.189 INFO    ] 2026-06-22 16:27:50
[2026-06-22 16:27:50,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:27:50,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:27:50,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:27:50,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:27:50,792.792 INFO    ] time= 22/06/2026 16:27:50
[2026-06-22 16:27:50,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:27:50,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:27:50,995.995 INFO    ] No existing commands found in stream
[2026-06-22 16:27:56,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:27:56,023.023 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-22 16:27:57,488.488 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:27:57,491.491 INFO    ] Checking for system updates...
[2026-06-22 16:27:57,532.532 INFO    ] 200
[2026-06-22 16:27:57,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:27:57,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:27:57,598.598 INFO    ] No update needed
[2026-06-22 16:27:57,600.600 INFO    ] Checking for camera pi updates...
[2026-06-22 16:27:57,639.639 INFO    ] 200
[2026-06-22 16:27:57,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:27:57,683.683 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:27:57,765.765 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:27:57,768.768 INFO    ] No camera update needed
[2026-06-22 16:27:57,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:27:57,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:27:57,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:27:57,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:27:59,829.829 INFO    ] ================================================
[2026-06-22 16:27:59,844.844 INFO    ] Launching Daemon at Mon Jun 22 16:27:59 IST 2026
[2026-06-22 16:27:59,855.855 INFO    ] ================================================
[2026-06-22 16:28:00,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:28:00
[2026-06-22 16:28:01,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:28:01,289.289 INFO    ] Initializing speech engine...
[2026-06-22 16:28:01,294.294 INFO    ] 2026-06-22 16:28:01
[2026-06-22 16:28:01,720.720 INFO    ] 2026-06-22 16:28:01
[2026-06-22 16:28:01,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:28:02,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:28:02,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:28:02,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:28:02,213.213 INFO    ] time= 22/06/2026 16:28:02
[2026-06-22 16:28:02,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:28:02,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:28:02,338.338 INFO    ] No existing commands found in stream
[2026-06-22 16:28:07,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:28:07,367.367 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-22 16:28:08,792.792 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:28:08,795.795 INFO    ] Checking for system updates...
[2026-06-22 16:28:08,831.831 INFO    ] 200
[2026-06-22 16:28:08,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:28:08,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:28:08,897.897 INFO    ] No update needed
[2026-06-22 16:28:08,900.900 INFO    ] Checking for camera pi updates...
[2026-06-22 16:28:08,933.933 INFO    ] 200
[2026-06-22 16:28:08,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:28:08,977.977 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:28:09,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:28:09,061.061 INFO    ] No camera update needed
[2026-06-22 16:28:09,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:28:09,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:28:09,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:28:09,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:28:11,117.117 INFO    ] ================================================
[2026-06-22 16:28:11,133.133 INFO    ] Launching Daemon at Mon Jun 22 16:28:11 IST 2026
[2026-06-22 16:28:11,144.144 INFO    ] ================================================
[2026-06-22 16:28:11,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:28:11
[2026-06-22 16:28:12,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:28:12,520.520 INFO    ] Initializing speech engine...
[2026-06-22 16:28:12,527.527 INFO    ] 2026-06-22 16:28:12
[2026-06-22 16:28:12,791.791 INFO    ] 2026-06-22 16:28:12
[2026-06-22 16:28:12,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:28:13,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:28:13,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:28:13,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:28:13,364.364 INFO    ] time= 22/06/2026 16:28:13
[2026-06-22 16:28:13,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:28:13,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:28:13,528.528 INFO    ] No existing commands found in stream
[2026-06-22 16:28:18,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:28:18,566.566 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-22 16:28:21,291.291 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:28:21,294.294 INFO    ] Checking for system updates...
[2026-06-22 16:28:21,332.332 INFO    ] 200
[2026-06-22 16:28:21,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:28:21,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:28:21,401.401 INFO    ] No update needed
[2026-06-22 16:28:21,404.404 INFO    ] Checking for camera pi updates...
[2026-06-22 16:28:21,439.439 INFO    ] 200
[2026-06-22 16:28:21,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:28:21,485.485 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:28:21,565.565 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:28:21,568.568 INFO    ] No camera update needed
[2026-06-22 16:28:21,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:28:21,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:28:21,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:28:21,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:28:23,629.629 INFO    ] ================================================
[2026-06-22 16:28:23,644.644 INFO    ] Launching Daemon at Mon Jun 22 16:28:23 IST 2026
[2026-06-22 16:28:23,654.654 INFO    ] ================================================
[2026-06-22 16:28:24,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:28:24
[2026-06-22 16:28:24,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:28:25,020.020 INFO    ] Initializing speech engine...
[2026-06-22 16:28:25,029.029 INFO    ] 2026-06-22 16:28:25
[2026-06-22 16:28:25,309.309 INFO    ] 2026-06-22 16:28:25
[2026-06-22 16:28:25,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:28:25,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:28:25,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:28:25,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:28:25,819.819 INFO    ] time= 22/06/2026 16:28:25
[2026-06-22 16:28:25,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:28:25,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:28:25,997.997 INFO    ] No existing commands found in stream
[2026-06-22 16:28:31,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:28:31,026.026 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-22 16:28:35,068.068 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:28:35,070.070 INFO    ] Checking for system updates...
[2026-06-22 16:28:35,111.111 INFO    ] 200
[2026-06-22 16:28:35,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:28:35,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:28:35,184.184 INFO    ] No update needed
[2026-06-22 16:28:35,187.187 INFO    ] Checking for camera pi updates...
[2026-06-22 16:28:35,233.233 INFO    ] 200
[2026-06-22 16:28:35,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:28:35,281.281 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:28:35,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:28:35,391.391 INFO    ] No camera update needed
[2026-06-22 16:28:35,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:28:35,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:28:35,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:28:35,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:28:37,449.449 INFO    ] ================================================
[2026-06-22 16:28:37,464.464 INFO    ] Launching Daemon at Mon Jun 22 16:28:37 IST 2026
[2026-06-22 16:28:37,475.475 INFO    ] ================================================
[2026-06-22 16:28:38,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:28:38
[2026-06-22 16:28:38,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:28:39,070.070 INFO    ] Initializing speech engine...
[2026-06-22 16:28:39,083.083 INFO    ] 2026-06-22 16:28:39
[2026-06-22 16:28:39,410.410 INFO    ] 2026-06-22 16:28:39
[2026-06-22 16:28:39,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:28:39,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:28:39,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:28:39,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:28:39,932.932 INFO    ] time= 22/06/2026 16:28:39
[2026-06-22 16:28:39,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:28:39,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:28:40,095.095 INFO    ] No existing commands found in stream
[2026-06-22 16:28:45,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:28:45,127.127 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-22 16:28:49,372.372 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:28:49,375.375 INFO    ] Checking for system updates...
[2026-06-22 16:28:49,416.416 INFO    ] 200
[2026-06-22 16:28:49,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:28:49,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:28:49,473.473 INFO    ] No update needed
[2026-06-22 16:28:49,475.475 INFO    ] Checking for camera pi updates...
[2026-06-22 16:28:49,509.509 INFO    ] 200
[2026-06-22 16:28:49,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:28:49,554.554 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:28:49,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:28:49,728.728 INFO    ] No camera update needed
[2026-06-22 16:28:49,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:28:49,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:28:49,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:28:49,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:28:51,783.783 INFO    ] ================================================
[2026-06-22 16:28:51,798.798 INFO    ] Launching Daemon at Mon Jun 22 16:28:51 IST 2026
[2026-06-22 16:28:51,809.809 INFO    ] ================================================
[2026-06-22 16:28:52,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:28:52
[2026-06-22 16:28:52,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:28:53,262.262 INFO    ] Initializing speech engine...
[2026-06-22 16:28:53,268.268 INFO    ] 2026-06-22 16:28:53
[2026-06-22 16:28:53,530.530 INFO    ] 2026-06-22 16:28:53
[2026-06-22 16:28:53,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:28:53,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:28:53,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:28:53,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:28:53,983.983 INFO    ] time= 22/06/2026 16:28:53
[2026-06-22 16:28:53,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:28:54,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:28:54,074.074 INFO    ] No existing commands found in stream
[2026-06-22 16:28:59,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:28:59,107.107 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-22 16:29:00,446.446 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:29:00,447.447 INFO    ] Checking for system updates...
[2026-06-22 16:29:00,468.468 INFO    ] 200
[2026-06-22 16:29:00,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:29:00,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:29:00,504.504 INFO    ] No update needed
[2026-06-22 16:29:00,506.506 INFO    ] Checking for camera pi updates...
[2026-06-22 16:29:00,545.545 INFO    ] 200
[2026-06-22 16:29:00,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:29:00,595.595 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:29:00,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:29:00,694.694 INFO    ] No camera update needed
[2026-06-22 16:29:00,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:29:00,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:29:00,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:29:00,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:29:02,753.753 INFO    ] ================================================
[2026-06-22 16:29:02,772.772 INFO    ] Launching Daemon at Mon Jun 22 16:29:02 IST 2026
[2026-06-22 16:29:02,786.786 INFO    ] ================================================
[2026-06-22 16:29:03,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:29:03
[2026-06-22 16:29:03,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:29:04,221.221 INFO    ] Initializing speech engine...
[2026-06-22 16:29:04,227.227 INFO    ] 2026-06-22 16:29:04
[2026-06-22 16:29:04,524.524 INFO    ] 2026-06-22 16:29:04
[2026-06-22 16:29:04,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:29:04,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:29:04,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:29:05,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:29:05,028.028 INFO    ] time= 22/06/2026 16:29:05
[2026-06-22 16:29:05,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:29:05,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:29:05,234.234 INFO    ] No existing commands found in stream
[2026-06-22 16:29:10,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:29:10,248.248 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-22 16:29:14,688.688 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:29:14,690.690 INFO    ] Checking for system updates...
[2026-06-22 16:29:14,727.727 INFO    ] 200
[2026-06-22 16:29:14,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:29:14,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:29:14,784.784 INFO    ] No update needed
[2026-06-22 16:29:14,786.786 INFO    ] Checking for camera pi updates...
[2026-06-22 16:29:14,825.825 INFO    ] 200
[2026-06-22 16:29:14,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:29:14,867.867 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:29:14,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:29:14,950.950 INFO    ] No camera update needed
[2026-06-22 16:29:14,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:29:14,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:29:14,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:29:14,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:29:17,006.006 INFO    ] ================================================
[2026-06-22 16:29:17,022.022 INFO    ] Launching Daemon at Mon Jun 22 16:29:17 IST 2026
[2026-06-22 16:29:17,033.033 INFO    ] ================================================
[2026-06-22 16:29:17,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:29:17
[2026-06-22 16:29:18,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:29:18,371.371 INFO    ] Initializing speech engine...
[2026-06-22 16:29:18,379.379 INFO    ] 2026-06-22 16:29:18
[2026-06-22 16:29:18,631.631 INFO    ] 2026-06-22 16:29:18
[2026-06-22 16:29:18,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:29:18,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:29:18,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:29:19,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:29:19,011.011 INFO    ] time= 22/06/2026 16:29:19
[2026-06-22 16:29:19,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:29:19,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:29:19,212.212 INFO    ] No existing commands found in stream
[2026-06-22 16:29:24,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:29:24,225.225 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-22 16:29:28,262.262 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:29:28,264.264 INFO    ] Checking for system updates...
[2026-06-22 16:29:28,285.285 INFO    ] 200
[2026-06-22 16:29:28,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:29:28,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:29:28,319.319 INFO    ] No update needed
[2026-06-22 16:29:28,320.320 INFO    ] Checking for camera pi updates...
[2026-06-22 16:29:28,340.340 INFO    ] 200
[2026-06-22 16:29:28,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:29:28,377.377 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:29:28,484.484 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:29:28,487.487 INFO    ] No camera update needed
[2026-06-22 16:29:28,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:29:28,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:29:28,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:29:28,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:29:30,548.548 INFO    ] ================================================
[2026-06-22 16:29:30,564.564 INFO    ] Launching Daemon at Mon Jun 22 16:29:30 IST 2026
[2026-06-22 16:29:30,575.575 INFO    ] ================================================
[2026-06-22 16:29:31,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:29:31
[2026-06-22 16:29:31,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:29:32,175.175 INFO    ] Initializing speech engine...
[2026-06-22 16:29:32,187.187 INFO    ] 2026-06-22 16:29:32
[2026-06-22 16:29:32,490.490 INFO    ] 2026-06-22 16:29:32
[2026-06-22 16:29:32,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:29:32,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:29:32,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:29:32,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:29:32,986.986 INFO    ] time= 22/06/2026 16:29:32
[2026-06-22 16:29:33,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:29:33,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:29:33,205.205 INFO    ] No existing commands found in stream
[2026-06-22 16:29:38,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:29:38,227.227 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-22 16:29:41,551.551 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:29:41,552.552 INFO    ] Checking for system updates...
[2026-06-22 16:29:41,583.583 INFO    ] 200
[2026-06-22 16:29:41,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:29:41,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:29:41,650.650 INFO    ] No update needed
[2026-06-22 16:29:41,653.653 INFO    ] Checking for camera pi updates...
[2026-06-22 16:29:41,692.692 INFO    ] 200
[2026-06-22 16:29:41,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:29:41,739.739 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:29:41,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:29:41,840.840 INFO    ] No camera update needed
[2026-06-22 16:29:41,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:29:41,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:29:41,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:29:41,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:29:43,898.898 INFO    ] ================================================
[2026-06-22 16:29:43,913.913 INFO    ] Launching Daemon at Mon Jun 22 16:29:43 IST 2026
[2026-06-22 16:29:43,924.924 INFO    ] ================================================
[2026-06-22 16:29:44,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:29:44
[2026-06-22 16:29:45,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:29:45,336.336 INFO    ] Initializing speech engine...
[2026-06-22 16:29:45,349.349 INFO    ] 2026-06-22 16:29:45
[2026-06-22 16:29:45,620.620 INFO    ] 2026-06-22 16:29:45
[2026-06-22 16:29:45,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:29:45,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:29:45,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:29:46,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:29:46,101.101 INFO    ] time= 22/06/2026 16:29:46
[2026-06-22 16:29:46,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:29:46,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:29:46,326.326 INFO    ] No existing commands found in stream
[2026-06-22 16:29:51,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:29:51,355.355 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-22 16:29:52,226.226 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:29:52,228.228 INFO    ] Checking for system updates...
[2026-06-22 16:29:52,248.248 INFO    ] 200
[2026-06-22 16:29:52,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:29:52,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:29:52,298.298 INFO    ] No update needed
[2026-06-22 16:29:52,300.300 INFO    ] Checking for camera pi updates...
[2026-06-22 16:29:52,334.334 INFO    ] 200
[2026-06-22 16:29:52,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:29:52,382.382 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:29:52,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:29:52,464.464 INFO    ] No camera update needed
[2026-06-22 16:29:52,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:29:52,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:29:52,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:29:52,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:29:54,521.521 INFO    ] ================================================
[2026-06-22 16:29:54,537.537 INFO    ] Launching Daemon at Mon Jun 22 16:29:54 IST 2026
[2026-06-22 16:29:54,548.548 INFO    ] ================================================
[2026-06-22 16:29:55,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:29:55
[2026-06-22 16:29:55,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:29:55,891.891 INFO    ] Initializing speech engine...
[2026-06-22 16:29:55,904.904 INFO    ] 2026-06-22 16:29:55
[2026-06-22 16:29:56,152.152 INFO    ] 2026-06-22 16:29:56
[2026-06-22 16:29:56,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:29:56,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:29:56,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:29:56,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:29:56,635.635 INFO    ] time= 22/06/2026 16:29:56
[2026-06-22 16:29:56,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:29:56,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:29:56,875.875 INFO    ] No existing commands found in stream
[2026-06-22 16:30:01,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:30:01,890.890 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-22 16:30:03,078.078 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:30:03,082.082 INFO    ] Checking for system updates...
[2026-06-22 16:30:03,142.142 INFO    ] 200
[2026-06-22 16:30:03,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:30:03,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:30:03,222.222 INFO    ] No update needed
[2026-06-22 16:30:03,226.226 INFO    ] Checking for camera pi updates...
[2026-06-22 16:30:03,283.283 INFO    ] 200
[2026-06-22 16:30:03,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:30:03,349.349 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:30:03,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:30:03,407.407 INFO    ] No camera update needed
[2026-06-22 16:30:03,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:30:03,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:30:03,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:30:03,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:30:05,465.465 INFO    ] ================================================
[2026-06-22 16:30:05,481.481 INFO    ] Launching Daemon at Mon Jun 22 16:30:05 IST 2026
[2026-06-22 16:30:05,492.492 INFO    ] ================================================
[2026-06-22 16:30:06,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:30:06
[2026-06-22 16:30:06,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:30:07,009.009 INFO    ] Initializing speech engine...
[2026-06-22 16:30:07,027.027 INFO    ] 2026-06-22 16:30:07
[2026-06-22 16:30:07,280.280 INFO    ] 2026-06-22 16:30:07
[2026-06-22 16:30:07,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:30:07,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:30:07,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:30:07,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:30:07,760.760 INFO    ] time= 22/06/2026 16:30:07
[2026-06-22 16:30:07,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:30:07,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:30:08,006.006 INFO    ] No existing commands found in stream
[2026-06-22 16:30:13,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:30:13,022.022 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-22 16:30:15,997.997 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:30:16,000.000 INFO    ] Checking for system updates...
[2026-06-22 16:30:16,036.036 INFO    ] 200
[2026-06-22 16:30:16,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:30:16,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:30:16,101.101 INFO    ] No update needed
[2026-06-22 16:30:16,103.103 INFO    ] Checking for camera pi updates...
[2026-06-22 16:30:16,137.137 INFO    ] 200
[2026-06-22 16:30:16,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:30:16,180.180 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:30:16,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:30:16,269.269 INFO    ] No camera update needed
[2026-06-22 16:30:16,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:30:16,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:30:16,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:30:16,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:30:18,326.326 INFO    ] ================================================
[2026-06-22 16:30:18,341.341 INFO    ] Launching Daemon at Mon Jun 22 16:30:18 IST 2026
[2026-06-22 16:30:18,352.352 INFO    ] ================================================
[2026-06-22 16:30:18,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:30:18
[2026-06-22 16:30:19,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:30:19,795.795 INFO    ] Initializing speech engine...
[2026-06-22 16:30:19,803.803 INFO    ] 2026-06-22 16:30:19
[2026-06-22 16:30:20,104.104 INFO    ] 2026-06-22 16:30:20
[2026-06-22 16:30:20,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:30:20,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:30:20,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:30:20,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:30:20,531.531 INFO    ] time= 22/06/2026 16:30:20
[2026-06-22 16:30:20,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:30:20,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:30:20,714.714 INFO    ] No existing commands found in stream
[2026-06-22 16:30:25,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:30:25,748.748 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-22 16:30:28,281.281 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:30:28,284.284 INFO    ] Checking for system updates...
[2026-06-22 16:30:28,325.325 INFO    ] 200
[2026-06-22 16:30:28,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:30:28,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:30:28,386.386 INFO    ] No update needed
[2026-06-22 16:30:28,389.389 INFO    ] Checking for camera pi updates...
[2026-06-22 16:30:28,427.427 INFO    ] 200
[2026-06-22 16:30:28,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:30:28,477.477 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:30:28,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:30:28,542.542 INFO    ] No camera update needed
[2026-06-22 16:30:28,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:30:28,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:30:28,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:30:28,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:30:30,601.601 INFO    ] ================================================
[2026-06-22 16:30:30,617.617 INFO    ] Launching Daemon at Mon Jun 22 16:30:30 IST 2026
[2026-06-22 16:30:30,627.627 INFO    ] ================================================
[2026-06-22 16:30:31,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:30:31
[2026-06-22 16:30:31,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:30:32,088.088 INFO    ] Initializing speech engine...
[2026-06-22 16:30:32,095.095 INFO    ] 2026-06-22 16:30:32
[2026-06-22 16:30:32,356.356 INFO    ] 2026-06-22 16:30:32
[2026-06-22 16:30:32,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:30:32,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:30:32,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:30:32,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:30:32,882.882 INFO    ] time= 22/06/2026 16:30:32
[2026-06-22 16:30:32,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:30:32,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:30:33,053.053 INFO    ] No existing commands found in stream
[2026-06-22 16:30:38,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:30:38,088.088 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-22 16:30:39,540.540 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:30:39,543.543 INFO    ] Checking for system updates...
[2026-06-22 16:30:39,579.579 INFO    ] 200
[2026-06-22 16:30:39,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:30:39,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:30:39,637.637 INFO    ] No update needed
[2026-06-22 16:30:39,639.639 INFO    ] Checking for camera pi updates...
[2026-06-22 16:30:39,673.673 INFO    ] 200
[2026-06-22 16:30:39,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:30:39,716.716 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:30:39,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:30:39,800.800 INFO    ] No camera update needed
[2026-06-22 16:30:39,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:30:39,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:30:39,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:30:39,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:30:41,856.856 INFO    ] ================================================
[2026-06-22 16:30:41,873.873 INFO    ] Launching Daemon at Mon Jun 22 16:30:41 IST 2026
[2026-06-22 16:30:41,885.885 INFO    ] ================================================
[2026-06-22 16:30:42,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:30:42
[2026-06-22 16:30:43,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:30:43,480.480 INFO    ] Initializing speech engine...
[2026-06-22 16:30:43,488.488 INFO    ] 2026-06-22 16:30:43
[2026-06-22 16:30:43,772.772 INFO    ] 2026-06-22 16:30:43
[2026-06-22 16:30:43,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:30:44,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:30:44,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:30:44,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:30:44,319.319 INFO    ] time= 22/06/2026 16:30:44
[2026-06-22 16:30:44,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:30:44,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:30:44,462.462 INFO    ] No existing commands found in stream
[2026-06-22 16:30:49,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:30:49,495.495 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-22 16:30:52,187.187 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:30:52,189.189 INFO    ] Checking for system updates...
[2026-06-22 16:30:52,224.224 INFO    ] 200
[2026-06-22 16:30:52,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:30:52,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:30:52,284.284 INFO    ] No update needed
[2026-06-22 16:30:52,288.288 INFO    ] Checking for camera pi updates...
[2026-06-22 16:30:52,326.326 INFO    ] 200
[2026-06-22 16:30:52,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:30:52,373.373 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:30:52,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:30:52,641.641 INFO    ] No camera update needed
[2026-06-22 16:30:52,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:30:52,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:30:52,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:30:52,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:30:54,696.696 INFO    ] ================================================
[2026-06-22 16:30:54,712.712 INFO    ] Launching Daemon at Mon Jun 22 16:30:54 IST 2026
[2026-06-22 16:30:54,723.723 INFO    ] ================================================
[2026-06-22 16:30:55,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:30:55
[2026-06-22 16:30:55,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:30:56,157.157 INFO    ] Initializing speech engine...
[2026-06-22 16:30:56,163.163 INFO    ] 2026-06-22 16:30:56
[2026-06-22 16:30:56,427.427 INFO    ] 2026-06-22 16:30:56
[2026-06-22 16:30:56,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:30:56,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:30:56,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:30:57,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:30:57,181.181 INFO    ] time= 22/06/2026 16:30:57
[2026-06-22 16:30:57,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:30:57,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:30:57,421.421 INFO    ] No existing commands found in stream
[2026-06-22 16:31:02,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:31:02,436.436 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-22 16:31:04,525.525 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:31:04,528.528 INFO    ] Checking for system updates...
[2026-06-22 16:31:04,566.566 INFO    ] 200
[2026-06-22 16:31:04,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:31:04,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:31:04,631.631 INFO    ] No update needed
[2026-06-22 16:31:04,634.634 INFO    ] Checking for camera pi updates...
[2026-06-22 16:31:04,671.671 INFO    ] 200
[2026-06-22 16:31:04,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:31:04,716.716 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:31:04,818.818 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:31:04,821.821 INFO    ] No camera update needed
[2026-06-22 16:31:04,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:31:04,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:31:04,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:31:04,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:31:06,881.881 INFO    ] ================================================
[2026-06-22 16:31:06,897.897 INFO    ] Launching Daemon at Mon Jun 22 16:31:06 IST 2026
[2026-06-22 16:31:06,908.908 INFO    ] ================================================
[2026-06-22 16:31:07,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:31:07
[2026-06-22 16:31:08,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:31:08,503.503 INFO    ] Initializing speech engine...
[2026-06-22 16:31:08,515.515 INFO    ] 2026-06-22 16:31:08
[2026-06-22 16:31:08,790.790 INFO    ] 2026-06-22 16:31:08
[2026-06-22 16:31:08,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:31:09,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:31:09,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:31:09,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:31:09,751.751 INFO    ] time= 22/06/2026 16:31:09
[2026-06-22 16:31:09,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:31:09,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:31:09,930.930 INFO    ] No existing commands found in stream
[2026-06-22 16:31:14,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:31:14,948.948 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-22 16:31:18,271.271 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:31:18,274.274 INFO    ] Checking for system updates...
[2026-06-22 16:31:18,313.313 INFO    ] 200
[2026-06-22 16:31:18,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:31:18,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:31:18,382.382 INFO    ] No update needed
[2026-06-22 16:31:18,385.385 INFO    ] Checking for camera pi updates...
[2026-06-22 16:31:18,423.423 INFO    ] 200
[2026-06-22 16:31:18,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:31:18,476.476 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:31:18,557.557 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:31:18,560.560 INFO    ] No camera update needed
[2026-06-22 16:31:18,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:31:18,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:31:18,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:31:18,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:31:20,620.620 INFO    ] ================================================
[2026-06-22 16:31:20,637.637 INFO    ] Launching Daemon at Mon Jun 22 16:31:20 IST 2026
[2026-06-22 16:31:20,649.649 INFO    ] ================================================
[2026-06-22 16:31:21,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:31:21
[2026-06-22 16:31:21,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:31:22,163.163 INFO    ] Initializing speech engine...
[2026-06-22 16:31:22,173.173 INFO    ] 2026-06-22 16:31:22
[2026-06-22 16:31:22,432.432 INFO    ] 2026-06-22 16:31:22
[2026-06-22 16:31:22,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:31:23,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:31:23,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:31:23,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:31:23,979.979 INFO    ] time= 22/06/2026 16:31:23
[2026-06-22 16:31:23,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:31:23,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:31:24,339.339 INFO    ] No existing commands found in stream
[2026-06-22 16:31:29,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:31:29,353.353 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-22 16:31:33,811.811 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:31:33,814.814 INFO    ] Checking for system updates...
[2026-06-22 16:31:33,854.854 INFO    ] 200
[2026-06-22 16:31:33,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:31:33,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:31:33,924.924 INFO    ] No update needed
[2026-06-22 16:31:33,927.927 INFO    ] Checking for camera pi updates...
[2026-06-22 16:31:33,963.963 INFO    ] 200
[2026-06-22 16:31:33,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:31:34,017.017 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:31:34,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:31:34,109.109 INFO    ] No camera update needed
[2026-06-22 16:31:34,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:31:34,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:31:34,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:31:34,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:31:36,172.172 INFO    ] ================================================
[2026-06-22 16:31:36,188.188 INFO    ] Launching Daemon at Mon Jun 22 16:31:36 IST 2026
[2026-06-22 16:31:36,200.200 INFO    ] ================================================
[2026-06-22 16:31:36,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:31:36
[2026-06-22 16:31:37,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:31:37,690.690 INFO    ] Initializing speech engine...
[2026-06-22 16:31:37,700.700 INFO    ] 2026-06-22 16:31:37
[2026-06-22 16:31:37,966.966 INFO    ] 2026-06-22 16:31:37
[2026-06-22 16:31:38,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:31:38,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:31:38,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:31:38,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:31:38,538.538 INFO    ] time= 22/06/2026 16:31:38
[2026-06-22 16:31:38,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:31:38,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:31:38,680.680 INFO    ] No existing commands found in stream
[2026-06-22 16:31:43,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:31:43,704.704 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-22 16:31:49,592.592 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:31:49,596.596 INFO    ] Checking for system updates...
[2026-06-22 16:31:49,633.633 INFO    ] 200
[2026-06-22 16:31:49,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:31:49,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:31:49,695.695 INFO    ] No update needed
[2026-06-22 16:31:49,697.697 INFO    ] Checking for camera pi updates...
[2026-06-22 16:31:49,717.717 INFO    ] 200
[2026-06-22 16:31:49,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:31:49,743.743 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:31:49,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:31:49,809.809 INFO    ] No camera update needed
[2026-06-22 16:31:49,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:31:49,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:31:49,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:31:49,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:31:51,871.871 INFO    ] ================================================
[2026-06-22 16:31:51,888.888 INFO    ] Launching Daemon at Mon Jun 22 16:31:51 IST 2026
[2026-06-22 16:31:51,902.902 INFO    ] ================================================
[2026-06-22 16:31:52,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:31:52
[2026-06-22 16:31:53,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:31:53,474.474 INFO    ] Initializing speech engine...
[2026-06-22 16:31:53,484.484 INFO    ] 2026-06-22 16:31:53
[2026-06-22 16:31:53,757.757 INFO    ] 2026-06-22 16:31:53
[2026-06-22 16:31:53,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:31:54,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:31:54,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:31:54,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:31:54,274.274 INFO    ] time= 22/06/2026 16:31:54
[2026-06-22 16:31:54,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:31:54,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:31:54,473.473 INFO    ] No existing commands found in stream
[2026-06-22 16:31:59,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:31:59,505.505 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-22 16:32:02,964.964 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:32:02,968.968 INFO    ] Checking for system updates...
[2026-06-22 16:32:03,009.009 INFO    ] 200
[2026-06-22 16:32:03,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:32:03,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:32:03,078.078 INFO    ] No update needed
[2026-06-22 16:32:03,081.081 INFO    ] Checking for camera pi updates...
[2026-06-22 16:32:03,123.123 INFO    ] 200
[2026-06-22 16:32:03,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:32:03,187.187 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:32:03,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:32:03,276.276 INFO    ] No camera update needed
[2026-06-22 16:32:03,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:32:03,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:32:03,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:32:03,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:32:05,353.353 INFO    ] ================================================
[2026-06-22 16:32:05,368.368 INFO    ] Launching Daemon at Mon Jun 22 16:32:05 IST 2026
[2026-06-22 16:32:05,379.379 INFO    ] ================================================
[2026-06-22 16:32:05,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:32:05
[2026-06-22 16:32:06,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:32:06,912.912 INFO    ] Initializing speech engine...
[2026-06-22 16:32:06,934.934 INFO    ] 2026-06-22 16:32:06
[2026-06-22 16:32:07,187.187 INFO    ] 2026-06-22 16:32:07
[2026-06-22 16:32:07,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:32:07,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:32:07,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:32:07,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:32:07,733.733 INFO    ] time= 22/06/2026 16:32:07
[2026-06-22 16:32:07,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:32:07,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:32:07,910.910 INFO    ] No existing commands found in stream
[2026-06-22 16:32:12,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:32:12,928.928 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-22 16:32:13,536.536 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:32:13,537.537 INFO    ] Checking for system updates...
[2026-06-22 16:32:13,557.557 INFO    ] 200
[2026-06-22 16:32:13,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:32:13,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:32:13,593.593 INFO    ] No update needed
[2026-06-22 16:32:13,594.594 INFO    ] Checking for camera pi updates...
[2026-06-22 16:32:13,619.619 INFO    ] 200
[2026-06-22 16:32:13,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:32:13,662.662 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:32:13,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:32:13,743.743 INFO    ] No camera update needed
[2026-06-22 16:32:13,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:32:13,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:32:13,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:32:13,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:32:15,798.798 INFO    ] ================================================
[2026-06-22 16:32:15,813.813 INFO    ] Launching Daemon at Mon Jun 22 16:32:15 IST 2026
[2026-06-22 16:32:15,824.824 INFO    ] ================================================
[2026-06-22 16:32:16,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:32:16
[2026-06-22 16:32:17,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:32:17,280.280 INFO    ] Initializing speech engine...
[2026-06-22 16:32:17,289.289 INFO    ] 2026-06-22 16:32:17
[2026-06-22 16:32:17,548.548 INFO    ] 2026-06-22 16:32:17
[2026-06-22 16:32:17,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:32:17,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:32:17,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:32:17,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:32:18,026.026 INFO    ] time= 22/06/2026 16:32:17
[2026-06-22 16:32:18,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:32:18,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:32:18,241.241 INFO    ] No existing commands found in stream
[2026-06-22 16:32:23,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:32:23,260.260 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-22 16:32:26,418.418 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:32:26,421.421 INFO    ] Checking for system updates...
[2026-06-22 16:32:26,460.460 INFO    ] 200
[2026-06-22 16:32:26,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:32:26,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:32:26,519.519 INFO    ] No update needed
[2026-06-22 16:32:26,522.522 INFO    ] Checking for camera pi updates...
[2026-06-22 16:32:26,557.557 INFO    ] 200
[2026-06-22 16:32:26,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:32:26,600.600 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:32:26,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:32:26,670.670 INFO    ] No camera update needed
[2026-06-22 16:32:26,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:32:26,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:32:26,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:32:26,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:32:28,727.727 INFO    ] ================================================
[2026-06-22 16:32:28,742.742 INFO    ] Launching Daemon at Mon Jun 22 16:32:28 IST 2026
[2026-06-22 16:32:28,752.752 INFO    ] ================================================
[2026-06-22 16:32:29,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:32:29
[2026-06-22 16:32:29,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:32:30,250.250 INFO    ] Initializing speech engine...
[2026-06-22 16:32:30,260.260 INFO    ] 2026-06-22 16:32:30
[2026-06-22 16:32:30,529.529 INFO    ] 2026-06-22 16:32:30
[2026-06-22 16:32:30,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:32:30,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:32:30,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:32:31,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:32:31,101.101 INFO    ] time= 22/06/2026 16:32:31
[2026-06-22 16:32:31,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:32:31,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:32:31,285.285 INFO    ] No existing commands found in stream
[2026-06-22 16:32:36,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:32:36,330.330 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-22 16:32:39,725.725 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:32:39,728.728 INFO    ] Checking for system updates...
[2026-06-22 16:32:39,768.768 INFO    ] 200
[2026-06-22 16:32:39,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:32:39,823.823 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:32:39,826.826 INFO    ] No update needed
[2026-06-22 16:32:39,828.828 INFO    ] Checking for camera pi updates...
[2026-06-22 16:32:39,862.862 INFO    ] 200
[2026-06-22 16:32:39,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:32:39,912.912 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:32:39,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:32:39,996.996 INFO    ] No camera update needed
[2026-06-22 16:32:39,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:32:40,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:32:40,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:32:40,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:32:42,051.051 INFO    ] ================================================
[2026-06-22 16:32:42,066.066 INFO    ] Launching Daemon at Mon Jun 22 16:32:42 IST 2026
[2026-06-22 16:32:42,076.076 INFO    ] ================================================
[2026-06-22 16:32:42,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:32:42
[2026-06-22 16:32:43,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:32:43,479.479 INFO    ] Initializing speech engine...
[2026-06-22 16:32:43,493.493 INFO    ] 2026-06-22 16:32:43
[2026-06-22 16:32:43,760.760 INFO    ] 2026-06-22 16:32:43
[2026-06-22 16:32:43,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:32:44,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:32:44,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:32:44,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:32:44,262.262 INFO    ] time= 22/06/2026 16:32:44
[2026-06-22 16:32:44,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:32:44,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:32:44,479.479 INFO    ] No existing commands found in stream
[2026-06-22 16:32:49,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:32:49,501.501 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-22 16:32:53,922.922 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:32:53,925.925 INFO    ] Checking for system updates...
[2026-06-22 16:32:53,962.962 INFO    ] 200
[2026-06-22 16:32:53,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:32:54,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:32:54,021.021 INFO    ] No update needed
[2026-06-22 16:32:54,023.023 INFO    ] Checking for camera pi updates...
[2026-06-22 16:32:54,057.057 INFO    ] 200
[2026-06-22 16:32:54,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:32:54,104.104 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:32:54,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:32:54,199.199 INFO    ] No camera update needed
[2026-06-22 16:32:54,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:32:54,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:32:54,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:32:54,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:32:56,255.255 INFO    ] ================================================
[2026-06-22 16:32:56,271.271 INFO    ] Launching Daemon at Mon Jun 22 16:32:56 IST 2026
[2026-06-22 16:32:56,282.282 INFO    ] ================================================
[2026-06-22 16:32:56,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:32:56
[2026-06-22 16:32:57,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:32:57,646.646 INFO    ] Initializing speech engine...
[2026-06-22 16:32:57,666.666 INFO    ] 2026-06-22 16:32:57
[2026-06-22 16:32:57,927.927 INFO    ] 2026-06-22 16:32:57
[2026-06-22 16:32:57,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:32:58,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:32:58,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:32:58,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:32:58,412.412 INFO    ] time= 22/06/2026 16:32:58
[2026-06-22 16:32:58,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:32:58,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:32:58,654.654 INFO    ] No existing commands found in stream
[2026-06-22 16:33:03,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:33:03,669.669 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-22 16:33:06,468.468 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:33:06,471.471 INFO    ] Checking for system updates...
[2026-06-22 16:33:06,510.510 INFO    ] 200
[2026-06-22 16:33:06,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:33:06,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:33:06,569.569 INFO    ] No update needed
[2026-06-22 16:33:06,574.574 INFO    ] Checking for camera pi updates...
[2026-06-22 16:33:06,624.624 INFO    ] 200
[2026-06-22 16:33:06,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:33:06,690.690 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:33:06,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:33:06,772.772 INFO    ] No camera update needed
[2026-06-22 16:33:06,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:33:06,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:33:06,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:33:06,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:33:08,822.822 INFO    ] ================================================
[2026-06-22 16:33:08,838.838 INFO    ] Launching Daemon at Mon Jun 22 16:33:08 IST 2026
[2026-06-22 16:33:08,849.849 INFO    ] ================================================
[2026-06-22 16:33:09,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:33:09
[2026-06-22 16:33:10,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:33:10,489.489 INFO    ] Initializing speech engine...
[2026-06-22 16:33:10,502.502 INFO    ] 2026-06-22 16:33:10
[2026-06-22 16:33:10,791.791 INFO    ] 2026-06-22 16:33:10
[2026-06-22 16:33:10,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:33:11,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:33:11,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:33:11,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:33:11,292.292 INFO    ] time= 22/06/2026 16:33:11
[2026-06-22 16:33:11,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:33:11,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:33:11,498.498 INFO    ] No existing commands found in stream
[2026-06-22 16:33:16,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:33:16,536.536 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-22 16:33:20,180.180 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:33:20,182.182 INFO    ] Checking for system updates...
[2026-06-22 16:33:20,206.206 INFO    ] 200
[2026-06-22 16:33:20,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:33:20,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:33:20,266.266 INFO    ] No update needed
[2026-06-22 16:33:20,269.269 INFO    ] Checking for camera pi updates...
[2026-06-22 16:33:20,305.305 INFO    ] 200
[2026-06-22 16:33:20,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:33:20,354.354 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:33:20,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:33:20,438.438 INFO    ] No camera update needed
[2026-06-22 16:33:20,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:33:20,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:33:20,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:33:20,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:33:22,497.497 INFO    ] ================================================
[2026-06-22 16:33:22,513.513 INFO    ] Launching Daemon at Mon Jun 22 16:33:22 IST 2026
[2026-06-22 16:33:22,524.524 INFO    ] ================================================
[2026-06-22 16:33:23,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:33:23
[2026-06-22 16:33:23,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:33:24,046.046 INFO    ] Initializing speech engine...
[2026-06-22 16:33:24,060.060 INFO    ] 2026-06-22 16:33:24
[2026-06-22 16:33:24,329.329 INFO    ] 2026-06-22 16:33:24
[2026-06-22 16:33:24,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:33:24,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:33:24,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:33:24,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:33:24,812.812 INFO    ] time= 22/06/2026 16:33:24
[2026-06-22 16:33:24,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:33:24,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:33:25,025.025 INFO    ] No existing commands found in stream
[2026-06-22 16:33:30,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:33:30,054.054 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-22 16:33:32,837.837 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:33:32,841.841 INFO    ] Checking for system updates...
[2026-06-22 16:33:32,881.881 INFO    ] 200
[2026-06-22 16:33:32,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:33:32,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:33:32,944.944 INFO    ] No update needed
[2026-06-22 16:33:32,947.947 INFO    ] Checking for camera pi updates...
[2026-06-22 16:33:32,985.985 INFO    ] 200
[2026-06-22 16:33:32,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:33:33,032.032 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:33:33,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:33:33,129.129 INFO    ] No camera update needed
[2026-06-22 16:33:33,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:33:33,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:33:33,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:33:33,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:33:35,186.186 INFO    ] ================================================
[2026-06-22 16:33:35,201.201 INFO    ] Launching Daemon at Mon Jun 22 16:33:35 IST 2026
[2026-06-22 16:33:35,212.212 INFO    ] ================================================
[2026-06-22 16:33:35,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:33:35
[2026-06-22 16:33:36,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:33:36,566.566 INFO    ] Initializing speech engine...
[2026-06-22 16:33:36,573.573 INFO    ] 2026-06-22 16:33:36
[2026-06-22 16:33:36,835.835 INFO    ] 2026-06-22 16:33:36
[2026-06-22 16:33:36,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:33:37,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:33:37,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:33:37,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:33:37,382.382 INFO    ] time= 22/06/2026 16:33:37
[2026-06-22 16:33:37,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:33:37,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:33:37,524.524 INFO    ] Found 1 existing command(s) in stream
[2026-06-22 16:33:37,559.559 INFO    ] Checking historical command: ID=1782126216767-0
[2026-06-22 16:33:37,608.608 INFO    ] process_and_cleanup_command: msg_id=1782126216767-0
[2026-06-22 16:33:37,650.650 INFO    ] is_command_expired: timestamp=2026-06-22T11:03:35.973Z, expiry=30s
[2026-06-22 16:33:37,854.854 INFO    ] Command removed from stream: 1782126216767-0. returning for processing...
[2026-06-22 16:33:37,869.869 INFO    ] ***** get_valid_command
[2026-06-22 16:33:37,879.879 INFO    ] {'data': '{"request_id":"start-order-1782126215973-l5s9yxmo4","orderId":"TM06202507260622163207748","is_vending":false}', 'source': 'webapp', 'timeout': '10', 'command': 'start-order', 'timestamp': '2026-06-22T11:03:35.973Z'}
[2026-06-22 16:33:37,882.882 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1782126215973-l5s9yxmo4', 'is_vending': False, 'orderId': 'TM06202507260622163207748'}
[2026-06-22 16:33:37,885.885 INFO    ] Handling start order...
[2026-06-22 16:33:37,888.888 INFO    ] handle_start_order_command
[2026-06-22 16:33:38,002.002 INFO    ] _send_start_order_success: request_id=start-order-1782126215973-l5s9yxmo4, order_id=TM06202507260622163207748
[2026-06-22 16:33:38,022.022 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM06202507
[2026-06-22 16:33:38,123.123 INFO    ] [_send_start_order_success] Message added to stream with ID: 1782126218050-0
[2026-06-22 16:33:38,128.128 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-22 16:33:38,133.133 INFO    ] Checking for system updates...
[2026-06-22 16:33:38,246.246 INFO    ] 200
[2026-06-22 16:33:38,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:33:38,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:33:38,363.363 INFO    ] No update needed
[2026-06-22 16:33:38,368.368 INFO    ] Checking for camera pi updates...
[2026-06-22 16:33:38,407.407 INFO    ] 200
[2026-06-22 16:33:38,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:33:38,463.463 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:33:38,553.553 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:33:38,562.562 INFO    ] No camera update needed
[2026-06-22 16:33:38,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:33:38,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:33:38,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:33:38,640.640 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-22 16:33:38,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:33:40,799.799 INFO    ] ================================================
[2026-06-22 16:33:40,815.815 INFO    ] Launching Daemon at Mon Jun 22 16:33:40 IST 2026
[2026-06-22 16:33:40,826.826 INFO    ] ================================================
[2026-06-22 16:33:41,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:33:41
[2026-06-22 16:33:42,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:33:42,340.340 INFO    ] Initializing speech engine...
[2026-06-22 16:33:42,352.352 INFO    ] 2026-06-22 16:33:42
[2026-06-22 16:33:42,630.630 INFO    ] 2026-06-22 16:33:42
[2026-06-22 16:33:42,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:33:42,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:33:42,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:33:43,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:33:43,170.170 INFO    ] time= 22/06/2026 16:33:43
[2026-06-22 16:33:43,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:33:43,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:33:43,340.340 INFO    ] Found 2 existing command(s) in stream
[2026-06-22 16:33:43,401.401 INFO    ] Checking historical command: ID=1782126218050-0
[2026-06-22 16:33:43,438.438 INFO    ] process_and_cleanup_command: msg_id=1782126218050-0
[2026-06-22 16:33:43,492.492 INFO    ] is_command_expired: timestamp=2026-06-22T11:03:38.014950Z, expiry=30s
[2026-06-22 16:33:43,791.791 INFO    ] Command removed from stream: 1782126218050-0. returning for processing...
[2026-06-22 16:33:43,797.797 INFO    ] ***** get_valid_command
[2026-06-22 16:33:43,801.801 INFO    ] {'imei': 'TM06202507', 'message_type': 'command_response', 'message': 'start-order success', 'metadata_order_id': 'TM06202507260622163207748', 'metadata_request_id': 'start-order-1782126215973-l5s9yxmo4', 'timestamp': '2026-06-22T11:03:38.014950Z', 'status': 'success'}
[2026-06-22 16:33:43,852.852 INFO    ] Checking historical command: ID=1782126221485-0
[2026-06-22 16:33:43,855.855 INFO    ] process_and_cleanup_command: msg_id=1782126221485-0
[2026-06-22 16:33:43,906.906 INFO    ] is_command_expired: timestamp=2026-06-22T11:03:40.718Z, expiry=30s
[2026-06-22 16:33:44,050.050 INFO    ] Command removed from stream: 1782126221485-0. returning for processing...
[2026-06-22 16:33:44,057.057 INFO    ] ***** get_valid_command
[2026-06-22 16:33:44,062.062 INFO    ] {'timeout': '60', 'timestamp': '2026-06-22T11:03:40.718Z', 'command': 'process-order', 'source': 'webapp', 'data': '{"request_id":"process-order-1782126220718-s7376xntf","orderId":"TM06202507260622163207748","is_vending":false,"accessCode":"62652381"}'}
[2026-06-22 16:33:44,073.073 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1782126220718-s7376xntf', 'orderId': 'TM06202507260622163207748', 'is_vending': False, 'accessCode': '62652381'}
[2026-06-22 16:33:44,082.082 INFO    ] Handling process order...
[2026-06-22 16:33:44,090.090 INFO    ] Processing process-order command...
[2026-06-22 16:33:44,096.096 INFO    ] 🔍 Lock file Order ID: TM06202507260622163207748, TS: 2026-06-22 16:33:37
[2026-06-22 16:33:44,115.115 INFO    ] ✅ Order lock valid for TM06202507260622163207748
[2026-06-22 16:33:44,122.122 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-22 16:33:44,126.126 INFO    ] processing access code 62652381 for order TM06202507260622163207748
[2026-06-22 16:33:44,133.133 INFO    ] 🔍 Lock file Order ID: TM06202507260622163207748, TS: 2026-06-22 16:33:37
[2026-06-22 16:33:44,140.140 INFO    ] ✅ Order lock valid for TM06202507260622163207748
[2026-06-22 16:33:44,149.149 INFO    ] 2026-06-22 16:33:44
[2026-06-22 16:33:44,200.200 INFO    ] 200
[2026-06-22 16:33:44,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:33:44,212.212 INFO    ] 62652381
[2026-06-22 16:33:44,217.217 INFO    ] 2026-06-22 16:33:44
[2026-06-22 16:33:44,223.223 INFO    ] session id :659564683
[2026-06-22 16:33:44,229.229 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=62652381&imei=TM06202507&session_id=659564683
[2026-06-22 16:33:45,222.222 INFO    ] 200
[2026-06-22 16:33:45,234.234 INFO    ] {"data": {"mobile": "6361966989", "order_id": "TM06202507260622163207748", "access_code": "62652381", "bill_amount": "30", "proposed_sku_json": [{"tray_id": "32", "qty": 1, "mrp": "30", "door_id": "2", "name": "Heritage livo Badam milk 180ml", "sku_total": 30, "image_url": "https://images.tinymart.in/product/4500704-2291.webp", "offer_desc": "", "unit_price": 30, "skuid": "4500704", "offer_id": ""}], "invoice_bill": "30"}, "msg": "Order Data", "status": true, "rstatus": true}
[2026-06-22 16:33:45,251.251 INFO    ] 30
[2026-06-22 16:33:45,257.257 INFO    ] TM06202507260622163207748
[2026-06-22 16:33:45,265.265 INFO    ] 6361966989
[2026-06-22 16:33:45,301.301 INFO    ] 2026-06-22 16:33:45
[2026-06-22 16:33:45,317.317 INFO    ] Door Opening for user mobile ending with  six nine eight nine 
[2026-06-22 16:33:45,338.338 INFO    ] Door Opening for user mobile ending with  six nine eight nine 
[2026-06-22 16:33:45,365.365 INFO    ] 27976178c218c0bda1e6dbc752f8e142
[2026-06-22 16:33:45,401.401 INFO    ] 2026-06-22 16:33:45
[2026-06-22 16:33:45,448.448 INFO    ] playing audio file
[2026-06-22 16:33:45,474.474 INFO    ] 2026-06-22 16:33:45
[2026-06-22 16:33:45,485.485 INFO    ] 2026-06-22 16:33:45
[2026-06-22 16:33:45,496.496 INFO    ] publish_status: order_id=TM06202507260622163207748
[2026-06-22 16:33:45,503.503 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622163207748
[2026-06-22 16:33:45,700.700 INFO    ] [publish_status] Message added to stream with ID: 1782126225625-0
[2026-06-22 16:33:45,768.768 INFO    ] Published to order:TM06202507260622163207748: {'order_id': 'TM06202507260622163207748', 'server_status': 'order-started', 'server_response': '{"rstatus": true, "msg": "Order Data", "status": true, "data": {"invoice_bill": "30", "access_code": "62652381", "mobile": "6361966989", "order_id": "TM06202507260622163207748", "proposed_sku_json": [{"offer_desc": "", "mrp": "30", "skuid": "4500704", "offer_id": "", "qty": 1, "door_id": "2", "name": "Heritage livo Badam milk 180ml", "tray_id": "32", "image_url": "https://images.tinymart.in/product/4500704-2291.webp", "unit_price": 30, "sku_total": 30}], "bill_amount": "30"}}', 'timestamp': '2026-06-22T11:03:45.487098Z'} (ID: 1782126225625-0)
[2026-06-22 16:33:46,328.328 INFO    ] {'order_id': 'TM06202507260622163207748', 'server_status': 'order-started', 'server_response': {'rstatus': True, 'msg': 'Order Data', 'status': True, 'data': {'invoice_bill': '30', 'access_code': '62652381', 'mobile': '6361966989', 'order_id': 'TM06202507260622163207748', 'proposed_sku_json': [{'offer_desc': '', 'mrp': '30', 'skuid': '4500704', 'offer_id': '', 'qty': 1, 'door_id': '2', 'name': 'Heritage livo Badam milk 180ml', 'tray_id': '32', 'image_url': 'https://images.tinymart.in/product/4500704-2291.webp', 'unit_price': 30, 'sku_total': 30}], 'bill_amount': '30'}}}
[2026-06-22 16:33:46,331.331 INFO    ] 200
[2026-06-22 16:33:46,334.334 INFO    ] {"data":{"order_id":"TM06202507260622163207748","server_status":"order-started","server_response":{"rstatus":true,"msg":"Order Data","status":true,"data":{"invoice_bill":"30","access_code":"62652381","mobile":"6361966989","order_id":"TM06202507260622163207748","proposed_sku_json":[{"offer_desc":"","mrp":"30","skuid":"4500704","offer_id":"","qty":1,"door_id":"2","name":"Heritage livo Badam milk 180ml","tray_id":"32","image_url":"https:\/\/images.tinymart.in\/product\/4500704-2291.webp","unit_price":30,"sku_total":30}],"bill_amount":"30"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 16:33:46,337.337 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'order_id': 'TM06202507260622163207748', 'server_status': 'order-started', 'server_response': {'rstatus': True, 'msg': 'Order Data', 'status': True, 'data': {'invoice_bill': '30', 'access_code': '62652381', 'mobile': '6361966989', 'order_id': 'TM06202507260622163207748', 'proposed_sku_json': [{'offer_desc': '', 'offer_id': '', 'skuid': '4500704', 'qty': 1, 'name': 'Heritage livo Badam milk 180ml', 'mrp': '30', 'door_id': '2', 'unit_price': 30, 'sku_total': 30, 'image_url': 'https://images.tinymart.in/product/4500704-2291.webp', 'tray_id': '32'}], 'bill_amount': '30'}}}}
[2026-06-22 16:33:46,340.340 INFO    ] 2026-06-22 16:33:46
[2026-06-22 16:33:46,386.386 INFO    ] 200
[2026-06-22 16:33:46,389.389 INFO    ] True
[2026-06-22 16:33:46,521.521 INFO    ] 200
[2026-06-22 16:33:46,524.524 INFO    ] {"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": ""}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 16:33:46,528.528 INFO    ] {'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False', 'voiceNote': 'Please Wait'}
[2026-06-22 16:33:46,531.531 INFO    ] *** process_order ***
[2026-06-22 16:33:47,707.707 INFO    ] 200
[2026-06-22 16:33:47,710.710 INFO    ] {"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": ""}, "rstatus": true, "delay": 0, "status": "True", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 16:33:47,713.713 INFO    ] {'rstatus': True, 'delay': 0, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'voiceNote': 'Please Wait'}
[2026-06-22 16:33:47,717.717 INFO    ] *** process_order ***
[2026-06-22 16:33:47,720.720 INFO    ] publish_status: order_id=TM06202507260622163207748
[2026-06-22 16:33:47,723.723 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622163207748
[2026-06-22 16:33:47,807.807 INFO    ] [publish_status] Message added to stream with ID: 1782126227770-0
[2026-06-22 16:33:47,810.810 INFO    ] Published to order:TM06202507260622163207748: {'order_id': 'TM06202507260622163207748', 'server_status': 'doorOpened', 'server_response': '{"rstatus": true, "delay": 0, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "You can pull the door now.", "Header": " Your order is under process  "}, "SectionMain": {"Header": "Processing Order"}, "status": "True", "voiceNote": "Door is open..."}'} (ID: 1782126227770-0)
[2026-06-22 16:33:48,869.869 INFO    ] 2026-06-22 16:33:48
[2026-06-22 16:33:48,873.873 INFO    ] publish_status: order_id=TM06202507260622163207748
[2026-06-22 16:33:48,876.876 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622163207748
[2026-06-22 16:33:48,975.975 INFO    ] [publish_status] Message added to stream with ID: 1782126228935-0
[2026-06-22 16:33:48,978.978 INFO    ] Published to order:TM06202507260622163207748: {'order_id': 'TM06202507260622163207748', 'server_status': 'processOrder', 'server_response': '{"rstatus": true, "delay": 0, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "SectionMain": {"Header": "Processing Order"}, "status": "True", "voiceNote": "Please Wait"}', 'timestamp': '2026-06-22T11:03:48.871033Z'} (ID: 1782126228935-0)
[2026-06-22 16:33:49,143.143 INFO    ] {'order_id': 'TM06202507260622163207748', 'server_status': 'processOrder', 'server_response': {'rstatus': True, 'delay': 0, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'voiceNote': 'Please Wait'}}
[2026-06-22 16:33:49,147.147 INFO    ] 200
[2026-06-22 16:33:49,150.150 INFO    ] {"data":{"order_id":"TM06202507260622163207748","server_status":"processOrder","server_response":{"rstatus":true,"delay":0,"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"SectionStatus":{"Note":"","UI_Header":"","SubHeader":"Please wait while we process your order","Header":" Your order is under process  "},"SectionMain":{"Header":"Processing Order"},"status":"true","voiceNote":"Please Wait"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 16:33:49,153.153 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'order_id': 'TM06202507260622163207748', 'server_status': 'processOrder', 'server_response': {'rstatus': True, 'delay': 0, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'true', 'voiceNote': 'Please Wait'}}}
[2026-06-22 16:33:49,156.156 INFO    ] 2026-06-22 16:33:49
[2026-06-22 16:33:49,159.159 INFO    ] None
[2026-06-22 16:33:49,163.163 INFO    ] Opening Door now
[2026-06-22 16:33:49,166.166 INFO    ] Opening Door now
[2026-06-22 16:33:49,170.170 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-22 16:33:49,174.174 INFO    ] 2026-06-22 16:33:49
[2026-06-22 16:33:49,177.177 INFO    ] playing audio file
[2026-06-22 16:33:49,202.202 INFO    ] 2026-06-22 16:33:49
[2026-06-22 16:33:49,206.206 INFO    ] 2026-06-22 16:33:49
[2026-06-22 16:33:52,285.285 INFO    ] 200
[2026-06-22 16:33:52,288.288 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Heritage livo Badam milk 180ml"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Door 2 is open now"}
[2026-06-22 16:33:52,291.291 INFO    ] {'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Heritage livo Badam milk 180ml'}], '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'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Door 2 is open now'}
[2026-06-22 16:33:55,359.359 INFO    ] 200
[2026-06-22 16:33:55,362.362 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Heritage livo Badam milk 180ml"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2"}
[2026-06-22 16:33:55,367.367 INFO    ] {'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Heritage livo Badam milk 180ml'}], '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'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2'}
[2026-06-22 16:33:58,480.480 INFO    ] 200
[2026-06-22 16:33:58,483.483 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Heritage livo Badam milk 180ml"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2"}
[2026-06-22 16:33:58,486.486 INFO    ] Please close door 2
[2026-06-22 16:33:58,488.488 INFO    ] Please close door 2
[2026-06-22 16:33:58,495.495 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-22 16:33:58,498.498 INFO    ] 2026-06-22 16:33:58
[2026-06-22 16:33:58,500.500 INFO    ] playing audio file
[2026-06-22 16:33:58,520.520 INFO    ] 2026-06-22 16:33:58
[2026-06-22 16:33:58,524.524 INFO    ] publish_status: order_id=TM06202507260622163207748
[2026-06-22 16:33:58,527.527 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622163207748
[2026-06-22 16:33:58,643.643 INFO    ] [publish_status] Message added to stream with ID: 1782126238586-0
[2026-06-22 16:33:58,645.645 INFO    ] Published to order:TM06202507260622163207748: {'order_id': 'TM06202507260622163207748', 'server_status': 'OrderStatus', 'server_response': '{"rstatus": false, "error": {"tmessage": "In Progress", "code": 20001, "umessage": "In Progress", "data": {}}, "SectionSKU": {"skus": [{"qty": 1, "name": "Heritage livo Badam milk 180ml"}], "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"}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 2"}', 'timestamp': '2026-06-22T11:03:58.522026Z'} (ID: 1782126238586-0)
[2026-06-22 16:33:59,206.206 INFO    ] {'order_id': 'TM06202507260622163207748', 'server_status': 'OrderStatus', 'server_response': {'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Heritage livo Badam milk 180ml'}], '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'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2'}}
[2026-06-22 16:33:59,209.209 INFO    ] 200
[2026-06-22 16:33:59,211.211 INFO    ] {"data":{"order_id":"TM06202507260622163207748","server_status":"OrderStatus","server_response":{"rstatus":false,"error":{"tmessage":"In Progress","code":20001,"umessage":"In Progress","data":[]},"SectionSKU":{"skus":[{"qty":1,"name":"Heritage livo Badam milk 180ml"}],"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"},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 2"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 16:33:59,214.214 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'order_id': 'TM06202507260622163207748', 'server_status': 'OrderStatus', 'server_response': {'rstatus': False, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Heritage livo Badam milk 180ml'}], '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'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'voiceNote': 'Please close door 2'}}}
[2026-06-22 16:33:59,217.217 INFO    ] {'rstatus': False, 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': {}}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Heritage livo Badam milk 180ml'}], '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'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 2'}
[2026-06-22 16:34:02,302.302 INFO    ] 200
[2026-06-22 16:34:02,305.305 INFO    ] {"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"}, "rstatus": true, "delay": 100, "status": "True", "SectionMain": {"Header": "Door Closed"}, "voiceNote": "Transaction Completed"}
[2026-06-22 16:34:02,309.309 INFO    ] {'rstatus': True, 'delay': 100, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete '}, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'voiceNote': 'Transaction Completed'}
[2026-06-22 16:34:02,324.324 INFO    ] 2026-06-22 16:34:02
[2026-06-22 16:34:02,327.327 INFO    ] Order Completed 
[2026-06-22 16:34:02,330.330 INFO    ] Order Completed 
[2026-06-22 16:34:02,336.336 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-22 16:34:02,340.340 INFO    ] 2026-06-22 16:34:02
[2026-06-22 16:34:02,343.343 INFO    ] playing audio file
[2026-06-22 16:34:02,361.361 INFO    ] 2026-06-22 16:34:02
[2026-06-22 16:34:02,365.365 INFO    ] {'rstatus': True, 'delay': 100, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete '}, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'voiceNote': 'Transaction Completed'}
[2026-06-22 16:34:02,368.368 INFO    ] 2026-06-22 16:34:02
[2026-06-22 16:34:04,789.789 INFO    ] 200
[2026-06-22 16:34:04,793.793 INFO    ] {"skus": [{"tray_id": "32", "qty": 1, "mrp": "30", "door_id": "", "name": "Heritage livo Badam milk 180ml per peice", "sku_total": 30.0, "image_url": "https://images.tinymart.in/product/4500704-2291.webp", "unit_price": "30", "skuid": "4500704"}], "anomaly": 0, "rstatus": true, "orderId": "TM06202507260622163207748", "logic": "WBL", "total_amount": 30.0, "res": "True"}
[2026-06-22 16:34:04,798.798 INFO    ] {'anomaly': 0, 'rstatus': True, 'res': 'True', 'logic': 'WBL', 'total_amount': 30.0, 'skus': [{'mrp': '30', 'skuid': '4500704', 'qty': 1, 'door_id': '', 'name': 'Heritage livo Badam milk 180ml per peice', 'tray_id': '32', 'image_url': 'https://images.tinymart.in/product/4500704-2291.webp', 'unit_price': '30', 'sku_total': 30.0}], 'orderId': 'TM06202507260622163207748'}
[2026-06-22 16:34:04,803.803 INFO    ] {'anomaly': 0, 'rstatus': True, 'res': 'True', 'logic': 'WBL', 'total_amount': 30.0, 'skus': [{'mrp': '30', 'skuid': '4500704', 'qty': 1, 'door_id': '', 'name': 'Heritage livo Badam milk 180ml per peice', 'tray_id': '32', 'image_url': 'https://images.tinymart.in/product/4500704-2291.webp', 'unit_price': '30', 'sku_total': 30.0}], 'orderId': 'TM06202507260622163207748'}
[2026-06-22 16:34:04,807.807 INFO    ] 2026-06-22 16:34:04
[2026-06-22 16:34:04,810.810 INFO    ] 2026-06-22 16:34:04
[2026-06-22 16:34:04,813.813 INFO    ] 30
[2026-06-22 16:34:04,817.817 INFO    ] 2026-06-22 16:34:04
[2026-06-22 16:34:04,820.820 INFO    ] 2026-06-22 16:34:04
[2026-06-22 16:34:04,824.824 INFO    ]  Your Bill Amount is 30
[2026-06-22 16:34:04,828.828 INFO    ]  Your Bill Amount is 30
[2026-06-22 16:34:04,832.832 INFO    ] 83d7bc98008395bac4df4c2fc2d248eb
[2026-06-22 16:34:04,837.837 INFO    ] 2026-06-22 16:34:04
[2026-06-22 16:34:04,841.841 INFO    ] playing audio file
[2026-06-22 16:34:04,862.862 INFO    ] 2026-06-22 16:34:04
[2026-06-22 16:34:04,867.867 INFO    ] 2026-06-22 16:34:04
[2026-06-22 16:34:04,872.872 INFO    ] publish_status: order_id=TM06202507260622163207748
[2026-06-22 16:34:04,876.876 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622163207748
[2026-06-22 16:34:04,953.953 INFO    ] [publish_status] Message added to stream with ID: 1782126244915-0
[2026-06-22 16:34:04,956.956 INFO    ] Published to order:TM06202507260622163207748: {'order_id': 'TM06202507260622163207748', 'server_status': 'invoiceOrder', 'server_response': '{"anomaly": 0, "rstatus": true, "res": "True", "logic": "WBL", "total_amount": 30.0, "skus": [{"mrp": "30", "skuid": "4500704", "qty": 1, "door_id": "", "name": "Heritage livo Badam milk 180ml per peice", "tray_id": "32", "image_url": "https://images.tinymart.in/product/4500704-2291.webp", "unit_price": "30", "sku_total": 30.0}], "orderId": "TM06202507260622163207748"}', 'timestamp': '2026-06-22T11:04:04.869606Z'} (ID: 1782126244915-0)
[2026-06-22 16:34:05,542.542 INFO    ] {'order_id': 'TM06202507260622163207748', 'server_status': 'invoiceOrder', 'server_response': {'anomaly': 0, 'rstatus': True, 'res': 'True', 'logic': 'WBL', 'total_amount': 30.0, 'skus': [{'mrp': '30', 'skuid': '4500704', 'qty': 1, 'door_id': '', 'name': 'Heritage livo Badam milk 180ml per peice', 'tray_id': '32', 'image_url': 'https://images.tinymart.in/product/4500704-2291.webp', 'unit_price': '30', 'sku_total': 30.0}], 'orderId': 'TM06202507260622163207748'}}
[2026-06-22 16:34:05,546.546 INFO    ] 200
[2026-06-22 16:34:05,548.548 INFO    ] {"data":{"order_id":"TM06202507260622163207748","server_status":"invoiceOrder","server_response":{"anomaly":0,"rstatus":true,"res":"true","logic":"WBL","total_amount":30,"skus":[{"mrp":"30","skuid":"4500704","qty":1,"door_id":"","name":"Heritage livo Badam milk 180ml per peice","tray_id":"32","image_url":"https:\/\/images.tinymart.in\/product\/4500704-2291.webp","unit_price":"30","sku_total":30}],"orderId":"TM06202507260622163207748"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 16:34:05,552.552 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'order_id': 'TM06202507260622163207748', 'server_status': 'invoiceOrder', 'server_response': {'anomaly': 0, 'rstatus': True, 'res': 'true', 'logic': 'WBL', 'skus': [{'tray_id': '32', 'skuid': '4500704', 'qty': 1, 'door_id': '', 'name': 'Heritage livo Badam milk 180ml per peice', 'mrp': '30', 'image_url': 'https://images.tinymart.in/product/4500704-2291.webp', 'unit_price': '30', 'sku_total': 30}], 'total_amount': 30, 'orderId': 'TM06202507260622163207748'}}}
[2026-06-22 16:34:05,555.555 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'order_id': 'TM06202507260622163207748', 'server_status': 'invoiceOrder', 'server_response': {'anomaly': 0, 'rstatus': True, 'res': 'true', 'logic': 'WBL', 'skus': [{'tray_id': '32', 'skuid': '4500704', 'qty': 1, 'door_id': '', 'name': 'Heritage livo Badam milk 180ml per peice', 'mrp': '30', 'image_url': 'https://images.tinymart.in/product/4500704-2291.webp', 'unit_price': '30', 'sku_total': 30}], 'total_amount': 30, 'orderId': 'TM06202507260622163207748'}}}
[2026-06-22 16:34:05,558.558 INFO    ] 2026-06-22 16:34:05
[2026-06-22 16:34:08,604.604 INFO    ] 200
[2026-06-22 16:34:08,607.607 INFO    ] {"orders_data_synced": [], "order_items": [], "orders_data": [], "orders_synced": [], "tray_synced": ["TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748", "TM06202507260622163207748"], "order_items_synced": [], "orders": [], "status": true, "tray_sync": []}
[2026-06-22 16:34:08,610.610 INFO    ] 2026-06-22 16:34:08
[2026-06-22 16:34:08,737.737 INFO    ] 200
[2026-06-22 16:34:08,740.740 INFO    ] True
[2026-06-22 16:34:08,745.745 INFO    ] cleanup_start_order_file_after_processing: order_id=TM06202507260622163207748
[2026-06-22 16:34:08,749.749 INFO    ] start order file deleted
[2026-06-22 16:34:08,753.753 INFO    ] Checking for system updates...
[2026-06-22 16:34:08,796.796 INFO    ] 200
[2026-06-22 16:34:08,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:34:08,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:34:08,867.867 INFO    ] No update needed
[2026-06-22 16:34:08,870.870 INFO    ] Checking for camera pi updates...
[2026-06-22 16:34:08,916.916 INFO    ] 200
[2026-06-22 16:34:08,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:34:08,975.975 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:34:09,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:34:09,033.033 INFO    ] No camera update needed
[2026-06-22 16:34:09,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:34:09,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:34:09,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:34:09,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:34:11,100.100 INFO    ] ================================================
[2026-06-22 16:34:11,115.115 INFO    ] Launching Daemon at Mon Jun 22 16:34:11 IST 2026
[2026-06-22 16:34:11,126.126 INFO    ] ================================================
[2026-06-22 16:34:11,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:34:11
[2026-06-22 16:34:12,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:34:12,453.453 INFO    ] Initializing speech engine...
[2026-06-22 16:34:12,466.466 INFO    ] 2026-06-22 16:34:12
[2026-06-22 16:34:12,734.734 INFO    ] 2026-06-22 16:34:12
[2026-06-22 16:34:12,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:34:12,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:34:13,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:34:13,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:34:13,235.235 INFO    ] time= 22/06/2026 16:34:13
[2026-06-22 16:34:13,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:34:13,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:34:13,437.437 INFO    ] No existing commands found in stream
[2026-06-22 16:34:18,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:34:18,470.470 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-22 16:34:21,585.585 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:34:21,586.586 INFO    ] Checking for system updates...
[2026-06-22 16:34:21,609.609 INFO    ] 200
[2026-06-22 16:34:21,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:34:21,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:34:21,641.641 INFO    ] No update needed
[2026-06-22 16:34:21,643.643 INFO    ] Checking for camera pi updates...
[2026-06-22 16:34:21,668.668 INFO    ] 200
[2026-06-22 16:34:21,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:34:21,713.713 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:34:21,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:34:21,798.798 INFO    ] No camera update needed
[2026-06-22 16:34:21,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:34:21,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:34:21,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:34:21,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:34:23,860.860 INFO    ] ================================================
[2026-06-22 16:34:23,877.877 INFO    ] Launching Daemon at Mon Jun 22 16:34:23 IST 2026
[2026-06-22 16:34:23,888.888 INFO    ] ================================================
[2026-06-22 16:34:24,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:34:24
[2026-06-22 16:34:24,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:34:25,237.237 INFO    ] Initializing speech engine...
[2026-06-22 16:34:25,247.247 INFO    ] 2026-06-22 16:34:25
[2026-06-22 16:34:25,499.499 INFO    ] 2026-06-22 16:34:25
[2026-06-22 16:34:25,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:34:25,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:34:25,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:34:25,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:34:26,005.005 INFO    ] time= 22/06/2026 16:34:25
[2026-06-22 16:34:26,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:34:26,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:34:26,131.131 INFO    ] No existing commands found in stream
[2026-06-22 16:34:31,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:34:31,146.146 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-22 16:34:34,181.181 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:34:34,184.184 INFO    ] Checking for system updates...
[2026-06-22 16:34:34,219.219 INFO    ] 200
[2026-06-22 16:34:34,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:34:34,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:34:34,277.277 INFO    ] No update needed
[2026-06-22 16:34:34,279.279 INFO    ] Checking for camera pi updates...
[2026-06-22 16:34:34,318.318 INFO    ] 200
[2026-06-22 16:34:34,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:34:34,362.362 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:34:34,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:34:34,437.437 INFO    ] No camera update needed
[2026-06-22 16:34:34,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:34:34,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:34:34,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:34:34,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:34:36,495.495 INFO    ] ================================================
[2026-06-22 16:34:36,511.511 INFO    ] Launching Daemon at Mon Jun 22 16:34:36 IST 2026
[2026-06-22 16:34:36,522.522 INFO    ] ================================================
[2026-06-22 16:34:37,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:34:37
[2026-06-22 16:34:37,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:34:37,973.973 INFO    ] Initializing speech engine...
[2026-06-22 16:34:37,980.980 INFO    ] 2026-06-22 16:34:37
[2026-06-22 16:34:38,255.255 INFO    ] 2026-06-22 16:34:38
[2026-06-22 16:34:38,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:34:38,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:34:38,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:34:38,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:34:38,722.722 INFO    ] time= 22/06/2026 16:34:38
[2026-06-22 16:34:38,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:34:38,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:34:38,937.937 INFO    ] No existing commands found in stream
[2026-06-22 16:34:43,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:34:43,957.957 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-22 16:34:46,133.133 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:34:46,135.135 INFO    ] Checking for system updates...
[2026-06-22 16:34:46,171.171 INFO    ] 200
[2026-06-22 16:34:46,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:34:46,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:34:46,229.229 INFO    ] No update needed
[2026-06-22 16:34:46,232.232 INFO    ] Checking for camera pi updates...
[2026-06-22 16:34:46,265.265 INFO    ] 200
[2026-06-22 16:34:46,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:34:46,315.315 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:34:46,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:34:46,404.404 INFO    ] No camera update needed
[2026-06-22 16:34:46,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:34:46,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:34:46,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:34:46,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:34:48,461.461 INFO    ] ================================================
[2026-06-22 16:34:48,485.485 INFO    ] Launching Daemon at Mon Jun 22 16:34:48 IST 2026
[2026-06-22 16:34:48,496.496 INFO    ] ================================================
[2026-06-22 16:34:49,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:34:49
[2026-06-22 16:34:49,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:34:50,008.008 INFO    ] Initializing speech engine...
[2026-06-22 16:34:50,015.015 INFO    ] 2026-06-22 16:34:50
[2026-06-22 16:34:50,276.276 INFO    ] 2026-06-22 16:34:50
[2026-06-22 16:34:50,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:34:50,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:34:50,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:34:50,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:34:50,817.817 INFO    ] time= 22/06/2026 16:34:50
[2026-06-22 16:34:50,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:34:50,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:34:50,956.956 INFO    ] No existing commands found in stream
[2026-06-22 16:34:55,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:34:55,983.983 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-22 16:34:57,521.521 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:34:57,523.523 INFO    ] Checking for system updates...
[2026-06-22 16:34:57,561.561 INFO    ] 200
[2026-06-22 16:34:57,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:34:57,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:34:57,622.622 INFO    ] No update needed
[2026-06-22 16:34:57,625.625 INFO    ] Checking for camera pi updates...
[2026-06-22 16:34:57,664.664 INFO    ] 200
[2026-06-22 16:34:57,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:34:57,709.709 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:34:57,786.786 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:34:57,789.789 INFO    ] No camera update needed
[2026-06-22 16:34:57,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:34:57,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:34:57,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:34:57,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:34:59,847.847 INFO    ] ================================================
[2026-06-22 16:34:59,863.863 INFO    ] Launching Daemon at Mon Jun 22 16:34:59 IST 2026
[2026-06-22 16:34:59,873.873 INFO    ] ================================================
[2026-06-22 16:35:00,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:35:00
[2026-06-22 16:35:01,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:35:01,523.523 INFO    ] Initializing speech engine...
[2026-06-22 16:35:01,530.530 INFO    ] 2026-06-22 16:35:01
[2026-06-22 16:35:01,825.825 INFO    ] 2026-06-22 16:35:01
[2026-06-22 16:35:01,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:35:02,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:35:02,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:35:02,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:35:02,441.441 INFO    ] time= 22/06/2026 16:35:02
[2026-06-22 16:35:02,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:35:02,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:35:02,544.544 INFO    ] No existing commands found in stream
[2026-06-22 16:35:07,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:35:07,558.558 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-22 16:35:08,126.126 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:35:08,129.129 INFO    ] Checking for system updates...
[2026-06-22 16:35:08,165.165 INFO    ] 200
[2026-06-22 16:35:08,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:35:08,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:35:08,231.231 INFO    ] No update needed
[2026-06-22 16:35:08,233.233 INFO    ] Checking for camera pi updates...
[2026-06-22 16:35:08,271.271 INFO    ] 200
[2026-06-22 16:35:08,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:35:08,314.314 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:35:08,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:35:08,496.496 INFO    ] No camera update needed
[2026-06-22 16:35:08,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:35:08,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:35:08,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:35:08,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:35:10,554.554 INFO    ] ================================================
[2026-06-22 16:35:10,570.570 INFO    ] Launching Daemon at Mon Jun 22 16:35:10 IST 2026
[2026-06-22 16:35:10,581.581 INFO    ] ================================================
[2026-06-22 16:35:11,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:35:11
[2026-06-22 16:35:11,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:35:11,928.928 INFO    ] Initializing speech engine...
[2026-06-22 16:35:11,937.937 INFO    ] 2026-06-22 16:35:11
[2026-06-22 16:35:12,184.184 INFO    ] 2026-06-22 16:35:12
[2026-06-22 16:35:12,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:35:12,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:35:12,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:35:12,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:35:12,674.674 INFO    ] time= 22/06/2026 16:35:12
[2026-06-22 16:35:12,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:35:12,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:35:12,914.914 INFO    ] No existing commands found in stream
[2026-06-22 16:35:17,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:35:17,939.939 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-22 16:35:21,841.841 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:35:21,843.843 INFO    ] Checking for system updates...
[2026-06-22 16:35:21,880.880 INFO    ] 200
[2026-06-22 16:35:21,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:35:21,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:35:21,939.939 INFO    ] No update needed
[2026-06-22 16:35:21,942.942 INFO    ] Checking for camera pi updates...
[2026-06-22 16:35:21,981.981 INFO    ] 200
[2026-06-22 16:35:21,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:35:22,031.031 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:35:22,121.121 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:35:22,124.124 INFO    ] No camera update needed
[2026-06-22 16:35:22,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:35:22,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:35:22,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:35:22,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:35:24,185.185 INFO    ] ================================================
[2026-06-22 16:35:24,201.201 INFO    ] Launching Daemon at Mon Jun 22 16:35:24 IST 2026
[2026-06-22 16:35:24,212.212 INFO    ] ================================================
[2026-06-22 16:35:24,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:35:24
[2026-06-22 16:35:25,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:35:25,772.772 INFO    ] Initializing speech engine...
[2026-06-22 16:35:25,779.779 INFO    ] 2026-06-22 16:35:25
[2026-06-22 16:35:26,052.052 INFO    ] 2026-06-22 16:35:26
[2026-06-22 16:35:26,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:35:26,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:35:26,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:35:26,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:35:26,549.549 INFO    ] time= 22/06/2026 16:35:26
[2026-06-22 16:35:26,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:35:26,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:35:26,759.759 INFO    ] No existing commands found in stream
[2026-06-22 16:35:31,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:35:31,790.790 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-22 16:35:34,698.698 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:35:34,701.701 INFO    ] Checking for system updates...
[2026-06-22 16:35:34,738.738 INFO    ] 200
[2026-06-22 16:35:34,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:35:34,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:35:34,805.805 INFO    ] No update needed
[2026-06-22 16:35:34,808.808 INFO    ] Checking for camera pi updates...
[2026-06-22 16:35:34,847.847 INFO    ] 200
[2026-06-22 16:35:34,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:35:34,891.891 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:35:34,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:35:34,980.980 INFO    ] No camera update needed
[2026-06-22 16:35:34,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:35:34,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:35:34,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:35:34,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:35:37,038.038 INFO    ] ================================================
[2026-06-22 16:35:37,055.055 INFO    ] Launching Daemon at Mon Jun 22 16:35:37 IST 2026
[2026-06-22 16:35:37,066.066 INFO    ] ================================================
[2026-06-22 16:35:37,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:35:37
[2026-06-22 16:35:38,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:35:38,503.503 INFO    ] Initializing speech engine...
[2026-06-22 16:35:38,512.512 INFO    ] 2026-06-22 16:35:38
[2026-06-22 16:35:38,767.767 INFO    ] 2026-06-22 16:35:38
[2026-06-22 16:35:38,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:35:39,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:35:39,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:35:39,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:35:39,318.318 INFO    ] time= 22/06/2026 16:35:39
[2026-06-22 16:35:39,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:35:39,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:35:39,459.459 INFO    ] No existing commands found in stream
[2026-06-22 16:35:44,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:35:44,488.488 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-22 16:35:47,377.377 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:35:47,380.380 INFO    ] Checking for system updates...
[2026-06-22 16:35:47,425.425 INFO    ] 200
[2026-06-22 16:35:47,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:35:47,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:35:47,491.491 INFO    ] No update needed
[2026-06-22 16:35:47,494.494 INFO    ] Checking for camera pi updates...
[2026-06-22 16:35:47,530.530 INFO    ] 200
[2026-06-22 16:35:47,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:35:47,575.575 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:35:47,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:35:47,669.669 INFO    ] No camera update needed
[2026-06-22 16:35:47,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:35:47,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:35:47,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:35:47,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:35:49,730.730 INFO    ] ================================================
[2026-06-22 16:35:49,746.746 INFO    ] Launching Daemon at Mon Jun 22 16:35:49 IST 2026
[2026-06-22 16:35:49,757.757 INFO    ] ================================================
[2026-06-22 16:35:50,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:35:50
[2026-06-22 16:35:50,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:35:51,251.251 INFO    ] Initializing speech engine...
[2026-06-22 16:35:51,264.264 INFO    ] 2026-06-22 16:35:51
[2026-06-22 16:35:51,530.530 INFO    ] 2026-06-22 16:35:51
[2026-06-22 16:35:51,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:35:51,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:35:51,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:35:51,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:35:52,025.025 INFO    ] time= 22/06/2026 16:35:51
[2026-06-22 16:35:52,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:35:52,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:35:52,228.228 INFO    ] No existing commands found in stream
[2026-06-22 16:35:57,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:35:57,253.253 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-22 16:35:58,018.018 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:35:58,020.020 INFO    ] Checking for system updates...
[2026-06-22 16:35:58,058.058 INFO    ] 200
[2026-06-22 16:35:58,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:35:58,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:35:58,119.119 INFO    ] No update needed
[2026-06-22 16:35:58,122.122 INFO    ] Checking for camera pi updates...
[2026-06-22 16:35:58,157.157 INFO    ] 200
[2026-06-22 16:35:58,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:35:58,208.208 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:35:58,294.294 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:35:58,297.297 INFO    ] No camera update needed
[2026-06-22 16:35:58,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:35:58,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:35:58,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:35:58,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:36:00,353.353 INFO    ] ================================================
[2026-06-22 16:36:00,369.369 INFO    ] Launching Daemon at Mon Jun 22 16:36:00 IST 2026
[2026-06-22 16:36:00,380.380 INFO    ] ================================================
[2026-06-22 16:36:01,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:36:01
[2026-06-22 16:36:01,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:36:02,279.279 INFO    ] Initializing speech engine...
[2026-06-22 16:36:02,287.287 INFO    ] 2026-06-22 16:36:02
[2026-06-22 16:36:02,671.671 INFO    ] 2026-06-22 16:36:02
[2026-06-22 16:36:02,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:36:02,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:36:02,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:36:03,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:36:03,193.193 INFO    ] time= 22/06/2026 16:36:03
[2026-06-22 16:36:03,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:36:03,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:36:03,327.327 INFO    ] No existing commands found in stream
[2026-06-22 16:36:08,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:36:08,358.358 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-22 16:36:09,917.917 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:36:09,919.919 INFO    ] Checking for system updates...
[2026-06-22 16:36:09,955.955 INFO    ] 200
[2026-06-22 16:36:09,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:36:10,010.010 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:36:10,013.013 INFO    ] No update needed
[2026-06-22 16:36:10,015.015 INFO    ] Checking for camera pi updates...
[2026-06-22 16:36:10,049.049 INFO    ] 200
[2026-06-22 16:36:10,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:36:10,091.091 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:36:10,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:36:10,182.182 INFO    ] No camera update needed
[2026-06-22 16:36:10,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:36:10,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:36:10,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:36:10,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:36:12,239.239 INFO    ] ================================================
[2026-06-22 16:36:12,256.256 INFO    ] Launching Daemon at Mon Jun 22 16:36:12 IST 2026
[2026-06-22 16:36:12,267.267 INFO    ] ================================================
[2026-06-22 16:36:12,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:36:12
[2026-06-22 16:36:13,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:36:13,829.829 INFO    ] Initializing speech engine...
[2026-06-22 16:36:13,842.842 INFO    ] 2026-06-22 16:36:13
[2026-06-22 16:36:14,123.123 INFO    ] 2026-06-22 16:36:14
[2026-06-22 16:36:14,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:36:14,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:36:14,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:36:14,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:36:14,592.592 INFO    ] time= 22/06/2026 16:36:14
[2026-06-22 16:36:14,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:36:14,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:36:14,797.797 INFO    ] No existing commands found in stream
[2026-06-22 16:36:19,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:36:19,815.815 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-22 16:36:21,127.127 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:36:21,131.131 INFO    ] Checking for system updates...
[2026-06-22 16:36:21,169.169 INFO    ] 200
[2026-06-22 16:36:21,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:36:21,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:36:21,227.227 INFO    ] No update needed
[2026-06-22 16:36:21,229.229 INFO    ] Checking for camera pi updates...
[2026-06-22 16:36:21,264.264 INFO    ] 200
[2026-06-22 16:36:21,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:36:21,309.309 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:36:21,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:36:21,392.392 INFO    ] No camera update needed
[2026-06-22 16:36:21,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:36:21,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:36:21,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:36:21,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:36:23,449.449 INFO    ] ================================================
[2026-06-22 16:36:23,465.465 INFO    ] Launching Daemon at Mon Jun 22 16:36:23 IST 2026
[2026-06-22 16:36:23,477.477 INFO    ] ================================================
[2026-06-22 16:36:24,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:36:24
[2026-06-22 16:36:24,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:36:25,145.145 INFO    ] Initializing speech engine...
[2026-06-22 16:36:25,154.154 INFO    ] 2026-06-22 16:36:25
[2026-06-22 16:36:25,450.450 INFO    ] 2026-06-22 16:36:25
[2026-06-22 16:36:25,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:36:25,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:36:25,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:36:26,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:36:26,138.138 INFO    ] time= 22/06/2026 16:36:26
[2026-06-22 16:36:26,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:36:26,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:36:26,381.381 INFO    ] No existing commands found in stream
[2026-06-22 16:36:31,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:36:31,403.403 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-22 16:36:32,455.455 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:36:32,457.457 INFO    ] Checking for system updates...
[2026-06-22 16:36:32,493.493 INFO    ] 200
[2026-06-22 16:36:32,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:36:32,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:36:32,569.569 INFO    ] No update needed
[2026-06-22 16:36:32,571.571 INFO    ] Checking for camera pi updates...
[2026-06-22 16:36:32,605.605 INFO    ] 200
[2026-06-22 16:36:32,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:36:32,648.648 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:36:32,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:36:32,706.706 INFO    ] No camera update needed
[2026-06-22 16:36:32,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:36:32,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:36:32,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:36:32,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:36:34,761.761 INFO    ] ================================================
[2026-06-22 16:36:34,777.777 INFO    ] Launching Daemon at Mon Jun 22 16:36:34 IST 2026
[2026-06-22 16:36:34,789.789 INFO    ] ================================================
[2026-06-22 16:36:35,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:36:35
[2026-06-22 16:36:35,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:36:36,216.216 INFO    ] Initializing speech engine...
[2026-06-22 16:36:36,225.225 INFO    ] 2026-06-22 16:36:36
[2026-06-22 16:36:36,475.475 INFO    ] 2026-06-22 16:36:36
[2026-06-22 16:36:36,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:36:36,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:36:36,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:36:37,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:36:37,046.046 INFO    ] time= 22/06/2026 16:36:37
[2026-06-22 16:36:37,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:36:37,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:36:37,199.199 INFO    ] No existing commands found in stream
[2026-06-22 16:36:42,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:36:42,219.219 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-22 16:36:44,127.127 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:36:44,130.130 INFO    ] Checking for system updates...
[2026-06-22 16:36:44,167.167 INFO    ] 200
[2026-06-22 16:36:44,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:36:44,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:36:44,228.228 INFO    ] No update needed
[2026-06-22 16:36:44,231.231 INFO    ] Checking for camera pi updates...
[2026-06-22 16:36:44,265.265 INFO    ] 200
[2026-06-22 16:36:44,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:36:44,309.309 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:36:44,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:36:44,407.407 INFO    ] No camera update needed
[2026-06-22 16:36:44,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:36:44,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:36:44,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:36:44,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:36:46,461.461 INFO    ] ================================================
[2026-06-22 16:36:46,478.478 INFO    ] Launching Daemon at Mon Jun 22 16:36:46 IST 2026
[2026-06-22 16:36:46,490.490 INFO    ] ================================================
[2026-06-22 16:36:47,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:36:47
[2026-06-22 16:36:47,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:36:47,865.865 INFO    ] Initializing speech engine...
[2026-06-22 16:36:47,874.874 INFO    ] 2026-06-22 16:36:47
[2026-06-22 16:36:48,124.124 INFO    ] 2026-06-22 16:36:48
[2026-06-22 16:36:48,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:36:48,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:36:48,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:36:48,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:36:48,597.597 INFO    ] time= 22/06/2026 16:36:48
[2026-06-22 16:36:48,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:36:48,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:36:48,855.855 INFO    ] No existing commands found in stream
[2026-06-22 16:36:53,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:36:53,879.879 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-22 16:36:56,161.161 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:36:56,164.164 INFO    ] Checking for system updates...
[2026-06-22 16:36:56,200.200 INFO    ] 200
[2026-06-22 16:36:56,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:36:56,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:36:56,266.266 INFO    ] No update needed
[2026-06-22 16:36:56,267.267 INFO    ] Checking for camera pi updates...
[2026-06-22 16:36:56,288.288 INFO    ] 200
[2026-06-22 16:36:56,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:36:56,312.312 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:36:56,394.394 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:36:56,397.397 INFO    ] No camera update needed
[2026-06-22 16:36:56,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:36:56,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:36:56,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:36:56,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:36:58,451.451 INFO    ] ================================================
[2026-06-22 16:36:58,467.467 INFO    ] Launching Daemon at Mon Jun 22 16:36:58 IST 2026
[2026-06-22 16:36:58,477.477 INFO    ] ================================================
[2026-06-22 16:36:59,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:36:59
[2026-06-22 16:36:59,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:37:00,042.042 INFO    ] Initializing speech engine...
[2026-06-22 16:37:00,053.053 INFO    ] 2026-06-22 16:37:00
[2026-06-22 16:37:00,341.341 INFO    ] 2026-06-22 16:37:00
[2026-06-22 16:37:00,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:37:00,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:37:00,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:37:00,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:37:00,871.871 INFO    ] time= 22/06/2026 16:37:00
[2026-06-22 16:37:00,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:37:00,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:37:01,069.069 INFO    ] No existing commands found in stream
[2026-06-22 16:37:06,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:37:06,125.125 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-22 16:37:06,695.695 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:37:06,698.698 INFO    ] Checking for system updates...
[2026-06-22 16:37:06,738.738 INFO    ] 200
[2026-06-22 16:37:06,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:37:06,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:37:06,803.803 INFO    ] No update needed
[2026-06-22 16:37:06,805.805 INFO    ] Checking for camera pi updates...
[2026-06-22 16:37:06,846.846 INFO    ] 200
[2026-06-22 16:37:06,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:37:06,894.894 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:37:06,992.992 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:37:06,995.995 INFO    ] No camera update needed
[2026-06-22 16:37:06,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:37:07,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:37:07,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:37:07,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:37:09,052.052 INFO    ] ================================================
[2026-06-22 16:37:09,068.068 INFO    ] Launching Daemon at Mon Jun 22 16:37:09 IST 2026
[2026-06-22 16:37:09,079.079 INFO    ] ================================================
[2026-06-22 16:37:09,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:37:09
[2026-06-22 16:37:10,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:37:10,466.466 INFO    ] Initializing speech engine...
[2026-06-22 16:37:10,471.471 INFO    ] 2026-06-22 16:37:10
[2026-06-22 16:37:10,720.720 INFO    ] 2026-06-22 16:37:10
[2026-06-22 16:37:10,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:37:11,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:37:11,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:37:11,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:37:11,271.271 INFO    ] time= 22/06/2026 16:37:11
[2026-06-22 16:37:11,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:37:11,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:37:11,444.444 INFO    ] No existing commands found in stream
[2026-06-22 16:37:16,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:37:16,477.477 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-22 16:37:20,862.862 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:37:20,865.865 INFO    ] Checking for system updates...
[2026-06-22 16:37:20,903.903 INFO    ] 200
[2026-06-22 16:37:20,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:37:20,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:37:20,970.970 INFO    ] No update needed
[2026-06-22 16:37:20,973.973 INFO    ] Checking for camera pi updates...
[2026-06-22 16:37:21,008.008 INFO    ] 200
[2026-06-22 16:37:21,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:37:21,053.053 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:37:21,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:37:21,242.242 INFO    ] No camera update needed
[2026-06-22 16:37:21,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:37:21,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:37:21,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:37:21,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:37:23,307.307 INFO    ] ================================================
[2026-06-22 16:37:23,322.322 INFO    ] Launching Daemon at Mon Jun 22 16:37:23 IST 2026
[2026-06-22 16:37:23,333.333 INFO    ] ================================================
[2026-06-22 16:37:23,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:37:23
[2026-06-22 16:37:24,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:37:24,700.700 INFO    ] Initializing speech engine...
[2026-06-22 16:37:24,709.709 INFO    ] 2026-06-22 16:37:24
[2026-06-22 16:37:24,961.961 INFO    ] 2026-06-22 16:37:24
[2026-06-22 16:37:24,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:37:25,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:37:25,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:37:25,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:37:25,532.532 INFO    ] time= 22/06/2026 16:37:25
[2026-06-22 16:37:25,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:37:25,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:37:25,686.686 INFO    ] No existing commands found in stream
[2026-06-22 16:37:30,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:37:30,702.702 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-22 16:37:33,553.553 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:37:33,556.556 INFO    ] Checking for system updates...
[2026-06-22 16:37:33,595.595 INFO    ] 200
[2026-06-22 16:37:33,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:37:33,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:37:33,658.658 INFO    ] No update needed
[2026-06-22 16:37:33,660.660 INFO    ] Checking for camera pi updates...
[2026-06-22 16:37:33,701.701 INFO    ] 200
[2026-06-22 16:37:33,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:37:33,748.748 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:37:33,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:37:33,839.839 INFO    ] No camera update needed
[2026-06-22 16:37:33,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:37:33,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:37:33,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:37:33,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:37:35,893.893 INFO    ] ================================================
[2026-06-22 16:37:35,908.908 INFO    ] Launching Daemon at Mon Jun 22 16:37:35 IST 2026
[2026-06-22 16:37:35,918.918 INFO    ] ================================================
[2026-06-22 16:37:36,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:37:36
[2026-06-22 16:37:37,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:37:37,392.392 INFO    ] Initializing speech engine...
[2026-06-22 16:37:37,399.399 INFO    ] 2026-06-22 16:37:37
[2026-06-22 16:37:37,656.656 INFO    ] 2026-06-22 16:37:37
[2026-06-22 16:37:37,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:37:37,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:37:37,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:37:38,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:37:38,146.146 INFO    ] time= 22/06/2026 16:37:38
[2026-06-22 16:37:38,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:37:38,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:37:38,366.366 INFO    ] No existing commands found in stream
[2026-06-22 16:37:43,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:37:43,389.389 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-22 16:37:44,465.465 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:37:44,468.468 INFO    ] Checking for system updates...
[2026-06-22 16:37:44,507.507 INFO    ] 200
[2026-06-22 16:37:44,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:37:44,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:37:44,565.565 INFO    ] No update needed
[2026-06-22 16:37:44,568.568 INFO    ] Checking for camera pi updates...
[2026-06-22 16:37:44,602.602 INFO    ] 200
[2026-06-22 16:37:44,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:37:44,645.645 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:37:44,731.731 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:37:44,733.733 INFO    ] No camera update needed
[2026-06-22 16:37:44,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:37:44,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:37:44,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:37:44,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:37:46,790.790 INFO    ] ================================================
[2026-06-22 16:37:46,806.806 INFO    ] Launching Daemon at Mon Jun 22 16:37:46 IST 2026
[2026-06-22 16:37:46,816.816 INFO    ] ================================================
[2026-06-22 16:37:47,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:37:47
[2026-06-22 16:37:48,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:37:48,319.319 INFO    ] Initializing speech engine...
[2026-06-22 16:37:48,331.331 INFO    ] 2026-06-22 16:37:48
[2026-06-22 16:37:48,641.641 INFO    ] 2026-06-22 16:37:48
[2026-06-22 16:37:48,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:37:48,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:37:48,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:37:49,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:37:49,150.150 INFO    ] time= 22/06/2026 16:37:49
[2026-06-22 16:37:49,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:37:49,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:37:49,329.329 INFO    ] No existing commands found in stream
[2026-06-22 16:37:54,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:37:54,363.363 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-22 16:37:58,145.145 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:37:58,147.147 INFO    ] Checking for system updates...
[2026-06-22 16:37:58,168.168 INFO    ] 200
[2026-06-22 16:37:58,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:37:58,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:37:58,221.221 INFO    ] No update needed
[2026-06-22 16:37:58,224.224 INFO    ] Checking for camera pi updates...
[2026-06-22 16:37:58,258.258 INFO    ] 200
[2026-06-22 16:37:58,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:37:58,305.305 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:37:58,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:37:58,405.405 INFO    ] No camera update needed
[2026-06-22 16:37:58,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:37:58,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:37:58,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:37:58,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:38:00,459.459 INFO    ] ================================================
[2026-06-22 16:38:00,474.474 INFO    ] Launching Daemon at Mon Jun 22 16:38:00 IST 2026
[2026-06-22 16:38:00,484.484 INFO    ] ================================================
[2026-06-22 16:38:01,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:38:01
[2026-06-22 16:38:01,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:38:02,156.156 INFO    ] Initializing speech engine...
[2026-06-22 16:38:02,159.159 INFO    ] 2026-06-22 16:38:02
[2026-06-22 16:38:02,460.460 INFO    ] 2026-06-22 16:38:02
[2026-06-22 16:38:02,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:38:02,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:38:02,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:38:02,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:38:02,908.908 INFO    ] time= 22/06/2026 16:38:02
[2026-06-22 16:38:02,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:38:02,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:38:03,068.068 INFO    ] No existing commands found in stream
[2026-06-22 16:38:08,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:38:08,101.101 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-22 16:38:10,275.275 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:38:10,278.278 INFO    ] Checking for system updates...
[2026-06-22 16:38:10,317.317 INFO    ] 200
[2026-06-22 16:38:10,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:38:10,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:38:10,377.377 INFO    ] No update needed
[2026-06-22 16:38:10,379.379 INFO    ] Checking for camera pi updates...
[2026-06-22 16:38:10,417.417 INFO    ] 200
[2026-06-22 16:38:10,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:38:10,466.466 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:38:10,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:38:10,554.554 INFO    ] No camera update needed
[2026-06-22 16:38:10,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:38:10,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:38:10,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:38:10,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:38:12,619.619 INFO    ] ================================================
[2026-06-22 16:38:12,634.634 INFO    ] Launching Daemon at Mon Jun 22 16:38:12 IST 2026
[2026-06-22 16:38:12,645.645 INFO    ] ================================================
[2026-06-22 16:38:13,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:38:13
[2026-06-22 16:38:13,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:38:14,006.006 INFO    ] Initializing speech engine...
[2026-06-22 16:38:14,015.015 INFO    ] 2026-06-22 16:38:14
[2026-06-22 16:38:14,279.279 INFO    ] 2026-06-22 16:38:14
[2026-06-22 16:38:14,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:38:14,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:38:14,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:38:14,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:38:14,753.753 INFO    ] time= 22/06/2026 16:38:14
[2026-06-22 16:38:14,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:38:14,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:38:14,952.952 INFO    ] No existing commands found in stream
[2026-06-22 16:38:19,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:38:19,980.980 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-22 16:38:23,432.432 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:38:23,435.435 INFO    ] Checking for system updates...
[2026-06-22 16:38:23,471.471 INFO    ] 200
[2026-06-22 16:38:23,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:38:23,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:38:23,530.530 INFO    ] No update needed
[2026-06-22 16:38:23,532.532 INFO    ] Checking for camera pi updates...
[2026-06-22 16:38:23,567.567 INFO    ] 200
[2026-06-22 16:38:23,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:38:23,615.615 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:38:23,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:38:23,698.698 INFO    ] No camera update needed
[2026-06-22 16:38:23,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:38:23,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:38:23,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:38:23,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:38:25,753.753 INFO    ] ================================================
[2026-06-22 16:38:25,768.768 INFO    ] Launching Daemon at Mon Jun 22 16:38:25 IST 2026
[2026-06-22 16:38:25,778.778 INFO    ] ================================================
[2026-06-22 16:38:26,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:38:26
[2026-06-22 16:38:26,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:38:27,216.216 INFO    ] Initializing speech engine...
[2026-06-22 16:38:27,225.225 INFO    ] 2026-06-22 16:38:27
[2026-06-22 16:38:27,499.499 INFO    ] 2026-06-22 16:38:27
[2026-06-22 16:38:27,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:38:27,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:38:27,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:38:27,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:38:27,914.914 INFO    ] time= 22/06/2026 16:38:27
[2026-06-22 16:38:27,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:38:27,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:38:28,116.116 INFO    ] No existing commands found in stream
[2026-06-22 16:38:33,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:38:33,131.131 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-22 16:38:37,081.081 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:38:37,083.083 INFO    ] Checking for system updates...
[2026-06-22 16:38:37,104.104 INFO    ] 200
[2026-06-22 16:38:37,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:38:37,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:38:37,149.149 INFO    ] No update needed
[2026-06-22 16:38:37,151.151 INFO    ] Checking for camera pi updates...
[2026-06-22 16:38:37,186.186 INFO    ] 200
[2026-06-22 16:38:37,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:38:37,238.238 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:38:37,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:38:37,332.332 INFO    ] No camera update needed
[2026-06-22 16:38:37,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:38:37,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:38:37,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:38:37,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:38:39,387.387 INFO    ] ================================================
[2026-06-22 16:38:39,402.402 INFO    ] Launching Daemon at Mon Jun 22 16:38:39 IST 2026
[2026-06-22 16:38:39,413.413 INFO    ] ================================================
[2026-06-22 16:38:39,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:38:39
[2026-06-22 16:38:40,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:38:40,745.745 INFO    ] Initializing speech engine...
[2026-06-22 16:38:40,763.763 INFO    ] 2026-06-22 16:38:40
[2026-06-22 16:38:41,012.012 INFO    ] 2026-06-22 16:38:41
[2026-06-22 16:38:41,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:38:41,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:38:41,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:38:41,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:38:41,510.510 INFO    ] time= 22/06/2026 16:38:41
[2026-06-22 16:38:41,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:38:41,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:38:41,715.715 INFO    ] No existing commands found in stream
[2026-06-22 16:38:46,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:38:46,730.730 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-22 16:38:50,154.154 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:38:50,157.157 INFO    ] Checking for system updates...
[2026-06-22 16:38:50,198.198 INFO    ] 200
[2026-06-22 16:38:50,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:38:50,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:38:50,264.264 INFO    ] No update needed
[2026-06-22 16:38:50,266.266 INFO    ] Checking for camera pi updates...
[2026-06-22 16:38:50,302.302 INFO    ] 200
[2026-06-22 16:38:50,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:38:50,347.347 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:38:50,448.448 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:38:50,451.451 INFO    ] No camera update needed
[2026-06-22 16:38:50,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:38:50,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:38:50,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:38:50,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:38:52,509.509 INFO    ] ================================================
[2026-06-22 16:38:52,524.524 INFO    ] Launching Daemon at Mon Jun 22 16:38:52 IST 2026
[2026-06-22 16:38:52,535.535 INFO    ] ================================================
[2026-06-22 16:38:53,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:38:53
[2026-06-22 16:38:53,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:38:53,913.913 INFO    ] Initializing speech engine...
[2026-06-22 16:38:53,940.940 INFO    ] 2026-06-22 16:38:53
[2026-06-22 16:38:54,219.219 INFO    ] 2026-06-22 16:38:54
[2026-06-22 16:38:54,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:38:54,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:38:54,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:38:54,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:38:54,745.745 INFO    ] time= 22/06/2026 16:38:54
[2026-06-22 16:38:54,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:38:54,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:38:55,013.013 INFO    ] No existing commands found in stream
[2026-06-22 16:39:00,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:39:00,043.043 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-22 16:39:00,640.640 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:39:00,643.643 INFO    ] Checking for system updates...
[2026-06-22 16:39:00,684.684 INFO    ] 200
[2026-06-22 16:39:00,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:39:00,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:39:00,741.741 INFO    ] No update needed
[2026-06-22 16:39:00,744.744 INFO    ] Checking for camera pi updates...
[2026-06-22 16:39:00,782.782 INFO    ] 200
[2026-06-22 16:39:00,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:39:00,825.825 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:39:00,922.922 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:39:00,924.924 INFO    ] No camera update needed
[2026-06-22 16:39:00,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:39:00,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:39:00,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:39:00,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:39:02,981.981 INFO    ] ================================================
[2026-06-22 16:39:03,996.996 INFO    ] Launching Daemon at Mon Jun 22 16:39:02 IST 2026
[2026-06-22 16:39:03,007.007 INFO    ] ================================================
[2026-06-22 16:39:03,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:39:03
[2026-06-22 16:39:04,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:39:04,475.475 INFO    ] Initializing speech engine...
[2026-06-22 16:39:04,484.484 INFO    ] 2026-06-22 16:39:04
[2026-06-22 16:39:04,731.731 INFO    ] 2026-06-22 16:39:04
[2026-06-22 16:39:04,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:39:04,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:39:05,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:39:05,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:39:05,207.207 INFO    ] time= 22/06/2026 16:39:05
[2026-06-22 16:39:05,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:39:05,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:39:05,420.420 INFO    ] No existing commands found in stream
[2026-06-22 16:39:10,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:39:10,448.448 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-22 16:39:13,837.837 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:39:13,840.840 INFO    ] Checking for system updates...
[2026-06-22 16:39:13,879.879 INFO    ] 200
[2026-06-22 16:39:13,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:39:13,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:39:13,943.943 INFO    ] No update needed
[2026-06-22 16:39:13,946.946 INFO    ] Checking for camera pi updates...
[2026-06-22 16:39:13,983.983 INFO    ] 200
[2026-06-22 16:39:13,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:39:14,031.031 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:39:14,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:39:14,133.133 INFO    ] No camera update needed
[2026-06-22 16:39:14,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:39:14,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:39:14,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:39:14,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:39:16,189.189 INFO    ] ================================================
[2026-06-22 16:39:16,204.204 INFO    ] Launching Daemon at Mon Jun 22 16:39:16 IST 2026
[2026-06-22 16:39:16,215.215 INFO    ] ================================================
[2026-06-22 16:39:16,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:39:16
[2026-06-22 16:39:17,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:39:17,556.556 INFO    ] Initializing speech engine...
[2026-06-22 16:39:17,571.571 INFO    ] 2026-06-22 16:39:17
[2026-06-22 16:39:17,859.859 INFO    ] 2026-06-22 16:39:17
[2026-06-22 16:39:17,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:39:18,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:39:18,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:39:18,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:39:18,324.324 INFO    ] time= 22/06/2026 16:39:18
[2026-06-22 16:39:18,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:39:18,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:39:18,498.498 INFO    ] No existing commands found in stream
[2026-06-22 16:39:23,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:39:23,520.520 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-22 16:39:23,984.984 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:39:23,987.987 INFO    ] Checking for system updates...
[2026-06-22 16:39:24,026.026 INFO    ] 200
[2026-06-22 16:39:24,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:39:24,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:39:24,087.087 INFO    ] No update needed
[2026-06-22 16:39:24,089.089 INFO    ] Checking for camera pi updates...
[2026-06-22 16:39:24,129.129 INFO    ] 200
[2026-06-22 16:39:24,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:39:24,174.174 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:39:24,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:39:24,382.382 INFO    ] No camera update needed
[2026-06-22 16:39:24,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:39:24,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:39:24,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:39:24,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:39:26,443.443 INFO    ] ================================================
[2026-06-22 16:39:26,459.459 INFO    ] Launching Daemon at Mon Jun 22 16:39:26 IST 2026
[2026-06-22 16:39:26,470.470 INFO    ] ================================================
[2026-06-22 16:39:27,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:39:27
[2026-06-22 16:39:27,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:39:27,803.803 INFO    ] Initializing speech engine...
[2026-06-22 16:39:27,818.818 INFO    ] 2026-06-22 16:39:27
[2026-06-22 16:39:28,096.096 INFO    ] 2026-06-22 16:39:28
[2026-06-22 16:39:28,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:39:28,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:39:28,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:39:28,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:39:28,517.517 INFO    ] time= 22/06/2026 16:39:28
[2026-06-22 16:39:28,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:39:28,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:39:28,607.607 INFO    ] No existing commands found in stream
[2026-06-22 16:39:33,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:39:33,623.623 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-22 16:39:36,985.985 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:39:36,987.987 INFO    ] Checking for system updates...
[2026-06-22 16:39:37,028.028 INFO    ] 200
[2026-06-22 16:39:37,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:39:37,091.091 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:39:37,094.094 INFO    ] No update needed
[2026-06-22 16:39:37,096.096 INFO    ] Checking for camera pi updates...
[2026-06-22 16:39:37,131.131 INFO    ] 200
[2026-06-22 16:39:37,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:39:37,174.174 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:39:37,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:39:37,259.259 INFO    ] No camera update needed
[2026-06-22 16:39:37,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:39:37,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:39:37,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:39:37,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:39:39,314.314 INFO    ] ================================================
[2026-06-22 16:39:39,329.329 INFO    ] Launching Daemon at Mon Jun 22 16:39:39 IST 2026
[2026-06-22 16:39:39,341.341 INFO    ] ================================================
[2026-06-22 16:39:39,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:39:39
[2026-06-22 16:39:40,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:39:40,819.819 INFO    ] Initializing speech engine...
[2026-06-22 16:39:40,831.831 INFO    ] 2026-06-22 16:39:40
[2026-06-22 16:39:41,126.126 INFO    ] 2026-06-22 16:39:41
[2026-06-22 16:39:41,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:39:41,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:39:41,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:39:41,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:39:41,669.669 INFO    ] time= 22/06/2026 16:39:41
[2026-06-22 16:39:41,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:39:41,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:39:41,831.831 INFO    ] No existing commands found in stream
[2026-06-22 16:39:46,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:39:46,863.863 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-22 16:39:49,426.426 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:39:49,428.428 INFO    ] Checking for system updates...
[2026-06-22 16:39:49,448.448 INFO    ] 200
[2026-06-22 16:39:49,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:39:49,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:39:49,501.501 INFO    ] No update needed
[2026-06-22 16:39:49,503.503 INFO    ] Checking for camera pi updates...
[2026-06-22 16:39:49,542.542 INFO    ] 200
[2026-06-22 16:39:49,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:39:49,592.592 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:39:49,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:39:49,689.689 INFO    ] No camera update needed
[2026-06-22 16:39:49,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:39:49,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:39:49,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:39:49,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:39:51,744.744 INFO    ] ================================================
[2026-06-22 16:39:51,760.760 INFO    ] Launching Daemon at Mon Jun 22 16:39:51 IST 2026
[2026-06-22 16:39:51,772.772 INFO    ] ================================================
[2026-06-22 16:39:52,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:39:52
[2026-06-22 16:39:52,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:39:53,083.083 INFO    ] Initializing speech engine...
[2026-06-22 16:39:53,103.103 INFO    ] 2026-06-22 16:39:53
[2026-06-22 16:39:53,363.363 INFO    ] 2026-06-22 16:39:53
[2026-06-22 16:39:53,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:39:53,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:39:53,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:39:53,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:39:53,746.746 INFO    ] time= 22/06/2026 16:39:53
[2026-06-22 16:39:53,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:39:53,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:39:53,942.942 INFO    ] No existing commands found in stream
[2026-06-22 16:39:58,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:39:58,958.958 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-22 16:40:01,892.892 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:40:01,895.895 INFO    ] Checking for system updates...
[2026-06-22 16:40:01,950.950 INFO    ] 200
[2026-06-22 16:40:01,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:40:02,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:40:02,030.030 INFO    ] No update needed
[2026-06-22 16:40:02,040.040 INFO    ] Checking for camera pi updates...
[2026-06-22 16:40:02,093.093 INFO    ] 200
[2026-06-22 16:40:02,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:40:02,183.183 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:40:02,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:40:02,425.425 INFO    ] No camera update needed
[2026-06-22 16:40:02,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:40:02,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:40:02,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:40:02,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:40:04,495.495 INFO    ] ================================================
[2026-06-22 16:40:04,510.510 INFO    ] Launching Daemon at Mon Jun 22 16:40:04 IST 2026
[2026-06-22 16:40:04,520.520 INFO    ] ================================================
[2026-06-22 16:40:05,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:40:05
[2026-06-22 16:40:05,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:40:05,948.948 INFO    ] Initializing speech engine...
[2026-06-22 16:40:05,961.961 INFO    ] 2026-06-22 16:40:05
[2026-06-22 16:40:06,223.223 INFO    ] 2026-06-22 16:40:06
[2026-06-22 16:40:06,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:40:06,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:40:06,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:40:06,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:40:06,784.784 INFO    ] time= 22/06/2026 16:40:06
[2026-06-22 16:40:06,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:40:06,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:40:06,929.929 INFO    ] No existing commands found in stream
[2026-06-22 16:40:11,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:40:11,952.952 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-22 16:40:13,209.209 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:40:13,210.210 INFO    ] Checking for system updates...
[2026-06-22 16:40:13,232.232 INFO    ] 200
[2026-06-22 16:40:13,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:40:13,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:40:13,268.268 INFO    ] No update needed
[2026-06-22 16:40:13,270.270 INFO    ] Checking for camera pi updates...
[2026-06-22 16:40:13,294.294 INFO    ] 200
[2026-06-22 16:40:13,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:40:13,342.342 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:40:13,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:40:13,423.423 INFO    ] No camera update needed
[2026-06-22 16:40:13,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:40:13,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:40:13,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:40:13,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:40:15,482.482 INFO    ] ================================================
[2026-06-22 16:40:15,497.497 INFO    ] Launching Daemon at Mon Jun 22 16:40:15 IST 2026
[2026-06-22 16:40:15,508.508 INFO    ] ================================================
[2026-06-22 16:40:16,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:40:16
[2026-06-22 16:40:16,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:40:16,823.823 INFO    ] Initializing speech engine...
[2026-06-22 16:40:16,836.836 INFO    ] 2026-06-22 16:40:16
[2026-06-22 16:40:17,103.103 INFO    ] 2026-06-22 16:40:17
[2026-06-22 16:40:17,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:40:17,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:40:17,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:40:17,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:40:17,591.591 INFO    ] time= 22/06/2026 16:40:17
[2026-06-22 16:40:17,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:40:17,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:40:17,828.828 INFO    ] No existing commands found in stream
[2026-06-22 16:40:22,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:40:22,850.850 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-22 16:40:26,727.727 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:40:26,729.729 INFO    ] Checking for system updates...
[2026-06-22 16:40:26,769.769 INFO    ] 200
[2026-06-22 16:40:26,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:40:26,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:40:26,833.833 INFO    ] No update needed
[2026-06-22 16:40:26,835.835 INFO    ] Checking for camera pi updates...
[2026-06-22 16:40:26,872.872 INFO    ] 200
[2026-06-22 16:40:26,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:40:26,918.918 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:40:26,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:40:27,002.002 INFO    ] No camera update needed
[2026-06-22 16:40:27,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:40:27,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:40:27,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:40:27,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:40:29,058.058 INFO    ] ================================================
[2026-06-22 16:40:29,073.073 INFO    ] Launching Daemon at Mon Jun 22 16:40:29 IST 2026
[2026-06-22 16:40:29,085.085 INFO    ] ================================================
[2026-06-22 16:40:29,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:40:29
[2026-06-22 16:40:30,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:40:30,479.479 INFO    ] Initializing speech engine...
[2026-06-22 16:40:30,488.488 INFO    ] 2026-06-22 16:40:30
[2026-06-22 16:40:30,745.745 INFO    ] 2026-06-22 16:40:30
[2026-06-22 16:40:30,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:40:31,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:40:31,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:40:31,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:40:31,306.306 INFO    ] time= 22/06/2026 16:40:31
[2026-06-22 16:40:31,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:40:31,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:40:31,475.475 INFO    ] No existing commands found in stream
[2026-06-22 16:40:36,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:40:36,501.501 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-22 16:40:39,497.497 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:40:39,499.499 INFO    ] Checking for system updates...
[2026-06-22 16:40:39,536.536 INFO    ] 200
[2026-06-22 16:40:39,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:40:39,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:40:39,601.601 INFO    ] No update needed
[2026-06-22 16:40:39,603.603 INFO    ] Checking for camera pi updates...
[2026-06-22 16:40:39,642.642 INFO    ] 200
[2026-06-22 16:40:39,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:40:39,691.691 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:40:39,787.787 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:40:39,790.790 INFO    ] No camera update needed
[2026-06-22 16:40:39,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:40:39,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:40:39,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:40:39,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:40:41,849.849 INFO    ] ================================================
[2026-06-22 16:40:41,864.864 INFO    ] Launching Daemon at Mon Jun 22 16:40:41 IST 2026
[2026-06-22 16:40:41,874.874 INFO    ] ================================================
[2026-06-22 16:40:42,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:40:42
[2026-06-22 16:40:43,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:40:43,381.381 INFO    ] Initializing speech engine...
[2026-06-22 16:40:43,389.389 INFO    ] 2026-06-22 16:40:43
[2026-06-22 16:40:43,671.671 INFO    ] 2026-06-22 16:40:43
[2026-06-22 16:40:43,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:40:43,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:40:43,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:40:44,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:40:44,204.204 INFO    ] time= 22/06/2026 16:40:44
[2026-06-22 16:40:44,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:40:44,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:40:44,362.362 INFO    ] No existing commands found in stream
[2026-06-22 16:40:49,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:40:49,395.395 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-22 16:40:51,199.199 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:40:51,201.201 INFO    ] Checking for system updates...
[2026-06-22 16:40:51,222.222 INFO    ] 200
[2026-06-22 16:40:51,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:40:51,278.278 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:40:51,281.281 INFO    ] No update needed
[2026-06-22 16:40:51,284.284 INFO    ] Checking for camera pi updates...
[2026-06-22 16:40:51,323.323 INFO    ] 200
[2026-06-22 16:40:51,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:40:51,372.372 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:40:51,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:40:51,480.480 INFO    ] No camera update needed
[2026-06-22 16:40:51,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:40:51,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:40:51,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:40:51,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:40:53,539.539 INFO    ] ================================================
[2026-06-22 16:40:53,554.554 INFO    ] Launching Daemon at Mon Jun 22 16:40:53 IST 2026
[2026-06-22 16:40:53,564.564 INFO    ] ================================================
[2026-06-22 16:40:54,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:40:54
[2026-06-22 16:40:54,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:40:55,021.021 INFO    ] Initializing speech engine...
[2026-06-22 16:40:55,029.029 INFO    ] 2026-06-22 16:40:55
[2026-06-22 16:40:55,289.289 INFO    ] 2026-06-22 16:40:55
[2026-06-22 16:40:55,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:40:55,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:40:55,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:40:55,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:40:55,847.847 INFO    ] time= 22/06/2026 16:40:55
[2026-06-22 16:40:55,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:40:55,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:40:56,031.031 INFO    ] No existing commands found in stream
[2026-06-22 16:41:01,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:41:01,060.060 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-22 16:41:03,200.200 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:41:03,204.204 INFO    ] Checking for system updates...
[2026-06-22 16:41:03,247.247 INFO    ] 200
[2026-06-22 16:41:03,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:41:03,305.305 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:41:03,308.308 INFO    ] No update needed
[2026-06-22 16:41:03,310.310 INFO    ] Checking for camera pi updates...
[2026-06-22 16:41:03,346.346 INFO    ] 200
[2026-06-22 16:41:03,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:41:03,394.394 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:41:03,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:41:03,500.500 INFO    ] No camera update needed
[2026-06-22 16:41:03,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:41:03,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:41:03,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:41:03,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:41:05,555.555 INFO    ] ================================================
[2026-06-22 16:41:05,570.570 INFO    ] Launching Daemon at Mon Jun 22 16:41:05 IST 2026
[2026-06-22 16:41:05,581.581 INFO    ] ================================================
[2026-06-22 16:41:06,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:41:06
[2026-06-22 16:41:06,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:41:07,040.040 INFO    ] Initializing speech engine...
[2026-06-22 16:41:07,052.052 INFO    ] 2026-06-22 16:41:07
[2026-06-22 16:41:07,332.332 INFO    ] 2026-06-22 16:41:07
[2026-06-22 16:41:07,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:41:07,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:41:07,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:41:07,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:41:07,872.872 INFO    ] time= 22/06/2026 16:41:07
[2026-06-22 16:41:07,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:41:07,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:41:08,055.055 INFO    ] No existing commands found in stream
[2026-06-22 16:41:13,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:41:13,095.095 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-22 16:41:14,798.798 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:41:14,801.801 INFO    ] Checking for system updates...
[2026-06-22 16:41:14,843.843 INFO    ] 200
[2026-06-22 16:41:14,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:41:14,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:41:14,903.903 INFO    ] No update needed
[2026-06-22 16:41:14,906.906 INFO    ] Checking for camera pi updates...
[2026-06-22 16:41:14,941.941 INFO    ] 200
[2026-06-22 16:41:14,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:41:14,988.988 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:41:15,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:41:15,071.071 INFO    ] No camera update needed
[2026-06-22 16:41:15,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:41:15,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:41:15,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:41:15,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:41:17,127.127 INFO    ] ================================================
[2026-06-22 16:41:17,142.142 INFO    ] Launching Daemon at Mon Jun 22 16:41:17 IST 2026
[2026-06-22 16:41:17,153.153 INFO    ] ================================================
[2026-06-22 16:41:17,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:41:17
[2026-06-22 16:41:18,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:41:18,756.756 INFO    ] Initializing speech engine...
[2026-06-22 16:41:18,765.765 INFO    ] 2026-06-22 16:41:18
[2026-06-22 16:41:19,057.057 INFO    ] 2026-06-22 16:41:19
[2026-06-22 16:41:19,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:41:19,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:41:19,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:41:19,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:41:19,606.606 INFO    ] time= 22/06/2026 16:41:19
[2026-06-22 16:41:19,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:41:19,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:41:19,763.763 INFO    ] No existing commands found in stream
[2026-06-22 16:41:24,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:41:24,781.781 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-22 16:41:27,538.538 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:41:27,541.541 INFO    ] Checking for system updates...
[2026-06-22 16:41:27,578.578 INFO    ] 200
[2026-06-22 16:41:27,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:41:27,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:41:27,642.642 INFO    ] No update needed
[2026-06-22 16:41:27,645.645 INFO    ] Checking for camera pi updates...
[2026-06-22 16:41:27,682.682 INFO    ] 200
[2026-06-22 16:41:27,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:41:27,725.725 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:41:27,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:41:27,894.894 INFO    ] No camera update needed
[2026-06-22 16:41:27,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:41:27,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:41:27,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:41:27,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:41:29,952.952 INFO    ] ================================================
[2026-06-22 16:41:29,967.967 INFO    ] Launching Daemon at Mon Jun 22 16:41:29 IST 2026
[2026-06-22 16:41:29,978.978 INFO    ] ================================================
[2026-06-22 16:41:30,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:41:30
[2026-06-22 16:41:31,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:41:31,373.373 INFO    ] Initializing speech engine...
[2026-06-22 16:41:31,381.381 INFO    ] 2026-06-22 16:41:31
[2026-06-22 16:41:31,692.692 INFO    ] 2026-06-22 16:41:31
[2026-06-22 16:41:31,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:41:32,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:41:32,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:41:32,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:41:32,296.296 INFO    ] time= 22/06/2026 16:41:32
[2026-06-22 16:41:32,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:41:32,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:41:32,460.460 INFO    ] No existing commands found in stream
[2026-06-22 16:41:37,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:41:37,497.497 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-22 16:41:38,116.116 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:41:38,119.119 INFO    ] Checking for system updates...
[2026-06-22 16:41:38,155.155 INFO    ] 200
[2026-06-22 16:41:38,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:41:38,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:41:38,212.212 INFO    ] No update needed
[2026-06-22 16:41:38,215.215 INFO    ] Checking for camera pi updates...
[2026-06-22 16:41:38,252.252 INFO    ] 200
[2026-06-22 16:41:38,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:41:38,299.299 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:41:38,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:41:38,376.376 INFO    ] No camera update needed
[2026-06-22 16:41:38,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:41:38,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:41:38,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:41:38,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:41:40,431.431 INFO    ] ================================================
[2026-06-22 16:41:40,447.447 INFO    ] Launching Daemon at Mon Jun 22 16:41:40 IST 2026
[2026-06-22 16:41:40,457.457 INFO    ] ================================================
[2026-06-22 16:41:41,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:41:41
[2026-06-22 16:41:41,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:41:41,914.914 INFO    ] Initializing speech engine...
[2026-06-22 16:41:41,923.923 INFO    ] 2026-06-22 16:41:41
[2026-06-22 16:41:42,182.182 INFO    ] 2026-06-22 16:41:42
[2026-06-22 16:41:42,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:41:42,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:41:42,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:41:42,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:41:42,635.635 INFO    ] time= 22/06/2026 16:41:42
[2026-06-22 16:41:42,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:41:42,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:41:42,866.866 INFO    ] No existing commands found in stream
[2026-06-22 16:41:47,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:41:47,894.894 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-22 16:41:49,277.277 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:41:49,279.279 INFO    ] Checking for system updates...
[2026-06-22 16:41:49,316.316 INFO    ] 200
[2026-06-22 16:41:49,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:41:49,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:41:49,373.373 INFO    ] No update needed
[2026-06-22 16:41:49,376.376 INFO    ] Checking for camera pi updates...
[2026-06-22 16:41:49,414.414 INFO    ] 200
[2026-06-22 16:41:49,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:41:49,453.453 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:41:49,561.561 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:41:49,564.564 INFO    ] No camera update needed
[2026-06-22 16:41:49,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:41:49,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:41:49,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:41:49,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:41:51,623.623 INFO    ] ================================================
[2026-06-22 16:41:51,638.638 INFO    ] Launching Daemon at Mon Jun 22 16:41:51 IST 2026
[2026-06-22 16:41:51,649.649 INFO    ] ================================================
[2026-06-22 16:41:52,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:41:52
[2026-06-22 16:41:52,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:41:52,981.981 INFO    ] Initializing speech engine...
[2026-06-22 16:41:52,991.991 INFO    ] 2026-06-22 16:41:52
[2026-06-22 16:41:53,241.241 INFO    ] 2026-06-22 16:41:53
[2026-06-22 16:41:53,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:41:53,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:41:53,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:41:53,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:41:53,741.741 INFO    ] time= 22/06/2026 16:41:53
[2026-06-22 16:41:53,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:41:53,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:41:53,968.968 INFO    ] No existing commands found in stream
[2026-06-22 16:41:58,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:41:58,993.993 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-22 16:42:00,807.807 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:42:00,811.811 INFO    ] Checking for system updates...
[2026-06-22 16:42:00,847.847 INFO    ] 200
[2026-06-22 16:42:00,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:42:00,904.904 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:42:00,906.906 INFO    ] No update needed
[2026-06-22 16:42:00,909.909 INFO    ] Checking for camera pi updates...
[2026-06-22 16:42:00,943.943 INFO    ] 200
[2026-06-22 16:42:00,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:42:00,986.986 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:42:01,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:42:01,064.064 INFO    ] No camera update needed
[2026-06-22 16:42:01,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:42:01,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:42:01,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:42:01,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:42:03,122.122 INFO    ] ================================================
[2026-06-22 16:42:03,138.138 INFO    ] Launching Daemon at Mon Jun 22 16:42:03 IST 2026
[2026-06-22 16:42:03,149.149 INFO    ] ================================================
[2026-06-22 16:42:03,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:42:03
[2026-06-22 16:42:04,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:42:04,808.808 INFO    ] Initializing speech engine...
[2026-06-22 16:42:04,817.817 INFO    ] 2026-06-22 16:42:04
[2026-06-22 16:42:05,098.098 INFO    ] 2026-06-22 16:42:05
[2026-06-22 16:42:05,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:42:05,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:42:05,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:42:05,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:42:05,611.611 INFO    ] time= 22/06/2026 16:42:05
[2026-06-22 16:42:05,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:42:05,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:42:05,826.826 INFO    ] No existing commands found in stream
[2026-06-22 16:42:10,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:42:10,842.842 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-22 16:42:13,207.207 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:42:13,208.208 INFO    ] Checking for system updates...
[2026-06-22 16:42:13,231.231 INFO    ] 200
[2026-06-22 16:42:13,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:42:13,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:42:13,273.273 INFO    ] No update needed
[2026-06-22 16:42:13,276.276 INFO    ] Checking for camera pi updates...
[2026-06-22 16:42:13,313.313 INFO    ] 200
[2026-06-22 16:42:13,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:42:13,356.356 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:42:13,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:42:13,444.444 INFO    ] No camera update needed
[2026-06-22 16:42:13,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:42:13,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:42:13,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:42:13,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:42:15,500.500 INFO    ] ================================================
[2026-06-22 16:42:15,516.516 INFO    ] Launching Daemon at Mon Jun 22 16:42:15 IST 2026
[2026-06-22 16:42:15,527.527 INFO    ] ================================================
[2026-06-22 16:42:16,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:42:16
[2026-06-22 16:42:16,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:42:16,979.979 INFO    ] Initializing speech engine...
[2026-06-22 16:42:16,988.988 INFO    ] 2026-06-22 16:42:16
[2026-06-22 16:42:17,286.286 INFO    ] 2026-06-22 16:42:17
[2026-06-22 16:42:17,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:42:17,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:42:17,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:42:17,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:42:17,637.637 INFO    ] time= 22/06/2026 16:42:17
[2026-06-22 16:42:17,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:42:17,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:42:17,779.779 INFO    ] No existing commands found in stream
[2026-06-22 16:42:22,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:42:22,798.798 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-22 16:42:26,238.238 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:42:26,239.239 INFO    ] Checking for system updates...
[2026-06-22 16:42:26,261.261 INFO    ] 200
[2026-06-22 16:42:26,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:42:26,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:42:26,324.324 INFO    ] No update needed
[2026-06-22 16:42:26,327.327 INFO    ] Checking for camera pi updates...
[2026-06-22 16:42:26,366.366 INFO    ] 200
[2026-06-22 16:42:26,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:42:26,417.417 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:42:26,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:42:26,531.531 INFO    ] No camera update needed
[2026-06-22 16:42:26,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:42:26,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:42:26,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:42:26,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:42:28,587.587 INFO    ] ================================================
[2026-06-22 16:42:28,602.602 INFO    ] Launching Daemon at Mon Jun 22 16:42:28 IST 2026
[2026-06-22 16:42:28,613.613 INFO    ] ================================================
[2026-06-22 16:42:29,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:42:29
[2026-06-22 16:42:29,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:42:30,176.176 INFO    ] Initializing speech engine...
[2026-06-22 16:42:30,183.183 INFO    ] 2026-06-22 16:42:30
[2026-06-22 16:42:30,484.484 INFO    ] 2026-06-22 16:42:30
[2026-06-22 16:42:30,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:42:30,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:42:30,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:42:30,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:42:30,915.915 INFO    ] time= 22/06/2026 16:42:30
[2026-06-22 16:42:30,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:42:30,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:42:31,105.105 INFO    ] No existing commands found in stream
[2026-06-22 16:42:36,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:42:36,133.133 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-22 16:42:37,107.107 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:42:37,109.109 INFO    ] Checking for system updates...
[2026-06-22 16:42:37,146.146 INFO    ] 200
[2026-06-22 16:42:37,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:42:37,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:42:37,205.205 INFO    ] No update needed
[2026-06-22 16:42:37,208.208 INFO    ] Checking for camera pi updates...
[2026-06-22 16:42:37,242.242 INFO    ] 200
[2026-06-22 16:42:37,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:42:37,291.291 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:42:37,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:42:37,373.373 INFO    ] No camera update needed
[2026-06-22 16:42:37,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:42:37,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:42:37,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:42:37,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:42:39,430.430 INFO    ] ================================================
[2026-06-22 16:42:39,445.445 INFO    ] Launching Daemon at Mon Jun 22 16:42:39 IST 2026
[2026-06-22 16:42:39,456.456 INFO    ] ================================================
[2026-06-22 16:42:40,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:42:40
[2026-06-22 16:42:40,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:42:40,892.892 INFO    ] Initializing speech engine...
[2026-06-22 16:42:40,913.913 INFO    ] 2026-06-22 16:42:40
[2026-06-22 16:42:41,168.168 INFO    ] 2026-06-22 16:42:41
[2026-06-22 16:42:41,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:42:41,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:42:41,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:42:41,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:42:41,642.642 INFO    ] time= 22/06/2026 16:42:41
[2026-06-22 16:42:41,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:42:41,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:42:41,852.852 INFO    ] No existing commands found in stream
[2026-06-22 16:42:46,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:42:46,880.880 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-22 16:42:51,243.243 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:42:51,246.246 INFO    ] Checking for system updates...
[2026-06-22 16:42:51,288.288 INFO    ] 200
[2026-06-22 16:42:51,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:42:51,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:42:51,356.356 INFO    ] No update needed
[2026-06-22 16:42:51,359.359 INFO    ] Checking for camera pi updates...
[2026-06-22 16:42:51,395.395 INFO    ] 200
[2026-06-22 16:42:51,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:42:51,446.446 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:42:51,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:42:51,530.530 INFO    ] No camera update needed
[2026-06-22 16:42:51,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:42:51,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:42:51,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:42:51,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:42:53,589.589 INFO    ] ================================================
[2026-06-22 16:42:53,604.604 INFO    ] Launching Daemon at Mon Jun 22 16:42:53 IST 2026
[2026-06-22 16:42:53,615.615 INFO    ] ================================================
[2026-06-22 16:42:54,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:42:54
[2026-06-22 16:42:54,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:42:54,986.986 INFO    ] Initializing speech engine...
[2026-06-22 16:42:54,996.996 INFO    ] 2026-06-22 16:42:54
[2026-06-22 16:42:55,253.253 INFO    ] 2026-06-22 16:42:55
[2026-06-22 16:42:55,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:42:55,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:42:55,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:42:55,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:42:55,736.736 INFO    ] time= 22/06/2026 16:42:55
[2026-06-22 16:42:55,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:42:55,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:42:55,947.947 INFO    ] No existing commands found in stream
[2026-06-22 16:43:00,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:43:00,965.965 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-22 16:43:04,051.051 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:43:04,054.054 INFO    ] Checking for system updates...
[2026-06-22 16:43:04,092.092 INFO    ] 200
[2026-06-22 16:43:04,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:43:04,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:43:04,149.149 INFO    ] No update needed
[2026-06-22 16:43:04,152.152 INFO    ] Checking for camera pi updates...
[2026-06-22 16:43:04,190.190 INFO    ] 200
[2026-06-22 16:43:04,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:43:04,234.234 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:43:04,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:43:04,300.300 INFO    ] No camera update needed
[2026-06-22 16:43:04,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:43:04,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:43:04,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:43:04,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:43:06,357.357 INFO    ] ================================================
[2026-06-22 16:43:06,372.372 INFO    ] Launching Daemon at Mon Jun 22 16:43:06 IST 2026
[2026-06-22 16:43:06,383.383 INFO    ] ================================================
[2026-06-22 16:43:06,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:43:06
[2026-06-22 16:43:07,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:43:07,828.828 INFO    ] Initializing speech engine...
[2026-06-22 16:43:07,837.837 INFO    ] 2026-06-22 16:43:07
[2026-06-22 16:43:08,112.112 INFO    ] 2026-06-22 16:43:08
[2026-06-22 16:43:08,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:43:08,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:43:08,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:43:08,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:43:08,546.546 INFO    ] time= 22/06/2026 16:43:08
[2026-06-22 16:43:08,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:43:08,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:43:08,690.690 INFO    ] No existing commands found in stream
[2026-06-22 16:43:13,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:43:13,718.718 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-22 16:43:15,691.691 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:43:15,694.694 INFO    ] Checking for system updates...
[2026-06-22 16:43:15,734.734 INFO    ] 200
[2026-06-22 16:43:15,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:43:15,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:43:15,800.800 INFO    ] No update needed
[2026-06-22 16:43:15,803.803 INFO    ] Checking for camera pi updates...
[2026-06-22 16:43:15,841.841 INFO    ] 200
[2026-06-22 16:43:15,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:43:15,891.891 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:43:15,987.987 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:43:15,990.990 INFO    ] No camera update needed
[2026-06-22 16:43:15,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:43:15,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:43:16,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:43:16,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:43:18,046.046 INFO    ] ================================================
[2026-06-22 16:43:18,062.062 INFO    ] Launching Daemon at Mon Jun 22 16:43:18 IST 2026
[2026-06-22 16:43:18,073.073 INFO    ] ================================================
[2026-06-22 16:43:18,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:43:18
[2026-06-22 16:43:19,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:43:19,529.529 INFO    ] Initializing speech engine...
[2026-06-22 16:43:19,535.535 INFO    ] 2026-06-22 16:43:19
[2026-06-22 16:43:19,829.829 INFO    ] 2026-06-22 16:43:19
[2026-06-22 16:43:19,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:43:20,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:43:20,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:43:20,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:43:20,215.215 INFO    ] time= 22/06/2026 16:43:20
[2026-06-22 16:43:20,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:43:20,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:43:20,407.407 INFO    ] No existing commands found in stream
[2026-06-22 16:43:25,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:43:25,427.427 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-22 16:43:28,662.662 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:43:28,666.666 INFO    ] Checking for system updates...
[2026-06-22 16:43:28,703.703 INFO    ] 200
[2026-06-22 16:43:28,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:43:28,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:43:28,764.764 INFO    ] No update needed
[2026-06-22 16:43:28,767.767 INFO    ] Checking for camera pi updates...
[2026-06-22 16:43:28,802.802 INFO    ] 200
[2026-06-22 16:43:28,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:43:28,847.847 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:43:28,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:43:28,927.927 INFO    ] No camera update needed
[2026-06-22 16:43:28,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:43:28,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:43:28,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:43:28,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:43:30,984.984 INFO    ] ================================================
[2026-06-22 16:43:31,999.999 INFO    ] Launching Daemon at Mon Jun 22 16:43:30 IST 2026
[2026-06-22 16:43:31,010.010 INFO    ] ================================================
[2026-06-22 16:43:31,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:43:31
[2026-06-22 16:43:32,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:43:32,503.503 INFO    ] Initializing speech engine...
[2026-06-22 16:43:32,512.512 INFO    ] 2026-06-22 16:43:32
[2026-06-22 16:43:32,821.821 INFO    ] 2026-06-22 16:43:32
[2026-06-22 16:43:32,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:43:33,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:43:33,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:43:33,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:43:33,328.328 INFO    ] time= 22/06/2026 16:43:33
[2026-06-22 16:43:33,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:43:33,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:43:33,539.539 INFO    ] No existing commands found in stream
[2026-06-22 16:43:38,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:43:38,568.568 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-22 16:43:40,230.230 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:43:40,233.233 INFO    ] Checking for system updates...
[2026-06-22 16:43:40,270.270 INFO    ] 200
[2026-06-22 16:43:40,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:43:40,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:43:40,328.328 INFO    ] No update needed
[2026-06-22 16:43:40,330.330 INFO    ] Checking for camera pi updates...
[2026-06-22 16:43:40,364.364 INFO    ] 200
[2026-06-22 16:43:40,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:43:40,413.413 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:43:40,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:43:40,499.499 INFO    ] No camera update needed
[2026-06-22 16:43:40,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:43:40,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:43:40,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:43:40,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:43:42,554.554 INFO    ] ================================================
[2026-06-22 16:43:42,570.570 INFO    ] Launching Daemon at Mon Jun 22 16:43:42 IST 2026
[2026-06-22 16:43:42,581.581 INFO    ] ================================================
[2026-06-22 16:43:43,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:43:43
[2026-06-22 16:43:43,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:43:43,908.908 INFO    ] Initializing speech engine...
[2026-06-22 16:43:43,914.914 INFO    ] 2026-06-22 16:43:43
[2026-06-22 16:43:44,212.212 INFO    ] 2026-06-22 16:43:44
[2026-06-22 16:43:44,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:43:44,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:43:44,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:43:44,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:43:44,733.733 INFO    ] time= 22/06/2026 16:43:44
[2026-06-22 16:43:44,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:43:44,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:43:44,925.925 INFO    ] No existing commands found in stream
[2026-06-22 16:43:49,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:43:49,939.939 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-22 16:43:52,223.223 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:43:52,226.226 INFO    ] Checking for system updates...
[2026-06-22 16:43:52,271.271 INFO    ] 200
[2026-06-22 16:43:52,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:43:52,335.335 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:43:52,337.337 INFO    ] No update needed
[2026-06-22 16:43:52,339.339 INFO    ] Checking for camera pi updates...
[2026-06-22 16:43:52,377.377 INFO    ] 200
[2026-06-22 16:43:52,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:43:52,426.426 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:43:52,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:43:52,518.518 INFO    ] No camera update needed
[2026-06-22 16:43:52,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:43:52,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:43:52,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:43:52,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:43:54,574.574 INFO    ] ================================================
[2026-06-22 16:43:54,591.591 INFO    ] Launching Daemon at Mon Jun 22 16:43:54 IST 2026
[2026-06-22 16:43:54,602.602 INFO    ] ================================================
[2026-06-22 16:43:55,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:43:55
[2026-06-22 16:43:55,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:43:56,272.272 INFO    ] Initializing speech engine...
[2026-06-22 16:43:56,285.285 INFO    ] 2026-06-22 16:43:56
[2026-06-22 16:43:56,573.573 INFO    ] 2026-06-22 16:43:56
[2026-06-22 16:43:56,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:43:56,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:43:56,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:43:57,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:43:57,123.123 INFO    ] time= 22/06/2026 16:43:57
[2026-06-22 16:43:57,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:43:57,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:43:57,261.261 INFO    ] No existing commands found in stream
[2026-06-22 16:44:02,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:44:02,300.300 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-22 16:44:03,385.385 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:44:03,388.388 INFO    ] Checking for system updates...
[2026-06-22 16:44:03,426.426 INFO    ] 200
[2026-06-22 16:44:03,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:44:03,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:44:03,490.490 INFO    ] No update needed
[2026-06-22 16:44:03,492.492 INFO    ] Checking for camera pi updates...
[2026-06-22 16:44:03,526.526 INFO    ] 200
[2026-06-22 16:44:03,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:44:03,568.568 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:44:03,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:44:03,652.652 INFO    ] No camera update needed
[2026-06-22 16:44:03,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:44:03,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:44:03,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:44:03,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:44:05,708.708 INFO    ] ================================================
[2026-06-22 16:44:05,723.723 INFO    ] Launching Daemon at Mon Jun 22 16:44:05 IST 2026
[2026-06-22 16:44:05,734.734 INFO    ] ================================================
[2026-06-22 16:44:06,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:44:06
[2026-06-22 16:44:06,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:44:07,205.205 INFO    ] Initializing speech engine...
[2026-06-22 16:44:07,211.211 INFO    ] 2026-06-22 16:44:07
[2026-06-22 16:44:07,513.513 INFO    ] 2026-06-22 16:44:07
[2026-06-22 16:44:07,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:44:07,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:44:07,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:44:07,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:44:08,014.014 INFO    ] time= 22/06/2026 16:44:08
[2026-06-22 16:44:08,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:44:08,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:44:08,219.219 INFO    ] No existing commands found in stream
[2026-06-22 16:44:13,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:44:13,235.235 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-22 16:44:14,935.935 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:44:14,938.938 INFO    ] Checking for system updates...
[2026-06-22 16:44:14,978.978 INFO    ] 200
[2026-06-22 16:44:14,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:44:15,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:44:15,058.058 INFO    ] No update needed
[2026-06-22 16:44:15,060.060 INFO    ] Checking for camera pi updates...
[2026-06-22 16:44:15,097.097 INFO    ] 200
[2026-06-22 16:44:15,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:44:15,146.146 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:44:15,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:44:15,237.237 INFO    ] No camera update needed
[2026-06-22 16:44:15,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:44:15,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:44:15,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:44:15,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:44:17,293.293 INFO    ] ================================================
[2026-06-22 16:44:17,309.309 INFO    ] Launching Daemon at Mon Jun 22 16:44:17 IST 2026
[2026-06-22 16:44:17,319.319 INFO    ] ================================================
[2026-06-22 16:44:17,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:44:17
[2026-06-22 16:44:18,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:44:18,642.642 INFO    ] Initializing speech engine...
[2026-06-22 16:44:18,648.648 INFO    ] 2026-06-22 16:44:18
[2026-06-22 16:44:18,953.953 INFO    ] 2026-06-22 16:44:18
[2026-06-22 16:44:18,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:44:19,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:44:19,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:44:19,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:44:19,342.342 INFO    ] time= 22/06/2026 16:44:19
[2026-06-22 16:44:19,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:44:19,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:44:19,470.470 INFO    ] No existing commands found in stream
[2026-06-22 16:44:24,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:44:24,485.485 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-22 16:44:25,743.743 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:44:25,745.745 INFO    ] Checking for system updates...
[2026-06-22 16:44:25,786.786 INFO    ] 200
[2026-06-22 16:44:25,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:44:25,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:44:25,851.851 INFO    ] No update needed
[2026-06-22 16:44:25,853.853 INFO    ] Checking for camera pi updates...
[2026-06-22 16:44:25,892.892 INFO    ] 200
[2026-06-22 16:44:25,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:44:25,941.941 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:44:26,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:44:26,027.027 INFO    ] No camera update needed
[2026-06-22 16:44:26,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:44:26,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:44:26,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:44:26,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:44:28,086.086 INFO    ] ================================================
[2026-06-22 16:44:28,102.102 INFO    ] Launching Daemon at Mon Jun 22 16:44:28 IST 2026
[2026-06-22 16:44:28,113.113 INFO    ] ================================================
[2026-06-22 16:44:28,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:44:28
[2026-06-22 16:44:29,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:44:29,713.713 INFO    ] Initializing speech engine...
[2026-06-22 16:44:29,720.720 INFO    ] 2026-06-22 16:44:29
[2026-06-22 16:44:30,013.013 INFO    ] 2026-06-22 16:44:30
[2026-06-22 16:44:30,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:44:30,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:44:30,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:44:30,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:44:30,573.573 INFO    ] time= 22/06/2026 16:44:30
[2026-06-22 16:44:30,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:44:30,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:44:30,725.725 INFO    ] No existing commands found in stream
[2026-06-22 16:44:35,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:44:35,759.759 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-22 16:44:40,114.114 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:44:40,117.117 INFO    ] Checking for system updates...
[2026-06-22 16:44:40,166.166 INFO    ] 200
[2026-06-22 16:44:40,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:44:40,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:44:40,227.227 INFO    ] No update needed
[2026-06-22 16:44:40,230.230 INFO    ] Checking for camera pi updates...
[2026-06-22 16:44:40,270.270 INFO    ] 200
[2026-06-22 16:44:40,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:44:40,318.318 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:44:40,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:44:40,405.405 INFO    ] No camera update needed
[2026-06-22 16:44:40,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:44:40,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:44:40,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:44:40,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:44:42,464.464 INFO    ] ================================================
[2026-06-22 16:44:42,480.480 INFO    ] Launching Daemon at Mon Jun 22 16:44:42 IST 2026
[2026-06-22 16:44:42,491.491 INFO    ] ================================================
[2026-06-22 16:44:43,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:44:43
[2026-06-22 16:44:43,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:44:43,859.859 INFO    ] Initializing speech engine...
[2026-06-22 16:44:43,868.868 INFO    ] 2026-06-22 16:44:43
[2026-06-22 16:44:44,120.120 INFO    ] 2026-06-22 16:44:44
[2026-06-22 16:44:44,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:44:44,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:44:44,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:44:44,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:44:44,601.601 INFO    ] time= 22/06/2026 16:44:44
[2026-06-22 16:44:44,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:44:44,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:44:44,842.842 INFO    ] No existing commands found in stream
[2026-06-22 16:44:49,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:44:49,876.876 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-22 16:44:52,194.194 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:44:52,197.197 INFO    ] Checking for system updates...
[2026-06-22 16:44:52,240.240 INFO    ] 200
[2026-06-22 16:44:52,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:44:52,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:44:52,308.308 INFO    ] No update needed
[2026-06-22 16:44:52,311.311 INFO    ] Checking for camera pi updates...
[2026-06-22 16:44:52,347.347 INFO    ] 200
[2026-06-22 16:44:52,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:44:52,398.398 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:44:52,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:44:52,502.502 INFO    ] No camera update needed
[2026-06-22 16:44:52,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:44:52,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:44:52,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:44:52,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:44:54,557.557 INFO    ] ================================================
[2026-06-22 16:44:54,573.573 INFO    ] Launching Daemon at Mon Jun 22 16:44:54 IST 2026
[2026-06-22 16:44:54,585.585 INFO    ] ================================================
[2026-06-22 16:44:55,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:44:55
[2026-06-22 16:44:55,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:44:56,191.191 INFO    ] Initializing speech engine...
[2026-06-22 16:44:56,216.216 INFO    ] 2026-06-22 16:44:56
[2026-06-22 16:44:56,472.472 INFO    ] 2026-06-22 16:44:56
[2026-06-22 16:44:56,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:44:56,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:44:56,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:44:56,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:44:56,901.901 INFO    ] time= 22/06/2026 16:44:56
[2026-06-22 16:44:56,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:44:56,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:44:56,987.987 INFO    ] No existing commands found in stream
[2026-06-22 16:45:01,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:45:02,001.001 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-22 16:45:05,352.352 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:45:05,354.354 INFO    ] Checking for system updates...
[2026-06-22 16:45:05,395.395 INFO    ] 200
[2026-06-22 16:45:05,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:45:05,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:45:05,453.453 INFO    ] No update needed
[2026-06-22 16:45:05,455.455 INFO    ] Checking for camera pi updates...
[2026-06-22 16:45:05,490.490 INFO    ] 200
[2026-06-22 16:45:05,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:45:05,533.533 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:45:05,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:45:05,619.619 INFO    ] No camera update needed
[2026-06-22 16:45:05,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:45:05,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:45:05,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:45:05,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:45:07,676.676 INFO    ] ================================================
[2026-06-22 16:45:07,692.692 INFO    ] Launching Daemon at Mon Jun 22 16:45:07 IST 2026
[2026-06-22 16:45:07,704.704 INFO    ] ================================================
[2026-06-22 16:45:08,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:45:08
[2026-06-22 16:45:08,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:45:09,057.057 INFO    ] Initializing speech engine...
[2026-06-22 16:45:09,068.068 INFO    ] 2026-06-22 16:45:09
[2026-06-22 16:45:09,312.312 INFO    ] 2026-06-22 16:45:09
[2026-06-22 16:45:09,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:45:09,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:45:09,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:45:09,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:45:09,770.770 INFO    ] time= 22/06/2026 16:45:09
[2026-06-22 16:45:09,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:45:09,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:45:10,039.039 INFO    ] No existing commands found in stream
[2026-06-22 16:45:15,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:45:15,061.061 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-22 16:45:17,005.005 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:45:17,008.008 INFO    ] Checking for system updates...
[2026-06-22 16:45:17,044.044 INFO    ] 200
[2026-06-22 16:45:17,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:45:17,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:45:17,101.101 INFO    ] No update needed
[2026-06-22 16:45:17,104.104 INFO    ] Checking for camera pi updates...
[2026-06-22 16:45:17,138.138 INFO    ] 200
[2026-06-22 16:45:17,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:45:17,181.181 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:45:17,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:45:17,271.271 INFO    ] No camera update needed
[2026-06-22 16:45:17,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:45:17,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:45:17,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:45:17,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:45:19,330.330 INFO    ] ================================================
[2026-06-22 16:45:19,346.346 INFO    ] Launching Daemon at Mon Jun 22 16:45:19 IST 2026
[2026-06-22 16:45:19,358.358 INFO    ] ================================================
[2026-06-22 16:45:19,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:45:19
[2026-06-22 16:45:20,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:45:20,736.736 INFO    ] Initializing speech engine...
[2026-06-22 16:45:20,745.745 INFO    ] 2026-06-22 16:45:20
[2026-06-22 16:45:21,044.044 INFO    ] 2026-06-22 16:45:21
[2026-06-22 16:45:21,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:45:21,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:45:21,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:45:21,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:45:21,547.547 INFO    ] time= 22/06/2026 16:45:21
[2026-06-22 16:45:21,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:45:21,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:45:21,761.761 INFO    ] No existing commands found in stream
[2026-06-22 16:45:26,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:45:26,776.776 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-22 16:45:30,255.255 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:45:30,256.256 INFO    ] Checking for system updates...
[2026-06-22 16:45:30,278.278 INFO    ] 200
[2026-06-22 16:45:30,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:45:30,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:45:30,334.334 INFO    ] No update needed
[2026-06-22 16:45:30,337.337 INFO    ] Checking for camera pi updates...
[2026-06-22 16:45:30,380.380 INFO    ] 200
[2026-06-22 16:45:30,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:45:30,427.427 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:45:30,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:45:30,495.495 INFO    ] No camera update needed
[2026-06-22 16:45:30,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:45:30,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:45:30,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:45:30,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:45:32,556.556 INFO    ] ================================================
[2026-06-22 16:45:32,572.572 INFO    ] Launching Daemon at Mon Jun 22 16:45:32 IST 2026
[2026-06-22 16:45:32,585.585 INFO    ] ================================================
[2026-06-22 16:45:33,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:45:33
[2026-06-22 16:45:33,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:45:34,042.042 INFO    ] Initializing speech engine...
[2026-06-22 16:45:34,064.064 INFO    ] 2026-06-22 16:45:34
[2026-06-22 16:45:34,322.322 INFO    ] 2026-06-22 16:45:34
[2026-06-22 16:45:34,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:45:34,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:45:34,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:45:34,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:45:34,885.885 INFO    ] time= 22/06/2026 16:45:34
[2026-06-22 16:45:34,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:45:34,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:45:35,041.041 INFO    ] No existing commands found in stream
[2026-06-22 16:45:40,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:45:40,056.056 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-22 16:45:44,522.522 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:45:44,525.525 INFO    ] Checking for system updates...
[2026-06-22 16:45:44,561.561 INFO    ] 200
[2026-06-22 16:45:44,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:45:44,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:45:44,619.619 INFO    ] No update needed
[2026-06-22 16:45:44,622.622 INFO    ] Checking for camera pi updates...
[2026-06-22 16:45:44,656.656 INFO    ] 200
[2026-06-22 16:45:44,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:45:44,700.700 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:45:44,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:45:44,890.890 INFO    ] No camera update needed
[2026-06-22 16:45:44,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:45:44,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:45:44,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:45:44,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:45:46,946.946 INFO    ] ================================================
[2026-06-22 16:45:46,962.962 INFO    ] Launching Daemon at Mon Jun 22 16:45:46 IST 2026
[2026-06-22 16:45:46,974.974 INFO    ] ================================================
[2026-06-22 16:45:47,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:45:47
[2026-06-22 16:45:48,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:45:48,367.367 INFO    ] Initializing speech engine...
[2026-06-22 16:45:48,390.390 INFO    ] 2026-06-22 16:45:48
[2026-06-22 16:45:48,641.641 INFO    ] 2026-06-22 16:45:48
[2026-06-22 16:45:48,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:45:48,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:45:48,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:45:49,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:45:49,080.080 INFO    ] time= 22/06/2026 16:45:49
[2026-06-22 16:45:49,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:45:49,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:45:49,344.344 INFO    ] No existing commands found in stream
[2026-06-22 16:45:54,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:45:54,375.375 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-22 16:45:56,265.265 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:45:56,268.268 INFO    ] Checking for system updates...
[2026-06-22 16:45:56,304.304 INFO    ] 200
[2026-06-22 16:45:56,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:45:56,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:45:56,363.363 INFO    ] No update needed
[2026-06-22 16:45:56,365.365 INFO    ] Checking for camera pi updates...
[2026-06-22 16:45:56,400.400 INFO    ] 200
[2026-06-22 16:45:56,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:45:56,444.444 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:45:56,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:45:56,523.523 INFO    ] No camera update needed
[2026-06-22 16:45:56,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:45:56,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:45:56,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:45:56,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:45:58,577.577 INFO    ] ================================================
[2026-06-22 16:45:58,594.594 INFO    ] Launching Daemon at Mon Jun 22 16:45:58 IST 2026
[2026-06-22 16:45:58,606.606 INFO    ] ================================================
[2026-06-22 16:45:59,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:45:59
[2026-06-22 16:45:59,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:45:59,989.989 INFO    ] Initializing speech engine...
[2026-06-22 16:45:59,998.998 INFO    ] 2026-06-22 16:45:59
[2026-06-22 16:46:00,258.258 INFO    ] 2026-06-22 16:46:00
[2026-06-22 16:46:00,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:46:00,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:46:00,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:46:00,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:46:00,807.807 INFO    ] time= 22/06/2026 16:46:00
[2026-06-22 16:46:00,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:46:00,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:46:00,968.968 INFO    ] No existing commands found in stream
[2026-06-22 16:46:05,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:46:05,997.997 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-22 16:46:06,912.912 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:46:06,915.915 INFO    ] Checking for system updates...
[2026-06-22 16:46:06,950.950 INFO    ] 200
[2026-06-22 16:46:06,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:46:07,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:46:07,008.008 INFO    ] No update needed
[2026-06-22 16:46:07,010.010 INFO    ] Checking for camera pi updates...
[2026-06-22 16:46:07,048.048 INFO    ] 200
[2026-06-22 16:46:07,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:46:07,096.096 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:46:07,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:46:07,184.184 INFO    ] No camera update needed
[2026-06-22 16:46:07,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:46:07,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:46:07,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:46:07,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:46:09,241.241 INFO    ] ================================================
[2026-06-22 16:46:09,257.257 INFO    ] Launching Daemon at Mon Jun 22 16:46:09 IST 2026
[2026-06-22 16:46:09,269.269 INFO    ] ================================================
[2026-06-22 16:46:09,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:46:09
[2026-06-22 16:46:10,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:46:10,652.652 INFO    ] Initializing speech engine...
[2026-06-22 16:46:10,659.659 INFO    ] 2026-06-22 16:46:10
[2026-06-22 16:46:10,922.922 INFO    ] 2026-06-22 16:46:10
[2026-06-22 16:46:10,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:46:11,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:46:11,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:46:11,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:46:11,468.468 INFO    ] time= 22/06/2026 16:46:11
[2026-06-22 16:46:11,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:46:11,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:46:11,614.614 INFO    ] No existing commands found in stream
[2026-06-22 16:46:16,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:46:16,652.652 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-22 16:46:18,939.939 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:46:18,941.941 INFO    ] Checking for system updates...
[2026-06-22 16:46:18,961.961 INFO    ] 200
[2026-06-22 16:46:18,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:46:18,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:46:18,995.995 INFO    ] No update needed
[2026-06-22 16:46:18,996.996 INFO    ] Checking for camera pi updates...
[2026-06-22 16:46:19,016.016 INFO    ] 200
[2026-06-22 16:46:19,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:46:19,054.054 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:46:19,145.145 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:46:19,148.148 INFO    ] No camera update needed
[2026-06-22 16:46:19,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:46:19,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:46:19,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:46:19,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:46:21,205.205 INFO    ] ================================================
[2026-06-22 16:46:21,221.221 INFO    ] Launching Daemon at Mon Jun 22 16:46:21 IST 2026
[2026-06-22 16:46:21,233.233 INFO    ] ================================================
[2026-06-22 16:46:21,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:46:21
[2026-06-22 16:46:22,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:46:22,572.572 INFO    ] Initializing speech engine...
[2026-06-22 16:46:22,581.581 INFO    ] 2026-06-22 16:46:22
[2026-06-22 16:46:22,829.829 INFO    ] 2026-06-22 16:46:22
[2026-06-22 16:46:22,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:46:23,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:46:23,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:46:23,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:46:23,318.318 INFO    ] time= 22/06/2026 16:46:23
[2026-06-22 16:46:23,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:46:23,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:46:23,547.547 INFO    ] No existing commands found in stream
[2026-06-22 16:46:28,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:46:28,563.563 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-22 16:46:29,311.311 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:46:29,314.314 INFO    ] Checking for system updates...
[2026-06-22 16:46:29,350.350 INFO    ] 200
[2026-06-22 16:46:29,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:46:29,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:46:29,415.415 INFO    ] No update needed
[2026-06-22 16:46:29,417.417 INFO    ] Checking for camera pi updates...
[2026-06-22 16:46:29,451.451 INFO    ] 200
[2026-06-22 16:46:29,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:46:29,500.500 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:46:29,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:46:29,583.583 INFO    ] No camera update needed
[2026-06-22 16:46:29,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:46:29,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:46:29,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:46:29,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:46:31,642.642 INFO    ] ================================================
[2026-06-22 16:46:31,660.660 INFO    ] Launching Daemon at Mon Jun 22 16:46:31 IST 2026
[2026-06-22 16:46:31,672.672 INFO    ] ================================================
[2026-06-22 16:46:32,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:46:32
[2026-06-22 16:46:32,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:46:33,175.175 INFO    ] Initializing speech engine...
[2026-06-22 16:46:33,182.182 INFO    ] 2026-06-22 16:46:33
[2026-06-22 16:46:33,447.447 INFO    ] 2026-06-22 16:46:33
[2026-06-22 16:46:33,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:46:33,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:46:33,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:46:34,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:46:34,035.035 INFO    ] time= 22/06/2026 16:46:34
[2026-06-22 16:46:34,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:46:34,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:46:34,196.196 INFO    ] No existing commands found in stream
[2026-06-22 16:46:39,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:46:39,220.220 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-22 16:46:41,837.837 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:46:41,839.839 INFO    ] Checking for system updates...
[2026-06-22 16:46:41,880.880 INFO    ] 200
[2026-06-22 16:46:41,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:46:41,943.943 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:46:41,945.945 INFO    ] No update needed
[2026-06-22 16:46:41,948.948 INFO    ] Checking for camera pi updates...
[2026-06-22 16:46:41,982.982 INFO    ] 200
[2026-06-22 16:46:41,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:46:42,031.031 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:46:42,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:46:42,108.108 INFO    ] No camera update needed
[2026-06-22 16:46:42,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:46:42,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:46:42,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:46:42,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:46:44,164.164 INFO    ] ================================================
[2026-06-22 16:46:44,179.179 INFO    ] Launching Daemon at Mon Jun 22 16:46:44 IST 2026
[2026-06-22 16:46:44,190.190 INFO    ] ================================================
[2026-06-22 16:46:44,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:46:44
[2026-06-22 16:46:45,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:46:45,738.738 INFO    ] Initializing speech engine...
[2026-06-22 16:46:45,745.745 INFO    ] 2026-06-22 16:46:45
[2026-06-22 16:46:46,030.030 INFO    ] 2026-06-22 16:46:46
[2026-06-22 16:46:46,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:46:46,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:46:46,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:46:46,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:46:46,600.600 INFO    ] time= 22/06/2026 16:46:46
[2026-06-22 16:46:46,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:46:46,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:46:46,752.752 INFO    ] No existing commands found in stream
[2026-06-22 16:46:51,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:46:51,792.792 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-22 16:46:54,173.173 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:46:54,177.177 INFO    ] Checking for system updates...
[2026-06-22 16:46:54,214.214 INFO    ] 200
[2026-06-22 16:46:54,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:46:54,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:46:54,283.283 INFO    ] No update needed
[2026-06-22 16:46:54,286.286 INFO    ] Checking for camera pi updates...
[2026-06-22 16:46:54,322.322 INFO    ] 200
[2026-06-22 16:46:54,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:46:54,368.368 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:46:54,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:46:54,469.469 INFO    ] No camera update needed
[2026-06-22 16:46:54,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:46:54,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:46:54,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:46:54,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:46:56,528.528 INFO    ] ================================================
[2026-06-22 16:46:56,544.544 INFO    ] Launching Daemon at Mon Jun 22 16:46:56 IST 2026
[2026-06-22 16:46:56,555.555 INFO    ] ================================================
[2026-06-22 16:46:57,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:46:57
[2026-06-22 16:46:57,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:46:57,933.933 INFO    ] Initializing speech engine...
[2026-06-22 16:46:57,942.942 INFO    ] 2026-06-22 16:46:57
[2026-06-22 16:46:58,201.201 INFO    ] 2026-06-22 16:46:58
[2026-06-22 16:46:58,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:46:58,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:46:58,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:46:58,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:46:58,700.700 INFO    ] time= 22/06/2026 16:46:58
[2026-06-22 16:46:58,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:46:58,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:46:58,895.895 INFO    ] No existing commands found in stream
[2026-06-22 16:47:03,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:47:03,912.912 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-22 16:47:06,815.815 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:47:06,818.818 INFO    ] Checking for system updates...
[2026-06-22 16:47:06,857.857 INFO    ] 200
[2026-06-22 16:47:06,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:47:06,911.911 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:47:06,914.914 INFO    ] No update needed
[2026-06-22 16:47:06,916.916 INFO    ] Checking for camera pi updates...
[2026-06-22 16:47:06,953.953 INFO    ] 200
[2026-06-22 16:47:06,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:47:07,001.001 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:47:07,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:47:07,089.089 INFO    ] No camera update needed
[2026-06-22 16:47:07,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:47:07,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:47:07,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:47:07,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:47:09,145.145 INFO    ] ================================================
[2026-06-22 16:47:09,161.161 INFO    ] Launching Daemon at Mon Jun 22 16:47:09 IST 2026
[2026-06-22 16:47:09,172.172 INFO    ] ================================================
[2026-06-22 16:47:09,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:47:09
[2026-06-22 16:47:10,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:47:10,512.512 INFO    ] Initializing speech engine...
[2026-06-22 16:47:10,521.521 INFO    ] 2026-06-22 16:47:10
[2026-06-22 16:47:10,771.771 INFO    ] 2026-06-22 16:47:10
[2026-06-22 16:47:10,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:47:11,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:47:11,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:47:11,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:47:11,306.306 INFO    ] time= 22/06/2026 16:47:11
[2026-06-22 16:47:11,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:47:11,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:47:11,502.502 INFO    ] No existing commands found in stream
[2026-06-22 16:47:16,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:47:16,522.522 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-22 16:47:20,142.142 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:47:20,145.145 INFO    ] Checking for system updates...
[2026-06-22 16:47:20,186.186 INFO    ] 200
[2026-06-22 16:47:20,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:47:20,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:47:20,244.244 INFO    ] No update needed
[2026-06-22 16:47:20,247.247 INFO    ] Checking for camera pi updates...
[2026-06-22 16:47:20,284.284 INFO    ] 200
[2026-06-22 16:47:20,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:47:20,329.329 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:47:20,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:47:20,430.430 INFO    ] No camera update needed
[2026-06-22 16:47:20,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:47:20,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:47:20,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:47:20,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:47:22,487.487 INFO    ] ================================================
[2026-06-22 16:47:22,503.503 INFO    ] Launching Daemon at Mon Jun 22 16:47:22 IST 2026
[2026-06-22 16:47:22,514.514 INFO    ] ================================================
[2026-06-22 16:47:23,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:47:23
[2026-06-22 16:47:23,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:47:23,861.861 INFO    ] Initializing speech engine...
[2026-06-22 16:47:23,884.884 INFO    ] 2026-06-22 16:47:23
[2026-06-22 16:47:24,140.140 INFO    ] 2026-06-22 16:47:24
[2026-06-22 16:47:24,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:47:24,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:47:24,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:47:24,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:47:24,623.623 INFO    ] time= 22/06/2026 16:47:24
[2026-06-22 16:47:24,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:47:24,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:47:24,844.844 INFO    ] No existing commands found in stream
[2026-06-22 16:47:29,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:47:29,871.871 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-22 16:47:30,539.539 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:47:30,543.543 INFO    ] Checking for system updates...
[2026-06-22 16:47:30,579.579 INFO    ] 200
[2026-06-22 16:47:30,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:47:30,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:47:30,638.638 INFO    ] No update needed
[2026-06-22 16:47:30,640.640 INFO    ] Checking for camera pi updates...
[2026-06-22 16:47:30,674.674 INFO    ] 200
[2026-06-22 16:47:30,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:47:30,719.719 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:47:30,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:47:30,811.811 INFO    ] No camera update needed
[2026-06-22 16:47:30,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:47:30,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:47:30,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:47:30,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:47:32,871.871 INFO    ] ================================================
[2026-06-22 16:47:32,887.887 INFO    ] Launching Daemon at Mon Jun 22 16:47:32 IST 2026
[2026-06-22 16:47:32,898.898 INFO    ] ================================================
[2026-06-22 16:47:33,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:47:33
[2026-06-22 16:47:34,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:47:34,321.321 INFO    ] Initializing speech engine...
[2026-06-22 16:47:34,344.344 INFO    ] 2026-06-22 16:47:34
[2026-06-22 16:47:34,601.601 INFO    ] 2026-06-22 16:47:34
[2026-06-22 16:47:34,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:47:34,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:47:34,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:47:35,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:47:35,168.168 INFO    ] time= 22/06/2026 16:47:35
[2026-06-22 16:47:35,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:47:35,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:47:35,328.328 INFO    ] No existing commands found in stream
[2026-06-22 16:47:40,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:47:40,353.353 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-22 16:47:42,440.440 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:47:42,442.442 INFO    ] Checking for system updates...
[2026-06-22 16:47:42,478.478 INFO    ] 200
[2026-06-22 16:47:42,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:47:42,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:47:42,541.541 INFO    ] No update needed
[2026-06-22 16:47:42,543.543 INFO    ] Checking for camera pi updates...
[2026-06-22 16:47:42,580.580 INFO    ] 200
[2026-06-22 16:47:42,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:47:42,627.627 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:47:42,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:47:42,713.713 INFO    ] No camera update needed
[2026-06-22 16:47:42,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:47:42,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:47:42,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:47:42,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:47:44,771.771 INFO    ] ================================================
[2026-06-22 16:47:44,787.787 INFO    ] Launching Daemon at Mon Jun 22 16:47:44 IST 2026
[2026-06-22 16:47:44,798.798 INFO    ] ================================================
[2026-06-22 16:47:45,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:47:45
[2026-06-22 16:47:45,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:47:46,210.210 INFO    ] Initializing speech engine...
[2026-06-22 16:47:46,222.222 INFO    ] 2026-06-22 16:47:46
[2026-06-22 16:47:46,489.489 INFO    ] 2026-06-22 16:47:46
[2026-06-22 16:47:46,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:47:46,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:47:46,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:47:46,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:47:46,974.974 INFO    ] time= 22/06/2026 16:47:46
[2026-06-22 16:47:47,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:47:47,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:47:47,197.197 INFO    ] No existing commands found in stream
[2026-06-22 16:47:52,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:47:52,226.226 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-22 16:47:56,703.703 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:47:56,706.706 INFO    ] Checking for system updates...
[2026-06-22 16:47:56,743.743 INFO    ] 200
[2026-06-22 16:47:56,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:47:56,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:47:56,803.803 INFO    ] No update needed
[2026-06-22 16:47:56,806.806 INFO    ] Checking for camera pi updates...
[2026-06-22 16:47:56,840.840 INFO    ] 200
[2026-06-22 16:47:56,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:47:56,884.884 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:47:57,066.066 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:47:57,069.069 INFO    ] No camera update needed
[2026-06-22 16:47:57,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:47:57,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:47:57,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:47:57,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:47:59,128.128 INFO    ] ================================================
[2026-06-22 16:47:59,143.143 INFO    ] Launching Daemon at Mon Jun 22 16:47:59 IST 2026
[2026-06-22 16:47:59,154.154 INFO    ] ================================================
[2026-06-22 16:47:59,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:47:59
[2026-06-22 16:48:00,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:48:00,503.503 INFO    ] Initializing speech engine...
[2026-06-22 16:48:00,526.526 INFO    ] 2026-06-22 16:48:00
[2026-06-22 16:48:00,777.777 INFO    ] 2026-06-22 16:48:00
[2026-06-22 16:48:00,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:48:01,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:48:01,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:48:01,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:48:01,263.263 INFO    ] time= 22/06/2026 16:48:01
[2026-06-22 16:48:01,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:48:01,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:48:01,486.486 INFO    ] No existing commands found in stream
[2026-06-22 16:48:06,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:48:06,507.507 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-22 16:48:07,802.802 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:48:07,805.805 INFO    ] Checking for system updates...
[2026-06-22 16:48:07,844.844 INFO    ] 200
[2026-06-22 16:48:07,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:48:07,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:48:07,908.908 INFO    ] No update needed
[2026-06-22 16:48:07,910.910 INFO    ] Checking for camera pi updates...
[2026-06-22 16:48:07,951.951 INFO    ] 200
[2026-06-22 16:48:07,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:48:07,999.999 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:48:08,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:48:08,102.102 INFO    ] No camera update needed
[2026-06-22 16:48:08,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:48:08,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:48:08,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:48:08,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:48:10,158.158 INFO    ] ================================================
[2026-06-22 16:48:10,174.174 INFO    ] Launching Daemon at Mon Jun 22 16:48:10 IST 2026
[2026-06-22 16:48:10,185.185 INFO    ] ================================================
[2026-06-22 16:48:10,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:48:10
[2026-06-22 16:48:11,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:48:11,543.543 INFO    ] Initializing speech engine...
[2026-06-22 16:48:11,551.551 INFO    ] 2026-06-22 16:48:11
[2026-06-22 16:48:11,808.808 INFO    ] 2026-06-22 16:48:11
[2026-06-22 16:48:11,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:48:12,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:48:12,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:48:12,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:48:12,309.309 INFO    ] time= 22/06/2026 16:48:12
[2026-06-22 16:48:12,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:48:12,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:48:12,508.508 INFO    ] No existing commands found in stream
[2026-06-22 16:48:17,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:48:17,538.538 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-22 16:48:19,536.536 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:48:19,537.537 INFO    ] Checking for system updates...
[2026-06-22 16:48:19,558.558 INFO    ] 200
[2026-06-22 16:48:19,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:48:19,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:48:19,595.595 INFO    ] No update needed
[2026-06-22 16:48:19,597.597 INFO    ] Checking for camera pi updates...
[2026-06-22 16:48:19,632.632 INFO    ] 200
[2026-06-22 16:48:19,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:48:19,677.677 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:48:19,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:48:19,729.729 INFO    ] No camera update needed
[2026-06-22 16:48:19,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:48:19,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:48:19,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:48:19,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:48:21,786.786 INFO    ] ================================================
[2026-06-22 16:48:21,802.802 INFO    ] Launching Daemon at Mon Jun 22 16:48:21 IST 2026
[2026-06-22 16:48:21,813.813 INFO    ] ================================================
[2026-06-22 16:48:22,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:48:22
[2026-06-22 16:48:22,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:48:23,171.171 INFO    ] Initializing speech engine...
[2026-06-22 16:48:23,184.184 INFO    ] 2026-06-22 16:48:23
[2026-06-22 16:48:23,464.464 INFO    ] 2026-06-22 16:48:23
[2026-06-22 16:48:23,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:48:23,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:48:23,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:48:23,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:48:23,942.942 INFO    ] time= 22/06/2026 16:48:23
[2026-06-22 16:48:23,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:48:24,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:48:24,209.209 INFO    ] No existing commands found in stream
[2026-06-22 16:48:29,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:48:29,234.234 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-22 16:48:29,790.790 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:48:29,792.792 INFO    ] Checking for system updates...
[2026-06-22 16:48:29,813.813 INFO    ] 200
[2026-06-22 16:48:29,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:48:29,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:48:29,846.846 INFO    ] No update needed
[2026-06-22 16:48:29,847.847 INFO    ] Checking for camera pi updates...
[2026-06-22 16:48:29,867.867 INFO    ] 200
[2026-06-22 16:48:29,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:48:29,899.899 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:48:29,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:48:29,985.985 INFO    ] No camera update needed
[2026-06-22 16:48:29,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:48:29,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:48:29,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:48:30,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:48:32,043.043 INFO    ] ================================================
[2026-06-22 16:48:32,060.060 INFO    ] Launching Daemon at Mon Jun 22 16:48:32 IST 2026
[2026-06-22 16:48:32,071.071 INFO    ] ================================================
[2026-06-22 16:48:32,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:48:32
[2026-06-22 16:48:33,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:48:33,562.562 INFO    ] Initializing speech engine...
[2026-06-22 16:48:33,571.571 INFO    ] 2026-06-22 16:48:33
[2026-06-22 16:48:33,821.821 INFO    ] 2026-06-22 16:48:33
[2026-06-22 16:48:33,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:48:34,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:48:34,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:48:34,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:48:34,307.307 INFO    ] time= 22/06/2026 16:48:34
[2026-06-22 16:48:34,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:48:34,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:48:34,547.547 INFO    ] No existing commands found in stream
[2026-06-22 16:48:39,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:48:39,561.561 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-22 16:48:42,353.353 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:48:42,356.356 INFO    ] Checking for system updates...
[2026-06-22 16:48:42,395.395 INFO    ] 200
[2026-06-22 16:48:42,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:48:42,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:48:42,454.454 INFO    ] No update needed
[2026-06-22 16:48:42,457.457 INFO    ] Checking for camera pi updates...
[2026-06-22 16:48:42,494.494 INFO    ] 200
[2026-06-22 16:48:42,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:48:42,541.541 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:48:42,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:48:42,630.630 INFO    ] No camera update needed
[2026-06-22 16:48:42,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:48:42,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:48:42,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:48:42,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:48:44,688.688 INFO    ] ================================================
[2026-06-22 16:48:44,703.703 INFO    ] Launching Daemon at Mon Jun 22 16:48:44 IST 2026
[2026-06-22 16:48:44,714.714 INFO    ] ================================================
[2026-06-22 16:48:45,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:48:45
[2026-06-22 16:48:45,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:48:46,080.080 INFO    ] Initializing speech engine...
[2026-06-22 16:48:46,089.089 INFO    ] 2026-06-22 16:48:46
[2026-06-22 16:48:46,352.352 INFO    ] 2026-06-22 16:48:46
[2026-06-22 16:48:46,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:48:46,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:48:46,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:48:46,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:48:46,820.820 INFO    ] time= 22/06/2026 16:48:46
[2026-06-22 16:48:46,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:48:46,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:48:47,036.036 INFO    ] No existing commands found in stream
[2026-06-22 16:48:52,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:48:52,063.063 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-22 16:48:53,159.159 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:48:53,161.161 INFO    ] Checking for system updates...
[2026-06-22 16:48:53,182.182 INFO    ] 200
[2026-06-22 16:48:53,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:48:53,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:48:53,238.238 INFO    ] No update needed
[2026-06-22 16:48:53,241.241 INFO    ] Checking for camera pi updates...
[2026-06-22 16:48:53,275.275 INFO    ] 200
[2026-06-22 16:48:53,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:48:53,319.319 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:48:53,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:48:53,419.419 INFO    ] No camera update needed
[2026-06-22 16:48:53,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:48:53,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:48:53,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:48:53,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:48:55,477.477 INFO    ] ================================================
[2026-06-22 16:48:55,493.493 INFO    ] Launching Daemon at Mon Jun 22 16:48:55 IST 2026
[2026-06-22 16:48:55,504.504 INFO    ] ================================================
[2026-06-22 16:48:56,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:48:56
[2026-06-22 16:48:56,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:48:56,963.963 INFO    ] Initializing speech engine...
[2026-06-22 16:48:56,972.972 INFO    ] 2026-06-22 16:48:56
[2026-06-22 16:48:57,230.230 INFO    ] 2026-06-22 16:48:57
[2026-06-22 16:48:57,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:48:57,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:48:57,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:48:57,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:48:57,733.733 INFO    ] time= 22/06/2026 16:48:57
[2026-06-22 16:48:57,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:48:57,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:48:57,924.924 INFO    ] No existing commands found in stream
[2026-06-22 16:49:02,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:49:02,944.944 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-22 16:49:06,982.982 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:49:06,985.985 INFO    ] Checking for system updates...
[2026-06-22 16:49:07,022.022 INFO    ] 200
[2026-06-22 16:49:07,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:49:07,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:49:07,082.082 INFO    ] No update needed
[2026-06-22 16:49:07,085.085 INFO    ] Checking for camera pi updates...
[2026-06-22 16:49:07,123.123 INFO    ] 200
[2026-06-22 16:49:07,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:49:07,169.169 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:49:07,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:49:07,255.255 INFO    ] No camera update needed
[2026-06-22 16:49:07,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:49:07,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:49:07,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:49:07,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:49:09,313.313 INFO    ] ================================================
[2026-06-22 16:49:09,329.329 INFO    ] Launching Daemon at Mon Jun 22 16:49:09 IST 2026
[2026-06-22 16:49:09,340.340 INFO    ] ================================================
[2026-06-22 16:49:09,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:49:09
[2026-06-22 16:49:10,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:49:10,708.708 INFO    ] Initializing speech engine...
[2026-06-22 16:49:10,718.718 INFO    ] 2026-06-22 16:49:10
[2026-06-22 16:49:10,978.978 INFO    ] 2026-06-22 16:49:10
[2026-06-22 16:49:11,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:49:11,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:49:11,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:49:11,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:49:11,430.430 INFO    ] time= 22/06/2026 16:49:11
[2026-06-22 16:49:11,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:49:11,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:49:11,659.659 INFO    ] No existing commands found in stream
[2026-06-22 16:49:16,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:49:16,686.686 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-22 16:49:19,669.669 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:49:19,670.670 INFO    ] Checking for system updates...
[2026-06-22 16:49:19,693.693 INFO    ] 200
[2026-06-22 16:49:19,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:49:19,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:49:19,729.729 INFO    ] No update needed
[2026-06-22 16:49:19,731.731 INFO    ] Checking for camera pi updates...
[2026-06-22 16:49:19,769.769 INFO    ] 200
[2026-06-22 16:49:19,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:49:19,822.822 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:49:19,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:49:19,931.931 INFO    ] No camera update needed
[2026-06-22 16:49:19,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:49:19,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:49:19,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:49:19,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:49:21,986.986 INFO    ] ================================================
[2026-06-22 16:49:22,001.001 INFO    ] Launching Daemon at Mon Jun 22 16:49:21 IST 2026
[2026-06-22 16:49:22,012.012 INFO    ] ================================================
[2026-06-22 16:49:22,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:49:22
[2026-06-22 16:49:23,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:49:23,606.606 INFO    ] Initializing speech engine...
[2026-06-22 16:49:23,613.613 INFO    ] 2026-06-22 16:49:23
[2026-06-22 16:49:23,884.884 INFO    ] 2026-06-22 16:49:23
[2026-06-22 16:49:23,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:49:24,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:49:24,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:49:24,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:49:24,433.433 INFO    ] time= 22/06/2026 16:49:24
[2026-06-22 16:49:24,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:49:24,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:49:24,624.624 INFO    ] No existing commands found in stream
[2026-06-22 16:49:29,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:49:29,658.658 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-22 16:49:30,856.856 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:49:30,859.859 INFO    ] Checking for system updates...
[2026-06-22 16:49:30,896.896 INFO    ] 200
[2026-06-22 16:49:30,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:49:30,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:49:30,955.955 INFO    ] No update needed
[2026-06-22 16:49:30,958.958 INFO    ] Checking for camera pi updates...
[2026-06-22 16:49:30,992.992 INFO    ] 200
[2026-06-22 16:49:30,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:49:31,037.037 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:49:31,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:49:31,142.142 INFO    ] No camera update needed
[2026-06-22 16:49:31,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:49:31,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:49:31,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:49:31,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:49:33,202.202 INFO    ] ================================================
[2026-06-22 16:49:33,218.218 INFO    ] Launching Daemon at Mon Jun 22 16:49:33 IST 2026
[2026-06-22 16:49:33,229.229 INFO    ] ================================================
[2026-06-22 16:49:33,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:49:33
[2026-06-22 16:49:34,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:49:34,788.788 INFO    ] Initializing speech engine...
[2026-06-22 16:49:34,793.793 INFO    ] 2026-06-22 16:49:34
[2026-06-22 16:49:35,064.064 INFO    ] 2026-06-22 16:49:35
[2026-06-22 16:49:35,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:49:35,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:49:35,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:49:35,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:49:35,605.605 INFO    ] time= 22/06/2026 16:49:35
[2026-06-22 16:49:35,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:49:35,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:49:35,764.764 INFO    ] No existing commands found in stream
[2026-06-22 16:49:40,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:49:40,783.783 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-22 16:49:44,137.137 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:49:44,139.139 INFO    ] Checking for system updates...
[2026-06-22 16:49:44,159.159 INFO    ] 200
[2026-06-22 16:49:44,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:49:44,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:49:44,192.192 INFO    ] No update needed
[2026-06-22 16:49:44,193.193 INFO    ] Checking for camera pi updates...
[2026-06-22 16:49:44,215.215 INFO    ] 200
[2026-06-22 16:49:44,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:49:44,241.241 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:49:44,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:49:44,330.330 INFO    ] No camera update needed
[2026-06-22 16:49:44,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:49:44,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:49:44,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:49:44,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:49:46,386.386 INFO    ] ================================================
[2026-06-22 16:49:46,402.402 INFO    ] Launching Daemon at Mon Jun 22 16:49:46 IST 2026
[2026-06-22 16:49:46,413.413 INFO    ] ================================================
[2026-06-22 16:49:47,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:49:47
[2026-06-22 16:49:47,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:49:47,911.911 INFO    ] Initializing speech engine...
[2026-06-22 16:49:47,923.923 INFO    ] 2026-06-22 16:49:47
[2026-06-22 16:49:48,202.202 INFO    ] 2026-06-22 16:49:48
[2026-06-22 16:49:48,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:49:48,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:49:48,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:49:48,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:49:48,738.738 INFO    ] time= 22/06/2026 16:49:48
[2026-06-22 16:49:48,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:49:48,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:49:48,899.899 INFO    ] No existing commands found in stream
[2026-06-22 16:49:53,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:49:53,934.934 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-22 16:49:55,867.867 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:49:55,869.869 INFO    ] Checking for system updates...
[2026-06-22 16:49:55,890.890 INFO    ] 200
[2026-06-22 16:49:55,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:49:55,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:49:55,924.924 INFO    ] No update needed
[2026-06-22 16:49:55,925.925 INFO    ] Checking for camera pi updates...
[2026-06-22 16:49:55,949.949 INFO    ] 200
[2026-06-22 16:49:55,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:49:55,993.993 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:49:56,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:49:56,079.079 INFO    ] No camera update needed
[2026-06-22 16:49:56,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:49:56,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:49:56,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:49:56,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:49:58,136.136 INFO    ] ================================================
[2026-06-22 16:49:58,152.152 INFO    ] Launching Daemon at Mon Jun 22 16:49:58 IST 2026
[2026-06-22 16:49:58,163.163 INFO    ] ================================================
[2026-06-22 16:49:58,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:49:58
[2026-06-22 16:49:59,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:49:59,526.526 INFO    ] Initializing speech engine...
[2026-06-22 16:49:59,535.535 INFO    ] 2026-06-22 16:49:59
[2026-06-22 16:49:59,780.780 INFO    ] 2026-06-22 16:49:59
[2026-06-22 16:49:59,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:50:00,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:50:00,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:50:00,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:50:00,269.269 INFO    ] time= 22/06/2026 16:50:00
[2026-06-22 16:50:00,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:50:00,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:50:00,502.502 INFO    ] No existing commands found in stream
[2026-06-22 16:50:05,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:50:05,537.537 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-22 16:50:09,619.619 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:50:09,622.622 INFO    ] Checking for system updates...
[2026-06-22 16:50:09,660.660 INFO    ] 200
[2026-06-22 16:50:09,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:50:09,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:50:09,718.718 INFO    ] No update needed
[2026-06-22 16:50:09,720.720 INFO    ] Checking for camera pi updates...
[2026-06-22 16:50:09,755.755 INFO    ] 200
[2026-06-22 16:50:09,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:50:09,798.798 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:50:09,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:50:09,887.887 INFO    ] No camera update needed
[2026-06-22 16:50:09,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:50:09,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:50:09,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:50:09,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:50:11,946.946 INFO    ] ================================================
[2026-06-22 16:50:11,962.962 INFO    ] Launching Daemon at Mon Jun 22 16:50:11 IST 2026
[2026-06-22 16:50:11,974.974 INFO    ] ================================================
[2026-06-22 16:50:12,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:50:12
[2026-06-22 16:50:13,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:50:13,429.429 INFO    ] Initializing speech engine...
[2026-06-22 16:50:13,442.442 INFO    ] 2026-06-22 16:50:13
[2026-06-22 16:50:13,731.731 INFO    ] 2026-06-22 16:50:13
[2026-06-22 16:50:13,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:50:13,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:50:14,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:50:14,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:50:14,187.187 INFO    ] time= 22/06/2026 16:50:14
[2026-06-22 16:50:14,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:50:14,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:50:14,425.425 INFO    ] No existing commands found in stream
[2026-06-22 16:50:19,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:50:19,451.451 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-22 16:50:20,130.130 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:50:20,133.133 INFO    ] Checking for system updates...
[2026-06-22 16:50:20,171.171 INFO    ] 200
[2026-06-22 16:50:20,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:50:20,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:50:20,230.230 INFO    ] No update needed
[2026-06-22 16:50:20,232.232 INFO    ] Checking for camera pi updates...
[2026-06-22 16:50:20,267.267 INFO    ] 200
[2026-06-22 16:50:20,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:50:20,310.310 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:50:20,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:50:20,387.387 INFO    ] No camera update needed
[2026-06-22 16:50:20,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:50:20,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:50:20,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:50:20,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:50:22,445.445 INFO    ] ================================================
[2026-06-22 16:50:22,460.460 INFO    ] Launching Daemon at Mon Jun 22 16:50:22 IST 2026
[2026-06-22 16:50:22,472.472 INFO    ] ================================================
[2026-06-22 16:50:23,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:50:23
[2026-06-22 16:50:23,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:50:24,058.058 INFO    ] Initializing speech engine...
[2026-06-22 16:50:24,072.072 INFO    ] 2026-06-22 16:50:24
[2026-06-22 16:50:24,354.354 INFO    ] 2026-06-22 16:50:24
[2026-06-22 16:50:24,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:50:24,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:50:24,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:50:24,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:50:24,834.834 INFO    ] time= 22/06/2026 16:50:24
[2026-06-22 16:50:24,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:50:24,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:50:25,047.047 INFO    ] No existing commands found in stream
[2026-06-22 16:50:30,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:50:30,065.065 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-22 16:50:32,428.428 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:50:32,432.432 INFO    ] Checking for system updates...
[2026-06-22 16:50:32,483.483 INFO    ] 200
[2026-06-22 16:50:32,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:50:32,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:50:32,562.562 INFO    ] No update needed
[2026-06-22 16:50:32,565.565 INFO    ] Checking for camera pi updates...
[2026-06-22 16:50:32,603.603 INFO    ] 200
[2026-06-22 16:50:32,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:50:32,652.652 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:50:32,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:50:32,740.740 INFO    ] No camera update needed
[2026-06-22 16:50:32,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:50:32,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:50:32,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:50:32,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:50:34,805.805 INFO    ] ================================================
[2026-06-22 16:50:34,821.821 INFO    ] Launching Daemon at Mon Jun 22 16:50:34 IST 2026
[2026-06-22 16:50:34,833.833 INFO    ] ================================================
[2026-06-22 16:50:35,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:50:35
[2026-06-22 16:50:35,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:50:36,174.174 INFO    ] Initializing speech engine...
[2026-06-22 16:50:36,183.183 INFO    ] 2026-06-22 16:50:36
[2026-06-22 16:50:36,429.429 INFO    ] 2026-06-22 16:50:36
[2026-06-22 16:50:36,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:50:36,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:50:36,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:50:36,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:50:36,901.901 INFO    ] time= 22/06/2026 16:50:36
[2026-06-22 16:50:36,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:50:37,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:50:37,164.164 INFO    ] No existing commands found in stream
[2026-06-22 16:50:42,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:50:42,186.186 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-22 16:50:44,207.207 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:50:44,208.208 INFO    ] Checking for system updates...
[2026-06-22 16:50:44,229.229 INFO    ] 200
[2026-06-22 16:50:44,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:50:44,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:50:44,266.266 INFO    ] No update needed
[2026-06-22 16:50:44,268.268 INFO    ] Checking for camera pi updates...
[2026-06-22 16:50:44,307.307 INFO    ] 200
[2026-06-22 16:50:44,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:50:44,354.354 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:50:44,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:50:44,444.444 INFO    ] No camera update needed
[2026-06-22 16:50:44,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:50:44,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:50:44,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:50:44,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:50:46,505.505 INFO    ] ================================================
[2026-06-22 16:50:46,522.522 INFO    ] Launching Daemon at Mon Jun 22 16:50:46 IST 2026
[2026-06-22 16:50:46,534.534 INFO    ] ================================================
[2026-06-22 16:50:47,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:50:47
[2026-06-22 16:50:47,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:50:47,965.965 INFO    ] Initializing speech engine...
[2026-06-22 16:50:47,973.973 INFO    ] 2026-06-22 16:50:47
[2026-06-22 16:50:48,295.295 INFO    ] 2026-06-22 16:50:48
[2026-06-22 16:50:48,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:50:48,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:50:48,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:50:48,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:50:48,806.806 INFO    ] time= 22/06/2026 16:50:48
[2026-06-22 16:50:48,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:50:48,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:50:48,967.967 INFO    ] No existing commands found in stream
[2026-06-22 16:50:53,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:50:54,001.001 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-22 16:50:57,495.495 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:50:57,498.498 INFO    ] Checking for system updates...
[2026-06-22 16:50:57,536.536 INFO    ] 200
[2026-06-22 16:50:57,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:50:57,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:50:57,606.606 INFO    ] No update needed
[2026-06-22 16:50:57,609.609 INFO    ] Checking for camera pi updates...
[2026-06-22 16:50:57,650.650 INFO    ] 200
[2026-06-22 16:50:57,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:50:57,697.697 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:50:57,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:50:57,809.809 INFO    ] No camera update needed
[2026-06-22 16:50:57,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:50:57,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:50:57,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:50:57,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:50:59,870.870 INFO    ] ================================================
[2026-06-22 16:50:59,886.886 INFO    ] Launching Daemon at Mon Jun 22 16:50:59 IST 2026
[2026-06-22 16:50:59,898.898 INFO    ] ================================================
[2026-06-22 16:51:00,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:51:00
[2026-06-22 16:51:01,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:51:01,461.461 INFO    ] Initializing speech engine...
[2026-06-22 16:51:01,468.468 INFO    ] 2026-06-22 16:51:01
[2026-06-22 16:51:01,714.714 INFO    ] 2026-06-22 16:51:01
[2026-06-22 16:51:01,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:51:01,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:51:01,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:51:02,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:51:02,162.162 INFO    ] time= 22/06/2026 16:51:02
[2026-06-22 16:51:02,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:51:02,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:51:02,246.246 INFO    ] No existing commands found in stream
[2026-06-22 16:51:07,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:51:07,260.260 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-22 16:51:08,281.281 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:51:08,284.284 INFO    ] Checking for system updates...
[2026-06-22 16:51:08,320.320 INFO    ] 200
[2026-06-22 16:51:08,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:51:08,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:51:08,379.379 INFO    ] No update needed
[2026-06-22 16:51:08,381.381 INFO    ] Checking for camera pi updates...
[2026-06-22 16:51:08,415.415 INFO    ] 200
[2026-06-22 16:51:08,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:51:08,459.459 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:51:08,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:51:08,547.547 INFO    ] No camera update needed
[2026-06-22 16:51:08,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:51:08,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:51:08,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:51:08,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:51:10,605.605 INFO    ] ================================================
[2026-06-22 16:51:10,621.621 INFO    ] Launching Daemon at Mon Jun 22 16:51:10 IST 2026
[2026-06-22 16:51:10,632.632 INFO    ] ================================================
[2026-06-22 16:51:11,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:51:11
[2026-06-22 16:51:11,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:51:12,165.165 INFO    ] Initializing speech engine...
[2026-06-22 16:51:12,174.174 INFO    ] 2026-06-22 16:51:12
[2026-06-22 16:51:12,438.438 INFO    ] 2026-06-22 16:51:12
[2026-06-22 16:51:12,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:51:12,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:51:12,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:51:12,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:51:12,981.981 INFO    ] time= 22/06/2026 16:51:12
[2026-06-22 16:51:12,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:51:13,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:51:13,141.141 INFO    ] No existing commands found in stream
[2026-06-22 16:51:18,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:51:18,175.175 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-22 16:51:20,400.400 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:51:20,401.401 INFO    ] Checking for system updates...
[2026-06-22 16:51:20,422.422 INFO    ] 200
[2026-06-22 16:51:20,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:51:20,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:51:20,456.456 INFO    ] No update needed
[2026-06-22 16:51:20,457.457 INFO    ] Checking for camera pi updates...
[2026-06-22 16:51:20,477.477 INFO    ] 200
[2026-06-22 16:51:20,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:51:20,514.514 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:51:20,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:51:20,652.652 INFO    ] No camera update needed
[2026-06-22 16:51:20,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:51:20,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:51:20,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:51:20,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:51:22,710.710 INFO    ] ================================================
[2026-06-22 16:51:22,726.726 INFO    ] Launching Daemon at Mon Jun 22 16:51:22 IST 2026
[2026-06-22 16:51:22,738.738 INFO    ] ================================================
[2026-06-22 16:51:23,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:51:23
[2026-06-22 16:51:23,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:51:24,119.119 INFO    ] Initializing speech engine...
[2026-06-22 16:51:24,124.124 INFO    ] 2026-06-22 16:51:24
[2026-06-22 16:51:24,380.380 INFO    ] 2026-06-22 16:51:24
[2026-06-22 16:51:24,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:51:24,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:51:24,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:51:24,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:51:24,878.878 INFO    ] time= 22/06/2026 16:51:24
[2026-06-22 16:51:24,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:51:24,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:51:24,971.971 INFO    ] No existing commands found in stream
[2026-06-22 16:51:29,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:51:29,992.992 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-22 16:51:31,948.948 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:51:31,951.951 INFO    ] Checking for system updates...
[2026-06-22 16:51:31,991.991 INFO    ] 200
[2026-06-22 16:51:31,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:51:32,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:51:32,051.051 INFO    ] No update needed
[2026-06-22 16:51:32,053.053 INFO    ] Checking for camera pi updates...
[2026-06-22 16:51:32,094.094 INFO    ] 200
[2026-06-22 16:51:32,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:51:32,147.147 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:51:32,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:51:32,210.210 INFO    ] No camera update needed
[2026-06-22 16:51:32,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:51:32,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:51:32,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:51:32,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:51:34,276.276 INFO    ] ================================================
[2026-06-22 16:51:34,292.292 INFO    ] Launching Daemon at Mon Jun 22 16:51:34 IST 2026
[2026-06-22 16:51:34,302.302 INFO    ] ================================================
[2026-06-22 16:51:34,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:51:34
[2026-06-22 16:51:35,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:51:35,980.980 INFO    ] Initializing speech engine...
[2026-06-22 16:51:35,985.985 INFO    ] 2026-06-22 16:51:35
[2026-06-22 16:51:36,274.274 INFO    ] 2026-06-22 16:51:36
[2026-06-22 16:51:36,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:51:36,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:51:36,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:51:36,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:51:36,941.941 INFO    ] time= 22/06/2026 16:51:36
[2026-06-22 16:51:36,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:51:37,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:51:37,155.155 INFO    ] No existing commands found in stream
[2026-06-22 16:51:42,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:51:42,177.177 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-22 16:51:44,816.816 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:51:44,818.818 INFO    ] Checking for system updates...
[2026-06-22 16:51:44,839.839 INFO    ] 200
[2026-06-22 16:51:44,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:51:44,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:51:44,872.872 INFO    ] No update needed
[2026-06-22 16:51:44,874.874 INFO    ] Checking for camera pi updates...
[2026-06-22 16:51:44,894.894 INFO    ] 200
[2026-06-22 16:51:44,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:51:44,942.942 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:51:45,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:51:45,033.033 INFO    ] No camera update needed
[2026-06-22 16:51:45,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:51:45,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:51:45,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:51:45,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:51:47,095.095 INFO    ] ================================================
[2026-06-22 16:51:47,111.111 INFO    ] Launching Daemon at Mon Jun 22 16:51:47 IST 2026
[2026-06-22 16:51:47,123.123 INFO    ] ================================================
[2026-06-22 16:51:47,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:51:47
[2026-06-22 16:51:48,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:51:48,493.493 INFO    ] Initializing speech engine...
[2026-06-22 16:51:48,500.500 INFO    ] 2026-06-22 16:51:48
[2026-06-22 16:51:48,746.746 INFO    ] 2026-06-22 16:51:48
[2026-06-22 16:51:48,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:51:48,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:51:49,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:51:49,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:51:49,218.218 INFO    ] time= 22/06/2026 16:51:49
[2026-06-22 16:51:49,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:51:49,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:51:49,442.442 INFO    ] No existing commands found in stream
[2026-06-22 16:51:54,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:51:54,471.471 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-22 16:51:56,119.119 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:51:56,122.122 INFO    ] Checking for system updates...
[2026-06-22 16:51:56,161.161 INFO    ] 200
[2026-06-22 16:51:56,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:51:56,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:51:56,230.230 INFO    ] No update needed
[2026-06-22 16:51:56,233.233 INFO    ] Checking for camera pi updates...
[2026-06-22 16:51:56,272.272 INFO    ] 200
[2026-06-22 16:51:56,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:51:56,324.324 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:51:56,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:51:56,409.409 INFO    ] No camera update needed
[2026-06-22 16:51:56,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:51:56,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:51:56,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:51:56,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:51:58,469.469 INFO    ] ================================================
[2026-06-22 16:51:58,486.486 INFO    ] Launching Daemon at Mon Jun 22 16:51:58 IST 2026
[2026-06-22 16:51:58,497.497 INFO    ] ================================================
[2026-06-22 16:51:59,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:51:59
[2026-06-22 16:51:59,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:52:00,077.077 INFO    ] Initializing speech engine...
[2026-06-22 16:52:00,089.089 INFO    ] 2026-06-22 16:52:00
[2026-06-22 16:52:00,378.378 INFO    ] 2026-06-22 16:52:00
[2026-06-22 16:52:00,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:52:00,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:52:00,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:52:01,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:52:01,079.079 INFO    ] time= 22/06/2026 16:52:01
[2026-06-22 16:52:01,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:52:01,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:52:01,527.527 INFO    ] No existing commands found in stream
[2026-06-22 16:52:06,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:52:06,546.546 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-22 16:52:08,223.223 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:52:08,225.225 INFO    ] Checking for system updates...
[2026-06-22 16:52:08,246.246 INFO    ] 200
[2026-06-22 16:52:08,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:52:08,278.278 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:52:08,280.280 INFO    ] No update needed
[2026-06-22 16:52:08,281.281 INFO    ] Checking for camera pi updates...
[2026-06-22 16:52:08,300.300 INFO    ] 200
[2026-06-22 16:52:08,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:52:08,347.347 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:52:08,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:52:08,532.532 INFO    ] No camera update needed
[2026-06-22 16:52:08,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:52:08,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:52:08,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:52:08,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:52:10,591.591 INFO    ] ================================================
[2026-06-22 16:52:10,607.607 INFO    ] Launching Daemon at Mon Jun 22 16:52:10 IST 2026
[2026-06-22 16:52:10,619.619 INFO    ] ================================================
[2026-06-22 16:52:11,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:52:11
[2026-06-22 16:52:11,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:52:12,152.152 INFO    ] Initializing speech engine...
[2026-06-22 16:52:12,160.160 INFO    ] 2026-06-22 16:52:12
[2026-06-22 16:52:12,432.432 INFO    ] 2026-06-22 16:52:12
[2026-06-22 16:52:12,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:52:12,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:52:12,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:52:12,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:52:12,984.984 INFO    ] time= 22/06/2026 16:52:12
[2026-06-22 16:52:13,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:52:13,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:52:13,139.139 INFO    ] No existing commands found in stream
[2026-06-22 16:52:18,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:52:18,165.165 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-22 16:52:20,916.916 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:52:20,918.918 INFO    ] Checking for system updates...
[2026-06-22 16:52:20,955.955 INFO    ] 200
[2026-06-22 16:52:20,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:52:21,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:52:21,017.017 INFO    ] No update needed
[2026-06-22 16:52:21,019.019 INFO    ] Checking for camera pi updates...
[2026-06-22 16:52:21,053.053 INFO    ] 200
[2026-06-22 16:52:21,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:52:21,096.096 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:52:21,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:52:21,168.168 INFO    ] No camera update needed
[2026-06-22 16:52:21,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:52:21,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:52:21,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:52:21,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:52:23,222.222 INFO    ] ================================================
[2026-06-22 16:52:23,239.239 INFO    ] Launching Daemon at Mon Jun 22 16:52:23 IST 2026
[2026-06-22 16:52:23,250.250 INFO    ] ================================================
[2026-06-22 16:52:23,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:52:23
[2026-06-22 16:52:24,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:52:24,606.606 INFO    ] Initializing speech engine...
[2026-06-22 16:52:24,614.614 INFO    ] 2026-06-22 16:52:24
[2026-06-22 16:52:24,940.940 INFO    ] 2026-06-22 16:52:24
[2026-06-22 16:52:24,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:52:25,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:52:25,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:52:25,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:52:25,361.361 INFO    ] time= 22/06/2026 16:52:25
[2026-06-22 16:52:25,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:52:25,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:52:25,494.494 INFO    ] No existing commands found in stream
[2026-06-22 16:52:30,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:52:30,512.512 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-22 16:52:32,603.603 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:52:32,606.606 INFO    ] Checking for system updates...
[2026-06-22 16:52:32,645.645 INFO    ] 200
[2026-06-22 16:52:32,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:52:32,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:52:32,720.720 INFO    ] No update needed
[2026-06-22 16:52:32,723.723 INFO    ] Checking for camera pi updates...
[2026-06-22 16:52:32,766.766 INFO    ] 200
[2026-06-22 16:52:32,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:52:32,824.824 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:52:32,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:52:32,880.880 INFO    ] No camera update needed
[2026-06-22 16:52:32,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:52:32,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:52:32,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:52:32,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:52:34,938.938 INFO    ] ================================================
[2026-06-22 16:52:34,954.954 INFO    ] Launching Daemon at Mon Jun 22 16:52:34 IST 2026
[2026-06-22 16:52:34,965.965 INFO    ] ================================================
[2026-06-22 16:52:35,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:52:35
[2026-06-22 16:52:36,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:52:36,359.359 INFO    ] Initializing speech engine...
[2026-06-22 16:52:36,388.388 INFO    ] 2026-06-22 16:52:36
[2026-06-22 16:52:36,661.661 INFO    ] 2026-06-22 16:52:36
[2026-06-22 16:52:36,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:52:36,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:52:36,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:52:37,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:52:37,088.088 INFO    ] time= 22/06/2026 16:52:37
[2026-06-22 16:52:37,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:52:37,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:52:37,248.248 INFO    ] No existing commands found in stream
[2026-06-22 16:52:42,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:52:42,277.277 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-22 16:52:42,921.921 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:52:42,924.924 INFO    ] Checking for system updates...
[2026-06-22 16:52:42,960.960 INFO    ] 200
[2026-06-22 16:52:42,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:52:43,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:52:43,017.017 INFO    ] No update needed
[2026-06-22 16:52:43,019.019 INFO    ] Checking for camera pi updates...
[2026-06-22 16:52:43,057.057 INFO    ] 200
[2026-06-22 16:52:43,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:52:43,102.102 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:52:43,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:52:43,185.185 INFO    ] No camera update needed
[2026-06-22 16:52:43,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:52:43,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:52:43,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:52:43,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:52:45,241.241 INFO    ] ================================================
[2026-06-22 16:52:45,257.257 INFO    ] Launching Daemon at Mon Jun 22 16:52:45 IST 2026
[2026-06-22 16:52:45,269.269 INFO    ] ================================================
[2026-06-22 16:52:45,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:52:45
[2026-06-22 16:52:46,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:52:46,784.784 INFO    ] Initializing speech engine...
[2026-06-22 16:52:46,793.793 INFO    ] 2026-06-22 16:52:46
[2026-06-22 16:52:47,083.083 INFO    ] 2026-06-22 16:52:47
[2026-06-22 16:52:47,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:52:47,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:52:47,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:52:47,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:52:47,638.638 INFO    ] time= 22/06/2026 16:52:47
[2026-06-22 16:52:47,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:52:47,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:52:47,797.797 INFO    ] No existing commands found in stream
[2026-06-22 16:52:52,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:52:52,826.826 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-22 16:52:54,897.897 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:52:54,900.900 INFO    ] Checking for system updates...
[2026-06-22 16:52:54,937.937 INFO    ] 200
[2026-06-22 16:52:54,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:52:55,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:52:55,004.004 INFO    ] No update needed
[2026-06-22 16:52:55,007.007 INFO    ] Checking for camera pi updates...
[2026-06-22 16:52:55,046.046 INFO    ] 200
[2026-06-22 16:52:55,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:52:55,091.091 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:52:55,182.182 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:52:55,185.185 INFO    ] No camera update needed
[2026-06-22 16:52:55,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:52:55,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:52:55,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:52:55,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:52:57,245.245 INFO    ] ================================================
[2026-06-22 16:52:57,260.260 INFO    ] Launching Daemon at Mon Jun 22 16:52:57 IST 2026
[2026-06-22 16:52:57,271.271 INFO    ] ================================================
[2026-06-22 16:52:57,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:52:57
[2026-06-22 16:52:58,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:52:58,945.945 INFO    ] Initializing speech engine...
[2026-06-22 16:52:58,956.956 INFO    ] 2026-06-22 16:52:58
[2026-06-22 16:52:59,271.271 INFO    ] 2026-06-22 16:52:59
[2026-06-22 16:52:59,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:52:59,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:52:59,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:52:59,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:53:00,031.031 INFO    ] time= 22/06/2026 16:52:59
[2026-06-22 16:53:00,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:53:00,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:53:00,210.210 INFO    ] No existing commands found in stream
[2026-06-22 16:53:05,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:53:05,247.247 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-22 16:53:08,119.119 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:53:08,122.122 INFO    ] Checking for system updates...
[2026-06-22 16:53:08,159.159 INFO    ] 200
[2026-06-22 16:53:08,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:53:08,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:53:08,218.218 INFO    ] No update needed
[2026-06-22 16:53:08,221.221 INFO    ] Checking for camera pi updates...
[2026-06-22 16:53:08,259.259 INFO    ] 200
[2026-06-22 16:53:08,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:53:08,303.303 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:53:08,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:53:08,393.393 INFO    ] No camera update needed
[2026-06-22 16:53:08,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:53:08,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:53:08,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:53:08,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:53:10,453.453 INFO    ] ================================================
[2026-06-22 16:53:10,468.468 INFO    ] Launching Daemon at Mon Jun 22 16:53:10 IST 2026
[2026-06-22 16:53:10,478.478 INFO    ] ================================================
[2026-06-22 16:53:11,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:53:11
[2026-06-22 16:53:11,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:53:12,028.028 INFO    ] Initializing speech engine...
[2026-06-22 16:53:12,041.041 INFO    ] 2026-06-22 16:53:12
[2026-06-22 16:53:12,313.313 INFO    ] 2026-06-22 16:53:12
[2026-06-22 16:53:12,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:53:12,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:53:12,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:53:12,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:53:12,830.830 INFO    ] time= 22/06/2026 16:53:12
[2026-06-22 16:53:12,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:53:12,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:53:13,011.011 INFO    ] No existing commands found in stream
[2026-06-22 16:53:18,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:53:18,046.046 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-22 16:53:18,763.763 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:53:18,766.766 INFO    ] Checking for system updates...
[2026-06-22 16:53:18,808.808 INFO    ] 200
[2026-06-22 16:53:18,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:53:18,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:53:18,868.868 INFO    ] No update needed
[2026-06-22 16:53:18,871.871 INFO    ] Checking for camera pi updates...
[2026-06-22 16:53:18,906.906 INFO    ] 200
[2026-06-22 16:53:18,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:53:18,950.950 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:53:19,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:53:19,051.051 INFO    ] No camera update needed
[2026-06-22 16:53:19,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:53:19,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:53:19,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:53:19,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:53:21,110.110 INFO    ] ================================================
[2026-06-22 16:53:21,125.125 INFO    ] Launching Daemon at Mon Jun 22 16:53:21 IST 2026
[2026-06-22 16:53:21,136.136 INFO    ] ================================================
[2026-06-22 16:53:21,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:53:21
[2026-06-22 16:53:22,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:53:22,775.775 INFO    ] Initializing speech engine...
[2026-06-22 16:53:22,794.794 INFO    ] 2026-06-22 16:53:22
[2026-06-22 16:53:23,069.069 INFO    ] 2026-06-22 16:53:23
[2026-06-22 16:53:23,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:53:23,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:53:23,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:53:23,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:53:23,631.631 INFO    ] time= 22/06/2026 16:53:23
[2026-06-22 16:53:23,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:53:23,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:53:23,793.793 INFO    ] No existing commands found in stream
[2026-06-22 16:53:28,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:53:28,817.817 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-22 16:53:30,582.582 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:53:30,583.583 INFO    ] Checking for system updates...
[2026-06-22 16:53:30,604.604 INFO    ] 200
[2026-06-22 16:53:30,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:53:30,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:53:30,638.638 INFO    ] No update needed
[2026-06-22 16:53:30,639.639 INFO    ] Checking for camera pi updates...
[2026-06-22 16:53:30,676.676 INFO    ] 200
[2026-06-22 16:53:30,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:53:30,726.726 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:53:30,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:53:30,814.814 INFO    ] No camera update needed
[2026-06-22 16:53:30,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:53:30,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:53:30,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:53:30,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:53:32,873.873 INFO    ] ================================================
[2026-06-22 16:53:32,889.889 INFO    ] Launching Daemon at Mon Jun 22 16:53:32 IST 2026
[2026-06-22 16:53:32,900.900 INFO    ] ================================================
[2026-06-22 16:53:33,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:53:33
[2026-06-22 16:53:34,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:53:34,399.399 INFO    ] Initializing speech engine...
[2026-06-22 16:53:34,405.405 INFO    ] 2026-06-22 16:53:34
[2026-06-22 16:53:34,677.677 INFO    ] 2026-06-22 16:53:34
[2026-06-22 16:53:34,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:53:34,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:53:34,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:53:35,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:53:35,104.104 INFO    ] time= 22/06/2026 16:53:35
[2026-06-22 16:53:35,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:53:35,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:53:35,274.274 INFO    ] No existing commands found in stream
[2026-06-22 16:53:40,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:53:40,312.312 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-22 16:53:41,659.659 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:53:41,662.662 INFO    ] Checking for system updates...
[2026-06-22 16:53:41,698.698 INFO    ] 200
[2026-06-22 16:53:41,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:53:41,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:53:41,756.756 INFO    ] No update needed
[2026-06-22 16:53:41,758.758 INFO    ] Checking for camera pi updates...
[2026-06-22 16:53:41,792.792 INFO    ] 200
[2026-06-22 16:53:41,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:53:41,836.836 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:53:41,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:53:41,921.921 INFO    ] No camera update needed
[2026-06-22 16:53:41,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:53:41,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:53:41,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:53:41,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:53:43,978.978 INFO    ] ================================================
[2026-06-22 16:53:43,993.993 INFO    ] Launching Daemon at Mon Jun 22 16:53:43 IST 2026
[2026-06-22 16:53:44,005.005 INFO    ] ================================================
[2026-06-22 16:53:44,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:53:44
[2026-06-22 16:53:45,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:53:45,449.449 INFO    ] Initializing speech engine...
[2026-06-22 16:53:45,460.460 INFO    ] 2026-06-22 16:53:45
[2026-06-22 16:53:45,748.748 INFO    ] 2026-06-22 16:53:45
[2026-06-22 16:53:45,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:53:46,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:53:46,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:53:46,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:53:46,285.285 INFO    ] time= 22/06/2026 16:53:46
[2026-06-22 16:53:46,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:53:46,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:53:46,465.465 INFO    ] No existing commands found in stream
[2026-06-22 16:53:51,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:53:51,499.499 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-22 16:53:55,737.737 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:53:55,739.739 INFO    ] Checking for system updates...
[2026-06-22 16:53:55,763.763 INFO    ] 200
[2026-06-22 16:53:55,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:53:55,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:53:55,797.797 INFO    ] No update needed
[2026-06-22 16:53:55,799.799 INFO    ] Checking for camera pi updates...
[2026-06-22 16:53:55,819.819 INFO    ] 200
[2026-06-22 16:53:55,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:53:55,843.843 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:53:55,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:53:55,949.949 INFO    ] No camera update needed
[2026-06-22 16:53:55,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:53:55,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:53:55,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:53:55,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:53:58,009.009 INFO    ] ================================================
[2026-06-22 16:53:58,025.025 INFO    ] Launching Daemon at Mon Jun 22 16:53:58 IST 2026
[2026-06-22 16:53:58,036.036 INFO    ] ================================================
[2026-06-22 16:53:58,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:53:58
[2026-06-22 16:53:59,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:53:59,542.542 INFO    ] Initializing speech engine...
[2026-06-22 16:53:59,548.548 INFO    ] 2026-06-22 16:53:59
[2026-06-22 16:53:59,822.822 INFO    ] 2026-06-22 16:53:59
[2026-06-22 16:53:59,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:54:00,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:54:00,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:54:00,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:54:00,288.288 INFO    ] time= 22/06/2026 16:54:00
[2026-06-22 16:54:00,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:54:00,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:54:00,515.515 INFO    ] No existing commands found in stream
[2026-06-22 16:54:05,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:54:05,542.542 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-22 16:54:09,493.493 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:54:09,497.497 INFO    ] Checking for system updates...
[2026-06-22 16:54:09,534.534 INFO    ] 200
[2026-06-22 16:54:09,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:54:09,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:54:09,599.599 INFO    ] No update needed
[2026-06-22 16:54:09,602.602 INFO    ] Checking for camera pi updates...
[2026-06-22 16:54:09,640.640 INFO    ] 200
[2026-06-22 16:54:09,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:54:09,689.689 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:54:09,784.784 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:54:09,787.787 INFO    ] No camera update needed
[2026-06-22 16:54:09,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:54:09,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:54:09,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:54:09,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:54:11,845.845 INFO    ] ================================================
[2026-06-22 16:54:11,861.861 INFO    ] Launching Daemon at Mon Jun 22 16:54:11 IST 2026
[2026-06-22 16:54:11,872.872 INFO    ] ================================================
[2026-06-22 16:54:12,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:54:12
[2026-06-22 16:54:12,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:54:13,210.210 INFO    ] Initializing speech engine...
[2026-06-22 16:54:13,235.235 INFO    ] 2026-06-22 16:54:13
[2026-06-22 16:54:13,510.510 INFO    ] 2026-06-22 16:54:13
[2026-06-22 16:54:13,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:54:13,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:54:13,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:54:13,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:54:14,023.023 INFO    ] time= 22/06/2026 16:54:13
[2026-06-22 16:54:14,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:54:14,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:54:14,225.225 INFO    ] No existing commands found in stream
[2026-06-22 16:54:19,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:54:19,257.257 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-22 16:54:23,548.548 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:54:23,551.551 INFO    ] Checking for system updates...
[2026-06-22 16:54:23,588.588 INFO    ] 200
[2026-06-22 16:54:23,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:54:23,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:54:23,647.647 INFO    ] No update needed
[2026-06-22 16:54:23,649.649 INFO    ] Checking for camera pi updates...
[2026-06-22 16:54:23,684.684 INFO    ] 200
[2026-06-22 16:54:23,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:54:23,731.731 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:54:23,914.914 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:54:23,917.917 INFO    ] No camera update needed
[2026-06-22 16:54:23,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:54:23,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:54:23,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:54:23,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:54:25,979.979 INFO    ] ================================================
[2026-06-22 16:54:26,997.997 INFO    ] Launching Daemon at Mon Jun 22 16:54:25 IST 2026
[2026-06-22 16:54:26,009.009 INFO    ] ================================================
[2026-06-22 16:54:26,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:54:26
[2026-06-22 16:54:27,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:54:27,639.639 INFO    ] Initializing speech engine...
[2026-06-22 16:54:27,649.649 INFO    ] 2026-06-22 16:54:27
[2026-06-22 16:54:27,936.936 INFO    ] 2026-06-22 16:54:27
[2026-06-22 16:54:27,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:54:28,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:54:28,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:54:28,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:54:28,366.366 INFO    ] time= 22/06/2026 16:54:28
[2026-06-22 16:54:28,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:54:28,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:54:28,521.521 INFO    ] No existing commands found in stream
[2026-06-22 16:54:33,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:54:33,530.530 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-22 16:54:36,304.304 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:54:36,307.307 INFO    ] Checking for system updates...
[2026-06-22 16:54:36,344.344 INFO    ] 200
[2026-06-22 16:54:36,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:54:36,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:54:36,403.403 INFO    ] No update needed
[2026-06-22 16:54:36,406.406 INFO    ] Checking for camera pi updates...
[2026-06-22 16:54:36,444.444 INFO    ] 200
[2026-06-22 16:54:36,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:54:36,487.487 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:54:36,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:54:36,576.576 INFO    ] No camera update needed
[2026-06-22 16:54:36,578.578 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:54:36,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:54:36,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:54:36,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:54:38,631.631 INFO    ] ================================================
[2026-06-22 16:54:38,646.646 INFO    ] Launching Daemon at Mon Jun 22 16:54:38 IST 2026
[2026-06-22 16:54:38,657.657 INFO    ] ================================================
[2026-06-22 16:54:39,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:54:39
[2026-06-22 16:54:39,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:54:40,166.166 INFO    ] Initializing speech engine...
[2026-06-22 16:54:40,177.177 INFO    ] 2026-06-22 16:54:40
[2026-06-22 16:54:40,458.458 INFO    ] 2026-06-22 16:54:40
[2026-06-22 16:54:40,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:54:40,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:54:40,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:54:40,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:54:41,006.006 INFO    ] time= 22/06/2026 16:54:40
[2026-06-22 16:54:41,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:54:41,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:54:41,166.166 INFO    ] No existing commands found in stream
[2026-06-22 16:54:46,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:54:46,182.182 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-22 16:54:50,526.526 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:54:50,529.529 INFO    ] Checking for system updates...
[2026-06-22 16:54:50,566.566 INFO    ] 200
[2026-06-22 16:54:50,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:54:50,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:54:50,626.626 INFO    ] No update needed
[2026-06-22 16:54:50,629.629 INFO    ] Checking for camera pi updates...
[2026-06-22 16:54:50,667.667 INFO    ] 200
[2026-06-22 16:54:50,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:54:50,714.714 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:54:50,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:54:50,798.798 INFO    ] No camera update needed
[2026-06-22 16:54:50,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:54:50,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:54:50,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:54:50,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:54:52,856.856 INFO    ] ================================================
[2026-06-22 16:54:52,872.872 INFO    ] Launching Daemon at Mon Jun 22 16:54:52 IST 2026
[2026-06-22 16:54:52,882.882 INFO    ] ================================================
[2026-06-22 16:54:53,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:54:53
[2026-06-22 16:54:54,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:54:54,346.346 INFO    ] Initializing speech engine...
[2026-06-22 16:54:54,353.353 INFO    ] 2026-06-22 16:54:54
[2026-06-22 16:54:54,615.615 INFO    ] 2026-06-22 16:54:54
[2026-06-22 16:54:54,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:54:54,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:54:54,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:54:55,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:54:55,076.076 INFO    ] time= 22/06/2026 16:54:55
[2026-06-22 16:54:55,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:54:55,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:54:55,313.313 INFO    ] No existing commands found in stream
[2026-06-22 16:55:00,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:55:00,332.332 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-22 16:55:04,060.060 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:55:04,063.063 INFO    ] Checking for system updates...
[2026-06-22 16:55:04,099.099 INFO    ] 200
[2026-06-22 16:55:04,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:55:04,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:55:04,163.163 INFO    ] No update needed
[2026-06-22 16:55:04,165.165 INFO    ] Checking for camera pi updates...
[2026-06-22 16:55:04,199.199 INFO    ] 200
[2026-06-22 16:55:04,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:55:04,242.242 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:55:04,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:55:04,302.302 INFO    ] No camera update needed
[2026-06-22 16:55:04,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:55:04,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:55:04,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:55:04,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:55:06,360.360 INFO    ] ================================================
[2026-06-22 16:55:06,376.376 INFO    ] Launching Daemon at Mon Jun 22 16:55:06 IST 2026
[2026-06-22 16:55:06,387.387 INFO    ] ================================================
[2026-06-22 16:55:07,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:55:07
[2026-06-22 16:55:07,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:55:07,863.863 INFO    ] Initializing speech engine...
[2026-06-22 16:55:07,884.884 INFO    ] 2026-06-22 16:55:07
[2026-06-22 16:55:08,143.143 INFO    ] 2026-06-22 16:55:08
[2026-06-22 16:55:08,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:55:08,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:55:08,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:55:08,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:55:08,625.625 INFO    ] time= 22/06/2026 16:55:08
[2026-06-22 16:55:08,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:55:08,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:55:08,849.849 INFO    ] No existing commands found in stream
[2026-06-22 16:55:13,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:55:13,880.880 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-22 16:55:15,793.793 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:55:15,796.796 INFO    ] Checking for system updates...
[2026-06-22 16:55:15,833.833 INFO    ] 200
[2026-06-22 16:55:15,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:55:15,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:55:15,891.891 INFO    ] No update needed
[2026-06-22 16:55:15,894.894 INFO    ] Checking for camera pi updates...
[2026-06-22 16:55:15,927.927 INFO    ] 200
[2026-06-22 16:55:15,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:55:15,971.971 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:55:16,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:55:16,081.081 INFO    ] No camera update needed
[2026-06-22 16:55:16,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:55:16,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:55:16,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:55:16,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:55:18,139.139 INFO    ] ================================================
[2026-06-22 16:55:18,155.155 INFO    ] Launching Daemon at Mon Jun 22 16:55:18 IST 2026
[2026-06-22 16:55:18,166.166 INFO    ] ================================================
[2026-06-22 16:55:18,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:55:18
[2026-06-22 16:55:19,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:55:19,572.572 INFO    ] Initializing speech engine...
[2026-06-22 16:55:19,580.580 INFO    ] 2026-06-22 16:55:19
[2026-06-22 16:55:19,829.829 INFO    ] 2026-06-22 16:55:19
[2026-06-22 16:55:19,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:55:20,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:55:20,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:55:20,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:55:20,305.305 INFO    ] time= 22/06/2026 16:55:20
[2026-06-22 16:55:20,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:55:20,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:55:20,530.530 INFO    ] No existing commands found in stream
[2026-06-22 16:55:25,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:55:25,558.558 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-22 16:55:27,238.238 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:55:27,240.240 INFO    ] Checking for system updates...
[2026-06-22 16:55:27,261.261 INFO    ] 200
[2026-06-22 16:55:27,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:55:27,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:55:27,303.303 INFO    ] No update needed
[2026-06-22 16:55:27,306.306 INFO    ] Checking for camera pi updates...
[2026-06-22 16:55:27,340.340 INFO    ] 200
[2026-06-22 16:55:27,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:55:27,382.382 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:55:27,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:55:27,466.466 INFO    ] No camera update needed
[2026-06-22 16:55:27,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:55:27,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:55:27,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:55:27,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:55:29,522.522 INFO    ] ================================================
[2026-06-22 16:55:29,538.538 INFO    ] Launching Daemon at Mon Jun 22 16:55:29 IST 2026
[2026-06-22 16:55:29,549.549 INFO    ] ================================================
[2026-06-22 16:55:30,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:55:30
[2026-06-22 16:55:30,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:55:31,015.015 INFO    ] Initializing speech engine...
[2026-06-22 16:55:31,027.027 INFO    ] 2026-06-22 16:55:31
[2026-06-22 16:55:31,294.294 INFO    ] 2026-06-22 16:55:31
[2026-06-22 16:55:31,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:55:31,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:55:31,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:55:31,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:55:31,920.920 INFO    ] time= 22/06/2026 16:55:31
[2026-06-22 16:55:31,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:55:32,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:55:32,215.215 INFO    ] No existing commands found in stream
[2026-06-22 16:55:37,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:55:37,243.243 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-22 16:55:40,213.213 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:55:40,216.216 INFO    ] Checking for system updates...
[2026-06-22 16:55:40,252.252 INFO    ] 200
[2026-06-22 16:55:40,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:55:40,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:55:40,309.309 INFO    ] No update needed
[2026-06-22 16:55:40,312.312 INFO    ] Checking for camera pi updates...
[2026-06-22 16:55:40,350.350 INFO    ] 200
[2026-06-22 16:55:40,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:55:40,392.392 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:55:40,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:55:40,486.486 INFO    ] No camera update needed
[2026-06-22 16:55:40,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:55:40,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:55:40,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:55:40,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:55:42,542.542 INFO    ] ================================================
[2026-06-22 16:55:42,558.558 INFO    ] Launching Daemon at Mon Jun 22 16:55:42 IST 2026
[2026-06-22 16:55:42,570.570 INFO    ] ================================================
[2026-06-22 16:55:43,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:55:43
[2026-06-22 16:55:43,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:55:43,991.991 INFO    ] Initializing speech engine...
[2026-06-22 16:55:43,999.999 INFO    ] 2026-06-22 16:55:43
[2026-06-22 16:55:44,298.298 INFO    ] 2026-06-22 16:55:44
[2026-06-22 16:55:44,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:55:44,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:55:44,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:55:44,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:55:44,838.838 INFO    ] time= 22/06/2026 16:55:44
[2026-06-22 16:55:44,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:55:44,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:55:44,995.995 INFO    ] No existing commands found in stream
[2026-06-22 16:55:50,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:55:50,021.021 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-22 16:55:51,808.808 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:55:51,810.810 INFO    ] Checking for system updates...
[2026-06-22 16:55:51,848.848 INFO    ] 200
[2026-06-22 16:55:51,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:55:51,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:55:51,913.913 INFO    ] No update needed
[2026-06-22 16:55:51,915.915 INFO    ] Checking for camera pi updates...
[2026-06-22 16:55:51,957.957 INFO    ] 200
[2026-06-22 16:55:51,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:55:52,006.006 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:55:52,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:55:52,087.087 INFO    ] No camera update needed
[2026-06-22 16:55:52,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:55:52,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:55:52,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:55:52,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:55:54,141.141 INFO    ] ================================================
[2026-06-22 16:55:54,158.158 INFO    ] Launching Daemon at Mon Jun 22 16:55:54 IST 2026
[2026-06-22 16:55:54,169.169 INFO    ] ================================================
[2026-06-22 16:55:54,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:55:54
[2026-06-22 16:55:55,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:55:55,494.494 INFO    ] Initializing speech engine...
[2026-06-22 16:55:55,514.514 INFO    ] 2026-06-22 16:55:55
[2026-06-22 16:55:55,763.763 INFO    ] 2026-06-22 16:55:55
[2026-06-22 16:55:55,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:55:56,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:55:56,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:55:56,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:55:56,267.267 INFO    ] time= 22/06/2026 16:55:56
[2026-06-22 16:55:56,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:55:56,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:55:56,487.487 INFO    ] No existing commands found in stream
[2026-06-22 16:56:01,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:56:01,507.507 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-22 16:56:04,137.137 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:56:04,140.140 INFO    ] Checking for system updates...
[2026-06-22 16:56:04,176.176 INFO    ] 200
[2026-06-22 16:56:04,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:56:04,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:56:04,243.243 INFO    ] No update needed
[2026-06-22 16:56:04,245.245 INFO    ] Checking for camera pi updates...
[2026-06-22 16:56:04,279.279 INFO    ] 200
[2026-06-22 16:56:04,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:56:04,322.322 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:56:04,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:56:04,409.409 INFO    ] No camera update needed
[2026-06-22 16:56:04,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:56:04,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:56:04,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:56:04,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:56:06,467.467 INFO    ] ================================================
[2026-06-22 16:56:06,482.482 INFO    ] Launching Daemon at Mon Jun 22 16:56:06 IST 2026
[2026-06-22 16:56:06,493.493 INFO    ] ================================================
[2026-06-22 16:56:07,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:56:07
[2026-06-22 16:56:07,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:56:08,053.053 INFO    ] Initializing speech engine...
[2026-06-22 16:56:08,062.062 INFO    ] 2026-06-22 16:56:08
[2026-06-22 16:56:08,330.330 INFO    ] 2026-06-22 16:56:08
[2026-06-22 16:56:08,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:56:08,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:56:08,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:56:08,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:56:08,857.857 INFO    ] time= 22/06/2026 16:56:08
[2026-06-22 16:56:08,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:56:08,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:56:09,063.063 INFO    ] No existing commands found in stream
[2026-06-22 16:56:14,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:56:14,101.101 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-22 16:56:17,408.408 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:56:17,409.409 INFO    ] Checking for system updates...
[2026-06-22 16:56:17,430.430 INFO    ] 200
[2026-06-22 16:56:17,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:56:17,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:56:17,492.492 INFO    ] No update needed
[2026-06-22 16:56:17,495.495 INFO    ] Checking for camera pi updates...
[2026-06-22 16:56:17,533.533 INFO    ] 200
[2026-06-22 16:56:17,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:56:17,578.578 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:56:17,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:56:17,655.655 INFO    ] No camera update needed
[2026-06-22 16:56:17,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:56:17,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:56:17,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:56:17,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:56:19,713.713 INFO    ] ================================================
[2026-06-22 16:56:19,728.728 INFO    ] Launching Daemon at Mon Jun 22 16:56:19 IST 2026
[2026-06-22 16:56:19,740.740 INFO    ] ================================================
[2026-06-22 16:56:20,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:56:20
[2026-06-22 16:56:20,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:56:21,108.108 INFO    ] Initializing speech engine...
[2026-06-22 16:56:21,115.115 INFO    ] 2026-06-22 16:56:21
[2026-06-22 16:56:21,375.375 INFO    ] 2026-06-22 16:56:21
[2026-06-22 16:56:21,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:56:21,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:56:21,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:56:21,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:56:21,920.920 INFO    ] time= 22/06/2026 16:56:21
[2026-06-22 16:56:21,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:56:21,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:56:22,060.060 INFO    ] No existing commands found in stream
[2026-06-22 16:56:27,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:56:27,088.088 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-22 16:56:28,773.773 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:56:28,776.776 INFO    ] Checking for system updates...
[2026-06-22 16:56:28,815.815 INFO    ] 200
[2026-06-22 16:56:28,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:56:28,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:56:28,878.878 INFO    ] No update needed
[2026-06-22 16:56:28,881.881 INFO    ] Checking for camera pi updates...
[2026-06-22 16:56:28,917.917 INFO    ] 200
[2026-06-22 16:56:28,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:56:28,961.961 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:56:29,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:56:29,142.142 INFO    ] No camera update needed
[2026-06-22 16:56:29,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:56:29,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:56:29,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:56:29,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:56:31,197.197 INFO    ] ================================================
[2026-06-22 16:56:31,213.213 INFO    ] Launching Daemon at Mon Jun 22 16:56:31 IST 2026
[2026-06-22 16:56:31,228.228 INFO    ] ================================================
[2026-06-22 16:56:31,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:56:31
[2026-06-22 16:56:32,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:56:32,680.680 INFO    ] Initializing speech engine...
[2026-06-22 16:56:32,687.687 INFO    ] 2026-06-22 16:56:32
[2026-06-22 16:56:33,003.003 INFO    ] 2026-06-22 16:56:32
[2026-06-22 16:56:33,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:56:33,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:56:33,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:56:33,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:56:33,379.379 INFO    ] time= 22/06/2026 16:56:33
[2026-06-22 16:56:33,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:56:33,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:56:33,528.528 INFO    ] No existing commands found in stream
[2026-06-22 16:56:38,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:56:38,543.543 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-22 16:56:41,867.867 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:56:41,869.869 INFO    ] Checking for system updates...
[2026-06-22 16:56:41,905.905 INFO    ] 200
[2026-06-22 16:56:41,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:56:41,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:56:41,962.962 INFO    ] No update needed
[2026-06-22 16:56:41,965.965 INFO    ] Checking for camera pi updates...
[2026-06-22 16:56:42,001.001 INFO    ] 200
[2026-06-22 16:56:42,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:56:42,045.045 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:56:42,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:56:42,155.155 INFO    ] No camera update needed
[2026-06-22 16:56:42,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:56:42,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:56:42,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:56:42,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:56:44,213.213 INFO    ] ================================================
[2026-06-22 16:56:44,229.229 INFO    ] Launching Daemon at Mon Jun 22 16:56:44 IST 2026
[2026-06-22 16:56:44,240.240 INFO    ] ================================================
[2026-06-22 16:56:44,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:56:44
[2026-06-22 16:56:45,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:56:45,608.608 INFO    ] Initializing speech engine...
[2026-06-22 16:56:45,615.615 INFO    ] 2026-06-22 16:56:45
[2026-06-22 16:56:45,864.864 INFO    ] 2026-06-22 16:56:45
[2026-06-22 16:56:45,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:56:46,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:56:46,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:56:46,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:56:46,420.420 INFO    ] time= 22/06/2026 16:56:46
[2026-06-22 16:56:46,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:56:46,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:56:46,608.608 INFO    ] No existing commands found in stream
[2026-06-22 16:56:51,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:56:51,636.636 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-22 16:56:52,944.944 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:56:52,947.947 INFO    ] Checking for system updates...
[2026-06-22 16:56:52,984.984 INFO    ] 200
[2026-06-22 16:56:52,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:56:53,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:56:53,042.042 INFO    ] No update needed
[2026-06-22 16:56:53,044.044 INFO    ] Checking for camera pi updates...
[2026-06-22 16:56:53,078.078 INFO    ] 200
[2026-06-22 16:56:53,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:56:53,120.120 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:56:53,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:56:53,202.202 INFO    ] No camera update needed
[2026-06-22 16:56:53,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:56:53,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:56:53,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:56:53,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:56:55,259.259 INFO    ] ================================================
[2026-06-22 16:56:55,276.276 INFO    ] Launching Daemon at Mon Jun 22 16:56:55 IST 2026
[2026-06-22 16:56:55,287.287 INFO    ] ================================================
[2026-06-22 16:56:55,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:56:55
[2026-06-22 16:56:56,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:56:56,608.608 INFO    ] Initializing speech engine...
[2026-06-22 16:56:56,633.633 INFO    ] 2026-06-22 16:56:56
[2026-06-22 16:56:56,902.902 INFO    ] 2026-06-22 16:56:56
[2026-06-22 16:56:56,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:56:57,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:56:57,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:56:57,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:56:57,307.307 INFO    ] time= 22/06/2026 16:56:57
[2026-06-22 16:56:57,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:56:57,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:56:57,458.458 INFO    ] No existing commands found in stream
[2026-06-22 16:57:02,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:57:02,487.487 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-22 16:57:04,743.743 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:57:04,746.746 INFO    ] Checking for system updates...
[2026-06-22 16:57:04,786.786 INFO    ] 200
[2026-06-22 16:57:04,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:57:04,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:57:04,850.850 INFO    ] No update needed
[2026-06-22 16:57:04,852.852 INFO    ] Checking for camera pi updates...
[2026-06-22 16:57:04,886.886 INFO    ] 200
[2026-06-22 16:57:04,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:57:04,934.934 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:57:05,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:57:05,041.041 INFO    ] No camera update needed
[2026-06-22 16:57:05,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:57:05,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:57:05,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:57:05,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:57:07,097.097 INFO    ] ================================================
[2026-06-22 16:57:07,114.114 INFO    ] Launching Daemon at Mon Jun 22 16:57:07 IST 2026
[2026-06-22 16:57:07,125.125 INFO    ] ================================================
[2026-06-22 16:57:07,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:57:07
[2026-06-22 16:57:08,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:57:08,588.588 INFO    ] Initializing speech engine...
[2026-06-22 16:57:08,597.597 INFO    ] 2026-06-22 16:57:08
[2026-06-22 16:57:08,893.893 INFO    ] 2026-06-22 16:57:08
[2026-06-22 16:57:08,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:57:09,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:57:09,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:57:09,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:57:09,278.278 INFO    ] time= 22/06/2026 16:57:09
[2026-06-22 16:57:09,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:57:09,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:57:09,476.476 INFO    ] No existing commands found in stream
[2026-06-22 16:57:14,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:57:14,493.493 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-22 16:57:16,964.964 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:57:16,967.967 INFO    ] Checking for system updates...
[2026-06-22 16:57:17,003.003 INFO    ] 200
[2026-06-22 16:57:17,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:57:17,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:57:17,070.070 INFO    ] No update needed
[2026-06-22 16:57:17,073.073 INFO    ] Checking for camera pi updates...
[2026-06-22 16:57:17,108.108 INFO    ] 200
[2026-06-22 16:57:17,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:57:17,153.153 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:57:17,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:57:17,239.239 INFO    ] No camera update needed
[2026-06-22 16:57:17,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:57:17,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:57:17,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:57:17,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:57:19,299.299 INFO    ] ================================================
[2026-06-22 16:57:19,315.315 INFO    ] Launching Daemon at Mon Jun 22 16:57:19 IST 2026
[2026-06-22 16:57:19,326.326 INFO    ] ================================================
[2026-06-22 16:57:19,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:57:19
[2026-06-22 16:57:20,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:57:20,710.710 INFO    ] Initializing speech engine...
[2026-06-22 16:57:20,718.718 INFO    ] 2026-06-22 16:57:20
[2026-06-22 16:57:20,963.963 INFO    ] 2026-06-22 16:57:20
[2026-06-22 16:57:20,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:57:21,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:57:21,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:57:21,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:57:21,443.443 INFO    ] time= 22/06/2026 16:57:21
[2026-06-22 16:57:21,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:57:21,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:57:21,684.684 INFO    ] No existing commands found in stream
[2026-06-22 16:57:26,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:57:26,713.713 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-22 16:57:29,474.474 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:57:29,476.476 INFO    ] Checking for system updates...
[2026-06-22 16:57:29,512.512 INFO    ] 200
[2026-06-22 16:57:29,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:57:29,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:57:29,570.570 INFO    ] No update needed
[2026-06-22 16:57:29,573.573 INFO    ] Checking for camera pi updates...
[2026-06-22 16:57:29,606.606 INFO    ] 200
[2026-06-22 16:57:29,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:57:29,653.653 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:57:29,735.735 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:57:29,737.737 INFO    ] No camera update needed
[2026-06-22 16:57:29,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:57:29,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:57:29,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:57:29,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:57:31,792.792 INFO    ] ================================================
[2026-06-22 16:57:31,808.808 INFO    ] Launching Daemon at Mon Jun 22 16:57:31 IST 2026
[2026-06-22 16:57:31,820.820 INFO    ] ================================================
[2026-06-22 16:57:32,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:57:32
[2026-06-22 16:57:33,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:57:33,563.563 INFO    ] Initializing speech engine...
[2026-06-22 16:57:33,576.576 INFO    ] 2026-06-22 16:57:33
[2026-06-22 16:57:33,869.869 INFO    ] 2026-06-22 16:57:33
[2026-06-22 16:57:33,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:57:34,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:57:34,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:57:34,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:57:34,423.423 INFO    ] time= 22/06/2026 16:57:34
[2026-06-22 16:57:34,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:57:34,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:57:34,597.597 INFO    ] No existing commands found in stream
[2026-06-22 16:57:39,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:57:39,627.627 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-22 16:57:43,935.935 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:57:43,939.939 INFO    ] Checking for system updates...
[2026-06-22 16:57:43,990.990 INFO    ] 200
[2026-06-22 16:57:43,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:57:44,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:57:44,059.059 INFO    ] No update needed
[2026-06-22 16:57:44,061.061 INFO    ] Checking for camera pi updates...
[2026-06-22 16:57:44,100.100 INFO    ] 200
[2026-06-22 16:57:44,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:57:44,145.145 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:57:44,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:57:44,237.237 INFO    ] No camera update needed
[2026-06-22 16:57:44,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:57:44,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:57:44,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:57:44,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:57:46,298.298 INFO    ] ================================================
[2026-06-22 16:57:46,315.315 INFO    ] Launching Daemon at Mon Jun 22 16:57:46 IST 2026
[2026-06-22 16:57:46,326.326 INFO    ] ================================================
[2026-06-22 16:57:46,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:57:46
[2026-06-22 16:57:47,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:57:47,655.655 INFO    ] Initializing speech engine...
[2026-06-22 16:57:47,674.674 INFO    ] 2026-06-22 16:57:47
[2026-06-22 16:57:47,926.926 INFO    ] 2026-06-22 16:57:47
[2026-06-22 16:57:47,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:57:48,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:57:48,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:57:48,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:57:48,407.407 INFO    ] time= 22/06/2026 16:57:48
[2026-06-22 16:57:48,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:57:48,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:57:48,627.627 INFO    ] No existing commands found in stream
[2026-06-22 16:57:53,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:57:53,660.660 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-22 16:57:55,238.238 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:57:55,241.241 INFO    ] Checking for system updates...
[2026-06-22 16:57:55,277.277 INFO    ] 200
[2026-06-22 16:57:55,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:57:55,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:57:55,337.337 INFO    ] No update needed
[2026-06-22 16:57:55,340.340 INFO    ] Checking for camera pi updates...
[2026-06-22 16:57:55,374.374 INFO    ] 200
[2026-06-22 16:57:55,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:57:55,424.424 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:57:55,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:57:55,515.515 INFO    ] No camera update needed
[2026-06-22 16:57:55,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:57:55,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:57:55,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:57:55,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:57:57,573.573 INFO    ] ================================================
[2026-06-22 16:57:57,589.589 INFO    ] Launching Daemon at Mon Jun 22 16:57:57 IST 2026
[2026-06-22 16:57:57,600.600 INFO    ] ================================================
[2026-06-22 16:57:58,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:57:58
[2026-06-22 16:57:58,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:57:58,931.931 INFO    ] Initializing speech engine...
[2026-06-22 16:57:58,939.939 INFO    ] 2026-06-22 16:57:58
[2026-06-22 16:57:59,235.235 INFO    ] 2026-06-22 16:57:59
[2026-06-22 16:57:59,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:57:59,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:57:59,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:57:59,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:57:59,661.661 INFO    ] time= 22/06/2026 16:57:59
[2026-06-22 16:57:59,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:57:59,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:57:59,830.830 INFO    ] No existing commands found in stream
[2026-06-22 16:58:04,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:58:04,863.863 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-22 16:58:07,488.488 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 16:58:07,491.491 INFO    ] Checking for system updates...
[2026-06-22 16:58:07,527.527 INFO    ] 200
[2026-06-22 16:58:07,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:58:07,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:58:07,584.584 INFO    ] No update needed
[2026-06-22 16:58:07,586.586 INFO    ] Checking for camera pi updates...
[2026-06-22 16:58:07,623.623 INFO    ] 200
[2026-06-22 16:58:07,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:58:07,666.666 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:58:07,745.745 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:58:07,748.748 INFO    ] No camera update needed
[2026-06-22 16:58:07,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:58:07,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:58:07,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:58:07,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:58:09,803.803 INFO    ] ================================================
[2026-06-22 16:58:09,819.819 INFO    ] Launching Daemon at Mon Jun 22 16:58:09 IST 2026
[2026-06-22 16:58:09,830.830 INFO    ] ================================================
[2026-06-22 16:58:10,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:58:10
[2026-06-22 16:58:11,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:58:11,317.317 INFO    ] Initializing speech engine...
[2026-06-22 16:58:11,324.324 INFO    ] 2026-06-22 16:58:11
[2026-06-22 16:58:11,610.610 INFO    ] 2026-06-22 16:58:11
[2026-06-22 16:58:11,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:58:11,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:58:11,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:58:12,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:58:12,175.175 INFO    ] time= 22/06/2026 16:58:12
[2026-06-22 16:58:12,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:58:12,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:58:12,319.319 INFO    ] No existing commands found in stream
[2026-06-22 16:58:17,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:58:17,343.343 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-22 16:58:23,235.235 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 16:58:23,237.237 INFO    ] Checking for system updates...
[2026-06-22 16:58:23,258.258 INFO    ] 200
[2026-06-22 16:58:23,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:58:23,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:58:23,316.316 INFO    ] No update needed
[2026-06-22 16:58:23,319.319 INFO    ] Checking for camera pi updates...
[2026-06-22 16:58:23,353.353 INFO    ] 200
[2026-06-22 16:58:23,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:58:23,402.402 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:58:23,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:58:23,468.468 INFO    ] No camera update needed
[2026-06-22 16:58:23,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:58:23,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:58:23,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:58:23,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:58:25,524.524 INFO    ] ================================================
[2026-06-22 16:58:25,539.539 INFO    ] Launching Daemon at Mon Jun 22 16:58:25 IST 2026
[2026-06-22 16:58:25,550.550 INFO    ] ================================================
[2026-06-22 16:58:26,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:58:26
[2026-06-22 16:58:26,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:58:26,856.856 INFO    ] Initializing speech engine...
[2026-06-22 16:58:26,877.877 INFO    ] 2026-06-22 16:58:26
[2026-06-22 16:58:27,132.132 INFO    ] 2026-06-22 16:58:27
[2026-06-22 16:58:27,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:58:27,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:58:27,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:58:27,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:58:27,670.670 INFO    ] time= 22/06/2026 16:58:27
[2026-06-22 16:58:27,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:58:27,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:58:27,830.830 INFO    ] No existing commands found in stream
[2026-06-22 16:58:32,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:58:32,854.854 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-22 16:58:34,740.740 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:58:34,743.743 INFO    ] Checking for system updates...
[2026-06-22 16:58:34,779.779 INFO    ] 200
[2026-06-22 16:58:34,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:58:34,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:58:34,839.839 INFO    ] No update needed
[2026-06-22 16:58:34,841.841 INFO    ] Checking for camera pi updates...
[2026-06-22 16:58:34,876.876 INFO    ] 200
[2026-06-22 16:58:34,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:58:34,924.924 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:58:35,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:58:35,025.025 INFO    ] No camera update needed
[2026-06-22 16:58:35,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:58:35,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:58:35,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:58:35,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:58:37,087.087 INFO    ] ================================================
[2026-06-22 16:58:37,103.103 INFO    ] Launching Daemon at Mon Jun 22 16:58:37 IST 2026
[2026-06-22 16:58:37,115.115 INFO    ] ================================================
[2026-06-22 16:58:37,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:58:37
[2026-06-22 16:58:38,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:58:38,525.525 INFO    ] Initializing speech engine...
[2026-06-22 16:58:38,540.540 INFO    ] 2026-06-22 16:58:38
[2026-06-22 16:58:38,820.820 INFO    ] 2026-06-22 16:58:38
[2026-06-22 16:58:38,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:58:39,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:58:39,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:58:39,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:58:39,228.228 INFO    ] time= 22/06/2026 16:58:39
[2026-06-22 16:58:39,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:58:39,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:58:39,317.317 INFO    ] No existing commands found in stream
[2026-06-22 16:58:44,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:58:44,335.335 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-22 16:58:48,529.529 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 16:58:48,532.532 INFO    ] Checking for system updates...
[2026-06-22 16:58:48,568.568 INFO    ] 200
[2026-06-22 16:58:48,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:58:48,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:58:48,625.625 INFO    ] No update needed
[2026-06-22 16:58:48,627.627 INFO    ] Checking for camera pi updates...
[2026-06-22 16:58:48,661.661 INFO    ] 200
[2026-06-22 16:58:48,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:58:48,710.710 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:58:48,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:58:48,793.793 INFO    ] No camera update needed
[2026-06-22 16:58:48,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:58:48,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:58:48,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:58:48,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:58:50,849.849 INFO    ] ================================================
[2026-06-22 16:58:50,865.865 INFO    ] Launching Daemon at Mon Jun 22 16:58:50 IST 2026
[2026-06-22 16:58:50,876.876 INFO    ] ================================================
[2026-06-22 16:58:51,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:58:51
[2026-06-22 16:58:52,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:58:52,292.292 INFO    ] Initializing speech engine...
[2026-06-22 16:58:52,307.307 INFO    ] 2026-06-22 16:58:52
[2026-06-22 16:58:52,588.588 INFO    ] 2026-06-22 16:58:52
[2026-06-22 16:58:52,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:58:52,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:58:52,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:58:52,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:58:52,997.997 INFO    ] time= 22/06/2026 16:58:52
[2026-06-22 16:58:53,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:58:53,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:58:53,189.189 INFO    ] No existing commands found in stream
[2026-06-22 16:58:58,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:58:58,223.223 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-22 16:59:01,363.363 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:59:01,364.364 INFO    ] Checking for system updates...
[2026-06-22 16:59:01,385.385 INFO    ] 200
[2026-06-22 16:59:01,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:59:01,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:59:01,435.435 INFO    ] No update needed
[2026-06-22 16:59:01,438.438 INFO    ] Checking for camera pi updates...
[2026-06-22 16:59:01,471.471 INFO    ] 200
[2026-06-22 16:59:01,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:59:01,513.513 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:59:01,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:59:01,599.599 INFO    ] No camera update needed
[2026-06-22 16:59:01,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:59:01,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:59:01,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:59:01,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:59:03,658.658 INFO    ] ================================================
[2026-06-22 16:59:03,677.677 INFO    ] Launching Daemon at Mon Jun 22 16:59:03 IST 2026
[2026-06-22 16:59:03,689.689 INFO    ] ================================================
[2026-06-22 16:59:04,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:59:04
[2026-06-22 16:59:05,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:59:05,309.309 INFO    ] Initializing speech engine...
[2026-06-22 16:59:05,321.321 INFO    ] 2026-06-22 16:59:05
[2026-06-22 16:59:05,609.609 INFO    ] 2026-06-22 16:59:05
[2026-06-22 16:59:05,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:59:05,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:59:05,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:59:06,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:59:06,153.153 INFO    ] time= 22/06/2026 16:59:06
[2026-06-22 16:59:06,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:59:06,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:59:06,311.311 INFO    ] No existing commands found in stream
[2026-06-22 16:59:11,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:59:11,340.340 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-22 16:59:15,611.611 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:59:15,614.614 INFO    ] Checking for system updates...
[2026-06-22 16:59:15,651.651 INFO    ] 200
[2026-06-22 16:59:15,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:59:15,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:59:15,710.710 INFO    ] No update needed
[2026-06-22 16:59:15,713.713 INFO    ] Checking for camera pi updates...
[2026-06-22 16:59:15,748.748 INFO    ] 200
[2026-06-22 16:59:15,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:59:15,792.792 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:59:15,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:59:15,896.896 INFO    ] No camera update needed
[2026-06-22 16:59:15,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:59:15,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:59:15,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:59:15,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:59:17,955.955 INFO    ] ================================================
[2026-06-22 16:59:17,970.970 INFO    ] Launching Daemon at Mon Jun 22 16:59:17 IST 2026
[2026-06-22 16:59:17,980.980 INFO    ] ================================================
[2026-06-22 16:59:18,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:59:18
[2026-06-22 16:59:19,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:59:19,281.281 INFO    ] Initializing speech engine...
[2026-06-22 16:59:19,289.289 INFO    ] 2026-06-22 16:59:19
[2026-06-22 16:59:19,565.565 INFO    ] 2026-06-22 16:59:19
[2026-06-22 16:59:19,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:59:19,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:59:19,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:59:20,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:59:20,038.038 INFO    ] time= 22/06/2026 16:59:20
[2026-06-22 16:59:20,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:59:20,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:59:20,288.288 INFO    ] No existing commands found in stream
[2026-06-22 16:59:25,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:59:25,302.302 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-22 16:59:29,097.097 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 16:59:29,098.098 INFO    ] Checking for system updates...
[2026-06-22 16:59:29,119.119 INFO    ] 200
[2026-06-22 16:59:29,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:59:29,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:59:29,158.158 INFO    ] No update needed
[2026-06-22 16:59:29,161.161 INFO    ] Checking for camera pi updates...
[2026-06-22 16:59:29,198.198 INFO    ] 200
[2026-06-22 16:59:29,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:59:29,240.240 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:59:29,324.324 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 16:59:29,327.327 INFO    ] No camera update needed
[2026-06-22 16:59:29,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:59:29,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:59:29,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:59:29,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:59:31,384.384 INFO    ] ================================================
[2026-06-22 16:59:31,399.399 INFO    ] Launching Daemon at Mon Jun 22 16:59:31 IST 2026
[2026-06-22 16:59:31,410.410 INFO    ] ================================================
[2026-06-22 16:59:31,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:59:31
[2026-06-22 16:59:32,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:59:32,974.974 INFO    ] Initializing speech engine...
[2026-06-22 16:59:32,986.986 INFO    ] 2026-06-22 16:59:32
[2026-06-22 16:59:33,281.281 INFO    ] 2026-06-22 16:59:33
[2026-06-22 16:59:33,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:59:33,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:59:33,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:59:33,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:59:33,860.860 INFO    ] time= 22/06/2026 16:59:33
[2026-06-22 16:59:33,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:59:33,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:59:34,006.006 INFO    ] No existing commands found in stream
[2026-06-22 16:59:39,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:59:39,031.031 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-22 16:59:39,916.916 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 16:59:39,919.919 INFO    ] Checking for system updates...
[2026-06-22 16:59:39,956.956 INFO    ] 200
[2026-06-22 16:59:39,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:59:40,013.013 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:59:40,015.015 INFO    ] No update needed
[2026-06-22 16:59:40,018.018 INFO    ] Checking for camera pi updates...
[2026-06-22 16:59:40,053.053 INFO    ] 200
[2026-06-22 16:59:40,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:59:40,104.104 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:59:40,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:59:40,189.189 INFO    ] No camera update needed
[2026-06-22 16:59:40,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:59:40,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:59:40,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:59:40,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:59:42,245.245 INFO    ] ================================================
[2026-06-22 16:59:42,260.260 INFO    ] Launching Daemon at Mon Jun 22 16:59:42 IST 2026
[2026-06-22 16:59:42,270.270 INFO    ] ================================================
[2026-06-22 16:59:42,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:59:42
[2026-06-22 16:59:43,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:59:43,618.618 INFO    ] Initializing speech engine...
[2026-06-22 16:59:43,635.635 INFO    ] 2026-06-22 16:59:43
[2026-06-22 16:59:43,890.890 INFO    ] 2026-06-22 16:59:43
[2026-06-22 16:59:43,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:59:44,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:59:44,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:59:44,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:59:44,335.335 INFO    ] time= 22/06/2026 16:59:44
[2026-06-22 16:59:44,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:59:44,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:59:44,615.615 INFO    ] No existing commands found in stream
[2026-06-22 16:59:49,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 16:59:49,632.632 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-22 16:59:50,391.391 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 16:59:50,394.394 INFO    ] Checking for system updates...
[2026-06-22 16:59:50,431.431 INFO    ] 200
[2026-06-22 16:59:50,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:59:50,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:59:50,490.490 INFO    ] No update needed
[2026-06-22 16:59:50,492.492 INFO    ] Checking for camera pi updates...
[2026-06-22 16:59:50,529.529 INFO    ] 200
[2026-06-22 16:59:50,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 16:59:50,571.571 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 16:59:50,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 16:59:50,658.658 INFO    ] No camera update needed
[2026-06-22 16:59:50,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-22 16:59:50,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 16:59:50,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 16:59:50,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 16:59:52,714.714 INFO    ] ================================================
[2026-06-22 16:59:52,729.729 INFO    ] Launching Daemon at Mon Jun 22 16:59:52 IST 2026
[2026-06-22 16:59:52,740.740 INFO    ] ================================================
[2026-06-22 16:59:53,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 16:59:53
[2026-06-22 16:59:53,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 16:59:54,124.124 INFO    ] Initializing speech engine...
[2026-06-22 16:59:54,132.132 INFO    ] 2026-06-22 16:59:54
[2026-06-22 16:59:54,393.393 INFO    ] 2026-06-22 16:59:54
[2026-06-22 16:59:54,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 16:59:54,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 16:59:54,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 16:59:54,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 16:59:54,914.914 INFO    ] time= 22/06/2026 16:59:54
[2026-06-22 16:59:54,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 16:59:54,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-22 16:59:55,090.090 INFO    ] No existing commands found in stream
[2026-06-22 17:00:00,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:00:00,109.109 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-22 17:00:01,443.443 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:00:01,445.445 INFO    ] Checking for system updates...
[2026-06-22 17:00:01,466.466 INFO    ] 200
[2026-06-22 17:00:01,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:00:01,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:00:01,501.501 INFO    ] No update needed
[2026-06-22 17:00:01,502.502 INFO    ] Checking for camera pi updates...
[2026-06-22 17:00:01,522.522 INFO    ] 200
[2026-06-22 17:00:01,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:00:01,552.552 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:00:01,632.632 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:00:01,635.635 INFO    ] No camera update needed
[2026-06-22 17:00:01,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:00:01,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:00:01,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:00:01,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:00:03,827.827 INFO    ] ================================================
[2026-06-22 17:00:03,880.880 INFO    ] Launching Daemon at Mon Jun 22 17:00:03 IST 2026
[2026-06-22 17:00:03,958.958 INFO    ] ================================================
[2026-06-22 17:00:05,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:00:05
[2026-06-22 17:00:06,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:00:07,168.168 INFO    ] Initializing speech engine...
[2026-06-22 17:00:07,175.175 INFO    ] 2026-06-22 17:00:07
[2026-06-22 17:00:07,434.434 INFO    ] 2026-06-22 17:00:07
[2026-06-22 17:00:07,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:00:07,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:00:07,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:00:07,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:00:07,901.901 INFO    ] time= 22/06/2026 17:00:07
[2026-06-22 17:00:07,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:00:07,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:00:08,138.138 INFO    ] No existing commands found in stream
[2026-06-22 17:00:13,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:00:13,159.159 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-22 17:00:15,982.982 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:00:15,983.983 INFO    ] Checking for system updates...
[2026-06-22 17:00:16,004.004 INFO    ] 200
[2026-06-22 17:00:16,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:00:16,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:00:16,040.040 INFO    ] No update needed
[2026-06-22 17:00:16,041.041 INFO    ] Checking for camera pi updates...
[2026-06-22 17:00:16,060.060 INFO    ] 200
[2026-06-22 17:00:16,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:00:16,104.104 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:00:16,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:00:16,211.211 INFO    ] No camera update needed
[2026-06-22 17:00:16,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:00:16,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:00:16,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:00:16,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:00:18,269.269 INFO    ] ================================================
[2026-06-22 17:00:18,284.284 INFO    ] Launching Daemon at Mon Jun 22 17:00:18 IST 2026
[2026-06-22 17:00:18,295.295 INFO    ] ================================================
[2026-06-22 17:00:18,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:00:18
[2026-06-22 17:00:19,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:00:19,646.646 INFO    ] Initializing speech engine...
[2026-06-22 17:00:19,655.655 INFO    ] 2026-06-22 17:00:19
[2026-06-22 17:00:19,955.955 INFO    ] 2026-06-22 17:00:19
[2026-06-22 17:00:19,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:00:20,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:00:20,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:00:20,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:00:20,382.382 INFO    ] time= 22/06/2026 17:00:20
[2026-06-22 17:00:20,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:00:20,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:00:20,539.539 INFO    ] No existing commands found in stream
[2026-06-22 17:00:25,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:00:25,572.572 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-22 17:00:26,403.403 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:00:26,406.406 INFO    ] Checking for system updates...
[2026-06-22 17:00:26,446.446 INFO    ] 200
[2026-06-22 17:00:26,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:00:26,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:00:26,511.511 INFO    ] No update needed
[2026-06-22 17:00:26,513.513 INFO    ] Checking for camera pi updates...
[2026-06-22 17:00:26,547.547 INFO    ] 200
[2026-06-22 17:00:26,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:00:26,590.590 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:00:26,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:00:26,673.673 INFO    ] No camera update needed
[2026-06-22 17:00:26,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:00:26,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:00:26,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:00:26,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:00:28,730.730 INFO    ] ================================================
[2026-06-22 17:00:28,746.746 INFO    ] Launching Daemon at Mon Jun 22 17:00:28 IST 2026
[2026-06-22 17:00:28,757.757 INFO    ] ================================================
[2026-06-22 17:00:29,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:00:29
[2026-06-22 17:00:29,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:00:30,126.126 INFO    ] Initializing speech engine...
[2026-06-22 17:00:30,133.133 INFO    ] 2026-06-22 17:00:30
[2026-06-22 17:00:30,393.393 INFO    ] 2026-06-22 17:00:30
[2026-06-22 17:00:30,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:00:30,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:00:30,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:00:30,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:00:30,872.872 INFO    ] time= 22/06/2026 17:00:30
[2026-06-22 17:00:30,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:00:30,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:00:31,087.087 INFO    ] No existing commands found in stream
[2026-06-22 17:00:36,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:00:36,106.106 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-22 17:00:37,591.591 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:00:37,593.593 INFO    ] Checking for system updates...
[2026-06-22 17:00:37,633.633 INFO    ] 200
[2026-06-22 17:00:37,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:00:37,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:00:37,692.692 INFO    ] No update needed
[2026-06-22 17:00:37,695.695 INFO    ] Checking for camera pi updates...
[2026-06-22 17:00:37,729.729 INFO    ] 200
[2026-06-22 17:00:37,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:00:37,773.773 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:00:37,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:00:37,858.858 INFO    ] No camera update needed
[2026-06-22 17:00:37,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:00:37,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:00:37,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:00:37,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:00:39,915.915 INFO    ] ================================================
[2026-06-22 17:00:39,931.931 INFO    ] Launching Daemon at Mon Jun 22 17:00:39 IST 2026
[2026-06-22 17:00:39,943.943 INFO    ] ================================================
[2026-06-22 17:00:40,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:00:40
[2026-06-22 17:00:41,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:00:41,316.316 INFO    ] Initializing speech engine...
[2026-06-22 17:00:41,326.326 INFO    ] 2026-06-22 17:00:41
[2026-06-22 17:00:41,575.575 INFO    ] 2026-06-22 17:00:41
[2026-06-22 17:00:41,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:00:41,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:00:41,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:00:42,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:00:42,051.051 INFO    ] time= 22/06/2026 17:00:42
[2026-06-22 17:00:42,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:00:42,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:00:42,288.288 INFO    ] No existing commands found in stream
[2026-06-22 17:00:47,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:00:47,308.308 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-22 17:00:50,011.011 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:00:50,014.014 INFO    ] Checking for system updates...
[2026-06-22 17:00:50,052.052 INFO    ] 200
[2026-06-22 17:00:50,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:00:50,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:00:50,117.117 INFO    ] No update needed
[2026-06-22 17:00:50,120.120 INFO    ] Checking for camera pi updates...
[2026-06-22 17:00:50,158.158 INFO    ] 200
[2026-06-22 17:00:50,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:00:50,206.206 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:00:50,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:00:50,263.263 INFO    ] No camera update needed
[2026-06-22 17:00:50,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:00:50,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:00:50,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:00:50,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:00:52,322.322 INFO    ] ================================================
[2026-06-22 17:00:52,337.337 INFO    ] Launching Daemon at Mon Jun 22 17:00:52 IST 2026
[2026-06-22 17:00:52,348.348 INFO    ] ================================================
[2026-06-22 17:00:52,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:00:52
[2026-06-22 17:00:53,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:00:53,716.716 INFO    ] Initializing speech engine...
[2026-06-22 17:00:53,723.723 INFO    ] 2026-06-22 17:00:53
[2026-06-22 17:00:53,983.983 INFO    ] 2026-06-22 17:00:53
[2026-06-22 17:00:54,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:00:54,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:00:54,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:00:54,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:00:54,457.457 INFO    ] time= 22/06/2026 17:00:54
[2026-06-22 17:00:54,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:00:54,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:00:54,667.667 INFO    ] No existing commands found in stream
[2026-06-22 17:00:59,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:00:59,697.697 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-22 17:01:03,603.603 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:01:03,606.606 INFO    ] Checking for system updates...
[2026-06-22 17:01:03,646.646 INFO    ] 200
[2026-06-22 17:01:03,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:01:03,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:01:03,710.710 INFO    ] No update needed
[2026-06-22 17:01:03,712.712 INFO    ] Checking for camera pi updates...
[2026-06-22 17:01:03,750.750 INFO    ] 200
[2026-06-22 17:01:03,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:01:03,793.793 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:01:03,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:01:03,869.869 INFO    ] No camera update needed
[2026-06-22 17:01:03,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:01:03,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:01:03,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:01:03,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:01:05,927.927 INFO    ] ================================================
[2026-06-22 17:01:05,943.943 INFO    ] Launching Daemon at Mon Jun 22 17:01:05 IST 2026
[2026-06-22 17:01:05,953.953 INFO    ] ================================================
[2026-06-22 17:01:06,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:01:06
[2026-06-22 17:01:07,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:01:07,475.475 INFO    ] Initializing speech engine...
[2026-06-22 17:01:07,487.487 INFO    ] 2026-06-22 17:01:07
[2026-06-22 17:01:07,770.770 INFO    ] 2026-06-22 17:01:07
[2026-06-22 17:01:07,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:01:08,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:01:08,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:01:08,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:01:08,302.302 INFO    ] time= 22/06/2026 17:01:08
[2026-06-22 17:01:08,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:01:08,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:01:08,454.454 INFO    ] No existing commands found in stream
[2026-06-22 17:01:13,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:01:13,474.474 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-22 17:01:17,047.047 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:01:17,049.049 INFO    ] Checking for system updates...
[2026-06-22 17:01:17,087.087 INFO    ] 200
[2026-06-22 17:01:17,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:01:17,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:01:17,145.145 INFO    ] No update needed
[2026-06-22 17:01:17,148.148 INFO    ] Checking for camera pi updates...
[2026-06-22 17:01:17,183.183 INFO    ] 200
[2026-06-22 17:01:17,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:01:17,226.226 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:01:17,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:01:17,309.309 INFO    ] No camera update needed
[2026-06-22 17:01:17,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:01:17,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:01:17,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:01:17,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:01:19,365.365 INFO    ] ================================================
[2026-06-22 17:01:19,380.380 INFO    ] Launching Daemon at Mon Jun 22 17:01:19 IST 2026
[2026-06-22 17:01:19,391.391 INFO    ] ================================================
[2026-06-22 17:01:20,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:01:20
[2026-06-22 17:01:20,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:01:20,993.993 INFO    ] Initializing speech engine...
[2026-06-22 17:01:21,001.001 INFO    ] 2026-06-22 17:01:20
[2026-06-22 17:01:21,294.294 INFO    ] 2026-06-22 17:01:21
[2026-06-22 17:01:21,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:01:21,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:01:21,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:01:21,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:01:22,001.001 INFO    ] time= 22/06/2026 17:01:21
[2026-06-22 17:01:22,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:01:22,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:01:22,246.246 INFO    ] No existing commands found in stream
[2026-06-22 17:01:27,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:01:27,263.263 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-22 17:01:31,358.358 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:01:31,361.361 INFO    ] Checking for system updates...
[2026-06-22 17:01:31,409.409 INFO    ] 200
[2026-06-22 17:01:31,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:01:31,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:01:31,487.487 INFO    ] No update needed
[2026-06-22 17:01:31,491.491 INFO    ] Checking for camera pi updates...
[2026-06-22 17:01:31,533.533 INFO    ] 200
[2026-06-22 17:01:31,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:01:31,586.586 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:01:31,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:01:31,680.680 INFO    ] No camera update needed
[2026-06-22 17:01:31,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:01:31,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:01:31,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:01:31,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:01:33,742.742 INFO    ] ================================================
[2026-06-22 17:01:33,757.757 INFO    ] Launching Daemon at Mon Jun 22 17:01:33 IST 2026
[2026-06-22 17:01:33,768.768 INFO    ] ================================================
[2026-06-22 17:01:34,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:01:34
[2026-06-22 17:01:34,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:01:35,191.191 INFO    ] Initializing speech engine...
[2026-06-22 17:01:35,211.211 INFO    ] 2026-06-22 17:01:35
[2026-06-22 17:01:35,463.463 INFO    ] 2026-06-22 17:01:35
[2026-06-22 17:01:35,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:01:35,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:01:35,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:01:35,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:01:35,841.841 INFO    ] time= 22/06/2026 17:01:35
[2026-06-22 17:01:35,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:01:35,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:01:36,036.036 INFO    ] No existing commands found in stream
[2026-06-22 17:01:41,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:01:41,058.058 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-22 17:01:42,496.496 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:01:42,498.498 INFO    ] Checking for system updates...
[2026-06-22 17:01:42,538.538 INFO    ] 200
[2026-06-22 17:01:42,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:01:42,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:01:42,619.619 INFO    ] No update needed
[2026-06-22 17:01:42,622.622 INFO    ] Checking for camera pi updates...
[2026-06-22 17:01:42,674.674 INFO    ] 200
[2026-06-22 17:01:42,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:01:42,728.728 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:01:42,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:01:42,839.839 INFO    ] No camera update needed
[2026-06-22 17:01:42,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:01:42,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:01:42,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:01:42,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:01:44,896.896 INFO    ] ================================================
[2026-06-22 17:01:44,911.911 INFO    ] Launching Daemon at Mon Jun 22 17:01:44 IST 2026
[2026-06-22 17:01:44,922.922 INFO    ] ================================================
[2026-06-22 17:01:45,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:01:45
[2026-06-22 17:01:46,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:01:46,599.599 INFO    ] Initializing speech engine...
[2026-06-22 17:01:46,610.610 INFO    ] 2026-06-22 17:01:46
[2026-06-22 17:01:46,897.897 INFO    ] 2026-06-22 17:01:46
[2026-06-22 17:01:46,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:01:47,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:01:47,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:01:47,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:01:47,450.450 INFO    ] time= 22/06/2026 17:01:47
[2026-06-22 17:01:47,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:01:47,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:01:47,609.609 INFO    ] No existing commands found in stream
[2026-06-22 17:01:52,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:01:52,629.629 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-22 17:01:53,218.218 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:01:53,220.220 INFO    ] Checking for system updates...
[2026-06-22 17:01:53,241.241 INFO    ] 200
[2026-06-22 17:01:53,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:01:53,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:01:53,299.299 INFO    ] No update needed
[2026-06-22 17:01:53,301.301 INFO    ] Checking for camera pi updates...
[2026-06-22 17:01:53,335.335 INFO    ] 200
[2026-06-22 17:01:53,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:01:53,378.378 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:01:53,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:01:53,480.480 INFO    ] No camera update needed
[2026-06-22 17:01:53,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:01:53,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:01:53,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:01:53,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:01:55,538.538 INFO    ] ================================================
[2026-06-22 17:01:55,553.553 INFO    ] Launching Daemon at Mon Jun 22 17:01:55 IST 2026
[2026-06-22 17:01:55,564.564 INFO    ] ================================================
[2026-06-22 17:01:56,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:01:56
[2026-06-22 17:01:56,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:01:56,984.984 INFO    ] Initializing speech engine...
[2026-06-22 17:01:56,991.991 INFO    ] 2026-06-22 17:01:56
[2026-06-22 17:01:57,266.266 INFO    ] 2026-06-22 17:01:57
[2026-06-22 17:01:57,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:01:57,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:01:57,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:01:57,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:01:57,750.750 INFO    ] time= 22/06/2026 17:01:57
[2026-06-22 17:01:57,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:01:57,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:01:57,978.978 INFO    ] No existing commands found in stream
[2026-06-22 17:02:03,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:02:03,006.006 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-22 17:02:06,994.994 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:02:06,996.996 INFO    ] Checking for system updates...
[2026-06-22 17:02:07,032.032 INFO    ] 200
[2026-06-22 17:02:07,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:02:07,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:02:07,097.097 INFO    ] No update needed
[2026-06-22 17:02:07,099.099 INFO    ] Checking for camera pi updates...
[2026-06-22 17:02:07,132.132 INFO    ] 200
[2026-06-22 17:02:07,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:02:07,175.175 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:02:07,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:02:07,259.259 INFO    ] No camera update needed
[2026-06-22 17:02:07,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:02:07,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:02:07,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:02:07,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:02:09,315.315 INFO    ] ================================================
[2026-06-22 17:02:09,331.331 INFO    ] Launching Daemon at Mon Jun 22 17:02:09 IST 2026
[2026-06-22 17:02:09,342.342 INFO    ] ================================================
[2026-06-22 17:02:09,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:02:09
[2026-06-22 17:02:10,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:02:10,659.659 INFO    ] Initializing speech engine...
[2026-06-22 17:02:10,680.680 INFO    ] 2026-06-22 17:02:10
[2026-06-22 17:02:10,942.942 INFO    ] 2026-06-22 17:02:10
[2026-06-22 17:02:10,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:02:11,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:02:11,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:02:11,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:02:11,445.445 INFO    ] time= 22/06/2026 17:02:11
[2026-06-22 17:02:11,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:02:11,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:02:11,649.649 INFO    ] No existing commands found in stream
[2026-06-22 17:02:16,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:02:16,682.682 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-22 17:02:20,328.328 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:02:20,331.331 INFO    ] Checking for system updates...
[2026-06-22 17:02:20,372.372 INFO    ] 200
[2026-06-22 17:02:20,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:02:20,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:02:20,437.437 INFO    ] No update needed
[2026-06-22 17:02:20,440.440 INFO    ] Checking for camera pi updates...
[2026-06-22 17:02:20,474.474 INFO    ] 200
[2026-06-22 17:02:20,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:02:20,517.517 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:02:20,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:02:20,581.581 INFO    ] No camera update needed
[2026-06-22 17:02:20,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:02:20,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:02:20,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:02:20,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:02:22,637.637 INFO    ] ================================================
[2026-06-22 17:02:22,653.653 INFO    ] Launching Daemon at Mon Jun 22 17:02:22 IST 2026
[2026-06-22 17:02:22,665.665 INFO    ] ================================================
[2026-06-22 17:02:23,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:02:23
[2026-06-22 17:02:23,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:02:24,301.301 INFO    ] Initializing speech engine...
[2026-06-22 17:02:24,309.309 INFO    ] 2026-06-22 17:02:24
[2026-06-22 17:02:24,581.581 INFO    ] 2026-06-22 17:02:24
[2026-06-22 17:02:24,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:02:24,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:02:24,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:02:25,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:02:25,143.143 INFO    ] time= 22/06/2026 17:02:25
[2026-06-22 17:02:25,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:02:25,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:02:25,302.302 INFO    ] No existing commands found in stream
[2026-06-22 17:02:30,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:02:30,326.326 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-22 17:02:34,540.540 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:02:34,543.543 INFO    ] Checking for system updates...
[2026-06-22 17:02:34,581.581 INFO    ] 200
[2026-06-22 17:02:34,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:02:34,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:02:34,639.639 INFO    ] No update needed
[2026-06-22 17:02:34,642.642 INFO    ] Checking for camera pi updates...
[2026-06-22 17:02:34,677.677 INFO    ] 200
[2026-06-22 17:02:34,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:02:34,725.725 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:02:34,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:02:34,802.802 INFO    ] No camera update needed
[2026-06-22 17:02:34,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:02:34,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:02:34,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:02:34,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:02:36,849.849 INFO    ] ================================================
[2026-06-22 17:02:36,858.858 INFO    ] Launching Daemon at Mon Jun 22 17:02:36 IST 2026
[2026-06-22 17:02:36,864.864 INFO    ] ================================================
[2026-06-22 17:02:37,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:02:37
[2026-06-22 17:02:37,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:02:38,250.250 INFO    ] Initializing speech engine...
[2026-06-22 17:02:38,259.259 INFO    ] 2026-06-22 17:02:38
[2026-06-22 17:02:38,509.509 INFO    ] 2026-06-22 17:02:38
[2026-06-22 17:02:38,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:02:38,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:02:38,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:02:38,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:02:39,015.015 INFO    ] time= 22/06/2026 17:02:38
[2026-06-22 17:02:39,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:02:39,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:02:39,229.229 INFO    ] No existing commands found in stream
[2026-06-22 17:02:44,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:02:44,248.248 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-22 17:02:46,129.129 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:02:46,131.131 INFO    ] Checking for system updates...
[2026-06-22 17:02:46,168.168 INFO    ] 200
[2026-06-22 17:02:46,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:02:46,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:02:46,225.225 INFO    ] No update needed
[2026-06-22 17:02:46,227.227 INFO    ] Checking for camera pi updates...
[2026-06-22 17:02:46,265.265 INFO    ] 200
[2026-06-22 17:02:46,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:02:46,312.312 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:02:46,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:02:46,498.498 INFO    ] No camera update needed
[2026-06-22 17:02:46,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:02:46,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:02:46,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:02:46,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:02:48,556.556 INFO    ] ================================================
[2026-06-22 17:02:48,571.571 INFO    ] Launching Daemon at Mon Jun 22 17:02:48 IST 2026
[2026-06-22 17:02:48,581.581 INFO    ] ================================================
[2026-06-22 17:02:49,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:02:49
[2026-06-22 17:02:49,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:02:50,043.043 INFO    ] Initializing speech engine...
[2026-06-22 17:02:50,051.051 INFO    ] 2026-06-22 17:02:50
[2026-06-22 17:02:50,316.316 INFO    ] 2026-06-22 17:02:50
[2026-06-22 17:02:50,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:02:50,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:02:50,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:02:50,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:02:50,762.762 INFO    ] time= 22/06/2026 17:02:50
[2026-06-22 17:02:50,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:02:50,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:02:51,005.005 INFO    ] No existing commands found in stream
[2026-06-22 17:02:56,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:02:56,036.036 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-22 17:02:58,280.280 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:02:58,282.282 INFO    ] Checking for system updates...
[2026-06-22 17:02:58,302.302 INFO    ] 200
[2026-06-22 17:02:58,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:02:58,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:02:58,348.348 INFO    ] No update needed
[2026-06-22 17:02:58,351.351 INFO    ] Checking for camera pi updates...
[2026-06-22 17:02:58,385.385 INFO    ] 200
[2026-06-22 17:02:58,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:02:58,428.428 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:02:58,511.511 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:02:58,514.514 INFO    ] No camera update needed
[2026-06-22 17:02:58,516.516 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:02:58,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:02:58,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:02:58,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:03:00,571.571 INFO    ] ================================================
[2026-06-22 17:03:00,586.586 INFO    ] Launching Daemon at Mon Jun 22 17:03:00 IST 2026
[2026-06-22 17:03:00,597.597 INFO    ] ================================================
[2026-06-22 17:03:01,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:03:01
[2026-06-22 17:03:01,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:03:01,942.942 INFO    ] Initializing speech engine...
[2026-06-22 17:03:01,950.950 INFO    ] 2026-06-22 17:03:01
[2026-06-22 17:03:02,383.383 INFO    ] 2026-06-22 17:03:02
[2026-06-22 17:03:02,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:03:02,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:03:02,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:03:02,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:03:02,851.851 INFO    ] time= 22/06/2026 17:03:02
[2026-06-22 17:03:02,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:03:02,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:03:03,041.041 INFO    ] No existing commands found in stream
[2026-06-22 17:03:08,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:03:08,075.075 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-22 17:03:09,014.014 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:03:09,017.017 INFO    ] Checking for system updates...
[2026-06-22 17:03:09,056.056 INFO    ] 200
[2026-06-22 17:03:09,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:03:09,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:03:09,115.115 INFO    ] No update needed
[2026-06-22 17:03:09,118.118 INFO    ] Checking for camera pi updates...
[2026-06-22 17:03:09,156.156 INFO    ] 200
[2026-06-22 17:03:09,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:03:09,199.199 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:03:09,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:03:09,277.277 INFO    ] No camera update needed
[2026-06-22 17:03:09,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:03:09,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:03:09,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:03:09,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:03:11,333.333 INFO    ] ================================================
[2026-06-22 17:03:11,348.348 INFO    ] Launching Daemon at Mon Jun 22 17:03:11 IST 2026
[2026-06-22 17:03:11,359.359 INFO    ] ================================================
[2026-06-22 17:03:11,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:03:11
[2026-06-22 17:03:12,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:03:12,729.729 INFO    ] Initializing speech engine...
[2026-06-22 17:03:12,737.737 INFO    ] 2026-06-22 17:03:12
[2026-06-22 17:03:12,998.998 INFO    ] 2026-06-22 17:03:12
[2026-06-22 17:03:13,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:03:13,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:03:13,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:03:13,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:03:13,471.471 INFO    ] time= 22/06/2026 17:03:13
[2026-06-22 17:03:13,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:03:13,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:03:13,697.697 INFO    ] No existing commands found in stream
[2026-06-22 17:03:18,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:03:18,728.728 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-22 17:03:21,845.845 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:03:21,848.848 INFO    ] Checking for system updates...
[2026-06-22 17:03:21,887.887 INFO    ] 200
[2026-06-22 17:03:21,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:03:21,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:03:21,950.950 INFO    ] No update needed
[2026-06-22 17:03:21,953.953 INFO    ] Checking for camera pi updates...
[2026-06-22 17:03:21,989.989 INFO    ] 200
[2026-06-22 17:03:21,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:03:22,033.033 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:03:22,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:03:22,119.119 INFO    ] No camera update needed
[2026-06-22 17:03:22,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:03:22,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:03:22,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:03:22,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:03:24,177.177 INFO    ] ================================================
[2026-06-22 17:03:24,193.193 INFO    ] Launching Daemon at Mon Jun 22 17:03:24 IST 2026
[2026-06-22 17:03:24,205.205 INFO    ] ================================================
[2026-06-22 17:03:24,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:03:24
[2026-06-22 17:03:25,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:03:25,521.521 INFO    ] Initializing speech engine...
[2026-06-22 17:03:25,527.527 INFO    ] 2026-06-22 17:03:25
[2026-06-22 17:03:25,810.810 INFO    ] 2026-06-22 17:03:25
[2026-06-22 17:03:25,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:03:26,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:03:26,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:03:26,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:03:26,263.263 INFO    ] time= 22/06/2026 17:03:26
[2026-06-22 17:03:26,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:03:26,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:03:26,515.515 INFO    ] No existing commands found in stream
[2026-06-22 17:03:31,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:03:31,543.543 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-22 17:03:34,916.916 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:03:34,918.918 INFO    ] Checking for system updates...
[2026-06-22 17:03:34,954.954 INFO    ] 200
[2026-06-22 17:03:34,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:03:35,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:03:35,012.012 INFO    ] No update needed
[2026-06-22 17:03:35,015.015 INFO    ] Checking for camera pi updates...
[2026-06-22 17:03:35,049.049 INFO    ] 200
[2026-06-22 17:03:35,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:03:35,092.092 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:03:35,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:03:35,173.173 INFO    ] No camera update needed
[2026-06-22 17:03:35,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:03:35,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:03:35,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:03:35,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:03:37,228.228 INFO    ] ================================================
[2026-06-22 17:03:37,245.245 INFO    ] Launching Daemon at Mon Jun 22 17:03:37 IST 2026
[2026-06-22 17:03:37,257.257 INFO    ] ================================================
[2026-06-22 17:03:37,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:03:37
[2026-06-22 17:03:38,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:03:38,789.789 INFO    ] Initializing speech engine...
[2026-06-22 17:03:38,797.797 INFO    ] 2026-06-22 17:03:38
[2026-06-22 17:03:39,067.067 INFO    ] 2026-06-22 17:03:39
[2026-06-22 17:03:39,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:03:39,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:03:39,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:03:39,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:03:39,562.562 INFO    ] time= 22/06/2026 17:03:39
[2026-06-22 17:03:39,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:03:39,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:03:39,803.803 INFO    ] No existing commands found in stream
[2026-06-22 17:03:44,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:03:44,820.820 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-22 17:03:46,760.760 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:03:46,763.763 INFO    ] Checking for system updates...
[2026-06-22 17:03:46,802.802 INFO    ] 200
[2026-06-22 17:03:46,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:03:46,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:03:46,866.866 INFO    ] No update needed
[2026-06-22 17:03:46,869.869 INFO    ] Checking for camera pi updates...
[2026-06-22 17:03:46,916.916 INFO    ] 200
[2026-06-22 17:03:46,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:03:46,963.963 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:03:47,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:03:47,061.061 INFO    ] No camera update needed
[2026-06-22 17:03:47,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:03:47,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:03:47,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:03:47,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:03:49,120.120 INFO    ] ================================================
[2026-06-22 17:03:49,136.136 INFO    ] Launching Daemon at Mon Jun 22 17:03:49 IST 2026
[2026-06-22 17:03:49,147.147 INFO    ] ================================================
[2026-06-22 17:03:49,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:03:49
[2026-06-22 17:03:50,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:03:50,640.640 INFO    ] Initializing speech engine...
[2026-06-22 17:03:50,644.644 INFO    ] 2026-06-22 17:03:50
[2026-06-22 17:03:50,929.929 INFO    ] 2026-06-22 17:03:50
[2026-06-22 17:03:50,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:03:51,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:03:51,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:03:51,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:03:51,434.434 INFO    ] time= 22/06/2026 17:03:51
[2026-06-22 17:03:51,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:03:51,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:03:51,630.630 INFO    ] No existing commands found in stream
[2026-06-22 17:03:56,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:03:56,661.661 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-22 17:03:58,440.440 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:03:58,442.442 INFO    ] Checking for system updates...
[2026-06-22 17:03:58,478.478 INFO    ] 200
[2026-06-22 17:03:58,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:03:58,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:03:58,537.537 INFO    ] No update needed
[2026-06-22 17:03:58,540.540 INFO    ] Checking for camera pi updates...
[2026-06-22 17:03:58,581.581 INFO    ] 200
[2026-06-22 17:03:58,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:03:58,628.628 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:03:58,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:03:58,703.703 INFO    ] No camera update needed
[2026-06-22 17:03:58,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:03:58,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:03:58,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:03:58,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:04:00,750.750 INFO    ] ================================================
[2026-06-22 17:04:00,766.766 INFO    ] Launching Daemon at Mon Jun 22 17:04:00 IST 2026
[2026-06-22 17:04:00,777.777 INFO    ] ================================================
[2026-06-22 17:04:01,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:04:01
[2026-06-22 17:04:02,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:04:02,426.426 INFO    ] Initializing speech engine...
[2026-06-22 17:04:02,435.435 INFO    ] 2026-06-22 17:04:02
[2026-06-22 17:04:02,760.760 INFO    ] 2026-06-22 17:04:02
[2026-06-22 17:04:02,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:04:03,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:04:03,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:04:03,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:04:03,286.286 INFO    ] time= 22/06/2026 17:04:03
[2026-06-22 17:04:03,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:04:03,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:04:03,579.579 INFO    ] No existing commands found in stream
[2026-06-22 17:04:08,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:04:08,601.601 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-22 17:04:13,200.200 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:04:13,203.203 INFO    ] Checking for system updates...
[2026-06-22 17:04:13,240.240 INFO    ] 200
[2026-06-22 17:04:13,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:04:13,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:04:13,306.306 INFO    ] No update needed
[2026-06-22 17:04:13,308.308 INFO    ] Checking for camera pi updates...
[2026-06-22 17:04:13,342.342 INFO    ] 200
[2026-06-22 17:04:13,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:04:13,385.385 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:04:13,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:04:13,482.482 INFO    ] No camera update needed
[2026-06-22 17:04:13,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:04:13,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:04:13,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:04:13,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:04:15,539.539 INFO    ] ================================================
[2026-06-22 17:04:15,554.554 INFO    ] Launching Daemon at Mon Jun 22 17:04:15 IST 2026
[2026-06-22 17:04:15,565.565 INFO    ] ================================================
[2026-06-22 17:04:16,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:04:16
[2026-06-22 17:04:16,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:04:16,991.991 INFO    ] Initializing speech engine...
[2026-06-22 17:04:17,000.000 INFO    ] 2026-06-22 17:04:16
[2026-06-22 17:04:17,250.250 INFO    ] 2026-06-22 17:04:17
[2026-06-22 17:04:17,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:04:17,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:04:17,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:04:17,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:04:17,790.790 INFO    ] time= 22/06/2026 17:04:17
[2026-06-22 17:04:17,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:04:17,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:04:17,964.964 INFO    ] No existing commands found in stream
[2026-06-22 17:04:22,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:04:22,987.987 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-22 17:04:26,804.804 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:04:26,806.806 INFO    ] Checking for system updates...
[2026-06-22 17:04:26,840.840 INFO    ] 200
[2026-06-22 17:04:26,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:04:26,904.904 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:04:26,907.907 INFO    ] No update needed
[2026-06-22 17:04:26,909.909 INFO    ] Checking for camera pi updates...
[2026-06-22 17:04:26,943.943 INFO    ] 200
[2026-06-22 17:04:26,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:04:26,985.985 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:04:27,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:04:27,083.083 INFO    ] No camera update needed
[2026-06-22 17:04:27,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:04:27,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:04:27,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:04:27,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:04:29,140.140 INFO    ] ================================================
[2026-06-22 17:04:29,156.156 INFO    ] Launching Daemon at Mon Jun 22 17:04:29 IST 2026
[2026-06-22 17:04:29,167.167 INFO    ] ================================================
[2026-06-22 17:04:29,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:04:29
[2026-06-22 17:04:30,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:04:30,753.753 INFO    ] Initializing speech engine...
[2026-06-22 17:04:30,767.767 INFO    ] 2026-06-22 17:04:30
[2026-06-22 17:04:31,047.047 INFO    ] 2026-06-22 17:04:31
[2026-06-22 17:04:31,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:04:31,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:04:31,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:04:31,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:04:31,633.633 INFO    ] time= 22/06/2026 17:04:31
[2026-06-22 17:04:31,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:04:31,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:04:31,788.788 INFO    ] No existing commands found in stream
[2026-06-22 17:04:36,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:04:36,815.815 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-22 17:04:37,989.989 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:04:37,992.992 INFO    ] Checking for system updates...
[2026-06-22 17:04:38,029.029 INFO    ] 200
[2026-06-22 17:04:38,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:04:38,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:04:38,094.094 INFO    ] No update needed
[2026-06-22 17:04:38,096.096 INFO    ] Checking for camera pi updates...
[2026-06-22 17:04:38,134.134 INFO    ] 200
[2026-06-22 17:04:38,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:04:38,178.178 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:04:38,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:04:38,279.279 INFO    ] No camera update needed
[2026-06-22 17:04:38,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:04:38,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:04:38,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:04:38,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:04:40,337.337 INFO    ] ================================================
[2026-06-22 17:04:40,353.353 INFO    ] Launching Daemon at Mon Jun 22 17:04:40 IST 2026
[2026-06-22 17:04:40,364.364 INFO    ] ================================================
[2026-06-22 17:04:40,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:04:40
[2026-06-22 17:04:41,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:04:41,805.805 INFO    ] Initializing speech engine...
[2026-06-22 17:04:41,818.818 INFO    ] 2026-06-22 17:04:41
[2026-06-22 17:04:42,105.105 INFO    ] 2026-06-22 17:04:42
[2026-06-22 17:04:42,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:04:42,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:04:42,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:04:42,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:04:42,617.617 INFO    ] time= 22/06/2026 17:04:42
[2026-06-22 17:04:42,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:04:42,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:04:42,811.811 INFO    ] No existing commands found in stream
[2026-06-22 17:04:47,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:04:47,827.827 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-22 17:04:50,017.017 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:04:50,020.020 INFO    ] Checking for system updates...
[2026-06-22 17:04:50,057.057 INFO    ] 200
[2026-06-22 17:04:50,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:04:50,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:04:50,115.115 INFO    ] No update needed
[2026-06-22 17:04:50,117.117 INFO    ] Checking for camera pi updates...
[2026-06-22 17:04:50,155.155 INFO    ] 200
[2026-06-22 17:04:50,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:04:50,198.198 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:04:50,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:04:50,380.380 INFO    ] No camera update needed
[2026-06-22 17:04:50,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:04:50,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:04:50,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:04:50,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:04:52,435.435 INFO    ] ================================================
[2026-06-22 17:04:52,452.452 INFO    ] Launching Daemon at Mon Jun 22 17:04:52 IST 2026
[2026-06-22 17:04:52,462.462 INFO    ] ================================================
[2026-06-22 17:04:52,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:04:52
[2026-06-22 17:04:53,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:04:53,790.790 INFO    ] Initializing speech engine...
[2026-06-22 17:04:53,808.808 INFO    ] 2026-06-22 17:04:53
[2026-06-22 17:04:54,061.061 INFO    ] 2026-06-22 17:04:54
[2026-06-22 17:04:54,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:04:54,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:04:54,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:04:54,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:04:54,542.542 INFO    ] time= 22/06/2026 17:04:54
[2026-06-22 17:04:54,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:04:54,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:04:54,779.779 INFO    ] No existing commands found in stream
[2026-06-22 17:04:59,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:04:59,803.803 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-22 17:05:02,867.867 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:05:02,871.871 INFO    ] Checking for system updates...
[2026-06-22 17:05:02,910.910 INFO    ] 200
[2026-06-22 17:05:02,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:05:02,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:05:02,978.978 INFO    ] No update needed
[2026-06-22 17:05:02,980.980 INFO    ] Checking for camera pi updates...
[2026-06-22 17:05:03,029.029 INFO    ] 200
[2026-06-22 17:05:03,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:05:03,079.079 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:05:03,166.166 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:05:03,169.169 INFO    ] No camera update needed
[2026-06-22 17:05:03,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:05:03,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:05:03,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:05:03,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:05:05,225.225 INFO    ] ================================================
[2026-06-22 17:05:05,248.248 INFO    ] Launching Daemon at Mon Jun 22 17:05:05 IST 2026
[2026-06-22 17:05:05,260.260 INFO    ] ================================================
[2026-06-22 17:05:05,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:05:05
[2026-06-22 17:05:06,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:05:06,718.718 INFO    ] Initializing speech engine...
[2026-06-22 17:05:06,733.733 INFO    ] 2026-06-22 17:05:06
[2026-06-22 17:05:06,997.997 INFO    ] 2026-06-22 17:05:06
[2026-06-22 17:05:07,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:05:07,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:05:07,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:05:07,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:05:07,475.475 INFO    ] time= 22/06/2026 17:05:07
[2026-06-22 17:05:07,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:05:07,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:05:07,707.707 INFO    ] No existing commands found in stream
[2026-06-22 17:05:12,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:05:12,727.727 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-22 17:05:16,825.825 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:05:16,828.828 INFO    ] Checking for system updates...
[2026-06-22 17:05:16,871.871 INFO    ] 200
[2026-06-22 17:05:16,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:05:16,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:05:16,931.931 INFO    ] No update needed
[2026-06-22 17:05:16,934.934 INFO    ] Checking for camera pi updates...
[2026-06-22 17:05:16,972.972 INFO    ] 200
[2026-06-22 17:05:16,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:05:17,016.016 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:05:17,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:05:17,098.098 INFO    ] No camera update needed
[2026-06-22 17:05:17,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:05:17,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:05:17,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:05:17,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:05:19,155.155 INFO    ] ================================================
[2026-06-22 17:05:19,172.172 INFO    ] Launching Daemon at Mon Jun 22 17:05:19 IST 2026
[2026-06-22 17:05:19,183.183 INFO    ] ================================================
[2026-06-22 17:05:19,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:05:19
[2026-06-22 17:05:20,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:05:20,842.842 INFO    ] Initializing speech engine...
[2026-06-22 17:05:20,849.849 INFO    ] 2026-06-22 17:05:20
[2026-06-22 17:05:21,132.132 INFO    ] 2026-06-22 17:05:21
[2026-06-22 17:05:21,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:05:21,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:05:21,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:05:21,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:05:21,632.632 INFO    ] time= 22/06/2026 17:05:21
[2026-06-22 17:05:21,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:05:21,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:05:21,758.758 INFO    ] No existing commands found in stream
[2026-06-22 17:05:26,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:05:26,775.775 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-22 17:05:27,823.823 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:05:27,826.826 INFO    ] Checking for system updates...
[2026-06-22 17:05:27,863.863 INFO    ] 200
[2026-06-22 17:05:27,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:05:27,920.920 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:05:27,923.923 INFO    ] No update needed
[2026-06-22 17:05:27,926.926 INFO    ] Checking for camera pi updates...
[2026-06-22 17:05:27,961.961 INFO    ] 200
[2026-06-22 17:05:27,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:05:28,006.006 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:05:28,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:05:28,095.095 INFO    ] No camera update needed
[2026-06-22 17:05:28,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:05:28,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:05:28,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:05:28,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:05:30,155.155 INFO    ] ================================================
[2026-06-22 17:05:30,171.171 INFO    ] Launching Daemon at Mon Jun 22 17:05:30 IST 2026
[2026-06-22 17:05:30,182.182 INFO    ] ================================================
[2026-06-22 17:05:30,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:05:30
[2026-06-22 17:05:31,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:05:31,604.604 INFO    ] Initializing speech engine...
[2026-06-22 17:05:31,612.612 INFO    ] 2026-06-22 17:05:31
[2026-06-22 17:05:31,881.881 INFO    ] 2026-06-22 17:05:31
[2026-06-22 17:05:31,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:05:32,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:05:32,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:05:32,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:05:32,310.310 INFO    ] time= 22/06/2026 17:05:32
[2026-06-22 17:05:32,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:05:32,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:05:32,478.478 INFO    ] No existing commands found in stream
[2026-06-22 17:05:37,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:05:37,502.502 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-22 17:05:41,249.249 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:05:41,252.252 INFO    ] Checking for system updates...
[2026-06-22 17:05:41,289.289 INFO    ] 200
[2026-06-22 17:05:41,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:05:41,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:05:41,370.370 INFO    ] No update needed
[2026-06-22 17:05:41,373.373 INFO    ] Checking for camera pi updates...
[2026-06-22 17:05:41,412.412 INFO    ] 200
[2026-06-22 17:05:41,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:05:41,468.468 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:05:41,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:05:41,560.560 INFO    ] No camera update needed
[2026-06-22 17:05:41,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:05:41,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:05:41,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:05:41,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:05:43,620.620 INFO    ] ================================================
[2026-06-22 17:05:43,637.637 INFO    ] Launching Daemon at Mon Jun 22 17:05:43 IST 2026
[2026-06-22 17:05:43,648.648 INFO    ] ================================================
[2026-06-22 17:05:44,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:05:44
[2026-06-22 17:05:44,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:05:45,020.020 INFO    ] Initializing speech engine...
[2026-06-22 17:05:45,027.027 INFO    ] 2026-06-22 17:05:45
[2026-06-22 17:05:45,275.275 INFO    ] 2026-06-22 17:05:45
[2026-06-22 17:05:45,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:05:45,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:05:45,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:05:45,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:05:45,770.770 INFO    ] time= 22/06/2026 17:05:45
[2026-06-22 17:05:45,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:05:45,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:05:45,991.991 INFO    ] No existing commands found in stream
[2026-06-22 17:05:51,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:05:51,015.015 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-22 17:05:53,512.512 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:05:53,515.515 INFO    ] Checking for system updates...
[2026-06-22 17:05:53,552.552 INFO    ] 200
[2026-06-22 17:05:53,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:05:53,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:05:53,609.609 INFO    ] No update needed
[2026-06-22 17:05:53,612.612 INFO    ] Checking for camera pi updates...
[2026-06-22 17:05:53,645.645 INFO    ] 200
[2026-06-22 17:05:53,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:05:53,688.688 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:05:53,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:05:53,769.769 INFO    ] No camera update needed
[2026-06-22 17:05:53,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:05:53,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:05:53,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:05:53,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:05:55,826.826 INFO    ] ================================================
[2026-06-22 17:05:55,842.842 INFO    ] Launching Daemon at Mon Jun 22 17:05:55 IST 2026
[2026-06-22 17:05:55,854.854 INFO    ] ================================================
[2026-06-22 17:05:56,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:05:56
[2026-06-22 17:05:56,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:05:57,206.206 INFO    ] Initializing speech engine...
[2026-06-22 17:05:57,212.212 INFO    ] 2026-06-22 17:05:57
[2026-06-22 17:05:57,513.513 INFO    ] 2026-06-22 17:05:57
[2026-06-22 17:05:57,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:05:57,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:05:57,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:05:58,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:05:58,015.015 INFO    ] time= 22/06/2026 17:05:58
[2026-06-22 17:05:58,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:05:58,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:05:58,190.190 INFO    ] No existing commands found in stream
[2026-06-22 17:06:03,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:06:03,204.204 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-22 17:06:06,348.348 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:06:06,351.351 INFO    ] Checking for system updates...
[2026-06-22 17:06:06,388.388 INFO    ] 200
[2026-06-22 17:06:06,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:06:06,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:06:06,448.448 INFO    ] No update needed
[2026-06-22 17:06:06,451.451 INFO    ] Checking for camera pi updates...
[2026-06-22 17:06:06,501.501 INFO    ] 200
[2026-06-22 17:06:06,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:06:06,546.546 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:06:06,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:06:06,638.638 INFO    ] No camera update needed
[2026-06-22 17:06:06,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:06:06,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:06:06,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:06:06,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:06:08,697.697 INFO    ] ================================================
[2026-06-22 17:06:08,713.713 INFO    ] Launching Daemon at Mon Jun 22 17:06:08 IST 2026
[2026-06-22 17:06:08,725.725 INFO    ] ================================================
[2026-06-22 17:06:09,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:06:09
[2026-06-22 17:06:09,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:06:10,142.142 INFO    ] Initializing speech engine...
[2026-06-22 17:06:10,148.148 INFO    ] 2026-06-22 17:06:10
[2026-06-22 17:06:10,445.445 INFO    ] 2026-06-22 17:06:10
[2026-06-22 17:06:10,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:06:10,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:06:10,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:06:10,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:06:10,841.841 INFO    ] time= 22/06/2026 17:06:10
[2026-06-22 17:06:10,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:06:10,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:06:10,943.943 INFO    ] No existing commands found in stream
[2026-06-22 17:06:15,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:06:15,970.970 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-22 17:06:18,754.754 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:06:18,757.757 INFO    ] Checking for system updates...
[2026-06-22 17:06:18,793.793 INFO    ] 200
[2026-06-22 17:06:18,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:06:18,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:06:18,858.858 INFO    ] No update needed
[2026-06-22 17:06:18,861.861 INFO    ] Checking for camera pi updates...
[2026-06-22 17:06:18,894.894 INFO    ] 200
[2026-06-22 17:06:18,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:06:18,937.937 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:06:19,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:06:19,025.025 INFO    ] No camera update needed
[2026-06-22 17:06:19,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:06:19,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:06:19,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:06:19,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:06:21,082.082 INFO    ] ================================================
[2026-06-22 17:06:21,097.097 INFO    ] Launching Daemon at Mon Jun 22 17:06:21 IST 2026
[2026-06-22 17:06:21,109.109 INFO    ] ================================================
[2026-06-22 17:06:21,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:06:21
[2026-06-22 17:06:22,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:06:22,445.445 INFO    ] Initializing speech engine...
[2026-06-22 17:06:22,453.453 INFO    ] 2026-06-22 17:06:22
[2026-06-22 17:06:22,704.704 INFO    ] 2026-06-22 17:06:22
[2026-06-22 17:06:22,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:06:22,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:06:23,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:06:23,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:06:23,191.191 INFO    ] time= 22/06/2026 17:06:23
[2026-06-22 17:06:23,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:06:23,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:06:23,378.378 INFO    ] No existing commands found in stream
[2026-06-22 17:06:28,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:06:28,411.411 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-22 17:06:31,760.760 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:06:31,763.763 INFO    ] Checking for system updates...
[2026-06-22 17:06:31,800.800 INFO    ] 200
[2026-06-22 17:06:31,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:06:31,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:06:31,872.872 INFO    ] No update needed
[2026-06-22 17:06:31,874.874 INFO    ] Checking for camera pi updates...
[2026-06-22 17:06:31,911.911 INFO    ] 200
[2026-06-22 17:06:31,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:06:31,961.961 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:06:32,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:06:32,024.024 INFO    ] No camera update needed
[2026-06-22 17:06:32,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:06:32,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:06:32,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:06:32,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:06:34,084.084 INFO    ] ================================================
[2026-06-22 17:06:34,100.100 INFO    ] Launching Daemon at Mon Jun 22 17:06:34 IST 2026
[2026-06-22 17:06:34,111.111 INFO    ] ================================================
[2026-06-22 17:06:34,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:06:34
[2026-06-22 17:06:35,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:06:35,446.446 INFO    ] Initializing speech engine...
[2026-06-22 17:06:35,471.471 INFO    ] 2026-06-22 17:06:35
[2026-06-22 17:06:35,741.741 INFO    ] 2026-06-22 17:06:35
[2026-06-22 17:06:35,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:06:36,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:06:36,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:06:36,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:06:36,234.234 INFO    ] time= 22/06/2026 17:06:36
[2026-06-22 17:06:36,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:06:36,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:06:36,435.435 INFO    ] No existing commands found in stream
[2026-06-22 17:06:41,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:06:41,450.450 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-22 17:06:45,638.638 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:06:45,641.641 INFO    ] Checking for system updates...
[2026-06-22 17:06:45,677.677 INFO    ] 200
[2026-06-22 17:06:45,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:06:45,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:06:45,734.734 INFO    ] No update needed
[2026-06-22 17:06:45,737.737 INFO    ] Checking for camera pi updates...
[2026-06-22 17:06:45,771.771 INFO    ] 200
[2026-06-22 17:06:45,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:06:45,815.815 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:06:45,913.913 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:06:45,916.916 INFO    ] No camera update needed
[2026-06-22 17:06:45,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:06:45,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:06:45,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:06:45,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:06:47,971.971 INFO    ] ================================================
[2026-06-22 17:06:47,987.987 INFO    ] Launching Daemon at Mon Jun 22 17:06:47 IST 2026
[2026-06-22 17:06:48,998.998 INFO    ] ================================================
[2026-06-22 17:06:48,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:06:48
[2026-06-22 17:06:49,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:06:49,524.524 INFO    ] Initializing speech engine...
[2026-06-22 17:06:49,535.535 INFO    ] 2026-06-22 17:06:49
[2026-06-22 17:06:49,808.808 INFO    ] 2026-06-22 17:06:49
[2026-06-22 17:06:49,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:06:50,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:06:50,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:06:50,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:06:50,369.369 INFO    ] time= 22/06/2026 17:06:50
[2026-06-22 17:06:50,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:06:50,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:06:50,514.514 INFO    ] No existing commands found in stream
[2026-06-22 17:06:55,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:06:55,539.539 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-22 17:06:58,731.731 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:06:58,734.734 INFO    ] Checking for system updates...
[2026-06-22 17:06:58,774.774 INFO    ] 200
[2026-06-22 17:06:58,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:06:58,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:06:58,839.839 INFO    ] No update needed
[2026-06-22 17:06:58,842.842 INFO    ] Checking for camera pi updates...
[2026-06-22 17:06:58,879.879 INFO    ] 200
[2026-06-22 17:06:58,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:06:58,930.930 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:06:59,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:06:59,108.108 INFO    ] No camera update needed
[2026-06-22 17:06:59,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:06:59,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:06:59,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:06:59,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:07:01,168.168 INFO    ] ================================================
[2026-06-22 17:07:01,183.183 INFO    ] Launching Daemon at Mon Jun 22 17:07:01 IST 2026
[2026-06-22 17:07:01,195.195 INFO    ] ================================================
[2026-06-22 17:07:01,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:07:01
[2026-06-22 17:07:02,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:07:02,944.944 INFO    ] Initializing speech engine...
[2026-06-22 17:07:02,949.949 INFO    ] 2026-06-22 17:07:02
[2026-06-22 17:07:03,245.245 INFO    ] 2026-06-22 17:07:03
[2026-06-22 17:07:03,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:07:03,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:07:03,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:07:03,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:07:03,618.618 INFO    ] time= 22/06/2026 17:07:03
[2026-06-22 17:07:03,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:07:03,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:07:03,813.813 INFO    ] No existing commands found in stream
[2026-06-22 17:07:08,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:07:08,826.826 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-22 17:07:11,884.884 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:07:11,887.887 INFO    ] Checking for system updates...
[2026-06-22 17:07:11,927.927 INFO    ] 200
[2026-06-22 17:07:11,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:07:11,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:07:11,985.985 INFO    ] No update needed
[2026-06-22 17:07:11,987.987 INFO    ] Checking for camera pi updates...
[2026-06-22 17:07:12,021.021 INFO    ] 200
[2026-06-22 17:07:12,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:07:12,064.064 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:07:12,139.139 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:07:12,142.142 INFO    ] No camera update needed
[2026-06-22 17:07:12,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:07:12,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:07:12,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:07:12,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:07:14,197.197 INFO    ] ================================================
[2026-06-22 17:07:14,213.213 INFO    ] Launching Daemon at Mon Jun 22 17:07:14 IST 2026
[2026-06-22 17:07:14,224.224 INFO    ] ================================================
[2026-06-22 17:07:14,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:07:14
[2026-06-22 17:07:15,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:07:15,754.754 INFO    ] Initializing speech engine...
[2026-06-22 17:07:15,765.765 INFO    ] 2026-06-22 17:07:15
[2026-06-22 17:07:16,055.055 INFO    ] 2026-06-22 17:07:16
[2026-06-22 17:07:16,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:07:16,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:07:16,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:07:16,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:07:16,596.596 INFO    ] time= 22/06/2026 17:07:16
[2026-06-22 17:07:16,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:07:16,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:07:16,752.752 INFO    ] No existing commands found in stream
[2026-06-22 17:07:21,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:07:21,791.791 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-22 17:07:24,244.244 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:07:24,247.247 INFO    ] Checking for system updates...
[2026-06-22 17:07:24,283.283 INFO    ] 200
[2026-06-22 17:07:24,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:07:24,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:07:24,342.342 INFO    ] No update needed
[2026-06-22 17:07:24,345.345 INFO    ] Checking for camera pi updates...
[2026-06-22 17:07:24,386.386 INFO    ] 200
[2026-06-22 17:07:24,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:07:24,429.429 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:07:24,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:07:24,514.514 INFO    ] No camera update needed
[2026-06-22 17:07:24,516.516 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:07:24,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:07:24,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:07:24,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:07:26,570.570 INFO    ] ================================================
[2026-06-22 17:07:26,585.585 INFO    ] Launching Daemon at Mon Jun 22 17:07:26 IST 2026
[2026-06-22 17:07:26,596.596 INFO    ] ================================================
[2026-06-22 17:07:27,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:07:27
[2026-06-22 17:07:27,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:07:28,036.036 INFO    ] Initializing speech engine...
[2026-06-22 17:07:28,044.044 INFO    ] 2026-06-22 17:07:28
[2026-06-22 17:07:28,295.295 INFO    ] 2026-06-22 17:07:28
[2026-06-22 17:07:28,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:07:28,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:07:28,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:07:28,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:07:28,709.709 INFO    ] time= 22/06/2026 17:07:28
[2026-06-22 17:07:28,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:07:28,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:07:28,792.792 INFO    ] No existing commands found in stream
[2026-06-22 17:07:33,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:07:33,813.813 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-22 17:07:35,609.609 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:07:35,612.612 INFO    ] Checking for system updates...
[2026-06-22 17:07:35,647.647 INFO    ] 200
[2026-06-22 17:07:35,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:07:35,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:07:35,712.712 INFO    ] No update needed
[2026-06-22 17:07:35,715.715 INFO    ] Checking for camera pi updates...
[2026-06-22 17:07:35,748.748 INFO    ] 200
[2026-06-22 17:07:35,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:07:35,790.790 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:07:35,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:07:35,877.877 INFO    ] No camera update needed
[2026-06-22 17:07:35,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:07:35,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:07:35,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:07:35,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:07:37,935.935 INFO    ] ================================================
[2026-06-22 17:07:37,951.951 INFO    ] Launching Daemon at Mon Jun 22 17:07:37 IST 2026
[2026-06-22 17:07:37,962.962 INFO    ] ================================================
[2026-06-22 17:07:38,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:07:38
[2026-06-22 17:07:39,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:07:39,350.350 INFO    ] Initializing speech engine...
[2026-06-22 17:07:39,362.362 INFO    ] 2026-06-22 17:07:39
[2026-06-22 17:07:39,636.636 INFO    ] 2026-06-22 17:07:39
[2026-06-22 17:07:39,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:07:39,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:07:39,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:07:40,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:07:40,112.112 INFO    ] time= 22/06/2026 17:07:40
[2026-06-22 17:07:40,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:07:40,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:07:40,343.343 INFO    ] No existing commands found in stream
[2026-06-22 17:07:45,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:07:45,360.360 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-22 17:07:50,010.010 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:07:50,013.013 INFO    ] Checking for system updates...
[2026-06-22 17:07:50,051.051 INFO    ] 200
[2026-06-22 17:07:50,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:07:50,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:07:50,116.116 INFO    ] No update needed
[2026-06-22 17:07:50,117.117 INFO    ] Checking for camera pi updates...
[2026-06-22 17:07:50,137.137 INFO    ] 200
[2026-06-22 17:07:50,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:07:50,162.162 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:07:50,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:07:50,253.253 INFO    ] No camera update needed
[2026-06-22 17:07:50,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:07:50,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:07:50,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:07:50,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:07:52,313.313 INFO    ] ================================================
[2026-06-22 17:07:52,329.329 INFO    ] Launching Daemon at Mon Jun 22 17:07:52 IST 2026
[2026-06-22 17:07:52,340.340 INFO    ] ================================================
[2026-06-22 17:07:53,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:07:52
[2026-06-22 17:07:53,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:07:53,875.875 INFO    ] Initializing speech engine...
[2026-06-22 17:07:53,889.889 INFO    ] 2026-06-22 17:07:53
[2026-06-22 17:07:54,158.158 INFO    ] 2026-06-22 17:07:54
[2026-06-22 17:07:54,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:07:54,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:07:54,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:07:54,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:07:54,668.668 INFO    ] time= 22/06/2026 17:07:54
[2026-06-22 17:07:54,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:07:54,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:07:54,871.871 INFO    ] No existing commands found in stream
[2026-06-22 17:07:59,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:07:59,897.897 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-22 17:08:03,381.381 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:08:03,385.385 INFO    ] Checking for system updates...
[2026-06-22 17:08:03,422.422 INFO    ] 200
[2026-06-22 17:08:03,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:08:03,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:08:03,483.483 INFO    ] No update needed
[2026-06-22 17:08:03,486.486 INFO    ] Checking for camera pi updates...
[2026-06-22 17:08:03,520.520 INFO    ] 200
[2026-06-22 17:08:03,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:08:03,565.565 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:08:03,657.657 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:08:03,659.659 INFO    ] No camera update needed
[2026-06-22 17:08:03,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:08:03,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:08:03,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:08:03,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:08:05,718.718 INFO    ] ================================================
[2026-06-22 17:08:05,734.734 INFO    ] Launching Daemon at Mon Jun 22 17:08:05 IST 2026
[2026-06-22 17:08:05,745.745 INFO    ] ================================================
[2026-06-22 17:08:06,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:08:06
[2026-06-22 17:08:06,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:08:07,231.231 INFO    ] Initializing speech engine...
[2026-06-22 17:08:07,240.240 INFO    ] 2026-06-22 17:08:07
[2026-06-22 17:08:07,531.531 INFO    ] 2026-06-22 17:08:07
[2026-06-22 17:08:07,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:08:07,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:08:07,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:08:07,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:08:07,911.911 INFO    ] time= 22/06/2026 17:08:07
[2026-06-22 17:08:07,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:08:07,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:08:08,037.037 INFO    ] No existing commands found in stream
[2026-06-22 17:08:13,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:08:13,076.076 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-22 17:08:15,972.972 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:08:15,974.974 INFO    ] Checking for system updates...
[2026-06-22 17:08:16,014.014 INFO    ] 200
[2026-06-22 17:08:16,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:08:16,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:08:16,071.071 INFO    ] No update needed
[2026-06-22 17:08:16,074.074 INFO    ] Checking for camera pi updates...
[2026-06-22 17:08:16,108.108 INFO    ] 200
[2026-06-22 17:08:16,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:08:16,150.150 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:08:16,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:08:16,237.237 INFO    ] No camera update needed
[2026-06-22 17:08:16,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:08:16,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:08:16,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:08:16,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:08:18,302.302 INFO    ] ================================================
[2026-06-22 17:08:18,318.318 INFO    ] Launching Daemon at Mon Jun 22 17:08:18 IST 2026
[2026-06-22 17:08:18,329.329 INFO    ] ================================================
[2026-06-22 17:08:18,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:08:18
[2026-06-22 17:08:19,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:08:20,008.008 INFO    ] Initializing speech engine...
[2026-06-22 17:08:20,017.017 INFO    ] 2026-06-22 17:08:20
[2026-06-22 17:08:20,307.307 INFO    ] 2026-06-22 17:08:20
[2026-06-22 17:08:20,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:08:20,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:08:20,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:08:20,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:08:20,690.690 INFO    ] time= 22/06/2026 17:08:20
[2026-06-22 17:08:20,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:08:20,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:08:20,875.875 INFO    ] No existing commands found in stream
[2026-06-22 17:08:25,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:08:25,902.902 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-22 17:08:28,351.351 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:08:28,354.354 INFO    ] Checking for system updates...
[2026-06-22 17:08:28,390.390 INFO    ] 200
[2026-06-22 17:08:28,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:08:28,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:08:28,448.448 INFO    ] No update needed
[2026-06-22 17:08:28,451.451 INFO    ] Checking for camera pi updates...
[2026-06-22 17:08:28,488.488 INFO    ] 200
[2026-06-22 17:08:28,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:08:28,549.549 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:08:28,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:08:28,651.651 INFO    ] No camera update needed
[2026-06-22 17:08:28,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:08:28,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:08:28,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:08:28,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:08:30,708.708 INFO    ] ================================================
[2026-06-22 17:08:30,724.724 INFO    ] Launching Daemon at Mon Jun 22 17:08:30 IST 2026
[2026-06-22 17:08:30,735.735 INFO    ] ================================================
[2026-06-22 17:08:31,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:08:31
[2026-06-22 17:08:31,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:08:32,249.249 INFO    ] Initializing speech engine...
[2026-06-22 17:08:32,262.262 INFO    ] 2026-06-22 17:08:32
[2026-06-22 17:08:32,522.522 INFO    ] 2026-06-22 17:08:32
[2026-06-22 17:08:32,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:08:32,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:08:32,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:08:32,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:08:32,906.906 INFO    ] time= 22/06/2026 17:08:32
[2026-06-22 17:08:32,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:08:32,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:08:33,083.083 INFO    ] No existing commands found in stream
[2026-06-22 17:08:38,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:08:38,110.110 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-22 17:08:39,642.642 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:08:39,644.644 INFO    ] Checking for system updates...
[2026-06-22 17:08:39,680.680 INFO    ] 200
[2026-06-22 17:08:39,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:08:39,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:08:39,737.737 INFO    ] No update needed
[2026-06-22 17:08:39,740.740 INFO    ] Checking for camera pi updates...
[2026-06-22 17:08:39,777.777 INFO    ] 200
[2026-06-22 17:08:39,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:08:39,819.819 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:08:39,899.899 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:08:39,901.901 INFO    ] No camera update needed
[2026-06-22 17:08:39,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:08:39,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:08:39,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:08:39,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:08:41,957.957 INFO    ] ================================================
[2026-06-22 17:08:41,973.973 INFO    ] Launching Daemon at Mon Jun 22 17:08:41 IST 2026
[2026-06-22 17:08:41,984.984 INFO    ] ================================================
[2026-06-22 17:08:42,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:08:42
[2026-06-22 17:08:43,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:08:43,396.396 INFO    ] Initializing speech engine...
[2026-06-22 17:08:43,405.405 INFO    ] 2026-06-22 17:08:43
[2026-06-22 17:08:43,697.697 INFO    ] 2026-06-22 17:08:43
[2026-06-22 17:08:43,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:08:43,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:08:43,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:08:44,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:08:44,113.113 INFO    ] time= 22/06/2026 17:08:44
[2026-06-22 17:08:44,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:08:44,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:08:44,201.201 INFO    ] No existing commands found in stream
[2026-06-22 17:08:49,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:08:49,217.217 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-22 17:08:52,820.820 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:08:52,822.822 INFO    ] Checking for system updates...
[2026-06-22 17:08:52,858.858 INFO    ] 200
[2026-06-22 17:08:52,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:08:52,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:08:52,915.915 INFO    ] No update needed
[2026-06-22 17:08:52,918.918 INFO    ] Checking for camera pi updates...
[2026-06-22 17:08:52,951.951 INFO    ] 200
[2026-06-22 17:08:52,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:08:52,994.994 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:08:53,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:08:53,075.075 INFO    ] No camera update needed
[2026-06-22 17:08:53,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:08:53,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:08:53,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:08:53,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:08:55,132.132 INFO    ] ================================================
[2026-06-22 17:08:55,148.148 INFO    ] Launching Daemon at Mon Jun 22 17:08:55 IST 2026
[2026-06-22 17:08:55,159.159 INFO    ] ================================================
[2026-06-22 17:08:55,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:08:55
[2026-06-22 17:08:56,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:08:56,670.670 INFO    ] Initializing speech engine...
[2026-06-22 17:08:56,678.678 INFO    ] 2026-06-22 17:08:56
[2026-06-22 17:08:56,966.966 INFO    ] 2026-06-22 17:08:56
[2026-06-22 17:08:57,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:08:57,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:08:57,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:08:57,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:08:57,466.466 INFO    ] time= 22/06/2026 17:08:57
[2026-06-22 17:08:57,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:08:57,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:08:57,688.688 INFO    ] No existing commands found in stream
[2026-06-22 17:09:02,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:09:02,707.707 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-22 17:09:06,623.623 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:09:06,626.626 INFO    ] Checking for system updates...
[2026-06-22 17:09:06,667.667 INFO    ] 200
[2026-06-22 17:09:06,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:09:06,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:09:06,732.732 INFO    ] No update needed
[2026-06-22 17:09:06,734.734 INFO    ] Checking for camera pi updates...
[2026-06-22 17:09:06,769.769 INFO    ] 200
[2026-06-22 17:09:06,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:09:06,814.814 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:09:06,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:09:06,921.921 INFO    ] No camera update needed
[2026-06-22 17:09:06,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:09:06,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:09:06,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:09:06,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:09:08,979.979 INFO    ] ================================================
[2026-06-22 17:09:09,995.995 INFO    ] Launching Daemon at Mon Jun 22 17:09:08 IST 2026
[2026-06-22 17:09:09,006.006 INFO    ] ================================================
[2026-06-22 17:09:09,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:09:09
[2026-06-22 17:09:10,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:09:10,606.606 INFO    ] Initializing speech engine...
[2026-06-22 17:09:10,614.614 INFO    ] 2026-06-22 17:09:10
[2026-06-22 17:09:10,884.884 INFO    ] 2026-06-22 17:09:10
[2026-06-22 17:09:10,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:09:11,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:09:11,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:09:11,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:09:11,371.371 INFO    ] time= 22/06/2026 17:09:11
[2026-06-22 17:09:11,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:09:11,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:09:11,593.593 INFO    ] No existing commands found in stream
[2026-06-22 17:09:16,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:09:16,612.612 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-22 17:09:20,829.829 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:09:20,830.830 INFO    ] Checking for system updates...
[2026-06-22 17:09:20,851.851 INFO    ] 200
[2026-06-22 17:09:20,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:09:20,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:09:20,887.887 INFO    ] No update needed
[2026-06-22 17:09:20,889.889 INFO    ] Checking for camera pi updates...
[2026-06-22 17:09:20,908.908 INFO    ] 200
[2026-06-22 17:09:20,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:09:20,949.949 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:09:21,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:09:21,031.031 INFO    ] No camera update needed
[2026-06-22 17:09:21,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:09:21,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:09:21,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:09:21,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:09:23,089.089 INFO    ] ================================================
[2026-06-22 17:09:23,105.105 INFO    ] Launching Daemon at Mon Jun 22 17:09:23 IST 2026
[2026-06-22 17:09:23,117.117 INFO    ] ================================================
[2026-06-22 17:09:23,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:09:23
[2026-06-22 17:09:24,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:09:24,616.616 INFO    ] Initializing speech engine...
[2026-06-22 17:09:24,625.625 INFO    ] 2026-06-22 17:09:24
[2026-06-22 17:09:24,909.909 INFO    ] 2026-06-22 17:09:24
[2026-06-22 17:09:24,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:09:25,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:09:25,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:09:25,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:09:25,443.443 INFO    ] time= 22/06/2026 17:09:25
[2026-06-22 17:09:25,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:09:25,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:09:25,601.601 INFO    ] No existing commands found in stream
[2026-06-22 17:09:30,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:09:30,637.637 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-22 17:09:32,154.154 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:09:32,157.157 INFO    ] Checking for system updates...
[2026-06-22 17:09:32,201.201 INFO    ] 200
[2026-06-22 17:09:32,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:09:32,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:09:32,275.275 INFO    ] No update needed
[2026-06-22 17:09:32,278.278 INFO    ] Checking for camera pi updates...
[2026-06-22 17:09:32,313.313 INFO    ] 200
[2026-06-22 17:09:32,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:09:32,357.357 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:09:32,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:09:32,418.418 INFO    ] No camera update needed
[2026-06-22 17:09:32,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:09:32,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:09:32,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:09:32,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:09:34,479.479 INFO    ] ================================================
[2026-06-22 17:09:34,494.494 INFO    ] Launching Daemon at Mon Jun 22 17:09:34 IST 2026
[2026-06-22 17:09:34,505.505 INFO    ] ================================================
[2026-06-22 17:09:35,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:09:35
[2026-06-22 17:09:35,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:09:35,848.848 INFO    ] Initializing speech engine...
[2026-06-22 17:09:35,855.855 INFO    ] 2026-06-22 17:09:35
[2026-06-22 17:09:36,107.107 INFO    ] 2026-06-22 17:09:36
[2026-06-22 17:09:36,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:09:36,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:09:36,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:09:36,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:09:36,585.585 INFO    ] time= 22/06/2026 17:09:36
[2026-06-22 17:09:36,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:09:36,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:09:36,810.810 INFO    ] No existing commands found in stream
[2026-06-22 17:09:41,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:09:41,838.838 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-22 17:09:42,541.541 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:09:42,544.544 INFO    ] Checking for system updates...
[2026-06-22 17:09:42,580.580 INFO    ] 200
[2026-06-22 17:09:42,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:09:42,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:09:42,643.643 INFO    ] No update needed
[2026-06-22 17:09:42,646.646 INFO    ] Checking for camera pi updates...
[2026-06-22 17:09:42,681.681 INFO    ] 200
[2026-06-22 17:09:42,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:09:42,727.727 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:09:42,782.782 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:09:42,785.785 INFO    ] No camera update needed
[2026-06-22 17:09:42,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:09:42,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:09:42,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:09:42,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:09:44,844.844 INFO    ] ================================================
[2026-06-22 17:09:44,859.859 INFO    ] Launching Daemon at Mon Jun 22 17:09:44 IST 2026
[2026-06-22 17:09:44,869.869 INFO    ] ================================================
[2026-06-22 17:09:45,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:09:45
[2026-06-22 17:09:46,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:09:46,428.428 INFO    ] Initializing speech engine...
[2026-06-22 17:09:46,448.448 INFO    ] 2026-06-22 17:09:46
[2026-06-22 17:09:46,719.719 INFO    ] 2026-06-22 17:09:46
[2026-06-22 17:09:46,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:09:47,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:09:47,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:09:47,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:09:47,205.205 INFO    ] time= 22/06/2026 17:09:47
[2026-06-22 17:09:47,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:09:47,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:09:47,467.467 INFO    ] No existing commands found in stream
[2026-06-22 17:09:52,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:09:52,501.501 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-22 17:09:56,160.160 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:09:56,162.162 INFO    ] Checking for system updates...
[2026-06-22 17:09:56,182.182 INFO    ] 200
[2026-06-22 17:09:56,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:09:56,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:09:56,218.218 INFO    ] No update needed
[2026-06-22 17:09:56,220.220 INFO    ] Checking for camera pi updates...
[2026-06-22 17:09:56,247.247 INFO    ] 200
[2026-06-22 17:09:56,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:09:56,291.291 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:09:56,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:09:56,357.357 INFO    ] No camera update needed
[2026-06-22 17:09:56,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:09:56,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:09:56,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:09:56,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:09:58,415.415 INFO    ] ================================================
[2026-06-22 17:09:58,430.430 INFO    ] Launching Daemon at Mon Jun 22 17:09:58 IST 2026
[2026-06-22 17:09:58,441.441 INFO    ] ================================================
[2026-06-22 17:09:59,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:09:59
[2026-06-22 17:09:59,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:09:59,933.933 INFO    ] Initializing speech engine...
[2026-06-22 17:09:59,941.941 INFO    ] 2026-06-22 17:09:59
[2026-06-22 17:10:00,225.225 INFO    ] 2026-06-22 17:10:00
[2026-06-22 17:10:00,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:10:00,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:10:00,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:10:00,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:10:00,690.690 INFO    ] time= 22/06/2026 17:10:00
[2026-06-22 17:10:00,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:10:00,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:10:00,894.894 INFO    ] No existing commands found in stream
[2026-06-22 17:10:05,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:10:05,923.923 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-22 17:10:08,604.604 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:10:08,607.607 INFO    ] Checking for system updates...
[2026-06-22 17:10:08,643.643 INFO    ] 200
[2026-06-22 17:10:08,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:10:08,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:10:08,704.704 INFO    ] No update needed
[2026-06-22 17:10:08,707.707 INFO    ] Checking for camera pi updates...
[2026-06-22 17:10:08,742.742 INFO    ] 200
[2026-06-22 17:10:08,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:10:08,791.791 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:10:08,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:10:08,894.894 INFO    ] No camera update needed
[2026-06-22 17:10:08,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:10:08,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:10:08,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:10:08,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:10:10,952.952 INFO    ] ================================================
[2026-06-22 17:10:10,968.968 INFO    ] Launching Daemon at Mon Jun 22 17:10:10 IST 2026
[2026-06-22 17:10:10,979.979 INFO    ] ================================================
[2026-06-22 17:10:11,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:10:11
[2026-06-22 17:10:12,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:10:12,508.508 INFO    ] Initializing speech engine...
[2026-06-22 17:10:12,521.521 INFO    ] 2026-06-22 17:10:12
[2026-06-22 17:10:12,809.809 INFO    ] 2026-06-22 17:10:12
[2026-06-22 17:10:12,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:10:13,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:10:13,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:10:13,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:10:13,271.271 INFO    ] time= 22/06/2026 17:10:13
[2026-06-22 17:10:13,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:10:13,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:10:13,516.516 INFO    ] No existing commands found in stream
[2026-06-22 17:10:18,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:10:18,539.539 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-22 17:10:22,145.145 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:10:22,147.147 INFO    ] Checking for system updates...
[2026-06-22 17:10:22,171.171 INFO    ] 200
[2026-06-22 17:10:22,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:10:22,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:10:22,231.231 INFO    ] No update needed
[2026-06-22 17:10:22,233.233 INFO    ] Checking for camera pi updates...
[2026-06-22 17:10:22,268.268 INFO    ] 200
[2026-06-22 17:10:22,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:10:22,312.312 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:10:22,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:10:22,399.399 INFO    ] No camera update needed
[2026-06-22 17:10:22,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:10:22,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:10:22,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:10:22,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:10:24,459.459 INFO    ] ================================================
[2026-06-22 17:10:24,475.475 INFO    ] Launching Daemon at Mon Jun 22 17:10:24 IST 2026
[2026-06-22 17:10:24,486.486 INFO    ] ================================================
[2026-06-22 17:10:25,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:10:25
[2026-06-22 17:10:25,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:10:25,820.820 INFO    ] Initializing speech engine...
[2026-06-22 17:10:25,829.829 INFO    ] 2026-06-22 17:10:25
[2026-06-22 17:10:26,126.126 INFO    ] 2026-06-22 17:10:26
[2026-06-22 17:10:26,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:10:26,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:10:26,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:10:26,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:10:26,625.625 INFO    ] time= 22/06/2026 17:10:26
[2026-06-22 17:10:26,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:10:26,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:10:26,897.897 INFO    ] No existing commands found in stream
[2026-06-22 17:10:31,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:10:31,917.917 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-22 17:10:34,366.366 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:10:34,369.369 INFO    ] Checking for system updates...
[2026-06-22 17:10:34,405.405 INFO    ] 200
[2026-06-22 17:10:34,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:10:34,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:10:34,469.469 INFO    ] No update needed
[2026-06-22 17:10:34,472.472 INFO    ] Checking for camera pi updates...
[2026-06-22 17:10:34,506.506 INFO    ] 200
[2026-06-22 17:10:34,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:10:34,549.549 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:10:34,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:10:34,647.647 INFO    ] No camera update needed
[2026-06-22 17:10:34,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:10:34,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:10:34,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:10:34,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:10:36,703.703 INFO    ] ================================================
[2026-06-22 17:10:36,718.718 INFO    ] Launching Daemon at Mon Jun 22 17:10:36 IST 2026
[2026-06-22 17:10:36,729.729 INFO    ] ================================================
[2026-06-22 17:10:37,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:10:37
[2026-06-22 17:10:37,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:10:38,113.113 INFO    ] Initializing speech engine...
[2026-06-22 17:10:38,118.118 INFO    ] 2026-06-22 17:10:38
[2026-06-22 17:10:38,381.381 INFO    ] 2026-06-22 17:10:38
[2026-06-22 17:10:38,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:10:38,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:10:38,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:10:38,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:10:38,852.852 INFO    ] time= 22/06/2026 17:10:38
[2026-06-22 17:10:38,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:10:38,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:10:39,077.077 INFO    ] No existing commands found in stream
[2026-06-22 17:10:44,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:10:44,098.098 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-22 17:10:47,224.224 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:10:47,226.226 INFO    ] Checking for system updates...
[2026-06-22 17:10:47,263.263 INFO    ] 200
[2026-06-22 17:10:47,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:10:47,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:10:47,325.325 INFO    ] No update needed
[2026-06-22 17:10:47,327.327 INFO    ] Checking for camera pi updates...
[2026-06-22 17:10:47,362.362 INFO    ] 200
[2026-06-22 17:10:47,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:10:47,405.405 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:10:47,489.489 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:10:47,492.492 INFO    ] No camera update needed
[2026-06-22 17:10:47,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:10:47,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:10:47,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:10:47,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:10:49,548.548 INFO    ] ================================================
[2026-06-22 17:10:49,563.563 INFO    ] Launching Daemon at Mon Jun 22 17:10:49 IST 2026
[2026-06-22 17:10:49,575.575 INFO    ] ================================================
[2026-06-22 17:10:50,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:10:50
[2026-06-22 17:10:50,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:10:50,922.922 INFO    ] Initializing speech engine...
[2026-06-22 17:10:50,929.929 INFO    ] 2026-06-22 17:10:50
[2026-06-22 17:10:51,231.231 INFO    ] 2026-06-22 17:10:51
[2026-06-22 17:10:51,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:10:51,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:10:51,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:10:51,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:10:51,653.653 INFO    ] time= 22/06/2026 17:10:51
[2026-06-22 17:10:51,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:10:51,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:10:51,740.740 INFO    ] No existing commands found in stream
[2026-06-22 17:10:56,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:10:56,755.755 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-22 17:11:00,005.005 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:11:00,008.008 INFO    ] Checking for system updates...
[2026-06-22 17:11:00,045.045 INFO    ] 200
[2026-06-22 17:11:00,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:11:00,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:11:00,105.105 INFO    ] No update needed
[2026-06-22 17:11:00,108.108 INFO    ] Checking for camera pi updates...
[2026-06-22 17:11:00,142.142 INFO    ] 200
[2026-06-22 17:11:00,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:11:00,185.185 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:11:00,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:11:00,267.267 INFO    ] No camera update needed
[2026-06-22 17:11:00,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:11:00,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:11:00,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:11:00,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:11:02,328.328 INFO    ] ================================================
[2026-06-22 17:11:02,356.356 INFO    ] Launching Daemon at Mon Jun 22 17:11:02 IST 2026
[2026-06-22 17:11:02,375.375 INFO    ] ================================================
[2026-06-22 17:11:03,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:11:03
[2026-06-22 17:11:03,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:11:03,929.929 INFO    ] Initializing speech engine...
[2026-06-22 17:11:03,945.945 INFO    ] 2026-06-22 17:11:03
[2026-06-22 17:11:04,230.230 INFO    ] 2026-06-22 17:11:04
[2026-06-22 17:11:04,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:11:04,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:11:04,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:11:04,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:11:04,603.603 INFO    ] time= 22/06/2026 17:11:04
[2026-06-22 17:11:04,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:11:04,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:11:04,728.728 INFO    ] No existing commands found in stream
[2026-06-22 17:11:09,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:11:09,743.743 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-22 17:11:10,310.310 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:11:10,313.313 INFO    ] Checking for system updates...
[2026-06-22 17:11:10,350.350 INFO    ] 200
[2026-06-22 17:11:10,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:11:10,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:11:10,409.409 INFO    ] No update needed
[2026-06-22 17:11:10,411.411 INFO    ] Checking for camera pi updates...
[2026-06-22 17:11:10,445.445 INFO    ] 200
[2026-06-22 17:11:10,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:11:10,488.488 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:11:10,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:11:10,668.668 INFO    ] No camera update needed
[2026-06-22 17:11:10,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:11:10,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:11:10,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:11:10,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:11:12,726.726 INFO    ] ================================================
[2026-06-22 17:11:12,741.741 INFO    ] Launching Daemon at Mon Jun 22 17:11:12 IST 2026
[2026-06-22 17:11:12,752.752 INFO    ] ================================================
[2026-06-22 17:11:13,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:11:13
[2026-06-22 17:11:13,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:11:14,102.102 INFO    ] Initializing speech engine...
[2026-06-22 17:11:14,111.111 INFO    ] 2026-06-22 17:11:14
[2026-06-22 17:11:14,405.405 INFO    ] 2026-06-22 17:11:14
[2026-06-22 17:11:14,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:11:14,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:11:14,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:11:14,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:11:14,821.821 INFO    ] time= 22/06/2026 17:11:14
[2026-06-22 17:11:14,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:11:14,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:11:14,985.985 INFO    ] No existing commands found in stream
[2026-06-22 17:11:20,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:11:20,013.013 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-22 17:11:22,006.006 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:11:22,008.008 INFO    ] Checking for system updates...
[2026-06-22 17:11:22,028.028 INFO    ] 200
[2026-06-22 17:11:22,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:11:22,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:11:22,061.061 INFO    ] No update needed
[2026-06-22 17:11:22,063.063 INFO    ] Checking for camera pi updates...
[2026-06-22 17:11:22,084.084 INFO    ] 200
[2026-06-22 17:11:22,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:11:22,114.114 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:11:22,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:11:22,210.210 INFO    ] No camera update needed
[2026-06-22 17:11:22,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:11:22,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:11:22,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:11:22,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:11:24,265.265 INFO    ] ================================================
[2026-06-22 17:11:24,281.281 INFO    ] Launching Daemon at Mon Jun 22 17:11:24 IST 2026
[2026-06-22 17:11:24,292.292 INFO    ] ================================================
[2026-06-22 17:11:24,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:11:24
[2026-06-22 17:11:25,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:11:25,653.653 INFO    ] Initializing speech engine...
[2026-06-22 17:11:25,659.659 INFO    ] 2026-06-22 17:11:25
[2026-06-22 17:11:25,922.922 INFO    ] 2026-06-22 17:11:25
[2026-06-22 17:11:25,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:11:26,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:11:26,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:11:26,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:11:26,384.384 INFO    ] time= 22/06/2026 17:11:26
[2026-06-22 17:11:26,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:11:26,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:11:26,534.534 INFO    ] No existing commands found in stream
[2026-06-22 17:11:31,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:11:31,549.549 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-22 17:11:32,202.202 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:11:32,206.206 INFO    ] Checking for system updates...
[2026-06-22 17:11:32,249.249 INFO    ] 200
[2026-06-22 17:11:32,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:11:32,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:11:32,311.311 INFO    ] No update needed
[2026-06-22 17:11:32,314.314 INFO    ] Checking for camera pi updates...
[2026-06-22 17:11:32,351.351 INFO    ] 200
[2026-06-22 17:11:32,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:11:32,397.397 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:11:32,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:11:32,468.468 INFO    ] No camera update needed
[2026-06-22 17:11:32,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:11:32,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:11:32,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:11:32,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:11:34,527.527 INFO    ] ================================================
[2026-06-22 17:11:34,543.543 INFO    ] Launching Daemon at Mon Jun 22 17:11:34 IST 2026
[2026-06-22 17:11:34,553.553 INFO    ] ================================================
[2026-06-22 17:11:35,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:11:35
[2026-06-22 17:11:35,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:11:35,892.892 INFO    ] Initializing speech engine...
[2026-06-22 17:11:35,898.898 INFO    ] 2026-06-22 17:11:35
[2026-06-22 17:11:36,194.194 INFO    ] 2026-06-22 17:11:36
[2026-06-22 17:11:36,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:11:36,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:11:36,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:11:36,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:11:36,618.618 INFO    ] time= 22/06/2026 17:11:36
[2026-06-22 17:11:36,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:11:36,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:11:36,705.705 INFO    ] No existing commands found in stream
[2026-06-22 17:11:41,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:11:41,723.723 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-22 17:11:46,000.000 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:11:46,001.001 INFO    ] Checking for system updates...
[2026-06-22 17:11:46,028.028 INFO    ] 200
[2026-06-22 17:11:46,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:11:46,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:11:46,095.095 INFO    ] No update needed
[2026-06-22 17:11:46,098.098 INFO    ] Checking for camera pi updates...
[2026-06-22 17:11:46,132.132 INFO    ] 200
[2026-06-22 17:11:46,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:11:46,177.177 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:11:46,274.274 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:11:46,277.277 INFO    ] No camera update needed
[2026-06-22 17:11:46,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:11:46,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:11:46,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:11:46,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:11:48,336.336 INFO    ] ================================================
[2026-06-22 17:11:48,351.351 INFO    ] Launching Daemon at Mon Jun 22 17:11:48 IST 2026
[2026-06-22 17:11:48,363.363 INFO    ] ================================================
[2026-06-22 17:11:48,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:11:48
[2026-06-22 17:11:49,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:11:49,694.694 INFO    ] Initializing speech engine...
[2026-06-22 17:11:49,701.701 INFO    ] 2026-06-22 17:11:49
[2026-06-22 17:11:49,995.995 INFO    ] 2026-06-22 17:11:49
[2026-06-22 17:11:50,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:11:50,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:11:50,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:11:50,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:11:50,417.417 INFO    ] time= 22/06/2026 17:11:50
[2026-06-22 17:11:50,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:11:50,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:11:50,551.551 INFO    ] No existing commands found in stream
[2026-06-22 17:11:55,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:11:55,579.579 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-22 17:11:56,826.826 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:11:56,828.828 INFO    ] Checking for system updates...
[2026-06-22 17:11:56,865.865 INFO    ] 200
[2026-06-22 17:11:56,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:11:56,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:11:56,922.922 INFO    ] No update needed
[2026-06-22 17:11:56,925.925 INFO    ] Checking for camera pi updates...
[2026-06-22 17:11:56,958.958 INFO    ] 200
[2026-06-22 17:11:56,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:11:57,001.001 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:11:57,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:11:57,101.101 INFO    ] No camera update needed
[2026-06-22 17:11:57,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:11:57,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:11:57,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:11:57,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:11:59,157.157 INFO    ] ================================================
[2026-06-22 17:11:59,172.172 INFO    ] Launching Daemon at Mon Jun 22 17:11:59 IST 2026
[2026-06-22 17:11:59,184.184 INFO    ] ================================================
[2026-06-22 17:11:59,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:11:59
[2026-06-22 17:12:00,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:12:00,509.509 INFO    ] Initializing speech engine...
[2026-06-22 17:12:00,515.515 INFO    ] 2026-06-22 17:12:00
[2026-06-22 17:12:00,811.811 INFO    ] 2026-06-22 17:12:00
[2026-06-22 17:12:00,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:12:01,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:12:01,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:12:01,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:12:01,208.208 INFO    ] time= 22/06/2026 17:12:01
[2026-06-22 17:12:01,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:12:01,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:12:01,402.402 INFO    ] No existing commands found in stream
[2026-06-22 17:12:06,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:12:06,417.417 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-22 17:12:10,825.825 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:12:10,828.828 INFO    ] Checking for system updates...
[2026-06-22 17:12:10,864.864 INFO    ] 200
[2026-06-22 17:12:10,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:12:10,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:12:10,921.921 INFO    ] No update needed
[2026-06-22 17:12:10,924.924 INFO    ] Checking for camera pi updates...
[2026-06-22 17:12:10,957.957 INFO    ] 200
[2026-06-22 17:12:10,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:12:11,001.001 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:12:11,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:12:11,106.106 INFO    ] No camera update needed
[2026-06-22 17:12:11,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:12:11,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:12:11,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:12:11,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:12:13,160.160 INFO    ] ================================================
[2026-06-22 17:12:13,176.176 INFO    ] Launching Daemon at Mon Jun 22 17:12:13 IST 2026
[2026-06-22 17:12:13,187.187 INFO    ] ================================================
[2026-06-22 17:12:13,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:12:13
[2026-06-22 17:12:14,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:12:14,648.648 INFO    ] Initializing speech engine...
[2026-06-22 17:12:14,656.656 INFO    ] 2026-06-22 17:12:14
[2026-06-22 17:12:14,904.904 INFO    ] 2026-06-22 17:12:14
[2026-06-22 17:12:14,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:12:15,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:12:15,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:12:15,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:12:15,379.379 INFO    ] time= 22/06/2026 17:12:15
[2026-06-22 17:12:15,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:12:15,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:12:15,613.613 INFO    ] No existing commands found in stream
[2026-06-22 17:12:20,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:12:20,630.630 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-22 17:12:23,895.895 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:12:23,897.897 INFO    ] Checking for system updates...
[2026-06-22 17:12:23,934.934 INFO    ] 200
[2026-06-22 17:12:23,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:12:23,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:12:23,999.999 INFO    ] No update needed
[2026-06-22 17:12:24,002.002 INFO    ] Checking for camera pi updates...
[2026-06-22 17:12:24,036.036 INFO    ] 200
[2026-06-22 17:12:24,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:12:24,084.084 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:12:24,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:12:24,158.158 INFO    ] No camera update needed
[2026-06-22 17:12:24,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:12:24,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:12:24,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:12:24,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:12:26,216.216 INFO    ] ================================================
[2026-06-22 17:12:26,232.232 INFO    ] Launching Daemon at Mon Jun 22 17:12:26 IST 2026
[2026-06-22 17:12:26,242.242 INFO    ] ================================================
[2026-06-22 17:12:26,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:12:26
[2026-06-22 17:12:27,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:12:27,708.708 INFO    ] Initializing speech engine...
[2026-06-22 17:12:27,716.716 INFO    ] 2026-06-22 17:12:27
[2026-06-22 17:12:27,964.964 INFO    ] 2026-06-22 17:12:27
[2026-06-22 17:12:27,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:12:28,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:12:28,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:12:28,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:12:28,449.449 INFO    ] time= 22/06/2026 17:12:28
[2026-06-22 17:12:28,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:12:28,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:12:28,661.661 INFO    ] No existing commands found in stream
[2026-06-22 17:12:33,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:12:33,681.681 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-22 17:12:35,906.906 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:12:35,909.909 INFO    ] Checking for system updates...
[2026-06-22 17:12:35,947.947 INFO    ] 200
[2026-06-22 17:12:35,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:12:36,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:12:36,014.014 INFO    ] No update needed
[2026-06-22 17:12:36,017.017 INFO    ] Checking for camera pi updates...
[2026-06-22 17:12:36,052.052 INFO    ] 200
[2026-06-22 17:12:36,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:12:36,098.098 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:12:36,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:12:36,178.178 INFO    ] No camera update needed
[2026-06-22 17:12:36,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:12:36,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:12:36,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:12:36,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:12:38,237.237 INFO    ] ================================================
[2026-06-22 17:12:38,254.254 INFO    ] Launching Daemon at Mon Jun 22 17:12:38 IST 2026
[2026-06-22 17:12:38,265.265 INFO    ] ================================================
[2026-06-22 17:12:38,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:12:38
[2026-06-22 17:12:39,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:12:39,667.667 INFO    ] Initializing speech engine...
[2026-06-22 17:12:39,676.676 INFO    ] 2026-06-22 17:12:39
[2026-06-22 17:12:39,928.928 INFO    ] 2026-06-22 17:12:39
[2026-06-22 17:12:39,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:12:40,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:12:40,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:12:40,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:12:40,427.427 INFO    ] time= 22/06/2026 17:12:40
[2026-06-22 17:12:40,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:12:40,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:12:40,617.617 INFO    ] No existing commands found in stream
[2026-06-22 17:12:45,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:12:45,637.637 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-22 17:12:46,085.085 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:12:46,087.087 INFO    ] Checking for system updates...
[2026-06-22 17:12:46,123.123 INFO    ] 200
[2026-06-22 17:12:46,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:12:46,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:12:46,181.181 INFO    ] No update needed
[2026-06-22 17:12:46,183.183 INFO    ] Checking for camera pi updates...
[2026-06-22 17:12:46,217.217 INFO    ] 200
[2026-06-22 17:12:46,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:12:46,260.260 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:12:46,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:12:46,365.365 INFO    ] No camera update needed
[2026-06-22 17:12:46,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:12:46,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:12:46,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:12:46,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:12:48,420.420 INFO    ] ================================================
[2026-06-22 17:12:48,437.437 INFO    ] Launching Daemon at Mon Jun 22 17:12:48 IST 2026
[2026-06-22 17:12:48,447.447 INFO    ] ================================================
[2026-06-22 17:12:49,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:12:49
[2026-06-22 17:12:49,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:12:49,868.868 INFO    ] Initializing speech engine...
[2026-06-22 17:12:49,877.877 INFO    ] 2026-06-22 17:12:49
[2026-06-22 17:12:50,124.124 INFO    ] 2026-06-22 17:12:50
[2026-06-22 17:12:50,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:12:50,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:12:50,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:12:50,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:12:50,679.679 INFO    ] time= 22/06/2026 17:12:50
[2026-06-22 17:12:50,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:12:50,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:12:50,830.830 INFO    ] No existing commands found in stream
[2026-06-22 17:12:55,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:12:55,849.849 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-22 17:12:59,788.788 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:12:59,791.791 INFO    ] Checking for system updates...
[2026-06-22 17:12:59,827.827 INFO    ] 200
[2026-06-22 17:12:59,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:12:59,883.883 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:12:59,885.885 INFO    ] No update needed
[2026-06-22 17:12:59,888.888 INFO    ] Checking for camera pi updates...
[2026-06-22 17:12:59,925.925 INFO    ] 200
[2026-06-22 17:12:59,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:12:59,969.969 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:13:00,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:13:00,053.053 INFO    ] No camera update needed
[2026-06-22 17:13:00,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:13:00,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:13:00,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:13:00,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:13:02,116.116 INFO    ] ================================================
[2026-06-22 17:13:02,138.138 INFO    ] Launching Daemon at Mon Jun 22 17:13:02 IST 2026
[2026-06-22 17:13:02,158.158 INFO    ] ================================================
[2026-06-22 17:13:02,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:13:02
[2026-06-22 17:13:03,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:13:03,919.919 INFO    ] Initializing speech engine...
[2026-06-22 17:13:03,936.936 INFO    ] 2026-06-22 17:13:03
[2026-06-22 17:13:04,225.225 INFO    ] 2026-06-22 17:13:04
[2026-06-22 17:13:04,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:13:04,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:13:04,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:13:04,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:13:04,648.648 INFO    ] time= 22/06/2026 17:13:04
[2026-06-22 17:13:04,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:13:04,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:13:04,813.813 INFO    ] No existing commands found in stream
[2026-06-22 17:13:09,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:13:09,835.835 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-22 17:13:17,215.215 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:13:17,218.218 INFO    ] Checking for system updates...
[2026-06-22 17:13:17,255.255 INFO    ] 200
[2026-06-22 17:13:17,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:13:17,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:13:17,313.313 INFO    ] No update needed
[2026-06-22 17:13:17,316.316 INFO    ] Checking for camera pi updates...
[2026-06-22 17:13:17,350.350 INFO    ] 200
[2026-06-22 17:13:17,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:13:17,394.394 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:13:17,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:13:17,600.600 INFO    ] No camera update needed
[2026-06-22 17:13:17,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:13:17,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:13:17,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:13:17,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:13:19,656.656 INFO    ] ================================================
[2026-06-22 17:13:19,672.672 INFO    ] Launching Daemon at Mon Jun 22 17:13:19 IST 2026
[2026-06-22 17:13:19,683.683 INFO    ] ================================================
[2026-06-22 17:13:20,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:13:20
[2026-06-22 17:13:20,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:13:21,250.250 INFO    ] Initializing speech engine...
[2026-06-22 17:13:21,262.262 INFO    ] 2026-06-22 17:13:21
[2026-06-22 17:13:21,545.545 INFO    ] 2026-06-22 17:13:21
[2026-06-22 17:13:21,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:13:21,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:13:21,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:13:22,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:13:22,086.086 INFO    ] time= 22/06/2026 17:13:22
[2026-06-22 17:13:22,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:13:22,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:13:22,242.242 INFO    ] No existing commands found in stream
[2026-06-22 17:13:27,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:13:27,267.267 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-22 17:13:35,466.466 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:13:35,468.468 INFO    ] Checking for system updates...
[2026-06-22 17:13:35,489.489 INFO    ] 200
[2026-06-22 17:13:35,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:13:35,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:13:35,545.545 INFO    ] No update needed
[2026-06-22 17:13:35,548.548 INFO    ] Checking for camera pi updates...
[2026-06-22 17:13:35,582.582 INFO    ] 200
[2026-06-22 17:13:35,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:13:35,632.632 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:13:35,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:13:35,707.707 INFO    ] No camera update needed
[2026-06-22 17:13:35,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:13:35,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:13:35,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:13:35,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:13:37,762.762 INFO    ] ================================================
[2026-06-22 17:13:37,778.778 INFO    ] Launching Daemon at Mon Jun 22 17:13:37 IST 2026
[2026-06-22 17:13:37,790.790 INFO    ] ================================================
[2026-06-22 17:13:38,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:13:38
[2026-06-22 17:13:38,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:13:39,158.158 INFO    ] Initializing speech engine...
[2026-06-22 17:13:39,178.178 INFO    ] 2026-06-22 17:13:39
[2026-06-22 17:13:39,429.429 INFO    ] 2026-06-22 17:13:39
[2026-06-22 17:13:39,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:13:39,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:13:39,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:13:39,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:13:39,891.891 INFO    ] time= 22/06/2026 17:13:39
[2026-06-22 17:13:39,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:13:40,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:13:40,135.135 INFO    ] No existing commands found in stream
[2026-06-22 17:13:45,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:13:45,168.168 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-22 17:13:49,082.082 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:13:49,084.084 INFO    ] Checking for system updates...
[2026-06-22 17:13:49,125.125 INFO    ] 200
[2026-06-22 17:13:49,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:13:49,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:13:49,190.190 INFO    ] No update needed
[2026-06-22 17:13:49,193.193 INFO    ] Checking for camera pi updates...
[2026-06-22 17:13:49,226.226 INFO    ] 200
[2026-06-22 17:13:49,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:13:49,275.275 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:13:49,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:13:49,360.360 INFO    ] No camera update needed
[2026-06-22 17:13:49,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:13:49,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:13:49,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:13:49,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:13:51,417.417 INFO    ] ================================================
[2026-06-22 17:13:51,432.432 INFO    ] Launching Daemon at Mon Jun 22 17:13:51 IST 2026
[2026-06-22 17:13:51,444.444 INFO    ] ================================================
[2026-06-22 17:13:52,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:13:52
[2026-06-22 17:13:52,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:13:52,852.852 INFO    ] Initializing speech engine...
[2026-06-22 17:13:52,875.875 INFO    ] 2026-06-22 17:13:52
[2026-06-22 17:13:53,132.132 INFO    ] 2026-06-22 17:13:53
[2026-06-22 17:13:53,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:13:53,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:13:53,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:13:53,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:13:53,607.607 INFO    ] time= 22/06/2026 17:13:53
[2026-06-22 17:13:53,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:13:53,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:13:53,844.844 INFO    ] No existing commands found in stream
[2026-06-22 17:13:58,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:13:58,872.872 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-22 17:14:02,766.766 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:14:02,769.769 INFO    ] Checking for system updates...
[2026-06-22 17:14:02,815.815 INFO    ] 200
[2026-06-22 17:14:02,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:14:02,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:14:02,882.882 INFO    ] No update needed
[2026-06-22 17:14:02,885.885 INFO    ] Checking for camera pi updates...
[2026-06-22 17:14:02,929.929 INFO    ] 200
[2026-06-22 17:14:02,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:14:02,991.991 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:14:03,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:14:03,052.052 INFO    ] No camera update needed
[2026-06-22 17:14:03,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:14:03,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:14:03,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:14:03,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:14:05,123.123 INFO    ] ================================================
[2026-06-22 17:14:05,139.139 INFO    ] Launching Daemon at Mon Jun 22 17:14:05 IST 2026
[2026-06-22 17:14:05,150.150 INFO    ] ================================================
[2026-06-22 17:14:05,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:14:05
[2026-06-22 17:14:06,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:14:06,494.494 INFO    ] Initializing speech engine...
[2026-06-22 17:14:06,504.504 INFO    ] 2026-06-22 17:14:06
[2026-06-22 17:14:06,780.780 INFO    ] 2026-06-22 17:14:06
[2026-06-22 17:14:06,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:14:07,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:14:07,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:14:07,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:14:07,291.291 INFO    ] time= 22/06/2026 17:14:07
[2026-06-22 17:14:07,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:14:07,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:14:07,502.502 INFO    ] No existing commands found in stream
[2026-06-22 17:14:12,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:14:12,523.523 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-22 17:14:14,689.689 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:14:14,692.692 INFO    ] Checking for system updates...
[2026-06-22 17:14:14,728.728 INFO    ] 200
[2026-06-22 17:14:14,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:14:14,782.782 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:14:14,785.785 INFO    ] No update needed
[2026-06-22 17:14:14,787.787 INFO    ] Checking for camera pi updates...
[2026-06-22 17:14:14,825.825 INFO    ] 200
[2026-06-22 17:14:14,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:14:14,871.871 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:14:14,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:14:14,994.994 INFO    ] No camera update needed
[2026-06-22 17:14:14,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:14:14,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:14:15,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:14:15,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:14:17,053.053 INFO    ] ================================================
[2026-06-22 17:14:17,069.069 INFO    ] Launching Daemon at Mon Jun 22 17:14:17 IST 2026
[2026-06-22 17:14:17,080.080 INFO    ] ================================================
[2026-06-22 17:14:17,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:14:17
[2026-06-22 17:14:18,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:14:18,495.495 INFO    ] Initializing speech engine...
[2026-06-22 17:14:18,509.509 INFO    ] 2026-06-22 17:14:18
[2026-06-22 17:14:18,777.777 INFO    ] 2026-06-22 17:14:18
[2026-06-22 17:14:18,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:14:19,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:14:19,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:14:19,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:14:19,273.273 INFO    ] time= 22/06/2026 17:14:19
[2026-06-22 17:14:19,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:14:19,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:14:19,490.490 INFO    ] No existing commands found in stream
[2026-06-22 17:14:24,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:14:24,516.516 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-22 17:14:28,495.495 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:14:28,498.498 INFO    ] Checking for system updates...
[2026-06-22 17:14:28,537.537 INFO    ] 200
[2026-06-22 17:14:28,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:14:28,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:14:28,594.594 INFO    ] No update needed
[2026-06-22 17:14:28,596.596 INFO    ] Checking for camera pi updates...
[2026-06-22 17:14:28,633.633 INFO    ] 200
[2026-06-22 17:14:28,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:14:28,676.676 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:14:28,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:14:28,784.784 INFO    ] No camera update needed
[2026-06-22 17:14:28,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:14:28,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:14:28,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:14:28,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:14:30,840.840 INFO    ] ================================================
[2026-06-22 17:14:30,855.855 INFO    ] Launching Daemon at Mon Jun 22 17:14:30 IST 2026
[2026-06-22 17:14:30,866.866 INFO    ] ================================================
[2026-06-22 17:14:31,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:14:31
[2026-06-22 17:14:31,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:14:32,249.249 INFO    ] Initializing speech engine...
[2026-06-22 17:14:32,256.256 INFO    ] 2026-06-22 17:14:32
[2026-06-22 17:14:32,557.557 INFO    ] 2026-06-22 17:14:32
[2026-06-22 17:14:32,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:14:32,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:14:32,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:14:32,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:14:32,983.983 INFO    ] time= 22/06/2026 17:14:32
[2026-06-22 17:14:32,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:14:33,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:14:33,081.081 INFO    ] No existing commands found in stream
[2026-06-22 17:14:38,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:14:38,104.104 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-22 17:14:41,174.174 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:14:41,177.177 INFO    ] Checking for system updates...
[2026-06-22 17:14:41,214.214 INFO    ] 200
[2026-06-22 17:14:41,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:14:41,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:14:41,277.277 INFO    ] No update needed
[2026-06-22 17:14:41,280.280 INFO    ] Checking for camera pi updates...
[2026-06-22 17:14:41,314.314 INFO    ] 200
[2026-06-22 17:14:41,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:14:41,361.361 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:14:41,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:14:41,439.439 INFO    ] No camera update needed
[2026-06-22 17:14:41,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:14:41,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:14:41,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:14:41,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:14:43,495.495 INFO    ] ================================================
[2026-06-22 17:14:43,510.510 INFO    ] Launching Daemon at Mon Jun 22 17:14:43 IST 2026
[2026-06-22 17:14:43,520.520 INFO    ] ================================================
[2026-06-22 17:14:44,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:14:44
[2026-06-22 17:14:44,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:14:44,981.981 INFO    ] Initializing speech engine...
[2026-06-22 17:14:44,988.988 INFO    ] 2026-06-22 17:14:44
[2026-06-22 17:14:45,250.250 INFO    ] 2026-06-22 17:14:45
[2026-06-22 17:14:45,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:14:45,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:14:45,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:14:45,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:14:45,806.806 INFO    ] time= 22/06/2026 17:14:45
[2026-06-22 17:14:45,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:14:45,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:14:45,958.958 INFO    ] No existing commands found in stream
[2026-06-22 17:14:50,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:14:50,986.986 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-22 17:14:54,810.810 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:14:54,812.812 INFO    ] Checking for system updates...
[2026-06-22 17:14:54,851.851 INFO    ] 200
[2026-06-22 17:14:54,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:14:54,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:14:54,910.910 INFO    ] No update needed
[2026-06-22 17:14:54,912.912 INFO    ] Checking for camera pi updates...
[2026-06-22 17:14:54,946.946 INFO    ] 200
[2026-06-22 17:14:54,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:14:54,992.992 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:14:55,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:14:55,078.078 INFO    ] No camera update needed
[2026-06-22 17:14:55,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:14:55,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:14:55,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:14:55,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:14:57,134.134 INFO    ] ================================================
[2026-06-22 17:14:57,149.149 INFO    ] Launching Daemon at Mon Jun 22 17:14:57 IST 2026
[2026-06-22 17:14:57,159.159 INFO    ] ================================================
[2026-06-22 17:14:57,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:14:57
[2026-06-22 17:14:58,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:14:58,581.581 INFO    ] Initializing speech engine...
[2026-06-22 17:14:58,590.590 INFO    ] 2026-06-22 17:14:58
[2026-06-22 17:14:58,841.841 INFO    ] 2026-06-22 17:14:58
[2026-06-22 17:14:58,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:14:59,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:14:59,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:14:59,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:14:59,348.348 INFO    ] time= 22/06/2026 17:14:59
[2026-06-22 17:14:59,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:14:59,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:14:59,551.551 INFO    ] No existing commands found in stream
[2026-06-22 17:15:04,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:15:04,577.577 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-22 17:15:08,922.922 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:15:08,924.924 INFO    ] Checking for system updates...
[2026-06-22 17:15:08,965.965 INFO    ] 200
[2026-06-22 17:15:08,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:15:09,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:15:09,029.029 INFO    ] No update needed
[2026-06-22 17:15:09,031.031 INFO    ] Checking for camera pi updates...
[2026-06-22 17:15:09,066.066 INFO    ] 200
[2026-06-22 17:15:09,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:15:09,137.137 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:15:09,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:15:09,243.243 INFO    ] No camera update needed
[2026-06-22 17:15:09,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:15:09,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:15:09,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:15:09,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:15:11,299.299 INFO    ] ================================================
[2026-06-22 17:15:11,315.315 INFO    ] Launching Daemon at Mon Jun 22 17:15:11 IST 2026
[2026-06-22 17:15:11,325.325 INFO    ] ================================================
[2026-06-22 17:15:11,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:15:11
[2026-06-22 17:15:12,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:15:12,747.747 INFO    ] Initializing speech engine...
[2026-06-22 17:15:12,771.771 INFO    ] 2026-06-22 17:15:12
[2026-06-22 17:15:13,041.041 INFO    ] 2026-06-22 17:15:13
[2026-06-22 17:15:13,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:15:13,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:15:13,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:15:13,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:15:13,546.546 INFO    ] time= 22/06/2026 17:15:13
[2026-06-22 17:15:13,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:15:13,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:15:13,770.770 INFO    ] No existing commands found in stream
[2026-06-22 17:15:18,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:15:18,791.791 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-22 17:15:21,624.624 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:15:21,626.626 INFO    ] Checking for system updates...
[2026-06-22 17:15:21,655.655 INFO    ] 200
[2026-06-22 17:15:21,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:15:21,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:15:21,720.720 INFO    ] No update needed
[2026-06-22 17:15:21,722.722 INFO    ] Checking for camera pi updates...
[2026-06-22 17:15:21,762.762 INFO    ] 200
[2026-06-22 17:15:21,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:15:21,806.806 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:15:21,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:15:21,971.971 INFO    ] No camera update needed
[2026-06-22 17:15:21,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:15:21,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:15:21,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:15:21,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:15:24,030.030 INFO    ] ================================================
[2026-06-22 17:15:24,045.045 INFO    ] Launching Daemon at Mon Jun 22 17:15:24 IST 2026
[2026-06-22 17:15:24,055.055 INFO    ] ================================================
[2026-06-22 17:15:24,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:15:24
[2026-06-22 17:15:25,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:15:25,492.492 INFO    ] Initializing speech engine...
[2026-06-22 17:15:25,501.501 INFO    ] 2026-06-22 17:15:25
[2026-06-22 17:15:25,794.794 INFO    ] 2026-06-22 17:15:25
[2026-06-22 17:15:25,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:15:26,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:15:26,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:15:26,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:15:26,259.259 INFO    ] time= 22/06/2026 17:15:26
[2026-06-22 17:15:26,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:15:26,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:15:26,516.516 INFO    ] No existing commands found in stream
[2026-06-22 17:15:31,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:15:31,540.540 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-22 17:15:32,290.290 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:15:32,293.293 INFO    ] Checking for system updates...
[2026-06-22 17:15:32,340.340 INFO    ] 200
[2026-06-22 17:15:32,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:15:32,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:15:32,415.415 INFO    ] No update needed
[2026-06-22 17:15:32,418.418 INFO    ] Checking for camera pi updates...
[2026-06-22 17:15:32,459.459 INFO    ] 200
[2026-06-22 17:15:32,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:15:32,517.517 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:15:32,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:15:32,571.571 INFO    ] No camera update needed
[2026-06-22 17:15:32,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:15:32,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:15:32,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:15:32,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:15:34,633.633 INFO    ] ================================================
[2026-06-22 17:15:34,649.649 INFO    ] Launching Daemon at Mon Jun 22 17:15:34 IST 2026
[2026-06-22 17:15:34,660.660 INFO    ] ================================================
[2026-06-22 17:15:35,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:15:35
[2026-06-22 17:15:35,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:15:36,122.122 INFO    ] Initializing speech engine...
[2026-06-22 17:15:36,130.130 INFO    ] 2026-06-22 17:15:36
[2026-06-22 17:15:36,391.391 INFO    ] 2026-06-22 17:15:36
[2026-06-22 17:15:36,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:15:36,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:15:36,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:15:36,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:15:36,937.937 INFO    ] time= 22/06/2026 17:15:36
[2026-06-22 17:15:36,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:15:36,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:15:37,100.100 INFO    ] No existing commands found in stream
[2026-06-22 17:15:42,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:15:42,133.133 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-22 17:15:42,935.935 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:15:42,938.938 INFO    ] Checking for system updates...
[2026-06-22 17:15:42,979.979 INFO    ] 200
[2026-06-22 17:15:42,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:15:43,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:15:43,046.046 INFO    ] No update needed
[2026-06-22 17:15:43,049.049 INFO    ] Checking for camera pi updates...
[2026-06-22 17:15:43,084.084 INFO    ] 200
[2026-06-22 17:15:43,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:15:43,128.128 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:15:43,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:15:43,238.238 INFO    ] No camera update needed
[2026-06-22 17:15:43,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:15:43,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:15:43,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:15:43,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:15:45,298.298 INFO    ] ================================================
[2026-06-22 17:15:45,313.313 INFO    ] Launching Daemon at Mon Jun 22 17:15:45 IST 2026
[2026-06-22 17:15:45,324.324 INFO    ] ================================================
[2026-06-22 17:15:45,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:15:45
[2026-06-22 17:15:46,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:15:46,649.649 INFO    ] Initializing speech engine...
[2026-06-22 17:15:46,656.656 INFO    ] 2026-06-22 17:15:46
[2026-06-22 17:15:46,949.949 INFO    ] 2026-06-22 17:15:46
[2026-06-22 17:15:46,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:15:47,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:15:47,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:15:47,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:15:47,440.440 INFO    ] time= 22/06/2026 17:15:47
[2026-06-22 17:15:47,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:15:47,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:15:47,642.642 INFO    ] No existing commands found in stream
[2026-06-22 17:15:52,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:15:52,656.656 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-22 17:15:56,239.239 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:15:56,242.242 INFO    ] Checking for system updates...
[2026-06-22 17:15:56,282.282 INFO    ] 200
[2026-06-22 17:15:56,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:15:56,344.344 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:15:56,347.347 INFO    ] No update needed
[2026-06-22 17:15:56,350.350 INFO    ] Checking for camera pi updates...
[2026-06-22 17:15:56,385.385 INFO    ] 200
[2026-06-22 17:15:56,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:15:56,428.428 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:15:56,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:15:56,544.544 INFO    ] No camera update needed
[2026-06-22 17:15:56,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:15:56,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:15:56,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:15:56,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:15:58,603.603 INFO    ] ================================================
[2026-06-22 17:15:58,617.617 INFO    ] Launching Daemon at Mon Jun 22 17:15:58 IST 2026
[2026-06-22 17:15:58,628.628 INFO    ] ================================================
[2026-06-22 17:15:59,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:15:59
[2026-06-22 17:15:59,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:16:00,047.047 INFO    ] Initializing speech engine...
[2026-06-22 17:16:00,063.063 INFO    ] 2026-06-22 17:16:00
[2026-06-22 17:16:00,346.346 INFO    ] 2026-06-22 17:16:00
[2026-06-22 17:16:00,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:16:00,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:16:00,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:16:00,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:16:00,838.838 INFO    ] time= 22/06/2026 17:16:00
[2026-06-22 17:16:00,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:16:00,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:16:01,040.040 INFO    ] No existing commands found in stream
[2026-06-22 17:16:06,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:16:06,060.060 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-22 17:16:09,576.576 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:16:09,579.579 INFO    ] Checking for system updates...
[2026-06-22 17:16:09,615.615 INFO    ] 200
[2026-06-22 17:16:09,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:16:09,675.675 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:16:09,677.677 INFO    ] No update needed
[2026-06-22 17:16:09,680.680 INFO    ] Checking for camera pi updates...
[2026-06-22 17:16:09,714.714 INFO    ] 200
[2026-06-22 17:16:09,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:16:09,758.758 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:16:09,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:16:09,862.862 INFO    ] No camera update needed
[2026-06-22 17:16:09,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:16:09,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:16:09,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:16:09,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:16:11,918.918 INFO    ] ================================================
[2026-06-22 17:16:11,933.933 INFO    ] Launching Daemon at Mon Jun 22 17:16:11 IST 2026
[2026-06-22 17:16:11,944.944 INFO    ] ================================================
[2026-06-22 17:16:12,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:16:12
[2026-06-22 17:16:13,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:16:13,362.362 INFO    ] Initializing speech engine...
[2026-06-22 17:16:13,377.377 INFO    ] 2026-06-22 17:16:13
[2026-06-22 17:16:13,659.659 INFO    ] 2026-06-22 17:16:13
[2026-06-22 17:16:13,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:16:13,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:16:13,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:16:14,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:16:14,151.151 INFO    ] time= 22/06/2026 17:16:14
[2026-06-22 17:16:14,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:16:14,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:16:14,338.338 INFO    ] No existing commands found in stream
[2026-06-22 17:16:19,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:16:19,353.353 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-22 17:16:23,710.710 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:16:23,713.713 INFO    ] Checking for system updates...
[2026-06-22 17:16:23,749.749 INFO    ] 200
[2026-06-22 17:16:23,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:16:23,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:16:23,812.812 INFO    ] No update needed
[2026-06-22 17:16:23,815.815 INFO    ] Checking for camera pi updates...
[2026-06-22 17:16:23,848.848 INFO    ] 200
[2026-06-22 17:16:23,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:16:23,892.892 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:16:23,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:16:23,975.975 INFO    ] No camera update needed
[2026-06-22 17:16:23,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:16:23,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:16:23,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:16:23,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:16:26,031.031 INFO    ] ================================================
[2026-06-22 17:16:26,046.046 INFO    ] Launching Daemon at Mon Jun 22 17:16:26 IST 2026
[2026-06-22 17:16:26,057.057 INFO    ] ================================================
[2026-06-22 17:16:26,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:16:26
[2026-06-22 17:16:27,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:16:27,455.455 INFO    ] Initializing speech engine...
[2026-06-22 17:16:27,479.479 INFO    ] 2026-06-22 17:16:27
[2026-06-22 17:16:27,735.735 INFO    ] 2026-06-22 17:16:27
[2026-06-22 17:16:27,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:16:28,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:16:28,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:16:28,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:16:28,248.248 INFO    ] time= 22/06/2026 17:16:28
[2026-06-22 17:16:28,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:16:28,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:16:28,437.437 INFO    ] No existing commands found in stream
[2026-06-22 17:16:33,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:16:33,465.465 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-22 17:16:34,800.800 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:16:34,803.803 INFO    ] Checking for system updates...
[2026-06-22 17:16:34,838.838 INFO    ] 200
[2026-06-22 17:16:34,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:16:34,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:16:34,900.900 INFO    ] No update needed
[2026-06-22 17:16:34,902.902 INFO    ] Checking for camera pi updates...
[2026-06-22 17:16:34,936.936 INFO    ] 200
[2026-06-22 17:16:34,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:16:34,983.983 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:16:35,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:16:35,092.092 INFO    ] No camera update needed
[2026-06-22 17:16:35,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:16:35,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:16:35,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:16:35,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:16:37,151.151 INFO    ] ================================================
[2026-06-22 17:16:37,167.167 INFO    ] Launching Daemon at Mon Jun 22 17:16:37 IST 2026
[2026-06-22 17:16:37,179.179 INFO    ] ================================================
[2026-06-22 17:16:37,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:16:37
[2026-06-22 17:16:38,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:16:38,693.693 INFO    ] Initializing speech engine...
[2026-06-22 17:16:38,706.706 INFO    ] 2026-06-22 17:16:38
[2026-06-22 17:16:38,986.986 INFO    ] 2026-06-22 17:16:38
[2026-06-22 17:16:39,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:16:39,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:16:39,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:16:39,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:16:39,437.437 INFO    ] time= 22/06/2026 17:16:39
[2026-06-22 17:16:39,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:16:39,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:16:39,667.667 INFO    ] No existing commands found in stream
[2026-06-22 17:16:44,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:16:44,702.702 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-22 17:16:45,769.769 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:16:45,770.770 INFO    ] Checking for system updates...
[2026-06-22 17:16:45,791.791 INFO    ] 200
[2026-06-22 17:16:45,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:16:45,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:16:45,849.849 INFO    ] No update needed
[2026-06-22 17:16:45,851.851 INFO    ] Checking for camera pi updates...
[2026-06-22 17:16:45,889.889 INFO    ] 200
[2026-06-22 17:16:45,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:16:45,937.937 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:16:46,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:16:46,020.020 INFO    ] No camera update needed
[2026-06-22 17:16:46,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:16:46,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:16:46,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:16:46,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:16:48,077.077 INFO    ] ================================================
[2026-06-22 17:16:48,094.094 INFO    ] Launching Daemon at Mon Jun 22 17:16:48 IST 2026
[2026-06-22 17:16:48,105.105 INFO    ] ================================================
[2026-06-22 17:16:48,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:16:48
[2026-06-22 17:16:49,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:16:49,613.613 INFO    ] Initializing speech engine...
[2026-06-22 17:16:49,621.621 INFO    ] 2026-06-22 17:16:49
[2026-06-22 17:16:49,890.890 INFO    ] 2026-06-22 17:16:49
[2026-06-22 17:16:49,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:16:50,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:16:50,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:16:50,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:16:50,421.421 INFO    ] time= 22/06/2026 17:16:50
[2026-06-22 17:16:50,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:16:50,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:16:50,575.575 INFO    ] No existing commands found in stream
[2026-06-22 17:16:55,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:16:55,594.594 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-22 17:16:59,036.036 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:16:59,039.039 INFO    ] Checking for system updates...
[2026-06-22 17:16:59,076.076 INFO    ] 200
[2026-06-22 17:16:59,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:16:59,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:16:59,133.133 INFO    ] No update needed
[2026-06-22 17:16:59,135.135 INFO    ] Checking for camera pi updates...
[2026-06-22 17:16:59,168.168 INFO    ] 200
[2026-06-22 17:16:59,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:16:59,211.211 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:16:59,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:16:59,316.316 INFO    ] No camera update needed
[2026-06-22 17:16:59,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:16:59,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:16:59,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:16:59,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:17:01,376.376 INFO    ] ================================================
[2026-06-22 17:17:01,405.405 INFO    ] Launching Daemon at Mon Jun 22 17:17:01 IST 2026
[2026-06-22 17:17:01,420.420 INFO    ] ================================================
[2026-06-22 17:17:02,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:17:02
[2026-06-22 17:17:02,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:17:03,065.065 INFO    ] Initializing speech engine...
[2026-06-22 17:17:03,085.085 INFO    ] 2026-06-22 17:17:03
[2026-06-22 17:17:03,357.357 INFO    ] 2026-06-22 17:17:03
[2026-06-22 17:17:03,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:17:03,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:17:03,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:17:03,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:17:03,737.737 INFO    ] time= 22/06/2026 17:17:03
[2026-06-22 17:17:03,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:17:03,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:17:03,869.869 INFO    ] No existing commands found in stream
[2026-06-22 17:17:08,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:17:08,883.883 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-22 17:17:13,234.234 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:17:13,237.237 INFO    ] Checking for system updates...
[2026-06-22 17:17:13,273.273 INFO    ] 200
[2026-06-22 17:17:13,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:17:13,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:17:13,334.334 INFO    ] No update needed
[2026-06-22 17:17:13,337.337 INFO    ] Checking for camera pi updates...
[2026-06-22 17:17:13,370.370 INFO    ] 200
[2026-06-22 17:17:13,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:17:13,413.413 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:17:13,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:17:13,515.515 INFO    ] No camera update needed
[2026-06-22 17:17:13,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:17:13,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:17:13,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:17:13,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:17:15,569.569 INFO    ] ================================================
[2026-06-22 17:17:15,584.584 INFO    ] Launching Daemon at Mon Jun 22 17:17:15 IST 2026
[2026-06-22 17:17:15,595.595 INFO    ] ================================================
[2026-06-22 17:17:16,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:17:16
[2026-06-22 17:17:16,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:17:17,021.021 INFO    ] Initializing speech engine...
[2026-06-22 17:17:17,041.041 INFO    ] 2026-06-22 17:17:17
[2026-06-22 17:17:17,309.309 INFO    ] 2026-06-22 17:17:17
[2026-06-22 17:17:17,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:17:17,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:17:17,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:17:17,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:17:17,799.799 INFO    ] time= 22/06/2026 17:17:17
[2026-06-22 17:17:17,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:17:17,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:17:18,075.075 INFO    ] No existing commands found in stream
[2026-06-22 17:17:23,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:17:23,101.101 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-22 17:17:25,899.899 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:17:25,902.902 INFO    ] Checking for system updates...
[2026-06-22 17:17:25,939.939 INFO    ] 200
[2026-06-22 17:17:25,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:17:25,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:17:25,996.996 INFO    ] No update needed
[2026-06-22 17:17:25,999.999 INFO    ] Checking for camera pi updates...
[2026-06-22 17:17:26,033.033 INFO    ] 200
[2026-06-22 17:17:26,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:17:26,076.076 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:17:26,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:17:26,259.259 INFO    ] No camera update needed
[2026-06-22 17:17:26,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:17:26,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:17:26,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:17:26,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:17:28,315.315 INFO    ] ================================================
[2026-06-22 17:17:28,329.329 INFO    ] Launching Daemon at Mon Jun 22 17:17:28 IST 2026
[2026-06-22 17:17:28,340.340 INFO    ] ================================================
[2026-06-22 17:17:28,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:17:28
[2026-06-22 17:17:29,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:17:29,802.802 INFO    ] Initializing speech engine...
[2026-06-22 17:17:29,812.812 INFO    ] 2026-06-22 17:17:29
[2026-06-22 17:17:30,061.061 INFO    ] 2026-06-22 17:17:30
[2026-06-22 17:17:30,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:17:30,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:17:30,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:17:30,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:17:30,555.555 INFO    ] time= 22/06/2026 17:17:30
[2026-06-22 17:17:30,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:17:30,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:17:30,760.760 INFO    ] No existing commands found in stream
[2026-06-22 17:17:35,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:17:35,783.783 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-22 17:17:37,204.204 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:17:37,206.206 INFO    ] Checking for system updates...
[2026-06-22 17:17:37,243.243 INFO    ] 200
[2026-06-22 17:17:37,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:17:37,298.298 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:17:37,301.301 INFO    ] No update needed
[2026-06-22 17:17:37,303.303 INFO    ] Checking for camera pi updates...
[2026-06-22 17:17:37,337.337 INFO    ] 200
[2026-06-22 17:17:37,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:17:37,381.381 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:17:37,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:17:37,449.449 INFO    ] No camera update needed
[2026-06-22 17:17:37,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:17:37,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:17:37,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:17:37,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:17:39,506.506 INFO    ] ================================================
[2026-06-22 17:17:39,522.522 INFO    ] Launching Daemon at Mon Jun 22 17:17:39 IST 2026
[2026-06-22 17:17:39,533.533 INFO    ] ================================================
[2026-06-22 17:17:40,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:17:40
[2026-06-22 17:17:40,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:17:41,066.066 INFO    ] Initializing speech engine...
[2026-06-22 17:17:41,072.072 INFO    ] 2026-06-22 17:17:41
[2026-06-22 17:17:41,380.380 INFO    ] 2026-06-22 17:17:41
[2026-06-22 17:17:41,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:17:41,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:17:41,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:17:41,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:17:41,891.891 INFO    ] time= 22/06/2026 17:17:41
[2026-06-22 17:17:41,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:17:41,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:17:42,047.047 INFO    ] No existing commands found in stream
[2026-06-22 17:17:47,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:17:47,074.074 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-22 17:17:49,876.876 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:17:49,879.879 INFO    ] Checking for system updates...
[2026-06-22 17:17:49,918.918 INFO    ] 200
[2026-06-22 17:17:49,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:17:49,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:17:49,977.977 INFO    ] No update needed
[2026-06-22 17:17:49,980.980 INFO    ] Checking for camera pi updates...
[2026-06-22 17:17:50,014.014 INFO    ] 200
[2026-06-22 17:17:50,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:17:50,060.060 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:17:50,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:17:50,168.168 INFO    ] No camera update needed
[2026-06-22 17:17:50,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:17:50,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:17:50,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:17:50,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:17:52,226.226 INFO    ] ================================================
[2026-06-22 17:17:52,241.241 INFO    ] Launching Daemon at Mon Jun 22 17:17:52 IST 2026
[2026-06-22 17:17:52,251.251 INFO    ] ================================================
[2026-06-22 17:17:52,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:17:52
[2026-06-22 17:17:53,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:17:53,726.726 INFO    ] Initializing speech engine...
[2026-06-22 17:17:53,737.737 INFO    ] 2026-06-22 17:17:53
[2026-06-22 17:17:53,986.986 INFO    ] 2026-06-22 17:17:53
[2026-06-22 17:17:54,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:17:54,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:17:54,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:17:54,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:17:54,543.543 INFO    ] time= 22/06/2026 17:17:54
[2026-06-22 17:17:54,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:17:54,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:17:54,687.687 INFO    ] No existing commands found in stream
[2026-06-22 17:17:59,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:17:59,707.707 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-22 17:18:00,691.691 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:18:00,692.692 INFO    ] Checking for system updates...
[2026-06-22 17:18:00,714.714 INFO    ] 200
[2026-06-22 17:18:00,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:18:00,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:18:00,748.748 INFO    ] No update needed
[2026-06-22 17:18:00,749.749 INFO    ] Checking for camera pi updates...
[2026-06-22 17:18:00,777.777 INFO    ] 200
[2026-06-22 17:18:00,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:18:00,820.820 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:18:00,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:18:00,872.872 INFO    ] No camera update needed
[2026-06-22 17:18:00,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:18:00,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:18:00,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:18:00,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:18:02,930.930 INFO    ] ================================================
[2026-06-22 17:18:02,946.946 INFO    ] Launching Daemon at Mon Jun 22 17:18:02 IST 2026
[2026-06-22 17:18:02,957.957 INFO    ] ================================================
[2026-06-22 17:18:03,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:18:03
[2026-06-22 17:18:04,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:18:04,387.387 INFO    ] Initializing speech engine...
[2026-06-22 17:18:04,397.397 INFO    ] 2026-06-22 17:18:04
[2026-06-22 17:18:04,644.644 INFO    ] 2026-06-22 17:18:04
[2026-06-22 17:18:04,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:18:04,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:18:04,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:18:05,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:18:05,203.203 INFO    ] time= 22/06/2026 17:18:05
[2026-06-22 17:18:05,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:18:05,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:18:05,348.348 INFO    ] No existing commands found in stream
[2026-06-22 17:18:10,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:18:10,372.372 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-22 17:18:12,670.670 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:18:12,672.672 INFO    ] Checking for system updates...
[2026-06-22 17:18:12,709.709 INFO    ] 200
[2026-06-22 17:18:12,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:18:12,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:18:12,771.771 INFO    ] No update needed
[2026-06-22 17:18:12,774.774 INFO    ] Checking for camera pi updates...
[2026-06-22 17:18:12,810.810 INFO    ] 200
[2026-06-22 17:18:12,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:18:12,860.860 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:18:12,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:18:12,946.946 INFO    ] No camera update needed
[2026-06-22 17:18:12,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:18:12,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:18:12,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:18:12,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:18:15,001.001 INFO    ] ================================================
[2026-06-22 17:18:15,017.017 INFO    ] Launching Daemon at Mon Jun 22 17:18:15 IST 2026
[2026-06-22 17:18:15,027.027 INFO    ] ================================================
[2026-06-22 17:18:15,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:18:15
[2026-06-22 17:18:16,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:18:16,451.451 INFO    ] Initializing speech engine...
[2026-06-22 17:18:16,456.456 INFO    ] 2026-06-22 17:18:16
[2026-06-22 17:18:16,753.753 INFO    ] 2026-06-22 17:18:16
[2026-06-22 17:18:16,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:18:17,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:18:17,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:18:17,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:18:17,268.268 INFO    ] time= 22/06/2026 17:18:17
[2026-06-22 17:18:17,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:18:17,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:18:17,440.440 INFO    ] No existing commands found in stream
[2026-06-22 17:18:22,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:18:22,475.475 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-22 17:18:23,551.551 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:18:23,553.553 INFO    ] Checking for system updates...
[2026-06-22 17:18:23,584.584 INFO    ] 200
[2026-06-22 17:18:23,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:18:23,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:18:23,644.644 INFO    ] No update needed
[2026-06-22 17:18:23,647.647 INFO    ] Checking for camera pi updates...
[2026-06-22 17:18:23,682.682 INFO    ] 200
[2026-06-22 17:18:23,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:18:23,727.727 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:18:23,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:18:23,801.801 INFO    ] No camera update needed
[2026-06-22 17:18:23,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:18:23,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:18:23,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:18:23,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:18:25,860.860 INFO    ] ================================================
[2026-06-22 17:18:25,875.875 INFO    ] Launching Daemon at Mon Jun 22 17:18:25 IST 2026
[2026-06-22 17:18:25,885.885 INFO    ] ================================================
[2026-06-22 17:18:26,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:18:26
[2026-06-22 17:18:27,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:18:27,314.314 INFO    ] Initializing speech engine...
[2026-06-22 17:18:27,334.334 INFO    ] 2026-06-22 17:18:27
[2026-06-22 17:18:27,587.587 INFO    ] 2026-06-22 17:18:27
[2026-06-22 17:18:27,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:18:27,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:18:27,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:18:28,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:18:28,096.096 INFO    ] time= 22/06/2026 17:18:28
[2026-06-22 17:18:28,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:18:28,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:18:28,293.293 INFO    ] No existing commands found in stream
[2026-06-22 17:18:33,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:18:33,322.322 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-22 17:18:37,826.826 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:18:37,828.828 INFO    ] Checking for system updates...
[2026-06-22 17:18:37,869.869 INFO    ] 200
[2026-06-22 17:18:37,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:18:37,926.926 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:18:37,928.928 INFO    ] No update needed
[2026-06-22 17:18:37,931.931 INFO    ] Checking for camera pi updates...
[2026-06-22 17:18:37,965.965 INFO    ] 200
[2026-06-22 17:18:37,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:18:38,010.010 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:18:38,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:18:38,094.094 INFO    ] No camera update needed
[2026-06-22 17:18:38,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:18:38,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:18:38,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:18:38,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:18:40,150.150 INFO    ] ================================================
[2026-06-22 17:18:40,166.166 INFO    ] Launching Daemon at Mon Jun 22 17:18:40 IST 2026
[2026-06-22 17:18:40,176.176 INFO    ] ================================================
[2026-06-22 17:18:40,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:18:40
[2026-06-22 17:18:41,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:18:41,685.685 INFO    ] Initializing speech engine...
[2026-06-22 17:18:41,691.691 INFO    ] 2026-06-22 17:18:41
[2026-06-22 17:18:41,998.998 INFO    ] 2026-06-22 17:18:41
[2026-06-22 17:18:42,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:18:42,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:18:42,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:18:42,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:18:42,511.511 INFO    ] time= 22/06/2026 17:18:42
[2026-06-22 17:18:42,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:18:42,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:18:42,677.677 INFO    ] No existing commands found in stream
[2026-06-22 17:18:47,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:18:47,705.705 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-22 17:18:48,630.630 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:18:48,633.633 INFO    ] Checking for system updates...
[2026-06-22 17:18:48,671.671 INFO    ] 200
[2026-06-22 17:18:48,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:18:48,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:18:48,732.732 INFO    ] No update needed
[2026-06-22 17:18:48,734.734 INFO    ] Checking for camera pi updates...
[2026-06-22 17:18:48,768.768 INFO    ] 200
[2026-06-22 17:18:48,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:18:48,812.812 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:18:48,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:18:48,894.894 INFO    ] No camera update needed
[2026-06-22 17:18:48,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:18:48,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:18:48,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:18:48,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:18:50,949.949 INFO    ] ================================================
[2026-06-22 17:18:50,965.965 INFO    ] Launching Daemon at Mon Jun 22 17:18:50 IST 2026
[2026-06-22 17:18:50,975.975 INFO    ] ================================================
[2026-06-22 17:18:51,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:18:51
[2026-06-22 17:18:52,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:18:52,370.370 INFO    ] Initializing speech engine...
[2026-06-22 17:18:52,379.379 INFO    ] 2026-06-22 17:18:52
[2026-06-22 17:18:52,640.640 INFO    ] 2026-06-22 17:18:52
[2026-06-22 17:18:52,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:18:52,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:18:52,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:18:53,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:18:53,100.100 INFO    ] time= 22/06/2026 17:18:53
[2026-06-22 17:18:53,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:18:53,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:18:53,315.315 INFO    ] No existing commands found in stream
[2026-06-22 17:18:58,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:18:58,348.348 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-22 17:19:02,786.786 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:19:02,790.790 INFO    ] Checking for system updates...
[2026-06-22 17:19:02,831.831 INFO    ] 200
[2026-06-22 17:19:02,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:19:02,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:19:02,905.905 INFO    ] No update needed
[2026-06-22 17:19:02,909.909 INFO    ] Checking for camera pi updates...
[2026-06-22 17:19:02,950.950 INFO    ] 200
[2026-06-22 17:19:02,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:19:03,002.002 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:19:03,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:19:03,107.107 INFO    ] No camera update needed
[2026-06-22 17:19:03,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:19:03,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:19:03,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:19:03,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:19:05,171.171 INFO    ] ================================================
[2026-06-22 17:19:05,187.187 INFO    ] Launching Daemon at Mon Jun 22 17:19:05 IST 2026
[2026-06-22 17:19:05,198.198 INFO    ] ================================================
[2026-06-22 17:19:05,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:19:05
[2026-06-22 17:19:06,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:19:06,799.799 INFO    ] Initializing speech engine...
[2026-06-22 17:19:06,806.806 INFO    ] 2026-06-22 17:19:06
[2026-06-22 17:19:07,024.024 INFO    ] 2026-06-22 17:19:07
[2026-06-22 17:19:07,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:19:07,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:19:07,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:19:07,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:19:07,683.683 INFO    ] time= 22/06/2026 17:19:07
[2026-06-22 17:19:07,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:19:07,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:19:07,906.906 INFO    ] No existing commands found in stream
[2026-06-22 17:19:12,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:19:12,939.939 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-22 17:19:16,894.894 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:19:16,897.897 INFO    ] Checking for system updates...
[2026-06-22 17:19:16,934.934 INFO    ] 200
[2026-06-22 17:19:16,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:19:16,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:19:16,992.992 INFO    ] No update needed
[2026-06-22 17:19:16,994.994 INFO    ] Checking for camera pi updates...
[2026-06-22 17:19:17,032.032 INFO    ] 200
[2026-06-22 17:19:17,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:19:17,075.075 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:19:17,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:19:17,158.158 INFO    ] No camera update needed
[2026-06-22 17:19:17,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:19:17,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:19:17,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:19:17,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:19:19,213.213 INFO    ] ================================================
[2026-06-22 17:19:19,229.229 INFO    ] Launching Daemon at Mon Jun 22 17:19:19 IST 2026
[2026-06-22 17:19:19,240.240 INFO    ] ================================================
[2026-06-22 17:19:19,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:19:19
[2026-06-22 17:19:20,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:19:20,678.678 INFO    ] Initializing speech engine...
[2026-06-22 17:19:20,685.685 INFO    ] 2026-06-22 17:19:20
[2026-06-22 17:19:20,933.933 INFO    ] 2026-06-22 17:19:20
[2026-06-22 17:19:20,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:19:21,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:19:21,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:19:21,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:19:21,398.398 INFO    ] time= 22/06/2026 17:19:21
[2026-06-22 17:19:21,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:19:21,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:19:21,670.670 INFO    ] No existing commands found in stream
[2026-06-22 17:19:26,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:19:26,709.709 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-22 17:19:31,082.082 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:19:31,085.085 INFO    ] Checking for system updates...
[2026-06-22 17:19:31,125.125 INFO    ] 200
[2026-06-22 17:19:31,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:19:31,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:19:31,191.191 INFO    ] No update needed
[2026-06-22 17:19:31,193.193 INFO    ] Checking for camera pi updates...
[2026-06-22 17:19:31,226.226 INFO    ] 200
[2026-06-22 17:19:31,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:19:31,269.269 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:19:31,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:19:31,441.441 INFO    ] No camera update needed
[2026-06-22 17:19:31,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:19:31,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:19:31,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:19:31,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:19:33,497.497 INFO    ] ================================================
[2026-06-22 17:19:33,513.513 INFO    ] Launching Daemon at Mon Jun 22 17:19:33 IST 2026
[2026-06-22 17:19:33,523.523 INFO    ] ================================================
[2026-06-22 17:19:34,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:19:34
[2026-06-22 17:19:34,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:19:35,062.062 INFO    ] Initializing speech engine...
[2026-06-22 17:19:35,068.068 INFO    ] 2026-06-22 17:19:35
[2026-06-22 17:19:35,305.305 INFO    ] 2026-06-22 17:19:35
[2026-06-22 17:19:35,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:19:35,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:19:35,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:19:35,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:19:35,878.878 INFO    ] time= 22/06/2026 17:19:35
[2026-06-22 17:19:35,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:19:35,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:19:36,039.039 INFO    ] No existing commands found in stream
[2026-06-22 17:19:41,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:19:41,073.073 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-22 17:19:41,909.909 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:19:41,911.911 INFO    ] Checking for system updates...
[2026-06-22 17:19:41,932.932 INFO    ] 200
[2026-06-22 17:19:41,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:19:41,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:19:41,974.974 INFO    ] No update needed
[2026-06-22 17:19:41,976.976 INFO    ] Checking for camera pi updates...
[2026-06-22 17:19:42,012.012 INFO    ] 200
[2026-06-22 17:19:42,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:19:42,061.061 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:19:42,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:19:42,151.151 INFO    ] No camera update needed
[2026-06-22 17:19:42,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:19:42,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:19:42,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:19:42,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:19:44,210.210 INFO    ] ================================================
[2026-06-22 17:19:44,225.225 INFO    ] Launching Daemon at Mon Jun 22 17:19:44 IST 2026
[2026-06-22 17:19:44,236.236 INFO    ] ================================================
[2026-06-22 17:19:44,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:19:44
[2026-06-22 17:19:45,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:19:45,653.653 INFO    ] Initializing speech engine...
[2026-06-22 17:19:45,661.661 INFO    ] 2026-06-22 17:19:45
[2026-06-22 17:19:45,910.910 INFO    ] 2026-06-22 17:19:45
[2026-06-22 17:19:45,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:19:46,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:19:46,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:19:46,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:19:46,423.423 INFO    ] time= 22/06/2026 17:19:46
[2026-06-22 17:19:46,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:19:46,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:19:46,564.564 INFO    ] No existing commands found in stream
[2026-06-22 17:19:51,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:19:51,593.593 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-22 17:19:52,581.581 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:19:52,584.584 INFO    ] Checking for system updates...
[2026-06-22 17:19:52,621.621 INFO    ] 200
[2026-06-22 17:19:52,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:19:52,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:19:52,687.687 INFO    ] No update needed
[2026-06-22 17:19:52,690.690 INFO    ] Checking for camera pi updates...
[2026-06-22 17:19:52,724.724 INFO    ] 200
[2026-06-22 17:19:52,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:19:52,773.773 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:19:52,860.860 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:19:52,863.863 INFO    ] No camera update needed
[2026-06-22 17:19:52,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:19:52,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:19:52,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:19:52,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:19:54,922.922 INFO    ] ================================================
[2026-06-22 17:19:54,937.937 INFO    ] Launching Daemon at Mon Jun 22 17:19:54 IST 2026
[2026-06-22 17:19:54,948.948 INFO    ] ================================================
[2026-06-22 17:19:55,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:19:55
[2026-06-22 17:19:56,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:19:56,577.577 INFO    ] Initializing speech engine...
[2026-06-22 17:19:56,587.587 INFO    ] 2026-06-22 17:19:56
[2026-06-22 17:19:56,867.867 INFO    ] 2026-06-22 17:19:56
[2026-06-22 17:19:56,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:19:57,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:19:57,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:19:57,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:19:57,399.399 INFO    ] time= 22/06/2026 17:19:57
[2026-06-22 17:19:57,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:19:57,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:19:57,578.578 INFO    ] No existing commands found in stream
[2026-06-22 17:20:02,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:20:02,619.619 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-22 17:20:06,288.288 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:20:06,291.291 INFO    ] Checking for system updates...
[2026-06-22 17:20:06,330.330 INFO    ] 200
[2026-06-22 17:20:06,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:20:06,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:20:06,389.389 INFO    ] No update needed
[2026-06-22 17:20:06,392.392 INFO    ] Checking for camera pi updates...
[2026-06-22 17:20:06,427.427 INFO    ] 200
[2026-06-22 17:20:06,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:20:06,477.477 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:20:06,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:20:06,607.607 INFO    ] No camera update needed
[2026-06-22 17:20:06,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:20:06,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:20:06,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:20:06,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:20:08,662.662 INFO    ] ================================================
[2026-06-22 17:20:08,677.677 INFO    ] Launching Daemon at Mon Jun 22 17:20:08 IST 2026
[2026-06-22 17:20:08,688.688 INFO    ] ================================================
[2026-06-22 17:20:09,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:20:09
[2026-06-22 17:20:09,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:20:10,097.097 INFO    ] Initializing speech engine...
[2026-06-22 17:20:10,106.106 INFO    ] 2026-06-22 17:20:10
[2026-06-22 17:20:10,354.354 INFO    ] 2026-06-22 17:20:10
[2026-06-22 17:20:10,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:20:10,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:20:10,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:20:10,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:20:10,728.728 INFO    ] time= 22/06/2026 17:20:10
[2026-06-22 17:20:10,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:20:10,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:20:10,923.923 INFO    ] No existing commands found in stream
[2026-06-22 17:20:15,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:20:15,937.937 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-22 17:20:16,471.471 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:20:16,474.474 INFO    ] Checking for system updates...
[2026-06-22 17:20:16,509.509 INFO    ] 200
[2026-06-22 17:20:16,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:20:16,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:20:16,568.568 INFO    ] No update needed
[2026-06-22 17:20:16,571.571 INFO    ] Checking for camera pi updates...
[2026-06-22 17:20:16,605.605 INFO    ] 200
[2026-06-22 17:20:16,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:20:16,651.651 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:20:16,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:20:16,747.747 INFO    ] No camera update needed
[2026-06-22 17:20:16,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:20:16,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:20:16,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:20:16,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:20:18,802.802 INFO    ] ================================================
[2026-06-22 17:20:18,818.818 INFO    ] Launching Daemon at Mon Jun 22 17:20:18 IST 2026
[2026-06-22 17:20:18,829.829 INFO    ] ================================================
[2026-06-22 17:20:19,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:20:19
[2026-06-22 17:20:20,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:20:20,364.364 INFO    ] Initializing speech engine...
[2026-06-22 17:20:20,372.372 INFO    ] 2026-06-22 17:20:20
[2026-06-22 17:20:20,659.659 INFO    ] 2026-06-22 17:20:20
[2026-06-22 17:20:20,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:20:20,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:20:20,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:20:21,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:20:21,214.214 INFO    ] time= 22/06/2026 17:20:21
[2026-06-22 17:20:21,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:20:21,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:20:21,376.376 INFO    ] No existing commands found in stream
[2026-06-22 17:20:26,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:20:26,410.410 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-22 17:20:28,244.244 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:20:28,247.247 INFO    ] Checking for system updates...
[2026-06-22 17:20:28,288.288 INFO    ] 200
[2026-06-22 17:20:28,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:20:28,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:20:28,356.356 INFO    ] No update needed
[2026-06-22 17:20:28,359.359 INFO    ] Checking for camera pi updates...
[2026-06-22 17:20:28,394.394 INFO    ] 200
[2026-06-22 17:20:28,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:20:28,445.445 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:20:28,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:20:28,536.536 INFO    ] No camera update needed
[2026-06-22 17:20:28,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:20:28,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:20:28,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:20:28,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:20:30,592.592 INFO    ] ================================================
[2026-06-22 17:20:30,608.608 INFO    ] Launching Daemon at Mon Jun 22 17:20:30 IST 2026
[2026-06-22 17:20:30,619.619 INFO    ] ================================================
[2026-06-22 17:20:31,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:20:31
[2026-06-22 17:20:31,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:20:32,066.066 INFO    ] Initializing speech engine...
[2026-06-22 17:20:32,090.090 INFO    ] 2026-06-22 17:20:32
[2026-06-22 17:20:32,389.389 INFO    ] 2026-06-22 17:20:32
[2026-06-22 17:20:32,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:20:32,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:20:32,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:20:32,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:20:32,762.762 INFO    ] time= 22/06/2026 17:20:32
[2026-06-22 17:20:32,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:20:32,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:20:32,977.977 INFO    ] No existing commands found in stream
[2026-06-22 17:20:38,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:20:38,009.009 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-22 17:20:39,522.522 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:20:39,525.525 INFO    ] Checking for system updates...
[2026-06-22 17:20:39,568.568 INFO    ] 200
[2026-06-22 17:20:39,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:20:39,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:20:39,628.628 INFO    ] No update needed
[2026-06-22 17:20:39,631.631 INFO    ] Checking for camera pi updates...
[2026-06-22 17:20:39,666.666 INFO    ] 200
[2026-06-22 17:20:39,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:20:39,717.717 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:20:39,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:20:39,827.827 INFO    ] No camera update needed
[2026-06-22 17:20:39,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:20:39,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:20:39,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:20:39,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:20:41,882.882 INFO    ] ================================================
[2026-06-22 17:20:41,899.899 INFO    ] Launching Daemon at Mon Jun 22 17:20:41 IST 2026
[2026-06-22 17:20:41,911.911 INFO    ] ================================================
[2026-06-22 17:20:42,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:20:42
[2026-06-22 17:20:42,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:20:43,229.229 INFO    ] Initializing speech engine...
[2026-06-22 17:20:43,236.236 INFO    ] 2026-06-22 17:20:43
[2026-06-22 17:20:43,541.541 INFO    ] 2026-06-22 17:20:43
[2026-06-22 17:20:43,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:20:43,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:20:43,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:20:43,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:20:43,970.970 INFO    ] time= 22/06/2026 17:20:43
[2026-06-22 17:20:43,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:20:43,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:20:44,122.122 INFO    ] No existing commands found in stream
[2026-06-22 17:20:49,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:20:49,149.149 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-22 17:20:50,870.870 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:20:50,872.872 INFO    ] Checking for system updates...
[2026-06-22 17:20:50,914.914 INFO    ] 200
[2026-06-22 17:20:50,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:20:50,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:20:50,986.986 INFO    ] No update needed
[2026-06-22 17:20:50,988.988 INFO    ] Checking for camera pi updates...
[2026-06-22 17:20:51,021.021 INFO    ] 200
[2026-06-22 17:20:51,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:20:51,070.070 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:20:51,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:20:51,139.139 INFO    ] No camera update needed
[2026-06-22 17:20:51,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:20:51,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:20:51,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:20:51,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:20:53,196.196 INFO    ] ================================================
[2026-06-22 17:20:53,212.212 INFO    ] Launching Daemon at Mon Jun 22 17:20:53 IST 2026
[2026-06-22 17:20:53,224.224 INFO    ] ================================================
[2026-06-22 17:20:53,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:20:53
[2026-06-22 17:20:54,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:20:54,589.589 INFO    ] Initializing speech engine...
[2026-06-22 17:20:54,598.598 INFO    ] 2026-06-22 17:20:54
[2026-06-22 17:20:54,901.901 INFO    ] 2026-06-22 17:20:54
[2026-06-22 17:20:54,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:20:55,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:20:55,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:20:55,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:20:55,413.413 INFO    ] time= 22/06/2026 17:20:55
[2026-06-22 17:20:55,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:20:55,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:20:55,620.620 INFO    ] No existing commands found in stream
[2026-06-22 17:21:00,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:21:00,636.636 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-22 17:21:04,932.932 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:21:04,934.934 INFO    ] Checking for system updates...
[2026-06-22 17:21:04,974.974 INFO    ] 200
[2026-06-22 17:21:04,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:21:05,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:21:05,033.033 INFO    ] No update needed
[2026-06-22 17:21:05,036.036 INFO    ] Checking for camera pi updates...
[2026-06-22 17:21:05,070.070 INFO    ] 200
[2026-06-22 17:21:05,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:21:05,112.112 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:21:05,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:21:05,198.198 INFO    ] No camera update needed
[2026-06-22 17:21:05,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:21:05,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:21:05,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:21:05,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:21:07,261.261 INFO    ] ================================================
[2026-06-22 17:21:07,276.276 INFO    ] Launching Daemon at Mon Jun 22 17:21:07 IST 2026
[2026-06-22 17:21:07,287.287 INFO    ] ================================================
[2026-06-22 17:21:07,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:21:07
[2026-06-22 17:21:08,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:21:08,899.899 INFO    ] Initializing speech engine...
[2026-06-22 17:21:08,907.907 INFO    ] 2026-06-22 17:21:08
[2026-06-22 17:21:09,196.196 INFO    ] 2026-06-22 17:21:09
[2026-06-22 17:21:09,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:21:09,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:21:09,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:21:09,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:21:09,676.676 INFO    ] time= 22/06/2026 17:21:09
[2026-06-22 17:21:09,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:21:09,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:21:09,880.880 INFO    ] No existing commands found in stream
[2026-06-22 17:21:14,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:21:14,910.910 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-22 17:21:16,311.311 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:21:16,315.315 INFO    ] Checking for system updates...
[2026-06-22 17:21:16,358.358 INFO    ] 200
[2026-06-22 17:21:16,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:21:16,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:21:16,421.421 INFO    ] No update needed
[2026-06-22 17:21:16,423.423 INFO    ] Checking for camera pi updates...
[2026-06-22 17:21:16,464.464 INFO    ] 200
[2026-06-22 17:21:16,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:21:16,510.510 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:21:16,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:21:16,607.607 INFO    ] No camera update needed
[2026-06-22 17:21:16,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:21:16,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:21:16,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:21:16,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:21:18,668.668 INFO    ] ================================================
[2026-06-22 17:21:18,683.683 INFO    ] Launching Daemon at Mon Jun 22 17:21:18 IST 2026
[2026-06-22 17:21:18,695.695 INFO    ] ================================================
[2026-06-22 17:21:19,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:21:19
[2026-06-22 17:21:19,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:21:20,210.210 INFO    ] Initializing speech engine...
[2026-06-22 17:21:20,219.219 INFO    ] 2026-06-22 17:21:20
[2026-06-22 17:21:20,484.484 INFO    ] 2026-06-22 17:21:20
[2026-06-22 17:21:20,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:21:20,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:21:20,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:21:20,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:21:20,995.995 INFO    ] time= 22/06/2026 17:21:20
[2026-06-22 17:21:21,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:21:21,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:21:21,191.191 INFO    ] No existing commands found in stream
[2026-06-22 17:21:26,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:21:26,215.215 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-22 17:21:30,135.135 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:21:30,138.138 INFO    ] Checking for system updates...
[2026-06-22 17:21:30,178.178 INFO    ] 200
[2026-06-22 17:21:30,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:21:30,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:21:30,236.236 INFO    ] No update needed
[2026-06-22 17:21:30,238.238 INFO    ] Checking for camera pi updates...
[2026-06-22 17:21:30,277.277 INFO    ] 200
[2026-06-22 17:21:30,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:21:30,320.320 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:21:30,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:21:30,388.388 INFO    ] No camera update needed
[2026-06-22 17:21:30,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:21:30,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:21:30,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:21:30,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:21:32,449.449 INFO    ] ================================================
[2026-06-22 17:21:32,469.469 INFO    ] Launching Daemon at Mon Jun 22 17:21:32 IST 2026
[2026-06-22 17:21:32,481.481 INFO    ] ================================================
[2026-06-22 17:21:33,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:21:33
[2026-06-22 17:21:33,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:21:33,947.947 INFO    ] Initializing speech engine...
[2026-06-22 17:21:33,956.956 INFO    ] 2026-06-22 17:21:33
[2026-06-22 17:21:34,216.216 INFO    ] 2026-06-22 17:21:34
[2026-06-22 17:21:34,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:21:34,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:21:34,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:21:34,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:21:34,670.670 INFO    ] time= 22/06/2026 17:21:34
[2026-06-22 17:21:34,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:21:34,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:21:34,913.913 INFO    ] No existing commands found in stream
[2026-06-22 17:21:39,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:21:39,930.930 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-22 17:21:42,270.270 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:21:42,272.272 INFO    ] Checking for system updates...
[2026-06-22 17:21:42,295.295 INFO    ] 200
[2026-06-22 17:21:42,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:21:42,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:21:42,337.337 INFO    ] No update needed
[2026-06-22 17:21:42,339.339 INFO    ] Checking for camera pi updates...
[2026-06-22 17:21:42,374.374 INFO    ] 200
[2026-06-22 17:21:42,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:21:42,419.419 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:21:42,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:21:42,602.602 INFO    ] No camera update needed
[2026-06-22 17:21:42,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:21:42,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:21:42,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:21:42,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:21:44,666.666 INFO    ] ================================================
[2026-06-22 17:21:44,682.682 INFO    ] Launching Daemon at Mon Jun 22 17:21:44 IST 2026
[2026-06-22 17:21:44,693.693 INFO    ] ================================================
[2026-06-22 17:21:45,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:21:45
[2026-06-22 17:21:46,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:21:46,343.343 INFO    ] Initializing speech engine...
[2026-06-22 17:21:46,355.355 INFO    ] 2026-06-22 17:21:46
[2026-06-22 17:21:46,641.641 INFO    ] 2026-06-22 17:21:46
[2026-06-22 17:21:46,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:21:46,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:21:46,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:21:47,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:21:47,172.172 INFO    ] time= 22/06/2026 17:21:47
[2026-06-22 17:21:47,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:21:47,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:21:47,329.329 INFO    ] No existing commands found in stream
[2026-06-22 17:21:52,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:21:52,368.368 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-22 17:21:55,937.937 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:21:55,938.938 INFO    ] Checking for system updates...
[2026-06-22 17:21:55,960.960 INFO    ] 200
[2026-06-22 17:21:55,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:21:55,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:21:55,996.996 INFO    ] No update needed
[2026-06-22 17:21:55,997.997 INFO    ] Checking for camera pi updates...
[2026-06-22 17:21:56,017.017 INFO    ] 200
[2026-06-22 17:21:56,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:21:56,046.046 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:21:56,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:21:56,128.128 INFO    ] No camera update needed
[2026-06-22 17:21:56,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:21:56,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:21:56,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:21:56,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:21:58,185.185 INFO    ] ================================================
[2026-06-22 17:21:58,201.201 INFO    ] Launching Daemon at Mon Jun 22 17:21:58 IST 2026
[2026-06-22 17:21:58,212.212 INFO    ] ================================================
[2026-06-22 17:21:58,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:21:58
[2026-06-22 17:21:59,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:21:59,629.629 INFO    ] Initializing speech engine...
[2026-06-22 17:21:59,635.635 INFO    ] 2026-06-22 17:21:59
[2026-06-22 17:21:59,933.933 INFO    ] 2026-06-22 17:21:59
[2026-06-22 17:21:59,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:22:00,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:22:00,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:22:00,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:22:00,421.421 INFO    ] time= 22/06/2026 17:22:00
[2026-06-22 17:22:00,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:22:00,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:22:00,600.600 INFO    ] No existing commands found in stream
[2026-06-22 17:22:05,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:22:05,626.626 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-22 17:22:09,475.475 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:22:09,477.477 INFO    ] Checking for system updates...
[2026-06-22 17:22:09,498.498 INFO    ] 200
[2026-06-22 17:22:09,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:22:09,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:22:09,534.534 INFO    ] No update needed
[2026-06-22 17:22:09,535.535 INFO    ] Checking for camera pi updates...
[2026-06-22 17:22:09,558.558 INFO    ] 200
[2026-06-22 17:22:09,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:22:09,606.606 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:22:09,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:22:09,695.695 INFO    ] No camera update needed
[2026-06-22 17:22:09,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:22:09,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:22:09,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:22:09,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:22:11,759.759 INFO    ] ================================================
[2026-06-22 17:22:11,774.774 INFO    ] Launching Daemon at Mon Jun 22 17:22:11 IST 2026
[2026-06-22 17:22:11,785.785 INFO    ] ================================================
[2026-06-22 17:22:12,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:22:12
[2026-06-22 17:22:12,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:22:13,182.182 INFO    ] Initializing speech engine...
[2026-06-22 17:22:13,191.191 INFO    ] 2026-06-22 17:22:13
[2026-06-22 17:22:13,466.466 INFO    ] 2026-06-22 17:22:13
[2026-06-22 17:22:13,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:22:13,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:22:13,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:22:13,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:22:14,035.035 INFO    ] time= 22/06/2026 17:22:13
[2026-06-22 17:22:14,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:22:14,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:22:14,191.191 INFO    ] No existing commands found in stream
[2026-06-22 17:22:19,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:22:19,208.208 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-22 17:22:20,981.981 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:22:20,984.984 INFO    ] Checking for system updates...
[2026-06-22 17:22:21,024.024 INFO    ] 200
[2026-06-22 17:22:21,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:22:21,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:22:21,089.089 INFO    ] No update needed
[2026-06-22 17:22:21,091.091 INFO    ] Checking for camera pi updates...
[2026-06-22 17:22:21,129.129 INFO    ] 200
[2026-06-22 17:22:21,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:22:21,177.177 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:22:21,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:22:21,254.254 INFO    ] No camera update needed
[2026-06-22 17:22:21,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:22:21,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:22:21,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:22:21,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:22:23,310.310 INFO    ] ================================================
[2026-06-22 17:22:23,325.325 INFO    ] Launching Daemon at Mon Jun 22 17:22:23 IST 2026
[2026-06-22 17:22:23,338.338 INFO    ] ================================================
[2026-06-22 17:22:23,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:22:23
[2026-06-22 17:22:24,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:22:24,651.651 INFO    ] Initializing speech engine...
[2026-06-22 17:22:24,675.675 INFO    ] 2026-06-22 17:22:24
[2026-06-22 17:22:24,935.935 INFO    ] 2026-06-22 17:22:24
[2026-06-22 17:22:24,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:22:25,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:22:25,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:22:25,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:22:25,423.423 INFO    ] time= 22/06/2026 17:22:25
[2026-06-22 17:22:25,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:22:25,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:22:25,653.653 INFO    ] No existing commands found in stream
[2026-06-22 17:22:30,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:22:30,678.678 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-22 17:22:32,296.296 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:22:32,299.299 INFO    ] Checking for system updates...
[2026-06-22 17:22:32,341.341 INFO    ] 200
[2026-06-22 17:22:32,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 17:22:32,347.347 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-22 17:22:32,350.350 INFO    ] Checking for camera pi updates...
[2026-06-22 17:22:32,406.406 INFO    ] 200
[2026-06-22 17:22:32,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 17:22:32,411.411 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-22 17:22:32,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:22:32,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:22:32,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:22:32,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:22:34,491.491 INFO    ] ================================================
[2026-06-22 17:22:34,507.507 INFO    ] Launching Daemon at Mon Jun 22 17:22:34 IST 2026
[2026-06-22 17:22:34,519.519 INFO    ] ================================================
[2026-06-22 17:22:35,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:22:35
[2026-06-22 17:22:35,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:22:36,001.001 INFO    ] Initializing speech engine...
[2026-06-22 17:22:36,009.009 INFO    ] 2026-06-22 17:22:36
[2026-06-22 17:22:36,259.259 INFO    ] 2026-06-22 17:22:36
[2026-06-22 17:22:36,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:22:36,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:22:36,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:22:36,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:22:36,714.714 INFO    ] time= 22/06/2026 17:22:36
[2026-06-22 17:22:36,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:22:36,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:22:36,980.980 INFO    ] No existing commands found in stream
[2026-06-22 17:22:41,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:22:41,999.999 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-22 17:22:44,733.733 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:22:44,735.735 INFO    ] Checking for system updates...
[2026-06-22 17:22:44,756.756 INFO    ] 200
[2026-06-22 17:22:44,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:22:44,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:22:44,802.802 INFO    ] No update needed
[2026-06-22 17:22:44,805.805 INFO    ] Checking for camera pi updates...
[2026-06-22 17:22:44,839.839 INFO    ] 200
[2026-06-22 17:22:44,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:22:44,886.886 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:22:44,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:22:44,979.979 INFO    ] No camera update needed
[2026-06-22 17:22:44,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:22:44,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:22:44,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:22:44,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:22:47,040.040 INFO    ] ================================================
[2026-06-22 17:22:47,056.056 INFO    ] Launching Daemon at Mon Jun 22 17:22:47 IST 2026
[2026-06-22 17:22:47,067.067 INFO    ] ================================================
[2026-06-22 17:22:47,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:22:47
[2026-06-22 17:22:48,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:22:48,687.687 INFO    ] Initializing speech engine...
[2026-06-22 17:22:48,694.694 INFO    ] 2026-06-22 17:22:48
[2026-06-22 17:22:48,966.966 INFO    ] 2026-06-22 17:22:48
[2026-06-22 17:22:49,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:22:49,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:22:49,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:22:49,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:22:49,446.446 INFO    ] time= 22/06/2026 17:22:49
[2026-06-22 17:22:49,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:22:49,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:22:49,673.673 INFO    ] No existing commands found in stream
[2026-06-22 17:22:54,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:22:54,708.708 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-22 17:22:59,076.076 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:22:59,079.079 INFO    ] Checking for system updates...
[2026-06-22 17:22:59,121.121 INFO    ] 200
[2026-06-22 17:22:59,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:22:59,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:22:59,188.188 INFO    ] No update needed
[2026-06-22 17:22:59,191.191 INFO    ] Checking for camera pi updates...
[2026-06-22 17:22:59,228.228 INFO    ] 200
[2026-06-22 17:22:59,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:22:59,277.277 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:22:59,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:22:59,360.360 INFO    ] No camera update needed
[2026-06-22 17:22:59,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:22:59,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:22:59,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:22:59,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:23:01,423.423 INFO    ] ================================================
[2026-06-22 17:23:01,451.451 INFO    ] Launching Daemon at Mon Jun 22 17:23:01 IST 2026
[2026-06-22 17:23:01,472.472 INFO    ] ================================================
[2026-06-22 17:23:02,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:23:02
[2026-06-22 17:23:02,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:23:03,176.176 INFO    ] Initializing speech engine...
[2026-06-22 17:23:03,184.184 INFO    ] 2026-06-22 17:23:03
[2026-06-22 17:23:03,448.448 INFO    ] 2026-06-22 17:23:03
[2026-06-22 17:23:03,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:23:03,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:23:03,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:23:03,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:23:03,971.971 INFO    ] time= 22/06/2026 17:23:03
[2026-06-22 17:23:04,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:23:04,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:23:04,162.162 INFO    ] No existing commands found in stream
[2026-06-22 17:23:09,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:23:09,177.177 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-22 17:23:13,542.542 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:23:13,545.545 INFO    ] Checking for system updates...
[2026-06-22 17:23:13,585.585 INFO    ] 200
[2026-06-22 17:23:13,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:23:13,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:23:13,650.650 INFO    ] No update needed
[2026-06-22 17:23:13,652.652 INFO    ] Checking for camera pi updates...
[2026-06-22 17:23:13,687.687 INFO    ] 200
[2026-06-22 17:23:13,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:23:13,735.735 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:23:13,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:23:13,818.818 INFO    ] No camera update needed
[2026-06-22 17:23:13,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:23:13,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:23:13,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:23:13,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:23:15,873.873 INFO    ] ================================================
[2026-06-22 17:23:15,889.889 INFO    ] Launching Daemon at Mon Jun 22 17:23:15 IST 2026
[2026-06-22 17:23:15,900.900 INFO    ] ================================================
[2026-06-22 17:23:16,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:23:16
[2026-06-22 17:23:17,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:23:17,350.350 INFO    ] Initializing speech engine...
[2026-06-22 17:23:17,360.360 INFO    ] 2026-06-22 17:23:17
[2026-06-22 17:23:17,622.622 INFO    ] 2026-06-22 17:23:17
[2026-06-22 17:23:17,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:23:17,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:23:17,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:23:18,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:23:18,124.124 INFO    ] time= 22/06/2026 17:23:18
[2026-06-22 17:23:18,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:23:18,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:23:18,340.340 INFO    ] No existing commands found in stream
[2026-06-22 17:23:23,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:23:23,366.366 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-22 17:23:24,750.750 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:23:24,753.753 INFO    ] Checking for system updates...
[2026-06-22 17:23:24,794.794 INFO    ] 200
[2026-06-22 17:23:24,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:23:24,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:23:24,853.853 INFO    ] No update needed
[2026-06-22 17:23:24,856.856 INFO    ] Checking for camera pi updates...
[2026-06-22 17:23:24,890.890 INFO    ] 200
[2026-06-22 17:23:24,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:23:24,934.934 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:23:25,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:23:25,018.018 INFO    ] No camera update needed
[2026-06-22 17:23:25,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:23:25,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:23:25,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:23:25,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:23:27,075.075 INFO    ] ================================================
[2026-06-22 17:23:27,090.090 INFO    ] Launching Daemon at Mon Jun 22 17:23:27 IST 2026
[2026-06-22 17:23:27,102.102 INFO    ] ================================================
[2026-06-22 17:23:27,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:23:27
[2026-06-22 17:23:28,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:23:28,470.470 INFO    ] Initializing speech engine...
[2026-06-22 17:23:28,479.479 INFO    ] 2026-06-22 17:23:28
[2026-06-22 17:23:28,739.739 INFO    ] 2026-06-22 17:23:28
[2026-06-22 17:23:28,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:23:28,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:23:28,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:23:29,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:23:29,196.196 INFO    ] time= 22/06/2026 17:23:29
[2026-06-22 17:23:29,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:23:29,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:23:29,435.435 INFO    ] No existing commands found in stream
[2026-06-22 17:23:34,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:23:34,459.459 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-22 17:23:36,450.450 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:23:36,452.452 INFO    ] Checking for system updates...
[2026-06-22 17:23:36,489.489 INFO    ] 200
[2026-06-22 17:23:36,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:23:36,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:23:36,550.550 INFO    ] No update needed
[2026-06-22 17:23:36,553.553 INFO    ] Checking for camera pi updates...
[2026-06-22 17:23:36,591.591 INFO    ] 200
[2026-06-22 17:23:36,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:23:36,639.639 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:23:36,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:23:36,731.731 INFO    ] No camera update needed
[2026-06-22 17:23:36,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:23:36,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:23:36,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:23:36,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:23:38,793.793 INFO    ] ================================================
[2026-06-22 17:23:38,808.808 INFO    ] Launching Daemon at Mon Jun 22 17:23:38 IST 2026
[2026-06-22 17:23:38,818.818 INFO    ] ================================================
[2026-06-22 17:23:39,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:23:39
[2026-06-22 17:23:39,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:23:40,132.132 INFO    ] Initializing speech engine...
[2026-06-22 17:23:40,145.145 INFO    ] 2026-06-22 17:23:40
[2026-06-22 17:23:40,409.409 INFO    ] 2026-06-22 17:23:40
[2026-06-22 17:23:40,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:23:40,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:23:40,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:23:40,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:23:40,875.875 INFO    ] time= 22/06/2026 17:23:40
[2026-06-22 17:23:40,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:23:40,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:23:41,105.105 INFO    ] No existing commands found in stream
[2026-06-22 17:23:46,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:23:46,133.133 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-22 17:23:47,136.136 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:23:47,139.139 INFO    ] Checking for system updates...
[2026-06-22 17:23:47,180.180 INFO    ] 200
[2026-06-22 17:23:47,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:23:47,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:23:47,245.245 INFO    ] No update needed
[2026-06-22 17:23:47,248.248 INFO    ] Checking for camera pi updates...
[2026-06-22 17:23:47,282.282 INFO    ] 200
[2026-06-22 17:23:47,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:23:47,325.325 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:23:47,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:23:47,506.506 INFO    ] No camera update needed
[2026-06-22 17:23:47,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:23:47,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:23:47,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:23:47,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:23:49,561.561 INFO    ] ================================================
[2026-06-22 17:23:49,577.577 INFO    ] Launching Daemon at Mon Jun 22 17:23:49 IST 2026
[2026-06-22 17:23:49,588.588 INFO    ] ================================================
[2026-06-22 17:23:50,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:23:50
[2026-06-22 17:23:50,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:23:50,926.926 INFO    ] Initializing speech engine...
[2026-06-22 17:23:50,935.935 INFO    ] 2026-06-22 17:23:50
[2026-06-22 17:23:51,182.182 INFO    ] 2026-06-22 17:23:51
[2026-06-22 17:23:51,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:23:51,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:23:51,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:23:51,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:23:51,679.679 INFO    ] time= 22/06/2026 17:23:51
[2026-06-22 17:23:51,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:23:51,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:23:51,879.879 INFO    ] No existing commands found in stream
[2026-06-22 17:23:56,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:23:56,908.908 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-22 17:23:57,882.882 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:23:57,885.885 INFO    ] Checking for system updates...
[2026-06-22 17:23:57,921.921 INFO    ] 200
[2026-06-22 17:23:57,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:23:57,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:23:57,982.982 INFO    ] No update needed
[2026-06-22 17:23:57,984.984 INFO    ] Checking for camera pi updates...
[2026-06-22 17:23:58,019.019 INFO    ] 200
[2026-06-22 17:23:58,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:23:58,062.062 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:23:58,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:23:58,154.154 INFO    ] No camera update needed
[2026-06-22 17:23:58,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:23:58,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:23:58,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:23:58,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:24:00,212.212 INFO    ] ================================================
[2026-06-22 17:24:00,228.228 INFO    ] Launching Daemon at Mon Jun 22 17:24:00 IST 2026
[2026-06-22 17:24:00,239.239 INFO    ] ================================================
[2026-06-22 17:24:00,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:24:00
[2026-06-22 17:24:01,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:24:01,821.821 INFO    ] Initializing speech engine...
[2026-06-22 17:24:01,849.849 INFO    ] 2026-06-22 17:24:01
[2026-06-22 17:24:02,225.225 INFO    ] 2026-06-22 17:24:02
[2026-06-22 17:24:02,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:24:02,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:24:02,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:24:02,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:24:02,730.730 INFO    ] time= 22/06/2026 17:24:02
[2026-06-22 17:24:02,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:24:02,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:24:02,919.919 INFO    ] No existing commands found in stream
[2026-06-22 17:24:07,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:24:07,947.947 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-22 17:24:11,982.982 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:24:11,984.984 INFO    ] Checking for system updates...
[2026-06-22 17:24:12,020.020 INFO    ] 200
[2026-06-22 17:24:12,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:24:12,085.085 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:24:12,088.088 INFO    ] No update needed
[2026-06-22 17:24:12,090.090 INFO    ] Checking for camera pi updates...
[2026-06-22 17:24:12,128.128 INFO    ] 200
[2026-06-22 17:24:12,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:24:12,171.171 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:24:12,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:24:12,238.238 INFO    ] No camera update needed
[2026-06-22 17:24:12,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:24:12,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:24:12,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:24:12,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:24:14,293.293 INFO    ] ================================================
[2026-06-22 17:24:14,308.308 INFO    ] Launching Daemon at Mon Jun 22 17:24:14 IST 2026
[2026-06-22 17:24:14,319.319 INFO    ] ================================================
[2026-06-22 17:24:14,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:24:14
[2026-06-22 17:24:15,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:24:15,687.687 INFO    ] Initializing speech engine...
[2026-06-22 17:24:15,698.698 INFO    ] 2026-06-22 17:24:15
[2026-06-22 17:24:15,959.959 INFO    ] 2026-06-22 17:24:15
[2026-06-22 17:24:16,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:24:16,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:24:16,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:24:16,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:24:16,440.440 INFO    ] time= 22/06/2026 17:24:16
[2026-06-22 17:24:16,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:24:16,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:24:16,662.662 INFO    ] No existing commands found in stream
[2026-06-22 17:24:21,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:24:21,684.684 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-22 17:24:23,463.463 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:24:23,466.466 INFO    ] Checking for system updates...
[2026-06-22 17:24:23,506.506 INFO    ] 200
[2026-06-22 17:24:23,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:24:23,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:24:23,564.564 INFO    ] No update needed
[2026-06-22 17:24:23,567.567 INFO    ] Checking for camera pi updates...
[2026-06-22 17:24:23,605.605 INFO    ] 200
[2026-06-22 17:24:23,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:24:23,657.657 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:24:23,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:24:23,710.710 INFO    ] No camera update needed
[2026-06-22 17:24:23,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:24:23,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:24:23,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:24:23,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:24:25,767.767 INFO    ] ================================================
[2026-06-22 17:24:25,783.783 INFO    ] Launching Daemon at Mon Jun 22 17:24:25 IST 2026
[2026-06-22 17:24:25,794.794 INFO    ] ================================================
[2026-06-22 17:24:26,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:24:26
[2026-06-22 17:24:26,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:24:27,195.195 INFO    ] Initializing speech engine...
[2026-06-22 17:24:27,202.202 INFO    ] 2026-06-22 17:24:27
[2026-06-22 17:24:27,462.462 INFO    ] 2026-06-22 17:24:27
[2026-06-22 17:24:27,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:24:27,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:24:27,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:24:27,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:24:27,996.996 INFO    ] time= 22/06/2026 17:24:27
[2026-06-22 17:24:28,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:24:28,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:24:28,159.159 INFO    ] No existing commands found in stream
[2026-06-22 17:24:33,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:24:33,179.179 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-22 17:24:36,119.119 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:24:36,120.120 INFO    ] Checking for system updates...
[2026-06-22 17:24:36,141.141 INFO    ] 200
[2026-06-22 17:24:36,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:24:36,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:24:36,179.179 INFO    ] No update needed
[2026-06-22 17:24:36,181.181 INFO    ] Checking for camera pi updates...
[2026-06-22 17:24:36,216.216 INFO    ] 200
[2026-06-22 17:24:36,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:24:36,264.264 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:24:36,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:24:36,347.347 INFO    ] No camera update needed
[2026-06-22 17:24:36,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:24:36,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:24:36,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:24:36,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:24:38,402.402 INFO    ] ================================================
[2026-06-22 17:24:38,418.418 INFO    ] Launching Daemon at Mon Jun 22 17:24:38 IST 2026
[2026-06-22 17:24:38,428.428 INFO    ] ================================================
[2026-06-22 17:24:38,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:24:38
[2026-06-22 17:24:39,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:24:39,843.843 INFO    ] Initializing speech engine...
[2026-06-22 17:24:39,856.856 INFO    ] 2026-06-22 17:24:39
[2026-06-22 17:24:40,102.102 INFO    ] 2026-06-22 17:24:40
[2026-06-22 17:24:40,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:24:40,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:24:40,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:24:40,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:24:40,653.653 INFO    ] time= 22/06/2026 17:24:40
[2026-06-22 17:24:40,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:24:40,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:24:40,808.808 INFO    ] No existing commands found in stream
[2026-06-22 17:24:45,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:24:45,833.833 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-22 17:24:47,720.720 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:24:47,721.721 INFO    ] Checking for system updates...
[2026-06-22 17:24:47,743.743 INFO    ] 200
[2026-06-22 17:24:47,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:24:47,784.784 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:24:47,787.787 INFO    ] No update needed
[2026-06-22 17:24:47,790.790 INFO    ] Checking for camera pi updates...
[2026-06-22 17:24:47,829.829 INFO    ] 200
[2026-06-22 17:24:47,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:24:47,877.877 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:24:47,965.965 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:24:47,967.967 INFO    ] No camera update needed
[2026-06-22 17:24:47,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:24:47,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:24:47,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:24:47,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:24:50,024.024 INFO    ] ================================================
[2026-06-22 17:24:50,039.039 INFO    ] Launching Daemon at Mon Jun 22 17:24:50 IST 2026
[2026-06-22 17:24:50,050.050 INFO    ] ================================================
[2026-06-22 17:24:50,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:24:50
[2026-06-22 17:24:51,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:24:51,416.416 INFO    ] Initializing speech engine...
[2026-06-22 17:24:51,427.427 INFO    ] 2026-06-22 17:24:51
[2026-06-22 17:24:51,687.687 INFO    ] 2026-06-22 17:24:51
[2026-06-22 17:24:51,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:24:51,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:24:51,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:24:52,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:24:52,155.155 INFO    ] time= 22/06/2026 17:24:52
[2026-06-22 17:24:52,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:24:52,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:24:52,380.380 INFO    ] No existing commands found in stream
[2026-06-22 17:24:57,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:24:57,399.399 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-22 17:24:59,538.538 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:24:59,541.541 INFO    ] Checking for system updates...
[2026-06-22 17:24:59,581.581 INFO    ] 200
[2026-06-22 17:24:59,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:24:59,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:24:59,647.647 INFO    ] No update needed
[2026-06-22 17:24:59,649.649 INFO    ] Checking for camera pi updates...
[2026-06-22 17:24:59,683.683 INFO    ] 200
[2026-06-22 17:24:59,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:24:59,732.732 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:24:59,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:24:59,817.817 INFO    ] No camera update needed
[2026-06-22 17:24:59,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:24:59,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:24:59,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:24:59,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:25:01,917.917 INFO    ] ================================================
[2026-06-22 17:25:01,971.971 INFO    ] Launching Daemon at Mon Jun 22 17:25:01 IST 2026
[2026-06-22 17:25:02,007.007 INFO    ] ================================================
[2026-06-22 17:25:02,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:25:02
[2026-06-22 17:25:03,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:25:03,730.730 INFO    ] Initializing speech engine...
[2026-06-22 17:25:03,750.750 INFO    ] 2026-06-22 17:25:03
[2026-06-22 17:25:04,015.015 INFO    ] 2026-06-22 17:25:03
[2026-06-22 17:25:04,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:25:04,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:25:04,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:25:04,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:25:04,501.501 INFO    ] time= 22/06/2026 17:25:04
[2026-06-22 17:25:04,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:25:04,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:25:04,670.670 INFO    ] No existing commands found in stream
[2026-06-22 17:25:09,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:25:09,685.685 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-22 17:25:10,289.289 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:25:10,290.290 INFO    ] Checking for system updates...
[2026-06-22 17:25:10,312.312 INFO    ] 200
[2026-06-22 17:25:10,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:25:10,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:25:10,345.345 INFO    ] No update needed
[2026-06-22 17:25:10,346.346 INFO    ] Checking for camera pi updates...
[2026-06-22 17:25:10,366.366 INFO    ] 200
[2026-06-22 17:25:10,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:25:10,405.405 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:25:10,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:25:10,483.483 INFO    ] No camera update needed
[2026-06-22 17:25:10,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:25:10,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:25:10,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:25:10,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:25:12,538.538 INFO    ] ================================================
[2026-06-22 17:25:12,553.553 INFO    ] Launching Daemon at Mon Jun 22 17:25:12 IST 2026
[2026-06-22 17:25:12,568.568 INFO    ] ================================================
[2026-06-22 17:25:13,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:25:13
[2026-06-22 17:25:13,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:25:13,915.915 INFO    ] Initializing speech engine...
[2026-06-22 17:25:13,925.925 INFO    ] 2026-06-22 17:25:13
[2026-06-22 17:25:14,180.180 INFO    ] 2026-06-22 17:25:14
[2026-06-22 17:25:14,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:25:14,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:25:14,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:25:14,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:25:14,595.595 INFO    ] time= 22/06/2026 17:25:14
[2026-06-22 17:25:14,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:25:14,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:25:14,746.746 INFO    ] No existing commands found in stream
[2026-06-22 17:25:19,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:25:19,781.781 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-22 17:25:20,289.289 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:25:20,290.290 INFO    ] Checking for system updates...
[2026-06-22 17:25:20,312.312 INFO    ] 200
[2026-06-22 17:25:20,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:25:20,344.344 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:25:20,345.345 INFO    ] No update needed
[2026-06-22 17:25:20,346.346 INFO    ] Checking for camera pi updates...
[2026-06-22 17:25:20,372.372 INFO    ] 200
[2026-06-22 17:25:20,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:25:20,420.420 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:25:20,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:25:20,521.521 INFO    ] No camera update needed
[2026-06-22 17:25:20,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:25:20,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:25:20,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:25:20,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:25:22,576.576 INFO    ] ================================================
[2026-06-22 17:25:22,592.592 INFO    ] Launching Daemon at Mon Jun 22 17:25:22 IST 2026
[2026-06-22 17:25:22,602.602 INFO    ] ================================================
[2026-06-22 17:25:23,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:25:23
[2026-06-22 17:25:23,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:25:24,023.023 INFO    ] Initializing speech engine...
[2026-06-22 17:25:24,032.032 INFO    ] 2026-06-22 17:25:24
[2026-06-22 17:25:24,278.278 INFO    ] 2026-06-22 17:25:24
[2026-06-22 17:25:24,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:25:24,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:25:24,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:25:24,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:25:24,735.735 INFO    ] time= 22/06/2026 17:25:24
[2026-06-22 17:25:24,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:25:24,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:25:25,018.018 INFO    ] No existing commands found in stream
[2026-06-22 17:25:30,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:25:30,051.051 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-22 17:25:33,434.434 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:25:33,437.437 INFO    ] Checking for system updates...
[2026-06-22 17:25:33,473.473 INFO    ] 200
[2026-06-22 17:25:33,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:25:33,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:25:33,537.537 INFO    ] No update needed
[2026-06-22 17:25:33,540.540 INFO    ] Checking for camera pi updates...
[2026-06-22 17:25:33,573.573 INFO    ] 200
[2026-06-22 17:25:33,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:25:33,617.617 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:25:33,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:25:33,705.705 INFO    ] No camera update needed
[2026-06-22 17:25:33,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:25:33,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:25:33,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:25:33,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:25:35,762.762 INFO    ] ================================================
[2026-06-22 17:25:35,782.782 INFO    ] Launching Daemon at Mon Jun 22 17:25:35 IST 2026
[2026-06-22 17:25:35,793.793 INFO    ] ================================================
[2026-06-22 17:25:36,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:25:36
[2026-06-22 17:25:37,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:25:37,332.332 INFO    ] Initializing speech engine...
[2026-06-22 17:25:37,340.340 INFO    ] 2026-06-22 17:25:37
[2026-06-22 17:25:37,626.626 INFO    ] 2026-06-22 17:25:37
[2026-06-22 17:25:37,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:25:37,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:25:37,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:25:38,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:25:38,085.085 INFO    ] time= 22/06/2026 17:25:38
[2026-06-22 17:25:38,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:25:38,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:25:38,297.297 INFO    ] No existing commands found in stream
[2026-06-22 17:25:43,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:25:43,332.332 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-22 17:25:44,323.323 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:25:44,326.326 INFO    ] Checking for system updates...
[2026-06-22 17:25:44,363.363 INFO    ] 200
[2026-06-22 17:25:44,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:25:44,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:25:44,427.427 INFO    ] No update needed
[2026-06-22 17:25:44,430.430 INFO    ] Checking for camera pi updates...
[2026-06-22 17:25:44,464.464 INFO    ] 200
[2026-06-22 17:25:44,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:25:44,509.509 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:25:44,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:25:44,593.593 INFO    ] No camera update needed
[2026-06-22 17:25:44,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:25:44,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:25:44,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:25:44,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:25:46,648.648 INFO    ] ================================================
[2026-06-22 17:25:46,663.663 INFO    ] Launching Daemon at Mon Jun 22 17:25:46 IST 2026
[2026-06-22 17:25:46,674.674 INFO    ] ================================================
[2026-06-22 17:25:47,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:25:47
[2026-06-22 17:25:47,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:25:48,116.116 INFO    ] Initializing speech engine...
[2026-06-22 17:25:48,127.127 INFO    ] 2026-06-22 17:25:48
[2026-06-22 17:25:48,395.395 INFO    ] 2026-06-22 17:25:48
[2026-06-22 17:25:48,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:25:48,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:25:48,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:25:48,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:25:48,817.817 INFO    ] time= 22/06/2026 17:25:48
[2026-06-22 17:25:48,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:25:48,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:25:48,999.999 INFO    ] No existing commands found in stream
[2026-06-22 17:25:54,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:25:54,027.027 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-22 17:25:56,383.383 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:25:56,386.386 INFO    ] Checking for system updates...
[2026-06-22 17:25:56,426.426 INFO    ] 200
[2026-06-22 17:25:56,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:25:56,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:25:56,492.492 INFO    ] No update needed
[2026-06-22 17:25:56,494.494 INFO    ] Checking for camera pi updates...
[2026-06-22 17:25:56,527.527 INFO    ] 200
[2026-06-22 17:25:56,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:25:56,575.575 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:25:56,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:25:56,756.756 INFO    ] No camera update needed
[2026-06-22 17:25:56,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:25:56,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:25:56,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:25:56,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:25:58,811.811 INFO    ] ================================================
[2026-06-22 17:25:58,826.826 INFO    ] Launching Daemon at Mon Jun 22 17:25:58 IST 2026
[2026-06-22 17:25:58,837.837 INFO    ] ================================================
[2026-06-22 17:25:59,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:25:59
[2026-06-22 17:25:59,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:26:00,173.173 INFO    ] Initializing speech engine...
[2026-06-22 17:26:00,182.182 INFO    ] 2026-06-22 17:26:00
[2026-06-22 17:26:00,429.429 INFO    ] 2026-06-22 17:26:00
[2026-06-22 17:26:00,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:26:00,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:26:00,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:26:00,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:26:00,934.934 INFO    ] time= 22/06/2026 17:26:00
[2026-06-22 17:26:00,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:26:00,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:26:01,117.117 INFO    ] No existing commands found in stream
[2026-06-22 17:26:06,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:26:06,147.147 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-22 17:26:08,843.843 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:26:08,845.845 INFO    ] Checking for system updates...
[2026-06-22 17:26:08,867.867 INFO    ] 200
[2026-06-22 17:26:08,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:26:08,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:26:08,909.909 INFO    ] No update needed
[2026-06-22 17:26:08,911.911 INFO    ] Checking for camera pi updates...
[2026-06-22 17:26:08,945.945 INFO    ] 200
[2026-06-22 17:26:08,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:26:08,991.991 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:26:09,067.067 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:26:09,069.069 INFO    ] No camera update needed
[2026-06-22 17:26:09,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:26:09,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:26:09,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:26:09,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:26:11,125.125 INFO    ] ================================================
[2026-06-22 17:26:11,140.140 INFO    ] Launching Daemon at Mon Jun 22 17:26:11 IST 2026
[2026-06-22 17:26:11,151.151 INFO    ] ================================================
[2026-06-22 17:26:11,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:26:11
[2026-06-22 17:26:12,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:26:12,475.475 INFO    ] Initializing speech engine...
[2026-06-22 17:26:12,499.499 INFO    ] 2026-06-22 17:26:12
[2026-06-22 17:26:12,769.769 INFO    ] 2026-06-22 17:26:12
[2026-06-22 17:26:12,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:26:12,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:26:13,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:26:13,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:26:13,160.160 INFO    ] time= 22/06/2026 17:26:13
[2026-06-22 17:26:13,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:26:13,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:26:13,269.269 INFO    ] No existing commands found in stream
[2026-06-22 17:26:18,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:26:18,301.301 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-22 17:26:20,989.989 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:26:20,992.992 INFO    ] Checking for system updates...
[2026-06-22 17:26:21,030.030 INFO    ] 200
[2026-06-22 17:26:21,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:26:21,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:26:21,089.089 INFO    ] No update needed
[2026-06-22 17:26:21,091.091 INFO    ] Checking for camera pi updates...
[2026-06-22 17:26:21,135.135 INFO    ] 200
[2026-06-22 17:26:21,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:26:21,178.178 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:26:21,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:26:21,285.285 INFO    ] No camera update needed
[2026-06-22 17:26:21,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:26:21,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:26:21,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:26:21,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:26:23,339.339 INFO    ] ================================================
[2026-06-22 17:26:23,355.355 INFO    ] Launching Daemon at Mon Jun 22 17:26:23 IST 2026
[2026-06-22 17:26:23,365.365 INFO    ] ================================================
[2026-06-22 17:26:23,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:26:23
[2026-06-22 17:26:24,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:26:24,697.697 INFO    ] Initializing speech engine...
[2026-06-22 17:26:24,710.710 INFO    ] 2026-06-22 17:26:24
[2026-06-22 17:26:24,962.962 INFO    ] 2026-06-22 17:26:24
[2026-06-22 17:26:24,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:26:25,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:26:25,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:26:25,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:26:25,358.358 INFO    ] time= 22/06/2026 17:26:25
[2026-06-22 17:26:25,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:26:25,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:26:25,526.526 INFO    ] No existing commands found in stream
[2026-06-22 17:26:30,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:26:30,559.559 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-22 17:26:31,980.980 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:26:31,983.983 INFO    ] Checking for system updates...
[2026-06-22 17:26:32,029.029 INFO    ] 200
[2026-06-22 17:26:32,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:26:32,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:26:32,097.097 INFO    ] No update needed
[2026-06-22 17:26:32,101.101 INFO    ] Checking for camera pi updates...
[2026-06-22 17:26:32,141.141 INFO    ] 200
[2026-06-22 17:26:32,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:26:32,194.194 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:26:32,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:26:32,260.260 INFO    ] No camera update needed
[2026-06-22 17:26:32,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:26:32,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:26:32,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:26:32,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:26:34,322.322 INFO    ] ================================================
[2026-06-22 17:26:34,337.337 INFO    ] Launching Daemon at Mon Jun 22 17:26:34 IST 2026
[2026-06-22 17:26:34,348.348 INFO    ] ================================================
[2026-06-22 17:26:34,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:26:34
[2026-06-22 17:26:35,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:26:35,851.851 INFO    ] Initializing speech engine...
[2026-06-22 17:26:35,857.857 INFO    ] 2026-06-22 17:26:35
[2026-06-22 17:26:36,129.129 INFO    ] 2026-06-22 17:26:36
[2026-06-22 17:26:36,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:26:36,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:26:36,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:26:36,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:26:36,609.609 INFO    ] time= 22/06/2026 17:26:36
[2026-06-22 17:26:36,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:26:36,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:26:36,763.763 INFO    ] No existing commands found in stream
[2026-06-22 17:26:41,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:26:41,779.779 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-22 17:26:44,193.193 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:26:44,196.196 INFO    ] Checking for system updates...
[2026-06-22 17:26:44,233.233 INFO    ] 200
[2026-06-22 17:26:44,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:26:44,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:26:44,297.297 INFO    ] No update needed
[2026-06-22 17:26:44,299.299 INFO    ] Checking for camera pi updates...
[2026-06-22 17:26:44,336.336 INFO    ] 200
[2026-06-22 17:26:44,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:26:44,384.384 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:26:44,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:26:44,441.441 INFO    ] No camera update needed
[2026-06-22 17:26:44,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:26:44,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:26:44,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:26:44,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:26:46,496.496 INFO    ] ================================================
[2026-06-22 17:26:46,511.511 INFO    ] Launching Daemon at Mon Jun 22 17:26:46 IST 2026
[2026-06-22 17:26:46,522.522 INFO    ] ================================================
[2026-06-22 17:26:47,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:26:47
[2026-06-22 17:26:47,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:26:47,842.842 INFO    ] Initializing speech engine...
[2026-06-22 17:26:47,851.851 INFO    ] 2026-06-22 17:26:47
[2026-06-22 17:26:48,142.142 INFO    ] 2026-06-22 17:26:48
[2026-06-22 17:26:48,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:26:48,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:26:48,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:26:48,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:26:48,628.628 INFO    ] time= 22/06/2026 17:26:48
[2026-06-22 17:26:48,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:26:48,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:26:48,823.823 INFO    ] No existing commands found in stream
[2026-06-22 17:26:53,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:26:53,837.837 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-22 17:26:56,308.308 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:26:56,311.311 INFO    ] Checking for system updates...
[2026-06-22 17:26:56,353.353 INFO    ] 200
[2026-06-22 17:26:56,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:26:56,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:26:56,426.426 INFO    ] No update needed
[2026-06-22 17:26:56,429.429 INFO    ] Checking for camera pi updates...
[2026-06-22 17:26:56,463.463 INFO    ] 200
[2026-06-22 17:26:56,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:26:56,509.509 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:26:56,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:26:56,602.602 INFO    ] No camera update needed
[2026-06-22 17:26:56,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:26:56,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:26:56,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:26:56,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:26:58,657.657 INFO    ] ================================================
[2026-06-22 17:26:58,672.672 INFO    ] Launching Daemon at Mon Jun 22 17:26:58 IST 2026
[2026-06-22 17:26:58,683.683 INFO    ] ================================================
[2026-06-22 17:26:59,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:26:59
[2026-06-22 17:26:59,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:27:00,023.023 INFO    ] Initializing speech engine...
[2026-06-22 17:27:00,029.029 INFO    ] 2026-06-22 17:27:00
[2026-06-22 17:27:00,287.287 INFO    ] 2026-06-22 17:27:00
[2026-06-22 17:27:00,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:27:00,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:27:00,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:27:00,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:27:00,756.756 INFO    ] time= 22/06/2026 17:27:00
[2026-06-22 17:27:00,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:27:00,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:27:00,965.965 INFO    ] No existing commands found in stream
[2026-06-22 17:27:05,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:27:05,995.995 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-22 17:27:09,497.497 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:27:09,500.500 INFO    ] Checking for system updates...
[2026-06-22 17:27:09,535.535 INFO    ] 200
[2026-06-22 17:27:09,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:27:09,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:27:09,597.597 INFO    ] No update needed
[2026-06-22 17:27:09,599.599 INFO    ] Checking for camera pi updates...
[2026-06-22 17:27:09,632.632 INFO    ] 200
[2026-06-22 17:27:09,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:27:09,679.679 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:27:09,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:27:09,761.761 INFO    ] No camera update needed
[2026-06-22 17:27:09,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:27:09,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:27:09,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:27:09,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:27:11,819.819 INFO    ] ================================================
[2026-06-22 17:27:11,834.834 INFO    ] Launching Daemon at Mon Jun 22 17:27:11 IST 2026
[2026-06-22 17:27:11,845.845 INFO    ] ================================================
[2026-06-22 17:27:12,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:27:12
[2026-06-22 17:27:12,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:27:13,191.191 INFO    ] Initializing speech engine...
[2026-06-22 17:27:13,201.201 INFO    ] 2026-06-22 17:27:13
[2026-06-22 17:27:13,448.448 INFO    ] 2026-06-22 17:27:13
[2026-06-22 17:27:13,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:27:13,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:27:13,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:27:13,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:27:13,914.914 INFO    ] time= 22/06/2026 17:27:13
[2026-06-22 17:27:13,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:27:14,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:27:14,145.145 INFO    ] No existing commands found in stream
[2026-06-22 17:27:19,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:27:19,172.172 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-22 17:27:21,703.703 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:27:21,706.706 INFO    ] Checking for system updates...
[2026-06-22 17:27:21,745.745 INFO    ] 200
[2026-06-22 17:27:21,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:27:21,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:27:21,807.807 INFO    ] No update needed
[2026-06-22 17:27:21,810.810 INFO    ] Checking for camera pi updates...
[2026-06-22 17:27:21,846.846 INFO    ] 200
[2026-06-22 17:27:21,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:27:21,889.889 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:27:21,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:27:21,968.968 INFO    ] No camera update needed
[2026-06-22 17:27:21,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:27:21,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:27:21,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:27:21,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:27:24,025.025 INFO    ] ================================================
[2026-06-22 17:27:24,041.041 INFO    ] Launching Daemon at Mon Jun 22 17:27:24 IST 2026
[2026-06-22 17:27:24,051.051 INFO    ] ================================================
[2026-06-22 17:27:24,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:27:24
[2026-06-22 17:27:25,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:27:25,378.378 INFO    ] Initializing speech engine...
[2026-06-22 17:27:25,398.398 INFO    ] 2026-06-22 17:27:25
[2026-06-22 17:27:25,671.671 INFO    ] 2026-06-22 17:27:25
[2026-06-22 17:27:25,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:27:25,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:27:25,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:27:26,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:27:26,283.283 INFO    ] time= 22/06/2026 17:27:26
[2026-06-22 17:27:26,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:27:26,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:27:26,431.431 INFO    ] No existing commands found in stream
[2026-06-22 17:27:31,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:27:31,459.459 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-22 17:27:31,957.957 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:27:31,959.959 INFO    ] Checking for system updates...
[2026-06-22 17:27:32,001.001 INFO    ] 200
[2026-06-22 17:27:32,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:27:32,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:27:32,067.067 INFO    ] No update needed
[2026-06-22 17:27:32,070.070 INFO    ] Checking for camera pi updates...
[2026-06-22 17:27:32,111.111 INFO    ] 200
[2026-06-22 17:27:32,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:27:32,159.159 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:27:32,218.218 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:27:32,221.221 INFO    ] No camera update needed
[2026-06-22 17:27:32,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:27:32,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:27:32,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:27:32,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:27:34,279.279 INFO    ] ================================================
[2026-06-22 17:27:34,294.294 INFO    ] Launching Daemon at Mon Jun 22 17:27:34 IST 2026
[2026-06-22 17:27:34,305.305 INFO    ] ================================================
[2026-06-22 17:27:34,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:27:34
[2026-06-22 17:27:35,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:27:35,883.883 INFO    ] Initializing speech engine...
[2026-06-22 17:27:35,896.896 INFO    ] 2026-06-22 17:27:35
[2026-06-22 17:27:36,172.172 INFO    ] 2026-06-22 17:27:36
[2026-06-22 17:27:36,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:27:36,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:27:36,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:27:36,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:27:36,637.637 INFO    ] time= 22/06/2026 17:27:36
[2026-06-22 17:27:36,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:27:36,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:27:36,798.798 INFO    ] No existing commands found in stream
[2026-06-22 17:27:41,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:27:41,837.837 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-22 17:27:45,455.455 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:27:45,458.458 INFO    ] Checking for system updates...
[2026-06-22 17:27:45,498.498 INFO    ] 200
[2026-06-22 17:27:45,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:27:45,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:27:45,561.561 INFO    ] No update needed
[2026-06-22 17:27:45,564.564 INFO    ] Checking for camera pi updates...
[2026-06-22 17:27:45,599.599 INFO    ] 200
[2026-06-22 17:27:45,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:27:45,642.642 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:27:45,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:27:45,750.750 INFO    ] No camera update needed
[2026-06-22 17:27:45,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:27:45,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:27:45,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:27:45,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:27:47,806.806 INFO    ] ================================================
[2026-06-22 17:27:47,822.822 INFO    ] Launching Daemon at Mon Jun 22 17:27:47 IST 2026
[2026-06-22 17:27:47,833.833 INFO    ] ================================================
[2026-06-22 17:27:48,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:27:48
[2026-06-22 17:27:49,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:27:49,283.283 INFO    ] Initializing speech engine...
[2026-06-22 17:27:49,294.294 INFO    ] 2026-06-22 17:27:49
[2026-06-22 17:27:49,566.566 INFO    ] 2026-06-22 17:27:49
[2026-06-22 17:27:49,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:27:49,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:27:49,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:27:50,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:27:50,110.110 INFO    ] time= 22/06/2026 17:27:50
[2026-06-22 17:27:50,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:27:50,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:27:50,264.264 INFO    ] No existing commands found in stream
[2026-06-22 17:27:55,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:27:55,282.282 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-22 17:27:56,023.023 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:27:56,025.025 INFO    ] Checking for system updates...
[2026-06-22 17:27:56,048.048 INFO    ] 200
[2026-06-22 17:27:56,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:27:56,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:27:56,111.111 INFO    ] No update needed
[2026-06-22 17:27:56,113.113 INFO    ] Checking for camera pi updates...
[2026-06-22 17:27:56,151.151 INFO    ] 200
[2026-06-22 17:27:56,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:27:56,198.198 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:27:56,280.280 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:27:56,283.283 INFO    ] No camera update needed
[2026-06-22 17:27:56,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:27:56,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:27:56,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:27:56,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:27:58,339.339 INFO    ] ================================================
[2026-06-22 17:27:58,355.355 INFO    ] Launching Daemon at Mon Jun 22 17:27:58 IST 2026
[2026-06-22 17:27:58,365.365 INFO    ] ================================================
[2026-06-22 17:27:58,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:27:58
[2026-06-22 17:27:59,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:27:59,783.783 INFO    ] Initializing speech engine...
[2026-06-22 17:27:59,796.796 INFO    ] 2026-06-22 17:27:59
[2026-06-22 17:28:00,043.043 INFO    ] 2026-06-22 17:28:00
[2026-06-22 17:28:00,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:28:00,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:28:00,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:28:00,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:28:00,518.518 INFO    ] time= 22/06/2026 17:28:00
[2026-06-22 17:28:00,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:28:00,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:28:00,748.748 INFO    ] No existing commands found in stream
[2026-06-22 17:28:05,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:28:05,767.767 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-22 17:28:06,577.577 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:28:06,578.578 INFO    ] Checking for system updates...
[2026-06-22 17:28:06,603.603 INFO    ] 200
[2026-06-22 17:28:06,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:28:06,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:28:06,657.657 INFO    ] No update needed
[2026-06-22 17:28:06,660.660 INFO    ] Checking for camera pi updates...
[2026-06-22 17:28:06,696.696 INFO    ] 200
[2026-06-22 17:28:06,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:28:06,742.742 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:28:06,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:28:06,850.850 INFO    ] No camera update needed
[2026-06-22 17:28:06,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:28:06,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:28:06,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:28:06,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:28:08,906.906 INFO    ] ================================================
[2026-06-22 17:28:08,921.921 INFO    ] Launching Daemon at Mon Jun 22 17:28:08 IST 2026
[2026-06-22 17:28:08,932.932 INFO    ] ================================================
[2026-06-22 17:28:09,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:28:09
[2026-06-22 17:28:09,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:28:10,242.242 INFO    ] Initializing speech engine...
[2026-06-22 17:28:10,250.250 INFO    ] 2026-06-22 17:28:10
[2026-06-22 17:28:10,522.522 INFO    ] 2026-06-22 17:28:10
[2026-06-22 17:28:10,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:28:10,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:28:10,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:28:10,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:28:11,015.015 INFO    ] time= 22/06/2026 17:28:10
[2026-06-22 17:28:11,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:28:11,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:28:11,209.209 INFO    ] No existing commands found in stream
[2026-06-22 17:28:16,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:28:16,237.237 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-22 17:28:18,783.783 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:28:18,786.786 INFO    ] Checking for system updates...
[2026-06-22 17:28:18,822.822 INFO    ] 200
[2026-06-22 17:28:18,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:28:18,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:28:18,881.881 INFO    ] No update needed
[2026-06-22 17:28:18,883.883 INFO    ] Checking for camera pi updates...
[2026-06-22 17:28:18,916.916 INFO    ] 200
[2026-06-22 17:28:18,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:28:18,963.963 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:28:19,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:28:19,062.062 INFO    ] No camera update needed
[2026-06-22 17:28:19,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:28:19,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:28:19,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:28:19,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:28:21,119.119 INFO    ] ================================================
[2026-06-22 17:28:21,133.133 INFO    ] Launching Daemon at Mon Jun 22 17:28:21 IST 2026
[2026-06-22 17:28:21,144.144 INFO    ] ================================================
[2026-06-22 17:28:21,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:28:21
[2026-06-22 17:28:22,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:28:22,575.575 INFO    ] Initializing speech engine...
[2026-06-22 17:28:22,584.584 INFO    ] 2026-06-22 17:28:22
[2026-06-22 17:28:22,842.842 INFO    ] 2026-06-22 17:28:22
[2026-06-22 17:28:22,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:28:23,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:28:23,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:28:23,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:28:23,316.316 INFO    ] time= 22/06/2026 17:28:23
[2026-06-22 17:28:23,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:28:23,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:28:23,530.530 INFO    ] No existing commands found in stream
[2026-06-22 17:28:28,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:28:28,554.554 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-22 17:28:31,169.169 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:28:31,172.172 INFO    ] Checking for system updates...
[2026-06-22 17:28:31,211.211 INFO    ] 200
[2026-06-22 17:28:31,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:28:31,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:28:31,275.275 INFO    ] No update needed
[2026-06-22 17:28:31,277.277 INFO    ] Checking for camera pi updates...
[2026-06-22 17:28:31,314.314 INFO    ] 200
[2026-06-22 17:28:31,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:28:31,357.357 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:28:31,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:28:31,476.476 INFO    ] No camera update needed
[2026-06-22 17:28:31,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:28:31,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:28:31,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:28:31,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:28:33,534.534 INFO    ] ================================================
[2026-06-22 17:28:33,550.550 INFO    ] Launching Daemon at Mon Jun 22 17:28:33 IST 2026
[2026-06-22 17:28:33,560.560 INFO    ] ================================================
[2026-06-22 17:28:34,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:28:34
[2026-06-22 17:28:34,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:28:34,975.975 INFO    ] Initializing speech engine...
[2026-06-22 17:28:34,991.991 INFO    ] 2026-06-22 17:28:34
[2026-06-22 17:28:35,278.278 INFO    ] 2026-06-22 17:28:35
[2026-06-22 17:28:35,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:28:35,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:28:35,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:28:35,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:28:35,697.697 INFO    ] time= 22/06/2026 17:28:35
[2026-06-22 17:28:35,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:28:35,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:28:35,870.870 INFO    ] No existing commands found in stream
[2026-06-22 17:28:40,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:28:40,903.903 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-22 17:28:41,705.705 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:28:41,707.707 INFO    ] Checking for system updates...
[2026-06-22 17:28:41,748.748 INFO    ] 200
[2026-06-22 17:28:41,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:28:41,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:28:41,805.805 INFO    ] No update needed
[2026-06-22 17:28:41,808.808 INFO    ] Checking for camera pi updates...
[2026-06-22 17:28:41,841.841 INFO    ] 200
[2026-06-22 17:28:41,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:28:41,889.889 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:28:41,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:28:41,977.977 INFO    ] No camera update needed
[2026-06-22 17:28:41,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:28:41,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:28:41,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:28:41,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:28:44,033.033 INFO    ] ================================================
[2026-06-22 17:28:44,048.048 INFO    ] Launching Daemon at Mon Jun 22 17:28:44 IST 2026
[2026-06-22 17:28:44,059.059 INFO    ] ================================================
[2026-06-22 17:28:44,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:28:44
[2026-06-22 17:28:45,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:28:45,369.369 INFO    ] Initializing speech engine...
[2026-06-22 17:28:45,392.392 INFO    ] 2026-06-22 17:28:45
[2026-06-22 17:28:45,650.650 INFO    ] 2026-06-22 17:28:45
[2026-06-22 17:28:45,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:28:45,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:28:45,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:28:46,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:28:46,134.134 INFO    ] time= 22/06/2026 17:28:46
[2026-06-22 17:28:46,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:28:46,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:28:46,356.356 INFO    ] No existing commands found in stream
[2026-06-22 17:28:51,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:28:51,389.389 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-22 17:28:55,785.785 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:28:55,788.788 INFO    ] Checking for system updates...
[2026-06-22 17:28:55,827.827 INFO    ] 200
[2026-06-22 17:28:55,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:28:55,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:28:55,890.890 INFO    ] No update needed
[2026-06-22 17:28:55,893.893 INFO    ] Checking for camera pi updates...
[2026-06-22 17:28:55,926.926 INFO    ] 200
[2026-06-22 17:28:55,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:28:55,969.969 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:28:56,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:28:56,039.039 INFO    ] No camera update needed
[2026-06-22 17:28:56,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:28:56,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:28:56,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:28:56,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:28:58,095.095 INFO    ] ================================================
[2026-06-22 17:28:58,111.111 INFO    ] Launching Daemon at Mon Jun 22 17:28:58 IST 2026
[2026-06-22 17:28:58,121.121 INFO    ] ================================================
[2026-06-22 17:28:58,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:28:58
[2026-06-22 17:28:59,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:28:59,623.623 INFO    ] Initializing speech engine...
[2026-06-22 17:28:59,635.635 INFO    ] 2026-06-22 17:28:59
[2026-06-22 17:28:59,912.912 INFO    ] 2026-06-22 17:28:59
[2026-06-22 17:28:59,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:29:00,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:29:00,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:29:00,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:29:00,446.446 INFO    ] time= 22/06/2026 17:29:00
[2026-06-22 17:29:00,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:29:00,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:29:00,604.604 INFO    ] No existing commands found in stream
[2026-06-22 17:29:05,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:29:05,630.630 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-22 17:29:09,383.383 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:29:09,385.385 INFO    ] Checking for system updates...
[2026-06-22 17:29:09,407.407 INFO    ] 200
[2026-06-22 17:29:09,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:29:09,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:29:09,442.442 INFO    ] No update needed
[2026-06-22 17:29:09,443.443 INFO    ] Checking for camera pi updates...
[2026-06-22 17:29:09,463.463 INFO    ] 200
[2026-06-22 17:29:09,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:29:09,489.489 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:29:09,569.569 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:29:09,571.571 INFO    ] No camera update needed
[2026-06-22 17:29:09,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:29:09,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:29:09,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:29:09,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:29:11,626.626 INFO    ] ================================================
[2026-06-22 17:29:11,642.642 INFO    ] Launching Daemon at Mon Jun 22 17:29:11 IST 2026
[2026-06-22 17:29:11,653.653 INFO    ] ================================================
[2026-06-22 17:29:12,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:29:12
[2026-06-22 17:29:12,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:29:13,025.025 INFO    ] Initializing speech engine...
[2026-06-22 17:29:13,050.050 INFO    ] 2026-06-22 17:29:13
[2026-06-22 17:29:13,326.326 INFO    ] 2026-06-22 17:29:13
[2026-06-22 17:29:13,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:29:13,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:29:13,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:29:13,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:29:13,951.951 INFO    ] time= 22/06/2026 17:29:13
[2026-06-22 17:29:13,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:29:13,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:29:14,117.117 INFO    ] No existing commands found in stream
[2026-06-22 17:29:19,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:29:19,135.135 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-22 17:29:21,850.850 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:29:21,851.851 INFO    ] Checking for system updates...
[2026-06-22 17:29:21,872.872 INFO    ] 200
[2026-06-22 17:29:21,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:29:21,908.908 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:29:21,910.910 INFO    ] No update needed
[2026-06-22 17:29:21,913.913 INFO    ] Checking for camera pi updates...
[2026-06-22 17:29:21,950.950 INFO    ] 200
[2026-06-22 17:29:21,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:29:21,998.998 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:29:22,066.066 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:29:22,068.068 INFO    ] No camera update needed
[2026-06-22 17:29:22,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:29:22,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:29:22,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:29:22,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:29:24,125.125 INFO    ] ================================================
[2026-06-22 17:29:24,140.140 INFO    ] Launching Daemon at Mon Jun 22 17:29:24 IST 2026
[2026-06-22 17:29:24,152.152 INFO    ] ================================================
[2026-06-22 17:29:24,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:29:24
[2026-06-22 17:29:25,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:29:25,606.606 INFO    ] Initializing speech engine...
[2026-06-22 17:29:25,621.621 INFO    ] 2026-06-22 17:29:25
[2026-06-22 17:29:25,896.896 INFO    ] 2026-06-22 17:29:25
[2026-06-22 17:29:25,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:29:26,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:29:26,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:29:26,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:29:26,361.361 INFO    ] time= 22/06/2026 17:29:26
[2026-06-22 17:29:26,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:29:26,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:29:26,531.531 INFO    ] No existing commands found in stream
[2026-06-22 17:29:31,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:29:31,548.548 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-22 17:29:34,439.439 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:29:34,441.441 INFO    ] Checking for system updates...
[2026-06-22 17:29:34,477.477 INFO    ] 200
[2026-06-22 17:29:34,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:29:34,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:29:34,545.545 INFO    ] No update needed
[2026-06-22 17:29:34,547.547 INFO    ] Checking for camera pi updates...
[2026-06-22 17:29:34,582.582 INFO    ] 200
[2026-06-22 17:29:34,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:29:34,629.629 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:29:34,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:29:34,714.714 INFO    ] No camera update needed
[2026-06-22 17:29:34,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:29:34,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:29:34,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:29:34,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:29:36,770.770 INFO    ] ================================================
[2026-06-22 17:29:36,785.785 INFO    ] Launching Daemon at Mon Jun 22 17:29:36 IST 2026
[2026-06-22 17:29:36,796.796 INFO    ] ================================================
[2026-06-22 17:29:37,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:29:37
[2026-06-22 17:29:37,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:29:38,109.109 INFO    ] Initializing speech engine...
[2026-06-22 17:29:38,115.115 INFO    ] 2026-06-22 17:29:38
[2026-06-22 17:29:38,412.412 INFO    ] 2026-06-22 17:29:38
[2026-06-22 17:29:38,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:29:38,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:29:38,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:29:38,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:29:38,915.915 INFO    ] time= 22/06/2026 17:29:38
[2026-06-22 17:29:38,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:29:39,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:29:39,192.192 INFO    ] No existing commands found in stream
[2026-06-22 17:29:44,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:29:44,226.226 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-22 17:29:47,553.553 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:29:47,555.555 INFO    ] Checking for system updates...
[2026-06-22 17:29:47,576.576 INFO    ] 200
[2026-06-22 17:29:47,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:29:47,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:29:47,610.610 INFO    ] No update needed
[2026-06-22 17:29:47,611.611 INFO    ] Checking for camera pi updates...
[2026-06-22 17:29:47,633.633 INFO    ] 200
[2026-06-22 17:29:47,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:29:47,680.680 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:29:47,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:29:47,781.781 INFO    ] No camera update needed
[2026-06-22 17:29:47,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:29:47,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:29:47,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:29:47,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:29:49,837.837 INFO    ] ================================================
[2026-06-22 17:29:49,852.852 INFO    ] Launching Daemon at Mon Jun 22 17:29:49 IST 2026
[2026-06-22 17:29:49,863.863 INFO    ] ================================================
[2026-06-22 17:29:50,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:29:50
[2026-06-22 17:29:51,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:29:51,339.339 INFO    ] Initializing speech engine...
[2026-06-22 17:29:51,346.346 INFO    ] 2026-06-22 17:29:51
[2026-06-22 17:29:51,594.594 INFO    ] 2026-06-22 17:29:51
[2026-06-22 17:29:51,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:29:51,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:29:51,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:29:52,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:29:52,110.110 INFO    ] time= 22/06/2026 17:29:52
[2026-06-22 17:29:52,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:29:52,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:29:52,311.311 INFO    ] No existing commands found in stream
[2026-06-22 17:29:57,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:29:57,336.336 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-22 17:29:59,341.341 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:29:59,343.343 INFO    ] Checking for system updates...
[2026-06-22 17:29:59,365.365 INFO    ] 200
[2026-06-22 17:29:59,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:29:59,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:29:59,401.401 INFO    ] No update needed
[2026-06-22 17:29:59,402.402 INFO    ] Checking for camera pi updates...
[2026-06-22 17:29:59,425.425 INFO    ] 200
[2026-06-22 17:29:59,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:29:59,466.466 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:29:59,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:29:59,540.540 INFO    ] No camera update needed
[2026-06-22 17:29:59,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:29:59,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:29:59,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:29:59,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:30:01,599.599 INFO    ] ================================================
[2026-06-22 17:30:01,614.614 INFO    ] Launching Daemon at Mon Jun 22 17:30:01 IST 2026
[2026-06-22 17:30:01,625.625 INFO    ] ================================================
[2026-06-22 17:30:02,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:30:02
[2026-06-22 17:30:03,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:30:04,159.159 INFO    ] Initializing speech engine...
[2026-06-22 17:30:04,174.174 INFO    ] 2026-06-22 17:30:04
[2026-06-22 17:30:04,443.443 INFO    ] 2026-06-22 17:30:04
[2026-06-22 17:30:04,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:30:04,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:30:04,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:30:04,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:30:04,938.938 INFO    ] time= 22/06/2026 17:30:04
[2026-06-22 17:30:04,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:30:05,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:30:05,160.160 INFO    ] No existing commands found in stream
[2026-06-22 17:30:10,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:30:10,175.175 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-22 17:30:13,749.749 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:30:13,752.752 INFO    ] Checking for system updates...
[2026-06-22 17:30:13,792.792 INFO    ] 200
[2026-06-22 17:30:13,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:30:13,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:30:13,856.856 INFO    ] No update needed
[2026-06-22 17:30:13,859.859 INFO    ] Checking for camera pi updates...
[2026-06-22 17:30:13,893.893 INFO    ] 200
[2026-06-22 17:30:13,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:30:13,943.943 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:30:14,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:30:14,147.147 INFO    ] No camera update needed
[2026-06-22 17:30:14,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:30:14,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:30:14,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:30:14,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:30:16,207.207 INFO    ] ================================================
[2026-06-22 17:30:16,222.222 INFO    ] Launching Daemon at Mon Jun 22 17:30:16 IST 2026
[2026-06-22 17:30:16,233.233 INFO    ] ================================================
[2026-06-22 17:30:16,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:30:16
[2026-06-22 17:30:17,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:30:17,548.548 INFO    ] Initializing speech engine...
[2026-06-22 17:30:17,563.563 INFO    ] 2026-06-22 17:30:17
[2026-06-22 17:30:17,829.829 INFO    ] 2026-06-22 17:30:17
[2026-06-22 17:30:17,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:30:18,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:30:18,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:30:18,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:30:18,299.299 INFO    ] time= 22/06/2026 17:30:18
[2026-06-22 17:30:18,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:30:18,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:30:18,558.558 INFO    ] No existing commands found in stream
[2026-06-22 17:30:23,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:30:23,591.591 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-22 17:30:25,696.696 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:30:25,698.698 INFO    ] Checking for system updates...
[2026-06-22 17:30:25,736.736 INFO    ] 200
[2026-06-22 17:30:25,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:30:25,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:30:25,800.800 INFO    ] No update needed
[2026-06-22 17:30:25,802.802 INFO    ] Checking for camera pi updates...
[2026-06-22 17:30:25,840.840 INFO    ] 200
[2026-06-22 17:30:25,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:30:25,882.882 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:30:25,941.941 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:30:25,944.944 INFO    ] No camera update needed
[2026-06-22 17:30:25,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:30:25,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:30:25,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:30:25,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:30:28,999.999 INFO    ] ================================================
[2026-06-22 17:30:28,016.016 INFO    ] Launching Daemon at Mon Jun 22 17:30:28 IST 2026
[2026-06-22 17:30:28,028.028 INFO    ] ================================================
[2026-06-22 17:30:28,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:30:28
[2026-06-22 17:30:29,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:30:29,459.459 INFO    ] Initializing speech engine...
[2026-06-22 17:30:29,468.468 INFO    ] 2026-06-22 17:30:29
[2026-06-22 17:30:29,761.761 INFO    ] 2026-06-22 17:30:29
[2026-06-22 17:30:29,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:30:29,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:30:30,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:30:30,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:30:30,181.181 INFO    ] time= 22/06/2026 17:30:30
[2026-06-22 17:30:30,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:30:30,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:30:30,352.352 INFO    ] No existing commands found in stream
[2026-06-22 17:30:35,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:30:35,375.375 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-22 17:30:36,162.162 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:30:36,164.164 INFO    ] Checking for system updates...
[2026-06-22 17:30:36,204.204 INFO    ] 200
[2026-06-22 17:30:36,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:30:36,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:30:36,263.263 INFO    ] No update needed
[2026-06-22 17:30:36,265.265 INFO    ] Checking for camera pi updates...
[2026-06-22 17:30:36,303.303 INFO    ] 200
[2026-06-22 17:30:36,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:30:36,352.352 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:30:36,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:30:36,454.454 INFO    ] No camera update needed
[2026-06-22 17:30:36,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:30:36,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:30:36,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:30:36,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:30:38,515.515 INFO    ] ================================================
[2026-06-22 17:30:38,530.530 INFO    ] Launching Daemon at Mon Jun 22 17:30:38 IST 2026
[2026-06-22 17:30:38,541.541 INFO    ] ================================================
[2026-06-22 17:30:39,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:30:39
[2026-06-22 17:30:39,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:30:39,968.968 INFO    ] Initializing speech engine...
[2026-06-22 17:30:39,981.981 INFO    ] 2026-06-22 17:30:39
[2026-06-22 17:30:40,268.268 INFO    ] 2026-06-22 17:30:40
[2026-06-22 17:30:40,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:30:40,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:30:40,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:30:40,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:30:40,725.725 INFO    ] time= 22/06/2026 17:30:40
[2026-06-22 17:30:40,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:30:40,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:30:40,912.912 INFO    ] No existing commands found in stream
[2026-06-22 17:30:45,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:30:45,926.926 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-22 17:30:48,412.412 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:30:48,415.415 INFO    ] Checking for system updates...
[2026-06-22 17:30:48,452.452 INFO    ] 200
[2026-06-22 17:30:48,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:30:48,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:30:48,521.521 INFO    ] No update needed
[2026-06-22 17:30:48,524.524 INFO    ] Checking for camera pi updates...
[2026-06-22 17:30:48,561.561 INFO    ] 200
[2026-06-22 17:30:48,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:30:48,610.610 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:30:48,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:30:48,691.691 INFO    ] No camera update needed
[2026-06-22 17:30:48,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:30:48,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:30:48,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:30:48,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:30:50,747.747 INFO    ] ================================================
[2026-06-22 17:30:50,762.762 INFO    ] Launching Daemon at Mon Jun 22 17:30:50 IST 2026
[2026-06-22 17:30:50,773.773 INFO    ] ================================================
[2026-06-22 17:30:51,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:30:51
[2026-06-22 17:30:51,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:30:52,131.131 INFO    ] Initializing speech engine...
[2026-06-22 17:30:52,147.147 INFO    ] 2026-06-22 17:30:52
[2026-06-22 17:30:52,431.431 INFO    ] 2026-06-22 17:30:52
[2026-06-22 17:30:52,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:30:52,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:30:52,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:30:52,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:30:52,836.836 INFO    ] time= 22/06/2026 17:30:52
[2026-06-22 17:30:52,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:30:52,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:30:53,018.018 INFO    ] No existing commands found in stream
[2026-06-22 17:30:58,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:30:58,051.051 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-22 17:31:02,417.417 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:31:02,420.420 INFO    ] Checking for system updates...
[2026-06-22 17:31:02,465.465 INFO    ] 200
[2026-06-22 17:31:02,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:31:02,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:31:02,534.534 INFO    ] No update needed
[2026-06-22 17:31:02,537.537 INFO    ] Checking for camera pi updates...
[2026-06-22 17:31:02,575.575 INFO    ] 200
[2026-06-22 17:31:02,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:31:02,629.629 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:31:02,693.693 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:31:02,697.697 INFO    ] No camera update needed
[2026-06-22 17:31:02,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:31:02,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:31:02,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:31:02,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:31:04,757.757 INFO    ] ================================================
[2026-06-22 17:31:04,772.772 INFO    ] Launching Daemon at Mon Jun 22 17:31:04 IST 2026
[2026-06-22 17:31:04,783.783 INFO    ] ================================================
[2026-06-22 17:31:05,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:31:05
[2026-06-22 17:31:05,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:31:06,188.188 INFO    ] Initializing speech engine...
[2026-06-22 17:31:06,193.193 INFO    ] 2026-06-22 17:31:06
[2026-06-22 17:31:06,437.437 INFO    ] 2026-06-22 17:31:06
[2026-06-22 17:31:06,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:31:06,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:31:06,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:31:06,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:31:06,848.848 INFO    ] time= 22/06/2026 17:31:06
[2026-06-22 17:31:06,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:31:06,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:31:07,028.028 INFO    ] No existing commands found in stream
[2026-06-22 17:31:12,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:31:12,061.061 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-22 17:31:13,894.894 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:31:13,897.897 INFO    ] Checking for system updates...
[2026-06-22 17:31:13,933.933 INFO    ] 200
[2026-06-22 17:31:13,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:31:13,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:31:13,997.997 INFO    ] No update needed
[2026-06-22 17:31:13,999.999 INFO    ] Checking for camera pi updates...
[2026-06-22 17:31:14,033.033 INFO    ] 200
[2026-06-22 17:31:14,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:31:14,080.080 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:31:14,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:31:14,162.162 INFO    ] No camera update needed
[2026-06-22 17:31:14,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:31:14,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:31:14,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:31:14,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:31:16,218.218 INFO    ] ================================================
[2026-06-22 17:31:16,235.235 INFO    ] Launching Daemon at Mon Jun 22 17:31:16 IST 2026
[2026-06-22 17:31:16,246.246 INFO    ] ================================================
[2026-06-22 17:31:16,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:31:16
[2026-06-22 17:31:17,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:31:17,829.829 INFO    ] Initializing speech engine...
[2026-06-22 17:31:17,836.836 INFO    ] 2026-06-22 17:31:17
[2026-06-22 17:31:18,107.107 INFO    ] 2026-06-22 17:31:18
[2026-06-22 17:31:18,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:31:18,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:31:18,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:31:18,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:31:18,681.681 INFO    ] time= 22/06/2026 17:31:18
[2026-06-22 17:31:18,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:31:18,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:31:18,840.840 INFO    ] No existing commands found in stream
[2026-06-22 17:31:23,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:31:23,864.864 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-22 17:31:26,588.588 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:31:26,590.590 INFO    ] Checking for system updates...
[2026-06-22 17:31:26,612.612 INFO    ] 200
[2026-06-22 17:31:26,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:31:26,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:31:26,648.648 INFO    ] No update needed
[2026-06-22 17:31:26,650.650 INFO    ] Checking for camera pi updates...
[2026-06-22 17:31:26,670.670 INFO    ] 200
[2026-06-22 17:31:26,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:31:26,696.696 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:31:26,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:31:26,779.779 INFO    ] No camera update needed
[2026-06-22 17:31:26,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:31:26,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:31:26,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:31:26,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:31:28,840.840 INFO    ] ================================================
[2026-06-22 17:31:28,856.856 INFO    ] Launching Daemon at Mon Jun 22 17:31:28 IST 2026
[2026-06-22 17:31:28,867.867 INFO    ] ================================================
[2026-06-22 17:31:29,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:31:29
[2026-06-22 17:31:29,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:31:30,235.235 INFO    ] Initializing speech engine...
[2026-06-22 17:31:30,244.244 INFO    ] 2026-06-22 17:31:30
[2026-06-22 17:31:30,507.507 INFO    ] 2026-06-22 17:31:30
[2026-06-22 17:31:30,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:31:30,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:31:30,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:31:31,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:31:31,052.052 INFO    ] time= 22/06/2026 17:31:31
[2026-06-22 17:31:31,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:31:31,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:31:31,210.210 INFO    ] No existing commands found in stream
[2026-06-22 17:31:36,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:31:36,235.235 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-22 17:31:38,510.510 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:31:38,511.511 INFO    ] Checking for system updates...
[2026-06-22 17:31:38,532.532 INFO    ] 200
[2026-06-22 17:31:38,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:31:38,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:31:38,568.568 INFO    ] No update needed
[2026-06-22 17:31:38,569.569 INFO    ] Checking for camera pi updates...
[2026-06-22 17:31:38,589.589 INFO    ] 200
[2026-06-22 17:31:38,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:31:38,616.616 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:31:38,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:31:38,712.712 INFO    ] No camera update needed
[2026-06-22 17:31:38,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:31:38,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:31:38,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:31:38,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:31:40,769.769 INFO    ] ================================================
[2026-06-22 17:31:40,785.785 INFO    ] Launching Daemon at Mon Jun 22 17:31:40 IST 2026
[2026-06-22 17:31:40,795.795 INFO    ] ================================================
[2026-06-22 17:31:41,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:31:41
[2026-06-22 17:31:41,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:31:42,249.249 INFO    ] Initializing speech engine...
[2026-06-22 17:31:42,260.260 INFO    ] 2026-06-22 17:31:42
[2026-06-22 17:31:42,519.519 INFO    ] 2026-06-22 17:31:42
[2026-06-22 17:31:42,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:31:42,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:31:42,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:31:42,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:31:43,008.008 INFO    ] time= 22/06/2026 17:31:42
[2026-06-22 17:31:43,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:31:43,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:31:43,237.237 INFO    ] No existing commands found in stream
[2026-06-22 17:31:48,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:31:48,263.263 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-22 17:31:48,888.888 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:31:48,892.892 INFO    ] Checking for system updates...
[2026-06-22 17:31:48,935.935 INFO    ] 200
[2026-06-22 17:31:48,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:31:48,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:31:48,999.999 INFO    ] No update needed
[2026-06-22 17:31:49,002.002 INFO    ] Checking for camera pi updates...
[2026-06-22 17:31:49,040.040 INFO    ] 200
[2026-06-22 17:31:49,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:31:49,088.088 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:31:49,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:31:49,187.187 INFO    ] No camera update needed
[2026-06-22 17:31:49,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:31:49,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:31:49,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:31:49,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:31:51,246.246 INFO    ] ================================================
[2026-06-22 17:31:51,262.262 INFO    ] Launching Daemon at Mon Jun 22 17:31:51 IST 2026
[2026-06-22 17:31:51,273.273 INFO    ] ================================================
[2026-06-22 17:31:51,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:31:51
[2026-06-22 17:31:52,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:31:52,610.610 INFO    ] Initializing speech engine...
[2026-06-22 17:31:52,629.629 INFO    ] 2026-06-22 17:31:52
[2026-06-22 17:31:52,893.893 INFO    ] 2026-06-22 17:31:52
[2026-06-22 17:31:52,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:31:53,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:31:53,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:31:53,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:31:53,299.299 INFO    ] time= 22/06/2026 17:31:53
[2026-06-22 17:31:53,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:31:53,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:31:53,382.382 INFO    ] No existing commands found in stream
[2026-06-22 17:31:58,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:31:58,398.398 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-22 17:32:01,622.622 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:32:01,633.633 INFO    ] Checking for system updates...
[2026-06-22 17:32:01,680.680 INFO    ] 200
[2026-06-22 17:32:01,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:32:01,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:32:01,798.798 INFO    ] No update needed
[2026-06-22 17:32:01,802.802 INFO    ] Checking for camera pi updates...
[2026-06-22 17:32:01,852.852 INFO    ] 200
[2026-06-22 17:32:01,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:32:01,902.902 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:32:01,977.977 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:32:01,980.980 INFO    ] No camera update needed
[2026-06-22 17:32:01,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:32:01,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:32:01,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:32:01,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:32:04,042.042 INFO    ] ================================================
[2026-06-22 17:32:04,058.058 INFO    ] Launching Daemon at Mon Jun 22 17:32:04 IST 2026
[2026-06-22 17:32:04,070.070 INFO    ] ================================================
[2026-06-22 17:32:04,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:32:04
[2026-06-22 17:32:05,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:32:05,587.587 INFO    ] Initializing speech engine...
[2026-06-22 17:32:05,595.595 INFO    ] 2026-06-22 17:32:05
[2026-06-22 17:32:05,891.891 INFO    ] 2026-06-22 17:32:05
[2026-06-22 17:32:05,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:32:06,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:32:06,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:32:06,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:32:06,322.322 INFO    ] time= 22/06/2026 17:32:06
[2026-06-22 17:32:06,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:32:06,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:32:06,416.416 INFO    ] No existing commands found in stream
[2026-06-22 17:32:11,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:32:11,433.433 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-22 17:32:14,050.050 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:32:14,052.052 INFO    ] Checking for system updates...
[2026-06-22 17:32:14,094.094 INFO    ] 200
[2026-06-22 17:32:14,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:32:14,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:32:14,157.157 INFO    ] No update needed
[2026-06-22 17:32:14,160.160 INFO    ] Checking for camera pi updates...
[2026-06-22 17:32:14,201.201 INFO    ] 200
[2026-06-22 17:32:14,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:32:14,257.257 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:32:14,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:32:14,345.345 INFO    ] No camera update needed
[2026-06-22 17:32:14,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:32:14,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:32:14,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:32:14,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:32:16,407.407 INFO    ] ================================================
[2026-06-22 17:32:16,423.423 INFO    ] Launching Daemon at Mon Jun 22 17:32:16 IST 2026
[2026-06-22 17:32:16,434.434 INFO    ] ================================================
[2026-06-22 17:32:17,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:32:17
[2026-06-22 17:32:17,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:32:18,071.071 INFO    ] Initializing speech engine...
[2026-06-22 17:32:18,079.079 INFO    ] 2026-06-22 17:32:18
[2026-06-22 17:32:18,304.304 INFO    ] 2026-06-22 17:32:18
[2026-06-22 17:32:18,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:32:18,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:32:18,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:32:18,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:32:18,790.790 INFO    ] time= 22/06/2026 17:32:18
[2026-06-22 17:32:18,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:32:18,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:32:18,968.968 INFO    ] No existing commands found in stream
[2026-06-22 17:32:23,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:32:23,993.993 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-22 17:32:24,580.580 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:32:24,583.583 INFO    ] Checking for system updates...
[2026-06-22 17:32:24,621.621 INFO    ] 200
[2026-06-22 17:32:24,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:32:24,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:32:24,689.689 INFO    ] No update needed
[2026-06-22 17:32:24,692.692 INFO    ] Checking for camera pi updates...
[2026-06-22 17:32:24,732.732 INFO    ] 200
[2026-06-22 17:32:24,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:32:24,788.788 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:32:24,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:32:24,967.967 INFO    ] No camera update needed
[2026-06-22 17:32:24,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:32:24,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:32:24,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:32:24,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:32:27,025.025 INFO    ] ================================================
[2026-06-22 17:32:27,041.041 INFO    ] Launching Daemon at Mon Jun 22 17:32:27 IST 2026
[2026-06-22 17:32:27,052.052 INFO    ] ================================================
[2026-06-22 17:32:27,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:32:27
[2026-06-22 17:32:28,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:32:28,481.481 INFO    ] Initializing speech engine...
[2026-06-22 17:32:28,489.489 INFO    ] 2026-06-22 17:32:28
[2026-06-22 17:32:28,737.737 INFO    ] 2026-06-22 17:32:28
[2026-06-22 17:32:28,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:32:28,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:32:28,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:32:29,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:32:29,106.106 INFO    ] time= 22/06/2026 17:32:29
[2026-06-22 17:32:29,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:32:29,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:32:29,287.287 INFO    ] No existing commands found in stream
[2026-06-22 17:32:34,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:32:34,299.299 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-22 17:32:38,225.225 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:32:38,227.227 INFO    ] Checking for system updates...
[2026-06-22 17:32:38,268.268 INFO    ] 200
[2026-06-22 17:32:38,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:32:38,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:32:38,328.328 INFO    ] No update needed
[2026-06-22 17:32:38,331.331 INFO    ] Checking for camera pi updates...
[2026-06-22 17:32:38,358.358 INFO    ] 200
[2026-06-22 17:32:38,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:32:38,383.383 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:32:38,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:32:38,463.463 INFO    ] No camera update needed
[2026-06-22 17:32:38,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:32:38,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:32:38,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:32:38,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:32:40,522.522 INFO    ] ================================================
[2026-06-22 17:32:40,538.538 INFO    ] Launching Daemon at Mon Jun 22 17:32:40 IST 2026
[2026-06-22 17:32:40,549.549 INFO    ] ================================================
[2026-06-22 17:32:41,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:32:41
[2026-06-22 17:32:41,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:32:41,909.909 INFO    ] Initializing speech engine...
[2026-06-22 17:32:41,915.915 INFO    ] 2026-06-22 17:32:41
[2026-06-22 17:32:42,222.222 INFO    ] 2026-06-22 17:32:42
[2026-06-22 17:32:42,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:32:42,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:32:42,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:32:42,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:32:42,656.656 INFO    ] time= 22/06/2026 17:32:42
[2026-06-22 17:32:42,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:32:42,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:32:42,750.750 INFO    ] No existing commands found in stream
[2026-06-22 17:32:47,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:32:47,766.766 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-22 17:32:50,805.805 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:32:50,808.808 INFO    ] Checking for system updates...
[2026-06-22 17:32:50,845.845 INFO    ] 200
[2026-06-22 17:32:50,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:32:50,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:32:50,908.908 INFO    ] No update needed
[2026-06-22 17:32:50,910.910 INFO    ] Checking for camera pi updates...
[2026-06-22 17:32:50,946.946 INFO    ] 200
[2026-06-22 17:32:50,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:32:50,989.989 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:32:51,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:32:51,060.060 INFO    ] No camera update needed
[2026-06-22 17:32:51,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:32:51,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:32:51,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:32:51,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:32:53,117.117 INFO    ] ================================================
[2026-06-22 17:32:53,133.133 INFO    ] Launching Daemon at Mon Jun 22 17:32:53 IST 2026
[2026-06-22 17:32:53,144.144 INFO    ] ================================================
[2026-06-22 17:32:53,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:32:53
[2026-06-22 17:32:54,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:32:54,517.517 INFO    ] Initializing speech engine...
[2026-06-22 17:32:54,522.522 INFO    ] 2026-06-22 17:32:54
[2026-06-22 17:32:54,772.772 INFO    ] 2026-06-22 17:32:54
[2026-06-22 17:32:54,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:32:55,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:32:55,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:32:55,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:32:55,266.266 INFO    ] time= 22/06/2026 17:32:55
[2026-06-22 17:32:55,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:32:55,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:32:55,495.495 INFO    ] No existing commands found in stream
[2026-06-22 17:33:00,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:33:00,528.528 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-22 17:33:02,441.441 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:33:02,444.444 INFO    ] Checking for system updates...
[2026-06-22 17:33:02,489.489 INFO    ] 200
[2026-06-22 17:33:02,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:33:02,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:33:02,556.556 INFO    ] No update needed
[2026-06-22 17:33:02,559.559 INFO    ] Checking for camera pi updates...
[2026-06-22 17:33:02,606.606 INFO    ] 200
[2026-06-22 17:33:02,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:33:02,683.683 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:33:02,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:33:02,759.759 INFO    ] No camera update needed
[2026-06-22 17:33:02,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:33:02,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:33:02,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:33:02,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:33:04,815.815 INFO    ] ================================================
[2026-06-22 17:33:04,830.830 INFO    ] Launching Daemon at Mon Jun 22 17:33:04 IST 2026
[2026-06-22 17:33:04,841.841 INFO    ] ================================================
[2026-06-22 17:33:05,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:33:05
[2026-06-22 17:33:05,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:33:06,296.296 INFO    ] Initializing speech engine...
[2026-06-22 17:33:06,305.305 INFO    ] 2026-06-22 17:33:06
[2026-06-22 17:33:06,575.575 INFO    ] 2026-06-22 17:33:06
[2026-06-22 17:33:06,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:33:06,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:33:06,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:33:06,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:33:07,040.040 INFO    ] time= 22/06/2026 17:33:06
[2026-06-22 17:33:07,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:33:07,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:33:07,223.223 INFO    ] No existing commands found in stream
[2026-06-22 17:33:12,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:33:12,238.238 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-22 17:33:14,125.125 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:33:14,126.126 INFO    ] Checking for system updates...
[2026-06-22 17:33:14,148.148 INFO    ] 200
[2026-06-22 17:33:14,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:33:14,194.194 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:33:14,196.196 INFO    ] No update needed
[2026-06-22 17:33:14,199.199 INFO    ] Checking for camera pi updates...
[2026-06-22 17:33:14,239.239 INFO    ] 200
[2026-06-22 17:33:14,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:33:14,291.291 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:33:14,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:33:14,382.382 INFO    ] No camera update needed
[2026-06-22 17:33:14,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:33:14,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:33:14,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:33:14,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:33:16,438.438 INFO    ] ================================================
[2026-06-22 17:33:16,453.453 INFO    ] Launching Daemon at Mon Jun 22 17:33:16 IST 2026
[2026-06-22 17:33:16,464.464 INFO    ] ================================================
[2026-06-22 17:33:17,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:33:17
[2026-06-22 17:33:17,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:33:17,892.892 INFO    ] Initializing speech engine...
[2026-06-22 17:33:17,911.911 INFO    ] 2026-06-22 17:33:17
[2026-06-22 17:33:18,160.160 INFO    ] 2026-06-22 17:33:18
[2026-06-22 17:33:18,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:33:18,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:33:18,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:33:18,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:33:18,591.591 INFO    ] time= 22/06/2026 17:33:18
[2026-06-22 17:33:18,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:33:18,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:33:18,772.772 INFO    ] No existing commands found in stream
[2026-06-22 17:33:23,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:33:23,787.787 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-22 17:33:24,658.658 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:33:24,660.660 INFO    ] Checking for system updates...
[2026-06-22 17:33:24,699.699 INFO    ] 200
[2026-06-22 17:33:24,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:33:24,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:33:24,766.766 INFO    ] No update needed
[2026-06-22 17:33:24,769.769 INFO    ] Checking for camera pi updates...
[2026-06-22 17:33:24,804.804 INFO    ] 200
[2026-06-22 17:33:24,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:33:24,857.857 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:33:24,943.943 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:33:24,945.945 INFO    ] No camera update needed
[2026-06-22 17:33:24,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:33:24,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:33:24,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:33:24,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:33:27,006.006 INFO    ] ================================================
[2026-06-22 17:33:27,023.023 INFO    ] Launching Daemon at Mon Jun 22 17:33:27 IST 2026
[2026-06-22 17:33:27,035.035 INFO    ] ================================================
[2026-06-22 17:33:27,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:33:27
[2026-06-22 17:33:28,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:33:28,561.561 INFO    ] Initializing speech engine...
[2026-06-22 17:33:28,567.567 INFO    ] 2026-06-22 17:33:28
[2026-06-22 17:33:28,874.874 INFO    ] 2026-06-22 17:33:28
[2026-06-22 17:33:28,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:33:29,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:33:29,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:33:29,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:33:29,279.279 INFO    ] time= 22/06/2026 17:33:29
[2026-06-22 17:33:29,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:33:29,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:33:29,391.391 INFO    ] No existing commands found in stream
[2026-06-22 17:33:34,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:33:34,406.406 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-22 17:33:36,309.309 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:33:36,312.312 INFO    ] Checking for system updates...
[2026-06-22 17:33:36,349.349 INFO    ] 200
[2026-06-22 17:33:36,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:33:36,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:33:36,414.414 INFO    ] No update needed
[2026-06-22 17:33:36,416.416 INFO    ] Checking for camera pi updates...
[2026-06-22 17:33:36,454.454 INFO    ] 200
[2026-06-22 17:33:36,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:33:36,502.502 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:33:36,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:33:36,582.582 INFO    ] No camera update needed
[2026-06-22 17:33:36,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:33:36,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:33:36,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:33:36,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:33:38,638.638 INFO    ] ================================================
[2026-06-22 17:33:38,654.654 INFO    ] Launching Daemon at Mon Jun 22 17:33:38 IST 2026
[2026-06-22 17:33:38,665.665 INFO    ] ================================================
[2026-06-22 17:33:39,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:33:39
[2026-06-22 17:33:39,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:33:40,127.127 INFO    ] Initializing speech engine...
[2026-06-22 17:33:40,139.139 INFO    ] 2026-06-22 17:33:40
[2026-06-22 17:33:40,424.424 INFO    ] 2026-06-22 17:33:40
[2026-06-22 17:33:40,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:33:40,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:33:40,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:33:40,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:33:40,957.957 INFO    ] time= 22/06/2026 17:33:40
[2026-06-22 17:33:40,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:33:41,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:33:41,114.114 INFO    ] No existing commands found in stream
[2026-06-22 17:33:46,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:33:46,152.152 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-22 17:33:50,509.509 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:33:50,512.512 INFO    ] Checking for system updates...
[2026-06-22 17:33:50,552.552 INFO    ] 200
[2026-06-22 17:33:50,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:33:50,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:33:50,610.610 INFO    ] No update needed
[2026-06-22 17:33:50,613.613 INFO    ] Checking for camera pi updates...
[2026-06-22 17:33:50,647.647 INFO    ] 200
[2026-06-22 17:33:50,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:33:50,690.690 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:33:50,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:33:50,776.776 INFO    ] No camera update needed
[2026-06-22 17:33:50,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:33:50,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:33:50,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:33:50,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:33:52,832.832 INFO    ] ================================================
[2026-06-22 17:33:52,847.847 INFO    ] Launching Daemon at Mon Jun 22 17:33:52 IST 2026
[2026-06-22 17:33:52,858.858 INFO    ] ================================================
[2026-06-22 17:33:53,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:33:53
[2026-06-22 17:33:54,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:33:54,316.316 INFO    ] Initializing speech engine...
[2026-06-22 17:33:54,326.326 INFO    ] 2026-06-22 17:33:54
[2026-06-22 17:33:54,583.583 INFO    ] 2026-06-22 17:33:54
[2026-06-22 17:33:54,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:33:54,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:33:54,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:33:55,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:33:55,081.081 INFO    ] time= 22/06/2026 17:33:55
[2026-06-22 17:33:55,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:33:55,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:33:55,286.286 INFO    ] No existing commands found in stream
[2026-06-22 17:34:00,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:34:00,309.309 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-22 17:34:01,209.209 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:34:01,211.211 INFO    ] Checking for system updates...
[2026-06-22 17:34:01,248.248 INFO    ] 200
[2026-06-22 17:34:01,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:34:01,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:34:01,316.316 INFO    ] No update needed
[2026-06-22 17:34:01,321.321 INFO    ] Checking for camera pi updates...
[2026-06-22 17:34:01,421.421 INFO    ] 200
[2026-06-22 17:34:01,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:34:01,495.495 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:34:01,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:34:01,567.567 INFO    ] No camera update needed
[2026-06-22 17:34:01,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:34:01,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:34:01,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:34:01,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:34:03,637.637 INFO    ] ================================================
[2026-06-22 17:34:03,653.653 INFO    ] Launching Daemon at Mon Jun 22 17:34:03 IST 2026
[2026-06-22 17:34:03,664.664 INFO    ] ================================================
[2026-06-22 17:34:04,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:34:04
[2026-06-22 17:34:04,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:34:05,120.120 INFO    ] Initializing speech engine...
[2026-06-22 17:34:05,129.129 INFO    ] 2026-06-22 17:34:05
[2026-06-22 17:34:05,427.427 INFO    ] 2026-06-22 17:34:05
[2026-06-22 17:34:05,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:34:05,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:34:05,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:34:05,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:34:05,851.851 INFO    ] time= 22/06/2026 17:34:05
[2026-06-22 17:34:05,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:34:05,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:34:05,991.991 INFO    ] No existing commands found in stream
[2026-06-22 17:34:11,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:34:11,029.029 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-22 17:34:14,039.039 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:34:14,041.041 INFO    ] Checking for system updates...
[2026-06-22 17:34:14,082.082 INFO    ] 200
[2026-06-22 17:34:14,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:34:14,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:34:14,148.148 INFO    ] No update needed
[2026-06-22 17:34:14,150.150 INFO    ] Checking for camera pi updates...
[2026-06-22 17:34:14,188.188 INFO    ] 200
[2026-06-22 17:34:14,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:34:14,237.237 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:34:14,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:34:14,324.324 INFO    ] No camera update needed
[2026-06-22 17:34:14,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:34:14,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:34:14,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:34:14,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:34:16,381.381 INFO    ] ================================================
[2026-06-22 17:34:16,397.397 INFO    ] Launching Daemon at Mon Jun 22 17:34:16 IST 2026
[2026-06-22 17:34:16,409.409 INFO    ] ================================================
[2026-06-22 17:34:16,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:34:16
[2026-06-22 17:34:17,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:34:17,744.744 INFO    ] Initializing speech engine...
[2026-06-22 17:34:17,750.750 INFO    ] 2026-06-22 17:34:17
[2026-06-22 17:34:18,050.050 INFO    ] 2026-06-22 17:34:18
[2026-06-22 17:34:18,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:34:18,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:34:18,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:34:18,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:34:18,480.480 INFO    ] time= 22/06/2026 17:34:18
[2026-06-22 17:34:18,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:34:18,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:34:18,565.565 INFO    ] No existing commands found in stream
[2026-06-22 17:34:23,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:34:23,581.581 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-22 17:34:27,175.175 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:34:27,178.178 INFO    ] Checking for system updates...
[2026-06-22 17:34:27,216.216 INFO    ] 200
[2026-06-22 17:34:27,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:34:27,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:34:27,275.275 INFO    ] No update needed
[2026-06-22 17:34:27,278.278 INFO    ] Checking for camera pi updates...
[2026-06-22 17:34:27,313.313 INFO    ] 200
[2026-06-22 17:34:27,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:34:27,358.358 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:34:27,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:34:27,515.515 INFO    ] No camera update needed
[2026-06-22 17:34:27,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:34:27,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:34:27,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:34:27,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:34:29,575.575 INFO    ] ================================================
[2026-06-22 17:34:29,592.592 INFO    ] Launching Daemon at Mon Jun 22 17:34:29 IST 2026
[2026-06-22 17:34:29,739.739 INFO    ] ================================================
[2026-06-22 17:34:30,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:34:30
[2026-06-22 17:34:30,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:34:31,178.178 INFO    ] Initializing speech engine...
[2026-06-22 17:34:31,188.188 INFO    ] 2026-06-22 17:34:31
[2026-06-22 17:34:31,448.448 INFO    ] 2026-06-22 17:34:31
[2026-06-22 17:34:31,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:34:31,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:34:31,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:34:31,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:34:31,959.959 INFO    ] time= 22/06/2026 17:34:31
[2026-06-22 17:34:32,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:34:32,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:34:32,181.181 INFO    ] No existing commands found in stream
[2026-06-22 17:34:37,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:34:37,214.214 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-22 17:34:39,671.671 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:34:39,674.674 INFO    ] Checking for system updates...
[2026-06-22 17:34:39,710.710 INFO    ] 200
[2026-06-22 17:34:39,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:34:39,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:34:39,775.775 INFO    ] No update needed
[2026-06-22 17:34:39,777.777 INFO    ] Checking for camera pi updates...
[2026-06-22 17:34:39,823.823 INFO    ] 200
[2026-06-22 17:34:39,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:34:39,866.866 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:34:39,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:34:39,953.953 INFO    ] No camera update needed
[2026-06-22 17:34:39,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:34:39,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:34:39,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:34:39,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:34:42,010.010 INFO    ] ================================================
[2026-06-22 17:34:42,025.025 INFO    ] Launching Daemon at Mon Jun 22 17:34:42 IST 2026
[2026-06-22 17:34:42,037.037 INFO    ] ================================================
[2026-06-22 17:34:42,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:34:42
[2026-06-22 17:34:43,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:34:43,534.534 INFO    ] Initializing speech engine...
[2026-06-22 17:34:43,542.542 INFO    ] 2026-06-22 17:34:43
[2026-06-22 17:34:43,815.815 INFO    ] 2026-06-22 17:34:43
[2026-06-22 17:34:43,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:34:44,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:34:44,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:34:44,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:34:44,349.349 INFO    ] time= 22/06/2026 17:34:44
[2026-06-22 17:34:44,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:34:44,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:34:44,502.502 INFO    ] No existing commands found in stream
[2026-06-22 17:34:49,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:34:49,517.517 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-22 17:34:51,871.871 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:34:51,874.874 INFO    ] Checking for system updates...
[2026-06-22 17:34:51,911.911 INFO    ] 200
[2026-06-22 17:34:51,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:34:51,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:34:51,980.980 INFO    ] No update needed
[2026-06-22 17:34:51,982.982 INFO    ] Checking for camera pi updates...
[2026-06-22 17:34:52,022.022 INFO    ] 200
[2026-06-22 17:34:52,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:34:52,073.073 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:34:52,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:34:52,176.176 INFO    ] No camera update needed
[2026-06-22 17:34:52,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:34:52,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:34:52,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:34:52,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:34:54,237.237 INFO    ] ================================================
[2026-06-22 17:34:54,251.251 INFO    ] Launching Daemon at Mon Jun 22 17:34:54 IST 2026
[2026-06-22 17:34:54,262.262 INFO    ] ================================================
[2026-06-22 17:34:54,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:34:54
[2026-06-22 17:34:55,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:34:55,631.631 INFO    ] Initializing speech engine...
[2026-06-22 17:34:55,638.638 INFO    ] 2026-06-22 17:34:55
[2026-06-22 17:34:55,897.897 INFO    ] 2026-06-22 17:34:55
[2026-06-22 17:34:55,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:34:56,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:34:56,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:34:56,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:34:56,402.402 INFO    ] time= 22/06/2026 17:34:56
[2026-06-22 17:34:56,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:34:56,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:34:56,604.604 INFO    ] No existing commands found in stream
[2026-06-22 17:35:01,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:35:01,622.622 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-22 17:35:02,608.608 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:35:02,612.612 INFO    ] Checking for system updates...
[2026-06-22 17:35:02,658.658 INFO    ] 200
[2026-06-22 17:35:02,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:35:02,725.725 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:35:02,728.728 INFO    ] No update needed
[2026-06-22 17:35:02,733.733 INFO    ] Checking for camera pi updates...
[2026-06-22 17:35:02,780.780 INFO    ] 200
[2026-06-22 17:35:02,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:35:02,855.855 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:35:02,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:35:02,927.927 INFO    ] No camera update needed
[2026-06-22 17:35:02,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:35:02,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:35:02,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:35:02,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:35:04,990.990 INFO    ] ================================================
[2026-06-22 17:35:05,005.005 INFO    ] Launching Daemon at Mon Jun 22 17:35:04 IST 2026
[2026-06-22 17:35:05,016.016 INFO    ] ================================================
[2026-06-22 17:35:05,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:35:05
[2026-06-22 17:35:06,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:35:06,402.402 INFO    ] Initializing speech engine...
[2026-06-22 17:35:06,412.412 INFO    ] 2026-06-22 17:35:06
[2026-06-22 17:35:06,660.660 INFO    ] 2026-06-22 17:35:06
[2026-06-22 17:35:06,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:35:06,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:35:06,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:35:07,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:35:07,121.121 INFO    ] time= 22/06/2026 17:35:07
[2026-06-22 17:35:07,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:35:07,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:35:07,347.347 INFO    ] No existing commands found in stream
[2026-06-22 17:35:12,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:35:12,380.380 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-22 17:35:15,231.231 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:35:15,234.234 INFO    ] Checking for system updates...
[2026-06-22 17:35:15,271.271 INFO    ] 200
[2026-06-22 17:35:15,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:35:15,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:35:15,332.332 INFO    ] No update needed
[2026-06-22 17:35:15,335.335 INFO    ] Checking for camera pi updates...
[2026-06-22 17:35:15,372.372 INFO    ] 200
[2026-06-22 17:35:15,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:35:15,417.417 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:35:15,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:35:15,505.505 INFO    ] No camera update needed
[2026-06-22 17:35:15,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:35:15,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:35:15,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:35:15,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:35:17,560.560 INFO    ] ================================================
[2026-06-22 17:35:17,576.576 INFO    ] Launching Daemon at Mon Jun 22 17:35:17 IST 2026
[2026-06-22 17:35:17,586.586 INFO    ] ================================================
[2026-06-22 17:35:18,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:35:18
[2026-06-22 17:35:18,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:35:19,016.016 INFO    ] Initializing speech engine...
[2026-06-22 17:35:19,024.024 INFO    ] 2026-06-22 17:35:19
[2026-06-22 17:35:19,312.312 INFO    ] 2026-06-22 17:35:19
[2026-06-22 17:35:19,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:35:19,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:35:19,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:35:19,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:35:19,822.822 INFO    ] time= 22/06/2026 17:35:19
[2026-06-22 17:35:19,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:35:19,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:35:19,997.997 INFO    ] No existing commands found in stream
[2026-06-22 17:35:25,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:35:25,026.026 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-22 17:35:27,589.589 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:35:27,592.592 INFO    ] Checking for system updates...
[2026-06-22 17:35:27,634.634 INFO    ] 200
[2026-06-22 17:35:27,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:35:27,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:35:27,697.697 INFO    ] No update needed
[2026-06-22 17:35:27,699.699 INFO    ] Checking for camera pi updates...
[2026-06-22 17:35:27,736.736 INFO    ] 200
[2026-06-22 17:35:27,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:35:27,779.779 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:35:27,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:35:27,861.861 INFO    ] No camera update needed
[2026-06-22 17:35:27,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:35:27,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:35:27,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:35:27,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:35:29,917.917 INFO    ] ================================================
[2026-06-22 17:35:29,932.932 INFO    ] Launching Daemon at Mon Jun 22 17:35:29 IST 2026
[2026-06-22 17:35:29,943.943 INFO    ] ================================================
[2026-06-22 17:35:30,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:35:30
[2026-06-22 17:35:31,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:35:31,414.414 INFO    ] Initializing speech engine...
[2026-06-22 17:35:31,426.426 INFO    ] 2026-06-22 17:35:31
[2026-06-22 17:35:31,727.727 INFO    ] 2026-06-22 17:35:31
[2026-06-22 17:35:31,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:35:31,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:35:31,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:35:32,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:35:32,174.174 INFO    ] time= 22/06/2026 17:35:32
[2026-06-22 17:35:32,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:35:32,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:35:32,341.341 INFO    ] No existing commands found in stream
[2026-06-22 17:35:37,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:35:37,369.369 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-22 17:35:40,164.164 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:35:40,167.167 INFO    ] Checking for system updates...
[2026-06-22 17:35:40,202.202 INFO    ] 200
[2026-06-22 17:35:40,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:35:40,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:35:40,260.260 INFO    ] No update needed
[2026-06-22 17:35:40,263.263 INFO    ] Checking for camera pi updates...
[2026-06-22 17:35:40,297.297 INFO    ] 200
[2026-06-22 17:35:40,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:35:40,340.340 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:35:40,418.418 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:35:40,420.420 INFO    ] No camera update needed
[2026-06-22 17:35:40,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:35:40,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:35:40,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:35:40,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:35:42,477.477 INFO    ] ================================================
[2026-06-22 17:35:42,492.492 INFO    ] Launching Daemon at Mon Jun 22 17:35:42 IST 2026
[2026-06-22 17:35:42,503.503 INFO    ] ================================================
[2026-06-22 17:35:43,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:35:43
[2026-06-22 17:35:43,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:35:44,097.097 INFO    ] Initializing speech engine...
[2026-06-22 17:35:44,105.105 INFO    ] 2026-06-22 17:35:44
[2026-06-22 17:35:44,419.419 INFO    ] 2026-06-22 17:35:44
[2026-06-22 17:35:44,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:35:44,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:35:44,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:35:44,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:35:44,937.937 INFO    ] time= 22/06/2026 17:35:44
[2026-06-22 17:35:44,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:35:44,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:35:45,083.083 INFO    ] No existing commands found in stream
[2026-06-22 17:35:50,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:35:50,113.113 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-22 17:35:53,681.681 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:35:53,685.685 INFO    ] Checking for system updates...
[2026-06-22 17:35:53,722.722 INFO    ] 200
[2026-06-22 17:35:53,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:35:53,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:35:53,783.783 INFO    ] No update needed
[2026-06-22 17:35:53,786.786 INFO    ] Checking for camera pi updates...
[2026-06-22 17:35:53,823.823 INFO    ] 200
[2026-06-22 17:35:53,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:35:53,868.868 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:35:53,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:35:53,955.955 INFO    ] No camera update needed
[2026-06-22 17:35:53,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:35:53,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:35:53,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:35:53,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:35:56,012.012 INFO    ] ================================================
[2026-06-22 17:35:56,027.027 INFO    ] Launching Daemon at Mon Jun 22 17:35:56 IST 2026
[2026-06-22 17:35:56,038.038 INFO    ] ================================================
[2026-06-22 17:35:56,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:35:56
[2026-06-22 17:35:57,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:35:57,396.396 INFO    ] Initializing speech engine...
[2026-06-22 17:35:57,405.405 INFO    ] 2026-06-22 17:35:57
[2026-06-22 17:35:57,700.700 INFO    ] 2026-06-22 17:35:57
[2026-06-22 17:35:57,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:35:57,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:35:57,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:35:58,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:35:58,117.117 INFO    ] time= 22/06/2026 17:35:58
[2026-06-22 17:35:58,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:35:58,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:35:58,298.298 INFO    ] No existing commands found in stream
[2026-06-22 17:36:03,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:36:03,327.327 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-22 17:36:07,155.155 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:36:07,158.158 INFO    ] Checking for system updates...
[2026-06-22 17:36:07,197.197 INFO    ] 200
[2026-06-22 17:36:07,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:36:07,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:36:07,259.259 INFO    ] No update needed
[2026-06-22 17:36:07,261.261 INFO    ] Checking for camera pi updates...
[2026-06-22 17:36:07,295.295 INFO    ] 200
[2026-06-22 17:36:07,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:36:07,344.344 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:36:07,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:36:07,449.449 INFO    ] No camera update needed
[2026-06-22 17:36:07,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:36:07,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:36:07,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:36:07,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:36:09,504.504 INFO    ] ================================================
[2026-06-22 17:36:09,520.520 INFO    ] Launching Daemon at Mon Jun 22 17:36:09 IST 2026
[2026-06-22 17:36:09,531.531 INFO    ] ================================================
[2026-06-22 17:36:10,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:36:10
[2026-06-22 17:36:10,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:36:10,906.906 INFO    ] Initializing speech engine...
[2026-06-22 17:36:10,920.920 INFO    ] 2026-06-22 17:36:10
[2026-06-22 17:36:11,185.185 INFO    ] 2026-06-22 17:36:11
[2026-06-22 17:36:11,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:36:11,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:36:11,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:36:11,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:36:11,764.764 INFO    ] time= 22/06/2026 17:36:11
[2026-06-22 17:36:11,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:36:11,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:36:11,970.970 INFO    ] No existing commands found in stream
[2026-06-22 17:36:16,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:36:16,997.997 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-22 17:36:18,384.384 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:36:18,385.385 INFO    ] Checking for system updates...
[2026-06-22 17:36:18,406.406 INFO    ] 200
[2026-06-22 17:36:18,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:36:18,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:36:18,461.461 INFO    ] No update needed
[2026-06-22 17:36:18,463.463 INFO    ] Checking for camera pi updates...
[2026-06-22 17:36:18,497.497 INFO    ] 200
[2026-06-22 17:36:18,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:36:18,541.541 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:36:18,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:36:18,625.625 INFO    ] No camera update needed
[2026-06-22 17:36:18,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:36:18,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:36:18,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:36:18,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:36:20,680.680 INFO    ] ================================================
[2026-06-22 17:36:20,696.696 INFO    ] Launching Daemon at Mon Jun 22 17:36:20 IST 2026
[2026-06-22 17:36:20,708.708 INFO    ] ================================================
[2026-06-22 17:36:21,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:36:21
[2026-06-22 17:36:21,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:36:22,070.070 INFO    ] Initializing speech engine...
[2026-06-22 17:36:22,077.077 INFO    ] 2026-06-22 17:36:22
[2026-06-22 17:36:22,338.338 INFO    ] 2026-06-22 17:36:22
[2026-06-22 17:36:22,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:36:22,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:36:22,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:36:22,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:36:22,882.882 INFO    ] time= 22/06/2026 17:36:22
[2026-06-22 17:36:22,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:36:22,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:36:23,034.034 INFO    ] No existing commands found in stream
[2026-06-22 17:36:28,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:36:28,051.051 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-22 17:36:30,245.245 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:36:30,247.247 INFO    ] Checking for system updates...
[2026-06-22 17:36:30,272.272 INFO    ] 200
[2026-06-22 17:36:30,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:36:30,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:36:30,307.307 INFO    ] No update needed
[2026-06-22 17:36:30,308.308 INFO    ] Checking for camera pi updates...
[2026-06-22 17:36:30,336.336 INFO    ] 200
[2026-06-22 17:36:30,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:36:30,379.379 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:36:30,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:36:30,569.569 INFO    ] No camera update needed
[2026-06-22 17:36:30,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:36:30,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:36:30,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:36:30,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:36:32,629.629 INFO    ] ================================================
[2026-06-22 17:36:32,647.647 INFO    ] Launching Daemon at Mon Jun 22 17:36:32 IST 2026
[2026-06-22 17:36:32,659.659 INFO    ] ================================================
[2026-06-22 17:36:33,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:36:33
[2026-06-22 17:36:33,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:36:34,118.118 INFO    ] Initializing speech engine...
[2026-06-22 17:36:34,125.125 INFO    ] 2026-06-22 17:36:34
[2026-06-22 17:36:34,373.373 INFO    ] 2026-06-22 17:36:34
[2026-06-22 17:36:34,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:36:34,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:36:34,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:36:34,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:36:34,843.843 INFO    ] time= 22/06/2026 17:36:34
[2026-06-22 17:36:34,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:36:34,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:36:35,094.094 INFO    ] No existing commands found in stream
[2026-06-22 17:36:40,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:36:40,117.117 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-22 17:36:43,037.037 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:36:43,040.040 INFO    ] Checking for system updates...
[2026-06-22 17:36:43,078.078 INFO    ] 200
[2026-06-22 17:36:43,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:36:43,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:36:43,136.136 INFO    ] No update needed
[2026-06-22 17:36:43,138.138 INFO    ] Checking for camera pi updates...
[2026-06-22 17:36:43,175.175 INFO    ] 200
[2026-06-22 17:36:43,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:36:43,218.218 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:36:43,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:36:43,271.271 INFO    ] No camera update needed
[2026-06-22 17:36:43,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:36:43,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:36:43,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:36:43,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:36:45,328.328 INFO    ] ================================================
[2026-06-22 17:36:45,347.347 INFO    ] Launching Daemon at Mon Jun 22 17:36:45 IST 2026
[2026-06-22 17:36:45,359.359 INFO    ] ================================================
[2026-06-22 17:36:45,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:36:45
[2026-06-22 17:36:46,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:36:46,819.819 INFO    ] Initializing speech engine...
[2026-06-22 17:36:46,828.828 INFO    ] 2026-06-22 17:36:46
[2026-06-22 17:36:47,091.091 INFO    ] 2026-06-22 17:36:47
[2026-06-22 17:36:47,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:36:47,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:36:47,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:36:47,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:36:47,663.663 INFO    ] time= 22/06/2026 17:36:47
[2026-06-22 17:36:47,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:36:47,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:36:47,823.823 INFO    ] No existing commands found in stream
[2026-06-22 17:36:52,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:36:52,840.840 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-22 17:36:54,290.290 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:36:54,291.291 INFO    ] Checking for system updates...
[2026-06-22 17:36:54,312.312 INFO    ] 200
[2026-06-22 17:36:54,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:36:54,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:36:54,357.357 INFO    ] No update needed
[2026-06-22 17:36:54,360.360 INFO    ] Checking for camera pi updates...
[2026-06-22 17:36:54,394.394 INFO    ] 200
[2026-06-22 17:36:54,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:36:54,442.442 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:36:54,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:36:54,528.528 INFO    ] No camera update needed
[2026-06-22 17:36:54,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:36:54,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:36:54,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:36:54,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:36:56,587.587 INFO    ] ================================================
[2026-06-22 17:36:56,602.602 INFO    ] Launching Daemon at Mon Jun 22 17:36:56 IST 2026
[2026-06-22 17:36:56,612.612 INFO    ] ================================================
[2026-06-22 17:36:57,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:36:57
[2026-06-22 17:36:57,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:36:58,061.061 INFO    ] Initializing speech engine...
[2026-06-22 17:36:58,077.077 INFO    ] 2026-06-22 17:36:58
[2026-06-22 17:36:58,345.345 INFO    ] 2026-06-22 17:36:58
[2026-06-22 17:36:58,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:36:58,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:36:58,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:36:58,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:36:58,750.750 INFO    ] time= 22/06/2026 17:36:58
[2026-06-22 17:36:58,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:36:58,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:36:58,913.913 INFO    ] No existing commands found in stream
[2026-06-22 17:37:03,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:37:03,936.936 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-22 17:37:06,777.777 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:37:06,780.780 INFO    ] Checking for system updates...
[2026-06-22 17:37:06,815.815 INFO    ] 200
[2026-06-22 17:37:06,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:37:06,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:37:06,873.873 INFO    ] No update needed
[2026-06-22 17:37:06,875.875 INFO    ] Checking for camera pi updates...
[2026-06-22 17:37:06,909.909 INFO    ] 200
[2026-06-22 17:37:06,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:37:06,955.955 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:37:07,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:37:07,041.041 INFO    ] No camera update needed
[2026-06-22 17:37:07,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:37:07,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:37:07,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:37:07,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:37:09,098.098 INFO    ] ================================================
[2026-06-22 17:37:09,113.113 INFO    ] Launching Daemon at Mon Jun 22 17:37:09 IST 2026
[2026-06-22 17:37:09,125.125 INFO    ] ================================================
[2026-06-22 17:37:09,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:37:09
[2026-06-22 17:37:10,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:37:10,684.684 INFO    ] Initializing speech engine...
[2026-06-22 17:37:10,692.692 INFO    ] 2026-06-22 17:37:10
[2026-06-22 17:37:10,976.976 INFO    ] 2026-06-22 17:37:10
[2026-06-22 17:37:11,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:37:11,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:37:11,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:37:11,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:37:11,524.524 INFO    ] time= 22/06/2026 17:37:11
[2026-06-22 17:37:11,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:37:11,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:37:11,700.700 INFO    ] No existing commands found in stream
[2026-06-22 17:37:16,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:37:16,733.733 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-22 17:37:20,965.965 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:37:20,967.967 INFO    ] Checking for system updates...
[2026-06-22 17:37:21,003.003 INFO    ] 200
[2026-06-22 17:37:21,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:37:21,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:37:21,067.067 INFO    ] No update needed
[2026-06-22 17:37:21,070.070 INFO    ] Checking for camera pi updates...
[2026-06-22 17:37:21,109.109 INFO    ] 200
[2026-06-22 17:37:21,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:37:21,153.153 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:37:21,239.239 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:37:21,242.242 INFO    ] No camera update needed
[2026-06-22 17:37:21,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:37:21,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:37:21,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:37:21,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:37:23,301.301 INFO    ] ================================================
[2026-06-22 17:37:23,317.317 INFO    ] Launching Daemon at Mon Jun 22 17:37:23 IST 2026
[2026-06-22 17:37:23,327.327 INFO    ] ================================================
[2026-06-22 17:37:23,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:37:23
[2026-06-22 17:37:24,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:37:24,814.814 INFO    ] Initializing speech engine...
[2026-06-22 17:37:24,827.827 INFO    ] 2026-06-22 17:37:24
[2026-06-22 17:37:25,130.130 INFO    ] 2026-06-22 17:37:25
[2026-06-22 17:37:25,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:37:25,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:37:25,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:37:25,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:37:25,642.642 INFO    ] time= 22/06/2026 17:37:25
[2026-06-22 17:37:25,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:37:25,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:37:25,795.795 INFO    ] No existing commands found in stream
[2026-06-22 17:37:30,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:37:30,818.818 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-22 17:37:32,302.302 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:37:32,305.305 INFO    ] Checking for system updates...
[2026-06-22 17:37:32,349.349 INFO    ] 200
[2026-06-22 17:37:32,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:37:32,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:37:32,413.413 INFO    ] No update needed
[2026-06-22 17:37:32,416.416 INFO    ] Checking for camera pi updates...
[2026-06-22 17:37:32,458.458 INFO    ] 200
[2026-06-22 17:37:32,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:37:32,508.508 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:37:32,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:37:32,576.576 INFO    ] No camera update needed
[2026-06-22 17:37:32,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:37:32,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:37:32,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:37:32,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:37:34,635.635 INFO    ] ================================================
[2026-06-22 17:37:34,651.651 INFO    ] Launching Daemon at Mon Jun 22 17:37:34 IST 2026
[2026-06-22 17:37:34,662.662 INFO    ] ================================================
[2026-06-22 17:37:35,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:37:35
[2026-06-22 17:37:35,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:37:36,100.100 INFO    ] Initializing speech engine...
[2026-06-22 17:37:36,109.109 INFO    ] 2026-06-22 17:37:36
[2026-06-22 17:37:36,400.400 INFO    ] 2026-06-22 17:37:36
[2026-06-22 17:37:36,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:37:36,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:37:36,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:37:36,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:37:36,812.812 INFO    ] time= 22/06/2026 17:37:36
[2026-06-22 17:37:36,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:37:36,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:37:36,894.894 INFO    ] No existing commands found in stream
[2026-06-22 17:37:41,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:37:41,909.909 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-22 17:37:45,553.553 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:37:45,556.556 INFO    ] Checking for system updates...
[2026-06-22 17:37:45,591.591 INFO    ] 200
[2026-06-22 17:37:45,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:37:45,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:37:45,669.669 INFO    ] No update needed
[2026-06-22 17:37:45,672.672 INFO    ] Checking for camera pi updates...
[2026-06-22 17:37:45,708.708 INFO    ] 200
[2026-06-22 17:37:45,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:37:45,755.755 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:37:45,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:37:45,846.846 INFO    ] No camera update needed
[2026-06-22 17:37:45,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:37:45,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:37:45,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:37:45,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:37:47,904.904 INFO    ] ================================================
[2026-06-22 17:37:47,920.920 INFO    ] Launching Daemon at Mon Jun 22 17:37:47 IST 2026
[2026-06-22 17:37:47,932.932 INFO    ] ================================================
[2026-06-22 17:37:48,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:37:48
[2026-06-22 17:37:49,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:37:49,428.428 INFO    ] Initializing speech engine...
[2026-06-22 17:37:49,434.434 INFO    ] 2026-06-22 17:37:49
[2026-06-22 17:37:49,709.709 INFO    ] 2026-06-22 17:37:49
[2026-06-22 17:37:49,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:37:50,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:37:50,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:37:50,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:37:50,204.204 INFO    ] time= 22/06/2026 17:37:50
[2026-06-22 17:37:50,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:37:50,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:37:50,426.426 INFO    ] No existing commands found in stream
[2026-06-22 17:37:55,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:37:55,447.447 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-22 17:37:59,547.547 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:37:59,550.550 INFO    ] Checking for system updates...
[2026-06-22 17:37:59,589.589 INFO    ] 200
[2026-06-22 17:37:59,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:37:59,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:37:59,648.648 INFO    ] No update needed
[2026-06-22 17:37:59,651.651 INFO    ] Checking for camera pi updates...
[2026-06-22 17:37:59,685.685 INFO    ] 200
[2026-06-22 17:37:59,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:37:59,728.728 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:37:59,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:37:59,820.820 INFO    ] No camera update needed
[2026-06-22 17:37:59,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:37:59,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:37:59,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:37:59,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:38:01,880.880 INFO    ] ================================================
[2026-06-22 17:38:01,898.898 INFO    ] Launching Daemon at Mon Jun 22 17:38:01 IST 2026
[2026-06-22 17:38:01,916.916 INFO    ] ================================================
[2026-06-22 17:38:02,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:38:02
[2026-06-22 17:38:03,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:38:03,551.551 INFO    ] Initializing speech engine...
[2026-06-22 17:38:03,559.559 INFO    ] 2026-06-22 17:38:03
[2026-06-22 17:38:03,830.830 INFO    ] 2026-06-22 17:38:03
[2026-06-22 17:38:03,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:38:04,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:38:04,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:38:04,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:38:04,325.325 INFO    ] time= 22/06/2026 17:38:04
[2026-06-22 17:38:04,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:38:04,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:38:04,536.536 INFO    ] No existing commands found in stream
[2026-06-22 17:38:09,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:38:09,552.552 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-22 17:38:11,920.920 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:38:11,922.922 INFO    ] Checking for system updates...
[2026-06-22 17:38:11,943.943 INFO    ] 200
[2026-06-22 17:38:11,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:38:11,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:38:11,977.977 INFO    ] No update needed
[2026-06-22 17:38:11,978.978 INFO    ] Checking for camera pi updates...
[2026-06-22 17:38:11,998.998 INFO    ] 200
[2026-06-22 17:38:11,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:38:12,031.031 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:38:12,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:38:12,117.117 INFO    ] No camera update needed
[2026-06-22 17:38:12,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:38:12,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:38:12,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:38:12,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:38:14,173.173 INFO    ] ================================================
[2026-06-22 17:38:14,189.189 INFO    ] Launching Daemon at Mon Jun 22 17:38:14 IST 2026
[2026-06-22 17:38:14,200.200 INFO    ] ================================================
[2026-06-22 17:38:14,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:38:14
[2026-06-22 17:38:15,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:38:15,557.557 INFO    ] Initializing speech engine...
[2026-06-22 17:38:15,573.573 INFO    ] 2026-06-22 17:38:15
[2026-06-22 17:38:15,833.833 INFO    ] 2026-06-22 17:38:15
[2026-06-22 17:38:15,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:38:16,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:38:16,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:38:16,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:38:16,316.316 INFO    ] time= 22/06/2026 17:38:16
[2026-06-22 17:38:16,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:38:16,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:38:16,457.457 INFO    ] No existing commands found in stream
[2026-06-22 17:38:21,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:38:21,474.474 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-22 17:38:24,492.492 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:38:24,495.495 INFO    ] Checking for system updates...
[2026-06-22 17:38:24,534.534 INFO    ] 200
[2026-06-22 17:38:24,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:38:24,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:38:24,592.592 INFO    ] No update needed
[2026-06-22 17:38:24,595.595 INFO    ] Checking for camera pi updates...
[2026-06-22 17:38:24,628.628 INFO    ] 200
[2026-06-22 17:38:24,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:38:24,676.676 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:38:24,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:38:24,766.766 INFO    ] No camera update needed
[2026-06-22 17:38:24,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:38:24,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:38:24,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:38:24,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:38:26,821.821 INFO    ] ================================================
[2026-06-22 17:38:26,837.837 INFO    ] Launching Daemon at Mon Jun 22 17:38:26 IST 2026
[2026-06-22 17:38:26,849.849 INFO    ] ================================================
[2026-06-22 17:38:27,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:38:27
[2026-06-22 17:38:27,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:38:28,158.158 INFO    ] Initializing speech engine...
[2026-06-22 17:38:28,164.164 INFO    ] 2026-06-22 17:38:28
[2026-06-22 17:38:28,438.438 INFO    ] 2026-06-22 17:38:28
[2026-06-22 17:38:28,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:38:28,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:38:28,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:38:28,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:38:28,918.918 INFO    ] time= 22/06/2026 17:38:28
[2026-06-22 17:38:28,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:38:29,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:38:29,123.123 INFO    ] No existing commands found in stream
[2026-06-22 17:38:34,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:38:34,148.148 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-22 17:38:35,002.002 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:38:35,005.005 INFO    ] Checking for system updates...
[2026-06-22 17:38:35,041.041 INFO    ] 200
[2026-06-22 17:38:35,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:38:35,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:38:35,105.105 INFO    ] No update needed
[2026-06-22 17:38:35,107.107 INFO    ] Checking for camera pi updates...
[2026-06-22 17:38:35,141.141 INFO    ] 200
[2026-06-22 17:38:35,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:38:35,183.183 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:38:35,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:38:35,367.367 INFO    ] No camera update needed
[2026-06-22 17:38:35,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:38:35,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:38:35,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:38:35,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:38:37,424.424 INFO    ] ================================================
[2026-06-22 17:38:37,439.439 INFO    ] Launching Daemon at Mon Jun 22 17:38:37 IST 2026
[2026-06-22 17:38:37,450.450 INFO    ] ================================================
[2026-06-22 17:38:37,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:38:37
[2026-06-22 17:38:38,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:38:38,847.847 INFO    ] Initializing speech engine...
[2026-06-22 17:38:38,856.856 INFO    ] 2026-06-22 17:38:38
[2026-06-22 17:38:39,106.106 INFO    ] 2026-06-22 17:38:39
[2026-06-22 17:38:39,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:38:39,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:38:39,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:38:39,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:38:39,482.482 INFO    ] time= 22/06/2026 17:38:39
[2026-06-22 17:38:39,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:38:39,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:38:39,683.683 INFO    ] No existing commands found in stream
[2026-06-22 17:38:44,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:38:44,696.696 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-22 17:38:45,341.341 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:38:45,343.343 INFO    ] Checking for system updates...
[2026-06-22 17:38:45,364.364 INFO    ] 200
[2026-06-22 17:38:45,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:38:45,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:38:45,398.398 INFO    ] No update needed
[2026-06-22 17:38:45,399.399 INFO    ] Checking for camera pi updates...
[2026-06-22 17:38:45,420.420 INFO    ] 200
[2026-06-22 17:38:45,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:38:45,468.468 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:38:45,561.561 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:38:45,563.563 INFO    ] No camera update needed
[2026-06-22 17:38:45,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:38:45,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:38:45,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:38:45,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:38:47,620.620 INFO    ] ================================================
[2026-06-22 17:38:47,635.635 INFO    ] Launching Daemon at Mon Jun 22 17:38:47 IST 2026
[2026-06-22 17:38:47,646.646 INFO    ] ================================================
[2026-06-22 17:38:48,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:38:48
[2026-06-22 17:38:48,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:38:49,025.025 INFO    ] Initializing speech engine...
[2026-06-22 17:38:49,032.032 INFO    ] 2026-06-22 17:38:49
[2026-06-22 17:38:49,289.289 INFO    ] 2026-06-22 17:38:49
[2026-06-22 17:38:49,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:38:49,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:38:49,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:38:49,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:38:49,841.841 INFO    ] time= 22/06/2026 17:38:49
[2026-06-22 17:38:49,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:38:49,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:38:50,047.047 INFO    ] No existing commands found in stream
[2026-06-22 17:38:55,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:38:55,081.081 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-22 17:38:56,995.995 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:38:56,998.998 INFO    ] Checking for system updates...
[2026-06-22 17:38:57,036.036 INFO    ] 200
[2026-06-22 17:38:57,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:38:57,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:38:57,101.101 INFO    ] No update needed
[2026-06-22 17:38:57,104.104 INFO    ] Checking for camera pi updates...
[2026-06-22 17:38:57,138.138 INFO    ] 200
[2026-06-22 17:38:57,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:38:57,181.181 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:38:57,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:38:57,267.267 INFO    ] No camera update needed
[2026-06-22 17:38:57,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:38:57,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:38:57,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:38:57,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:38:59,333.333 INFO    ] ================================================
[2026-06-22 17:38:59,348.348 INFO    ] Launching Daemon at Mon Jun 22 17:38:59 IST 2026
[2026-06-22 17:38:59,359.359 INFO    ] ================================================
[2026-06-22 17:39:00,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:39:00
[2026-06-22 17:39:00,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:39:00,913.913 INFO    ] Initializing speech engine...
[2026-06-22 17:39:00,928.928 INFO    ] 2026-06-22 17:39:00
[2026-06-22 17:39:01,212.212 INFO    ] 2026-06-22 17:39:01
[2026-06-22 17:39:01,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:39:01,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:39:01,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:39:01,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:39:01,739.739 INFO    ] time= 22/06/2026 17:39:01
[2026-06-22 17:39:01,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:39:01,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:39:01,851.851 INFO    ] No existing commands found in stream
[2026-06-22 17:39:06,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:39:06,887.887 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-22 17:39:09,751.751 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:39:09,754.754 INFO    ] Checking for system updates...
[2026-06-22 17:39:09,791.791 INFO    ] 200
[2026-06-22 17:39:09,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:39:09,847.847 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:39:09,849.849 INFO    ] No update needed
[2026-06-22 17:39:09,852.852 INFO    ] Checking for camera pi updates...
[2026-06-22 17:39:09,885.885 INFO    ] 200
[2026-06-22 17:39:09,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:39:09,928.928 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:39:10,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:39:10,012.012 INFO    ] No camera update needed
[2026-06-22 17:39:10,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:39:10,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:39:10,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:39:10,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:39:12,066.066 INFO    ] ================================================
[2026-06-22 17:39:12,082.082 INFO    ] Launching Daemon at Mon Jun 22 17:39:12 IST 2026
[2026-06-22 17:39:12,093.093 INFO    ] ================================================
[2026-06-22 17:39:12,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:39:12
[2026-06-22 17:39:13,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:39:13,629.629 INFO    ] Initializing speech engine...
[2026-06-22 17:39:13,641.641 INFO    ] 2026-06-22 17:39:13
[2026-06-22 17:39:13,920.920 INFO    ] 2026-06-22 17:39:13
[2026-06-22 17:39:13,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:39:14,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:39:14,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:39:14,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:39:14,392.392 INFO    ] time= 22/06/2026 17:39:14
[2026-06-22 17:39:14,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:39:14,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:39:14,616.616 INFO    ] No existing commands found in stream
[2026-06-22 17:39:19,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:39:19,647.647 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-22 17:39:22,828.828 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:39:22,831.831 INFO    ] Checking for system updates...
[2026-06-22 17:39:22,872.872 INFO    ] 200
[2026-06-22 17:39:22,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:39:22,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:39:22,930.930 INFO    ] No update needed
[2026-06-22 17:39:22,933.933 INFO    ] Checking for camera pi updates...
[2026-06-22 17:39:22,967.967 INFO    ] 200
[2026-06-22 17:39:22,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:39:23,021.021 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:39:23,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:39:23,103.103 INFO    ] No camera update needed
[2026-06-22 17:39:23,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:39:23,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:39:23,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:39:23,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:39:25,157.157 INFO    ] ================================================
[2026-06-22 17:39:25,173.173 INFO    ] Launching Daemon at Mon Jun 22 17:39:25 IST 2026
[2026-06-22 17:39:25,183.183 INFO    ] ================================================
[2026-06-22 17:39:25,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:39:25
[2026-06-22 17:39:26,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:39:26,826.826 INFO    ] Initializing speech engine...
[2026-06-22 17:39:26,840.840 INFO    ] 2026-06-22 17:39:26
[2026-06-22 17:39:27,127.127 INFO    ] 2026-06-22 17:39:27
[2026-06-22 17:39:27,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:39:27,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:39:27,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:39:27,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:39:27,678.678 INFO    ] time= 22/06/2026 17:39:27
[2026-06-22 17:39:27,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:39:27,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:39:27,833.833 INFO    ] No existing commands found in stream
[2026-06-22 17:39:32,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:39:32,850.850 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-22 17:39:35,185.185 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:39:35,188.188 INFO    ] Checking for system updates...
[2026-06-22 17:39:35,230.230 INFO    ] 200
[2026-06-22 17:39:35,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:39:35,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:39:35,296.296 INFO    ] No update needed
[2026-06-22 17:39:35,298.298 INFO    ] Checking for camera pi updates...
[2026-06-22 17:39:35,337.337 INFO    ] 200
[2026-06-22 17:39:35,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:39:35,380.380 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:39:35,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:39:35,472.472 INFO    ] No camera update needed
[2026-06-22 17:39:35,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:39:35,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:39:35,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:39:35,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:39:37,522.522 INFO    ] ================================================
[2026-06-22 17:39:37,539.539 INFO    ] Launching Daemon at Mon Jun 22 17:39:37 IST 2026
[2026-06-22 17:39:37,550.550 INFO    ] ================================================
[2026-06-22 17:39:38,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:39:38
[2026-06-22 17:39:38,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:39:39,153.153 INFO    ] Initializing speech engine...
[2026-06-22 17:39:39,168.168 INFO    ] 2026-06-22 17:39:39
[2026-06-22 17:39:39,480.480 INFO    ] 2026-06-22 17:39:39
[2026-06-22 17:39:39,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:39:39,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:39:39,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:39:39,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:39:39,987.987 INFO    ] time= 22/06/2026 17:39:39
[2026-06-22 17:39:40,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:39:40,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:39:40,142.142 INFO    ] No existing commands found in stream
[2026-06-22 17:39:45,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:39:45,185.185 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-22 17:39:48,410.410 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:39:48,414.414 INFO    ] Checking for system updates...
[2026-06-22 17:39:48,450.450 INFO    ] 200
[2026-06-22 17:39:48,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:39:48,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:39:48,508.508 INFO    ] No update needed
[2026-06-22 17:39:48,510.510 INFO    ] Checking for camera pi updates...
[2026-06-22 17:39:48,548.548 INFO    ] 200
[2026-06-22 17:39:48,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:39:48,597.597 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:39:48,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:39:48,682.682 INFO    ] No camera update needed
[2026-06-22 17:39:48,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:39:48,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:39:48,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:39:48,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:39:50,737.737 INFO    ] ================================================
[2026-06-22 17:39:50,752.752 INFO    ] Launching Daemon at Mon Jun 22 17:39:50 IST 2026
[2026-06-22 17:39:50,764.764 INFO    ] ================================================
[2026-06-22 17:39:51,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:39:51
[2026-06-22 17:39:52,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:39:52,428.428 INFO    ] Initializing speech engine...
[2026-06-22 17:39:52,437.437 INFO    ] 2026-06-22 17:39:52
[2026-06-22 17:39:52,734.734 INFO    ] 2026-06-22 17:39:52
[2026-06-22 17:39:52,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:39:53,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:39:53,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:39:53,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:39:53,345.345 INFO    ] time= 22/06/2026 17:39:53
[2026-06-22 17:39:53,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:39:53,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:39:53,557.557 INFO    ] No existing commands found in stream
[2026-06-22 17:39:58,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:39:58,578.578 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-22 17:39:59,479.479 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:39:59,481.481 INFO    ] Checking for system updates...
[2026-06-22 17:39:59,517.517 INFO    ] 200
[2026-06-22 17:39:59,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:39:59,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:39:59,583.583 INFO    ] No update needed
[2026-06-22 17:39:59,585.585 INFO    ] Checking for camera pi updates...
[2026-06-22 17:39:59,623.623 INFO    ] 200
[2026-06-22 17:39:59,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:39:59,671.671 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:39:59,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:39:59,728.728 INFO    ] No camera update needed
[2026-06-22 17:39:59,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:39:59,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:39:59,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:39:59,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:40:01,807.807 INFO    ] ================================================
[2026-06-22 17:40:01,882.882 INFO    ] Launching Daemon at Mon Jun 22 17:40:01 IST 2026
[2026-06-22 17:40:01,933.933 INFO    ] ================================================
[2026-06-22 17:40:02,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:40:02
[2026-06-22 17:40:03,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:40:03,685.685 INFO    ] Initializing speech engine...
[2026-06-22 17:40:03,693.693 INFO    ] 2026-06-22 17:40:03
[2026-06-22 17:40:03,983.983 INFO    ] 2026-06-22 17:40:03
[2026-06-22 17:40:04,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:40:04,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:40:04,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:40:04,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:40:04,393.393 INFO    ] time= 22/06/2026 17:40:04
[2026-06-22 17:40:04,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:40:04,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:40:04,476.476 INFO    ] No existing commands found in stream
[2026-06-22 17:40:09,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:40:09,491.491 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-22 17:40:12,909.909 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:40:12,911.911 INFO    ] Checking for system updates...
[2026-06-22 17:40:12,951.951 INFO    ] 200
[2026-06-22 17:40:12,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:40:13,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:40:13,008.008 INFO    ] No update needed
[2026-06-22 17:40:13,011.011 INFO    ] Checking for camera pi updates...
[2026-06-22 17:40:13,048.048 INFO    ] 200
[2026-06-22 17:40:13,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:40:13,095.095 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:40:13,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:40:13,201.201 INFO    ] No camera update needed
[2026-06-22 17:40:13,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:40:13,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:40:13,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:40:13,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:40:15,256.256 INFO    ] ================================================
[2026-06-22 17:40:15,272.272 INFO    ] Launching Daemon at Mon Jun 22 17:40:15 IST 2026
[2026-06-22 17:40:15,284.284 INFO    ] ================================================
[2026-06-22 17:40:15,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:40:15
[2026-06-22 17:40:16,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:40:16,691.691 INFO    ] Initializing speech engine...
[2026-06-22 17:40:16,713.713 INFO    ] 2026-06-22 17:40:16
[2026-06-22 17:40:16,967.967 INFO    ] 2026-06-22 17:40:16
[2026-06-22 17:40:17,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:40:17,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:40:17,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:40:17,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:40:17,452.452 INFO    ] time= 22/06/2026 17:40:17
[2026-06-22 17:40:17,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:40:17,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:40:17,652.652 INFO    ] No existing commands found in stream
[2026-06-22 17:40:22,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:40:22,686.686 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-22 17:40:24,661.661 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:40:24,664.664 INFO    ] Checking for system updates...
[2026-06-22 17:40:24,700.700 INFO    ] 200
[2026-06-22 17:40:24,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:40:24,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:40:24,759.759 INFO    ] No update needed
[2026-06-22 17:40:24,761.761 INFO    ] Checking for camera pi updates...
[2026-06-22 17:40:24,800.800 INFO    ] 200
[2026-06-22 17:40:24,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:40:24,848.848 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:40:24,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:40:24,936.936 INFO    ] No camera update needed
[2026-06-22 17:40:24,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:40:24,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:40:24,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:40:24,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:40:27,995.995 INFO    ] ================================================
[2026-06-22 17:40:27,011.011 INFO    ] Launching Daemon at Mon Jun 22 17:40:27 IST 2026
[2026-06-22 17:40:27,023.023 INFO    ] ================================================
[2026-06-22 17:40:27,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:40:27
[2026-06-22 17:40:28,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:40:28,402.402 INFO    ] Initializing speech engine...
[2026-06-22 17:40:28,412.412 INFO    ] 2026-06-22 17:40:28
[2026-06-22 17:40:28,662.662 INFO    ] 2026-06-22 17:40:28
[2026-06-22 17:40:28,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:40:28,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:40:28,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:40:29,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:40:29,160.160 INFO    ] time= 22/06/2026 17:40:29
[2026-06-22 17:40:29,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:40:29,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:40:29,408.408 INFO    ] No existing commands found in stream
[2026-06-22 17:40:34,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:40:34,441.441 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-22 17:40:36,679.679 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:40:36,682.682 INFO    ] Checking for system updates...
[2026-06-22 17:40:36,723.723 INFO    ] 200
[2026-06-22 17:40:36,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:40:36,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:40:36,793.793 INFO    ] No update needed
[2026-06-22 17:40:36,796.796 INFO    ] Checking for camera pi updates...
[2026-06-22 17:40:36,830.830 INFO    ] 200
[2026-06-22 17:40:36,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:40:36,873.873 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:40:36,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:40:36,970.970 INFO    ] No camera update needed
[2026-06-22 17:40:36,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:40:36,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:40:36,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:40:36,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:40:39,025.025 INFO    ] ================================================
[2026-06-22 17:40:39,041.041 INFO    ] Launching Daemon at Mon Jun 22 17:40:39 IST 2026
[2026-06-22 17:40:39,052.052 INFO    ] ================================================
[2026-06-22 17:40:39,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:40:39
[2026-06-22 17:40:40,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:40:40,473.473 INFO    ] Initializing speech engine...
[2026-06-22 17:40:40,482.482 INFO    ] 2026-06-22 17:40:40
[2026-06-22 17:40:40,729.729 INFO    ] 2026-06-22 17:40:40
[2026-06-22 17:40:40,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:40:40,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:40:41,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:40:41,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:40:41,204.204 INFO    ] time= 22/06/2026 17:40:41
[2026-06-22 17:40:41,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:40:41,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:40:41,436.436 INFO    ] No existing commands found in stream
[2026-06-22 17:40:46,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:40:46,453.453 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-22 17:40:49,915.915 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:40:49,918.918 INFO    ] Checking for system updates...
[2026-06-22 17:40:49,954.954 INFO    ] 200
[2026-06-22 17:40:49,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:40:50,018.018 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:40:50,020.020 INFO    ] No update needed
[2026-06-22 17:40:50,023.023 INFO    ] Checking for camera pi updates...
[2026-06-22 17:40:50,061.061 INFO    ] 200
[2026-06-22 17:40:50,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:40:50,110.110 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:40:50,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:40:50,292.292 INFO    ] No camera update needed
[2026-06-22 17:40:50,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:40:50,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:40:50,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:40:50,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:40:52,347.347 INFO    ] ================================================
[2026-06-22 17:40:52,363.363 INFO    ] Launching Daemon at Mon Jun 22 17:40:52 IST 2026
[2026-06-22 17:40:52,374.374 INFO    ] ================================================
[2026-06-22 17:40:52,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:40:52
[2026-06-22 17:40:53,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:40:53,935.935 INFO    ] Initializing speech engine...
[2026-06-22 17:40:53,947.947 INFO    ] 2026-06-22 17:40:53
[2026-06-22 17:40:54,261.261 INFO    ] 2026-06-22 17:40:54
[2026-06-22 17:40:54,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:40:54,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:40:54,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:40:54,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:40:55,014.014 INFO    ] time= 22/06/2026 17:40:54
[2026-06-22 17:40:55,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:40:55,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:40:55,304.304 INFO    ] No existing commands found in stream
[2026-06-22 17:41:00,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:41:00,339.339 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-22 17:41:03,423.423 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:41:03,426.426 INFO    ] Checking for system updates...
[2026-06-22 17:41:03,464.464 INFO    ] 200
[2026-06-22 17:41:03,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:41:03,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:41:03,546.546 INFO    ] No update needed
[2026-06-22 17:41:03,548.548 INFO    ] Checking for camera pi updates...
[2026-06-22 17:41:03,587.587 INFO    ] 200
[2026-06-22 17:41:03,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:41:03,636.636 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:41:03,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:41:03,726.726 INFO    ] No camera update needed
[2026-06-22 17:41:03,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:41:03,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:41:03,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:41:03,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:41:05,784.784 INFO    ] ================================================
[2026-06-22 17:41:05,800.800 INFO    ] Launching Daemon at Mon Jun 22 17:41:05 IST 2026
[2026-06-22 17:41:05,811.811 INFO    ] ================================================
[2026-06-22 17:41:06,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:41:06
[2026-06-22 17:41:06,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:41:07,280.280 INFO    ] Initializing speech engine...
[2026-06-22 17:41:07,293.293 INFO    ] 2026-06-22 17:41:07
[2026-06-22 17:41:07,583.583 INFO    ] 2026-06-22 17:41:07
[2026-06-22 17:41:07,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:41:07,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:41:07,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:41:08,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:41:08,181.181 INFO    ] time= 22/06/2026 17:41:08
[2026-06-22 17:41:08,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:41:08,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:41:08,318.318 INFO    ] No existing commands found in stream
[2026-06-22 17:41:13,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:41:13,352.352 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-22 17:41:17,590.590 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:41:17,593.593 INFO    ] Checking for system updates...
[2026-06-22 17:41:17,637.637 INFO    ] 200
[2026-06-22 17:41:17,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:41:17,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:41:17,698.698 INFO    ] No update needed
[2026-06-22 17:41:17,700.700 INFO    ] Checking for camera pi updates...
[2026-06-22 17:41:17,734.734 INFO    ] 200
[2026-06-22 17:41:17,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:41:17,783.783 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:41:17,864.864 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:41:17,866.866 INFO    ] No camera update needed
[2026-06-22 17:41:17,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:41:17,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:41:17,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:41:17,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:41:19,921.921 INFO    ] ================================================
[2026-06-22 17:41:19,936.936 INFO    ] Launching Daemon at Mon Jun 22 17:41:19 IST 2026
[2026-06-22 17:41:19,948.948 INFO    ] ================================================
[2026-06-22 17:41:20,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:41:20
[2026-06-22 17:41:21,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:41:21,337.337 INFO    ] Initializing speech engine...
[2026-06-22 17:41:21,346.346 INFO    ] 2026-06-22 17:41:21
[2026-06-22 17:41:21,602.602 INFO    ] 2026-06-22 17:41:21
[2026-06-22 17:41:21,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:41:21,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:41:21,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:41:21,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:41:21,993.993 INFO    ] time= 22/06/2026 17:41:21
[2026-06-22 17:41:22,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:41:22,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:41:22,124.124 INFO    ] No existing commands found in stream
[2026-06-22 17:41:27,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:41:27,140.140 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-22 17:41:29,327.327 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:41:29,330.330 INFO    ] Checking for system updates...
[2026-06-22 17:41:29,372.372 INFO    ] 200
[2026-06-22 17:41:29,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:41:29,438.438 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:41:29,441.441 INFO    ] No update needed
[2026-06-22 17:41:29,444.444 INFO    ] Checking for camera pi updates...
[2026-06-22 17:41:29,484.484 INFO    ] 200
[2026-06-22 17:41:29,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:41:29,536.536 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:41:29,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:41:29,607.607 INFO    ] No camera update needed
[2026-06-22 17:41:29,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:41:29,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:41:29,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:41:29,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:41:31,664.664 INFO    ] ================================================
[2026-06-22 17:41:31,681.681 INFO    ] Launching Daemon at Mon Jun 22 17:41:31 IST 2026
[2026-06-22 17:41:31,694.694 INFO    ] ================================================
[2026-06-22 17:41:32,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:41:32
[2026-06-22 17:41:32,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:41:33,183.183 INFO    ] Initializing speech engine...
[2026-06-22 17:41:33,189.189 INFO    ] 2026-06-22 17:41:33
[2026-06-22 17:41:33,462.462 INFO    ] 2026-06-22 17:41:33
[2026-06-22 17:41:33,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:41:33,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:41:33,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:41:33,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:41:33,926.926 INFO    ] time= 22/06/2026 17:41:33
[2026-06-22 17:41:33,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:41:34,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:41:34,174.174 INFO    ] No existing commands found in stream
[2026-06-22 17:41:39,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:41:39,199.199 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-22 17:41:41,307.307 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:41:41,310.310 INFO    ] Checking for system updates...
[2026-06-22 17:41:41,346.346 INFO    ] 200
[2026-06-22 17:41:41,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:41:41,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:41:41,405.405 INFO    ] No update needed
[2026-06-22 17:41:41,408.408 INFO    ] Checking for camera pi updates...
[2026-06-22 17:41:41,447.447 INFO    ] 200
[2026-06-22 17:41:41,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:41:41,497.497 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:41:41,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:41:41,611.611 INFO    ] No camera update needed
[2026-06-22 17:41:41,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:41:41,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:41:41,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:41:41,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:41:43,668.668 INFO    ] ================================================
[2026-06-22 17:41:43,685.685 INFO    ] Launching Daemon at Mon Jun 22 17:41:43 IST 2026
[2026-06-22 17:41:43,696.696 INFO    ] ================================================
[2026-06-22 17:41:44,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:41:44
[2026-06-22 17:41:44,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:41:45,174.174 INFO    ] Initializing speech engine...
[2026-06-22 17:41:45,182.182 INFO    ] 2026-06-22 17:41:45
[2026-06-22 17:41:45,460.460 INFO    ] 2026-06-22 17:41:45
[2026-06-22 17:41:45,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:41:45,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:41:45,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:41:45,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:41:45,941.941 INFO    ] time= 22/06/2026 17:41:45
[2026-06-22 17:41:45,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:41:46,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:41:46,206.206 INFO    ] No existing commands found in stream
[2026-06-22 17:41:51,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:41:51,230.230 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-22 17:41:54,687.687 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:41:54,690.690 INFO    ] Checking for system updates...
[2026-06-22 17:41:54,732.732 INFO    ] 200
[2026-06-22 17:41:54,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:41:54,790.790 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:41:54,793.793 INFO    ] No update needed
[2026-06-22 17:41:54,796.796 INFO    ] Checking for camera pi updates...
[2026-06-22 17:41:54,836.836 INFO    ] 200
[2026-06-22 17:41:54,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:41:54,892.892 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:41:54,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:41:54,981.981 INFO    ] No camera update needed
[2026-06-22 17:41:54,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:41:54,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:41:54,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:41:54,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:41:57,042.042 INFO    ] ================================================
[2026-06-22 17:41:57,057.057 INFO    ] Launching Daemon at Mon Jun 22 17:41:57 IST 2026
[2026-06-22 17:41:57,069.069 INFO    ] ================================================
[2026-06-22 17:41:57,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:41:57
[2026-06-22 17:41:58,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:41:58,531.531 INFO    ] Initializing speech engine...
[2026-06-22 17:41:58,538.538 INFO    ] 2026-06-22 17:41:58
[2026-06-22 17:41:58,799.799 INFO    ] 2026-06-22 17:41:58
[2026-06-22 17:41:58,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:41:59,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:41:59,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:41:59,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:41:59,283.283 INFO    ] time= 22/06/2026 17:41:59
[2026-06-22 17:41:59,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:41:59,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:41:59,471.471 INFO    ] No existing commands found in stream
[2026-06-22 17:42:04,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:42:04,505.505 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-22 17:42:05,574.574 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:42:05,577.577 INFO    ] Checking for system updates...
[2026-06-22 17:42:05,613.613 INFO    ] 200
[2026-06-22 17:42:05,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:42:05,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:42:05,672.672 INFO    ] No update needed
[2026-06-22 17:42:05,675.675 INFO    ] Checking for camera pi updates...
[2026-06-22 17:42:05,712.712 INFO    ] 200
[2026-06-22 17:42:05,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:42:05,756.756 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:42:05,812.812 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:42:05,814.814 INFO    ] No camera update needed
[2026-06-22 17:42:05,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:42:05,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:42:05,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:42:05,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:42:07,869.869 INFO    ] ================================================
[2026-06-22 17:42:07,886.886 INFO    ] Launching Daemon at Mon Jun 22 17:42:07 IST 2026
[2026-06-22 17:42:07,897.897 INFO    ] ================================================
[2026-06-22 17:42:08,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:42:08
[2026-06-22 17:42:09,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:42:09,310.310 INFO    ] Initializing speech engine...
[2026-06-22 17:42:09,320.320 INFO    ] 2026-06-22 17:42:09
[2026-06-22 17:42:09,607.607 INFO    ] 2026-06-22 17:42:09
[2026-06-22 17:42:09,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:42:09,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:42:09,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:42:10,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:42:10,114.114 INFO    ] time= 22/06/2026 17:42:10
[2026-06-22 17:42:10,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:42:10,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:42:10,302.302 INFO    ] No existing commands found in stream
[2026-06-22 17:42:15,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:42:15,320.320 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-22 17:42:17,379.379 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:42:17,381.381 INFO    ] Checking for system updates...
[2026-06-22 17:42:17,405.405 INFO    ] 200
[2026-06-22 17:42:17,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:42:17,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:42:17,469.469 INFO    ] No update needed
[2026-06-22 17:42:17,471.471 INFO    ] Checking for camera pi updates...
[2026-06-22 17:42:17,506.506 INFO    ] 200
[2026-06-22 17:42:17,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:42:17,554.554 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:42:17,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:42:17,637.637 INFO    ] No camera update needed
[2026-06-22 17:42:17,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:42:17,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:42:17,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:42:17,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:42:19,694.694 INFO    ] ================================================
[2026-06-22 17:42:19,709.709 INFO    ] Launching Daemon at Mon Jun 22 17:42:19 IST 2026
[2026-06-22 17:42:19,720.720 INFO    ] ================================================
[2026-06-22 17:42:20,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:42:20
[2026-06-22 17:42:20,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:42:21,236.236 INFO    ] Initializing speech engine...
[2026-06-22 17:42:21,246.246 INFO    ] 2026-06-22 17:42:21
[2026-06-22 17:42:21,510.510 INFO    ] 2026-06-22 17:42:21
[2026-06-22 17:42:21,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:42:21,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:42:21,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:42:21,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:42:21,989.989 INFO    ] time= 22/06/2026 17:42:21
[2026-06-22 17:42:22,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:42:22,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:42:22,196.196 INFO    ] No existing commands found in stream
[2026-06-22 17:42:27,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:42:27,213.213 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-22 17:42:29,598.598 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:42:29,601.601 INFO    ] Checking for system updates...
[2026-06-22 17:42:29,637.637 INFO    ] 200
[2026-06-22 17:42:29,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:42:29,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:42:29,702.702 INFO    ] No update needed
[2026-06-22 17:42:29,705.705 INFO    ] Checking for camera pi updates...
[2026-06-22 17:42:29,739.739 INFO    ] 200
[2026-06-22 17:42:29,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:42:29,787.787 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:42:29,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:42:29,878.878 INFO    ] No camera update needed
[2026-06-22 17:42:29,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:42:29,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:42:29,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:42:29,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:42:31,937.937 INFO    ] ================================================
[2026-06-22 17:42:31,953.953 INFO    ] Launching Daemon at Mon Jun 22 17:42:31 IST 2026
[2026-06-22 17:42:31,965.965 INFO    ] ================================================
[2026-06-22 17:42:32,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:42:32
[2026-06-22 17:42:33,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:42:33,467.467 INFO    ] Initializing speech engine...
[2026-06-22 17:42:33,479.479 INFO    ] 2026-06-22 17:42:33
[2026-06-22 17:42:33,770.770 INFO    ] 2026-06-22 17:42:33
[2026-06-22 17:42:33,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:42:34,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:42:34,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:42:34,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:42:34,299.299 INFO    ] time= 22/06/2026 17:42:34
[2026-06-22 17:42:34,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:42:34,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:42:34,521.521 INFO    ] No existing commands found in stream
[2026-06-22 17:42:39,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:42:39,547.547 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-22 17:42:42,669.669 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:42:42,673.673 INFO    ] Checking for system updates...
[2026-06-22 17:42:42,712.712 INFO    ] 200
[2026-06-22 17:42:42,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:42:42,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:42:42,772.772 INFO    ] No update needed
[2026-06-22 17:42:42,775.775 INFO    ] Checking for camera pi updates...
[2026-06-22 17:42:42,814.814 INFO    ] 200
[2026-06-22 17:42:42,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:42:42,865.865 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:42:42,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:42:42,969.969 INFO    ] No camera update needed
[2026-06-22 17:42:42,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:42:42,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:42:42,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:42:42,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:42:45,029.029 INFO    ] ================================================
[2026-06-22 17:42:45,045.045 INFO    ] Launching Daemon at Mon Jun 22 17:42:45 IST 2026
[2026-06-22 17:42:45,056.056 INFO    ] ================================================
[2026-06-22 17:42:45,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:42:45
[2026-06-22 17:42:46,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:42:46,497.497 INFO    ] Initializing speech engine...
[2026-06-22 17:42:46,504.504 INFO    ] 2026-06-22 17:42:46
[2026-06-22 17:42:46,762.762 INFO    ] 2026-06-22 17:42:46
[2026-06-22 17:42:46,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:42:47,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:42:47,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:42:47,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:42:47,194.194 INFO    ] time= 22/06/2026 17:42:47
[2026-06-22 17:42:47,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:42:47,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:42:47,449.449 INFO    ] No existing commands found in stream
[2026-06-22 17:42:52,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:42:52,472.472 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-22 17:42:55,538.538 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:42:55,540.540 INFO    ] Checking for system updates...
[2026-06-22 17:42:55,576.576 INFO    ] 200
[2026-06-22 17:42:55,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:42:55,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:42:55,635.635 INFO    ] No update needed
[2026-06-22 17:42:55,637.637 INFO    ] Checking for camera pi updates...
[2026-06-22 17:42:55,676.676 INFO    ] 200
[2026-06-22 17:42:55,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:42:55,725.725 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:42:55,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:42:55,909.909 INFO    ] No camera update needed
[2026-06-22 17:42:55,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:42:55,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:42:55,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:42:55,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:42:57,964.964 INFO    ] ================================================
[2026-06-22 17:42:57,980.980 INFO    ] Launching Daemon at Mon Jun 22 17:42:57 IST 2026
[2026-06-22 17:42:57,992.992 INFO    ] ================================================
[2026-06-22 17:42:58,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:42:58
[2026-06-22 17:42:59,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:42:59,384.384 INFO    ] Initializing speech engine...
[2026-06-22 17:42:59,396.396 INFO    ] 2026-06-22 17:42:59
[2026-06-22 17:42:59,713.713 INFO    ] 2026-06-22 17:42:59
[2026-06-22 17:42:59,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:42:59,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:43:00,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:43:00,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:43:00,223.223 INFO    ] time= 22/06/2026 17:43:00
[2026-06-22 17:43:00,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:43:00,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:43:00,407.407 INFO    ] No existing commands found in stream
[2026-06-22 17:43:05,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:43:05,442.442 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-22 17:43:07,102.102 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:43:07,105.105 INFO    ] Checking for system updates...
[2026-06-22 17:43:07,149.149 INFO    ] 200
[2026-06-22 17:43:07,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:43:07,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:43:07,209.209 INFO    ] No update needed
[2026-06-22 17:43:07,212.212 INFO    ] Checking for camera pi updates...
[2026-06-22 17:43:07,252.252 INFO    ] 200
[2026-06-22 17:43:07,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:43:07,298.298 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:43:07,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:43:07,395.395 INFO    ] No camera update needed
[2026-06-22 17:43:07,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:43:07,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:43:07,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:43:07,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:43:09,456.456 INFO    ] ================================================
[2026-06-22 17:43:09,472.472 INFO    ] Launching Daemon at Mon Jun 22 17:43:09 IST 2026
[2026-06-22 17:43:09,483.483 INFO    ] ================================================
[2026-06-22 17:43:10,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:43:10
[2026-06-22 17:43:10,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:43:10,828.828 INFO    ] Initializing speech engine...
[2026-06-22 17:43:10,835.835 INFO    ] 2026-06-22 17:43:10
[2026-06-22 17:43:11,082.082 INFO    ] 2026-06-22 17:43:11
[2026-06-22 17:43:11,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:43:11,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:43:11,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:43:11,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:43:11,570.570 INFO    ] time= 22/06/2026 17:43:11
[2026-06-22 17:43:11,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:43:11,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:43:11,775.775 INFO    ] No existing commands found in stream
[2026-06-22 17:43:16,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:43:16,803.803 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-22 17:43:18,546.546 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:43:18,549.549 INFO    ] Checking for system updates...
[2026-06-22 17:43:18,587.587 INFO    ] 200
[2026-06-22 17:43:18,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:43:18,645.645 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:43:18,648.648 INFO    ] No update needed
[2026-06-22 17:43:18,650.650 INFO    ] Checking for camera pi updates...
[2026-06-22 17:43:18,686.686 INFO    ] 200
[2026-06-22 17:43:18,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:43:18,731.731 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:43:18,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:43:18,803.803 INFO    ] No camera update needed
[2026-06-22 17:43:18,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:43:18,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:43:18,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:43:18,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:43:20,863.863 INFO    ] ================================================
[2026-06-22 17:43:20,878.878 INFO    ] Launching Daemon at Mon Jun 22 17:43:20 IST 2026
[2026-06-22 17:43:20,889.889 INFO    ] ================================================
[2026-06-22 17:43:21,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:43:21
[2026-06-22 17:43:22,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:43:22,298.298 INFO    ] Initializing speech engine...
[2026-06-22 17:43:22,315.315 INFO    ] 2026-06-22 17:43:22
[2026-06-22 17:43:22,573.573 INFO    ] 2026-06-22 17:43:22
[2026-06-22 17:43:22,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:43:22,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:43:22,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:43:23,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:43:23,080.080 INFO    ] time= 22/06/2026 17:43:23
[2026-06-22 17:43:23,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:43:23,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:43:23,281.281 INFO    ] No existing commands found in stream
[2026-06-22 17:43:28,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:43:28,307.307 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-22 17:43:29,170.170 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:43:29,173.173 INFO    ] Checking for system updates...
[2026-06-22 17:43:29,210.210 INFO    ] 200
[2026-06-22 17:43:29,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:43:29,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:43:29,276.276 INFO    ] No update needed
[2026-06-22 17:43:29,278.278 INFO    ] Checking for camera pi updates...
[2026-06-22 17:43:29,317.317 INFO    ] 200
[2026-06-22 17:43:29,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:43:29,366.366 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:43:29,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:43:29,449.449 INFO    ] No camera update needed
[2026-06-22 17:43:29,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:43:29,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:43:29,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:43:29,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:43:31,505.505 INFO    ] ================================================
[2026-06-22 17:43:31,520.520 INFO    ] Launching Daemon at Mon Jun 22 17:43:31 IST 2026
[2026-06-22 17:43:31,530.530 INFO    ] ================================================
[2026-06-22 17:43:32,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:43:32
[2026-06-22 17:43:32,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:43:33,040.040 INFO    ] Initializing speech engine...
[2026-06-22 17:43:33,060.060 INFO    ] 2026-06-22 17:43:33
[2026-06-22 17:43:33,322.322 INFO    ] 2026-06-22 17:43:33
[2026-06-22 17:43:33,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:43:33,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:43:33,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:43:33,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:43:33,845.845 INFO    ] time= 22/06/2026 17:43:33
[2026-06-22 17:43:33,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:43:33,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:43:34,025.025 INFO    ] No existing commands found in stream
[2026-06-22 17:43:39,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:43:39,044.044 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-22 17:43:41,786.786 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:43:41,789.789 INFO    ] Checking for system updates...
[2026-06-22 17:43:41,825.825 INFO    ] 200
[2026-06-22 17:43:41,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:43:41,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:43:41,887.887 INFO    ] No update needed
[2026-06-22 17:43:41,889.889 INFO    ] Checking for camera pi updates...
[2026-06-22 17:43:41,923.923 INFO    ] 200
[2026-06-22 17:43:41,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:43:41,967.967 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:43:42,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:43:42,042.042 INFO    ] No camera update needed
[2026-06-22 17:43:42,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:43:42,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:43:42,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:43:42,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:43:44,097.097 INFO    ] ================================================
[2026-06-22 17:43:44,113.113 INFO    ] Launching Daemon at Mon Jun 22 17:43:44 IST 2026
[2026-06-22 17:43:44,124.124 INFO    ] ================================================
[2026-06-22 17:43:44,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:43:44
[2026-06-22 17:43:45,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:43:45,449.449 INFO    ] Initializing speech engine...
[2026-06-22 17:43:45,458.458 INFO    ] 2026-06-22 17:43:45
[2026-06-22 17:43:45,735.735 INFO    ] 2026-06-22 17:43:45
[2026-06-22 17:43:45,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:43:46,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:43:46,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:43:46,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:43:46,291.291 INFO    ] time= 22/06/2026 17:43:46
[2026-06-22 17:43:46,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:43:46,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:43:46,443.443 INFO    ] No existing commands found in stream
[2026-06-22 17:43:51,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:43:51,461.461 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-22 17:43:52,927.927 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:43:52,930.930 INFO    ] Checking for system updates...
[2026-06-22 17:43:52,968.968 INFO    ] 200
[2026-06-22 17:43:52,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:43:53,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:43:53,028.028 INFO    ] No update needed
[2026-06-22 17:43:53,031.031 INFO    ] Checking for camera pi updates...
[2026-06-22 17:43:53,067.067 INFO    ] 200
[2026-06-22 17:43:53,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:43:53,112.112 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:43:53,214.214 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:43:53,217.217 INFO    ] No camera update needed
[2026-06-22 17:43:53,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:43:53,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:43:53,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:43:53,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:43:55,278.278 INFO    ] ================================================
[2026-06-22 17:43:55,293.293 INFO    ] Launching Daemon at Mon Jun 22 17:43:55 IST 2026
[2026-06-22 17:43:55,304.304 INFO    ] ================================================
[2026-06-22 17:43:55,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:43:55
[2026-06-22 17:43:56,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:43:56,675.675 INFO    ] Initializing speech engine...
[2026-06-22 17:43:56,689.689 INFO    ] 2026-06-22 17:43:56
[2026-06-22 17:43:56,952.952 INFO    ] 2026-06-22 17:43:56
[2026-06-22 17:43:56,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:43:57,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:43:57,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:43:57,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:43:57,447.447 INFO    ] time= 22/06/2026 17:43:57
[2026-06-22 17:43:57,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:43:57,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:43:57,650.650 INFO    ] No existing commands found in stream
[2026-06-22 17:44:02,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:44:02,660.660 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-22 17:44:05,180.180 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:44:05,182.182 INFO    ] Checking for system updates...
[2026-06-22 17:44:05,222.222 INFO    ] 200
[2026-06-22 17:44:05,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:44:05,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:44:05,288.288 INFO    ] No update needed
[2026-06-22 17:44:05,291.291 INFO    ] Checking for camera pi updates...
[2026-06-22 17:44:05,329.329 INFO    ] 200
[2026-06-22 17:44:05,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:44:05,372.372 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:44:05,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:44:05,454.454 INFO    ] No camera update needed
[2026-06-22 17:44:05,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:44:05,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:44:05,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:44:05,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:44:07,515.515 INFO    ] ================================================
[2026-06-22 17:44:07,530.530 INFO    ] Launching Daemon at Mon Jun 22 17:44:07 IST 2026
[2026-06-22 17:44:07,541.541 INFO    ] ================================================
[2026-06-22 17:44:08,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:44:08
[2026-06-22 17:44:08,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:44:08,897.897 INFO    ] Initializing speech engine...
[2026-06-22 17:44:08,915.915 INFO    ] 2026-06-22 17:44:08
[2026-06-22 17:44:09,168.168 INFO    ] 2026-06-22 17:44:09
[2026-06-22 17:44:09,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:44:09,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:44:09,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:44:09,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:44:09,543.543 INFO    ] time= 22/06/2026 17:44:09
[2026-06-22 17:44:09,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:44:09,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:44:09,731.731 INFO    ] No existing commands found in stream
[2026-06-22 17:44:14,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:44:14,756.756 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-22 17:44:19,383.383 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:44:19,385.385 INFO    ] Checking for system updates...
[2026-06-22 17:44:19,421.421 INFO    ] 200
[2026-06-22 17:44:19,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:44:19,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:44:19,478.478 INFO    ] No update needed
[2026-06-22 17:44:19,481.481 INFO    ] Checking for camera pi updates...
[2026-06-22 17:44:19,515.515 INFO    ] 200
[2026-06-22 17:44:19,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:44:19,558.558 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:44:19,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:44:19,653.653 INFO    ] No camera update needed
[2026-06-22 17:44:19,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:44:19,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:44:19,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:44:19,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:44:21,710.710 INFO    ] ================================================
[2026-06-22 17:44:21,726.726 INFO    ] Launching Daemon at Mon Jun 22 17:44:21 IST 2026
[2026-06-22 17:44:21,737.737 INFO    ] ================================================
[2026-06-22 17:44:22,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:44:22
[2026-06-22 17:44:22,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:44:23,183.183 INFO    ] Initializing speech engine...
[2026-06-22 17:44:23,189.189 INFO    ] 2026-06-22 17:44:23
[2026-06-22 17:44:23,488.488 INFO    ] 2026-06-22 17:44:23
[2026-06-22 17:44:23,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:44:23,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:44:23,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:44:24,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:44:24,117.117 INFO    ] time= 22/06/2026 17:44:24
[2026-06-22 17:44:24,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:44:24,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:44:24,278.278 INFO    ] No existing commands found in stream
[2026-06-22 17:44:29,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:44:29,306.306 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-22 17:44:33,260.260 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:44:33,262.262 INFO    ] Checking for system updates...
[2026-06-22 17:44:33,302.302 INFO    ] 200
[2026-06-22 17:44:33,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:44:33,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:44:33,366.366 INFO    ] No update needed
[2026-06-22 17:44:33,368.368 INFO    ] Checking for camera pi updates...
[2026-06-22 17:44:33,406.406 INFO    ] 200
[2026-06-22 17:44:33,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:44:33,454.454 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:44:33,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:44:33,544.544 INFO    ] No camera update needed
[2026-06-22 17:44:33,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:44:33,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:44:33,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:44:33,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:44:35,602.602 INFO    ] ================================================
[2026-06-22 17:44:35,617.617 INFO    ] Launching Daemon at Mon Jun 22 17:44:35 IST 2026
[2026-06-22 17:44:35,627.627 INFO    ] ================================================
[2026-06-22 17:44:36,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:44:36
[2026-06-22 17:44:36,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:44:37,052.052 INFO    ] Initializing speech engine...
[2026-06-22 17:44:37,059.059 INFO    ] 2026-06-22 17:44:37
[2026-06-22 17:44:37,359.359 INFO    ] 2026-06-22 17:44:37
[2026-06-22 17:44:37,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:44:37,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:44:37,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:44:37,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:44:37,785.785 INFO    ] time= 22/06/2026 17:44:37
[2026-06-22 17:44:37,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:44:37,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:44:37,946.946 INFO    ] No existing commands found in stream
[2026-06-22 17:44:42,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:44:42,974.974 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-22 17:44:46,525.525 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:44:46,527.527 INFO    ] Checking for system updates...
[2026-06-22 17:44:46,548.548 INFO    ] 200
[2026-06-22 17:44:46,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:44:46,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:44:46,583.583 INFO    ] No update needed
[2026-06-22 17:44:46,584.584 INFO    ] Checking for camera pi updates...
[2026-06-22 17:44:46,604.604 INFO    ] 200
[2026-06-22 17:44:46,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:44:46,634.634 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:44:46,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:44:46,721.721 INFO    ] No camera update needed
[2026-06-22 17:44:46,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:44:46,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:44:46,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:44:46,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:44:48,780.780 INFO    ] ================================================
[2026-06-22 17:44:48,795.795 INFO    ] Launching Daemon at Mon Jun 22 17:44:48 IST 2026
[2026-06-22 17:44:48,806.806 INFO    ] ================================================
[2026-06-22 17:44:49,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:44:49
[2026-06-22 17:44:49,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:44:50,241.241 INFO    ] Initializing speech engine...
[2026-06-22 17:44:50,251.251 INFO    ] 2026-06-22 17:44:50
[2026-06-22 17:44:50,500.500 INFO    ] 2026-06-22 17:44:50
[2026-06-22 17:44:50,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:44:50,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:44:50,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:44:50,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:44:50,876.876 INFO    ] time= 22/06/2026 17:44:50
[2026-06-22 17:44:50,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:44:50,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:44:51,066.066 INFO    ] No existing commands found in stream
[2026-06-22 17:44:56,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:44:56,085.085 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-22 17:44:59,854.854 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:44:59,857.857 INFO    ] Checking for system updates...
[2026-06-22 17:44:59,893.893 INFO    ] 200
[2026-06-22 17:44:59,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:44:59,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:44:59,952.952 INFO    ] No update needed
[2026-06-22 17:44:59,954.954 INFO    ] Checking for camera pi updates...
[2026-06-22 17:44:59,989.989 INFO    ] 200
[2026-06-22 17:44:59,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:45:00,032.032 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:45:00,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:45:00,212.212 INFO    ] No camera update needed
[2026-06-22 17:45:00,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:45:00,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:45:00,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:45:00,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:45:02,299.299 INFO    ] ================================================
[2026-06-22 17:45:02,361.361 INFO    ] Launching Daemon at Mon Jun 22 17:45:02 IST 2026
[2026-06-22 17:45:02,426.426 INFO    ] ================================================
[2026-06-22 17:45:03,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:45:03
[2026-06-22 17:45:03,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:45:04,127.127 INFO    ] Initializing speech engine...
[2026-06-22 17:45:04,133.133 INFO    ] 2026-06-22 17:45:04
[2026-06-22 17:45:04,424.424 INFO    ] 2026-06-22 17:45:04
[2026-06-22 17:45:04,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:45:04,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:45:04,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:45:04,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:45:04,846.846 INFO    ] time= 22/06/2026 17:45:04
[2026-06-22 17:45:04,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:45:04,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:45:05,021.021 INFO    ] No existing commands found in stream
[2026-06-22 17:45:10,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:45:10,049.049 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-22 17:45:11,720.720 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:45:11,722.722 INFO    ] Checking for system updates...
[2026-06-22 17:45:11,742.742 INFO    ] 200
[2026-06-22 17:45:11,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:45:11,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:45:11,797.797 INFO    ] No update needed
[2026-06-22 17:45:11,799.799 INFO    ] Checking for camera pi updates...
[2026-06-22 17:45:11,833.833 INFO    ] 200
[2026-06-22 17:45:11,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:45:11,876.876 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:45:11,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:45:11,938.938 INFO    ] No camera update needed
[2026-06-22 17:45:11,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:45:11,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:45:11,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:45:11,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:45:13,994.994 INFO    ] ================================================
[2026-06-22 17:45:14,009.009 INFO    ] Launching Daemon at Mon Jun 22 17:45:14 IST 2026
[2026-06-22 17:45:14,020.020 INFO    ] ================================================
[2026-06-22 17:45:14,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:45:14
[2026-06-22 17:45:15,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:45:15,352.352 INFO    ] Initializing speech engine...
[2026-06-22 17:45:15,361.361 INFO    ] 2026-06-22 17:45:15
[2026-06-22 17:45:15,607.607 INFO    ] 2026-06-22 17:45:15
[2026-06-22 17:45:15,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:45:15,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:45:15,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:45:16,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:45:16,163.163 INFO    ] time= 22/06/2026 17:45:16
[2026-06-22 17:45:16,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:45:16,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:45:16,315.315 INFO    ] No existing commands found in stream
[2026-06-22 17:45:21,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:45:21,338.338 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-22 17:45:22,716.716 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:45:22,719.719 INFO    ] Checking for system updates...
[2026-06-22 17:45:22,756.756 INFO    ] 200
[2026-06-22 17:45:22,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:45:22,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:45:22,815.815 INFO    ] No update needed
[2026-06-22 17:45:22,818.818 INFO    ] Checking for camera pi updates...
[2026-06-22 17:45:22,853.853 INFO    ] 200
[2026-06-22 17:45:22,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:45:22,899.899 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:45:23,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:45:23,011.011 INFO    ] No camera update needed
[2026-06-22 17:45:23,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:45:23,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:45:23,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:45:23,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:45:25,069.069 INFO    ] ================================================
[2026-06-22 17:45:25,084.084 INFO    ] Launching Daemon at Mon Jun 22 17:45:25 IST 2026
[2026-06-22 17:45:25,099.099 INFO    ] ================================================
[2026-06-22 17:45:25,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:45:25
[2026-06-22 17:45:26,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:45:26,527.527 INFO    ] Initializing speech engine...
[2026-06-22 17:45:26,546.546 INFO    ] 2026-06-22 17:45:26
[2026-06-22 17:45:26,797.797 INFO    ] 2026-06-22 17:45:26
[2026-06-22 17:45:26,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:45:27,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:45:27,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:45:27,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:45:27,181.181 INFO    ] time= 22/06/2026 17:45:27
[2026-06-22 17:45:27,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:45:27,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:45:27,295.295 INFO    ] No existing commands found in stream
[2026-06-22 17:45:32,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:45:32,329.329 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-22 17:45:35,567.567 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:45:35,569.569 INFO    ] Checking for system updates...
[2026-06-22 17:45:35,607.607 INFO    ] 200
[2026-06-22 17:45:35,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:45:35,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:45:35,672.672 INFO    ] No update needed
[2026-06-22 17:45:35,674.674 INFO    ] Checking for camera pi updates...
[2026-06-22 17:45:35,707.707 INFO    ] 200
[2026-06-22 17:45:35,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:45:35,750.750 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:45:35,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:45:35,836.836 INFO    ] No camera update needed
[2026-06-22 17:45:35,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:45:35,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:45:35,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:45:35,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:45:37,890.890 INFO    ] ================================================
[2026-06-22 17:45:37,906.906 INFO    ] Launching Daemon at Mon Jun 22 17:45:37 IST 2026
[2026-06-22 17:45:37,917.917 INFO    ] ================================================
[2026-06-22 17:45:38,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:45:38
[2026-06-22 17:45:39,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:45:39,325.325 INFO    ] Initializing speech engine...
[2026-06-22 17:45:39,334.334 INFO    ] 2026-06-22 17:45:39
[2026-06-22 17:45:39,582.582 INFO    ] 2026-06-22 17:45:39
[2026-06-22 17:45:39,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:45:39,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:45:39,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:45:39,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:45:39,954.954 INFO    ] time= 22/06/2026 17:45:39
[2026-06-22 17:45:40,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:45:40,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:45:40,148.148 INFO    ] No existing commands found in stream
[2026-06-22 17:45:45,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:45:45,163.163 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-22 17:45:47,391.391 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:45:47,393.393 INFO    ] Checking for system updates...
[2026-06-22 17:45:47,415.415 INFO    ] 200
[2026-06-22 17:45:47,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:45:47,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:45:47,449.449 INFO    ] No update needed
[2026-06-22 17:45:47,451.451 INFO    ] Checking for camera pi updates...
[2026-06-22 17:45:47,477.477 INFO    ] 200
[2026-06-22 17:45:47,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:45:47,521.521 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:45:47,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:45:47,629.629 INFO    ] No camera update needed
[2026-06-22 17:45:47,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:45:47,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:45:47,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:45:47,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:45:49,689.689 INFO    ] ================================================
[2026-06-22 17:45:49,705.705 INFO    ] Launching Daemon at Mon Jun 22 17:45:49 IST 2026
[2026-06-22 17:45:49,716.716 INFO    ] ================================================
[2026-06-22 17:45:50,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:45:50
[2026-06-22 17:45:50,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:45:51,053.053 INFO    ] Initializing speech engine...
[2026-06-22 17:45:51,062.062 INFO    ] 2026-06-22 17:45:51
[2026-06-22 17:45:51,318.318 INFO    ] 2026-06-22 17:45:51
[2026-06-22 17:45:51,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:45:51,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:45:51,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:45:51,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:45:51,807.807 INFO    ] time= 22/06/2026 17:45:51
[2026-06-22 17:45:51,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:45:51,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:45:52,007.007 INFO    ] No existing commands found in stream
[2026-06-22 17:45:57,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:45:57,029.029 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-22 17:45:59,012.012 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:45:59,015.015 INFO    ] Checking for system updates...
[2026-06-22 17:45:59,058.058 INFO    ] 200
[2026-06-22 17:45:59,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:45:59,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:45:59,115.115 INFO    ] No update needed
[2026-06-22 17:45:59,118.118 INFO    ] Checking for camera pi updates...
[2026-06-22 17:45:59,152.152 INFO    ] 200
[2026-06-22 17:45:59,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:45:59,201.201 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:45:59,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:45:59,299.299 INFO    ] No camera update needed
[2026-06-22 17:45:59,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:45:59,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:45:59,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:45:59,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:46:01,357.357 INFO    ] ================================================
[2026-06-22 17:46:01,372.372 INFO    ] Launching Daemon at Mon Jun 22 17:46:01 IST 2026
[2026-06-22 17:46:01,383.383 INFO    ] ================================================
[2026-06-22 17:46:02,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:46:02
[2026-06-22 17:46:02,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:46:03,291.291 INFO    ] Initializing speech engine...
[2026-06-22 17:46:03,318.318 INFO    ] 2026-06-22 17:46:03
[2026-06-22 17:46:03,620.620 INFO    ] 2026-06-22 17:46:03
[2026-06-22 17:46:03,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:46:03,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:46:03,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:46:04,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:46:04,048.048 INFO    ] time= 22/06/2026 17:46:04
[2026-06-22 17:46:04,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:46:04,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:46:04,188.188 INFO    ] No existing commands found in stream
[2026-06-22 17:46:09,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:46:09,216.216 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-22 17:46:12,934.934 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:46:12,937.937 INFO    ] Checking for system updates...
[2026-06-22 17:46:12,977.977 INFO    ] 200
[2026-06-22 17:46:12,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:46:13,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:46:13,036.036 INFO    ] No update needed
[2026-06-22 17:46:13,038.038 INFO    ] Checking for camera pi updates...
[2026-06-22 17:46:13,072.072 INFO    ] 200
[2026-06-22 17:46:13,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:46:13,117.117 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:46:13,201.201 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:46:13,204.204 INFO    ] No camera update needed
[2026-06-22 17:46:13,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:46:13,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:46:13,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:46:13,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:46:15,262.262 INFO    ] ================================================
[2026-06-22 17:46:15,277.277 INFO    ] Launching Daemon at Mon Jun 22 17:46:15 IST 2026
[2026-06-22 17:46:15,288.288 INFO    ] ================================================
[2026-06-22 17:46:15,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:46:15
[2026-06-22 17:46:16,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:46:16,739.739 INFO    ] Initializing speech engine...
[2026-06-22 17:46:16,765.765 INFO    ] 2026-06-22 17:46:16
[2026-06-22 17:46:17,043.043 INFO    ] 2026-06-22 17:46:17
[2026-06-22 17:46:17,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:46:17,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:46:17,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:46:17,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:46:17,472.472 INFO    ] time= 22/06/2026 17:46:17
[2026-06-22 17:46:17,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:46:17,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:46:17,559.559 INFO    ] No existing commands found in stream
[2026-06-22 17:46:22,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:46:22,577.577 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-22 17:46:25,936.936 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:46:25,937.937 INFO    ] Checking for system updates...
[2026-06-22 17:46:25,958.958 INFO    ] 200
[2026-06-22 17:46:25,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:46:25,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:46:25,991.991 INFO    ] No update needed
[2026-06-22 17:46:25,993.993 INFO    ] Checking for camera pi updates...
[2026-06-22 17:46:26,021.021 INFO    ] 200
[2026-06-22 17:46:26,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:46:26,066.066 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:46:26,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:46:26,145.145 INFO    ] No camera update needed
[2026-06-22 17:46:26,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:46:26,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:46:26,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:46:26,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:46:28,199.199 INFO    ] ================================================
[2026-06-22 17:46:28,215.215 INFO    ] Launching Daemon at Mon Jun 22 17:46:28 IST 2026
[2026-06-22 17:46:28,225.225 INFO    ] ================================================
[2026-06-22 17:46:28,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:46:28
[2026-06-22 17:46:29,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:46:29,670.670 INFO    ] Initializing speech engine...
[2026-06-22 17:46:29,676.676 INFO    ] 2026-06-22 17:46:29
[2026-06-22 17:46:29,934.934 INFO    ] 2026-06-22 17:46:29
[2026-06-22 17:46:29,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:46:30,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:46:30,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:46:30,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:46:30,372.372 INFO    ] time= 22/06/2026 17:46:30
[2026-06-22 17:46:30,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:46:30,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:46:30,554.554 INFO    ] No existing commands found in stream
[2026-06-22 17:46:35,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:46:35,569.569 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-22 17:46:37,829.829 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:46:37,832.832 INFO    ] Checking for system updates...
[2026-06-22 17:46:37,872.872 INFO    ] 200
[2026-06-22 17:46:37,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:46:37,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:46:37,930.930 INFO    ] No update needed
[2026-06-22 17:46:37,933.933 INFO    ] Checking for camera pi updates...
[2026-06-22 17:46:37,971.971 INFO    ] 200
[2026-06-22 17:46:37,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:46:38,017.017 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:46:38,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:46:38,087.087 INFO    ] No camera update needed
[2026-06-22 17:46:38,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:46:38,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:46:38,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:46:38,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:46:40,146.146 INFO    ] ================================================
[2026-06-22 17:46:40,161.161 INFO    ] Launching Daemon at Mon Jun 22 17:46:40 IST 2026
[2026-06-22 17:46:40,172.172 INFO    ] ================================================
[2026-06-22 17:46:40,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:46:40
[2026-06-22 17:46:41,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:46:41,511.511 INFO    ] Initializing speech engine...
[2026-06-22 17:46:41,526.526 INFO    ] 2026-06-22 17:46:41
[2026-06-22 17:46:41,811.811 INFO    ] 2026-06-22 17:46:41
[2026-06-22 17:46:41,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:46:42,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:46:42,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:46:42,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:46:42,232.232 INFO    ] time= 22/06/2026 17:46:42
[2026-06-22 17:46:42,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:46:42,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:46:42,315.315 INFO    ] No existing commands found in stream
[2026-06-22 17:46:47,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:46:47,330.330 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-22 17:46:50,441.441 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:46:50,444.444 INFO    ] Checking for system updates...
[2026-06-22 17:46:50,482.482 INFO    ] 200
[2026-06-22 17:46:50,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:46:50,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:46:50,549.549 INFO    ] No update needed
[2026-06-22 17:46:50,551.551 INFO    ] Checking for camera pi updates...
[2026-06-22 17:46:50,587.587 INFO    ] 200
[2026-06-22 17:46:50,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:46:50,632.632 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:46:50,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:46:50,707.707 INFO    ] No camera update needed
[2026-06-22 17:46:50,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:46:50,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:46:50,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:46:50,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:46:52,767.767 INFO    ] ================================================
[2026-06-22 17:46:52,782.782 INFO    ] Launching Daemon at Mon Jun 22 17:46:52 IST 2026
[2026-06-22 17:46:52,793.793 INFO    ] ================================================
[2026-06-22 17:46:53,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:46:53
[2026-06-22 17:46:53,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:46:54,182.182 INFO    ] Initializing speech engine...
[2026-06-22 17:46:54,194.194 INFO    ] 2026-06-22 17:46:54
[2026-06-22 17:46:54,446.446 INFO    ] 2026-06-22 17:46:54
[2026-06-22 17:46:54,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:46:54,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:46:54,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:46:54,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:46:54,930.930 INFO    ] time= 22/06/2026 17:46:54
[2026-06-22 17:46:54,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:46:55,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:46:55,122.122 INFO    ] No existing commands found in stream
[2026-06-22 17:47:00,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:47:00,151.151 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-22 17:47:00,827.827 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:47:00,830.830 INFO    ] Checking for system updates...
[2026-06-22 17:47:00,866.866 INFO    ] 200
[2026-06-22 17:47:00,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:47:00,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:47:00,923.923 INFO    ] No update needed
[2026-06-22 17:47:00,926.926 INFO    ] Checking for camera pi updates...
[2026-06-22 17:47:00,963.963 INFO    ] 200
[2026-06-22 17:47:00,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:47:01,011.011 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:47:01,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:47:01,106.106 INFO    ] No camera update needed
[2026-06-22 17:47:01,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:47:01,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:47:01,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:47:01,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:47:03,180.180 INFO    ] ================================================
[2026-06-22 17:47:03,202.202 INFO    ] Launching Daemon at Mon Jun 22 17:47:03 IST 2026
[2026-06-22 17:47:03,220.220 INFO    ] ================================================
[2026-06-22 17:47:03,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:47:03
[2026-06-22 17:47:04,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:47:04,895.895 INFO    ] Initializing speech engine...
[2026-06-22 17:47:04,907.907 INFO    ] 2026-06-22 17:47:04
[2026-06-22 17:47:05,181.181 INFO    ] 2026-06-22 17:47:05
[2026-06-22 17:47:05,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:47:05,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:47:05,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:47:05,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:47:05,746.746 INFO    ] time= 22/06/2026 17:47:05
[2026-06-22 17:47:05,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:47:05,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:47:05,903.903 INFO    ] No existing commands found in stream
[2026-06-22 17:47:10,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:47:10,937.937 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-22 17:47:11,512.512 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:47:11,515.515 INFO    ] Checking for system updates...
[2026-06-22 17:47:11,552.552 INFO    ] 200
[2026-06-22 17:47:11,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:47:11,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:47:11,613.613 INFO    ] No update needed
[2026-06-22 17:47:11,616.616 INFO    ] Checking for camera pi updates...
[2026-06-22 17:47:11,651.651 INFO    ] 200
[2026-06-22 17:47:11,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:47:11,700.700 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:47:11,781.781 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:47:11,783.783 INFO    ] No camera update needed
[2026-06-22 17:47:11,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:47:11,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:47:11,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:47:11,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:47:13,843.843 INFO    ] ================================================
[2026-06-22 17:47:13,858.858 INFO    ] Launching Daemon at Mon Jun 22 17:47:13 IST 2026
[2026-06-22 17:47:13,868.868 INFO    ] ================================================
[2026-06-22 17:47:14,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:47:14
[2026-06-22 17:47:15,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:47:15,395.395 INFO    ] Initializing speech engine...
[2026-06-22 17:47:15,409.409 INFO    ] 2026-06-22 17:47:15
[2026-06-22 17:47:15,688.688 INFO    ] 2026-06-22 17:47:15
[2026-06-22 17:47:15,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:47:15,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:47:15,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:47:16,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:47:16,238.238 INFO    ] time= 22/06/2026 17:47:16
[2026-06-22 17:47:16,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:47:16,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:47:16,400.400 INFO    ] No existing commands found in stream
[2026-06-22 17:47:21,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:47:21,433.433 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-22 17:47:22,101.101 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:47:22,103.103 INFO    ] Checking for system updates...
[2026-06-22 17:47:22,140.140 INFO    ] 200
[2026-06-22 17:47:22,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:47:22,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:47:22,203.203 INFO    ] No update needed
[2026-06-22 17:47:22,205.205 INFO    ] Checking for camera pi updates...
[2026-06-22 17:47:22,240.240 INFO    ] 200
[2026-06-22 17:47:22,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:47:22,284.284 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:47:22,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:47:22,368.368 INFO    ] No camera update needed
[2026-06-22 17:47:22,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:47:22,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:47:22,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:47:22,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:47:24,423.423 INFO    ] ================================================
[2026-06-22 17:47:24,438.438 INFO    ] Launching Daemon at Mon Jun 22 17:47:24 IST 2026
[2026-06-22 17:47:24,449.449 INFO    ] ================================================
[2026-06-22 17:47:25,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:47:25
[2026-06-22 17:47:25,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:47:25,767.767 INFO    ] Initializing speech engine...
[2026-06-22 17:47:25,782.782 INFO    ] 2026-06-22 17:47:25
[2026-06-22 17:47:26,048.048 INFO    ] 2026-06-22 17:47:26
[2026-06-22 17:47:26,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:47:26,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:47:26,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:47:26,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:47:26,532.532 INFO    ] time= 22/06/2026 17:47:26
[2026-06-22 17:47:26,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:47:26,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:47:26,773.773 INFO    ] No existing commands found in stream
[2026-06-22 17:47:31,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:47:31,793.793 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-22 17:47:35,557.557 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:47:35,560.560 INFO    ] Checking for system updates...
[2026-06-22 17:47:35,600.600 INFO    ] 200
[2026-06-22 17:47:35,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:47:35,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:47:35,665.665 INFO    ] No update needed
[2026-06-22 17:47:35,668.668 INFO    ] Checking for camera pi updates...
[2026-06-22 17:47:35,702.702 INFO    ] 200
[2026-06-22 17:47:35,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:47:35,745.745 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:47:35,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:47:35,832.832 INFO    ] No camera update needed
[2026-06-22 17:47:35,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:47:35,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:47:35,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:47:35,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:47:37,889.889 INFO    ] ================================================
[2026-06-22 17:47:37,904.904 INFO    ] Launching Daemon at Mon Jun 22 17:47:37 IST 2026
[2026-06-22 17:47:37,915.915 INFO    ] ================================================
[2026-06-22 17:47:38,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:47:38
[2026-06-22 17:47:39,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:47:39,335.335 INFO    ] Initializing speech engine...
[2026-06-22 17:47:39,344.344 INFO    ] 2026-06-22 17:47:39
[2026-06-22 17:47:39,593.593 INFO    ] 2026-06-22 17:47:39
[2026-06-22 17:47:39,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:47:39,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:47:39,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:47:40,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:47:40,065.065 INFO    ] time= 22/06/2026 17:47:40
[2026-06-22 17:47:40,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:47:40,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:47:40,303.303 INFO    ] No existing commands found in stream
[2026-06-22 17:47:45,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:47:45,321.321 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-22 17:47:48,408.408 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:47:48,411.411 INFO    ] Checking for system updates...
[2026-06-22 17:47:48,448.448 INFO    ] 200
[2026-06-22 17:47:48,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:47:48,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:47:48,522.522 INFO    ] No update needed
[2026-06-22 17:47:48,524.524 INFO    ] Checking for camera pi updates...
[2026-06-22 17:47:48,559.559 INFO    ] 200
[2026-06-22 17:47:48,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:47:48,607.607 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:47:48,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:47:48,714.714 INFO    ] No camera update needed
[2026-06-22 17:47:48,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:47:48,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:47:48,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:47:48,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:47:50,771.771 INFO    ] ================================================
[2026-06-22 17:47:50,787.787 INFO    ] Launching Daemon at Mon Jun 22 17:47:50 IST 2026
[2026-06-22 17:47:50,798.798 INFO    ] ================================================
[2026-06-22 17:47:51,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:47:51
[2026-06-22 17:47:52,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:47:52,359.359 INFO    ] Initializing speech engine...
[2026-06-22 17:47:52,373.373 INFO    ] 2026-06-22 17:47:52
[2026-06-22 17:47:52,659.659 INFO    ] 2026-06-22 17:47:52
[2026-06-22 17:47:52,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:47:52,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:47:53,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:47:53,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:47:53,214.214 INFO    ] time= 22/06/2026 17:47:53
[2026-06-22 17:47:53,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:47:53,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:47:53,357.357 INFO    ] No existing commands found in stream
[2026-06-22 17:47:58,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:47:58,387.387 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-22 17:47:59,752.752 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:47:59,755.755 INFO    ] Checking for system updates...
[2026-06-22 17:47:59,793.793 INFO    ] 200
[2026-06-22 17:47:59,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:47:59,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:47:59,854.854 INFO    ] No update needed
[2026-06-22 17:47:59,857.857 INFO    ] Checking for camera pi updates...
[2026-06-22 17:47:59,892.892 INFO    ] 200
[2026-06-22 17:47:59,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:47:59,937.937 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:48:00,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:48:00,033.033 INFO    ] No camera update needed
[2026-06-22 17:48:00,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:48:00,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:48:00,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:48:00,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:48:02,109.109 INFO    ] ================================================
[2026-06-22 17:48:02,142.142 INFO    ] Launching Daemon at Mon Jun 22 17:48:02 IST 2026
[2026-06-22 17:48:02,180.180 INFO    ] ================================================
[2026-06-22 17:48:02,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:48:02
[2026-06-22 17:48:03,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:48:03,938.938 INFO    ] Initializing speech engine...
[2026-06-22 17:48:03,951.951 INFO    ] 2026-06-22 17:48:03
[2026-06-22 17:48:04,219.219 INFO    ] 2026-06-22 17:48:04
[2026-06-22 17:48:04,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:48:04,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:48:04,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:48:04,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:48:04,624.624 INFO    ] time= 22/06/2026 17:48:04
[2026-06-22 17:48:04,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:48:04,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:48:04,709.709 INFO    ] No existing commands found in stream
[2026-06-22 17:48:09,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:48:09,727.727 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-22 17:48:11,990.990 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:48:11,992.992 INFO    ] Checking for system updates...
[2026-06-22 17:48:12,029.029 INFO    ] 200
[2026-06-22 17:48:12,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:48:12,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:48:12,088.088 INFO    ] No update needed
[2026-06-22 17:48:12,090.090 INFO    ] Checking for camera pi updates...
[2026-06-22 17:48:12,124.124 INFO    ] 200
[2026-06-22 17:48:12,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:48:12,172.172 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:48:12,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:48:12,238.238 INFO    ] No camera update needed
[2026-06-22 17:48:12,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:48:12,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:48:12,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:48:12,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:48:14,292.292 INFO    ] ================================================
[2026-06-22 17:48:14,307.307 INFO    ] Launching Daemon at Mon Jun 22 17:48:14 IST 2026
[2026-06-22 17:48:14,318.318 INFO    ] ================================================
[2026-06-22 17:48:14,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:48:14
[2026-06-22 17:48:15,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:48:15,677.677 INFO    ] Initializing speech engine...
[2026-06-22 17:48:15,702.702 INFO    ] 2026-06-22 17:48:15
[2026-06-22 17:48:15,969.969 INFO    ] 2026-06-22 17:48:15
[2026-06-22 17:48:16,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:48:16,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:48:16,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:48:16,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:48:16,381.381 INFO    ] time= 22/06/2026 17:48:16
[2026-06-22 17:48:16,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:48:16,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:48:16,572.572 INFO    ] No existing commands found in stream
[2026-06-22 17:48:21,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:48:21,605.605 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-22 17:48:25,112.112 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:48:25,115.115 INFO    ] Checking for system updates...
[2026-06-22 17:48:25,151.151 INFO    ] 200
[2026-06-22 17:48:25,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:48:25,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:48:25,210.210 INFO    ] No update needed
[2026-06-22 17:48:25,212.212 INFO    ] Checking for camera pi updates...
[2026-06-22 17:48:25,246.246 INFO    ] 200
[2026-06-22 17:48:25,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:48:25,293.293 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:48:25,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:48:25,382.382 INFO    ] No camera update needed
[2026-06-22 17:48:25,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:48:25,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:48:25,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:48:25,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:48:27,440.440 INFO    ] ================================================
[2026-06-22 17:48:27,456.456 INFO    ] Launching Daemon at Mon Jun 22 17:48:27 IST 2026
[2026-06-22 17:48:27,467.467 INFO    ] ================================================
[2026-06-22 17:48:27,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:48:27
[2026-06-22 17:48:28,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:48:28,947.947 INFO    ] Initializing speech engine...
[2026-06-22 17:48:28,961.961 INFO    ] 2026-06-22 17:48:28
[2026-06-22 17:48:29,242.242 INFO    ] 2026-06-22 17:48:29
[2026-06-22 17:48:29,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:48:29,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:48:29,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:48:29,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:48:29,780.780 INFO    ] time= 22/06/2026 17:48:29
[2026-06-22 17:48:29,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:48:29,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:48:29,937.937 INFO    ] No existing commands found in stream
[2026-06-22 17:48:34,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:48:34,964.964 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-22 17:48:38,862.862 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:48:38,865.865 INFO    ] Checking for system updates...
[2026-06-22 17:48:38,905.905 INFO    ] 200
[2026-06-22 17:48:38,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:48:38,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:48:38,963.963 INFO    ] No update needed
[2026-06-22 17:48:38,965.965 INFO    ] Checking for camera pi updates...
[2026-06-22 17:48:39,002.002 INFO    ] 200
[2026-06-22 17:48:39,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:48:39,045.045 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:48:39,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:48:39,143.143 INFO    ] No camera update needed
[2026-06-22 17:48:39,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:48:39,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:48:39,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:48:39,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:48:41,199.199 INFO    ] ================================================
[2026-06-22 17:48:41,214.214 INFO    ] Launching Daemon at Mon Jun 22 17:48:41 IST 2026
[2026-06-22 17:48:41,225.225 INFO    ] ================================================
[2026-06-22 17:48:41,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:48:41
[2026-06-22 17:48:42,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:48:42,617.617 INFO    ] Initializing speech engine...
[2026-06-22 17:48:42,626.626 INFO    ] 2026-06-22 17:48:42
[2026-06-22 17:48:42,900.900 INFO    ] 2026-06-22 17:48:42
[2026-06-22 17:48:42,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:48:43,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:48:43,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:48:43,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:48:43,387.387 INFO    ] time= 22/06/2026 17:48:43
[2026-06-22 17:48:43,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:48:43,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:48:43,563.563 INFO    ] No existing commands found in stream
[2026-06-22 17:48:48,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:48:48,598.598 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-22 17:48:52,343.343 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:48:52,344.344 INFO    ] Checking for system updates...
[2026-06-22 17:48:52,366.366 INFO    ] 200
[2026-06-22 17:48:52,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:48:52,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:48:52,400.400 INFO    ] No update needed
[2026-06-22 17:48:52,401.401 INFO    ] Checking for camera pi updates...
[2026-06-22 17:48:52,435.435 INFO    ] 200
[2026-06-22 17:48:52,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:48:52,479.479 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:48:52,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:48:52,563.563 INFO    ] No camera update needed
[2026-06-22 17:48:52,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:48:52,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:48:52,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:48:52,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:48:54,620.620 INFO    ] ================================================
[2026-06-22 17:48:54,636.636 INFO    ] Launching Daemon at Mon Jun 22 17:48:54 IST 2026
[2026-06-22 17:48:54,646.646 INFO    ] ================================================
[2026-06-22 17:48:55,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:48:55
[2026-06-22 17:48:55,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:48:56,076.076 INFO    ] Initializing speech engine...
[2026-06-22 17:48:56,085.085 INFO    ] 2026-06-22 17:48:56
[2026-06-22 17:48:56,334.334 INFO    ] 2026-06-22 17:48:56
[2026-06-22 17:48:56,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:48:56,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:48:56,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:48:56,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:48:56,844.844 INFO    ] time= 22/06/2026 17:48:56
[2026-06-22 17:48:56,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:48:56,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:48:57,061.061 INFO    ] Found 1 existing command(s) in stream
[2026-06-22 17:48:57,105.105 INFO    ] Checking historical command: ID=1782130732909-0
[2026-06-22 17:48:57,159.159 INFO    ] process_and_cleanup_command: msg_id=1782130732909-0
[2026-06-22 17:48:57,234.234 INFO    ] is_command_expired: timestamp=2026-06-22T12:18:52.600Z, expiry=30s
[2026-06-22 17:48:57,422.422 INFO    ] Command removed from stream: 1782130732909-0. returning for processing...
[2026-06-22 17:48:57,428.428 INFO    ] ***** get_valid_command
[2026-06-22 17:48:57,431.431 INFO    ] {'source': 'webapp', 'timeout': '10', 'data': '{"request_id":"start-order-1782130732600-sxidiw91j","orderId":"TM06202507260622174806183","is_vending":false}', 'timestamp': '2026-06-22T12:18:52.600Z', 'command': 'start-order'}
[2026-06-22 17:48:57,434.434 INFO    ] ***** Parsed command data: {'orderId': 'TM06202507260622174806183', 'is_vending': False, 'request_id': 'start-order-1782130732600-sxidiw91j'}
[2026-06-22 17:48:57,437.437 INFO    ] Handling start order...
[2026-06-22 17:48:57,440.440 INFO    ] handle_start_order_command
[2026-06-22 17:48:57,542.542 INFO    ] _send_start_order_success: request_id=start-order-1782130732600-sxidiw91j, order_id=TM06202507260622174806183
[2026-06-22 17:48:57,585.585 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM06202507
[2026-06-22 17:48:57,648.648 INFO    ] [_send_start_order_success] Message added to stream with ID: 1782130737584-0
[2026-06-22 17:48:57,650.650 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-22 17:48:57,699.699 INFO    ] Checking for system updates...
[2026-06-22 17:48:57,752.752 INFO    ] 200
[2026-06-22 17:48:57,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:48:57,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:48:57,827.827 INFO    ] No update needed
[2026-06-22 17:48:57,830.830 INFO    ] Checking for camera pi updates...
[2026-06-22 17:48:57,854.854 INFO    ] 200
[2026-06-22 17:48:57,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:48:57,909.909 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:48:57,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:48:58,002.002 INFO    ] No camera update needed
[2026-06-22 17:48:58,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:48:58,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:48:58,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:48:58,044.044 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-22 17:48:58,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:49:00,103.103 INFO    ] ================================================
[2026-06-22 17:49:00,118.118 INFO    ] Launching Daemon at Mon Jun 22 17:49:00 IST 2026
[2026-06-22 17:49:00,128.128 INFO    ] ================================================
[2026-06-22 17:49:00,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:49:00
[2026-06-22 17:49:01,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:49:01,495.495 INFO    ] Initializing speech engine...
[2026-06-22 17:49:01,505.505 INFO    ] 2026-06-22 17:49:01
[2026-06-22 17:49:01,764.764 INFO    ] 2026-06-22 17:49:01
[2026-06-22 17:49:01,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:49:02,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:49:02,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:49:02,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:49:02,210.210 INFO    ] time= 22/06/2026 17:49:02
[2026-06-22 17:49:02,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:49:02,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:49:02,296.296 INFO    ] Found 2 existing command(s) in stream
[2026-06-22 17:49:02,299.299 INFO    ] Checking historical command: ID=1782130737584-0
[2026-06-22 17:49:02,303.303 INFO    ] process_and_cleanup_command: msg_id=1782130737584-0
[2026-06-22 17:49:02,321.321 INFO    ] is_command_expired: timestamp=2026-06-22T12:18:57.553272Z, expiry=30s
[2026-06-22 17:49:02,514.514 INFO    ] Command removed from stream: 1782130737584-0. returning for processing...
[2026-06-22 17:49:02,529.529 INFO    ] ***** get_valid_command
[2026-06-22 17:49:02,547.547 INFO    ] {'timestamp': '2026-06-22T12:18:57.553272Z', 'status': 'success', 'imei': 'TM06202507', 'message_type': 'command_response', 'message': 'start-order success', 'metadata_request_id': 'start-order-1782130732600-sxidiw91j', 'metadata_order_id': 'TM06202507260622174806183'}
[2026-06-22 17:49:02,577.577 INFO    ] Checking historical command: ID=1782130739840-0
[2026-06-22 17:49:02,589.589 INFO    ] process_and_cleanup_command: msg_id=1782130739840-0
[2026-06-22 17:49:02,598.598 INFO    ] is_command_expired: timestamp=2026-06-22T12:18:59.471Z, expiry=30s
[2026-06-22 17:49:02,719.719 INFO    ] Command removed from stream: 1782130739840-0. returning for processing...
[2026-06-22 17:49:02,769.769 INFO    ] ***** get_valid_command
[2026-06-22 17:49:02,828.828 INFO    ] {'data': '{"request_id":"process-order-1782130739471-wfpqfbll6","orderId":"TM06202507260622174806183","is_vending":false,"accessCode":"43625616"}', 'timestamp': '2026-06-22T12:18:59.471Z', 'source': 'webapp', 'command': 'process-order', 'timeout': '60'}
[2026-06-22 17:49:02,862.862 INFO    ] ***** Parsed command data: {'accessCode': '43625616', 'orderId': 'TM06202507260622174806183', 'request_id': 'process-order-1782130739471-wfpqfbll6', 'is_vending': False}
[2026-06-22 17:49:02,917.917 INFO    ] Handling process order...
[2026-06-22 17:49:02,967.967 INFO    ] Processing process-order command...
[2026-06-22 17:49:03,046.046 INFO    ] 🔍 Lock file Order ID: TM06202507260622174806183, TS: 2026-06-22 17:48:57
[2026-06-22 17:49:03,067.067 INFO    ] ✅ Order lock valid for TM06202507260622174806183
[2026-06-22 17:49:03,071.071 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-22 17:49:03,074.074 INFO    ] processing access code 43625616 for order TM06202507260622174806183
[2026-06-22 17:49:03,094.094 INFO    ] 🔍 Lock file Order ID: TM06202507260622174806183, TS: 2026-06-22 17:48:57
[2026-06-22 17:49:03,168.168 INFO    ] ✅ Order lock valid for TM06202507260622174806183
[2026-06-22 17:49:03,215.215 INFO    ] 2026-06-22 17:49:03
[2026-06-22 17:49:03,286.286 INFO    ] 200
[2026-06-22 17:49:03,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:49:03,357.357 INFO    ] 43625616
[2026-06-22 17:49:03,369.369 INFO    ] 2026-06-22 17:49:03
[2026-06-22 17:49:03,379.379 INFO    ] session id :519507671
[2026-06-22 17:49:03,386.386 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=43625616&imei=TM06202507&session_id=519507671
[2026-06-22 17:49:04,448.448 INFO    ] 200
[2026-06-22 17:49:04,464.464 INFO    ] {"data": {"mobile": "8838625896", "order_id": "TM06202507260622174806183", "access_code": "43625616", "bill_amount": "90", "proposed_sku_json": [{"tray_id": "14", "qty": 2, "mrp": "30", "door_id": "1", "name": "Farmely Panchmeva 21gm", "sku_total": 60, "image_url": "https://images.tinymart.in/product/4500668-1144.jpg", "offer_desc": "", "unit_price": 30, "skuid": "4500668", "offer_id": ""}, {"tray_id": "37", "qty": 1, "mrp": "30", "door_id": "2", "name": "KITKAT Nestle 4 Finger Chocolate 38g", "sku_total": 30, "image_url": "https://images.tinymart.in/product/186084-5395.png", "offer_desc": "", "unit_price": 30, "skuid": "186084", "offer_id": ""}], "invoice_bill": "90"}, "msg": "Order Data", "status": true, "rstatus": true}
[2026-06-22 17:49:04,474.474 INFO    ] 90
[2026-06-22 17:49:04,479.479 INFO    ] TM06202507260622174806183
[2026-06-22 17:49:04,485.485 INFO    ] 8838625896
[2026-06-22 17:49:04,502.502 INFO    ] 2026-06-22 17:49:04
[2026-06-22 17:49:04,513.513 INFO    ] Door Opening for user mobile ending with  five eight nine six 
[2026-06-22 17:49:04,537.537 INFO    ] Door Opening for user mobile ending with  five eight nine six 
[2026-06-22 17:49:04,545.545 INFO    ] 1d733e1dc3c7c702e172571ff0a14061
[2026-06-22 17:49:04,561.561 INFO    ] 2026-06-22 17:49:04
[2026-06-22 17:49:04,582.582 INFO    ] playing audio file
[2026-06-22 17:49:04,634.634 INFO    ] 2026-06-22 17:49:04
[2026-06-22 17:49:04,641.641 INFO    ] 2026-06-22 17:49:04
[2026-06-22 17:49:04,655.655 INFO    ] publish_status: order_id=TM06202507260622174806183
[2026-06-22 17:49:04,661.661 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622174806183
[2026-06-22 17:49:04,769.769 INFO    ] [publish_status] Message added to stream with ID: 1782130744673-0
[2026-06-22 17:49:04,786.786 INFO    ] Published to order:TM06202507260622174806183: {'timestamp': '2026-06-22T12:19:04.643412Z', 'server_response': '{"data": {"access_code": "43625616", "invoice_bill": "90", "mobile": "8838625896", "order_id": "TM06202507260622174806183", "bill_amount": "90", "proposed_sku_json": [{"offer_desc": "", "name": "Farmely Panchmeva 21gm", "sku_total": 60, "tray_id": "14", "offer_id": "", "unit_price": 30, "qty": 2, "image_url": "https://images.tinymart.in/product/4500668-1144.jpg", "mrp": "30", "door_id": "1", "skuid": "4500668"}, {"offer_desc": "", "name": "KITKAT Nestle 4 Finger Chocolate 38g", "sku_total": 30, "tray_id": "37", "offer_id": "", "unit_price": 30, "qty": 1, "image_url": "https://images.tinymart.in/product/186084-5395.png", "mrp": "30", "door_id": "2", "skuid": "186084"}]}, "status": true, "rstatus": true, "msg": "Order Data"}', 'server_status': 'order-started', 'order_id': 'TM06202507260622174806183'} (ID: 1782130744673-0)
[2026-06-22 17:49:05,402.402 INFO    ] {'server_response': {'data': {'access_code': '43625616', 'invoice_bill': '90', 'mobile': '8838625896', 'order_id': 'TM06202507260622174806183', 'bill_amount': '90', 'proposed_sku_json': [{'offer_desc': '', 'name': 'Farmely Panchmeva 21gm', 'sku_total': 60, 'tray_id': '14', 'offer_id': '', 'unit_price': 30, 'qty': 2, 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'mrp': '30', 'door_id': '1', 'skuid': '4500668'}, {'offer_desc': '', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'sku_total': 30, 'tray_id': '37', 'offer_id': '', 'unit_price': 30, 'qty': 1, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'mrp': '30', 'door_id': '2', 'skuid': '186084'}]}, 'status': True, 'rstatus': True, 'msg': 'Order Data'}, 'server_status': 'order-started', 'order_id': 'TM06202507260622174806183'}
[2026-06-22 17:49:05,405.405 INFO    ] 200
[2026-06-22 17:49:05,408.408 INFO    ] {"data":{"server_response":{"data":{"access_code":"43625616","invoice_bill":"90","mobile":"8838625896","order_id":"TM06202507260622174806183","bill_amount":"90","proposed_sku_json":[{"offer_desc":"","name":"Farmely Panchmeva 21gm","sku_total":60,"tray_id":"14","offer_id":"","unit_price":30,"qty":2,"image_url":"https:\/\/images.tinymart.in\/product\/4500668-1144.jpg","mrp":"30","door_id":"1","skuid":"4500668"},{"offer_desc":"","name":"KITKAT Nestle 4 Finger Chocolate 38g","sku_total":30,"tray_id":"37","offer_id":"","unit_price":30,"qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","mrp":"30","door_id":"2","skuid":"186084"}]},"status":true,"rstatus":true,"msg":"Order Data"},"server_status":"order-started","order_id":"TM06202507260622174806183"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 17:49:05,411.411 INFO    ] {'data': {'server_response': {'data': {'access_code': '43625616', 'invoice_bill': '90', 'mobile': '8838625896', 'proposed_sku_json': [{'skuid': '4500668', 'sku_total': 60, 'offer_desc': '', 'tray_id': '14', 'qty': 2, 'unit_price': 30, 'name': 'Farmely Panchmeva 21gm', 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'mrp': '30', 'door_id': '1', 'offer_id': ''}, {'skuid': '186084', 'sku_total': 30, 'offer_desc': '', 'tray_id': '37', 'qty': 1, 'unit_price': 30, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g', 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'mrp': '30', 'door_id': '2', 'offer_id': ''}], 'bill_amount': '90', 'order_id': 'TM06202507260622174806183'}, 'status': True, 'msg': 'Order Data', 'rstatus': True}, 'server_status': 'order-started', 'order_id': 'TM06202507260622174806183'}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-22 17:49:05,414.414 INFO    ] 2026-06-22 17:49:05
[2026-06-22 17:49:05,459.459 INFO    ] 200
[2026-06-22 17:49:05,461.461 INFO    ] True
[2026-06-22 17:49:05,593.593 INFO    ] 200
[2026-06-22 17:49:05,596.596 INFO    ] {"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": ""}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 17:49:05,603.603 INFO    ] {'status': 'False', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': False, 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': ''}}
[2026-06-22 17:49:05,606.606 INFO    ] *** process_order ***
[2026-06-22 17:49:06,848.848 INFO    ] 200
[2026-06-22 17:49:06,851.851 INFO    ] {"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": ""}, "rstatus": true, "delay": 0, "status": "True", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 17:49:06,853.853 INFO    ] {'status': 'True', 'delay': 0, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': 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  ', 'Note': '', 'UI_Header': ''}}
[2026-06-22 17:49:06,856.856 INFO    ] *** process_order ***
[2026-06-22 17:49:06,858.858 INFO    ] publish_status: order_id=TM06202507260622174806183
[2026-06-22 17:49:06,860.860 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622174806183
[2026-06-22 17:49:06,947.947 INFO    ] [publish_status] Message added to stream with ID: 1782130746883-0
[2026-06-22 17:49:06,956.956 INFO    ] Published to order:TM06202507260622174806183: {'server_response': '{"status": "True", "delay": 0, "voiceNote": "Door is open...", "SectionMain": {"Header": "Processing Order"}, "rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionStatus": {"SubHeader": "You can pull the door now.", "Header": " Your order is under process  ", "Note": "", "UI_Header": ""}}', 'server_status': 'doorOpened', 'order_id': 'TM06202507260622174806183'} (ID: 1782130746883-0)
[2026-06-22 17:49:08,008.008 INFO    ] 2026-06-22 17:49:08
[2026-06-22 17:49:08,012.012 INFO    ] publish_status: order_id=TM06202507260622174806183
[2026-06-22 17:49:08,015.015 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622174806183
[2026-06-22 17:49:08,107.107 INFO    ] [publish_status] Message added to stream with ID: 1782130748043-0
[2026-06-22 17:49:08,110.110 INFO    ] Published to order:TM06202507260622174806183: {'timestamp': '2026-06-22T12:19:08.010495Z', 'server_response': '{"status": "True", "delay": 0, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "rstatus": 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  ", "Note": "", "UI_Header": ""}}', 'server_status': 'processOrder', 'order_id': 'TM06202507260622174806183'} (ID: 1782130748043-0)
[2026-06-22 17:49:08,257.257 INFO    ] {'server_response': {'status': 'True', 'delay': 0, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': 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  ', 'Note': '', 'UI_Header': ''}}, 'server_status': 'processOrder', 'order_id': 'TM06202507260622174806183'}
[2026-06-22 17:49:08,260.260 INFO    ] 200
[2026-06-22 17:49:08,263.263 INFO    ] {"data":{"server_response":{"status":"true","delay":0,"voiceNote":"Please Wait","SectionMain":{"Header":"Processing Order"},"rstatus":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  ","Note":"","UI_Header":""}},"server_status":"processOrder","order_id":"TM06202507260622174806183"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 17:49:08,267.267 INFO    ] {'data': {'server_response': {'status': 'true', 'delay': 0, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': 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  ', 'Note': '', 'UI_Header': ''}}, 'server_status': 'processOrder', 'order_id': 'TM06202507260622174806183'}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-22 17:49:08,272.272 INFO    ] 2026-06-22 17:49:08
[2026-06-22 17:49:08,276.276 INFO    ] None
[2026-06-22 17:49:08,279.279 INFO    ] Opening Door now
[2026-06-22 17:49:08,282.282 INFO    ] Opening Door now
[2026-06-22 17:49:08,285.285 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-22 17:49:08,288.288 INFO    ] 2026-06-22 17:49:08
[2026-06-22 17:49:08,290.290 INFO    ] playing audio file
[2026-06-22 17:49:08,308.308 INFO    ] 2026-06-22 17:49:08
[2026-06-22 17:49:08,311.311 INFO    ] 2026-06-22 17:49:08
[2026-06-22 17:49:11,456.456 INFO    ] 200
[2026-06-22 17:49:11,459.459 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Farmely Panchmeva 21gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Door 1 is open now"}
[2026-06-22 17:49:11,462.462 INFO    ] {'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Farmely Panchmeva 21gm'}]}, 'voiceNote': 'Door 1 is open now', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}}
[2026-06-22 17:49:14,521.521 INFO    ] 200
[2026-06-22 17:49:14,524.524 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Farmely Panchmeva 21gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 17:49:14,527.527 INFO    ] {'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Farmely Panchmeva 21gm'}]}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}}
[2026-06-22 17:49:17,591.591 INFO    ] 200
[2026-06-22 17:49:17,593.593 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Farmely Panchmeva 21gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 17:49:17,596.596 INFO    ] Please close door 1
[2026-06-22 17:49:17,599.599 INFO    ] Please close door 1
[2026-06-22 17:49:17,602.602 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-22 17:49:17,605.605 INFO    ] 2026-06-22 17:49:17
[2026-06-22 17:49:17,610.610 INFO    ] playing audio file
[2026-06-22 17:49:17,629.629 INFO    ] 2026-06-22 17:49:17
[2026-06-22 17:49:17,633.633 INFO    ] publish_status: order_id=TM06202507260622174806183
[2026-06-22 17:49:17,638.638 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622174806183
[2026-06-22 17:49:17,737.737 INFO    ] [publish_status] Message added to stream with ID: 1782130757674-0
[2026-06-22 17:49:17,740.740 INFO    ] Published to order:TM06202507260622174806183: {'timestamp': '2026-06-22T12:19:17.631378Z', 'server_response': '{"status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Farmely Panchmeva 21gm"}]}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "rstatus": false, "error": {"data": {}, "tmessage": "In Progress", "umessage": "In Progress", "code": 20001}, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW"}}', 'server_status': 'OrderStatus', 'order_id': 'TM06202507260622174806183'} (ID: 1782130757674-0)
[2026-06-22 17:49:18,381.381 INFO    ] {'server_response': {'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Farmely Panchmeva 21gm'}]}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}}, 'server_status': 'OrderStatus', 'order_id': 'TM06202507260622174806183'}
[2026-06-22 17:49:18,385.385 INFO    ] 200
[2026-06-22 17:49:18,388.388 INFO    ] {"data":{"server_response":{"status":"false","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":2,"name":"Farmely Panchmeva 21gm"}]},"voiceNote":"Please close door 1","SectionMain":{"Header":"Door Open"},"rstatus":false,"error":{"data":[],"tmessage":"In Progress","umessage":"In Progress","code":20001},"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 1","Note":"Please Close the door after picking up products","UI_Header":"DOOR 1\nIS \nOPEN \nNOW"}},"server_status":"OrderStatus","order_id":"TM06202507260622174806183"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 17:49:18,392.392 INFO    ] {'data': {'server_response': {'status': 'false', 'error': {'data': [], 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Farmely Panchmeva 21gm'}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}}, 'server_status': 'OrderStatus', 'order_id': 'TM06202507260622174806183'}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-22 17:49:18,395.395 INFO    ] {'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Farmely Panchmeva 21gm'}]}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}}
[2026-06-22 17:49:21,448.448 INFO    ] 200
[2026-06-22 17:49:21,451.451 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Farmely Panchmeva 21gm"}]}, "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"}, "rstatus": false, "delay": 1000, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Close"}, "voiceNote": "Door 1 is closed now"}
[2026-06-22 17:49:21,454.454 INFO    ] {'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 2, 'name': 'Farmely Panchmeva 21gm'}]}, 'delay': 1000, 'SectionMain': {'Header': 'Door Close'}, 'rstatus': False, 'voiceNote': 'Door 1 is closed now', 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Header': 'Door 1 is closed now', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': 'DOOR 1\nIS \nCLOSED \nNOW'}}
[2026-06-22 17:49:24,599.599 INFO    ] 200
[2026-06-22 17:49:24,602.602 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Door 2 is open now"}
[2026-06-22 17:49:24,606.606 INFO    ] {'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}]}, 'voiceNote': 'Door 2 is open now', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}}
[2026-06-22 17:49:27,674.674 INFO    ] 200
[2026-06-22 17:49:27,677.677 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2"}
[2026-06-22 17:49:27,681.681 INFO    ] Please close door 2
[2026-06-22 17:49:27,684.684 INFO    ] Please close door 2
[2026-06-22 17:49:27,687.687 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-22 17:49:27,690.690 INFO    ] 2026-06-22 17:49:27
[2026-06-22 17:49:27,693.693 INFO    ] playing audio file
[2026-06-22 17:49:27,719.719 INFO    ] 2026-06-22 17:49:27
[2026-06-22 17:49:27,724.724 INFO    ] publish_status: order_id=TM06202507260622174806183
[2026-06-22 17:49:27,728.728 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622174806183
[2026-06-22 17:49:27,807.807 INFO    ] [publish_status] Message added to stream with ID: 1782130767744-0
[2026-06-22 17:49:27,810.810 INFO    ] Published to order:TM06202507260622174806183: {'timestamp': '2026-06-22T12:19:27.721503Z', 'server_response': '{"status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}]}, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "rstatus": false, "error": {"data": {}, "tmessage": "In Progress", "umessage": "In Progress", "code": 20001}, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW"}}', 'server_status': 'OrderStatus', 'order_id': 'TM06202507260622174806183'} (ID: 1782130767744-0)
[2026-06-22 17:49:28,397.397 INFO    ] {'server_response': {'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}]}, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}}, 'server_status': 'OrderStatus', 'order_id': 'TM06202507260622174806183'}
[2026-06-22 17:49:28,400.400 INFO    ] 200
[2026-06-22 17:49:28,403.403 INFO    ] {"data":{"server_response":{"status":"false","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"KITKAT Nestle 4 Finger Chocolate 38g"}]},"voiceNote":"Please close door 2","SectionMain":{"Header":"Door Open"},"rstatus":false,"error":{"data":[],"tmessage":"In Progress","umessage":"In Progress","code":20001},"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 2","Note":"Please Close the door after picking up products","UI_Header":"DOOR 2\nIS \nOPEN \nNOW"}},"server_status":"OrderStatus","order_id":"TM06202507260622174806183"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 17:49:28,406.406 INFO    ] {'data': {'server_response': {'status': 'false', 'error': {'data': [], 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}]}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}}, 'server_status': 'OrderStatus', 'order_id': 'TM06202507260622174806183'}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-22 17:49:28,409.409 INFO    ] {'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}]}, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}}
[2026-06-22 17:49:31,483.483 INFO    ] 200
[2026-06-22 17:49:31,485.485 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "KITKAT Nestle 4 Finger Chocolate 38g"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2"}
[2026-06-22 17:49:31,489.489 INFO    ] {'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'KITKAT Nestle 4 Finger Chocolate 38g'}]}, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'error': {'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}}
[2026-06-22 17:49:34,540.540 INFO    ] 200
[2026-06-22 17:49:34,543.543 INFO    ] {"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"}, "rstatus": true, "delay": 100, "status": "True", "SectionMain": {"Header": "Door Closed"}, "voiceNote": "Transaction Completed"}
[2026-06-22 17:49:34,546.546 INFO    ] {'status': 'True', 'delay': 100, 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'rstatus': 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 ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': ''}}
[2026-06-22 17:49:34,549.549 INFO    ] 2026-06-22 17:49:34
[2026-06-22 17:49:34,551.551 INFO    ] Order Completed 
[2026-06-22 17:49:34,554.554 INFO    ] Order Completed 
[2026-06-22 17:49:34,557.557 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-22 17:49:34,560.560 INFO    ] 2026-06-22 17:49:34
[2026-06-22 17:49:34,562.562 INFO    ] playing audio file
[2026-06-22 17:49:34,580.580 INFO    ] 2026-06-22 17:49:34
[2026-06-22 17:49:34,584.584 INFO    ] {'status': 'True', 'delay': 100, 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'rstatus': 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 ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': ''}}
[2026-06-22 17:49:34,587.587 INFO    ] 2026-06-22 17:49:34
[2026-06-22 17:49:37,528.528 INFO    ] 200
[2026-06-22 17:49:37,531.531 INFO    ] {"skus": [{"tray_id": "14", "qty": 2, "mrp": "30", "door_id": "", "name": "Farmely Panchmeva 21gm per peice", "sku_total": 60.0, "image_url": "https://images.tinymart.in/product/4500668-1144.jpg", "unit_price": "30", "skuid": "4500668"}, {"tray_id": "37", "qty": 1, "mrp": "30", "door_id": "", "name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "sku_total": 30.0, "image_url": "https://images.tinymart.in/product/186084-5395.png", "unit_price": "30", "skuid": "186084"}], "anomaly": 0, "rstatus": true, "orderId": "TM06202507260622174806183", "logic": "WBL", "total_amount": 90.0, "res": "True"}
[2026-06-22 17:49:37,534.534 INFO    ] {'orderId': 'TM06202507260622174806183', 'skus': [{'name': 'Farmely Panchmeva 21gm per peice', 'sku_total': 60.0, 'tray_id': '14', 'unit_price': '30', 'qty': 2, 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'mrp': '30', 'door_id': '', 'skuid': '4500668'}, {'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'sku_total': 30.0, 'tray_id': '37', 'unit_price': '30', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'mrp': '30', 'door_id': '', 'skuid': '186084'}], 'total_amount': 90.0, 'rstatus': True, 'anomaly': 0, 'logic': 'WBL', 'res': 'True'}
[2026-06-22 17:49:37,537.537 INFO    ] {'orderId': 'TM06202507260622174806183', 'skus': [{'name': 'Farmely Panchmeva 21gm per peice', 'sku_total': 60.0, 'tray_id': '14', 'unit_price': '30', 'qty': 2, 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'mrp': '30', 'door_id': '', 'skuid': '4500668'}, {'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'sku_total': 30.0, 'tray_id': '37', 'unit_price': '30', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'mrp': '30', 'door_id': '', 'skuid': '186084'}], 'total_amount': 90.0, 'rstatus': True, 'anomaly': 0, 'logic': 'WBL', 'res': 'True'}
[2026-06-22 17:49:37,539.539 INFO    ] 2026-06-22 17:49:37
[2026-06-22 17:49:37,542.542 INFO    ] 2026-06-22 17:49:37
[2026-06-22 17:49:37,544.544 INFO    ] 90
[2026-06-22 17:49:37,547.547 INFO    ] 2026-06-22 17:49:37
[2026-06-22 17:49:37,549.549 INFO    ] 2026-06-22 17:49:37
[2026-06-22 17:49:37,551.551 INFO    ]  Your Bill Amount is 90
[2026-06-22 17:49:37,553.553 INFO    ]  Your Bill Amount is 90
[2026-06-22 17:49:37,556.556 INFO    ] 10d8868d37637f765a92eeedfa25be6d
[2026-06-22 17:49:37,558.558 INFO    ] 2026-06-22 17:49:37
[2026-06-22 17:49:37,561.561 INFO    ] playing audio file
[2026-06-22 17:49:37,577.577 INFO    ] 2026-06-22 17:49:37
[2026-06-22 17:49:37,581.581 INFO    ] 2026-06-22 17:49:37
[2026-06-22 17:49:37,584.584 INFO    ] publish_status: order_id=TM06202507260622174806183
[2026-06-22 17:49:37,587.587 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622174806183
[2026-06-22 17:49:37,657.657 INFO    ] [publish_status] Message added to stream with ID: 1782130777594-0
[2026-06-22 17:49:37,660.660 INFO    ] Published to order:TM06202507260622174806183: {'timestamp': '2026-06-22T12:19:37.582366Z', 'server_response': '{"orderId": "TM06202507260622174806183", "skus": [{"name": "Farmely Panchmeva 21gm per peice", "sku_total": 60.0, "tray_id": "14", "unit_price": "30", "qty": 2, "image_url": "https://images.tinymart.in/product/4500668-1144.jpg", "mrp": "30", "door_id": "", "skuid": "4500668"}, {"name": "KITKAT Nestle 4 Finger Chocolate 38g per peice", "sku_total": 30.0, "tray_id": "37", "unit_price": "30", "qty": 1, "image_url": "https://images.tinymart.in/product/186084-5395.png", "mrp": "30", "door_id": "", "skuid": "186084"}], "total_amount": 90.0, "rstatus": true, "anomaly": 0, "logic": "WBL", "res": "True"}', 'server_status': 'invoiceOrder', 'order_id': 'TM06202507260622174806183'} (ID: 1782130777594-0)
[2026-06-22 17:49:38,358.358 INFO    ] {'server_response': {'orderId': 'TM06202507260622174806183', 'skus': [{'name': 'Farmely Panchmeva 21gm per peice', 'sku_total': 60.0, 'tray_id': '14', 'unit_price': '30', 'qty': 2, 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'mrp': '30', 'door_id': '', 'skuid': '4500668'}, {'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'sku_total': 30.0, 'tray_id': '37', 'unit_price': '30', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'mrp': '30', 'door_id': '', 'skuid': '186084'}], 'total_amount': 90.0, 'rstatus': True, 'anomaly': 0, 'logic': 'WBL', 'res': 'True'}, 'server_status': 'invoiceOrder', 'order_id': 'TM06202507260622174806183'}
[2026-06-22 17:49:38,361.361 INFO    ] 200
[2026-06-22 17:49:38,363.363 INFO    ] {"data":{"server_response":{"orderId":"TM06202507260622174806183","skus":[{"name":"Farmely Panchmeva 21gm per peice","sku_total":60,"tray_id":"14","unit_price":"30","qty":2,"image_url":"https:\/\/images.tinymart.in\/product\/4500668-1144.jpg","mrp":"30","door_id":"","skuid":"4500668"},{"name":"KITKAT Nestle 4 Finger Chocolate 38g per peice","sku_total":30,"tray_id":"37","unit_price":"30","qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/186084-5395.png","mrp":"30","door_id":"","skuid":"186084"}],"total_amount":90,"rstatus":true,"anomaly":0,"logic":"WBL","res":"true"},"server_status":"invoiceOrder","order_id":"TM06202507260622174806183"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 17:49:38,366.366 INFO    ] {'data': {'server_response': {'orderId': 'TM06202507260622174806183', 'skus': [{'skuid': '4500668', 'name': 'Farmely Panchmeva 21gm per peice', 'tray_id': '14', 'unit_price': '30', 'qty': 2, 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'sku_total': 60, 'door_id': '', 'mrp': '30'}, {'skuid': '186084', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'tray_id': '37', 'unit_price': '30', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'sku_total': 30, 'door_id': '', 'mrp': '30'}], 'total_amount': 90, 'rstatus': True, 'anomaly': 0, 'logic': 'WBL', 'res': 'true'}, 'server_status': 'invoiceOrder', 'order_id': 'TM06202507260622174806183'}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-22 17:49:38,369.369 INFO    ] {'data': {'server_response': {'orderId': 'TM06202507260622174806183', 'skus': [{'skuid': '4500668', 'name': 'Farmely Panchmeva 21gm per peice', 'tray_id': '14', 'unit_price': '30', 'qty': 2, 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'sku_total': 60, 'door_id': '', 'mrp': '30'}, {'skuid': '186084', 'name': 'KITKAT Nestle 4 Finger Chocolate 38g per peice', 'tray_id': '37', 'unit_price': '30', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/186084-5395.png', 'sku_total': 30, 'door_id': '', 'mrp': '30'}], 'total_amount': 90, 'rstatus': True, 'anomaly': 0, 'logic': 'WBL', 'res': 'true'}, 'server_status': 'invoiceOrder', 'order_id': 'TM06202507260622174806183'}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-22 17:49:38,371.371 INFO    ] 2026-06-22 17:49:38
[2026-06-22 17:49:40,818.818 INFO    ] 200
[2026-06-22 17:49:40,820.820 INFO    ] {"orders_data_synced": [], "order_items": [], "orders_data": [], "orders_synced": [], "tray_synced": ["TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183", "TM06202507260622174806183"], "order_items_synced": [], "orders": [], "status": true, "tray_sync": []}
[2026-06-22 17:49:40,823.823 INFO    ] 2026-06-22 17:49:40
[2026-06-22 17:49:40,959.959 INFO    ] 200
[2026-06-22 17:49:40,962.962 INFO    ] True
[2026-06-22 17:49:40,965.965 INFO    ] cleanup_start_order_file_after_processing: order_id=TM06202507260622174806183
[2026-06-22 17:49:40,969.969 INFO    ] start order file deleted
[2026-06-22 17:49:40,972.972 INFO    ] Checking for system updates...
[2026-06-22 17:49:41,009.009 INFO    ] 200
[2026-06-22 17:49:41,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:49:41,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:49:41,073.073 INFO    ] No update needed
[2026-06-22 17:49:41,076.076 INFO    ] Checking for camera pi updates...
[2026-06-22 17:49:41,110.110 INFO    ] 200
[2026-06-22 17:49:41,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:49:41,158.158 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:49:41,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:49:41,263.263 INFO    ] No camera update needed
[2026-06-22 17:49:41,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:49:41,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:49:41,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:49:41,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:49:43,322.322 INFO    ] ================================================
[2026-06-22 17:49:43,337.337 INFO    ] Launching Daemon at Mon Jun 22 17:49:43 IST 2026
[2026-06-22 17:49:43,348.348 INFO    ] ================================================
[2026-06-22 17:49:43,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:49:43
[2026-06-22 17:49:44,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:49:44,792.792 INFO    ] Initializing speech engine...
[2026-06-22 17:49:44,801.801 INFO    ] 2026-06-22 17:49:44
[2026-06-22 17:49:45,069.069 INFO    ] 2026-06-22 17:49:45
[2026-06-22 17:49:45,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:49:45,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:49:45,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:49:45,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:49:45,566.566 INFO    ] time= 22/06/2026 17:49:45
[2026-06-22 17:49:45,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:49:45,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:49:45,769.769 INFO    ] No existing commands found in stream
[2026-06-22 17:49:50,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:49:50,794.794 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-22 17:49:52,465.465 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:49:52,468.468 INFO    ] Checking for system updates...
[2026-06-22 17:49:52,506.506 INFO    ] 200
[2026-06-22 17:49:52,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:49:52,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:49:52,573.573 INFO    ] No update needed
[2026-06-22 17:49:52,576.576 INFO    ] Checking for camera pi updates...
[2026-06-22 17:49:52,615.615 INFO    ] 200
[2026-06-22 17:49:52,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:49:52,660.660 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:49:52,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:49:52,750.750 INFO    ] No camera update needed
[2026-06-22 17:49:52,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:49:52,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:49:52,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:49:52,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:49:54,809.809 INFO    ] ================================================
[2026-06-22 17:49:54,824.824 INFO    ] Launching Daemon at Mon Jun 22 17:49:54 IST 2026
[2026-06-22 17:49:54,835.835 INFO    ] ================================================
[2026-06-22 17:49:55,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:49:55
[2026-06-22 17:49:55,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:49:56,179.179 INFO    ] Initializing speech engine...
[2026-06-22 17:49:56,188.188 INFO    ] 2026-06-22 17:49:56
[2026-06-22 17:49:56,435.435 INFO    ] 2026-06-22 17:49:56
[2026-06-22 17:49:56,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:49:56,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:49:56,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:49:56,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:49:56,935.935 INFO    ] time= 22/06/2026 17:49:56
[2026-06-22 17:49:56,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:49:56,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:49:57,141.141 INFO    ] No existing commands found in stream
[2026-06-22 17:50:02,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:50:02,160.160 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-22 17:50:08,291.291 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:50:08,293.293 INFO    ] Checking for system updates...
[2026-06-22 17:50:08,330.330 INFO    ] 200
[2026-06-22 17:50:08,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:50:08,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:50:08,390.390 INFO    ] No update needed
[2026-06-22 17:50:08,393.393 INFO    ] Checking for camera pi updates...
[2026-06-22 17:50:08,427.427 INFO    ] 200
[2026-06-22 17:50:08,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:50:08,476.476 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:50:08,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:50:08,569.569 INFO    ] No camera update needed
[2026-06-22 17:50:08,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:50:08,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:50:08,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:50:08,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:50:10,627.627 INFO    ] ================================================
[2026-06-22 17:50:10,642.642 INFO    ] Launching Daemon at Mon Jun 22 17:50:10 IST 2026
[2026-06-22 17:50:10,653.653 INFO    ] ================================================
[2026-06-22 17:50:11,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:50:11
[2026-06-22 17:50:11,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:50:12,070.070 INFO    ] Initializing speech engine...
[2026-06-22 17:50:12,085.085 INFO    ] 2026-06-22 17:50:12
[2026-06-22 17:50:12,367.367 INFO    ] 2026-06-22 17:50:12
[2026-06-22 17:50:12,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:50:12,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:50:12,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:50:12,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:50:12,784.784 INFO    ] time= 22/06/2026 17:50:12
[2026-06-22 17:50:12,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:50:12,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:50:12,943.943 INFO    ] No existing commands found in stream
[2026-06-22 17:50:17,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:50:17,970.970 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-22 17:50:19,825.825 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:50:19,828.828 INFO    ] Checking for system updates...
[2026-06-22 17:50:19,868.868 INFO    ] 200
[2026-06-22 17:50:19,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:50:19,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:50:19,928.928 INFO    ] No update needed
[2026-06-22 17:50:19,930.930 INFO    ] Checking for camera pi updates...
[2026-06-22 17:50:19,965.965 INFO    ] 200
[2026-06-22 17:50:19,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:50:20,011.011 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:50:20,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:50:20,106.106 INFO    ] No camera update needed
[2026-06-22 17:50:20,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:50:20,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:50:20,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:50:20,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:50:22,165.165 INFO    ] ================================================
[2026-06-22 17:50:22,180.180 INFO    ] Launching Daemon at Mon Jun 22 17:50:22 IST 2026
[2026-06-22 17:50:22,194.194 INFO    ] ================================================
[2026-06-22 17:50:22,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:50:22
[2026-06-22 17:50:23,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:50:23,634.634 INFO    ] Initializing speech engine...
[2026-06-22 17:50:23,644.644 INFO    ] 2026-06-22 17:50:23
[2026-06-22 17:50:23,908.908 INFO    ] 2026-06-22 17:50:23
[2026-06-22 17:50:23,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:50:24,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:50:24,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:50:24,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:50:24,398.398 INFO    ] time= 22/06/2026 17:50:24
[2026-06-22 17:50:24,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:50:24,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:50:24,607.607 INFO    ] No existing commands found in stream
[2026-06-22 17:50:29,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:50:29,626.626 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-22 17:50:33,599.599 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:50:33,602.602 INFO    ] Checking for system updates...
[2026-06-22 17:50:33,638.638 INFO    ] 200
[2026-06-22 17:50:33,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:50:33,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:50:33,702.702 INFO    ] No update needed
[2026-06-22 17:50:33,705.705 INFO    ] Checking for camera pi updates...
[2026-06-22 17:50:33,739.739 INFO    ] 200
[2026-06-22 17:50:33,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:50:33,787.787 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:50:33,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:50:33,876.876 INFO    ] No camera update needed
[2026-06-22 17:50:33,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:50:33,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:50:33,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:50:33,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:50:35,933.933 INFO    ] ================================================
[2026-06-22 17:50:35,948.948 INFO    ] Launching Daemon at Mon Jun 22 17:50:35 IST 2026
[2026-06-22 17:50:35,960.960 INFO    ] ================================================
[2026-06-22 17:50:36,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:50:36
[2026-06-22 17:50:37,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:50:37,297.297 INFO    ] Initializing speech engine...
[2026-06-22 17:50:37,306.306 INFO    ] 2026-06-22 17:50:37
[2026-06-22 17:50:37,599.599 INFO    ] 2026-06-22 17:50:37
[2026-06-22 17:50:37,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:50:37,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:50:37,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:50:38,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:50:38,014.014 INFO    ] time= 22/06/2026 17:50:38
[2026-06-22 17:50:38,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:50:38,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:50:38,168.168 INFO    ] No existing commands found in stream
[2026-06-22 17:50:43,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:50:43,197.197 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-22 17:50:45,360.360 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:50:45,362.362 INFO    ] Checking for system updates...
[2026-06-22 17:50:45,384.384 INFO    ] 200
[2026-06-22 17:50:45,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:50:45,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:50:45,417.417 INFO    ] No update needed
[2026-06-22 17:50:45,418.418 INFO    ] Checking for camera pi updates...
[2026-06-22 17:50:45,445.445 INFO    ] 200
[2026-06-22 17:50:45,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:50:45,488.488 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:50:45,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:50:45,573.573 INFO    ] No camera update needed
[2026-06-22 17:50:45,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:50:45,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:50:45,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:50:45,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:50:47,630.630 INFO    ] ================================================
[2026-06-22 17:50:47,645.645 INFO    ] Launching Daemon at Mon Jun 22 17:50:47 IST 2026
[2026-06-22 17:50:47,656.656 INFO    ] ================================================
[2026-06-22 17:50:48,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:50:48
[2026-06-22 17:50:48,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:50:49,167.167 INFO    ] Initializing speech engine...
[2026-06-22 17:50:49,176.176 INFO    ] 2026-06-22 17:50:49
[2026-06-22 17:50:49,464.464 INFO    ] 2026-06-22 17:50:49
[2026-06-22 17:50:49,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:50:49,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:50:49,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:50:49,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:50:50,008.008 INFO    ] time= 22/06/2026 17:50:50
[2026-06-22 17:50:50,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:50:50,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:50:50,184.184 INFO    ] No existing commands found in stream
[2026-06-22 17:50:55,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:50:55,218.218 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-22 17:50:59,341.341 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:50:59,342.342 INFO    ] Checking for system updates...
[2026-06-22 17:50:59,373.373 INFO    ] 200
[2026-06-22 17:50:59,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:50:59,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:50:59,435.435 INFO    ] No update needed
[2026-06-22 17:50:59,438.438 INFO    ] Checking for camera pi updates...
[2026-06-22 17:50:59,474.474 INFO    ] 200
[2026-06-22 17:50:59,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:50:59,530.530 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:50:59,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:50:59,590.590 INFO    ] No camera update needed
[2026-06-22 17:50:59,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:50:59,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:50:59,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:50:59,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:51:01,658.658 INFO    ] ================================================
[2026-06-22 17:51:01,683.683 INFO    ] Launching Daemon at Mon Jun 22 17:51:01 IST 2026
[2026-06-22 17:51:01,700.700 INFO    ] ================================================
[2026-06-22 17:51:02,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:51:02
[2026-06-22 17:51:03,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:51:03,298.298 INFO    ] Initializing speech engine...
[2026-06-22 17:51:03,302.302 INFO    ] 2026-06-22 17:51:03
[2026-06-22 17:51:03,579.579 INFO    ] 2026-06-22 17:51:03
[2026-06-22 17:51:03,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:51:03,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:51:03,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:51:04,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:51:04,043.043 INFO    ] time= 22/06/2026 17:51:04
[2026-06-22 17:51:04,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:51:04,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:51:04,277.277 INFO    ] No existing commands found in stream
[2026-06-22 17:51:09,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:51:09,302.302 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-22 17:51:13,467.467 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:51:13,469.469 INFO    ] Checking for system updates...
[2026-06-22 17:51:13,509.509 INFO    ] 200
[2026-06-22 17:51:13,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:51:13,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:51:13,568.568 INFO    ] No update needed
[2026-06-22 17:51:13,570.570 INFO    ] Checking for camera pi updates...
[2026-06-22 17:51:13,603.603 INFO    ] 200
[2026-06-22 17:51:13,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:51:13,647.647 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:51:13,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:51:13,867.867 INFO    ] No camera update needed
[2026-06-22 17:51:13,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:51:13,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:51:13,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:51:13,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:51:15,923.923 INFO    ] ================================================
[2026-06-22 17:51:15,938.938 INFO    ] Launching Daemon at Mon Jun 22 17:51:15 IST 2026
[2026-06-22 17:51:15,949.949 INFO    ] ================================================
[2026-06-22 17:51:16,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:51:16
[2026-06-22 17:51:17,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:51:17,396.396 INFO    ] Initializing speech engine...
[2026-06-22 17:51:17,402.402 INFO    ] 2026-06-22 17:51:17
[2026-06-22 17:51:17,696.696 INFO    ] 2026-06-22 17:51:17
[2026-06-22 17:51:17,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:51:17,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:51:18,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:51:18,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:51:18,250.250 INFO    ] time= 22/06/2026 17:51:18
[2026-06-22 17:51:18,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:51:18,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:51:18,454.454 INFO    ] No existing commands found in stream
[2026-06-22 17:51:23,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:51:23,476.476 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-22 17:51:26,400.400 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:51:26,403.403 INFO    ] Checking for system updates...
[2026-06-22 17:51:26,446.446 INFO    ] 200
[2026-06-22 17:51:26,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:51:26,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:51:26,512.512 INFO    ] No update needed
[2026-06-22 17:51:26,515.515 INFO    ] Checking for camera pi updates...
[2026-06-22 17:51:26,554.554 INFO    ] 200
[2026-06-22 17:51:26,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:51:26,603.603 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:51:26,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:51:26,699.699 INFO    ] No camera update needed
[2026-06-22 17:51:26,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:51:26,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:51:26,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:51:26,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:51:28,764.764 INFO    ] ================================================
[2026-06-22 17:51:28,779.779 INFO    ] Launching Daemon at Mon Jun 22 17:51:28 IST 2026
[2026-06-22 17:51:28,790.790 INFO    ] ================================================
[2026-06-22 17:51:29,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:51:29
[2026-06-22 17:51:30,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:51:30,295.295 INFO    ] Initializing speech engine...
[2026-06-22 17:51:30,302.302 INFO    ] 2026-06-22 17:51:30
[2026-06-22 17:51:30,569.569 INFO    ] 2026-06-22 17:51:30
[2026-06-22 17:51:30,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:51:30,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:51:30,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:51:30,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:51:30,943.943 INFO    ] time= 22/06/2026 17:51:30
[2026-06-22 17:51:30,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:51:30,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:51:31,134.134 INFO    ] No existing commands found in stream
[2026-06-22 17:51:36,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:51:36,152.152 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-22 17:51:37,025.025 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:51:37,028.028 INFO    ] Checking for system updates...
[2026-06-22 17:51:37,067.067 INFO    ] 200
[2026-06-22 17:51:37,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:51:37,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:51:37,127.127 INFO    ] No update needed
[2026-06-22 17:51:37,130.130 INFO    ] Checking for camera pi updates...
[2026-06-22 17:51:37,173.173 INFO    ] 200
[2026-06-22 17:51:37,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:51:37,218.218 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:51:37,298.298 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:51:37,301.301 INFO    ] No camera update needed
[2026-06-22 17:51:37,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:51:37,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:51:37,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:51:37,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:51:39,360.360 INFO    ] ================================================
[2026-06-22 17:51:39,375.375 INFO    ] Launching Daemon at Mon Jun 22 17:51:39 IST 2026
[2026-06-22 17:51:39,386.386 INFO    ] ================================================
[2026-06-22 17:51:39,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:51:39
[2026-06-22 17:51:40,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:51:40,832.832 INFO    ] Initializing speech engine...
[2026-06-22 17:51:40,840.840 INFO    ] 2026-06-22 17:51:40
[2026-06-22 17:51:41,138.138 INFO    ] 2026-06-22 17:51:41
[2026-06-22 17:51:41,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:51:41,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:51:41,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:51:41,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:51:41,523.523 INFO    ] time= 22/06/2026 17:51:41
[2026-06-22 17:51:41,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:51:41,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:51:41,650.650 INFO    ] No existing commands found in stream
[2026-06-22 17:51:46,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:51:46,666.666 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-22 17:51:48,387.387 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:51:48,389.389 INFO    ] Checking for system updates...
[2026-06-22 17:51:48,409.409 INFO    ] 200
[2026-06-22 17:51:48,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:51:48,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:51:48,442.442 INFO    ] No update needed
[2026-06-22 17:51:48,444.444 INFO    ] Checking for camera pi updates...
[2026-06-22 17:51:48,465.465 INFO    ] 200
[2026-06-22 17:51:48,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:51:48,490.490 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:51:48,569.569 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:51:48,571.571 INFO    ] No camera update needed
[2026-06-22 17:51:48,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:51:48,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:51:48,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:51:48,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:51:50,628.628 INFO    ] ================================================
[2026-06-22 17:51:50,643.643 INFO    ] Launching Daemon at Mon Jun 22 17:51:50 IST 2026
[2026-06-22 17:51:50,655.655 INFO    ] ================================================
[2026-06-22 17:51:51,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:51:51
[2026-06-22 17:51:51,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:51:52,069.069 INFO    ] Initializing speech engine...
[2026-06-22 17:51:52,082.082 INFO    ] 2026-06-22 17:51:52
[2026-06-22 17:51:52,349.349 INFO    ] 2026-06-22 17:51:52
[2026-06-22 17:51:52,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:51:52,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:51:52,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:51:52,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:51:52,854.854 INFO    ] time= 22/06/2026 17:51:52
[2026-06-22 17:51:52,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:51:52,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:51:53,072.072 INFO    ] No existing commands found in stream
[2026-06-22 17:51:58,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:51:58,089.089 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-22 17:52:02,413.413 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:52:02,416.416 INFO    ] Checking for system updates...
[2026-06-22 17:52:02,459.459 INFO    ] 200
[2026-06-22 17:52:02,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:52:02,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:52:02,530.530 INFO    ] No update needed
[2026-06-22 17:52:02,533.533 INFO    ] Checking for camera pi updates...
[2026-06-22 17:52:02,575.575 INFO    ] 200
[2026-06-22 17:52:02,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:52:02,623.623 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:52:02,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:52:02,692.692 INFO    ] No camera update needed
[2026-06-22 17:52:02,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:52:02,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:52:02,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:52:02,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:52:04,757.757 INFO    ] ================================================
[2026-06-22 17:52:04,773.773 INFO    ] Launching Daemon at Mon Jun 22 17:52:04 IST 2026
[2026-06-22 17:52:04,784.784 INFO    ] ================================================
[2026-06-22 17:52:05,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:52:05
[2026-06-22 17:52:06,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:52:06,411.411 INFO    ] Initializing speech engine...
[2026-06-22 17:52:06,417.417 INFO    ] 2026-06-22 17:52:06
[2026-06-22 17:52:06,691.691 INFO    ] 2026-06-22 17:52:06
[2026-06-22 17:52:06,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:52:06,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:52:06,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:52:07,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:52:07,187.187 INFO    ] time= 22/06/2026 17:52:07
[2026-06-22 17:52:07,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:52:07,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:52:07,398.398 INFO    ] No existing commands found in stream
[2026-06-22 17:52:12,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:52:12,428.428 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-22 17:52:15,333.333 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:52:15,335.335 INFO    ] Checking for system updates...
[2026-06-22 17:52:15,371.371 INFO    ] 200
[2026-06-22 17:52:15,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:52:15,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:52:15,430.430 INFO    ] No update needed
[2026-06-22 17:52:15,432.432 INFO    ] Checking for camera pi updates...
[2026-06-22 17:52:15,466.466 INFO    ] 200
[2026-06-22 17:52:15,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:52:15,512.512 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:52:15,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:52:15,622.622 INFO    ] No camera update needed
[2026-06-22 17:52:15,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:52:15,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:52:15,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:52:15,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:52:17,677.677 INFO    ] ================================================
[2026-06-22 17:52:17,692.692 INFO    ] Launching Daemon at Mon Jun 22 17:52:17 IST 2026
[2026-06-22 17:52:17,702.702 INFO    ] ================================================
[2026-06-22 17:52:18,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:52:18
[2026-06-22 17:52:18,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:52:19,061.061 INFO    ] Initializing speech engine...
[2026-06-22 17:52:19,067.067 INFO    ] 2026-06-22 17:52:19
[2026-06-22 17:52:19,326.326 INFO    ] 2026-06-22 17:52:19
[2026-06-22 17:52:19,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:52:19,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:52:19,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:52:19,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:52:19,888.888 INFO    ] time= 22/06/2026 17:52:19
[2026-06-22 17:52:19,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:52:19,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:52:20,060.060 INFO    ] No existing commands found in stream
[2026-06-22 17:52:25,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:52:25,088.088 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-22 17:52:27,407.407 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:52:27,409.409 INFO    ] Checking for system updates...
[2026-06-22 17:52:27,429.429 INFO    ] 200
[2026-06-22 17:52:27,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:52:27,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:52:27,490.490 INFO    ] No update needed
[2026-06-22 17:52:27,493.493 INFO    ] Checking for camera pi updates...
[2026-06-22 17:52:27,527.527 INFO    ] 200
[2026-06-22 17:52:27,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:52:27,574.574 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:52:27,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:52:27,677.677 INFO    ] No camera update needed
[2026-06-22 17:52:27,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:52:27,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:52:27,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:52:27,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:52:29,735.735 INFO    ] ================================================
[2026-06-22 17:52:29,750.750 INFO    ] Launching Daemon at Mon Jun 22 17:52:29 IST 2026
[2026-06-22 17:52:29,760.760 INFO    ] ================================================
[2026-06-22 17:52:30,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:52:30
[2026-06-22 17:52:30,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:52:31,214.214 INFO    ] Initializing speech engine...
[2026-06-22 17:52:31,223.223 INFO    ] 2026-06-22 17:52:31
[2026-06-22 17:52:31,490.490 INFO    ] 2026-06-22 17:52:31
[2026-06-22 17:52:31,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:52:31,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:52:31,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:52:32,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:52:32,118.118 INFO    ] time= 22/06/2026 17:52:32
[2026-06-22 17:52:32,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:52:32,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:52:32,264.264 INFO    ] No existing commands found in stream
[2026-06-22 17:52:37,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:52:37,298.298 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-22 17:52:40,214.214 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:52:40,217.217 INFO    ] Checking for system updates...
[2026-06-22 17:52:40,253.253 INFO    ] 200
[2026-06-22 17:52:40,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:52:40,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:52:40,312.312 INFO    ] No update needed
[2026-06-22 17:52:40,314.314 INFO    ] Checking for camera pi updates...
[2026-06-22 17:52:40,347.347 INFO    ] 200
[2026-06-22 17:52:40,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:52:40,390.390 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:52:40,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:52:40,476.476 INFO    ] No camera update needed
[2026-06-22 17:52:40,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:52:40,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:52:40,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:52:40,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:52:42,532.532 INFO    ] ================================================
[2026-06-22 17:52:42,548.548 INFO    ] Launching Daemon at Mon Jun 22 17:52:42 IST 2026
[2026-06-22 17:52:42,558.558 INFO    ] ================================================
[2026-06-22 17:52:43,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:52:43
[2026-06-22 17:52:43,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:52:44,044.044 INFO    ] Initializing speech engine...
[2026-06-22 17:52:44,058.058 INFO    ] 2026-06-22 17:52:44
[2026-06-22 17:52:44,344.344 INFO    ] 2026-06-22 17:52:44
[2026-06-22 17:52:44,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:52:44,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:52:44,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:52:44,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:52:44,737.737 INFO    ] time= 22/06/2026 17:52:44
[2026-06-22 17:52:44,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:52:44,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:52:44,926.926 INFO    ] No existing commands found in stream
[2026-06-22 17:52:49,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:52:49,940.940 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-22 17:52:52,426.426 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:52:52,427.427 INFO    ] Checking for system updates...
[2026-06-22 17:52:52,448.448 INFO    ] 200
[2026-06-22 17:52:52,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:52:52,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:52:52,501.501 INFO    ] No update needed
[2026-06-22 17:52:52,503.503 INFO    ] Checking for camera pi updates...
[2026-06-22 17:52:52,538.538 INFO    ] 200
[2026-06-22 17:52:52,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:52:52,582.582 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:52:52,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:52:52,669.669 INFO    ] No camera update needed
[2026-06-22 17:52:52,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:52:52,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:52:52,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:52:52,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:52:54,725.725 INFO    ] ================================================
[2026-06-22 17:52:54,740.740 INFO    ] Launching Daemon at Mon Jun 22 17:52:54 IST 2026
[2026-06-22 17:52:54,751.751 INFO    ] ================================================
[2026-06-22 17:52:55,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:52:55
[2026-06-22 17:52:56,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:52:56,330.330 INFO    ] Initializing speech engine...
[2026-06-22 17:52:56,337.337 INFO    ] 2026-06-22 17:52:56
[2026-06-22 17:52:56,601.601 INFO    ] 2026-06-22 17:52:56
[2026-06-22 17:52:56,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:52:56,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:52:56,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:52:57,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:52:57,095.095 INFO    ] time= 22/06/2026 17:52:57
[2026-06-22 17:52:57,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:52:57,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:52:57,296.296 INFO    ] No existing commands found in stream
[2026-06-22 17:53:02,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:53:02,310.310 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-22 17:53:06,096.096 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:53:06,099.099 INFO    ] Checking for system updates...
[2026-06-22 17:53:06,149.149 INFO    ] 200
[2026-06-22 17:53:06,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:53:06,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:53:06,212.212 INFO    ] No update needed
[2026-06-22 17:53:06,215.215 INFO    ] Checking for camera pi updates...
[2026-06-22 17:53:06,250.250 INFO    ] 200
[2026-06-22 17:53:06,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:53:06,293.293 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:53:06,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:53:06,389.389 INFO    ] No camera update needed
[2026-06-22 17:53:06,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:53:06,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:53:06,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:53:06,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:53:08,447.447 INFO    ] ================================================
[2026-06-22 17:53:08,462.462 INFO    ] Launching Daemon at Mon Jun 22 17:53:08 IST 2026
[2026-06-22 17:53:08,473.473 INFO    ] ================================================
[2026-06-22 17:53:09,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:53:09
[2026-06-22 17:53:09,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:53:09,834.834 INFO    ] Initializing speech engine...
[2026-06-22 17:53:09,840.840 INFO    ] 2026-06-22 17:53:09
[2026-06-22 17:53:10,099.099 INFO    ] 2026-06-22 17:53:10
[2026-06-22 17:53:10,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:53:10,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:53:10,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:53:10,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:53:10,588.588 INFO    ] time= 22/06/2026 17:53:10
[2026-06-22 17:53:10,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:53:10,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:53:10,741.741 INFO    ] No existing commands found in stream
[2026-06-22 17:53:15,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:53:15,755.755 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-22 17:53:16,744.744 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:53:16,747.747 INFO    ] Checking for system updates...
[2026-06-22 17:53:16,783.783 INFO    ] 200
[2026-06-22 17:53:16,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:53:16,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:53:16,847.847 INFO    ] No update needed
[2026-06-22 17:53:16,849.849 INFO    ] Checking for camera pi updates...
[2026-06-22 17:53:16,883.883 INFO    ] 200
[2026-06-22 17:53:16,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:53:16,926.926 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:53:17,104.104 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:53:17,106.106 INFO    ] No camera update needed
[2026-06-22 17:53:17,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:53:17,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:53:17,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:53:17,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:53:19,162.162 INFO    ] ================================================
[2026-06-22 17:53:19,177.177 INFO    ] Launching Daemon at Mon Jun 22 17:53:19 IST 2026
[2026-06-22 17:53:19,188.188 INFO    ] ================================================
[2026-06-22 17:53:19,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:53:19
[2026-06-22 17:53:20,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:53:20,700.700 INFO    ] Initializing speech engine...
[2026-06-22 17:53:20,713.713 INFO    ] 2026-06-22 17:53:20
[2026-06-22 17:53:21,021.021 INFO    ] 2026-06-22 17:53:20
[2026-06-22 17:53:21,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:53:21,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:53:21,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:53:21,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:53:21,530.530 INFO    ] time= 22/06/2026 17:53:21
[2026-06-22 17:53:21,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:53:21,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:53:21,700.700 INFO    ] No existing commands found in stream
[2026-06-22 17:53:26,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:53:26,735.735 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-22 17:53:30,128.128 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:53:30,132.132 INFO    ] Checking for system updates...
[2026-06-22 17:53:30,179.179 INFO    ] 200
[2026-06-22 17:53:30,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:53:30,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:53:30,249.249 INFO    ] No update needed
[2026-06-22 17:53:30,252.252 INFO    ] Checking for camera pi updates...
[2026-06-22 17:53:30,291.291 INFO    ] 200
[2026-06-22 17:53:30,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:53:30,345.345 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:53:30,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:53:30,436.436 INFO    ] No camera update needed
[2026-06-22 17:53:30,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:53:30,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:53:30,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:53:30,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:53:32,500.500 INFO    ] ================================================
[2026-06-22 17:53:32,516.516 INFO    ] Launching Daemon at Mon Jun 22 17:53:32 IST 2026
[2026-06-22 17:53:32,528.528 INFO    ] ================================================
[2026-06-22 17:53:33,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:53:33
[2026-06-22 17:53:33,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:53:33,972.972 INFO    ] Initializing speech engine...
[2026-06-22 17:53:33,982.982 INFO    ] 2026-06-22 17:53:33
[2026-06-22 17:53:34,228.228 INFO    ] 2026-06-22 17:53:34
[2026-06-22 17:53:34,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:53:34,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:53:34,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:53:34,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:53:34,593.593 INFO    ] time= 22/06/2026 17:53:34
[2026-06-22 17:53:34,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:53:34,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:53:34,781.781 INFO    ] No existing commands found in stream
[2026-06-22 17:53:39,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:53:39,803.803 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-22 17:53:41,101.101 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:53:41,104.104 INFO    ] Checking for system updates...
[2026-06-22 17:53:41,141.141 INFO    ] 200
[2026-06-22 17:53:41,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:53:41,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:53:41,202.202 INFO    ] No update needed
[2026-06-22 17:53:41,205.205 INFO    ] Checking for camera pi updates...
[2026-06-22 17:53:41,240.240 INFO    ] 200
[2026-06-22 17:53:41,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:53:41,285.285 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:53:41,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:53:41,351.351 INFO    ] No camera update needed
[2026-06-22 17:53:41,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:53:41,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:53:41,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:53:41,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:53:43,408.408 INFO    ] ================================================
[2026-06-22 17:53:43,425.425 INFO    ] Launching Daemon at Mon Jun 22 17:53:43 IST 2026
[2026-06-22 17:53:43,436.436 INFO    ] ================================================
[2026-06-22 17:53:44,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:53:44
[2026-06-22 17:53:44,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:53:44,924.924 INFO    ] Initializing speech engine...
[2026-06-22 17:53:44,935.935 INFO    ] 2026-06-22 17:53:44
[2026-06-22 17:53:45,193.193 INFO    ] 2026-06-22 17:53:45
[2026-06-22 17:53:45,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:53:45,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:53:45,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:53:45,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:53:45,595.595 INFO    ] time= 22/06/2026 17:53:45
[2026-06-22 17:53:45,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:53:45,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:53:45,764.764 INFO    ] No existing commands found in stream
[2026-06-22 17:53:50,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:53:50,792.792 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-22 17:53:52,103.103 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:53:52,106.106 INFO    ] Checking for system updates...
[2026-06-22 17:53:52,142.142 INFO    ] 200
[2026-06-22 17:53:52,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:53:52,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:53:52,205.205 INFO    ] No update needed
[2026-06-22 17:53:52,207.207 INFO    ] Checking for camera pi updates...
[2026-06-22 17:53:52,241.241 INFO    ] 200
[2026-06-22 17:53:52,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:53:52,285.285 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:53:52,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:53:52,368.368 INFO    ] No camera update needed
[2026-06-22 17:53:52,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:53:52,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:53:52,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:53:52,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:53:54,422.422 INFO    ] ================================================
[2026-06-22 17:53:54,437.437 INFO    ] Launching Daemon at Mon Jun 22 17:53:54 IST 2026
[2026-06-22 17:53:54,448.448 INFO    ] ================================================
[2026-06-22 17:53:55,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:53:55
[2026-06-22 17:53:55,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:53:55,786.786 INFO    ] Initializing speech engine...
[2026-06-22 17:53:55,795.795 INFO    ] 2026-06-22 17:53:55
[2026-06-22 17:53:56,041.041 INFO    ] 2026-06-22 17:53:56
[2026-06-22 17:53:56,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:53:56,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:53:56,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:53:56,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:53:56,594.594 INFO    ] time= 22/06/2026 17:53:56
[2026-06-22 17:53:56,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:53:56,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:53:56,750.750 INFO    ] No existing commands found in stream
[2026-06-22 17:54:01,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:54:01,768.768 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-22 17:54:02,779.779 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:54:02,783.783 INFO    ] Checking for system updates...
[2026-06-22 17:54:02,825.825 INFO    ] 200
[2026-06-22 17:54:02,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:54:02,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:54:02,883.883 INFO    ] No update needed
[2026-06-22 17:54:02,886.886 INFO    ] Checking for camera pi updates...
[2026-06-22 17:54:02,922.922 INFO    ] 200
[2026-06-22 17:54:02,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:54:02,982.982 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:54:03,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:54:03,036.036 INFO    ] No camera update needed
[2026-06-22 17:54:03,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:54:03,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:54:03,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:54:03,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:54:05,091.091 INFO    ] ================================================
[2026-06-22 17:54:05,106.106 INFO    ] Launching Daemon at Mon Jun 22 17:54:05 IST 2026
[2026-06-22 17:54:05,117.117 INFO    ] ================================================
[2026-06-22 17:54:05,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:54:05
[2026-06-22 17:54:06,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:54:06,609.609 INFO    ] Initializing speech engine...
[2026-06-22 17:54:06,618.618 INFO    ] 2026-06-22 17:54:06
[2026-06-22 17:54:06,863.863 INFO    ] 2026-06-22 17:54:06
[2026-06-22 17:54:06,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:54:07,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:54:07,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:54:07,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:54:07,360.360 INFO    ] time= 22/06/2026 17:54:07
[2026-06-22 17:54:07,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:54:07,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:54:07,572.572 INFO    ] No existing commands found in stream
[2026-06-22 17:54:12,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:54:12,588.588 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-22 17:54:16,727.727 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:54:16,730.730 INFO    ] Checking for system updates...
[2026-06-22 17:54:16,767.767 INFO    ] 200
[2026-06-22 17:54:16,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:54:16,823.823 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:54:16,825.825 INFO    ] No update needed
[2026-06-22 17:54:16,827.827 INFO    ] Checking for camera pi updates...
[2026-06-22 17:54:16,864.864 INFO    ] 200
[2026-06-22 17:54:16,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:54:16,908.908 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:54:16,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:54:16,973.973 INFO    ] No camera update needed
[2026-06-22 17:54:16,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:54:16,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:54:16,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:54:16,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:54:19,029.029 INFO    ] ================================================
[2026-06-22 17:54:19,044.044 INFO    ] Launching Daemon at Mon Jun 22 17:54:19 IST 2026
[2026-06-22 17:54:19,055.055 INFO    ] ================================================
[2026-06-22 17:54:19,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:54:19
[2026-06-22 17:54:20,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:54:20,398.398 INFO    ] Initializing speech engine...
[2026-06-22 17:54:20,404.404 INFO    ] 2026-06-22 17:54:20
[2026-06-22 17:54:20,661.661 INFO    ] 2026-06-22 17:54:20
[2026-06-22 17:54:20,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:54:20,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:54:20,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:54:21,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:54:21,212.212 INFO    ] time= 22/06/2026 17:54:21
[2026-06-22 17:54:21,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:54:21,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:54:21,367.367 INFO    ] No existing commands found in stream
[2026-06-22 17:54:26,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:54:26,386.386 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-22 17:54:27,803.803 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:54:27,805.805 INFO    ] Checking for system updates...
[2026-06-22 17:54:27,826.826 INFO    ] 200
[2026-06-22 17:54:27,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:54:27,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:54:27,864.864 INFO    ] No update needed
[2026-06-22 17:54:27,865.865 INFO    ] Checking for camera pi updates...
[2026-06-22 17:54:27,885.885 INFO    ] 200
[2026-06-22 17:54:27,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:54:27,917.917 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:54:28,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:54:28,025.025 INFO    ] No camera update needed
[2026-06-22 17:54:28,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:54:28,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:54:28,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:54:28,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:54:30,082.082 INFO    ] ================================================
[2026-06-22 17:54:30,097.097 INFO    ] Launching Daemon at Mon Jun 22 17:54:30 IST 2026
[2026-06-22 17:54:30,108.108 INFO    ] ================================================
[2026-06-22 17:54:30,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:54:30
[2026-06-22 17:54:31,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:54:31,491.491 INFO    ] Initializing speech engine...
[2026-06-22 17:54:31,512.512 INFO    ] 2026-06-22 17:54:31
[2026-06-22 17:54:31,789.789 INFO    ] 2026-06-22 17:54:31
[2026-06-22 17:54:31,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:54:32,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:54:32,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:54:32,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:54:32,298.298 INFO    ] time= 22/06/2026 17:54:32
[2026-06-22 17:54:32,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:54:32,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:54:32,542.542 INFO    ] No existing commands found in stream
[2026-06-22 17:54:37,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:54:37,563.563 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-22 17:54:39,504.504 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:54:39,506.506 INFO    ] Checking for system updates...
[2026-06-22 17:54:39,545.545 INFO    ] 200
[2026-06-22 17:54:39,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:54:39,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:54:39,602.602 INFO    ] No update needed
[2026-06-22 17:54:39,611.611 INFO    ] Checking for camera pi updates...
[2026-06-22 17:54:39,648.648 INFO    ] 200
[2026-06-22 17:54:39,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:54:39,692.692 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:54:39,773.773 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:54:39,776.776 INFO    ] No camera update needed
[2026-06-22 17:54:39,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:54:39,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:54:39,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:54:39,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:54:41,832.832 INFO    ] ================================================
[2026-06-22 17:54:41,847.847 INFO    ] Launching Daemon at Mon Jun 22 17:54:41 IST 2026
[2026-06-22 17:54:41,857.857 INFO    ] ================================================
[2026-06-22 17:54:42,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:54:42
[2026-06-22 17:54:43,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:54:43,353.353 INFO    ] Initializing speech engine...
[2026-06-22 17:54:43,367.367 INFO    ] 2026-06-22 17:54:43
[2026-06-22 17:54:43,649.649 INFO    ] 2026-06-22 17:54:43
[2026-06-22 17:54:43,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:54:43,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:54:43,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:54:44,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:54:44,178.178 INFO    ] time= 22/06/2026 17:54:44
[2026-06-22 17:54:44,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:54:44,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:54:44,329.329 INFO    ] No existing commands found in stream
[2026-06-22 17:54:49,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:54:49,350.350 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-22 17:54:53,640.640 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:54:53,641.641 INFO    ] Checking for system updates...
[2026-06-22 17:54:53,662.662 INFO    ] 200
[2026-06-22 17:54:53,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:54:53,694.694 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:54:53,696.696 INFO    ] No update needed
[2026-06-22 17:54:53,697.697 INFO    ] Checking for camera pi updates...
[2026-06-22 17:54:53,717.717 INFO    ] 200
[2026-06-22 17:54:53,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:54:53,749.749 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:54:53,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:54:53,834.834 INFO    ] No camera update needed
[2026-06-22 17:54:53,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:54:53,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:54:53,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:54:53,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:54:55,889.889 INFO    ] ================================================
[2026-06-22 17:54:55,904.904 INFO    ] Launching Daemon at Mon Jun 22 17:54:55 IST 2026
[2026-06-22 17:54:55,915.915 INFO    ] ================================================
[2026-06-22 17:54:56,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:54:56
[2026-06-22 17:54:56,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:54:57,238.238 INFO    ] Initializing speech engine...
[2026-06-22 17:54:57,251.251 INFO    ] 2026-06-22 17:54:57
[2026-06-22 17:54:57,519.519 INFO    ] 2026-06-22 17:54:57
[2026-06-22 17:54:57,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:54:57,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:54:57,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:54:58,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:54:58,091.091 INFO    ] time= 22/06/2026 17:54:58
[2026-06-22 17:54:58,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:54:58,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:54:58,240.240 INFO    ] No existing commands found in stream
[2026-06-22 17:55:03,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:55:03,265.265 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-22 17:55:06,239.239 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:55:06,242.242 INFO    ] Checking for system updates...
[2026-06-22 17:55:06,281.281 INFO    ] 200
[2026-06-22 17:55:06,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:55:06,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:55:06,339.339 INFO    ] No update needed
[2026-06-22 17:55:06,341.341 INFO    ] Checking for camera pi updates...
[2026-06-22 17:55:06,378.378 INFO    ] 200
[2026-06-22 17:55:06,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:55:06,423.423 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:55:06,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:55:06,500.500 INFO    ] No camera update needed
[2026-06-22 17:55:06,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:55:06,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:55:06,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:55:06,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:55:08,554.554 INFO    ] ================================================
[2026-06-22 17:55:08,569.569 INFO    ] Launching Daemon at Mon Jun 22 17:55:08 IST 2026
[2026-06-22 17:55:08,580.580 INFO    ] ================================================
[2026-06-22 17:55:09,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:55:09
[2026-06-22 17:55:09,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:55:09,886.886 INFO    ] Initializing speech engine...
[2026-06-22 17:55:09,898.898 INFO    ] 2026-06-22 17:55:09
[2026-06-22 17:55:10,161.161 INFO    ] 2026-06-22 17:55:10
[2026-06-22 17:55:10,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:55:10,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:55:10,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:55:10,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:55:10,639.639 INFO    ] time= 22/06/2026 17:55:10
[2026-06-22 17:55:10,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:55:10,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:55:10,892.892 INFO    ] No existing commands found in stream
[2026-06-22 17:55:15,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:55:15,920.920 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-22 17:55:17,154.154 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:55:17,157.157 INFO    ] Checking for system updates...
[2026-06-22 17:55:17,192.192 INFO    ] 200
[2026-06-22 17:55:17,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:55:17,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:55:17,250.250 INFO    ] No update needed
[2026-06-22 17:55:17,253.253 INFO    ] Checking for camera pi updates...
[2026-06-22 17:55:17,287.287 INFO    ] 200
[2026-06-22 17:55:17,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:55:17,334.334 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:55:17,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:55:17,430.430 INFO    ] No camera update needed
[2026-06-22 17:55:17,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:55:17,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:55:17,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:55:17,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:55:19,485.485 INFO    ] ================================================
[2026-06-22 17:55:19,500.500 INFO    ] Launching Daemon at Mon Jun 22 17:55:19 IST 2026
[2026-06-22 17:55:19,511.511 INFO    ] ================================================
[2026-06-22 17:55:20,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:55:20
[2026-06-22 17:55:20,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:55:20,857.857 INFO    ] Initializing speech engine...
[2026-06-22 17:55:20,876.876 INFO    ] 2026-06-22 17:55:20
[2026-06-22 17:55:21,126.126 INFO    ] 2026-06-22 17:55:21
[2026-06-22 17:55:21,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:55:21,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:55:21,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:55:21,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:55:21,620.620 INFO    ] time= 22/06/2026 17:55:21
[2026-06-22 17:55:21,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:55:21,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:55:21,832.832 INFO    ] No existing commands found in stream
[2026-06-22 17:55:26,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:55:26,850.850 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-22 17:55:29,425.425 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:55:29,427.427 INFO    ] Checking for system updates...
[2026-06-22 17:55:29,449.449 INFO    ] 200
[2026-06-22 17:55:29,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:55:29,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:55:29,507.507 INFO    ] No update needed
[2026-06-22 17:55:29,510.510 INFO    ] Checking for camera pi updates...
[2026-06-22 17:55:29,545.545 INFO    ] 200
[2026-06-22 17:55:29,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:55:29,589.589 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:55:29,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:55:29,781.781 INFO    ] No camera update needed
[2026-06-22 17:55:29,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:55:29,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:55:29,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:55:29,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:55:31,841.841 INFO    ] ================================================
[2026-06-22 17:55:31,858.858 INFO    ] Launching Daemon at Mon Jun 22 17:55:31 IST 2026
[2026-06-22 17:55:31,871.871 INFO    ] ================================================
[2026-06-22 17:55:32,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:55:32
[2026-06-22 17:55:33,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:55:33,403.403 INFO    ] Initializing speech engine...
[2026-06-22 17:55:33,412.412 INFO    ] 2026-06-22 17:55:33
[2026-06-22 17:55:33,673.673 INFO    ] 2026-06-22 17:55:33
[2026-06-22 17:55:33,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:55:33,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:55:33,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:55:34,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:55:34,218.218 INFO    ] time= 22/06/2026 17:55:34
[2026-06-22 17:55:34,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:55:34,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:55:34,373.373 INFO    ] No existing commands found in stream
[2026-06-22 17:55:39,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:55:39,391.391 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-22 17:55:40,924.924 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:55:40,926.926 INFO    ] Checking for system updates...
[2026-06-22 17:55:40,966.966 INFO    ] 200
[2026-06-22 17:55:40,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:55:41,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:55:41,034.034 INFO    ] No update needed
[2026-06-22 17:55:41,037.037 INFO    ] Checking for camera pi updates...
[2026-06-22 17:55:41,078.078 INFO    ] 200
[2026-06-22 17:55:41,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:55:41,127.127 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:55:41,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:55:41,217.217 INFO    ] No camera update needed
[2026-06-22 17:55:41,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:55:41,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:55:41,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:55:41,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:55:43,277.277 INFO    ] ================================================
[2026-06-22 17:55:43,292.292 INFO    ] Launching Daemon at Mon Jun 22 17:55:43 IST 2026
[2026-06-22 17:55:43,303.303 INFO    ] ================================================
[2026-06-22 17:55:43,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:55:43
[2026-06-22 17:55:44,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:55:44,650.650 INFO    ] Initializing speech engine...
[2026-06-22 17:55:44,657.657 INFO    ] 2026-06-22 17:55:44
[2026-06-22 17:55:44,901.901 INFO    ] 2026-06-22 17:55:44
[2026-06-22 17:55:44,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:55:45,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:55:45,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:55:45,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:55:45,398.398 INFO    ] time= 22/06/2026 17:55:45
[2026-06-22 17:55:45,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:55:45,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:55:45,622.622 INFO    ] No existing commands found in stream
[2026-06-22 17:55:50,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:55:50,651.651 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-22 17:55:51,812.812 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:55:51,813.813 INFO    ] Checking for system updates...
[2026-06-22 17:55:51,834.834 INFO    ] 200
[2026-06-22 17:55:51,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:55:51,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:55:51,875.875 INFO    ] No update needed
[2026-06-22 17:55:51,878.878 INFO    ] Checking for camera pi updates...
[2026-06-22 17:55:51,912.912 INFO    ] 200
[2026-06-22 17:55:51,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:55:51,956.956 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:55:52,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:55:52,053.053 INFO    ] No camera update needed
[2026-06-22 17:55:52,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:55:52,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:55:52,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:55:52,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:55:54,108.108 INFO    ] ================================================
[2026-06-22 17:55:54,123.123 INFO    ] Launching Daemon at Mon Jun 22 17:55:54 IST 2026
[2026-06-22 17:55:54,134.134 INFO    ] ================================================
[2026-06-22 17:55:54,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:55:54
[2026-06-22 17:55:55,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:55:55,560.560 INFO    ] Initializing speech engine...
[2026-06-22 17:55:55,568.568 INFO    ] 2026-06-22 17:55:55
[2026-06-22 17:55:55,874.874 INFO    ] 2026-06-22 17:55:55
[2026-06-22 17:55:55,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:55:56,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:55:56,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:55:56,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:55:56,386.386 INFO    ] time= 22/06/2026 17:55:56
[2026-06-22 17:55:56,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:55:56,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:55:56,556.556 INFO    ] No existing commands found in stream
[2026-06-22 17:56:01,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:56:01,597.597 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-22 17:56:05,387.387 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:56:05,390.390 INFO    ] Checking for system updates...
[2026-06-22 17:56:05,428.428 INFO    ] 200
[2026-06-22 17:56:05,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:56:05,485.485 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:56:05,487.487 INFO    ] No update needed
[2026-06-22 17:56:05,490.490 INFO    ] Checking for camera pi updates...
[2026-06-22 17:56:05,524.524 INFO    ] 200
[2026-06-22 17:56:05,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:56:05,571.571 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:56:05,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:56:05,672.672 INFO    ] No camera update needed
[2026-06-22 17:56:05,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:56:05,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:56:05,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:56:05,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:56:07,719.719 INFO    ] ================================================
[2026-06-22 17:56:07,735.735 INFO    ] Launching Daemon at Mon Jun 22 17:56:07 IST 2026
[2026-06-22 17:56:07,746.746 INFO    ] ================================================
[2026-06-22 17:56:08,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:56:08
[2026-06-22 17:56:08,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:56:09,115.115 INFO    ] Initializing speech engine...
[2026-06-22 17:56:09,125.125 INFO    ] 2026-06-22 17:56:09
[2026-06-22 17:56:09,372.372 INFO    ] 2026-06-22 17:56:09
[2026-06-22 17:56:09,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:56:09,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:56:09,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:56:09,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:56:09,824.824 INFO    ] time= 22/06/2026 17:56:09
[2026-06-22 17:56:09,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:56:09,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:56:09,988.988 INFO    ] No existing commands found in stream
[2026-06-22 17:56:15,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:56:15,003.003 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-22 17:56:15,550.550 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:56:15,553.553 INFO    ] Checking for system updates...
[2026-06-22 17:56:15,589.589 INFO    ] 200
[2026-06-22 17:56:15,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:56:15,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:56:15,646.646 INFO    ] No update needed
[2026-06-22 17:56:15,649.649 INFO    ] Checking for camera pi updates...
[2026-06-22 17:56:15,675.675 INFO    ] 200
[2026-06-22 17:56:15,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:56:15,719.719 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:56:15,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:56:15,823.823 INFO    ] No camera update needed
[2026-06-22 17:56:15,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:56:15,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:56:15,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:56:15,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:56:17,883.883 INFO    ] ================================================
[2026-06-22 17:56:17,899.899 INFO    ] Launching Daemon at Mon Jun 22 17:56:17 IST 2026
[2026-06-22 17:56:17,910.910 INFO    ] ================================================
[2026-06-22 17:56:18,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:56:18
[2026-06-22 17:56:18,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:56:19,256.256 INFO    ] Initializing speech engine...
[2026-06-22 17:56:19,263.263 INFO    ] 2026-06-22 17:56:19
[2026-06-22 17:56:19,512.512 INFO    ] 2026-06-22 17:56:19
[2026-06-22 17:56:19,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:56:19,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:56:19,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:56:19,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:56:19,996.996 INFO    ] time= 22/06/2026 17:56:19
[2026-06-22 17:56:20,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:56:20,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:56:20,212.212 INFO    ] No existing commands found in stream
[2026-06-22 17:56:25,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:56:25,240.240 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-22 17:56:25,884.884 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:56:25,886.886 INFO    ] Checking for system updates...
[2026-06-22 17:56:25,907.907 INFO    ] 200
[2026-06-22 17:56:25,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:56:25,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:56:25,940.940 INFO    ] No update needed
[2026-06-22 17:56:25,942.942 INFO    ] Checking for camera pi updates...
[2026-06-22 17:56:25,961.961 INFO    ] 200
[2026-06-22 17:56:25,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:56:26,002.002 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:56:26,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:56:26,084.084 INFO    ] No camera update needed
[2026-06-22 17:56:26,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:56:26,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:56:26,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:56:26,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:56:28,142.142 INFO    ] ================================================
[2026-06-22 17:56:28,157.157 INFO    ] Launching Daemon at Mon Jun 22 17:56:28 IST 2026
[2026-06-22 17:56:28,169.169 INFO    ] ================================================
[2026-06-22 17:56:28,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:56:28
[2026-06-22 17:56:29,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:56:29,508.508 INFO    ] Initializing speech engine...
[2026-06-22 17:56:29,526.526 INFO    ] 2026-06-22 17:56:29
[2026-06-22 17:56:29,795.795 INFO    ] 2026-06-22 17:56:29
[2026-06-22 17:56:29,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:56:30,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:56:30,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:56:30,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:56:30,184.184 INFO    ] time= 22/06/2026 17:56:30
[2026-06-22 17:56:30,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:56:30,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:56:30,293.293 INFO    ] No existing commands found in stream
[2026-06-22 17:56:35,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:56:35,326.326 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-22 17:56:38,549.549 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:56:38,550.550 INFO    ] Checking for system updates...
[2026-06-22 17:56:38,571.571 INFO    ] 200
[2026-06-22 17:56:38,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:56:38,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:56:38,624.624 INFO    ] No update needed
[2026-06-22 17:56:38,626.626 INFO    ] Checking for camera pi updates...
[2026-06-22 17:56:38,661.661 INFO    ] 200
[2026-06-22 17:56:38,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:56:38,709.709 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:56:38,789.789 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:56:38,792.792 INFO    ] No camera update needed
[2026-06-22 17:56:38,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:56:38,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:56:38,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:56:38,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:56:40,847.847 INFO    ] ================================================
[2026-06-22 17:56:40,863.863 INFO    ] Launching Daemon at Mon Jun 22 17:56:40 IST 2026
[2026-06-22 17:56:40,874.874 INFO    ] ================================================
[2026-06-22 17:56:41,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:56:41
[2026-06-22 17:56:42,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:56:42,358.358 INFO    ] Initializing speech engine...
[2026-06-22 17:56:42,368.368 INFO    ] 2026-06-22 17:56:42
[2026-06-22 17:56:42,636.636 INFO    ] 2026-06-22 17:56:42
[2026-06-22 17:56:42,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:56:43,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:56:43,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:56:43,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:56:43,253.253 INFO    ] time= 22/06/2026 17:56:43
[2026-06-22 17:56:43,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:56:43,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:56:43,411.411 INFO    ] No existing commands found in stream
[2026-06-22 17:56:48,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:56:48,436.436 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-22 17:56:51,773.773 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 17:56:51,774.774 INFO    ] Checking for system updates...
[2026-06-22 17:56:51,795.795 INFO    ] 200
[2026-06-22 17:56:51,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:56:51,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:56:51,850.850 INFO    ] No update needed
[2026-06-22 17:56:51,853.853 INFO    ] Checking for camera pi updates...
[2026-06-22 17:56:51,891.891 INFO    ] 200
[2026-06-22 17:56:51,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:56:51,935.935 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:56:52,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:56:52,023.023 INFO    ] No camera update needed
[2026-06-22 17:56:52,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:56:52,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:56:52,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:56:52,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:56:54,078.078 INFO    ] ================================================
[2026-06-22 17:56:54,093.093 INFO    ] Launching Daemon at Mon Jun 22 17:56:54 IST 2026
[2026-06-22 17:56:54,104.104 INFO    ] ================================================
[2026-06-22 17:56:54,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:56:54
[2026-06-22 17:56:55,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:56:55,684.684 INFO    ] Initializing speech engine...
[2026-06-22 17:56:55,693.693 INFO    ] 2026-06-22 17:56:55
[2026-06-22 17:56:55,958.958 INFO    ] 2026-06-22 17:56:55
[2026-06-22 17:56:56,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:56:56,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:56:56,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:56:56,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:56:56,411.411 INFO    ] time= 22/06/2026 17:56:56
[2026-06-22 17:56:56,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:56:56,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:56:56,647.647 INFO    ] No existing commands found in stream
[2026-06-22 17:57:01,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:57:01,678.678 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-22 17:57:04,896.896 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:57:04,899.899 INFO    ] Checking for system updates...
[2026-06-22 17:57:04,936.936 INFO    ] 200
[2026-06-22 17:57:04,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:57:04,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:57:04,996.996 INFO    ] No update needed
[2026-06-22 17:57:04,999.999 INFO    ] Checking for camera pi updates...
[2026-06-22 17:57:05,034.034 INFO    ] 200
[2026-06-22 17:57:05,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:57:05,082.082 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:57:05,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:57:05,168.168 INFO    ] No camera update needed
[2026-06-22 17:57:05,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:57:05,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:57:05,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:57:05,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:57:07,226.226 INFO    ] ================================================
[2026-06-22 17:57:07,241.241 INFO    ] Launching Daemon at Mon Jun 22 17:57:07 IST 2026
[2026-06-22 17:57:07,252.252 INFO    ] ================================================
[2026-06-22 17:57:07,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:57:07
[2026-06-22 17:57:08,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:57:08,671.671 INFO    ] Initializing speech engine...
[2026-06-22 17:57:08,680.680 INFO    ] 2026-06-22 17:57:08
[2026-06-22 17:57:08,928.928 INFO    ] 2026-06-22 17:57:08
[2026-06-22 17:57:08,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:57:09,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:57:09,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:57:09,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:57:09,495.495 INFO    ] time= 22/06/2026 17:57:09
[2026-06-22 17:57:09,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:57:09,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:57:09,646.646 INFO    ] No existing commands found in stream
[2026-06-22 17:57:14,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:57:14,663.663 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-22 17:57:16,569.569 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:57:16,572.572 INFO    ] Checking for system updates...
[2026-06-22 17:57:16,608.608 INFO    ] 200
[2026-06-22 17:57:16,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:57:16,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:57:16,666.666 INFO    ] No update needed
[2026-06-22 17:57:16,668.668 INFO    ] Checking for camera pi updates...
[2026-06-22 17:57:16,702.702 INFO    ] 200
[2026-06-22 17:57:16,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:57:16,748.748 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:57:16,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:57:16,800.800 INFO    ] No camera update needed
[2026-06-22 17:57:16,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:57:16,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:57:16,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:57:16,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:57:18,856.856 INFO    ] ================================================
[2026-06-22 17:57:18,871.871 INFO    ] Launching Daemon at Mon Jun 22 17:57:18 IST 2026
[2026-06-22 17:57:18,882.882 INFO    ] ================================================
[2026-06-22 17:57:19,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:57:19
[2026-06-22 17:57:20,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:57:20,290.290 INFO    ] Initializing speech engine...
[2026-06-22 17:57:20,296.296 INFO    ] 2026-06-22 17:57:20
[2026-06-22 17:57:20,582.582 INFO    ] 2026-06-22 17:57:20
[2026-06-22 17:57:20,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:57:20,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:57:20,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:57:20,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:57:20,988.988 INFO    ] time= 22/06/2026 17:57:20
[2026-06-22 17:57:20,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:57:21,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:57:21,132.132 INFO    ] No existing commands found in stream
[2026-06-22 17:57:26,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:57:26,145.145 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-22 17:57:29,757.757 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 17:57:29,760.760 INFO    ] Checking for system updates...
[2026-06-22 17:57:29,796.796 INFO    ] 200
[2026-06-22 17:57:29,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:57:29,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:57:29,856.856 INFO    ] No update needed
[2026-06-22 17:57:29,859.859 INFO    ] Checking for camera pi updates...
[2026-06-22 17:57:29,894.894 INFO    ] 200
[2026-06-22 17:57:29,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:57:29,940.940 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:57:30,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:57:30,050.050 INFO    ] No camera update needed
[2026-06-22 17:57:30,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:57:30,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:57:30,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:57:30,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:57:32,109.109 INFO    ] ================================================
[2026-06-22 17:57:32,126.126 INFO    ] Launching Daemon at Mon Jun 22 17:57:32 IST 2026
[2026-06-22 17:57:32,137.137 INFO    ] ================================================
[2026-06-22 17:57:32,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:57:32
[2026-06-22 17:57:33,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:57:33,628.628 INFO    ] Initializing speech engine...
[2026-06-22 17:57:33,644.644 INFO    ] 2026-06-22 17:57:33
[2026-06-22 17:57:33,923.923 INFO    ] 2026-06-22 17:57:33
[2026-06-22 17:57:33,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:57:34,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:57:34,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:57:34,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:57:34,332.332 INFO    ] time= 22/06/2026 17:57:34
[2026-06-22 17:57:34,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:57:34,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:57:34,495.495 INFO    ] No existing commands found in stream
[2026-06-22 17:57:39,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:57:39,523.523 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-22 17:57:40,365.365 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:57:40,367.367 INFO    ] Checking for system updates...
[2026-06-22 17:57:40,404.404 INFO    ] 200
[2026-06-22 17:57:40,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:57:40,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:57:40,464.464 INFO    ] No update needed
[2026-06-22 17:57:40,466.466 INFO    ] Checking for camera pi updates...
[2026-06-22 17:57:40,501.501 INFO    ] 200
[2026-06-22 17:57:40,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:57:40,544.544 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:57:40,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:57:40,628.628 INFO    ] No camera update needed
[2026-06-22 17:57:40,630.630 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:57:40,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:57:40,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:57:40,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:57:42,685.685 INFO    ] ================================================
[2026-06-22 17:57:42,700.700 INFO    ] Launching Daemon at Mon Jun 22 17:57:42 IST 2026
[2026-06-22 17:57:42,711.711 INFO    ] ================================================
[2026-06-22 17:57:43,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:57:43
[2026-06-22 17:57:43,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:57:44,089.089 INFO    ] Initializing speech engine...
[2026-06-22 17:57:44,095.095 INFO    ] 2026-06-22 17:57:44
[2026-06-22 17:57:44,383.383 INFO    ] 2026-06-22 17:57:44
[2026-06-22 17:57:44,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:57:44,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:57:44,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:57:44,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:57:44,927.927 INFO    ] time= 22/06/2026 17:57:44
[2026-06-22 17:57:44,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:57:44,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:57:45,088.088 INFO    ] No existing commands found in stream
[2026-06-22 17:57:50,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:57:50,121.121 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-22 17:57:51,125.125 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:57:51,128.128 INFO    ] Checking for system updates...
[2026-06-22 17:57:51,165.165 INFO    ] 200
[2026-06-22 17:57:51,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:57:51,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:57:51,224.224 INFO    ] No update needed
[2026-06-22 17:57:51,227.227 INFO    ] Checking for camera pi updates...
[2026-06-22 17:57:51,261.261 INFO    ] 200
[2026-06-22 17:57:51,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:57:51,311.311 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:57:51,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:57:51,412.412 INFO    ] No camera update needed
[2026-06-22 17:57:51,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:57:51,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:57:51,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:57:51,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:57:53,466.466 INFO    ] ================================================
[2026-06-22 17:57:53,481.481 INFO    ] Launching Daemon at Mon Jun 22 17:57:53 IST 2026
[2026-06-22 17:57:53,492.492 INFO    ] ================================================
[2026-06-22 17:57:54,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:57:54
[2026-06-22 17:57:54,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:57:54,908.908 INFO    ] Initializing speech engine...
[2026-06-22 17:57:54,927.927 INFO    ] 2026-06-22 17:57:54
[2026-06-22 17:57:55,177.177 INFO    ] 2026-06-22 17:57:55
[2026-06-22 17:57:55,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:57:55,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:57:55,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:57:55,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:57:55,648.648 INFO    ] time= 22/06/2026 17:57:55
[2026-06-22 17:57:55,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:57:55,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:57:55,815.815 INFO    ] No existing commands found in stream
[2026-06-22 17:58:00,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:58:00,848.848 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-22 17:58:04,080.080 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:58:04,082.082 INFO    ] Checking for system updates...
[2026-06-22 17:58:04,120.120 INFO    ] 200
[2026-06-22 17:58:04,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:58:04,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:58:04,178.178 INFO    ] No update needed
[2026-06-22 17:58:04,180.180 INFO    ] Checking for camera pi updates...
[2026-06-22 17:58:04,215.215 INFO    ] 200
[2026-06-22 17:58:04,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:58:04,258.258 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:58:04,333.333 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:58:04,335.335 INFO    ] No camera update needed
[2026-06-22 17:58:04,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:58:04,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:58:04,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:58:04,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:58:06,391.391 INFO    ] ================================================
[2026-06-22 17:58:06,406.406 INFO    ] Launching Daemon at Mon Jun 22 17:58:06 IST 2026
[2026-06-22 17:58:06,417.417 INFO    ] ================================================
[2026-06-22 17:58:06,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:58:06
[2026-06-22 17:58:07,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:58:07,800.800 INFO    ] Initializing speech engine...
[2026-06-22 17:58:07,809.809 INFO    ] 2026-06-22 17:58:07
[2026-06-22 17:58:08,058.058 INFO    ] 2026-06-22 17:58:08
[2026-06-22 17:58:08,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:58:08,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:58:08,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:58:08,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:58:08,532.532 INFO    ] time= 22/06/2026 17:58:08
[2026-06-22 17:58:08,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:58:08,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:58:08,750.750 INFO    ] No existing commands found in stream
[2026-06-22 17:58:13,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:58:13,775.775 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-22 17:58:17,549.549 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:58:17,551.551 INFO    ] Checking for system updates...
[2026-06-22 17:58:17,588.588 INFO    ] 200
[2026-06-22 17:58:17,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:58:17,646.646 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:58:17,648.648 INFO    ] No update needed
[2026-06-22 17:58:17,651.651 INFO    ] Checking for camera pi updates...
[2026-06-22 17:58:17,685.685 INFO    ] 200
[2026-06-22 17:58:17,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:58:17,730.730 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:58:17,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:58:17,820.820 INFO    ] No camera update needed
[2026-06-22 17:58:17,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:58:17,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:58:17,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:58:17,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:58:19,877.877 INFO    ] ================================================
[2026-06-22 17:58:19,893.893 INFO    ] Launching Daemon at Mon Jun 22 17:58:19 IST 2026
[2026-06-22 17:58:19,904.904 INFO    ] ================================================
[2026-06-22 17:58:20,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:58:20
[2026-06-22 17:58:21,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:58:21,474.474 INFO    ] Initializing speech engine...
[2026-06-22 17:58:21,486.486 INFO    ] 2026-06-22 17:58:21
[2026-06-22 17:58:21,765.765 INFO    ] 2026-06-22 17:58:21
[2026-06-22 17:58:21,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:58:22,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:58:22,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:58:22,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:58:22,296.296 INFO    ] time= 22/06/2026 17:58:22
[2026-06-22 17:58:22,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:58:22,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:58:22,474.474 INFO    ] No existing commands found in stream
[2026-06-22 17:58:27,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:58:27,513.513 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-22 17:58:28,073.073 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:58:28,076.076 INFO    ] Checking for system updates...
[2026-06-22 17:58:28,114.114 INFO    ] 200
[2026-06-22 17:58:28,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:58:28,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:58:28,179.179 INFO    ] No update needed
[2026-06-22 17:58:28,181.181 INFO    ] Checking for camera pi updates...
[2026-06-22 17:58:28,217.217 INFO    ] 200
[2026-06-22 17:58:28,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:58:28,263.263 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:58:28,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:58:28,376.376 INFO    ] No camera update needed
[2026-06-22 17:58:28,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:58:28,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:58:28,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:58:28,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:58:30,431.431 INFO    ] ================================================
[2026-06-22 17:58:30,447.447 INFO    ] Launching Daemon at Mon Jun 22 17:58:30 IST 2026
[2026-06-22 17:58:30,458.458 INFO    ] ================================================
[2026-06-22 17:58:31,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:58:31
[2026-06-22 17:58:31,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:58:31,767.767 INFO    ] Initializing speech engine...
[2026-06-22 17:58:31,782.782 INFO    ] 2026-06-22 17:58:31
[2026-06-22 17:58:32,086.086 INFO    ] 2026-06-22 17:58:32
[2026-06-22 17:58:32,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:58:32,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:58:32,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:58:32,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:58:32,484.484 INFO    ] time= 22/06/2026 17:58:32
[2026-06-22 17:58:32,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:58:32,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:58:32,692.692 INFO    ] No existing commands found in stream
[2026-06-22 17:58:37,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:58:37,709.709 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-22 17:58:40,165.165 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:58:40,167.167 INFO    ] Checking for system updates...
[2026-06-22 17:58:40,189.189 INFO    ] 200
[2026-06-22 17:58:40,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:58:40,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:58:40,223.223 INFO    ] No update needed
[2026-06-22 17:58:40,224.224 INFO    ] Checking for camera pi updates...
[2026-06-22 17:58:40,244.244 INFO    ] 200
[2026-06-22 17:58:40,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:58:40,273.273 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:58:40,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:58:40,357.357 INFO    ] No camera update needed
[2026-06-22 17:58:40,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:58:40,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:58:40,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:58:40,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:58:42,416.416 INFO    ] ================================================
[2026-06-22 17:58:42,431.431 INFO    ] Launching Daemon at Mon Jun 22 17:58:42 IST 2026
[2026-06-22 17:58:42,442.442 INFO    ] ================================================
[2026-06-22 17:58:43,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:58:43
[2026-06-22 17:58:43,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:58:43,804.804 INFO    ] Initializing speech engine...
[2026-06-22 17:58:43,823.823 INFO    ] 2026-06-22 17:58:43
[2026-06-22 17:58:44,072.072 INFO    ] 2026-06-22 17:58:44
[2026-06-22 17:58:44,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:58:44,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:58:44,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:58:44,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:58:44,572.572 INFO    ] time= 22/06/2026 17:58:44
[2026-06-22 17:58:44,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:58:44,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:58:44,807.807 INFO    ] No existing commands found in stream
[2026-06-22 17:58:49,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:58:49,828.828 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-22 17:58:50,463.463 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 17:58:50,466.466 INFO    ] Checking for system updates...
[2026-06-22 17:58:50,503.503 INFO    ] 200
[2026-06-22 17:58:50,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:58:50,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:58:50,567.567 INFO    ] No update needed
[2026-06-22 17:58:50,570.570 INFO    ] Checking for camera pi updates...
[2026-06-22 17:58:50,607.607 INFO    ] 200
[2026-06-22 17:58:50,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:58:50,658.658 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:58:50,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:58:50,764.764 INFO    ] No camera update needed
[2026-06-22 17:58:50,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:58:50,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:58:50,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:58:50,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:58:52,821.821 INFO    ] ================================================
[2026-06-22 17:58:52,837.837 INFO    ] Launching Daemon at Mon Jun 22 17:58:52 IST 2026
[2026-06-22 17:58:52,847.847 INFO    ] ================================================
[2026-06-22 17:58:53,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:58:53
[2026-06-22 17:58:54,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:58:54,312.312 INFO    ] Initializing speech engine...
[2026-06-22 17:58:54,320.320 INFO    ] 2026-06-22 17:58:54
[2026-06-22 17:58:54,587.587 INFO    ] 2026-06-22 17:58:54
[2026-06-22 17:58:54,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:58:54,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:58:54,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:58:55,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:58:55,119.119 INFO    ] time= 22/06/2026 17:58:55
[2026-06-22 17:58:55,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:58:55,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:58:55,297.297 INFO    ] No existing commands found in stream
[2026-06-22 17:59:00,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:59:00,329.329 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-22 17:59:04,121.121 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 17:59:04,124.124 INFO    ] Checking for system updates...
[2026-06-22 17:59:04,163.163 INFO    ] 200
[2026-06-22 17:59:04,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:59:04,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:59:04,231.231 INFO    ] No update needed
[2026-06-22 17:59:04,234.234 INFO    ] Checking for camera pi updates...
[2026-06-22 17:59:04,272.272 INFO    ] 200
[2026-06-22 17:59:04,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:59:04,320.320 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:59:04,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:59:04,422.422 INFO    ] No camera update needed
[2026-06-22 17:59:04,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:59:04,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:59:04,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:59:04,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:59:06,482.482 INFO    ] ================================================
[2026-06-22 17:59:06,505.505 INFO    ] Launching Daemon at Mon Jun 22 17:59:06 IST 2026
[2026-06-22 17:59:06,516.516 INFO    ] ================================================
[2026-06-22 17:59:07,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:59:07
[2026-06-22 17:59:07,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:59:07,900.900 INFO    ] Initializing speech engine...
[2026-06-22 17:59:07,909.909 INFO    ] 2026-06-22 17:59:07
[2026-06-22 17:59:08,155.155 INFO    ] 2026-06-22 17:59:08
[2026-06-22 17:59:08,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:59:08,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:59:08,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:59:08,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:59:08,644.644 INFO    ] time= 22/06/2026 17:59:08
[2026-06-22 17:59:08,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:59:08,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:59:08,875.875 INFO    ] No existing commands found in stream
[2026-06-22 17:59:13,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:59:13,900.900 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-22 17:59:17,920.920 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:59:17,923.923 INFO    ] Checking for system updates...
[2026-06-22 17:59:17,960.960 INFO    ] 200
[2026-06-22 17:59:17,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:59:18,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:59:18,020.020 INFO    ] No update needed
[2026-06-22 17:59:18,022.022 INFO    ] Checking for camera pi updates...
[2026-06-22 17:59:18,059.059 INFO    ] 200
[2026-06-22 17:59:18,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:59:18,106.106 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:59:18,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:59:18,183.183 INFO    ] No camera update needed
[2026-06-22 17:59:18,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:59:18,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:59:18,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:59:18,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:59:20,239.239 INFO    ] ================================================
[2026-06-22 17:59:20,255.255 INFO    ] Launching Daemon at Mon Jun 22 17:59:20 IST 2026
[2026-06-22 17:59:20,267.267 INFO    ] ================================================
[2026-06-22 17:59:20,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:59:20
[2026-06-22 17:59:21,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:59:21,606.606 INFO    ] Initializing speech engine...
[2026-06-22 17:59:21,625.625 INFO    ] 2026-06-22 17:59:21
[2026-06-22 17:59:21,871.871 INFO    ] 2026-06-22 17:59:21
[2026-06-22 17:59:21,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:59:22,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:59:22,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:59:22,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:59:22,443.443 INFO    ] time= 22/06/2026 17:59:22
[2026-06-22 17:59:22,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:59:22,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:59:22,596.596 INFO    ] No existing commands found in stream
[2026-06-22 17:59:27,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:59:27,616.616 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-22 17:59:28,393.393 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 17:59:28,396.396 INFO    ] Checking for system updates...
[2026-06-22 17:59:28,433.433 INFO    ] 200
[2026-06-22 17:59:28,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:59:28,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:59:28,498.498 INFO    ] No update needed
[2026-06-22 17:59:28,501.501 INFO    ] Checking for camera pi updates...
[2026-06-22 17:59:28,536.536 INFO    ] 200
[2026-06-22 17:59:28,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:59:28,581.581 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:59:28,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:59:28,669.669 INFO    ] No camera update needed
[2026-06-22 17:59:28,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:59:28,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:59:28,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:59:28,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:59:30,728.728 INFO    ] ================================================
[2026-06-22 17:59:30,743.743 INFO    ] Launching Daemon at Mon Jun 22 17:59:30 IST 2026
[2026-06-22 17:59:30,754.754 INFO    ] ================================================
[2026-06-22 17:59:31,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:59:31
[2026-06-22 17:59:31,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:59:32,170.170 INFO    ] Initializing speech engine...
[2026-06-22 17:59:32,177.177 INFO    ] 2026-06-22 17:59:32
[2026-06-22 17:59:32,456.456 INFO    ] 2026-06-22 17:59:32
[2026-06-22 17:59:32,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:59:32,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:59:32,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:59:33,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:59:33,055.055 INFO    ] time= 22/06/2026 17:59:33
[2026-06-22 17:59:33,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:59:33,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:59:33,256.256 INFO    ] No existing commands found in stream
[2026-06-22 17:59:38,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:59:38,290.290 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-22 17:59:41,875.875 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:59:41,877.877 INFO    ] Checking for system updates...
[2026-06-22 17:59:41,899.899 INFO    ] 200
[2026-06-22 17:59:41,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:59:41,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:59:41,959.959 INFO    ] No update needed
[2026-06-22 17:59:41,962.962 INFO    ] Checking for camera pi updates...
[2026-06-22 17:59:41,997.997 INFO    ] 200
[2026-06-22 17:59:41,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:59:42,045.045 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:59:42,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 17:59:42,226.226 INFO    ] No camera update needed
[2026-06-22 17:59:42,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:59:42,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:59:42,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:59:42,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:59:44,286.286 INFO    ] ================================================
[2026-06-22 17:59:44,301.301 INFO    ] Launching Daemon at Mon Jun 22 17:59:44 IST 2026
[2026-06-22 17:59:44,311.311 INFO    ] ================================================
[2026-06-22 17:59:44,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:59:44
[2026-06-22 17:59:45,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:59:45,807.807 INFO    ] Initializing speech engine...
[2026-06-22 17:59:45,815.815 INFO    ] 2026-06-22 17:59:45
[2026-06-22 17:59:46,083.083 INFO    ] 2026-06-22 17:59:46
[2026-06-22 17:59:46,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:59:46,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:59:46,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:59:46,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:59:46,647.647 INFO    ] time= 22/06/2026 17:59:46
[2026-06-22 17:59:46,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:59:46,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:59:46,808.808 INFO    ] No existing commands found in stream
[2026-06-22 17:59:51,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 17:59:51,831.831 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-22 17:59:52,723.723 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 17:59:52,725.725 INFO    ] Checking for system updates...
[2026-06-22 17:59:52,748.748 INFO    ] 200
[2026-06-22 17:59:52,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:59:52,784.784 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:59:52,786.786 INFO    ] No update needed
[2026-06-22 17:59:52,787.787 INFO    ] Checking for camera pi updates...
[2026-06-22 17:59:52,813.813 INFO    ] 200
[2026-06-22 17:59:52,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 17:59:52,867.867 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 17:59:52,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 17:59:52,950.950 INFO    ] No camera update needed
[2026-06-22 17:59:52,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-22 17:59:52,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 17:59:52,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 17:59:52,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 17:59:55,004.004 INFO    ] ================================================
[2026-06-22 17:59:55,019.019 INFO    ] Launching Daemon at Mon Jun 22 17:59:55 IST 2026
[2026-06-22 17:59:55,030.030 INFO    ] ================================================
[2026-06-22 17:59:55,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 17:59:55
[2026-06-22 17:59:56,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 17:59:56,352.352 INFO    ] Initializing speech engine...
[2026-06-22 17:59:56,367.367 INFO    ] 2026-06-22 17:59:56
[2026-06-22 17:59:56,650.650 INFO    ] 2026-06-22 17:59:56
[2026-06-22 17:59:56,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 17:59:56,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 17:59:56,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 17:59:57,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 17:59:57,065.065 INFO    ] time= 22/06/2026 17:59:57
[2026-06-22 17:59:57,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 17:59:57,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-22 17:59:57,189.189 INFO    ] No existing commands found in stream
[2026-06-22 18:00:02,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:00:02,229.229 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-22 18:00:04,473.473 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 18:00:04,496.496 INFO    ] Checking for system updates...
[2026-06-22 18:00:04,661.661 INFO    ] 200
[2026-06-22 18:00:04,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:00:04,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:00:04,958.958 INFO    ] No update needed
[2026-06-22 18:00:04,961.961 INFO    ] Checking for camera pi updates...
[2026-06-22 18:00:05,100.100 INFO    ] 200
[2026-06-22 18:00:05,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:00:05,359.359 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:00:05,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:00:05,537.537 INFO    ] No camera update needed
[2026-06-22 18:00:05,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:00:05,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:00:05,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:00:05,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:00:07,654.654 INFO    ] ================================================
[2026-06-22 18:00:07,669.669 INFO    ] Launching Daemon at Mon Jun 22 18:00:07 IST 2026
[2026-06-22 18:00:07,680.680 INFO    ] ================================================
[2026-06-22 18:00:08,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:00:08
[2026-06-22 18:00:08,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:00:09,102.102 INFO    ] Initializing speech engine...
[2026-06-22 18:00:09,111.111 INFO    ] 2026-06-22 18:00:09
[2026-06-22 18:00:09,418.418 INFO    ] 2026-06-22 18:00:09
[2026-06-22 18:00:09,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:00:09,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:00:09,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:00:09,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:00:09,843.843 INFO    ] time= 22/06/2026 18:00:09
[2026-06-22 18:00:09,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:00:09,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:00:09,944.944 INFO    ] No existing commands found in stream
[2026-06-22 18:00:14,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:00:14,983.983 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-22 18:00:18,062.062 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:00:18,064.064 INFO    ] Checking for system updates...
[2026-06-22 18:00:18,105.105 INFO    ] 200
[2026-06-22 18:00:18,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:00:18,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:00:18,163.163 INFO    ] No update needed
[2026-06-22 18:00:18,166.166 INFO    ] Checking for camera pi updates...
[2026-06-22 18:00:18,203.203 INFO    ] 200
[2026-06-22 18:00:18,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:00:18,251.251 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:00:18,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:00:18,332.332 INFO    ] No camera update needed
[2026-06-22 18:00:18,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:00:18,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:00:18,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:00:18,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:00:20,388.388 INFO    ] ================================================
[2026-06-22 18:00:20,403.403 INFO    ] Launching Daemon at Mon Jun 22 18:00:20 IST 2026
[2026-06-22 18:00:20,414.414 INFO    ] ================================================
[2026-06-22 18:00:21,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:00:20
[2026-06-22 18:00:21,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:00:21,864.864 INFO    ] Initializing speech engine...
[2026-06-22 18:00:21,873.873 INFO    ] 2026-06-22 18:00:21
[2026-06-22 18:00:22,166.166 INFO    ] 2026-06-22 18:00:22
[2026-06-22 18:00:22,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:00:22,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:00:22,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:00:22,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:00:22,579.579 INFO    ] time= 22/06/2026 18:00:22
[2026-06-22 18:00:22,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:00:22,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:00:22,780.780 INFO    ] No existing commands found in stream
[2026-06-22 18:00:27,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:00:27,809.809 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-22 18:00:31,207.207 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:00:31,209.209 INFO    ] Checking for system updates...
[2026-06-22 18:00:31,247.247 INFO    ] 200
[2026-06-22 18:00:31,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:00:31,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:00:31,306.306 INFO    ] No update needed
[2026-06-22 18:00:31,308.308 INFO    ] Checking for camera pi updates...
[2026-06-22 18:00:31,342.342 INFO    ] 200
[2026-06-22 18:00:31,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:00:31,386.386 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:00:31,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:00:31,489.489 INFO    ] No camera update needed
[2026-06-22 18:00:31,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:00:31,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:00:31,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:00:31,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:00:33,548.548 INFO    ] ================================================
[2026-06-22 18:00:33,565.565 INFO    ] Launching Daemon at Mon Jun 22 18:00:33 IST 2026
[2026-06-22 18:00:33,576.576 INFO    ] ================================================
[2026-06-22 18:00:34,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:00:34
[2026-06-22 18:00:34,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:00:35,043.043 INFO    ] Initializing speech engine...
[2026-06-22 18:00:35,052.052 INFO    ] 2026-06-22 18:00:35
[2026-06-22 18:00:35,302.302 INFO    ] 2026-06-22 18:00:35
[2026-06-22 18:00:35,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:00:35,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:00:35,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:00:35,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:00:35,681.681 INFO    ] time= 22/06/2026 18:00:35
[2026-06-22 18:00:35,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:00:35,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:00:35,872.872 INFO    ] No existing commands found in stream
[2026-06-22 18:00:40,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:00:40,889.889 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-22 18:00:43,414.414 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:00:43,415.415 INFO    ] Checking for system updates...
[2026-06-22 18:00:43,436.436 INFO    ] 200
[2026-06-22 18:00:43,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:00:43,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:00:43,480.480 INFO    ] No update needed
[2026-06-22 18:00:43,483.483 INFO    ] Checking for camera pi updates...
[2026-06-22 18:00:43,518.518 INFO    ] 200
[2026-06-22 18:00:43,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:00:43,565.565 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:00:43,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:00:43,645.645 INFO    ] No camera update needed
[2026-06-22 18:00:43,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:00:43,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:00:43,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:00:43,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:00:45,704.704 INFO    ] ================================================
[2026-06-22 18:00:45,719.719 INFO    ] Launching Daemon at Mon Jun 22 18:00:45 IST 2026
[2026-06-22 18:00:45,730.730 INFO    ] ================================================
[2026-06-22 18:00:46,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:00:46
[2026-06-22 18:00:46,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:00:47,212.212 INFO    ] Initializing speech engine...
[2026-06-22 18:00:47,222.222 INFO    ] 2026-06-22 18:00:47
[2026-06-22 18:00:47,491.491 INFO    ] 2026-06-22 18:00:47
[2026-06-22 18:00:47,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:00:47,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:00:47,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:00:47,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:00:47,979.979 INFO    ] time= 22/06/2026 18:00:47
[2026-06-22 18:00:48,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:00:48,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:00:48,211.211 INFO    ] No existing commands found in stream
[2026-06-22 18:00:53,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:00:53,232.232 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-22 18:00:57,100.100 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:00:57,102.102 INFO    ] Checking for system updates...
[2026-06-22 18:00:57,123.123 INFO    ] 200
[2026-06-22 18:00:57,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:00:57,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:00:57,158.158 INFO    ] No update needed
[2026-06-22 18:00:57,160.160 INFO    ] Checking for camera pi updates...
[2026-06-22 18:00:57,181.181 INFO    ] 200
[2026-06-22 18:00:57,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:00:57,228.228 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:00:57,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:00:57,320.320 INFO    ] No camera update needed
[2026-06-22 18:00:57,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:00:57,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:00:57,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:00:57,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:00:59,381.381 INFO    ] ================================================
[2026-06-22 18:00:59,399.399 INFO    ] Launching Daemon at Mon Jun 22 18:00:59 IST 2026
[2026-06-22 18:00:59,410.410 INFO    ] ================================================
[2026-06-22 18:01:00,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:01:00
[2026-06-22 18:01:00,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:01:00,928.928 INFO    ] Initializing speech engine...
[2026-06-22 18:01:00,953.953 INFO    ] 2026-06-22 18:01:00
[2026-06-22 18:01:01,230.230 INFO    ] 2026-06-22 18:01:01
[2026-06-22 18:01:01,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:01:01,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:01:01,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:01:01,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:01:01,677.677 INFO    ] time= 22/06/2026 18:01:01
[2026-06-22 18:01:01,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:01:01,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:01:01,789.789 INFO    ] No existing commands found in stream
[2026-06-22 18:01:06,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:01:06,802.802 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-22 18:01:09,901.901 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:01:09,903.903 INFO    ] Checking for system updates...
[2026-06-22 18:01:09,939.939 INFO    ] 200
[2026-06-22 18:01:09,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:01:09,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:01:10,000.000 INFO    ] No update needed
[2026-06-22 18:01:10,002.002 INFO    ] Checking for camera pi updates...
[2026-06-22 18:01:10,035.035 INFO    ] 200
[2026-06-22 18:01:10,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:01:10,081.081 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:01:10,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:01:10,170.170 INFO    ] No camera update needed
[2026-06-22 18:01:10,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:01:10,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:01:10,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:01:10,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:01:12,226.226 INFO    ] ================================================
[2026-06-22 18:01:12,242.242 INFO    ] Launching Daemon at Mon Jun 22 18:01:12 IST 2026
[2026-06-22 18:01:12,253.253 INFO    ] ================================================
[2026-06-22 18:01:12,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:01:12
[2026-06-22 18:01:13,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:01:13,679.679 INFO    ] Initializing speech engine...
[2026-06-22 18:01:13,700.700 INFO    ] 2026-06-22 18:01:13
[2026-06-22 18:01:13,960.960 INFO    ] 2026-06-22 18:01:13
[2026-06-22 18:01:13,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:01:14,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:01:14,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:01:14,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:01:14,364.364 INFO    ] time= 22/06/2026 18:01:14
[2026-06-22 18:01:14,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:01:14,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:01:14,567.567 INFO    ] No existing commands found in stream
[2026-06-22 18:01:19,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:01:19,593.593 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-22 18:01:23,063.063 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:01:23,065.065 INFO    ] Checking for system updates...
[2026-06-22 18:01:23,086.086 INFO    ] 200
[2026-06-22 18:01:23,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:01:23,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:01:23,127.127 INFO    ] No update needed
[2026-06-22 18:01:23,129.129 INFO    ] Checking for camera pi updates...
[2026-06-22 18:01:23,163.163 INFO    ] 200
[2026-06-22 18:01:23,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:01:23,212.212 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:01:23,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:01:23,283.283 INFO    ] No camera update needed
[2026-06-22 18:01:23,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:01:23,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:01:23,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:01:23,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:01:25,338.338 INFO    ] ================================================
[2026-06-22 18:01:25,353.353 INFO    ] Launching Daemon at Mon Jun 22 18:01:25 IST 2026
[2026-06-22 18:01:25,364.364 INFO    ] ================================================
[2026-06-22 18:01:25,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:01:25
[2026-06-22 18:01:26,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:01:26,803.803 INFO    ] Initializing speech engine...
[2026-06-22 18:01:26,811.811 INFO    ] 2026-06-22 18:01:26
[2026-06-22 18:01:27,097.097 INFO    ] 2026-06-22 18:01:27
[2026-06-22 18:01:27,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:01:27,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:01:27,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:01:27,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:01:27,630.630 INFO    ] time= 22/06/2026 18:01:27
[2026-06-22 18:01:27,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:01:27,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:01:27,776.776 INFO    ] No existing commands found in stream
[2026-06-22 18:01:32,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:01:32,789.789 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-22 18:01:36,330.330 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:01:36,331.331 INFO    ] Checking for system updates...
[2026-06-22 18:01:36,352.352 INFO    ] 200
[2026-06-22 18:01:36,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:01:36,384.384 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:01:36,385.385 INFO    ] No update needed
[2026-06-22 18:01:36,386.386 INFO    ] Checking for camera pi updates...
[2026-06-22 18:01:36,406.406 INFO    ] 200
[2026-06-22 18:01:36,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:01:36,439.439 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:01:36,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:01:36,521.521 INFO    ] No camera update needed
[2026-06-22 18:01:36,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:01:36,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:01:36,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:01:36,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:01:38,577.577 INFO    ] ================================================
[2026-06-22 18:01:38,592.592 INFO    ] Launching Daemon at Mon Jun 22 18:01:38 IST 2026
[2026-06-22 18:01:38,604.604 INFO    ] ================================================
[2026-06-22 18:01:39,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:01:39
[2026-06-22 18:01:39,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:01:40,016.016 INFO    ] Initializing speech engine...
[2026-06-22 18:01:40,035.035 INFO    ] 2026-06-22 18:01:40
[2026-06-22 18:01:40,294.294 INFO    ] 2026-06-22 18:01:40
[2026-06-22 18:01:40,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:01:40,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:01:40,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:01:40,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:01:40,775.775 INFO    ] time= 22/06/2026 18:01:40
[2026-06-22 18:01:40,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:01:40,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:01:40,977.977 INFO    ] No existing commands found in stream
[2026-06-22 18:01:45,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:01:45,995.995 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-22 18:01:47,251.251 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:01:47,254.254 INFO    ] Checking for system updates...
[2026-06-22 18:01:47,292.292 INFO    ] 200
[2026-06-22 18:01:47,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:01:47,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:01:47,350.350 INFO    ] No update needed
[2026-06-22 18:01:47,352.352 INFO    ] Checking for camera pi updates...
[2026-06-22 18:01:47,386.386 INFO    ] 200
[2026-06-22 18:01:47,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:01:47,433.433 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:01:47,608.608 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:01:47,611.611 INFO    ] No camera update needed
[2026-06-22 18:01:47,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:01:47,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:01:47,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:01:47,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:01:49,666.666 INFO    ] ================================================
[2026-06-22 18:01:49,681.681 INFO    ] Launching Daemon at Mon Jun 22 18:01:49 IST 2026
[2026-06-22 18:01:49,692.692 INFO    ] ================================================
[2026-06-22 18:01:50,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:01:50
[2026-06-22 18:01:50,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:01:51,132.132 INFO    ] Initializing speech engine...
[2026-06-22 18:01:51,141.141 INFO    ] 2026-06-22 18:01:51
[2026-06-22 18:01:51,430.430 INFO    ] 2026-06-22 18:01:51
[2026-06-22 18:01:51,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:01:51,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:01:51,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:01:51,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:01:51,957.957 INFO    ] time= 22/06/2026 18:01:51
[2026-06-22 18:01:52,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:01:52,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:01:52,180.180 INFO    ] No existing commands found in stream
[2026-06-22 18:01:57,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:01:57,210.210 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-22 18:01:59,120.120 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:01:59,121.121 INFO    ] Checking for system updates...
[2026-06-22 18:01:59,151.151 INFO    ] 200
[2026-06-22 18:01:59,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:01:59,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:01:59,212.212 INFO    ] No update needed
[2026-06-22 18:01:59,214.214 INFO    ] Checking for camera pi updates...
[2026-06-22 18:01:59,250.250 INFO    ] 200
[2026-06-22 18:01:59,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:01:59,293.293 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:01:59,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:01:59,376.376 INFO    ] No camera update needed
[2026-06-22 18:01:59,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:01:59,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:01:59,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:01:59,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:02:01,430.430 INFO    ] ================================================
[2026-06-22 18:02:01,446.446 INFO    ] Launching Daemon at Mon Jun 22 18:02:01 IST 2026
[2026-06-22 18:02:01,462.462 INFO    ] ================================================
[2026-06-22 18:02:02,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:02:02
[2026-06-22 18:02:02,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:02:03,101.101 INFO    ] Initializing speech engine...
[2026-06-22 18:02:03,123.123 INFO    ] 2026-06-22 18:02:03
[2026-06-22 18:02:03,424.424 INFO    ] 2026-06-22 18:02:03
[2026-06-22 18:02:03,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:02:03,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:02:03,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:02:03,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:02:04,000.000 INFO    ] time= 22/06/2026 18:02:03
[2026-06-22 18:02:04,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:02:04,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:02:04,210.210 INFO    ] No existing commands found in stream
[2026-06-22 18:02:09,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:02:09,245.245 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-22 18:02:13,569.569 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:02:13,571.571 INFO    ] Checking for system updates...
[2026-06-22 18:02:13,608.608 INFO    ] 200
[2026-06-22 18:02:13,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:02:13,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:02:13,671.671 INFO    ] No update needed
[2026-06-22 18:02:13,674.674 INFO    ] Checking for camera pi updates...
[2026-06-22 18:02:13,709.709 INFO    ] 200
[2026-06-22 18:02:13,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:02:13,752.752 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:02:13,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:02:13,843.843 INFO    ] No camera update needed
[2026-06-22 18:02:13,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:02:13,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:02:13,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:02:13,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:02:15,902.902 INFO    ] ================================================
[2026-06-22 18:02:15,918.918 INFO    ] Launching Daemon at Mon Jun 22 18:02:15 IST 2026
[2026-06-22 18:02:15,929.929 INFO    ] ================================================
[2026-06-22 18:02:16,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:02:16
[2026-06-22 18:02:17,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:02:17,351.351 INFO    ] Initializing speech engine...
[2026-06-22 18:02:17,364.364 INFO    ] 2026-06-22 18:02:17
[2026-06-22 18:02:17,612.612 INFO    ] 2026-06-22 18:02:17
[2026-06-22 18:02:17,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:02:17,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:02:17,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:02:18,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:02:18,125.125 INFO    ] time= 22/06/2026 18:02:18
[2026-06-22 18:02:18,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:02:18,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:02:18,324.324 INFO    ] No existing commands found in stream
[2026-06-22 18:02:23,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:02:23,349.349 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-22 18:02:24,036.036 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:02:24,039.039 INFO    ] Checking for system updates...
[2026-06-22 18:02:24,078.078 INFO    ] 200
[2026-06-22 18:02:24,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:02:24,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:02:24,140.140 INFO    ] No update needed
[2026-06-22 18:02:24,142.142 INFO    ] Checking for camera pi updates...
[2026-06-22 18:02:24,178.178 INFO    ] 200
[2026-06-22 18:02:24,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:02:24,221.221 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:02:24,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:02:24,313.313 INFO    ] No camera update needed
[2026-06-22 18:02:24,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:02:24,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:02:24,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:02:24,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:02:26,375.375 INFO    ] ================================================
[2026-06-22 18:02:26,390.390 INFO    ] Launching Daemon at Mon Jun 22 18:02:26 IST 2026
[2026-06-22 18:02:26,401.401 INFO    ] ================================================
[2026-06-22 18:02:26,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:02:26
[2026-06-22 18:02:27,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:02:27,784.784 INFO    ] Initializing speech engine...
[2026-06-22 18:02:27,793.793 INFO    ] 2026-06-22 18:02:27
[2026-06-22 18:02:28,059.059 INFO    ] 2026-06-22 18:02:28
[2026-06-22 18:02:28,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:02:28,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:02:28,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:02:28,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:02:28,462.462 INFO    ] time= 22/06/2026 18:02:28
[2026-06-22 18:02:28,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:02:28,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:02:28,544.544 INFO    ] No existing commands found in stream
[2026-06-22 18:02:33,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:02:33,560.560 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-22 18:02:37,789.789 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:02:37,791.791 INFO    ] Checking for system updates...
[2026-06-22 18:02:37,827.827 INFO    ] 200
[2026-06-22 18:02:37,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:02:37,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:02:37,890.890 INFO    ] No update needed
[2026-06-22 18:02:37,893.893 INFO    ] Checking for camera pi updates...
[2026-06-22 18:02:37,927.927 INFO    ] 200
[2026-06-22 18:02:37,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:02:37,984.984 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:02:38,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:02:38,075.075 INFO    ] No camera update needed
[2026-06-22 18:02:38,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:02:38,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:02:38,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:02:38,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:02:40,131.131 INFO    ] ================================================
[2026-06-22 18:02:40,147.147 INFO    ] Launching Daemon at Mon Jun 22 18:02:40 IST 2026
[2026-06-22 18:02:40,157.157 INFO    ] ================================================
[2026-06-22 18:02:40,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:02:40
[2026-06-22 18:02:41,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:02:41,529.529 INFO    ] Initializing speech engine...
[2026-06-22 18:02:41,543.543 INFO    ] 2026-06-22 18:02:41
[2026-06-22 18:02:41,819.819 INFO    ] 2026-06-22 18:02:41
[2026-06-22 18:02:41,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:02:42,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:02:42,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:02:42,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:02:42,310.310 INFO    ] time= 22/06/2026 18:02:42
[2026-06-22 18:02:42,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:02:42,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:02:42,462.462 INFO    ] No existing commands found in stream
[2026-06-22 18:02:47,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:02:47,488.488 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-22 18:02:49,023.023 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:02:49,025.025 INFO    ] Checking for system updates...
[2026-06-22 18:02:49,045.045 INFO    ] 200
[2026-06-22 18:02:49,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:02:49,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:02:49,080.080 INFO    ] No update needed
[2026-06-22 18:02:49,082.082 INFO    ] Checking for camera pi updates...
[2026-06-22 18:02:49,115.115 INFO    ] 200
[2026-06-22 18:02:49,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:02:49,158.158 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:02:49,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:02:49,212.212 INFO    ] No camera update needed
[2026-06-22 18:02:49,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:02:49,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:02:49,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:02:49,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:02:51,269.269 INFO    ] ================================================
[2026-06-22 18:02:51,284.284 INFO    ] Launching Daemon at Mon Jun 22 18:02:51 IST 2026
[2026-06-22 18:02:51,295.295 INFO    ] ================================================
[2026-06-22 18:02:51,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:02:51
[2026-06-22 18:02:52,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:02:52,681.681 INFO    ] Initializing speech engine...
[2026-06-22 18:02:52,688.688 INFO    ] 2026-06-22 18:02:52
[2026-06-22 18:02:52,951.951 INFO    ] 2026-06-22 18:02:52
[2026-06-22 18:02:52,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:02:54,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:02:54,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:02:54,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:02:54,428.428 INFO    ] time= 22/06/2026 18:02:54
[2026-06-22 18:02:54,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:02:54,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:02:54,512.512 INFO    ] No existing commands found in stream
[2026-06-22 18:02:59,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:02:59,526.526 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-22 18:03:02,860.860 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 18:03:02,863.863 INFO    ] Checking for system updates...
[2026-06-22 18:03:02,912.912 INFO    ] 200
[2026-06-22 18:03:02,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:03:03,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:03:03,013.013 INFO    ] No update needed
[2026-06-22 18:03:03,018.018 INFO    ] Checking for camera pi updates...
[2026-06-22 18:03:03,074.074 INFO    ] 200
[2026-06-22 18:03:03,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:03:03,141.141 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:03:03,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:03:03,247.247 INFO    ] No camera update needed
[2026-06-22 18:03:03,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:03:03,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:03:03,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:03:03,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:03:05,309.309 INFO    ] ================================================
[2026-06-22 18:03:05,324.324 INFO    ] Launching Daemon at Mon Jun 22 18:03:05 IST 2026
[2026-06-22 18:03:05,335.335 INFO    ] ================================================
[2026-06-22 18:03:05,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:03:05
[2026-06-22 18:03:06,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:03:06,689.689 INFO    ] Initializing speech engine...
[2026-06-22 18:03:06,698.698 INFO    ] 2026-06-22 18:03:06
[2026-06-22 18:03:06,997.997 INFO    ] 2026-06-22 18:03:06
[2026-06-22 18:03:07,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:03:07,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:03:07,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:03:07,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:03:07,381.381 INFO    ] time= 22/06/2026 18:03:07
[2026-06-22 18:03:07,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:03:07,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:03:07,510.510 INFO    ] No existing commands found in stream
[2026-06-22 18:03:12,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:03:12,526.526 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-22 18:03:13,079.079 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 18:03:13,080.080 INFO    ] Checking for system updates...
[2026-06-22 18:03:13,105.105 INFO    ] 200
[2026-06-22 18:03:13,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:03:13,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:03:13,176.176 INFO    ] No update needed
[2026-06-22 18:03:13,179.179 INFO    ] Checking for camera pi updates...
[2026-06-22 18:03:13,223.223 INFO    ] 200
[2026-06-22 18:03:13,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:03:13,271.271 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:03:13,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:03:13,351.351 INFO    ] No camera update needed
[2026-06-22 18:03:13,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:03:13,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:03:13,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:03:13,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:03:15,406.406 INFO    ] ================================================
[2026-06-22 18:03:15,422.422 INFO    ] Launching Daemon at Mon Jun 22 18:03:15 IST 2026
[2026-06-22 18:03:15,433.433 INFO    ] ================================================
[2026-06-22 18:03:16,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:03:16
[2026-06-22 18:03:16,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:03:16,753.753 INFO    ] Initializing speech engine...
[2026-06-22 18:03:16,776.776 INFO    ] 2026-06-22 18:03:16
[2026-06-22 18:03:17,034.034 INFO    ] 2026-06-22 18:03:17
[2026-06-22 18:03:17,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:03:17,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:03:17,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:03:17,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:03:17,586.586 INFO    ] time= 22/06/2026 18:03:17
[2026-06-22 18:03:17,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:03:17,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:03:17,744.744 INFO    ] No existing commands found in stream
[2026-06-22 18:03:22,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:03:22,778.778 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-22 18:03:25,031.031 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:03:25,032.032 INFO    ] Checking for system updates...
[2026-06-22 18:03:25,055.055 INFO    ] 200
[2026-06-22 18:03:25,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:03:25,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:03:25,090.090 INFO    ] No update needed
[2026-06-22 18:03:25,091.091 INFO    ] Checking for camera pi updates...
[2026-06-22 18:03:25,117.117 INFO    ] 200
[2026-06-22 18:03:25,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:03:25,165.165 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:03:25,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:03:25,254.254 INFO    ] No camera update needed
[2026-06-22 18:03:25,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:03:25,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:03:25,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:03:25,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:03:27,313.313 INFO    ] ================================================
[2026-06-22 18:03:27,329.329 INFO    ] Launching Daemon at Mon Jun 22 18:03:27 IST 2026
[2026-06-22 18:03:27,340.340 INFO    ] ================================================
[2026-06-22 18:03:27,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:03:27
[2026-06-22 18:03:28,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:03:28,926.926 INFO    ] Initializing speech engine...
[2026-06-22 18:03:28,940.940 INFO    ] 2026-06-22 18:03:28
[2026-06-22 18:03:29,232.232 INFO    ] 2026-06-22 18:03:29
[2026-06-22 18:03:29,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:03:29,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:03:29,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:03:29,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:03:29,708.708 INFO    ] time= 22/06/2026 18:03:29
[2026-06-22 18:03:29,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:03:29,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:03:29,899.899 INFO    ] No existing commands found in stream
[2026-06-22 18:03:34,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:03:34,925.925 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-22 18:03:36,515.515 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:03:36,517.517 INFO    ] Checking for system updates...
[2026-06-22 18:03:36,538.538 INFO    ] 200
[2026-06-22 18:03:36,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:03:36,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:03:36,571.571 INFO    ] No update needed
[2026-06-22 18:03:36,572.572 INFO    ] Checking for camera pi updates...
[2026-06-22 18:03:36,593.593 INFO    ] 200
[2026-06-22 18:03:36,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:03:36,627.627 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:03:36,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:03:36,721.721 INFO    ] No camera update needed
[2026-06-22 18:03:36,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:03:36,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:03:36,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:03:36,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:03:38,781.781 INFO    ] ================================================
[2026-06-22 18:03:38,796.796 INFO    ] Launching Daemon at Mon Jun 22 18:03:38 IST 2026
[2026-06-22 18:03:38,807.807 INFO    ] ================================================
[2026-06-22 18:03:39,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:03:39
[2026-06-22 18:03:39,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:03:40,097.097 INFO    ] Initializing speech engine...
[2026-06-22 18:03:40,106.106 INFO    ] 2026-06-22 18:03:40
[2026-06-22 18:03:40,365.365 INFO    ] 2026-06-22 18:03:40
[2026-06-22 18:03:40,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:03:45,478.478 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-06-22 18:03:45,505.505 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-22 18:03:45,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:03:45,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:03:45,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:03:47,558.558 INFO    ] ================================================
[2026-06-22 18:03:47,573.573 INFO    ] Launching Daemon at Mon Jun 22 18:03:47 IST 2026
[2026-06-22 18:03:47,584.584 INFO    ] ================================================
[2026-06-22 18:03:48,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:03:48
[2026-06-22 18:03:48,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:03:48,975.975 INFO    ] Initializing speech engine...
[2026-06-22 18:03:48,983.983 INFO    ] 2026-06-22 18:03:48
[2026-06-22 18:03:49,254.254 INFO    ] 2026-06-22 18:03:49
[2026-06-22 18:03:49,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:03:49,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:03:49,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:03:49,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:03:49,805.805 INFO    ] time= 22/06/2026 18:03:49
[2026-06-22 18:03:49,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:03:49,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:03:54,841.841 INFO    ] Error reading historical messages: Timeout reading from socket
[2026-06-22 18:03:59,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:03:59,879.879 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-22 18:04:01,609.609 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:04:01,615.615 INFO    ] Checking for system updates...
[2026-06-22 18:04:01,702.702 INFO    ] 200
[2026-06-22 18:04:01,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:04:01,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:04:01,800.800 INFO    ] No update needed
[2026-06-22 18:04:01,804.804 INFO    ] Checking for camera pi updates...
[2026-06-22 18:04:01,879.879 INFO    ] 200
[2026-06-22 18:04:01,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:04:01,941.941 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:04:02,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:04:02,147.147 INFO    ] No camera update needed
[2026-06-22 18:04:02,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:04:02,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:04:02,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:04:02,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:04:04,213.213 INFO    ] ================================================
[2026-06-22 18:04:04,229.229 INFO    ] Launching Daemon at Mon Jun 22 18:04:04 IST 2026
[2026-06-22 18:04:04,239.239 INFO    ] ================================================
[2026-06-22 18:04:04,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:04:04
[2026-06-22 18:04:05,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:04:05,667.667 INFO    ] Initializing speech engine...
[2026-06-22 18:04:05,677.677 INFO    ] 2026-06-22 18:04:05
[2026-06-22 18:04:05,928.928 INFO    ] 2026-06-22 18:04:05
[2026-06-22 18:04:05,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:04:06,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:04:06,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:04:06,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:04:06,306.306 INFO    ] time= 22/06/2026 18:04:06
[2026-06-22 18:04:06,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:04:06,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:04:06,405.405 INFO    ] No existing commands found in stream
[2026-06-22 18:04:11,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:04:11,434.434 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-22 18:04:14,815.815 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:04:14,817.817 INFO    ] Checking for system updates...
[2026-06-22 18:04:14,858.858 INFO    ] 200
[2026-06-22 18:04:14,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:04:14,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:04:14,918.918 INFO    ] No update needed
[2026-06-22 18:04:14,921.921 INFO    ] Checking for camera pi updates...
[2026-06-22 18:04:14,959.959 INFO    ] 200
[2026-06-22 18:04:14,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:04:15,007.007 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:04:15,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:04:15,107.107 INFO    ] No camera update needed
[2026-06-22 18:04:15,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:04:15,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:04:15,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:04:15,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:04:17,164.164 INFO    ] ================================================
[2026-06-22 18:04:17,180.180 INFO    ] Launching Daemon at Mon Jun 22 18:04:17 IST 2026
[2026-06-22 18:04:17,191.191 INFO    ] ================================================
[2026-06-22 18:04:17,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:04:17
[2026-06-22 18:04:18,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:04:18,565.565 INFO    ] Initializing speech engine...
[2026-06-22 18:04:18,579.579 INFO    ] 2026-06-22 18:04:18
[2026-06-22 18:04:18,827.827 INFO    ] 2026-06-22 18:04:18
[2026-06-22 18:04:18,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:04:19,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:04:19,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:04:19,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:04:19,309.309 INFO    ] time= 22/06/2026 18:04:19
[2026-06-22 18:04:19,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:04:19,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:04:19,462.462 INFO    ] No existing commands found in stream
[2026-06-22 18:04:24,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:04:24,478.478 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-22 18:04:26,564.564 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 18:04:26,566.566 INFO    ] Checking for system updates...
[2026-06-22 18:04:26,609.609 INFO    ] 200
[2026-06-22 18:04:26,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:04:26,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:04:26,667.667 INFO    ] No update needed
[2026-06-22 18:04:26,669.669 INFO    ] Checking for camera pi updates...
[2026-06-22 18:04:26,703.703 INFO    ] 200
[2026-06-22 18:04:26,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:04:26,747.747 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:04:26,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:04:26,828.828 INFO    ] No camera update needed
[2026-06-22 18:04:26,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:04:26,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:04:26,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:04:26,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:04:28,884.884 INFO    ] ================================================
[2026-06-22 18:04:28,899.899 INFO    ] Launching Daemon at Mon Jun 22 18:04:28 IST 2026
[2026-06-22 18:04:28,910.910 INFO    ] ================================================
[2026-06-22 18:04:29,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:04:29
[2026-06-22 18:04:30,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:04:30,286.286 INFO    ] Initializing speech engine...
[2026-06-22 18:04:30,295.295 INFO    ] 2026-06-22 18:04:30
[2026-06-22 18:04:30,546.546 INFO    ] 2026-06-22 18:04:30
[2026-06-22 18:04:30,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:04:30,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:04:30,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:04:30,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:04:31,029.029 INFO    ] time= 22/06/2026 18:04:30
[2026-06-22 18:04:31,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:04:31,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:04:31,195.195 INFO    ] No existing commands found in stream
[2026-06-22 18:04:36,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:04:36,235.235 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-22 18:04:38,104.104 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:04:38,107.107 INFO    ] Checking for system updates...
[2026-06-22 18:04:38,143.143 INFO    ] 200
[2026-06-22 18:04:38,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:04:38,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:04:38,201.201 INFO    ] No update needed
[2026-06-22 18:04:38,204.204 INFO    ] Checking for camera pi updates...
[2026-06-22 18:04:38,241.241 INFO    ] 200
[2026-06-22 18:04:38,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:04:38,289.289 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:04:38,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:04:38,372.372 INFO    ] No camera update needed
[2026-06-22 18:04:38,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:04:38,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:04:38,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:04:38,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:04:40,428.428 INFO    ] ================================================
[2026-06-22 18:04:40,443.443 INFO    ] Launching Daemon at Mon Jun 22 18:04:40 IST 2026
[2026-06-22 18:04:40,453.453 INFO    ] ================================================
[2026-06-22 18:04:40,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:04:40
[2026-06-22 18:04:41,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:04:41,825.825 INFO    ] Initializing speech engine...
[2026-06-22 18:04:41,839.839 INFO    ] 2026-06-22 18:04:41
[2026-06-22 18:04:42,101.101 INFO    ] 2026-06-22 18:04:42
[2026-06-22 18:04:42,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:04:42,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:04:42,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:04:42,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:04:42,567.567 INFO    ] time= 22/06/2026 18:04:42
[2026-06-22 18:04:42,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:04:42,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:04:42,719.719 INFO    ] No existing commands found in stream
[2026-06-22 18:04:47,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:04:47,736.736 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-22 18:04:50,356.356 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:04:50,359.359 INFO    ] Checking for system updates...
[2026-06-22 18:04:50,382.382 INFO    ] 200
[2026-06-22 18:04:50,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:04:50,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:04:50,415.415 INFO    ] No update needed
[2026-06-22 18:04:50,417.417 INFO    ] Checking for camera pi updates...
[2026-06-22 18:04:50,436.436 INFO    ] 200
[2026-06-22 18:04:50,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:04:50,462.462 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:04:50,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:04:50,519.519 INFO    ] No camera update needed
[2026-06-22 18:04:50,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:04:50,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:04:50,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:04:50,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:04:52,579.579 INFO    ] ================================================
[2026-06-22 18:04:52,594.594 INFO    ] Launching Daemon at Mon Jun 22 18:04:52 IST 2026
[2026-06-22 18:04:52,605.605 INFO    ] ================================================
[2026-06-22 18:04:53,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:04:53
[2026-06-22 18:04:53,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:04:54,125.125 INFO    ] Initializing speech engine...
[2026-06-22 18:04:54,133.133 INFO    ] 2026-06-22 18:04:54
[2026-06-22 18:04:54,422.422 INFO    ] 2026-06-22 18:04:54
[2026-06-22 18:04:54,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:04:54,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:04:54,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:04:54,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:04:54,885.885 INFO    ] time= 22/06/2026 18:04:54
[2026-06-22 18:04:54,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:04:54,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:04:55,036.036 INFO    ] No existing commands found in stream
[2026-06-22 18:05:00,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:05:00,051.051 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-22 18:05:03,942.942 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:05:03,945.945 INFO    ] Checking for system updates...
[2026-06-22 18:05:03,983.983 INFO    ] 200
[2026-06-22 18:05:03,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:05:04,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:05:04,044.044 INFO    ] No update needed
[2026-06-22 18:05:04,047.047 INFO    ] Checking for camera pi updates...
[2026-06-22 18:05:04,082.082 INFO    ] 200
[2026-06-22 18:05:04,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:05:04,128.128 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:05:04,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:05:04,233.233 INFO    ] No camera update needed
[2026-06-22 18:05:04,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:05:04,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:05:04,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:05:04,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:05:06,293.293 INFO    ] ================================================
[2026-06-22 18:05:06,312.312 INFO    ] Launching Daemon at Mon Jun 22 18:05:06 IST 2026
[2026-06-22 18:05:06,323.323 INFO    ] ================================================
[2026-06-22 18:05:06,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:05:06
[2026-06-22 18:05:07,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:05:07,738.738 INFO    ] Initializing speech engine...
[2026-06-22 18:05:07,751.751 INFO    ] 2026-06-22 18:05:07
[2026-06-22 18:05:08,042.042 INFO    ] 2026-06-22 18:05:08
[2026-06-22 18:05:08,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:05:08,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:05:08,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:05:08,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:05:08,417.417 INFO    ] time= 22/06/2026 18:05:08
[2026-06-22 18:05:08,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:05:08,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:05:08,539.539 INFO    ] No existing commands found in stream
[2026-06-22 18:05:13,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:05:13,554.554 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-22 18:05:16,454.454 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:05:16,456.456 INFO    ] Checking for system updates...
[2026-06-22 18:05:16,492.492 INFO    ] 200
[2026-06-22 18:05:16,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:05:16,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:05:16,559.559 INFO    ] No update needed
[2026-06-22 18:05:16,562.562 INFO    ] Checking for camera pi updates...
[2026-06-22 18:05:16,599.599 INFO    ] 200
[2026-06-22 18:05:16,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:05:16,642.642 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:05:16,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:05:16,744.744 INFO    ] No camera update needed
[2026-06-22 18:05:16,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:05:16,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:05:16,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:05:16,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:05:18,800.800 INFO    ] ================================================
[2026-06-22 18:05:18,816.816 INFO    ] Launching Daemon at Mon Jun 22 18:05:18 IST 2026
[2026-06-22 18:05:18,826.826 INFO    ] ================================================
[2026-06-22 18:05:19,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:05:19
[2026-06-22 18:05:19,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:05:20,226.226 INFO    ] Initializing speech engine...
[2026-06-22 18:05:20,235.235 INFO    ] 2026-06-22 18:05:20
[2026-06-22 18:05:20,527.527 INFO    ] 2026-06-22 18:05:20
[2026-06-22 18:05:20,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:05:20,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:05:20,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:05:20,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:05:20,922.922 INFO    ] time= 22/06/2026 18:05:20
[2026-06-22 18:05:20,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:05:20,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:05:21,035.035 INFO    ] No existing commands found in stream
[2026-06-22 18:05:26,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:05:26,067.067 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-22 18:05:27,629.629 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:05:27,631.631 INFO    ] Checking for system updates...
[2026-06-22 18:05:27,652.652 INFO    ] 200
[2026-06-22 18:05:27,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:05:27,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:05:27,686.686 INFO    ] No update needed
[2026-06-22 18:05:27,688.688 INFO    ] Checking for camera pi updates...
[2026-06-22 18:05:27,715.715 INFO    ] 200
[2026-06-22 18:05:27,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:05:27,761.761 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:05:27,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:05:27,855.855 INFO    ] No camera update needed
[2026-06-22 18:05:27,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:05:27,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:05:27,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:05:27,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:05:29,911.911 INFO    ] ================================================
[2026-06-22 18:05:29,927.927 INFO    ] Launching Daemon at Mon Jun 22 18:05:29 IST 2026
[2026-06-22 18:05:29,937.937 INFO    ] ================================================
[2026-06-22 18:05:30,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:05:30
[2026-06-22 18:05:31,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:05:31,435.435 INFO    ] Initializing speech engine...
[2026-06-22 18:05:31,444.444 INFO    ] 2026-06-22 18:05:31
[2026-06-22 18:05:31,719.719 INFO    ] 2026-06-22 18:05:31
[2026-06-22 18:05:31,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:05:32,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:05:32,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:05:32,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:05:32,227.227 INFO    ] time= 22/06/2026 18:05:32
[2026-06-22 18:05:32,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:05:32,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:05:32,436.436 INFO    ] No existing commands found in stream
[2026-06-22 18:05:37,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:05:37,480.480 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-22 18:05:40,647.647 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:05:40,650.650 INFO    ] Checking for system updates...
[2026-06-22 18:05:40,688.688 INFO    ] 200
[2026-06-22 18:05:40,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:05:40,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:05:40,747.747 INFO    ] No update needed
[2026-06-22 18:05:40,750.750 INFO    ] Checking for camera pi updates...
[2026-06-22 18:05:40,789.789 INFO    ] 200
[2026-06-22 18:05:40,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:05:40,833.833 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:05:40,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:05:40,924.924 INFO    ] No camera update needed
[2026-06-22 18:05:40,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:05:40,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:05:40,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:05:40,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:05:42,986.986 INFO    ] ================================================
[2026-06-22 18:05:43,003.003 INFO    ] Launching Daemon at Mon Jun 22 18:05:42 IST 2026
[2026-06-22 18:05:43,016.016 INFO    ] ================================================
[2026-06-22 18:05:43,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:05:43
[2026-06-22 18:05:44,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:05:44,553.553 INFO    ] Initializing speech engine...
[2026-06-22 18:05:44,568.568 INFO    ] 2026-06-22 18:05:44
[2026-06-22 18:05:44,877.877 INFO    ] 2026-06-22 18:05:44
[2026-06-22 18:05:44,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:05:45,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:05:45,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:05:45,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:05:45,265.265 INFO    ] time= 22/06/2026 18:05:45
[2026-06-22 18:05:45,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:05:45,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:05:45,391.391 INFO    ] No existing commands found in stream
[2026-06-22 18:05:50,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:05:50,406.406 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-22 18:05:51,572.572 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:05:51,575.575 INFO    ] Checking for system updates...
[2026-06-22 18:05:51,611.611 INFO    ] 200
[2026-06-22 18:05:51,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:05:51,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:05:51,669.669 INFO    ] No update needed
[2026-06-22 18:05:51,671.671 INFO    ] Checking for camera pi updates...
[2026-06-22 18:05:51,706.706 INFO    ] 200
[2026-06-22 18:05:51,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:05:51,749.749 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:05:51,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:05:51,839.839 INFO    ] No camera update needed
[2026-06-22 18:05:51,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:05:51,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:05:51,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:05:51,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:05:53,895.895 INFO    ] ================================================
[2026-06-22 18:05:53,914.914 INFO    ] Launching Daemon at Mon Jun 22 18:05:53 IST 2026
[2026-06-22 18:05:53,926.926 INFO    ] ================================================
[2026-06-22 18:05:54,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:05:54
[2026-06-22 18:05:55,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:05:55,559.559 INFO    ] Initializing speech engine...
[2026-06-22 18:05:55,567.567 INFO    ] 2026-06-22 18:05:55
[2026-06-22 18:05:55,857.857 INFO    ] 2026-06-22 18:05:55
[2026-06-22 18:05:55,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:05:56,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:05:56,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:05:56,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:05:56,334.334 INFO    ] time= 22/06/2026 18:05:56
[2026-06-22 18:05:56,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:05:56,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:05:56,498.498 INFO    ] No existing commands found in stream
[2026-06-22 18:06:01,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:06:01,514.514 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-22 18:06:02,921.921 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:06:02,925.925 INFO    ] Checking for system updates...
[2026-06-22 18:06:02,974.974 INFO    ] 200
[2026-06-22 18:06:02,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:06:03,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:06:03,040.040 INFO    ] No update needed
[2026-06-22 18:06:03,042.042 INFO    ] Checking for camera pi updates...
[2026-06-22 18:06:03,080.080 INFO    ] 200
[2026-06-22 18:06:03,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:06:03,128.128 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:06:03,185.185 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:06:03,188.188 INFO    ] No camera update needed
[2026-06-22 18:06:03,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:06:03,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:06:03,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:06:03,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:06:05,248.248 INFO    ] ================================================
[2026-06-22 18:06:05,264.264 INFO    ] Launching Daemon at Mon Jun 22 18:06:05 IST 2026
[2026-06-22 18:06:05,274.274 INFO    ] ================================================
[2026-06-22 18:06:05,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:06:05
[2026-06-22 18:06:06,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:06:06,826.826 INFO    ] Initializing speech engine...
[2026-06-22 18:06:06,836.836 INFO    ] 2026-06-22 18:06:06
[2026-06-22 18:06:07,100.100 INFO    ] 2026-06-22 18:06:07
[2026-06-22 18:06:07,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:06:07,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:06:07,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:06:07,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:06:07,481.481 INFO    ] time= 22/06/2026 18:06:07
[2026-06-22 18:06:07,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:06:07,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:06:07,606.606 INFO    ] No existing commands found in stream
[2026-06-22 18:06:12,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:06:12,621.621 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-22 18:06:16,775.775 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:06:16,777.777 INFO    ] Checking for system updates...
[2026-06-22 18:06:16,813.813 INFO    ] 200
[2026-06-22 18:06:16,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:06:16,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:06:16,870.870 INFO    ] No update needed
[2026-06-22 18:06:16,873.873 INFO    ] Checking for camera pi updates...
[2026-06-22 18:06:16,907.907 INFO    ] 200
[2026-06-22 18:06:16,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:06:16,950.950 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:06:17,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:06:17,139.139 INFO    ] No camera update needed
[2026-06-22 18:06:17,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:06:17,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:06:17,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:06:17,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:06:19,195.195 INFO    ] ================================================
[2026-06-22 18:06:19,210.210 INFO    ] Launching Daemon at Mon Jun 22 18:06:19 IST 2026
[2026-06-22 18:06:19,223.223 INFO    ] ================================================
[2026-06-22 18:06:19,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:06:19
[2026-06-22 18:06:20,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:06:20,575.575 INFO    ] Initializing speech engine...
[2026-06-22 18:06:20,584.584 INFO    ] 2026-06-22 18:06:20
[2026-06-22 18:06:20,841.841 INFO    ] 2026-06-22 18:06:20
[2026-06-22 18:06:20,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:06:21,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:06:21,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:06:21,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:06:21,183.183 INFO    ] time= 22/06/2026 18:06:21
[2026-06-22 18:06:21,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:06:21,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:06:21,264.264 INFO    ] No existing commands found in stream
[2026-06-22 18:06:26,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:06:26,279.279 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-22 18:06:27,156.156 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 18:06:27,159.159 INFO    ] Checking for system updates...
[2026-06-22 18:06:27,196.196 INFO    ] 200
[2026-06-22 18:06:27,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:06:27,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:06:27,260.260 INFO    ] No update needed
[2026-06-22 18:06:27,263.263 INFO    ] Checking for camera pi updates...
[2026-06-22 18:06:27,301.301 INFO    ] 200
[2026-06-22 18:06:27,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:06:27,349.349 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:06:27,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:06:27,421.421 INFO    ] No camera update needed
[2026-06-22 18:06:27,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:06:27,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:06:27,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:06:27,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:06:29,477.477 INFO    ] ================================================
[2026-06-22 18:06:29,493.493 INFO    ] Launching Daemon at Mon Jun 22 18:06:29 IST 2026
[2026-06-22 18:06:29,503.503 INFO    ] ================================================
[2026-06-22 18:06:30,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:06:30
[2026-06-22 18:06:30,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:06:30,953.953 INFO    ] Initializing speech engine...
[2026-06-22 18:06:30,965.965 INFO    ] 2026-06-22 18:06:30
[2026-06-22 18:06:31,214.214 INFO    ] 2026-06-22 18:06:31
[2026-06-22 18:06:31,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:06:31,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:06:31,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:06:31,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:06:31,583.583 INFO    ] time= 22/06/2026 18:06:31
[2026-06-22 18:06:31,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:06:31,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:06:31,680.680 INFO    ] No existing commands found in stream
[2026-06-22 18:06:36,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:06:36,696.696 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-22 18:06:37,973.973 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:06:37,976.976 INFO    ] Checking for system updates...
[2026-06-22 18:06:38,013.013 INFO    ] 200
[2026-06-22 18:06:38,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:06:38,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:06:38,075.075 INFO    ] No update needed
[2026-06-22 18:06:38,078.078 INFO    ] Checking for camera pi updates...
[2026-06-22 18:06:38,112.112 INFO    ] 200
[2026-06-22 18:06:38,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:06:38,155.155 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:06:38,237.237 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:06:38,239.239 INFO    ] No camera update needed
[2026-06-22 18:06:38,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:06:38,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:06:38,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:06:38,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:06:40,295.295 INFO    ] ================================================
[2026-06-22 18:06:40,310.310 INFO    ] Launching Daemon at Mon Jun 22 18:06:40 IST 2026
[2026-06-22 18:06:40,321.321 INFO    ] ================================================
[2026-06-22 18:06:40,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:06:40
[2026-06-22 18:06:41,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:06:41,831.831 INFO    ] Initializing speech engine...
[2026-06-22 18:06:41,841.841 INFO    ] 2026-06-22 18:06:41
[2026-06-22 18:06:42,106.106 INFO    ] 2026-06-22 18:06:42
[2026-06-22 18:06:42,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:06:42,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:06:42,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:06:42,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:06:42,510.510 INFO    ] time= 22/06/2026 18:06:42
[2026-06-22 18:06:42,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:06:42,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:06:42,591.591 INFO    ] No existing commands found in stream
[2026-06-22 18:06:47,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:06:47,607.607 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-22 18:06:50,335.335 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:06:50,338.338 INFO    ] Checking for system updates...
[2026-06-22 18:06:50,386.386 INFO    ] 200
[2026-06-22 18:06:50,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 18:06:50,391.391 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-22 18:06:50,394.394 INFO    ] Checking for camera pi updates...
[2026-06-22 18:06:50,438.438 INFO    ] 200
[2026-06-22 18:06:50,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 18:06:50,443.443 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-22 18:06:50,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:06:50,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:06:50,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:06:50,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:06:52,513.513 INFO    ] ================================================
[2026-06-22 18:06:52,534.534 INFO    ] Launching Daemon at Mon Jun 22 18:06:52 IST 2026
[2026-06-22 18:06:52,548.548 INFO    ] ================================================
[2026-06-22 18:06:53,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:06:53
[2026-06-22 18:06:53,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:06:54,070.070 INFO    ] Initializing speech engine...
[2026-06-22 18:06:54,077.077 INFO    ] 2026-06-22 18:06:54
[2026-06-22 18:06:54,364.364 INFO    ] 2026-06-22 18:06:54
[2026-06-22 18:06:54,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:06:54,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:06:54,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:06:54,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:06:54,808.808 INFO    ] time= 22/06/2026 18:06:54
[2026-06-22 18:06:54,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:06:54,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:06:54,960.960 INFO    ] No existing commands found in stream
[2026-06-22 18:06:59,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:06:59,973.973 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-22 18:07:01,184.184 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:07:01,187.187 INFO    ] Checking for system updates...
[2026-06-22 18:07:01,224.224 INFO    ] 200
[2026-06-22 18:07:01,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:07:01,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:07:01,281.281 INFO    ] No update needed
[2026-06-22 18:07:01,284.284 INFO    ] Checking for camera pi updates...
[2026-06-22 18:07:01,330.330 INFO    ] 200
[2026-06-22 18:07:01,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:07:01,440.440 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:07:01,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:07:01,532.532 INFO    ] No camera update needed
[2026-06-22 18:07:01,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:07:01,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:07:01,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:07:01,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:07:03,606.606 INFO    ] ================================================
[2026-06-22 18:07:03,621.621 INFO    ] Launching Daemon at Mon Jun 22 18:07:03 IST 2026
[2026-06-22 18:07:03,632.632 INFO    ] ================================================
[2026-06-22 18:07:04,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:07:04
[2026-06-22 18:07:04,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:07:05,260.260 INFO    ] Initializing speech engine...
[2026-06-22 18:07:05,271.271 INFO    ] 2026-06-22 18:07:05
[2026-06-22 18:07:05,564.564 INFO    ] 2026-06-22 18:07:05
[2026-06-22 18:07:05,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:07:05,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:07:05,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:07:06,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:07:06,110.110 INFO    ] time= 22/06/2026 18:07:06
[2026-06-22 18:07:06,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:07:06,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:07:06,257.257 INFO    ] No existing commands found in stream
[2026-06-22 18:07:11,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:07:11,291.291 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-22 18:07:13,451.451 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 18:07:13,453.453 INFO    ] Checking for system updates...
[2026-06-22 18:07:13,473.473 INFO    ] 200
[2026-06-22 18:07:13,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:07:13,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:07:13,506.506 INFO    ] No update needed
[2026-06-22 18:07:13,508.508 INFO    ] Checking for camera pi updates...
[2026-06-22 18:07:13,529.529 INFO    ] 200
[2026-06-22 18:07:13,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:07:13,572.572 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:07:13,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:07:13,656.656 INFO    ] No camera update needed
[2026-06-22 18:07:13,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:07:13,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:07:13,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:07:13,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:07:15,711.711 INFO    ] ================================================
[2026-06-22 18:07:15,727.727 INFO    ] Launching Daemon at Mon Jun 22 18:07:15 IST 2026
[2026-06-22 18:07:15,738.738 INFO    ] ================================================
[2026-06-22 18:07:16,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:07:16
[2026-06-22 18:07:16,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:07:17,187.187 INFO    ] Initializing speech engine...
[2026-06-22 18:07:17,193.193 INFO    ] 2026-06-22 18:07:17
[2026-06-22 18:07:17,441.441 INFO    ] 2026-06-22 18:07:17
[2026-06-22 18:07:17,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:07:17,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:07:17,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:07:17,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:07:17,916.916 INFO    ] time= 22/06/2026 18:07:17
[2026-06-22 18:07:17,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:07:18,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:07:18,070.070 INFO    ] No existing commands found in stream
[2026-06-22 18:07:23,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:07:23,087.087 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-22 18:07:26,109.109 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:07:26,112.112 INFO    ] Checking for system updates...
[2026-06-22 18:07:26,149.149 INFO    ] 200
[2026-06-22 18:07:26,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:07:26,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:07:26,207.207 INFO    ] No update needed
[2026-06-22 18:07:26,210.210 INFO    ] Checking for camera pi updates...
[2026-06-22 18:07:26,246.246 INFO    ] 200
[2026-06-22 18:07:26,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:07:26,296.296 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:07:26,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:07:26,384.384 INFO    ] No camera update needed
[2026-06-22 18:07:26,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:07:26,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:07:26,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:07:26,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:07:28,442.442 INFO    ] ================================================
[2026-06-22 18:07:28,465.465 INFO    ] Launching Daemon at Mon Jun 22 18:07:28 IST 2026
[2026-06-22 18:07:28,475.475 INFO    ] ================================================
[2026-06-22 18:07:28,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:07:28
[2026-06-22 18:07:29,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:07:29,812.812 INFO    ] Initializing speech engine...
[2026-06-22 18:07:29,821.821 INFO    ] 2026-06-22 18:07:29
[2026-06-22 18:07:30,112.112 INFO    ] 2026-06-22 18:07:30
[2026-06-22 18:07:30,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:07:30,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:07:30,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:07:30,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:07:30,527.527 INFO    ] time= 22/06/2026 18:07:30
[2026-06-22 18:07:30,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:07:30,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:07:30,610.610 INFO    ] No existing commands found in stream
[2026-06-22 18:07:35,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:07:35,626.626 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-22 18:07:38,829.829 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 18:07:38,831.831 INFO    ] Checking for system updates...
[2026-06-22 18:07:38,867.867 INFO    ] 200
[2026-06-22 18:07:38,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:07:38,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:07:38,925.925 INFO    ] No update needed
[2026-06-22 18:07:38,928.928 INFO    ] Checking for camera pi updates...
[2026-06-22 18:07:38,962.962 INFO    ] 200
[2026-06-22 18:07:38,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:07:39,005.005 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:07:39,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:07:39,089.089 INFO    ] No camera update needed
[2026-06-22 18:07:39,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:07:39,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:07:39,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:07:39,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:07:41,143.143 INFO    ] ================================================
[2026-06-22 18:07:41,158.158 INFO    ] Launching Daemon at Mon Jun 22 18:07:41 IST 2026
[2026-06-22 18:07:41,169.169 INFO    ] ================================================
[2026-06-22 18:07:41,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:07:41
[2026-06-22 18:07:42,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:07:42,818.818 INFO    ] Initializing speech engine...
[2026-06-22 18:07:42,831.831 INFO    ] 2026-06-22 18:07:42
[2026-06-22 18:07:43,102.102 INFO    ] 2026-06-22 18:07:43
[2026-06-22 18:07:43,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:07:43,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:07:43,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:07:43,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:07:43,628.628 INFO    ] time= 22/06/2026 18:07:43
[2026-06-22 18:07:43,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:07:43,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:07:43,752.752 INFO    ] No existing commands found in stream
[2026-06-22 18:07:48,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:07:48,791.791 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-22 18:07:51,635.635 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:07:51,638.638 INFO    ] Checking for system updates...
[2026-06-22 18:07:51,681.681 INFO    ] 200
[2026-06-22 18:07:51,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:07:51,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:07:51,759.759 INFO    ] No update needed
[2026-06-22 18:07:51,762.762 INFO    ] Checking for camera pi updates...
[2026-06-22 18:07:51,820.820 INFO    ] 200
[2026-06-22 18:07:51,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:07:51,869.869 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:07:51,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:07:51,977.977 INFO    ] No camera update needed
[2026-06-22 18:07:51,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:07:51,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:07:51,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:07:52,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:07:54,043.043 INFO    ] ================================================
[2026-06-22 18:07:54,058.058 INFO    ] Launching Daemon at Mon Jun 22 18:07:54 IST 2026
[2026-06-22 18:07:54,069.069 INFO    ] ================================================
[2026-06-22 18:07:54,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:07:54
[2026-06-22 18:07:55,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:07:55,507.507 INFO    ] Initializing speech engine...
[2026-06-22 18:07:55,516.516 INFO    ] 2026-06-22 18:07:55
[2026-06-22 18:07:55,762.762 INFO    ] 2026-06-22 18:07:55
[2026-06-22 18:07:55,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:07:56,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:07:56,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:07:56,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:07:56,228.228 INFO    ] time= 22/06/2026 18:07:56
[2026-06-22 18:07:56,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:07:56,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:07:56,379.379 INFO    ] No existing commands found in stream
[2026-06-22 18:08:01,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:08:01,392.392 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-22 18:08:03,872.872 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:08:03,875.875 INFO    ] Checking for system updates...
[2026-06-22 18:08:03,911.911 INFO    ] 200
[2026-06-22 18:08:03,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:08:03,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:08:03,970.970 INFO    ] No update needed
[2026-06-22 18:08:03,972.972 INFO    ] Checking for camera pi updates...
[2026-06-22 18:08:04,007.007 INFO    ] 200
[2026-06-22 18:08:04,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:08:04,051.051 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:08:04,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:08:04,128.128 INFO    ] No camera update needed
[2026-06-22 18:08:04,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:08:04,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:08:04,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:08:04,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:08:06,186.186 INFO    ] ================================================
[2026-06-22 18:08:06,202.202 INFO    ] Launching Daemon at Mon Jun 22 18:08:06 IST 2026
[2026-06-22 18:08:06,213.213 INFO    ] ================================================
[2026-06-22 18:08:06,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:08:06
[2026-06-22 18:08:07,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:08:07,801.801 INFO    ] Initializing speech engine...
[2026-06-22 18:08:07,812.812 INFO    ] 2026-06-22 18:08:07
[2026-06-22 18:08:08,085.085 INFO    ] 2026-06-22 18:08:08
[2026-06-22 18:08:08,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:08:08,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:08:08,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:08:08,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:08:08,530.530 INFO    ] time= 22/06/2026 18:08:08
[2026-06-22 18:08:08,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:08:08,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:08:08,703.703 INFO    ] No existing commands found in stream
[2026-06-22 18:08:13,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:08:13,727.727 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-22 18:08:16,097.097 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:08:16,100.100 INFO    ] Checking for system updates...
[2026-06-22 18:08:16,137.137 INFO    ] 200
[2026-06-22 18:08:16,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:08:16,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:08:16,195.195 INFO    ] No update needed
[2026-06-22 18:08:16,197.197 INFO    ] Checking for camera pi updates...
[2026-06-22 18:08:16,231.231 INFO    ] 200
[2026-06-22 18:08:16,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:08:16,279.279 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:08:16,369.369 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:08:16,371.371 INFO    ] No camera update needed
[2026-06-22 18:08:16,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:08:16,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:08:16,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:08:16,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:08:18,427.427 INFO    ] ================================================
[2026-06-22 18:08:18,443.443 INFO    ] Launching Daemon at Mon Jun 22 18:08:18 IST 2026
[2026-06-22 18:08:18,454.454 INFO    ] ================================================
[2026-06-22 18:08:19,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:08:19
[2026-06-22 18:08:19,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:08:20,014.014 INFO    ] Initializing speech engine...
[2026-06-22 18:08:20,032.032 INFO    ] 2026-06-22 18:08:20
[2026-06-22 18:08:20,306.306 INFO    ] 2026-06-22 18:08:20
[2026-06-22 18:08:20,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:08:20,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:08:20,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:08:20,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:08:20,731.731 INFO    ] time= 22/06/2026 18:08:20
[2026-06-22 18:08:20,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:08:20,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:08:20,931.931 INFO    ] No existing commands found in stream
[2026-06-22 18:08:25,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:08:25,959.959 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-22 18:08:30,306.306 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:08:30,309.309 INFO    ] Checking for system updates...
[2026-06-22 18:08:30,345.345 INFO    ] 200
[2026-06-22 18:08:30,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:08:30,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:08:30,402.402 INFO    ] No update needed
[2026-06-22 18:08:30,408.408 INFO    ] Checking for camera pi updates...
[2026-06-22 18:08:30,446.446 INFO    ] 200
[2026-06-22 18:08:30,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:08:30,490.490 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:08:30,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:08:30,567.567 INFO    ] No camera update needed
[2026-06-22 18:08:30,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:08:30,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:08:30,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:08:30,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:08:32,625.625 INFO    ] ================================================
[2026-06-22 18:08:32,640.640 INFO    ] Launching Daemon at Mon Jun 22 18:08:32 IST 2026
[2026-06-22 18:08:32,652.652 INFO    ] ================================================
[2026-06-22 18:08:33,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:08:33
[2026-06-22 18:08:33,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:08:34,294.294 INFO    ] Initializing speech engine...
[2026-06-22 18:08:34,309.309 INFO    ] 2026-06-22 18:08:34
[2026-06-22 18:08:34,637.637 INFO    ] 2026-06-22 18:08:34
[2026-06-22 18:08:34,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:08:34,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:08:34,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:08:35,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:08:35,160.160 INFO    ] time= 22/06/2026 18:08:35
[2026-06-22 18:08:35,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:08:35,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:08:35,311.311 INFO    ] No existing commands found in stream
[2026-06-22 18:08:40,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:08:40,346.346 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-22 18:08:41,273.273 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:08:41,276.276 INFO    ] Checking for system updates...
[2026-06-22 18:08:41,317.317 INFO    ] 200
[2026-06-22 18:08:41,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:08:41,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:08:41,378.378 INFO    ] No update needed
[2026-06-22 18:08:41,381.381 INFO    ] Checking for camera pi updates...
[2026-06-22 18:08:41,416.416 INFO    ] 200
[2026-06-22 18:08:41,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:08:41,461.461 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:08:41,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:08:41,547.547 INFO    ] No camera update needed
[2026-06-22 18:08:41,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:08:41,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:08:41,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:08:41,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:08:43,607.607 INFO    ] ================================================
[2026-06-22 18:08:43,623.623 INFO    ] Launching Daemon at Mon Jun 22 18:08:43 IST 2026
[2026-06-22 18:08:43,633.633 INFO    ] ================================================
[2026-06-22 18:08:44,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:08:44
[2026-06-22 18:08:44,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:08:45,193.193 INFO    ] Initializing speech engine...
[2026-06-22 18:08:45,205.205 INFO    ] 2026-06-22 18:08:45
[2026-06-22 18:08:45,489.489 INFO    ] 2026-06-22 18:08:45
[2026-06-22 18:08:45,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:08:45,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:08:45,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:08:45,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:08:45,968.968 INFO    ] time= 22/06/2026 18:08:45
[2026-06-22 18:08:46,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:08:46,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:08:46,197.197 INFO    ] No existing commands found in stream
[2026-06-22 18:08:51,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:08:51,238.238 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-22 18:08:53,942.942 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:08:53,943.943 INFO    ] Checking for system updates...
[2026-06-22 18:08:53,964.964 INFO    ] 200
[2026-06-22 18:08:53,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:08:53,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:08:53,998.998 INFO    ] No update needed
[2026-06-22 18:08:53,999.999 INFO    ] Checking for camera pi updates...
[2026-06-22 18:08:54,024.024 INFO    ] 200
[2026-06-22 18:08:54,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:08:54,076.076 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:08:54,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:08:54,136.136 INFO    ] No camera update needed
[2026-06-22 18:08:54,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:08:54,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:08:54,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:08:54,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:08:56,194.194 INFO    ] ================================================
[2026-06-22 18:08:56,209.209 INFO    ] Launching Daemon at Mon Jun 22 18:08:56 IST 2026
[2026-06-22 18:08:56,220.220 INFO    ] ================================================
[2026-06-22 18:08:56,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:08:56
[2026-06-22 18:08:57,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:08:57,619.619 INFO    ] Initializing speech engine...
[2026-06-22 18:08:57,626.626 INFO    ] 2026-06-22 18:08:57
[2026-06-22 18:08:57,892.892 INFO    ] 2026-06-22 18:08:57
[2026-06-22 18:08:57,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:08:58,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:08:58,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:08:58,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:08:58,372.372 INFO    ] time= 22/06/2026 18:08:58
[2026-06-22 18:08:58,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:08:58,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:08:58,577.577 INFO    ] No existing commands found in stream
[2026-06-22 18:09:03,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:09:03,607.607 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-22 18:09:04,556.556 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:09:04,559.559 INFO    ] Checking for system updates...
[2026-06-22 18:09:04,595.595 INFO    ] 200
[2026-06-22 18:09:04,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:09:04,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:09:04,661.661 INFO    ] No update needed
[2026-06-22 18:09:04,663.663 INFO    ] Checking for camera pi updates...
[2026-06-22 18:09:04,696.696 INFO    ] 200
[2026-06-22 18:09:04,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:09:04,743.743 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:09:04,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:09:04,876.876 INFO    ] No camera update needed
[2026-06-22 18:09:04,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:09:04,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:09:04,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:09:04,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:09:06,932.932 INFO    ] ================================================
[2026-06-22 18:09:06,948.948 INFO    ] Launching Daemon at Mon Jun 22 18:09:06 IST 2026
[2026-06-22 18:09:06,959.959 INFO    ] ================================================
[2026-06-22 18:09:07,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:09:07
[2026-06-22 18:09:08,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:09:08,517.517 INFO    ] Initializing speech engine...
[2026-06-22 18:09:08,530.530 INFO    ] 2026-06-22 18:09:08
[2026-06-22 18:09:08,818.818 INFO    ] 2026-06-22 18:09:08
[2026-06-22 18:09:08,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:09:09,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:09:09,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:09:09,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:09:09,290.290 INFO    ] time= 22/06/2026 18:09:09
[2026-06-22 18:09:09,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:09:09,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:09:09,538.538 INFO    ] No existing commands found in stream
[2026-06-22 18:09:14,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:09:14,566.566 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-22 18:09:18,345.345 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:09:18,347.347 INFO    ] Checking for system updates...
[2026-06-22 18:09:18,368.368 INFO    ] 200
[2026-06-22 18:09:18,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:09:18,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:09:18,402.402 INFO    ] No update needed
[2026-06-22 18:09:18,403.403 INFO    ] Checking for camera pi updates...
[2026-06-22 18:09:18,422.422 INFO    ] 200
[2026-06-22 18:09:18,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:09:18,461.461 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:09:18,543.543 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:09:18,546.546 INFO    ] No camera update needed
[2026-06-22 18:09:18,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:09:18,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:09:18,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:09:18,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:09:20,603.603 INFO    ] ================================================
[2026-06-22 18:09:20,623.623 INFO    ] Launching Daemon at Mon Jun 22 18:09:20 IST 2026
[2026-06-22 18:09:20,635.635 INFO    ] ================================================
[2026-06-22 18:09:21,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:09:21
[2026-06-22 18:09:21,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:09:22,131.131 INFO    ] Initializing speech engine...
[2026-06-22 18:09:22,140.140 INFO    ] 2026-06-22 18:09:22
[2026-06-22 18:09:22,402.402 INFO    ] 2026-06-22 18:09:22
[2026-06-22 18:09:22,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:09:22,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:09:22,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:09:22,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:09:22,872.872 INFO    ] time= 22/06/2026 18:09:22
[2026-06-22 18:09:22,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:09:22,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:09:23,083.083 INFO    ] No existing commands found in stream
[2026-06-22 18:09:28,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:09:28,113.113 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-22 18:09:31,168.168 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:09:31,171.171 INFO    ] Checking for system updates...
[2026-06-22 18:09:31,207.207 INFO    ] 200
[2026-06-22 18:09:31,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:09:31,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:09:31,265.265 INFO    ] No update needed
[2026-06-22 18:09:31,268.268 INFO    ] Checking for camera pi updates...
[2026-06-22 18:09:31,309.309 INFO    ] 200
[2026-06-22 18:09:31,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:09:31,369.369 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:09:31,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:09:31,438.438 INFO    ] No camera update needed
[2026-06-22 18:09:31,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:09:31,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:09:31,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:09:31,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:09:33,498.498 INFO    ] ================================================
[2026-06-22 18:09:33,513.513 INFO    ] Launching Daemon at Mon Jun 22 18:09:33 IST 2026
[2026-06-22 18:09:33,523.523 INFO    ] ================================================
[2026-06-22 18:09:34,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:09:34
[2026-06-22 18:09:34,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:09:34,995.995 INFO    ] Initializing speech engine...
[2026-06-22 18:09:35,004.004 INFO    ] 2026-06-22 18:09:34
[2026-06-22 18:09:35,307.307 INFO    ] 2026-06-22 18:09:35
[2026-06-22 18:09:35,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:09:35,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:09:35,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:09:35,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:09:35,699.699 INFO    ] time= 22/06/2026 18:09:35
[2026-06-22 18:09:35,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:09:35,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:09:35,829.829 INFO    ] No existing commands found in stream
[2026-06-22 18:09:40,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:09:40,844.844 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-22 18:09:43,281.281 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:09:43,284.284 INFO    ] Checking for system updates...
[2026-06-22 18:09:43,327.327 INFO    ] 200
[2026-06-22 18:09:43,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:09:43,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:09:43,392.392 INFO    ] No update needed
[2026-06-22 18:09:43,395.395 INFO    ] Checking for camera pi updates...
[2026-06-22 18:09:43,438.438 INFO    ] 200
[2026-06-22 18:09:43,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:09:43,486.486 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:09:43,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:09:43,573.573 INFO    ] No camera update needed
[2026-06-22 18:09:43,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:09:43,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:09:43,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:09:43,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:09:45,631.631 INFO    ] ================================================
[2026-06-22 18:09:45,647.647 INFO    ] Launching Daemon at Mon Jun 22 18:09:45 IST 2026
[2026-06-22 18:09:45,657.657 INFO    ] ================================================
[2026-06-22 18:09:46,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:09:46
[2026-06-22 18:09:46,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:09:47,076.076 INFO    ] Initializing speech engine...
[2026-06-22 18:09:47,084.084 INFO    ] 2026-06-22 18:09:47
[2026-06-22 18:09:47,383.383 INFO    ] 2026-06-22 18:09:47
[2026-06-22 18:09:47,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:09:47,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:09:47,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:09:47,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:09:47,744.744 INFO    ] time= 22/06/2026 18:09:47
[2026-06-22 18:09:47,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:09:47,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:09:47,827.827 INFO    ] No existing commands found in stream
[2026-06-22 18:09:52,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:09:52,840.840 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-22 18:09:55,499.499 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:09:55,502.502 INFO    ] Checking for system updates...
[2026-06-22 18:09:55,538.538 INFO    ] 200
[2026-06-22 18:09:55,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:09:55,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:09:55,601.601 INFO    ] No update needed
[2026-06-22 18:09:55,604.604 INFO    ] Checking for camera pi updates...
[2026-06-22 18:09:55,643.643 INFO    ] 200
[2026-06-22 18:09:55,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:09:55,691.691 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:09:55,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:09:55,776.776 INFO    ] No camera update needed
[2026-06-22 18:09:55,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:09:55,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:09:55,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:09:55,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:09:57,832.832 INFO    ] ================================================
[2026-06-22 18:09:57,848.848 INFO    ] Launching Daemon at Mon Jun 22 18:09:57 IST 2026
[2026-06-22 18:09:57,859.859 INFO    ] ================================================
[2026-06-22 18:09:58,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:09:58
[2026-06-22 18:09:59,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:09:59,256.256 INFO    ] Initializing speech engine...
[2026-06-22 18:09:59,271.271 INFO    ] 2026-06-22 18:09:59
[2026-06-22 18:09:59,539.539 INFO    ] 2026-06-22 18:09:59
[2026-06-22 18:09:59,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:09:59,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:09:59,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:09:59,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:09:59,988.988 INFO    ] time= 22/06/2026 18:09:59
[2026-06-22 18:10:00,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:10:00,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:10:00,175.175 INFO    ] No existing commands found in stream
[2026-06-22 18:10:05,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:10:05,189.189 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-22 18:10:09,438.438 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:10:09,441.441 INFO    ] Checking for system updates...
[2026-06-22 18:10:09,478.478 INFO    ] 200
[2026-06-22 18:10:09,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:10:09,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:10:09,538.538 INFO    ] No update needed
[2026-06-22 18:10:09,541.541 INFO    ] Checking for camera pi updates...
[2026-06-22 18:10:09,582.582 INFO    ] 200
[2026-06-22 18:10:09,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:10:09,627.627 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:10:09,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:10:09,714.714 INFO    ] No camera update needed
[2026-06-22 18:10:09,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:10:09,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:10:09,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:10:09,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:10:11,775.775 INFO    ] ================================================
[2026-06-22 18:10:11,790.790 INFO    ] Launching Daemon at Mon Jun 22 18:10:11 IST 2026
[2026-06-22 18:10:11,800.800 INFO    ] ================================================
[2026-06-22 18:10:12,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:10:12
[2026-06-22 18:10:12,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:10:13,189.189 INFO    ] Initializing speech engine...
[2026-06-22 18:10:13,198.198 INFO    ] 2026-06-22 18:10:13
[2026-06-22 18:10:13,448.448 INFO    ] 2026-06-22 18:10:13
[2026-06-22 18:10:13,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:10:13,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:10:13,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:10:13,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:10:13,941.941 INFO    ] time= 22/06/2026 18:10:13
[2026-06-22 18:10:14,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:10:14,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:10:14,143.143 INFO    ] No existing commands found in stream
[2026-06-22 18:10:19,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:10:19,173.173 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-22 18:10:21,297.297 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:10:21,299.299 INFO    ] Checking for system updates...
[2026-06-22 18:10:21,336.336 INFO    ] 200
[2026-06-22 18:10:21,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:10:21,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:10:21,401.401 INFO    ] No update needed
[2026-06-22 18:10:21,404.404 INFO    ] Checking for camera pi updates...
[2026-06-22 18:10:21,437.437 INFO    ] 200
[2026-06-22 18:10:21,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:10:21,487.487 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:10:21,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:10:21,594.594 INFO    ] No camera update needed
[2026-06-22 18:10:21,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:10:21,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:10:21,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:10:21,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:10:23,649.649 INFO    ] ================================================
[2026-06-22 18:10:23,665.665 INFO    ] Launching Daemon at Mon Jun 22 18:10:23 IST 2026
[2026-06-22 18:10:23,676.676 INFO    ] ================================================
[2026-06-22 18:10:24,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:10:24
[2026-06-22 18:10:24,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:10:25,094.094 INFO    ] Initializing speech engine...
[2026-06-22 18:10:25,105.105 INFO    ] 2026-06-22 18:10:25
[2026-06-22 18:10:25,375.375 INFO    ] 2026-06-22 18:10:25
[2026-06-22 18:10:25,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:10:25,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:10:25,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:10:25,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:10:25,742.742 INFO    ] time= 22/06/2026 18:10:25
[2026-06-22 18:10:25,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:10:25,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:10:25,852.852 INFO    ] No existing commands found in stream
[2026-06-22 18:10:30,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:10:30,868.868 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-22 18:10:32,269.269 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:10:32,271.271 INFO    ] Checking for system updates...
[2026-06-22 18:10:32,313.313 INFO    ] 200
[2026-06-22 18:10:32,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:10:32,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:10:32,378.378 INFO    ] No update needed
[2026-06-22 18:10:32,381.381 INFO    ] Checking for camera pi updates...
[2026-06-22 18:10:32,416.416 INFO    ] 200
[2026-06-22 18:10:32,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:10:32,467.467 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:10:32,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:10:32,526.526 INFO    ] No camera update needed
[2026-06-22 18:10:32,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:10:32,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:10:32,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:10:32,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:10:34,583.583 INFO    ] ================================================
[2026-06-22 18:10:34,598.598 INFO    ] Launching Daemon at Mon Jun 22 18:10:34 IST 2026
[2026-06-22 18:10:34,609.609 INFO    ] ================================================
[2026-06-22 18:10:35,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:10:35
[2026-06-22 18:10:35,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:10:35,958.958 INFO    ] Initializing speech engine...
[2026-06-22 18:10:35,965.965 INFO    ] 2026-06-22 18:10:35
[2026-06-22 18:10:36,227.227 INFO    ] 2026-06-22 18:10:36
[2026-06-22 18:10:36,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:10:36,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:10:36,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:10:36,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:10:36,658.658 INFO    ] time= 22/06/2026 18:10:36
[2026-06-22 18:10:36,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:10:36,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:10:36,838.838 INFO    ] No existing commands found in stream
[2026-06-22 18:10:41,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:10:41,853.853 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-22 18:10:45,136.136 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:10:45,138.138 INFO    ] Checking for system updates...
[2026-06-22 18:10:45,175.175 INFO    ] 200
[2026-06-22 18:10:45,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:10:45,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:10:45,246.246 INFO    ] No update needed
[2026-06-22 18:10:45,249.249 INFO    ] Checking for camera pi updates...
[2026-06-22 18:10:45,282.282 INFO    ] 200
[2026-06-22 18:10:45,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:10:45,326.326 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:10:45,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:10:45,413.413 INFO    ] No camera update needed
[2026-06-22 18:10:45,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:10:45,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:10:45,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:10:45,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:10:47,470.470 INFO    ] ================================================
[2026-06-22 18:10:47,485.485 INFO    ] Launching Daemon at Mon Jun 22 18:10:47 IST 2026
[2026-06-22 18:10:47,496.496 INFO    ] ================================================
[2026-06-22 18:10:48,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:10:48
[2026-06-22 18:10:48,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:10:49,028.028 INFO    ] Initializing speech engine...
[2026-06-22 18:10:49,040.040 INFO    ] 2026-06-22 18:10:49
[2026-06-22 18:10:49,327.327 INFO    ] 2026-06-22 18:10:49
[2026-06-22 18:10:49,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:10:49,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:10:49,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:10:49,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:10:49,800.800 INFO    ] time= 22/06/2026 18:10:49
[2026-06-22 18:10:49,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:10:49,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:10:49,962.962 INFO    ] No existing commands found in stream
[2026-06-22 18:10:54,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:10:55,000.000 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-22 18:10:58,256.256 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:10:58,258.258 INFO    ] Checking for system updates...
[2026-06-22 18:10:58,280.280 INFO    ] 200
[2026-06-22 18:10:58,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:10:58,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:10:58,326.326 INFO    ] No update needed
[2026-06-22 18:10:58,329.329 INFO    ] Checking for camera pi updates...
[2026-06-22 18:10:58,372.372 INFO    ] 200
[2026-06-22 18:10:58,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:10:58,417.417 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:10:58,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:10:58,516.516 INFO    ] No camera update needed
[2026-06-22 18:10:58,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:10:58,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:10:58,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:10:58,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:11:00,575.575 INFO    ] ================================================
[2026-06-22 18:11:00,590.590 INFO    ] Launching Daemon at Mon Jun 22 18:11:00 IST 2026
[2026-06-22 18:11:00,601.601 INFO    ] ================================================
[2026-06-22 18:11:01,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:11:01
[2026-06-22 18:11:01,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:11:02,241.241 INFO    ] Initializing speech engine...
[2026-06-22 18:11:02,249.249 INFO    ] 2026-06-22 18:11:02
[2026-06-22 18:11:02,567.567 INFO    ] 2026-06-22 18:11:02
[2026-06-22 18:11:02,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:11:02,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:11:02,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:11:02,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:11:02,938.938 INFO    ] time= 22/06/2026 18:11:02
[2026-06-22 18:11:02,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:11:02,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:11:03,069.069 INFO    ] No existing commands found in stream
[2026-06-22 18:11:08,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:11:08,085.085 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-22 18:11:11,186.186 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:11:11,189.189 INFO    ] Checking for system updates...
[2026-06-22 18:11:11,226.226 INFO    ] 200
[2026-06-22 18:11:11,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:11:11,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:11:11,283.283 INFO    ] No update needed
[2026-06-22 18:11:11,286.286 INFO    ] Checking for camera pi updates...
[2026-06-22 18:11:11,320.320 INFO    ] 200
[2026-06-22 18:11:11,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:11:11,362.362 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:11:11,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:11:11,462.462 INFO    ] No camera update needed
[2026-06-22 18:11:11,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:11:11,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:11:11,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:11:11,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:11:13,519.519 INFO    ] ================================================
[2026-06-22 18:11:13,534.534 INFO    ] Launching Daemon at Mon Jun 22 18:11:13 IST 2026
[2026-06-22 18:11:13,545.545 INFO    ] ================================================
[2026-06-22 18:11:14,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:11:14
[2026-06-22 18:11:14,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:11:14,904.904 INFO    ] Initializing speech engine...
[2026-06-22 18:11:14,920.920 INFO    ] 2026-06-22 18:11:14
[2026-06-22 18:11:15,208.208 INFO    ] 2026-06-22 18:11:15
[2026-06-22 18:11:15,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:11:15,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:11:15,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:11:15,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:11:15,625.625 INFO    ] time= 22/06/2026 18:11:15
[2026-06-22 18:11:15,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:11:15,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:11:15,713.713 INFO    ] No existing commands found in stream
[2026-06-22 18:11:20,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:11:20,729.729 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-22 18:11:23,611.611 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:11:23,613.613 INFO    ] Checking for system updates...
[2026-06-22 18:11:23,633.633 INFO    ] 200
[2026-06-22 18:11:23,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:11:23,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:11:23,691.691 INFO    ] No update needed
[2026-06-22 18:11:23,693.693 INFO    ] Checking for camera pi updates...
[2026-06-22 18:11:23,727.727 INFO    ] 200
[2026-06-22 18:11:23,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:11:23,770.770 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:11:23,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:11:23,851.851 INFO    ] No camera update needed
[2026-06-22 18:11:23,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:11:23,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:11:23,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:11:23,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:11:25,908.908 INFO    ] ================================================
[2026-06-22 18:11:25,924.924 INFO    ] Launching Daemon at Mon Jun 22 18:11:25 IST 2026
[2026-06-22 18:11:25,935.935 INFO    ] ================================================
[2026-06-22 18:11:26,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:11:26
[2026-06-22 18:11:27,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:11:27,450.450 INFO    ] Initializing speech engine...
[2026-06-22 18:11:27,461.461 INFO    ] 2026-06-22 18:11:27
[2026-06-22 18:11:27,741.741 INFO    ] 2026-06-22 18:11:27
[2026-06-22 18:11:27,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:11:27,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:11:27,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:11:28,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:11:28,131.131 INFO    ] time= 22/06/2026 18:11:28
[2026-06-22 18:11:28,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:11:28,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:11:28,308.308 INFO    ] No existing commands found in stream
[2026-06-22 18:11:33,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:11:33,342.342 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-22 18:11:35,394.394 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:11:35,397.397 INFO    ] Checking for system updates...
[2026-06-22 18:11:35,438.438 INFO    ] 200
[2026-06-22 18:11:35,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:11:35,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:11:35,512.512 INFO    ] No update needed
[2026-06-22 18:11:35,515.515 INFO    ] Checking for camera pi updates...
[2026-06-22 18:11:35,553.553 INFO    ] 200
[2026-06-22 18:11:35,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:11:35,602.602 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:11:35,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:11:35,684.684 INFO    ] No camera update needed
[2026-06-22 18:11:35,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:11:35,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:11:35,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:11:35,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:11:37,744.744 INFO    ] ================================================
[2026-06-22 18:11:37,759.759 INFO    ] Launching Daemon at Mon Jun 22 18:11:37 IST 2026
[2026-06-22 18:11:37,770.770 INFO    ] ================================================
[2026-06-22 18:11:38,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:11:38
[2026-06-22 18:11:38,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:11:39,183.183 INFO    ] Initializing speech engine...
[2026-06-22 18:11:39,190.190 INFO    ] 2026-06-22 18:11:39
[2026-06-22 18:11:39,457.457 INFO    ] 2026-06-22 18:11:39
[2026-06-22 18:11:39,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:11:39,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:11:39,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:11:39,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:11:39,837.837 INFO    ] time= 22/06/2026 18:11:39
[2026-06-22 18:11:39,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:11:39,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:11:40,007.007 INFO    ] No existing commands found in stream
[2026-06-22 18:11:45,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:11:45,037.037 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-22 18:11:45,766.766 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:11:45,768.768 INFO    ] Checking for system updates...
[2026-06-22 18:11:45,804.804 INFO    ] 200
[2026-06-22 18:11:45,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:11:45,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:11:45,862.862 INFO    ] No update needed
[2026-06-22 18:11:45,865.865 INFO    ] Checking for camera pi updates...
[2026-06-22 18:11:45,898.898 INFO    ] 200
[2026-06-22 18:11:45,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:11:45,942.942 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:11:46,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:11:46,048.048 INFO    ] No camera update needed
[2026-06-22 18:11:46,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:11:46,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:11:46,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:11:46,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:11:48,111.111 INFO    ] ================================================
[2026-06-22 18:11:48,126.126 INFO    ] Launching Daemon at Mon Jun 22 18:11:48 IST 2026
[2026-06-22 18:11:48,137.137 INFO    ] ================================================
[2026-06-22 18:11:48,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:11:48
[2026-06-22 18:11:49,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:11:49,662.662 INFO    ] Initializing speech engine...
[2026-06-22 18:11:49,670.670 INFO    ] 2026-06-22 18:11:49
[2026-06-22 18:11:49,942.942 INFO    ] 2026-06-22 18:11:49
[2026-06-22 18:11:50,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:11:50,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:11:50,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:11:50,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:11:50,413.413 INFO    ] time= 22/06/2026 18:11:50
[2026-06-22 18:11:50,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:11:50,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:11:50,667.667 INFO    ] No existing commands found in stream
[2026-06-22 18:11:55,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:11:55,697.697 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-22 18:11:58,688.688 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:11:58,691.691 INFO    ] Checking for system updates...
[2026-06-22 18:11:58,728.728 INFO    ] 200
[2026-06-22 18:11:58,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:11:58,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:11:58,788.788 INFO    ] No update needed
[2026-06-22 18:11:58,791.791 INFO    ] Checking for camera pi updates...
[2026-06-22 18:11:58,824.824 INFO    ] 200
[2026-06-22 18:11:58,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:11:58,872.872 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:11:58,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:11:58,965.965 INFO    ] No camera update needed
[2026-06-22 18:11:58,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:11:58,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:11:58,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:11:58,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:12:01,019.019 INFO    ] ================================================
[2026-06-22 18:12:01,034.034 INFO    ] Launching Daemon at Mon Jun 22 18:12:01 IST 2026
[2026-06-22 18:12:01,045.045 INFO    ] ================================================
[2026-06-22 18:12:01,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:12:01
[2026-06-22 18:12:02,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:12:02,944.944 INFO    ] Initializing speech engine...
[2026-06-22 18:12:02,953.953 INFO    ] 2026-06-22 18:12:02
[2026-06-22 18:12:03,278.278 INFO    ] 2026-06-22 18:12:03
[2026-06-22 18:12:03,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:12:03,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:12:03,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:12:03,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:12:03,707.707 INFO    ] time= 22/06/2026 18:12:03
[2026-06-22 18:12:03,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:12:03,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:12:03,823.823 INFO    ] No existing commands found in stream
[2026-06-22 18:12:08,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:12:08,851.851 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-22 18:12:12,396.396 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:12:12,399.399 INFO    ] Checking for system updates...
[2026-06-22 18:12:12,436.436 INFO    ] 200
[2026-06-22 18:12:12,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:12:12,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:12:12,503.503 INFO    ] No update needed
[2026-06-22 18:12:12,505.505 INFO    ] Checking for camera pi updates...
[2026-06-22 18:12:12,541.541 INFO    ] 200
[2026-06-22 18:12:12,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:12:12,591.591 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:12:12,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:12:12,690.690 INFO    ] No camera update needed
[2026-06-22 18:12:12,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:12:12,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:12:12,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:12:12,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:12:14,748.748 INFO    ] ================================================
[2026-06-22 18:12:14,763.763 INFO    ] Launching Daemon at Mon Jun 22 18:12:14 IST 2026
[2026-06-22 18:12:14,774.774 INFO    ] ================================================
[2026-06-22 18:12:15,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:12:15
[2026-06-22 18:12:15,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:12:16,207.207 INFO    ] Initializing speech engine...
[2026-06-22 18:12:16,216.216 INFO    ] 2026-06-22 18:12:16
[2026-06-22 18:12:16,488.488 INFO    ] 2026-06-22 18:12:16
[2026-06-22 18:12:16,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:12:16,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:12:16,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:12:16,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:12:16,853.853 INFO    ] time= 22/06/2026 18:12:16
[2026-06-22 18:12:16,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:12:16,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:12:16,939.939 INFO    ] No existing commands found in stream
[2026-06-22 18:12:21,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:12:21,953.953 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-22 18:12:22,790.790 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:12:22,791.791 INFO    ] Checking for system updates...
[2026-06-22 18:12:22,812.812 INFO    ] 200
[2026-06-22 18:12:22,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:12:22,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:12:22,846.846 INFO    ] No update needed
[2026-06-22 18:12:22,847.847 INFO    ] Checking for camera pi updates...
[2026-06-22 18:12:22,875.875 INFO    ] 200
[2026-06-22 18:12:22,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:12:22,918.918 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:12:23,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:12:23,003.003 INFO    ] No camera update needed
[2026-06-22 18:12:23,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:12:23,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:12:23,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:12:23,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:12:25,064.064 INFO    ] ================================================
[2026-06-22 18:12:25,085.085 INFO    ] Launching Daemon at Mon Jun 22 18:12:25 IST 2026
[2026-06-22 18:12:25,100.100 INFO    ] ================================================
[2026-06-22 18:12:25,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:12:25
[2026-06-22 18:12:26,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:12:26,573.573 INFO    ] Initializing speech engine...
[2026-06-22 18:12:26,582.582 INFO    ] 2026-06-22 18:12:26
[2026-06-22 18:12:26,856.856 INFO    ] 2026-06-22 18:12:26
[2026-06-22 18:12:26,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:12:27,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:12:27,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:12:27,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:12:27,221.221 INFO    ] time= 22/06/2026 18:12:27
[2026-06-22 18:12:27,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:12:27,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:12:27,345.345 INFO    ] No existing commands found in stream
[2026-06-22 18:12:32,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:12:32,378.378 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-22 18:12:36,695.695 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:12:36,698.698 INFO    ] Checking for system updates...
[2026-06-22 18:12:36,735.735 INFO    ] 200
[2026-06-22 18:12:36,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:12:36,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:12:36,801.801 INFO    ] No update needed
[2026-06-22 18:12:36,803.803 INFO    ] Checking for camera pi updates...
[2026-06-22 18:12:36,842.842 INFO    ] 200
[2026-06-22 18:12:36,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:12:36,884.884 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:12:37,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:12:37,086.086 INFO    ] No camera update needed
[2026-06-22 18:12:37,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:12:37,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:12:37,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:12:37,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:12:39,141.141 INFO    ] ================================================
[2026-06-22 18:12:39,157.157 INFO    ] Launching Daemon at Mon Jun 22 18:12:39 IST 2026
[2026-06-22 18:12:39,168.168 INFO    ] ================================================
[2026-06-22 18:12:39,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:12:39
[2026-06-22 18:12:40,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:12:40,552.552 INFO    ] Initializing speech engine...
[2026-06-22 18:12:40,561.561 INFO    ] 2026-06-22 18:12:40
[2026-06-22 18:12:40,813.813 INFO    ] 2026-06-22 18:12:40
[2026-06-22 18:12:40,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:12:41,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:12:41,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:12:41,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:12:41,288.288 INFO    ] time= 22/06/2026 18:12:41
[2026-06-22 18:12:41,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:12:41,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:12:41,441.441 INFO    ] No existing commands found in stream
[2026-06-22 18:12:46,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:12:46,451.451 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-22 18:12:49,667.667 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:12:49,670.670 INFO    ] Checking for system updates...
[2026-06-22 18:12:49,710.710 INFO    ] 200
[2026-06-22 18:12:49,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:12:49,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:12:49,767.767 INFO    ] No update needed
[2026-06-22 18:12:49,770.770 INFO    ] Checking for camera pi updates...
[2026-06-22 18:12:49,807.807 INFO    ] 200
[2026-06-22 18:12:49,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:12:49,857.857 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:12:49,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:12:49,929.929 INFO    ] No camera update needed
[2026-06-22 18:12:49,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:12:49,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:12:49,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:12:49,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:12:51,986.986 INFO    ] ================================================
[2026-06-22 18:12:52,001.001 INFO    ] Launching Daemon at Mon Jun 22 18:12:51 IST 2026
[2026-06-22 18:12:52,012.012 INFO    ] ================================================
[2026-06-22 18:12:52,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:12:52
[2026-06-22 18:12:53,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:12:53,445.445 INFO    ] Initializing speech engine...
[2026-06-22 18:12:53,451.451 INFO    ] 2026-06-22 18:12:53
[2026-06-22 18:12:53,727.727 INFO    ] 2026-06-22 18:12:53
[2026-06-22 18:12:53,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:12:54,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:12:54,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:12:54,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:12:54,215.215 INFO    ] time= 22/06/2026 18:12:54
[2026-06-22 18:12:54,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:12:54,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:12:54,420.420 INFO    ] No existing commands found in stream
[2026-06-22 18:12:59,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:12:59,446.446 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-22 18:13:01,582.582 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:13:01,588.588 INFO    ] Checking for system updates...
[2026-06-22 18:13:01,653.653 INFO    ] 200
[2026-06-22 18:13:01,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:13:01,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:13:01,822.822 INFO    ] No update needed
[2026-06-22 18:13:01,829.829 INFO    ] Checking for camera pi updates...
[2026-06-22 18:13:01,896.896 INFO    ] 200
[2026-06-22 18:13:01,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:13:02,037.037 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:13:02,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:13:02,161.161 INFO    ] No camera update needed
[2026-06-22 18:13:02,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:13:02,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:13:02,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:13:02,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:13:04,227.227 INFO    ] ================================================
[2026-06-22 18:13:04,242.242 INFO    ] Launching Daemon at Mon Jun 22 18:13:04 IST 2026
[2026-06-22 18:13:04,253.253 INFO    ] ================================================
[2026-06-22 18:13:04,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:13:04
[2026-06-22 18:13:05,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:13:05,858.858 INFO    ] Initializing speech engine...
[2026-06-22 18:13:05,870.870 INFO    ] 2026-06-22 18:13:05
[2026-06-22 18:13:06,164.164 INFO    ] 2026-06-22 18:13:06
[2026-06-22 18:13:06,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:13:06,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:13:06,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:13:06,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:13:06,644.644 INFO    ] time= 22/06/2026 18:13:06
[2026-06-22 18:13:06,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:13:06,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:13:06,870.870 INFO    ] No existing commands found in stream
[2026-06-22 18:13:11,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:13:11,894.894 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-22 18:13:14,456.456 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 18:13:14,458.458 INFO    ] Checking for system updates...
[2026-06-22 18:13:14,480.480 INFO    ] 200
[2026-06-22 18:13:14,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:13:14,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:13:14,516.516 INFO    ] No update needed
[2026-06-22 18:13:14,517.517 INFO    ] Checking for camera pi updates...
[2026-06-22 18:13:14,557.557 INFO    ] 200
[2026-06-22 18:13:14,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:13:14,601.601 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:13:14,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:13:14,694.694 INFO    ] No camera update needed
[2026-06-22 18:13:14,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:13:14,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:13:14,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:13:14,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:13:16,752.752 INFO    ] ================================================
[2026-06-22 18:13:16,768.768 INFO    ] Launching Daemon at Mon Jun 22 18:13:16 IST 2026
[2026-06-22 18:13:16,779.779 INFO    ] ================================================
[2026-06-22 18:13:17,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:13:17
[2026-06-22 18:13:17,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:13:18,248.248 INFO    ] Initializing speech engine...
[2026-06-22 18:13:18,256.256 INFO    ] 2026-06-22 18:13:18
[2026-06-22 18:13:18,505.505 INFO    ] 2026-06-22 18:13:18
[2026-06-22 18:13:18,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:13:18,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:13:18,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:13:18,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:13:18,875.875 INFO    ] time= 22/06/2026 18:13:18
[2026-06-22 18:13:18,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:13:18,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:13:18,982.982 INFO    ] No existing commands found in stream
[2026-06-22 18:13:23,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:13:23,998.998 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-22 18:13:26,777.777 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:13:26,778.778 INFO    ] Checking for system updates...
[2026-06-22 18:13:26,799.799 INFO    ] 200
[2026-06-22 18:13:26,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:13:26,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:13:26,838.838 INFO    ] No update needed
[2026-06-22 18:13:26,841.841 INFO    ] Checking for camera pi updates...
[2026-06-22 18:13:26,875.875 INFO    ] 200
[2026-06-22 18:13:26,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:13:26,919.919 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:13:27,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:13:27,014.014 INFO    ] No camera update needed
[2026-06-22 18:13:27,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:13:27,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:13:27,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:13:27,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:13:29,072.072 INFO    ] ================================================
[2026-06-22 18:13:29,087.087 INFO    ] Launching Daemon at Mon Jun 22 18:13:29 IST 2026
[2026-06-22 18:13:29,099.099 INFO    ] ================================================
[2026-06-22 18:13:29,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:13:29
[2026-06-22 18:13:30,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:13:30,418.418 INFO    ] Initializing speech engine...
[2026-06-22 18:13:30,441.441 INFO    ] 2026-06-22 18:13:30
[2026-06-22 18:13:30,693.693 INFO    ] 2026-06-22 18:13:30
[2026-06-22 18:13:30,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:13:30,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:13:30,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:13:31,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:13:31,039.039 INFO    ] time= 22/06/2026 18:13:31
[2026-06-22 18:13:31,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:13:31,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:13:31,153.153 INFO    ] No existing commands found in stream
[2026-06-22 18:13:36,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:13:36,169.169 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-22 18:13:39,303.303 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:13:39,306.306 INFO    ] Checking for system updates...
[2026-06-22 18:13:39,342.342 INFO    ] 200
[2026-06-22 18:13:39,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:13:39,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:13:39,401.401 INFO    ] No update needed
[2026-06-22 18:13:39,404.404 INFO    ] Checking for camera pi updates...
[2026-06-22 18:13:39,441.441 INFO    ] 200
[2026-06-22 18:13:39,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:13:39,485.485 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:13:39,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:13:39,568.568 INFO    ] No camera update needed
[2026-06-22 18:13:39,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:13:39,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:13:39,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:13:39,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:13:41,625.625 INFO    ] ================================================
[2026-06-22 18:13:41,641.641 INFO    ] Launching Daemon at Mon Jun 22 18:13:41 IST 2026
[2026-06-22 18:13:41,652.652 INFO    ] ================================================
[2026-06-22 18:13:42,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:13:42
[2026-06-22 18:13:42,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:13:42,992.992 INFO    ] Initializing speech engine...
[2026-06-22 18:13:43,001.001 INFO    ] 2026-06-22 18:13:42
[2026-06-22 18:13:43,252.252 INFO    ] 2026-06-22 18:13:43
[2026-06-22 18:13:43,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:13:43,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:13:43,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:13:43,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:13:43,728.728 INFO    ] time= 22/06/2026 18:13:43
[2026-06-22 18:13:43,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:13:43,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:13:43,880.880 INFO    ] No existing commands found in stream
[2026-06-22 18:13:48,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:13:48,895.895 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-22 18:13:50,693.693 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:13:50,696.696 INFO    ] Checking for system updates...
[2026-06-22 18:13:50,736.736 INFO    ] 200
[2026-06-22 18:13:50,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:13:50,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:13:50,797.797 INFO    ] No update needed
[2026-06-22 18:13:50,800.800 INFO    ] Checking for camera pi updates...
[2026-06-22 18:13:50,835.835 INFO    ] 200
[2026-06-22 18:13:50,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:13:50,881.881 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:13:50,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:13:50,953.953 INFO    ] No camera update needed
[2026-06-22 18:13:50,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:13:50,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:13:50,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:13:50,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:13:53,013.013 INFO    ] ================================================
[2026-06-22 18:13:53,029.029 INFO    ] Launching Daemon at Mon Jun 22 18:13:53 IST 2026
[2026-06-22 18:13:53,040.040 INFO    ] ================================================
[2026-06-22 18:13:53,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:13:53
[2026-06-22 18:13:54,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:13:54,565.565 INFO    ] Initializing speech engine...
[2026-06-22 18:13:54,572.572 INFO    ] 2026-06-22 18:13:54
[2026-06-22 18:13:54,843.843 INFO    ] 2026-06-22 18:13:54
[2026-06-22 18:13:54,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:13:55,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:13:55,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:13:55,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:13:55,316.316 INFO    ] time= 22/06/2026 18:13:55
[2026-06-22 18:13:55,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:13:55,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:13:55,492.492 INFO    ] No existing commands found in stream
[2026-06-22 18:14:00,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:14:00,508.508 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-22 18:14:04,089.089 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:14:04,092.092 INFO    ] Checking for system updates...
[2026-06-22 18:14:04,131.131 INFO    ] 200
[2026-06-22 18:14:04,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:14:04,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:14:04,190.190 INFO    ] No update needed
[2026-06-22 18:14:04,193.193 INFO    ] Checking for camera pi updates...
[2026-06-22 18:14:04,227.227 INFO    ] 200
[2026-06-22 18:14:04,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:14:04,272.272 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:14:04,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:14:04,368.368 INFO    ] No camera update needed
[2026-06-22 18:14:04,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:14:04,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:14:04,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:14:04,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:14:06,431.431 INFO    ] ================================================
[2026-06-22 18:14:06,451.451 INFO    ] Launching Daemon at Mon Jun 22 18:14:06 IST 2026
[2026-06-22 18:14:06,469.469 INFO    ] ================================================
[2026-06-22 18:14:07,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:14:07
[2026-06-22 18:14:07,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:14:08,014.014 INFO    ] Initializing speech engine...
[2026-06-22 18:14:08,021.021 INFO    ] 2026-06-22 18:14:08
[2026-06-22 18:14:08,319.319 INFO    ] 2026-06-22 18:14:08
[2026-06-22 18:14:08,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:14:08,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:14:08,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:14:08,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:14:08,703.703 INFO    ] time= 22/06/2026 18:14:08
[2026-06-22 18:14:08,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:14:08,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:14:08,830.830 INFO    ] No existing commands found in stream
[2026-06-22 18:14:13,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:14:13,845.845 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-22 18:14:16,333.333 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:14:16,336.336 INFO    ] Checking for system updates...
[2026-06-22 18:14:16,376.376 INFO    ] 200
[2026-06-22 18:14:16,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:14:16,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:14:16,442.442 INFO    ] No update needed
[2026-06-22 18:14:16,444.444 INFO    ] Checking for camera pi updates...
[2026-06-22 18:14:16,479.479 INFO    ] 200
[2026-06-22 18:14:16,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:14:16,522.522 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:14:16,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:14:16,608.608 INFO    ] No camera update needed
[2026-06-22 18:14:16,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:14:16,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:14:16,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:14:16,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:14:18,666.666 INFO    ] ================================================
[2026-06-22 18:14:18,681.681 INFO    ] Launching Daemon at Mon Jun 22 18:14:18 IST 2026
[2026-06-22 18:14:18,692.692 INFO    ] ================================================
[2026-06-22 18:14:19,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:14:19
[2026-06-22 18:14:19,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:14:20,037.037 INFO    ] Initializing speech engine...
[2026-06-22 18:14:20,063.063 INFO    ] 2026-06-22 18:14:20
[2026-06-22 18:14:20,339.339 INFO    ] 2026-06-22 18:14:20
[2026-06-22 18:14:20,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:14:20,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:14:20,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:14:20,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:14:20,722.722 INFO    ] time= 22/06/2026 18:14:20
[2026-06-22 18:14:20,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:14:20,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:14:20,850.850 INFO    ] No existing commands found in stream
[2026-06-22 18:14:25,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:14:25,864.864 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-22 18:14:29,762.762 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:14:29,765.765 INFO    ] Checking for system updates...
[2026-06-22 18:14:29,806.806 INFO    ] 200
[2026-06-22 18:14:29,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:14:29,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:14:29,873.873 INFO    ] No update needed
[2026-06-22 18:14:29,876.876 INFO    ] Checking for camera pi updates...
[2026-06-22 18:14:29,913.913 INFO    ] 200
[2026-06-22 18:14:29,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:14:29,958.958 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:14:39,978.978 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam06202507.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by ConnectTimeoutError(<urllib3.connection.HTTPConnection object at 0x73d72150>, 'Connection to tmcam06202507.local timed out. (connect timeout=5)'))
[2026-06-22 18:14:40,011.011 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-06-22 18:14:40,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:14:40,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:14:40,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:14:40,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:14:42,074.074 INFO    ] ================================================
[2026-06-22 18:14:42,091.091 INFO    ] Launching Daemon at Mon Jun 22 18:14:42 IST 2026
[2026-06-22 18:14:42,102.102 INFO    ] ================================================
[2026-06-22 18:14:42,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:14:42
[2026-06-22 18:14:43,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:14:43,582.582 INFO    ] Initializing speech engine...
[2026-06-22 18:14:43,593.593 INFO    ] 2026-06-22 18:14:43
[2026-06-22 18:14:43,863.863 INFO    ] 2026-06-22 18:14:43
[2026-06-22 18:14:43,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:14:44,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:14:44,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:14:44,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:14:44,287.287 INFO    ] time= 22/06/2026 18:14:44
[2026-06-22 18:14:44,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:14:44,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:14:44,371.371 INFO    ] No existing commands found in stream
[2026-06-22 18:14:49,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:14:49,393.393 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-22 18:14:55,001.001 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 18:14:55,004.004 INFO    ] Checking for system updates...
[2026-06-22 18:14:55,058.058 INFO    ] 200
[2026-06-22 18:14:55,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:14:55,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:14:55,117.117 INFO    ] No update needed
[2026-06-22 18:14:55,119.119 INFO    ] Checking for camera pi updates...
[2026-06-22 18:14:55,153.153 INFO    ] 200
[2026-06-22 18:14:55,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:14:55,197.197 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:14:55,280.280 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:14:55,282.282 INFO    ] No camera update needed
[2026-06-22 18:14:55,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:14:55,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:14:55,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:14:55,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:14:57,342.342 INFO    ] ================================================
[2026-06-22 18:14:57,357.357 INFO    ] Launching Daemon at Mon Jun 22 18:14:57 IST 2026
[2026-06-22 18:14:57,368.368 INFO    ] ================================================
[2026-06-22 18:14:58,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:14:58
[2026-06-22 18:14:58,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:14:59,007.007 INFO    ] Initializing speech engine...
[2026-06-22 18:14:59,016.016 INFO    ] 2026-06-22 18:14:59
[2026-06-22 18:14:59,311.311 INFO    ] 2026-06-22 18:14:59
[2026-06-22 18:14:59,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:14:59,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:14:59,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:14:59,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:14:59,844.844 INFO    ] time= 22/06/2026 18:14:59
[2026-06-22 18:14:59,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:14:59,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:14:59,996.996 INFO    ] No existing commands found in stream
[2026-06-22 18:15:05,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:15:05,014.014 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-22 18:15:06,372.372 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:15:06,375.375 INFO    ] Checking for system updates...
[2026-06-22 18:15:06,413.413 INFO    ] 200
[2026-06-22 18:15:06,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:15:06,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:15:06,491.491 INFO    ] No update needed
[2026-06-22 18:15:06,493.493 INFO    ] Checking for camera pi updates...
[2026-06-22 18:15:06,533.533 INFO    ] 200
[2026-06-22 18:15:06,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:15:06,583.583 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:15:06,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:15:06,682.682 INFO    ] No camera update needed
[2026-06-22 18:15:06,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:15:06,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:15:06,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:15:06,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:15:08,739.739 INFO    ] ================================================
[2026-06-22 18:15:08,755.755 INFO    ] Launching Daemon at Mon Jun 22 18:15:08 IST 2026
[2026-06-22 18:15:08,767.767 INFO    ] ================================================
[2026-06-22 18:15:09,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:15:09
[2026-06-22 18:15:09,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:15:10,182.182 INFO    ] Initializing speech engine...
[2026-06-22 18:15:10,206.206 INFO    ] 2026-06-22 18:15:10
[2026-06-22 18:15:10,476.476 INFO    ] 2026-06-22 18:15:10
[2026-06-22 18:15:10,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:15:10,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:15:10,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:15:10,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:15:10,982.982 INFO    ] time= 22/06/2026 18:15:10
[2026-06-22 18:15:11,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:15:11,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:15:11,159.159 INFO    ] No existing commands found in stream
[2026-06-22 18:15:16,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:15:16,174.174 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-22 18:15:17,938.938 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:15:17,941.941 INFO    ] Checking for system updates...
[2026-06-22 18:15:17,977.977 INFO    ] 200
[2026-06-22 18:15:17,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:15:18,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:15:18,042.042 INFO    ] No update needed
[2026-06-22 18:15:18,045.045 INFO    ] Checking for camera pi updates...
[2026-06-22 18:15:18,086.086 INFO    ] 200
[2026-06-22 18:15:18,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:15:18,136.136 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:15:18,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:15:18,235.235 INFO    ] No camera update needed
[2026-06-22 18:15:18,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:15:18,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:15:18,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:15:18,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:15:20,290.290 INFO    ] ================================================
[2026-06-22 18:15:20,306.306 INFO    ] Launching Daemon at Mon Jun 22 18:15:20 IST 2026
[2026-06-22 18:15:20,318.318 INFO    ] ================================================
[2026-06-22 18:15:20,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:15:20
[2026-06-22 18:15:21,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:15:21,696.696 INFO    ] Initializing speech engine...
[2026-06-22 18:15:21,704.704 INFO    ] 2026-06-22 18:15:21
[2026-06-22 18:15:21,979.979 INFO    ] 2026-06-22 18:15:21
[2026-06-22 18:15:22,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:15:25,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:15:25,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:15:26,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:15:26,071.071 INFO    ] time= 22/06/2026 18:15:26
[2026-06-22 18:15:26,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:15:26,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:15:26,128.128 INFO    ] No existing commands found in stream
[2026-06-22 18:15:31,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:15:31,141.141 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-22 18:15:32,936.936 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:15:32,939.939 INFO    ] Checking for system updates...
[2026-06-22 18:15:32,978.978 INFO    ] 200
[2026-06-22 18:15:32,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:15:33,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:15:33,043.043 INFO    ] No update needed
[2026-06-22 18:15:33,046.046 INFO    ] Checking for camera pi updates...
[2026-06-22 18:15:33,085.085 INFO    ] 200
[2026-06-22 18:15:33,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:15:33,148.148 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:15:33,214.214 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:15:33,217.217 INFO    ] No camera update needed
[2026-06-22 18:15:33,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:15:33,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:15:33,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:15:33,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:15:35,274.274 INFO    ] ================================================
[2026-06-22 18:15:35,290.290 INFO    ] Launching Daemon at Mon Jun 22 18:15:35 IST 2026
[2026-06-22 18:15:35,301.301 INFO    ] ================================================
[2026-06-22 18:15:35,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:15:35
[2026-06-22 18:15:36,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:15:36,645.645 INFO    ] Initializing speech engine...
[2026-06-22 18:15:36,653.653 INFO    ] 2026-06-22 18:15:36
[2026-06-22 18:15:36,901.901 INFO    ] 2026-06-22 18:15:36
[2026-06-22 18:15:36,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:15:37,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:15:37,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:15:37,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:15:37,338.338 INFO    ] time= 22/06/2026 18:15:37
[2026-06-22 18:15:37,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:15:37,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:15:37,517.517 INFO    ] No existing commands found in stream
[2026-06-22 18:15:42,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:15:42,531.531 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-22 18:15:46,285.285 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:15:46,287.287 INFO    ] Checking for system updates...
[2026-06-22 18:15:46,323.323 INFO    ] 200
[2026-06-22 18:15:46,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:15:46,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:15:46,382.382 INFO    ] No update needed
[2026-06-22 18:15:46,385.385 INFO    ] Checking for camera pi updates...
[2026-06-22 18:15:46,419.419 INFO    ] 200
[2026-06-22 18:15:46,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:15:46,461.461 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:15:46,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:15:46,550.550 INFO    ] No camera update needed
[2026-06-22 18:15:46,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:15:46,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:15:46,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:15:46,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:15:48,606.606 INFO    ] ================================================
[2026-06-22 18:15:48,622.622 INFO    ] Launching Daemon at Mon Jun 22 18:15:48 IST 2026
[2026-06-22 18:15:48,633.633 INFO    ] ================================================
[2026-06-22 18:15:49,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:15:49
[2026-06-22 18:15:49,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:15:49,956.956 INFO    ] Initializing speech engine...
[2026-06-22 18:15:49,964.964 INFO    ] 2026-06-22 18:15:49
[2026-06-22 18:15:50,242.242 INFO    ] 2026-06-22 18:15:50
[2026-06-22 18:15:50,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:15:50,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:15:50,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:15:50,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:15:50,732.732 INFO    ] time= 22/06/2026 18:15:50
[2026-06-22 18:15:50,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:15:50,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:15:50,966.966 INFO    ] No existing commands found in stream
[2026-06-22 18:15:55,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:15:55,983.983 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-22 18:15:59,359.359 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:15:59,362.362 INFO    ] Checking for system updates...
[2026-06-22 18:15:59,399.399 INFO    ] 200
[2026-06-22 18:15:59,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:15:59,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:15:59,464.464 INFO    ] No update needed
[2026-06-22 18:15:59,467.467 INFO    ] Checking for camera pi updates...
[2026-06-22 18:15:59,501.501 INFO    ] 200
[2026-06-22 18:15:59,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:15:59,546.546 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:15:59,636.636 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:15:59,639.639 INFO    ] No camera update needed
[2026-06-22 18:15:59,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:15:59,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:15:59,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:15:59,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:16:01,698.698 INFO    ] ================================================
[2026-06-22 18:16:01,717.717 INFO    ] Launching Daemon at Mon Jun 22 18:16:01 IST 2026
[2026-06-22 18:16:01,729.729 INFO    ] ================================================
[2026-06-22 18:16:02,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:16:02
[2026-06-22 18:16:03,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:16:03,609.609 INFO    ] Initializing speech engine...
[2026-06-22 18:16:03,617.617 INFO    ] 2026-06-22 18:16:03
[2026-06-22 18:16:03,882.882 INFO    ] 2026-06-22 18:16:03
[2026-06-22 18:16:03,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:16:04,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:16:04,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:16:04,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:16:04,353.353 INFO    ] time= 22/06/2026 18:16:04
[2026-06-22 18:16:04,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:16:04,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:16:04,571.571 INFO    ] No existing commands found in stream
[2026-06-22 18:16:09,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:16:09,596.596 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-22 18:16:12,599.599 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:16:12,602.602 INFO    ] Checking for system updates...
[2026-06-22 18:16:12,638.638 INFO    ] 200
[2026-06-22 18:16:12,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:16:12,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:16:12,701.701 INFO    ] No update needed
[2026-06-22 18:16:12,703.703 INFO    ] Checking for camera pi updates...
[2026-06-22 18:16:12,741.741 INFO    ] 200
[2026-06-22 18:16:12,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:16:12,784.784 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:16:12,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:16:12,883.883 INFO    ] No camera update needed
[2026-06-22 18:16:12,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:16:12,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:16:12,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:16:12,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:16:14,938.938 INFO    ] ================================================
[2026-06-22 18:16:14,953.953 INFO    ] Launching Daemon at Mon Jun 22 18:16:14 IST 2026
[2026-06-22 18:16:14,964.964 INFO    ] ================================================
[2026-06-22 18:16:15,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:16:15
[2026-06-22 18:16:16,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:16:16,324.324 INFO    ] Initializing speech engine...
[2026-06-22 18:16:16,348.348 INFO    ] 2026-06-22 18:16:16
[2026-06-22 18:16:16,621.621 INFO    ] 2026-06-22 18:16:16
[2026-06-22 18:16:16,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:16:16,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:16:16,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:16:17,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:16:17,130.130 INFO    ] time= 22/06/2026 18:16:17
[2026-06-22 18:16:17,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:16:17,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:16:17,314.314 INFO    ] No existing commands found in stream
[2026-06-22 18:16:22,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:16:22,329.329 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-22 18:16:27,480.480 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 18:16:27,482.482 INFO    ] Checking for system updates...
[2026-06-22 18:16:27,518.518 INFO    ] 200
[2026-06-22 18:16:27,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:16:27,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:16:27,578.578 INFO    ] No update needed
[2026-06-22 18:16:27,581.581 INFO    ] Checking for camera pi updates...
[2026-06-22 18:16:27,615.615 INFO    ] 200
[2026-06-22 18:16:27,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:16:27,659.659 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:16:27,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:16:27,722.722 INFO    ] No camera update needed
[2026-06-22 18:16:27,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:16:27,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:16:27,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:16:27,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:16:29,778.778 INFO    ] ================================================
[2026-06-22 18:16:29,793.793 INFO    ] Launching Daemon at Mon Jun 22 18:16:29 IST 2026
[2026-06-22 18:16:29,804.804 INFO    ] ================================================
[2026-06-22 18:16:30,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:16:30
[2026-06-22 18:16:31,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:16:31,272.272 INFO    ] Initializing speech engine...
[2026-06-22 18:16:31,292.292 INFO    ] 2026-06-22 18:16:31
[2026-06-22 18:16:31,553.553 INFO    ] 2026-06-22 18:16:31
[2026-06-22 18:16:31,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:16:31,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:16:31,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:16:32,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:16:32,120.120 INFO    ] time= 22/06/2026 18:16:32
[2026-06-22 18:16:32,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:16:32,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:16:32,259.259 INFO    ] No existing commands found in stream
[2026-06-22 18:16:37,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:16:37,289.289 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-22 18:16:40,464.464 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:16:40,467.467 INFO    ] Checking for system updates...
[2026-06-22 18:16:40,503.503 INFO    ] 200
[2026-06-22 18:16:40,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:16:40,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:16:40,561.561 INFO    ] No update needed
[2026-06-22 18:16:40,563.563 INFO    ] Checking for camera pi updates...
[2026-06-22 18:16:40,597.597 INFO    ] 200
[2026-06-22 18:16:40,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:16:40,640.640 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:16:40,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:16:40,720.720 INFO    ] No camera update needed
[2026-06-22 18:16:40,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:16:40,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:16:40,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:16:40,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:16:42,780.780 INFO    ] ================================================
[2026-06-22 18:16:42,796.796 INFO    ] Launching Daemon at Mon Jun 22 18:16:42 IST 2026
[2026-06-22 18:16:42,807.807 INFO    ] ================================================
[2026-06-22 18:16:43,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:16:43
[2026-06-22 18:16:44,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:16:44,431.431 INFO    ] Initializing speech engine...
[2026-06-22 18:16:44,440.440 INFO    ] 2026-06-22 18:16:44
[2026-06-22 18:16:44,719.719 INFO    ] 2026-06-22 18:16:44
[2026-06-22 18:16:44,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:16:45,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:16:45,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:16:45,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:16:45,183.183 INFO    ] time= 22/06/2026 18:16:45
[2026-06-22 18:16:45,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:16:45,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:16:45,416.416 INFO    ] No existing commands found in stream
[2026-06-22 18:16:50,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:16:50,445.445 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-22 18:16:53,562.562 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:16:53,565.565 INFO    ] Checking for system updates...
[2026-06-22 18:16:53,604.604 INFO    ] 200
[2026-06-22 18:16:53,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:16:53,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:16:53,671.671 INFO    ] No update needed
[2026-06-22 18:16:53,674.674 INFO    ] Checking for camera pi updates...
[2026-06-22 18:16:53,710.710 INFO    ] 200
[2026-06-22 18:16:53,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:16:53,755.755 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:16:53,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:16:53,937.937 INFO    ] No camera update needed
[2026-06-22 18:16:53,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:16:53,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:16:53,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:16:53,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:16:56,992.992 INFO    ] ================================================
[2026-06-22 18:16:56,012.012 INFO    ] Launching Daemon at Mon Jun 22 18:16:56 IST 2026
[2026-06-22 18:16:56,023.023 INFO    ] ================================================
[2026-06-22 18:16:56,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:16:56
[2026-06-22 18:16:57,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:16:57,385.385 INFO    ] Initializing speech engine...
[2026-06-22 18:16:57,390.390 INFO    ] 2026-06-22 18:16:57
[2026-06-22 18:16:57,689.689 INFO    ] 2026-06-22 18:16:57
[2026-06-22 18:16:57,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:16:57,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:16:57,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:16:58,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:16:58,111.111 INFO    ] time= 22/06/2026 18:16:58
[2026-06-22 18:16:58,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:16:58,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:16:58,199.199 INFO    ] No existing commands found in stream
[2026-06-22 18:17:03,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:17:03,238.238 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-22 18:17:07,219.219 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:17:07,222.222 INFO    ] Checking for system updates...
[2026-06-22 18:17:07,258.258 INFO    ] 200
[2026-06-22 18:17:07,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:17:07,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:17:07,316.316 INFO    ] No update needed
[2026-06-22 18:17:07,319.319 INFO    ] Checking for camera pi updates...
[2026-06-22 18:17:07,353.353 INFO    ] 200
[2026-06-22 18:17:07,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:17:07,396.396 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:17:07,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:17:07,497.497 INFO    ] No camera update needed
[2026-06-22 18:17:07,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:17:07,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:17:07,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:17:07,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:17:09,553.553 INFO    ] ================================================
[2026-06-22 18:17:09,568.568 INFO    ] Launching Daemon at Mon Jun 22 18:17:09 IST 2026
[2026-06-22 18:17:09,579.579 INFO    ] ================================================
[2026-06-22 18:17:10,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:17:10
[2026-06-22 18:17:10,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:17:10,951.951 INFO    ] Initializing speech engine...
[2026-06-22 18:17:10,958.958 INFO    ] 2026-06-22 18:17:10
[2026-06-22 18:17:11,208.208 INFO    ] 2026-06-22 18:17:11
[2026-06-22 18:17:11,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:17:11,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:17:11,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:17:11,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:17:11,642.642 INFO    ] time= 22/06/2026 18:17:11
[2026-06-22 18:17:11,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:17:11,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:17:11,792.792 INFO    ] No existing commands found in stream
[2026-06-22 18:17:16,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:17:16,816.816 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-22 18:17:20,179.179 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:17:20,181.181 INFO    ] Checking for system updates...
[2026-06-22 18:17:20,217.217 INFO    ] 200
[2026-06-22 18:17:20,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:17:20,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:17:20,275.275 INFO    ] No update needed
[2026-06-22 18:17:20,277.277 INFO    ] Checking for camera pi updates...
[2026-06-22 18:17:20,311.311 INFO    ] 200
[2026-06-22 18:17:20,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:17:20,358.358 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:17:20,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:17:20,441.441 INFO    ] No camera update needed
[2026-06-22 18:17:20,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:17:20,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:17:20,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:17:20,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:17:22,499.499 INFO    ] ================================================
[2026-06-22 18:17:22,514.514 INFO    ] Launching Daemon at Mon Jun 22 18:17:22 IST 2026
[2026-06-22 18:17:22,525.525 INFO    ] ================================================
[2026-06-22 18:17:23,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:17:23
[2026-06-22 18:17:23,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:17:23,995.995 INFO    ] Initializing speech engine...
[2026-06-22 18:17:24,003.003 INFO    ] 2026-06-22 18:17:23
[2026-06-22 18:17:24,263.263 INFO    ] 2026-06-22 18:17:24
[2026-06-22 18:17:24,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:17:27,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:17:27,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:17:27,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:17:27,822.822 INFO    ] time= 22/06/2026 18:17:27
[2026-06-22 18:17:27,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:17:27,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:17:27,924.924 INFO    ] No existing commands found in stream
[2026-06-22 18:17:32,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:17:32,936.936 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-22 18:17:35,455.455 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:17:35,456.456 INFO    ] Checking for system updates...
[2026-06-22 18:17:35,477.477 INFO    ] 200
[2026-06-22 18:17:35,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:17:35,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:17:35,510.510 INFO    ] No update needed
[2026-06-22 18:17:35,512.512 INFO    ] Checking for camera pi updates...
[2026-06-22 18:17:35,531.531 INFO    ] 200
[2026-06-22 18:17:35,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:17:35,573.573 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:17:35,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:17:35,667.667 INFO    ] No camera update needed
[2026-06-22 18:17:35,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:17:35,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:17:35,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:17:35,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:17:37,722.722 INFO    ] ================================================
[2026-06-22 18:17:37,737.737 INFO    ] Launching Daemon at Mon Jun 22 18:17:37 IST 2026
[2026-06-22 18:17:37,748.748 INFO    ] ================================================
[2026-06-22 18:17:38,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:17:38
[2026-06-22 18:17:38,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:17:39,183.183 INFO    ] Initializing speech engine...
[2026-06-22 18:17:39,190.190 INFO    ] 2026-06-22 18:17:39
[2026-06-22 18:17:39,467.467 INFO    ] 2026-06-22 18:17:39
[2026-06-22 18:17:39,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:17:39,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:17:39,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:17:39,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:17:39,872.872 INFO    ] time= 22/06/2026 18:17:39
[2026-06-22 18:17:39,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:17:39,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:17:39,974.974 INFO    ] No existing commands found in stream
[2026-06-22 18:17:45,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:17:45,007.007 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-22 18:17:45,670.670 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:17:45,672.672 INFO    ] Checking for system updates...
[2026-06-22 18:17:45,708.708 INFO    ] 200
[2026-06-22 18:17:45,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:17:45,764.764 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:17:45,766.766 INFO    ] No update needed
[2026-06-22 18:17:45,769.769 INFO    ] Checking for camera pi updates...
[2026-06-22 18:17:45,802.802 INFO    ] 200
[2026-06-22 18:17:45,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:17:45,845.845 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:17:45,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:17:45,928.928 INFO    ] No camera update needed
[2026-06-22 18:17:45,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:17:45,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:17:45,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:17:45,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:17:47,984.984 INFO    ] ================================================
[2026-06-22 18:17:48,000.000 INFO    ] Launching Daemon at Mon Jun 22 18:17:47 IST 2026
[2026-06-22 18:17:48,011.011 INFO    ] ================================================
[2026-06-22 18:17:48,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:17:48
[2026-06-22 18:17:49,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:17:49,330.330 INFO    ] Initializing speech engine...
[2026-06-22 18:17:49,339.339 INFO    ] 2026-06-22 18:17:49
[2026-06-22 18:17:49,632.632 INFO    ] 2026-06-22 18:17:49
[2026-06-22 18:17:49,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:17:49,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:17:49,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:17:50,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:17:50,052.052 INFO    ] time= 22/06/2026 18:17:50
[2026-06-22 18:17:50,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:17:50,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:17:50,141.141 INFO    ] No existing commands found in stream
[2026-06-22 18:17:55,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:17:55,179.179 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-22 18:17:59,350.350 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:17:59,353.353 INFO    ] Checking for system updates...
[2026-06-22 18:17:59,392.392 INFO    ] 200
[2026-06-22 18:17:59,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:17:59,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:17:59,450.450 INFO    ] No update needed
[2026-06-22 18:17:59,452.452 INFO    ] Checking for camera pi updates...
[2026-06-22 18:17:59,486.486 INFO    ] 200
[2026-06-22 18:17:59,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:17:59,529.529 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:17:59,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:17:59,581.581 INFO    ] No camera update needed
[2026-06-22 18:17:59,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:17:59,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:17:59,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:17:59,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:18:01,637.637 INFO    ] ================================================
[2026-06-22 18:18:01,652.652 INFO    ] Launching Daemon at Mon Jun 22 18:18:01 IST 2026
[2026-06-22 18:18:01,663.663 INFO    ] ================================================
[2026-06-22 18:18:02,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:18:02
[2026-06-22 18:18:03,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:18:03,536.536 INFO    ] Initializing speech engine...
[2026-06-22 18:18:03,548.548 INFO    ] 2026-06-22 18:18:03
[2026-06-22 18:18:03,828.828 INFO    ] 2026-06-22 18:18:03
[2026-06-22 18:18:03,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:18:04,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:18:04,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:18:04,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:18:04,406.406 INFO    ] time= 22/06/2026 18:18:04
[2026-06-22 18:18:04,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:18:04,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:18:04,548.548 INFO    ] No existing commands found in stream
[2026-06-22 18:18:09,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:18:09,586.586 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-22 18:18:13,130.130 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 18:18:13,132.132 INFO    ] Checking for system updates...
[2026-06-22 18:18:13,168.168 INFO    ] 200
[2026-06-22 18:18:13,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:18:13,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:18:13,226.226 INFO    ] No update needed
[2026-06-22 18:18:13,229.229 INFO    ] Checking for camera pi updates...
[2026-06-22 18:18:13,262.262 INFO    ] 200
[2026-06-22 18:18:13,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:18:13,306.306 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:18:13,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:18:13,404.404 INFO    ] No camera update needed
[2026-06-22 18:18:13,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:18:13,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:18:13,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:18:13,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:18:15,462.462 INFO    ] ================================================
[2026-06-22 18:18:15,478.478 INFO    ] Launching Daemon at Mon Jun 22 18:18:15 IST 2026
[2026-06-22 18:18:15,489.489 INFO    ] ================================================
[2026-06-22 18:18:16,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:18:16
[2026-06-22 18:18:16,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:18:17,116.116 INFO    ] Initializing speech engine...
[2026-06-22 18:18:17,124.124 INFO    ] 2026-06-22 18:18:17
[2026-06-22 18:18:17,437.437 INFO    ] 2026-06-22 18:18:17
[2026-06-22 18:18:17,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:18:17,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:18:17,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:18:18,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:18:18,072.072 INFO    ] time= 22/06/2026 18:18:18
[2026-06-22 18:18:18,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:18:18,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:18:18,313.313 INFO    ] No existing commands found in stream
[2026-06-22 18:18:23,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:18:23,335.335 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-22 18:18:24,871.871 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:18:24,872.872 INFO    ] Checking for system updates...
[2026-06-22 18:18:24,894.894 INFO    ] 200
[2026-06-22 18:18:24,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:18:24,927.927 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:18:24,929.929 INFO    ] No update needed
[2026-06-22 18:18:24,930.930 INFO    ] Checking for camera pi updates...
[2026-06-22 18:18:24,950.950 INFO    ] 200
[2026-06-22 18:18:24,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:18:24,980.980 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:18:25,037.037 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:18:25,040.040 INFO    ] No camera update needed
[2026-06-22 18:18:25,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:18:25,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:18:25,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:18:25,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:18:27,102.102 INFO    ] ================================================
[2026-06-22 18:18:27,119.119 INFO    ] Launching Daemon at Mon Jun 22 18:18:27 IST 2026
[2026-06-22 18:18:27,130.130 INFO    ] ================================================
[2026-06-22 18:18:27,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:18:27
[2026-06-22 18:18:28,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:18:28,503.503 INFO    ] Initializing speech engine...
[2026-06-22 18:18:28,510.510 INFO    ] 2026-06-22 18:18:28
[2026-06-22 18:18:28,794.794 INFO    ] 2026-06-22 18:18:28
[2026-06-22 18:18:28,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:18:29,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:18:29,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:18:29,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:18:29,791.791 INFO    ] time= 22/06/2026 18:18:29
[2026-06-22 18:18:29,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:18:29,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:18:29,916.916 INFO    ] No existing commands found in stream
[2026-06-22 18:18:34,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:18:34,944.944 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-22 18:18:41,240.240 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:18:41,243.243 INFO    ] Checking for system updates...
[2026-06-22 18:18:41,279.279 INFO    ] 200
[2026-06-22 18:18:41,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:18:41,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:18:41,339.339 INFO    ] No update needed
[2026-06-22 18:18:41,342.342 INFO    ] Checking for camera pi updates...
[2026-06-22 18:18:41,376.376 INFO    ] 200
[2026-06-22 18:18:41,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:18:41,419.419 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:18:41,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:18:41,480.480 INFO    ] No camera update needed
[2026-06-22 18:18:41,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:18:41,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:18:41,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:18:41,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:18:43,537.537 INFO    ] ================================================
[2026-06-22 18:18:43,553.553 INFO    ] Launching Daemon at Mon Jun 22 18:18:43 IST 2026
[2026-06-22 18:18:43,565.565 INFO    ] ================================================
[2026-06-22 18:18:44,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:18:44
[2026-06-22 18:18:44,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:18:45,030.030 INFO    ] Initializing speech engine...
[2026-06-22 18:18:45,039.039 INFO    ] 2026-06-22 18:18:45
[2026-06-22 18:18:45,291.291 INFO    ] 2026-06-22 18:18:45
[2026-06-22 18:18:45,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:18:45,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:18:45,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:18:45,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:18:45,748.748 INFO    ] time= 22/06/2026 18:18:45
[2026-06-22 18:18:45,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:18:45,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:18:46,019.019 INFO    ] No existing commands found in stream
[2026-06-22 18:18:51,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:18:51,039.039 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-22 18:18:54,579.579 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:18:54,582.582 INFO    ] Checking for system updates...
[2026-06-22 18:18:54,618.618 INFO    ] 200
[2026-06-22 18:18:54,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:18:54,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:18:54,683.683 INFO    ] No update needed
[2026-06-22 18:18:54,686.686 INFO    ] Checking for camera pi updates...
[2026-06-22 18:18:54,724.724 INFO    ] 200
[2026-06-22 18:18:54,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:18:54,767.767 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:18:54,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:18:54,823.823 INFO    ] No camera update needed
[2026-06-22 18:18:54,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:18:54,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:18:54,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:18:54,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:18:56,880.880 INFO    ] ================================================
[2026-06-22 18:18:56,896.896 INFO    ] Launching Daemon at Mon Jun 22 18:18:56 IST 2026
[2026-06-22 18:18:56,907.907 INFO    ] ================================================
[2026-06-22 18:18:57,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:18:57
[2026-06-22 18:18:58,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:18:58,563.563 INFO    ] Initializing speech engine...
[2026-06-22 18:18:58,574.574 INFO    ] 2026-06-22 18:18:58
[2026-06-22 18:18:58,888.888 INFO    ] 2026-06-22 18:18:58
[2026-06-22 18:18:58,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:19:00,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:19:00,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:19:00,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:19:00,710.710 INFO    ] time= 22/06/2026 18:19:00
[2026-06-22 18:19:00,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:19:00,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:19:00,822.822 INFO    ] No existing commands found in stream
[2026-06-22 18:19:05,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:19:05,845.845 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-22 18:19:07,926.926 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:19:07,927.927 INFO    ] Checking for system updates...
[2026-06-22 18:19:07,948.948 INFO    ] 200
[2026-06-22 18:19:07,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:19:08,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:19:08,015.015 INFO    ] No update needed
[2026-06-22 18:19:08,017.017 INFO    ] Checking for camera pi updates...
[2026-06-22 18:19:08,052.052 INFO    ] 200
[2026-06-22 18:19:08,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:19:08,101.101 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:19:08,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:19:08,194.194 INFO    ] No camera update needed
[2026-06-22 18:19:08,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:19:08,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:19:08,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:19:08,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:19:10,250.250 INFO    ] ================================================
[2026-06-22 18:19:10,266.266 INFO    ] Launching Daemon at Mon Jun 22 18:19:10 IST 2026
[2026-06-22 18:19:10,277.277 INFO    ] ================================================
[2026-06-22 18:19:10,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:19:10
[2026-06-22 18:19:11,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:19:11,603.603 INFO    ] Initializing speech engine...
[2026-06-22 18:19:11,619.619 INFO    ] 2026-06-22 18:19:11
[2026-06-22 18:19:11,913.913 INFO    ] 2026-06-22 18:19:11
[2026-06-22 18:19:11,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:19:12,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:19:12,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:19:12,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:19:12,532.532 INFO    ] time= 22/06/2026 18:19:12
[2026-06-22 18:19:12,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:19:12,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:19:12,752.752 INFO    ] No existing commands found in stream
[2026-06-22 18:19:17,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:19:17,787.787 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-22 18:19:21,459.459 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:19:21,462.462 INFO    ] Checking for system updates...
[2026-06-22 18:19:21,499.499 INFO    ] 200
[2026-06-22 18:19:21,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:19:21,554.554 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:19:21,557.557 INFO    ] No update needed
[2026-06-22 18:19:21,559.559 INFO    ] Checking for camera pi updates...
[2026-06-22 18:19:21,593.593 INFO    ] 200
[2026-06-22 18:19:21,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:19:21,642.642 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:19:21,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:19:21,727.727 INFO    ] No camera update needed
[2026-06-22 18:19:21,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:19:21,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:19:21,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:19:21,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:19:23,783.783 INFO    ] ================================================
[2026-06-22 18:19:23,799.799 INFO    ] Launching Daemon at Mon Jun 22 18:19:23 IST 2026
[2026-06-22 18:19:23,811.811 INFO    ] ================================================
[2026-06-22 18:19:24,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:19:24
[2026-06-22 18:19:24,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:19:25,197.197 INFO    ] Initializing speech engine...
[2026-06-22 18:19:25,205.205 INFO    ] 2026-06-22 18:19:25
[2026-06-22 18:19:25,464.464 INFO    ] 2026-06-22 18:19:25
[2026-06-22 18:19:25,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:19:25,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:19:25,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:19:26,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:19:26,020.020 INFO    ] time= 22/06/2026 18:19:26
[2026-06-22 18:19:26,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:19:26,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:19:26,191.191 INFO    ] No existing commands found in stream
[2026-06-22 18:19:31,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:19:31,223.223 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-22 18:19:32,948.948 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:19:32,951.951 INFO    ] Checking for system updates...
[2026-06-22 18:19:32,987.987 INFO    ] 200
[2026-06-22 18:19:32,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:19:33,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:19:33,053.053 INFO    ] No update needed
[2026-06-22 18:19:33,055.055 INFO    ] Checking for camera pi updates...
[2026-06-22 18:19:33,089.089 INFO    ] 200
[2026-06-22 18:19:33,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:19:33,133.133 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:19:33,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:19:33,216.216 INFO    ] No camera update needed
[2026-06-22 18:19:33,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:19:33,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:19:33,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:19:33,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:19:35,272.272 INFO    ] ================================================
[2026-06-22 18:19:35,288.288 INFO    ] Launching Daemon at Mon Jun 22 18:19:35 IST 2026
[2026-06-22 18:19:35,299.299 INFO    ] ================================================
[2026-06-22 18:19:35,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:19:35
[2026-06-22 18:19:36,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:19:36,839.839 INFO    ] Initializing speech engine...
[2026-06-22 18:19:36,846.846 INFO    ] 2026-06-22 18:19:36
[2026-06-22 18:19:37,095.095 INFO    ] 2026-06-22 18:19:37
[2026-06-22 18:19:37,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:19:37,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:19:37,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:19:37,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:19:37,561.561 INFO    ] time= 22/06/2026 18:19:37
[2026-06-22 18:19:37,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:19:37,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:19:37,796.796 INFO    ] No existing commands found in stream
[2026-06-22 18:19:42,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:19:42,830.830 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-22 18:19:44,899.899 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:19:44,902.902 INFO    ] Checking for system updates...
[2026-06-22 18:19:44,943.943 INFO    ] 200
[2026-06-22 18:19:44,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:19:44,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:19:45,002.002 INFO    ] No update needed
[2026-06-22 18:19:45,004.004 INFO    ] Checking for camera pi updates...
[2026-06-22 18:19:45,039.039 INFO    ] 200
[2026-06-22 18:19:45,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:19:45,081.081 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:19:45,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:19:45,152.152 INFO    ] No camera update needed
[2026-06-22 18:19:45,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:19:45,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:19:45,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:19:45,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:19:47,209.209 INFO    ] ================================================
[2026-06-22 18:19:47,226.226 INFO    ] Launching Daemon at Mon Jun 22 18:19:47 IST 2026
[2026-06-22 18:19:47,238.238 INFO    ] ================================================
[2026-06-22 18:19:47,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:19:47
[2026-06-22 18:19:48,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:19:48,718.718 INFO    ] Initializing speech engine...
[2026-06-22 18:19:48,727.727 INFO    ] 2026-06-22 18:19:48
[2026-06-22 18:19:48,990.990 INFO    ] 2026-06-22 18:19:48
[2026-06-22 18:19:49,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:19:49,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:19:49,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:19:49,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:19:49,461.461 INFO    ] time= 22/06/2026 18:19:49
[2026-06-22 18:19:49,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:19:49,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:19:49,686.686 INFO    ] No existing commands found in stream
[2026-06-22 18:19:54,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:19:54,715.715 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-22 18:19:55,799.799 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:19:55,802.802 INFO    ] Checking for system updates...
[2026-06-22 18:19:55,843.843 INFO    ] 200
[2026-06-22 18:19:55,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:19:55,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:19:55,910.910 INFO    ] No update needed
[2026-06-22 18:19:55,912.912 INFO    ] Checking for camera pi updates...
[2026-06-22 18:19:55,946.946 INFO    ] 200
[2026-06-22 18:19:55,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:19:55,995.995 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:19:56,088.088 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:19:56,091.091 INFO    ] No camera update needed
[2026-06-22 18:19:56,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:19:56,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:19:56,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:19:56,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:19:58,149.149 INFO    ] ================================================
[2026-06-22 18:19:58,165.165 INFO    ] Launching Daemon at Mon Jun 22 18:19:58 IST 2026
[2026-06-22 18:19:58,178.178 INFO    ] ================================================
[2026-06-22 18:19:58,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:19:58
[2026-06-22 18:19:59,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:19:59,536.536 INFO    ] Initializing speech engine...
[2026-06-22 18:19:59,559.559 INFO    ] 2026-06-22 18:19:59
[2026-06-22 18:19:59,818.818 INFO    ] 2026-06-22 18:19:59
[2026-06-22 18:19:59,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:20:01,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:20:01,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:20:01,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:20:01,633.633 INFO    ] time= 22/06/2026 18:20:01
[2026-06-22 18:20:01,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:20:01,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:20:01,756.756 INFO    ] No existing commands found in stream
[2026-06-22 18:20:06,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:20:06,768.768 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-22 18:20:09,046.046 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:20:09,048.048 INFO    ] Checking for system updates...
[2026-06-22 18:20:09,091.091 INFO    ] 200
[2026-06-22 18:20:09,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:20:09,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:20:09,153.153 INFO    ] No update needed
[2026-06-22 18:20:09,156.156 INFO    ] Checking for camera pi updates...
[2026-06-22 18:20:09,197.197 INFO    ] 200
[2026-06-22 18:20:09,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:20:09,248.248 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:20:09,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:20:09,335.335 INFO    ] No camera update needed
[2026-06-22 18:20:09,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:20:09,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:20:09,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:20:09,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:20:11,397.397 INFO    ] ================================================
[2026-06-22 18:20:11,413.413 INFO    ] Launching Daemon at Mon Jun 22 18:20:11 IST 2026
[2026-06-22 18:20:11,424.424 INFO    ] ================================================
[2026-06-22 18:20:12,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:20:12
[2026-06-22 18:20:12,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:20:12,908.908 INFO    ] Initializing speech engine...
[2026-06-22 18:20:12,931.931 INFO    ] 2026-06-22 18:20:12
[2026-06-22 18:20:13,217.217 INFO    ] 2026-06-22 18:20:13
[2026-06-22 18:20:13,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:20:13,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:20:13,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:20:13,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:20:13,714.714 INFO    ] time= 22/06/2026 18:20:13
[2026-06-22 18:20:13,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:20:13,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:20:13,912.912 INFO    ] No existing commands found in stream
[2026-06-22 18:20:18,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:20:18,950.950 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-22 18:20:21,225.225 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 18:20:21,228.228 INFO    ] Checking for system updates...
[2026-06-22 18:20:21,263.263 INFO    ] 200
[2026-06-22 18:20:21,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:20:21,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:20:21,321.321 INFO    ] No update needed
[2026-06-22 18:20:21,323.323 INFO    ] Checking for camera pi updates...
[2026-06-22 18:20:21,361.361 INFO    ] 200
[2026-06-22 18:20:21,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:20:21,411.411 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:20:21,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:20:21,470.470 INFO    ] No camera update needed
[2026-06-22 18:20:21,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:20:21,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:20:21,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:20:21,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:20:23,528.528 INFO    ] ================================================
[2026-06-22 18:20:23,543.543 INFO    ] Launching Daemon at Mon Jun 22 18:20:23 IST 2026
[2026-06-22 18:20:23,555.555 INFO    ] ================================================
[2026-06-22 18:20:24,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:20:24
[2026-06-22 18:20:24,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:20:25,007.007 INFO    ] Initializing speech engine...
[2026-06-22 18:20:25,022.022 INFO    ] 2026-06-22 18:20:25
[2026-06-22 18:20:25,289.289 INFO    ] 2026-06-22 18:20:25
[2026-06-22 18:20:25,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:20:25,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:20:25,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:20:25,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:20:25,796.796 INFO    ] time= 22/06/2026 18:20:25
[2026-06-22 18:20:25,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:20:25,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:20:26,018.018 INFO    ] No existing commands found in stream
[2026-06-22 18:20:31,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:20:31,036.036 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-22 18:20:33,796.796 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:20:33,798.798 INFO    ] Checking for system updates...
[2026-06-22 18:20:33,839.839 INFO    ] 200
[2026-06-22 18:20:33,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:20:33,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:20:33,899.899 INFO    ] No update needed
[2026-06-22 18:20:33,902.902 INFO    ] Checking for camera pi updates...
[2026-06-22 18:20:33,937.937 INFO    ] 200
[2026-06-22 18:20:33,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:20:33,982.982 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:20:34,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:20:34,072.072 INFO    ] No camera update needed
[2026-06-22 18:20:34,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:20:34,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:20:34,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:20:34,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:20:36,134.134 INFO    ] ================================================
[2026-06-22 18:20:36,150.150 INFO    ] Launching Daemon at Mon Jun 22 18:20:36 IST 2026
[2026-06-22 18:20:36,161.161 INFO    ] ================================================
[2026-06-22 18:20:36,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:20:36
[2026-06-22 18:20:37,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:20:37,589.589 INFO    ] Initializing speech engine...
[2026-06-22 18:20:37,600.600 INFO    ] 2026-06-22 18:20:37
[2026-06-22 18:20:37,853.853 INFO    ] 2026-06-22 18:20:37
[2026-06-22 18:20:37,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:20:38,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:20:38,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:20:38,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:20:38,235.235 INFO    ] time= 22/06/2026 18:20:38
[2026-06-22 18:20:38,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:20:38,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:20:38,436.436 INFO    ] No existing commands found in stream
[2026-06-22 18:20:43,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:20:43,449.449 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-22 18:20:47,143.143 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:20:47,146.146 INFO    ] Checking for system updates...
[2026-06-22 18:20:47,182.182 INFO    ] 200
[2026-06-22 18:20:47,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:20:47,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:20:47,240.240 INFO    ] No update needed
[2026-06-22 18:20:47,242.242 INFO    ] Checking for camera pi updates...
[2026-06-22 18:20:47,277.277 INFO    ] 200
[2026-06-22 18:20:47,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:20:47,326.326 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:20:47,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:20:47,412.412 INFO    ] No camera update needed
[2026-06-22 18:20:47,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:20:47,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:20:47,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:20:47,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:20:49,472.472 INFO    ] ================================================
[2026-06-22 18:20:49,488.488 INFO    ] Launching Daemon at Mon Jun 22 18:20:49 IST 2026
[2026-06-22 18:20:49,500.500 INFO    ] ================================================
[2026-06-22 18:20:50,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:20:50
[2026-06-22 18:20:50,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:20:50,831.831 INFO    ] Initializing speech engine...
[2026-06-22 18:20:50,840.840 INFO    ] 2026-06-22 18:20:50
[2026-06-22 18:20:51,087.087 INFO    ] 2026-06-22 18:20:51
[2026-06-22 18:20:51,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:20:51,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:20:51,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:20:51,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:20:51,459.459 INFO    ] time= 22/06/2026 18:20:51
[2026-06-22 18:20:51,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:20:51,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:20:51,647.647 INFO    ] No existing commands found in stream
[2026-06-22 18:20:56,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:20:56,663.663 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-22 18:21:02,353.353 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:21:02,357.357 INFO    ] Checking for system updates...
[2026-06-22 18:21:02,410.410 INFO    ] 200
[2026-06-22 18:21:02,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 18:21:02,417.417 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-22 18:21:02,420.420 INFO    ] Checking for camera pi updates...
[2026-06-22 18:21:02,478.478 INFO    ] 200
[2026-06-22 18:21:02,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 18:21:02,487.487 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-22 18:21:02,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:21:02,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:21:02,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:21:02,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:21:04,560.560 INFO    ] ================================================
[2026-06-22 18:21:04,576.576 INFO    ] Launching Daemon at Mon Jun 22 18:21:04 IST 2026
[2026-06-22 18:21:04,588.588 INFO    ] ================================================
[2026-06-22 18:21:05,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:21:05
[2026-06-22 18:21:05,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:21:06,051.051 INFO    ] Initializing speech engine...
[2026-06-22 18:21:06,060.060 INFO    ] 2026-06-22 18:21:06
[2026-06-22 18:21:06,337.337 INFO    ] 2026-06-22 18:21:06
[2026-06-22 18:21:06,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:21:06,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:21:06,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:21:06,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:21:06,733.733 INFO    ] time= 22/06/2026 18:21:06
[2026-06-22 18:21:06,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:21:06,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:21:06,958.958 INFO    ] No existing commands found in stream
[2026-06-22 18:21:11,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:21:11,973.973 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-22 18:21:14,645.645 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:21:14,649.649 INFO    ] Checking for system updates...
[2026-06-22 18:21:14,686.686 INFO    ] 200
[2026-06-22 18:21:14,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:21:14,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:21:14,748.748 INFO    ] No update needed
[2026-06-22 18:21:14,750.750 INFO    ] Checking for camera pi updates...
[2026-06-22 18:21:14,786.786 INFO    ] 200
[2026-06-22 18:21:14,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:21:14,830.830 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:21:15,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:21:15,041.041 INFO    ] No camera update needed
[2026-06-22 18:21:15,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:21:15,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:21:15,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:21:15,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:21:17,105.105 INFO    ] ================================================
[2026-06-22 18:21:17,122.122 INFO    ] Launching Daemon at Mon Jun 22 18:21:17 IST 2026
[2026-06-22 18:21:17,133.133 INFO    ] ================================================
[2026-06-22 18:21:17,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:21:17
[2026-06-22 18:21:18,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:21:18,722.722 INFO    ] Initializing speech engine...
[2026-06-22 18:21:18,732.732 INFO    ] 2026-06-22 18:21:18
[2026-06-22 18:21:19,016.016 INFO    ] 2026-06-22 18:21:19
[2026-06-22 18:21:19,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:21:19,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:21:19,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:21:19,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:21:19,592.592 INFO    ] time= 22/06/2026 18:21:19
[2026-06-22 18:21:19,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:21:19,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:21:19,780.780 INFO    ] No existing commands found in stream
[2026-06-22 18:21:24,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:21:24,815.815 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-22 18:21:25,927.927 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:21:25,930.930 INFO    ] Checking for system updates...
[2026-06-22 18:21:25,970.970 INFO    ] 200
[2026-06-22 18:21:25,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:21:26,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:21:26,030.030 INFO    ] No update needed
[2026-06-22 18:21:26,033.033 INFO    ] Checking for camera pi updates...
[2026-06-22 18:21:26,068.068 INFO    ] 200
[2026-06-22 18:21:26,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:21:26,111.111 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:21:26,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:21:26,216.216 INFO    ] No camera update needed
[2026-06-22 18:21:26,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:21:26,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:21:26,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:21:26,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:21:28,273.273 INFO    ] ================================================
[2026-06-22 18:21:28,289.289 INFO    ] Launching Daemon at Mon Jun 22 18:21:28 IST 2026
[2026-06-22 18:21:28,300.300 INFO    ] ================================================
[2026-06-22 18:21:28,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:21:28
[2026-06-22 18:21:29,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:21:29,630.630 INFO    ] Initializing speech engine...
[2026-06-22 18:21:29,642.642 INFO    ] 2026-06-22 18:21:29
[2026-06-22 18:21:29,910.910 INFO    ] 2026-06-22 18:21:29
[2026-06-22 18:21:29,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:21:32,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:21:33,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:21:33,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:21:33,572.572 INFO    ] time= 22/06/2026 18:21:33
[2026-06-22 18:21:33,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:21:33,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:21:33,629.629 INFO    ] No existing commands found in stream
[2026-06-22 18:21:38,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:21:38,641.641 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-22 18:21:39,094.094 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:21:39,097.097 INFO    ] Checking for system updates...
[2026-06-22 18:21:39,137.137 INFO    ] 200
[2026-06-22 18:21:39,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:21:39,194.194 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:21:39,197.197 INFO    ] No update needed
[2026-06-22 18:21:39,200.200 INFO    ] Checking for camera pi updates...
[2026-06-22 18:21:39,236.236 INFO    ] 200
[2026-06-22 18:21:39,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:21:39,280.280 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:21:39,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:21:39,368.368 INFO    ] No camera update needed
[2026-06-22 18:21:39,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:21:39,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:21:39,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:21:39,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:21:41,428.428 INFO    ] ================================================
[2026-06-22 18:21:41,443.443 INFO    ] Launching Daemon at Mon Jun 22 18:21:41 IST 2026
[2026-06-22 18:21:41,454.454 INFO    ] ================================================
[2026-06-22 18:21:42,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:21:42
[2026-06-22 18:21:42,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:21:42,764.764 INFO    ] Initializing speech engine...
[2026-06-22 18:21:42,779.779 INFO    ] 2026-06-22 18:21:42
[2026-06-22 18:21:43,045.045 INFO    ] 2026-06-22 18:21:43
[2026-06-22 18:21:43,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:21:43,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:21:43,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:21:43,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:21:43,423.423 INFO    ] time= 22/06/2026 18:21:43
[2026-06-22 18:21:43,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:21:43,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:21:43,601.601 INFO    ] No existing commands found in stream
[2026-06-22 18:21:48,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:21:48,629.629 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-22 18:21:49,995.995 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:21:49,997.997 INFO    ] Checking for system updates...
[2026-06-22 18:21:50,035.035 INFO    ] 200
[2026-06-22 18:21:50,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:21:50,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:21:50,095.095 INFO    ] No update needed
[2026-06-22 18:21:50,098.098 INFO    ] Checking for camera pi updates...
[2026-06-22 18:21:50,137.137 INFO    ] 200
[2026-06-22 18:21:50,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:21:50,187.187 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:21:50,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:21:50,299.299 INFO    ] No camera update needed
[2026-06-22 18:21:50,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:21:50,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:21:50,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:21:50,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:21:52,360.360 INFO    ] ================================================
[2026-06-22 18:21:52,375.375 INFO    ] Launching Daemon at Mon Jun 22 18:21:52 IST 2026
[2026-06-22 18:21:52,387.387 INFO    ] ================================================
[2026-06-22 18:21:52,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:21:52
[2026-06-22 18:21:53,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:21:53,697.697 INFO    ] Initializing speech engine...
[2026-06-22 18:21:53,705.705 INFO    ] 2026-06-22 18:21:53
[2026-06-22 18:21:53,979.979 INFO    ] 2026-06-22 18:21:53
[2026-06-22 18:21:54,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:21:54,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:21:54,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:21:54,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:21:54,480.480 INFO    ] time= 22/06/2026 18:21:54
[2026-06-22 18:21:54,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:21:54,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:21:54,693.693 INFO    ] No existing commands found in stream
[2026-06-22 18:21:59,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:21:59,717.717 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-22 18:22:05,010.010 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:22:05,012.012 INFO    ] Checking for system updates...
[2026-06-22 18:22:05,048.048 INFO    ] 200
[2026-06-22 18:22:05,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:22:05,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:22:05,112.112 INFO    ] No update needed
[2026-06-22 18:22:05,115.115 INFO    ] Checking for camera pi updates...
[2026-06-22 18:22:05,149.149 INFO    ] 200
[2026-06-22 18:22:05,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:22:05,194.194 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:22:05,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:22:05,278.278 INFO    ] No camera update needed
[2026-06-22 18:22:05,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:22:05,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:22:05,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:22:05,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:22:07,337.337 INFO    ] ================================================
[2026-06-22 18:22:07,352.352 INFO    ] Launching Daemon at Mon Jun 22 18:22:07 IST 2026
[2026-06-22 18:22:07,363.363 INFO    ] ================================================
[2026-06-22 18:22:07,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:22:07
[2026-06-22 18:22:08,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:22:08,770.770 INFO    ] Initializing speech engine...
[2026-06-22 18:22:08,779.779 INFO    ] 2026-06-22 18:22:08
[2026-06-22 18:22:09,043.043 INFO    ] 2026-06-22 18:22:09
[2026-06-22 18:22:09,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:22:09,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:22:09,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:22:09,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:22:09,533.533 INFO    ] time= 22/06/2026 18:22:09
[2026-06-22 18:22:09,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:22:09,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:22:09,753.753 INFO    ] No existing commands found in stream
[2026-06-22 18:22:14,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:22:14,776.776 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-22 18:22:16,167.167 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:22:16,168.168 INFO    ] Checking for system updates...
[2026-06-22 18:22:16,189.189 INFO    ] 200
[2026-06-22 18:22:16,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:22:16,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:22:16,227.227 INFO    ] No update needed
[2026-06-22 18:22:16,230.230 INFO    ] Checking for camera pi updates...
[2026-06-22 18:22:16,264.264 INFO    ] 200
[2026-06-22 18:22:16,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:22:16,307.307 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:22:16,393.393 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:22:16,396.396 INFO    ] No camera update needed
[2026-06-22 18:22:16,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:22:16,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:22:16,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:22:16,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:22:18,453.453 INFO    ] ================================================
[2026-06-22 18:22:18,468.468 INFO    ] Launching Daemon at Mon Jun 22 18:22:18 IST 2026
[2026-06-22 18:22:18,479.479 INFO    ] ================================================
[2026-06-22 18:22:19,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:22:19
[2026-06-22 18:22:19,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:22:19,971.971 INFO    ] Initializing speech engine...
[2026-06-22 18:22:19,988.988 INFO    ] 2026-06-22 18:22:19
[2026-06-22 18:22:20,276.276 INFO    ] 2026-06-22 18:22:20
[2026-06-22 18:22:20,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:22:20,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:22:20,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:22:20,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:22:20,704.704 INFO    ] time= 22/06/2026 18:22:20
[2026-06-22 18:22:20,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:22:20,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:22:20,890.890 INFO    ] No existing commands found in stream
[2026-06-22 18:22:25,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:22:25,918.918 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-22 18:22:29,262.262 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:22:29,265.265 INFO    ] Checking for system updates...
[2026-06-22 18:22:29,304.304 INFO    ] 200
[2026-06-22 18:22:29,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:22:29,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:22:29,369.369 INFO    ] No update needed
[2026-06-22 18:22:29,372.372 INFO    ] Checking for camera pi updates...
[2026-06-22 18:22:29,414.414 INFO    ] 200
[2026-06-22 18:22:29,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:22:29,468.468 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:22:29,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:22:29,560.560 INFO    ] No camera update needed
[2026-06-22 18:22:29,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:22:29,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:22:29,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:22:29,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:22:31,624.624 INFO    ] ================================================
[2026-06-22 18:22:31,641.641 INFO    ] Launching Daemon at Mon Jun 22 18:22:31 IST 2026
[2026-06-22 18:22:31,660.660 INFO    ] ================================================
[2026-06-22 18:22:32,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:22:32
[2026-06-22 18:22:32,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:22:33,211.211 INFO    ] Initializing speech engine...
[2026-06-22 18:22:33,221.221 INFO    ] 2026-06-22 18:22:33
[2026-06-22 18:22:33,483.483 INFO    ] 2026-06-22 18:22:33
[2026-06-22 18:22:33,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:22:35,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:22:35,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:22:35,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:22:35,865.865 INFO    ] time= 22/06/2026 18:22:35
[2026-06-22 18:22:35,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:22:35,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:22:35,965.965 INFO    ] No existing commands found in stream
[2026-06-22 18:22:40,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:22:40,996.996 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-22 18:22:42,892.892 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:22:42,894.894 INFO    ] Checking for system updates...
[2026-06-22 18:22:42,934.934 INFO    ] 200
[2026-06-22 18:22:42,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:22:42,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:22:42,992.992 INFO    ] No update needed
[2026-06-22 18:22:42,995.995 INFO    ] Checking for camera pi updates...
[2026-06-22 18:22:43,032.032 INFO    ] 200
[2026-06-22 18:22:43,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:22:43,079.079 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:22:43,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:22:43,176.176 INFO    ] No camera update needed
[2026-06-22 18:22:43,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:22:43,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:22:43,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:22:43,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:22:45,230.230 INFO    ] ================================================
[2026-06-22 18:22:45,245.245 INFO    ] Launching Daemon at Mon Jun 22 18:22:45 IST 2026
[2026-06-22 18:22:45,265.265 INFO    ] ================================================
[2026-06-22 18:22:45,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:22:45
[2026-06-22 18:22:46,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:22:46,689.689 INFO    ] Initializing speech engine...
[2026-06-22 18:22:46,712.712 INFO    ] 2026-06-22 18:22:46
[2026-06-22 18:22:46,962.962 INFO    ] 2026-06-22 18:22:46
[2026-06-22 18:22:46,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:22:47,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:22:47,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:22:47,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:22:47,454.454 INFO    ] time= 22/06/2026 18:22:47
[2026-06-22 18:22:47,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:22:47,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:22:47,653.653 INFO    ] No existing commands found in stream
[2026-06-22 18:22:52,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:22:52,684.684 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-22 18:22:54,490.490 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 18:22:54,493.493 INFO    ] Checking for system updates...
[2026-06-22 18:22:54,532.532 INFO    ] 200
[2026-06-22 18:22:54,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:22:54,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:22:54,590.590 INFO    ] No update needed
[2026-06-22 18:22:54,593.593 INFO    ] Checking for camera pi updates...
[2026-06-22 18:22:54,627.627 INFO    ] 200
[2026-06-22 18:22:54,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:22:54,675.675 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:22:54,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:22:54,737.737 INFO    ] No camera update needed
[2026-06-22 18:22:54,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:22:54,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:22:54,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:22:54,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:22:56,794.794 INFO    ] ================================================
[2026-06-22 18:22:56,809.809 INFO    ] Launching Daemon at Mon Jun 22 18:22:56 IST 2026
[2026-06-22 18:22:56,820.820 INFO    ] ================================================
[2026-06-22 18:22:57,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:22:57
[2026-06-22 18:22:58,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:22:58,292.292 INFO    ] Initializing speech engine...
[2026-06-22 18:22:58,297.297 INFO    ] 2026-06-22 18:22:58
[2026-06-22 18:22:58,552.552 INFO    ] 2026-06-22 18:22:58
[2026-06-22 18:22:58,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:22:58,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:22:58,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:22:59,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:22:59,103.103 INFO    ] time= 22/06/2026 18:22:59
[2026-06-22 18:22:59,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:22:59,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:22:59,248.248 INFO    ] No existing commands found in stream
[2026-06-22 18:23:04,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:23:04,270.270 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-22 18:23:07,763.763 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:23:07,766.766 INFO    ] Checking for system updates...
[2026-06-22 18:23:07,807.807 INFO    ] 200
[2026-06-22 18:23:07,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:23:07,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:23:07,869.869 INFO    ] No update needed
[2026-06-22 18:23:07,872.872 INFO    ] Checking for camera pi updates...
[2026-06-22 18:23:07,910.910 INFO    ] 200
[2026-06-22 18:23:07,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:23:07,959.959 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:23:08,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:23:08,047.047 INFO    ] No camera update needed
[2026-06-22 18:23:08,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:23:08,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:23:08,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:23:08,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:23:10,103.103 INFO    ] ================================================
[2026-06-22 18:23:10,119.119 INFO    ] Launching Daemon at Mon Jun 22 18:23:10 IST 2026
[2026-06-22 18:23:10,129.129 INFO    ] ================================================
[2026-06-22 18:23:10,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:23:10
[2026-06-22 18:23:11,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:23:11,510.510 INFO    ] Initializing speech engine...
[2026-06-22 18:23:11,516.516 INFO    ] 2026-06-22 18:23:11
[2026-06-22 18:23:11,812.812 INFO    ] 2026-06-22 18:23:11
[2026-06-22 18:23:11,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:23:12,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:23:12,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:23:12,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:23:12,191.191 INFO    ] time= 22/06/2026 18:23:12
[2026-06-22 18:23:12,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:23:12,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:23:12,316.316 INFO    ] Found 1 existing command(s) in stream
[2026-06-22 18:23:12,353.353 INFO    ] Checking historical command: ID=1782132784588-0
[2026-06-22 18:23:12,413.413 INFO    ] process_and_cleanup_command: msg_id=1782132784588-0
[2026-06-22 18:23:12,465.465 INFO    ] is_command_expired: timestamp=2026-06-22T12:53:03.505Z, expiry=30s
[2026-06-22 18:23:12,576.576 INFO    ] Command removed from stream: 1782132784588-0. returning for processing...
[2026-06-22 18:23:12,628.628 INFO    ] ***** get_valid_command
[2026-06-22 18:23:12,672.672 INFO    ] {'timestamp': '2026-06-22T12:53:03.505Z', 'data': '{"request_id":"start-order-1782132783504-7g8ph1d3f","orderId":"TM06202507260622182219707","is_vending":false}', 'command': 'start-order', 'source': 'webapp', 'timeout': '10'}
[2026-06-22 18:23:12,698.698 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1782132783504-7g8ph1d3f', 'orderId': 'TM06202507260622182219707', 'is_vending': False}
[2026-06-22 18:23:12,768.768 INFO    ] Handling start order...
[2026-06-22 18:23:12,797.797 INFO    ] handle_start_order_command
[2026-06-22 18:23:12,878.878 INFO    ] _send_start_order_success: request_id=start-order-1782132783504-7g8ph1d3f, order_id=TM06202507260622182219707
[2026-06-22 18:23:12,943.943 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM06202507
[2026-06-22 18:23:13,116.116 INFO    ] [_send_start_order_success] Message added to stream with ID: 1782132792977-0
[2026-06-22 18:23:13,170.170 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-22 18:23:13,182.182 INFO    ] Checking for system updates...
[2026-06-22 18:23:13,257.257 INFO    ] 200
[2026-06-22 18:23:13,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:23:13,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:23:13,329.329 INFO    ] No update needed
[2026-06-22 18:23:13,333.333 INFO    ] Checking for camera pi updates...
[2026-06-22 18:23:13,437.437 INFO    ] 200
[2026-06-22 18:23:13,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:23:13,535.535 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:23:13,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:23:13,629.629 INFO    ] No camera update needed
[2026-06-22 18:23:13,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:23:13,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:23:13,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:23:13,672.672 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-22 18:23:13,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:23:15,736.736 INFO    ] ================================================
[2026-06-22 18:23:15,750.750 INFO    ] Launching Daemon at Mon Jun 22 18:23:15 IST 2026
[2026-06-22 18:23:15,761.761 INFO    ] ================================================
[2026-06-22 18:23:16,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:23:16
[2026-06-22 18:23:16,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:23:17,121.121 INFO    ] Initializing speech engine...
[2026-06-22 18:23:17,130.130 INFO    ] 2026-06-22 18:23:17
[2026-06-22 18:23:17,382.382 INFO    ] 2026-06-22 18:23:17
[2026-06-22 18:23:17,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:23:17,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:23:17,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:23:17,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:23:17,880.880 INFO    ] time= 22/06/2026 18:23:17
[2026-06-22 18:23:17,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:23:17,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:23:18,078.078 INFO    ] Found 2 existing command(s) in stream
[2026-06-22 18:23:18,114.114 INFO    ] Checking historical command: ID=1782132792977-0
[2026-06-22 18:23:18,163.163 INFO    ] process_and_cleanup_command: msg_id=1782132792977-0
[2026-06-22 18:23:18,208.208 INFO    ] is_command_expired: timestamp=2026-06-22T12:53:12.884352Z, expiry=30s
[2026-06-22 18:23:18,418.418 INFO    ] Command removed from stream: 1782132792977-0. returning for processing...
[2026-06-22 18:23:18,427.427 INFO    ] ***** get_valid_command
[2026-06-22 18:23:18,437.437 INFO    ] {'metadata_order_id': 'TM06202507260622182219707', 'metadata_request_id': 'start-order-1782132783504-7g8ph1d3f', 'status': 'success', 'imei': 'TM06202507', 'message_type': 'command_response', 'timestamp': '2026-06-22T12:53:12.884352Z', 'message': 'start-order success'}
[2026-06-22 18:23:18,440.440 INFO    ] Checking historical command: ID=1782132795557-0
[2026-06-22 18:23:18,443.443 INFO    ] process_and_cleanup_command: msg_id=1782132795557-0
[2026-06-22 18:23:18,446.446 INFO    ] is_command_expired: timestamp=2026-06-22T12:53:14.510Z, expiry=30s
[2026-06-22 18:23:18,573.573 INFO    ] Command removed from stream: 1782132795557-0. returning for processing...
[2026-06-22 18:23:18,579.579 INFO    ] ***** get_valid_command
[2026-06-22 18:23:18,602.602 INFO    ] {'timeout': '60', 'data': '{"request_id":"process-order-1782132794510-rirtjx7it","orderId":"TM06202507260622182219707","is_vending":false,"accessCode":"51879267"}', 'command': 'process-order', 'timestamp': '2026-06-22T12:53:14.510Z', 'source': 'webapp'}
[2026-06-22 18:23:18,632.632 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1782132794510-rirtjx7it', 'orderId': 'TM06202507260622182219707', 'is_vending': False, 'accessCode': '51879267'}
[2026-06-22 18:23:18,636.636 INFO    ] Handling process order...
[2026-06-22 18:23:18,639.639 INFO    ] Processing process-order command...
[2026-06-22 18:23:18,690.690 INFO    ] 🔍 Lock file Order ID: TM06202507260622182219707, TS: 2026-06-22 18:23:12
[2026-06-22 18:23:18,707.707 INFO    ] ✅ Order lock valid for TM06202507260622182219707
[2026-06-22 18:23:18,713.713 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-22 18:23:18,718.718 INFO    ] processing access code 51879267 for order TM06202507260622182219707
[2026-06-22 18:23:18,724.724 INFO    ] 🔍 Lock file Order ID: TM06202507260622182219707, TS: 2026-06-22 18:23:12
[2026-06-22 18:23:18,728.728 INFO    ] ✅ Order lock valid for TM06202507260622182219707
[2026-06-22 18:23:18,733.733 INFO    ] 2026-06-22 18:23:18
[2026-06-22 18:23:18,835.835 INFO    ] 200
[2026-06-22 18:23:18,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:23:18,889.889 INFO    ] 51879267
[2026-06-22 18:23:18,894.894 INFO    ] 2026-06-22 18:23:18
[2026-06-22 18:23:18,905.905 INFO    ] session id :404326483
[2026-06-22 18:23:18,911.911 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=51879267&imei=TM06202507&session_id=404326483
[2026-06-22 18:23:19,999.999 INFO    ] 200
[2026-06-22 18:23:20,005.005 INFO    ] {"data": {"mobile": "9831563932", "order_id": "TM06202507260622182219707", "access_code": "51879267", "bill_amount": "45", "proposed_sku_json": [{"tray_id": "31", "qty": 1, "mrp": "45", "door_id": "2", "name": "Sunfeast Breakfast protein Smoothie with Oats", "sku_total": 45, "image_url": "https://images.tinymart.in/product/4500651-8004.webp", "offer_desc": "", "unit_price": 45, "skuid": "4500651", "offer_id": ""}], "invoice_bill": "45"}, "msg": "Order Data", "status": true, "rstatus": true}
[2026-06-22 18:23:20,060.060 INFO    ] 45
[2026-06-22 18:23:20,065.065 INFO    ] TM06202507260622182219707
[2026-06-22 18:23:20,075.075 INFO    ] 9831563932
[2026-06-22 18:23:20,082.082 INFO    ] 2026-06-22 18:23:20
[2026-06-22 18:23:20,095.095 INFO    ] Door Opening for user mobile ending with  three nine three two 
[2026-06-22 18:23:20,123.123 INFO    ] Door Opening for user mobile ending with  three nine three two 
[2026-06-22 18:23:20,151.151 INFO    ] 3ec5a8579c761608557a2f5e07d4bf0f
[2026-06-22 18:23:20,160.160 INFO    ] 2026-06-22 18:23:20
[2026-06-22 18:23:20,167.167 INFO    ] playing audio file
[2026-06-22 18:23:20,240.240 INFO    ] 2026-06-22 18:23:20
[2026-06-22 18:23:20,260.260 INFO    ] 2026-06-22 18:23:20
[2026-06-22 18:23:20,324.324 INFO    ] publish_status: order_id=TM06202507260622182219707
[2026-06-22 18:23:20,378.378 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622182219707
[2026-06-22 18:23:20,466.466 INFO    ] [publish_status] Message added to stream with ID: 1782132800374-0
[2026-06-22 18:23:20,473.473 INFO    ] Published to order:TM06202507260622182219707: {'server_response': '{"status": true, "rstatus": true, "data": {"invoice_bill": "45", "proposed_sku_json": [{"offer_id": "", "sku_total": 45, "image_url": "https://images.tinymart.in/product/4500651-8004.webp", "skuid": "4500651", "name": "Sunfeast Breakfast protein Smoothie with Oats", "tray_id": "31", "offer_desc": "", "mrp": "45", "door_id": "2", "unit_price": 45, "qty": 1}], "access_code": "51879267", "bill_amount": "45", "order_id": "TM06202507260622182219707", "mobile": "9831563932"}, "msg": "Order Data"}', 'order_id': 'TM06202507260622182219707', 'timestamp': '2026-06-22T12:53:20.263750Z', 'server_status': 'order-started'} (ID: 1782132800374-0)
[2026-06-22 18:23:21,106.106 INFO    ] {'server_response': {'status': True, 'rstatus': True, 'data': {'invoice_bill': '45', 'proposed_sku_json': [{'offer_id': '', 'sku_total': 45, 'image_url': 'https://images.tinymart.in/product/4500651-8004.webp', 'skuid': '4500651', 'name': 'Sunfeast Breakfast protein Smoothie with Oats', 'tray_id': '31', 'offer_desc': '', 'mrp': '45', 'door_id': '2', 'unit_price': 45, 'qty': 1}], 'access_code': '51879267', 'bill_amount': '45', 'order_id': 'TM06202507260622182219707', 'mobile': '9831563932'}, 'msg': 'Order Data'}, 'order_id': 'TM06202507260622182219707', 'server_status': 'order-started'}
[2026-06-22 18:23:21,109.109 INFO    ] 200
[2026-06-22 18:23:21,112.112 INFO    ] {"data":{"server_response":{"status":true,"rstatus":true,"data":{"invoice_bill":"45","proposed_sku_json":[{"offer_id":"","sku_total":45,"image_url":"https:\/\/images.tinymart.in\/product\/4500651-8004.webp","skuid":"4500651","name":"Sunfeast Breakfast protein Smoothie with Oats","tray_id":"31","offer_desc":"","mrp":"45","door_id":"2","unit_price":45,"qty":1}],"access_code":"51879267","bill_amount":"45","order_id":"TM06202507260622182219707","mobile":"9831563932"},"msg":"Order Data"},"order_id":"TM06202507260622182219707","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 18:23:21,115.115 INFO    ] {'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}, 'data': {'server_response': {'data': {'invoice_bill': '45', 'proposed_sku_json': [{'skuid': '4500651', 'name': 'Sunfeast Breakfast protein Smoothie with Oats', 'image_url': 'https://images.tinymart.in/product/4500651-8004.webp', 'qty': 1, 'sku_total': 45, 'door_id': '2', 'offer_desc': '', 'mrp': '45', 'tray_id': '31', 'unit_price': 45, 'offer_id': ''}], 'access_code': '51879267', 'bill_amount': '45', 'order_id': 'TM06202507260622182219707', 'mobile': '9831563932'}, 'rstatus': True, 'status': True, 'msg': 'Order Data'}, 'order_id': 'TM06202507260622182219707', 'server_status': 'order-started'}}
[2026-06-22 18:23:21,118.118 INFO    ] 2026-06-22 18:23:21
[2026-06-22 18:23:21,164.164 INFO    ] 200
[2026-06-22 18:23:21,167.167 INFO    ] True
[2026-06-22 18:23:21,300.300 INFO    ] 200
[2026-06-22 18:23:21,303.303 INFO    ] {"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": ""}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 18:23:21,307.307 INFO    ] {'error': {'code': 20001, 'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'status': 'False', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-22 18:23:21,310.310 INFO    ] *** process_order ***
[2026-06-22 18:23:22,487.487 INFO    ] 200
[2026-06-22 18:23:22,489.489 INFO    ] {"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": ""}, "rstatus": true, "delay": 0, "status": "True", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 18:23:22,492.492 INFO    ] {'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'delay': 0, 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-22 18:23:22,495.495 INFO    ] *** process_order ***
[2026-06-22 18:23:22,498.498 INFO    ] publish_status: order_id=TM06202507260622182219707
[2026-06-22 18:23:22,501.501 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622182219707
[2026-06-22 18:23:22,580.580 INFO    ] [publish_status] Message added to stream with ID: 1782132802509-0
[2026-06-22 18:23:22,583.583 INFO    ] Published to order:TM06202507260622182219707: {'server_response': '{"status": "True", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "delay": 0, "voiceNote": "Door is open...", "rstatus": true, "SectionStatus": {"SubHeader": "You can pull the door now.", "Note": "", "Header": " Your order is under process  ", "UI_Header": ""}, "SectionMain": {"Header": "Processing Order"}}', 'order_id': 'TM06202507260622182219707', 'server_status': 'doorOpened'} (ID: 1782132802509-0)
[2026-06-22 18:23:23,642.642 INFO    ] 2026-06-22 18:23:23
[2026-06-22 18:23:23,646.646 INFO    ] publish_status: order_id=TM06202507260622182219707
[2026-06-22 18:23:23,649.649 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622182219707
[2026-06-22 18:23:23,775.775 INFO    ] [publish_status] Message added to stream with ID: 1782132803669-0
[2026-06-22 18:23:23,779.779 INFO    ] Published to order:TM06202507260622182219707: {'server_response': '{"status": "True", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "delay": 0, "voiceNote": "Please Wait", "rstatus": true, "SectionStatus": {"SubHeader": "Please wait while we process your order", "Note": "", "Header": " Your order is under process  ", "UI_Header": ""}, "SectionMain": {"Header": "Processing Order"}}', 'order_id': 'TM06202507260622182219707', 'timestamp': '2026-06-22T12:53:23.644152Z', 'server_status': 'processOrder'} (ID: 1782132803669-0)
[2026-06-22 18:23:23,948.948 INFO    ] {'server_response': {'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'delay': 0, 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'SectionMain': {'Header': 'Processing Order'}}, 'order_id': 'TM06202507260622182219707', 'server_status': 'processOrder'}
[2026-06-22 18:23:23,951.951 INFO    ] 200
[2026-06-22 18:23:23,954.954 INFO    ] {"data":{"server_response":{"status":"true","SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"delay":0,"voiceNote":"Please Wait","rstatus":true,"SectionStatus":{"SubHeader":"Please wait while we process your order","Note":"","Header":" Your order is under process  ","UI_Header":""},"SectionMain":{"Header":"Processing Order"}},"order_id":"TM06202507260622182219707","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 18:23:23,958.958 INFO    ] {'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}, 'data': {'server_response': {'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'delay': 0, 'status': 'true', 'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'SectionMain': {'Header': 'Processing Order'}}, 'order_id': 'TM06202507260622182219707', 'server_status': 'processOrder'}}
[2026-06-22 18:23:23,962.962 INFO    ] 2026-06-22 18:23:23
[2026-06-22 18:23:23,965.965 INFO    ] None
[2026-06-22 18:23:23,968.968 INFO    ] Opening Door now
[2026-06-22 18:23:23,971.971 INFO    ] Opening Door now
[2026-06-22 18:23:23,974.974 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-22 18:23:23,978.978 INFO    ] 2026-06-22 18:23:23
[2026-06-22 18:23:23,981.981 INFO    ] playing audio file
[2026-06-22 18:23:24,000.000 INFO    ] 2026-06-22 18:23:23
[2026-06-22 18:23:24,004.004 INFO    ] 2026-06-22 18:23:24
[2026-06-22 18:23:27,150.150 INFO    ] 200
[2026-06-22 18:23:27,154.154 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Sunfeast Breakfast protein Smoothie with Oats"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Door 2 is open now"}
[2026-06-22 18:23:27,158.158 INFO    ] {'error': {'code': 20001, 'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'status': 'False', 'SectionSKU': {'skus': [{'name': 'Sunfeast Breakfast protein Smoothie with Oats', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Door 2 is open now', 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-22 18:23:30,260.260 INFO    ] 200
[2026-06-22 18:23:30,263.263 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Sunfeast Breakfast protein Smoothie with Oats"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2"}
[2026-06-22 18:23:30,268.268 INFO    ] {'error': {'code': 20001, 'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'status': 'False', 'SectionSKU': {'skus': [{'name': 'Sunfeast Breakfast protein Smoothie with Oats', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-22 18:23:33,334.334 INFO    ] 200
[2026-06-22 18:23:33,337.337 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Sunfeast Breakfast protein Smoothie with Oats"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2"}
[2026-06-22 18:23:33,342.342 INFO    ] Please close door 2
[2026-06-22 18:23:33,345.345 INFO    ] Please close door 2
[2026-06-22 18:23:33,348.348 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-22 18:23:33,351.351 INFO    ] 2026-06-22 18:23:33
[2026-06-22 18:23:33,355.355 INFO    ] playing audio file
[2026-06-22 18:23:33,375.375 INFO    ] 2026-06-22 18:23:33
[2026-06-22 18:23:33,379.379 INFO    ] publish_status: order_id=TM06202507260622182219707
[2026-06-22 18:23:33,383.383 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622182219707
[2026-06-22 18:23:33,487.487 INFO    ] [publish_status] Message added to stream with ID: 1782132813414-0
[2026-06-22 18:23:33,490.490 INFO    ] Published to order:TM06202507260622182219707: {'server_response': '{"error": {"code": 20001, "data": {}, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionSKU": {"skus": [{"name": "Sunfeast Breakfast protein Smoothie with Oats", "qty": 1}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "rstatus": false, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW"}, "SectionMain": {"Header": "Door Open"}}', 'order_id': 'TM06202507260622182219707', 'timestamp': '2026-06-22T12:53:33.377809Z', 'server_status': 'OrderStatus'} (ID: 1782132813414-0)
[2026-06-22 18:23:37,463.463 INFO    ] {'server_response': {'error': {'code': 20001, 'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'status': 'False', 'SectionSKU': {'skus': [{'name': 'Sunfeast Breakfast protein Smoothie with Oats', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM06202507260622182219707', 'server_status': 'OrderStatus'}
[2026-06-22 18:23:37,467.467 INFO    ] 200
[2026-06-22 18:23:37,470.470 INFO    ] {"data":{"server_response":{"error":{"code":20001,"data":[],"tmessage":"In Progress","umessage":"In Progress"},"status":"false","SectionSKU":{"skus":[{"name":"Sunfeast Breakfast protein Smoothie with Oats","qty":1}],"Header":"Pick the below items from the door"},"voiceNote":"Please close door 2","rstatus":false,"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products","Header":"Please Close Door 2","UI_Header":"DOOR 2\nIS \nOPEN \nNOW"},"SectionMain":{"Header":"Door Open"}},"order_id":"TM06202507260622182219707","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 18:23:37,474.474 INFO    ] {'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}, 'data': {'server_response': {'error': {'code': 20001, 'data': [], 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'name': 'Sunfeast Breakfast protein Smoothie with Oats', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'false', 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM06202507260622182219707', 'server_status': 'OrderStatus'}}
[2026-06-22 18:23:37,478.478 INFO    ] {'error': {'code': 20001, 'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'status': 'False', 'SectionSKU': {'skus': [{'name': 'Sunfeast Breakfast protein Smoothie with Oats', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-22 18:23:40,550.550 INFO    ] 200
[2026-06-22 18:23:40,553.553 INFO    ] {"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"}, "rstatus": true, "delay": 100, "status": "True", "SectionMain": {"Header": "Door Closed"}, "voiceNote": "Transaction Completed"}
[2026-06-22 18:23:40,557.557 INFO    ] {'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'delay': 100, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'UI_Header': ''}, 'SectionMain': {'Header': 'Door Closed'}}
[2026-06-22 18:23:40,560.560 INFO    ] 2026-06-22 18:23:40
[2026-06-22 18:23:40,563.563 INFO    ] Order Completed 
[2026-06-22 18:23:40,566.566 INFO    ] Order Completed 
[2026-06-22 18:23:40,570.570 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-22 18:23:40,573.573 INFO    ] 2026-06-22 18:23:40
[2026-06-22 18:23:40,577.577 INFO    ] playing audio file
[2026-06-22 18:23:40,597.597 INFO    ] 2026-06-22 18:23:40
[2026-06-22 18:23:40,600.600 INFO    ] {'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'delay': 100, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'UI_Header': ''}, 'SectionMain': {'Header': 'Door Closed'}}
[2026-06-22 18:23:40,604.604 INFO    ] 2026-06-22 18:23:40
[2026-06-22 18:23:41,003.003 INFO    ] 200
[2026-06-22 18:23:41,007.007 INFO    ] {"skus": [{"tray_id": "31", "qty": 1, "mrp": "45", "door_id": "", "name": "Sunfeast Breakfast protein Smoothie with Oats per peice", "sku_total": 45.0, "image_url": "https://images.tinymart.in/product/4500651-8004.webp", "unit_price": "45", "skuid": "4500651"}], "anomaly": 0, "rstatus": true, "orderId": "TM06202507260622182219707", "logic": "WBL", "total_amount": 45.0, "res": "True"}
[2026-06-22 18:23:41,010.010 INFO    ] {'skus': [{'sku_total': 45.0, 'image_url': 'https://images.tinymart.in/product/4500651-8004.webp', 'skuid': '4500651', 'name': 'Sunfeast Breakfast protein Smoothie with Oats per peice', 'tray_id': '31', 'mrp': '45', 'door_id': '', 'unit_price': '45', 'qty': 1}], 'orderId': 'TM06202507260622182219707', 'res': 'True', 'logic': 'WBL', 'anomaly': 0, 'rstatus': True, 'total_amount': 45.0}
[2026-06-22 18:23:41,013.013 INFO    ] {'skus': [{'sku_total': 45.0, 'image_url': 'https://images.tinymart.in/product/4500651-8004.webp', 'skuid': '4500651', 'name': 'Sunfeast Breakfast protein Smoothie with Oats per peice', 'tray_id': '31', 'mrp': '45', 'door_id': '', 'unit_price': '45', 'qty': 1}], 'orderId': 'TM06202507260622182219707', 'res': 'True', 'logic': 'WBL', 'anomaly': 0, 'rstatus': True, 'total_amount': 45.0}
[2026-06-22 18:23:41,016.016 INFO    ] 2026-06-22 18:23:41
[2026-06-22 18:23:41,019.019 INFO    ] 2026-06-22 18:23:41
[2026-06-22 18:23:41,022.022 INFO    ] 45
[2026-06-22 18:23:41,025.025 INFO    ] 2026-06-22 18:23:41
[2026-06-22 18:23:41,028.028 INFO    ] 2026-06-22 18:23:41
[2026-06-22 18:23:41,031.031 INFO    ]  Your Bill Amount is 45
[2026-06-22 18:23:41,033.033 INFO    ]  Your Bill Amount is 45
[2026-06-22 18:23:41,037.037 INFO    ] 5553d6f5b6a7e71dba7c2e269f7d83d7
[2026-06-22 18:23:41,040.040 INFO    ] 2026-06-22 18:23:41
[2026-06-22 18:23:41,043.043 INFO    ] playing audio file
[2026-06-22 18:23:41,062.062 INFO    ] 2026-06-22 18:23:41
[2026-06-22 18:23:41,066.066 INFO    ] 2026-06-22 18:23:41
[2026-06-22 18:23:41,070.070 INFO    ] publish_status: order_id=TM06202507260622182219707
[2026-06-22 18:23:41,073.073 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622182219707
[2026-06-22 18:23:41,154.154 INFO    ] [publish_status] Message added to stream with ID: 1782132821079-0
[2026-06-22 18:23:41,161.161 INFO    ] Published to order:TM06202507260622182219707: {'server_response': '{"skus": [{"sku_total": 45.0, "image_url": "https://images.tinymart.in/product/4500651-8004.webp", "skuid": "4500651", "name": "Sunfeast Breakfast protein Smoothie with Oats per peice", "tray_id": "31", "mrp": "45", "door_id": "", "unit_price": "45", "qty": 1}], "orderId": "TM06202507260622182219707", "res": "True", "logic": "WBL", "anomaly": 0, "rstatus": true, "total_amount": 45.0}', 'order_id': 'TM06202507260622182219707', 'timestamp': '2026-06-22T12:53:41.067727Z', 'server_status': 'invoiceOrder'} (ID: 1782132821079-0)
[2026-06-22 18:23:41,326.326 INFO    ] {'server_response': {'skus': [{'sku_total': 45.0, 'image_url': 'https://images.tinymart.in/product/4500651-8004.webp', 'skuid': '4500651', 'name': 'Sunfeast Breakfast protein Smoothie with Oats per peice', 'tray_id': '31', 'mrp': '45', 'door_id': '', 'unit_price': '45', 'qty': 1}], 'orderId': 'TM06202507260622182219707', 'res': 'True', 'logic': 'WBL', 'anomaly': 0, 'rstatus': True, 'total_amount': 45.0}, 'order_id': 'TM06202507260622182219707', 'server_status': 'invoiceOrder'}
[2026-06-22 18:23:41,329.329 INFO    ] 200
[2026-06-22 18:23:41,331.331 INFO    ] {"data":{"server_response":{"skus":[{"sku_total":45,"image_url":"https:\/\/images.tinymart.in\/product\/4500651-8004.webp","skuid":"4500651","name":"Sunfeast Breakfast protein Smoothie with Oats per peice","tray_id":"31","mrp":"45","door_id":"","unit_price":"45","qty":1}],"orderId":"TM06202507260622182219707","res":"true","logic":"WBL","anomaly":0,"rstatus":true,"total_amount":45},"order_id":"TM06202507260622182219707","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 18:23:41,335.335 INFO    ] {'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}, 'data': {'server_response': {'skus': [{'skuid': '4500651', 'name': 'Sunfeast Breakfast protein Smoothie with Oats per peice', 'image_url': 'https://images.tinymart.in/product/4500651-8004.webp', 'sku_total': 45, 'door_id': '', 'mrp': '45', 'tray_id': '31', 'unit_price': '45', 'qty': 1}], 'orderId': 'TM06202507260622182219707', 'res': 'true', 'logic': 'WBL', 'anomaly': 0, 'rstatus': True, 'total_amount': 45}, 'order_id': 'TM06202507260622182219707', 'server_status': 'invoiceOrder'}}
[2026-06-22 18:23:41,338.338 INFO    ] {'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}, 'data': {'server_response': {'skus': [{'skuid': '4500651', 'name': 'Sunfeast Breakfast protein Smoothie with Oats per peice', 'image_url': 'https://images.tinymart.in/product/4500651-8004.webp', 'sku_total': 45, 'door_id': '', 'mrp': '45', 'tray_id': '31', 'unit_price': '45', 'qty': 1}], 'orderId': 'TM06202507260622182219707', 'res': 'true', 'logic': 'WBL', 'anomaly': 0, 'rstatus': True, 'total_amount': 45}, 'order_id': 'TM06202507260622182219707', 'server_status': 'invoiceOrder'}}
[2026-06-22 18:23:41,341.341 INFO    ] 2026-06-22 18:23:41
[2026-06-22 18:23:48,829.829 INFO    ] 200
[2026-06-22 18:23:48,832.832 INFO    ] {"orders_data_synced": [], "order_items": [], "orders_data": [], "orders_synced": [], "tray_synced": ["TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707", "TM06202507260622182219707"], "order_items_synced": ["TM06202507260622182219707_0"], "orders": [], "status": true, "tray_sync": []}
[2026-06-22 18:23:48,835.835 INFO    ] 2026-06-22 18:23:48
[2026-06-22 18:23:48,955.955 INFO    ] 200
[2026-06-22 18:23:48,958.958 INFO    ] True
[2026-06-22 18:23:48,961.961 INFO    ] cleanup_start_order_file_after_processing: order_id=TM06202507260622182219707
[2026-06-22 18:23:48,964.964 INFO    ] start order file deleted
[2026-06-22 18:23:48,967.967 INFO    ] Checking for system updates...
[2026-06-22 18:23:49,013.013 INFO    ] 200
[2026-06-22 18:23:49,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:23:49,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:23:49,101.101 INFO    ] No update needed
[2026-06-22 18:23:49,104.104 INFO    ] Checking for camera pi updates...
[2026-06-22 18:23:49,146.146 INFO    ] 200
[2026-06-22 18:23:49,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:23:49,193.193 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:23:49,319.319 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:23:49,322.322 INFO    ] No camera update needed
[2026-06-22 18:23:49,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:23:49,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:23:49,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:23:49,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:23:51,386.386 INFO    ] ================================================
[2026-06-22 18:23:51,401.401 INFO    ] Launching Daemon at Mon Jun 22 18:23:51 IST 2026
[2026-06-22 18:23:51,412.412 INFO    ] ================================================
[2026-06-22 18:23:52,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:23:52
[2026-06-22 18:23:52,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:23:53,125.125 INFO    ] Initializing speech engine...
[2026-06-22 18:23:53,136.136 INFO    ] 2026-06-22 18:23:53
[2026-06-22 18:23:53,453.453 INFO    ] 2026-06-22 18:23:53
[2026-06-22 18:23:53,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:23:53,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:23:53,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:23:53,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:23:53,968.968 INFO    ] time= 22/06/2026 18:23:53
[2026-06-22 18:23:53,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:23:54,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:23:54,127.127 INFO    ] No existing commands found in stream
[2026-06-22 18:23:59,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:23:59,161.161 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-22 18:24:03,561.561 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:24:03,565.565 INFO    ] Checking for system updates...
[2026-06-22 18:24:03,602.602 INFO    ] 200
[2026-06-22 18:24:03,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:24:03,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:24:03,663.663 INFO    ] No update needed
[2026-06-22 18:24:03,666.666 INFO    ] Checking for camera pi updates...
[2026-06-22 18:24:03,700.700 INFO    ] 200
[2026-06-22 18:24:03,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:24:03,745.745 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:24:03,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:24:03,829.829 INFO    ] No camera update needed
[2026-06-22 18:24:03,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:24:03,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:24:03,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:24:03,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:24:05,887.887 INFO    ] ================================================
[2026-06-22 18:24:05,902.902 INFO    ] Launching Daemon at Mon Jun 22 18:24:05 IST 2026
[2026-06-22 18:24:05,913.913 INFO    ] ================================================
[2026-06-22 18:24:06,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:24:06
[2026-06-22 18:24:07,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:24:07,486.486 INFO    ] Initializing speech engine...
[2026-06-22 18:24:07,493.493 INFO    ] 2026-06-22 18:24:07
[2026-06-22 18:24:07,768.768 INFO    ] 2026-06-22 18:24:07
[2026-06-22 18:24:07,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:24:09,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:24:09,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:24:09,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:24:09,695.695 INFO    ] time= 22/06/2026 18:24:09
[2026-06-22 18:24:09,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:24:09,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:24:09,812.812 INFO    ] No existing commands found in stream
[2026-06-22 18:24:14,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:24:14,845.845 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-22 18:24:15,682.682 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:24:15,685.685 INFO    ] Checking for system updates...
[2026-06-22 18:24:15,725.725 INFO    ] 200
[2026-06-22 18:24:15,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:24:15,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:24:15,791.791 INFO    ] No update needed
[2026-06-22 18:24:15,794.794 INFO    ] Checking for camera pi updates...
[2026-06-22 18:24:15,832.832 INFO    ] 200
[2026-06-22 18:24:15,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:24:15,881.881 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:24:15,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:24:15,959.959 INFO    ] No camera update needed
[2026-06-22 18:24:15,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:24:15,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:24:15,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:24:15,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:24:18,014.014 INFO    ] ================================================
[2026-06-22 18:24:18,030.030 INFO    ] Launching Daemon at Mon Jun 22 18:24:18 IST 2026
[2026-06-22 18:24:18,041.041 INFO    ] ================================================
[2026-06-22 18:24:18,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:24:18
[2026-06-22 18:24:19,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:24:19,718.718 INFO    ] Initializing speech engine...
[2026-06-22 18:24:19,725.725 INFO    ] 2026-06-22 18:24:19
[2026-06-22 18:24:20,038.038 INFO    ] 2026-06-22 18:24:20
[2026-06-22 18:24:20,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:24:20,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:24:20,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:24:20,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:24:20,690.690 INFO    ] time= 22/06/2026 18:24:20
[2026-06-22 18:24:20,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:24:20,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:24:20,895.895 INFO    ] No existing commands found in stream
[2026-06-22 18:24:25,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:24:25,910.910 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-22 18:24:28,603.603 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:24:28,606.606 INFO    ] Checking for system updates...
[2026-06-22 18:24:28,648.648 INFO    ] 200
[2026-06-22 18:24:28,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:24:28,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:24:28,709.709 INFO    ] No update needed
[2026-06-22 18:24:28,712.712 INFO    ] Checking for camera pi updates...
[2026-06-22 18:24:28,747.747 INFO    ] 200
[2026-06-22 18:24:28,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:24:28,793.793 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:24:28,880.880 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:24:28,883.883 INFO    ] No camera update needed
[2026-06-22 18:24:28,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:24:28,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:24:28,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:24:28,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:24:30,943.943 INFO    ] ================================================
[2026-06-22 18:24:30,958.958 INFO    ] Launching Daemon at Mon Jun 22 18:24:30 IST 2026
[2026-06-22 18:24:30,969.969 INFO    ] ================================================
[2026-06-22 18:24:31,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:24:31
[2026-06-22 18:24:32,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:24:32,491.491 INFO    ] Initializing speech engine...
[2026-06-22 18:24:32,508.508 INFO    ] 2026-06-22 18:24:32
[2026-06-22 18:24:32,812.812 INFO    ] 2026-06-22 18:24:32
[2026-06-22 18:24:32,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:24:33,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:24:33,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:24:33,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:24:33,217.217 INFO    ] time= 22/06/2026 18:24:33
[2026-06-22 18:24:33,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:24:33,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:24:33,454.454 INFO    ] No existing commands found in stream
[2026-06-22 18:24:38,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:24:38,469.469 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-22 18:24:41,530.530 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 18:24:41,533.533 INFO    ] Checking for system updates...
[2026-06-22 18:24:41,574.574 INFO    ] 200
[2026-06-22 18:24:41,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:24:41,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:24:41,632.632 INFO    ] No update needed
[2026-06-22 18:24:41,634.634 INFO    ] Checking for camera pi updates...
[2026-06-22 18:24:41,672.672 INFO    ] 200
[2026-06-22 18:24:41,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:24:41,716.716 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:24:41,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:24:41,798.798 INFO    ] No camera update needed
[2026-06-22 18:24:41,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:24:41,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:24:41,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:24:41,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:24:43,853.853 INFO    ] ================================================
[2026-06-22 18:24:43,868.868 INFO    ] Launching Daemon at Mon Jun 22 18:24:43 IST 2026
[2026-06-22 18:24:43,879.879 INFO    ] ================================================
[2026-06-22 18:24:44,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:24:44
[2026-06-22 18:24:44,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:24:45,224.224 INFO    ] Initializing speech engine...
[2026-06-22 18:24:45,251.251 INFO    ] 2026-06-22 18:24:45
[2026-06-22 18:24:45,512.512 INFO    ] 2026-06-22 18:24:45
[2026-06-22 18:24:45,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:24:45,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:24:45,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:24:45,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:24:45,887.887 INFO    ] time= 22/06/2026 18:24:45
[2026-06-22 18:24:45,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:24:45,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:24:46,074.074 INFO    ] No existing commands found in stream
[2026-06-22 18:24:51,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:24:51,097.097 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-22 18:24:52,315.315 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:24:52,318.318 INFO    ] Checking for system updates...
[2026-06-22 18:24:52,355.355 INFO    ] 200
[2026-06-22 18:24:52,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:24:52,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:24:52,421.421 INFO    ] No update needed
[2026-06-22 18:24:52,423.423 INFO    ] Checking for camera pi updates...
[2026-06-22 18:24:52,461.461 INFO    ] 200
[2026-06-22 18:24:52,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:24:52,510.510 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:24:52,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:24:52,595.595 INFO    ] No camera update needed
[2026-06-22 18:24:52,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:24:52,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:24:52,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:24:52,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:24:54,650.650 INFO    ] ================================================
[2026-06-22 18:24:54,665.665 INFO    ] Launching Daemon at Mon Jun 22 18:24:54 IST 2026
[2026-06-22 18:24:54,676.676 INFO    ] ================================================
[2026-06-22 18:24:55,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:24:55
[2026-06-22 18:24:55,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:24:56,146.146 INFO    ] Initializing speech engine...
[2026-06-22 18:24:56,155.155 INFO    ] 2026-06-22 18:24:56
[2026-06-22 18:24:56,430.430 INFO    ] 2026-06-22 18:24:56
[2026-06-22 18:24:56,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:24:56,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:24:56,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:24:56,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:24:57,015.015 INFO    ] time= 22/06/2026 18:24:56
[2026-06-22 18:24:57,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:24:57,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:24:57,149.149 INFO    ] No existing commands found in stream
[2026-06-22 18:25:02,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:25:02,171.171 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-22 18:25:03,492.492 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:25:03,495.495 INFO    ] Checking for system updates...
[2026-06-22 18:25:03,543.543 INFO    ] 200
[2026-06-22 18:25:03,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:25:03,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:25:03,602.602 INFO    ] No update needed
[2026-06-22 18:25:03,604.604 INFO    ] Checking for camera pi updates...
[2026-06-22 18:25:03,639.639 INFO    ] 200
[2026-06-22 18:25:03,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:25:03,681.681 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:25:03,782.782 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:25:03,784.784 INFO    ] No camera update needed
[2026-06-22 18:25:03,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:25:03,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:25:03,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:25:03,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:25:05,842.842 INFO    ] ================================================
[2026-06-22 18:25:05,857.857 INFO    ] Launching Daemon at Mon Jun 22 18:25:05 IST 2026
[2026-06-22 18:25:05,867.867 INFO    ] ================================================
[2026-06-22 18:25:06,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:25:06
[2026-06-22 18:25:07,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:25:07,315.315 INFO    ] Initializing speech engine...
[2026-06-22 18:25:07,327.327 INFO    ] 2026-06-22 18:25:07
[2026-06-22 18:25:07,577.577 INFO    ] 2026-06-22 18:25:07
[2026-06-22 18:25:07,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:25:11,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:25:11,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:25:11,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:25:11,785.785 INFO    ] time= 22/06/2026 18:25:11
[2026-06-22 18:25:11,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:25:11,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:25:11,851.851 INFO    ] No existing commands found in stream
[2026-06-22 18:25:16,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:25:16,863.863 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-22 18:25:18,192.192 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:25:18,195.195 INFO    ] Checking for system updates...
[2026-06-22 18:25:18,232.232 INFO    ] 200
[2026-06-22 18:25:18,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:25:18,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:25:18,297.297 INFO    ] No update needed
[2026-06-22 18:25:18,299.299 INFO    ] Checking for camera pi updates...
[2026-06-22 18:25:18,336.336 INFO    ] 200
[2026-06-22 18:25:18,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:25:18,384.384 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:25:18,473.473 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:25:18,476.476 INFO    ] No camera update needed
[2026-06-22 18:25:18,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:25:18,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:25:18,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:25:18,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:25:20,532.532 INFO    ] ================================================
[2026-06-22 18:25:20,548.548 INFO    ] Launching Daemon at Mon Jun 22 18:25:20 IST 2026
[2026-06-22 18:25:20,559.559 INFO    ] ================================================
[2026-06-22 18:25:21,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:25:21
[2026-06-22 18:25:21,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:25:21,877.877 INFO    ] Initializing speech engine...
[2026-06-22 18:25:21,885.885 INFO    ] 2026-06-22 18:25:21
[2026-06-22 18:25:22,177.177 INFO    ] 2026-06-22 18:25:22
[2026-06-22 18:25:22,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:25:22,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:25:22,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:25:22,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:25:22,599.599 INFO    ] time= 22/06/2026 18:25:22
[2026-06-22 18:25:22,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:25:22,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:25:22,743.743 INFO    ] No existing commands found in stream
[2026-06-22 18:25:27,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:25:27,771.771 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-22 18:25:31,912.912 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:25:31,916.916 INFO    ] Checking for system updates...
[2026-06-22 18:25:31,960.960 INFO    ] 200
[2026-06-22 18:25:31,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:25:32,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:25:32,024.024 INFO    ] No update needed
[2026-06-22 18:25:32,027.027 INFO    ] Checking for camera pi updates...
[2026-06-22 18:25:32,065.065 INFO    ] 200
[2026-06-22 18:25:32,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:25:32,116.116 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:25:32,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:25:32,171.171 INFO    ] No camera update needed
[2026-06-22 18:25:32,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:25:32,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:25:32,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:25:32,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:25:34,231.231 INFO    ] ================================================
[2026-06-22 18:25:34,246.246 INFO    ] Launching Daemon at Mon Jun 22 18:25:34 IST 2026
[2026-06-22 18:25:34,257.257 INFO    ] ================================================
[2026-06-22 18:25:34,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:25:34
[2026-06-22 18:25:35,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:25:35,689.689 INFO    ] Initializing speech engine...
[2026-06-22 18:25:35,697.697 INFO    ] 2026-06-22 18:25:35
[2026-06-22 18:25:35,968.968 INFO    ] 2026-06-22 18:25:35
[2026-06-22 18:25:36,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:25:36,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:25:36,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:25:36,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:25:36,382.382 INFO    ] time= 22/06/2026 18:25:36
[2026-06-22 18:25:36,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:25:36,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:25:36,535.535 INFO    ] No existing commands found in stream
[2026-06-22 18:25:41,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:25:41,549.549 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-22 18:25:43,536.536 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:25:43,538.538 INFO    ] Checking for system updates...
[2026-06-22 18:25:43,560.560 INFO    ] 200
[2026-06-22 18:25:43,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:25:43,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:25:43,618.618 INFO    ] No update needed
[2026-06-22 18:25:43,621.621 INFO    ] Checking for camera pi updates...
[2026-06-22 18:25:43,660.660 INFO    ] 200
[2026-06-22 18:25:43,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:25:43,708.708 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:25:43,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:25:43,813.813 INFO    ] No camera update needed
[2026-06-22 18:25:43,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:25:43,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:25:43,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:25:43,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:25:45,872.872 INFO    ] ================================================
[2026-06-22 18:25:45,887.887 INFO    ] Launching Daemon at Mon Jun 22 18:25:45 IST 2026
[2026-06-22 18:25:45,898.898 INFO    ] ================================================
[2026-06-22 18:25:46,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:25:46
[2026-06-22 18:25:47,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:25:47,346.346 INFO    ] Initializing speech engine...
[2026-06-22 18:25:47,354.354 INFO    ] 2026-06-22 18:25:47
[2026-06-22 18:25:47,652.652 INFO    ] 2026-06-22 18:25:47
[2026-06-22 18:25:47,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:25:47,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:25:47,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:25:48,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:25:48,042.042 INFO    ] time= 22/06/2026 18:25:48
[2026-06-22 18:25:48,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:25:48,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:25:48,171.171 INFO    ] No existing commands found in stream
[2026-06-22 18:25:53,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:25:53,187.187 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-22 18:25:55,902.902 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:25:55,905.905 INFO    ] Checking for system updates...
[2026-06-22 18:25:55,942.942 INFO    ] 200
[2026-06-22 18:25:55,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:25:55,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:25:56,002.002 INFO    ] No update needed
[2026-06-22 18:25:56,005.005 INFO    ] Checking for camera pi updates...
[2026-06-22 18:25:56,045.045 INFO    ] 200
[2026-06-22 18:25:56,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:25:56,097.097 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:25:56,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:25:56,186.186 INFO    ] No camera update needed
[2026-06-22 18:25:56,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:25:56,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:25:56,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:25:56,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:25:58,244.244 INFO    ] ================================================
[2026-06-22 18:25:58,259.259 INFO    ] Launching Daemon at Mon Jun 22 18:25:58 IST 2026
[2026-06-22 18:25:58,270.270 INFO    ] ================================================
[2026-06-22 18:25:58,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:25:58
[2026-06-22 18:25:59,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:25:59,793.793 INFO    ] Initializing speech engine...
[2026-06-22 18:25:59,801.801 INFO    ] 2026-06-22 18:25:59
[2026-06-22 18:26:00,094.094 INFO    ] 2026-06-22 18:26:00
[2026-06-22 18:26:00,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:26:00,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:26:00,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:26:00,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:26:00,579.579 INFO    ] time= 22/06/2026 18:26:00
[2026-06-22 18:26:00,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:26:00,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:26:00,809.809 INFO    ] No existing commands found in stream
[2026-06-22 18:26:05,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:26:05,833.833 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-22 18:26:08,341.341 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:26:08,343.343 INFO    ] Checking for system updates...
[2026-06-22 18:26:08,381.381 INFO    ] 200
[2026-06-22 18:26:08,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:26:08,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:26:08,442.442 INFO    ] No update needed
[2026-06-22 18:26:08,445.445 INFO    ] Checking for camera pi updates...
[2026-06-22 18:26:08,480.480 INFO    ] 200
[2026-06-22 18:26:08,483.483 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:26:08,525.525 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:26:08,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:26:08,639.639 INFO    ] No camera update needed
[2026-06-22 18:26:08,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:26:08,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:26:08,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:26:08,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:26:10,703.703 INFO    ] ================================================
[2026-06-22 18:26:10,718.718 INFO    ] Launching Daemon at Mon Jun 22 18:26:10 IST 2026
[2026-06-22 18:26:10,729.729 INFO    ] ================================================
[2026-06-22 18:26:11,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:26:11
[2026-06-22 18:26:11,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:26:12,172.172 INFO    ] Initializing speech engine...
[2026-06-22 18:26:12,178.178 INFO    ] 2026-06-22 18:26:12
[2026-06-22 18:26:12,476.476 INFO    ] 2026-06-22 18:26:12
[2026-06-22 18:26:12,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:26:14,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:26:14,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:26:14,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:26:14,608.608 INFO    ] time= 22/06/2026 18:26:14
[2026-06-22 18:26:14,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:26:14,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:26:14,687.687 INFO    ] No existing commands found in stream
[2026-06-22 18:26:19,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:26:19,704.704 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-22 18:26:21,175.175 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:26:21,178.178 INFO    ] Checking for system updates...
[2026-06-22 18:26:21,216.216 INFO    ] 200
[2026-06-22 18:26:21,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:26:21,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:26:21,276.276 INFO    ] No update needed
[2026-06-22 18:26:21,279.279 INFO    ] Checking for camera pi updates...
[2026-06-22 18:26:21,308.308 INFO    ] 200
[2026-06-22 18:26:21,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:26:21,352.352 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:26:21,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:26:21,441.441 INFO    ] No camera update needed
[2026-06-22 18:26:21,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:26:21,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:26:21,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:26:21,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:26:23,500.500 INFO    ] ================================================
[2026-06-22 18:26:23,515.515 INFO    ] Launching Daemon at Mon Jun 22 18:26:23 IST 2026
[2026-06-22 18:26:23,525.525 INFO    ] ================================================
[2026-06-22 18:26:24,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:26:24
[2026-06-22 18:26:24,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:26:25,079.079 INFO    ] Initializing speech engine...
[2026-06-22 18:26:25,082.082 INFO    ] 2026-06-22 18:26:25
[2026-06-22 18:26:25,368.368 INFO    ] 2026-06-22 18:26:25
[2026-06-22 18:26:25,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:26:25,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:26:25,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:26:25,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:26:25,825.825 INFO    ] time= 22/06/2026 18:26:25
[2026-06-22 18:26:25,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:26:25,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:26:26,044.044 INFO    ] No existing commands found in stream
[2026-06-22 18:26:31,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:26:31,070.070 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-22 18:26:34,831.831 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:26:34,834.834 INFO    ] Checking for system updates...
[2026-06-22 18:26:34,870.870 INFO    ] 200
[2026-06-22 18:26:34,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:26:34,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:26:34,928.928 INFO    ] No update needed
[2026-06-22 18:26:34,931.931 INFO    ] Checking for camera pi updates...
[2026-06-22 18:26:34,965.965 INFO    ] 200
[2026-06-22 18:26:34,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:26:35,013.013 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:26:35,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:26:35,091.091 INFO    ] No camera update needed
[2026-06-22 18:26:35,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:26:35,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:26:35,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:26:35,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:26:37,150.150 INFO    ] ================================================
[2026-06-22 18:26:37,165.165 INFO    ] Launching Daemon at Mon Jun 22 18:26:37 IST 2026
[2026-06-22 18:26:37,176.176 INFO    ] ================================================
[2026-06-22 18:26:37,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:26:37
[2026-06-22 18:26:38,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:26:38,511.511 INFO    ] Initializing speech engine...
[2026-06-22 18:26:38,520.520 INFO    ] 2026-06-22 18:26:38
[2026-06-22 18:26:38,815.815 INFO    ] 2026-06-22 18:26:38
[2026-06-22 18:26:38,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:26:39,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:26:39,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:26:39,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:26:39,237.237 INFO    ] time= 22/06/2026 18:26:39
[2026-06-22 18:26:39,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:26:39,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:26:39,383.383 INFO    ] No existing commands found in stream
[2026-06-22 18:26:44,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:26:44,410.410 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-22 18:26:47,468.468 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:26:47,471.471 INFO    ] Checking for system updates...
[2026-06-22 18:26:47,510.510 INFO    ] 200
[2026-06-22 18:26:47,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:26:47,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:26:47,583.583 INFO    ] No update needed
[2026-06-22 18:26:47,587.587 INFO    ] Checking for camera pi updates...
[2026-06-22 18:26:47,624.624 INFO    ] 200
[2026-06-22 18:26:47,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:26:47,668.668 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:26:47,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:26:47,753.753 INFO    ] No camera update needed
[2026-06-22 18:26:47,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:26:47,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:26:47,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:26:47,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:26:49,810.810 INFO    ] ================================================
[2026-06-22 18:26:49,825.825 INFO    ] Launching Daemon at Mon Jun 22 18:26:49 IST 2026
[2026-06-22 18:26:49,836.836 INFO    ] ================================================
[2026-06-22 18:26:50,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:26:50
[2026-06-22 18:26:51,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:26:51,457.457 INFO    ] Initializing speech engine...
[2026-06-22 18:26:51,466.466 INFO    ] 2026-06-22 18:26:51
[2026-06-22 18:26:51,751.751 INFO    ] 2026-06-22 18:26:51
[2026-06-22 18:26:51,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:26:52,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:26:52,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:26:52,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:26:52,287.287 INFO    ] time= 22/06/2026 18:26:52
[2026-06-22 18:26:52,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:26:52,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:26:52,437.437 INFO    ] No existing commands found in stream
[2026-06-22 18:26:57,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:26:57,457.457 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-22 18:26:58,055.055 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:26:58,058.058 INFO    ] Checking for system updates...
[2026-06-22 18:26:58,099.099 INFO    ] 200
[2026-06-22 18:26:58,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:26:58,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:26:58,158.158 INFO    ] No update needed
[2026-06-22 18:26:58,161.161 INFO    ] Checking for camera pi updates...
[2026-06-22 18:26:58,196.196 INFO    ] 200
[2026-06-22 18:26:58,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:26:58,242.242 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:26:58,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:26:58,321.321 INFO    ] No camera update needed
[2026-06-22 18:26:58,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:26:58,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:26:58,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:26:58,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:27:00,380.380 INFO    ] ================================================
[2026-06-22 18:27:00,395.395 INFO    ] Launching Daemon at Mon Jun 22 18:27:00 IST 2026
[2026-06-22 18:27:00,406.406 INFO    ] ================================================
[2026-06-22 18:27:00,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:27:00
[2026-06-22 18:27:01,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:27:02,195.195 INFO    ] Initializing speech engine...
[2026-06-22 18:27:02,209.209 INFO    ] 2026-06-22 18:27:02
[2026-06-22 18:27:02,625.625 INFO    ] 2026-06-22 18:27:02
[2026-06-22 18:27:02,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:27:02,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:27:02,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:27:03,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:27:03,186.186 INFO    ] time= 22/06/2026 18:27:03
[2026-06-22 18:27:03,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:27:03,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:27:03,372.372 INFO    ] No existing commands found in stream
[2026-06-22 18:27:08,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:27:08,392.392 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-22 18:27:09,905.905 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:27:09,907.907 INFO    ] Checking for system updates...
[2026-06-22 18:27:09,955.955 INFO    ] 200
[2026-06-22 18:27:09,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:27:09,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:27:09,991.991 INFO    ] No update needed
[2026-06-22 18:27:09,992.992 INFO    ] Checking for camera pi updates...
[2026-06-22 18:27:10,013.013 INFO    ] 200
[2026-06-22 18:27:10,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:27:10,039.039 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:27:10,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:27:10,120.120 INFO    ] No camera update needed
[2026-06-22 18:27:10,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:27:10,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:27:10,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:27:10,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:27:12,175.175 INFO    ] ================================================
[2026-06-22 18:27:12,190.190 INFO    ] Launching Daemon at Mon Jun 22 18:27:12 IST 2026
[2026-06-22 18:27:12,200.200 INFO    ] ================================================
[2026-06-22 18:27:12,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:27:12
[2026-06-22 18:27:13,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:27:13,644.644 INFO    ] Initializing speech engine...
[2026-06-22 18:27:13,658.658 INFO    ] 2026-06-22 18:27:13
[2026-06-22 18:27:13,946.946 INFO    ] 2026-06-22 18:27:13
[2026-06-22 18:27:14,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:27:15,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:27:15,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:27:15,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:27:15,598.598 INFO    ] time= 22/06/2026 18:27:15
[2026-06-22 18:27:15,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:27:15,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:27:15,704.704 INFO    ] No existing commands found in stream
[2026-06-22 18:27:20,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:27:20,727.727 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-22 18:27:24,222.222 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:27:24,225.225 INFO    ] Checking for system updates...
[2026-06-22 18:27:24,262.262 INFO    ] 200
[2026-06-22 18:27:24,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:27:24,319.319 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:27:24,322.322 INFO    ] No update needed
[2026-06-22 18:27:24,325.325 INFO    ] Checking for camera pi updates...
[2026-06-22 18:27:24,360.360 INFO    ] 200
[2026-06-22 18:27:24,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:27:24,405.405 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:27:24,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:27:24,484.484 INFO    ] No camera update needed
[2026-06-22 18:27:24,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:27:24,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:27:24,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:27:24,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:27:26,540.540 INFO    ] ================================================
[2026-06-22 18:27:26,556.556 INFO    ] Launching Daemon at Mon Jun 22 18:27:26 IST 2026
[2026-06-22 18:27:26,566.566 INFO    ] ================================================
[2026-06-22 18:27:27,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:27:27
[2026-06-22 18:27:27,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:27:27,943.943 INFO    ] Initializing speech engine...
[2026-06-22 18:27:27,958.958 INFO    ] 2026-06-22 18:27:27
[2026-06-22 18:27:28,226.226 INFO    ] 2026-06-22 18:27:28
[2026-06-22 18:27:28,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:27:28,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:27:28,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:27:28,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:27:28,792.792 INFO    ] time= 22/06/2026 18:27:28
[2026-06-22 18:27:28,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:27:28,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:27:28,949.949 INFO    ] No existing commands found in stream
[2026-06-22 18:27:33,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:27:33,965.965 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-22 18:27:36,947.947 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:27:36,949.949 INFO    ] Checking for system updates...
[2026-06-22 18:27:36,969.969 INFO    ] 200
[2026-06-22 18:27:36,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:27:37,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:27:37,017.017 INFO    ] No update needed
[2026-06-22 18:27:37,019.019 INFO    ] Checking for camera pi updates...
[2026-06-22 18:27:37,054.054 INFO    ] 200
[2026-06-22 18:27:37,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:27:37,097.097 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:27:37,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:27:37,270.270 INFO    ] No camera update needed
[2026-06-22 18:27:37,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:27:37,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:27:37,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:27:37,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:27:39,327.327 INFO    ] ================================================
[2026-06-22 18:27:39,343.343 INFO    ] Launching Daemon at Mon Jun 22 18:27:39 IST 2026
[2026-06-22 18:27:39,353.353 INFO    ] ================================================
[2026-06-22 18:27:40,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:27:40
[2026-06-22 18:27:40,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:27:40,887.887 INFO    ] Initializing speech engine...
[2026-06-22 18:27:40,899.899 INFO    ] 2026-06-22 18:27:40
[2026-06-22 18:27:41,172.172 INFO    ] 2026-06-22 18:27:41
[2026-06-22 18:27:41,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:27:41,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:27:41,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:27:41,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:27:41,647.647 INFO    ] time= 22/06/2026 18:27:41
[2026-06-22 18:27:41,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:27:41,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:27:41,878.878 INFO    ] No existing commands found in stream
[2026-06-22 18:27:46,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:27:46,907.907 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-22 18:27:48,493.493 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:27:48,496.496 INFO    ] Checking for system updates...
[2026-06-22 18:27:48,533.533 INFO    ] 200
[2026-06-22 18:27:48,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:27:48,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:27:48,599.599 INFO    ] No update needed
[2026-06-22 18:27:48,601.601 INFO    ] Checking for camera pi updates...
[2026-06-22 18:27:48,634.634 INFO    ] 200
[2026-06-22 18:27:48,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:27:48,677.677 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:27:48,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:27:48,761.761 INFO    ] No camera update needed
[2026-06-22 18:27:48,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:27:48,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:27:48,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:27:48,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:27:50,816.816 INFO    ] ================================================
[2026-06-22 18:27:50,831.831 INFO    ] Launching Daemon at Mon Jun 22 18:27:50 IST 2026
[2026-06-22 18:27:50,841.841 INFO    ] ================================================
[2026-06-22 18:27:51,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:27:51
[2026-06-22 18:27:52,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:27:52,271.271 INFO    ] Initializing speech engine...
[2026-06-22 18:27:52,283.283 INFO    ] 2026-06-22 18:27:52
[2026-06-22 18:27:52,550.550 INFO    ] 2026-06-22 18:27:52
[2026-06-22 18:27:52,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:27:52,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:27:52,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:27:52,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:27:53,023.023 INFO    ] time= 22/06/2026 18:27:52
[2026-06-22 18:27:53,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:27:53,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:27:53,174.174 INFO    ] No existing commands found in stream
[2026-06-22 18:27:58,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:27:58,202.202 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-22 18:28:01,130.130 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:28:01,132.132 INFO    ] Checking for system updates...
[2026-06-22 18:28:01,152.152 INFO    ] 200
[2026-06-22 18:28:01,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:28:01,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:28:01,185.185 INFO    ] No update needed
[2026-06-22 18:28:01,187.187 INFO    ] Checking for camera pi updates...
[2026-06-22 18:28:01,213.213 INFO    ] 200
[2026-06-22 18:28:01,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:28:01,261.261 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:28:01,353.353 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:28:01,356.356 INFO    ] No camera update needed
[2026-06-22 18:28:01,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:28:01,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:28:01,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:28:01,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:28:03,418.418 INFO    ] ================================================
[2026-06-22 18:28:03,432.432 INFO    ] Launching Daemon at Mon Jun 22 18:28:03 IST 2026
[2026-06-22 18:28:03,443.443 INFO    ] ================================================
[2026-06-22 18:28:04,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:28:04
[2026-06-22 18:28:04,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:28:04,899.899 INFO    ] Initializing speech engine...
[2026-06-22 18:28:04,924.924 INFO    ] 2026-06-22 18:28:04
[2026-06-22 18:28:05,199.199 INFO    ] 2026-06-22 18:28:05
[2026-06-22 18:28:05,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:28:05,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:28:05,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:28:05,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:28:06,048.048 INFO    ] time= 22/06/2026 18:28:06
[2026-06-22 18:28:06,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:28:06,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:28:06,269.269 INFO    ] Found 1 existing command(s) in stream
[2026-06-22 18:28:06,315.315 INFO    ] Checking historical command: ID=1782133082225-0
[2026-06-22 18:28:06,327.327 INFO    ] process_and_cleanup_command: msg_id=1782133082225-0
[2026-06-22 18:28:06,338.338 INFO    ] is_command_expired: timestamp=2026-06-22T12:58:01.662Z, expiry=30s
[2026-06-22 18:28:06,509.509 INFO    ] Command removed from stream: 1782133082225-0. returning for processing...
[2026-06-22 18:28:06,520.520 INFO    ] ***** get_valid_command
[2026-06-22 18:28:06,523.523 INFO    ] {'source': 'webapp', 'data': '{"request_id":"start-order-1782133081662-wq1zgzmav","orderId":"TM06202507260622182730684","is_vending":false}', 'command': 'start-order', 'timeout': '10', 'timestamp': '2026-06-22T12:58:01.662Z'}
[2026-06-22 18:28:06,528.528 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'start-order-1782133081662-wq1zgzmav', 'orderId': 'TM06202507260622182730684'}
[2026-06-22 18:28:06,573.573 INFO    ] Handling start order...
[2026-06-22 18:28:06,597.597 INFO    ] handle_start_order_command
[2026-06-22 18:28:06,639.639 INFO    ] _send_start_order_success: request_id=start-order-1782133081662-wq1zgzmav, order_id=TM06202507260622182730684
[2026-06-22 18:28:06,658.658 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM06202507
[2026-06-22 18:28:06,803.803 INFO    ] [_send_start_order_success] Message added to stream with ID: 1782133086667-0
[2026-06-22 18:28:06,809.809 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-22 18:28:06,813.813 INFO    ] Checking for system updates...
[2026-06-22 18:28:06,863.863 INFO    ] 200
[2026-06-22 18:28:06,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:28:06,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:28:06,934.934 INFO    ] No update needed
[2026-06-22 18:28:06,940.940 INFO    ] Checking for camera pi updates...
[2026-06-22 18:28:06,977.977 INFO    ] 200
[2026-06-22 18:28:06,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:28:07,031.031 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:28:07,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:28:07,229.229 INFO    ] No camera update needed
[2026-06-22 18:28:07,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:28:07,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:28:07,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:28:07,345.345 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-22 18:28:07,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:28:09,400.400 INFO    ] ================================================
[2026-06-22 18:28:09,415.415 INFO    ] Launching Daemon at Mon Jun 22 18:28:09 IST 2026
[2026-06-22 18:28:09,426.426 INFO    ] ================================================
[2026-06-22 18:28:09,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:28:09
[2026-06-22 18:28:10,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:28:10,756.756 INFO    ] Initializing speech engine...
[2026-06-22 18:28:10,771.771 INFO    ] 2026-06-22 18:28:10
[2026-06-22 18:28:11,056.056 INFO    ] 2026-06-22 18:28:11
[2026-06-22 18:28:11,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:28:11,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:28:11,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:28:11,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:28:11,548.548 INFO    ] time= 22/06/2026 18:28:11
[2026-06-22 18:28:11,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:28:11,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:28:11,750.750 INFO    ] Found 2 existing command(s) in stream
[2026-06-22 18:28:11,757.757 INFO    ] Checking historical command: ID=1782133086667-0
[2026-06-22 18:28:11,764.764 INFO    ] process_and_cleanup_command: msg_id=1782133086667-0
[2026-06-22 18:28:11,771.771 INFO    ] is_command_expired: timestamp=2026-06-22T12:58:06.651184Z, expiry=30s
[2026-06-22 18:28:11,980.980 INFO    ] Command removed from stream: 1782133086667-0. returning for processing...
[2026-06-22 18:28:12,019.019 INFO    ] ***** get_valid_command
[2026-06-22 18:28:12,071.071 INFO    ] {'message_type': 'command_response', 'message': 'start-order success', 'imei': 'TM06202507', 'metadata_order_id': 'TM06202507260622182730684', 'timestamp': '2026-06-22T12:58:06.651184Z', 'metadata_request_id': 'start-order-1782133081662-wq1zgzmav', 'status': 'success'}
[2026-06-22 18:28:12,120.120 INFO    ] Checking historical command: ID=1782133089957-0
[2026-06-22 18:28:12,180.180 INFO    ] process_and_cleanup_command: msg_id=1782133089957-0
[2026-06-22 18:28:12,207.207 INFO    ] is_command_expired: timestamp=2026-06-22T12:58:09.291Z, expiry=30s
[2026-06-22 18:28:12,350.350 INFO    ] Command removed from stream: 1782133089957-0. returning for processing...
[2026-06-22 18:28:12,379.379 INFO    ] ***** get_valid_command
[2026-06-22 18:28:12,406.406 INFO    ] {'data': '{"request_id":"process-order-1782133089290-45mktqt20","orderId":"TM06202507260622182730684","is_vending":false,"accessCode":"36286413"}', 'timeout': '60', 'timestamp': '2026-06-22T12:58:09.291Z', 'source': 'webapp', 'command': 'process-order'}
[2026-06-22 18:28:12,413.413 INFO    ] ***** Parsed command data: {'orderId': 'TM06202507260622182730684', 'request_id': 'process-order-1782133089290-45mktqt20', 'accessCode': '36286413', 'is_vending': False}
[2026-06-22 18:28:12,416.416 INFO    ] Handling process order...
[2026-06-22 18:28:12,455.455 INFO    ] Processing process-order command...
[2026-06-22 18:28:12,478.478 INFO    ] 🔍 Lock file Order ID: TM06202507260622182730684, TS: 2026-06-22 18:28:06
[2026-06-22 18:28:12,491.491 INFO    ] ✅ Order lock valid for TM06202507260622182730684
[2026-06-22 18:28:12,530.530 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-22 18:28:12,551.551 INFO    ] processing access code 36286413 for order TM06202507260622182730684
[2026-06-22 18:28:12,558.558 INFO    ] 🔍 Lock file Order ID: TM06202507260622182730684, TS: 2026-06-22 18:28:06
[2026-06-22 18:28:12,563.563 INFO    ] ✅ Order lock valid for TM06202507260622182730684
[2026-06-22 18:28:12,568.568 INFO    ] 2026-06-22 18:28:12
[2026-06-22 18:28:12,689.689 INFO    ] 200
[2026-06-22 18:28:12,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:28:12,739.739 INFO    ] 36286413
[2026-06-22 18:28:12,745.745 INFO    ] 2026-06-22 18:28:12
[2026-06-22 18:28:12,752.752 INFO    ] session id :638252819
[2026-06-22 18:28:12,759.759 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=36286413&imei=TM06202507&session_id=638252819
[2026-06-22 18:28:16,577.577 INFO    ] 200
[2026-06-22 18:28:16,579.579 INFO    ] {"data": {"mobile": "9902019321", "order_id": "TM06202507260622182730684", "access_code": "36286413", "bill_amount": "80", "proposed_sku_json": [{"tray_id": "45", "qty": 2, "mrp": "40", "door_id": "2", "name": "Rite Bite Sports Bar 40gm", "sku_total": 80, "image_url": "https://images.tinymart.in/product/4500669-3919.webp", "offer_desc": "", "unit_price": 40, "skuid": "4500669", "offer_id": ""}], "invoice_bill": "80"}, "msg": "Order Data", "status": true, "rstatus": true}
[2026-06-22 18:28:16,582.582 INFO    ] 80
[2026-06-22 18:28:16,584.584 INFO    ] TM06202507260622182730684
[2026-06-22 18:28:16,586.586 INFO    ] 9902019321
[2026-06-22 18:28:16,589.589 INFO    ] 2026-06-22 18:28:16
[2026-06-22 18:28:16,591.591 INFO    ] Door Opening for user mobile ending with  nine three two one 
[2026-06-22 18:28:16,593.593 INFO    ] Door Opening for user mobile ending with  nine three two one 
[2026-06-22 18:28:16,596.596 INFO    ] 0df16b7c7982c2ed28253381e34c0a47
[2026-06-22 18:28:16,599.599 INFO    ] 2026-06-22 18:28:16
[2026-06-22 18:28:16,601.601 INFO    ] playing audio file
[2026-06-22 18:28:16,617.617 INFO    ] 2026-06-22 18:28:16
[2026-06-22 18:28:16,620.620 INFO    ] 2026-06-22 18:28:16
[2026-06-22 18:28:16,624.624 INFO    ] publish_status: order_id=TM06202507260622182730684
[2026-06-22 18:28:16,627.627 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622182730684
[2026-06-22 18:28:16,690.690 INFO    ] [publish_status] Message added to stream with ID: 1782133096617-0
[2026-06-22 18:28:16,693.693 INFO    ] Published to order:TM06202507260622182730684: {'order_id': 'TM06202507260622182730684', 'timestamp': '2026-06-22T12:58:16.622418Z', 'server_response': '{"data": {"order_id": "TM06202507260622182730684", "access_code": "36286413", "invoice_bill": "80", "mobile": "9902019321", "bill_amount": "80", "proposed_sku_json": [{"tray_id": "45", "image_url": "https://images.tinymart.in/product/4500669-3919.webp", "mrp": "40", "sku_total": 80, "unit_price": 40, "offer_id": "", "door_id": "2", "skuid": "4500669", "offer_desc": "", "name": "Rite Bite Sports Bar 40gm", "qty": 2}]}, "status": true, "msg": "Order Data", "rstatus": true}', 'server_status': 'order-started'} (ID: 1782133096617-0)
[2026-06-22 18:28:17,282.282 INFO    ] {'order_id': 'TM06202507260622182730684', 'server_response': {'data': {'order_id': 'TM06202507260622182730684', 'access_code': '36286413', 'invoice_bill': '80', 'mobile': '9902019321', 'bill_amount': '80', 'proposed_sku_json': [{'tray_id': '45', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'mrp': '40', 'sku_total': 80, 'unit_price': 40, 'offer_id': '', 'door_id': '2', 'skuid': '4500669', 'offer_desc': '', 'name': 'Rite Bite Sports Bar 40gm', 'qty': 2}]}, 'status': True, 'msg': 'Order Data', 'rstatus': True}, 'server_status': 'order-started'}
[2026-06-22 18:28:17,285.285 INFO    ] 200
[2026-06-22 18:28:17,287.287 INFO    ] {"data":{"order_id":"TM06202507260622182730684","server_response":{"data":{"order_id":"TM06202507260622182730684","access_code":"36286413","invoice_bill":"80","mobile":"9902019321","bill_amount":"80","proposed_sku_json":[{"tray_id":"45","image_url":"https:\/\/images.tinymart.in\/product\/4500669-3919.webp","mrp":"40","sku_total":80,"unit_price":40,"offer_id":"","door_id":"2","skuid":"4500669","offer_desc":"","name":"Rite Bite Sports Bar 40gm","qty":2}]},"status":true,"msg":"Order Data","rstatus":true},"server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 18:28:17,290.290 INFO    ] {'data': {'order_id': 'TM06202507260622182730684', 'server_response': {'data': {'order_id': 'TM06202507260622182730684', 'access_code': '36286413', 'invoice_bill': '80', 'mobile': '9902019321', 'bill_amount': '80', 'proposed_sku_json': [{'name': 'Rite Bite Sports Bar 40gm', 'tray_id': '45', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'mrp': '40', 'skuid': '4500669', 'offer_id': '', 'door_id': '2', 'qty': 2, 'offer_desc': '', 'sku_total': 80, 'unit_price': 40}]}, 'status': True, 'msg': 'Order Data', 'rstatus': True}, 'server_status': 'order-started'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-22 18:28:17,293.293 INFO    ] 2026-06-22 18:28:17
[2026-06-22 18:28:17,337.337 INFO    ] 200
[2026-06-22 18:28:17,340.340 INFO    ] True
[2026-06-22 18:28:17,540.540 INFO    ] 200
[2026-06-22 18:28:17,543.543 INFO    ] {"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": ""}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 18:28:17,546.546 INFO    ] {'error': {'data': {}, 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'voiceNote': 'Please Wait', 'status': 'False', 'rstatus': False}
[2026-06-22 18:28:17,549.549 INFO    ] *** process_order ***
[2026-06-22 18:28:18,729.729 INFO    ] 200
[2026-06-22 18:28:18,732.732 INFO    ] {"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": ""}, "rstatus": true, "delay": 0, "status": "True", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 18:28:18,735.735 INFO    ] {'status': 'True', 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'voiceNote': 'Please Wait', 'rstatus': True}
[2026-06-22 18:28:18,737.737 INFO    ] *** process_order ***
[2026-06-22 18:28:18,740.740 INFO    ] publish_status: order_id=TM06202507260622182730684
[2026-06-22 18:28:18,742.742 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622182730684
[2026-06-22 18:28:18,828.828 INFO    ] [publish_status] Message added to stream with ID: 1782133098757-0
[2026-06-22 18:28:18,831.831 INFO    ] Published to order:TM06202507260622182730684: {'order_id': 'TM06202507260622182730684', 'server_response': '{"SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionStatus": {"Header": " Your order is under process  ", "UI_Header": "", "SubHeader": "You can pull the door now.", "Note": ""}, "rstatus": true, "delay": 0, "voiceNote": "Door is open...", "status": "True", "SectionMain": {"Header": "Processing Order"}}', 'server_status': 'doorOpened'} (ID: 1782133098757-0)
[2026-06-22 18:28:19,880.880 INFO    ] 2026-06-22 18:28:19
[2026-06-22 18:28:19,883.883 INFO    ] publish_status: order_id=TM06202507260622182730684
[2026-06-22 18:28:19,887.887 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622182730684
[2026-06-22 18:28:19,979.979 INFO    ] [publish_status] Message added to stream with ID: 1782133099907-0
[2026-06-22 18:28:19,982.982 INFO    ] Published to order:TM06202507260622182730684: {'order_id': 'TM06202507260622182730684', 'timestamp': '2026-06-22T12:58:19.881948Z', 'server_response': '{"status": "True", "SectionStatus": {"Header": " Your order is under process  ", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Note": ""}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "voiceNote": "Please Wait", "rstatus": true}', 'server_status': 'processOrder'} (ID: 1782133099907-0)
[2026-06-22 18:28:20,128.128 INFO    ] {'order_id': 'TM06202507260622182730684', 'server_response': {'status': 'True', 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'voiceNote': 'Please Wait', 'rstatus': True}, 'server_status': 'processOrder'}
[2026-06-22 18:28:20,131.131 INFO    ] 200
[2026-06-22 18:28:20,133.133 INFO    ] {"data":{"order_id":"TM06202507260622182730684","server_response":{"status":"true","SectionStatus":{"Header":" Your order is under process  ","UI_Header":"","SubHeader":"Please wait while we process your order","Note":""},"SectionMain":{"Header":"Processing Order"},"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"delay":0,"voiceNote":"Please Wait","rstatus":true},"server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 18:28:20,137.137 INFO    ] {'data': {'order_id': 'TM06202507260622182730684', 'server_response': {'status': 'true', 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}}, 'server_status': 'processOrder'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-22 18:28:20,140.140 INFO    ] 2026-06-22 18:28:20
[2026-06-22 18:28:20,142.142 INFO    ] None
[2026-06-22 18:28:20,145.145 INFO    ] Opening Door now
[2026-06-22 18:28:20,147.147 INFO    ] Opening Door now
[2026-06-22 18:28:20,150.150 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-22 18:28:20,153.153 INFO    ] 2026-06-22 18:28:20
[2026-06-22 18:28:20,156.156 INFO    ] playing audio file
[2026-06-22 18:28:20,173.173 INFO    ] 2026-06-22 18:28:20
[2026-06-22 18:28:20,176.176 INFO    ] 2026-06-22 18:28:20
[2026-06-22 18:28:23,266.266 INFO    ] 200
[2026-06-22 18:28:23,269.269 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Rite Bite Sports Bar 40gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Door 2 is open now"}
[2026-06-22 18:28:23,272.272 INFO    ] {'error': {'data': {}, 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 2}]}, 'voiceNote': 'Door 2 is open now', 'status': 'False', 'rstatus': False}
[2026-06-22 18:28:26,358.358 INFO    ] 200
[2026-06-22 18:28:26,361.361 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Rite Bite Sports Bar 40gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2"}
[2026-06-22 18:28:26,364.364 INFO    ] {'error': {'data': {}, 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 2}]}, 'voiceNote': 'Please close door 2', 'status': 'False', 'rstatus': False}
[2026-06-22 18:28:29,448.448 INFO    ] 200
[2026-06-22 18:28:29,451.451 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Rite Bite Sports Bar 40gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2"}
[2026-06-22 18:28:29,455.455 INFO    ] Please close door 2
[2026-06-22 18:28:29,459.459 INFO    ] Please close door 2
[2026-06-22 18:28:29,462.462 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-22 18:28:29,465.465 INFO    ] 2026-06-22 18:28:29
[2026-06-22 18:28:29,468.468 INFO    ] playing audio file
[2026-06-22 18:28:29,487.487 INFO    ] 2026-06-22 18:28:29
[2026-06-22 18:28:29,491.491 INFO    ] publish_status: order_id=TM06202507260622182730684
[2026-06-22 18:28:29,495.495 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622182730684
[2026-06-22 18:28:29,583.583 INFO    ] [publish_status] Message added to stream with ID: 1782133109497-0
[2026-06-22 18:28:29,587.587 INFO    ] Published to order:TM06202507260622182730684: {'order_id': 'TM06202507260622182730684', 'timestamp': '2026-06-22T12:58:29.489592Z', 'server_response': '{"error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionStatus": {"Header": "Please Close Door 2", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products"}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Rite Bite Sports Bar 40gm", "qty": 2}]}, "voiceNote": "Please close door 2", "status": "False", "rstatus": false}', 'server_status': 'OrderStatus'} (ID: 1782133109497-0)
[2026-06-22 18:28:30,210.210 INFO    ] {'order_id': 'TM06202507260622182730684', 'server_response': {'error': {'data': {}, 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 2}]}, 'voiceNote': 'Please close door 2', 'status': 'False', 'rstatus': False}, 'server_status': 'OrderStatus'}
[2026-06-22 18:28:30,213.213 INFO    ] 200
[2026-06-22 18:28:30,217.217 INFO    ] {"data":{"order_id":"TM06202507260622182730684","server_response":{"error":{"data":[],"tmessage":"In Progress","code":20001,"umessage":"In Progress"},"SectionStatus":{"Header":"Please Close Door 2","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products"},"SectionMain":{"Header":"Door Open"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"Rite Bite Sports Bar 40gm","qty":2}]},"voiceNote":"Please close door 2","status":"false","rstatus":false},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 18:28:30,221.221 INFO    ] {'data': {'order_id': 'TM06202507260622182730684', 'server_response': {'error': {'data': [], 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 2}]}, 'voiceNote': 'Please close door 2', 'status': 'false', 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-22 18:28:30,224.224 INFO    ] {'error': {'data': {}, 'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress'}, 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 2}]}, 'voiceNote': 'Please close door 2', 'status': 'False', 'rstatus': False}
[2026-06-22 18:28:33,290.290 INFO    ] 200
[2026-06-22 18:28:33,293.293 INFO    ] {"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"}, "rstatus": true, "delay": 100, "status": "True", "SectionMain": {"Header": "Door Closed"}, "voiceNote": "Transaction Completed"}
[2026-06-22 18:28:33,297.297 INFO    ] {'status': 'True', 'SectionStatus': {'Header': ' Order is complete ', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'delay': 100, 'voiceNote': 'Transaction Completed', 'rstatus': True}
[2026-06-22 18:28:33,300.300 INFO    ] 2026-06-22 18:28:33
[2026-06-22 18:28:33,303.303 INFO    ] Order Completed 
[2026-06-22 18:28:33,307.307 INFO    ] Order Completed 
[2026-06-22 18:28:33,310.310 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-22 18:28:33,314.314 INFO    ] 2026-06-22 18:28:33
[2026-06-22 18:28:33,317.317 INFO    ] playing audio file
[2026-06-22 18:28:33,336.336 INFO    ] 2026-06-22 18:28:33
[2026-06-22 18:28:33,340.340 INFO    ] {'status': 'True', 'SectionStatus': {'Header': ' Order is complete ', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'delay': 100, 'voiceNote': 'Transaction Completed', 'rstatus': True}
[2026-06-22 18:28:33,345.345 INFO    ] 2026-06-22 18:28:33
[2026-06-22 18:28:35,717.717 INFO    ] 200
[2026-06-22 18:28:35,720.720 INFO    ] {"skus": [{"tray_id": "45", "qty": 2, "mrp": "40", "door_id": "", "name": "Rite Bite Sports Bar 40gm per peice", "sku_total": 80.0, "image_url": "https://images.tinymart.in/product/4500669-3919.webp", "unit_price": "40", "skuid": "4500669"}], "anomaly": 0, "rstatus": true, "orderId": "TM06202507260622182730684", "logic": "WBL", "total_amount": 80.0, "res": "True"}
[2026-06-22 18:28:35,724.724 INFO    ] {'anomaly': 0, 'skus': [{'tray_id': '45', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'mrp': '40', 'sku_total': 80.0, 'unit_price': '40', 'door_id': '', 'skuid': '4500669', 'name': 'Rite Bite Sports Bar 40gm per peice', 'qty': 2}], 'res': 'True', 'orderId': 'TM06202507260622182730684', 'rstatus': True, 'logic': 'WBL', 'total_amount': 80.0}
[2026-06-22 18:28:35,727.727 INFO    ] {'anomaly': 0, 'skus': [{'tray_id': '45', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'mrp': '40', 'sku_total': 80.0, 'unit_price': '40', 'door_id': '', 'skuid': '4500669', 'name': 'Rite Bite Sports Bar 40gm per peice', 'qty': 2}], 'res': 'True', 'orderId': 'TM06202507260622182730684', 'rstatus': True, 'logic': 'WBL', 'total_amount': 80.0}
[2026-06-22 18:28:35,731.731 INFO    ] 2026-06-22 18:28:35
[2026-06-22 18:28:35,734.734 INFO    ] 2026-06-22 18:28:35
[2026-06-22 18:28:35,737.737 INFO    ] 80
[2026-06-22 18:28:35,740.740 INFO    ] 2026-06-22 18:28:35
[2026-06-22 18:28:35,743.743 INFO    ] 2026-06-22 18:28:35
[2026-06-22 18:28:35,746.746 INFO    ]  Your Bill Amount is 80
[2026-06-22 18:28:35,749.749 INFO    ]  Your Bill Amount is 80
[2026-06-22 18:28:35,752.752 INFO    ] dd6ba73d4b5ba6a8b0f618c43455af21
[2026-06-22 18:28:35,756.756 INFO    ] 2026-06-22 18:28:35
[2026-06-22 18:28:35,759.759 INFO    ] playing audio file
[2026-06-22 18:28:35,778.778 INFO    ] 2026-06-22 18:28:35
[2026-06-22 18:28:35,782.782 INFO    ] 2026-06-22 18:28:35
[2026-06-22 18:28:35,786.786 INFO    ] publish_status: order_id=TM06202507260622182730684
[2026-06-22 18:28:35,790.790 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622182730684
[2026-06-22 18:28:35,871.871 INFO    ] [publish_status] Message added to stream with ID: 1782133115787-0
[2026-06-22 18:28:35,874.874 INFO    ] Published to order:TM06202507260622182730684: {'order_id': 'TM06202507260622182730684', 'timestamp': '2026-06-22T12:58:35.783900Z', 'server_response': '{"anomaly": 0, "skus": [{"tray_id": "45", "image_url": "https://images.tinymart.in/product/4500669-3919.webp", "mrp": "40", "sku_total": 80.0, "unit_price": "40", "door_id": "", "skuid": "4500669", "name": "Rite Bite Sports Bar 40gm per peice", "qty": 2}], "res": "True", "orderId": "TM06202507260622182730684", "rstatus": true, "logic": "WBL", "total_amount": 80.0}', 'server_status': 'invoiceOrder'} (ID: 1782133115787-0)
[2026-06-22 18:28:36,403.403 INFO    ] {'order_id': 'TM06202507260622182730684', 'server_response': {'anomaly': 0, 'skus': [{'tray_id': '45', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'mrp': '40', 'sku_total': 80.0, 'unit_price': '40', 'door_id': '', 'skuid': '4500669', 'name': 'Rite Bite Sports Bar 40gm per peice', 'qty': 2}], 'res': 'True', 'orderId': 'TM06202507260622182730684', 'rstatus': True, 'logic': 'WBL', 'total_amount': 80.0}, 'server_status': 'invoiceOrder'}
[2026-06-22 18:28:36,407.407 INFO    ] 200
[2026-06-22 18:28:36,410.410 INFO    ] {"data":{"order_id":"TM06202507260622182730684","server_response":{"anomaly":0,"skus":[{"tray_id":"45","image_url":"https:\/\/images.tinymart.in\/product\/4500669-3919.webp","mrp":"40","sku_total":80,"unit_price":"40","door_id":"","skuid":"4500669","name":"Rite Bite Sports Bar 40gm per peice","qty":2}],"res":"true","orderId":"TM06202507260622182730684","rstatus":true,"logic":"WBL","total_amount":80},"server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 18:28:36,413.413 INFO    ] {'data': {'order_id': 'TM06202507260622182730684', 'server_response': {'anomaly': 0, 'skus': [{'tray_id': '45', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'mrp': '40', 'skuid': '4500669', 'door_id': '', 'qty': 2, 'name': 'Rite Bite Sports Bar 40gm per peice', 'sku_total': 80, 'unit_price': '40'}], 'res': 'true', 'orderId': 'TM06202507260622182730684', 'rstatus': True, 'logic': 'WBL', 'total_amount': 80}, 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-22 18:28:36,416.416 INFO    ] {'data': {'order_id': 'TM06202507260622182730684', 'server_response': {'anomaly': 0, 'skus': [{'tray_id': '45', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'mrp': '40', 'skuid': '4500669', 'door_id': '', 'qty': 2, 'name': 'Rite Bite Sports Bar 40gm per peice', 'sku_total': 80, 'unit_price': '40'}], 'res': 'true', 'orderId': 'TM06202507260622182730684', 'rstatus': True, 'logic': 'WBL', 'total_amount': 80}, 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-22 18:28:36,419.419 INFO    ] 2026-06-22 18:28:36
[2026-06-22 18:28:38,158.158 INFO    ] 200
[2026-06-22 18:28:38,161.161 INFO    ] {"orders_data_synced": [], "order_items": [], "orders_data": [], "orders_synced": [], "tray_synced": ["TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684", "TM06202507260622182730684"], "order_items_synced": [], "orders": [], "status": true, "tray_sync": []}
[2026-06-22 18:28:38,166.166 INFO    ] 2026-06-22 18:28:38
[2026-06-22 18:28:38,317.317 INFO    ] 200
[2026-06-22 18:28:38,321.321 INFO    ] True
[2026-06-22 18:28:38,324.324 INFO    ] cleanup_start_order_file_after_processing: order_id=TM06202507260622182730684
[2026-06-22 18:28:38,329.329 INFO    ] start order file deleted
[2026-06-22 18:28:38,332.332 INFO    ] Checking for system updates...
[2026-06-22 18:28:38,373.373 INFO    ] 200
[2026-06-22 18:28:38,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:28:38,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:28:38,439.439 INFO    ] No update needed
[2026-06-22 18:28:38,442.442 INFO    ] Checking for camera pi updates...
[2026-06-22 18:28:38,482.482 INFO    ] 200
[2026-06-22 18:28:38,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:28:38,539.539 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:28:38,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:28:38,660.660 INFO    ] No camera update needed
[2026-06-22 18:28:38,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:28:38,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:28:38,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:28:38,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:28:40,729.729 INFO    ] ================================================
[2026-06-22 18:28:40,744.744 INFO    ] Launching Daemon at Mon Jun 22 18:28:40 IST 2026
[2026-06-22 18:28:40,756.756 INFO    ] ================================================
[2026-06-22 18:28:41,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:28:41
[2026-06-22 18:28:42,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:28:42,399.399 INFO    ] Initializing speech engine...
[2026-06-22 18:28:42,408.408 INFO    ] 2026-06-22 18:28:42
[2026-06-22 18:28:42,688.688 INFO    ] 2026-06-22 18:28:42
[2026-06-22 18:28:42,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:28:42,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:28:42,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:28:43,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:28:43,220.220 INFO    ] time= 22/06/2026 18:28:43
[2026-06-22 18:28:43,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:28:43,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:28:43,403.403 INFO    ] No existing commands found in stream
[2026-06-22 18:28:48,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:28:48,427.427 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-22 18:28:51,805.805 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:28:51,808.808 INFO    ] Checking for system updates...
[2026-06-22 18:28:51,846.846 INFO    ] 200
[2026-06-22 18:28:51,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:28:51,904.904 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:28:51,907.907 INFO    ] No update needed
[2026-06-22 18:28:51,909.909 INFO    ] Checking for camera pi updates...
[2026-06-22 18:28:51,949.949 INFO    ] 200
[2026-06-22 18:28:51,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:28:51,995.995 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:28:52,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:28:52,055.055 INFO    ] No camera update needed
[2026-06-22 18:28:52,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:28:52,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:28:52,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:28:52,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:28:54,111.111 INFO    ] ================================================
[2026-06-22 18:28:54,126.126 INFO    ] Launching Daemon at Mon Jun 22 18:28:54 IST 2026
[2026-06-22 18:28:54,138.138 INFO    ] ================================================
[2026-06-22 18:28:54,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:28:54
[2026-06-22 18:28:55,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:28:55,633.633 INFO    ] Initializing speech engine...
[2026-06-22 18:28:55,647.647 INFO    ] 2026-06-22 18:28:55
[2026-06-22 18:28:55,959.959 INFO    ] 2026-06-22 18:28:55
[2026-06-22 18:28:56,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:28:56,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:28:56,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:28:56,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:28:56,470.470 INFO    ] time= 22/06/2026 18:28:56
[2026-06-22 18:28:56,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:28:56,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:28:56,665.665 INFO    ] No existing commands found in stream
[2026-06-22 18:29:01,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:29:01,692.692 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-22 18:29:04,693.693 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:29:04,696.696 INFO    ] Checking for system updates...
[2026-06-22 18:29:04,732.732 INFO    ] 200
[2026-06-22 18:29:04,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:29:04,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:29:04,789.789 INFO    ] No update needed
[2026-06-22 18:29:04,792.792 INFO    ] Checking for camera pi updates...
[2026-06-22 18:29:04,826.826 INFO    ] 200
[2026-06-22 18:29:04,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:29:04,869.869 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:29:04,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:29:04,954.954 INFO    ] No camera update needed
[2026-06-22 18:29:04,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:29:04,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:29:04,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:29:04,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:29:07,011.011 INFO    ] ================================================
[2026-06-22 18:29:07,026.026 INFO    ] Launching Daemon at Mon Jun 22 18:29:07 IST 2026
[2026-06-22 18:29:07,037.037 INFO    ] ================================================
[2026-06-22 18:29:07,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:29:07
[2026-06-22 18:29:08,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:29:08,478.478 INFO    ] Initializing speech engine...
[2026-06-22 18:29:08,487.487 INFO    ] 2026-06-22 18:29:08
[2026-06-22 18:29:08,736.736 INFO    ] 2026-06-22 18:29:08
[2026-06-22 18:29:08,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:29:09,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:29:09,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:29:09,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:29:09,286.286 INFO    ] time= 22/06/2026 18:29:09
[2026-06-22 18:29:09,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:29:09,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:29:09,604.604 INFO    ] No existing commands found in stream
[2026-06-22 18:29:14,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:29:14,656.656 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-22 18:29:18,962.962 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:29:18,964.964 INFO    ] Checking for system updates...
[2026-06-22 18:29:18,985.985 INFO    ] 200
[2026-06-22 18:29:18,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:29:19,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:29:19,030.030 INFO    ] No update needed
[2026-06-22 18:29:19,032.032 INFO    ] Checking for camera pi updates...
[2026-06-22 18:29:19,066.066 INFO    ] 200
[2026-06-22 18:29:19,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:29:19,113.113 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:29:19,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:29:19,167.167 INFO    ] No camera update needed
[2026-06-22 18:29:19,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:29:19,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:29:19,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:29:19,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:29:21,225.225 INFO    ] ================================================
[2026-06-22 18:29:21,240.240 INFO    ] Launching Daemon at Mon Jun 22 18:29:21 IST 2026
[2026-06-22 18:29:21,251.251 INFO    ] ================================================
[2026-06-22 18:29:21,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:29:21
[2026-06-22 18:29:22,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:29:22,621.621 INFO    ] Initializing speech engine...
[2026-06-22 18:29:22,630.630 INFO    ] 2026-06-22 18:29:22
[2026-06-22 18:29:22,888.888 INFO    ] 2026-06-22 18:29:22
[2026-06-22 18:29:22,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:29:23,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:29:23,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:29:23,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:29:23,477.477 INFO    ] time= 22/06/2026 18:29:23
[2026-06-22 18:29:23,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:29:23,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:29:23,645.645 INFO    ] No existing commands found in stream
[2026-06-22 18:29:28,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:29:28,668.668 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-22 18:29:29,702.702 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 18:29:29,704.704 INFO    ] Checking for system updates...
[2026-06-22 18:29:29,725.725 INFO    ] 200
[2026-06-22 18:29:29,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:29:29,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:29:29,760.760 INFO    ] No update needed
[2026-06-22 18:29:29,761.761 INFO    ] Checking for camera pi updates...
[2026-06-22 18:29:29,782.782 INFO    ] 200
[2026-06-22 18:29:29,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:29:29,817.817 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:29:29,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:29:29,908.908 INFO    ] No camera update needed
[2026-06-22 18:29:29,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:29:29,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:29:29,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:29:29,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:29:31,967.967 INFO    ] ================================================
[2026-06-22 18:29:31,983.983 INFO    ] Launching Daemon at Mon Jun 22 18:29:31 IST 2026
[2026-06-22 18:29:32,995.995 INFO    ] ================================================
[2026-06-22 18:29:32,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:29:32
[2026-06-22 18:29:33,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:29:33,460.460 INFO    ] Initializing speech engine...
[2026-06-22 18:29:33,469.469 INFO    ] 2026-06-22 18:29:33
[2026-06-22 18:29:33,762.762 INFO    ] 2026-06-22 18:29:33
[2026-06-22 18:29:33,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:29:34,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:29:34,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:29:34,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:29:34,178.178 INFO    ] time= 22/06/2026 18:29:34
[2026-06-22 18:29:34,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:29:34,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:29:34,309.309 INFO    ] No existing commands found in stream
[2026-06-22 18:29:39,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:29:39,337.337 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-22 18:29:39,901.901 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:29:39,902.902 INFO    ] Checking for system updates...
[2026-06-22 18:29:39,923.923 INFO    ] 200
[2026-06-22 18:29:39,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:29:39,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:29:39,956.956 INFO    ] No update needed
[2026-06-22 18:29:39,957.957 INFO    ] Checking for camera pi updates...
[2026-06-22 18:29:39,976.976 INFO    ] 200
[2026-06-22 18:29:39,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:29:40,010.010 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:29:40,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:29:40,194.194 INFO    ] No camera update needed
[2026-06-22 18:29:40,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:29:40,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:29:40,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:29:40,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:29:42,249.249 INFO    ] ================================================
[2026-06-22 18:29:42,268.268 INFO    ] Launching Daemon at Mon Jun 22 18:29:42 IST 2026
[2026-06-22 18:29:42,279.279 INFO    ] ================================================
[2026-06-22 18:29:42,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:29:42
[2026-06-22 18:29:43,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:29:43,609.609 INFO    ] Initializing speech engine...
[2026-06-22 18:29:43,618.618 INFO    ] 2026-06-22 18:29:43
[2026-06-22 18:29:43,869.869 INFO    ] 2026-06-22 18:29:43
[2026-06-22 18:29:43,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:29:44,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:29:44,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:29:44,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:29:44,246.246 INFO    ] time= 22/06/2026 18:29:44
[2026-06-22 18:29:44,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:29:44,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:29:44,443.443 INFO    ] No existing commands found in stream
[2026-06-22 18:29:49,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:29:49,461.461 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-22 18:29:51,233.233 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 18:29:51,236.236 INFO    ] Checking for system updates...
[2026-06-22 18:29:51,273.273 INFO    ] 200
[2026-06-22 18:29:51,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:29:51,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:29:51,330.330 INFO    ] No update needed
[2026-06-22 18:29:51,333.333 INFO    ] Checking for camera pi updates...
[2026-06-22 18:29:51,369.369 INFO    ] 200
[2026-06-22 18:29:51,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:29:51,415.415 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:29:51,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:29:51,496.496 INFO    ] No camera update needed
[2026-06-22 18:29:51,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:29:51,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:29:51,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:29:51,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:29:53,555.555 INFO    ] ================================================
[2026-06-22 18:29:53,570.570 INFO    ] Launching Daemon at Mon Jun 22 18:29:53 IST 2026
[2026-06-22 18:29:53,581.581 INFO    ] ================================================
[2026-06-22 18:29:54,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:29:54
[2026-06-22 18:29:54,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:29:54,911.911 INFO    ] Initializing speech engine...
[2026-06-22 18:29:54,923.923 INFO    ] 2026-06-22 18:29:54
[2026-06-22 18:29:55,175.175 INFO    ] 2026-06-22 18:29:55
[2026-06-22 18:29:55,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:29:55,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:29:55,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:29:55,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:29:55,635.635 INFO    ] time= 22/06/2026 18:29:55
[2026-06-22 18:29:55,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:29:55,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:29:55,872.872 INFO    ] No existing commands found in stream
[2026-06-22 18:30:00,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:30:00,905.905 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-22 18:30:03,078.078 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:30:03,082.082 INFO    ] Checking for system updates...
[2026-06-22 18:30:03,141.141 INFO    ] 200
[2026-06-22 18:30:03,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:30:03,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:30:03,216.216 INFO    ] No update needed
[2026-06-22 18:30:03,220.220 INFO    ] Checking for camera pi updates...
[2026-06-22 18:30:03,271.271 INFO    ] 200
[2026-06-22 18:30:03,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:30:03,335.335 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:30:03,388.388 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:30:03,392.392 INFO    ] No camera update needed
[2026-06-22 18:30:03,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:30:03,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:30:03,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:30:03,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:30:05,453.453 INFO    ] ================================================
[2026-06-22 18:30:05,469.469 INFO    ] Launching Daemon at Mon Jun 22 18:30:05 IST 2026
[2026-06-22 18:30:05,480.480 INFO    ] ================================================
[2026-06-22 18:30:06,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:30:06
[2026-06-22 18:30:06,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:30:07,028.028 INFO    ] Initializing speech engine...
[2026-06-22 18:30:07,037.037 INFO    ] 2026-06-22 18:30:07
[2026-06-22 18:30:07,310.310 INFO    ] 2026-06-22 18:30:07
[2026-06-22 18:30:07,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:30:07,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:30:07,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:30:07,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:30:07,682.682 INFO    ] time= 22/06/2026 18:30:07
[2026-06-22 18:30:07,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:30:07,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:30:07,806.806 INFO    ] No existing commands found in stream
[2026-06-22 18:30:12,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:30:12,823.823 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-22 18:30:13,718.718 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:30:13,720.720 INFO    ] Checking for system updates...
[2026-06-22 18:30:13,758.758 INFO    ] 200
[2026-06-22 18:30:13,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:30:13,815.815 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:30:13,817.817 INFO    ] No update needed
[2026-06-22 18:30:13,820.820 INFO    ] Checking for camera pi updates...
[2026-06-22 18:30:13,854.854 INFO    ] 200
[2026-06-22 18:30:13,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:30:13,902.902 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:30:13,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:30:13,963.963 INFO    ] No camera update needed
[2026-06-22 18:30:13,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:30:13,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:30:13,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:30:13,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:30:16,021.021 INFO    ] ================================================
[2026-06-22 18:30:16,036.036 INFO    ] Launching Daemon at Mon Jun 22 18:30:16 IST 2026
[2026-06-22 18:30:16,048.048 INFO    ] ================================================
[2026-06-22 18:30:16,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:30:16
[2026-06-22 18:30:17,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:30:17,555.555 INFO    ] Initializing speech engine...
[2026-06-22 18:30:17,570.570 INFO    ] 2026-06-22 18:30:17
[2026-06-22 18:30:17,878.878 INFO    ] 2026-06-22 18:30:17
[2026-06-22 18:30:17,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:30:20,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:30:20,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:30:21,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:30:21,147.147 INFO    ] time= 22/06/2026 18:30:21
[2026-06-22 18:30:21,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:30:21,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:30:21,212.212 INFO    ] No existing commands found in stream
[2026-06-22 18:30:26,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:30:26,226.226 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-22 18:30:30,555.555 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:30:30,558.558 INFO    ] Checking for system updates...
[2026-06-22 18:30:30,598.598 INFO    ] 200
[2026-06-22 18:30:30,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:30:30,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:30:30,657.657 INFO    ] No update needed
[2026-06-22 18:30:30,660.660 INFO    ] Checking for camera pi updates...
[2026-06-22 18:30:30,696.696 INFO    ] 200
[2026-06-22 18:30:30,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:30:30,745.745 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:30:30,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:30:30,836.836 INFO    ] No camera update needed
[2026-06-22 18:30:30,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:30:30,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:30:30,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:30:30,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:30:32,899.899 INFO    ] ================================================
[2026-06-22 18:30:32,916.916 INFO    ] Launching Daemon at Mon Jun 22 18:30:32 IST 2026
[2026-06-22 18:30:32,928.928 INFO    ] ================================================
[2026-06-22 18:30:33,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:30:33
[2026-06-22 18:30:34,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:30:34,386.386 INFO    ] Initializing speech engine...
[2026-06-22 18:30:34,402.402 INFO    ] 2026-06-22 18:30:34
[2026-06-22 18:30:34,687.687 INFO    ] 2026-06-22 18:30:34
[2026-06-22 18:30:34,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:30:35,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:30:35,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:30:35,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:30:35,205.205 INFO    ] time= 22/06/2026 18:30:35
[2026-06-22 18:30:35,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:30:35,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:30:35,397.397 INFO    ] No existing commands found in stream
[2026-06-22 18:30:40,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:30:40,412.412 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-22 18:30:42,378.378 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:30:42,379.379 INFO    ] Checking for system updates...
[2026-06-22 18:30:42,404.404 INFO    ] 200
[2026-06-22 18:30:42,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:30:42,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:30:42,437.437 INFO    ] No update needed
[2026-06-22 18:30:42,438.438 INFO    ] Checking for camera pi updates...
[2026-06-22 18:30:42,461.461 INFO    ] 200
[2026-06-22 18:30:42,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:30:42,504.504 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:30:42,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:30:42,584.584 INFO    ] No camera update needed
[2026-06-22 18:30:42,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:30:42,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:30:42,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:30:42,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:30:44,640.640 INFO    ] ================================================
[2026-06-22 18:30:44,657.657 INFO    ] Launching Daemon at Mon Jun 22 18:30:44 IST 2026
[2026-06-22 18:30:44,667.667 INFO    ] ================================================
[2026-06-22 18:30:45,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:30:45
[2026-06-22 18:30:45,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:30:46,100.100 INFO    ] Initializing speech engine...
[2026-06-22 18:30:46,113.113 INFO    ] 2026-06-22 18:30:46
[2026-06-22 18:30:46,359.359 INFO    ] 2026-06-22 18:30:46
[2026-06-22 18:30:46,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:30:46,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:30:46,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:30:46,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:30:46,940.940 INFO    ] time= 22/06/2026 18:30:46
[2026-06-22 18:30:46,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:30:47,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:30:47,090.090 INFO    ] No existing commands found in stream
[2026-06-22 18:30:52,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:30:52,105.105 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-22 18:30:53,413.413 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:30:53,416.416 INFO    ] Checking for system updates...
[2026-06-22 18:30:53,456.456 INFO    ] 200
[2026-06-22 18:30:53,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:30:53,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:30:53,522.522 INFO    ] No update needed
[2026-06-22 18:30:53,525.525 INFO    ] Checking for camera pi updates...
[2026-06-22 18:30:53,559.559 INFO    ] 200
[2026-06-22 18:30:53,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:30:53,605.605 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:30:53,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:30:53,693.693 INFO    ] No camera update needed
[2026-06-22 18:30:53,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:30:53,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:30:53,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:30:53,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:30:55,752.752 INFO    ] ================================================
[2026-06-22 18:30:55,769.769 INFO    ] Launching Daemon at Mon Jun 22 18:30:55 IST 2026
[2026-06-22 18:30:55,781.781 INFO    ] ================================================
[2026-06-22 18:30:56,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:30:56
[2026-06-22 18:30:57,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:30:57,453.453 INFO    ] Initializing speech engine...
[2026-06-22 18:30:57,462.462 INFO    ] 2026-06-22 18:30:57
[2026-06-22 18:30:57,763.763 INFO    ] 2026-06-22 18:30:57
[2026-06-22 18:30:57,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:30:58,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:30:58,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:30:58,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:30:58,312.312 INFO    ] time= 22/06/2026 18:30:58
[2026-06-22 18:30:58,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:30:58,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:30:58,489.489 INFO    ] No existing commands found in stream
[2026-06-22 18:31:03,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:31:03,525.525 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-22 18:31:05,416.416 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:31:05,419.419 INFO    ] Checking for system updates...
[2026-06-22 18:31:05,457.457 INFO    ] 200
[2026-06-22 18:31:05,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:31:05,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:31:05,517.517 INFO    ] No update needed
[2026-06-22 18:31:05,520.520 INFO    ] Checking for camera pi updates...
[2026-06-22 18:31:05,553.553 INFO    ] 200
[2026-06-22 18:31:05,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:31:05,597.597 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:31:05,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:31:05,681.681 INFO    ] No camera update needed
[2026-06-22 18:31:05,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:31:05,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:31:05,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:31:05,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:31:07,738.738 INFO    ] ================================================
[2026-06-22 18:31:07,753.753 INFO    ] Launching Daemon at Mon Jun 22 18:31:07 IST 2026
[2026-06-22 18:31:07,763.763 INFO    ] ================================================
[2026-06-22 18:31:08,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:31:08
[2026-06-22 18:31:08,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:31:09,239.239 INFO    ] Initializing speech engine...
[2026-06-22 18:31:09,263.263 INFO    ] 2026-06-22 18:31:09
[2026-06-22 18:31:09,515.515 INFO    ] 2026-06-22 18:31:09
[2026-06-22 18:31:09,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:31:09,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:31:09,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:31:09,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:31:09,927.927 INFO    ] time= 22/06/2026 18:31:09
[2026-06-22 18:31:09,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:31:10,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:31:10,158.158 INFO    ] No existing commands found in stream
[2026-06-22 18:31:15,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:31:15,180.180 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-22 18:31:16,256.256 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:31:16,258.258 INFO    ] Checking for system updates...
[2026-06-22 18:31:16,295.295 INFO    ] 200
[2026-06-22 18:31:16,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:31:16,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:31:16,354.354 INFO    ] No update needed
[2026-06-22 18:31:16,357.357 INFO    ] Checking for camera pi updates...
[2026-06-22 18:31:16,392.392 INFO    ] 200
[2026-06-22 18:31:16,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:31:16,446.446 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:31:16,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:31:16,541.541 INFO    ] No camera update needed
[2026-06-22 18:31:16,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:31:16,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:31:16,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:31:16,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:31:18,592.592 INFO    ] ================================================
[2026-06-22 18:31:18,607.607 INFO    ] Launching Daemon at Mon Jun 22 18:31:18 IST 2026
[2026-06-22 18:31:18,618.618 INFO    ] ================================================
[2026-06-22 18:31:19,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:31:19
[2026-06-22 18:31:19,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:31:20,077.077 INFO    ] Initializing speech engine...
[2026-06-22 18:31:20,099.099 INFO    ] 2026-06-22 18:31:20
[2026-06-22 18:31:20,369.369 INFO    ] 2026-06-22 18:31:20
[2026-06-22 18:31:20,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:31:22,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:31:22,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:31:23,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:31:23,133.133 INFO    ] time= 22/06/2026 18:31:23
[2026-06-22 18:31:23,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:31:23,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:31:23,247.247 INFO    ] No existing commands found in stream
[2026-06-22 18:31:28,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:31:28,259.259 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-22 18:31:28,767.767 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:31:28,768.768 INFO    ] Checking for system updates...
[2026-06-22 18:31:28,790.790 INFO    ] 200
[2026-06-22 18:31:28,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:31:28,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:31:28,823.823 INFO    ] No update needed
[2026-06-22 18:31:28,824.824 INFO    ] Checking for camera pi updates...
[2026-06-22 18:31:28,844.844 INFO    ] 200
[2026-06-22 18:31:28,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:31:28,870.870 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:31:28,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:31:28,929.929 INFO    ] No camera update needed
[2026-06-22 18:31:28,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:31:28,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:31:28,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:31:28,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:31:30,985.985 INFO    ] ================================================
[2026-06-22 18:31:31,000.000 INFO    ] Launching Daemon at Mon Jun 22 18:31:30 IST 2026
[2026-06-22 18:31:31,011.011 INFO    ] ================================================
[2026-06-22 18:31:31,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:31:31
[2026-06-22 18:31:32,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:31:32,567.567 INFO    ] Initializing speech engine...
[2026-06-22 18:31:32,588.588 INFO    ] 2026-06-22 18:31:32
[2026-06-22 18:31:32,874.874 INFO    ] 2026-06-22 18:31:32
[2026-06-22 18:31:32,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:31:33,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:31:33,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:31:33,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:31:33,277.277 INFO    ] time= 22/06/2026 18:31:33
[2026-06-22 18:31:33,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:31:33,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:31:33,389.389 INFO    ] No existing commands found in stream
[2026-06-22 18:31:38,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:31:38,408.408 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-22 18:31:39,233.233 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:31:39,235.235 INFO    ] Checking for system updates...
[2026-06-22 18:31:39,272.272 INFO    ] 200
[2026-06-22 18:31:39,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:31:39,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:31:39,330.330 INFO    ] No update needed
[2026-06-22 18:31:39,333.333 INFO    ] Checking for camera pi updates...
[2026-06-22 18:31:39,367.367 INFO    ] 200
[2026-06-22 18:31:39,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:31:39,410.410 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:31:39,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:31:39,464.464 INFO    ] No camera update needed
[2026-06-22 18:31:39,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:31:39,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:31:39,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:31:39,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:31:41,519.519 INFO    ] ================================================
[2026-06-22 18:31:41,533.533 INFO    ] Launching Daemon at Mon Jun 22 18:31:41 IST 2026
[2026-06-22 18:31:41,544.544 INFO    ] ================================================
[2026-06-22 18:31:42,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:31:42
[2026-06-22 18:31:42,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:31:43,019.019 INFO    ] Initializing speech engine...
[2026-06-22 18:31:43,032.032 INFO    ] 2026-06-22 18:31:43
[2026-06-22 18:31:43,307.307 INFO    ] 2026-06-22 18:31:43
[2026-06-22 18:31:43,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:31:43,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:31:43,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:31:43,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:31:43,729.729 INFO    ] time= 22/06/2026 18:31:43
[2026-06-22 18:31:43,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:31:43,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:31:43,809.809 INFO    ] No existing commands found in stream
[2026-06-22 18:31:48,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:31:48,847.847 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-22 18:31:51,867.867 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:31:51,869.869 INFO    ] Checking for system updates...
[2026-06-22 18:31:51,906.906 INFO    ] 200
[2026-06-22 18:31:51,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:31:51,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:31:51,966.966 INFO    ] No update needed
[2026-06-22 18:31:51,968.968 INFO    ] Checking for camera pi updates...
[2026-06-22 18:31:52,006.006 INFO    ] 200
[2026-06-22 18:31:52,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:31:52,055.055 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:31:52,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:31:52,242.242 INFO    ] No camera update needed
[2026-06-22 18:31:52,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:31:52,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:31:52,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:31:52,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:31:54,299.299 INFO    ] ================================================
[2026-06-22 18:31:54,315.315 INFO    ] Launching Daemon at Mon Jun 22 18:31:54 IST 2026
[2026-06-22 18:31:54,325.325 INFO    ] ================================================
[2026-06-22 18:31:54,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:31:54
[2026-06-22 18:31:55,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:31:55,747.747 INFO    ] Initializing speech engine...
[2026-06-22 18:31:55,753.753 INFO    ] 2026-06-22 18:31:55
[2026-06-22 18:31:56,029.029 INFO    ] 2026-06-22 18:31:56
[2026-06-22 18:31:56,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:31:56,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:31:56,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:31:56,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:31:56,472.472 INFO    ] time= 22/06/2026 18:31:56
[2026-06-22 18:31:56,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:31:56,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:31:56,658.658 INFO    ] No existing commands found in stream
[2026-06-22 18:32:01,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:32:01,692.692 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-22 18:32:03,661.661 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:32:03,664.664 INFO    ] Checking for system updates...
[2026-06-22 18:32:03,701.701 INFO    ] 200
[2026-06-22 18:32:03,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:32:03,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:32:03,758.758 INFO    ] No update needed
[2026-06-22 18:32:03,760.760 INFO    ] Checking for camera pi updates...
[2026-06-22 18:32:03,795.795 INFO    ] 200
[2026-06-22 18:32:03,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:32:03,839.839 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:32:03,922.922 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:32:03,925.925 INFO    ] No camera update needed
[2026-06-22 18:32:03,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:32:03,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:32:03,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:32:03,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:32:05,984.984 INFO    ] ================================================
[2026-06-22 18:32:06,003.003 INFO    ] Launching Daemon at Mon Jun 22 18:32:05 IST 2026
[2026-06-22 18:32:06,014.014 INFO    ] ================================================
[2026-06-22 18:32:06,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:32:06
[2026-06-22 18:32:07,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:32:07,445.445 INFO    ] Initializing speech engine...
[2026-06-22 18:32:07,454.454 INFO    ] 2026-06-22 18:32:07
[2026-06-22 18:32:07,739.739 INFO    ] 2026-06-22 18:32:07
[2026-06-22 18:32:07,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:32:07,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:32:07,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:32:08,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:32:08,134.134 INFO    ] time= 22/06/2026 18:32:08
[2026-06-22 18:32:08,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:32:08,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:32:08,387.387 INFO    ] No existing commands found in stream
[2026-06-22 18:32:13,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:32:13,401.401 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-22 18:32:17,410.410 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:32:17,413.413 INFO    ] Checking for system updates...
[2026-06-22 18:32:17,458.458 INFO    ] 200
[2026-06-22 18:32:17,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:32:17,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:32:17,516.516 INFO    ] No update needed
[2026-06-22 18:32:17,518.518 INFO    ] Checking for camera pi updates...
[2026-06-22 18:32:17,554.554 INFO    ] 200
[2026-06-22 18:32:17,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:32:17,597.597 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:32:17,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:32:17,689.689 INFO    ] No camera update needed
[2026-06-22 18:32:17,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:32:17,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:32:17,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:32:17,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:32:19,745.745 INFO    ] ================================================
[2026-06-22 18:32:19,760.760 INFO    ] Launching Daemon at Mon Jun 22 18:32:19 IST 2026
[2026-06-22 18:32:19,770.770 INFO    ] ================================================
[2026-06-22 18:32:20,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:32:20
[2026-06-22 18:32:21,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:32:21,328.328 INFO    ] Initializing speech engine...
[2026-06-22 18:32:21,338.338 INFO    ] 2026-06-22 18:32:21
[2026-06-22 18:32:21,607.607 INFO    ] 2026-06-22 18:32:21
[2026-06-22 18:32:21,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:32:23,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:32:23,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:32:24,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:32:24,265.265 INFO    ] time= 22/06/2026 18:32:24
[2026-06-22 18:32:24,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:32:24,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:32:24,405.405 INFO    ] No existing commands found in stream
[2026-06-22 18:32:29,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:32:29,443.443 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-22 18:32:31,585.585 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:32:31,588.588 INFO    ] Checking for system updates...
[2026-06-22 18:32:31,626.626 INFO    ] 200
[2026-06-22 18:32:31,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:32:31,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:32:31,698.698 INFO    ] No update needed
[2026-06-22 18:32:31,701.701 INFO    ] Checking for camera pi updates...
[2026-06-22 18:32:31,741.741 INFO    ] 200
[2026-06-22 18:32:31,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:32:31,796.796 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:32:31,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:32:31,865.865 INFO    ] No camera update needed
[2026-06-22 18:32:31,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:32:31,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:32:31,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:32:31,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:32:33,924.924 INFO    ] ================================================
[2026-06-22 18:32:33,939.939 INFO    ] Launching Daemon at Mon Jun 22 18:32:33 IST 2026
[2026-06-22 18:32:33,950.950 INFO    ] ================================================
[2026-06-22 18:32:34,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:32:34
[2026-06-22 18:32:35,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:32:35,319.319 INFO    ] Initializing speech engine...
[2026-06-22 18:32:35,327.327 INFO    ] 2026-06-22 18:32:35
[2026-06-22 18:32:35,589.589 INFO    ] 2026-06-22 18:32:35
[2026-06-22 18:32:35,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:32:35,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:32:35,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:32:36,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:32:36,045.045 INFO    ] time= 22/06/2026 18:32:36
[2026-06-22 18:32:36,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:32:36,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:32:36,201.201 INFO    ] No existing commands found in stream
[2026-06-22 18:32:41,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:32:41,224.224 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-22 18:32:44,100.100 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:32:44,103.103 INFO    ] Checking for system updates...
[2026-06-22 18:32:44,139.139 INFO    ] 200
[2026-06-22 18:32:44,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:32:44,194.194 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:32:44,197.197 INFO    ] No update needed
[2026-06-22 18:32:44,199.199 INFO    ] Checking for camera pi updates...
[2026-06-22 18:32:44,233.233 INFO    ] 200
[2026-06-22 18:32:44,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:32:44,277.277 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:32:44,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:32:44,359.359 INFO    ] No camera update needed
[2026-06-22 18:32:44,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:32:44,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:32:44,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:32:44,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:32:46,419.419 INFO    ] ================================================
[2026-06-22 18:32:46,434.434 INFO    ] Launching Daemon at Mon Jun 22 18:32:46 IST 2026
[2026-06-22 18:32:46,445.445 INFO    ] ================================================
[2026-06-22 18:32:47,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:32:47
[2026-06-22 18:32:47,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:32:47,818.818 INFO    ] Initializing speech engine...
[2026-06-22 18:32:47,827.827 INFO    ] 2026-06-22 18:32:47
[2026-06-22 18:32:48,087.087 INFO    ] 2026-06-22 18:32:48
[2026-06-22 18:32:48,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:32:48,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:32:48,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:32:48,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:32:48,570.570 INFO    ] time= 22/06/2026 18:32:48
[2026-06-22 18:32:48,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:32:48,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:32:48,773.773 INFO    ] No existing commands found in stream
[2026-06-22 18:32:53,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:32:53,806.806 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-22 18:32:56,073.073 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:32:56,075.075 INFO    ] Checking for system updates...
[2026-06-22 18:32:56,111.111 INFO    ] 200
[2026-06-22 18:32:56,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:32:56,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:32:56,175.175 INFO    ] No update needed
[2026-06-22 18:32:56,178.178 INFO    ] Checking for camera pi updates...
[2026-06-22 18:32:56,211.211 INFO    ] 200
[2026-06-22 18:32:56,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:32:56,258.258 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:32:56,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:32:56,337.337 INFO    ] No camera update needed
[2026-06-22 18:32:56,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:32:56,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:32:56,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:32:56,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:32:58,394.394 INFO    ] ================================================
[2026-06-22 18:32:58,409.409 INFO    ] Launching Daemon at Mon Jun 22 18:32:58 IST 2026
[2026-06-22 18:32:58,420.420 INFO    ] ================================================
[2026-06-22 18:32:59,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:32:59
[2026-06-22 18:32:59,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:32:59,913.913 INFO    ] Initializing speech engine...
[2026-06-22 18:32:59,921.921 INFO    ] 2026-06-22 18:32:59
[2026-06-22 18:33:00,212.212 INFO    ] 2026-06-22 18:33:00
[2026-06-22 18:33:00,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:33:00,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:33:00,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:33:00,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:33:00,695.695 INFO    ] time= 22/06/2026 18:33:00
[2026-06-22 18:33:00,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:33:00,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:33:00,854.854 INFO    ] No existing commands found in stream
[2026-06-22 18:33:05,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:33:05,873.873 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-22 18:33:06,719.719 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:33:06,721.721 INFO    ] Checking for system updates...
[2026-06-22 18:33:06,762.762 INFO    ] 200
[2026-06-22 18:33:06,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:33:06,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:33:06,827.827 INFO    ] No update needed
[2026-06-22 18:33:06,830.830 INFO    ] Checking for camera pi updates...
[2026-06-22 18:33:06,867.867 INFO    ] 200
[2026-06-22 18:33:06,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:33:06,916.916 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:33:06,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:33:06,970.970 INFO    ] No camera update needed
[2026-06-22 18:33:06,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:33:06,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:33:06,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:33:06,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:33:09,028.028 INFO    ] ================================================
[2026-06-22 18:33:09,043.043 INFO    ] Launching Daemon at Mon Jun 22 18:33:09 IST 2026
[2026-06-22 18:33:09,054.054 INFO    ] ================================================
[2026-06-22 18:33:09,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:33:09
[2026-06-22 18:33:10,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:33:10,393.393 INFO    ] Initializing speech engine...
[2026-06-22 18:33:10,407.407 INFO    ] 2026-06-22 18:33:10
[2026-06-22 18:33:10,686.686 INFO    ] 2026-06-22 18:33:10
[2026-06-22 18:33:10,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:33:10,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:33:10,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:33:11,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:33:11,124.124 INFO    ] time= 22/06/2026 18:33:11
[2026-06-22 18:33:11,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:33:11,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:33:11,329.329 INFO    ] No existing commands found in stream
[2026-06-22 18:33:14,727.727 INFO    ] Received new command: ID=1782133394410-0
[2026-06-22 18:33:14,730.730 INFO    ] process_and_cleanup_command: msg_id=1782133394410-0
[2026-06-22 18:33:14,732.732 INFO    ] is_command_expired: timestamp=2026-06-22T13:03:13.822Z, expiry=30s
[2026-06-22 18:33:14,807.807 INFO    ] Command removed from stream: 1782133394410-0. returning for processing...
[2026-06-22 18:33:14,809.809 INFO    ] ***** get_valid_command
[2026-06-22 18:33:14,812.812 INFO    ] {'source': 'webapp', 'timestamp': '2026-06-22T13:03:13.822Z', 'command': 'start-order', 'timeout': '10', 'data': '{"request_id":"start-order-1782133393822-oo16jlhdu","orderId":"TM06202507260622183233758","is_vending":false}'}
[2026-06-22 18:33:14,814.814 INFO    ] ***** Parsed command data: {'orderId': 'TM06202507260622183233758', 'is_vending': False, 'request_id': 'start-order-1782133393822-oo16jlhdu'}
[2026-06-22 18:33:14,817.817 INFO    ] Handling start order...
[2026-06-22 18:33:14,819.819 INFO    ] handle_start_order_command
[2026-06-22 18:33:14,825.825 INFO    ] _send_start_order_success: request_id=start-order-1782133393822-oo16jlhdu, order_id=TM06202507260622183233758
[2026-06-22 18:33:14,827.827 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM06202507
[2026-06-22 18:33:14,904.904 INFO    ] [_send_start_order_success] Message added to stream with ID: 1782133394828-0
[2026-06-22 18:33:14,907.907 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-22 18:33:14,909.909 INFO    ] Checking for system updates...
[2026-06-22 18:33:14,950.950 INFO    ] 200
[2026-06-22 18:33:14,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:33:15,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:33:15,013.013 INFO    ] No update needed
[2026-06-22 18:33:15,015.015 INFO    ] Checking for camera pi updates...
[2026-06-22 18:33:15,049.049 INFO    ] 200
[2026-06-22 18:33:15,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:33:15,092.092 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:33:15,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:33:15,200.200 INFO    ] No camera update needed
[2026-06-22 18:33:15,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:33:15,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:33:15,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:33:15,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:33:17,257.257 INFO    ] ================================================
[2026-06-22 18:33:17,272.272 INFO    ] Launching Daemon at Mon Jun 22 18:33:17 IST 2026
[2026-06-22 18:33:17,282.282 INFO    ] ================================================
[2026-06-22 18:33:17,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:33:17
[2026-06-22 18:33:18,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:33:18,725.725 INFO    ] Initializing speech engine...
[2026-06-22 18:33:18,730.730 INFO    ] 2026-06-22 18:33:18
[2026-06-22 18:33:18,980.980 INFO    ] 2026-06-22 18:33:18
[2026-06-22 18:33:19,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:33:19,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:33:19,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:33:19,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:33:19,466.466 INFO    ] time= 22/06/2026 18:33:19
[2026-06-22 18:33:19,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:33:19,542.542 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:33:19,662.662 INFO    ] Found 1 existing command(s) in stream
[2026-06-22 18:33:19,699.699 INFO    ] Checking historical command: ID=1782133394828-0
[2026-06-22 18:33:19,737.737 INFO    ] process_and_cleanup_command: msg_id=1782133394828-0
[2026-06-22 18:33:19,791.791 INFO    ] is_command_expired: timestamp=2026-06-22T13:03:14.826133Z, expiry=30s
[2026-06-22 18:33:19,949.949 INFO    ] Command removed from stream: 1782133394828-0. returning for processing...
[2026-06-22 18:33:19,985.985 INFO    ] ***** get_valid_command
[2026-06-22 18:33:20,029.029 INFO    ] {'timestamp': '2026-06-22T13:03:14.826133Z', 'metadata_request_id': 'start-order-1782133393822-oo16jlhdu', 'message': 'start-order success', 'message_type': 'command_response', 'metadata_order_id': 'TM06202507260622183233758', 'status': 'success', 'imei': 'TM06202507'}
[2026-06-22 18:33:20,033.033 INFO    ] Processed historical messages, no valid command available...
[2026-06-22 18:33:21,154.154 INFO    ] Received new command: ID=1782133400782-0
[2026-06-22 18:33:21,161.161 INFO    ] process_and_cleanup_command: msg_id=1782133400782-0
[2026-06-22 18:33:21,187.187 INFO    ] is_command_expired: timestamp=2026-06-22T13:03:20.284Z, expiry=30s
[2026-06-22 18:33:21,259.259 INFO    ] Command removed from stream: 1782133400782-0. returning for processing...
[2026-06-22 18:33:21,270.270 INFO    ] ***** get_valid_command
[2026-06-22 18:33:21,276.276 INFO    ] {'timestamp': '2026-06-22T13:03:20.284Z', 'source': 'webapp', 'data': '{"request_id":"process-order-1782133400284-sug7bo8or","orderId":"TM06202507260622183233758","is_vending":false,"accessCode":"14843890"}', 'command': 'process-order', 'timeout': '60'}
[2026-06-22 18:33:21,282.282 INFO    ] ***** Parsed command data: {'accessCode': '14843890', 'orderId': 'TM06202507260622183233758', 'is_vending': False, 'request_id': 'process-order-1782133400284-sug7bo8or'}
[2026-06-22 18:33:21,316.316 INFO    ] Handling process order...
[2026-06-22 18:33:21,326.326 INFO    ] Processing process-order command...
[2026-06-22 18:33:21,348.348 INFO    ] 🔍 Lock file Order ID: TM06202507260622183233758, TS: 2026-06-22 18:33:14
[2026-06-22 18:33:21,366.366 INFO    ] ✅ Order lock valid for TM06202507260622183233758
[2026-06-22 18:33:21,371.371 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-22 18:33:21,401.401 INFO    ] processing access code 14843890 for order TM06202507260622183233758
[2026-06-22 18:33:21,423.423 INFO    ] 🔍 Lock file Order ID: TM06202507260622183233758, TS: 2026-06-22 18:33:14
[2026-06-22 18:33:21,432.432 INFO    ] ✅ Order lock valid for TM06202507260622183233758
[2026-06-22 18:33:21,448.448 INFO    ] 2026-06-22 18:33:21
[2026-06-22 18:33:21,540.540 INFO    ] 200
[2026-06-22 18:33:21,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:33:21,578.578 INFO    ] 14843890
[2026-06-22 18:33:21,589.589 INFO    ] 2026-06-22 18:33:21
[2026-06-22 18:33:21,602.602 INFO    ] session id :288670328
[2026-06-22 18:33:21,615.615 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=14843890&imei=TM06202507&session_id=288670328
[2026-06-22 18:33:25,016.016 INFO    ] 200
[2026-06-22 18:33:25,019.019 INFO    ] {"data": {"mobile": "9686851413", "order_id": "TM06202507260622183233758", "access_code": "14843890", "bill_amount": "60", "proposed_sku_json": [{"tray_id": "36", "qty": 1, "mrp": "60", "door_id": "2", "name": "Aatral Natural Electrolytes 200ml", "sku_total": 60, "image_url": "https://images.tinymart.in/product/4500694-1219.png", "offer_desc": "", "unit_price": 60, "skuid": "4500694", "offer_id": ""}], "invoice_bill": "60"}, "msg": "Order Data", "status": true, "rstatus": true}
[2026-06-22 18:33:25,021.021 INFO    ] 60
[2026-06-22 18:33:25,024.024 INFO    ] TM06202507260622183233758
[2026-06-22 18:33:25,026.026 INFO    ] 9686851413
[2026-06-22 18:33:25,029.029 INFO    ] 2026-06-22 18:33:25
[2026-06-22 18:33:25,031.031 INFO    ] Door Opening for user mobile ending with  one four one three 
[2026-06-22 18:33:25,033.033 INFO    ] Door Opening for user mobile ending with  one four one three 
[2026-06-22 18:33:25,036.036 INFO    ] c0511c9c2c7b72a9ebfee4357254674f
[2026-06-22 18:33:25,038.038 INFO    ] 2026-06-22 18:33:25
[2026-06-22 18:33:25,044.044 INFO    ] playing audio file
[2026-06-22 18:33:25,062.062 INFO    ] 2026-06-22 18:33:25
[2026-06-22 18:33:25,066.066 INFO    ] 2026-06-22 18:33:25
[2026-06-22 18:33:25,070.070 INFO    ] publish_status: order_id=TM06202507260622183233758
[2026-06-22 18:33:25,073.073 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622183233758
[2026-06-22 18:33:25,173.173 INFO    ] [publish_status] Message added to stream with ID: 1782133405107-0
[2026-06-22 18:33:25,177.177 INFO    ] Published to order:TM06202507260622183233758: {'order_id': 'TM06202507260622183233758', 'timestamp': '2026-06-22T13:03:25.068021Z', 'server_response': '{"rstatus": true, "data": {"mobile": "9686851413", "access_code": "14843890", "bill_amount": "60", "order_id": "TM06202507260622183233758", "proposed_sku_json": [{"unit_price": 60, "offer_id": "", "mrp": "60", "sku_total": 60, "offer_desc": "", "name": "Aatral Natural Electrolytes 200ml", "qty": 1, "tray_id": "36", "image_url": "https://images.tinymart.in/product/4500694-1219.png", "door_id": "2", "skuid": "4500694"}], "invoice_bill": "60"}, "status": true, "msg": "Order Data"}', 'server_status': 'order-started'} (ID: 1782133405107-0)
[2026-06-22 18:33:25,688.688 INFO    ] {'order_id': 'TM06202507260622183233758', 'server_response': {'rstatus': True, 'data': {'mobile': '9686851413', 'access_code': '14843890', 'bill_amount': '60', 'order_id': 'TM06202507260622183233758', 'proposed_sku_json': [{'unit_price': 60, 'offer_id': '', 'mrp': '60', 'sku_total': 60, 'offer_desc': '', 'name': 'Aatral Natural Electrolytes 200ml', 'qty': 1, 'tray_id': '36', 'image_url': 'https://images.tinymart.in/product/4500694-1219.png', 'door_id': '2', 'skuid': '4500694'}], 'invoice_bill': '60'}, 'status': True, 'msg': 'Order Data'}, 'server_status': 'order-started'}
[2026-06-22 18:33:25,691.691 INFO    ] 200
[2026-06-22 18:33:25,694.694 INFO    ] {"data":{"order_id":"TM06202507260622183233758","server_response":{"rstatus":true,"data":{"mobile":"9686851413","access_code":"14843890","bill_amount":"60","order_id":"TM06202507260622183233758","proposed_sku_json":[{"unit_price":60,"offer_id":"","mrp":"60","sku_total":60,"offer_desc":"","name":"Aatral Natural Electrolytes 200ml","qty":1,"tray_id":"36","image_url":"https:\/\/images.tinymart.in\/product\/4500694-1219.png","door_id":"2","skuid":"4500694"}],"invoice_bill":"60"},"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-22 18:33:25,697.697 INFO    ] {'data': {'order_id': 'TM06202507260622183233758', 'server_response': {'status': True, 'data': {'mobile': '9686851413', 'access_code': '14843890', 'bill_amount': '60', 'order_id': 'TM06202507260622183233758', 'proposed_sku_json': [{'unit_price': 60, 'mrp': '60', 'sku_total': 60, 'name': 'Aatral Natural Electrolytes 200ml', 'offer_desc': '', 'qty': 1, 'tray_id': '36', 'image_url': 'https://images.tinymart.in/product/4500694-1219.png', 'door_id': '2', 'skuid': '4500694', 'offer_id': ''}], 'invoice_bill': '60'}, 'rstatus': True, 'msg': 'Order Data'}, 'server_status': 'order-started'}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-22 18:33:25,701.701 INFO    ] 2026-06-22 18:33:25
[2026-06-22 18:33:25,748.748 INFO    ] 200
[2026-06-22 18:33:25,751.751 INFO    ] True
[2026-06-22 18:33:25,906.906 INFO    ] 200
[2026-06-22 18:33:25,909.909 INFO    ] {"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": ""}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 18:33:25,912.912 INFO    ] {'SectionStatus': {'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'status': 'False', 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-22 18:33:25,915.915 INFO    ] *** process_order ***
[2026-06-22 18:33:27,093.093 INFO    ] 200
[2026-06-22 18:33:27,096.096 INFO    ] {"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": ""}, "rstatus": true, "delay": 0, "status": "True", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 18:33:27,098.098 INFO    ] {'SectionStatus': {'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}, 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'rstatus': True, 'delay': 0}
[2026-06-22 18:33:27,101.101 INFO    ] *** process_order ***
[2026-06-22 18:33:27,103.103 INFO    ] publish_status: order_id=TM06202507260622183233758
[2026-06-22 18:33:27,106.106 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622183233758
[2026-06-22 18:33:27,194.194 INFO    ] [publish_status] Message added to stream with ID: 1782133407117-0
[2026-06-22 18:33:27,197.197 INFO    ] Published to order:TM06202507260622183233758: {'order_id': 'TM06202507260622183233758', 'server_response': '{"SectionStatus": {"Note": "", "Header": " Your order is under process  ", "UI_Header": "", "SubHeader": "You can pull the door now."}, "voiceNote": "Door is open...", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True", "rstatus": true, "delay": 0, "SectionMain": {"Header": "Processing Order"}}', 'server_status': 'doorOpened'} (ID: 1782133407117-0)
[2026-06-22 18:33:28,273.273 INFO    ] 2026-06-22 18:33:28
[2026-06-22 18:33:28,276.276 INFO    ] publish_status: order_id=TM06202507260622183233758
[2026-06-22 18:33:28,279.279 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622183233758
[2026-06-22 18:33:28,342.342 INFO    ] [publish_status] Message added to stream with ID: 1782133408277-0
[2026-06-22 18:33:28,345.345 INFO    ] Published to order:TM06202507260622183233758: {'order_id': 'TM06202507260622183233758', 'timestamp': '2026-06-22T13:03:28.274885Z', 'server_response': '{"SectionStatus": {"Note": "", "Header": " Your order is under process  ", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionMain": {"Header": "Processing Order"}, "status": "True", "rstatus": true, "delay": 0}', 'server_status': 'processOrder'} (ID: 1782133408277-0)
[2026-06-22 18:33:28,472.472 INFO    ] {'order_id': 'TM06202507260622183233758', 'server_response': {'SectionStatus': {'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}, 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'rstatus': True, 'delay': 0}, 'server_status': 'processOrder'}
[2026-06-22 18:33:28,475.475 INFO    ] 200
[2026-06-22 18:33:28,477.477 INFO    ] {"data":{"order_id":"TM06202507260622183233758","server_response":{"SectionStatus":{"Note":"","Header":" Your order is under process  ","UI_Header":"","SubHeader":"Please wait while we process your order"},"voiceNote":"Please Wait","SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"SectionMain":{"Header":"Processing Order"},"status":"true","rstatus":true,"delay":0},"server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 18:33:28,480.480 INFO    ] {'data': {'order_id': 'TM06202507260622183233758', 'server_response': {'SectionStatus': {'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}, 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'true', 'rstatus': True, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}}, 'server_status': 'processOrder'}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-22 18:33:28,482.482 INFO    ] 2026-06-22 18:33:28
[2026-06-22 18:33:28,485.485 INFO    ] None
[2026-06-22 18:33:28,487.487 INFO    ] Opening Door now
[2026-06-22 18:33:28,490.490 INFO    ] Opening Door now
[2026-06-22 18:33:28,492.492 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-22 18:33:28,495.495 INFO    ] 2026-06-22 18:33:28
[2026-06-22 18:33:28,497.497 INFO    ] playing audio file
[2026-06-22 18:33:28,515.515 INFO    ] 2026-06-22 18:33:28
[2026-06-22 18:33:28,518.518 INFO    ] 2026-06-22 18:33:28
[2026-06-22 18:33:31,603.603 INFO    ] 200
[2026-06-22 18:33:31,606.606 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Aatral Natural Electrolytes 200ml"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Door 2 is open now"}
[2026-06-22 18:33:31,609.609 INFO    ] {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'status': 'False', 'voiceNote': 'Door 2 is open now', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml'}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-22 18:33:34,684.684 INFO    ] 200
[2026-06-22 18:33:34,687.687 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Aatral Natural Electrolytes 200ml"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2"}
[2026-06-22 18:33:34,690.690 INFO    ] {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml'}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-22 18:33:37,744.744 INFO    ] 200
[2026-06-22 18:33:37,746.746 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Aatral Natural Electrolytes 200ml"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2"}
[2026-06-22 18:33:37,749.749 INFO    ] Please close door 2
[2026-06-22 18:33:37,752.752 INFO    ] Please close door 2
[2026-06-22 18:33:37,755.755 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-22 18:33:37,758.758 INFO    ] 2026-06-22 18:33:37
[2026-06-22 18:33:37,760.760 INFO    ] playing audio file
[2026-06-22 18:33:37,779.779 INFO    ] 2026-06-22 18:33:37
[2026-06-22 18:33:37,782.782 INFO    ] publish_status: order_id=TM06202507260622183233758
[2026-06-22 18:33:37,785.785 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622183233758
[2026-06-22 18:33:37,852.852 INFO    ] [publish_status] Message added to stream with ID: 1782133417777-0
[2026-06-22 18:33:37,855.855 INFO    ] Published to order:TM06202507260622183233758: {'order_id': 'TM06202507260622183233758', 'timestamp': '2026-06-22T13:03:37.781046Z', 'server_response': '{"SectionStatus": {"Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "error": {"data": {}, "umessage": "In Progress", "tmessage": "In Progress", "code": 20001}, "status": "False", "voiceNote": "Please close door 2", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Aatral Natural Electrolytes 200ml"}]}, "rstatus": false, "SectionMain": {"Header": "Door Open"}}', 'server_status': 'OrderStatus'} (ID: 1782133417777-0)
[2026-06-22 18:33:38,471.471 INFO    ] {'order_id': 'TM06202507260622183233758', 'server_response': {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml'}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}
[2026-06-22 18:33:38,474.474 INFO    ] 200
[2026-06-22 18:33:38,477.477 INFO    ] {"data":{"order_id":"TM06202507260622183233758","server_response":{"SectionStatus":{"Note":"Please Close the door after picking up products","Header":"Please Close Door 2","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"error":{"data":[],"umessage":"In Progress","tmessage":"In Progress","code":20001},"status":"false","voiceNote":"Please close door 2","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Aatral Natural Electrolytes 200ml"}]},"rstatus":false,"SectionMain":{"Header":"Door Open"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 18:33:38,480.480 INFO    ] {'data': {'order_id': 'TM06202507260622183233758', 'server_response': {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'error': {'data': [], 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml'}]}, 'status': 'false', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-22 18:33:38,483.483 INFO    ] {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml'}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-22 18:33:41,541.541 INFO    ] 200
[2026-06-22 18:33:41,544.544 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Aatral Natural Electrolytes 200ml"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2"}
[2026-06-22 18:33:41,548.548 INFO    ] {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'status': 'False', 'voiceNote': 'Please close door 2', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml'}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-22 18:33:44,604.604 INFO    ] 200
[2026-06-22 18:33:44,607.607 INFO    ] {"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"}, "rstatus": true, "delay": 100, "status": "True", "SectionMain": {"Header": "Door Closed"}, "voiceNote": "Transaction Completed"}
[2026-06-22 18:33:44,610.610 INFO    ] {'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate'}, 'voiceNote': 'Transaction Completed', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'rstatus': True, 'delay': 100}
[2026-06-22 18:33:44,613.613 INFO    ] 2026-06-22 18:33:44
[2026-06-22 18:33:44,616.616 INFO    ] Order Completed 
[2026-06-22 18:33:44,618.618 INFO    ] Order Completed 
[2026-06-22 18:33:44,621.621 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-22 18:33:44,624.624 INFO    ] 2026-06-22 18:33:44
[2026-06-22 18:33:44,627.627 INFO    ] playing audio file
[2026-06-22 18:33:44,646.646 INFO    ] 2026-06-22 18:33:44
[2026-06-22 18:33:44,649.649 INFO    ] {'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate'}, 'voiceNote': 'Transaction Completed', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'rstatus': True, 'delay': 100}
[2026-06-22 18:33:44,652.652 INFO    ] 2026-06-22 18:33:44
[2026-06-22 18:33:46,078.078 INFO    ] 200
[2026-06-22 18:33:46,081.081 INFO    ] {"skus": [{"tray_id": "36", "qty": 1, "mrp": "60", "door_id": "", "name": "Aatral Natural Electrolytes 200ml per peice", "sku_total": 60.0, "image_url": "https://images.tinymart.in/product/4500694-1219.png", "unit_price": "60", "skuid": "4500694"}], "anomaly": 0, "rstatus": true, "orderId": "TM06202507260622183233758", "logic": "WBL", "total_amount": 60.0, "res": "True"}
[2026-06-22 18:33:46,084.084 INFO    ] {'res': 'True', 'logic': 'WBL', 'anomaly': 0, 'orderId': 'TM06202507260622183233758', 'rstatus': True, 'skus': [{'unit_price': '60', 'mrp': '60', 'sku_total': 60.0, 'skuid': '4500694', 'name': 'Aatral Natural Electrolytes 200ml per peice', 'qty': 1, 'tray_id': '36', 'image_url': 'https://images.tinymart.in/product/4500694-1219.png', 'door_id': ''}], 'total_amount': 60.0}
[2026-06-22 18:33:46,087.087 INFO    ] {'res': 'True', 'logic': 'WBL', 'anomaly': 0, 'orderId': 'TM06202507260622183233758', 'rstatus': True, 'skus': [{'unit_price': '60', 'mrp': '60', 'sku_total': 60.0, 'skuid': '4500694', 'name': 'Aatral Natural Electrolytes 200ml per peice', 'qty': 1, 'tray_id': '36', 'image_url': 'https://images.tinymart.in/product/4500694-1219.png', 'door_id': ''}], 'total_amount': 60.0}
[2026-06-22 18:33:46,089.089 INFO    ] 2026-06-22 18:33:46
[2026-06-22 18:33:46,093.093 INFO    ] 2026-06-22 18:33:46
[2026-06-22 18:33:46,096.096 INFO    ] 60
[2026-06-22 18:33:46,099.099 INFO    ] 2026-06-22 18:33:46
[2026-06-22 18:33:46,102.102 INFO    ] 2026-06-22 18:33:46
[2026-06-22 18:33:46,104.104 INFO    ]  Your Bill Amount is 60
[2026-06-22 18:33:46,107.107 INFO    ]  Your Bill Amount is 60
[2026-06-22 18:33:46,110.110 INFO    ] fd22fee3bf67fc8133a18db187f67cdf
[2026-06-22 18:33:46,113.113 INFO    ] 2026-06-22 18:33:46
[2026-06-22 18:33:46,116.116 INFO    ] playing audio file
[2026-06-22 18:33:46,136.136 INFO    ] 2026-06-22 18:33:46
[2026-06-22 18:33:46,140.140 INFO    ] 2026-06-22 18:33:46
[2026-06-22 18:33:46,143.143 INFO    ] publish_status: order_id=TM06202507260622183233758
[2026-06-22 18:33:46,147.147 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622183233758
[2026-06-22 18:33:46,251.251 INFO    ] [publish_status] Message added to stream with ID: 1782133426187-0
[2026-06-22 18:33:46,253.253 INFO    ] Published to order:TM06202507260622183233758: {'order_id': 'TM06202507260622183233758', 'timestamp': '2026-06-22T13:03:46.141495Z', 'server_response': '{"res": "True", "logic": "WBL", "anomaly": 0, "orderId": "TM06202507260622183233758", "rstatus": true, "skus": [{"unit_price": "60", "mrp": "60", "sku_total": 60.0, "skuid": "4500694", "name": "Aatral Natural Electrolytes 200ml per peice", "qty": 1, "tray_id": "36", "image_url": "https://images.tinymart.in/product/4500694-1219.png", "door_id": ""}], "total_amount": 60.0}', 'server_status': 'invoiceOrder'} (ID: 1782133426187-0)
[2026-06-22 18:33:46,845.845 INFO    ] {'order_id': 'TM06202507260622183233758', 'server_response': {'res': 'True', 'logic': 'WBL', 'anomaly': 0, 'orderId': 'TM06202507260622183233758', 'rstatus': True, 'skus': [{'unit_price': '60', 'mrp': '60', 'sku_total': 60.0, 'skuid': '4500694', 'name': 'Aatral Natural Electrolytes 200ml per peice', 'qty': 1, 'tray_id': '36', 'image_url': 'https://images.tinymart.in/product/4500694-1219.png', 'door_id': ''}], 'total_amount': 60.0}, 'server_status': 'invoiceOrder'}
[2026-06-22 18:33:46,849.849 INFO    ] 200
[2026-06-22 18:33:46,886.886 INFO    ] {"data":{"order_id":"TM06202507260622183233758","server_response":{"res":"true","logic":"WBL","anomaly":0,"orderId":"TM06202507260622183233758","rstatus":true,"skus":[{"unit_price":"60","mrp":"60","sku_total":60,"skuid":"4500694","name":"Aatral Natural Electrolytes 200ml per peice","qty":1,"tray_id":"36","image_url":"https:\/\/images.tinymart.in\/product\/4500694-1219.png","door_id":""}],"total_amount":60},"server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 18:33:46,889.889 INFO    ] {'data': {'order_id': 'TM06202507260622183233758', 'server_response': {'res': 'true', 'logic': 'WBL', 'anomaly': 0, 'orderId': 'TM06202507260622183233758', 'rstatus': True, 'skus': [{'unit_price': '60', 'mrp': '60', 'sku_total': 60, 'skuid': '4500694', 'name': 'Aatral Natural Electrolytes 200ml per peice', 'qty': 1, 'tray_id': '36', 'image_url': 'https://images.tinymart.in/product/4500694-1219.png', 'door_id': ''}], 'total_amount': 60}, 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-22 18:33:46,893.893 INFO    ] {'data': {'order_id': 'TM06202507260622183233758', 'server_response': {'res': 'true', 'logic': 'WBL', 'anomaly': 0, 'orderId': 'TM06202507260622183233758', 'rstatus': True, 'skus': [{'unit_price': '60', 'mrp': '60', 'sku_total': 60, 'skuid': '4500694', 'name': 'Aatral Natural Electrolytes 200ml per peice', 'qty': 1, 'tray_id': '36', 'image_url': 'https://images.tinymart.in/product/4500694-1219.png', 'door_id': ''}], 'total_amount': 60}, 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-06-22 18:33:46,896.896 INFO    ] 2026-06-22 18:33:46
[2026-06-22 18:33:52,358.358 INFO    ] 200
[2026-06-22 18:33:52,360.360 INFO    ] {"orders_data_synced": [], "order_items": [], "orders_data": [], "orders_synced": [], "tray_synced": ["TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758", "TM06202507260622183233758"], "order_items_synced": ["TM06202507260622183233758_0"], "orders": [], "status": true, "tray_sync": []}
[2026-06-22 18:33:52,363.363 INFO    ] 2026-06-22 18:33:52
[2026-06-22 18:33:52,484.484 INFO    ] 200
[2026-06-22 18:33:52,486.486 INFO    ] True
[2026-06-22 18:33:52,489.489 INFO    ] cleanup_start_order_file_after_processing: order_id=TM06202507260622183233758
[2026-06-22 18:33:52,492.492 INFO    ] start order file deleted
[2026-06-22 18:33:52,495.495 INFO    ] Checking for system updates...
[2026-06-22 18:33:52,529.529 INFO    ] 200
[2026-06-22 18:33:52,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:33:52,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:33:52,587.587 INFO    ] No update needed
[2026-06-22 18:33:52,589.589 INFO    ] Checking for camera pi updates...
[2026-06-22 18:33:52,622.622 INFO    ] 200
[2026-06-22 18:33:52,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:33:52,671.671 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:33:52,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:33:52,728.728 INFO    ] No camera update needed
[2026-06-22 18:33:52,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:33:52,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:33:52,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:33:52,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:33:54,787.787 INFO    ] ================================================
[2026-06-22 18:33:54,802.802 INFO    ] Launching Daemon at Mon Jun 22 18:33:54 IST 2026
[2026-06-22 18:33:54,813.813 INFO    ] ================================================
[2026-06-22 18:33:55,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:33:55
[2026-06-22 18:33:55,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:33:56,237.237 INFO    ] Initializing speech engine...
[2026-06-22 18:33:56,243.243 INFO    ] 2026-06-22 18:33:56
[2026-06-22 18:33:56,546.546 INFO    ] 2026-06-22 18:33:56
[2026-06-22 18:33:56,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:33:56,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:33:56,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:33:56,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:33:56,937.937 INFO    ] time= 22/06/2026 18:33:56
[2026-06-22 18:33:56,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:33:56,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:33:57,066.066 INFO    ] No existing commands found in stream
[2026-06-22 18:34:02,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:34:02,079.079 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-22 18:34:06,548.548 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:34:06,550.550 INFO    ] Checking for system updates...
[2026-06-22 18:34:06,590.590 INFO    ] 200
[2026-06-22 18:34:06,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:34:06,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:34:06,649.649 INFO    ] No update needed
[2026-06-22 18:34:06,652.652 INFO    ] Checking for camera pi updates...
[2026-06-22 18:34:06,686.686 INFO    ] 200
[2026-06-22 18:34:06,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:34:06,730.730 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:34:06,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:34:06,818.818 INFO    ] No camera update needed
[2026-06-22 18:34:06,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:34:06,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:34:06,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:34:06,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:34:08,878.878 INFO    ] ================================================
[2026-06-22 18:34:08,894.894 INFO    ] Launching Daemon at Mon Jun 22 18:34:08 IST 2026
[2026-06-22 18:34:08,905.905 INFO    ] ================================================
[2026-06-22 18:34:09,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:34:09
[2026-06-22 18:34:10,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:34:10,363.363 INFO    ] Initializing speech engine...
[2026-06-22 18:34:10,382.382 INFO    ] 2026-06-22 18:34:10
[2026-06-22 18:34:10,635.635 INFO    ] 2026-06-22 18:34:10
[2026-06-22 18:34:10,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:34:10,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:34:10,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:34:11,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:34:11,109.109 INFO    ] time= 22/06/2026 18:34:11
[2026-06-22 18:34:11,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:34:11,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:34:11,263.263 INFO    ] No existing commands found in stream
[2026-06-22 18:34:16,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:34:16,278.278 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-22 18:34:20,655.655 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:34:20,658.658 INFO    ] Checking for system updates...
[2026-06-22 18:34:20,719.719 INFO    ] 200
[2026-06-22 18:34:20,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 18:34:20,725.725 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-22 18:34:20,727.727 INFO    ] Checking for camera pi updates...
[2026-06-22 18:34:20,779.779 INFO    ] 200
[2026-06-22 18:34:20,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 18:34:20,785.785 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-22 18:34:20,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:34:20,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:34:20,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:34:20,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:34:22,848.848 INFO    ] ================================================
[2026-06-22 18:34:22,864.864 INFO    ] Launching Daemon at Mon Jun 22 18:34:22 IST 2026
[2026-06-22 18:34:22,876.876 INFO    ] ================================================
[2026-06-22 18:34:23,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:34:23
[2026-06-22 18:34:24,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:34:24,295.295 INFO    ] Initializing speech engine...
[2026-06-22 18:34:24,315.315 INFO    ] 2026-06-22 18:34:24
[2026-06-22 18:34:24,574.574 INFO    ] 2026-06-22 18:34:24
[2026-06-22 18:34:24,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:34:25,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:34:25,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:34:26,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:34:26,164.164 INFO    ] time= 22/06/2026 18:34:26
[2026-06-22 18:34:26,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:34:26,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:34:26,350.350 INFO    ] No existing commands found in stream
[2026-06-22 18:34:31,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:34:31,358.358 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-22 18:34:34,371.371 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:34:34,373.373 INFO    ] Checking for system updates...
[2026-06-22 18:34:34,410.410 INFO    ] 200
[2026-06-22 18:34:34,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:34:34,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:34:34,469.469 INFO    ] No update needed
[2026-06-22 18:34:34,471.471 INFO    ] Checking for camera pi updates...
[2026-06-22 18:34:34,510.510 INFO    ] 200
[2026-06-22 18:34:34,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:34:34,559.559 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:34:34,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:34:34,643.643 INFO    ] No camera update needed
[2026-06-22 18:34:34,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:34:34,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:34:34,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:34:34,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:34:36,699.699 INFO    ] ================================================
[2026-06-22 18:34:36,714.714 INFO    ] Launching Daemon at Mon Jun 22 18:34:36 IST 2026
[2026-06-22 18:34:36,725.725 INFO    ] ================================================
[2026-06-22 18:34:37,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:34:37
[2026-06-22 18:34:38,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:34:38,434.434 INFO    ] Initializing speech engine...
[2026-06-22 18:34:38,448.448 INFO    ] 2026-06-22 18:34:38
[2026-06-22 18:34:38,738.738 INFO    ] 2026-06-22 18:34:38
[2026-06-22 18:34:38,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:34:39,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:34:39,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:34:39,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:34:39,243.243 INFO    ] time= 22/06/2026 18:34:39
[2026-06-22 18:34:39,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:34:39,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:34:39,431.431 INFO    ] No existing commands found in stream
[2026-06-22 18:34:44,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:34:44,461.461 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-22 18:34:48,906.906 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:34:48,910.910 INFO    ] Checking for system updates...
[2026-06-22 18:34:48,953.953 INFO    ] 200
[2026-06-22 18:34:48,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:34:49,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:34:49,032.032 INFO    ] No update needed
[2026-06-22 18:34:49,035.035 INFO    ] Checking for camera pi updates...
[2026-06-22 18:34:49,077.077 INFO    ] 200
[2026-06-22 18:34:49,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:34:49,128.128 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:34:49,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:34:49,219.219 INFO    ] No camera update needed
[2026-06-22 18:34:49,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:34:49,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:34:49,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:34:49,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:34:51,279.279 INFO    ] ================================================
[2026-06-22 18:34:51,295.295 INFO    ] Launching Daemon at Mon Jun 22 18:34:51 IST 2026
[2026-06-22 18:34:51,307.307 INFO    ] ================================================
[2026-06-22 18:34:51,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:34:51
[2026-06-22 18:34:52,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:34:52,799.799 INFO    ] Initializing speech engine...
[2026-06-22 18:34:52,808.808 INFO    ] 2026-06-22 18:34:52
[2026-06-22 18:34:53,053.053 INFO    ] 2026-06-22 18:34:53
[2026-06-22 18:34:53,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:34:55,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:34:55,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:34:56,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:34:56,262.262 INFO    ] time= 22/06/2026 18:34:56
[2026-06-22 18:34:56,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:34:56,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:34:56,320.320 INFO    ] No existing commands found in stream
[2026-06-22 18:35:01,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:35:01,331.331 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-22 18:35:04,340.340 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:35:04,342.342 INFO    ] Checking for system updates...
[2026-06-22 18:35:04,382.382 INFO    ] 200
[2026-06-22 18:35:04,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:35:04,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:35:04,440.440 INFO    ] No update needed
[2026-06-22 18:35:04,443.443 INFO    ] Checking for camera pi updates...
[2026-06-22 18:35:04,477.477 INFO    ] 200
[2026-06-22 18:35:04,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:35:04,520.520 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:35:04,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:35:04,607.607 INFO    ] No camera update needed
[2026-06-22 18:35:04,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:35:04,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:35:04,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:35:04,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:35:06,672.672 INFO    ] ================================================
[2026-06-22 18:35:06,688.688 INFO    ] Launching Daemon at Mon Jun 22 18:35:06 IST 2026
[2026-06-22 18:35:06,700.700 INFO    ] ================================================
[2026-06-22 18:35:07,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:35:07
[2026-06-22 18:35:07,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:35:08,173.173 INFO    ] Initializing speech engine...
[2026-06-22 18:35:08,179.179 INFO    ] 2026-06-22 18:35:08
[2026-06-22 18:35:08,447.447 INFO    ] 2026-06-22 18:35:08
[2026-06-22 18:35:08,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:35:08,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:35:08,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:35:08,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:35:08,860.860 INFO    ] time= 22/06/2026 18:35:08
[2026-06-22 18:35:08,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:35:08,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:35:08,997.997 INFO    ] No existing commands found in stream
[2026-06-22 18:35:14,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:35:14,030.030 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-22 18:35:15,254.254 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:35:15,256.256 INFO    ] Checking for system updates...
[2026-06-22 18:35:15,277.277 INFO    ] 200
[2026-06-22 18:35:15,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:35:15,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:35:15,333.333 INFO    ] No update needed
[2026-06-22 18:35:15,335.335 INFO    ] Checking for camera pi updates...
[2026-06-22 18:35:15,370.370 INFO    ] 200
[2026-06-22 18:35:15,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:35:15,413.413 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:35:15,503.503 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:35:15,505.505 INFO    ] No camera update needed
[2026-06-22 18:35:15,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:35:15,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:35:15,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:35:15,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:35:17,560.560 INFO    ] ================================================
[2026-06-22 18:35:17,575.575 INFO    ] Launching Daemon at Mon Jun 22 18:35:17 IST 2026
[2026-06-22 18:35:17,586.586 INFO    ] ================================================
[2026-06-22 18:35:18,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:35:18
[2026-06-22 18:35:18,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:35:19,195.195 INFO    ] Initializing speech engine...
[2026-06-22 18:35:19,209.209 INFO    ] 2026-06-22 18:35:19
[2026-06-22 18:35:19,521.521 INFO    ] 2026-06-22 18:35:19
[2026-06-22 18:35:19,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:35:19,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:35:19,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:35:19,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:35:19,971.971 INFO    ] time= 22/06/2026 18:35:19
[2026-06-22 18:35:20,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:35:20,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:35:20,187.187 INFO    ] No existing commands found in stream
[2026-06-22 18:35:25,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:35:25,213.213 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-22 18:35:29,101.101 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:35:29,104.104 INFO    ] Checking for system updates...
[2026-06-22 18:35:29,141.141 INFO    ] 200
[2026-06-22 18:35:29,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:35:29,198.198 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:35:29,200.200 INFO    ] No update needed
[2026-06-22 18:35:29,203.203 INFO    ] Checking for camera pi updates...
[2026-06-22 18:35:29,241.241 INFO    ] 200
[2026-06-22 18:35:29,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:35:29,290.290 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:35:29,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:35:29,374.374 INFO    ] No camera update needed
[2026-06-22 18:35:29,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:35:29,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:35:29,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:35:29,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:35:31,427.427 INFO    ] ================================================
[2026-06-22 18:35:31,442.442 INFO    ] Launching Daemon at Mon Jun 22 18:35:31 IST 2026
[2026-06-22 18:35:31,453.453 INFO    ] ================================================
[2026-06-22 18:35:32,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:35:32
[2026-06-22 18:35:32,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:35:32,922.922 INFO    ] Initializing speech engine...
[2026-06-22 18:35:32,938.938 INFO    ] 2026-06-22 18:35:32
[2026-06-22 18:35:33,189.189 INFO    ] 2026-06-22 18:35:33
[2026-06-22 18:35:33,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:35:33,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:35:33,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:35:33,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:35:33,556.556 INFO    ] time= 22/06/2026 18:35:33
[2026-06-22 18:35:33,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:35:33,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:35:33,740.740 INFO    ] No existing commands found in stream
[2026-06-22 18:35:38,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:35:38,764.764 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-22 18:35:40,287.287 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:35:40,289.289 INFO    ] Checking for system updates...
[2026-06-22 18:35:40,325.325 INFO    ] 200
[2026-06-22 18:35:40,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:35:40,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:35:40,389.389 INFO    ] No update needed
[2026-06-22 18:35:40,391.391 INFO    ] Checking for camera pi updates...
[2026-06-22 18:35:40,425.425 INFO    ] 200
[2026-06-22 18:35:40,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:35:40,469.469 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:35:40,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:35:40,550.550 INFO    ] No camera update needed
[2026-06-22 18:35:40,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:35:40,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:35:40,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:35:40,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:35:42,608.608 INFO    ] ================================================
[2026-06-22 18:35:42,624.624 INFO    ] Launching Daemon at Mon Jun 22 18:35:42 IST 2026
[2026-06-22 18:35:42,635.635 INFO    ] ================================================
[2026-06-22 18:35:43,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:35:43
[2026-06-22 18:35:43,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:35:44,096.096 INFO    ] Initializing speech engine...
[2026-06-22 18:35:44,102.102 INFO    ] 2026-06-22 18:35:44
[2026-06-22 18:35:44,364.364 INFO    ] 2026-06-22 18:35:44
[2026-06-22 18:35:44,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:35:44,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:35:44,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:35:44,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:35:44,853.853 INFO    ] time= 22/06/2026 18:35:44
[2026-06-22 18:35:44,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:35:44,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:35:45,021.021 INFO    ] No existing commands found in stream
[2026-06-22 18:35:50,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:35:50,050.050 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-22 18:35:51,791.791 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:35:51,793.793 INFO    ] Checking for system updates...
[2026-06-22 18:35:51,836.836 INFO    ] 200
[2026-06-22 18:35:51,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:35:51,904.904 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:35:51,907.907 INFO    ] No update needed
[2026-06-22 18:35:51,910.910 INFO    ] Checking for camera pi updates...
[2026-06-22 18:35:51,947.947 INFO    ] 200
[2026-06-22 18:35:51,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:35:51,992.992 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:35:52,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:35:52,095.095 INFO    ] No camera update needed
[2026-06-22 18:35:52,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:35:52,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:35:52,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:35:52,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:35:54,154.154 INFO    ] ================================================
[2026-06-22 18:35:54,169.169 INFO    ] Launching Daemon at Mon Jun 22 18:35:54 IST 2026
[2026-06-22 18:35:54,180.180 INFO    ] ================================================
[2026-06-22 18:35:54,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:35:54
[2026-06-22 18:35:55,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:35:55,529.529 INFO    ] Initializing speech engine...
[2026-06-22 18:35:55,536.536 INFO    ] 2026-06-22 18:35:55
[2026-06-22 18:35:55,793.793 INFO    ] 2026-06-22 18:35:55
[2026-06-22 18:35:55,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:35:57,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:35:57,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:35:58,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:35:58,649.649 INFO    ] time= 22/06/2026 18:35:58
[2026-06-22 18:35:58,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:35:58,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:35:58,750.750 INFO    ] No existing commands found in stream
[2026-06-22 18:36:03,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:36:03,762.762 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-22 18:36:04,577.577 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:36:04,580.580 INFO    ] Checking for system updates...
[2026-06-22 18:36:04,615.615 INFO    ] 200
[2026-06-22 18:36:04,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:36:04,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:36:04,680.680 INFO    ] No update needed
[2026-06-22 18:36:04,683.683 INFO    ] Checking for camera pi updates...
[2026-06-22 18:36:04,716.716 INFO    ] 200
[2026-06-22 18:36:04,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:36:04,759.759 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:36:04,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:36:04,911.911 INFO    ] No camera update needed
[2026-06-22 18:36:04,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:36:04,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:36:04,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:36:04,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:36:06,968.968 INFO    ] ================================================
[2026-06-22 18:36:06,983.983 INFO    ] Launching Daemon at Mon Jun 22 18:36:06 IST 2026
[2026-06-22 18:36:06,994.994 INFO    ] ================================================
[2026-06-22 18:36:07,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:36:07
[2026-06-22 18:36:08,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:36:08,428.428 INFO    ] Initializing speech engine...
[2026-06-22 18:36:08,437.437 INFO    ] 2026-06-22 18:36:08
[2026-06-22 18:36:08,683.683 INFO    ] 2026-06-22 18:36:08
[2026-06-22 18:36:08,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:36:08,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:36:08,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:36:09,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:36:09,095.095 INFO    ] time= 22/06/2026 18:36:09
[2026-06-22 18:36:09,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:36:09,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:36:09,261.261 INFO    ] No existing commands found in stream
[2026-06-22 18:36:14,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:36:14,289.289 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-22 18:36:17,606.606 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:36:17,608.608 INFO    ] Checking for system updates...
[2026-06-22 18:36:17,648.648 INFO    ] 200
[2026-06-22 18:36:17,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:36:17,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:36:17,707.707 INFO    ] No update needed
[2026-06-22 18:36:17,710.710 INFO    ] Checking for camera pi updates...
[2026-06-22 18:36:17,749.749 INFO    ] 200
[2026-06-22 18:36:17,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:36:17,801.801 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:36:17,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:36:17,890.890 INFO    ] No camera update needed
[2026-06-22 18:36:17,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:36:17,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:36:17,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:36:17,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:36:19,945.945 INFO    ] ================================================
[2026-06-22 18:36:19,960.960 INFO    ] Launching Daemon at Mon Jun 22 18:36:19 IST 2026
[2026-06-22 18:36:19,971.971 INFO    ] ================================================
[2026-06-22 18:36:20,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:36:20
[2026-06-22 18:36:21,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:36:21,411.411 INFO    ] Initializing speech engine...
[2026-06-22 18:36:21,429.429 INFO    ] 2026-06-22 18:36:21
[2026-06-22 18:36:21,677.677 INFO    ] 2026-06-22 18:36:21
[2026-06-22 18:36:21,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:36:21,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:36:21,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:36:22,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:36:22,136.136 INFO    ] time= 22/06/2026 18:36:22
[2026-06-22 18:36:22,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:36:22,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:36:22,340.340 INFO    ] No existing commands found in stream
[2026-06-22 18:36:27,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:36:27,355.355 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-22 18:36:30,116.116 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:36:30,119.119 INFO    ] Checking for system updates...
[2026-06-22 18:36:30,156.156 INFO    ] 200
[2026-06-22 18:36:30,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:36:30,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:36:30,213.213 INFO    ] No update needed
[2026-06-22 18:36:30,215.215 INFO    ] Checking for camera pi updates...
[2026-06-22 18:36:30,249.249 INFO    ] 200
[2026-06-22 18:36:30,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:36:30,293.293 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:36:30,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:36:30,361.361 INFO    ] No camera update needed
[2026-06-22 18:36:30,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:36:30,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:36:30,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:36:30,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:36:32,425.425 INFO    ] ================================================
[2026-06-22 18:36:32,442.442 INFO    ] Launching Daemon at Mon Jun 22 18:36:32 IST 2026
[2026-06-22 18:36:32,454.454 INFO    ] ================================================
[2026-06-22 18:36:33,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:36:33
[2026-06-22 18:36:33,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:36:33,940.940 INFO    ] Initializing speech engine...
[2026-06-22 18:36:33,947.947 INFO    ] 2026-06-22 18:36:33
[2026-06-22 18:36:34,234.234 INFO    ] 2026-06-22 18:36:34
[2026-06-22 18:36:34,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:36:34,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:36:34,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:36:34,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:36:34,729.729 INFO    ] time= 22/06/2026 18:36:34
[2026-06-22 18:36:34,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:36:34,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:36:34,881.881 INFO    ] No existing commands found in stream
[2026-06-22 18:36:39,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:36:39,905.905 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-22 18:36:41,161.161 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:36:41,164.164 INFO    ] Checking for system updates...
[2026-06-22 18:36:41,201.201 INFO    ] 200
[2026-06-22 18:36:41,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:36:41,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:36:41,261.261 INFO    ] No update needed
[2026-06-22 18:36:41,263.263 INFO    ] Checking for camera pi updates...
[2026-06-22 18:36:41,301.301 INFO    ] 200
[2026-06-22 18:36:41,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:36:41,350.350 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:36:41,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:36:41,437.437 INFO    ] No camera update needed
[2026-06-22 18:36:41,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:36:41,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:36:41,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:36:41,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:36:43,496.496 INFO    ] ================================================
[2026-06-22 18:36:43,511.511 INFO    ] Launching Daemon at Mon Jun 22 18:36:43 IST 2026
[2026-06-22 18:36:43,522.522 INFO    ] ================================================
[2026-06-22 18:36:44,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:36:44
[2026-06-22 18:36:44,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:36:44,979.979 INFO    ] Initializing speech engine...
[2026-06-22 18:36:44,990.990 INFO    ] 2026-06-22 18:36:44
[2026-06-22 18:36:45,238.238 INFO    ] 2026-06-22 18:36:45
[2026-06-22 18:36:45,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:36:45,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:36:45,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:36:45,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:36:45,711.711 INFO    ] time= 22/06/2026 18:36:45
[2026-06-22 18:36:45,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:36:45,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:36:45,873.873 INFO    ] No existing commands found in stream
[2026-06-22 18:36:50,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:36:50,912.912 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-22 18:36:55,249.249 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:36:55,252.252 INFO    ] Checking for system updates...
[2026-06-22 18:36:55,289.289 INFO    ] 200
[2026-06-22 18:36:55,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:36:55,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:36:55,353.353 INFO    ] No update needed
[2026-06-22 18:36:55,356.356 INFO    ] Checking for camera pi updates...
[2026-06-22 18:36:55,390.390 INFO    ] 200
[2026-06-22 18:36:55,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:36:55,432.432 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:36:55,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:36:55,517.517 INFO    ] No camera update needed
[2026-06-22 18:36:55,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:36:55,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:36:55,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:36:55,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:36:57,572.572 INFO    ] ================================================
[2026-06-22 18:36:57,587.587 INFO    ] Launching Daemon at Mon Jun 22 18:36:57 IST 2026
[2026-06-22 18:36:57,598.598 INFO    ] ================================================
[2026-06-22 18:36:58,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:36:58
[2026-06-22 18:36:58,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:36:59,049.049 INFO    ] Initializing speech engine...
[2026-06-22 18:36:59,072.072 INFO    ] 2026-06-22 18:36:59
[2026-06-22 18:36:59,328.328 INFO    ] 2026-06-22 18:36:59
[2026-06-22 18:36:59,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:36:59,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:36:59,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:36:59,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:36:59,795.795 INFO    ] time= 22/06/2026 18:36:59
[2026-06-22 18:36:59,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:36:59,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:36:59,967.967 INFO    ] No existing commands found in stream
[2026-06-22 18:37:04,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:37:04,996.996 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-22 18:37:09,092.092 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:37:09,095.095 INFO    ] Checking for system updates...
[2026-06-22 18:37:09,131.131 INFO    ] 200
[2026-06-22 18:37:09,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:37:09,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:37:09,189.189 INFO    ] No update needed
[2026-06-22 18:37:09,192.192 INFO    ] Checking for camera pi updates...
[2026-06-22 18:37:09,226.226 INFO    ] 200
[2026-06-22 18:37:09,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:37:09,269.269 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:37:09,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:37:09,367.367 INFO    ] No camera update needed
[2026-06-22 18:37:09,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:37:09,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:37:09,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:37:09,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:37:11,424.424 INFO    ] ================================================
[2026-06-22 18:37:11,439.439 INFO    ] Launching Daemon at Mon Jun 22 18:37:11 IST 2026
[2026-06-22 18:37:11,450.450 INFO    ] ================================================
[2026-06-22 18:37:12,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:37:12
[2026-06-22 18:37:12,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:37:12,983.983 INFO    ] Initializing speech engine...
[2026-06-22 18:37:12,995.995 INFO    ] 2026-06-22 18:37:12
[2026-06-22 18:37:13,272.272 INFO    ] 2026-06-22 18:37:13
[2026-06-22 18:37:13,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:37:13,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:37:13,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:37:13,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:37:13,715.715 INFO    ] time= 22/06/2026 18:37:13
[2026-06-22 18:37:13,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:37:13,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:37:13,964.964 INFO    ] No existing commands found in stream
[2026-06-22 18:37:18,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:37:18,992.992 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-22 18:37:19,550.550 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:37:19,553.553 INFO    ] Checking for system updates...
[2026-06-22 18:37:19,588.588 INFO    ] 200
[2026-06-22 18:37:19,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:37:19,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:37:19,653.653 INFO    ] No update needed
[2026-06-22 18:37:19,655.655 INFO    ] Checking for camera pi updates...
[2026-06-22 18:37:19,689.689 INFO    ] 200
[2026-06-22 18:37:19,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:37:19,736.736 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:37:19,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:37:19,823.823 INFO    ] No camera update needed
[2026-06-22 18:37:19,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:37:19,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:37:19,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:37:19,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:37:21,879.879 INFO    ] ================================================
[2026-06-22 18:37:21,895.895 INFO    ] Launching Daemon at Mon Jun 22 18:37:21 IST 2026
[2026-06-22 18:37:21,906.906 INFO    ] ================================================
[2026-06-22 18:37:22,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:37:22
[2026-06-22 18:37:23,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:37:23,338.338 INFO    ] Initializing speech engine...
[2026-06-22 18:37:23,358.358 INFO    ] 2026-06-22 18:37:23
[2026-06-22 18:37:23,609.609 INFO    ] 2026-06-22 18:37:23
[2026-06-22 18:37:23,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:37:23,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:37:23,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:37:23,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:37:23,989.989 INFO    ] time= 22/06/2026 18:37:23
[2026-06-22 18:37:23,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:37:24,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:37:24,191.191 INFO    ] No existing commands found in stream
[2026-06-22 18:37:29,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:37:29,204.204 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-22 18:37:31,216.216 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:37:31,218.218 INFO    ] Checking for system updates...
[2026-06-22 18:37:31,268.268 INFO    ] 200
[2026-06-22 18:37:31,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:37:31,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:37:31,342.342 INFO    ] No update needed
[2026-06-22 18:37:31,345.345 INFO    ] Checking for camera pi updates...
[2026-06-22 18:37:31,388.388 INFO    ] 200
[2026-06-22 18:37:31,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:37:31,436.436 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:37:31,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:37:31,513.513 INFO    ] No camera update needed
[2026-06-22 18:37:31,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:37:31,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:37:31,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:37:31,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:37:33,573.573 INFO    ] ================================================
[2026-06-22 18:37:33,588.588 INFO    ] Launching Daemon at Mon Jun 22 18:37:33 IST 2026
[2026-06-22 18:37:33,599.599 INFO    ] ================================================
[2026-06-22 18:37:34,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:37:34
[2026-06-22 18:37:34,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:37:35,155.155 INFO    ] Initializing speech engine...
[2026-06-22 18:37:35,161.161 INFO    ] 2026-06-22 18:37:35
[2026-06-22 18:37:35,447.447 INFO    ] 2026-06-22 18:37:35
[2026-06-22 18:37:35,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:37:35,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:37:35,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:37:35,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:37:35,928.928 INFO    ] time= 22/06/2026 18:37:35
[2026-06-22 18:37:35,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:37:35,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:37:36,070.070 INFO    ] No existing commands found in stream
[2026-06-22 18:37:41,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:37:41,104.104 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-22 18:37:42,393.393 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 18:37:42,396.396 INFO    ] Checking for system updates...
[2026-06-22 18:37:42,435.435 INFO    ] 200
[2026-06-22 18:37:42,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:37:42,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:37:42,495.495 INFO    ] No update needed
[2026-06-22 18:37:42,497.497 INFO    ] Checking for camera pi updates...
[2026-06-22 18:37:42,531.531 INFO    ] 200
[2026-06-22 18:37:42,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:37:42,575.575 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:37:42,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:37:42,651.651 INFO    ] No camera update needed
[2026-06-22 18:37:42,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:37:42,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:37:42,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:37:42,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:37:44,707.707 INFO    ] ================================================
[2026-06-22 18:37:44,723.723 INFO    ] Launching Daemon at Mon Jun 22 18:37:44 IST 2026
[2026-06-22 18:37:44,734.734 INFO    ] ================================================
[2026-06-22 18:37:45,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:37:45
[2026-06-22 18:37:45,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:37:46,141.141 INFO    ] Initializing speech engine...
[2026-06-22 18:37:46,153.153 INFO    ] 2026-06-22 18:37:46
[2026-06-22 18:37:46,419.419 INFO    ] 2026-06-22 18:37:46
[2026-06-22 18:37:46,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:37:46,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:37:46,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:37:46,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:37:46,953.953 INFO    ] time= 22/06/2026 18:37:46
[2026-06-22 18:37:46,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:37:46,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:37:47,128.128 INFO    ] No existing commands found in stream
[2026-06-22 18:37:52,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:37:52,159.159 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-22 18:37:55,359.359 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:37:55,361.361 INFO    ] Checking for system updates...
[2026-06-22 18:37:55,401.401 INFO    ] 200
[2026-06-22 18:37:55,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:37:55,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:37:55,435.435 INFO    ] No update needed
[2026-06-22 18:37:55,437.437 INFO    ] Checking for camera pi updates...
[2026-06-22 18:37:55,457.457 INFO    ] 200
[2026-06-22 18:37:55,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:37:55,485.485 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:37:55,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:37:55,571.571 INFO    ] No camera update needed
[2026-06-22 18:37:55,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:37:55,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:37:55,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:37:55,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:37:57,629.629 INFO    ] ================================================
[2026-06-22 18:37:57,645.645 INFO    ] Launching Daemon at Mon Jun 22 18:37:57 IST 2026
[2026-06-22 18:37:57,656.656 INFO    ] ================================================
[2026-06-22 18:37:58,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:37:58
[2026-06-22 18:37:58,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:37:59,192.192 INFO    ] Initializing speech engine...
[2026-06-22 18:37:59,205.205 INFO    ] 2026-06-22 18:37:59
[2026-06-22 18:37:59,463.463 INFO    ] 2026-06-22 18:37:59
[2026-06-22 18:37:59,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:38:00,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:38:00,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:38:01,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:38:01,155.155 INFO    ] time= 22/06/2026 18:38:01
[2026-06-22 18:38:01,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:38:01,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:38:01,269.269 INFO    ] No existing commands found in stream
[2026-06-22 18:38:06,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:38:06,325.325 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-22 18:38:07,328.328 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:38:07,331.331 INFO    ] Checking for system updates...
[2026-06-22 18:38:07,367.367 INFO    ] 200
[2026-06-22 18:38:07,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:38:07,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:38:07,425.425 INFO    ] No update needed
[2026-06-22 18:38:07,427.427 INFO    ] Checking for camera pi updates...
[2026-06-22 18:38:07,466.466 INFO    ] 200
[2026-06-22 18:38:07,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:38:07,509.509 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:38:07,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:38:07,705.705 INFO    ] No camera update needed
[2026-06-22 18:38:07,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:38:07,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:38:07,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:38:07,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:38:09,761.761 INFO    ] ================================================
[2026-06-22 18:38:09,777.777 INFO    ] Launching Daemon at Mon Jun 22 18:38:09 IST 2026
[2026-06-22 18:38:09,788.788 INFO    ] ================================================
[2026-06-22 18:38:10,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:38:10
[2026-06-22 18:38:10,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:38:11,284.284 INFO    ] Initializing speech engine...
[2026-06-22 18:38:11,293.293 INFO    ] 2026-06-22 18:38:11
[2026-06-22 18:38:11,566.566 INFO    ] 2026-06-22 18:38:11
[2026-06-22 18:38:11,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:38:11,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:38:11,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:38:11,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:38:11,949.949 INFO    ] time= 22/06/2026 18:38:11
[2026-06-22 18:38:11,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:38:11,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:38:12,081.081 INFO    ] No existing commands found in stream
[2026-06-22 18:38:17,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:38:17,110.110 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-22 18:38:19,443.443 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:38:19,446.446 INFO    ] Checking for system updates...
[2026-06-22 18:38:19,487.487 INFO    ] 200
[2026-06-22 18:38:19,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:38:19,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:38:19,544.544 INFO    ] No update needed
[2026-06-22 18:38:19,547.547 INFO    ] Checking for camera pi updates...
[2026-06-22 18:38:19,581.581 INFO    ] 200
[2026-06-22 18:38:19,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:38:19,625.625 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:38:19,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:38:19,689.689 INFO    ] No camera update needed
[2026-06-22 18:38:19,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:38:19,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:38:19,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:38:19,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:38:21,744.744 INFO    ] ================================================
[2026-06-22 18:38:21,760.760 INFO    ] Launching Daemon at Mon Jun 22 18:38:21 IST 2026
[2026-06-22 18:38:21,771.771 INFO    ] ================================================
[2026-06-22 18:38:22,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:38:22
[2026-06-22 18:38:22,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:38:23,139.139 INFO    ] Initializing speech engine...
[2026-06-22 18:38:23,162.162 INFO    ] 2026-06-22 18:38:23
[2026-06-22 18:38:23,417.417 INFO    ] 2026-06-22 18:38:23
[2026-06-22 18:38:23,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:38:23,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:38:23,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:38:23,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:38:23,796.796 INFO    ] time= 22/06/2026 18:38:23
[2026-06-22 18:38:23,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:38:23,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:38:23,980.980 INFO    ] No existing commands found in stream
[2026-06-22 18:38:29,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:38:29,012.012 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-22 18:38:31,751.751 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 18:38:31,753.753 INFO    ] Checking for system updates...
[2026-06-22 18:38:31,796.796 INFO    ] 200
[2026-06-22 18:38:31,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:38:31,855.855 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:38:31,858.858 INFO    ] No update needed
[2026-06-22 18:38:31,861.861 INFO    ] Checking for camera pi updates...
[2026-06-22 18:38:31,905.905 INFO    ] 200
[2026-06-22 18:38:31,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:38:31,953.953 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:38:32,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:38:32,023.023 INFO    ] No camera update needed
[2026-06-22 18:38:32,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:38:32,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:38:32,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:38:32,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:38:34,086.086 INFO    ] ================================================
[2026-06-22 18:38:34,102.102 INFO    ] Launching Daemon at Mon Jun 22 18:38:34 IST 2026
[2026-06-22 18:38:34,113.113 INFO    ] ================================================
[2026-06-22 18:38:34,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:38:34
[2026-06-22 18:38:35,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:38:35,575.575 INFO    ] Initializing speech engine...
[2026-06-22 18:38:35,581.581 INFO    ] 2026-06-22 18:38:35
[2026-06-22 18:38:35,829.829 INFO    ] 2026-06-22 18:38:35
[2026-06-22 18:38:35,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:38:36,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:38:36,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:38:36,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:38:36,309.309 INFO    ] time= 22/06/2026 18:38:36
[2026-06-22 18:38:36,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:38:36,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:38:36,457.457 INFO    ] No existing commands found in stream
[2026-06-22 18:38:41,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:38:41,484.484 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-22 18:38:44,162.162 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:38:44,165.165 INFO    ] Checking for system updates...
[2026-06-22 18:38:44,201.201 INFO    ] 200
[2026-06-22 18:38:44,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:38:44,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:38:44,263.263 INFO    ] No update needed
[2026-06-22 18:38:44,266.266 INFO    ] Checking for camera pi updates...
[2026-06-22 18:38:44,301.301 INFO    ] 200
[2026-06-22 18:38:44,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:38:44,352.352 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:38:44,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:38:44,440.440 INFO    ] No camera update needed
[2026-06-22 18:38:44,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:38:44,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:38:44,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:38:44,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:38:46,503.503 INFO    ] ================================================
[2026-06-22 18:38:46,519.519 INFO    ] Launching Daemon at Mon Jun 22 18:38:46 IST 2026
[2026-06-22 18:38:46,531.531 INFO    ] ================================================
[2026-06-22 18:38:47,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:38:47
[2026-06-22 18:38:47,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:38:47,874.874 INFO    ] Initializing speech engine...
[2026-06-22 18:38:47,894.894 INFO    ] 2026-06-22 18:38:47
[2026-06-22 18:38:48,155.155 INFO    ] 2026-06-22 18:38:48
[2026-06-22 18:38:48,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:38:48,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:38:48,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:38:48,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:38:48,536.536 INFO    ] time= 22/06/2026 18:38:48
[2026-06-22 18:38:48,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:38:48,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:38:48,735.735 INFO    ] No existing commands found in stream
[2026-06-22 18:38:53,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:38:53,749.749 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-22 18:38:55,211.211 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:38:55,214.214 INFO    ] Checking for system updates...
[2026-06-22 18:38:55,250.250 INFO    ] 200
[2026-06-22 18:38:55,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:38:55,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:38:55,316.316 INFO    ] No update needed
[2026-06-22 18:38:55,318.318 INFO    ] Checking for camera pi updates...
[2026-06-22 18:38:55,352.352 INFO    ] 200
[2026-06-22 18:38:55,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:38:55,395.395 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:38:55,473.473 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:38:55,476.476 INFO    ] No camera update needed
[2026-06-22 18:38:55,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:38:55,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:38:55,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:38:55,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:38:57,531.531 INFO    ] ================================================
[2026-06-22 18:38:57,547.547 INFO    ] Launching Daemon at Mon Jun 22 18:38:57 IST 2026
[2026-06-22 18:38:57,558.558 INFO    ] ================================================
[2026-06-22 18:38:58,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:38:58
[2026-06-22 18:38:58,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:38:59,077.077 INFO    ] Initializing speech engine...
[2026-06-22 18:38:59,086.086 INFO    ] 2026-06-22 18:38:59
[2026-06-22 18:38:59,393.393 INFO    ] 2026-06-22 18:38:59
[2026-06-22 18:38:59,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:39:02,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:39:02,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:39:02,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:39:02,918.918 INFO    ] time= 22/06/2026 18:39:02
[2026-06-22 18:39:02,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:39:02,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:39:02,974.974 INFO    ] No existing commands found in stream
[2026-06-22 18:39:07,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:39:07,988.988 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-22 18:39:11,362.362 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:39:11,366.366 INFO    ] Checking for system updates...
[2026-06-22 18:39:11,403.403 INFO    ] 200
[2026-06-22 18:39:11,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:39:11,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:39:11,470.470 INFO    ] No update needed
[2026-06-22 18:39:11,473.473 INFO    ] Checking for camera pi updates...
[2026-06-22 18:39:11,509.509 INFO    ] 200
[2026-06-22 18:39:11,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:39:11,558.558 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:39:11,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:39:11,649.649 INFO    ] No camera update needed
[2026-06-22 18:39:11,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:39:11,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:39:11,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:39:11,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:39:13,706.706 INFO    ] ================================================
[2026-06-22 18:39:13,721.721 INFO    ] Launching Daemon at Mon Jun 22 18:39:13 IST 2026
[2026-06-22 18:39:13,732.732 INFO    ] ================================================
[2026-06-22 18:39:14,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:39:14
[2026-06-22 18:39:14,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:39:15,144.144 INFO    ] Initializing speech engine...
[2026-06-22 18:39:15,165.165 INFO    ] 2026-06-22 18:39:15
[2026-06-22 18:39:15,433.433 INFO    ] 2026-06-22 18:39:15
[2026-06-22 18:39:15,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:39:15,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:39:15,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:39:15,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:39:15,917.917 INFO    ] time= 22/06/2026 18:39:15
[2026-06-22 18:39:15,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:39:16,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:39:16,151.151 INFO    ] No existing commands found in stream
[2026-06-22 18:39:21,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:39:21,182.182 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-22 18:39:25,155.155 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:39:25,157.157 INFO    ] Checking for system updates...
[2026-06-22 18:39:25,178.178 INFO    ] 200
[2026-06-22 18:39:25,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:39:25,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:39:25,222.222 INFO    ] No update needed
[2026-06-22 18:39:25,225.225 INFO    ] Checking for camera pi updates...
[2026-06-22 18:39:25,259.259 INFO    ] 200
[2026-06-22 18:39:25,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:39:25,307.307 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:39:25,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:39:25,389.389 INFO    ] No camera update needed
[2026-06-22 18:39:25,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:39:25,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:39:25,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:39:25,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:39:27,444.444 INFO    ] ================================================
[2026-06-22 18:39:27,459.459 INFO    ] Launching Daemon at Mon Jun 22 18:39:27 IST 2026
[2026-06-22 18:39:27,470.470 INFO    ] ================================================
[2026-06-22 18:39:28,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:39:28
[2026-06-22 18:39:28,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:39:28,900.900 INFO    ] Initializing speech engine...
[2026-06-22 18:39:28,927.927 INFO    ] 2026-06-22 18:39:28
[2026-06-22 18:39:29,187.187 INFO    ] 2026-06-22 18:39:29
[2026-06-22 18:39:29,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:39:33,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:39:33,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:39:34,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:39:34,079.079 INFO    ] time= 22/06/2026 18:39:34
[2026-06-22 18:39:34,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:39:34,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:39:34,132.132 INFO    ] No existing commands found in stream
[2026-06-22 18:39:39,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:39:39,145.145 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-22 18:39:41,980.980 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 18:39:41,983.983 INFO    ] Checking for system updates...
[2026-06-22 18:39:42,024.024 INFO    ] 200
[2026-06-22 18:39:42,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:39:42,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:39:42,090.090 INFO    ] No update needed
[2026-06-22 18:39:42,094.094 INFO    ] Checking for camera pi updates...
[2026-06-22 18:39:42,129.129 INFO    ] 200
[2026-06-22 18:39:42,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:39:42,172.172 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:39:42,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:39:42,262.262 INFO    ] No camera update needed
[2026-06-22 18:39:42,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:39:42,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:39:42,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:39:42,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:39:44,308.308 INFO    ] ================================================
[2026-06-22 18:39:44,323.323 INFO    ] Launching Daemon at Mon Jun 22 18:39:44 IST 2026
[2026-06-22 18:39:44,333.333 INFO    ] ================================================
[2026-06-22 18:39:44,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:39:44
[2026-06-22 18:39:45,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:39:45,721.721 INFO    ] Initializing speech engine...
[2026-06-22 18:39:45,730.730 INFO    ] 2026-06-22 18:39:45
[2026-06-22 18:39:45,977.977 INFO    ] 2026-06-22 18:39:45
[2026-06-22 18:39:46,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:39:46,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:39:46,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:39:46,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:39:46,407.407 INFO    ] time= 22/06/2026 18:39:46
[2026-06-22 18:39:46,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:39:46,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:39:46,589.589 INFO    ] No existing commands found in stream
[2026-06-22 18:39:51,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:39:51,599.599 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-22 18:39:54,999.999 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:39:55,002.002 INFO    ] Checking for system updates...
[2026-06-22 18:39:55,043.043 INFO    ] 200
[2026-06-22 18:39:55,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:39:55,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:39:55,100.100 INFO    ] No update needed
[2026-06-22 18:39:55,103.103 INFO    ] Checking for camera pi updates...
[2026-06-22 18:39:55,137.137 INFO    ] 200
[2026-06-22 18:39:55,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:39:55,183.183 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:39:55,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:39:55,270.270 INFO    ] No camera update needed
[2026-06-22 18:39:55,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:39:55,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:39:55,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:39:55,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:39:57,327.327 INFO    ] ================================================
[2026-06-22 18:39:57,343.343 INFO    ] Launching Daemon at Mon Jun 22 18:39:57 IST 2026
[2026-06-22 18:39:57,354.354 INFO    ] ================================================
[2026-06-22 18:39:57,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:39:57
[2026-06-22 18:39:58,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:39:58,697.697 INFO    ] Initializing speech engine...
[2026-06-22 18:39:58,704.704 INFO    ] 2026-06-22 18:39:58
[2026-06-22 18:39:58,947.947 INFO    ] 2026-06-22 18:39:58
[2026-06-22 18:39:58,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:39:59,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:39:59,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:39:59,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:39:59,425.425 INFO    ] time= 22/06/2026 18:39:59
[2026-06-22 18:39:59,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:39:59,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:39:59,649.649 INFO    ] No existing commands found in stream
[2026-06-22 18:40:04,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:40:04,669.669 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-22 18:40:07,297.297 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:40:07,299.299 INFO    ] Checking for system updates...
[2026-06-22 18:40:07,340.340 INFO    ] 200
[2026-06-22 18:40:07,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:40:07,397.397 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:40:07,399.399 INFO    ] No update needed
[2026-06-22 18:40:07,401.401 INFO    ] Checking for camera pi updates...
[2026-06-22 18:40:07,439.439 INFO    ] 200
[2026-06-22 18:40:07,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:40:07,487.487 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:40:07,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:40:07,542.542 INFO    ] No camera update needed
[2026-06-22 18:40:07,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:40:07,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:40:07,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:40:07,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:40:09,598.598 INFO    ] ================================================
[2026-06-22 18:40:09,614.614 INFO    ] Launching Daemon at Mon Jun 22 18:40:09 IST 2026
[2026-06-22 18:40:09,626.626 INFO    ] ================================================
[2026-06-22 18:40:10,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:40:10
[2026-06-22 18:40:10,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:40:11,004.004 INFO    ] Initializing speech engine...
[2026-06-22 18:40:11,011.011 INFO    ] 2026-06-22 18:40:11
[2026-06-22 18:40:11,285.285 INFO    ] 2026-06-22 18:40:11
[2026-06-22 18:40:11,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:40:11,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:40:11,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:40:11,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:40:11,663.663 INFO    ] time= 22/06/2026 18:40:11
[2026-06-22 18:40:11,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:40:11,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:40:11,851.851 INFO    ] No existing commands found in stream
[2026-06-22 18:40:16,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:40:16,877.877 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-22 18:40:20,551.551 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:40:20,553.553 INFO    ] Checking for system updates...
[2026-06-22 18:40:20,589.589 INFO    ] 200
[2026-06-22 18:40:20,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:40:20,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:40:20,652.652 INFO    ] No update needed
[2026-06-22 18:40:20,655.655 INFO    ] Checking for camera pi updates...
[2026-06-22 18:40:20,692.692 INFO    ] 200
[2026-06-22 18:40:20,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:40:20,739.739 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:40:20,914.914 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:40:20,917.917 INFO    ] No camera update needed
[2026-06-22 18:40:20,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:40:20,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:40:20,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:40:20,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:40:22,975.975 INFO    ] ================================================
[2026-06-22 18:40:22,991.991 INFO    ] Launching Daemon at Mon Jun 22 18:40:22 IST 2026
[2026-06-22 18:40:23,003.003 INFO    ] ================================================
[2026-06-22 18:40:23,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:40:23
[2026-06-22 18:40:24,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:40:24,506.506 INFO    ] Initializing speech engine...
[2026-06-22 18:40:24,514.514 INFO    ] 2026-06-22 18:40:24
[2026-06-22 18:40:24,787.787 INFO    ] 2026-06-22 18:40:24
[2026-06-22 18:40:24,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:40:25,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:40:25,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:40:25,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:40:25,345.345 INFO    ] time= 22/06/2026 18:40:25
[2026-06-22 18:40:25,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:40:25,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:40:25,495.495 INFO    ] No existing commands found in stream
[2026-06-22 18:40:30,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:40:30,514.514 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-22 18:40:36,406.406 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:40:36,409.409 INFO    ] Checking for system updates...
[2026-06-22 18:40:36,447.447 INFO    ] 200
[2026-06-22 18:40:36,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:40:36,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:40:36,508.508 INFO    ] No update needed
[2026-06-22 18:40:36,511.511 INFO    ] Checking for camera pi updates...
[2026-06-22 18:40:36,546.546 INFO    ] 200
[2026-06-22 18:40:36,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:40:36,591.591 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:40:36,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:40:36,678.678 INFO    ] No camera update needed
[2026-06-22 18:40:36,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:40:36,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:40:36,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:40:36,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:40:38,737.737 INFO    ] ================================================
[2026-06-22 18:40:38,752.752 INFO    ] Launching Daemon at Mon Jun 22 18:40:38 IST 2026
[2026-06-22 18:40:38,763.763 INFO    ] ================================================
[2026-06-22 18:40:39,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:40:39
[2026-06-22 18:40:40,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:40:40,403.403 INFO    ] Initializing speech engine...
[2026-06-22 18:40:40,413.413 INFO    ] 2026-06-22 18:40:40
[2026-06-22 18:40:40,719.719 INFO    ] 2026-06-22 18:40:40
[2026-06-22 18:40:40,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:40:41,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:40:41,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:40:41,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:40:41,188.188 INFO    ] time= 22/06/2026 18:40:41
[2026-06-22 18:40:41,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:40:41,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:40:41,435.435 INFO    ] No existing commands found in stream
[2026-06-22 18:40:46,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:40:46,458.458 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-22 18:40:49,841.841 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:40:49,842.842 INFO    ] Checking for system updates...
[2026-06-22 18:40:49,863.863 INFO    ] 200
[2026-06-22 18:40:49,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:40:49,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:40:49,899.899 INFO    ] No update needed
[2026-06-22 18:40:49,900.900 INFO    ] Checking for camera pi updates...
[2026-06-22 18:40:49,920.920 INFO    ] 200
[2026-06-22 18:40:49,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:40:49,948.948 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:40:50,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:40:50,035.035 INFO    ] No camera update needed
[2026-06-22 18:40:50,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:40:50,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:40:50,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:40:50,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:40:52,091.091 INFO    ] ================================================
[2026-06-22 18:40:52,108.108 INFO    ] Launching Daemon at Mon Jun 22 18:40:52 IST 2026
[2026-06-22 18:40:52,120.120 INFO    ] ================================================
[2026-06-22 18:40:52,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:40:52
[2026-06-22 18:40:53,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:40:53,779.779 INFO    ] Initializing speech engine...
[2026-06-22 18:40:53,793.793 INFO    ] 2026-06-22 18:40:53
[2026-06-22 18:40:54,075.075 INFO    ] 2026-06-22 18:40:54
[2026-06-22 18:40:54,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:40:54,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:40:54,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:40:54,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:40:54,562.562 INFO    ] time= 22/06/2026 18:40:54
[2026-06-22 18:40:54,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:40:54,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:40:54,759.759 INFO    ] No existing commands found in stream
[2026-06-22 18:40:59,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:40:59,782.782 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-22 18:41:00,278.278 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:41:00,281.281 INFO    ] Checking for system updates...
[2026-06-22 18:41:00,321.321 INFO    ] 200
[2026-06-22 18:41:00,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:41:00,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:41:00,381.381 INFO    ] No update needed
[2026-06-22 18:41:00,383.383 INFO    ] Checking for camera pi updates...
[2026-06-22 18:41:00,423.423 INFO    ] 200
[2026-06-22 18:41:00,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:41:00,471.471 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:41:00,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:41:00,554.554 INFO    ] No camera update needed
[2026-06-22 18:41:00,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:41:00,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:41:00,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:41:00,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:41:02,622.622 INFO    ] ================================================
[2026-06-22 18:41:02,645.645 INFO    ] Launching Daemon at Mon Jun 22 18:41:02 IST 2026
[2026-06-22 18:41:02,663.663 INFO    ] ================================================
[2026-06-22 18:41:03,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:41:03
[2026-06-22 18:41:03,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:41:04,219.219 INFO    ] Initializing speech engine...
[2026-06-22 18:41:04,239.239 INFO    ] 2026-06-22 18:41:04
[2026-06-22 18:41:04,501.501 INFO    ] 2026-06-22 18:41:04
[2026-06-22 18:41:04,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:41:07,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:41:07,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:41:08,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:41:08,045.045 INFO    ] time= 22/06/2026 18:41:08
[2026-06-22 18:41:08,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:41:08,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:41:08,117.117 INFO    ] No existing commands found in stream
[2026-06-22 18:41:13,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:41:13,129.129 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-22 18:41:15,538.538 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 18:41:15,541.541 INFO    ] Checking for system updates...
[2026-06-22 18:41:15,579.579 INFO    ] 200
[2026-06-22 18:41:15,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:41:15,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:41:15,638.638 INFO    ] No update needed
[2026-06-22 18:41:15,641.641 INFO    ] Checking for camera pi updates...
[2026-06-22 18:41:15,676.676 INFO    ] 200
[2026-06-22 18:41:15,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:41:15,721.721 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:41:15,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:41:15,823.823 INFO    ] No camera update needed
[2026-06-22 18:41:15,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:41:15,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:41:15,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:41:15,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:41:17,884.884 INFO    ] ================================================
[2026-06-22 18:41:17,900.900 INFO    ] Launching Daemon at Mon Jun 22 18:41:17 IST 2026
[2026-06-22 18:41:17,911.911 INFO    ] ================================================
[2026-06-22 18:41:18,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:41:18
[2026-06-22 18:41:19,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:41:19,455.455 INFO    ] Initializing speech engine...
[2026-06-22 18:41:19,466.466 INFO    ] 2026-06-22 18:41:19
[2026-06-22 18:41:19,744.744 INFO    ] 2026-06-22 18:41:19
[2026-06-22 18:41:19,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:41:20,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:41:20,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:41:20,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:41:20,310.310 INFO    ] time= 22/06/2026 18:41:20
[2026-06-22 18:41:20,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:41:20,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:41:20,459.459 INFO    ] No existing commands found in stream
[2026-06-22 18:41:25,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:41:25,497.497 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-22 18:41:27,753.753 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:41:27,755.755 INFO    ] Checking for system updates...
[2026-06-22 18:41:27,778.778 INFO    ] 200
[2026-06-22 18:41:27,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:41:27,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:41:27,834.834 INFO    ] No update needed
[2026-06-22 18:41:27,837.837 INFO    ] Checking for camera pi updates...
[2026-06-22 18:41:27,877.877 INFO    ] 200
[2026-06-22 18:41:27,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:41:27,928.928 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:41:28,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:41:28,023.023 INFO    ] No camera update needed
[2026-06-22 18:41:28,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:41:28,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:41:28,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:41:28,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:41:30,084.084 INFO    ] ================================================
[2026-06-22 18:41:30,101.101 INFO    ] Launching Daemon at Mon Jun 22 18:41:30 IST 2026
[2026-06-22 18:41:30,112.112 INFO    ] ================================================
[2026-06-22 18:41:30,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:41:30
[2026-06-22 18:41:31,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:41:31,554.554 INFO    ] Initializing speech engine...
[2026-06-22 18:41:31,562.562 INFO    ] 2026-06-22 18:41:31
[2026-06-22 18:41:31,878.878 INFO    ] 2026-06-22 18:41:31
[2026-06-22 18:41:31,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:41:32,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:41:32,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:41:32,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:41:32,321.321 INFO    ] time= 22/06/2026 18:41:32
[2026-06-22 18:41:32,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:41:32,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:41:32,467.467 INFO    ] No existing commands found in stream
[2026-06-22 18:41:37,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:41:37,506.506 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-22 18:41:41,579.579 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:41:41,582.582 INFO    ] Checking for system updates...
[2026-06-22 18:41:41,618.618 INFO    ] 200
[2026-06-22 18:41:41,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:41:41,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:41:41,687.687 INFO    ] No update needed
[2026-06-22 18:41:41,689.689 INFO    ] Checking for camera pi updates...
[2026-06-22 18:41:41,727.727 INFO    ] 200
[2026-06-22 18:41:41,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:41:41,774.774 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:41:41,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:41:41,859.859 INFO    ] No camera update needed
[2026-06-22 18:41:41,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:41:41,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:41:41,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:41:41,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:41:43,918.918 INFO    ] ================================================
[2026-06-22 18:41:43,934.934 INFO    ] Launching Daemon at Mon Jun 22 18:41:43 IST 2026
[2026-06-22 18:41:43,946.946 INFO    ] ================================================
[2026-06-22 18:41:44,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:41:44
[2026-06-22 18:41:45,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:41:45,374.374 INFO    ] Initializing speech engine...
[2026-06-22 18:41:45,390.390 INFO    ] 2026-06-22 18:41:45
[2026-06-22 18:41:45,672.672 INFO    ] 2026-06-22 18:41:45
[2026-06-22 18:41:45,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:41:45,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:41:45,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:41:46,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:41:46,088.088 INFO    ] time= 22/06/2026 18:41:46
[2026-06-22 18:41:46,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:41:46,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:41:46,190.190 INFO    ] No existing commands found in stream
[2026-06-22 18:41:51,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:41:51,223.223 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-22 18:41:52,477.477 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 18:41:52,480.480 INFO    ] Checking for system updates...
[2026-06-22 18:41:52,516.516 INFO    ] 200
[2026-06-22 18:41:52,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:41:52,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:41:52,575.575 INFO    ] No update needed
[2026-06-22 18:41:52,577.577 INFO    ] Checking for camera pi updates...
[2026-06-22 18:41:52,611.611 INFO    ] 200
[2026-06-22 18:41:52,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:41:52,655.655 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:41:52,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:41:52,729.729 INFO    ] No camera update needed
[2026-06-22 18:41:52,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:41:52,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:41:52,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:41:52,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:41:54,785.785 INFO    ] ================================================
[2026-06-22 18:41:54,802.802 INFO    ] Launching Daemon at Mon Jun 22 18:41:54 IST 2026
[2026-06-22 18:41:54,815.815 INFO    ] ================================================
[2026-06-22 18:41:55,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:41:55
[2026-06-22 18:41:56,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:41:56,297.297 INFO    ] Initializing speech engine...
[2026-06-22 18:41:56,302.302 INFO    ] 2026-06-22 18:41:56
[2026-06-22 18:41:56,551.551 INFO    ] 2026-06-22 18:41:56
[2026-06-22 18:41:56,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:41:56,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:41:56,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:41:56,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:41:57,053.053 INFO    ] time= 22/06/2026 18:41:57
[2026-06-22 18:41:57,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:41:57,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:41:57,295.295 INFO    ] No existing commands found in stream
[2026-06-22 18:42:02,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:42:02,325.325 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-22 18:42:09,301.301 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:42:09,304.304 INFO    ] Checking for system updates...
[2026-06-22 18:42:09,340.340 INFO    ] 200
[2026-06-22 18:42:09,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:42:09,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:42:09,398.398 INFO    ] No update needed
[2026-06-22 18:42:09,400.400 INFO    ] Checking for camera pi updates...
[2026-06-22 18:42:09,435.435 INFO    ] 200
[2026-06-22 18:42:09,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:42:09,482.482 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:42:09,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:42:09,570.570 INFO    ] No camera update needed
[2026-06-22 18:42:09,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:42:09,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:42:09,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:42:09,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:42:11,626.626 INFO    ] ================================================
[2026-06-22 18:42:11,642.642 INFO    ] Launching Daemon at Mon Jun 22 18:42:11 IST 2026
[2026-06-22 18:42:11,653.653 INFO    ] ================================================
[2026-06-22 18:42:12,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:42:12
[2026-06-22 18:42:12,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:42:13,115.115 INFO    ] Initializing speech engine...
[2026-06-22 18:42:13,124.124 INFO    ] 2026-06-22 18:42:13
[2026-06-22 18:42:13,373.373 INFO    ] 2026-06-22 18:42:13
[2026-06-22 18:42:13,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:42:13,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:42:13,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:42:13,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:42:13,927.927 INFO    ] time= 22/06/2026 18:42:13
[2026-06-22 18:42:13,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:42:13,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:42:14,082.082 INFO    ] No existing commands found in stream
[2026-06-22 18:42:19,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:42:19,102.102 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-22 18:42:22,425.425 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:42:22,428.428 INFO    ] Checking for system updates...
[2026-06-22 18:42:22,468.468 INFO    ] 200
[2026-06-22 18:42:22,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:42:22,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:42:22,527.527 INFO    ] No update needed
[2026-06-22 18:42:22,530.530 INFO    ] Checking for camera pi updates...
[2026-06-22 18:42:22,566.566 INFO    ] 200
[2026-06-22 18:42:22,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:42:22,614.614 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:42:22,765.765 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:42:22,767.767 INFO    ] No camera update needed
[2026-06-22 18:42:22,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:42:22,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:42:22,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:42:22,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:42:24,822.822 INFO    ] ================================================
[2026-06-22 18:42:24,837.837 INFO    ] Launching Daemon at Mon Jun 22 18:42:24 IST 2026
[2026-06-22 18:42:24,848.848 INFO    ] ================================================
[2026-06-22 18:42:25,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:42:25
[2026-06-22 18:42:25,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:42:26,194.194 INFO    ] Initializing speech engine...
[2026-06-22 18:42:26,203.203 INFO    ] 2026-06-22 18:42:26
[2026-06-22 18:42:26,471.471 INFO    ] 2026-06-22 18:42:26
[2026-06-22 18:42:26,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:42:26,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:42:26,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:42:26,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:42:26,893.893 INFO    ] time= 22/06/2026 18:42:26
[2026-06-22 18:42:26,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:42:26,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:42:27,021.021 INFO    ] No existing commands found in stream
[2026-06-22 18:42:32,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:42:32,049.049 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-22 18:42:39,111.111 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:42:39,114.114 INFO    ] Checking for system updates...
[2026-06-22 18:42:39,150.150 INFO    ] 200
[2026-06-22 18:42:39,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:42:39,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:42:39,215.215 INFO    ] No update needed
[2026-06-22 18:42:39,217.217 INFO    ] Checking for camera pi updates...
[2026-06-22 18:42:39,252.252 INFO    ] 200
[2026-06-22 18:42:39,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:42:39,297.297 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:42:39,376.376 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:42:39,378.378 INFO    ] No camera update needed
[2026-06-22 18:42:39,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:42:39,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:42:39,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:42:39,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:42:41,426.426 INFO    ] ================================================
[2026-06-22 18:42:41,443.443 INFO    ] Launching Daemon at Mon Jun 22 18:42:41 IST 2026
[2026-06-22 18:42:41,453.453 INFO    ] ================================================
[2026-06-22 18:42:42,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:42:42
[2026-06-22 18:42:42,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:42:42,910.910 INFO    ] Initializing speech engine...
[2026-06-22 18:42:42,920.920 INFO    ] 2026-06-22 18:42:42
[2026-06-22 18:42:43,171.171 INFO    ] 2026-06-22 18:42:43
[2026-06-22 18:42:43,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:42:43,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:42:43,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:42:43,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:42:43,550.550 INFO    ] time= 22/06/2026 18:42:43
[2026-06-22 18:42:43,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:42:43,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:42:43,734.734 INFO    ] No existing commands found in stream
[2026-06-22 18:42:48,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:42:48,760.760 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-22 18:42:51,062.062 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:42:51,064.064 INFO    ] Checking for system updates...
[2026-06-22 18:42:51,100.100 INFO    ] 200
[2026-06-22 18:42:51,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:42:51,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:42:51,160.160 INFO    ] No update needed
[2026-06-22 18:42:51,162.162 INFO    ] Checking for camera pi updates...
[2026-06-22 18:42:51,197.197 INFO    ] 200
[2026-06-22 18:42:51,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:42:51,240.240 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:42:51,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:42:51,343.343 INFO    ] No camera update needed
[2026-06-22 18:42:51,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:42:51,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:42:51,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:42:51,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:42:53,403.403 INFO    ] ================================================
[2026-06-22 18:42:53,418.418 INFO    ] Launching Daemon at Mon Jun 22 18:42:53 IST 2026
[2026-06-22 18:42:53,429.429 INFO    ] ================================================
[2026-06-22 18:42:53,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:42:53
[2026-06-22 18:42:54,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:42:54,807.807 INFO    ] Initializing speech engine...
[2026-06-22 18:42:54,817.817 INFO    ] 2026-06-22 18:42:54
[2026-06-22 18:42:55,082.082 INFO    ] 2026-06-22 18:42:55
[2026-06-22 18:42:55,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:42:55,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:42:55,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:42:55,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:42:55,631.631 INFO    ] time= 22/06/2026 18:42:55
[2026-06-22 18:42:55,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:42:55,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:42:55,781.781 INFO    ] No existing commands found in stream
[2026-06-22 18:43:00,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:43:00,806.806 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-22 18:43:03,683.683 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:43:03,686.686 INFO    ] Checking for system updates...
[2026-06-22 18:43:03,723.723 INFO    ] 200
[2026-06-22 18:43:03,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:43:03,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:43:03,793.793 INFO    ] No update needed
[2026-06-22 18:43:03,796.796 INFO    ] Checking for camera pi updates...
[2026-06-22 18:43:03,833.833 INFO    ] 200
[2026-06-22 18:43:03,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:43:03,878.878 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:43:03,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:43:03,977.977 INFO    ] No camera update needed
[2026-06-22 18:43:03,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:43:03,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:43:03,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:43:03,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:43:06,033.033 INFO    ] ================================================
[2026-06-22 18:43:06,048.048 INFO    ] Launching Daemon at Mon Jun 22 18:43:06 IST 2026
[2026-06-22 18:43:06,059.059 INFO    ] ================================================
[2026-06-22 18:43:06,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:43:06
[2026-06-22 18:43:07,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:43:07,512.512 INFO    ] Initializing speech engine...
[2026-06-22 18:43:07,526.526 INFO    ] 2026-06-22 18:43:07
[2026-06-22 18:43:07,794.794 INFO    ] 2026-06-22 18:43:07
[2026-06-22 18:43:07,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:43:09,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:43:09,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:43:10,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:43:10,492.492 INFO    ] time= 22/06/2026 18:43:10
[2026-06-22 18:43:10,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:43:10,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:43:10,606.606 INFO    ] No existing commands found in stream
[2026-06-22 18:43:15,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:43:15,623.623 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-22 18:43:19,690.690 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:43:19,693.693 INFO    ] Checking for system updates...
[2026-06-22 18:43:19,729.729 INFO    ] 200
[2026-06-22 18:43:19,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:43:19,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:43:19,788.788 INFO    ] No update needed
[2026-06-22 18:43:19,790.790 INFO    ] Checking for camera pi updates...
[2026-06-22 18:43:19,827.827 INFO    ] 200
[2026-06-22 18:43:19,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:43:19,870.870 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:43:19,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:43:19,962.962 INFO    ] No camera update needed
[2026-06-22 18:43:19,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:43:19,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:43:19,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:43:19,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:43:22,018.018 INFO    ] ================================================
[2026-06-22 18:43:22,033.033 INFO    ] Launching Daemon at Mon Jun 22 18:43:22 IST 2026
[2026-06-22 18:43:22,044.044 INFO    ] ================================================
[2026-06-22 18:43:22,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:43:22
[2026-06-22 18:43:23,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:43:23,453.453 INFO    ] Initializing speech engine...
[2026-06-22 18:43:23,467.467 INFO    ] 2026-06-22 18:43:23
[2026-06-22 18:43:23,734.734 INFO    ] 2026-06-22 18:43:23
[2026-06-22 18:43:23,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:43:23,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:43:23,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:43:24,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:43:24,115.115 INFO    ] time= 22/06/2026 18:43:24
[2026-06-22 18:43:24,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:43:24,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:43:24,275.275 INFO    ] No existing commands found in stream
[2026-06-22 18:43:29,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:43:29,303.303 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-22 18:43:29,774.774 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 18:43:29,777.777 INFO    ] Checking for system updates...
[2026-06-22 18:43:29,812.812 INFO    ] 200
[2026-06-22 18:43:29,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:43:29,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:43:29,872.872 INFO    ] No update needed
[2026-06-22 18:43:29,875.875 INFO    ] Checking for camera pi updates...
[2026-06-22 18:43:29,912.912 INFO    ] 200
[2026-06-22 18:43:29,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:43:29,957.957 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:43:30,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:43:30,044.044 INFO    ] No camera update needed
[2026-06-22 18:43:30,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:43:30,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:43:30,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:43:30,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:43:32,102.102 INFO    ] ================================================
[2026-06-22 18:43:32,118.118 INFO    ] Launching Daemon at Mon Jun 22 18:43:32 IST 2026
[2026-06-22 18:43:32,130.130 INFO    ] ================================================
[2026-06-22 18:43:32,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:43:32
[2026-06-22 18:43:33,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:43:33,815.815 INFO    ] Initializing speech engine...
[2026-06-22 18:43:33,821.821 INFO    ] 2026-06-22 18:43:33
[2026-06-22 18:43:34,100.100 INFO    ] 2026-06-22 18:43:34
[2026-06-22 18:43:34,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:43:34,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:43:34,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:43:34,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:43:34,673.673 INFO    ] time= 22/06/2026 18:43:34
[2026-06-22 18:43:34,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:43:34,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:43:34,834.834 INFO    ] No existing commands found in stream
[2026-06-22 18:43:39,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:43:39,866.866 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-22 18:43:44,010.010 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:43:44,013.013 INFO    ] Checking for system updates...
[2026-06-22 18:43:44,051.051 INFO    ] 200
[2026-06-22 18:43:44,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:43:44,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:43:44,111.111 INFO    ] No update needed
[2026-06-22 18:43:44,114.114 INFO    ] Checking for camera pi updates...
[2026-06-22 18:43:44,137.137 INFO    ] 200
[2026-06-22 18:43:44,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:43:44,165.165 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:43:44,247.247 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:43:44,250.250 INFO    ] No camera update needed
[2026-06-22 18:43:44,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:43:44,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:43:44,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:43:44,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:43:46,307.307 INFO    ] ================================================
[2026-06-22 18:43:46,322.322 INFO    ] Launching Daemon at Mon Jun 22 18:43:46 IST 2026
[2026-06-22 18:43:46,333.333 INFO    ] ================================================
[2026-06-22 18:43:46,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:43:46
[2026-06-22 18:43:47,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:43:47,647.647 INFO    ] Initializing speech engine...
[2026-06-22 18:43:47,660.660 INFO    ] 2026-06-22 18:43:47
[2026-06-22 18:43:47,926.926 INFO    ] 2026-06-22 18:43:47
[2026-06-22 18:43:47,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:43:48,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:43:48,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:43:48,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:43:48,370.370 INFO    ] time= 22/06/2026 18:43:48
[2026-06-22 18:43:48,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:43:48,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:43:48,626.626 INFO    ] No existing commands found in stream
[2026-06-22 18:43:53,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:43:53,654.654 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-22 18:43:58,099.099 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 18:43:58,102.102 INFO    ] Checking for system updates...
[2026-06-22 18:43:58,138.138 INFO    ] 200
[2026-06-22 18:43:58,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:43:58,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:43:58,202.202 INFO    ] No update needed
[2026-06-22 18:43:58,204.204 INFO    ] Checking for camera pi updates...
[2026-06-22 18:43:58,238.238 INFO    ] 200
[2026-06-22 18:43:58,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:43:58,285.285 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:43:58,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:43:58,387.387 INFO    ] No camera update needed
[2026-06-22 18:43:58,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:43:58,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:43:58,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:43:58,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:44:00,441.441 INFO    ] ================================================
[2026-06-22 18:44:00,457.457 INFO    ] Launching Daemon at Mon Jun 22 18:44:00 IST 2026
[2026-06-22 18:44:00,467.467 INFO    ] ================================================
[2026-06-22 18:44:01,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:44:01
[2026-06-22 18:44:01,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:44:01,885.885 INFO    ] Initializing speech engine...
[2026-06-22 18:44:01,903.903 INFO    ] 2026-06-22 18:44:01
[2026-06-22 18:44:02,366.366 INFO    ] 2026-06-22 18:44:02
[2026-06-22 18:44:02,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:44:02,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:44:02,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:44:02,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:44:02,777.777 INFO    ] time= 22/06/2026 18:44:02
[2026-06-22 18:44:02,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:44:02,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:44:02,906.906 INFO    ] No existing commands found in stream
[2026-06-22 18:44:07,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:44:07,940.940 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-22 18:44:12,633.633 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:44:12,636.636 INFO    ] Checking for system updates...
[2026-06-22 18:44:12,672.672 INFO    ] 200
[2026-06-22 18:44:12,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:44:12,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:44:12,730.730 INFO    ] No update needed
[2026-06-22 18:44:12,732.732 INFO    ] Checking for camera pi updates...
[2026-06-22 18:44:12,769.769 INFO    ] 200
[2026-06-22 18:44:12,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:44:12,813.813 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:44:12,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:44:12,894.894 INFO    ] No camera update needed
[2026-06-22 18:44:12,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:44:12,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:44:12,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:44:12,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:44:14,949.949 INFO    ] ================================================
[2026-06-22 18:44:14,965.965 INFO    ] Launching Daemon at Mon Jun 22 18:44:14 IST 2026
[2026-06-22 18:44:14,976.976 INFO    ] ================================================
[2026-06-22 18:44:15,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:44:15
[2026-06-22 18:44:16,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:44:16,438.438 INFO    ] Initializing speech engine...
[2026-06-22 18:44:16,448.448 INFO    ] 2026-06-22 18:44:16
[2026-06-22 18:44:16,725.725 INFO    ] 2026-06-22 18:44:16
[2026-06-22 18:44:16,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:44:17,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:44:17,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:44:17,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:44:17,239.239 INFO    ] time= 22/06/2026 18:44:17
[2026-06-22 18:44:17,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:44:17,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:44:17,441.441 INFO    ] No existing commands found in stream
[2026-06-22 18:44:22,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:44:22,467.467 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-22 18:44:24,421.421 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:44:24,424.424 INFO    ] Checking for system updates...
[2026-06-22 18:44:24,462.462 INFO    ] 200
[2026-06-22 18:44:24,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:44:24,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:44:24,522.522 INFO    ] No update needed
[2026-06-22 18:44:24,525.525 INFO    ] Checking for camera pi updates...
[2026-06-22 18:44:24,564.564 INFO    ] 200
[2026-06-22 18:44:24,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:44:24,610.610 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:44:24,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:44:24,665.665 INFO    ] No camera update needed
[2026-06-22 18:44:24,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:44:24,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:44:24,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:44:24,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:44:26,726.726 INFO    ] ================================================
[2026-06-22 18:44:26,741.741 INFO    ] Launching Daemon at Mon Jun 22 18:44:26 IST 2026
[2026-06-22 18:44:26,752.752 INFO    ] ================================================
[2026-06-22 18:44:27,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:44:27
[2026-06-22 18:44:27,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:44:28,302.302 INFO    ] Initializing speech engine...
[2026-06-22 18:44:28,314.314 INFO    ] 2026-06-22 18:44:28
[2026-06-22 18:44:28,600.600 INFO    ] 2026-06-22 18:44:28
[2026-06-22 18:44:28,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:44:28,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:44:28,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:44:29,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:44:29,137.137 INFO    ] time= 22/06/2026 18:44:29
[2026-06-22 18:44:29,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:44:29,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:44:29,292.292 INFO    ] No existing commands found in stream
[2026-06-22 18:44:34,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:44:34,312.312 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-22 18:44:37,284.284 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:44:37,287.287 INFO    ] Checking for system updates...
[2026-06-22 18:44:37,329.329 INFO    ] 200
[2026-06-22 18:44:37,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:44:37,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:44:37,396.396 INFO    ] No update needed
[2026-06-22 18:44:37,399.399 INFO    ] Checking for camera pi updates...
[2026-06-22 18:44:37,438.438 INFO    ] 200
[2026-06-22 18:44:37,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:44:37,483.483 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:44:37,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:44:37,577.577 INFO    ] No camera update needed
[2026-06-22 18:44:37,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:44:37,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:44:37,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:44:37,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:44:39,637.637 INFO    ] ================================================
[2026-06-22 18:44:39,652.652 INFO    ] Launching Daemon at Mon Jun 22 18:44:39 IST 2026
[2026-06-22 18:44:39,663.663 INFO    ] ================================================
[2026-06-22 18:44:40,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:44:40
[2026-06-22 18:44:40,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:44:41,216.216 INFO    ] Initializing speech engine...
[2026-06-22 18:44:41,227.227 INFO    ] 2026-06-22 18:44:41
[2026-06-22 18:44:41,506.506 INFO    ] 2026-06-22 18:44:41
[2026-06-22 18:44:41,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:44:42,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:44:42,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:44:43,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:44:43,386.386 INFO    ] time= 22/06/2026 18:44:43
[2026-06-22 18:44:43,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:44:43,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:44:43,486.486 INFO    ] No existing commands found in stream
[2026-06-22 18:44:48,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:44:48,500.500 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-22 18:44:51,618.618 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:44:51,620.620 INFO    ] Checking for system updates...
[2026-06-22 18:44:51,642.642 INFO    ] 200
[2026-06-22 18:44:51,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:44:51,674.674 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:44:51,676.676 INFO    ] No update needed
[2026-06-22 18:44:51,677.677 INFO    ] Checking for camera pi updates...
[2026-06-22 18:44:51,710.710 INFO    ] 200
[2026-06-22 18:44:51,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:44:51,759.759 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:44:51,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:44:51,849.849 INFO    ] No camera update needed
[2026-06-22 18:44:51,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:44:51,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:44:51,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:44:51,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:44:53,905.905 INFO    ] ================================================
[2026-06-22 18:44:53,921.921 INFO    ] Launching Daemon at Mon Jun 22 18:44:53 IST 2026
[2026-06-22 18:44:53,931.931 INFO    ] ================================================
[2026-06-22 18:44:54,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:44:54
[2026-06-22 18:44:55,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:44:55,300.300 INFO    ] Initializing speech engine...
[2026-06-22 18:44:55,310.310 INFO    ] 2026-06-22 18:44:55
[2026-06-22 18:44:55,577.577 INFO    ] 2026-06-22 18:44:55
[2026-06-22 18:44:55,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:44:55,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:44:55,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:44:55,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:44:56,005.005 INFO    ] time= 22/06/2026 18:44:55
[2026-06-22 18:44:56,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:44:56,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:44:56,091.091 INFO    ] No existing commands found in stream
[2026-06-22 18:45:01,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:45:01,108.108 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-22 18:45:04,338.338 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:45:04,340.340 INFO    ] Checking for system updates...
[2026-06-22 18:45:04,377.377 INFO    ] 200
[2026-06-22 18:45:04,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:45:04,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:45:04,437.437 INFO    ] No update needed
[2026-06-22 18:45:04,440.440 INFO    ] Checking for camera pi updates...
[2026-06-22 18:45:04,477.477 INFO    ] 200
[2026-06-22 18:45:04,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:45:04,520.520 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:45:04,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:45:04,604.604 INFO    ] No camera update needed
[2026-06-22 18:45:04,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:45:04,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:45:04,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:45:04,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:45:06,662.662 INFO    ] ================================================
[2026-06-22 18:45:06,678.678 INFO    ] Launching Daemon at Mon Jun 22 18:45:06 IST 2026
[2026-06-22 18:45:06,689.689 INFO    ] ================================================
[2026-06-22 18:45:07,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:45:07
[2026-06-22 18:45:07,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:45:08,281.281 INFO    ] Initializing speech engine...
[2026-06-22 18:45:08,290.290 INFO    ] 2026-06-22 18:45:08
[2026-06-22 18:45:08,581.581 INFO    ] 2026-06-22 18:45:08
[2026-06-22 18:45:08,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:45:08,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:45:08,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:45:09,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:45:09,123.123 INFO    ] time= 22/06/2026 18:45:09
[2026-06-22 18:45:09,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:45:09,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:45:09,259.259 INFO    ] No existing commands found in stream
[2026-06-22 18:45:14,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:45:14,289.289 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-22 18:45:18,119.119 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:45:18,121.121 INFO    ] Checking for system updates...
[2026-06-22 18:45:18,159.159 INFO    ] 200
[2026-06-22 18:45:18,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:45:18,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:45:18,226.226 INFO    ] No update needed
[2026-06-22 18:45:18,229.229 INFO    ] Checking for camera pi updates...
[2026-06-22 18:45:18,266.266 INFO    ] 200
[2026-06-22 18:45:18,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:45:18,310.310 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:45:18,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:45:18,401.401 INFO    ] No camera update needed
[2026-06-22 18:45:18,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:45:18,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:45:18,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:45:18,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:45:20,463.463 INFO    ] ================================================
[2026-06-22 18:45:20,593.593 INFO    ] Launching Daemon at Mon Jun 22 18:45:20 IST 2026
[2026-06-22 18:45:20,608.608 INFO    ] ================================================
[2026-06-22 18:45:21,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:45:21
[2026-06-22 18:45:21,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:45:22,035.035 INFO    ] Initializing speech engine...
[2026-06-22 18:45:22,040.040 INFO    ] 2026-06-22 18:45:22
[2026-06-22 18:45:22,286.286 INFO    ] 2026-06-22 18:45:22
[2026-06-22 18:45:22,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:45:22,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:45:22,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:45:22,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:45:22,680.680 INFO    ] time= 22/06/2026 18:45:22
[2026-06-22 18:45:22,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:45:22,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:45:22,790.790 INFO    ] No existing commands found in stream
[2026-06-22 18:45:27,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:45:27,806.806 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-22 18:45:29,586.586 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:45:29,587.587 INFO    ] Checking for system updates...
[2026-06-22 18:45:29,608.608 INFO    ] 200
[2026-06-22 18:45:29,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:45:29,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:45:29,665.665 INFO    ] No update needed
[2026-06-22 18:45:29,668.668 INFO    ] Checking for camera pi updates...
[2026-06-22 18:45:29,706.706 INFO    ] 200
[2026-06-22 18:45:29,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:45:29,754.754 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:45:29,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:45:29,836.836 INFO    ] No camera update needed
[2026-06-22 18:45:29,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:45:29,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:45:29,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:45:29,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:45:31,897.897 INFO    ] ================================================
[2026-06-22 18:45:31,915.915 INFO    ] Launching Daemon at Mon Jun 22 18:45:31 IST 2026
[2026-06-22 18:45:31,930.930 INFO    ] ================================================
[2026-06-22 18:45:32,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:45:32
[2026-06-22 18:45:33,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:45:33,533.533 INFO    ] Initializing speech engine...
[2026-06-22 18:45:33,547.547 INFO    ] 2026-06-22 18:45:33
[2026-06-22 18:45:33,819.819 INFO    ] 2026-06-22 18:45:33
[2026-06-22 18:45:33,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:45:34,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:45:34,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:45:34,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:45:34,295.295 INFO    ] time= 22/06/2026 18:45:34
[2026-06-22 18:45:34,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:45:34,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:45:34,503.503 INFO    ] No existing commands found in stream
[2026-06-22 18:45:39,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:45:39,532.532 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-22 18:45:40,519.519 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:45:40,522.522 INFO    ] Checking for system updates...
[2026-06-22 18:45:40,558.558 INFO    ] 200
[2026-06-22 18:45:40,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:45:40,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:45:40,617.617 INFO    ] No update needed
[2026-06-22 18:45:40,619.619 INFO    ] Checking for camera pi updates...
[2026-06-22 18:45:40,663.663 INFO    ] 200
[2026-06-22 18:45:40,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:45:40,720.720 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:45:40,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:45:40,824.824 INFO    ] No camera update needed
[2026-06-22 18:45:40,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:45:40,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:45:40,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:45:40,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:45:42,880.880 INFO    ] ================================================
[2026-06-22 18:45:42,896.896 INFO    ] Launching Daemon at Mon Jun 22 18:45:42 IST 2026
[2026-06-22 18:45:42,907.907 INFO    ] ================================================
[2026-06-22 18:45:43,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:45:43
[2026-06-22 18:45:44,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:45:44,277.277 INFO    ] Initializing speech engine...
[2026-06-22 18:45:44,287.287 INFO    ] 2026-06-22 18:45:44
[2026-06-22 18:45:44,537.537 INFO    ] 2026-06-22 18:45:44
[2026-06-22 18:45:44,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:45:45,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:45:45,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:45:46,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:45:46,131.131 INFO    ] time= 22/06/2026 18:45:46
[2026-06-22 18:45:46,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:45:46,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:45:46,261.261 INFO    ] No existing commands found in stream
[2026-06-22 18:45:51,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:45:51,279.279 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-22 18:45:54,940.940 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 18:45:54,943.943 INFO    ] Checking for system updates...
[2026-06-22 18:45:54,980.980 INFO    ] 200
[2026-06-22 18:45:54,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:45:55,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:45:55,038.038 INFO    ] No update needed
[2026-06-22 18:45:55,040.040 INFO    ] Checking for camera pi updates...
[2026-06-22 18:45:55,074.074 INFO    ] 200
[2026-06-22 18:45:55,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:45:55,119.119 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:45:55,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:45:55,201.201 INFO    ] No camera update needed
[2026-06-22 18:45:55,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:45:55,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:45:55,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:45:55,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:45:57,260.260 INFO    ] ================================================
[2026-06-22 18:45:57,275.275 INFO    ] Launching Daemon at Mon Jun 22 18:45:57 IST 2026
[2026-06-22 18:45:57,287.287 INFO    ] ================================================
[2026-06-22 18:45:57,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:45:57
[2026-06-22 18:45:58,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:45:58,669.669 INFO    ] Initializing speech engine...
[2026-06-22 18:45:58,677.677 INFO    ] 2026-06-22 18:45:58
[2026-06-22 18:45:58,927.927 INFO    ] 2026-06-22 18:45:58
[2026-06-22 18:45:58,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:45:59,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:45:59,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:45:59,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:45:59,415.415 INFO    ] time= 22/06/2026 18:45:59
[2026-06-22 18:45:59,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:45:59,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:45:59,613.613 INFO    ] No existing commands found in stream
[2026-06-22 18:46:04,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:46:04,651.651 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-22 18:46:07,157.157 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:46:07,159.159 INFO    ] Checking for system updates...
[2026-06-22 18:46:07,201.201 INFO    ] 200
[2026-06-22 18:46:07,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:46:07,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:46:07,269.269 INFO    ] No update needed
[2026-06-22 18:46:07,272.272 INFO    ] Checking for camera pi updates...
[2026-06-22 18:46:07,311.311 INFO    ] 200
[2026-06-22 18:46:07,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:46:07,356.356 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:46:07,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:46:07,444.444 INFO    ] No camera update needed
[2026-06-22 18:46:07,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:46:07,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:46:07,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:46:07,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:46:09,506.506 INFO    ] ================================================
[2026-06-22 18:46:09,522.522 INFO    ] Launching Daemon at Mon Jun 22 18:46:09 IST 2026
[2026-06-22 18:46:09,534.534 INFO    ] ================================================
[2026-06-22 18:46:10,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:46:10
[2026-06-22 18:46:10,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:46:11,101.101 INFO    ] Initializing speech engine...
[2026-06-22 18:46:11,114.114 INFO    ] 2026-06-22 18:46:11
[2026-06-22 18:46:11,402.402 INFO    ] 2026-06-22 18:46:11
[2026-06-22 18:46:11,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:46:14,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:46:14,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:46:16,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:46:16,109.109 INFO    ] time= 22/06/2026 18:46:16
[2026-06-22 18:46:16,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:46:16,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:46:16,183.183 INFO    ] No existing commands found in stream
[2026-06-22 18:46:21,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:46:21,197.197 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-22 18:46:22,778.778 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:46:22,781.781 INFO    ] Checking for system updates...
[2026-06-22 18:46:22,820.820 INFO    ] 200
[2026-06-22 18:46:22,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:46:22,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:46:22,883.883 INFO    ] No update needed
[2026-06-22 18:46:22,886.886 INFO    ] Checking for camera pi updates...
[2026-06-22 18:46:22,921.921 INFO    ] 200
[2026-06-22 18:46:22,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:46:22,971.971 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:46:23,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:46:23,057.057 INFO    ] No camera update needed
[2026-06-22 18:46:23,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:46:23,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:46:23,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:46:23,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:46:25,116.116 INFO    ] ================================================
[2026-06-22 18:46:25,132.132 INFO    ] Launching Daemon at Mon Jun 22 18:46:25 IST 2026
[2026-06-22 18:46:25,144.144 INFO    ] ================================================
[2026-06-22 18:46:25,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:46:25
[2026-06-22 18:46:26,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:46:26,562.562 INFO    ] Initializing speech engine...
[2026-06-22 18:46:26,570.570 INFO    ] 2026-06-22 18:46:26
[2026-06-22 18:46:26,863.863 INFO    ] 2026-06-22 18:46:26
[2026-06-22 18:46:26,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:46:27,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:46:27,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:46:27,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:46:27,281.281 INFO    ] time= 22/06/2026 18:46:27
[2026-06-22 18:46:27,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:46:27,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:46:27,467.467 INFO    ] No existing commands found in stream
[2026-06-22 18:46:32,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:46:32,493.493 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-22 18:46:33,420.420 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:46:33,422.422 INFO    ] Checking for system updates...
[2026-06-22 18:46:33,460.460 INFO    ] 200
[2026-06-22 18:46:33,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:46:33,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:46:33,517.517 INFO    ] No update needed
[2026-06-22 18:46:33,519.519 INFO    ] Checking for camera pi updates...
[2026-06-22 18:46:33,553.553 INFO    ] 200
[2026-06-22 18:46:33,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:46:33,596.596 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:46:38,755.755 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:46:38,757.757 INFO    ] No camera update needed
[2026-06-22 18:46:38,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:46:38,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:46:38,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:46:38,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:46:40,812.812 INFO    ] ================================================
[2026-06-22 18:46:40,829.829 INFO    ] Launching Daemon at Mon Jun 22 18:46:40 IST 2026
[2026-06-22 18:46:40,840.840 INFO    ] ================================================
[2026-06-22 18:46:41,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:46:41
[2026-06-22 18:46:41,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:46:42,233.233 INFO    ] Initializing speech engine...
[2026-06-22 18:46:42,256.256 INFO    ] 2026-06-22 18:46:42
[2026-06-22 18:46:42,512.512 INFO    ] 2026-06-22 18:46:42
[2026-06-22 18:46:42,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:46:42,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:46:42,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:46:45,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:46:45,717.717 INFO    ] time= 22/06/2026 18:46:45
[2026-06-22 18:46:45,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:46:45,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:46:45,777.777 INFO    ] No existing commands found in stream
[2026-06-22 18:46:50,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:46:50,786.786 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-22 18:46:54,235.235 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:46:54,236.236 INFO    ] Checking for system updates...
[2026-06-22 18:46:54,257.257 INFO    ] 200
[2026-06-22 18:46:54,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:46:54,305.305 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:46:54,308.308 INFO    ] No update needed
[2026-06-22 18:46:54,310.310 INFO    ] Checking for camera pi updates...
[2026-06-22 18:46:54,345.345 INFO    ] 200
[2026-06-22 18:46:54,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:46:54,389.389 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:46:54,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:46:54,442.442 INFO    ] No camera update needed
[2026-06-22 18:46:54,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:46:54,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:46:54,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:46:54,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:46:56,500.500 INFO    ] ================================================
[2026-06-22 18:46:56,515.515 INFO    ] Launching Daemon at Mon Jun 22 18:46:56 IST 2026
[2026-06-22 18:46:56,527.527 INFO    ] ================================================
[2026-06-22 18:46:57,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:46:57
[2026-06-22 18:46:57,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:46:58,185.185 INFO    ] Initializing speech engine...
[2026-06-22 18:46:58,190.190 INFO    ] 2026-06-22 18:46:58
[2026-06-22 18:46:58,471.471 INFO    ] 2026-06-22 18:46:58
[2026-06-22 18:46:58,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:46:58,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:46:58,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:46:58,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:46:58,943.943 INFO    ] time= 22/06/2026 18:46:58
[2026-06-22 18:46:58,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:46:58,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:46:59,111.111 INFO    ] No existing commands found in stream
[2026-06-22 18:47:04,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:47:04,145.145 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-22 18:47:06,809.809 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:47:06,812.812 INFO    ] Checking for system updates...
[2026-06-22 18:47:06,852.852 INFO    ] 200
[2026-06-22 18:47:06,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:47:06,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:47:06,910.910 INFO    ] No update needed
[2026-06-22 18:47:06,912.912 INFO    ] Checking for camera pi updates...
[2026-06-22 18:47:06,946.946 INFO    ] 200
[2026-06-22 18:47:06,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:47:06,989.989 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:47:07,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:47:07,092.092 INFO    ] No camera update needed
[2026-06-22 18:47:07,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:47:07,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:47:07,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:47:07,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:47:09,147.147 INFO    ] ================================================
[2026-06-22 18:47:09,164.164 INFO    ] Launching Daemon at Mon Jun 22 18:47:09 IST 2026
[2026-06-22 18:47:09,178.178 INFO    ] ================================================
[2026-06-22 18:47:09,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:47:09
[2026-06-22 18:47:10,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:47:10,610.610 INFO    ] Initializing speech engine...
[2026-06-22 18:47:10,633.633 INFO    ] 2026-06-22 18:47:10
[2026-06-22 18:47:10,887.887 INFO    ] 2026-06-22 18:47:10
[2026-06-22 18:47:10,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:47:11,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:47:11,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:47:11,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:47:11,363.363 INFO    ] time= 22/06/2026 18:47:11
[2026-06-22 18:47:11,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:47:11,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:47:11,584.584 INFO    ] No existing commands found in stream
[2026-06-22 18:47:16,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:47:16,614.614 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-22 18:47:18,244.244 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:47:18,247.247 INFO    ] Checking for system updates...
[2026-06-22 18:47:18,284.284 INFO    ] 200
[2026-06-22 18:47:18,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:47:18,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:47:18,344.344 INFO    ] No update needed
[2026-06-22 18:47:18,347.347 INFO    ] Checking for camera pi updates...
[2026-06-22 18:47:18,382.382 INFO    ] 200
[2026-06-22 18:47:18,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:47:18,428.428 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:47:18,492.492 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:47:18,495.495 INFO    ] No camera update needed
[2026-06-22 18:47:18,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:47:18,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:47:18,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:47:18,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:47:20,554.554 INFO    ] ================================================
[2026-06-22 18:47:20,570.570 INFO    ] Launching Daemon at Mon Jun 22 18:47:20 IST 2026
[2026-06-22 18:47:20,581.581 INFO    ] ================================================
[2026-06-22 18:47:21,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:47:21
[2026-06-22 18:47:21,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:47:22,204.204 INFO    ] Initializing speech engine...
[2026-06-22 18:47:22,212.212 INFO    ] 2026-06-22 18:47:22
[2026-06-22 18:47:22,492.492 INFO    ] 2026-06-22 18:47:22
[2026-06-22 18:47:22,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:47:22,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:47:22,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:47:22,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:47:22,993.993 INFO    ] time= 22/06/2026 18:47:22
[2026-06-22 18:47:23,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:47:23,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:47:23,241.241 INFO    ] No existing commands found in stream
[2026-06-22 18:47:28,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:47:28,280.280 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-22 18:47:32,468.468 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:47:32,474.474 INFO    ] Checking for system updates...
[2026-06-22 18:47:32,516.516 INFO    ] 200
[2026-06-22 18:47:32,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:47:32,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:47:32,585.585 INFO    ] No update needed
[2026-06-22 18:47:32,588.588 INFO    ] Checking for camera pi updates...
[2026-06-22 18:47:32,624.624 INFO    ] 200
[2026-06-22 18:47:32,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:47:32,674.674 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:47:32,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:47:32,729.729 INFO    ] No camera update needed
[2026-06-22 18:47:32,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:47:32,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:47:32,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:47:32,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:47:34,789.789 INFO    ] ================================================
[2026-06-22 18:47:34,805.805 INFO    ] Launching Daemon at Mon Jun 22 18:47:34 IST 2026
[2026-06-22 18:47:34,816.816 INFO    ] ================================================
[2026-06-22 18:47:35,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:47:35
[2026-06-22 18:47:35,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:47:36,168.168 INFO    ] Initializing speech engine...
[2026-06-22 18:47:36,174.174 INFO    ] 2026-06-22 18:47:36
[2026-06-22 18:47:36,471.471 INFO    ] 2026-06-22 18:47:36
[2026-06-22 18:47:36,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:47:36,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:47:36,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:47:37,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:47:37,009.009 INFO    ] time= 22/06/2026 18:47:37
[2026-06-22 18:47:37,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:47:37,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:47:37,170.170 INFO    ] No existing commands found in stream
[2026-06-22 18:47:42,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:47:42,203.203 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-22 18:47:48,008.008 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:47:48,010.010 INFO    ] Checking for system updates...
[2026-06-22 18:47:48,032.032 INFO    ] 200
[2026-06-22 18:47:48,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:47:48,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:47:48,091.091 INFO    ] No update needed
[2026-06-22 18:47:48,094.094 INFO    ] Checking for camera pi updates...
[2026-06-22 18:47:48,131.131 INFO    ] 200
[2026-06-22 18:47:48,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:47:48,175.175 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:47:48,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:47:48,268.268 INFO    ] No camera update needed
[2026-06-22 18:47:48,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:47:48,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:47:48,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:47:48,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:47:50,328.328 INFO    ] ================================================
[2026-06-22 18:47:50,344.344 INFO    ] Launching Daemon at Mon Jun 22 18:47:50 IST 2026
[2026-06-22 18:47:50,356.356 INFO    ] ================================================
[2026-06-22 18:47:51,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:47:51
[2026-06-22 18:47:51,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:47:51,940.940 INFO    ] Initializing speech engine...
[2026-06-22 18:47:51,947.947 INFO    ] 2026-06-22 18:47:51
[2026-06-22 18:47:52,260.260 INFO    ] 2026-06-22 18:47:52
[2026-06-22 18:47:52,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:47:52,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:47:52,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:47:52,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:47:52,775.775 INFO    ] time= 22/06/2026 18:47:52
[2026-06-22 18:47:52,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:47:52,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:47:52,932.932 INFO    ] No existing commands found in stream
[2026-06-22 18:47:57,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:47:57,951.951 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-22 18:48:02,150.150 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:48:02,153.153 INFO    ] Checking for system updates...
[2026-06-22 18:48:02,194.194 INFO    ] 200
[2026-06-22 18:48:02,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:48:02,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:48:02,263.263 INFO    ] No update needed
[2026-06-22 18:48:02,266.266 INFO    ] Checking for camera pi updates...
[2026-06-22 18:48:02,304.304 INFO    ] 200
[2026-06-22 18:48:02,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:48:02,358.358 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:48:02,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:48:02,432.432 INFO    ] No camera update needed
[2026-06-22 18:48:02,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:48:02,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:48:02,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:48:02,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:48:04,502.502 INFO    ] ================================================
[2026-06-22 18:48:04,518.518 INFO    ] Launching Daemon at Mon Jun 22 18:48:04 IST 2026
[2026-06-22 18:48:04,529.529 INFO    ] ================================================
[2026-06-22 18:48:05,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:48:05
[2026-06-22 18:48:05,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:48:05,965.965 INFO    ] Initializing speech engine...
[2026-06-22 18:48:05,971.971 INFO    ] 2026-06-22 18:48:05
[2026-06-22 18:48:06,221.221 INFO    ] 2026-06-22 18:48:06
[2026-06-22 18:48:06,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:48:06,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:48:06,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:48:06,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:48:06,956.956 INFO    ] time= 22/06/2026 18:48:06
[2026-06-22 18:48:07,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:48:07,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:48:07,185.185 INFO    ] No existing commands found in stream
[2026-06-22 18:48:12,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:48:12,219.219 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-22 18:48:12,674.674 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:48:12,676.676 INFO    ] Checking for system updates...
[2026-06-22 18:48:12,712.712 INFO    ] 200
[2026-06-22 18:48:12,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:48:12,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:48:12,771.771 INFO    ] No update needed
[2026-06-22 18:48:12,773.773 INFO    ] Checking for camera pi updates...
[2026-06-22 18:48:12,807.807 INFO    ] 200
[2026-06-22 18:48:12,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:48:12,850.850 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:48:12,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:48:12,949.949 INFO    ] No camera update needed
[2026-06-22 18:48:12,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:48:12,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:48:12,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:48:12,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:48:15,004.004 INFO    ] ================================================
[2026-06-22 18:48:15,019.019 INFO    ] Launching Daemon at Mon Jun 22 18:48:15 IST 2026
[2026-06-22 18:48:15,030.030 INFO    ] ================================================
[2026-06-22 18:48:15,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:48:15
[2026-06-22 18:48:16,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:48:16,544.544 INFO    ] Initializing speech engine...
[2026-06-22 18:48:16,551.551 INFO    ] 2026-06-22 18:48:16
[2026-06-22 18:48:16,823.823 INFO    ] 2026-06-22 18:48:16
[2026-06-22 18:48:16,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:48:18,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:48:18,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:48:18,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:48:19,012.012 INFO    ] time= 22/06/2026 18:48:18
[2026-06-22 18:48:19,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:48:19,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:48:19,123.123 INFO    ] No existing commands found in stream
[2026-06-22 18:48:24,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:48:24,143.143 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-22 18:48:28,568.568 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:48:28,570.570 INFO    ] Checking for system updates...
[2026-06-22 18:48:28,591.591 INFO    ] 200
[2026-06-22 18:48:28,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:48:28,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:48:28,638.638 INFO    ] No update needed
[2026-06-22 18:48:28,641.641 INFO    ] Checking for camera pi updates...
[2026-06-22 18:48:28,676.676 INFO    ] 200
[2026-06-22 18:48:28,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:48:28,725.725 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:48:28,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:48:28,811.811 INFO    ] No camera update needed
[2026-06-22 18:48:28,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:48:28,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:48:28,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:48:28,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:48:30,870.870 INFO    ] ================================================
[2026-06-22 18:48:30,885.885 INFO    ] Launching Daemon at Mon Jun 22 18:48:30 IST 2026
[2026-06-22 18:48:30,896.896 INFO    ] ================================================
[2026-06-22 18:48:31,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:48:31
[2026-06-22 18:48:32,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:48:32,313.313 INFO    ] Initializing speech engine...
[2026-06-22 18:48:32,321.321 INFO    ] 2026-06-22 18:48:32
[2026-06-22 18:48:32,605.605 INFO    ] 2026-06-22 18:48:32
[2026-06-22 18:48:32,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:48:32,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:48:32,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:48:33,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:48:33,024.024 INFO    ] time= 22/06/2026 18:48:33
[2026-06-22 18:48:33,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:48:33,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:48:33,174.174 INFO    ] No existing commands found in stream
[2026-06-22 18:48:38,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:48:38,212.212 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-22 18:48:40,708.708 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:48:40,710.710 INFO    ] Checking for system updates...
[2026-06-22 18:48:40,746.746 INFO    ] 200
[2026-06-22 18:48:40,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:48:40,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:48:40,805.805 INFO    ] No update needed
[2026-06-22 18:48:40,808.808 INFO    ] Checking for camera pi updates...
[2026-06-22 18:48:40,848.848 INFO    ] 200
[2026-06-22 18:48:40,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:48:40,908.908 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:48:40,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:48:40,997.997 INFO    ] No camera update needed
[2026-06-22 18:48:41,000.000 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:48:41,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:48:41,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:48:41,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:48:43,053.053 INFO    ] ================================================
[2026-06-22 18:48:43,069.069 INFO    ] Launching Daemon at Mon Jun 22 18:48:43 IST 2026
[2026-06-22 18:48:43,080.080 INFO    ] ================================================
[2026-06-22 18:48:43,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:48:43
[2026-06-22 18:48:44,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:48:44,433.433 INFO    ] Initializing speech engine...
[2026-06-22 18:48:44,447.447 INFO    ] 2026-06-22 18:48:44
[2026-06-22 18:48:44,733.733 INFO    ] 2026-06-22 18:48:44
[2026-06-22 18:48:44,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:48:44,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:48:45,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:48:45,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:48:45,154.154 INFO    ] time= 22/06/2026 18:48:45
[2026-06-22 18:48:45,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:48:45,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:48:45,308.308 INFO    ] No existing commands found in stream
[2026-06-22 18:48:50,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:48:50,341.341 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-22 18:48:52,767.767 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:48:52,770.770 INFO    ] Checking for system updates...
[2026-06-22 18:48:52,807.807 INFO    ] 200
[2026-06-22 18:48:52,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:48:52,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:48:52,870.870 INFO    ] No update needed
[2026-06-22 18:48:52,872.872 INFO    ] Checking for camera pi updates...
[2026-06-22 18:48:52,907.907 INFO    ] 200
[2026-06-22 18:48:52,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:48:52,954.954 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:48:53,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:48:53,141.141 INFO    ] No camera update needed
[2026-06-22 18:48:53,143.143 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:48:53,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:48:53,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:48:53,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:48:55,198.198 INFO    ] ================================================
[2026-06-22 18:48:55,214.214 INFO    ] Launching Daemon at Mon Jun 22 18:48:55 IST 2026
[2026-06-22 18:48:55,226.226 INFO    ] ================================================
[2026-06-22 18:48:55,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:48:55
[2026-06-22 18:48:56,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:48:56,613.613 INFO    ] Initializing speech engine...
[2026-06-22 18:48:56,622.622 INFO    ] 2026-06-22 18:48:56
[2026-06-22 18:48:56,873.873 INFO    ] 2026-06-22 18:48:56
[2026-06-22 18:48:56,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:48:57,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:48:57,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:48:57,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:48:57,336.336 INFO    ] time= 22/06/2026 18:48:57
[2026-06-22 18:48:57,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:48:57,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:48:57,584.584 INFO    ] No existing commands found in stream
[2026-06-22 18:49:02,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:49:02,618.618 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-22 18:49:05,588.588 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:49:05,591.591 INFO    ] Checking for system updates...
[2026-06-22 18:49:05,627.627 INFO    ] 200
[2026-06-22 18:49:05,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:49:05,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:49:05,684.684 INFO    ] No update needed
[2026-06-22 18:49:05,687.687 INFO    ] Checking for camera pi updates...
[2026-06-22 18:49:05,723.723 INFO    ] 200
[2026-06-22 18:49:05,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:49:05,770.770 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:49:05,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:49:05,860.860 INFO    ] No camera update needed
[2026-06-22 18:49:05,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:49:05,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:49:05,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:49:05,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:49:07,916.916 INFO    ] ================================================
[2026-06-22 18:49:07,931.931 INFO    ] Launching Daemon at Mon Jun 22 18:49:07 IST 2026
[2026-06-22 18:49:07,942.942 INFO    ] ================================================
[2026-06-22 18:49:08,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:49:08
[2026-06-22 18:49:09,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:49:09,351.351 INFO    ] Initializing speech engine...
[2026-06-22 18:49:09,367.367 INFO    ] 2026-06-22 18:49:09
[2026-06-22 18:49:09,651.651 INFO    ] 2026-06-22 18:49:09
[2026-06-22 18:49:09,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:49:09,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:49:09,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:49:10,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:49:10,066.066 INFO    ] time= 22/06/2026 18:49:10
[2026-06-22 18:49:10,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:49:10,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:49:10,286.286 INFO    ] No existing commands found in stream
[2026-06-22 18:49:15,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:49:15,309.309 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-22 18:49:20,968.968 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:49:20,974.974 INFO    ] Checking for system updates...
[2026-06-22 18:49:21,026.026 INFO    ] 200
[2026-06-22 18:49:21,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:49:21,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:49:21,091.091 INFO    ] No update needed
[2026-06-22 18:49:21,093.093 INFO    ] Checking for camera pi updates...
[2026-06-22 18:49:21,128.128 INFO    ] 200
[2026-06-22 18:49:21,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:49:21,170.170 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:49:21,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:49:21,254.254 INFO    ] No camera update needed
[2026-06-22 18:49:21,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:49:21,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:49:21,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:49:21,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:49:23,310.310 INFO    ] ================================================
[2026-06-22 18:49:23,326.326 INFO    ] Launching Daemon at Mon Jun 22 18:49:23 IST 2026
[2026-06-22 18:49:23,336.336 INFO    ] ================================================
[2026-06-22 18:49:23,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:49:23
[2026-06-22 18:49:24,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:49:24,771.771 INFO    ] Initializing speech engine...
[2026-06-22 18:49:24,779.779 INFO    ] 2026-06-22 18:49:24
[2026-06-22 18:49:25,048.048 INFO    ] 2026-06-22 18:49:25
[2026-06-22 18:49:25,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:49:25,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:49:25,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:49:25,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:49:25,586.586 INFO    ] time= 22/06/2026 18:49:25
[2026-06-22 18:49:25,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:49:25,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:49:25,757.757 INFO    ] No existing commands found in stream
[2026-06-22 18:49:30,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:49:30,776.776 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-22 18:49:34,870.870 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:49:34,873.873 INFO    ] Checking for system updates...
[2026-06-22 18:49:34,904.904 INFO    ] 200
[2026-06-22 18:49:34,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:49:34,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:49:34,937.937 INFO    ] No update needed
[2026-06-22 18:49:34,938.938 INFO    ] Checking for camera pi updates...
[2026-06-22 18:49:34,958.958 INFO    ] 200
[2026-06-22 18:49:34,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:49:34,982.982 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:49:35,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:49:35,065.065 INFO    ] No camera update needed
[2026-06-22 18:49:35,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:49:35,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:49:35,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:49:35,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:49:37,122.122 INFO    ] ================================================
[2026-06-22 18:49:37,139.139 INFO    ] Launching Daemon at Mon Jun 22 18:49:37 IST 2026
[2026-06-22 18:49:37,149.149 INFO    ] ================================================
[2026-06-22 18:49:37,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:49:37
[2026-06-22 18:49:38,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:49:38,595.595 INFO    ] Initializing speech engine...
[2026-06-22 18:49:38,619.619 INFO    ] 2026-06-22 18:49:38
[2026-06-22 18:49:38,884.884 INFO    ] 2026-06-22 18:49:38
[2026-06-22 18:49:38,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:49:39,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:49:39,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:49:39,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:49:39,294.294 INFO    ] time= 22/06/2026 18:49:39
[2026-06-22 18:49:39,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:49:39,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:49:39,446.446 INFO    ] No existing commands found in stream
[2026-06-22 18:49:44,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:49:44,474.474 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-22 18:49:47,385.385 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:49:47,387.387 INFO    ] Checking for system updates...
[2026-06-22 18:49:47,423.423 INFO    ] 200
[2026-06-22 18:49:47,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:49:47,478.478 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:49:47,481.481 INFO    ] No update needed
[2026-06-22 18:49:47,483.483 INFO    ] Checking for camera pi updates...
[2026-06-22 18:49:47,516.516 INFO    ] 200
[2026-06-22 18:49:47,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:49:47,564.564 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:49:47,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:49:47,646.646 INFO    ] No camera update needed
[2026-06-22 18:49:47,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:49:47,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:49:47,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:49:47,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:49:49,701.701 INFO    ] ================================================
[2026-06-22 18:49:49,716.716 INFO    ] Launching Daemon at Mon Jun 22 18:49:49 IST 2026
[2026-06-22 18:49:49,726.726 INFO    ] ================================================
[2026-06-22 18:49:50,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:49:50
[2026-06-22 18:49:50,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:49:51,158.158 INFO    ] Initializing speech engine...
[2026-06-22 18:49:51,168.168 INFO    ] 2026-06-22 18:49:51
[2026-06-22 18:49:51,430.430 INFO    ] 2026-06-22 18:49:51
[2026-06-22 18:49:51,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:49:52,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:49:52,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:49:52,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:49:52,650.650 INFO    ] time= 22/06/2026 18:49:52
[2026-06-22 18:49:52,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:49:52,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:49:52,788.788 INFO    ] No existing commands found in stream
[2026-06-22 18:49:57,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:49:57,800.800 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-22 18:50:01,233.233 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 18:50:01,236.236 INFO    ] Checking for system updates...
[2026-06-22 18:50:01,273.273 INFO    ] 200
[2026-06-22 18:50:01,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:50:01,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:50:01,330.330 INFO    ] No update needed
[2026-06-22 18:50:01,332.332 INFO    ] Checking for camera pi updates...
[2026-06-22 18:50:01,366.366 INFO    ] 200
[2026-06-22 18:50:01,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:50:01,409.409 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:50:01,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:50:01,520.520 INFO    ] No camera update needed
[2026-06-22 18:50:01,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:50:01,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:50:01,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:50:01,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:50:03,583.583 INFO    ] ================================================
[2026-06-22 18:50:03,620.620 INFO    ] Launching Daemon at Mon Jun 22 18:50:03 IST 2026
[2026-06-22 18:50:03,634.634 INFO    ] ================================================
[2026-06-22 18:50:04,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:50:04
[2026-06-22 18:50:04,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:50:05,235.235 INFO    ] Initializing speech engine...
[2026-06-22 18:50:05,243.243 INFO    ] 2026-06-22 18:50:05
[2026-06-22 18:50:05,519.519 INFO    ] 2026-06-22 18:50:05
[2026-06-22 18:50:05,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:50:05,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:50:05,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:50:05,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:50:06,003.003 INFO    ] time= 22/06/2026 18:50:05
[2026-06-22 18:50:06,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:50:06,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:50:06,158.158 INFO    ] No existing commands found in stream
[2026-06-22 18:50:11,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:50:11,170.170 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-22 18:50:14,342.342 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:50:14,344.344 INFO    ] Checking for system updates...
[2026-06-22 18:50:14,380.380 INFO    ] 200
[2026-06-22 18:50:14,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:50:14,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:50:14,444.444 INFO    ] No update needed
[2026-06-22 18:50:14,447.447 INFO    ] Checking for camera pi updates...
[2026-06-22 18:50:14,483.483 INFO    ] 200
[2026-06-22 18:50:14,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:50:14,527.527 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:50:14,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:50:14,636.636 INFO    ] No camera update needed
[2026-06-22 18:50:14,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:50:14,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:50:14,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:50:14,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:50:16,691.691 INFO    ] ================================================
[2026-06-22 18:50:16,707.707 INFO    ] Launching Daemon at Mon Jun 22 18:50:16 IST 2026
[2026-06-22 18:50:16,717.717 INFO    ] ================================================
[2026-06-22 18:50:17,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:50:17
[2026-06-22 18:50:17,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:50:18,213.213 INFO    ] Initializing speech engine...
[2026-06-22 18:50:18,223.223 INFO    ] 2026-06-22 18:50:18
[2026-06-22 18:50:18,481.481 INFO    ] 2026-06-22 18:50:18
[2026-06-22 18:50:18,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:50:21,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:50:21,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:50:22,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:50:22,240.240 INFO    ] time= 22/06/2026 18:50:22
[2026-06-22 18:50:22,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:50:22,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:50:22,311.311 INFO    ] No existing commands found in stream
[2026-06-22 18:50:27,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:50:27,323.323 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-22 18:50:28,563.563 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:50:28,566.566 INFO    ] Checking for system updates...
[2026-06-22 18:50:28,604.604 INFO    ] 200
[2026-06-22 18:50:28,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:50:28,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:50:28,663.663 INFO    ] No update needed
[2026-06-22 18:50:28,666.666 INFO    ] Checking for camera pi updates...
[2026-06-22 18:50:28,703.703 INFO    ] 200
[2026-06-22 18:50:28,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:50:28,752.752 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:50:28,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:50:28,845.845 INFO    ] No camera update needed
[2026-06-22 18:50:28,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:50:28,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:50:28,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:50:28,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:50:30,907.907 INFO    ] ================================================
[2026-06-22 18:50:30,922.922 INFO    ] Launching Daemon at Mon Jun 22 18:50:30 IST 2026
[2026-06-22 18:50:30,933.933 INFO    ] ================================================
[2026-06-22 18:50:31,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:50:31
[2026-06-22 18:50:32,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:50:32,457.457 INFO    ] Initializing speech engine...
[2026-06-22 18:50:32,468.468 INFO    ] 2026-06-22 18:50:32
[2026-06-22 18:50:32,777.777 INFO    ] 2026-06-22 18:50:32
[2026-06-22 18:50:32,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:50:33,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:50:33,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:50:33,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:50:33,364.364 INFO    ] time= 22/06/2026 18:50:33
[2026-06-22 18:50:33,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:50:33,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:50:33,518.518 INFO    ] No existing commands found in stream
[2026-06-22 18:50:38,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:50:38,544.544 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-22 18:50:39,532.532 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:50:39,535.535 INFO    ] Checking for system updates...
[2026-06-22 18:50:39,570.570 INFO    ] 200
[2026-06-22 18:50:39,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:50:39,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:50:39,634.634 INFO    ] No update needed
[2026-06-22 18:50:39,636.636 INFO    ] Checking for camera pi updates...
[2026-06-22 18:50:39,671.671 INFO    ] 200
[2026-06-22 18:50:39,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:50:39,715.715 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:50:39,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:50:39,800.800 INFO    ] No camera update needed
[2026-06-22 18:50:39,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:50:39,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:50:39,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:50:39,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:50:41,860.860 INFO    ] ================================================
[2026-06-22 18:50:41,875.875 INFO    ] Launching Daemon at Mon Jun 22 18:50:41 IST 2026
[2026-06-22 18:50:41,886.886 INFO    ] ================================================
[2026-06-22 18:50:42,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:50:42
[2026-06-22 18:50:43,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:50:43,317.317 INFO    ] Initializing speech engine...
[2026-06-22 18:50:43,333.333 INFO    ] 2026-06-22 18:50:43
[2026-06-22 18:50:43,589.589 INFO    ] 2026-06-22 18:50:43
[2026-06-22 18:50:43,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:50:43,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:50:43,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:50:44,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:50:44,157.157 INFO    ] time= 22/06/2026 18:50:44
[2026-06-22 18:50:44,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:50:44,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:50:44,295.295 INFO    ] No existing commands found in stream
[2026-06-22 18:50:49,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:50:49,326.326 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-22 18:50:54,013.013 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 18:50:54,016.016 INFO    ] Checking for system updates...
[2026-06-22 18:50:54,058.058 INFO    ] 200
[2026-06-22 18:50:54,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:50:54,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:50:54,119.119 INFO    ] No update needed
[2026-06-22 18:50:54,122.122 INFO    ] Checking for camera pi updates...
[2026-06-22 18:50:54,156.156 INFO    ] 200
[2026-06-22 18:50:54,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:50:54,199.199 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:50:54,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:50:54,307.307 INFO    ] No camera update needed
[2026-06-22 18:50:54,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:50:54,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:50:54,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:50:54,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:50:56,366.366 INFO    ] ================================================
[2026-06-22 18:50:56,381.381 INFO    ] Launching Daemon at Mon Jun 22 18:50:56 IST 2026
[2026-06-22 18:50:56,392.392 INFO    ] ================================================
[2026-06-22 18:50:56,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:50:56
[2026-06-22 18:50:57,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:50:57,762.762 INFO    ] Initializing speech engine...
[2026-06-22 18:50:57,778.778 INFO    ] 2026-06-22 18:50:57
[2026-06-22 18:50:58,035.035 INFO    ] 2026-06-22 18:50:58
[2026-06-22 18:50:58,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:50:58,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:50:58,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:50:58,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:50:58,513.513 INFO    ] time= 22/06/2026 18:50:58
[2026-06-22 18:50:58,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:50:58,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:50:58,735.735 INFO    ] No existing commands found in stream
[2026-06-22 18:51:03,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:51:03,763.763 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-22 18:51:04,964.964 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:51:04,967.967 INFO    ] Checking for system updates...
[2026-06-22 18:51:05,002.002 INFO    ] 200
[2026-06-22 18:51:05,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:51:05,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:51:05,074.074 INFO    ] No update needed
[2026-06-22 18:51:05,077.077 INFO    ] Checking for camera pi updates...
[2026-06-22 18:51:05,111.111 INFO    ] 200
[2026-06-22 18:51:05,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:51:05,160.160 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:51:05,212.212 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:51:05,214.214 INFO    ] No camera update needed
[2026-06-22 18:51:05,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:51:05,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:51:05,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:51:05,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:51:07,275.275 INFO    ] ================================================
[2026-06-22 18:51:07,291.291 INFO    ] Launching Daemon at Mon Jun 22 18:51:07 IST 2026
[2026-06-22 18:51:07,302.302 INFO    ] ================================================
[2026-06-22 18:51:07,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:51:07
[2026-06-22 18:51:08,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:51:08,920.920 INFO    ] Initializing speech engine...
[2026-06-22 18:51:08,927.927 INFO    ] 2026-06-22 18:51:08
[2026-06-22 18:51:09,239.239 INFO    ] 2026-06-22 18:51:09
[2026-06-22 18:51:09,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:51:09,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:51:09,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:51:09,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:51:09,759.759 INFO    ] time= 22/06/2026 18:51:09
[2026-06-22 18:51:09,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:51:09,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:51:09,900.900 INFO    ] No existing commands found in stream
[2026-06-22 18:51:14,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:51:14,925.925 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-22 18:51:19,378.378 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 18:51:19,381.381 INFO    ] Checking for system updates...
[2026-06-22 18:51:19,422.422 INFO    ] 200
[2026-06-22 18:51:19,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:51:19,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:51:19,481.481 INFO    ] No update needed
[2026-06-22 18:51:19,484.484 INFO    ] Checking for camera pi updates...
[2026-06-22 18:51:19,522.522 INFO    ] 200
[2026-06-22 18:51:19,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:51:19,570.570 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:51:19,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:51:19,662.662 INFO    ] No camera update needed
[2026-06-22 18:51:19,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:51:19,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:51:19,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:51:19,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:51:21,710.710 INFO    ] ================================================
[2026-06-22 18:51:21,725.725 INFO    ] Launching Daemon at Mon Jun 22 18:51:21 IST 2026
[2026-06-22 18:51:21,736.736 INFO    ] ================================================
[2026-06-22 18:51:22,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:51:22
[2026-06-22 18:51:22,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:51:23,166.166 INFO    ] Initializing speech engine...
[2026-06-22 18:51:23,183.183 INFO    ] 2026-06-22 18:51:23
[2026-06-22 18:51:23,459.459 INFO    ] 2026-06-22 18:51:23
[2026-06-22 18:51:23,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:51:24,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:51:24,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:51:24,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:51:24,200.200 INFO    ] time= 22/06/2026 18:51:24
[2026-06-22 18:51:24,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:51:24,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:51:24,295.295 INFO    ] No existing commands found in stream
[2026-06-22 18:51:29,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:51:29,324.324 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-22 18:51:30,232.232 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:51:30,235.235 INFO    ] Checking for system updates...
[2026-06-22 18:51:30,274.274 INFO    ] 200
[2026-06-22 18:51:30,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:51:30,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:51:30,333.333 INFO    ] No update needed
[2026-06-22 18:51:30,336.336 INFO    ] Checking for camera pi updates...
[2026-06-22 18:51:30,374.374 INFO    ] 200
[2026-06-22 18:51:30,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:51:30,417.417 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:51:30,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:51:30,501.501 INFO    ] No camera update needed
[2026-06-22 18:51:30,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:51:30,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:51:30,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:51:30,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:51:32,553.553 INFO    ] ================================================
[2026-06-22 18:51:32,570.570 INFO    ] Launching Daemon at Mon Jun 22 18:51:32 IST 2026
[2026-06-22 18:51:32,585.585 INFO    ] ================================================
[2026-06-22 18:51:33,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:51:33
[2026-06-22 18:51:33,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:51:34,036.036 INFO    ] Initializing speech engine...
[2026-06-22 18:51:34,042.042 INFO    ] 2026-06-22 18:51:34
[2026-06-22 18:51:34,338.338 INFO    ] 2026-06-22 18:51:34
[2026-06-22 18:51:34,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:51:34,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:51:34,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:51:34,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:51:34,758.758 INFO    ] time= 22/06/2026 18:51:34
[2026-06-22 18:51:34,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:51:34,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:51:34,935.935 INFO    ] No existing commands found in stream
[2026-06-22 18:51:39,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:51:39,958.958 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-22 18:51:43,954.954 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:51:43,957.957 INFO    ] Checking for system updates...
[2026-06-22 18:51:43,993.993 INFO    ] 200
[2026-06-22 18:51:43,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:51:44,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:51:44,057.057 INFO    ] No update needed
[2026-06-22 18:51:44,060.060 INFO    ] Checking for camera pi updates...
[2026-06-22 18:51:44,097.097 INFO    ] 200
[2026-06-22 18:51:44,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:51:44,140.140 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:51:44,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:51:44,239.239 INFO    ] No camera update needed
[2026-06-22 18:51:44,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:51:44,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:51:44,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:51:44,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:51:46,295.295 INFO    ] ================================================
[2026-06-22 18:51:46,311.311 INFO    ] Launching Daemon at Mon Jun 22 18:51:46 IST 2026
[2026-06-22 18:51:46,322.322 INFO    ] ================================================
[2026-06-22 18:51:46,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:51:46
[2026-06-22 18:51:47,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:51:47,677.677 INFO    ] Initializing speech engine...
[2026-06-22 18:51:47,686.686 INFO    ] 2026-06-22 18:51:47
[2026-06-22 18:51:47,962.962 INFO    ] 2026-06-22 18:51:47
[2026-06-22 18:51:47,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:51:48,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:51:48,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:51:48,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:51:48,416.416 INFO    ] time= 22/06/2026 18:51:48
[2026-06-22 18:51:48,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:51:48,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:51:48,654.654 INFO    ] No existing commands found in stream
[2026-06-22 18:51:53,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:51:53,685.685 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-22 18:51:55,556.556 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:51:55,559.559 INFO    ] Checking for system updates...
[2026-06-22 18:51:55,599.599 INFO    ] 200
[2026-06-22 18:51:55,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:51:55,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:51:55,660.660 INFO    ] No update needed
[2026-06-22 18:51:55,663.663 INFO    ] Checking for camera pi updates...
[2026-06-22 18:51:55,697.697 INFO    ] 200
[2026-06-22 18:51:55,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:51:55,742.742 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:51:55,811.811 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:51:55,814.814 INFO    ] No camera update needed
[2026-06-22 18:51:55,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:51:55,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:51:55,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:51:55,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:51:57,877.877 INFO    ] ================================================
[2026-06-22 18:51:57,893.893 INFO    ] Launching Daemon at Mon Jun 22 18:51:57 IST 2026
[2026-06-22 18:51:57,905.905 INFO    ] ================================================
[2026-06-22 18:51:58,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:51:58
[2026-06-22 18:51:59,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:51:59,558.558 INFO    ] Initializing speech engine...
[2026-06-22 18:51:59,572.572 INFO    ] 2026-06-22 18:51:59
[2026-06-22 18:51:59,844.844 INFO    ] 2026-06-22 18:51:59
[2026-06-22 18:51:59,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:52:00,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:52:00,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:52:00,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:52:00,359.359 INFO    ] time= 22/06/2026 18:52:00
[2026-06-22 18:52:00,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:52:00,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:52:00,598.598 INFO    ] Found 1 existing command(s) in stream
[2026-06-22 18:52:00,660.660 INFO    ] Checking historical command: ID=1782134520244-0
[2026-06-22 18:52:00,713.713 INFO    ] process_and_cleanup_command: msg_id=1782134520244-0
[2026-06-22 18:52:00,771.771 INFO    ] is_command_expired: timestamp=2026-06-22T13:21:59.901Z, expiry=30s
[2026-06-22 18:52:01,030.030 INFO    ] Command removed from stream: 1782134520244-0. returning for processing...
[2026-06-22 18:52:01,069.069 INFO    ] ***** get_valid_command
[2026-06-22 18:52:01,076.076 INFO    ] {'data': '{"request_id":"start-order-1782134519901-2be6tldx2","orderId":"TM06202507260622185053633","is_vending":false}', 'timestamp': '2026-06-22T13:21:59.901Z', 'command': 'start-order', 'timeout': '10', 'source': 'webapp'}
[2026-06-22 18:52:01,128.128 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1782134519901-2be6tldx2', 'is_vending': False, 'orderId': 'TM06202507260622185053633'}
[2026-06-22 18:52:01,132.132 INFO    ] Handling start order...
[2026-06-22 18:52:01,166.166 INFO    ] handle_start_order_command
[2026-06-22 18:52:01,192.192 INFO    ] _send_start_order_success: request_id=start-order-1782134519901-2be6tldx2, order_id=TM06202507260622185053633
[2026-06-22 18:52:01,198.198 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM06202507
[2026-06-22 18:52:01,262.262 INFO    ] [_send_start_order_success] Message added to stream with ID: 1782134521226-0
[2026-06-22 18:52:01,267.267 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-22 18:52:01,272.272 INFO    ] Checking for system updates...
[2026-06-22 18:52:01,515.515 INFO    ] 200
[2026-06-22 18:52:01,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:52:01,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:52:01,751.751 INFO    ] No update needed
[2026-06-22 18:52:01,755.755 INFO    ] Checking for camera pi updates...
[2026-06-22 18:52:01,943.943 INFO    ] 200
[2026-06-22 18:52:01,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:52:02,150.150 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:52:02,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:52:02,238.238 INFO    ] No camera update needed
[2026-06-22 18:52:02,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:52:02,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:52:02,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:52:02,301.301 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-22 18:52:02,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:52:04,364.364 INFO    ] ================================================
[2026-06-22 18:52:04,381.381 INFO    ] Launching Daemon at Mon Jun 22 18:52:04 IST 2026
[2026-06-22 18:52:04,392.392 INFO    ] ================================================
[2026-06-22 18:52:05,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:52:05
[2026-06-22 18:52:05,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:52:06,079.079 INFO    ] Initializing speech engine...
[2026-06-22 18:52:06,090.090 INFO    ] 2026-06-22 18:52:06
[2026-06-22 18:52:06,405.405 INFO    ] 2026-06-22 18:52:06
[2026-06-22 18:52:06,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:52:06,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:52:06,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:52:06,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:52:06,991.991 INFO    ] time= 22/06/2026 18:52:06
[2026-06-22 18:52:07,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:52:07,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:52:07,142.142 INFO    ] Found 2 existing command(s) in stream
[2026-06-22 18:52:07,199.199 INFO    ] Checking historical command: ID=1782134521226-0
[2026-06-22 18:52:07,263.263 INFO    ] process_and_cleanup_command: msg_id=1782134521226-0
[2026-06-22 18:52:07,288.288 INFO    ] is_command_expired: timestamp=2026-06-22T13:22:01.194224Z, expiry=30s
[2026-06-22 18:52:07,495.495 INFO    ] Command removed from stream: 1782134521226-0. returning for processing...
[2026-06-22 18:52:07,506.506 INFO    ] ***** get_valid_command
[2026-06-22 18:52:07,509.509 INFO    ] {'metadata_request_id': 'start-order-1782134519901-2be6tldx2', 'message': 'start-order success', 'message_type': 'command_response', 'metadata_order_id': 'TM06202507260622185053633', 'imei': 'TM06202507', 'status': 'success', 'timestamp': '2026-06-22T13:22:01.194224Z'}
[2026-06-22 18:52:07,512.512 INFO    ] Checking historical command: ID=1782134523482-0
[2026-06-22 18:52:07,515.515 INFO    ] process_and_cleanup_command: msg_id=1782134523482-0
[2026-06-22 18:52:07,534.534 INFO    ] is_command_expired: timestamp=2026-06-22T13:22:03.211Z, expiry=30s
[2026-06-22 18:52:07,701.701 INFO    ] Command removed from stream: 1782134523482-0. returning for processing...
[2026-06-22 18:52:07,709.709 INFO    ] ***** get_valid_command
[2026-06-22 18:52:07,757.757 INFO    ] {'data': '{"request_id":"process-order-1782134523211-cmr3jrqhd","orderId":"TM06202507260622185053633","is_vending":false,"accessCode":"66643006"}', 'command': 'process-order', 'timeout': '60', 'source': 'webapp', 'timestamp': '2026-06-22T13:22:03.211Z'}
[2026-06-22 18:52:07,763.763 INFO    ] ***** Parsed command data: {'is_vending': False, 'accessCode': '66643006', 'request_id': 'process-order-1782134523211-cmr3jrqhd', 'orderId': 'TM06202507260622185053633'}
[2026-06-22 18:52:07,769.769 INFO    ] Handling process order...
[2026-06-22 18:52:07,775.775 INFO    ] Processing process-order command...
[2026-06-22 18:52:07,780.780 INFO    ] 🔍 Lock file Order ID: TM06202507260622185053633, TS: 2026-06-22 18:52:01
[2026-06-22 18:52:07,799.799 INFO    ] ✅ Order lock valid for TM06202507260622185053633
[2026-06-22 18:52:07,803.803 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-22 18:52:07,808.808 INFO    ] processing access code 66643006 for order TM06202507260622185053633
[2026-06-22 18:52:07,814.814 INFO    ] 🔍 Lock file Order ID: TM06202507260622185053633, TS: 2026-06-22 18:52:01
[2026-06-22 18:52:07,819.819 INFO    ] ✅ Order lock valid for TM06202507260622185053633
[2026-06-22 18:52:07,825.825 INFO    ] 2026-06-22 18:52:07
[2026-06-22 18:52:07,942.942 INFO    ] 200
[2026-06-22 18:52:07,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:52:07,980.980 INFO    ] 66643006
[2026-06-22 18:52:07,989.989 INFO    ] 2026-06-22 18:52:07
[2026-06-22 18:52:07,996.996 INFO    ] session id :429323108
[2026-06-22 18:52:08,003.003 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=66643006&imei=TM06202507&session_id=429323108
[2026-06-22 18:52:09,246.246 INFO    ] 200
[2026-06-22 18:52:09,280.280 INFO    ] {"data": {"mobile": "7760014813", "order_id": "TM06202507260622185053633", "access_code": "66643006", "bill_amount": "60", "proposed_sku_json": [{"tray_id": "36", "qty": 1, "mrp": "60", "door_id": "2", "name": "Aatral Natural Electrolytes 200ml", "sku_total": 60, "image_url": "https://images.tinymart.in/product/4500694-1219.png", "offer_desc": "", "unit_price": 60, "skuid": "4500694", "offer_id": ""}], "invoice_bill": "60"}, "msg": "Order Data", "status": true, "rstatus": true}
[2026-06-22 18:52:09,290.290 INFO    ] 60
[2026-06-22 18:52:09,299.299 INFO    ] TM06202507260622185053633
[2026-06-22 18:52:09,305.305 INFO    ] 7760014813
[2026-06-22 18:52:09,313.313 INFO    ] 2026-06-22 18:52:09
[2026-06-22 18:52:09,319.319 INFO    ] Door Opening for user mobile ending with  four eight one three 
[2026-06-22 18:52:09,348.348 INFO    ] Door Opening for user mobile ending with  four eight one three 
[2026-06-22 18:52:09,359.359 INFO    ] 6cbe2fdaa906a9e3f95d2892cb3c9946
[2026-06-22 18:52:09,386.386 INFO    ] 2026-06-22 18:52:09
[2026-06-22 18:52:09,391.391 INFO    ] playing audio file
[2026-06-22 18:52:09,414.414 INFO    ] 2026-06-22 18:52:09
[2026-06-22 18:52:09,428.428 INFO    ] 2026-06-22 18:52:09
[2026-06-22 18:52:09,448.448 INFO    ] publish_status: order_id=TM06202507260622185053633
[2026-06-22 18:52:09,473.473 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622185053633
[2026-06-22 18:52:09,626.626 INFO    ] [publish_status] Message added to stream with ID: 1782134529542-0
[2026-06-22 18:52:09,641.641 INFO    ] Published to order:TM06202507260622185053633: {'server_response': '{"data": {"mobile": "7760014813", "proposed_sku_json": [{"unit_price": 60, "image_url": "https://images.tinymart.in/product/4500694-1219.png", "tray_id": "36", "qty": 1, "name": "Aatral Natural Electrolytes 200ml", "skuid": "4500694", "door_id": "2", "sku_total": 60, "offer_desc": "", "mrp": "60", "offer_id": ""}], "access_code": "66643006", "invoice_bill": "60", "bill_amount": "60", "order_id": "TM06202507260622185053633"}, "msg": "Order Data", "status": true, "rstatus": true}', 'server_status': 'order-started', 'order_id': 'TM06202507260622185053633', 'timestamp': '2026-06-22T13:22:09.429656Z'} (ID: 1782134529542-0)
[2026-06-22 18:52:10,252.252 INFO    ] {'server_response': {'data': {'mobile': '7760014813', 'proposed_sku_json': [{'unit_price': 60, 'image_url': 'https://images.tinymart.in/product/4500694-1219.png', 'tray_id': '36', 'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml', 'skuid': '4500694', 'door_id': '2', 'sku_total': 60, 'offer_desc': '', 'mrp': '60', 'offer_id': ''}], 'access_code': '66643006', 'invoice_bill': '60', 'bill_amount': '60', 'order_id': 'TM06202507260622185053633'}, 'msg': 'Order Data', 'status': True, 'rstatus': True}, 'server_status': 'order-started', 'order_id': 'TM06202507260622185053633'}
[2026-06-22 18:52:10,255.255 INFO    ] 200
[2026-06-22 18:52:10,257.257 INFO    ] {"data":{"server_response":{"data":{"mobile":"7760014813","proposed_sku_json":[{"unit_price":60,"image_url":"https:\/\/images.tinymart.in\/product\/4500694-1219.png","tray_id":"36","qty":1,"name":"Aatral Natural Electrolytes 200ml","skuid":"4500694","door_id":"2","sku_total":60,"offer_desc":"","mrp":"60","offer_id":""}],"access_code":"66643006","invoice_bill":"60","bill_amount":"60","order_id":"TM06202507260622185053633"},"msg":"Order Data","status":true,"rstatus":true},"server_status":"order-started","order_id":"TM06202507260622185053633"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 18:52:10,260.260 INFO    ] {'data': {'server_response': {'data': {'mobile': '7760014813', 'proposed_sku_json': [{'unit_price': 60, 'tray_id': '36', 'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml', 'offer_desc': '', 'sku_total': 60, 'door_id': '2', 'skuid': '4500694', 'image_url': 'https://images.tinymart.in/product/4500694-1219.png', 'mrp': '60', 'offer_id': ''}], 'access_code': '66643006', 'invoice_bill': '60', 'bill_amount': '60', 'order_id': 'TM06202507260622185053633'}, 'msg': 'Order Data', 'status': True, 'rstatus': True}, 'server_status': 'order-started', 'order_id': 'TM06202507260622185053633'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-22 18:52:10,263.263 INFO    ] 2026-06-22 18:52:10
[2026-06-22 18:52:10,331.331 INFO    ] 200
[2026-06-22 18:52:10,333.333 INFO    ] True
[2026-06-22 18:52:10,475.475 INFO    ] 200
[2026-06-22 18:52:10,478.478 INFO    ] {"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": ""}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 18:52:10,482.482 INFO    ] {'voiceNote': 'Please Wait', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': ''}}
[2026-06-22 18:52:10,486.486 INFO    ] *** process_order ***
[2026-06-22 18:52:11,666.666 INFO    ] 200
[2026-06-22 18:52:11,668.668 INFO    ] {"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": ""}, "rstatus": true, "delay": 0, "status": "True", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 18:52:11,671.671 INFO    ] {'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'status': 'True', 'rstatus': True, 'delay': 0}
[2026-06-22 18:52:11,673.673 INFO    ] *** process_order ***
[2026-06-22 18:52:11,676.676 INFO    ] publish_status: order_id=TM06202507260622185053633
[2026-06-22 18:52:11,679.679 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622185053633
[2026-06-22 18:52:11,763.763 INFO    ] [publish_status] Message added to stream with ID: 1782134531732-0
[2026-06-22 18:52:11,765.765 INFO    ] Published to order:TM06202507260622185053633: {'server_response': '{"delay": 0, "voiceNote": "Door is open...", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "status": "True", "rstatus": true, "SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "SubHeader": "You can pull the door now.", "Note": ""}}', 'server_status': 'doorOpened', 'order_id': 'TM06202507260622185053633'} (ID: 1782134531732-0)
[2026-06-22 18:52:12,849.849 INFO    ] 2026-06-22 18:52:12
[2026-06-22 18:52:12,851.851 INFO    ] publish_status: order_id=TM06202507260622185053633
[2026-06-22 18:52:12,854.854 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622185053633
[2026-06-22 18:52:12,963.963 INFO    ] [publish_status] Message added to stream with ID: 1782134532932-0
[2026-06-22 18:52:12,966.966 INFO    ] Published to order:TM06202507260622185053633: {'server_response': '{"voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "Note": ""}, "status": "True", "rstatus": true, "delay": 0}', 'server_status': 'processOrder', 'order_id': 'TM06202507260622185053633', 'timestamp': '2026-06-22T13:22:12.850285Z'} (ID: 1782134532932-0)
[2026-06-22 18:52:13,096.096 INFO    ] {'server_response': {'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'status': 'True', 'rstatus': True, 'delay': 0}, 'server_status': 'processOrder', 'order_id': 'TM06202507260622185053633'}
[2026-06-22 18:52:13,102.102 INFO    ] 200
[2026-06-22 18:52:13,104.104 INFO    ] {"data":{"server_response":{"voiceNote":"Please Wait","SectionMain":{"Header":"Processing Order"},"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"SectionStatus":{"UI_Header":"","Header":" Your order is under process  ","SubHeader":"Please wait while we process your order","Note":""},"status":"true","rstatus":true,"delay":0},"server_status":"processOrder","order_id":"TM06202507260622185053633"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 18:52:13,108.108 INFO    ] {'data': {'server_response': {'delay': 0, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'true', 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'rstatus': True}, 'server_status': 'processOrder', 'order_id': 'TM06202507260622185053633'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-22 18:52:13,110.110 INFO    ] 2026-06-22 18:52:13
[2026-06-22 18:52:13,112.112 INFO    ] None
[2026-06-22 18:52:13,115.115 INFO    ] Opening Door now
[2026-06-22 18:52:13,117.117 INFO    ] Opening Door now
[2026-06-22 18:52:13,120.120 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-22 18:52:13,122.122 INFO    ] 2026-06-22 18:52:13
[2026-06-22 18:52:13,125.125 INFO    ] playing audio file
[2026-06-22 18:52:13,142.142 INFO    ] 2026-06-22 18:52:13
[2026-06-22 18:52:13,145.145 INFO    ] 2026-06-22 18:52:13
[2026-06-22 18:52:16,212.212 INFO    ] 200
[2026-06-22 18:52:16,215.215 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Aatral Natural Electrolytes 200ml"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Door 2 is open now"}
[2026-06-22 18:52:16,219.219 INFO    ] {'voiceNote': 'Door 2 is open now', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}}
[2026-06-22 18:52:19,301.301 INFO    ] 200
[2026-06-22 18:52:19,303.303 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Aatral Natural Electrolytes 200ml"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2"}
[2026-06-22 18:52:19,307.307 INFO    ] {'voiceNote': 'Please close door 2', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}}
[2026-06-22 18:52:22,384.384 INFO    ] 200
[2026-06-22 18:52:22,387.387 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Aatral Natural Electrolytes 200ml"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2"}
[2026-06-22 18:52:22,391.391 INFO    ] Please close door 2
[2026-06-22 18:52:22,394.394 INFO    ] Please close door 2
[2026-06-22 18:52:22,397.397 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-22 18:52:22,399.399 INFO    ] 2026-06-22 18:52:22
[2026-06-22 18:52:22,402.402 INFO    ] playing audio file
[2026-06-22 18:52:22,420.420 INFO    ] 2026-06-22 18:52:22
[2026-06-22 18:52:22,424.424 INFO    ] publish_status: order_id=TM06202507260622185053633
[2026-06-22 18:52:22,428.428 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622185053633
[2026-06-22 18:52:22,514.514 INFO    ] [publish_status] Message added to stream with ID: 1782134542482-0
[2026-06-22 18:52:22,518.518 INFO    ] Published to order:TM06202507260622185053633: {'server_response': '{"voiceNote": "Please close door 2", "error": {"data": {}, "code": 20001, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"skus": [{"qty": 1, "name": "Aatral Natural Electrolytes 200ml"}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "status": "False", "rstatus": false, "SectionStatus": {"UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products"}}', 'server_status': 'OrderStatus', 'order_id': 'TM06202507260622185053633', 'timestamp': '2026-06-22T13:22:22.421923Z'} (ID: 1782134542482-0)
[2026-06-22 18:52:25,841.841 INFO    ] {'server_response': {'voiceNote': 'Please close door 2', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}}, 'server_status': 'OrderStatus', 'order_id': 'TM06202507260622185053633'}
[2026-06-22 18:52:25,844.844 INFO    ] 200
[2026-06-22 18:52:25,847.847 INFO    ] {"data":{"server_response":{"voiceNote":"Please close door 2","error":{"data":[],"code":20001,"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"skus":[{"qty":1,"name":"Aatral Natural Electrolytes 200ml"}],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"status":"false","rstatus":false,"SectionStatus":{"UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Header":"Please Close Door 2","SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products"}},"server_status":"OrderStatus","order_id":"TM06202507260622185053633"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 18:52:25,851.851 INFO    ] {'data': {'server_response': {'status': 'false', 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml'}], 'Header': 'Pick the below items from the door'}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}}, 'server_status': 'OrderStatus', 'order_id': 'TM06202507260622185053633'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-22 18:52:25,854.854 INFO    ] {'voiceNote': 'Please close door 2', 'error': {'data': {}, 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}}
[2026-06-22 18:52:28,949.949 INFO    ] 200
[2026-06-22 18:52:28,952.952 INFO    ] {"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"}, "rstatus": true, "delay": 100, "status": "True", "SectionMain": {"Header": "Door Closed"}, "voiceNote": "Transaction Completed"}
[2026-06-22 18:52:28,955.955 INFO    ] {'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionStatus': {'UI_Header': '', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'status': 'True', 'rstatus': True, 'delay': 100}
[2026-06-22 18:52:28,958.958 INFO    ] 2026-06-22 18:52:28
[2026-06-22 18:52:28,961.961 INFO    ] Order Completed 
[2026-06-22 18:52:28,969.969 INFO    ] Order Completed 
[2026-06-22 18:52:28,976.976 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-22 18:52:28,979.979 INFO    ] 2026-06-22 18:52:28
[2026-06-22 18:52:28,981.981 INFO    ] playing audio file
[2026-06-22 18:52:29,002.002 INFO    ] 2026-06-22 18:52:28
[2026-06-22 18:52:29,005.005 INFO    ] {'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionStatus': {'UI_Header': '', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'status': 'True', 'rstatus': True, 'delay': 100}
[2026-06-22 18:52:29,008.008 INFO    ] 2026-06-22 18:52:29
[2026-06-22 18:52:29,498.498 INFO    ] 200
[2026-06-22 18:52:29,503.503 INFO    ] {"order_status": "", "bill_amount": 60, "skus": [{"sku_total": 60, "qty": 1, "mrp": "60", "door_id": "", "name": "Aatral Natural Electrolytes 200ml per peice", "tray_id": "36", "image_url": "https://images.tinymart.in/product/4500694-1219.png", "unit_price": "60", "skuid": "4500694", "offer_id": ""}], "userId": "7760014813", "anomaly": 0, "imei": "TM06202507", "rstatus": true, "orderId": "TM06202507260622185053633", "res": true, "cart_offer_desc": "", "total_amount": 60}
[2026-06-22 18:52:29,507.507 INFO    ] {'total_amount': 60, 'imei': 'TM06202507', 'res': True, 'anomaly': 0, 'order_status': '', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500694-1219.png', 'tray_id': '36', 'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml per peice', 'skuid': '4500694', 'door_id': '', 'sku_total': 60, 'unit_price': '60', 'mrp': '60', 'offer_id': ''}], 'cart_offer_desc': '', 'bill_amount': 60, 'rstatus': True, 'userId': '7760014813', 'orderId': 'TM06202507260622185053633'}
[2026-06-22 18:52:29,510.510 INFO    ] {'total_amount': 60, 'imei': 'TM06202507', 'res': True, 'anomaly': 0, 'order_status': '', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500694-1219.png', 'tray_id': '36', 'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml per peice', 'skuid': '4500694', 'door_id': '', 'sku_total': 60, 'unit_price': '60', 'mrp': '60', 'offer_id': ''}], 'cart_offer_desc': '', 'bill_amount': 60, 'rstatus': True, 'userId': '7760014813', 'orderId': 'TM06202507260622185053633'}
[2026-06-22 18:52:29,514.514 INFO    ] 2026-06-22 18:52:29
[2026-06-22 18:52:29,517.517 INFO    ] 2026-06-22 18:52:29
[2026-06-22 18:52:29,520.520 INFO    ] 60
[2026-06-22 18:52:29,524.524 INFO    ] 2026-06-22 18:52:29
[2026-06-22 18:52:29,527.527 INFO    ] 2026-06-22 18:52:29
[2026-06-22 18:52:29,530.530 INFO    ]  Your Bill Amount is 60
[2026-06-22 18:52:29,533.533 INFO    ]  Your Bill Amount is 60
[2026-06-22 18:52:29,536.536 INFO    ] fd22fee3bf67fc8133a18db187f67cdf
[2026-06-22 18:52:29,539.539 INFO    ] 2026-06-22 18:52:29
[2026-06-22 18:52:29,542.542 INFO    ] playing audio file
[2026-06-22 18:52:29,563.563 INFO    ] 2026-06-22 18:52:29
[2026-06-22 18:52:29,567.567 INFO    ] 2026-06-22 18:52:29
[2026-06-22 18:52:29,571.571 INFO    ] publish_status: order_id=TM06202507260622185053633
[2026-06-22 18:52:29,574.574 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622185053633
[2026-06-22 18:52:29,638.638 INFO    ] [publish_status] Message added to stream with ID: 1782134549607-0
[2026-06-22 18:52:29,641.641 INFO    ] Published to order:TM06202507260622185053633: {'server_response': '{"total_amount": 60, "imei": "TM06202507", "res": true, "anomaly": 0, "order_status": "", "skus": [{"image_url": "https://images.tinymart.in/product/4500694-1219.png", "tray_id": "36", "qty": 1, "name": "Aatral Natural Electrolytes 200ml per peice", "skuid": "4500694", "door_id": "", "sku_total": 60, "unit_price": "60", "mrp": "60", "offer_id": ""}], "cart_offer_desc": "", "bill_amount": 60, "rstatus": true, "userId": "7760014813", "orderId": "TM06202507260622185053633"}', 'server_status': 'invoiceOrder', 'order_id': 'TM06202507260622185053633', 'timestamp': '2026-06-22T13:22:29.569485Z'} (ID: 1782134549607-0)
[2026-06-22 18:52:29,794.794 INFO    ] {'server_response': {'total_amount': 60, 'imei': 'TM06202507', 'res': True, 'anomaly': 0, 'order_status': '', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500694-1219.png', 'tray_id': '36', 'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml per peice', 'skuid': '4500694', 'door_id': '', 'sku_total': 60, 'unit_price': '60', 'mrp': '60', 'offer_id': ''}], 'cart_offer_desc': '', 'bill_amount': 60, 'rstatus': True, 'userId': '7760014813', 'orderId': 'TM06202507260622185053633'}, 'server_status': 'invoiceOrder', 'order_id': 'TM06202507260622185053633'}
[2026-06-22 18:52:29,798.798 INFO    ] 200
[2026-06-22 18:52:29,801.801 INFO    ] {"data":{"server_response":{"total_amount":60,"imei":"TM06202507","res":true,"anomaly":0,"order_status":"","skus":[{"image_url":"https:\/\/images.tinymart.in\/product\/4500694-1219.png","tray_id":"36","qty":1,"name":"Aatral Natural Electrolytes 200ml per peice","skuid":"4500694","door_id":"","sku_total":60,"unit_price":"60","mrp":"60","offer_id":""}],"cart_offer_desc":"","bill_amount":60,"rstatus":true,"userId":"7760014813","orderId":"TM06202507260622185053633"},"server_status":"invoiceOrder","order_id":"TM06202507260622185053633"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 18:52:29,805.805 INFO    ] {'data': {'server_response': {'userId': '7760014813', 'imei': 'TM06202507', 'res': True, 'anomaly': 0, 'total_amount': 60, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500694-1219.png', 'tray_id': '36', 'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml per peice', 'sku_total': 60, 'door_id': '', 'skuid': '4500694', 'unit_price': '60', 'mrp': '60', 'offer_id': ''}], 'cart_offer_desc': '', 'order_status': '', 'rstatus': True, 'bill_amount': 60, 'orderId': 'TM06202507260622185053633'}, 'server_status': 'invoiceOrder', 'order_id': 'TM06202507260622185053633'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-22 18:52:29,808.808 INFO    ] {'data': {'server_response': {'userId': '7760014813', 'imei': 'TM06202507', 'res': True, 'anomaly': 0, 'total_amount': 60, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500694-1219.png', 'tray_id': '36', 'qty': 1, 'name': 'Aatral Natural Electrolytes 200ml per peice', 'sku_total': 60, 'door_id': '', 'skuid': '4500694', 'unit_price': '60', 'mrp': '60', 'offer_id': ''}], 'cart_offer_desc': '', 'order_status': '', 'rstatus': True, 'bill_amount': 60, 'orderId': 'TM06202507260622185053633'}, 'server_status': 'invoiceOrder', 'order_id': 'TM06202507260622185053633'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-22 18:52:29,812.812 INFO    ] 2026-06-22 18:52:29
[2026-06-22 18:52:32,889.889 INFO    ] 200
[2026-06-22 18:52:32,892.892 INFO    ] {"orders_data_synced": [], "order_items": [], "orders_data": [], "orders_synced": [], "tray_synced": ["TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633", "TM06202507260622185053633"], "order_items_synced": ["TM06202507260622185053633_0"], "orders": [], "status": true, "tray_sync": []}
[2026-06-22 18:52:32,895.895 INFO    ] 2026-06-22 18:52:32
[2026-06-22 18:52:33,008.008 INFO    ] 200
[2026-06-22 18:52:33,011.011 INFO    ] True
[2026-06-22 18:52:33,014.014 INFO    ] cleanup_start_order_file_after_processing: order_id=TM06202507260622185053633
[2026-06-22 18:52:33,018.018 INFO    ] start order file deleted
[2026-06-22 18:52:33,021.021 INFO    ] Checking for system updates...
[2026-06-22 18:52:33,063.063 INFO    ] 200
[2026-06-22 18:52:33,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:52:33,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:52:33,128.128 INFO    ] No update needed
[2026-06-22 18:52:33,130.130 INFO    ] Checking for camera pi updates...
[2026-06-22 18:52:33,171.171 INFO    ] 200
[2026-06-22 18:52:33,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:52:33,223.223 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:52:33,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:52:33,281.281 INFO    ] No camera update needed
[2026-06-22 18:52:33,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:52:33,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:52:33,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:52:33,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:52:35,347.347 INFO    ] ================================================
[2026-06-22 18:52:35,362.362 INFO    ] Launching Daemon at Mon Jun 22 18:52:35 IST 2026
[2026-06-22 18:52:35,373.373 INFO    ] ================================================
[2026-06-22 18:52:36,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:52:36
[2026-06-22 18:52:36,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:52:37,019.019 INFO    ] Initializing speech engine...
[2026-06-22 18:52:37,032.032 INFO    ] 2026-06-22 18:52:37
[2026-06-22 18:52:37,316.316 INFO    ] 2026-06-22 18:52:37
[2026-06-22 18:52:37,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:52:37,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:52:37,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:52:37,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:52:37,870.870 INFO    ] time= 22/06/2026 18:52:37
[2026-06-22 18:52:37,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:52:37,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:52:38,033.033 INFO    ] No existing commands found in stream
[2026-06-22 18:52:43,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:52:43,076.076 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-22 18:52:44,160.160 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:52:44,162.162 INFO    ] Checking for system updates...
[2026-06-22 18:52:44,183.183 INFO    ] 200
[2026-06-22 18:52:44,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:52:44,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:52:44,248.248 INFO    ] No update needed
[2026-06-22 18:52:44,255.255 INFO    ] Checking for camera pi updates...
[2026-06-22 18:52:44,289.289 INFO    ] 200
[2026-06-22 18:52:44,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:52:44,339.339 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:52:44,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:52:44,423.423 INFO    ] No camera update needed
[2026-06-22 18:52:44,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:52:44,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:52:44,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:52:44,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:52:46,483.483 INFO    ] ================================================
[2026-06-22 18:52:46,499.499 INFO    ] Launching Daemon at Mon Jun 22 18:52:46 IST 2026
[2026-06-22 18:52:46,510.510 INFO    ] ================================================
[2026-06-22 18:52:47,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:52:47
[2026-06-22 18:52:47,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:52:48,047.047 INFO    ] Initializing speech engine...
[2026-06-22 18:52:48,061.061 INFO    ] 2026-06-22 18:52:48
[2026-06-22 18:52:48,317.317 INFO    ] 2026-06-22 18:52:48
[2026-06-22 18:52:48,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:52:48,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:52:48,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:52:48,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:52:48,813.813 INFO    ] time= 22/06/2026 18:52:48
[2026-06-22 18:52:48,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:52:48,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:52:49,045.045 INFO    ] No existing commands found in stream
[2026-06-22 18:52:54,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:52:54,062.062 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-22 18:52:57,679.679 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:52:57,682.682 INFO    ] Checking for system updates...
[2026-06-22 18:52:57,719.719 INFO    ] 200
[2026-06-22 18:52:57,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:52:57,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:52:57,786.786 INFO    ] No update needed
[2026-06-22 18:52:57,788.788 INFO    ] Checking for camera pi updates...
[2026-06-22 18:52:57,826.826 INFO    ] 200
[2026-06-22 18:52:57,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:52:57,869.869 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:52:57,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:52:57,953.953 INFO    ] No camera update needed
[2026-06-22 18:52:57,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:52:57,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:52:57,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:52:57,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:53:00,009.009 INFO    ] ================================================
[2026-06-22 18:53:00,026.026 INFO    ] Launching Daemon at Mon Jun 22 18:53:00 IST 2026
[2026-06-22 18:53:00,037.037 INFO    ] ================================================
[2026-06-22 18:53:00,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:53:00
[2026-06-22 18:53:01,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:53:01,403.403 INFO    ] Initializing speech engine...
[2026-06-22 18:53:01,410.410 INFO    ] 2026-06-22 18:53:01
[2026-06-22 18:53:01,778.778 INFO    ] 2026-06-22 18:53:01
[2026-06-22 18:53:01,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:53:02,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:53:02,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:53:02,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:53:02,436.436 INFO    ] time= 22/06/2026 18:53:02
[2026-06-22 18:53:02,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:53:02,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:53:02,524.524 INFO    ] No existing commands found in stream
[2026-06-22 18:53:07,011.011 INFO    ] Received new command: ID=1782134586867-0
[2026-06-22 18:53:07,014.014 INFO    ] process_and_cleanup_command: msg_id=1782134586867-0
[2026-06-22 18:53:07,017.017 INFO    ] is_command_expired: timestamp=2026-06-22T13:23:08.469Z, expiry=30s
[2026-06-22 18:53:07,117.117 INFO    ] Command removed from stream: 1782134586867-0. returning for processing...
[2026-06-22 18:53:07,120.120 INFO    ] ***** get_valid_command
[2026-06-22 18:53:07,124.124 INFO    ] {'timestamp': '2026-06-22T13:23:08.469Z', 'command': 'start-order', 'data': '{"request_id":"start-order-1782134588469-k6ebxjohk","orderId":"TM06202507260622185216948","is_vending":false}', 'timeout': '10', 'source': 'webapp'}
[2026-06-22 18:53:07,128.128 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'start-order-1782134588469-k6ebxjohk', 'orderId': 'TM06202507260622185216948'}
[2026-06-22 18:53:07,131.131 INFO    ] Handling start order...
[2026-06-22 18:53:07,134.134 INFO    ] handle_start_order_command
[2026-06-22 18:53:07,141.141 INFO    ] _send_start_order_success: request_id=start-order-1782134588469-k6ebxjohk, order_id=TM06202507260622185216948
[2026-06-22 18:53:07,145.145 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM06202507
[2026-06-22 18:53:07,207.207 INFO    ] [_send_start_order_success] Message added to stream with ID: 1782134587178-0
[2026-06-22 18:53:07,210.210 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-22 18:53:07,214.214 INFO    ] Checking for system updates...
[2026-06-22 18:53:07,265.265 INFO    ] 200
[2026-06-22 18:53:07,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:53:07,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:53:07,365.365 INFO    ] No update needed
[2026-06-22 18:53:07,373.373 INFO    ] Checking for camera pi updates...
[2026-06-22 18:53:07,411.411 INFO    ] 200
[2026-06-22 18:53:07,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:53:07,460.460 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:53:07,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:53:07,653.653 INFO    ] No camera update needed
[2026-06-22 18:53:07,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:53:07,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:53:07,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:53:07,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:53:09,724.724 INFO    ] ================================================
[2026-06-22 18:53:09,741.741 INFO    ] Launching Daemon at Mon Jun 22 18:53:09 IST 2026
[2026-06-22 18:53:09,753.753 INFO    ] ================================================
[2026-06-22 18:53:10,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:53:10
[2026-06-22 18:53:10,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:53:11,249.249 INFO    ] Initializing speech engine...
[2026-06-22 18:53:11,258.258 INFO    ] 2026-06-22 18:53:11
[2026-06-22 18:53:11,520.520 INFO    ] 2026-06-22 18:53:11
[2026-06-22 18:53:11,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:53:11,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:53:11,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:53:12,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:53:12,063.063 INFO    ] time= 22/06/2026 18:53:12
[2026-06-22 18:53:12,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:53:12,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:53:12,217.217 INFO    ] Found 2 existing command(s) in stream
[2026-06-22 18:53:12,255.255 INFO    ] Checking historical command: ID=1782134587178-0
[2026-06-22 18:53:12,299.299 INFO    ] process_and_cleanup_command: msg_id=1782134587178-0
[2026-06-22 18:53:12,330.330 INFO    ] is_command_expired: timestamp=2026-06-22T13:23:07.142673Z, expiry=30s
[2026-06-22 18:53:12,671.671 INFO    ] Command removed from stream: 1782134587178-0. returning for processing...
[2026-06-22 18:53:12,678.678 INFO    ] ***** get_valid_command
[2026-06-22 18:53:12,681.681 INFO    ] {'metadata_request_id': 'start-order-1782134588469-k6ebxjohk', 'message_type': 'command_response', 'status': 'success', 'timestamp': '2026-06-22T13:23:07.142673Z', 'message': 'start-order success', 'metadata_order_id': 'TM06202507260622185216948', 'imei': 'TM06202507'}
[2026-06-22 18:53:12,730.730 INFO    ] Checking historical command: ID=1782134589037-0
[2026-06-22 18:53:12,734.734 INFO    ] process_and_cleanup_command: msg_id=1782134589037-0
[2026-06-22 18:53:12,737.737 INFO    ] is_command_expired: timestamp=2026-06-22T13:23:10.677Z, expiry=30s
[2026-06-22 18:53:12,909.909 INFO    ] Command removed from stream: 1782134589037-0. returning for processing...
[2026-06-22 18:53:12,930.930 INFO    ] ***** get_valid_command
[2026-06-22 18:53:12,936.936 INFO    ] {'timestamp': '2026-06-22T13:23:10.677Z', 'data': '{"request_id":"process-order-1782134590676-r1rb8brqv","orderId":"TM06202507260622185216948","is_vending":false,"accessCode":"88257625"}', 'command': 'process-order', 'timeout': '60', 'source': 'webapp'}
[2026-06-22 18:53:12,941.941 INFO    ] ***** Parsed command data: {'is_vending': False, 'orderId': 'TM06202507260622185216948', 'accessCode': '88257625', 'request_id': 'process-order-1782134590676-r1rb8brqv'}
[2026-06-22 18:53:12,950.950 INFO    ] Handling process order...
[2026-06-22 18:53:12,957.957 INFO    ] Processing process-order command...
[2026-06-22 18:53:12,964.964 INFO    ] 🔍 Lock file Order ID: TM06202507260622185216948, TS: 2026-06-22 18:53:07
[2026-06-22 18:53:12,981.981 INFO    ] ✅ Order lock valid for TM06202507260622185216948
[2026-06-22 18:53:12,987.987 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-22 18:53:12,992.992 INFO    ] processing access code 88257625 for order TM06202507260622185216948
[2026-06-22 18:53:12,999.999 INFO    ] 🔍 Lock file Order ID: TM06202507260622185216948, TS: 2026-06-22 18:53:07
[2026-06-22 18:53:13,005.005 INFO    ] ✅ Order lock valid for TM06202507260622185216948
[2026-06-22 18:53:13,010.010 INFO    ] 2026-06-22 18:53:13
[2026-06-22 18:53:13,059.059 INFO    ] 200
[2026-06-22 18:53:13,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:53:13,071.071 INFO    ] 88257625
[2026-06-22 18:53:13,077.077 INFO    ] 2026-06-22 18:53:13
[2026-06-22 18:53:13,082.082 INFO    ] session id :461202324
[2026-06-22 18:53:13,087.087 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=88257625&imei=TM06202507&session_id=461202324
[2026-06-22 18:53:14,339.339 INFO    ] 200
[2026-06-22 18:53:14,367.367 INFO    ] {"data": {"mobile": "9038103384", "order_id": "TM06202507260622185216948", "access_code": "88257625", "bill_amount": "70", "proposed_sku_json": [{"tray_id": "14", "qty": 1, "mrp": "30", "door_id": "1", "name": "Farmely Panchmeva 21gm", "sku_total": 30, "image_url": "https://images.tinymart.in/product/4500668-1144.jpg", "offer_desc": "", "unit_price": 30, "skuid": "4500668", "offer_id": ""}, {"tray_id": "16", "qty": 1, "mrp": "40", "door_id": "1", "name": "Farmely Classic date Bites 20gm", "sku_total": 40, "image_url": "https://images.tinymart.in/product/4500667-4339.webp", "offer_desc": "", "unit_price": 40, "skuid": "4500667", "offer_id": ""}], "invoice_bill": "70"}, "msg": "Order Data", "status": true, "rstatus": true}
[2026-06-22 18:53:14,373.373 INFO    ] 70
[2026-06-22 18:53:14,409.409 INFO    ] TM06202507260622185216948
[2026-06-22 18:53:14,476.476 INFO    ] 9038103384
[2026-06-22 18:53:14,533.533 INFO    ] 2026-06-22 18:53:14
[2026-06-22 18:53:14,545.545 INFO    ] Door Opening for user mobile ending with  three three eight four 
[2026-06-22 18:53:14,563.563 INFO    ] Door Opening for user mobile ending with  three three eight four 
[2026-06-22 18:53:14,569.569 INFO    ] 1b1750e3db47a4385488fb842afac977
[2026-06-22 18:53:14,586.586 INFO    ] 2026-06-22 18:53:14
[2026-06-22 18:53:14,597.597 INFO    ] playing audio file
[2026-06-22 18:53:14,618.618 INFO    ] 2026-06-22 18:53:14
[2026-06-22 18:53:14,621.621 INFO    ] 2026-06-22 18:53:14
[2026-06-22 18:53:14,625.625 INFO    ] publish_status: order_id=TM06202507260622185216948
[2026-06-22 18:53:14,629.629 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622185216948
[2026-06-22 18:53:15,451.451 INFO    ] [publish_status] Message added to stream with ID: 1782134595418-0
[2026-06-22 18:53:15,454.454 INFO    ] Published to order:TM06202507260622185216948: {'timestamp': '2026-06-22T13:23:14.623358Z', 'server_response': '{"msg": "Order Data", "data": {"bill_amount": "70", "invoice_bill": "70", "mobile": "9038103384", "proposed_sku_json": [{"qty": 1, "offer_desc": "", "mrp": "30", "skuid": "4500668", "unit_price": 30, "image_url": "https://images.tinymart.in/product/4500668-1144.jpg", "name": "Farmely Panchmeva 21gm", "door_id": "1", "tray_id": "14", "offer_id": "", "sku_total": 30}, {"qty": 1, "offer_desc": "", "mrp": "40", "skuid": "4500667", "unit_price": 40, "image_url": "https://images.tinymart.in/product/4500667-4339.webp", "name": "Farmely Classic date Bites 20gm", "door_id": "1", "tray_id": "16", "offer_id": "", "sku_total": 40}], "access_code": "88257625", "order_id": "TM06202507260622185216948"}, "rstatus": true, "status": true}', 'order_id': 'TM06202507260622185216948', 'server_status': 'order-started'} (ID: 1782134595418-0)
[2026-06-22 18:53:16,154.154 INFO    ] {'server_response': {'msg': 'Order Data', 'data': {'bill_amount': '70', 'invoice_bill': '70', 'mobile': '9038103384', 'proposed_sku_json': [{'qty': 1, 'offer_desc': '', 'mrp': '30', 'skuid': '4500668', 'unit_price': 30, 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'name': 'Farmely Panchmeva 21gm', 'door_id': '1', 'tray_id': '14', 'offer_id': '', 'sku_total': 30}, {'qty': 1, 'offer_desc': '', 'mrp': '40', 'skuid': '4500667', 'unit_price': 40, 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'name': 'Farmely Classic date Bites 20gm', 'door_id': '1', 'tray_id': '16', 'offer_id': '', 'sku_total': 40}], 'access_code': '88257625', 'order_id': 'TM06202507260622185216948'}, 'rstatus': True, 'status': True}, 'order_id': 'TM06202507260622185216948', 'server_status': 'order-started'}
[2026-06-22 18:53:16,157.157 INFO    ] 200
[2026-06-22 18:53:16,160.160 INFO    ] {"data":{"server_response":{"msg":"Order Data","data":{"bill_amount":"70","invoice_bill":"70","mobile":"9038103384","proposed_sku_json":[{"qty":1,"offer_desc":"","mrp":"30","skuid":"4500668","unit_price":30,"image_url":"https:\/\/images.tinymart.in\/product\/4500668-1144.jpg","name":"Farmely Panchmeva 21gm","door_id":"1","tray_id":"14","offer_id":"","sku_total":30},{"qty":1,"offer_desc":"","mrp":"40","skuid":"4500667","unit_price":40,"image_url":"https:\/\/images.tinymart.in\/product\/4500667-4339.webp","name":"Farmely Classic date Bites 20gm","door_id":"1","tray_id":"16","offer_id":"","sku_total":40}],"access_code":"88257625","order_id":"TM06202507260622185216948"},"rstatus":true,"status":true},"order_id":"TM06202507260622185216948","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 18:53:16,163.163 INFO    ] {'data': {'server_response': {'msg': 'Order Data', 'data': {'order_id': 'TM06202507260622185216948', 'bill_amount': '70', 'mobile': '9038103384', 'invoice_bill': '70', 'access_code': '88257625', 'proposed_sku_json': [{'qty': 1, 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'skuid': '4500668', 'unit_price': 30, 'offer_id': '', 'name': 'Farmely Panchmeva 21gm', 'door_id': '1', 'mrp': '30', 'tray_id': '14', 'sku_total': 30}, {'qty': 1, 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'skuid': '4500667', 'unit_price': 40, 'offer_id': '', 'name': 'Farmely Classic date Bites 20gm', 'door_id': '1', 'mrp': '40', 'tray_id': '16', 'sku_total': 40}]}, 'status': True, 'rstatus': True}, 'order_id': 'TM06202507260622185216948', 'server_status': 'order-started'}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}}
[2026-06-22 18:53:16,167.167 INFO    ] 2026-06-22 18:53:16
[2026-06-22 18:53:16,215.215 INFO    ] 200
[2026-06-22 18:53:16,218.218 INFO    ] True
[2026-06-22 18:53:16,366.366 INFO    ] 200
[2026-06-22 18:53:16,369.369 INFO    ] {"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": ""}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 18:53:16,372.372 INFO    ] {'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': ''}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False', 'voiceNote': 'Please Wait', 'rstatus': False}
[2026-06-22 18:53:16,375.375 INFO    ] *** process_order ***
[2026-06-22 18:53:17,582.582 INFO    ] 200
[2026-06-22 18:53:17,586.586 INFO    ] {"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": ""}, "rstatus": true, "delay": 0, "status": "True", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 18:53:17,589.589 INFO    ] {'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'True', 'voiceNote': 'Please Wait', 'delay': 0, 'rstatus': True}
[2026-06-22 18:53:17,591.591 INFO    ] *** process_order ***
[2026-06-22 18:53:17,594.594 INFO    ] publish_status: order_id=TM06202507260622185216948
[2026-06-22 18:53:17,596.596 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622185216948
[2026-06-22 18:53:17,662.662 INFO    ] [publish_status] Message added to stream with ID: 1782134597633-0
[2026-06-22 18:53:17,664.664 INFO    ] Published to order:TM06202507260622185216948: {'server_response': '{"SectionStatus": {"SubHeader": "You can pull the door now.", "Note": "", "UI_Header": "", "Header": " Your order is under process  "}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True", "voiceNote": "Door is open...", "delay": 0, "rstatus": true}', 'order_id': 'TM06202507260622185216948', 'server_status': 'doorOpened'} (ID: 1782134597633-0)
[2026-06-22 18:53:18,718.718 INFO    ] 2026-06-22 18:53:18
[2026-06-22 18:53:18,721.721 INFO    ] publish_status: order_id=TM06202507260622185216948
[2026-06-22 18:53:18,724.724 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622185216948
[2026-06-22 18:53:18,798.798 INFO    ] [publish_status] Message added to stream with ID: 1782134598768-0
[2026-06-22 18:53:18,801.801 INFO    ] Published to order:TM06202507260622185216948: {'timestamp': '2026-06-22T13:23:18.720098Z', 'server_response': '{"SectionStatus": {"SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "UI_Header": "", "Note": ""}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True", "voiceNote": "Please Wait", "delay": 0, "rstatus": true}', 'order_id': 'TM06202507260622185216948', 'server_status': 'processOrder'} (ID: 1782134598768-0)
[2026-06-22 18:53:18,925.925 INFO    ] {'server_response': {'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'True', 'voiceNote': 'Please Wait', 'delay': 0, 'rstatus': True}, 'order_id': 'TM06202507260622185216948', 'server_status': 'processOrder'}
[2026-06-22 18:53:18,927.927 INFO    ] 200
[2026-06-22 18:53:18,930.930 INFO    ] {"data":{"server_response":{"SectionStatus":{"SubHeader":"Please wait while we process your order","Header":" Your order is under process  ","UI_Header":"","Note":""},"SectionMain":{"Header":"Processing Order"},"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"status":"true","voiceNote":"Please Wait","delay":0,"rstatus":true},"order_id":"TM06202507260622185216948","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 18:53:18,933.933 INFO    ] {'data': {'server_response': {'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'true', 'voiceNote': 'Please Wait', 'delay': 0, 'rstatus': True}, 'order_id': 'TM06202507260622185216948', 'server_status': 'processOrder'}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}}
[2026-06-22 18:53:18,935.935 INFO    ] 2026-06-22 18:53:18
[2026-06-22 18:53:18,938.938 INFO    ] None
[2026-06-22 18:53:18,940.940 INFO    ] Opening Door now
[2026-06-22 18:53:18,942.942 INFO    ] Opening Door now
[2026-06-22 18:53:18,945.945 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-22 18:53:18,948.948 INFO    ] 2026-06-22 18:53:18
[2026-06-22 18:53:18,951.951 INFO    ] playing audio file
[2026-06-22 18:53:18,971.971 INFO    ] 2026-06-22 18:53:18
[2026-06-22 18:53:18,974.974 INFO    ] 2026-06-22 18:53:18
[2026-06-22 18:53:22,070.070 INFO    ] 200
[2026-06-22 18:53:22,073.073 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Door 1 is open now"}
[2026-06-22 18:53:22,076.076 INFO    ] {'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'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Panchmeva 21gm'}, {'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Door 1 is open now', 'rstatus': False}
[2026-06-22 18:53:25,171.171 INFO    ] 200
[2026-06-22 18:53:25,174.174 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 18:53:25,184.184 INFO    ] {'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'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Panchmeva 21gm'}, {'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'rstatus': False}
[2026-06-22 18:53:28,429.429 INFO    ] 200
[2026-06-22 18:53:28,432.432 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 18:53:28,436.436 INFO    ] Please close door 1
[2026-06-22 18:53:28,438.438 INFO    ] Please close door 1
[2026-06-22 18:53:28,441.441 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-22 18:53:28,444.444 INFO    ] 2026-06-22 18:53:28
[2026-06-22 18:53:28,447.447 INFO    ] playing audio file
[2026-06-22 18:53:28,464.464 INFO    ] 2026-06-22 18:53:28
[2026-06-22 18:53:28,468.468 INFO    ] publish_status: order_id=TM06202507260622185216948
[2026-06-22 18:53:28,471.471 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622185216948
[2026-06-22 18:53:28,542.542 INFO    ] [publish_status] Message added to stream with ID: 1782134608513-0
[2026-06-22 18:53:28,545.545 INFO    ] Published to order:TM06202507260622185216948: {'timestamp': '2026-06-22T13:23:28.466502Z', 'server_response': '{"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"}, "error": {"umessage": "In Progress", "data": {}, "tmessage": "In Progress", "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "name": "Farmely Classic date Bites 20gm"}]}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 1", "rstatus": false}', 'order_id': 'TM06202507260622185216948', 'server_status': 'OrderStatus'} (ID: 1782134608513-0)
[2026-06-22 18:53:29,081.081 INFO    ] {'server_response': {'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'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Panchmeva 21gm'}, {'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'rstatus': False}, 'order_id': 'TM06202507260622185216948', 'server_status': 'OrderStatus'}
[2026-06-22 18:53:29,083.083 INFO    ] 200
[2026-06-22 18:53:29,086.086 INFO    ] {"data":{"server_response":{"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"},"error":{"umessage":"In Progress","data":[],"tmessage":"In Progress","code":20001},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Farmely Panchmeva 21gm"},{"qty":1,"name":"Farmely Classic date Bites 20gm"}]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 1","rstatus":false},"order_id":"TM06202507260622185216948","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 18:53:29,089.089 INFO    ] {'data': {'server_response': {'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'}, 'error': {'umessage': 'In Progress', 'data': [], 'code': 20001, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Panchmeva 21gm'}, {'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'voiceNote': 'Please close door 1', 'rstatus': False}, 'order_id': 'TM06202507260622185216948', 'server_status': 'OrderStatus'}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}}
[2026-06-22 18:53:29,092.092 INFO    ] {'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'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Panchmeva 21gm'}, {'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'rstatus': False}
[2026-06-22 18:53:32,160.160 INFO    ] 200
[2026-06-22 18:53:32,162.162 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 18:53:32,166.166 INFO    ] {'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'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Panchmeva 21gm'}, {'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'rstatus': False}
[2026-06-22 18:53:35,273.273 INFO    ] 200
[2026-06-22 18:53:35,278.278 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 18:53:35,281.281 INFO    ] {'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'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Panchmeva 21gm'}, {'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'rstatus': False}
[2026-06-22 18:53:38,343.343 INFO    ] 200
[2026-06-22 18:53:38,346.346 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 18:53:38,349.349 INFO    ] Please close door 1
[2026-06-22 18:53:38,352.352 INFO    ] Please close door 1
[2026-06-22 18:53:38,354.354 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-22 18:53:38,357.357 INFO    ] 2026-06-22 18:53:38
[2026-06-22 18:53:38,360.360 INFO    ] playing audio file
[2026-06-22 18:53:38,377.377 INFO    ] 2026-06-22 18:53:38
[2026-06-22 18:53:38,381.381 INFO    ] publish_status: order_id=TM06202507260622185216948
[2026-06-22 18:53:38,384.384 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622185216948
[2026-06-22 18:53:38,472.472 INFO    ] [publish_status] Message added to stream with ID: 1782134618443-0
[2026-06-22 18:53:38,475.475 INFO    ] Published to order:TM06202507260622185216948: {'timestamp': '2026-06-22T13:23:38.379733Z', 'server_response': '{"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"}, "error": {"umessage": "In Progress", "data": {}, "tmessage": "In Progress", "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "name": "Farmely Classic date Bites 20gm"}]}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 1", "rstatus": false}', 'order_id': 'TM06202507260622185216948', 'server_status': 'OrderStatus'} (ID: 1782134618443-0)
[2026-06-22 18:53:39,011.011 INFO    ] {'server_response': {'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'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Panchmeva 21gm'}, {'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'rstatus': False}, 'order_id': 'TM06202507260622185216948', 'server_status': 'OrderStatus'}
[2026-06-22 18:53:39,013.013 INFO    ] 200
[2026-06-22 18:53:39,022.022 INFO    ] {"data":{"server_response":{"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"},"error":{"umessage":"In Progress","data":[],"tmessage":"In Progress","code":20001},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Farmely Panchmeva 21gm"},{"qty":1,"name":"Farmely Classic date Bites 20gm"}]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 1","rstatus":false},"order_id":"TM06202507260622185216948","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 18:53:39,026.026 INFO    ] {'data': {'server_response': {'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'}, 'error': {'umessage': 'In Progress', 'data': [], 'code': 20001, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Panchmeva 21gm'}, {'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'voiceNote': 'Please close door 1', 'rstatus': False}, 'order_id': 'TM06202507260622185216948', 'server_status': 'OrderStatus'}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}}
[2026-06-22 18:53:39,030.030 INFO    ] {'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'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Panchmeva 21gm'}, {'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'rstatus': False}
[2026-06-22 18:53:42,146.146 INFO    ] 200
[2026-06-22 18:53:42,149.149 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 18:53:42,153.153 INFO    ] {'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'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Panchmeva 21gm'}, {'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'rstatus': False}
[2026-06-22 18:53:45,225.225 INFO    ] 200
[2026-06-22 18:53:45,228.228 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 18:53:45,232.232 INFO    ] {'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'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Panchmeva 21gm'}, {'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'rstatus': False}
[2026-06-22 18:53:48,382.382 INFO    ] 200
[2026-06-22 18:53:48,386.386 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 18:53:48,389.389 INFO    ] Please close door 1
[2026-06-22 18:53:48,392.392 INFO    ] Please close door 1
[2026-06-22 18:53:48,397.397 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-22 18:53:48,404.404 INFO    ] 2026-06-22 18:53:48
[2026-06-22 18:53:48,410.410 INFO    ] playing audio file
[2026-06-22 18:53:48,431.431 INFO    ] 2026-06-22 18:53:48
[2026-06-22 18:53:48,434.434 INFO    ] publish_status: order_id=TM06202507260622185216948
[2026-06-22 18:53:48,437.437 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622185216948
[2026-06-22 18:53:48,502.502 INFO    ] [publish_status] Message added to stream with ID: 1782134628473-0
[2026-06-22 18:53:48,505.505 INFO    ] Published to order:TM06202507260622185216948: {'timestamp': '2026-06-22T13:23:48.432497Z', 'server_response': '{"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"}, "error": {"umessage": "In Progress", "data": {}, "tmessage": "In Progress", "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "name": "Farmely Classic date Bites 20gm"}]}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 1", "rstatus": false}', 'order_id': 'TM06202507260622185216948', 'server_status': 'OrderStatus'} (ID: 1782134628473-0)
[2026-06-22 18:53:49,043.043 INFO    ] {'server_response': {'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'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Panchmeva 21gm'}, {'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'rstatus': False}, 'order_id': 'TM06202507260622185216948', 'server_status': 'OrderStatus'}
[2026-06-22 18:53:49,045.045 INFO    ] 200
[2026-06-22 18:53:49,048.048 INFO    ] {"data":{"server_response":{"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"},"error":{"umessage":"In Progress","data":[],"tmessage":"In Progress","code":20001},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Farmely Panchmeva 21gm"},{"qty":1,"name":"Farmely Classic date Bites 20gm"}]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 1","rstatus":false},"order_id":"TM06202507260622185216948","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 18:53:49,051.051 INFO    ] {'data': {'server_response': {'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'}, 'error': {'umessage': 'In Progress', 'data': [], 'code': 20001, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Panchmeva 21gm'}, {'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'voiceNote': 'Please close door 1', 'rstatus': False}, 'order_id': 'TM06202507260622185216948', 'server_status': 'OrderStatus'}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}}
[2026-06-22 18:53:49,053.053 INFO    ] {'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'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Panchmeva 21gm'}, {'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'rstatus': False}
[2026-06-22 18:53:52,147.147 INFO    ] 200
[2026-06-22 18:53:52,150.150 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 18:53:52,153.153 INFO    ] {'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'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Panchmeva 21gm'}, {'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'rstatus': False}
[2026-06-22 18:53:55,225.225 INFO    ] 200
[2026-06-22 18:53:55,227.227 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 18:53:55,231.231 INFO    ] {'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'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Panchmeva 21gm'}, {'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'rstatus': False}
[2026-06-22 18:53:58,299.299 INFO    ] 200
[2026-06-22 18:53:58,301.301 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 18:53:58,305.305 INFO    ] Please close door 1
[2026-06-22 18:53:58,307.307 INFO    ] Please close door 1
[2026-06-22 18:53:58,309.309 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-22 18:53:58,312.312 INFO    ] 2026-06-22 18:53:58
[2026-06-22 18:53:58,315.315 INFO    ] playing audio file
[2026-06-22 18:53:58,332.332 INFO    ] 2026-06-22 18:53:58
[2026-06-22 18:53:58,337.337 INFO    ] publish_status: order_id=TM06202507260622185216948
[2026-06-22 18:53:58,339.339 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622185216948
[2026-06-22 18:53:58,427.427 INFO    ] [publish_status] Message added to stream with ID: 1782134638388-0
[2026-06-22 18:53:58,430.430 INFO    ] Published to order:TM06202507260622185216948: {'timestamp': '2026-06-22T13:23:58.334969Z', 'server_response': '{"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"}, "error": {"umessage": "In Progress", "data": {}, "tmessage": "In Progress", "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "name": "Farmely Classic date Bites 20gm"}]}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 1", "rstatus": false}', 'order_id': 'TM06202507260622185216948', 'server_status': 'OrderStatus'} (ID: 1782134638388-0)
[2026-06-22 18:53:59,684.684 INFO    ] {'server_response': {'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'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Panchmeva 21gm'}, {'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'rstatus': False}, 'order_id': 'TM06202507260622185216948', 'server_status': 'OrderStatus'}
[2026-06-22 18:53:59,687.687 INFO    ] 200
[2026-06-22 18:53:59,689.689 INFO    ] {"data":{"server_response":{"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"},"error":{"umessage":"In Progress","data":[],"tmessage":"In Progress","code":20001},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Farmely Panchmeva 21gm"},{"qty":1,"name":"Farmely Classic date Bites 20gm"}]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 1","rstatus":false},"order_id":"TM06202507260622185216948","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 18:53:59,693.693 INFO    ] {'data': {'server_response': {'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'}, 'error': {'umessage': 'In Progress', 'data': [], 'code': 20001, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Panchmeva 21gm'}, {'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'voiceNote': 'Please close door 1', 'rstatus': False}, 'order_id': 'TM06202507260622185216948', 'server_status': 'OrderStatus'}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}}
[2026-06-22 18:53:59,696.696 INFO    ] {'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'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Panchmeva 21gm'}, {'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'rstatus': False}
[2026-06-22 18:54:02,787.787 INFO    ] 200
[2026-06-22 18:54:02,791.791 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 18:54:02,795.795 INFO    ] {'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'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Panchmeva 21gm'}, {'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'rstatus': False}
[2026-06-22 18:54:05,873.873 INFO    ] 200
[2026-06-22 18:54:05,876.876 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 18:54:05,879.879 INFO    ] {'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'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Panchmeva 21gm'}, {'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'rstatus': False}
[2026-06-22 18:54:08,930.930 INFO    ] 200
[2026-06-22 18:54:08,932.932 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 18:54:08,935.935 INFO    ] Please close door 1
[2026-06-22 18:54:08,937.937 INFO    ] Please close door 1
[2026-06-22 18:54:08,940.940 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-22 18:54:08,942.942 INFO    ] 2026-06-22 18:54:08
[2026-06-22 18:54:08,945.945 INFO    ] playing audio file
[2026-06-22 18:54:08,962.962 INFO    ] 2026-06-22 18:54:08
[2026-06-22 18:54:08,966.966 INFO    ] publish_status: order_id=TM06202507260622185216948
[2026-06-22 18:54:08,968.968 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622185216948
[2026-06-22 18:54:09,041.041 INFO    ] [publish_status] Message added to stream with ID: 1782134649013-0
[2026-06-22 18:54:09,044.044 INFO    ] Published to order:TM06202507260622185216948: {'timestamp': '2026-06-22T13:24:08.963937Z', 'server_response': '{"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"}, "error": {"umessage": "In Progress", "data": {}, "tmessage": "In Progress", "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "name": "Farmely Classic date Bites 20gm"}]}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 1", "rstatus": false}', 'order_id': 'TM06202507260622185216948', 'server_status': 'OrderStatus'} (ID: 1782134649013-0)
[2026-06-22 18:54:09,586.586 INFO    ] {'server_response': {'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'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Panchmeva 21gm'}, {'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'rstatus': False}, 'order_id': 'TM06202507260622185216948', 'server_status': 'OrderStatus'}
[2026-06-22 18:54:09,589.589 INFO    ] 200
[2026-06-22 18:54:09,591.591 INFO    ] {"data":{"server_response":{"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"},"error":{"umessage":"In Progress","data":[],"tmessage":"In Progress","code":20001},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Farmely Panchmeva 21gm"},{"qty":1,"name":"Farmely Classic date Bites 20gm"}]},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 1","rstatus":false},"order_id":"TM06202507260622185216948","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 18:54:09,594.594 INFO    ] {'data': {'server_response': {'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'}, 'error': {'umessage': 'In Progress', 'data': [], 'code': 20001, 'tmessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Panchmeva 21gm'}, {'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'voiceNote': 'Please close door 1', 'rstatus': False}, 'order_id': 'TM06202507260622185216948', 'server_status': 'OrderStatus'}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}}
[2026-06-22 18:54:09,597.597 INFO    ] {'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'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Panchmeva 21gm'}, {'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'rstatus': False}
[2026-06-22 18:54:12,648.648 INFO    ] 200
[2026-06-22 18:54:12,650.650 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}, {"qty": 1, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 18:54:12,653.653 INFO    ] {'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'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Farmely Panchmeva 21gm'}, {'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'rstatus': False}
[2026-06-22 18:54:15,725.725 INFO    ] 200
[2026-06-22 18:54:15,728.728 INFO    ] {"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"}, "rstatus": true, "delay": 100, "status": "True", "SectionMain": {"Header": "Door Closed"}, "voiceNote": "Transaction Completed"}
[2026-06-22 18:54:15,731.731 INFO    ] {'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'status': 'True', 'voiceNote': 'Transaction Completed', 'delay': 100, 'rstatus': True}
[2026-06-22 18:54:15,734.734 INFO    ] 2026-06-22 18:54:15
[2026-06-22 18:54:15,737.737 INFO    ] Order Completed 
[2026-06-22 18:54:15,740.740 INFO    ] Order Completed 
[2026-06-22 18:54:15,743.743 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-22 18:54:15,746.746 INFO    ] 2026-06-22 18:54:15
[2026-06-22 18:54:15,748.748 INFO    ] playing audio file
[2026-06-22 18:54:15,766.766 INFO    ] 2026-06-22 18:54:15
[2026-06-22 18:54:15,770.770 INFO    ] {'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'status': 'True', 'voiceNote': 'Transaction Completed', 'delay': 100, 'rstatus': True}
[2026-06-22 18:54:15,773.773 INFO    ] 2026-06-22 18:54:15
[2026-06-22 18:54:17,126.126 INFO    ] 200
[2026-06-22 18:54:17,129.129 INFO    ] {"skus": [{"tray_id": "11", "qty": 1, "mrp": "20", "door_id": "", "name": "Max Protein Cheese jalapeno  32gm per peice", "sku_total": 20.0, "image_url": "https://images.tinymart.in/product/4500671-2117.jpg", "unit_price": "20", "skuid": "4500671"}, {"tray_id": "14", "qty": 3, "mrp": "30", "door_id": "", "name": "Farmely Panchmeva 21gm per peice", "sku_total": 90.0, "image_url": "https://images.tinymart.in/product/4500668-1144.jpg", "unit_price": "30", "skuid": "4500668"}, {"tray_id": "16", "qty": 4, "mrp": "40", "door_id": "", "name": "Farmely Classic date Bites 20gm per peice", "sku_total": 160.0, "image_url": "https://images.tinymart.in/product/4500667-4339.webp", "unit_price": "40", "skuid": "4500667"}], "anomaly": 0, "rstatus": true, "orderId": "TM06202507260622185216948", "logic": "WBL", "total_amount": 270.0, "res": "True"}
[2026-06-22 18:54:17,132.132 INFO    ] {'skus': [{'qty': 1, 'unit_price': '20', 'mrp': '20', 'skuid': '4500671', 'image_url': 'https://images.tinymart.in/product/4500671-2117.jpg', 'name': 'Max Protein Cheese jalapeno  32gm per peice', 'door_id': '', 'tray_id': '11', 'sku_total': 20.0}, {'qty': 3, 'unit_price': '30', 'mrp': '30', 'skuid': '4500668', 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'name': 'Farmely Panchmeva 21gm per peice', 'door_id': '', 'tray_id': '14', 'sku_total': 90.0}, {'qty': 4, 'unit_price': '40', 'mrp': '40', 'skuid': '4500667', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'name': 'Farmely Classic date Bites 20gm per peice', 'door_id': '', 'tray_id': '16', 'sku_total': 160.0}], 'res': 'True', 'anomaly': 0, 'orderId': 'TM06202507260622185216948', 'logic': 'WBL', 'total_amount': 270.0, 'rstatus': True}
[2026-06-22 18:54:17,135.135 INFO    ] {'skus': [{'qty': 1, 'unit_price': '20', 'mrp': '20', 'skuid': '4500671', 'image_url': 'https://images.tinymart.in/product/4500671-2117.jpg', 'name': 'Max Protein Cheese jalapeno  32gm per peice', 'door_id': '', 'tray_id': '11', 'sku_total': 20.0}, {'qty': 3, 'unit_price': '30', 'mrp': '30', 'skuid': '4500668', 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'name': 'Farmely Panchmeva 21gm per peice', 'door_id': '', 'tray_id': '14', 'sku_total': 90.0}, {'qty': 4, 'unit_price': '40', 'mrp': '40', 'skuid': '4500667', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'name': 'Farmely Classic date Bites 20gm per peice', 'door_id': '', 'tray_id': '16', 'sku_total': 160.0}], 'res': 'True', 'anomaly': 0, 'orderId': 'TM06202507260622185216948', 'logic': 'WBL', 'total_amount': 270.0, 'rstatus': True}
[2026-06-22 18:54:17,137.137 INFO    ] 2026-06-22 18:54:17
[2026-06-22 18:54:17,140.140 INFO    ] 2026-06-22 18:54:17
[2026-06-22 18:54:17,142.142 INFO    ] 70
[2026-06-22 18:54:17,145.145 INFO    ] 2026-06-22 18:54:17
[2026-06-22 18:54:17,148.148 INFO    ] 2026-06-22 18:54:17
[2026-06-22 18:54:17,150.150 INFO    ]  You had Picked Excess of 200 Your Bill Amount is 270
[2026-06-22 18:54:17,153.153 INFO    ]  You had Picked Excess of 200 Your Bill Amount is 270
[2026-06-22 18:54:17,155.155 INFO    ] 3bed8fc8ddeb45e78c34dbdd79744eb5
[2026-06-22 18:54:17,163.163 INFO    ] 2026-06-22 18:54:17
[2026-06-22 18:54:17,166.166 INFO    ] creating audio file
[2026-06-22 18:54:17,242.242 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-22 18:54:18,001.001 INFO    ] gTTS API call completed successfully
[2026-06-22 18:54:19,317.317 INFO    ] 2026-06-22 18:54:19
[2026-06-22 18:54:19,320.320 INFO    ] playing audio file
[2026-06-22 18:54:19,337.337 INFO    ] 2026-06-22 18:54:19
[2026-06-22 18:54:19,341.341 INFO    ] 2026-06-22 18:54:19
[2026-06-22 18:54:19,344.344 INFO    ] publish_status: order_id=TM06202507260622185216948
[2026-06-22 18:54:19,347.347 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622185216948
[2026-06-22 18:54:19,526.526 INFO    ] [publish_status] Message added to stream with ID: 1782134659498-0
[2026-06-22 18:54:19,529.529 INFO    ] Published to order:TM06202507260622185216948: {'timestamp': '2026-06-22T13:24:19.342741Z', 'server_response': '{"skus": [{"qty": 1, "unit_price": "20", "mrp": "20", "skuid": "4500671", "image_url": "https://images.tinymart.in/product/4500671-2117.jpg", "name": "Max Protein Cheese jalapeno  32gm per peice", "door_id": "", "tray_id": "11", "sku_total": 20.0}, {"qty": 3, "unit_price": "30", "mrp": "30", "skuid": "4500668", "image_url": "https://images.tinymart.in/product/4500668-1144.jpg", "name": "Farmely Panchmeva 21gm per peice", "door_id": "", "tray_id": "14", "sku_total": 90.0}, {"qty": 4, "unit_price": "40", "mrp": "40", "skuid": "4500667", "image_url": "https://images.tinymart.in/product/4500667-4339.webp", "name": "Farmely Classic date Bites 20gm per peice", "door_id": "", "tray_id": "16", "sku_total": 160.0}], "res": "True", "anomaly": 0, "orderId": "TM06202507260622185216948", "logic": "WBL", "total_amount": 270.0, "rstatus": true}', 'order_id': 'TM06202507260622185216948', 'server_status': 'invoiceOrder'} (ID: 1782134659498-0)
[2026-06-22 18:54:20,294.294 INFO    ] {'server_response': {'skus': [{'qty': 1, 'unit_price': '20', 'mrp': '20', 'skuid': '4500671', 'image_url': 'https://images.tinymart.in/product/4500671-2117.jpg', 'name': 'Max Protein Cheese jalapeno  32gm per peice', 'door_id': '', 'tray_id': '11', 'sku_total': 20.0}, {'qty': 3, 'unit_price': '30', 'mrp': '30', 'skuid': '4500668', 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'name': 'Farmely Panchmeva 21gm per peice', 'door_id': '', 'tray_id': '14', 'sku_total': 90.0}, {'qty': 4, 'unit_price': '40', 'mrp': '40', 'skuid': '4500667', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'name': 'Farmely Classic date Bites 20gm per peice', 'door_id': '', 'tray_id': '16', 'sku_total': 160.0}], 'res': 'True', 'anomaly': 0, 'orderId': 'TM06202507260622185216948', 'logic': 'WBL', 'total_amount': 270.0, 'rstatus': True}, 'order_id': 'TM06202507260622185216948', 'server_status': 'invoiceOrder'}
[2026-06-22 18:54:20,297.297 INFO    ] 200
[2026-06-22 18:54:20,300.300 INFO    ] {"data":{"server_response":{"skus":[{"qty":1,"unit_price":"20","mrp":"20","skuid":"4500671","image_url":"https:\/\/images.tinymart.in\/product\/4500671-2117.jpg","name":"Max Protein Cheese jalapeno  32gm per peice","door_id":"","tray_id":"11","sku_total":20},{"qty":3,"unit_price":"30","mrp":"30","skuid":"4500668","image_url":"https:\/\/images.tinymart.in\/product\/4500668-1144.jpg","name":"Farmely Panchmeva 21gm per peice","door_id":"","tray_id":"14","sku_total":90},{"qty":4,"unit_price":"40","mrp":"40","skuid":"4500667","image_url":"https:\/\/images.tinymart.in\/product\/4500667-4339.webp","name":"Farmely Classic date Bites 20gm per peice","door_id":"","tray_id":"16","sku_total":160}],"res":"true","anomaly":0,"orderId":"TM06202507260622185216948","logic":"WBL","total_amount":270,"rstatus":true},"order_id":"TM06202507260622185216948","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 18:54:20,305.305 INFO    ] {'data': {'server_response': {'skus': [{'qty': 1, 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/4500671-2117.jpg', 'skuid': '4500671', 'name': 'Max Protein Cheese jalapeno  32gm per peice', 'door_id': '', 'mrp': '20', 'tray_id': '11', 'sku_total': 20}, {'qty': 3, 'unit_price': '30', 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'skuid': '4500668', 'name': 'Farmely Panchmeva 21gm per peice', 'door_id': '', 'mrp': '30', 'tray_id': '14', 'sku_total': 90}, {'qty': 4, 'unit_price': '40', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'skuid': '4500667', 'name': 'Farmely Classic date Bites 20gm per peice', 'door_id': '', 'mrp': '40', 'tray_id': '16', 'sku_total': 160}], 'res': 'true', 'anomaly': 0, 'orderId': 'TM06202507260622185216948', 'logic': 'WBL', 'total_amount': 270, 'rstatus': True}, 'order_id': 'TM06202507260622185216948', 'server_status': 'invoiceOrder'}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}}
[2026-06-22 18:54:20,309.309 INFO    ] {'data': {'server_response': {'skus': [{'qty': 1, 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/4500671-2117.jpg', 'skuid': '4500671', 'name': 'Max Protein Cheese jalapeno  32gm per peice', 'door_id': '', 'mrp': '20', 'tray_id': '11', 'sku_total': 20}, {'qty': 3, 'unit_price': '30', 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'skuid': '4500668', 'name': 'Farmely Panchmeva 21gm per peice', 'door_id': '', 'mrp': '30', 'tray_id': '14', 'sku_total': 90}, {'qty': 4, 'unit_price': '40', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'skuid': '4500667', 'name': 'Farmely Classic date Bites 20gm per peice', 'door_id': '', 'mrp': '40', 'tray_id': '16', 'sku_total': 160}], 'res': 'true', 'anomaly': 0, 'orderId': 'TM06202507260622185216948', 'logic': 'WBL', 'total_amount': 270, 'rstatus': True}, 'order_id': 'TM06202507260622185216948', 'server_status': 'invoiceOrder'}, 'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True}}
[2026-06-22 18:54:20,313.313 INFO    ] 2026-06-22 18:54:20
[2026-06-22 18:54:22,548.548 INFO    ] 200
[2026-06-22 18:54:22,551.551 INFO    ] {"orders_data_synced": [], "order_items": [], "orders_data": [], "orders_synced": [], "tray_synced": ["no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry"], "order_items_synced": [], "orders": [], "status": true, "tray_sync": []}
[2026-06-22 18:54:22,554.554 INFO    ] 2026-06-22 18:54:22
[2026-06-22 18:54:22,678.678 INFO    ] 200
[2026-06-22 18:54:22,681.681 INFO    ] True
[2026-06-22 18:54:22,683.683 INFO    ] cleanup_start_order_file_after_processing: order_id=TM06202507260622185216948
[2026-06-22 18:54:22,687.687 INFO    ] start order file deleted
[2026-06-22 18:54:22,689.689 INFO    ] Checking for system updates...
[2026-06-22 18:54:22,724.724 INFO    ] 200
[2026-06-22 18:54:22,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:54:22,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:54:22,789.789 INFO    ] No update needed
[2026-06-22 18:54:22,792.792 INFO    ] Checking for camera pi updates...
[2026-06-22 18:54:22,825.825 INFO    ] 200
[2026-06-22 18:54:22,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:54:22,869.869 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:54:22,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:54:22,959.959 INFO    ] No camera update needed
[2026-06-22 18:54:22,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:54:22,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:54:22,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:54:22,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:54:25,015.015 INFO    ] ================================================
[2026-06-22 18:54:25,031.031 INFO    ] Launching Daemon at Mon Jun 22 18:54:25 IST 2026
[2026-06-22 18:54:25,042.042 INFO    ] ================================================
[2026-06-22 18:54:25,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:54:25
[2026-06-22 18:54:26,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:54:26,363.363 INFO    ] Initializing speech engine...
[2026-06-22 18:54:26,386.386 INFO    ] 2026-06-22 18:54:26
[2026-06-22 18:54:26,643.643 INFO    ] 2026-06-22 18:54:26
[2026-06-22 18:54:26,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:54:30,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:54:30,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:54:31,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:54:31,180.180 INFO    ] time= 22/06/2026 18:54:31
[2026-06-22 18:54:31,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:54:31,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:54:31,236.236 INFO    ] No existing commands found in stream
[2026-06-22 18:54:36,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:54:36,249.249 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-22 18:54:38,848.848 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:54:38,850.850 INFO    ] Checking for system updates...
[2026-06-22 18:54:38,887.887 INFO    ] 200
[2026-06-22 18:54:38,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:54:38,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:54:38,946.946 INFO    ] No update needed
[2026-06-22 18:54:38,948.948 INFO    ] Checking for camera pi updates...
[2026-06-22 18:54:38,982.982 INFO    ] 200
[2026-06-22 18:54:38,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:54:39,034.034 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:54:39,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:54:39,138.138 INFO    ] No camera update needed
[2026-06-22 18:54:39,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:54:39,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:54:39,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:54:39,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:54:41,194.194 INFO    ] ================================================
[2026-06-22 18:54:41,210.210 INFO    ] Launching Daemon at Mon Jun 22 18:54:41 IST 2026
[2026-06-22 18:54:41,221.221 INFO    ] ================================================
[2026-06-22 18:54:41,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:54:41
[2026-06-22 18:54:42,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:54:42,558.558 INFO    ] Initializing speech engine...
[2026-06-22 18:54:42,568.568 INFO    ] 2026-06-22 18:54:42
[2026-06-22 18:54:42,846.846 INFO    ] 2026-06-22 18:54:42
[2026-06-22 18:54:42,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:54:43,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:54:43,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:54:43,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:54:43,248.248 INFO    ] time= 22/06/2026 18:54:43
[2026-06-22 18:54:43,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:54:43,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:54:43,376.376 INFO    ] No existing commands found in stream
[2026-06-22 18:54:48,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:54:48,391.391 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-22 18:54:48,999.999 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:54:49,002.002 INFO    ] Checking for system updates...
[2026-06-22 18:54:49,038.038 INFO    ] 200
[2026-06-22 18:54:49,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:54:49,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:54:49,096.096 INFO    ] No update needed
[2026-06-22 18:54:49,099.099 INFO    ] Checking for camera pi updates...
[2026-06-22 18:54:49,137.137 INFO    ] 200
[2026-06-22 18:54:49,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:54:49,180.180 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:54:49,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:54:49,291.291 INFO    ] No camera update needed
[2026-06-22 18:54:49,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:54:49,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:54:49,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:54:49,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:54:51,346.346 INFO    ] ================================================
[2026-06-22 18:54:51,362.362 INFO    ] Launching Daemon at Mon Jun 22 18:54:51 IST 2026
[2026-06-22 18:54:51,373.373 INFO    ] ================================================
[2026-06-22 18:54:51,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:54:51
[2026-06-22 18:54:52,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:54:52,917.917 INFO    ] Initializing speech engine...
[2026-06-22 18:54:52,925.925 INFO    ] 2026-06-22 18:54:52
[2026-06-22 18:54:53,213.213 INFO    ] 2026-06-22 18:54:53
[2026-06-22 18:54:53,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:54:53,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:54:53,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:54:53,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:54:53,767.767 INFO    ] time= 22/06/2026 18:54:53
[2026-06-22 18:54:53,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:54:53,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:54:53,907.907 INFO    ] No existing commands found in stream
[2026-06-22 18:54:58,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:54:58,926.926 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-22 18:55:00,718.718 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:55:00,720.720 INFO    ] Checking for system updates...
[2026-06-22 18:55:00,744.744 INFO    ] 200
[2026-06-22 18:55:00,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:55:00,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:55:00,778.778 INFO    ] No update needed
[2026-06-22 18:55:00,779.779 INFO    ] Checking for camera pi updates...
[2026-06-22 18:55:00,800.800 INFO    ] 200
[2026-06-22 18:55:00,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:55:00,832.832 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:55:00,914.914 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:55:00,916.916 INFO    ] No camera update needed
[2026-06-22 18:55:00,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:55:00,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:55:00,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:55:00,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:55:03,016.016 INFO    ] ================================================
[2026-06-22 18:55:03,039.039 INFO    ] Launching Daemon at Mon Jun 22 18:55:03 IST 2026
[2026-06-22 18:55:03,056.056 INFO    ] ================================================
[2026-06-22 18:55:03,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:55:03
[2026-06-22 18:55:04,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:55:04,641.641 INFO    ] Initializing speech engine...
[2026-06-22 18:55:04,648.648 INFO    ] 2026-06-22 18:55:04
[2026-06-22 18:55:04,901.901 INFO    ] 2026-06-22 18:55:04
[2026-06-22 18:55:04,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:55:05,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:55:05,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:55:05,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:55:05,330.330 INFO    ] time= 22/06/2026 18:55:05
[2026-06-22 18:55:05,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:55:05,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:55:05,482.482 INFO    ] No existing commands found in stream
[2026-06-22 18:55:10,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:55:10,495.495 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-22 18:55:12,826.826 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:55:12,829.829 INFO    ] Checking for system updates...
[2026-06-22 18:55:12,867.867 INFO    ] 200
[2026-06-22 18:55:12,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:55:12,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:55:12,925.925 INFO    ] No update needed
[2026-06-22 18:55:12,927.927 INFO    ] Checking for camera pi updates...
[2026-06-22 18:55:12,961.961 INFO    ] 200
[2026-06-22 18:55:12,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:55:13,003.003 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:55:13,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:55:13,184.184 INFO    ] No camera update needed
[2026-06-22 18:55:13,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:55:13,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:55:13,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:55:13,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:55:15,241.241 INFO    ] ================================================
[2026-06-22 18:55:15,256.256 INFO    ] Launching Daemon at Mon Jun 22 18:55:15 IST 2026
[2026-06-22 18:55:15,267.267 INFO    ] ================================================
[2026-06-22 18:55:15,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:55:15
[2026-06-22 18:55:16,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:55:16,620.620 INFO    ] Initializing speech engine...
[2026-06-22 18:55:16,627.627 INFO    ] 2026-06-22 18:55:16
[2026-06-22 18:55:16,874.874 INFO    ] 2026-06-22 18:55:16
[2026-06-22 18:55:16,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:55:17,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:55:17,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:55:17,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:55:17,304.304 INFO    ] time= 22/06/2026 18:55:17
[2026-06-22 18:55:17,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:55:17,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:55:17,474.474 INFO    ] No existing commands found in stream
[2026-06-22 18:55:22,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:55:22,488.488 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-22 18:55:23,686.686 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:55:23,689.689 INFO    ] Checking for system updates...
[2026-06-22 18:55:23,724.724 INFO    ] 200
[2026-06-22 18:55:23,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:55:23,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:55:23,782.782 INFO    ] No update needed
[2026-06-22 18:55:23,785.785 INFO    ] Checking for camera pi updates...
[2026-06-22 18:55:23,823.823 INFO    ] 200
[2026-06-22 18:55:23,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:55:23,866.866 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:55:23,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:55:23,948.948 INFO    ] No camera update needed
[2026-06-22 18:55:23,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:55:23,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:55:23,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:55:23,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:55:26,006.006 INFO    ] ================================================
[2026-06-22 18:55:26,022.022 INFO    ] Launching Daemon at Mon Jun 22 18:55:26 IST 2026
[2026-06-22 18:55:26,033.033 INFO    ] ================================================
[2026-06-22 18:55:26,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:55:26
[2026-06-22 18:55:27,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:55:27,361.361 INFO    ] Initializing speech engine...
[2026-06-22 18:55:27,367.367 INFO    ] 2026-06-22 18:55:27
[2026-06-22 18:55:27,659.659 INFO    ] 2026-06-22 18:55:27
[2026-06-22 18:55:27,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:55:28,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:55:28,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:55:31,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:55:31,419.419 INFO    ] time= 22/06/2026 18:55:31
[2026-06-22 18:55:31,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:55:31,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:55:31,483.483 INFO    ] No existing commands found in stream
[2026-06-22 18:55:36,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:55:36,496.496 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-22 18:55:39,957.957 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:55:39,960.960 INFO    ] Checking for system updates...
[2026-06-22 18:55:40,002.002 INFO    ] 200
[2026-06-22 18:55:40,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:55:40,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:55:40,060.060 INFO    ] No update needed
[2026-06-22 18:55:40,063.063 INFO    ] Checking for camera pi updates...
[2026-06-22 18:55:40,097.097 INFO    ] 200
[2026-06-22 18:55:40,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:55:40,140.140 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:55:40,221.221 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:55:40,223.223 INFO    ] No camera update needed
[2026-06-22 18:55:40,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:55:40,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:55:40,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:55:40,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:55:42,280.280 INFO    ] ================================================
[2026-06-22 18:55:42,296.296 INFO    ] Launching Daemon at Mon Jun 22 18:55:42 IST 2026
[2026-06-22 18:55:42,307.307 INFO    ] ================================================
[2026-06-22 18:55:42,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:55:42
[2026-06-22 18:55:43,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:55:43,778.778 INFO    ] Initializing speech engine...
[2026-06-22 18:55:43,790.790 INFO    ] 2026-06-22 18:55:43
[2026-06-22 18:55:44,065.065 INFO    ] 2026-06-22 18:55:44
[2026-06-22 18:55:44,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:55:44,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:55:44,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:55:44,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:55:44,545.545 INFO    ] time= 22/06/2026 18:55:44
[2026-06-22 18:55:44,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:55:44,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:55:44,701.701 INFO    ] No existing commands found in stream
[2026-06-22 18:55:49,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:55:49,717.717 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-22 18:55:52,650.650 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:55:52,652.652 INFO    ] Checking for system updates...
[2026-06-22 18:55:52,689.689 INFO    ] 200
[2026-06-22 18:55:52,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:55:52,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:55:52,755.755 INFO    ] No update needed
[2026-06-22 18:55:52,759.759 INFO    ] Checking for camera pi updates...
[2026-06-22 18:55:52,794.794 INFO    ] 200
[2026-06-22 18:55:52,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:55:52,838.838 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:55:52,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:55:52,930.930 INFO    ] No camera update needed
[2026-06-22 18:55:52,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:55:52,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:55:52,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:55:52,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:55:54,989.989 INFO    ] ================================================
[2026-06-22 18:55:55,005.005 INFO    ] Launching Daemon at Mon Jun 22 18:55:54 IST 2026
[2026-06-22 18:55:55,016.016 INFO    ] ================================================
[2026-06-22 18:55:55,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:55:55
[2026-06-22 18:55:56,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:55:56,492.492 INFO    ] Initializing speech engine...
[2026-06-22 18:55:56,505.505 INFO    ] 2026-06-22 18:55:56
[2026-06-22 18:55:56,796.796 INFO    ] 2026-06-22 18:55:56
[2026-06-22 18:55:56,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:55:56,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:55:56,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:55:57,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:55:57,154.154 INFO    ] time= 22/06/2026 18:55:57
[2026-06-22 18:55:57,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:55:57,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:55:57,312.312 INFO    ] No existing commands found in stream
[2026-06-22 18:56:02,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:56:02,329.329 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-22 18:56:04,108.108 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 18:56:04,111.111 INFO    ] Checking for system updates...
[2026-06-22 18:56:04,147.147 INFO    ] 200
[2026-06-22 18:56:04,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:56:04,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:56:04,207.207 INFO    ] No update needed
[2026-06-22 18:56:04,210.210 INFO    ] Checking for camera pi updates...
[2026-06-22 18:56:04,244.244 INFO    ] 200
[2026-06-22 18:56:04,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:56:04,292.292 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:56:04,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:56:04,386.386 INFO    ] No camera update needed
[2026-06-22 18:56:04,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:56:04,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:56:04,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:56:04,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:56:06,443.443 INFO    ] ================================================
[2026-06-22 18:56:06,465.465 INFO    ] Launching Daemon at Mon Jun 22 18:56:06 IST 2026
[2026-06-22 18:56:06,477.477 INFO    ] ================================================
[2026-06-22 18:56:07,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:56:07
[2026-06-22 18:56:07,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:56:07,974.974 INFO    ] Initializing speech engine...
[2026-06-22 18:56:07,987.987 INFO    ] 2026-06-22 18:56:07
[2026-06-22 18:56:08,241.241 INFO    ] 2026-06-22 18:56:08
[2026-06-22 18:56:08,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:56:08,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:56:08,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:56:08,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:56:08,782.782 INFO    ] time= 22/06/2026 18:56:08
[2026-06-22 18:56:08,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:56:08,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:56:08,955.955 INFO    ] No existing commands found in stream
[2026-06-22 18:56:13,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:56:13,973.973 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-22 18:56:17,922.922 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:56:17,924.924 INFO    ] Checking for system updates...
[2026-06-22 18:56:17,960.960 INFO    ] 200
[2026-06-22 18:56:17,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:56:18,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:56:18,020.020 INFO    ] No update needed
[2026-06-22 18:56:18,023.023 INFO    ] Checking for camera pi updates...
[2026-06-22 18:56:18,057.057 INFO    ] 200
[2026-06-22 18:56:18,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:56:18,101.101 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:56:18,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:56:18,197.197 INFO    ] No camera update needed
[2026-06-22 18:56:18,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:56:18,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:56:18,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:56:18,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:56:20,256.256 INFO    ] ================================================
[2026-06-22 18:56:20,272.272 INFO    ] Launching Daemon at Mon Jun 22 18:56:20 IST 2026
[2026-06-22 18:56:20,283.283 INFO    ] ================================================
[2026-06-22 18:56:20,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:56:20
[2026-06-22 18:56:21,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:56:21,599.599 INFO    ] Initializing speech engine...
[2026-06-22 18:56:21,611.611 INFO    ] 2026-06-22 18:56:21
[2026-06-22 18:56:21,878.878 INFO    ] 2026-06-22 18:56:21
[2026-06-22 18:56:21,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:56:22,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:56:22,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:56:22,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:56:22,415.415 INFO    ] time= 22/06/2026 18:56:22
[2026-06-22 18:56:22,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:56:22,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:56:22,627.627 INFO    ] No existing commands found in stream
[2026-06-22 18:56:27,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:56:27,656.656 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-22 18:56:33,316.316 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:56:33,319.319 INFO    ] Checking for system updates...
[2026-06-22 18:56:33,362.362 INFO    ] 200
[2026-06-22 18:56:33,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:56:33,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:56:33,421.421 INFO    ] No update needed
[2026-06-22 18:56:33,423.423 INFO    ] Checking for camera pi updates...
[2026-06-22 18:56:33,456.456 INFO    ] 200
[2026-06-22 18:56:33,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:56:33,500.500 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:56:33,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:56:33,553.553 INFO    ] No camera update needed
[2026-06-22 18:56:33,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:56:33,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:56:33,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:56:33,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:56:35,610.610 INFO    ] ================================================
[2026-06-22 18:56:35,627.627 INFO    ] Launching Daemon at Mon Jun 22 18:56:35 IST 2026
[2026-06-22 18:56:35,637.637 INFO    ] ================================================
[2026-06-22 18:56:36,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:56:36
[2026-06-22 18:56:36,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:56:37,296.296 INFO    ] Initializing speech engine...
[2026-06-22 18:56:37,309.309 INFO    ] 2026-06-22 18:56:37
[2026-06-22 18:56:37,592.592 INFO    ] 2026-06-22 18:56:37
[2026-06-22 18:56:37,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:56:37,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:56:37,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:56:38,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:56:38,127.127 INFO    ] time= 22/06/2026 18:56:38
[2026-06-22 18:56:38,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:56:38,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:56:38,279.279 INFO    ] No existing commands found in stream
[2026-06-22 18:56:43,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:56:43,312.312 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-22 18:56:44,775.775 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 18:56:44,778.778 INFO    ] Checking for system updates...
[2026-06-22 18:56:44,814.814 INFO    ] 200
[2026-06-22 18:56:44,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:56:44,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:56:44,874.874 INFO    ] No update needed
[2026-06-22 18:56:44,876.876 INFO    ] Checking for camera pi updates...
[2026-06-22 18:56:44,910.910 INFO    ] 200
[2026-06-22 18:56:44,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:56:44,956.956 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:56:45,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:56:45,036.036 INFO    ] No camera update needed
[2026-06-22 18:56:45,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:56:45,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:56:45,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:56:45,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:56:47,091.091 INFO    ] ================================================
[2026-06-22 18:56:47,107.107 INFO    ] Launching Daemon at Mon Jun 22 18:56:47 IST 2026
[2026-06-22 18:56:47,118.118 INFO    ] ================================================
[2026-06-22 18:56:47,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:56:47
[2026-06-22 18:56:48,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:56:48,590.590 INFO    ] Initializing speech engine...
[2026-06-22 18:56:48,599.599 INFO    ] 2026-06-22 18:56:48
[2026-06-22 18:56:48,858.858 INFO    ] 2026-06-22 18:56:48
[2026-06-22 18:56:48,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:56:49,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:56:49,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:56:49,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:56:49,305.305 INFO    ] time= 22/06/2026 18:56:49
[2026-06-22 18:56:49,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:56:49,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:56:49,559.559 INFO    ] No existing commands found in stream
[2026-06-22 18:56:54,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:56:54,577.577 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-22 18:56:55,147.147 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:56:55,150.150 INFO    ] Checking for system updates...
[2026-06-22 18:56:55,186.186 INFO    ] 200
[2026-06-22 18:56:55,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:56:55,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:56:55,243.243 INFO    ] No update needed
[2026-06-22 18:56:55,246.246 INFO    ] Checking for camera pi updates...
[2026-06-22 18:56:55,281.281 INFO    ] 200
[2026-06-22 18:56:55,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:56:55,331.331 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:56:55,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:56:55,432.432 INFO    ] No camera update needed
[2026-06-22 18:56:55,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:56:55,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:56:55,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:56:55,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:56:57,488.488 INFO    ] ================================================
[2026-06-22 18:56:57,503.503 INFO    ] Launching Daemon at Mon Jun 22 18:56:57 IST 2026
[2026-06-22 18:56:57,514.514 INFO    ] ================================================
[2026-06-22 18:56:58,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:56:58
[2026-06-22 18:56:58,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:56:58,938.938 INFO    ] Initializing speech engine...
[2026-06-22 18:56:58,955.955 INFO    ] 2026-06-22 18:56:58
[2026-06-22 18:56:59,244.244 INFO    ] 2026-06-22 18:56:59
[2026-06-22 18:56:59,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:56:59,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:56:59,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:56:59,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:56:59,781.781 INFO    ] time= 22/06/2026 18:56:59
[2026-06-22 18:56:59,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:56:59,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:56:59,958.958 INFO    ] No existing commands found in stream
[2026-06-22 18:57:04,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:57:04,973.973 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-22 18:57:06,910.910 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:57:06,913.913 INFO    ] Checking for system updates...
[2026-06-22 18:57:06,956.956 INFO    ] 200
[2026-06-22 18:57:06,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:57:07,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:57:07,025.025 INFO    ] No update needed
[2026-06-22 18:57:07,028.028 INFO    ] Checking for camera pi updates...
[2026-06-22 18:57:07,063.063 INFO    ] 200
[2026-06-22 18:57:07,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:57:07,109.109 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:57:07,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:57:07,196.196 INFO    ] No camera update needed
[2026-06-22 18:57:07,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:57:07,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:57:07,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:57:07,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:57:09,251.251 INFO    ] ================================================
[2026-06-22 18:57:09,266.266 INFO    ] Launching Daemon at Mon Jun 22 18:57:09 IST 2026
[2026-06-22 18:57:09,277.277 INFO    ] ================================================
[2026-06-22 18:57:09,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:57:09
[2026-06-22 18:57:10,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:57:10,841.841 INFO    ] Initializing speech engine...
[2026-06-22 18:57:10,864.864 INFO    ] 2026-06-22 18:57:10
[2026-06-22 18:57:11,119.119 INFO    ] 2026-06-22 18:57:11
[2026-06-22 18:57:11,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:57:11,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:57:11,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:57:11,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:57:11,542.542 INFO    ] time= 22/06/2026 18:57:11
[2026-06-22 18:57:11,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:57:11,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:57:11,696.696 INFO    ] No existing commands found in stream
[2026-06-22 18:57:16,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:57:16,709.709 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-22 18:57:18,800.800 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:57:18,802.802 INFO    ] Checking for system updates...
[2026-06-22 18:57:18,843.843 INFO    ] 200
[2026-06-22 18:57:18,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:57:18,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:57:18,909.909 INFO    ] No update needed
[2026-06-22 18:57:18,912.912 INFO    ] Checking for camera pi updates...
[2026-06-22 18:57:18,946.946 INFO    ] 200
[2026-06-22 18:57:18,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:57:18,989.989 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:57:19,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:57:19,189.189 INFO    ] No camera update needed
[2026-06-22 18:57:19,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:57:19,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:57:19,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:57:19,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:57:21,246.246 INFO    ] ================================================
[2026-06-22 18:57:21,262.262 INFO    ] Launching Daemon at Mon Jun 22 18:57:21 IST 2026
[2026-06-22 18:57:21,272.272 INFO    ] ================================================
[2026-06-22 18:57:21,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:57:21
[2026-06-22 18:57:22,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:57:22,922.922 INFO    ] Initializing speech engine...
[2026-06-22 18:57:22,930.930 INFO    ] 2026-06-22 18:57:22
[2026-06-22 18:57:23,222.222 INFO    ] 2026-06-22 18:57:23
[2026-06-22 18:57:23,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:57:23,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:57:23,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:57:23,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:57:23,771.771 INFO    ] time= 22/06/2026 18:57:23
[2026-06-22 18:57:23,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:57:23,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:57:23,935.935 INFO    ] No existing commands found in stream
[2026-06-22 18:57:28,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:57:28,962.962 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-22 18:57:29,921.921 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:57:29,924.924 INFO    ] Checking for system updates...
[2026-06-22 18:57:29,963.963 INFO    ] 200
[2026-06-22 18:57:29,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:57:30,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:57:30,024.024 INFO    ] No update needed
[2026-06-22 18:57:30,027.027 INFO    ] Checking for camera pi updates...
[2026-06-22 18:57:30,062.062 INFO    ] 200
[2026-06-22 18:57:30,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:57:30,108.108 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:57:30,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:57:30,198.198 INFO    ] No camera update needed
[2026-06-22 18:57:30,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:57:30,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:57:30,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:57:30,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:57:32,271.271 INFO    ] ================================================
[2026-06-22 18:57:32,287.287 INFO    ] Launching Daemon at Mon Jun 22 18:57:32 IST 2026
[2026-06-22 18:57:32,299.299 INFO    ] ================================================
[2026-06-22 18:57:32,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:57:32
[2026-06-22 18:57:33,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:57:33,761.761 INFO    ] Initializing speech engine...
[2026-06-22 18:57:33,767.767 INFO    ] 2026-06-22 18:57:33
[2026-06-22 18:57:34,064.064 INFO    ] 2026-06-22 18:57:34
[2026-06-22 18:57:34,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:57:35,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:57:35,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:57:35,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:57:35,463.463 INFO    ] time= 22/06/2026 18:57:35
[2026-06-22 18:57:35,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:57:35,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:57:35,578.578 INFO    ] No existing commands found in stream
[2026-06-22 18:57:40,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:57:40,606.606 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-22 18:57:42,106.106 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 18:57:42,109.109 INFO    ] Checking for system updates...
[2026-06-22 18:57:42,148.148 INFO    ] 200
[2026-06-22 18:57:42,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:57:42,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:57:42,214.214 INFO    ] No update needed
[2026-06-22 18:57:42,216.216 INFO    ] Checking for camera pi updates...
[2026-06-22 18:57:42,254.254 INFO    ] 200
[2026-06-22 18:57:42,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:57:42,297.297 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:57:42,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:57:42,386.386 INFO    ] No camera update needed
[2026-06-22 18:57:42,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:57:42,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:57:42,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:57:42,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:57:44,446.446 INFO    ] ================================================
[2026-06-22 18:57:44,462.462 INFO    ] Launching Daemon at Mon Jun 22 18:57:44 IST 2026
[2026-06-22 18:57:44,473.473 INFO    ] ================================================
[2026-06-22 18:57:45,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:57:45
[2026-06-22 18:57:45,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:57:45,906.906 INFO    ] Initializing speech engine...
[2026-06-22 18:57:45,926.926 INFO    ] 2026-06-22 18:57:45
[2026-06-22 18:57:46,194.194 INFO    ] 2026-06-22 18:57:46
[2026-06-22 18:57:46,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:57:46,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:57:46,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:57:46,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:57:46,544.544 INFO    ] time= 22/06/2026 18:57:46
[2026-06-22 18:57:46,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:57:46,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:57:46,625.625 INFO    ] No existing commands found in stream
[2026-06-22 18:57:51,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:57:51,638.638 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-22 18:57:53,315.315 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:57:53,319.319 INFO    ] Checking for system updates...
[2026-06-22 18:57:53,360.360 INFO    ] 200
[2026-06-22 18:57:53,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:57:53,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:57:53,423.423 INFO    ] No update needed
[2026-06-22 18:57:53,426.426 INFO    ] Checking for camera pi updates...
[2026-06-22 18:57:53,465.465 INFO    ] 200
[2026-06-22 18:57:53,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:57:53,507.507 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:57:53,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:57:53,608.608 INFO    ] No camera update needed
[2026-06-22 18:57:53,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:57:53,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:57:53,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:57:53,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:57:55,663.663 INFO    ] ================================================
[2026-06-22 18:57:55,678.678 INFO    ] Launching Daemon at Mon Jun 22 18:57:55 IST 2026
[2026-06-22 18:57:55,689.689 INFO    ] ================================================
[2026-06-22 18:57:56,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:57:56
[2026-06-22 18:57:56,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:57:57,228.228 INFO    ] Initializing speech engine...
[2026-06-22 18:57:57,239.239 INFO    ] 2026-06-22 18:57:57
[2026-06-22 18:57:57,528.528 INFO    ] 2026-06-22 18:57:57
[2026-06-22 18:57:57,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:57:57,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:57:57,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:57:58,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:57:58,065.065 INFO    ] time= 22/06/2026 18:57:58
[2026-06-22 18:57:58,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:57:58,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:57:58,221.221 INFO    ] No existing commands found in stream
[2026-06-22 18:58:03,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:58:03,251.251 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-22 18:58:08,227.227 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:58:08,230.230 INFO    ] Checking for system updates...
[2026-06-22 18:58:08,269.269 INFO    ] 200
[2026-06-22 18:58:08,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:58:08,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:58:08,329.329 INFO    ] No update needed
[2026-06-22 18:58:08,331.331 INFO    ] Checking for camera pi updates...
[2026-06-22 18:58:08,370.370 INFO    ] 200
[2026-06-22 18:58:08,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:58:08,416.416 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:58:08,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:58:08,505.505 INFO    ] No camera update needed
[2026-06-22 18:58:08,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:58:08,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:58:08,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:58:08,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:58:10,564.564 INFO    ] ================================================
[2026-06-22 18:58:10,579.579 INFO    ] Launching Daemon at Mon Jun 22 18:58:10 IST 2026
[2026-06-22 18:58:10,590.590 INFO    ] ================================================
[2026-06-22 18:58:11,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:58:11
[2026-06-22 18:58:11,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:58:12,094.094 INFO    ] Initializing speech engine...
[2026-06-22 18:58:12,101.101 INFO    ] 2026-06-22 18:58:12
[2026-06-22 18:58:12,375.375 INFO    ] 2026-06-22 18:58:12
[2026-06-22 18:58:12,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:58:12,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:58:12,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:58:12,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:58:12,891.891 INFO    ] time= 22/06/2026 18:58:12
[2026-06-22 18:58:12,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:58:12,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:58:13,078.078 INFO    ] No existing commands found in stream
[2026-06-22 18:58:18,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:58:18,108.108 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-22 18:58:21,047.047 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:58:21,049.049 INFO    ] Checking for system updates...
[2026-06-22 18:58:21,091.091 INFO    ] 200
[2026-06-22 18:58:21,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:58:21,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:58:21,158.158 INFO    ] No update needed
[2026-06-22 18:58:21,161.161 INFO    ] Checking for camera pi updates...
[2026-06-22 18:58:21,198.198 INFO    ] 200
[2026-06-22 18:58:21,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:58:21,243.243 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:58:21,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:58:21,300.300 INFO    ] No camera update needed
[2026-06-22 18:58:21,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:58:21,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:58:21,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:58:21,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:58:23,359.359 INFO    ] ================================================
[2026-06-22 18:58:23,374.374 INFO    ] Launching Daemon at Mon Jun 22 18:58:23 IST 2026
[2026-06-22 18:58:23,385.385 INFO    ] ================================================
[2026-06-22 18:58:23,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:58:23
[2026-06-22 18:58:24,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:58:24,946.946 INFO    ] Initializing speech engine...
[2026-06-22 18:58:24,958.958 INFO    ] 2026-06-22 18:58:24
[2026-06-22 18:58:25,272.272 INFO    ] 2026-06-22 18:58:25
[2026-06-22 18:58:25,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:58:25,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:58:25,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:58:25,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:58:25,788.788 INFO    ] time= 22/06/2026 18:58:25
[2026-06-22 18:58:25,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:58:25,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:58:25,951.951 INFO    ] No existing commands found in stream
[2026-06-22 18:58:30,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:58:30,984.984 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-22 18:58:32,336.336 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:58:32,339.339 INFO    ] Checking for system updates...
[2026-06-22 18:58:32,380.380 INFO    ] 200
[2026-06-22 18:58:32,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:58:32,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:58:32,452.452 INFO    ] No update needed
[2026-06-22 18:58:32,456.456 INFO    ] Checking for camera pi updates...
[2026-06-22 18:58:32,496.496 INFO    ] 200
[2026-06-22 18:58:32,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:58:32,549.549 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:58:32,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:58:32,608.608 INFO    ] No camera update needed
[2026-06-22 18:58:32,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:58:32,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:58:32,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:58:32,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:58:34,667.667 INFO    ] ================================================
[2026-06-22 18:58:34,683.683 INFO    ] Launching Daemon at Mon Jun 22 18:58:34 IST 2026
[2026-06-22 18:58:34,694.694 INFO    ] ================================================
[2026-06-22 18:58:35,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:58:35
[2026-06-22 18:58:35,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:58:36,226.226 INFO    ] Initializing speech engine...
[2026-06-22 18:58:36,236.236 INFO    ] 2026-06-22 18:58:36
[2026-06-22 18:58:36,524.524 INFO    ] 2026-06-22 18:58:36
[2026-06-22 18:58:36,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:58:39,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:58:39,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:58:40,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:58:40,206.206 INFO    ] time= 22/06/2026 18:58:40
[2026-06-22 18:58:40,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:58:40,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:58:40,263.263 INFO    ] No existing commands found in stream
[2026-06-22 18:58:45,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:58:45,276.276 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-22 18:58:48,738.738 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 18:58:48,741.741 INFO    ] Checking for system updates...
[2026-06-22 18:58:48,778.778 INFO    ] 200
[2026-06-22 18:58:48,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:58:48,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:58:48,839.839 INFO    ] No update needed
[2026-06-22 18:58:48,843.843 INFO    ] Checking for camera pi updates...
[2026-06-22 18:58:48,878.878 INFO    ] 200
[2026-06-22 18:58:48,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:58:48,922.922 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:58:48,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:58:49,002.002 INFO    ] No camera update needed
[2026-06-22 18:58:49,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:58:49,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:58:49,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:58:49,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:58:51,067.067 INFO    ] ================================================
[2026-06-22 18:58:51,082.082 INFO    ] Launching Daemon at Mon Jun 22 18:58:51 IST 2026
[2026-06-22 18:58:51,093.093 INFO    ] ================================================
[2026-06-22 18:58:51,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:58:51
[2026-06-22 18:58:52,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:58:52,440.440 INFO    ] Initializing speech engine...
[2026-06-22 18:58:52,446.446 INFO    ] 2026-06-22 18:58:52
[2026-06-22 18:58:52,741.741 INFO    ] 2026-06-22 18:58:52
[2026-06-22 18:58:52,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:58:52,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:58:53,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:58:53,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:58:53,236.236 INFO    ] time= 22/06/2026 18:58:53
[2026-06-22 18:58:53,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:58:53,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:58:53,667.667 INFO    ] No existing commands found in stream
[2026-06-22 18:58:58,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:58:58,697.697 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-22 18:59:02,177.177 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 18:59:02,180.180 INFO    ] Checking for system updates...
[2026-06-22 18:59:02,220.220 INFO    ] 200
[2026-06-22 18:59:02,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:59:02,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:59:02,285.285 INFO    ] No update needed
[2026-06-22 18:59:02,288.288 INFO    ] Checking for camera pi updates...
[2026-06-22 18:59:02,326.326 INFO    ] 200
[2026-06-22 18:59:02,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:59:02,381.381 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:59:02,450.450 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:59:02,453.453 INFO    ] No camera update needed
[2026-06-22 18:59:02,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:59:02,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:59:02,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:59:02,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:59:04,524.524 INFO    ] ================================================
[2026-06-22 18:59:04,540.540 INFO    ] Launching Daemon at Mon Jun 22 18:59:04 IST 2026
[2026-06-22 18:59:04,551.551 INFO    ] ================================================
[2026-06-22 18:59:05,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:59:05
[2026-06-22 18:59:05,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:59:05,995.995 INFO    ] Initializing speech engine...
[2026-06-22 18:59:06,005.005 INFO    ] 2026-06-22 18:59:06
[2026-06-22 18:59:06,265.265 INFO    ] 2026-06-22 18:59:06
[2026-06-22 18:59:06,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:59:09,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:59:09,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:59:10,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:59:10,039.039 INFO    ] time= 22/06/2026 18:59:10
[2026-06-22 18:59:10,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:59:10,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:59:10,103.103 INFO    ] No existing commands found in stream
[2026-06-22 18:59:15,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:59:15,115.115 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-22 18:59:17,544.544 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:59:17,547.547 INFO    ] Checking for system updates...
[2026-06-22 18:59:17,585.585 INFO    ] 200
[2026-06-22 18:59:17,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:59:17,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:59:17,643.643 INFO    ] No update needed
[2026-06-22 18:59:17,645.645 INFO    ] Checking for camera pi updates...
[2026-06-22 18:59:17,678.678 INFO    ] 200
[2026-06-22 18:59:17,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:59:17,722.722 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:59:17,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:59:17,824.824 INFO    ] No camera update needed
[2026-06-22 18:59:17,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:59:17,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:59:17,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:59:17,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:59:19,879.879 INFO    ] ================================================
[2026-06-22 18:59:19,895.895 INFO    ] Launching Daemon at Mon Jun 22 18:59:19 IST 2026
[2026-06-22 18:59:19,906.906 INFO    ] ================================================
[2026-06-22 18:59:20,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:59:20
[2026-06-22 18:59:20,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:59:21,268.268 INFO    ] Initializing speech engine...
[2026-06-22 18:59:21,276.276 INFO    ] 2026-06-22 18:59:21
[2026-06-22 18:59:21,556.556 INFO    ] 2026-06-22 18:59:21
[2026-06-22 18:59:21,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:59:21,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:59:21,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:59:22,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:59:22,109.109 INFO    ] time= 22/06/2026 18:59:22
[2026-06-22 18:59:22,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:59:22,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:59:22,249.249 INFO    ] No existing commands found in stream
[2026-06-22 18:59:27,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:59:27,263.263 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-22 18:59:27,722.722 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:59:27,725.725 INFO    ] Checking for system updates...
[2026-06-22 18:59:27,762.762 INFO    ] 200
[2026-06-22 18:59:27,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:59:27,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:59:27,819.819 INFO    ] No update needed
[2026-06-22 18:59:27,825.825 INFO    ] Checking for camera pi updates...
[2026-06-22 18:59:27,858.858 INFO    ] 200
[2026-06-22 18:59:27,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:59:27,902.902 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:59:28,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:59:28,082.082 INFO    ] No camera update needed
[2026-06-22 18:59:28,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:59:28,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:59:28,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:59:28,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:59:30,139.139 INFO    ] ================================================
[2026-06-22 18:59:30,156.156 INFO    ] Launching Daemon at Mon Jun 22 18:59:30 IST 2026
[2026-06-22 18:59:30,166.166 INFO    ] ================================================
[2026-06-22 18:59:30,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:59:30
[2026-06-22 18:59:31,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:59:31,621.621 INFO    ] Initializing speech engine...
[2026-06-22 18:59:31,630.630 INFO    ] 2026-06-22 18:59:31
[2026-06-22 18:59:31,899.899 INFO    ] 2026-06-22 18:59:31
[2026-06-22 18:59:31,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:59:32,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:59:32,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:59:32,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:59:32,394.394 INFO    ] time= 22/06/2026 18:59:32
[2026-06-22 18:59:32,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:59:32,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:59:32,578.578 INFO    ] No existing commands found in stream
[2026-06-22 18:59:37,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:59:37,595.595 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-22 18:59:40,954.954 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 18:59:40,956.956 INFO    ] Checking for system updates...
[2026-06-22 18:59:40,993.993 INFO    ] 200
[2026-06-22 18:59:40,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:59:41,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:59:41,052.052 INFO    ] No update needed
[2026-06-22 18:59:41,054.054 INFO    ] Checking for camera pi updates...
[2026-06-22 18:59:41,088.088 INFO    ] 200
[2026-06-22 18:59:41,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:59:41,131.131 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:59:41,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 18:59:41,246.246 INFO    ] No camera update needed
[2026-06-22 18:59:41,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:59:41,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:59:41,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:59:41,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:59:43,303.303 INFO    ] ================================================
[2026-06-22 18:59:43,319.319 INFO    ] Launching Daemon at Mon Jun 22 18:59:43 IST 2026
[2026-06-22 18:59:43,330.330 INFO    ] ================================================
[2026-06-22 18:59:43,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:59:43
[2026-06-22 18:59:44,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:59:44,714.714 INFO    ] Initializing speech engine...
[2026-06-22 18:59:44,723.723 INFO    ] 2026-06-22 18:59:44
[2026-06-22 18:59:44,991.991 INFO    ] 2026-06-22 18:59:44
[2026-06-22 18:59:45,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:59:45,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:59:45,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:59:45,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:59:45,504.504 INFO    ] time= 22/06/2026 18:59:45
[2026-06-22 18:59:45,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:59:45,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:59:45,782.782 INFO    ] No existing commands found in stream
[2026-06-22 18:59:50,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 18:59:50,812.812 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-22 18:59:54,958.958 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 18:59:54,960.960 INFO    ] Checking for system updates...
[2026-06-22 18:59:54,981.981 INFO    ] 200
[2026-06-22 18:59:54,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:59:55,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:59:55,015.015 INFO    ] No update needed
[2026-06-22 18:59:55,016.016 INFO    ] Checking for camera pi updates...
[2026-06-22 18:59:55,043.043 INFO    ] 200
[2026-06-22 18:59:55,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 18:59:55,087.087 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 18:59:55,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 18:59:55,179.179 INFO    ] No camera update needed
[2026-06-22 18:59:55,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-22 18:59:55,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 18:59:55,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 18:59:55,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 18:59:57,236.236 INFO    ] ================================================
[2026-06-22 18:59:57,250.250 INFO    ] Launching Daemon at Mon Jun 22 18:59:57 IST 2026
[2026-06-22 18:59:57,261.261 INFO    ] ================================================
[2026-06-22 18:59:57,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 18:59:57
[2026-06-22 18:59:58,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 18:59:58,720.720 INFO    ] Initializing speech engine...
[2026-06-22 18:59:58,726.726 INFO    ] 2026-06-22 18:59:58
[2026-06-22 18:59:58,985.985 INFO    ] 2026-06-22 18:59:58
[2026-06-22 18:59:59,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 18:59:59,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 18:59:59,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 18:59:59,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 18:59:59,426.426 INFO    ] time= 22/06/2026 18:59:59
[2026-06-22 18:59:59,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 18:59:59,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-22 18:59:59,666.666 INFO    ] No existing commands found in stream
[2026-06-22 19:00:04,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:00:04,692.692 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-22 19:00:09,657.657 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:00:09,659.659 INFO    ] Checking for system updates...
[2026-06-22 19:00:09,680.680 INFO    ] 200
[2026-06-22 19:00:09,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:00:09,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:00:09,713.713 INFO    ] No update needed
[2026-06-22 19:00:09,715.715 INFO    ] Checking for camera pi updates...
[2026-06-22 19:00:09,735.735 INFO    ] 200
[2026-06-22 19:00:09,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:00:09,763.763 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:00:09,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:00:09,824.824 INFO    ] No camera update needed
[2026-06-22 19:00:09,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:00:09,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:00:09,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:00:09,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:00:11,883.883 INFO    ] ================================================
[2026-06-22 19:00:11,899.899 INFO    ] Launching Daemon at Mon Jun 22 19:00:11 IST 2026
[2026-06-22 19:00:11,909.909 INFO    ] ================================================
[2026-06-22 19:00:12,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:00:12
[2026-06-22 19:00:13,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:00:13,374.374 INFO    ] Initializing speech engine...
[2026-06-22 19:00:13,383.383 INFO    ] 2026-06-22 19:00:13
[2026-06-22 19:00:13,657.657 INFO    ] 2026-06-22 19:00:13
[2026-06-22 19:00:13,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:00:13,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:00:13,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:00:14,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:00:14,140.140 INFO    ] time= 22/06/2026 19:00:14
[2026-06-22 19:00:14,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:00:14,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:00:14,368.368 INFO    ] No existing commands found in stream
[2026-06-22 19:00:19,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:00:19,391.391 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-22 19:00:20,445.445 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:00:20,448.448 INFO    ] Checking for system updates...
[2026-06-22 19:00:20,484.484 INFO    ] 200
[2026-06-22 19:00:20,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:00:20,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:00:20,548.548 INFO    ] No update needed
[2026-06-22 19:00:20,558.558 INFO    ] Checking for camera pi updates...
[2026-06-22 19:00:20,605.605 INFO    ] 200
[2026-06-22 19:00:20,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:00:20,649.649 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:00:20,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:00:20,739.739 INFO    ] No camera update needed
[2026-06-22 19:00:20,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:00:20,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:00:20,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:00:20,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:00:22,797.797 INFO    ] ================================================
[2026-06-22 19:00:22,812.812 INFO    ] Launching Daemon at Mon Jun 22 19:00:22 IST 2026
[2026-06-22 19:00:22,822.822 INFO    ] ================================================
[2026-06-22 19:00:23,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:00:23
[2026-06-22 19:00:24,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:00:24,308.308 INFO    ] Initializing speech engine...
[2026-06-22 19:00:24,325.325 INFO    ] 2026-06-22 19:00:24
[2026-06-22 19:00:24,593.593 INFO    ] 2026-06-22 19:00:24
[2026-06-22 19:00:24,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:00:25,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:00:25,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:00:26,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:00:26,070.070 INFO    ] time= 22/06/2026 19:00:26
[2026-06-22 19:00:26,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:00:26,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:00:26,208.208 INFO    ] No existing commands found in stream
[2026-06-22 19:00:31,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:00:31,223.223 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-22 19:00:32,213.213 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:00:32,216.216 INFO    ] Checking for system updates...
[2026-06-22 19:00:32,252.252 INFO    ] 200
[2026-06-22 19:00:32,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:00:32,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:00:32,312.312 INFO    ] No update needed
[2026-06-22 19:00:32,315.315 INFO    ] Checking for camera pi updates...
[2026-06-22 19:00:32,348.348 INFO    ] 200
[2026-06-22 19:00:32,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:00:32,395.395 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:00:32,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:00:32,477.477 INFO    ] No camera update needed
[2026-06-22 19:00:32,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:00:32,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:00:32,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:00:32,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:00:34,532.532 INFO    ] ================================================
[2026-06-22 19:00:34,547.547 INFO    ] Launching Daemon at Mon Jun 22 19:00:34 IST 2026
[2026-06-22 19:00:34,558.558 INFO    ] ================================================
[2026-06-22 19:00:35,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:00:35
[2026-06-22 19:00:35,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:00:36,112.112 INFO    ] Initializing speech engine...
[2026-06-22 19:00:36,122.122 INFO    ] 2026-06-22 19:00:36
[2026-06-22 19:00:36,395.395 INFO    ] 2026-06-22 19:00:36
[2026-06-22 19:00:36,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:00:37,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:00:37,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:00:37,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:00:37,785.785 INFO    ] time= 22/06/2026 19:00:37
[2026-06-22 19:00:37,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:00:37,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:00:37,952.952 INFO    ] No existing commands found in stream
[2026-06-22 19:00:42,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:00:42,966.966 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-22 19:00:47,000.000 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:00:47,003.003 INFO    ] Checking for system updates...
[2026-06-22 19:00:47,042.042 INFO    ] 200
[2026-06-22 19:00:47,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:00:47,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:00:47,100.100 INFO    ] No update needed
[2026-06-22 19:00:47,103.103 INFO    ] Checking for camera pi updates...
[2026-06-22 19:00:47,138.138 INFO    ] 200
[2026-06-22 19:00:47,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:00:47,180.180 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:00:47,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:00:47,237.237 INFO    ] No camera update needed
[2026-06-22 19:00:47,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:00:47,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:00:47,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:00:47,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:00:49,292.292 INFO    ] ================================================
[2026-06-22 19:00:49,307.307 INFO    ] Launching Daemon at Mon Jun 22 19:00:49 IST 2026
[2026-06-22 19:00:49,317.317 INFO    ] ================================================
[2026-06-22 19:00:49,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:00:49
[2026-06-22 19:00:50,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:00:50,915.915 INFO    ] Initializing speech engine...
[2026-06-22 19:00:50,921.921 INFO    ] 2026-06-22 19:00:50
[2026-06-22 19:00:51,174.174 INFO    ] 2026-06-22 19:00:51
[2026-06-22 19:00:51,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:00:51,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:00:51,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:00:51,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:00:51,629.629 INFO    ] time= 22/06/2026 19:00:51
[2026-06-22 19:00:51,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:00:51,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:00:51,864.864 INFO    ] No existing commands found in stream
[2026-06-22 19:00:56,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:00:56,889.889 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-22 19:01:00,015.015 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:01:00,018.018 INFO    ] Checking for system updates...
[2026-06-22 19:01:00,055.055 INFO    ] 200
[2026-06-22 19:01:00,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:01:00,111.111 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:01:00,114.114 INFO    ] No update needed
[2026-06-22 19:01:00,116.116 INFO    ] Checking for camera pi updates...
[2026-06-22 19:01:00,151.151 INFO    ] 200
[2026-06-22 19:01:00,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:01:00,195.195 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:01:00,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:01:00,279.279 INFO    ] No camera update needed
[2026-06-22 19:01:00,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:01:00,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:01:00,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:01:00,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:01:02,350.350 INFO    ] ================================================
[2026-06-22 19:01:02,372.372 INFO    ] Launching Daemon at Mon Jun 22 19:01:02 IST 2026
[2026-06-22 19:01:02,384.384 INFO    ] ================================================
[2026-06-22 19:01:03,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:01:03
[2026-06-22 19:01:03,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:01:03,969.969 INFO    ] Initializing speech engine...
[2026-06-22 19:01:03,983.983 INFO    ] 2026-06-22 19:01:03
[2026-06-22 19:01:04,267.267 INFO    ] 2026-06-22 19:01:04
[2026-06-22 19:01:04,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:01:04,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:01:04,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:01:04,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:01:04,795.795 INFO    ] time= 22/06/2026 19:01:04
[2026-06-22 19:01:04,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:01:04,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:01:04,956.956 INFO    ] No existing commands found in stream
[2026-06-22 19:01:09,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:01:09,986.986 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-22 19:01:14,508.508 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:01:14,511.511 INFO    ] Checking for system updates...
[2026-06-22 19:01:14,549.549 INFO    ] 200
[2026-06-22 19:01:14,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:01:14,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:01:14,611.611 INFO    ] No update needed
[2026-06-22 19:01:14,614.614 INFO    ] Checking for camera pi updates...
[2026-06-22 19:01:14,651.651 INFO    ] 200
[2026-06-22 19:01:14,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:01:14,697.697 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:01:14,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:01:14,801.801 INFO    ] No camera update needed
[2026-06-22 19:01:14,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:01:14,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:01:14,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:01:14,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:01:16,865.865 INFO    ] ================================================
[2026-06-22 19:01:16,880.880 INFO    ] Launching Daemon at Mon Jun 22 19:01:16 IST 2026
[2026-06-22 19:01:16,891.891 INFO    ] ================================================
[2026-06-22 19:01:17,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:01:17
[2026-06-22 19:01:18,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:01:18,473.473 INFO    ] Initializing speech engine...
[2026-06-22 19:01:18,479.479 INFO    ] 2026-06-22 19:01:18
[2026-06-22 19:01:18,741.741 INFO    ] 2026-06-22 19:01:18
[2026-06-22 19:01:18,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:01:18,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:01:18,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:01:19,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:01:19,127.127 INFO    ] time= 22/06/2026 19:01:19
[2026-06-22 19:01:19,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:01:19,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:01:19,327.327 INFO    ] No existing commands found in stream
[2026-06-22 19:01:24,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:01:24,343.343 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-22 19:01:28,290.290 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:01:28,292.292 INFO    ] Checking for system updates...
[2026-06-22 19:01:28,330.330 INFO    ] 200
[2026-06-22 19:01:28,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:01:28,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:01:28,391.391 INFO    ] No update needed
[2026-06-22 19:01:28,394.394 INFO    ] Checking for camera pi updates...
[2026-06-22 19:01:28,428.428 INFO    ] 200
[2026-06-22 19:01:28,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:01:28,473.473 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:01:28,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:01:28,534.534 INFO    ] No camera update needed
[2026-06-22 19:01:28,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:01:28,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:01:28,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:01:28,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:01:30,595.595 INFO    ] ================================================
[2026-06-22 19:01:30,610.610 INFO    ] Launching Daemon at Mon Jun 22 19:01:30 IST 2026
[2026-06-22 19:01:30,621.621 INFO    ] ================================================
[2026-06-22 19:01:31,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:01:31
[2026-06-22 19:01:31,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:01:32,117.117 INFO    ] Initializing speech engine...
[2026-06-22 19:01:32,123.123 INFO    ] 2026-06-22 19:01:32
[2026-06-22 19:01:32,394.394 INFO    ] 2026-06-22 19:01:32
[2026-06-22 19:01:32,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:01:32,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:01:32,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:01:32,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:01:32,962.962 INFO    ] time= 22/06/2026 19:01:32
[2026-06-22 19:01:32,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:01:32,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:01:33,112.112 INFO    ] No existing commands found in stream
[2026-06-22 19:01:38,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:01:38,130.130 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-22 19:01:45,167.167 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:01:45,171.171 INFO    ] Checking for system updates...
[2026-06-22 19:01:45,215.215 INFO    ] 200
[2026-06-22 19:01:45,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:01:45,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:01:45,289.289 INFO    ] No update needed
[2026-06-22 19:01:45,292.292 INFO    ] Checking for camera pi updates...
[2026-06-22 19:01:45,328.328 INFO    ] 200
[2026-06-22 19:01:45,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:01:45,372.372 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:01:45,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:01:45,447.447 INFO    ] No camera update needed
[2026-06-22 19:01:45,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:01:45,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:01:45,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:01:45,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:01:47,506.506 INFO    ] ================================================
[2026-06-22 19:01:47,521.521 INFO    ] Launching Daemon at Mon Jun 22 19:01:47 IST 2026
[2026-06-22 19:01:47,531.531 INFO    ] ================================================
[2026-06-22 19:01:48,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:01:48
[2026-06-22 19:01:48,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:01:48,988.988 INFO    ] Initializing speech engine...
[2026-06-22 19:01:48,994.994 INFO    ] 2026-06-22 19:01:48
[2026-06-22 19:01:49,239.239 INFO    ] 2026-06-22 19:01:49
[2026-06-22 19:01:49,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:01:49,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:01:49,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:01:49,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:01:49,712.712 INFO    ] time= 22/06/2026 19:01:49
[2026-06-22 19:01:49,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:01:49,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:01:49,869.869 INFO    ] No existing commands found in stream
[2026-06-22 19:01:54,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:01:54,891.891 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-22 19:01:59,242.242 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:01:59,243.243 INFO    ] Checking for system updates...
[2026-06-22 19:01:59,266.266 INFO    ] 200
[2026-06-22 19:01:59,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:01:59,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:01:59,299.299 INFO    ] No update needed
[2026-06-22 19:01:59,301.301 INFO    ] Checking for camera pi updates...
[2026-06-22 19:01:59,320.320 INFO    ] 200
[2026-06-22 19:01:59,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:01:59,359.359 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:01:59,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:01:59,445.445 INFO    ] No camera update needed
[2026-06-22 19:01:59,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:01:59,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:01:59,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:01:59,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:02:01,525.525 INFO    ] ================================================
[2026-06-22 19:02:01,562.562 INFO    ] Launching Daemon at Mon Jun 22 19:02:01 IST 2026
[2026-06-22 19:02:01,584.584 INFO    ] ================================================
[2026-06-22 19:02:02,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:02:02
[2026-06-22 19:02:02,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:02:03,261.261 INFO    ] Initializing speech engine...
[2026-06-22 19:02:03,279.279 INFO    ] 2026-06-22 19:02:03
[2026-06-22 19:02:03,555.555 INFO    ] 2026-06-22 19:02:03
[2026-06-22 19:02:03,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:02:03,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:02:03,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:02:03,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:02:03,978.978 INFO    ] time= 22/06/2026 19:02:03
[2026-06-22 19:02:03,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:02:04,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:02:04,153.153 INFO    ] No existing commands found in stream
[2026-06-22 19:02:09,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:02:09,181.181 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-22 19:02:10,747.747 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:02:10,748.748 INFO    ] Checking for system updates...
[2026-06-22 19:02:10,769.769 INFO    ] 200
[2026-06-22 19:02:10,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:02:10,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:02:10,802.802 INFO    ] No update needed
[2026-06-22 19:02:10,804.804 INFO    ] Checking for camera pi updates...
[2026-06-22 19:02:10,825.825 INFO    ] 200
[2026-06-22 19:02:10,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:02:10,868.868 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:02:10,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:02:10,974.974 INFO    ] No camera update needed
[2026-06-22 19:02:10,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:02:10,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:02:10,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:02:10,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:02:13,030.030 INFO    ] ================================================
[2026-06-22 19:02:13,045.045 INFO    ] Launching Daemon at Mon Jun 22 19:02:13 IST 2026
[2026-06-22 19:02:13,056.056 INFO    ] ================================================
[2026-06-22 19:02:13,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:02:13
[2026-06-22 19:02:14,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:02:14,528.528 INFO    ] Initializing speech engine...
[2026-06-22 19:02:14,535.535 INFO    ] 2026-06-22 19:02:14
[2026-06-22 19:02:14,782.782 INFO    ] 2026-06-22 19:02:14
[2026-06-22 19:02:14,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:02:16,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:02:16,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:02:17,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:02:17,172.172 INFO    ] time= 22/06/2026 19:02:17
[2026-06-22 19:02:17,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:02:17,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:02:17,297.297 INFO    ] No existing commands found in stream
[2026-06-22 19:02:22,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:02:22,312.312 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-22 19:02:23,233.233 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:02:23,236.236 INFO    ] Checking for system updates...
[2026-06-22 19:02:23,276.276 INFO    ] 200
[2026-06-22 19:02:23,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:02:23,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:02:23,349.349 INFO    ] No update needed
[2026-06-22 19:02:23,351.351 INFO    ] Checking for camera pi updates...
[2026-06-22 19:02:23,385.385 INFO    ] 200
[2026-06-22 19:02:23,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:02:23,428.428 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:02:23,490.490 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:02:23,492.492 INFO    ] No camera update needed
[2026-06-22 19:02:23,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:02:23,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:02:23,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:02:23,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:02:25,552.552 INFO    ] ================================================
[2026-06-22 19:02:25,568.568 INFO    ] Launching Daemon at Mon Jun 22 19:02:25 IST 2026
[2026-06-22 19:02:25,579.579 INFO    ] ================================================
[2026-06-22 19:02:26,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:02:26
[2026-06-22 19:02:26,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:02:26,987.987 INFO    ] Initializing speech engine...
[2026-06-22 19:02:26,996.996 INFO    ] 2026-06-22 19:02:26
[2026-06-22 19:02:27,270.270 INFO    ] 2026-06-22 19:02:27
[2026-06-22 19:02:27,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:02:27,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:02:27,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:02:27,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:02:27,649.649 INFO    ] time= 22/06/2026 19:02:27
[2026-06-22 19:02:27,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:02:27,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:02:27,799.799 INFO    ] No existing commands found in stream
[2026-06-22 19:02:32,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:02:32,828.828 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-22 19:02:34,103.103 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:02:34,106.106 INFO    ] Checking for system updates...
[2026-06-22 19:02:34,142.142 INFO    ] 200
[2026-06-22 19:02:34,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:02:34,198.198 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:02:34,201.201 INFO    ] No update needed
[2026-06-22 19:02:34,203.203 INFO    ] Checking for camera pi updates...
[2026-06-22 19:02:34,241.241 INFO    ] 200
[2026-06-22 19:02:34,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:02:34,285.285 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:02:34,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:02:34,341.341 INFO    ] No camera update needed
[2026-06-22 19:02:34,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:02:34,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:02:34,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:02:34,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:02:36,401.401 INFO    ] ================================================
[2026-06-22 19:02:36,417.417 INFO    ] Launching Daemon at Mon Jun 22 19:02:36 IST 2026
[2026-06-22 19:02:36,427.427 INFO    ] ================================================
[2026-06-22 19:02:36,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:02:36
[2026-06-22 19:02:37,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:02:37,851.851 INFO    ] Initializing speech engine...
[2026-06-22 19:02:37,861.861 INFO    ] 2026-06-22 19:02:37
[2026-06-22 19:02:38,112.112 INFO    ] 2026-06-22 19:02:38
[2026-06-22 19:02:38,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:02:38,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:02:38,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:02:38,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:02:38,488.488 INFO    ] time= 22/06/2026 19:02:38
[2026-06-22 19:02:38,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:02:38,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:02:38,638.638 INFO    ] No existing commands found in stream
[2026-06-22 19:02:43,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:02:43,666.666 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-22 19:02:47,793.793 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:02:47,795.795 INFO    ] Checking for system updates...
[2026-06-22 19:02:47,836.836 INFO    ] 200
[2026-06-22 19:02:47,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:02:47,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:02:47,901.901 INFO    ] No update needed
[2026-06-22 19:02:47,903.903 INFO    ] Checking for camera pi updates...
[2026-06-22 19:02:47,937.937 INFO    ] 200
[2026-06-22 19:02:47,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:02:47,980.980 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:02:48,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:02:48,055.055 INFO    ] No camera update needed
[2026-06-22 19:02:48,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:02:48,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:02:48,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:02:48,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:02:50,110.110 INFO    ] ================================================
[2026-06-22 19:02:50,125.125 INFO    ] Launching Daemon at Mon Jun 22 19:02:50 IST 2026
[2026-06-22 19:02:50,136.136 INFO    ] ================================================
[2026-06-22 19:02:50,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:02:50
[2026-06-22 19:02:51,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:02:51,523.523 INFO    ] Initializing speech engine...
[2026-06-22 19:02:51,529.529 INFO    ] 2026-06-22 19:02:51
[2026-06-22 19:02:51,791.791 INFO    ] 2026-06-22 19:02:51
[2026-06-22 19:02:51,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:02:52,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:02:52,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:02:52,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:02:52,268.268 INFO    ] time= 22/06/2026 19:02:52
[2026-06-22 19:02:52,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:02:52,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:02:52,483.483 INFO    ] No existing commands found in stream
[2026-06-22 19:02:57,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:02:57,507.507 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-22 19:02:58,596.596 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:02:58,599.599 INFO    ] Checking for system updates...
[2026-06-22 19:02:58,636.636 INFO    ] 200
[2026-06-22 19:02:58,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:02:58,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:02:58,701.701 INFO    ] No update needed
[2026-06-22 19:02:58,703.703 INFO    ] Checking for camera pi updates...
[2026-06-22 19:02:58,738.738 INFO    ] 200
[2026-06-22 19:02:58,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:02:58,791.791 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:02:58,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:02:58,896.896 INFO    ] No camera update needed
[2026-06-22 19:02:58,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:02:58,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:02:58,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:02:58,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:03:00,953.953 INFO    ] ================================================
[2026-06-22 19:03:00,968.968 INFO    ] Launching Daemon at Mon Jun 22 19:03:00 IST 2026
[2026-06-22 19:03:00,979.979 INFO    ] ================================================
[2026-06-22 19:03:01,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:03:01
[2026-06-22 19:03:02,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:03:02,776.776 INFO    ] Initializing speech engine...
[2026-06-22 19:03:02,786.786 INFO    ] 2026-06-22 19:03:02
[2026-06-22 19:03:03,062.062 INFO    ] 2026-06-22 19:03:03
[2026-06-22 19:03:03,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:03:03,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:03:03,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:03:03,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:03:03,621.621 INFO    ] time= 22/06/2026 19:03:03
[2026-06-22 19:03:03,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:03:03,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:03:03,772.772 INFO    ] No existing commands found in stream
[2026-06-22 19:03:08,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:03:08,790.790 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-22 19:03:11,681.681 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:03:11,683.683 INFO    ] Checking for system updates...
[2026-06-22 19:03:11,719.719 INFO    ] 200
[2026-06-22 19:03:11,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:03:11,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:03:11,777.777 INFO    ] No update needed
[2026-06-22 19:03:11,779.779 INFO    ] Checking for camera pi updates...
[2026-06-22 19:03:11,818.818 INFO    ] 200
[2026-06-22 19:03:11,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:03:11,865.865 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:03:11,936.936 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:03:11,938.938 INFO    ] No camera update needed
[2026-06-22 19:03:11,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:03:11,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:03:11,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:03:11,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:03:13,994.994 INFO    ] ================================================
[2026-06-22 19:03:14,010.010 INFO    ] Launching Daemon at Mon Jun 22 19:03:14 IST 2026
[2026-06-22 19:03:14,020.020 INFO    ] ================================================
[2026-06-22 19:03:14,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:03:14
[2026-06-22 19:03:15,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:03:15,425.425 INFO    ] Initializing speech engine...
[2026-06-22 19:03:15,448.448 INFO    ] 2026-06-22 19:03:15
[2026-06-22 19:03:15,704.704 INFO    ] 2026-06-22 19:03:15
[2026-06-22 19:03:15,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:03:18,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:03:18,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:03:19,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:03:19,277.277 INFO    ] time= 22/06/2026 19:03:19
[2026-06-22 19:03:19,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:03:19,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:03:19,340.340 INFO    ] No existing commands found in stream
[2026-06-22 19:03:24,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:03:24,352.352 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-22 19:03:26,080.080 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:03:26,083.083 INFO    ] Checking for system updates...
[2026-06-22 19:03:26,120.120 INFO    ] 200
[2026-06-22 19:03:26,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:03:26,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:03:26,180.180 INFO    ] No update needed
[2026-06-22 19:03:26,182.182 INFO    ] Checking for camera pi updates...
[2026-06-22 19:03:26,217.217 INFO    ] 200
[2026-06-22 19:03:26,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:03:26,265.265 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:03:26,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:03:26,350.350 INFO    ] No camera update needed
[2026-06-22 19:03:26,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:03:26,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:03:26,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:03:26,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:03:28,408.408 INFO    ] ================================================
[2026-06-22 19:03:28,423.423 INFO    ] Launching Daemon at Mon Jun 22 19:03:28 IST 2026
[2026-06-22 19:03:28,434.434 INFO    ] ================================================
[2026-06-22 19:03:28,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:03:28
[2026-06-22 19:03:29,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:03:29,742.742 INFO    ] Initializing speech engine...
[2026-06-22 19:03:29,751.751 INFO    ] 2026-06-22 19:03:29
[2026-06-22 19:03:30,026.026 INFO    ] 2026-06-22 19:03:30
[2026-06-22 19:03:30,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:03:30,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:03:30,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:03:30,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:03:30,482.482 INFO    ] time= 22/06/2026 19:03:30
[2026-06-22 19:03:30,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:03:30,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:03:30,818.818 INFO    ] No existing commands found in stream
[2026-06-22 19:03:35,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:03:35,846.846 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-22 19:03:39,886.886 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:03:39,889.889 INFO    ] Checking for system updates...
[2026-06-22 19:03:39,928.928 INFO    ] 200
[2026-06-22 19:03:39,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:03:39,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:03:39,998.998 INFO    ] No update needed
[2026-06-22 19:03:40,001.001 INFO    ] Checking for camera pi updates...
[2026-06-22 19:03:40,037.037 INFO    ] 200
[2026-06-22 19:03:40,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:03:40,081.081 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:03:40,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:03:40,280.280 INFO    ] No camera update needed
[2026-06-22 19:03:40,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:03:40,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:03:40,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:03:40,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:03:42,334.334 INFO    ] ================================================
[2026-06-22 19:03:42,350.350 INFO    ] Launching Daemon at Mon Jun 22 19:03:42 IST 2026
[2026-06-22 19:03:42,361.361 INFO    ] ================================================
[2026-06-22 19:03:42,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:03:42
[2026-06-22 19:03:43,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:03:43,874.874 INFO    ] Initializing speech engine...
[2026-06-22 19:03:43,883.883 INFO    ] 2026-06-22 19:03:43
[2026-06-22 19:03:44,171.171 INFO    ] 2026-06-22 19:03:44
[2026-06-22 19:03:44,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:03:44,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:03:44,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:03:44,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:03:44,719.719 INFO    ] time= 22/06/2026 19:03:44
[2026-06-22 19:03:44,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:03:44,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:03:44,823.823 INFO    ] No existing commands found in stream
[2026-06-22 19:03:49,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:03:49,849.849 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-22 19:03:54,534.534 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:03:54,537.537 INFO    ] Checking for system updates...
[2026-06-22 19:03:54,577.577 INFO    ] 200
[2026-06-22 19:03:54,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:03:54,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:03:54,634.634 INFO    ] No update needed
[2026-06-22 19:03:54,637.637 INFO    ] Checking for camera pi updates...
[2026-06-22 19:03:54,671.671 INFO    ] 200
[2026-06-22 19:03:54,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:03:54,715.715 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:03:54,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:03:54,770.770 INFO    ] No camera update needed
[2026-06-22 19:03:54,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:03:54,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:03:54,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:03:54,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:03:56,820.820 INFO    ] ================================================
[2026-06-22 19:03:56,835.835 INFO    ] Launching Daemon at Mon Jun 22 19:03:56 IST 2026
[2026-06-22 19:03:56,846.846 INFO    ] ================================================
[2026-06-22 19:03:57,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:03:57
[2026-06-22 19:03:57,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:03:58,267.267 INFO    ] Initializing speech engine...
[2026-06-22 19:03:58,276.276 INFO    ] 2026-06-22 19:03:58
[2026-06-22 19:03:58,539.539 INFO    ] 2026-06-22 19:03:58
[2026-06-22 19:03:58,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:03:58,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:03:58,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:03:58,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:03:59,035.035 INFO    ] time= 22/06/2026 19:03:58
[2026-06-22 19:03:59,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:03:59,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:03:59,199.199 INFO    ] No existing commands found in stream
[2026-06-22 19:04:04,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:04:04,228.228 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-22 19:04:06,989.989 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:04:06,992.992 INFO    ] Checking for system updates...
[2026-06-22 19:04:07,032.032 INFO    ] 200
[2026-06-22 19:04:07,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:04:07,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:04:07,103.103 INFO    ] No update needed
[2026-06-22 19:04:07,107.107 INFO    ] Checking for camera pi updates...
[2026-06-22 19:04:07,144.144 INFO    ] 200
[2026-06-22 19:04:07,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:04:07,192.192 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:04:07,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:04:07,256.256 INFO    ] No camera update needed
[2026-06-22 19:04:07,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:04:07,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:04:07,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:04:07,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:04:09,311.311 INFO    ] ================================================
[2026-06-22 19:04:09,326.326 INFO    ] Launching Daemon at Mon Jun 22 19:04:09 IST 2026
[2026-06-22 19:04:09,337.337 INFO    ] ================================================
[2026-06-22 19:04:09,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:04:09
[2026-06-22 19:04:10,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:04:10,652.652 INFO    ] Initializing speech engine...
[2026-06-22 19:04:10,676.676 INFO    ] 2026-06-22 19:04:10
[2026-06-22 19:04:10,933.933 INFO    ] 2026-06-22 19:04:10
[2026-06-22 19:04:10,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:04:11,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:04:11,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:04:11,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:04:11,380.380 INFO    ] time= 22/06/2026 19:04:11
[2026-06-22 19:04:11,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:04:11,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:04:11,661.661 INFO    ] No existing commands found in stream
[2026-06-22 19:04:16,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:04:16,678.678 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-22 19:04:21,377.377 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:04:21,379.379 INFO    ] Checking for system updates...
[2026-06-22 19:04:21,415.415 INFO    ] 200
[2026-06-22 19:04:21,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:04:21,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:04:21,474.474 INFO    ] No update needed
[2026-06-22 19:04:21,477.477 INFO    ] Checking for camera pi updates...
[2026-06-22 19:04:21,514.514 INFO    ] 200
[2026-06-22 19:04:21,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:04:21,562.562 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:04:21,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:04:21,671.671 INFO    ] No camera update needed
[2026-06-22 19:04:21,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:04:21,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:04:21,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:04:21,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:04:23,725.725 INFO    ] ================================================
[2026-06-22 19:04:23,740.740 INFO    ] Launching Daemon at Mon Jun 22 19:04:23 IST 2026
[2026-06-22 19:04:23,751.751 INFO    ] ================================================
[2026-06-22 19:04:24,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:04:24
[2026-06-22 19:04:24,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:04:25,232.232 INFO    ] Initializing speech engine...
[2026-06-22 19:04:25,243.243 INFO    ] 2026-06-22 19:04:25
[2026-06-22 19:04:25,530.530 INFO    ] 2026-06-22 19:04:25
[2026-06-22 19:04:25,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:04:25,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:04:25,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:04:26,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:04:26,062.062 INFO    ] time= 22/06/2026 19:04:26
[2026-06-22 19:04:26,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:04:26,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:04:26,247.247 INFO    ] No existing commands found in stream
[2026-06-22 19:04:31,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:04:31,271.271 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-22 19:04:34,907.907 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:04:34,910.910 INFO    ] Checking for system updates...
[2026-06-22 19:04:34,946.946 INFO    ] 200
[2026-06-22 19:04:34,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:04:35,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:04:35,005.005 INFO    ] No update needed
[2026-06-22 19:04:35,008.008 INFO    ] Checking for camera pi updates...
[2026-06-22 19:04:35,041.041 INFO    ] 200
[2026-06-22 19:04:35,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:04:35,084.084 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:04:35,164.164 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:04:35,167.167 INFO    ] No camera update needed
[2026-06-22 19:04:35,169.169 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:04:35,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:04:35,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:04:35,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:04:37,222.222 INFO    ] ================================================
[2026-06-22 19:04:37,237.237 INFO    ] Launching Daemon at Mon Jun 22 19:04:37 IST 2026
[2026-06-22 19:04:37,248.248 INFO    ] ================================================
[2026-06-22 19:04:37,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:04:37
[2026-06-22 19:04:38,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:04:38,649.649 INFO    ] Initializing speech engine...
[2026-06-22 19:04:38,672.672 INFO    ] 2026-06-22 19:04:38
[2026-06-22 19:04:38,928.928 INFO    ] 2026-06-22 19:04:38
[2026-06-22 19:04:38,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:04:39,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:04:39,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:04:39,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:04:39,306.306 INFO    ] time= 22/06/2026 19:04:39
[2026-06-22 19:04:39,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:04:39,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:04:39,435.435 INFO    ] No existing commands found in stream
[2026-06-22 19:04:44,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:04:44,456.456 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-22 19:04:45,723.723 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:04:45,726.726 INFO    ] Checking for system updates...
[2026-06-22 19:04:45,762.762 INFO    ] 200
[2026-06-22 19:04:45,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:04:45,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:04:45,835.835 INFO    ] No update needed
[2026-06-22 19:04:45,838.838 INFO    ] Checking for camera pi updates...
[2026-06-22 19:04:45,878.878 INFO    ] 200
[2026-06-22 19:04:45,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:04:45,926.926 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:04:45,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:04:45,984.984 INFO    ] No camera update needed
[2026-06-22 19:04:45,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:04:45,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:04:45,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:04:46,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:04:48,040.040 INFO    ] ================================================
[2026-06-22 19:04:48,055.055 INFO    ] Launching Daemon at Mon Jun 22 19:04:48 IST 2026
[2026-06-22 19:04:48,066.066 INFO    ] ================================================
[2026-06-22 19:04:48,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:04:48
[2026-06-22 19:04:49,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:04:49,567.567 INFO    ] Initializing speech engine...
[2026-06-22 19:04:49,577.577 INFO    ] 2026-06-22 19:04:49
[2026-06-22 19:04:49,823.823 INFO    ] 2026-06-22 19:04:49
[2026-06-22 19:04:49,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:04:52,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:04:52,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:04:52,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:04:52,784.784 INFO    ] time= 22/06/2026 19:04:52
[2026-06-22 19:04:52,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:04:52,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:04:52,839.839 INFO    ] No existing commands found in stream
[2026-06-22 19:04:57,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:04:57,851.851 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-22 19:04:58,941.941 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:04:58,945.945 INFO    ] Checking for system updates...
[2026-06-22 19:04:58,985.985 INFO    ] 200
[2026-06-22 19:04:58,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:04:59,046.046 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:04:59,049.049 INFO    ] No update needed
[2026-06-22 19:04:59,052.052 INFO    ] Checking for camera pi updates...
[2026-06-22 19:04:59,087.087 INFO    ] 200
[2026-06-22 19:04:59,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:04:59,137.137 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:04:59,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:04:59,222.222 INFO    ] No camera update needed
[2026-06-22 19:04:59,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:04:59,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:04:59,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:04:59,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:05:01,327.327 INFO    ] ================================================
[2026-06-22 19:05:01,399.399 INFO    ] Launching Daemon at Mon Jun 22 19:05:01 IST 2026
[2026-06-22 19:05:01,465.465 INFO    ] ================================================
[2026-06-22 19:05:02,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:05:02
[2026-06-22 19:05:03,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:05:03,432.432 INFO    ] Initializing speech engine...
[2026-06-22 19:05:03,440.440 INFO    ] 2026-06-22 19:05:03
[2026-06-22 19:05:03,744.744 INFO    ] 2026-06-22 19:05:03
[2026-06-22 19:05:03,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:05:04,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:05:04,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:05:04,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:05:04,248.248 INFO    ] time= 22/06/2026 19:05:04
[2026-06-22 19:05:04,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:05:04,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:05:04,406.406 INFO    ] No existing commands found in stream
[2026-06-22 19:05:09,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:05:09,430.430 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-22 19:05:12,026.026 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:05:12,028.028 INFO    ] Checking for system updates...
[2026-06-22 19:05:12,065.065 INFO    ] 200
[2026-06-22 19:05:12,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:05:12,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:05:12,126.126 INFO    ] No update needed
[2026-06-22 19:05:12,129.129 INFO    ] Checking for camera pi updates...
[2026-06-22 19:05:12,176.176 INFO    ] 200
[2026-06-22 19:05:12,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:05:12,219.219 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:05:12,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:05:12,304.304 INFO    ] No camera update needed
[2026-06-22 19:05:12,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:05:12,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:05:12,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:05:12,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:05:14,358.358 INFO    ] ================================================
[2026-06-22 19:05:14,373.373 INFO    ] Launching Daemon at Mon Jun 22 19:05:14 IST 2026
[2026-06-22 19:05:14,384.384 INFO    ] ================================================
[2026-06-22 19:05:14,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:05:14
[2026-06-22 19:05:15,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:05:15,811.811 INFO    ] Initializing speech engine...
[2026-06-22 19:05:15,816.816 INFO    ] 2026-06-22 19:05:15
[2026-06-22 19:05:16,076.076 INFO    ] 2026-06-22 19:05:16
[2026-06-22 19:05:16,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:05:16,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:05:16,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:05:16,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:05:16,594.594 INFO    ] time= 22/06/2026 19:05:16
[2026-06-22 19:05:16,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:05:16,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:05:16,704.704 INFO    ] No existing commands found in stream
[2026-06-22 19:05:21,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:05:21,737.737 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-22 19:05:25,262.262 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:05:25,265.265 INFO    ] Checking for system updates...
[2026-06-22 19:05:25,305.305 INFO    ] 200
[2026-06-22 19:05:25,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:05:25,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:05:25,371.371 INFO    ] No update needed
[2026-06-22 19:05:25,373.373 INFO    ] Checking for camera pi updates...
[2026-06-22 19:05:25,410.410 INFO    ] 200
[2026-06-22 19:05:25,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:05:25,450.450 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:05:25,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:05:25,530.530 INFO    ] No camera update needed
[2026-06-22 19:05:25,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:05:25,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:05:25,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:05:25,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:05:27,576.576 INFO    ] ================================================
[2026-06-22 19:05:27,592.592 INFO    ] Launching Daemon at Mon Jun 22 19:05:27 IST 2026
[2026-06-22 19:05:27,603.603 INFO    ] ================================================
[2026-06-22 19:05:28,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:05:28
[2026-06-22 19:05:28,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:05:29,221.221 INFO    ] Initializing speech engine...
[2026-06-22 19:05:29,232.232 INFO    ] 2026-06-22 19:05:29
[2026-06-22 19:05:29,511.511 INFO    ] 2026-06-22 19:05:29
[2026-06-22 19:05:29,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:05:29,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:05:29,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:05:30,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:05:30,181.181 INFO    ] time= 22/06/2026 19:05:30
[2026-06-22 19:05:30,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:05:30,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:05:30,390.390 INFO    ] No existing commands found in stream
[2026-06-22 19:05:35,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:05:35,411.411 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-22 19:05:37,276.276 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:05:37,333.333 INFO    ] Checking for system updates...
[2026-06-22 19:05:37,374.374 INFO    ] 200
[2026-06-22 19:05:37,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:05:37,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:05:37,438.438 INFO    ] No update needed
[2026-06-22 19:05:37,441.441 INFO    ] Checking for camera pi updates...
[2026-06-22 19:05:37,475.475 INFO    ] 200
[2026-06-22 19:05:37,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:05:37,523.523 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:05:37,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:05:37,609.609 INFO    ] No camera update needed
[2026-06-22 19:05:37,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:05:37,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:05:37,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:05:37,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:05:39,665.665 INFO    ] ================================================
[2026-06-22 19:05:39,680.680 INFO    ] Launching Daemon at Mon Jun 22 19:05:39 IST 2026
[2026-06-22 19:05:39,691.691 INFO    ] ================================================
[2026-06-22 19:05:40,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:05:40
[2026-06-22 19:05:40,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:05:41,306.306 INFO    ] Initializing speech engine...
[2026-06-22 19:05:41,315.315 INFO    ] 2026-06-22 19:05:41
[2026-06-22 19:05:41,618.618 INFO    ] 2026-06-22 19:05:41
[2026-06-22 19:05:41,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:05:41,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:05:41,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:05:42,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:05:42,126.126 INFO    ] time= 22/06/2026 19:05:42
[2026-06-22 19:05:42,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:05:42,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:05:42,325.325 INFO    ] No existing commands found in stream
[2026-06-22 19:05:47,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:05:47,380.380 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-22 19:05:49,303.303 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:05:49,306.306 INFO    ] Checking for system updates...
[2026-06-22 19:05:49,342.342 INFO    ] 200
[2026-06-22 19:05:49,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:05:49,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:05:49,407.407 INFO    ] No update needed
[2026-06-22 19:05:49,409.409 INFO    ] Checking for camera pi updates...
[2026-06-22 19:05:49,443.443 INFO    ] 200
[2026-06-22 19:05:49,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:05:49,476.476 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:05:49,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:05:49,659.659 INFO    ] No camera update needed
[2026-06-22 19:05:49,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:05:49,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:05:49,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:05:49,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:05:51,714.714 INFO    ] ================================================
[2026-06-22 19:05:51,729.729 INFO    ] Launching Daemon at Mon Jun 22 19:05:51 IST 2026
[2026-06-22 19:05:51,740.740 INFO    ] ================================================
[2026-06-22 19:05:52,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:05:52
[2026-06-22 19:05:52,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:05:53,156.156 INFO    ] Initializing speech engine...
[2026-06-22 19:05:53,173.173 INFO    ] 2026-06-22 19:05:53
[2026-06-22 19:05:53,421.421 INFO    ] 2026-06-22 19:05:53
[2026-06-22 19:05:53,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:05:54,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:05:54,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:05:55,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:05:55,411.411 INFO    ] time= 22/06/2026 19:05:55
[2026-06-22 19:05:55,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:05:55,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:05:55,521.521 INFO    ] No existing commands found in stream
[2026-06-22 19:06:00,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:06:00,536.536 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-22 19:06:03,139.139 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:06:03,142.142 INFO    ] Checking for system updates...
[2026-06-22 19:06:03,182.182 INFO    ] 200
[2026-06-22 19:06:03,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:06:03,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:06:03,247.247 INFO    ] No update needed
[2026-06-22 19:06:03,250.250 INFO    ] Checking for camera pi updates...
[2026-06-22 19:06:03,284.284 INFO    ] 200
[2026-06-22 19:06:03,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:06:03,328.328 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:06:03,380.380 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:06:03,382.382 INFO    ] No camera update needed
[2026-06-22 19:06:03,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:06:03,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:06:03,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:06:03,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:06:05,445.445 INFO    ] ================================================
[2026-06-22 19:06:05,460.460 INFO    ] Launching Daemon at Mon Jun 22 19:06:05 IST 2026
[2026-06-22 19:06:05,471.471 INFO    ] ================================================
[2026-06-22 19:06:06,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:06:06
[2026-06-22 19:06:06,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:06:06,956.956 INFO    ] Initializing speech engine...
[2026-06-22 19:06:06,975.975 INFO    ] 2026-06-22 19:06:06
[2026-06-22 19:06:07,222.222 INFO    ] 2026-06-22 19:06:07
[2026-06-22 19:06:07,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:06:07,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:06:07,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:06:07,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:06:07,691.691 INFO    ] time= 22/06/2026 19:06:07
[2026-06-22 19:06:07,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:06:07,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:06:07,920.920 INFO    ] No existing commands found in stream
[2026-06-22 19:06:12,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:06:12,945.945 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-22 19:06:13,991.991 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:06:13,994.994 INFO    ] Checking for system updates...
[2026-06-22 19:06:14,034.034 INFO    ] 200
[2026-06-22 19:06:14,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:06:14,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:06:14,099.099 INFO    ] No update needed
[2026-06-22 19:06:14,102.102 INFO    ] Checking for camera pi updates...
[2026-06-22 19:06:14,140.140 INFO    ] 200
[2026-06-22 19:06:14,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:06:14,191.191 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:06:14,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:06:14,291.291 INFO    ] No camera update needed
[2026-06-22 19:06:14,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:06:14,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:06:14,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:06:14,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:06:16,350.350 INFO    ] ================================================
[2026-06-22 19:06:16,366.366 INFO    ] Launching Daemon at Mon Jun 22 19:06:16 IST 2026
[2026-06-22 19:06:16,376.376 INFO    ] ================================================
[2026-06-22 19:06:16,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:06:16
[2026-06-22 19:06:17,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:06:17,692.692 INFO    ] Initializing speech engine...
[2026-06-22 19:06:17,700.700 INFO    ] 2026-06-22 19:06:17
[2026-06-22 19:06:17,973.973 INFO    ] 2026-06-22 19:06:17
[2026-06-22 19:06:18,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:06:18,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:06:18,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:06:18,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:06:18,443.443 INFO    ] time= 22/06/2026 19:06:18
[2026-06-22 19:06:18,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:06:18,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:06:18,678.678 INFO    ] No existing commands found in stream
[2026-06-22 19:06:23,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:06:23,697.697 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-22 19:06:26,487.487 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:06:26,490.490 INFO    ] Checking for system updates...
[2026-06-22 19:06:26,531.531 INFO    ] 200
[2026-06-22 19:06:26,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:06:26,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:06:26,592.592 INFO    ] No update needed
[2026-06-22 19:06:26,595.595 INFO    ] Checking for camera pi updates...
[2026-06-22 19:06:26,633.633 INFO    ] 200
[2026-06-22 19:06:26,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:06:26,681.681 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:06:26,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:06:26,737.737 INFO    ] No camera update needed
[2026-06-22 19:06:26,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:06:26,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:06:26,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:06:26,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:06:28,796.796 INFO    ] ================================================
[2026-06-22 19:06:28,811.811 INFO    ] Launching Daemon at Mon Jun 22 19:06:28 IST 2026
[2026-06-22 19:06:28,822.822 INFO    ] ================================================
[2026-06-22 19:06:29,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:06:29
[2026-06-22 19:06:29,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:06:30,187.187 INFO    ] Initializing speech engine...
[2026-06-22 19:06:30,202.202 INFO    ] 2026-06-22 19:06:30
[2026-06-22 19:06:30,467.467 INFO    ] 2026-06-22 19:06:30
[2026-06-22 19:06:30,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:06:30,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:06:30,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:06:30,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:06:30,967.967 INFO    ] time= 22/06/2026 19:06:30
[2026-06-22 19:06:31,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:06:31,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:06:31,162.162 INFO    ] No existing commands found in stream
[2026-06-22 19:06:36,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:06:36,185.185 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-22 19:06:40,197.197 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:06:40,199.199 INFO    ] Checking for system updates...
[2026-06-22 19:06:40,239.239 INFO    ] 200
[2026-06-22 19:06:40,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:06:40,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:06:40,303.303 INFO    ] No update needed
[2026-06-22 19:06:40,306.306 INFO    ] Checking for camera pi updates...
[2026-06-22 19:06:40,344.344 INFO    ] 200
[2026-06-22 19:06:40,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:06:40,387.387 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:06:40,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:06:40,483.483 INFO    ] No camera update needed
[2026-06-22 19:06:40,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:06:40,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:06:40,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:06:40,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:06:42,538.538 INFO    ] ================================================
[2026-06-22 19:06:42,553.553 INFO    ] Launching Daemon at Mon Jun 22 19:06:42 IST 2026
[2026-06-22 19:06:42,564.564 INFO    ] ================================================
[2026-06-22 19:06:43,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:06:43
[2026-06-22 19:06:43,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:06:44,090.090 INFO    ] Initializing speech engine...
[2026-06-22 19:06:44,097.097 INFO    ] 2026-06-22 19:06:44
[2026-06-22 19:06:44,360.360 INFO    ] 2026-06-22 19:06:44
[2026-06-22 19:06:44,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:06:44,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:06:44,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:06:44,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:06:44,868.868 INFO    ] time= 22/06/2026 19:06:44
[2026-06-22 19:06:44,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:06:44,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:06:45,058.058 INFO    ] No existing commands found in stream
[2026-06-22 19:06:50,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:06:50,072.072 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-22 19:06:51,106.106 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:06:51,108.108 INFO    ] Checking for system updates...
[2026-06-22 19:06:51,148.148 INFO    ] 200
[2026-06-22 19:06:51,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:06:51,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:06:51,213.213 INFO    ] No update needed
[2026-06-22 19:06:51,216.216 INFO    ] Checking for camera pi updates...
[2026-06-22 19:06:51,251.251 INFO    ] 200
[2026-06-22 19:06:51,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:06:51,295.295 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:06:51,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:06:51,380.380 INFO    ] No camera update needed
[2026-06-22 19:06:51,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:06:51,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:06:51,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:06:51,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:06:53,437.437 INFO    ] ================================================
[2026-06-22 19:06:53,453.453 INFO    ] Launching Daemon at Mon Jun 22 19:06:53 IST 2026
[2026-06-22 19:06:53,465.465 INFO    ] ================================================
[2026-06-22 19:06:54,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:06:54
[2026-06-22 19:06:54,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:06:54,850.850 INFO    ] Initializing speech engine...
[2026-06-22 19:06:54,859.859 INFO    ] 2026-06-22 19:06:54
[2026-06-22 19:06:55,108.108 INFO    ] 2026-06-22 19:06:55
[2026-06-22 19:06:55,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:06:56,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:06:56,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:06:56,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:06:56,839.839 INFO    ] time= 22/06/2026 19:06:56
[2026-06-22 19:06:56,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:06:56,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:06:57,144.144 INFO    ] No existing commands found in stream
[2026-06-22 19:07:02,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:07:02,157.157 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-22 19:07:06,548.548 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:07:06,551.551 INFO    ] Checking for system updates...
[2026-06-22 19:07:06,587.587 INFO    ] 200
[2026-06-22 19:07:06,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:07:06,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:07:06,650.650 INFO    ] No update needed
[2026-06-22 19:07:06,653.653 INFO    ] Checking for camera pi updates...
[2026-06-22 19:07:06,690.690 INFO    ] 200
[2026-06-22 19:07:06,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:07:06,737.737 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:07:06,820.820 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:07:06,822.822 INFO    ] No camera update needed
[2026-06-22 19:07:06,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:07:06,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:07:06,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:07:06,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:07:08,880.880 INFO    ] ================================================
[2026-06-22 19:07:08,896.896 INFO    ] Launching Daemon at Mon Jun 22 19:07:08 IST 2026
[2026-06-22 19:07:08,908.908 INFO    ] ================================================
[2026-06-22 19:07:09,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:07:09
[2026-06-22 19:07:09,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:07:10,256.256 INFO    ] Initializing speech engine...
[2026-06-22 19:07:10,264.264 INFO    ] 2026-06-22 19:07:10
[2026-06-22 19:07:10,559.559 INFO    ] 2026-06-22 19:07:10
[2026-06-22 19:07:10,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:07:10,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:07:10,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:07:10,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:07:10,979.979 INFO    ] time= 22/06/2026 19:07:10
[2026-06-22 19:07:11,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:07:11,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:07:11,183.183 INFO    ] No existing commands found in stream
[2026-06-22 19:07:16,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:07:16,210.210 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-22 19:07:17,261.261 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:07:17,262.262 INFO    ] Checking for system updates...
[2026-06-22 19:07:17,283.283 INFO    ] 200
[2026-06-22 19:07:17,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:07:17,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:07:17,316.316 INFO    ] No update needed
[2026-06-22 19:07:17,318.318 INFO    ] Checking for camera pi updates...
[2026-06-22 19:07:17,338.338 INFO    ] 200
[2026-06-22 19:07:17,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:07:17,383.383 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:07:17,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:07:17,467.467 INFO    ] No camera update needed
[2026-06-22 19:07:17,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:07:17,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:07:17,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:07:17,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:07:19,523.523 INFO    ] ================================================
[2026-06-22 19:07:19,539.539 INFO    ] Launching Daemon at Mon Jun 22 19:07:19 IST 2026
[2026-06-22 19:07:19,550.550 INFO    ] ================================================
[2026-06-22 19:07:20,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:07:20
[2026-06-22 19:07:20,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:07:20,950.950 INFO    ] Initializing speech engine...
[2026-06-22 19:07:20,973.973 INFO    ] 2026-06-22 19:07:20
[2026-06-22 19:07:21,226.226 INFO    ] 2026-06-22 19:07:21
[2026-06-22 19:07:21,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:07:21,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:07:21,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:07:21,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:07:21,725.725 INFO    ] time= 22/06/2026 19:07:21
[2026-06-22 19:07:21,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:07:21,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:07:21,869.869 INFO    ] No existing commands found in stream
[2026-06-22 19:07:26,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:07:26,908.908 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-22 19:07:29,364.364 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:07:29,367.367 INFO    ] Checking for system updates...
[2026-06-22 19:07:29,406.406 INFO    ] 200
[2026-06-22 19:07:29,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:07:29,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:07:29,466.466 INFO    ] No update needed
[2026-06-22 19:07:29,468.468 INFO    ] Checking for camera pi updates...
[2026-06-22 19:07:29,502.502 INFO    ] 200
[2026-06-22 19:07:29,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:07:29,546.546 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:07:29,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:07:29,639.639 INFO    ] No camera update needed
[2026-06-22 19:07:29,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:07:29,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:07:29,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:07:29,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:07:31,696.696 INFO    ] ================================================
[2026-06-22 19:07:31,712.712 INFO    ] Launching Daemon at Mon Jun 22 19:07:31 IST 2026
[2026-06-22 19:07:31,723.723 INFO    ] ================================================
[2026-06-22 19:07:32,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:07:32
[2026-06-22 19:07:32,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:07:33,202.202 INFO    ] Initializing speech engine...
[2026-06-22 19:07:33,211.211 INFO    ] 2026-06-22 19:07:33
[2026-06-22 19:07:33,463.463 INFO    ] 2026-06-22 19:07:33
[2026-06-22 19:07:33,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:07:33,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:07:33,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:07:33,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:07:33,841.841 INFO    ] time= 22/06/2026 19:07:33
[2026-06-22 19:07:33,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:07:33,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:07:34,045.045 INFO    ] No existing commands found in stream
[2026-06-22 19:07:39,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:07:39,058.058 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-22 19:07:39,531.531 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:07:39,533.533 INFO    ] Checking for system updates...
[2026-06-22 19:07:39,574.574 INFO    ] 200
[2026-06-22 19:07:39,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:07:39,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:07:39,638.638 INFO    ] No update needed
[2026-06-22 19:07:39,640.640 INFO    ] Checking for camera pi updates...
[2026-06-22 19:07:39,677.677 INFO    ] 200
[2026-06-22 19:07:39,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:07:39,724.724 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:07:39,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:07:39,779.779 INFO    ] No camera update needed
[2026-06-22 19:07:39,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:07:39,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:07:39,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:07:39,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:07:41,833.833 INFO    ] ================================================
[2026-06-22 19:07:41,849.849 INFO    ] Launching Daemon at Mon Jun 22 19:07:41 IST 2026
[2026-06-22 19:07:41,860.860 INFO    ] ================================================
[2026-06-22 19:07:42,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:07:42
[2026-06-22 19:07:43,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:07:43,282.282 INFO    ] Initializing speech engine...
[2026-06-22 19:07:43,290.290 INFO    ] 2026-06-22 19:07:43
[2026-06-22 19:07:43,558.558 INFO    ] 2026-06-22 19:07:43
[2026-06-22 19:07:43,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:07:43,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:07:43,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:07:43,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:07:43,934.934 INFO    ] time= 22/06/2026 19:07:43
[2026-06-22 19:07:43,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:07:43,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:07:44,066.066 INFO    ] No existing commands found in stream
[2026-06-22 19:07:49,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:07:49,104.104 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-22 19:07:53,564.564 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:07:53,567.567 INFO    ] Checking for system updates...
[2026-06-22 19:07:53,604.604 INFO    ] 200
[2026-06-22 19:07:53,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:07:53,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:07:53,668.668 INFO    ] No update needed
[2026-06-22 19:07:53,670.670 INFO    ] Checking for camera pi updates...
[2026-06-22 19:07:53,704.704 INFO    ] 200
[2026-06-22 19:07:53,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:07:53,748.748 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:07:53,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:07:53,945.945 INFO    ] No camera update needed
[2026-06-22 19:07:53,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:07:53,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:07:53,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:07:53,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:07:56,001.001 INFO    ] ================================================
[2026-06-22 19:07:56,017.017 INFO    ] Launching Daemon at Mon Jun 22 19:07:56 IST 2026
[2026-06-22 19:07:56,028.028 INFO    ] ================================================
[2026-06-22 19:07:56,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:07:56
[2026-06-22 19:07:57,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:07:57,514.514 INFO    ] Initializing speech engine...
[2026-06-22 19:07:57,520.520 INFO    ] 2026-06-22 19:07:57
[2026-06-22 19:07:57,797.797 INFO    ] 2026-06-22 19:07:57
[2026-06-22 19:07:57,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:07:58,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:07:58,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:07:58,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:07:58,297.297 INFO    ] time= 22/06/2026 19:07:58
[2026-06-22 19:07:58,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:07:58,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:07:58,517.517 INFO    ] No existing commands found in stream
[2026-06-22 19:08:03,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:08:03,541.541 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-22 19:08:04,396.396 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:08:04,399.399 INFO    ] Checking for system updates...
[2026-06-22 19:08:04,438.438 INFO    ] 200
[2026-06-22 19:08:04,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:08:04,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:08:04,497.497 INFO    ] No update needed
[2026-06-22 19:08:04,500.500 INFO    ] Checking for camera pi updates...
[2026-06-22 19:08:04,539.539 INFO    ] 200
[2026-06-22 19:08:04,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:08:04,588.588 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:08:04,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:08:04,674.674 INFO    ] No camera update needed
[2026-06-22 19:08:04,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:08:04,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:08:04,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:08:04,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:08:06,734.734 INFO    ] ================================================
[2026-06-22 19:08:06,750.750 INFO    ] Launching Daemon at Mon Jun 22 19:08:06 IST 2026
[2026-06-22 19:08:06,762.762 INFO    ] ================================================
[2026-06-22 19:08:07,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:08:07
[2026-06-22 19:08:07,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:08:08,234.234 INFO    ] Initializing speech engine...
[2026-06-22 19:08:08,239.239 INFO    ] 2026-06-22 19:08:08
[2026-06-22 19:08:08,489.489 INFO    ] 2026-06-22 19:08:08
[2026-06-22 19:08:08,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:08:08,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:08:08,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:08:08,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:08:08,966.966 INFO    ] time= 22/06/2026 19:08:08
[2026-06-22 19:08:09,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:08:09,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:08:09,198.198 INFO    ] No existing commands found in stream
[2026-06-22 19:08:14,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:08:14,218.218 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-22 19:08:17,942.942 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:08:17,945.945 INFO    ] Checking for system updates...
[2026-06-22 19:08:17,985.985 INFO    ] 200
[2026-06-22 19:08:17,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:08:18,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:08:18,043.043 INFO    ] No update needed
[2026-06-22 19:08:18,046.046 INFO    ] Checking for camera pi updates...
[2026-06-22 19:08:18,094.094 INFO    ] 200
[2026-06-22 19:08:18,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:08:18,143.143 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:08:18,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:08:18,232.232 INFO    ] No camera update needed
[2026-06-22 19:08:18,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:08:18,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:08:18,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:08:18,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:08:20,290.290 INFO    ] ================================================
[2026-06-22 19:08:20,305.305 INFO    ] Launching Daemon at Mon Jun 22 19:08:20 IST 2026
[2026-06-22 19:08:20,316.316 INFO    ] ================================================
[2026-06-22 19:08:20,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:08:20
[2026-06-22 19:08:21,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:08:21,689.689 INFO    ] Initializing speech engine...
[2026-06-22 19:08:21,698.698 INFO    ] 2026-06-22 19:08:21
[2026-06-22 19:08:21,961.961 INFO    ] 2026-06-22 19:08:21
[2026-06-22 19:08:22,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:08:22,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:08:22,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:08:22,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:08:22,506.506 INFO    ] time= 22/06/2026 19:08:22
[2026-06-22 19:08:22,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:08:22,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:08:22,656.656 INFO    ] No existing commands found in stream
[2026-06-22 19:08:27,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:08:27,674.674 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-22 19:08:29,234.234 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:08:29,237.237 INFO    ] Checking for system updates...
[2026-06-22 19:08:29,274.274 INFO    ] 200
[2026-06-22 19:08:29,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:08:29,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:08:29,345.345 INFO    ] No update needed
[2026-06-22 19:08:29,348.348 INFO    ] Checking for camera pi updates...
[2026-06-22 19:08:29,383.383 INFO    ] 200
[2026-06-22 19:08:29,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:08:29,426.426 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:08:29,488.488 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:08:29,490.490 INFO    ] No camera update needed
[2026-06-22 19:08:29,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:08:29,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:08:29,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:08:29,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:08:31,548.548 INFO    ] ================================================
[2026-06-22 19:08:31,565.565 INFO    ] Launching Daemon at Mon Jun 22 19:08:31 IST 2026
[2026-06-22 19:08:31,577.577 INFO    ] ================================================
[2026-06-22 19:08:32,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:08:32
[2026-06-22 19:08:32,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:08:33,033.033 INFO    ] Initializing speech engine...
[2026-06-22 19:08:33,048.048 INFO    ] 2026-06-22 19:08:33
[2026-06-22 19:08:33,313.313 INFO    ] 2026-06-22 19:08:33
[2026-06-22 19:08:33,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:08:33,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:08:33,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:08:33,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:08:33,747.747 INFO    ] time= 22/06/2026 19:08:33
[2026-06-22 19:08:33,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:08:33,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:08:33,945.945 INFO    ] No existing commands found in stream
[2026-06-22 19:08:38,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:08:38,985.985 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-22 19:08:42,473.473 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:08:42,476.476 INFO    ] Checking for system updates...
[2026-06-22 19:08:42,508.508 INFO    ] 200
[2026-06-22 19:08:42,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:08:42,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:08:42,544.544 INFO    ] No update needed
[2026-06-22 19:08:42,545.545 INFO    ] Checking for camera pi updates...
[2026-06-22 19:08:42,566.566 INFO    ] 200
[2026-06-22 19:08:42,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:08:42,590.590 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:08:42,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:08:42,669.669 INFO    ] No camera update needed
[2026-06-22 19:08:42,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:08:42,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:08:42,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:08:42,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:08:44,725.725 INFO    ] ================================================
[2026-06-22 19:08:44,742.742 INFO    ] Launching Daemon at Mon Jun 22 19:08:44 IST 2026
[2026-06-22 19:08:44,753.753 INFO    ] ================================================
[2026-06-22 19:08:45,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:08:45
[2026-06-22 19:08:45,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:08:46,134.134 INFO    ] Initializing speech engine...
[2026-06-22 19:08:46,143.143 INFO    ] 2026-06-22 19:08:46
[2026-06-22 19:08:46,406.406 INFO    ] 2026-06-22 19:08:46
[2026-06-22 19:08:46,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:08:46,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:08:46,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:08:46,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:08:46,952.952 INFO    ] time= 22/06/2026 19:08:46
[2026-06-22 19:08:46,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:08:46,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:08:47,098.098 INFO    ] No existing commands found in stream
[2026-06-22 19:08:52,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:08:52,119.119 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-22 19:08:53,524.524 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:08:53,527.527 INFO    ] Checking for system updates...
[2026-06-22 19:08:53,568.568 INFO    ] 200
[2026-06-22 19:08:53,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:08:53,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:08:53,626.626 INFO    ] No update needed
[2026-06-22 19:08:53,629.629 INFO    ] Checking for camera pi updates...
[2026-06-22 19:08:53,667.667 INFO    ] 200
[2026-06-22 19:08:53,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:08:53,710.710 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:08:53,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:08:53,777.777 INFO    ] No camera update needed
[2026-06-22 19:08:53,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:08:53,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:08:53,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:08:53,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:08:55,834.834 INFO    ] ================================================
[2026-06-22 19:08:55,850.850 INFO    ] Launching Daemon at Mon Jun 22 19:08:55 IST 2026
[2026-06-22 19:08:55,862.862 INFO    ] ================================================
[2026-06-22 19:08:56,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:08:56
[2026-06-22 19:08:56,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:08:57,198.198 INFO    ] Initializing speech engine...
[2026-06-22 19:08:57,209.209 INFO    ] 2026-06-22 19:08:57
[2026-06-22 19:08:57,509.509 INFO    ] 2026-06-22 19:08:57
[2026-06-22 19:08:57,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:08:59,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:08:59,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:08:59,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:08:59,717.717 INFO    ] time= 22/06/2026 19:08:59
[2026-06-22 19:08:59,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:08:59,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:08:59,797.797 INFO    ] No existing commands found in stream
[2026-06-22 19:09:04,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:09:04,813.813 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-22 19:09:05,344.344 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:09:05,346.346 INFO    ] Checking for system updates...
[2026-06-22 19:09:05,386.386 INFO    ] 200
[2026-06-22 19:09:05,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:09:05,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:09:05,451.451 INFO    ] No update needed
[2026-06-22 19:09:05,454.454 INFO    ] Checking for camera pi updates...
[2026-06-22 19:09:05,487.487 INFO    ] 200
[2026-06-22 19:09:05,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:09:05,531.531 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:09:05,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:09:05,612.612 INFO    ] No camera update needed
[2026-06-22 19:09:05,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:09:05,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:09:05,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:09:05,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:09:07,670.670 INFO    ] ================================================
[2026-06-22 19:09:07,686.686 INFO    ] Launching Daemon at Mon Jun 22 19:09:07 IST 2026
[2026-06-22 19:09:07,697.697 INFO    ] ================================================
[2026-06-22 19:09:08,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:09:08
[2026-06-22 19:09:08,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:09:09,108.108 INFO    ] Initializing speech engine...
[2026-06-22 19:09:09,115.115 INFO    ] 2026-06-22 19:09:09
[2026-06-22 19:09:09,419.419 INFO    ] 2026-06-22 19:09:09
[2026-06-22 19:09:09,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:09:09,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:09:09,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:09:09,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:09:09,851.851 INFO    ] time= 22/06/2026 19:09:09
[2026-06-22 19:09:09,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:09:09,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:09:10,002.002 INFO    ] No existing commands found in stream
[2026-06-22 19:09:15,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:09:15,029.029 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-22 19:09:17,439.439 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:09:17,442.442 INFO    ] Checking for system updates...
[2026-06-22 19:09:17,482.482 INFO    ] 200
[2026-06-22 19:09:17,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:09:17,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:09:17,548.548 INFO    ] No update needed
[2026-06-22 19:09:17,550.550 INFO    ] Checking for camera pi updates...
[2026-06-22 19:09:17,584.584 INFO    ] 200
[2026-06-22 19:09:17,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:09:17,628.628 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:09:17,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:09:17,715.715 INFO    ] No camera update needed
[2026-06-22 19:09:17,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:09:17,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:09:17,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:09:17,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:09:19,771.771 INFO    ] ================================================
[2026-06-22 19:09:19,787.787 INFO    ] Launching Daemon at Mon Jun 22 19:09:19 IST 2026
[2026-06-22 19:09:19,799.799 INFO    ] ================================================
[2026-06-22 19:09:20,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:09:20
[2026-06-22 19:09:21,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:09:21,490.490 INFO    ] Initializing speech engine...
[2026-06-22 19:09:21,501.501 INFO    ] 2026-06-22 19:09:21
[2026-06-22 19:09:21,810.810 INFO    ] 2026-06-22 19:09:21
[2026-06-22 19:09:21,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:09:22,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:09:22,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:09:22,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:09:22,321.321 INFO    ] time= 22/06/2026 19:09:22
[2026-06-22 19:09:22,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:09:22,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:09:22,481.481 INFO    ] No existing commands found in stream
[2026-06-22 19:09:27,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:09:27,525.525 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-22 19:09:30,842.842 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:09:30,846.846 INFO    ] Checking for system updates...
[2026-06-22 19:09:30,884.884 INFO    ] 200
[2026-06-22 19:09:30,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:09:30,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:09:30,955.955 INFO    ] No update needed
[2026-06-22 19:09:30,959.959 INFO    ] Checking for camera pi updates...
[2026-06-22 19:09:30,994.994 INFO    ] 200
[2026-06-22 19:09:30,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:09:31,047.047 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:09:31,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:09:31,106.106 INFO    ] No camera update needed
[2026-06-22 19:09:31,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:09:31,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:09:31,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:09:31,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:09:33,163.163 INFO    ] ================================================
[2026-06-22 19:09:33,179.179 INFO    ] Launching Daemon at Mon Jun 22 19:09:33 IST 2026
[2026-06-22 19:09:33,190.190 INFO    ] ================================================
[2026-06-22 19:09:33,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:09:33
[2026-06-22 19:09:34,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:09:34,726.726 INFO    ] Initializing speech engine...
[2026-06-22 19:09:34,746.746 INFO    ] 2026-06-22 19:09:34
[2026-06-22 19:09:35,037.037 INFO    ] 2026-06-22 19:09:35
[2026-06-22 19:09:35,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:09:35,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:09:35,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:09:35,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:09:35,585.585 INFO    ] time= 22/06/2026 19:09:35
[2026-06-22 19:09:35,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:09:35,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:09:35,852.852 INFO    ] No existing commands found in stream
[2026-06-22 19:09:40,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:09:40,888.888 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-22 19:09:42,695.695 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:09:42,698.698 INFO    ] Checking for system updates...
[2026-06-22 19:09:42,743.743 INFO    ] 200
[2026-06-22 19:09:42,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:09:42,803.803 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:09:42,806.806 INFO    ] No update needed
[2026-06-22 19:09:42,809.809 INFO    ] Checking for camera pi updates...
[2026-06-22 19:09:42,846.846 INFO    ] 200
[2026-06-22 19:09:42,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:09:42,900.900 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:09:42,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:09:42,954.954 INFO    ] No camera update needed
[2026-06-22 19:09:42,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:09:42,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:09:42,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:09:42,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:09:45,018.018 INFO    ] ================================================
[2026-06-22 19:09:45,035.035 INFO    ] Launching Daemon at Mon Jun 22 19:09:45 IST 2026
[2026-06-22 19:09:45,047.047 INFO    ] ================================================
[2026-06-22 19:09:45,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:09:45
[2026-06-22 19:09:46,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:09:46,473.473 INFO    ] Initializing speech engine...
[2026-06-22 19:09:46,481.481 INFO    ] 2026-06-22 19:09:46
[2026-06-22 19:09:46,752.752 INFO    ] 2026-06-22 19:09:46
[2026-06-22 19:09:46,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:09:46,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:09:47,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:09:47,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:09:47,256.256 INFO    ] time= 22/06/2026 19:09:47
[2026-06-22 19:09:47,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:09:47,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:09:47,484.484 INFO    ] No existing commands found in stream
[2026-06-22 19:09:52,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:09:52,500.500 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-22 19:09:53,082.082 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:09:53,090.090 INFO    ] Checking for system updates...
[2026-06-22 19:09:53,146.146 INFO    ] 200
[2026-06-22 19:09:53,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:09:53,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:09:53,219.219 INFO    ] No update needed
[2026-06-22 19:09:53,222.222 INFO    ] Checking for camera pi updates...
[2026-06-22 19:09:53,261.261 INFO    ] 200
[2026-06-22 19:09:53,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:09:53,327.327 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:09:53,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:09:53,392.392 INFO    ] No camera update needed
[2026-06-22 19:09:53,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:09:53,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:09:53,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:09:53,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:09:55,453.453 INFO    ] ================================================
[2026-06-22 19:09:55,469.469 INFO    ] Launching Daemon at Mon Jun 22 19:09:55 IST 2026
[2026-06-22 19:09:55,480.480 INFO    ] ================================================
[2026-06-22 19:09:56,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:09:56
[2026-06-22 19:09:56,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:09:56,901.901 INFO    ] Initializing speech engine...
[2026-06-22 19:09:56,909.909 INFO    ] 2026-06-22 19:09:56
[2026-06-22 19:09:57,210.210 INFO    ] 2026-06-22 19:09:57
[2026-06-22 19:09:57,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:10:00,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:10:00,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:10:01,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:10:01,366.366 INFO    ] time= 22/06/2026 19:10:01
[2026-06-22 19:10:01,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:10:01,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:10:01,455.455 INFO    ] No existing commands found in stream
[2026-06-22 19:10:06,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:10:06,467.467 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-22 19:10:10,866.866 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:10:10,869.869 INFO    ] Checking for system updates...
[2026-06-22 19:10:10,906.906 INFO    ] 200
[2026-06-22 19:10:10,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:10:10,972.972 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:10:10,975.975 INFO    ] No update needed
[2026-06-22 19:10:10,978.978 INFO    ] Checking for camera pi updates...
[2026-06-22 19:10:11,019.019 INFO    ] 200
[2026-06-22 19:10:11,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:10:11,063.063 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:10:11,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:10:11,153.153 INFO    ] No camera update needed
[2026-06-22 19:10:11,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:10:11,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:10:11,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:10:11,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:10:13,214.214 INFO    ] ================================================
[2026-06-22 19:10:13,230.230 INFO    ] Launching Daemon at Mon Jun 22 19:10:13 IST 2026
[2026-06-22 19:10:13,242.242 INFO    ] ================================================
[2026-06-22 19:10:13,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:10:13
[2026-06-22 19:10:14,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:10:14,673.673 INFO    ] Initializing speech engine...
[2026-06-22 19:10:14,685.685 INFO    ] 2026-06-22 19:10:14
[2026-06-22 19:10:14,941.941 INFO    ] 2026-06-22 19:10:14
[2026-06-22 19:10:14,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:10:15,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:10:15,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:10:15,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:10:15,366.366 INFO    ] time= 22/06/2026 19:10:15
[2026-06-22 19:10:15,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:10:15,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:10:15,452.452 INFO    ] No existing commands found in stream
[2026-06-22 19:10:20,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:10:20,480.480 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-22 19:10:24,356.356 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:10:24,359.359 INFO    ] Checking for system updates...
[2026-06-22 19:10:24,399.399 INFO    ] 200
[2026-06-22 19:10:24,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:10:24,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:10:24,465.465 INFO    ] No update needed
[2026-06-22 19:10:24,467.467 INFO    ] Checking for camera pi updates...
[2026-06-22 19:10:24,505.505 INFO    ] 200
[2026-06-22 19:10:24,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:10:24,552.552 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:10:24,633.633 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:10:24,635.635 INFO    ] No camera update needed
[2026-06-22 19:10:24,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:10:24,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:10:24,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:10:24,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:10:26,693.693 INFO    ] ================================================
[2026-06-22 19:10:26,708.708 INFO    ] Launching Daemon at Mon Jun 22 19:10:26 IST 2026
[2026-06-22 19:10:26,720.720 INFO    ] ================================================
[2026-06-22 19:10:27,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:10:27
[2026-06-22 19:10:28,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:10:28,371.371 INFO    ] Initializing speech engine...
[2026-06-22 19:10:28,377.377 INFO    ] 2026-06-22 19:10:28
[2026-06-22 19:10:28,660.660 INFO    ] 2026-06-22 19:10:28
[2026-06-22 19:10:28,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:10:30,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:10:30,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:10:31,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:10:32,005.005 INFO    ] time= 22/06/2026 19:10:31
[2026-06-22 19:10:32,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:10:32,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:10:32,119.119 INFO    ] No existing commands found in stream
[2026-06-22 19:10:37,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:10:37,131.131 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-22 19:10:39,705.705 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:10:39,707.707 INFO    ] Checking for system updates...
[2026-06-22 19:10:39,747.747 INFO    ] 200
[2026-06-22 19:10:39,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:10:39,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:10:39,813.813 INFO    ] No update needed
[2026-06-22 19:10:39,816.816 INFO    ] Checking for camera pi updates...
[2026-06-22 19:10:39,849.849 INFO    ] 200
[2026-06-22 19:10:39,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:10:39,892.892 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:10:39,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:10:39,976.976 INFO    ] No camera update needed
[2026-06-22 19:10:39,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:10:39,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:10:39,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:10:39,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:10:42,034.034 INFO    ] ================================================
[2026-06-22 19:10:42,050.050 INFO    ] Launching Daemon at Mon Jun 22 19:10:42 IST 2026
[2026-06-22 19:10:42,061.061 INFO    ] ================================================
[2026-06-22 19:10:42,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:10:42
[2026-06-22 19:10:43,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:10:43,419.419 INFO    ] Initializing speech engine...
[2026-06-22 19:10:43,428.428 INFO    ] 2026-06-22 19:10:43
[2026-06-22 19:10:43,682.682 INFO    ] 2026-06-22 19:10:43
[2026-06-22 19:10:43,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:10:43,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:10:43,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:10:44,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:10:44,186.186 INFO    ] time= 22/06/2026 19:10:44
[2026-06-22 19:10:44,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:10:44,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:10:44,392.392 INFO    ] No existing commands found in stream
[2026-06-22 19:10:49,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:10:49,431.431 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-22 19:10:53,047.047 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:10:53,049.049 INFO    ] Checking for system updates...
[2026-06-22 19:10:53,083.083 INFO    ] 200
[2026-06-22 19:10:53,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:10:53,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:10:53,140.140 INFO    ] No update needed
[2026-06-22 19:10:53,143.143 INFO    ] Checking for camera pi updates...
[2026-06-22 19:10:53,176.176 INFO    ] 200
[2026-06-22 19:10:53,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:10:53,219.219 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:10:53,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:10:53,317.317 INFO    ] No camera update needed
[2026-06-22 19:10:53,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:10:53,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:10:53,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:10:53,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:10:55,374.374 INFO    ] ================================================
[2026-06-22 19:10:55,392.392 INFO    ] Launching Daemon at Mon Jun 22 19:10:55 IST 2026
[2026-06-22 19:10:55,405.405 INFO    ] ================================================
[2026-06-22 19:10:55,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:10:55
[2026-06-22 19:10:56,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:10:56,823.823 INFO    ] Initializing speech engine...
[2026-06-22 19:10:56,831.831 INFO    ] 2026-06-22 19:10:56
[2026-06-22 19:10:57,106.106 INFO    ] 2026-06-22 19:10:57
[2026-06-22 19:10:57,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:10:57,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:10:57,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:10:57,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:10:57,482.482 INFO    ] time= 22/06/2026 19:10:57
[2026-06-22 19:10:57,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:10:57,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:10:57,560.560 INFO    ] No existing commands found in stream
[2026-06-22 19:11:02,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:11:02,599.599 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-22 19:11:05,237.237 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:11:05,240.240 INFO    ] Checking for system updates...
[2026-06-22 19:11:05,279.279 INFO    ] 200
[2026-06-22 19:11:05,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:11:05,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:11:05,343.343 INFO    ] No update needed
[2026-06-22 19:11:05,345.345 INFO    ] Checking for camera pi updates...
[2026-06-22 19:11:05,379.379 INFO    ] 200
[2026-06-22 19:11:05,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:11:05,421.421 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:11:05,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:11:05,505.505 INFO    ] No camera update needed
[2026-06-22 19:11:05,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:11:05,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:11:05,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:11:05,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:11:07,561.561 INFO    ] ================================================
[2026-06-22 19:11:07,579.579 INFO    ] Launching Daemon at Mon Jun 22 19:11:07 IST 2026
[2026-06-22 19:11:07,590.590 INFO    ] ================================================
[2026-06-22 19:11:08,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:11:08
[2026-06-22 19:11:08,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:11:09,020.020 INFO    ] Initializing speech engine...
[2026-06-22 19:11:09,030.030 INFO    ] 2026-06-22 19:11:09
[2026-06-22 19:11:09,280.280 INFO    ] 2026-06-22 19:11:09
[2026-06-22 19:11:09,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:11:09,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:11:09,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:11:09,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:11:09,761.761 INFO    ] time= 22/06/2026 19:11:09
[2026-06-22 19:11:09,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:11:09,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:11:09,988.988 INFO    ] No existing commands found in stream
[2026-06-22 19:11:15,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:11:15,019.019 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-22 19:11:18,615.615 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:11:18,617.617 INFO    ] Checking for system updates...
[2026-06-22 19:11:18,654.654 INFO    ] 200
[2026-06-22 19:11:18,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:11:18,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:11:18,713.713 INFO    ] No update needed
[2026-06-22 19:11:18,716.716 INFO    ] Checking for camera pi updates...
[2026-06-22 19:11:18,755.755 INFO    ] 200
[2026-06-22 19:11:18,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:11:18,799.799 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:11:18,855.855 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:11:18,858.858 INFO    ] No camera update needed
[2026-06-22 19:11:18,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:11:18,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:11:18,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:11:18,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:11:20,915.915 INFO    ] ================================================
[2026-06-22 19:11:20,931.931 INFO    ] Launching Daemon at Mon Jun 22 19:11:20 IST 2026
[2026-06-22 19:11:20,942.942 INFO    ] ================================================
[2026-06-22 19:11:21,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:11:21
[2026-06-22 19:11:22,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:11:22,383.383 INFO    ] Initializing speech engine...
[2026-06-22 19:11:22,390.390 INFO    ] 2026-06-22 19:11:22
[2026-06-22 19:11:22,683.683 INFO    ] 2026-06-22 19:11:22
[2026-06-22 19:11:22,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:11:22,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:11:22,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:11:23,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:11:23,098.098 INFO    ] time= 22/06/2026 19:11:23
[2026-06-22 19:11:23,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:11:23,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:11:23,263.263 INFO    ] No existing commands found in stream
[2026-06-22 19:11:28,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:11:28,298.298 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-22 19:11:32,982.982 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:11:32,985.985 INFO    ] Checking for system updates...
[2026-06-22 19:11:33,030.030 INFO    ] 200
[2026-06-22 19:11:33,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:11:33,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:11:33,099.099 INFO    ] No update needed
[2026-06-22 19:11:33,102.102 INFO    ] Checking for camera pi updates...
[2026-06-22 19:11:33,137.137 INFO    ] 200
[2026-06-22 19:11:33,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:11:33,191.191 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:11:33,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:11:33,252.252 INFO    ] No camera update needed
[2026-06-22 19:11:33,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:11:33,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:11:33,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:11:33,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:11:35,309.309 INFO    ] ================================================
[2026-06-22 19:11:35,324.324 INFO    ] Launching Daemon at Mon Jun 22 19:11:35 IST 2026
[2026-06-22 19:11:35,335.335 INFO    ] ================================================
[2026-06-22 19:11:35,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:11:35
[2026-06-22 19:11:36,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:11:36,952.952 INFO    ] Initializing speech engine...
[2026-06-22 19:11:36,960.960 INFO    ] 2026-06-22 19:11:36
[2026-06-22 19:11:37,261.261 INFO    ] 2026-06-22 19:11:37
[2026-06-22 19:11:37,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:11:37,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:11:37,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:11:37,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:11:37,771.771 INFO    ] time= 22/06/2026 19:11:37
[2026-06-22 19:11:37,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:11:37,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:11:37,932.932 INFO    ] No existing commands found in stream
[2026-06-22 19:11:42,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:11:42,966.966 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-22 19:11:46,551.551 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:11:46,554.554 INFO    ] Checking for system updates...
[2026-06-22 19:11:46,595.595 INFO    ] 200
[2026-06-22 19:11:46,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:11:46,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:11:46,661.661 INFO    ] No update needed
[2026-06-22 19:11:46,667.667 INFO    ] Checking for camera pi updates...
[2026-06-22 19:11:46,704.704 INFO    ] 200
[2026-06-22 19:11:46,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:11:46,747.747 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:11:46,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:11:46,801.801 INFO    ] No camera update needed
[2026-06-22 19:11:46,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:11:46,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:11:46,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:11:46,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:11:48,856.856 INFO    ] ================================================
[2026-06-22 19:11:48,871.871 INFO    ] Launching Daemon at Mon Jun 22 19:11:48 IST 2026
[2026-06-22 19:11:48,882.882 INFO    ] ================================================
[2026-06-22 19:11:49,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:11:49
[2026-06-22 19:11:49,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:11:50,253.253 INFO    ] Initializing speech engine...
[2026-06-22 19:11:50,259.259 INFO    ] 2026-06-22 19:11:50
[2026-06-22 19:11:50,510.510 INFO    ] 2026-06-22 19:11:50
[2026-06-22 19:11:50,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:11:50,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:11:50,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:11:50,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:11:50,883.883 INFO    ] time= 22/06/2026 19:11:50
[2026-06-22 19:11:50,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:11:50,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:11:51,081.081 INFO    ] No existing commands found in stream
[2026-06-22 19:11:56,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:11:56,097.097 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-22 19:11:57,927.927 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:11:57,929.929 INFO    ] Checking for system updates...
[2026-06-22 19:11:57,967.967 INFO    ] 200
[2026-06-22 19:11:57,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:11:58,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:11:58,031.031 INFO    ] No update needed
[2026-06-22 19:11:58,034.034 INFO    ] Checking for camera pi updates...
[2026-06-22 19:11:58,068.068 INFO    ] 200
[2026-06-22 19:11:58,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:11:58,111.111 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:11:58,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:11:58,192.192 INFO    ] No camera update needed
[2026-06-22 19:11:58,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:11:58,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:11:58,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:11:58,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:12:00,250.250 INFO    ] ================================================
[2026-06-22 19:12:00,265.265 INFO    ] Launching Daemon at Mon Jun 22 19:12:00 IST 2026
[2026-06-22 19:12:00,276.276 INFO    ] ================================================
[2026-06-22 19:12:00,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:12:00
[2026-06-22 19:12:01,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:12:02,012.012 INFO    ] Initializing speech engine...
[2026-06-22 19:12:02,016.016 INFO    ] 2026-06-22 19:12:02
[2026-06-22 19:12:02,515.515 INFO    ] 2026-06-22 19:12:02
[2026-06-22 19:12:02,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:12:04,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:12:04,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:12:05,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:12:05,381.381 INFO    ] time= 22/06/2026 19:12:05
[2026-06-22 19:12:05,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:12:05,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:12:05,483.483 INFO    ] No existing commands found in stream
[2026-06-22 19:12:10,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:12:10,495.495 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-22 19:12:12,958.958 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:12:12,961.961 INFO    ] Checking for system updates...
[2026-06-22 19:12:12,996.996 INFO    ] 200
[2026-06-22 19:12:12,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:12:13,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:12:13,068.068 INFO    ] No update needed
[2026-06-22 19:12:13,070.070 INFO    ] Checking for camera pi updates...
[2026-06-22 19:12:13,107.107 INFO    ] 200
[2026-06-22 19:12:13,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:12:13,151.151 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:12:13,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:12:13,343.343 INFO    ] No camera update needed
[2026-06-22 19:12:13,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:12:13,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:12:13,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:12:13,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:12:15,401.401 INFO    ] ================================================
[2026-06-22 19:12:15,416.416 INFO    ] Launching Daemon at Mon Jun 22 19:12:15 IST 2026
[2026-06-22 19:12:15,427.427 INFO    ] ================================================
[2026-06-22 19:12:16,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:12:16
[2026-06-22 19:12:16,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:12:16,856.856 INFO    ] Initializing speech engine...
[2026-06-22 19:12:16,862.862 INFO    ] 2026-06-22 19:12:16
[2026-06-22 19:12:17,149.149 INFO    ] 2026-06-22 19:12:17
[2026-06-22 19:12:17,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:12:17,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:12:17,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:12:17,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:12:17,678.678 INFO    ] time= 22/06/2026 19:12:17
[2026-06-22 19:12:17,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:12:17,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:12:17,831.831 INFO    ] No existing commands found in stream
[2026-06-22 19:12:22,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:12:22,851.851 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-22 19:12:24,676.676 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:12:24,677.677 INFO    ] Checking for system updates...
[2026-06-22 19:12:24,698.698 INFO    ] 200
[2026-06-22 19:12:24,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:12:24,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:12:24,732.732 INFO    ] No update needed
[2026-06-22 19:12:24,733.733 INFO    ] Checking for camera pi updates...
[2026-06-22 19:12:24,753.753 INFO    ] 200
[2026-06-22 19:12:24,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:12:24,784.784 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:12:24,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:12:24,903.903 INFO    ] No camera update needed
[2026-06-22 19:12:24,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:12:24,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:12:24,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:12:24,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:12:26,960.960 INFO    ] ================================================
[2026-06-22 19:12:26,975.975 INFO    ] Launching Daemon at Mon Jun 22 19:12:26 IST 2026
[2026-06-22 19:12:26,986.986 INFO    ] ================================================
[2026-06-22 19:12:27,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:12:27
[2026-06-22 19:12:28,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:12:28,537.537 INFO    ] Initializing speech engine...
[2026-06-22 19:12:28,545.545 INFO    ] 2026-06-22 19:12:28
[2026-06-22 19:12:28,812.812 INFO    ] 2026-06-22 19:12:28
[2026-06-22 19:12:28,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:12:29,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:12:29,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:12:29,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:12:29,304.304 INFO    ] time= 22/06/2026 19:12:29
[2026-06-22 19:12:29,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:12:29,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:12:29,511.511 INFO    ] No existing commands found in stream
[2026-06-22 19:12:34,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:12:34,530.530 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-22 19:12:38,729.729 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:12:38,732.732 INFO    ] Checking for system updates...
[2026-06-22 19:12:38,771.771 INFO    ] 200
[2026-06-22 19:12:38,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:12:38,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:12:38,829.829 INFO    ] No update needed
[2026-06-22 19:12:38,831.831 INFO    ] Checking for camera pi updates...
[2026-06-22 19:12:38,865.865 INFO    ] 200
[2026-06-22 19:12:38,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:12:38,910.910 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:12:38,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:12:39,000.000 INFO    ] No camera update needed
[2026-06-22 19:12:39,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:12:39,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:12:39,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:12:39,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:12:41,056.056 INFO    ] ================================================
[2026-06-22 19:12:41,071.071 INFO    ] Launching Daemon at Mon Jun 22 19:12:41 IST 2026
[2026-06-22 19:12:41,082.082 INFO    ] ================================================
[2026-06-22 19:12:41,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:12:41
[2026-06-22 19:12:42,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:12:42,410.410 INFO    ] Initializing speech engine...
[2026-06-22 19:12:42,428.428 INFO    ] 2026-06-22 19:12:42
[2026-06-22 19:12:42,676.676 INFO    ] 2026-06-22 19:12:42
[2026-06-22 19:12:42,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:12:42,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:12:42,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:12:43,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:12:43,220.220 INFO    ] time= 22/06/2026 19:12:43
[2026-06-22 19:12:43,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:12:43,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:12:43,386.386 INFO    ] No existing commands found in stream
[2026-06-22 19:12:48,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:12:48,410.410 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-22 19:12:52,344.344 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:12:52,346.346 INFO    ] Checking for system updates...
[2026-06-22 19:12:52,382.382 INFO    ] 200
[2026-06-22 19:12:52,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:12:52,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:12:52,439.439 INFO    ] No update needed
[2026-06-22 19:12:52,442.442 INFO    ] Checking for camera pi updates...
[2026-06-22 19:12:52,480.480 INFO    ] 200
[2026-06-22 19:12:52,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:12:52,532.532 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:12:52,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:12:52,586.586 INFO    ] No camera update needed
[2026-06-22 19:12:52,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:12:52,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:12:52,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:12:52,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:12:54,642.642 INFO    ] ================================================
[2026-06-22 19:12:54,657.657 INFO    ] Launching Daemon at Mon Jun 22 19:12:54 IST 2026
[2026-06-22 19:12:54,668.668 INFO    ] ================================================
[2026-06-22 19:12:55,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:12:55
[2026-06-22 19:12:55,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:12:56,137.137 INFO    ] Initializing speech engine...
[2026-06-22 19:12:56,145.145 INFO    ] 2026-06-22 19:12:56
[2026-06-22 19:12:56,399.399 INFO    ] 2026-06-22 19:12:56
[2026-06-22 19:12:56,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:12:56,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:12:56,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:12:56,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:12:56,861.861 INFO    ] time= 22/06/2026 19:12:56
[2026-06-22 19:12:56,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:12:56,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:12:57,081.081 INFO    ] No existing commands found in stream
[2026-06-22 19:13:02,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:13:02,109.109 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-22 19:13:07,241.241 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:13:07,244.244 INFO    ] Checking for system updates...
[2026-06-22 19:13:07,280.280 INFO    ] 200
[2026-06-22 19:13:07,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:13:07,335.335 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:13:07,337.337 INFO    ] No update needed
[2026-06-22 19:13:07,340.340 INFO    ] Checking for camera pi updates...
[2026-06-22 19:13:07,373.373 INFO    ] 200
[2026-06-22 19:13:07,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:13:07,417.417 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:13:07,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:13:07,497.497 INFO    ] No camera update needed
[2026-06-22 19:13:07,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:13:07,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:13:07,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:13:07,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:13:09,554.554 INFO    ] ================================================
[2026-06-22 19:13:09,569.569 INFO    ] Launching Daemon at Mon Jun 22 19:13:09 IST 2026
[2026-06-22 19:13:09,580.580 INFO    ] ================================================
[2026-06-22 19:13:10,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:13:10
[2026-06-22 19:13:10,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:13:10,984.984 INFO    ] Initializing speech engine...
[2026-06-22 19:13:10,990.990 INFO    ] 2026-06-22 19:13:10
[2026-06-22 19:13:11,252.252 INFO    ] 2026-06-22 19:13:11
[2026-06-22 19:13:11,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:13:11,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:13:11,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:13:11,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:13:11,772.772 INFO    ] time= 22/06/2026 19:13:11
[2026-06-22 19:13:11,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:13:11,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:13:11,941.941 INFO    ] No existing commands found in stream
[2026-06-22 19:13:16,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:13:16,956.956 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-22 19:13:19,417.417 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:13:19,420.420 INFO    ] Checking for system updates...
[2026-06-22 19:13:19,456.456 INFO    ] 200
[2026-06-22 19:13:19,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:13:19,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:13:19,521.521 INFO    ] No update needed
[2026-06-22 19:13:19,524.524 INFO    ] Checking for camera pi updates...
[2026-06-22 19:13:19,557.557 INFO    ] 200
[2026-06-22 19:13:19,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:13:19,600.600 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:13:19,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:13:19,657.657 INFO    ] No camera update needed
[2026-06-22 19:13:19,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:13:19,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:13:19,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:13:19,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:13:21,713.713 INFO    ] ================================================
[2026-06-22 19:13:21,729.729 INFO    ] Launching Daemon at Mon Jun 22 19:13:21 IST 2026
[2026-06-22 19:13:21,739.739 INFO    ] ================================================
[2026-06-22 19:13:22,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:13:22
[2026-06-22 19:13:22,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:13:23,111.111 INFO    ] Initializing speech engine...
[2026-06-22 19:13:23,121.121 INFO    ] 2026-06-22 19:13:23
[2026-06-22 19:13:23,382.382 INFO    ] 2026-06-22 19:13:23
[2026-06-22 19:13:23,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:13:23,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:13:23,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:13:23,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:13:23,786.786 INFO    ] time= 22/06/2026 19:13:23
[2026-06-22 19:13:23,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:13:23,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:13:23,972.972 INFO    ] No existing commands found in stream
[2026-06-22 19:13:28,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:13:29,000.000 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-22 19:13:30,587.587 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:13:30,590.590 INFO    ] Checking for system updates...
[2026-06-22 19:13:30,629.629 INFO    ] 200
[2026-06-22 19:13:30,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:13:30,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:13:30,692.692 INFO    ] No update needed
[2026-06-22 19:13:30,695.695 INFO    ] Checking for camera pi updates...
[2026-06-22 19:13:30,731.731 INFO    ] 200
[2026-06-22 19:13:30,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:13:30,779.779 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:13:30,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:13:30,867.867 INFO    ] No camera update needed
[2026-06-22 19:13:30,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:13:30,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:13:30,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:13:30,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:13:32,927.927 INFO    ] ================================================
[2026-06-22 19:13:32,944.944 INFO    ] Launching Daemon at Mon Jun 22 19:13:32 IST 2026
[2026-06-22 19:13:32,957.957 INFO    ] ================================================
[2026-06-22 19:13:33,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:13:33
[2026-06-22 19:13:34,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:13:34,415.415 INFO    ] Initializing speech engine...
[2026-06-22 19:13:34,424.424 INFO    ] 2026-06-22 19:13:34
[2026-06-22 19:13:34,694.694 INFO    ] 2026-06-22 19:13:34
[2026-06-22 19:13:34,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:13:37,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:13:37,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:13:37,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:13:37,624.624 INFO    ] time= 22/06/2026 19:13:37
[2026-06-22 19:13:37,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:13:37,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:13:37,726.726 INFO    ] No existing commands found in stream
[2026-06-22 19:13:42,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:13:42,739.739 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-22 19:13:46,631.631 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:13:46,633.633 INFO    ] Checking for system updates...
[2026-06-22 19:13:46,654.654 INFO    ] 200
[2026-06-22 19:13:46,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:13:46,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:13:46,688.688 INFO    ] No update needed
[2026-06-22 19:13:46,689.689 INFO    ] Checking for camera pi updates...
[2026-06-22 19:13:46,719.719 INFO    ] 200
[2026-06-22 19:13:46,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:13:46,763.763 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:13:46,847.847 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:13:46,850.850 INFO    ] No camera update needed
[2026-06-22 19:13:46,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:13:46,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:13:46,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:13:46,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:13:48,908.908 INFO    ] ================================================
[2026-06-22 19:13:48,924.924 INFO    ] Launching Daemon at Mon Jun 22 19:13:48 IST 2026
[2026-06-22 19:13:48,946.946 INFO    ] ================================================
[2026-06-22 19:13:49,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:13:49
[2026-06-22 19:13:50,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:13:50,405.405 INFO    ] Initializing speech engine...
[2026-06-22 19:13:50,411.411 INFO    ] 2026-06-22 19:13:50
[2026-06-22 19:13:50,672.672 INFO    ] 2026-06-22 19:13:50
[2026-06-22 19:13:50,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:13:50,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:13:50,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:13:51,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:13:51,155.155 INFO    ] time= 22/06/2026 19:13:51
[2026-06-22 19:13:51,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:13:51,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:13:51,361.361 INFO    ] No existing commands found in stream
[2026-06-22 19:13:56,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:13:56,388.388 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-22 19:13:59,703.703 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:13:59,706.706 INFO    ] Checking for system updates...
[2026-06-22 19:13:59,744.744 INFO    ] 200
[2026-06-22 19:13:59,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:13:59,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:13:59,802.802 INFO    ] No update needed
[2026-06-22 19:13:59,804.804 INFO    ] Checking for camera pi updates...
[2026-06-22 19:13:59,841.841 INFO    ] 200
[2026-06-22 19:13:59,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:13:59,886.886 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:13:59,953.953 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:13:59,956.956 INFO    ] No camera update needed
[2026-06-22 19:13:59,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:13:59,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:13:59,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:13:59,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:14:02,020.020 INFO    ] ================================================
[2026-06-22 19:14:02,039.039 INFO    ] Launching Daemon at Mon Jun 22 19:14:02 IST 2026
[2026-06-22 19:14:02,052.052 INFO    ] ================================================
[2026-06-22 19:14:02,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:14:02
[2026-06-22 19:14:03,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:14:03,719.719 INFO    ] Initializing speech engine...
[2026-06-22 19:14:03,726.726 INFO    ] 2026-06-22 19:14:03
[2026-06-22 19:14:03,996.996 INFO    ] 2026-06-22 19:14:03
[2026-06-22 19:14:04,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:14:08,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:14:08,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:14:09,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:14:09,230.230 INFO    ] time= 22/06/2026 19:14:09
[2026-06-22 19:14:09,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:14:09,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:14:09,291.291 INFO    ] No existing commands found in stream
[2026-06-22 19:14:14,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:14:14,305.305 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-22 19:14:15,683.683 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:14:15,686.686 INFO    ] Checking for system updates...
[2026-06-22 19:14:15,724.724 INFO    ] 200
[2026-06-22 19:14:15,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:14:15,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:14:15,789.789 INFO    ] No update needed
[2026-06-22 19:14:15,792.792 INFO    ] Checking for camera pi updates...
[2026-06-22 19:14:15,830.830 INFO    ] 200
[2026-06-22 19:14:15,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:14:15,877.877 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:14:16,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:14:16,068.068 INFO    ] No camera update needed
[2026-06-22 19:14:16,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:14:16,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:14:16,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:14:16,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:14:18,127.127 INFO    ] ================================================
[2026-06-22 19:14:18,143.143 INFO    ] Launching Daemon at Mon Jun 22 19:14:18 IST 2026
[2026-06-22 19:14:18,154.154 INFO    ] ================================================
[2026-06-22 19:14:18,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:14:18
[2026-06-22 19:14:19,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:14:19,642.642 INFO    ] Initializing speech engine...
[2026-06-22 19:14:19,655.655 INFO    ] 2026-06-22 19:14:19
[2026-06-22 19:14:19,942.942 INFO    ] 2026-06-22 19:14:19
[2026-06-22 19:14:20,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:14:20,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:14:20,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:14:20,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:14:20,420.420 INFO    ] time= 22/06/2026 19:14:20
[2026-06-22 19:14:20,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:14:20,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:14:20,623.623 INFO    ] No existing commands found in stream
[2026-06-22 19:14:25,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:14:25,642.642 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-22 19:14:26,606.606 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:14:26,609.609 INFO    ] Checking for system updates...
[2026-06-22 19:14:26,646.646 INFO    ] 200
[2026-06-22 19:14:26,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:14:26,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:14:26,711.711 INFO    ] No update needed
[2026-06-22 19:14:26,714.714 INFO    ] Checking for camera pi updates...
[2026-06-22 19:14:26,750.750 INFO    ] 200
[2026-06-22 19:14:26,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:14:26,794.794 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:14:26,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:14:26,878.878 INFO    ] No camera update needed
[2026-06-22 19:14:26,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:14:26,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:14:26,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:14:26,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:14:28,937.937 INFO    ] ================================================
[2026-06-22 19:14:28,953.953 INFO    ] Launching Daemon at Mon Jun 22 19:14:28 IST 2026
[2026-06-22 19:14:28,965.965 INFO    ] ================================================
[2026-06-22 19:14:29,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:14:29
[2026-06-22 19:14:30,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:14:30,302.302 INFO    ] Initializing speech engine...
[2026-06-22 19:14:30,311.311 INFO    ] 2026-06-22 19:14:30
[2026-06-22 19:14:30,558.558 INFO    ] 2026-06-22 19:14:30
[2026-06-22 19:14:30,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:14:30,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:14:30,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:14:30,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:14:31,044.044 INFO    ] time= 22/06/2026 19:14:31
[2026-06-22 19:14:31,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:14:31,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:14:31,271.271 INFO    ] No existing commands found in stream
[2026-06-22 19:14:36,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:14:36,292.292 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-22 19:14:40,127.127 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:14:40,130.130 INFO    ] Checking for system updates...
[2026-06-22 19:14:40,166.166 INFO    ] 200
[2026-06-22 19:14:40,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:14:40,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:14:40,230.230 INFO    ] No update needed
[2026-06-22 19:14:40,233.233 INFO    ] Checking for camera pi updates...
[2026-06-22 19:14:40,266.266 INFO    ] 200
[2026-06-22 19:14:40,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:14:40,309.309 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:14:40,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:14:40,370.370 INFO    ] No camera update needed
[2026-06-22 19:14:40,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:14:40,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:14:40,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:14:40,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:14:42,433.433 INFO    ] ================================================
[2026-06-22 19:14:42,449.449 INFO    ] Launching Daemon at Mon Jun 22 19:14:42 IST 2026
[2026-06-22 19:14:42,461.461 INFO    ] ================================================
[2026-06-22 19:14:43,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:14:43
[2026-06-22 19:14:43,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:14:43,995.995 INFO    ] Initializing speech engine...
[2026-06-22 19:14:44,004.004 INFO    ] 2026-06-22 19:14:43
[2026-06-22 19:14:44,288.288 INFO    ] 2026-06-22 19:14:44
[2026-06-22 19:14:44,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:14:44,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:14:44,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:14:44,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:14:44,827.827 INFO    ] time= 22/06/2026 19:14:44
[2026-06-22 19:14:44,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:14:44,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:14:45,011.011 INFO    ] No existing commands found in stream
[2026-06-22 19:14:50,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:14:50,046.046 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-22 19:14:52,215.215 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:14:52,218.218 INFO    ] Checking for system updates...
[2026-06-22 19:14:52,255.255 INFO    ] 200
[2026-06-22 19:14:52,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:14:52,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:14:52,319.319 INFO    ] No update needed
[2026-06-22 19:14:52,322.322 INFO    ] Checking for camera pi updates...
[2026-06-22 19:14:52,358.358 INFO    ] 200
[2026-06-22 19:14:52,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:14:52,403.403 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:14:52,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:14:52,463.463 INFO    ] No camera update needed
[2026-06-22 19:14:52,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:14:52,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:14:52,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:14:52,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:14:54,519.519 INFO    ] ================================================
[2026-06-22 19:14:54,535.535 INFO    ] Launching Daemon at Mon Jun 22 19:14:54 IST 2026
[2026-06-22 19:14:54,546.546 INFO    ] ================================================
[2026-06-22 19:14:55,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:14:55
[2026-06-22 19:14:55,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:14:56,085.085 INFO    ] Initializing speech engine...
[2026-06-22 19:14:56,091.091 INFO    ] 2026-06-22 19:14:56
[2026-06-22 19:14:56,362.362 INFO    ] 2026-06-22 19:14:56
[2026-06-22 19:14:56,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:14:56,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:14:56,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:14:57,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:14:57,141.141 INFO    ] time= 22/06/2026 19:14:57
[2026-06-22 19:14:57,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:14:57,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:14:57,351.351 INFO    ] No existing commands found in stream
[2026-06-22 19:15:02,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:15:02,371.371 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-22 19:15:03,698.698 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:15:03,701.701 INFO    ] Checking for system updates...
[2026-06-22 19:15:03,737.737 INFO    ] 200
[2026-06-22 19:15:03,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:15:03,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:15:03,802.802 INFO    ] No update needed
[2026-06-22 19:15:03,805.805 INFO    ] Checking for camera pi updates...
[2026-06-22 19:15:03,847.847 INFO    ] 200
[2026-06-22 19:15:03,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:15:03,900.900 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:15:03,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:15:03,960.960 INFO    ] No camera update needed
[2026-06-22 19:15:03,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:15:03,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:15:03,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:15:03,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:15:06,017.017 INFO    ] ================================================
[2026-06-22 19:15:06,036.036 INFO    ] Launching Daemon at Mon Jun 22 19:15:06 IST 2026
[2026-06-22 19:15:06,047.047 INFO    ] ================================================
[2026-06-22 19:15:06,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:15:06
[2026-06-22 19:15:07,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:15:07,608.608 INFO    ] Initializing speech engine...
[2026-06-22 19:15:07,617.617 INFO    ] 2026-06-22 19:15:07
[2026-06-22 19:15:07,915.915 INFO    ] 2026-06-22 19:15:07
[2026-06-22 19:15:07,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:15:10,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:15:10,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:15:10,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:15:10,997.997 INFO    ] time= 22/06/2026 19:15:10
[2026-06-22 19:15:11,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:15:11,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:15:11,111.111 INFO    ] No existing commands found in stream
[2026-06-22 19:15:16,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:15:16,123.123 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-22 19:15:20,444.444 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:15:20,446.446 INFO    ] Checking for system updates...
[2026-06-22 19:15:20,490.490 INFO    ] 200
[2026-06-22 19:15:20,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:15:20,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:15:20,555.555 INFO    ] No update needed
[2026-06-22 19:15:20,557.557 INFO    ] Checking for camera pi updates...
[2026-06-22 19:15:20,592.592 INFO    ] 200
[2026-06-22 19:15:20,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:15:20,641.641 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:15:20,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:15:20,724.724 INFO    ] No camera update needed
[2026-06-22 19:15:20,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:15:20,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:15:20,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:15:20,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:15:22,780.780 INFO    ] ================================================
[2026-06-22 19:15:22,796.796 INFO    ] Launching Daemon at Mon Jun 22 19:15:22 IST 2026
[2026-06-22 19:15:22,807.807 INFO    ] ================================================
[2026-06-22 19:15:23,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:15:23
[2026-06-22 19:15:24,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:15:24,461.461 INFO    ] Initializing speech engine...
[2026-06-22 19:15:24,476.476 INFO    ] 2026-06-22 19:15:24
[2026-06-22 19:15:24,786.786 INFO    ] 2026-06-22 19:15:24
[2026-06-22 19:15:24,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:15:25,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:15:25,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:15:25,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:15:25,295.295 INFO    ] time= 22/06/2026 19:15:25
[2026-06-22 19:15:25,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:15:25,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:15:25,463.463 INFO    ] No existing commands found in stream
[2026-06-22 19:15:30,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:15:30,496.496 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-22 19:15:32,346.346 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:15:32,350.350 INFO    ] Checking for system updates...
[2026-06-22 19:15:32,391.391 INFO    ] 200
[2026-06-22 19:15:32,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:15:32,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:15:32,464.464 INFO    ] No update needed
[2026-06-22 19:15:32,467.467 INFO    ] Checking for camera pi updates...
[2026-06-22 19:15:32,508.508 INFO    ] 200
[2026-06-22 19:15:32,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:15:32,558.558 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:15:32,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:15:32,630.630 INFO    ] No camera update needed
[2026-06-22 19:15:32,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:15:32,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:15:32,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:15:32,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:15:34,696.696 INFO    ] ================================================
[2026-06-22 19:15:34,711.711 INFO    ] Launching Daemon at Mon Jun 22 19:15:34 IST 2026
[2026-06-22 19:15:34,722.722 INFO    ] ================================================
[2026-06-22 19:15:35,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:15:35
[2026-06-22 19:15:35,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:15:36,251.251 INFO    ] Initializing speech engine...
[2026-06-22 19:15:36,259.259 INFO    ] 2026-06-22 19:15:36
[2026-06-22 19:15:36,533.533 INFO    ] 2026-06-22 19:15:36
[2026-06-22 19:15:36,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:15:36,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:15:36,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:15:37,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:15:37,131.131 INFO    ] time= 22/06/2026 19:15:37
[2026-06-22 19:15:37,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:15:37,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:15:37,283.283 INFO    ] No existing commands found in stream
[2026-06-22 19:15:42,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:15:42,322.322 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-22 19:15:46,094.094 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:15:46,095.095 INFO    ] Checking for system updates...
[2026-06-22 19:15:46,116.116 INFO    ] 200
[2026-06-22 19:15:46,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:15:46,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:15:46,150.150 INFO    ] No update needed
[2026-06-22 19:15:46,151.151 INFO    ] Checking for camera pi updates...
[2026-06-22 19:15:46,190.190 INFO    ] 200
[2026-06-22 19:15:46,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:15:46,240.240 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:15:46,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:15:46,329.329 INFO    ] No camera update needed
[2026-06-22 19:15:46,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:15:46,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:15:46,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:15:46,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:15:48,386.386 INFO    ] ================================================
[2026-06-22 19:15:48,402.402 INFO    ] Launching Daemon at Mon Jun 22 19:15:48 IST 2026
[2026-06-22 19:15:48,413.413 INFO    ] ================================================
[2026-06-22 19:15:49,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:15:49
[2026-06-22 19:15:49,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:15:50,078.078 INFO    ] Initializing speech engine...
[2026-06-22 19:15:50,084.084 INFO    ] 2026-06-22 19:15:50
[2026-06-22 19:15:50,399.399 INFO    ] 2026-06-22 19:15:50
[2026-06-22 19:15:50,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:15:50,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:15:50,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:15:50,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:15:50,921.921 INFO    ] time= 22/06/2026 19:15:50
[2026-06-22 19:15:50,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:15:50,947.947 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:15:51,079.079 INFO    ] No existing commands found in stream
[2026-06-22 19:15:56,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:15:56,098.098 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-22 19:15:59,780.780 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:15:59,783.783 INFO    ] Checking for system updates...
[2026-06-22 19:15:59,825.825 INFO    ] 200
[2026-06-22 19:15:59,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:15:59,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:15:59,885.885 INFO    ] No update needed
[2026-06-22 19:15:59,887.887 INFO    ] Checking for camera pi updates...
[2026-06-22 19:15:59,927.927 INFO    ] 200
[2026-06-22 19:15:59,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:15:59,977.977 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:16:00,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:16:00,069.069 INFO    ] No camera update needed
[2026-06-22 19:16:00,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:16:00,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:16:00,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:16:00,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:16:02,138.138 INFO    ] ================================================
[2026-06-22 19:16:02,182.182 INFO    ] Launching Daemon at Mon Jun 22 19:16:02 IST 2026
[2026-06-22 19:16:02,206.206 INFO    ] ================================================
[2026-06-22 19:16:02,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:16:02
[2026-06-22 19:16:03,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:16:03,795.795 INFO    ] Initializing speech engine...
[2026-06-22 19:16:03,818.818 INFO    ] 2026-06-22 19:16:03
[2026-06-22 19:16:04,116.116 INFO    ] 2026-06-22 19:16:04
[2026-06-22 19:16:04,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:16:04,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:16:04,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:16:04,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:16:04,588.588 INFO    ] time= 22/06/2026 19:16:04
[2026-06-22 19:16:04,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:16:04,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:16:04,887.887 INFO    ] No existing commands found in stream
[2026-06-22 19:16:09,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:16:09,920.920 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-22 19:16:13,709.709 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:16:13,711.711 INFO    ] Checking for system updates...
[2026-06-22 19:16:13,751.751 INFO    ] 200
[2026-06-22 19:16:13,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:16:13,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:16:13,813.813 INFO    ] No update needed
[2026-06-22 19:16:13,815.815 INFO    ] Checking for camera pi updates...
[2026-06-22 19:16:13,852.852 INFO    ] 200
[2026-06-22 19:16:13,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:16:13,905.905 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:16:13,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:16:13,991.991 INFO    ] No camera update needed
[2026-06-22 19:16:13,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:16:13,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:16:14,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:16:14,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:16:16,054.054 INFO    ] ================================================
[2026-06-22 19:16:16,070.070 INFO    ] Launching Daemon at Mon Jun 22 19:16:16 IST 2026
[2026-06-22 19:16:16,083.083 INFO    ] ================================================
[2026-06-22 19:16:16,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:16:16
[2026-06-22 19:16:17,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:16:17,572.572 INFO    ] Initializing speech engine...
[2026-06-22 19:16:17,581.581 INFO    ] 2026-06-22 19:16:17
[2026-06-22 19:16:17,840.840 INFO    ] 2026-06-22 19:16:17
[2026-06-22 19:16:17,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:16:18,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:16:18,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:16:18,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:16:18,334.334 INFO    ] time= 22/06/2026 19:16:18
[2026-06-22 19:16:18,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:16:18,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:16:18,541.541 INFO    ] No existing commands found in stream
[2026-06-22 19:16:23,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:16:23,569.569 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-22 19:16:25,593.593 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:16:25,596.596 INFO    ] Checking for system updates...
[2026-06-22 19:16:25,637.637 INFO    ] 200
[2026-06-22 19:16:25,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:16:25,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:16:25,702.702 INFO    ] No update needed
[2026-06-22 19:16:25,704.704 INFO    ] Checking for camera pi updates...
[2026-06-22 19:16:25,738.738 INFO    ] 200
[2026-06-22 19:16:25,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:16:25,781.781 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:16:25,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:16:25,963.963 INFO    ] No camera update needed
[2026-06-22 19:16:25,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:16:25,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:16:25,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:16:25,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:16:28,025.025 INFO    ] ================================================
[2026-06-22 19:16:28,042.042 INFO    ] Launching Daemon at Mon Jun 22 19:16:28 IST 2026
[2026-06-22 19:16:28,053.053 INFO    ] ================================================
[2026-06-22 19:16:28,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:16:28
[2026-06-22 19:16:29,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:16:29,731.731 INFO    ] Initializing speech engine...
[2026-06-22 19:16:29,738.738 INFO    ] 2026-06-22 19:16:29
[2026-06-22 19:16:30,052.052 INFO    ] 2026-06-22 19:16:30
[2026-06-22 19:16:30,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:16:30,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:16:30,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:16:30,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:16:30,731.731 INFO    ] time= 22/06/2026 19:16:30
[2026-06-22 19:16:30,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:16:30,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:16:31,006.006 INFO    ] No existing commands found in stream
[2026-06-22 19:16:36,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:16:36,027.027 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-22 19:16:41,783.783 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:16:41,784.784 INFO    ] Checking for system updates...
[2026-06-22 19:16:41,805.805 INFO    ] 200
[2026-06-22 19:16:41,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:16:41,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:16:41,839.839 INFO    ] No update needed
[2026-06-22 19:16:41,840.840 INFO    ] Checking for camera pi updates...
[2026-06-22 19:16:41,875.875 INFO    ] 200
[2026-06-22 19:16:41,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:16:41,920.920 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:16:42,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:16:42,017.017 INFO    ] No camera update needed
[2026-06-22 19:16:42,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:16:42,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:16:42,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:16:42,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:16:44,080.080 INFO    ] ================================================
[2026-06-22 19:16:44,096.096 INFO    ] Launching Daemon at Mon Jun 22 19:16:44 IST 2026
[2026-06-22 19:16:44,107.107 INFO    ] ================================================
[2026-06-22 19:16:44,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:16:44
[2026-06-22 19:16:45,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:16:45,778.778 INFO    ] Initializing speech engine...
[2026-06-22 19:16:45,785.785 INFO    ] 2026-06-22 19:16:45
[2026-06-22 19:16:46,095.095 INFO    ] 2026-06-22 19:16:46
[2026-06-22 19:16:46,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:16:46,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:16:46,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:16:46,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:16:46,624.624 INFO    ] time= 22/06/2026 19:16:46
[2026-06-22 19:16:46,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:16:46,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:16:46,781.781 INFO    ] No existing commands found in stream
[2026-06-22 19:16:51,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:16:51,815.815 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-22 19:16:55,183.183 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:16:55,186.186 INFO    ] Checking for system updates...
[2026-06-22 19:16:55,224.224 INFO    ] 200
[2026-06-22 19:16:55,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:16:55,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:16:55,290.290 INFO    ] No update needed
[2026-06-22 19:16:55,293.293 INFO    ] Checking for camera pi updates...
[2026-06-22 19:16:55,330.330 INFO    ] 200
[2026-06-22 19:16:55,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:16:55,374.374 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:16:55,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:16:55,475.475 INFO    ] No camera update needed
[2026-06-22 19:16:55,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:16:55,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:16:55,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:16:55,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:16:57,534.534 INFO    ] ================================================
[2026-06-22 19:16:57,550.550 INFO    ] Launching Daemon at Mon Jun 22 19:16:57 IST 2026
[2026-06-22 19:16:57,562.562 INFO    ] ================================================
[2026-06-22 19:16:58,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:16:58
[2026-06-22 19:16:58,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:16:58,930.930 INFO    ] Initializing speech engine...
[2026-06-22 19:16:58,939.939 INFO    ] 2026-06-22 19:16:58
[2026-06-22 19:16:59,211.211 INFO    ] 2026-06-22 19:16:59
[2026-06-22 19:16:59,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:16:59,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:16:59,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:16:59,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:16:59,754.754 INFO    ] time= 22/06/2026 19:16:59
[2026-06-22 19:16:59,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:16:59,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:16:59,898.898 INFO    ] No existing commands found in stream
[2026-06-22 19:17:04,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:17:04,923.923 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-22 19:17:09,129.129 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:17:09,132.132 INFO    ] Checking for system updates...
[2026-06-22 19:17:09,167.167 INFO    ] 200
[2026-06-22 19:17:09,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:17:09,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:17:09,225.225 INFO    ] No update needed
[2026-06-22 19:17:09,227.227 INFO    ] Checking for camera pi updates...
[2026-06-22 19:17:09,246.246 INFO    ] 200
[2026-06-22 19:17:09,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:17:09,272.272 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:17:09,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:17:09,327.327 INFO    ] No camera update needed
[2026-06-22 19:17:09,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:17:09,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:17:09,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:17:09,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:17:11,381.381 INFO    ] ================================================
[2026-06-22 19:17:11,397.397 INFO    ] Launching Daemon at Mon Jun 22 19:17:11 IST 2026
[2026-06-22 19:17:11,407.407 INFO    ] ================================================
[2026-06-22 19:17:11,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:17:11
[2026-06-22 19:17:12,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:17:12,831.831 INFO    ] Initializing speech engine...
[2026-06-22 19:17:12,850.850 INFO    ] 2026-06-22 19:17:12
[2026-06-22 19:17:13,100.100 INFO    ] 2026-06-22 19:17:13
[2026-06-22 19:17:13,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:17:15,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:17:15,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:17:16,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:17:16,332.332 INFO    ] time= 22/06/2026 19:17:16
[2026-06-22 19:17:16,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:17:16,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:17:16,397.397 INFO    ] No existing commands found in stream
[2026-06-22 19:17:21,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:17:21,409.409 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-22 19:17:23,425.425 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:17:23,427.427 INFO    ] Checking for system updates...
[2026-06-22 19:17:23,463.463 INFO    ] 200
[2026-06-22 19:17:23,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:17:23,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:17:23,520.520 INFO    ] No update needed
[2026-06-22 19:17:23,522.522 INFO    ] Checking for camera pi updates...
[2026-06-22 19:17:23,557.557 INFO    ] 200
[2026-06-22 19:17:23,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:17:23,600.600 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:17:23,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:17:23,698.698 INFO    ] No camera update needed
[2026-06-22 19:17:23,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:17:23,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:17:23,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:17:23,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:17:25,753.753 INFO    ] ================================================
[2026-06-22 19:17:25,769.769 INFO    ] Launching Daemon at Mon Jun 22 19:17:25 IST 2026
[2026-06-22 19:17:25,780.780 INFO    ] ================================================
[2026-06-22 19:17:26,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:17:26
[2026-06-22 19:17:26,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:17:27,233.233 INFO    ] Initializing speech engine...
[2026-06-22 19:17:27,258.258 INFO    ] 2026-06-22 19:17:27
[2026-06-22 19:17:27,524.524 INFO    ] 2026-06-22 19:17:27
[2026-06-22 19:17:27,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:17:27,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:17:27,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:17:28,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:17:28,129.129 INFO    ] time= 22/06/2026 19:17:28
[2026-06-22 19:17:28,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:17:28,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:17:28,310.310 INFO    ] No existing commands found in stream
[2026-06-22 19:17:33,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:17:33,329.329 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-22 19:17:37,658.658 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:17:37,661.661 INFO    ] Checking for system updates...
[2026-06-22 19:17:37,697.697 INFO    ] 200
[2026-06-22 19:17:37,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:17:37,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:17:37,759.759 INFO    ] No update needed
[2026-06-22 19:17:37,762.762 INFO    ] Checking for camera pi updates...
[2026-06-22 19:17:37,799.799 INFO    ] 200
[2026-06-22 19:17:37,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:17:37,841.841 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:17:37,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:17:37,936.936 INFO    ] No camera update needed
[2026-06-22 19:17:37,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:17:37,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:17:37,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:17:37,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:17:39,991.991 INFO    ] ================================================
[2026-06-22 19:17:40,007.007 INFO    ] Launching Daemon at Mon Jun 22 19:17:40 IST 2026
[2026-06-22 19:17:40,018.018 INFO    ] ================================================
[2026-06-22 19:17:40,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:17:40
[2026-06-22 19:17:41,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:17:41,413.413 INFO    ] Initializing speech engine...
[2026-06-22 19:17:41,421.421 INFO    ] 2026-06-22 19:17:41
[2026-06-22 19:17:41,708.708 INFO    ] 2026-06-22 19:17:41
[2026-06-22 19:17:41,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:17:45,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:17:45,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:17:46,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:17:46,813.813 INFO    ] time= 22/06/2026 19:17:46
[2026-06-22 19:17:46,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:17:46,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:17:46,888.888 INFO    ] No existing commands found in stream
[2026-06-22 19:17:51,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:17:51,897.897 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-22 19:17:55,835.835 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:17:55,838.838 INFO    ] Checking for system updates...
[2026-06-22 19:17:55,875.875 INFO    ] 200
[2026-06-22 19:17:55,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:17:55,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:17:55,935.935 INFO    ] No update needed
[2026-06-22 19:17:55,937.937 INFO    ] Checking for camera pi updates...
[2026-06-22 19:17:55,971.971 INFO    ] 200
[2026-06-22 19:17:55,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:17:56,015.015 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:17:56,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:17:56,115.115 INFO    ] No camera update needed
[2026-06-22 19:17:56,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:17:56,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:17:56,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:17:56,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:17:58,175.175 INFO    ] ================================================
[2026-06-22 19:17:58,190.190 INFO    ] Launching Daemon at Mon Jun 22 19:17:58 IST 2026
[2026-06-22 19:17:58,201.201 INFO    ] ================================================
[2026-06-22 19:17:58,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:17:58
[2026-06-22 19:17:59,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:17:59,643.643 INFO    ] Initializing speech engine...
[2026-06-22 19:17:59,649.649 INFO    ] 2026-06-22 19:17:59
[2026-06-22 19:17:59,894.894 INFO    ] 2026-06-22 19:17:59
[2026-06-22 19:17:59,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:18:00,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:18:00,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:18:00,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:18:00,359.359 INFO    ] time= 22/06/2026 19:18:00
[2026-06-22 19:18:00,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:18:00,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:18:00,599.599 INFO    ] No existing commands found in stream
[2026-06-22 19:18:05,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:18:05,618.618 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-22 19:18:06,650.650 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:18:06,653.653 INFO    ] Checking for system updates...
[2026-06-22 19:18:06,695.695 INFO    ] 200
[2026-06-22 19:18:06,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:18:06,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:18:06,757.757 INFO    ] No update needed
[2026-06-22 19:18:06,760.760 INFO    ] Checking for camera pi updates...
[2026-06-22 19:18:06,796.796 INFO    ] 200
[2026-06-22 19:18:06,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:18:06,846.846 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:18:06,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:18:06,940.940 INFO    ] No camera update needed
[2026-06-22 19:18:06,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:18:06,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:18:06,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:18:06,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:18:09,001.001 INFO    ] ================================================
[2026-06-22 19:18:09,017.017 INFO    ] Launching Daemon at Mon Jun 22 19:18:09 IST 2026
[2026-06-22 19:18:09,028.028 INFO    ] ================================================
[2026-06-22 19:18:09,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:18:09
[2026-06-22 19:18:10,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:18:10,360.360 INFO    ] Initializing speech engine...
[2026-06-22 19:18:10,370.370 INFO    ] 2026-06-22 19:18:10
[2026-06-22 19:18:10,616.616 INFO    ] 2026-06-22 19:18:10
[2026-06-22 19:18:10,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:18:10,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:18:10,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:18:11,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:18:11,177.177 INFO    ] time= 22/06/2026 19:18:11
[2026-06-22 19:18:11,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:18:11,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:18:11,326.326 INFO    ] No existing commands found in stream
[2026-06-22 19:18:16,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:18:16,343.343 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-22 19:18:19,504.504 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:18:19,507.507 INFO    ] Checking for system updates...
[2026-06-22 19:18:19,547.547 INFO    ] 200
[2026-06-22 19:18:19,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:18:19,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:18:19,605.605 INFO    ] No update needed
[2026-06-22 19:18:19,607.607 INFO    ] Checking for camera pi updates...
[2026-06-22 19:18:19,642.642 INFO    ] 200
[2026-06-22 19:18:19,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:18:19,687.687 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:18:19,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:18:19,796.796 INFO    ] No camera update needed
[2026-06-22 19:18:19,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:18:19,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:18:19,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:18:19,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:18:21,852.852 INFO    ] ================================================
[2026-06-22 19:18:21,868.868 INFO    ] Launching Daemon at Mon Jun 22 19:18:21 IST 2026
[2026-06-22 19:18:21,879.879 INFO    ] ================================================
[2026-06-22 19:18:22,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:18:22
[2026-06-22 19:18:23,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:18:23,302.302 INFO    ] Initializing speech engine...
[2026-06-22 19:18:23,312.312 INFO    ] 2026-06-22 19:18:23
[2026-06-22 19:18:23,557.557 INFO    ] 2026-06-22 19:18:23
[2026-06-22 19:18:23,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:18:23,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:18:23,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:18:23,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:18:24,029.029 INFO    ] time= 22/06/2026 19:18:23
[2026-06-22 19:18:24,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:18:24,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:18:24,244.244 INFO    ] No existing commands found in stream
[2026-06-22 19:18:29,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:18:29,277.277 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-22 19:18:30,773.773 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:18:30,776.776 INFO    ] Checking for system updates...
[2026-06-22 19:18:30,813.813 INFO    ] 200
[2026-06-22 19:18:30,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:18:30,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:18:30,871.871 INFO    ] No update needed
[2026-06-22 19:18:30,873.873 INFO    ] Checking for camera pi updates...
[2026-06-22 19:18:30,908.908 INFO    ] 200
[2026-06-22 19:18:30,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:18:30,952.952 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:18:31,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:18:31,140.140 INFO    ] No camera update needed
[2026-06-22 19:18:31,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:18:31,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:18:31,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:18:31,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:18:33,199.199 INFO    ] ================================================
[2026-06-22 19:18:33,216.216 INFO    ] Launching Daemon at Mon Jun 22 19:18:33 IST 2026
[2026-06-22 19:18:33,226.226 INFO    ] ================================================
[2026-06-22 19:18:33,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:18:33
[2026-06-22 19:18:34,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:18:34,673.673 INFO    ] Initializing speech engine...
[2026-06-22 19:18:34,681.681 INFO    ] 2026-06-22 19:18:34
[2026-06-22 19:18:34,941.941 INFO    ] 2026-06-22 19:18:34
[2026-06-22 19:18:34,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:18:35,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:18:35,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:18:35,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:18:35,405.405 INFO    ] time= 22/06/2026 19:18:35
[2026-06-22 19:18:35,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:18:35,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:18:35,614.614 INFO    ] No existing commands found in stream
[2026-06-22 19:18:40,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:18:40,647.647 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-22 19:18:43,684.684 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:18:43,687.687 INFO    ] Checking for system updates...
[2026-06-22 19:18:43,723.723 INFO    ] 200
[2026-06-22 19:18:43,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:18:43,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:18:43,783.783 INFO    ] No update needed
[2026-06-22 19:18:43,785.785 INFO    ] Checking for camera pi updates...
[2026-06-22 19:18:43,823.823 INFO    ] 200
[2026-06-22 19:18:43,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:18:43,867.867 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:18:43,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:18:43,920.920 INFO    ] No camera update needed
[2026-06-22 19:18:43,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:18:43,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:18:43,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:18:43,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:18:45,981.981 INFO    ] ================================================
[2026-06-22 19:18:46,996.996 INFO    ] Launching Daemon at Mon Jun 22 19:18:45 IST 2026
[2026-06-22 19:18:46,007.007 INFO    ] ================================================
[2026-06-22 19:18:46,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:18:46
[2026-06-22 19:18:47,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:18:47,477.477 INFO    ] Initializing speech engine...
[2026-06-22 19:18:47,488.488 INFO    ] 2026-06-22 19:18:47
[2026-06-22 19:18:47,746.746 INFO    ] 2026-06-22 19:18:47
[2026-06-22 19:18:47,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:18:49,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:18:49,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:18:50,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:18:50,149.149 INFO    ] time= 22/06/2026 19:18:50
[2026-06-22 19:18:50,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:18:50,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:18:50,237.237 INFO    ] No existing commands found in stream
[2026-06-22 19:18:55,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:18:55,251.251 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-22 19:18:57,869.869 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:18:57,872.872 INFO    ] Checking for system updates...
[2026-06-22 19:18:57,913.913 INFO    ] 200
[2026-06-22 19:18:57,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:18:57,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:18:57,979.979 INFO    ] No update needed
[2026-06-22 19:18:57,982.982 INFO    ] Checking for camera pi updates...
[2026-06-22 19:18:58,021.021 INFO    ] 200
[2026-06-22 19:18:58,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:18:58,064.064 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:18:58,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:18:58,170.170 INFO    ] No camera update needed
[2026-06-22 19:18:58,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:18:58,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:18:58,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:18:58,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:19:00,230.230 INFO    ] ================================================
[2026-06-22 19:19:00,246.246 INFO    ] Launching Daemon at Mon Jun 22 19:19:00 IST 2026
[2026-06-22 19:19:00,257.257 INFO    ] ================================================
[2026-06-22 19:19:00,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:19:00
[2026-06-22 19:19:01,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:19:01,916.916 INFO    ] Initializing speech engine...
[2026-06-22 19:19:01,929.929 INFO    ] 2026-06-22 19:19:01
[2026-06-22 19:19:02,224.224 INFO    ] 2026-06-22 19:19:02
[2026-06-22 19:19:02,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:19:02,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:19:02,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:19:02,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:19:02,747.747 INFO    ] time= 22/06/2026 19:19:02
[2026-06-22 19:19:02,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:19:02,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:19:02,957.957 INFO    ] No existing commands found in stream
[2026-06-22 19:19:07,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:19:07,989.989 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-22 19:19:08,878.878 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:19:08,881.881 INFO    ] Checking for system updates...
[2026-06-22 19:19:08,917.917 INFO    ] 200
[2026-06-22 19:19:08,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:19:08,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:19:08,974.974 INFO    ] No update needed
[2026-06-22 19:19:08,977.977 INFO    ] Checking for camera pi updates...
[2026-06-22 19:19:09,018.018 INFO    ] 200
[2026-06-22 19:19:09,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:19:09,061.061 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:19:09,112.112 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:19:09,115.115 INFO    ] No camera update needed
[2026-06-22 19:19:09,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:19:09,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:19:09,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:19:09,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:19:11,170.170 INFO    ] ================================================
[2026-06-22 19:19:11,186.186 INFO    ] Launching Daemon at Mon Jun 22 19:19:11 IST 2026
[2026-06-22 19:19:11,197.197 INFO    ] ================================================
[2026-06-22 19:19:11,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:19:11
[2026-06-22 19:19:12,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:19:12,653.653 INFO    ] Initializing speech engine...
[2026-06-22 19:19:12,662.662 INFO    ] 2026-06-22 19:19:12
[2026-06-22 19:19:12,927.927 INFO    ] 2026-06-22 19:19:12
[2026-06-22 19:19:12,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:19:13,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:19:13,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:19:13,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:19:13,458.458 INFO    ] time= 22/06/2026 19:19:13
[2026-06-22 19:19:13,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:19:13,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:19:13,699.699 INFO    ] No existing commands found in stream
[2026-06-22 19:19:18,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:19:18,732.732 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-22 19:19:21,270.270 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:19:21,273.273 INFO    ] Checking for system updates...
[2026-06-22 19:19:21,308.308 INFO    ] 200
[2026-06-22 19:19:21,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:19:21,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:19:21,367.367 INFO    ] No update needed
[2026-06-22 19:19:21,369.369 INFO    ] Checking for camera pi updates...
[2026-06-22 19:19:21,404.404 INFO    ] 200
[2026-06-22 19:19:21,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:19:21,448.448 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:19:21,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:19:21,547.547 INFO    ] No camera update needed
[2026-06-22 19:19:21,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:19:21,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:19:21,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:19:21,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:19:23,602.602 INFO    ] ================================================
[2026-06-22 19:19:23,618.618 INFO    ] Launching Daemon at Mon Jun 22 19:19:23 IST 2026
[2026-06-22 19:19:23,629.629 INFO    ] ================================================
[2026-06-22 19:19:24,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:19:24
[2026-06-22 19:19:24,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:19:24,947.947 INFO    ] Initializing speech engine...
[2026-06-22 19:19:24,968.968 INFO    ] 2026-06-22 19:19:24
[2026-06-22 19:19:25,225.225 INFO    ] 2026-06-22 19:19:25
[2026-06-22 19:19:25,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:19:25,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:19:25,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:19:25,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:19:25,696.696 INFO    ] time= 22/06/2026 19:19:25
[2026-06-22 19:19:25,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:19:25,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:19:25,916.916 INFO    ] No existing commands found in stream
[2026-06-22 19:19:30,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:19:30,948.948 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-22 19:19:32,194.194 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:19:32,197.197 INFO    ] Checking for system updates...
[2026-06-22 19:19:32,242.242 INFO    ] 200
[2026-06-22 19:19:32,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:19:32,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:19:32,316.316 INFO    ] No update needed
[2026-06-22 19:19:32,319.319 INFO    ] Checking for camera pi updates...
[2026-06-22 19:19:32,356.356 INFO    ] 200
[2026-06-22 19:19:32,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:19:32,402.402 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:19:32,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:19:32,472.472 INFO    ] No camera update needed
[2026-06-22 19:19:32,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:19:32,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:19:32,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:19:32,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:19:34,531.531 INFO    ] ================================================
[2026-06-22 19:19:34,547.547 INFO    ] Launching Daemon at Mon Jun 22 19:19:34 IST 2026
[2026-06-22 19:19:34,558.558 INFO    ] ================================================
[2026-06-22 19:19:35,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:19:35
[2026-06-22 19:19:35,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:19:35,984.984 INFO    ] Initializing speech engine...
[2026-06-22 19:19:36,004.004 INFO    ] 2026-06-22 19:19:35
[2026-06-22 19:19:36,274.274 INFO    ] 2026-06-22 19:19:36
[2026-06-22 19:19:36,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:19:36,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:19:36,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:19:36,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:19:36,697.697 INFO    ] time= 22/06/2026 19:19:36
[2026-06-22 19:19:36,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:19:36,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:19:36,877.877 INFO    ] No existing commands found in stream
[2026-06-22 19:19:41,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:19:41,909.909 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-22 19:19:44,676.676 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:19:44,678.678 INFO    ] Checking for system updates...
[2026-06-22 19:19:44,715.715 INFO    ] 200
[2026-06-22 19:19:44,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:19:44,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:19:44,774.774 INFO    ] No update needed
[2026-06-22 19:19:44,777.777 INFO    ] Checking for camera pi updates...
[2026-06-22 19:19:44,812.812 INFO    ] 200
[2026-06-22 19:19:44,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:19:44,858.858 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:19:44,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:19:44,942.942 INFO    ] No camera update needed
[2026-06-22 19:19:44,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:19:44,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:19:44,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:19:44,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:19:47,001.001 INFO    ] ================================================
[2026-06-22 19:19:47,016.016 INFO    ] Launching Daemon at Mon Jun 22 19:19:47 IST 2026
[2026-06-22 19:19:47,027.027 INFO    ] ================================================
[2026-06-22 19:19:47,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:19:47
[2026-06-22 19:19:48,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:19:48,439.439 INFO    ] Initializing speech engine...
[2026-06-22 19:19:48,445.445 INFO    ] 2026-06-22 19:19:48
[2026-06-22 19:19:48,740.740 INFO    ] 2026-06-22 19:19:48
[2026-06-22 19:19:48,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:19:50,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:19:50,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:19:51,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:19:51,484.484 INFO    ] time= 22/06/2026 19:19:51
[2026-06-22 19:19:51,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:19:51,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:19:51,600.600 INFO    ] No existing commands found in stream
[2026-06-22 19:19:56,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:19:56,638.638 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-22 19:20:00,710.710 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:20:00,713.713 INFO    ] Checking for system updates...
[2026-06-22 19:20:00,750.750 INFO    ] 200
[2026-06-22 19:20:00,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:20:00,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:20:00,808.808 INFO    ] No update needed
[2026-06-22 19:20:00,810.810 INFO    ] Checking for camera pi updates...
[2026-06-22 19:20:00,846.846 INFO    ] 200
[2026-06-22 19:20:00,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:20:00,890.890 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:20:00,970.970 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:20:00,972.972 INFO    ] No camera update needed
[2026-06-22 19:20:00,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:20:00,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:20:00,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:20:00,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:20:03,053.053 INFO    ] ================================================
[2026-06-22 19:20:03,077.077 INFO    ] Launching Daemon at Mon Jun 22 19:20:03 IST 2026
[2026-06-22 19:20:03,088.088 INFO    ] ================================================
[2026-06-22 19:20:03,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:20:03
[2026-06-22 19:20:04,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:20:04,674.674 INFO    ] Initializing speech engine...
[2026-06-22 19:20:04,682.682 INFO    ] 2026-06-22 19:20:04
[2026-06-22 19:20:04,964.964 INFO    ] 2026-06-22 19:20:04
[2026-06-22 19:20:05,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:20:05,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:20:05,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:20:05,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:20:05,823.823 INFO    ] time= 22/06/2026 19:20:05
[2026-06-22 19:20:05,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:20:05,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:20:06,066.066 INFO    ] No existing commands found in stream
[2026-06-22 19:20:11,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:20:11,082.082 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-22 19:20:12,620.620 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:20:12,623.623 INFO    ] Checking for system updates...
[2026-06-22 19:20:12,659.659 INFO    ] 200
[2026-06-22 19:20:12,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:20:12,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:20:12,716.716 INFO    ] No update needed
[2026-06-22 19:20:12,719.719 INFO    ] Checking for camera pi updates...
[2026-06-22 19:20:12,753.753 INFO    ] 200
[2026-06-22 19:20:12,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:20:12,797.797 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:20:12,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:20:12,883.883 INFO    ] No camera update needed
[2026-06-22 19:20:12,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:20:12,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:20:12,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:20:12,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:20:14,940.940 INFO    ] ================================================
[2026-06-22 19:20:14,956.956 INFO    ] Launching Daemon at Mon Jun 22 19:20:14 IST 2026
[2026-06-22 19:20:14,968.968 INFO    ] ================================================
[2026-06-22 19:20:15,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:20:15
[2026-06-22 19:20:16,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:20:16,374.374 INFO    ] Initializing speech engine...
[2026-06-22 19:20:16,382.382 INFO    ] 2026-06-22 19:20:16
[2026-06-22 19:20:16,673.673 INFO    ] 2026-06-22 19:20:16
[2026-06-22 19:20:16,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:20:17,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:20:17,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:20:17,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:20:17,186.186 INFO    ] time= 22/06/2026 19:20:17
[2026-06-22 19:20:17,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:20:17,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:20:17,400.400 INFO    ] No existing commands found in stream
[2026-06-22 19:20:22,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:20:22,439.439 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-22 19:20:26,000.000 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:20:26,003.003 INFO    ] Checking for system updates...
[2026-06-22 19:20:26,044.044 INFO    ] 200
[2026-06-22 19:20:26,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:20:26,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:20:26,108.108 INFO    ] No update needed
[2026-06-22 19:20:26,110.110 INFO    ] Checking for camera pi updates...
[2026-06-22 19:20:26,144.144 INFO    ] 200
[2026-06-22 19:20:26,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:20:26,189.189 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:20:26,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:20:26,273.273 INFO    ] No camera update needed
[2026-06-22 19:20:26,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:20:26,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:20:26,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:20:26,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:20:28,328.328 INFO    ] ================================================
[2026-06-22 19:20:28,343.343 INFO    ] Launching Daemon at Mon Jun 22 19:20:28 IST 2026
[2026-06-22 19:20:28,354.354 INFO    ] ================================================
[2026-06-22 19:20:28,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:20:28
[2026-06-22 19:20:29,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:20:29,851.851 INFO    ] Initializing speech engine...
[2026-06-22 19:20:29,859.859 INFO    ] 2026-06-22 19:20:29
[2026-06-22 19:20:30,109.109 INFO    ] 2026-06-22 19:20:30
[2026-06-22 19:20:30,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:20:30,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:20:30,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:20:30,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:20:30,607.607 INFO    ] time= 22/06/2026 19:20:30
[2026-06-22 19:20:30,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:20:30,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:20:30,880.880 INFO    ] No existing commands found in stream
[2026-06-22 19:20:35,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:20:35,898.898 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-22 19:20:36,810.810 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:20:36,813.813 INFO    ] Checking for system updates...
[2026-06-22 19:20:36,853.853 INFO    ] 200
[2026-06-22 19:20:36,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:20:36,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:20:36,912.912 INFO    ] No update needed
[2026-06-22 19:20:36,914.914 INFO    ] Checking for camera pi updates...
[2026-06-22 19:20:36,950.950 INFO    ] 200
[2026-06-22 19:20:36,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:20:36,994.994 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:20:37,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:20:37,176.176 INFO    ] No camera update needed
[2026-06-22 19:20:37,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:20:37,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:20:37,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:20:37,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:20:39,232.232 INFO    ] ================================================
[2026-06-22 19:20:39,248.248 INFO    ] Launching Daemon at Mon Jun 22 19:20:39 IST 2026
[2026-06-22 19:20:39,258.258 INFO    ] ================================================
[2026-06-22 19:20:39,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:20:39
[2026-06-22 19:20:40,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:20:40,685.685 INFO    ] Initializing speech engine...
[2026-06-22 19:20:40,694.694 INFO    ] 2026-06-22 19:20:40
[2026-06-22 19:20:40,944.944 INFO    ] 2026-06-22 19:20:40
[2026-06-22 19:20:40,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:20:41,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:20:41,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:20:41,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:20:41,516.516 INFO    ] time= 22/06/2026 19:20:41
[2026-06-22 19:20:41,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:20:41,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:20:41,703.703 INFO    ] No existing commands found in stream
[2026-06-22 19:20:46,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:20:46,731.731 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-22 19:20:52,863.863 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:20:52,865.865 INFO    ] Checking for system updates...
[2026-06-22 19:20:52,889.889 INFO    ] 200
[2026-06-22 19:20:52,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:20:52,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:20:52,937.937 INFO    ] No update needed
[2026-06-22 19:20:52,938.938 INFO    ] Checking for camera pi updates...
[2026-06-22 19:20:52,961.961 INFO    ] 200
[2026-06-22 19:20:52,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:20:53,014.014 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:20:53,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:20:53,117.117 INFO    ] No camera update needed
[2026-06-22 19:20:53,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:20:53,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:20:53,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:20:53,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:20:55,172.172 INFO    ] ================================================
[2026-06-22 19:20:55,188.188 INFO    ] Launching Daemon at Mon Jun 22 19:20:55 IST 2026
[2026-06-22 19:20:55,198.198 INFO    ] ================================================
[2026-06-22 19:20:55,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:20:55
[2026-06-22 19:20:56,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:20:56,782.782 INFO    ] Initializing speech engine...
[2026-06-22 19:20:56,794.794 INFO    ] 2026-06-22 19:20:56
[2026-06-22 19:20:57,055.055 INFO    ] 2026-06-22 19:20:57
[2026-06-22 19:20:57,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:20:57,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:20:57,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:20:57,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:20:57,575.575 INFO    ] time= 22/06/2026 19:20:57
[2026-06-22 19:20:57,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:20:57,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:20:57,778.778 INFO    ] No existing commands found in stream
[2026-06-22 19:21:02,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:21:02,800.800 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-22 19:21:05,370.370 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:21:05,373.373 INFO    ] Checking for system updates...
[2026-06-22 19:21:05,413.413 INFO    ] 200
[2026-06-22 19:21:05,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:21:05,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:21:05,479.479 INFO    ] No update needed
[2026-06-22 19:21:05,481.481 INFO    ] Checking for camera pi updates...
[2026-06-22 19:21:05,518.518 INFO    ] 200
[2026-06-22 19:21:05,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:21:05,563.563 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:21:05,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:21:05,647.647 INFO    ] No camera update needed
[2026-06-22 19:21:05,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:21:05,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:21:05,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:21:05,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:21:07,705.705 INFO    ] ================================================
[2026-06-22 19:21:07,720.720 INFO    ] Launching Daemon at Mon Jun 22 19:21:07 IST 2026
[2026-06-22 19:21:07,731.731 INFO    ] ================================================
[2026-06-22 19:21:08,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:21:08
[2026-06-22 19:21:08,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:21:09,168.168 INFO    ] Initializing speech engine...
[2026-06-22 19:21:09,174.174 INFO    ] 2026-06-22 19:21:09
[2026-06-22 19:21:09,471.471 INFO    ] 2026-06-22 19:21:09
[2026-06-22 19:21:09,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:21:09,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:21:09,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:21:09,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:21:09,889.889 INFO    ] time= 22/06/2026 19:21:09
[2026-06-22 19:21:09,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:21:09,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:21:09,976.976 INFO    ] No existing commands found in stream
[2026-06-22 19:21:15,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:21:15,014.014 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-22 19:21:16,188.188 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:21:16,190.190 INFO    ] Checking for system updates...
[2026-06-22 19:21:16,229.229 INFO    ] 200
[2026-06-22 19:21:16,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:21:16,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:21:16,287.287 INFO    ] No update needed
[2026-06-22 19:21:16,289.289 INFO    ] Checking for camera pi updates...
[2026-06-22 19:21:16,323.323 INFO    ] 200
[2026-06-22 19:21:16,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:21:16,367.367 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:21:16,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:21:16,444.444 INFO    ] No camera update needed
[2026-06-22 19:21:16,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:21:16,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:21:16,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:21:16,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:21:18,499.499 INFO    ] ================================================
[2026-06-22 19:21:18,514.514 INFO    ] Launching Daemon at Mon Jun 22 19:21:18 IST 2026
[2026-06-22 19:21:18,525.525 INFO    ] ================================================
[2026-06-22 19:21:19,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:21:19
[2026-06-22 19:21:19,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:21:19,885.885 INFO    ] Initializing speech engine...
[2026-06-22 19:21:19,897.897 INFO    ] 2026-06-22 19:21:19
[2026-06-22 19:21:20,160.160 INFO    ] 2026-06-22 19:21:20
[2026-06-22 19:21:20,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:21:23,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:21:23,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:21:24,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:21:24,686.686 INFO    ] time= 22/06/2026 19:21:24
[2026-06-22 19:21:24,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:21:24,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:21:24,793.793 INFO    ] No existing commands found in stream
[2026-06-22 19:21:29,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:21:29,805.805 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-22 19:21:31,980.980 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:21:31,983.983 INFO    ] Checking for system updates...
[2026-06-22 19:21:32,021.021 INFO    ] 200
[2026-06-22 19:21:32,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:21:32,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:21:32,084.084 INFO    ] No update needed
[2026-06-22 19:21:32,086.086 INFO    ] Checking for camera pi updates...
[2026-06-22 19:21:32,123.123 INFO    ] 200
[2026-06-22 19:21:32,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:21:32,177.177 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:21:32,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:21:32,245.245 INFO    ] No camera update needed
[2026-06-22 19:21:32,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:21:32,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:21:32,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:21:32,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:21:34,308.308 INFO    ] ================================================
[2026-06-22 19:21:34,323.323 INFO    ] Launching Daemon at Mon Jun 22 19:21:34 IST 2026
[2026-06-22 19:21:34,334.334 INFO    ] ================================================
[2026-06-22 19:21:34,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:21:34
[2026-06-22 19:21:35,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:21:35,765.765 INFO    ] Initializing speech engine...
[2026-06-22 19:21:35,771.771 INFO    ] 2026-06-22 19:21:35
[2026-06-22 19:21:36,080.080 INFO    ] 2026-06-22 19:21:36
[2026-06-22 19:21:36,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:21:36,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:21:36,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:21:36,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:21:36,526.526 INFO    ] time= 22/06/2026 19:21:36
[2026-06-22 19:21:36,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:21:36,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:21:36,632.632 INFO    ] No existing commands found in stream
[2026-06-22 19:21:41,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:21:41,665.665 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-22 19:21:42,205.205 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:21:42,207.207 INFO    ] Checking for system updates...
[2026-06-22 19:21:42,247.247 INFO    ] 200
[2026-06-22 19:21:42,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:21:42,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:21:42,312.312 INFO    ] No update needed
[2026-06-22 19:21:42,315.315 INFO    ] Checking for camera pi updates...
[2026-06-22 19:21:42,349.349 INFO    ] 200
[2026-06-22 19:21:42,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:21:42,393.393 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:21:42,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:21:42,478.478 INFO    ] No camera update needed
[2026-06-22 19:21:42,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:21:42,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:21:42,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:21:42,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:21:44,535.535 INFO    ] ================================================
[2026-06-22 19:21:44,550.550 INFO    ] Launching Daemon at Mon Jun 22 19:21:44 IST 2026
[2026-06-22 19:21:44,561.561 INFO    ] ================================================
[2026-06-22 19:21:45,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:21:45
[2026-06-22 19:21:45,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:21:46,122.122 INFO    ] Initializing speech engine...
[2026-06-22 19:21:46,127.127 INFO    ] 2026-06-22 19:21:46
[2026-06-22 19:21:46,403.403 INFO    ] 2026-06-22 19:21:46
[2026-06-22 19:21:46,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:21:46,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:21:46,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:21:46,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:21:46,977.977 INFO    ] time= 22/06/2026 19:21:46
[2026-06-22 19:21:46,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:21:47,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:21:47,148.148 INFO    ] No existing commands found in stream
[2026-06-22 19:21:52,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:21:52,173.173 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-22 19:21:55,737.737 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:21:55,740.740 INFO    ] Checking for system updates...
[2026-06-22 19:21:55,777.777 INFO    ] 200
[2026-06-22 19:21:55,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:21:55,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:21:55,841.841 INFO    ] No update needed
[2026-06-22 19:21:55,843.843 INFO    ] Checking for camera pi updates...
[2026-06-22 19:21:55,879.879 INFO    ] 200
[2026-06-22 19:21:55,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:21:55,926.926 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:21:56,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:21:56,010.010 INFO    ] No camera update needed
[2026-06-22 19:21:56,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:21:56,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:21:56,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:21:56,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:21:58,070.070 INFO    ] ================================================
[2026-06-22 19:21:58,086.086 INFO    ] Launching Daemon at Mon Jun 22 19:21:58 IST 2026
[2026-06-22 19:21:58,096.096 INFO    ] ================================================
[2026-06-22 19:21:58,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:21:58
[2026-06-22 19:21:59,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:21:59,491.491 INFO    ] Initializing speech engine...
[2026-06-22 19:21:59,500.500 INFO    ] 2026-06-22 19:21:59
[2026-06-22 19:21:59,771.771 INFO    ] 2026-06-22 19:21:59
[2026-06-22 19:21:59,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:22:00,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:22:00,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:22:00,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:22:00,318.318 INFO    ] time= 22/06/2026 19:22:00
[2026-06-22 19:22:00,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:22:00,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:22:00,482.482 INFO    ] No existing commands found in stream
[2026-06-22 19:22:05,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:22:05,505.505 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-22 19:22:08,189.189 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:22:08,192.192 INFO    ] Checking for system updates...
[2026-06-22 19:22:08,229.229 INFO    ] 200
[2026-06-22 19:22:08,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:22:08,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:22:08,287.287 INFO    ] No update needed
[2026-06-22 19:22:08,289.289 INFO    ] Checking for camera pi updates...
[2026-06-22 19:22:08,327.327 INFO    ] 200
[2026-06-22 19:22:08,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:22:08,375.375 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:22:08,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:22:08,478.478 INFO    ] No camera update needed
[2026-06-22 19:22:08,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:22:08,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:22:08,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:22:08,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:22:10,536.536 INFO    ] ================================================
[2026-06-22 19:22:10,554.554 INFO    ] Launching Daemon at Mon Jun 22 19:22:10 IST 2026
[2026-06-22 19:22:10,566.566 INFO    ] ================================================
[2026-06-22 19:22:11,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:22:11
[2026-06-22 19:22:11,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:22:12,149.149 INFO    ] Initializing speech engine...
[2026-06-22 19:22:12,160.160 INFO    ] 2026-06-22 19:22:12
[2026-06-22 19:22:12,426.426 INFO    ] 2026-06-22 19:22:12
[2026-06-22 19:22:12,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:22:12,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:22:12,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:22:12,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:22:12,908.908 INFO    ] time= 22/06/2026 19:22:12
[2026-06-22 19:22:12,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:22:12,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:22:13,077.077 INFO    ] No existing commands found in stream
[2026-06-22 19:22:18,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:22:18,093.093 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-22 19:22:28,248.248 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:22:28,251.251 INFO    ] Checking for system updates...
[2026-06-22 19:22:28,287.287 INFO    ] 200
[2026-06-22 19:22:28,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:22:28,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:22:28,346.346 INFO    ] No update needed
[2026-06-22 19:22:28,348.348 INFO    ] Checking for camera pi updates...
[2026-06-22 19:22:28,382.382 INFO    ] 200
[2026-06-22 19:22:28,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:22:28,426.426 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:22:28,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:22:28,536.536 INFO    ] No camera update needed
[2026-06-22 19:22:28,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:22:28,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:22:28,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:22:28,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:22:30,593.593 INFO    ] ================================================
[2026-06-22 19:22:30,608.608 INFO    ] Launching Daemon at Mon Jun 22 19:22:30 IST 2026
[2026-06-22 19:22:30,619.619 INFO    ] ================================================
[2026-06-22 19:22:31,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:22:31
[2026-06-22 19:22:31,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:22:32,124.124 INFO    ] Initializing speech engine...
[2026-06-22 19:22:32,138.138 INFO    ] 2026-06-22 19:22:32
[2026-06-22 19:22:32,450.450 INFO    ] 2026-06-22 19:22:32
[2026-06-22 19:22:32,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:22:32,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:22:32,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:22:32,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:22:32,942.942 INFO    ] time= 22/06/2026 19:22:32
[2026-06-22 19:22:33,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:22:33,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:22:33,066.066 INFO    ] No existing commands found in stream
[2026-06-22 19:22:38,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:22:38,082.082 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-22 19:22:38,852.852 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:22:38,855.855 INFO    ] Checking for system updates...
[2026-06-22 19:22:38,892.892 INFO    ] 200
[2026-06-22 19:22:38,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:22:38,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:22:38,952.952 INFO    ] No update needed
[2026-06-22 19:22:38,955.955 INFO    ] Checking for camera pi updates...
[2026-06-22 19:22:38,991.991 INFO    ] 200
[2026-06-22 19:22:38,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:22:39,042.042 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:22:39,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:22:39,226.226 INFO    ] No camera update needed
[2026-06-22 19:22:39,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:22:39,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:22:39,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:22:39,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:22:41,284.284 INFO    ] ================================================
[2026-06-22 19:22:41,292.292 INFO    ] Launching Daemon at Mon Jun 22 19:22:41 IST 2026
[2026-06-22 19:22:41,298.298 INFO    ] ================================================
[2026-06-22 19:22:41,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:22:41
[2026-06-22 19:22:42,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:22:42,720.720 INFO    ] Initializing speech engine...
[2026-06-22 19:22:42,728.728 INFO    ] 2026-06-22 19:22:42
[2026-06-22 19:22:43,021.021 INFO    ] 2026-06-22 19:22:42
[2026-06-22 19:22:43,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:22:43,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:22:43,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:22:43,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:22:43,438.438 INFO    ] time= 22/06/2026 19:22:43
[2026-06-22 19:22:43,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:22:43,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:22:43,530.530 INFO    ] No existing commands found in stream
[2026-06-22 19:22:48,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:22:48,547.547 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-22 19:22:49,980.980 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:22:49,982.982 INFO    ] Checking for system updates...
[2026-06-22 19:22:50,022.022 INFO    ] 200
[2026-06-22 19:22:50,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:22:50,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:22:50,087.087 INFO    ] No update needed
[2026-06-22 19:22:50,090.090 INFO    ] Checking for camera pi updates...
[2026-06-22 19:22:50,123.123 INFO    ] 200
[2026-06-22 19:22:50,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:22:50,171.171 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:22:50,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:22:50,263.263 INFO    ] No camera update needed
[2026-06-22 19:22:50,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:22:50,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:22:50,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:22:50,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:22:52,318.318 INFO    ] ================================================
[2026-06-22 19:22:52,334.334 INFO    ] Launching Daemon at Mon Jun 22 19:22:52 IST 2026
[2026-06-22 19:22:52,346.346 INFO    ] ================================================
[2026-06-22 19:22:53,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:22:53
[2026-06-22 19:22:53,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:22:53,997.997 INFO    ] Initializing speech engine...
[2026-06-22 19:22:54,004.004 INFO    ] 2026-06-22 19:22:53
[2026-06-22 19:22:54,288.288 INFO    ] 2026-06-22 19:22:54
[2026-06-22 19:22:54,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:22:55,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:22:55,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:22:56,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:22:56,202.202 INFO    ] time= 22/06/2026 19:22:56
[2026-06-22 19:22:56,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:22:56,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:22:56,259.259 INFO    ] No existing commands found in stream
[2026-06-22 19:23:01,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:23:01,269.269 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-22 19:23:04,163.163 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:23:04,166.166 INFO    ] Checking for system updates...
[2026-06-22 19:23:04,202.202 INFO    ] 200
[2026-06-22 19:23:04,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:23:04,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:23:04,266.266 INFO    ] No update needed
[2026-06-22 19:23:04,268.268 INFO    ] Checking for camera pi updates...
[2026-06-22 19:23:04,302.302 INFO    ] 200
[2026-06-22 19:23:04,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:23:04,345.345 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:23:04,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:23:04,423.423 INFO    ] No camera update needed
[2026-06-22 19:23:04,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:23:04,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:23:04,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:23:04,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:23:06,480.480 INFO    ] ================================================
[2026-06-22 19:23:06,495.495 INFO    ] Launching Daemon at Mon Jun 22 19:23:06 IST 2026
[2026-06-22 19:23:06,506.506 INFO    ] ================================================
[2026-06-22 19:23:07,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:23:07
[2026-06-22 19:23:07,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:23:07,950.950 INFO    ] Initializing speech engine...
[2026-06-22 19:23:07,969.969 INFO    ] 2026-06-22 19:23:07
[2026-06-22 19:23:08,221.221 INFO    ] 2026-06-22 19:23:08
[2026-06-22 19:23:08,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:23:08,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:23:08,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:23:08,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:23:08,589.589 INFO    ] time= 22/06/2026 19:23:08
[2026-06-22 19:23:08,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:23:08,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:23:08,754.754 INFO    ] No existing commands found in stream
[2026-06-22 19:23:13,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:23:13,788.788 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-22 19:23:18,398.398 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:23:18,400.400 INFO    ] Checking for system updates...
[2026-06-22 19:23:18,440.440 INFO    ] 200
[2026-06-22 19:23:18,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:23:18,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:23:18,505.505 INFO    ] No update needed
[2026-06-22 19:23:18,507.507 INFO    ] Checking for camera pi updates...
[2026-06-22 19:23:18,548.548 INFO    ] 200
[2026-06-22 19:23:18,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:23:18,601.601 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:23:18,684.684 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:23:18,687.687 INFO    ] No camera update needed
[2026-06-22 19:23:18,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:23:18,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:23:18,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:23:18,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:23:20,746.746 INFO    ] ================================================
[2026-06-22 19:23:20,763.763 INFO    ] Launching Daemon at Mon Jun 22 19:23:20 IST 2026
[2026-06-22 19:23:20,776.776 INFO    ] ================================================
[2026-06-22 19:23:21,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:23:21
[2026-06-22 19:23:21,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:23:22,238.238 INFO    ] Initializing speech engine...
[2026-06-22 19:23:22,261.261 INFO    ] 2026-06-22 19:23:22
[2026-06-22 19:23:22,532.532 INFO    ] 2026-06-22 19:23:22
[2026-06-22 19:23:22,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:23:25,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:23:25,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:23:26,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:23:26,401.401 INFO    ] time= 22/06/2026 19:23:26
[2026-06-22 19:23:26,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:23:26,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:23:26,452.452 INFO    ] No existing commands found in stream
[2026-06-22 19:23:31,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:23:31,465.465 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-22 19:23:33,815.815 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:23:33,818.818 INFO    ] Checking for system updates...
[2026-06-22 19:23:33,854.854 INFO    ] 200
[2026-06-22 19:23:33,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:23:33,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:23:33,916.916 INFO    ] No update needed
[2026-06-22 19:23:33,919.919 INFO    ] Checking for camera pi updates...
[2026-06-22 19:23:33,953.953 INFO    ] 200
[2026-06-22 19:23:33,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:23:34,000.000 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:23:34,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:23:34,104.104 INFO    ] No camera update needed
[2026-06-22 19:23:34,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:23:34,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:23:34,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:23:34,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:23:36,160.160 INFO    ] ================================================
[2026-06-22 19:23:36,175.175 INFO    ] Launching Daemon at Mon Jun 22 19:23:36 IST 2026
[2026-06-22 19:23:36,186.186 INFO    ] ================================================
[2026-06-22 19:23:36,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:23:36
[2026-06-22 19:23:37,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:23:37,602.602 INFO    ] Initializing speech engine...
[2026-06-22 19:23:37,608.608 INFO    ] 2026-06-22 19:23:37
[2026-06-22 19:23:37,901.901 INFO    ] 2026-06-22 19:23:37
[2026-06-22 19:23:37,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:23:38,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:23:38,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:23:38,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:23:38,282.282 INFO    ] time= 22/06/2026 19:23:38
[2026-06-22 19:23:38,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:23:38,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:23:38,405.405 INFO    ] No existing commands found in stream
[2026-06-22 19:23:43,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:23:43,421.421 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-22 19:23:47,630.630 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:23:47,633.633 INFO    ] Checking for system updates...
[2026-06-22 19:23:47,672.672 INFO    ] 200
[2026-06-22 19:23:47,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:23:47,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:23:47,737.737 INFO    ] No update needed
[2026-06-22 19:23:47,739.739 INFO    ] Checking for camera pi updates...
[2026-06-22 19:23:47,772.772 INFO    ] 200
[2026-06-22 19:23:47,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:23:47,815.815 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:23:47,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:23:47,903.903 INFO    ] No camera update needed
[2026-06-22 19:23:47,905.905 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:23:47,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:23:47,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:23:47,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:23:49,957.957 INFO    ] ================================================
[2026-06-22 19:23:49,972.972 INFO    ] Launching Daemon at Mon Jun 22 19:23:49 IST 2026
[2026-06-22 19:23:49,983.983 INFO    ] ================================================
[2026-06-22 19:23:50,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:23:50
[2026-06-22 19:23:51,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:23:51,407.407 INFO    ] Initializing speech engine...
[2026-06-22 19:23:51,416.416 INFO    ] 2026-06-22 19:23:51
[2026-06-22 19:23:51,661.661 INFO    ] 2026-06-22 19:23:51
[2026-06-22 19:23:51,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:23:51,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:23:51,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:23:52,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:23:52,035.035 INFO    ] time= 22/06/2026 19:23:52
[2026-06-22 19:23:52,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:23:52,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:23:52,214.214 INFO    ] No existing commands found in stream
[2026-06-22 19:23:57,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:23:57,241.241 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-22 19:23:59,246.246 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:23:59,248.248 INFO    ] Checking for system updates...
[2026-06-22 19:23:59,288.288 INFO    ] 200
[2026-06-22 19:23:59,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:23:59,344.344 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:23:59,346.346 INFO    ] No update needed
[2026-06-22 19:23:59,348.348 INFO    ] Checking for camera pi updates...
[2026-06-22 19:23:59,383.383 INFO    ] 200
[2026-06-22 19:23:59,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:23:59,427.427 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:23:59,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:23:59,510.510 INFO    ] No camera update needed
[2026-06-22 19:23:59,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:23:59,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:23:59,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:23:59,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:24:01,574.574 INFO    ] ================================================
[2026-06-22 19:24:01,598.598 INFO    ] Launching Daemon at Mon Jun 22 19:24:01 IST 2026
[2026-06-22 19:24:01,617.617 INFO    ] ================================================
[2026-06-22 19:24:02,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:24:02
[2026-06-22 19:24:02,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:24:03,278.278 INFO    ] Initializing speech engine...
[2026-06-22 19:24:03,288.288 INFO    ] 2026-06-22 19:24:03
[2026-06-22 19:24:03,565.565 INFO    ] 2026-06-22 19:24:03
[2026-06-22 19:24:03,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:24:03,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:24:03,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:24:03,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:24:03,929.929 INFO    ] time= 22/06/2026 19:24:03
[2026-06-22 19:24:03,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:24:03,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:24:04,054.054 INFO    ] Found 1 existing command(s) in stream
[2026-06-22 19:24:04,102.102 INFO    ] Checking historical command: ID=1782136438571-0
[2026-06-22 19:24:04,151.151 INFO    ] process_and_cleanup_command: msg_id=1782136438571-0
[2026-06-22 19:24:04,205.205 INFO    ] is_command_expired: timestamp=2026-06-22T13:54:00.837Z, expiry=30s
[2026-06-22 19:24:04,355.355 INFO    ] Command removed from stream: 1782136438571-0. returning for processing...
[2026-06-22 19:24:04,400.400 INFO    ] ***** get_valid_command
[2026-06-22 19:24:04,429.429 INFO    ] {'source': 'webapp', 'timestamp': '2026-06-22T13:54:00.837Z', 'timeout': '10', 'command': 'start-order', 'data': '{"request_id":"start-order-1782136440837-am7cl3op0","orderId":"TM06202507260622192253983","is_vending":false}'}
[2026-06-22 19:24:04,473.473 INFO    ] ***** Parsed command data: {'orderId': 'TM06202507260622192253983', 'request_id': 'start-order-1782136440837-am7cl3op0', 'is_vending': False}
[2026-06-22 19:24:04,528.528 INFO    ] Handling start order...
[2026-06-22 19:24:04,548.548 INFO    ] handle_start_order_command
[2026-06-22 19:24:04,638.638 INFO    ] _send_start_order_success: request_id=start-order-1782136440837-am7cl3op0, order_id=TM06202507260622192253983
[2026-06-22 19:24:04,704.704 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM06202507
[2026-06-22 19:24:04,768.768 INFO    ] [_send_start_order_success] Message added to stream with ID: 1782136444738-0
[2026-06-22 19:24:04,771.771 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-22 19:24:04,810.810 INFO    ] Checking for system updates...
[2026-06-22 19:24:04,931.931 INFO    ] 200
[2026-06-22 19:24:04,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:24:05,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:24:05,005.005 INFO    ] No update needed
[2026-06-22 19:24:05,008.008 INFO    ] Checking for camera pi updates...
[2026-06-22 19:24:05,073.073 INFO    ] 200
[2026-06-22 19:24:05,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:24:05,189.189 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:24:05,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:24:05,306.306 INFO    ] No camera update needed
[2026-06-22 19:24:05,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:24:05,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:24:05,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:24:05,339.339 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-22 19:24:05,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:24:07,392.392 INFO    ] ================================================
[2026-06-22 19:24:07,408.408 INFO    ] Launching Daemon at Mon Jun 22 19:24:07 IST 2026
[2026-06-22 19:24:07,419.419 INFO    ] ================================================
[2026-06-22 19:24:07,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:24:07
[2026-06-22 19:24:08,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:24:08,921.921 INFO    ] Initializing speech engine...
[2026-06-22 19:24:08,931.931 INFO    ] 2026-06-22 19:24:08
[2026-06-22 19:24:09,206.206 INFO    ] 2026-06-22 19:24:09
[2026-06-22 19:24:09,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:24:09,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:24:09,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:24:09,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:24:09,583.583 INFO    ] time= 22/06/2026 19:24:09
[2026-06-22 19:24:09,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:24:09,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:24:09,649.649 INFO    ] Found 2 existing command(s) in stream
[2026-06-22 19:24:09,677.677 INFO    ] Checking historical command: ID=1782136444738-0
[2026-06-22 19:24:09,725.725 INFO    ] process_and_cleanup_command: msg_id=1782136444738-0
[2026-06-22 19:24:09,747.747 INFO    ] is_command_expired: timestamp=2026-06-22T13:54:04.644696Z, expiry=30s
[2026-06-22 19:24:09,903.903 INFO    ] Command removed from stream: 1782136444738-0. returning for processing...
[2026-06-22 19:24:09,923.923 INFO    ] ***** get_valid_command
[2026-06-22 19:24:09,936.936 INFO    ] {'message': 'start-order success', 'message_type': 'command_response', 'status': 'success', 'metadata_request_id': 'start-order-1782136440837-am7cl3op0', 'imei': 'TM06202507', 'metadata_order_id': 'TM06202507260622192253983', 'timestamp': '2026-06-22T13:54:04.644696Z'}
[2026-06-22 19:24:09,962.962 INFO    ] Checking historical command: ID=1782136447875-0
[2026-06-22 19:24:09,969.969 INFO    ] process_and_cleanup_command: msg_id=1782136447875-0
[2026-06-22 19:24:09,978.978 INFO    ] is_command_expired: timestamp=2026-06-22T13:54:10.121Z, expiry=30s
[2026-06-22 19:24:10,057.057 INFO    ] Command removed from stream: 1782136447875-0. returning for processing...
[2026-06-22 19:24:10,095.095 INFO    ] ***** get_valid_command
[2026-06-22 19:24:10,145.145 INFO    ] {'source': 'webapp', 'timeout': '60', 'data': '{"request_id":"process-order-1782136450120-bo7gqyibl","orderId":"TM06202507260622192253983","is_vending":false,"accessCode":"80972909"}', 'command': 'process-order', 'timestamp': '2026-06-22T13:54:10.121Z'}
[2026-06-22 19:24:10,210.210 INFO    ] ***** Parsed command data: {'orderId': 'TM06202507260622192253983', 'request_id': 'process-order-1782136450120-bo7gqyibl', 'is_vending': False, 'accessCode': '80972909'}
[2026-06-22 19:24:10,231.231 INFO    ] Handling process order...
[2026-06-22 19:24:10,282.282 INFO    ] Processing process-order command...
[2026-06-22 19:24:10,368.368 INFO    ] 🔍 Lock file Order ID: TM06202507260622192253983, TS: 2026-06-22 19:24:04
[2026-06-22 19:24:10,423.423 INFO    ] ✅ Order lock valid for TM06202507260622192253983
[2026-06-22 19:24:10,460.460 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-22 19:24:10,470.470 INFO    ] processing access code 80972909 for order TM06202507260622192253983
[2026-06-22 19:24:10,474.474 INFO    ] 🔍 Lock file Order ID: TM06202507260622192253983, TS: 2026-06-22 19:24:04
[2026-06-22 19:24:10,478.478 INFO    ] ✅ Order lock valid for TM06202507260622192253983
[2026-06-22 19:24:10,481.481 INFO    ] 2026-06-22 19:24:10
[2026-06-22 19:24:10,603.603 INFO    ] 200
[2026-06-22 19:24:10,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:24:10,637.637 INFO    ] 80972909
[2026-06-22 19:24:10,688.688 INFO    ] 2026-06-22 19:24:10
[2026-06-22 19:24:10,691.691 INFO    ] session id :667322474
[2026-06-22 19:24:10,694.694 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=80972909&imei=TM06202507&session_id=667322474
[2026-06-22 19:24:12,020.020 INFO    ] 200
[2026-06-22 19:24:12,036.036 INFO    ] {"data": {"mobile": "9002967228", "order_id": "TM06202507260622192253983", "access_code": "80972909", "bill_amount": "20", "proposed_sku_json": [{"tray_id": "20", "qty": 1, "mrp": "10", "door_id": "1", "name": "Modern kitchens Salted Peanuts 25gm", "sku_total": 10, "image_url": "https://images.tinymart.in/product/4500673-8519.webp", "offer_desc": "", "unit_price": 10, "skuid": "4500673", "offer_id": ""}, {"tray_id": "12", "qty": 1, "mrp": "10", "door_id": "1", "name": "Modern kitchens Garlic Mixture 26gm", "sku_total": 10, "image_url": "https://images.tinymart.in/product/4500672-7226.webp", "offer_desc": "", "unit_price": 10, "skuid": "4500672", "offer_id": ""}], "invoice_bill": "20"}, "msg": "Order Data", "status": true, "rstatus": true}
[2026-06-22 19:24:12,048.048 INFO    ] 20
[2026-06-22 19:24:12,073.073 INFO    ] TM06202507260622192253983
[2026-06-22 19:24:12,108.108 INFO    ] 9002967228
[2026-06-22 19:24:12,174.174 INFO    ] 2026-06-22 19:24:12
[2026-06-22 19:24:12,184.184 INFO    ] Door Opening for user mobile ending with  seven two two eight 
[2026-06-22 19:24:12,191.191 INFO    ] Door Opening for user mobile ending with  seven two two eight 
[2026-06-22 19:24:12,223.223 INFO    ] 0917b75cbde1c64ca9d4bae869354110
[2026-06-22 19:24:12,231.231 INFO    ] 2026-06-22 19:24:12
[2026-06-22 19:24:12,255.255 INFO    ] playing audio file
[2026-06-22 19:24:12,279.279 INFO    ] 2026-06-22 19:24:12
[2026-06-22 19:24:12,284.284 INFO    ] 2026-06-22 19:24:12
[2026-06-22 19:24:12,294.294 INFO    ] publish_status: order_id=TM06202507260622192253983
[2026-06-22 19:24:12,303.303 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622192253983
[2026-06-22 19:24:12,418.418 INFO    ] [publish_status] Message added to stream with ID: 1782136452337-0
[2026-06-22 19:24:12,473.473 INFO    ] Published to order:TM06202507260622192253983: {'server_status': 'order-started', 'order_id': 'TM06202507260622192253983', 'server_response': '{"rstatus": true, "data": {"invoice_bill": "20", "mobile": "9002967228", "access_code": "80972909", "proposed_sku_json": [{"name": "Modern kitchens Salted Peanuts 25gm", "tray_id": "20", "offer_id": "", "sku_total": 10, "mrp": "10", "unit_price": 10, "skuid": "4500673", "image_url": "https://images.tinymart.in/product/4500673-8519.webp", "offer_desc": "", "door_id": "1", "qty": 1}, {"name": "Modern kitchens Garlic Mixture 26gm", "tray_id": "12", "offer_id": "", "sku_total": 10, "mrp": "10", "unit_price": 10, "skuid": "4500672", "image_url": "https://images.tinymart.in/product/4500672-7226.webp", "offer_desc": "", "door_id": "1", "qty": 1}], "bill_amount": "20", "order_id": "TM06202507260622192253983"}, "status": true, "msg": "Order Data"}', 'timestamp': '2026-06-22T13:54:12.286623Z'} (ID: 1782136452337-0)
[2026-06-22 19:24:12,916.916 INFO    ] {'server_status': 'order-started', 'order_id': 'TM06202507260622192253983', 'server_response': {'rstatus': True, 'data': {'invoice_bill': '20', 'mobile': '9002967228', 'access_code': '80972909', 'proposed_sku_json': [{'name': 'Modern kitchens Salted Peanuts 25gm', 'tray_id': '20', 'offer_id': '', 'sku_total': 10, 'mrp': '10', 'unit_price': 10, 'skuid': '4500673', 'image_url': 'https://images.tinymart.in/product/4500673-8519.webp', 'offer_desc': '', 'door_id': '1', 'qty': 1}, {'name': 'Modern kitchens Garlic Mixture 26gm', 'tray_id': '12', 'offer_id': '', 'sku_total': 10, 'mrp': '10', 'unit_price': 10, 'skuid': '4500672', 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'offer_desc': '', 'door_id': '1', 'qty': 1}], 'bill_amount': '20', 'order_id': 'TM06202507260622192253983'}, 'status': True, 'msg': 'Order Data'}}
[2026-06-22 19:24:12,918.918 INFO    ] 200
[2026-06-22 19:24:12,921.921 INFO    ] {"data":{"server_status":"order-started","order_id":"TM06202507260622192253983","server_response":{"rstatus":true,"data":{"invoice_bill":"20","mobile":"9002967228","access_code":"80972909","proposed_sku_json":[{"name":"Modern kitchens Salted Peanuts 25gm","tray_id":"20","offer_id":"","sku_total":10,"mrp":"10","unit_price":10,"skuid":"4500673","image_url":"https:\/\/images.tinymart.in\/product\/4500673-8519.webp","offer_desc":"","door_id":"1","qty":1},{"name":"Modern kitchens Garlic Mixture 26gm","tray_id":"12","offer_id":"","sku_total":10,"mrp":"10","unit_price":10,"skuid":"4500672","image_url":"https:\/\/images.tinymart.in\/product\/4500672-7226.webp","offer_desc":"","door_id":"1","qty":1}],"bill_amount":"20","order_id":"TM06202507260622192253983"},"status":true,"msg":"Order Data"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 19:24:12,924.924 INFO    ] {'data': {'server_status': 'order-started', 'order_id': 'TM06202507260622192253983', 'server_response': {'data': {'invoice_bill': '20', 'mobile': '9002967228', 'bill_amount': '20', 'proposed_sku_json': [{'name': 'Modern kitchens Salted Peanuts 25gm', 'tray_id': '20', 'offer_id': '', 'sku_total': 10, 'mrp': '10', 'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500673-8519.webp', 'skuid': '4500673', 'offer_desc': '', 'door_id': '1', 'qty': 1}, {'name': 'Modern kitchens Garlic Mixture 26gm', 'tray_id': '12', 'offer_id': '', 'sku_total': 10, 'mrp': '10', 'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'skuid': '4500672', 'offer_desc': '', 'door_id': '1', 'qty': 1}], 'access_code': '80972909', 'order_id': 'TM06202507260622192253983'}, 'rstatus': True, 'msg': 'Order Data', 'status': True}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-06-22 19:24:12,927.927 INFO    ] 2026-06-22 19:24:12
[2026-06-22 19:24:12,976.976 INFO    ] 200
[2026-06-22 19:24:12,979.979 INFO    ] True
[2026-06-22 19:24:13,169.169 INFO    ] 200
[2026-06-22 19:24:13,172.172 INFO    ] {"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": ""}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 19:24:13,176.176 INFO    ] {'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'rstatus': False, 'voiceNote': 'Please Wait', 'status': 'False', 'error': {'code': 20001, 'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-22 19:24:13,183.183 INFO    ] *** process_order ***
[2026-06-22 19:24:14,389.389 INFO    ] 200
[2026-06-22 19:24:14,391.391 INFO    ] {"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": ""}, "rstatus": true, "delay": 0, "status": "True", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 19:24:14,394.394 INFO    ] {'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'rstatus': True, 'voiceNote': 'Please Wait', 'status': 'True', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-22 19:24:14,396.396 INFO    ] *** process_order ***
[2026-06-22 19:24:14,399.399 INFO    ] publish_status: order_id=TM06202507260622192253983
[2026-06-22 19:24:14,402.402 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622192253983
[2026-06-22 19:24:14,476.476 INFO    ] [publish_status] Message added to stream with ID: 1782136454448-0
[2026-06-22 19:24:14,479.479 INFO    ] Published to order:TM06202507260622192253983: {'server_status': 'doorOpened', 'order_id': 'TM06202507260622192253983', 'server_response': '{"SectionStatus": {"SubHeader": "You can pull the door now.", "Header": " Your order is under process  ", "Note": "", "UI_Header": ""}, "rstatus": true, "voiceNote": "Door is open...", "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "SectionMain": {"Header": "Processing Order"}}'} (ID: 1782136454448-0)
[2026-06-22 19:24:15,518.518 INFO    ] 2026-06-22 19:24:15
[2026-06-22 19:24:15,521.521 INFO    ] publish_status: order_id=TM06202507260622192253983
[2026-06-22 19:24:15,524.524 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622192253983
[2026-06-22 19:24:15,596.596 INFO    ] [publish_status] Message added to stream with ID: 1782136455568-0
[2026-06-22 19:24:15,599.599 INFO    ] Published to order:TM06202507260622192253983: {'server_status': 'processOrder', 'order_id': 'TM06202507260622192253983', 'server_response': '{"SectionStatus": {"SubHeader": "Please wait while we process your order", "Note": "", "Header": " Your order is under process  ", "UI_Header": ""}, "rstatus": true, "voiceNote": "Please Wait", "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "SectionMain": {"Header": "Processing Order"}}', 'timestamp': '2026-06-22T13:54:15.519694Z'} (ID: 1782136455568-0)
[2026-06-22 19:24:15,694.694 INFO    ] {'server_status': 'processOrder', 'order_id': 'TM06202507260622192253983', 'server_response': {'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'rstatus': True, 'voiceNote': 'Please Wait', 'status': 'True', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}}}
[2026-06-22 19:24:15,697.697 INFO    ] 200
[2026-06-22 19:24:15,700.700 INFO    ] {"data":{"server_status":"processOrder","order_id":"TM06202507260622192253983","server_response":{"SectionStatus":{"SubHeader":"Please wait while we process your order","Note":"","Header":" Your order is under process  ","UI_Header":""},"rstatus":true,"voiceNote":"Please Wait","status":"true","SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"delay":0,"SectionMain":{"Header":"Processing Order"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 19:24:15,703.703 INFO    ] {'data': {'server_status': 'processOrder', 'order_id': 'TM06202507260622192253983', 'server_response': {'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': ''}, 'rstatus': True, 'voiceNote': 'Please Wait', 'status': 'true', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-06-22 19:24:15,706.706 INFO    ] 2026-06-22 19:24:15
[2026-06-22 19:24:15,709.709 INFO    ] None
[2026-06-22 19:24:15,712.712 INFO    ] Opening Door now
[2026-06-22 19:24:15,714.714 INFO    ] Opening Door now
[2026-06-22 19:24:15,717.717 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-22 19:24:15,720.720 INFO    ] 2026-06-22 19:24:15
[2026-06-22 19:24:15,722.722 INFO    ] playing audio file
[2026-06-22 19:24:15,739.739 INFO    ] 2026-06-22 19:24:15
[2026-06-22 19:24:15,742.742 INFO    ] 2026-06-22 19:24:15
[2026-06-22 19:24:18,841.841 INFO    ] 200
[2026-06-22 19:24:18,844.844 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Salted Peanuts 25gm"}, {"qty": 1, "name": "Modern kitchens Garlic Mixture 26gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Door 1 is open now"}
[2026-06-22 19:24:18,847.847 INFO    ] {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Door 1 is open now', 'status': 'False', 'error': {'code': 20001, 'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Modern kitchens Salted Peanuts 25gm', 'qty': 1}, {'name': 'Modern kitchens Garlic Mixture 26gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-22 19:24:21,950.950 INFO    ] 200
[2026-06-22 19:24:21,953.953 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Salted Peanuts 25gm"}, {"qty": 1, "name": "Modern kitchens Garlic Mixture 26gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 19:24:21,956.956 INFO    ] {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'status': 'False', 'error': {'code': 20001, 'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Modern kitchens Salted Peanuts 25gm', 'qty': 1}, {'name': 'Modern kitchens Garlic Mixture 26gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-22 19:24:25,021.021 INFO    ] 200
[2026-06-22 19:24:25,024.024 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Salted Peanuts 25gm"}, {"qty": 1, "name": "Modern kitchens Garlic Mixture 26gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 19:24:25,027.027 INFO    ] Please close door 1
[2026-06-22 19:24:25,029.029 INFO    ] Please close door 1
[2026-06-22 19:24:25,032.032 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-22 19:24:25,035.035 INFO    ] 2026-06-22 19:24:25
[2026-06-22 19:24:25,037.037 INFO    ] playing audio file
[2026-06-22 19:24:25,055.055 INFO    ] 2026-06-22 19:24:25
[2026-06-22 19:24:25,058.058 INFO    ] publish_status: order_id=TM06202507260622192253983
[2026-06-22 19:24:25,061.061 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622192253983
[2026-06-22 19:24:25,127.127 INFO    ] [publish_status] Message added to stream with ID: 1782136465098-0
[2026-06-22 19:24:25,130.130 INFO    ] Published to order:TM06202507260622192253983: {'server_status': 'OrderStatus', 'order_id': 'TM06202507260622192253983', 'server_response': '{"SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 1", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW"}, "rstatus": false, "voiceNote": "Please close door 1", "status": "False", "error": {"code": 20001, "data": {}, "tmessage": "In Progress", "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern kitchens Salted Peanuts 25gm", "qty": 1}, {"name": "Modern kitchens Garlic Mixture 26gm", "qty": 1}]}, "SectionMain": {"Header": "Door Open"}}', 'timestamp': '2026-06-22T13:54:25.056995Z'} (ID: 1782136465098-0)
[2026-06-22 19:24:27,038.038 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM06202507260622192253983', 'server_response': {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'status': 'False', 'error': {'code': 20001, 'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Modern kitchens Salted Peanuts 25gm', 'qty': 1}, {'name': 'Modern kitchens Garlic Mixture 26gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}}}
[2026-06-22 19:24:27,041.041 INFO    ] 200
[2026-06-22 19:24:27,044.044 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM06202507260622192253983","server_response":{"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products","Header":"Please Close Door 1","UI_Header":"DOOR 1\nIS \nOPEN \nNOW"},"rstatus":false,"voiceNote":"Please close door 1","status":"false","error":{"code":20001,"data":[],"tmessage":"In Progress","umessage":"In Progress"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"Modern kitchens Salted Peanuts 25gm","qty":1},{"name":"Modern kitchens Garlic Mixture 26gm","qty":1}]},"SectionMain":{"Header":"Door Open"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 19:24:27,048.048 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM06202507260622192253983', 'server_response': {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'status': 'false', 'error': {'code': 20001, 'data': [], 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Modern kitchens Salted Peanuts 25gm', 'qty': 1}, {'name': 'Modern kitchens Garlic Mixture 26gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-06-22 19:24:27,051.051 INFO    ] {'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'rstatus': False, 'voiceNote': 'Please close door 1', 'status': 'False', 'error': {'code': 20001, 'data': {}, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Modern kitchens Salted Peanuts 25gm', 'qty': 1}, {'name': 'Modern kitchens Garlic Mixture 26gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-22 19:24:30,085.085 INFO    ] 200
[2026-06-22 19:24:30,086.086 INFO    ] {"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"}, "rstatus": true, "delay": 100, "status": "True", "SectionMain": {"Header": "Door Closed"}, "voiceNote": "Transaction Completed"}
[2026-06-22 19:24:30,088.088 INFO    ] {'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'UI_Header': ''}, 'rstatus': True, 'voiceNote': 'Transaction Completed', 'status': 'True', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}}
[2026-06-22 19:24:30,090.090 INFO    ] 2026-06-22 19:24:30
[2026-06-22 19:24:30,092.092 INFO    ] Order Completed 
[2026-06-22 19:24:30,094.094 INFO    ] Order Completed 
[2026-06-22 19:24:30,098.098 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-22 19:24:30,101.101 INFO    ] 2026-06-22 19:24:30
[2026-06-22 19:24:30,104.104 INFO    ] playing audio file
[2026-06-22 19:24:30,124.124 INFO    ] 2026-06-22 19:24:30
[2026-06-22 19:24:30,128.128 INFO    ] {'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'UI_Header': ''}, 'rstatus': True, 'voiceNote': 'Transaction Completed', 'status': 'True', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}}
[2026-06-22 19:24:30,132.132 INFO    ] 2026-06-22 19:24:30
[2026-06-22 19:24:31,511.511 INFO    ] 200
[2026-06-22 19:24:31,515.515 INFO    ] {"skus": [{"tray_id": "12", "qty": 1, "mrp": "10", "door_id": "", "name": "Modern kitchens Garlic Mixture 26gm per peice", "sku_total": 10.0, "image_url": "https://images.tinymart.in/product/4500672-7226.webp", "unit_price": "10", "skuid": "4500672"}, {"tray_id": "20", "qty": 1, "mrp": "10", "door_id": "", "name": "Modern kitchens Salted Peanuts 25gm per peice", "sku_total": 10.0, "image_url": "https://images.tinymart.in/product/4500673-8519.webp", "unit_price": "10", "skuid": "4500673"}], "anomaly": 0, "rstatus": true, "orderId": "TM06202507260622192253983", "logic": "WBL", "total_amount": 20.0, "res": "True"}
[2026-06-22 19:24:31,520.520 INFO    ] {'orderId': 'TM06202507260622192253983', 'rstatus': True, 'skus': [{'name': 'Modern kitchens Garlic Mixture 26gm per peice', 'tray_id': '12', 'sku_total': 10.0, 'mrp': '10', 'unit_price': '10', 'skuid': '4500672', 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'door_id': '', 'qty': 1}, {'name': 'Modern kitchens Salted Peanuts 25gm per peice', 'tray_id': '20', 'sku_total': 10.0, 'mrp': '10', 'unit_price': '10', 'skuid': '4500673', 'image_url': 'https://images.tinymart.in/product/4500673-8519.webp', 'door_id': '', 'qty': 1}], 'anomaly': 0, 'logic': 'WBL', 'res': 'True', 'total_amount': 20.0}
[2026-06-22 19:24:31,524.524 INFO    ] {'orderId': 'TM06202507260622192253983', 'rstatus': True, 'skus': [{'name': 'Modern kitchens Garlic Mixture 26gm per peice', 'tray_id': '12', 'sku_total': 10.0, 'mrp': '10', 'unit_price': '10', 'skuid': '4500672', 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'door_id': '', 'qty': 1}, {'name': 'Modern kitchens Salted Peanuts 25gm per peice', 'tray_id': '20', 'sku_total': 10.0, 'mrp': '10', 'unit_price': '10', 'skuid': '4500673', 'image_url': 'https://images.tinymart.in/product/4500673-8519.webp', 'door_id': '', 'qty': 1}], 'anomaly': 0, 'logic': 'WBL', 'res': 'True', 'total_amount': 20.0}
[2026-06-22 19:24:31,528.528 INFO    ] 2026-06-22 19:24:31
[2026-06-22 19:24:31,531.531 INFO    ] 2026-06-22 19:24:31
[2026-06-22 19:24:31,534.534 INFO    ] 20
[2026-06-22 19:24:31,537.537 INFO    ] 2026-06-22 19:24:31
[2026-06-22 19:24:31,541.541 INFO    ] 2026-06-22 19:24:31
[2026-06-22 19:24:31,544.544 INFO    ]  Your Bill Amount is 20
[2026-06-22 19:24:31,547.547 INFO    ]  Your Bill Amount is 20
[2026-06-22 19:24:31,550.550 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-06-22 19:24:31,553.553 INFO    ] 2026-06-22 19:24:31
[2026-06-22 19:24:31,556.556 INFO    ] playing audio file
[2026-06-22 19:24:31,579.579 INFO    ] 2026-06-22 19:24:31
[2026-06-22 19:24:31,582.582 INFO    ] 2026-06-22 19:24:31
[2026-06-22 19:24:31,586.586 INFO    ] publish_status: order_id=TM06202507260622192253983
[2026-06-22 19:24:31,590.590 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622192253983
[2026-06-22 19:24:31,647.647 INFO    ] [publish_status] Message added to stream with ID: 1782136471611-0
[2026-06-22 19:24:31,650.650 INFO    ] Published to order:TM06202507260622192253983: {'server_status': 'invoiceOrder', 'order_id': 'TM06202507260622192253983', 'server_response': '{"orderId": "TM06202507260622192253983", "rstatus": true, "skus": [{"name": "Modern kitchens Garlic Mixture 26gm per peice", "tray_id": "12", "sku_total": 10.0, "mrp": "10", "unit_price": "10", "skuid": "4500672", "image_url": "https://images.tinymart.in/product/4500672-7226.webp", "door_id": "", "qty": 1}, {"name": "Modern kitchens Salted Peanuts 25gm per peice", "tray_id": "20", "sku_total": 10.0, "mrp": "10", "unit_price": "10", "skuid": "4500673", "image_url": "https://images.tinymart.in/product/4500673-8519.webp", "door_id": "", "qty": 1}], "anomaly": 0, "logic": "WBL", "res": "True", "total_amount": 20.0}', 'timestamp': '2026-06-22T13:54:31.584415Z'} (ID: 1782136471611-0)
[2026-06-22 19:24:31,757.757 INFO    ] {'server_status': 'invoiceOrder', 'order_id': 'TM06202507260622192253983', 'server_response': {'orderId': 'TM06202507260622192253983', 'rstatus': True, 'skus': [{'name': 'Modern kitchens Garlic Mixture 26gm per peice', 'tray_id': '12', 'sku_total': 10.0, 'mrp': '10', 'unit_price': '10', 'skuid': '4500672', 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'door_id': '', 'qty': 1}, {'name': 'Modern kitchens Salted Peanuts 25gm per peice', 'tray_id': '20', 'sku_total': 10.0, 'mrp': '10', 'unit_price': '10', 'skuid': '4500673', 'image_url': 'https://images.tinymart.in/product/4500673-8519.webp', 'door_id': '', 'qty': 1}], 'anomaly': 0, 'logic': 'WBL', 'res': 'True', 'total_amount': 20.0}}
[2026-06-22 19:24:31,760.760 INFO    ] 200
[2026-06-22 19:24:31,763.763 INFO    ] {"data":{"server_status":"invoiceOrder","order_id":"TM06202507260622192253983","server_response":{"orderId":"TM06202507260622192253983","rstatus":true,"skus":[{"name":"Modern kitchens Garlic Mixture 26gm per peice","tray_id":"12","sku_total":10,"mrp":"10","unit_price":"10","skuid":"4500672","image_url":"https:\/\/images.tinymart.in\/product\/4500672-7226.webp","door_id":"","qty":1},{"name":"Modern kitchens Salted Peanuts 25gm per peice","tray_id":"20","sku_total":10,"mrp":"10","unit_price":"10","skuid":"4500673","image_url":"https:\/\/images.tinymart.in\/product\/4500673-8519.webp","door_id":"","qty":1}],"anomaly":0,"logic":"WBL","res":"true","total_amount":20}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 19:24:31,766.766 INFO    ] {'data': {'server_status': 'invoiceOrder', 'order_id': 'TM06202507260622192253983', 'server_response': {'orderId': 'TM06202507260622192253983', 'rstatus': True, 'skus': [{'name': 'Modern kitchens Garlic Mixture 26gm per peice', 'tray_id': '12', 'sku_total': 10, 'mrp': '10', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'skuid': '4500672', 'door_id': '', 'qty': 1}, {'name': 'Modern kitchens Salted Peanuts 25gm per peice', 'tray_id': '20', 'sku_total': 10, 'mrp': '10', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500673-8519.webp', 'skuid': '4500673', 'door_id': '', 'qty': 1}], 'anomaly': 0, 'logic': 'WBL', 'res': 'true', 'total_amount': 20}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-06-22 19:24:31,770.770 INFO    ] {'data': {'server_status': 'invoiceOrder', 'order_id': 'TM06202507260622192253983', 'server_response': {'orderId': 'TM06202507260622192253983', 'rstatus': True, 'skus': [{'name': 'Modern kitchens Garlic Mixture 26gm per peice', 'tray_id': '12', 'sku_total': 10, 'mrp': '10', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500672-7226.webp', 'skuid': '4500672', 'door_id': '', 'qty': 1}, {'name': 'Modern kitchens Salted Peanuts 25gm per peice', 'tray_id': '20', 'sku_total': 10, 'mrp': '10', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500673-8519.webp', 'skuid': '4500673', 'door_id': '', 'qty': 1}], 'anomaly': 0, 'logic': 'WBL', 'res': 'true', 'total_amount': 20}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-06-22 19:24:31,773.773 INFO    ] 2026-06-22 19:24:31
[2026-06-22 19:24:33,968.968 INFO    ] 200
[2026-06-22 19:24:33,971.971 INFO    ] {"orders_data_synced": [], "order_items": [], "orders_data": [], "orders_synced": [], "tray_synced": ["TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983", "TM06202507260622192253983"], "order_items_synced": [], "orders": [], "status": true, "tray_sync": []}
[2026-06-22 19:24:33,974.974 INFO    ] 2026-06-22 19:24:33
[2026-06-22 19:24:34,100.100 INFO    ] 200
[2026-06-22 19:24:34,103.103 INFO    ] True
[2026-06-22 19:24:34,106.106 INFO    ] cleanup_start_order_file_after_processing: order_id=TM06202507260622192253983
[2026-06-22 19:24:34,109.109 INFO    ] start order file deleted
[2026-06-22 19:24:34,113.113 INFO    ] Checking for system updates...
[2026-06-22 19:24:34,154.154 INFO    ] 200
[2026-06-22 19:24:34,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:24:34,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:24:34,221.221 INFO    ] No update needed
[2026-06-22 19:24:34,224.224 INFO    ] Checking for camera pi updates...
[2026-06-22 19:24:34,262.262 INFO    ] 200
[2026-06-22 19:24:34,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:24:34,320.320 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:24:34,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:24:34,390.390 INFO    ] No camera update needed
[2026-06-22 19:24:34,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:24:34,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:24:34,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:24:34,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:24:36,447.447 INFO    ] ================================================
[2026-06-22 19:24:36,463.463 INFO    ] Launching Daemon at Mon Jun 22 19:24:36 IST 2026
[2026-06-22 19:24:36,474.474 INFO    ] ================================================
[2026-06-22 19:24:37,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:24:37
[2026-06-22 19:24:37,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:24:38,012.012 INFO    ] Initializing speech engine...
[2026-06-22 19:24:38,020.020 INFO    ] 2026-06-22 19:24:38
[2026-06-22 19:24:38,295.295 INFO    ] 2026-06-22 19:24:38
[2026-06-22 19:24:38,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:24:38,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:24:38,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:24:38,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:24:38,650.650 INFO    ] time= 22/06/2026 19:24:38
[2026-06-22 19:24:38,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:24:38,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:24:38,751.751 INFO    ] No existing commands found in stream
[2026-06-22 19:24:43,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:24:43,780.780 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-22 19:24:45,880.880 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:24:45,881.881 INFO    ] Checking for system updates...
[2026-06-22 19:24:45,903.903 INFO    ] 200
[2026-06-22 19:24:45,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:24:45,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:24:45,941.941 INFO    ] No update needed
[2026-06-22 19:24:45,944.944 INFO    ] Checking for camera pi updates...
[2026-06-22 19:24:45,981.981 INFO    ] 200
[2026-06-22 19:24:45,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:24:46,030.030 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:24:46,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:24:46,219.219 INFO    ] No camera update needed
[2026-06-22 19:24:46,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:24:46,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:24:46,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:24:46,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:24:48,278.278 INFO    ] ================================================
[2026-06-22 19:24:48,300.300 INFO    ] Launching Daemon at Mon Jun 22 19:24:48 IST 2026
[2026-06-22 19:24:48,311.311 INFO    ] ================================================
[2026-06-22 19:24:48,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:24:48
[2026-06-22 19:24:49,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:24:49,674.674 INFO    ] Initializing speech engine...
[2026-06-22 19:24:49,684.684 INFO    ] 2026-06-22 19:24:49
[2026-06-22 19:24:49,942.942 INFO    ] 2026-06-22 19:24:49
[2026-06-22 19:24:49,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:24:50,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:24:50,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:24:50,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:24:50,299.299 INFO    ] time= 22/06/2026 19:24:50
[2026-06-22 19:24:50,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:24:50,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:24:50,462.462 INFO    ] No existing commands found in stream
[2026-06-22 19:24:55,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:24:55,490.490 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-22 19:24:58,299.299 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:24:58,301.301 INFO    ] Checking for system updates...
[2026-06-22 19:24:58,354.354 INFO    ] 200
[2026-06-22 19:24:58,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:24:58,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:24:58,417.417 INFO    ] No update needed
[2026-06-22 19:24:58,419.419 INFO    ] Checking for camera pi updates...
[2026-06-22 19:24:58,457.457 INFO    ] 200
[2026-06-22 19:24:58,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:24:58,503.503 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:24:58,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:24:58,611.611 INFO    ] No camera update needed
[2026-06-22 19:24:58,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:24:58,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:24:58,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:24:58,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:25:00,669.669 INFO    ] ================================================
[2026-06-22 19:25:00,684.684 INFO    ] Launching Daemon at Mon Jun 22 19:25:00 IST 2026
[2026-06-22 19:25:00,695.695 INFO    ] ================================================
[2026-06-22 19:25:01,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:25:01
[2026-06-22 19:25:02,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:25:02,505.505 INFO    ] Initializing speech engine...
[2026-06-22 19:25:02,529.529 INFO    ] 2026-06-22 19:25:02
[2026-06-22 19:25:02,817.817 INFO    ] 2026-06-22 19:25:02
[2026-06-22 19:25:02,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:25:03,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:25:03,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:25:03,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:25:03,187.187 INFO    ] time= 22/06/2026 19:25:03
[2026-06-22 19:25:03,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:25:03,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:25:03,265.265 INFO    ] No existing commands found in stream
[2026-06-22 19:25:08,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:25:08,280.280 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-22 19:25:10,532.532 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:25:10,534.534 INFO    ] Checking for system updates...
[2026-06-22 19:25:10,575.575 INFO    ] 200
[2026-06-22 19:25:10,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:25:10,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:25:10,632.632 INFO    ] No update needed
[2026-06-22 19:25:10,634.634 INFO    ] Checking for camera pi updates...
[2026-06-22 19:25:10,668.668 INFO    ] 200
[2026-06-22 19:25:10,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:25:10,718.718 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:25:10,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:25:10,801.801 INFO    ] No camera update needed
[2026-06-22 19:25:10,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:25:10,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:25:10,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:25:10,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:25:12,857.857 INFO    ] ================================================
[2026-06-22 19:25:12,873.873 INFO    ] Launching Daemon at Mon Jun 22 19:25:12 IST 2026
[2026-06-22 19:25:12,883.883 INFO    ] ================================================
[2026-06-22 19:25:13,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:25:13
[2026-06-22 19:25:14,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:25:14,416.416 INFO    ] Initializing speech engine...
[2026-06-22 19:25:14,429.429 INFO    ] 2026-06-22 19:25:14
[2026-06-22 19:25:14,710.710 INFO    ] 2026-06-22 19:25:14
[2026-06-22 19:25:14,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:25:14,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:25:14,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:25:15,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:25:15,171.171 INFO    ] time= 22/06/2026 19:25:15
[2026-06-22 19:25:15,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:25:15,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:25:15,314.314 INFO    ] No existing commands found in stream
[2026-06-22 19:25:20,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:25:20,347.347 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-22 19:25:24,380.380 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:25:24,382.382 INFO    ] Checking for system updates...
[2026-06-22 19:25:24,420.420 INFO    ] 200
[2026-06-22 19:25:24,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:25:24,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:25:24,479.479 INFO    ] No update needed
[2026-06-22 19:25:24,482.482 INFO    ] Checking for camera pi updates...
[2026-06-22 19:25:24,517.517 INFO    ] 200
[2026-06-22 19:25:24,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:25:24,561.561 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:25:24,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:25:24,621.621 INFO    ] No camera update needed
[2026-06-22 19:25:24,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:25:24,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:25:24,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:25:24,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:25:26,680.680 INFO    ] ================================================
[2026-06-22 19:25:26,695.695 INFO    ] Launching Daemon at Mon Jun 22 19:25:26 IST 2026
[2026-06-22 19:25:26,706.706 INFO    ] ================================================
[2026-06-22 19:25:27,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:25:27
[2026-06-22 19:25:28,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:25:28,336.336 INFO    ] Initializing speech engine...
[2026-06-22 19:25:28,348.348 INFO    ] 2026-06-22 19:25:28
[2026-06-22 19:25:28,633.633 INFO    ] 2026-06-22 19:25:28
[2026-06-22 19:25:28,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:25:28,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:25:28,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:25:29,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:25:29,012.012 INFO    ] time= 22/06/2026 19:25:29
[2026-06-22 19:25:29,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:25:29,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:25:29,138.138 INFO    ] No existing commands found in stream
[2026-06-22 19:25:34,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:25:34,153.153 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-22 19:25:35,573.573 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:25:35,576.576 INFO    ] Checking for system updates...
[2026-06-22 19:25:35,612.612 INFO    ] 200
[2026-06-22 19:25:35,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:25:35,674.674 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:25:35,677.677 INFO    ] No update needed
[2026-06-22 19:25:35,679.679 INFO    ] Checking for camera pi updates...
[2026-06-22 19:25:35,700.700 INFO    ] 200
[2026-06-22 19:25:35,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:25:35,726.726 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:25:35,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:25:35,809.809 INFO    ] No camera update needed
[2026-06-22 19:25:35,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:25:35,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:25:35,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:25:35,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:25:37,865.865 INFO    ] ================================================
[2026-06-22 19:25:37,880.880 INFO    ] Launching Daemon at Mon Jun 22 19:25:37 IST 2026
[2026-06-22 19:25:37,891.891 INFO    ] ================================================
[2026-06-22 19:25:38,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:25:38
[2026-06-22 19:25:39,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:25:39,365.365 INFO    ] Initializing speech engine...
[2026-06-22 19:25:39,375.375 INFO    ] 2026-06-22 19:25:39
[2026-06-22 19:25:39,641.641 INFO    ] 2026-06-22 19:25:39
[2026-06-22 19:25:39,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:25:39,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:25:39,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:25:40,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:25:40,020.020 INFO    ] time= 22/06/2026 19:25:40
[2026-06-22 19:25:40,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:25:40,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:25:40,189.189 INFO    ] No existing commands found in stream
[2026-06-22 19:25:45,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:25:45,223.223 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-22 19:25:47,244.244 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:25:47,246.246 INFO    ] Checking for system updates...
[2026-06-22 19:25:47,267.267 INFO    ] 200
[2026-06-22 19:25:47,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:25:47,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:25:47,316.316 INFO    ] No update needed
[2026-06-22 19:25:47,319.319 INFO    ] Checking for camera pi updates...
[2026-06-22 19:25:47,354.354 INFO    ] 200
[2026-06-22 19:25:47,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:25:47,399.399 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:25:47,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:25:47,487.487 INFO    ] No camera update needed
[2026-06-22 19:25:47,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:25:47,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:25:47,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:25:47,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:25:49,545.545 INFO    ] ================================================
[2026-06-22 19:25:49,560.560 INFO    ] Launching Daemon at Mon Jun 22 19:25:49 IST 2026
[2026-06-22 19:25:49,571.571 INFO    ] ================================================
[2026-06-22 19:25:50,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:25:50
[2026-06-22 19:25:50,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:25:51,122.122 INFO    ] Initializing speech engine...
[2026-06-22 19:25:51,132.132 INFO    ] 2026-06-22 19:25:51
[2026-06-22 19:25:51,399.399 INFO    ] 2026-06-22 19:25:51
[2026-06-22 19:25:51,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:25:51,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:25:51,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:25:51,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:25:51,783.783 INFO    ] time= 22/06/2026 19:25:51
[2026-06-22 19:25:51,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:25:51,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:25:51,970.970 INFO    ] No existing commands found in stream
[2026-06-22 19:25:56,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:25:57,000.000 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-22 19:26:00,719.719 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:26:00,722.722 INFO    ] Checking for system updates...
[2026-06-22 19:26:00,758.758 INFO    ] 200
[2026-06-22 19:26:00,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:26:00,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:26:00,815.815 INFO    ] No update needed
[2026-06-22 19:26:00,818.818 INFO    ] Checking for camera pi updates...
[2026-06-22 19:26:00,852.852 INFO    ] 200
[2026-06-22 19:26:00,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:26:00,896.896 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:26:00,977.977 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:26:00,980.980 INFO    ] No camera update needed
[2026-06-22 19:26:00,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:26:00,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:26:00,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:26:00,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:26:03,043.043 INFO    ] ================================================
[2026-06-22 19:26:03,058.058 INFO    ] Launching Daemon at Mon Jun 22 19:26:03 IST 2026
[2026-06-22 19:26:03,071.071 INFO    ] ================================================
[2026-06-22 19:26:03,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:26:03
[2026-06-22 19:26:04,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:26:04,545.545 INFO    ] Initializing speech engine...
[2026-06-22 19:26:04,560.560 INFO    ] 2026-06-22 19:26:04
[2026-06-22 19:26:04,828.828 INFO    ] 2026-06-22 19:26:04
[2026-06-22 19:26:04,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:26:05,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:26:05,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:26:05,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:26:05,184.184 INFO    ] time= 22/06/2026 19:26:05
[2026-06-22 19:26:05,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:26:05,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:26:05,286.286 INFO    ] No existing commands found in stream
[2026-06-22 19:26:10,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:26:10,304.304 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-22 19:26:11,792.792 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:26:11,795.795 INFO    ] Checking for system updates...
[2026-06-22 19:26:11,834.834 INFO    ] 200
[2026-06-22 19:26:11,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:26:11,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:26:11,892.892 INFO    ] No update needed
[2026-06-22 19:26:11,894.894 INFO    ] Checking for camera pi updates...
[2026-06-22 19:26:11,932.932 INFO    ] 200
[2026-06-22 19:26:11,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:26:11,974.974 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:26:12,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:26:12,053.053 INFO    ] No camera update needed
[2026-06-22 19:26:12,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:26:12,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:26:12,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:26:12,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:26:14,109.109 INFO    ] ================================================
[2026-06-22 19:26:14,126.126 INFO    ] Launching Daemon at Mon Jun 22 19:26:14 IST 2026
[2026-06-22 19:26:14,136.136 INFO    ] ================================================
[2026-06-22 19:26:14,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:26:14
[2026-06-22 19:26:15,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:26:15,773.773 INFO    ] Initializing speech engine...
[2026-06-22 19:26:15,781.781 INFO    ] 2026-06-22 19:26:15
[2026-06-22 19:26:16,096.096 INFO    ] 2026-06-22 19:26:16
[2026-06-22 19:26:16,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:26:16,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:26:16,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:26:16,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:26:16,575.575 INFO    ] time= 22/06/2026 19:26:16
[2026-06-22 19:26:16,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:26:16,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:26:16,729.729 INFO    ] No existing commands found in stream
[2026-06-22 19:26:21,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:26:21,758.758 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-22 19:26:23,884.884 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:26:23,887.887 INFO    ] Checking for system updates...
[2026-06-22 19:26:23,928.928 INFO    ] 200
[2026-06-22 19:26:23,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:26:23,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:26:23,988.988 INFO    ] No update needed
[2026-06-22 19:26:23,991.991 INFO    ] Checking for camera pi updates...
[2026-06-22 19:26:24,025.025 INFO    ] 200
[2026-06-22 19:26:24,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:26:24,076.076 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:26:24,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:26:24,163.163 INFO    ] No camera update needed
[2026-06-22 19:26:24,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:26:24,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:26:24,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:26:24,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:26:26,224.224 INFO    ] ================================================
[2026-06-22 19:26:26,240.240 INFO    ] Launching Daemon at Mon Jun 22 19:26:26 IST 2026
[2026-06-22 19:26:26,251.251 INFO    ] ================================================
[2026-06-22 19:26:26,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:26:26
[2026-06-22 19:26:27,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:26:27,663.663 INFO    ] Initializing speech engine...
[2026-06-22 19:26:27,686.686 INFO    ] 2026-06-22 19:26:27
[2026-06-22 19:26:27,954.954 INFO    ] 2026-06-22 19:26:27
[2026-06-22 19:26:27,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:26:29,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:26:29,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:26:29,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:26:29,950.950 INFO    ] time= 22/06/2026 19:26:29
[2026-06-22 19:26:29,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:26:29,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:26:30,034.034 INFO    ] No existing commands found in stream
[2026-06-22 19:26:35,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:26:35,048.048 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-22 19:26:36,986.986 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:26:36,989.989 INFO    ] Checking for system updates...
[2026-06-22 19:26:37,026.026 INFO    ] 200
[2026-06-22 19:26:37,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:26:37,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:26:37,086.086 INFO    ] No update needed
[2026-06-22 19:26:37,089.089 INFO    ] Checking for camera pi updates...
[2026-06-22 19:26:37,124.124 INFO    ] 200
[2026-06-22 19:26:37,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:26:37,169.169 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:26:37,265.265 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:26:37,267.267 INFO    ] No camera update needed
[2026-06-22 19:26:37,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:26:37,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:26:37,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:26:37,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:26:39,329.329 INFO    ] ================================================
[2026-06-22 19:26:39,345.345 INFO    ] Launching Daemon at Mon Jun 22 19:26:39 IST 2026
[2026-06-22 19:26:39,356.356 INFO    ] ================================================
[2026-06-22 19:26:40,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:26:40
[2026-06-22 19:26:40,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:26:41,013.013 INFO    ] Initializing speech engine...
[2026-06-22 19:26:41,026.026 INFO    ] 2026-06-22 19:26:41
[2026-06-22 19:26:41,338.338 INFO    ] 2026-06-22 19:26:41
[2026-06-22 19:26:41,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:26:41,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:26:41,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:26:41,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:26:41,843.843 INFO    ] time= 22/06/2026 19:26:41
[2026-06-22 19:26:41,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:26:41,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:26:42,002.002 INFO    ] No existing commands found in stream
[2026-06-22 19:26:47,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:26:47,028.028 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-22 19:26:48,590.590 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:26:48,593.593 INFO    ] Checking for system updates...
[2026-06-22 19:26:48,631.631 INFO    ] 200
[2026-06-22 19:26:48,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:26:48,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:26:48,700.700 INFO    ] No update needed
[2026-06-22 19:26:48,705.705 INFO    ] Checking for camera pi updates...
[2026-06-22 19:26:48,744.744 INFO    ] 200
[2026-06-22 19:26:48,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:26:48,792.792 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:26:48,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:26:48,999.999 INFO    ] No camera update needed
[2026-06-22 19:26:49,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:26:49,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:26:49,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:26:49,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:26:51,055.055 INFO    ] ================================================
[2026-06-22 19:26:51,071.071 INFO    ] Launching Daemon at Mon Jun 22 19:26:51 IST 2026
[2026-06-22 19:26:51,083.083 INFO    ] ================================================
[2026-06-22 19:26:51,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:26:51
[2026-06-22 19:26:52,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:26:52,479.479 INFO    ] Initializing speech engine...
[2026-06-22 19:26:52,498.498 INFO    ] 2026-06-22 19:26:52
[2026-06-22 19:26:52,745.745 INFO    ] 2026-06-22 19:26:52
[2026-06-22 19:26:52,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:26:53,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:26:53,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:26:53,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:26:53,216.216 INFO    ] time= 22/06/2026 19:26:53
[2026-06-22 19:26:53,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:26:53,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:26:53,363.363 INFO    ] No existing commands found in stream
[2026-06-22 19:26:58,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:26:58,378.378 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-22 19:27:01,821.821 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:27:01,824.824 INFO    ] Checking for system updates...
[2026-06-22 19:27:01,863.863 INFO    ] 200
[2026-06-22 19:27:01,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:27:01,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:27:01,941.941 INFO    ] No update needed
[2026-06-22 19:27:01,944.944 INFO    ] Checking for camera pi updates...
[2026-06-22 19:27:01,984.984 INFO    ] 200
[2026-06-22 19:27:01,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:27:02,043.043 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:27:02,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:27:02,133.133 INFO    ] No camera update needed
[2026-06-22 19:27:02,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:27:02,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:27:02,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:27:02,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:27:04,199.199 INFO    ] ================================================
[2026-06-22 19:27:04,214.214 INFO    ] Launching Daemon at Mon Jun 22 19:27:04 IST 2026
[2026-06-22 19:27:04,226.226 INFO    ] ================================================
[2026-06-22 19:27:04,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:27:04
[2026-06-22 19:27:05,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:27:05,645.645 INFO    ] Initializing speech engine...
[2026-06-22 19:27:05,657.657 INFO    ] 2026-06-22 19:27:05
[2026-06-22 19:27:05,924.924 INFO    ] 2026-06-22 19:27:05
[2026-06-22 19:27:05,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:27:06,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:27:06,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:27:06,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:27:06,295.295 INFO    ] time= 22/06/2026 19:27:06
[2026-06-22 19:27:06,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:27:06,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:27:06,400.400 INFO    ] No existing commands found in stream
[2026-06-22 19:27:11,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:27:11,417.417 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-22 19:27:13,375.375 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:27:13,377.377 INFO    ] Checking for system updates...
[2026-06-22 19:27:13,413.413 INFO    ] 200
[2026-06-22 19:27:13,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:27:13,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:27:13,471.471 INFO    ] No update needed
[2026-06-22 19:27:13,474.474 INFO    ] Checking for camera pi updates...
[2026-06-22 19:27:13,507.507 INFO    ] 200
[2026-06-22 19:27:13,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:27:13,550.550 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:27:13,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:27:13,631.631 INFO    ] No camera update needed
[2026-06-22 19:27:13,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:27:13,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:27:13,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:27:13,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:27:15,687.687 INFO    ] ================================================
[2026-06-22 19:27:15,703.703 INFO    ] Launching Daemon at Mon Jun 22 19:27:15 IST 2026
[2026-06-22 19:27:15,714.714 INFO    ] ================================================
[2026-06-22 19:27:16,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:27:16
[2026-06-22 19:27:16,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:27:17,136.136 INFO    ] Initializing speech engine...
[2026-06-22 19:27:17,141.141 INFO    ] 2026-06-22 19:27:17
[2026-06-22 19:27:17,402.402 INFO    ] 2026-06-22 19:27:17
[2026-06-22 19:27:17,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:27:17,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:27:17,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:27:17,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:27:17,867.867 INFO    ] time= 22/06/2026 19:27:17
[2026-06-22 19:27:17,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:27:17,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:27:18,011.011 INFO    ] No existing commands found in stream
[2026-06-22 19:27:23,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:27:23,026.026 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-22 19:27:26,036.036 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:27:26,039.039 INFO    ] Checking for system updates...
[2026-06-22 19:27:26,070.070 INFO    ] 200
[2026-06-22 19:27:26,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:27:26,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:27:26,106.106 INFO    ] No update needed
[2026-06-22 19:27:26,107.107 INFO    ] Checking for camera pi updates...
[2026-06-22 19:27:26,128.128 INFO    ] 200
[2026-06-22 19:27:26,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:27:26,155.155 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:27:26,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:27:26,235.235 INFO    ] No camera update needed
[2026-06-22 19:27:26,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:27:26,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:27:26,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:27:26,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:27:28,293.293 INFO    ] ================================================
[2026-06-22 19:27:28,309.309 INFO    ] Launching Daemon at Mon Jun 22 19:27:28 IST 2026
[2026-06-22 19:27:28,320.320 INFO    ] ================================================
[2026-06-22 19:27:28,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:27:28
[2026-06-22 19:27:29,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:27:29,730.730 INFO    ] Initializing speech engine...
[2026-06-22 19:27:29,735.735 INFO    ] 2026-06-22 19:27:29
[2026-06-22 19:27:30,036.036 INFO    ] 2026-06-22 19:27:29
[2026-06-22 19:27:30,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:27:31,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:27:31,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:27:31,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:27:31,452.452 INFO    ] time= 22/06/2026 19:27:31
[2026-06-22 19:27:31,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:27:31,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:27:31,559.559 INFO    ] No existing commands found in stream
[2026-06-22 19:27:36,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:27:36,592.592 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-22 19:27:38,944.944 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:27:38,947.947 INFO    ] Checking for system updates...
[2026-06-22 19:27:38,984.984 INFO    ] 200
[2026-06-22 19:27:38,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:27:39,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:27:39,043.043 INFO    ] No update needed
[2026-06-22 19:27:39,046.046 INFO    ] Checking for camera pi updates...
[2026-06-22 19:27:39,095.095 INFO    ] 200
[2026-06-22 19:27:39,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:27:39,138.138 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:27:39,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:27:39,233.233 INFO    ] No camera update needed
[2026-06-22 19:27:39,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:27:39,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:27:39,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:27:39,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:27:41,289.289 INFO    ] ================================================
[2026-06-22 19:27:41,304.304 INFO    ] Launching Daemon at Mon Jun 22 19:27:41 IST 2026
[2026-06-22 19:27:41,315.315 INFO    ] ================================================
[2026-06-22 19:27:41,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:27:41
[2026-06-22 19:27:42,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:27:42,580.580 INFO    ] Initializing speech engine...
[2026-06-22 19:27:42,587.587 INFO    ] 2026-06-22 19:27:42
[2026-06-22 19:27:42,884.884 INFO    ] 2026-06-22 19:27:42
[2026-06-22 19:27:42,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:27:43,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:27:43,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:27:43,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:27:43,265.265 INFO    ] time= 22/06/2026 19:27:43
[2026-06-22 19:27:43,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:27:43,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:27:43,391.391 INFO    ] No existing commands found in stream
[2026-06-22 19:27:48,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:27:48,406.406 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-22 19:27:51,334.334 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:27:51,335.335 INFO    ] Checking for system updates...
[2026-06-22 19:27:51,356.356 INFO    ] 200
[2026-06-22 19:27:51,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:27:51,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:27:51,393.393 INFO    ] No update needed
[2026-06-22 19:27:51,395.395 INFO    ] Checking for camera pi updates...
[2026-06-22 19:27:51,430.430 INFO    ] 200
[2026-06-22 19:27:51,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:27:51,474.474 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:27:51,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:27:51,562.562 INFO    ] No camera update needed
[2026-06-22 19:27:51,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:27:51,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:27:51,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:27:51,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:27:53,617.617 INFO    ] ================================================
[2026-06-22 19:27:53,632.632 INFO    ] Launching Daemon at Mon Jun 22 19:27:53 IST 2026
[2026-06-22 19:27:53,643.643 INFO    ] ================================================
[2026-06-22 19:27:54,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:27:54
[2026-06-22 19:27:54,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:27:54,994.994 INFO    ] Initializing speech engine...
[2026-06-22 19:27:55,000.000 INFO    ] 2026-06-22 19:27:54
[2026-06-22 19:27:55,296.296 INFO    ] 2026-06-22 19:27:55
[2026-06-22 19:27:55,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:27:55,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:27:55,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:27:55,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:27:55,674.674 INFO    ] time= 22/06/2026 19:27:55
[2026-06-22 19:27:55,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:27:55,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:27:55,802.802 INFO    ] No existing commands found in stream
[2026-06-22 19:28:00,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:28:00,818.818 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-22 19:28:02,507.507 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:28:02,510.510 INFO    ] Checking for system updates...
[2026-06-22 19:28:02,554.554 INFO    ] 200
[2026-06-22 19:28:02,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:28:02,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:28:02,635.635 INFO    ] No update needed
[2026-06-22 19:28:02,639.639 INFO    ] Checking for camera pi updates...
[2026-06-22 19:28:02,700.700 INFO    ] 200
[2026-06-22 19:28:02,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:28:02,762.762 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:28:02,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:28:02,829.829 INFO    ] No camera update needed
[2026-06-22 19:28:02,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:28:02,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:28:02,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:28:02,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:28:04,892.892 INFO    ] ================================================
[2026-06-22 19:28:04,907.907 INFO    ] Launching Daemon at Mon Jun 22 19:28:04 IST 2026
[2026-06-22 19:28:04,917.917 INFO    ] ================================================
[2026-06-22 19:28:05,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:28:05
[2026-06-22 19:28:06,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:28:06,290.290 INFO    ] Initializing speech engine...
[2026-06-22 19:28:06,318.318 INFO    ] 2026-06-22 19:28:06
[2026-06-22 19:28:06,574.574 INFO    ] 2026-06-22 19:28:06
[2026-06-22 19:28:06,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:28:06,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:28:06,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:28:07,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:28:07,055.055 INFO    ] time= 22/06/2026 19:28:07
[2026-06-22 19:28:07,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:28:07,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:28:07,202.202 INFO    ] No existing commands found in stream
[2026-06-22 19:28:12,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:28:12,216.216 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-22 19:28:14,185.185 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:28:14,187.187 INFO    ] Checking for system updates...
[2026-06-22 19:28:14,227.227 INFO    ] 200
[2026-06-22 19:28:14,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:28:14,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:28:14,299.299 INFO    ] No update needed
[2026-06-22 19:28:14,302.302 INFO    ] Checking for camera pi updates...
[2026-06-22 19:28:14,336.336 INFO    ] 200
[2026-06-22 19:28:14,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:28:14,378.378 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:28:14,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:28:14,465.465 INFO    ] No camera update needed
[2026-06-22 19:28:14,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:28:14,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:28:14,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:28:14,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:28:16,521.521 INFO    ] ================================================
[2026-06-22 19:28:16,536.536 INFO    ] Launching Daemon at Mon Jun 22 19:28:16 IST 2026
[2026-06-22 19:28:16,546.546 INFO    ] ================================================
[2026-06-22 19:28:17,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:28:17
[2026-06-22 19:28:17,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:28:17,847.847 INFO    ] Initializing speech engine...
[2026-06-22 19:28:17,856.856 INFO    ] 2026-06-22 19:28:17
[2026-06-22 19:28:18,115.115 INFO    ] 2026-06-22 19:28:18
[2026-06-22 19:28:18,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:28:18,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:28:18,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:28:18,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:28:18,580.580 INFO    ] time= 22/06/2026 19:28:18
[2026-06-22 19:28:18,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:28:18,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:28:18,780.780 INFO    ] No existing commands found in stream
[2026-06-22 19:28:23,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:28:23,809.809 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-22 19:28:24,436.436 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:28:24,439.439 INFO    ] Checking for system updates...
[2026-06-22 19:28:24,476.476 INFO    ] 200
[2026-06-22 19:28:24,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:28:24,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:28:24,534.534 INFO    ] No update needed
[2026-06-22 19:28:24,536.536 INFO    ] Checking for camera pi updates...
[2026-06-22 19:28:24,570.570 INFO    ] 200
[2026-06-22 19:28:24,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:28:24,614.614 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:28:24,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:28:24,695.695 INFO    ] No camera update needed
[2026-06-22 19:28:24,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:28:24,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:28:24,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:28:24,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:28:26,752.752 INFO    ] ================================================
[2026-06-22 19:28:26,767.767 INFO    ] Launching Daemon at Mon Jun 22 19:28:26 IST 2026
[2026-06-22 19:28:26,778.778 INFO    ] ================================================
[2026-06-22 19:28:27,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:28:27
[2026-06-22 19:28:27,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:28:28,100.100 INFO    ] Initializing speech engine...
[2026-06-22 19:28:28,106.106 INFO    ] 2026-06-22 19:28:28
[2026-06-22 19:28:28,395.395 INFO    ] 2026-06-22 19:28:28
[2026-06-22 19:28:28,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:28:31,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:28:31,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:28:32,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:28:32,010.010 INFO    ] time= 22/06/2026 19:28:32
[2026-06-22 19:28:32,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:28:32,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:28:32,065.065 INFO    ] No existing commands found in stream
[2026-06-22 19:28:37,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:28:37,077.077 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-22 19:28:39,888.888 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:28:39,890.890 INFO    ] Checking for system updates...
[2026-06-22 19:28:39,929.929 INFO    ] 200
[2026-06-22 19:28:39,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:28:39,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:28:39,992.992 INFO    ] No update needed
[2026-06-22 19:28:39,995.995 INFO    ] Checking for camera pi updates...
[2026-06-22 19:28:40,031.031 INFO    ] 200
[2026-06-22 19:28:40,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:28:40,078.078 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:28:40,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:28:40,161.161 INFO    ] No camera update needed
[2026-06-22 19:28:40,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:28:40,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:28:40,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:28:40,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:28:42,216.216 INFO    ] ================================================
[2026-06-22 19:28:42,231.231 INFO    ] Launching Daemon at Mon Jun 22 19:28:42 IST 2026
[2026-06-22 19:28:42,242.242 INFO    ] ================================================
[2026-06-22 19:28:42,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:28:42
[2026-06-22 19:28:43,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:28:43,811.811 INFO    ] Initializing speech engine...
[2026-06-22 19:28:43,820.820 INFO    ] 2026-06-22 19:28:43
[2026-06-22 19:28:44,067.067 INFO    ] 2026-06-22 19:28:44
[2026-06-22 19:28:44,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:28:44,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:28:44,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:28:44,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:28:44,405.405 INFO    ] time= 22/06/2026 19:28:44
[2026-06-22 19:28:44,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:28:44,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:28:44,518.518 INFO    ] No existing commands found in stream
[2026-06-22 19:28:49,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:28:49,533.533 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-22 19:28:51,742.742 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:28:51,744.744 INFO    ] Checking for system updates...
[2026-06-22 19:28:51,781.781 INFO    ] 200
[2026-06-22 19:28:51,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:28:51,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:28:51,843.843 INFO    ] No update needed
[2026-06-22 19:28:51,846.846 INFO    ] Checking for camera pi updates...
[2026-06-22 19:28:51,882.882 INFO    ] 200
[2026-06-22 19:28:51,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:28:51,926.926 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:28:52,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:28:52,106.106 INFO    ] No camera update needed
[2026-06-22 19:28:52,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:28:52,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:28:52,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:28:52,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:28:54,161.161 INFO    ] ================================================
[2026-06-22 19:28:54,176.176 INFO    ] Launching Daemon at Mon Jun 22 19:28:54 IST 2026
[2026-06-22 19:28:54,187.187 INFO    ] ================================================
[2026-06-22 19:28:54,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:28:54
[2026-06-22 19:28:55,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:28:55,617.617 INFO    ] Initializing speech engine...
[2026-06-22 19:28:55,623.623 INFO    ] 2026-06-22 19:28:55
[2026-06-22 19:28:55,901.901 INFO    ] 2026-06-22 19:28:55
[2026-06-22 19:28:55,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:28:56,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:28:56,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:28:56,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:28:56,262.262 INFO    ] time= 22/06/2026 19:28:56
[2026-06-22 19:28:56,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:28:56,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:28:56,385.385 INFO    ] No existing commands found in stream
[2026-06-22 19:29:01,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:29:01,401.401 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-22 19:29:03,256.256 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:29:03,259.259 INFO    ] Checking for system updates...
[2026-06-22 19:29:03,300.300 INFO    ] 200
[2026-06-22 19:29:03,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:29:03,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:29:03,357.357 INFO    ] No update needed
[2026-06-22 19:29:03,359.359 INFO    ] Checking for camera pi updates...
[2026-06-22 19:29:03,393.393 INFO    ] 200
[2026-06-22 19:29:03,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:29:03,436.436 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:29:03,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:29:03,526.526 INFO    ] No camera update needed
[2026-06-22 19:29:03,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:29:03,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:29:03,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:29:03,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:29:05,582.582 INFO    ] ================================================
[2026-06-22 19:29:05,597.597 INFO    ] Launching Daemon at Mon Jun 22 19:29:05 IST 2026
[2026-06-22 19:29:05,608.608 INFO    ] ================================================
[2026-06-22 19:29:06,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:29:06
[2026-06-22 19:29:06,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:29:07,092.092 INFO    ] Initializing speech engine...
[2026-06-22 19:29:07,101.101 INFO    ] 2026-06-22 19:29:07
[2026-06-22 19:29:07,393.393 INFO    ] 2026-06-22 19:29:07
[2026-06-22 19:29:07,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:29:07,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:29:07,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:29:07,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:29:07,772.772 INFO    ] time= 22/06/2026 19:29:07
[2026-06-22 19:29:07,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:29:07,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:29:07,895.895 INFO    ] No existing commands found in stream
[2026-06-22 19:29:12,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:29:12,910.910 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-22 19:29:15,435.435 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:29:15,437.437 INFO    ] Checking for system updates...
[2026-06-22 19:29:15,476.476 INFO    ] 200
[2026-06-22 19:29:15,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:29:15,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:29:15,539.539 INFO    ] No update needed
[2026-06-22 19:29:15,542.542 INFO    ] Checking for camera pi updates...
[2026-06-22 19:29:15,579.579 INFO    ] 200
[2026-06-22 19:29:15,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:29:15,623.623 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:29:15,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:29:15,721.721 INFO    ] No camera update needed
[2026-06-22 19:29:15,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:29:15,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:29:15,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:29:15,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:29:17,775.775 INFO    ] ================================================
[2026-06-22 19:29:17,791.791 INFO    ] Launching Daemon at Mon Jun 22 19:29:17 IST 2026
[2026-06-22 19:29:17,801.801 INFO    ] ================================================
[2026-06-22 19:29:18,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:29:18
[2026-06-22 19:29:18,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:29:19,177.177 INFO    ] Initializing speech engine...
[2026-06-22 19:29:19,187.187 INFO    ] 2026-06-22 19:29:19
[2026-06-22 19:29:19,438.438 INFO    ] 2026-06-22 19:29:19
[2026-06-22 19:29:19,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:29:19,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:29:19,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:29:19,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:29:19,814.814 INFO    ] time= 22/06/2026 19:29:19
[2026-06-22 19:29:19,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:29:19,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:29:19,927.927 INFO    ] No existing commands found in stream
[2026-06-22 19:29:24,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:29:24,939.939 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-22 19:29:26,498.498 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:29:26,501.501 INFO    ] Checking for system updates...
[2026-06-22 19:29:26,540.540 INFO    ] 200
[2026-06-22 19:29:26,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:29:26,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:29:26,604.604 INFO    ] No update needed
[2026-06-22 19:29:26,606.606 INFO    ] Checking for camera pi updates...
[2026-06-22 19:29:26,641.641 INFO    ] 200
[2026-06-22 19:29:26,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:29:26,684.684 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:29:26,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:29:26,767.767 INFO    ] No camera update needed
[2026-06-22 19:29:26,769.769 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:29:26,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:29:26,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:29:26,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:29:28,821.821 INFO    ] ================================================
[2026-06-22 19:29:28,837.837 INFO    ] Launching Daemon at Mon Jun 22 19:29:28 IST 2026
[2026-06-22 19:29:28,849.849 INFO    ] ================================================
[2026-06-22 19:29:29,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:29:29
[2026-06-22 19:29:29,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:29:30,259.259 INFO    ] Initializing speech engine...
[2026-06-22 19:29:30,269.269 INFO    ] 2026-06-22 19:29:30
[2026-06-22 19:29:30,514.514 INFO    ] 2026-06-22 19:29:30
[2026-06-22 19:29:30,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:29:32,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:29:32,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:29:33,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:29:33,112.112 INFO    ] time= 22/06/2026 19:29:33
[2026-06-22 19:29:33,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:29:33,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:29:33,200.200 INFO    ] No existing commands found in stream
[2026-06-22 19:29:38,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:29:38,215.215 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-22 19:29:39,233.233 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:29:39,235.235 INFO    ] Checking for system updates...
[2026-06-22 19:29:39,256.256 INFO    ] 200
[2026-06-22 19:29:39,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:29:39,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:29:39,288.288 INFO    ] No update needed
[2026-06-22 19:29:39,290.290 INFO    ] Checking for camera pi updates...
[2026-06-22 19:29:39,309.309 INFO    ] 200
[2026-06-22 19:29:39,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:29:39,341.341 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:29:39,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:29:39,428.428 INFO    ] No camera update needed
[2026-06-22 19:29:39,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:29:39,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:29:39,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:29:39,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:29:41,487.487 INFO    ] ================================================
[2026-06-22 19:29:41,502.502 INFO    ] Launching Daemon at Mon Jun 22 19:29:41 IST 2026
[2026-06-22 19:29:41,512.512 INFO    ] ================================================
[2026-06-22 19:29:42,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:29:42
[2026-06-22 19:29:42,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:29:42,946.946 INFO    ] Initializing speech engine...
[2026-06-22 19:29:42,953.953 INFO    ] 2026-06-22 19:29:42
[2026-06-22 19:29:43,218.218 INFO    ] 2026-06-22 19:29:43
[2026-06-22 19:29:43,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:29:43,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:29:43,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:29:43,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:29:43,633.633 INFO    ] time= 22/06/2026 19:29:43
[2026-06-22 19:29:43,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:29:43,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:29:43,803.803 INFO    ] No existing commands found in stream
[2026-06-22 19:29:48,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:29:48,837.837 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-22 19:29:53,064.064 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:29:53,067.067 INFO    ] Checking for system updates...
[2026-06-22 19:29:53,106.106 INFO    ] 200
[2026-06-22 19:29:53,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:29:53,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:29:53,170.170 INFO    ] No update needed
[2026-06-22 19:29:53,172.172 INFO    ] Checking for camera pi updates...
[2026-06-22 19:29:53,209.209 INFO    ] 200
[2026-06-22 19:29:53,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:29:53,256.256 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:29:53,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:29:53,365.365 INFO    ] No camera update needed
[2026-06-22 19:29:53,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:29:53,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:29:53,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:29:53,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:29:55,420.420 INFO    ] ================================================
[2026-06-22 19:29:55,435.435 INFO    ] Launching Daemon at Mon Jun 22 19:29:55 IST 2026
[2026-06-22 19:29:55,446.446 INFO    ] ================================================
[2026-06-22 19:29:56,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:29:56
[2026-06-22 19:29:56,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:29:56,873.873 INFO    ] Initializing speech engine...
[2026-06-22 19:29:56,882.882 INFO    ] 2026-06-22 19:29:56
[2026-06-22 19:29:57,173.173 INFO    ] 2026-06-22 19:29:57
[2026-06-22 19:29:57,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:29:57,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:29:57,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:29:57,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:29:57,548.548 INFO    ] time= 22/06/2026 19:29:57
[2026-06-22 19:29:57,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:29:57,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:29:57,676.676 INFO    ] No existing commands found in stream
[2026-06-22 19:30:02,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:30:02,691.691 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-22 19:30:08,193.193 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:30:08,196.196 INFO    ] Checking for system updates...
[2026-06-22 19:30:08,232.232 INFO    ] 200
[2026-06-22 19:30:08,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:30:08,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:30:08,291.291 INFO    ] No update needed
[2026-06-22 19:30:08,293.293 INFO    ] Checking for camera pi updates...
[2026-06-22 19:30:08,327.327 INFO    ] 200
[2026-06-22 19:30:08,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:30:08,370.370 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:30:08,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:30:08,425.425 INFO    ] No camera update needed
[2026-06-22 19:30:08,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:30:08,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:30:08,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:30:08,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:30:10,481.481 INFO    ] ================================================
[2026-06-22 19:30:10,497.497 INFO    ] Launching Daemon at Mon Jun 22 19:30:10 IST 2026
[2026-06-22 19:30:10,508.508 INFO    ] ================================================
[2026-06-22 19:30:11,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:30:11
[2026-06-22 19:30:11,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:30:12,035.035 INFO    ] Initializing speech engine...
[2026-06-22 19:30:12,043.043 INFO    ] 2026-06-22 19:30:12
[2026-06-22 19:30:12,323.323 INFO    ] 2026-06-22 19:30:12
[2026-06-22 19:30:12,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:30:12,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:30:12,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:30:12,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:30:12,770.770 INFO    ] time= 22/06/2026 19:30:12
[2026-06-22 19:30:12,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:30:12,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:30:12,918.918 INFO    ] No existing commands found in stream
[2026-06-22 19:30:17,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:30:17,931.931 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-22 19:30:21,590.590 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:30:21,593.593 INFO    ] Checking for system updates...
[2026-06-22 19:30:21,633.633 INFO    ] 200
[2026-06-22 19:30:21,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:30:21,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:30:21,690.690 INFO    ] No update needed
[2026-06-22 19:30:21,693.693 INFO    ] Checking for camera pi updates...
[2026-06-22 19:30:21,719.719 INFO    ] 200
[2026-06-22 19:30:21,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:30:21,745.745 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:30:21,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:30:21,825.825 INFO    ] No camera update needed
[2026-06-22 19:30:21,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:30:21,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:30:21,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:30:21,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:30:23,879.879 INFO    ] ================================================
[2026-06-22 19:30:23,894.894 INFO    ] Launching Daemon at Mon Jun 22 19:30:23 IST 2026
[2026-06-22 19:30:23,905.905 INFO    ] ================================================
[2026-06-22 19:30:24,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:30:24
[2026-06-22 19:30:25,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:30:25,490.490 INFO    ] Initializing speech engine...
[2026-06-22 19:30:25,497.497 INFO    ] 2026-06-22 19:30:25
[2026-06-22 19:30:25,760.760 INFO    ] 2026-06-22 19:30:25
[2026-06-22 19:30:25,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:30:26,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:30:26,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:30:26,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:30:26,256.256 INFO    ] time= 22/06/2026 19:30:26
[2026-06-22 19:30:26,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:30:26,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:30:26,443.443 INFO    ] No existing commands found in stream
[2026-06-22 19:30:31,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:30:31,477.477 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-22 19:30:34,441.441 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:30:34,444.444 INFO    ] Checking for system updates...
[2026-06-22 19:30:34,486.486 INFO    ] 200
[2026-06-22 19:30:34,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:30:34,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:30:34,548.548 INFO    ] No update needed
[2026-06-22 19:30:34,551.551 INFO    ] Checking for camera pi updates...
[2026-06-22 19:30:34,587.587 INFO    ] 200
[2026-06-22 19:30:34,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:30:34,633.633 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:30:34,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:30:34,712.712 INFO    ] No camera update needed
[2026-06-22 19:30:34,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:30:34,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:30:34,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:30:34,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:30:36,772.772 INFO    ] ================================================
[2026-06-22 19:30:36,788.788 INFO    ] Launching Daemon at Mon Jun 22 19:30:36 IST 2026
[2026-06-22 19:30:36,799.799 INFO    ] ================================================
[2026-06-22 19:30:37,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:30:37
[2026-06-22 19:30:38,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:30:38,452.452 INFO    ] Initializing speech engine...
[2026-06-22 19:30:38,460.460 INFO    ] 2026-06-22 19:30:38
[2026-06-22 19:30:38,748.748 INFO    ] 2026-06-22 19:30:38
[2026-06-22 19:30:38,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:30:39,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:30:39,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:30:39,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:30:39,182.182 INFO    ] time= 22/06/2026 19:30:39
[2026-06-22 19:30:39,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:30:39,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:30:39,349.349 INFO    ] No existing commands found in stream
[2026-06-22 19:30:44,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:30:44,365.365 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-22 19:30:45,133.133 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:30:45,137.137 INFO    ] Checking for system updates...
[2026-06-22 19:30:45,175.175 INFO    ] 200
[2026-06-22 19:30:45,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:30:45,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:30:45,235.235 INFO    ] No update needed
[2026-06-22 19:30:45,237.237 INFO    ] Checking for camera pi updates...
[2026-06-22 19:30:45,276.276 INFO    ] 200
[2026-06-22 19:30:45,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:30:45,321.321 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:30:45,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:30:45,419.419 INFO    ] No camera update needed
[2026-06-22 19:30:45,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:30:45,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:30:45,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:30:45,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:30:47,478.478 INFO    ] ================================================
[2026-06-22 19:30:47,494.494 INFO    ] Launching Daemon at Mon Jun 22 19:30:47 IST 2026
[2026-06-22 19:30:47,505.505 INFO    ] ================================================
[2026-06-22 19:30:48,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:30:48
[2026-06-22 19:30:48,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:30:48,922.922 INFO    ] Initializing speech engine...
[2026-06-22 19:30:48,931.931 INFO    ] 2026-06-22 19:30:48
[2026-06-22 19:30:49,226.226 INFO    ] 2026-06-22 19:30:49
[2026-06-22 19:30:49,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:30:49,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:30:49,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:30:49,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:30:49,605.605 INFO    ] time= 22/06/2026 19:30:49
[2026-06-22 19:30:49,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:30:49,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:30:49,730.730 INFO    ] No existing commands found in stream
[2026-06-22 19:30:54,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:30:54,743.743 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-22 19:30:57,406.406 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:30:57,409.409 INFO    ] Checking for system updates...
[2026-06-22 19:30:57,448.448 INFO    ] 200
[2026-06-22 19:30:57,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:30:57,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:30:57,513.513 INFO    ] No update needed
[2026-06-22 19:30:57,516.516 INFO    ] Checking for camera pi updates...
[2026-06-22 19:30:57,549.549 INFO    ] 200
[2026-06-22 19:30:57,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:30:57,594.594 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:30:57,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:30:57,787.787 INFO    ] No camera update needed
[2026-06-22 19:30:57,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:30:57,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:30:57,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:30:57,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:30:59,843.843 INFO    ] ================================================
[2026-06-22 19:30:59,858.858 INFO    ] Launching Daemon at Mon Jun 22 19:30:59 IST 2026
[2026-06-22 19:30:59,869.869 INFO    ] ================================================
[2026-06-22 19:31:00,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:31:00
[2026-06-22 19:31:01,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:31:01,462.462 INFO    ] Initializing speech engine...
[2026-06-22 19:31:01,471.471 INFO    ] 2026-06-22 19:31:01
[2026-06-22 19:31:01,971.971 INFO    ] 2026-06-22 19:31:01
[2026-06-22 19:31:02,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:31:04,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:31:04,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:31:05,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:31:05,144.144 INFO    ] time= 22/06/2026 19:31:05
[2026-06-22 19:31:05,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:31:05,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:31:05,218.218 INFO    ] No existing commands found in stream
[2026-06-22 19:31:10,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:31:10,230.230 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-22 19:31:11,739.739 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:31:11,742.742 INFO    ] Checking for system updates...
[2026-06-22 19:31:11,767.767 INFO    ] 200
[2026-06-22 19:31:11,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:31:11,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:31:11,800.800 INFO    ] No update needed
[2026-06-22 19:31:11,801.801 INFO    ] Checking for camera pi updates...
[2026-06-22 19:31:11,821.821 INFO    ] 200
[2026-06-22 19:31:11,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:31:11,846.846 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:31:11,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:31:11,933.933 INFO    ] No camera update needed
[2026-06-22 19:31:11,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:31:11,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:31:11,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:31:11,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:31:13,989.989 INFO    ] ================================================
[2026-06-22 19:31:14,004.004 INFO    ] Launching Daemon at Mon Jun 22 19:31:13 IST 2026
[2026-06-22 19:31:14,014.014 INFO    ] ================================================
[2026-06-22 19:31:14,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:31:14
[2026-06-22 19:31:15,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:31:15,348.348 INFO    ] Initializing speech engine...
[2026-06-22 19:31:15,357.357 INFO    ] 2026-06-22 19:31:15
[2026-06-22 19:31:15,658.658 INFO    ] 2026-06-22 19:31:15
[2026-06-22 19:31:15,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:31:15,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:31:15,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:31:16,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:31:16,047.047 INFO    ] time= 22/06/2026 19:31:16
[2026-06-22 19:31:16,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:31:16,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:31:16,165.165 INFO    ] No existing commands found in stream
[2026-06-22 19:31:21,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:31:21,215.215 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-22 19:31:25,565.565 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:31:25,567.567 INFO    ] Checking for system updates...
[2026-06-22 19:31:25,607.607 INFO    ] 200
[2026-06-22 19:31:25,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:31:25,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:31:25,670.670 INFO    ] No update needed
[2026-06-22 19:31:25,673.673 INFO    ] Checking for camera pi updates...
[2026-06-22 19:31:25,706.706 INFO    ] 200
[2026-06-22 19:31:25,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:31:25,750.750 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:31:25,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:31:25,832.832 INFO    ] No camera update needed
[2026-06-22 19:31:25,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:31:25,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:31:25,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:31:25,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:31:27,888.888 INFO    ] ================================================
[2026-06-22 19:31:27,903.903 INFO    ] Launching Daemon at Mon Jun 22 19:31:27 IST 2026
[2026-06-22 19:31:27,914.914 INFO    ] ================================================
[2026-06-22 19:31:28,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:31:28
[2026-06-22 19:31:29,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:31:29,319.319 INFO    ] Initializing speech engine...
[2026-06-22 19:31:29,325.325 INFO    ] 2026-06-22 19:31:29
[2026-06-22 19:31:29,592.592 INFO    ] 2026-06-22 19:31:29
[2026-06-22 19:31:29,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:31:29,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:31:29,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:31:29,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:31:29,975.975 INFO    ] time= 22/06/2026 19:31:29
[2026-06-22 19:31:29,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:31:30,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:31:30,097.097 INFO    ] No existing commands found in stream
[2026-06-22 19:31:35,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:31:35,109.109 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-22 19:31:37,408.408 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:31:37,410.410 INFO    ] Checking for system updates...
[2026-06-22 19:31:37,450.450 INFO    ] 200
[2026-06-22 19:31:37,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:31:37,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:31:37,513.513 INFO    ] No update needed
[2026-06-22 19:31:37,515.515 INFO    ] Checking for camera pi updates...
[2026-06-22 19:31:37,550.550 INFO    ] 200
[2026-06-22 19:31:37,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:31:37,595.595 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:31:37,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:31:37,685.685 INFO    ] No camera update needed
[2026-06-22 19:31:37,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:31:37,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:31:37,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:31:37,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:31:39,743.743 INFO    ] ================================================
[2026-06-22 19:31:39,759.759 INFO    ] Launching Daemon at Mon Jun 22 19:31:39 IST 2026
[2026-06-22 19:31:39,770.770 INFO    ] ================================================
[2026-06-22 19:31:40,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:31:40
[2026-06-22 19:31:40,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:31:41,230.230 INFO    ] Initializing speech engine...
[2026-06-22 19:31:41,245.245 INFO    ] 2026-06-22 19:31:41
[2026-06-22 19:31:41,527.527 INFO    ] 2026-06-22 19:31:41
[2026-06-22 19:31:41,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:31:41,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:31:41,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:31:41,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:31:41,944.944 INFO    ] time= 22/06/2026 19:31:41
[2026-06-22 19:31:41,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:31:41,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:31:42,035.035 INFO    ] No existing commands found in stream
[2026-06-22 19:31:47,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:31:47,053.053 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-22 19:31:49,549.549 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:31:49,551.551 INFO    ] Checking for system updates...
[2026-06-22 19:31:49,572.572 INFO    ] 200
[2026-06-22 19:31:49,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:31:49,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:31:49,620.620 INFO    ] No update needed
[2026-06-22 19:31:49,622.622 INFO    ] Checking for camera pi updates...
[2026-06-22 19:31:49,663.663 INFO    ] 200
[2026-06-22 19:31:49,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:31:49,715.715 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:31:49,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:31:49,802.802 INFO    ] No camera update needed
[2026-06-22 19:31:49,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:31:49,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:31:49,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:31:49,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:31:51,861.861 INFO    ] ================================================
[2026-06-22 19:31:51,877.877 INFO    ] Launching Daemon at Mon Jun 22 19:31:51 IST 2026
[2026-06-22 19:31:51,887.887 INFO    ] ================================================
[2026-06-22 19:31:52,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:31:52
[2026-06-22 19:31:53,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:31:53,350.350 INFO    ] Initializing speech engine...
[2026-06-22 19:31:53,363.363 INFO    ] 2026-06-22 19:31:53
[2026-06-22 19:31:53,637.637 INFO    ] 2026-06-22 19:31:53
[2026-06-22 19:31:53,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:31:53,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:31:53,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:31:54,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:31:54,105.105 INFO    ] time= 22/06/2026 19:31:54
[2026-06-22 19:31:54,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:31:54,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:31:54,243.243 INFO    ] No existing commands found in stream
[2026-06-22 19:31:59,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:31:59,266.266 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-22 19:32:00,681.681 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:32:00,682.682 INFO    ] Checking for system updates...
[2026-06-22 19:32:00,719.719 INFO    ] 200
[2026-06-22 19:32:00,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:32:00,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:32:00,778.778 INFO    ] No update needed
[2026-06-22 19:32:00,781.781 INFO    ] Checking for camera pi updates...
[2026-06-22 19:32:00,818.818 INFO    ] 200
[2026-06-22 19:32:00,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:32:00,867.867 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:32:00,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:32:00,958.958 INFO    ] No camera update needed
[2026-06-22 19:32:00,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:32:00,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:32:00,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:32:00,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:32:03,028.028 INFO    ] ================================================
[2026-06-22 19:32:03,044.044 INFO    ] Launching Daemon at Mon Jun 22 19:32:03 IST 2026
[2026-06-22 19:32:03,056.056 INFO    ] ================================================
[2026-06-22 19:32:03,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:32:03
[2026-06-22 19:32:04,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:32:04,710.710 INFO    ] Initializing speech engine...
[2026-06-22 19:32:04,718.718 INFO    ] 2026-06-22 19:32:04
[2026-06-22 19:32:05,036.036 INFO    ] 2026-06-22 19:32:05
[2026-06-22 19:32:05,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:32:06,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:32:06,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:32:06,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:32:06,706.706 INFO    ] time= 22/06/2026 19:32:06
[2026-06-22 19:32:06,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:32:06,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:32:06,824.824 INFO    ] No existing commands found in stream
[2026-06-22 19:32:11,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:32:11,840.840 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-22 19:32:12,645.645 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:32:12,648.648 INFO    ] Checking for system updates...
[2026-06-22 19:32:12,690.690 INFO    ] 200
[2026-06-22 19:32:12,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:32:12,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:32:12,758.758 INFO    ] No update needed
[2026-06-22 19:32:12,761.761 INFO    ] Checking for camera pi updates...
[2026-06-22 19:32:12,797.797 INFO    ] 200
[2026-06-22 19:32:12,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:32:12,843.843 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:32:12,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:32:12,906.906 INFO    ] No camera update needed
[2026-06-22 19:32:12,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:32:12,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:32:12,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:32:12,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:32:14,966.966 INFO    ] ================================================
[2026-06-22 19:32:14,981.981 INFO    ] Launching Daemon at Mon Jun 22 19:32:14 IST 2026
[2026-06-22 19:32:14,991.991 INFO    ] ================================================
[2026-06-22 19:32:15,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:32:15
[2026-06-22 19:32:16,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:32:16,321.321 INFO    ] Initializing speech engine...
[2026-06-22 19:32:16,327.327 INFO    ] 2026-06-22 19:32:16
[2026-06-22 19:32:16,622.622 INFO    ] 2026-06-22 19:32:16
[2026-06-22 19:32:16,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:32:16,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:32:16,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:32:16,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:32:17,004.004 INFO    ] time= 22/06/2026 19:32:17
[2026-06-22 19:32:17,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:32:17,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:32:17,132.132 INFO    ] No existing commands found in stream
[2026-06-22 19:32:22,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:32:22,147.147 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-22 19:32:23,996.996 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:32:23,999.999 INFO    ] Checking for system updates...
[2026-06-22 19:32:24,035.035 INFO    ] 200
[2026-06-22 19:32:24,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:32:24,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:32:24,092.092 INFO    ] No update needed
[2026-06-22 19:32:24,095.095 INFO    ] Checking for camera pi updates...
[2026-06-22 19:32:24,133.133 INFO    ] 200
[2026-06-22 19:32:24,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:32:24,182.182 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:32:24,254.254 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:32:24,257.257 INFO    ] No camera update needed
[2026-06-22 19:32:24,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:32:24,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:32:24,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:32:24,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:32:26,313.313 INFO    ] ================================================
[2026-06-22 19:32:26,329.329 INFO    ] Launching Daemon at Mon Jun 22 19:32:26 IST 2026
[2026-06-22 19:32:26,340.340 INFO    ] ================================================
[2026-06-22 19:32:26,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:32:26
[2026-06-22 19:32:27,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:32:27,690.690 INFO    ] Initializing speech engine...
[2026-06-22 19:32:27,694.694 INFO    ] 2026-06-22 19:32:27
[2026-06-22 19:32:27,941.941 INFO    ] 2026-06-22 19:32:27
[2026-06-22 19:32:27,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:32:28,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:32:28,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:32:28,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:32:28,311.311 INFO    ] time= 22/06/2026 19:32:28
[2026-06-22 19:32:28,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:32:28,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:32:28,479.479 INFO    ] No existing commands found in stream
[2026-06-22 19:32:33,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:32:33,517.517 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-22 19:32:37,869.869 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:32:37,872.872 INFO    ] Checking for system updates...
[2026-06-22 19:32:37,907.907 INFO    ] 200
[2026-06-22 19:32:37,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:32:37,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:32:37,968.968 INFO    ] No update needed
[2026-06-22 19:32:37,970.970 INFO    ] Checking for camera pi updates...
[2026-06-22 19:32:38,009.009 INFO    ] 200
[2026-06-22 19:32:38,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:32:38,052.052 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:32:38,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:32:38,163.163 INFO    ] No camera update needed
[2026-06-22 19:32:38,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:32:38,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:32:38,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:32:38,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:32:40,219.219 INFO    ] ================================================
[2026-06-22 19:32:40,234.234 INFO    ] Launching Daemon at Mon Jun 22 19:32:40 IST 2026
[2026-06-22 19:32:40,245.245 INFO    ] ================================================
[2026-06-22 19:32:40,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:32:40
[2026-06-22 19:32:41,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:32:41,751.751 INFO    ] Initializing speech engine...
[2026-06-22 19:32:41,764.764 INFO    ] 2026-06-22 19:32:41
[2026-06-22 19:32:42,050.050 INFO    ] 2026-06-22 19:32:42
[2026-06-22 19:32:42,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:32:42,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:32:42,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:32:42,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:32:42,579.579 INFO    ] time= 22/06/2026 19:32:42
[2026-06-22 19:32:42,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:32:42,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:32:42,715.715 INFO    ] No existing commands found in stream
[2026-06-22 19:32:47,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:32:47,746.746 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-22 19:32:49,483.483 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:32:49,486.486 INFO    ] Checking for system updates...
[2026-06-22 19:32:49,523.523 INFO    ] 200
[2026-06-22 19:32:49,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:32:49,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:32:49,582.582 INFO    ] No update needed
[2026-06-22 19:32:49,585.585 INFO    ] Checking for camera pi updates...
[2026-06-22 19:32:49,619.619 INFO    ] 200
[2026-06-22 19:32:49,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:32:49,663.663 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:32:49,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:32:49,744.744 INFO    ] No camera update needed
[2026-06-22 19:32:49,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:32:49,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:32:49,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:32:49,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:32:51,799.799 INFO    ] ================================================
[2026-06-22 19:32:51,814.814 INFO    ] Launching Daemon at Mon Jun 22 19:32:51 IST 2026
[2026-06-22 19:32:51,824.824 INFO    ] ================================================
[2026-06-22 19:32:52,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:32:52
[2026-06-22 19:32:52,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:32:53,225.225 INFO    ] Initializing speech engine...
[2026-06-22 19:32:53,240.240 INFO    ] 2026-06-22 19:32:53
[2026-06-22 19:32:53,504.504 INFO    ] 2026-06-22 19:32:53
[2026-06-22 19:32:53,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:32:53,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:32:53,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:32:53,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:32:53,852.852 INFO    ] time= 22/06/2026 19:32:53
[2026-06-22 19:32:53,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:32:53,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:32:53,975.975 INFO    ] No existing commands found in stream
[2026-06-22 19:32:58,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:32:58,988.988 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-22 19:33:02,841.841 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:33:02,844.844 INFO    ] Checking for system updates...
[2026-06-22 19:33:02,889.889 INFO    ] 200
[2026-06-22 19:33:02,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:33:02,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:33:02,958.958 INFO    ] No update needed
[2026-06-22 19:33:02,961.961 INFO    ] Checking for camera pi updates...
[2026-06-22 19:33:03,010.010 INFO    ] 200
[2026-06-22 19:33:03,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:33:03,066.066 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:33:03,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:33:03,146.146 INFO    ] No camera update needed
[2026-06-22 19:33:03,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:33:03,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:33:03,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:33:03,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:33:05,206.206 INFO    ] ================================================
[2026-06-22 19:33:05,221.221 INFO    ] Launching Daemon at Mon Jun 22 19:33:05 IST 2026
[2026-06-22 19:33:05,232.232 INFO    ] ================================================
[2026-06-22 19:33:05,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:33:05
[2026-06-22 19:33:06,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:33:06,664.664 INFO    ] Initializing speech engine...
[2026-06-22 19:33:06,676.676 INFO    ] 2026-06-22 19:33:06
[2026-06-22 19:33:06,949.949 INFO    ] 2026-06-22 19:33:06
[2026-06-22 19:33:06,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:33:07,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:33:07,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:33:08,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:33:08,289.289 INFO    ] time= 22/06/2026 19:33:08
[2026-06-22 19:33:08,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:33:08,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:33:08,349.349 INFO    ] No existing commands found in stream
[2026-06-22 19:33:13,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:33:13,363.363 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-22 19:33:13,779.779 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:33:13,781.781 INFO    ] Checking for system updates...
[2026-06-22 19:33:13,819.819 INFO    ] 200
[2026-06-22 19:33:13,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:33:13,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:33:13,882.882 INFO    ] No update needed
[2026-06-22 19:33:13,884.884 INFO    ] Checking for camera pi updates...
[2026-06-22 19:33:13,923.923 INFO    ] 200
[2026-06-22 19:33:13,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:33:13,968.968 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:33:14,066.066 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:33:14,068.068 INFO    ] No camera update needed
[2026-06-22 19:33:14,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:33:14,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:33:14,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:33:14,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:33:16,128.128 INFO    ] ================================================
[2026-06-22 19:33:16,143.143 INFO    ] Launching Daemon at Mon Jun 22 19:33:16 IST 2026
[2026-06-22 19:33:16,153.153 INFO    ] ================================================
[2026-06-22 19:33:16,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:33:16
[2026-06-22 19:33:17,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:33:17,515.515 INFO    ] Initializing speech engine...
[2026-06-22 19:33:17,521.521 INFO    ] 2026-06-22 19:33:17
[2026-06-22 19:33:17,806.806 INFO    ] 2026-06-22 19:33:17
[2026-06-22 19:33:17,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:33:18,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:33:18,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:33:18,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:33:18,173.173 INFO    ] time= 22/06/2026 19:33:18
[2026-06-22 19:33:18,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:33:18,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:33:18,294.294 INFO    ] No existing commands found in stream
[2026-06-22 19:33:23,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:33:23,309.309 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-22 19:33:27,491.491 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:33:27,494.494 INFO    ] Checking for system updates...
[2026-06-22 19:33:27,530.530 INFO    ] 200
[2026-06-22 19:33:27,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:33:27,586.586 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:33:27,589.589 INFO    ] No update needed
[2026-06-22 19:33:27,591.591 INFO    ] Checking for camera pi updates...
[2026-06-22 19:33:27,625.625 INFO    ] 200
[2026-06-22 19:33:27,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:33:27,669.669 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:33:27,773.773 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:33:27,776.776 INFO    ] No camera update needed
[2026-06-22 19:33:27,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:33:27,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:33:27,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:33:27,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:33:29,830.830 INFO    ] ================================================
[2026-06-22 19:33:29,846.846 INFO    ] Launching Daemon at Mon Jun 22 19:33:29 IST 2026
[2026-06-22 19:33:29,856.856 INFO    ] ================================================
[2026-06-22 19:33:30,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:33:30
[2026-06-22 19:33:31,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:33:31,287.287 INFO    ] Initializing speech engine...
[2026-06-22 19:33:31,294.294 INFO    ] 2026-06-22 19:33:31
[2026-06-22 19:33:31,540.540 INFO    ] 2026-06-22 19:33:31
[2026-06-22 19:33:31,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:33:31,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:33:31,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:33:31,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:33:32,010.010 INFO    ] time= 22/06/2026 19:33:31
[2026-06-22 19:33:32,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:33:32,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:33:32,253.253 INFO    ] No existing commands found in stream
[2026-06-22 19:33:37,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:33:37,303.303 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-22 19:33:39,180.180 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:33:39,182.182 INFO    ] Checking for system updates...
[2026-06-22 19:33:39,219.219 INFO    ] 200
[2026-06-22 19:33:39,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:33:39,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:33:39,276.276 INFO    ] No update needed
[2026-06-22 19:33:39,278.278 INFO    ] Checking for camera pi updates...
[2026-06-22 19:33:39,312.312 INFO    ] 200
[2026-06-22 19:33:39,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:33:39,360.360 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:33:39,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:33:39,443.443 INFO    ] No camera update needed
[2026-06-22 19:33:39,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:33:39,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:33:39,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:33:39,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:33:41,499.499 INFO    ] ================================================
[2026-06-22 19:33:41,514.514 INFO    ] Launching Daemon at Mon Jun 22 19:33:41 IST 2026
[2026-06-22 19:33:41,525.525 INFO    ] ================================================
[2026-06-22 19:33:42,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:33:42
[2026-06-22 19:33:42,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:33:43,117.117 INFO    ] Initializing speech engine...
[2026-06-22 19:33:43,130.130 INFO    ] 2026-06-22 19:33:43
[2026-06-22 19:33:43,416.416 INFO    ] 2026-06-22 19:33:43
[2026-06-22 19:33:43,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:33:43,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:33:43,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:33:43,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:33:43,880.880 INFO    ] time= 22/06/2026 19:33:43
[2026-06-22 19:33:43,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:33:43,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:33:44,043.043 INFO    ] No existing commands found in stream
[2026-06-22 19:33:49,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:33:49,089.089 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-22 19:33:52,093.093 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:33:52,096.096 INFO    ] Checking for system updates...
[2026-06-22 19:33:52,134.134 INFO    ] 200
[2026-06-22 19:33:52,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:33:52,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:33:52,202.202 INFO    ] No update needed
[2026-06-22 19:33:52,205.205 INFO    ] Checking for camera pi updates...
[2026-06-22 19:33:52,245.245 INFO    ] 200
[2026-06-22 19:33:52,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:33:52,291.291 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:33:52,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:33:52,393.393 INFO    ] No camera update needed
[2026-06-22 19:33:52,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:33:52,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:33:52,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:33:52,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:33:54,453.453 INFO    ] ================================================
[2026-06-22 19:33:54,469.469 INFO    ] Launching Daemon at Mon Jun 22 19:33:54 IST 2026
[2026-06-22 19:33:54,480.480 INFO    ] ================================================
[2026-06-22 19:33:55,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:33:55
[2026-06-22 19:33:55,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:33:56,032.032 INFO    ] Initializing speech engine...
[2026-06-22 19:33:56,045.045 INFO    ] 2026-06-22 19:33:56
[2026-06-22 19:33:56,335.335 INFO    ] 2026-06-22 19:33:56
[2026-06-22 19:33:56,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:33:56,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:33:56,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:33:56,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:33:56,778.778 INFO    ] time= 22/06/2026 19:33:56
[2026-06-22 19:33:56,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:33:56,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:33:57,029.029 INFO    ] No existing commands found in stream
[2026-06-22 19:34:02,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:34:02,063.063 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-22 19:34:08,581.581 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:34:08,583.583 INFO    ] Checking for system updates...
[2026-06-22 19:34:08,605.605 INFO    ] 200
[2026-06-22 19:34:08,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:34:08,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:34:08,668.668 INFO    ] No update needed
[2026-06-22 19:34:08,670.670 INFO    ] Checking for camera pi updates...
[2026-06-22 19:34:08,714.714 INFO    ] 200
[2026-06-22 19:34:08,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:34:08,760.760 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:34:08,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:34:08,847.847 INFO    ] No camera update needed
[2026-06-22 19:34:08,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:34:08,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:34:08,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:34:08,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:34:10,913.913 INFO    ] ================================================
[2026-06-22 19:34:10,929.929 INFO    ] Launching Daemon at Mon Jun 22 19:34:10 IST 2026
[2026-06-22 19:34:10,939.939 INFO    ] ================================================
[2026-06-22 19:34:11,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:34:11
[2026-06-22 19:34:12,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:34:12,413.413 INFO    ] Initializing speech engine...
[2026-06-22 19:34:12,422.422 INFO    ] 2026-06-22 19:34:12
[2026-06-22 19:34:12,679.679 INFO    ] 2026-06-22 19:34:12
[2026-06-22 19:34:12,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:34:12,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:34:12,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:34:13,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:34:13,047.047 INFO    ] time= 22/06/2026 19:34:13
[2026-06-22 19:34:13,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:34:13,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:34:13,218.218 INFO    ] No existing commands found in stream
[2026-06-22 19:34:18,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:34:18,241.241 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-22 19:34:19,176.176 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:34:19,179.179 INFO    ] Checking for system updates...
[2026-06-22 19:34:19,216.216 INFO    ] 200
[2026-06-22 19:34:19,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:34:19,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:34:19,275.275 INFO    ] No update needed
[2026-06-22 19:34:19,277.277 INFO    ] Checking for camera pi updates...
[2026-06-22 19:34:19,311.311 INFO    ] 200
[2026-06-22 19:34:19,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:34:19,355.355 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:34:19,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:34:19,487.487 INFO    ] No camera update needed
[2026-06-22 19:34:19,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:34:19,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:34:19,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:34:19,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:34:21,544.544 INFO    ] ================================================
[2026-06-22 19:34:21,559.559 INFO    ] Launching Daemon at Mon Jun 22 19:34:21 IST 2026
[2026-06-22 19:34:21,570.570 INFO    ] ================================================
[2026-06-22 19:34:22,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:34:22
[2026-06-22 19:34:22,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:34:22,888.888 INFO    ] Initializing speech engine...
[2026-06-22 19:34:22,904.904 INFO    ] 2026-06-22 19:34:22
[2026-06-22 19:34:23,158.158 INFO    ] 2026-06-22 19:34:23
[2026-06-22 19:34:23,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:34:23,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:34:23,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:34:23,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:34:23,497.497 INFO    ] time= 22/06/2026 19:34:23
[2026-06-22 19:34:23,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:34:23,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:34:23,612.612 INFO    ] No existing commands found in stream
[2026-06-22 19:34:28,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:34:28,650.650 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-22 19:34:29,809.809 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:34:29,811.811 INFO    ] Checking for system updates...
[2026-06-22 19:34:29,848.848 INFO    ] 200
[2026-06-22 19:34:29,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:34:29,911.911 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:34:29,914.914 INFO    ] No update needed
[2026-06-22 19:34:29,916.916 INFO    ] Checking for camera pi updates...
[2026-06-22 19:34:29,950.950 INFO    ] 200
[2026-06-22 19:34:29,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:34:29,994.994 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:34:30,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:34:30,097.097 INFO    ] No camera update needed
[2026-06-22 19:34:30,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:34:30,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:34:30,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:34:30,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:34:32,157.157 INFO    ] ================================================
[2026-06-22 19:34:32,175.175 INFO    ] Launching Daemon at Mon Jun 22 19:34:32 IST 2026
[2026-06-22 19:34:32,192.192 INFO    ] ================================================
[2026-06-22 19:34:32,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:34:32
[2026-06-22 19:34:33,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:34:33,869.869 INFO    ] Initializing speech engine...
[2026-06-22 19:34:33,876.876 INFO    ] 2026-06-22 19:34:33
[2026-06-22 19:34:34,138.138 INFO    ] 2026-06-22 19:34:34
[2026-06-22 19:34:34,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:34:34,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:34:34,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:34:34,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:34:34,598.598 INFO    ] time= 22/06/2026 19:34:34
[2026-06-22 19:34:34,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:34:34,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:34:34,741.741 INFO    ] No existing commands found in stream
[2026-06-22 19:34:39,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:34:39,756.756 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-22 19:34:43,027.027 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:34:43,030.030 INFO    ] Checking for system updates...
[2026-06-22 19:34:43,071.071 INFO    ] 200
[2026-06-22 19:34:43,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:34:43,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:34:43,142.142 INFO    ] No update needed
[2026-06-22 19:34:43,145.145 INFO    ] Checking for camera pi updates...
[2026-06-22 19:34:43,189.189 INFO    ] 200
[2026-06-22 19:34:43,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:34:43,237.237 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:34:43,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:34:43,342.342 INFO    ] No camera update needed
[2026-06-22 19:34:43,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:34:43,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:34:43,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:34:43,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:34:45,403.403 INFO    ] ================================================
[2026-06-22 19:34:45,419.419 INFO    ] Launching Daemon at Mon Jun 22 19:34:45 IST 2026
[2026-06-22 19:34:45,430.430 INFO    ] ================================================
[2026-06-22 19:34:46,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:34:46
[2026-06-22 19:34:46,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:34:46,925.925 INFO    ] Initializing speech engine...
[2026-06-22 19:34:46,951.951 INFO    ] 2026-06-22 19:34:46
[2026-06-22 19:34:47,235.235 INFO    ] 2026-06-22 19:34:47
[2026-06-22 19:34:47,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:34:47,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:34:47,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:34:47,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:34:47,630.630 INFO    ] time= 22/06/2026 19:34:47
[2026-06-22 19:34:47,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:34:47,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:34:47,761.761 INFO    ] No existing commands found in stream
[2026-06-22 19:34:52,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:34:52,770.770 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-22 19:34:54,512.512 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:34:54,515.515 INFO    ] Checking for system updates...
[2026-06-22 19:34:54,556.556 INFO    ] 200
[2026-06-22 19:34:54,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:34:54,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:34:54,624.624 INFO    ] No update needed
[2026-06-22 19:34:54,627.627 INFO    ] Checking for camera pi updates...
[2026-06-22 19:34:54,661.661 INFO    ] 200
[2026-06-22 19:34:54,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:34:54,706.706 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:34:54,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:34:54,812.812 INFO    ] No camera update needed
[2026-06-22 19:34:54,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:34:54,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:34:54,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:34:54,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:34:56,869.869 INFO    ] ================================================
[2026-06-22 19:34:56,886.886 INFO    ] Launching Daemon at Mon Jun 22 19:34:56 IST 2026
[2026-06-22 19:34:56,901.901 INFO    ] ================================================
[2026-06-22 19:34:57,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:34:57
[2026-06-22 19:34:57,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:34:58,221.221 INFO    ] Initializing speech engine...
[2026-06-22 19:34:58,228.228 INFO    ] 2026-06-22 19:34:58
[2026-06-22 19:34:58,527.527 INFO    ] 2026-06-22 19:34:58
[2026-06-22 19:34:58,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:34:58,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:34:58,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:34:58,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:34:58,909.909 INFO    ] time= 22/06/2026 19:34:58
[2026-06-22 19:34:58,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:34:58,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:34:59,039.039 INFO    ] No existing commands found in stream
[2026-06-22 19:35:04,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:35:04,061.061 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-22 19:35:09,948.948 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:35:09,949.949 INFO    ] Checking for system updates...
[2026-06-22 19:35:09,973.973 INFO    ] 200
[2026-06-22 19:35:09,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:35:10,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:35:10,032.032 INFO    ] No update needed
[2026-06-22 19:35:10,035.035 INFO    ] Checking for camera pi updates...
[2026-06-22 19:35:10,073.073 INFO    ] 200
[2026-06-22 19:35:10,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:35:10,116.116 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:35:10,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:35:10,296.296 INFO    ] No camera update needed
[2026-06-22 19:35:10,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:35:10,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:35:10,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:35:10,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:35:12,355.355 INFO    ] ================================================
[2026-06-22 19:35:12,370.370 INFO    ] Launching Daemon at Mon Jun 22 19:35:12 IST 2026
[2026-06-22 19:35:12,382.382 INFO    ] ================================================
[2026-06-22 19:35:12,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:35:12
[2026-06-22 19:35:13,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:35:13,760.760 INFO    ] Initializing speech engine...
[2026-06-22 19:35:13,770.770 INFO    ] 2026-06-22 19:35:13
[2026-06-22 19:35:14,025.025 INFO    ] 2026-06-22 19:35:14
[2026-06-22 19:35:14,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:35:14,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:35:14,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:35:14,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:35:14,390.390 INFO    ] time= 22/06/2026 19:35:14
[2026-06-22 19:35:14,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:35:14,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:35:14,583.583 INFO    ] No existing commands found in stream
[2026-06-22 19:35:19,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:35:19,601.601 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-22 19:35:23,763.763 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:35:23,765.765 INFO    ] Checking for system updates...
[2026-06-22 19:35:23,806.806 INFO    ] 200
[2026-06-22 19:35:23,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:35:23,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:35:23,863.863 INFO    ] No update needed
[2026-06-22 19:35:23,865.865 INFO    ] Checking for camera pi updates...
[2026-06-22 19:35:23,899.899 INFO    ] 200
[2026-06-22 19:35:23,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:35:23,942.942 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:35:24,023.023 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:35:24,025.025 INFO    ] No camera update needed
[2026-06-22 19:35:24,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:35:24,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:35:24,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:35:24,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:35:26,084.084 INFO    ] ================================================
[2026-06-22 19:35:26,104.104 INFO    ] Launching Daemon at Mon Jun 22 19:35:26 IST 2026
[2026-06-22 19:35:26,117.117 INFO    ] ================================================
[2026-06-22 19:35:26,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:35:26
[2026-06-22 19:35:27,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:35:27,524.524 INFO    ] Initializing speech engine...
[2026-06-22 19:35:27,539.539 INFO    ] 2026-06-22 19:35:27
[2026-06-22 19:35:27,812.812 INFO    ] 2026-06-22 19:35:27
[2026-06-22 19:35:27,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:35:27,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:35:27,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:35:28,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:35:28,139.139 INFO    ] time= 22/06/2026 19:35:28
[2026-06-22 19:35:28,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:35:28,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:35:28,216.216 INFO    ] No existing commands found in stream
[2026-06-22 19:35:33,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:35:33,229.229 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-22 19:35:35,618.618 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:35:35,620.620 INFO    ] Checking for system updates...
[2026-06-22 19:35:35,661.661 INFO    ] 200
[2026-06-22 19:35:35,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:35:35,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:35:35,718.718 INFO    ] No update needed
[2026-06-22 19:35:35,720.720 INFO    ] Checking for camera pi updates...
[2026-06-22 19:35:35,754.754 INFO    ] 200
[2026-06-22 19:35:35,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:35:35,799.799 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:35:35,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:35:35,873.873 INFO    ] No camera update needed
[2026-06-22 19:35:35,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:35:35,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:35:35,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:35:35,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:35:37,930.930 INFO    ] ================================================
[2026-06-22 19:35:37,946.946 INFO    ] Launching Daemon at Mon Jun 22 19:35:37 IST 2026
[2026-06-22 19:35:37,957.957 INFO    ] ================================================
[2026-06-22 19:35:38,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:35:38
[2026-06-22 19:35:39,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:35:39,317.317 INFO    ] Initializing speech engine...
[2026-06-22 19:35:39,338.338 INFO    ] 2026-06-22 19:35:39
[2026-06-22 19:35:39,599.599 INFO    ] 2026-06-22 19:35:39
[2026-06-22 19:35:39,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:35:40,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:35:40,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:35:40,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:35:40,956.956 INFO    ] time= 22/06/2026 19:35:40
[2026-06-22 19:35:40,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:35:40,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:35:41,019.019 INFO    ] No existing commands found in stream
[2026-06-22 19:35:46,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:35:46,034.034 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-22 19:35:47,658.658 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:35:47,660.660 INFO    ] Checking for system updates...
[2026-06-22 19:35:47,697.697 INFO    ] 200
[2026-06-22 19:35:47,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:35:47,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:35:47,764.764 INFO    ] No update needed
[2026-06-22 19:35:47,767.767 INFO    ] Checking for camera pi updates...
[2026-06-22 19:35:47,801.801 INFO    ] 200
[2026-06-22 19:35:47,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:35:47,845.845 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:35:47,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:35:47,939.939 INFO    ] No camera update needed
[2026-06-22 19:35:47,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:35:47,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:35:47,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:35:47,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:35:49,994.994 INFO    ] ================================================
[2026-06-22 19:35:50,010.010 INFO    ] Launching Daemon at Mon Jun 22 19:35:50 IST 2026
[2026-06-22 19:35:50,020.020 INFO    ] ================================================
[2026-06-22 19:35:50,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:35:50
[2026-06-22 19:35:51,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:35:51,381.381 INFO    ] Initializing speech engine...
[2026-06-22 19:35:51,390.390 INFO    ] 2026-06-22 19:35:51
[2026-06-22 19:35:51,698.698 INFO    ] 2026-06-22 19:35:51
[2026-06-22 19:35:51,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:35:51,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:35:51,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:35:52,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:35:52,081.081 INFO    ] time= 22/06/2026 19:35:52
[2026-06-22 19:35:52,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:35:52,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:35:52,169.169 INFO    ] No existing commands found in stream
[2026-06-22 19:35:57,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:35:57,186.186 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-22 19:36:01,106.106 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:36:01,107.107 INFO    ] Checking for system updates...
[2026-06-22 19:36:01,137.137 INFO    ] 200
[2026-06-22 19:36:01,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:36:01,194.194 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:36:01,196.196 INFO    ] No update needed
[2026-06-22 19:36:01,199.199 INFO    ] Checking for camera pi updates...
[2026-06-22 19:36:01,233.233 INFO    ] 200
[2026-06-22 19:36:01,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:36:01,278.278 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:36:01,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:36:01,390.390 INFO    ] No camera update needed
[2026-06-22 19:36:01,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:36:01,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:36:01,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:36:01,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:36:03,452.452 INFO    ] ================================================
[2026-06-22 19:36:03,472.472 INFO    ] Launching Daemon at Mon Jun 22 19:36:03 IST 2026
[2026-06-22 19:36:03,488.488 INFO    ] ================================================
[2026-06-22 19:36:04,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:36:04
[2026-06-22 19:36:04,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:36:05,204.204 INFO    ] Initializing speech engine...
[2026-06-22 19:36:05,211.211 INFO    ] 2026-06-22 19:36:05
[2026-06-22 19:36:05,489.489 INFO    ] 2026-06-22 19:36:05
[2026-06-22 19:36:05,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:36:05,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:36:05,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:36:05,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:36:05,980.980 INFO    ] time= 22/06/2026 19:36:05
[2026-06-22 19:36:06,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:36:06,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:36:06,124.124 INFO    ] No existing commands found in stream
[2026-06-22 19:36:11,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:36:11,140.140 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-22 19:36:13,269.269 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:36:13,272.272 INFO    ] Checking for system updates...
[2026-06-22 19:36:13,311.311 INFO    ] 200
[2026-06-22 19:36:13,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:36:13,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:36:13,371.371 INFO    ] No update needed
[2026-06-22 19:36:13,374.374 INFO    ] Checking for camera pi updates...
[2026-06-22 19:36:13,410.410 INFO    ] 200
[2026-06-22 19:36:13,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:36:13,463.463 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:36:13,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:36:13,546.546 INFO    ] No camera update needed
[2026-06-22 19:36:13,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:36:13,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:36:13,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:36:13,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:36:15,600.600 INFO    ] ================================================
[2026-06-22 19:36:15,616.616 INFO    ] Launching Daemon at Mon Jun 22 19:36:15 IST 2026
[2026-06-22 19:36:15,627.627 INFO    ] ================================================
[2026-06-22 19:36:16,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:36:16
[2026-06-22 19:36:16,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:36:17,280.280 INFO    ] Initializing speech engine...
[2026-06-22 19:36:17,287.287 INFO    ] 2026-06-22 19:36:17
[2026-06-22 19:36:17,568.568 INFO    ] 2026-06-22 19:36:17
[2026-06-22 19:36:17,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:36:17,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:36:17,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:36:17,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:36:18,061.061 INFO    ] time= 22/06/2026 19:36:18
[2026-06-22 19:36:18,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:36:18,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:36:18,253.253 INFO    ] No existing commands found in stream
[2026-06-22 19:36:23,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:36:23,288.288 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-22 19:36:24,300.300 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:36:24,301.301 INFO    ] Checking for system updates...
[2026-06-22 19:36:24,324.324 INFO    ] 200
[2026-06-22 19:36:24,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:36:24,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:36:24,384.384 INFO    ] No update needed
[2026-06-22 19:36:24,386.386 INFO    ] Checking for camera pi updates...
[2026-06-22 19:36:24,420.420 INFO    ] 200
[2026-06-22 19:36:24,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:36:24,463.463 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:36:24,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:36:24,541.541 INFO    ] No camera update needed
[2026-06-22 19:36:24,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:36:24,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:36:24,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:36:24,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:36:26,598.598 INFO    ] ================================================
[2026-06-22 19:36:26,613.613 INFO    ] Launching Daemon at Mon Jun 22 19:36:26 IST 2026
[2026-06-22 19:36:26,623.623 INFO    ] ================================================
[2026-06-22 19:36:27,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:36:27
[2026-06-22 19:36:27,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:36:27,980.980 INFO    ] Initializing speech engine...
[2026-06-22 19:36:27,986.986 INFO    ] 2026-06-22 19:36:27
[2026-06-22 19:36:28,249.249 INFO    ] 2026-06-22 19:36:28
[2026-06-22 19:36:28,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:36:28,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:36:28,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:36:28,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:36:28,673.673 INFO    ] time= 22/06/2026 19:36:28
[2026-06-22 19:36:28,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:36:28,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:36:28,859.859 INFO    ] No existing commands found in stream
[2026-06-22 19:36:33,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:36:33,876.876 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-22 19:36:37,700.700 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:36:37,703.703 INFO    ] Checking for system updates...
[2026-06-22 19:36:37,740.740 INFO    ] 200
[2026-06-22 19:36:37,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:36:37,795.795 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:36:37,798.798 INFO    ] No update needed
[2026-06-22 19:36:37,800.800 INFO    ] Checking for camera pi updates...
[2026-06-22 19:36:37,839.839 INFO    ] 200
[2026-06-22 19:36:37,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:36:37,889.889 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:36:37,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:36:37,944.944 INFO    ] No camera update needed
[2026-06-22 19:36:37,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:36:37,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:36:37,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:36:37,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:36:40,000.000 INFO    ] ================================================
[2026-06-22 19:36:40,015.015 INFO    ] Launching Daemon at Mon Jun 22 19:36:40 IST 2026
[2026-06-22 19:36:40,026.026 INFO    ] ================================================
[2026-06-22 19:36:40,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:36:40
[2026-06-22 19:36:41,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:36:41,455.455 INFO    ] Initializing speech engine...
[2026-06-22 19:36:41,466.466 INFO    ] 2026-06-22 19:36:41
[2026-06-22 19:36:41,713.713 INFO    ] 2026-06-22 19:36:41
[2026-06-22 19:36:41,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:36:42,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:36:42,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:36:42,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:36:42,925.925 INFO    ] time= 22/06/2026 19:36:42
[2026-06-22 19:36:42,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:36:42,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:36:43,053.053 INFO    ] No existing commands found in stream
[2026-06-22 19:36:48,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:36:48,079.079 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-22 19:36:49,281.281 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:36:49,284.284 INFO    ] Checking for system updates...
[2026-06-22 19:36:49,325.325 INFO    ] 200
[2026-06-22 19:36:49,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:36:49,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:36:49,384.384 INFO    ] No update needed
[2026-06-22 19:36:49,387.387 INFO    ] Checking for camera pi updates...
[2026-06-22 19:36:49,420.420 INFO    ] 200
[2026-06-22 19:36:49,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:36:49,465.465 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:36:49,555.555 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:36:49,563.563 INFO    ] No camera update needed
[2026-06-22 19:36:49,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:36:49,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:36:49,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:36:49,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:36:51,625.625 INFO    ] ================================================
[2026-06-22 19:36:51,642.642 INFO    ] Launching Daemon at Mon Jun 22 19:36:51 IST 2026
[2026-06-22 19:36:51,653.653 INFO    ] ================================================
[2026-06-22 19:36:52,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:36:52
[2026-06-22 19:36:53,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:36:53,466.466 INFO    ] Initializing speech engine...
[2026-06-22 19:36:53,480.480 INFO    ] 2026-06-22 19:36:53
[2026-06-22 19:36:53,793.793 INFO    ] 2026-06-22 19:36:53
[2026-06-22 19:36:53,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:36:54,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:36:54,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:36:54,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:36:54,269.269 INFO    ] time= 22/06/2026 19:36:54
[2026-06-22 19:36:54,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:36:54,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:36:54,453.453 INFO    ] No existing commands found in stream
[2026-06-22 19:36:59,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:36:59,470.470 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-22 19:37:02,372.372 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:37:02,376.376 INFO    ] Checking for system updates...
[2026-06-22 19:37:02,422.422 INFO    ] 200
[2026-06-22 19:37:02,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:37:02,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:37:02,506.506 INFO    ] No update needed
[2026-06-22 19:37:02,509.509 INFO    ] Checking for camera pi updates...
[2026-06-22 19:37:02,550.550 INFO    ] 200
[2026-06-22 19:37:02,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:37:02,605.605 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:37:02,681.681 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:37:02,684.684 INFO    ] No camera update needed
[2026-06-22 19:37:02,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:37:02,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:37:02,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:37:02,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:37:04,745.745 INFO    ] ================================================
[2026-06-22 19:37:04,761.761 INFO    ] Launching Daemon at Mon Jun 22 19:37:04 IST 2026
[2026-06-22 19:37:04,771.771 INFO    ] ================================================
[2026-06-22 19:37:05,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:37:05
[2026-06-22 19:37:05,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:37:06,188.188 INFO    ] Initializing speech engine...
[2026-06-22 19:37:06,203.203 INFO    ] 2026-06-22 19:37:06
[2026-06-22 19:37:06,476.476 INFO    ] 2026-06-22 19:37:06
[2026-06-22 19:37:06,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:37:06,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:37:06,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:37:06,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:37:06,877.877 INFO    ] time= 22/06/2026 19:37:06
[2026-06-22 19:37:06,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:37:06,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:37:06,988.988 INFO    ] Found 1 existing command(s) in stream
[2026-06-22 19:37:07,027.027 INFO    ] Checking historical command: ID=1782137221274-0
[2026-06-22 19:37:07,071.071 INFO    ] process_and_cleanup_command: msg_id=1782137221274-0
[2026-06-22 19:37:07,125.125 INFO    ] is_command_expired: timestamp=2026-06-22T14:07:01.058Z, expiry=30s
[2026-06-22 19:37:07,215.215 INFO    ] Command removed from stream: 1782137221274-0. returning for processing...
[2026-06-22 19:37:07,224.224 INFO    ] ***** get_valid_command
[2026-06-22 19:37:07,230.230 INFO    ] {'timestamp': '2026-06-22T14:07:01.058Z', 'data': '{"request_id":"start-order-1782137221058-ktgmkkouw","orderId":"TM06202507260622193601510","is_vending":false}', 'command': 'start-order', 'source': 'webapp', 'timeout': '10'}
[2026-06-22 19:37:07,261.261 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1782137221058-ktgmkkouw', 'orderId': 'TM06202507260622193601510', 'is_vending': False}
[2026-06-22 19:37:07,310.310 INFO    ] Handling start order...
[2026-06-22 19:37:07,358.358 INFO    ] handle_start_order_command
[2026-06-22 19:37:07,452.452 INFO    ] _send_start_order_success: request_id=start-order-1782137221058-ktgmkkouw, order_id=TM06202507260622193601510
[2026-06-22 19:37:07,477.477 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM06202507
[2026-06-22 19:37:07,592.592 INFO    ] [_send_start_order_success] Message added to stream with ID: 1782137227519-0
[2026-06-22 19:37:07,640.640 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-22 19:37:07,684.684 INFO    ] Checking for system updates...
[2026-06-22 19:37:07,822.822 INFO    ] 200
[2026-06-22 19:37:07,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:37:07,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:37:07,933.933 INFO    ] No update needed
[2026-06-22 19:37:07,983.983 INFO    ] Checking for camera pi updates...
[2026-06-22 19:37:08,029.029 INFO    ] 200
[2026-06-22 19:37:08,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:37:08,141.141 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:37:08,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:37:08,241.241 INFO    ] No camera update needed
[2026-06-22 19:37:08,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:37:08,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:37:08,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:37:08,272.272 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-22 19:37:08,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:37:10,328.328 INFO    ] ================================================
[2026-06-22 19:37:10,343.343 INFO    ] Launching Daemon at Mon Jun 22 19:37:10 IST 2026
[2026-06-22 19:37:10,353.353 INFO    ] ================================================
[2026-06-22 19:37:10,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:37:10
[2026-06-22 19:37:11,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:37:11,777.777 INFO    ] Initializing speech engine...
[2026-06-22 19:37:11,783.783 INFO    ] 2026-06-22 19:37:11
[2026-06-22 19:37:12,078.078 INFO    ] 2026-06-22 19:37:12
[2026-06-22 19:37:12,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:37:13,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:37:13,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:37:13,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:37:13,704.704 INFO    ] time= 22/06/2026 19:37:13
[2026-06-22 19:37:13,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:37:13,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:37:13,776.776 INFO    ] Found 2 existing command(s) in stream
[2026-06-22 19:37:13,781.781 INFO    ] Checking historical command: ID=1782137227519-0
[2026-06-22 19:37:13,787.787 INFO    ] process_and_cleanup_command: msg_id=1782137227519-0
[2026-06-22 19:37:13,792.792 INFO    ] is_command_expired: timestamp=2026-06-22T14:07:07.463611Z, expiry=30s
[2026-06-22 19:37:13,864.864 INFO    ] Command removed from stream: 1782137227519-0. returning for processing...
[2026-06-22 19:37:13,871.871 INFO    ] ***** get_valid_command
[2026-06-22 19:37:13,878.878 INFO    ] {'message_type': 'command_response', 'status': 'success', 'metadata_order_id': 'TM06202507260622193601510', 'metadata_request_id': 'start-order-1782137221058-ktgmkkouw', 'timestamp': '2026-06-22T14:07:07.463611Z', 'message': 'start-order success', 'imei': 'TM06202507'}
[2026-06-22 19:37:13,884.884 INFO    ] Checking historical command: ID=1782137230117-0
[2026-06-22 19:37:13,891.891 INFO    ] process_and_cleanup_command: msg_id=1782137230117-0
[2026-06-22 19:37:13,899.899 INFO    ] is_command_expired: timestamp=2026-06-22T14:07:09.928Z, expiry=30s
[2026-06-22 19:37:13,946.946 INFO    ] Command removed from stream: 1782137230117-0. returning for processing...
[2026-06-22 19:37:13,950.950 INFO    ] ***** get_valid_command
[2026-06-22 19:37:13,960.960 INFO    ] {'timeout': '60', 'command': 'process-order', 'data': '{"request_id":"process-order-1782137229928-h24ixjyx2","orderId":"TM06202507260622193601510","is_vending":false,"accessCode":"47227383"}', 'source': 'webapp', 'timestamp': '2026-06-22T14:07:09.928Z'}
[2026-06-22 19:37:13,963.963 INFO    ] ***** Parsed command data: {'orderId': 'TM06202507260622193601510', 'is_vending': False, 'accessCode': '47227383', 'request_id': 'process-order-1782137229928-h24ixjyx2'}
[2026-06-22 19:37:13,967.967 INFO    ] Handling process order...
[2026-06-22 19:37:13,970.970 INFO    ] Processing process-order command...
[2026-06-22 19:37:13,973.973 INFO    ] 🔍 Lock file Order ID: TM06202507260622193601510, TS: 2026-06-22 19:37:07
[2026-06-22 19:37:14,048.048 INFO    ] ✅ Order lock valid for TM06202507260622193601510
[2026-06-22 19:37:14,102.102 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-22 19:37:14,126.126 INFO    ] processing access code 47227383 for order TM06202507260622193601510
[2026-06-22 19:37:14,129.129 INFO    ] 🔍 Lock file Order ID: TM06202507260622193601510, TS: 2026-06-22 19:37:07
[2026-06-22 19:37:14,168.168 INFO    ] ✅ Order lock valid for TM06202507260622193601510
[2026-06-22 19:37:14,189.189 INFO    ] 2026-06-22 19:37:14
[2026-06-22 19:37:14,265.265 INFO    ] 200
[2026-06-22 19:37:14,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:37:14,274.274 INFO    ] 47227383
[2026-06-22 19:37:14,279.279 INFO    ] 2026-06-22 19:37:14
[2026-06-22 19:37:14,283.283 INFO    ] session id :232719591
[2026-06-22 19:37:14,288.288 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=47227383&imei=TM06202507&session_id=232719591
[2026-06-22 19:37:15,317.317 INFO    ] 200
[2026-06-22 19:37:15,368.368 INFO    ] {"data": {"mobile": "9009851105", "order_id": "TM06202507260622193601510", "access_code": "47227383", "bill_amount": "20", "proposed_sku_json": [{"tray_id": "11", "qty": 1, "mrp": "20", "door_id": "1", "name": "Max Protein Cheese jalapeno  32gm", "sku_total": 20, "image_url": "https://images.tinymart.in/product/4500671-2117.jpg", "offer_desc": "", "unit_price": 20, "skuid": "4500671", "offer_id": ""}], "invoice_bill": "20"}, "msg": "Order Data", "status": true, "rstatus": true}
[2026-06-22 19:37:15,386.386 INFO    ] 20
[2026-06-22 19:37:15,396.396 INFO    ] TM06202507260622193601510
[2026-06-22 19:37:15,414.414 INFO    ] 9009851105
[2026-06-22 19:37:15,421.421 INFO    ] 2026-06-22 19:37:15
[2026-06-22 19:37:15,436.436 INFO    ] Door Opening for user mobile ending with  one one zero five 
[2026-06-22 19:37:15,445.445 INFO    ] Door Opening for user mobile ending with  one one zero five 
[2026-06-22 19:37:15,455.455 INFO    ] b5de234f5e36a53ced827fb6eea9b792
[2026-06-22 19:37:15,457.457 INFO    ] 2026-06-22 19:37:15
[2026-06-22 19:37:15,460.460 INFO    ] playing audio file
[2026-06-22 19:37:15,476.476 INFO    ] 2026-06-22 19:37:15
[2026-06-22 19:37:15,480.480 INFO    ] 2026-06-22 19:37:15
[2026-06-22 19:37:15,483.483 INFO    ] publish_status: order_id=TM06202507260622193601510
[2026-06-22 19:37:15,486.486 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622193601510
[2026-06-22 19:37:15,532.532 INFO    ] [publish_status] Message added to stream with ID: 1782137235506-0
[2026-06-22 19:37:15,534.534 INFO    ] Published to order:TM06202507260622193601510: {'server_status': 'order-started', 'timestamp': '2026-06-22T14:07:15.481474Z', 'server_response': '{"msg": "Order Data", "rstatus": true, "data": {"proposed_sku_json": [{"skuid": "4500671", "door_id": "1", "qty": 1, "unit_price": 20, "mrp": "20", "offer_desc": "", "sku_total": 20, "offer_id": "", "tray_id": "11", "name": "Max Protein Cheese jalapeno  32gm", "image_url": "https://images.tinymart.in/product/4500671-2117.jpg"}], "bill_amount": "20", "invoice_bill": "20", "order_id": "TM06202507260622193601510", "access_code": "47227383", "mobile": "9009851105"}, "status": true}', 'order_id': 'TM06202507260622193601510'} (ID: 1782137235506-0)
[2026-06-22 19:37:15,978.978 INFO    ] {'server_status': 'order-started', 'server_response': {'msg': 'Order Data', 'rstatus': True, 'data': {'proposed_sku_json': [{'skuid': '4500671', 'door_id': '1', 'qty': 1, 'unit_price': 20, 'mrp': '20', 'offer_desc': '', 'sku_total': 20, 'offer_id': '', 'tray_id': '11', 'name': 'Max Protein Cheese jalapeno  32gm', 'image_url': 'https://images.tinymart.in/product/4500671-2117.jpg'}], 'bill_amount': '20', 'invoice_bill': '20', 'order_id': 'TM06202507260622193601510', 'access_code': '47227383', 'mobile': '9009851105'}, 'status': True}, 'order_id': 'TM06202507260622193601510'}
[2026-06-22 19:37:15,980.980 INFO    ] 200
[2026-06-22 19:37:15,983.983 INFO    ] {"data":{"server_status":"order-started","server_response":{"msg":"Order Data","rstatus":true,"data":{"proposed_sku_json":[{"skuid":"4500671","door_id":"1","qty":1,"unit_price":20,"mrp":"20","offer_desc":"","sku_total":20,"offer_id":"","tray_id":"11","name":"Max Protein Cheese jalapeno  32gm","image_url":"https:\/\/images.tinymart.in\/product\/4500671-2117.jpg"}],"bill_amount":"20","invoice_bill":"20","order_id":"TM06202507260622193601510","access_code":"47227383","mobile":"9009851105"},"status":true},"order_id":"TM06202507260622193601510"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 19:37:15,986.986 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}, 'data': {'server_status': 'order-started', 'server_response': {'msg': 'Order Data', 'rstatus': True, 'data': {'proposed_sku_json': [{'skuid': '4500671', 'door_id': '1', 'tray_id': '11', 'qty': 1, 'unit_price': 20, 'mrp': '20', 'offer_id': '', 'sku_total': 20, 'offer_desc': '', 'name': 'Max Protein Cheese jalapeno  32gm', 'image_url': 'https://images.tinymart.in/product/4500671-2117.jpg'}], 'bill_amount': '20', 'order_id': 'TM06202507260622193601510', 'access_code': '47227383', 'mobile': '9009851105', 'invoice_bill': '20'}, 'status': True}, 'order_id': 'TM06202507260622193601510'}}
[2026-06-22 19:37:15,988.988 INFO    ] 2026-06-22 19:37:15
[2026-06-22 19:37:16,033.033 INFO    ] 200
[2026-06-22 19:37:16,036.036 INFO    ] True
[2026-06-22 19:37:16,207.207 INFO    ] 200
[2026-06-22 19:37:16,210.210 INFO    ] {"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": ""}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 19:37:16,213.213 INFO    ] {'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': ''}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'voiceNote': 'Please Wait', 'status': 'False', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-22 19:37:16,217.217 INFO    ] *** process_order ***
[2026-06-22 19:37:17,398.398 INFO    ] 200
[2026-06-22 19:37:17,400.400 INFO    ] {"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": ""}, "rstatus": true, "delay": 0, "status": "True", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 19:37:17,403.403 INFO    ] {'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': ''}, 'rstatus': True, 'delay': 0, 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait'}
[2026-06-22 19:37:17,406.406 INFO    ] *** process_order ***
[2026-06-22 19:37:17,409.409 INFO    ] publish_status: order_id=TM06202507260622193601510
[2026-06-22 19:37:17,411.411 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622193601510
[2026-06-22 19:37:17,483.483 INFO    ] [publish_status] Message added to stream with ID: 1782137237458-0
[2026-06-22 19:37:17,486.486 INFO    ] Published to order:TM06202507260622193601510: {'server_status': 'doorOpened', 'server_response': '{"SectionStatus": {"UI_Header": "", "SubHeader": "You can pull the door now.", "Header": " Your order is under process  ", "Note": ""}, "rstatus": true, "delay": 0, "status": "True", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Door is open..."}', 'order_id': 'TM06202507260622193601510'} (ID: 1782137237458-0)
[2026-06-22 19:37:18,523.523 INFO    ] 2026-06-22 19:37:18
[2026-06-22 19:37:18,526.526 INFO    ] publish_status: order_id=TM06202507260622193601510
[2026-06-22 19:37:18,529.529 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622193601510
[2026-06-22 19:37:18,605.605 INFO    ] [publish_status] Message added to stream with ID: 1782137238578-0
[2026-06-22 19:37:18,608.608 INFO    ] Published to order:TM06202507260622193601510: {'server_status': 'processOrder', 'timestamp': '2026-06-22T14:07:18.525076Z', 'server_response': '{"SectionStatus": {"UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "Note": ""}, "rstatus": true, "delay": 0, "status": "True", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}', 'order_id': 'TM06202507260622193601510'} (ID: 1782137238578-0)
[2026-06-22 19:37:18,707.707 INFO    ] {'server_status': 'processOrder', 'server_response': {'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': ''}, 'rstatus': True, 'delay': 0, 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait'}, 'order_id': 'TM06202507260622193601510'}
[2026-06-22 19:37:18,710.710 INFO    ] 200
[2026-06-22 19:37:18,713.713 INFO    ] {"data":{"server_status":"processOrder","server_response":{"SectionStatus":{"UI_Header":"","SubHeader":"Please wait while we process your order","Header":" Your order is under process  ","Note":""},"rstatus":true,"delay":0,"status":"true","SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"SectionMain":{"Header":"Processing Order"},"voiceNote":"Please Wait"},"order_id":"TM06202507260622193601510"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 19:37:18,716.716 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}, 'data': {'server_status': 'processOrder', 'server_response': {'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': ''}, 'rstatus': True, 'delay': 0, 'status': 'true', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait'}, 'order_id': 'TM06202507260622193601510'}}
[2026-06-22 19:37:18,719.719 INFO    ] 2026-06-22 19:37:18
[2026-06-22 19:37:18,721.721 INFO    ] None
[2026-06-22 19:37:18,724.724 INFO    ] Opening Door now
[2026-06-22 19:37:18,727.727 INFO    ] Opening Door now
[2026-06-22 19:37:18,729.729 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-22 19:37:18,732.732 INFO    ] 2026-06-22 19:37:18
[2026-06-22 19:37:18,734.734 INFO    ] playing audio file
[2026-06-22 19:37:18,752.752 INFO    ] 2026-06-22 19:37:18
[2026-06-22 19:37:18,755.755 INFO    ] 2026-06-22 19:37:18
[2026-06-22 19:37:21,850.850 INFO    ] 200
[2026-06-22 19:37:21,853.853 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Max Protein Cheese jalapeno  32gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Door 1 is open now"}
[2026-06-22 19:37:21,856.856 INFO    ] {'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'voiceNote': 'Door 1 is open now', 'status': 'False', 'SectionSKU': {'skus': [{'name': 'Max Protein Cheese jalapeno  32gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-22 19:37:24,925.925 INFO    ] 200
[2026-06-22 19:37:24,928.928 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Max Protein Cheese jalapeno  32gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 19:37:24,931.931 INFO    ] {'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'voiceNote': 'Please close door 1', 'status': 'False', 'SectionSKU': {'skus': [{'name': 'Max Protein Cheese jalapeno  32gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-22 19:37:28,005.005 INFO    ] 200
[2026-06-22 19:37:28,008.008 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Max Protein Cheese jalapeno  32gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 19:37:28,012.012 INFO    ] Please close door 1
[2026-06-22 19:37:28,015.015 INFO    ] Please close door 1
[2026-06-22 19:37:28,018.018 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-22 19:37:28,022.022 INFO    ] 2026-06-22 19:37:28
[2026-06-22 19:37:28,025.025 INFO    ] playing audio file
[2026-06-22 19:37:28,044.044 INFO    ] 2026-06-22 19:37:28
[2026-06-22 19:37:28,048.048 INFO    ] publish_status: order_id=TM06202507260622193601510
[2026-06-22 19:37:28,051.051 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622193601510
[2026-06-22 19:37:28,126.126 INFO    ] [publish_status] Message added to stream with ID: 1782137248098-0
[2026-06-22 19:37:28,130.130 INFO    ] Published to order:TM06202507260622193601510: {'server_status': 'OrderStatus', 'timestamp': '2026-06-22T14:07:28.046058Z', 'server_response': '{"SectionStatus": {"UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products"}, "rstatus": false, "error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "voiceNote": "Please close door 1", "status": "False", "SectionSKU": {"skus": [{"name": "Max Protein Cheese jalapeno  32gm", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}}', 'order_id': 'TM06202507260622193601510'} (ID: 1782137248098-0)
[2026-06-22 19:37:28,741.741 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'voiceNote': 'Please close door 1', 'status': 'False', 'SectionSKU': {'skus': [{'name': 'Max Protein Cheese jalapeno  32gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM06202507260622193601510'}
[2026-06-22 19:37:28,744.744 INFO    ] 200
[2026-06-22 19:37:28,747.747 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"SectionStatus":{"UI_Header":"DOOR 1\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 1","Note":"Please Close the door after picking up products"},"rstatus":false,"error":{"tmessage":"In Progress","umessage":"In Progress","data":[],"code":20001},"voiceNote":"Please close door 1","status":"false","SectionSKU":{"skus":[{"name":"Max Protein Cheese jalapeno  32gm","qty":1}],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"}},"order_id":"TM06202507260622193601510"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 19:37:28,751.751 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}, 'data': {'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': [], 'code': 20001}, 'voiceNote': 'Please close door 1', 'status': 'false', 'SectionSKU': {'skus': [{'name': 'Max Protein Cheese jalapeno  32gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM06202507260622193601510'}}
[2026-06-22 19:37:28,754.754 INFO    ] {'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'voiceNote': 'Please close door 1', 'status': 'False', 'SectionSKU': {'skus': [{'name': 'Max Protein Cheese jalapeno  32gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-06-22 19:37:31,833.833 INFO    ] 200
[2026-06-22 19:37:31,836.836 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Max Protein Cheese jalapeno  32gm"}]}, "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"}, "rstatus": false, "delay": 1000, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Close"}, "voiceNote": "Door 1 is closed now"}
[2026-06-22 19:37:31,840.840 INFO    ] {'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nCLOSED \nNOW', 'SubHeader': 'Please wait for invoice to generate', 'Header': 'Door 1 is closed now', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'rstatus': False, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'delay': 1000, 'status': 'False', 'SectionSKU': {'skus': [{'name': 'Max Protein Cheese jalapeno  32gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Close'}, 'voiceNote': 'Door 1 is closed now'}
[2026-06-22 19:37:34,907.907 INFO    ] 200
[2026-06-22 19:37:34,910.910 INFO    ] {"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"}, "rstatus": true, "delay": 100, "status": "True", "SectionMain": {"Header": "Door Closed"}, "voiceNote": "Transaction Completed"}
[2026-06-22 19:37:34,914.914 INFO    ] {'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'rstatus': True, 'delay': 100, 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed'}
[2026-06-22 19:37:34,917.917 INFO    ] 2026-06-22 19:37:34
[2026-06-22 19:37:34,920.920 INFO    ] Order Completed 
[2026-06-22 19:37:34,923.923 INFO    ] Order Completed 
[2026-06-22 19:37:34,927.927 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-22 19:37:34,930.930 INFO    ] 2026-06-22 19:37:34
[2026-06-22 19:37:34,934.934 INFO    ] playing audio file
[2026-06-22 19:37:34,955.955 INFO    ] 2026-06-22 19:37:34
[2026-06-22 19:37:34,959.959 INFO    ] {'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'rstatus': True, 'delay': 100, 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed'}
[2026-06-22 19:37:34,963.963 INFO    ] 2026-06-22 19:37:34
[2026-06-22 19:37:35,352.352 INFO    ] 200
[2026-06-22 19:37:35,355.355 INFO    ] {"skus": [{"tray_id": "11", "qty": 1, "mrp": "20", "door_id": "", "name": "Max Protein Cheese jalapeno  32gm per peice", "sku_total": 20.0, "image_url": "https://images.tinymart.in/product/4500671-2117.jpg", "unit_price": "20", "skuid": "4500671"}], "anomaly": 0, "rstatus": true, "orderId": "TM06202507260622193601510", "logic": "WBL", "total_amount": 20.0, "res": "True"}
[2026-06-22 19:37:35,359.359 INFO    ] {'total_amount': 20.0, 'logic': 'WBL', 'rstatus': True, 'res': 'True', 'orderId': 'TM06202507260622193601510', 'skus': [{'skuid': '4500671', 'door_id': '', 'qty': 1, 'unit_price': '20', 'mrp': '20', 'sku_total': 20.0, 'tray_id': '11', 'name': 'Max Protein Cheese jalapeno  32gm per peice', 'image_url': 'https://images.tinymart.in/product/4500671-2117.jpg'}], 'anomaly': 0}
[2026-06-22 19:37:35,362.362 INFO    ] {'total_amount': 20.0, 'logic': 'WBL', 'rstatus': True, 'res': 'True', 'orderId': 'TM06202507260622193601510', 'skus': [{'skuid': '4500671', 'door_id': '', 'qty': 1, 'unit_price': '20', 'mrp': '20', 'sku_total': 20.0, 'tray_id': '11', 'name': 'Max Protein Cheese jalapeno  32gm per peice', 'image_url': 'https://images.tinymart.in/product/4500671-2117.jpg'}], 'anomaly': 0}
[2026-06-22 19:37:35,365.365 INFO    ] 2026-06-22 19:37:35
[2026-06-22 19:37:35,368.368 INFO    ] 2026-06-22 19:37:35
[2026-06-22 19:37:35,371.371 INFO    ] 20
[2026-06-22 19:37:35,374.374 INFO    ] 2026-06-22 19:37:35
[2026-06-22 19:37:35,377.377 INFO    ] 2026-06-22 19:37:35
[2026-06-22 19:37:35,379.379 INFO    ]  Your Bill Amount is 20
[2026-06-22 19:37:35,382.382 INFO    ]  Your Bill Amount is 20
[2026-06-22 19:37:35,385.385 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-06-22 19:37:35,388.388 INFO    ] 2026-06-22 19:37:35
[2026-06-22 19:37:35,391.391 INFO    ] playing audio file
[2026-06-22 19:37:35,410.410 INFO    ] 2026-06-22 19:37:35
[2026-06-22 19:37:35,413.413 INFO    ] 2026-06-22 19:37:35
[2026-06-22 19:37:35,417.417 INFO    ] publish_status: order_id=TM06202507260622193601510
[2026-06-22 19:37:35,420.420 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622193601510
[2026-06-22 19:37:37,934.934 INFO    ] [publish_status] Failed to add message with Error: Error while reading from socket: (104, 'Connection reset by peer')
[2026-06-22 19:37:38,531.531 INFO    ] {'server_status': 'invoiceOrder', 'server_response': {'total_amount': 20.0, 'logic': 'WBL', 'rstatus': True, 'res': 'True', 'orderId': 'TM06202507260622193601510', 'skus': [{'skuid': '4500671', 'door_id': '', 'qty': 1, 'unit_price': '20', 'mrp': '20', 'sku_total': 20.0, 'tray_id': '11', 'name': 'Max Protein Cheese jalapeno  32gm per peice', 'image_url': 'https://images.tinymart.in/product/4500671-2117.jpg'}], 'anomaly': 0}, 'order_id': 'TM06202507260622193601510'}
[2026-06-22 19:37:38,535.535 INFO    ] 200
[2026-06-22 19:37:38,538.538 INFO    ] {"data":{"server_status":"invoiceOrder","server_response":{"total_amount":20,"logic":"WBL","rstatus":true,"res":"true","orderId":"TM06202507260622193601510","skus":[{"skuid":"4500671","door_id":"","qty":1,"unit_price":"20","mrp":"20","sku_total":20,"tray_id":"11","name":"Max Protein Cheese jalapeno  32gm per peice","image_url":"https:\/\/images.tinymart.in\/product\/4500671-2117.jpg"}],"anomaly":0},"order_id":"TM06202507260622193601510"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 19:37:38,542.542 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}, 'data': {'server_status': 'invoiceOrder', 'server_response': {'total_amount': 20, 'logic': 'WBL', 'rstatus': True, 'res': 'true', 'orderId': 'TM06202507260622193601510', 'skus': [{'skuid': '4500671', 'door_id': '', 'qty': 1, 'unit_price': '20', 'mrp': '20', 'sku_total': 20, 'tray_id': '11', 'name': 'Max Protein Cheese jalapeno  32gm per peice', 'image_url': 'https://images.tinymart.in/product/4500671-2117.jpg'}], 'anomaly': 0}, 'order_id': 'TM06202507260622193601510'}}
[2026-06-22 19:37:38,546.546 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}, 'data': {'server_status': 'invoiceOrder', 'server_response': {'total_amount': 20, 'logic': 'WBL', 'rstatus': True, 'res': 'true', 'orderId': 'TM06202507260622193601510', 'skus': [{'skuid': '4500671', 'door_id': '', 'qty': 1, 'unit_price': '20', 'mrp': '20', 'sku_total': 20, 'tray_id': '11', 'name': 'Max Protein Cheese jalapeno  32gm per peice', 'image_url': 'https://images.tinymart.in/product/4500671-2117.jpg'}], 'anomaly': 0}, 'order_id': 'TM06202507260622193601510'}}
[2026-06-22 19:37:38,551.551 INFO    ] 2026-06-22 19:37:38
[2026-06-22 19:37:42,864.864 INFO    ] 200
[2026-06-22 19:37:42,867.867 INFO    ] {"orders_data_synced": [], "order_items": [], "orders_data": [], "orders_synced": [], "tray_synced": ["TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510", "TM06202507260622193601510"], "order_items_synced": ["TM06202507260622193601510_0"], "orders": [], "status": true, "tray_sync": []}
[2026-06-22 19:37:42,870.870 INFO    ] 2026-06-22 19:37:42
[2026-06-22 19:37:58,138.138 INFO    ] 200
[2026-06-22 19:37:58,140.140 INFO    ] True
[2026-06-22 19:37:58,143.143 INFO    ] cleanup_start_order_file_after_processing: order_id=TM06202507260622193601510
[2026-06-22 19:37:58,146.146 INFO    ] start order file deleted
[2026-06-22 19:37:58,148.148 INFO    ] Checking for system updates...
[2026-06-22 19:37:58,182.182 INFO    ] 200
[2026-06-22 19:37:58,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:37:58,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:37:58,239.239 INFO    ] No update needed
[2026-06-22 19:37:58,242.242 INFO    ] Checking for camera pi updates...
[2026-06-22 19:37:58,276.276 INFO    ] 200
[2026-06-22 19:37:58,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:37:58,302.302 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:37:58,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:37:58,394.394 INFO    ] No camera update needed
[2026-06-22 19:37:58,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:37:58,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:37:58,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:37:58,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:38:00,450.450 INFO    ] ================================================
[2026-06-22 19:38:00,466.466 INFO    ] Launching Daemon at Mon Jun 22 19:38:00 IST 2026
[2026-06-22 19:38:00,477.477 INFO    ] ================================================
[2026-06-22 19:38:01,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:38:01
[2026-06-22 19:38:01,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:38:02,409.409 INFO    ] Initializing speech engine...
[2026-06-22 19:38:02,413.413 INFO    ] 2026-06-22 19:38:02
[2026-06-22 19:38:02,717.717 INFO    ] 2026-06-22 19:38:02
[2026-06-22 19:38:02,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:38:02,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:38:03,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:38:03,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:38:03,144.144 INFO    ] time= 22/06/2026 19:38:03
[2026-06-22 19:38:03,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:38:03,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:38:03,300.300 INFO    ] No existing commands found in stream
[2026-06-22 19:38:08,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:38:08,321.321 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-22 19:38:12,300.300 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:38:12,303.303 INFO    ] Checking for system updates...
[2026-06-22 19:38:12,347.347 INFO    ] 200
[2026-06-22 19:38:12,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:38:12,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:38:12,401.401 INFO    ] No update needed
[2026-06-22 19:38:12,402.402 INFO    ] Checking for camera pi updates...
[2026-06-22 19:38:12,421.421 INFO    ] 200
[2026-06-22 19:38:12,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:38:12,447.447 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:38:12,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:38:12,537.537 INFO    ] No camera update needed
[2026-06-22 19:38:12,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:38:12,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:38:12,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:38:12,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:38:14,598.598 INFO    ] ================================================
[2026-06-22 19:38:14,613.613 INFO    ] Launching Daemon at Mon Jun 22 19:38:14 IST 2026
[2026-06-22 19:38:14,624.624 INFO    ] ================================================
[2026-06-22 19:38:15,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:38:15
[2026-06-22 19:38:15,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:38:16,181.181 INFO    ] Initializing speech engine...
[2026-06-22 19:38:16,187.187 INFO    ] 2026-06-22 19:38:16
[2026-06-22 19:38:16,472.472 INFO    ] 2026-06-22 19:38:16
[2026-06-22 19:38:16,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:38:16,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:38:16,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:38:16,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:38:17,004.004 INFO    ] time= 22/06/2026 19:38:16
[2026-06-22 19:38:17,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:38:17,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:38:17,162.162 INFO    ] No existing commands found in stream
[2026-06-22 19:38:22,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:38:22,191.191 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-22 19:38:25,274.274 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:38:25,277.277 INFO    ] Checking for system updates...
[2026-06-22 19:38:25,315.315 INFO    ] 200
[2026-06-22 19:38:25,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:38:25,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:38:25,384.384 INFO    ] No update needed
[2026-06-22 19:38:25,387.387 INFO    ] Checking for camera pi updates...
[2026-06-22 19:38:25,430.430 INFO    ] 200
[2026-06-22 19:38:25,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:38:25,476.476 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:38:25,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:38:25,563.563 INFO    ] No camera update needed
[2026-06-22 19:38:25,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:38:25,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:38:25,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:38:25,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:38:27,629.629 INFO    ] ================================================
[2026-06-22 19:38:27,645.645 INFO    ] Launching Daemon at Mon Jun 22 19:38:27 IST 2026
[2026-06-22 19:38:27,656.656 INFO    ] ================================================
[2026-06-22 19:38:28,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:38:28
[2026-06-22 19:38:28,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:38:29,194.194 INFO    ] Initializing speech engine...
[2026-06-22 19:38:29,208.208 INFO    ] 2026-06-22 19:38:29
[2026-06-22 19:38:29,495.495 INFO    ] 2026-06-22 19:38:29
[2026-06-22 19:38:29,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:38:32,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:38:32,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:38:32,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:38:32,711.711 INFO    ] time= 22/06/2026 19:38:32
[2026-06-22 19:38:32,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:38:32,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:38:32,792.792 INFO    ] No existing commands found in stream
[2026-06-22 19:38:37,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:38:37,807.807 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-22 19:38:42,155.155 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:38:42,157.157 INFO    ] Checking for system updates...
[2026-06-22 19:38:42,194.194 INFO    ] 200
[2026-06-22 19:38:42,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:38:42,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:38:42,255.255 INFO    ] No update needed
[2026-06-22 19:38:42,258.258 INFO    ] Checking for camera pi updates...
[2026-06-22 19:38:42,296.296 INFO    ] 200
[2026-06-22 19:38:42,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:38:42,341.341 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:38:42,441.441 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:38:42,444.444 INFO    ] No camera update needed
[2026-06-22 19:38:42,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:38:42,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:38:42,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:38:42,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:38:44,503.503 INFO    ] ================================================
[2026-06-22 19:38:44,519.519 INFO    ] Launching Daemon at Mon Jun 22 19:38:44 IST 2026
[2026-06-22 19:38:44,531.531 INFO    ] ================================================
[2026-06-22 19:38:45,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:38:45
[2026-06-22 19:38:45,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:38:45,867.867 INFO    ] Initializing speech engine...
[2026-06-22 19:38:45,876.876 INFO    ] 2026-06-22 19:38:45
[2026-06-22 19:38:46,138.138 INFO    ] 2026-06-22 19:38:46
[2026-06-22 19:38:46,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:38:46,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:38:46,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:38:46,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:38:46,601.601 INFO    ] time= 22/06/2026 19:38:46
[2026-06-22 19:38:46,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:38:46,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:38:46,832.832 INFO    ] No existing commands found in stream
[2026-06-22 19:38:51,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:38:51,863.863 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-22 19:38:54,711.711 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:38:54,713.713 INFO    ] Checking for system updates...
[2026-06-22 19:38:54,749.749 INFO    ] 200
[2026-06-22 19:38:54,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:38:54,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:38:54,807.807 INFO    ] No update needed
[2026-06-22 19:38:54,809.809 INFO    ] Checking for camera pi updates...
[2026-06-22 19:38:54,842.842 INFO    ] 200
[2026-06-22 19:38:54,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:38:54,885.885 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:38:54,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:38:54,969.969 INFO    ] No camera update needed
[2026-06-22 19:38:54,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:38:54,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:38:54,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:38:54,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:38:57,024.024 INFO    ] ================================================
[2026-06-22 19:38:57,040.040 INFO    ] Launching Daemon at Mon Jun 22 19:38:57 IST 2026
[2026-06-22 19:38:57,051.051 INFO    ] ================================================
[2026-06-22 19:38:57,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:38:57
[2026-06-22 19:38:58,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:38:58,490.490 INFO    ] Initializing speech engine...
[2026-06-22 19:38:58,496.496 INFO    ] 2026-06-22 19:38:58
[2026-06-22 19:38:58,748.748 INFO    ] 2026-06-22 19:38:58
[2026-06-22 19:38:58,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:39:02,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:39:02,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:39:03,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:39:03,447.447 INFO    ] time= 22/06/2026 19:39:03
[2026-06-22 19:39:03,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:39:03,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:39:03,510.510 INFO    ] No existing commands found in stream
[2026-06-22 19:39:08,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:39:08,522.522 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-22 19:39:10,795.795 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:39:10,798.798 INFO    ] Checking for system updates...
[2026-06-22 19:39:10,834.834 INFO    ] 200
[2026-06-22 19:39:10,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:39:10,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:39:10,899.899 INFO    ] No update needed
[2026-06-22 19:39:10,901.901 INFO    ] Checking for camera pi updates...
[2026-06-22 19:39:10,938.938 INFO    ] 200
[2026-06-22 19:39:10,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:39:10,980.980 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:39:11,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:39:11,064.064 INFO    ] No camera update needed
[2026-06-22 19:39:11,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:39:11,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:39:11,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:39:11,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:39:13,119.119 INFO    ] ================================================
[2026-06-22 19:39:13,135.135 INFO    ] Launching Daemon at Mon Jun 22 19:39:13 IST 2026
[2026-06-22 19:39:13,146.146 INFO    ] ================================================
[2026-06-22 19:39:13,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:39:13
[2026-06-22 19:39:14,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:39:14,513.513 INFO    ] Initializing speech engine...
[2026-06-22 19:39:14,538.538 INFO    ] 2026-06-22 19:39:14
[2026-06-22 19:39:14,816.816 INFO    ] 2026-06-22 19:39:14
[2026-06-22 19:39:14,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:39:15,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:39:15,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:39:15,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:39:15,241.241 INFO    ] time= 22/06/2026 19:39:15
[2026-06-22 19:39:15,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:39:15,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:39:15,325.325 INFO    ] No existing commands found in stream
[2026-06-22 19:39:20,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:39:20,363.363 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-22 19:39:22,440.440 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:39:22,442.442 INFO    ] Checking for system updates...
[2026-06-22 19:39:22,462.462 INFO    ] 200
[2026-06-22 19:39:22,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:39:22,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:39:22,495.495 INFO    ] No update needed
[2026-06-22 19:39:22,497.497 INFO    ] Checking for camera pi updates...
[2026-06-22 19:39:22,516.516 INFO    ] 200
[2026-06-22 19:39:22,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:39:22,560.560 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:39:22,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:39:22,645.645 INFO    ] No camera update needed
[2026-06-22 19:39:22,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:39:22,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:39:22,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:39:22,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:39:24,700.700 INFO    ] ================================================
[2026-06-22 19:39:24,715.715 INFO    ] Launching Daemon at Mon Jun 22 19:39:24 IST 2026
[2026-06-22 19:39:24,727.727 INFO    ] ================================================
[2026-06-22 19:39:25,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:39:25
[2026-06-22 19:39:25,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:39:26,075.075 INFO    ] Initializing speech engine...
[2026-06-22 19:39:26,089.089 INFO    ] 2026-06-22 19:39:26
[2026-06-22 19:39:26,340.340 INFO    ] 2026-06-22 19:39:26
[2026-06-22 19:39:26,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:39:26,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:39:26,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:39:26,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:39:26,726.726 INFO    ] time= 22/06/2026 19:39:26
[2026-06-22 19:39:26,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:39:26,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:39:26,853.853 INFO    ] No existing commands found in stream
[2026-06-22 19:39:31,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:39:31,888.888 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-22 19:39:34,190.190 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:39:34,193.193 INFO    ] Checking for system updates...
[2026-06-22 19:39:34,231.231 INFO    ] 200
[2026-06-22 19:39:34,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:39:34,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:39:34,293.293 INFO    ] No update needed
[2026-06-22 19:39:34,295.295 INFO    ] Checking for camera pi updates...
[2026-06-22 19:39:34,329.329 INFO    ] 200
[2026-06-22 19:39:34,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:39:34,378.378 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:39:34,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:39:34,441.441 INFO    ] No camera update needed
[2026-06-22 19:39:34,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:39:34,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:39:34,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:39:34,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:39:36,496.496 INFO    ] ================================================
[2026-06-22 19:39:36,511.511 INFO    ] Launching Daemon at Mon Jun 22 19:39:36 IST 2026
[2026-06-22 19:39:36,522.522 INFO    ] ================================================
[2026-06-22 19:39:37,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:39:37
[2026-06-22 19:39:37,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:39:38,082.082 INFO    ] Initializing speech engine...
[2026-06-22 19:39:38,090.090 INFO    ] 2026-06-22 19:39:38
[2026-06-22 19:39:38,375.375 INFO    ] 2026-06-22 19:39:38
[2026-06-22 19:39:38,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:39:38,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:39:38,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:39:38,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:39:38,856.856 INFO    ] time= 22/06/2026 19:39:38
[2026-06-22 19:39:38,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:39:38,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:39:39,058.058 INFO    ] No existing commands found in stream
[2026-06-22 19:39:44,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:39:44,082.082 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-22 19:39:46,956.956 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:39:46,959.959 INFO    ] Checking for system updates...
[2026-06-22 19:39:46,996.996 INFO    ] 200
[2026-06-22 19:39:46,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:39:47,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:39:47,061.061 INFO    ] No update needed
[2026-06-22 19:39:47,064.064 INFO    ] Checking for camera pi updates...
[2026-06-22 19:39:47,102.102 INFO    ] 200
[2026-06-22 19:39:47,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:39:47,154.154 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:39:47,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:39:47,252.252 INFO    ] No camera update needed
[2026-06-22 19:39:47,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:39:47,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:39:47,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:39:47,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:39:49,310.310 INFO    ] ================================================
[2026-06-22 19:39:49,325.325 INFO    ] Launching Daemon at Mon Jun 22 19:39:49 IST 2026
[2026-06-22 19:39:49,336.336 INFO    ] ================================================
[2026-06-22 19:39:49,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:39:49
[2026-06-22 19:39:50,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:39:50,743.743 INFO    ] Initializing speech engine...
[2026-06-22 19:39:50,758.758 INFO    ] 2026-06-22 19:39:50
[2026-06-22 19:39:51,024.024 INFO    ] 2026-06-22 19:39:51
[2026-06-22 19:39:51,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:39:51,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:39:51,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:39:51,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:39:51,505.505 INFO    ] time= 22/06/2026 19:39:51
[2026-06-22 19:39:51,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:39:51,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:39:51,732.732 INFO    ] No existing commands found in stream
[2026-06-22 19:39:56,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:39:56,762.762 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-22 19:39:59,658.658 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:39:59,660.660 INFO    ] Checking for system updates...
[2026-06-22 19:39:59,698.698 INFO    ] 200
[2026-06-22 19:39:59,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:39:59,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:39:59,759.759 INFO    ] No update needed
[2026-06-22 19:39:59,762.762 INFO    ] Checking for camera pi updates...
[2026-06-22 19:39:59,800.800 INFO    ] 200
[2026-06-22 19:39:59,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:39:59,847.847 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:39:59,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:39:59,931.931 INFO    ] No camera update needed
[2026-06-22 19:39:59,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:39:59,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:39:59,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:39:59,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:40:02,027.027 INFO    ] ================================================
[2026-06-22 19:40:02,081.081 INFO    ] Launching Daemon at Mon Jun 22 19:40:02 IST 2026
[2026-06-22 19:40:02,129.129 INFO    ] ================================================
[2026-06-22 19:40:02,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:40:02
[2026-06-22 19:40:03,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:40:04,011.011 INFO    ] Initializing speech engine...
[2026-06-22 19:40:04,021.021 INFO    ] 2026-06-22 19:40:04
[2026-06-22 19:40:04,299.299 INFO    ] 2026-06-22 19:40:04
[2026-06-22 19:40:04,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:40:06,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:40:06,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:40:07,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:40:07,167.167 INFO    ] time= 22/06/2026 19:40:07
[2026-06-22 19:40:07,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:40:07,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:40:07,246.246 INFO    ] No existing commands found in stream
[2026-06-22 19:40:12,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:40:12,259.259 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-22 19:40:15,432.432 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:40:15,435.435 INFO    ] Checking for system updates...
[2026-06-22 19:40:15,472.472 INFO    ] 200
[2026-06-22 19:40:15,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:40:15,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:40:15,532.532 INFO    ] No update needed
[2026-06-22 19:40:15,534.534 INFO    ] Checking for camera pi updates...
[2026-06-22 19:40:15,570.570 INFO    ] 200
[2026-06-22 19:40:15,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:40:15,614.614 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:40:15,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:40:15,701.701 INFO    ] No camera update needed
[2026-06-22 19:40:15,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:40:15,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:40:15,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:40:15,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:40:17,750.750 INFO    ] ================================================
[2026-06-22 19:40:17,759.759 INFO    ] Launching Daemon at Mon Jun 22 19:40:17 IST 2026
[2026-06-22 19:40:17,765.765 INFO    ] ================================================
[2026-06-22 19:40:18,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:40:18
[2026-06-22 19:40:19,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:40:19,349.349 INFO    ] Initializing speech engine...
[2026-06-22 19:40:19,357.357 INFO    ] 2026-06-22 19:40:19
[2026-06-22 19:40:19,640.640 INFO    ] 2026-06-22 19:40:19
[2026-06-22 19:40:19,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:40:19,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:40:19,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:40:20,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:40:20,177.177 INFO    ] time= 22/06/2026 19:40:20
[2026-06-22 19:40:20,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:40:20,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:40:20,332.332 INFO    ] No existing commands found in stream
[2026-06-22 19:40:25,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:40:25,352.352 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-22 19:40:27,481.481 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:40:27,482.482 INFO    ] Checking for system updates...
[2026-06-22 19:40:27,512.512 INFO    ] 200
[2026-06-22 19:40:27,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:40:27,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:40:27,571.571 INFO    ] No update needed
[2026-06-22 19:40:27,573.573 INFO    ] Checking for camera pi updates...
[2026-06-22 19:40:27,611.611 INFO    ] 200
[2026-06-22 19:40:27,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:40:27,655.655 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:40:27,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:40:27,745.745 INFO    ] No camera update needed
[2026-06-22 19:40:27,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:40:27,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:40:27,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:40:27,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:40:29,800.800 INFO    ] ================================================
[2026-06-22 19:40:29,816.816 INFO    ] Launching Daemon at Mon Jun 22 19:40:29 IST 2026
[2026-06-22 19:40:29,827.827 INFO    ] ================================================
[2026-06-22 19:40:30,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:40:30
[2026-06-22 19:40:30,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:40:31,173.173 INFO    ] Initializing speech engine...
[2026-06-22 19:40:31,181.181 INFO    ] 2026-06-22 19:40:31
[2026-06-22 19:40:31,469.469 INFO    ] 2026-06-22 19:40:31
[2026-06-22 19:40:31,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:40:35,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:40:35,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:40:36,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:40:36,242.242 INFO    ] time= 22/06/2026 19:40:36
[2026-06-22 19:40:36,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:40:36,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:40:36,300.300 INFO    ] No existing commands found in stream
[2026-06-22 19:40:41,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:40:41,312.312 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-22 19:40:43,135.135 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:40:43,138.138 INFO    ] Checking for system updates...
[2026-06-22 19:40:43,174.174 INFO    ] 200
[2026-06-22 19:40:43,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:40:43,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:40:43,233.233 INFO    ] No update needed
[2026-06-22 19:40:43,235.235 INFO    ] Checking for camera pi updates...
[2026-06-22 19:40:43,278.278 INFO    ] 200
[2026-06-22 19:40:43,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:40:43,325.325 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:40:43,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:40:43,423.423 INFO    ] No camera update needed
[2026-06-22 19:40:43,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:40:43,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:40:43,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:40:43,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:40:45,479.479 INFO    ] ================================================
[2026-06-22 19:40:45,495.495 INFO    ] Launching Daemon at Mon Jun 22 19:40:45 IST 2026
[2026-06-22 19:40:45,505.505 INFO    ] ================================================
[2026-06-22 19:40:46,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:40:46
[2026-06-22 19:40:46,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:40:47,020.020 INFO    ] Initializing speech engine...
[2026-06-22 19:40:47,028.028 INFO    ] 2026-06-22 19:40:47
[2026-06-22 19:40:47,309.309 INFO    ] 2026-06-22 19:40:47
[2026-06-22 19:40:47,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:40:47,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:40:47,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:40:47,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:40:47,844.844 INFO    ] time= 22/06/2026 19:40:47
[2026-06-22 19:40:47,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:40:47,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:40:47,999.999 INFO    ] Found 1 existing command(s) in stream
[2026-06-22 19:40:48,049.049 INFO    ] Checking historical command: ID=1782137447620-0
[2026-06-22 19:40:48,099.099 INFO    ] process_and_cleanup_command: msg_id=1782137447620-0
[2026-06-22 19:40:48,144.144 INFO    ] is_command_expired: timestamp=2026-06-22T14:10:47.383Z, expiry=30s
[2026-06-22 19:40:48,341.341 INFO    ] Command removed from stream: 1782137447620-0. returning for processing...
[2026-06-22 19:40:48,346.346 INFO    ] ***** get_valid_command
[2026-06-22 19:40:48,350.350 INFO    ] {'timeout': '10', 'source': 'webapp', 'timestamp': '2026-06-22T14:10:47.383Z', 'command': 'start-order', 'data': '{"request_id":"start-order-1782137447383-jn65fusnh","orderId":"TM06202507260622194003535","is_vending":false}'}
[2026-06-22 19:40:48,353.353 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'start-order-1782137447383-jn65fusnh', 'orderId': 'TM06202507260622194003535'}
[2026-06-22 19:40:48,382.382 INFO    ] Handling start order...
[2026-06-22 19:40:48,444.444 INFO    ] handle_start_order_command
[2026-06-22 19:40:48,492.492 INFO    ] _send_start_order_success: request_id=start-order-1782137447383-jn65fusnh, order_id=TM06202507260622194003535
[2026-06-22 19:40:48,496.496 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM06202507
[2026-06-22 19:40:48,595.595 INFO    ] [_send_start_order_success] Message added to stream with ID: 1782137448537-0
[2026-06-22 19:40:48,601.601 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-22 19:40:48,606.606 INFO    ] Checking for system updates...
[2026-06-22 19:40:48,653.653 INFO    ] 200
[2026-06-22 19:40:48,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:40:48,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:40:48,723.723 INFO    ] No update needed
[2026-06-22 19:40:48,767.767 INFO    ] Checking for camera pi updates...
[2026-06-22 19:40:48,825.825 INFO    ] 200
[2026-06-22 19:40:48,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:40:48,877.877 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:40:48,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:40:48,940.940 INFO    ] No camera update needed
[2026-06-22 19:40:48,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:40:48,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:40:48,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:40:48,971.971 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-22 19:40:48,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:40:51,023.023 INFO    ] ================================================
[2026-06-22 19:40:51,039.039 INFO    ] Launching Daemon at Mon Jun 22 19:40:51 IST 2026
[2026-06-22 19:40:51,049.049 INFO    ] ================================================
[2026-06-22 19:40:51,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:40:51
[2026-06-22 19:40:52,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:40:52,536.536 INFO    ] Initializing speech engine...
[2026-06-22 19:40:52,546.546 INFO    ] 2026-06-22 19:40:52
[2026-06-22 19:40:52,839.839 INFO    ] 2026-06-22 19:40:52
[2026-06-22 19:40:52,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:40:53,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:40:53,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:40:53,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:40:53,228.228 INFO    ] time= 22/06/2026 19:40:53
[2026-06-22 19:40:53,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:40:53,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:40:53,339.339 INFO    ] Found 2 existing command(s) in stream
[2026-06-22 19:40:53,382.382 INFO    ] Checking historical command: ID=1782137448537-0
[2026-06-22 19:40:53,441.441 INFO    ] process_and_cleanup_command: msg_id=1782137448537-0
[2026-06-22 19:40:53,488.488 INFO    ] is_command_expired: timestamp=2026-06-22T14:10:48.493928Z, expiry=30s
[2026-06-22 19:40:53,648.648 INFO    ] Command removed from stream: 1782137448537-0. returning for processing...
[2026-06-22 19:40:53,689.689 INFO    ] ***** get_valid_command
[2026-06-22 19:40:53,721.721 INFO    ] {'message': 'start-order success', 'message_type': 'command_response', 'metadata_order_id': 'TM06202507260622194003535', 'imei': 'TM06202507', 'timestamp': '2026-06-22T14:10:48.493928Z', 'status': 'success', 'metadata_request_id': 'start-order-1782137447383-jn65fusnh'}
[2026-06-22 19:40:53,765.765 INFO    ] Checking historical command: ID=1782137450960-0
[2026-06-22 19:40:53,814.814 INFO    ] process_and_cleanup_command: msg_id=1782137450960-0
[2026-06-22 19:40:53,826.826 INFO    ] is_command_expired: timestamp=2026-06-22T14:10:50.726Z, expiry=30s
[2026-06-22 19:40:53,982.982 INFO    ] Command removed from stream: 1782137450960-0. returning for processing...
[2026-06-22 19:40:54,016.016 INFO    ] ***** get_valid_command
[2026-06-22 19:40:54,037.037 INFO    ] {'timeout': '60', 'command': 'process-order', 'timestamp': '2026-06-22T14:10:50.726Z', 'data': '{"request_id":"process-order-1782137450726-xuuj9gdka","orderId":"TM06202507260622194003535","is_vending":false,"accessCode":"62097782"}', 'source': 'webapp'}
[2026-06-22 19:40:54,040.040 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1782137450726-xuuj9gdka', 'is_vending': False, 'orderId': 'TM06202507260622194003535', 'accessCode': '62097782'}
[2026-06-22 19:40:54,053.053 INFO    ] Handling process order...
[2026-06-22 19:40:54,056.056 INFO    ] Processing process-order command...
[2026-06-22 19:40:54,059.059 INFO    ] 🔍 Lock file Order ID: TM06202507260622194003535, TS: 2026-06-22 19:40:48
[2026-06-22 19:40:54,073.073 INFO    ] ✅ Order lock valid for TM06202507260622194003535
[2026-06-22 19:40:54,101.101 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-22 19:40:54,163.163 INFO    ] processing access code 62097782 for order TM06202507260622194003535
[2026-06-22 19:40:54,219.219 INFO    ] 🔍 Lock file Order ID: TM06202507260622194003535, TS: 2026-06-22 19:40:48
[2026-06-22 19:40:54,227.227 INFO    ] ✅ Order lock valid for TM06202507260622194003535
[2026-06-22 19:40:54,235.235 INFO    ] 2026-06-22 19:40:54
[2026-06-22 19:40:54,300.300 INFO    ] 200
[2026-06-22 19:40:54,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:40:54,359.359 INFO    ] 62097782
[2026-06-22 19:40:54,365.365 INFO    ] 2026-06-22 19:40:54
[2026-06-22 19:40:54,370.370 INFO    ] session id :236474614
[2026-06-22 19:40:54,375.375 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=62097782&imei=TM06202507&session_id=236474614
[2026-06-22 19:40:55,146.146 INFO    ] 200
[2026-06-22 19:40:55,152.152 INFO    ] {"data": {"mobile": "8884666057", "order_id": "TM06202507260622194003535", "access_code": "62097782", "bill_amount": "70.0", "proposed_sku_json": [{"tray_id": "14", "qty": 1, "mrp": "30", "door_id": "1", "name": "Farmely Panchmeva 21gm", "sku_total": 30, "image_url": "https://images.tinymart.in/product/4500668-1144.jpg", "offer_desc": "", "unit_price": 30, "skuid": "4500668", "offer_id": ""}, {"tray_id": "45", "qty": 1, "mrp": "40", "door_id": "2", "name": "Rite Bite Sports Bar 40gm", "sku_total": 40, "image_url": "https://images.tinymart.in/product/4500669-3919.webp", "offer_desc": "", "unit_price": 40, "skuid": "4500669", "offer_id": ""}], "invoice_bill": "70.0"}, "msg": "Order Data", "status": true, "rstatus": true}
[2026-06-22 19:40:55,163.163 INFO    ] 70
[2026-06-22 19:40:55,168.168 INFO    ] TM06202507260622194003535
[2026-06-22 19:40:55,174.174 INFO    ] 8884666057
[2026-06-22 19:40:55,181.181 INFO    ] 2026-06-22 19:40:55
[2026-06-22 19:40:55,186.186 INFO    ] Door Opening for user mobile ending with  six zero five seven 
[2026-06-22 19:40:55,192.192 INFO    ] Door Opening for user mobile ending with  six zero five seven 
[2026-06-22 19:40:55,197.197 INFO    ] 7a6964012b7814a4f2a2598acbc05824
[2026-06-22 19:40:55,203.203 INFO    ] 2026-06-22 19:40:55
[2026-06-22 19:40:55,207.207 INFO    ] playing audio file
[2026-06-22 19:40:55,227.227 INFO    ] 2026-06-22 19:40:55
[2026-06-22 19:40:55,233.233 INFO    ] 2026-06-22 19:40:55
[2026-06-22 19:40:55,239.239 INFO    ] publish_status: order_id=TM06202507260622194003535
[2026-06-22 19:40:55,245.245 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622194003535
[2026-06-22 19:40:55,373.373 INFO    ] [publish_status] Message added to stream with ID: 1782137455308-0
[2026-06-22 19:40:55,393.393 INFO    ] Published to order:TM06202507260622194003535: {'server_response': '{"rstatus": true, "status": true, "data": {"order_id": "TM06202507260622194003535", "access_code": "62097782", "bill_amount": "70.0", "proposed_sku_json": [{"mrp": "30", "name": "Farmely Panchmeva 21gm", "door_id": "1", "tray_id": "14", "qty": 1, "offer_desc": "", "sku_total": 30, "skuid": "4500668", "image_url": "https://images.tinymart.in/product/4500668-1144.jpg", "offer_id": "", "unit_price": 30}, {"mrp": "40", "name": "Rite Bite Sports Bar 40gm", "door_id": "2", "tray_id": "45", "qty": 1, "offer_desc": "", "sku_total": 40, "skuid": "4500669", "image_url": "https://images.tinymart.in/product/4500669-3919.webp", "offer_id": "", "unit_price": 40}], "invoice_bill": "70.0", "mobile": "8884666057"}, "msg": "Order Data"}', 'timestamp': '2026-06-22T14:10:55.235795Z', 'order_id': 'TM06202507260622194003535', 'server_status': 'order-started'} (ID: 1782137455308-0)
[2026-06-22 19:40:55,962.962 INFO    ] {'server_response': {'rstatus': True, 'status': True, 'data': {'order_id': 'TM06202507260622194003535', 'access_code': '62097782', 'bill_amount': '70.0', 'proposed_sku_json': [{'mrp': '30', 'name': 'Farmely Panchmeva 21gm', 'door_id': '1', 'tray_id': '14', 'qty': 1, 'offer_desc': '', 'sku_total': 30, 'skuid': '4500668', 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'offer_id': '', 'unit_price': 30}, {'mrp': '40', 'name': 'Rite Bite Sports Bar 40gm', 'door_id': '2', 'tray_id': '45', 'qty': 1, 'offer_desc': '', 'sku_total': 40, 'skuid': '4500669', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'offer_id': '', 'unit_price': 40}], 'invoice_bill': '70.0', 'mobile': '8884666057'}, 'msg': 'Order Data'}, 'order_id': 'TM06202507260622194003535', 'server_status': 'order-started'}
[2026-06-22 19:40:55,992.992 INFO    ] 200
[2026-06-22 19:40:56,051.051 INFO    ] {"data":{"server_response":{"rstatus":true,"status":true,"data":{"order_id":"TM06202507260622194003535","access_code":"62097782","bill_amount":"70.0","proposed_sku_json":[{"mrp":"30","name":"Farmely Panchmeva 21gm","door_id":"1","tray_id":"14","qty":1,"offer_desc":"","sku_total":30,"skuid":"4500668","image_url":"https:\/\/images.tinymart.in\/product\/4500668-1144.jpg","offer_id":"","unit_price":30},{"mrp":"40","name":"Rite Bite Sports Bar 40gm","door_id":"2","tray_id":"45","qty":1,"offer_desc":"","sku_total":40,"skuid":"4500669","image_url":"https:\/\/images.tinymart.in\/product\/4500669-3919.webp","offer_id":"","unit_price":40}],"invoice_bill":"70.0","mobile":"8884666057"},"msg":"Order Data"},"order_id":"TM06202507260622194003535","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 19:40:56,100.100 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'rstatus': True, 'status': True, 'data': {'order_id': 'TM06202507260622194003535', 'invoice_bill': '70.0', 'bill_amount': '70.0', 'proposed_sku_json': [{'mrp': '30', 'name': 'Farmely Panchmeva 21gm', 'door_id': '1', 'tray_id': '14', 'qty': 1, 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'sku_total': 30, 'skuid': '4500668', 'offer_id': '', 'unit_price': 30}, {'mrp': '40', 'name': 'Rite Bite Sports Bar 40gm', 'door_id': '2', 'tray_id': '45', 'qty': 1, 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'sku_total': 40, 'skuid': '4500669', 'offer_id': '', 'unit_price': 40}], 'access_code': '62097782', 'mobile': '8884666057'}, 'msg': 'Order Data'}, 'order_id': 'TM06202507260622194003535', 'server_status': 'order-started'}}
[2026-06-22 19:40:56,120.120 INFO    ] 2026-06-22 19:40:56
[2026-06-22 19:40:56,182.182 INFO    ] 200
[2026-06-22 19:40:56,185.185 INFO    ] True
[2026-06-22 19:40:56,323.323 INFO    ] 200
[2026-06-22 19:40:56,325.325 INFO    ] {"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": ""}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 19:40:56,330.330 INFO    ] {'rstatus': False, 'voiceNote': 'Please Wait', 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': ''}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False'}
[2026-06-22 19:40:56,332.332 INFO    ] *** process_order ***
[2026-06-22 19:40:57,518.518 INFO    ] 200
[2026-06-22 19:40:57,520.520 INFO    ] {"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": ""}, "rstatus": true, "delay": 0, "status": "True", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 19:40:57,523.523 INFO    ] {'rstatus': True, 'voiceNote': 'Please Wait', 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': ''}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True'}
[2026-06-22 19:40:57,525.525 INFO    ] *** process_order ***
[2026-06-22 19:40:57,528.528 INFO    ] publish_status: order_id=TM06202507260622194003535
[2026-06-22 19:40:57,531.531 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622194003535
[2026-06-22 19:40:57,633.633 INFO    ] [publish_status] Message added to stream with ID: 1782137457598-0
[2026-06-22 19:40:57,635.635 INFO    ] Published to order:TM06202507260622194003535: {'server_response': '{"rstatus": true, "voiceNote": "Door is open...", "SectionStatus": {"SubHeader": "You can pull the door now.", "UI_Header": "", "Header": " Your order is under process  ", "Note": ""}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "delay": 0, "SectionMain": {"Header": "Processing Order"}, "status": "True"}', 'order_id': 'TM06202507260622194003535', 'server_status': 'doorOpened'} (ID: 1782137457598-0)
[2026-06-22 19:40:58,704.704 INFO    ] 2026-06-22 19:40:58
[2026-06-22 19:40:58,708.708 INFO    ] publish_status: order_id=TM06202507260622194003535
[2026-06-22 19:40:58,712.712 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622194003535
[2026-06-22 19:40:58,772.772 INFO    ] [publish_status] Message added to stream with ID: 1782137458748-0
[2026-06-22 19:40:58,775.775 INFO    ] Published to order:TM06202507260622194003535: {'server_response': '{"rstatus": true, "voiceNote": "Please Wait", "SectionStatus": {"SubHeader": "Please wait while we process your order", "UI_Header": "", "Header": " Your order is under process  ", "Note": ""}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "delay": 0, "SectionMain": {"Header": "Processing Order"}, "status": "True"}', 'timestamp': '2026-06-22T14:10:58.705960Z', 'order_id': 'TM06202507260622194003535', 'server_status': 'processOrder'} (ID: 1782137458748-0)
[2026-06-22 19:40:58,912.912 INFO    ] {'server_response': {'rstatus': True, 'voiceNote': 'Please Wait', 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': ''}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True'}, 'order_id': 'TM06202507260622194003535', 'server_status': 'processOrder'}
[2026-06-22 19:40:58,914.914 INFO    ] 200
[2026-06-22 19:40:58,917.917 INFO    ] {"data":{"server_response":{"rstatus":true,"voiceNote":"Please Wait","SectionStatus":{"SubHeader":"Please wait while we process your order","UI_Header":"","Header":" Your order is under process  ","Note":""},"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"delay":0,"SectionMain":{"Header":"Processing Order"},"status":"true"},"order_id":"TM06202507260622194003535","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 19:40:58,919.919 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'rstatus': True, 'voiceNote': 'Please Wait', 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': ''}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'true'}, 'order_id': 'TM06202507260622194003535', 'server_status': 'processOrder'}}
[2026-06-22 19:40:58,922.922 INFO    ] 2026-06-22 19:40:58
[2026-06-22 19:40:58,925.925 INFO    ] None
[2026-06-22 19:40:58,927.927 INFO    ] Opening Door now
[2026-06-22 19:40:58,931.931 INFO    ] Opening Door now
[2026-06-22 19:40:58,933.933 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-22 19:40:58,936.936 INFO    ] 2026-06-22 19:40:58
[2026-06-22 19:40:58,939.939 INFO    ] playing audio file
[2026-06-22 19:40:58,957.957 INFO    ] 2026-06-22 19:40:58
[2026-06-22 19:40:58,960.960 INFO    ] 2026-06-22 19:40:58
[2026-06-22 19:41:02,264.264 INFO    ] 200
[2026-06-22 19:41:02,267.267 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Door 1 is open now"}
[2026-06-22 19:41:02,271.271 INFO    ] {'rstatus': False, 'voiceNote': 'Door 1 is open now', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'skus': [{'name': 'Farmely Panchmeva 21gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-22 19:41:05,321.321 INFO    ] 200
[2026-06-22 19:41:05,324.324 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 19:41:05,327.327 INFO    ] {'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'skus': [{'name': 'Farmely Panchmeva 21gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-22 19:41:08,425.425 INFO    ] 200
[2026-06-22 19:41:08,428.428 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 19:41:08,431.431 INFO    ] Please close door 1
[2026-06-22 19:41:08,434.434 INFO    ] Please close door 1
[2026-06-22 19:41:08,437.437 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-22 19:41:08,440.440 INFO    ] 2026-06-22 19:41:08
[2026-06-22 19:41:08,443.443 INFO    ] playing audio file
[2026-06-22 19:41:08,460.460 INFO    ] 2026-06-22 19:41:08
[2026-06-22 19:41:08,463.463 INFO    ] publish_status: order_id=TM06202507260622194003535
[2026-06-22 19:41:08,466.466 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622194003535
[2026-06-22 19:41:08,548.548 INFO    ] [publish_status] Message added to stream with ID: 1782137468518-0
[2026-06-22 19:41:08,551.551 INFO    ] Published to order:TM06202507260622194003535: {'server_response': '{"rstatus": false, "voiceNote": "Please close door 1", "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products"}, "SectionSKU": {"skus": [{"name": "Farmely Panchmeva 21gm", "qty": 1}], "Header": "Pick the below items from the door"}, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False"}', 'timestamp': '2026-06-22T14:11:08.461954Z', 'order_id': 'TM06202507260622194003535', 'server_status': 'OrderStatus'} (ID: 1782137468518-0)
[2026-06-22 19:41:09,695.695 INFO    ] {'server_response': {'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'skus': [{'name': 'Farmely Panchmeva 21gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}, 'order_id': 'TM06202507260622194003535', 'server_status': 'OrderStatus'}
[2026-06-22 19:41:09,697.697 INFO    ] 200
[2026-06-22 19:41:09,700.700 INFO    ] {"data":{"server_response":{"rstatus":false,"voiceNote":"Please close door 1","SectionStatus":{"SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Header":"Please Close Door 1","Note":"Please Close the door after picking up products"},"SectionSKU":{"skus":[{"name":"Farmely Panchmeva 21gm","qty":1}],"Header":"Pick the below items from the door"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false"},"order_id":"TM06202507260622194003535","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 19:41:09,703.703 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'skus': [{'name': 'Farmely Panchmeva 21gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false'}, 'order_id': 'TM06202507260622194003535', 'server_status': 'OrderStatus'}}
[2026-06-22 19:41:09,707.707 INFO    ] {'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'skus': [{'name': 'Farmely Panchmeva 21gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-22 19:41:12,765.765 INFO    ] 200
[2026-06-22 19:41:12,768.768 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 19:41:12,770.770 INFO    ] {'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'skus': [{'name': 'Farmely Panchmeva 21gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-22 19:41:15,867.867 INFO    ] 200
[2026-06-22 19:41:15,870.870 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 19:41:15,873.873 INFO    ] {'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'skus': [{'name': 'Farmely Panchmeva 21gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-22 19:41:18,947.947 INFO    ] 200
[2026-06-22 19:41:18,955.955 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 19:41:18,958.958 INFO    ] Please close door 1
[2026-06-22 19:41:18,961.961 INFO    ] Please close door 1
[2026-06-22 19:41:18,963.963 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-22 19:41:18,966.966 INFO    ] 2026-06-22 19:41:18
[2026-06-22 19:41:18,969.969 INFO    ] playing audio file
[2026-06-22 19:41:18,987.987 INFO    ] 2026-06-22 19:41:18
[2026-06-22 19:41:18,991.991 INFO    ] publish_status: order_id=TM06202507260622194003535
[2026-06-22 19:41:18,993.993 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622194003535
[2026-06-22 19:41:19,131.131 INFO    ] [publish_status] Message added to stream with ID: 1782137479088-0
[2026-06-22 19:41:19,134.134 INFO    ] Published to order:TM06202507260622194003535: {'server_response': '{"rstatus": false, "voiceNote": "Please close door 1", "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products"}, "SectionSKU": {"skus": [{"name": "Farmely Panchmeva 21gm", "qty": 1}], "Header": "Pick the below items from the door"}, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False"}', 'timestamp': '2026-06-22T14:11:18.989179Z', 'order_id': 'TM06202507260622194003535', 'server_status': 'OrderStatus'} (ID: 1782137479088-0)
[2026-06-22 19:41:19,862.862 INFO    ] {'server_response': {'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'skus': [{'name': 'Farmely Panchmeva 21gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}, 'order_id': 'TM06202507260622194003535', 'server_status': 'OrderStatus'}
[2026-06-22 19:41:19,865.865 INFO    ] 200
[2026-06-22 19:41:19,868.868 INFO    ] {"data":{"server_response":{"rstatus":false,"voiceNote":"Please close door 1","SectionStatus":{"SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Header":"Please Close Door 1","Note":"Please Close the door after picking up products"},"SectionSKU":{"skus":[{"name":"Farmely Panchmeva 21gm","qty":1}],"Header":"Pick the below items from the door"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false"},"order_id":"TM06202507260622194003535","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 19:41:19,872.872 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'skus': [{'name': 'Farmely Panchmeva 21gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false'}, 'order_id': 'TM06202507260622194003535', 'server_status': 'OrderStatus'}}
[2026-06-22 19:41:19,875.875 INFO    ] {'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'skus': [{'name': 'Farmely Panchmeva 21gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-22 19:41:22,933.933 INFO    ] 200
[2026-06-22 19:41:22,936.936 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 19:41:22,939.939 INFO    ] {'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'skus': [{'name': 'Farmely Panchmeva 21gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-22 19:41:26,183.183 INFO    ] 200
[2026-06-22 19:41:26,187.187 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 19:41:26,190.190 INFO    ] {'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'SectionSKU': {'skus': [{'name': 'Farmely Panchmeva 21gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-22 19:41:29,257.257 INFO    ] 200
[2026-06-22 19:41:29,260.260 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Panchmeva 21gm"}]}, "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"}, "rstatus": false, "delay": 1000, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Close"}, "voiceNote": "Door 1 is closed now"}
[2026-06-22 19:41:29,263.263 INFO    ] Door 1 is closed now
[2026-06-22 19:41:29,266.266 INFO    ] Door 1 is closed now
[2026-06-22 19:41:29,269.269 INFO    ] 79348d1518d22771c2b1ed3008436097
[2026-06-22 19:41:29,272.272 INFO    ] 2026-06-22 19:41:29
[2026-06-22 19:41:29,274.274 INFO    ] playing audio file
[2026-06-22 19:41:29,294.294 INFO    ] 2026-06-22 19:41:29
[2026-06-22 19:41:29,298.298 INFO    ] publish_status: order_id=TM06202507260622194003535
[2026-06-22 19:41:29,301.301 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622194003535
[2026-06-22 19:41:29,383.383 INFO    ] [publish_status] Message added to stream with ID: 1782137489358-0
[2026-06-22 19:41:29,386.386 INFO    ] Published to order:TM06202507260622194003535: {'server_response': '{"rstatus": false, "voiceNote": "Door 1 is closed now", "SectionStatus": {"SubHeader": "Please wait for invoice to generate", "UI_Header": "DOOR 1\\nIS \\nCLOSED \\nNOW", "Header": "Door 1 is closed now", "Note": "If any due amount, clear at https://go.tinymart.in"}, "SectionSKU": {"skus": [{"name": "Farmely Panchmeva 21gm", "qty": 1}], "Header": "Pick the below items from the door"}, "delay": 1000, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Close"}, "status": "False"}', 'timestamp': '2026-06-22T14:11:29.296814Z', 'order_id': 'TM06202507260622194003535', 'server_status': 'OrderStatus'} (ID: 1782137489358-0)
[2026-06-22 19:41:29,910.910 INFO    ] {'server_response': {'rstatus': False, 'voiceNote': 'Door 1 is closed now', 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': 'DOOR 1\nIS \nCLOSED \nNOW', 'Header': 'Door 1 is closed now', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'SectionSKU': {'skus': [{'name': 'Farmely Panchmeva 21gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'delay': 1000, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Close'}, 'status': 'False'}, 'order_id': 'TM06202507260622194003535', 'server_status': 'OrderStatus'}
[2026-06-22 19:41:29,913.913 INFO    ] 200
[2026-06-22 19:41:29,915.915 INFO    ] {"data":{"server_response":{"rstatus":false,"voiceNote":"Door 1 is closed now","SectionStatus":{"SubHeader":"Please wait for invoice to generate","UI_Header":"DOOR 1\nIS \nCLOSED \nNOW","Header":"Door 1 is closed now","Note":"If any due amount, clear at https:\/\/go.tinymart.in"},"SectionSKU":{"skus":[{"name":"Farmely Panchmeva 21gm","qty":1}],"Header":"Pick the below items from the door"},"delay":1000,"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Close"},"status":"false"},"order_id":"TM06202507260622194003535","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 19:41:29,918.918 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'rstatus': False, 'voiceNote': 'Door 1 is closed now', 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': 'DOOR 1\nIS \nCLOSED \nNOW', 'Header': 'Door 1 is closed now', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'SectionSKU': {'skus': [{'name': 'Farmely Panchmeva 21gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'delay': 1000, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Close'}, 'status': 'false'}, 'order_id': 'TM06202507260622194003535', 'server_status': 'OrderStatus'}}
[2026-06-22 19:41:29,920.920 INFO    ] {'rstatus': False, 'voiceNote': 'Door 1 is closed now', 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': 'DOOR 1\nIS \nCLOSED \nNOW', 'Header': 'Door 1 is closed now', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'SectionSKU': {'skus': [{'name': 'Farmely Panchmeva 21gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'delay': 1000, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Close'}, 'status': 'False'}
[2026-06-22 19:41:33,022.022 INFO    ] 200
[2026-06-22 19:41:33,025.025 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Rite Bite Sports Bar 40gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Door 2 is open now"}
[2026-06-22 19:41:33,029.029 INFO    ] {'rstatus': False, 'voiceNote': 'Door 2 is open now', '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'}, 'SectionSKU': {'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-22 19:41:36,095.095 INFO    ] 200
[2026-06-22 19:41:36,102.102 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Rite Bite Sports Bar 40gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2"}
[2026-06-22 19:41:36,109.109 INFO    ] {'rstatus': False, 'voiceNote': 'Please close door 2', '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'}, 'SectionSKU': {'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-22 19:41:39,185.185 INFO    ] 200
[2026-06-22 19:41:39,188.188 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Rite Bite Sports Bar 40gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2"}
[2026-06-22 19:41:39,191.191 INFO    ] Please close door 2
[2026-06-22 19:41:39,194.194 INFO    ] Please close door 2
[2026-06-22 19:41:39,199.199 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-22 19:41:39,202.202 INFO    ] 2026-06-22 19:41:39
[2026-06-22 19:41:39,211.211 INFO    ] playing audio file
[2026-06-22 19:41:39,233.233 INFO    ] 2026-06-22 19:41:39
[2026-06-22 19:41:39,237.237 INFO    ] publish_status: order_id=TM06202507260622194003535
[2026-06-22 19:41:39,240.240 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622194003535
[2026-06-22 19:41:39,318.318 INFO    ] [publish_status] Message added to stream with ID: 1782137499293-0
[2026-06-22 19:41:39,320.320 INFO    ] Published to order:TM06202507260622194003535: {'server_response': '{"rstatus": false, "voiceNote": "Please close door 2", "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"}, "SectionSKU": {"skus": [{"name": "Rite Bite Sports Bar 40gm", "qty": 1}], "Header": "Pick the below items from the door"}, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False"}', 'timestamp': '2026-06-22T14:11:39.235835Z', 'order_id': 'TM06202507260622194003535', 'server_status': 'OrderStatus'} (ID: 1782137499293-0)
[2026-06-22 19:41:39,967.967 INFO    ] {'server_response': {'rstatus': False, 'voiceNote': 'Please close door 2', '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'}, 'SectionSKU': {'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}, 'order_id': 'TM06202507260622194003535', 'server_status': 'OrderStatus'}
[2026-06-22 19:41:39,970.970 INFO    ] 200
[2026-06-22 19:41:39,973.973 INFO    ] {"data":{"server_response":{"rstatus":false,"voiceNote":"Please close door 2","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"},"SectionSKU":{"skus":[{"name":"Rite Bite Sports Bar 40gm","qty":1}],"Header":"Pick the below items from the door"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false"},"order_id":"TM06202507260622194003535","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 19:41:39,977.977 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'rstatus': False, 'voiceNote': 'Please close door 2', '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'}, 'SectionSKU': {'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false'}, 'order_id': 'TM06202507260622194003535', 'server_status': 'OrderStatus'}}
[2026-06-22 19:41:39,980.980 INFO    ] {'rstatus': False, 'voiceNote': 'Please close door 2', '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'}, 'SectionSKU': {'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-22 19:41:43,048.048 INFO    ] 200
[2026-06-22 19:41:43,051.051 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Rite Bite Sports Bar 40gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2"}
[2026-06-22 19:41:43,055.055 INFO    ] {'rstatus': False, 'voiceNote': 'Please close door 2', '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'}, 'SectionSKU': {'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-22 19:41:46,154.154 INFO    ] 200
[2026-06-22 19:41:46,157.157 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Rite Bite Sports Bar 40gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2"}
[2026-06-22 19:41:46,160.160 INFO    ] {'rstatus': False, 'voiceNote': 'Please close door 2', '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'}, 'SectionSKU': {'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-22 19:41:49,211.211 INFO    ] 200
[2026-06-22 19:41:49,213.213 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Rite Bite Sports Bar 40gm"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2"}
[2026-06-22 19:41:49,216.216 INFO    ] Please close door 2
[2026-06-22 19:41:49,219.219 INFO    ] Please close door 2
[2026-06-22 19:41:49,221.221 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-22 19:41:49,228.228 INFO    ] 2026-06-22 19:41:49
[2026-06-22 19:41:49,230.230 INFO    ] playing audio file
[2026-06-22 19:41:49,247.247 INFO    ] 2026-06-22 19:41:49
[2026-06-22 19:41:49,251.251 INFO    ] publish_status: order_id=TM06202507260622194003535
[2026-06-22 19:41:49,253.253 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622194003535
[2026-06-22 19:41:49,358.358 INFO    ] [publish_status] Message added to stream with ID: 1782137509323-0
[2026-06-22 19:41:49,361.361 INFO    ] Published to order:TM06202507260622194003535: {'server_response': '{"rstatus": false, "voiceNote": "Please close door 2", "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"}, "SectionSKU": {"skus": [{"name": "Rite Bite Sports Bar 40gm", "qty": 1}], "Header": "Pick the below items from the door"}, "error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionMain": {"Header": "Door Open"}, "status": "False"}', 'timestamp': '2026-06-22T14:11:49.249485Z', 'order_id': 'TM06202507260622194003535', 'server_status': 'OrderStatus'} (ID: 1782137509323-0)
[2026-06-22 19:41:49,971.971 INFO    ] {'server_response': {'rstatus': False, 'voiceNote': 'Please close door 2', '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'}, 'SectionSKU': {'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}, 'order_id': 'TM06202507260622194003535', 'server_status': 'OrderStatus'}
[2026-06-22 19:41:49,973.973 INFO    ] 200
[2026-06-22 19:41:49,976.976 INFO    ] {"data":{"server_response":{"rstatus":false,"voiceNote":"Please close door 2","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"},"SectionSKU":{"skus":[{"name":"Rite Bite Sports Bar 40gm","qty":1}],"Header":"Pick the below items from the door"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"SectionMain":{"Header":"Door Open"},"status":"false"},"order_id":"TM06202507260622194003535","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 19:41:49,979.979 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'rstatus': False, 'voiceNote': 'Please close door 2', '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'}, 'SectionSKU': {'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false'}, 'order_id': 'TM06202507260622194003535', 'server_status': 'OrderStatus'}}
[2026-06-22 19:41:49,981.981 INFO    ] {'rstatus': False, 'voiceNote': 'Please close door 2', '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'}, 'SectionSKU': {'skus': [{'name': 'Rite Bite Sports Bar 40gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-06-22 19:41:53,032.032 INFO    ] 200
[2026-06-22 19:41:53,034.034 INFO    ] {"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"}, "rstatus": true, "delay": 100, "status": "True", "SectionMain": {"Header": "Door Closed"}, "voiceNote": "Transaction Completed"}
[2026-06-22 19:41:53,037.037 INFO    ] {'rstatus': True, 'voiceNote': 'Transaction Completed', 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True'}
[2026-06-22 19:41:53,039.039 INFO    ] 2026-06-22 19:41:53
[2026-06-22 19:41:53,042.042 INFO    ] Order Completed 
[2026-06-22 19:41:53,044.044 INFO    ] Order Completed 
[2026-06-22 19:41:53,046.046 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-22 19:41:53,049.049 INFO    ] 2026-06-22 19:41:53
[2026-06-22 19:41:53,051.051 INFO    ] playing audio file
[2026-06-22 19:41:53,069.069 INFO    ] 2026-06-22 19:41:53
[2026-06-22 19:41:53,072.072 INFO    ] {'rstatus': True, 'voiceNote': 'Transaction Completed', 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True'}
[2026-06-22 19:41:53,075.075 INFO    ] 2026-06-22 19:41:53
[2026-06-22 19:41:53,456.456 INFO    ] 200
[2026-06-22 19:41:53,458.458 INFO    ] {"skus": [{"tray_id": "14", "qty": 1, "mrp": "30", "door_id": "", "name": "Farmely Panchmeva 21gm per peice", "sku_total": 30.0, "image_url": "https://images.tinymart.in/product/4500668-1144.jpg", "unit_price": "30", "skuid": "4500668"}, {"tray_id": "16", "qty": 2, "mrp": "40", "door_id": "", "name": "Farmely Classic date Bites 20gm per peice", "sku_total": 80.0, "image_url": "https://images.tinymart.in/product/4500667-4339.webp", "unit_price": "40", "skuid": "4500667"}, {"tray_id": "26", "qty": 2, "mrp": "20", "door_id": "", "name": "Bingo Mad Angles  Masala, 60g per peice", "sku_total": 40.0, "image_url": "https://images.tinymart.in/product/4500445-7191.jpg", "unit_price": "20", "skuid": "4500445"}, {"tray_id": "45", "qty": 2, "mrp": "40", "door_id": "", "name": "Rite Bite Sports Bar 40gm per peice", "sku_total": 80.0, "image_url": "https://images.tinymart.in/product/4500669-3919.webp", "unit_price": "40", "skuid": "4500669"}], "anomaly": 0, "rstatus": true, "orderId": "TM06202507260622194003535", "logic": "WBL", "total_amount": 230.0, "res": "True"}
[2026-06-22 19:41:53,462.462 INFO    ] {'rstatus': True, 'skus': [{'mrp': '30', 'name': 'Farmely Panchmeva 21gm per peice', 'door_id': '', 'tray_id': '14', 'qty': 1, 'sku_total': 30.0, 'skuid': '4500668', 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'unit_price': '30'}, {'mrp': '40', 'name': 'Farmely Classic date Bites 20gm per peice', 'door_id': '', 'tray_id': '16', 'qty': 2, 'sku_total': 80.0, 'skuid': '4500667', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'unit_price': '40'}, {'mrp': '20', 'name': 'Bingo Mad Angles  Masala, 60g per peice', 'door_id': '', 'tray_id': '26', 'qty': 2, 'sku_total': 40.0, 'skuid': '4500445', 'image_url': 'https://images.tinymart.in/product/4500445-7191.jpg', 'unit_price': '20'}, {'mrp': '40', 'name': 'Rite Bite Sports Bar 40gm per peice', 'door_id': '', 'tray_id': '45', 'qty': 2, 'sku_total': 80.0, 'skuid': '4500669', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'unit_price': '40'}], 'res': 'True', 'total_amount': 230.0, 'anomaly': 0, 'orderId': 'TM06202507260622194003535', 'logic': 'WBL'}
[2026-06-22 19:41:53,465.465 INFO    ] {'rstatus': True, 'skus': [{'mrp': '30', 'name': 'Farmely Panchmeva 21gm per peice', 'door_id': '', 'tray_id': '14', 'qty': 1, 'sku_total': 30.0, 'skuid': '4500668', 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'unit_price': '30'}, {'mrp': '40', 'name': 'Farmely Classic date Bites 20gm per peice', 'door_id': '', 'tray_id': '16', 'qty': 2, 'sku_total': 80.0, 'skuid': '4500667', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'unit_price': '40'}, {'mrp': '20', 'name': 'Bingo Mad Angles  Masala, 60g per peice', 'door_id': '', 'tray_id': '26', 'qty': 2, 'sku_total': 40.0, 'skuid': '4500445', 'image_url': 'https://images.tinymart.in/product/4500445-7191.jpg', 'unit_price': '20'}, {'mrp': '40', 'name': 'Rite Bite Sports Bar 40gm per peice', 'door_id': '', 'tray_id': '45', 'qty': 2, 'sku_total': 80.0, 'skuid': '4500669', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'unit_price': '40'}], 'res': 'True', 'total_amount': 230.0, 'anomaly': 0, 'orderId': 'TM06202507260622194003535', 'logic': 'WBL'}
[2026-06-22 19:41:53,468.468 INFO    ] 2026-06-22 19:41:53
[2026-06-22 19:41:53,471.471 INFO    ] 2026-06-22 19:41:53
[2026-06-22 19:41:53,473.473 INFO    ] 70
[2026-06-22 19:41:53,476.476 INFO    ] 2026-06-22 19:41:53
[2026-06-22 19:41:53,479.479 INFO    ] 2026-06-22 19:41:53
[2026-06-22 19:41:53,482.482 INFO    ]  You had Picked Excess of 160 Your Bill Amount is 230
[2026-06-22 19:41:53,484.484 INFO    ]  You had Picked Excess of 160 Your Bill Amount is 230
[2026-06-22 19:41:53,487.487 INFO    ] f1806eaed5e5e86a6ef6d5059ebabb13
[2026-06-22 19:41:53,490.490 INFO    ] 2026-06-22 19:41:53
[2026-06-22 19:41:53,492.492 INFO    ] creating audio file
[2026-06-22 19:41:53,566.566 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-22 19:41:54,322.322 INFO    ] gTTS API call completed successfully
[2026-06-22 19:41:55,900.900 INFO    ] 2026-06-22 19:41:55
[2026-06-22 19:41:55,903.903 INFO    ] playing audio file
[2026-06-22 19:41:55,923.923 INFO    ] 2026-06-22 19:41:55
[2026-06-22 19:41:55,926.926 INFO    ] 2026-06-22 19:41:55
[2026-06-22 19:41:55,930.930 INFO    ] publish_status: order_id=TM06202507260622194003535
[2026-06-22 19:41:55,933.933 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622194003535
[2026-06-22 19:41:56,093.093 INFO    ] [publish_status] Message added to stream with ID: 1782137516068-0
[2026-06-22 19:41:56,097.097 INFO    ] Published to order:TM06202507260622194003535: {'server_response': '{"rstatus": true, "skus": [{"mrp": "30", "name": "Farmely Panchmeva 21gm per peice", "door_id": "", "tray_id": "14", "qty": 1, "sku_total": 30.0, "skuid": "4500668", "image_url": "https://images.tinymart.in/product/4500668-1144.jpg", "unit_price": "30"}, {"mrp": "40", "name": "Farmely Classic date Bites 20gm per peice", "door_id": "", "tray_id": "16", "qty": 2, "sku_total": 80.0, "skuid": "4500667", "image_url": "https://images.tinymart.in/product/4500667-4339.webp", "unit_price": "40"}, {"mrp": "20", "name": "Bingo Mad Angles  Masala, 60g per peice", "door_id": "", "tray_id": "26", "qty": 2, "sku_total": 40.0, "skuid": "4500445", "image_url": "https://images.tinymart.in/product/4500445-7191.jpg", "unit_price": "20"}, {"mrp": "40", "name": "Rite Bite Sports Bar 40gm per peice", "door_id": "", "tray_id": "45", "qty": 2, "sku_total": 80.0, "skuid": "4500669", "image_url": "https://images.tinymart.in/product/4500669-3919.webp", "unit_price": "40"}], "res": "True", "total_amount": 230.0, "anomaly": 0, "orderId": "TM06202507260622194003535", "logic": "WBL"}', 'timestamp': '2026-06-22T14:11:55.928467Z', 'order_id': 'TM06202507260622194003535', 'server_status': 'invoiceOrder'} (ID: 1782137516068-0)
[2026-06-22 19:41:57,172.172 INFO    ] {'server_response': {'rstatus': True, 'skus': [{'mrp': '30', 'name': 'Farmely Panchmeva 21gm per peice', 'door_id': '', 'tray_id': '14', 'qty': 1, 'sku_total': 30.0, 'skuid': '4500668', 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'unit_price': '30'}, {'mrp': '40', 'name': 'Farmely Classic date Bites 20gm per peice', 'door_id': '', 'tray_id': '16', 'qty': 2, 'sku_total': 80.0, 'skuid': '4500667', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'unit_price': '40'}, {'mrp': '20', 'name': 'Bingo Mad Angles  Masala, 60g per peice', 'door_id': '', 'tray_id': '26', 'qty': 2, 'sku_total': 40.0, 'skuid': '4500445', 'image_url': 'https://images.tinymart.in/product/4500445-7191.jpg', 'unit_price': '20'}, {'mrp': '40', 'name': 'Rite Bite Sports Bar 40gm per peice', 'door_id': '', 'tray_id': '45', 'qty': 2, 'sku_total': 80.0, 'skuid': '4500669', 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'unit_price': '40'}], 'res': 'True', 'total_amount': 230.0, 'anomaly': 0, 'orderId': 'TM06202507260622194003535', 'logic': 'WBL'}, 'order_id': 'TM06202507260622194003535', 'server_status': 'invoiceOrder'}
[2026-06-22 19:41:57,174.174 INFO    ] 200
[2026-06-22 19:41:57,176.176 INFO    ] {"data":{"server_response":{"rstatus":true,"skus":[{"mrp":"30","name":"Farmely Panchmeva 21gm per peice","door_id":"","tray_id":"14","qty":1,"sku_total":30,"skuid":"4500668","image_url":"https:\/\/images.tinymart.in\/product\/4500668-1144.jpg","unit_price":"30"},{"mrp":"40","name":"Farmely Classic date Bites 20gm per peice","door_id":"","tray_id":"16","qty":2,"sku_total":80,"skuid":"4500667","image_url":"https:\/\/images.tinymart.in\/product\/4500667-4339.webp","unit_price":"40"},{"mrp":"20","name":"Bingo Mad Angles  Masala, 60g per peice","door_id":"","tray_id":"26","qty":2,"sku_total":40,"skuid":"4500445","image_url":"https:\/\/images.tinymart.in\/product\/4500445-7191.jpg","unit_price":"20"},{"mrp":"40","name":"Rite Bite Sports Bar 40gm per peice","door_id":"","tray_id":"45","qty":2,"sku_total":80,"skuid":"4500669","image_url":"https:\/\/images.tinymart.in\/product\/4500669-3919.webp","unit_price":"40"}],"res":"true","total_amount":230,"anomaly":0,"orderId":"TM06202507260622194003535","logic":"WBL"},"order_id":"TM06202507260622194003535","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 19:41:57,180.180 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'rstatus': True, 'skus': [{'mrp': '30', 'name': 'Farmely Panchmeva 21gm per peice', 'door_id': '', 'tray_id': '14', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'sku_total': 30, 'skuid': '4500668', 'unit_price': '30'}, {'mrp': '40', 'name': 'Farmely Classic date Bites 20gm per peice', 'door_id': '', 'tray_id': '16', 'qty': 2, 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'sku_total': 80, 'skuid': '4500667', 'unit_price': '40'}, {'mrp': '20', 'name': 'Bingo Mad Angles  Masala, 60g per peice', 'door_id': '', 'tray_id': '26', 'qty': 2, 'image_url': 'https://images.tinymart.in/product/4500445-7191.jpg', 'sku_total': 40, 'skuid': '4500445', 'unit_price': '20'}, {'mrp': '40', 'name': 'Rite Bite Sports Bar 40gm per peice', 'door_id': '', 'tray_id': '45', 'qty': 2, 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'sku_total': 80, 'skuid': '4500669', 'unit_price': '40'}], 'res': 'true', 'total_amount': 230, 'anomaly': 0, 'orderId': 'TM06202507260622194003535', 'logic': 'WBL'}, 'order_id': 'TM06202507260622194003535', 'server_status': 'invoiceOrder'}}
[2026-06-22 19:41:57,183.183 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'rstatus': True, 'skus': [{'mrp': '30', 'name': 'Farmely Panchmeva 21gm per peice', 'door_id': '', 'tray_id': '14', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500668-1144.jpg', 'sku_total': 30, 'skuid': '4500668', 'unit_price': '30'}, {'mrp': '40', 'name': 'Farmely Classic date Bites 20gm per peice', 'door_id': '', 'tray_id': '16', 'qty': 2, 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'sku_total': 80, 'skuid': '4500667', 'unit_price': '40'}, {'mrp': '20', 'name': 'Bingo Mad Angles  Masala, 60g per peice', 'door_id': '', 'tray_id': '26', 'qty': 2, 'image_url': 'https://images.tinymart.in/product/4500445-7191.jpg', 'sku_total': 40, 'skuid': '4500445', 'unit_price': '20'}, {'mrp': '40', 'name': 'Rite Bite Sports Bar 40gm per peice', 'door_id': '', 'tray_id': '45', 'qty': 2, 'image_url': 'https://images.tinymart.in/product/4500669-3919.webp', 'sku_total': 80, 'skuid': '4500669', 'unit_price': '40'}], 'res': 'true', 'total_amount': 230, 'anomaly': 0, 'orderId': 'TM06202507260622194003535', 'logic': 'WBL'}, 'order_id': 'TM06202507260622194003535', 'server_status': 'invoiceOrder'}}
[2026-06-22 19:41:57,185.185 INFO    ] 2026-06-22 19:41:57
[2026-06-22 19:41:59,109.109 INFO    ] 200
[2026-06-22 19:41:59,111.111 INFO    ] {"orders_data_synced": [], "order_items": [], "orders_data": [], "orders_synced": [], "tray_synced": ["no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry"], "order_items_synced": [], "orders": [], "status": true, "tray_sync": []}
[2026-06-22 19:41:59,114.114 INFO    ] 2026-06-22 19:41:59
[2026-06-22 19:41:59,246.246 INFO    ] 200
[2026-06-22 19:41:59,248.248 INFO    ] True
[2026-06-22 19:41:59,251.251 INFO    ] cleanup_start_order_file_after_processing: order_id=TM06202507260622194003535
[2026-06-22 19:41:59,254.254 INFO    ] start order file deleted
[2026-06-22 19:41:59,257.257 INFO    ] Checking for system updates...
[2026-06-22 19:41:59,294.294 INFO    ] 200
[2026-06-22 19:41:59,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:41:59,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:41:59,352.352 INFO    ] No update needed
[2026-06-22 19:41:59,355.355 INFO    ] Checking for camera pi updates...
[2026-06-22 19:41:59,389.389 INFO    ] 200
[2026-06-22 19:41:59,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:41:59,432.432 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:41:59,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:41:59,547.547 INFO    ] No camera update needed
[2026-06-22 19:41:59,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:41:59,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:41:59,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:41:59,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:42:01,611.611 INFO    ] ================================================
[2026-06-22 19:42:01,669.669 INFO    ] Launching Daemon at Mon Jun 22 19:42:01 IST 2026
[2026-06-22 19:42:01,704.704 INFO    ] ================================================
[2026-06-22 19:42:02,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:42:02
[2026-06-22 19:42:03,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:42:03,430.430 INFO    ] Initializing speech engine...
[2026-06-22 19:42:03,439.439 INFO    ] 2026-06-22 19:42:03
[2026-06-22 19:42:03,701.701 INFO    ] 2026-06-22 19:42:03
[2026-06-22 19:42:03,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:42:03,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:42:03,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:42:04,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:42:04,176.176 INFO    ] time= 22/06/2026 19:42:04
[2026-06-22 19:42:04,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:42:04,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:42:04,419.419 INFO    ] No existing commands found in stream
[2026-06-22 19:42:09,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:42:09,444.444 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-22 19:42:12,771.771 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:42:12,773.773 INFO    ] Checking for system updates...
[2026-06-22 19:42:12,793.793 INFO    ] 200
[2026-06-22 19:42:12,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:42:12,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:42:12,827.827 INFO    ] No update needed
[2026-06-22 19:42:12,828.828 INFO    ] Checking for camera pi updates...
[2026-06-22 19:42:12,858.858 INFO    ] 200
[2026-06-22 19:42:12,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:42:12,901.901 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:42:12,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:42:12,986.986 INFO    ] No camera update needed
[2026-06-22 19:42:12,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:42:12,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:42:12,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:42:13,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:42:15,042.042 INFO    ] ================================================
[2026-06-22 19:42:15,057.057 INFO    ] Launching Daemon at Mon Jun 22 19:42:15 IST 2026
[2026-06-22 19:42:15,068.068 INFO    ] ================================================
[2026-06-22 19:42:15,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:42:15
[2026-06-22 19:42:16,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:42:16,445.445 INFO    ] Initializing speech engine...
[2026-06-22 19:42:16,454.454 INFO    ] 2026-06-22 19:42:16
[2026-06-22 19:42:16,700.700 INFO    ] 2026-06-22 19:42:16
[2026-06-22 19:42:16,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:42:16,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:42:16,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:42:17,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:42:17,170.170 INFO    ] time= 22/06/2026 19:42:17
[2026-06-22 19:42:17,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:42:17,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:42:17,358.358 INFO    ] No existing commands found in stream
[2026-06-22 19:42:22,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:42:22,392.392 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-22 19:42:25,737.737 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:42:25,740.740 INFO    ] Checking for system updates...
[2026-06-22 19:42:25,776.776 INFO    ] 200
[2026-06-22 19:42:25,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:42:25,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:42:25,838.838 INFO    ] No update needed
[2026-06-22 19:42:25,841.841 INFO    ] Checking for camera pi updates...
[2026-06-22 19:42:25,874.874 INFO    ] 200
[2026-06-22 19:42:25,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:42:25,917.917 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:42:26,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:42:26,002.002 INFO    ] No camera update needed
[2026-06-22 19:42:26,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:42:26,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:42:26,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:42:26,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:42:28,058.058 INFO    ] ================================================
[2026-06-22 19:42:28,073.073 INFO    ] Launching Daemon at Mon Jun 22 19:42:28 IST 2026
[2026-06-22 19:42:28,084.084 INFO    ] ================================================
[2026-06-22 19:42:28,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:42:28
[2026-06-22 19:42:29,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:42:29,493.493 INFO    ] Initializing speech engine...
[2026-06-22 19:42:29,503.503 INFO    ] 2026-06-22 19:42:29
[2026-06-22 19:42:29,753.753 INFO    ] 2026-06-22 19:42:29
[2026-06-22 19:42:29,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:42:30,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:42:30,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:42:30,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:42:30,294.294 INFO    ] time= 22/06/2026 19:42:30
[2026-06-22 19:42:30,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:42:30,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:42:30,442.442 INFO    ] No existing commands found in stream
[2026-06-22 19:42:35,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:42:35,469.469 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-22 19:42:41,036.036 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:42:41,038.038 INFO    ] Checking for system updates...
[2026-06-22 19:42:41,073.073 INFO    ] 200
[2026-06-22 19:42:41,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:42:41,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:42:41,132.132 INFO    ] No update needed
[2026-06-22 19:42:41,134.134 INFO    ] Checking for camera pi updates...
[2026-06-22 19:42:41,167.167 INFO    ] 200
[2026-06-22 19:42:41,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:42:41,211.211 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:42:41,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:42:41,297.297 INFO    ] No camera update needed
[2026-06-22 19:42:41,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:42:41,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:42:41,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:42:41,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:42:43,353.353 INFO    ] ================================================
[2026-06-22 19:42:43,368.368 INFO    ] Launching Daemon at Mon Jun 22 19:42:43 IST 2026
[2026-06-22 19:42:43,378.378 INFO    ] ================================================
[2026-06-22 19:42:43,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:42:43
[2026-06-22 19:42:44,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:42:44,716.716 INFO    ] Initializing speech engine...
[2026-06-22 19:42:44,732.732 INFO    ] 2026-06-22 19:42:44
[2026-06-22 19:42:44,989.989 INFO    ] 2026-06-22 19:42:44
[2026-06-22 19:42:45,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:42:45,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:42:45,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:42:45,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:42:45,612.612 INFO    ] time= 22/06/2026 19:42:45
[2026-06-22 19:42:45,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:42:45,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:42:45,779.779 INFO    ] No existing commands found in stream
[2026-06-22 19:42:50,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:42:50,812.812 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-22 19:42:54,350.350 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:42:54,353.353 INFO    ] Checking for system updates...
[2026-06-22 19:42:54,388.388 INFO    ] 200
[2026-06-22 19:42:54,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:42:54,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:42:54,453.453 INFO    ] No update needed
[2026-06-22 19:42:54,456.456 INFO    ] Checking for camera pi updates...
[2026-06-22 19:42:54,491.491 INFO    ] 200
[2026-06-22 19:42:54,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:42:54,541.541 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:42:54,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:42:54,647.647 INFO    ] No camera update needed
[2026-06-22 19:42:54,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:42:54,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:42:54,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:42:54,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:42:56,703.703 INFO    ] ================================================
[2026-06-22 19:42:56,718.718 INFO    ] Launching Daemon at Mon Jun 22 19:42:56 IST 2026
[2026-06-22 19:42:56,728.728 INFO    ] ================================================
[2026-06-22 19:42:57,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:42:57
[2026-06-22 19:42:57,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:42:58,066.066 INFO    ] Initializing speech engine...
[2026-06-22 19:42:58,073.073 INFO    ] 2026-06-22 19:42:58
[2026-06-22 19:42:58,330.330 INFO    ] 2026-06-22 19:42:58
[2026-06-22 19:42:58,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:42:58,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:42:58,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:42:58,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:42:58,786.786 INFO    ] time= 22/06/2026 19:42:58
[2026-06-22 19:42:58,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:42:58,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:42:59,016.016 INFO    ] No existing commands found in stream
[2026-06-22 19:43:04,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:43:04,040.040 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-22 19:43:04,727.727 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:43:04,729.729 INFO    ] Checking for system updates...
[2026-06-22 19:43:04,769.769 INFO    ] 200
[2026-06-22 19:43:04,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:43:04,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:43:04,829.829 INFO    ] No update needed
[2026-06-22 19:43:04,832.832 INFO    ] Checking for camera pi updates...
[2026-06-22 19:43:04,871.871 INFO    ] 200
[2026-06-22 19:43:04,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:43:04,920.920 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:43:05,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:43:05,012.012 INFO    ] No camera update needed
[2026-06-22 19:43:05,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:43:05,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:43:05,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:43:05,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:43:07,068.068 INFO    ] ================================================
[2026-06-22 19:43:07,083.083 INFO    ] Launching Daemon at Mon Jun 22 19:43:07 IST 2026
[2026-06-22 19:43:07,094.094 INFO    ] ================================================
[2026-06-22 19:43:07,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:43:07
[2026-06-22 19:43:08,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:43:08,494.494 INFO    ] Initializing speech engine...
[2026-06-22 19:43:08,501.501 INFO    ] 2026-06-22 19:43:08
[2026-06-22 19:43:08,762.762 INFO    ] 2026-06-22 19:43:08
[2026-06-22 19:43:08,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:43:11,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:43:11,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:43:12,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:43:12,409.409 INFO    ] time= 22/06/2026 19:43:12
[2026-06-22 19:43:12,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:43:12,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:43:12,474.474 INFO    ] No existing commands found in stream
[2026-06-22 19:43:17,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:43:17,487.487 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-22 19:43:20,607.607 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:43:20,609.609 INFO    ] Checking for system updates...
[2026-06-22 19:43:20,646.646 INFO    ] 200
[2026-06-22 19:43:20,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:43:20,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:43:20,708.708 INFO    ] No update needed
[2026-06-22 19:43:20,710.710 INFO    ] Checking for camera pi updates...
[2026-06-22 19:43:20,745.745 INFO    ] 200
[2026-06-22 19:43:20,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:43:20,789.789 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:43:20,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:43:20,869.869 INFO    ] No camera update needed
[2026-06-22 19:43:20,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:43:20,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:43:20,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:43:20,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:43:22,926.926 INFO    ] ================================================
[2026-06-22 19:43:22,941.941 INFO    ] Launching Daemon at Mon Jun 22 19:43:22 IST 2026
[2026-06-22 19:43:22,952.952 INFO    ] ================================================
[2026-06-22 19:43:23,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:43:23
[2026-06-22 19:43:24,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:43:24,442.442 INFO    ] Initializing speech engine...
[2026-06-22 19:43:24,455.455 INFO    ] 2026-06-22 19:43:24
[2026-06-22 19:43:24,716.716 INFO    ] 2026-06-22 19:43:24
[2026-06-22 19:43:24,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:43:25,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:43:25,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:43:25,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:43:25,687.687 INFO    ] time= 22/06/2026 19:43:25
[2026-06-22 19:43:25,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:43:25,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:43:25,789.789 INFO    ] No existing commands found in stream
[2026-06-22 19:43:30,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:43:30,802.802 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-22 19:43:33,615.615 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:43:33,618.618 INFO    ] Checking for system updates...
[2026-06-22 19:43:33,654.654 INFO    ] 200
[2026-06-22 19:43:33,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:43:33,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:43:33,713.713 INFO    ] No update needed
[2026-06-22 19:43:33,717.717 INFO    ] Checking for camera pi updates...
[2026-06-22 19:43:33,759.759 INFO    ] 200
[2026-06-22 19:43:33,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:43:33,802.802 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:43:33,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:43:33,859.859 INFO    ] No camera update needed
[2026-06-22 19:43:33,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:43:33,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:43:33,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:43:33,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:43:35,916.916 INFO    ] ================================================
[2026-06-22 19:43:35,932.932 INFO    ] Launching Daemon at Mon Jun 22 19:43:35 IST 2026
[2026-06-22 19:43:35,944.944 INFO    ] ================================================
[2026-06-22 19:43:36,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:43:36
[2026-06-22 19:43:37,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:43:37,379.379 INFO    ] Initializing speech engine...
[2026-06-22 19:43:37,403.403 INFO    ] 2026-06-22 19:43:37
[2026-06-22 19:43:37,686.686 INFO    ] 2026-06-22 19:43:37
[2026-06-22 19:43:37,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:43:37,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:43:37,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:43:38,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:43:38,098.098 INFO    ] time= 22/06/2026 19:43:38
[2026-06-22 19:43:38,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:43:38,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:43:38,296.296 INFO    ] No existing commands found in stream
[2026-06-22 19:43:43,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:43:43,330.330 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-22 19:43:47,076.076 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:43:47,079.079 INFO    ] Checking for system updates...
[2026-06-22 19:43:47,115.115 INFO    ] 200
[2026-06-22 19:43:47,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:43:47,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:43:47,175.175 INFO    ] No update needed
[2026-06-22 19:43:47,177.177 INFO    ] Checking for camera pi updates...
[2026-06-22 19:43:47,215.215 INFO    ] 200
[2026-06-22 19:43:47,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:43:47,260.260 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:43:47,369.369 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:43:47,372.372 INFO    ] No camera update needed
[2026-06-22 19:43:47,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:43:47,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:43:47,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:43:47,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:43:49,427.427 INFO    ] ================================================
[2026-06-22 19:43:49,443.443 INFO    ] Launching Daemon at Mon Jun 22 19:43:49 IST 2026
[2026-06-22 19:43:49,454.454 INFO    ] ================================================
[2026-06-22 19:43:50,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:43:50
[2026-06-22 19:43:50,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:43:51,042.042 INFO    ] Initializing speech engine...
[2026-06-22 19:43:51,049.049 INFO    ] 2026-06-22 19:43:51
[2026-06-22 19:43:51,335.335 INFO    ] 2026-06-22 19:43:51
[2026-06-22 19:43:51,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:43:51,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:43:51,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:43:51,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:43:51,886.886 INFO    ] time= 22/06/2026 19:43:51
[2026-06-22 19:43:51,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:43:51,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:43:52,046.046 INFO    ] No existing commands found in stream
[2026-06-22 19:43:57,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:43:57,070.070 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-22 19:43:59,998.998 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:44:00,001.001 INFO    ] Checking for system updates...
[2026-06-22 19:44:00,038.038 INFO    ] 200
[2026-06-22 19:44:00,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:44:00,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:44:00,096.096 INFO    ] No update needed
[2026-06-22 19:44:00,099.099 INFO    ] Checking for camera pi updates...
[2026-06-22 19:44:00,132.132 INFO    ] 200
[2026-06-22 19:44:00,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:44:00,176.176 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:44:00,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:44:00,237.237 INFO    ] No camera update needed
[2026-06-22 19:44:00,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:44:00,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:44:00,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:44:00,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:44:02,297.297 INFO    ] ================================================
[2026-06-22 19:44:02,314.314 INFO    ] Launching Daemon at Mon Jun 22 19:44:02 IST 2026
[2026-06-22 19:44:02,326.326 INFO    ] ================================================
[2026-06-22 19:44:02,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:44:02
[2026-06-22 19:44:03,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:44:03,846.846 INFO    ] Initializing speech engine...
[2026-06-22 19:44:03,855.855 INFO    ] 2026-06-22 19:44:03
[2026-06-22 19:44:04,101.101 INFO    ] 2026-06-22 19:44:04
[2026-06-22 19:44:04,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:44:04,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:44:04,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:44:04,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:44:04,510.510 INFO    ] time= 22/06/2026 19:44:04
[2026-06-22 19:44:04,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:44:04,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:44:04,595.595 INFO    ] No existing commands found in stream
[2026-06-22 19:44:09,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:44:09,628.628 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-22 19:44:15,817.817 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:44:15,820.820 INFO    ] Checking for system updates...
[2026-06-22 19:44:15,857.857 INFO    ] 200
[2026-06-22 19:44:15,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:44:15,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:44:15,920.920 INFO    ] No update needed
[2026-06-22 19:44:15,922.922 INFO    ] Checking for camera pi updates...
[2026-06-22 19:44:15,956.956 INFO    ] 200
[2026-06-22 19:44:15,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:44:15,999.999 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:44:16,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:44:16,201.201 INFO    ] No camera update needed
[2026-06-22 19:44:16,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:44:16,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:44:16,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:44:16,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:44:18,258.258 INFO    ] ================================================
[2026-06-22 19:44:18,273.273 INFO    ] Launching Daemon at Mon Jun 22 19:44:18 IST 2026
[2026-06-22 19:44:18,284.284 INFO    ] ================================================
[2026-06-22 19:44:18,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:44:18
[2026-06-22 19:44:19,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:44:19,729.729 INFO    ] Initializing speech engine...
[2026-06-22 19:44:19,735.735 INFO    ] 2026-06-22 19:44:19
[2026-06-22 19:44:19,998.998 INFO    ] 2026-06-22 19:44:19
[2026-06-22 19:44:20,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:44:20,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:44:20,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:44:20,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:44:20,546.546 INFO    ] time= 22/06/2026 19:44:20
[2026-06-22 19:44:20,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:44:20,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:44:20,702.702 INFO    ] No existing commands found in stream
[2026-06-22 19:44:25,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:44:25,724.724 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-22 19:44:29,814.814 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:44:29,817.817 INFO    ] Checking for system updates...
[2026-06-22 19:44:29,853.853 INFO    ] 200
[2026-06-22 19:44:29,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:44:29,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:44:29,911.911 INFO    ] No update needed
[2026-06-22 19:44:29,913.913 INFO    ] Checking for camera pi updates...
[2026-06-22 19:44:29,948.948 INFO    ] 200
[2026-06-22 19:44:29,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:44:29,995.995 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:44:30,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:44:30,079.079 INFO    ] No camera update needed
[2026-06-22 19:44:30,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:44:30,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:44:30,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:44:30,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:44:32,138.138 INFO    ] ================================================
[2026-06-22 19:44:32,155.155 INFO    ] Launching Daemon at Mon Jun 22 19:44:32 IST 2026
[2026-06-22 19:44:32,167.167 INFO    ] ================================================
[2026-06-22 19:44:32,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:44:32
[2026-06-22 19:44:33,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:44:33,628.628 INFO    ] Initializing speech engine...
[2026-06-22 19:44:33,650.650 INFO    ] 2026-06-22 19:44:33
[2026-06-22 19:44:33,909.909 INFO    ] 2026-06-22 19:44:33
[2026-06-22 19:44:33,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:44:34,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:44:34,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:44:34,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:44:34,313.313 INFO    ] time= 22/06/2026 19:44:34
[2026-06-22 19:44:34,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:44:34,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:44:34,432.432 INFO    ] No existing commands found in stream
[2026-06-22 19:44:39,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:44:39,470.470 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-22 19:44:45,831.831 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:44:45,833.833 INFO    ] Checking for system updates...
[2026-06-22 19:44:45,853.853 INFO    ] 200
[2026-06-22 19:44:45,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:44:45,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:44:45,886.886 INFO    ] No update needed
[2026-06-22 19:44:45,888.888 INFO    ] Checking for camera pi updates...
[2026-06-22 19:44:45,926.926 INFO    ] 200
[2026-06-22 19:44:45,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:44:45,970.970 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:44:46,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:44:46,049.049 INFO    ] No camera update needed
[2026-06-22 19:44:46,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:44:46,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:44:46,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:44:46,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:44:48,104.104 INFO    ] ================================================
[2026-06-22 19:44:48,119.119 INFO    ] Launching Daemon at Mon Jun 22 19:44:48 IST 2026
[2026-06-22 19:44:48,129.129 INFO    ] ================================================
[2026-06-22 19:44:48,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:44:48
[2026-06-22 19:44:49,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:44:49,598.598 INFO    ] Initializing speech engine...
[2026-06-22 19:44:49,613.613 INFO    ] 2026-06-22 19:44:49
[2026-06-22 19:44:49,878.878 INFO    ] 2026-06-22 19:44:49
[2026-06-22 19:44:49,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:44:50,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:44:50,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:44:50,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:44:50,255.255 INFO    ] time= 22/06/2026 19:44:50
[2026-06-22 19:44:50,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:44:50,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:44:50,421.421 INFO    ] No existing commands found in stream
[2026-06-22 19:44:55,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:44:55,459.459 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-22 19:44:57,328.328 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:44:57,331.331 INFO    ] Checking for system updates...
[2026-06-22 19:44:57,370.370 INFO    ] 200
[2026-06-22 19:44:57,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:44:57,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:44:57,428.428 INFO    ] No update needed
[2026-06-22 19:44:57,431.431 INFO    ] Checking for camera pi updates...
[2026-06-22 19:44:57,467.467 INFO    ] 200
[2026-06-22 19:44:57,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:44:57,509.509 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:44:57,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:44:57,590.590 INFO    ] No camera update needed
[2026-06-22 19:44:57,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:44:57,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:44:57,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:44:57,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:44:59,654.654 INFO    ] ================================================
[2026-06-22 19:44:59,670.670 INFO    ] Launching Daemon at Mon Jun 22 19:44:59 IST 2026
[2026-06-22 19:44:59,681.681 INFO    ] ================================================
[2026-06-22 19:45:00,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:45:00
[2026-06-22 19:45:00,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:45:01,157.157 INFO    ] Initializing speech engine...
[2026-06-22 19:45:01,165.165 INFO    ] 2026-06-22 19:45:01
[2026-06-22 19:45:01,450.450 INFO    ] 2026-06-22 19:45:01
[2026-06-22 19:45:01,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:45:01,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:45:01,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:45:02,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:45:02,073.073 INFO    ] time= 22/06/2026 19:45:02
[2026-06-22 19:45:02,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:45:02,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:45:02,206.206 INFO    ] No existing commands found in stream
[2026-06-22 19:45:07,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:45:07,219.219 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-22 19:45:09,326.326 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:45:09,328.328 INFO    ] Checking for system updates...
[2026-06-22 19:45:09,364.364 INFO    ] 200
[2026-06-22 19:45:09,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:45:09,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:45:09,439.439 INFO    ] No update needed
[2026-06-22 19:45:09,442.442 INFO    ] Checking for camera pi updates...
[2026-06-22 19:45:09,481.481 INFO    ] 200
[2026-06-22 19:45:09,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:45:09,528.528 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:45:09,593.593 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:45:09,596.596 INFO    ] No camera update needed
[2026-06-22 19:45:09,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:45:09,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:45:09,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:45:09,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:45:11,651.651 INFO    ] ================================================
[2026-06-22 19:45:11,666.666 INFO    ] Launching Daemon at Mon Jun 22 19:45:11 IST 2026
[2026-06-22 19:45:11,677.677 INFO    ] ================================================
[2026-06-22 19:45:12,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:45:12
[2026-06-22 19:45:12,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:45:13,107.107 INFO    ] Initializing speech engine...
[2026-06-22 19:45:13,115.115 INFO    ] 2026-06-22 19:45:13
[2026-06-22 19:45:13,362.362 INFO    ] 2026-06-22 19:45:13
[2026-06-22 19:45:13,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:45:16,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:45:16,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:45:17,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:45:17,658.658 INFO    ] time= 22/06/2026 19:45:17
[2026-06-22 19:45:17,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:45:17,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:45:17,749.749 INFO    ] No existing commands found in stream
[2026-06-22 19:45:22,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:45:22,761.761 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-22 19:45:24,685.685 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:45:24,688.688 INFO    ] Checking for system updates...
[2026-06-22 19:45:24,726.726 INFO    ] 200
[2026-06-22 19:45:24,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:45:24,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:45:24,783.783 INFO    ] No update needed
[2026-06-22 19:45:24,786.786 INFO    ] Checking for camera pi updates...
[2026-06-22 19:45:24,824.824 INFO    ] 200
[2026-06-22 19:45:24,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:45:24,867.867 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:45:24,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:45:24,952.952 INFO    ] No camera update needed
[2026-06-22 19:45:24,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:45:24,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:45:24,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:45:24,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:45:27,008.008 INFO    ] ================================================
[2026-06-22 19:45:27,024.024 INFO    ] Launching Daemon at Mon Jun 22 19:45:27 IST 2026
[2026-06-22 19:45:27,035.035 INFO    ] ================================================
[2026-06-22 19:45:27,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:45:27
[2026-06-22 19:45:28,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:45:28,441.441 INFO    ] Initializing speech engine...
[2026-06-22 19:45:28,450.450 INFO    ] 2026-06-22 19:45:28
[2026-06-22 19:45:28,735.735 INFO    ] 2026-06-22 19:45:28
[2026-06-22 19:45:28,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:45:28,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:45:29,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:45:29,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:45:29,208.208 INFO    ] time= 22/06/2026 19:45:29
[2026-06-22 19:45:29,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:45:29,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:45:29,408.408 INFO    ] No existing commands found in stream
[2026-06-22 19:45:34,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:45:34,436.436 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-22 19:45:38,789.789 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:45:38,792.792 INFO    ] Checking for system updates...
[2026-06-22 19:45:38,832.832 INFO    ] 200
[2026-06-22 19:45:38,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:45:38,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:45:38,891.891 INFO    ] No update needed
[2026-06-22 19:45:38,893.893 INFO    ] Checking for camera pi updates...
[2026-06-22 19:45:38,930.930 INFO    ] 200
[2026-06-22 19:45:38,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:45:38,977.977 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:45:39,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:45:39,031.031 INFO    ] No camera update needed
[2026-06-22 19:45:39,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:45:39,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:45:39,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:45:39,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:45:41,088.088 INFO    ] ================================================
[2026-06-22 19:45:41,103.103 INFO    ] Launching Daemon at Mon Jun 22 19:45:41 IST 2026
[2026-06-22 19:45:41,113.113 INFO    ] ================================================
[2026-06-22 19:45:41,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:45:41
[2026-06-22 19:45:42,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:45:42,448.448 INFO    ] Initializing speech engine...
[2026-06-22 19:45:42,457.457 INFO    ] 2026-06-22 19:45:42
[2026-06-22 19:45:42,706.706 INFO    ] 2026-06-22 19:45:42
[2026-06-22 19:45:42,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:45:42,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:45:42,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:45:43,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:45:43,185.185 INFO    ] time= 22/06/2026 19:45:43
[2026-06-22 19:45:43,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:45:43,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:45:43,411.411 INFO    ] No existing commands found in stream
[2026-06-22 19:45:48,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:45:48,441.441 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-22 19:45:49,351.351 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:45:49,354.354 INFO    ] Checking for system updates...
[2026-06-22 19:45:49,392.392 INFO    ] 200
[2026-06-22 19:45:49,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:45:49,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:45:49,450.450 INFO    ] No update needed
[2026-06-22 19:45:49,453.453 INFO    ] Checking for camera pi updates...
[2026-06-22 19:45:49,489.489 INFO    ] 200
[2026-06-22 19:45:49,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:45:49,532.532 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:45:49,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:45:49,595.595 INFO    ] No camera update needed
[2026-06-22 19:45:49,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:45:49,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:45:49,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:45:49,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:45:51,651.651 INFO    ] ================================================
[2026-06-22 19:45:51,666.666 INFO    ] Launching Daemon at Mon Jun 22 19:45:51 IST 2026
[2026-06-22 19:45:51,677.677 INFO    ] ================================================
[2026-06-22 19:45:52,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:45:52
[2026-06-22 19:45:52,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:45:53,018.018 INFO    ] Initializing speech engine...
[2026-06-22 19:45:53,027.027 INFO    ] 2026-06-22 19:45:53
[2026-06-22 19:45:53,278.278 INFO    ] 2026-06-22 19:45:53
[2026-06-22 19:45:53,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:45:53,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:45:53,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:45:53,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:45:53,764.764 INFO    ] time= 22/06/2026 19:45:53
[2026-06-22 19:45:53,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:45:53,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:45:54,005.005 INFO    ] No existing commands found in stream
[2026-06-22 19:45:59,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:45:59,024.024 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-22 19:46:01,091.091 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:46:01,094.094 INFO    ] Checking for system updates...
[2026-06-22 19:46:01,130.130 INFO    ] 200
[2026-06-22 19:46:01,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:46:01,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:46:01,192.192 INFO    ] No update needed
[2026-06-22 19:46:01,194.194 INFO    ] Checking for camera pi updates...
[2026-06-22 19:46:01,241.241 INFO    ] 200
[2026-06-22 19:46:01,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:46:01,347.347 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:46:01,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:46:01,449.449 INFO    ] No camera update needed
[2026-06-22 19:46:01,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:46:01,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:46:01,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:46:01,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:46:03,531.531 INFO    ] ================================================
[2026-06-22 19:46:03,546.546 INFO    ] Launching Daemon at Mon Jun 22 19:46:03 IST 2026
[2026-06-22 19:46:03,557.557 INFO    ] ================================================
[2026-06-22 19:46:04,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:46:04
[2026-06-22 19:46:04,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:46:04,980.980 INFO    ] Initializing speech engine...
[2026-06-22 19:46:04,991.991 INFO    ] 2026-06-22 19:46:04
[2026-06-22 19:46:05,246.246 INFO    ] 2026-06-22 19:46:05
[2026-06-22 19:46:05,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:46:05,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:46:05,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:46:05,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:46:06,017.017 INFO    ] time= 22/06/2026 19:46:05
[2026-06-22 19:46:06,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:46:06,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:46:06,256.256 INFO    ] No existing commands found in stream
[2026-06-22 19:46:11,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:46:11,284.284 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-22 19:46:12,331.331 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:46:12,332.332 INFO    ] Checking for system updates...
[2026-06-22 19:46:12,353.353 INFO    ] 200
[2026-06-22 19:46:12,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:46:12,415.415 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:46:12,417.417 INFO    ] No update needed
[2026-06-22 19:46:12,420.420 INFO    ] Checking for camera pi updates...
[2026-06-22 19:46:12,457.457 INFO    ] 200
[2026-06-22 19:46:12,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:46:12,500.500 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:46:12,594.594 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:46:12,596.596 INFO    ] No camera update needed
[2026-06-22 19:46:12,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:46:12,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:46:12,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:46:12,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:46:14,652.652 INFO    ] ================================================
[2026-06-22 19:46:14,667.667 INFO    ] Launching Daemon at Mon Jun 22 19:46:14 IST 2026
[2026-06-22 19:46:14,678.678 INFO    ] ================================================
[2026-06-22 19:46:15,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:46:15
[2026-06-22 19:46:15,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:46:16,144.144 INFO    ] Initializing speech engine...
[2026-06-22 19:46:16,152.152 INFO    ] 2026-06-22 19:46:16
[2026-06-22 19:46:16,434.434 INFO    ] 2026-06-22 19:46:16
[2026-06-22 19:46:16,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:46:16,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:46:16,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:46:16,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:46:16,987.987 INFO    ] time= 22/06/2026 19:46:16
[2026-06-22 19:46:17,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:46:17,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:46:17,159.159 INFO    ] No existing commands found in stream
[2026-06-22 19:46:22,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:46:22,193.193 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-22 19:46:25,362.362 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:46:25,365.365 INFO    ] Checking for system updates...
[2026-06-22 19:46:25,404.404 INFO    ] 200
[2026-06-22 19:46:25,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:46:25,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:46:25,468.468 INFO    ] No update needed
[2026-06-22 19:46:25,471.471 INFO    ] Checking for camera pi updates...
[2026-06-22 19:46:25,505.505 INFO    ] 200
[2026-06-22 19:46:25,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:46:25,549.549 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:46:25,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:46:25,661.661 INFO    ] No camera update needed
[2026-06-22 19:46:25,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:46:25,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:46:25,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:46:25,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:46:27,716.716 INFO    ] ================================================
[2026-06-22 19:46:27,731.731 INFO    ] Launching Daemon at Mon Jun 22 19:46:27 IST 2026
[2026-06-22 19:46:27,742.742 INFO    ] ================================================
[2026-06-22 19:46:28,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:46:28
[2026-06-22 19:46:28,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:46:29,252.252 INFO    ] Initializing speech engine...
[2026-06-22 19:46:29,266.266 INFO    ] 2026-06-22 19:46:29
[2026-06-22 19:46:29,551.551 INFO    ] 2026-06-22 19:46:29
[2026-06-22 19:46:29,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:46:29,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:46:29,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:46:30,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:46:30,103.103 INFO    ] time= 22/06/2026 19:46:30
[2026-06-22 19:46:30,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:46:30,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:46:31,078.078 INFO    ] No existing commands found in stream
[2026-06-22 19:46:36,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:46:36,090.090 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-22 19:46:36,540.540 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:46:36,543.543 INFO    ] Checking for system updates...
[2026-06-22 19:46:36,587.587 INFO    ] 200
[2026-06-22 19:46:36,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:46:36,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:46:36,652.652 INFO    ] No update needed
[2026-06-22 19:46:36,655.655 INFO    ] Checking for camera pi updates...
[2026-06-22 19:46:36,690.690 INFO    ] 200
[2026-06-22 19:46:36,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:46:36,738.738 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:46:36,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:46:36,854.854 INFO    ] No camera update needed
[2026-06-22 19:46:36,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:46:36,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:46:36,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:46:36,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:46:38,912.912 INFO    ] ================================================
[2026-06-22 19:46:38,932.932 INFO    ] Launching Daemon at Mon Jun 22 19:46:38 IST 2026
[2026-06-22 19:46:38,944.944 INFO    ] ================================================
[2026-06-22 19:46:39,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:46:39
[2026-06-22 19:46:40,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:46:40,467.467 INFO    ] Initializing speech engine...
[2026-06-22 19:46:40,480.480 INFO    ] 2026-06-22 19:46:40
[2026-06-22 19:46:40,742.742 INFO    ] 2026-06-22 19:46:40
[2026-06-22 19:46:40,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:46:41,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:46:41,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:46:41,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:46:41,234.234 INFO    ] time= 22/06/2026 19:46:41
[2026-06-22 19:46:41,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:46:41,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:46:41,371.371 INFO    ] No existing commands found in stream
[2026-06-22 19:46:46,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:46:46,383.383 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-22 19:46:47,566.566 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:46:47,569.569 INFO    ] Checking for system updates...
[2026-06-22 19:46:47,605.605 INFO    ] 200
[2026-06-22 19:46:47,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:46:47,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:46:47,667.667 INFO    ] No update needed
[2026-06-22 19:46:47,670.670 INFO    ] Checking for camera pi updates...
[2026-06-22 19:46:47,703.703 INFO    ] 200
[2026-06-22 19:46:47,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:46:47,750.750 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:46:47,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:46:47,860.860 INFO    ] No camera update needed
[2026-06-22 19:46:47,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:46:47,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:46:47,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:46:47,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:46:49,917.917 INFO    ] ================================================
[2026-06-22 19:46:49,945.945 INFO    ] Launching Daemon at Mon Jun 22 19:46:49 IST 2026
[2026-06-22 19:46:49,956.956 INFO    ] ================================================
[2026-06-22 19:46:50,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:46:50
[2026-06-22 19:46:51,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:46:51,460.460 INFO    ] Initializing speech engine...
[2026-06-22 19:46:51,468.468 INFO    ] 2026-06-22 19:46:51
[2026-06-22 19:46:51,744.744 INFO    ] 2026-06-22 19:46:51
[2026-06-22 19:46:51,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:46:51,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:46:51,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:46:54,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:46:54,847.847 INFO    ] time= 22/06/2026 19:46:54
[2026-06-22 19:46:54,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:46:54,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:46:54,904.904 INFO    ] No existing commands found in stream
[2026-06-22 19:46:59,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:46:59,916.916 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-22 19:47:02,545.545 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:47:02,548.548 INFO    ] Checking for system updates...
[2026-06-22 19:47:02,591.591 INFO    ] 200
[2026-06-22 19:47:02,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:47:02,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:47:02,659.659 INFO    ] No update needed
[2026-06-22 19:47:02,663.663 INFO    ] Checking for camera pi updates...
[2026-06-22 19:47:02,706.706 INFO    ] 200
[2026-06-22 19:47:02,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:47:02,756.756 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:47:02,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:47:02,821.821 INFO    ] No camera update needed
[2026-06-22 19:47:02,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:47:02,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:47:02,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:47:02,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:47:04,876.876 INFO    ] ================================================
[2026-06-22 19:47:04,891.891 INFO    ] Launching Daemon at Mon Jun 22 19:47:04 IST 2026
[2026-06-22 19:47:04,903.903 INFO    ] ================================================
[2026-06-22 19:47:05,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:47:05
[2026-06-22 19:47:06,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:47:06,292.292 INFO    ] Initializing speech engine...
[2026-06-22 19:47:06,308.308 INFO    ] 2026-06-22 19:47:06
[2026-06-22 19:47:06,577.577 INFO    ] 2026-06-22 19:47:06
[2026-06-22 19:47:06,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:47:06,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:47:06,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:47:07,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:47:07,053.053 INFO    ] time= 22/06/2026 19:47:07
[2026-06-22 19:47:07,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:47:07,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:47:07,247.247 INFO    ] No existing commands found in stream
[2026-06-22 19:47:12,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:47:12,262.262 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-22 19:47:13,414.414 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:47:13,417.417 INFO    ] Checking for system updates...
[2026-06-22 19:47:13,453.453 INFO    ] 200
[2026-06-22 19:47:13,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:47:13,514.514 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:47:13,517.517 INFO    ] No update needed
[2026-06-22 19:47:13,519.519 INFO    ] Checking for camera pi updates...
[2026-06-22 19:47:13,556.556 INFO    ] 200
[2026-06-22 19:47:13,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:47:13,603.603 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:47:13,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:47:13,664.664 INFO    ] No camera update needed
[2026-06-22 19:47:13,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:47:13,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:47:13,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:47:13,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:47:15,719.719 INFO    ] ================================================
[2026-06-22 19:47:15,735.735 INFO    ] Launching Daemon at Mon Jun 22 19:47:15 IST 2026
[2026-06-22 19:47:15,745.745 INFO    ] ================================================
[2026-06-22 19:47:16,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:47:16
[2026-06-22 19:47:16,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:47:17,121.121 INFO    ] Initializing speech engine...
[2026-06-22 19:47:17,136.136 INFO    ] 2026-06-22 19:47:17
[2026-06-22 19:47:17,401.401 INFO    ] 2026-06-22 19:47:17
[2026-06-22 19:47:17,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:47:17,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:47:17,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:47:17,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:47:17,911.911 INFO    ] time= 22/06/2026 19:47:17
[2026-06-22 19:47:17,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:47:17,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:47:18,041.041 INFO    ] No existing commands found in stream
[2026-06-22 19:47:23,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:47:23,061.061 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-22 19:47:27,865.865 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:47:27,867.867 INFO    ] Checking for system updates...
[2026-06-22 19:47:27,907.907 INFO    ] 200
[2026-06-22 19:47:27,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:47:27,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:47:27,967.967 INFO    ] No update needed
[2026-06-22 19:47:27,969.969 INFO    ] Checking for camera pi updates...
[2026-06-22 19:47:28,010.010 INFO    ] 200
[2026-06-22 19:47:28,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:47:28,054.054 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:47:28,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:47:28,119.119 INFO    ] No camera update needed
[2026-06-22 19:47:28,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:47:28,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:47:28,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:47:28,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:47:30,174.174 INFO    ] ================================================
[2026-06-22 19:47:30,189.189 INFO    ] Launching Daemon at Mon Jun 22 19:47:30 IST 2026
[2026-06-22 19:47:30,199.199 INFO    ] ================================================
[2026-06-22 19:47:30,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:47:30
[2026-06-22 19:47:31,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:47:31,727.727 INFO    ] Initializing speech engine...
[2026-06-22 19:47:31,734.734 INFO    ] 2026-06-22 19:47:31
[2026-06-22 19:47:32,032.032 INFO    ] 2026-06-22 19:47:32
[2026-06-22 19:47:32,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:47:32,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:47:32,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:47:32,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:47:32,535.535 INFO    ] time= 22/06/2026 19:47:32
[2026-06-22 19:47:32,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:47:32,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:47:32,754.754 INFO    ] No existing commands found in stream
[2026-06-22 19:47:37,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:47:37,789.789 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-22 19:47:39,872.872 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:47:39,874.874 INFO    ] Checking for system updates...
[2026-06-22 19:47:39,913.913 INFO    ] 200
[2026-06-22 19:47:39,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:47:39,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:47:39,976.976 INFO    ] No update needed
[2026-06-22 19:47:39,978.978 INFO    ] Checking for camera pi updates...
[2026-06-22 19:47:40,012.012 INFO    ] 200
[2026-06-22 19:47:40,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:47:40,056.056 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:47:40,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:47:40,123.123 INFO    ] No camera update needed
[2026-06-22 19:47:40,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:47:40,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:47:40,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:47:40,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:47:42,189.189 INFO    ] ================================================
[2026-06-22 19:47:42,204.204 INFO    ] Launching Daemon at Mon Jun 22 19:47:42 IST 2026
[2026-06-22 19:47:42,215.215 INFO    ] ================================================
[2026-06-22 19:47:42,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:47:42
[2026-06-22 19:47:43,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:47:43,673.673 INFO    ] Initializing speech engine...
[2026-06-22 19:47:43,682.682 INFO    ] 2026-06-22 19:47:43
[2026-06-22 19:47:43,931.931 INFO    ] 2026-06-22 19:47:43
[2026-06-22 19:47:43,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:47:44,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:47:44,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:47:44,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:47:44,300.300 INFO    ] time= 22/06/2026 19:47:44
[2026-06-22 19:47:44,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:47:44,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:47:44,485.485 INFO    ] No existing commands found in stream
[2026-06-22 19:47:49,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:47:49,510.510 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-22 19:47:52,724.724 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:47:52,727.727 INFO    ] Checking for system updates...
[2026-06-22 19:47:52,755.755 INFO    ] 200
[2026-06-22 19:47:52,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:47:52,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:47:52,789.789 INFO    ] No update needed
[2026-06-22 19:47:52,791.791 INFO    ] Checking for camera pi updates...
[2026-06-22 19:47:52,811.811 INFO    ] 200
[2026-06-22 19:47:52,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:47:52,836.836 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:47:52,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:47:52,895.895 INFO    ] No camera update needed
[2026-06-22 19:47:52,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:47:52,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:47:52,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:47:52,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:47:54,950.950 INFO    ] ================================================
[2026-06-22 19:47:54,965.965 INFO    ] Launching Daemon at Mon Jun 22 19:47:54 IST 2026
[2026-06-22 19:47:54,976.976 INFO    ] ================================================
[2026-06-22 19:47:55,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:47:55
[2026-06-22 19:47:55,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:47:56,276.276 INFO    ] Initializing speech engine...
[2026-06-22 19:47:56,284.284 INFO    ] 2026-06-22 19:47:56
[2026-06-22 19:47:56,554.554 INFO    ] 2026-06-22 19:47:56
[2026-06-22 19:47:56,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:47:58,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:47:58,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:47:59,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:47:59,056.056 INFO    ] time= 22/06/2026 19:47:59
[2026-06-22 19:47:59,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:47:59,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:47:59,146.146 INFO    ] No existing commands found in stream
[2026-06-22 19:48:04,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:48:04,159.159 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-22 19:48:06,492.492 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:48:06,494.494 INFO    ] Checking for system updates...
[2026-06-22 19:48:06,531.531 INFO    ] 200
[2026-06-22 19:48:06,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:48:06,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:48:06,581.581 INFO    ] No update needed
[2026-06-22 19:48:06,583.583 INFO    ] Checking for camera pi updates...
[2026-06-22 19:48:06,603.603 INFO    ] 200
[2026-06-22 19:48:06,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:48:06,628.628 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:48:06,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:48:06,713.713 INFO    ] No camera update needed
[2026-06-22 19:48:06,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:48:06,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:48:06,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:48:06,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:48:08,770.770 INFO    ] ================================================
[2026-06-22 19:48:08,786.786 INFO    ] Launching Daemon at Mon Jun 22 19:48:08 IST 2026
[2026-06-22 19:48:08,798.798 INFO    ] ================================================
[2026-06-22 19:48:09,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:48:09
[2026-06-22 19:48:09,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:48:10,229.229 INFO    ] Initializing speech engine...
[2026-06-22 19:48:10,245.245 INFO    ] 2026-06-22 19:48:10
[2026-06-22 19:48:10,534.534 INFO    ] 2026-06-22 19:48:10
[2026-06-22 19:48:10,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:48:10,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:48:10,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:48:10,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:48:10,961.961 INFO    ] time= 22/06/2026 19:48:10
[2026-06-22 19:48:10,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:48:10,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:48:11,049.049 INFO    ] No existing commands found in stream
[2026-06-22 19:48:16,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:48:16,088.088 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-22 19:48:20,021.021 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:48:20,023.023 INFO    ] Checking for system updates...
[2026-06-22 19:48:20,063.063 INFO    ] 200
[2026-06-22 19:48:20,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:48:20,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:48:20,122.122 INFO    ] No update needed
[2026-06-22 19:48:20,124.124 INFO    ] Checking for camera pi updates...
[2026-06-22 19:48:20,159.159 INFO    ] 200
[2026-06-22 19:48:20,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:48:20,202.202 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:48:20,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:48:20,313.313 INFO    ] No camera update needed
[2026-06-22 19:48:20,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:48:20,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:48:20,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:48:20,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:48:22,374.374 INFO    ] ================================================
[2026-06-22 19:48:22,389.389 INFO    ] Launching Daemon at Mon Jun 22 19:48:22 IST 2026
[2026-06-22 19:48:22,400.400 INFO    ] ================================================
[2026-06-22 19:48:23,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:48:23
[2026-06-22 19:48:23,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:48:24,030.030 INFO    ] Initializing speech engine...
[2026-06-22 19:48:24,036.036 INFO    ] 2026-06-22 19:48:24
[2026-06-22 19:48:24,238.238 INFO    ] 2026-06-22 19:48:24
[2026-06-22 19:48:24,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:48:24,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:48:24,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:48:24,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:48:24,781.781 INFO    ] time= 22/06/2026 19:48:24
[2026-06-22 19:48:24,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:48:24,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:48:24,932.932 INFO    ] No existing commands found in stream
[2026-06-22 19:48:29,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:48:29,951.951 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-22 19:48:33,695.695 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:48:33,697.697 INFO    ] Checking for system updates...
[2026-06-22 19:48:33,738.738 INFO    ] 200
[2026-06-22 19:48:33,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:48:33,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:48:33,802.802 INFO    ] No update needed
[2026-06-22 19:48:33,805.805 INFO    ] Checking for camera pi updates...
[2026-06-22 19:48:33,838.838 INFO    ] 200
[2026-06-22 19:48:33,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:48:33,887.887 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:48:33,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:48:33,971.971 INFO    ] No camera update needed
[2026-06-22 19:48:33,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:48:33,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:48:33,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:48:33,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:48:36,027.027 INFO    ] ================================================
[2026-06-22 19:48:36,047.047 INFO    ] Launching Daemon at Mon Jun 22 19:48:36 IST 2026
[2026-06-22 19:48:36,058.058 INFO    ] ================================================
[2026-06-22 19:48:36,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:48:36
[2026-06-22 19:48:37,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:48:37,705.705 INFO    ] Initializing speech engine...
[2026-06-22 19:48:37,717.717 INFO    ] 2026-06-22 19:48:37
[2026-06-22 19:48:37,997.997 INFO    ] 2026-06-22 19:48:37
[2026-06-22 19:48:38,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:48:38,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:48:38,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:48:38,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:48:38,467.467 INFO    ] time= 22/06/2026 19:48:38
[2026-06-22 19:48:38,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:48:38,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:48:38,697.697 INFO    ] No existing commands found in stream
[2026-06-22 19:48:43,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:48:43,727.727 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-22 19:48:46,513.513 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:48:46,516.516 INFO    ] Checking for system updates...
[2026-06-22 19:48:46,553.553 INFO    ] 200
[2026-06-22 19:48:46,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:48:46,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:48:46,611.611 INFO    ] No update needed
[2026-06-22 19:48:46,613.613 INFO    ] Checking for camera pi updates...
[2026-06-22 19:48:46,651.651 INFO    ] 200
[2026-06-22 19:48:46,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:48:46,699.699 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:48:46,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:48:46,798.798 INFO    ] No camera update needed
[2026-06-22 19:48:46,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:48:46,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:48:46,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:48:46,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:48:48,853.853 INFO    ] ================================================
[2026-06-22 19:48:48,869.869 INFO    ] Launching Daemon at Mon Jun 22 19:48:48 IST 2026
[2026-06-22 19:48:48,880.880 INFO    ] ================================================
[2026-06-22 19:48:49,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:48:49
[2026-06-22 19:48:50,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:48:50,308.308 INFO    ] Initializing speech engine...
[2026-06-22 19:48:50,316.316 INFO    ] 2026-06-22 19:48:50
[2026-06-22 19:48:50,576.576 INFO    ] 2026-06-22 19:48:50
[2026-06-22 19:48:50,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:48:50,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:48:50,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:48:51,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:48:51,050.050 INFO    ] time= 22/06/2026 19:48:51
[2026-06-22 19:48:51,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:48:51,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:48:51,255.255 INFO    ] No existing commands found in stream
[2026-06-22 19:48:56,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:48:56,286.286 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-22 19:49:05,133.133 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:49:05,136.136 INFO    ] Checking for system updates...
[2026-06-22 19:49:05,172.172 INFO    ] 200
[2026-06-22 19:49:05,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:49:05,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:49:05,236.236 INFO    ] No update needed
[2026-06-22 19:49:05,239.239 INFO    ] Checking for camera pi updates...
[2026-06-22 19:49:05,276.276 INFO    ] 200
[2026-06-22 19:49:05,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:49:05,323.323 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:49:05,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:49:05,396.396 INFO    ] No camera update needed
[2026-06-22 19:49:05,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:49:05,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:49:05,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:49:05,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:49:07,451.451 INFO    ] ================================================
[2026-06-22 19:49:07,467.467 INFO    ] Launching Daemon at Mon Jun 22 19:49:07 IST 2026
[2026-06-22 19:49:07,478.478 INFO    ] ================================================
[2026-06-22 19:49:08,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:49:08
[2026-06-22 19:49:08,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:49:08,883.883 INFO    ] Initializing speech engine...
[2026-06-22 19:49:08,891.891 INFO    ] 2026-06-22 19:49:08
[2026-06-22 19:49:09,182.182 INFO    ] 2026-06-22 19:49:09
[2026-06-22 19:49:09,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:49:09,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:49:09,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:49:09,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:49:09,571.571 INFO    ] time= 22/06/2026 19:49:09
[2026-06-22 19:49:09,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:49:09,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:49:09,678.678 INFO    ] No existing commands found in stream
[2026-06-22 19:49:14,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:49:14,696.696 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-22 19:49:17,532.532 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:49:17,533.533 INFO    ] Checking for system updates...
[2026-06-22 19:49:17,555.555 INFO    ] 200
[2026-06-22 19:49:17,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:49:17,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:49:17,591.591 INFO    ] No update needed
[2026-06-22 19:49:17,593.593 INFO    ] Checking for camera pi updates...
[2026-06-22 19:49:17,630.630 INFO    ] 200
[2026-06-22 19:49:17,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:49:17,673.673 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:49:17,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:49:17,757.757 INFO    ] No camera update needed
[2026-06-22 19:49:17,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:49:17,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:49:17,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:49:17,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:49:19,815.815 INFO    ] ================================================
[2026-06-22 19:49:19,830.830 INFO    ] Launching Daemon at Mon Jun 22 19:49:19 IST 2026
[2026-06-22 19:49:19,841.841 INFO    ] ================================================
[2026-06-22 19:49:20,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:49:20
[2026-06-22 19:49:20,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:49:21,267.267 INFO    ] Initializing speech engine...
[2026-06-22 19:49:21,282.282 INFO    ] 2026-06-22 19:49:21
[2026-06-22 19:49:21,550.550 INFO    ] 2026-06-22 19:49:21
[2026-06-22 19:49:21,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:49:21,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:49:21,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:49:22,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:49:22,027.027 INFO    ] time= 22/06/2026 19:49:22
[2026-06-22 19:49:22,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:49:22,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:49:22,225.225 INFO    ] No existing commands found in stream
[2026-06-22 19:49:27,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:49:27,237.237 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-22 19:49:31,914.914 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:49:31,917.917 INFO    ] Checking for system updates...
[2026-06-22 19:49:31,954.954 INFO    ] 200
[2026-06-22 19:49:31,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:49:32,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:49:32,032.032 INFO    ] No update needed
[2026-06-22 19:49:32,043.043 INFO    ] Checking for camera pi updates...
[2026-06-22 19:49:32,091.091 INFO    ] 200
[2026-06-22 19:49:32,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:49:32,149.149 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:49:32,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:49:32,225.225 INFO    ] No camera update needed
[2026-06-22 19:49:32,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:49:32,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:49:32,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:49:32,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:49:34,286.286 INFO    ] ================================================
[2026-06-22 19:49:34,302.302 INFO    ] Launching Daemon at Mon Jun 22 19:49:34 IST 2026
[2026-06-22 19:49:34,313.313 INFO    ] ================================================
[2026-06-22 19:49:34,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:49:34
[2026-06-22 19:49:35,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:49:35,714.714 INFO    ] Initializing speech engine...
[2026-06-22 19:49:35,737.737 INFO    ] 2026-06-22 19:49:35
[2026-06-22 19:49:35,993.993 INFO    ] 2026-06-22 19:49:35
[2026-06-22 19:49:36,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:49:36,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:49:36,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:49:36,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:49:36,565.565 INFO    ] time= 22/06/2026 19:49:36
[2026-06-22 19:49:36,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:49:36,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:49:36,707.707 INFO    ] No existing commands found in stream
[2026-06-22 19:49:41,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:49:41,730.730 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-22 19:49:46,390.390 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:49:46,393.393 INFO    ] Checking for system updates...
[2026-06-22 19:49:46,436.436 INFO    ] 200
[2026-06-22 19:49:46,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:49:46,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:49:46,529.529 INFO    ] No update needed
[2026-06-22 19:49:46,531.531 INFO    ] Checking for camera pi updates...
[2026-06-22 19:49:46,571.571 INFO    ] 200
[2026-06-22 19:49:46,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:49:46,618.618 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:49:46,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:49:46,710.710 INFO    ] No camera update needed
[2026-06-22 19:49:46,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:49:46,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:49:46,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:49:46,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:49:48,766.766 INFO    ] ================================================
[2026-06-22 19:49:48,782.782 INFO    ] Launching Daemon at Mon Jun 22 19:49:48 IST 2026
[2026-06-22 19:49:48,792.792 INFO    ] ================================================
[2026-06-22 19:49:49,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:49:49
[2026-06-22 19:49:49,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:49:50,126.126 INFO    ] Initializing speech engine...
[2026-06-22 19:49:50,142.142 INFO    ] 2026-06-22 19:49:50
[2026-06-22 19:49:50,424.424 INFO    ] 2026-06-22 19:49:50
[2026-06-22 19:49:50,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:49:50,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:49:50,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:49:50,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:49:50,832.832 INFO    ] time= 22/06/2026 19:49:50
[2026-06-22 19:49:50,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:49:50,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:49:51,015.015 INFO    ] No existing commands found in stream
[2026-06-22 19:49:56,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:49:56,048.048 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-22 19:49:56,596.596 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:49:56,598.598 INFO    ] Checking for system updates...
[2026-06-22 19:49:56,642.642 INFO    ] 200
[2026-06-22 19:49:56,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:49:56,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:49:56,701.701 INFO    ] No update needed
[2026-06-22 19:49:56,704.704 INFO    ] Checking for camera pi updates...
[2026-06-22 19:49:56,738.738 INFO    ] 200
[2026-06-22 19:49:56,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:49:56,790.790 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:49:56,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:49:56,861.861 INFO    ] No camera update needed
[2026-06-22 19:49:56,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:49:56,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:49:56,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:49:56,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:49:58,917.917 INFO    ] ================================================
[2026-06-22 19:49:58,932.932 INFO    ] Launching Daemon at Mon Jun 22 19:49:58 IST 2026
[2026-06-22 19:49:58,943.943 INFO    ] ================================================
[2026-06-22 19:49:59,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:49:59
[2026-06-22 19:50:00,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:50:00,398.398 INFO    ] Initializing speech engine...
[2026-06-22 19:50:00,408.408 INFO    ] 2026-06-22 19:50:00
[2026-06-22 19:50:00,678.678 INFO    ] 2026-06-22 19:50:00
[2026-06-22 19:50:00,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:50:03,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:50:03,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:50:04,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:50:04,107.107 INFO    ] time= 22/06/2026 19:50:04
[2026-06-22 19:50:04,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:50:04,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:50:04,233.233 INFO    ] No existing commands found in stream
[2026-06-22 19:50:09,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:50:09,272.272 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-22 19:50:11,447.447 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:50:11,450.450 INFO    ] Checking for system updates...
[2026-06-22 19:50:11,490.490 INFO    ] 200
[2026-06-22 19:50:11,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:50:11,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:50:11,558.558 INFO    ] No update needed
[2026-06-22 19:50:11,561.561 INFO    ] Checking for camera pi updates...
[2026-06-22 19:50:11,600.600 INFO    ] 200
[2026-06-22 19:50:11,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:50:11,651.651 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:50:11,733.733 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:50:11,735.735 INFO    ] No camera update needed
[2026-06-22 19:50:11,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:50:11,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:50:11,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:50:11,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:50:13,782.782 INFO    ] ================================================
[2026-06-22 19:50:13,797.797 INFO    ] Launching Daemon at Mon Jun 22 19:50:13 IST 2026
[2026-06-22 19:50:13,808.808 INFO    ] ================================================
[2026-06-22 19:50:14,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:50:14
[2026-06-22 19:50:15,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:50:15,321.321 INFO    ] Initializing speech engine...
[2026-06-22 19:50:15,330.330 INFO    ] 2026-06-22 19:50:15
[2026-06-22 19:50:15,623.623 INFO    ] 2026-06-22 19:50:15
[2026-06-22 19:50:15,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:50:15,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:50:15,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:50:16,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:50:16,156.156 INFO    ] time= 22/06/2026 19:50:16
[2026-06-22 19:50:16,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:50:16,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:50:16,325.325 INFO    ] No existing commands found in stream
[2026-06-22 19:50:21,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:50:21,349.349 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-22 19:50:24,881.881 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:50:24,884.884 INFO    ] Checking for system updates...
[2026-06-22 19:50:24,922.922 INFO    ] 200
[2026-06-22 19:50:24,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:50:24,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:50:24,991.991 INFO    ] No update needed
[2026-06-22 19:50:24,994.994 INFO    ] Checking for camera pi updates...
[2026-06-22 19:50:25,030.030 INFO    ] 200
[2026-06-22 19:50:25,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:50:25,075.075 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:50:25,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:50:25,168.168 INFO    ] No camera update needed
[2026-06-22 19:50:25,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:50:25,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:50:25,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:50:25,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:50:27,228.228 INFO    ] ================================================
[2026-06-22 19:50:27,243.243 INFO    ] Launching Daemon at Mon Jun 22 19:50:27 IST 2026
[2026-06-22 19:50:27,254.254 INFO    ] ================================================
[2026-06-22 19:50:27,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:50:27
[2026-06-22 19:50:28,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:50:28,668.668 INFO    ] Initializing speech engine...
[2026-06-22 19:50:28,686.686 INFO    ] 2026-06-22 19:50:28
[2026-06-22 19:50:28,937.937 INFO    ] 2026-06-22 19:50:28
[2026-06-22 19:50:28,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:50:29,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:50:29,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:50:29,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:50:29,374.374 INFO    ] time= 22/06/2026 19:50:29
[2026-06-22 19:50:29,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:50:29,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:50:29,586.586 INFO    ] No existing commands found in stream
[2026-06-22 19:50:34,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:50:34,619.619 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-22 19:50:36,315.315 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:50:36,318.318 INFO    ] Checking for system updates...
[2026-06-22 19:50:36,360.360 INFO    ] 200
[2026-06-22 19:50:36,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:50:36,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:50:36,421.421 INFO    ] No update needed
[2026-06-22 19:50:36,423.423 INFO    ] Checking for camera pi updates...
[2026-06-22 19:50:36,458.458 INFO    ] 200
[2026-06-22 19:50:36,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:50:36,502.502 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:50:36,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:50:36,653.653 INFO    ] No camera update needed
[2026-06-22 19:50:36,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:50:36,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:50:36,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:50:36,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:50:38,710.710 INFO    ] ================================================
[2026-06-22 19:50:38,726.726 INFO    ] Launching Daemon at Mon Jun 22 19:50:38 IST 2026
[2026-06-22 19:50:38,736.736 INFO    ] ================================================
[2026-06-22 19:50:39,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:50:39
[2026-06-22 19:50:39,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:50:40,121.121 INFO    ] Initializing speech engine...
[2026-06-22 19:50:40,143.143 INFO    ] 2026-06-22 19:50:40
[2026-06-22 19:50:40,396.396 INFO    ] 2026-06-22 19:50:40
[2026-06-22 19:50:40,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:50:40,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:50:40,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:50:40,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:50:40,892.892 INFO    ] time= 22/06/2026 19:50:40
[2026-06-22 19:50:40,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:50:40,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:50:41,110.110 INFO    ] No existing commands found in stream
[2026-06-22 19:50:46,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:50:46,134.134 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-22 19:50:50,388.388 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:50:50,391.391 INFO    ] Checking for system updates...
[2026-06-22 19:50:50,433.433 INFO    ] 200
[2026-06-22 19:50:50,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:50:50,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:50:50,492.492 INFO    ] No update needed
[2026-06-22 19:50:50,494.494 INFO    ] Checking for camera pi updates...
[2026-06-22 19:50:50,529.529 INFO    ] 200
[2026-06-22 19:50:50,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:50:50,572.572 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:50:50,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:50:50,656.656 INFO    ] No camera update needed
[2026-06-22 19:50:50,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:50:50,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:50:50,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:50:50,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:50:52,715.715 INFO    ] ================================================
[2026-06-22 19:50:52,730.730 INFO    ] Launching Daemon at Mon Jun 22 19:50:52 IST 2026
[2026-06-22 19:50:52,741.741 INFO    ] ================================================
[2026-06-22 19:50:53,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:50:53
[2026-06-22 19:50:54,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:50:54,319.319 INFO    ] Initializing speech engine...
[2026-06-22 19:50:54,332.332 INFO    ] 2026-06-22 19:50:54
[2026-06-22 19:50:54,624.624 INFO    ] 2026-06-22 19:50:54
[2026-06-22 19:50:54,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:50:54,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:50:54,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:50:55,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:50:55,157.157 INFO    ] time= 22/06/2026 19:50:55
[2026-06-22 19:50:55,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:50:55,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:50:55,315.315 INFO    ] No existing commands found in stream
[2026-06-22 19:51:00,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:51:00,330.330 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-22 19:51:06,659.659 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:51:06,662.662 INFO    ] Checking for system updates...
[2026-06-22 19:51:06,704.704 INFO    ] 200
[2026-06-22 19:51:06,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:51:06,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:51:06,776.776 INFO    ] No update needed
[2026-06-22 19:51:06,780.780 INFO    ] Checking for camera pi updates...
[2026-06-22 19:51:06,819.819 INFO    ] 200
[2026-06-22 19:51:06,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:51:06,873.873 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:51:06,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:51:06,965.965 INFO    ] No camera update needed
[2026-06-22 19:51:06,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:51:06,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:51:06,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:51:06,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:51:09,025.025 INFO    ] ================================================
[2026-06-22 19:51:09,041.041 INFO    ] Launching Daemon at Mon Jun 22 19:51:09 IST 2026
[2026-06-22 19:51:09,051.051 INFO    ] ================================================
[2026-06-22 19:51:09,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:51:09
[2026-06-22 19:51:10,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:51:10,726.726 INFO    ] Initializing speech engine...
[2026-06-22 19:51:10,741.741 INFO    ] 2026-06-22 19:51:10
[2026-06-22 19:51:11,045.045 INFO    ] 2026-06-22 19:51:11
[2026-06-22 19:51:11,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:51:11,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:51:11,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:51:11,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:51:11,481.481 INFO    ] time= 22/06/2026 19:51:11
[2026-06-22 19:51:11,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:51:11,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:51:11,645.645 INFO    ] No existing commands found in stream
[2026-06-22 19:51:16,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:51:16,676.676 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-22 19:51:18,893.893 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:51:18,896.896 INFO    ] Checking for system updates...
[2026-06-22 19:51:18,932.932 INFO    ] 200
[2026-06-22 19:51:18,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:51:18,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:51:18,991.991 INFO    ] No update needed
[2026-06-22 19:51:18,993.993 INFO    ] Checking for camera pi updates...
[2026-06-22 19:51:19,031.031 INFO    ] 200
[2026-06-22 19:51:19,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:51:19,079.079 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:51:19,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:51:19,162.162 INFO    ] No camera update needed
[2026-06-22 19:51:19,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:51:19,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:51:19,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:51:19,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:51:21,217.217 INFO    ] ================================================
[2026-06-22 19:51:21,232.232 INFO    ] Launching Daemon at Mon Jun 22 19:51:21 IST 2026
[2026-06-22 19:51:21,244.244 INFO    ] ================================================
[2026-06-22 19:51:21,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:51:21
[2026-06-22 19:51:22,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:51:22,692.692 INFO    ] Initializing speech engine...
[2026-06-22 19:51:22,701.701 INFO    ] 2026-06-22 19:51:22
[2026-06-22 19:51:23,002.002 INFO    ] 2026-06-22 19:51:22
[2026-06-22 19:51:23,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:51:23,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:51:23,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:51:23,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:51:23,511.511 INFO    ] time= 22/06/2026 19:51:23
[2026-06-22 19:51:23,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:51:23,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:51:23,678.678 INFO    ] No existing commands found in stream
[2026-06-22 19:51:28,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:51:28,692.692 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-22 19:51:32,385.385 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:51:32,387.387 INFO    ] Checking for system updates...
[2026-06-22 19:51:32,426.426 INFO    ] 200
[2026-06-22 19:51:32,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:51:32,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:51:32,494.494 INFO    ] No update needed
[2026-06-22 19:51:32,497.497 INFO    ] Checking for camera pi updates...
[2026-06-22 19:51:32,538.538 INFO    ] 200
[2026-06-22 19:51:32,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:51:32,585.585 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:51:32,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:51:32,640.640 INFO    ] No camera update needed
[2026-06-22 19:51:32,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:51:32,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:51:32,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:51:32,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:51:34,708.708 INFO    ] ================================================
[2026-06-22 19:51:34,723.723 INFO    ] Launching Daemon at Mon Jun 22 19:51:34 IST 2026
[2026-06-22 19:51:34,734.734 INFO    ] ================================================
[2026-06-22 19:51:35,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:51:35
[2026-06-22 19:51:35,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:51:36,211.211 INFO    ] Initializing speech engine...
[2026-06-22 19:51:36,224.224 INFO    ] 2026-06-22 19:51:36
[2026-06-22 19:51:36,494.494 INFO    ] 2026-06-22 19:51:36
[2026-06-22 19:51:36,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:51:37,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:51:37,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:51:37,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:51:37,911.911 INFO    ] time= 22/06/2026 19:51:37
[2026-06-22 19:51:37,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:51:37,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:51:38,053.053 INFO    ] No existing commands found in stream
[2026-06-22 19:51:43,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:51:43,067.067 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-22 19:51:46,342.342 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:51:46,345.345 INFO    ] Checking for system updates...
[2026-06-22 19:51:46,382.382 INFO    ] 200
[2026-06-22 19:51:46,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:51:46,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:51:46,447.447 INFO    ] No update needed
[2026-06-22 19:51:46,450.450 INFO    ] Checking for camera pi updates...
[2026-06-22 19:51:46,483.483 INFO    ] 200
[2026-06-22 19:51:46,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:51:46,528.528 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:51:46,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:51:46,602.602 INFO    ] No camera update needed
[2026-06-22 19:51:46,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:51:46,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:51:46,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:51:46,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:51:48,662.662 INFO    ] ================================================
[2026-06-22 19:51:48,676.676 INFO    ] Launching Daemon at Mon Jun 22 19:51:48 IST 2026
[2026-06-22 19:51:48,687.687 INFO    ] ================================================
[2026-06-22 19:51:49,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:51:49
[2026-06-22 19:51:49,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:51:50,188.188 INFO    ] Initializing speech engine...
[2026-06-22 19:51:50,197.197 INFO    ] 2026-06-22 19:51:50
[2026-06-22 19:51:50,459.459 INFO    ] 2026-06-22 19:51:50
[2026-06-22 19:51:50,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:51:50,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:51:50,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:51:50,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:51:50,999.999 INFO    ] time= 22/06/2026 19:51:50
[2026-06-22 19:51:51,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:51:51,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:51:51,162.162 INFO    ] No existing commands found in stream
[2026-06-22 19:51:56,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:51:56,192.192 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-22 19:51:57,027.027 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:51:57,029.029 INFO    ] Checking for system updates...
[2026-06-22 19:51:57,051.051 INFO    ] 200
[2026-06-22 19:51:57,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:51:57,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:51:57,084.084 INFO    ] No update needed
[2026-06-22 19:51:57,086.086 INFO    ] Checking for camera pi updates...
[2026-06-22 19:51:57,112.112 INFO    ] 200
[2026-06-22 19:51:57,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:51:57,157.157 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:51:57,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:51:57,247.247 INFO    ] No camera update needed
[2026-06-22 19:51:57,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:51:57,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:51:57,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:51:57,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:51:59,306.306 INFO    ] ================================================
[2026-06-22 19:51:59,321.321 INFO    ] Launching Daemon at Mon Jun 22 19:51:59 IST 2026
[2026-06-22 19:51:59,332.332 INFO    ] ================================================
[2026-06-22 19:51:59,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:51:59
[2026-06-22 19:52:00,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:52:00,817.817 INFO    ] Initializing speech engine...
[2026-06-22 19:52:00,827.827 INFO    ] 2026-06-22 19:52:00
[2026-06-22 19:52:01,123.123 INFO    ] 2026-06-22 19:52:01
[2026-06-22 19:52:01,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:52:01,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:52:01,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:52:01,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:52:01,599.599 INFO    ] time= 22/06/2026 19:52:01
[2026-06-22 19:52:01,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:52:01,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:52:01,683.683 INFO    ] No existing commands found in stream
[2026-06-22 19:52:06,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:52:06,697.697 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-22 19:52:09,735.735 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:52:09,738.738 INFO    ] Checking for system updates...
[2026-06-22 19:52:09,776.776 INFO    ] 200
[2026-06-22 19:52:09,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:52:09,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:52:09,845.845 INFO    ] No update needed
[2026-06-22 19:52:09,848.848 INFO    ] Checking for camera pi updates...
[2026-06-22 19:52:09,883.883 INFO    ] 200
[2026-06-22 19:52:09,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:52:09,934.934 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:52:10,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:52:10,011.011 INFO    ] No camera update needed
[2026-06-22 19:52:10,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:52:10,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:52:10,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:52:10,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:52:12,071.071 INFO    ] ================================================
[2026-06-22 19:52:12,087.087 INFO    ] Launching Daemon at Mon Jun 22 19:52:12 IST 2026
[2026-06-22 19:52:12,098.098 INFO    ] ================================================
[2026-06-22 19:52:12,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:52:12
[2026-06-22 19:52:13,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:52:13,555.555 INFO    ] Initializing speech engine...
[2026-06-22 19:52:13,566.566 INFO    ] 2026-06-22 19:52:13
[2026-06-22 19:52:13,859.859 INFO    ] 2026-06-22 19:52:13
[2026-06-22 19:52:13,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:52:14,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:52:14,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:52:14,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:52:14,249.249 INFO    ] time= 22/06/2026 19:52:14
[2026-06-22 19:52:14,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:52:14,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:52:14,380.380 INFO    ] No existing commands found in stream
[2026-06-22 19:52:19,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:52:19,396.396 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-22 19:52:20,583.583 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:52:20,586.586 INFO    ] Checking for system updates...
[2026-06-22 19:52:20,627.627 INFO    ] 200
[2026-06-22 19:52:20,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:52:20,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:52:20,685.685 INFO    ] No update needed
[2026-06-22 19:52:20,687.687 INFO    ] Checking for camera pi updates...
[2026-06-22 19:52:20,722.722 INFO    ] 200
[2026-06-22 19:52:20,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:52:20,772.772 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:52:20,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:52:20,884.884 INFO    ] No camera update needed
[2026-06-22 19:52:20,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:52:20,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:52:20,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:52:20,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:52:22,939.939 INFO    ] ================================================
[2026-06-22 19:52:22,955.955 INFO    ] Launching Daemon at Mon Jun 22 19:52:22 IST 2026
[2026-06-22 19:52:22,965.965 INFO    ] ================================================
[2026-06-22 19:52:23,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:52:23
[2026-06-22 19:52:24,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:52:24,426.426 INFO    ] Initializing speech engine...
[2026-06-22 19:52:24,433.433 INFO    ] 2026-06-22 19:52:24
[2026-06-22 19:52:24,732.732 INFO    ] 2026-06-22 19:52:24
[2026-06-22 19:52:24,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:52:25,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:52:25,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:52:25,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:52:25,269.269 INFO    ] time= 22/06/2026 19:52:25
[2026-06-22 19:52:25,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:52:25,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:52:25,426.426 INFO    ] No existing commands found in stream
[2026-06-22 19:52:30,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:52:30,450.450 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-22 19:52:34,592.592 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:52:34,595.595 INFO    ] Checking for system updates...
[2026-06-22 19:52:34,634.634 INFO    ] 200
[2026-06-22 19:52:34,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:52:34,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:52:34,696.696 INFO    ] No update needed
[2026-06-22 19:52:34,698.698 INFO    ] Checking for camera pi updates...
[2026-06-22 19:52:34,733.733 INFO    ] 200
[2026-06-22 19:52:34,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:52:34,785.785 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:52:34,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:52:34,866.866 INFO    ] No camera update needed
[2026-06-22 19:52:34,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:52:34,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:52:34,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:52:34,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:52:36,918.918 INFO    ] ================================================
[2026-06-22 19:52:36,934.934 INFO    ] Launching Daemon at Mon Jun 22 19:52:36 IST 2026
[2026-06-22 19:52:36,946.946 INFO    ] ================================================
[2026-06-22 19:52:37,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:52:37
[2026-06-22 19:52:38,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:52:38,422.422 INFO    ] Initializing speech engine...
[2026-06-22 19:52:38,429.429 INFO    ] 2026-06-22 19:52:38
[2026-06-22 19:52:38,644.644 INFO    ] 2026-06-22 19:52:38
[2026-06-22 19:52:38,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:52:39,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:52:39,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:52:40,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:52:40,313.313 INFO    ] time= 22/06/2026 19:52:40
[2026-06-22 19:52:40,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:52:40,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:52:40,425.425 INFO    ] No existing commands found in stream
[2026-06-22 19:52:45,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:52:45,439.439 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-22 19:52:46,627.627 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:52:46,629.629 INFO    ] Checking for system updates...
[2026-06-22 19:52:46,657.657 INFO    ] 200
[2026-06-22 19:52:46,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:52:46,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:52:46,717.717 INFO    ] No update needed
[2026-06-22 19:52:46,720.720 INFO    ] Checking for camera pi updates...
[2026-06-22 19:52:46,756.756 INFO    ] 200
[2026-06-22 19:52:46,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:52:46,806.806 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:52:46,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:52:46,961.961 INFO    ] No camera update needed
[2026-06-22 19:52:46,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:52:46,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:52:46,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:52:46,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:52:49,022.022 INFO    ] ================================================
[2026-06-22 19:52:49,037.037 INFO    ] Launching Daemon at Mon Jun 22 19:52:49 IST 2026
[2026-06-22 19:52:49,048.048 INFO    ] ================================================
[2026-06-22 19:52:49,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:52:49
[2026-06-22 19:52:50,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:52:50,527.527 INFO    ] Initializing speech engine...
[2026-06-22 19:52:50,541.541 INFO    ] 2026-06-22 19:52:50
[2026-06-22 19:52:50,812.812 INFO    ] 2026-06-22 19:52:50
[2026-06-22 19:52:50,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:52:51,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:52:51,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:52:51,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:52:51,389.389 INFO    ] time= 22/06/2026 19:52:51
[2026-06-22 19:52:51,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:52:51,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:52:51,552.552 INFO    ] No existing commands found in stream
[2026-06-22 19:52:56,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:52:56,585.585 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-22 19:52:57,523.523 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:52:57,525.525 INFO    ] Checking for system updates...
[2026-06-22 19:52:57,551.551 INFO    ] 200
[2026-06-22 19:52:57,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:52:57,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:52:57,619.619 INFO    ] No update needed
[2026-06-22 19:52:57,622.622 INFO    ] Checking for camera pi updates...
[2026-06-22 19:52:57,661.661 INFO    ] 200
[2026-06-22 19:52:57,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:52:57,711.711 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:52:57,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:52:57,794.794 INFO    ] No camera update needed
[2026-06-22 19:52:57,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:52:57,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:52:57,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:52:57,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:52:59,854.854 INFO    ] ================================================
[2026-06-22 19:52:59,869.869 INFO    ] Launching Daemon at Mon Jun 22 19:52:59 IST 2026
[2026-06-22 19:52:59,880.880 INFO    ] ================================================
[2026-06-22 19:53:00,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:53:00
[2026-06-22 19:53:00,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:53:01,596.596 INFO    ] Initializing speech engine...
[2026-06-22 19:53:01,620.620 INFO    ] 2026-06-22 19:53:01
[2026-06-22 19:53:02,042.042 INFO    ] 2026-06-22 19:53:02
[2026-06-22 19:53:02,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:53:02,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:53:02,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:53:02,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:53:02,422.422 INFO    ] time= 22/06/2026 19:53:02
[2026-06-22 19:53:02,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:53:02,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:53:02,493.493 INFO    ] No existing commands found in stream
[2026-06-22 19:53:07,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:53:07,507.507 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-22 19:53:11,409.409 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:53:11,411.411 INFO    ] Checking for system updates...
[2026-06-22 19:53:11,447.447 INFO    ] 200
[2026-06-22 19:53:11,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:53:11,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:53:11,506.506 INFO    ] No update needed
[2026-06-22 19:53:11,509.509 INFO    ] Checking for camera pi updates...
[2026-06-22 19:53:11,543.543 INFO    ] 200
[2026-06-22 19:53:11,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:53:11,587.587 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:53:11,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:53:11,656.656 INFO    ] No camera update needed
[2026-06-22 19:53:11,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:53:11,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:53:11,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:53:11,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:53:13,716.716 INFO    ] ================================================
[2026-06-22 19:53:13,734.734 INFO    ] Launching Daemon at Mon Jun 22 19:53:13 IST 2026
[2026-06-22 19:53:13,745.745 INFO    ] ================================================
[2026-06-22 19:53:14,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:53:14
[2026-06-22 19:53:15,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:53:15,295.295 INFO    ] Initializing speech engine...
[2026-06-22 19:53:15,302.302 INFO    ] 2026-06-22 19:53:15
[2026-06-22 19:53:15,597.597 INFO    ] 2026-06-22 19:53:15
[2026-06-22 19:53:15,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:53:15,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:53:15,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:53:15,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:53:15,972.972 INFO    ] time= 22/06/2026 19:53:15
[2026-06-22 19:53:15,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:53:15,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:53:16,099.099 INFO    ] No existing commands found in stream
[2026-06-22 19:53:21,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:53:21,114.114 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-22 19:53:25,157.157 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:53:25,159.159 INFO    ] Checking for system updates...
[2026-06-22 19:53:25,196.196 INFO    ] 200
[2026-06-22 19:53:25,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:53:25,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:53:25,255.255 INFO    ] No update needed
[2026-06-22 19:53:25,257.257 INFO    ] Checking for camera pi updates...
[2026-06-22 19:53:25,292.292 INFO    ] 200
[2026-06-22 19:53:25,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:53:25,339.339 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:53:25,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:53:25,445.445 INFO    ] No camera update needed
[2026-06-22 19:53:25,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:53:25,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:53:25,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:53:25,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:53:27,501.501 INFO    ] ================================================
[2026-06-22 19:53:27,516.516 INFO    ] Launching Daemon at Mon Jun 22 19:53:27 IST 2026
[2026-06-22 19:53:27,527.527 INFO    ] ================================================
[2026-06-22 19:53:28,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:53:28
[2026-06-22 19:53:28,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:53:29,027.027 INFO    ] Initializing speech engine...
[2026-06-22 19:53:29,036.036 INFO    ] 2026-06-22 19:53:29
[2026-06-22 19:53:29,324.324 INFO    ] 2026-06-22 19:53:29
[2026-06-22 19:53:29,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:53:29,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:53:29,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:53:29,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:53:29,888.888 INFO    ] time= 22/06/2026 19:53:29
[2026-06-22 19:53:29,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:53:29,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:53:30,133.133 INFO    ] No existing commands found in stream
[2026-06-22 19:53:35,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:53:35,163.163 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-22 19:53:36,324.324 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:53:36,327.327 INFO    ] Checking for system updates...
[2026-06-22 19:53:36,364.364 INFO    ] 200
[2026-06-22 19:53:36,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:53:36,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:53:36,424.424 INFO    ] No update needed
[2026-06-22 19:53:36,427.427 INFO    ] Checking for camera pi updates...
[2026-06-22 19:53:36,463.463 INFO    ] 200
[2026-06-22 19:53:36,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:53:36,509.509 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:53:36,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:53:36,592.592 INFO    ] No camera update needed
[2026-06-22 19:53:36,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:53:36,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:53:36,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:53:36,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:53:38,650.650 INFO    ] ================================================
[2026-06-22 19:53:38,665.665 INFO    ] Launching Daemon at Mon Jun 22 19:53:38 IST 2026
[2026-06-22 19:53:38,676.676 INFO    ] ================================================
[2026-06-22 19:53:39,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:53:39
[2026-06-22 19:53:39,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:53:40,040.040 INFO    ] Initializing speech engine...
[2026-06-22 19:53:40,055.055 INFO    ] 2026-06-22 19:53:40
[2026-06-22 19:53:40,329.329 INFO    ] 2026-06-22 19:53:40
[2026-06-22 19:53:40,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:53:41,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:53:41,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:53:42,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:53:42,460.460 INFO    ] time= 22/06/2026 19:53:42
[2026-06-22 19:53:42,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:53:42,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:53:42,556.556 INFO    ] Found 1 existing command(s) in stream
[2026-06-22 19:53:42,560.560 INFO    ] Checking historical command: ID=1782138215893-0
[2026-06-22 19:53:42,566.566 INFO    ] process_and_cleanup_command: msg_id=1782138215893-0
[2026-06-22 19:53:42,572.572 INFO    ] is_command_expired: timestamp=2026-06-22T14:23:35.875Z, expiry=30s
[2026-06-22 19:53:42,729.729 INFO    ] Command removed from stream: 1782138215893-0. returning for processing...
[2026-06-22 19:53:42,746.746 INFO    ] ***** get_valid_command
[2026-06-22 19:53:42,753.753 INFO    ] {'data': '{"request_id":"start-order-1782138215875-uus7wi9ua","orderId":"TM06202507260622195243781","is_vending":false}', 'timestamp': '2026-06-22T14:23:35.875Z', 'source': 'webapp', 'command': 'start-order', 'timeout': '10'}
[2026-06-22 19:53:42,761.761 INFO    ] ***** Parsed command data: {'orderId': 'TM06202507260622195243781', 'request_id': 'start-order-1782138215875-uus7wi9ua', 'is_vending': False}
[2026-06-22 19:53:42,783.783 INFO    ] Handling start order...
[2026-06-22 19:53:42,793.793 INFO    ] handle_start_order_command
[2026-06-22 19:53:42,806.806 INFO    ] _send_start_order_success: request_id=start-order-1782138215875-uus7wi9ua, order_id=TM06202507260622195243781
[2026-06-22 19:53:42,812.812 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM06202507
[2026-06-22 19:53:42,887.887 INFO    ] [_send_start_order_success] Message added to stream with ID: 1782138222847-0
[2026-06-22 19:53:42,911.911 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-22 19:53:42,934.934 INFO    ] Checking for system updates...
[2026-06-22 19:53:43,020.020 INFO    ] 200
[2026-06-22 19:53:43,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:53:43,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:53:43,108.108 INFO    ] No update needed
[2026-06-22 19:53:43,129.129 INFO    ] Checking for camera pi updates...
[2026-06-22 19:53:43,192.192 INFO    ] 200
[2026-06-22 19:53:43,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:53:43,314.314 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:53:43,443.443 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:53:43,450.450 INFO    ] No camera update needed
[2026-06-22 19:53:43,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:53:43,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:53:43,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:53:43,569.569 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-22 19:53:43,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:53:45,717.717 INFO    ] ================================================
[2026-06-22 19:53:45,733.733 INFO    ] Launching Daemon at Mon Jun 22 19:53:45 IST 2026
[2026-06-22 19:53:45,743.743 INFO    ] ================================================
[2026-06-22 19:53:46,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:53:46
[2026-06-22 19:53:46,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:53:47,109.109 INFO    ] Initializing speech engine...
[2026-06-22 19:53:47,118.118 INFO    ] 2026-06-22 19:53:47
[2026-06-22 19:53:47,409.409 INFO    ] 2026-06-22 19:53:47
[2026-06-22 19:53:47,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:53:47,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:53:47,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:53:47,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:53:47,902.902 INFO    ] time= 22/06/2026 19:53:47
[2026-06-22 19:53:47,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:53:48,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:53:48,115.115 INFO    ] Found 2 existing command(s) in stream
[2026-06-22 19:53:48,165.165 INFO    ] Checking historical command: ID=1782138222847-0
[2026-06-22 19:53:48,220.220 INFO    ] process_and_cleanup_command: msg_id=1782138222847-0
[2026-06-22 19:53:48,250.250 INFO    ] is_command_expired: timestamp=2026-06-22T14:23:42.807657Z, expiry=30s
[2026-06-22 19:53:48,436.436 INFO    ] Command removed from stream: 1782138222847-0. returning for processing...
[2026-06-22 19:53:48,469.469 INFO    ] ***** get_valid_command
[2026-06-22 19:53:48,535.535 INFO    ] {'message_type': 'command_response', 'metadata_request_id': 'start-order-1782138215875-uus7wi9ua', 'message': 'start-order success', 'timestamp': '2026-06-22T14:23:42.807657Z', 'status': 'success', 'metadata_order_id': 'TM06202507260622195243781', 'imei': 'TM06202507'}
[2026-06-22 19:53:48,562.562 INFO    ] Checking historical command: ID=1782138225301-0
[2026-06-22 19:53:48,597.597 INFO    ] process_and_cleanup_command: msg_id=1782138225301-0
[2026-06-22 19:53:48,602.602 INFO    ] is_command_expired: timestamp=2026-06-22T14:23:45.366Z, expiry=30s
[2026-06-22 19:53:48,727.727 INFO    ] Command removed from stream: 1782138225301-0. returning for processing...
[2026-06-22 19:53:48,757.757 INFO    ] ***** get_valid_command
[2026-06-22 19:53:48,764.764 INFO    ] {'source': 'webapp', 'command': 'process-order', 'data': '{"request_id":"process-order-1782138225366-i8y7gq1m0","orderId":"TM06202507260622195243781","is_vending":false,"accessCode":"97233039"}', 'timeout': '60', 'timestamp': '2026-06-22T14:23:45.366Z'}
[2026-06-22 19:53:48,767.767 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1782138225366-i8y7gq1m0', 'is_vending': False, 'orderId': 'TM06202507260622195243781', 'accessCode': '97233039'}
[2026-06-22 19:53:48,785.785 INFO    ] Handling process order...
[2026-06-22 19:53:48,827.827 INFO    ] Processing process-order command...
[2026-06-22 19:53:48,831.831 INFO    ] 🔍 Lock file Order ID: TM06202507260622195243781, TS: 2026-06-22 19:53:42
[2026-06-22 19:53:48,860.860 INFO    ] ✅ Order lock valid for TM06202507260622195243781
[2026-06-22 19:53:48,901.901 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-22 19:53:48,908.908 INFO    ] processing access code 97233039 for order TM06202507260622195243781
[2026-06-22 19:53:48,913.913 INFO    ] 🔍 Lock file Order ID: TM06202507260622195243781, TS: 2026-06-22 19:53:42
[2026-06-22 19:53:48,918.918 INFO    ] ✅ Order lock valid for TM06202507260622195243781
[2026-06-22 19:53:48,922.922 INFO    ] 2026-06-22 19:53:48
[2026-06-22 19:53:48,969.969 INFO    ] 200
[2026-06-22 19:53:48,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:53:48,975.975 INFO    ] 97233039
[2026-06-22 19:53:48,978.978 INFO    ] 2026-06-22 19:53:48
[2026-06-22 19:53:49,012.012 INFO    ] session id :807402166
[2026-06-22 19:53:49,082.082 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=97233039&imei=TM06202507&session_id=807402166
[2026-06-22 19:53:50,259.259 INFO    ] 200
[2026-06-22 19:53:50,271.271 INFO    ] {"data": {"mobile": "9986566011", "order_id": "TM06202507260622195243781", "access_code": "97233039", "bill_amount": "20", "proposed_sku_json": [{"tray_id": "20", "qty": 1, "mrp": "10", "door_id": "1", "name": "Modern kitchens Salted Peanuts 25gm", "sku_total": 10, "image_url": "https://images.tinymart.in/product/4500673-8519.webp", "offer_desc": "", "unit_price": 10, "skuid": "4500673", "offer_id": ""}, {"tray_id": "13", "qty": 1, "mrp": "10", "door_id": "1", "name": "Modern kitchens Roasted Channa 32g", "sku_total": 10, "image_url": "https://images.tinymart.in/product/4500647-1968.png", "offer_desc": "", "unit_price": 10, "skuid": "4500647", "offer_id": ""}], "invoice_bill": "20"}, "msg": "Order Data", "status": true, "rstatus": true}
[2026-06-22 19:53:50,279.279 INFO    ] 20
[2026-06-22 19:53:50,286.286 INFO    ] TM06202507260622195243781
[2026-06-22 19:53:50,322.322 INFO    ] 9986566011
[2026-06-22 19:53:50,335.335 INFO    ] 2026-06-22 19:53:50
[2026-06-22 19:53:50,346.346 INFO    ] Door Opening for user mobile ending with  six zero one one 
[2026-06-22 19:53:50,363.363 INFO    ] Door Opening for user mobile ending with  six zero one one 
[2026-06-22 19:53:50,370.370 INFO    ] f9abbebba792bef69d751be2fed682b3
[2026-06-22 19:53:50,376.376 INFO    ] 2026-06-22 19:53:50
[2026-06-22 19:53:50,396.396 INFO    ] playing audio file
[2026-06-22 19:53:50,445.445 INFO    ] 2026-06-22 19:53:50
[2026-06-22 19:53:50,461.461 INFO    ] 2026-06-22 19:53:50
[2026-06-22 19:53:50,474.474 INFO    ] publish_status: order_id=TM06202507260622195243781
[2026-06-22 19:53:50,496.496 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622195243781
[2026-06-22 19:53:50,597.597 INFO    ] [publish_status] Message added to stream with ID: 1782138230543-0
[2026-06-22 19:53:50,602.602 INFO    ] Published to order:TM06202507260622195243781: {'server_response': '{"msg": "Order Data", "status": true, "rstatus": true, "data": {"invoice_bill": "20", "bill_amount": "20", "proposed_sku_json": [{"sku_total": 10, "offer_id": "", "qty": 1, "mrp": "10", "offer_desc": "", "image_url": "https://images.tinymart.in/product/4500673-8519.webp", "unit_price": 10, "skuid": "4500673", "tray_id": "20", "name": "Modern kitchens Salted Peanuts 25gm", "door_id": "1"}, {"sku_total": 10, "offer_id": "", "qty": 1, "mrp": "10", "offer_desc": "", "image_url": "https://images.tinymart.in/product/4500647-1968.png", "unit_price": 10, "skuid": "4500647", "tray_id": "13", "name": "Modern kitchens Roasted Channa 32g", "door_id": "1"}], "access_code": "97233039", "order_id": "TM06202507260622195243781", "mobile": "9986566011"}}', 'server_status': 'order-started', 'order_id': 'TM06202507260622195243781', 'timestamp': '2026-06-22T14:23:50.463817Z'} (ID: 1782138230543-0)
[2026-06-22 19:53:51,212.212 INFO    ] {'server_response': {'msg': 'Order Data', 'status': True, 'rstatus': True, 'data': {'invoice_bill': '20', 'bill_amount': '20', 'proposed_sku_json': [{'sku_total': 10, 'offer_id': '', 'qty': 1, 'mrp': '10', 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/4500673-8519.webp', 'unit_price': 10, 'skuid': '4500673', 'tray_id': '20', 'name': 'Modern kitchens Salted Peanuts 25gm', 'door_id': '1'}, {'sku_total': 10, 'offer_id': '', 'qty': 1, 'mrp': '10', 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/4500647-1968.png', 'unit_price': 10, 'skuid': '4500647', 'tray_id': '13', 'name': 'Modern kitchens Roasted Channa 32g', 'door_id': '1'}], 'access_code': '97233039', 'order_id': 'TM06202507260622195243781', 'mobile': '9986566011'}}, 'server_status': 'order-started', 'order_id': 'TM06202507260622195243781'}
[2026-06-22 19:53:51,214.214 INFO    ] 200
[2026-06-22 19:53:51,217.217 INFO    ] {"data":{"server_response":{"msg":"Order Data","status":true,"rstatus":true,"data":{"invoice_bill":"20","bill_amount":"20","proposed_sku_json":[{"sku_total":10,"offer_id":"","qty":1,"mrp":"10","offer_desc":"","image_url":"https:\/\/images.tinymart.in\/product\/4500673-8519.webp","unit_price":10,"skuid":"4500673","tray_id":"20","name":"Modern kitchens Salted Peanuts 25gm","door_id":"1"},{"sku_total":10,"offer_id":"","qty":1,"mrp":"10","offer_desc":"","image_url":"https:\/\/images.tinymart.in\/product\/4500647-1968.png","unit_price":10,"skuid":"4500647","tray_id":"13","name":"Modern kitchens Roasted Channa 32g","door_id":"1"}],"access_code":"97233039","order_id":"TM06202507260622195243781","mobile":"9986566011"}},"server_status":"order-started","order_id":"TM06202507260622195243781"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 19:53:51,220.220 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_response': {'data': {'invoice_bill': '20', 'bill_amount': '20', 'proposed_sku_json': [{'name': 'Modern kitchens Salted Peanuts 25gm', 'sku_total': 10, 'offer_id': '', 'qty': 1, 'mrp': '10', 'offer_desc': '', 'skuid': '4500673', 'unit_price': 10, 'tray_id': '20', 'image_url': 'https://images.tinymart.in/product/4500673-8519.webp', 'door_id': '1'}, {'name': 'Modern kitchens Roasted Channa 32g', 'sku_total': 10, 'offer_id': '', 'qty': 1, 'mrp': '10', 'offer_desc': '', 'skuid': '4500647', 'unit_price': 10, 'tray_id': '13', 'image_url': 'https://images.tinymart.in/product/4500647-1968.png', 'door_id': '1'}], 'access_code': '97233039', 'order_id': 'TM06202507260622195243781', 'mobile': '9986566011'}, 'status': True, 'rstatus': True, 'msg': 'Order Data'}, 'server_status': 'order-started', 'order_id': 'TM06202507260622195243781'}}
[2026-06-22 19:53:51,222.222 INFO    ] 2026-06-22 19:53:51
[2026-06-22 19:53:51,268.268 INFO    ] 200
[2026-06-22 19:53:51,271.271 INFO    ] True
[2026-06-22 19:53:51,420.420 INFO    ] 200
[2026-06-22 19:53:51,423.423 INFO    ] {"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": ""}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 19:53:51,426.426 INFO    ] {'rstatus': False, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': ''}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}, 'status': 'False'}
[2026-06-22 19:53:51,429.429 INFO    ] *** process_order ***
[2026-06-22 19:53:52,693.693 INFO    ] 200
[2026-06-22 19:53:52,696.696 INFO    ] {"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": ""}, "rstatus": true, "delay": 0, "status": "True", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}
[2026-06-22 19:53:52,699.699 INFO    ] {'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': ''}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'True', 'delay': 0}
[2026-06-22 19:53:52,701.701 INFO    ] *** process_order ***
[2026-06-22 19:53:52,704.704 INFO    ] publish_status: order_id=TM06202507260622195243781
[2026-06-22 19:53:52,706.706 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622195243781
[2026-06-22 19:53:52,773.773 INFO    ] [publish_status] Message added to stream with ID: 1782138232749-0
[2026-06-22 19:53:52,775.775 INFO    ] Published to order:TM06202507260622195243781: {'server_response': '{"rstatus": true, "SectionStatus": {"SubHeader": "You can pull the door now.", "Header": " Your order is under process  ", "Note": "", "UI_Header": ""}, "voiceNote": "Door is open...", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True", "delay": 0}', 'server_status': 'doorOpened', 'order_id': 'TM06202507260622195243781'} (ID: 1782138232749-0)
[2026-06-22 19:53:53,829.829 INFO    ] 2026-06-22 19:53:53
[2026-06-22 19:53:53,831.831 INFO    ] publish_status: order_id=TM06202507260622195243781
[2026-06-22 19:53:53,834.834 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622195243781
[2026-06-22 19:53:53,917.917 INFO    ] [publish_status] Message added to stream with ID: 1782138233878-0
[2026-06-22 19:53:53,919.919 INFO    ] Published to order:TM06202507260622195243781: {'server_response': '{"rstatus": true, "SectionStatus": {"SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "Note": "", "UI_Header": ""}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True", "delay": 0}', 'server_status': 'processOrder', 'order_id': 'TM06202507260622195243781', 'timestamp': '2026-06-22T14:23:53.830415Z'} (ID: 1782138233878-0)
[2026-06-22 19:53:54,112.112 INFO    ] {'server_response': {'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': ''}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'True', 'delay': 0}, 'server_status': 'processOrder', 'order_id': 'TM06202507260622195243781'}
[2026-06-22 19:53:54,114.114 INFO    ] 200
[2026-06-22 19:53:54,117.117 INFO    ] {"data":{"server_response":{"rstatus":true,"SectionStatus":{"SubHeader":"Please wait while we process your order","Header":" Your order is under process  ","Note":"","UI_Header":""},"voiceNote":"Please Wait","SectionMain":{"Header":"Processing Order"},"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"status":"true","delay":0},"server_status":"processOrder","order_id":"TM06202507260622195243781"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 19:53:54,120.120 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_response': {'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': ''}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'true', 'delay': 0}, 'server_status': 'processOrder', 'order_id': 'TM06202507260622195243781'}}
[2026-06-22 19:53:54,123.123 INFO    ] 2026-06-22 19:53:54
[2026-06-22 19:53:54,125.125 INFO    ] None
[2026-06-22 19:53:54,128.128 INFO    ] Opening Door now
[2026-06-22 19:53:54,130.130 INFO    ] Opening Door now
[2026-06-22 19:53:54,133.133 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-22 19:53:54,136.136 INFO    ] 2026-06-22 19:53:54
[2026-06-22 19:53:54,138.138 INFO    ] playing audio file
[2026-06-22 19:53:54,155.155 INFO    ] 2026-06-22 19:53:54
[2026-06-22 19:53:54,159.159 INFO    ] 2026-06-22 19:53:54
[2026-06-22 19:53:57,363.363 INFO    ] 200
[2026-06-22 19:53:57,365.365 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Salted Peanuts 25gm"}, {"qty": 1, "name": "Modern kitchens Roasted Channa 32g"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Door 1 is open now"}
[2026-06-22 19:53:57,369.369 INFO    ] {'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Door 1 is open now', 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern kitchens Salted Peanuts 25gm'}, {'qty': 1, 'name': 'Modern kitchens Roasted Channa 32g'}]}, 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}, 'status': 'False'}
[2026-06-22 19:54:00,433.433 INFO    ] 200
[2026-06-22 19:54:00,436.436 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Salted Peanuts 25gm"}, {"qty": 1, "name": "Modern kitchens Roasted Channa 32g"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 19:54:00,439.439 INFO    ] {'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern kitchens Salted Peanuts 25gm'}, {'qty': 1, 'name': 'Modern kitchens Roasted Channa 32g'}]}, 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}, 'status': 'False'}
[2026-06-22 19:54:03,508.508 INFO    ] 200
[2026-06-22 19:54:03,511.511 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Salted Peanuts 25gm"}, {"qty": 1, "name": "Modern kitchens Roasted Channa 32g"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 19:54:03,514.514 INFO    ] Please close door 1
[2026-06-22 19:54:03,516.516 INFO    ] Please close door 1
[2026-06-22 19:54:03,519.519 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-22 19:54:03,522.522 INFO    ] 2026-06-22 19:54:03
[2026-06-22 19:54:03,525.525 INFO    ] playing audio file
[2026-06-22 19:54:03,544.544 INFO    ] 2026-06-22 19:54:03
[2026-06-22 19:54:03,548.548 INFO    ] publish_status: order_id=TM06202507260622195243781
[2026-06-22 19:54:03,551.551 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622195243781
[2026-06-22 19:54:03,608.608 INFO    ] [publish_status] Message added to stream with ID: 1782138243584-0
[2026-06-22 19:54:03,610.610 INFO    ] Published to order:TM06202507260622195243781: {'server_response': '{"rstatus": false, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW"}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Salted Peanuts 25gm"}, {"qty": 1, "name": "Modern kitchens Roasted Channa 32g"}]}, "error": {"code": 20001, "umessage": "In Progress", "tmessage": "In Progress", "data": {}}, "status": "False"}', 'server_status': 'OrderStatus', 'order_id': 'TM06202507260622195243781', 'timestamp': '2026-06-22T14:24:03.546302Z'} (ID: 1782138243584-0)
[2026-06-22 19:54:04,162.162 INFO    ] {'server_response': {'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern kitchens Salted Peanuts 25gm'}, {'qty': 1, 'name': 'Modern kitchens Roasted Channa 32g'}]}, 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}, 'status': 'False'}, 'server_status': 'OrderStatus', 'order_id': 'TM06202507260622195243781'}
[2026-06-22 19:54:04,164.164 INFO    ] 200
[2026-06-22 19:54:04,167.167 INFO    ] {"data":{"server_response":{"rstatus":false,"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 1","Note":"Please Close the door after picking up products","UI_Header":"DOOR 1\nIS \nOPEN \nNOW"},"voiceNote":"Please close door 1","SectionMain":{"Header":"Door Open"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Modern kitchens Salted Peanuts 25gm"},{"qty":1,"name":"Modern kitchens Roasted Channa 32g"}]},"error":{"code":20001,"umessage":"In Progress","tmessage":"In Progress","data":[]},"status":"false"},"server_status":"OrderStatus","order_id":"TM06202507260622195243781"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 19:54:04,170.170 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_response': {'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern kitchens Salted Peanuts 25gm'}, {'qty': 1, 'name': 'Modern kitchens Roasted Channa 32g'}]}, 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': []}, 'status': 'false'}, 'server_status': 'OrderStatus', 'order_id': 'TM06202507260622195243781'}}
[2026-06-22 19:54:04,173.173 INFO    ] {'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern kitchens Salted Peanuts 25gm'}, {'qty': 1, 'name': 'Modern kitchens Roasted Channa 32g'}]}, 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}, 'status': 'False'}
[2026-06-22 19:54:07,231.231 INFO    ] 200
[2026-06-22 19:54:07,234.234 INFO    ] {"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Modern kitchens Salted Peanuts 25gm"}, {"qty": 1, "name": "Modern kitchens Roasted Channa 32g"}]}, "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"}, "rstatus": false, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}
[2026-06-22 19:54:07,237.237 INFO    ] {'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Modern kitchens Salted Peanuts 25gm'}, {'qty': 1, 'name': 'Modern kitchens Roasted Channa 32g'}]}, 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}, 'status': 'False'}
[2026-06-22 19:54:10,308.308 INFO    ] 200
[2026-06-22 19:54:10,310.310 INFO    ] {"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"}, "rstatus": true, "delay": 100, "status": "True", "SectionMain": {"Header": "Door Closed"}, "voiceNote": "Transaction Completed"}
[2026-06-22 19:54:10,313.313 INFO    ] {'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': ''}, 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'status': 'True', 'delay': 100}
[2026-06-22 19:54:10,316.316 INFO    ] 2026-06-22 19:54:10
[2026-06-22 19:54:10,319.319 INFO    ] Order Completed 
[2026-06-22 19:54:10,322.322 INFO    ] Order Completed 
[2026-06-22 19:54:10,325.325 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-22 19:54:10,327.327 INFO    ] 2026-06-22 19:54:10
[2026-06-22 19:54:10,330.330 INFO    ] playing audio file
[2026-06-22 19:54:10,348.348 INFO    ] 2026-06-22 19:54:10
[2026-06-22 19:54:10,351.351 INFO    ] {'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': ''}, 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'status': 'True', 'delay': 100}
[2026-06-22 19:54:10,355.355 INFO    ] 2026-06-22 19:54:10
[2026-06-22 19:54:10,831.831 INFO    ] 200
[2026-06-22 19:54:10,833.833 INFO    ] {"skus": [{"tray_id": "13", "qty": 1, "mrp": "10", "door_id": "", "name": "Modern kitchens Roasted Channa 32g per peice", "sku_total": 10.0, "image_url": "https://images.tinymart.in/product/4500647-1968.png", "unit_price": "10", "skuid": "4500647"}, {"tray_id": "23", "qty": 2, "mrp": "10", "door_id": "", "name": "Modern kitchens Banana Chips 21gm per peice", "sku_total": 20.0, "image_url": "https://images.tinymart.in/product/4500648-25.webp", "unit_price": "10", "skuid": "4500648"}], "anomaly": 0, "rstatus": true, "orderId": "TM06202507260622195243781", "logic": "WBL", "total_amount": 30.0, "res": "True"}
[2026-06-22 19:54:10,836.836 INFO    ] {'res': 'True', 'logic': 'WBL', 'anomaly': 0, 'total_amount': 30.0, 'skus': [{'sku_total': 10.0, 'qty': 1, 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500647-1968.png', 'unit_price': '10', 'skuid': '4500647', 'tray_id': '13', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'door_id': ''}, {'sku_total': 20.0, 'qty': 2, 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'unit_price': '10', 'skuid': '4500648', 'tray_id': '23', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'door_id': ''}], 'rstatus': True, 'orderId': 'TM06202507260622195243781'}
[2026-06-22 19:54:10,839.839 INFO    ] {'res': 'True', 'logic': 'WBL', 'anomaly': 0, 'total_amount': 30.0, 'skus': [{'sku_total': 10.0, 'qty': 1, 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500647-1968.png', 'unit_price': '10', 'skuid': '4500647', 'tray_id': '13', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'door_id': ''}, {'sku_total': 20.0, 'qty': 2, 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'unit_price': '10', 'skuid': '4500648', 'tray_id': '23', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'door_id': ''}], 'rstatus': True, 'orderId': 'TM06202507260622195243781'}
[2026-06-22 19:54:10,842.842 INFO    ] 2026-06-22 19:54:10
[2026-06-22 19:54:10,844.844 INFO    ] 2026-06-22 19:54:10
[2026-06-22 19:54:10,846.846 INFO    ] 20
[2026-06-22 19:54:10,849.849 INFO    ] 2026-06-22 19:54:10
[2026-06-22 19:54:10,851.851 INFO    ] 2026-06-22 19:54:10
[2026-06-22 19:54:10,853.853 INFO    ]  You had Picked Excess of 10 Your Bill Amount is 30
[2026-06-22 19:54:10,856.856 INFO    ]  You had Picked Excess of 10 Your Bill Amount is 30
[2026-06-22 19:54:10,858.858 INFO    ] 3c19d73d1b538623ffc1020f3d4ac618
[2026-06-22 19:54:10,861.861 INFO    ] 2026-06-22 19:54:10
[2026-06-22 19:54:10,863.863 INFO    ] playing audio file
[2026-06-22 19:54:10,880.880 INFO    ] 2026-06-22 19:54:10
[2026-06-22 19:54:10,883.883 INFO    ] 2026-06-22 19:54:10
[2026-06-22 19:54:10,887.887 INFO    ] publish_status: order_id=TM06202507260622195243781
[2026-06-22 19:54:10,890.890 INFO    ] [publish_status] Adding message to stream: order:TM06202507260622195243781
[2026-06-22 19:54:10,948.948 INFO    ] [publish_status] Message added to stream with ID: 1782138250924-0
[2026-06-22 19:54:10,950.950 INFO    ] Published to order:TM06202507260622195243781: {'server_response': '{"res": "True", "logic": "WBL", "anomaly": 0, "total_amount": 30.0, "skus": [{"sku_total": 10.0, "qty": 1, "mrp": "10", "image_url": "https://images.tinymart.in/product/4500647-1968.png", "unit_price": "10", "skuid": "4500647", "tray_id": "13", "name": "Modern kitchens Roasted Channa 32g per peice", "door_id": ""}, {"sku_total": 20.0, "qty": 2, "mrp": "10", "image_url": "https://images.tinymart.in/product/4500648-25.webp", "unit_price": "10", "skuid": "4500648", "tray_id": "23", "name": "Modern kitchens Banana Chips 21gm per peice", "door_id": ""}], "rstatus": true, "orderId": "TM06202507260622195243781"}', 'server_status': 'invoiceOrder', 'order_id': 'TM06202507260622195243781', 'timestamp': '2026-06-22T14:24:10.885336Z'} (ID: 1782138250924-0)
[2026-06-22 19:54:12,878.878 INFO    ] {'server_response': {'res': 'True', 'logic': 'WBL', 'anomaly': 0, 'total_amount': 30.0, 'skus': [{'sku_total': 10.0, 'qty': 1, 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500647-1968.png', 'unit_price': '10', 'skuid': '4500647', 'tray_id': '13', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'door_id': ''}, {'sku_total': 20.0, 'qty': 2, 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'unit_price': '10', 'skuid': '4500648', 'tray_id': '23', 'name': 'Modern kitchens Banana Chips 21gm per peice', 'door_id': ''}], 'rstatus': True, 'orderId': 'TM06202507260622195243781'}, 'server_status': 'invoiceOrder', 'order_id': 'TM06202507260622195243781'}
[2026-06-22 19:54:12,881.881 INFO    ] 200
[2026-06-22 19:54:12,884.884 INFO    ] {"data":{"server_response":{"res":"true","logic":"WBL","anomaly":0,"total_amount":30,"skus":[{"sku_total":10,"qty":1,"mrp":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500647-1968.png","unit_price":"10","skuid":"4500647","tray_id":"13","name":"Modern kitchens Roasted Channa 32g per peice","door_id":""},{"sku_total":20,"qty":2,"mrp":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500648-25.webp","unit_price":"10","skuid":"4500648","tray_id":"23","name":"Modern kitchens Banana Chips 21gm per peice","door_id":""}],"rstatus":true,"orderId":"TM06202507260622195243781"},"server_status":"invoiceOrder","order_id":"TM06202507260622195243781"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-22 19:54:12,887.887 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_response': {'res': 'true', 'logic': 'WBL', 'anomaly': 0, 'total_amount': 30, 'skus': [{'name': 'Modern kitchens Roasted Channa 32g per peice', 'sku_total': 10, 'qty': 1, 'mrp': '10', 'skuid': '4500647', 'unit_price': '10', 'tray_id': '13', 'image_url': 'https://images.tinymart.in/product/4500647-1968.png', 'door_id': ''}, {'name': 'Modern kitchens Banana Chips 21gm per peice', 'sku_total': 20, 'qty': 2, 'mrp': '10', 'skuid': '4500648', 'unit_price': '10', 'tray_id': '23', 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'door_id': ''}], 'rstatus': True, 'orderId': 'TM06202507260622195243781'}, 'server_status': 'invoiceOrder', 'order_id': 'TM06202507260622195243781'}}
[2026-06-22 19:54:12,891.891 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}, 'data': {'server_response': {'res': 'true', 'logic': 'WBL', 'anomaly': 0, 'total_amount': 30, 'skus': [{'name': 'Modern kitchens Roasted Channa 32g per peice', 'sku_total': 10, 'qty': 1, 'mrp': '10', 'skuid': '4500647', 'unit_price': '10', 'tray_id': '13', 'image_url': 'https://images.tinymart.in/product/4500647-1968.png', 'door_id': ''}, {'name': 'Modern kitchens Banana Chips 21gm per peice', 'sku_total': 20, 'qty': 2, 'mrp': '10', 'skuid': '4500648', 'unit_price': '10', 'tray_id': '23', 'image_url': 'https://images.tinymart.in/product/4500648-25.webp', 'door_id': ''}], 'rstatus': True, 'orderId': 'TM06202507260622195243781'}, 'server_status': 'invoiceOrder', 'order_id': 'TM06202507260622195243781'}}
[2026-06-22 19:54:12,894.894 INFO    ] 2026-06-22 19:54:12
[2026-06-22 19:54:16,151.151 INFO    ] 200
[2026-06-22 19:54:16,154.154 INFO    ] {"orders_data_synced": [], "order_items": [], "orders_data": [], "orders_synced": [], "tray_synced": ["TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781", "TM06202507260622195243781"], "order_items_synced": [], "orders": [], "status": true, "tray_sync": []}
[2026-06-22 19:54:16,157.157 INFO    ] 2026-06-22 19:54:16
[2026-06-22 19:54:16,276.276 INFO    ] 200
[2026-06-22 19:54:16,278.278 INFO    ] True
[2026-06-22 19:54:16,280.280 INFO    ] cleanup_start_order_file_after_processing: order_id=TM06202507260622195243781
[2026-06-22 19:54:16,284.284 INFO    ] start order file deleted
[2026-06-22 19:54:16,286.286 INFO    ] Checking for system updates...
[2026-06-22 19:54:16,321.321 INFO    ] 200
[2026-06-22 19:54:16,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:54:16,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:54:16,378.378 INFO    ] No update needed
[2026-06-22 19:54:16,381.381 INFO    ] Checking for camera pi updates...
[2026-06-22 19:54:16,419.419 INFO    ] 200
[2026-06-22 19:54:16,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:54:16,469.469 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:54:16,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:54:16,562.562 INFO    ] No camera update needed
[2026-06-22 19:54:16,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:54:16,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:54:16,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:54:16,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:54:18,622.622 INFO    ] ================================================
[2026-06-22 19:54:18,641.641 INFO    ] Launching Daemon at Mon Jun 22 19:54:18 IST 2026
[2026-06-22 19:54:18,652.652 INFO    ] ================================================
[2026-06-22 19:54:19,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:54:19
[2026-06-22 19:54:19,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:54:20,108.108 INFO    ] Initializing speech engine...
[2026-06-22 19:54:20,115.115 INFO    ] 2026-06-22 19:54:20
[2026-06-22 19:54:20,417.417 INFO    ] 2026-06-22 19:54:20
[2026-06-22 19:54:20,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:54:20,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:54:20,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:54:20,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:54:20,845.845 INFO    ] time= 22/06/2026 19:54:20
[2026-06-22 19:54:20,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:54:20,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:54:20,933.933 INFO    ] No existing commands found in stream
[2026-06-22 19:54:25,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:54:25,948.948 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-22 19:54:28,517.517 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:54:28,520.520 INFO    ] Checking for system updates...
[2026-06-22 19:54:28,557.557 INFO    ] 200
[2026-06-22 19:54:28,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:54:28,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:54:28,617.617 INFO    ] No update needed
[2026-06-22 19:54:28,619.619 INFO    ] Checking for camera pi updates...
[2026-06-22 19:54:28,654.654 INFO    ] 200
[2026-06-22 19:54:28,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:54:28,698.698 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:54:28,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:54:28,784.784 INFO    ] No camera update needed
[2026-06-22 19:54:28,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:54:28,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:54:28,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:54:28,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:54:30,842.842 INFO    ] ================================================
[2026-06-22 19:54:30,858.858 INFO    ] Launching Daemon at Mon Jun 22 19:54:30 IST 2026
[2026-06-22 19:54:30,869.869 INFO    ] ================================================
[2026-06-22 19:54:31,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:54:31
[2026-06-22 19:54:31,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:54:32,260.260 INFO    ] Initializing speech engine...
[2026-06-22 19:54:32,273.273 INFO    ] 2026-06-22 19:54:32
[2026-06-22 19:54:32,560.560 INFO    ] 2026-06-22 19:54:32
[2026-06-22 19:54:32,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:54:32,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:54:32,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:54:33,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:54:33,131.131 INFO    ] time= 22/06/2026 19:54:33
[2026-06-22 19:54:33,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:54:33,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:54:33,289.289 INFO    ] No existing commands found in stream
[2026-06-22 19:54:38,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:54:38,322.322 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-22 19:54:43,743.743 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:54:43,746.746 INFO    ] Checking for system updates...
[2026-06-22 19:54:43,786.786 INFO    ] 200
[2026-06-22 19:54:43,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:54:43,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:54:43,860.860 INFO    ] No update needed
[2026-06-22 19:54:43,863.863 INFO    ] Checking for camera pi updates...
[2026-06-22 19:54:43,901.901 INFO    ] 200
[2026-06-22 19:54:43,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:54:43,945.945 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:54:44,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:54:44,033.033 INFO    ] No camera update needed
[2026-06-22 19:54:44,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:54:44,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:54:44,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:54:44,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:54:46,089.089 INFO    ] ================================================
[2026-06-22 19:54:46,105.105 INFO    ] Launching Daemon at Mon Jun 22 19:54:46 IST 2026
[2026-06-22 19:54:46,116.116 INFO    ] ================================================
[2026-06-22 19:54:46,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:54:46
[2026-06-22 19:54:47,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:54:47,490.490 INFO    ] Initializing speech engine...
[2026-06-22 19:54:47,496.496 INFO    ] 2026-06-22 19:54:47
[2026-06-22 19:54:47,744.744 INFO    ] 2026-06-22 19:54:47
[2026-06-22 19:54:47,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:54:47,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:54:48,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:54:48,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:54:48,202.202 INFO    ] time= 22/06/2026 19:54:48
[2026-06-22 19:54:48,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:54:48,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:54:48,364.364 INFO    ] No existing commands found in stream
[2026-06-22 19:54:53,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:54:53,378.378 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-22 19:54:56,055.055 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:54:56,057.057 INFO    ] Checking for system updates...
[2026-06-22 19:54:56,094.094 INFO    ] 200
[2026-06-22 19:54:56,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:54:56,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:54:56,154.154 INFO    ] No update needed
[2026-06-22 19:54:56,157.157 INFO    ] Checking for camera pi updates...
[2026-06-22 19:54:56,191.191 INFO    ] 200
[2026-06-22 19:54:56,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:54:56,240.240 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:54:56,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:54:56,419.419 INFO    ] No camera update needed
[2026-06-22 19:54:56,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:54:56,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:54:56,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:54:56,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:54:58,477.477 INFO    ] ================================================
[2026-06-22 19:54:58,492.492 INFO    ] Launching Daemon at Mon Jun 22 19:54:58 IST 2026
[2026-06-22 19:54:58,503.503 INFO    ] ================================================
[2026-06-22 19:54:59,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:54:59
[2026-06-22 19:54:59,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:54:59,860.860 INFO    ] Initializing speech engine...
[2026-06-22 19:54:59,866.866 INFO    ] 2026-06-22 19:54:59
[2026-06-22 19:55:00,163.163 INFO    ] 2026-06-22 19:55:00
[2026-06-22 19:55:00,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:55:00,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:55:00,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:55:00,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:55:00,713.713 INFO    ] time= 22/06/2026 19:55:00
[2026-06-22 19:55:00,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:55:00,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:55:00,949.949 INFO    ] No existing commands found in stream
[2026-06-22 19:55:05,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:55:05,982.982 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-22 19:55:08,141.141 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:55:08,145.145 INFO    ] Checking for system updates...
[2026-06-22 19:55:08,187.187 INFO    ] 200
[2026-06-22 19:55:08,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:55:08,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:55:08,252.252 INFO    ] No update needed
[2026-06-22 19:55:08,255.255 INFO    ] Checking for camera pi updates...
[2026-06-22 19:55:08,289.289 INFO    ] 200
[2026-06-22 19:55:08,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:55:08,336.336 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:55:08,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:55:08,425.425 INFO    ] No camera update needed
[2026-06-22 19:55:08,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:55:08,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:55:08,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:55:08,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:55:10,485.485 INFO    ] ================================================
[2026-06-22 19:55:10,501.501 INFO    ] Launching Daemon at Mon Jun 22 19:55:10 IST 2026
[2026-06-22 19:55:10,512.512 INFO    ] ================================================
[2026-06-22 19:55:11,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:55:11
[2026-06-22 19:55:11,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:55:12,065.065 INFO    ] Initializing speech engine...
[2026-06-22 19:55:12,078.078 INFO    ] 2026-06-22 19:55:12
[2026-06-22 19:55:12,362.362 INFO    ] 2026-06-22 19:55:12
[2026-06-22 19:55:12,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:55:15,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:55:15,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:55:16,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:55:16,333.333 INFO    ] time= 22/06/2026 19:55:16
[2026-06-22 19:55:16,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:55:16,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:55:16,414.414 INFO    ] No existing commands found in stream
[2026-06-22 19:55:21,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:55:21,427.427 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-22 19:55:24,037.037 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:55:24,040.040 INFO    ] Checking for system updates...
[2026-06-22 19:55:24,078.078 INFO    ] 200
[2026-06-22 19:55:24,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:55:24,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:55:24,138.138 INFO    ] No update needed
[2026-06-22 19:55:24,140.140 INFO    ] Checking for camera pi updates...
[2026-06-22 19:55:24,175.175 INFO    ] 200
[2026-06-22 19:55:24,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:55:24,219.219 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:55:24,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:55:24,308.308 INFO    ] No camera update needed
[2026-06-22 19:55:24,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:55:24,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:55:24,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:55:24,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:55:26,365.365 INFO    ] ================================================
[2026-06-22 19:55:26,380.380 INFO    ] Launching Daemon at Mon Jun 22 19:55:26 IST 2026
[2026-06-22 19:55:26,391.391 INFO    ] ================================================
[2026-06-22 19:55:26,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:55:26
[2026-06-22 19:55:27,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:55:27,942.942 INFO    ] Initializing speech engine...
[2026-06-22 19:55:27,955.955 INFO    ] 2026-06-22 19:55:27
[2026-06-22 19:55:28,241.241 INFO    ] 2026-06-22 19:55:28
[2026-06-22 19:55:28,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:55:28,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:55:28,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:55:28,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:55:28,706.706 INFO    ] time= 22/06/2026 19:55:28
[2026-06-22 19:55:28,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:55:28,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:55:28,862.862 INFO    ] No existing commands found in stream
[2026-06-22 19:55:33,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:55:33,891.891 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-22 19:55:37,868.868 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:55:37,871.871 INFO    ] Checking for system updates...
[2026-06-22 19:55:37,912.912 INFO    ] 200
[2026-06-22 19:55:37,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:55:37,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:55:37,971.971 INFO    ] No update needed
[2026-06-22 19:55:37,973.973 INFO    ] Checking for camera pi updates...
[2026-06-22 19:55:38,007.007 INFO    ] 200
[2026-06-22 19:55:38,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:55:38,052.052 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:55:38,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:55:38,139.139 INFO    ] No camera update needed
[2026-06-22 19:55:38,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:55:38,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:55:38,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:55:38,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:55:40,194.194 INFO    ] ================================================
[2026-06-22 19:55:40,210.210 INFO    ] Launching Daemon at Mon Jun 22 19:55:40 IST 2026
[2026-06-22 19:55:40,222.222 INFO    ] ================================================
[2026-06-22 19:55:40,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:55:40
[2026-06-22 19:55:41,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:55:41,592.592 INFO    ] Initializing speech engine...
[2026-06-22 19:55:41,601.601 INFO    ] 2026-06-22 19:55:41
[2026-06-22 19:55:41,850.850 INFO    ] 2026-06-22 19:55:41
[2026-06-22 19:55:41,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:55:45,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:55:45,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:55:45,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:55:45,662.662 INFO    ] time= 22/06/2026 19:55:45
[2026-06-22 19:55:45,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:55:45,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:55:45,729.729 INFO    ] No existing commands found in stream
[2026-06-22 19:55:50,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:55:50,741.741 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-22 19:55:54,867.867 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:55:54,869.869 INFO    ] Checking for system updates...
[2026-06-22 19:55:54,906.906 INFO    ] 200
[2026-06-22 19:55:54,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:55:54,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:55:54,963.963 INFO    ] No update needed
[2026-06-22 19:55:54,966.966 INFO    ] Checking for camera pi updates...
[2026-06-22 19:55:55,004.004 INFO    ] 200
[2026-06-22 19:55:55,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:55:55,047.047 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:55:55,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:55:55,133.133 INFO    ] No camera update needed
[2026-06-22 19:55:55,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:55:55,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:55:55,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:55:55,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:55:57,190.190 INFO    ] ================================================
[2026-06-22 19:55:57,206.206 INFO    ] Launching Daemon at Mon Jun 22 19:55:57 IST 2026
[2026-06-22 19:55:57,218.218 INFO    ] ================================================
[2026-06-22 19:55:57,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:55:57
[2026-06-22 19:55:58,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:55:58,659.659 INFO    ] Initializing speech engine...
[2026-06-22 19:55:58,667.667 INFO    ] 2026-06-22 19:55:58
[2026-06-22 19:55:58,915.915 INFO    ] 2026-06-22 19:55:58
[2026-06-22 19:55:58,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:55:59,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:55:59,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:55:59,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:55:59,409.409 INFO    ] time= 22/06/2026 19:55:59
[2026-06-22 19:55:59,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:55:59,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:55:59,607.607 INFO    ] No existing commands found in stream
[2026-06-22 19:56:04,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:56:04,634.634 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-22 19:56:06,239.239 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:56:06,240.240 INFO    ] Checking for system updates...
[2026-06-22 19:56:06,261.261 INFO    ] 200
[2026-06-22 19:56:06,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:56:06,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:56:06,295.295 INFO    ] No update needed
[2026-06-22 19:56:06,296.296 INFO    ] Checking for camera pi updates...
[2026-06-22 19:56:06,315.315 INFO    ] 200
[2026-06-22 19:56:06,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:56:06,355.355 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:56:06,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:56:06,423.423 INFO    ] No camera update needed
[2026-06-22 19:56:06,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:56:06,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:56:06,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:56:06,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:56:08,480.480 INFO    ] ================================================
[2026-06-22 19:56:08,498.498 INFO    ] Launching Daemon at Mon Jun 22 19:56:08 IST 2026
[2026-06-22 19:56:08,511.511 INFO    ] ================================================
[2026-06-22 19:56:09,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:56:09
[2026-06-22 19:56:09,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:56:10,103.103 INFO    ] Initializing speech engine...
[2026-06-22 19:56:10,127.127 INFO    ] 2026-06-22 19:56:10
[2026-06-22 19:56:10,383.383 INFO    ] 2026-06-22 19:56:10
[2026-06-22 19:56:10,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:56:10,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:56:10,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:56:10,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:56:10,875.875 INFO    ] time= 22/06/2026 19:56:10
[2026-06-22 19:56:10,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:56:10,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:56:11,013.013 INFO    ] No existing commands found in stream
[2026-06-22 19:56:16,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:56:16,028.028 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-22 19:56:19,078.078 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:56:19,080.080 INFO    ] Checking for system updates...
[2026-06-22 19:56:19,102.102 INFO    ] 200
[2026-06-22 19:56:19,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:56:19,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:56:19,139.139 INFO    ] No update needed
[2026-06-22 19:56:19,142.142 INFO    ] Checking for camera pi updates...
[2026-06-22 19:56:19,178.178 INFO    ] 200
[2026-06-22 19:56:19,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:56:19,222.222 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:56:19,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:56:19,327.327 INFO    ] No camera update needed
[2026-06-22 19:56:19,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:56:19,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:56:19,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:56:19,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:56:21,386.386 INFO    ] ================================================
[2026-06-22 19:56:21,402.402 INFO    ] Launching Daemon at Mon Jun 22 19:56:21 IST 2026
[2026-06-22 19:56:21,415.415 INFO    ] ================================================
[2026-06-22 19:56:22,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:56:22
[2026-06-22 19:56:22,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:56:22,889.889 INFO    ] Initializing speech engine...
[2026-06-22 19:56:22,899.899 INFO    ] 2026-06-22 19:56:22
[2026-06-22 19:56:23,150.150 INFO    ] 2026-06-22 19:56:23
[2026-06-22 19:56:23,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:56:23,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:56:23,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:56:23,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:56:23,634.634 INFO    ] time= 22/06/2026 19:56:23
[2026-06-22 19:56:23,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:56:23,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:56:23,845.845 INFO    ] No existing commands found in stream
[2026-06-22 19:56:28,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:56:28,873.873 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-22 19:56:31,946.946 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:56:31,949.949 INFO    ] Checking for system updates...
[2026-06-22 19:56:31,993.993 INFO    ] 200
[2026-06-22 19:56:31,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:56:32,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:56:32,077.077 INFO    ] No update needed
[2026-06-22 19:56:32,081.081 INFO    ] Checking for camera pi updates...
[2026-06-22 19:56:32,120.120 INFO    ] 200
[2026-06-22 19:56:32,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:56:32,171.171 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:56:32,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:56:32,240.240 INFO    ] No camera update needed
[2026-06-22 19:56:32,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:56:32,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:56:32,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:56:32,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:56:34,298.298 INFO    ] ================================================
[2026-06-22 19:56:34,314.314 INFO    ] Launching Daemon at Mon Jun 22 19:56:34 IST 2026
[2026-06-22 19:56:34,325.325 INFO    ] ================================================
[2026-06-22 19:56:34,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:56:34
[2026-06-22 19:56:35,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:56:35,703.703 INFO    ] Initializing speech engine...
[2026-06-22 19:56:35,713.713 INFO    ] 2026-06-22 19:56:35
[2026-06-22 19:56:35,975.975 INFO    ] 2026-06-22 19:56:35
[2026-06-22 19:56:36,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:56:36,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:56:36,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:56:36,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:56:36,461.461 INFO    ] time= 22/06/2026 19:56:36
[2026-06-22 19:56:36,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:56:36,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:56:36,671.671 INFO    ] No existing commands found in stream
[2026-06-22 19:56:41,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:56:41,690.690 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-22 19:56:47,464.464 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:56:47,467.467 INFO    ] Checking for system updates...
[2026-06-22 19:56:47,504.504 INFO    ] 200
[2026-06-22 19:56:47,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:56:47,560.560 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:56:47,563.563 INFO    ] No update needed
[2026-06-22 19:56:47,567.567 INFO    ] Checking for camera pi updates...
[2026-06-22 19:56:47,603.603 INFO    ] 200
[2026-06-22 19:56:47,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:56:47,649.649 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:56:47,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:56:47,761.761 INFO    ] No camera update needed
[2026-06-22 19:56:47,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:56:47,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:56:47,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:56:47,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:56:49,818.818 INFO    ] ================================================
[2026-06-22 19:56:49,833.833 INFO    ] Launching Daemon at Mon Jun 22 19:56:49 IST 2026
[2026-06-22 19:56:49,844.844 INFO    ] ================================================
[2026-06-22 19:56:50,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:56:50
[2026-06-22 19:56:51,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:56:51,305.305 INFO    ] Initializing speech engine...
[2026-06-22 19:56:51,315.315 INFO    ] 2026-06-22 19:56:51
[2026-06-22 19:56:51,600.600 INFO    ] 2026-06-22 19:56:51
[2026-06-22 19:56:51,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:56:51,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:56:51,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:56:52,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:56:52,085.085 INFO    ] time= 22/06/2026 19:56:52
[2026-06-22 19:56:52,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:56:52,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:56:52,287.287 INFO    ] No existing commands found in stream
[2026-06-22 19:56:57,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:56:57,307.307 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-22 19:56:57,895.895 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:56:57,897.897 INFO    ] Checking for system updates...
[2026-06-22 19:56:57,938.938 INFO    ] 200
[2026-06-22 19:56:57,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:56:58,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:56:58,004.004 INFO    ] No update needed
[2026-06-22 19:56:58,006.006 INFO    ] Checking for camera pi updates...
[2026-06-22 19:56:58,041.041 INFO    ] 200
[2026-06-22 19:56:58,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:56:58,084.084 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:56:58,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:56:58,267.267 INFO    ] No camera update needed
[2026-06-22 19:56:58,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:56:58,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:56:58,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:56:58,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:57:00,325.325 INFO    ] ================================================
[2026-06-22 19:57:00,340.340 INFO    ] Launching Daemon at Mon Jun 22 19:57:00 IST 2026
[2026-06-22 19:57:00,351.351 INFO    ] ================================================
[2026-06-22 19:57:00,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:57:00
[2026-06-22 19:57:01,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:57:01,927.927 INFO    ] Initializing speech engine...
[2026-06-22 19:57:01,931.931 INFO    ] 2026-06-22 19:57:01
[2026-06-22 19:57:02,336.336 INFO    ] 2026-06-22 19:57:02
[2026-06-22 19:57:02,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:57:02,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:57:02,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:57:02,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:57:02,878.878 INFO    ] time= 22/06/2026 19:57:02
[2026-06-22 19:57:02,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:57:02,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:57:03,078.078 INFO    ] No existing commands found in stream
[2026-06-22 19:57:08,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:57:08,128.128 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-22 19:57:11,839.839 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:57:11,842.842 INFO    ] Checking for system updates...
[2026-06-22 19:57:11,884.884 INFO    ] 200
[2026-06-22 19:57:11,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:57:11,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:57:11,943.943 INFO    ] No update needed
[2026-06-22 19:57:11,946.946 INFO    ] Checking for camera pi updates...
[2026-06-22 19:57:11,982.982 INFO    ] 200
[2026-06-22 19:57:11,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:57:12,031.031 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:57:12,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:57:12,120.120 INFO    ] No camera update needed
[2026-06-22 19:57:12,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:57:12,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:57:12,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:57:12,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:57:14,179.179 INFO    ] ================================================
[2026-06-22 19:57:14,195.195 INFO    ] Launching Daemon at Mon Jun 22 19:57:14 IST 2026
[2026-06-22 19:57:14,206.206 INFO    ] ================================================
[2026-06-22 19:57:14,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:57:14
[2026-06-22 19:57:15,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:57:15,631.631 INFO    ] Initializing speech engine...
[2026-06-22 19:57:15,640.640 INFO    ] 2026-06-22 19:57:15
[2026-06-22 19:57:15,936.936 INFO    ] 2026-06-22 19:57:15
[2026-06-22 19:57:15,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:57:18,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:57:18,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:57:18,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:57:18,925.925 INFO    ] time= 22/06/2026 19:57:18
[2026-06-22 19:57:18,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:57:18,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:57:19,022.022 INFO    ] No existing commands found in stream
[2026-06-22 19:57:24,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:57:24,034.034 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-22 19:57:26,428.428 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:57:26,431.431 INFO    ] Checking for system updates...
[2026-06-22 19:57:26,468.468 INFO    ] 200
[2026-06-22 19:57:26,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:57:26,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:57:26,528.528 INFO    ] No update needed
[2026-06-22 19:57:26,530.530 INFO    ] Checking for camera pi updates...
[2026-06-22 19:57:26,568.568 INFO    ] 200
[2026-06-22 19:57:26,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:57:26,617.617 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:57:26,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:57:26,706.706 INFO    ] No camera update needed
[2026-06-22 19:57:26,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:57:26,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:57:26,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:57:26,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:57:28,763.763 INFO    ] ================================================
[2026-06-22 19:57:28,778.778 INFO    ] Launching Daemon at Mon Jun 22 19:57:28 IST 2026
[2026-06-22 19:57:28,789.789 INFO    ] ================================================
[2026-06-22 19:57:29,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:57:29
[2026-06-22 19:57:29,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:57:30,213.213 INFO    ] Initializing speech engine...
[2026-06-22 19:57:30,222.222 INFO    ] 2026-06-22 19:57:30
[2026-06-22 19:57:30,468.468 INFO    ] 2026-06-22 19:57:30
[2026-06-22 19:57:30,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:57:30,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:57:30,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:57:30,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:57:30,919.919 INFO    ] time= 22/06/2026 19:57:30
[2026-06-22 19:57:30,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:57:31,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:57:31,149.149 INFO    ] No existing commands found in stream
[2026-06-22 19:57:36,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:57:36,179.179 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-22 19:57:36,904.904 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 19:57:36,907.907 INFO    ] Checking for system updates...
[2026-06-22 19:57:36,943.943 INFO    ] 200
[2026-06-22 19:57:36,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:57:36,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:57:37,002.002 INFO    ] No update needed
[2026-06-22 19:57:37,004.004 INFO    ] Checking for camera pi updates...
[2026-06-22 19:57:37,038.038 INFO    ] 200
[2026-06-22 19:57:37,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:57:37,081.081 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:57:37,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:57:37,168.168 INFO    ] No camera update needed
[2026-06-22 19:57:37,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:57:37,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:57:37,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:57:37,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:57:39,226.226 INFO    ] ================================================
[2026-06-22 19:57:39,241.241 INFO    ] Launching Daemon at Mon Jun 22 19:57:39 IST 2026
[2026-06-22 19:57:39,253.253 INFO    ] ================================================
[2026-06-22 19:57:39,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:57:39
[2026-06-22 19:57:40,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:57:40,801.801 INFO    ] Initializing speech engine...
[2026-06-22 19:57:40,808.808 INFO    ] 2026-06-22 19:57:40
[2026-06-22 19:57:41,126.126 INFO    ] 2026-06-22 19:57:41
[2026-06-22 19:57:41,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:57:41,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:57:41,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:57:41,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:57:41,650.650 INFO    ] time= 22/06/2026 19:57:41
[2026-06-22 19:57:41,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:57:41,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:57:41,804.804 INFO    ] No existing commands found in stream
[2026-06-22 19:57:46,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:57:46,832.832 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-22 19:57:49,897.897 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:57:49,900.900 INFO    ] Checking for system updates...
[2026-06-22 19:57:49,937.937 INFO    ] 200
[2026-06-22 19:57:49,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:57:49,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:57:49,999.999 INFO    ] No update needed
[2026-06-22 19:57:50,002.002 INFO    ] Checking for camera pi updates...
[2026-06-22 19:57:50,037.037 INFO    ] 200
[2026-06-22 19:57:50,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:57:50,082.082 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:57:50,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:57:50,183.183 INFO    ] No camera update needed
[2026-06-22 19:57:50,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:57:50,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:57:50,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:57:50,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:57:52,244.244 INFO    ] ================================================
[2026-06-22 19:57:52,260.260 INFO    ] Launching Daemon at Mon Jun 22 19:57:52 IST 2026
[2026-06-22 19:57:52,272.272 INFO    ] ================================================
[2026-06-22 19:57:52,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:57:52
[2026-06-22 19:57:53,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:57:53,819.819 INFO    ] Initializing speech engine...
[2026-06-22 19:57:53,829.829 INFO    ] 2026-06-22 19:57:53
[2026-06-22 19:57:54,103.103 INFO    ] 2026-06-22 19:57:54
[2026-06-22 19:57:54,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:57:54,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:57:54,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:57:54,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:57:54,596.596 INFO    ] time= 22/06/2026 19:57:54
[2026-06-22 19:57:54,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:57:54,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:57:54,809.809 INFO    ] No existing commands found in stream
[2026-06-22 19:57:59,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:57:59,829.829 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-22 19:58:00,961.961 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 19:58:00,963.963 INFO    ] Checking for system updates...
[2026-06-22 19:58:00,984.984 INFO    ] 200
[2026-06-22 19:58:00,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:58:01,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:58:01,021.021 INFO    ] No update needed
[2026-06-22 19:58:01,022.022 INFO    ] Checking for camera pi updates...
[2026-06-22 19:58:01,048.048 INFO    ] 200
[2026-06-22 19:58:01,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:58:01,097.097 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:58:01,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:58:01,211.211 INFO    ] No camera update needed
[2026-06-22 19:58:01,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:58:01,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:58:01,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:58:01,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:58:03,270.270 INFO    ] ================================================
[2026-06-22 19:58:03,287.287 INFO    ] Launching Daemon at Mon Jun 22 19:58:03 IST 2026
[2026-06-22 19:58:03,298.298 INFO    ] ================================================
[2026-06-22 19:58:03,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:58:03
[2026-06-22 19:58:04,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:58:04,929.929 INFO    ] Initializing speech engine...
[2026-06-22 19:58:04,941.941 INFO    ] 2026-06-22 19:58:04
[2026-06-22 19:58:05,222.222 INFO    ] 2026-06-22 19:58:05
[2026-06-22 19:58:05,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:58:05,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:58:05,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:58:05,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:58:06,013.013 INFO    ] time= 22/06/2026 19:58:05
[2026-06-22 19:58:06,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:58:06,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:58:06,210.210 INFO    ] No existing commands found in stream
[2026-06-22 19:58:11,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:58:11,224.224 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-22 19:58:11,834.834 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:58:11,835.835 INFO    ] Checking for system updates...
[2026-06-22 19:58:11,857.857 INFO    ] 200
[2026-06-22 19:58:11,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:58:11,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:58:11,893.893 INFO    ] No update needed
[2026-06-22 19:58:11,894.894 INFO    ] Checking for camera pi updates...
[2026-06-22 19:58:11,917.917 INFO    ] 200
[2026-06-22 19:58:11,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:58:11,949.949 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:58:12,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:58:12,034.034 INFO    ] No camera update needed
[2026-06-22 19:58:12,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:58:12,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:58:12,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:58:12,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:58:14,094.094 INFO    ] ================================================
[2026-06-22 19:58:14,109.109 INFO    ] Launching Daemon at Mon Jun 22 19:58:14 IST 2026
[2026-06-22 19:58:14,120.120 INFO    ] ================================================
[2026-06-22 19:58:14,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:58:14
[2026-06-22 19:58:15,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:58:15,664.664 INFO    ] Initializing speech engine...
[2026-06-22 19:58:15,674.674 INFO    ] 2026-06-22 19:58:15
[2026-06-22 19:58:15,980.980 INFO    ] 2026-06-22 19:58:15
[2026-06-22 19:58:16,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:58:18,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:58:18,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:58:19,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:58:19,754.754 INFO    ] time= 22/06/2026 19:58:19
[2026-06-22 19:58:19,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:58:19,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:58:19,824.824 INFO    ] No existing commands found in stream
[2026-06-22 19:58:24,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:58:24,836.836 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-22 19:58:27,792.792 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:58:27,795.795 INFO    ] Checking for system updates...
[2026-06-22 19:58:27,833.833 INFO    ] 200
[2026-06-22 19:58:27,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:58:27,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:58:27,892.892 INFO    ] No update needed
[2026-06-22 19:58:27,895.895 INFO    ] Checking for camera pi updates...
[2026-06-22 19:58:27,930.930 INFO    ] 200
[2026-06-22 19:58:27,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:58:27,972.972 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:58:28,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:58:28,048.048 INFO    ] No camera update needed
[2026-06-22 19:58:28,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:58:28,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:58:28,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:58:28,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:58:30,103.103 INFO    ] ================================================
[2026-06-22 19:58:30,118.118 INFO    ] Launching Daemon at Mon Jun 22 19:58:30 IST 2026
[2026-06-22 19:58:30,129.129 INFO    ] ================================================
[2026-06-22 19:58:30,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:58:30
[2026-06-22 19:58:31,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:58:31,577.577 INFO    ] Initializing speech engine...
[2026-06-22 19:58:31,587.587 INFO    ] 2026-06-22 19:58:31
[2026-06-22 19:58:31,889.889 INFO    ] 2026-06-22 19:58:31
[2026-06-22 19:58:31,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:58:32,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:58:32,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:58:32,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:58:32,317.317 INFO    ] time= 22/06/2026 19:58:32
[2026-06-22 19:58:32,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:58:32,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:58:32,519.519 INFO    ] No existing commands found in stream
[2026-06-22 19:58:37,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:58:37,545.545 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-22 19:58:38,485.485 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:58:38,488.488 INFO    ] Checking for system updates...
[2026-06-22 19:58:38,525.525 INFO    ] 200
[2026-06-22 19:58:38,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:58:38,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:58:38,583.583 INFO    ] No update needed
[2026-06-22 19:58:38,586.586 INFO    ] Checking for camera pi updates...
[2026-06-22 19:58:38,623.623 INFO    ] 200
[2026-06-22 19:58:38,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:58:38,671.671 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:58:38,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:58:38,779.779 INFO    ] No camera update needed
[2026-06-22 19:58:38,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:58:38,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:58:38,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:58:38,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:58:40,835.835 INFO    ] ================================================
[2026-06-22 19:58:40,851.851 INFO    ] Launching Daemon at Mon Jun 22 19:58:40 IST 2026
[2026-06-22 19:58:40,862.862 INFO    ] ================================================
[2026-06-22 19:58:41,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:58:41
[2026-06-22 19:58:41,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:58:42,188.188 INFO    ] Initializing speech engine...
[2026-06-22 19:58:42,194.194 INFO    ] 2026-06-22 19:58:42
[2026-06-22 19:58:42,471.471 INFO    ] 2026-06-22 19:58:42
[2026-06-22 19:58:42,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:58:42,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:58:42,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:58:42,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:58:42,955.955 INFO    ] time= 22/06/2026 19:58:42
[2026-06-22 19:58:43,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:58:43,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:58:43,196.196 INFO    ] No existing commands found in stream
[2026-06-22 19:58:48,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:58:48,221.221 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-22 19:58:51,216.216 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:58:51,218.218 INFO    ] Checking for system updates...
[2026-06-22 19:58:51,254.254 INFO    ] 200
[2026-06-22 19:58:51,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:58:51,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:58:51,314.314 INFO    ] No update needed
[2026-06-22 19:58:51,316.316 INFO    ] Checking for camera pi updates...
[2026-06-22 19:58:51,354.354 INFO    ] 200
[2026-06-22 19:58:51,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:58:51,397.397 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:58:51,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:58:51,503.503 INFO    ] No camera update needed
[2026-06-22 19:58:51,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:58:51,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:58:51,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:58:51,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:58:53,562.562 INFO    ] ================================================
[2026-06-22 19:58:53,577.577 INFO    ] Launching Daemon at Mon Jun 22 19:58:53 IST 2026
[2026-06-22 19:58:53,588.588 INFO    ] ================================================
[2026-06-22 19:58:54,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:58:54
[2026-06-22 19:58:54,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:58:54,941.941 INFO    ] Initializing speech engine...
[2026-06-22 19:58:54,963.963 INFO    ] 2026-06-22 19:58:54
[2026-06-22 19:58:55,271.271 INFO    ] 2026-06-22 19:58:55
[2026-06-22 19:58:55,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:58:55,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:58:55,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:58:55,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:58:55,749.749 INFO    ] time= 22/06/2026 19:58:55
[2026-06-22 19:58:55,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:58:55,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:58:55,966.966 INFO    ] No existing commands found in stream
[2026-06-22 19:59:00,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:59:00,998.998 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-22 19:59:04,694.694 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:59:04,697.697 INFO    ] Checking for system updates...
[2026-06-22 19:59:04,736.736 INFO    ] 200
[2026-06-22 19:59:04,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:59:04,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:59:04,800.800 INFO    ] No update needed
[2026-06-22 19:59:04,803.803 INFO    ] Checking for camera pi updates...
[2026-06-22 19:59:04,837.837 INFO    ] 200
[2026-06-22 19:59:04,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:59:04,880.880 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:59:04,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:59:04,964.964 INFO    ] No camera update needed
[2026-06-22 19:59:04,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:59:04,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:59:04,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:59:04,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:59:07,021.021 INFO    ] ================================================
[2026-06-22 19:59:07,037.037 INFO    ] Launching Daemon at Mon Jun 22 19:59:07 IST 2026
[2026-06-22 19:59:07,047.047 INFO    ] ================================================
[2026-06-22 19:59:07,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:59:07
[2026-06-22 19:59:08,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:59:08,471.471 INFO    ] Initializing speech engine...
[2026-06-22 19:59:08,484.484 INFO    ] 2026-06-22 19:59:08
[2026-06-22 19:59:08,735.735 INFO    ] 2026-06-22 19:59:08
[2026-06-22 19:59:08,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:59:08,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:59:08,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:59:09,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:59:09,113.113 INFO    ] time= 22/06/2026 19:59:09
[2026-06-22 19:59:09,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:59:09,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:59:09,193.193 INFO    ] No existing commands found in stream
[2026-06-22 19:59:14,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:59:14,226.226 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-22 19:59:16,677.677 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 19:59:16,680.680 INFO    ] Checking for system updates...
[2026-06-22 19:59:16,716.716 INFO    ] 200
[2026-06-22 19:59:16,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:59:16,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:59:16,782.782 INFO    ] No update needed
[2026-06-22 19:59:16,784.784 INFO    ] Checking for camera pi updates...
[2026-06-22 19:59:16,821.821 INFO    ] 200
[2026-06-22 19:59:16,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:59:16,864.864 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:59:16,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:59:16,953.953 INFO    ] No camera update needed
[2026-06-22 19:59:16,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:59:16,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:59:16,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:59:16,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:59:19,009.009 INFO    ] ================================================
[2026-06-22 19:59:19,024.024 INFO    ] Launching Daemon at Mon Jun 22 19:59:19 IST 2026
[2026-06-22 19:59:19,037.037 INFO    ] ================================================
[2026-06-22 19:59:19,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:59:19
[2026-06-22 19:59:20,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:59:20,499.499 INFO    ] Initializing speech engine...
[2026-06-22 19:59:20,520.520 INFO    ] 2026-06-22 19:59:20
[2026-06-22 19:59:20,805.805 INFO    ] 2026-06-22 19:59:20
[2026-06-22 19:59:20,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:59:22,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:59:22,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:59:22,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:59:22,723.723 INFO    ] time= 22/06/2026 19:59:22
[2026-06-22 19:59:22,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:59:22,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:59:22,868.868 INFO    ] No existing commands found in stream
[2026-06-22 19:59:27,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:59:27,881.881 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-22 19:59:29,125.125 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 19:59:29,127.127 INFO    ] Checking for system updates...
[2026-06-22 19:59:29,164.164 INFO    ] 200
[2026-06-22 19:59:29,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:59:29,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:59:29,230.230 INFO    ] No update needed
[2026-06-22 19:59:29,232.232 INFO    ] Checking for camera pi updates...
[2026-06-22 19:59:29,265.265 INFO    ] 200
[2026-06-22 19:59:29,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:59:29,308.308 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:59:29,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:59:29,376.376 INFO    ] No camera update needed
[2026-06-22 19:59:29,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:59:29,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:59:29,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:59:29,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:59:31,430.430 INFO    ] ================================================
[2026-06-22 19:59:31,446.446 INFO    ] Launching Daemon at Mon Jun 22 19:59:31 IST 2026
[2026-06-22 19:59:31,456.456 INFO    ] ================================================
[2026-06-22 19:59:32,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:59:32
[2026-06-22 19:59:32,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:59:32,993.993 INFO    ] Initializing speech engine...
[2026-06-22 19:59:33,003.003 INFO    ] 2026-06-22 19:59:32
[2026-06-22 19:59:33,272.272 INFO    ] 2026-06-22 19:59:33
[2026-06-22 19:59:33,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:59:33,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:59:33,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:59:33,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:59:33,849.849 INFO    ] time= 22/06/2026 19:59:33
[2026-06-22 19:59:33,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:59:33,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:59:33,982.982 INFO    ] No existing commands found in stream
[2026-06-22 19:59:39,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:59:39,010.010 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-22 19:59:41,315.315 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 19:59:41,318.318 INFO    ] Checking for system updates...
[2026-06-22 19:59:41,355.355 INFO    ] 200
[2026-06-22 19:59:41,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:59:41,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:59:41,414.414 INFO    ] No update needed
[2026-06-22 19:59:41,417.417 INFO    ] Checking for camera pi updates...
[2026-06-22 19:59:41,455.455 INFO    ] 200
[2026-06-22 19:59:41,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:59:41,498.498 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:59:41,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 19:59:41,598.598 INFO    ] No camera update needed
[2026-06-22 19:59:41,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:59:41,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:59:41,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:59:41,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:59:43,655.655 INFO    ] ================================================
[2026-06-22 19:59:43,670.670 INFO    ] Launching Daemon at Mon Jun 22 19:59:43 IST 2026
[2026-06-22 19:59:43,681.681 INFO    ] ================================================
[2026-06-22 19:59:44,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:59:44
[2026-06-22 19:59:44,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:59:45,043.043 INFO    ] Initializing speech engine...
[2026-06-22 19:59:45,049.049 INFO    ] 2026-06-22 19:59:45
[2026-06-22 19:59:45,310.310 INFO    ] 2026-06-22 19:59:45
[2026-06-22 19:59:45,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:59:45,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:59:45,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:59:45,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:59:45,802.802 INFO    ] time= 22/06/2026 19:59:45
[2026-06-22 19:59:45,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:59:45,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:59:46,004.004 INFO    ] No existing commands found in stream
[2026-06-22 19:59:51,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 19:59:51,032.032 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-22 19:59:53,330.330 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 19:59:53,332.332 INFO    ] Checking for system updates...
[2026-06-22 19:59:53,366.366 INFO    ] 200
[2026-06-22 19:59:53,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:59:53,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:59:53,425.425 INFO    ] No update needed
[2026-06-22 19:59:53,427.427 INFO    ] Checking for camera pi updates...
[2026-06-22 19:59:53,465.465 INFO    ] 200
[2026-06-22 19:59:53,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 19:59:53,512.512 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 19:59:53,593.593 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 19:59:53,596.596 INFO    ] No camera update needed
[2026-06-22 19:59:53,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-22 19:59:53,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 19:59:53,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 19:59:53,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 19:59:55,654.654 INFO    ] ================================================
[2026-06-22 19:59:55,670.670 INFO    ] Launching Daemon at Mon Jun 22 19:59:55 IST 2026
[2026-06-22 19:59:55,681.681 INFO    ] ================================================
[2026-06-22 19:59:56,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 19:59:56
[2026-06-22 19:59:56,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 19:59:57,102.102 INFO    ] Initializing speech engine...
[2026-06-22 19:59:57,117.117 INFO    ] 2026-06-22 19:59:57
[2026-06-22 19:59:57,391.391 INFO    ] 2026-06-22 19:59:57
[2026-06-22 19:59:57,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 19:59:57,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 19:59:57,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 19:59:57,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 19:59:57,892.892 INFO    ] time= 22/06/2026 19:59:57
[2026-06-22 19:59:57,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 19:59:57,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-22 19:59:58,094.094 INFO    ] No existing commands found in stream
[2026-06-22 20:00:03,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:00:03,145.145 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-22 20:00:09,292.292 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:00:09,295.295 INFO    ] Checking for system updates...
[2026-06-22 20:00:09,335.335 INFO    ] 200
[2026-06-22 20:00:09,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:00:09,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:00:09,405.405 INFO    ] No update needed
[2026-06-22 20:00:09,408.408 INFO    ] Checking for camera pi updates...
[2026-06-22 20:00:09,447.447 INFO    ] 200
[2026-06-22 20:00:09,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:00:09,506.506 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:00:09,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:00:09,582.582 INFO    ] No camera update needed
[2026-06-22 20:00:09,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:00:09,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:00:09,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:00:09,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:00:11,648.648 INFO    ] ================================================
[2026-06-22 20:00:11,669.669 INFO    ] Launching Daemon at Mon Jun 22 20:00:11 IST 2026
[2026-06-22 20:00:11,680.680 INFO    ] ================================================
[2026-06-22 20:00:12,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:00:12
[2026-06-22 20:00:13,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:00:13,649.649 INFO    ] Initializing speech engine...
[2026-06-22 20:00:13,658.658 INFO    ] 2026-06-22 20:00:13
[2026-06-22 20:00:14,043.043 INFO    ] 2026-06-22 20:00:14
[2026-06-22 20:00:14,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:00:14,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:00:14,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:00:14,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:00:14,687.687 INFO    ] time= 22/06/2026 20:00:14
[2026-06-22 20:00:14,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:00:14,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:00:14,769.769 INFO    ] No existing commands found in stream
[2026-06-22 20:00:19,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:00:19,784.784 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-22 20:00:22,950.950 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:00:22,953.953 INFO    ] Checking for system updates...
[2026-06-22 20:00:22,997.997 INFO    ] 200
[2026-06-22 20:00:23,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:00:23,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:00:23,072.072 INFO    ] No update needed
[2026-06-22 20:00:23,075.075 INFO    ] Checking for camera pi updates...
[2026-06-22 20:00:23,114.114 INFO    ] 200
[2026-06-22 20:00:23,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:00:23,159.159 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:00:23,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:00:23,252.252 INFO    ] No camera update needed
[2026-06-22 20:00:23,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:00:23,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:00:23,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:00:23,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:00:25,312.312 INFO    ] ================================================
[2026-06-22 20:00:25,327.327 INFO    ] Launching Daemon at Mon Jun 22 20:00:25 IST 2026
[2026-06-22 20:00:25,338.338 INFO    ] ================================================
[2026-06-22 20:00:25,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:00:25
[2026-06-22 20:00:26,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:00:26,651.651 INFO    ] Initializing speech engine...
[2026-06-22 20:00:26,658.658 INFO    ] 2026-06-22 20:00:26
[2026-06-22 20:00:26,926.926 INFO    ] 2026-06-22 20:00:26
[2026-06-22 20:00:26,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:00:27,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:00:27,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:00:27,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:00:27,398.398 INFO    ] time= 22/06/2026 20:00:27
[2026-06-22 20:00:27,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:00:27,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:00:27,617.617 INFO    ] No existing commands found in stream
[2026-06-22 20:00:32,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:00:32,646.646 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-22 20:00:34,481.481 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:00:34,483.483 INFO    ] Checking for system updates...
[2026-06-22 20:00:34,521.521 INFO    ] 200
[2026-06-22 20:00:34,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:00:34,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:00:34,583.583 INFO    ] No update needed
[2026-06-22 20:00:34,586.586 INFO    ] Checking for camera pi updates...
[2026-06-22 20:00:34,625.625 INFO    ] 200
[2026-06-22 20:00:34,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:00:34,675.675 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:00:34,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:00:34,760.760 INFO    ] No camera update needed
[2026-06-22 20:00:34,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:00:34,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:00:34,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:00:34,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:00:36,817.817 INFO    ] ================================================
[2026-06-22 20:00:36,832.832 INFO    ] Launching Daemon at Mon Jun 22 20:00:36 IST 2026
[2026-06-22 20:00:36,842.842 INFO    ] ================================================
[2026-06-22 20:00:37,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:00:37
[2026-06-22 20:00:38,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:00:38,215.215 INFO    ] Initializing speech engine...
[2026-06-22 20:00:38,221.221 INFO    ] 2026-06-22 20:00:38
[2026-06-22 20:00:38,442.442 INFO    ] 2026-06-22 20:00:38
[2026-06-22 20:00:38,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:00:38,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:00:38,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:00:38,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:00:38,928.928 INFO    ] time= 22/06/2026 20:00:38
[2026-06-22 20:00:38,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:00:39,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:00:39,150.150 INFO    ] No existing commands found in stream
[2026-06-22 20:00:44,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:00:44,178.178 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-22 20:00:45,578.578 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:00:45,579.579 INFO    ] Checking for system updates...
[2026-06-22 20:00:45,602.602 INFO    ] 200
[2026-06-22 20:00:45,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:00:45,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:00:45,654.654 INFO    ] No update needed
[2026-06-22 20:00:45,657.657 INFO    ] Checking for camera pi updates...
[2026-06-22 20:00:45,695.695 INFO    ] 200
[2026-06-22 20:00:45,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:00:45,746.746 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:00:45,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:00:45,813.813 INFO    ] No camera update needed
[2026-06-22 20:00:45,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:00:45,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:00:45,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:00:45,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:00:47,873.873 INFO    ] ================================================
[2026-06-22 20:00:47,888.888 INFO    ] Launching Daemon at Mon Jun 22 20:00:47 IST 2026
[2026-06-22 20:00:47,899.899 INFO    ] ================================================
[2026-06-22 20:00:48,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:00:48
[2026-06-22 20:00:49,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:00:49,431.431 INFO    ] Initializing speech engine...
[2026-06-22 20:00:49,438.438 INFO    ] 2026-06-22 20:00:49
[2026-06-22 20:00:49,726.726 INFO    ] 2026-06-22 20:00:49
[2026-06-22 20:00:49,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:00:52,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:00:52,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:00:53,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:00:53,521.521 INFO    ] time= 22/06/2026 20:00:53
[2026-06-22 20:00:53,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:00:53,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:00:53,580.580 INFO    ] No existing commands found in stream
[2026-06-22 20:00:58,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:00:58,593.593 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-22 20:01:00,717.717 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:01:00,718.718 INFO    ] Checking for system updates...
[2026-06-22 20:01:00,739.739 INFO    ] 200
[2026-06-22 20:01:00,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:01:00,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:01:00,797.797 INFO    ] No update needed
[2026-06-22 20:01:00,800.800 INFO    ] Checking for camera pi updates...
[2026-06-22 20:01:00,840.840 INFO    ] 200
[2026-06-22 20:01:00,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:01:00,886.886 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:01:00,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:01:00,972.972 INFO    ] No camera update needed
[2026-06-22 20:01:00,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:01:00,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:01:00,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:01:00,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:01:03,035.035 INFO    ] ================================================
[2026-06-22 20:01:03,051.051 INFO    ] Launching Daemon at Mon Jun 22 20:01:03 IST 2026
[2026-06-22 20:01:03,062.062 INFO    ] ================================================
[2026-06-22 20:01:03,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:01:03
[2026-06-22 20:01:04,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:01:04,720.720 INFO    ] Initializing speech engine...
[2026-06-22 20:01:04,726.726 INFO    ] 2026-06-22 20:01:04
[2026-06-22 20:01:05,044.044 INFO    ] 2026-06-22 20:01:05
[2026-06-22 20:01:05,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:01:05,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:01:05,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:01:05,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:01:05,804.804 INFO    ] time= 22/06/2026 20:01:05
[2026-06-22 20:01:05,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:01:05,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:01:06,006.006 INFO    ] No existing commands found in stream
[2026-06-22 20:01:11,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:01:11,028.028 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-22 20:01:12,750.750 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:01:12,752.752 INFO    ] Checking for system updates...
[2026-06-22 20:01:12,788.788 INFO    ] 200
[2026-06-22 20:01:12,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:01:12,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:01:12,846.846 INFO    ] No update needed
[2026-06-22 20:01:12,849.849 INFO    ] Checking for camera pi updates...
[2026-06-22 20:01:12,884.884 INFO    ] 200
[2026-06-22 20:01:12,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:01:12,927.927 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:01:13,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:01:13,136.136 INFO    ] No camera update needed
[2026-06-22 20:01:13,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:01:13,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:01:13,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:01:13,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:01:15,191.191 INFO    ] ================================================
[2026-06-22 20:01:15,206.206 INFO    ] Launching Daemon at Mon Jun 22 20:01:15 IST 2026
[2026-06-22 20:01:15,217.217 INFO    ] ================================================
[2026-06-22 20:01:15,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:01:15
[2026-06-22 20:01:16,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:01:16,705.705 INFO    ] Initializing speech engine...
[2026-06-22 20:01:16,714.714 INFO    ] 2026-06-22 20:01:16
[2026-06-22 20:01:16,974.974 INFO    ] 2026-06-22 20:01:16
[2026-06-22 20:01:17,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:01:17,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:01:17,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:01:17,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:01:17,452.452 INFO    ] time= 22/06/2026 20:01:17
[2026-06-22 20:01:17,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:01:17,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:01:17,632.632 INFO    ] No existing commands found in stream
[2026-06-22 20:01:22,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:01:22,660.660 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-22 20:01:25,083.083 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:01:25,087.087 INFO    ] Checking for system updates...
[2026-06-22 20:01:25,124.124 INFO    ] 200
[2026-06-22 20:01:25,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:01:25,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:01:25,190.190 INFO    ] No update needed
[2026-06-22 20:01:25,192.192 INFO    ] Checking for camera pi updates...
[2026-06-22 20:01:25,226.226 INFO    ] 200
[2026-06-22 20:01:25,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:01:25,271.271 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:01:25,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:01:25,373.373 INFO    ] No camera update needed
[2026-06-22 20:01:25,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:01:25,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:01:25,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:01:25,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:01:27,428.428 INFO    ] ================================================
[2026-06-22 20:01:27,444.444 INFO    ] Launching Daemon at Mon Jun 22 20:01:27 IST 2026
[2026-06-22 20:01:27,454.454 INFO    ] ================================================
[2026-06-22 20:01:28,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:01:28
[2026-06-22 20:01:28,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:01:29,002.002 INFO    ] Initializing speech engine...
[2026-06-22 20:01:29,017.017 INFO    ] 2026-06-22 20:01:29
[2026-06-22 20:01:29,291.291 INFO    ] 2026-06-22 20:01:29
[2026-06-22 20:01:29,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:01:29,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:01:29,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:01:29,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:01:29,681.681 INFO    ] time= 22/06/2026 20:01:29
[2026-06-22 20:01:29,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:01:29,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:01:29,807.807 INFO    ] No existing commands found in stream
[2026-06-22 20:01:34,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:01:34,822.822 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-22 20:01:36,535.535 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:01:36,538.538 INFO    ] Checking for system updates...
[2026-06-22 20:01:36,586.586 INFO    ] 200
[2026-06-22 20:01:36,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:01:36,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:01:36,702.702 INFO    ] No update needed
[2026-06-22 20:01:36,704.704 INFO    ] Checking for camera pi updates...
[2026-06-22 20:01:36,752.752 INFO    ] 200
[2026-06-22 20:01:36,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:01:36,802.802 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:01:36,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:01:36,888.888 INFO    ] No camera update needed
[2026-06-22 20:01:36,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:01:36,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:01:36,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:01:36,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:01:38,946.946 INFO    ] ================================================
[2026-06-22 20:01:38,962.962 INFO    ] Launching Daemon at Mon Jun 22 20:01:38 IST 2026
[2026-06-22 20:01:38,974.974 INFO    ] ================================================
[2026-06-22 20:01:39,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:01:39
[2026-06-22 20:01:40,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:01:40,529.529 INFO    ] Initializing speech engine...
[2026-06-22 20:01:40,537.537 INFO    ] 2026-06-22 20:01:40
[2026-06-22 20:01:40,832.832 INFO    ] 2026-06-22 20:01:40
[2026-06-22 20:01:40,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:01:41,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:01:41,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:01:41,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:01:41,259.259 INFO    ] time= 22/06/2026 20:01:41
[2026-06-22 20:01:41,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:01:41,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:01:41,413.413 INFO    ] No existing commands found in stream
[2026-06-22 20:01:46,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:01:46,441.441 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-22 20:01:49,994.994 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:01:49,997.997 INFO    ] Checking for system updates...
[2026-06-22 20:01:50,034.034 INFO    ] 200
[2026-06-22 20:01:50,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:01:50,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:01:50,092.092 INFO    ] No update needed
[2026-06-22 20:01:50,094.094 INFO    ] Checking for camera pi updates...
[2026-06-22 20:01:50,128.128 INFO    ] 200
[2026-06-22 20:01:50,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:01:50,172.172 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:01:50,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:01:50,225.225 INFO    ] No camera update needed
[2026-06-22 20:01:50,227.227 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:01:50,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:01:50,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:01:50,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:01:52,280.280 INFO    ] ================================================
[2026-06-22 20:01:52,297.297 INFO    ] Launching Daemon at Mon Jun 22 20:01:52 IST 2026
[2026-06-22 20:01:52,307.307 INFO    ] ================================================
[2026-06-22 20:01:52,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:01:52
[2026-06-22 20:01:53,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:01:53,689.689 INFO    ] Initializing speech engine...
[2026-06-22 20:01:53,694.694 INFO    ] 2026-06-22 20:01:53
[2026-06-22 20:01:53,945.945 INFO    ] 2026-06-22 20:01:53
[2026-06-22 20:01:53,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:01:56,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:01:56,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:01:57,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:01:57,221.221 INFO    ] time= 22/06/2026 20:01:57
[2026-06-22 20:01:57,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:01:57,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:01:57,287.287 INFO    ] No existing commands found in stream
[2026-06-22 20:02:02,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:02:02,300.300 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-22 20:02:06,735.735 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:02:06,738.738 INFO    ] Checking for system updates...
[2026-06-22 20:02:06,778.778 INFO    ] 200
[2026-06-22 20:02:06,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:02:06,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:02:06,839.839 INFO    ] No update needed
[2026-06-22 20:02:06,841.841 INFO    ] Checking for camera pi updates...
[2026-06-22 20:02:06,880.880 INFO    ] 200
[2026-06-22 20:02:06,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:02:06,927.927 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:02:07,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:02:07,014.014 INFO    ] No camera update needed
[2026-06-22 20:02:07,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:02:07,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:02:07,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:02:07,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:02:09,071.071 INFO    ] ================================================
[2026-06-22 20:02:09,087.087 INFO    ] Launching Daemon at Mon Jun 22 20:02:09 IST 2026
[2026-06-22 20:02:09,099.099 INFO    ] ================================================
[2026-06-22 20:02:09,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:02:09
[2026-06-22 20:02:10,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:02:10,485.485 INFO    ] Initializing speech engine...
[2026-06-22 20:02:10,494.494 INFO    ] 2026-06-22 20:02:10
[2026-06-22 20:02:10,753.753 INFO    ] 2026-06-22 20:02:10
[2026-06-22 20:02:10,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:02:11,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:02:11,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:02:11,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:02:11,319.319 INFO    ] time= 22/06/2026 20:02:11
[2026-06-22 20:02:11,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:02:11,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:02:11,528.528 INFO    ] No existing commands found in stream
[2026-06-22 20:02:16,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:02:16,558.558 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-22 20:02:17,764.764 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:02:17,766.766 INFO    ] Checking for system updates...
[2026-06-22 20:02:17,805.805 INFO    ] 200
[2026-06-22 20:02:17,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:02:17,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:02:17,865.865 INFO    ] No update needed
[2026-06-22 20:02:17,867.867 INFO    ] Checking for camera pi updates...
[2026-06-22 20:02:17,907.907 INFO    ] 200
[2026-06-22 20:02:17,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:02:17,957.957 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:02:18,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:02:18,059.059 INFO    ] No camera update needed
[2026-06-22 20:02:18,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:02:18,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:02:18,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:02:18,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:02:20,119.119 INFO    ] ================================================
[2026-06-22 20:02:20,134.134 INFO    ] Launching Daemon at Mon Jun 22 20:02:20 IST 2026
[2026-06-22 20:02:20,146.146 INFO    ] ================================================
[2026-06-22 20:02:20,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:02:20
[2026-06-22 20:02:21,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:02:21,684.684 INFO    ] Initializing speech engine...
[2026-06-22 20:02:21,690.690 INFO    ] 2026-06-22 20:02:21
[2026-06-22 20:02:22,005.005 INFO    ] 2026-06-22 20:02:21
[2026-06-22 20:02:22,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:02:22,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:02:22,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:02:22,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:02:22,496.496 INFO    ] time= 22/06/2026 20:02:22
[2026-06-22 20:02:22,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:02:22,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:02:22,695.695 INFO    ] No existing commands found in stream
[2026-06-22 20:02:27,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:02:27,720.720 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-22 20:02:31,697.697 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:02:31,700.700 INFO    ] Checking for system updates...
[2026-06-22 20:02:31,738.738 INFO    ] 200
[2026-06-22 20:02:31,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:02:31,798.798 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:02:31,800.800 INFO    ] No update needed
[2026-06-22 20:02:31,803.803 INFO    ] Checking for camera pi updates...
[2026-06-22 20:02:31,841.841 INFO    ] 200
[2026-06-22 20:02:31,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:02:31,897.897 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:02:31,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:02:31,964.964 INFO    ] No camera update needed
[2026-06-22 20:02:31,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:02:31,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:02:31,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:02:31,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:02:34,025.025 INFO    ] ================================================
[2026-06-22 20:02:34,040.040 INFO    ] Launching Daemon at Mon Jun 22 20:02:34 IST 2026
[2026-06-22 20:02:34,051.051 INFO    ] ================================================
[2026-06-22 20:02:34,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:02:34
[2026-06-22 20:02:35,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:02:35,464.464 INFO    ] Initializing speech engine...
[2026-06-22 20:02:35,470.470 INFO    ] 2026-06-22 20:02:35
[2026-06-22 20:02:35,761.761 INFO    ] 2026-06-22 20:02:35
[2026-06-22 20:02:35,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:02:36,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:02:36,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:02:36,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:02:36,277.277 INFO    ] time= 22/06/2026 20:02:36
[2026-06-22 20:02:36,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:02:36,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:02:36,486.486 INFO    ] No existing commands found in stream
[2026-06-22 20:02:41,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:02:41,509.509 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-22 20:02:44,404.404 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:02:44,407.407 INFO    ] Checking for system updates...
[2026-06-22 20:02:44,443.443 INFO    ] 200
[2026-06-22 20:02:44,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:02:44,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:02:44,508.508 INFO    ] No update needed
[2026-06-22 20:02:44,511.511 INFO    ] Checking for camera pi updates...
[2026-06-22 20:02:44,544.544 INFO    ] 200
[2026-06-22 20:02:44,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:02:44,590.590 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:02:44,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:02:44,649.649 INFO    ] No camera update needed
[2026-06-22 20:02:44,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:02:44,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:02:44,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:02:44,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:02:46,705.705 INFO    ] ================================================
[2026-06-22 20:02:46,721.721 INFO    ] Launching Daemon at Mon Jun 22 20:02:46 IST 2026
[2026-06-22 20:02:46,731.731 INFO    ] ================================================
[2026-06-22 20:02:47,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:02:47
[2026-06-22 20:02:47,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:02:48,225.225 INFO    ] Initializing speech engine...
[2026-06-22 20:02:48,233.233 INFO    ] 2026-06-22 20:02:48
[2026-06-22 20:02:48,492.492 INFO    ] 2026-06-22 20:02:48
[2026-06-22 20:02:48,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:02:48,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:02:48,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:02:48,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:02:48,960.960 INFO    ] time= 22/06/2026 20:02:48
[2026-06-22 20:02:49,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:02:49,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:02:49,186.186 INFO    ] No existing commands found in stream
[2026-06-22 20:02:54,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:02:54,204.204 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-22 20:02:58,934.934 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:02:58,937.937 INFO    ] Checking for system updates...
[2026-06-22 20:02:58,973.973 INFO    ] 200
[2026-06-22 20:02:58,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:02:59,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:02:59,038.038 INFO    ] No update needed
[2026-06-22 20:02:59,040.040 INFO    ] Checking for camera pi updates...
[2026-06-22 20:02:59,075.075 INFO    ] 200
[2026-06-22 20:02:59,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:02:59,123.123 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:02:59,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:02:59,179.179 INFO    ] No camera update needed
[2026-06-22 20:02:59,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:02:59,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:02:59,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:02:59,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:03:01,237.237 INFO    ] ================================================
[2026-06-22 20:03:01,252.252 INFO    ] Launching Daemon at Mon Jun 22 20:03:01 IST 2026
[2026-06-22 20:03:01,262.262 INFO    ] ================================================
[2026-06-22 20:03:02,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:03:02
[2026-06-22 20:03:02,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:03:03,170.170 INFO    ] Initializing speech engine...
[2026-06-22 20:03:03,187.187 INFO    ] 2026-06-22 20:03:03
[2026-06-22 20:03:03,483.483 INFO    ] 2026-06-22 20:03:03
[2026-06-22 20:03:03,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:03:03,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:03:03,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:03:03,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:03:03,985.985 INFO    ] time= 22/06/2026 20:03:03
[2026-06-22 20:03:04,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:03:04,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:03:04,175.175 INFO    ] No existing commands found in stream
[2026-06-22 20:03:09,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:03:09,209.209 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-22 20:03:13,421.421 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:03:13,425.425 INFO    ] Checking for system updates...
[2026-06-22 20:03:13,466.466 INFO    ] 200
[2026-06-22 20:03:13,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:03:13,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:03:13,534.534 INFO    ] No update needed
[2026-06-22 20:03:13,537.537 INFO    ] Checking for camera pi updates...
[2026-06-22 20:03:13,572.572 INFO    ] 200
[2026-06-22 20:03:13,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:03:13,621.621 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:03:13,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:03:13,705.705 INFO    ] No camera update needed
[2026-06-22 20:03:13,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:03:13,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:03:13,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:03:13,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:03:15,760.760 INFO    ] ================================================
[2026-06-22 20:03:15,775.775 INFO    ] Launching Daemon at Mon Jun 22 20:03:15 IST 2026
[2026-06-22 20:03:15,786.786 INFO    ] ================================================
[2026-06-22 20:03:16,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:03:16
[2026-06-22 20:03:16,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:03:17,247.247 INFO    ] Initializing speech engine...
[2026-06-22 20:03:17,257.257 INFO    ] 2026-06-22 20:03:17
[2026-06-22 20:03:17,507.507 INFO    ] 2026-06-22 20:03:17
[2026-06-22 20:03:17,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:03:17,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:03:17,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:03:17,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:03:17,878.878 INFO    ] time= 22/06/2026 20:03:17
[2026-06-22 20:03:17,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:03:17,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:03:18,063.063 INFO    ] No existing commands found in stream
[2026-06-22 20:03:23,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:03:23,088.088 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-22 20:03:29,347.347 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:03:29,349.349 INFO    ] Checking for system updates...
[2026-06-22 20:03:29,387.387 INFO    ] 200
[2026-06-22 20:03:29,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:03:29,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:03:29,447.447 INFO    ] No update needed
[2026-06-22 20:03:29,449.449 INFO    ] Checking for camera pi updates...
[2026-06-22 20:03:29,483.483 INFO    ] 200
[2026-06-22 20:03:29,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:03:29,528.528 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:03:29,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:03:29,719.719 INFO    ] No camera update needed
[2026-06-22 20:03:29,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:03:29,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:03:29,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:03:29,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:03:31,780.780 INFO    ] ================================================
[2026-06-22 20:03:31,797.797 INFO    ] Launching Daemon at Mon Jun 22 20:03:31 IST 2026
[2026-06-22 20:03:31,814.814 INFO    ] ================================================
[2026-06-22 20:03:32,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:03:32
[2026-06-22 20:03:33,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:03:33,333.333 INFO    ] Initializing speech engine...
[2026-06-22 20:03:33,355.355 INFO    ] 2026-06-22 20:03:33
[2026-06-22 20:03:33,640.640 INFO    ] 2026-06-22 20:03:33
[2026-06-22 20:03:33,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:03:33,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:03:33,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:03:34,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:03:34,040.040 INFO    ] time= 22/06/2026 20:03:34
[2026-06-22 20:03:34,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:03:34,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:03:34,240.240 INFO    ] No existing commands found in stream
[2026-06-22 20:03:39,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:03:39,257.257 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-22 20:03:41,307.307 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:03:41,311.311 INFO    ] Checking for system updates...
[2026-06-22 20:03:41,360.360 INFO    ] 200
[2026-06-22 20:03:41,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:03:41,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:03:41,427.427 INFO    ] No update needed
[2026-06-22 20:03:41,430.430 INFO    ] Checking for camera pi updates...
[2026-06-22 20:03:41,469.469 INFO    ] 200
[2026-06-22 20:03:41,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:03:41,516.516 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:03:41,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:03:41,587.587 INFO    ] No camera update needed
[2026-06-22 20:03:41,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:03:41,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:03:41,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:03:41,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:03:43,649.649 INFO    ] ================================================
[2026-06-22 20:03:43,665.665 INFO    ] Launching Daemon at Mon Jun 22 20:03:43 IST 2026
[2026-06-22 20:03:43,676.676 INFO    ] ================================================
[2026-06-22 20:03:44,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:03:44
[2026-06-22 20:03:44,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:03:45,211.211 INFO    ] Initializing speech engine...
[2026-06-22 20:03:45,261.261 INFO    ] 2026-06-22 20:03:45
[2026-06-22 20:03:45,514.514 INFO    ] 2026-06-22 20:03:45
[2026-06-22 20:03:45,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:03:45,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:03:45,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:03:45,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:03:46,018.018 INFO    ] time= 22/06/2026 20:03:45
[2026-06-22 20:03:46,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:03:46,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:03:46,285.285 INFO    ] No existing commands found in stream
[2026-06-22 20:03:51,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:03:51,310.310 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-22 20:03:53,437.437 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:03:53,440.440 INFO    ] Checking for system updates...
[2026-06-22 20:03:53,476.476 INFO    ] 200
[2026-06-22 20:03:53,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:03:53,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:03:53,534.534 INFO    ] No update needed
[2026-06-22 20:03:53,537.537 INFO    ] Checking for camera pi updates...
[2026-06-22 20:03:53,570.570 INFO    ] 200
[2026-06-22 20:03:53,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:03:53,625.625 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:03:53,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:03:53,716.716 INFO    ] No camera update needed
[2026-06-22 20:03:53,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:03:53,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:03:53,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:03:53,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:03:55,773.773 INFO    ] ================================================
[2026-06-22 20:03:55,789.789 INFO    ] Launching Daemon at Mon Jun 22 20:03:55 IST 2026
[2026-06-22 20:03:55,800.800 INFO    ] ================================================
[2026-06-22 20:03:56,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:03:56
[2026-06-22 20:03:56,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:03:57,182.182 INFO    ] Initializing speech engine...
[2026-06-22 20:03:57,187.187 INFO    ] 2026-06-22 20:03:57
[2026-06-22 20:03:57,437.437 INFO    ] 2026-06-22 20:03:57
[2026-06-22 20:03:57,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:04:00,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:04:00,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:04:02,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:04:02,050.050 INFO    ] time= 22/06/2026 20:04:02
[2026-06-22 20:04:02,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:04:02,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:04:02,128.128 INFO    ] No existing commands found in stream
[2026-06-22 20:04:07,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:04:07,140.140 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-22 20:04:08,291.291 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:04:08,293.293 INFO    ] Checking for system updates...
[2026-06-22 20:04:08,329.329 INFO    ] 200
[2026-06-22 20:04:08,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:04:08,384.384 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:04:08,387.387 INFO    ] No update needed
[2026-06-22 20:04:08,390.390 INFO    ] Checking for camera pi updates...
[2026-06-22 20:04:08,424.424 INFO    ] 200
[2026-06-22 20:04:08,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:04:08,467.467 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:04:08,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:04:08,554.554 INFO    ] No camera update needed
[2026-06-22 20:04:08,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:04:08,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:04:08,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:04:08,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:04:10,611.611 INFO    ] ================================================
[2026-06-22 20:04:10,626.626 INFO    ] Launching Daemon at Mon Jun 22 20:04:10 IST 2026
[2026-06-22 20:04:10,637.637 INFO    ] ================================================
[2026-06-22 20:04:11,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:04:11
[2026-06-22 20:04:11,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:04:12,054.054 INFO    ] Initializing speech engine...
[2026-06-22 20:04:12,060.060 INFO    ] 2026-06-22 20:04:12
[2026-06-22 20:04:12,320.320 INFO    ] 2026-06-22 20:04:12
[2026-06-22 20:04:12,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:04:12,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:04:12,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:04:12,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:04:12,795.795 INFO    ] time= 22/06/2026 20:04:12
[2026-06-22 20:04:12,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:04:12,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:04:13,018.018 INFO    ] No existing commands found in stream
[2026-06-22 20:04:18,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:04:18,036.036 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-22 20:04:21,279.279 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:04:21,281.281 INFO    ] Checking for system updates...
[2026-06-22 20:04:21,317.317 INFO    ] 200
[2026-06-22 20:04:21,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:04:21,372.372 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:04:21,375.375 INFO    ] No update needed
[2026-06-22 20:04:21,377.377 INFO    ] Checking for camera pi updates...
[2026-06-22 20:04:21,411.411 INFO    ] 200
[2026-06-22 20:04:21,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:04:21,458.458 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:04:21,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:04:21,553.553 INFO    ] No camera update needed
[2026-06-22 20:04:21,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:04:21,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:04:21,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:04:21,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:04:23,610.610 INFO    ] ================================================
[2026-06-22 20:04:23,625.625 INFO    ] Launching Daemon at Mon Jun 22 20:04:23 IST 2026
[2026-06-22 20:04:23,636.636 INFO    ] ================================================
[2026-06-22 20:04:24,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:04:24
[2026-06-22 20:04:24,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:04:25,149.149 INFO    ] Initializing speech engine...
[2026-06-22 20:04:25,161.161 INFO    ] 2026-06-22 20:04:25
[2026-06-22 20:04:25,465.465 INFO    ] 2026-06-22 20:04:25
[2026-06-22 20:04:25,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:04:25,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:04:25,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:04:25,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:04:25,974.974 INFO    ] time= 22/06/2026 20:04:25
[2026-06-22 20:04:25,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:04:26,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:04:26,143.143 INFO    ] No existing commands found in stream
[2026-06-22 20:04:31,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:04:31,177.177 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-22 20:04:35,453.453 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:04:35,455.455 INFO    ] Checking for system updates...
[2026-06-22 20:04:35,480.480 INFO    ] 200
[2026-06-22 20:04:35,483.483 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:04:35,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:04:35,546.546 INFO    ] No update needed
[2026-06-22 20:04:35,548.548 INFO    ] Checking for camera pi updates...
[2026-06-22 20:04:35,588.588 INFO    ] 200
[2026-06-22 20:04:35,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:04:35,636.636 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:04:35,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:04:35,718.718 INFO    ] No camera update needed
[2026-06-22 20:04:35,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:04:35,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:04:35,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:04:35,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:04:37,776.776 INFO    ] ================================================
[2026-06-22 20:04:37,791.791 INFO    ] Launching Daemon at Mon Jun 22 20:04:37 IST 2026
[2026-06-22 20:04:37,803.803 INFO    ] ================================================
[2026-06-22 20:04:38,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:04:38
[2026-06-22 20:04:39,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:04:39,368.368 INFO    ] Initializing speech engine...
[2026-06-22 20:04:39,386.386 INFO    ] 2026-06-22 20:04:39
[2026-06-22 20:04:39,653.653 INFO    ] 2026-06-22 20:04:39
[2026-06-22 20:04:39,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:04:39,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:04:39,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:04:40,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:04:40,149.149 INFO    ] time= 22/06/2026 20:04:40
[2026-06-22 20:04:40,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:04:40,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:04:40,304.304 INFO    ] No existing commands found in stream
[2026-06-22 20:04:45,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:04:45,329.329 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-22 20:04:46,938.938 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:04:46,941.941 INFO    ] Checking for system updates...
[2026-06-22 20:04:46,981.981 INFO    ] 200
[2026-06-22 20:04:46,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:04:47,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:04:47,039.039 INFO    ] No update needed
[2026-06-22 20:04:47,041.041 INFO    ] Checking for camera pi updates...
[2026-06-22 20:04:47,076.076 INFO    ] 200
[2026-06-22 20:04:47,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:04:47,119.119 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:04:47,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:04:47,210.210 INFO    ] No camera update needed
[2026-06-22 20:04:47,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:04:47,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:04:47,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:04:47,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:04:49,266.266 INFO    ] ================================================
[2026-06-22 20:04:49,282.282 INFO    ] Launching Daemon at Mon Jun 22 20:04:49 IST 2026
[2026-06-22 20:04:49,293.293 INFO    ] ================================================
[2026-06-22 20:04:49,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:04:49
[2026-06-22 20:04:50,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:04:50,725.725 INFO    ] Initializing speech engine...
[2026-06-22 20:04:50,735.735 INFO    ] 2026-06-22 20:04:50
[2026-06-22 20:04:50,985.985 INFO    ] 2026-06-22 20:04:50
[2026-06-22 20:04:51,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:04:51,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:04:51,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:04:51,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:04:51,554.554 INFO    ] time= 22/06/2026 20:04:51
[2026-06-22 20:04:51,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:04:51,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:04:51,720.720 INFO    ] No existing commands found in stream
[2026-06-22 20:04:56,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:04:56,750.750 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-22 20:04:57,340.340 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:04:57,343.343 INFO    ] Checking for system updates...
[2026-06-22 20:04:57,385.385 INFO    ] 200
[2026-06-22 20:04:57,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:04:57,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:04:57,452.452 INFO    ] No update needed
[2026-06-22 20:04:57,455.455 INFO    ] Checking for camera pi updates...
[2026-06-22 20:04:57,490.490 INFO    ] 200
[2026-06-22 20:04:57,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:04:57,535.535 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:04:57,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:04:57,601.601 INFO    ] No camera update needed
[2026-06-22 20:04:57,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:04:57,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:04:57,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:04:57,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:04:59,664.664 INFO    ] ================================================
[2026-06-22 20:04:59,679.679 INFO    ] Launching Daemon at Mon Jun 22 20:04:59 IST 2026
[2026-06-22 20:04:59,691.691 INFO    ] ================================================
[2026-06-22 20:05:00,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:05:00
[2026-06-22 20:05:00,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:05:01,107.107 INFO    ] Initializing speech engine...
[2026-06-22 20:05:01,120.120 INFO    ] 2026-06-22 20:05:01
[2026-06-22 20:05:01,388.388 INFO    ] 2026-06-22 20:05:01
[2026-06-22 20:05:01,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:05:04,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:05:04,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:05:05,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:05:05,206.206 INFO    ] time= 22/06/2026 20:05:05
[2026-06-22 20:05:05,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:05:05,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:05:05,298.298 INFO    ] No existing commands found in stream
[2026-06-22 20:05:10,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:05:10,311.311 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-22 20:05:12,609.609 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:05:12,611.611 INFO    ] Checking for system updates...
[2026-06-22 20:05:12,651.651 INFO    ] 200
[2026-06-22 20:05:12,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:05:12,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:05:12,710.710 INFO    ] No update needed
[2026-06-22 20:05:12,712.712 INFO    ] Checking for camera pi updates...
[2026-06-22 20:05:12,747.747 INFO    ] 200
[2026-06-22 20:05:12,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:05:12,791.791 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:05:12,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:05:12,878.878 INFO    ] No camera update needed
[2026-06-22 20:05:12,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:05:12,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:05:12,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:05:12,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:05:14,935.935 INFO    ] ================================================
[2026-06-22 20:05:14,951.951 INFO    ] Launching Daemon at Mon Jun 22 20:05:14 IST 2026
[2026-06-22 20:05:14,962.962 INFO    ] ================================================
[2026-06-22 20:05:15,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:05:15
[2026-06-22 20:05:16,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:05:16,372.372 INFO    ] Initializing speech engine...
[2026-06-22 20:05:16,377.377 INFO    ] 2026-06-22 20:05:16
[2026-06-22 20:05:16,639.639 INFO    ] 2026-06-22 20:05:16
[2026-06-22 20:05:16,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:05:17,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:05:17,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:05:17,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:05:17,206.206 INFO    ] time= 22/06/2026 20:05:17
[2026-06-22 20:05:17,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:05:17,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:05:17,362.362 INFO    ] No existing commands found in stream
[2026-06-22 20:05:22,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:05:22,385.385 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-22 20:05:26,046.046 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:05:26,049.049 INFO    ] Checking for system updates...
[2026-06-22 20:05:26,095.095 INFO    ] 200
[2026-06-22 20:05:26,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 20:05:26,102.102 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-22 20:05:26,105.105 INFO    ] Checking for camera pi updates...
[2026-06-22 20:05:26,149.149 INFO    ] 200
[2026-06-22 20:05:26,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 20:05:26,156.156 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-22 20:05:26,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:05:26,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:05:26,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:05:26,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:05:28,218.218 INFO    ] ================================================
[2026-06-22 20:05:28,234.234 INFO    ] Launching Daemon at Mon Jun 22 20:05:28 IST 2026
[2026-06-22 20:05:28,246.246 INFO    ] ================================================
[2026-06-22 20:05:28,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:05:28
[2026-06-22 20:05:29,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:05:29,772.772 INFO    ] Initializing speech engine...
[2026-06-22 20:05:29,787.787 INFO    ] 2026-06-22 20:05:29
[2026-06-22 20:05:30,057.057 INFO    ] 2026-06-22 20:05:30
[2026-06-22 20:05:30,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:05:30,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:05:30,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:05:32,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:05:32,523.523 INFO    ] time= 22/06/2026 20:05:32
[2026-06-22 20:05:32,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:05:32,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:05:32,635.635 INFO    ] No existing commands found in stream
[2026-06-22 20:05:37,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:05:37,659.659 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-22 20:05:38,259.259 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:05:38,262.262 INFO    ] Checking for system updates...
[2026-06-22 20:05:38,298.298 INFO    ] 200
[2026-06-22 20:05:38,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:05:38,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:05:38,359.359 INFO    ] No update needed
[2026-06-22 20:05:38,362.362 INFO    ] Checking for camera pi updates...
[2026-06-22 20:05:38,397.397 INFO    ] 200
[2026-06-22 20:05:38,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:05:38,442.442 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:05:38,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:05:38,534.534 INFO    ] No camera update needed
[2026-06-22 20:05:38,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:05:38,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:05:38,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:05:38,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:05:40,585.585 INFO    ] ================================================
[2026-06-22 20:05:40,600.600 INFO    ] Launching Daemon at Mon Jun 22 20:05:40 IST 2026
[2026-06-22 20:05:40,612.612 INFO    ] ================================================
[2026-06-22 20:05:41,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:05:41
[2026-06-22 20:05:41,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:05:41,994.994 INFO    ] Initializing speech engine...
[2026-06-22 20:05:42,000.000 INFO    ] 2026-06-22 20:05:41
[2026-06-22 20:05:42,245.245 INFO    ] 2026-06-22 20:05:42
[2026-06-22 20:05:42,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:05:42,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:05:42,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:05:42,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:05:42,745.745 INFO    ] time= 22/06/2026 20:05:42
[2026-06-22 20:05:42,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:05:42,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:05:42,955.955 INFO    ] No existing commands found in stream
[2026-06-22 20:05:47,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:05:47,969.969 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-22 20:05:52,379.379 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:05:52,382.382 INFO    ] Checking for system updates...
[2026-06-22 20:05:52,418.418 INFO    ] 200
[2026-06-22 20:05:52,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:05:52,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:05:52,477.477 INFO    ] No update needed
[2026-06-22 20:05:52,479.479 INFO    ] Checking for camera pi updates...
[2026-06-22 20:05:52,513.513 INFO    ] 200
[2026-06-22 20:05:52,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:05:52,557.557 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:05:52,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:05:52,623.623 INFO    ] No camera update needed
[2026-06-22 20:05:52,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:05:52,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:05:52,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:05:52,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:05:54,679.679 INFO    ] ================================================
[2026-06-22 20:05:54,695.695 INFO    ] Launching Daemon at Mon Jun 22 20:05:54 IST 2026
[2026-06-22 20:05:54,706.706 INFO    ] ================================================
[2026-06-22 20:05:55,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:05:55
[2026-06-22 20:05:55,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:05:56,165.165 INFO    ] Initializing speech engine...
[2026-06-22 20:05:56,170.170 INFO    ] 2026-06-22 20:05:56
[2026-06-22 20:05:56,421.421 INFO    ] 2026-06-22 20:05:56
[2026-06-22 20:05:56,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:05:56,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:05:56,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:05:56,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:05:56,892.892 INFO    ] time= 22/06/2026 20:05:56
[2026-06-22 20:05:56,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:05:56,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:05:57,071.071 INFO    ] No existing commands found in stream
[2026-06-22 20:06:02,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:06:02,092.092 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-22 20:06:08,923.923 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:06:08,926.926 INFO    ] Checking for system updates...
[2026-06-22 20:06:08,962.962 INFO    ] 200
[2026-06-22 20:06:08,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:06:09,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:06:09,022.022 INFO    ] No update needed
[2026-06-22 20:06:09,024.024 INFO    ] Checking for camera pi updates...
[2026-06-22 20:06:09,058.058 INFO    ] 200
[2026-06-22 20:06:09,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:06:09,101.101 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:06:09,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:06:09,216.216 INFO    ] No camera update needed
[2026-06-22 20:06:09,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:06:09,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:06:09,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:06:09,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:06:11,271.271 INFO    ] ================================================
[2026-06-22 20:06:11,286.286 INFO    ] Launching Daemon at Mon Jun 22 20:06:11 IST 2026
[2026-06-22 20:06:11,297.297 INFO    ] ================================================
[2026-06-22 20:06:11,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:06:11
[2026-06-22 20:06:12,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:06:12,846.846 INFO    ] Initializing speech engine...
[2026-06-22 20:06:12,853.853 INFO    ] 2026-06-22 20:06:12
[2026-06-22 20:06:13,131.131 INFO    ] 2026-06-22 20:06:13
[2026-06-22 20:06:13,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:06:13,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:06:13,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:06:13,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:06:13,671.671 INFO    ] time= 22/06/2026 20:06:13
[2026-06-22 20:06:13,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:06:13,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:06:13,826.826 INFO    ] No existing commands found in stream
[2026-06-22 20:06:18,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:06:18,843.843 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-22 20:06:20,665.665 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:06:20,666.666 INFO    ] Checking for system updates...
[2026-06-22 20:06:20,687.687 INFO    ] 200
[2026-06-22 20:06:20,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:06:20,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:06:20,729.729 INFO    ] No update needed
[2026-06-22 20:06:20,732.732 INFO    ] Checking for camera pi updates...
[2026-06-22 20:06:20,766.766 INFO    ] 200
[2026-06-22 20:06:20,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:06:20,815.815 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:06:20,899.899 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:06:20,901.901 INFO    ] No camera update needed
[2026-06-22 20:06:20,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:06:20,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:06:20,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:06:20,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:06:22,960.960 INFO    ] ================================================
[2026-06-22 20:06:22,975.975 INFO    ] Launching Daemon at Mon Jun 22 20:06:22 IST 2026
[2026-06-22 20:06:22,986.986 INFO    ] ================================================
[2026-06-22 20:06:23,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:06:23
[2026-06-22 20:06:24,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:06:24,418.418 INFO    ] Initializing speech engine...
[2026-06-22 20:06:24,424.424 INFO    ] 2026-06-22 20:06:24
[2026-06-22 20:06:24,670.670 INFO    ] 2026-06-22 20:06:24
[2026-06-22 20:06:24,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:06:24,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:06:24,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:06:25,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:06:25,137.137 INFO    ] time= 22/06/2026 20:06:25
[2026-06-22 20:06:25,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:06:25,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:06:25,367.367 INFO    ] No existing commands found in stream
[2026-06-22 20:06:30,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:06:30,398.398 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-22 20:06:31,850.850 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:06:31,853.853 INFO    ] Checking for system updates...
[2026-06-22 20:06:31,889.889 INFO    ] 200
[2026-06-22 20:06:31,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:06:31,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:06:31,948.948 INFO    ] No update needed
[2026-06-22 20:06:31,950.950 INFO    ] Checking for camera pi updates...
[2026-06-22 20:06:31,991.991 INFO    ] 200
[2026-06-22 20:06:31,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:06:32,047.047 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:06:32,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:06:32,117.117 INFO    ] No camera update needed
[2026-06-22 20:06:32,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:06:32,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:06:32,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:06:32,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:06:34,177.177 INFO    ] ================================================
[2026-06-22 20:06:34,192.192 INFO    ] Launching Daemon at Mon Jun 22 20:06:34 IST 2026
[2026-06-22 20:06:34,203.203 INFO    ] ================================================
[2026-06-22 20:06:34,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:06:34
[2026-06-22 20:06:35,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:06:35,656.656 INFO    ] Initializing speech engine...
[2026-06-22 20:06:35,666.666 INFO    ] 2026-06-22 20:06:35
[2026-06-22 20:06:35,918.918 INFO    ] 2026-06-22 20:06:35
[2026-06-22 20:06:35,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:06:38,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:06:38,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:06:40,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:06:40,054.054 INFO    ] time= 22/06/2026 20:06:40
[2026-06-22 20:06:40,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:06:40,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:06:40,124.124 INFO    ] No existing commands found in stream
[2026-06-22 20:06:45,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:06:45,137.137 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-22 20:06:46,677.677 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:06:46,680.680 INFO    ] Checking for system updates...
[2026-06-22 20:06:46,717.717 INFO    ] 200
[2026-06-22 20:06:46,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:06:46,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:06:46,775.775 INFO    ] No update needed
[2026-06-22 20:06:46,777.777 INFO    ] Checking for camera pi updates...
[2026-06-22 20:06:46,812.812 INFO    ] 200
[2026-06-22 20:06:46,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:06:46,856.856 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:06:46,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:06:46,909.909 INFO    ] No camera update needed
[2026-06-22 20:06:46,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:06:46,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:06:46,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:06:46,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:06:48,966.966 INFO    ] ================================================
[2026-06-22 20:06:48,981.981 INFO    ] Launching Daemon at Mon Jun 22 20:06:48 IST 2026
[2026-06-22 20:06:48,992.992 INFO    ] ================================================
[2026-06-22 20:06:49,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:06:49
[2026-06-22 20:06:50,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:06:50,309.309 INFO    ] Initializing speech engine...
[2026-06-22 20:06:50,324.324 INFO    ] 2026-06-22 20:06:50
[2026-06-22 20:06:50,590.590 INFO    ] 2026-06-22 20:06:50
[2026-06-22 20:06:50,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:06:50,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:06:50,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:06:51,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:06:51,037.037 INFO    ] time= 22/06/2026 20:06:51
[2026-06-22 20:06:51,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:06:51,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:06:51,237.237 INFO    ] No existing commands found in stream
[2026-06-22 20:06:56,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:06:56,266.266 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-22 20:06:59,241.241 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:06:59,244.244 INFO    ] Checking for system updates...
[2026-06-22 20:06:59,280.280 INFO    ] 200
[2026-06-22 20:06:59,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:06:59,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:06:59,338.338 INFO    ] No update needed
[2026-06-22 20:06:59,341.341 INFO    ] Checking for camera pi updates...
[2026-06-22 20:06:59,378.378 INFO    ] 200
[2026-06-22 20:06:59,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:06:59,421.421 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:06:59,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:06:59,496.496 INFO    ] No camera update needed
[2026-06-22 20:06:59,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:06:59,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:06:59,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:06:59,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:07:01,552.552 INFO    ] ================================================
[2026-06-22 20:07:01,568.568 INFO    ] Launching Daemon at Mon Jun 22 20:07:01 IST 2026
[2026-06-22 20:07:01,578.578 INFO    ] ================================================
[2026-06-22 20:07:02,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:07:02
[2026-06-22 20:07:02,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:07:03,361.361 INFO    ] Initializing speech engine...
[2026-06-22 20:07:03,380.380 INFO    ] 2026-06-22 20:07:03
[2026-06-22 20:07:03,690.690 INFO    ] 2026-06-22 20:07:03
[2026-06-22 20:07:03,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:07:03,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:07:03,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:07:04,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:07:04,135.135 INFO    ] time= 22/06/2026 20:07:04
[2026-06-22 20:07:04,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:07:04,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:07:04,317.317 INFO    ] No existing commands found in stream
[2026-06-22 20:07:09,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:07:09,340.340 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-22 20:07:12,241.241 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:07:12,244.244 INFO    ] Checking for system updates...
[2026-06-22 20:07:12,283.283 INFO    ] 200
[2026-06-22 20:07:12,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:07:12,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:07:12,348.348 INFO    ] No update needed
[2026-06-22 20:07:12,351.351 INFO    ] Checking for camera pi updates...
[2026-06-22 20:07:12,385.385 INFO    ] 200
[2026-06-22 20:07:12,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:07:12,428.428 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:07:12,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:07:12,481.481 INFO    ] No camera update needed
[2026-06-22 20:07:12,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:07:12,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:07:12,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:07:12,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:07:14,536.536 INFO    ] ================================================
[2026-06-22 20:07:14,551.551 INFO    ] Launching Daemon at Mon Jun 22 20:07:14 IST 2026
[2026-06-22 20:07:14,561.561 INFO    ] ================================================
[2026-06-22 20:07:15,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:07:15
[2026-06-22 20:07:15,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:07:15,917.917 INFO    ] Initializing speech engine...
[2026-06-22 20:07:15,927.927 INFO    ] 2026-06-22 20:07:15
[2026-06-22 20:07:16,191.191 INFO    ] 2026-06-22 20:07:16
[2026-06-22 20:07:16,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:07:16,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:07:16,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:07:16,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:07:16,682.682 INFO    ] time= 22/06/2026 20:07:16
[2026-06-22 20:07:16,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:07:16,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:07:16,878.878 INFO    ] No existing commands found in stream
[2026-06-22 20:07:21,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:07:21,904.904 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-22 20:07:24,657.657 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:07:24,661.661 INFO    ] Checking for system updates...
[2026-06-22 20:07:24,704.704 INFO    ] 200
[2026-06-22 20:07:24,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:07:24,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:07:24,778.778 INFO    ] No update needed
[2026-06-22 20:07:24,780.780 INFO    ] Checking for camera pi updates...
[2026-06-22 20:07:24,820.820 INFO    ] 200
[2026-06-22 20:07:24,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:07:24,868.868 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:07:24,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:07:24,932.932 INFO    ] No camera update needed
[2026-06-22 20:07:24,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:07:24,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:07:24,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:07:24,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:07:27,995.995 INFO    ] ================================================
[2026-06-22 20:07:27,011.011 INFO    ] Launching Daemon at Mon Jun 22 20:07:27 IST 2026
[2026-06-22 20:07:27,022.022 INFO    ] ================================================
[2026-06-22 20:07:27,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:07:27
[2026-06-22 20:07:28,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:07:28,534.534 INFO    ] Initializing speech engine...
[2026-06-22 20:07:28,558.558 INFO    ] 2026-06-22 20:07:28
[2026-06-22 20:07:28,826.826 INFO    ] 2026-06-22 20:07:28
[2026-06-22 20:07:28,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:07:29,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:07:29,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:07:29,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:07:29,334.334 INFO    ] time= 22/06/2026 20:07:29
[2026-06-22 20:07:29,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:07:29,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:07:29,580.580 INFO    ] No existing commands found in stream
[2026-06-22 20:07:34,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:07:34,602.602 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-22 20:07:35,146.146 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:07:35,149.149 INFO    ] Checking for system updates...
[2026-06-22 20:07:35,190.190 INFO    ] 200
[2026-06-22 20:07:35,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:07:35,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:07:35,253.253 INFO    ] No update needed
[2026-06-22 20:07:35,256.256 INFO    ] Checking for camera pi updates...
[2026-06-22 20:07:35,293.293 INFO    ] 200
[2026-06-22 20:07:35,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:07:35,340.340 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:07:35,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:07:35,529.529 INFO    ] No camera update needed
[2026-06-22 20:07:35,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:07:35,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:07:35,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:07:35,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:07:37,592.592 INFO    ] ================================================
[2026-06-22 20:07:37,611.611 INFO    ] Launching Daemon at Mon Jun 22 20:07:37 IST 2026
[2026-06-22 20:07:37,622.622 INFO    ] ================================================
[2026-06-22 20:07:38,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:07:38
[2026-06-22 20:07:38,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:07:39,175.175 INFO    ] Initializing speech engine...
[2026-06-22 20:07:39,186.186 INFO    ] 2026-06-22 20:07:39
[2026-06-22 20:07:39,461.461 INFO    ] 2026-06-22 20:07:39
[2026-06-22 20:07:39,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:07:42,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:07:42,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:07:43,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:07:43,126.126 INFO    ] time= 22/06/2026 20:07:43
[2026-06-22 20:07:43,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:07:43,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:07:43,197.197 INFO    ] No existing commands found in stream
[2026-06-22 20:07:48,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:07:48,209.209 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-22 20:07:49,664.664 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:07:49,667.667 INFO    ] Checking for system updates...
[2026-06-22 20:07:49,707.707 INFO    ] 200
[2026-06-22 20:07:49,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:07:49,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:07:49,770.770 INFO    ] No update needed
[2026-06-22 20:07:49,772.772 INFO    ] Checking for camera pi updates...
[2026-06-22 20:07:49,807.807 INFO    ] 200
[2026-06-22 20:07:49,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:07:49,854.854 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:07:49,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:07:49,942.942 INFO    ] No camera update needed
[2026-06-22 20:07:49,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:07:49,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:07:49,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:07:49,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:07:52,999.999 INFO    ] ================================================
[2026-06-22 20:07:52,013.013 INFO    ] Launching Daemon at Mon Jun 22 20:07:52 IST 2026
[2026-06-22 20:07:52,024.024 INFO    ] ================================================
[2026-06-22 20:07:52,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:07:52
[2026-06-22 20:07:53,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:07:53,432.432 INFO    ] Initializing speech engine...
[2026-06-22 20:07:53,441.441 INFO    ] 2026-06-22 20:07:53
[2026-06-22 20:07:53,730.730 INFO    ] 2026-06-22 20:07:53
[2026-06-22 20:07:53,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:07:53,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:07:53,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:07:54,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:07:54,142.142 INFO    ] time= 22/06/2026 20:07:54
[2026-06-22 20:07:54,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:07:54,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:07:54,338.338 INFO    ] No existing commands found in stream
[2026-06-22 20:07:59,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:07:59,369.369 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-22 20:08:00,277.277 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:08:00,279.279 INFO    ] Checking for system updates...
[2026-06-22 20:08:00,318.318 INFO    ] 200
[2026-06-22 20:08:00,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:08:00,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:08:00,377.377 INFO    ] No update needed
[2026-06-22 20:08:00,379.379 INFO    ] Checking for camera pi updates...
[2026-06-22 20:08:00,413.413 INFO    ] 200
[2026-06-22 20:08:00,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:08:00,458.458 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:08:00,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:08:00,543.543 INFO    ] No camera update needed
[2026-06-22 20:08:00,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:08:00,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:08:00,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:08:00,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:08:02,601.601 INFO    ] ================================================
[2026-06-22 20:08:02,617.617 INFO    ] Launching Daemon at Mon Jun 22 20:08:02 IST 2026
[2026-06-22 20:08:02,628.628 INFO    ] ================================================
[2026-06-22 20:08:03,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:08:03
[2026-06-22 20:08:03,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:08:04,058.058 INFO    ] Initializing speech engine...
[2026-06-22 20:08:04,081.081 INFO    ] 2026-06-22 20:08:04
[2026-06-22 20:08:04,336.336 INFO    ] 2026-06-22 20:08:04
[2026-06-22 20:08:04,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:08:04,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:08:04,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:08:05,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:08:05,312.312 INFO    ] time= 22/06/2026 20:08:05
[2026-06-22 20:08:05,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:08:05,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:08:05,468.468 INFO    ] No existing commands found in stream
[2026-06-22 20:08:10,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:08:10,495.495 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-22 20:08:14,665.665 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:08:14,668.668 INFO    ] Checking for system updates...
[2026-06-22 20:08:14,703.703 INFO    ] 200
[2026-06-22 20:08:14,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:08:14,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:08:14,761.761 INFO    ] No update needed
[2026-06-22 20:08:14,763.763 INFO    ] Checking for camera pi updates...
[2026-06-22 20:08:14,799.799 INFO    ] 200
[2026-06-22 20:08:14,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:08:14,846.846 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:08:14,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:08:14,938.938 INFO    ] No camera update needed
[2026-06-22 20:08:14,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:08:14,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:08:14,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:08:14,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:08:16,994.994 INFO    ] ================================================
[2026-06-22 20:08:17,010.010 INFO    ] Launching Daemon at Mon Jun 22 20:08:17 IST 2026
[2026-06-22 20:08:17,020.020 INFO    ] ================================================
[2026-06-22 20:08:17,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:08:17
[2026-06-22 20:08:18,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:08:18,384.384 INFO    ] Initializing speech engine...
[2026-06-22 20:08:18,407.407 INFO    ] 2026-06-22 20:08:18
[2026-06-22 20:08:18,662.662 INFO    ] 2026-06-22 20:08:18
[2026-06-22 20:08:18,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:08:18,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:08:18,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:08:19,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:08:19,151.151 INFO    ] time= 22/06/2026 20:08:19
[2026-06-22 20:08:19,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:08:19,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:08:19,284.284 INFO    ] No existing commands found in stream
[2026-06-22 20:08:24,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:08:24,300.300 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-22 20:08:27,619.619 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:08:27,621.621 INFO    ] Checking for system updates...
[2026-06-22 20:08:27,657.657 INFO    ] 200
[2026-06-22 20:08:27,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:08:27,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:08:27,715.715 INFO    ] No update needed
[2026-06-22 20:08:27,718.718 INFO    ] Checking for camera pi updates...
[2026-06-22 20:08:27,752.752 INFO    ] 200
[2026-06-22 20:08:27,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:08:27,799.799 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:08:27,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:08:27,883.883 INFO    ] No camera update needed
[2026-06-22 20:08:27,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:08:27,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:08:27,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:08:27,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:08:29,940.940 INFO    ] ================================================
[2026-06-22 20:08:29,955.955 INFO    ] Launching Daemon at Mon Jun 22 20:08:29 IST 2026
[2026-06-22 20:08:29,966.966 INFO    ] ================================================
[2026-06-22 20:08:30,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:08:30
[2026-06-22 20:08:31,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:08:31,477.477 INFO    ] Initializing speech engine...
[2026-06-22 20:08:31,489.489 INFO    ] 2026-06-22 20:08:31
[2026-06-22 20:08:31,766.766 INFO    ] 2026-06-22 20:08:31
[2026-06-22 20:08:31,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:08:32,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:08:32,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:08:32,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:08:32,266.266 INFO    ] time= 22/06/2026 20:08:32
[2026-06-22 20:08:32,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:08:32,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:08:32,441.441 INFO    ] No existing commands found in stream
[2026-06-22 20:08:37,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:08:37,454.454 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-22 20:08:37,960.960 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:08:37,963.963 INFO    ] Checking for system updates...
[2026-06-22 20:08:38,017.017 INFO    ] 200
[2026-06-22 20:08:38,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:08:38,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:08:38,087.087 INFO    ] No update needed
[2026-06-22 20:08:38,090.090 INFO    ] Checking for camera pi updates...
[2026-06-22 20:08:38,137.137 INFO    ] 200
[2026-06-22 20:08:38,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:08:38,190.190 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:08:38,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:08:38,282.282 INFO    ] No camera update needed
[2026-06-22 20:08:38,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:08:38,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:08:38,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:08:38,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:08:40,337.337 INFO    ] ================================================
[2026-06-22 20:08:40,353.353 INFO    ] Launching Daemon at Mon Jun 22 20:08:40 IST 2026
[2026-06-22 20:08:40,363.363 INFO    ] ================================================
[2026-06-22 20:08:40,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:08:40
[2026-06-22 20:08:41,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:08:41,823.823 INFO    ] Initializing speech engine...
[2026-06-22 20:08:41,846.846 INFO    ] 2026-06-22 20:08:41
[2026-06-22 20:08:42,114.114 INFO    ] 2026-06-22 20:08:42
[2026-06-22 20:08:42,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:08:44,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:08:44,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:08:45,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:08:45,193.193 INFO    ] time= 22/06/2026 20:08:45
[2026-06-22 20:08:45,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:08:45,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:08:45,250.250 INFO    ] No existing commands found in stream
[2026-06-22 20:08:50,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:08:50,262.262 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-22 20:08:51,652.652 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:08:51,654.654 INFO    ] Checking for system updates...
[2026-06-22 20:08:51,702.702 INFO    ] 200
[2026-06-22 20:08:51,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:08:51,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:08:51,765.765 INFO    ] No update needed
[2026-06-22 20:08:51,768.768 INFO    ] Checking for camera pi updates...
[2026-06-22 20:08:51,804.804 INFO    ] 200
[2026-06-22 20:08:51,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:08:51,850.850 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:08:51,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:08:51,944.944 INFO    ] No camera update needed
[2026-06-22 20:08:51,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:08:51,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:08:51,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:08:51,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:08:54,000.000 INFO    ] ================================================
[2026-06-22 20:08:54,015.015 INFO    ] Launching Daemon at Mon Jun 22 20:08:54 IST 2026
[2026-06-22 20:08:54,026.026 INFO    ] ================================================
[2026-06-22 20:08:54,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:08:54
[2026-06-22 20:08:55,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:08:55,589.589 INFO    ] Initializing speech engine...
[2026-06-22 20:08:55,597.597 INFO    ] 2026-06-22 20:08:55
[2026-06-22 20:08:55,864.864 INFO    ] 2026-06-22 20:08:55
[2026-06-22 20:08:55,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:08:56,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:08:56,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:08:56,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:08:56,348.348 INFO    ] time= 22/06/2026 20:08:56
[2026-06-22 20:08:56,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:08:56,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:08:56,507.507 INFO    ] No existing commands found in stream
[2026-06-22 20:09:01,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:09:01,541.541 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-22 20:09:04,834.834 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:09:04,837.837 INFO    ] Checking for system updates...
[2026-06-22 20:09:04,877.877 INFO    ] 200
[2026-06-22 20:09:04,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:09:04,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:09:04,942.942 INFO    ] No update needed
[2026-06-22 20:09:04,945.945 INFO    ] Checking for camera pi updates...
[2026-06-22 20:09:04,980.980 INFO    ] 200
[2026-06-22 20:09:04,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:09:05,029.029 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:09:05,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:09:05,119.119 INFO    ] No camera update needed
[2026-06-22 20:09:05,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:09:05,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:09:05,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:09:05,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:09:07,176.176 INFO    ] ================================================
[2026-06-22 20:09:07,192.192 INFO    ] Launching Daemon at Mon Jun 22 20:09:07 IST 2026
[2026-06-22 20:09:07,203.203 INFO    ] ================================================
[2026-06-22 20:09:07,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:09:07
[2026-06-22 20:09:08,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:09:08,673.673 INFO    ] Initializing speech engine...
[2026-06-22 20:09:08,684.684 INFO    ] 2026-06-22 20:09:08
[2026-06-22 20:09:08,931.931 INFO    ] 2026-06-22 20:09:08
[2026-06-22 20:09:08,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:09:09,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:09:09,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:09:09,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:09:09,303.303 INFO    ] time= 22/06/2026 20:09:09
[2026-06-22 20:09:09,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:09:09,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:09:09,480.480 INFO    ] No existing commands found in stream
[2026-06-22 20:09:14,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:09:14,513.513 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-22 20:09:17,537.537 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:09:17,540.540 INFO    ] Checking for system updates...
[2026-06-22 20:09:17,576.576 INFO    ] 200
[2026-06-22 20:09:17,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:09:17,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:09:17,635.635 INFO    ] No update needed
[2026-06-22 20:09:17,637.637 INFO    ] Checking for camera pi updates...
[2026-06-22 20:09:17,676.676 INFO    ] 200
[2026-06-22 20:09:17,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:09:17,720.720 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:09:17,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:09:17,798.798 INFO    ] No camera update needed
[2026-06-22 20:09:17,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:09:17,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:09:17,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:09:17,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:09:19,856.856 INFO    ] ================================================
[2026-06-22 20:09:19,871.871 INFO    ] Launching Daemon at Mon Jun 22 20:09:19 IST 2026
[2026-06-22 20:09:19,883.883 INFO    ] ================================================
[2026-06-22 20:09:20,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:09:20
[2026-06-22 20:09:21,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:09:21,298.298 INFO    ] Initializing speech engine...
[2026-06-22 20:09:21,316.316 INFO    ] 2026-06-22 20:09:21
[2026-06-22 20:09:21,593.593 INFO    ] 2026-06-22 20:09:21
[2026-06-22 20:09:21,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:09:21,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:09:21,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:09:21,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:09:22,002.002 INFO    ] time= 22/06/2026 20:09:21
[2026-06-22 20:09:22,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:09:22,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:09:22,200.200 INFO    ] No existing commands found in stream
[2026-06-22 20:09:27,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:09:27,215.215 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-22 20:09:29,792.792 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:09:29,795.795 INFO    ] Checking for system updates...
[2026-06-22 20:09:29,839.839 INFO    ] 200
[2026-06-22 20:09:29,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:09:29,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:09:29,908.908 INFO    ] No update needed
[2026-06-22 20:09:29,910.910 INFO    ] Checking for camera pi updates...
[2026-06-22 20:09:29,949.949 INFO    ] 200
[2026-06-22 20:09:29,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:09:29,992.992 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:09:30,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:09:30,083.083 INFO    ] No camera update needed
[2026-06-22 20:09:30,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:09:30,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:09:30,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:09:30,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:09:32,141.141 INFO    ] ================================================
[2026-06-22 20:09:32,159.159 INFO    ] Launching Daemon at Mon Jun 22 20:09:32 IST 2026
[2026-06-22 20:09:32,171.171 INFO    ] ================================================
[2026-06-22 20:09:32,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:09:32
[2026-06-22 20:09:33,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:09:33,694.694 INFO    ] Initializing speech engine...
[2026-06-22 20:09:33,708.708 INFO    ] 2026-06-22 20:09:33
[2026-06-22 20:09:33,998.998 INFO    ] 2026-06-22 20:09:33
[2026-06-22 20:09:34,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:09:34,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:09:34,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:09:34,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:09:34,554.554 INFO    ] time= 22/06/2026 20:09:34
[2026-06-22 20:09:34,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:09:34,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:09:34,724.724 INFO    ] No existing commands found in stream
[2026-06-22 20:09:39,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:09:39,758.758 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-22 20:09:44,785.785 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:09:44,788.788 INFO    ] Checking for system updates...
[2026-06-22 20:09:44,830.830 INFO    ] 200
[2026-06-22 20:09:44,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:09:44,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:09:44,889.889 INFO    ] No update needed
[2026-06-22 20:09:44,891.891 INFO    ] Checking for camera pi updates...
[2026-06-22 20:09:44,926.926 INFO    ] 200
[2026-06-22 20:09:44,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:09:44,970.970 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:09:45,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:09:45,147.147 INFO    ] No camera update needed
[2026-06-22 20:09:45,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:09:45,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:09:45,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:09:45,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:09:47,203.203 INFO    ] ================================================
[2026-06-22 20:09:47,218.218 INFO    ] Launching Daemon at Mon Jun 22 20:09:47 IST 2026
[2026-06-22 20:09:47,229.229 INFO    ] ================================================
[2026-06-22 20:09:47,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:09:47
[2026-06-22 20:09:48,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:09:48,600.600 INFO    ] Initializing speech engine...
[2026-06-22 20:09:48,609.609 INFO    ] 2026-06-22 20:09:48
[2026-06-22 20:09:48,859.859 INFO    ] 2026-06-22 20:09:48
[2026-06-22 20:09:48,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:09:49,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:09:49,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:09:49,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:09:49,561.561 INFO    ] time= 22/06/2026 20:09:49
[2026-06-22 20:09:49,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:09:49,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:09:49,810.810 INFO    ] No existing commands found in stream
[2026-06-22 20:09:54,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:09:54,829.829 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-22 20:09:58,333.333 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:09:58,335.335 INFO    ] Checking for system updates...
[2026-06-22 20:09:58,372.372 INFO    ] 200
[2026-06-22 20:09:58,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:09:58,431.431 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:09:58,434.434 INFO    ] No update needed
[2026-06-22 20:09:58,437.437 INFO    ] Checking for camera pi updates...
[2026-06-22 20:09:58,471.471 INFO    ] 200
[2026-06-22 20:09:58,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:09:58,516.516 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:09:58,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:09:58,607.607 INFO    ] No camera update needed
[2026-06-22 20:09:58,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:09:58,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:09:58,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:09:58,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:10:00,668.668 INFO    ] ================================================
[2026-06-22 20:10:00,684.684 INFO    ] Launching Daemon at Mon Jun 22 20:10:00 IST 2026
[2026-06-22 20:10:00,695.695 INFO    ] ================================================
[2026-06-22 20:10:01,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:10:01
[2026-06-22 20:10:02,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:10:03,114.114 INFO    ] Initializing speech engine...
[2026-06-22 20:10:03,117.117 INFO    ] 2026-06-22 20:10:03
[2026-06-22 20:10:03,472.472 INFO    ] 2026-06-22 20:10:03
[2026-06-22 20:10:03,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:10:03,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:10:03,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:10:03,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:10:03,903.903 INFO    ] time= 22/06/2026 20:10:03
[2026-06-22 20:10:03,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:10:03,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:10:04,218.218 INFO    ] No existing commands found in stream
[2026-06-22 20:10:09,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:10:09,252.252 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-22 20:10:13,633.633 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:10:13,635.635 INFO    ] Checking for system updates...
[2026-06-22 20:10:13,658.658 INFO    ] 200
[2026-06-22 20:10:13,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:10:13,689.689 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:10:13,690.690 INFO    ] No update needed
[2026-06-22 20:10:13,691.691 INFO    ] Checking for camera pi updates...
[2026-06-22 20:10:13,722.722 INFO    ] 200
[2026-06-22 20:10:13,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:10:13,766.766 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:10:13,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:10:13,829.829 INFO    ] No camera update needed
[2026-06-22 20:10:13,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:10:13,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:10:13,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:10:13,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:10:15,884.884 INFO    ] ================================================
[2026-06-22 20:10:15,899.899 INFO    ] Launching Daemon at Mon Jun 22 20:10:15 IST 2026
[2026-06-22 20:10:15,910.910 INFO    ] ================================================
[2026-06-22 20:10:16,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:10:16
[2026-06-22 20:10:16,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:10:17,277.277 INFO    ] Initializing speech engine...
[2026-06-22 20:10:17,286.286 INFO    ] 2026-06-22 20:10:17
[2026-06-22 20:10:17,545.545 INFO    ] 2026-06-22 20:10:17
[2026-06-22 20:10:17,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:10:19,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:10:19,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:10:20,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:10:20,318.318 INFO    ] time= 22/06/2026 20:10:20
[2026-06-22 20:10:20,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:10:20,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:10:20,407.407 INFO    ] No existing commands found in stream
[2026-06-22 20:10:25,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:10:25,419.419 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-22 20:10:25,982.982 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:10:25,984.984 INFO    ] Checking for system updates...
[2026-06-22 20:10:26,006.006 INFO    ] 200
[2026-06-22 20:10:26,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:10:26,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:10:26,062.062 INFO    ] No update needed
[2026-06-22 20:10:26,064.064 INFO    ] Checking for camera pi updates...
[2026-06-22 20:10:26,098.098 INFO    ] 200
[2026-06-22 20:10:26,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:10:26,141.141 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:10:26,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:10:26,201.201 INFO    ] No camera update needed
[2026-06-22 20:10:26,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:10:26,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:10:26,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:10:26,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:10:28,256.256 INFO    ] ================================================
[2026-06-22 20:10:28,272.272 INFO    ] Launching Daemon at Mon Jun 22 20:10:28 IST 2026
[2026-06-22 20:10:28,282.282 INFO    ] ================================================
[2026-06-22 20:10:28,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:10:28
[2026-06-22 20:10:29,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:10:29,613.613 INFO    ] Initializing speech engine...
[2026-06-22 20:10:29,627.627 INFO    ] 2026-06-22 20:10:29
[2026-06-22 20:10:29,883.883 INFO    ] 2026-06-22 20:10:29
[2026-06-22 20:10:29,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:10:30,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:10:30,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:10:30,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:10:30,428.428 INFO    ] time= 22/06/2026 20:10:30
[2026-06-22 20:10:30,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:10:30,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:10:30,605.605 INFO    ] No existing commands found in stream
[2026-06-22 20:10:35,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:10:35,622.622 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-22 20:10:36,395.395 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:10:36,397.397 INFO    ] Checking for system updates...
[2026-06-22 20:10:36,438.438 INFO    ] 200
[2026-06-22 20:10:36,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:10:36,495.495 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:10:36,497.497 INFO    ] No update needed
[2026-06-22 20:10:36,499.499 INFO    ] Checking for camera pi updates...
[2026-06-22 20:10:36,534.534 INFO    ] 200
[2026-06-22 20:10:36,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:10:36,581.581 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:10:36,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:10:36,644.644 INFO    ] No camera update needed
[2026-06-22 20:10:36,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:10:36,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:10:36,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:10:36,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:10:38,701.701 INFO    ] ================================================
[2026-06-22 20:10:38,716.716 INFO    ] Launching Daemon at Mon Jun 22 20:10:38 IST 2026
[2026-06-22 20:10:38,728.728 INFO    ] ================================================
[2026-06-22 20:10:39,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:10:39
[2026-06-22 20:10:39,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:10:40,231.231 INFO    ] Initializing speech engine...
[2026-06-22 20:10:40,251.251 INFO    ] 2026-06-22 20:10:40
[2026-06-22 20:10:40,523.523 INFO    ] 2026-06-22 20:10:40
[2026-06-22 20:10:40,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:10:40,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:10:40,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:10:41,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:10:41,084.084 INFO    ] time= 22/06/2026 20:10:41
[2026-06-22 20:10:41,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:10:41,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:10:41,302.302 INFO    ] No existing commands found in stream
[2026-06-22 20:10:46,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:10:46,330.330 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-22 20:10:50,633.633 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:10:50,636.636 INFO    ] Checking for system updates...
[2026-06-22 20:10:50,676.676 INFO    ] 200
[2026-06-22 20:10:50,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:10:50,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:10:50,740.740 INFO    ] No update needed
[2026-06-22 20:10:50,742.742 INFO    ] Checking for camera pi updates...
[2026-06-22 20:10:50,777.777 INFO    ] 200
[2026-06-22 20:10:50,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:10:50,824.824 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:10:50,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:10:50,878.878 INFO    ] No camera update needed
[2026-06-22 20:10:50,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:10:50,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:10:50,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:10:50,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:10:52,933.933 INFO    ] ================================================
[2026-06-22 20:10:52,949.949 INFO    ] Launching Daemon at Mon Jun 22 20:10:52 IST 2026
[2026-06-22 20:10:52,961.961 INFO    ] ================================================
[2026-06-22 20:10:53,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:10:53
[2026-06-22 20:10:54,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:10:54,328.328 INFO    ] Initializing speech engine...
[2026-06-22 20:10:54,336.336 INFO    ] 2026-06-22 20:10:54
[2026-06-22 20:10:54,624.624 INFO    ] 2026-06-22 20:10:54
[2026-06-22 20:10:54,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:10:54,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:10:54,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:10:55,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:10:55,109.109 INFO    ] time= 22/06/2026 20:10:55
[2026-06-22 20:10:55,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:10:55,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:10:55,331.331 INFO    ] No existing commands found in stream
[2026-06-22 20:11:00,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:11:00,364.364 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-22 20:11:01,568.568 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:11:01,572.572 INFO    ] Checking for system updates...
[2026-06-22 20:11:01,650.650 INFO    ] 200
[2026-06-22 20:11:01,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:11:01,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:11:01,789.789 INFO    ] No update needed
[2026-06-22 20:11:01,792.792 INFO    ] Checking for camera pi updates...
[2026-06-22 20:11:01,841.841 INFO    ] 200
[2026-06-22 20:11:01,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:11:01,900.900 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:11:01,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:11:01,961.961 INFO    ] No camera update needed
[2026-06-22 20:11:01,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:11:01,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:11:01,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:11:01,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:11:04,032.032 INFO    ] ================================================
[2026-06-22 20:11:04,048.048 INFO    ] Launching Daemon at Mon Jun 22 20:11:04 IST 2026
[2026-06-22 20:11:04,059.059 INFO    ] ================================================
[2026-06-22 20:11:04,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:11:04
[2026-06-22 20:11:05,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:11:05,496.496 INFO    ] Initializing speech engine...
[2026-06-22 20:11:05,519.519 INFO    ] 2026-06-22 20:11:05
[2026-06-22 20:11:05,787.787 INFO    ] 2026-06-22 20:11:05
[2026-06-22 20:11:05,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:11:06,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:11:06,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:11:06,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:11:06,355.355 INFO    ] time= 22/06/2026 20:11:06
[2026-06-22 20:11:06,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:11:06,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:11:06,500.500 INFO    ] No existing commands found in stream
[2026-06-22 20:11:11,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:11:11,531.531 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-22 20:11:12,885.885 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:11:12,888.888 INFO    ] Checking for system updates...
[2026-06-22 20:11:12,929.929 INFO    ] 200
[2026-06-22 20:11:12,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:11:12,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:11:12,993.993 INFO    ] No update needed
[2026-06-22 20:11:12,997.997 INFO    ] Checking for camera pi updates...
[2026-06-22 20:11:13,034.034 INFO    ] 200
[2026-06-22 20:11:13,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:11:13,078.078 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:11:13,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:11:13,173.173 INFO    ] No camera update needed
[2026-06-22 20:11:13,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:11:13,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:11:13,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:11:13,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:11:15,230.230 INFO    ] ================================================
[2026-06-22 20:11:15,246.246 INFO    ] Launching Daemon at Mon Jun 22 20:11:15 IST 2026
[2026-06-22 20:11:15,257.257 INFO    ] ================================================
[2026-06-22 20:11:15,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:11:15
[2026-06-22 20:11:16,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:11:16,749.749 INFO    ] Initializing speech engine...
[2026-06-22 20:11:16,758.758 INFO    ] 2026-06-22 20:11:16
[2026-06-22 20:11:17,013.013 INFO    ] 2026-06-22 20:11:17
[2026-06-22 20:11:17,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:11:17,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:11:17,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:11:20,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:11:20,082.082 INFO    ] time= 22/06/2026 20:11:20
[2026-06-22 20:11:20,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:11:20,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:11:20,149.149 INFO    ] No existing commands found in stream
[2026-06-22 20:11:25,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:11:25,161.161 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-22 20:11:27,634.634 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:11:27,637.637 INFO    ] Checking for system updates...
[2026-06-22 20:11:27,676.676 INFO    ] 200
[2026-06-22 20:11:27,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:11:27,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:11:27,734.734 INFO    ] No update needed
[2026-06-22 20:11:27,737.737 INFO    ] Checking for camera pi updates...
[2026-06-22 20:11:27,774.774 INFO    ] 200
[2026-06-22 20:11:27,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:11:27,823.823 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:11:27,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:11:27,915.915 INFO    ] No camera update needed
[2026-06-22 20:11:27,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:11:27,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:11:27,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:11:27,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:11:29,975.975 INFO    ] ================================================
[2026-06-22 20:11:29,991.991 INFO    ] Launching Daemon at Mon Jun 22 20:11:29 IST 2026
[2026-06-22 20:11:30,001.001 INFO    ] ================================================
[2026-06-22 20:11:30,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:11:30
[2026-06-22 20:11:31,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:11:31,365.365 INFO    ] Initializing speech engine...
[2026-06-22 20:11:31,371.371 INFO    ] 2026-06-22 20:11:31
[2026-06-22 20:11:31,629.629 INFO    ] 2026-06-22 20:11:31
[2026-06-22 20:11:31,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:11:31,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:11:31,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:11:32,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:11:32,120.120 INFO    ] time= 22/06/2026 20:11:32
[2026-06-22 20:11:32,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:11:32,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:11:32,356.356 INFO    ] No existing commands found in stream
[2026-06-22 20:11:37,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:11:37,413.413 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-22 20:11:41,500.500 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:11:41,503.503 INFO    ] Checking for system updates...
[2026-06-22 20:11:41,541.541 INFO    ] 200
[2026-06-22 20:11:41,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:11:41,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:11:41,599.599 INFO    ] No update needed
[2026-06-22 20:11:41,601.601 INFO    ] Checking for camera pi updates...
[2026-06-22 20:11:41,635.635 INFO    ] 200
[2026-06-22 20:11:41,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:11:41,677.677 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:11:41,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:11:41,761.761 INFO    ] No camera update needed
[2026-06-22 20:11:41,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:11:41,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:11:41,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:11:41,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:11:43,819.819 INFO    ] ================================================
[2026-06-22 20:11:43,835.835 INFO    ] Launching Daemon at Mon Jun 22 20:11:43 IST 2026
[2026-06-22 20:11:43,847.847 INFO    ] ================================================
[2026-06-22 20:11:44,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:11:44
[2026-06-22 20:11:44,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:11:45,181.181 INFO    ] Initializing speech engine...
[2026-06-22 20:11:45,200.200 INFO    ] 2026-06-22 20:11:45
[2026-06-22 20:11:45,455.455 INFO    ] 2026-06-22 20:11:45
[2026-06-22 20:11:45,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:11:45,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:11:45,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:11:45,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:11:45,938.938 INFO    ] time= 22/06/2026 20:11:45
[2026-06-22 20:11:45,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:11:46,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:11:46,183.183 INFO    ] No existing commands found in stream
[2026-06-22 20:11:51,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:11:51,217.217 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-22 20:11:54,577.577 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:11:54,579.579 INFO    ] Checking for system updates...
[2026-06-22 20:11:54,616.616 INFO    ] 200
[2026-06-22 20:11:54,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:11:54,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:11:54,678.678 INFO    ] No update needed
[2026-06-22 20:11:54,681.681 INFO    ] Checking for camera pi updates...
[2026-06-22 20:11:54,715.715 INFO    ] 200
[2026-06-22 20:11:54,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:11:54,762.762 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:11:54,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:11:54,934.934 INFO    ] No camera update needed
[2026-06-22 20:11:54,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:11:54,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:11:54,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:11:54,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:11:56,989.989 INFO    ] ================================================
[2026-06-22 20:11:57,006.006 INFO    ] Launching Daemon at Mon Jun 22 20:11:57 IST 2026
[2026-06-22 20:11:57,018.018 INFO    ] ================================================
[2026-06-22 20:11:57,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:11:57
[2026-06-22 20:11:58,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:11:58,479.479 INFO    ] Initializing speech engine...
[2026-06-22 20:11:58,488.488 INFO    ] 2026-06-22 20:11:58
[2026-06-22 20:11:58,748.748 INFO    ] 2026-06-22 20:11:58
[2026-06-22 20:11:58,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:11:59,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:11:59,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:11:59,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:11:59,219.219 INFO    ] time= 22/06/2026 20:11:59
[2026-06-22 20:11:59,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:11:59,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:11:59,451.451 INFO    ] No existing commands found in stream
[2026-06-22 20:12:04,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:12:04,479.479 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-22 20:12:05,819.819 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:12:05,821.821 INFO    ] Checking for system updates...
[2026-06-22 20:12:05,857.857 INFO    ] 200
[2026-06-22 20:12:05,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:12:05,918.918 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:12:05,920.920 INFO    ] No update needed
[2026-06-22 20:12:05,923.923 INFO    ] Checking for camera pi updates...
[2026-06-22 20:12:05,957.957 INFO    ] 200
[2026-06-22 20:12:05,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:12:06,000.000 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:12:06,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:12:06,059.059 INFO    ] No camera update needed
[2026-06-22 20:12:06,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:12:06,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:12:06,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:12:06,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:12:08,115.115 INFO    ] ================================================
[2026-06-22 20:12:08,131.131 INFO    ] Launching Daemon at Mon Jun 22 20:12:08 IST 2026
[2026-06-22 20:12:08,141.141 INFO    ] ================================================
[2026-06-22 20:12:08,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:12:08
[2026-06-22 20:12:09,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:12:09,604.604 INFO    ] Initializing speech engine...
[2026-06-22 20:12:09,613.613 INFO    ] 2026-06-22 20:12:09
[2026-06-22 20:12:09,899.899 INFO    ] 2026-06-22 20:12:09
[2026-06-22 20:12:09,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:12:10,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:12:10,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:12:10,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:12:10,411.411 INFO    ] time= 22/06/2026 20:12:10
[2026-06-22 20:12:10,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:12:10,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:12:10,635.635 INFO    ] No existing commands found in stream
[2026-06-22 20:12:15,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:12:15,661.661 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-22 20:12:17,659.659 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:12:17,662.662 INFO    ] Checking for system updates...
[2026-06-22 20:12:17,700.700 INFO    ] 200
[2026-06-22 20:12:17,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:12:17,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:12:17,773.773 INFO    ] No update needed
[2026-06-22 20:12:17,776.776 INFO    ] Checking for camera pi updates...
[2026-06-22 20:12:17,810.810 INFO    ] 200
[2026-06-22 20:12:17,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:12:17,853.853 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:12:17,908.908 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:12:17,910.910 INFO    ] No camera update needed
[2026-06-22 20:12:17,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:12:17,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:12:17,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:12:17,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:12:19,968.968 INFO    ] ================================================
[2026-06-22 20:12:19,984.984 INFO    ] Launching Daemon at Mon Jun 22 20:12:19 IST 2026
[2026-06-22 20:12:20,996.996 INFO    ] ================================================
[2026-06-22 20:12:20,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:12:20
[2026-06-22 20:12:21,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:12:21,561.561 INFO    ] Initializing speech engine...
[2026-06-22 20:12:21,570.570 INFO    ] 2026-06-22 20:12:21
[2026-06-22 20:12:21,839.839 INFO    ] 2026-06-22 20:12:21
[2026-06-22 20:12:21,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:12:23,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:12:23,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:12:24,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:12:24,480.480 INFO    ] time= 22/06/2026 20:12:24
[2026-06-22 20:12:24,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:12:24,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:12:24,617.617 INFO    ] No existing commands found in stream
[2026-06-22 20:12:29,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:12:29,630.630 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-22 20:12:34,199.199 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:12:34,201.201 INFO    ] Checking for system updates...
[2026-06-22 20:12:34,237.237 INFO    ] 200
[2026-06-22 20:12:34,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:12:34,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:12:34,305.305 INFO    ] No update needed
[2026-06-22 20:12:34,307.307 INFO    ] Checking for camera pi updates...
[2026-06-22 20:12:34,341.341 INFO    ] 200
[2026-06-22 20:12:34,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:12:34,388.388 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:12:34,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:12:34,470.470 INFO    ] No camera update needed
[2026-06-22 20:12:34,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:12:34,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:12:34,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:12:34,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:12:36,526.526 INFO    ] ================================================
[2026-06-22 20:12:36,542.542 INFO    ] Launching Daemon at Mon Jun 22 20:12:36 IST 2026
[2026-06-22 20:12:36,553.553 INFO    ] ================================================
[2026-06-22 20:12:37,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:12:37
[2026-06-22 20:12:37,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:12:37,970.970 INFO    ] Initializing speech engine...
[2026-06-22 20:12:37,983.983 INFO    ] 2026-06-22 20:12:37
[2026-06-22 20:12:38,249.249 INFO    ] 2026-06-22 20:12:38
[2026-06-22 20:12:38,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:12:38,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:12:38,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:12:38,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:12:38,797.797 INFO    ] time= 22/06/2026 20:12:38
[2026-06-22 20:12:38,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:12:38,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:12:38,962.962 INFO    ] No existing commands found in stream
[2026-06-22 20:12:43,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:12:43,991.991 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-22 20:12:46,633.633 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:12:46,635.635 INFO    ] Checking for system updates...
[2026-06-22 20:12:46,657.657 INFO    ] 200
[2026-06-22 20:12:46,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:12:46,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:12:46,716.716 INFO    ] No update needed
[2026-06-22 20:12:46,718.718 INFO    ] Checking for camera pi updates...
[2026-06-22 20:12:46,753.753 INFO    ] 200
[2026-06-22 20:12:46,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:12:46,796.796 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:12:46,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:12:46,881.881 INFO    ] No camera update needed
[2026-06-22 20:12:46,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:12:46,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:12:46,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:12:46,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:12:48,943.943 INFO    ] ================================================
[2026-06-22 20:12:48,959.959 INFO    ] Launching Daemon at Mon Jun 22 20:12:48 IST 2026
[2026-06-22 20:12:48,970.970 INFO    ] ================================================
[2026-06-22 20:12:49,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:12:49
[2026-06-22 20:12:50,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:12:50,419.419 INFO    ] Initializing speech engine...
[2026-06-22 20:12:50,431.431 INFO    ] 2026-06-22 20:12:50
[2026-06-22 20:12:50,712.712 INFO    ] 2026-06-22 20:12:50
[2026-06-22 20:12:50,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:12:55,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:12:55,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:12:56,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:12:56,346.346 INFO    ] time= 22/06/2026 20:12:56
[2026-06-22 20:12:56,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:12:56,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:12:56,420.420 INFO    ] No existing commands found in stream
[2026-06-22 20:13:01,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:13:01,432.432 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-22 20:13:03,409.409 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:13:03,412.412 INFO    ] Checking for system updates...
[2026-06-22 20:13:03,449.449 INFO    ] 200
[2026-06-22 20:13:03,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:13:03,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:13:03,508.508 INFO    ] No update needed
[2026-06-22 20:13:03,511.511 INFO    ] Checking for camera pi updates...
[2026-06-22 20:13:03,546.546 INFO    ] 200
[2026-06-22 20:13:03,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:13:03,591.591 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:13:03,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:13:03,675.675 INFO    ] No camera update needed
[2026-06-22 20:13:03,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:13:03,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:13:03,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:13:03,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:13:05,730.730 INFO    ] ================================================
[2026-06-22 20:13:05,746.746 INFO    ] Launching Daemon at Mon Jun 22 20:13:05 IST 2026
[2026-06-22 20:13:05,757.757 INFO    ] ================================================
[2026-06-22 20:13:06,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:13:06
[2026-06-22 20:13:06,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:13:07,193.193 INFO    ] Initializing speech engine...
[2026-06-22 20:13:07,200.200 INFO    ] 2026-06-22 20:13:07
[2026-06-22 20:13:07,492.492 INFO    ] 2026-06-22 20:13:07
[2026-06-22 20:13:07,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:13:07,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:13:07,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:13:07,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:13:07,901.901 INFO    ] time= 22/06/2026 20:13:07
[2026-06-22 20:13:07,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:13:07,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:13:08,068.068 INFO    ] No existing commands found in stream
[2026-06-22 20:13:13,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:13:13,096.096 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-22 20:13:13,806.806 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:13:13,809.809 INFO    ] Checking for system updates...
[2026-06-22 20:13:13,847.847 INFO    ] 200
[2026-06-22 20:13:13,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:13:13,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:13:13,905.905 INFO    ] No update needed
[2026-06-22 20:13:13,908.908 INFO    ] Checking for camera pi updates...
[2026-06-22 20:13:13,948.948 INFO    ] 200
[2026-06-22 20:13:13,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:13:13,992.992 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:13:14,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:13:14,086.086 INFO    ] No camera update needed
[2026-06-22 20:13:14,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:13:14,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:13:14,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:13:14,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:13:16,143.143 INFO    ] ================================================
[2026-06-22 20:13:16,159.159 INFO    ] Launching Daemon at Mon Jun 22 20:13:16 IST 2026
[2026-06-22 20:13:16,170.170 INFO    ] ================================================
[2026-06-22 20:13:16,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:13:16
[2026-06-22 20:13:17,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:13:17,552.552 INFO    ] Initializing speech engine...
[2026-06-22 20:13:17,562.562 INFO    ] 2026-06-22 20:13:17
[2026-06-22 20:13:17,828.828 INFO    ] 2026-06-22 20:13:17
[2026-06-22 20:13:17,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:13:18,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:13:18,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:13:18,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:13:18,239.239 INFO    ] time= 22/06/2026 20:13:18
[2026-06-22 20:13:18,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:13:18,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:13:18,324.324 INFO    ] No existing commands found in stream
[2026-06-22 20:13:23,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:13:23,357.357 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-22 20:13:25,962.962 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:13:25,965.965 INFO    ] Checking for system updates...
[2026-06-22 20:13:26,004.004 INFO    ] 200
[2026-06-22 20:13:26,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:13:26,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:13:26,065.065 INFO    ] No update needed
[2026-06-22 20:13:26,068.068 INFO    ] Checking for camera pi updates...
[2026-06-22 20:13:26,107.107 INFO    ] 200
[2026-06-22 20:13:26,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:13:26,152.152 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:13:26,228.228 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:13:26,231.231 INFO    ] No camera update needed
[2026-06-22 20:13:26,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:13:26,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:13:26,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:13:26,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:13:28,290.290 INFO    ] ================================================
[2026-06-22 20:13:28,305.305 INFO    ] Launching Daemon at Mon Jun 22 20:13:28 IST 2026
[2026-06-22 20:13:28,316.316 INFO    ] ================================================
[2026-06-22 20:13:28,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:13:28
[2026-06-22 20:13:29,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:13:29,792.792 INFO    ] Initializing speech engine...
[2026-06-22 20:13:29,800.800 INFO    ] 2026-06-22 20:13:29
[2026-06-22 20:13:30,070.070 INFO    ] 2026-06-22 20:13:30
[2026-06-22 20:13:30,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:13:30,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:13:30,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:13:30,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:13:30,583.583 INFO    ] time= 22/06/2026 20:13:30
[2026-06-22 20:13:30,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:13:30,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:13:30,797.797 INFO    ] No existing commands found in stream
[2026-06-22 20:13:35,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:13:35,823.823 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-22 20:13:38,895.895 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:13:38,898.898 INFO    ] Checking for system updates...
[2026-06-22 20:13:38,935.935 INFO    ] 200
[2026-06-22 20:13:38,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:13:38,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:13:38,993.993 INFO    ] No update needed
[2026-06-22 20:13:38,996.996 INFO    ] Checking for camera pi updates...
[2026-06-22 20:13:39,030.030 INFO    ] 200
[2026-06-22 20:13:39,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:13:39,077.077 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:13:39,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:13:39,186.186 INFO    ] No camera update needed
[2026-06-22 20:13:39,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:13:39,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:13:39,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:13:39,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:13:41,243.243 INFO    ] ================================================
[2026-06-22 20:13:41,258.258 INFO    ] Launching Daemon at Mon Jun 22 20:13:41 IST 2026
[2026-06-22 20:13:41,268.268 INFO    ] ================================================
[2026-06-22 20:13:41,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:13:41
[2026-06-22 20:13:42,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:13:42,707.707 INFO    ] Initializing speech engine...
[2026-06-22 20:13:42,716.716 INFO    ] 2026-06-22 20:13:42
[2026-06-22 20:13:42,969.969 INFO    ] 2026-06-22 20:13:42
[2026-06-22 20:13:42,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:13:43,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:13:43,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:13:43,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:13:43,314.314 INFO    ] time= 22/06/2026 20:13:43
[2026-06-22 20:13:43,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:13:43,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:13:43,467.467 INFO    ] No existing commands found in stream
[2026-06-22 20:13:48,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:13:48,500.500 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-22 20:13:50,445.445 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:13:50,448.448 INFO    ] Checking for system updates...
[2026-06-22 20:13:50,484.484 INFO    ] 200
[2026-06-22 20:13:50,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:13:50,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:13:50,550.550 INFO    ] No update needed
[2026-06-22 20:13:50,552.552 INFO    ] Checking for camera pi updates...
[2026-06-22 20:13:50,586.586 INFO    ] 200
[2026-06-22 20:13:50,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:13:50,632.632 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:13:50,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:13:50,729.729 INFO    ] No camera update needed
[2026-06-22 20:13:50,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:13:50,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:13:50,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:13:50,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:13:52,787.787 INFO    ] ================================================
[2026-06-22 20:13:52,802.802 INFO    ] Launching Daemon at Mon Jun 22 20:13:52 IST 2026
[2026-06-22 20:13:52,813.813 INFO    ] ================================================
[2026-06-22 20:13:53,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:13:53
[2026-06-22 20:13:54,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:13:54,300.300 INFO    ] Initializing speech engine...
[2026-06-22 20:13:54,313.313 INFO    ] 2026-06-22 20:13:54
[2026-06-22 20:13:54,591.591 INFO    ] 2026-06-22 20:13:54
[2026-06-22 20:13:54,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:13:56,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:13:56,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:13:57,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:13:57,325.325 INFO    ] time= 22/06/2026 20:13:57
[2026-06-22 20:13:57,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:13:57,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:13:57,415.415 INFO    ] No existing commands found in stream
[2026-06-22 20:14:02,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:14:02,430.430 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-22 20:14:06,521.521 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:14:06,524.524 INFO    ] Checking for system updates...
[2026-06-22 20:14:06,561.561 INFO    ] 200
[2026-06-22 20:14:06,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:14:06,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:14:06,622.622 INFO    ] No update needed
[2026-06-22 20:14:06,624.624 INFO    ] Checking for camera pi updates...
[2026-06-22 20:14:06,658.658 INFO    ] 200
[2026-06-22 20:14:06,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:14:06,701.701 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:14:06,782.782 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:14:06,785.785 INFO    ] No camera update needed
[2026-06-22 20:14:06,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:14:06,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:14:06,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:14:06,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:14:08,841.841 INFO    ] ================================================
[2026-06-22 20:14:08,856.856 INFO    ] Launching Daemon at Mon Jun 22 20:14:08 IST 2026
[2026-06-22 20:14:08,867.867 INFO    ] ================================================
[2026-06-22 20:14:09,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:14:09
[2026-06-22 20:14:10,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:14:10,500.500 INFO    ] Initializing speech engine...
[2026-06-22 20:14:10,512.512 INFO    ] 2026-06-22 20:14:10
[2026-06-22 20:14:10,802.802 INFO    ] 2026-06-22 20:14:10
[2026-06-22 20:14:10,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:14:11,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:14:11,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:14:11,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:14:11,295.295 INFO    ] time= 22/06/2026 20:14:11
[2026-06-22 20:14:11,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:14:11,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:14:11,496.496 INFO    ] No existing commands found in stream
[2026-06-22 20:14:16,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:14:16,527.527 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-22 20:14:19,418.418 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:14:19,421.421 INFO    ] Checking for system updates...
[2026-06-22 20:14:19,456.456 INFO    ] 200
[2026-06-22 20:14:19,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:14:19,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:14:19,513.513 INFO    ] No update needed
[2026-06-22 20:14:19,516.516 INFO    ] Checking for camera pi updates...
[2026-06-22 20:14:19,550.550 INFO    ] 200
[2026-06-22 20:14:19,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:14:19,593.593 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:14:19,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:14:19,649.649 INFO    ] No camera update needed
[2026-06-22 20:14:19,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:14:19,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:14:19,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:14:19,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:14:21,704.704 INFO    ] ================================================
[2026-06-22 20:14:21,719.719 INFO    ] Launching Daemon at Mon Jun 22 20:14:21 IST 2026
[2026-06-22 20:14:21,729.729 INFO    ] ================================================
[2026-06-22 20:14:22,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:14:22
[2026-06-22 20:14:22,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:14:23,112.112 INFO    ] Initializing speech engine...
[2026-06-22 20:14:23,122.122 INFO    ] 2026-06-22 20:14:23
[2026-06-22 20:14:23,408.408 INFO    ] 2026-06-22 20:14:23
[2026-06-22 20:14:23,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:14:28,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:14:28,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:14:29,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:14:29,038.038 INFO    ] time= 22/06/2026 20:14:29
[2026-06-22 20:14:29,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:14:29,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:14:29,125.125 INFO    ] No existing commands found in stream
[2026-06-22 20:14:34,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:14:34,137.137 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-22 20:14:35,863.863 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:14:35,866.866 INFO    ] Checking for system updates...
[2026-06-22 20:14:35,906.906 INFO    ] 200
[2026-06-22 20:14:35,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:14:35,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:14:35,963.963 INFO    ] No update needed
[2026-06-22 20:14:35,966.966 INFO    ] Checking for camera pi updates...
[2026-06-22 20:14:36,003.003 INFO    ] 200
[2026-06-22 20:14:36,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:14:36,047.047 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:14:36,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:14:36,129.129 INFO    ] No camera update needed
[2026-06-22 20:14:36,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:14:36,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:14:36,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:14:36,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:14:38,185.185 INFO    ] ================================================
[2026-06-22 20:14:38,201.201 INFO    ] Launching Daemon at Mon Jun 22 20:14:38 IST 2026
[2026-06-22 20:14:38,212.212 INFO    ] ================================================
[2026-06-22 20:14:38,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:14:38
[2026-06-22 20:14:39,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:14:39,868.868 INFO    ] Initializing speech engine...
[2026-06-22 20:14:39,876.876 INFO    ] 2026-06-22 20:14:39
[2026-06-22 20:14:40,167.167 INFO    ] 2026-06-22 20:14:40
[2026-06-22 20:14:40,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:14:40,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:14:40,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:14:40,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:14:40,661.661 INFO    ] time= 22/06/2026 20:14:40
[2026-06-22 20:14:40,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:14:40,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:14:40,880.880 INFO    ] No existing commands found in stream
[2026-06-22 20:14:45,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:14:45,907.907 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-22 20:14:49,618.618 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:14:49,621.621 INFO    ] Checking for system updates...
[2026-06-22 20:14:49,663.663 INFO    ] 200
[2026-06-22 20:14:49,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:14:49,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:14:49,722.722 INFO    ] No update needed
[2026-06-22 20:14:49,724.724 INFO    ] Checking for camera pi updates...
[2026-06-22 20:14:49,761.761 INFO    ] 200
[2026-06-22 20:14:49,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:14:49,804.804 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:14:49,854.854 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:14:49,856.856 INFO    ] No camera update needed
[2026-06-22 20:14:49,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:14:49,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:14:49,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:14:49,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:14:51,917.917 INFO    ] ================================================
[2026-06-22 20:14:51,932.932 INFO    ] Launching Daemon at Mon Jun 22 20:14:51 IST 2026
[2026-06-22 20:14:51,943.943 INFO    ] ================================================
[2026-06-22 20:14:52,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:14:52
[2026-06-22 20:14:53,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:14:53,395.395 INFO    ] Initializing speech engine...
[2026-06-22 20:14:53,403.403 INFO    ] 2026-06-22 20:14:53
[2026-06-22 20:14:53,659.659 INFO    ] 2026-06-22 20:14:53
[2026-06-22 20:14:53,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:14:53,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:14:53,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:14:54,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:14:54,188.188 INFO    ] time= 22/06/2026 20:14:54
[2026-06-22 20:14:54,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:14:54,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:14:54,368.368 INFO    ] No existing commands found in stream
[2026-06-22 20:14:59,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:14:59,396.396 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-22 20:15:03,827.827 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:15:03,830.830 INFO    ] Checking for system updates...
[2026-06-22 20:15:03,875.875 INFO    ] 200
[2026-06-22 20:15:03,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:15:03,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:15:03,933.933 INFO    ] No update needed
[2026-06-22 20:15:03,935.935 INFO    ] Checking for camera pi updates...
[2026-06-22 20:15:03,973.973 INFO    ] 200
[2026-06-22 20:15:03,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:15:04,016.016 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:15:04,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:15:04,105.105 INFO    ] No camera update needed
[2026-06-22 20:15:04,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:15:04,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:15:04,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:15:04,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:15:06,164.164 INFO    ] ================================================
[2026-06-22 20:15:06,179.179 INFO    ] Launching Daemon at Mon Jun 22 20:15:06 IST 2026
[2026-06-22 20:15:06,190.190 INFO    ] ================================================
[2026-06-22 20:15:06,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:15:06
[2026-06-22 20:15:07,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:15:07,796.796 INFO    ] Initializing speech engine...
[2026-06-22 20:15:07,808.808 INFO    ] 2026-06-22 20:15:07
[2026-06-22 20:15:08,090.090 INFO    ] 2026-06-22 20:15:08
[2026-06-22 20:15:08,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:15:08,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:15:08,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:15:08,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:15:08,628.628 INFO    ] time= 22/06/2026 20:15:08
[2026-06-22 20:15:08,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:15:08,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:15:08,805.805 INFO    ] No existing commands found in stream
[2026-06-22 20:15:13,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:15:13,824.824 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-22 20:15:17,454.454 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:15:17,458.458 INFO    ] Checking for system updates...
[2026-06-22 20:15:17,498.498 INFO    ] 200
[2026-06-22 20:15:17,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:15:17,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:15:17,557.557 INFO    ] No update needed
[2026-06-22 20:15:17,559.559 INFO    ] Checking for camera pi updates...
[2026-06-22 20:15:17,593.593 INFO    ] 200
[2026-06-22 20:15:17,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:15:17,637.637 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:15:17,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:15:17,698.698 INFO    ] No camera update needed
[2026-06-22 20:15:17,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:15:17,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:15:17,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:15:17,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:15:19,746.746 INFO    ] ================================================
[2026-06-22 20:15:19,761.761 INFO    ] Launching Daemon at Mon Jun 22 20:15:19 IST 2026
[2026-06-22 20:15:19,772.772 INFO    ] ================================================
[2026-06-22 20:15:20,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:15:20
[2026-06-22 20:15:20,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:15:21,227.227 INFO    ] Initializing speech engine...
[2026-06-22 20:15:21,236.236 INFO    ] 2026-06-22 20:15:21
[2026-06-22 20:15:21,502.502 INFO    ] 2026-06-22 20:15:21
[2026-06-22 20:15:21,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:15:21,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:15:21,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:15:22,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:15:22,136.136 INFO    ] time= 22/06/2026 20:15:22
[2026-06-22 20:15:22,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:15:22,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:15:22,346.346 INFO    ] No existing commands found in stream
[2026-06-22 20:15:27,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:15:27,384.384 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-22 20:15:32,302.302 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:15:32,305.305 INFO    ] Checking for system updates...
[2026-06-22 20:15:32,350.350 INFO    ] 200
[2026-06-22 20:15:32,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:15:32,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:15:32,432.432 INFO    ] No update needed
[2026-06-22 20:15:32,435.435 INFO    ] Checking for camera pi updates...
[2026-06-22 20:15:32,471.471 INFO    ] 200
[2026-06-22 20:15:32,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:15:32,520.520 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:15:32,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:15:32,621.621 INFO    ] No camera update needed
[2026-06-22 20:15:32,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:15:32,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:15:32,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:15:32,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:15:34,685.685 INFO    ] ================================================
[2026-06-22 20:15:34,700.700 INFO    ] Launching Daemon at Mon Jun 22 20:15:34 IST 2026
[2026-06-22 20:15:34,710.710 INFO    ] ================================================
[2026-06-22 20:15:35,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:15:35
[2026-06-22 20:15:35,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:15:36,169.169 INFO    ] Initializing speech engine...
[2026-06-22 20:15:36,175.175 INFO    ] 2026-06-22 20:15:36
[2026-06-22 20:15:36,435.435 INFO    ] 2026-06-22 20:15:36
[2026-06-22 20:15:36,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:15:36,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:15:36,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:15:36,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:15:36,993.993 INFO    ] time= 22/06/2026 20:15:36
[2026-06-22 20:15:37,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:15:37,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:15:37,148.148 INFO    ] No existing commands found in stream
[2026-06-22 20:15:42,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:15:42,191.191 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-22 20:15:43,542.542 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:15:43,545.545 INFO    ] Checking for system updates...
[2026-06-22 20:15:43,586.586 INFO    ] 200
[2026-06-22 20:15:43,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:15:43,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:15:43,670.670 INFO    ] No update needed
[2026-06-22 20:15:43,673.673 INFO    ] Checking for camera pi updates...
[2026-06-22 20:15:43,707.707 INFO    ] 200
[2026-06-22 20:15:43,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:15:43,756.756 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:15:43,834.834 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:15:43,837.837 INFO    ] No camera update needed
[2026-06-22 20:15:43,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:15:43,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:15:43,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:15:43,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:15:45,895.895 INFO    ] ================================================
[2026-06-22 20:15:45,910.910 INFO    ] Launching Daemon at Mon Jun 22 20:15:45 IST 2026
[2026-06-22 20:15:45,921.921 INFO    ] ================================================
[2026-06-22 20:15:46,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:15:46
[2026-06-22 20:15:47,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:15:47,388.388 INFO    ] Initializing speech engine...
[2026-06-22 20:15:47,396.396 INFO    ] 2026-06-22 20:15:47
[2026-06-22 20:15:47,656.656 INFO    ] 2026-06-22 20:15:47
[2026-06-22 20:15:47,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:15:47,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:15:47,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:15:48,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:15:48,202.202 INFO    ] time= 22/06/2026 20:15:48
[2026-06-22 20:15:48,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:15:48,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:15:48,357.357 INFO    ] No existing commands found in stream
[2026-06-22 20:15:53,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:15:53,374.374 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-22 20:15:57,433.433 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:15:57,436.436 INFO    ] Checking for system updates...
[2026-06-22 20:15:57,477.477 INFO    ] 200
[2026-06-22 20:15:57,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:15:57,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:15:57,543.543 INFO    ] No update needed
[2026-06-22 20:15:57,546.546 INFO    ] Checking for camera pi updates...
[2026-06-22 20:15:57,581.581 INFO    ] 200
[2026-06-22 20:15:57,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:15:57,624.624 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:15:57,702.702 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:15:57,704.704 INFO    ] No camera update needed
[2026-06-22 20:15:57,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:15:57,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:15:57,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:15:57,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:15:59,761.761 INFO    ] ================================================
[2026-06-22 20:15:59,776.776 INFO    ] Launching Daemon at Mon Jun 22 20:15:59 IST 2026
[2026-06-22 20:15:59,787.787 INFO    ] ================================================
[2026-06-22 20:16:00,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:16:00
[2026-06-22 20:16:00,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:16:01,255.255 INFO    ] Initializing speech engine...
[2026-06-22 20:16:01,269.269 INFO    ] 2026-06-22 20:16:01
[2026-06-22 20:16:01,531.531 INFO    ] 2026-06-22 20:16:01
[2026-06-22 20:16:01,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:16:03,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:16:03,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:16:04,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:16:04,328.328 INFO    ] time= 22/06/2026 20:16:04
[2026-06-22 20:16:04,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:16:04,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:16:04,427.427 INFO    ] No existing commands found in stream
[2026-06-22 20:16:09,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:16:09,443.443 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-22 20:16:12,953.953 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:16:12,954.954 INFO    ] Checking for system updates...
[2026-06-22 20:16:12,976.976 INFO    ] 200
[2026-06-22 20:16:12,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:16:13,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:16:13,023.023 INFO    ] No update needed
[2026-06-22 20:16:13,026.026 INFO    ] Checking for camera pi updates...
[2026-06-22 20:16:13,059.059 INFO    ] 200
[2026-06-22 20:16:13,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:16:13,102.102 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:16:13,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:16:13,286.286 INFO    ] No camera update needed
[2026-06-22 20:16:13,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:16:13,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:16:13,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:16:13,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:16:15,343.343 INFO    ] ================================================
[2026-06-22 20:16:15,359.359 INFO    ] Launching Daemon at Mon Jun 22 20:16:15 IST 2026
[2026-06-22 20:16:15,370.370 INFO    ] ================================================
[2026-06-22 20:16:15,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:16:15
[2026-06-22 20:16:16,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:16:16,833.833 INFO    ] Initializing speech engine...
[2026-06-22 20:16:16,842.842 INFO    ] 2026-06-22 20:16:16
[2026-06-22 20:16:17,119.119 INFO    ] 2026-06-22 20:16:17
[2026-06-22 20:16:17,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:16:17,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:16:17,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:16:17,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:16:17,581.581 INFO    ] time= 22/06/2026 20:16:17
[2026-06-22 20:16:17,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:16:17,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:16:17,786.786 INFO    ] No existing commands found in stream
[2026-06-22 20:16:22,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:16:22,817.817 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-22 20:16:24,493.493 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:16:24,496.496 INFO    ] Checking for system updates...
[2026-06-22 20:16:24,537.537 INFO    ] 200
[2026-06-22 20:16:24,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:16:24,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:16:24,595.595 INFO    ] No update needed
[2026-06-22 20:16:24,598.598 INFO    ] Checking for camera pi updates...
[2026-06-22 20:16:24,635.635 INFO    ] 200
[2026-06-22 20:16:24,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:16:24,678.678 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:16:24,768.768 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:16:24,771.771 INFO    ] No camera update needed
[2026-06-22 20:16:24,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:16:24,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:16:24,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:16:24,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:16:26,827.827 INFO    ] ================================================
[2026-06-22 20:16:26,842.842 INFO    ] Launching Daemon at Mon Jun 22 20:16:26 IST 2026
[2026-06-22 20:16:26,854.854 INFO    ] ================================================
[2026-06-22 20:16:27,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:16:27
[2026-06-22 20:16:28,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:16:28,517.517 INFO    ] Initializing speech engine...
[2026-06-22 20:16:28,528.528 INFO    ] 2026-06-22 20:16:28
[2026-06-22 20:16:28,805.805 INFO    ] 2026-06-22 20:16:28
[2026-06-22 20:16:28,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:16:29,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:16:29,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:16:29,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:16:29,354.354 INFO    ] time= 22/06/2026 20:16:29
[2026-06-22 20:16:29,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:16:29,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:16:29,506.506 INFO    ] No existing commands found in stream
[2026-06-22 20:16:34,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:16:34,528.528 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-22 20:16:36,948.948 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:16:36,950.950 INFO    ] Checking for system updates...
[2026-06-22 20:16:36,972.972 INFO    ] 200
[2026-06-22 20:16:36,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:16:37,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:16:37,008.008 INFO    ] No update needed
[2026-06-22 20:16:37,010.010 INFO    ] Checking for camera pi updates...
[2026-06-22 20:16:37,044.044 INFO    ] 200
[2026-06-22 20:16:37,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:16:37,091.091 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:16:37,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:16:37,176.176 INFO    ] No camera update needed
[2026-06-22 20:16:37,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:16:37,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:16:37,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:16:37,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:16:39,232.232 INFO    ] ================================================
[2026-06-22 20:16:39,248.248 INFO    ] Launching Daemon at Mon Jun 22 20:16:39 IST 2026
[2026-06-22 20:16:39,260.260 INFO    ] ================================================
[2026-06-22 20:16:39,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:16:39
[2026-06-22 20:16:40,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:16:40,768.768 INFO    ] Initializing speech engine...
[2026-06-22 20:16:40,776.776 INFO    ] 2026-06-22 20:16:40
[2026-06-22 20:16:41,050.050 INFO    ] 2026-06-22 20:16:41
[2026-06-22 20:16:41,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:16:41,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:16:41,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:16:41,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:16:41,568.568 INFO    ] time= 22/06/2026 20:16:41
[2026-06-22 20:16:41,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:16:41,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:16:41,727.727 INFO    ] No existing commands found in stream
[2026-06-22 20:16:46,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:16:46,747.747 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-22 20:16:49,864.864 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:16:49,867.867 INFO    ] Checking for system updates...
[2026-06-22 20:16:49,911.911 INFO    ] 200
[2026-06-22 20:16:49,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:16:49,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:16:49,979.979 INFO    ] No update needed
[2026-06-22 20:16:49,981.981 INFO    ] Checking for camera pi updates...
[2026-06-22 20:16:50,020.020 INFO    ] 200
[2026-06-22 20:16:50,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:16:50,068.068 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:16:50,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:16:50,178.178 INFO    ] No camera update needed
[2026-06-22 20:16:50,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:16:50,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:16:50,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:16:50,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:16:52,235.235 INFO    ] ================================================
[2026-06-22 20:16:52,250.250 INFO    ] Launching Daemon at Mon Jun 22 20:16:52 IST 2026
[2026-06-22 20:16:52,262.262 INFO    ] ================================================
[2026-06-22 20:16:52,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:16:52
[2026-06-22 20:16:53,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:16:53,816.816 INFO    ] Initializing speech engine...
[2026-06-22 20:16:53,828.828 INFO    ] 2026-06-22 20:16:53
[2026-06-22 20:16:54,098.098 INFO    ] 2026-06-22 20:16:54
[2026-06-22 20:16:54,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:16:54,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:16:54,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:16:54,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:16:54,646.646 INFO    ] time= 22/06/2026 20:16:54
[2026-06-22 20:16:54,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:16:54,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:16:54,804.804 INFO    ] No existing commands found in stream
[2026-06-22 20:16:59,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:16:59,836.836 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-22 20:17:07,049.049 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:17:07,052.052 INFO    ] Checking for system updates...
[2026-06-22 20:17:07,089.089 INFO    ] 200
[2026-06-22 20:17:07,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:17:07,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:17:07,152.152 INFO    ] No update needed
[2026-06-22 20:17:07,155.155 INFO    ] Checking for camera pi updates...
[2026-06-22 20:17:07,191.191 INFO    ] 200
[2026-06-22 20:17:07,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:17:07,234.234 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:17:07,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:17:07,318.318 INFO    ] No camera update needed
[2026-06-22 20:17:07,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:17:07,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:17:07,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:17:07,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:17:09,373.373 INFO    ] ================================================
[2026-06-22 20:17:09,389.389 INFO    ] Launching Daemon at Mon Jun 22 20:17:09 IST 2026
[2026-06-22 20:17:09,401.401 INFO    ] ================================================
[2026-06-22 20:17:09,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:17:09
[2026-06-22 20:17:10,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:17:10,789.789 INFO    ] Initializing speech engine...
[2026-06-22 20:17:10,805.805 INFO    ] 2026-06-22 20:17:10
[2026-06-22 20:17:11,060.060 INFO    ] 2026-06-22 20:17:11
[2026-06-22 20:17:11,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:17:11,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:17:11,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:17:11,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:17:11,433.433 INFO    ] time= 22/06/2026 20:17:11
[2026-06-22 20:17:11,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:17:11,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:17:11,512.512 INFO    ] No existing commands found in stream
[2026-06-22 20:17:16,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:17:16,550.550 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-22 20:17:19,259.259 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:17:19,262.262 INFO    ] Checking for system updates...
[2026-06-22 20:17:19,302.302 INFO    ] 200
[2026-06-22 20:17:19,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:17:19,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:17:19,364.364 INFO    ] No update needed
[2026-06-22 20:17:19,366.366 INFO    ] Checking for camera pi updates...
[2026-06-22 20:17:19,405.405 INFO    ] 200
[2026-06-22 20:17:19,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:17:19,451.451 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:17:19,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:17:19,555.555 INFO    ] No camera update needed
[2026-06-22 20:17:19,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:17:19,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:17:19,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:17:19,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:17:21,613.613 INFO    ] ================================================
[2026-06-22 20:17:21,629.629 INFO    ] Launching Daemon at Mon Jun 22 20:17:21 IST 2026
[2026-06-22 20:17:21,640.640 INFO    ] ================================================
[2026-06-22 20:17:22,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:17:22
[2026-06-22 20:17:22,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:17:22,963.963 INFO    ] Initializing speech engine...
[2026-06-22 20:17:22,989.989 INFO    ] 2026-06-22 20:17:22
[2026-06-22 20:17:23,261.261 INFO    ] 2026-06-22 20:17:23
[2026-06-22 20:17:23,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:17:23,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:17:23,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:17:23,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:17:23,771.771 INFO    ] time= 22/06/2026 20:17:23
[2026-06-22 20:17:23,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:17:23,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:17:23,992.992 INFO    ] No existing commands found in stream
[2026-06-22 20:17:29,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:17:29,023.023 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-22 20:17:36,522.522 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:17:36,524.524 INFO    ] Checking for system updates...
[2026-06-22 20:17:36,560.560 INFO    ] 200
[2026-06-22 20:17:36,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:17:36,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:17:36,621.621 INFO    ] No update needed
[2026-06-22 20:17:36,624.624 INFO    ] Checking for camera pi updates...
[2026-06-22 20:17:36,664.664 INFO    ] 200
[2026-06-22 20:17:36,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:17:36,714.714 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:17:36,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:17:36,818.818 INFO    ] No camera update needed
[2026-06-22 20:17:36,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:17:36,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:17:36,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:17:36,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:17:38,880.880 INFO    ] ================================================
[2026-06-22 20:17:38,896.896 INFO    ] Launching Daemon at Mon Jun 22 20:17:38 IST 2026
[2026-06-22 20:17:38,907.907 INFO    ] ================================================
[2026-06-22 20:17:39,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:17:39
[2026-06-22 20:17:40,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:17:40,461.461 INFO    ] Initializing speech engine...
[2026-06-22 20:17:40,474.474 INFO    ] 2026-06-22 20:17:40
[2026-06-22 20:17:40,765.765 INFO    ] 2026-06-22 20:17:40
[2026-06-22 20:17:40,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:17:41,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:17:41,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:17:41,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:17:41,298.298 INFO    ] time= 22/06/2026 20:17:41
[2026-06-22 20:17:41,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:17:41,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:17:41,460.460 INFO    ] No existing commands found in stream
[2026-06-22 20:17:46,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:17:46,498.498 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-22 20:17:47,409.409 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:17:47,413.413 INFO    ] Checking for system updates...
[2026-06-22 20:17:47,455.455 INFO    ] 200
[2026-06-22 20:17:47,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:17:47,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:17:47,524.524 INFO    ] No update needed
[2026-06-22 20:17:47,527.527 INFO    ] Checking for camera pi updates...
[2026-06-22 20:17:47,548.548 INFO    ] 200
[2026-06-22 20:17:47,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:17:47,574.574 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:17:47,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:17:47,654.654 INFO    ] No camera update needed
[2026-06-22 20:17:47,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:17:47,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:17:47,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:17:47,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:17:49,715.715 INFO    ] ================================================
[2026-06-22 20:17:49,731.731 INFO    ] Launching Daemon at Mon Jun 22 20:17:49 IST 2026
[2026-06-22 20:17:49,743.743 INFO    ] ================================================
[2026-06-22 20:17:50,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:17:50
[2026-06-22 20:17:51,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:17:51,394.394 INFO    ] Initializing speech engine...
[2026-06-22 20:17:51,408.408 INFO    ] 2026-06-22 20:17:51
[2026-06-22 20:17:51,693.693 INFO    ] 2026-06-22 20:17:51
[2026-06-22 20:17:51,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:17:51,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:17:51,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:17:52,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:17:52,246.246 INFO    ] time= 22/06/2026 20:17:52
[2026-06-22 20:17:52,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:17:52,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:17:52,404.404 INFO    ] No existing commands found in stream
[2026-06-22 20:17:57,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:17:57,432.432 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-22 20:18:00,529.529 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:18:00,531.531 INFO    ] Checking for system updates...
[2026-06-22 20:18:00,553.553 INFO    ] 200
[2026-06-22 20:18:00,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:18:00,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:18:00,586.586 INFO    ] No update needed
[2026-06-22 20:18:00,588.588 INFO    ] Checking for camera pi updates...
[2026-06-22 20:18:00,609.609 INFO    ] 200
[2026-06-22 20:18:00,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:18:00,636.636 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:18:00,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:18:00,738.738 INFO    ] No camera update needed
[2026-06-22 20:18:00,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:18:00,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:18:00,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:18:00,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:18:02,799.799 INFO    ] ================================================
[2026-06-22 20:18:02,819.819 INFO    ] Launching Daemon at Mon Jun 22 20:18:02 IST 2026
[2026-06-22 20:18:02,833.833 INFO    ] ================================================
[2026-06-22 20:18:03,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:18:03
[2026-06-22 20:18:04,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:18:04,523.523 INFO    ] Initializing speech engine...
[2026-06-22 20:18:04,530.530 INFO    ] 2026-06-22 20:18:04
[2026-06-22 20:18:04,798.798 INFO    ] 2026-06-22 20:18:04
[2026-06-22 20:18:04,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:18:08,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:18:08,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:18:09,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:18:09,265.265 INFO    ] time= 22/06/2026 20:18:09
[2026-06-22 20:18:09,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:18:09,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:18:09,357.357 INFO    ] No existing commands found in stream
[2026-06-22 20:18:14,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:18:14,369.369 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-22 20:18:15,322.322 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:18:15,325.325 INFO    ] Checking for system updates...
[2026-06-22 20:18:15,361.361 INFO    ] 200
[2026-06-22 20:18:15,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:18:15,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:18:15,420.420 INFO    ] No update needed
[2026-06-22 20:18:15,422.422 INFO    ] Checking for camera pi updates...
[2026-06-22 20:18:15,456.456 INFO    ] 200
[2026-06-22 20:18:15,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:18:15,499.499 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:18:15,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:18:15,671.671 INFO    ] No camera update needed
[2026-06-22 20:18:15,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:18:15,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:18:15,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:18:15,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:18:17,722.722 INFO    ] ================================================
[2026-06-22 20:18:17,738.738 INFO    ] Launching Daemon at Mon Jun 22 20:18:17 IST 2026
[2026-06-22 20:18:17,749.749 INFO    ] ================================================
[2026-06-22 20:18:18,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:18:18
[2026-06-22 20:18:18,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:18:19,117.117 INFO    ] Initializing speech engine...
[2026-06-22 20:18:19,126.126 INFO    ] 2026-06-22 20:18:19
[2026-06-22 20:18:19,374.374 INFO    ] 2026-06-22 20:18:19
[2026-06-22 20:18:19,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:18:19,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:18:19,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:18:19,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:18:19,939.939 INFO    ] time= 22/06/2026 20:18:19
[2026-06-22 20:18:19,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:18:19,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:18:20,115.115 INFO    ] No existing commands found in stream
[2026-06-22 20:18:25,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:18:25,144.144 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-22 20:18:27,501.501 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:18:27,505.505 INFO    ] Checking for system updates...
[2026-06-22 20:18:27,541.541 INFO    ] 200
[2026-06-22 20:18:27,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:18:27,604.604 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:18:27,608.608 INFO    ] No update needed
[2026-06-22 20:18:27,611.611 INFO    ] Checking for camera pi updates...
[2026-06-22 20:18:27,646.646 INFO    ] 200
[2026-06-22 20:18:27,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:18:27,695.695 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:18:27,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:18:27,814.814 INFO    ] No camera update needed
[2026-06-22 20:18:27,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:18:27,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:18:27,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:18:27,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:18:29,872.872 INFO    ] ================================================
[2026-06-22 20:18:29,888.888 INFO    ] Launching Daemon at Mon Jun 22 20:18:29 IST 2026
[2026-06-22 20:18:29,898.898 INFO    ] ================================================
[2026-06-22 20:18:30,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:18:30
[2026-06-22 20:18:31,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:18:31,353.353 INFO    ] Initializing speech engine...
[2026-06-22 20:18:31,363.363 INFO    ] 2026-06-22 20:18:31
[2026-06-22 20:18:31,614.614 INFO    ] 2026-06-22 20:18:31
[2026-06-22 20:18:31,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:18:31,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:18:31,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:18:32,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:18:32,212.212 INFO    ] time= 22/06/2026 20:18:32
[2026-06-22 20:18:32,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:18:32,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:18:32,409.409 INFO    ] No existing commands found in stream
[2026-06-22 20:18:37,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:18:37,438.438 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-22 20:18:41,686.686 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:18:41,689.689 INFO    ] Checking for system updates...
[2026-06-22 20:18:41,726.726 INFO    ] 200
[2026-06-22 20:18:41,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:18:41,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:18:41,787.787 INFO    ] No update needed
[2026-06-22 20:18:41,790.790 INFO    ] Checking for camera pi updates...
[2026-06-22 20:18:41,825.825 INFO    ] 200
[2026-06-22 20:18:41,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:18:41,870.870 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:18:41,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:18:41,963.963 INFO    ] No camera update needed
[2026-06-22 20:18:41,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:18:41,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:18:41,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:18:41,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:18:44,024.024 INFO    ] ================================================
[2026-06-22 20:18:44,039.039 INFO    ] Launching Daemon at Mon Jun 22 20:18:44 IST 2026
[2026-06-22 20:18:44,049.049 INFO    ] ================================================
[2026-06-22 20:18:44,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:18:44
[2026-06-22 20:18:45,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:18:45,555.555 INFO    ] Initializing speech engine...
[2026-06-22 20:18:45,568.568 INFO    ] 2026-06-22 20:18:45
[2026-06-22 20:18:45,851.851 INFO    ] 2026-06-22 20:18:45
[2026-06-22 20:18:45,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:18:46,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:18:46,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:18:46,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:18:46,353.353 INFO    ] time= 22/06/2026 20:18:46
[2026-06-22 20:18:46,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:18:46,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:18:46,560.560 INFO    ] No existing commands found in stream
[2026-06-22 20:18:51,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:18:51,578.578 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-22 20:18:55,489.489 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:18:55,490.490 INFO    ] Checking for system updates...
[2026-06-22 20:18:55,511.511 INFO    ] 200
[2026-06-22 20:18:55,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:18:55,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:18:55,560.560 INFO    ] No update needed
[2026-06-22 20:18:55,563.563 INFO    ] Checking for camera pi updates...
[2026-06-22 20:18:55,598.598 INFO    ] 200
[2026-06-22 20:18:55,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:18:55,648.648 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:18:55,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:18:55,722.722 INFO    ] No camera update needed
[2026-06-22 20:18:55,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:18:55,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:18:55,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:18:55,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:18:57,780.780 INFO    ] ================================================
[2026-06-22 20:18:57,795.795 INFO    ] Launching Daemon at Mon Jun 22 20:18:57 IST 2026
[2026-06-22 20:18:57,805.805 INFO    ] ================================================
[2026-06-22 20:18:58,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:18:58
[2026-06-22 20:18:58,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:18:59,245.245 INFO    ] Initializing speech engine...
[2026-06-22 20:18:59,253.253 INFO    ] 2026-06-22 20:18:59
[2026-06-22 20:18:59,505.505 INFO    ] 2026-06-22 20:18:59
[2026-06-22 20:18:59,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:18:59,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:18:59,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:18:59,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:18:59,883.883 INFO    ] time= 22/06/2026 20:18:59
[2026-06-22 20:18:59,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:18:59,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:19:00,071.071 INFO    ] No existing commands found in stream
[2026-06-22 20:19:05,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:19:05,098.098 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-22 20:19:06,488.488 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:19:06,490.490 INFO    ] Checking for system updates...
[2026-06-22 20:19:06,527.527 INFO    ] 200
[2026-06-22 20:19:06,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:19:06,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:19:06,586.586 INFO    ] No update needed
[2026-06-22 20:19:06,589.589 INFO    ] Checking for camera pi updates...
[2026-06-22 20:19:06,623.623 INFO    ] 200
[2026-06-22 20:19:06,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:19:06,672.672 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:19:06,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:19:06,727.727 INFO    ] No camera update needed
[2026-06-22 20:19:06,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:19:06,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:19:06,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:19:06,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:19:08,785.785 INFO    ] ================================================
[2026-06-22 20:19:08,800.800 INFO    ] Launching Daemon at Mon Jun 22 20:19:08 IST 2026
[2026-06-22 20:19:08,811.811 INFO    ] ================================================
[2026-06-22 20:19:09,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:19:09
[2026-06-22 20:19:10,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:19:10,445.445 INFO    ] Initializing speech engine...
[2026-06-22 20:19:10,459.459 INFO    ] 2026-06-22 20:19:10
[2026-06-22 20:19:10,740.740 INFO    ] 2026-06-22 20:19:10
[2026-06-22 20:19:10,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:19:12,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:19:12,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:19:12,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:19:12,715.715 INFO    ] time= 22/06/2026 20:19:12
[2026-06-22 20:19:12,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:19:12,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:19:12,825.825 INFO    ] No existing commands found in stream
[2026-06-22 20:19:17,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:19:17,841.841 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-22 20:19:19,272.272 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:19:19,274.274 INFO    ] Checking for system updates...
[2026-06-22 20:19:19,295.295 INFO    ] 200
[2026-06-22 20:19:19,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:19:19,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:19:19,329.329 INFO    ] No update needed
[2026-06-22 20:19:19,330.330 INFO    ] Checking for camera pi updates...
[2026-06-22 20:19:19,358.358 INFO    ] 200
[2026-06-22 20:19:19,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:19:19,402.402 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:19:19,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:19:19,493.493 INFO    ] No camera update needed
[2026-06-22 20:19:19,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:19:19,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:19:19,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:19:19,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:19:21,553.553 INFO    ] ================================================
[2026-06-22 20:19:21,569.569 INFO    ] Launching Daemon at Mon Jun 22 20:19:21 IST 2026
[2026-06-22 20:19:21,579.579 INFO    ] ================================================
[2026-06-22 20:19:22,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:19:22
[2026-06-22 20:19:22,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:19:23,003.003 INFO    ] Initializing speech engine...
[2026-06-22 20:19:23,011.011 INFO    ] 2026-06-22 20:19:23
[2026-06-22 20:19:23,263.263 INFO    ] 2026-06-22 20:19:23
[2026-06-22 20:19:23,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:19:23,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:19:23,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:19:23,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:19:23,885.885 INFO    ] time= 22/06/2026 20:19:23
[2026-06-22 20:19:23,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:19:23,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:19:24,093.093 INFO    ] No existing commands found in stream
[2026-06-22 20:19:29,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:19:29,106.106 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-22 20:19:31,159.159 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:19:31,161.161 INFO    ] Checking for system updates...
[2026-06-22 20:19:31,197.197 INFO    ] 200
[2026-06-22 20:19:31,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:19:31,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:19:31,255.255 INFO    ] No update needed
[2026-06-22 20:19:31,257.257 INFO    ] Checking for camera pi updates...
[2026-06-22 20:19:31,291.291 INFO    ] 200
[2026-06-22 20:19:31,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:19:31,334.334 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:19:31,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:19:31,406.406 INFO    ] No camera update needed
[2026-06-22 20:19:31,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:19:31,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:19:31,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:19:31,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:19:33,465.465 INFO    ] ================================================
[2026-06-22 20:19:33,480.480 INFO    ] Launching Daemon at Mon Jun 22 20:19:33 IST 2026
[2026-06-22 20:19:33,491.491 INFO    ] ================================================
[2026-06-22 20:19:34,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:19:34
[2026-06-22 20:19:34,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:19:34,951.951 INFO    ] Initializing speech engine...
[2026-06-22 20:19:34,960.960 INFO    ] 2026-06-22 20:19:34
[2026-06-22 20:19:35,225.225 INFO    ] 2026-06-22 20:19:35
[2026-06-22 20:19:35,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:19:35,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:19:35,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:19:35,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:19:35,692.692 INFO    ] time= 22/06/2026 20:19:35
[2026-06-22 20:19:35,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:19:35,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:19:35,835.835 INFO    ] No existing commands found in stream
[2026-06-22 20:19:40,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:19:40,858.858 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-22 20:19:43,624.624 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:19:43,627.627 INFO    ] Checking for system updates...
[2026-06-22 20:19:43,664.664 INFO    ] 200
[2026-06-22 20:19:43,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:19:43,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:19:43,725.725 INFO    ] No update needed
[2026-06-22 20:19:43,728.728 INFO    ] Checking for camera pi updates...
[2026-06-22 20:19:43,763.763 INFO    ] 200
[2026-06-22 20:19:43,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:19:43,808.808 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:19:43,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:19:43,895.895 INFO    ] No camera update needed
[2026-06-22 20:19:43,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:19:43,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:19:43,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:19:43,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:19:45,954.954 INFO    ] ================================================
[2026-06-22 20:19:45,969.969 INFO    ] Launching Daemon at Mon Jun 22 20:19:45 IST 2026
[2026-06-22 20:19:45,980.980 INFO    ] ================================================
[2026-06-22 20:19:46,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:19:46
[2026-06-22 20:19:47,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:19:47,568.568 INFO    ] Initializing speech engine...
[2026-06-22 20:19:47,576.576 INFO    ] 2026-06-22 20:19:47
[2026-06-22 20:19:47,844.844 INFO    ] 2026-06-22 20:19:47
[2026-06-22 20:19:47,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:19:48,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:19:48,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:19:48,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:19:48,346.346 INFO    ] time= 22/06/2026 20:19:48
[2026-06-22 20:19:48,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:19:48,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:19:48,558.558 INFO    ] No existing commands found in stream
[2026-06-22 20:19:53,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:19:53,584.584 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-22 20:19:55,718.718 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:19:55,720.720 INFO    ] Checking for system updates...
[2026-06-22 20:19:55,741.741 INFO    ] 200
[2026-06-22 20:19:55,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:19:55,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:19:55,784.784 INFO    ] No update needed
[2026-06-22 20:19:55,787.787 INFO    ] Checking for camera pi updates...
[2026-06-22 20:19:55,821.821 INFO    ] 200
[2026-06-22 20:19:55,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:19:55,866.866 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:19:55,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:19:55,961.961 INFO    ] No camera update needed
[2026-06-22 20:19:55,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:19:55,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:19:55,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:19:55,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:19:58,018.018 INFO    ] ================================================
[2026-06-22 20:19:58,033.033 INFO    ] Launching Daemon at Mon Jun 22 20:19:58 IST 2026
[2026-06-22 20:19:58,044.044 INFO    ] ================================================
[2026-06-22 20:19:58,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:19:58
[2026-06-22 20:19:59,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:19:59,416.416 INFO    ] Initializing speech engine...
[2026-06-22 20:19:59,431.431 INFO    ] 2026-06-22 20:19:59
[2026-06-22 20:19:59,701.701 INFO    ] 2026-06-22 20:19:59
[2026-06-22 20:19:59,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:19:59,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:19:59,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:20:00,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:20:00,116.116 INFO    ] time= 22/06/2026 20:20:00
[2026-06-22 20:20:00,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:20:00,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:20:00,260.260 INFO    ] No existing commands found in stream
[2026-06-22 20:20:05,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:20:05,293.293 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-22 20:20:09,210.210 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:20:09,212.212 INFO    ] Checking for system updates...
[2026-06-22 20:20:09,248.248 INFO    ] 200
[2026-06-22 20:20:09,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:20:09,305.305 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:20:09,307.307 INFO    ] No update needed
[2026-06-22 20:20:09,310.310 INFO    ] Checking for camera pi updates...
[2026-06-22 20:20:09,344.344 INFO    ] 200
[2026-06-22 20:20:09,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:20:09,393.393 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:20:09,473.473 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:20:09,476.476 INFO    ] No camera update needed
[2026-06-22 20:20:09,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:20:09,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:20:09,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:20:09,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:20:11,532.532 INFO    ] ================================================
[2026-06-22 20:20:11,547.547 INFO    ] Launching Daemon at Mon Jun 22 20:20:11 IST 2026
[2026-06-22 20:20:11,558.558 INFO    ] ================================================
[2026-06-22 20:20:12,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:20:12
[2026-06-22 20:20:12,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:20:13,029.029 INFO    ] Initializing speech engine...
[2026-06-22 20:20:13,042.042 INFO    ] 2026-06-22 20:20:13
[2026-06-22 20:20:13,316.316 INFO    ] 2026-06-22 20:20:13
[2026-06-22 20:20:13,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:20:14,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:20:14,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:20:15,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:20:15,177.177 INFO    ] time= 22/06/2026 20:20:15
[2026-06-22 20:20:15,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:20:15,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:20:15,291.291 INFO    ] No existing commands found in stream
[2026-06-22 20:20:20,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:20:20,326.326 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-22 20:20:22,839.839 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:20:22,842.842 INFO    ] Checking for system updates...
[2026-06-22 20:20:22,878.878 INFO    ] 200
[2026-06-22 20:20:22,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:20:22,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:20:22,936.936 INFO    ] No update needed
[2026-06-22 20:20:22,939.939 INFO    ] Checking for camera pi updates...
[2026-06-22 20:20:22,988.988 INFO    ] 200
[2026-06-22 20:20:22,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:20:23,036.036 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:20:23,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:20:23,118.118 INFO    ] No camera update needed
[2026-06-22 20:20:23,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:20:23,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:20:23,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:20:23,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:20:25,174.174 INFO    ] ================================================
[2026-06-22 20:20:25,189.189 INFO    ] Launching Daemon at Mon Jun 22 20:20:25 IST 2026
[2026-06-22 20:20:25,200.200 INFO    ] ================================================
[2026-06-22 20:20:25,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:20:25
[2026-06-22 20:20:26,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:20:26,612.612 INFO    ] Initializing speech engine...
[2026-06-22 20:20:26,626.626 INFO    ] 2026-06-22 20:20:26
[2026-06-22 20:20:26,902.902 INFO    ] 2026-06-22 20:20:26
[2026-06-22 20:20:26,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:20:27,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:20:27,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:20:27,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:20:27,394.394 INFO    ] time= 22/06/2026 20:20:27
[2026-06-22 20:20:27,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:20:27,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:20:27,492.492 INFO    ] No existing commands found in stream
[2026-06-22 20:20:32,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:20:32,507.507 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-22 20:20:35,884.884 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:20:35,887.887 INFO    ] Checking for system updates...
[2026-06-22 20:20:35,924.924 INFO    ] 200
[2026-06-22 20:20:35,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:20:35,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:20:35,981.981 INFO    ] No update needed
[2026-06-22 20:20:35,983.983 INFO    ] Checking for camera pi updates...
[2026-06-22 20:20:36,017.017 INFO    ] 200
[2026-06-22 20:20:36,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:20:36,059.059 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:20:36,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:20:36,141.141 INFO    ] No camera update needed
[2026-06-22 20:20:36,143.143 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:20:36,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:20:36,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:20:36,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:20:38,198.198 INFO    ] ================================================
[2026-06-22 20:20:38,213.213 INFO    ] Launching Daemon at Mon Jun 22 20:20:38 IST 2026
[2026-06-22 20:20:38,223.223 INFO    ] ================================================
[2026-06-22 20:20:38,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:20:38
[2026-06-22 20:20:39,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:20:39,665.665 INFO    ] Initializing speech engine...
[2026-06-22 20:20:39,686.686 INFO    ] 2026-06-22 20:20:39
[2026-06-22 20:20:39,950.950 INFO    ] 2026-06-22 20:20:39
[2026-06-22 20:20:39,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:20:40,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:20:40,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:20:40,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:20:40,324.324 INFO    ] time= 22/06/2026 20:20:40
[2026-06-22 20:20:40,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:20:40,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:20:40,520.520 INFO    ] No existing commands found in stream
[2026-06-22 20:20:45,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:20:45,535.535 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-22 20:20:49,205.205 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:20:49,208.208 INFO    ] Checking for system updates...
[2026-06-22 20:20:49,244.244 INFO    ] 200
[2026-06-22 20:20:49,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:20:49,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:20:49,303.303 INFO    ] No update needed
[2026-06-22 20:20:49,306.306 INFO    ] Checking for camera pi updates...
[2026-06-22 20:20:49,339.339 INFO    ] 200
[2026-06-22 20:20:49,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:20:49,383.383 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:20:49,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:20:49,479.479 INFO    ] No camera update needed
[2026-06-22 20:20:49,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:20:49,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:20:49,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:20:49,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:20:51,534.534 INFO    ] ================================================
[2026-06-22 20:20:51,550.550 INFO    ] Launching Daemon at Mon Jun 22 20:20:51 IST 2026
[2026-06-22 20:20:51,560.560 INFO    ] ================================================
[2026-06-22 20:20:52,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:20:52
[2026-06-22 20:20:52,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:20:52,976.976 INFO    ] Initializing speech engine...
[2026-06-22 20:20:52,995.995 INFO    ] 2026-06-22 20:20:52
[2026-06-22 20:20:53,247.247 INFO    ] 2026-06-22 20:20:53
[2026-06-22 20:20:53,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:20:53,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:20:53,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:20:53,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:20:53,764.764 INFO    ] time= 22/06/2026 20:20:53
[2026-06-22 20:20:53,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:20:53,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:20:53,977.977 INFO    ] No existing commands found in stream
[2026-06-22 20:20:58,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:20:58,995.995 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-22 20:21:02,935.935 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:21:02,938.938 INFO    ] Checking for system updates...
[2026-06-22 20:21:02,980.980 INFO    ] 200
[2026-06-22 20:21:02,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:21:03,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:21:03,050.050 INFO    ] No update needed
[2026-06-22 20:21:03,053.053 INFO    ] Checking for camera pi updates...
[2026-06-22 20:21:03,092.092 INFO    ] 200
[2026-06-22 20:21:03,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:21:03,151.151 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:21:03,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:21:03,246.246 INFO    ] No camera update needed
[2026-06-22 20:21:03,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:21:03,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:21:03,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:21:03,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:21:05,310.310 INFO    ] ================================================
[2026-06-22 20:21:05,326.326 INFO    ] Launching Daemon at Mon Jun 22 20:21:05 IST 2026
[2026-06-22 20:21:05,337.337 INFO    ] ================================================
[2026-06-22 20:21:05,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:21:05
[2026-06-22 20:21:06,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:21:06,773.773 INFO    ] Initializing speech engine...
[2026-06-22 20:21:06,788.788 INFO    ] 2026-06-22 20:21:06
[2026-06-22 20:21:07,099.099 INFO    ] 2026-06-22 20:21:07
[2026-06-22 20:21:07,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:21:07,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:21:07,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:21:07,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:21:07,647.647 INFO    ] time= 22/06/2026 20:21:07
[2026-06-22 20:21:07,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:21:07,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:21:07,826.826 INFO    ] No existing commands found in stream
[2026-06-22 20:21:12,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:21:12,856.856 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-22 20:21:17,690.690 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:21:17,693.693 INFO    ] Checking for system updates...
[2026-06-22 20:21:17,730.730 INFO    ] 200
[2026-06-22 20:21:17,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:21:17,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:21:17,795.795 INFO    ] No update needed
[2026-06-22 20:21:17,798.798 INFO    ] Checking for camera pi updates...
[2026-06-22 20:21:17,832.832 INFO    ] 200
[2026-06-22 20:21:17,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:21:17,877.877 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:21:17,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:21:17,970.970 INFO    ] No camera update needed
[2026-06-22 20:21:17,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:21:17,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:21:17,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:21:17,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:21:20,026.026 INFO    ] ================================================
[2026-06-22 20:21:20,041.041 INFO    ] Launching Daemon at Mon Jun 22 20:21:20 IST 2026
[2026-06-22 20:21:20,052.052 INFO    ] ================================================
[2026-06-22 20:21:20,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:21:20
[2026-06-22 20:21:21,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:21:21,501.501 INFO    ] Initializing speech engine...
[2026-06-22 20:21:21,511.511 INFO    ] 2026-06-22 20:21:21
[2026-06-22 20:21:21,812.812 INFO    ] 2026-06-22 20:21:21
[2026-06-22 20:21:21,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:21:22,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:21:22,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:21:22,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:21:22,331.331 INFO    ] time= 22/06/2026 20:21:22
[2026-06-22 20:21:22,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:21:22,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:21:22,529.529 INFO    ] No existing commands found in stream
[2026-06-22 20:21:27,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:21:27,543.543 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-22 20:21:28,905.905 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:21:28,908.908 INFO    ] Checking for system updates...
[2026-06-22 20:21:28,944.944 INFO    ] 200
[2026-06-22 20:21:28,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:21:28,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:21:29,002.002 INFO    ] No update needed
[2026-06-22 20:21:29,004.004 INFO    ] Checking for camera pi updates...
[2026-06-22 20:21:29,042.042 INFO    ] 200
[2026-06-22 20:21:29,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:21:29,091.091 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:21:29,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:21:29,172.172 INFO    ] No camera update needed
[2026-06-22 20:21:29,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:21:29,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:21:29,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:21:29,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:21:31,232.232 INFO    ] ================================================
[2026-06-22 20:21:31,247.247 INFO    ] Launching Daemon at Mon Jun 22 20:21:31 IST 2026
[2026-06-22 20:21:31,258.258 INFO    ] ================================================
[2026-06-22 20:21:31,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:21:31
[2026-06-22 20:21:32,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:21:33,002.002 INFO    ] Initializing speech engine...
[2026-06-22 20:21:33,010.010 INFO    ] 2026-06-22 20:21:33
[2026-06-22 20:21:33,317.317 INFO    ] 2026-06-22 20:21:33
[2026-06-22 20:21:33,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:21:33,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:21:33,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:21:33,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:21:33,862.862 INFO    ] time= 22/06/2026 20:21:33
[2026-06-22 20:21:33,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:21:33,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:21:34,027.027 INFO    ] No existing commands found in stream
[2026-06-22 20:21:39,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:21:39,057.057 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-22 20:21:46,407.407 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:21:46,410.410 INFO    ] Checking for system updates...
[2026-06-22 20:21:46,452.452 INFO    ] 200
[2026-06-22 20:21:46,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:21:46,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:21:46,513.513 INFO    ] No update needed
[2026-06-22 20:21:46,516.516 INFO    ] Checking for camera pi updates...
[2026-06-22 20:21:46,555.555 INFO    ] 200
[2026-06-22 20:21:46,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:21:46,600.600 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:21:46,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:21:46,692.692 INFO    ] No camera update needed
[2026-06-22 20:21:46,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:21:46,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:21:46,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:21:46,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:21:48,752.752 INFO    ] ================================================
[2026-06-22 20:21:48,767.767 INFO    ] Launching Daemon at Mon Jun 22 20:21:48 IST 2026
[2026-06-22 20:21:48,778.778 INFO    ] ================================================
[2026-06-22 20:21:49,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:21:49
[2026-06-22 20:21:49,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:21:50,247.247 INFO    ] Initializing speech engine...
[2026-06-22 20:21:50,253.253 INFO    ] 2026-06-22 20:21:50
[2026-06-22 20:21:50,514.514 INFO    ] 2026-06-22 20:21:50
[2026-06-22 20:21:50,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:21:50,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:21:50,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:21:50,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:21:50,987.987 INFO    ] time= 22/06/2026 20:21:50
[2026-06-22 20:21:51,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:21:51,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:21:51,207.207 INFO    ] No existing commands found in stream
[2026-06-22 20:21:56,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:21:56,227.227 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-22 20:21:57,480.480 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:21:57,483.483 INFO    ] Checking for system updates...
[2026-06-22 20:21:57,521.521 INFO    ] 200
[2026-06-22 20:21:57,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:21:57,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:21:57,587.587 INFO    ] No update needed
[2026-06-22 20:21:57,590.590 INFO    ] Checking for camera pi updates...
[2026-06-22 20:21:57,625.625 INFO    ] 200
[2026-06-22 20:21:57,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:21:57,674.674 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:21:57,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:21:57,760.760 INFO    ] No camera update needed
[2026-06-22 20:21:57,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:21:57,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:21:57,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:21:57,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:21:59,816.816 INFO    ] ================================================
[2026-06-22 20:21:59,832.832 INFO    ] Launching Daemon at Mon Jun 22 20:21:59 IST 2026
[2026-06-22 20:21:59,843.843 INFO    ] ================================================
[2026-06-22 20:22:00,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:22:00
[2026-06-22 20:22:00,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:22:01,257.257 INFO    ] Initializing speech engine...
[2026-06-22 20:22:01,270.270 INFO    ] 2026-06-22 20:22:01
[2026-06-22 20:22:01,553.553 INFO    ] 2026-06-22 20:22:01
[2026-06-22 20:22:01,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:22:01,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:22:01,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:22:01,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:22:02,000.000 INFO    ] time= 22/06/2026 20:22:01
[2026-06-22 20:22:02,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:22:02,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:22:02,135.135 INFO    ] No existing commands found in stream
[2026-06-22 20:22:07,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:22:07,158.158 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-22 20:22:10,095.095 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:22:10,098.098 INFO    ] Checking for system updates...
[2026-06-22 20:22:10,134.134 INFO    ] 200
[2026-06-22 20:22:10,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:22:10,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:22:10,201.201 INFO    ] No update needed
[2026-06-22 20:22:10,204.204 INFO    ] Checking for camera pi updates...
[2026-06-22 20:22:10,240.240 INFO    ] 200
[2026-06-22 20:22:10,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:22:10,283.283 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:22:10,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:22:10,357.357 INFO    ] No camera update needed
[2026-06-22 20:22:10,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:22:10,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:22:10,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:22:10,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:22:12,413.413 INFO    ] ================================================
[2026-06-22 20:22:12,429.429 INFO    ] Launching Daemon at Mon Jun 22 20:22:12 IST 2026
[2026-06-22 20:22:12,440.440 INFO    ] ================================================
[2026-06-22 20:22:12,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:22:12
[2026-06-22 20:22:13,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:22:13,809.809 INFO    ] Initializing speech engine...
[2026-06-22 20:22:13,818.818 INFO    ] 2026-06-22 20:22:13
[2026-06-22 20:22:14,081.081 INFO    ] 2026-06-22 20:22:14
[2026-06-22 20:22:14,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:22:17,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:22:17,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:22:18,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:22:18,207.207 INFO    ] time= 22/06/2026 20:22:18
[2026-06-22 20:22:18,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:22:18,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:22:18,284.284 INFO    ] No existing commands found in stream
[2026-06-22 20:22:23,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:22:23,297.297 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-22 20:22:25,094.094 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:22:25,097.097 INFO    ] Checking for system updates...
[2026-06-22 20:22:25,133.133 INFO    ] 200
[2026-06-22 20:22:25,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:22:25,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:22:25,191.191 INFO    ] No update needed
[2026-06-22 20:22:25,194.194 INFO    ] Checking for camera pi updates...
[2026-06-22 20:22:25,228.228 INFO    ] 200
[2026-06-22 20:22:25,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:22:25,271.271 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:22:25,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:22:25,358.358 INFO    ] No camera update needed
[2026-06-22 20:22:25,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:22:25,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:22:25,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:22:25,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:22:27,416.416 INFO    ] ================================================
[2026-06-22 20:22:27,431.431 INFO    ] Launching Daemon at Mon Jun 22 20:22:27 IST 2026
[2026-06-22 20:22:27,442.442 INFO    ] ================================================
[2026-06-22 20:22:28,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:22:28
[2026-06-22 20:22:28,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:22:28,862.862 INFO    ] Initializing speech engine...
[2026-06-22 20:22:28,870.870 INFO    ] 2026-06-22 20:22:28
[2026-06-22 20:22:29,121.121 INFO    ] 2026-06-22 20:22:29
[2026-06-22 20:22:29,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:22:29,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:22:29,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:22:29,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:22:29,583.583 INFO    ] time= 22/06/2026 20:22:29
[2026-06-22 20:22:29,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:22:29,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:22:29,865.865 INFO    ] No existing commands found in stream
[2026-06-22 20:22:34,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:22:34,892.892 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-22 20:22:38,194.194 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:22:38,197.197 INFO    ] Checking for system updates...
[2026-06-22 20:22:38,233.233 INFO    ] 200
[2026-06-22 20:22:38,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:22:38,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:22:38,290.290 INFO    ] No update needed
[2026-06-22 20:22:38,292.292 INFO    ] Checking for camera pi updates...
[2026-06-22 20:22:38,329.329 INFO    ] 200
[2026-06-22 20:22:38,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:22:38,371.371 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:22:38,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:22:38,553.553 INFO    ] No camera update needed
[2026-06-22 20:22:38,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:22:38,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:22:38,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:22:38,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:22:40,610.610 INFO    ] ================================================
[2026-06-22 20:22:40,626.626 INFO    ] Launching Daemon at Mon Jun 22 20:22:40 IST 2026
[2026-06-22 20:22:40,636.636 INFO    ] ================================================
[2026-06-22 20:22:41,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:22:41
[2026-06-22 20:22:41,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:22:42,116.116 INFO    ] Initializing speech engine...
[2026-06-22 20:22:42,123.123 INFO    ] 2026-06-22 20:22:42
[2026-06-22 20:22:42,383.383 INFO    ] 2026-06-22 20:22:42
[2026-06-22 20:22:42,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:22:42,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:22:42,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:22:42,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:22:42,853.853 INFO    ] time= 22/06/2026 20:22:42
[2026-06-22 20:22:42,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:22:42,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:22:43,012.012 INFO    ] No existing commands found in stream
[2026-06-22 20:22:48,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:22:48,040.040 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-22 20:22:52,141.141 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:22:52,144.144 INFO    ] Checking for system updates...
[2026-06-22 20:22:52,205.205 INFO    ] 200
[2026-06-22 20:22:52,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 20:22:52,210.210 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-22 20:22:52,213.213 INFO    ] Checking for camera pi updates...
[2026-06-22 20:22:52,254.254 INFO    ] 200
[2026-06-22 20:22:52,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 20:22:52,260.260 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-22 20:22:52,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:22:52,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:22:52,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:22:52,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:22:54,318.318 INFO    ] ================================================
[2026-06-22 20:22:54,334.334 INFO    ] Launching Daemon at Mon Jun 22 20:22:54 IST 2026
[2026-06-22 20:22:54,345.345 INFO    ] ================================================
[2026-06-22 20:22:54,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:22:54
[2026-06-22 20:22:55,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:22:55,811.811 INFO    ] Initializing speech engine...
[2026-06-22 20:22:55,821.821 INFO    ] 2026-06-22 20:22:55
[2026-06-22 20:22:56,089.089 INFO    ] 2026-06-22 20:22:56
[2026-06-22 20:22:56,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:22:56,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:22:56,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:22:56,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:22:56,479.479 INFO    ] time= 22/06/2026 20:22:56
[2026-06-22 20:22:56,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:22:56,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:22:56,606.606 INFO    ] No existing commands found in stream
[2026-06-22 20:23:01,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:23:01,620.620 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-22 20:23:04,333.333 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:23:04,336.336 INFO    ] Checking for system updates...
[2026-06-22 20:23:04,372.372 INFO    ] 200
[2026-06-22 20:23:04,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:23:04,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:23:04,430.430 INFO    ] No update needed
[2026-06-22 20:23:04,432.432 INFO    ] Checking for camera pi updates...
[2026-06-22 20:23:04,466.466 INFO    ] 200
[2026-06-22 20:23:04,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:23:04,509.509 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:23:04,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:23:04,593.593 INFO    ] No camera update needed
[2026-06-22 20:23:04,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:23:04,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:23:04,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:23:04,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:23:06,650.650 INFO    ] ================================================
[2026-06-22 20:23:06,666.666 INFO    ] Launching Daemon at Mon Jun 22 20:23:06 IST 2026
[2026-06-22 20:23:06,677.677 INFO    ] ================================================
[2026-06-22 20:23:07,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:23:07
[2026-06-22 20:23:07,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:23:08,141.141 INFO    ] Initializing speech engine...
[2026-06-22 20:23:08,148.148 INFO    ] 2026-06-22 20:23:08
[2026-06-22 20:23:08,415.415 INFO    ] 2026-06-22 20:23:08
[2026-06-22 20:23:08,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:23:08,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:23:08,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:23:08,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:23:08,903.903 INFO    ] time= 22/06/2026 20:23:08
[2026-06-22 20:23:08,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:23:08,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:23:09,109.109 INFO    ] No existing commands found in stream
[2026-06-22 20:23:14,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:23:14,131.131 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-22 20:23:15,770.770 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:23:15,773.773 INFO    ] Checking for system updates...
[2026-06-22 20:23:15,809.809 INFO    ] 200
[2026-06-22 20:23:15,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:23:15,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:23:15,889.889 INFO    ] No update needed
[2026-06-22 20:23:15,891.891 INFO    ] Checking for camera pi updates...
[2026-06-22 20:23:15,929.929 INFO    ] 200
[2026-06-22 20:23:15,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:23:15,972.972 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:23:16,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:23:16,050.050 INFO    ] No camera update needed
[2026-06-22 20:23:16,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:23:16,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:23:16,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:23:16,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:23:18,108.108 INFO    ] ================================================
[2026-06-22 20:23:18,123.123 INFO    ] Launching Daemon at Mon Jun 22 20:23:18 IST 2026
[2026-06-22 20:23:18,134.134 INFO    ] ================================================
[2026-06-22 20:23:18,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:23:18
[2026-06-22 20:23:19,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:23:19,794.794 INFO    ] Initializing speech engine...
[2026-06-22 20:23:19,808.808 INFO    ] 2026-06-22 20:23:19
[2026-06-22 20:23:20,103.103 INFO    ] 2026-06-22 20:23:20
[2026-06-22 20:23:20,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:23:21,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:23:21,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:23:22,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:23:22,027.027 INFO    ] time= 22/06/2026 20:23:22
[2026-06-22 20:23:22,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:23:22,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:23:22,129.129 INFO    ] No existing commands found in stream
[2026-06-22 20:23:27,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:23:27,144.144 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-22 20:23:28,652.652 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:23:28,653.653 INFO    ] Checking for system updates...
[2026-06-22 20:23:28,675.675 INFO    ] 200
[2026-06-22 20:23:28,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:23:28,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:23:28,712.712 INFO    ] No update needed
[2026-06-22 20:23:28,713.713 INFO    ] Checking for camera pi updates...
[2026-06-22 20:23:28,733.733 INFO    ] 200
[2026-06-22 20:23:28,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:23:28,762.762 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:23:28,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:23:28,858.858 INFO    ] No camera update needed
[2026-06-22 20:23:28,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:23:28,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:23:28,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:23:28,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:23:30,923.923 INFO    ] ================================================
[2026-06-22 20:23:30,940.940 INFO    ] Launching Daemon at Mon Jun 22 20:23:30 IST 2026
[2026-06-22 20:23:30,951.951 INFO    ] ================================================
[2026-06-22 20:23:31,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:23:31
[2026-06-22 20:23:32,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:23:32,773.773 INFO    ] Initializing speech engine...
[2026-06-22 20:23:32,784.784 INFO    ] 2026-06-22 20:23:32
[2026-06-22 20:23:33,078.078 INFO    ] 2026-06-22 20:23:33
[2026-06-22 20:23:33,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:23:33,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:23:33,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:23:33,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:23:33,661.661 INFO    ] time= 22/06/2026 20:23:33
[2026-06-22 20:23:33,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:23:33,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:23:33,869.869 INFO    ] No existing commands found in stream
[2026-06-22 20:23:38,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:23:38,902.902 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-22 20:23:42,227.227 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:23:42,230.230 INFO    ] Checking for system updates...
[2026-06-22 20:23:42,268.268 INFO    ] 200
[2026-06-22 20:23:42,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:23:42,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:23:42,329.329 INFO    ] No update needed
[2026-06-22 20:23:42,332.332 INFO    ] Checking for camera pi updates...
[2026-06-22 20:23:42,367.367 INFO    ] 200
[2026-06-22 20:23:42,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:23:42,419.419 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:23:42,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:23:42,494.494 INFO    ] No camera update needed
[2026-06-22 20:23:42,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:23:42,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:23:42,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:23:42,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:23:44,549.549 INFO    ] ================================================
[2026-06-22 20:23:44,564.564 INFO    ] Launching Daemon at Mon Jun 22 20:23:44 IST 2026
[2026-06-22 20:23:44,575.575 INFO    ] ================================================
[2026-06-22 20:23:45,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:23:45
[2026-06-22 20:23:45,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:23:46,012.012 INFO    ] Initializing speech engine...
[2026-06-22 20:23:46,025.025 INFO    ] 2026-06-22 20:23:46
[2026-06-22 20:23:46,291.291 INFO    ] 2026-06-22 20:23:46
[2026-06-22 20:23:46,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:23:46,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:23:46,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:23:46,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:23:46,862.862 INFO    ] time= 22/06/2026 20:23:46
[2026-06-22 20:23:46,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:23:46,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:23:47,010.010 INFO    ] No existing commands found in stream
[2026-06-22 20:23:52,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:23:52,035.035 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-22 20:23:55,298.298 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:23:55,301.301 INFO    ] Checking for system updates...
[2026-06-22 20:23:55,338.338 INFO    ] 200
[2026-06-22 20:23:55,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:23:55,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:23:55,408.408 INFO    ] No update needed
[2026-06-22 20:23:55,411.411 INFO    ] Checking for camera pi updates...
[2026-06-22 20:23:55,449.449 INFO    ] 200
[2026-06-22 20:23:55,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:23:55,493.493 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:23:55,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:23:55,580.580 INFO    ] No camera update needed
[2026-06-22 20:23:55,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:23:55,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:23:55,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:23:55,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:23:57,636.636 INFO    ] ================================================
[2026-06-22 20:23:57,652.652 INFO    ] Launching Daemon at Mon Jun 22 20:23:57 IST 2026
[2026-06-22 20:23:57,662.662 INFO    ] ================================================
[2026-06-22 20:23:58,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:23:58
[2026-06-22 20:23:58,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:23:59,077.077 INFO    ] Initializing speech engine...
[2026-06-22 20:23:59,085.085 INFO    ] 2026-06-22 20:23:59
[2026-06-22 20:23:59,385.385 INFO    ] 2026-06-22 20:23:59
[2026-06-22 20:23:59,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:23:59,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:23:59,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:23:59,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:23:59,773.773 INFO    ] time= 22/06/2026 20:23:59
[2026-06-22 20:23:59,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:23:59,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:23:59,901.901 INFO    ] No existing commands found in stream
[2026-06-22 20:24:04,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:24:04,916.916 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-22 20:24:08,205.205 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:24:08,208.208 INFO    ] Checking for system updates...
[2026-06-22 20:24:08,250.250 INFO    ] 200
[2026-06-22 20:24:08,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:24:08,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:24:08,313.313 INFO    ] No update needed
[2026-06-22 20:24:08,316.316 INFO    ] Checking for camera pi updates...
[2026-06-22 20:24:08,360.360 INFO    ] 200
[2026-06-22 20:24:08,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:24:08,415.415 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:24:08,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:24:08,508.508 INFO    ] No camera update needed
[2026-06-22 20:24:08,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:24:08,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:24:08,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:24:08,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:24:10,569.569 INFO    ] ================================================
[2026-06-22 20:24:10,586.586 INFO    ] Launching Daemon at Mon Jun 22 20:24:10 IST 2026
[2026-06-22 20:24:10,597.597 INFO    ] ================================================
[2026-06-22 20:24:11,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:24:11
[2026-06-22 20:24:11,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:24:12,053.053 INFO    ] Initializing speech engine...
[2026-06-22 20:24:12,060.060 INFO    ] 2026-06-22 20:24:12
[2026-06-22 20:24:12,365.365 INFO    ] 2026-06-22 20:24:12
[2026-06-22 20:24:12,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:24:12,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:24:12,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:24:12,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:24:12,794.794 INFO    ] time= 22/06/2026 20:24:12
[2026-06-22 20:24:12,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:24:12,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:24:12,927.927 INFO    ] No existing commands found in stream
[2026-06-22 20:24:17,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:24:17,960.960 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-22 20:24:22,249.249 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:24:22,252.252 INFO    ] Checking for system updates...
[2026-06-22 20:24:22,292.292 INFO    ] 200
[2026-06-22 20:24:22,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:24:22,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:24:22,357.357 INFO    ] No update needed
[2026-06-22 20:24:22,359.359 INFO    ] Checking for camera pi updates...
[2026-06-22 20:24:22,394.394 INFO    ] 200
[2026-06-22 20:24:22,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:24:22,445.445 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:24:22,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:24:22,534.534 INFO    ] No camera update needed
[2026-06-22 20:24:22,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:24:22,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:24:22,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:24:22,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:24:24,596.596 INFO    ] ================================================
[2026-06-22 20:24:24,614.614 INFO    ] Launching Daemon at Mon Jun 22 20:24:24 IST 2026
[2026-06-22 20:24:24,627.627 INFO    ] ================================================
[2026-06-22 20:24:25,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:24:25
[2026-06-22 20:24:25,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:24:26,133.133 INFO    ] Initializing speech engine...
[2026-06-22 20:24:26,139.139 INFO    ] 2026-06-22 20:24:26
[2026-06-22 20:24:26,444.444 INFO    ] 2026-06-22 20:24:26
[2026-06-22 20:24:26,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:24:26,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:24:26,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:24:26,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:24:27,026.026 INFO    ] time= 22/06/2026 20:24:26
[2026-06-22 20:24:27,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:24:27,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:24:27,216.216 INFO    ] No existing commands found in stream
[2026-06-22 20:24:32,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:24:32,250.250 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-22 20:24:36,709.709 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:24:36,712.712 INFO    ] Checking for system updates...
[2026-06-22 20:24:36,755.755 INFO    ] 200
[2026-06-22 20:24:36,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:24:36,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:24:36,816.816 INFO    ] No update needed
[2026-06-22 20:24:36,819.819 INFO    ] Checking for camera pi updates...
[2026-06-22 20:24:36,855.855 INFO    ] 200
[2026-06-22 20:24:36,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:24:36,900.900 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:24:36,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:24:36,983.983 INFO    ] No camera update needed
[2026-06-22 20:24:36,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:24:36,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:24:36,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:24:37,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:24:39,044.044 INFO    ] ================================================
[2026-06-22 20:24:39,060.060 INFO    ] Launching Daemon at Mon Jun 22 20:24:39 IST 2026
[2026-06-22 20:24:39,072.072 INFO    ] ================================================
[2026-06-22 20:24:39,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:24:39
[2026-06-22 20:24:40,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:24:40,386.386 INFO    ] Initializing speech engine...
[2026-06-22 20:24:40,394.394 INFO    ] 2026-06-22 20:24:40
[2026-06-22 20:24:40,670.670 INFO    ] 2026-06-22 20:24:40
[2026-06-22 20:24:40,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:24:40,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:24:40,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:24:41,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:24:41,144.144 INFO    ] time= 22/06/2026 20:24:41
[2026-06-22 20:24:41,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:24:41,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:24:41,383.383 INFO    ] No existing commands found in stream
[2026-06-22 20:24:46,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:24:46,414.414 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-22 20:24:52,642.642 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:24:52,645.645 INFO    ] Checking for system updates...
[2026-06-22 20:24:52,682.682 INFO    ] 200
[2026-06-22 20:24:52,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:24:52,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:24:52,750.750 INFO    ] No update needed
[2026-06-22 20:24:52,753.753 INFO    ] Checking for camera pi updates...
[2026-06-22 20:24:52,792.792 INFO    ] 200
[2026-06-22 20:24:52,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:24:52,842.842 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:24:53,023.023 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:24:53,025.025 INFO    ] No camera update needed
[2026-06-22 20:24:53,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:24:53,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:24:53,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:24:53,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:24:55,084.084 INFO    ] ================================================
[2026-06-22 20:24:55,100.100 INFO    ] Launching Daemon at Mon Jun 22 20:24:55 IST 2026
[2026-06-22 20:24:55,111.111 INFO    ] ================================================
[2026-06-22 20:24:55,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:24:55
[2026-06-22 20:24:56,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:24:56,566.566 INFO    ] Initializing speech engine...
[2026-06-22 20:24:56,585.585 INFO    ] 2026-06-22 20:24:56
[2026-06-22 20:24:56,835.835 INFO    ] 2026-06-22 20:24:56
[2026-06-22 20:24:56,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:24:57,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:24:57,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:24:57,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:24:57,244.244 INFO    ] time= 22/06/2026 20:24:57
[2026-06-22 20:24:57,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:24:57,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:24:57,348.348 INFO    ] No existing commands found in stream
[2026-06-22 20:25:02,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:25:02,362.362 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-22 20:25:03,052.052 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:25:03,056.056 INFO    ] Checking for system updates...
[2026-06-22 20:25:03,096.096 INFO    ] 200
[2026-06-22 20:25:03,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:25:03,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:25:03,163.163 INFO    ] No update needed
[2026-06-22 20:25:03,166.166 INFO    ] Checking for camera pi updates...
[2026-06-22 20:25:03,206.206 INFO    ] 200
[2026-06-22 20:25:03,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:25:03,257.257 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:25:03,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:25:03,346.346 INFO    ] No camera update needed
[2026-06-22 20:25:03,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:25:03,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:25:03,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:25:03,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:25:05,407.407 INFO    ] ================================================
[2026-06-22 20:25:05,422.422 INFO    ] Launching Daemon at Mon Jun 22 20:25:05 IST 2026
[2026-06-22 20:25:05,434.434 INFO    ] ================================================
[2026-06-22 20:25:06,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:25:05
[2026-06-22 20:25:06,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:25:06,874.874 INFO    ] Initializing speech engine...
[2026-06-22 20:25:06,885.885 INFO    ] 2026-06-22 20:25:06
[2026-06-22 20:25:07,154.154 INFO    ] 2026-06-22 20:25:07
[2026-06-22 20:25:07,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:25:07,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:25:07,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:25:08,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:25:08,156.156 INFO    ] time= 22/06/2026 20:25:08
[2026-06-22 20:25:08,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:25:08,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:25:08,299.299 INFO    ] No existing commands found in stream
[2026-06-22 20:25:13,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:25:13,338.338 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-22 20:25:17,006.006 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:25:17,007.007 INFO    ] Checking for system updates...
[2026-06-22 20:25:17,041.041 INFO    ] 200
[2026-06-22 20:25:17,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:25:17,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:25:17,100.100 INFO    ] No update needed
[2026-06-22 20:25:17,103.103 INFO    ] Checking for camera pi updates...
[2026-06-22 20:25:17,137.137 INFO    ] 200
[2026-06-22 20:25:17,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:25:17,181.181 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:25:17,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:25:17,265.265 INFO    ] No camera update needed
[2026-06-22 20:25:17,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:25:17,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:25:17,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:25:17,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:25:19,322.322 INFO    ] ================================================
[2026-06-22 20:25:19,338.338 INFO    ] Launching Daemon at Mon Jun 22 20:25:19 IST 2026
[2026-06-22 20:25:19,349.349 INFO    ] ================================================
[2026-06-22 20:25:19,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:25:19
[2026-06-22 20:25:20,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:25:20,929.929 INFO    ] Initializing speech engine...
[2026-06-22 20:25:20,941.941 INFO    ] 2026-06-22 20:25:20
[2026-06-22 20:25:21,219.219 INFO    ] 2026-06-22 20:25:21
[2026-06-22 20:25:21,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:25:24,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:25:24,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:25:25,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:25:25,082.082 INFO    ] time= 22/06/2026 20:25:25
[2026-06-22 20:25:25,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:25:25,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:25:25,142.142 INFO    ] No existing commands found in stream
[2026-06-22 20:25:30,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:25:30,154.154 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-22 20:25:31,590.590 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:25:31,593.593 INFO    ] Checking for system updates...
[2026-06-22 20:25:31,633.633 INFO    ] 200
[2026-06-22 20:25:31,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:25:31,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:25:31,696.696 INFO    ] No update needed
[2026-06-22 20:25:31,699.699 INFO    ] Checking for camera pi updates...
[2026-06-22 20:25:31,732.732 INFO    ] 200
[2026-06-22 20:25:31,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:25:31,775.775 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:25:31,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:25:31,870.870 INFO    ] No camera update needed
[2026-06-22 20:25:31,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:25:31,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:25:31,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:25:31,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:25:33,927.927 INFO    ] ================================================
[2026-06-22 20:25:33,942.942 INFO    ] Launching Daemon at Mon Jun 22 20:25:33 IST 2026
[2026-06-22 20:25:33,953.953 INFO    ] ================================================
[2026-06-22 20:25:34,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:25:34
[2026-06-22 20:25:35,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:25:35,445.445 INFO    ] Initializing speech engine...
[2026-06-22 20:25:35,457.457 INFO    ] 2026-06-22 20:25:35
[2026-06-22 20:25:35,733.733 INFO    ] 2026-06-22 20:25:35
[2026-06-22 20:25:35,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:25:36,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:25:36,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:25:36,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:25:36,469.469 INFO    ] time= 22/06/2026 20:25:36
[2026-06-22 20:25:36,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:25:36,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:25:36,723.723 INFO    ] No existing commands found in stream
[2026-06-22 20:25:41,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:25:41,737.737 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-22 20:25:45,614.614 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:25:45,616.616 INFO    ] Checking for system updates...
[2026-06-22 20:25:45,638.638 INFO    ] 200
[2026-06-22 20:25:45,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:25:45,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:25:45,694.694 INFO    ] No update needed
[2026-06-22 20:25:45,697.697 INFO    ] Checking for camera pi updates...
[2026-06-22 20:25:45,731.731 INFO    ] 200
[2026-06-22 20:25:45,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:25:45,781.781 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:25:45,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:25:45,877.877 INFO    ] No camera update needed
[2026-06-22 20:25:45,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:25:45,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:25:45,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:25:45,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:25:47,937.937 INFO    ] ================================================
[2026-06-22 20:25:47,952.952 INFO    ] Launching Daemon at Mon Jun 22 20:25:47 IST 2026
[2026-06-22 20:25:47,963.963 INFO    ] ================================================
[2026-06-22 20:25:48,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:25:48
[2026-06-22 20:25:49,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:25:49,448.448 INFO    ] Initializing speech engine...
[2026-06-22 20:25:49,461.461 INFO    ] 2026-06-22 20:25:49
[2026-06-22 20:25:49,742.742 INFO    ] 2026-06-22 20:25:49
[2026-06-22 20:25:49,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:25:50,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:25:50,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:25:50,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:25:50,271.271 INFO    ] time= 22/06/2026 20:25:50
[2026-06-22 20:25:50,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:25:50,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:25:50,435.435 INFO    ] No existing commands found in stream
[2026-06-22 20:25:55,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:25:55,469.469 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-22 20:25:57,836.836 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:25:57,839.839 INFO    ] Checking for system updates...
[2026-06-22 20:25:57,877.877 INFO    ] 200
[2026-06-22 20:25:57,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:25:57,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:25:57,935.935 INFO    ] No update needed
[2026-06-22 20:25:57,938.938 INFO    ] Checking for camera pi updates...
[2026-06-22 20:25:57,971.971 INFO    ] 200
[2026-06-22 20:25:57,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:25:58,018.018 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:25:58,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:25:58,107.107 INFO    ] No camera update needed
[2026-06-22 20:25:58,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:25:58,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:25:58,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:25:58,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:26:00,161.161 INFO    ] ================================================
[2026-06-22 20:26:00,176.176 INFO    ] Launching Daemon at Mon Jun 22 20:26:00 IST 2026
[2026-06-22 20:26:00,186.186 INFO    ] ================================================
[2026-06-22 20:26:00,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:26:00
[2026-06-22 20:26:01,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:26:02,091.091 INFO    ] Initializing speech engine...
[2026-06-22 20:26:02,095.095 INFO    ] 2026-06-22 20:26:02
[2026-06-22 20:26:02,456.456 INFO    ] 2026-06-22 20:26:02
[2026-06-22 20:26:02,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:26:02,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:26:02,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:26:02,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:26:02,920.920 INFO    ] time= 22/06/2026 20:26:02
[2026-06-22 20:26:02,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:26:02,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:26:03,102.102 INFO    ] No existing commands found in stream
[2026-06-22 20:26:08,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:26:08,135.135 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-22 20:26:10,518.518 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:26:10,520.520 INFO    ] Checking for system updates...
[2026-06-22 20:26:10,557.557 INFO    ] 200
[2026-06-22 20:26:10,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:26:10,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:26:10,615.615 INFO    ] No update needed
[2026-06-22 20:26:10,618.618 INFO    ] Checking for camera pi updates...
[2026-06-22 20:26:10,651.651 INFO    ] 200
[2026-06-22 20:26:10,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:26:10,695.695 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:26:10,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:26:10,781.781 INFO    ] No camera update needed
[2026-06-22 20:26:10,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:26:10,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:26:10,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:26:10,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:26:12,838.838 INFO    ] ================================================
[2026-06-22 20:26:12,854.854 INFO    ] Launching Daemon at Mon Jun 22 20:26:12 IST 2026
[2026-06-22 20:26:12,865.865 INFO    ] ================================================
[2026-06-22 20:26:13,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:26:13
[2026-06-22 20:26:14,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:26:14,310.310 INFO    ] Initializing speech engine...
[2026-06-22 20:26:14,318.318 INFO    ] 2026-06-22 20:26:14
[2026-06-22 20:26:14,581.581 INFO    ] 2026-06-22 20:26:14
[2026-06-22 20:26:14,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:26:14,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:26:14,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:26:14,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:26:15,059.059 INFO    ] time= 22/06/2026 20:26:15
[2026-06-22 20:26:15,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:26:15,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:26:15,261.261 INFO    ] No existing commands found in stream
[2026-06-22 20:26:20,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:26:20,288.288 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-22 20:26:22,004.004 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:26:22,007.007 INFO    ] Checking for system updates...
[2026-06-22 20:26:22,045.045 INFO    ] 200
[2026-06-22 20:26:22,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:26:22,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:26:22,105.105 INFO    ] No update needed
[2026-06-22 20:26:22,107.107 INFO    ] Checking for camera pi updates...
[2026-06-22 20:26:22,146.146 INFO    ] 200
[2026-06-22 20:26:22,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:26:22,200.200 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:26:22,280.280 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:26:22,283.283 INFO    ] No camera update needed
[2026-06-22 20:26:22,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:26:22,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:26:22,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:26:22,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:26:24,338.338 INFO    ] ================================================
[2026-06-22 20:26:24,355.355 INFO    ] Launching Daemon at Mon Jun 22 20:26:24 IST 2026
[2026-06-22 20:26:24,366.366 INFO    ] ================================================
[2026-06-22 20:26:25,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:26:25
[2026-06-22 20:26:25,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:26:26,007.007 INFO    ] Initializing speech engine...
[2026-06-22 20:26:26,019.019 INFO    ] 2026-06-22 20:26:26
[2026-06-22 20:26:26,301.301 INFO    ] 2026-06-22 20:26:26
[2026-06-22 20:26:26,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:26:27,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:26:27,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:26:27,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:26:27,431.431 INFO    ] time= 22/06/2026 20:26:27
[2026-06-22 20:26:27,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:26:27,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:26:27,548.548 INFO    ] No existing commands found in stream
[2026-06-22 20:26:32,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:26:32,563.563 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-22 20:26:34,144.144 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:26:34,147.147 INFO    ] Checking for system updates...
[2026-06-22 20:26:34,184.184 INFO    ] 200
[2026-06-22 20:26:34,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:26:34,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:26:34,251.251 INFO    ] No update needed
[2026-06-22 20:26:34,254.254 INFO    ] Checking for camera pi updates...
[2026-06-22 20:26:34,295.295 INFO    ] 200
[2026-06-22 20:26:34,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:26:34,342.342 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:26:34,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:26:34,426.426 INFO    ] No camera update needed
[2026-06-22 20:26:34,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:26:34,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:26:34,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:26:34,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:26:36,484.484 INFO    ] ================================================
[2026-06-22 20:26:36,499.499 INFO    ] Launching Daemon at Mon Jun 22 20:26:36 IST 2026
[2026-06-22 20:26:36,511.511 INFO    ] ================================================
[2026-06-22 20:26:37,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:26:37
[2026-06-22 20:26:37,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:26:37,960.960 INFO    ] Initializing speech engine...
[2026-06-22 20:26:37,967.967 INFO    ] 2026-06-22 20:26:37
[2026-06-22 20:26:38,263.263 INFO    ] 2026-06-22 20:26:38
[2026-06-22 20:26:38,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:26:38,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:26:38,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:26:38,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:26:38,684.684 INFO    ] time= 22/06/2026 20:26:38
[2026-06-22 20:26:38,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:26:38,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:26:38,804.804 INFO    ] No existing commands found in stream
[2026-06-22 20:26:43,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:26:43,832.832 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-22 20:26:48,252.252 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:26:48,253.253 INFO    ] Checking for system updates...
[2026-06-22 20:26:48,275.275 INFO    ] 200
[2026-06-22 20:26:48,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:26:48,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:26:48,308.308 INFO    ] No update needed
[2026-06-22 20:26:48,310.310 INFO    ] Checking for camera pi updates...
[2026-06-22 20:26:48,338.338 INFO    ] 200
[2026-06-22 20:26:48,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:26:48,381.381 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:26:48,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:26:48,452.452 INFO    ] No camera update needed
[2026-06-22 20:26:48,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:26:48,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:26:48,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:26:48,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:26:50,507.507 INFO    ] ================================================
[2026-06-22 20:26:50,522.522 INFO    ] Launching Daemon at Mon Jun 22 20:26:50 IST 2026
[2026-06-22 20:26:50,533.533 INFO    ] ================================================
[2026-06-22 20:26:51,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:26:51
[2026-06-22 20:26:51,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:26:51,974.974 INFO    ] Initializing speech engine...
[2026-06-22 20:26:51,995.995 INFO    ] 2026-06-22 20:26:51
[2026-06-22 20:26:52,254.254 INFO    ] 2026-06-22 20:26:52
[2026-06-22 20:26:52,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:26:52,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:26:52,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:26:52,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:26:52,769.769 INFO    ] time= 22/06/2026 20:26:52
[2026-06-22 20:26:52,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:26:52,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:26:52,965.965 INFO    ] No existing commands found in stream
[2026-06-22 20:26:57,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:26:57,984.984 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-22 20:27:02,307.307 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:27:02,310.310 INFO    ] Checking for system updates...
[2026-06-22 20:27:02,352.352 INFO    ] 200
[2026-06-22 20:27:02,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:27:02,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:27:02,428.428 INFO    ] No update needed
[2026-06-22 20:27:02,431.431 INFO    ] Checking for camera pi updates...
[2026-06-22 20:27:02,473.473 INFO    ] 200
[2026-06-22 20:27:02,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:27:02,529.529 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:27:02,594.594 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:27:02,597.597 INFO    ] No camera update needed
[2026-06-22 20:27:02,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:27:02,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:27:02,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:27:02,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:27:04,660.660 INFO    ] ================================================
[2026-06-22 20:27:04,675.675 INFO    ] Launching Daemon at Mon Jun 22 20:27:04 IST 2026
[2026-06-22 20:27:04,686.686 INFO    ] ================================================
[2026-06-22 20:27:05,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:27:05
[2026-06-22 20:27:05,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:27:06,136.136 INFO    ] Initializing speech engine...
[2026-06-22 20:27:06,157.157 INFO    ] 2026-06-22 20:27:06
[2026-06-22 20:27:06,446.446 INFO    ] 2026-06-22 20:27:06
[2026-06-22 20:27:06,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:27:06,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:27:06,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:27:06,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:27:06,953.953 INFO    ] time= 22/06/2026 20:27:06
[2026-06-22 20:27:06,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:27:07,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:27:07,154.154 INFO    ] No existing commands found in stream
[2026-06-22 20:27:12,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:27:12,168.168 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-22 20:27:14,287.287 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:27:14,289.289 INFO    ] Checking for system updates...
[2026-06-22 20:27:14,327.327 INFO    ] 200
[2026-06-22 20:27:14,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:27:14,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:27:14,384.384 INFO    ] No update needed
[2026-06-22 20:27:14,387.387 INFO    ] Checking for camera pi updates...
[2026-06-22 20:27:14,421.421 INFO    ] 200
[2026-06-22 20:27:14,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:27:14,464.464 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:27:14,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:27:14,526.526 INFO    ] No camera update needed
[2026-06-22 20:27:14,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:27:14,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:27:14,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:27:14,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:27:16,580.580 INFO    ] ================================================
[2026-06-22 20:27:16,595.595 INFO    ] Launching Daemon at Mon Jun 22 20:27:16 IST 2026
[2026-06-22 20:27:16,606.606 INFO    ] ================================================
[2026-06-22 20:27:17,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:27:17
[2026-06-22 20:27:17,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:27:18,047.047 INFO    ] Initializing speech engine...
[2026-06-22 20:27:18,065.065 INFO    ] 2026-06-22 20:27:18
[2026-06-22 20:27:18,335.335 INFO    ] 2026-06-22 20:27:18
[2026-06-22 20:27:18,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:27:18,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:27:18,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:27:18,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:27:18,827.827 INFO    ] time= 22/06/2026 20:27:18
[2026-06-22 20:27:18,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:27:18,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:27:19,138.138 INFO    ] No existing commands found in stream
[2026-06-22 20:27:24,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:27:24,156.156 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-22 20:27:28,530.530 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:27:28,532.532 INFO    ] Checking for system updates...
[2026-06-22 20:27:28,553.553 INFO    ] 200
[2026-06-22 20:27:28,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:27:28,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:27:28,599.599 INFO    ] No update needed
[2026-06-22 20:27:28,602.602 INFO    ] Checking for camera pi updates...
[2026-06-22 20:27:28,636.636 INFO    ] 200
[2026-06-22 20:27:28,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:27:28,681.681 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:27:28,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:27:28,738.738 INFO    ] No camera update needed
[2026-06-22 20:27:28,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:27:28,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:27:28,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:27:28,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:27:30,796.796 INFO    ] ================================================
[2026-06-22 20:27:30,812.812 INFO    ] Launching Daemon at Mon Jun 22 20:27:30 IST 2026
[2026-06-22 20:27:30,823.823 INFO    ] ================================================
[2026-06-22 20:27:31,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:27:31
[2026-06-22 20:27:32,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:27:32,314.314 INFO    ] Initializing speech engine...
[2026-06-22 20:27:32,329.329 INFO    ] 2026-06-22 20:27:32
[2026-06-22 20:27:32,617.617 INFO    ] 2026-06-22 20:27:32
[2026-06-22 20:27:32,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:27:32,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:27:32,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:27:33,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:27:33,112.112 INFO    ] time= 22/06/2026 20:27:33
[2026-06-22 20:27:33,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:27:33,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:27:33,336.336 INFO    ] No existing commands found in stream
[2026-06-22 20:27:38,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:27:38,363.363 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-22 20:27:40,956.956 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:27:40,959.959 INFO    ] Checking for system updates...
[2026-06-22 20:27:40,996.996 INFO    ] 200
[2026-06-22 20:27:40,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:27:41,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:27:41,054.054 INFO    ] No update needed
[2026-06-22 20:27:41,057.057 INFO    ] Checking for camera pi updates...
[2026-06-22 20:27:41,094.094 INFO    ] 200
[2026-06-22 20:27:41,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:27:41,141.141 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:27:41,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:27:41,232.232 INFO    ] No camera update needed
[2026-06-22 20:27:41,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:27:41,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:27:41,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:27:41,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:27:43,289.289 INFO    ] ================================================
[2026-06-22 20:27:43,305.305 INFO    ] Launching Daemon at Mon Jun 22 20:27:43 IST 2026
[2026-06-22 20:27:43,316.316 INFO    ] ================================================
[2026-06-22 20:27:43,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:27:43
[2026-06-22 20:27:44,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:27:44,659.659 INFO    ] Initializing speech engine...
[2026-06-22 20:27:44,681.681 INFO    ] 2026-06-22 20:27:44
[2026-06-22 20:27:44,937.937 INFO    ] 2026-06-22 20:27:44
[2026-06-22 20:27:44,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:27:45,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:27:45,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:27:45,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:27:45,412.412 INFO    ] time= 22/06/2026 20:27:45
[2026-06-22 20:27:45,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:27:45,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:27:45,616.616 INFO    ] No existing commands found in stream
[2026-06-22 20:27:50,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:27:50,649.649 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-22 20:27:54,733.733 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:27:54,737.737 INFO    ] Checking for system updates...
[2026-06-22 20:27:54,774.774 INFO    ] 200
[2026-06-22 20:27:54,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:27:54,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:27:54,834.834 INFO    ] No update needed
[2026-06-22 20:27:54,836.836 INFO    ] Checking for camera pi updates...
[2026-06-22 20:27:54,872.872 INFO    ] 200
[2026-06-22 20:27:54,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:27:54,918.918 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:27:55,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:27:55,007.007 INFO    ] No camera update needed
[2026-06-22 20:27:55,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:27:55,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:27:55,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:27:55,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:27:57,066.066 INFO    ] ================================================
[2026-06-22 20:27:57,081.081 INFO    ] Launching Daemon at Mon Jun 22 20:27:57 IST 2026
[2026-06-22 20:27:57,092.092 INFO    ] ================================================
[2026-06-22 20:27:57,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:27:57
[2026-06-22 20:27:58,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:27:58,683.683 INFO    ] Initializing speech engine...
[2026-06-22 20:27:58,693.693 INFO    ] 2026-06-22 20:27:58
[2026-06-22 20:27:58,995.995 INFO    ] 2026-06-22 20:27:58
[2026-06-22 20:27:59,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:27:59,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:27:59,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:27:59,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:27:59,756.756 INFO    ] time= 22/06/2026 20:27:59
[2026-06-22 20:27:59,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:27:59,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:28:00,036.036 INFO    ] No existing commands found in stream
[2026-06-22 20:28:05,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:28:05,070.070 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-22 20:28:08,477.477 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:28:08,480.480 INFO    ] Checking for system updates...
[2026-06-22 20:28:08,518.518 INFO    ] 200
[2026-06-22 20:28:08,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:28:08,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:28:08,577.577 INFO    ] No update needed
[2026-06-22 20:28:08,580.580 INFO    ] Checking for camera pi updates...
[2026-06-22 20:28:08,615.615 INFO    ] 200
[2026-06-22 20:28:08,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:28:08,664.664 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:28:08,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:28:08,765.765 INFO    ] No camera update needed
[2026-06-22 20:28:08,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:28:08,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:28:08,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:28:08,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:28:10,823.823 INFO    ] ================================================
[2026-06-22 20:28:10,838.838 INFO    ] Launching Daemon at Mon Jun 22 20:28:10 IST 2026
[2026-06-22 20:28:10,849.849 INFO    ] ================================================
[2026-06-22 20:28:11,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:28:11
[2026-06-22 20:28:12,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:28:12,453.453 INFO    ] Initializing speech engine...
[2026-06-22 20:28:12,466.466 INFO    ] 2026-06-22 20:28:12
[2026-06-22 20:28:12,744.744 INFO    ] 2026-06-22 20:28:12
[2026-06-22 20:28:12,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:28:13,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:28:13,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:28:13,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:28:13,286.286 INFO    ] time= 22/06/2026 20:28:13
[2026-06-22 20:28:13,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:28:13,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:28:13,438.438 INFO    ] No existing commands found in stream
[2026-06-22 20:28:18,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:28:18,459.459 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-22 20:28:21,378.378 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:28:21,380.380 INFO    ] Checking for system updates...
[2026-06-22 20:28:21,401.401 INFO    ] 200
[2026-06-22 20:28:21,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:28:21,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:28:21,436.436 INFO    ] No update needed
[2026-06-22 20:28:21,438.438 INFO    ] Checking for camera pi updates...
[2026-06-22 20:28:21,481.481 INFO    ] 200
[2026-06-22 20:28:21,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:28:21,526.526 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:28:21,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:28:21,610.610 INFO    ] No camera update needed
[2026-06-22 20:28:21,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:28:21,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:28:21,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:28:21,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:28:23,670.670 INFO    ] ================================================
[2026-06-22 20:28:23,685.685 INFO    ] Launching Daemon at Mon Jun 22 20:28:23 IST 2026
[2026-06-22 20:28:23,696.696 INFO    ] ================================================
[2026-06-22 20:28:24,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:28:24
[2026-06-22 20:28:24,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:28:25,009.009 INFO    ] Initializing speech engine...
[2026-06-22 20:28:25,032.032 INFO    ] 2026-06-22 20:28:25
[2026-06-22 20:28:25,287.287 INFO    ] 2026-06-22 20:28:25
[2026-06-22 20:28:25,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:28:25,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:28:25,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:28:29,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:28:29,506.506 INFO    ] time= 22/06/2026 20:28:29
[2026-06-22 20:28:29,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:28:29,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:28:29,576.576 INFO    ] No existing commands found in stream
[2026-06-22 20:28:34,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:28:34,588.588 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-22 20:28:36,010.010 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:28:36,011.011 INFO    ] Checking for system updates...
[2026-06-22 20:28:36,035.035 INFO    ] 200
[2026-06-22 20:28:36,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:28:36,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:28:36,068.068 INFO    ] No update needed
[2026-06-22 20:28:36,071.071 INFO    ] Checking for camera pi updates...
[2026-06-22 20:28:36,105.105 INFO    ] 200
[2026-06-22 20:28:36,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:28:36,148.148 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:28:36,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:28:36,248.248 INFO    ] No camera update needed
[2026-06-22 20:28:36,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:28:36,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:28:36,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:28:36,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:28:38,305.305 INFO    ] ================================================
[2026-06-22 20:28:38,320.320 INFO    ] Launching Daemon at Mon Jun 22 20:28:38 IST 2026
[2026-06-22 20:28:38,331.331 INFO    ] ================================================
[2026-06-22 20:28:38,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:28:38
[2026-06-22 20:28:39,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:28:39,788.788 INFO    ] Initializing speech engine...
[2026-06-22 20:28:39,797.797 INFO    ] 2026-06-22 20:28:39
[2026-06-22 20:28:40,054.054 INFO    ] 2026-06-22 20:28:40
[2026-06-22 20:28:40,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:28:40,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:28:40,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:28:40,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:28:40,537.537 INFO    ] time= 22/06/2026 20:28:40
[2026-06-22 20:28:40,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:28:40,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:28:40,747.747 INFO    ] No existing commands found in stream
[2026-06-22 20:28:45,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:28:45,766.766 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-22 20:28:49,507.507 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:28:49,510.510 INFO    ] Checking for system updates...
[2026-06-22 20:28:49,547.547 INFO    ] 200
[2026-06-22 20:28:49,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:28:49,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:28:49,608.608 INFO    ] No update needed
[2026-06-22 20:28:49,611.611 INFO    ] Checking for camera pi updates...
[2026-06-22 20:28:49,644.644 INFO    ] 200
[2026-06-22 20:28:49,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:28:49,688.688 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:28:49,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:28:49,775.775 INFO    ] No camera update needed
[2026-06-22 20:28:49,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:28:49,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:28:49,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:28:49,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:28:51,831.831 INFO    ] ================================================
[2026-06-22 20:28:51,846.846 INFO    ] Launching Daemon at Mon Jun 22 20:28:51 IST 2026
[2026-06-22 20:28:51,857.857 INFO    ] ================================================
[2026-06-22 20:28:52,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:28:52
[2026-06-22 20:28:53,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:28:53,349.349 INFO    ] Initializing speech engine...
[2026-06-22 20:28:53,359.359 INFO    ] 2026-06-22 20:28:53
[2026-06-22 20:28:53,645.645 INFO    ] 2026-06-22 20:28:53
[2026-06-22 20:28:53,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:28:53,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:28:53,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:28:54,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:28:54,198.198 INFO    ] time= 22/06/2026 20:28:54
[2026-06-22 20:28:54,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:28:54,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:28:54,361.361 INFO    ] No existing commands found in stream
[2026-06-22 20:28:59,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:28:59,385.385 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-22 20:29:03,994.994 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:29:03,997.997 INFO    ] Checking for system updates...
[2026-06-22 20:29:04,035.035 INFO    ] 200
[2026-06-22 20:29:04,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:29:04,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:29:04,093.093 INFO    ] No update needed
[2026-06-22 20:29:04,096.096 INFO    ] Checking for camera pi updates...
[2026-06-22 20:29:04,130.130 INFO    ] 200
[2026-06-22 20:29:04,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:29:04,174.174 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:29:04,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:29:04,365.365 INFO    ] No camera update needed
[2026-06-22 20:29:04,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:29:04,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:29:04,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:29:04,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:29:06,422.422 INFO    ] ================================================
[2026-06-22 20:29:06,437.437 INFO    ] Launching Daemon at Mon Jun 22 20:29:06 IST 2026
[2026-06-22 20:29:06,448.448 INFO    ] ================================================
[2026-06-22 20:29:06,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:29:06
[2026-06-22 20:29:07,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:29:07,852.852 INFO    ] Initializing speech engine...
[2026-06-22 20:29:07,862.862 INFO    ] 2026-06-22 20:29:07
[2026-06-22 20:29:08,123.123 INFO    ] 2026-06-22 20:29:08
[2026-06-22 20:29:08,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:29:08,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:29:08,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:29:08,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:29:08,597.597 INFO    ] time= 22/06/2026 20:29:08
[2026-06-22 20:29:08,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:29:08,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:29:08,803.803 INFO    ] No existing commands found in stream
[2026-06-22 20:29:13,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:29:13,833.833 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-22 20:29:15,764.764 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:29:15,766.766 INFO    ] Checking for system updates...
[2026-06-22 20:29:15,804.804 INFO    ] 200
[2026-06-22 20:29:15,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:29:15,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:29:15,864.864 INFO    ] No update needed
[2026-06-22 20:29:15,866.866 INFO    ] Checking for camera pi updates...
[2026-06-22 20:29:15,900.900 INFO    ] 200
[2026-06-22 20:29:15,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:29:15,944.944 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:29:16,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:29:16,025.025 INFO    ] No camera update needed
[2026-06-22 20:29:16,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:29:16,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:29:16,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:29:16,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:29:18,083.083 INFO    ] ================================================
[2026-06-22 20:29:18,098.098 INFO    ] Launching Daemon at Mon Jun 22 20:29:18 IST 2026
[2026-06-22 20:29:18,109.109 INFO    ] ================================================
[2026-06-22 20:29:18,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:29:18
[2026-06-22 20:29:19,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:29:19,468.468 INFO    ] Initializing speech engine...
[2026-06-22 20:29:19,488.488 INFO    ] 2026-06-22 20:29:19
[2026-06-22 20:29:19,768.768 INFO    ] 2026-06-22 20:29:19
[2026-06-22 20:29:19,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:29:20,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:29:20,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:29:20,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:29:20,372.372 INFO    ] time= 22/06/2026 20:29:20
[2026-06-22 20:29:20,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:29:20,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:29:20,566.566 INFO    ] No existing commands found in stream
[2026-06-22 20:29:25,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:29:25,593.593 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-22 20:29:32,568.568 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:29:32,571.571 INFO    ] Checking for system updates...
[2026-06-22 20:29:32,612.612 INFO    ] 200
[2026-06-22 20:29:32,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:29:32,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:29:32,700.700 INFO    ] No update needed
[2026-06-22 20:29:32,703.703 INFO    ] Checking for camera pi updates...
[2026-06-22 20:29:32,736.736 INFO    ] 200
[2026-06-22 20:29:32,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:29:32,779.779 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:29:32,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:29:32,866.866 INFO    ] No camera update needed
[2026-06-22 20:29:32,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:29:32,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:29:32,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:29:32,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:29:34,922.922 INFO    ] ================================================
[2026-06-22 20:29:34,937.937 INFO    ] Launching Daemon at Mon Jun 22 20:29:34 IST 2026
[2026-06-22 20:29:34,948.948 INFO    ] ================================================
[2026-06-22 20:29:35,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:29:35
[2026-06-22 20:29:36,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:29:36,269.269 INFO    ] Initializing speech engine...
[2026-06-22 20:29:36,276.276 INFO    ] 2026-06-22 20:29:36
[2026-06-22 20:29:36,549.549 INFO    ] 2026-06-22 20:29:36
[2026-06-22 20:29:36,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:29:36,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:29:36,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:29:36,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:29:37,023.023 INFO    ] time= 22/06/2026 20:29:36
[2026-06-22 20:29:37,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:29:37,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:29:37,269.269 INFO    ] No existing commands found in stream
[2026-06-22 20:29:42,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:29:42,293.293 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-22 20:29:43,394.394 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:29:43,397.397 INFO    ] Checking for system updates...
[2026-06-22 20:29:43,439.439 INFO    ] 200
[2026-06-22 20:29:43,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:29:43,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:29:43,498.498 INFO    ] No update needed
[2026-06-22 20:29:43,501.501 INFO    ] Checking for camera pi updates...
[2026-06-22 20:29:43,536.536 INFO    ] 200
[2026-06-22 20:29:43,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:29:43,580.580 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:29:43,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:29:43,665.665 INFO    ] No camera update needed
[2026-06-22 20:29:43,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:29:43,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:29:43,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:29:43,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:29:45,720.720 INFO    ] ================================================
[2026-06-22 20:29:45,736.736 INFO    ] Launching Daemon at Mon Jun 22 20:29:45 IST 2026
[2026-06-22 20:29:45,746.746 INFO    ] ================================================
[2026-06-22 20:29:46,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:29:46
[2026-06-22 20:29:46,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:29:47,066.066 INFO    ] Initializing speech engine...
[2026-06-22 20:29:47,089.089 INFO    ] 2026-06-22 20:29:47
[2026-06-22 20:29:47,346.346 INFO    ] 2026-06-22 20:29:47
[2026-06-22 20:29:47,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:29:47,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:29:47,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:29:47,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:29:47,833.833 INFO    ] time= 22/06/2026 20:29:47
[2026-06-22 20:29:47,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:29:47,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:29:48,054.054 INFO    ] No existing commands found in stream
[2026-06-22 20:29:53,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:29:53,085.085 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-22 20:29:55,227.227 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:29:55,228.228 INFO    ] Checking for system updates...
[2026-06-22 20:29:55,249.249 INFO    ] 200
[2026-06-22 20:29:55,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:29:55,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:29:55,293.293 INFO    ] No update needed
[2026-06-22 20:29:55,295.295 INFO    ] Checking for camera pi updates...
[2026-06-22 20:29:55,329.329 INFO    ] 200
[2026-06-22 20:29:55,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:29:55,372.372 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:29:55,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:29:55,456.456 INFO    ] No camera update needed
[2026-06-22 20:29:55,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:29:55,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:29:55,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:29:55,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:29:57,510.510 INFO    ] ================================================
[2026-06-22 20:29:57,526.526 INFO    ] Launching Daemon at Mon Jun 22 20:29:57 IST 2026
[2026-06-22 20:29:57,536.536 INFO    ] ================================================
[2026-06-22 20:29:58,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:29:58
[2026-06-22 20:29:58,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:29:58,907.907 INFO    ] Initializing speech engine...
[2026-06-22 20:29:58,927.927 INFO    ] 2026-06-22 20:29:58
[2026-06-22 20:29:59,204.204 INFO    ] 2026-06-22 20:29:59
[2026-06-22 20:29:59,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:30:03,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:30:03,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:30:05,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:30:05,304.304 INFO    ] time= 22/06/2026 20:30:05
[2026-06-22 20:30:05,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:30:05,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:30:05,361.361 INFO    ] No existing commands found in stream
[2026-06-22 20:30:10,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:30:10,373.373 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-22 20:30:11,312.312 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:30:11,314.314 INFO    ] Checking for system updates...
[2026-06-22 20:30:11,335.335 INFO    ] 200
[2026-06-22 20:30:11,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:30:11,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:30:11,368.368 INFO    ] No update needed
[2026-06-22 20:30:11,370.370 INFO    ] Checking for camera pi updates...
[2026-06-22 20:30:11,389.389 INFO    ] 200
[2026-06-22 20:30:11,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:30:11,418.418 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:30:11,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:30:11,503.503 INFO    ] No camera update needed
[2026-06-22 20:30:11,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:30:11,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:30:11,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:30:11,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:30:13,561.561 INFO    ] ================================================
[2026-06-22 20:30:13,577.577 INFO    ] Launching Daemon at Mon Jun 22 20:30:13 IST 2026
[2026-06-22 20:30:13,587.587 INFO    ] ================================================
[2026-06-22 20:30:14,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:30:14
[2026-06-22 20:30:14,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:30:15,200.200 INFO    ] Initializing speech engine...
[2026-06-22 20:30:15,211.211 INFO    ] 2026-06-22 20:30:15
[2026-06-22 20:30:15,484.484 INFO    ] 2026-06-22 20:30:15
[2026-06-22 20:30:15,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:30:15,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:30:15,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:30:15,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:30:15,998.998 INFO    ] time= 22/06/2026 20:30:15
[2026-06-22 20:30:16,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:30:16,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:30:16,179.179 INFO    ] No existing commands found in stream
[2026-06-22 20:30:21,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:30:21,209.209 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-22 20:30:23,811.811 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:30:23,813.813 INFO    ] Checking for system updates...
[2026-06-22 20:30:23,847.847 INFO    ] 200
[2026-06-22 20:30:23,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:30:23,904.904 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:30:23,907.907 INFO    ] No update needed
[2026-06-22 20:30:23,910.910 INFO    ] Checking for camera pi updates...
[2026-06-22 20:30:23,945.945 INFO    ] 200
[2026-06-22 20:30:23,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:30:23,990.990 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:30:24,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:30:24,076.076 INFO    ] No camera update needed
[2026-06-22 20:30:24,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:30:24,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:30:24,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:30:24,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:30:26,137.137 INFO    ] ================================================
[2026-06-22 20:30:26,152.152 INFO    ] Launching Daemon at Mon Jun 22 20:30:26 IST 2026
[2026-06-22 20:30:26,163.163 INFO    ] ================================================
[2026-06-22 20:30:26,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:30:26
[2026-06-22 20:30:27,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:30:27,761.761 INFO    ] Initializing speech engine...
[2026-06-22 20:30:27,775.775 INFO    ] 2026-06-22 20:30:27
[2026-06-22 20:30:28,089.089 INFO    ] 2026-06-22 20:30:28
[2026-06-22 20:30:28,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:30:28,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:30:28,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:30:28,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:30:28,594.594 INFO    ] time= 22/06/2026 20:30:28
[2026-06-22 20:30:28,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:30:28,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:30:28,747.747 INFO    ] No existing commands found in stream
[2026-06-22 20:30:33,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:30:33,766.766 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-22 20:30:36,939.939 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:30:36,942.942 INFO    ] Checking for system updates...
[2026-06-22 20:30:36,980.980 INFO    ] 200
[2026-06-22 20:30:36,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:30:37,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:30:37,040.040 INFO    ] No update needed
[2026-06-22 20:30:37,043.043 INFO    ] Checking for camera pi updates...
[2026-06-22 20:30:37,078.078 INFO    ] 200
[2026-06-22 20:30:37,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:30:37,123.123 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:30:37,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:30:37,210.210 INFO    ] No camera update needed
[2026-06-22 20:30:37,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:30:37,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:30:37,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:30:37,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:30:39,270.270 INFO    ] ================================================
[2026-06-22 20:30:39,286.286 INFO    ] Launching Daemon at Mon Jun 22 20:30:39 IST 2026
[2026-06-22 20:30:39,296.296 INFO    ] ================================================
[2026-06-22 20:30:39,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:30:39
[2026-06-22 20:30:40,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:30:40,640.640 INFO    ] Initializing speech engine...
[2026-06-22 20:30:40,650.650 INFO    ] 2026-06-22 20:30:40
[2026-06-22 20:30:40,900.900 INFO    ] 2026-06-22 20:30:40
[2026-06-22 20:30:40,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:30:41,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:30:41,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:30:41,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:30:41,384.384 INFO    ] time= 22/06/2026 20:30:41
[2026-06-22 20:30:41,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:30:41,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:30:41,611.611 INFO    ] No existing commands found in stream
[2026-06-22 20:30:46,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:30:46,639.639 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-22 20:30:49,581.581 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:30:49,584.584 INFO    ] Checking for system updates...
[2026-06-22 20:30:49,620.620 INFO    ] 200
[2026-06-22 20:30:49,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:30:49,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:30:49,677.677 INFO    ] No update needed
[2026-06-22 20:30:49,680.680 INFO    ] Checking for camera pi updates...
[2026-06-22 20:30:49,713.713 INFO    ] 200
[2026-06-22 20:30:49,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:30:49,758.758 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:30:49,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:30:49,843.843 INFO    ] No camera update needed
[2026-06-22 20:30:49,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:30:49,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:30:49,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:30:49,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:30:51,900.900 INFO    ] ================================================
[2026-06-22 20:30:51,915.915 INFO    ] Launching Daemon at Mon Jun 22 20:30:51 IST 2026
[2026-06-22 20:30:51,926.926 INFO    ] ================================================
[2026-06-22 20:30:52,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:30:52
[2026-06-22 20:30:53,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:30:53,332.332 INFO    ] Initializing speech engine...
[2026-06-22 20:30:53,356.356 INFO    ] 2026-06-22 20:30:53
[2026-06-22 20:30:53,636.636 INFO    ] 2026-06-22 20:30:53
[2026-06-22 20:30:53,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:30:53,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:30:53,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:30:54,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:30:54,099.099 INFO    ] time= 22/06/2026 20:30:54
[2026-06-22 20:30:54,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:30:54,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:30:54,246.246 INFO    ] No existing commands found in stream
[2026-06-22 20:30:59,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:30:59,281.281 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-22 20:31:07,143.143 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:31:07,145.145 INFO    ] Checking for system updates...
[2026-06-22 20:31:07,182.182 INFO    ] 200
[2026-06-22 20:31:07,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:31:07,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:31:07,243.243 INFO    ] No update needed
[2026-06-22 20:31:07,246.246 INFO    ] Checking for camera pi updates...
[2026-06-22 20:31:07,280.280 INFO    ] 200
[2026-06-22 20:31:07,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:31:07,328.328 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:31:07,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:31:07,519.519 INFO    ] No camera update needed
[2026-06-22 20:31:07,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:31:07,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:31:07,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:31:07,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:31:09,577.577 INFO    ] ================================================
[2026-06-22 20:31:09,592.592 INFO    ] Launching Daemon at Mon Jun 22 20:31:09 IST 2026
[2026-06-22 20:31:09,602.602 INFO    ] ================================================
[2026-06-22 20:31:10,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:31:10
[2026-06-22 20:31:10,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:31:10,979.979 INFO    ] Initializing speech engine...
[2026-06-22 20:31:10,988.988 INFO    ] 2026-06-22 20:31:10
[2026-06-22 20:31:11,239.239 INFO    ] 2026-06-22 20:31:11
[2026-06-22 20:31:11,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:31:11,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:31:11,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:31:11,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:31:11,618.618 INFO    ] time= 22/06/2026 20:31:11
[2026-06-22 20:31:11,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:31:11,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:31:11,807.807 INFO    ] No existing commands found in stream
[2026-06-22 20:31:16,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:31:16,830.830 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-22 20:31:20,662.662 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:31:20,666.666 INFO    ] Checking for system updates...
[2026-06-22 20:31:20,703.703 INFO    ] 200
[2026-06-22 20:31:20,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:31:20,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:31:20,769.769 INFO    ] No update needed
[2026-06-22 20:31:20,772.772 INFO    ] Checking for camera pi updates...
[2026-06-22 20:31:20,807.807 INFO    ] 200
[2026-06-22 20:31:20,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:31:20,851.851 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:31:20,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:31:20,911.911 INFO    ] No camera update needed
[2026-06-22 20:31:20,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:31:20,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:31:20,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:31:20,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:31:22,971.971 INFO    ] ================================================
[2026-06-22 20:31:22,986.986 INFO    ] Launching Daemon at Mon Jun 22 20:31:22 IST 2026
[2026-06-22 20:31:23,997.997 INFO    ] ================================================
[2026-06-22 20:31:23,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:31:23
[2026-06-22 20:31:24,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:31:24,421.421 INFO    ] Initializing speech engine...
[2026-06-22 20:31:24,440.440 INFO    ] 2026-06-22 20:31:24
[2026-06-22 20:31:24,692.692 INFO    ] 2026-06-22 20:31:24
[2026-06-22 20:31:24,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:31:24,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:31:24,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:31:25,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:31:25,119.119 INFO    ] time= 22/06/2026 20:31:25
[2026-06-22 20:31:25,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:31:25,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:31:25,275.275 INFO    ] No existing commands found in stream
[2026-06-22 20:31:30,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:31:30,290.290 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-22 20:31:36,858.858 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:31:36,861.861 INFO    ] Checking for system updates...
[2026-06-22 20:31:36,898.898 INFO    ] 200
[2026-06-22 20:31:36,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:31:36,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:31:36,961.961 INFO    ] No update needed
[2026-06-22 20:31:36,964.964 INFO    ] Checking for camera pi updates...
[2026-06-22 20:31:37,003.003 INFO    ] 200
[2026-06-22 20:31:37,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:31:37,053.053 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:31:37,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:31:37,141.141 INFO    ] No camera update needed
[2026-06-22 20:31:37,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:31:37,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:31:37,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:31:37,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:31:39,208.208 INFO    ] ================================================
[2026-06-22 20:31:39,222.222 INFO    ] Launching Daemon at Mon Jun 22 20:31:39 IST 2026
[2026-06-22 20:31:39,233.233 INFO    ] ================================================
[2026-06-22 20:31:39,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:31:39
[2026-06-22 20:31:40,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:31:40,692.692 INFO    ] Initializing speech engine...
[2026-06-22 20:31:40,701.701 INFO    ] 2026-06-22 20:31:40
[2026-06-22 20:31:40,949.949 INFO    ] 2026-06-22 20:31:40
[2026-06-22 20:31:40,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:31:41,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:31:41,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:31:41,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:31:41,436.436 INFO    ] time= 22/06/2026 20:31:41
[2026-06-22 20:31:41,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:31:41,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:31:41,646.646 INFO    ] No existing commands found in stream
[2026-06-22 20:31:46,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:31:46,670.670 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-22 20:31:47,427.427 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:31:47,430.430 INFO    ] Checking for system updates...
[2026-06-22 20:31:47,460.460 INFO    ] 200
[2026-06-22 20:31:47,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:31:47,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:31:47,493.493 INFO    ] No update needed
[2026-06-22 20:31:47,495.495 INFO    ] Checking for camera pi updates...
[2026-06-22 20:31:47,516.516 INFO    ] 200
[2026-06-22 20:31:47,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:31:47,541.541 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:31:47,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:31:47,630.630 INFO    ] No camera update needed
[2026-06-22 20:31:47,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:31:47,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:31:47,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:31:47,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:31:49,689.689 INFO    ] ================================================
[2026-06-22 20:31:49,705.705 INFO    ] Launching Daemon at Mon Jun 22 20:31:49 IST 2026
[2026-06-22 20:31:49,715.715 INFO    ] ================================================
[2026-06-22 20:31:50,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:31:50
[2026-06-22 20:31:50,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:31:51,055.055 INFO    ] Initializing speech engine...
[2026-06-22 20:31:51,068.068 INFO    ] 2026-06-22 20:31:51
[2026-06-22 20:31:51,355.355 INFO    ] 2026-06-22 20:31:51
[2026-06-22 20:31:51,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:31:51,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:31:51,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:31:51,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:31:51,852.852 INFO    ] time= 22/06/2026 20:31:51
[2026-06-22 20:31:51,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:31:51,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:31:52,044.044 INFO    ] No existing commands found in stream
[2026-06-22 20:31:57,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:31:57,066.066 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-22 20:32:00,429.429 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:32:00,432.432 INFO    ] Checking for system updates...
[2026-06-22 20:32:00,469.469 INFO    ] 200
[2026-06-22 20:32:00,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:32:00,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:32:00,529.529 INFO    ] No update needed
[2026-06-22 20:32:00,532.532 INFO    ] Checking for camera pi updates...
[2026-06-22 20:32:00,567.567 INFO    ] 200
[2026-06-22 20:32:00,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:32:00,616.616 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:32:00,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:32:00,693.693 INFO    ] No camera update needed
[2026-06-22 20:32:00,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:32:00,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:32:00,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:32:00,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:32:02,762.762 INFO    ] ================================================
[2026-06-22 20:32:02,785.785 INFO    ] Launching Daemon at Mon Jun 22 20:32:02 IST 2026
[2026-06-22 20:32:02,802.802 INFO    ] ================================================
[2026-06-22 20:32:03,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:32:03
[2026-06-22 20:32:04,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:32:04,438.438 INFO    ] Initializing speech engine...
[2026-06-22 20:32:04,444.444 INFO    ] 2026-06-22 20:32:04
[2026-06-22 20:32:04,727.727 INFO    ] 2026-06-22 20:32:04
[2026-06-22 20:32:04,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:32:07,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:32:07,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:32:08,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:32:08,444.444 INFO    ] time= 22/06/2026 20:32:08
[2026-06-22 20:32:08,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:32:08,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:32:08,497.497 INFO    ] No existing commands found in stream
[2026-06-22 20:32:13,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:32:13,510.510 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-22 20:32:16,431.431 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:32:16,434.434 INFO    ] Checking for system updates...
[2026-06-22 20:32:16,470.470 INFO    ] 200
[2026-06-22 20:32:16,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:32:16,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:32:16,534.534 INFO    ] No update needed
[2026-06-22 20:32:16,537.537 INFO    ] Checking for camera pi updates...
[2026-06-22 20:32:16,571.571 INFO    ] 200
[2026-06-22 20:32:16,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:32:16,615.615 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:32:16,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:32:16,700.700 INFO    ] No camera update needed
[2026-06-22 20:32:16,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:32:16,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:32:16,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:32:16,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:32:18,757.757 INFO    ] ================================================
[2026-06-22 20:32:18,772.772 INFO    ] Launching Daemon at Mon Jun 22 20:32:18 IST 2026
[2026-06-22 20:32:18,782.782 INFO    ] ================================================
[2026-06-22 20:32:19,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:32:19
[2026-06-22 20:32:19,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:32:20,186.186 INFO    ] Initializing speech engine...
[2026-06-22 20:32:20,194.194 INFO    ] 2026-06-22 20:32:20
[2026-06-22 20:32:20,480.480 INFO    ] 2026-06-22 20:32:20
[2026-06-22 20:32:20,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:32:20,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:32:20,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:32:20,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:32:20,880.880 INFO    ] time= 22/06/2026 20:32:20
[2026-06-22 20:32:20,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:32:20,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:32:20,963.963 INFO    ] No existing commands found in stream
[2026-06-22 20:32:25,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:32:26,002.002 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-22 20:32:27,991.991 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:32:27,994.994 INFO    ] Checking for system updates...
[2026-06-22 20:32:28,029.029 INFO    ] 200
[2026-06-22 20:32:28,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:32:28,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:32:28,095.095 INFO    ] No update needed
[2026-06-22 20:32:28,098.098 INFO    ] Checking for camera pi updates...
[2026-06-22 20:32:28,131.131 INFO    ] 200
[2026-06-22 20:32:28,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:32:28,177.177 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:32:28,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:32:28,246.246 INFO    ] No camera update needed
[2026-06-22 20:32:28,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:32:28,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:32:28,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:32:28,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:32:30,302.302 INFO    ] ================================================
[2026-06-22 20:32:30,319.319 INFO    ] Launching Daemon at Mon Jun 22 20:32:30 IST 2026
[2026-06-22 20:32:30,330.330 INFO    ] ================================================
[2026-06-22 20:32:30,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:32:30
[2026-06-22 20:32:31,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:32:31,844.844 INFO    ] Initializing speech engine...
[2026-06-22 20:32:31,858.858 INFO    ] 2026-06-22 20:32:31
[2026-06-22 20:32:32,155.155 INFO    ] 2026-06-22 20:32:32
[2026-06-22 20:32:32,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:32:32,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:32:32,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:32:32,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:32:32,602.602 INFO    ] time= 22/06/2026 20:32:32
[2026-06-22 20:32:32,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:32:32,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:32:32,877.877 INFO    ] No existing commands found in stream
[2026-06-22 20:32:37,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:32:37,899.899 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-22 20:32:41,559.559 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:32:41,562.562 INFO    ] Checking for system updates...
[2026-06-22 20:32:41,597.597 INFO    ] 200
[2026-06-22 20:32:41,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:32:41,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:32:41,654.654 INFO    ] No update needed
[2026-06-22 20:32:41,657.657 INFO    ] Checking for camera pi updates...
[2026-06-22 20:32:41,690.690 INFO    ] 200
[2026-06-22 20:32:41,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:32:41,733.733 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:32:41,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:32:41,797.797 INFO    ] No camera update needed
[2026-06-22 20:32:41,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:32:41,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:32:41,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:32:41,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:32:43,852.852 INFO    ] ================================================
[2026-06-22 20:32:43,867.867 INFO    ] Launching Daemon at Mon Jun 22 20:32:43 IST 2026
[2026-06-22 20:32:43,878.878 INFO    ] ================================================
[2026-06-22 20:32:44,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:32:44
[2026-06-22 20:32:45,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:32:45,428.428 INFO    ] Initializing speech engine...
[2026-06-22 20:32:45,435.435 INFO    ] 2026-06-22 20:32:45
[2026-06-22 20:32:45,717.717 INFO    ] 2026-06-22 20:32:45
[2026-06-22 20:32:45,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:32:46,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:32:46,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:32:46,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:32:46,283.283 INFO    ] time= 22/06/2026 20:32:46
[2026-06-22 20:32:46,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:32:46,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:32:46,548.548 INFO    ] No existing commands found in stream
[2026-06-22 20:32:51,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:32:51,577.577 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-22 20:32:55,341.341 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:32:55,344.344 INFO    ] Checking for system updates...
[2026-06-22 20:32:55,380.380 INFO    ] 200
[2026-06-22 20:32:55,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:32:55,438.438 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:32:55,440.440 INFO    ] No update needed
[2026-06-22 20:32:55,443.443 INFO    ] Checking for camera pi updates...
[2026-06-22 20:32:55,477.477 INFO    ] 200
[2026-06-22 20:32:55,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:32:55,522.522 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:32:55,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:32:55,607.607 INFO    ] No camera update needed
[2026-06-22 20:32:55,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:32:55,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:32:55,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:32:55,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:32:57,664.664 INFO    ] ================================================
[2026-06-22 20:32:57,679.679 INFO    ] Launching Daemon at Mon Jun 22 20:32:57 IST 2026
[2026-06-22 20:32:57,690.690 INFO    ] ================================================
[2026-06-22 20:32:58,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:32:58
[2026-06-22 20:32:58,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:32:59,151.151 INFO    ] Initializing speech engine...
[2026-06-22 20:32:59,159.159 INFO    ] 2026-06-22 20:32:59
[2026-06-22 20:32:59,444.444 INFO    ] 2026-06-22 20:32:59
[2026-06-22 20:32:59,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:32:59,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:32:59,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:32:59,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:32:59,991.991 INFO    ] time= 22/06/2026 20:32:59
[2026-06-22 20:32:59,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:33:00,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:33:00,134.134 INFO    ] No existing commands found in stream
[2026-06-22 20:33:05,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:33:05,163.163 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-22 20:33:10,121.121 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:33:10,123.123 INFO    ] Checking for system updates...
[2026-06-22 20:33:10,144.144 INFO    ] 200
[2026-06-22 20:33:10,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:33:10,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:33:10,176.176 INFO    ] No update needed
[2026-06-22 20:33:10,178.178 INFO    ] Checking for camera pi updates...
[2026-06-22 20:33:10,207.207 INFO    ] 200
[2026-06-22 20:33:10,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:33:10,250.250 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:33:10,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:33:10,442.442 INFO    ] No camera update needed
[2026-06-22 20:33:10,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:33:10,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:33:10,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:33:10,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:33:12,496.496 INFO    ] ================================================
[2026-06-22 20:33:12,512.512 INFO    ] Launching Daemon at Mon Jun 22 20:33:12 IST 2026
[2026-06-22 20:33:12,522.522 INFO    ] ================================================
[2026-06-22 20:33:13,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:33:13
[2026-06-22 20:33:13,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:33:14,010.010 INFO    ] Initializing speech engine...
[2026-06-22 20:33:14,020.020 INFO    ] 2026-06-22 20:33:14
[2026-06-22 20:33:14,301.301 INFO    ] 2026-06-22 20:33:14
[2026-06-22 20:33:14,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:33:14,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:33:14,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:33:14,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:33:15,004.004 INFO    ] time= 22/06/2026 20:33:14
[2026-06-22 20:33:15,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:33:15,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:33:15,216.216 INFO    ] No existing commands found in stream
[2026-06-22 20:33:20,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:33:20,245.245 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-22 20:33:23,156.156 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:33:23,159.159 INFO    ] Checking for system updates...
[2026-06-22 20:33:23,196.196 INFO    ] 200
[2026-06-22 20:33:23,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:33:23,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:33:23,260.260 INFO    ] No update needed
[2026-06-22 20:33:23,262.262 INFO    ] Checking for camera pi updates...
[2026-06-22 20:33:23,296.296 INFO    ] 200
[2026-06-22 20:33:23,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:33:23,340.340 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:33:23,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:33:23,423.423 INFO    ] No camera update needed
[2026-06-22 20:33:23,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:33:23,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:33:23,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:33:23,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:33:25,479.479 INFO    ] ================================================
[2026-06-22 20:33:25,495.495 INFO    ] Launching Daemon at Mon Jun 22 20:33:25 IST 2026
[2026-06-22 20:33:25,506.506 INFO    ] ================================================
[2026-06-22 20:33:26,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:33:26
[2026-06-22 20:33:26,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:33:27,003.003 INFO    ] Initializing speech engine...
[2026-06-22 20:33:27,017.017 INFO    ] 2026-06-22 20:33:27
[2026-06-22 20:33:27,294.294 INFO    ] 2026-06-22 20:33:27
[2026-06-22 20:33:27,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:33:27,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:33:27,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:33:27,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:33:27,832.832 INFO    ] time= 22/06/2026 20:33:27
[2026-06-22 20:33:27,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:33:27,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:33:27,989.989 INFO    ] No existing commands found in stream
[2026-06-22 20:33:33,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:33:33,016.016 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-22 20:33:36,666.666 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:33:36,667.667 INFO    ] Checking for system updates...
[2026-06-22 20:33:36,688.688 INFO    ] 200
[2026-06-22 20:33:36,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:33:36,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:33:36,725.725 INFO    ] No update needed
[2026-06-22 20:33:36,728.728 INFO    ] Checking for camera pi updates...
[2026-06-22 20:33:36,764.764 INFO    ] 200
[2026-06-22 20:33:36,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:33:36,808.808 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:33:36,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:33:36,894.894 INFO    ] No camera update needed
[2026-06-22 20:33:36,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:33:36,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:33:36,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:33:36,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:33:38,957.957 INFO    ] ================================================
[2026-06-22 20:33:38,972.972 INFO    ] Launching Daemon at Mon Jun 22 20:33:38 IST 2026
[2026-06-22 20:33:38,984.984 INFO    ] ================================================
[2026-06-22 20:33:39,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:33:39
[2026-06-22 20:33:40,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:33:40,353.353 INFO    ] Initializing speech engine...
[2026-06-22 20:33:40,359.359 INFO    ] 2026-06-22 20:33:40
[2026-06-22 20:33:40,621.621 INFO    ] 2026-06-22 20:33:40
[2026-06-22 20:33:40,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:33:41,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:33:41,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:33:41,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:33:41,730.730 INFO    ] time= 22/06/2026 20:33:41
[2026-06-22 20:33:41,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:33:41,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:33:41,849.849 INFO    ] No existing commands found in stream
[2026-06-22 20:33:46,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:33:46,863.863 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-22 20:33:51,150.150 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:33:51,153.153 INFO    ] Checking for system updates...
[2026-06-22 20:33:51,189.189 INFO    ] 200
[2026-06-22 20:33:51,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:33:51,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:33:51,247.247 INFO    ] No update needed
[2026-06-22 20:33:51,249.249 INFO    ] Checking for camera pi updates...
[2026-06-22 20:33:51,283.283 INFO    ] 200
[2026-06-22 20:33:51,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:33:51,327.327 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:33:51,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:33:51,397.397 INFO    ] No camera update needed
[2026-06-22 20:33:51,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:33:51,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:33:51,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:33:51,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:33:53,455.455 INFO    ] ================================================
[2026-06-22 20:33:53,470.470 INFO    ] Launching Daemon at Mon Jun 22 20:33:53 IST 2026
[2026-06-22 20:33:53,481.481 INFO    ] ================================================
[2026-06-22 20:33:54,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:33:54
[2026-06-22 20:33:54,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:33:54,942.942 INFO    ] Initializing speech engine...
[2026-06-22 20:33:54,951.951 INFO    ] 2026-06-22 20:33:54
[2026-06-22 20:33:55,202.202 INFO    ] 2026-06-22 20:33:55
[2026-06-22 20:33:55,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:33:55,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:33:55,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:33:55,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:33:55,669.669 INFO    ] time= 22/06/2026 20:33:55
[2026-06-22 20:33:55,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:33:55,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:33:55,879.879 INFO    ] No existing commands found in stream
[2026-06-22 20:34:00,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:34:00,904.904 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-22 20:34:04,989.989 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:34:04,992.992 INFO    ] Checking for system updates...
[2026-06-22 20:34:05,031.031 INFO    ] 200
[2026-06-22 20:34:05,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:34:05,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:34:05,089.089 INFO    ] No update needed
[2026-06-22 20:34:05,092.092 INFO    ] Checking for camera pi updates...
[2026-06-22 20:34:05,126.126 INFO    ] 200
[2026-06-22 20:34:05,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:34:05,172.172 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:34:05,255.255 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:34:05,258.258 INFO    ] No camera update needed
[2026-06-22 20:34:05,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:34:05,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:34:05,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:34:05,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:34:07,314.314 INFO    ] ================================================
[2026-06-22 20:34:07,329.329 INFO    ] Launching Daemon at Mon Jun 22 20:34:07 IST 2026
[2026-06-22 20:34:07,341.341 INFO    ] ================================================
[2026-06-22 20:34:07,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:34:07
[2026-06-22 20:34:08,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:34:08,798.798 INFO    ] Initializing speech engine...
[2026-06-22 20:34:08,805.805 INFO    ] 2026-06-22 20:34:08
[2026-06-22 20:34:09,068.068 INFO    ] 2026-06-22 20:34:09
[2026-06-22 20:34:09,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:34:11,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:34:11,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:34:13,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:34:13,081.081 INFO    ] time= 22/06/2026 20:34:13
[2026-06-22 20:34:13,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:34:13,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:34:13,135.135 INFO    ] No existing commands found in stream
[2026-06-22 20:34:18,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:34:18,147.147 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-22 20:34:22,270.270 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:34:22,273.273 INFO    ] Checking for system updates...
[2026-06-22 20:34:22,309.309 INFO    ] 200
[2026-06-22 20:34:22,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:34:22,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:34:22,367.367 INFO    ] No update needed
[2026-06-22 20:34:22,369.369 INFO    ] Checking for camera pi updates...
[2026-06-22 20:34:22,403.403 INFO    ] 200
[2026-06-22 20:34:22,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:34:22,446.446 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:34:22,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:34:22,501.501 INFO    ] No camera update needed
[2026-06-22 20:34:22,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:34:22,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:34:22,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:34:22,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:34:24,557.557 INFO    ] ================================================
[2026-06-22 20:34:24,572.572 INFO    ] Launching Daemon at Mon Jun 22 20:34:24 IST 2026
[2026-06-22 20:34:24,584.584 INFO    ] ================================================
[2026-06-22 20:34:25,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:34:25
[2026-06-22 20:34:25,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:34:26,163.163 INFO    ] Initializing speech engine...
[2026-06-22 20:34:26,175.175 INFO    ] 2026-06-22 20:34:26
[2026-06-22 20:34:26,452.452 INFO    ] 2026-06-22 20:34:26
[2026-06-22 20:34:26,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:34:26,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:34:26,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:34:26,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:34:26,993.993 INFO    ] time= 22/06/2026 20:34:26
[2026-06-22 20:34:27,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:34:27,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:34:27,173.173 INFO    ] No existing commands found in stream
[2026-06-22 20:34:32,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:34:32,203.203 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-22 20:34:34,325.325 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:34:34,328.328 INFO    ] Checking for system updates...
[2026-06-22 20:34:34,365.365 INFO    ] 200
[2026-06-22 20:34:34,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:34:34,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:34:34,424.424 INFO    ] No update needed
[2026-06-22 20:34:34,427.427 INFO    ] Checking for camera pi updates...
[2026-06-22 20:34:34,464.464 INFO    ] 200
[2026-06-22 20:34:34,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:34:34,509.509 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:34:34,594.594 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:34:34,597.597 INFO    ] No camera update needed
[2026-06-22 20:34:34,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:34:34,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:34:34,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:34:34,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:34:36,656.656 INFO    ] ================================================
[2026-06-22 20:34:36,671.671 INFO    ] Launching Daemon at Mon Jun 22 20:34:36 IST 2026
[2026-06-22 20:34:36,682.682 INFO    ] ================================================
[2026-06-22 20:34:37,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:34:37
[2026-06-22 20:34:37,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:34:38,017.017 INFO    ] Initializing speech engine...
[2026-06-22 20:34:38,027.027 INFO    ] 2026-06-22 20:34:38
[2026-06-22 20:34:38,323.323 INFO    ] 2026-06-22 20:34:38
[2026-06-22 20:34:38,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:34:40,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:34:40,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:34:43,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:34:43,483.483 INFO    ] time= 22/06/2026 20:34:43
[2026-06-22 20:34:43,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:34:43,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:34:43,537.537 INFO    ] No existing commands found in stream
[2026-06-22 20:34:48,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:34:48,549.549 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-22 20:34:51,599.599 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:34:51,602.602 INFO    ] Checking for system updates...
[2026-06-22 20:34:51,638.638 INFO    ] 200
[2026-06-22 20:34:51,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:34:51,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:34:51,697.697 INFO    ] No update needed
[2026-06-22 20:34:51,700.700 INFO    ] Checking for camera pi updates...
[2026-06-22 20:34:51,733.733 INFO    ] 200
[2026-06-22 20:34:51,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:34:51,782.782 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:34:51,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:34:51,873.873 INFO    ] No camera update needed
[2026-06-22 20:34:51,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:34:51,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:34:51,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:34:51,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:34:53,932.932 INFO    ] ================================================
[2026-06-22 20:34:53,947.947 INFO    ] Launching Daemon at Mon Jun 22 20:34:53 IST 2026
[2026-06-22 20:34:53,958.958 INFO    ] ================================================
[2026-06-22 20:34:54,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:34:54
[2026-06-22 20:34:55,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:34:55,305.305 INFO    ] Initializing speech engine...
[2026-06-22 20:34:55,311.311 INFO    ] 2026-06-22 20:34:55
[2026-06-22 20:34:55,572.572 INFO    ] 2026-06-22 20:34:55
[2026-06-22 20:34:55,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:34:55,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:34:55,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:34:55,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:34:55,962.962 INFO    ] time= 22/06/2026 20:34:55
[2026-06-22 20:34:55,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:34:55,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:34:56,071.071 INFO    ] No existing commands found in stream
[2026-06-22 20:35:01,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:35:01,088.088 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-22 20:35:03,491.491 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:35:03,494.494 INFO    ] Checking for system updates...
[2026-06-22 20:35:03,531.531 INFO    ] 200
[2026-06-22 20:35:03,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:35:03,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:35:03,590.590 INFO    ] No update needed
[2026-06-22 20:35:03,593.593 INFO    ] Checking for camera pi updates...
[2026-06-22 20:35:03,628.628 INFO    ] 200
[2026-06-22 20:35:03,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:35:03,673.673 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:35:03,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:35:03,763.763 INFO    ] No camera update needed
[2026-06-22 20:35:03,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:35:03,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:35:03,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:35:03,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:35:05,824.824 INFO    ] ================================================
[2026-06-22 20:35:05,839.839 INFO    ] Launching Daemon at Mon Jun 22 20:35:05 IST 2026
[2026-06-22 20:35:05,851.851 INFO    ] ================================================
[2026-06-22 20:35:06,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:35:06
[2026-06-22 20:35:07,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:35:07,323.323 INFO    ] Initializing speech engine...
[2026-06-22 20:35:07,329.329 INFO    ] 2026-06-22 20:35:07
[2026-06-22 20:35:07,576.576 INFO    ] 2026-06-22 20:35:07
[2026-06-22 20:35:07,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:35:07,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:35:07,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:35:08,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:35:08,075.075 INFO    ] time= 22/06/2026 20:35:08
[2026-06-22 20:35:08,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:35:08,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:35:08,273.273 INFO    ] No existing commands found in stream
[2026-06-22 20:35:13,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:35:13,302.302 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-22 20:35:15,452.452 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:35:15,454.454 INFO    ] Checking for system updates...
[2026-06-22 20:35:15,475.475 INFO    ] 200
[2026-06-22 20:35:15,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:35:15,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:35:15,523.523 INFO    ] No update needed
[2026-06-22 20:35:15,525.525 INFO    ] Checking for camera pi updates...
[2026-06-22 20:35:15,560.560 INFO    ] 200
[2026-06-22 20:35:15,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:35:15,603.603 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:35:15,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:35:15,788.788 INFO    ] No camera update needed
[2026-06-22 20:35:15,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:35:15,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:35:15,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:35:15,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:35:17,845.845 INFO    ] ================================================
[2026-06-22 20:35:17,861.861 INFO    ] Launching Daemon at Mon Jun 22 20:35:17 IST 2026
[2026-06-22 20:35:17,873.873 INFO    ] ================================================
[2026-06-22 20:35:18,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:35:18
[2026-06-22 20:35:19,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:35:19,322.322 INFO    ] Initializing speech engine...
[2026-06-22 20:35:19,329.329 INFO    ] 2026-06-22 20:35:19
[2026-06-22 20:35:19,587.587 INFO    ] 2026-06-22 20:35:19
[2026-06-22 20:35:19,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:35:19,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:35:19,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:35:20,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:35:20,128.128 INFO    ] time= 22/06/2026 20:35:20
[2026-06-22 20:35:20,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:35:20,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:35:20,288.288 INFO    ] No existing commands found in stream
[2026-06-22 20:35:25,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:35:25,310.310 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-22 20:35:27,023.023 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:35:27,026.026 INFO    ] Checking for system updates...
[2026-06-22 20:35:27,076.076 INFO    ] 200
[2026-06-22 20:35:27,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:35:27,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:35:27,143.143 INFO    ] No update needed
[2026-06-22 20:35:27,146.146 INFO    ] Checking for camera pi updates...
[2026-06-22 20:35:27,184.184 INFO    ] 200
[2026-06-22 20:35:27,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:35:27,235.235 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:35:27,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:35:27,348.348 INFO    ] No camera update needed
[2026-06-22 20:35:27,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:35:27,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:35:27,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:35:27,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:35:29,407.407 INFO    ] ================================================
[2026-06-22 20:35:29,423.423 INFO    ] Launching Daemon at Mon Jun 22 20:35:29 IST 2026
[2026-06-22 20:35:29,436.436 INFO    ] ================================================
[2026-06-22 20:35:30,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:35:30
[2026-06-22 20:35:30,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:35:30,930.930 INFO    ] Initializing speech engine...
[2026-06-22 20:35:30,938.938 INFO    ] 2026-06-22 20:35:30
[2026-06-22 20:35:31,191.191 INFO    ] 2026-06-22 20:35:31
[2026-06-22 20:35:31,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:35:31,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:35:31,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:35:31,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:35:31,717.717 INFO    ] time= 22/06/2026 20:35:31
[2026-06-22 20:35:31,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:35:31,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:35:31,896.896 INFO    ] No existing commands found in stream
[2026-06-22 20:35:36,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:35:36,938.938 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-22 20:35:38,541.541 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:35:38,543.543 INFO    ] Checking for system updates...
[2026-06-22 20:35:38,564.564 INFO    ] 200
[2026-06-22 20:35:38,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:35:38,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:35:38,603.603 INFO    ] No update needed
[2026-06-22 20:35:38,606.606 INFO    ] Checking for camera pi updates...
[2026-06-22 20:35:38,641.641 INFO    ] 200
[2026-06-22 20:35:38,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:35:38,686.686 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:35:38,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:35:38,770.770 INFO    ] No camera update needed
[2026-06-22 20:35:38,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:35:38,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:35:38,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:35:38,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:35:40,830.830 INFO    ] ================================================
[2026-06-22 20:35:40,847.847 INFO    ] Launching Daemon at Mon Jun 22 20:35:40 IST 2026
[2026-06-22 20:35:40,857.857 INFO    ] ================================================
[2026-06-22 20:35:41,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:35:41
[2026-06-22 20:35:42,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:35:42,525.525 INFO    ] Initializing speech engine...
[2026-06-22 20:35:42,537.537 INFO    ] 2026-06-22 20:35:42
[2026-06-22 20:35:42,827.827 INFO    ] 2026-06-22 20:35:42
[2026-06-22 20:35:42,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:35:45,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:35:45,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:35:46,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:35:46,537.537 INFO    ] time= 22/06/2026 20:35:46
[2026-06-22 20:35:46,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:35:46,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:35:46,594.594 INFO    ] No existing commands found in stream
[2026-06-22 20:35:51,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:35:51,607.607 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-22 20:35:52,961.961 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:35:52,964.964 INFO    ] Checking for system updates...
[2026-06-22 20:35:53,002.002 INFO    ] 200
[2026-06-22 20:35:53,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:35:53,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:35:53,063.063 INFO    ] No update needed
[2026-06-22 20:35:53,066.066 INFO    ] Checking for camera pi updates...
[2026-06-22 20:35:53,101.101 INFO    ] 200
[2026-06-22 20:35:53,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:35:53,146.146 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:35:53,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:35:53,203.203 INFO    ] No camera update needed
[2026-06-22 20:35:53,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:35:53,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:35:53,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:35:53,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:35:55,266.266 INFO    ] ================================================
[2026-06-22 20:35:55,281.281 INFO    ] Launching Daemon at Mon Jun 22 20:35:55 IST 2026
[2026-06-22 20:35:55,291.291 INFO    ] ================================================
[2026-06-22 20:35:55,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:35:55
[2026-06-22 20:35:56,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:35:56,741.741 INFO    ] Initializing speech engine...
[2026-06-22 20:35:56,748.748 INFO    ] 2026-06-22 20:35:56
[2026-06-22 20:35:57,049.049 INFO    ] 2026-06-22 20:35:57
[2026-06-22 20:35:57,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:35:57,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:35:57,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:35:57,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:35:57,480.480 INFO    ] time= 22/06/2026 20:35:57
[2026-06-22 20:35:57,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:35:57,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:35:57,638.638 INFO    ] No existing commands found in stream
[2026-06-22 20:36:02,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:36:02,666.666 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-22 20:36:05,493.493 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:36:05,496.496 INFO    ] Checking for system updates...
[2026-06-22 20:36:05,533.533 INFO    ] 200
[2026-06-22 20:36:05,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:36:05,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:36:05,593.593 INFO    ] No update needed
[2026-06-22 20:36:05,595.595 INFO    ] Checking for camera pi updates...
[2026-06-22 20:36:05,631.631 INFO    ] 200
[2026-06-22 20:36:05,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:36:05,676.676 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:36:05,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:36:05,759.759 INFO    ] No camera update needed
[2026-06-22 20:36:05,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:36:05,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:36:05,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:36:05,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:36:07,816.816 INFO    ] ================================================
[2026-06-22 20:36:07,832.832 INFO    ] Launching Daemon at Mon Jun 22 20:36:07 IST 2026
[2026-06-22 20:36:07,843.843 INFO    ] ================================================
[2026-06-22 20:36:08,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:36:08
[2026-06-22 20:36:08,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:36:09,245.245 INFO    ] Initializing speech engine...
[2026-06-22 20:36:09,270.270 INFO    ] 2026-06-22 20:36:09
[2026-06-22 20:36:09,541.541 INFO    ] 2026-06-22 20:36:09
[2026-06-22 20:36:09,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:36:09,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:36:09,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:36:09,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:36:09,982.982 INFO    ] time= 22/06/2026 20:36:09
[2026-06-22 20:36:10,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:36:10,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:36:10,257.257 INFO    ] No existing commands found in stream
[2026-06-22 20:36:15,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:36:15,275.275 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-22 20:36:18,189.189 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:36:18,191.191 INFO    ] Checking for system updates...
[2026-06-22 20:36:18,228.228 INFO    ] 200
[2026-06-22 20:36:18,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:36:18,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:36:18,287.287 INFO    ] No update needed
[2026-06-22 20:36:18,289.289 INFO    ] Checking for camera pi updates...
[2026-06-22 20:36:18,322.322 INFO    ] 200
[2026-06-22 20:36:18,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:36:18,366.366 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:36:18,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:36:18,450.450 INFO    ] No camera update needed
[2026-06-22 20:36:18,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:36:18,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:36:18,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:36:18,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:36:20,505.505 INFO    ] ================================================
[2026-06-22 20:36:20,521.521 INFO    ] Launching Daemon at Mon Jun 22 20:36:20 IST 2026
[2026-06-22 20:36:20,532.532 INFO    ] ================================================
[2026-06-22 20:36:21,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:36:21
[2026-06-22 20:36:21,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:36:21,939.939 INFO    ] Initializing speech engine...
[2026-06-22 20:36:21,958.958 INFO    ] 2026-06-22 20:36:21
[2026-06-22 20:36:22,220.220 INFO    ] 2026-06-22 20:36:22
[2026-06-22 20:36:22,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:36:22,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:36:22,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:36:22,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:36:22,722.722 INFO    ] time= 22/06/2026 20:36:22
[2026-06-22 20:36:22,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:36:22,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:36:22,929.929 INFO    ] No existing commands found in stream
[2026-06-22 20:36:27,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:36:27,959.959 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-22 20:36:30,582.582 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:36:30,585.585 INFO    ] Checking for system updates...
[2026-06-22 20:36:30,621.621 INFO    ] 200
[2026-06-22 20:36:30,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:36:30,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:36:30,684.684 INFO    ] No update needed
[2026-06-22 20:36:30,686.686 INFO    ] Checking for camera pi updates...
[2026-06-22 20:36:30,720.720 INFO    ] 200
[2026-06-22 20:36:30,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:36:30,772.772 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:36:30,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:36:30,855.855 INFO    ] No camera update needed
[2026-06-22 20:36:30,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:36:30,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:36:30,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:36:30,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:36:32,912.912 INFO    ] ================================================
[2026-06-22 20:36:32,929.929 INFO    ] Launching Daemon at Mon Jun 22 20:36:32 IST 2026
[2026-06-22 20:36:32,943.943 INFO    ] ================================================
[2026-06-22 20:36:33,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:36:33
[2026-06-22 20:36:34,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:36:34,457.457 INFO    ] Initializing speech engine...
[2026-06-22 20:36:34,470.470 INFO    ] 2026-06-22 20:36:34
[2026-06-22 20:36:34,765.765 INFO    ] 2026-06-22 20:36:34
[2026-06-22 20:36:34,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:36:35,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:36:35,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:36:35,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:36:35,222.222 INFO    ] time= 22/06/2026 20:36:35
[2026-06-22 20:36:35,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:36:35,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:36:35,451.451 INFO    ] No existing commands found in stream
[2026-06-22 20:36:40,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:36:40,474.474 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-22 20:36:48,592.592 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:36:48,595.595 INFO    ] Checking for system updates...
[2026-06-22 20:36:48,631.631 INFO    ] 200
[2026-06-22 20:36:48,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:36:48,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:36:48,689.689 INFO    ] No update needed
[2026-06-22 20:36:48,691.691 INFO    ] Checking for camera pi updates...
[2026-06-22 20:36:48,725.725 INFO    ] 200
[2026-06-22 20:36:48,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:36:48,767.767 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:36:48,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:36:48,862.862 INFO    ] No camera update needed
[2026-06-22 20:36:48,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:36:48,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:36:48,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:36:48,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:36:50,916.916 INFO    ] ================================================
[2026-06-22 20:36:50,932.932 INFO    ] Launching Daemon at Mon Jun 22 20:36:50 IST 2026
[2026-06-22 20:36:50,942.942 INFO    ] ================================================
[2026-06-22 20:36:51,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:36:51
[2026-06-22 20:36:52,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:36:52,542.542 INFO    ] Initializing speech engine...
[2026-06-22 20:36:52,554.554 INFO    ] 2026-06-22 20:36:52
[2026-06-22 20:36:52,838.838 INFO    ] 2026-06-22 20:36:52
[2026-06-22 20:36:52,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:36:53,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:36:53,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:36:53,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:36:53,421.421 INFO    ] time= 22/06/2026 20:36:53
[2026-06-22 20:36:53,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:36:53,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:36:53,579.579 INFO    ] No existing commands found in stream
[2026-06-22 20:36:58,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:36:58,612.612 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-22 20:37:02,627.627 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:37:02,630.630 INFO    ] Checking for system updates...
[2026-06-22 20:37:02,677.677 INFO    ] 200
[2026-06-22 20:37:02,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:37:02,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:37:02,753.753 INFO    ] No update needed
[2026-06-22 20:37:02,756.756 INFO    ] Checking for camera pi updates...
[2026-06-22 20:37:02,815.815 INFO    ] 200
[2026-06-22 20:37:02,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:37:02,882.882 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:37:03,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:37:03,030.030 INFO    ] No camera update needed
[2026-06-22 20:37:03,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:37:03,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:37:03,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:37:03,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:37:05,090.090 INFO    ] ================================================
[2026-06-22 20:37:05,105.105 INFO    ] Launching Daemon at Mon Jun 22 20:37:05 IST 2026
[2026-06-22 20:37:05,116.116 INFO    ] ================================================
[2026-06-22 20:37:05,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:37:05
[2026-06-22 20:37:06,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:37:06,454.454 INFO    ] Initializing speech engine...
[2026-06-22 20:37:06,468.468 INFO    ] 2026-06-22 20:37:06
[2026-06-22 20:37:06,730.730 INFO    ] 2026-06-22 20:37:06
[2026-06-22 20:37:06,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:37:06,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:37:07,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:37:07,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:37:07,214.214 INFO    ] time= 22/06/2026 20:37:07
[2026-06-22 20:37:07,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:37:07,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:37:07,428.428 INFO    ] No existing commands found in stream
[2026-06-22 20:37:12,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:37:12,453.453 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-22 20:37:14,625.625 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:37:14,626.626 INFO    ] Checking for system updates...
[2026-06-22 20:37:14,655.655 INFO    ] 200
[2026-06-22 20:37:14,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:37:14,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:37:14,712.712 INFO    ] No update needed
[2026-06-22 20:37:14,715.715 INFO    ] Checking for camera pi updates...
[2026-06-22 20:37:14,748.748 INFO    ] 200
[2026-06-22 20:37:14,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:37:14,806.806 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:37:14,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:37:14,889.889 INFO    ] No camera update needed
[2026-06-22 20:37:14,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:37:14,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:37:14,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:37:14,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:37:16,946.946 INFO    ] ================================================
[2026-06-22 20:37:16,961.961 INFO    ] Launching Daemon at Mon Jun 22 20:37:16 IST 2026
[2026-06-22 20:37:16,972.972 INFO    ] ================================================
[2026-06-22 20:37:17,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:37:17
[2026-06-22 20:37:18,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:37:18,302.302 INFO    ] Initializing speech engine...
[2026-06-22 20:37:18,311.311 INFO    ] 2026-06-22 20:37:18
[2026-06-22 20:37:18,594.594 INFO    ] 2026-06-22 20:37:18
[2026-06-22 20:37:18,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:37:19,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:37:19,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:37:19,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:37:19,640.640 INFO    ] time= 22/06/2026 20:37:19
[2026-06-22 20:37:19,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:37:19,686.686 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:37:19,795.795 INFO    ] No existing commands found in stream
[2026-06-22 20:37:24,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:37:24,837.837 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-22 20:37:25,467.467 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:37:25,470.470 INFO    ] Checking for system updates...
[2026-06-22 20:37:25,507.507 INFO    ] 200
[2026-06-22 20:37:25,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:37:25,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:37:25,565.565 INFO    ] No update needed
[2026-06-22 20:37:25,568.568 INFO    ] Checking for camera pi updates...
[2026-06-22 20:37:25,602.602 INFO    ] 200
[2026-06-22 20:37:25,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:37:25,646.646 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:37:25,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:37:25,831.831 INFO    ] No camera update needed
[2026-06-22 20:37:25,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:37:25,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:37:25,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:37:25,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:37:27,886.886 INFO    ] ================================================
[2026-06-22 20:37:27,901.901 INFO    ] Launching Daemon at Mon Jun 22 20:37:27 IST 2026
[2026-06-22 20:37:27,912.912 INFO    ] ================================================
[2026-06-22 20:37:28,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:37:28
[2026-06-22 20:37:29,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:37:29,325.325 INFO    ] Initializing speech engine...
[2026-06-22 20:37:29,350.350 INFO    ] 2026-06-22 20:37:29
[2026-06-22 20:37:29,620.620 INFO    ] 2026-06-22 20:37:29
[2026-06-22 20:37:29,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:37:29,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:37:29,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:37:29,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:37:30,003.003 INFO    ] time= 22/06/2026 20:37:29
[2026-06-22 20:37:30,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:37:30,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:37:30,113.113 INFO    ] No existing commands found in stream
[2026-06-22 20:37:35,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:37:35,129.129 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-22 20:37:39,447.447 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:37:39,450.450 INFO    ] Checking for system updates...
[2026-06-22 20:37:39,486.486 INFO    ] 200
[2026-06-22 20:37:39,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:37:39,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:37:39,542.542 INFO    ] No update needed
[2026-06-22 20:37:39,545.545 INFO    ] Checking for camera pi updates...
[2026-06-22 20:37:39,578.578 INFO    ] 200
[2026-06-22 20:37:39,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:37:39,621.621 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:37:39,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:37:39,714.714 INFO    ] No camera update needed
[2026-06-22 20:37:39,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:37:39,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:37:39,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:37:39,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:37:41,769.769 INFO    ] ================================================
[2026-06-22 20:37:41,784.784 INFO    ] Launching Daemon at Mon Jun 22 20:37:41 IST 2026
[2026-06-22 20:37:41,795.795 INFO    ] ================================================
[2026-06-22 20:37:42,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:37:42
[2026-06-22 20:37:42,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:37:43,271.271 INFO    ] Initializing speech engine...
[2026-06-22 20:37:43,290.290 INFO    ] 2026-06-22 20:37:43
[2026-06-22 20:37:43,554.554 INFO    ] 2026-06-22 20:37:43
[2026-06-22 20:37:43,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:37:43,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:37:43,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:37:43,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:37:43,968.968 INFO    ] time= 22/06/2026 20:37:43
[2026-06-22 20:37:43,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:37:44,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:37:44,143.143 INFO    ] No existing commands found in stream
[2026-06-22 20:37:49,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:37:49,176.176 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-22 20:37:50,977.977 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:37:50,979.979 INFO    ] Checking for system updates...
[2026-06-22 20:37:50,999.999 INFO    ] 200
[2026-06-22 20:37:51,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:37:51,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:37:51,035.035 INFO    ] No update needed
[2026-06-22 20:37:51,036.036 INFO    ] Checking for camera pi updates...
[2026-06-22 20:37:51,055.055 INFO    ] 200
[2026-06-22 20:37:51,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:37:51,096.096 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:37:51,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:37:51,180.180 INFO    ] No camera update needed
[2026-06-22 20:37:51,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:37:51,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:37:51,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:37:51,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:37:53,235.235 INFO    ] ================================================
[2026-06-22 20:37:53,250.250 INFO    ] Launching Daemon at Mon Jun 22 20:37:53 IST 2026
[2026-06-22 20:37:53,260.260 INFO    ] ================================================
[2026-06-22 20:37:53,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:37:53
[2026-06-22 20:37:54,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:37:54,848.848 INFO    ] Initializing speech engine...
[2026-06-22 20:37:54,862.862 INFO    ] 2026-06-22 20:37:54
[2026-06-22 20:37:55,151.151 INFO    ] 2026-06-22 20:37:55
[2026-06-22 20:37:55,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:37:55,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:37:55,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:37:55,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:37:55,682.682 INFO    ] time= 22/06/2026 20:37:55
[2026-06-22 20:37:55,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:37:55,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:37:55,838.838 INFO    ] No existing commands found in stream
[2026-06-22 20:38:00,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:38:00,861.861 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-22 20:38:04,774.774 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:38:04,777.777 INFO    ] Checking for system updates...
[2026-06-22 20:38:04,814.814 INFO    ] 200
[2026-06-22 20:38:04,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:38:04,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:38:04,875.875 INFO    ] No update needed
[2026-06-22 20:38:04,878.878 INFO    ] Checking for camera pi updates...
[2026-06-22 20:38:04,911.911 INFO    ] 200
[2026-06-22 20:38:04,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:38:04,955.955 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:38:05,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:38:05,041.041 INFO    ] No camera update needed
[2026-06-22 20:38:05,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:38:05,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:38:05,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:38:05,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:38:07,098.098 INFO    ] ================================================
[2026-06-22 20:38:07,113.113 INFO    ] Launching Daemon at Mon Jun 22 20:38:07 IST 2026
[2026-06-22 20:38:07,123.123 INFO    ] ================================================
[2026-06-22 20:38:07,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:38:07
[2026-06-22 20:38:08,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:38:08,579.579 INFO    ] Initializing speech engine...
[2026-06-22 20:38:08,590.590 INFO    ] 2026-06-22 20:38:08
[2026-06-22 20:38:08,837.837 INFO    ] 2026-06-22 20:38:08
[2026-06-22 20:38:08,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:38:09,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:38:09,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:38:09,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:38:09,316.316 INFO    ] time= 22/06/2026 20:38:09
[2026-06-22 20:38:09,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:38:09,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:38:09,531.531 INFO    ] No existing commands found in stream
[2026-06-22 20:38:14,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:38:14,562.562 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-22 20:38:16,380.380 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:38:16,381.381 INFO    ] Checking for system updates...
[2026-06-22 20:38:16,402.402 INFO    ] 200
[2026-06-22 20:38:16,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:38:16,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:38:16,435.435 INFO    ] No update needed
[2026-06-22 20:38:16,437.437 INFO    ] Checking for camera pi updates...
[2026-06-22 20:38:16,457.457 INFO    ] 200
[2026-06-22 20:38:16,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:38:16,484.484 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:38:16,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:38:16,574.574 INFO    ] No camera update needed
[2026-06-22 20:38:16,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:38:16,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:38:16,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:38:16,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:38:18,631.631 INFO    ] ================================================
[2026-06-22 20:38:18,646.646 INFO    ] Launching Daemon at Mon Jun 22 20:38:18 IST 2026
[2026-06-22 20:38:18,657.657 INFO    ] ================================================
[2026-06-22 20:38:19,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:38:19
[2026-06-22 20:38:19,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:38:20,080.080 INFO    ] Initializing speech engine...
[2026-06-22 20:38:20,089.089 INFO    ] 2026-06-22 20:38:20
[2026-06-22 20:38:20,338.338 INFO    ] 2026-06-22 20:38:20
[2026-06-22 20:38:20,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:38:22,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:38:22,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:38:23,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:38:23,041.041 INFO    ] time= 22/06/2026 20:38:23
[2026-06-22 20:38:23,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:38:23,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:38:23,181.181 INFO    ] No existing commands found in stream
[2026-06-22 20:38:28,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:38:28,204.204 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-22 20:38:30,522.522 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:38:30,525.525 INFO    ] Checking for system updates...
[2026-06-22 20:38:30,565.565 INFO    ] 200
[2026-06-22 20:38:30,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:38:30,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:38:30,622.622 INFO    ] No update needed
[2026-06-22 20:38:30,624.624 INFO    ] Checking for camera pi updates...
[2026-06-22 20:38:30,658.658 INFO    ] 200
[2026-06-22 20:38:30,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:38:30,700.700 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:38:30,784.784 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:38:30,787.787 INFO    ] No camera update needed
[2026-06-22 20:38:30,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:38:30,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:38:30,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:38:30,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:38:32,845.845 INFO    ] ================================================
[2026-06-22 20:38:32,860.860 INFO    ] Launching Daemon at Mon Jun 22 20:38:32 IST 2026
[2026-06-22 20:38:32,871.871 INFO    ] ================================================
[2026-06-22 20:38:33,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:38:33
[2026-06-22 20:38:34,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:38:34,522.522 INFO    ] Initializing speech engine...
[2026-06-22 20:38:34,527.527 INFO    ] 2026-06-22 20:38:34
[2026-06-22 20:38:34,818.818 INFO    ] 2026-06-22 20:38:34
[2026-06-22 20:38:34,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:38:35,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:38:35,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:38:35,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:38:35,384.384 INFO    ] time= 22/06/2026 20:38:35
[2026-06-22 20:38:35,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:38:35,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:38:35,572.572 INFO    ] No existing commands found in stream
[2026-06-22 20:38:40,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:38:40,617.617 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-22 20:38:43,141.141 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:38:43,143.143 INFO    ] Checking for system updates...
[2026-06-22 20:38:43,165.165 INFO    ] 200
[2026-06-22 20:38:43,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:38:43,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:38:43,200.200 INFO    ] No update needed
[2026-06-22 20:38:43,201.201 INFO    ] Checking for camera pi updates...
[2026-06-22 20:38:43,225.225 INFO    ] 200
[2026-06-22 20:38:43,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:38:43,274.274 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:38:43,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:38:43,368.368 INFO    ] No camera update needed
[2026-06-22 20:38:43,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:38:43,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:38:43,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:38:43,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:38:45,424.424 INFO    ] ================================================
[2026-06-22 20:38:45,440.440 INFO    ] Launching Daemon at Mon Jun 22 20:38:45 IST 2026
[2026-06-22 20:38:45,451.451 INFO    ] ================================================
[2026-06-22 20:38:46,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:38:46
[2026-06-22 20:38:46,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:38:46,872.872 INFO    ] Initializing speech engine...
[2026-06-22 20:38:46,890.890 INFO    ] 2026-06-22 20:38:46
[2026-06-22 20:38:47,142.142 INFO    ] 2026-06-22 20:38:47
[2026-06-22 20:38:47,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:38:47,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:38:47,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:38:49,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:38:49,124.124 INFO    ] time= 22/06/2026 20:38:49
[2026-06-22 20:38:49,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:38:49,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:38:49,197.197 INFO    ] No existing commands found in stream
[2026-06-22 20:38:54,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:38:54,211.211 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-22 20:38:54,740.740 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:38:54,743.743 INFO    ] Checking for system updates...
[2026-06-22 20:38:54,784.784 INFO    ] 200
[2026-06-22 20:38:54,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:38:54,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:38:54,842.842 INFO    ] No update needed
[2026-06-22 20:38:54,845.845 INFO    ] Checking for camera pi updates...
[2026-06-22 20:38:54,883.883 INFO    ] 200
[2026-06-22 20:38:54,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:38:54,927.927 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:38:55,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:38:55,008.008 INFO    ] No camera update needed
[2026-06-22 20:38:55,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:38:55,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:38:55,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:38:55,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:38:57,066.066 INFO    ] ================================================
[2026-06-22 20:38:57,081.081 INFO    ] Launching Daemon at Mon Jun 22 20:38:57 IST 2026
[2026-06-22 20:38:57,092.092 INFO    ] ================================================
[2026-06-22 20:38:57,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:38:57
[2026-06-22 20:38:58,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:38:58,453.453 INFO    ] Initializing speech engine...
[2026-06-22 20:38:58,467.467 INFO    ] 2026-06-22 20:38:58
[2026-06-22 20:38:58,745.745 INFO    ] 2026-06-22 20:38:58
[2026-06-22 20:38:58,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:38:58,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:38:59,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:38:59,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:38:59,134.134 INFO    ] time= 22/06/2026 20:38:59
[2026-06-22 20:38:59,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:38:59,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:38:59,260.260 INFO    ] No existing commands found in stream
[2026-06-22 20:39:04,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:39:04,277.277 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-22 20:39:06,028.028 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:39:06,032.032 INFO    ] Checking for system updates...
[2026-06-22 20:39:06,100.100 INFO    ] 200
[2026-06-22 20:39:06,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:39:06,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:39:06,158.158 INFO    ] No update needed
[2026-06-22 20:39:06,160.160 INFO    ] Checking for camera pi updates...
[2026-06-22 20:39:06,195.195 INFO    ] 200
[2026-06-22 20:39:06,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:39:06,239.239 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:39:06,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:39:06,324.324 INFO    ] No camera update needed
[2026-06-22 20:39:06,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:39:06,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:39:06,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:39:06,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:39:08,380.380 INFO    ] ================================================
[2026-06-22 20:39:08,395.395 INFO    ] Launching Daemon at Mon Jun 22 20:39:08 IST 2026
[2026-06-22 20:39:08,406.406 INFO    ] ================================================
[2026-06-22 20:39:09,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:39:09
[2026-06-22 20:39:09,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:39:09,833.833 INFO    ] Initializing speech engine...
[2026-06-22 20:39:09,839.839 INFO    ] 2026-06-22 20:39:09
[2026-06-22 20:39:10,099.099 INFO    ] 2026-06-22 20:39:10
[2026-06-22 20:39:10,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:39:10,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:39:10,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:39:10,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:39:10,591.591 INFO    ] time= 22/06/2026 20:39:10
[2026-06-22 20:39:10,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:39:10,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:39:10,795.795 INFO    ] No existing commands found in stream
[2026-06-22 20:39:15,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:39:15,814.814 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-22 20:39:23,280.280 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:39:23,283.283 INFO    ] Checking for system updates...
[2026-06-22 20:39:23,323.323 INFO    ] 200
[2026-06-22 20:39:23,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:39:23,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:39:23,381.381 INFO    ] No update needed
[2026-06-22 20:39:23,383.383 INFO    ] Checking for camera pi updates...
[2026-06-22 20:39:23,420.420 INFO    ] 200
[2026-06-22 20:39:23,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:39:23,468.468 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:39:23,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:39:23,550.550 INFO    ] No camera update needed
[2026-06-22 20:39:23,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:39:23,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:39:23,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:39:23,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:39:25,605.605 INFO    ] ================================================
[2026-06-22 20:39:25,648.648 INFO    ] Launching Daemon at Mon Jun 22 20:39:25 IST 2026
[2026-06-22 20:39:25,659.659 INFO    ] ================================================
[2026-06-22 20:39:26,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:39:26
[2026-06-22 20:39:26,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:39:27,266.266 INFO    ] Initializing speech engine...
[2026-06-22 20:39:27,275.275 INFO    ] 2026-06-22 20:39:27
[2026-06-22 20:39:27,542.542 INFO    ] 2026-06-22 20:39:27
[2026-06-22 20:39:27,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:39:27,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:39:27,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:39:28,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:39:28,113.113 INFO    ] time= 22/06/2026 20:39:28
[2026-06-22 20:39:28,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:39:28,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:39:28,277.277 INFO    ] No existing commands found in stream
[2026-06-22 20:39:33,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:39:33,297.297 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-22 20:39:37,794.794 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:39:37,795.795 INFO    ] Checking for system updates...
[2026-06-22 20:39:37,827.827 INFO    ] 200
[2026-06-22 20:39:37,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:39:37,883.883 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:39:37,886.886 INFO    ] No update needed
[2026-06-22 20:39:37,889.889 INFO    ] Checking for camera pi updates...
[2026-06-22 20:39:37,922.922 INFO    ] 200
[2026-06-22 20:39:37,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:39:37,970.970 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:39:38,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:39:38,062.062 INFO    ] No camera update needed
[2026-06-22 20:39:38,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:39:38,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:39:38,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:39:38,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:39:40,117.117 INFO    ] ================================================
[2026-06-22 20:39:40,132.132 INFO    ] Launching Daemon at Mon Jun 22 20:39:40 IST 2026
[2026-06-22 20:39:40,143.143 INFO    ] ================================================
[2026-06-22 20:39:40,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:39:40
[2026-06-22 20:39:41,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:39:41,497.497 INFO    ] Initializing speech engine...
[2026-06-22 20:39:41,506.506 INFO    ] 2026-06-22 20:39:41
[2026-06-22 20:39:41,756.756 INFO    ] 2026-06-22 20:39:41
[2026-06-22 20:39:41,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:39:42,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:39:42,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:39:42,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:39:42,244.244 INFO    ] time= 22/06/2026 20:39:42
[2026-06-22 20:39:42,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:39:42,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:39:42,447.447 INFO    ] No existing commands found in stream
[2026-06-22 20:39:47,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:39:47,478.478 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-22 20:39:49,991.991 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:39:49,993.993 INFO    ] Checking for system updates...
[2026-06-22 20:39:50,015.015 INFO    ] 200
[2026-06-22 20:39:50,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:39:50,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:39:50,072.072 INFO    ] No update needed
[2026-06-22 20:39:50,075.075 INFO    ] Checking for camera pi updates...
[2026-06-22 20:39:50,108.108 INFO    ] 200
[2026-06-22 20:39:50,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:39:50,152.152 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:39:50,255.255 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:39:50,257.257 INFO    ] No camera update needed
[2026-06-22 20:39:50,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:39:50,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:39:50,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:39:50,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:39:52,314.314 INFO    ] ================================================
[2026-06-22 20:39:52,329.329 INFO    ] Launching Daemon at Mon Jun 22 20:39:52 IST 2026
[2026-06-22 20:39:52,340.340 INFO    ] ================================================
[2026-06-22 20:39:52,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:39:52
[2026-06-22 20:39:53,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:39:53,857.857 INFO    ] Initializing speech engine...
[2026-06-22 20:39:53,871.871 INFO    ] 2026-06-22 20:39:53
[2026-06-22 20:39:54,184.184 INFO    ] 2026-06-22 20:39:54
[2026-06-22 20:39:54,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:39:55,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:39:55,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:39:56,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:39:56,667.667 INFO    ] time= 22/06/2026 20:39:56
[2026-06-22 20:39:56,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:39:56,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:39:56,755.755 INFO    ] No existing commands found in stream
[2026-06-22 20:40:01,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:40:01,770.770 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-22 20:40:02,597.597 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:40:02,600.600 INFO    ] Checking for system updates...
[2026-06-22 20:40:02,658.658 INFO    ] 200
[2026-06-22 20:40:02,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:40:02,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:40:02,744.744 INFO    ] No update needed
[2026-06-22 20:40:02,748.748 INFO    ] Checking for camera pi updates...
[2026-06-22 20:40:02,803.803 INFO    ] 200
[2026-06-22 20:40:02,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:40:02,885.885 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:40:02,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:40:02,954.954 INFO    ] No camera update needed
[2026-06-22 20:40:02,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:40:02,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:40:02,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:40:02,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:40:05,019.019 INFO    ] ================================================
[2026-06-22 20:40:05,034.034 INFO    ] Launching Daemon at Mon Jun 22 20:40:05 IST 2026
[2026-06-22 20:40:05,045.045 INFO    ] ================================================
[2026-06-22 20:40:05,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:40:05
[2026-06-22 20:40:06,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:40:06,506.506 INFO    ] Initializing speech engine...
[2026-06-22 20:40:06,520.520 INFO    ] 2026-06-22 20:40:06
[2026-06-22 20:40:06,775.775 INFO    ] 2026-06-22 20:40:06
[2026-06-22 20:40:06,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:40:07,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:40:07,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:40:07,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:40:07,259.259 INFO    ] time= 22/06/2026 20:40:07
[2026-06-22 20:40:07,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:40:07,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:40:07,457.457 INFO    ] No existing commands found in stream
[2026-06-22 20:40:12,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:40:12,490.490 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-22 20:40:14,715.715 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:40:14,717.717 INFO    ] Checking for system updates...
[2026-06-22 20:40:14,743.743 INFO    ] 200
[2026-06-22 20:40:14,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:40:14,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:40:14,803.803 INFO    ] No update needed
[2026-06-22 20:40:14,806.806 INFO    ] Checking for camera pi updates...
[2026-06-22 20:40:14,841.841 INFO    ] 200
[2026-06-22 20:40:14,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:40:14,885.885 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:40:14,935.935 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:40:14,937.937 INFO    ] No camera update needed
[2026-06-22 20:40:14,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:40:14,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:40:14,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:40:14,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:40:16,994.994 INFO    ] ================================================
[2026-06-22 20:40:17,009.009 INFO    ] Launching Daemon at Mon Jun 22 20:40:17 IST 2026
[2026-06-22 20:40:17,026.026 INFO    ] ================================================
[2026-06-22 20:40:17,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:40:17
[2026-06-22 20:40:18,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:40:18,361.361 INFO    ] Initializing speech engine...
[2026-06-22 20:40:18,367.367 INFO    ] 2026-06-22 20:40:18
[2026-06-22 20:40:18,628.628 INFO    ] 2026-06-22 20:40:18
[2026-06-22 20:40:18,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:40:18,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:40:18,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:40:19,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:40:19,060.060 INFO    ] time= 22/06/2026 20:40:19
[2026-06-22 20:40:19,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:40:19,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:40:19,236.236 INFO    ] No existing commands found in stream
[2026-06-22 20:40:24,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:40:24,263.263 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-22 20:40:28,145.145 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:40:28,146.146 INFO    ] Checking for system updates...
[2026-06-22 20:40:28,180.180 INFO    ] 200
[2026-06-22 20:40:28,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:40:28,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:40:28,243.243 INFO    ] No update needed
[2026-06-22 20:40:28,245.245 INFO    ] Checking for camera pi updates...
[2026-06-22 20:40:28,279.279 INFO    ] 200
[2026-06-22 20:40:28,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:40:28,325.325 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:40:28,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:40:28,433.433 INFO    ] No camera update needed
[2026-06-22 20:40:28,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:40:28,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:40:28,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:40:28,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:40:30,487.487 INFO    ] ================================================
[2026-06-22 20:40:30,503.503 INFO    ] Launching Daemon at Mon Jun 22 20:40:30 IST 2026
[2026-06-22 20:40:30,513.513 INFO    ] ================================================
[2026-06-22 20:40:31,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:40:31
[2026-06-22 20:40:31,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:40:32,013.013 INFO    ] Initializing speech engine...
[2026-06-22 20:40:32,022.022 INFO    ] 2026-06-22 20:40:32
[2026-06-22 20:40:32,321.321 INFO    ] 2026-06-22 20:40:32
[2026-06-22 20:40:32,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:40:32,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:40:32,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:40:32,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:40:32,781.781 INFO    ] time= 22/06/2026 20:40:32
[2026-06-22 20:40:32,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:40:32,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:40:33,033.033 INFO    ] No existing commands found in stream
[2026-06-22 20:40:38,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:40:38,065.065 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-22 20:40:40,689.689 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:40:40,691.691 INFO    ] Checking for system updates...
[2026-06-22 20:40:40,712.712 INFO    ] 200
[2026-06-22 20:40:40,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:40:40,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:40:40,747.747 INFO    ] No update needed
[2026-06-22 20:40:40,748.748 INFO    ] Checking for camera pi updates...
[2026-06-22 20:40:40,774.774 INFO    ] 200
[2026-06-22 20:40:40,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:40:40,819.819 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:40:40,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:40:40,906.906 INFO    ] No camera update needed
[2026-06-22 20:40:40,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:40:40,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:40:40,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:40:40,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:40:42,962.962 INFO    ] ================================================
[2026-06-22 20:40:42,977.977 INFO    ] Launching Daemon at Mon Jun 22 20:40:42 IST 2026
[2026-06-22 20:40:42,987.987 INFO    ] ================================================
[2026-06-22 20:40:43,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:40:43
[2026-06-22 20:40:44,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:40:44,445.445 INFO    ] Initializing speech engine...
[2026-06-22 20:40:44,453.453 INFO    ] 2026-06-22 20:40:44
[2026-06-22 20:40:44,699.699 INFO    ] 2026-06-22 20:40:44
[2026-06-22 20:40:44,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:40:44,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:40:44,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:40:45,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:40:45,068.068 INFO    ] time= 22/06/2026 20:40:45
[2026-06-22 20:40:45,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:40:45,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:40:45,240.240 INFO    ] No existing commands found in stream
[2026-06-22 20:40:50,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:40:50,269.269 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-22 20:40:57,351.351 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:40:57,354.354 INFO    ] Checking for system updates...
[2026-06-22 20:40:57,390.390 INFO    ] 200
[2026-06-22 20:40:57,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:40:57,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:40:57,451.451 INFO    ] No update needed
[2026-06-22 20:40:57,453.453 INFO    ] Checking for camera pi updates...
[2026-06-22 20:40:57,487.487 INFO    ] 200
[2026-06-22 20:40:57,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:40:57,532.532 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:40:57,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:40:57,583.583 INFO    ] No camera update needed
[2026-06-22 20:40:57,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:40:57,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:40:57,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:40:57,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:40:59,643.643 INFO    ] ================================================
[2026-06-22 20:40:59,658.658 INFO    ] Launching Daemon at Mon Jun 22 20:40:59 IST 2026
[2026-06-22 20:40:59,669.669 INFO    ] ================================================
[2026-06-22 20:41:00,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:41:00
[2026-06-22 20:41:00,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:41:01,098.098 INFO    ] Initializing speech engine...
[2026-06-22 20:41:01,104.104 INFO    ] 2026-06-22 20:41:01
[2026-06-22 20:41:01,350.350 INFO    ] 2026-06-22 20:41:01
[2026-06-22 20:41:01,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:41:01,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:41:01,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:41:01,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:41:01,788.788 INFO    ] time= 22/06/2026 20:41:01
[2026-06-22 20:41:01,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:41:01,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:41:01,875.875 INFO    ] No existing commands found in stream
[2026-06-22 20:41:06,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:41:06,889.889 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-22 20:41:09,880.880 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:41:09,883.883 INFO    ] Checking for system updates...
[2026-06-22 20:41:09,924.924 INFO    ] 200
[2026-06-22 20:41:09,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:41:09,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:41:09,984.984 INFO    ] No update needed
[2026-06-22 20:41:09,987.987 INFO    ] Checking for camera pi updates...
[2026-06-22 20:41:10,026.026 INFO    ] 200
[2026-06-22 20:41:10,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:41:10,068.068 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:41:10,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:41:10,147.147 INFO    ] No camera update needed
[2026-06-22 20:41:10,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:41:10,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:41:10,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:41:10,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:41:12,205.205 INFO    ] ================================================
[2026-06-22 20:41:12,220.220 INFO    ] Launching Daemon at Mon Jun 22 20:41:12 IST 2026
[2026-06-22 20:41:12,231.231 INFO    ] ================================================
[2026-06-22 20:41:12,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:41:12
[2026-06-22 20:41:13,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:41:13,602.602 INFO    ] Initializing speech engine...
[2026-06-22 20:41:13,611.611 INFO    ] 2026-06-22 20:41:13
[2026-06-22 20:41:13,865.865 INFO    ] 2026-06-22 20:41:13
[2026-06-22 20:41:13,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:41:14,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:41:14,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:41:14,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:41:14,307.307 INFO    ] time= 22/06/2026 20:41:14
[2026-06-22 20:41:14,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:41:14,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:41:14,557.557 INFO    ] No existing commands found in stream
[2026-06-22 20:41:19,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:41:19,581.581 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-22 20:41:22,438.438 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:41:22,441.441 INFO    ] Checking for system updates...
[2026-06-22 20:41:22,484.484 INFO    ] 200
[2026-06-22 20:41:22,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:41:22,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:41:22,544.544 INFO    ] No update needed
[2026-06-22 20:41:22,547.547 INFO    ] Checking for camera pi updates...
[2026-06-22 20:41:22,582.582 INFO    ] 200
[2026-06-22 20:41:22,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:41:22,627.627 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:41:22,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:41:22,713.713 INFO    ] No camera update needed
[2026-06-22 20:41:22,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:41:22,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:41:22,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:41:22,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:41:24,773.773 INFO    ] ================================================
[2026-06-22 20:41:24,789.789 INFO    ] Launching Daemon at Mon Jun 22 20:41:24 IST 2026
[2026-06-22 20:41:24,800.800 INFO    ] ================================================
[2026-06-22 20:41:25,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:41:25
[2026-06-22 20:41:25,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:41:26,214.214 INFO    ] Initializing speech engine...
[2026-06-22 20:41:26,217.217 INFO    ] 2026-06-22 20:41:26
[2026-06-22 20:41:26,515.515 INFO    ] 2026-06-22 20:41:26
[2026-06-22 20:41:26,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:41:29,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:41:29,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:41:30,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:41:30,196.196 INFO    ] time= 22/06/2026 20:41:30
[2026-06-22 20:41:30,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:41:30,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:41:30,263.263 INFO    ] No existing commands found in stream
[2026-06-22 20:41:35,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:41:35,276.276 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-22 20:41:38,503.503 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:41:38,506.506 INFO    ] Checking for system updates...
[2026-06-22 20:41:38,546.546 INFO    ] 200
[2026-06-22 20:41:38,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:41:38,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:41:38,606.606 INFO    ] No update needed
[2026-06-22 20:41:38,608.608 INFO    ] Checking for camera pi updates...
[2026-06-22 20:41:38,643.643 INFO    ] 200
[2026-06-22 20:41:38,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:41:38,692.692 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:41:38,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:41:38,877.877 INFO    ] No camera update needed
[2026-06-22 20:41:38,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:41:38,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:41:38,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:41:38,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:41:40,933.933 INFO    ] ================================================
[2026-06-22 20:41:40,949.949 INFO    ] Launching Daemon at Mon Jun 22 20:41:40 IST 2026
[2026-06-22 20:41:40,959.959 INFO    ] ================================================
[2026-06-22 20:41:41,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:41:41
[2026-06-22 20:41:42,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:41:42,383.383 INFO    ] Initializing speech engine...
[2026-06-22 20:41:42,408.408 INFO    ] 2026-06-22 20:41:42
[2026-06-22 20:41:42,691.691 INFO    ] 2026-06-22 20:41:42
[2026-06-22 20:41:42,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:41:42,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:41:42,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:41:43,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:41:43,085.085 INFO    ] time= 22/06/2026 20:41:43
[2026-06-22 20:41:43,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:41:43,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:41:43,214.214 INFO    ] No existing commands found in stream
[2026-06-22 20:41:48,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:41:48,229.229 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-22 20:41:52,002.002 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:41:52,005.005 INFO    ] Checking for system updates...
[2026-06-22 20:41:52,048.048 INFO    ] 200
[2026-06-22 20:41:52,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:41:52,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:41:52,118.118 INFO    ] No update needed
[2026-06-22 20:41:52,121.121 INFO    ] Checking for camera pi updates...
[2026-06-22 20:41:52,157.157 INFO    ] 200
[2026-06-22 20:41:52,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:41:52,209.209 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:41:52,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:41:52,296.296 INFO    ] No camera update needed
[2026-06-22 20:41:52,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:41:52,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:41:52,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:41:52,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:41:54,352.352 INFO    ] ================================================
[2026-06-22 20:41:54,368.368 INFO    ] Launching Daemon at Mon Jun 22 20:41:54 IST 2026
[2026-06-22 20:41:54,378.378 INFO    ] ================================================
[2026-06-22 20:41:54,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:41:54
[2026-06-22 20:41:55,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:41:55,756.756 INFO    ] Initializing speech engine...
[2026-06-22 20:41:55,765.765 INFO    ] 2026-06-22 20:41:55
[2026-06-22 20:41:56,014.014 INFO    ] 2026-06-22 20:41:56
[2026-06-22 20:41:56,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:41:59,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:41:59,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:42:00,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:42:00,813.813 INFO    ] time= 22/06/2026 20:42:00
[2026-06-22 20:42:00,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:42:00,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:42:00,873.873 INFO    ] No existing commands found in stream
[2026-06-22 20:42:05,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:42:05,886.886 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-22 20:42:09,965.965 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:42:09,967.967 INFO    ] Checking for system updates...
[2026-06-22 20:42:10,004.004 INFO    ] 200
[2026-06-22 20:42:10,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:42:10,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:42:10,062.062 INFO    ] No update needed
[2026-06-22 20:42:10,064.064 INFO    ] Checking for camera pi updates...
[2026-06-22 20:42:10,099.099 INFO    ] 200
[2026-06-22 20:42:10,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:42:10,147.147 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:42:10,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:42:10,233.233 INFO    ] No camera update needed
[2026-06-22 20:42:10,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:42:10,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:42:10,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:42:10,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:42:12,289.289 INFO    ] ================================================
[2026-06-22 20:42:12,304.304 INFO    ] Launching Daemon at Mon Jun 22 20:42:12 IST 2026
[2026-06-22 20:42:12,315.315 INFO    ] ================================================
[2026-06-22 20:42:12,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:42:12
[2026-06-22 20:42:13,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:42:13,823.823 INFO    ] Initializing speech engine...
[2026-06-22 20:42:13,832.832 INFO    ] 2026-06-22 20:42:13
[2026-06-22 20:42:14,131.131 INFO    ] 2026-06-22 20:42:14
[2026-06-22 20:42:14,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:42:14,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:42:14,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:42:14,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:42:14,617.617 INFO    ] time= 22/06/2026 20:42:14
[2026-06-22 20:42:14,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:42:14,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:42:14,826.826 INFO    ] No existing commands found in stream
[2026-06-22 20:42:19,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:42:19,856.856 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-22 20:42:22,517.517 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:42:22,520.520 INFO    ] Checking for system updates...
[2026-06-22 20:42:22,558.558 INFO    ] 200
[2026-06-22 20:42:22,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:42:22,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:42:22,619.619 INFO    ] No update needed
[2026-06-22 20:42:22,622.622 INFO    ] Checking for camera pi updates...
[2026-06-22 20:42:22,661.661 INFO    ] 200
[2026-06-22 20:42:22,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:42:22,711.711 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:42:22,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:42:22,795.795 INFO    ] No camera update needed
[2026-06-22 20:42:22,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:42:22,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:42:22,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:42:22,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:42:24,855.855 INFO    ] ================================================
[2026-06-22 20:42:24,870.870 INFO    ] Launching Daemon at Mon Jun 22 20:42:24 IST 2026
[2026-06-22 20:42:24,881.881 INFO    ] ================================================
[2026-06-22 20:42:25,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:42:25
[2026-06-22 20:42:25,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:42:26,253.253 INFO    ] Initializing speech engine...
[2026-06-22 20:42:26,259.259 INFO    ] 2026-06-22 20:42:26
[2026-06-22 20:42:26,507.507 INFO    ] 2026-06-22 20:42:26
[2026-06-22 20:42:26,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:42:26,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:42:26,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:42:28,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:42:28,790.790 INFO    ] time= 22/06/2026 20:42:28
[2026-06-22 20:42:28,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:42:28,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:42:28,928.928 INFO    ] No existing commands found in stream
[2026-06-22 20:42:33,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:42:33,943.943 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-22 20:42:36,739.739 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:42:36,742.742 INFO    ] Checking for system updates...
[2026-06-22 20:42:36,778.778 INFO    ] 200
[2026-06-22 20:42:36,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:42:36,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:42:36,837.837 INFO    ] No update needed
[2026-06-22 20:42:36,839.839 INFO    ] Checking for camera pi updates...
[2026-06-22 20:42:36,877.877 INFO    ] 200
[2026-06-22 20:42:36,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:42:36,920.920 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:42:37,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:42:37,010.010 INFO    ] No camera update needed
[2026-06-22 20:42:37,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:42:37,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:42:37,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:42:37,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:42:39,067.067 INFO    ] ================================================
[2026-06-22 20:42:39,082.082 INFO    ] Launching Daemon at Mon Jun 22 20:42:39 IST 2026
[2026-06-22 20:42:39,093.093 INFO    ] ================================================
[2026-06-22 20:42:39,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:42:39
[2026-06-22 20:42:40,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:42:40,632.632 INFO    ] Initializing speech engine...
[2026-06-22 20:42:40,646.646 INFO    ] 2026-06-22 20:42:40
[2026-06-22 20:42:40,933.933 INFO    ] 2026-06-22 20:42:40
[2026-06-22 20:42:40,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:42:41,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:42:41,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:42:41,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:42:41,463.463 INFO    ] time= 22/06/2026 20:42:41
[2026-06-22 20:42:41,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:42:41,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:42:41,616.616 INFO    ] No existing commands found in stream
[2026-06-22 20:42:46,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:42:46,638.638 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-22 20:42:50,521.521 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:42:50,522.522 INFO    ] Checking for system updates...
[2026-06-22 20:42:50,545.545 INFO    ] 200
[2026-06-22 20:42:50,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:42:50,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:42:50,581.581 INFO    ] No update needed
[2026-06-22 20:42:50,583.583 INFO    ] Checking for camera pi updates...
[2026-06-22 20:42:50,603.603 INFO    ] 200
[2026-06-22 20:42:50,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:42:50,641.641 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:42:50,723.723 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:42:50,726.726 INFO    ] No camera update needed
[2026-06-22 20:42:50,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:42:50,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:42:50,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:42:50,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:42:52,785.785 INFO    ] ================================================
[2026-06-22 20:42:52,799.799 INFO    ] Launching Daemon at Mon Jun 22 20:42:52 IST 2026
[2026-06-22 20:42:52,810.810 INFO    ] ================================================
[2026-06-22 20:42:53,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:42:53
[2026-06-22 20:42:53,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:42:54,194.194 INFO    ] Initializing speech engine...
[2026-06-22 20:42:54,200.200 INFO    ] 2026-06-22 20:42:54
[2026-06-22 20:42:54,462.462 INFO    ] 2026-06-22 20:42:54
[2026-06-22 20:42:54,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:42:54,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:42:54,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:42:54,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:42:54,919.919 INFO    ] time= 22/06/2026 20:42:54
[2026-06-22 20:42:54,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:42:55,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:42:55,139.139 INFO    ] No existing commands found in stream
[2026-06-22 20:43:00,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:43:00,174.174 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-22 20:43:04,359.359 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:43:04,361.361 INFO    ] Checking for system updates...
[2026-06-22 20:43:04,397.397 INFO    ] 200
[2026-06-22 20:43:04,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:43:04,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:43:04,457.457 INFO    ] No update needed
[2026-06-22 20:43:04,460.460 INFO    ] Checking for camera pi updates...
[2026-06-22 20:43:04,498.498 INFO    ] 200
[2026-06-22 20:43:04,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:43:04,541.541 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:43:04,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:43:04,615.615 INFO    ] No camera update needed
[2026-06-22 20:43:04,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:43:04,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:43:04,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:43:04,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:43:06,672.672 INFO    ] ================================================
[2026-06-22 20:43:06,691.691 INFO    ] Launching Daemon at Mon Jun 22 20:43:06 IST 2026
[2026-06-22 20:43:06,702.702 INFO    ] ================================================
[2026-06-22 20:43:07,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:43:07
[2026-06-22 20:43:07,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:43:08,172.172 INFO    ] Initializing speech engine...
[2026-06-22 20:43:08,183.183 INFO    ] 2026-06-22 20:43:08
[2026-06-22 20:43:08,441.441 INFO    ] 2026-06-22 20:43:08
[2026-06-22 20:43:08,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:43:08,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:43:08,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:43:08,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:43:08,989.989 INFO    ] time= 22/06/2026 20:43:08
[2026-06-22 20:43:08,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:43:09,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:43:09,125.125 INFO    ] No existing commands found in stream
[2026-06-22 20:43:14,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:43:14,156.156 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-22 20:43:16,923.923 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:43:16,926.926 INFO    ] Checking for system updates...
[2026-06-22 20:43:16,964.964 INFO    ] 200
[2026-06-22 20:43:16,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:43:17,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:43:17,023.023 INFO    ] No update needed
[2026-06-22 20:43:17,026.026 INFO    ] Checking for camera pi updates...
[2026-06-22 20:43:17,065.065 INFO    ] 200
[2026-06-22 20:43:17,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:43:17,110.110 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:43:17,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:43:17,198.198 INFO    ] No camera update needed
[2026-06-22 20:43:17,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:43:17,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:43:17,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:43:17,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:43:19,257.257 INFO    ] ================================================
[2026-06-22 20:43:19,273.273 INFO    ] Launching Daemon at Mon Jun 22 20:43:19 IST 2026
[2026-06-22 20:43:19,283.283 INFO    ] ================================================
[2026-06-22 20:43:19,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:43:19
[2026-06-22 20:43:20,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:43:20,717.717 INFO    ] Initializing speech engine...
[2026-06-22 20:43:20,722.722 INFO    ] 2026-06-22 20:43:20
[2026-06-22 20:43:20,968.968 INFO    ] 2026-06-22 20:43:20
[2026-06-22 20:43:21,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:43:21,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:43:21,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:43:21,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:43:21,434.434 INFO    ] time= 22/06/2026 20:43:21
[2026-06-22 20:43:21,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:43:21,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:43:21,627.627 INFO    ] No existing commands found in stream
[2026-06-22 20:43:26,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:43:26,644.644 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-22 20:43:28,538.538 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:43:28,541.541 INFO    ] Checking for system updates...
[2026-06-22 20:43:28,578.578 INFO    ] 200
[2026-06-22 20:43:28,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:43:28,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:43:28,636.636 INFO    ] No update needed
[2026-06-22 20:43:28,639.639 INFO    ] Checking for camera pi updates...
[2026-06-22 20:43:28,673.673 INFO    ] 200
[2026-06-22 20:43:28,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:43:28,717.717 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:43:28,811.811 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:43:28,814.814 INFO    ] No camera update needed
[2026-06-22 20:43:28,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:43:28,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:43:28,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:43:28,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:43:30,870.870 INFO    ] ================================================
[2026-06-22 20:43:30,885.885 INFO    ] Launching Daemon at Mon Jun 22 20:43:30 IST 2026
[2026-06-22 20:43:30,896.896 INFO    ] ================================================
[2026-06-22 20:43:31,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:43:31
[2026-06-22 20:43:32,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:43:32,355.355 INFO    ] Initializing speech engine...
[2026-06-22 20:43:32,365.365 INFO    ] 2026-06-22 20:43:32
[2026-06-22 20:43:32,633.633 INFO    ] 2026-06-22 20:43:32
[2026-06-22 20:43:32,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:43:34,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:43:34,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:43:34,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:43:34,680.680 INFO    ] time= 22/06/2026 20:43:34
[2026-06-22 20:43:34,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:43:34,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:43:34,790.790 INFO    ] No existing commands found in stream
[2026-06-22 20:43:39,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:43:39,818.818 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-22 20:43:41,733.733 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:43:41,736.736 INFO    ] Checking for system updates...
[2026-06-22 20:43:41,772.772 INFO    ] 200
[2026-06-22 20:43:41,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:43:41,837.837 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:43:41,839.839 INFO    ] No update needed
[2026-06-22 20:43:41,842.842 INFO    ] Checking for camera pi updates...
[2026-06-22 20:43:41,883.883 INFO    ] 200
[2026-06-22 20:43:41,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:43:41,932.932 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:43:42,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:43:42,113.113 INFO    ] No camera update needed
[2026-06-22 20:43:42,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:43:42,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:43:42,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:43:42,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:43:44,168.168 INFO    ] ================================================
[2026-06-22 20:43:44,183.183 INFO    ] Launching Daemon at Mon Jun 22 20:43:44 IST 2026
[2026-06-22 20:43:44,194.194 INFO    ] ================================================
[2026-06-22 20:43:44,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:43:44
[2026-06-22 20:43:45,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:43:45,501.501 INFO    ] Initializing speech engine...
[2026-06-22 20:43:45,516.516 INFO    ] 2026-06-22 20:43:45
[2026-06-22 20:43:45,782.782 INFO    ] 2026-06-22 20:43:45
[2026-06-22 20:43:45,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:43:45,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:43:46,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:43:46,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:43:46,161.161 INFO    ] time= 22/06/2026 20:43:46
[2026-06-22 20:43:46,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:43:46,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:43:46,343.343 INFO    ] No existing commands found in stream
[2026-06-22 20:43:51,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:43:51,376.376 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-22 20:43:52,681.681 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:43:52,684.684 INFO    ] Checking for system updates...
[2026-06-22 20:43:52,721.721 INFO    ] 200
[2026-06-22 20:43:52,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:43:52,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:43:52,781.781 INFO    ] No update needed
[2026-06-22 20:43:52,784.784 INFO    ] Checking for camera pi updates...
[2026-06-22 20:43:52,818.818 INFO    ] 200
[2026-06-22 20:43:52,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:43:52,862.862 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:43:52,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:43:52,953.953 INFO    ] No camera update needed
[2026-06-22 20:43:52,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:43:52,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:43:52,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:43:52,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:43:55,011.011 INFO    ] ================================================
[2026-06-22 20:43:55,026.026 INFO    ] Launching Daemon at Mon Jun 22 20:43:55 IST 2026
[2026-06-22 20:43:55,037.037 INFO    ] ================================================
[2026-06-22 20:43:55,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:43:55
[2026-06-22 20:43:56,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:43:56,438.438 INFO    ] Initializing speech engine...
[2026-06-22 20:43:56,457.457 INFO    ] 2026-06-22 20:43:56
[2026-06-22 20:43:56,717.717 INFO    ] 2026-06-22 20:43:56
[2026-06-22 20:43:56,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:43:56,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:43:56,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:43:57,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:43:57,096.096 INFO    ] time= 22/06/2026 20:43:57
[2026-06-22 20:43:57,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:43:57,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:43:57,297.297 INFO    ] No existing commands found in stream
[2026-06-22 20:44:02,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:44:02,310.310 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-22 20:44:05,784.784 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:44:05,787.787 INFO    ] Checking for system updates...
[2026-06-22 20:44:05,824.824 INFO    ] 200
[2026-06-22 20:44:05,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:44:05,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:44:05,884.884 INFO    ] No update needed
[2026-06-22 20:44:05,887.887 INFO    ] Checking for camera pi updates...
[2026-06-22 20:44:05,922.922 INFO    ] 200
[2026-06-22 20:44:05,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:44:05,966.966 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:44:06,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:44:06,053.053 INFO    ] No camera update needed
[2026-06-22 20:44:06,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:44:06,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:44:06,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:44:06,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:44:08,112.112 INFO    ] ================================================
[2026-06-22 20:44:08,127.127 INFO    ] Launching Daemon at Mon Jun 22 20:44:08 IST 2026
[2026-06-22 20:44:08,138.138 INFO    ] ================================================
[2026-06-22 20:44:08,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:44:08
[2026-06-22 20:44:09,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:44:09,643.643 INFO    ] Initializing speech engine...
[2026-06-22 20:44:09,652.652 INFO    ] 2026-06-22 20:44:09
[2026-06-22 20:44:09,910.910 INFO    ] 2026-06-22 20:44:09
[2026-06-22 20:44:09,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:44:10,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:44:10,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:44:10,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:44:10,371.371 INFO    ] time= 22/06/2026 20:44:10
[2026-06-22 20:44:10,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:44:10,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:44:10,595.595 INFO    ] No existing commands found in stream
[2026-06-22 20:44:15,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:44:15,630.630 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-22 20:44:17,964.964 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:44:17,967.967 INFO    ] Checking for system updates...
[2026-06-22 20:44:18,008.008 INFO    ] 200
[2026-06-22 20:44:18,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:44:18,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:44:18,067.067 INFO    ] No update needed
[2026-06-22 20:44:18,070.070 INFO    ] Checking for camera pi updates...
[2026-06-22 20:44:18,105.105 INFO    ] 200
[2026-06-22 20:44:18,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:44:18,150.150 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:44:18,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:44:18,236.236 INFO    ] No camera update needed
[2026-06-22 20:44:18,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:44:18,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:44:18,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:44:18,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:44:20,294.294 INFO    ] ================================================
[2026-06-22 20:44:20,309.309 INFO    ] Launching Daemon at Mon Jun 22 20:44:20 IST 2026
[2026-06-22 20:44:20,320.320 INFO    ] ================================================
[2026-06-22 20:44:20,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:44:20
[2026-06-22 20:44:21,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:44:21,778.778 INFO    ] Initializing speech engine...
[2026-06-22 20:44:21,785.785 INFO    ] 2026-06-22 20:44:21
[2026-06-22 20:44:22,032.032 INFO    ] 2026-06-22 20:44:22
[2026-06-22 20:44:22,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:44:22,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:44:22,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:44:22,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:44:22,444.444 INFO    ] time= 22/06/2026 20:44:22
[2026-06-22 20:44:22,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:44:22,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:44:22,626.626 INFO    ] No existing commands found in stream
[2026-06-22 20:44:27,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:44:27,654.654 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-22 20:44:30,455.455 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:44:30,458.458 INFO    ] Checking for system updates...
[2026-06-22 20:44:30,494.494 INFO    ] 200
[2026-06-22 20:44:30,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:44:30,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:44:30,552.552 INFO    ] No update needed
[2026-06-22 20:44:30,554.554 INFO    ] Checking for camera pi updates...
[2026-06-22 20:44:30,588.588 INFO    ] 200
[2026-06-22 20:44:30,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:44:30,635.635 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:44:30,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:44:30,722.722 INFO    ] No camera update needed
[2026-06-22 20:44:30,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:44:30,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:44:30,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:44:30,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:44:32,779.779 INFO    ] ================================================
[2026-06-22 20:44:32,795.795 INFO    ] Launching Daemon at Mon Jun 22 20:44:32 IST 2026
[2026-06-22 20:44:32,805.805 INFO    ] ================================================
[2026-06-22 20:44:33,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:44:33
[2026-06-22 20:44:33,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:44:34,224.224 INFO    ] Initializing speech engine...
[2026-06-22 20:44:34,233.233 INFO    ] 2026-06-22 20:44:34
[2026-06-22 20:44:34,478.478 INFO    ] 2026-06-22 20:44:34
[2026-06-22 20:44:34,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:44:36,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:44:37,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:44:37,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:44:37,735.735 INFO    ] time= 22/06/2026 20:44:37
[2026-06-22 20:44:37,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:44:37,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:44:37,792.792 INFO    ] No existing commands found in stream
[2026-06-22 20:44:42,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:44:42,804.804 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-22 20:44:44,734.734 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:44:44,736.736 INFO    ] Checking for system updates...
[2026-06-22 20:44:44,756.756 INFO    ] 200
[2026-06-22 20:44:44,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:44:44,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:44:44,789.789 INFO    ] No update needed
[2026-06-22 20:44:44,791.791 INFO    ] Checking for camera pi updates...
[2026-06-22 20:44:44,810.810 INFO    ] 200
[2026-06-22 20:44:44,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:44:44,843.843 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:44:44,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:44:44,931.931 INFO    ] No camera update needed
[2026-06-22 20:44:44,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:44:44,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:44:44,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:44:44,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:44:46,987.987 INFO    ] ================================================
[2026-06-22 20:44:47,002.002 INFO    ] Launching Daemon at Mon Jun 22 20:44:46 IST 2026
[2026-06-22 20:44:47,012.012 INFO    ] ================================================
[2026-06-22 20:44:47,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:44:47
[2026-06-22 20:44:48,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:44:48,435.435 INFO    ] Initializing speech engine...
[2026-06-22 20:44:48,448.448 INFO    ] 2026-06-22 20:44:48
[2026-06-22 20:44:48,701.701 INFO    ] 2026-06-22 20:44:48
[2026-06-22 20:44:48,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:44:48,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:44:48,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:44:49,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:44:49,256.256 INFO    ] time= 22/06/2026 20:44:49
[2026-06-22 20:44:49,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:44:49,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:44:49,397.397 INFO    ] No existing commands found in stream
[2026-06-22 20:44:54,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:44:54,427.427 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-22 20:45:00,217.217 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:45:00,219.219 INFO    ] Checking for system updates...
[2026-06-22 20:45:00,240.240 INFO    ] 200
[2026-06-22 20:45:00,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:45:00,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:45:00,286.286 INFO    ] No update needed
[2026-06-22 20:45:00,289.289 INFO    ] Checking for camera pi updates...
[2026-06-22 20:45:00,322.322 INFO    ] 200
[2026-06-22 20:45:00,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:45:00,365.365 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:45:00,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:45:00,430.430 INFO    ] No camera update needed
[2026-06-22 20:45:00,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:45:00,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:45:00,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:45:00,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:45:02,523.523 INFO    ] ================================================
[2026-06-22 20:45:02,545.545 INFO    ] Launching Daemon at Mon Jun 22 20:45:02 IST 2026
[2026-06-22 20:45:02,559.559 INFO    ] ================================================
[2026-06-22 20:45:03,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:45:03
[2026-06-22 20:45:03,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:45:04,157.157 INFO    ] Initializing speech engine...
[2026-06-22 20:45:04,167.167 INFO    ] 2026-06-22 20:45:04
[2026-06-22 20:45:04,412.412 INFO    ] 2026-06-22 20:45:04
[2026-06-22 20:45:04,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:45:08,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:45:08,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:45:09,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:45:09,796.796 INFO    ] time= 22/06/2026 20:45:09
[2026-06-22 20:45:09,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:45:09,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:45:09,852.852 INFO    ] No existing commands found in stream
[2026-06-22 20:45:14,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:45:14,865.865 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-22 20:45:17,334.334 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:45:17,344.344 INFO    ] Checking for system updates...
[2026-06-22 20:45:17,395.395 INFO    ] 200
[2026-06-22 20:45:17,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:45:17,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:45:17,455.455 INFO    ] No update needed
[2026-06-22 20:45:17,458.458 INFO    ] Checking for camera pi updates...
[2026-06-22 20:45:17,494.494 INFO    ] 200
[2026-06-22 20:45:17,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:45:17,539.539 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:45:17,622.622 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:45:17,625.625 INFO    ] No camera update needed
[2026-06-22 20:45:17,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:45:17,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:45:17,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:45:17,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:45:19,685.685 INFO    ] ================================================
[2026-06-22 20:45:19,700.700 INFO    ] Launching Daemon at Mon Jun 22 20:45:19 IST 2026
[2026-06-22 20:45:19,712.712 INFO    ] ================================================
[2026-06-22 20:45:20,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:45:20
[2026-06-22 20:45:20,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:45:21,077.077 INFO    ] Initializing speech engine...
[2026-06-22 20:45:21,087.087 INFO    ] 2026-06-22 20:45:21
[2026-06-22 20:45:21,349.349 INFO    ] 2026-06-22 20:45:21
[2026-06-22 20:45:21,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:45:21,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:45:21,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:45:21,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:45:21,837.837 INFO    ] time= 22/06/2026 20:45:21
[2026-06-22 20:45:21,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:45:21,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:45:22,028.028 INFO    ] No existing commands found in stream
[2026-06-22 20:45:27,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:45:27,061.061 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-22 20:45:27,894.894 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:45:27,897.897 INFO    ] Checking for system updates...
[2026-06-22 20:45:27,937.937 INFO    ] 200
[2026-06-22 20:45:27,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:45:27,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:45:27,995.995 INFO    ] No update needed
[2026-06-22 20:45:27,998.998 INFO    ] Checking for camera pi updates...
[2026-06-22 20:45:28,031.031 INFO    ] 200
[2026-06-22 20:45:28,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:45:28,074.074 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:45:28,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:45:28,160.160 INFO    ] No camera update needed
[2026-06-22 20:45:28,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:45:28,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:45:28,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:45:28,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:45:30,217.217 INFO    ] ================================================
[2026-06-22 20:45:30,233.233 INFO    ] Launching Daemon at Mon Jun 22 20:45:30 IST 2026
[2026-06-22 20:45:30,243.243 INFO    ] ================================================
[2026-06-22 20:45:30,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:45:30
[2026-06-22 20:45:31,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:45:31,896.896 INFO    ] Initializing speech engine...
[2026-06-22 20:45:31,909.909 INFO    ] 2026-06-22 20:45:31
[2026-06-22 20:45:32,200.200 INFO    ] 2026-06-22 20:45:32
[2026-06-22 20:45:32,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:45:32,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:45:32,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:45:32,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:45:32,964.964 INFO    ] time= 22/06/2026 20:45:32
[2026-06-22 20:45:33,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:45:33,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:45:33,193.193 INFO    ] No existing commands found in stream
[2026-06-22 20:45:38,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:45:38,229.229 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-22 20:45:41,394.394 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:45:41,397.397 INFO    ] Checking for system updates...
[2026-06-22 20:45:41,439.439 INFO    ] 200
[2026-06-22 20:45:41,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:45:41,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:45:41,497.497 INFO    ] No update needed
[2026-06-22 20:45:41,503.503 INFO    ] Checking for camera pi updates...
[2026-06-22 20:45:41,537.537 INFO    ] 200
[2026-06-22 20:45:41,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:45:41,581.581 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:45:41,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:45:41,673.673 INFO    ] No camera update needed
[2026-06-22 20:45:41,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:45:41,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:45:41,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:45:41,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:45:43,729.729 INFO    ] ================================================
[2026-06-22 20:45:43,745.745 INFO    ] Launching Daemon at Mon Jun 22 20:45:43 IST 2026
[2026-06-22 20:45:43,756.756 INFO    ] ================================================
[2026-06-22 20:45:44,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:45:44
[2026-06-22 20:45:44,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:45:45,229.229 INFO    ] Initializing speech engine...
[2026-06-22 20:45:45,240.240 INFO    ] 2026-06-22 20:45:45
[2026-06-22 20:45:45,510.510 INFO    ] 2026-06-22 20:45:45
[2026-06-22 20:45:45,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:45:45,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:45:45,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:45:45,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:45:46,023.023 INFO    ] time= 22/06/2026 20:45:45
[2026-06-22 20:45:46,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:45:46,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:45:46,240.240 INFO    ] No existing commands found in stream
[2026-06-22 20:45:51,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:45:51,258.258 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-22 20:45:52,811.811 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:45:52,814.814 INFO    ] Checking for system updates...
[2026-06-22 20:45:52,852.852 INFO    ] 200
[2026-06-22 20:45:52,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:45:52,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:45:52,912.912 INFO    ] No update needed
[2026-06-22 20:45:52,915.915 INFO    ] Checking for camera pi updates...
[2026-06-22 20:45:52,950.950 INFO    ] 200
[2026-06-22 20:45:52,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:45:52,995.995 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:45:53,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:45:53,172.172 INFO    ] No camera update needed
[2026-06-22 20:45:53,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:45:53,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:45:53,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:45:53,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:45:55,231.231 INFO    ] ================================================
[2026-06-22 20:45:55,246.246 INFO    ] Launching Daemon at Mon Jun 22 20:45:55 IST 2026
[2026-06-22 20:45:55,257.257 INFO    ] ================================================
[2026-06-22 20:45:55,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:45:55
[2026-06-22 20:45:56,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:45:56,653.653 INFO    ] Initializing speech engine...
[2026-06-22 20:45:56,662.662 INFO    ] 2026-06-22 20:45:56
[2026-06-22 20:45:56,923.923 INFO    ] 2026-06-22 20:45:56
[2026-06-22 20:45:56,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:45:57,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:45:57,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:45:57,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:45:57,376.376 INFO    ] time= 22/06/2026 20:45:57
[2026-06-22 20:45:57,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:45:57,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:45:57,596.596 INFO    ] No existing commands found in stream
[2026-06-22 20:46:02,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:46:02,631.631 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-22 20:46:05,675.675 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:46:05,677.677 INFO    ] Checking for system updates...
[2026-06-22 20:46:05,713.713 INFO    ] 200
[2026-06-22 20:46:05,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:46:05,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:46:05,771.771 INFO    ] No update needed
[2026-06-22 20:46:05,773.773 INFO    ] Checking for camera pi updates...
[2026-06-22 20:46:05,807.807 INFO    ] 200
[2026-06-22 20:46:05,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:46:05,850.850 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:46:05,921.921 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:46:05,926.926 INFO    ] No camera update needed
[2026-06-22 20:46:05,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:46:05,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:46:05,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:46:05,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:46:07,987.987 INFO    ] ================================================
[2026-06-22 20:46:08,002.002 INFO    ] Launching Daemon at Mon Jun 22 20:46:07 IST 2026
[2026-06-22 20:46:08,013.013 INFO    ] ================================================
[2026-06-22 20:46:08,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:46:08
[2026-06-22 20:46:09,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:46:09,461.461 INFO    ] Initializing speech engine...
[2026-06-22 20:46:09,467.467 INFO    ] 2026-06-22 20:46:09
[2026-06-22 20:46:09,760.760 INFO    ] 2026-06-22 20:46:09
[2026-06-22 20:46:09,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:46:11,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:46:11,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:46:12,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:46:12,789.789 INFO    ] time= 22/06/2026 20:46:12
[2026-06-22 20:46:12,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:46:12,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:46:12,871.871 INFO    ] No existing commands found in stream
[2026-06-22 20:46:17,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:46:17,883.883 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-22 20:46:19,780.780 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:46:19,783.783 INFO    ] Checking for system updates...
[2026-06-22 20:46:19,819.819 INFO    ] 200
[2026-06-22 20:46:19,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:46:19,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:46:19,878.878 INFO    ] No update needed
[2026-06-22 20:46:19,881.881 INFO    ] Checking for camera pi updates...
[2026-06-22 20:46:19,918.918 INFO    ] 200
[2026-06-22 20:46:19,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:46:19,965.965 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:46:20,050.050 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:46:20,052.052 INFO    ] No camera update needed
[2026-06-22 20:46:20,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:46:20,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:46:20,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:46:20,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:46:22,107.107 INFO    ] ================================================
[2026-06-22 20:46:22,122.122 INFO    ] Launching Daemon at Mon Jun 22 20:46:22 IST 2026
[2026-06-22 20:46:22,133.133 INFO    ] ================================================
[2026-06-22 20:46:22,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:46:22
[2026-06-22 20:46:23,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:46:23,559.559 INFO    ] Initializing speech engine...
[2026-06-22 20:46:23,568.568 INFO    ] 2026-06-22 20:46:23
[2026-06-22 20:46:23,814.814 INFO    ] 2026-06-22 20:46:23
[2026-06-22 20:46:23,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:46:24,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:46:24,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:46:24,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:46:24,324.324 INFO    ] time= 22/06/2026 20:46:24
[2026-06-22 20:46:24,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:46:24,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:46:24,504.504 INFO    ] No existing commands found in stream
[2026-06-22 20:46:29,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:46:29,538.538 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-22 20:46:33,445.445 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:46:33,448.448 INFO    ] Checking for system updates...
[2026-06-22 20:46:33,485.485 INFO    ] 200
[2026-06-22 20:46:33,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:46:33,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:46:33,551.551 INFO    ] No update needed
[2026-06-22 20:46:33,553.553 INFO    ] Checking for camera pi updates...
[2026-06-22 20:46:33,588.588 INFO    ] 200
[2026-06-22 20:46:33,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:46:33,636.636 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:46:33,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:46:33,723.723 INFO    ] No camera update needed
[2026-06-22 20:46:33,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:46:33,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:46:33,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:46:33,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:46:35,782.782 INFO    ] ================================================
[2026-06-22 20:46:35,797.797 INFO    ] Launching Daemon at Mon Jun 22 20:46:35 IST 2026
[2026-06-22 20:46:35,808.808 INFO    ] ================================================
[2026-06-22 20:46:36,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:46:36
[2026-06-22 20:46:36,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:46:37,275.275 INFO    ] Initializing speech engine...
[2026-06-22 20:46:37,281.281 INFO    ] 2026-06-22 20:46:37
[2026-06-22 20:46:37,544.544 INFO    ] 2026-06-22 20:46:37
[2026-06-22 20:46:37,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:46:41,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:46:41,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:46:42,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:46:42,454.454 INFO    ] time= 22/06/2026 20:46:42
[2026-06-22 20:46:42,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:46:42,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:46:42,522.522 INFO    ] No existing commands found in stream
[2026-06-22 20:46:47,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:46:47,534.534 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-22 20:46:50,789.789 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:46:50,791.791 INFO    ] Checking for system updates...
[2026-06-22 20:46:50,828.828 INFO    ] 200
[2026-06-22 20:46:50,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:46:50,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:46:50,886.886 INFO    ] No update needed
[2026-06-22 20:46:50,889.889 INFO    ] Checking for camera pi updates...
[2026-06-22 20:46:50,922.922 INFO    ] 200
[2026-06-22 20:46:50,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:46:50,966.966 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:46:51,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:46:51,029.029 INFO    ] No camera update needed
[2026-06-22 20:46:51,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:46:51,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:46:51,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:46:51,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:46:53,087.087 INFO    ] ================================================
[2026-06-22 20:46:53,103.103 INFO    ] Launching Daemon at Mon Jun 22 20:46:53 IST 2026
[2026-06-22 20:46:53,116.116 INFO    ] ================================================
[2026-06-22 20:46:53,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:46:53
[2026-06-22 20:46:54,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:46:54,596.596 INFO    ] Initializing speech engine...
[2026-06-22 20:46:54,614.614 INFO    ] 2026-06-22 20:46:54
[2026-06-22 20:46:54,887.887 INFO    ] 2026-06-22 20:46:54
[2026-06-22 20:46:54,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:46:55,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:46:55,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:46:55,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:46:55,387.387 INFO    ] time= 22/06/2026 20:46:55
[2026-06-22 20:46:55,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:46:55,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:46:55,600.600 INFO    ] No existing commands found in stream
[2026-06-22 20:47:00,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:47:00,637.637 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-22 20:47:02,858.858 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:47:02,861.861 INFO    ] Checking for system updates...
[2026-06-22 20:47:02,909.909 INFO    ] 200
[2026-06-22 20:47:02,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:47:02,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:47:02,977.977 INFO    ] No update needed
[2026-06-22 20:47:02,980.980 INFO    ] Checking for camera pi updates...
[2026-06-22 20:47:03,014.014 INFO    ] 200
[2026-06-22 20:47:03,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:47:03,057.057 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:47:03,136.136 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:47:03,139.139 INFO    ] No camera update needed
[2026-06-22 20:47:03,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:47:03,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:47:03,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:47:03,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:47:05,195.195 INFO    ] ================================================
[2026-06-22 20:47:05,210.210 INFO    ] Launching Daemon at Mon Jun 22 20:47:05 IST 2026
[2026-06-22 20:47:05,222.222 INFO    ] ================================================
[2026-06-22 20:47:05,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:47:05
[2026-06-22 20:47:06,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:47:06,699.699 INFO    ] Initializing speech engine...
[2026-06-22 20:47:06,708.708 INFO    ] 2026-06-22 20:47:06
[2026-06-22 20:47:06,967.967 INFO    ] 2026-06-22 20:47:06
[2026-06-22 20:47:06,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:47:07,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:47:07,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:47:07,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:47:07,515.515 INFO    ] time= 22/06/2026 20:47:07
[2026-06-22 20:47:07,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:47:07,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:47:07,668.668 INFO    ] No existing commands found in stream
[2026-06-22 20:47:12,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:47:12,688.688 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-22 20:47:15,168.168 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:47:15,170.170 INFO    ] Checking for system updates...
[2026-06-22 20:47:15,207.207 INFO    ] 200
[2026-06-22 20:47:15,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:47:15,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:47:15,266.266 INFO    ] No update needed
[2026-06-22 20:47:15,268.268 INFO    ] Checking for camera pi updates...
[2026-06-22 20:47:15,302.302 INFO    ] 200
[2026-06-22 20:47:15,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:47:15,345.345 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:47:15,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:47:15,432.432 INFO    ] No camera update needed
[2026-06-22 20:47:15,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:47:15,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:47:15,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:47:15,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:47:17,490.490 INFO    ] ================================================
[2026-06-22 20:47:17,506.506 INFO    ] Launching Daemon at Mon Jun 22 20:47:17 IST 2026
[2026-06-22 20:47:17,517.517 INFO    ] ================================================
[2026-06-22 20:47:18,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:47:18
[2026-06-22 20:47:18,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:47:19,132.132 INFO    ] Initializing speech engine...
[2026-06-22 20:47:19,144.144 INFO    ] 2026-06-22 20:47:19
[2026-06-22 20:47:19,413.413 INFO    ] 2026-06-22 20:47:19
[2026-06-22 20:47:19,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:47:19,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:47:19,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:47:19,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:47:19,891.891 INFO    ] time= 22/06/2026 20:47:19
[2026-06-22 20:47:19,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:47:19,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:47:20,108.108 INFO    ] No existing commands found in stream
[2026-06-22 20:47:25,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:47:25,137.137 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-22 20:47:28,619.619 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:47:28,622.622 INFO    ] Checking for system updates...
[2026-06-22 20:47:28,661.661 INFO    ] 200
[2026-06-22 20:47:28,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:47:28,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:47:28,721.721 INFO    ] No update needed
[2026-06-22 20:47:28,723.723 INFO    ] Checking for camera pi updates...
[2026-06-22 20:47:28,758.758 INFO    ] 200
[2026-06-22 20:47:28,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:47:28,805.805 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:47:28,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:47:28,907.907 INFO    ] No camera update needed
[2026-06-22 20:47:28,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:47:28,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:47:28,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:47:28,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:47:30,963.963 INFO    ] ================================================
[2026-06-22 20:47:30,979.979 INFO    ] Launching Daemon at Mon Jun 22 20:47:30 IST 2026
[2026-06-22 20:47:30,990.990 INFO    ] ================================================
[2026-06-22 20:47:31,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:47:31
[2026-06-22 20:47:32,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:47:32,444.444 INFO    ] Initializing speech engine...
[2026-06-22 20:47:32,453.453 INFO    ] 2026-06-22 20:47:32
[2026-06-22 20:47:32,746.746 INFO    ] 2026-06-22 20:47:32
[2026-06-22 20:47:32,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:47:32,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:47:32,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:47:33,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:47:33,143.143 INFO    ] time= 22/06/2026 20:47:33
[2026-06-22 20:47:33,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:47:33,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:47:33,252.252 INFO    ] No existing commands found in stream
[2026-06-22 20:47:38,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:47:38,290.290 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-22 20:47:44,638.638 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:47:44,640.640 INFO    ] Checking for system updates...
[2026-06-22 20:47:44,676.676 INFO    ] 200
[2026-06-22 20:47:44,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:47:44,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:47:44,734.734 INFO    ] No update needed
[2026-06-22 20:47:44,737.737 INFO    ] Checking for camera pi updates...
[2026-06-22 20:47:44,770.770 INFO    ] 200
[2026-06-22 20:47:44,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:47:44,814.814 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:47:44,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:47:44,912.912 INFO    ] No camera update needed
[2026-06-22 20:47:44,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:47:44,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:47:44,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:47:44,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:47:46,966.966 INFO    ] ================================================
[2026-06-22 20:47:46,982.982 INFO    ] Launching Daemon at Mon Jun 22 20:47:46 IST 2026
[2026-06-22 20:47:46,993.993 INFO    ] ================================================
[2026-06-22 20:47:47,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:47:47
[2026-06-22 20:47:48,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:47:48,454.454 INFO    ] Initializing speech engine...
[2026-06-22 20:47:48,461.461 INFO    ] 2026-06-22 20:47:48
[2026-06-22 20:47:48,720.720 INFO    ] 2026-06-22 20:47:48
[2026-06-22 20:47:48,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:47:49,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:47:49,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:47:49,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:47:49,261.261 INFO    ] time= 22/06/2026 20:47:49
[2026-06-22 20:47:49,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:47:49,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:47:49,412.412 INFO    ] No existing commands found in stream
[2026-06-22 20:47:54,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:47:54,430.430 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-22 20:47:55,477.477 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:47:55,480.480 INFO    ] Checking for system updates...
[2026-06-22 20:47:55,516.516 INFO    ] 200
[2026-06-22 20:47:55,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:47:55,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:47:55,573.573 INFO    ] No update needed
[2026-06-22 20:47:55,576.576 INFO    ] Checking for camera pi updates...
[2026-06-22 20:47:55,610.610 INFO    ] 200
[2026-06-22 20:47:55,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:47:55,652.652 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:47:55,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:47:55,832.832 INFO    ] No camera update needed
[2026-06-22 20:47:55,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:47:55,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:47:55,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:47:55,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:47:57,889.889 INFO    ] ================================================
[2026-06-22 20:47:57,905.905 INFO    ] Launching Daemon at Mon Jun 22 20:47:57 IST 2026
[2026-06-22 20:47:57,917.917 INFO    ] ================================================
[2026-06-22 20:47:58,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:47:58
[2026-06-22 20:47:59,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:47:59,318.318 INFO    ] Initializing speech engine...
[2026-06-22 20:47:59,325.325 INFO    ] 2026-06-22 20:47:59
[2026-06-22 20:47:59,600.600 INFO    ] 2026-06-22 20:47:59
[2026-06-22 20:47:59,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:47:59,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:47:59,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:47:59,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:47:59,983.983 INFO    ] time= 22/06/2026 20:47:59
[2026-06-22 20:48:00,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:48:00,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:48:00,171.171 INFO    ] No existing commands found in stream
[2026-06-22 20:48:05,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:48:05,196.196 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-22 20:48:08,038.038 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:48:08,040.040 INFO    ] Checking for system updates...
[2026-06-22 20:48:08,060.060 INFO    ] 200
[2026-06-22 20:48:08,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:48:08,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:48:08,096.096 INFO    ] No update needed
[2026-06-22 20:48:08,097.097 INFO    ] Checking for camera pi updates...
[2026-06-22 20:48:08,116.116 INFO    ] 200
[2026-06-22 20:48:08,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:48:08,165.165 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:48:08,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:48:08,261.261 INFO    ] No camera update needed
[2026-06-22 20:48:08,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:48:08,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:48:08,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:48:08,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:48:10,316.316 INFO    ] ================================================
[2026-06-22 20:48:10,332.332 INFO    ] Launching Daemon at Mon Jun 22 20:48:10 IST 2026
[2026-06-22 20:48:10,343.343 INFO    ] ================================================
[2026-06-22 20:48:11,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:48:10
[2026-06-22 20:48:11,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:48:11,882.882 INFO    ] Initializing speech engine...
[2026-06-22 20:48:11,891.891 INFO    ] 2026-06-22 20:48:11
[2026-06-22 20:48:12,167.167 INFO    ] 2026-06-22 20:48:12
[2026-06-22 20:48:12,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:48:15,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:48:15,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:48:16,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:48:16,216.216 INFO    ] time= 22/06/2026 20:48:16
[2026-06-22 20:48:16,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:48:16,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:48:16,281.281 INFO    ] No existing commands found in stream
[2026-06-22 20:48:21,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:48:21,290.290 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-22 20:48:23,435.435 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:48:23,438.438 INFO    ] Checking for system updates...
[2026-06-22 20:48:23,475.475 INFO    ] 200
[2026-06-22 20:48:23,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:48:23,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:48:23,533.533 INFO    ] No update needed
[2026-06-22 20:48:23,535.535 INFO    ] Checking for camera pi updates...
[2026-06-22 20:48:23,569.569 INFO    ] 200
[2026-06-22 20:48:23,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:48:23,616.616 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:48:23,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:48:23,699.699 INFO    ] No camera update needed
[2026-06-22 20:48:23,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:48:23,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:48:23,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:48:23,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:48:25,755.755 INFO    ] ================================================
[2026-06-22 20:48:25,771.771 INFO    ] Launching Daemon at Mon Jun 22 20:48:25 IST 2026
[2026-06-22 20:48:25,783.783 INFO    ] ================================================
[2026-06-22 20:48:26,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:48:26
[2026-06-22 20:48:27,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:48:27,381.381 INFO    ] Initializing speech engine...
[2026-06-22 20:48:27,389.389 INFO    ] 2026-06-22 20:48:27
[2026-06-22 20:48:27,661.661 INFO    ] 2026-06-22 20:48:27
[2026-06-22 20:48:27,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:48:27,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:48:27,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:48:28,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:48:28,177.177 INFO    ] time= 22/06/2026 20:48:28
[2026-06-22 20:48:28,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:48:28,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:48:28,381.381 INFO    ] No existing commands found in stream
[2026-06-22 20:48:33,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:48:33,400.400 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-22 20:48:37,199.199 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:48:37,202.202 INFO    ] Checking for system updates...
[2026-06-22 20:48:37,240.240 INFO    ] 200
[2026-06-22 20:48:37,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:48:37,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:48:37,297.297 INFO    ] No update needed
[2026-06-22 20:48:37,300.300 INFO    ] Checking for camera pi updates...
[2026-06-22 20:48:37,338.338 INFO    ] 200
[2026-06-22 20:48:37,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:48:37,380.380 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:48:37,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:48:37,468.468 INFO    ] No camera update needed
[2026-06-22 20:48:37,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:48:37,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:48:37,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:48:37,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:48:39,523.523 INFO    ] ================================================
[2026-06-22 20:48:39,539.539 INFO    ] Launching Daemon at Mon Jun 22 20:48:39 IST 2026
[2026-06-22 20:48:39,551.551 INFO    ] ================================================
[2026-06-22 20:48:40,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:48:40
[2026-06-22 20:48:40,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:48:41,142.142 INFO    ] Initializing speech engine...
[2026-06-22 20:48:41,151.151 INFO    ] 2026-06-22 20:48:41
[2026-06-22 20:48:41,402.402 INFO    ] 2026-06-22 20:48:41
[2026-06-22 20:48:41,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:48:41,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:48:41,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:48:41,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:48:41,892.892 INFO    ] time= 22/06/2026 20:48:41
[2026-06-22 20:48:41,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:48:41,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:48:42,091.091 INFO    ] No existing commands found in stream
[2026-06-22 20:48:47,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:48:47,116.116 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-22 20:48:48,529.529 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:48:48,533.533 INFO    ] Checking for system updates...
[2026-06-22 20:48:48,575.575 INFO    ] 200
[2026-06-22 20:48:48,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:48:48,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:48:48,632.632 INFO    ] No update needed
[2026-06-22 20:48:48,634.634 INFO    ] Checking for camera pi updates...
[2026-06-22 20:48:48,674.674 INFO    ] 200
[2026-06-22 20:48:48,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:48:48,717.717 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:48:48,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:48:48,805.805 INFO    ] No camera update needed
[2026-06-22 20:48:48,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:48:48,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:48:48,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:48:48,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:48:50,862.862 INFO    ] ================================================
[2026-06-22 20:48:50,878.878 INFO    ] Launching Daemon at Mon Jun 22 20:48:50 IST 2026
[2026-06-22 20:48:50,889.889 INFO    ] ================================================
[2026-06-22 20:48:51,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:48:51
[2026-06-22 20:48:52,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:48:52,472.472 INFO    ] Initializing speech engine...
[2026-06-22 20:48:52,483.483 INFO    ] 2026-06-22 20:48:52
[2026-06-22 20:48:52,784.784 INFO    ] 2026-06-22 20:48:52
[2026-06-22 20:48:52,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:48:53,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:48:53,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:48:53,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:48:53,251.251 INFO    ] time= 22/06/2026 20:48:53
[2026-06-22 20:48:53,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:48:53,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:48:53,475.475 INFO    ] No existing commands found in stream
[2026-06-22 20:48:58,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:48:58,511.511 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-22 20:48:59,756.756 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:48:59,758.758 INFO    ] Checking for system updates...
[2026-06-22 20:48:59,779.779 INFO    ] 200
[2026-06-22 20:48:59,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:48:59,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:48:59,837.837 INFO    ] No update needed
[2026-06-22 20:48:59,840.840 INFO    ] Checking for camera pi updates...
[2026-06-22 20:48:59,875.875 INFO    ] 200
[2026-06-22 20:48:59,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:48:59,918.918 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:49:00,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:49:00,002.002 INFO    ] No camera update needed
[2026-06-22 20:49:00,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:49:00,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:49:00,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:49:00,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:49:02,091.091 INFO    ] ================================================
[2026-06-22 20:49:02,135.135 INFO    ] Launching Daemon at Mon Jun 22 20:49:02 IST 2026
[2026-06-22 20:49:02,155.155 INFO    ] ================================================
[2026-06-22 20:49:02,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:49:02
[2026-06-22 20:49:03,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:49:04,023.023 INFO    ] Initializing speech engine...
[2026-06-22 20:49:04,031.031 INFO    ] 2026-06-22 20:49:04
[2026-06-22 20:49:04,277.277 INFO    ] 2026-06-22 20:49:04
[2026-06-22 20:49:04,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:49:04,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:49:04,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:49:04,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:49:04,762.762 INFO    ] time= 22/06/2026 20:49:04
[2026-06-22 20:49:04,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:49:04,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:49:04,973.973 INFO    ] No existing commands found in stream
[2026-06-22 20:49:09,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:49:09,998.998 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-22 20:49:10,952.952 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:49:10,955.955 INFO    ] Checking for system updates...
[2026-06-22 20:49:10,995.995 INFO    ] 200
[2026-06-22 20:49:10,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:49:11,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:49:11,053.053 INFO    ] No update needed
[2026-06-22 20:49:11,055.055 INFO    ] Checking for camera pi updates...
[2026-06-22 20:49:11,093.093 INFO    ] 200
[2026-06-22 20:49:11,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:49:11,141.141 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:49:11,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:49:11,228.228 INFO    ] No camera update needed
[2026-06-22 20:49:11,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:49:11,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:49:11,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:49:11,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:49:13,284.284 INFO    ] ================================================
[2026-06-22 20:49:13,300.300 INFO    ] Launching Daemon at Mon Jun 22 20:49:13 IST 2026
[2026-06-22 20:49:13,311.311 INFO    ] ================================================
[2026-06-22 20:49:13,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:49:13
[2026-06-22 20:49:14,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:49:14,730.730 INFO    ] Initializing speech engine...
[2026-06-22 20:49:14,739.739 INFO    ] 2026-06-22 20:49:14
[2026-06-22 20:49:15,015.015 INFO    ] 2026-06-22 20:49:14
[2026-06-22 20:49:15,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:49:16,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:49:16,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:49:17,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:49:17,755.755 INFO    ] time= 22/06/2026 20:49:17
[2026-06-22 20:49:17,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:49:17,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:49:17,851.851 INFO    ] No existing commands found in stream
[2026-06-22 20:49:22,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:49:22,864.864 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-22 20:49:26,839.839 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:49:26,842.842 INFO    ] Checking for system updates...
[2026-06-22 20:49:26,879.879 INFO    ] 200
[2026-06-22 20:49:26,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:49:26,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:49:26,945.945 INFO    ] No update needed
[2026-06-22 20:49:26,948.948 INFO    ] Checking for camera pi updates...
[2026-06-22 20:49:26,982.982 INFO    ] 200
[2026-06-22 20:49:26,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:49:27,028.028 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:49:27,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:49:27,112.112 INFO    ] No camera update needed
[2026-06-22 20:49:27,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:49:27,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:49:27,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:49:27,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:49:29,171.171 INFO    ] ================================================
[2026-06-22 20:49:29,187.187 INFO    ] Launching Daemon at Mon Jun 22 20:49:29 IST 2026
[2026-06-22 20:49:29,198.198 INFO    ] ================================================
[2026-06-22 20:49:29,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:49:29
[2026-06-22 20:49:30,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:49:30,830.830 INFO    ] Initializing speech engine...
[2026-06-22 20:49:30,842.842 INFO    ] 2026-06-22 20:49:30
[2026-06-22 20:49:31,149.149 INFO    ] 2026-06-22 20:49:31
[2026-06-22 20:49:31,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:49:31,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:49:31,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:49:31,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:49:31,580.580 INFO    ] time= 22/06/2026 20:49:31
[2026-06-22 20:49:31,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:49:31,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:49:31,725.725 INFO    ] No existing commands found in stream
[2026-06-22 20:49:36,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:49:36,741.741 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-22 20:49:38,435.435 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:49:38,438.438 INFO    ] Checking for system updates...
[2026-06-22 20:49:38,479.479 INFO    ] 200
[2026-06-22 20:49:38,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:49:38,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:49:38,539.539 INFO    ] No update needed
[2026-06-22 20:49:38,542.542 INFO    ] Checking for camera pi updates...
[2026-06-22 20:49:38,581.581 INFO    ] 200
[2026-06-22 20:49:38,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:49:38,631.631 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:49:38,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:49:38,806.806 INFO    ] No camera update needed
[2026-06-22 20:49:38,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:49:38,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:49:38,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:49:38,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:49:40,867.867 INFO    ] ================================================
[2026-06-22 20:49:40,882.882 INFO    ] Launching Daemon at Mon Jun 22 20:49:40 IST 2026
[2026-06-22 20:49:40,893.893 INFO    ] ================================================
[2026-06-22 20:49:41,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:49:41
[2026-06-22 20:49:42,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:49:42,412.412 INFO    ] Initializing speech engine...
[2026-06-22 20:49:42,421.421 INFO    ] 2026-06-22 20:49:42
[2026-06-22 20:49:42,692.692 INFO    ] 2026-06-22 20:49:42
[2026-06-22 20:49:42,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:49:42,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:49:42,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:49:43,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:49:43,165.165 INFO    ] time= 22/06/2026 20:49:43
[2026-06-22 20:49:43,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:49:43,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:49:43,385.385 INFO    ] No existing commands found in stream
[2026-06-22 20:49:48,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:49:48,416.416 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-22 20:49:52,387.387 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:49:52,388.388 INFO    ] Checking for system updates...
[2026-06-22 20:49:52,412.412 INFO    ] 200
[2026-06-22 20:49:52,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:49:52,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:49:52,447.447 INFO    ] No update needed
[2026-06-22 20:49:52,449.449 INFO    ] Checking for camera pi updates...
[2026-06-22 20:49:52,483.483 INFO    ] 200
[2026-06-22 20:49:52,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:49:52,532.532 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:49:52,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:49:52,618.618 INFO    ] No camera update needed
[2026-06-22 20:49:52,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:49:52,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:49:52,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:49:52,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:49:54,677.677 INFO    ] ================================================
[2026-06-22 20:49:54,693.693 INFO    ] Launching Daemon at Mon Jun 22 20:49:54 IST 2026
[2026-06-22 20:49:54,704.704 INFO    ] ================================================
[2026-06-22 20:49:55,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:49:55
[2026-06-22 20:49:55,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:49:56,101.101 INFO    ] Initializing speech engine...
[2026-06-22 20:49:56,105.105 INFO    ] 2026-06-22 20:49:56
[2026-06-22 20:49:56,333.333 INFO    ] 2026-06-22 20:49:56
[2026-06-22 20:49:56,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:49:56,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:49:56,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:49:56,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:49:56,821.821 INFO    ] time= 22/06/2026 20:49:56
[2026-06-22 20:49:56,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:49:56,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:49:57,071.071 INFO    ] No existing commands found in stream
[2026-06-22 20:50:02,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:50:02,101.101 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-22 20:50:08,151.151 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:50:08,154.154 INFO    ] Checking for system updates...
[2026-06-22 20:50:08,190.190 INFO    ] 200
[2026-06-22 20:50:08,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:50:08,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:50:08,247.247 INFO    ] No update needed
[2026-06-22 20:50:08,250.250 INFO    ] Checking for camera pi updates...
[2026-06-22 20:50:08,283.283 INFO    ] 200
[2026-06-22 20:50:08,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:50:08,326.326 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:50:08,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:50:08,402.402 INFO    ] No camera update needed
[2026-06-22 20:50:08,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:50:08,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:50:08,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:50:08,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:50:10,460.460 INFO    ] ================================================
[2026-06-22 20:50:10,475.475 INFO    ] Launching Daemon at Mon Jun 22 20:50:10 IST 2026
[2026-06-22 20:50:10,487.487 INFO    ] ================================================
[2026-06-22 20:50:11,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:50:11
[2026-06-22 20:50:11,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:50:11,822.822 INFO    ] Initializing speech engine...
[2026-06-22 20:50:11,830.830 INFO    ] 2026-06-22 20:50:11
[2026-06-22 20:50:12,088.088 INFO    ] 2026-06-22 20:50:12
[2026-06-22 20:50:12,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:50:12,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:50:12,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:50:12,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:50:12,473.473 INFO    ] time= 22/06/2026 20:50:12
[2026-06-22 20:50:12,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:50:12,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:50:12,600.600 INFO    ] No existing commands found in stream
[2026-06-22 20:50:17,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:50:17,616.616 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-22 20:50:21,580.580 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:50:21,582.582 INFO    ] Checking for system updates...
[2026-06-22 20:50:21,605.605 INFO    ] 200
[2026-06-22 20:50:21,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:50:21,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:50:21,669.669 INFO    ] No update needed
[2026-06-22 20:50:21,671.671 INFO    ] Checking for camera pi updates...
[2026-06-22 20:50:21,705.705 INFO    ] 200
[2026-06-22 20:50:21,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:50:21,755.755 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:50:21,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:50:21,824.824 INFO    ] No camera update needed
[2026-06-22 20:50:21,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:50:21,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:50:21,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:50:21,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:50:23,881.881 INFO    ] ================================================
[2026-06-22 20:50:23,898.898 INFO    ] Launching Daemon at Mon Jun 22 20:50:23 IST 2026
[2026-06-22 20:50:23,909.909 INFO    ] ================================================
[2026-06-22 20:50:24,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:50:24
[2026-06-22 20:50:25,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:50:25,344.344 INFO    ] Initializing speech engine...
[2026-06-22 20:50:25,352.352 INFO    ] 2026-06-22 20:50:25
[2026-06-22 20:50:25,597.597 INFO    ] 2026-06-22 20:50:25
[2026-06-22 20:50:25,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:50:25,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:50:25,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:50:26,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:50:26,074.074 INFO    ] time= 22/06/2026 20:50:26
[2026-06-22 20:50:26,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:50:26,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:50:26,278.278 INFO    ] No existing commands found in stream
[2026-06-22 20:50:31,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:50:31,308.308 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-22 20:50:34,329.329 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:50:34,332.332 INFO    ] Checking for system updates...
[2026-06-22 20:50:34,369.369 INFO    ] 200
[2026-06-22 20:50:34,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:50:34,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:50:34,435.435 INFO    ] No update needed
[2026-06-22 20:50:34,437.437 INFO    ] Checking for camera pi updates...
[2026-06-22 20:50:34,471.471 INFO    ] 200
[2026-06-22 20:50:34,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:50:34,514.514 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:50:34,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:50:34,591.591 INFO    ] No camera update needed
[2026-06-22 20:50:34,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:50:34,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:50:34,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:50:34,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:50:36,649.649 INFO    ] ================================================
[2026-06-22 20:50:36,664.664 INFO    ] Launching Daemon at Mon Jun 22 20:50:36 IST 2026
[2026-06-22 20:50:36,675.675 INFO    ] ================================================
[2026-06-22 20:50:37,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:50:37
[2026-06-22 20:50:37,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:50:38,174.174 INFO    ] Initializing speech engine...
[2026-06-22 20:50:38,180.180 INFO    ] 2026-06-22 20:50:38
[2026-06-22 20:50:38,456.456 INFO    ] 2026-06-22 20:50:38
[2026-06-22 20:50:38,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:50:38,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:50:38,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:50:38,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:50:38,837.837 INFO    ] time= 22/06/2026 20:50:38
[2026-06-22 20:50:38,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:50:38,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:50:39,036.036 INFO    ] No existing commands found in stream
[2026-06-22 20:50:44,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:50:44,049.049 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-22 20:50:51,477.477 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:50:51,479.479 INFO    ] Checking for system updates...
[2026-06-22 20:50:51,515.515 INFO    ] 200
[2026-06-22 20:50:51,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:50:51,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:50:51,574.574 INFO    ] No update needed
[2026-06-22 20:50:51,576.576 INFO    ] Checking for camera pi updates...
[2026-06-22 20:50:51,614.614 INFO    ] 200
[2026-06-22 20:50:51,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:50:51,658.658 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:50:51,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:50:51,743.743 INFO    ] No camera update needed
[2026-06-22 20:50:51,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:50:51,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:50:51,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:50:51,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:50:53,800.800 INFO    ] ================================================
[2026-06-22 20:50:53,816.816 INFO    ] Launching Daemon at Mon Jun 22 20:50:53 IST 2026
[2026-06-22 20:50:53,827.827 INFO    ] ================================================
[2026-06-22 20:50:54,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:50:54
[2026-06-22 20:50:55,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:50:55,332.332 INFO    ] Initializing speech engine...
[2026-06-22 20:50:55,347.347 INFO    ] 2026-06-22 20:50:55
[2026-06-22 20:50:55,661.661 INFO    ] 2026-06-22 20:50:55
[2026-06-22 20:50:55,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:50:55,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:50:55,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:50:56,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:50:56,178.178 INFO    ] time= 22/06/2026 20:50:56
[2026-06-22 20:50:56,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:50:56,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:50:56,343.343 INFO    ] No existing commands found in stream
[2026-06-22 20:51:01,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:51:01,383.383 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-22 20:51:04,722.722 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:51:04,725.725 INFO    ] Checking for system updates...
[2026-06-22 20:51:04,768.768 INFO    ] 200
[2026-06-22 20:51:04,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:51:04,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:51:04,830.830 INFO    ] No update needed
[2026-06-22 20:51:04,833.833 INFO    ] Checking for camera pi updates...
[2026-06-22 20:51:04,870.870 INFO    ] 200
[2026-06-22 20:51:04,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:51:04,923.923 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:51:04,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:51:04,993.993 INFO    ] No camera update needed
[2026-06-22 20:51:04,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:51:04,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:51:05,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:51:05,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:51:07,053.053 INFO    ] ================================================
[2026-06-22 20:51:07,068.068 INFO    ] Launching Daemon at Mon Jun 22 20:51:07 IST 2026
[2026-06-22 20:51:07,079.079 INFO    ] ================================================
[2026-06-22 20:51:07,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:51:07
[2026-06-22 20:51:08,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:51:08,777.777 INFO    ] Initializing speech engine...
[2026-06-22 20:51:08,787.787 INFO    ] 2026-06-22 20:51:08
[2026-06-22 20:51:09,097.097 INFO    ] 2026-06-22 20:51:09
[2026-06-22 20:51:09,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:51:09,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:51:09,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:51:09,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:51:09,596.596 INFO    ] time= 22/06/2026 20:51:09
[2026-06-22 20:51:09,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:51:09,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:51:09,772.772 INFO    ] No existing commands found in stream
[2026-06-22 20:51:14,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:51:14,799.799 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-22 20:51:21,188.188 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:51:21,190.190 INFO    ] Checking for system updates...
[2026-06-22 20:51:21,213.213 INFO    ] 200
[2026-06-22 20:51:21,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:51:21,254.254 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:51:21,257.257 INFO    ] No update needed
[2026-06-22 20:51:21,260.260 INFO    ] Checking for camera pi updates...
[2026-06-22 20:51:21,300.300 INFO    ] 200
[2026-06-22 20:51:21,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:51:21,346.346 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:51:21,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:51:21,430.430 INFO    ] No camera update needed
[2026-06-22 20:51:21,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:51:21,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:51:21,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:51:21,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:51:23,492.492 INFO    ] ================================================
[2026-06-22 20:51:23,508.508 INFO    ] Launching Daemon at Mon Jun 22 20:51:23 IST 2026
[2026-06-22 20:51:23,519.519 INFO    ] ================================================
[2026-06-22 20:51:24,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:51:24
[2026-06-22 20:51:24,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:51:24,942.942 INFO    ] Initializing speech engine...
[2026-06-22 20:51:24,960.960 INFO    ] 2026-06-22 20:51:24
[2026-06-22 20:51:25,212.212 INFO    ] 2026-06-22 20:51:25
[2026-06-22 20:51:25,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:51:25,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:51:25,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:51:25,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:51:25,782.782 INFO    ] time= 22/06/2026 20:51:25
[2026-06-22 20:51:25,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:51:25,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:51:25,943.943 INFO    ] No existing commands found in stream
[2026-06-22 20:51:30,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:51:30,974.974 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-22 20:51:32,323.323 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:51:32,326.326 INFO    ] Checking for system updates...
[2026-06-22 20:51:32,369.369 INFO    ] 200
[2026-06-22 20:51:32,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:51:32,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:51:32,442.442 INFO    ] No update needed
[2026-06-22 20:51:32,446.446 INFO    ] Checking for camera pi updates...
[2026-06-22 20:51:32,484.484 INFO    ] 200
[2026-06-22 20:51:32,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:51:32,533.533 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:51:32,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:51:32,597.597 INFO    ] No camera update needed
[2026-06-22 20:51:32,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:51:32,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:51:32,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:51:32,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:51:34,667.667 INFO    ] ================================================
[2026-06-22 20:51:34,682.682 INFO    ] Launching Daemon at Mon Jun 22 20:51:34 IST 2026
[2026-06-22 20:51:34,693.693 INFO    ] ================================================
[2026-06-22 20:51:35,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:51:35
[2026-06-22 20:51:35,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:51:36,145.145 INFO    ] Initializing speech engine...
[2026-06-22 20:51:36,151.151 INFO    ] 2026-06-22 20:51:36
[2026-06-22 20:51:36,454.454 INFO    ] 2026-06-22 20:51:36
[2026-06-22 20:51:36,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:51:36,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:51:36,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:51:36,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:51:36,892.892 INFO    ] time= 22/06/2026 20:51:36
[2026-06-22 20:51:36,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:51:36,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:51:37,073.073 INFO    ] No existing commands found in stream
[2026-06-22 20:51:42,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:51:42,106.106 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-22 20:51:45,383.383 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:51:45,385.385 INFO    ] Checking for system updates...
[2026-06-22 20:51:45,405.405 INFO    ] 200
[2026-06-22 20:51:45,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:51:45,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:51:45,439.439 INFO    ] No update needed
[2026-06-22 20:51:45,440.440 INFO    ] Checking for camera pi updates...
[2026-06-22 20:51:45,471.471 INFO    ] 200
[2026-06-22 20:51:45,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:51:45,521.521 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:51:45,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:51:45,611.611 INFO    ] No camera update needed
[2026-06-22 20:51:45,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:51:45,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:51:45,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:51:45,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:51:47,667.667 INFO    ] ================================================
[2026-06-22 20:51:47,682.682 INFO    ] Launching Daemon at Mon Jun 22 20:51:47 IST 2026
[2026-06-22 20:51:47,694.694 INFO    ] ================================================
[2026-06-22 20:51:48,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:51:48
[2026-06-22 20:51:48,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:51:49,024.024 INFO    ] Initializing speech engine...
[2026-06-22 20:51:49,030.030 INFO    ] 2026-06-22 20:51:49
[2026-06-22 20:51:49,335.335 INFO    ] 2026-06-22 20:51:49
[2026-06-22 20:51:49,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:51:53,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:51:53,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:51:54,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:51:54,215.215 INFO    ] time= 22/06/2026 20:51:54
[2026-06-22 20:51:54,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:51:54,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:51:54,281.281 INFO    ] No existing commands found in stream
[2026-06-22 20:51:59,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:51:59,291.291 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-22 20:52:00,072.072 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:52:00,075.075 INFO    ] Checking for system updates...
[2026-06-22 20:52:00,112.112 INFO    ] 200
[2026-06-22 20:52:00,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:52:00,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:52:00,177.177 INFO    ] No update needed
[2026-06-22 20:52:00,180.180 INFO    ] Checking for camera pi updates...
[2026-06-22 20:52:00,213.213 INFO    ] 200
[2026-06-22 20:52:00,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:52:00,257.257 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:52:00,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:52:00,343.343 INFO    ] No camera update needed
[2026-06-22 20:52:00,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:52:00,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:52:00,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:52:00,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:52:02,401.401 INFO    ] ================================================
[2026-06-22 20:52:02,418.418 INFO    ] Launching Daemon at Mon Jun 22 20:52:02 IST 2026
[2026-06-22 20:52:02,434.434 INFO    ] ================================================
[2026-06-22 20:52:03,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:52:03
[2026-06-22 20:52:03,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:52:04,140.140 INFO    ] Initializing speech engine...
[2026-06-22 20:52:04,152.152 INFO    ] 2026-06-22 20:52:04
[2026-06-22 20:52:04,447.447 INFO    ] 2026-06-22 20:52:04
[2026-06-22 20:52:04,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:52:05,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:52:05,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:52:05,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:52:05,458.458 INFO    ] time= 22/06/2026 20:52:05
[2026-06-22 20:52:05,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:52:05,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:52:05,598.598 INFO    ] No existing commands found in stream
[2026-06-22 20:52:10,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:52:10,622.622 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-22 20:52:13,700.700 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:52:13,703.703 INFO    ] Checking for system updates...
[2026-06-22 20:52:13,742.742 INFO    ] 200
[2026-06-22 20:52:13,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:52:13,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:52:13,811.811 INFO    ] No update needed
[2026-06-22 20:52:13,813.813 INFO    ] Checking for camera pi updates...
[2026-06-22 20:52:13,849.849 INFO    ] 200
[2026-06-22 20:52:13,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:52:13,895.895 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:52:14,074.074 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:52:14,077.077 INFO    ] No camera update needed
[2026-06-22 20:52:14,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:52:14,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:52:14,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:52:14,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:52:16,142.142 INFO    ] ================================================
[2026-06-22 20:52:16,158.158 INFO    ] Launching Daemon at Mon Jun 22 20:52:16 IST 2026
[2026-06-22 20:52:16,169.169 INFO    ] ================================================
[2026-06-22 20:52:16,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:52:16
[2026-06-22 20:52:17,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:52:17,596.596 INFO    ] Initializing speech engine...
[2026-06-22 20:52:17,606.606 INFO    ] 2026-06-22 20:52:17
[2026-06-22 20:52:17,856.856 INFO    ] 2026-06-22 20:52:17
[2026-06-22 20:52:17,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:52:18,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:52:18,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:52:18,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:52:18,233.233 INFO    ] time= 22/06/2026 20:52:18
[2026-06-22 20:52:18,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:52:18,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:52:18,407.407 INFO    ] No existing commands found in stream
[2026-06-22 20:52:23,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:52:23,440.440 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-22 20:52:26,459.459 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:52:26,461.461 INFO    ] Checking for system updates...
[2026-06-22 20:52:26,498.498 INFO    ] 200
[2026-06-22 20:52:26,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:52:26,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:52:26,565.565 INFO    ] No update needed
[2026-06-22 20:52:26,567.567 INFO    ] Checking for camera pi updates...
[2026-06-22 20:52:26,601.601 INFO    ] 200
[2026-06-22 20:52:26,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:52:26,645.645 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:52:26,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:52:26,731.731 INFO    ] No camera update needed
[2026-06-22 20:52:26,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:52:26,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:52:26,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:52:26,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:52:28,790.790 INFO    ] ================================================
[2026-06-22 20:52:28,806.806 INFO    ] Launching Daemon at Mon Jun 22 20:52:28 IST 2026
[2026-06-22 20:52:28,817.817 INFO    ] ================================================
[2026-06-22 20:52:29,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:52:29
[2026-06-22 20:52:29,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:52:30,213.213 INFO    ] Initializing speech engine...
[2026-06-22 20:52:30,221.221 INFO    ] 2026-06-22 20:52:30
[2026-06-22 20:52:30,523.523 INFO    ] 2026-06-22 20:52:30
[2026-06-22 20:52:30,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:52:30,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:52:30,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:52:30,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:52:30,962.962 INFO    ] time= 22/06/2026 20:52:30
[2026-06-22 20:52:30,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:52:30,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:52:31,053.053 INFO    ] No existing commands found in stream
[2026-06-22 20:52:36,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:52:36,091.091 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-22 20:52:39,631.631 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:52:39,635.635 INFO    ] Checking for system updates...
[2026-06-22 20:52:39,683.683 INFO    ] 200
[2026-06-22 20:52:39,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:52:39,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:52:39,749.749 INFO    ] No update needed
[2026-06-22 20:52:39,751.751 INFO    ] Checking for camera pi updates...
[2026-06-22 20:52:39,786.786 INFO    ] 200
[2026-06-22 20:52:39,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:52:39,830.830 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:52:39,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:52:39,912.912 INFO    ] No camera update needed
[2026-06-22 20:52:39,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:52:39,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:52:39,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:52:39,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:52:41,968.968 INFO    ] ================================================
[2026-06-22 20:52:41,985.985 INFO    ] Launching Daemon at Mon Jun 22 20:52:41 IST 2026
[2026-06-22 20:52:42,996.996 INFO    ] ================================================
[2026-06-22 20:52:42,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:52:42
[2026-06-22 20:52:43,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:52:43,564.564 INFO    ] Initializing speech engine...
[2026-06-22 20:52:43,572.572 INFO    ] 2026-06-22 20:52:43
[2026-06-22 20:52:43,836.836 INFO    ] 2026-06-22 20:52:43
[2026-06-22 20:52:43,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:52:44,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:52:44,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:52:44,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:52:44,301.301 INFO    ] time= 22/06/2026 20:52:44
[2026-06-22 20:52:44,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:52:44,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:52:44,440.440 INFO    ] No existing commands found in stream
[2026-06-22 20:52:49,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:52:49,455.455 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-22 20:52:51,513.513 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:52:51,515.515 INFO    ] Checking for system updates...
[2026-06-22 20:52:51,551.551 INFO    ] 200
[2026-06-22 20:52:51,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:52:51,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:52:51,611.611 INFO    ] No update needed
[2026-06-22 20:52:51,614.614 INFO    ] Checking for camera pi updates...
[2026-06-22 20:52:51,653.653 INFO    ] 200
[2026-06-22 20:52:51,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:52:51,697.697 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:52:51,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:52:51,780.780 INFO    ] No camera update needed
[2026-06-22 20:52:51,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:52:51,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:52:51,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:52:51,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:52:53,837.837 INFO    ] ================================================
[2026-06-22 20:52:53,852.852 INFO    ] Launching Daemon at Mon Jun 22 20:52:53 IST 2026
[2026-06-22 20:52:53,864.864 INFO    ] ================================================
[2026-06-22 20:52:54,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:52:54
[2026-06-22 20:52:55,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:52:55,380.380 INFO    ] Initializing speech engine...
[2026-06-22 20:52:55,390.390 INFO    ] 2026-06-22 20:52:55
[2026-06-22 20:52:55,644.644 INFO    ] 2026-06-22 20:52:55
[2026-06-22 20:52:55,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:52:57,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:52:57,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:52:58,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:52:58,483.483 INFO    ] time= 22/06/2026 20:52:58
[2026-06-22 20:52:58,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:52:58,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:52:58,548.548 INFO    ] No existing commands found in stream
[2026-06-22 20:53:03,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:53:03,560.560 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-22 20:53:07,102.102 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:53:07,104.104 INFO    ] Checking for system updates...
[2026-06-22 20:53:07,144.144 INFO    ] 200
[2026-06-22 20:53:07,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:53:07,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:53:07,203.203 INFO    ] No update needed
[2026-06-22 20:53:07,206.206 INFO    ] Checking for camera pi updates...
[2026-06-22 20:53:07,241.241 INFO    ] 200
[2026-06-22 20:53:07,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:53:07,287.287 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:53:07,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:53:07,377.377 INFO    ] No camera update needed
[2026-06-22 20:53:07,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:53:07,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:53:07,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:53:07,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:53:09,435.435 INFO    ] ================================================
[2026-06-22 20:53:09,451.451 INFO    ] Launching Daemon at Mon Jun 22 20:53:09 IST 2026
[2026-06-22 20:53:09,463.463 INFO    ] ================================================
[2026-06-22 20:53:10,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:53:10
[2026-06-22 20:53:10,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:53:10,867.867 INFO    ] Initializing speech engine...
[2026-06-22 20:53:10,882.882 INFO    ] 2026-06-22 20:53:10
[2026-06-22 20:53:11,148.148 INFO    ] 2026-06-22 20:53:11
[2026-06-22 20:53:11,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:53:11,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:53:11,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:53:11,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:53:11,720.720 INFO    ] time= 22/06/2026 20:53:11
[2026-06-22 20:53:11,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:53:11,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:53:11,855.855 INFO    ] No existing commands found in stream
[2026-06-22 20:53:16,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:53:16,883.883 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-22 20:53:19,727.727 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:53:19,730.730 INFO    ] Checking for system updates...
[2026-06-22 20:53:19,772.772 INFO    ] 200
[2026-06-22 20:53:19,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:53:19,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:53:19,836.836 INFO    ] No update needed
[2026-06-22 20:53:19,839.839 INFO    ] Checking for camera pi updates...
[2026-06-22 20:53:19,880.880 INFO    ] 200
[2026-06-22 20:53:19,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:53:19,923.923 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:53:20,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:53:20,007.007 INFO    ] No camera update needed
[2026-06-22 20:53:20,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:53:20,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:53:20,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:53:20,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:53:22,065.065 INFO    ] ================================================
[2026-06-22 20:53:22,081.081 INFO    ] Launching Daemon at Mon Jun 22 20:53:22 IST 2026
[2026-06-22 20:53:22,094.094 INFO    ] ================================================
[2026-06-22 20:53:22,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:53:22
[2026-06-22 20:53:23,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:53:23,539.539 INFO    ] Initializing speech engine...
[2026-06-22 20:53:23,556.556 INFO    ] 2026-06-22 20:53:23
[2026-06-22 20:53:23,842.842 INFO    ] 2026-06-22 20:53:23
[2026-06-22 20:53:23,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:53:27,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:53:27,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:53:28,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:53:28,933.933 INFO    ] time= 22/06/2026 20:53:28
[2026-06-22 20:53:28,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:53:28,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:53:28,988.988 INFO    ] No existing commands found in stream
[2026-06-22 20:53:33,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:53:34,000.000 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-22 20:53:37,227.227 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:53:37,230.230 INFO    ] Checking for system updates...
[2026-06-22 20:53:37,266.266 INFO    ] 200
[2026-06-22 20:53:37,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:53:37,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:53:37,331.331 INFO    ] No update needed
[2026-06-22 20:53:37,333.333 INFO    ] Checking for camera pi updates...
[2026-06-22 20:53:37,367.367 INFO    ] 200
[2026-06-22 20:53:37,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:53:37,411.411 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:53:37,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:53:37,502.502 INFO    ] No camera update needed
[2026-06-22 20:53:37,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:53:37,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:53:37,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:53:37,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:53:39,557.557 INFO    ] ================================================
[2026-06-22 20:53:39,573.573 INFO    ] Launching Daemon at Mon Jun 22 20:53:39 IST 2026
[2026-06-22 20:53:39,584.584 INFO    ] ================================================
[2026-06-22 20:53:40,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:53:40
[2026-06-22 20:53:40,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:53:40,938.938 INFO    ] Initializing speech engine...
[2026-06-22 20:53:40,946.946 INFO    ] 2026-06-22 20:53:40
[2026-06-22 20:53:41,244.244 INFO    ] 2026-06-22 20:53:41
[2026-06-22 20:53:41,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:53:41,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:53:41,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:53:41,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:53:41,668.668 INFO    ] time= 22/06/2026 20:53:41
[2026-06-22 20:53:41,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:53:41,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:53:41,753.753 INFO    ] No existing commands found in stream
[2026-06-22 20:53:46,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:53:46,769.769 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-22 20:53:49,213.213 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:53:49,216.216 INFO    ] Checking for system updates...
[2026-06-22 20:53:49,254.254 INFO    ] 200
[2026-06-22 20:53:49,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:53:49,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:53:49,320.320 INFO    ] No update needed
[2026-06-22 20:53:49,323.323 INFO    ] Checking for camera pi updates...
[2026-06-22 20:53:49,360.360 INFO    ] 200
[2026-06-22 20:53:49,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:53:49,404.404 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:53:49,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:53:49,485.485 INFO    ] No camera update needed
[2026-06-22 20:53:49,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:53:49,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:53:49,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:53:49,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:53:51,541.541 INFO    ] ================================================
[2026-06-22 20:53:51,557.557 INFO    ] Launching Daemon at Mon Jun 22 20:53:51 IST 2026
[2026-06-22 20:53:51,568.568 INFO    ] ================================================
[2026-06-22 20:53:52,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:53:52
[2026-06-22 20:53:52,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:53:52,980.980 INFO    ] Initializing speech engine...
[2026-06-22 20:53:53,004.004 INFO    ] 2026-06-22 20:53:52
[2026-06-22 20:53:53,260.260 INFO    ] 2026-06-22 20:53:53
[2026-06-22 20:53:53,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:53:53,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:53:53,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:53:53,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:53:53,638.638 INFO    ] time= 22/06/2026 20:53:53
[2026-06-22 20:53:53,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:53:53,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:53:53,835.835 INFO    ] No existing commands found in stream
[2026-06-22 20:53:58,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:53:58,855.855 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-22 20:54:02,916.916 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:54:02,919.919 INFO    ] Checking for system updates...
[2026-06-22 20:54:02,961.961 INFO    ] 200
[2026-06-22 20:54:02,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:54:03,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:54:03,044.044 INFO    ] No update needed
[2026-06-22 20:54:03,047.047 INFO    ] Checking for camera pi updates...
[2026-06-22 20:54:03,080.080 INFO    ] 200
[2026-06-22 20:54:03,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:54:03,139.139 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:54:03,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:54:03,218.218 INFO    ] No camera update needed
[2026-06-22 20:54:03,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:54:03,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:54:03,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:54:03,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:54:05,274.274 INFO    ] ================================================
[2026-06-22 20:54:05,290.290 INFO    ] Launching Daemon at Mon Jun 22 20:54:05 IST 2026
[2026-06-22 20:54:05,301.301 INFO    ] ================================================
[2026-06-22 20:54:05,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:54:05
[2026-06-22 20:54:06,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:54:06,785.785 INFO    ] Initializing speech engine...
[2026-06-22 20:54:06,791.791 INFO    ] 2026-06-22 20:54:06
[2026-06-22 20:54:07,041.041 INFO    ] 2026-06-22 20:54:07
[2026-06-22 20:54:07,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:54:07,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:54:07,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:54:07,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:54:07,535.535 INFO    ] time= 22/06/2026 20:54:07
[2026-06-22 20:54:07,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:54:07,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:54:07,738.738 INFO    ] No existing commands found in stream
[2026-06-22 20:54:12,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:54:12,761.761 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-22 20:54:15,153.153 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:54:15,156.156 INFO    ] Checking for system updates...
[2026-06-22 20:54:15,196.196 INFO    ] 200
[2026-06-22 20:54:15,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:54:15,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:54:15,253.253 INFO    ] No update needed
[2026-06-22 20:54:15,256.256 INFO    ] Checking for camera pi updates...
[2026-06-22 20:54:15,290.290 INFO    ] 200
[2026-06-22 20:54:15,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:54:15,332.332 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:54:15,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:54:15,413.413 INFO    ] No camera update needed
[2026-06-22 20:54:15,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:54:15,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:54:15,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:54:15,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:54:17,469.469 INFO    ] ================================================
[2026-06-22 20:54:17,485.485 INFO    ] Launching Daemon at Mon Jun 22 20:54:17 IST 2026
[2026-06-22 20:54:17,496.496 INFO    ] ================================================
[2026-06-22 20:54:18,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:54:18
[2026-06-22 20:54:18,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:54:18,812.812 INFO    ] Initializing speech engine...
[2026-06-22 20:54:18,835.835 INFO    ] 2026-06-22 20:54:18
[2026-06-22 20:54:19,093.093 INFO    ] 2026-06-22 20:54:19
[2026-06-22 20:54:19,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:54:19,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:54:19,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:54:19,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:54:19,570.570 INFO    ] time= 22/06/2026 20:54:19
[2026-06-22 20:54:19,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:54:19,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:54:19,779.779 INFO    ] No existing commands found in stream
[2026-06-22 20:54:24,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:54:24,810.810 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-22 20:54:29,983.983 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:54:29,985.985 INFO    ] Checking for system updates...
[2026-06-22 20:54:30,025.025 INFO    ] 200
[2026-06-22 20:54:30,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:54:30,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:54:30,083.083 INFO    ] No update needed
[2026-06-22 20:54:30,086.086 INFO    ] Checking for camera pi updates...
[2026-06-22 20:54:30,120.120 INFO    ] 200
[2026-06-22 20:54:30,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:54:30,170.170 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:54:30,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:54:30,355.355 INFO    ] No camera update needed
[2026-06-22 20:54:30,357.357 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:54:30,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:54:30,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:54:30,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:54:32,410.410 INFO    ] ================================================
[2026-06-22 20:54:32,426.426 INFO    ] Launching Daemon at Mon Jun 22 20:54:32 IST 2026
[2026-06-22 20:54:32,437.437 INFO    ] ================================================
[2026-06-22 20:54:33,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:54:33
[2026-06-22 20:54:33,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:54:33,887.887 INFO    ] Initializing speech engine...
[2026-06-22 20:54:33,897.897 INFO    ] 2026-06-22 20:54:33
[2026-06-22 20:54:34,147.147 INFO    ] 2026-06-22 20:54:34
[2026-06-22 20:54:34,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:54:34,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:54:34,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:54:34,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:54:34,648.648 INFO    ] time= 22/06/2026 20:54:34
[2026-06-22 20:54:34,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:54:34,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:54:34,850.850 INFO    ] No existing commands found in stream
[2026-06-22 20:54:39,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:54:39,883.883 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-22 20:54:44,231.231 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:54:44,234.234 INFO    ] Checking for system updates...
[2026-06-22 20:54:44,277.277 INFO    ] 200
[2026-06-22 20:54:44,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:54:44,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:54:44,337.337 INFO    ] No update needed
[2026-06-22 20:54:44,340.340 INFO    ] Checking for camera pi updates...
[2026-06-22 20:54:44,379.379 INFO    ] 200
[2026-06-22 20:54:44,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:54:44,423.423 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:54:44,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:54:44,511.511 INFO    ] No camera update needed
[2026-06-22 20:54:44,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:54:44,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:54:44,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:54:44,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:54:46,571.571 INFO    ] ================================================
[2026-06-22 20:54:46,587.587 INFO    ] Launching Daemon at Mon Jun 22 20:54:46 IST 2026
[2026-06-22 20:54:46,597.597 INFO    ] ================================================
[2026-06-22 20:54:47,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:54:47
[2026-06-22 20:54:47,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:54:47,938.938 INFO    ] Initializing speech engine...
[2026-06-22 20:54:47,947.947 INFO    ] 2026-06-22 20:54:47
[2026-06-22 20:54:48,198.198 INFO    ] 2026-06-22 20:54:48
[2026-06-22 20:54:48,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:54:48,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:54:48,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:54:48,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:54:48,765.765 INFO    ] time= 22/06/2026 20:54:48
[2026-06-22 20:54:48,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:54:48,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:54:48,908.908 INFO    ] No existing commands found in stream
[2026-06-22 20:54:53,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:54:53,937.937 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-22 20:54:57,117.117 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:54:57,118.118 INFO    ] Checking for system updates...
[2026-06-22 20:54:57,140.140 INFO    ] 200
[2026-06-22 20:54:57,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:54:57,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:54:57,194.194 INFO    ] No update needed
[2026-06-22 20:54:57,198.198 INFO    ] Checking for camera pi updates...
[2026-06-22 20:54:57,236.236 INFO    ] 200
[2026-06-22 20:54:57,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:54:57,286.286 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:54:57,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:54:57,381.381 INFO    ] No camera update needed
[2026-06-22 20:54:57,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:54:57,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:54:57,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:54:57,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:54:59,441.441 INFO    ] ================================================
[2026-06-22 20:54:59,456.456 INFO    ] Launching Daemon at Mon Jun 22 20:54:59 IST 2026
[2026-06-22 20:54:59,467.467 INFO    ] ================================================
[2026-06-22 20:55:00,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:55:00
[2026-06-22 20:55:00,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:55:00,907.907 INFO    ] Initializing speech engine...
[2026-06-22 20:55:00,913.913 INFO    ] 2026-06-22 20:55:00
[2026-06-22 20:55:01,209.209 INFO    ] 2026-06-22 20:55:01
[2026-06-22 20:55:01,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:55:02,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:55:02,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:55:02,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:55:02,653.653 INFO    ] time= 22/06/2026 20:55:02
[2026-06-22 20:55:02,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:55:02,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:55:02,770.770 INFO    ] No existing commands found in stream
[2026-06-22 20:55:07,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:55:07,804.804 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-22 20:55:09,570.570 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:55:09,572.572 INFO    ] Checking for system updates...
[2026-06-22 20:55:09,592.592 INFO    ] 200
[2026-06-22 20:55:09,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:55:09,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:55:09,628.628 INFO    ] No update needed
[2026-06-22 20:55:09,629.629 INFO    ] Checking for camera pi updates...
[2026-06-22 20:55:09,649.649 INFO    ] 200
[2026-06-22 20:55:09,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:55:09,679.679 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:55:09,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:55:09,765.765 INFO    ] No camera update needed
[2026-06-22 20:55:09,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:55:09,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:55:09,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:55:09,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:55:11,823.823 INFO    ] ================================================
[2026-06-22 20:55:11,838.838 INFO    ] Launching Daemon at Mon Jun 22 20:55:11 IST 2026
[2026-06-22 20:55:11,849.849 INFO    ] ================================================
[2026-06-22 20:55:12,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:55:12
[2026-06-22 20:55:13,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:55:13,290.290 INFO    ] Initializing speech engine...
[2026-06-22 20:55:13,305.305 INFO    ] 2026-06-22 20:55:13
[2026-06-22 20:55:13,578.578 INFO    ] 2026-06-22 20:55:13
[2026-06-22 20:55:13,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:55:13,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:55:13,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:55:13,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:55:13,959.959 INFO    ] time= 22/06/2026 20:55:13
[2026-06-22 20:55:13,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:55:14,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:55:14,085.085 INFO    ] No existing commands found in stream
[2026-06-22 20:55:19,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:55:19,100.100 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-22 20:55:22,711.711 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:55:22,714.714 INFO    ] Checking for system updates...
[2026-06-22 20:55:22,750.750 INFO    ] 200
[2026-06-22 20:55:22,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:55:22,816.816 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:55:22,819.819 INFO    ] No update needed
[2026-06-22 20:55:22,821.821 INFO    ] Checking for camera pi updates...
[2026-06-22 20:55:22,855.855 INFO    ] 200
[2026-06-22 20:55:22,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:55:22,897.897 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:55:22,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:55:22,981.981 INFO    ] No camera update needed
[2026-06-22 20:55:22,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:55:22,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:55:22,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:55:22,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:55:25,036.036 INFO    ] ================================================
[2026-06-22 20:55:25,051.051 INFO    ] Launching Daemon at Mon Jun 22 20:55:25 IST 2026
[2026-06-22 20:55:25,062.062 INFO    ] ================================================
[2026-06-22 20:55:25,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:55:25
[2026-06-22 20:55:26,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:55:26,392.392 INFO    ] Initializing speech engine...
[2026-06-22 20:55:26,415.415 INFO    ] 2026-06-22 20:55:26
[2026-06-22 20:55:26,665.665 INFO    ] 2026-06-22 20:55:26
[2026-06-22 20:55:26,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:55:27,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:55:27,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:55:27,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:55:27,228.228 INFO    ] time= 22/06/2026 20:55:27
[2026-06-22 20:55:27,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:55:27,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:55:27,396.396 INFO    ] No existing commands found in stream
[2026-06-22 20:55:32,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:55:32,419.419 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-22 20:55:33,937.937 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:55:33,940.940 INFO    ] Checking for system updates...
[2026-06-22 20:55:33,976.976 INFO    ] 200
[2026-06-22 20:55:33,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:55:34,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:55:34,042.042 INFO    ] No update needed
[2026-06-22 20:55:34,044.044 INFO    ] Checking for camera pi updates...
[2026-06-22 20:55:34,078.078 INFO    ] 200
[2026-06-22 20:55:34,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:55:34,131.131 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:55:34,228.228 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:55:34,230.230 INFO    ] No camera update needed
[2026-06-22 20:55:34,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:55:34,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:55:34,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:55:34,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:55:36,286.286 INFO    ] ================================================
[2026-06-22 20:55:36,301.301 INFO    ] Launching Daemon at Mon Jun 22 20:55:36 IST 2026
[2026-06-22 20:55:36,312.312 INFO    ] ================================================
[2026-06-22 20:55:36,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:55:36
[2026-06-22 20:55:37,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:55:37,736.736 INFO    ] Initializing speech engine...
[2026-06-22 20:55:37,744.744 INFO    ] 2026-06-22 20:55:37
[2026-06-22 20:55:38,008.008 INFO    ] 2026-06-22 20:55:38
[2026-06-22 20:55:38,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:55:38,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:55:38,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:55:38,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:55:38,472.472 INFO    ] time= 22/06/2026 20:55:38
[2026-06-22 20:55:38,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:55:38,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:55:38,682.682 INFO    ] No existing commands found in stream
[2026-06-22 20:55:43,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:55:43,716.716 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-22 20:55:46,741.741 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 20:55:46,744.744 INFO    ] Checking for system updates...
[2026-06-22 20:55:46,781.781 INFO    ] 200
[2026-06-22 20:55:46,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:55:46,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:55:46,840.840 INFO    ] No update needed
[2026-06-22 20:55:46,843.843 INFO    ] Checking for camera pi updates...
[2026-06-22 20:55:46,882.882 INFO    ] 200
[2026-06-22 20:55:46,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:55:46,931.931 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:55:47,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:55:47,018.018 INFO    ] No camera update needed
[2026-06-22 20:55:47,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:55:47,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:55:47,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:55:47,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:55:49,075.075 INFO    ] ================================================
[2026-06-22 20:55:49,090.090 INFO    ] Launching Daemon at Mon Jun 22 20:55:49 IST 2026
[2026-06-22 20:55:49,101.101 INFO    ] ================================================
[2026-06-22 20:55:49,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:55:49
[2026-06-22 20:55:50,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:55:50,532.532 INFO    ] Initializing speech engine...
[2026-06-22 20:55:50,539.539 INFO    ] 2026-06-22 20:55:50
[2026-06-22 20:55:50,803.803 INFO    ] 2026-06-22 20:55:50
[2026-06-22 20:55:50,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:55:51,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:55:51,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:55:51,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:55:51,361.361 INFO    ] time= 22/06/2026 20:55:51
[2026-06-22 20:55:51,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:55:51,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:55:51,538.538 INFO    ] No existing commands found in stream
[2026-06-22 20:55:56,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:55:56,576.576 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-22 20:55:58,225.225 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:55:58,228.228 INFO    ] Checking for system updates...
[2026-06-22 20:55:58,264.264 INFO    ] 200
[2026-06-22 20:55:58,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:55:58,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:55:58,324.324 INFO    ] No update needed
[2026-06-22 20:55:58,326.326 INFO    ] Checking for camera pi updates...
[2026-06-22 20:55:58,364.364 INFO    ] 200
[2026-06-22 20:55:58,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:55:58,408.408 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:55:58,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:55:58,496.496 INFO    ] No camera update needed
[2026-06-22 20:55:58,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:55:58,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:55:58,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:55:58,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:56:00,553.553 INFO    ] ================================================
[2026-06-22 20:56:00,575.575 INFO    ] Launching Daemon at Mon Jun 22 20:56:00 IST 2026
[2026-06-22 20:56:00,587.587 INFO    ] ================================================
[2026-06-22 20:56:01,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:56:01
[2026-06-22 20:56:01,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:56:02,249.249 INFO    ] Initializing speech engine...
[2026-06-22 20:56:02,256.256 INFO    ] 2026-06-22 20:56:02
[2026-06-22 20:56:02,563.563 INFO    ] 2026-06-22 20:56:02
[2026-06-22 20:56:02,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:56:03,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:56:03,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:56:03,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:56:03,828.828 INFO    ] time= 22/06/2026 20:56:03
[2026-06-22 20:56:03,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:56:03,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:56:04,015.015 INFO    ] No existing commands found in stream
[2026-06-22 20:56:09,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:56:09,042.042 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-22 20:56:11,302.302 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:56:11,305.305 INFO    ] Checking for system updates...
[2026-06-22 20:56:11,345.345 INFO    ] 200
[2026-06-22 20:56:11,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:56:11,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:56:11,402.402 INFO    ] No update needed
[2026-06-22 20:56:11,405.405 INFO    ] Checking for camera pi updates...
[2026-06-22 20:56:11,443.443 INFO    ] 200
[2026-06-22 20:56:11,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:56:11,486.486 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:56:11,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:56:11,584.584 INFO    ] No camera update needed
[2026-06-22 20:56:11,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:56:11,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:56:11,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:56:11,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:56:13,639.639 INFO    ] ================================================
[2026-06-22 20:56:13,655.655 INFO    ] Launching Daemon at Mon Jun 22 20:56:13 IST 2026
[2026-06-22 20:56:13,665.665 INFO    ] ================================================
[2026-06-22 20:56:14,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:56:14
[2026-06-22 20:56:14,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:56:15,021.021 INFO    ] Initializing speech engine...
[2026-06-22 20:56:15,038.038 INFO    ] 2026-06-22 20:56:15
[2026-06-22 20:56:15,326.326 INFO    ] 2026-06-22 20:56:15
[2026-06-22 20:56:15,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:56:15,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:56:15,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:56:15,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:56:15,700.700 INFO    ] time= 22/06/2026 20:56:15
[2026-06-22 20:56:15,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:56:15,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:56:15,868.868 INFO    ] No existing commands found in stream
[2026-06-22 20:56:20,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:56:20,896.896 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-22 20:56:23,592.592 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 20:56:23,594.594 INFO    ] Checking for system updates...
[2026-06-22 20:56:23,630.630 INFO    ] 200
[2026-06-22 20:56:23,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:56:23,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:56:23,694.694 INFO    ] No update needed
[2026-06-22 20:56:23,697.697 INFO    ] Checking for camera pi updates...
[2026-06-22 20:56:23,738.738 INFO    ] 200
[2026-06-22 20:56:23,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:56:23,782.782 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:56:23,863.863 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:56:23,866.866 INFO    ] No camera update needed
[2026-06-22 20:56:23,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:56:23,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:56:23,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:56:23,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:56:25,923.923 INFO    ] ================================================
[2026-06-22 20:56:25,938.938 INFO    ] Launching Daemon at Mon Jun 22 20:56:25 IST 2026
[2026-06-22 20:56:25,949.949 INFO    ] ================================================
[2026-06-22 20:56:26,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:56:26
[2026-06-22 20:56:27,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:56:27,272.272 INFO    ] Initializing speech engine...
[2026-06-22 20:56:27,281.281 INFO    ] 2026-06-22 20:56:27
[2026-06-22 20:56:27,578.578 INFO    ] 2026-06-22 20:56:27
[2026-06-22 20:56:27,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:56:27,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:56:27,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:56:27,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:56:28,001.001 INFO    ] time= 22/06/2026 20:56:27
[2026-06-22 20:56:28,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:56:28,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:56:28,168.168 INFO    ] No existing commands found in stream
[2026-06-22 20:56:33,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:56:33,196.196 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-22 20:56:37,543.543 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:56:37,546.546 INFO    ] Checking for system updates...
[2026-06-22 20:56:37,582.582 INFO    ] 200
[2026-06-22 20:56:37,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:56:37,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:56:37,646.646 INFO    ] No update needed
[2026-06-22 20:56:37,649.649 INFO    ] Checking for camera pi updates...
[2026-06-22 20:56:37,682.682 INFO    ] 200
[2026-06-22 20:56:37,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:56:37,726.726 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:56:37,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:56:37,777.777 INFO    ] No camera update needed
[2026-06-22 20:56:37,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:56:37,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:56:37,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:56:37,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:56:39,834.834 INFO    ] ================================================
[2026-06-22 20:56:39,850.850 INFO    ] Launching Daemon at Mon Jun 22 20:56:39 IST 2026
[2026-06-22 20:56:39,861.861 INFO    ] ================================================
[2026-06-22 20:56:40,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:56:40
[2026-06-22 20:56:40,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:56:41,181.181 INFO    ] Initializing speech engine...
[2026-06-22 20:56:41,188.188 INFO    ] 2026-06-22 20:56:41
[2026-06-22 20:56:41,484.484 INFO    ] 2026-06-22 20:56:41
[2026-06-22 20:56:41,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:56:41,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:56:41,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:56:41,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:56:41,957.957 INFO    ] time= 22/06/2026 20:56:41
[2026-06-22 20:56:42,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:56:42,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:56:42,117.117 INFO    ] No existing commands found in stream
[2026-06-22 20:56:47,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:56:47,131.131 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-22 20:56:48,642.642 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:56:48,645.645 INFO    ] Checking for system updates...
[2026-06-22 20:56:48,681.681 INFO    ] 200
[2026-06-22 20:56:48,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:56:48,742.742 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:56:48,745.745 INFO    ] No update needed
[2026-06-22 20:56:48,747.747 INFO    ] Checking for camera pi updates...
[2026-06-22 20:56:48,781.781 INFO    ] 200
[2026-06-22 20:56:48,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:56:48,830.830 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:56:48,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:56:48,912.912 INFO    ] No camera update needed
[2026-06-22 20:56:48,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:56:48,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:56:48,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:56:48,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:56:50,968.968 INFO    ] ================================================
[2026-06-22 20:56:50,983.983 INFO    ] Launching Daemon at Mon Jun 22 20:56:50 IST 2026
[2026-06-22 20:56:50,994.994 INFO    ] ================================================
[2026-06-22 20:56:51,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:56:51
[2026-06-22 20:56:52,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:56:52,457.457 INFO    ] Initializing speech engine...
[2026-06-22 20:56:52,463.463 INFO    ] 2026-06-22 20:56:52
[2026-06-22 20:56:52,726.726 INFO    ] 2026-06-22 20:56:52
[2026-06-22 20:56:52,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:56:53,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:56:53,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:56:53,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:56:53,187.187 INFO    ] time= 22/06/2026 20:56:53
[2026-06-22 20:56:53,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:56:53,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:56:53,425.425 INFO    ] No existing commands found in stream
[2026-06-22 20:56:58,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:56:58,441.441 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-22 20:57:06,123.123 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:57:06,126.126 INFO    ] Checking for system updates...
[2026-06-22 20:57:06,165.165 INFO    ] 200
[2026-06-22 20:57:06,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:57:06,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:57:06,232.232 INFO    ] No update needed
[2026-06-22 20:57:06,235.235 INFO    ] Checking for camera pi updates...
[2026-06-22 20:57:06,270.270 INFO    ] 200
[2026-06-22 20:57:06,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:57:06,317.317 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:57:06,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:57:06,400.400 INFO    ] No camera update needed
[2026-06-22 20:57:06,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:57:06,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:57:06,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:57:06,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:57:08,460.460 INFO    ] ================================================
[2026-06-22 20:57:08,476.476 INFO    ] Launching Daemon at Mon Jun 22 20:57:08 IST 2026
[2026-06-22 20:57:08,487.487 INFO    ] ================================================
[2026-06-22 20:57:09,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:57:09
[2026-06-22 20:57:09,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:57:09,932.932 INFO    ] Initializing speech engine...
[2026-06-22 20:57:09,945.945 INFO    ] 2026-06-22 20:57:09
[2026-06-22 20:57:10,227.227 INFO    ] 2026-06-22 20:57:10
[2026-06-22 20:57:10,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:57:10,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:57:10,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:57:10,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:57:10,630.630 INFO    ] time= 22/06/2026 20:57:10
[2026-06-22 20:57:10,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:57:10,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:57:10,714.714 INFO    ] No existing commands found in stream
[2026-06-22 20:57:15,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:57:15,752.752 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-22 20:57:19,826.826 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:57:19,827.827 INFO    ] Checking for system updates...
[2026-06-22 20:57:19,848.848 INFO    ] 200
[2026-06-22 20:57:19,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:57:19,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:57:19,882.882 INFO    ] No update needed
[2026-06-22 20:57:19,883.883 INFO    ] Checking for camera pi updates...
[2026-06-22 20:57:19,902.902 INFO    ] 200
[2026-06-22 20:57:19,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:57:19,934.934 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:57:20,015.015 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:57:20,018.018 INFO    ] No camera update needed
[2026-06-22 20:57:20,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:57:20,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:57:20,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:57:20,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:57:22,072.072 INFO    ] ================================================
[2026-06-22 20:57:22,088.088 INFO    ] Launching Daemon at Mon Jun 22 20:57:22 IST 2026
[2026-06-22 20:57:22,099.099 INFO    ] ================================================
[2026-06-22 20:57:22,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:57:22
[2026-06-22 20:57:23,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:57:23,509.509 INFO    ] Initializing speech engine...
[2026-06-22 20:57:23,524.524 INFO    ] 2026-06-22 20:57:23
[2026-06-22 20:57:23,801.801 INFO    ] 2026-06-22 20:57:23
[2026-06-22 20:57:23,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:57:24,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:57:24,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:57:24,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:57:24,202.202 INFO    ] time= 22/06/2026 20:57:24
[2026-06-22 20:57:24,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:57:24,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:57:24,377.377 INFO    ] No existing commands found in stream
[2026-06-22 20:57:29,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:57:29,405.405 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-22 20:57:30,593.593 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:57:30,596.596 INFO    ] Checking for system updates...
[2026-06-22 20:57:30,634.634 INFO    ] 200
[2026-06-22 20:57:30,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:57:30,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:57:30,696.696 INFO    ] No update needed
[2026-06-22 20:57:30,698.698 INFO    ] Checking for camera pi updates...
[2026-06-22 20:57:30,734.734 INFO    ] 200
[2026-06-22 20:57:30,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:57:30,777.777 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:57:30,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:57:30,868.868 INFO    ] No camera update needed
[2026-06-22 20:57:30,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:57:30,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:57:30,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:57:30,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:57:32,924.924 INFO    ] ================================================
[2026-06-22 20:57:32,939.939 INFO    ] Launching Daemon at Mon Jun 22 20:57:32 IST 2026
[2026-06-22 20:57:32,951.951 INFO    ] ================================================
[2026-06-22 20:57:33,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:57:33
[2026-06-22 20:57:34,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:57:34,378.378 INFO    ] Initializing speech engine...
[2026-06-22 20:57:34,385.385 INFO    ] 2026-06-22 20:57:34
[2026-06-22 20:57:34,632.632 INFO    ] 2026-06-22 20:57:34
[2026-06-22 20:57:34,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:57:36,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:57:36,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:57:37,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:57:37,415.415 INFO    ] time= 22/06/2026 20:57:37
[2026-06-22 20:57:37,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:57:37,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:57:37,501.501 INFO    ] No existing commands found in stream
[2026-06-22 20:57:42,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:57:42,513.513 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-22 20:57:43,685.685 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:57:43,688.688 INFO    ] Checking for system updates...
[2026-06-22 20:57:43,725.725 INFO    ] 200
[2026-06-22 20:57:43,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:57:43,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:57:43,783.783 INFO    ] No update needed
[2026-06-22 20:57:43,786.786 INFO    ] Checking for camera pi updates...
[2026-06-22 20:57:43,821.821 INFO    ] 200
[2026-06-22 20:57:43,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:57:43,865.865 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:57:43,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:57:43,961.961 INFO    ] No camera update needed
[2026-06-22 20:57:43,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:57:43,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:57:43,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:57:43,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:57:46,019.019 INFO    ] ================================================
[2026-06-22 20:57:46,045.045 INFO    ] Launching Daemon at Mon Jun 22 20:57:46 IST 2026
[2026-06-22 20:57:46,056.056 INFO    ] ================================================
[2026-06-22 20:57:46,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:57:46
[2026-06-22 20:57:47,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:57:47,385.385 INFO    ] Initializing speech engine...
[2026-06-22 20:57:47,397.397 INFO    ] 2026-06-22 20:57:47
[2026-06-22 20:57:47,649.649 INFO    ] 2026-06-22 20:57:47
[2026-06-22 20:57:47,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:57:47,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:57:47,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:57:48,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:57:48,030.030 INFO    ] time= 22/06/2026 20:57:48
[2026-06-22 20:57:48,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:57:48,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:57:48,207.207 INFO    ] No existing commands found in stream
[2026-06-22 20:57:53,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:57:53,229.229 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-22 20:57:53,832.832 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:57:53,835.835 INFO    ] Checking for system updates...
[2026-06-22 20:57:53,870.870 INFO    ] 200
[2026-06-22 20:57:53,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:57:53,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:57:53,937.937 INFO    ] No update needed
[2026-06-22 20:57:53,940.940 INFO    ] Checking for camera pi updates...
[2026-06-22 20:57:53,974.974 INFO    ] 200
[2026-06-22 20:57:53,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:57:54,018.018 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:57:54,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:57:54,102.102 INFO    ] No camera update needed
[2026-06-22 20:57:54,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:57:54,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:57:54,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:57:54,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:57:56,158.158 INFO    ] ================================================
[2026-06-22 20:57:56,173.173 INFO    ] Launching Daemon at Mon Jun 22 20:57:56 IST 2026
[2026-06-22 20:57:56,183.183 INFO    ] ================================================
[2026-06-22 20:57:56,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:57:56
[2026-06-22 20:57:57,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:57:57,574.574 INFO    ] Initializing speech engine...
[2026-06-22 20:57:57,582.582 INFO    ] 2026-06-22 20:57:57
[2026-06-22 20:57:57,833.833 INFO    ] 2026-06-22 20:57:57
[2026-06-22 20:57:57,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:57:58,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:57:58,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:57:58,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:57:58,289.289 INFO    ] time= 22/06/2026 20:57:58
[2026-06-22 20:57:58,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:57:58,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:57:58,523.523 INFO    ] No existing commands found in stream
[2026-06-22 20:58:03,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:58:03,553.553 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-22 20:58:07,658.658 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 20:58:07,660.660 INFO    ] Checking for system updates...
[2026-06-22 20:58:07,700.700 INFO    ] 200
[2026-06-22 20:58:07,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:58:07,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:58:07,766.766 INFO    ] No update needed
[2026-06-22 20:58:07,768.768 INFO    ] Checking for camera pi updates...
[2026-06-22 20:58:07,803.803 INFO    ] 200
[2026-06-22 20:58:07,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:58:07,846.846 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:58:07,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:58:07,932.932 INFO    ] No camera update needed
[2026-06-22 20:58:07,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:58:07,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:58:07,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:58:07,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:58:09,990.990 INFO    ] ================================================
[2026-06-22 20:58:10,006.006 INFO    ] Launching Daemon at Mon Jun 22 20:58:10 IST 2026
[2026-06-22 20:58:10,016.016 INFO    ] ================================================
[2026-06-22 20:58:10,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:58:10
[2026-06-22 20:58:11,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:58:11,723.723 INFO    ] Initializing speech engine...
[2026-06-22 20:58:11,739.739 INFO    ] 2026-06-22 20:58:11
[2026-06-22 20:58:12,056.056 INFO    ] 2026-06-22 20:58:12
[2026-06-22 20:58:12,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:58:12,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:58:12,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:58:12,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:58:12,509.509 INFO    ] time= 22/06/2026 20:58:12
[2026-06-22 20:58:12,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:58:12,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:58:12,722.722 INFO    ] No existing commands found in stream
[2026-06-22 20:58:17,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:58:17,745.745 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-22 20:58:20,331.331 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:58:20,332.332 INFO    ] Checking for system updates...
[2026-06-22 20:58:20,356.356 INFO    ] 200
[2026-06-22 20:58:20,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:58:20,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:58:20,417.417 INFO    ] No update needed
[2026-06-22 20:58:20,420.420 INFO    ] Checking for camera pi updates...
[2026-06-22 20:58:20,454.454 INFO    ] 200
[2026-06-22 20:58:20,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:58:20,497.497 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:58:20,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:58:20,605.605 INFO    ] No camera update needed
[2026-06-22 20:58:20,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:58:20,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:58:20,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:58:20,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:58:22,661.661 INFO    ] ================================================
[2026-06-22 20:58:22,677.677 INFO    ] Launching Daemon at Mon Jun 22 20:58:22 IST 2026
[2026-06-22 20:58:22,687.687 INFO    ] ================================================
[2026-06-22 20:58:23,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:58:23
[2026-06-22 20:58:23,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:58:24,132.132 INFO    ] Initializing speech engine...
[2026-06-22 20:58:24,141.141 INFO    ] 2026-06-22 20:58:24
[2026-06-22 20:58:24,387.387 INFO    ] 2026-06-22 20:58:24
[2026-06-22 20:58:24,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:58:24,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:58:24,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:58:24,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:58:24,855.855 INFO    ] time= 22/06/2026 20:58:24
[2026-06-22 20:58:24,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:58:24,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:58:25,115.115 INFO    ] No existing commands found in stream
[2026-06-22 20:58:30,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:58:30,132.132 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-22 20:58:31,921.921 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 20:58:31,924.924 INFO    ] Checking for system updates...
[2026-06-22 20:58:31,972.972 INFO    ] 200
[2026-06-22 20:58:31,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:58:32,040.040 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:58:32,044.044 INFO    ] No update needed
[2026-06-22 20:58:32,047.047 INFO    ] Checking for camera pi updates...
[2026-06-22 20:58:32,086.086 INFO    ] 200
[2026-06-22 20:58:32,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:58:32,136.136 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:58:32,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:58:32,205.205 INFO    ] No camera update needed
[2026-06-22 20:58:32,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:58:32,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:58:32,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:58:32,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:58:34,271.271 INFO    ] ================================================
[2026-06-22 20:58:34,287.287 INFO    ] Launching Daemon at Mon Jun 22 20:58:34 IST 2026
[2026-06-22 20:58:34,298.298 INFO    ] ================================================
[2026-06-22 20:58:34,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:58:34
[2026-06-22 20:58:35,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:58:35,982.982 INFO    ] Initializing speech engine...
[2026-06-22 20:58:35,993.993 INFO    ] 2026-06-22 20:58:35
[2026-06-22 20:58:36,315.315 INFO    ] 2026-06-22 20:58:36
[2026-06-22 20:58:36,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:58:37,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:58:37,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:58:38,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:58:38,434.434 INFO    ] time= 22/06/2026 20:58:38
[2026-06-22 20:58:38,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:58:38,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:58:38,561.561 INFO    ] No existing commands found in stream
[2026-06-22 20:58:43,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:58:43,582.582 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-22 20:58:45,281.281 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:58:45,284.284 INFO    ] Checking for system updates...
[2026-06-22 20:58:45,326.326 INFO    ] 200
[2026-06-22 20:58:45,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:58:45,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:58:45,392.392 INFO    ] No update needed
[2026-06-22 20:58:45,395.395 INFO    ] Checking for camera pi updates...
[2026-06-22 20:58:45,433.433 INFO    ] 200
[2026-06-22 20:58:45,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:58:45,477.477 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:58:45,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:58:45,675.675 INFO    ] No camera update needed
[2026-06-22 20:58:45,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:58:45,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:58:45,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:58:45,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:58:47,730.730 INFO    ] ================================================
[2026-06-22 20:58:47,746.746 INFO    ] Launching Daemon at Mon Jun 22 20:58:47 IST 2026
[2026-06-22 20:58:47,757.757 INFO    ] ================================================
[2026-06-22 20:58:48,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:58:48
[2026-06-22 20:58:48,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:58:49,107.107 INFO    ] Initializing speech engine...
[2026-06-22 20:58:49,115.115 INFO    ] 2026-06-22 20:58:49
[2026-06-22 20:58:49,370.370 INFO    ] 2026-06-22 20:58:49
[2026-06-22 20:58:49,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:58:49,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:58:49,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:58:49,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:58:49,858.858 INFO    ] time= 22/06/2026 20:58:49
[2026-06-22 20:58:49,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:58:49,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:58:50,064.064 INFO    ] No existing commands found in stream
[2026-06-22 20:58:55,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:58:55,095.095 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-22 20:58:57,396.396 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:58:57,399.399 INFO    ] Checking for system updates...
[2026-06-22 20:58:57,438.438 INFO    ] 200
[2026-06-22 20:58:57,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:58:57,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:58:57,496.496 INFO    ] No update needed
[2026-06-22 20:58:57,499.499 INFO    ] Checking for camera pi updates...
[2026-06-22 20:58:57,537.537 INFO    ] 200
[2026-06-22 20:58:57,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:58:57,581.581 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:58:57,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:58:57,644.644 INFO    ] No camera update needed
[2026-06-22 20:58:57,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:58:57,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:58:57,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:58:57,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:58:59,702.702 INFO    ] ================================================
[2026-06-22 20:58:59,717.717 INFO    ] Launching Daemon at Mon Jun 22 20:58:59 IST 2026
[2026-06-22 20:58:59,728.728 INFO    ] ================================================
[2026-06-22 20:59:00,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:59:00
[2026-06-22 20:59:00,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:59:01,163.163 INFO    ] Initializing speech engine...
[2026-06-22 20:59:01,178.178 INFO    ] 2026-06-22 20:59:01
[2026-06-22 20:59:01,445.445 INFO    ] 2026-06-22 20:59:01
[2026-06-22 20:59:01,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:59:01,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:59:01,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:59:01,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:59:01,813.813 INFO    ] time= 22/06/2026 20:59:01
[2026-06-22 20:59:01,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:59:01,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:59:01,920.920 INFO    ] No existing commands found in stream
[2026-06-22 20:59:06,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:59:06,929.929 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-22 20:59:09,393.393 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 20:59:09,396.396 INFO    ] Checking for system updates...
[2026-06-22 20:59:09,436.436 INFO    ] 200
[2026-06-22 20:59:09,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:59:09,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:59:09,502.502 INFO    ] No update needed
[2026-06-22 20:59:09,504.504 INFO    ] Checking for camera pi updates...
[2026-06-22 20:59:09,543.543 INFO    ] 200
[2026-06-22 20:59:09,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:59:09,586.586 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:59:09,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:59:09,669.669 INFO    ] No camera update needed
[2026-06-22 20:59:09,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:59:09,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:59:09,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:59:09,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:59:11,725.725 INFO    ] ================================================
[2026-06-22 20:59:11,741.741 INFO    ] Launching Daemon at Mon Jun 22 20:59:11 IST 2026
[2026-06-22 20:59:11,751.751 INFO    ] ================================================
[2026-06-22 20:59:12,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:59:12
[2026-06-22 20:59:13,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:59:13,404.404 INFO    ] Initializing speech engine...
[2026-06-22 20:59:13,418.418 INFO    ] 2026-06-22 20:59:13
[2026-06-22 20:59:13,733.733 INFO    ] 2026-06-22 20:59:13
[2026-06-22 20:59:13,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:59:14,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:59:14,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:59:14,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:59:14,243.243 INFO    ] time= 22/06/2026 20:59:14
[2026-06-22 20:59:14,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:59:14,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:59:14,401.401 INFO    ] No existing commands found in stream
[2026-06-22 20:59:19,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:59:19,427.427 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-22 20:59:20,288.288 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:59:20,291.291 INFO    ] Checking for system updates...
[2026-06-22 20:59:20,328.328 INFO    ] 200
[2026-06-22 20:59:20,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:59:20,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:59:20,388.388 INFO    ] No update needed
[2026-06-22 20:59:20,391.391 INFO    ] Checking for camera pi updates...
[2026-06-22 20:59:20,426.426 INFO    ] 200
[2026-06-22 20:59:20,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:59:20,471.471 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:59:20,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:59:20,560.560 INFO    ] No camera update needed
[2026-06-22 20:59:20,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:59:20,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:59:20,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:59:20,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:59:22,619.619 INFO    ] ================================================
[2026-06-22 20:59:22,635.635 INFO    ] Launching Daemon at Mon Jun 22 20:59:22 IST 2026
[2026-06-22 20:59:22,645.645 INFO    ] ================================================
[2026-06-22 20:59:23,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:59:23
[2026-06-22 20:59:23,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:59:24,064.064 INFO    ] Initializing speech engine...
[2026-06-22 20:59:24,072.072 INFO    ] 2026-06-22 20:59:24
[2026-06-22 20:59:24,372.372 INFO    ] 2026-06-22 20:59:24
[2026-06-22 20:59:24,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:59:24,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:59:24,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:59:24,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:59:24,764.764 INFO    ] time= 22/06/2026 20:59:24
[2026-06-22 20:59:24,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:59:24,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:59:24,892.892 INFO    ] No existing commands found in stream
[2026-06-22 20:59:29,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:59:29,904.904 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-22 20:59:32,774.774 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:59:32,777.777 INFO    ] Checking for system updates...
[2026-06-22 20:59:32,816.816 INFO    ] 200
[2026-06-22 20:59:32,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:59:32,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:59:32,887.887 INFO    ] No update needed
[2026-06-22 20:59:32,889.889 INFO    ] Checking for camera pi updates...
[2026-06-22 20:59:32,928.928 INFO    ] 200
[2026-06-22 20:59:32,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:59:32,983.983 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:59:33,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 20:59:33,071.071 INFO    ] No camera update needed
[2026-06-22 20:59:33,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:59:33,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:59:33,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:59:33,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:59:35,128.128 INFO    ] ================================================
[2026-06-22 20:59:35,143.143 INFO    ] Launching Daemon at Mon Jun 22 20:59:35 IST 2026
[2026-06-22 20:59:35,154.154 INFO    ] ================================================
[2026-06-22 20:59:35,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:59:35
[2026-06-22 20:59:36,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:59:36,489.489 INFO    ] Initializing speech engine...
[2026-06-22 20:59:36,495.495 INFO    ] 2026-06-22 20:59:36
[2026-06-22 20:59:36,797.797 INFO    ] 2026-06-22 20:59:36
[2026-06-22 20:59:36,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:59:39,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:59:39,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:59:40,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:59:40,545.545 INFO    ] time= 22/06/2026 20:59:40
[2026-06-22 20:59:40,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:59:40,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:59:40,600.600 INFO    ] No existing commands found in stream
[2026-06-22 20:59:45,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:59:45,612.612 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-22 20:59:48,688.688 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 20:59:48,689.689 INFO    ] Checking for system updates...
[2026-06-22 20:59:48,710.710 INFO    ] 200
[2026-06-22 20:59:48,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:59:48,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:59:48,762.762 INFO    ] No update needed
[2026-06-22 20:59:48,765.765 INFO    ] Checking for camera pi updates...
[2026-06-22 20:59:48,805.805 INFO    ] 200
[2026-06-22 20:59:48,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 20:59:48,856.856 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 20:59:48,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 20:59:48,963.963 INFO    ] No camera update needed
[2026-06-22 20:59:48,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-22 20:59:48,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 20:59:48,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 20:59:48,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 20:59:51,025.025 INFO    ] ================================================
[2026-06-22 20:59:51,040.040 INFO    ] Launching Daemon at Mon Jun 22 20:59:51 IST 2026
[2026-06-22 20:59:51,051.051 INFO    ] ================================================
[2026-06-22 20:59:51,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 20:59:51
[2026-06-22 20:59:52,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 20:59:52,723.723 INFO    ] Initializing speech engine...
[2026-06-22 20:59:52,735.735 INFO    ] 2026-06-22 20:59:52
[2026-06-22 20:59:53,022.022 INFO    ] 2026-06-22 20:59:53
[2026-06-22 20:59:53,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 20:59:53,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 20:59:53,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 20:59:53,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 20:59:53,573.573 INFO    ] time= 22/06/2026 20:59:53
[2026-06-22 20:59:53,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 20:59:53,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-22 20:59:53,731.731 INFO    ] No existing commands found in stream
[2026-06-22 20:59:58,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 20:59:58,770.770 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-22 21:00:01,365.365 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:00:01,368.368 INFO    ] Checking for system updates...
[2026-06-22 21:00:01,406.406 INFO    ] 200
[2026-06-22 21:00:01,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:00:01,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:00:01,474.474 INFO    ] No update needed
[2026-06-22 21:00:01,477.477 INFO    ] Checking for camera pi updates...
[2026-06-22 21:00:01,512.512 INFO    ] 200
[2026-06-22 21:00:01,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:00:01,557.557 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:00:02,064.064 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:00:02,086.086 INFO    ] No camera update needed
[2026-06-22 21:00:02,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:00:02,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:00:02,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:00:02,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:00:04,277.277 INFO    ] ================================================
[2026-06-22 21:00:04,408.408 INFO    ] Launching Daemon at Mon Jun 22 21:00:04 IST 2026
[2026-06-22 21:00:04,448.448 INFO    ] ================================================
[2026-06-22 21:00:06,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:00:06
[2026-06-22 21:00:06,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:00:07,258.258 INFO    ] Initializing speech engine...
[2026-06-22 21:00:07,266.266 INFO    ] 2026-06-22 21:00:07
[2026-06-22 21:00:07,567.567 INFO    ] 2026-06-22 21:00:07
[2026-06-22 21:00:07,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:00:10,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:00:10,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:00:11,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:00:11,669.669 INFO    ] time= 22/06/2026 21:00:11
[2026-06-22 21:00:11,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:00:11,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:00:11,738.738 INFO    ] No existing commands found in stream
[2026-06-22 21:00:16,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:00:16,751.751 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-22 21:00:17,644.644 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:00:17,647.647 INFO    ] Checking for system updates...
[2026-06-22 21:00:17,684.684 INFO    ] 200
[2026-06-22 21:00:17,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:00:17,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:00:17,742.742 INFO    ] No update needed
[2026-06-22 21:00:17,745.745 INFO    ] Checking for camera pi updates...
[2026-06-22 21:00:17,787.787 INFO    ] 200
[2026-06-22 21:00:17,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:00:17,836.836 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:00:17,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:00:17,920.920 INFO    ] No camera update needed
[2026-06-22 21:00:17,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:00:17,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:00:17,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:00:17,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:00:19,981.981 INFO    ] ================================================
[2026-06-22 21:00:20,997.997 INFO    ] Launching Daemon at Mon Jun 22 21:00:19 IST 2026
[2026-06-22 21:00:20,008.008 INFO    ] ================================================
[2026-06-22 21:00:20,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:00:20
[2026-06-22 21:00:21,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:00:21,519.519 INFO    ] Initializing speech engine...
[2026-06-22 21:00:21,536.536 INFO    ] 2026-06-22 21:00:21
[2026-06-22 21:00:21,845.845 INFO    ] 2026-06-22 21:00:21
[2026-06-22 21:00:21,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:00:22,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:00:22,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:00:22,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:00:22,258.258 INFO    ] time= 22/06/2026 21:00:22
[2026-06-22 21:00:22,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:00:22,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:00:22,396.396 INFO    ] No existing commands found in stream
[2026-06-22 21:00:27,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:00:27,409.409 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-22 21:00:31,533.533 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:00:31,535.535 INFO    ] Checking for system updates...
[2026-06-22 21:00:31,572.572 INFO    ] 200
[2026-06-22 21:00:31,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:00:31,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:00:31,629.629 INFO    ] No update needed
[2026-06-22 21:00:31,632.632 INFO    ] Checking for camera pi updates...
[2026-06-22 21:00:31,666.666 INFO    ] 200
[2026-06-22 21:00:31,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:00:31,709.709 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:00:31,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:00:31,769.769 INFO    ] No camera update needed
[2026-06-22 21:00:31,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:00:31,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:00:31,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:00:31,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:00:33,822.822 INFO    ] ================================================
[2026-06-22 21:00:33,837.837 INFO    ] Launching Daemon at Mon Jun 22 21:00:33 IST 2026
[2026-06-22 21:00:33,848.848 INFO    ] ================================================
[2026-06-22 21:00:34,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:00:34
[2026-06-22 21:00:35,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:00:35,288.288 INFO    ] Initializing speech engine...
[2026-06-22 21:00:35,295.295 INFO    ] 2026-06-22 21:00:35
[2026-06-22 21:00:35,538.538 INFO    ] 2026-06-22 21:00:35
[2026-06-22 21:00:35,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:00:35,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:00:35,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:00:36,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:00:36,059.059 INFO    ] time= 22/06/2026 21:00:36
[2026-06-22 21:00:36,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:00:36,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:00:36,227.227 INFO    ] No existing commands found in stream
[2026-06-22 21:00:41,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:00:41,260.260 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-22 21:00:43,491.491 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:00:43,494.494 INFO    ] Checking for system updates...
[2026-06-22 21:00:43,530.530 INFO    ] 200
[2026-06-22 21:00:43,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:00:43,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:00:43,588.588 INFO    ] No update needed
[2026-06-22 21:00:43,590.590 INFO    ] Checking for camera pi updates...
[2026-06-22 21:00:43,623.623 INFO    ] 200
[2026-06-22 21:00:43,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:00:43,672.672 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:00:43,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:00:43,755.755 INFO    ] No camera update needed
[2026-06-22 21:00:43,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:00:43,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:00:43,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:00:43,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:00:45,813.813 INFO    ] ================================================
[2026-06-22 21:00:45,828.828 INFO    ] Launching Daemon at Mon Jun 22 21:00:45 IST 2026
[2026-06-22 21:00:45,839.839 INFO    ] ================================================
[2026-06-22 21:00:46,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:00:46
[2026-06-22 21:00:46,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:00:47,230.230 INFO    ] Initializing speech engine...
[2026-06-22 21:00:47,244.244 INFO    ] 2026-06-22 21:00:47
[2026-06-22 21:00:47,558.558 INFO    ] 2026-06-22 21:00:47
[2026-06-22 21:00:47,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:00:47,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:00:47,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:00:48,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:00:48,065.065 INFO    ] time= 22/06/2026 21:00:48
[2026-06-22 21:00:48,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:00:48,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:00:48,212.212 INFO    ] No existing commands found in stream
[2026-06-22 21:00:53,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:00:53,237.237 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-22 21:00:56,810.810 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:00:56,814.814 INFO    ] Checking for system updates...
[2026-06-22 21:00:56,852.852 INFO    ] 200
[2026-06-22 21:00:56,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:00:56,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:00:56,931.931 INFO    ] No update needed
[2026-06-22 21:00:56,934.934 INFO    ] Checking for camera pi updates...
[2026-06-22 21:00:56,974.974 INFO    ] 200
[2026-06-22 21:00:56,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:00:57,021.021 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:00:57,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:00:57,185.185 INFO    ] No camera update needed
[2026-06-22 21:00:57,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:00:57,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:00:57,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:00:57,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:00:59,246.246 INFO    ] ================================================
[2026-06-22 21:00:59,262.262 INFO    ] Launching Daemon at Mon Jun 22 21:00:59 IST 2026
[2026-06-22 21:00:59,273.273 INFO    ] ================================================
[2026-06-22 21:00:59,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:00:59
[2026-06-22 21:01:00,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:01:00,947.947 INFO    ] Initializing speech engine...
[2026-06-22 21:01:00,959.959 INFO    ] 2026-06-22 21:01:00
[2026-06-22 21:01:01,270.270 INFO    ] 2026-06-22 21:01:01
[2026-06-22 21:01:01,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:01:01,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:01:01,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:01:01,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:01:01,782.782 INFO    ] time= 22/06/2026 21:01:01
[2026-06-22 21:01:01,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:01:01,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:01:01,922.922 INFO    ] No existing commands found in stream
[2026-06-22 21:01:06,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:01:06,969.969 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-22 21:01:12,193.193 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:01:12,197.197 INFO    ] Checking for system updates...
[2026-06-22 21:01:12,235.235 INFO    ] 200
[2026-06-22 21:01:12,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:01:12,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:01:12,296.296 INFO    ] No update needed
[2026-06-22 21:01:12,299.299 INFO    ] Checking for camera pi updates...
[2026-06-22 21:01:12,338.338 INFO    ] 200
[2026-06-22 21:01:12,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:01:12,384.384 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:01:12,492.492 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:01:12,495.495 INFO    ] No camera update needed
[2026-06-22 21:01:12,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:01:12,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:01:12,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:01:12,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:01:14,556.556 INFO    ] ================================================
[2026-06-22 21:01:14,571.571 INFO    ] Launching Daemon at Mon Jun 22 21:01:14 IST 2026
[2026-06-22 21:01:14,582.582 INFO    ] ================================================
[2026-06-22 21:01:15,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:01:15
[2026-06-22 21:01:15,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:01:16,046.046 INFO    ] Initializing speech engine...
[2026-06-22 21:01:16,055.055 INFO    ] 2026-06-22 21:01:16
[2026-06-22 21:01:16,320.320 INFO    ] 2026-06-22 21:01:16
[2026-06-22 21:01:16,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:01:16,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:01:16,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:01:16,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:01:16,784.784 INFO    ] time= 22/06/2026 21:01:16
[2026-06-22 21:01:16,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:01:16,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:01:16,972.972 INFO    ] No existing commands found in stream
[2026-06-22 21:01:22,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:01:22,004.004 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-22 21:01:23,717.717 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:01:23,719.719 INFO    ] Checking for system updates...
[2026-06-22 21:01:23,761.761 INFO    ] 200
[2026-06-22 21:01:23,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 21:01:23,766.766 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-22 21:01:23,768.768 INFO    ] Checking for camera pi updates...
[2026-06-22 21:01:23,807.807 INFO    ] 200
[2026-06-22 21:01:23,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 21:01:23,812.812 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-22 21:01:23,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:01:23,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:01:23,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:01:23,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:01:25,868.868 INFO    ] ================================================
[2026-06-22 21:01:25,883.883 INFO    ] Launching Daemon at Mon Jun 22 21:01:25 IST 2026
[2026-06-22 21:01:25,894.894 INFO    ] ================================================
[2026-06-22 21:01:26,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:01:26
[2026-06-22 21:01:27,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:01:27,352.352 INFO    ] Initializing speech engine...
[2026-06-22 21:01:27,360.360 INFO    ] 2026-06-22 21:01:27
[2026-06-22 21:01:27,608.608 INFO    ] 2026-06-22 21:01:27
[2026-06-22 21:01:27,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:01:27,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:01:27,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:01:28,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:01:28,078.078 INFO    ] time= 22/06/2026 21:01:28
[2026-06-22 21:01:28,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:01:28,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:01:28,308.308 INFO    ] No existing commands found in stream
[2026-06-22 21:01:33,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:01:33,337.337 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-22 21:01:36,766.766 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:01:36,769.769 INFO    ] Checking for system updates...
[2026-06-22 21:01:36,807.807 INFO    ] 200
[2026-06-22 21:01:36,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:01:36,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:01:36,874.874 INFO    ] No update needed
[2026-06-22 21:01:36,877.877 INFO    ] Checking for camera pi updates...
[2026-06-22 21:01:36,912.912 INFO    ] 200
[2026-06-22 21:01:36,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:01:36,955.955 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:01:37,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:01:37,035.035 INFO    ] No camera update needed
[2026-06-22 21:01:37,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:01:37,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:01:37,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:01:37,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:01:39,123.123 INFO    ] ================================================
[2026-06-22 21:01:39,138.138 INFO    ] Launching Daemon at Mon Jun 22 21:01:39 IST 2026
[2026-06-22 21:01:39,149.149 INFO    ] ================================================
[2026-06-22 21:01:39,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:01:39
[2026-06-22 21:01:40,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:01:40,741.741 INFO    ] Initializing speech engine...
[2026-06-22 21:01:40,749.749 INFO    ] 2026-06-22 21:01:40
[2026-06-22 21:01:41,062.062 INFO    ] 2026-06-22 21:01:41
[2026-06-22 21:01:41,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:01:43,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:01:43,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:01:44,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:01:44,025.025 INFO    ] time= 22/06/2026 21:01:44
[2026-06-22 21:01:44,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:01:44,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:01:44,081.081 INFO    ] No existing commands found in stream
[2026-06-22 21:01:49,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:01:49,095.095 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-22 21:01:52,120.120 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:01:52,123.123 INFO    ] Checking for system updates...
[2026-06-22 21:01:52,225.225 INFO    ] 200
[2026-06-22 21:01:52,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:01:52,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:01:52,287.287 INFO    ] No update needed
[2026-06-22 21:01:52,289.289 INFO    ] Checking for camera pi updates...
[2026-06-22 21:01:52,324.324 INFO    ] 200
[2026-06-22 21:01:52,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:01:52,374.374 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:01:52,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:01:52,511.511 INFO    ] No camera update needed
[2026-06-22 21:01:52,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:01:52,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:01:52,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:01:52,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:01:54,568.568 INFO    ] ================================================
[2026-06-22 21:01:54,583.583 INFO    ] Launching Daemon at Mon Jun 22 21:01:54 IST 2026
[2026-06-22 21:01:54,594.594 INFO    ] ================================================
[2026-06-22 21:01:55,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:01:55
[2026-06-22 21:01:55,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:01:56,002.002 INFO    ] Initializing speech engine...
[2026-06-22 21:01:56,010.010 INFO    ] 2026-06-22 21:01:56
[2026-06-22 21:01:56,287.287 INFO    ] 2026-06-22 21:01:56
[2026-06-22 21:01:56,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:01:56,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:01:56,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:01:56,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:01:56,749.749 INFO    ] time= 22/06/2026 21:01:56
[2026-06-22 21:01:56,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:01:56,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:01:56,985.985 INFO    ] No existing commands found in stream
[2026-06-22 21:02:02,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:02:02,020.020 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-22 21:02:05,843.843 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:02:05,845.845 INFO    ] Checking for system updates...
[2026-06-22 21:02:05,881.881 INFO    ] 200
[2026-06-22 21:02:05,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:02:05,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:02:05,939.939 INFO    ] No update needed
[2026-06-22 21:02:05,942.942 INFO    ] Checking for camera pi updates...
[2026-06-22 21:02:05,975.975 INFO    ] 200
[2026-06-22 21:02:05,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:02:06,019.019 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:02:06,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:02:06,121.121 INFO    ] No camera update needed
[2026-06-22 21:02:06,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:02:06,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:02:06,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:02:06,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:02:08,176.176 INFO    ] ================================================
[2026-06-22 21:02:08,191.191 INFO    ] Launching Daemon at Mon Jun 22 21:02:08 IST 2026
[2026-06-22 21:02:08,202.202 INFO    ] ================================================
[2026-06-22 21:02:08,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:02:08
[2026-06-22 21:02:09,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:02:09,663.663 INFO    ] Initializing speech engine...
[2026-06-22 21:02:09,671.671 INFO    ] 2026-06-22 21:02:09
[2026-06-22 21:02:09,934.934 INFO    ] 2026-06-22 21:02:09
[2026-06-22 21:02:09,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:02:14,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:02:14,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:02:15,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:02:15,883.883 INFO    ] time= 22/06/2026 21:02:15
[2026-06-22 21:02:15,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:02:15,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:02:15,941.941 INFO    ] No existing commands found in stream
[2026-06-22 21:02:20,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:02:20,953.953 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-22 21:02:23,519.519 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:02:23,521.521 INFO    ] Checking for system updates...
[2026-06-22 21:02:23,557.557 INFO    ] 200
[2026-06-22 21:02:23,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:02:23,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:02:23,615.615 INFO    ] No update needed
[2026-06-22 21:02:23,618.618 INFO    ] Checking for camera pi updates...
[2026-06-22 21:02:23,651.651 INFO    ] 200
[2026-06-22 21:02:23,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:02:23,695.695 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:02:23,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:02:23,788.788 INFO    ] No camera update needed
[2026-06-22 21:02:23,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:02:23,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:02:23,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:02:23,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:02:25,845.845 INFO    ] ================================================
[2026-06-22 21:02:25,860.860 INFO    ] Launching Daemon at Mon Jun 22 21:02:25 IST 2026
[2026-06-22 21:02:25,870.870 INFO    ] ================================================
[2026-06-22 21:02:26,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:02:26
[2026-06-22 21:02:27,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:02:27,283.283 INFO    ] Initializing speech engine...
[2026-06-22 21:02:27,290.290 INFO    ] 2026-06-22 21:02:27
[2026-06-22 21:02:27,579.579 INFO    ] 2026-06-22 21:02:27
[2026-06-22 21:02:27,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:02:27,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:02:27,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:02:27,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:02:27,989.989 INFO    ] time= 22/06/2026 21:02:27
[2026-06-22 21:02:27,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:02:28,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:02:28,154.154 INFO    ] No existing commands found in stream
[2026-06-22 21:02:33,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:02:33,188.188 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-22 21:02:36,108.108 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:02:36,111.111 INFO    ] Checking for system updates...
[2026-06-22 21:02:36,150.150 INFO    ] 200
[2026-06-22 21:02:36,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:02:36,205.205 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:02:36,208.208 INFO    ] No update needed
[2026-06-22 21:02:36,210.210 INFO    ] Checking for camera pi updates...
[2026-06-22 21:02:36,251.251 INFO    ] 200
[2026-06-22 21:02:36,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:02:36,294.294 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:02:36,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:02:36,373.373 INFO    ] No camera update needed
[2026-06-22 21:02:36,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:02:36,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:02:36,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:02:36,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:02:38,430.430 INFO    ] ================================================
[2026-06-22 21:02:38,445.445 INFO    ] Launching Daemon at Mon Jun 22 21:02:38 IST 2026
[2026-06-22 21:02:38,456.456 INFO    ] ================================================
[2026-06-22 21:02:39,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:02:39
[2026-06-22 21:02:39,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:02:40,017.017 INFO    ] Initializing speech engine...
[2026-06-22 21:02:40,025.025 INFO    ] 2026-06-22 21:02:40
[2026-06-22 21:02:40,312.312 INFO    ] 2026-06-22 21:02:40
[2026-06-22 21:02:40,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:02:40,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:02:40,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:02:40,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:02:40,805.805 INFO    ] time= 22/06/2026 21:02:40
[2026-06-22 21:02:40,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:02:40,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:02:41,025.025 INFO    ] No existing commands found in stream
[2026-06-22 21:02:46,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:02:46,049.049 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-22 21:02:48,442.442 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:02:48,445.445 INFO    ] Checking for system updates...
[2026-06-22 21:02:48,483.483 INFO    ] 200
[2026-06-22 21:02:48,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:02:48,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:02:48,543.543 INFO    ] No update needed
[2026-06-22 21:02:48,546.546 INFO    ] Checking for camera pi updates...
[2026-06-22 21:02:48,584.584 INFO    ] 200
[2026-06-22 21:02:48,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:02:48,629.629 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:02:48,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:02:48,722.722 INFO    ] No camera update needed
[2026-06-22 21:02:48,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:02:48,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:02:48,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:02:48,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:02:50,780.780 INFO    ] ================================================
[2026-06-22 21:02:50,795.795 INFO    ] Launching Daemon at Mon Jun 22 21:02:50 IST 2026
[2026-06-22 21:02:50,806.806 INFO    ] ================================================
[2026-06-22 21:02:51,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:02:51
[2026-06-22 21:02:51,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:02:52,245.245 INFO    ] Initializing speech engine...
[2026-06-22 21:02:52,258.258 INFO    ] 2026-06-22 21:02:52
[2026-06-22 21:02:52,543.543 INFO    ] 2026-06-22 21:02:52
[2026-06-22 21:02:52,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:02:52,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:02:52,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:02:52,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:02:52,960.960 INFO    ] time= 22/06/2026 21:02:52
[2026-06-22 21:02:52,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:02:52,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:02:53,043.043 INFO    ] No existing commands found in stream
[2026-06-22 21:02:58,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:02:58,059.059 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-22 21:03:00,267.267 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:03:00,270.270 INFO    ] Checking for system updates...
[2026-06-22 21:03:00,307.307 INFO    ] 200
[2026-06-22 21:03:00,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:03:00,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:03:00,364.364 INFO    ] No update needed
[2026-06-22 21:03:00,366.366 INFO    ] Checking for camera pi updates...
[2026-06-22 21:03:00,400.400 INFO    ] 200
[2026-06-22 21:03:00,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:03:00,443.443 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:03:00,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:03:00,626.626 INFO    ] No camera update needed
[2026-06-22 21:03:00,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:03:00,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:03:00,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:03:00,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:03:02,700.700 INFO    ] ================================================
[2026-06-22 21:03:02,723.723 INFO    ] Launching Daemon at Mon Jun 22 21:03:02 IST 2026
[2026-06-22 21:03:02,742.742 INFO    ] ================================================
[2026-06-22 21:03:03,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:03:03
[2026-06-22 21:03:04,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:03:04,308.308 INFO    ] Initializing speech engine...
[2026-06-22 21:03:04,317.317 INFO    ] 2026-06-22 21:03:04
[2026-06-22 21:03:04,575.575 INFO    ] 2026-06-22 21:03:04
[2026-06-22 21:03:04,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:03:05,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:03:05,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:03:05,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:03:05,308.308 INFO    ] time= 22/06/2026 21:03:05
[2026-06-22 21:03:05,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:03:05,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:03:05,540.540 INFO    ] No existing commands found in stream
[2026-06-22 21:03:10,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:03:10,556.556 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-22 21:03:11,894.894 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:03:11,897.897 INFO    ] Checking for system updates...
[2026-06-22 21:03:11,933.933 INFO    ] 200
[2026-06-22 21:03:11,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:03:11,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:03:11,991.991 INFO    ] No update needed
[2026-06-22 21:03:11,993.993 INFO    ] Checking for camera pi updates...
[2026-06-22 21:03:12,028.028 INFO    ] 200
[2026-06-22 21:03:12,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:03:12,076.076 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:03:12,153.153 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:03:12,156.156 INFO    ] No camera update needed
[2026-06-22 21:03:12,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:03:12,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:03:12,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:03:12,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:03:14,212.212 INFO    ] ================================================
[2026-06-22 21:03:14,228.228 INFO    ] Launching Daemon at Mon Jun 22 21:03:14 IST 2026
[2026-06-22 21:03:14,238.238 INFO    ] ================================================
[2026-06-22 21:03:14,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:03:14
[2026-06-22 21:03:15,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:03:15,691.691 INFO    ] Initializing speech engine...
[2026-06-22 21:03:15,699.699 INFO    ] 2026-06-22 21:03:15
[2026-06-22 21:03:16,000.000 INFO    ] 2026-06-22 21:03:15
[2026-06-22 21:03:16,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:03:18,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:03:18,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:03:18,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:03:18,722.722 INFO    ] time= 22/06/2026 21:03:18
[2026-06-22 21:03:18,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:03:18,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:03:18,863.863 INFO    ] No existing commands found in stream
[2026-06-22 21:03:23,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:03:23,896.896 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-22 21:03:24,688.688 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:03:24,689.689 INFO    ] Checking for system updates...
[2026-06-22 21:03:24,710.710 INFO    ] 200
[2026-06-22 21:03:24,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:03:24,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:03:24,749.749 INFO    ] No update needed
[2026-06-22 21:03:24,752.752 INFO    ] Checking for camera pi updates...
[2026-06-22 21:03:24,791.791 INFO    ] 200
[2026-06-22 21:03:24,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:03:24,836.836 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:03:24,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:03:24,921.921 INFO    ] No camera update needed
[2026-06-22 21:03:24,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:03:24,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:03:24,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:03:24,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:03:26,981.981 INFO    ] ================================================
[2026-06-22 21:03:27,997.997 INFO    ] Launching Daemon at Mon Jun 22 21:03:26 IST 2026
[2026-06-22 21:03:27,008.008 INFO    ] ================================================
[2026-06-22 21:03:27,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:03:27
[2026-06-22 21:03:28,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:03:28,335.335 INFO    ] Initializing speech engine...
[2026-06-22 21:03:28,342.342 INFO    ] 2026-06-22 21:03:28
[2026-06-22 21:03:28,635.635 INFO    ] 2026-06-22 21:03:28
[2026-06-22 21:03:28,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:03:28,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:03:28,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:03:29,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:03:29,013.013 INFO    ] time= 22/06/2026 21:03:29
[2026-06-22 21:03:29,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:03:29,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:03:29,137.137 INFO    ] No existing commands found in stream
[2026-06-22 21:03:34,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:03:34,152.152 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-22 21:03:38,122.122 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:03:38,125.125 INFO    ] Checking for system updates...
[2026-06-22 21:03:38,160.160 INFO    ] 200
[2026-06-22 21:03:38,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:03:38,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:03:38,220.220 INFO    ] No update needed
[2026-06-22 21:03:38,222.222 INFO    ] Checking for camera pi updates...
[2026-06-22 21:03:38,256.256 INFO    ] 200
[2026-06-22 21:03:38,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:03:38,304.304 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:03:38,408.408 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:03:38,411.411 INFO    ] No camera update needed
[2026-06-22 21:03:38,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:03:38,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:03:38,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:03:38,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:03:40,468.468 INFO    ] ================================================
[2026-06-22 21:03:40,484.484 INFO    ] Launching Daemon at Mon Jun 22 21:03:40 IST 2026
[2026-06-22 21:03:40,495.495 INFO    ] ================================================
[2026-06-22 21:03:41,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:03:41
[2026-06-22 21:03:41,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:03:41,852.852 INFO    ] Initializing speech engine...
[2026-06-22 21:03:41,863.863 INFO    ] 2026-06-22 21:03:41
[2026-06-22 21:03:42,126.126 INFO    ] 2026-06-22 21:03:42
[2026-06-22 21:03:42,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:03:42,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:03:42,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:03:42,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:03:42,834.834 INFO    ] time= 22/06/2026 21:03:42
[2026-06-22 21:03:42,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:03:42,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:03:43,043.043 INFO    ] No existing commands found in stream
[2026-06-22 21:03:48,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:03:48,077.077 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-22 21:03:50,102.102 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:03:50,104.104 INFO    ] Checking for system updates...
[2026-06-22 21:03:50,126.126 INFO    ] 200
[2026-06-22 21:03:50,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:03:50,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:03:50,159.159 INFO    ] No update needed
[2026-06-22 21:03:50,161.161 INFO    ] Checking for camera pi updates...
[2026-06-22 21:03:50,190.190 INFO    ] 200
[2026-06-22 21:03:50,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:03:50,236.236 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:03:50,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:03:50,321.321 INFO    ] No camera update needed
[2026-06-22 21:03:50,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:03:50,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:03:50,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:03:50,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:03:52,382.382 INFO    ] ================================================
[2026-06-22 21:03:52,398.398 INFO    ] Launching Daemon at Mon Jun 22 21:03:52 IST 2026
[2026-06-22 21:03:52,409.409 INFO    ] ================================================
[2026-06-22 21:03:52,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:03:52
[2026-06-22 21:03:53,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:03:53,784.784 INFO    ] Initializing speech engine...
[2026-06-22 21:03:53,795.795 INFO    ] 2026-06-22 21:03:53
[2026-06-22 21:03:54,063.063 INFO    ] 2026-06-22 21:03:54
[2026-06-22 21:03:54,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:03:54,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:03:54,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:03:54,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:03:54,561.561 INFO    ] time= 22/06/2026 21:03:54
[2026-06-22 21:03:54,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:03:54,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:03:54,825.825 INFO    ] No existing commands found in stream
[2026-06-22 21:03:59,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:03:59,844.844 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-22 21:04:03,593.593 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:04:03,596.596 INFO    ] Checking for system updates...
[2026-06-22 21:04:03,634.634 INFO    ] 200
[2026-06-22 21:04:03,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:04:03,691.691 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:04:03,693.693 INFO    ] No update needed
[2026-06-22 21:04:03,696.696 INFO    ] Checking for camera pi updates...
[2026-06-22 21:04:03,731.731 INFO    ] 200
[2026-06-22 21:04:03,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:04:03,775.775 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:04:03,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:04:03,872.872 INFO    ] No camera update needed
[2026-06-22 21:04:03,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:04:03,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:04:03,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:04:03,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:04:05,930.930 INFO    ] ================================================
[2026-06-22 21:04:05,945.945 INFO    ] Launching Daemon at Mon Jun 22 21:04:05 IST 2026
[2026-06-22 21:04:05,956.956 INFO    ] ================================================
[2026-06-22 21:04:06,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:04:06
[2026-06-22 21:04:07,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:04:07,562.562 INFO    ] Initializing speech engine...
[2026-06-22 21:04:07,571.571 INFO    ] 2026-06-22 21:04:07
[2026-06-22 21:04:07,856.856 INFO    ] 2026-06-22 21:04:07
[2026-06-22 21:04:07,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:04:08,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:04:08,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:04:08,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:04:08,411.411 INFO    ] time= 22/06/2026 21:04:08
[2026-06-22 21:04:08,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:04:08,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:04:08,557.557 INFO    ] No existing commands found in stream
[2026-06-22 21:04:13,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:04:13,582.582 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-22 21:04:15,204.204 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:04:15,207.207 INFO    ] Checking for system updates...
[2026-06-22 21:04:15,250.250 INFO    ] 200
[2026-06-22 21:04:15,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:04:15,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:04:15,309.309 INFO    ] No update needed
[2026-06-22 21:04:15,312.312 INFO    ] Checking for camera pi updates...
[2026-06-22 21:04:15,349.349 INFO    ] 200
[2026-06-22 21:04:15,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:04:15,393.393 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:04:15,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:04:15,482.482 INFO    ] No camera update needed
[2026-06-22 21:04:15,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:04:15,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:04:15,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:04:15,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:04:17,538.538 INFO    ] ================================================
[2026-06-22 21:04:17,554.554 INFO    ] Launching Daemon at Mon Jun 22 21:04:17 IST 2026
[2026-06-22 21:04:17,565.565 INFO    ] ================================================
[2026-06-22 21:04:18,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:04:18
[2026-06-22 21:04:18,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:04:19,009.009 INFO    ] Initializing speech engine...
[2026-06-22 21:04:19,021.021 INFO    ] 2026-06-22 21:04:19
[2026-06-22 21:04:19,288.288 INFO    ] 2026-06-22 21:04:19
[2026-06-22 21:04:19,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:04:20,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:04:20,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:04:20,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:04:20,533.533 INFO    ] time= 22/06/2026 21:04:20
[2026-06-22 21:04:20,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:04:20,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:04:20,662.662 INFO    ] No existing commands found in stream
[2026-06-22 21:04:25,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:04:25,676.676 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-22 21:04:26,782.782 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:04:26,785.785 INFO    ] Checking for system updates...
[2026-06-22 21:04:26,821.821 INFO    ] 200
[2026-06-22 21:04:26,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:04:26,875.875 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:04:26,878.878 INFO    ] No update needed
[2026-06-22 21:04:26,880.880 INFO    ] Checking for camera pi updates...
[2026-06-22 21:04:26,915.915 INFO    ] 200
[2026-06-22 21:04:26,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:04:26,959.959 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:04:27,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:04:27,033.033 INFO    ] No camera update needed
[2026-06-22 21:04:27,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:04:27,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:04:27,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:04:27,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:04:29,094.094 INFO    ] ================================================
[2026-06-22 21:04:29,109.109 INFO    ] Launching Daemon at Mon Jun 22 21:04:29 IST 2026
[2026-06-22 21:04:29,121.121 INFO    ] ================================================
[2026-06-22 21:04:29,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:04:29
[2026-06-22 21:04:30,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:04:30,521.521 INFO    ] Initializing speech engine...
[2026-06-22 21:04:30,546.546 INFO    ] 2026-06-22 21:04:30
[2026-06-22 21:04:30,799.799 INFO    ] 2026-06-22 21:04:30
[2026-06-22 21:04:30,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:04:31,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:04:31,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:04:31,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:04:31,174.174 INFO    ] time= 22/06/2026 21:04:31
[2026-06-22 21:04:31,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:04:31,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:04:31,370.370 INFO    ] No existing commands found in stream
[2026-06-22 21:04:36,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:04:36,387.387 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-22 21:04:37,231.231 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:04:37,234.234 INFO    ] Checking for system updates...
[2026-06-22 21:04:37,269.269 INFO    ] 200
[2026-06-22 21:04:37,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:04:37,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:04:37,333.333 INFO    ] No update needed
[2026-06-22 21:04:37,336.336 INFO    ] Checking for camera pi updates...
[2026-06-22 21:04:37,370.370 INFO    ] 200
[2026-06-22 21:04:37,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:04:37,413.413 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:04:37,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:04:37,485.485 INFO    ] No camera update needed
[2026-06-22 21:04:37,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:04:37,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:04:37,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:04:37,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:04:39,548.548 INFO    ] ================================================
[2026-06-22 21:04:39,562.562 INFO    ] Launching Daemon at Mon Jun 22 21:04:39 IST 2026
[2026-06-22 21:04:39,573.573 INFO    ] ================================================
[2026-06-22 21:04:40,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:04:40
[2026-06-22 21:04:40,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:04:41,019.019 INFO    ] Initializing speech engine...
[2026-06-22 21:04:41,041.041 INFO    ] 2026-06-22 21:04:41
[2026-06-22 21:04:41,293.293 INFO    ] 2026-06-22 21:04:41
[2026-06-22 21:04:41,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:04:41,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:04:41,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:04:41,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:04:41,781.781 INFO    ] time= 22/06/2026 21:04:41
[2026-06-22 21:04:41,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:04:41,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:04:41,999.999 INFO    ] No existing commands found in stream
[2026-06-22 21:04:47,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:04:47,018.018 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-22 21:04:52,422.422 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:04:52,424.424 INFO    ] Checking for system updates...
[2026-06-22 21:04:52,445.445 INFO    ] 200
[2026-06-22 21:04:52,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:04:52,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:04:52,478.478 INFO    ] No update needed
[2026-06-22 21:04:52,480.480 INFO    ] Checking for camera pi updates...
[2026-06-22 21:04:52,499.499 INFO    ] 200
[2026-06-22 21:04:52,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:04:52,536.536 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:04:52,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:04:52,622.622 INFO    ] No camera update needed
[2026-06-22 21:04:52,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:04:52,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:04:52,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:04:52,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:04:54,681.681 INFO    ] ================================================
[2026-06-22 21:04:54,696.696 INFO    ] Launching Daemon at Mon Jun 22 21:04:54 IST 2026
[2026-06-22 21:04:54,707.707 INFO    ] ================================================
[2026-06-22 21:04:55,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:04:55
[2026-06-22 21:04:55,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:04:56,056.056 INFO    ] Initializing speech engine...
[2026-06-22 21:04:56,072.072 INFO    ] 2026-06-22 21:04:56
[2026-06-22 21:04:56,333.333 INFO    ] 2026-06-22 21:04:56
[2026-06-22 21:04:56,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:04:56,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:04:56,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:04:56,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:04:56,896.896 INFO    ] time= 22/06/2026 21:04:56
[2026-06-22 21:04:56,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:04:56,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:04:57,037.037 INFO    ] No existing commands found in stream
[2026-06-22 21:05:02,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:05:02,057.057 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-22 21:05:04,606.606 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:05:04,609.609 INFO    ] Checking for system updates...
[2026-06-22 21:05:04,649.649 INFO    ] 200
[2026-06-22 21:05:04,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:05:04,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:05:04,707.707 INFO    ] No update needed
[2026-06-22 21:05:04,709.709 INFO    ] Checking for camera pi updates...
[2026-06-22 21:05:04,743.743 INFO    ] 200
[2026-06-22 21:05:04,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:05:04,787.787 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:05:04,965.965 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:05:04,967.967 INFO    ] No camera update needed
[2026-06-22 21:05:04,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:05:04,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:05:04,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:05:04,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:05:07,025.025 INFO    ] ================================================
[2026-06-22 21:05:07,040.040 INFO    ] Launching Daemon at Mon Jun 22 21:05:07 IST 2026
[2026-06-22 21:05:07,051.051 INFO    ] ================================================
[2026-06-22 21:05:07,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:05:07
[2026-06-22 21:05:08,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:05:08,663.663 INFO    ] Initializing speech engine...
[2026-06-22 21:05:08,669.669 INFO    ] 2026-06-22 21:05:08
[2026-06-22 21:05:08,985.985 INFO    ] 2026-06-22 21:05:08
[2026-06-22 21:05:09,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:05:09,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:05:09,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:05:09,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:05:09,381.381 INFO    ] time= 22/06/2026 21:05:09
[2026-06-22 21:05:09,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:05:09,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:05:09,526.526 INFO    ] No existing commands found in stream
[2026-06-22 21:05:14,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:05:14,541.541 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-22 21:05:22,042.042 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:05:22,044.044 INFO    ] Checking for system updates...
[2026-06-22 21:05:22,081.081 INFO    ] 200
[2026-06-22 21:05:22,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:05:22,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:05:22,139.139 INFO    ] No update needed
[2026-06-22 21:05:22,141.141 INFO    ] Checking for camera pi updates...
[2026-06-22 21:05:22,175.175 INFO    ] 200
[2026-06-22 21:05:22,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:05:22,218.218 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:05:22,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:05:22,306.306 INFO    ] No camera update needed
[2026-06-22 21:05:22,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:05:22,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:05:22,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:05:22,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:05:24,362.362 INFO    ] ================================================
[2026-06-22 21:05:24,378.378 INFO    ] Launching Daemon at Mon Jun 22 21:05:24 IST 2026
[2026-06-22 21:05:24,389.389 INFO    ] ================================================
[2026-06-22 21:05:24,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:05:24
[2026-06-22 21:05:25,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:05:25,924.924 INFO    ] Initializing speech engine...
[2026-06-22 21:05:25,936.936 INFO    ] 2026-06-22 21:05:25
[2026-06-22 21:05:26,226.226 INFO    ] 2026-06-22 21:05:26
[2026-06-22 21:05:26,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:05:26,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:05:26,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:05:26,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:05:26,679.679 INFO    ] time= 22/06/2026 21:05:26
[2026-06-22 21:05:26,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:05:26,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:05:26,905.905 INFO    ] No existing commands found in stream
[2026-06-22 21:05:31,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:05:31,939.939 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-22 21:05:33,225.225 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:05:33,228.228 INFO    ] Checking for system updates...
[2026-06-22 21:05:33,269.269 INFO    ] 200
[2026-06-22 21:05:33,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:05:33,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:05:33,327.327 INFO    ] No update needed
[2026-06-22 21:05:33,329.329 INFO    ] Checking for camera pi updates...
[2026-06-22 21:05:33,366.366 INFO    ] 200
[2026-06-22 21:05:33,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:05:33,430.430 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:05:33,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:05:33,513.513 INFO    ] No camera update needed
[2026-06-22 21:05:33,516.516 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:05:33,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:05:33,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:05:33,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:05:35,569.569 INFO    ] ================================================
[2026-06-22 21:05:35,585.585 INFO    ] Launching Daemon at Mon Jun 22 21:05:35 IST 2026
[2026-06-22 21:05:35,595.595 INFO    ] ================================================
[2026-06-22 21:05:36,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:05:36
[2026-06-22 21:05:36,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:05:36,961.961 INFO    ] Initializing speech engine...
[2026-06-22 21:05:36,968.968 INFO    ] 2026-06-22 21:05:36
[2026-06-22 21:05:37,216.216 INFO    ] 2026-06-22 21:05:37
[2026-06-22 21:05:37,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:05:37,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:05:37,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:05:37,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:05:37,687.687 INFO    ] time= 22/06/2026 21:05:37
[2026-06-22 21:05:37,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:05:37,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:05:37,911.911 INFO    ] No existing commands found in stream
[2026-06-22 21:05:42,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:05:42,936.936 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-22 21:05:46,168.168 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:05:46,171.171 INFO    ] Checking for system updates...
[2026-06-22 21:05:46,207.207 INFO    ] 200
[2026-06-22 21:05:46,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:05:46,262.262 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:05:46,265.265 INFO    ] No update needed
[2026-06-22 21:05:46,268.268 INFO    ] Checking for camera pi updates...
[2026-06-22 21:05:46,301.301 INFO    ] 200
[2026-06-22 21:05:46,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:05:46,345.345 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:05:46,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:05:46,438.438 INFO    ] No camera update needed
[2026-06-22 21:05:46,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:05:46,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:05:46,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:05:46,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:05:48,495.495 INFO    ] ================================================
[2026-06-22 21:05:48,510.510 INFO    ] Launching Daemon at Mon Jun 22 21:05:48 IST 2026
[2026-06-22 21:05:48,521.521 INFO    ] ================================================
[2026-06-22 21:05:49,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:05:49
[2026-06-22 21:05:49,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:05:49,837.837 INFO    ] Initializing speech engine...
[2026-06-22 21:05:49,844.844 INFO    ] 2026-06-22 21:05:49
[2026-06-22 21:05:50,138.138 INFO    ] 2026-06-22 21:05:50
[2026-06-22 21:05:50,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:05:53,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:05:53,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:05:54,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:05:54,244.244 INFO    ] time= 22/06/2026 21:05:54
[2026-06-22 21:05:54,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:05:54,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:05:54,301.301 INFO    ] No existing commands found in stream
[2026-06-22 21:05:59,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:05:59,313.313 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-22 21:06:03,125.125 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:06:03,129.129 INFO    ] Checking for system updates...
[2026-06-22 21:06:03,180.180 INFO    ] 200
[2026-06-22 21:06:03,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:06:03,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:06:03,253.253 INFO    ] No update needed
[2026-06-22 21:06:03,257.257 INFO    ] Checking for camera pi updates...
[2026-06-22 21:06:03,301.301 INFO    ] 200
[2026-06-22 21:06:03,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:06:03,354.354 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:06:03,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:06:03,440.440 INFO    ] No camera update needed
[2026-06-22 21:06:03,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:06:03,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:06:03,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:06:03,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:06:05,508.508 INFO    ] ================================================
[2026-06-22 21:06:05,525.525 INFO    ] Launching Daemon at Mon Jun 22 21:06:05 IST 2026
[2026-06-22 21:06:05,536.536 INFO    ] ================================================
[2026-06-22 21:06:06,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:06:06
[2026-06-22 21:06:06,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:06:07,041.041 INFO    ] Initializing speech engine...
[2026-06-22 21:06:07,057.057 INFO    ] 2026-06-22 21:06:07
[2026-06-22 21:06:07,314.314 INFO    ] 2026-06-22 21:06:07
[2026-06-22 21:06:07,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:06:07,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:06:07,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:06:07,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:06:07,828.828 INFO    ] time= 22/06/2026 21:06:07
[2026-06-22 21:06:07,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:06:07,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:06:08,014.014 INFO    ] No existing commands found in stream
[2026-06-22 21:06:13,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:06:13,041.041 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-22 21:06:16,003.003 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:06:16,006.006 INFO    ] Checking for system updates...
[2026-06-22 21:06:16,042.042 INFO    ] 200
[2026-06-22 21:06:16,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:06:16,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:06:16,100.100 INFO    ] No update needed
[2026-06-22 21:06:16,102.102 INFO    ] Checking for camera pi updates...
[2026-06-22 21:06:16,136.136 INFO    ] 200
[2026-06-22 21:06:16,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:06:16,179.179 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:06:16,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:06:16,243.243 INFO    ] No camera update needed
[2026-06-22 21:06:16,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:06:16,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:06:16,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:06:16,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:06:18,301.301 INFO    ] ================================================
[2026-06-22 21:06:18,317.317 INFO    ] Launching Daemon at Mon Jun 22 21:06:18 IST 2026
[2026-06-22 21:06:18,334.334 INFO    ] ================================================
[2026-06-22 21:06:18,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:06:18
[2026-06-22 21:06:19,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:06:19,783.783 INFO    ] Initializing speech engine...
[2026-06-22 21:06:19,792.792 INFO    ] 2026-06-22 21:06:19
[2026-06-22 21:06:20,042.042 INFO    ] 2026-06-22 21:06:20
[2026-06-22 21:06:20,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:06:23,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:06:23,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:06:25,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:06:25,233.233 INFO    ] time= 22/06/2026 21:06:25
[2026-06-22 21:06:25,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:06:25,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:06:25,289.289 INFO    ] No existing commands found in stream
[2026-06-22 21:06:30,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:06:30,301.301 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-22 21:06:31,295.295 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:06:31,298.298 INFO    ] Checking for system updates...
[2026-06-22 21:06:31,339.339 INFO    ] 200
[2026-06-22 21:06:31,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:06:31,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:06:31,397.397 INFO    ] No update needed
[2026-06-22 21:06:31,399.399 INFO    ] Checking for camera pi updates...
[2026-06-22 21:06:31,435.435 INFO    ] 200
[2026-06-22 21:06:31,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:06:31,479.479 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:06:31,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:06:31,556.556 INFO    ] No camera update needed
[2026-06-22 21:06:31,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:06:31,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:06:31,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:06:31,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:06:33,620.620 INFO    ] ================================================
[2026-06-22 21:06:33,637.637 INFO    ] Launching Daemon at Mon Jun 22 21:06:33 IST 2026
[2026-06-22 21:06:33,648.648 INFO    ] ================================================
[2026-06-22 21:06:34,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:06:34
[2026-06-22 21:06:34,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:06:35,290.290 INFO    ] Initializing speech engine...
[2026-06-22 21:06:35,303.303 INFO    ] 2026-06-22 21:06:35
[2026-06-22 21:06:35,569.569 INFO    ] 2026-06-22 21:06:35
[2026-06-22 21:06:35,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:06:35,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:06:35,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:06:36,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:06:36,120.120 INFO    ] time= 22/06/2026 21:06:36
[2026-06-22 21:06:36,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:06:36,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:06:36,282.282 INFO    ] No existing commands found in stream
[2026-06-22 21:06:41,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:06:41,315.315 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-22 21:06:43,980.980 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:06:43,983.983 INFO    ] Checking for system updates...
[2026-06-22 21:06:44,020.020 INFO    ] 200
[2026-06-22 21:06:44,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:06:44,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:06:44,078.078 INFO    ] No update needed
[2026-06-22 21:06:44,081.081 INFO    ] Checking for camera pi updates...
[2026-06-22 21:06:44,115.115 INFO    ] 200
[2026-06-22 21:06:44,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:06:44,158.158 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:06:44,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:06:44,255.255 INFO    ] No camera update needed
[2026-06-22 21:06:44,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:06:44,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:06:44,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:06:44,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:06:46,312.312 INFO    ] ================================================
[2026-06-22 21:06:46,328.328 INFO    ] Launching Daemon at Mon Jun 22 21:06:46 IST 2026
[2026-06-22 21:06:46,339.339 INFO    ] ================================================
[2026-06-22 21:06:46,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:06:46
[2026-06-22 21:06:47,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:06:47,803.803 INFO    ] Initializing speech engine...
[2026-06-22 21:06:47,809.809 INFO    ] 2026-06-22 21:06:47
[2026-06-22 21:06:48,072.072 INFO    ] 2026-06-22 21:06:48
[2026-06-22 21:06:48,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:06:48,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:06:48,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:06:48,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:06:48,533.533 INFO    ] time= 22/06/2026 21:06:48
[2026-06-22 21:06:48,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:06:48,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:06:48,679.679 INFO    ] No existing commands found in stream
[2026-06-22 21:06:53,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:06:53,690.690 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-22 21:06:58,057.057 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:06:58,059.059 INFO    ] Checking for system updates...
[2026-06-22 21:06:58,095.095 INFO    ] 200
[2026-06-22 21:06:58,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:06:58,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:06:58,153.153 INFO    ] No update needed
[2026-06-22 21:06:58,156.156 INFO    ] Checking for camera pi updates...
[2026-06-22 21:06:58,190.190 INFO    ] 200
[2026-06-22 21:06:58,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:06:58,237.237 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:06:58,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:06:58,319.319 INFO    ] No camera update needed
[2026-06-22 21:06:58,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:06:58,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:06:58,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:06:58,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:07:00,375.375 INFO    ] ================================================
[2026-06-22 21:07:00,389.389 INFO    ] Launching Daemon at Mon Jun 22 21:07:00 IST 2026
[2026-06-22 21:07:00,400.400 INFO    ] ================================================
[2026-06-22 21:07:00,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:07:00
[2026-06-22 21:07:01,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:07:02,070.070 INFO    ] Initializing speech engine...
[2026-06-22 21:07:02,076.076 INFO    ] 2026-06-22 21:07:02
[2026-06-22 21:07:02,384.384 INFO    ] 2026-06-22 21:07:02
[2026-06-22 21:07:02,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:07:02,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:07:02,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:07:02,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:07:02,948.948 INFO    ] time= 22/06/2026 21:07:02
[2026-06-22 21:07:02,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:07:03,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:07:03,131.131 INFO    ] No existing commands found in stream
[2026-06-22 21:07:08,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:07:08,155.155 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-22 21:07:09,676.676 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:07:09,679.679 INFO    ] Checking for system updates...
[2026-06-22 21:07:09,715.715 INFO    ] 200
[2026-06-22 21:07:09,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:07:09,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:07:09,765.765 INFO    ] No update needed
[2026-06-22 21:07:09,766.766 INFO    ] Checking for camera pi updates...
[2026-06-22 21:07:09,787.787 INFO    ] 200
[2026-06-22 21:07:09,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:07:09,811.811 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:07:09,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:07:10,001.001 INFO    ] No camera update needed
[2026-06-22 21:07:10,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:07:10,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:07:10,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:07:10,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:07:12,057.057 INFO    ] ================================================
[2026-06-22 21:07:12,073.073 INFO    ] Launching Daemon at Mon Jun 22 21:07:12 IST 2026
[2026-06-22 21:07:12,083.083 INFO    ] ================================================
[2026-06-22 21:07:12,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:07:12
[2026-06-22 21:07:13,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:07:13,543.543 INFO    ] Initializing speech engine...
[2026-06-22 21:07:13,553.553 INFO    ] 2026-06-22 21:07:13
[2026-06-22 21:07:13,812.812 INFO    ] 2026-06-22 21:07:13
[2026-06-22 21:07:13,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:07:14,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:07:14,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:07:14,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:07:14,355.355 INFO    ] time= 22/06/2026 21:07:14
[2026-06-22 21:07:14,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:07:14,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:07:14,495.495 INFO    ] No existing commands found in stream
[2026-06-22 21:07:19,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:07:19,526.526 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-22 21:07:23,392.392 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:07:23,394.394 INFO    ] Checking for system updates...
[2026-06-22 21:07:23,416.416 INFO    ] 200
[2026-06-22 21:07:23,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:07:23,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:07:23,449.449 INFO    ] No update needed
[2026-06-22 21:07:23,451.451 INFO    ] Checking for camera pi updates...
[2026-06-22 21:07:23,473.473 INFO    ] 200
[2026-06-22 21:07:23,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:07:23,518.518 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:07:23,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:07:23,604.604 INFO    ] No camera update needed
[2026-06-22 21:07:23,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:07:23,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:07:23,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:07:23,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:07:25,662.662 INFO    ] ================================================
[2026-06-22 21:07:25,678.678 INFO    ] Launching Daemon at Mon Jun 22 21:07:25 IST 2026
[2026-06-22 21:07:25,689.689 INFO    ] ================================================
[2026-06-22 21:07:26,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:07:26
[2026-06-22 21:07:26,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:07:27,118.118 INFO    ] Initializing speech engine...
[2026-06-22 21:07:27,127.127 INFO    ] 2026-06-22 21:07:27
[2026-06-22 21:07:27,378.378 INFO    ] 2026-06-22 21:07:27
[2026-06-22 21:07:27,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:07:28,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:07:28,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:07:28,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:07:28,516.516 INFO    ] time= 22/06/2026 21:07:28
[2026-06-22 21:07:28,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:07:28,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:07:28,630.630 INFO    ] No existing commands found in stream
[2026-06-22 21:07:33,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:07:33,643.643 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-22 21:07:34,990.990 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:07:34,993.993 INFO    ] Checking for system updates...
[2026-06-22 21:07:35,033.033 INFO    ] 200
[2026-06-22 21:07:35,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:07:35,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:07:35,099.099 INFO    ] No update needed
[2026-06-22 21:07:35,102.102 INFO    ] Checking for camera pi updates...
[2026-06-22 21:07:35,139.139 INFO    ] 200
[2026-06-22 21:07:35,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:07:35,187.187 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:07:35,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:07:35,298.298 INFO    ] No camera update needed
[2026-06-22 21:07:35,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:07:35,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:07:35,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:07:35,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:07:37,361.361 INFO    ] ================================================
[2026-06-22 21:07:37,377.377 INFO    ] Launching Daemon at Mon Jun 22 21:07:37 IST 2026
[2026-06-22 21:07:37,388.388 INFO    ] ================================================
[2026-06-22 21:07:37,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:07:37
[2026-06-22 21:07:38,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:07:38,733.733 INFO    ] Initializing speech engine...
[2026-06-22 21:07:38,742.742 INFO    ] 2026-06-22 21:07:38
[2026-06-22 21:07:38,990.990 INFO    ] 2026-06-22 21:07:38
[2026-06-22 21:07:39,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:07:39,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:07:39,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:07:39,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:07:39,472.472 INFO    ] time= 22/06/2026 21:07:39
[2026-06-22 21:07:39,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:07:39,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:07:39,697.697 INFO    ] No existing commands found in stream
[2026-06-22 21:07:44,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:07:44,725.725 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-22 21:07:47,136.136 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:07:47,138.138 INFO    ] Checking for system updates...
[2026-06-22 21:07:47,175.175 INFO    ] 200
[2026-06-22 21:07:47,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:07:47,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:07:47,237.237 INFO    ] No update needed
[2026-06-22 21:07:47,240.240 INFO    ] Checking for camera pi updates...
[2026-06-22 21:07:47,274.274 INFO    ] 200
[2026-06-22 21:07:47,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:07:47,321.321 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:07:47,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:07:47,406.406 INFO    ] No camera update needed
[2026-06-22 21:07:47,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:07:47,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:07:47,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:07:47,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:07:49,461.461 INFO    ] ================================================
[2026-06-22 21:07:49,476.476 INFO    ] Launching Daemon at Mon Jun 22 21:07:49 IST 2026
[2026-06-22 21:07:49,487.487 INFO    ] ================================================
[2026-06-22 21:07:50,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:07:50
[2026-06-22 21:07:50,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:07:50,861.861 INFO    ] Initializing speech engine...
[2026-06-22 21:07:50,873.873 INFO    ] 2026-06-22 21:07:50
[2026-06-22 21:07:51,139.139 INFO    ] 2026-06-22 21:07:51
[2026-06-22 21:07:51,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:07:51,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:07:51,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:07:51,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:07:51,579.579 INFO    ] time= 22/06/2026 21:07:51
[2026-06-22 21:07:51,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:07:51,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:07:51,819.819 INFO    ] No existing commands found in stream
[2026-06-22 21:07:56,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:07:56,839.839 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-22 21:08:00,931.931 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:08:00,933.933 INFO    ] Checking for system updates...
[2026-06-22 21:08:00,955.955 INFO    ] 200
[2026-06-22 21:08:00,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:08:00,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:08:00,991.991 INFO    ] No update needed
[2026-06-22 21:08:00,993.993 INFO    ] Checking for camera pi updates...
[2026-06-22 21:08:01,026.026 INFO    ] 200
[2026-06-22 21:08:01,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:08:01,069.069 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:08:01,153.153 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:08:01,156.156 INFO    ] No camera update needed
[2026-06-22 21:08:01,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:08:01,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:08:01,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:08:01,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:08:03,218.218 INFO    ] ================================================
[2026-06-22 21:08:03,236.236 INFO    ] Launching Daemon at Mon Jun 22 21:08:03 IST 2026
[2026-06-22 21:08:03,248.248 INFO    ] ================================================
[2026-06-22 21:08:03,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:08:03
[2026-06-22 21:08:04,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:08:04,706.706 INFO    ] Initializing speech engine...
[2026-06-22 21:08:04,715.715 INFO    ] 2026-06-22 21:08:04
[2026-06-22 21:08:04,978.978 INFO    ] 2026-06-22 21:08:04
[2026-06-22 21:08:05,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:08:05,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:08:05,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:08:05,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:08:05,447.447 INFO    ] time= 22/06/2026 21:08:05
[2026-06-22 21:08:05,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:08:05,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:08:05,676.676 INFO    ] No existing commands found in stream
[2026-06-22 21:08:10,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:08:10,693.693 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-22 21:08:12,717.717 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:08:12,719.719 INFO    ] Checking for system updates...
[2026-06-22 21:08:12,741.741 INFO    ] 200
[2026-06-22 21:08:12,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:08:12,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:08:12,776.776 INFO    ] No update needed
[2026-06-22 21:08:12,778.778 INFO    ] Checking for camera pi updates...
[2026-06-22 21:08:12,798.798 INFO    ] 200
[2026-06-22 21:08:12,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:08:12,843.843 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:08:12,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:08:12,928.928 INFO    ] No camera update needed
[2026-06-22 21:08:12,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:08:12,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:08:12,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:08:12,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:08:14,986.986 INFO    ] ================================================
[2026-06-22 21:08:15,001.001 INFO    ] Launching Daemon at Mon Jun 22 21:08:14 IST 2026
[2026-06-22 21:08:15,017.017 INFO    ] ================================================
[2026-06-22 21:08:15,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:08:15
[2026-06-22 21:08:16,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:08:16,651.651 INFO    ] Initializing speech engine...
[2026-06-22 21:08:16,663.663 INFO    ] 2026-06-22 21:08:16
[2026-06-22 21:08:16,944.944 INFO    ] 2026-06-22 21:08:16
[2026-06-22 21:08:16,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:08:17,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:08:17,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:08:17,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:08:17,721.721 INFO    ] time= 22/06/2026 21:08:17
[2026-06-22 21:08:17,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:08:17,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:08:18,018.018 INFO    ] No existing commands found in stream
[2026-06-22 21:08:23,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:08:23,053.053 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-22 21:08:29,823.823 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:08:29,825.825 INFO    ] Checking for system updates...
[2026-06-22 21:08:29,847.847 INFO    ] 200
[2026-06-22 21:08:29,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:08:29,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:08:29,903.903 INFO    ] No update needed
[2026-06-22 21:08:29,906.906 INFO    ] Checking for camera pi updates...
[2026-06-22 21:08:29,943.943 INFO    ] 200
[2026-06-22 21:08:29,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:08:29,987.987 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:08:30,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:08:30,079.079 INFO    ] No camera update needed
[2026-06-22 21:08:30,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:08:30,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:08:30,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:08:30,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:08:32,135.135 INFO    ] ================================================
[2026-06-22 21:08:32,152.152 INFO    ] Launching Daemon at Mon Jun 22 21:08:32 IST 2026
[2026-06-22 21:08:32,163.163 INFO    ] ================================================
[2026-06-22 21:08:32,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:08:32
[2026-06-22 21:08:33,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:08:33,687.687 INFO    ] Initializing speech engine...
[2026-06-22 21:08:33,692.692 INFO    ] 2026-06-22 21:08:33
[2026-06-22 21:08:33,956.956 INFO    ] 2026-06-22 21:08:33
[2026-06-22 21:08:34,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:08:34,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:08:34,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:08:34,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:08:34,440.440 INFO    ] time= 22/06/2026 21:08:34
[2026-06-22 21:08:34,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:08:34,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:08:34,655.655 INFO    ] No existing commands found in stream
[2026-06-22 21:08:39,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:08:39,674.674 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-22 21:08:42,422.422 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:08:42,423.423 INFO    ] Checking for system updates...
[2026-06-22 21:08:42,444.444 INFO    ] 200
[2026-06-22 21:08:42,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:08:42,485.485 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:08:42,487.487 INFO    ] No update needed
[2026-06-22 21:08:42,489.489 INFO    ] Checking for camera pi updates...
[2026-06-22 21:08:42,524.524 INFO    ] 200
[2026-06-22 21:08:42,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:08:42,577.577 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:08:42,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:08:42,663.663 INFO    ] No camera update needed
[2026-06-22 21:08:42,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:08:42,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:08:42,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:08:42,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:08:44,721.721 INFO    ] ================================================
[2026-06-22 21:08:44,736.736 INFO    ] Launching Daemon at Mon Jun 22 21:08:44 IST 2026
[2026-06-22 21:08:44,747.747 INFO    ] ================================================
[2026-06-22 21:08:45,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:08:45
[2026-06-22 21:08:45,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:08:46,281.281 INFO    ] Initializing speech engine...
[2026-06-22 21:08:46,295.295 INFO    ] 2026-06-22 21:08:46
[2026-06-22 21:08:46,580.580 INFO    ] 2026-06-22 21:08:46
[2026-06-22 21:08:46,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:08:46,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:08:46,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:08:47,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:08:47,108.108 INFO    ] time= 22/06/2026 21:08:47
[2026-06-22 21:08:47,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:08:47,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:08:47,238.238 INFO    ] No existing commands found in stream
[2026-06-22 21:08:52,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:08:52,274.274 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-22 21:08:59,871.871 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:08:59,874.874 INFO    ] Checking for system updates...
[2026-06-22 21:08:59,916.916 INFO    ] 200
[2026-06-22 21:08:59,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:08:59,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:08:59,978.978 INFO    ] No update needed
[2026-06-22 21:08:59,981.981 INFO    ] Checking for camera pi updates...
[2026-06-22 21:09:00,020.020 INFO    ] 200
[2026-06-22 21:09:00,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:09:00,066.066 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:09:00,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:09:00,150.150 INFO    ] No camera update needed
[2026-06-22 21:09:00,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:09:00,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:09:00,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:09:00,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:09:02,211.211 INFO    ] ================================================
[2026-06-22 21:09:02,233.233 INFO    ] Launching Daemon at Mon Jun 22 21:09:02 IST 2026
[2026-06-22 21:09:02,250.250 INFO    ] ================================================
[2026-06-22 21:09:02,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:09:02
[2026-06-22 21:09:03,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:09:03,830.830 INFO    ] Initializing speech engine...
[2026-06-22 21:09:03,839.839 INFO    ] 2026-06-22 21:09:03
[2026-06-22 21:09:04,089.089 INFO    ] 2026-06-22 21:09:04
[2026-06-22 21:09:04,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:09:04,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:09:04,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:09:04,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:09:04,540.540 INFO    ] time= 22/06/2026 21:09:04
[2026-06-22 21:09:04,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:09:04,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:09:04,723.723 INFO    ] No existing commands found in stream
[2026-06-22 21:09:09,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:09:09,737.737 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-22 21:09:10,423.423 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:09:10,426.426 INFO    ] Checking for system updates...
[2026-06-22 21:09:10,462.462 INFO    ] 200
[2026-06-22 21:09:10,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:09:10,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:09:10,528.528 INFO    ] No update needed
[2026-06-22 21:09:10,530.530 INFO    ] Checking for camera pi updates...
[2026-06-22 21:09:10,564.564 INFO    ] 200
[2026-06-22 21:09:10,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:09:10,612.612 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:09:10,702.702 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:09:10,705.705 INFO    ] No camera update needed
[2026-06-22 21:09:10,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:09:10,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:09:10,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:09:10,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:09:12,761.761 INFO    ] ================================================
[2026-06-22 21:09:12,776.776 INFO    ] Launching Daemon at Mon Jun 22 21:09:12 IST 2026
[2026-06-22 21:09:12,787.787 INFO    ] ================================================
[2026-06-22 21:09:13,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:09:13
[2026-06-22 21:09:13,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:09:14,159.159 INFO    ] Initializing speech engine...
[2026-06-22 21:09:14,169.169 INFO    ] 2026-06-22 21:09:14
[2026-06-22 21:09:14,427.427 INFO    ] 2026-06-22 21:09:14
[2026-06-22 21:09:14,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:09:14,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:09:14,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:09:14,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:09:14,894.894 INFO    ] time= 22/06/2026 21:09:14
[2026-06-22 21:09:14,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:09:14,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:09:15,077.077 INFO    ] No existing commands found in stream
[2026-06-22 21:09:20,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:09:20,089.089 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-22 21:09:21,119.119 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:09:21,122.122 INFO    ] Checking for system updates...
[2026-06-22 21:09:21,161.161 INFO    ] 200
[2026-06-22 21:09:21,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:09:21,218.218 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:09:21,221.221 INFO    ] No update needed
[2026-06-22 21:09:21,223.223 INFO    ] Checking for camera pi updates...
[2026-06-22 21:09:21,262.262 INFO    ] 200
[2026-06-22 21:09:21,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:09:21,312.312 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:09:21,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:09:21,496.496 INFO    ] No camera update needed
[2026-06-22 21:09:21,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:09:21,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:09:21,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:09:21,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:09:23,555.555 INFO    ] ================================================
[2026-06-22 21:09:23,572.572 INFO    ] Launching Daemon at Mon Jun 22 21:09:23 IST 2026
[2026-06-22 21:09:23,583.583 INFO    ] ================================================
[2026-06-22 21:09:24,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:09:24
[2026-06-22 21:09:24,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:09:25,032.032 INFO    ] Initializing speech engine...
[2026-06-22 21:09:25,039.039 INFO    ] 2026-06-22 21:09:25
[2026-06-22 21:09:25,336.336 INFO    ] 2026-06-22 21:09:25
[2026-06-22 21:09:25,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:09:25,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:09:25,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:09:25,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:09:25,717.717 INFO    ] time= 22/06/2026 21:09:25
[2026-06-22 21:09:25,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:09:25,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:09:25,844.844 INFO    ] No existing commands found in stream
[2026-06-22 21:09:30,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:09:30,862.862 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-22 21:09:34,423.423 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:09:34,426.426 INFO    ] Checking for system updates...
[2026-06-22 21:09:34,462.462 INFO    ] 200
[2026-06-22 21:09:34,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:09:34,517.517 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:09:34,519.519 INFO    ] No update needed
[2026-06-22 21:09:34,522.522 INFO    ] Checking for camera pi updates...
[2026-06-22 21:09:34,558.558 INFO    ] 200
[2026-06-22 21:09:34,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:09:34,611.611 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:09:34,715.715 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:09:34,717.717 INFO    ] No camera update needed
[2026-06-22 21:09:34,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:09:34,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:09:34,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:09:34,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:09:36,774.774 INFO    ] ================================================
[2026-06-22 21:09:36,788.788 INFO    ] Launching Daemon at Mon Jun 22 21:09:36 IST 2026
[2026-06-22 21:09:36,800.800 INFO    ] ================================================
[2026-06-22 21:09:37,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:09:37
[2026-06-22 21:09:37,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:09:38,213.213 INFO    ] Initializing speech engine...
[2026-06-22 21:09:38,222.222 INFO    ] 2026-06-22 21:09:38
[2026-06-22 21:09:38,518.518 INFO    ] 2026-06-22 21:09:38
[2026-06-22 21:09:38,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:09:38,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:09:38,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:09:38,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:09:38,940.940 INFO    ] time= 22/06/2026 21:09:38
[2026-06-22 21:09:38,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:09:38,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:09:39,112.112 INFO    ] No existing commands found in stream
[2026-06-22 21:09:44,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:09:44,135.135 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-22 21:09:46,232.232 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:09:46,234.234 INFO    ] Checking for system updates...
[2026-06-22 21:09:46,275.275 INFO    ] 200
[2026-06-22 21:09:46,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:09:46,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:09:46,339.339 INFO    ] No update needed
[2026-06-22 21:09:46,342.342 INFO    ] Checking for camera pi updates...
[2026-06-22 21:09:46,379.379 INFO    ] 200
[2026-06-22 21:09:46,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:09:46,429.429 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:09:46,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:09:46,512.512 INFO    ] No camera update needed
[2026-06-22 21:09:46,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:09:46,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:09:46,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:09:46,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:09:48,567.567 INFO    ] ================================================
[2026-06-22 21:09:48,582.582 INFO    ] Launching Daemon at Mon Jun 22 21:09:48 IST 2026
[2026-06-22 21:09:48,592.592 INFO    ] ================================================
[2026-06-22 21:09:49,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:09:49
[2026-06-22 21:09:49,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:09:49,910.910 INFO    ] Initializing speech engine...
[2026-06-22 21:09:49,924.924 INFO    ] 2026-06-22 21:09:49
[2026-06-22 21:09:50,191.191 INFO    ] 2026-06-22 21:09:50
[2026-06-22 21:09:50,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:09:50,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:09:50,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:09:50,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:09:50,761.761 INFO    ] time= 22/06/2026 21:09:50
[2026-06-22 21:09:50,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:09:50,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:09:50,943.943 INFO    ] No existing commands found in stream
[2026-06-22 21:09:55,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:09:55,981.981 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-22 21:10:04,571.571 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:10:04,574.574 INFO    ] Checking for system updates...
[2026-06-22 21:10:04,618.618 INFO    ] 200
[2026-06-22 21:10:04,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:10:04,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:10:04,678.678 INFO    ] No update needed
[2026-06-22 21:10:04,680.680 INFO    ] Checking for camera pi updates...
[2026-06-22 21:10:04,831.831 INFO    ] 200
[2026-06-22 21:10:04,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:10:04,880.880 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:10:04,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:10:04,935.935 INFO    ] No camera update needed
[2026-06-22 21:10:04,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:10:04,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:10:04,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:10:04,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:10:06,992.992 INFO    ] ================================================
[2026-06-22 21:10:07,007.007 INFO    ] Launching Daemon at Mon Jun 22 21:10:07 IST 2026
[2026-06-22 21:10:07,018.018 INFO    ] ================================================
[2026-06-22 21:10:07,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:10:07
[2026-06-22 21:10:08,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:10:08,345.345 INFO    ] Initializing speech engine...
[2026-06-22 21:10:08,354.354 INFO    ] 2026-06-22 21:10:08
[2026-06-22 21:10:08,672.672 INFO    ] 2026-06-22 21:10:08
[2026-06-22 21:10:08,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:10:08,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:10:08,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:10:09,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:10:09,198.198 INFO    ] time= 22/06/2026 21:10:09
[2026-06-22 21:10:09,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:10:09,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:10:09,397.397 INFO    ] No existing commands found in stream
[2026-06-22 21:10:14,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:10:14,425.425 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-22 21:10:16,692.692 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:10:16,695.695 INFO    ] Checking for system updates...
[2026-06-22 21:10:16,737.737 INFO    ] 200
[2026-06-22 21:10:16,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:10:16,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:10:16,809.809 INFO    ] No update needed
[2026-06-22 21:10:16,812.812 INFO    ] Checking for camera pi updates...
[2026-06-22 21:10:16,851.851 INFO    ] 200
[2026-06-22 21:10:16,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:10:16,897.897 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:10:17,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:10:17,004.004 INFO    ] No camera update needed
[2026-06-22 21:10:17,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:10:17,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:10:17,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:10:17,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:10:19,064.064 INFO    ] ================================================
[2026-06-22 21:10:19,080.080 INFO    ] Launching Daemon at Mon Jun 22 21:10:19 IST 2026
[2026-06-22 21:10:19,092.092 INFO    ] ================================================
[2026-06-22 21:10:19,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:10:19
[2026-06-22 21:10:20,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:10:20,426.426 INFO    ] Initializing speech engine...
[2026-06-22 21:10:20,438.438 INFO    ] 2026-06-22 21:10:20
[2026-06-22 21:10:20,690.690 INFO    ] 2026-06-22 21:10:20
[2026-06-22 21:10:20,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:10:20,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:10:20,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:10:21,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:10:21,071.071 INFO    ] time= 22/06/2026 21:10:21
[2026-06-22 21:10:21,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:10:21,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:10:21,236.236 INFO    ] No existing commands found in stream
[2026-06-22 21:10:26,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:10:26,269.269 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-22 21:10:34,473.473 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:10:34,476.476 INFO    ] Checking for system updates...
[2026-06-22 21:10:34,517.517 INFO    ] 200
[2026-06-22 21:10:34,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:10:34,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:10:34,584.584 INFO    ] No update needed
[2026-06-22 21:10:34,587.587 INFO    ] Checking for camera pi updates...
[2026-06-22 21:10:34,623.623 INFO    ] 200
[2026-06-22 21:10:34,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:10:34,669.669 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:10:34,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:10:34,764.764 INFO    ] No camera update needed
[2026-06-22 21:10:34,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:10:34,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:10:34,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:10:34,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:10:36,825.825 INFO    ] ================================================
[2026-06-22 21:10:36,840.840 INFO    ] Launching Daemon at Mon Jun 22 21:10:36 IST 2026
[2026-06-22 21:10:36,851.851 INFO    ] ================================================
[2026-06-22 21:10:37,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:10:37
[2026-06-22 21:10:37,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:10:38,207.207 INFO    ] Initializing speech engine...
[2026-06-22 21:10:38,220.220 INFO    ] 2026-06-22 21:10:38
[2026-06-22 21:10:38,499.499 INFO    ] 2026-06-22 21:10:38
[2026-06-22 21:10:38,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:10:38,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:10:38,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:10:38,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:10:38,913.913 INFO    ] time= 22/06/2026 21:10:38
[2026-06-22 21:10:38,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:10:38,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:10:39,083.083 INFO    ] No existing commands found in stream
[2026-06-22 21:10:44,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:10:44,111.111 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-22 21:10:47,337.337 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:10:47,339.339 INFO    ] Checking for system updates...
[2026-06-22 21:10:47,361.361 INFO    ] 200
[2026-06-22 21:10:47,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:10:47,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:10:47,407.407 INFO    ] No update needed
[2026-06-22 21:10:47,410.410 INFO    ] Checking for camera pi updates...
[2026-06-22 21:10:47,444.444 INFO    ] 200
[2026-06-22 21:10:47,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:10:47,487.487 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:10:47,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:10:47,570.570 INFO    ] No camera update needed
[2026-06-22 21:10:47,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:10:47,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:10:47,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:10:47,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:10:49,625.625 INFO    ] ================================================
[2026-06-22 21:10:49,641.641 INFO    ] Launching Daemon at Mon Jun 22 21:10:49 IST 2026
[2026-06-22 21:10:49,653.653 INFO    ] ================================================
[2026-06-22 21:10:50,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:10:50
[2026-06-22 21:10:50,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:10:51,078.078 INFO    ] Initializing speech engine...
[2026-06-22 21:10:51,086.086 INFO    ] 2026-06-22 21:10:51
[2026-06-22 21:10:51,335.335 INFO    ] 2026-06-22 21:10:51
[2026-06-22 21:10:51,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:10:51,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:10:51,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:10:51,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:10:51,890.890 INFO    ] time= 22/06/2026 21:10:51
[2026-06-22 21:10:51,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:10:51,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:10:52,044.044 INFO    ] No existing commands found in stream
[2026-06-22 21:10:57,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:10:57,060.060 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-22 21:11:01,351.351 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:11:01,354.354 INFO    ] Checking for system updates...
[2026-06-22 21:11:01,390.390 INFO    ] 200
[2026-06-22 21:11:01,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:11:01,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:11:01,457.457 INFO    ] No update needed
[2026-06-22 21:11:01,459.459 INFO    ] Checking for camera pi updates...
[2026-06-22 21:11:01,494.494 INFO    ] 200
[2026-06-22 21:11:01,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:11:01,572.572 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:11:01,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:11:01,671.671 INFO    ] No camera update needed
[2026-06-22 21:11:01,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:11:01,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:11:01,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:11:01,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:11:03,742.742 INFO    ] ================================================
[2026-06-22 21:11:03,758.758 INFO    ] Launching Daemon at Mon Jun 22 21:11:03 IST 2026
[2026-06-22 21:11:03,769.769 INFO    ] ================================================
[2026-06-22 21:11:04,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:11:04
[2026-06-22 21:11:04,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:11:05,256.256 INFO    ] Initializing speech engine...
[2026-06-22 21:11:05,268.268 INFO    ] 2026-06-22 21:11:05
[2026-06-22 21:11:05,589.589 INFO    ] 2026-06-22 21:11:05
[2026-06-22 21:11:05,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:11:06,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:11:06,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:11:07,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:11:07,833.833 INFO    ] time= 22/06/2026 21:11:07
[2026-06-22 21:11:07,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:11:07,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:11:07,947.947 INFO    ] No existing commands found in stream
[2026-06-22 21:11:12,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:11:12,962.962 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-22 21:11:15,240.240 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:11:15,243.243 INFO    ] Checking for system updates...
[2026-06-22 21:11:15,280.280 INFO    ] 200
[2026-06-22 21:11:15,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:11:15,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:11:15,338.338 INFO    ] No update needed
[2026-06-22 21:11:15,341.341 INFO    ] Checking for camera pi updates...
[2026-06-22 21:11:15,376.376 INFO    ] 200
[2026-06-22 21:11:15,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:11:15,419.419 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:11:15,503.503 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:11:15,505.505 INFO    ] No camera update needed
[2026-06-22 21:11:15,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:11:15,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:11:15,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:11:15,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:11:17,562.562 INFO    ] ================================================
[2026-06-22 21:11:17,577.577 INFO    ] Launching Daemon at Mon Jun 22 21:11:17 IST 2026
[2026-06-22 21:11:17,588.588 INFO    ] ================================================
[2026-06-22 21:11:18,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:11:18
[2026-06-22 21:11:18,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:11:18,966.966 INFO    ] Initializing speech engine...
[2026-06-22 21:11:18,974.974 INFO    ] 2026-06-22 21:11:18
[2026-06-22 21:11:19,234.234 INFO    ] 2026-06-22 21:11:19
[2026-06-22 21:11:19,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:11:19,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:11:19,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:11:19,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:11:19,777.777 INFO    ] time= 22/06/2026 21:11:19
[2026-06-22 21:11:19,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:11:19,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:11:19,928.928 INFO    ] No existing commands found in stream
[2026-06-22 21:11:24,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:11:24,947.947 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-22 21:11:29,314.314 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:11:29,317.317 INFO    ] Checking for system updates...
[2026-06-22 21:11:29,356.356 INFO    ] 200
[2026-06-22 21:11:29,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:11:29,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:11:29,418.418 INFO    ] No update needed
[2026-06-22 21:11:29,420.420 INFO    ] Checking for camera pi updates...
[2026-06-22 21:11:29,454.454 INFO    ] 200
[2026-06-22 21:11:29,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:11:29,499.499 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:11:29,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:11:29,680.680 INFO    ] No camera update needed
[2026-06-22 21:11:29,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:11:29,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:11:29,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:11:29,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:11:31,741.741 INFO    ] ================================================
[2026-06-22 21:11:31,758.758 INFO    ] Launching Daemon at Mon Jun 22 21:11:31 IST 2026
[2026-06-22 21:11:31,769.769 INFO    ] ================================================
[2026-06-22 21:11:32,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:11:32
[2026-06-22 21:11:32,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:11:33,242.242 INFO    ] Initializing speech engine...
[2026-06-22 21:11:33,249.249 INFO    ] 2026-06-22 21:11:33
[2026-06-22 21:11:33,548.548 INFO    ] 2026-06-22 21:11:33
[2026-06-22 21:11:33,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:11:35,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:11:36,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:11:36,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:11:36,702.702 INFO    ] time= 22/06/2026 21:11:36
[2026-06-22 21:11:36,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:11:36,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:11:36,811.811 INFO    ] No existing commands found in stream
[2026-06-22 21:11:41,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:11:41,822.822 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-22 21:11:46,037.037 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:11:46,039.039 INFO    ] Checking for system updates...
[2026-06-22 21:11:46,080.080 INFO    ] 200
[2026-06-22 21:11:46,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:11:46,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:11:46,139.139 INFO    ] No update needed
[2026-06-22 21:11:46,142.142 INFO    ] Checking for camera pi updates...
[2026-06-22 21:11:46,175.175 INFO    ] 200
[2026-06-22 21:11:46,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:11:46,219.219 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:11:46,298.298 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:11:46,301.301 INFO    ] No camera update needed
[2026-06-22 21:11:46,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:11:46,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:11:46,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:11:46,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:11:48,357.357 INFO    ] ================================================
[2026-06-22 21:11:48,372.372 INFO    ] Launching Daemon at Mon Jun 22 21:11:48 IST 2026
[2026-06-22 21:11:48,383.383 INFO    ] ================================================
[2026-06-22 21:11:48,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:11:48
[2026-06-22 21:11:49,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:11:49,701.701 INFO    ] Initializing speech engine...
[2026-06-22 21:11:49,710.710 INFO    ] 2026-06-22 21:11:49
[2026-06-22 21:11:50,007.007 INFO    ] 2026-06-22 21:11:49
[2026-06-22 21:11:50,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:11:50,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:11:50,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:11:50,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:11:50,430.430 INFO    ] time= 22/06/2026 21:11:50
[2026-06-22 21:11:50,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:11:50,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:11:50,514.514 INFO    ] No existing commands found in stream
[2026-06-22 21:11:55,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:11:55,529.529 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-22 21:11:56,961.961 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:11:56,964.964 INFO    ] Checking for system updates...
[2026-06-22 21:11:57,006.006 INFO    ] 200
[2026-06-22 21:11:57,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:11:57,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:11:57,073.073 INFO    ] No update needed
[2026-06-22 21:11:57,077.077 INFO    ] Checking for camera pi updates...
[2026-06-22 21:11:57,105.105 INFO    ] 200
[2026-06-22 21:11:57,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:11:57,131.131 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:11:57,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:11:57,239.239 INFO    ] No camera update needed
[2026-06-22 21:11:57,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:11:57,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:11:57,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:11:57,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:11:59,298.298 INFO    ] ================================================
[2026-06-22 21:11:59,313.313 INFO    ] Launching Daemon at Mon Jun 22 21:11:59 IST 2026
[2026-06-22 21:11:59,324.324 INFO    ] ================================================
[2026-06-22 21:11:59,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:11:59
[2026-06-22 21:12:00,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:12:00,671.671 INFO    ] Initializing speech engine...
[2026-06-22 21:12:00,688.688 INFO    ] 2026-06-22 21:12:00
[2026-06-22 21:12:00,973.973 INFO    ] 2026-06-22 21:12:00
[2026-06-22 21:12:01,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:12:01,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:12:01,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:12:01,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:12:01,421.421 INFO    ] time= 22/06/2026 21:12:01
[2026-06-22 21:12:01,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:12:01,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:12:01,547.547 INFO    ] No existing commands found in stream
[2026-06-22 21:12:06,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:12:06,561.561 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-22 21:12:09,214.214 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:12:09,215.215 INFO    ] Checking for system updates...
[2026-06-22 21:12:09,236.236 INFO    ] 200
[2026-06-22 21:12:09,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:12:09,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:12:09,269.269 INFO    ] No update needed
[2026-06-22 21:12:09,271.271 INFO    ] Checking for camera pi updates...
[2026-06-22 21:12:09,290.290 INFO    ] 200
[2026-06-22 21:12:09,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:12:09,328.328 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:12:09,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:12:09,410.410 INFO    ] No camera update needed
[2026-06-22 21:12:09,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:12:09,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:12:09,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:12:09,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:12:11,470.470 INFO    ] ================================================
[2026-06-22 21:12:11,485.485 INFO    ] Launching Daemon at Mon Jun 22 21:12:11 IST 2026
[2026-06-22 21:12:11,496.496 INFO    ] ================================================
[2026-06-22 21:12:12,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:12:12
[2026-06-22 21:12:12,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:12:12,924.924 INFO    ] Initializing speech engine...
[2026-06-22 21:12:12,940.940 INFO    ] 2026-06-22 21:12:12
[2026-06-22 21:12:13,212.212 INFO    ] 2026-06-22 21:12:13
[2026-06-22 21:12:13,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:12:13,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:12:13,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:12:13,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:12:13,626.626 INFO    ] time= 22/06/2026 21:12:13
[2026-06-22 21:12:13,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:12:13,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:12:13,715.715 INFO    ] No existing commands found in stream
[2026-06-22 21:12:18,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:12:18,730.730 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-22 21:12:20,718.718 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:12:20,721.721 INFO    ] Checking for system updates...
[2026-06-22 21:12:20,758.758 INFO    ] 200
[2026-06-22 21:12:20,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:12:20,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:12:20,816.816 INFO    ] No update needed
[2026-06-22 21:12:20,818.818 INFO    ] Checking for camera pi updates...
[2026-06-22 21:12:20,853.853 INFO    ] 200
[2026-06-22 21:12:20,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:12:20,900.900 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:12:20,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:12:20,984.984 INFO    ] No camera update needed
[2026-06-22 21:12:20,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:12:20,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:12:20,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:12:21,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:12:23,040.040 INFO    ] ================================================
[2026-06-22 21:12:23,055.055 INFO    ] Launching Daemon at Mon Jun 22 21:12:23 IST 2026
[2026-06-22 21:12:23,065.065 INFO    ] ================================================
[2026-06-22 21:12:23,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:12:23
[2026-06-22 21:12:24,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:12:24,588.588 INFO    ] Initializing speech engine...
[2026-06-22 21:12:24,600.600 INFO    ] 2026-06-22 21:12:24
[2026-06-22 21:12:24,879.879 INFO    ] 2026-06-22 21:12:24
[2026-06-22 21:12:24,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:12:25,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:12:25,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:12:25,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:12:25,419.419 INFO    ] time= 22/06/2026 21:12:25
[2026-06-22 21:12:25,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:12:25,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:12:25,565.565 INFO    ] No existing commands found in stream
[2026-06-22 21:12:30,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:12:30,593.593 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-22 21:12:32,472.472 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:12:32,475.475 INFO    ] Checking for system updates...
[2026-06-22 21:12:32,512.512 INFO    ] 200
[2026-06-22 21:12:32,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:12:32,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:12:32,571.571 INFO    ] No update needed
[2026-06-22 21:12:32,574.574 INFO    ] Checking for camera pi updates...
[2026-06-22 21:12:32,609.609 INFO    ] 200
[2026-06-22 21:12:32,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:12:32,654.654 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:12:32,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:12:32,710.710 INFO    ] No camera update needed
[2026-06-22 21:12:32,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:12:32,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:12:32,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:12:32,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:12:34,768.768 INFO    ] ================================================
[2026-06-22 21:12:34,783.783 INFO    ] Launching Daemon at Mon Jun 22 21:12:34 IST 2026
[2026-06-22 21:12:34,794.794 INFO    ] ================================================
[2026-06-22 21:12:35,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:12:35
[2026-06-22 21:12:35,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:12:36,121.121 INFO    ] Initializing speech engine...
[2026-06-22 21:12:36,130.130 INFO    ] 2026-06-22 21:12:36
[2026-06-22 21:12:36,419.419 INFO    ] 2026-06-22 21:12:36
[2026-06-22 21:12:36,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:12:39,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:12:39,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:12:40,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:12:40,843.843 INFO    ] time= 22/06/2026 21:12:40
[2026-06-22 21:12:40,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:12:40,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:12:40,899.899 INFO    ] No existing commands found in stream
[2026-06-22 21:12:45,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:12:45,911.911 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-22 21:12:48,112.112 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:12:48,115.115 INFO    ] Checking for system updates...
[2026-06-22 21:12:48,152.152 INFO    ] 200
[2026-06-22 21:12:48,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:12:48,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:12:48,211.211 INFO    ] No update needed
[2026-06-22 21:12:48,214.214 INFO    ] Checking for camera pi updates...
[2026-06-22 21:12:48,248.248 INFO    ] 200
[2026-06-22 21:12:48,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:12:48,292.292 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:12:48,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:12:48,377.377 INFO    ] No camera update needed
[2026-06-22 21:12:48,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:12:48,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:12:48,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:12:48,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:12:50,436.436 INFO    ] ================================================
[2026-06-22 21:12:50,451.451 INFO    ] Launching Daemon at Mon Jun 22 21:12:50 IST 2026
[2026-06-22 21:12:50,463.463 INFO    ] ================================================
[2026-06-22 21:12:51,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:12:51
[2026-06-22 21:12:51,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:12:51,964.964 INFO    ] Initializing speech engine...
[2026-06-22 21:12:51,973.973 INFO    ] 2026-06-22 21:12:51
[2026-06-22 21:12:52,232.232 INFO    ] 2026-06-22 21:12:52
[2026-06-22 21:12:52,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:12:52,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:12:52,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:12:52,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:12:52,718.718 INFO    ] time= 22/06/2026 21:12:52
[2026-06-22 21:12:52,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:12:52,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:12:52,918.918 INFO    ] No existing commands found in stream
[2026-06-22 21:12:57,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:12:57,943.943 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-22 21:12:59,689.689 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:12:59,691.691 INFO    ] Checking for system updates...
[2026-06-22 21:12:59,713.713 INFO    ] 200
[2026-06-22 21:12:59,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:12:59,749.749 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:12:59,752.752 INFO    ] No update needed
[2026-06-22 21:12:59,755.755 INFO    ] Checking for camera pi updates...
[2026-06-22 21:12:59,790.790 INFO    ] 200
[2026-06-22 21:12:59,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:12:59,839.839 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:12:59,922.922 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:12:59,925.925 INFO    ] No camera update needed
[2026-06-22 21:12:59,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:12:59,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:12:59,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:12:59,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:13:01,984.984 INFO    ] ================================================
[2026-06-22 21:13:02,006.006 INFO    ] Launching Daemon at Mon Jun 22 21:13:02 IST 2026
[2026-06-22 21:13:02,024.024 INFO    ] ================================================
[2026-06-22 21:13:02,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:13:02
[2026-06-22 21:13:03,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:13:03,537.537 INFO    ] Initializing speech engine...
[2026-06-22 21:13:03,559.559 INFO    ] 2026-06-22 21:13:03
[2026-06-22 21:13:03,811.811 INFO    ] 2026-06-22 21:13:03
[2026-06-22 21:13:03,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:13:04,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:13:04,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:13:04,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:13:04,273.273 INFO    ] time= 22/06/2026 21:13:04
[2026-06-22 21:13:04,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:13:04,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:13:04,506.506 INFO    ] No existing commands found in stream
[2026-06-22 21:13:09,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:13:09,538.538 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-22 21:13:12,259.259 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:13:12,261.261 INFO    ] Checking for system updates...
[2026-06-22 21:13:12,297.297 INFO    ] 200
[2026-06-22 21:13:12,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:13:12,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:13:12,355.355 INFO    ] No update needed
[2026-06-22 21:13:12,358.358 INFO    ] Checking for camera pi updates...
[2026-06-22 21:13:12,392.392 INFO    ] 200
[2026-06-22 21:13:12,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:13:12,435.435 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:13:12,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:13:12,537.537 INFO    ] No camera update needed
[2026-06-22 21:13:12,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:13:12,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:13:12,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:13:12,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:13:14,593.593 INFO    ] ================================================
[2026-06-22 21:13:14,608.608 INFO    ] Launching Daemon at Mon Jun 22 21:13:14 IST 2026
[2026-06-22 21:13:14,618.618 INFO    ] ================================================
[2026-06-22 21:13:15,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:13:15
[2026-06-22 21:13:15,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:13:15,985.985 INFO    ] Initializing speech engine...
[2026-06-22 21:13:15,994.994 INFO    ] 2026-06-22 21:13:15
[2026-06-22 21:13:16,242.242 INFO    ] 2026-06-22 21:13:16
[2026-06-22 21:13:16,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:13:16,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:13:16,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:13:16,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:13:16,714.714 INFO    ] time= 22/06/2026 21:13:16
[2026-06-22 21:13:16,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:13:16,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:13:16,937.937 INFO    ] No existing commands found in stream
[2026-06-22 21:13:21,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:13:21,968.968 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-22 21:13:25,917.917 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:13:25,920.920 INFO    ] Checking for system updates...
[2026-06-22 21:13:25,957.957 INFO    ] 200
[2026-06-22 21:13:25,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:13:26,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:13:26,023.023 INFO    ] No update needed
[2026-06-22 21:13:26,026.026 INFO    ] Checking for camera pi updates...
[2026-06-22 21:13:26,061.061 INFO    ] 200
[2026-06-22 21:13:26,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:13:26,106.106 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:13:26,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:13:26,194.194 INFO    ] No camera update needed
[2026-06-22 21:13:26,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:13:26,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:13:26,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:13:26,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:13:28,253.253 INFO    ] ================================================
[2026-06-22 21:13:28,268.268 INFO    ] Launching Daemon at Mon Jun 22 21:13:28 IST 2026
[2026-06-22 21:13:28,279.279 INFO    ] ================================================
[2026-06-22 21:13:28,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:13:28
[2026-06-22 21:13:29,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:13:29,658.658 INFO    ] Initializing speech engine...
[2026-06-22 21:13:29,664.664 INFO    ] 2026-06-22 21:13:29
[2026-06-22 21:13:29,939.939 INFO    ] 2026-06-22 21:13:29
[2026-06-22 21:13:29,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:13:30,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:13:30,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:13:30,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:13:30,419.419 INFO    ] time= 22/06/2026 21:13:30
[2026-06-22 21:13:30,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:13:30,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:13:30,632.632 INFO    ] No existing commands found in stream
[2026-06-22 21:13:35,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:13:35,662.662 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-22 21:13:37,386.386 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:13:37,388.388 INFO    ] Checking for system updates...
[2026-06-22 21:13:37,425.425 INFO    ] 200
[2026-06-22 21:13:37,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:13:37,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:13:37,482.482 INFO    ] No update needed
[2026-06-22 21:13:37,485.485 INFO    ] Checking for camera pi updates...
[2026-06-22 21:13:37,522.522 INFO    ] 200
[2026-06-22 21:13:37,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:13:37,569.569 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:13:37,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:13:37,662.662 INFO    ] No camera update needed
[2026-06-22 21:13:37,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:13:37,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:13:37,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:13:37,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:13:39,717.717 INFO    ] ================================================
[2026-06-22 21:13:39,732.732 INFO    ] Launching Daemon at Mon Jun 22 21:13:39 IST 2026
[2026-06-22 21:13:39,743.743 INFO    ] ================================================
[2026-06-22 21:13:40,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:13:40
[2026-06-22 21:13:41,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:13:41,342.342 INFO    ] Initializing speech engine...
[2026-06-22 21:13:41,350.350 INFO    ] 2026-06-22 21:13:41
[2026-06-22 21:13:41,626.626 INFO    ] 2026-06-22 21:13:41
[2026-06-22 21:13:41,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:13:43,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:13:43,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:13:44,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:13:44,331.331 INFO    ] time= 22/06/2026 21:13:44
[2026-06-22 21:13:44,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:13:44,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:13:44,495.495 INFO    ] No existing commands found in stream
[2026-06-22 21:13:49,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:13:49,517.517 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-22 21:13:53,499.499 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:13:53,501.501 INFO    ] Checking for system updates...
[2026-06-22 21:13:53,524.524 INFO    ] 200
[2026-06-22 21:13:53,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:13:53,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:13:53,590.590 INFO    ] No update needed
[2026-06-22 21:13:53,593.593 INFO    ] Checking for camera pi updates...
[2026-06-22 21:13:53,628.628 INFO    ] 200
[2026-06-22 21:13:53,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:13:53,674.674 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:13:53,755.755 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:13:53,757.757 INFO    ] No camera update needed
[2026-06-22 21:13:53,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:13:53,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:13:53,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:13:53,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:13:55,816.816 INFO    ] ================================================
[2026-06-22 21:13:55,831.831 INFO    ] Launching Daemon at Mon Jun 22 21:13:55 IST 2026
[2026-06-22 21:13:55,842.842 INFO    ] ================================================
[2026-06-22 21:13:56,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:13:56
[2026-06-22 21:13:56,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:13:57,252.252 INFO    ] Initializing speech engine...
[2026-06-22 21:13:57,268.268 INFO    ] 2026-06-22 21:13:57
[2026-06-22 21:13:57,554.554 INFO    ] 2026-06-22 21:13:57
[2026-06-22 21:13:57,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:13:57,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:13:57,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:13:57,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:13:57,961.961 INFO    ] time= 22/06/2026 21:13:57
[2026-06-22 21:13:57,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:13:57,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:13:58,053.053 INFO    ] No existing commands found in stream
[2026-06-22 21:14:03,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:14:03,091.091 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-22 21:14:06,440.440 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:14:06,442.442 INFO    ] Checking for system updates...
[2026-06-22 21:14:06,478.478 INFO    ] 200
[2026-06-22 21:14:06,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:14:06,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:14:06,535.535 INFO    ] No update needed
[2026-06-22 21:14:06,538.538 INFO    ] Checking for camera pi updates...
[2026-06-22 21:14:06,572.572 INFO    ] 200
[2026-06-22 21:14:06,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:14:06,614.614 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:14:06,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:14:06,698.698 INFO    ] No camera update needed
[2026-06-22 21:14:06,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:14:06,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:14:06,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:14:06,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:14:08,754.754 INFO    ] ================================================
[2026-06-22 21:14:08,769.769 INFO    ] Launching Daemon at Mon Jun 22 21:14:08 IST 2026
[2026-06-22 21:14:08,781.781 INFO    ] ================================================
[2026-06-22 21:14:09,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:14:09
[2026-06-22 21:14:09,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:14:10,123.123 INFO    ] Initializing speech engine...
[2026-06-22 21:14:10,133.133 INFO    ] 2026-06-22 21:14:10
[2026-06-22 21:14:10,378.378 INFO    ] 2026-06-22 21:14:10
[2026-06-22 21:14:10,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:14:13,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:14:13,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:14:14,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:14:14,508.508 INFO    ] time= 22/06/2026 21:14:14
[2026-06-22 21:14:14,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:14:14,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:14:14,563.563 INFO    ] No existing commands found in stream
[2026-06-22 21:14:19,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:14:19,576.576 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-22 21:14:20,447.447 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:14:20,450.450 INFO    ] Checking for system updates...
[2026-06-22 21:14:20,487.487 INFO    ] 200
[2026-06-22 21:14:20,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:14:20,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:14:20,552.552 INFO    ] No update needed
[2026-06-22 21:14:20,555.555 INFO    ] Checking for camera pi updates...
[2026-06-22 21:14:20,593.593 INFO    ] 200
[2026-06-22 21:14:20,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:14:20,642.642 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:14:20,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:14:20,751.751 INFO    ] No camera update needed
[2026-06-22 21:14:20,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:14:20,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:14:20,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:14:20,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:14:22,811.811 INFO    ] ================================================
[2026-06-22 21:14:22,826.826 INFO    ] Launching Daemon at Mon Jun 22 21:14:22 IST 2026
[2026-06-22 21:14:22,837.837 INFO    ] ================================================
[2026-06-22 21:14:23,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:14:23
[2026-06-22 21:14:24,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:14:24,438.438 INFO    ] Initializing speech engine...
[2026-06-22 21:14:24,451.451 INFO    ] 2026-06-22 21:14:24
[2026-06-22 21:14:24,735.735 INFO    ] 2026-06-22 21:14:24
[2026-06-22 21:14:24,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:14:25,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:14:25,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:14:25,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:14:25,267.267 INFO    ] time= 22/06/2026 21:14:25
[2026-06-22 21:14:25,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:14:25,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:14:25,435.435 INFO    ] No existing commands found in stream
[2026-06-22 21:14:30,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:14:30,469.469 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-22 21:14:34,383.383 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:14:34,385.385 INFO    ] Checking for system updates...
[2026-06-22 21:14:34,406.406 INFO    ] 200
[2026-06-22 21:14:34,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:14:34,438.438 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:14:34,440.440 INFO    ] No update needed
[2026-06-22 21:14:34,441.441 INFO    ] Checking for camera pi updates...
[2026-06-22 21:14:34,461.461 INFO    ] 200
[2026-06-22 21:14:34,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:14:34,491.491 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:14:34,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:14:34,580.580 INFO    ] No camera update needed
[2026-06-22 21:14:34,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:14:34,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:14:34,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:14:34,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:14:36,639.639 INFO    ] ================================================
[2026-06-22 21:14:36,655.655 INFO    ] Launching Daemon at Mon Jun 22 21:14:36 IST 2026
[2026-06-22 21:14:36,666.666 INFO    ] ================================================
[2026-06-22 21:14:37,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:14:37
[2026-06-22 21:14:37,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:14:38,057.057 INFO    ] Initializing speech engine...
[2026-06-22 21:14:38,066.066 INFO    ] 2026-06-22 21:14:38
[2026-06-22 21:14:38,326.326 INFO    ] 2026-06-22 21:14:38
[2026-06-22 21:14:38,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:14:38,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:14:38,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:14:38,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:14:38,791.791 INFO    ] time= 22/06/2026 21:14:38
[2026-06-22 21:14:38,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:14:38,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:14:39,025.025 INFO    ] No existing commands found in stream
[2026-06-22 21:14:44,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:14:44,041.041 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-22 21:14:46,329.329 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:14:46,332.332 INFO    ] Checking for system updates...
[2026-06-22 21:14:46,369.369 INFO    ] 200
[2026-06-22 21:14:46,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:14:46,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:14:46,429.429 INFO    ] No update needed
[2026-06-22 21:14:46,432.432 INFO    ] Checking for camera pi updates...
[2026-06-22 21:14:46,470.470 INFO    ] 200
[2026-06-22 21:14:46,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:14:46,515.515 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:14:46,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:14:46,601.601 INFO    ] No camera update needed
[2026-06-22 21:14:46,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:14:46,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:14:46,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:14:46,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:14:48,661.661 INFO    ] ================================================
[2026-06-22 21:14:48,677.677 INFO    ] Launching Daemon at Mon Jun 22 21:14:48 IST 2026
[2026-06-22 21:14:48,688.688 INFO    ] ================================================
[2026-06-22 21:14:49,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:14:49
[2026-06-22 21:14:49,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:14:50,085.085 INFO    ] Initializing speech engine...
[2026-06-22 21:14:50,099.099 INFO    ] 2026-06-22 21:14:50
[2026-06-22 21:14:50,382.382 INFO    ] 2026-06-22 21:14:50
[2026-06-22 21:14:50,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:14:50,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:14:50,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:14:50,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:14:50,806.806 INFO    ] time= 22/06/2026 21:14:50
[2026-06-22 21:14:50,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:14:50,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:14:50,890.890 INFO    ] No existing commands found in stream
[2026-06-22 21:14:55,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:14:55,905.905 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-22 21:14:58,264.264 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:14:58,267.267 INFO    ] Checking for system updates...
[2026-06-22 21:14:58,303.303 INFO    ] 200
[2026-06-22 21:14:58,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:14:58,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:14:58,360.360 INFO    ] No update needed
[2026-06-22 21:14:58,363.363 INFO    ] Checking for camera pi updates...
[2026-06-22 21:14:58,398.398 INFO    ] 200
[2026-06-22 21:14:58,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:14:58,440.440 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:14:58,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:14:58,523.523 INFO    ] No camera update needed
[2026-06-22 21:14:58,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:14:58,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:14:58,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:14:58,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:15:00,578.578 INFO    ] ================================================
[2026-06-22 21:15:00,593.593 INFO    ] Launching Daemon at Mon Jun 22 21:15:00 IST 2026
[2026-06-22 21:15:00,604.604 INFO    ] ================================================
[2026-06-22 21:15:01,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:15:01
[2026-06-22 21:15:01,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:15:02,373.373 INFO    ] Initializing speech engine...
[2026-06-22 21:15:02,378.378 INFO    ] 2026-06-22 21:15:02
[2026-06-22 21:15:02,936.936 INFO    ] 2026-06-22 21:15:02
[2026-06-22 21:15:02,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:15:03,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:15:03,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:15:03,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:15:03,512.512 INFO    ] time= 22/06/2026 21:15:03
[2026-06-22 21:15:03,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:15:03,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:15:03,704.704 INFO    ] No existing commands found in stream
[2026-06-22 21:15:08,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:15:08,739.739 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-22 21:15:16,217.217 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:15:16,220.220 INFO    ] Checking for system updates...
[2026-06-22 21:15:16,257.257 INFO    ] 200
[2026-06-22 21:15:16,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:15:16,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:15:16,317.317 INFO    ] No update needed
[2026-06-22 21:15:16,319.319 INFO    ] Checking for camera pi updates...
[2026-06-22 21:15:16,354.354 INFO    ] 200
[2026-06-22 21:15:16,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:15:16,402.402 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:15:16,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:15:16,490.490 INFO    ] No camera update needed
[2026-06-22 21:15:16,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:15:16,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:15:16,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:15:16,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:15:18,549.549 INFO    ] ================================================
[2026-06-22 21:15:18,565.565 INFO    ] Launching Daemon at Mon Jun 22 21:15:18 IST 2026
[2026-06-22 21:15:18,576.576 INFO    ] ================================================
[2026-06-22 21:15:19,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:15:19
[2026-06-22 21:15:19,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:15:20,129.129 INFO    ] Initializing speech engine...
[2026-06-22 21:15:20,139.139 INFO    ] 2026-06-22 21:15:20
[2026-06-22 21:15:20,396.396 INFO    ] 2026-06-22 21:15:20
[2026-06-22 21:15:20,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:15:20,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:15:20,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:15:20,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:15:20,863.863 INFO    ] time= 22/06/2026 21:15:20
[2026-06-22 21:15:20,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:15:20,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:15:21,029.029 INFO    ] No existing commands found in stream
[2026-06-22 21:15:26,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:15:26,068.068 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-22 21:15:28,153.153 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:15:28,156.156 INFO    ] Checking for system updates...
[2026-06-22 21:15:28,193.193 INFO    ] 200
[2026-06-22 21:15:28,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:15:28,252.252 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:15:28,255.255 INFO    ] No update needed
[2026-06-22 21:15:28,257.257 INFO    ] Checking for camera pi updates...
[2026-06-22 21:15:28,291.291 INFO    ] 200
[2026-06-22 21:15:28,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:15:28,334.334 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:15:28,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:15:28,386.386 INFO    ] No camera update needed
[2026-06-22 21:15:28,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:15:28,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:15:28,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:15:28,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:15:30,443.443 INFO    ] ================================================
[2026-06-22 21:15:30,460.460 INFO    ] Launching Daemon at Mon Jun 22 21:15:30 IST 2026
[2026-06-22 21:15:30,471.471 INFO    ] ================================================
[2026-06-22 21:15:31,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:15:31
[2026-06-22 21:15:31,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:15:31,901.901 INFO    ] Initializing speech engine...
[2026-06-22 21:15:31,911.911 INFO    ] 2026-06-22 21:15:31
[2026-06-22 21:15:32,164.164 INFO    ] 2026-06-22 21:15:32
[2026-06-22 21:15:32,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:15:32,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:15:32,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:15:32,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:15:32,552.552 INFO    ] time= 22/06/2026 21:15:32
[2026-06-22 21:15:32,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:15:32,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:15:32,636.636 INFO    ] No existing commands found in stream
[2026-06-22 21:15:37,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:15:37,651.651 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-22 21:15:41,832.832 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:15:41,835.835 INFO    ] Checking for system updates...
[2026-06-22 21:15:41,874.874 INFO    ] 200
[2026-06-22 21:15:41,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:15:41,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:15:41,932.932 INFO    ] No update needed
[2026-06-22 21:15:41,935.935 INFO    ] Checking for camera pi updates...
[2026-06-22 21:15:41,969.969 INFO    ] 200
[2026-06-22 21:15:41,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:15:42,014.014 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:15:42,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:15:42,194.194 INFO    ] No camera update needed
[2026-06-22 21:15:42,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:15:42,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:15:42,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:15:42,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:15:44,250.250 INFO    ] ================================================
[2026-06-22 21:15:44,266.266 INFO    ] Launching Daemon at Mon Jun 22 21:15:44 IST 2026
[2026-06-22 21:15:44,277.277 INFO    ] ================================================
[2026-06-22 21:15:44,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:15:44
[2026-06-22 21:15:45,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:15:45,759.759 INFO    ] Initializing speech engine...
[2026-06-22 21:15:45,772.772 INFO    ] 2026-06-22 21:15:45
[2026-06-22 21:15:46,081.081 INFO    ] 2026-06-22 21:15:46
[2026-06-22 21:15:46,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:15:48,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:15:48,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:15:49,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:15:49,729.729 INFO    ] time= 22/06/2026 21:15:49
[2026-06-22 21:15:49,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:15:49,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:15:49,795.795 INFO    ] No existing commands found in stream
[2026-06-22 21:15:54,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:15:54,808.808 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-22 21:15:58,708.708 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:15:58,710.710 INFO    ] Checking for system updates...
[2026-06-22 21:15:58,747.747 INFO    ] 200
[2026-06-22 21:15:58,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:15:58,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:15:58,804.804 INFO    ] No update needed
[2026-06-22 21:15:58,807.807 INFO    ] Checking for camera pi updates...
[2026-06-22 21:15:58,840.840 INFO    ] 200
[2026-06-22 21:15:58,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:15:58,886.886 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:15:58,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:15:58,968.968 INFO    ] No camera update needed
[2026-06-22 21:15:58,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:15:58,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:15:58,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:15:58,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:16:01,026.026 INFO    ] ================================================
[2026-06-22 21:16:01,042.042 INFO    ] Launching Daemon at Mon Jun 22 21:16:01 IST 2026
[2026-06-22 21:16:01,053.053 INFO    ] ================================================
[2026-06-22 21:16:01,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:16:01
[2026-06-22 21:16:02,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:16:02,773.773 INFO    ] Initializing speech engine...
[2026-06-22 21:16:02,783.783 INFO    ] 2026-06-22 21:16:02
[2026-06-22 21:16:03,098.098 INFO    ] 2026-06-22 21:16:03
[2026-06-22 21:16:03,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:16:03,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:16:03,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:16:03,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:16:03,464.464 INFO    ] time= 22/06/2026 21:16:03
[2026-06-22 21:16:03,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:16:03,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:16:03,609.609 INFO    ] No existing commands found in stream
[2026-06-22 21:16:08,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:16:08,623.623 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-22 21:16:10,492.492 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:16:10,494.494 INFO    ] Checking for system updates...
[2026-06-22 21:16:10,516.516 INFO    ] 200
[2026-06-22 21:16:10,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:16:10,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:16:10,564.564 INFO    ] No update needed
[2026-06-22 21:16:10,567.567 INFO    ] Checking for camera pi updates...
[2026-06-22 21:16:10,603.603 INFO    ] 200
[2026-06-22 21:16:10,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:16:10,649.649 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:16:10,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:16:10,749.749 INFO    ] No camera update needed
[2026-06-22 21:16:10,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:16:10,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:16:10,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:16:10,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:16:12,806.806 INFO    ] ================================================
[2026-06-22 21:16:12,822.822 INFO    ] Launching Daemon at Mon Jun 22 21:16:12 IST 2026
[2026-06-22 21:16:12,833.833 INFO    ] ================================================
[2026-06-22 21:16:13,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:16:13
[2026-06-22 21:16:13,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:16:14,170.170 INFO    ] Initializing speech engine...
[2026-06-22 21:16:14,185.185 INFO    ] 2026-06-22 21:16:14
[2026-06-22 21:16:14,462.462 INFO    ] 2026-06-22 21:16:14
[2026-06-22 21:16:14,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:16:14,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:16:14,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:16:14,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:16:14,867.867 INFO    ] time= 22/06/2026 21:16:14
[2026-06-22 21:16:14,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:16:14,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:16:14,953.953 INFO    ] No existing commands found in stream
[2026-06-22 21:16:19,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:16:19,971.971 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-22 21:16:23,389.389 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:16:23,392.392 INFO    ] Checking for system updates...
[2026-06-22 21:16:23,428.428 INFO    ] 200
[2026-06-22 21:16:23,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:16:23,483.483 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:16:23,485.485 INFO    ] No update needed
[2026-06-22 21:16:23,488.488 INFO    ] Checking for camera pi updates...
[2026-06-22 21:16:23,522.522 INFO    ] 200
[2026-06-22 21:16:23,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:16:23,565.565 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:16:23,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:16:23,640.640 INFO    ] No camera update needed
[2026-06-22 21:16:23,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:16:23,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:16:23,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:16:23,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:16:25,696.696 INFO    ] ================================================
[2026-06-22 21:16:25,711.711 INFO    ] Launching Daemon at Mon Jun 22 21:16:25 IST 2026
[2026-06-22 21:16:25,722.722 INFO    ] ================================================
[2026-06-22 21:16:26,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:16:26
[2026-06-22 21:16:26,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:16:27,138.138 INFO    ] Initializing speech engine...
[2026-06-22 21:16:27,147.147 INFO    ] 2026-06-22 21:16:27
[2026-06-22 21:16:27,432.432 INFO    ] 2026-06-22 21:16:27
[2026-06-22 21:16:27,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:16:27,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:16:27,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:16:27,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:16:27,920.920 INFO    ] time= 22/06/2026 21:16:27
[2026-06-22 21:16:27,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:16:28,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:16:28,172.172 INFO    ] No existing commands found in stream
[2026-06-22 21:16:33,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:16:33,203.203 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-22 21:16:35,269.269 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:16:35,271.271 INFO    ] Checking for system updates...
[2026-06-22 21:16:35,308.308 INFO    ] 200
[2026-06-22 21:16:35,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:16:35,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:16:35,366.366 INFO    ] No update needed
[2026-06-22 21:16:35,369.369 INFO    ] Checking for camera pi updates...
[2026-06-22 21:16:35,403.403 INFO    ] 200
[2026-06-22 21:16:35,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:16:35,451.451 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:16:35,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:16:35,537.537 INFO    ] No camera update needed
[2026-06-22 21:16:35,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:16:35,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:16:35,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:16:35,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:16:37,585.585 INFO    ] ================================================
[2026-06-22 21:16:37,601.601 INFO    ] Launching Daemon at Mon Jun 22 21:16:37 IST 2026
[2026-06-22 21:16:37,612.612 INFO    ] ================================================
[2026-06-22 21:16:38,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:16:38
[2026-06-22 21:16:38,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:16:38,928.928 INFO    ] Initializing speech engine...
[2026-06-22 21:16:38,943.943 INFO    ] 2026-06-22 21:16:38
[2026-06-22 21:16:39,208.208 INFO    ] 2026-06-22 21:16:39
[2026-06-22 21:16:39,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:16:39,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:16:39,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:16:39,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:16:39,686.686 INFO    ] time= 22/06/2026 21:16:39
[2026-06-22 21:16:39,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:16:39,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:16:39,887.887 INFO    ] No existing commands found in stream
[2026-06-22 21:16:44,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:16:44,917.917 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-22 21:16:45,473.473 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:16:45,475.475 INFO    ] Checking for system updates...
[2026-06-22 21:16:45,496.496 INFO    ] 200
[2026-06-22 21:16:45,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:16:45,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:16:45,530.530 INFO    ] No update needed
[2026-06-22 21:16:45,531.531 INFO    ] Checking for camera pi updates...
[2026-06-22 21:16:45,560.560 INFO    ] 200
[2026-06-22 21:16:45,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:16:45,608.608 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:16:45,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:16:45,692.692 INFO    ] No camera update needed
[2026-06-22 21:16:45,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:16:45,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:16:45,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:16:45,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:16:47,751.751 INFO    ] ================================================
[2026-06-22 21:16:47,767.767 INFO    ] Launching Daemon at Mon Jun 22 21:16:47 IST 2026
[2026-06-22 21:16:47,778.778 INFO    ] ================================================
[2026-06-22 21:16:48,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:16:48
[2026-06-22 21:16:48,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:16:49,110.110 INFO    ] Initializing speech engine...
[2026-06-22 21:16:49,125.125 INFO    ] 2026-06-22 21:16:49
[2026-06-22 21:16:49,390.390 INFO    ] 2026-06-22 21:16:49
[2026-06-22 21:16:49,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:16:50,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:16:50,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:16:51,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:16:51,212.212 INFO    ] time= 22/06/2026 21:16:51
[2026-06-22 21:16:51,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:16:51,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:16:51,328.328 INFO    ] No existing commands found in stream
[2026-06-22 21:16:56,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:16:56,342.342 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-22 21:16:59,888.888 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:16:59,891.891 INFO    ] Checking for system updates...
[2026-06-22 21:16:59,927.927 INFO    ] 200
[2026-06-22 21:16:59,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:16:59,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:16:59,985.985 INFO    ] No update needed
[2026-06-22 21:16:59,987.987 INFO    ] Checking for camera pi updates...
[2026-06-22 21:17:00,020.020 INFO    ] 200
[2026-06-22 21:17:00,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:17:00,064.064 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:17:00,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:17:00,139.139 INFO    ] No camera update needed
[2026-06-22 21:17:00,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:17:00,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:17:00,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:17:00,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:17:02,197.197 INFO    ] ================================================
[2026-06-22 21:17:02,215.215 INFO    ] Launching Daemon at Mon Jun 22 21:17:02 IST 2026
[2026-06-22 21:17:02,228.228 INFO    ] ================================================
[2026-06-22 21:17:02,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:17:02
[2026-06-22 21:17:03,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:17:03,796.796 INFO    ] Initializing speech engine...
[2026-06-22 21:17:03,803.803 INFO    ] 2026-06-22 21:17:03
[2026-06-22 21:17:04,095.095 INFO    ] 2026-06-22 21:17:04
[2026-06-22 21:17:04,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:17:04,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:17:04,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:17:04,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:17:04,512.512 INFO    ] time= 22/06/2026 21:17:04
[2026-06-22 21:17:04,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:17:04,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:17:04,673.673 INFO    ] No existing commands found in stream
[2026-06-22 21:17:09,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:17:09,701.701 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-22 21:17:13,868.868 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:17:13,870.870 INFO    ] Checking for system updates...
[2026-06-22 21:17:13,913.913 INFO    ] 200
[2026-06-22 21:17:13,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:17:13,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:17:13,977.977 INFO    ] No update needed
[2026-06-22 21:17:13,979.979 INFO    ] Checking for camera pi updates...
[2026-06-22 21:17:14,013.013 INFO    ] 200
[2026-06-22 21:17:14,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:17:14,056.056 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:17:14,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:17:14,155.155 INFO    ] No camera update needed
[2026-06-22 21:17:14,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:17:14,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:17:14,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:17:14,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:17:16,211.211 INFO    ] ================================================
[2026-06-22 21:17:16,227.227 INFO    ] Launching Daemon at Mon Jun 22 21:17:16 IST 2026
[2026-06-22 21:17:16,238.238 INFO    ] ================================================
[2026-06-22 21:17:16,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:17:16
[2026-06-22 21:17:17,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:17:17,781.781 INFO    ] Initializing speech engine...
[2026-06-22 21:17:17,789.789 INFO    ] 2026-06-22 21:17:17
[2026-06-22 21:17:18,062.062 INFO    ] 2026-06-22 21:17:18
[2026-06-22 21:17:18,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:17:21,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:17:21,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:17:22,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:17:22,533.533 INFO    ] time= 22/06/2026 21:17:22
[2026-06-22 21:17:22,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:17:22,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:17:22,592.592 INFO    ] No existing commands found in stream
[2026-06-22 21:17:27,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:17:27,605.605 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-22 21:17:29,449.449 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:17:29,450.450 INFO    ] Checking for system updates...
[2026-06-22 21:17:29,471.471 INFO    ] 200
[2026-06-22 21:17:29,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:17:29,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:17:29,507.507 INFO    ] No update needed
[2026-06-22 21:17:29,508.508 INFO    ] Checking for camera pi updates...
[2026-06-22 21:17:29,536.536 INFO    ] 200
[2026-06-22 21:17:29,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:17:29,580.580 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:17:29,678.678 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:17:29,680.680 INFO    ] No camera update needed
[2026-06-22 21:17:29,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:17:29,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:17:29,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:17:29,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:17:31,738.738 INFO    ] ================================================
[2026-06-22 21:17:31,755.755 INFO    ] Launching Daemon at Mon Jun 22 21:17:31 IST 2026
[2026-06-22 21:17:31,767.767 INFO    ] ================================================
[2026-06-22 21:17:32,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:17:32
[2026-06-22 21:17:33,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:17:33,257.257 INFO    ] Initializing speech engine...
[2026-06-22 21:17:33,266.266 INFO    ] 2026-06-22 21:17:33
[2026-06-22 21:17:33,557.557 INFO    ] 2026-06-22 21:17:33
[2026-06-22 21:17:33,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:17:33,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:17:33,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:17:34,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:17:34,181.181 INFO    ] time= 22/06/2026 21:17:34
[2026-06-22 21:17:34,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:17:34,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:17:34,317.317 INFO    ] No existing commands found in stream
[2026-06-22 21:17:39,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:17:39,345.345 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-22 21:17:42,077.077 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:17:42,080.080 INFO    ] Checking for system updates...
[2026-06-22 21:17:42,117.117 INFO    ] 200
[2026-06-22 21:17:42,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:17:42,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:17:42,175.175 INFO    ] No update needed
[2026-06-22 21:17:42,178.178 INFO    ] Checking for camera pi updates...
[2026-06-22 21:17:42,213.213 INFO    ] 200
[2026-06-22 21:17:42,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:17:42,257.257 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:17:42,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:17:42,367.367 INFO    ] No camera update needed
[2026-06-22 21:17:42,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:17:42,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:17:42,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:17:42,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:17:44,425.425 INFO    ] ================================================
[2026-06-22 21:17:44,441.441 INFO    ] Launching Daemon at Mon Jun 22 21:17:44 IST 2026
[2026-06-22 21:17:44,452.452 INFO    ] ================================================
[2026-06-22 21:17:44,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:17:44
[2026-06-22 21:17:45,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:17:45,807.807 INFO    ] Initializing speech engine...
[2026-06-22 21:17:45,816.816 INFO    ] 2026-06-22 21:17:45
[2026-06-22 21:17:46,074.074 INFO    ] 2026-06-22 21:17:46
[2026-06-22 21:17:46,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:17:46,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:17:46,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:17:46,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:17:46,432.432 INFO    ] time= 22/06/2026 21:17:46
[2026-06-22 21:17:46,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:17:46,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:17:46,528.528 INFO    ] No existing commands found in stream
[2026-06-22 21:17:51,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:17:51,544.544 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-22 21:17:55,399.399 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:17:55,402.402 INFO    ] Checking for system updates...
[2026-06-22 21:17:55,441.441 INFO    ] 200
[2026-06-22 21:17:55,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:17:55,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:17:55,500.500 INFO    ] No update needed
[2026-06-22 21:17:55,502.502 INFO    ] Checking for camera pi updates...
[2026-06-22 21:17:55,536.536 INFO    ] 200
[2026-06-22 21:17:55,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:17:55,580.580 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:17:55,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:17:55,661.661 INFO    ] No camera update needed
[2026-06-22 21:17:55,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:17:55,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:17:55,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:17:55,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:17:57,719.719 INFO    ] ================================================
[2026-06-22 21:17:57,734.734 INFO    ] Launching Daemon at Mon Jun 22 21:17:57 IST 2026
[2026-06-22 21:17:57,745.745 INFO    ] ================================================
[2026-06-22 21:17:58,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:17:58
[2026-06-22 21:17:58,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:17:59,108.108 INFO    ] Initializing speech engine...
[2026-06-22 21:17:59,121.121 INFO    ] 2026-06-22 21:17:59
[2026-06-22 21:17:59,388.388 INFO    ] 2026-06-22 21:17:59
[2026-06-22 21:17:59,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:17:59,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:17:59,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:17:59,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:17:59,871.871 INFO    ] time= 22/06/2026 21:17:59
[2026-06-22 21:17:59,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:17:59,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:18:00,085.085 INFO    ] No existing commands found in stream
[2026-06-22 21:18:05,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:18:05,117.117 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-22 21:18:05,805.805 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:18:05,808.808 INFO    ] Checking for system updates...
[2026-06-22 21:18:05,846.846 INFO    ] 200
[2026-06-22 21:18:05,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:18:05,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:18:05,905.905 INFO    ] No update needed
[2026-06-22 21:18:05,908.908 INFO    ] Checking for camera pi updates...
[2026-06-22 21:18:05,943.943 INFO    ] 200
[2026-06-22 21:18:05,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:18:05,987.987 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:18:06,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:18:06,066.066 INFO    ] No camera update needed
[2026-06-22 21:18:06,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:18:06,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:18:06,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:18:06,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:18:08,121.121 INFO    ] ================================================
[2026-06-22 21:18:08,137.137 INFO    ] Launching Daemon at Mon Jun 22 21:18:08 IST 2026
[2026-06-22 21:18:08,148.148 INFO    ] ================================================
[2026-06-22 21:18:08,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:18:08
[2026-06-22 21:18:09,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:18:09,759.759 INFO    ] Initializing speech engine...
[2026-06-22 21:18:09,771.771 INFO    ] 2026-06-22 21:18:09
[2026-06-22 21:18:10,080.080 INFO    ] 2026-06-22 21:18:10
[2026-06-22 21:18:10,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:18:10,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:18:10,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:18:10,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:18:10,587.587 INFO    ] time= 22/06/2026 21:18:10
[2026-06-22 21:18:10,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:18:10,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:18:10,740.740 INFO    ] No existing commands found in stream
[2026-06-22 21:18:15,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:18:15,757.757 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-22 21:18:16,369.369 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:18:16,372.372 INFO    ] Checking for system updates...
[2026-06-22 21:18:16,412.412 INFO    ] 200
[2026-06-22 21:18:16,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:18:16,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:18:16,480.480 INFO    ] No update needed
[2026-06-22 21:18:16,483.483 INFO    ] Checking for camera pi updates...
[2026-06-22 21:18:16,518.518 INFO    ] 200
[2026-06-22 21:18:16,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:18:16,563.563 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:18:16,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:18:16,646.646 INFO    ] No camera update needed
[2026-06-22 21:18:16,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:18:16,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:18:16,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:18:16,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:18:18,705.705 INFO    ] ================================================
[2026-06-22 21:18:18,721.721 INFO    ] Launching Daemon at Mon Jun 22 21:18:18 IST 2026
[2026-06-22 21:18:18,731.731 INFO    ] ================================================
[2026-06-22 21:18:19,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:18:19
[2026-06-22 21:18:19,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:18:20,076.076 INFO    ] Initializing speech engine...
[2026-06-22 21:18:20,091.091 INFO    ] 2026-06-22 21:18:20
[2026-06-22 21:18:20,374.374 INFO    ] 2026-06-22 21:18:20
[2026-06-22 21:18:20,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:18:25,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:18:25,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:18:26,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:18:26,217.217 INFO    ] time= 22/06/2026 21:18:26
[2026-06-22 21:18:26,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:18:26,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:18:26,287.287 INFO    ] No existing commands found in stream
[2026-06-22 21:18:31,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:18:31,299.299 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-22 21:18:35,375.375 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:18:35,378.378 INFO    ] Checking for system updates...
[2026-06-22 21:18:35,413.413 INFO    ] 200
[2026-06-22 21:18:35,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:18:35,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:18:35,470.470 INFO    ] No update needed
[2026-06-22 21:18:35,473.473 INFO    ] Checking for camera pi updates...
[2026-06-22 21:18:35,507.507 INFO    ] 200
[2026-06-22 21:18:35,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:18:35,550.550 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:18:35,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:18:35,655.655 INFO    ] No camera update needed
[2026-06-22 21:18:35,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:18:35,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:18:35,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:18:35,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:18:37,713.713 INFO    ] ================================================
[2026-06-22 21:18:37,728.728 INFO    ] Launching Daemon at Mon Jun 22 21:18:37 IST 2026
[2026-06-22 21:18:37,739.739 INFO    ] ================================================
[2026-06-22 21:18:38,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:18:38
[2026-06-22 21:18:38,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:18:39,245.245 INFO    ] Initializing speech engine...
[2026-06-22 21:18:39,257.257 INFO    ] 2026-06-22 21:18:39
[2026-06-22 21:18:39,534.534 INFO    ] 2026-06-22 21:18:39
[2026-06-22 21:18:39,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:18:39,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:18:39,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:18:40,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:18:40,072.072 INFO    ] time= 22/06/2026 21:18:40
[2026-06-22 21:18:40,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:18:40,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:18:40,238.238 INFO    ] No existing commands found in stream
[2026-06-22 21:18:45,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:18:45,271.271 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-22 21:18:49,009.009 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:18:49,010.010 INFO    ] Checking for system updates...
[2026-06-22 21:18:49,031.031 INFO    ] 200
[2026-06-22 21:18:49,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:18:49,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:18:49,090.090 INFO    ] No update needed
[2026-06-22 21:18:49,093.093 INFO    ] Checking for camera pi updates...
[2026-06-22 21:18:49,128.128 INFO    ] 200
[2026-06-22 21:18:49,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:18:49,173.173 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:18:49,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:18:49,234.234 INFO    ] No camera update needed
[2026-06-22 21:18:49,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:18:49,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:18:49,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:18:49,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:18:51,292.292 INFO    ] ================================================
[2026-06-22 21:18:51,307.307 INFO    ] Launching Daemon at Mon Jun 22 21:18:51 IST 2026
[2026-06-22 21:18:51,318.318 INFO    ] ================================================
[2026-06-22 21:18:51,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:18:51
[2026-06-22 21:18:52,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:18:52,830.830 INFO    ] Initializing speech engine...
[2026-06-22 21:18:52,838.838 INFO    ] 2026-06-22 21:18:52
[2026-06-22 21:18:53,117.117 INFO    ] 2026-06-22 21:18:53
[2026-06-22 21:18:53,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:18:55,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:18:55,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:18:55,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:18:55,703.703 INFO    ] time= 22/06/2026 21:18:55
[2026-06-22 21:18:55,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:18:55,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:18:55,843.843 INFO    ] No existing commands found in stream
[2026-06-22 21:19:00,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:19:00,865.865 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-22 21:19:03,400.400 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:19:03,402.402 INFO    ] Checking for system updates...
[2026-06-22 21:19:03,439.439 INFO    ] 200
[2026-06-22 21:19:03,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:19:03,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:19:03,497.497 INFO    ] No update needed
[2026-06-22 21:19:03,500.500 INFO    ] Checking for camera pi updates...
[2026-06-22 21:19:03,535.535 INFO    ] 200
[2026-06-22 21:19:03,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:19:03,578.578 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:19:03,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:19:03,687.687 INFO    ] No camera update needed
[2026-06-22 21:19:03,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:19:03,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:19:03,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:19:03,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:19:05,745.745 INFO    ] ================================================
[2026-06-22 21:19:05,759.759 INFO    ] Launching Daemon at Mon Jun 22 21:19:05 IST 2026
[2026-06-22 21:19:05,771.771 INFO    ] ================================================
[2026-06-22 21:19:06,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:19:06
[2026-06-22 21:19:07,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:19:07,317.317 INFO    ] Initializing speech engine...
[2026-06-22 21:19:07,331.331 INFO    ] 2026-06-22 21:19:07
[2026-06-22 21:19:07,588.588 INFO    ] 2026-06-22 21:19:07
[2026-06-22 21:19:07,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:19:07,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:19:07,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:19:08,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:19:08,040.040 INFO    ] time= 22/06/2026 21:19:08
[2026-06-22 21:19:08,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:19:08,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:19:08,252.252 INFO    ] No existing commands found in stream
[2026-06-22 21:19:13,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:19:13,277.277 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-22 21:19:13,885.885 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:19:13,888.888 INFO    ] Checking for system updates...
[2026-06-22 21:19:13,924.924 INFO    ] 200
[2026-06-22 21:19:13,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:19:13,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:19:13,987.987 INFO    ] No update needed
[2026-06-22 21:19:13,989.989 INFO    ] Checking for camera pi updates...
[2026-06-22 21:19:14,023.023 INFO    ] 200
[2026-06-22 21:19:14,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:19:14,067.067 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:19:14,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:19:14,174.174 INFO    ] No camera update needed
[2026-06-22 21:19:14,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:19:14,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:19:14,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:19:14,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:19:16,230.230 INFO    ] ================================================
[2026-06-22 21:19:16,245.245 INFO    ] Launching Daemon at Mon Jun 22 21:19:16 IST 2026
[2026-06-22 21:19:16,256.256 INFO    ] ================================================
[2026-06-22 21:19:16,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:19:16
[2026-06-22 21:19:17,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:19:17,712.712 INFO    ] Initializing speech engine...
[2026-06-22 21:19:17,720.720 INFO    ] 2026-06-22 21:19:17
[2026-06-22 21:19:18,004.004 INFO    ] 2026-06-22 21:19:17
[2026-06-22 21:19:18,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:19:18,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:19:18,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:19:18,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:19:18,497.497 INFO    ] time= 22/06/2026 21:19:18
[2026-06-22 21:19:18,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:19:18,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:19:18,687.687 INFO    ] No existing commands found in stream
[2026-06-22 21:19:23,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:19:23,717.717 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-22 21:19:29,001.001 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:19:29,003.003 INFO    ] Checking for system updates...
[2026-06-22 21:19:29,041.041 INFO    ] 200
[2026-06-22 21:19:29,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:19:29,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:19:29,099.099 INFO    ] No update needed
[2026-06-22 21:19:29,102.102 INFO    ] Checking for camera pi updates...
[2026-06-22 21:19:29,139.139 INFO    ] 200
[2026-06-22 21:19:29,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:19:29,190.190 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:19:29,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:19:29,302.302 INFO    ] No camera update needed
[2026-06-22 21:19:29,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:19:29,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:19:29,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:19:29,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:19:31,360.360 INFO    ] ================================================
[2026-06-22 21:19:31,375.375 INFO    ] Launching Daemon at Mon Jun 22 21:19:31 IST 2026
[2026-06-22 21:19:31,385.385 INFO    ] ================================================
[2026-06-22 21:19:31,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:19:31
[2026-06-22 21:19:32,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:19:32,895.895 INFO    ] Initializing speech engine...
[2026-06-22 21:19:32,904.904 INFO    ] 2026-06-22 21:19:32
[2026-06-22 21:19:33,156.156 INFO    ] 2026-06-22 21:19:33
[2026-06-22 21:19:33,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:19:33,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:19:33,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:19:33,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:19:33,716.716 INFO    ] time= 22/06/2026 21:19:33
[2026-06-22 21:19:33,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:19:33,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:19:33,866.866 INFO    ] No existing commands found in stream
[2026-06-22 21:19:38,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:19:38,885.885 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-22 21:19:42,205.205 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:19:42,207.207 INFO    ] Checking for system updates...
[2026-06-22 21:19:42,243.243 INFO    ] 200
[2026-06-22 21:19:42,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:19:42,300.300 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:19:42,302.302 INFO    ] No update needed
[2026-06-22 21:19:42,305.305 INFO    ] Checking for camera pi updates...
[2026-06-22 21:19:42,338.338 INFO    ] 200
[2026-06-22 21:19:42,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:19:42,387.387 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:19:42,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:19:42,471.471 INFO    ] No camera update needed
[2026-06-22 21:19:42,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:19:42,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:19:42,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:19:42,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:19:44,533.533 INFO    ] ================================================
[2026-06-22 21:19:44,548.548 INFO    ] Launching Daemon at Mon Jun 22 21:19:44 IST 2026
[2026-06-22 21:19:44,559.559 INFO    ] ================================================
[2026-06-22 21:19:45,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:19:45
[2026-06-22 21:19:45,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:19:45,982.982 INFO    ] Initializing speech engine...
[2026-06-22 21:19:45,995.995 INFO    ] 2026-06-22 21:19:45
[2026-06-22 21:19:46,245.245 INFO    ] 2026-06-22 21:19:46
[2026-06-22 21:19:46,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:19:46,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:19:46,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:19:46,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:19:46,728.728 INFO    ] time= 22/06/2026 21:19:46
[2026-06-22 21:19:46,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:19:46,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:19:46,991.991 INFO    ] No existing commands found in stream
[2026-06-22 21:19:52,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:19:52,026.026 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-22 21:19:57,181.181 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:19:57,184.184 INFO    ] Checking for system updates...
[2026-06-22 21:19:57,221.221 INFO    ] 200
[2026-06-22 21:19:57,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:19:57,278.278 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:19:57,281.281 INFO    ] No update needed
[2026-06-22 21:19:57,283.283 INFO    ] Checking for camera pi updates...
[2026-06-22 21:19:57,319.319 INFO    ] 200
[2026-06-22 21:19:57,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:19:57,363.363 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:19:57,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:19:57,449.449 INFO    ] No camera update needed
[2026-06-22 21:19:57,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:19:57,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:19:57,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:19:57,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:19:59,504.504 INFO    ] ================================================
[2026-06-22 21:19:59,523.523 INFO    ] Launching Daemon at Mon Jun 22 21:19:59 IST 2026
[2026-06-22 21:19:59,535.535 INFO    ] ================================================
[2026-06-22 21:20:00,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:20:00
[2026-06-22 21:20:00,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:20:00,924.924 INFO    ] Initializing speech engine...
[2026-06-22 21:20:00,934.934 INFO    ] 2026-06-22 21:20:00
[2026-06-22 21:20:01,181.181 INFO    ] 2026-06-22 21:20:01
[2026-06-22 21:20:01,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:20:01,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:20:01,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:20:01,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:20:01,740.740 INFO    ] time= 22/06/2026 21:20:01
[2026-06-22 21:20:01,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:20:01,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:20:01,825.825 INFO    ] No existing commands found in stream
[2026-06-22 21:20:06,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:20:06,838.838 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-22 21:20:08,634.634 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:20:08,637.637 INFO    ] Checking for system updates...
[2026-06-22 21:20:08,672.672 INFO    ] 200
[2026-06-22 21:20:08,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:20:08,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:20:08,730.730 INFO    ] No update needed
[2026-06-22 21:20:08,732.732 INFO    ] Checking for camera pi updates...
[2026-06-22 21:20:08,769.769 INFO    ] 200
[2026-06-22 21:20:08,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:20:08,813.813 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:20:08,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:20:08,909.909 INFO    ] No camera update needed
[2026-06-22 21:20:08,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:20:08,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:20:08,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:20:08,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:20:10,966.966 INFO    ] ================================================
[2026-06-22 21:20:10,981.981 INFO    ] Launching Daemon at Mon Jun 22 21:20:10 IST 2026
[2026-06-22 21:20:10,992.992 INFO    ] ================================================
[2026-06-22 21:20:11,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:20:11
[2026-06-22 21:20:12,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:20:12,440.440 INFO    ] Initializing speech engine...
[2026-06-22 21:20:12,446.446 INFO    ] 2026-06-22 21:20:12
[2026-06-22 21:20:12,709.709 INFO    ] 2026-06-22 21:20:12
[2026-06-22 21:20:12,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:20:12,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:20:13,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:20:13,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:20:13,200.200 INFO    ] time= 22/06/2026 21:20:13
[2026-06-22 21:20:13,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:20:13,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:20:13,368.368 INFO    ] No existing commands found in stream
[2026-06-22 21:20:18,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:20:18,401.401 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-22 21:20:20,387.387 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:20:20,389.389 INFO    ] Checking for system updates...
[2026-06-22 21:20:20,429.429 INFO    ] 200
[2026-06-22 21:20:20,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:20:20,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:20:20,487.487 INFO    ] No update needed
[2026-06-22 21:20:20,489.489 INFO    ] Checking for camera pi updates...
[2026-06-22 21:20:20,523.523 INFO    ] 200
[2026-06-22 21:20:20,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:20:20,567.567 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:20:20,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:20:20,673.673 INFO    ] No camera update needed
[2026-06-22 21:20:20,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:20:20,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:20:20,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:20:20,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:20:22,728.728 INFO    ] ================================================
[2026-06-22 21:20:22,744.744 INFO    ] Launching Daemon at Mon Jun 22 21:20:22 IST 2026
[2026-06-22 21:20:22,756.756 INFO    ] ================================================
[2026-06-22 21:20:23,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:20:23
[2026-06-22 21:20:23,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:20:24,197.197 INFO    ] Initializing speech engine...
[2026-06-22 21:20:24,207.207 INFO    ] 2026-06-22 21:20:24
[2026-06-22 21:20:24,452.452 INFO    ] 2026-06-22 21:20:24
[2026-06-22 21:20:24,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:20:28,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:20:28,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:20:29,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:20:29,297.297 INFO    ] time= 22/06/2026 21:20:29
[2026-06-22 21:20:29,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:20:29,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:20:29,400.400 INFO    ] No existing commands found in stream
[2026-06-22 21:20:34,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:20:34,412.412 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-22 21:20:35,906.906 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:20:35,908.908 INFO    ] Checking for system updates...
[2026-06-22 21:20:35,944.944 INFO    ] 200
[2026-06-22 21:20:35,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:20:36,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:20:36,004.004 INFO    ] No update needed
[2026-06-22 21:20:36,006.006 INFO    ] Checking for camera pi updates...
[2026-06-22 21:20:36,039.039 INFO    ] 200
[2026-06-22 21:20:36,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:20:36,088.088 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:20:36,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:20:36,187.187 INFO    ] No camera update needed
[2026-06-22 21:20:36,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:20:36,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:20:36,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:20:36,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:20:38,243.243 INFO    ] ================================================
[2026-06-22 21:20:38,259.259 INFO    ] Launching Daemon at Mon Jun 22 21:20:38 IST 2026
[2026-06-22 21:20:38,270.270 INFO    ] ================================================
[2026-06-22 21:20:38,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:20:38
[2026-06-22 21:20:39,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:20:39,635.635 INFO    ] Initializing speech engine...
[2026-06-22 21:20:39,642.642 INFO    ] 2026-06-22 21:20:39
[2026-06-22 21:20:39,889.889 INFO    ] 2026-06-22 21:20:39
[2026-06-22 21:20:39,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:20:40,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:20:40,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:20:40,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:20:40,369.369 INFO    ] time= 22/06/2026 21:20:40
[2026-06-22 21:20:40,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:20:40,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:20:40,578.578 INFO    ] No existing commands found in stream
[2026-06-22 21:20:45,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:20:45,606.606 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-22 21:20:49,891.891 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:20:49,894.894 INFO    ] Checking for system updates...
[2026-06-22 21:20:49,931.931 INFO    ] 200
[2026-06-22 21:20:49,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:20:49,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:20:49,988.988 INFO    ] No update needed
[2026-06-22 21:20:49,990.990 INFO    ] Checking for camera pi updates...
[2026-06-22 21:20:50,029.029 INFO    ] 200
[2026-06-22 21:20:50,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:20:50,077.077 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:20:50,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:20:50,161.161 INFO    ] No camera update needed
[2026-06-22 21:20:50,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:20:50,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:20:50,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:20:50,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:20:52,217.217 INFO    ] ================================================
[2026-06-22 21:20:52,232.232 INFO    ] Launching Daemon at Mon Jun 22 21:20:52 IST 2026
[2026-06-22 21:20:52,244.244 INFO    ] ================================================
[2026-06-22 21:20:52,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:20:52
[2026-06-22 21:20:53,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:20:53,718.718 INFO    ] Initializing speech engine...
[2026-06-22 21:20:53,728.728 INFO    ] 2026-06-22 21:20:53
[2026-06-22 21:20:53,991.991 INFO    ] 2026-06-22 21:20:53
[2026-06-22 21:20:54,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:20:54,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:20:54,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:20:54,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:20:54,450.450 INFO    ] time= 22/06/2026 21:20:54
[2026-06-22 21:20:54,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:20:54,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:20:54,662.662 INFO    ] No existing commands found in stream
[2026-06-22 21:20:59,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:20:59,688.688 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-22 21:21:00,896.896 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:21:00,899.899 INFO    ] Checking for system updates...
[2026-06-22 21:21:00,939.939 INFO    ] 200
[2026-06-22 21:21:00,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:21:01,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:21:01,005.005 INFO    ] No update needed
[2026-06-22 21:21:01,008.008 INFO    ] Checking for camera pi updates...
[2026-06-22 21:21:01,041.041 INFO    ] 200
[2026-06-22 21:21:01,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:21:01,085.085 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:21:01,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:21:01,170.170 INFO    ] No camera update needed
[2026-06-22 21:21:01,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:21:01,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:21:01,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:21:01,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:21:03,240.240 INFO    ] ================================================
[2026-06-22 21:21:03,266.266 INFO    ] Launching Daemon at Mon Jun 22 21:21:03 IST 2026
[2026-06-22 21:21:03,277.277 INFO    ] ================================================
[2026-06-22 21:21:03,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:21:03
[2026-06-22 21:21:04,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:21:04,782.782 INFO    ] Initializing speech engine...
[2026-06-22 21:21:04,791.791 INFO    ] 2026-06-22 21:21:04
[2026-06-22 21:21:05,041.041 INFO    ] 2026-06-22 21:21:05
[2026-06-22 21:21:05,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:21:05,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:21:05,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:21:05,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:21:06,002.002 INFO    ] time= 22/06/2026 21:21:05
[2026-06-22 21:21:06,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:21:06,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:21:06,174.174 INFO    ] No existing commands found in stream
[2026-06-22 21:21:11,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:21:11,201.201 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-22 21:21:12,526.526 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:21:12,528.528 INFO    ] Checking for system updates...
[2026-06-22 21:21:12,549.549 INFO    ] 200
[2026-06-22 21:21:12,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:21:12,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:21:12,581.581 INFO    ] No update needed
[2026-06-22 21:21:12,583.583 INFO    ] Checking for camera pi updates...
[2026-06-22 21:21:12,606.606 INFO    ] 200
[2026-06-22 21:21:12,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:21:12,654.654 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:21:12,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:21:12,727.727 INFO    ] No camera update needed
[2026-06-22 21:21:12,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:21:12,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:21:12,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:21:12,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:21:14,784.784 INFO    ] ================================================
[2026-06-22 21:21:14,799.799 INFO    ] Launching Daemon at Mon Jun 22 21:21:14 IST 2026
[2026-06-22 21:21:14,810.810 INFO    ] ================================================
[2026-06-22 21:21:15,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:21:15
[2026-06-22 21:21:15,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:21:16,222.222 INFO    ] Initializing speech engine...
[2026-06-22 21:21:16,228.228 INFO    ] 2026-06-22 21:21:16
[2026-06-22 21:21:16,530.530 INFO    ] 2026-06-22 21:21:16
[2026-06-22 21:21:16,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:21:16,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:21:16,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:21:16,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:21:16,890.890 INFO    ] time= 22/06/2026 21:21:16
[2026-06-22 21:21:16,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:21:16,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:21:17,030.030 INFO    ] No existing commands found in stream
[2026-06-22 21:21:22,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:21:22,057.057 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-22 21:21:23,761.761 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:21:23,764.764 INFO    ] Checking for system updates...
[2026-06-22 21:21:23,811.811 INFO    ] 200
[2026-06-22 21:21:23,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:21:24,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:21:24,045.045 INFO    ] No update needed
[2026-06-22 21:21:24,048.048 INFO    ] Checking for camera pi updates...
[2026-06-22 21:21:24,089.089 INFO    ] 200
[2026-06-22 21:21:24,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:21:24,141.141 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:21:24,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:21:24,230.230 INFO    ] No camera update needed
[2026-06-22 21:21:24,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:21:24,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:21:24,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:21:24,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:21:26,287.287 INFO    ] ================================================
[2026-06-22 21:21:26,303.303 INFO    ] Launching Daemon at Mon Jun 22 21:21:26 IST 2026
[2026-06-22 21:21:26,314.314 INFO    ] ================================================
[2026-06-22 21:21:26,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:21:26
[2026-06-22 21:21:27,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:21:27,875.875 INFO    ] Initializing speech engine...
[2026-06-22 21:21:27,884.884 INFO    ] 2026-06-22 21:21:27
[2026-06-22 21:21:28,196.196 INFO    ] 2026-06-22 21:21:28
[2026-06-22 21:21:28,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:21:30,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:21:30,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:21:31,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:21:31,525.525 INFO    ] time= 22/06/2026 21:21:31
[2026-06-22 21:21:31,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:21:31,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:21:31,593.593 INFO    ] No existing commands found in stream
[2026-06-22 21:21:36,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:21:36,607.607 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-22 21:21:40,080.080 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:21:40,083.083 INFO    ] Checking for system updates...
[2026-06-22 21:21:40,122.122 INFO    ] 200
[2026-06-22 21:21:40,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:21:40,188.188 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:21:40,191.191 INFO    ] No update needed
[2026-06-22 21:21:40,194.194 INFO    ] Checking for camera pi updates...
[2026-06-22 21:21:40,231.231 INFO    ] 200
[2026-06-22 21:21:40,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:21:40,276.276 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:21:40,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:21:40,385.385 INFO    ] No camera update needed
[2026-06-22 21:21:40,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:21:40,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:21:40,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:21:40,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:21:42,447.447 INFO    ] ================================================
[2026-06-22 21:21:42,462.462 INFO    ] Launching Daemon at Mon Jun 22 21:21:42 IST 2026
[2026-06-22 21:21:42,473.473 INFO    ] ================================================
[2026-06-22 21:21:43,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:21:43
[2026-06-22 21:21:43,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:21:43,978.978 INFO    ] Initializing speech engine...
[2026-06-22 21:21:43,986.986 INFO    ] 2026-06-22 21:21:43
[2026-06-22 21:21:44,280.280 INFO    ] 2026-06-22 21:21:44
[2026-06-22 21:21:44,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:21:44,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:21:44,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:21:44,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:21:44,819.819 INFO    ] time= 22/06/2026 21:21:44
[2026-06-22 21:21:44,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:21:44,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:21:44,979.979 INFO    ] No existing commands found in stream
[2026-06-22 21:21:50,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:21:50,012.012 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-22 21:21:54,541.541 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:21:54,545.545 INFO    ] Checking for system updates...
[2026-06-22 21:21:54,592.592 INFO    ] 200
[2026-06-22 21:21:54,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:21:54,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:21:54,667.667 INFO    ] No update needed
[2026-06-22 21:21:54,670.670 INFO    ] Checking for camera pi updates...
[2026-06-22 21:21:54,712.712 INFO    ] 200
[2026-06-22 21:21:54,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:21:54,766.766 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:21:54,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:21:54,863.863 INFO    ] No camera update needed
[2026-06-22 21:21:54,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:21:54,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:21:54,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:21:54,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:21:56,925.925 INFO    ] ================================================
[2026-06-22 21:21:56,941.941 INFO    ] Launching Daemon at Mon Jun 22 21:21:56 IST 2026
[2026-06-22 21:21:56,951.951 INFO    ] ================================================
[2026-06-22 21:21:57,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:21:57
[2026-06-22 21:21:58,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:21:58,361.361 INFO    ] Initializing speech engine...
[2026-06-22 21:21:58,369.369 INFO    ] 2026-06-22 21:21:58
[2026-06-22 21:21:58,671.671 INFO    ] 2026-06-22 21:21:58
[2026-06-22 21:21:58,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:22:01,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:22:01,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:22:02,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:22:02,854.854 INFO    ] time= 22/06/2026 21:22:02
[2026-06-22 21:22:02,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:22:02,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:22:02,940.940 INFO    ] No existing commands found in stream
[2026-06-22 21:22:07,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:22:07,952.952 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-22 21:22:09,531.531 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:22:09,534.534 INFO    ] Checking for system updates...
[2026-06-22 21:22:09,569.569 INFO    ] 200
[2026-06-22 21:22:09,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:22:09,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:22:09,628.628 INFO    ] No update needed
[2026-06-22 21:22:09,631.631 INFO    ] Checking for camera pi updates...
[2026-06-22 21:22:09,669.669 INFO    ] 200
[2026-06-22 21:22:09,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:22:09,712.712 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:22:09,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:22:09,912.912 INFO    ] No camera update needed
[2026-06-22 21:22:09,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:22:09,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:22:09,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:22:09,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:22:11,970.970 INFO    ] ================================================
[2026-06-22 21:22:11,985.985 INFO    ] Launching Daemon at Mon Jun 22 21:22:11 IST 2026
[2026-06-22 21:22:12,997.997 INFO    ] ================================================
[2026-06-22 21:22:12,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:22:12
[2026-06-22 21:22:13,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:22:13,428.428 INFO    ] Initializing speech engine...
[2026-06-22 21:22:13,449.449 INFO    ] 2026-06-22 21:22:13
[2026-06-22 21:22:13,728.728 INFO    ] 2026-06-22 21:22:13
[2026-06-22 21:22:13,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:22:13,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:22:13,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:22:14,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:22:14,153.153 INFO    ] time= 22/06/2026 21:22:14
[2026-06-22 21:22:14,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:22:14,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:22:14,241.241 INFO    ] No existing commands found in stream
[2026-06-22 21:22:19,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:22:19,279.279 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-22 21:22:22,044.044 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:22:22,046.046 INFO    ] Checking for system updates...
[2026-06-22 21:22:22,083.083 INFO    ] 200
[2026-06-22 21:22:22,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:22:22,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:22:22,161.161 INFO    ] No update needed
[2026-06-22 21:22:22,164.164 INFO    ] Checking for camera pi updates...
[2026-06-22 21:22:22,203.203 INFO    ] 200
[2026-06-22 21:22:22,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:22:22,248.248 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:22:22,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:22:22,308.308 INFO    ] No camera update needed
[2026-06-22 21:22:22,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:22:22,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:22:22,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:22:22,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:22:24,365.365 INFO    ] ================================================
[2026-06-22 21:22:24,380.380 INFO    ] Launching Daemon at Mon Jun 22 21:22:24 IST 2026
[2026-06-22 21:22:24,391.391 INFO    ] ================================================
[2026-06-22 21:22:24,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:22:24
[2026-06-22 21:22:25,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:22:25,847.847 INFO    ] Initializing speech engine...
[2026-06-22 21:22:25,854.854 INFO    ] 2026-06-22 21:22:25
[2026-06-22 21:22:26,157.157 INFO    ] 2026-06-22 21:22:26
[2026-06-22 21:22:26,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:22:26,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:22:26,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:22:26,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:22:26,582.582 INFO    ] time= 22/06/2026 21:22:26
[2026-06-22 21:22:26,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:22:26,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:22:26,729.729 INFO    ] No existing commands found in stream
[2026-06-22 21:22:31,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:22:31,757.757 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-22 21:22:34,429.429 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:22:34,432.432 INFO    ] Checking for system updates...
[2026-06-22 21:22:34,470.470 INFO    ] 200
[2026-06-22 21:22:34,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:22:34,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:22:34,537.537 INFO    ] No update needed
[2026-06-22 21:22:34,540.540 INFO    ] Checking for camera pi updates...
[2026-06-22 21:22:34,576.576 INFO    ] 200
[2026-06-22 21:22:34,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:22:34,622.622 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:22:34,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:22:34,679.679 INFO    ] No camera update needed
[2026-06-22 21:22:34,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:22:34,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:22:34,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:22:34,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:22:36,738.738 INFO    ] ================================================
[2026-06-22 21:22:36,753.753 INFO    ] Launching Daemon at Mon Jun 22 21:22:36 IST 2026
[2026-06-22 21:22:36,764.764 INFO    ] ================================================
[2026-06-22 21:22:37,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:22:37
[2026-06-22 21:22:37,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:22:38,077.077 INFO    ] Initializing speech engine...
[2026-06-22 21:22:38,092.092 INFO    ] 2026-06-22 21:22:38
[2026-06-22 21:22:38,370.370 INFO    ] 2026-06-22 21:22:38
[2026-06-22 21:22:38,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:22:38,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:22:38,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:22:38,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:22:38,817.817 INFO    ] time= 22/06/2026 21:22:38
[2026-06-22 21:22:38,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:22:38,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:22:39,072.072 INFO    ] No existing commands found in stream
[2026-06-22 21:22:44,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:22:44,102.102 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-22 21:22:45,699.699 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:22:45,701.701 INFO    ] Checking for system updates...
[2026-06-22 21:22:45,738.738 INFO    ] 200
[2026-06-22 21:22:45,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:22:45,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:22:45,803.803 INFO    ] No update needed
[2026-06-22 21:22:45,805.805 INFO    ] Checking for camera pi updates...
[2026-06-22 21:22:45,839.839 INFO    ] 200
[2026-06-22 21:22:45,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:22:45,883.883 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:22:45,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:22:45,967.967 INFO    ] No camera update needed
[2026-06-22 21:22:45,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:22:45,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:22:45,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:22:45,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:22:48,022.022 INFO    ] ================================================
[2026-06-22 21:22:48,037.037 INFO    ] Launching Daemon at Mon Jun 22 21:22:48 IST 2026
[2026-06-22 21:22:48,048.048 INFO    ] ================================================
[2026-06-22 21:22:48,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:22:48
[2026-06-22 21:22:49,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:22:49,463.463 INFO    ] Initializing speech engine...
[2026-06-22 21:22:49,472.472 INFO    ] 2026-06-22 21:22:49
[2026-06-22 21:22:49,769.769 INFO    ] 2026-06-22 21:22:49
[2026-06-22 21:22:49,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:22:49,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:22:50,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:22:50,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:22:50,158.158 INFO    ] time= 22/06/2026 21:22:50
[2026-06-22 21:22:50,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:22:50,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:22:50,284.284 INFO    ] No existing commands found in stream
[2026-06-22 21:22:55,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:22:55,300.300 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-22 21:22:59,686.686 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:22:59,689.689 INFO    ] Checking for system updates...
[2026-06-22 21:22:59,729.729 INFO    ] 200
[2026-06-22 21:22:59,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:22:59,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:22:59,786.786 INFO    ] No update needed
[2026-06-22 21:22:59,789.789 INFO    ] Checking for camera pi updates...
[2026-06-22 21:22:59,823.823 INFO    ] 200
[2026-06-22 21:22:59,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:22:59,867.867 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:22:59,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:22:59,956.956 INFO    ] No camera update needed
[2026-06-22 21:22:59,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:22:59,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:22:59,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:22:59,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:23:02,023.023 INFO    ] ================================================
[2026-06-22 21:23:02,070.070 INFO    ] Launching Daemon at Mon Jun 22 21:23:02 IST 2026
[2026-06-22 21:23:02,137.137 INFO    ] ================================================
[2026-06-22 21:23:02,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:23:02
[2026-06-22 21:23:03,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:23:03,805.805 INFO    ] Initializing speech engine...
[2026-06-22 21:23:03,813.813 INFO    ] 2026-06-22 21:23:03
[2026-06-22 21:23:04,089.089 INFO    ] 2026-06-22 21:23:04
[2026-06-22 21:23:04,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:23:06,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:23:06,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:23:07,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:23:07,092.092 INFO    ] time= 22/06/2026 21:23:07
[2026-06-22 21:23:07,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:23:07,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:23:07,162.162 INFO    ] No existing commands found in stream
[2026-06-22 21:23:12,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:23:12,175.175 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-22 21:23:15,101.101 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:23:15,102.102 INFO    ] Checking for system updates...
[2026-06-22 21:23:15,124.124 INFO    ] 200
[2026-06-22 21:23:15,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:23:15,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:23:15,158.158 INFO    ] No update needed
[2026-06-22 21:23:15,159.159 INFO    ] Checking for camera pi updates...
[2026-06-22 21:23:15,179.179 INFO    ] 200
[2026-06-22 21:23:15,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:23:15,220.220 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:23:15,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:23:15,305.305 INFO    ] No camera update needed
[2026-06-22 21:23:15,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:23:15,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:23:15,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:23:15,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:23:17,361.361 INFO    ] ================================================
[2026-06-22 21:23:17,376.376 INFO    ] Launching Daemon at Mon Jun 22 21:23:17 IST 2026
[2026-06-22 21:23:17,387.387 INFO    ] ================================================
[2026-06-22 21:23:17,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:23:17
[2026-06-22 21:23:18,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:23:18,839.839 INFO    ] Initializing speech engine...
[2026-06-22 21:23:18,851.851 INFO    ] 2026-06-22 21:23:18
[2026-06-22 21:23:19,116.116 INFO    ] 2026-06-22 21:23:19
[2026-06-22 21:23:19,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:23:19,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:23:19,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:23:19,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:23:19,591.591 INFO    ] time= 22/06/2026 21:23:19
[2026-06-22 21:23:19,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:23:19,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:23:19,797.797 INFO    ] No existing commands found in stream
[2026-06-22 21:23:24,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:23:24,836.836 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-22 21:23:28,563.563 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:23:28,566.566 INFO    ] Checking for system updates...
[2026-06-22 21:23:28,607.607 INFO    ] 200
[2026-06-22 21:23:28,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:23:28,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:23:28,669.669 INFO    ] No update needed
[2026-06-22 21:23:28,671.671 INFO    ] Checking for camera pi updates...
[2026-06-22 21:23:28,706.706 INFO    ] 200
[2026-06-22 21:23:28,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:23:28,748.748 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:23:28,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:23:28,850.850 INFO    ] No camera update needed
[2026-06-22 21:23:28,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:23:28,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:23:28,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:23:28,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:23:30,905.905 INFO    ] ================================================
[2026-06-22 21:23:30,921.921 INFO    ] Launching Daemon at Mon Jun 22 21:23:30 IST 2026
[2026-06-22 21:23:30,931.931 INFO    ] ================================================
[2026-06-22 21:23:31,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:23:31
[2026-06-22 21:23:32,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:23:32,396.396 INFO    ] Initializing speech engine...
[2026-06-22 21:23:32,415.415 INFO    ] 2026-06-22 21:23:32
[2026-06-22 21:23:32,695.695 INFO    ] 2026-06-22 21:23:32
[2026-06-22 21:23:32,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:23:36,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:23:36,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:23:37,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:23:37,415.415 INFO    ] time= 22/06/2026 21:23:37
[2026-06-22 21:23:37,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:23:37,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:23:37,490.490 INFO    ] No existing commands found in stream
[2026-06-22 21:23:42,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:23:42,502.502 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-22 21:23:45,261.261 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:23:45,263.263 INFO    ] Checking for system updates...
[2026-06-22 21:23:45,283.283 INFO    ] 200
[2026-06-22 21:23:45,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:23:45,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:23:45,317.317 INFO    ] No update needed
[2026-06-22 21:23:45,318.318 INFO    ] Checking for camera pi updates...
[2026-06-22 21:23:45,337.337 INFO    ] 200
[2026-06-22 21:23:45,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:23:45,371.371 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:23:45,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:23:45,459.459 INFO    ] No camera update needed
[2026-06-22 21:23:45,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:23:45,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:23:45,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:23:45,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:23:47,517.517 INFO    ] ================================================
[2026-06-22 21:23:47,533.533 INFO    ] Launching Daemon at Mon Jun 22 21:23:47 IST 2026
[2026-06-22 21:23:47,543.543 INFO    ] ================================================
[2026-06-22 21:23:48,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:23:48
[2026-06-22 21:23:48,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:23:48,967.967 INFO    ] Initializing speech engine...
[2026-06-22 21:23:48,974.974 INFO    ] 2026-06-22 21:23:48
[2026-06-22 21:23:49,253.253 INFO    ] 2026-06-22 21:23:49
[2026-06-22 21:23:49,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:23:49,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:23:49,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:23:49,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:23:49,713.713 INFO    ] time= 22/06/2026 21:23:49
[2026-06-22 21:23:49,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:23:49,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:23:49,936.936 INFO    ] No existing commands found in stream
[2026-06-22 21:23:54,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:23:54,967.967 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-22 21:23:58,487.487 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:23:58,489.489 INFO    ] Checking for system updates...
[2026-06-22 21:23:58,510.510 INFO    ] 200
[2026-06-22 21:23:58,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:23:58,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:23:58,544.544 INFO    ] No update needed
[2026-06-22 21:23:58,546.546 INFO    ] Checking for camera pi updates...
[2026-06-22 21:23:58,566.566 INFO    ] 200
[2026-06-22 21:23:58,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:23:58,612.612 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:23:58,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:23:58,701.701 INFO    ] No camera update needed
[2026-06-22 21:23:58,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:23:58,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:23:58,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:23:58,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:24:00,761.761 INFO    ] ================================================
[2026-06-22 21:24:00,777.777 INFO    ] Launching Daemon at Mon Jun 22 21:24:00 IST 2026
[2026-06-22 21:24:00,788.788 INFO    ] ================================================
[2026-06-22 21:24:01,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:24:01
[2026-06-22 21:24:02,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:24:02,413.413 INFO    ] Initializing speech engine...
[2026-06-22 21:24:02,423.423 INFO    ] 2026-06-22 21:24:02
[2026-06-22 21:24:02,762.762 INFO    ] 2026-06-22 21:24:02
[2026-06-22 21:24:02,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:24:02,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:24:03,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:24:04,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:24:04,192.192 INFO    ] time= 22/06/2026 21:24:04
[2026-06-22 21:24:04,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:24:04,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:24:04,273.273 INFO    ] No existing commands found in stream
[2026-06-22 21:24:09,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:24:09,288.288 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-22 21:24:11,017.017 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:24:11,019.019 INFO    ] Checking for system updates...
[2026-06-22 21:24:11,056.056 INFO    ] 200
[2026-06-22 21:24:11,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:24:11,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:24:11,118.118 INFO    ] No update needed
[2026-06-22 21:24:11,120.120 INFO    ] Checking for camera pi updates...
[2026-06-22 21:24:11,155.155 INFO    ] 200
[2026-06-22 21:24:11,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:24:11,198.198 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:24:11,283.283 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:24:11,286.286 INFO    ] No camera update needed
[2026-06-22 21:24:11,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:24:11,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:24:11,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:24:11,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:24:13,344.344 INFO    ] ================================================
[2026-06-22 21:24:13,360.360 INFO    ] Launching Daemon at Mon Jun 22 21:24:13 IST 2026
[2026-06-22 21:24:13,371.371 INFO    ] ================================================
[2026-06-22 21:24:13,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:24:13
[2026-06-22 21:24:14,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:24:14,685.685 INFO    ] Initializing speech engine...
[2026-06-22 21:24:14,693.693 INFO    ] 2026-06-22 21:24:14
[2026-06-22 21:24:14,965.965 INFO    ] 2026-06-22 21:24:14
[2026-06-22 21:24:15,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:24:15,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:24:15,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:24:15,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:24:15,398.398 INFO    ] time= 22/06/2026 21:24:15
[2026-06-22 21:24:15,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:24:15,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:24:15,622.622 INFO    ] No existing commands found in stream
[2026-06-22 21:24:20,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:24:20,656.656 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-22 21:24:21,343.343 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:24:21,346.346 INFO    ] Checking for system updates...
[2026-06-22 21:24:21,382.382 INFO    ] 200
[2026-06-22 21:24:21,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:24:21,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:24:21,441.441 INFO    ] No update needed
[2026-06-22 21:24:21,443.443 INFO    ] Checking for camera pi updates...
[2026-06-22 21:24:21,477.477 INFO    ] 200
[2026-06-22 21:24:21,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:24:21,520.520 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:24:21,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:24:21,673.673 INFO    ] No camera update needed
[2026-06-22 21:24:21,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:24:21,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:24:21,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:24:21,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:24:23,733.733 INFO    ] ================================================
[2026-06-22 21:24:23,749.749 INFO    ] Launching Daemon at Mon Jun 22 21:24:23 IST 2026
[2026-06-22 21:24:23,761.761 INFO    ] ================================================
[2026-06-22 21:24:24,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:24:24
[2026-06-22 21:24:24,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:24:25,223.223 INFO    ] Initializing speech engine...
[2026-06-22 21:24:25,228.228 INFO    ] 2026-06-22 21:24:25
[2026-06-22 21:24:25,479.479 INFO    ] 2026-06-22 21:24:25
[2026-06-22 21:24:25,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:24:25,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:24:25,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:24:25,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:24:25,856.856 INFO    ] time= 22/06/2026 21:24:25
[2026-06-22 21:24:25,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:24:25,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:24:26,054.054 INFO    ] No existing commands found in stream
[2026-06-22 21:24:31,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:24:31,069.069 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-22 21:24:33,403.403 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:24:33,406.406 INFO    ] Checking for system updates...
[2026-06-22 21:24:33,443.443 INFO    ] 200
[2026-06-22 21:24:33,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:24:33,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:24:33,514.514 INFO    ] No update needed
[2026-06-22 21:24:33,517.517 INFO    ] Checking for camera pi updates...
[2026-06-22 21:24:33,555.555 INFO    ] 200
[2026-06-22 21:24:33,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:24:33,599.599 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:24:33,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:24:33,685.685 INFO    ] No camera update needed
[2026-06-22 21:24:33,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:24:33,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:24:33,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:24:33,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:24:35,744.744 INFO    ] ================================================
[2026-06-22 21:24:35,759.759 INFO    ] Launching Daemon at Mon Jun 22 21:24:35 IST 2026
[2026-06-22 21:24:35,770.770 INFO    ] ================================================
[2026-06-22 21:24:36,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:24:36
[2026-06-22 21:24:37,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:24:37,394.394 INFO    ] Initializing speech engine...
[2026-06-22 21:24:37,408.408 INFO    ] 2026-06-22 21:24:37
[2026-06-22 21:24:37,724.724 INFO    ] 2026-06-22 21:24:37
[2026-06-22 21:24:37,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:24:39,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:24:39,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:24:40,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:24:40,012.012 INFO    ] time= 22/06/2026 21:24:40
[2026-06-22 21:24:40,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:24:40,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:24:40,192.192 INFO    ] No existing commands found in stream
[2026-06-22 21:24:45,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:24:45,208.208 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-22 21:24:48,872.872 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:24:48,889.889 INFO    ] Checking for system updates...
[2026-06-22 21:24:48,916.916 INFO    ] 200
[2026-06-22 21:24:48,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:24:48,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:24:48,982.982 INFO    ] No update needed
[2026-06-22 21:24:48,985.985 INFO    ] Checking for camera pi updates...
[2026-06-22 21:24:49,019.019 INFO    ] 200
[2026-06-22 21:24:49,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:24:49,063.063 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:24:49,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:24:49,152.152 INFO    ] No camera update needed
[2026-06-22 21:24:49,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:24:49,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:24:49,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:24:49,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:24:51,208.208 INFO    ] ================================================
[2026-06-22 21:24:51,223.223 INFO    ] Launching Daemon at Mon Jun 22 21:24:51 IST 2026
[2026-06-22 21:24:51,235.235 INFO    ] ================================================
[2026-06-22 21:24:51,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:24:51
[2026-06-22 21:24:52,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:24:52,779.779 INFO    ] Initializing speech engine...
[2026-06-22 21:24:52,790.790 INFO    ] 2026-06-22 21:24:52
[2026-06-22 21:24:53,099.099 INFO    ] 2026-06-22 21:24:53
[2026-06-22 21:24:53,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:24:53,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:24:53,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:24:53,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:24:53,611.611 INFO    ] time= 22/06/2026 21:24:53
[2026-06-22 21:24:53,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:24:53,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:24:53,762.762 INFO    ] No existing commands found in stream
[2026-06-22 21:24:58,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:24:58,782.782 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-22 21:25:01,987.987 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:25:01,991.991 INFO    ] Checking for system updates...
[2026-06-22 21:25:02,184.184 INFO    ] 200
[2026-06-22 21:25:02,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:25:02,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:25:02,479.479 INFO    ] No update needed
[2026-06-22 21:25:02,483.483 INFO    ] Checking for camera pi updates...
[2026-06-22 21:25:02,547.547 INFO    ] 200
[2026-06-22 21:25:02,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:25:02,603.603 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:25:02,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:25:02,673.673 INFO    ] No camera update needed
[2026-06-22 21:25:02,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:25:02,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:25:02,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:25:02,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:25:04,734.734 INFO    ] ================================================
[2026-06-22 21:25:04,750.750 INFO    ] Launching Daemon at Mon Jun 22 21:25:04 IST 2026
[2026-06-22 21:25:04,762.762 INFO    ] ================================================
[2026-06-22 21:25:05,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:25:05
[2026-06-22 21:25:05,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:25:06,207.207 INFO    ] Initializing speech engine...
[2026-06-22 21:25:06,216.216 INFO    ] 2026-06-22 21:25:06
[2026-06-22 21:25:06,491.491 INFO    ] 2026-06-22 21:25:06
[2026-06-22 21:25:06,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:25:10,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:25:10,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:25:12,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:25:12,294.294 INFO    ] time= 22/06/2026 21:25:12
[2026-06-22 21:25:12,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:25:12,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:25:12,361.361 INFO    ] No existing commands found in stream
[2026-06-22 21:25:17,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:25:17,373.373 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-22 21:25:19,109.109 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:25:19,113.113 INFO    ] Checking for system updates...
[2026-06-22 21:25:19,151.151 INFO    ] 200
[2026-06-22 21:25:19,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:25:19,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:25:19,220.220 INFO    ] No update needed
[2026-06-22 21:25:19,222.222 INFO    ] Checking for camera pi updates...
[2026-06-22 21:25:19,256.256 INFO    ] 200
[2026-06-22 21:25:19,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:25:19,305.305 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:25:19,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:25:19,388.388 INFO    ] No camera update needed
[2026-06-22 21:25:19,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:25:19,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:25:19,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:25:19,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:25:21,445.445 INFO    ] ================================================
[2026-06-22 21:25:21,461.461 INFO    ] Launching Daemon at Mon Jun 22 21:25:21 IST 2026
[2026-06-22 21:25:21,472.472 INFO    ] ================================================
[2026-06-22 21:25:22,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:25:22
[2026-06-22 21:25:22,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:25:23,062.062 INFO    ] Initializing speech engine...
[2026-06-22 21:25:23,075.075 INFO    ] 2026-06-22 21:25:23
[2026-06-22 21:25:23,390.390 INFO    ] 2026-06-22 21:25:23
[2026-06-22 21:25:23,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:25:23,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:25:23,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:25:23,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:25:23,895.895 INFO    ] time= 22/06/2026 21:25:23
[2026-06-22 21:25:23,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:25:23,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:25:24,067.067 INFO    ] No existing commands found in stream
[2026-06-22 21:25:29,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:25:29,107.107 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-22 21:25:31,801.801 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:25:31,804.804 INFO    ] Checking for system updates...
[2026-06-22 21:25:31,842.842 INFO    ] 200
[2026-06-22 21:25:31,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:25:31,908.908 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:25:31,910.910 INFO    ] No update needed
[2026-06-22 21:25:31,913.913 INFO    ] Checking for camera pi updates...
[2026-06-22 21:25:31,951.951 INFO    ] 200
[2026-06-22 21:25:31,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:25:32,011.011 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:25:32,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:25:32,072.072 INFO    ] No camera update needed
[2026-06-22 21:25:32,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:25:32,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:25:32,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:25:32,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:25:34,130.130 INFO    ] ================================================
[2026-06-22 21:25:34,146.146 INFO    ] Launching Daemon at Mon Jun 22 21:25:34 IST 2026
[2026-06-22 21:25:34,158.158 INFO    ] ================================================
[2026-06-22 21:25:34,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:25:34
[2026-06-22 21:25:35,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:25:35,583.583 INFO    ] Initializing speech engine...
[2026-06-22 21:25:35,595.595 INFO    ] 2026-06-22 21:25:35
[2026-06-22 21:25:35,845.845 INFO    ] 2026-06-22 21:25:35
[2026-06-22 21:25:35,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:25:36,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:25:36,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:25:36,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:25:36,322.322 INFO    ] time= 22/06/2026 21:25:36
[2026-06-22 21:25:36,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:25:36,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:25:36,475.475 INFO    ] No existing commands found in stream
[2026-06-22 21:25:41,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:25:41,509.509 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-22 21:25:45,816.816 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:25:45,819.819 INFO    ] Checking for system updates...
[2026-06-22 21:25:45,856.856 INFO    ] 200
[2026-06-22 21:25:45,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:25:45,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:25:45,922.922 INFO    ] No update needed
[2026-06-22 21:25:45,924.924 INFO    ] Checking for camera pi updates...
[2026-06-22 21:25:45,959.959 INFO    ] 200
[2026-06-22 21:25:45,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:25:46,002.002 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:25:46,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:25:46,100.100 INFO    ] No camera update needed
[2026-06-22 21:25:46,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:25:46,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:25:46,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:25:46,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:25:48,156.156 INFO    ] ================================================
[2026-06-22 21:25:48,172.172 INFO    ] Launching Daemon at Mon Jun 22 21:25:48 IST 2026
[2026-06-22 21:25:48,183.183 INFO    ] ================================================
[2026-06-22 21:25:48,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:25:48
[2026-06-22 21:25:49,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:25:49,523.523 INFO    ] Initializing speech engine...
[2026-06-22 21:25:49,533.533 INFO    ] 2026-06-22 21:25:49
[2026-06-22 21:25:49,791.791 INFO    ] 2026-06-22 21:25:49
[2026-06-22 21:25:49,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:25:50,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:25:50,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:25:50,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:25:50,252.252 INFO    ] time= 22/06/2026 21:25:50
[2026-06-22 21:25:50,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:25:50,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:25:50,468.468 INFO    ] No existing commands found in stream
[2026-06-22 21:25:55,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:25:55,501.501 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-22 21:25:56,050.050 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:25:56,053.053 INFO    ] Checking for system updates...
[2026-06-22 21:25:56,097.097 INFO    ] 200
[2026-06-22 21:25:56,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:25:56,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:25:56,161.161 INFO    ] No update needed
[2026-06-22 21:25:56,164.164 INFO    ] Checking for camera pi updates...
[2026-06-22 21:25:56,204.204 INFO    ] 200
[2026-06-22 21:25:56,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:25:56,254.254 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:25:56,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:25:56,346.346 INFO    ] No camera update needed
[2026-06-22 21:25:56,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:25:56,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:25:56,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:25:56,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:25:58,406.406 INFO    ] ================================================
[2026-06-22 21:25:58,421.421 INFO    ] Launching Daemon at Mon Jun 22 21:25:58 IST 2026
[2026-06-22 21:25:58,432.432 INFO    ] ================================================
[2026-06-22 21:25:59,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:25:58
[2026-06-22 21:25:59,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:25:59,747.747 INFO    ] Initializing speech engine...
[2026-06-22 21:25:59,753.753 INFO    ] 2026-06-22 21:25:59
[2026-06-22 21:26:00,027.027 INFO    ] 2026-06-22 21:26:00
[2026-06-22 21:26:00,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:26:00,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:26:00,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:26:00,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:26:00,405.405 INFO    ] time= 22/06/2026 21:26:00
[2026-06-22 21:26:00,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:26:00,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:26:00,563.563 INFO    ] No existing commands found in stream
[2026-06-22 21:26:05,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:26:05,596.596 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-22 21:26:06,287.287 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:26:06,290.290 INFO    ] Checking for system updates...
[2026-06-22 21:26:06,329.329 INFO    ] 200
[2026-06-22 21:26:06,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:26:06,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:26:06,391.391 INFO    ] No update needed
[2026-06-22 21:26:06,394.394 INFO    ] Checking for camera pi updates...
[2026-06-22 21:26:06,427.427 INFO    ] 200
[2026-06-22 21:26:06,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:26:06,475.475 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:26:06,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:26:06,569.569 INFO    ] No camera update needed
[2026-06-22 21:26:06,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:26:06,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:26:06,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:26:06,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:26:08,626.626 INFO    ] ================================================
[2026-06-22 21:26:08,641.641 INFO    ] Launching Daemon at Mon Jun 22 21:26:08 IST 2026
[2026-06-22 21:26:08,651.651 INFO    ] ================================================
[2026-06-22 21:26:09,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:26:09
[2026-06-22 21:26:09,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:26:10,062.062 INFO    ] Initializing speech engine...
[2026-06-22 21:26:10,068.068 INFO    ] 2026-06-22 21:26:10
[2026-06-22 21:26:10,368.368 INFO    ] 2026-06-22 21:26:10
[2026-06-22 21:26:10,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:26:13,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:26:13,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:26:13,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:26:13,745.745 INFO    ] time= 22/06/2026 21:26:13
[2026-06-22 21:26:13,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:26:13,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:26:13,799.799 INFO    ] No existing commands found in stream
[2026-06-22 21:26:18,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:26:18,811.811 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-22 21:26:20,466.466 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:26:20,469.469 INFO    ] Checking for system updates...
[2026-06-22 21:26:20,511.511 INFO    ] 200
[2026-06-22 21:26:20,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:26:20,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:26:20,571.571 INFO    ] No update needed
[2026-06-22 21:26:20,574.574 INFO    ] Checking for camera pi updates...
[2026-06-22 21:26:20,609.609 INFO    ] 200
[2026-06-22 21:26:20,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:26:20,653.653 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:26:20,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:26:20,742.742 INFO    ] No camera update needed
[2026-06-22 21:26:20,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:26:20,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:26:20,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:26:20,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:26:22,801.801 INFO    ] ================================================
[2026-06-22 21:26:22,817.817 INFO    ] Launching Daemon at Mon Jun 22 21:26:22 IST 2026
[2026-06-22 21:26:22,827.827 INFO    ] ================================================
[2026-06-22 21:26:23,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:26:23
[2026-06-22 21:26:23,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:26:24,163.163 INFO    ] Initializing speech engine...
[2026-06-22 21:26:24,178.178 INFO    ] 2026-06-22 21:26:24
[2026-06-22 21:26:24,464.464 INFO    ] 2026-06-22 21:26:24
[2026-06-22 21:26:24,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:26:24,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:26:24,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:26:25,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:26:25,080.080 INFO    ] time= 22/06/2026 21:26:25
[2026-06-22 21:26:25,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:26:25,102.102 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:26:25,237.237 INFO    ] No existing commands found in stream
[2026-06-22 21:26:30,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:26:30,270.270 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-22 21:26:30,861.861 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:26:30,863.863 INFO    ] Checking for system updates...
[2026-06-22 21:26:30,899.899 INFO    ] 200
[2026-06-22 21:26:30,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:26:30,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:26:30,962.962 INFO    ] No update needed
[2026-06-22 21:26:30,965.965 INFO    ] Checking for camera pi updates...
[2026-06-22 21:26:30,998.998 INFO    ] 200
[2026-06-22 21:26:31,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:26:31,045.045 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:26:31,229.229 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:26:31,231.231 INFO    ] No camera update needed
[2026-06-22 21:26:31,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:26:31,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:26:31,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:26:31,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:26:33,293.293 INFO    ] ================================================
[2026-06-22 21:26:33,308.308 INFO    ] Launching Daemon at Mon Jun 22 21:26:33 IST 2026
[2026-06-22 21:26:33,319.319 INFO    ] ================================================
[2026-06-22 21:26:33,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:26:33
[2026-06-22 21:26:34,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:26:34,775.775 INFO    ] Initializing speech engine...
[2026-06-22 21:26:34,781.781 INFO    ] 2026-06-22 21:26:34
[2026-06-22 21:26:35,025.025 INFO    ] 2026-06-22 21:26:35
[2026-06-22 21:26:35,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:26:35,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:26:35,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:26:35,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:26:35,396.396 INFO    ] time= 22/06/2026 21:26:35
[2026-06-22 21:26:35,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:26:35,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:26:35,586.586 INFO    ] No existing commands found in stream
[2026-06-22 21:26:40,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:26:40,607.607 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-22 21:26:47,083.083 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:26:47,085.085 INFO    ] Checking for system updates...
[2026-06-22 21:26:47,106.106 INFO    ] 200
[2026-06-22 21:26:47,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:26:47,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:26:47,141.141 INFO    ] No update needed
[2026-06-22 21:26:47,143.143 INFO    ] Checking for camera pi updates...
[2026-06-22 21:26:47,170.170 INFO    ] 200
[2026-06-22 21:26:47,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:26:47,217.217 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:26:47,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:26:47,291.291 INFO    ] No camera update needed
[2026-06-22 21:26:47,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:26:47,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:26:47,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:26:47,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:26:49,346.346 INFO    ] ================================================
[2026-06-22 21:26:49,362.362 INFO    ] Launching Daemon at Mon Jun 22 21:26:49 IST 2026
[2026-06-22 21:26:49,373.373 INFO    ] ================================================
[2026-06-22 21:26:49,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:26:49
[2026-06-22 21:26:50,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:26:50,778.778 INFO    ] Initializing speech engine...
[2026-06-22 21:26:50,801.801 INFO    ] 2026-06-22 21:26:50
[2026-06-22 21:26:51,054.054 INFO    ] 2026-06-22 21:26:51
[2026-06-22 21:26:51,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:26:51,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:26:51,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:26:51,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:26:51,530.530 INFO    ] time= 22/06/2026 21:26:51
[2026-06-22 21:26:51,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:26:51,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:26:51,770.770 INFO    ] No existing commands found in stream
[2026-06-22 21:26:56,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:26:56,803.803 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-22 21:26:58,010.010 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:26:58,013.013 INFO    ] Checking for system updates...
[2026-06-22 21:26:58,048.048 INFO    ] 200
[2026-06-22 21:26:58,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:26:58,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:26:58,106.106 INFO    ] No update needed
[2026-06-22 21:26:58,108.108 INFO    ] Checking for camera pi updates...
[2026-06-22 21:26:58,142.142 INFO    ] 200
[2026-06-22 21:26:58,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:26:58,185.185 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:26:58,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:26:58,271.271 INFO    ] No camera update needed
[2026-06-22 21:26:58,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:26:58,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:26:58,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:26:58,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:27:00,328.328 INFO    ] ================================================
[2026-06-22 21:27:00,343.343 INFO    ] Launching Daemon at Mon Jun 22 21:27:00 IST 2026
[2026-06-22 21:27:00,353.353 INFO    ] ================================================
[2026-06-22 21:27:00,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:27:00
[2026-06-22 21:27:01,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:27:01,773.773 INFO    ] Initializing speech engine...
[2026-06-22 21:27:01,782.782 INFO    ] 2026-06-22 21:27:01
[2026-06-22 21:27:02,033.033 INFO    ] 2026-06-22 21:27:02
[2026-06-22 21:27:02,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:27:02,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:27:02,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:27:02,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:27:02,470.470 INFO    ] time= 22/06/2026 21:27:02
[2026-06-22 21:27:02,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:27:02,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:27:02,560.560 INFO    ] No existing commands found in stream
[2026-06-22 21:27:07,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:27:07,574.574 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-22 21:27:10,375.375 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:27:10,377.377 INFO    ] Checking for system updates...
[2026-06-22 21:27:10,417.417 INFO    ] 200
[2026-06-22 21:27:10,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:27:10,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:27:10,475.475 INFO    ] No update needed
[2026-06-22 21:27:10,478.478 INFO    ] Checking for camera pi updates...
[2026-06-22 21:27:10,511.511 INFO    ] 200
[2026-06-22 21:27:10,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:27:10,560.560 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:27:10,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:27:10,641.641 INFO    ] No camera update needed
[2026-06-22 21:27:10,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:27:10,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:27:10,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:27:10,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:27:12,697.697 INFO    ] ================================================
[2026-06-22 21:27:12,712.712 INFO    ] Launching Daemon at Mon Jun 22 21:27:12 IST 2026
[2026-06-22 21:27:12,723.723 INFO    ] ================================================
[2026-06-22 21:27:13,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:27:13
[2026-06-22 21:27:13,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:27:14,210.210 INFO    ] Initializing speech engine...
[2026-06-22 21:27:14,222.222 INFO    ] 2026-06-22 21:27:14
[2026-06-22 21:27:14,500.500 INFO    ] 2026-06-22 21:27:14
[2026-06-22 21:27:14,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:27:18,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:27:18,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:27:19,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:27:19,486.486 INFO    ] time= 22/06/2026 21:27:19
[2026-06-22 21:27:19,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:27:19,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:27:19,542.542 INFO    ] No existing commands found in stream
[2026-06-22 21:27:24,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:27:24,556.556 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-22 21:27:25,299.299 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:27:25,302.302 INFO    ] Checking for system updates...
[2026-06-22 21:27:25,341.341 INFO    ] 200
[2026-06-22 21:27:25,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:27:25,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:27:25,404.404 INFO    ] No update needed
[2026-06-22 21:27:25,407.407 INFO    ] Checking for camera pi updates...
[2026-06-22 21:27:25,445.445 INFO    ] 200
[2026-06-22 21:27:25,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:27:25,487.487 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:27:25,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:27:25,570.570 INFO    ] No camera update needed
[2026-06-22 21:27:25,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:27:25,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:27:25,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:27:25,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:27:27,625.625 INFO    ] ================================================
[2026-06-22 21:27:27,640.640 INFO    ] Launching Daemon at Mon Jun 22 21:27:27 IST 2026
[2026-06-22 21:27:27,651.651 INFO    ] ================================================
[2026-06-22 21:27:28,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:27:28
[2026-06-22 21:27:28,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:27:29,115.115 INFO    ] Initializing speech engine...
[2026-06-22 21:27:29,120.120 INFO    ] 2026-06-22 21:27:29
[2026-06-22 21:27:29,383.383 INFO    ] 2026-06-22 21:27:29
[2026-06-22 21:27:29,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:27:29,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:27:29,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:27:29,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:27:29,929.929 INFO    ] time= 22/06/2026 21:27:29
[2026-06-22 21:27:29,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:27:29,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:27:30,104.104 INFO    ] No existing commands found in stream
[2026-06-22 21:27:35,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:27:35,137.137 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-22 21:27:38,683.683 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:27:38,685.685 INFO    ] Checking for system updates...
[2026-06-22 21:27:38,706.706 INFO    ] 200
[2026-06-22 21:27:38,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:27:38,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:27:38,762.762 INFO    ] No update needed
[2026-06-22 21:27:38,764.764 INFO    ] Checking for camera pi updates...
[2026-06-22 21:27:38,802.802 INFO    ] 200
[2026-06-22 21:27:38,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:27:38,850.850 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:27:38,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:27:38,961.961 INFO    ] No camera update needed
[2026-06-22 21:27:38,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:27:38,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:27:38,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:27:38,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:27:41,015.015 INFO    ] ================================================
[2026-06-22 21:27:41,030.030 INFO    ] Launching Daemon at Mon Jun 22 21:27:41 IST 2026
[2026-06-22 21:27:41,041.041 INFO    ] ================================================
[2026-06-22 21:27:41,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:27:41
[2026-06-22 21:27:42,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:27:42,369.369 INFO    ] Initializing speech engine...
[2026-06-22 21:27:42,379.379 INFO    ] 2026-06-22 21:27:42
[2026-06-22 21:27:42,624.624 INFO    ] 2026-06-22 21:27:42
[2026-06-22 21:27:42,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:27:42,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:27:42,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:27:43,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:27:43,097.097 INFO    ] time= 22/06/2026 21:27:43
[2026-06-22 21:27:43,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:27:43,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:27:43,333.333 INFO    ] No existing commands found in stream
[2026-06-22 21:27:48,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:27:48,361.361 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-22 21:27:52,246.246 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:27:52,249.249 INFO    ] Checking for system updates...
[2026-06-22 21:27:52,284.284 INFO    ] 200
[2026-06-22 21:27:52,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:27:52,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:27:52,348.348 INFO    ] No update needed
[2026-06-22 21:27:52,350.350 INFO    ] Checking for camera pi updates...
[2026-06-22 21:27:52,384.384 INFO    ] 200
[2026-06-22 21:27:52,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:27:52,428.428 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:27:52,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:27:52,522.522 INFO    ] No camera update needed
[2026-06-22 21:27:52,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:27:52,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:27:52,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:27:52,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:27:54,578.578 INFO    ] ================================================
[2026-06-22 21:27:54,592.592 INFO    ] Launching Daemon at Mon Jun 22 21:27:54 IST 2026
[2026-06-22 21:27:54,603.603 INFO    ] ================================================
[2026-06-22 21:27:55,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:27:55
[2026-06-22 21:27:55,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:27:55,935.935 INFO    ] Initializing speech engine...
[2026-06-22 21:27:55,948.948 INFO    ] 2026-06-22 21:27:55
[2026-06-22 21:27:56,230.230 INFO    ] 2026-06-22 21:27:56
[2026-06-22 21:27:56,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:27:56,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:27:56,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:27:56,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:27:56,647.647 INFO    ] time= 22/06/2026 21:27:56
[2026-06-22 21:27:56,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:27:56,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:27:56,799.799 INFO    ] No existing commands found in stream
[2026-06-22 21:28:01,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:28:01,827.827 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-22 21:28:04,826.826 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:28:04,828.828 INFO    ] Checking for system updates...
[2026-06-22 21:28:04,868.868 INFO    ] 200
[2026-06-22 21:28:04,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:28:04,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:28:04,943.943 INFO    ] No update needed
[2026-06-22 21:28:04,946.946 INFO    ] Checking for camera pi updates...
[2026-06-22 21:28:04,979.979 INFO    ] 200
[2026-06-22 21:28:04,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:28:05,022.022 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:28:05,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:28:05,106.106 INFO    ] No camera update needed
[2026-06-22 21:28:05,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:28:05,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:28:05,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:28:05,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:28:07,164.164 INFO    ] ================================================
[2026-06-22 21:28:07,179.179 INFO    ] Launching Daemon at Mon Jun 22 21:28:07 IST 2026
[2026-06-22 21:28:07,189.189 INFO    ] ================================================
[2026-06-22 21:28:07,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:28:07
[2026-06-22 21:28:08,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:28:08,558.558 INFO    ] Initializing speech engine...
[2026-06-22 21:28:08,581.581 INFO    ] 2026-06-22 21:28:08
[2026-06-22 21:28:08,831.831 INFO    ] 2026-06-22 21:28:08
[2026-06-22 21:28:08,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:28:09,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:28:09,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:28:09,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:28:09,207.207 INFO    ] time= 22/06/2026 21:28:09
[2026-06-22 21:28:09,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:28:09,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:28:09,394.394 INFO    ] No existing commands found in stream
[2026-06-22 21:28:14,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:28:14,422.422 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-22 21:28:21,085.085 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:28:21,088.088 INFO    ] Checking for system updates...
[2026-06-22 21:28:21,124.124 INFO    ] 200
[2026-06-22 21:28:21,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:28:21,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:28:21,188.188 INFO    ] No update needed
[2026-06-22 21:28:21,190.190 INFO    ] Checking for camera pi updates...
[2026-06-22 21:28:21,227.227 INFO    ] 200
[2026-06-22 21:28:21,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:28:21,271.271 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:28:21,343.343 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:28:21,346.346 INFO    ] No camera update needed
[2026-06-22 21:28:21,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:28:21,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:28:21,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:28:21,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:28:23,403.403 INFO    ] ================================================
[2026-06-22 21:28:23,418.418 INFO    ] Launching Daemon at Mon Jun 22 21:28:23 IST 2026
[2026-06-22 21:28:23,429.429 INFO    ] ================================================
[2026-06-22 21:28:24,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:28:23
[2026-06-22 21:28:24,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:28:24,760.760 INFO    ] Initializing speech engine...
[2026-06-22 21:28:24,775.775 INFO    ] 2026-06-22 21:28:24
[2026-06-22 21:28:25,033.033 INFO    ] 2026-06-22 21:28:25
[2026-06-22 21:28:25,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:28:25,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:28:25,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:28:25,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:28:25,547.547 INFO    ] time= 22/06/2026 21:28:25
[2026-06-22 21:28:25,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:28:25,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:28:25,725.725 INFO    ] No existing commands found in stream
[2026-06-22 21:28:30,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:28:30,750.750 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-22 21:28:33,973.973 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:28:33,976.976 INFO    ] Checking for system updates...
[2026-06-22 21:28:34,016.016 INFO    ] 200
[2026-06-22 21:28:34,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:28:34,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:28:34,076.076 INFO    ] No update needed
[2026-06-22 21:28:34,079.079 INFO    ] Checking for camera pi updates...
[2026-06-22 21:28:34,114.114 INFO    ] 200
[2026-06-22 21:28:34,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:28:34,162.162 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:28:34,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:28:34,271.271 INFO    ] No camera update needed
[2026-06-22 21:28:34,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:28:34,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:28:34,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:28:34,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:28:36,329.329 INFO    ] ================================================
[2026-06-22 21:28:36,344.344 INFO    ] Launching Daemon at Mon Jun 22 21:28:36 IST 2026
[2026-06-22 21:28:36,355.355 INFO    ] ================================================
[2026-06-22 21:28:36,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:28:36
[2026-06-22 21:28:37,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:28:37,736.736 INFO    ] Initializing speech engine...
[2026-06-22 21:28:37,746.746 INFO    ] 2026-06-22 21:28:37
[2026-06-22 21:28:37,992.992 INFO    ] 2026-06-22 21:28:37
[2026-06-22 21:28:38,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:28:38,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:28:38,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:28:38,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:28:38,456.456 INFO    ] time= 22/06/2026 21:28:38
[2026-06-22 21:28:38,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:28:38,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:28:38,686.686 INFO    ] No existing commands found in stream
[2026-06-22 21:28:43,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:28:43,710.710 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-22 21:28:50,995.995 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:28:50,998.998 INFO    ] Checking for system updates...
[2026-06-22 21:28:51,034.034 INFO    ] 200
[2026-06-22 21:28:51,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:28:51,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:28:51,097.097 INFO    ] No update needed
[2026-06-22 21:28:51,099.099 INFO    ] Checking for camera pi updates...
[2026-06-22 21:28:51,132.132 INFO    ] 200
[2026-06-22 21:28:51,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:28:51,176.176 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:28:51,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:28:51,259.259 INFO    ] No camera update needed
[2026-06-22 21:28:51,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:28:51,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:28:51,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:28:51,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:28:53,314.314 INFO    ] ================================================
[2026-06-22 21:28:53,328.328 INFO    ] Launching Daemon at Mon Jun 22 21:28:53 IST 2026
[2026-06-22 21:28:53,339.339 INFO    ] ================================================
[2026-06-22 21:28:53,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:28:53
[2026-06-22 21:28:54,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:28:54,613.613 INFO    ] Initializing speech engine...
[2026-06-22 21:28:54,627.627 INFO    ] 2026-06-22 21:28:54
[2026-06-22 21:28:54,906.906 INFO    ] 2026-06-22 21:28:54
[2026-06-22 21:28:54,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:28:55,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:28:55,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:28:55,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:28:55,398.398 INFO    ] time= 22/06/2026 21:28:55
[2026-06-22 21:28:55,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:28:55,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:28:55,611.611 INFO    ] No existing commands found in stream
[2026-06-22 21:29:00,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:29:00,638.638 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-22 21:29:03,118.118 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:29:03,122.122 INFO    ] Checking for system updates...
[2026-06-22 21:29:03,176.176 INFO    ] 200
[2026-06-22 21:29:03,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:29:03,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:29:03,261.261 INFO    ] No update needed
[2026-06-22 21:29:03,265.265 INFO    ] Checking for camera pi updates...
[2026-06-22 21:29:03,300.300 INFO    ] 200
[2026-06-22 21:29:03,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:29:03,356.356 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:29:03,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:29:03,462.462 INFO    ] No camera update needed
[2026-06-22 21:29:03,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:29:03,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:29:03,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:29:03,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:29:05,517.517 INFO    ] ================================================
[2026-06-22 21:29:05,532.532 INFO    ] Launching Daemon at Mon Jun 22 21:29:05 IST 2026
[2026-06-22 21:29:05,543.543 INFO    ] ================================================
[2026-06-22 21:29:06,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:29:06
[2026-06-22 21:29:06,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:29:07,010.010 INFO    ] Initializing speech engine...
[2026-06-22 21:29:07,018.018 INFO    ] 2026-06-22 21:29:07
[2026-06-22 21:29:07,289.289 INFO    ] 2026-06-22 21:29:07
[2026-06-22 21:29:07,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:29:07,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:29:07,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:29:07,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:29:07,838.838 INFO    ] time= 22/06/2026 21:29:07
[2026-06-22 21:29:07,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:29:07,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:29:08,231.231 INFO    ] No existing commands found in stream
[2026-06-22 21:29:13,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:29:13,265.265 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-22 21:29:15,515.515 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:29:15,518.518 INFO    ] Checking for system updates...
[2026-06-22 21:29:15,555.555 INFO    ] 200
[2026-06-22 21:29:15,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:29:15,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:29:15,614.614 INFO    ] No update needed
[2026-06-22 21:29:15,616.616 INFO    ] Checking for camera pi updates...
[2026-06-22 21:29:15,651.651 INFO    ] 200
[2026-06-22 21:29:15,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:29:15,697.697 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:29:15,783.783 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:29:15,786.786 INFO    ] No camera update needed
[2026-06-22 21:29:15,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:29:15,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:29:15,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:29:15,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:29:17,842.842 INFO    ] ================================================
[2026-06-22 21:29:17,857.857 INFO    ] Launching Daemon at Mon Jun 22 21:29:17 IST 2026
[2026-06-22 21:29:17,867.867 INFO    ] ================================================
[2026-06-22 21:29:18,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:29:18
[2026-06-22 21:29:19,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:29:19,322.322 INFO    ] Initializing speech engine...
[2026-06-22 21:29:19,331.331 INFO    ] 2026-06-22 21:29:19
[2026-06-22 21:29:19,599.599 INFO    ] 2026-06-22 21:29:19
[2026-06-22 21:29:19,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:29:22,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:29:22,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:29:23,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:29:23,500.500 INFO    ] time= 22/06/2026 21:29:23
[2026-06-22 21:29:23,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:29:23,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:29:23,574.574 INFO    ] No existing commands found in stream
[2026-06-22 21:29:28,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:29:28,587.587 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-22 21:29:31,031.031 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:29:31,034.034 INFO    ] Checking for system updates...
[2026-06-22 21:29:31,074.074 INFO    ] 200
[2026-06-22 21:29:31,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:29:31,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:29:31,139.139 INFO    ] No update needed
[2026-06-22 21:29:31,142.142 INFO    ] Checking for camera pi updates...
[2026-06-22 21:29:31,179.179 INFO    ] 200
[2026-06-22 21:29:31,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:29:31,223.223 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:29:31,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:29:31,309.309 INFO    ] No camera update needed
[2026-06-22 21:29:31,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:29:31,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:29:31,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:29:31,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:29:33,368.368 INFO    ] ================================================
[2026-06-22 21:29:33,383.383 INFO    ] Launching Daemon at Mon Jun 22 21:29:33 IST 2026
[2026-06-22 21:29:33,394.394 INFO    ] ================================================
[2026-06-22 21:29:33,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:29:33
[2026-06-22 21:29:34,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:29:34,703.703 INFO    ] Initializing speech engine...
[2026-06-22 21:29:34,727.727 INFO    ] 2026-06-22 21:29:34
[2026-06-22 21:29:34,981.981 INFO    ] 2026-06-22 21:29:34
[2026-06-22 21:29:35,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:29:35,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:29:35,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:29:35,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:29:35,349.349 INFO    ] time= 22/06/2026 21:29:35
[2026-06-22 21:29:35,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:29:35,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:29:35,527.527 INFO    ] No existing commands found in stream
[2026-06-22 21:29:40,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:29:40,555.555 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-22 21:29:43,105.105 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:29:43,108.108 INFO    ] Checking for system updates...
[2026-06-22 21:29:43,146.146 INFO    ] 200
[2026-06-22 21:29:43,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:29:43,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:29:43,204.204 INFO    ] No update needed
[2026-06-22 21:29:43,207.207 INFO    ] Checking for camera pi updates...
[2026-06-22 21:29:43,244.244 INFO    ] 200
[2026-06-22 21:29:43,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:29:43,289.289 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:29:43,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:29:43,368.368 INFO    ] No camera update needed
[2026-06-22 21:29:43,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:29:43,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:29:43,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:29:43,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:29:45,426.426 INFO    ] ================================================
[2026-06-22 21:29:45,441.441 INFO    ] Launching Daemon at Mon Jun 22 21:29:45 IST 2026
[2026-06-22 21:29:45,451.451 INFO    ] ================================================
[2026-06-22 21:29:46,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:29:46
[2026-06-22 21:29:46,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:29:46,789.789 INFO    ] Initializing speech engine...
[2026-06-22 21:29:46,798.798 INFO    ] 2026-06-22 21:29:46
[2026-06-22 21:29:47,059.059 INFO    ] 2026-06-22 21:29:47
[2026-06-22 21:29:47,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:29:47,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:29:47,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:29:47,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:29:47,525.525 INFO    ] time= 22/06/2026 21:29:47
[2026-06-22 21:29:47,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:29:47,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:29:47,731.731 INFO    ] No existing commands found in stream
[2026-06-22 21:29:52,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:29:52,764.764 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-22 21:29:55,619.619 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:29:55,622.622 INFO    ] Checking for system updates...
[2026-06-22 21:29:55,658.658 INFO    ] 200
[2026-06-22 21:29:55,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:29:55,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:29:55,718.718 INFO    ] No update needed
[2026-06-22 21:29:55,720.720 INFO    ] Checking for camera pi updates...
[2026-06-22 21:29:55,753.753 INFO    ] 200
[2026-06-22 21:29:55,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:29:55,797.797 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:29:55,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:29:55,903.903 INFO    ] No camera update needed
[2026-06-22 21:29:55,905.905 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:29:55,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:29:55,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:29:55,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:29:57,959.959 INFO    ] ================================================
[2026-06-22 21:29:57,974.974 INFO    ] Launching Daemon at Mon Jun 22 21:29:57 IST 2026
[2026-06-22 21:29:57,986.986 INFO    ] ================================================
[2026-06-22 21:29:58,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:29:58
[2026-06-22 21:29:59,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:29:59,472.472 INFO    ] Initializing speech engine...
[2026-06-22 21:29:59,485.485 INFO    ] 2026-06-22 21:29:59
[2026-06-22 21:29:59,789.789 INFO    ] 2026-06-22 21:29:59
[2026-06-22 21:29:59,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:30:00,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:30:00,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:30:00,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:30:00,244.244 INFO    ] time= 22/06/2026 21:30:00
[2026-06-22 21:30:00,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:30:00,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:30:00,419.419 INFO    ] No existing commands found in stream
[2026-06-22 21:30:05,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:30:05,453.453 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-22 21:30:08,264.264 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:30:08,267.267 INFO    ] Checking for system updates...
[2026-06-22 21:30:08,303.303 INFO    ] 200
[2026-06-22 21:30:08,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:30:08,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:30:08,362.362 INFO    ] No update needed
[2026-06-22 21:30:08,365.365 INFO    ] Checking for camera pi updates...
[2026-06-22 21:30:08,399.399 INFO    ] 200
[2026-06-22 21:30:08,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:30:08,443.443 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:30:08,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:30:08,536.536 INFO    ] No camera update needed
[2026-06-22 21:30:08,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:30:08,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:30:08,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:30:08,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:30:10,596.596 INFO    ] ================================================
[2026-06-22 21:30:10,611.611 INFO    ] Launching Daemon at Mon Jun 22 21:30:10 IST 2026
[2026-06-22 21:30:10,622.622 INFO    ] ================================================
[2026-06-22 21:30:11,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:30:11
[2026-06-22 21:30:11,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:30:11,943.943 INFO    ] Initializing speech engine...
[2026-06-22 21:30:11,958.958 INFO    ] 2026-06-22 21:30:11
[2026-06-22 21:30:12,236.236 INFO    ] 2026-06-22 21:30:12
[2026-06-22 21:30:12,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:30:12,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:30:12,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:30:12,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:30:12,644.644 INFO    ] time= 22/06/2026 21:30:12
[2026-06-22 21:30:12,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:30:12,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:30:12,813.813 INFO    ] No existing commands found in stream
[2026-06-22 21:30:17,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:30:17,840.840 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-22 21:30:23,251.251 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:30:23,254.254 INFO    ] Checking for system updates...
[2026-06-22 21:30:23,289.289 INFO    ] 200
[2026-06-22 21:30:23,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:30:23,349.349 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:30:23,352.352 INFO    ] No update needed
[2026-06-22 21:30:23,354.354 INFO    ] Checking for camera pi updates...
[2026-06-22 21:30:23,390.390 INFO    ] 200
[2026-06-22 21:30:23,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:30:23,434.434 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:30:23,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:30:23,545.545 INFO    ] No camera update needed
[2026-06-22 21:30:23,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:30:23,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:30:23,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:30:23,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:30:25,603.603 INFO    ] ================================================
[2026-06-22 21:30:25,618.618 INFO    ] Launching Daemon at Mon Jun 22 21:30:25 IST 2026
[2026-06-22 21:30:25,629.629 INFO    ] ================================================
[2026-06-22 21:30:26,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:30:26
[2026-06-22 21:30:26,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:30:26,989.989 INFO    ] Initializing speech engine...
[2026-06-22 21:30:27,013.013 INFO    ] 2026-06-22 21:30:26
[2026-06-22 21:30:27,280.280 INFO    ] 2026-06-22 21:30:27
[2026-06-22 21:30:27,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:30:27,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:30:27,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:30:27,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:30:27,672.672 INFO    ] time= 22/06/2026 21:30:27
[2026-06-22 21:30:27,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:30:27,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:30:27,851.851 INFO    ] No existing commands found in stream
[2026-06-22 21:30:32,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:30:32,880.880 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-22 21:30:33,706.706 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:30:33,709.709 INFO    ] Checking for system updates...
[2026-06-22 21:30:33,749.749 INFO    ] 200
[2026-06-22 21:30:33,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:30:33,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:30:33,815.815 INFO    ] No update needed
[2026-06-22 21:30:33,819.819 INFO    ] Checking for camera pi updates...
[2026-06-22 21:30:33,857.857 INFO    ] 200
[2026-06-22 21:30:33,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:30:33,901.901 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:30:34,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:30:34,010.010 INFO    ] No camera update needed
[2026-06-22 21:30:34,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:30:34,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:30:34,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:30:34,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:30:36,068.068 INFO    ] ================================================
[2026-06-22 21:30:36,083.083 INFO    ] Launching Daemon at Mon Jun 22 21:30:36 IST 2026
[2026-06-22 21:30:36,094.094 INFO    ] ================================================
[2026-06-22 21:30:36,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:30:36
[2026-06-22 21:30:37,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:30:37,710.710 INFO    ] Initializing speech engine...
[2026-06-22 21:30:37,719.719 INFO    ] 2026-06-22 21:30:37
[2026-06-22 21:30:37,998.998 INFO    ] 2026-06-22 21:30:37
[2026-06-22 21:30:38,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:30:38,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:30:38,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:30:38,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:30:38,554.554 INFO    ] time= 22/06/2026 21:30:38
[2026-06-22 21:30:38,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:30:38,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:30:38,687.687 INFO    ] No existing commands found in stream
[2026-06-22 21:30:43,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:30:43,709.709 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-22 21:30:45,239.239 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:30:45,242.242 INFO    ] Checking for system updates...
[2026-06-22 21:30:45,278.278 INFO    ] 200
[2026-06-22 21:30:45,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:30:45,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:30:45,338.338 INFO    ] No update needed
[2026-06-22 21:30:45,340.340 INFO    ] Checking for camera pi updates...
[2026-06-22 21:30:45,374.374 INFO    ] 200
[2026-06-22 21:30:45,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:30:45,425.425 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:30:45,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:30:45,612.612 INFO    ] No camera update needed
[2026-06-22 21:30:45,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:30:45,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:30:45,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:30:45,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:30:47,667.667 INFO    ] ================================================
[2026-06-22 21:30:47,682.682 INFO    ] Launching Daemon at Mon Jun 22 21:30:47 IST 2026
[2026-06-22 21:30:47,693.693 INFO    ] ================================================
[2026-06-22 21:30:48,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:30:48
[2026-06-22 21:30:48,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:30:49,113.113 INFO    ] Initializing speech engine...
[2026-06-22 21:30:49,122.122 INFO    ] 2026-06-22 21:30:49
[2026-06-22 21:30:49,368.368 INFO    ] 2026-06-22 21:30:49
[2026-06-22 21:30:49,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:30:49,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:30:49,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:30:49,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:30:49,842.842 INFO    ] time= 22/06/2026 21:30:49
[2026-06-22 21:30:49,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:30:49,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:30:50,057.057 INFO    ] No existing commands found in stream
[2026-06-22 21:30:55,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:30:55,087.087 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-22 21:30:56,690.690 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:30:56,692.692 INFO    ] Checking for system updates...
[2026-06-22 21:30:56,729.729 INFO    ] 200
[2026-06-22 21:30:56,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:30:56,790.790 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:30:56,792.792 INFO    ] No update needed
[2026-06-22 21:30:56,795.795 INFO    ] Checking for camera pi updates...
[2026-06-22 21:30:56,832.832 INFO    ] 200
[2026-06-22 21:30:56,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:30:56,878.878 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:30:56,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:30:56,966.966 INFO    ] No camera update needed
[2026-06-22 21:30:56,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:30:56,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:30:56,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:30:56,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:30:59,022.022 INFO    ] ================================================
[2026-06-22 21:30:59,038.038 INFO    ] Launching Daemon at Mon Jun 22 21:30:59 IST 2026
[2026-06-22 21:30:59,049.049 INFO    ] ================================================
[2026-06-22 21:30:59,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:30:59
[2026-06-22 21:31:00,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:31:00,372.372 INFO    ] Initializing speech engine...
[2026-06-22 21:31:00,391.391 INFO    ] 2026-06-22 21:31:00
[2026-06-22 21:31:00,638.638 INFO    ] 2026-06-22 21:31:00
[2026-06-22 21:31:00,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:31:00,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:31:00,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:31:01,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:31:01,194.194 INFO    ] time= 22/06/2026 21:31:01
[2026-06-22 21:31:01,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:31:01,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:31:01,328.328 INFO    ] No existing commands found in stream
[2026-06-22 21:31:06,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:31:06,341.341 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-22 21:31:08,291.291 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:31:08,294.294 INFO    ] Checking for system updates...
[2026-06-22 21:31:08,334.334 INFO    ] 200
[2026-06-22 21:31:08,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:31:08,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:31:08,392.392 INFO    ] No update needed
[2026-06-22 21:31:08,394.394 INFO    ] Checking for camera pi updates...
[2026-06-22 21:31:08,428.428 INFO    ] 200
[2026-06-22 21:31:08,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:31:08,474.474 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:31:08,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:31:08,568.568 INFO    ] No camera update needed
[2026-06-22 21:31:08,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:31:08,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:31:08,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:31:08,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:31:10,624.624 INFO    ] ================================================
[2026-06-22 21:31:10,639.639 INFO    ] Launching Daemon at Mon Jun 22 21:31:10 IST 2026
[2026-06-22 21:31:10,650.650 INFO    ] ================================================
[2026-06-22 21:31:11,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:31:11
[2026-06-22 21:31:11,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:31:12,078.078 INFO    ] Initializing speech engine...
[2026-06-22 21:31:12,088.088 INFO    ] 2026-06-22 21:31:12
[2026-06-22 21:31:12,333.333 INFO    ] 2026-06-22 21:31:12
[2026-06-22 21:31:12,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:31:12,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:31:12,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:31:12,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:31:12,811.811 INFO    ] time= 22/06/2026 21:31:12
[2026-06-22 21:31:12,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:31:12,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:31:13,027.027 INFO    ] No existing commands found in stream
[2026-06-22 21:31:18,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:31:18,057.057 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-22 21:31:18,892.892 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:31:18,895.895 INFO    ] Checking for system updates...
[2026-06-22 21:31:18,930.930 INFO    ] 200
[2026-06-22 21:31:18,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:31:18,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:31:18,988.988 INFO    ] No update needed
[2026-06-22 21:31:18,990.990 INFO    ] Checking for camera pi updates...
[2026-06-22 21:31:19,024.024 INFO    ] 200
[2026-06-22 21:31:19,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:31:19,067.067 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:31:19,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:31:19,146.146 INFO    ] No camera update needed
[2026-06-22 21:31:19,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:31:19,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:31:19,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:31:19,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:31:21,203.203 INFO    ] ================================================
[2026-06-22 21:31:21,219.219 INFO    ] Launching Daemon at Mon Jun 22 21:31:21 IST 2026
[2026-06-22 21:31:21,230.230 INFO    ] ================================================
[2026-06-22 21:31:21,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:31:21
[2026-06-22 21:31:22,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:31:22,650.650 INFO    ] Initializing speech engine...
[2026-06-22 21:31:22,657.657 INFO    ] 2026-06-22 21:31:22
[2026-06-22 21:31:22,949.949 INFO    ] 2026-06-22 21:31:22
[2026-06-22 21:31:22,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:31:26,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:31:26,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:31:27,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:31:27,759.759 INFO    ] time= 22/06/2026 21:31:27
[2026-06-22 21:31:27,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:31:27,764.764 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:31:27,824.824 INFO    ] No existing commands found in stream
[2026-06-22 21:31:32,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:31:32,838.838 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-22 21:31:35,103.103 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:31:35,106.106 INFO    ] Checking for system updates...
[2026-06-22 21:31:35,130.130 INFO    ] 200
[2026-06-22 21:31:35,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:31:35,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:31:35,166.166 INFO    ] No update needed
[2026-06-22 21:31:35,172.172 INFO    ] Checking for camera pi updates...
[2026-06-22 21:31:35,192.192 INFO    ] 200
[2026-06-22 21:31:35,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:31:35,227.227 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:31:35,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:31:35,318.318 INFO    ] No camera update needed
[2026-06-22 21:31:35,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:31:35,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:31:35,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:31:35,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:31:37,376.376 INFO    ] ================================================
[2026-06-22 21:31:37,392.392 INFO    ] Launching Daemon at Mon Jun 22 21:31:37 IST 2026
[2026-06-22 21:31:37,403.403 INFO    ] ================================================
[2026-06-22 21:31:37,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:31:37
[2026-06-22 21:31:38,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:31:38,744.744 INFO    ] Initializing speech engine...
[2026-06-22 21:31:38,750.750 INFO    ] 2026-06-22 21:31:38
[2026-06-22 21:31:38,998.998 INFO    ] 2026-06-22 21:31:38
[2026-06-22 21:31:39,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:31:39,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:31:39,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:31:39,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:31:39,493.493 INFO    ] time= 22/06/2026 21:31:39
[2026-06-22 21:31:39,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:31:39,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:31:39,711.711 INFO    ] No existing commands found in stream
[2026-06-22 21:31:44,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:31:44,737.737 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-22 21:31:46,733.733 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:31:46,736.736 INFO    ] Checking for system updates...
[2026-06-22 21:31:46,773.773 INFO    ] 200
[2026-06-22 21:31:46,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:31:46,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:31:46,833.833 INFO    ] No update needed
[2026-06-22 21:31:46,837.837 INFO    ] Checking for camera pi updates...
[2026-06-22 21:31:46,872.872 INFO    ] 200
[2026-06-22 21:31:46,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:31:46,921.921 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:31:47,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:31:47,015.015 INFO    ] No camera update needed
[2026-06-22 21:31:47,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:31:47,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:31:47,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:31:47,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:31:49,074.074 INFO    ] ================================================
[2026-06-22 21:31:49,091.091 INFO    ] Launching Daemon at Mon Jun 22 21:31:49 IST 2026
[2026-06-22 21:31:49,102.102 INFO    ] ================================================
[2026-06-22 21:31:49,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:31:49
[2026-06-22 21:31:50,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:31:50,539.539 INFO    ] Initializing speech engine...
[2026-06-22 21:31:50,549.549 INFO    ] 2026-06-22 21:31:50
[2026-06-22 21:31:50,793.793 INFO    ] 2026-06-22 21:31:50
[2026-06-22 21:31:50,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:31:51,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:31:51,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:31:51,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:31:51,259.259 INFO    ] time= 22/06/2026 21:31:51
[2026-06-22 21:31:51,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:31:51,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:31:51,471.471 INFO    ] No existing commands found in stream
[2026-06-22 21:31:56,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:31:56,506.506 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-22 21:31:58,290.290 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:31:58,293.293 INFO    ] Checking for system updates...
[2026-06-22 21:31:58,333.333 INFO    ] 200
[2026-06-22 21:31:58,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:31:58,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:31:58,393.393 INFO    ] No update needed
[2026-06-22 21:31:58,395.395 INFO    ] Checking for camera pi updates...
[2026-06-22 21:31:58,434.434 INFO    ] 200
[2026-06-22 21:31:58,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:31:58,484.484 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:31:58,594.594 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:31:58,597.597 INFO    ] No camera update needed
[2026-06-22 21:31:58,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:31:58,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:31:58,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:31:58,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:32:00,656.656 INFO    ] ================================================
[2026-06-22 21:32:00,672.672 INFO    ] Launching Daemon at Mon Jun 22 21:32:00 IST 2026
[2026-06-22 21:32:00,683.683 INFO    ] ================================================
[2026-06-22 21:32:01,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:32:01
[2026-06-22 21:32:02,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:32:02,558.558 INFO    ] Initializing speech engine...
[2026-06-22 21:32:02,568.568 INFO    ] 2026-06-22 21:32:02
[2026-06-22 21:32:02,906.906 INFO    ] 2026-06-22 21:32:02
[2026-06-22 21:32:02,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:32:03,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:32:03,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:32:03,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:32:03,362.362 INFO    ] time= 22/06/2026 21:32:03
[2026-06-22 21:32:03,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:32:03,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:32:03,582.582 INFO    ] No existing commands found in stream
[2026-06-22 21:32:08,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:32:08,615.615 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-22 21:32:09,125.125 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:32:09,127.127 INFO    ] Checking for system updates...
[2026-06-22 21:32:09,168.168 INFO    ] 200
[2026-06-22 21:32:09,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:32:09,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:32:09,232.232 INFO    ] No update needed
[2026-06-22 21:32:09,235.235 INFO    ] Checking for camera pi updates...
[2026-06-22 21:32:09,268.268 INFO    ] 200
[2026-06-22 21:32:09,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:32:09,312.312 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:32:09,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:32:09,423.423 INFO    ] No camera update needed
[2026-06-22 21:32:09,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:32:09,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:32:09,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:32:09,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:32:11,471.471 INFO    ] ================================================
[2026-06-22 21:32:11,487.487 INFO    ] Launching Daemon at Mon Jun 22 21:32:11 IST 2026
[2026-06-22 21:32:11,498.498 INFO    ] ================================================
[2026-06-22 21:32:12,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:32:12
[2026-06-22 21:32:12,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:32:12,922.922 INFO    ] Initializing speech engine...
[2026-06-22 21:32:12,931.931 INFO    ] 2026-06-22 21:32:12
[2026-06-22 21:32:13,182.182 INFO    ] 2026-06-22 21:32:13
[2026-06-22 21:32:13,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:32:13,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:32:13,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:32:13,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:32:13,689.689 INFO    ] time= 22/06/2026 21:32:13
[2026-06-22 21:32:13,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:32:13,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:32:13,910.910 INFO    ] No existing commands found in stream
[2026-06-22 21:32:18,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:32:18,925.925 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-22 21:32:20,477.477 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:32:20,480.480 INFO    ] Checking for system updates...
[2026-06-22 21:32:20,516.516 INFO    ] 200
[2026-06-22 21:32:20,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:32:20,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:32:20,573.573 INFO    ] No update needed
[2026-06-22 21:32:20,576.576 INFO    ] Checking for camera pi updates...
[2026-06-22 21:32:20,616.616 INFO    ] 200
[2026-06-22 21:32:20,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:32:20,660.660 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:32:20,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:32:20,742.742 INFO    ] No camera update needed
[2026-06-22 21:32:20,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:32:20,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:32:20,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:32:20,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:32:22,797.797 INFO    ] ================================================
[2026-06-22 21:32:22,813.813 INFO    ] Launching Daemon at Mon Jun 22 21:32:22 IST 2026
[2026-06-22 21:32:22,823.823 INFO    ] ================================================
[2026-06-22 21:32:23,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:32:23
[2026-06-22 21:32:24,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:32:24,471.471 INFO    ] Initializing speech engine...
[2026-06-22 21:32:24,483.483 INFO    ] 2026-06-22 21:32:24
[2026-06-22 21:32:24,734.734 INFO    ] 2026-06-22 21:32:24
[2026-06-22 21:32:24,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:32:27,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:32:27,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:32:28,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:32:28,458.458 INFO    ] time= 22/06/2026 21:32:28
[2026-06-22 21:32:28,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:32:28,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:32:28,525.525 INFO    ] No existing commands found in stream
[2026-06-22 21:32:33,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:32:33,537.537 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-22 21:32:35,796.796 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:32:35,799.799 INFO    ] Checking for system updates...
[2026-06-22 21:32:35,839.839 INFO    ] 200
[2026-06-22 21:32:35,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:32:35,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:32:35,904.904 INFO    ] No update needed
[2026-06-22 21:32:35,907.907 INFO    ] Checking for camera pi updates...
[2026-06-22 21:32:35,940.940 INFO    ] 200
[2026-06-22 21:32:35,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:32:35,985.985 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:32:36,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:32:36,055.055 INFO    ] No camera update needed
[2026-06-22 21:32:36,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:32:36,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:32:36,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:32:36,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:32:38,118.118 INFO    ] ================================================
[2026-06-22 21:32:38,134.134 INFO    ] Launching Daemon at Mon Jun 22 21:32:38 IST 2026
[2026-06-22 21:32:38,144.144 INFO    ] ================================================
[2026-06-22 21:32:38,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:32:38
[2026-06-22 21:32:39,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:32:39,489.489 INFO    ] Initializing speech engine...
[2026-06-22 21:32:39,498.498 INFO    ] 2026-06-22 21:32:39
[2026-06-22 21:32:39,746.746 INFO    ] 2026-06-22 21:32:39
[2026-06-22 21:32:39,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:32:40,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:32:40,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:32:40,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:32:40,217.217 INFO    ] time= 22/06/2026 21:32:40
[2026-06-22 21:32:40,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:32:40,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:32:40,398.398 INFO    ] No existing commands found in stream
[2026-06-22 21:32:45,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:32:45,432.432 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-22 21:32:46,866.866 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:32:46,869.869 INFO    ] Checking for system updates...
[2026-06-22 21:32:46,906.906 INFO    ] 200
[2026-06-22 21:32:46,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:32:46,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:32:46,972.972 INFO    ] No update needed
[2026-06-22 21:32:46,974.974 INFO    ] Checking for camera pi updates...
[2026-06-22 21:32:47,013.013 INFO    ] 200
[2026-06-22 21:32:47,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:32:47,056.056 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:32:47,135.135 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:32:47,138.138 INFO    ] No camera update needed
[2026-06-22 21:32:47,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:32:47,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:32:47,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:32:47,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:32:49,194.194 INFO    ] ================================================
[2026-06-22 21:32:49,210.210 INFO    ] Launching Daemon at Mon Jun 22 21:32:49 IST 2026
[2026-06-22 21:32:49,222.222 INFO    ] ================================================
[2026-06-22 21:32:49,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:32:49
[2026-06-22 21:32:50,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:32:50,878.878 INFO    ] Initializing speech engine...
[2026-06-22 21:32:50,890.890 INFO    ] 2026-06-22 21:32:50
[2026-06-22 21:32:51,163.163 INFO    ] 2026-06-22 21:32:51
[2026-06-22 21:32:51,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:32:51,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:32:51,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:32:51,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:32:51,715.715 INFO    ] time= 22/06/2026 21:32:51
[2026-06-22 21:32:51,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:32:51,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:32:51,873.873 INFO    ] No existing commands found in stream
[2026-06-22 21:32:56,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:32:56,911.911 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-22 21:33:00,157.157 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:33:00,160.160 INFO    ] Checking for system updates...
[2026-06-22 21:33:00,205.205 INFO    ] 200
[2026-06-22 21:33:00,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:33:00,271.271 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:33:00,274.274 INFO    ] No update needed
[2026-06-22 21:33:00,277.277 INFO    ] Checking for camera pi updates...
[2026-06-22 21:33:00,313.313 INFO    ] 200
[2026-06-22 21:33:00,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:33:00,359.359 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:33:00,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:33:00,540.540 INFO    ] No camera update needed
[2026-06-22 21:33:00,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:33:00,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:33:00,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:33:00,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:33:02,614.614 INFO    ] ================================================
[2026-06-22 21:33:02,632.632 INFO    ] Launching Daemon at Mon Jun 22 21:33:02 IST 2026
[2026-06-22 21:33:02,647.647 INFO    ] ================================================
[2026-06-22 21:33:03,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:33:03
[2026-06-22 21:33:04,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:33:04,349.349 INFO    ] Initializing speech engine...
[2026-06-22 21:33:04,355.355 INFO    ] 2026-06-22 21:33:04
[2026-06-22 21:33:04,666.666 INFO    ] 2026-06-22 21:33:04
[2026-06-22 21:33:04,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:33:05,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:33:05,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:33:05,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:33:05,409.409 INFO    ] time= 22/06/2026 21:33:05
[2026-06-22 21:33:05,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:33:05,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:33:05,614.614 INFO    ] No existing commands found in stream
[2026-06-22 21:33:10,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:33:10,635.635 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-22 21:33:13,450.450 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:33:13,453.453 INFO    ] Checking for system updates...
[2026-06-22 21:33:13,501.501 INFO    ] 200
[2026-06-22 21:33:13,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:33:13,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:33:13,581.581 INFO    ] No update needed
[2026-06-22 21:33:13,584.584 INFO    ] Checking for camera pi updates...
[2026-06-22 21:33:13,619.619 INFO    ] 200
[2026-06-22 21:33:13,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:33:13,665.665 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:33:13,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:33:13,773.773 INFO    ] No camera update needed
[2026-06-22 21:33:13,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:33:13,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:33:13,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:33:13,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:33:15,834.834 INFO    ] ================================================
[2026-06-22 21:33:15,849.849 INFO    ] Launching Daemon at Mon Jun 22 21:33:15 IST 2026
[2026-06-22 21:33:15,860.860 INFO    ] ================================================
[2026-06-22 21:33:16,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:33:16
[2026-06-22 21:33:17,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:33:17,273.273 INFO    ] Initializing speech engine...
[2026-06-22 21:33:17,292.292 INFO    ] 2026-06-22 21:33:17
[2026-06-22 21:33:17,545.545 INFO    ] 2026-06-22 21:33:17
[2026-06-22 21:33:17,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:33:17,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:33:17,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:33:17,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:33:17,968.968 INFO    ] time= 22/06/2026 21:33:17
[2026-06-22 21:33:17,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:33:18,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:33:18,126.126 INFO    ] No existing commands found in stream
[2026-06-22 21:33:23,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:33:23,139.139 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-22 21:33:24,592.592 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:33:24,595.595 INFO    ] Checking for system updates...
[2026-06-22 21:33:24,631.631 INFO    ] 200
[2026-06-22 21:33:24,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:33:24,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:33:24,697.697 INFO    ] No update needed
[2026-06-22 21:33:24,699.699 INFO    ] Checking for camera pi updates...
[2026-06-22 21:33:24,734.734 INFO    ] 200
[2026-06-22 21:33:24,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:33:24,777.777 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:33:24,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:33:24,855.855 INFO    ] No camera update needed
[2026-06-22 21:33:24,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:33:24,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:33:24,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:33:24,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:33:26,913.913 INFO    ] ================================================
[2026-06-22 21:33:26,929.929 INFO    ] Launching Daemon at Mon Jun 22 21:33:26 IST 2026
[2026-06-22 21:33:26,940.940 INFO    ] ================================================
[2026-06-22 21:33:27,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:33:27
[2026-06-22 21:33:28,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:33:28,346.346 INFO    ] Initializing speech engine...
[2026-06-22 21:33:28,353.353 INFO    ] 2026-06-22 21:33:28
[2026-06-22 21:33:28,644.644 INFO    ] 2026-06-22 21:33:28
[2026-06-22 21:33:28,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:33:30,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:33:30,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:33:31,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:33:31,240.240 INFO    ] time= 22/06/2026 21:33:31
[2026-06-22 21:33:31,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:33:31,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:33:31,364.364 INFO    ] No existing commands found in stream
[2026-06-22 21:33:36,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:33:36,387.387 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-22 21:33:38,992.992 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:33:38,995.995 INFO    ] Checking for system updates...
[2026-06-22 21:33:39,031.031 INFO    ] 200
[2026-06-22 21:33:39,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:33:39,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:33:39,090.090 INFO    ] No update needed
[2026-06-22 21:33:39,092.092 INFO    ] Checking for camera pi updates...
[2026-06-22 21:33:39,130.130 INFO    ] 200
[2026-06-22 21:33:39,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:33:39,172.172 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:33:39,254.254 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:33:39,257.257 INFO    ] No camera update needed
[2026-06-22 21:33:39,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:33:39,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:33:39,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:33:39,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:33:41,313.313 INFO    ] ================================================
[2026-06-22 21:33:41,329.329 INFO    ] Launching Daemon at Mon Jun 22 21:33:41 IST 2026
[2026-06-22 21:33:41,341.341 INFO    ] ================================================
[2026-06-22 21:33:41,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:33:41
[2026-06-22 21:33:42,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:33:42,747.747 INFO    ] Initializing speech engine...
[2026-06-22 21:33:42,755.755 INFO    ] 2026-06-22 21:33:42
[2026-06-22 21:33:43,029.029 INFO    ] 2026-06-22 21:33:43
[2026-06-22 21:33:43,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:33:43,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:33:43,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:33:43,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:33:43,408.408 INFO    ] time= 22/06/2026 21:33:43
[2026-06-22 21:33:43,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:33:43,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:33:43,592.592 INFO    ] No existing commands found in stream
[2026-06-22 21:33:48,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:33:48,624.624 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-22 21:33:52,192.192 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:33:52,195.195 INFO    ] Checking for system updates...
[2026-06-22 21:33:52,232.232 INFO    ] 200
[2026-06-22 21:33:52,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:33:52,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:33:52,299.299 INFO    ] No update needed
[2026-06-22 21:33:52,302.302 INFO    ] Checking for camera pi updates...
[2026-06-22 21:33:52,342.342 INFO    ] 200
[2026-06-22 21:33:52,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:33:52,387.387 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:33:52,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:33:52,474.474 INFO    ] No camera update needed
[2026-06-22 21:33:52,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:33:52,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:33:52,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:33:52,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:33:54,535.535 INFO    ] ================================================
[2026-06-22 21:33:54,551.551 INFO    ] Launching Daemon at Mon Jun 22 21:33:54 IST 2026
[2026-06-22 21:33:54,562.562 INFO    ] ================================================
[2026-06-22 21:33:55,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:33:55
[2026-06-22 21:33:55,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:33:56,088.088 INFO    ] Initializing speech engine...
[2026-06-22 21:33:56,100.100 INFO    ] 2026-06-22 21:33:56
[2026-06-22 21:33:56,364.364 INFO    ] 2026-06-22 21:33:56
[2026-06-22 21:33:56,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:33:59,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:33:59,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:34:01,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:34:01,589.589 INFO    ] time= 22/06/2026 21:34:01
[2026-06-22 21:34:01,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:34:01,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:34:01,646.646 INFO    ] No existing commands found in stream
[2026-06-22 21:34:06,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:34:06,658.658 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-22 21:34:07,528.528 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:34:07,531.531 INFO    ] Checking for system updates...
[2026-06-22 21:34:07,569.569 INFO    ] 200
[2026-06-22 21:34:07,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:34:07,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:34:07,627.627 INFO    ] No update needed
[2026-06-22 21:34:07,629.629 INFO    ] Checking for camera pi updates...
[2026-06-22 21:34:07,664.664 INFO    ] 200
[2026-06-22 21:34:07,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:34:07,707.707 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:34:07,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:34:07,796.796 INFO    ] No camera update needed
[2026-06-22 21:34:07,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:34:07,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:34:07,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:34:07,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:34:09,853.853 INFO    ] ================================================
[2026-06-22 21:34:09,868.868 INFO    ] Launching Daemon at Mon Jun 22 21:34:09 IST 2026
[2026-06-22 21:34:09,878.878 INFO    ] ================================================
[2026-06-22 21:34:10,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:34:10
[2026-06-22 21:34:10,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:34:11,244.244 INFO    ] Initializing speech engine...
[2026-06-22 21:34:11,253.253 INFO    ] 2026-06-22 21:34:11
[2026-06-22 21:34:11,503.503 INFO    ] 2026-06-22 21:34:11
[2026-06-22 21:34:11,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:34:11,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:34:11,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:34:12,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:34:12,101.101 INFO    ] time= 22/06/2026 21:34:12
[2026-06-22 21:34:12,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:34:12,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:34:12,213.213 INFO    ] No existing commands found in stream
[2026-06-22 21:34:17,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:34:17,240.240 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-22 21:34:20,772.772 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:34:20,773.773 INFO    ] Checking for system updates...
[2026-06-22 21:34:20,795.795 INFO    ] 200
[2026-06-22 21:34:20,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:34:20,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:34:20,831.831 INFO    ] No update needed
[2026-06-22 21:34:20,832.832 INFO    ] Checking for camera pi updates...
[2026-06-22 21:34:20,852.852 INFO    ] 200
[2026-06-22 21:34:20,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:34:20,880.880 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:34:20,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:34:20,963.963 INFO    ] No camera update needed
[2026-06-22 21:34:20,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:34:20,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:34:20,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:34:20,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:34:23,020.020 INFO    ] ================================================
[2026-06-22 21:34:23,035.035 INFO    ] Launching Daemon at Mon Jun 22 21:34:23 IST 2026
[2026-06-22 21:34:23,046.046 INFO    ] ================================================
[2026-06-22 21:34:23,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:34:23
[2026-06-22 21:34:24,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:34:24,473.473 INFO    ] Initializing speech engine...
[2026-06-22 21:34:24,479.479 INFO    ] 2026-06-22 21:34:24
[2026-06-22 21:34:24,778.778 INFO    ] 2026-06-22 21:34:24
[2026-06-22 21:34:24,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:34:25,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:34:25,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:34:25,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:34:25,203.203 INFO    ] time= 22/06/2026 21:34:25
[2026-06-22 21:34:25,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:34:25,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:34:25,290.290 INFO    ] No existing commands found in stream
[2026-06-22 21:34:30,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:34:30,303.303 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-22 21:34:32,914.914 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:34:32,916.916 INFO    ] Checking for system updates...
[2026-06-22 21:34:32,952.952 INFO    ] 200
[2026-06-22 21:34:32,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:34:33,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:34:33,011.011 INFO    ] No update needed
[2026-06-22 21:34:33,013.013 INFO    ] Checking for camera pi updates...
[2026-06-22 21:34:33,048.048 INFO    ] 200
[2026-06-22 21:34:33,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:34:33,090.090 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:34:33,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:34:33,180.180 INFO    ] No camera update needed
[2026-06-22 21:34:33,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:34:33,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:34:33,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:34:33,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:34:35,237.237 INFO    ] ================================================
[2026-06-22 21:34:35,252.252 INFO    ] Launching Daemon at Mon Jun 22 21:34:35 IST 2026
[2026-06-22 21:34:35,263.263 INFO    ] ================================================
[2026-06-22 21:34:35,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:34:35
[2026-06-22 21:34:36,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:34:36,679.679 INFO    ] Initializing speech engine...
[2026-06-22 21:34:36,694.694 INFO    ] 2026-06-22 21:34:36
[2026-06-22 21:34:36,980.980 INFO    ] 2026-06-22 21:34:36
[2026-06-22 21:34:37,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:34:37,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:34:37,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:34:37,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:34:37,402.402 INFO    ] time= 22/06/2026 21:34:37
[2026-06-22 21:34:37,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:34:37,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:34:37,495.495 INFO    ] No existing commands found in stream
[2026-06-22 21:34:42,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:34:42,528.528 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-22 21:34:43,476.476 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:34:43,478.478 INFO    ] Checking for system updates...
[2026-06-22 21:34:43,514.514 INFO    ] 200
[2026-06-22 21:34:43,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:34:43,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:34:43,571.571 INFO    ] No update needed
[2026-06-22 21:34:43,574.574 INFO    ] Checking for camera pi updates...
[2026-06-22 21:34:43,607.607 INFO    ] 200
[2026-06-22 21:34:43,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:34:43,657.657 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:34:43,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:34:43,748.748 INFO    ] No camera update needed
[2026-06-22 21:34:43,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:34:43,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:34:43,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:34:43,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:34:45,804.804 INFO    ] ================================================
[2026-06-22 21:34:45,820.820 INFO    ] Launching Daemon at Mon Jun 22 21:34:45 IST 2026
[2026-06-22 21:34:45,830.830 INFO    ] ================================================
[2026-06-22 21:34:46,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:34:46
[2026-06-22 21:34:47,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:34:47,286.286 INFO    ] Initializing speech engine...
[2026-06-22 21:34:47,294.294 INFO    ] 2026-06-22 21:34:47
[2026-06-22 21:34:47,538.538 INFO    ] 2026-06-22 21:34:47
[2026-06-22 21:34:47,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:34:47,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:34:47,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:34:47,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:34:48,034.034 INFO    ] time= 22/06/2026 21:34:47
[2026-06-22 21:34:48,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:34:48,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:34:48,234.234 INFO    ] No existing commands found in stream
[2026-06-22 21:34:53,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:34:53,261.261 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-22 21:34:54,046.046 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:34:54,048.048 INFO    ] Checking for system updates...
[2026-06-22 21:34:54,084.084 INFO    ] 200
[2026-06-22 21:34:54,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:34:54,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:34:54,141.141 INFO    ] No update needed
[2026-06-22 21:34:54,144.144 INFO    ] Checking for camera pi updates...
[2026-06-22 21:34:54,181.181 INFO    ] 200
[2026-06-22 21:34:54,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:34:54,225.225 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:34:54,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:34:54,332.332 INFO    ] No camera update needed
[2026-06-22 21:34:54,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:34:54,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:34:54,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:34:54,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:34:56,389.389 INFO    ] ================================================
[2026-06-22 21:34:56,404.404 INFO    ] Launching Daemon at Mon Jun 22 21:34:56 IST 2026
[2026-06-22 21:34:56,415.415 INFO    ] ================================================
[2026-06-22 21:34:57,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:34:57
[2026-06-22 21:34:57,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:34:57,856.856 INFO    ] Initializing speech engine...
[2026-06-22 21:34:57,865.865 INFO    ] 2026-06-22 21:34:57
[2026-06-22 21:34:58,113.113 INFO    ] 2026-06-22 21:34:58
[2026-06-22 21:34:58,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:35:02,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:35:02,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:35:03,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:35:03,417.417 INFO    ] time= 22/06/2026 21:35:03
[2026-06-22 21:35:03,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:35:03,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:35:08,431.431 INFO    ] Error reading historical messages: Timeout reading from socket
[2026-06-22 21:35:13,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:35:13,545.545 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-22 21:35:14,611.611 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:35:14,613.613 INFO    ] Checking for system updates...
[2026-06-22 21:35:14,650.650 INFO    ] 200
[2026-06-22 21:35:14,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:35:14,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:35:14,714.714 INFO    ] No update needed
[2026-06-22 21:35:14,717.717 INFO    ] Checking for camera pi updates...
[2026-06-22 21:35:14,750.750 INFO    ] 200
[2026-06-22 21:35:14,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:35:14,793.793 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:35:14,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:35:14,879.879 INFO    ] No camera update needed
[2026-06-22 21:35:14,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:35:14,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:35:14,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:35:14,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:35:16,935.935 INFO    ] ================================================
[2026-06-22 21:35:16,950.950 INFO    ] Launching Daemon at Mon Jun 22 21:35:16 IST 2026
[2026-06-22 21:35:16,962.962 INFO    ] ================================================
[2026-06-22 21:35:17,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:35:17
[2026-06-22 21:35:18,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:35:18,519.519 INFO    ] Initializing speech engine...
[2026-06-22 21:35:18,535.535 INFO    ] 2026-06-22 21:35:18
[2026-06-22 21:35:18,803.803 INFO    ] 2026-06-22 21:35:18
[2026-06-22 21:35:18,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:35:19,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:35:19,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:35:19,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:35:19,310.310 INFO    ] time= 22/06/2026 21:35:19
[2026-06-22 21:35:19,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:35:19,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:35:19,583.583 INFO    ] No existing commands found in stream
[2026-06-22 21:35:24,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:35:24,603.603 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-22 21:35:26,254.254 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:35:26,256.256 INFO    ] Checking for system updates...
[2026-06-22 21:35:26,278.278 INFO    ] 200
[2026-06-22 21:35:26,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:35:26,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:35:26,314.314 INFO    ] No update needed
[2026-06-22 21:35:26,316.316 INFO    ] Checking for camera pi updates...
[2026-06-22 21:35:26,336.336 INFO    ] 200
[2026-06-22 21:35:26,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:35:26,370.370 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:35:26,452.452 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:35:26,455.455 INFO    ] No camera update needed
[2026-06-22 21:35:26,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:35:26,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:35:26,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:35:26,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:35:28,517.517 INFO    ] ================================================
[2026-06-22 21:35:28,532.532 INFO    ] Launching Daemon at Mon Jun 22 21:35:28 IST 2026
[2026-06-22 21:35:28,543.543 INFO    ] ================================================
[2026-06-22 21:35:29,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:35:29
[2026-06-22 21:35:29,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:35:29,881.881 INFO    ] Initializing speech engine...
[2026-06-22 21:35:29,890.890 INFO    ] 2026-06-22 21:35:29
[2026-06-22 21:35:30,143.143 INFO    ] 2026-06-22 21:35:30
[2026-06-22 21:35:30,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:35:33,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:35:33,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:35:35,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:35:35,369.369 INFO    ] time= 22/06/2026 21:35:35
[2026-06-22 21:35:35,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:35:35,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:35:35,424.424 INFO    ] No existing commands found in stream
[2026-06-22 21:35:40,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:35:40,437.437 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-22 21:35:44,740.740 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:35:44,742.742 INFO    ] Checking for system updates...
[2026-06-22 21:35:44,762.762 INFO    ] 200
[2026-06-22 21:35:44,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:35:44,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:35:44,796.796 INFO    ] No update needed
[2026-06-22 21:35:44,797.797 INFO    ] Checking for camera pi updates...
[2026-06-22 21:35:44,820.820 INFO    ] 200
[2026-06-22 21:35:44,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:35:44,864.864 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:35:44,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:35:44,942.942 INFO    ] No camera update needed
[2026-06-22 21:35:44,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:35:44,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:35:44,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:35:44,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:35:47,998.998 INFO    ] ================================================
[2026-06-22 21:35:47,014.014 INFO    ] Launching Daemon at Mon Jun 22 21:35:47 IST 2026
[2026-06-22 21:35:47,025.025 INFO    ] ================================================
[2026-06-22 21:35:47,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:35:47
[2026-06-22 21:35:48,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:35:48,442.442 INFO    ] Initializing speech engine...
[2026-06-22 21:35:48,457.457 INFO    ] 2026-06-22 21:35:48
[2026-06-22 21:35:48,712.712 INFO    ] 2026-06-22 21:35:48
[2026-06-22 21:35:48,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:35:48,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:35:48,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:35:49,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:35:49,139.139 INFO    ] time= 22/06/2026 21:35:49
[2026-06-22 21:35:49,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:35:49,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:35:49,231.231 INFO    ] No existing commands found in stream
[2026-06-22 21:35:54,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:35:54,249.249 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-22 21:35:55,026.026 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:35:55,028.028 INFO    ] Checking for system updates...
[2026-06-22 21:35:55,051.051 INFO    ] 200
[2026-06-22 21:35:55,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:35:55,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:35:55,083.083 INFO    ] No update needed
[2026-06-22 21:35:55,085.085 INFO    ] Checking for camera pi updates...
[2026-06-22 21:35:55,109.109 INFO    ] 200
[2026-06-22 21:35:55,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:35:55,153.153 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:35:55,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:35:55,248.248 INFO    ] No camera update needed
[2026-06-22 21:35:55,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:35:55,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:35:55,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:35:55,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:35:57,306.306 INFO    ] ================================================
[2026-06-22 21:35:57,321.321 INFO    ] Launching Daemon at Mon Jun 22 21:35:57 IST 2026
[2026-06-22 21:35:57,331.331 INFO    ] ================================================
[2026-06-22 21:35:57,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:35:57
[2026-06-22 21:35:58,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:35:58,792.792 INFO    ] Initializing speech engine...
[2026-06-22 21:35:58,801.801 INFO    ] 2026-06-22 21:35:58
[2026-06-22 21:35:59,061.061 INFO    ] 2026-06-22 21:35:59
[2026-06-22 21:35:59,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:35:59,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:35:59,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:35:59,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:35:59,514.514 INFO    ] time= 22/06/2026 21:35:59
[2026-06-22 21:35:59,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:35:59,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:35:59,646.646 INFO    ] No existing commands found in stream
[2026-06-22 21:36:04,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:36:04,676.676 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-22 21:36:07,839.839 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:36:07,842.842 INFO    ] Checking for system updates...
[2026-06-22 21:36:07,879.879 INFO    ] 200
[2026-06-22 21:36:07,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:36:07,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:36:07,941.941 INFO    ] No update needed
[2026-06-22 21:36:07,944.944 INFO    ] Checking for camera pi updates...
[2026-06-22 21:36:07,980.980 INFO    ] 200
[2026-06-22 21:36:07,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:36:08,036.036 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:36:08,117.117 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:36:08,119.119 INFO    ] No camera update needed
[2026-06-22 21:36:08,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:36:08,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:36:08,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:36:08,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:36:10,173.173 INFO    ] ================================================
[2026-06-22 21:36:10,189.189 INFO    ] Launching Daemon at Mon Jun 22 21:36:10 IST 2026
[2026-06-22 21:36:10,199.199 INFO    ] ================================================
[2026-06-22 21:36:10,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:36:10
[2026-06-22 21:36:11,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:36:11,612.612 INFO    ] Initializing speech engine...
[2026-06-22 21:36:11,621.621 INFO    ] 2026-06-22 21:36:11
[2026-06-22 21:36:11,913.913 INFO    ] 2026-06-22 21:36:11
[2026-06-22 21:36:11,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:36:12,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:36:12,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:36:12,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:36:12,283.283 INFO    ] time= 22/06/2026 21:36:12
[2026-06-22 21:36:12,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:36:12,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:36:12,479.479 INFO    ] No existing commands found in stream
[2026-06-22 21:36:17,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:36:17,494.494 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-22 21:36:18,097.097 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:36:18,100.100 INFO    ] Checking for system updates...
[2026-06-22 21:36:18,137.137 INFO    ] 200
[2026-06-22 21:36:18,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:36:18,193.193 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:36:18,195.195 INFO    ] No update needed
[2026-06-22 21:36:18,198.198 INFO    ] Checking for camera pi updates...
[2026-06-22 21:36:18,232.232 INFO    ] 200
[2026-06-22 21:36:18,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:36:18,275.275 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:36:18,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:36:18,362.362 INFO    ] No camera update needed
[2026-06-22 21:36:18,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:36:18,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:36:18,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:36:18,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:36:20,418.418 INFO    ] ================================================
[2026-06-22 21:36:20,434.434 INFO    ] Launching Daemon at Mon Jun 22 21:36:20 IST 2026
[2026-06-22 21:36:20,444.444 INFO    ] ================================================
[2026-06-22 21:36:21,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:36:21
[2026-06-22 21:36:21,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:36:21,760.760 INFO    ] Initializing speech engine...
[2026-06-22 21:36:21,769.769 INFO    ] 2026-06-22 21:36:21
[2026-06-22 21:36:22,065.065 INFO    ] 2026-06-22 21:36:22
[2026-06-22 21:36:22,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:36:22,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:36:22,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:36:22,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:36:22,458.458 INFO    ] time= 22/06/2026 21:36:22
[2026-06-22 21:36:22,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:36:22,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:36:22,659.659 INFO    ] No existing commands found in stream
[2026-06-22 21:36:27,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:36:27,672.672 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-22 21:36:29,580.580 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:36:29,583.583 INFO    ] Checking for system updates...
[2026-06-22 21:36:29,624.624 INFO    ] 200
[2026-06-22 21:36:29,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:36:29,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:36:29,692.692 INFO    ] No update needed
[2026-06-22 21:36:29,695.695 INFO    ] Checking for camera pi updates...
[2026-06-22 21:36:29,731.731 INFO    ] 200
[2026-06-22 21:36:29,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:36:29,781.781 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:36:29,882.882 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:36:29,885.885 INFO    ] No camera update needed
[2026-06-22 21:36:29,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:36:29,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:36:29,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:36:29,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:36:31,947.947 INFO    ] ================================================
[2026-06-22 21:36:31,963.963 INFO    ] Launching Daemon at Mon Jun 22 21:36:31 IST 2026
[2026-06-22 21:36:31,974.974 INFO    ] ================================================
[2026-06-22 21:36:32,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:36:32
[2026-06-22 21:36:33,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:36:33,510.510 INFO    ] Initializing speech engine...
[2026-06-22 21:36:33,517.517 INFO    ] 2026-06-22 21:36:33
[2026-06-22 21:36:33,819.819 INFO    ] 2026-06-22 21:36:33
[2026-06-22 21:36:33,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:36:36,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:36:36,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:36:37,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:36:37,302.302 INFO    ] time= 22/06/2026 21:36:37
[2026-06-22 21:36:37,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:36:37,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:36:37,361.361 INFO    ] No existing commands found in stream
[2026-06-22 21:36:42,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:36:42,373.373 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-22 21:36:45,513.513 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:36:45,515.515 INFO    ] Checking for system updates...
[2026-06-22 21:36:45,537.537 INFO    ] 200
[2026-06-22 21:36:45,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:36:45,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:36:45,587.587 INFO    ] No update needed
[2026-06-22 21:36:45,590.590 INFO    ] Checking for camera pi updates...
[2026-06-22 21:36:45,628.628 INFO    ] 200
[2026-06-22 21:36:45,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:36:45,676.676 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:36:45,755.755 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:36:45,758.758 INFO    ] No camera update needed
[2026-06-22 21:36:45,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:36:45,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:36:45,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:36:45,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:36:47,813.813 INFO    ] ================================================
[2026-06-22 21:36:47,829.829 INFO    ] Launching Daemon at Mon Jun 22 21:36:47 IST 2026
[2026-06-22 21:36:47,839.839 INFO    ] ================================================
[2026-06-22 21:36:48,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:36:48
[2026-06-22 21:36:49,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:36:49,391.391 INFO    ] Initializing speech engine...
[2026-06-22 21:36:49,402.402 INFO    ] 2026-06-22 21:36:49
[2026-06-22 21:36:49,683.683 INFO    ] 2026-06-22 21:36:49
[2026-06-22 21:36:49,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:36:49,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:36:49,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:36:50,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:36:50,161.161 INFO    ] time= 22/06/2026 21:36:50
[2026-06-22 21:36:50,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:36:50,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:36:50,377.377 INFO    ] No existing commands found in stream
[2026-06-22 21:36:55,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:36:55,398.398 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-22 21:36:56,883.883 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:36:56,885.885 INFO    ] Checking for system updates...
[2026-06-22 21:36:56,906.906 INFO    ] 200
[2026-06-22 21:36:56,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:36:56,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:36:56,941.941 INFO    ] No update needed
[2026-06-22 21:36:56,942.942 INFO    ] Checking for camera pi updates...
[2026-06-22 21:36:56,972.972 INFO    ] 200
[2026-06-22 21:36:56,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:36:57,016.016 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:36:57,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:36:57,103.103 INFO    ] No camera update needed
[2026-06-22 21:36:57,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:36:57,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:36:57,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:36:57,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:36:59,158.158 INFO    ] ================================================
[2026-06-22 21:36:59,173.173 INFO    ] Launching Daemon at Mon Jun 22 21:36:59 IST 2026
[2026-06-22 21:36:59,183.183 INFO    ] ================================================
[2026-06-22 21:36:59,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:36:59
[2026-06-22 21:37:00,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:37:00,525.525 INFO    ] Initializing speech engine...
[2026-06-22 21:37:00,534.534 INFO    ] 2026-06-22 21:37:00
[2026-06-22 21:37:00,785.785 INFO    ] 2026-06-22 21:37:00
[2026-06-22 21:37:00,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:37:01,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:37:01,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:37:01,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:37:01,272.272 INFO    ] time= 22/06/2026 21:37:01
[2026-06-22 21:37:01,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:37:01,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:37:01,483.483 INFO    ] No existing commands found in stream
[2026-06-22 21:37:06,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:37:06,500.500 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-22 21:37:08,622.622 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:37:08,625.625 INFO    ] Checking for system updates...
[2026-06-22 21:37:08,661.661 INFO    ] 200
[2026-06-22 21:37:08,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:37:08,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:37:08,720.720 INFO    ] No update needed
[2026-06-22 21:37:08,722.722 INFO    ] Checking for camera pi updates...
[2026-06-22 21:37:08,756.756 INFO    ] 200
[2026-06-22 21:37:08,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:37:08,799.799 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:37:08,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:37:08,981.981 INFO    ] No camera update needed
[2026-06-22 21:37:08,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:37:08,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:37:08,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:37:08,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:37:11,036.036 INFO    ] ================================================
[2026-06-22 21:37:11,051.051 INFO    ] Launching Daemon at Mon Jun 22 21:37:11 IST 2026
[2026-06-22 21:37:11,062.062 INFO    ] ================================================
[2026-06-22 21:37:11,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:37:11
[2026-06-22 21:37:12,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:37:12,497.497 INFO    ] Initializing speech engine...
[2026-06-22 21:37:12,515.515 INFO    ] 2026-06-22 21:37:12
[2026-06-22 21:37:12,781.781 INFO    ] 2026-06-22 21:37:12
[2026-06-22 21:37:12,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:37:13,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:37:13,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:37:14,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:37:14,281.281 INFO    ] time= 22/06/2026 21:37:14
[2026-06-22 21:37:14,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:37:14,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:37:14,361.361 INFO    ] No existing commands found in stream
[2026-06-22 21:37:19,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:37:19,374.374 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-22 21:37:22,418.418 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:37:22,421.421 INFO    ] Checking for system updates...
[2026-06-22 21:37:22,457.457 INFO    ] 200
[2026-06-22 21:37:22,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:37:22,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:37:22,520.520 INFO    ] No update needed
[2026-06-22 21:37:22,522.522 INFO    ] Checking for camera pi updates...
[2026-06-22 21:37:22,559.559 INFO    ] 200
[2026-06-22 21:37:22,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:37:22,602.602 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:37:22,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:37:22,684.684 INFO    ] No camera update needed
[2026-06-22 21:37:22,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:37:22,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:37:22,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:37:22,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:37:24,739.739 INFO    ] ================================================
[2026-06-22 21:37:24,754.754 INFO    ] Launching Daemon at Mon Jun 22 21:37:24 IST 2026
[2026-06-22 21:37:24,765.765 INFO    ] ================================================
[2026-06-22 21:37:25,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:37:25
[2026-06-22 21:37:25,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:37:26,110.110 INFO    ] Initializing speech engine...
[2026-06-22 21:37:26,116.116 INFO    ] 2026-06-22 21:37:26
[2026-06-22 21:37:26,375.375 INFO    ] 2026-06-22 21:37:26
[2026-06-22 21:37:26,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:37:26,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:37:26,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:37:26,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:37:26,834.834 INFO    ] time= 22/06/2026 21:37:26
[2026-06-22 21:37:26,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:37:26,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:37:27,041.041 INFO    ] No existing commands found in stream
[2026-06-22 21:37:32,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:37:32,069.069 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-22 21:37:37,714.714 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:37:37,717.717 INFO    ] Checking for system updates...
[2026-06-22 21:37:37,753.753 INFO    ] 200
[2026-06-22 21:37:37,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:37:37,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:37:37,811.811 INFO    ] No update needed
[2026-06-22 21:37:37,813.813 INFO    ] Checking for camera pi updates...
[2026-06-22 21:37:37,848.848 INFO    ] 200
[2026-06-22 21:37:37,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:37:37,891.891 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:37:37,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:37:37,975.975 INFO    ] No camera update needed
[2026-06-22 21:37:37,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:37:37,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:37:37,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:37:37,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:37:40,030.030 INFO    ] ================================================
[2026-06-22 21:37:40,045.045 INFO    ] Launching Daemon at Mon Jun 22 21:37:40 IST 2026
[2026-06-22 21:37:40,056.056 INFO    ] ================================================
[2026-06-22 21:37:40,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:37:40
[2026-06-22 21:37:41,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:37:41,468.468 INFO    ] Initializing speech engine...
[2026-06-22 21:37:41,481.481 INFO    ] 2026-06-22 21:37:41
[2026-06-22 21:37:41,751.751 INFO    ] 2026-06-22 21:37:41
[2026-06-22 21:37:41,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:37:42,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:37:42,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:37:42,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:37:42,236.236 INFO    ] time= 22/06/2026 21:37:42
[2026-06-22 21:37:42,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:37:42,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:37:42,391.391 INFO    ] No existing commands found in stream
[2026-06-22 21:37:47,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:37:47,406.406 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-22 21:37:50,367.367 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:37:50,369.369 INFO    ] Checking for system updates...
[2026-06-22 21:37:50,405.405 INFO    ] 200
[2026-06-22 21:37:50,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:37:50,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:37:50,463.463 INFO    ] No update needed
[2026-06-22 21:37:50,466.466 INFO    ] Checking for camera pi updates...
[2026-06-22 21:37:50,500.500 INFO    ] 200
[2026-06-22 21:37:50,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:37:50,543.543 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:37:50,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:37:50,625.625 INFO    ] No camera update needed
[2026-06-22 21:37:50,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:37:50,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:37:50,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:37:50,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:37:52,681.681 INFO    ] ================================================
[2026-06-22 21:37:52,696.696 INFO    ] Launching Daemon at Mon Jun 22 21:37:52 IST 2026
[2026-06-22 21:37:52,707.707 INFO    ] ================================================
[2026-06-22 21:37:53,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:37:53
[2026-06-22 21:37:53,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:37:54,136.136 INFO    ] Initializing speech engine...
[2026-06-22 21:37:54,142.142 INFO    ] 2026-06-22 21:37:54
[2026-06-22 21:37:54,401.401 INFO    ] 2026-06-22 21:37:54
[2026-06-22 21:37:54,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:37:54,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:37:54,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:37:54,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:37:54,944.944 INFO    ] time= 22/06/2026 21:37:54
[2026-06-22 21:37:54,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:37:54,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:37:55,094.094 INFO    ] No existing commands found in stream
[2026-06-22 21:38:00,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:38:00,113.113 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-22 21:38:04,254.254 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:38:04,257.257 INFO    ] Checking for system updates...
[2026-06-22 21:38:04,293.293 INFO    ] 200
[2026-06-22 21:38:04,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:38:04,349.349 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:38:04,352.352 INFO    ] No update needed
[2026-06-22 21:38:04,354.354 INFO    ] Checking for camera pi updates...
[2026-06-22 21:38:04,388.388 INFO    ] 200
[2026-06-22 21:38:04,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:38:04,432.432 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:38:04,515.515 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:38:04,517.517 INFO    ] No camera update needed
[2026-06-22 21:38:04,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:38:04,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:38:04,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:38:04,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:38:06,575.575 INFO    ] ================================================
[2026-06-22 21:38:06,590.590 INFO    ] Launching Daemon at Mon Jun 22 21:38:06 IST 2026
[2026-06-22 21:38:06,601.601 INFO    ] ================================================
[2026-06-22 21:38:07,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:38:07
[2026-06-22 21:38:07,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:38:07,935.935 INFO    ] Initializing speech engine...
[2026-06-22 21:38:07,943.943 INFO    ] 2026-06-22 21:38:07
[2026-06-22 21:38:08,221.221 INFO    ] 2026-06-22 21:38:08
[2026-06-22 21:38:08,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:38:09,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:38:09,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:38:10,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:38:10,254.254 INFO    ] time= 22/06/2026 21:38:10
[2026-06-22 21:38:10,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:38:10,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:38:10,402.402 INFO    ] No existing commands found in stream
[2026-06-22 21:38:15,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:38:15,416.416 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-22 21:38:17,047.047 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:38:17,049.049 INFO    ] Checking for system updates...
[2026-06-22 21:38:17,080.080 INFO    ] 200
[2026-06-22 21:38:17,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:38:17,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:38:17,139.139 INFO    ] No update needed
[2026-06-22 21:38:17,142.142 INFO    ] Checking for camera pi updates...
[2026-06-22 21:38:17,177.177 INFO    ] 200
[2026-06-22 21:38:17,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:38:17,221.221 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:38:17,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:38:17,304.304 INFO    ] No camera update needed
[2026-06-22 21:38:17,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:38:17,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:38:17,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:38:17,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:38:19,363.363 INFO    ] ================================================
[2026-06-22 21:38:19,379.379 INFO    ] Launching Daemon at Mon Jun 22 21:38:19 IST 2026
[2026-06-22 21:38:19,390.390 INFO    ] ================================================
[2026-06-22 21:38:19,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:38:19
[2026-06-22 21:38:20,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:38:20,708.708 INFO    ] Initializing speech engine...
[2026-06-22 21:38:20,730.730 INFO    ] 2026-06-22 21:38:20
[2026-06-22 21:38:21,001.001 INFO    ] 2026-06-22 21:38:20
[2026-06-22 21:38:21,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:38:21,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:38:21,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:38:21,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:38:21,389.389 INFO    ] time= 22/06/2026 21:38:21
[2026-06-22 21:38:21,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:38:21,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:38:21,496.496 INFO    ] No existing commands found in stream
[2026-06-22 21:38:26,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:38:26,529.529 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-22 21:38:29,193.193 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:38:29,196.196 INFO    ] Checking for system updates...
[2026-06-22 21:38:29,236.236 INFO    ] 200
[2026-06-22 21:38:29,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 21:38:29,241.241 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-22 21:38:29,243.243 INFO    ] Checking for camera pi updates...
[2026-06-22 21:38:29,286.286 INFO    ] 200
[2026-06-22 21:38:29,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 21:38:29,292.292 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-22 21:38:29,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:38:29,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:38:29,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:38:29,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:38:31,342.342 INFO    ] ================================================
[2026-06-22 21:38:31,351.351 INFO    ] Launching Daemon at Mon Jun 22 21:38:31 IST 2026
[2026-06-22 21:38:31,358.358 INFO    ] ================================================
[2026-06-22 21:38:32,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:38:32
[2026-06-22 21:38:32,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:38:32,965.965 INFO    ] Initializing speech engine...
[2026-06-22 21:38:32,974.974 INFO    ] 2026-06-22 21:38:32
[2026-06-22 21:38:33,268.268 INFO    ] 2026-06-22 21:38:33
[2026-06-22 21:38:33,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:38:33,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:38:33,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:38:33,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:38:33,643.643 INFO    ] time= 22/06/2026 21:38:33
[2026-06-22 21:38:33,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:38:33,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:38:33,836.836 INFO    ] No existing commands found in stream
[2026-06-22 21:38:38,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:38:38,854.854 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-22 21:38:40,979.979 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:38:40,981.981 INFO    ] Checking for system updates...
[2026-06-22 21:38:41,024.024 INFO    ] 200
[2026-06-22 21:38:41,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:38:41,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:38:41,085.085 INFO    ] No update needed
[2026-06-22 21:38:41,087.087 INFO    ] Checking for camera pi updates...
[2026-06-22 21:38:41,123.123 INFO    ] 200
[2026-06-22 21:38:41,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:38:41,170.170 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:38:41,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:38:41,257.257 INFO    ] No camera update needed
[2026-06-22 21:38:41,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:38:41,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:38:41,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:38:41,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:38:43,315.315 INFO    ] ================================================
[2026-06-22 21:38:43,332.332 INFO    ] Launching Daemon at Mon Jun 22 21:38:43 IST 2026
[2026-06-22 21:38:43,343.343 INFO    ] ================================================
[2026-06-22 21:38:43,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:38:43
[2026-06-22 21:38:44,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:38:44,713.713 INFO    ] Initializing speech engine...
[2026-06-22 21:38:44,722.722 INFO    ] 2026-06-22 21:38:44
[2026-06-22 21:38:44,971.971 INFO    ] 2026-06-22 21:38:44
[2026-06-22 21:38:45,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:38:45,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:38:45,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:38:45,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:38:45,456.456 INFO    ] time= 22/06/2026 21:38:45
[2026-06-22 21:38:45,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:38:45,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:38:45,666.666 INFO    ] No existing commands found in stream
[2026-06-22 21:38:50,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:38:50,696.696 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-22 21:38:51,712.712 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:38:51,715.715 INFO    ] Checking for system updates...
[2026-06-22 21:38:51,752.752 INFO    ] 200
[2026-06-22 21:38:51,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:38:51,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:38:51,813.813 INFO    ] No update needed
[2026-06-22 21:38:51,816.816 INFO    ] Checking for camera pi updates...
[2026-06-22 21:38:51,853.853 INFO    ] 200
[2026-06-22 21:38:51,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:38:51,899.899 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:38:51,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:38:51,994.994 INFO    ] No camera update needed
[2026-06-22 21:38:51,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:38:52,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:38:52,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:38:52,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:38:54,054.054 INFO    ] ================================================
[2026-06-22 21:38:54,070.070 INFO    ] Launching Daemon at Mon Jun 22 21:38:54 IST 2026
[2026-06-22 21:38:54,081.081 INFO    ] ================================================
[2026-06-22 21:38:54,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:38:54
[2026-06-22 21:38:55,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:38:55,537.537 INFO    ] Initializing speech engine...
[2026-06-22 21:38:55,548.548 INFO    ] 2026-06-22 21:38:55
[2026-06-22 21:38:55,796.796 INFO    ] 2026-06-22 21:38:55
[2026-06-22 21:38:55,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:38:56,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:38:56,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:38:56,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:38:56,261.261 INFO    ] time= 22/06/2026 21:38:56
[2026-06-22 21:38:56,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:38:56,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:38:56,505.505 INFO    ] No existing commands found in stream
[2026-06-22 21:39:01,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:39:01,519.519 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-22 21:39:02,741.741 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:39:02,744.744 INFO    ] Checking for system updates...
[2026-06-22 21:39:02,812.812 INFO    ] 200
[2026-06-22 21:39:02,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:39:02,885.885 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:39:02,892.892 INFO    ] No update needed
[2026-06-22 21:39:02,897.897 INFO    ] Checking for camera pi updates...
[2026-06-22 21:39:02,938.938 INFO    ] 200
[2026-06-22 21:39:02,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:39:03,008.008 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:39:03,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:39:03,098.098 INFO    ] No camera update needed
[2026-06-22 21:39:03,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:39:03,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:39:03,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:39:03,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:39:05,159.159 INFO    ] ================================================
[2026-06-22 21:39:05,175.175 INFO    ] Launching Daemon at Mon Jun 22 21:39:05 IST 2026
[2026-06-22 21:39:05,186.186 INFO    ] ================================================
[2026-06-22 21:39:05,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:39:05
[2026-06-22 21:39:06,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:39:06,632.632 INFO    ] Initializing speech engine...
[2026-06-22 21:39:06,646.646 INFO    ] 2026-06-22 21:39:06
[2026-06-22 21:39:06,908.908 INFO    ] 2026-06-22 21:39:06
[2026-06-22 21:39:06,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:39:10,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:39:10,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:39:12,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:39:12,661.661 INFO    ] time= 22/06/2026 21:39:12
[2026-06-22 21:39:12,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:39:12,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:39:12,718.718 INFO    ] No existing commands found in stream
[2026-06-22 21:39:17,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:39:17,729.729 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-22 21:39:22,129.129 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:39:22,132.132 INFO    ] Checking for system updates...
[2026-06-22 21:39:22,174.174 INFO    ] 200
[2026-06-22 21:39:22,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:39:22,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:39:22,245.245 INFO    ] No update needed
[2026-06-22 21:39:22,248.248 INFO    ] Checking for camera pi updates...
[2026-06-22 21:39:22,285.285 INFO    ] 200
[2026-06-22 21:39:22,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:39:22,334.334 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:39:22,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:39:22,516.516 INFO    ] No camera update needed
[2026-06-22 21:39:22,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:39:22,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:39:22,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:39:22,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:39:24,576.576 INFO    ] ================================================
[2026-06-22 21:39:24,592.592 INFO    ] Launching Daemon at Mon Jun 22 21:39:24 IST 2026
[2026-06-22 21:39:24,603.603 INFO    ] ================================================
[2026-06-22 21:39:25,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:39:25
[2026-06-22 21:39:25,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:39:26,097.097 INFO    ] Initializing speech engine...
[2026-06-22 21:39:26,105.105 INFO    ] 2026-06-22 21:39:26
[2026-06-22 21:39:26,378.378 INFO    ] 2026-06-22 21:39:26
[2026-06-22 21:39:26,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:39:26,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:39:26,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:39:26,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:39:26,759.759 INFO    ] time= 22/06/2026 21:39:26
[2026-06-22 21:39:26,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:39:26,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:39:26,961.961 INFO    ] No existing commands found in stream
[2026-06-22 21:39:31,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:39:31,976.976 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-22 21:39:34,875.875 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:39:34,878.878 INFO    ] Checking for system updates...
[2026-06-22 21:39:34,914.914 INFO    ] 200
[2026-06-22 21:39:34,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:39:34,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:39:34,973.973 INFO    ] No update needed
[2026-06-22 21:39:34,975.975 INFO    ] Checking for camera pi updates...
[2026-06-22 21:39:35,010.010 INFO    ] 200
[2026-06-22 21:39:35,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:39:35,054.054 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:39:35,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:39:35,149.149 INFO    ] No camera update needed
[2026-06-22 21:39:35,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:39:35,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:39:35,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:39:35,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:39:37,205.205 INFO    ] ================================================
[2026-06-22 21:39:37,221.221 INFO    ] Launching Daemon at Mon Jun 22 21:39:37 IST 2026
[2026-06-22 21:39:37,232.232 INFO    ] ================================================
[2026-06-22 21:39:37,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:39:37
[2026-06-22 21:39:38,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:39:38,624.624 INFO    ] Initializing speech engine...
[2026-06-22 21:39:38,634.634 INFO    ] 2026-06-22 21:39:38
[2026-06-22 21:39:38,884.884 INFO    ] 2026-06-22 21:39:38
[2026-06-22 21:39:38,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:39:42,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:39:42,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:39:42,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:39:42,952.952 INFO    ] time= 22/06/2026 21:39:42
[2026-06-22 21:39:42,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:39:42,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:39:43,097.097 INFO    ] No existing commands found in stream
[2026-06-22 21:39:48,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:39:48,109.109 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-22 21:39:48,876.876 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:39:48,879.879 INFO    ] Checking for system updates...
[2026-06-22 21:39:48,915.915 INFO    ] 200
[2026-06-22 21:39:48,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:39:48,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:39:48,972.972 INFO    ] No update needed
[2026-06-22 21:39:48,975.975 INFO    ] Checking for camera pi updates...
[2026-06-22 21:39:49,013.013 INFO    ] 200
[2026-06-22 21:39:49,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:39:49,057.057 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:39:49,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:39:49,150.150 INFO    ] No camera update needed
[2026-06-22 21:39:49,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:39:49,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:39:49,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:39:49,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:39:51,208.208 INFO    ] ================================================
[2026-06-22 21:39:51,224.224 INFO    ] Launching Daemon at Mon Jun 22 21:39:51 IST 2026
[2026-06-22 21:39:51,236.236 INFO    ] ================================================
[2026-06-22 21:39:51,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:39:51
[2026-06-22 21:39:52,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:39:52,806.806 INFO    ] Initializing speech engine...
[2026-06-22 21:39:52,818.818 INFO    ] 2026-06-22 21:39:52
[2026-06-22 21:39:53,108.108 INFO    ] 2026-06-22 21:39:53
[2026-06-22 21:39:53,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:39:53,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:39:53,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:39:53,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:39:53,640.640 INFO    ] time= 22/06/2026 21:39:53
[2026-06-22 21:39:53,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:39:53,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:39:53,795.795 INFO    ] No existing commands found in stream
[2026-06-22 21:39:58,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:39:58,819.819 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-22 21:40:01,281.281 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:40:01,284.284 INFO    ] Checking for system updates...
[2026-06-22 21:40:01,322.322 INFO    ] 200
[2026-06-22 21:40:01,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:40:01,379.379 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:40:01,382.382 INFO    ] No update needed
[2026-06-22 21:40:01,385.385 INFO    ] Checking for camera pi updates...
[2026-06-22 21:40:01,420.420 INFO    ] 200
[2026-06-22 21:40:01,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:40:01,465.465 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:40:01,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:40:01,591.591 INFO    ] No camera update needed
[2026-06-22 21:40:01,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:40:01,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:40:01,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:40:01,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:40:03,732.732 INFO    ] ================================================
[2026-06-22 21:40:03,747.747 INFO    ] Launching Daemon at Mon Jun 22 21:40:03 IST 2026
[2026-06-22 21:40:03,759.759 INFO    ] ================================================
[2026-06-22 21:40:04,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:40:04
[2026-06-22 21:40:04,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:40:05,221.221 INFO    ] Initializing speech engine...
[2026-06-22 21:40:05,228.228 INFO    ] 2026-06-22 21:40:05
[2026-06-22 21:40:05,503.503 INFO    ] 2026-06-22 21:40:05
[2026-06-22 21:40:05,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:40:05,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:40:05,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:40:06,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:40:06,038.038 INFO    ] time= 22/06/2026 21:40:06
[2026-06-22 21:40:06,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:40:06,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:40:06,193.193 INFO    ] No existing commands found in stream
[2026-06-22 21:40:11,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:40:11,225.225 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-22 21:40:14,497.497 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:40:14,500.500 INFO    ] Checking for system updates...
[2026-06-22 21:40:14,536.536 INFO    ] 200
[2026-06-22 21:40:14,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:40:14,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:40:14,594.594 INFO    ] No update needed
[2026-06-22 21:40:14,596.596 INFO    ] Checking for camera pi updates...
[2026-06-22 21:40:14,635.635 INFO    ] 200
[2026-06-22 21:40:14,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:40:14,679.679 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:40:14,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:40:14,757.757 INFO    ] No camera update needed
[2026-06-22 21:40:14,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:40:14,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:40:14,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:40:14,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:40:16,819.819 INFO    ] ================================================
[2026-06-22 21:40:16,837.837 INFO    ] Launching Daemon at Mon Jun 22 21:40:16 IST 2026
[2026-06-22 21:40:16,849.849 INFO    ] ================================================
[2026-06-22 21:40:17,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:40:17
[2026-06-22 21:40:17,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:40:18,205.205 INFO    ] Initializing speech engine...
[2026-06-22 21:40:18,212.212 INFO    ] 2026-06-22 21:40:18
[2026-06-22 21:40:18,473.473 INFO    ] 2026-06-22 21:40:18
[2026-06-22 21:40:18,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:40:18,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:40:18,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:40:18,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:40:18,921.921 INFO    ] time= 22/06/2026 21:40:18
[2026-06-22 21:40:18,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:40:19,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:40:19,166.166 INFO    ] No existing commands found in stream
[2026-06-22 21:40:24,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:40:24,186.186 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-22 21:40:24,840.840 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:40:24,843.843 INFO    ] Checking for system updates...
[2026-06-22 21:40:24,881.881 INFO    ] 200
[2026-06-22 21:40:24,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:40:24,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:40:24,940.940 INFO    ] No update needed
[2026-06-22 21:40:24,943.943 INFO    ] Checking for camera pi updates...
[2026-06-22 21:40:24,978.978 INFO    ] 200
[2026-06-22 21:40:24,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:40:25,028.028 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:40:25,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:40:25,125.125 INFO    ] No camera update needed
[2026-06-22 21:40:25,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:40:25,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:40:25,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:40:25,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:40:27,186.186 INFO    ] ================================================
[2026-06-22 21:40:27,202.202 INFO    ] Launching Daemon at Mon Jun 22 21:40:27 IST 2026
[2026-06-22 21:40:27,214.214 INFO    ] ================================================
[2026-06-22 21:40:27,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:40:27
[2026-06-22 21:40:28,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:40:28,802.802 INFO    ] Initializing speech engine...
[2026-06-22 21:40:28,815.815 INFO    ] 2026-06-22 21:40:28
[2026-06-22 21:40:29,079.079 INFO    ] 2026-06-22 21:40:29
[2026-06-22 21:40:29,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:40:29,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:40:29,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:40:29,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:40:29,509.509 INFO    ] time= 22/06/2026 21:40:29
[2026-06-22 21:40:29,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:40:29,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:40:29,655.655 INFO    ] No existing commands found in stream
[2026-06-22 21:40:34,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:40:34,687.687 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-22 21:40:36,939.939 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:40:36,942.942 INFO    ] Checking for system updates...
[2026-06-22 21:40:36,978.978 INFO    ] 200
[2026-06-22 21:40:36,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:40:37,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:40:37,037.037 INFO    ] No update needed
[2026-06-22 21:40:37,039.039 INFO    ] Checking for camera pi updates...
[2026-06-22 21:40:37,073.073 INFO    ] 200
[2026-06-22 21:40:37,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:40:37,118.118 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:40:37,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:40:37,205.205 INFO    ] No camera update needed
[2026-06-22 21:40:37,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:40:37,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:40:37,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:40:37,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:40:39,259.259 INFO    ] ================================================
[2026-06-22 21:40:39,275.275 INFO    ] Launching Daemon at Mon Jun 22 21:40:39 IST 2026
[2026-06-22 21:40:39,286.286 INFO    ] ================================================
[2026-06-22 21:40:39,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:40:39
[2026-06-22 21:40:40,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:40:40,883.883 INFO    ] Initializing speech engine...
[2026-06-22 21:40:40,891.891 INFO    ] 2026-06-22 21:40:40
[2026-06-22 21:40:41,155.155 INFO    ] 2026-06-22 21:40:41
[2026-06-22 21:40:41,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:40:44,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:40:44,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:40:46,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:40:46,193.193 INFO    ] time= 22/06/2026 21:40:46
[2026-06-22 21:40:46,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:40:46,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:40:46,302.302 INFO    ] No existing commands found in stream
[2026-06-22 21:40:51,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:40:51,315.315 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-22 21:40:52,966.966 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:40:52,967.967 INFO    ] Checking for system updates...
[2026-06-22 21:40:52,988.988 INFO    ] 200
[2026-06-22 21:40:52,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:40:53,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:40:53,022.022 INFO    ] No update needed
[2026-06-22 21:40:53,023.023 INFO    ] Checking for camera pi updates...
[2026-06-22 21:40:53,057.057 INFO    ] 200
[2026-06-22 21:40:53,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:40:53,113.113 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:40:53,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:40:53,202.202 INFO    ] No camera update needed
[2026-06-22 21:40:53,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:40:53,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:40:53,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:40:53,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:40:55,260.260 INFO    ] ================================================
[2026-06-22 21:40:55,276.276 INFO    ] Launching Daemon at Mon Jun 22 21:40:55 IST 2026
[2026-06-22 21:40:55,287.287 INFO    ] ================================================
[2026-06-22 21:40:55,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:40:55
[2026-06-22 21:40:56,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:40:56,712.712 INFO    ] Initializing speech engine...
[2026-06-22 21:40:56,721.721 INFO    ] 2026-06-22 21:40:56
[2026-06-22 21:40:56,967.967 INFO    ] 2026-06-22 21:40:56
[2026-06-22 21:40:57,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:40:57,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:40:57,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:40:57,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:40:57,520.520 INFO    ] time= 22/06/2026 21:40:57
[2026-06-22 21:40:57,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:40:57,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:40:57,673.673 INFO    ] No existing commands found in stream
[2026-06-22 21:41:02,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:41:02,690.690 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-22 21:41:05,692.692 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:41:05,695.695 INFO    ] Checking for system updates...
[2026-06-22 21:41:05,730.730 INFO    ] 200
[2026-06-22 21:41:05,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:41:05,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:41:05,788.788 INFO    ] No update needed
[2026-06-22 21:41:05,791.791 INFO    ] Checking for camera pi updates...
[2026-06-22 21:41:05,825.825 INFO    ] 200
[2026-06-22 21:41:05,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:41:05,874.874 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:41:05,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:41:05,960.960 INFO    ] No camera update needed
[2026-06-22 21:41:05,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:41:05,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:41:05,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:41:05,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:41:08,016.016 INFO    ] ================================================
[2026-06-22 21:41:08,032.032 INFO    ] Launching Daemon at Mon Jun 22 21:41:08 IST 2026
[2026-06-22 21:41:08,043.043 INFO    ] ================================================
[2026-06-22 21:41:08,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:41:08
[2026-06-22 21:41:09,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:41:09,690.690 INFO    ] Initializing speech engine...
[2026-06-22 21:41:09,701.701 INFO    ] 2026-06-22 21:41:09
[2026-06-22 21:41:10,001.001 INFO    ] 2026-06-22 21:41:09
[2026-06-22 21:41:10,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:41:10,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:41:10,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:41:10,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:41:10,433.433 INFO    ] time= 22/06/2026 21:41:10
[2026-06-22 21:41:10,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:41:10,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:41:10,590.590 INFO    ] No existing commands found in stream
[2026-06-22 21:41:15,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:41:15,628.628 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-22 21:41:18,365.365 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:41:18,369.369 INFO    ] Checking for system updates...
[2026-06-22 21:41:18,421.421 INFO    ] 200
[2026-06-22 21:41:18,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:41:18,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:41:18,482.482 INFO    ] No update needed
[2026-06-22 21:41:18,485.485 INFO    ] Checking for camera pi updates...
[2026-06-22 21:41:18,521.521 INFO    ] 200
[2026-06-22 21:41:18,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:41:18,566.566 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:41:18,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:41:18,655.655 INFO    ] No camera update needed
[2026-06-22 21:41:18,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:41:18,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:41:18,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:41:18,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:41:20,715.715 INFO    ] ================================================
[2026-06-22 21:41:20,731.731 INFO    ] Launching Daemon at Mon Jun 22 21:41:20 IST 2026
[2026-06-22 21:41:20,743.743 INFO    ] ================================================
[2026-06-22 21:41:21,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:41:21
[2026-06-22 21:41:21,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:41:22,306.306 INFO    ] Initializing speech engine...
[2026-06-22 21:41:22,318.318 INFO    ] 2026-06-22 21:41:22
[2026-06-22 21:41:22,628.628 INFO    ] 2026-06-22 21:41:22
[2026-06-22 21:41:22,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:41:22,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:41:22,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:41:23,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:41:23,142.142 INFO    ] time= 22/06/2026 21:41:23
[2026-06-22 21:41:23,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:41:23,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:41:23,336.336 INFO    ] No existing commands found in stream
[2026-06-22 21:41:28,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:41:28,370.370 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-22 21:41:30,088.088 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:41:30,090.090 INFO    ] Checking for system updates...
[2026-06-22 21:41:30,111.111 INFO    ] 200
[2026-06-22 21:41:30,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:41:30,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:41:30,147.147 INFO    ] No update needed
[2026-06-22 21:41:30,148.148 INFO    ] Checking for camera pi updates...
[2026-06-22 21:41:30,180.180 INFO    ] 200
[2026-06-22 21:41:30,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:41:30,226.226 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:41:30,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:41:30,312.312 INFO    ] No camera update needed
[2026-06-22 21:41:30,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:41:30,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:41:30,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:41:30,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:41:32,372.372 INFO    ] ================================================
[2026-06-22 21:41:32,392.392 INFO    ] Launching Daemon at Mon Jun 22 21:41:32 IST 2026
[2026-06-22 21:41:32,406.406 INFO    ] ================================================
[2026-06-22 21:41:33,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:41:33
[2026-06-22 21:41:33,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:41:33,938.938 INFO    ] Initializing speech engine...
[2026-06-22 21:41:33,958.958 INFO    ] 2026-06-22 21:41:33
[2026-06-22 21:41:34,204.204 INFO    ] 2026-06-22 21:41:34
[2026-06-22 21:41:34,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:41:34,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:41:34,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:41:34,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:41:34,676.676 INFO    ] time= 22/06/2026 21:41:34
[2026-06-22 21:41:34,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:41:34,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:41:34,901.901 INFO    ] No existing commands found in stream
[2026-06-22 21:41:39,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:41:39,929.929 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-22 21:41:47,201.201 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:41:47,204.204 INFO    ] Checking for system updates...
[2026-06-22 21:41:47,240.240 INFO    ] 200
[2026-06-22 21:41:47,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:41:47,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:41:47,297.297 INFO    ] No update needed
[2026-06-22 21:41:47,300.300 INFO    ] Checking for camera pi updates...
[2026-06-22 21:41:47,334.334 INFO    ] 200
[2026-06-22 21:41:47,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:41:47,378.378 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:41:47,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:41:47,463.463 INFO    ] No camera update needed
[2026-06-22 21:41:47,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:41:47,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:41:47,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:41:47,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:41:49,521.521 INFO    ] ================================================
[2026-06-22 21:41:49,537.537 INFO    ] Launching Daemon at Mon Jun 22 21:41:49 IST 2026
[2026-06-22 21:41:49,547.547 INFO    ] ================================================
[2026-06-22 21:41:50,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:41:50
[2026-06-22 21:41:50,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:41:50,974.974 INFO    ] Initializing speech engine...
[2026-06-22 21:41:50,982.982 INFO    ] 2026-06-22 21:41:50
[2026-06-22 21:41:51,230.230 INFO    ] 2026-06-22 21:41:51
[2026-06-22 21:41:51,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:41:51,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:41:51,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:41:51,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:41:51,706.706 INFO    ] time= 22/06/2026 21:41:51
[2026-06-22 21:41:51,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:41:51,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:41:51,912.912 INFO    ] No existing commands found in stream
[2026-06-22 21:41:56,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:41:56,945.945 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-22 21:42:00,227.227 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:42:00,228.228 INFO    ] Checking for system updates...
[2026-06-22 21:42:00,249.249 INFO    ] 200
[2026-06-22 21:42:00,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:42:00,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:42:00,283.283 INFO    ] No update needed
[2026-06-22 21:42:00,287.287 INFO    ] Checking for camera pi updates...
[2026-06-22 21:42:00,307.307 INFO    ] 200
[2026-06-22 21:42:00,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:42:00,342.342 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:42:00,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:42:00,427.427 INFO    ] No camera update needed
[2026-06-22 21:42:00,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:42:00,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:42:00,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:42:00,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:42:02,493.493 INFO    ] ================================================
[2026-06-22 21:42:02,514.514 INFO    ] Launching Daemon at Mon Jun 22 21:42:02 IST 2026
[2026-06-22 21:42:02,528.528 INFO    ] ================================================
[2026-06-22 21:42:03,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:42:03
[2026-06-22 21:42:03,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:42:04,170.170 INFO    ] Initializing speech engine...
[2026-06-22 21:42:04,183.183 INFO    ] 2026-06-22 21:42:04
[2026-06-22 21:42:04,433.433 INFO    ] 2026-06-22 21:42:04
[2026-06-22 21:42:04,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:42:04,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:42:04,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:42:05,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:42:05,036.036 INFO    ] time= 22/06/2026 21:42:05
[2026-06-22 21:42:05,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:42:05,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:42:05,228.228 INFO    ] No existing commands found in stream
[2026-06-22 21:42:10,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:42:10,251.251 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-22 21:42:10,865.865 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:42:10,868.868 INFO    ] Checking for system updates...
[2026-06-22 21:42:10,909.909 INFO    ] 200
[2026-06-22 21:42:10,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:42:10,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:42:10,967.967 INFO    ] No update needed
[2026-06-22 21:42:10,969.969 INFO    ] Checking for camera pi updates...
[2026-06-22 21:42:11,003.003 INFO    ] 200
[2026-06-22 21:42:11,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:42:11,053.053 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:42:11,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:42:11,152.152 INFO    ] No camera update needed
[2026-06-22 21:42:11,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:42:11,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:42:11,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:42:11,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:42:13,210.210 INFO    ] ================================================
[2026-06-22 21:42:13,225.225 INFO    ] Launching Daemon at Mon Jun 22 21:42:13 IST 2026
[2026-06-22 21:42:13,236.236 INFO    ] ================================================
[2026-06-22 21:42:13,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:42:13
[2026-06-22 21:42:14,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:42:14,638.638 INFO    ] Initializing speech engine...
[2026-06-22 21:42:14,653.653 INFO    ] 2026-06-22 21:42:14
[2026-06-22 21:42:14,919.919 INFO    ] 2026-06-22 21:42:14
[2026-06-22 21:42:14,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:42:17,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:42:17,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:42:18,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:42:18,762.762 INFO    ] time= 22/06/2026 21:42:18
[2026-06-22 21:42:18,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:42:18,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:42:18,815.815 INFO    ] No existing commands found in stream
[2026-06-22 21:42:23,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:42:23,903.903 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-22 21:42:26,052.052 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:42:26,055.055 INFO    ] Checking for system updates...
[2026-06-22 21:42:26,092.092 INFO    ] 200
[2026-06-22 21:42:26,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:42:26,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:42:26,151.151 INFO    ] No update needed
[2026-06-22 21:42:26,153.153 INFO    ] Checking for camera pi updates...
[2026-06-22 21:42:26,187.187 INFO    ] 200
[2026-06-22 21:42:26,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:42:26,237.237 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:42:26,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:42:26,324.324 INFO    ] No camera update needed
[2026-06-22 21:42:26,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:42:26,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:42:26,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:42:26,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:42:28,380.380 INFO    ] ================================================
[2026-06-22 21:42:28,395.395 INFO    ] Launching Daemon at Mon Jun 22 21:42:28 IST 2026
[2026-06-22 21:42:28,406.406 INFO    ] ================================================
[2026-06-22 21:42:28,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:42:28
[2026-06-22 21:42:29,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:42:29,818.818 INFO    ] Initializing speech engine...
[2026-06-22 21:42:29,840.840 INFO    ] 2026-06-22 21:42:29
[2026-06-22 21:42:30,101.101 INFO    ] 2026-06-22 21:42:30
[2026-06-22 21:42:30,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:42:30,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:42:30,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:42:30,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:42:30,589.589 INFO    ] time= 22/06/2026 21:42:30
[2026-06-22 21:42:30,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:42:30,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:42:30,820.820 INFO    ] No existing commands found in stream
[2026-06-22 21:42:35,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:42:35,844.844 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-22 21:42:39,790.790 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:42:39,793.793 INFO    ] Checking for system updates...
[2026-06-22 21:42:39,833.833 INFO    ] 200
[2026-06-22 21:42:39,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:42:39,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:42:39,898.898 INFO    ] No update needed
[2026-06-22 21:42:39,901.901 INFO    ] Checking for camera pi updates...
[2026-06-22 21:42:39,938.938 INFO    ] 200
[2026-06-22 21:42:39,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:42:39,982.982 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:42:40,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:42:40,068.068 INFO    ] No camera update needed
[2026-06-22 21:42:40,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:42:40,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:42:40,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:42:40,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:42:42,124.124 INFO    ] ================================================
[2026-06-22 21:42:42,139.139 INFO    ] Launching Daemon at Mon Jun 22 21:42:42 IST 2026
[2026-06-22 21:42:42,149.149 INFO    ] ================================================
[2026-06-22 21:42:42,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:42:42
[2026-06-22 21:42:43,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:42:43,619.619 INFO    ] Initializing speech engine...
[2026-06-22 21:42:43,628.628 INFO    ] 2026-06-22 21:42:43
[2026-06-22 21:42:43,888.888 INFO    ] 2026-06-22 21:42:43
[2026-06-22 21:42:43,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:42:44,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:42:44,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:42:44,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:42:44,379.379 INFO    ] time= 22/06/2026 21:42:44
[2026-06-22 21:42:44,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:42:44,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:42:44,590.590 INFO    ] No existing commands found in stream
[2026-06-22 21:42:49,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:42:49,606.606 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-22 21:42:52,924.924 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:42:52,927.927 INFO    ] Checking for system updates...
[2026-06-22 21:42:52,963.963 INFO    ] 200
[2026-06-22 21:42:52,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:42:53,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:42:53,033.033 INFO    ] No update needed
[2026-06-22 21:42:53,036.036 INFO    ] Checking for camera pi updates...
[2026-06-22 21:42:53,071.071 INFO    ] 200
[2026-06-22 21:42:53,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:42:53,116.116 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:42:53,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:42:53,214.214 INFO    ] No camera update needed
[2026-06-22 21:42:53,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:42:53,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:42:53,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:42:53,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:42:55,275.275 INFO    ] ================================================
[2026-06-22 21:42:55,291.291 INFO    ] Launching Daemon at Mon Jun 22 21:42:55 IST 2026
[2026-06-22 21:42:55,301.301 INFO    ] ================================================
[2026-06-22 21:42:55,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:42:55
[2026-06-22 21:42:56,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:42:56,679.679 INFO    ] Initializing speech engine...
[2026-06-22 21:42:56,691.691 INFO    ] 2026-06-22 21:42:56
[2026-06-22 21:42:56,959.959 INFO    ] 2026-06-22 21:42:56
[2026-06-22 21:42:56,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:42:57,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:42:57,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:42:57,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:42:57,399.399 INFO    ] time= 22/06/2026 21:42:57
[2026-06-22 21:42:57,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:42:57,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:42:57,592.592 INFO    ] No existing commands found in stream
[2026-06-22 21:43:02,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:43:02,627.627 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-22 21:43:04,481.481 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:43:04,484.484 INFO    ] Checking for system updates...
[2026-06-22 21:43:04,521.521 INFO    ] 200
[2026-06-22 21:43:04,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:43:04,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:43:04,583.583 INFO    ] No update needed
[2026-06-22 21:43:04,586.586 INFO    ] Checking for camera pi updates...
[2026-06-22 21:43:04,623.623 INFO    ] 200
[2026-06-22 21:43:04,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:43:04,667.667 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:43:04,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:43:04,752.752 INFO    ] No camera update needed
[2026-06-22 21:43:04,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:43:04,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:43:04,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:43:04,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:43:06,809.809 INFO    ] ================================================
[2026-06-22 21:43:06,824.824 INFO    ] Launching Daemon at Mon Jun 22 21:43:06 IST 2026
[2026-06-22 21:43:06,835.835 INFO    ] ================================================
[2026-06-22 21:43:07,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:43:07
[2026-06-22 21:43:07,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:43:08,262.262 INFO    ] Initializing speech engine...
[2026-06-22 21:43:08,272.272 INFO    ] 2026-06-22 21:43:08
[2026-06-22 21:43:08,520.520 INFO    ] 2026-06-22 21:43:08
[2026-06-22 21:43:08,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:43:08,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:43:08,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:43:09,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:43:09,078.078 INFO    ] time= 22/06/2026 21:43:09
[2026-06-22 21:43:09,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:43:09,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:43:09,237.237 INFO    ] No existing commands found in stream
[2026-06-22 21:43:14,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:43:14,259.259 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-22 21:43:14,813.813 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:43:14,816.816 INFO    ] Checking for system updates...
[2026-06-22 21:43:14,856.856 INFO    ] 200
[2026-06-22 21:43:14,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:43:14,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:43:14,928.928 INFO    ] No update needed
[2026-06-22 21:43:14,931.931 INFO    ] Checking for camera pi updates...
[2026-06-22 21:43:14,966.966 INFO    ] 200
[2026-06-22 21:43:14,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:43:15,010.010 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:43:15,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:43:15,096.096 INFO    ] No camera update needed
[2026-06-22 21:43:15,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:43:15,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:43:15,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:43:15,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:43:17,155.155 INFO    ] ================================================
[2026-06-22 21:43:17,169.169 INFO    ] Launching Daemon at Mon Jun 22 21:43:17 IST 2026
[2026-06-22 21:43:17,180.180 INFO    ] ================================================
[2026-06-22 21:43:17,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:43:17
[2026-06-22 21:43:18,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:43:18,605.605 INFO    ] Initializing speech engine...
[2026-06-22 21:43:18,614.614 INFO    ] 2026-06-22 21:43:18
[2026-06-22 21:43:18,860.860 INFO    ] 2026-06-22 21:43:18
[2026-06-22 21:43:18,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:43:20,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:43:20,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:43:21,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:43:21,194.194 INFO    ] time= 22/06/2026 21:43:21
[2026-06-22 21:43:21,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:43:21,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:43:21,313.313 INFO    ] No existing commands found in stream
[2026-06-22 21:43:26,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:43:26,329.329 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-22 21:43:26,827.827 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:43:26,830.830 INFO    ] Checking for system updates...
[2026-06-22 21:43:26,866.866 INFO    ] 200
[2026-06-22 21:43:26,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:43:26,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:43:26,924.924 INFO    ] No update needed
[2026-06-22 21:43:26,927.927 INFO    ] Checking for camera pi updates...
[2026-06-22 21:43:26,964.964 INFO    ] 200
[2026-06-22 21:43:26,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:43:27,012.012 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:43:27,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:43:27,097.097 INFO    ] No camera update needed
[2026-06-22 21:43:27,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:43:27,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:43:27,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:43:27,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:43:29,154.154 INFO    ] ================================================
[2026-06-22 21:43:29,169.169 INFO    ] Launching Daemon at Mon Jun 22 21:43:29 IST 2026
[2026-06-22 21:43:29,180.180 INFO    ] ================================================
[2026-06-22 21:43:29,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:43:29
[2026-06-22 21:43:30,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:43:30,761.761 INFO    ] Initializing speech engine...
[2026-06-22 21:43:30,776.776 INFO    ] 2026-06-22 21:43:30
[2026-06-22 21:43:31,058.058 INFO    ] 2026-06-22 21:43:31
[2026-06-22 21:43:31,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:43:31,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:43:31,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:43:31,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:43:31,570.570 INFO    ] time= 22/06/2026 21:43:31
[2026-06-22 21:43:31,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:43:31,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:43:31,743.743 INFO    ] No existing commands found in stream
[2026-06-22 21:43:36,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:43:36,786.786 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-22 21:43:37,272.272 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:43:37,275.275 INFO    ] Checking for system updates...
[2026-06-22 21:43:37,312.312 INFO    ] 200
[2026-06-22 21:43:37,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:43:37,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:43:37,379.379 INFO    ] No update needed
[2026-06-22 21:43:37,382.382 INFO    ] Checking for camera pi updates...
[2026-06-22 21:43:37,417.417 INFO    ] 200
[2026-06-22 21:43:37,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:43:37,467.467 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:43:37,631.631 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:43:37,634.634 INFO    ] No camera update needed
[2026-06-22 21:43:37,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:43:37,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:43:37,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:43:37,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:43:39,692.692 INFO    ] ================================================
[2026-06-22 21:43:39,708.708 INFO    ] Launching Daemon at Mon Jun 22 21:43:39 IST 2026
[2026-06-22 21:43:39,719.719 INFO    ] ================================================
[2026-06-22 21:43:40,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:43:40
[2026-06-22 21:43:40,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:43:41,181.181 INFO    ] Initializing speech engine...
[2026-06-22 21:43:41,190.190 INFO    ] 2026-06-22 21:43:41
[2026-06-22 21:43:41,449.449 INFO    ] 2026-06-22 21:43:41
[2026-06-22 21:43:41,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:43:41,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:43:41,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:43:41,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:43:41,913.913 INFO    ] time= 22/06/2026 21:43:41
[2026-06-22 21:43:41,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:43:42,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:43:42,141.141 INFO    ] No existing commands found in stream
[2026-06-22 21:43:47,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:43:47,167.167 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-22 21:43:51,669.669 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:43:51,671.671 INFO    ] Checking for system updates...
[2026-06-22 21:43:51,692.692 INFO    ] 200
[2026-06-22 21:43:51,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:43:51,742.742 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:43:51,745.745 INFO    ] No update needed
[2026-06-22 21:43:51,748.748 INFO    ] Checking for camera pi updates...
[2026-06-22 21:43:51,783.783 INFO    ] 200
[2026-06-22 21:43:51,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:43:51,828.828 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:43:51,913.913 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:43:51,916.916 INFO    ] No camera update needed
[2026-06-22 21:43:51,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:43:51,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:43:51,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:43:51,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:43:53,976.976 INFO    ] ================================================
[2026-06-22 21:43:53,991.991 INFO    ] Launching Daemon at Mon Jun 22 21:43:53 IST 2026
[2026-06-22 21:43:54,001.001 INFO    ] ================================================
[2026-06-22 21:43:54,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:43:54
[2026-06-22 21:43:55,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:43:55,634.634 INFO    ] Initializing speech engine...
[2026-06-22 21:43:55,642.642 INFO    ] 2026-06-22 21:43:55
[2026-06-22 21:43:55,918.918 INFO    ] 2026-06-22 21:43:55
[2026-06-22 21:43:55,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:43:56,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:43:56,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:43:56,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:43:56,388.388 INFO    ] time= 22/06/2026 21:43:56
[2026-06-22 21:43:56,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:43:56,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:43:56,544.544 INFO    ] No existing commands found in stream
[2026-06-22 21:44:01,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:44:01,582.582 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-22 21:44:05,436.436 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:44:05,439.439 INFO    ] Checking for system updates...
[2026-06-22 21:44:05,479.479 INFO    ] 200
[2026-06-22 21:44:05,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:44:05,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:44:05,537.537 INFO    ] No update needed
[2026-06-22 21:44:05,540.540 INFO    ] Checking for camera pi updates...
[2026-06-22 21:44:05,574.574 INFO    ] 200
[2026-06-22 21:44:05,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:44:05,617.617 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:44:05,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:44:05,708.708 INFO    ] No camera update needed
[2026-06-22 21:44:05,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:44:05,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:44:05,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:44:05,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:44:07,763.763 INFO    ] ================================================
[2026-06-22 21:44:07,779.779 INFO    ] Launching Daemon at Mon Jun 22 21:44:07 IST 2026
[2026-06-22 21:44:07,790.790 INFO    ] ================================================
[2026-06-22 21:44:08,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:44:08
[2026-06-22 21:44:08,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:44:09,206.206 INFO    ] Initializing speech engine...
[2026-06-22 21:44:09,216.216 INFO    ] 2026-06-22 21:44:09
[2026-06-22 21:44:09,461.461 INFO    ] 2026-06-22 21:44:09
[2026-06-22 21:44:09,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:44:09,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:44:09,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:44:09,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:44:10,030.030 INFO    ] time= 22/06/2026 21:44:09
[2026-06-22 21:44:10,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:44:10,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:44:10,190.190 INFO    ] No existing commands found in stream
[2026-06-22 21:44:15,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:44:15,215.215 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-22 21:44:15,715.715 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:44:15,718.718 INFO    ] Checking for system updates...
[2026-06-22 21:44:15,755.755 INFO    ] 200
[2026-06-22 21:44:15,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:44:15,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:44:15,813.813 INFO    ] No update needed
[2026-06-22 21:44:15,815.815 INFO    ] Checking for camera pi updates...
[2026-06-22 21:44:15,853.853 INFO    ] 200
[2026-06-22 21:44:15,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:44:15,901.901 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:44:15,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:44:15,998.998 INFO    ] No camera update needed
[2026-06-22 21:44:16,000.000 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:44:16,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:44:16,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:44:16,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:44:18,054.054 INFO    ] ================================================
[2026-06-22 21:44:18,069.069 INFO    ] Launching Daemon at Mon Jun 22 21:44:18 IST 2026
[2026-06-22 21:44:18,079.079 INFO    ] ================================================
[2026-06-22 21:44:18,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:44:18
[2026-06-22 21:44:19,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:44:19,630.630 INFO    ] Initializing speech engine...
[2026-06-22 21:44:19,644.644 INFO    ] 2026-06-22 21:44:19
[2026-06-22 21:44:19,924.924 INFO    ] 2026-06-22 21:44:19
[2026-06-22 21:44:19,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:44:22,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:44:22,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:44:23,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:44:23,357.357 INFO    ] time= 22/06/2026 21:44:23
[2026-06-22 21:44:23,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:44:23,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:44:23,413.413 INFO    ] No existing commands found in stream
[2026-06-22 21:44:28,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:44:28,427.427 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-22 21:44:30,667.667 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:44:30,670.670 INFO    ] Checking for system updates...
[2026-06-22 21:44:30,708.708 INFO    ] 200
[2026-06-22 21:44:30,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:44:30,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:44:30,767.767 INFO    ] No update needed
[2026-06-22 21:44:30,770.770 INFO    ] Checking for camera pi updates...
[2026-06-22 21:44:30,805.805 INFO    ] 200
[2026-06-22 21:44:30,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:44:30,850.850 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:44:30,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:44:30,942.942 INFO    ] No camera update needed
[2026-06-22 21:44:30,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:44:30,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:44:30,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:44:30,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:44:33,002.002 INFO    ] ================================================
[2026-06-22 21:44:33,017.017 INFO    ] Launching Daemon at Mon Jun 22 21:44:33 IST 2026
[2026-06-22 21:44:33,028.028 INFO    ] ================================================
[2026-06-22 21:44:33,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:44:33
[2026-06-22 21:44:34,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:44:34,661.661 INFO    ] Initializing speech engine...
[2026-06-22 21:44:34,675.675 INFO    ] 2026-06-22 21:44:34
[2026-06-22 21:44:34,954.954 INFO    ] 2026-06-22 21:44:34
[2026-06-22 21:44:34,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:44:35,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:44:35,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:44:35,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:44:35,495.495 INFO    ] time= 22/06/2026 21:44:35
[2026-06-22 21:44:35,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:44:35,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:44:35,674.674 INFO    ] No existing commands found in stream
[2026-06-22 21:44:40,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:44:40,713.713 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-22 21:44:43,982.982 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:44:43,985.985 INFO    ] Checking for system updates...
[2026-06-22 21:44:44,026.026 INFO    ] 200
[2026-06-22 21:44:44,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:44:44,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:44:44,099.099 INFO    ] No update needed
[2026-06-22 21:44:44,102.102 INFO    ] Checking for camera pi updates...
[2026-06-22 21:44:44,138.138 INFO    ] 200
[2026-06-22 21:44:44,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:44:44,183.183 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:44:44,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:44:44,276.276 INFO    ] No camera update needed
[2026-06-22 21:44:44,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:44:44,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:44:44,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:44:44,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:44:46,337.337 INFO    ] ================================================
[2026-06-22 21:44:46,352.352 INFO    ] Launching Daemon at Mon Jun 22 21:44:46 IST 2026
[2026-06-22 21:44:46,362.362 INFO    ] ================================================
[2026-06-22 21:44:47,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:44:47
[2026-06-22 21:44:47,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:44:47,991.991 INFO    ] Initializing speech engine...
[2026-06-22 21:44:47,998.998 INFO    ] 2026-06-22 21:44:47
[2026-06-22 21:44:48,313.313 INFO    ] 2026-06-22 21:44:48
[2026-06-22 21:44:48,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:44:48,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:44:48,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:44:48,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:44:48,822.822 INFO    ] time= 22/06/2026 21:44:48
[2026-06-22 21:44:48,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:44:48,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:44:48,979.979 INFO    ] No existing commands found in stream
[2026-06-22 21:44:54,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:44:54,016.016 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-22 21:44:57,569.569 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:44:57,570.570 INFO    ] Checking for system updates...
[2026-06-22 21:44:57,601.601 INFO    ] 200
[2026-06-22 21:44:57,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:44:57,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:44:57,661.661 INFO    ] No update needed
[2026-06-22 21:44:57,664.664 INFO    ] Checking for camera pi updates...
[2026-06-22 21:44:57,698.698 INFO    ] 200
[2026-06-22 21:44:57,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:44:57,747.747 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:44:57,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:44:57,827.827 INFO    ] No camera update needed
[2026-06-22 21:44:57,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:44:57,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:44:57,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:44:57,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:44:59,882.882 INFO    ] ================================================
[2026-06-22 21:44:59,897.897 INFO    ] Launching Daemon at Mon Jun 22 21:44:59 IST 2026
[2026-06-22 21:44:59,908.908 INFO    ] ================================================
[2026-06-22 21:45:00,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:45:00
[2026-06-22 21:45:01,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:45:01,452.452 INFO    ] Initializing speech engine...
[2026-06-22 21:45:01,460.460 INFO    ] 2026-06-22 21:45:01
[2026-06-22 21:45:02,369.369 INFO    ] 2026-06-22 21:45:02
[2026-06-22 21:45:02,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:45:02,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:45:02,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:45:02,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:45:02,855.855 INFO    ] time= 22/06/2026 21:45:02
[2026-06-22 21:45:02,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:45:02,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:45:03,068.068 INFO    ] No existing commands found in stream
[2026-06-22 21:45:08,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:45:08,084.084 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-22 21:45:08,879.879 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:45:08,882.882 INFO    ] Checking for system updates...
[2026-06-22 21:45:08,919.919 INFO    ] 200
[2026-06-22 21:45:08,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:45:08,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:45:08,979.979 INFO    ] No update needed
[2026-06-22 21:45:08,982.982 INFO    ] Checking for camera pi updates...
[2026-06-22 21:45:09,020.020 INFO    ] 200
[2026-06-22 21:45:09,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:45:09,066.066 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:45:09,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:45:09,153.153 INFO    ] No camera update needed
[2026-06-22 21:45:09,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:45:09,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:45:09,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:45:09,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:45:11,212.212 INFO    ] ================================================
[2026-06-22 21:45:11,228.228 INFO    ] Launching Daemon at Mon Jun 22 21:45:11 IST 2026
[2026-06-22 21:45:11,238.238 INFO    ] ================================================
[2026-06-22 21:45:11,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:45:11
[2026-06-22 21:45:12,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:45:12,675.675 INFO    ] Initializing speech engine...
[2026-06-22 21:45:12,685.685 INFO    ] 2026-06-22 21:45:12
[2026-06-22 21:45:12,935.935 INFO    ] 2026-06-22 21:45:12
[2026-06-22 21:45:12,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:45:13,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:45:13,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:45:13,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:45:13,492.492 INFO    ] time= 22/06/2026 21:45:13
[2026-06-22 21:45:13,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:45:13,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:45:13,635.635 INFO    ] No existing commands found in stream
[2026-06-22 21:45:18,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:45:18,664.664 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-22 21:45:19,998.998 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:45:20,000.000 INFO    ] Checking for system updates...
[2026-06-22 21:45:20,036.036 INFO    ] 200
[2026-06-22 21:45:20,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:45:20,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:45:20,101.101 INFO    ] No update needed
[2026-06-22 21:45:20,104.104 INFO    ] Checking for camera pi updates...
[2026-06-22 21:45:20,143.143 INFO    ] 200
[2026-06-22 21:45:20,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:45:20,193.193 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:45:20,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:45:20,280.280 INFO    ] No camera update needed
[2026-06-22 21:45:20,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:45:20,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:45:20,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:45:20,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:45:22,336.336 INFO    ] ================================================
[2026-06-22 21:45:22,351.351 INFO    ] Launching Daemon at Mon Jun 22 21:45:22 IST 2026
[2026-06-22 21:45:22,362.362 INFO    ] ================================================
[2026-06-22 21:45:22,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:45:22
[2026-06-22 21:45:23,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:45:23,795.795 INFO    ] Initializing speech engine...
[2026-06-22 21:45:23,811.811 INFO    ] 2026-06-22 21:45:23
[2026-06-22 21:45:24,095.095 INFO    ] 2026-06-22 21:45:24
[2026-06-22 21:45:24,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:45:25,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:45:25,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:45:25,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:45:25,861.861 INFO    ] time= 22/06/2026 21:45:25
[2026-06-22 21:45:25,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:45:25,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:45:25,986.986 INFO    ] No existing commands found in stream
[2026-06-22 21:45:30,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:45:31,000.000 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-22 21:45:31,781.781 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:45:31,784.784 INFO    ] Checking for system updates...
[2026-06-22 21:45:31,827.827 INFO    ] 200
[2026-06-22 21:45:31,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:45:31,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:45:31,898.898 INFO    ] No update needed
[2026-06-22 21:45:31,901.901 INFO    ] Checking for camera pi updates...
[2026-06-22 21:45:31,939.939 INFO    ] 200
[2026-06-22 21:45:31,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:45:31,986.986 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:45:32,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:45:32,091.091 INFO    ] No camera update needed
[2026-06-22 21:45:32,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:45:32,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:45:32,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:45:32,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:45:34,153.153 INFO    ] ================================================
[2026-06-22 21:45:34,168.168 INFO    ] Launching Daemon at Mon Jun 22 21:45:34 IST 2026
[2026-06-22 21:45:34,179.179 INFO    ] ================================================
[2026-06-22 21:45:34,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:45:34
[2026-06-22 21:45:35,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:45:35,584.584 INFO    ] Initializing speech engine...
[2026-06-22 21:45:35,590.590 INFO    ] 2026-06-22 21:45:35
[2026-06-22 21:45:35,886.886 INFO    ] 2026-06-22 21:45:35
[2026-06-22 21:45:35,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:45:36,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:45:36,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:45:36,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:45:36,311.311 INFO    ] time= 22/06/2026 21:45:36
[2026-06-22 21:45:36,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:45:36,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:45:36,405.405 INFO    ] No existing commands found in stream
[2026-06-22 21:45:41,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:45:41,438.438 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-22 21:45:42,631.631 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:45:42,633.633 INFO    ] Checking for system updates...
[2026-06-22 21:45:42,669.669 INFO    ] 200
[2026-06-22 21:45:42,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:45:42,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:45:42,735.735 INFO    ] No update needed
[2026-06-22 21:45:42,738.738 INFO    ] Checking for camera pi updates...
[2026-06-22 21:45:42,773.773 INFO    ] 200
[2026-06-22 21:45:42,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:45:42,816.816 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:45:42,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:45:43,001.001 INFO    ] No camera update needed
[2026-06-22 21:45:43,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:45:43,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:45:43,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:45:43,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:45:45,061.061 INFO    ] ================================================
[2026-06-22 21:45:45,077.077 INFO    ] Launching Daemon at Mon Jun 22 21:45:45 IST 2026
[2026-06-22 21:45:45,088.088 INFO    ] ================================================
[2026-06-22 21:45:45,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:45:45
[2026-06-22 21:45:46,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:45:46,401.401 INFO    ] Initializing speech engine...
[2026-06-22 21:45:46,414.414 INFO    ] 2026-06-22 21:45:46
[2026-06-22 21:45:46,678.678 INFO    ] 2026-06-22 21:45:46
[2026-06-22 21:45:46,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:45:46,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:45:46,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:45:47,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:45:47,145.145 INFO    ] time= 22/06/2026 21:45:47
[2026-06-22 21:45:47,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:45:47,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:45:47,372.372 INFO    ] No existing commands found in stream
[2026-06-22 21:45:52,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:45:52,402.402 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-22 21:45:57,569.569 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:45:57,572.572 INFO    ] Checking for system updates...
[2026-06-22 21:45:57,613.613 INFO    ] 200
[2026-06-22 21:45:57,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:45:57,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:45:57,683.683 INFO    ] No update needed
[2026-06-22 21:45:57,686.686 INFO    ] Checking for camera pi updates...
[2026-06-22 21:45:57,721.721 INFO    ] 200
[2026-06-22 21:45:57,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:45:57,765.765 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:45:57,871.871 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:45:57,874.874 INFO    ] No camera update needed
[2026-06-22 21:45:57,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:45:57,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:45:57,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:45:57,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:45:59,931.931 INFO    ] ================================================
[2026-06-22 21:45:59,946.946 INFO    ] Launching Daemon at Mon Jun 22 21:45:59 IST 2026
[2026-06-22 21:45:59,957.957 INFO    ] ================================================
[2026-06-22 21:46:00,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:46:00
[2026-06-22 21:46:01,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:46:01,623.623 INFO    ] Initializing speech engine...
[2026-06-22 21:46:01,631.631 INFO    ] 2026-06-22 21:46:01
[2026-06-22 21:46:01,913.913 INFO    ] 2026-06-22 21:46:01
[2026-06-22 21:46:02,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:46:02,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:46:02,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:46:02,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:46:02,430.430 INFO    ] time= 22/06/2026 21:46:02
[2026-06-22 21:46:02,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:46:02,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:46:02,523.523 INFO    ] No existing commands found in stream
[2026-06-22 21:46:07,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:46:07,550.550 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-22 21:46:08,806.806 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:46:08,807.807 INFO    ] Checking for system updates...
[2026-06-22 21:46:08,828.828 INFO    ] 200
[2026-06-22 21:46:08,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:46:08,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:46:08,861.861 INFO    ] No update needed
[2026-06-22 21:46:08,862.862 INFO    ] Checking for camera pi updates...
[2026-06-22 21:46:08,881.881 INFO    ] 200
[2026-06-22 21:46:08,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:46:08,912.912 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:46:08,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:46:08,997.997 INFO    ] No camera update needed
[2026-06-22 21:46:08,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:46:09,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:46:09,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:46:09,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:46:11,053.053 INFO    ] ================================================
[2026-06-22 21:46:11,068.068 INFO    ] Launching Daemon at Mon Jun 22 21:46:11 IST 2026
[2026-06-22 21:46:11,079.079 INFO    ] ================================================
[2026-06-22 21:46:11,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:46:11
[2026-06-22 21:46:12,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:46:12,469.469 INFO    ] Initializing speech engine...
[2026-06-22 21:46:12,481.481 INFO    ] 2026-06-22 21:46:12
[2026-06-22 21:46:12,749.749 INFO    ] 2026-06-22 21:46:12
[2026-06-22 21:46:12,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:46:13,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:46:13,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:46:13,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:46:13,297.297 INFO    ] time= 22/06/2026 21:46:13
[2026-06-22 21:46:13,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:46:13,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:46:13,454.454 INFO    ] No existing commands found in stream
[2026-06-22 21:46:18,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:46:18,471.471 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-22 21:46:20,650.650 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:46:20,653.653 INFO    ] Checking for system updates...
[2026-06-22 21:46:20,691.691 INFO    ] 200
[2026-06-22 21:46:20,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:46:20,749.749 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:46:20,752.752 INFO    ] No update needed
[2026-06-22 21:46:20,755.755 INFO    ] Checking for camera pi updates...
[2026-06-22 21:46:20,790.790 INFO    ] 200
[2026-06-22 21:46:20,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:46:20,835.835 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:46:20,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:46:20,942.942 INFO    ] No camera update needed
[2026-06-22 21:46:20,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:46:20,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:46:20,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:46:20,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:46:23,001.001 INFO    ] ================================================
[2026-06-22 21:46:23,016.016 INFO    ] Launching Daemon at Mon Jun 22 21:46:23 IST 2026
[2026-06-22 21:46:23,026.026 INFO    ] ================================================
[2026-06-22 21:46:23,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:46:23
[2026-06-22 21:46:24,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:46:24,535.535 INFO    ] Initializing speech engine...
[2026-06-22 21:46:24,545.545 INFO    ] 2026-06-22 21:46:24
[2026-06-22 21:46:24,819.819 INFO    ] 2026-06-22 21:46:24
[2026-06-22 21:46:24,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:46:27,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:46:27,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:46:28,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:46:28,139.139 INFO    ] time= 22/06/2026 21:46:28
[2026-06-22 21:46:28,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:46:28,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:46:28,218.218 INFO    ] No existing commands found in stream
[2026-06-22 21:46:33,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:46:33,230.230 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-22 21:46:34,258.258 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:46:34,261.261 INFO    ] Checking for system updates...
[2026-06-22 21:46:34,301.301 INFO    ] 200
[2026-06-22 21:46:34,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:46:34,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:46:34,366.366 INFO    ] No update needed
[2026-06-22 21:46:34,369.369 INFO    ] Checking for camera pi updates...
[2026-06-22 21:46:34,404.404 INFO    ] 200
[2026-06-22 21:46:34,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:46:34,448.448 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:46:34,561.561 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:46:34,563.563 INFO    ] No camera update needed
[2026-06-22 21:46:34,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:46:34,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:46:34,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:46:34,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:46:36,618.618 INFO    ] ================================================
[2026-06-22 21:46:36,633.633 INFO    ] Launching Daemon at Mon Jun 22 21:46:36 IST 2026
[2026-06-22 21:46:36,644.644 INFO    ] ================================================
[2026-06-22 21:46:37,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:46:37
[2026-06-22 21:46:37,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:46:38,046.046 INFO    ] Initializing speech engine...
[2026-06-22 21:46:38,066.066 INFO    ] 2026-06-22 21:46:38
[2026-06-22 21:46:38,318.318 INFO    ] 2026-06-22 21:46:38
[2026-06-22 21:46:38,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:46:38,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:46:38,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:46:38,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:46:38,806.806 INFO    ] time= 22/06/2026 21:46:38
[2026-06-22 21:46:38,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:46:38,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:46:38,951.951 INFO    ] No existing commands found in stream
[2026-06-22 21:46:43,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:46:43,966.966 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-22 21:46:48,156.156 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:46:48,158.158 INFO    ] Checking for system updates...
[2026-06-22 21:46:48,201.201 INFO    ] 200
[2026-06-22 21:46:48,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:46:48,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:46:48,259.259 INFO    ] No update needed
[2026-06-22 21:46:48,262.262 INFO    ] Checking for camera pi updates...
[2026-06-22 21:46:48,299.299 INFO    ] 200
[2026-06-22 21:46:48,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:46:48,343.343 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:46:48,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:46:48,419.419 INFO    ] No camera update needed
[2026-06-22 21:46:48,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:46:48,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:46:48,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:46:48,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:46:50,475.475 INFO    ] ================================================
[2026-06-22 21:46:50,490.490 INFO    ] Launching Daemon at Mon Jun 22 21:46:50 IST 2026
[2026-06-22 21:46:50,500.500 INFO    ] ================================================
[2026-06-22 21:46:51,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:46:51
[2026-06-22 21:46:51,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:46:51,820.820 INFO    ] Initializing speech engine...
[2026-06-22 21:46:51,826.826 INFO    ] 2026-06-22 21:46:51
[2026-06-22 21:46:52,120.120 INFO    ] 2026-06-22 21:46:52
[2026-06-22 21:46:52,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:46:52,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:46:52,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:46:52,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:46:52,538.538 INFO    ] time= 22/06/2026 21:46:52
[2026-06-22 21:46:52,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:46:52,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:46:52,676.676 INFO    ] No existing commands found in stream
[2026-06-22 21:46:57,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:46:57,699.699 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-22 21:47:00,065.065 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:47:00,068.068 INFO    ] Checking for system updates...
[2026-06-22 21:47:00,104.104 INFO    ] 200
[2026-06-22 21:47:00,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:47:00,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:47:00,167.167 INFO    ] No update needed
[2026-06-22 21:47:00,169.169 INFO    ] Checking for camera pi updates...
[2026-06-22 21:47:00,203.203 INFO    ] 200
[2026-06-22 21:47:00,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:47:00,252.252 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:47:00,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:47:00,343.343 INFO    ] No camera update needed
[2026-06-22 21:47:00,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:47:00,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:47:00,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:47:00,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:47:02,400.400 INFO    ] ================================================
[2026-06-22 21:47:02,421.421 INFO    ] Launching Daemon at Mon Jun 22 21:47:02 IST 2026
[2026-06-22 21:47:02,437.437 INFO    ] ================================================
[2026-06-22 21:47:03,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:47:03
[2026-06-22 21:47:03,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:47:04,043.043 INFO    ] Initializing speech engine...
[2026-06-22 21:47:04,052.052 INFO    ] 2026-06-22 21:47:04
[2026-06-22 21:47:04,299.299 INFO    ] 2026-06-22 21:47:04
[2026-06-22 21:47:04,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:47:04,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:47:04,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:47:04,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:47:04,668.668 INFO    ] time= 22/06/2026 21:47:04
[2026-06-22 21:47:04,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:47:04,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:47:04,864.864 INFO    ] No existing commands found in stream
[2026-06-22 21:47:09,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:47:09,878.878 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-22 21:47:13,489.489 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:47:13,490.490 INFO    ] Checking for system updates...
[2026-06-22 21:47:13,511.511 INFO    ] 200
[2026-06-22 21:47:13,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:47:13,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:47:13,545.545 INFO    ] No update needed
[2026-06-22 21:47:13,546.546 INFO    ] Checking for camera pi updates...
[2026-06-22 21:47:13,566.566 INFO    ] 200
[2026-06-22 21:47:13,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:47:13,598.598 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:47:13,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:47:13,704.704 INFO    ] No camera update needed
[2026-06-22 21:47:13,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:47:13,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:47:13,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:47:13,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:47:15,764.764 INFO    ] ================================================
[2026-06-22 21:47:15,780.780 INFO    ] Launching Daemon at Mon Jun 22 21:47:15 IST 2026
[2026-06-22 21:47:15,791.791 INFO    ] ================================================
[2026-06-22 21:47:16,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:47:16
[2026-06-22 21:47:16,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:47:17,221.221 INFO    ] Initializing speech engine...
[2026-06-22 21:47:17,230.230 INFO    ] 2026-06-22 21:47:17
[2026-06-22 21:47:17,477.477 INFO    ] 2026-06-22 21:47:17
[2026-06-22 21:47:17,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:47:17,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:47:17,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:47:17,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:47:17,934.934 INFO    ] time= 22/06/2026 21:47:17
[2026-06-22 21:47:17,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:47:18,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:47:18,194.194 INFO    ] No existing commands found in stream
[2026-06-22 21:47:23,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:47:23,212.212 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-22 21:47:24,496.496 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:47:24,499.499 INFO    ] Checking for system updates...
[2026-06-22 21:47:24,538.538 INFO    ] 200
[2026-06-22 21:47:24,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:47:24,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:47:24,607.607 INFO    ] No update needed
[2026-06-22 21:47:24,610.610 INFO    ] Checking for camera pi updates...
[2026-06-22 21:47:24,645.645 INFO    ] 200
[2026-06-22 21:47:24,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:47:24,690.690 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:47:24,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:47:24,774.774 INFO    ] No camera update needed
[2026-06-22 21:47:24,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:47:24,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:47:24,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:47:24,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:47:26,834.834 INFO    ] ================================================
[2026-06-22 21:47:26,849.849 INFO    ] Launching Daemon at Mon Jun 22 21:47:26 IST 2026
[2026-06-22 21:47:26,860.860 INFO    ] ================================================
[2026-06-22 21:47:27,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:47:27
[2026-06-22 21:47:28,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:47:28,287.287 INFO    ] Initializing speech engine...
[2026-06-22 21:47:28,297.297 INFO    ] 2026-06-22 21:47:28
[2026-06-22 21:47:28,541.541 INFO    ] 2026-06-22 21:47:28
[2026-06-22 21:47:28,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:47:29,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:47:29,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:47:30,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:47:30,265.265 INFO    ] time= 22/06/2026 21:47:30
[2026-06-22 21:47:30,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:47:30,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:47:30,346.346 INFO    ] No existing commands found in stream
[2026-06-22 21:47:35,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:47:35,372.372 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-22 21:47:35,989.989 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:47:35,991.991 INFO    ] Checking for system updates...
[2026-06-22 21:47:36,027.027 INFO    ] 200
[2026-06-22 21:47:36,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:47:36,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:47:36,086.086 INFO    ] No update needed
[2026-06-22 21:47:36,088.088 INFO    ] Checking for camera pi updates...
[2026-06-22 21:47:36,122.122 INFO    ] 200
[2026-06-22 21:47:36,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:47:36,169.169 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:47:36,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:47:36,226.226 INFO    ] No camera update needed
[2026-06-22 21:47:36,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:47:36,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:47:36,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:47:36,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:47:38,281.281 INFO    ] ================================================
[2026-06-22 21:47:38,296.296 INFO    ] Launching Daemon at Mon Jun 22 21:47:38 IST 2026
[2026-06-22 21:47:38,308.308 INFO    ] ================================================
[2026-06-22 21:47:38,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:47:38
[2026-06-22 21:47:39,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:47:39,717.717 INFO    ] Initializing speech engine...
[2026-06-22 21:47:39,725.725 INFO    ] 2026-06-22 21:47:39
[2026-06-22 21:47:40,014.014 INFO    ] 2026-06-22 21:47:39
[2026-06-22 21:47:40,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:47:40,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:47:40,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:47:40,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:47:40,476.476 INFO    ] time= 22/06/2026 21:47:40
[2026-06-22 21:47:40,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:47:40,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:47:40,645.645 INFO    ] No existing commands found in stream
[2026-06-22 21:47:45,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:47:45,666.666 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-22 21:47:48,000.000 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:47:48,003.003 INFO    ] Checking for system updates...
[2026-06-22 21:47:48,040.040 INFO    ] 200
[2026-06-22 21:47:48,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:47:48,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:47:48,101.101 INFO    ] No update needed
[2026-06-22 21:47:48,104.104 INFO    ] Checking for camera pi updates...
[2026-06-22 21:47:48,139.139 INFO    ] 200
[2026-06-22 21:47:48,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:47:48,186.186 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:47:48,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:47:48,369.369 INFO    ] No camera update needed
[2026-06-22 21:47:48,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:47:48,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:47:48,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:47:48,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:47:50,423.423 INFO    ] ================================================
[2026-06-22 21:47:50,438.438 INFO    ] Launching Daemon at Mon Jun 22 21:47:50 IST 2026
[2026-06-22 21:47:50,449.449 INFO    ] ================================================
[2026-06-22 21:47:51,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:47:51
[2026-06-22 21:47:51,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:47:51,891.891 INFO    ] Initializing speech engine...
[2026-06-22 21:47:51,906.906 INFO    ] 2026-06-22 21:47:51
[2026-06-22 21:47:52,188.188 INFO    ] 2026-06-22 21:47:52
[2026-06-22 21:47:52,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:47:52,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:47:52,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:47:52,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:47:52,595.595 INFO    ] time= 22/06/2026 21:47:52
[2026-06-22 21:47:52,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:47:52,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:47:52,771.771 INFO    ] No existing commands found in stream
[2026-06-22 21:47:57,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:47:57,804.804 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-22 21:48:00,108.108 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:48:00,111.111 INFO    ] Checking for system updates...
[2026-06-22 21:48:00,146.146 INFO    ] 200
[2026-06-22 21:48:00,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:48:00,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:48:00,205.205 INFO    ] No update needed
[2026-06-22 21:48:00,207.207 INFO    ] Checking for camera pi updates...
[2026-06-22 21:48:00,241.241 INFO    ] 200
[2026-06-22 21:48:00,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:48:00,284.284 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:48:00,383.383 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:48:00,386.386 INFO    ] No camera update needed
[2026-06-22 21:48:00,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:48:00,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:48:00,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:48:00,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:48:02,442.442 INFO    ] ================================================
[2026-06-22 21:48:02,459.459 INFO    ] Launching Daemon at Mon Jun 22 21:48:02 IST 2026
[2026-06-22 21:48:02,479.479 INFO    ] ================================================
[2026-06-22 21:48:03,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:48:03
[2026-06-22 21:48:03,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:48:03,932.932 INFO    ] Initializing speech engine...
[2026-06-22 21:48:03,942.942 INFO    ] 2026-06-22 21:48:03
[2026-06-22 21:48:04,191.191 INFO    ] 2026-06-22 21:48:04
[2026-06-22 21:48:04,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:48:04,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:48:04,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:48:04,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:48:04,660.660 INFO    ] time= 22/06/2026 21:48:04
[2026-06-22 21:48:04,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:48:04,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:48:04,898.898 INFO    ] No existing commands found in stream
[2026-06-22 21:48:09,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:48:09,915.915 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-22 21:48:11,250.250 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:48:11,253.253 INFO    ] Checking for system updates...
[2026-06-22 21:48:11,289.289 INFO    ] 200
[2026-06-22 21:48:11,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:48:11,344.344 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:48:11,347.347 INFO    ] No update needed
[2026-06-22 21:48:11,349.349 INFO    ] Checking for camera pi updates...
[2026-06-22 21:48:11,386.386 INFO    ] 200
[2026-06-22 21:48:11,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:48:11,434.434 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:48:11,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:48:11,512.512 INFO    ] No camera update needed
[2026-06-22 21:48:11,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:48:11,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:48:11,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:48:11,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:48:13,570.570 INFO    ] ================================================
[2026-06-22 21:48:13,587.587 INFO    ] Launching Daemon at Mon Jun 22 21:48:13 IST 2026
[2026-06-22 21:48:13,599.599 INFO    ] ================================================
[2026-06-22 21:48:14,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:48:14
[2026-06-22 21:48:14,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:48:15,011.011 INFO    ] Initializing speech engine...
[2026-06-22 21:48:15,020.020 INFO    ] 2026-06-22 21:48:15
[2026-06-22 21:48:15,314.314 INFO    ] 2026-06-22 21:48:15
[2026-06-22 21:48:15,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:48:15,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:48:15,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:48:15,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:48:15,806.806 INFO    ] time= 22/06/2026 21:48:15
[2026-06-22 21:48:15,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:48:15,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:48:16,082.082 INFO    ] No existing commands found in stream
[2026-06-22 21:48:21,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:48:21,108.108 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-22 21:48:24,937.937 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:48:24,938.938 INFO    ] Checking for system updates...
[2026-06-22 21:48:24,959.959 INFO    ] 200
[2026-06-22 21:48:24,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:48:24,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:48:24,992.992 INFO    ] No update needed
[2026-06-22 21:48:24,994.994 INFO    ] Checking for camera pi updates...
[2026-06-22 21:48:25,014.014 INFO    ] 200
[2026-06-22 21:48:25,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:48:25,066.066 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:48:25,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:48:25,155.155 INFO    ] No camera update needed
[2026-06-22 21:48:25,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:48:25,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:48:25,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:48:25,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:48:27,213.213 INFO    ] ================================================
[2026-06-22 21:48:27,228.228 INFO    ] Launching Daemon at Mon Jun 22 21:48:27 IST 2026
[2026-06-22 21:48:27,239.239 INFO    ] ================================================
[2026-06-22 21:48:27,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:48:27
[2026-06-22 21:48:28,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:48:28,553.553 INFO    ] Initializing speech engine...
[2026-06-22 21:48:28,575.575 INFO    ] 2026-06-22 21:48:28
[2026-06-22 21:48:28,829.829 INFO    ] 2026-06-22 21:48:28
[2026-06-22 21:48:28,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:48:31,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:48:31,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:48:32,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:48:32,229.229 INFO    ] time= 22/06/2026 21:48:32
[2026-06-22 21:48:32,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:48:32,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:48:32,295.295 INFO    ] No existing commands found in stream
[2026-06-22 21:48:37,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:48:37,308.308 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-22 21:48:39,320.320 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:48:39,323.323 INFO    ] Checking for system updates...
[2026-06-22 21:48:39,359.359 INFO    ] 200
[2026-06-22 21:48:39,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:48:39,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:48:39,417.417 INFO    ] No update needed
[2026-06-22 21:48:39,419.419 INFO    ] Checking for camera pi updates...
[2026-06-22 21:48:39,457.457 INFO    ] 200
[2026-06-22 21:48:39,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:48:39,501.501 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:48:39,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:48:39,617.617 INFO    ] No camera update needed
[2026-06-22 21:48:39,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:48:39,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:48:39,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:48:39,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:48:41,676.676 INFO    ] ================================================
[2026-06-22 21:48:41,692.692 INFO    ] Launching Daemon at Mon Jun 22 21:48:41 IST 2026
[2026-06-22 21:48:41,703.703 INFO    ] ================================================
[2026-06-22 21:48:42,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:48:42
[2026-06-22 21:48:42,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:48:43,239.239 INFO    ] Initializing speech engine...
[2026-06-22 21:48:43,256.256 INFO    ] 2026-06-22 21:48:43
[2026-06-22 21:48:43,510.510 INFO    ] 2026-06-22 21:48:43
[2026-06-22 21:48:43,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:48:43,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:48:43,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:48:44,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:48:44,016.016 INFO    ] time= 22/06/2026 21:48:44
[2026-06-22 21:48:44,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:48:44,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:48:44,213.213 INFO    ] No existing commands found in stream
[2026-06-22 21:48:49,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:48:49,228.228 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-22 21:48:49,797.797 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:48:49,799.799 INFO    ] Checking for system updates...
[2026-06-22 21:48:49,835.835 INFO    ] 200
[2026-06-22 21:48:49,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:48:49,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:48:49,893.893 INFO    ] No update needed
[2026-06-22 21:48:49,895.895 INFO    ] Checking for camera pi updates...
[2026-06-22 21:48:49,933.933 INFO    ] 200
[2026-06-22 21:48:49,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:48:49,976.976 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:48:50,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:48:50,061.061 INFO    ] No camera update needed
[2026-06-22 21:48:50,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:48:50,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:48:50,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:48:50,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:48:52,116.116 INFO    ] ================================================
[2026-06-22 21:48:52,131.131 INFO    ] Launching Daemon at Mon Jun 22 21:48:52 IST 2026
[2026-06-22 21:48:52,142.142 INFO    ] ================================================
[2026-06-22 21:48:52,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:48:52
[2026-06-22 21:48:53,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:48:53,558.558 INFO    ] Initializing speech engine...
[2026-06-22 21:48:53,573.573 INFO    ] 2026-06-22 21:48:53
[2026-06-22 21:48:53,859.859 INFO    ] 2026-06-22 21:48:53
[2026-06-22 21:48:53,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:48:54,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:48:54,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:48:54,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:48:54,291.291 INFO    ] time= 22/06/2026 21:48:54
[2026-06-22 21:48:54,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:48:54,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:48:54,471.471 INFO    ] No existing commands found in stream
[2026-06-22 21:48:59,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:48:59,510.510 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-22 21:49:03,104.104 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:49:03,107.107 INFO    ] Checking for system updates...
[2026-06-22 21:49:03,150.150 INFO    ] 200
[2026-06-22 21:49:03,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:49:03,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:49:03,228.228 INFO    ] No update needed
[2026-06-22 21:49:03,232.232 INFO    ] Checking for camera pi updates...
[2026-06-22 21:49:03,287.287 INFO    ] 200
[2026-06-22 21:49:03,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:49:03,354.354 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:49:03,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:49:03,459.459 INFO    ] No camera update needed
[2026-06-22 21:49:03,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:49:03,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:49:03,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:49:03,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:49:05,519.519 INFO    ] ================================================
[2026-06-22 21:49:05,535.535 INFO    ] Launching Daemon at Mon Jun 22 21:49:05 IST 2026
[2026-06-22 21:49:05,546.546 INFO    ] ================================================
[2026-06-22 21:49:06,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:49:06
[2026-06-22 21:49:06,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:49:07,182.182 INFO    ] Initializing speech engine...
[2026-06-22 21:49:07,193.193 INFO    ] 2026-06-22 21:49:07
[2026-06-22 21:49:07,427.427 INFO    ] 2026-06-22 21:49:07
[2026-06-22 21:49:07,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:49:07,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:49:07,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:49:07,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:49:07,934.934 INFO    ] time= 22/06/2026 21:49:07
[2026-06-22 21:49:07,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:49:07,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:49:08,088.088 INFO    ] No existing commands found in stream
[2026-06-22 21:49:13,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:49:13,104.104 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-22 21:49:14,735.735 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:49:14,738.738 INFO    ] Checking for system updates...
[2026-06-22 21:49:14,774.774 INFO    ] 200
[2026-06-22 21:49:14,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:49:14,837.837 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:49:14,839.839 INFO    ] No update needed
[2026-06-22 21:49:14,842.842 INFO    ] Checking for camera pi updates...
[2026-06-22 21:49:14,876.876 INFO    ] 200
[2026-06-22 21:49:14,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:49:14,920.920 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:49:15,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:49:15,005.005 INFO    ] No camera update needed
[2026-06-22 21:49:15,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:49:15,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:49:15,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:49:15,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:49:17,062.062 INFO    ] ================================================
[2026-06-22 21:49:17,077.077 INFO    ] Launching Daemon at Mon Jun 22 21:49:17 IST 2026
[2026-06-22 21:49:17,088.088 INFO    ] ================================================
[2026-06-22 21:49:17,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:49:17
[2026-06-22 21:49:18,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:49:18,427.427 INFO    ] Initializing speech engine...
[2026-06-22 21:49:18,452.452 INFO    ] 2026-06-22 21:49:18
[2026-06-22 21:49:18,721.721 INFO    ] 2026-06-22 21:49:18
[2026-06-22 21:49:18,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:49:18,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:49:18,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:49:19,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:49:19,129.129 INFO    ] time= 22/06/2026 21:49:19
[2026-06-22 21:49:19,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:49:19,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:49:19,290.290 INFO    ] No existing commands found in stream
[2026-06-22 21:49:24,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:49:24,312.312 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-22 21:49:25,073.073 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:49:25,076.076 INFO    ] Checking for system updates...
[2026-06-22 21:49:25,112.112 INFO    ] 200
[2026-06-22 21:49:25,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:49:25,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:49:25,178.178 INFO    ] No update needed
[2026-06-22 21:49:25,181.181 INFO    ] Checking for camera pi updates...
[2026-06-22 21:49:25,215.215 INFO    ] 200
[2026-06-22 21:49:25,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:49:25,260.260 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:49:25,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:49:25,347.347 INFO    ] No camera update needed
[2026-06-22 21:49:25,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:49:25,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:49:25,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:49:25,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:49:27,407.407 INFO    ] ================================================
[2026-06-22 21:49:27,422.422 INFO    ] Launching Daemon at Mon Jun 22 21:49:27 IST 2026
[2026-06-22 21:49:27,433.433 INFO    ] ================================================
[2026-06-22 21:49:27,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:49:27
[2026-06-22 21:49:28,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:49:28,752.752 INFO    ] Initializing speech engine...
[2026-06-22 21:49:28,761.761 INFO    ] 2026-06-22 21:49:28
[2026-06-22 21:49:29,051.051 INFO    ] 2026-06-22 21:49:29
[2026-06-22 21:49:29,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:49:32,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:49:32,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:49:33,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:49:33,768.768 INFO    ] time= 22/06/2026 21:49:33
[2026-06-22 21:49:33,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:49:33,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:49:33,821.821 INFO    ] No existing commands found in stream
[2026-06-22 21:49:38,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:49:38,833.833 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-22 21:49:42,550.550 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:49:42,553.553 INFO    ] Checking for system updates...
[2026-06-22 21:49:42,591.591 INFO    ] 200
[2026-06-22 21:49:42,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:49:42,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:49:42,651.651 INFO    ] No update needed
[2026-06-22 21:49:42,653.653 INFO    ] Checking for camera pi updates...
[2026-06-22 21:49:42,687.687 INFO    ] 200
[2026-06-22 21:49:42,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:49:42,730.730 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:49:42,811.811 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:49:42,813.813 INFO    ] No camera update needed
[2026-06-22 21:49:42,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:49:42,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:49:42,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:49:42,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:49:44,868.868 INFO    ] ================================================
[2026-06-22 21:49:44,883.883 INFO    ] Launching Daemon at Mon Jun 22 21:49:44 IST 2026
[2026-06-22 21:49:44,893.893 INFO    ] ================================================
[2026-06-22 21:49:45,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:49:45
[2026-06-22 21:49:45,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:49:46,270.270 INFO    ] Initializing speech engine...
[2026-06-22 21:49:46,283.283 INFO    ] 2026-06-22 21:49:46
[2026-06-22 21:49:46,562.562 INFO    ] 2026-06-22 21:49:46
[2026-06-22 21:49:46,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:49:46,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:49:46,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:49:47,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:49:47,099.099 INFO    ] time= 22/06/2026 21:49:47
[2026-06-22 21:49:47,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:49:47,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:49:47,265.265 INFO    ] No existing commands found in stream
[2026-06-22 21:49:52,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:49:52,293.293 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-22 21:49:52,809.809 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:49:52,810.810 INFO    ] Checking for system updates...
[2026-06-22 21:49:52,832.832 INFO    ] 200
[2026-06-22 21:49:52,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:49:52,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:49:52,866.866 INFO    ] No update needed
[2026-06-22 21:49:52,868.868 INFO    ] Checking for camera pi updates...
[2026-06-22 21:49:52,888.888 INFO    ] 200
[2026-06-22 21:49:52,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:49:52,924.924 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:49:53,119.119 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:49:53,122.122 INFO    ] No camera update needed
[2026-06-22 21:49:53,124.124 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:49:53,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:49:53,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:49:53,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:49:55,177.177 INFO    ] ================================================
[2026-06-22 21:49:55,192.192 INFO    ] Launching Daemon at Mon Jun 22 21:49:55 IST 2026
[2026-06-22 21:49:55,203.203 INFO    ] ================================================
[2026-06-22 21:49:55,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:49:55
[2026-06-22 21:49:56,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:49:56,657.657 INFO    ] Initializing speech engine...
[2026-06-22 21:49:56,666.666 INFO    ] 2026-06-22 21:49:56
[2026-06-22 21:49:56,914.914 INFO    ] 2026-06-22 21:49:56
[2026-06-22 21:49:56,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:49:57,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:49:57,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:49:57,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:49:57,400.400 INFO    ] time= 22/06/2026 21:49:57
[2026-06-22 21:49:57,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:49:57,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:49:57,608.608 INFO    ] No existing commands found in stream
[2026-06-22 21:50:02,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:50:02,637.637 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-22 21:50:08,865.865 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:50:08,868.868 INFO    ] Checking for system updates...
[2026-06-22 21:50:08,905.905 INFO    ] 200
[2026-06-22 21:50:08,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:50:08,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:50:08,967.967 INFO    ] No update needed
[2026-06-22 21:50:08,969.969 INFO    ] Checking for camera pi updates...
[2026-06-22 21:50:09,006.006 INFO    ] 200
[2026-06-22 21:50:09,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:50:09,050.050 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:50:09,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:50:09,155.155 INFO    ] No camera update needed
[2026-06-22 21:50:09,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:50:09,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:50:09,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:50:09,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:50:11,211.211 INFO    ] ================================================
[2026-06-22 21:50:11,226.226 INFO    ] Launching Daemon at Mon Jun 22 21:50:11 IST 2026
[2026-06-22 21:50:11,237.237 INFO    ] ================================================
[2026-06-22 21:50:11,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:50:11
[2026-06-22 21:50:12,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:50:12,791.791 INFO    ] Initializing speech engine...
[2026-06-22 21:50:12,799.799 INFO    ] 2026-06-22 21:50:12
[2026-06-22 21:50:13,067.067 INFO    ] 2026-06-22 21:50:13
[2026-06-22 21:50:13,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:50:13,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:50:13,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:50:13,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:50:13,564.564 INFO    ] time= 22/06/2026 21:50:13
[2026-06-22 21:50:13,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:50:13,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:50:13,781.781 INFO    ] No existing commands found in stream
[2026-06-22 21:50:18,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:50:18,807.807 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-22 21:50:21,681.681 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:50:21,684.684 INFO    ] Checking for system updates...
[2026-06-22 21:50:21,720.720 INFO    ] 200
[2026-06-22 21:50:21,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:50:21,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:50:21,781.781 INFO    ] No update needed
[2026-06-22 21:50:21,783.783 INFO    ] Checking for camera pi updates...
[2026-06-22 21:50:21,820.820 INFO    ] 200
[2026-06-22 21:50:21,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:50:21,863.863 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:50:21,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:50:21,928.928 INFO    ] No camera update needed
[2026-06-22 21:50:21,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:50:21,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:50:21,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:50:21,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:50:23,983.983 INFO    ] ================================================
[2026-06-22 21:50:24,997.997 INFO    ] Launching Daemon at Mon Jun 22 21:50:23 IST 2026
[2026-06-22 21:50:24,008.008 INFO    ] ================================================
[2026-06-22 21:50:24,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:50:24
[2026-06-22 21:50:25,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:50:25,414.414 INFO    ] Initializing speech engine...
[2026-06-22 21:50:25,423.423 INFO    ] 2026-06-22 21:50:25
[2026-06-22 21:50:25,712.712 INFO    ] 2026-06-22 21:50:25
[2026-06-22 21:50:25,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:50:25,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:50:25,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:50:26,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:50:26,125.125 INFO    ] time= 22/06/2026 21:50:26
[2026-06-22 21:50:26,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:50:26,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:50:26,348.348 INFO    ] No existing commands found in stream
[2026-06-22 21:50:31,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:50:31,362.362 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-22 21:50:36,179.179 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:50:36,189.189 INFO    ] Checking for system updates...
[2026-06-22 21:50:36,235.235 INFO    ] 200
[2026-06-22 21:50:36,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:50:36,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:50:36,294.294 INFO    ] No update needed
[2026-06-22 21:50:36,297.297 INFO    ] Checking for camera pi updates...
[2026-06-22 21:50:36,332.332 INFO    ] 200
[2026-06-22 21:50:36,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:50:36,375.375 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:50:36,430.430 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:50:36,432.432 INFO    ] No camera update needed
[2026-06-22 21:50:36,435.435 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:50:36,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:50:36,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:50:36,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:50:38,489.489 INFO    ] ================================================
[2026-06-22 21:50:38,505.505 INFO    ] Launching Daemon at Mon Jun 22 21:50:38 IST 2026
[2026-06-22 21:50:38,515.515 INFO    ] ================================================
[2026-06-22 21:50:39,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:50:39
[2026-06-22 21:50:39,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:50:39,963.963 INFO    ] Initializing speech engine...
[2026-06-22 21:50:39,970.970 INFO    ] 2026-06-22 21:50:39
[2026-06-22 21:50:40,265.265 INFO    ] 2026-06-22 21:50:40
[2026-06-22 21:50:40,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:50:40,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:50:40,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:50:40,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:50:40,689.689 INFO    ] time= 22/06/2026 21:50:40
[2026-06-22 21:50:40,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:50:40,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:50:40,891.891 INFO    ] No existing commands found in stream
[2026-06-22 21:50:45,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:50:45,924.924 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-22 21:50:48,644.644 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:50:48,647.647 INFO    ] Checking for system updates...
[2026-06-22 21:50:48,683.683 INFO    ] 200
[2026-06-22 21:50:48,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:50:48,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:50:48,743.743 INFO    ] No update needed
[2026-06-22 21:50:48,745.745 INFO    ] Checking for camera pi updates...
[2026-06-22 21:50:48,780.780 INFO    ] 200
[2026-06-22 21:50:48,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:50:48,824.824 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:50:48,914.914 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:50:48,917.917 INFO    ] No camera update needed
[2026-06-22 21:50:48,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:50:48,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:50:48,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:50:48,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:50:50,974.974 INFO    ] ================================================
[2026-06-22 21:50:50,989.989 INFO    ] Launching Daemon at Mon Jun 22 21:50:50 IST 2026
[2026-06-22 21:50:51,999.999 INFO    ] ================================================
[2026-06-22 21:50:51,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:50:51
[2026-06-22 21:50:52,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:50:52,495.495 INFO    ] Initializing speech engine...
[2026-06-22 21:50:52,506.506 INFO    ] 2026-06-22 21:50:52
[2026-06-22 21:50:52,775.775 INFO    ] 2026-06-22 21:50:52
[2026-06-22 21:50:52,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:50:53,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:50:53,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:50:53,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:50:53,280.280 INFO    ] time= 22/06/2026 21:50:53
[2026-06-22 21:50:53,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:50:53,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:50:53,475.475 INFO    ] No existing commands found in stream
[2026-06-22 21:50:58,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:50:58,506.506 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-22 21:51:02,572.572 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:51:02,575.575 INFO    ] Checking for system updates...
[2026-06-22 21:51:02,616.616 INFO    ] 200
[2026-06-22 21:51:02,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:51:02,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:51:02,683.683 INFO    ] No update needed
[2026-06-22 21:51:02,686.686 INFO    ] Checking for camera pi updates...
[2026-06-22 21:51:02,728.728 INFO    ] 200
[2026-06-22 21:51:02,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:51:02,781.781 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:51:02,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:51:02,840.840 INFO    ] No camera update needed
[2026-06-22 21:51:02,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:51:02,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:51:02,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:51:02,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:51:04,905.905 INFO    ] ================================================
[2026-06-22 21:51:04,922.922 INFO    ] Launching Daemon at Mon Jun 22 21:51:04 IST 2026
[2026-06-22 21:51:04,934.934 INFO    ] ================================================
[2026-06-22 21:51:05,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:51:05
[2026-06-22 21:51:06,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:51:06,408.408 INFO    ] Initializing speech engine...
[2026-06-22 21:51:06,424.424 INFO    ] 2026-06-22 21:51:06
[2026-06-22 21:51:06,697.697 INFO    ] 2026-06-22 21:51:06
[2026-06-22 21:51:06,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:51:08,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:51:08,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:51:08,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:51:08,652.652 INFO    ] time= 22/06/2026 21:51:08
[2026-06-22 21:51:08,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:51:08,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:51:08,842.842 INFO    ] No existing commands found in stream
[2026-06-22 21:51:13,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:51:13,870.870 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-22 21:51:15,427.427 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:51:15,430.430 INFO    ] Checking for system updates...
[2026-06-22 21:51:15,466.466 INFO    ] 200
[2026-06-22 21:51:15,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:51:15,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:51:15,530.530 INFO    ] No update needed
[2026-06-22 21:51:15,532.532 INFO    ] Checking for camera pi updates...
[2026-06-22 21:51:15,569.569 INFO    ] 200
[2026-06-22 21:51:15,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:51:15,617.617 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:51:15,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:51:15,720.720 INFO    ] No camera update needed
[2026-06-22 21:51:15,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:51:15,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:51:15,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:51:15,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:51:17,776.776 INFO    ] ================================================
[2026-06-22 21:51:17,792.792 INFO    ] Launching Daemon at Mon Jun 22 21:51:17 IST 2026
[2026-06-22 21:51:17,802.802 INFO    ] ================================================
[2026-06-22 21:51:18,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:51:18
[2026-06-22 21:51:18,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:51:19,225.225 INFO    ] Initializing speech engine...
[2026-06-22 21:51:19,233.233 INFO    ] 2026-06-22 21:51:19
[2026-06-22 21:51:19,485.485 INFO    ] 2026-06-22 21:51:19
[2026-06-22 21:51:19,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:51:19,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:51:19,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:51:20,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:51:20,052.052 INFO    ] time= 22/06/2026 21:51:20
[2026-06-22 21:51:20,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:51:20,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:51:20,211.211 INFO    ] No existing commands found in stream
[2026-06-22 21:51:25,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:51:25,237.237 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-22 21:51:29,027.027 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:51:29,030.030 INFO    ] Checking for system updates...
[2026-06-22 21:51:29,066.066 INFO    ] 200
[2026-06-22 21:51:29,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:51:29,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:51:29,130.130 INFO    ] No update needed
[2026-06-22 21:51:29,132.132 INFO    ] Checking for camera pi updates...
[2026-06-22 21:51:29,165.165 INFO    ] 200
[2026-06-22 21:51:29,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:51:29,213.213 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:51:29,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:51:29,318.318 INFO    ] No camera update needed
[2026-06-22 21:51:29,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:51:29,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:51:29,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:51:29,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:51:31,375.375 INFO    ] ================================================
[2026-06-22 21:51:31,391.391 INFO    ] Launching Daemon at Mon Jun 22 21:51:31 IST 2026
[2026-06-22 21:51:31,402.402 INFO    ] ================================================
[2026-06-22 21:51:32,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:51:32
[2026-06-22 21:51:32,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:51:33,134.134 INFO    ] Initializing speech engine...
[2026-06-22 21:51:33,140.140 INFO    ] 2026-06-22 21:51:33
[2026-06-22 21:51:33,456.456 INFO    ] 2026-06-22 21:51:33
[2026-06-22 21:51:33,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:51:33,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:51:33,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:51:33,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:51:33,962.962 INFO    ] time= 22/06/2026 21:51:33
[2026-06-22 21:51:33,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:51:33,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:51:34,059.059 INFO    ] No existing commands found in stream
[2026-06-22 21:51:39,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:51:39,070.070 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-22 21:51:41,902.902 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:51:41,905.905 INFO    ] Checking for system updates...
[2026-06-22 21:51:41,942.942 INFO    ] 200
[2026-06-22 21:51:41,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:51:42,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:51:42,002.002 INFO    ] No update needed
[2026-06-22 21:51:42,005.005 INFO    ] Checking for camera pi updates...
[2026-06-22 21:51:42,039.039 INFO    ] 200
[2026-06-22 21:51:42,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:51:42,081.081 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:51:42,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:51:42,182.182 INFO    ] No camera update needed
[2026-06-22 21:51:42,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:51:42,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:51:42,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:51:42,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:51:44,236.236 INFO    ] ================================================
[2026-06-22 21:51:44,251.251 INFO    ] Launching Daemon at Mon Jun 22 21:51:44 IST 2026
[2026-06-22 21:51:44,262.262 INFO    ] ================================================
[2026-06-22 21:51:44,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:51:44
[2026-06-22 21:51:45,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:51:45,628.628 INFO    ] Initializing speech engine...
[2026-06-22 21:51:45,637.637 INFO    ] 2026-06-22 21:51:45
[2026-06-22 21:51:45,929.929 INFO    ] 2026-06-22 21:51:45
[2026-06-22 21:51:45,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:51:46,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:51:46,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:51:46,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:51:46,349.349 INFO    ] time= 22/06/2026 21:51:46
[2026-06-22 21:51:46,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:51:46,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:51:46,496.496 INFO    ] No existing commands found in stream
[2026-06-22 21:51:51,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:51:51,519.519 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-22 21:51:52,268.268 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:51:52,270.270 INFO    ] Checking for system updates...
[2026-06-22 21:51:52,310.310 INFO    ] 200
[2026-06-22 21:51:52,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:51:52,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:51:52,374.374 INFO    ] No update needed
[2026-06-22 21:51:52,376.376 INFO    ] Checking for camera pi updates...
[2026-06-22 21:51:52,413.413 INFO    ] 200
[2026-06-22 21:51:52,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:51:52,457.457 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:51:52,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:51:52,541.541 INFO    ] No camera update needed
[2026-06-22 21:51:52,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:51:52,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:51:52,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:51:52,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:51:54,596.596 INFO    ] ================================================
[2026-06-22 21:51:54,612.612 INFO    ] Launching Daemon at Mon Jun 22 21:51:54 IST 2026
[2026-06-22 21:51:54,623.623 INFO    ] ================================================
[2026-06-22 21:51:55,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:51:55
[2026-06-22 21:51:55,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:51:56,083.083 INFO    ] Initializing speech engine...
[2026-06-22 21:51:56,089.089 INFO    ] 2026-06-22 21:51:56
[2026-06-22 21:51:56,339.339 INFO    ] 2026-06-22 21:51:56
[2026-06-22 21:51:56,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:51:56,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:51:56,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:51:56,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:51:56,897.897 INFO    ] time= 22/06/2026 21:51:56
[2026-06-22 21:51:56,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:51:56,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:51:57,049.049 INFO    ] No existing commands found in stream
[2026-06-22 21:52:02,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:52:02,068.068 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-22 21:52:09,081.081 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:52:09,084.084 INFO    ] Checking for system updates...
[2026-06-22 21:52:09,127.127 INFO    ] 200
[2026-06-22 21:52:09,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:52:09,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:52:09,185.185 INFO    ] No update needed
[2026-06-22 21:52:09,188.188 INFO    ] Checking for camera pi updates...
[2026-06-22 21:52:09,222.222 INFO    ] 200
[2026-06-22 21:52:09,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:52:09,271.271 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:52:09,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:52:09,353.353 INFO    ] No camera update needed
[2026-06-22 21:52:09,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:52:09,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:52:09,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:52:09,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:52:11,411.411 INFO    ] ================================================
[2026-06-22 21:52:11,427.427 INFO    ] Launching Daemon at Mon Jun 22 21:52:11 IST 2026
[2026-06-22 21:52:11,439.439 INFO    ] ================================================
[2026-06-22 21:52:11,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:52:11
[2026-06-22 21:52:12,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:52:12,832.832 INFO    ] Initializing speech engine...
[2026-06-22 21:52:12,850.850 INFO    ] 2026-06-22 21:52:12
[2026-06-22 21:52:13,102.102 INFO    ] 2026-06-22 21:52:13
[2026-06-22 21:52:13,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:52:13,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:52:13,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:52:13,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:52:13,566.566 INFO    ] time= 22/06/2026 21:52:13
[2026-06-22 21:52:13,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:52:13,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:52:13,807.807 INFO    ] No existing commands found in stream
[2026-06-22 21:52:18,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:52:18,838.838 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-22 21:52:22,894.894 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:52:22,897.897 INFO    ] Checking for system updates...
[2026-06-22 21:52:22,933.933 INFO    ] 200
[2026-06-22 21:52:22,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:52:22,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:52:22,990.990 INFO    ] No update needed
[2026-06-22 21:52:22,993.993 INFO    ] Checking for camera pi updates...
[2026-06-22 21:52:23,026.026 INFO    ] 200
[2026-06-22 21:52:23,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:52:23,070.070 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:52:23,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:52:23,170.170 INFO    ] No camera update needed
[2026-06-22 21:52:23,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:52:23,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:52:23,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:52:23,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:52:25,229.229 INFO    ] ================================================
[2026-06-22 21:52:25,245.245 INFO    ] Launching Daemon at Mon Jun 22 21:52:25 IST 2026
[2026-06-22 21:52:25,256.256 INFO    ] ================================================
[2026-06-22 21:52:25,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:52:25
[2026-06-22 21:52:26,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:52:26,685.685 INFO    ] Initializing speech engine...
[2026-06-22 21:52:26,691.691 INFO    ] 2026-06-22 21:52:26
[2026-06-22 21:52:26,972.972 INFO    ] 2026-06-22 21:52:26
[2026-06-22 21:52:27,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:52:27,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:52:27,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:52:27,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:52:27,462.462 INFO    ] time= 22/06/2026 21:52:27
[2026-06-22 21:52:27,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:52:27,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:52:27,684.684 INFO    ] No existing commands found in stream
[2026-06-22 21:52:32,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:52:32,712.712 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-22 21:52:34,836.836 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:52:34,838.838 INFO    ] Checking for system updates...
[2026-06-22 21:52:34,874.874 INFO    ] 200
[2026-06-22 21:52:34,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:52:34,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:52:34,939.939 INFO    ] No update needed
[2026-06-22 21:52:34,941.941 INFO    ] Checking for camera pi updates...
[2026-06-22 21:52:34,978.978 INFO    ] 200
[2026-06-22 21:52:34,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:52:35,027.027 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:52:35,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:52:35,107.107 INFO    ] No camera update needed
[2026-06-22 21:52:35,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:52:35,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:52:35,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:52:35,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:52:37,163.163 INFO    ] ================================================
[2026-06-22 21:52:37,179.179 INFO    ] Launching Daemon at Mon Jun 22 21:52:37 IST 2026
[2026-06-22 21:52:37,190.190 INFO    ] ================================================
[2026-06-22 21:52:37,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:52:37
[2026-06-22 21:52:38,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:52:38,516.516 INFO    ] Initializing speech engine...
[2026-06-22 21:52:38,522.522 INFO    ] 2026-06-22 21:52:38
[2026-06-22 21:52:38,822.822 INFO    ] 2026-06-22 21:52:38
[2026-06-22 21:52:38,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:52:39,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:52:39,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:52:40,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:52:40,404.404 INFO    ] time= 22/06/2026 21:52:40
[2026-06-22 21:52:40,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:52:40,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:52:40,476.476 INFO    ] No existing commands found in stream
[2026-06-22 21:52:45,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:52:45,488.488 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-22 21:52:48,685.685 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:52:48,688.688 INFO    ] Checking for system updates...
[2026-06-22 21:52:48,724.724 INFO    ] 200
[2026-06-22 21:52:48,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:52:48,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:52:48,782.782 INFO    ] No update needed
[2026-06-22 21:52:48,784.784 INFO    ] Checking for camera pi updates...
[2026-06-22 21:52:48,821.821 INFO    ] 200
[2026-06-22 21:52:48,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:52:48,866.866 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:52:48,953.953 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:52:48,956.956 INFO    ] No camera update needed
[2026-06-22 21:52:48,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:52:48,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:52:48,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:52:48,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:52:51,012.012 INFO    ] ================================================
[2026-06-22 21:52:51,028.028 INFO    ] Launching Daemon at Mon Jun 22 21:52:51 IST 2026
[2026-06-22 21:52:51,040.040 INFO    ] ================================================
[2026-06-22 21:52:51,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:52:51
[2026-06-22 21:52:52,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:52:52,406.406 INFO    ] Initializing speech engine...
[2026-06-22 21:52:52,415.415 INFO    ] 2026-06-22 21:52:52
[2026-06-22 21:52:52,664.664 INFO    ] 2026-06-22 21:52:52
[2026-06-22 21:52:52,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:52:52,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:52:52,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:52:53,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:52:53,143.143 INFO    ] time= 22/06/2026 21:52:53
[2026-06-22 21:52:53,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:52:53,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:52:53,377.377 INFO    ] No existing commands found in stream
[2026-06-22 21:52:58,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:52:58,396.396 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-22 21:53:02,299.299 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:53:02,303.303 INFO    ] Checking for system updates...
[2026-06-22 21:53:02,350.350 INFO    ] 200
[2026-06-22 21:53:02,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:53:02,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:53:02,431.431 INFO    ] No update needed
[2026-06-22 21:53:02,434.434 INFO    ] Checking for camera pi updates...
[2026-06-22 21:53:02,474.474 INFO    ] 200
[2026-06-22 21:53:02,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:53:02,537.537 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:53:02,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:53:02,607.607 INFO    ] No camera update needed
[2026-06-22 21:53:02,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:53:02,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:53:02,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:53:02,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:53:04,678.678 INFO    ] ================================================
[2026-06-22 21:53:04,693.693 INFO    ] Launching Daemon at Mon Jun 22 21:53:04 IST 2026
[2026-06-22 21:53:04,704.704 INFO    ] ================================================
[2026-06-22 21:53:05,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:53:05
[2026-06-22 21:53:06,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:53:06,304.304 INFO    ] Initializing speech engine...
[2026-06-22 21:53:06,313.313 INFO    ] 2026-06-22 21:53:06
[2026-06-22 21:53:06,582.582 INFO    ] 2026-06-22 21:53:06
[2026-06-22 21:53:06,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:53:09,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:53:09,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:53:10,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:53:10,752.752 INFO    ] time= 22/06/2026 21:53:10
[2026-06-22 21:53:10,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:53:10,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:53:10,839.839 INFO    ] No existing commands found in stream
[2026-06-22 21:53:15,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:53:15,852.852 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-22 21:53:18,030.030 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:53:18,033.033 INFO    ] Checking for system updates...
[2026-06-22 21:53:18,072.072 INFO    ] 200
[2026-06-22 21:53:18,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:53:18,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:53:18,137.137 INFO    ] No update needed
[2026-06-22 21:53:18,140.140 INFO    ] Checking for camera pi updates...
[2026-06-22 21:53:18,177.177 INFO    ] 200
[2026-06-22 21:53:18,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:53:18,224.224 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:53:18,304.304 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:53:18,306.306 INFO    ] No camera update needed
[2026-06-22 21:53:18,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:53:18,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:53:18,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:53:18,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:53:20,363.363 INFO    ] ================================================
[2026-06-22 21:53:20,379.379 INFO    ] Launching Daemon at Mon Jun 22 21:53:20 IST 2026
[2026-06-22 21:53:20,391.391 INFO    ] ================================================
[2026-06-22 21:53:20,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:53:20
[2026-06-22 21:53:21,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:53:21,759.759 INFO    ] Initializing speech engine...
[2026-06-22 21:53:21,766.766 INFO    ] 2026-06-22 21:53:21
[2026-06-22 21:53:22,022.022 INFO    ] 2026-06-22 21:53:22
[2026-06-22 21:53:22,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:53:22,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:53:22,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:53:22,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:53:22,573.573 INFO    ] time= 22/06/2026 21:53:22
[2026-06-22 21:53:22,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:53:22,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:53:22,734.734 INFO    ] No existing commands found in stream
[2026-06-22 21:53:27,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:53:27,751.751 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-22 21:53:29,815.815 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:53:29,818.818 INFO    ] Checking for system updates...
[2026-06-22 21:53:29,855.855 INFO    ] 200
[2026-06-22 21:53:29,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:53:29,917.917 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:53:29,920.920 INFO    ] No update needed
[2026-06-22 21:53:29,923.923 INFO    ] Checking for camera pi updates...
[2026-06-22 21:53:29,961.961 INFO    ] 200
[2026-06-22 21:53:29,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:53:30,009.009 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:53:30,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:53:30,098.098 INFO    ] No camera update needed
[2026-06-22 21:53:30,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:53:30,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:53:30,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:53:30,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:53:32,157.157 INFO    ] ================================================
[2026-06-22 21:53:32,175.175 INFO    ] Launching Daemon at Mon Jun 22 21:53:32 IST 2026
[2026-06-22 21:53:32,187.187 INFO    ] ================================================
[2026-06-22 21:53:32,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:53:32
[2026-06-22 21:53:33,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:53:33,697.697 INFO    ] Initializing speech engine...
[2026-06-22 21:53:33,720.720 INFO    ] 2026-06-22 21:53:33
[2026-06-22 21:53:33,977.977 INFO    ] 2026-06-22 21:53:33
[2026-06-22 21:53:34,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:53:34,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:53:34,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:53:34,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:53:34,473.473 INFO    ] time= 22/06/2026 21:53:34
[2026-06-22 21:53:34,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:53:34,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:53:34,690.690 INFO    ] No existing commands found in stream
[2026-06-22 21:53:39,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:53:39,719.719 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-22 21:53:44,244.244 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:53:44,246.246 INFO    ] Checking for system updates...
[2026-06-22 21:53:44,267.267 INFO    ] 200
[2026-06-22 21:53:44,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:53:44,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:53:44,302.302 INFO    ] No update needed
[2026-06-22 21:53:44,304.304 INFO    ] Checking for camera pi updates...
[2026-06-22 21:53:44,324.324 INFO    ] 200
[2026-06-22 21:53:44,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:53:44,355.355 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:53:44,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:53:44,440.440 INFO    ] No camera update needed
[2026-06-22 21:53:44,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:53:44,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:53:44,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:53:44,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:53:46,500.500 INFO    ] ================================================
[2026-06-22 21:53:46,516.516 INFO    ] Launching Daemon at Mon Jun 22 21:53:46 IST 2026
[2026-06-22 21:53:46,527.527 INFO    ] ================================================
[2026-06-22 21:53:47,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:53:47
[2026-06-22 21:53:47,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:53:47,955.955 INFO    ] Initializing speech engine...
[2026-06-22 21:53:47,962.962 INFO    ] 2026-06-22 21:53:47
[2026-06-22 21:53:48,253.253 INFO    ] 2026-06-22 21:53:48
[2026-06-22 21:53:48,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:53:48,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:53:48,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:53:48,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:53:48,671.671 INFO    ] time= 22/06/2026 21:53:48
[2026-06-22 21:53:48,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:53:48,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:53:48,888.888 INFO    ] No existing commands found in stream
[2026-06-22 21:53:53,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:53:53,901.901 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-22 21:53:56,434.434 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:53:56,437.437 INFO    ] Checking for system updates...
[2026-06-22 21:53:56,473.473 INFO    ] 200
[2026-06-22 21:53:56,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:53:56,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:53:56,541.541 INFO    ] No update needed
[2026-06-22 21:53:56,544.544 INFO    ] Checking for camera pi updates...
[2026-06-22 21:53:56,581.581 INFO    ] 200
[2026-06-22 21:53:56,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:53:56,629.629 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:53:56,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:53:56,729.729 INFO    ] No camera update needed
[2026-06-22 21:53:56,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:53:56,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:53:56,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:53:56,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:53:58,789.789 INFO    ] ================================================
[2026-06-22 21:53:58,817.817 INFO    ] Launching Daemon at Mon Jun 22 21:53:58 IST 2026
[2026-06-22 21:53:58,829.829 INFO    ] ================================================
[2026-06-22 21:53:59,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:53:59
[2026-06-22 21:54:00,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:54:00,380.380 INFO    ] Initializing speech engine...
[2026-06-22 21:54:00,390.390 INFO    ] 2026-06-22 21:54:00
[2026-06-22 21:54:00,652.652 INFO    ] 2026-06-22 21:54:00
[2026-06-22 21:54:00,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:54:00,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:54:00,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:54:01,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:54:01,163.163 INFO    ] time= 22/06/2026 21:54:01
[2026-06-22 21:54:01,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:54:01,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:54:01,399.399 INFO    ] No existing commands found in stream
[2026-06-22 21:54:06,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:54:06,434.434 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-22 21:54:09,128.128 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:54:09,130.130 INFO    ] Checking for system updates...
[2026-06-22 21:54:09,167.167 INFO    ] 200
[2026-06-22 21:54:09,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:54:09,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:54:09,229.229 INFO    ] No update needed
[2026-06-22 21:54:09,231.231 INFO    ] Checking for camera pi updates...
[2026-06-22 21:54:09,265.265 INFO    ] 200
[2026-06-22 21:54:09,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:54:09,309.309 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:54:09,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:54:09,493.493 INFO    ] No camera update needed
[2026-06-22 21:54:09,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:54:09,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:54:09,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:54:09,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:54:11,549.549 INFO    ] ================================================
[2026-06-22 21:54:11,565.565 INFO    ] Launching Daemon at Mon Jun 22 21:54:11 IST 2026
[2026-06-22 21:54:11,576.576 INFO    ] ================================================
[2026-06-22 21:54:12,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:54:12
[2026-06-22 21:54:12,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:54:13,014.014 INFO    ] Initializing speech engine...
[2026-06-22 21:54:13,020.020 INFO    ] 2026-06-22 21:54:13
[2026-06-22 21:54:13,284.284 INFO    ] 2026-06-22 21:54:13
[2026-06-22 21:54:13,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:54:15,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:54:15,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:54:16,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:54:16,297.297 INFO    ] time= 22/06/2026 21:54:16
[2026-06-22 21:54:16,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:54:16,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:54:16,353.353 INFO    ] No existing commands found in stream
[2026-06-22 21:54:21,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:54:21,367.367 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-22 21:54:24,834.834 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:54:24,836.836 INFO    ] Checking for system updates...
[2026-06-22 21:54:24,857.857 INFO    ] 200
[2026-06-22 21:54:24,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:54:24,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:54:24,891.891 INFO    ] No update needed
[2026-06-22 21:54:24,893.893 INFO    ] Checking for camera pi updates...
[2026-06-22 21:54:24,923.923 INFO    ] 200
[2026-06-22 21:54:24,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:54:24,972.972 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:54:25,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:54:25,082.082 INFO    ] No camera update needed
[2026-06-22 21:54:25,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:54:25,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:54:25,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:54:25,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:54:27,142.142 INFO    ] ================================================
[2026-06-22 21:54:27,158.158 INFO    ] Launching Daemon at Mon Jun 22 21:54:27 IST 2026
[2026-06-22 21:54:27,170.170 INFO    ] ================================================
[2026-06-22 21:54:27,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:54:27
[2026-06-22 21:54:28,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:54:28,666.666 INFO    ] Initializing speech engine...
[2026-06-22 21:54:28,674.674 INFO    ] 2026-06-22 21:54:28
[2026-06-22 21:54:28,944.944 INFO    ] 2026-06-22 21:54:28
[2026-06-22 21:54:28,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:54:29,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:54:29,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:54:29,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:54:29,474.474 INFO    ] time= 22/06/2026 21:54:29
[2026-06-22 21:54:29,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:54:29,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:54:29,651.651 INFO    ] No existing commands found in stream
[2026-06-22 21:54:34,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:54:34,684.684 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-22 21:54:35,325.325 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:54:35,328.328 INFO    ] Checking for system updates...
[2026-06-22 21:54:35,369.369 INFO    ] 200
[2026-06-22 21:54:35,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:54:35,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:54:35,428.428 INFO    ] No update needed
[2026-06-22 21:54:35,431.431 INFO    ] Checking for camera pi updates...
[2026-06-22 21:54:35,465.465 INFO    ] 200
[2026-06-22 21:54:35,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:54:35,510.510 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:54:35,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:54:35,599.599 INFO    ] No camera update needed
[2026-06-22 21:54:35,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:54:35,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:54:35,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:54:35,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:54:37,658.658 INFO    ] ================================================
[2026-06-22 21:54:37,673.673 INFO    ] Launching Daemon at Mon Jun 22 21:54:37 IST 2026
[2026-06-22 21:54:37,684.684 INFO    ] ================================================
[2026-06-22 21:54:38,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:54:38
[2026-06-22 21:54:38,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:54:39,198.198 INFO    ] Initializing speech engine...
[2026-06-22 21:54:39,207.207 INFO    ] 2026-06-22 21:54:39
[2026-06-22 21:54:39,527.527 INFO    ] 2026-06-22 21:54:39
[2026-06-22 21:54:39,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:54:39,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:54:39,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:54:39,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:54:40,040.040 INFO    ] time= 22/06/2026 21:54:40
[2026-06-22 21:54:40,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:54:40,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:54:40,192.192 INFO    ] No existing commands found in stream
[2026-06-22 21:54:45,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:54:45,220.220 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-22 21:54:47,415.415 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:54:47,418.418 INFO    ] Checking for system updates...
[2026-06-22 21:54:47,454.454 INFO    ] 200
[2026-06-22 21:54:47,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:54:47,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:54:47,513.513 INFO    ] No update needed
[2026-06-22 21:54:47,516.516 INFO    ] Checking for camera pi updates...
[2026-06-22 21:54:47,551.551 INFO    ] 200
[2026-06-22 21:54:47,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:54:47,595.595 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:54:47,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:54:47,654.654 INFO    ] No camera update needed
[2026-06-22 21:54:47,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:54:47,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:54:47,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:54:47,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:54:49,712.712 INFO    ] ================================================
[2026-06-22 21:54:49,727.727 INFO    ] Launching Daemon at Mon Jun 22 21:54:49 IST 2026
[2026-06-22 21:54:49,738.738 INFO    ] ================================================
[2026-06-22 21:54:50,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:54:50
[2026-06-22 21:54:50,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:54:51,267.267 INFO    ] Initializing speech engine...
[2026-06-22 21:54:51,275.275 INFO    ] 2026-06-22 21:54:51
[2026-06-22 21:54:51,561.561 INFO    ] 2026-06-22 21:54:51
[2026-06-22 21:54:51,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:54:51,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:54:51,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:54:51,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:54:52,032.032 INFO    ] time= 22/06/2026 21:54:51
[2026-06-22 21:54:52,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:54:52,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:54:52,162.162 INFO    ] No existing commands found in stream
[2026-06-22 21:54:57,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:54:57,192.192 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-22 21:54:58,648.648 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:54:58,650.650 INFO    ] Checking for system updates...
[2026-06-22 21:54:58,671.671 INFO    ] 200
[2026-06-22 21:54:58,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:54:58,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:54:58,708.708 INFO    ] No update needed
[2026-06-22 21:54:58,711.711 INFO    ] Checking for camera pi updates...
[2026-06-22 21:54:58,745.745 INFO    ] 200
[2026-06-22 21:54:58,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:54:58,792.792 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:54:58,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:54:58,876.876 INFO    ] No camera update needed
[2026-06-22 21:54:58,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:54:58,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:54:58,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:54:58,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:55:00,937.937 INFO    ] ================================================
[2026-06-22 21:55:00,953.953 INFO    ] Launching Daemon at Mon Jun 22 21:55:00 IST 2026
[2026-06-22 21:55:00,965.965 INFO    ] ================================================
[2026-06-22 21:55:01,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:55:01
[2026-06-22 21:55:02,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:55:02,819.819 INFO    ] Initializing speech engine...
[2026-06-22 21:55:02,858.858 INFO    ] 2026-06-22 21:55:02
[2026-06-22 21:55:03,190.190 INFO    ] 2026-06-22 21:55:03
[2026-06-22 21:55:03,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:55:03,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:55:03,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:55:03,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:55:03,815.815 INFO    ] time= 22/06/2026 21:55:03
[2026-06-22 21:55:03,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:55:03,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:55:04,040.040 INFO    ] No existing commands found in stream
[2026-06-22 21:55:09,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:55:09,078.078 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-22 21:55:12,446.446 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:55:12,448.448 INFO    ] Checking for system updates...
[2026-06-22 21:55:12,487.487 INFO    ] 200
[2026-06-22 21:55:12,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:55:12,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:55:12,565.565 INFO    ] No update needed
[2026-06-22 21:55:12,567.567 INFO    ] Checking for camera pi updates...
[2026-06-22 21:55:12,601.601 INFO    ] 200
[2026-06-22 21:55:12,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:55:12,644.644 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:55:12,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:55:12,747.747 INFO    ] No camera update needed
[2026-06-22 21:55:12,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:55:12,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:55:12,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:55:12,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:55:14,803.803 INFO    ] ================================================
[2026-06-22 21:55:14,818.818 INFO    ] Launching Daemon at Mon Jun 22 21:55:14 IST 2026
[2026-06-22 21:55:14,829.829 INFO    ] ================================================
[2026-06-22 21:55:15,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:55:15
[2026-06-22 21:55:15,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:55:16,147.147 INFO    ] Initializing speech engine...
[2026-06-22 21:55:16,160.160 INFO    ] 2026-06-22 21:55:16
[2026-06-22 21:55:16,436.436 INFO    ] 2026-06-22 21:55:16
[2026-06-22 21:55:16,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:55:17,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:55:17,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:55:17,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:55:17,509.509 INFO    ] time= 22/06/2026 21:55:17
[2026-06-22 21:55:17,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:55:17,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:55:17,660.660 INFO    ] No existing commands found in stream
[2026-06-22 21:55:22,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:55:22,672.672 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-22 21:55:25,951.951 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:55:25,953.953 INFO    ] Checking for system updates...
[2026-06-22 21:55:25,989.989 INFO    ] 200
[2026-06-22 21:55:25,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:55:26,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:55:26,044.044 INFO    ] No update needed
[2026-06-22 21:55:26,046.046 INFO    ] Checking for camera pi updates...
[2026-06-22 21:55:26,065.065 INFO    ] 200
[2026-06-22 21:55:26,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:55:26,089.089 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:55:26,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:55:26,174.174 INFO    ] No camera update needed
[2026-06-22 21:55:26,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:55:26,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:55:26,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:55:26,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:55:28,228.228 INFO    ] ================================================
[2026-06-22 21:55:28,243.243 INFO    ] Launching Daemon at Mon Jun 22 21:55:28 IST 2026
[2026-06-22 21:55:28,254.254 INFO    ] ================================================
[2026-06-22 21:55:28,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:55:28
[2026-06-22 21:55:29,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:55:29,730.730 INFO    ] Initializing speech engine...
[2026-06-22 21:55:29,751.751 INFO    ] 2026-06-22 21:55:29
[2026-06-22 21:55:30,017.017 INFO    ] 2026-06-22 21:55:30
[2026-06-22 21:55:30,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:55:30,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:55:30,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:55:30,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:55:30,522.522 INFO    ] time= 22/06/2026 21:55:30
[2026-06-22 21:55:30,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:55:30,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:55:30,756.756 INFO    ] No existing commands found in stream
[2026-06-22 21:55:35,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:55:35,781.781 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-22 21:55:37,716.716 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:55:37,719.719 INFO    ] Checking for system updates...
[2026-06-22 21:55:37,757.757 INFO    ] 200
[2026-06-22 21:55:37,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:55:37,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:55:37,815.815 INFO    ] No update needed
[2026-06-22 21:55:37,818.818 INFO    ] Checking for camera pi updates...
[2026-06-22 21:55:37,851.851 INFO    ] 200
[2026-06-22 21:55:37,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:55:37,894.894 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:55:37,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:55:37,957.957 INFO    ] No camera update needed
[2026-06-22 21:55:37,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:55:37,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:55:37,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:55:37,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:55:40,012.012 INFO    ] ================================================
[2026-06-22 21:55:40,027.027 INFO    ] Launching Daemon at Mon Jun 22 21:55:40 IST 2026
[2026-06-22 21:55:40,038.038 INFO    ] ================================================
[2026-06-22 21:55:40,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:55:40
[2026-06-22 21:55:41,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:55:41,385.385 INFO    ] Initializing speech engine...
[2026-06-22 21:55:41,399.399 INFO    ] 2026-06-22 21:55:41
[2026-06-22 21:55:41,666.666 INFO    ] 2026-06-22 21:55:41
[2026-06-22 21:55:41,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:55:41,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:55:41,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:55:42,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:55:42,067.067 INFO    ] time= 22/06/2026 21:55:42
[2026-06-22 21:55:42,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:55:42,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:55:42,239.239 INFO    ] No existing commands found in stream
[2026-06-22 21:55:47,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:55:47,272.272 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-22 21:55:50,012.012 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:55:50,013.013 INFO    ] Checking for system updates...
[2026-06-22 21:55:50,035.035 INFO    ] 200
[2026-06-22 21:55:50,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:55:50,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:55:50,082.082 INFO    ] No update needed
[2026-06-22 21:55:50,085.085 INFO    ] Checking for camera pi updates...
[2026-06-22 21:55:50,121.121 INFO    ] 200
[2026-06-22 21:55:50,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:55:50,164.164 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:55:50,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:55:50,249.249 INFO    ] No camera update needed
[2026-06-22 21:55:50,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:55:50,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:55:50,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:55:50,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:55:52,306.306 INFO    ] ================================================
[2026-06-22 21:55:52,321.321 INFO    ] Launching Daemon at Mon Jun 22 21:55:52 IST 2026
[2026-06-22 21:55:52,332.332 INFO    ] ================================================
[2026-06-22 21:55:52,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:55:52
[2026-06-22 21:55:53,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:55:53,741.741 INFO    ] Initializing speech engine...
[2026-06-22 21:55:53,759.759 INFO    ] 2026-06-22 21:55:53
[2026-06-22 21:55:54,006.006 INFO    ] 2026-06-22 21:55:54
[2026-06-22 21:55:54,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:55:54,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:55:54,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:55:54,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:55:54,482.482 INFO    ] time= 22/06/2026 21:55:54
[2026-06-22 21:55:54,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:55:54,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:55:54,710.710 INFO    ] No existing commands found in stream
[2026-06-22 21:55:59,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:55:59,729.729 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-22 21:56:02,807.807 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:56:02,811.811 INFO    ] Checking for system updates...
[2026-06-22 21:56:02,855.855 INFO    ] 200
[2026-06-22 21:56:02,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:56:02,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:56:02,925.925 INFO    ] No update needed
[2026-06-22 21:56:02,928.928 INFO    ] Checking for camera pi updates...
[2026-06-22 21:56:02,965.965 INFO    ] 200
[2026-06-22 21:56:02,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:56:03,019.019 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:56:03,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:56:03,140.140 INFO    ] No camera update needed
[2026-06-22 21:56:03,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:56:03,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:56:03,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:56:03,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:56:05,199.199 INFO    ] ================================================
[2026-06-22 21:56:05,215.215 INFO    ] Launching Daemon at Mon Jun 22 21:56:05 IST 2026
[2026-06-22 21:56:05,226.226 INFO    ] ================================================
[2026-06-22 21:56:05,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:56:05
[2026-06-22 21:56:06,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:56:06,660.660 INFO    ] Initializing speech engine...
[2026-06-22 21:56:06,676.676 INFO    ] 2026-06-22 21:56:06
[2026-06-22 21:56:06,954.954 INFO    ] 2026-06-22 21:56:06
[2026-06-22 21:56:06,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:56:07,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:56:07,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:56:07,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:56:07,301.301 INFO    ] time= 22/06/2026 21:56:07
[2026-06-22 21:56:07,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:56:07,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:56:07,429.429 INFO    ] No existing commands found in stream
[2026-06-22 21:56:12,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:56:12,458.458 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-22 21:56:13,377.377 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:56:13,380.380 INFO    ] Checking for system updates...
[2026-06-22 21:56:13,420.420 INFO    ] 200
[2026-06-22 21:56:13,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:56:13,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:56:13,487.487 INFO    ] No update needed
[2026-06-22 21:56:13,490.490 INFO    ] Checking for camera pi updates...
[2026-06-22 21:56:13,528.528 INFO    ] 200
[2026-06-22 21:56:13,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:56:13,578.578 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:56:13,758.758 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:56:13,761.761 INFO    ] No camera update needed
[2026-06-22 21:56:13,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:56:13,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:56:13,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:56:13,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:56:15,820.820 INFO    ] ================================================
[2026-06-22 21:56:15,835.835 INFO    ] Launching Daemon at Mon Jun 22 21:56:15 IST 2026
[2026-06-22 21:56:15,846.846 INFO    ] ================================================
[2026-06-22 21:56:16,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:56:16
[2026-06-22 21:56:17,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:56:17,325.325 INFO    ] Initializing speech engine...
[2026-06-22 21:56:17,339.339 INFO    ] 2026-06-22 21:56:17
[2026-06-22 21:56:17,613.613 INFO    ] 2026-06-22 21:56:17
[2026-06-22 21:56:17,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:56:19,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:56:19,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:56:19,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:56:19,844.844 INFO    ] time= 22/06/2026 21:56:19
[2026-06-22 21:56:19,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:56:19,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:56:19,951.951 INFO    ] No existing commands found in stream
[2026-06-22 21:56:24,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:56:24,986.986 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-22 21:56:27,283.283 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:56:27,285.285 INFO    ] Checking for system updates...
[2026-06-22 21:56:27,322.322 INFO    ] 200
[2026-06-22 21:56:27,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:56:27,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:56:27,380.380 INFO    ] No update needed
[2026-06-22 21:56:27,382.382 INFO    ] Checking for camera pi updates...
[2026-06-22 21:56:27,416.416 INFO    ] 200
[2026-06-22 21:56:27,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:56:27,459.459 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:56:27,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:56:27,537.537 INFO    ] No camera update needed
[2026-06-22 21:56:27,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:56:27,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:56:27,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:56:27,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:56:29,600.600 INFO    ] ================================================
[2026-06-22 21:56:29,615.615 INFO    ] Launching Daemon at Mon Jun 22 21:56:29 IST 2026
[2026-06-22 21:56:29,626.626 INFO    ] ================================================
[2026-06-22 21:56:30,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:56:30
[2026-06-22 21:56:30,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:56:31,221.221 INFO    ] Initializing speech engine...
[2026-06-22 21:56:31,229.229 INFO    ] 2026-06-22 21:56:31
[2026-06-22 21:56:31,532.532 INFO    ] 2026-06-22 21:56:31
[2026-06-22 21:56:31,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:56:31,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:56:31,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:56:32,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:56:32,153.153 INFO    ] time= 22/06/2026 21:56:32
[2026-06-22 21:56:32,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:56:32,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:56:32,298.298 INFO    ] No existing commands found in stream
[2026-06-22 21:56:37,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:56:37,328.328 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-22 21:56:40,371.371 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:56:40,373.373 INFO    ] Checking for system updates...
[2026-06-22 21:56:40,409.409 INFO    ] 200
[2026-06-22 21:56:40,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:56:40,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:56:40,475.475 INFO    ] No update needed
[2026-06-22 21:56:40,478.478 INFO    ] Checking for camera pi updates...
[2026-06-22 21:56:40,511.511 INFO    ] 200
[2026-06-22 21:56:40,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:56:40,556.556 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:56:40,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:56:40,643.643 INFO    ] No camera update needed
[2026-06-22 21:56:40,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:56:40,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:56:40,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:56:40,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:56:42,699.699 INFO    ] ================================================
[2026-06-22 21:56:42,715.715 INFO    ] Launching Daemon at Mon Jun 22 21:56:42 IST 2026
[2026-06-22 21:56:42,726.726 INFO    ] ================================================
[2026-06-22 21:56:43,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:56:43
[2026-06-22 21:56:44,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:56:44,352.352 INFO    ] Initializing speech engine...
[2026-06-22 21:56:44,360.360 INFO    ] 2026-06-22 21:56:44
[2026-06-22 21:56:44,645.645 INFO    ] 2026-06-22 21:56:44
[2026-06-22 21:56:44,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:56:44,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:56:44,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:56:45,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:56:45,187.187 INFO    ] time= 22/06/2026 21:56:45
[2026-06-22 21:56:45,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:56:45,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:56:45,342.342 INFO    ] No existing commands found in stream
[2026-06-22 21:56:50,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:56:50,387.387 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-22 21:56:51,551.551 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:56:51,552.552 INFO    ] Checking for system updates...
[2026-06-22 21:56:51,573.573 INFO    ] 200
[2026-06-22 21:56:51,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:56:51,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:56:51,625.625 INFO    ] No update needed
[2026-06-22 21:56:51,628.628 INFO    ] Checking for camera pi updates...
[2026-06-22 21:56:51,663.663 INFO    ] 200
[2026-06-22 21:56:51,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:56:51,708.708 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:56:51,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:56:51,794.794 INFO    ] No camera update needed
[2026-06-22 21:56:51,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:56:51,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:56:51,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:56:51,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:56:53,852.852 INFO    ] ================================================
[2026-06-22 21:56:53,868.868 INFO    ] Launching Daemon at Mon Jun 22 21:56:53 IST 2026
[2026-06-22 21:56:53,879.879 INFO    ] ================================================
[2026-06-22 21:56:54,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:56:54
[2026-06-22 21:56:55,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:56:55,282.282 INFO    ] Initializing speech engine...
[2026-06-22 21:56:55,305.305 INFO    ] 2026-06-22 21:56:55
[2026-06-22 21:56:55,555.555 INFO    ] 2026-06-22 21:56:55
[2026-06-22 21:56:55,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:56:55,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:56:55,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:56:55,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:56:56,015.015 INFO    ] time= 22/06/2026 21:56:55
[2026-06-22 21:56:56,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:56:56,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:56:56,250.250 INFO    ] No existing commands found in stream
[2026-06-22 21:57:01,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:57:01,282.282 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-22 21:57:03,330.330 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:57:03,333.333 INFO    ] Checking for system updates...
[2026-06-22 21:57:03,370.370 INFO    ] 200
[2026-06-22 21:57:03,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:57:03,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:57:03,430.430 INFO    ] No update needed
[2026-06-22 21:57:03,432.432 INFO    ] Checking for camera pi updates...
[2026-06-22 21:57:03,467.467 INFO    ] 200
[2026-06-22 21:57:03,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:57:03,512.512 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:57:03,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:57:03,609.609 INFO    ] No camera update needed
[2026-06-22 21:57:03,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:57:03,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:57:03,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:57:03,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:57:05,669.669 INFO    ] ================================================
[2026-06-22 21:57:05,684.684 INFO    ] Launching Daemon at Mon Jun 22 21:57:05 IST 2026
[2026-06-22 21:57:05,696.696 INFO    ] ================================================
[2026-06-22 21:57:06,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:57:06
[2026-06-22 21:57:06,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:57:07,306.306 INFO    ] Initializing speech engine...
[2026-06-22 21:57:07,320.320 INFO    ] 2026-06-22 21:57:07
[2026-06-22 21:57:07,592.592 INFO    ] 2026-06-22 21:57:07
[2026-06-22 21:57:07,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:57:07,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:57:07,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:57:08,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:57:08,037.037 INFO    ] time= 22/06/2026 21:57:08
[2026-06-22 21:57:08,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:57:08,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:57:08,165.165 INFO    ] No existing commands found in stream
[2026-06-22 21:57:13,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:57:13,181.181 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-22 21:57:14,974.974 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 21:57:14,976.976 INFO    ] Checking for system updates...
[2026-06-22 21:57:14,998.998 INFO    ] 200
[2026-06-22 21:57:15,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:57:15,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:57:15,059.059 INFO    ] No update needed
[2026-06-22 21:57:15,062.062 INFO    ] Checking for camera pi updates...
[2026-06-22 21:57:15,097.097 INFO    ] 200
[2026-06-22 21:57:15,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:57:15,143.143 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:57:15,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:57:15,233.233 INFO    ] No camera update needed
[2026-06-22 21:57:15,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:57:15,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:57:15,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:57:15,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:57:17,291.291 INFO    ] ================================================
[2026-06-22 21:57:17,307.307 INFO    ] Launching Daemon at Mon Jun 22 21:57:17 IST 2026
[2026-06-22 21:57:17,318.318 INFO    ] ================================================
[2026-06-22 21:57:17,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:57:17
[2026-06-22 21:57:18,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:57:18,854.854 INFO    ] Initializing speech engine...
[2026-06-22 21:57:18,865.865 INFO    ] 2026-06-22 21:57:18
[2026-06-22 21:57:19,152.152 INFO    ] 2026-06-22 21:57:19
[2026-06-22 21:57:19,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:57:21,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:57:21,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:57:22,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:57:22,618.618 INFO    ] time= 22/06/2026 21:57:22
[2026-06-22 21:57:22,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:57:22,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:57:22,685.685 INFO    ] No existing commands found in stream
[2026-06-22 21:57:27,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:57:27,699.699 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-22 21:57:31,622.622 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:57:31,626.626 INFO    ] Checking for system updates...
[2026-06-22 21:57:31,666.666 INFO    ] 200
[2026-06-22 21:57:31,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:57:31,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:57:31,730.730 INFO    ] No update needed
[2026-06-22 21:57:31,733.733 INFO    ] Checking for camera pi updates...
[2026-06-22 21:57:31,771.771 INFO    ] 200
[2026-06-22 21:57:31,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:57:31,820.820 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:57:31,935.935 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:57:31,938.938 INFO    ] No camera update needed
[2026-06-22 21:57:31,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:57:31,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:57:31,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:57:31,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:57:34,997.997 INFO    ] ================================================
[2026-06-22 21:57:34,012.012 INFO    ] Launching Daemon at Mon Jun 22 21:57:34 IST 2026
[2026-06-22 21:57:34,023.023 INFO    ] ================================================
[2026-06-22 21:57:34,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:57:34
[2026-06-22 21:57:35,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:57:35,437.437 INFO    ] Initializing speech engine...
[2026-06-22 21:57:35,453.453 INFO    ] 2026-06-22 21:57:35
[2026-06-22 21:57:35,734.734 INFO    ] 2026-06-22 21:57:35
[2026-06-22 21:57:35,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:57:35,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:57:35,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:57:36,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:57:36,151.151 INFO    ] time= 22/06/2026 21:57:36
[2026-06-22 21:57:36,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:57:36,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:57:36,242.242 INFO    ] No existing commands found in stream
[2026-06-22 21:57:41,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:57:41,280.280 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-22 21:57:44,396.396 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:57:44,399.399 INFO    ] Checking for system updates...
[2026-06-22 21:57:44,435.435 INFO    ] 200
[2026-06-22 21:57:44,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:57:44,490.490 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:57:44,492.492 INFO    ] No update needed
[2026-06-22 21:57:44,495.495 INFO    ] Checking for camera pi updates...
[2026-06-22 21:57:44,528.528 INFO    ] 200
[2026-06-22 21:57:44,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:57:44,572.572 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:57:44,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:57:44,653.653 INFO    ] No camera update needed
[2026-06-22 21:57:44,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:57:44,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:57:44,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:57:44,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:57:46,710.710 INFO    ] ================================================
[2026-06-22 21:57:46,726.726 INFO    ] Launching Daemon at Mon Jun 22 21:57:46 IST 2026
[2026-06-22 21:57:46,737.737 INFO    ] ================================================
[2026-06-22 21:57:47,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:57:47
[2026-06-22 21:57:47,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:57:48,144.144 INFO    ] Initializing speech engine...
[2026-06-22 21:57:48,153.153 INFO    ] 2026-06-22 21:57:48
[2026-06-22 21:57:48,444.444 INFO    ] 2026-06-22 21:57:48
[2026-06-22 21:57:48,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:57:52,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:57:52,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:57:53,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:57:53,352.352 INFO    ] time= 22/06/2026 21:57:53
[2026-06-22 21:57:53,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:57:53,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:57:53,422.422 INFO    ] No existing commands found in stream
[2026-06-22 21:57:58,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:57:58,435.435 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-22 21:58:00,806.806 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:58:00,809.809 INFO    ] Checking for system updates...
[2026-06-22 21:58:00,847.847 INFO    ] 200
[2026-06-22 21:58:00,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:58:00,903.903 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:58:00,906.906 INFO    ] No update needed
[2026-06-22 21:58:00,909.909 INFO    ] Checking for camera pi updates...
[2026-06-22 21:58:00,944.944 INFO    ] 200
[2026-06-22 21:58:00,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:58:00,990.990 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:58:01,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:58:01,074.074 INFO    ] No camera update needed
[2026-06-22 21:58:01,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:58:01,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:58:01,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:58:01,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:58:03,145.145 INFO    ] ================================================
[2026-06-22 21:58:03,161.161 INFO    ] Launching Daemon at Mon Jun 22 21:58:03 IST 2026
[2026-06-22 21:58:03,172.172 INFO    ] ================================================
[2026-06-22 21:58:03,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:58:03
[2026-06-22 21:58:04,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:58:04,726.726 INFO    ] Initializing speech engine...
[2026-06-22 21:58:04,735.735 INFO    ] 2026-06-22 21:58:04
[2026-06-22 21:58:05,001.001 INFO    ] 2026-06-22 21:58:04
[2026-06-22 21:58:05,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:58:05,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:58:05,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:58:05,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:58:05,854.854 INFO    ] time= 22/06/2026 21:58:05
[2026-06-22 21:58:05,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:58:05,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:58:06,117.117 INFO    ] No existing commands found in stream
[2026-06-22 21:58:11,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:58:11,142.142 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-22 21:58:12,413.413 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:58:12,416.416 INFO    ] Checking for system updates...
[2026-06-22 21:58:12,452.452 INFO    ] 200
[2026-06-22 21:58:12,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:58:12,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:58:12,509.509 INFO    ] No update needed
[2026-06-22 21:58:12,512.512 INFO    ] Checking for camera pi updates...
[2026-06-22 21:58:12,549.549 INFO    ] 200
[2026-06-22 21:58:12,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:58:12,595.595 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:58:12,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:58:12,695.695 INFO    ] No camera update needed
[2026-06-22 21:58:12,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:58:12,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:58:12,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:58:12,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:58:14,751.751 INFO    ] ================================================
[2026-06-22 21:58:14,766.766 INFO    ] Launching Daemon at Mon Jun 22 21:58:14 IST 2026
[2026-06-22 21:58:14,777.777 INFO    ] ================================================
[2026-06-22 21:58:15,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:58:15
[2026-06-22 21:58:15,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:58:16,266.266 INFO    ] Initializing speech engine...
[2026-06-22 21:58:16,280.280 INFO    ] 2026-06-22 21:58:16
[2026-06-22 21:58:16,553.553 INFO    ] 2026-06-22 21:58:16
[2026-06-22 21:58:16,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:58:16,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:58:16,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:58:17,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:58:17,091.091 INFO    ] time= 22/06/2026 21:58:17
[2026-06-22 21:58:17,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:58:17,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:58:17,247.247 INFO    ] No existing commands found in stream
[2026-06-22 21:58:22,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:58:22,269.269 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-22 21:58:25,244.244 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:58:25,246.246 INFO    ] Checking for system updates...
[2026-06-22 21:58:25,283.283 INFO    ] 200
[2026-06-22 21:58:25,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:58:25,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:58:25,342.342 INFO    ] No update needed
[2026-06-22 21:58:25,345.345 INFO    ] Checking for camera pi updates...
[2026-06-22 21:58:25,379.379 INFO    ] 200
[2026-06-22 21:58:25,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:58:25,423.423 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:58:25,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:58:25,604.604 INFO    ] No camera update needed
[2026-06-22 21:58:25,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:58:25,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:58:25,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:58:25,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:58:27,659.659 INFO    ] ================================================
[2026-06-22 21:58:27,675.675 INFO    ] Launching Daemon at Mon Jun 22 21:58:27 IST 2026
[2026-06-22 21:58:27,686.686 INFO    ] ================================================
[2026-06-22 21:58:28,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:58:28
[2026-06-22 21:58:28,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:58:29,168.168 INFO    ] Initializing speech engine...
[2026-06-22 21:58:29,177.177 INFO    ] 2026-06-22 21:58:29
[2026-06-22 21:58:29,445.445 INFO    ] 2026-06-22 21:58:29
[2026-06-22 21:58:29,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:58:29,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:58:29,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:58:29,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:58:29,926.926 INFO    ] time= 22/06/2026 21:58:29
[2026-06-22 21:58:29,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:58:29,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:58:30,053.053 INFO    ] No existing commands found in stream
[2026-06-22 21:58:35,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:58:35,070.070 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-22 21:58:38,192.192 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 21:58:38,194.194 INFO    ] Checking for system updates...
[2026-06-22 21:58:38,215.215 INFO    ] 200
[2026-06-22 21:58:38,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:58:38,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:58:38,268.268 INFO    ] No update needed
[2026-06-22 21:58:38,270.270 INFO    ] Checking for camera pi updates...
[2026-06-22 21:58:38,304.304 INFO    ] 200
[2026-06-22 21:58:38,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:58:38,348.348 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:58:38,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:58:38,455.455 INFO    ] No camera update needed
[2026-06-22 21:58:38,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:58:38,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:58:38,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:58:38,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:58:40,512.512 INFO    ] ================================================
[2026-06-22 21:58:40,527.527 INFO    ] Launching Daemon at Mon Jun 22 21:58:40 IST 2026
[2026-06-22 21:58:40,538.538 INFO    ] ================================================
[2026-06-22 21:58:41,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:58:41
[2026-06-22 21:58:41,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:58:41,887.887 INFO    ] Initializing speech engine...
[2026-06-22 21:58:41,896.896 INFO    ] 2026-06-22 21:58:41
[2026-06-22 21:58:42,140.140 INFO    ] 2026-06-22 21:58:42
[2026-06-22 21:58:42,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:58:42,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:58:42,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:58:42,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:58:42,507.507 INFO    ] time= 22/06/2026 21:58:42
[2026-06-22 21:58:42,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:58:42,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:58:42,702.702 INFO    ] No existing commands found in stream
[2026-06-22 21:58:47,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:58:47,718.718 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-22 21:58:50,046.046 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:58:50,049.049 INFO    ] Checking for system updates...
[2026-06-22 21:58:50,087.087 INFO    ] 200
[2026-06-22 21:58:50,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:58:50,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:58:50,145.145 INFO    ] No update needed
[2026-06-22 21:58:50,148.148 INFO    ] Checking for camera pi updates...
[2026-06-22 21:58:50,188.188 INFO    ] 200
[2026-06-22 21:58:50,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:58:50,232.232 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:58:50,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:58:50,313.313 INFO    ] No camera update needed
[2026-06-22 21:58:50,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:58:50,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:58:50,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:58:50,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:58:52,371.371 INFO    ] ================================================
[2026-06-22 21:58:52,387.387 INFO    ] Launching Daemon at Mon Jun 22 21:58:52 IST 2026
[2026-06-22 21:58:52,398.398 INFO    ] ================================================
[2026-06-22 21:58:53,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:58:53
[2026-06-22 21:58:53,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:58:54,004.004 INFO    ] Initializing speech engine...
[2026-06-22 21:58:54,016.016 INFO    ] 2026-06-22 21:58:54
[2026-06-22 21:58:54,319.319 INFO    ] 2026-06-22 21:58:54
[2026-06-22 21:58:54,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:58:55,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:58:55,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:58:55,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:58:55,645.645 INFO    ] time= 22/06/2026 21:58:55
[2026-06-22 21:58:55,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:58:55,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:58:55,727.727 INFO    ] No existing commands found in stream
[2026-06-22 21:59:00,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:59:00,742.742 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-22 21:59:01,712.712 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 21:59:01,715.715 INFO    ] Checking for system updates...
[2026-06-22 21:59:01,753.753 INFO    ] 200
[2026-06-22 21:59:01,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:59:01,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:59:01,810.810 INFO    ] No update needed
[2026-06-22 21:59:01,813.813 INFO    ] Checking for camera pi updates...
[2026-06-22 21:59:01,847.847 INFO    ] 200
[2026-06-22 21:59:01,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:59:01,890.890 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:59:01,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:59:01,977.977 INFO    ] No camera update needed
[2026-06-22 21:59:01,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:59:01,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:59:01,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:59:02,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:59:04,053.053 INFO    ] ================================================
[2026-06-22 21:59:04,069.069 INFO    ] Launching Daemon at Mon Jun 22 21:59:04 IST 2026
[2026-06-22 21:59:04,080.080 INFO    ] ================================================
[2026-06-22 21:59:04,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:59:04
[2026-06-22 21:59:05,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:59:05,509.509 INFO    ] Initializing speech engine...
[2026-06-22 21:59:05,519.519 INFO    ] 2026-06-22 21:59:05
[2026-06-22 21:59:05,765.765 INFO    ] 2026-06-22 21:59:05
[2026-06-22 21:59:05,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:59:05,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:59:05,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:59:06,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:59:06,136.136 INFO    ] time= 22/06/2026 21:59:06
[2026-06-22 21:59:06,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:59:06,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:59:06,305.305 INFO    ] No existing commands found in stream
[2026-06-22 21:59:11,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:59:11,338.338 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-22 21:59:15,332.332 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 21:59:15,335.335 INFO    ] Checking for system updates...
[2026-06-22 21:59:15,371.371 INFO    ] 200
[2026-06-22 21:59:15,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:59:15,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:59:15,431.431 INFO    ] No update needed
[2026-06-22 21:59:15,433.433 INFO    ] Checking for camera pi updates...
[2026-06-22 21:59:15,468.468 INFO    ] 200
[2026-06-22 21:59:15,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:59:15,510.510 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:59:15,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:59:15,602.602 INFO    ] No camera update needed
[2026-06-22 21:59:15,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:59:15,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:59:15,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:59:15,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:59:17,658.658 INFO    ] ================================================
[2026-06-22 21:59:17,674.674 INFO    ] Launching Daemon at Mon Jun 22 21:59:17 IST 2026
[2026-06-22 21:59:17,685.685 INFO    ] ================================================
[2026-06-22 21:59:18,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:59:18
[2026-06-22 21:59:18,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:59:19,263.263 INFO    ] Initializing speech engine...
[2026-06-22 21:59:19,269.269 INFO    ] 2026-06-22 21:59:19
[2026-06-22 21:59:19,579.579 INFO    ] 2026-06-22 21:59:19
[2026-06-22 21:59:19,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:59:19,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:59:19,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:59:20,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:59:20,094.094 INFO    ] time= 22/06/2026 21:59:20
[2026-06-22 21:59:20,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:59:20,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:59:20,251.251 INFO    ] No existing commands found in stream
[2026-06-22 21:59:25,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:59:25,279.279 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-22 21:59:29,741.741 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:59:29,744.744 INFO    ] Checking for system updates...
[2026-06-22 21:59:29,781.781 INFO    ] 200
[2026-06-22 21:59:29,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:59:29,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:59:29,850.850 INFO    ] No update needed
[2026-06-22 21:59:29,853.853 INFO    ] Checking for camera pi updates...
[2026-06-22 21:59:29,888.888 INFO    ] 200
[2026-06-22 21:59:29,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:59:29,939.939 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:59:30,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 21:59:30,025.025 INFO    ] No camera update needed
[2026-06-22 21:59:30,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:59:30,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:59:30,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:59:30,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:59:32,087.087 INFO    ] ================================================
[2026-06-22 21:59:32,105.105 INFO    ] Launching Daemon at Mon Jun 22 21:59:32 IST 2026
[2026-06-22 21:59:32,117.117 INFO    ] ================================================
[2026-06-22 21:59:32,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:59:32
[2026-06-22 21:59:33,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:59:33,612.612 INFO    ] Initializing speech engine...
[2026-06-22 21:59:33,631.631 INFO    ] 2026-06-22 21:59:33
[2026-06-22 21:59:33,883.883 INFO    ] 2026-06-22 21:59:33
[2026-06-22 21:59:33,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:59:34,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:59:34,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:59:34,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:59:34,467.467 INFO    ] time= 22/06/2026 21:59:34
[2026-06-22 21:59:34,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:59:34,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:59:34,625.625 INFO    ] No existing commands found in stream
[2026-06-22 21:59:39,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:59:39,641.641 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-22 21:59:41,418.418 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 21:59:41,421.421 INFO    ] Checking for system updates...
[2026-06-22 21:59:41,456.456 INFO    ] 200
[2026-06-22 21:59:41,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:59:41,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:59:41,514.514 INFO    ] No update needed
[2026-06-22 21:59:41,516.516 INFO    ] Checking for camera pi updates...
[2026-06-22 21:59:41,550.550 INFO    ] 200
[2026-06-22 21:59:41,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:59:41,592.592 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:59:41,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:59:41,673.673 INFO    ] No camera update needed
[2026-06-22 21:59:41,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:59:41,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:59:41,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:59:41,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:59:43,730.730 INFO    ] ================================================
[2026-06-22 21:59:43,745.745 INFO    ] Launching Daemon at Mon Jun 22 21:59:43 IST 2026
[2026-06-22 21:59:43,756.756 INFO    ] ================================================
[2026-06-22 21:59:44,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:59:44
[2026-06-22 21:59:44,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 21:59:45,113.113 INFO    ] Initializing speech engine...
[2026-06-22 21:59:45,119.119 INFO    ] 2026-06-22 21:59:45
[2026-06-22 21:59:45,367.367 INFO    ] 2026-06-22 21:59:45
[2026-06-22 21:59:45,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 21:59:45,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 21:59:45,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 21:59:45,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 21:59:45,942.942 INFO    ] time= 22/06/2026 21:59:45
[2026-06-22 21:59:45,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 21:59:45,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-22 21:59:46,083.083 INFO    ] No existing commands found in stream
[2026-06-22 21:59:51,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 21:59:51,105.105 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-22 21:59:56,452.452 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 21:59:56,455.455 INFO    ] Checking for system updates...
[2026-06-22 21:59:56,491.491 INFO    ] 200
[2026-06-22 21:59:56,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:59:56,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:59:56,550.550 INFO    ] No update needed
[2026-06-22 21:59:56,552.552 INFO    ] Checking for camera pi updates...
[2026-06-22 21:59:56,587.587 INFO    ] 200
[2026-06-22 21:59:56,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 21:59:56,630.630 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 21:59:56,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 21:59:56,732.732 INFO    ] No camera update needed
[2026-06-22 21:59:56,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-22 21:59:56,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 21:59:56,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 21:59:56,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 21:59:58,792.792 INFO    ] ================================================
[2026-06-22 21:59:58,807.807 INFO    ] Launching Daemon at Mon Jun 22 21:59:58 IST 2026
[2026-06-22 21:59:58,818.818 INFO    ] ================================================
[2026-06-22 21:59:59,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 21:59:59
[2026-06-22 22:00:00,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:00:00,468.468 INFO    ] Initializing speech engine...
[2026-06-22 22:00:00,482.482 INFO    ] 2026-06-22 22:00:00
[2026-06-22 22:00:00,789.789 INFO    ] 2026-06-22 22:00:00
[2026-06-22 22:00:00,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:00:01,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:00:01,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:00:01,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:00:01,309.309 INFO    ] time= 22/06/2026 22:00:01
[2026-06-22 22:00:01,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:00:01,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:00:01,471.471 INFO    ] No existing commands found in stream
[2026-06-22 22:00:06,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:00:06,538.538 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-22 22:00:09,462.462 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:00:09,465.465 INFO    ] Checking for system updates...
[2026-06-22 22:00:09,502.502 INFO    ] 200
[2026-06-22 22:00:09,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:00:09,560.560 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:00:09,563.563 INFO    ] No update needed
[2026-06-22 22:00:09,566.566 INFO    ] Checking for camera pi updates...
[2026-06-22 22:00:09,601.601 INFO    ] 200
[2026-06-22 22:00:09,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:00:09,646.646 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:00:09,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:00:09,728.728 INFO    ] No camera update needed
[2026-06-22 22:00:09,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:00:09,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:00:09,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:00:09,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:00:11,787.787 INFO    ] ================================================
[2026-06-22 22:00:11,803.803 INFO    ] Launching Daemon at Mon Jun 22 22:00:11 IST 2026
[2026-06-22 22:00:11,814.814 INFO    ] ================================================
[2026-06-22 22:00:12,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:00:12
[2026-06-22 22:00:12,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:00:13,235.235 INFO    ] Initializing speech engine...
[2026-06-22 22:00:13,243.243 INFO    ] 2026-06-22 22:00:13
[2026-06-22 22:00:13,493.493 INFO    ] 2026-06-22 22:00:13
[2026-06-22 22:00:13,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:00:13,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:00:13,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:00:13,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:00:13,869.869 INFO    ] time= 22/06/2026 22:00:13
[2026-06-22 22:00:13,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:00:13,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:00:14,072.072 INFO    ] No existing commands found in stream
[2026-06-22 22:00:19,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:00:19,085.085 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-22 22:00:21,264.264 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:00:21,266.266 INFO    ] Checking for system updates...
[2026-06-22 22:00:21,302.302 INFO    ] 200
[2026-06-22 22:00:21,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:00:21,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:00:21,363.363 INFO    ] No update needed
[2026-06-22 22:00:21,366.366 INFO    ] Checking for camera pi updates...
[2026-06-22 22:00:21,400.400 INFO    ] 200
[2026-06-22 22:00:21,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:00:21,443.443 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:00:21,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:00:21,521.521 INFO    ] No camera update needed
[2026-06-22 22:00:21,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:00:21,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:00:21,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:00:21,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:00:23,576.576 INFO    ] ================================================
[2026-06-22 22:00:23,591.591 INFO    ] Launching Daemon at Mon Jun 22 22:00:23 IST 2026
[2026-06-22 22:00:23,603.603 INFO    ] ================================================
[2026-06-22 22:00:24,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:00:24
[2026-06-22 22:00:24,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:00:25,024.024 INFO    ] Initializing speech engine...
[2026-06-22 22:00:25,033.033 INFO    ] 2026-06-22 22:00:25
[2026-06-22 22:00:25,294.294 INFO    ] 2026-06-22 22:00:25
[2026-06-22 22:00:25,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:00:27,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:00:27,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:00:28,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:00:28,480.480 INFO    ] time= 22/06/2026 22:00:28
[2026-06-22 22:00:28,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:00:28,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:00:28,554.554 INFO    ] No existing commands found in stream
[2026-06-22 22:00:33,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:00:33,566.566 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-22 22:00:35,350.350 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:00:35,353.353 INFO    ] Checking for system updates...
[2026-06-22 22:00:35,389.389 INFO    ] 200
[2026-06-22 22:00:35,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:00:35,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:00:35,448.448 INFO    ] No update needed
[2026-06-22 22:00:35,450.450 INFO    ] Checking for camera pi updates...
[2026-06-22 22:00:35,484.484 INFO    ] 200
[2026-06-22 22:00:35,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:00:35,532.532 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:00:35,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:00:35,616.616 INFO    ] No camera update needed
[2026-06-22 22:00:35,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:00:35,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:00:35,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:00:35,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:00:37,673.673 INFO    ] ================================================
[2026-06-22 22:00:37,689.689 INFO    ] Launching Daemon at Mon Jun 22 22:00:37 IST 2026
[2026-06-22 22:00:37,701.701 INFO    ] ================================================
[2026-06-22 22:00:38,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:00:38
[2026-06-22 22:00:38,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:00:39,109.109 INFO    ] Initializing speech engine...
[2026-06-22 22:00:39,124.124 INFO    ] 2026-06-22 22:00:39
[2026-06-22 22:00:39,399.399 INFO    ] 2026-06-22 22:00:39
[2026-06-22 22:00:39,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:00:39,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:00:39,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:00:39,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:00:39,780.780 INFO    ] time= 22/06/2026 22:00:39
[2026-06-22 22:00:39,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:00:39,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:00:39,910.910 INFO    ] No existing commands found in stream
[2026-06-22 22:00:44,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:00:44,925.925 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-22 22:00:48,607.607 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:00:48,609.609 INFO    ] Checking for system updates...
[2026-06-22 22:00:48,630.630 INFO    ] 200
[2026-06-22 22:00:48,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:00:48,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:00:48,663.663 INFO    ] No update needed
[2026-06-22 22:00:48,664.664 INFO    ] Checking for camera pi updates...
[2026-06-22 22:00:48,696.696 INFO    ] 200
[2026-06-22 22:00:48,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:00:48,744.744 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:00:48,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:00:48,843.843 INFO    ] No camera update needed
[2026-06-22 22:00:48,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:00:48,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:00:48,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:00:48,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:00:50,900.900 INFO    ] ================================================
[2026-06-22 22:00:50,916.916 INFO    ] Launching Daemon at Mon Jun 22 22:00:50 IST 2026
[2026-06-22 22:00:50,927.927 INFO    ] ================================================
[2026-06-22 22:00:51,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:00:51
[2026-06-22 22:00:52,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:00:52,297.297 INFO    ] Initializing speech engine...
[2026-06-22 22:00:52,304.304 INFO    ] 2026-06-22 22:00:52
[2026-06-22 22:00:52,565.565 INFO    ] 2026-06-22 22:00:52
[2026-06-22 22:00:52,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:00:52,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:00:52,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:00:52,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:00:53,015.015 INFO    ] time= 22/06/2026 22:00:52
[2026-06-22 22:00:53,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:00:53,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:00:53,268.268 INFO    ] No existing commands found in stream
[2026-06-22 22:00:58,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:00:58,290.290 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-22 22:01:02,536.536 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:01:02,541.541 INFO    ] Checking for system updates...
[2026-06-22 22:01:02,589.589 INFO    ] 200
[2026-06-22 22:01:02,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:01:02,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:01:02,656.656 INFO    ] No update needed
[2026-06-22 22:01:02,660.660 INFO    ] Checking for camera pi updates...
[2026-06-22 22:01:02,701.701 INFO    ] 200
[2026-06-22 22:01:02,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:01:02,752.752 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:01:02,820.820 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:01:02,824.824 INFO    ] No camera update needed
[2026-06-22 22:01:02,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:01:02,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:01:02,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:01:02,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:01:04,889.889 INFO    ] ================================================
[2026-06-22 22:01:04,905.905 INFO    ] Launching Daemon at Mon Jun 22 22:01:04 IST 2026
[2026-06-22 22:01:04,916.916 INFO    ] ================================================
[2026-06-22 22:01:05,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:01:05
[2026-06-22 22:01:06,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:01:06,422.422 INFO    ] Initializing speech engine...
[2026-06-22 22:01:06,428.428 INFO    ] 2026-06-22 22:01:06
[2026-06-22 22:01:06,679.679 INFO    ] 2026-06-22 22:01:06
[2026-06-22 22:01:06,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:01:07,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:01:07,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:01:07,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:01:07,234.234 INFO    ] time= 22/06/2026 22:01:07
[2026-06-22 22:01:07,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:01:07,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:01:07,364.364 INFO    ] No existing commands found in stream
[2026-06-22 22:01:12,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:01:12,399.399 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-22 22:01:13,227.227 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:01:13,230.230 INFO    ] Checking for system updates...
[2026-06-22 22:01:13,269.269 INFO    ] 200
[2026-06-22 22:01:13,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:01:13,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:01:13,327.327 INFO    ] No update needed
[2026-06-22 22:01:13,330.330 INFO    ] Checking for camera pi updates...
[2026-06-22 22:01:13,367.367 INFO    ] 200
[2026-06-22 22:01:13,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:01:13,411.411 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:01:13,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:01:13,518.518 INFO    ] No camera update needed
[2026-06-22 22:01:13,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:01:13,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:01:13,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:01:13,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:01:15,576.576 INFO    ] ================================================
[2026-06-22 22:01:15,592.592 INFO    ] Launching Daemon at Mon Jun 22 22:01:15 IST 2026
[2026-06-22 22:01:15,603.603 INFO    ] ================================================
[2026-06-22 22:01:16,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:01:16
[2026-06-22 22:01:16,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:01:17,017.017 INFO    ] Initializing speech engine...
[2026-06-22 22:01:17,032.032 INFO    ] 2026-06-22 22:01:17
[2026-06-22 22:01:17,314.314 INFO    ] 2026-06-22 22:01:17
[2026-06-22 22:01:17,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:01:17,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:01:17,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:01:17,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:01:17,729.729 INFO    ] time= 22/06/2026 22:01:17
[2026-06-22 22:01:17,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:01:17,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:01:17,871.871 INFO    ] No existing commands found in stream
[2026-06-22 22:01:22,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:01:22,899.899 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-22 22:01:25,529.529 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:01:25,532.532 INFO    ] Checking for system updates...
[2026-06-22 22:01:25,568.568 INFO    ] 200
[2026-06-22 22:01:25,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:01:25,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:01:25,626.626 INFO    ] No update needed
[2026-06-22 22:01:25,629.629 INFO    ] Checking for camera pi updates...
[2026-06-22 22:01:25,663.663 INFO    ] 200
[2026-06-22 22:01:25,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:01:25,706.706 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:01:25,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:01:25,812.812 INFO    ] No camera update needed
[2026-06-22 22:01:25,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:01:25,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:01:25,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:01:25,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:01:27,867.867 INFO    ] ================================================
[2026-06-22 22:01:27,882.882 INFO    ] Launching Daemon at Mon Jun 22 22:01:27 IST 2026
[2026-06-22 22:01:27,893.893 INFO    ] ================================================
[2026-06-22 22:01:28,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:01:28
[2026-06-22 22:01:28,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:01:29,237.237 INFO    ] Initializing speech engine...
[2026-06-22 22:01:29,243.243 INFO    ] 2026-06-22 22:01:29
[2026-06-22 22:01:29,541.541 INFO    ] 2026-06-22 22:01:29
[2026-06-22 22:01:29,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:01:30,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:01:30,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:01:31,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:01:31,312.312 INFO    ] time= 22/06/2026 22:01:31
[2026-06-22 22:01:31,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:01:31,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:01:31,458.458 INFO    ] No existing commands found in stream
[2026-06-22 22:01:36,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:01:36,487.487 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-22 22:01:38,617.617 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:01:38,619.619 INFO    ] Checking for system updates...
[2026-06-22 22:01:38,656.656 INFO    ] 200
[2026-06-22 22:01:38,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:01:38,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:01:38,718.718 INFO    ] No update needed
[2026-06-22 22:01:38,721.721 INFO    ] Checking for camera pi updates...
[2026-06-22 22:01:38,755.755 INFO    ] 200
[2026-06-22 22:01:38,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:01:38,798.798 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:01:38,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:01:38,859.859 INFO    ] No camera update needed
[2026-06-22 22:01:38,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:01:38,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:01:38,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:01:38,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:01:40,916.916 INFO    ] ================================================
[2026-06-22 22:01:40,932.932 INFO    ] Launching Daemon at Mon Jun 22 22:01:40 IST 2026
[2026-06-22 22:01:40,942.942 INFO    ] ================================================
[2026-06-22 22:01:41,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:01:41
[2026-06-22 22:01:42,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:01:42,293.293 INFO    ] Initializing speech engine...
[2026-06-22 22:01:42,299.299 INFO    ] 2026-06-22 22:01:42
[2026-06-22 22:01:42,596.596 INFO    ] 2026-06-22 22:01:42
[2026-06-22 22:01:42,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:01:42,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:01:42,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:01:43,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:01:43,018.018 INFO    ] time= 22/06/2026 22:01:43
[2026-06-22 22:01:43,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:01:43,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:01:43,106.106 INFO    ] No existing commands found in stream
[2026-06-22 22:01:48,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:01:48,124.124 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-22 22:01:51,148.148 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:01:51,151.151 INFO    ] Checking for system updates...
[2026-06-22 22:01:51,187.187 INFO    ] 200
[2026-06-22 22:01:51,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:01:51,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:01:51,245.245 INFO    ] No update needed
[2026-06-22 22:01:51,247.247 INFO    ] Checking for camera pi updates...
[2026-06-22 22:01:51,281.281 INFO    ] 200
[2026-06-22 22:01:51,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:01:51,325.325 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:01:51,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:01:51,413.413 INFO    ] No camera update needed
[2026-06-22 22:01:51,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:01:51,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:01:51,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:01:51,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:01:53,468.468 INFO    ] ================================================
[2026-06-22 22:01:53,484.484 INFO    ] Launching Daemon at Mon Jun 22 22:01:53 IST 2026
[2026-06-22 22:01:53,495.495 INFO    ] ================================================
[2026-06-22 22:01:54,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:01:54
[2026-06-22 22:01:54,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:01:55,135.135 INFO    ] Initializing speech engine...
[2026-06-22 22:01:55,142.142 INFO    ] 2026-06-22 22:01:55
[2026-06-22 22:01:55,419.419 INFO    ] 2026-06-22 22:01:55
[2026-06-22 22:01:55,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:01:55,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:01:55,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:01:55,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:01:55,971.971 INFO    ] time= 22/06/2026 22:01:55
[2026-06-22 22:01:55,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:01:55,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:01:56,131.131 INFO    ] No existing commands found in stream
[2026-06-22 22:02:01,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:02:01,161.161 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-22 22:02:03,301.301 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:02:03,304.304 INFO    ] Checking for system updates...
[2026-06-22 22:02:03,342.342 INFO    ] 200
[2026-06-22 22:02:03,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:02:03,401.401 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:02:03,403.403 INFO    ] No update needed
[2026-06-22 22:02:03,406.406 INFO    ] Checking for camera pi updates...
[2026-06-22 22:02:03,441.441 INFO    ] 200
[2026-06-22 22:02:03,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:02:03,486.486 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:02:03,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:02:03,580.580 INFO    ] No camera update needed
[2026-06-22 22:02:03,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:02:03,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:02:03,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:02:03,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:02:05,637.637 INFO    ] ================================================
[2026-06-22 22:02:05,652.652 INFO    ] Launching Daemon at Mon Jun 22 22:02:05 IST 2026
[2026-06-22 22:02:05,664.664 INFO    ] ================================================
[2026-06-22 22:02:06,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:02:06
[2026-06-22 22:02:06,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:02:07,145.145 INFO    ] Initializing speech engine...
[2026-06-22 22:02:07,154.154 INFO    ] 2026-06-22 22:02:07
[2026-06-22 22:02:07,453.453 INFO    ] 2026-06-22 22:02:07
[2026-06-22 22:02:07,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:02:07,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:02:07,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:02:07,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:02:07,888.888 INFO    ] time= 22/06/2026 22:02:07
[2026-06-22 22:02:07,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:02:07,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:02:08,051.051 INFO    ] No existing commands found in stream
[2026-06-22 22:02:13,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:02:13,078.078 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-22 22:02:16,263.263 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:02:16,265.265 INFO    ] Checking for system updates...
[2026-06-22 22:02:16,302.302 INFO    ] 200
[2026-06-22 22:02:16,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:02:16,366.366 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:02:16,368.368 INFO    ] No update needed
[2026-06-22 22:02:16,371.371 INFO    ] Checking for camera pi updates...
[2026-06-22 22:02:16,406.406 INFO    ] 200
[2026-06-22 22:02:16,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:02:16,454.454 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:02:16,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:02:16,537.537 INFO    ] No camera update needed
[2026-06-22 22:02:16,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:02:16,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:02:16,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:02:16,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:02:18,592.592 INFO    ] ================================================
[2026-06-22 22:02:18,607.607 INFO    ] Launching Daemon at Mon Jun 22 22:02:18 IST 2026
[2026-06-22 22:02:18,618.618 INFO    ] ================================================
[2026-06-22 22:02:19,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:02:19
[2026-06-22 22:02:19,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:02:19,953.953 INFO    ] Initializing speech engine...
[2026-06-22 22:02:19,975.975 INFO    ] 2026-06-22 22:02:19
[2026-06-22 22:02:20,228.228 INFO    ] 2026-06-22 22:02:20
[2026-06-22 22:02:20,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:02:20,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:02:20,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:02:20,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:02:20,707.707 INFO    ] time= 22/06/2026 22:02:20
[2026-06-22 22:02:20,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:02:20,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:02:20,930.930 INFO    ] No existing commands found in stream
[2026-06-22 22:02:25,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:02:25,948.948 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-22 22:02:32,294.294 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:02:32,297.297 INFO    ] Checking for system updates...
[2026-06-22 22:02:32,338.338 INFO    ] 200
[2026-06-22 22:02:32,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:02:32,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:02:32,398.398 INFO    ] No update needed
[2026-06-22 22:02:32,401.401 INFO    ] Checking for camera pi updates...
[2026-06-22 22:02:32,437.437 INFO    ] 200
[2026-06-22 22:02:32,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:02:32,482.482 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:02:32,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:02:32,543.543 INFO    ] No camera update needed
[2026-06-22 22:02:32,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:02:32,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:02:32,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:02:32,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:02:34,600.600 INFO    ] ================================================
[2026-06-22 22:02:34,615.615 INFO    ] Launching Daemon at Mon Jun 22 22:02:34 IST 2026
[2026-06-22 22:02:34,626.626 INFO    ] ================================================
[2026-06-22 22:02:35,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:02:35
[2026-06-22 22:02:35,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:02:36,063.063 INFO    ] Initializing speech engine...
[2026-06-22 22:02:36,072.072 INFO    ] 2026-06-22 22:02:36
[2026-06-22 22:02:36,365.365 INFO    ] 2026-06-22 22:02:36
[2026-06-22 22:02:36,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:02:36,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:02:36,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:02:36,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:02:36,783.783 INFO    ] time= 22/06/2026 22:02:36
[2026-06-22 22:02:36,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:02:36,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:02:36,853.853 INFO    ] No existing commands found in stream
[2026-06-22 22:02:41,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:02:41,877.877 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-22 22:02:44,123.123 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:02:44,124.124 INFO    ] Checking for system updates...
[2026-06-22 22:02:44,145.145 INFO    ] 200
[2026-06-22 22:02:44,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:02:44,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:02:44,178.178 INFO    ] No update needed
[2026-06-22 22:02:44,180.180 INFO    ] Checking for camera pi updates...
[2026-06-22 22:02:44,203.203 INFO    ] 200
[2026-06-22 22:02:44,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:02:44,247.247 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:02:44,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:02:44,454.454 INFO    ] No camera update needed
[2026-06-22 22:02:44,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:02:44,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:02:44,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:02:44,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:02:46,509.509 INFO    ] ================================================
[2026-06-22 22:02:46,524.524 INFO    ] Launching Daemon at Mon Jun 22 22:02:46 IST 2026
[2026-06-22 22:02:46,535.535 INFO    ] ================================================
[2026-06-22 22:02:47,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:02:47
[2026-06-22 22:02:47,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:02:48,005.005 INFO    ] Initializing speech engine...
[2026-06-22 22:02:48,014.014 INFO    ] 2026-06-22 22:02:48
[2026-06-22 22:02:48,260.260 INFO    ] 2026-06-22 22:02:48
[2026-06-22 22:02:48,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:02:48,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:02:48,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:02:48,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:02:48,693.693 INFO    ] time= 22/06/2026 22:02:48
[2026-06-22 22:02:48,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:02:48,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:02:48,955.955 INFO    ] No existing commands found in stream
[2026-06-22 22:02:53,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:02:53,983.983 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-22 22:02:55,631.631 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:02:55,634.634 INFO    ] Checking for system updates...
[2026-06-22 22:02:55,670.670 INFO    ] 200
[2026-06-22 22:02:55,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:02:55,726.726 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:02:55,728.728 INFO    ] No update needed
[2026-06-22 22:02:55,731.731 INFO    ] Checking for camera pi updates...
[2026-06-22 22:02:55,768.768 INFO    ] 200
[2026-06-22 22:02:55,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:02:55,811.811 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:02:55,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:02:55,880.880 INFO    ] No camera update needed
[2026-06-22 22:02:55,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:02:55,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:02:55,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:02:55,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:02:57,938.938 INFO    ] ================================================
[2026-06-22 22:02:57,953.953 INFO    ] Launching Daemon at Mon Jun 22 22:02:57 IST 2026
[2026-06-22 22:02:57,965.965 INFO    ] ================================================
[2026-06-22 22:02:58,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:02:58
[2026-06-22 22:02:59,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:02:59,344.344 INFO    ] Initializing speech engine...
[2026-06-22 22:02:59,359.359 INFO    ] 2026-06-22 22:02:59
[2026-06-22 22:02:59,626.626 INFO    ] 2026-06-22 22:02:59
[2026-06-22 22:02:59,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:03:03,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:03:03,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:03:04,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:03:04,444.444 INFO    ] time= 22/06/2026 22:03:04
[2026-06-22 22:03:04,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:03:04,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:03:04,501.501 INFO    ] No existing commands found in stream
[2026-06-22 22:03:09,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:03:09,514.514 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-22 22:03:13,868.868 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:03:13,872.872 INFO    ] Checking for system updates...
[2026-06-22 22:03:13,908.908 INFO    ] 200
[2026-06-22 22:03:13,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:03:13,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:03:13,974.974 INFO    ] No update needed
[2026-06-22 22:03:13,976.976 INFO    ] Checking for camera pi updates...
[2026-06-22 22:03:14,011.011 INFO    ] 200
[2026-06-22 22:03:14,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:03:14,053.053 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:03:14,139.139 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:03:14,142.142 INFO    ] No camera update needed
[2026-06-22 22:03:14,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:03:14,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:03:14,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:03:14,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:03:16,196.196 INFO    ] ================================================
[2026-06-22 22:03:16,211.211 INFO    ] Launching Daemon at Mon Jun 22 22:03:16 IST 2026
[2026-06-22 22:03:16,222.222 INFO    ] ================================================
[2026-06-22 22:03:16,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:03:16
[2026-06-22 22:03:17,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:03:17,709.709 INFO    ] Initializing speech engine...
[2026-06-22 22:03:17,723.723 INFO    ] 2026-06-22 22:03:17
[2026-06-22 22:03:18,015.015 INFO    ] 2026-06-22 22:03:18
[2026-06-22 22:03:18,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:03:18,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:03:18,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:03:18,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:03:18,512.512 INFO    ] time= 22/06/2026 22:03:18
[2026-06-22 22:03:18,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:03:18,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:03:18,699.699 INFO    ] No existing commands found in stream
[2026-06-22 22:03:23,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:03:23,719.719 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-22 22:03:27,062.062 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:03:27,066.066 INFO    ] Checking for system updates...
[2026-06-22 22:03:27,104.104 INFO    ] 200
[2026-06-22 22:03:27,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:03:27,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:03:27,164.164 INFO    ] No update needed
[2026-06-22 22:03:27,166.166 INFO    ] Checking for camera pi updates...
[2026-06-22 22:03:27,200.200 INFO    ] 200
[2026-06-22 22:03:27,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:03:27,248.248 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:03:27,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:03:27,334.334 INFO    ] No camera update needed
[2026-06-22 22:03:27,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:03:27,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:03:27,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:03:27,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:03:29,391.391 INFO    ] ================================================
[2026-06-22 22:03:29,406.406 INFO    ] Launching Daemon at Mon Jun 22 22:03:29 IST 2026
[2026-06-22 22:03:29,417.417 INFO    ] ================================================
[2026-06-22 22:03:29,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:03:29
[2026-06-22 22:03:30,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:03:30,820.820 INFO    ] Initializing speech engine...
[2026-06-22 22:03:30,842.842 INFO    ] 2026-06-22 22:03:30
[2026-06-22 22:03:31,101.101 INFO    ] 2026-06-22 22:03:31
[2026-06-22 22:03:31,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:03:34,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:03:34,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:03:34,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:03:34,803.803 INFO    ] time= 22/06/2026 22:03:34
[2026-06-22 22:03:34,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:03:34,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:03:34,901.901 INFO    ] No existing commands found in stream
[2026-06-22 22:03:39,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:03:39,914.914 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-22 22:03:42,592.592 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:03:42,593.593 INFO    ] Checking for system updates...
[2026-06-22 22:03:42,622.622 INFO    ] 200
[2026-06-22 22:03:42,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:03:42,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:03:42,690.690 INFO    ] No update needed
[2026-06-22 22:03:42,696.696 INFO    ] Checking for camera pi updates...
[2026-06-22 22:03:42,734.734 INFO    ] 200
[2026-06-22 22:03:42,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:03:42,783.783 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:03:42,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:03:42,869.869 INFO    ] No camera update needed
[2026-06-22 22:03:42,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:03:42,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:03:42,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:03:42,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:03:44,925.925 INFO    ] ================================================
[2026-06-22 22:03:44,940.940 INFO    ] Launching Daemon at Mon Jun 22 22:03:44 IST 2026
[2026-06-22 22:03:44,951.951 INFO    ] ================================================
[2026-06-22 22:03:45,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:03:45
[2026-06-22 22:03:46,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:03:46,491.491 INFO    ] Initializing speech engine...
[2026-06-22 22:03:46,506.506 INFO    ] 2026-06-22 22:03:46
[2026-06-22 22:03:46,788.788 INFO    ] 2026-06-22 22:03:46
[2026-06-22 22:03:46,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:03:47,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:03:47,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:03:47,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:03:47,255.255 INFO    ] time= 22/06/2026 22:03:47
[2026-06-22 22:03:47,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:03:47,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:03:47,467.467 INFO    ] No existing commands found in stream
[2026-06-22 22:03:52,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:03:52,502.502 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-22 22:03:54,001.001 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:03:54,004.004 INFO    ] Checking for system updates...
[2026-06-22 22:03:54,044.044 INFO    ] 200
[2026-06-22 22:03:54,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:03:54,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:03:54,104.104 INFO    ] No update needed
[2026-06-22 22:03:54,106.106 INFO    ] Checking for camera pi updates...
[2026-06-22 22:03:54,140.140 INFO    ] 200
[2026-06-22 22:03:54,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:03:54,184.184 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:03:54,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:03:54,263.263 INFO    ] No camera update needed
[2026-06-22 22:03:54,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:03:54,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:03:54,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:03:54,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:03:56,321.321 INFO    ] ================================================
[2026-06-22 22:03:56,336.336 INFO    ] Launching Daemon at Mon Jun 22 22:03:56 IST 2026
[2026-06-22 22:03:56,347.347 INFO    ] ================================================
[2026-06-22 22:03:57,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:03:57
[2026-06-22 22:03:57,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:03:58,006.006 INFO    ] Initializing speech engine...
[2026-06-22 22:03:58,020.020 INFO    ] 2026-06-22 22:03:58
[2026-06-22 22:03:58,333.333 INFO    ] 2026-06-22 22:03:58
[2026-06-22 22:03:58,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:03:58,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:03:58,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:03:58,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:03:58,846.846 INFO    ] time= 22/06/2026 22:03:58
[2026-06-22 22:03:58,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:03:58,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:03:59,002.002 INFO    ] No existing commands found in stream
[2026-06-22 22:04:04,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:04:04,056.056 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-22 22:04:08,280.280 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:04:08,283.283 INFO    ] Checking for system updates...
[2026-06-22 22:04:08,321.321 INFO    ] 200
[2026-06-22 22:04:08,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:04:08,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:04:08,389.389 INFO    ] No update needed
[2026-06-22 22:04:08,392.392 INFO    ] Checking for camera pi updates...
[2026-06-22 22:04:08,431.431 INFO    ] 200
[2026-06-22 22:04:08,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:04:08,481.481 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:04:08,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:04:08,574.574 INFO    ] No camera update needed
[2026-06-22 22:04:08,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:04:08,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:04:08,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:04:08,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:04:10,632.632 INFO    ] ================================================
[2026-06-22 22:04:10,647.647 INFO    ] Launching Daemon at Mon Jun 22 22:04:10 IST 2026
[2026-06-22 22:04:10,658.658 INFO    ] ================================================
[2026-06-22 22:04:11,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:04:11
[2026-06-22 22:04:11,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:04:12,088.088 INFO    ] Initializing speech engine...
[2026-06-22 22:04:12,095.095 INFO    ] 2026-06-22 22:04:12
[2026-06-22 22:04:12,375.375 INFO    ] 2026-06-22 22:04:12
[2026-06-22 22:04:12,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:04:12,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:04:12,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:04:12,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:04:12,867.867 INFO    ] time= 22/06/2026 22:04:12
[2026-06-22 22:04:12,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:04:12,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:04:13,092.092 INFO    ] No existing commands found in stream
[2026-06-22 22:04:18,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:04:18,120.120 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-22 22:04:21,106.106 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:04:21,109.109 INFO    ] Checking for system updates...
[2026-06-22 22:04:21,145.145 INFO    ] 200
[2026-06-22 22:04:21,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:04:21,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:04:21,211.211 INFO    ] No update needed
[2026-06-22 22:04:21,213.213 INFO    ] Checking for camera pi updates...
[2026-06-22 22:04:21,252.252 INFO    ] 200
[2026-06-22 22:04:21,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:04:21,297.297 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:04:21,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:04:21,392.392 INFO    ] No camera update needed
[2026-06-22 22:04:21,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:04:21,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:04:21,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:04:21,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:04:23,450.450 INFO    ] ================================================
[2026-06-22 22:04:23,465.465 INFO    ] Launching Daemon at Mon Jun 22 22:04:23 IST 2026
[2026-06-22 22:04:23,476.476 INFO    ] ================================================
[2026-06-22 22:04:24,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:04:24
[2026-06-22 22:04:24,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:04:24,909.909 INFO    ] Initializing speech engine...
[2026-06-22 22:04:24,918.918 INFO    ] 2026-06-22 22:04:24
[2026-06-22 22:04:25,218.218 INFO    ] 2026-06-22 22:04:25
[2026-06-22 22:04:25,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:04:25,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:04:25,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:04:25,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:04:25,582.582 INFO    ] time= 22/06/2026 22:04:25
[2026-06-22 22:04:25,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:04:25,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:04:25,670.670 INFO    ] No existing commands found in stream
[2026-06-22 22:04:30,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:04:30,715.715 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-22 22:04:36,920.920 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:04:36,923.923 INFO    ] Checking for system updates...
[2026-06-22 22:04:36,994.994 INFO    ] 200
[2026-06-22 22:04:36,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:04:37,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:04:37,053.053 INFO    ] No update needed
[2026-06-22 22:04:37,055.055 INFO    ] Checking for camera pi updates...
[2026-06-22 22:04:37,095.095 INFO    ] 200
[2026-06-22 22:04:37,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:04:37,139.139 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:04:37,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:04:37,228.228 INFO    ] No camera update needed
[2026-06-22 22:04:37,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:04:37,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:04:37,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:04:37,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:04:39,284.284 INFO    ] ================================================
[2026-06-22 22:04:39,300.300 INFO    ] Launching Daemon at Mon Jun 22 22:04:39 IST 2026
[2026-06-22 22:04:39,311.311 INFO    ] ================================================
[2026-06-22 22:04:39,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:04:39
[2026-06-22 22:04:40,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:04:40,641.641 INFO    ] Initializing speech engine...
[2026-06-22 22:04:40,651.651 INFO    ] 2026-06-22 22:04:40
[2026-06-22 22:04:40,905.905 INFO    ] 2026-06-22 22:04:40
[2026-06-22 22:04:40,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:04:41,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:04:41,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:04:41,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:04:41,388.388 INFO    ] time= 22/06/2026 22:04:41
[2026-06-22 22:04:41,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:04:41,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:04:41,577.577 INFO    ] No existing commands found in stream
[2026-06-22 22:04:46,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:04:46,605.605 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-22 22:04:48,680.680 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:04:48,683.683 INFO    ] Checking for system updates...
[2026-06-22 22:04:48,718.718 INFO    ] 200
[2026-06-22 22:04:48,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:04:48,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:04:48,780.780 INFO    ] No update needed
[2026-06-22 22:04:48,782.782 INFO    ] Checking for camera pi updates...
[2026-06-22 22:04:48,816.816 INFO    ] 200
[2026-06-22 22:04:48,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:04:48,859.859 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:04:49,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:04:49,050.050 INFO    ] No camera update needed
[2026-06-22 22:04:49,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:04:49,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:04:49,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:04:49,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:04:51,107.107 INFO    ] ================================================
[2026-06-22 22:04:51,122.122 INFO    ] Launching Daemon at Mon Jun 22 22:04:51 IST 2026
[2026-06-22 22:04:51,134.134 INFO    ] ================================================
[2026-06-22 22:04:51,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:04:51
[2026-06-22 22:04:52,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:04:52,460.460 INFO    ] Initializing speech engine...
[2026-06-22 22:04:52,468.468 INFO    ] 2026-06-22 22:04:52
[2026-06-22 22:04:52,769.769 INFO    ] 2026-06-22 22:04:52
[2026-06-22 22:04:52,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:04:53,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:04:53,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:04:53,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:04:53,203.203 INFO    ] time= 22/06/2026 22:04:53
[2026-06-22 22:04:53,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:04:53,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:04:53,293.293 INFO    ] No existing commands found in stream
[2026-06-22 22:04:58,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:04:58,321.321 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-22 22:05:00,392.392 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:05:00,395.395 INFO    ] Checking for system updates...
[2026-06-22 22:05:00,436.436 INFO    ] 200
[2026-06-22 22:05:00,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:05:00,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:05:00,502.502 INFO    ] No update needed
[2026-06-22 22:05:00,504.504 INFO    ] Checking for camera pi updates...
[2026-06-22 22:05:00,539.539 INFO    ] 200
[2026-06-22 22:05:00,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:05:00,582.582 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:05:00,663.663 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:05:00,665.665 INFO    ] No camera update needed
[2026-06-22 22:05:00,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:05:00,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:05:00,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:05:00,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:05:02,733.733 INFO    ] ================================================
[2026-06-22 22:05:02,758.758 INFO    ] Launching Daemon at Mon Jun 22 22:05:02 IST 2026
[2026-06-22 22:05:02,775.775 INFO    ] ================================================
[2026-06-22 22:05:03,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:05:03
[2026-06-22 22:05:04,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:05:04,421.421 INFO    ] Initializing speech engine...
[2026-06-22 22:05:04,433.433 INFO    ] 2026-06-22 22:05:04
[2026-06-22 22:05:04,747.747 INFO    ] 2026-06-22 22:05:04
[2026-06-22 22:05:04,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:05:08,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:05:08,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:05:09,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:05:09,593.593 INFO    ] time= 22/06/2026 22:05:09
[2026-06-22 22:05:09,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:05:09,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:05:09,646.646 INFO    ] No existing commands found in stream
[2026-06-22 22:05:14,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:05:14,660.660 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-22 22:05:18,556.556 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:05:18,558.558 INFO    ] Checking for system updates...
[2026-06-22 22:05:18,579.579 INFO    ] 200
[2026-06-22 22:05:18,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:05:18,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:05:18,614.614 INFO    ] No update needed
[2026-06-22 22:05:18,615.615 INFO    ] Checking for camera pi updates...
[2026-06-22 22:05:18,638.638 INFO    ] 200
[2026-06-22 22:05:18,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:05:18,668.668 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:05:18,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:05:18,747.747 INFO    ] No camera update needed
[2026-06-22 22:05:18,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:05:18,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:05:18,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:05:18,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:05:20,801.801 INFO    ] ================================================
[2026-06-22 22:05:20,817.817 INFO    ] Launching Daemon at Mon Jun 22 22:05:20 IST 2026
[2026-06-22 22:05:20,827.827 INFO    ] ================================================
[2026-06-22 22:05:21,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:05:21
[2026-06-22 22:05:21,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:05:22,256.256 INFO    ] Initializing speech engine...
[2026-06-22 22:05:22,265.265 INFO    ] 2026-06-22 22:05:22
[2026-06-22 22:05:22,515.515 INFO    ] 2026-06-22 22:05:22
[2026-06-22 22:05:22,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:05:22,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:05:22,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:05:22,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:05:22,891.891 INFO    ] time= 22/06/2026 22:05:22
[2026-06-22 22:05:22,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:05:22,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:05:23,071.071 INFO    ] No existing commands found in stream
[2026-06-22 22:05:28,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:05:28,101.101 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-22 22:05:31,942.942 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:05:31,945.945 INFO    ] Checking for system updates...
[2026-06-22 22:05:31,985.985 INFO    ] 200
[2026-06-22 22:05:31,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:05:32,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:05:32,049.049 INFO    ] No update needed
[2026-06-22 22:05:32,052.052 INFO    ] Checking for camera pi updates...
[2026-06-22 22:05:32,109.109 INFO    ] 200
[2026-06-22 22:05:32,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:05:32,167.167 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:05:32,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:05:32,230.230 INFO    ] No camera update needed
[2026-06-22 22:05:32,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:05:32,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:05:32,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:05:32,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:05:34,295.295 INFO    ] ================================================
[2026-06-22 22:05:34,311.311 INFO    ] Launching Daemon at Mon Jun 22 22:05:34 IST 2026
[2026-06-22 22:05:34,323.323 INFO    ] ================================================
[2026-06-22 22:05:34,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:05:34
[2026-06-22 22:05:35,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:05:35,895.895 INFO    ] Initializing speech engine...
[2026-06-22 22:05:35,900.900 INFO    ] 2026-06-22 22:05:35
[2026-06-22 22:05:36,143.143 INFO    ] 2026-06-22 22:05:36
[2026-06-22 22:05:36,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:05:39,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:05:39,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:05:40,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:05:40,539.539 INFO    ] time= 22/06/2026 22:05:40
[2026-06-22 22:05:40,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:05:40,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:05:40,616.616 INFO    ] No existing commands found in stream
[2026-06-22 22:05:45,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:05:45,629.629 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-22 22:05:49,084.084 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:05:49,086.086 INFO    ] Checking for system updates...
[2026-06-22 22:05:49,108.108 INFO    ] 200
[2026-06-22 22:05:49,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:05:49,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:05:49,154.154 INFO    ] No update needed
[2026-06-22 22:05:49,157.157 INFO    ] Checking for camera pi updates...
[2026-06-22 22:05:49,191.191 INFO    ] 200
[2026-06-22 22:05:49,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:05:49,242.242 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:05:49,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:05:49,332.332 INFO    ] No camera update needed
[2026-06-22 22:05:49,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:05:49,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:05:49,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:05:49,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:05:51,386.386 INFO    ] ================================================
[2026-06-22 22:05:51,401.401 INFO    ] Launching Daemon at Mon Jun 22 22:05:51 IST 2026
[2026-06-22 22:05:51,412.412 INFO    ] ================================================
[2026-06-22 22:05:51,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:05:51
[2026-06-22 22:05:52,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:05:52,749.749 INFO    ] Initializing speech engine...
[2026-06-22 22:05:52,759.759 INFO    ] 2026-06-22 22:05:52
[2026-06-22 22:05:53,006.006 INFO    ] 2026-06-22 22:05:53
[2026-06-22 22:05:53,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:05:53,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:05:53,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:05:53,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:05:53,476.476 INFO    ] time= 22/06/2026 22:05:53
[2026-06-22 22:05:53,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:05:53,573.573 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:05:53,707.707 INFO    ] No existing commands found in stream
[2026-06-22 22:05:58,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:05:58,737.737 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-22 22:05:59,737.737 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:05:59,740.740 INFO    ] Checking for system updates...
[2026-06-22 22:05:59,785.785 INFO    ] 200
[2026-06-22 22:05:59,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:05:59,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:05:59,849.849 INFO    ] No update needed
[2026-06-22 22:05:59,852.852 INFO    ] Checking for camera pi updates...
[2026-06-22 22:05:59,893.893 INFO    ] 200
[2026-06-22 22:05:59,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:05:59,951.951 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:06:00,052.052 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:06:00,056.056 INFO    ] No camera update needed
[2026-06-22 22:06:00,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:06:00,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:06:00,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:06:00,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:06:02,131.131 INFO    ] ================================================
[2026-06-22 22:06:02,154.154 INFO    ] Launching Daemon at Mon Jun 22 22:06:02 IST 2026
[2026-06-22 22:06:02,172.172 INFO    ] ================================================
[2026-06-22 22:06:02,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:06:02
[2026-06-22 22:06:03,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:06:03,831.831 INFO    ] Initializing speech engine...
[2026-06-22 22:06:03,844.844 INFO    ] 2026-06-22 22:06:03
[2026-06-22 22:06:04,121.121 INFO    ] 2026-06-22 22:06:04
[2026-06-22 22:06:04,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:06:04,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:06:04,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:06:04,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:06:04,605.605 INFO    ] time= 22/06/2026 22:06:04
[2026-06-22 22:06:04,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:06:04,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:06:04,735.735 INFO    ] No existing commands found in stream
[2026-06-22 22:06:09,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:06:09,748.748 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-22 22:06:13,136.136 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:06:13,139.139 INFO    ] Checking for system updates...
[2026-06-22 22:06:13,175.175 INFO    ] 200
[2026-06-22 22:06:13,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:06:13,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:06:13,232.232 INFO    ] No update needed
[2026-06-22 22:06:13,235.235 INFO    ] Checking for camera pi updates...
[2026-06-22 22:06:13,269.269 INFO    ] 200
[2026-06-22 22:06:13,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:06:13,317.317 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:06:13,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:06:13,408.408 INFO    ] No camera update needed
[2026-06-22 22:06:13,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:06:13,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:06:13,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:06:13,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:06:15,464.464 INFO    ] ================================================
[2026-06-22 22:06:15,479.479 INFO    ] Launching Daemon at Mon Jun 22 22:06:15 IST 2026
[2026-06-22 22:06:15,490.490 INFO    ] ================================================
[2026-06-22 22:06:16,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:06:16
[2026-06-22 22:06:16,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:06:16,980.980 INFO    ] Initializing speech engine...
[2026-06-22 22:06:16,993.993 INFO    ] 2026-06-22 22:06:16
[2026-06-22 22:06:17,280.280 INFO    ] 2026-06-22 22:06:17
[2026-06-22 22:06:17,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:06:17,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:06:17,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:06:17,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:06:17,762.762 INFO    ] time= 22/06/2026 22:06:17
[2026-06-22 22:06:17,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:06:17,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:06:17,984.984 INFO    ] No existing commands found in stream
[2026-06-22 22:06:23,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:06:23,005.005 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-22 22:06:26,568.568 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:06:26,571.571 INFO    ] Checking for system updates...
[2026-06-22 22:06:26,615.615 INFO    ] 200
[2026-06-22 22:06:26,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:06:26,674.674 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:06:26,677.677 INFO    ] No update needed
[2026-06-22 22:06:26,680.680 INFO    ] Checking for camera pi updates...
[2026-06-22 22:06:26,720.720 INFO    ] 200
[2026-06-22 22:06:26,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:06:26,768.768 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:06:26,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:06:26,850.850 INFO    ] No camera update needed
[2026-06-22 22:06:26,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:06:26,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:06:26,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:06:26,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:06:28,909.909 INFO    ] ================================================
[2026-06-22 22:06:28,925.925 INFO    ] Launching Daemon at Mon Jun 22 22:06:28 IST 2026
[2026-06-22 22:06:28,935.935 INFO    ] ================================================
[2026-06-22 22:06:29,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:06:29
[2026-06-22 22:06:30,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:06:30,383.383 INFO    ] Initializing speech engine...
[2026-06-22 22:06:30,406.406 INFO    ] 2026-06-22 22:06:30
[2026-06-22 22:06:30,673.673 INFO    ] 2026-06-22 22:06:30
[2026-06-22 22:06:30,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:06:30,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:06:30,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:06:31,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:06:31,060.060 INFO    ] time= 22/06/2026 22:06:31
[2026-06-22 22:06:31,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:06:31,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:06:31,187.187 INFO    ] No existing commands found in stream
[2026-06-22 22:06:36,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:06:36,203.203 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-22 22:06:41,721.721 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:06:41,724.724 INFO    ] Checking for system updates...
[2026-06-22 22:06:41,761.761 INFO    ] 200
[2026-06-22 22:06:41,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:06:41,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:06:41,820.820 INFO    ] No update needed
[2026-06-22 22:06:41,822.822 INFO    ] Checking for camera pi updates...
[2026-06-22 22:06:41,860.860 INFO    ] 200
[2026-06-22 22:06:41,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:06:41,904.904 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:06:41,985.985 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:06:41,988.988 INFO    ] No camera update needed
[2026-06-22 22:06:41,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:06:41,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:06:41,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:06:42,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:06:44,043.043 INFO    ] ================================================
[2026-06-22 22:06:44,058.058 INFO    ] Launching Daemon at Mon Jun 22 22:06:44 IST 2026
[2026-06-22 22:06:44,069.069 INFO    ] ================================================
[2026-06-22 22:06:44,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:06:44
[2026-06-22 22:06:45,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:06:45,612.612 INFO    ] Initializing speech engine...
[2026-06-22 22:06:45,625.625 INFO    ] 2026-06-22 22:06:45
[2026-06-22 22:06:45,938.938 INFO    ] 2026-06-22 22:06:45
[2026-06-22 22:06:46,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:06:46,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:06:46,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:06:46,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:06:46,464.464 INFO    ] time= 22/06/2026 22:06:46
[2026-06-22 22:06:46,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:06:46,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:06:46,635.635 INFO    ] No existing commands found in stream
[2026-06-22 22:06:51,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:06:51,669.669 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-22 22:06:54,699.699 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:06:54,700.700 INFO    ] Checking for system updates...
[2026-06-22 22:06:54,735.735 INFO    ] 200
[2026-06-22 22:06:54,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:06:54,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:06:54,797.797 INFO    ] No update needed
[2026-06-22 22:06:54,799.799 INFO    ] Checking for camera pi updates...
[2026-06-22 22:06:54,835.835 INFO    ] 200
[2026-06-22 22:06:54,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:06:54,881.881 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:06:55,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:06:55,084.084 INFO    ] No camera update needed
[2026-06-22 22:06:55,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:06:55,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:06:55,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:06:55,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:06:57,145.145 INFO    ] ================================================
[2026-06-22 22:06:57,160.160 INFO    ] Launching Daemon at Mon Jun 22 22:06:57 IST 2026
[2026-06-22 22:06:57,171.171 INFO    ] ================================================
[2026-06-22 22:06:57,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:06:57
[2026-06-22 22:06:58,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:06:58,500.500 INFO    ] Initializing speech engine...
[2026-06-22 22:06:58,508.508 INFO    ] 2026-06-22 22:06:58
[2026-06-22 22:06:58,806.806 INFO    ] 2026-06-22 22:06:58
[2026-06-22 22:06:58,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:06:58,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:06:59,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:06:59,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:06:59,188.188 INFO    ] time= 22/06/2026 22:06:59
[2026-06-22 22:06:59,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:06:59,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:06:59,318.318 INFO    ] No existing commands found in stream
[2026-06-22 22:07:04,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:07:04,334.334 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-22 22:07:07,551.551 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:07:07,554.554 INFO    ] Checking for system updates...
[2026-06-22 22:07:07,591.591 INFO    ] 200
[2026-06-22 22:07:07,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:07:07,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:07:07,657.657 INFO    ] No update needed
[2026-06-22 22:07:07,659.659 INFO    ] Checking for camera pi updates...
[2026-06-22 22:07:07,693.693 INFO    ] 200
[2026-06-22 22:07:07,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:07:07,736.736 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:07:07,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:07:07,824.824 INFO    ] No camera update needed
[2026-06-22 22:07:07,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:07:07,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:07:07,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:07:07,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:07:09,880.880 INFO    ] ================================================
[2026-06-22 22:07:09,895.895 INFO    ] Launching Daemon at Mon Jun 22 22:07:09 IST 2026
[2026-06-22 22:07:09,906.906 INFO    ] ================================================
[2026-06-22 22:07:10,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:07:10
[2026-06-22 22:07:11,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:07:11,398.398 INFO    ] Initializing speech engine...
[2026-06-22 22:07:11,409.409 INFO    ] 2026-06-22 22:07:11
[2026-06-22 22:07:11,658.658 INFO    ] 2026-06-22 22:07:11
[2026-06-22 22:07:11,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:07:12,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:07:12,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:07:13,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:07:13,568.568 INFO    ] time= 22/06/2026 22:07:13
[2026-06-22 22:07:13,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:07:13,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:07:13,667.667 INFO    ] No existing commands found in stream
[2026-06-22 22:07:18,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:07:18,681.681 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-22 22:07:20,143.143 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:07:20,146.146 INFO    ] Checking for system updates...
[2026-06-22 22:07:20,183.183 INFO    ] 200
[2026-06-22 22:07:20,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:07:20,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:07:20,253.253 INFO    ] No update needed
[2026-06-22 22:07:20,256.256 INFO    ] Checking for camera pi updates...
[2026-06-22 22:07:20,291.291 INFO    ] 200
[2026-06-22 22:07:20,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:07:20,336.336 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:07:20,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:07:20,422.422 INFO    ] No camera update needed
[2026-06-22 22:07:20,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:07:20,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:07:20,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:07:20,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:07:22,484.484 INFO    ] ================================================
[2026-06-22 22:07:22,500.500 INFO    ] Launching Daemon at Mon Jun 22 22:07:22 IST 2026
[2026-06-22 22:07:22,511.511 INFO    ] ================================================
[2026-06-22 22:07:23,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:07:23
[2026-06-22 22:07:23,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:07:24,087.087 INFO    ] Initializing speech engine...
[2026-06-22 22:07:24,094.094 INFO    ] 2026-06-22 22:07:24
[2026-06-22 22:07:24,378.378 INFO    ] 2026-06-22 22:07:24
[2026-06-22 22:07:24,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:07:24,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:07:24,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:07:24,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:07:24,874.874 INFO    ] time= 22/06/2026 22:07:24
[2026-06-22 22:07:24,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:07:24,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:07:25,069.069 INFO    ] No existing commands found in stream
[2026-06-22 22:07:30,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:07:30,100.100 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-22 22:07:32,926.926 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:07:32,929.929 INFO    ] Checking for system updates...
[2026-06-22 22:07:32,967.967 INFO    ] 200
[2026-06-22 22:07:32,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:07:33,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:07:33,040.040 INFO    ] No update needed
[2026-06-22 22:07:33,043.043 INFO    ] Checking for camera pi updates...
[2026-06-22 22:07:33,120.120 INFO    ] 200
[2026-06-22 22:07:33,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:07:33,173.173 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:07:33,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:07:33,228.228 INFO    ] No camera update needed
[2026-06-22 22:07:33,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:07:33,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:07:33,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:07:33,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:07:35,288.288 INFO    ] ================================================
[2026-06-22 22:07:35,303.303 INFO    ] Launching Daemon at Mon Jun 22 22:07:35 IST 2026
[2026-06-22 22:07:35,314.314 INFO    ] ================================================
[2026-06-22 22:07:35,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:07:35
[2026-06-22 22:07:36,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:07:36,687.687 INFO    ] Initializing speech engine...
[2026-06-22 22:07:36,711.711 INFO    ] 2026-06-22 22:07:36
[2026-06-22 22:07:36,967.967 INFO    ] 2026-06-22 22:07:36
[2026-06-22 22:07:37,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:07:37,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:07:37,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:07:37,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:07:37,467.467 INFO    ] time= 22/06/2026 22:07:37
[2026-06-22 22:07:37,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:07:37,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:07:37,670.670 INFO    ] No existing commands found in stream
[2026-06-22 22:07:42,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:07:42,690.690 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-22 22:07:44,705.705 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:07:44,708.708 INFO    ] Checking for system updates...
[2026-06-22 22:07:44,743.743 INFO    ] 200
[2026-06-22 22:07:44,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:07:44,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:07:44,802.802 INFO    ] No update needed
[2026-06-22 22:07:44,804.804 INFO    ] Checking for camera pi updates...
[2026-06-22 22:07:44,838.838 INFO    ] 200
[2026-06-22 22:07:44,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:07:44,882.882 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:07:44,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:07:44,966.966 INFO    ] No camera update needed
[2026-06-22 22:07:44,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:07:44,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:07:44,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:07:44,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:07:47,022.022 INFO    ] ================================================
[2026-06-22 22:07:47,038.038 INFO    ] Launching Daemon at Mon Jun 22 22:07:47 IST 2026
[2026-06-22 22:07:47,049.049 INFO    ] ================================================
[2026-06-22 22:07:47,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:07:47
[2026-06-22 22:07:48,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:07:48,593.593 INFO    ] Initializing speech engine...
[2026-06-22 22:07:48,606.606 INFO    ] 2026-06-22 22:07:48
[2026-06-22 22:07:48,886.886 INFO    ] 2026-06-22 22:07:48
[2026-06-22 22:07:48,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:07:49,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:07:49,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:07:49,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:07:49,357.357 INFO    ] time= 22/06/2026 22:07:49
[2026-06-22 22:07:49,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:07:49,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:07:49,562.562 INFO    ] No existing commands found in stream
[2026-06-22 22:07:54,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:07:54,590.590 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-22 22:07:56,832.832 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:07:56,835.835 INFO    ] Checking for system updates...
[2026-06-22 22:07:56,873.873 INFO    ] 200
[2026-06-22 22:07:56,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:07:56,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:07:56,935.935 INFO    ] No update needed
[2026-06-22 22:07:56,938.938 INFO    ] Checking for camera pi updates...
[2026-06-22 22:07:56,973.973 INFO    ] 200
[2026-06-22 22:07:56,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:07:57,018.018 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:07:57,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:07:57,123.123 INFO    ] No camera update needed
[2026-06-22 22:07:57,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:07:57,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:07:57,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:07:57,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:07:59,181.181 INFO    ] ================================================
[2026-06-22 22:07:59,197.197 INFO    ] Launching Daemon at Mon Jun 22 22:07:59 IST 2026
[2026-06-22 22:07:59,207.207 INFO    ] ================================================
[2026-06-22 22:07:59,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:07:59
[2026-06-22 22:08:00,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:08:00,684.684 INFO    ] Initializing speech engine...
[2026-06-22 22:08:00,691.691 INFO    ] 2026-06-22 22:08:00
[2026-06-22 22:08:00,950.950 INFO    ] 2026-06-22 22:08:00
[2026-06-22 22:08:01,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:08:01,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:08:01,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:08:01,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:08:01,402.402 INFO    ] time= 22/06/2026 22:08:01
[2026-06-22 22:08:01,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:08:01,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:08:01,616.616 INFO    ] No existing commands found in stream
[2026-06-22 22:08:06,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:08:06,649.649 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-22 22:08:10,042.042 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:08:10,043.043 INFO    ] Checking for system updates...
[2026-06-22 22:08:10,065.065 INFO    ] 200
[2026-06-22 22:08:10,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:08:10,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:08:10,114.114 INFO    ] No update needed
[2026-06-22 22:08:10,116.116 INFO    ] Checking for camera pi updates...
[2026-06-22 22:08:10,150.150 INFO    ] 200
[2026-06-22 22:08:10,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:08:10,194.194 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:08:10,285.285 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:08:10,287.287 INFO    ] No camera update needed
[2026-06-22 22:08:10,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:08:10,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:08:10,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:08:10,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:08:12,347.347 INFO    ] ================================================
[2026-06-22 22:08:12,363.363 INFO    ] Launching Daemon at Mon Jun 22 22:08:12 IST 2026
[2026-06-22 22:08:12,374.374 INFO    ] ================================================
[2026-06-22 22:08:13,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:08:13
[2026-06-22 22:08:13,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:08:13,971.971 INFO    ] Initializing speech engine...
[2026-06-22 22:08:13,983.983 INFO    ] 2026-06-22 22:08:13
[2026-06-22 22:08:14,299.299 INFO    ] 2026-06-22 22:08:14
[2026-06-22 22:08:14,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:08:15,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:08:15,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:08:16,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:08:16,343.343 INFO    ] time= 22/06/2026 22:08:16
[2026-06-22 22:08:16,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:08:16,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:08:16,443.443 INFO    ] No existing commands found in stream
[2026-06-22 22:08:21,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:08:21,463.463 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-22 22:08:22,501.501 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:08:22,503.503 INFO    ] Checking for system updates...
[2026-06-22 22:08:22,540.540 INFO    ] 200
[2026-06-22 22:08:22,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:08:22,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:08:22,598.598 INFO    ] No update needed
[2026-06-22 22:08:22,600.600 INFO    ] Checking for camera pi updates...
[2026-06-22 22:08:22,634.634 INFO    ] 200
[2026-06-22 22:08:22,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:08:22,679.679 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:08:22,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:08:22,765.765 INFO    ] No camera update needed
[2026-06-22 22:08:22,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:08:22,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:08:22,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:08:22,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:08:24,820.820 INFO    ] ================================================
[2026-06-22 22:08:24,836.836 INFO    ] Launching Daemon at Mon Jun 22 22:08:24 IST 2026
[2026-06-22 22:08:24,847.847 INFO    ] ================================================
[2026-06-22 22:08:25,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:08:25
[2026-06-22 22:08:26,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:08:26,419.419 INFO    ] Initializing speech engine...
[2026-06-22 22:08:26,428.428 INFO    ] 2026-06-22 22:08:26
[2026-06-22 22:08:26,676.676 INFO    ] 2026-06-22 22:08:26
[2026-06-22 22:08:26,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:08:26,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:08:26,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:08:27,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:08:27,224.224 INFO    ] time= 22/06/2026 22:08:27
[2026-06-22 22:08:27,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:08:27,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:08:27,400.400 INFO    ] No existing commands found in stream
[2026-06-22 22:08:32,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:08:32,429.429 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-22 22:08:36,013.013 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:08:36,016.016 INFO    ] Checking for system updates...
[2026-06-22 22:08:36,052.052 INFO    ] 200
[2026-06-22 22:08:36,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:08:36,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:08:36,111.111 INFO    ] No update needed
[2026-06-22 22:08:36,113.113 INFO    ] Checking for camera pi updates...
[2026-06-22 22:08:36,147.147 INFO    ] 200
[2026-06-22 22:08:36,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:08:36,189.189 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:08:36,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:08:36,273.273 INFO    ] No camera update needed
[2026-06-22 22:08:36,276.276 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:08:36,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:08:36,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:08:36,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:08:38,328.328 INFO    ] ================================================
[2026-06-22 22:08:38,343.343 INFO    ] Launching Daemon at Mon Jun 22 22:08:38 IST 2026
[2026-06-22 22:08:38,354.354 INFO    ] ================================================
[2026-06-22 22:08:38,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:08:38
[2026-06-22 22:08:39,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:08:39,811.811 INFO    ] Initializing speech engine...
[2026-06-22 22:08:39,820.820 INFO    ] 2026-06-22 22:08:39
[2026-06-22 22:08:40,068.068 INFO    ] 2026-06-22 22:08:40
[2026-06-22 22:08:40,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:08:40,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:08:40,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:08:40,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:08:40,522.522 INFO    ] time= 22/06/2026 22:08:40
[2026-06-22 22:08:40,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:08:40,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:08:40,688.688 INFO    ] No existing commands found in stream
[2026-06-22 22:08:45,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:08:45,703.703 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-22 22:08:49,576.576 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:08:49,577.577 INFO    ] Checking for system updates...
[2026-06-22 22:08:49,598.598 INFO    ] 200
[2026-06-22 22:08:49,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:08:49,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:08:49,633.633 INFO    ] No update needed
[2026-06-22 22:08:49,636.636 INFO    ] Checking for camera pi updates...
[2026-06-22 22:08:49,670.670 INFO    ] 200
[2026-06-22 22:08:49,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:08:49,713.713 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:08:49,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:08:49,796.796 INFO    ] No camera update needed
[2026-06-22 22:08:49,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:08:49,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:08:49,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:08:49,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:08:51,851.851 INFO    ] ================================================
[2026-06-22 22:08:51,866.866 INFO    ] Launching Daemon at Mon Jun 22 22:08:51 IST 2026
[2026-06-22 22:08:51,877.877 INFO    ] ================================================
[2026-06-22 22:08:52,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:08:52
[2026-06-22 22:08:52,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:08:53,261.261 INFO    ] Initializing speech engine...
[2026-06-22 22:08:53,267.267 INFO    ] 2026-06-22 22:08:53
[2026-06-22 22:08:53,517.517 INFO    ] 2026-06-22 22:08:53
[2026-06-22 22:08:53,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:08:53,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:08:53,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:08:54,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:08:54,118.118 INFO    ] time= 22/06/2026 22:08:54
[2026-06-22 22:08:54,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:08:54,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:08:54,271.271 INFO    ] No existing commands found in stream
[2026-06-22 22:08:59,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:08:59,300.300 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-22 22:09:03,510.510 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:09:03,513.513 INFO    ] Checking for system updates...
[2026-06-22 22:09:03,552.552 INFO    ] 200
[2026-06-22 22:09:03,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:09:03,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:09:03,626.626 INFO    ] No update needed
[2026-06-22 22:09:03,628.628 INFO    ] Checking for camera pi updates...
[2026-06-22 22:09:03,663.663 INFO    ] 200
[2026-06-22 22:09:03,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:09:03,718.718 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:09:03,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:09:03,791.791 INFO    ] No camera update needed
[2026-06-22 22:09:03,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:09:03,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:09:03,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:09:03,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:09:05,847.847 INFO    ] ================================================
[2026-06-22 22:09:05,862.862 INFO    ] Launching Daemon at Mon Jun 22 22:09:05 IST 2026
[2026-06-22 22:09:05,873.873 INFO    ] ================================================
[2026-06-22 22:09:06,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:09:06
[2026-06-22 22:09:07,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:09:07,393.393 INFO    ] Initializing speech engine...
[2026-06-22 22:09:07,407.407 INFO    ] 2026-06-22 22:09:07
[2026-06-22 22:09:07,681.681 INFO    ] 2026-06-22 22:09:07
[2026-06-22 22:09:07,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:09:07,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:09:08,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:09:08,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:09:08,246.246 INFO    ] time= 22/06/2026 22:09:08
[2026-06-22 22:09:08,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:09:08,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:09:08,406.406 INFO    ] No existing commands found in stream
[2026-06-22 22:09:13,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:09:13,434.434 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-22 22:09:16,123.123 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:09:16,124.124 INFO    ] Checking for system updates...
[2026-06-22 22:09:16,146.146 INFO    ] 200
[2026-06-22 22:09:16,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:09:16,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:09:16,191.191 INFO    ] No update needed
[2026-06-22 22:09:16,193.193 INFO    ] Checking for camera pi updates...
[2026-06-22 22:09:16,230.230 INFO    ] 200
[2026-06-22 22:09:16,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:09:16,279.279 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:09:16,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:09:16,340.340 INFO    ] No camera update needed
[2026-06-22 22:09:16,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:09:16,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:09:16,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:09:16,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:09:18,397.397 INFO    ] ================================================
[2026-06-22 22:09:18,413.413 INFO    ] Launching Daemon at Mon Jun 22 22:09:18 IST 2026
[2026-06-22 22:09:18,423.423 INFO    ] ================================================
[2026-06-22 22:09:19,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:09:19
[2026-06-22 22:09:19,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:09:19,989.989 INFO    ] Initializing speech engine...
[2026-06-22 22:09:20,001.001 INFO    ] 2026-06-22 22:09:19
[2026-06-22 22:09:20,295.295 INFO    ] 2026-06-22 22:09:20
[2026-06-22 22:09:20,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:09:20,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:09:20,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:09:20,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:09:20,842.842 INFO    ] time= 22/06/2026 22:09:20
[2026-06-22 22:09:20,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:09:20,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:09:21,033.033 INFO    ] No existing commands found in stream
[2026-06-22 22:09:26,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:09:26,062.062 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-22 22:09:28,223.223 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:09:28,226.226 INFO    ] Checking for system updates...
[2026-06-22 22:09:28,265.265 INFO    ] 200
[2026-06-22 22:09:28,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:09:28,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:09:28,325.325 INFO    ] No update needed
[2026-06-22 22:09:28,328.328 INFO    ] Checking for camera pi updates...
[2026-06-22 22:09:28,362.362 INFO    ] 200
[2026-06-22 22:09:28,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:09:28,411.411 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:09:28,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:09:28,478.478 INFO    ] No camera update needed
[2026-06-22 22:09:28,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:09:28,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:09:28,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:09:28,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:09:30,525.525 INFO    ] ================================================
[2026-06-22 22:09:30,541.541 INFO    ] Launching Daemon at Mon Jun 22 22:09:30 IST 2026
[2026-06-22 22:09:30,551.551 INFO    ] ================================================
[2026-06-22 22:09:31,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:09:31
[2026-06-22 22:09:31,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:09:32,099.099 INFO    ] Initializing speech engine...
[2026-06-22 22:09:32,109.109 INFO    ] 2026-06-22 22:09:32
[2026-06-22 22:09:32,376.376 INFO    ] 2026-06-22 22:09:32
[2026-06-22 22:09:32,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:09:32,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:09:32,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:09:32,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:09:32,968.968 INFO    ] time= 22/06/2026 22:09:32
[2026-06-22 22:09:32,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:09:32,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:09:33,121.121 INFO    ] No existing commands found in stream
[2026-06-22 22:09:38,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:09:38,158.158 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-22 22:09:39,103.103 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:09:39,106.106 INFO    ] Checking for system updates...
[2026-06-22 22:09:39,145.145 INFO    ] 200
[2026-06-22 22:09:39,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:09:39,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:09:39,208.208 INFO    ] No update needed
[2026-06-22 22:09:39,211.211 INFO    ] Checking for camera pi updates...
[2026-06-22 22:09:39,248.248 INFO    ] 200
[2026-06-22 22:09:39,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:09:39,290.290 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:09:39,381.381 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:09:39,384.384 INFO    ] No camera update needed
[2026-06-22 22:09:39,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:09:39,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:09:39,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:09:39,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:09:41,438.438 INFO    ] ================================================
[2026-06-22 22:09:41,453.453 INFO    ] Launching Daemon at Mon Jun 22 22:09:41 IST 2026
[2026-06-22 22:09:41,471.471 INFO    ] ================================================
[2026-06-22 22:09:42,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:09:42
[2026-06-22 22:09:42,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:09:42,921.921 INFO    ] Initializing speech engine...
[2026-06-22 22:09:42,932.932 INFO    ] 2026-06-22 22:09:42
[2026-06-22 22:09:43,237.237 INFO    ] 2026-06-22 22:09:43
[2026-06-22 22:09:43,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:09:46,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:09:46,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:09:47,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:09:47,495.495 INFO    ] time= 22/06/2026 22:09:47
[2026-06-22 22:09:47,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:09:47,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:09:47,563.563 INFO    ] No existing commands found in stream
[2026-06-22 22:09:52,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:09:52,575.575 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-22 22:09:53,799.799 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:09:53,801.801 INFO    ] Checking for system updates...
[2026-06-22 22:09:53,838.838 INFO    ] 200
[2026-06-22 22:09:53,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:09:53,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:09:53,898.898 INFO    ] No update needed
[2026-06-22 22:09:53,901.901 INFO    ] Checking for camera pi updates...
[2026-06-22 22:09:53,939.939 INFO    ] 200
[2026-06-22 22:09:53,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:09:53,982.982 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:09:54,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:09:54,036.036 INFO    ] No camera update needed
[2026-06-22 22:09:54,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:09:54,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:09:54,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:09:54,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:09:56,093.093 INFO    ] ================================================
[2026-06-22 22:09:56,108.108 INFO    ] Launching Daemon at Mon Jun 22 22:09:56 IST 2026
[2026-06-22 22:09:56,119.119 INFO    ] ================================================
[2026-06-22 22:09:56,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:09:56
[2026-06-22 22:09:57,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:09:57,598.598 INFO    ] Initializing speech engine...
[2026-06-22 22:09:57,604.604 INFO    ] 2026-06-22 22:09:57
[2026-06-22 22:09:57,866.866 INFO    ] 2026-06-22 22:09:57
[2026-06-22 22:09:57,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:09:58,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:09:58,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:09:58,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:09:58,409.409 INFO    ] time= 22/06/2026 22:09:58
[2026-06-22 22:09:58,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:09:58,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:09:58,563.563 INFO    ] No existing commands found in stream
[2026-06-22 22:10:03,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:10:03,581.581 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-22 22:10:09,118.118 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:10:09,121.121 INFO    ] Checking for system updates...
[2026-06-22 22:10:09,163.163 INFO    ] 200
[2026-06-22 22:10:09,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:10:09,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:10:09,232.232 INFO    ] No update needed
[2026-06-22 22:10:09,234.234 INFO    ] Checking for camera pi updates...
[2026-06-22 22:10:09,271.271 INFO    ] 200
[2026-06-22 22:10:09,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:10:09,314.314 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:10:09,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:10:09,399.399 INFO    ] No camera update needed
[2026-06-22 22:10:09,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:10:09,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:10:09,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:10:09,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:10:11,455.455 INFO    ] ================================================
[2026-06-22 22:10:11,470.470 INFO    ] Launching Daemon at Mon Jun 22 22:10:11 IST 2026
[2026-06-22 22:10:11,481.481 INFO    ] ================================================
[2026-06-22 22:10:12,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:10:12
[2026-06-22 22:10:12,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:10:12,904.904 INFO    ] Initializing speech engine...
[2026-06-22 22:10:12,912.912 INFO    ] 2026-06-22 22:10:12
[2026-06-22 22:10:13,181.181 INFO    ] 2026-06-22 22:10:13
[2026-06-22 22:10:13,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:10:13,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:10:13,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:10:13,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:10:13,646.646 INFO    ] time= 22/06/2026 22:10:13
[2026-06-22 22:10:13,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:10:13,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:10:13,865.865 INFO    ] No existing commands found in stream
[2026-06-22 22:10:18,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:10:18,898.898 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-22 22:10:20,095.095 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:10:20,097.097 INFO    ] Checking for system updates...
[2026-06-22 22:10:20,133.133 INFO    ] 200
[2026-06-22 22:10:20,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:10:20,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:10:20,190.190 INFO    ] No update needed
[2026-06-22 22:10:20,193.193 INFO    ] Checking for camera pi updates...
[2026-06-22 22:10:20,230.230 INFO    ] 200
[2026-06-22 22:10:20,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:10:20,272.272 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:10:20,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:10:20,359.359 INFO    ] No camera update needed
[2026-06-22 22:10:20,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:10:20,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:10:20,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:10:20,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:10:22,415.415 INFO    ] ================================================
[2026-06-22 22:10:22,430.430 INFO    ] Launching Daemon at Mon Jun 22 22:10:22 IST 2026
[2026-06-22 22:10:22,441.441 INFO    ] ================================================
[2026-06-22 22:10:23,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:10:23
[2026-06-22 22:10:23,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:10:23,857.857 INFO    ] Initializing speech engine...
[2026-06-22 22:10:23,876.876 INFO    ] 2026-06-22 22:10:23
[2026-06-22 22:10:24,123.123 INFO    ] 2026-06-22 22:10:24
[2026-06-22 22:10:24,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:10:24,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:10:24,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:10:24,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:10:24,681.681 INFO    ] time= 22/06/2026 22:10:24
[2026-06-22 22:10:24,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:10:24,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:10:24,829.829 INFO    ] No existing commands found in stream
[2026-06-22 22:10:29,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:10:29,848.848 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-22 22:10:31,209.209 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:10:31,212.212 INFO    ] Checking for system updates...
[2026-06-22 22:10:31,249.249 INFO    ] 200
[2026-06-22 22:10:31,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:10:31,305.305 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:10:31,308.308 INFO    ] No update needed
[2026-06-22 22:10:31,311.311 INFO    ] Checking for camera pi updates...
[2026-06-22 22:10:31,346.346 INFO    ] 200
[2026-06-22 22:10:31,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:10:31,391.391 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:10:31,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:10:31,478.478 INFO    ] No camera update needed
[2026-06-22 22:10:31,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:10:31,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:10:31,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:10:31,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:10:33,538.538 INFO    ] ================================================
[2026-06-22 22:10:33,553.553 INFO    ] Launching Daemon at Mon Jun 22 22:10:33 IST 2026
[2026-06-22 22:10:33,565.565 INFO    ] ================================================
[2026-06-22 22:10:34,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:10:34
[2026-06-22 22:10:34,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:10:35,016.016 INFO    ] Initializing speech engine...
[2026-06-22 22:10:35,026.026 INFO    ] 2026-06-22 22:10:35
[2026-06-22 22:10:35,270.270 INFO    ] 2026-06-22 22:10:35
[2026-06-22 22:10:35,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:10:35,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:10:35,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:10:35,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:10:35,764.764 INFO    ] time= 22/06/2026 22:10:35
[2026-06-22 22:10:35,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:10:35,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:10:35,977.977 INFO    ] No existing commands found in stream
[2026-06-22 22:10:40,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:10:40,992.992 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-22 22:10:43,604.604 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:10:43,607.607 INFO    ] Checking for system updates...
[2026-06-22 22:10:43,646.646 INFO    ] 200
[2026-06-22 22:10:43,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:10:43,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:10:43,710.710 INFO    ] No update needed
[2026-06-22 22:10:43,713.713 INFO    ] Checking for camera pi updates...
[2026-06-22 22:10:43,747.747 INFO    ] 200
[2026-06-22 22:10:43,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:10:43,790.790 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:10:43,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:10:43,904.904 INFO    ] No camera update needed
[2026-06-22 22:10:43,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:10:43,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:10:43,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:10:43,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:10:45,961.961 INFO    ] ================================================
[2026-06-22 22:10:45,978.978 INFO    ] Launching Daemon at Mon Jun 22 22:10:45 IST 2026
[2026-06-22 22:10:45,989.989 INFO    ] ================================================
[2026-06-22 22:10:46,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:10:46
[2026-06-22 22:10:47,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:10:47,295.295 INFO    ] Initializing speech engine...
[2026-06-22 22:10:47,298.298 INFO    ] 2026-06-22 22:10:47
[2026-06-22 22:10:47,569.569 INFO    ] 2026-06-22 22:10:47
[2026-06-22 22:10:47,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:10:49,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:10:49,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:10:50,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:10:50,332.332 INFO    ] time= 22/06/2026 22:10:50
[2026-06-22 22:10:50,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:10:50,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:10:50,444.444 INFO    ] No existing commands found in stream
[2026-06-22 22:10:55,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:10:55,457.457 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-22 22:10:58,978.978 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:10:58,980.980 INFO    ] Checking for system updates...
[2026-06-22 22:10:59,002.002 INFO    ] 200
[2026-06-22 22:10:59,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:10:59,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:10:59,039.039 INFO    ] No update needed
[2026-06-22 22:10:59,040.040 INFO    ] Checking for camera pi updates...
[2026-06-22 22:10:59,062.062 INFO    ] 200
[2026-06-22 22:10:59,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:10:59,093.093 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:10:59,174.174 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:10:59,177.177 INFO    ] No camera update needed
[2026-06-22 22:10:59,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:10:59,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:10:59,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:10:59,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:11:01,252.252 INFO    ] ================================================
[2026-06-22 22:11:01,277.277 INFO    ] Launching Daemon at Mon Jun 22 22:11:01 IST 2026
[2026-06-22 22:11:01,312.312 INFO    ] ================================================
[2026-06-22 22:11:01,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:11:01
[2026-06-22 22:11:02,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:11:02,941.941 INFO    ] Initializing speech engine...
[2026-06-22 22:11:02,952.952 INFO    ] 2026-06-22 22:11:02
[2026-06-22 22:11:03,225.225 INFO    ] 2026-06-22 22:11:03
[2026-06-22 22:11:03,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:11:03,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:11:03,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:11:03,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:11:03,742.742 INFO    ] time= 22/06/2026 22:11:03
[2026-06-22 22:11:03,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:11:03,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:11:03,947.947 INFO    ] No existing commands found in stream
[2026-06-22 22:11:08,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:11:08,969.969 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-22 22:11:12,261.261 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:11:12,264.264 INFO    ] Checking for system updates...
[2026-06-22 22:11:12,301.301 INFO    ] 200
[2026-06-22 22:11:12,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:11:12,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:11:12,361.361 INFO    ] No update needed
[2026-06-22 22:11:12,364.364 INFO    ] Checking for camera pi updates...
[2026-06-22 22:11:12,404.404 INFO    ] 200
[2026-06-22 22:11:12,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:11:12,450.450 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:11:12,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:11:12,626.626 INFO    ] No camera update needed
[2026-06-22 22:11:12,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:11:12,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:11:12,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:11:12,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:11:14,686.686 INFO    ] ================================================
[2026-06-22 22:11:14,701.701 INFO    ] Launching Daemon at Mon Jun 22 22:11:14 IST 2026
[2026-06-22 22:11:14,712.712 INFO    ] ================================================
[2026-06-22 22:11:15,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:11:15
[2026-06-22 22:11:15,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:11:16,060.060 INFO    ] Initializing speech engine...
[2026-06-22 22:11:16,070.070 INFO    ] 2026-06-22 22:11:16
[2026-06-22 22:11:16,320.320 INFO    ] 2026-06-22 22:11:16
[2026-06-22 22:11:16,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:11:19,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:11:19,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:11:20,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:11:20,290.290 INFO    ] time= 22/06/2026 22:11:20
[2026-06-22 22:11:20,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:11:20,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:11:20,356.356 INFO    ] No existing commands found in stream
[2026-06-22 22:11:25,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:11:25,368.368 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-22 22:11:26,674.674 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:11:26,677.677 INFO    ] Checking for system updates...
[2026-06-22 22:11:26,718.718 INFO    ] 200
[2026-06-22 22:11:26,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:11:26,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:11:26,778.778 INFO    ] No update needed
[2026-06-22 22:11:26,781.781 INFO    ] Checking for camera pi updates...
[2026-06-22 22:11:26,819.819 INFO    ] 200
[2026-06-22 22:11:26,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:11:26,864.864 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:11:26,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:11:26,938.938 INFO    ] No camera update needed
[2026-06-22 22:11:26,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:11:26,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:11:26,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:11:26,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:11:29,998.998 INFO    ] ================================================
[2026-06-22 22:11:29,013.013 INFO    ] Launching Daemon at Mon Jun 22 22:11:29 IST 2026
[2026-06-22 22:11:29,024.024 INFO    ] ================================================
[2026-06-22 22:11:29,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:11:29
[2026-06-22 22:11:30,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:11:30,481.481 INFO    ] Initializing speech engine...
[2026-06-22 22:11:30,490.490 INFO    ] 2026-06-22 22:11:30
[2026-06-22 22:11:30,749.749 INFO    ] 2026-06-22 22:11:30
[2026-06-22 22:11:30,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:11:31,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:11:31,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:11:31,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:11:31,243.243 INFO    ] time= 22/06/2026 22:11:31
[2026-06-22 22:11:31,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:11:31,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:11:31,455.455 INFO    ] No existing commands found in stream
[2026-06-22 22:11:36,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:11:36,487.487 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-22 22:11:38,821.821 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:11:38,824.824 INFO    ] Checking for system updates...
[2026-06-22 22:11:38,864.864 INFO    ] 200
[2026-06-22 22:11:38,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:11:38,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:11:38,922.922 INFO    ] No update needed
[2026-06-22 22:11:38,925.925 INFO    ] Checking for camera pi updates...
[2026-06-22 22:11:38,959.959 INFO    ] 200
[2026-06-22 22:11:38,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:11:39,005.005 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:11:39,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:11:39,083.083 INFO    ] No camera update needed
[2026-06-22 22:11:39,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:11:39,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:11:39,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:11:39,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:11:41,141.141 INFO    ] ================================================
[2026-06-22 22:11:41,158.158 INFO    ] Launching Daemon at Mon Jun 22 22:11:41 IST 2026
[2026-06-22 22:11:41,169.169 INFO    ] ================================================
[2026-06-22 22:11:41,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:11:41
[2026-06-22 22:11:42,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:11:42,580.580 INFO    ] Initializing speech engine...
[2026-06-22 22:11:42,596.596 INFO    ] 2026-06-22 22:11:42
[2026-06-22 22:11:42,890.890 INFO    ] 2026-06-22 22:11:42
[2026-06-22 22:11:42,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:11:43,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:11:43,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:11:43,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:11:43,373.373 INFO    ] time= 22/06/2026 22:11:43
[2026-06-22 22:11:43,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:11:43,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:11:43,576.576 INFO    ] No existing commands found in stream
[2026-06-22 22:11:48,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:11:48,602.602 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-22 22:11:52,015.015 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:11:52,018.018 INFO    ] Checking for system updates...
[2026-06-22 22:11:52,056.056 INFO    ] 200
[2026-06-22 22:11:52,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:11:52,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:11:52,117.117 INFO    ] No update needed
[2026-06-22 22:11:52,120.120 INFO    ] Checking for camera pi updates...
[2026-06-22 22:11:52,156.156 INFO    ] 200
[2026-06-22 22:11:52,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:11:52,201.201 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:11:52,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:11:52,303.303 INFO    ] No camera update needed
[2026-06-22 22:11:52,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:11:52,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:11:52,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:11:52,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:11:54,364.364 INFO    ] ================================================
[2026-06-22 22:11:54,380.380 INFO    ] Launching Daemon at Mon Jun 22 22:11:54 IST 2026
[2026-06-22 22:11:54,391.391 INFO    ] ================================================
[2026-06-22 22:11:55,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:11:55
[2026-06-22 22:11:55,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:11:56,065.065 INFO    ] Initializing speech engine...
[2026-06-22 22:11:56,073.073 INFO    ] 2026-06-22 22:11:56
[2026-06-22 22:11:56,351.351 INFO    ] 2026-06-22 22:11:56
[2026-06-22 22:11:56,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:11:56,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:11:56,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:11:56,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:11:56,926.926 INFO    ] time= 22/06/2026 22:11:56
[2026-06-22 22:11:56,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:11:56,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:11:57,101.101 INFO    ] No existing commands found in stream
[2026-06-22 22:12:02,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:12:02,137.137 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-22 22:12:04,864.864 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:12:04,867.867 INFO    ] Checking for system updates...
[2026-06-22 22:12:04,905.905 INFO    ] 200
[2026-06-22 22:12:04,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:12:04,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:12:04,963.963 INFO    ] No update needed
[2026-06-22 22:12:04,966.966 INFO    ] Checking for camera pi updates...
[2026-06-22 22:12:05,000.000 INFO    ] 200
[2026-06-22 22:12:05,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:12:05,045.045 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:12:05,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:12:05,131.131 INFO    ] No camera update needed
[2026-06-22 22:12:05,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:12:05,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:12:05,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:12:05,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:12:07,188.188 INFO    ] ================================================
[2026-06-22 22:12:07,203.203 INFO    ] Launching Daemon at Mon Jun 22 22:12:07 IST 2026
[2026-06-22 22:12:07,213.213 INFO    ] ================================================
[2026-06-22 22:12:07,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:12:07
[2026-06-22 22:12:08,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:12:08,713.713 INFO    ] Initializing speech engine...
[2026-06-22 22:12:08,727.727 INFO    ] 2026-06-22 22:12:08
[2026-06-22 22:12:09,020.020 INFO    ] 2026-06-22 22:12:09
[2026-06-22 22:12:09,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:12:09,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:12:09,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:12:09,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:12:09,504.504 INFO    ] time= 22/06/2026 22:12:09
[2026-06-22 22:12:09,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:12:09,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:12:09,695.695 INFO    ] No existing commands found in stream
[2026-06-22 22:12:14,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:12:14,727.727 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-22 22:12:21,911.911 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:12:21,913.913 INFO    ] Checking for system updates...
[2026-06-22 22:12:21,934.934 INFO    ] 200
[2026-06-22 22:12:21,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:12:21,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:12:21,967.967 INFO    ] No update needed
[2026-06-22 22:12:21,969.969 INFO    ] Checking for camera pi updates...
[2026-06-22 22:12:21,988.988 INFO    ] 200
[2026-06-22 22:12:21,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:12:22,014.014 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:12:22,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:12:22,108.108 INFO    ] No camera update needed
[2026-06-22 22:12:22,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:12:22,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:12:22,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:12:22,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:12:24,166.166 INFO    ] ================================================
[2026-06-22 22:12:24,181.181 INFO    ] Launching Daemon at Mon Jun 22 22:12:24 IST 2026
[2026-06-22 22:12:24,192.192 INFO    ] ================================================
[2026-06-22 22:12:24,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:12:24
[2026-06-22 22:12:25,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:12:25,659.659 INFO    ] Initializing speech engine...
[2026-06-22 22:12:25,677.677 INFO    ] 2026-06-22 22:12:25
[2026-06-22 22:12:25,950.950 INFO    ] 2026-06-22 22:12:25
[2026-06-22 22:12:25,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:12:26,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:12:26,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:12:26,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:12:26,368.368 INFO    ] time= 22/06/2026 22:12:26
[2026-06-22 22:12:26,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:12:26,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:12:26,518.518 INFO    ] No existing commands found in stream
[2026-06-22 22:12:31,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:12:31,551.551 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-22 22:12:34,437.437 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:12:34,440.440 INFO    ] Checking for system updates...
[2026-06-22 22:12:34,478.478 INFO    ] 200
[2026-06-22 22:12:34,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:12:34,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:12:34,544.544 INFO    ] No update needed
[2026-06-22 22:12:34,547.547 INFO    ] Checking for camera pi updates...
[2026-06-22 22:12:34,581.581 INFO    ] 200
[2026-06-22 22:12:34,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:12:34,630.630 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:12:34,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:12:34,718.718 INFO    ] No camera update needed
[2026-06-22 22:12:34,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:12:34,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:12:34,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:12:34,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:12:36,774.774 INFO    ] ================================================
[2026-06-22 22:12:36,790.790 INFO    ] Launching Daemon at Mon Jun 22 22:12:36 IST 2026
[2026-06-22 22:12:36,802.802 INFO    ] ================================================
[2026-06-22 22:12:37,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:12:37
[2026-06-22 22:12:38,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:12:38,420.420 INFO    ] Initializing speech engine...
[2026-06-22 22:12:38,428.428 INFO    ] 2026-06-22 22:12:38
[2026-06-22 22:12:38,705.705 INFO    ] 2026-06-22 22:12:38
[2026-06-22 22:12:38,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:12:39,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:12:39,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:12:39,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:12:39,178.178 INFO    ] time= 22/06/2026 22:12:39
[2026-06-22 22:12:39,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:12:39,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:12:39,332.332 INFO    ] No existing commands found in stream
[2026-06-22 22:12:44,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:12:44,357.357 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-22 22:12:45,716.716 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:12:45,719.719 INFO    ] Checking for system updates...
[2026-06-22 22:12:45,754.754 INFO    ] 200
[2026-06-22 22:12:45,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:12:45,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:12:45,812.812 INFO    ] No update needed
[2026-06-22 22:12:45,814.814 INFO    ] Checking for camera pi updates...
[2026-06-22 22:12:45,851.851 INFO    ] 200
[2026-06-22 22:12:45,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:12:45,895.895 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:12:45,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:12:45,985.985 INFO    ] No camera update needed
[2026-06-22 22:12:45,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:12:45,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:12:45,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:12:46,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:12:48,041.041 INFO    ] ================================================
[2026-06-22 22:12:48,056.056 INFO    ] Launching Daemon at Mon Jun 22 22:12:48 IST 2026
[2026-06-22 22:12:48,067.067 INFO    ] ================================================
[2026-06-22 22:12:48,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:12:48
[2026-06-22 22:12:49,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:12:49,575.575 INFO    ] Initializing speech engine...
[2026-06-22 22:12:49,587.587 INFO    ] 2026-06-22 22:12:49
[2026-06-22 22:12:49,866.866 INFO    ] 2026-06-22 22:12:49
[2026-06-22 22:12:49,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:12:52,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:12:52,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:12:53,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:12:53,410.410 INFO    ] time= 22/06/2026 22:12:53
[2026-06-22 22:12:53,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:12:53,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:12:53,465.465 INFO    ] No existing commands found in stream
[2026-06-22 22:12:58,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:12:58,478.478 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-22 22:12:59,502.502 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:12:59,504.504 INFO    ] Checking for system updates...
[2026-06-22 22:12:59,526.526 INFO    ] 200
[2026-06-22 22:12:59,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:12:59,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:12:59,574.574 INFO    ] No update needed
[2026-06-22 22:12:59,577.577 INFO    ] Checking for camera pi updates...
[2026-06-22 22:12:59,612.612 INFO    ] 200
[2026-06-22 22:12:59,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:12:59,657.657 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:12:59,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:12:59,757.757 INFO    ] No camera update needed
[2026-06-22 22:12:59,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:12:59,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:12:59,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:12:59,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:13:01,820.820 INFO    ] ================================================
[2026-06-22 22:13:01,845.845 INFO    ] Launching Daemon at Mon Jun 22 22:13:01 IST 2026
[2026-06-22 22:13:01,867.867 INFO    ] ================================================
[2026-06-22 22:13:02,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:13:02
[2026-06-22 22:13:03,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:13:03,498.498 INFO    ] Initializing speech engine...
[2026-06-22 22:13:03,523.523 INFO    ] 2026-06-22 22:13:03
[2026-06-22 22:13:03,797.797 INFO    ] 2026-06-22 22:13:03
[2026-06-22 22:13:03,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:13:04,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:13:04,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:13:04,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:13:04,211.211 INFO    ] time= 22/06/2026 22:13:04
[2026-06-22 22:13:04,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:13:04,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:13:04,302.302 INFO    ] No existing commands found in stream
[2026-06-22 22:13:09,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:13:09,320.320 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-22 22:13:11,470.470 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:13:11,471.471 INFO    ] Checking for system updates...
[2026-06-22 22:13:11,494.494 INFO    ] 200
[2026-06-22 22:13:11,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:13:11,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:13:11,527.527 INFO    ] No update needed
[2026-06-22 22:13:11,529.529 INFO    ] Checking for camera pi updates...
[2026-06-22 22:13:11,549.549 INFO    ] 200
[2026-06-22 22:13:11,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:13:11,596.596 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:13:11,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:13:11,680.680 INFO    ] No camera update needed
[2026-06-22 22:13:11,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:13:11,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:13:11,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:13:11,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:13:13,735.735 INFO    ] ================================================
[2026-06-22 22:13:13,751.751 INFO    ] Launching Daemon at Mon Jun 22 22:13:13 IST 2026
[2026-06-22 22:13:13,762.762 INFO    ] ================================================
[2026-06-22 22:13:14,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:13:14
[2026-06-22 22:13:14,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:13:15,242.242 INFO    ] Initializing speech engine...
[2026-06-22 22:13:15,250.250 INFO    ] 2026-06-22 22:13:15
[2026-06-22 22:13:15,533.533 INFO    ] 2026-06-22 22:13:15
[2026-06-22 22:13:15,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:13:15,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:13:15,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:13:16,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:13:16,069.069 INFO    ] time= 22/06/2026 22:13:16
[2026-06-22 22:13:16,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:13:16,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:13:16,222.222 INFO    ] No existing commands found in stream
[2026-06-22 22:13:21,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:13:21,241.241 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-22 22:13:24,232.232 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:13:24,233.233 INFO    ] Checking for system updates...
[2026-06-22 22:13:24,255.255 INFO    ] 200
[2026-06-22 22:13:24,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:13:24,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:13:24,317.317 INFO    ] No update needed
[2026-06-22 22:13:24,324.324 INFO    ] Checking for camera pi updates...
[2026-06-22 22:13:24,360.360 INFO    ] 200
[2026-06-22 22:13:24,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:13:24,406.406 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:13:24,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:13:24,588.588 INFO    ] No camera update needed
[2026-06-22 22:13:24,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:13:24,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:13:24,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:13:24,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:13:26,650.650 INFO    ] ================================================
[2026-06-22 22:13:26,669.669 INFO    ] Launching Daemon at Mon Jun 22 22:13:26 IST 2026
[2026-06-22 22:13:26,682.682 INFO    ] ================================================
[2026-06-22 22:13:27,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:13:27
[2026-06-22 22:13:27,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:13:28,283.283 INFO    ] Initializing speech engine...
[2026-06-22 22:13:28,298.298 INFO    ] 2026-06-22 22:13:28
[2026-06-22 22:13:28,565.565 INFO    ] 2026-06-22 22:13:28
[2026-06-22 22:13:28,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:13:28,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:13:28,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:13:29,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:13:29,056.056 INFO    ] time= 22/06/2026 22:13:29
[2026-06-22 22:13:29,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:13:29,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:13:29,281.281 INFO    ] No existing commands found in stream
[2026-06-22 22:13:34,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:13:34,313.313 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-22 22:13:38,757.757 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:13:38,758.758 INFO    ] Checking for system updates...
[2026-06-22 22:13:38,779.779 INFO    ] 200
[2026-06-22 22:13:38,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:13:38,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:13:38,832.832 INFO    ] No update needed
[2026-06-22 22:13:38,835.835 INFO    ] Checking for camera pi updates...
[2026-06-22 22:13:38,870.870 INFO    ] 200
[2026-06-22 22:13:38,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:13:38,921.921 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:13:39,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:13:39,021.021 INFO    ] No camera update needed
[2026-06-22 22:13:39,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:13:39,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:13:39,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:13:39,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:13:41,076.076 INFO    ] ================================================
[2026-06-22 22:13:41,092.092 INFO    ] Launching Daemon at Mon Jun 22 22:13:41 IST 2026
[2026-06-22 22:13:41,103.103 INFO    ] ================================================
[2026-06-22 22:13:41,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:13:41
[2026-06-22 22:13:42,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:13:42,604.604 INFO    ] Initializing speech engine...
[2026-06-22 22:13:42,611.611 INFO    ] 2026-06-22 22:13:42
[2026-06-22 22:13:42,888.888 INFO    ] 2026-06-22 22:13:42
[2026-06-22 22:13:42,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:13:43,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:13:43,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:13:43,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:13:43,357.357 INFO    ] time= 22/06/2026 22:13:43
[2026-06-22 22:13:43,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:13:43,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:13:43,568.568 INFO    ] No existing commands found in stream
[2026-06-22 22:13:48,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:13:48,605.605 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-22 22:13:54,363.363 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:13:54,365.365 INFO    ] Checking for system updates...
[2026-06-22 22:13:54,388.388 INFO    ] 200
[2026-06-22 22:13:54,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:13:54,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:13:54,424.424 INFO    ] No update needed
[2026-06-22 22:13:54,426.426 INFO    ] Checking for camera pi updates...
[2026-06-22 22:13:54,458.458 INFO    ] 200
[2026-06-22 22:13:54,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:13:54,507.507 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:13:54,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:13:54,607.607 INFO    ] No camera update needed
[2026-06-22 22:13:54,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:13:54,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:13:54,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:13:54,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:13:56,662.662 INFO    ] ================================================
[2026-06-22 22:13:56,677.677 INFO    ] Launching Daemon at Mon Jun 22 22:13:56 IST 2026
[2026-06-22 22:13:56,688.688 INFO    ] ================================================
[2026-06-22 22:13:57,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:13:57
[2026-06-22 22:13:57,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:13:58,151.151 INFO    ] Initializing speech engine...
[2026-06-22 22:13:58,157.157 INFO    ] 2026-06-22 22:13:58
[2026-06-22 22:13:58,408.408 INFO    ] 2026-06-22 22:13:58
[2026-06-22 22:13:58,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:13:58,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:13:58,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:13:58,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:13:58,872.872 INFO    ] time= 22/06/2026 22:13:58
[2026-06-22 22:13:58,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:13:58,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:13:59,127.127 INFO    ] No existing commands found in stream
[2026-06-22 22:14:04,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:14:04,150.150 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-22 22:14:06,637.637 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:14:06,640.640 INFO    ] Checking for system updates...
[2026-06-22 22:14:06,676.676 INFO    ] 200
[2026-06-22 22:14:06,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:14:06,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:14:06,734.734 INFO    ] No update needed
[2026-06-22 22:14:06,736.736 INFO    ] Checking for camera pi updates...
[2026-06-22 22:14:06,771.771 INFO    ] 200
[2026-06-22 22:14:06,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:14:06,814.814 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:14:06,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:14:06,898.898 INFO    ] No camera update needed
[2026-06-22 22:14:06,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:14:06,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:14:06,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:14:06,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:14:08,955.955 INFO    ] ================================================
[2026-06-22 22:14:08,970.970 INFO    ] Launching Daemon at Mon Jun 22 22:14:08 IST 2026
[2026-06-22 22:14:08,981.981 INFO    ] ================================================
[2026-06-22 22:14:09,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:14:09
[2026-06-22 22:14:10,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:14:10,391.391 INFO    ] Initializing speech engine...
[2026-06-22 22:14:10,397.397 INFO    ] 2026-06-22 22:14:10
[2026-06-22 22:14:10,691.691 INFO    ] 2026-06-22 22:14:10
[2026-06-22 22:14:10,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:14:10,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:14:10,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:14:11,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:14:11,098.098 INFO    ] time= 22/06/2026 22:14:11
[2026-06-22 22:14:11,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:14:11,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:14:11,362.362 INFO    ] No existing commands found in stream
[2026-06-22 22:14:16,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:14:16,390.390 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-22 22:14:18,482.482 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:14:18,485.485 INFO    ] Checking for system updates...
[2026-06-22 22:14:18,521.521 INFO    ] 200
[2026-06-22 22:14:18,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:14:18,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:14:18,586.586 INFO    ] No update needed
[2026-06-22 22:14:18,588.588 INFO    ] Checking for camera pi updates...
[2026-06-22 22:14:18,625.625 INFO    ] 200
[2026-06-22 22:14:18,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:14:18,672.672 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:14:18,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:14:18,728.728 INFO    ] No camera update needed
[2026-06-22 22:14:18,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:14:18,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:14:18,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:14:18,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:14:20,783.783 INFO    ] ================================================
[2026-06-22 22:14:20,799.799 INFO    ] Launching Daemon at Mon Jun 22 22:14:20 IST 2026
[2026-06-22 22:14:20,809.809 INFO    ] ================================================
[2026-06-22 22:14:21,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:14:21
[2026-06-22 22:14:21,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:14:22,176.176 INFO    ] Initializing speech engine...
[2026-06-22 22:14:22,182.182 INFO    ] 2026-06-22 22:14:22
[2026-06-22 22:14:22,443.443 INFO    ] 2026-06-22 22:14:22
[2026-06-22 22:14:22,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:14:24,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:14:24,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:14:25,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:14:25,409.409 INFO    ] time= 22/06/2026 22:14:25
[2026-06-22 22:14:25,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:14:25,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:14:25,476.476 INFO    ] No existing commands found in stream
[2026-06-22 22:14:30,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:14:30,488.488 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-22 22:14:34,686.686 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:14:34,689.689 INFO    ] Checking for system updates...
[2026-06-22 22:14:34,725.725 INFO    ] 200
[2026-06-22 22:14:34,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:14:34,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:14:34,784.784 INFO    ] No update needed
[2026-06-22 22:14:34,787.787 INFO    ] Checking for camera pi updates...
[2026-06-22 22:14:34,826.826 INFO    ] 200
[2026-06-22 22:14:34,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:14:34,871.871 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:14:34,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:14:34,953.953 INFO    ] No camera update needed
[2026-06-22 22:14:34,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:14:34,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:14:34,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:14:34,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:14:37,018.018 INFO    ] ================================================
[2026-06-22 22:14:37,033.033 INFO    ] Launching Daemon at Mon Jun 22 22:14:37 IST 2026
[2026-06-22 22:14:37,044.044 INFO    ] ================================================
[2026-06-22 22:14:37,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:14:37
[2026-06-22 22:14:38,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:14:38,466.466 INFO    ] Initializing speech engine...
[2026-06-22 22:14:38,475.475 INFO    ] 2026-06-22 22:14:38
[2026-06-22 22:14:38,739.739 INFO    ] 2026-06-22 22:14:38
[2026-06-22 22:14:38,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:14:39,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:14:39,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:14:39,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:14:39,208.208 INFO    ] time= 22/06/2026 22:14:39
[2026-06-22 22:14:39,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:14:39,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:14:39,422.422 INFO    ] No existing commands found in stream
[2026-06-22 22:14:44,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:14:44,449.449 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-22 22:14:45,519.519 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:14:45,521.521 INFO    ] Checking for system updates...
[2026-06-22 22:14:45,561.561 INFO    ] 200
[2026-06-22 22:14:45,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:14:45,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:14:45,619.619 INFO    ] No update needed
[2026-06-22 22:14:45,622.622 INFO    ] Checking for camera pi updates...
[2026-06-22 22:14:45,656.656 INFO    ] 200
[2026-06-22 22:14:45,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:14:45,699.699 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:14:45,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:14:45,785.785 INFO    ] No camera update needed
[2026-06-22 22:14:45,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:14:45,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:14:45,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:14:45,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:14:47,843.843 INFO    ] ================================================
[2026-06-22 22:14:47,858.858 INFO    ] Launching Daemon at Mon Jun 22 22:14:47 IST 2026
[2026-06-22 22:14:47,869.869 INFO    ] ================================================
[2026-06-22 22:14:48,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:14:48
[2026-06-22 22:14:49,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:14:49,467.467 INFO    ] Initializing speech engine...
[2026-06-22 22:14:49,475.475 INFO    ] 2026-06-22 22:14:49
[2026-06-22 22:14:49,762.762 INFO    ] 2026-06-22 22:14:49
[2026-06-22 22:14:49,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:14:50,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:14:50,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:14:50,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:14:50,295.295 INFO    ] time= 22/06/2026 22:14:50
[2026-06-22 22:14:50,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:14:50,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:14:50,446.446 INFO    ] No existing commands found in stream
[2026-06-22 22:14:55,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:14:55,467.467 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-22 22:14:57,414.414 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:14:57,417.417 INFO    ] Checking for system updates...
[2026-06-22 22:14:57,453.453 INFO    ] 200
[2026-06-22 22:14:57,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:14:57,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:14:57,513.513 INFO    ] No update needed
[2026-06-22 22:14:57,515.515 INFO    ] Checking for camera pi updates...
[2026-06-22 22:14:57,552.552 INFO    ] 200
[2026-06-22 22:14:57,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:14:57,600.600 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:14:57,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:14:57,693.693 INFO    ] No camera update needed
[2026-06-22 22:14:57,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:14:57,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:14:57,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:14:57,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:14:59,747.747 INFO    ] ================================================
[2026-06-22 22:14:59,762.762 INFO    ] Launching Daemon at Mon Jun 22 22:14:59 IST 2026
[2026-06-22 22:14:59,773.773 INFO    ] ================================================
[2026-06-22 22:15:00,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:15:00
[2026-06-22 22:15:00,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:15:01,291.291 INFO    ] Initializing speech engine...
[2026-06-22 22:15:01,305.305 INFO    ] 2026-06-22 22:15:01
[2026-06-22 22:15:01,582.582 INFO    ] 2026-06-22 22:15:01
[2026-06-22 22:15:01,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:15:01,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:15:01,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:15:02,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:15:02,287.287 INFO    ] time= 22/06/2026 22:15:02
[2026-06-22 22:15:02,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:15:02,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:15:02,456.456 INFO    ] No existing commands found in stream
[2026-06-22 22:15:07,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:15:07,471.471 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-22 22:15:11,959.959 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:15:11,962.962 INFO    ] Checking for system updates...
[2026-06-22 22:15:12,000.000 INFO    ] 200
[2026-06-22 22:15:12,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:15:12,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:15:12,065.065 INFO    ] No update needed
[2026-06-22 22:15:12,067.067 INFO    ] Checking for camera pi updates...
[2026-06-22 22:15:12,105.105 INFO    ] 200
[2026-06-22 22:15:12,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:15:12,149.149 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:15:12,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:15:12,250.250 INFO    ] No camera update needed
[2026-06-22 22:15:12,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:15:12,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:15:12,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:15:12,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:15:14,313.313 INFO    ] ================================================
[2026-06-22 22:15:14,329.329 INFO    ] Launching Daemon at Mon Jun 22 22:15:14 IST 2026
[2026-06-22 22:15:14,340.340 INFO    ] ================================================
[2026-06-22 22:15:14,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:15:14
[2026-06-22 22:15:15,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:15:15,681.681 INFO    ] Initializing speech engine...
[2026-06-22 22:15:15,695.695 INFO    ] 2026-06-22 22:15:15
[2026-06-22 22:15:15,983.983 INFO    ] 2026-06-22 22:15:15
[2026-06-22 22:15:16,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:15:16,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:15:16,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:15:16,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:15:16,488.488 INFO    ] time= 22/06/2026 22:15:16
[2026-06-22 22:15:16,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:15:16,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:15:16,646.646 INFO    ] No existing commands found in stream
[2026-06-22 22:15:21,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:15:21,673.673 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-22 22:15:23,085.085 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:15:23,088.088 INFO    ] Checking for system updates...
[2026-06-22 22:15:23,128.128 INFO    ] 200
[2026-06-22 22:15:23,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:15:23,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:15:23,188.188 INFO    ] No update needed
[2026-06-22 22:15:23,191.191 INFO    ] Checking for camera pi updates...
[2026-06-22 22:15:23,229.229 INFO    ] 200
[2026-06-22 22:15:23,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:15:23,277.277 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:15:23,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:15:23,361.361 INFO    ] No camera update needed
[2026-06-22 22:15:23,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:15:23,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:15:23,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:15:23,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:15:25,418.418 INFO    ] ================================================
[2026-06-22 22:15:25,433.433 INFO    ] Launching Daemon at Mon Jun 22 22:15:25 IST 2026
[2026-06-22 22:15:25,445.445 INFO    ] ================================================
[2026-06-22 22:15:26,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:15:26
[2026-06-22 22:15:26,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:15:26,912.912 INFO    ] Initializing speech engine...
[2026-06-22 22:15:26,921.921 INFO    ] 2026-06-22 22:15:26
[2026-06-22 22:15:27,180.180 INFO    ] 2026-06-22 22:15:27
[2026-06-22 22:15:27,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:15:28,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:15:28,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:15:28,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:15:28,337.337 INFO    ] time= 22/06/2026 22:15:28
[2026-06-22 22:15:28,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:15:28,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:15:28,517.517 INFO    ] No existing commands found in stream
[2026-06-22 22:15:33,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:15:33,542.542 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-22 22:15:35,042.042 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:15:35,045.045 INFO    ] Checking for system updates...
[2026-06-22 22:15:35,081.081 INFO    ] 200
[2026-06-22 22:15:35,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:15:35,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:15:35,143.143 INFO    ] No update needed
[2026-06-22 22:15:35,146.146 INFO    ] Checking for camera pi updates...
[2026-06-22 22:15:35,180.180 INFO    ] 200
[2026-06-22 22:15:35,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:15:35,223.223 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:15:35,304.304 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:15:35,306.306 INFO    ] No camera update needed
[2026-06-22 22:15:35,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:15:35,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:15:35,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:15:35,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:15:37,363.363 INFO    ] ================================================
[2026-06-22 22:15:37,378.378 INFO    ] Launching Daemon at Mon Jun 22 22:15:37 IST 2026
[2026-06-22 22:15:37,389.389 INFO    ] ================================================
[2026-06-22 22:15:38,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:15:38
[2026-06-22 22:15:38,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:15:38,920.920 INFO    ] Initializing speech engine...
[2026-06-22 22:15:38,925.925 INFO    ] 2026-06-22 22:15:38
[2026-06-22 22:15:39,174.174 INFO    ] 2026-06-22 22:15:39
[2026-06-22 22:15:39,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:15:39,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:15:39,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:15:39,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:15:39,627.627 INFO    ] time= 22/06/2026 22:15:39
[2026-06-22 22:15:39,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:15:39,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:15:39,817.817 INFO    ] No existing commands found in stream
[2026-06-22 22:15:44,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:15:44,858.858 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-22 22:15:45,899.899 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:15:45,901.901 INFO    ] Checking for system updates...
[2026-06-22 22:15:45,942.942 INFO    ] 200
[2026-06-22 22:15:45,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:15:46,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:15:46,006.006 INFO    ] No update needed
[2026-06-22 22:15:46,008.008 INFO    ] Checking for camera pi updates...
[2026-06-22 22:15:46,042.042 INFO    ] 200
[2026-06-22 22:15:46,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:15:46,085.085 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:15:46,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:15:46,146.146 INFO    ] No camera update needed
[2026-06-22 22:15:46,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:15:46,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:15:46,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:15:46,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:15:48,202.202 INFO    ] ================================================
[2026-06-22 22:15:48,218.218 INFO    ] Launching Daemon at Mon Jun 22 22:15:48 IST 2026
[2026-06-22 22:15:48,229.229 INFO    ] ================================================
[2026-06-22 22:15:48,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:15:48
[2026-06-22 22:15:49,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:15:49,552.552 INFO    ] Initializing speech engine...
[2026-06-22 22:15:49,575.575 INFO    ] 2026-06-22 22:15:49
[2026-06-22 22:15:49,831.831 INFO    ] 2026-06-22 22:15:49
[2026-06-22 22:15:49,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:15:50,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:15:50,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:15:50,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:15:50,321.321 INFO    ] time= 22/06/2026 22:15:50
[2026-06-22 22:15:50,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:15:50,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:15:50,525.525 INFO    ] No existing commands found in stream
[2026-06-22 22:15:55,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:15:55,545.545 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-22 22:15:59,843.843 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:15:59,846.846 INFO    ] Checking for system updates...
[2026-06-22 22:15:59,882.882 INFO    ] 200
[2026-06-22 22:15:59,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:15:59,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:15:59,946.946 INFO    ] No update needed
[2026-06-22 22:15:59,949.949 INFO    ] Checking for camera pi updates...
[2026-06-22 22:15:59,987.987 INFO    ] 200
[2026-06-22 22:15:59,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:16:00,035.035 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:16:00,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:16:00,129.129 INFO    ] No camera update needed
[2026-06-22 22:16:00,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:16:00,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:16:00,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:16:00,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:16:02,186.186 INFO    ] ================================================
[2026-06-22 22:16:02,203.203 INFO    ] Launching Daemon at Mon Jun 22 22:16:02 IST 2026
[2026-06-22 22:16:02,215.215 INFO    ] ================================================
[2026-06-22 22:16:02,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:16:02
[2026-06-22 22:16:03,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:16:03,870.870 INFO    ] Initializing speech engine...
[2026-06-22 22:16:03,882.882 INFO    ] 2026-06-22 22:16:03
[2026-06-22 22:16:04,193.193 INFO    ] 2026-06-22 22:16:04
[2026-06-22 22:16:04,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:16:04,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:16:04,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:16:04,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:16:04,718.718 INFO    ] time= 22/06/2026 22:16:04
[2026-06-22 22:16:04,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:16:04,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:16:04,866.866 INFO    ] No existing commands found in stream
[2026-06-22 22:16:09,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:16:09,892.892 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-22 22:16:13,490.490 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:16:13,492.492 INFO    ] Checking for system updates...
[2026-06-22 22:16:13,515.515 INFO    ] 200
[2026-06-22 22:16:13,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:16:13,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:16:13,548.548 INFO    ] No update needed
[2026-06-22 22:16:13,549.549 INFO    ] Checking for camera pi updates...
[2026-06-22 22:16:13,568.568 INFO    ] 200
[2026-06-22 22:16:13,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:16:13,612.612 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:16:13,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:16:13,696.696 INFO    ] No camera update needed
[2026-06-22 22:16:13,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:16:13,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:16:13,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:16:13,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:16:15,753.753 INFO    ] ================================================
[2026-06-22 22:16:15,769.769 INFO    ] Launching Daemon at Mon Jun 22 22:16:15 IST 2026
[2026-06-22 22:16:15,780.780 INFO    ] ================================================
[2026-06-22 22:16:16,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:16:16
[2026-06-22 22:16:16,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:16:17,216.216 INFO    ] Initializing speech engine...
[2026-06-22 22:16:17,239.239 INFO    ] 2026-06-22 22:16:17
[2026-06-22 22:16:17,494.494 INFO    ] 2026-06-22 22:16:17
[2026-06-22 22:16:17,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:16:17,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:16:17,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:16:17,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:16:18,051.051 INFO    ] time= 22/06/2026 22:16:18
[2026-06-22 22:16:18,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:16:18,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:16:18,206.206 INFO    ] No existing commands found in stream
[2026-06-22 22:16:23,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:16:23,222.222 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-22 22:16:24,113.113 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:16:24,116.116 INFO    ] Checking for system updates...
[2026-06-22 22:16:24,156.156 INFO    ] 200
[2026-06-22 22:16:24,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:16:24,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:16:24,213.213 INFO    ] No update needed
[2026-06-22 22:16:24,216.216 INFO    ] Checking for camera pi updates...
[2026-06-22 22:16:24,250.250 INFO    ] 200
[2026-06-22 22:16:24,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:16:24,293.293 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:16:24,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:16:24,388.388 INFO    ] No camera update needed
[2026-06-22 22:16:24,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:16:24,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:16:24,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:16:24,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:16:26,446.446 INFO    ] ================================================
[2026-06-22 22:16:26,461.461 INFO    ] Launching Daemon at Mon Jun 22 22:16:26 IST 2026
[2026-06-22 22:16:26,473.473 INFO    ] ================================================
[2026-06-22 22:16:27,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:16:27
[2026-06-22 22:16:27,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:16:27,857.857 INFO    ] Initializing speech engine...
[2026-06-22 22:16:27,866.866 INFO    ] 2026-06-22 22:16:27
[2026-06-22 22:16:28,129.129 INFO    ] 2026-06-22 22:16:28
[2026-06-22 22:16:28,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:16:29,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:16:29,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:16:30,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:16:30,094.094 INFO    ] time= 22/06/2026 22:16:30
[2026-06-22 22:16:30,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:16:30,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:16:30,144.144 INFO    ] No existing commands found in stream
[2026-06-22 22:16:35,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:16:35,160.160 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-22 22:16:39,069.069 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:16:39,077.077 INFO    ] Checking for system updates...
[2026-06-22 22:16:39,119.119 INFO    ] 200
[2026-06-22 22:16:39,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:16:39,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:16:39,187.187 INFO    ] No update needed
[2026-06-22 22:16:39,189.189 INFO    ] Checking for camera pi updates...
[2026-06-22 22:16:39,227.227 INFO    ] 200
[2026-06-22 22:16:39,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:16:39,275.275 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:16:39,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:16:39,358.358 INFO    ] No camera update needed
[2026-06-22 22:16:39,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:16:39,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:16:39,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:16:39,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:16:41,415.415 INFO    ] ================================================
[2026-06-22 22:16:41,430.430 INFO    ] Launching Daemon at Mon Jun 22 22:16:41 IST 2026
[2026-06-22 22:16:41,442.442 INFO    ] ================================================
[2026-06-22 22:16:42,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:16:42
[2026-06-22 22:16:42,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:16:42,865.865 INFO    ] Initializing speech engine...
[2026-06-22 22:16:42,871.871 INFO    ] 2026-06-22 22:16:42
[2026-06-22 22:16:43,169.169 INFO    ] 2026-06-22 22:16:43
[2026-06-22 22:16:43,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:16:43,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:16:43,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:16:43,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:16:43,543.543 INFO    ] time= 22/06/2026 22:16:43
[2026-06-22 22:16:43,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:16:43,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:16:43,724.724 INFO    ] No existing commands found in stream
[2026-06-22 22:16:48,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:16:48,753.753 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-22 22:16:51,734.734 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:16:51,737.737 INFO    ] Checking for system updates...
[2026-06-22 22:16:51,773.773 INFO    ] 200
[2026-06-22 22:16:51,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:16:51,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:16:51,831.831 INFO    ] No update needed
[2026-06-22 22:16:51,833.833 INFO    ] Checking for camera pi updates...
[2026-06-22 22:16:51,867.867 INFO    ] 200
[2026-06-22 22:16:51,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:16:51,910.910 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:16:51,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:16:51,995.995 INFO    ] No camera update needed
[2026-06-22 22:16:51,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:16:52,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:16:52,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:16:52,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:16:54,051.051 INFO    ] ================================================
[2026-06-22 22:16:54,067.067 INFO    ] Launching Daemon at Mon Jun 22 22:16:54 IST 2026
[2026-06-22 22:16:54,078.078 INFO    ] ================================================
[2026-06-22 22:16:54,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:16:54
[2026-06-22 22:16:55,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:16:55,533.533 INFO    ] Initializing speech engine...
[2026-06-22 22:16:55,542.542 INFO    ] 2026-06-22 22:16:55
[2026-06-22 22:16:55,812.812 INFO    ] 2026-06-22 22:16:55
[2026-06-22 22:16:55,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:16:56,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:16:56,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:16:56,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:16:56,194.194 INFO    ] time= 22/06/2026 22:16:56
[2026-06-22 22:16:56,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:16:56,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:16:56,320.320 INFO    ] No existing commands found in stream
[2026-06-22 22:17:01,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:17:01,338.338 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-22 22:17:03,747.747 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:17:03,750.750 INFO    ] Checking for system updates...
[2026-06-22 22:17:03,787.787 INFO    ] 200
[2026-06-22 22:17:03,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:17:03,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:17:03,845.845 INFO    ] No update needed
[2026-06-22 22:17:03,848.848 INFO    ] Checking for camera pi updates...
[2026-06-22 22:17:03,882.882 INFO    ] 200
[2026-06-22 22:17:03,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:17:03,926.926 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:17:04,015.015 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:17:04,018.018 INFO    ] No camera update needed
[2026-06-22 22:17:04,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:17:04,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:17:04,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:17:04,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:17:06,076.076 INFO    ] ================================================
[2026-06-22 22:17:06,092.092 INFO    ] Launching Daemon at Mon Jun 22 22:17:06 IST 2026
[2026-06-22 22:17:06,102.102 INFO    ] ================================================
[2026-06-22 22:17:06,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:17:06
[2026-06-22 22:17:07,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:17:07,672.672 INFO    ] Initializing speech engine...
[2026-06-22 22:17:07,683.683 INFO    ] 2026-06-22 22:17:07
[2026-06-22 22:17:07,952.952 INFO    ] 2026-06-22 22:17:07
[2026-06-22 22:17:08,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:17:08,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:17:08,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:17:08,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:17:08,433.433 INFO    ] time= 22/06/2026 22:17:08
[2026-06-22 22:17:08,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:17:08,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:17:08,647.647 INFO    ] No existing commands found in stream
[2026-06-22 22:17:13,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:17:13,667.667 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-22 22:17:16,538.538 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:17:16,539.539 INFO    ] Checking for system updates...
[2026-06-22 22:17:16,561.561 INFO    ] 200
[2026-06-22 22:17:16,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:17:16,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:17:16,598.598 INFO    ] No update needed
[2026-06-22 22:17:16,600.600 INFO    ] Checking for camera pi updates...
[2026-06-22 22:17:16,621.621 INFO    ] 200
[2026-06-22 22:17:16,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:17:16,662.662 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:17:16,739.739 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:17:16,742.742 INFO    ] No camera update needed
[2026-06-22 22:17:16,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:17:16,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:17:16,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:17:16,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:17:18,800.800 INFO    ] ================================================
[2026-06-22 22:17:18,815.815 INFO    ] Launching Daemon at Mon Jun 22 22:17:18 IST 2026
[2026-06-22 22:17:18,827.827 INFO    ] ================================================
[2026-06-22 22:17:19,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:17:19
[2026-06-22 22:17:20,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:17:20,321.321 INFO    ] Initializing speech engine...
[2026-06-22 22:17:20,330.330 INFO    ] 2026-06-22 22:17:20
[2026-06-22 22:17:20,576.576 INFO    ] 2026-06-22 22:17:20
[2026-06-22 22:17:20,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:17:20,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:17:20,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:17:21,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:17:21,133.133 INFO    ] time= 22/06/2026 22:17:21
[2026-06-22 22:17:21,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:17:21,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:17:21,281.281 INFO    ] No existing commands found in stream
[2026-06-22 22:17:26,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:17:26,299.299 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-22 22:17:27,269.269 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:17:27,271.271 INFO    ] Checking for system updates...
[2026-06-22 22:17:27,307.307 INFO    ] 200
[2026-06-22 22:17:27,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:17:27,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:17:27,366.366 INFO    ] No update needed
[2026-06-22 22:17:27,368.368 INFO    ] Checking for camera pi updates...
[2026-06-22 22:17:27,413.413 INFO    ] 200
[2026-06-22 22:17:27,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:17:27,458.458 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:17:27,545.545 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:17:27,547.547 INFO    ] No camera update needed
[2026-06-22 22:17:27,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:17:27,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:17:27,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:17:27,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:17:29,604.604 INFO    ] ================================================
[2026-06-22 22:17:29,621.621 INFO    ] Launching Daemon at Mon Jun 22 22:17:29 IST 2026
[2026-06-22 22:17:29,633.633 INFO    ] ================================================
[2026-06-22 22:17:30,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:17:30
[2026-06-22 22:17:30,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:17:31,202.202 INFO    ] Initializing speech engine...
[2026-06-22 22:17:31,210.210 INFO    ] 2026-06-22 22:17:31
[2026-06-22 22:17:31,472.472 INFO    ] 2026-06-22 22:17:31
[2026-06-22 22:17:31,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:17:32,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:17:32,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:17:33,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:17:33,236.236 INFO    ] time= 22/06/2026 22:17:33
[2026-06-22 22:17:33,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:17:33,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:17:33,358.358 INFO    ] No existing commands found in stream
[2026-06-22 22:17:38,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:17:38,372.372 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-22 22:17:42,509.509 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:17:42,512.512 INFO    ] Checking for system updates...
[2026-06-22 22:17:42,548.548 INFO    ] 200
[2026-06-22 22:17:42,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:17:42,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:17:42,610.610 INFO    ] No update needed
[2026-06-22 22:17:42,612.612 INFO    ] Checking for camera pi updates...
[2026-06-22 22:17:42,654.654 INFO    ] 200
[2026-06-22 22:17:42,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:17:42,701.701 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:17:42,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:17:42,881.881 INFO    ] No camera update needed
[2026-06-22 22:17:42,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:17:42,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:17:42,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:17:42,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:17:44,938.938 INFO    ] ================================================
[2026-06-22 22:17:44,954.954 INFO    ] Launching Daemon at Mon Jun 22 22:17:44 IST 2026
[2026-06-22 22:17:44,964.964 INFO    ] ================================================
[2026-06-22 22:17:45,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:17:45
[2026-06-22 22:17:46,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:17:46,291.291 INFO    ] Initializing speech engine...
[2026-06-22 22:17:46,316.316 INFO    ] 2026-06-22 22:17:46
[2026-06-22 22:17:46,585.585 INFO    ] 2026-06-22 22:17:46
[2026-06-22 22:17:46,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:17:46,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:17:46,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:17:46,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:17:46,956.956 INFO    ] time= 22/06/2026 22:17:46
[2026-06-22 22:17:46,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:17:46,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:17:47,076.076 INFO    ] No existing commands found in stream
[2026-06-22 22:17:52,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:17:52,092.092 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-22 22:17:54,653.653 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:17:54,656.656 INFO    ] Checking for system updates...
[2026-06-22 22:17:54,692.692 INFO    ] 200
[2026-06-22 22:17:54,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:17:54,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:17:54,750.750 INFO    ] No update needed
[2026-06-22 22:17:54,752.752 INFO    ] Checking for camera pi updates...
[2026-06-22 22:17:54,785.785 INFO    ] 200
[2026-06-22 22:17:54,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:17:54,828.828 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:17:54,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:17:54,929.929 INFO    ] No camera update needed
[2026-06-22 22:17:54,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:17:54,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:17:54,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:17:54,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:17:56,985.985 INFO    ] ================================================
[2026-06-22 22:17:57,000.000 INFO    ] Launching Daemon at Mon Jun 22 22:17:56 IST 2026
[2026-06-22 22:17:57,011.011 INFO    ] ================================================
[2026-06-22 22:17:57,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:17:57
[2026-06-22 22:17:58,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:17:58,602.602 INFO    ] Initializing speech engine...
[2026-06-22 22:17:58,614.614 INFO    ] 2026-06-22 22:17:58
[2026-06-22 22:17:58,894.894 INFO    ] 2026-06-22 22:17:58
[2026-06-22 22:17:58,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:17:59,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:17:59,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:17:59,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:17:59,345.345 INFO    ] time= 22/06/2026 22:17:59
[2026-06-22 22:17:59,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:17:59,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:17:59,563.563 INFO    ] No existing commands found in stream
[2026-06-22 22:18:04,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:18:04,597.597 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-22 22:18:07,418.418 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:18:07,421.421 INFO    ] Checking for system updates...
[2026-06-22 22:18:07,459.459 INFO    ] 200
[2026-06-22 22:18:07,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:18:07,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:18:07,518.518 INFO    ] No update needed
[2026-06-22 22:18:07,521.521 INFO    ] Checking for camera pi updates...
[2026-06-22 22:18:07,555.555 INFO    ] 200
[2026-06-22 22:18:07,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:18:07,599.599 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:18:07,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:18:07,689.689 INFO    ] No camera update needed
[2026-06-22 22:18:07,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:18:07,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:18:07,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:18:07,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:18:09,757.757 INFO    ] ================================================
[2026-06-22 22:18:09,772.772 INFO    ] Launching Daemon at Mon Jun 22 22:18:09 IST 2026
[2026-06-22 22:18:09,784.784 INFO    ] ================================================
[2026-06-22 22:18:10,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:18:10
[2026-06-22 22:18:10,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:18:11,205.205 INFO    ] Initializing speech engine...
[2026-06-22 22:18:11,223.223 INFO    ] 2026-06-22 22:18:11
[2026-06-22 22:18:11,476.476 INFO    ] 2026-06-22 22:18:11
[2026-06-22 22:18:11,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:18:11,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:18:11,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:18:12,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:18:12,034.034 INFO    ] time= 22/06/2026 22:18:12
[2026-06-22 22:18:12,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:18:12,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:18:12,138.138 INFO    ] No existing commands found in stream
[2026-06-22 22:18:17,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:18:17,166.166 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-22 22:18:19,077.077 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:18:19,080.080 INFO    ] Checking for system updates...
[2026-06-22 22:18:19,125.125 INFO    ] 200
[2026-06-22 22:18:19,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:18:19,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:18:19,185.185 INFO    ] No update needed
[2026-06-22 22:18:19,188.188 INFO    ] Checking for camera pi updates...
[2026-06-22 22:18:19,222.222 INFO    ] 200
[2026-06-22 22:18:19,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:18:19,268.268 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:18:19,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:18:19,360.360 INFO    ] No camera update needed
[2026-06-22 22:18:19,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:18:19,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:18:19,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:18:19,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:18:21,421.421 INFO    ] ================================================
[2026-06-22 22:18:21,437.437 INFO    ] Launching Daemon at Mon Jun 22 22:18:21 IST 2026
[2026-06-22 22:18:21,449.449 INFO    ] ================================================
[2026-06-22 22:18:22,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:18:22
[2026-06-22 22:18:22,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:18:22,788.788 INFO    ] Initializing speech engine...
[2026-06-22 22:18:22,798.798 INFO    ] 2026-06-22 22:18:22
[2026-06-22 22:18:23,043.043 INFO    ] 2026-06-22 22:18:23
[2026-06-22 22:18:23,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:18:23,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:18:23,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:18:23,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:18:23,512.512 INFO    ] time= 22/06/2026 22:18:23
[2026-06-22 22:18:23,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:18:23,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:18:23,726.726 INFO    ] No existing commands found in stream
[2026-06-22 22:18:28,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:18:28,755.755 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-22 22:18:34,806.806 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:18:34,809.809 INFO    ] Checking for system updates...
[2026-06-22 22:18:34,846.846 INFO    ] 200
[2026-06-22 22:18:34,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:18:34,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:18:34,905.905 INFO    ] No update needed
[2026-06-22 22:18:34,907.907 INFO    ] Checking for camera pi updates...
[2026-06-22 22:18:34,942.942 INFO    ] 200
[2026-06-22 22:18:34,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:18:34,987.987 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:18:35,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:18:35,065.065 INFO    ] No camera update needed
[2026-06-22 22:18:35,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:18:35,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:18:35,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:18:35,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:18:37,126.126 INFO    ] ================================================
[2026-06-22 22:18:37,142.142 INFO    ] Launching Daemon at Mon Jun 22 22:18:37 IST 2026
[2026-06-22 22:18:37,153.153 INFO    ] ================================================
[2026-06-22 22:18:37,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:18:37
[2026-06-22 22:18:38,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:18:38,611.611 INFO    ] Initializing speech engine...
[2026-06-22 22:18:38,621.621 INFO    ] 2026-06-22 22:18:38
[2026-06-22 22:18:38,871.871 INFO    ] 2026-06-22 22:18:38
[2026-06-22 22:18:38,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:18:39,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:18:39,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:18:39,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:18:39,428.428 INFO    ] time= 22/06/2026 22:18:39
[2026-06-22 22:18:39,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:18:39,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:18:39,585.585 INFO    ] No existing commands found in stream
[2026-06-22 22:18:44,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:18:44,600.600 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-22 22:18:45,817.817 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:18:45,819.819 INFO    ] Checking for system updates...
[2026-06-22 22:18:45,841.841 INFO    ] 200
[2026-06-22 22:18:45,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:18:45,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:18:45,877.877 INFO    ] No update needed
[2026-06-22 22:18:45,878.878 INFO    ] Checking for camera pi updates...
[2026-06-22 22:18:45,898.898 INFO    ] 200
[2026-06-22 22:18:45,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:18:45,927.927 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:18:46,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:18:46,011.011 INFO    ] No camera update needed
[2026-06-22 22:18:46,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:18:46,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:18:46,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:18:46,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:18:48,070.070 INFO    ] ================================================
[2026-06-22 22:18:48,086.086 INFO    ] Launching Daemon at Mon Jun 22 22:18:48 IST 2026
[2026-06-22 22:18:48,097.097 INFO    ] ================================================
[2026-06-22 22:18:48,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:18:48
[2026-06-22 22:18:49,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:18:49,508.508 INFO    ] Initializing speech engine...
[2026-06-22 22:18:49,530.530 INFO    ] 2026-06-22 22:18:49
[2026-06-22 22:18:49,788.788 INFO    ] 2026-06-22 22:18:49
[2026-06-22 22:18:49,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:18:50,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:18:50,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:18:50,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:18:50,270.270 INFO    ] time= 22/06/2026 22:18:50
[2026-06-22 22:18:50,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:18:50,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:18:50,492.492 INFO    ] No existing commands found in stream
[2026-06-22 22:18:55,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:18:55,528.528 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-22 22:18:59,928.928 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:18:59,931.931 INFO    ] Checking for system updates...
[2026-06-22 22:18:59,966.966 INFO    ] 200
[2026-06-22 22:18:59,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:19:00,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:19:00,030.030 INFO    ] No update needed
[2026-06-22 22:19:00,032.032 INFO    ] Checking for camera pi updates...
[2026-06-22 22:19:00,066.066 INFO    ] 200
[2026-06-22 22:19:00,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:19:00,109.109 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:19:00,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:19:00,196.196 INFO    ] No camera update needed
[2026-06-22 22:19:00,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:19:00,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:19:00,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:19:00,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:19:02,265.265 INFO    ] ================================================
[2026-06-22 22:19:02,286.286 INFO    ] Launching Daemon at Mon Jun 22 22:19:02 IST 2026
[2026-06-22 22:19:02,305.305 INFO    ] ================================================
[2026-06-22 22:19:02,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:19:02
[2026-06-22 22:19:03,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:19:03,855.855 INFO    ] Initializing speech engine...
[2026-06-22 22:19:03,870.870 INFO    ] 2026-06-22 22:19:03
[2026-06-22 22:19:04,137.137 INFO    ] 2026-06-22 22:19:04
[2026-06-22 22:19:04,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:19:06,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:19:06,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:19:07,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:19:07,277.277 INFO    ] time= 22/06/2026 22:19:07
[2026-06-22 22:19:07,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:19:07,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:19:07,343.343 INFO    ] No existing commands found in stream
[2026-06-22 22:19:12,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:19:12,356.356 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-22 22:19:15,137.137 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:19:15,140.140 INFO    ] Checking for system updates...
[2026-06-22 22:19:15,176.176 INFO    ] 200
[2026-06-22 22:19:15,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:19:15,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:19:15,233.233 INFO    ] No update needed
[2026-06-22 22:19:15,235.235 INFO    ] Checking for camera pi updates...
[2026-06-22 22:19:15,276.276 INFO    ] 200
[2026-06-22 22:19:15,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:19:15,320.320 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:19:15,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:19:15,399.399 INFO    ] No camera update needed
[2026-06-22 22:19:15,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:19:15,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:19:15,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:19:15,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:19:17,458.458 INFO    ] ================================================
[2026-06-22 22:19:17,473.473 INFO    ] Launching Daemon at Mon Jun 22 22:19:17 IST 2026
[2026-06-22 22:19:17,484.484 INFO    ] ================================================
[2026-06-22 22:19:18,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:19:18
[2026-06-22 22:19:18,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:19:18,924.924 INFO    ] Initializing speech engine...
[2026-06-22 22:19:18,933.933 INFO    ] 2026-06-22 22:19:18
[2026-06-22 22:19:19,192.192 INFO    ] 2026-06-22 22:19:19
[2026-06-22 22:19:19,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:19:19,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:19:19,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:19:19,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:19:19,679.679 INFO    ] time= 22/06/2026 22:19:19
[2026-06-22 22:19:19,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:19:19,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:19:19,885.885 INFO    ] No existing commands found in stream
[2026-06-22 22:19:24,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:19:24,910.910 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-22 22:19:28,919.919 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:19:28,922.922 INFO    ] Checking for system updates...
[2026-06-22 22:19:28,958.958 INFO    ] 200
[2026-06-22 22:19:28,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:19:29,018.018 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:19:29,020.020 INFO    ] No update needed
[2026-06-22 22:19:29,022.022 INFO    ] Checking for camera pi updates...
[2026-06-22 22:19:29,057.057 INFO    ] 200
[2026-06-22 22:19:29,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:19:29,099.099 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:19:29,182.182 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:19:29,184.184 INFO    ] No camera update needed
[2026-06-22 22:19:29,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:19:29,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:19:29,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:19:29,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:19:31,241.241 INFO    ] ================================================
[2026-06-22 22:19:31,256.256 INFO    ] Launching Daemon at Mon Jun 22 22:19:31 IST 2026
[2026-06-22 22:19:31,267.267 INFO    ] ================================================
[2026-06-22 22:19:31,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:19:31
[2026-06-22 22:19:32,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:19:32,978.978 INFO    ] Initializing speech engine...
[2026-06-22 22:19:32,990.990 INFO    ] 2026-06-22 22:19:32
[2026-06-22 22:19:33,267.267 INFO    ] 2026-06-22 22:19:33
[2026-06-22 22:19:33,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:19:37,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:19:37,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:19:37,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:19:37,960.960 INFO    ] time= 22/06/2026 22:19:37
[2026-06-22 22:19:37,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:19:37,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:19:38,018.018 INFO    ] No existing commands found in stream
[2026-06-22 22:19:43,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:19:43,030.030 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-22 22:19:45,218.218 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:19:45,220.220 INFO    ] Checking for system updates...
[2026-06-22 22:19:45,242.242 INFO    ] 200
[2026-06-22 22:19:45,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:19:45,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:19:45,306.306 INFO    ] No update needed
[2026-06-22 22:19:45,309.309 INFO    ] Checking for camera pi updates...
[2026-06-22 22:19:45,343.343 INFO    ] 200
[2026-06-22 22:19:45,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:19:45,388.388 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:19:45,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:19:45,568.568 INFO    ] No camera update needed
[2026-06-22 22:19:45,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:19:45,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:19:45,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:19:45,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:19:47,623.623 INFO    ] ================================================
[2026-06-22 22:19:47,639.639 INFO    ] Launching Daemon at Mon Jun 22 22:19:47 IST 2026
[2026-06-22 22:19:47,650.650 INFO    ] ================================================
[2026-06-22 22:19:48,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:19:48
[2026-06-22 22:19:48,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:19:49,025.025 INFO    ] Initializing speech engine...
[2026-06-22 22:19:49,033.033 INFO    ] 2026-06-22 22:19:49
[2026-06-22 22:19:49,294.294 INFO    ] 2026-06-22 22:19:49
[2026-06-22 22:19:49,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:19:49,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:19:49,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:19:49,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:19:49,750.750 INFO    ] time= 22/06/2026 22:19:49
[2026-06-22 22:19:49,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:19:49,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:19:49,961.961 INFO    ] No existing commands found in stream
[2026-06-22 22:19:54,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:19:54,994.994 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-22 22:19:55,493.493 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:19:55,495.495 INFO    ] Checking for system updates...
[2026-06-22 22:19:55,516.516 INFO    ] 200
[2026-06-22 22:19:55,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:19:55,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:19:55,570.570 INFO    ] No update needed
[2026-06-22 22:19:55,573.573 INFO    ] Checking for camera pi updates...
[2026-06-22 22:19:55,608.608 INFO    ] 200
[2026-06-22 22:19:55,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:19:55,656.656 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:19:55,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:19:55,746.746 INFO    ] No camera update needed
[2026-06-22 22:19:55,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:19:55,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:19:55,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:19:55,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:19:57,803.803 INFO    ] ================================================
[2026-06-22 22:19:57,819.819 INFO    ] Launching Daemon at Mon Jun 22 22:19:57 IST 2026
[2026-06-22 22:19:57,831.831 INFO    ] ================================================
[2026-06-22 22:19:58,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:19:58
[2026-06-22 22:19:58,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:19:59,152.152 INFO    ] Initializing speech engine...
[2026-06-22 22:19:59,177.177 INFO    ] 2026-06-22 22:19:59
[2026-06-22 22:19:59,446.446 INFO    ] 2026-06-22 22:19:59
[2026-06-22 22:19:59,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:19:59,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:19:59,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:19:59,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:19:59,858.858 INFO    ] time= 22/06/2026 22:19:59
[2026-06-22 22:19:59,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:19:59,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:20:00,008.008 INFO    ] No existing commands found in stream
[2026-06-22 22:20:05,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:20:05,036.036 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-22 22:20:09,792.792 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:20:09,795.795 INFO    ] Checking for system updates...
[2026-06-22 22:20:09,830.830 INFO    ] 200
[2026-06-22 22:20:09,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:20:09,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:20:09,890.890 INFO    ] No update needed
[2026-06-22 22:20:09,892.892 INFO    ] Checking for camera pi updates...
[2026-06-22 22:20:09,927.927 INFO    ] 200
[2026-06-22 22:20:09,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:20:09,978.978 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:20:10,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:20:10,066.066 INFO    ] No camera update needed
[2026-06-22 22:20:10,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:20:10,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:20:10,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:20:10,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:20:12,121.121 INFO    ] ================================================
[2026-06-22 22:20:12,137.137 INFO    ] Launching Daemon at Mon Jun 22 22:20:12 IST 2026
[2026-06-22 22:20:12,148.148 INFO    ] ================================================
[2026-06-22 22:20:12,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:20:12
[2026-06-22 22:20:13,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:20:13,612.612 INFO    ] Initializing speech engine...
[2026-06-22 22:20:13,620.620 INFO    ] 2026-06-22 22:20:13
[2026-06-22 22:20:13,871.871 INFO    ] 2026-06-22 22:20:13
[2026-06-22 22:20:13,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:20:14,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:20:14,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:20:14,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:20:14,374.374 INFO    ] time= 22/06/2026 22:20:14
[2026-06-22 22:20:14,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:20:14,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:20:14,574.574 INFO    ] No existing commands found in stream
[2026-06-22 22:20:19,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:20:19,593.593 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-22 22:20:21,544.544 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:20:21,547.547 INFO    ] Checking for system updates...
[2026-06-22 22:20:21,582.582 INFO    ] 200
[2026-06-22 22:20:21,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:20:21,646.646 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:20:21,648.648 INFO    ] No update needed
[2026-06-22 22:20:21,651.651 INFO    ] Checking for camera pi updates...
[2026-06-22 22:20:21,685.685 INFO    ] 200
[2026-06-22 22:20:21,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:20:21,729.729 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:20:21,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:20:21,831.831 INFO    ] No camera update needed
[2026-06-22 22:20:21,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:20:21,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:20:21,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:20:21,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:20:23,889.889 INFO    ] ================================================
[2026-06-22 22:20:23,905.905 INFO    ] Launching Daemon at Mon Jun 22 22:20:23 IST 2026
[2026-06-22 22:20:23,916.916 INFO    ] ================================================
[2026-06-22 22:20:24,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:20:24
[2026-06-22 22:20:25,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:20:25,499.499 INFO    ] Initializing speech engine...
[2026-06-22 22:20:25,506.506 INFO    ] 2026-06-22 22:20:25
[2026-06-22 22:20:25,779.779 INFO    ] 2026-06-22 22:20:25
[2026-06-22 22:20:25,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:20:26,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:20:26,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:20:26,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:20:26,276.276 INFO    ] time= 22/06/2026 22:20:26
[2026-06-22 22:20:26,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:20:26,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:20:26,512.512 INFO    ] No existing commands found in stream
[2026-06-22 22:20:31,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:20:31,545.545 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-22 22:20:34,001.001 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:20:34,004.004 INFO    ] Checking for system updates...
[2026-06-22 22:20:34,047.047 INFO    ] 200
[2026-06-22 22:20:34,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:20:34,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:20:34,106.106 INFO    ] No update needed
[2026-06-22 22:20:34,108.108 INFO    ] Checking for camera pi updates...
[2026-06-22 22:20:34,142.142 INFO    ] 200
[2026-06-22 22:20:34,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:20:34,193.193 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:20:34,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:20:34,278.278 INFO    ] No camera update needed
[2026-06-22 22:20:34,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:20:34,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:20:34,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:20:34,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:20:36,335.335 INFO    ] ================================================
[2026-06-22 22:20:36,351.351 INFO    ] Launching Daemon at Mon Jun 22 22:20:36 IST 2026
[2026-06-22 22:20:36,363.363 INFO    ] ================================================
[2026-06-22 22:20:36,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:20:36
[2026-06-22 22:20:37,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:20:37,736.736 INFO    ] Initializing speech engine...
[2026-06-22 22:20:37,743.743 INFO    ] 2026-06-22 22:20:37
[2026-06-22 22:20:38,006.006 INFO    ] 2026-06-22 22:20:37
[2026-06-22 22:20:38,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:20:39,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:20:39,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:20:39,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:20:39,883.883 INFO    ] time= 22/06/2026 22:20:39
[2026-06-22 22:20:39,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:20:39,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:20:39,969.969 INFO    ] No existing commands found in stream
[2026-06-22 22:20:44,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:20:44,983.983 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-22 22:20:47,571.571 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:20:47,574.574 INFO    ] Checking for system updates...
[2026-06-22 22:20:47,613.613 INFO    ] 200
[2026-06-22 22:20:47,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:20:47,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:20:47,684.684 INFO    ] No update needed
[2026-06-22 22:20:47,687.687 INFO    ] Checking for camera pi updates...
[2026-06-22 22:20:47,722.722 INFO    ] 200
[2026-06-22 22:20:47,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:20:47,767.767 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:20:47,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:20:47,871.871 INFO    ] No camera update needed
[2026-06-22 22:20:47,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:20:47,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:20:47,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:20:47,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:20:49,931.931 INFO    ] ================================================
[2026-06-22 22:20:49,947.947 INFO    ] Launching Daemon at Mon Jun 22 22:20:49 IST 2026
[2026-06-22 22:20:49,960.960 INFO    ] ================================================
[2026-06-22 22:20:50,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:20:50
[2026-06-22 22:20:51,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:20:51,504.504 INFO    ] Initializing speech engine...
[2026-06-22 22:20:51,516.516 INFO    ] 2026-06-22 22:20:51
[2026-06-22 22:20:51,787.787 INFO    ] 2026-06-22 22:20:51
[2026-06-22 22:20:51,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:20:52,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:20:52,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:20:52,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:20:52,270.270 INFO    ] time= 22/06/2026 22:20:52
[2026-06-22 22:20:52,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:20:52,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:20:52,502.502 INFO    ] No existing commands found in stream
[2026-06-22 22:20:57,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:20:57,538.538 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-22 22:21:00,873.873 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:21:00,875.875 INFO    ] Checking for system updates...
[2026-06-22 22:21:00,917.917 INFO    ] 200
[2026-06-22 22:21:00,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:21:00,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:21:00,986.986 INFO    ] No update needed
[2026-06-22 22:21:00,989.989 INFO    ] Checking for camera pi updates...
[2026-06-22 22:21:01,023.023 INFO    ] 200
[2026-06-22 22:21:01,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:21:01,067.067 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:21:01,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:21:01,159.159 INFO    ] No camera update needed
[2026-06-22 22:21:01,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:21:01,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:21:01,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:21:01,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:21:03,240.240 INFO    ] ================================================
[2026-06-22 22:21:03,256.256 INFO    ] Launching Daemon at Mon Jun 22 22:21:03 IST 2026
[2026-06-22 22:21:03,266.266 INFO    ] ================================================
[2026-06-22 22:21:03,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:21:03
[2026-06-22 22:21:04,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:21:04,665.665 INFO    ] Initializing speech engine...
[2026-06-22 22:21:04,673.673 INFO    ] 2026-06-22 22:21:04
[2026-06-22 22:21:04,949.949 INFO    ] 2026-06-22 22:21:04
[2026-06-22 22:21:04,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:21:05,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:21:05,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:21:05,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:21:05,569.569 INFO    ] time= 22/06/2026 22:21:05
[2026-06-22 22:21:05,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:21:05,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:21:05,718.718 INFO    ] No existing commands found in stream
[2026-06-22 22:21:10,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:21:10,736.736 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-22 22:21:15,062.062 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:21:15,065.065 INFO    ] Checking for system updates...
[2026-06-22 22:21:15,104.104 INFO    ] 200
[2026-06-22 22:21:15,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:21:15,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:21:15,163.163 INFO    ] No update needed
[2026-06-22 22:21:15,165.165 INFO    ] Checking for camera pi updates...
[2026-06-22 22:21:15,199.199 INFO    ] 200
[2026-06-22 22:21:15,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:21:15,242.242 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:21:15,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:21:15,353.353 INFO    ] No camera update needed
[2026-06-22 22:21:15,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:21:15,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:21:15,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:21:15,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:21:17,409.409 INFO    ] ================================================
[2026-06-22 22:21:17,425.425 INFO    ] Launching Daemon at Mon Jun 22 22:21:17 IST 2026
[2026-06-22 22:21:17,436.436 INFO    ] ================================================
[2026-06-22 22:21:18,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:21:18
[2026-06-22 22:21:18,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:21:18,884.884 INFO    ] Initializing speech engine...
[2026-06-22 22:21:18,895.895 INFO    ] 2026-06-22 22:21:18
[2026-06-22 22:21:19,139.139 INFO    ] 2026-06-22 22:21:19
[2026-06-22 22:21:19,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:21:19,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:21:19,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:21:19,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:21:19,624.624 INFO    ] time= 22/06/2026 22:21:19
[2026-06-22 22:21:19,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:21:19,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:21:19,832.832 INFO    ] No existing commands found in stream
[2026-06-22 22:21:24,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:21:24,859.859 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-22 22:21:28,745.745 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:21:28,747.747 INFO    ] Checking for system updates...
[2026-06-22 22:21:28,789.789 INFO    ] 200
[2026-06-22 22:21:28,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:21:28,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:21:28,853.853 INFO    ] No update needed
[2026-06-22 22:21:28,856.856 INFO    ] Checking for camera pi updates...
[2026-06-22 22:21:28,890.890 INFO    ] 200
[2026-06-22 22:21:28,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:21:28,933.933 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:21:29,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:21:29,013.013 INFO    ] No camera update needed
[2026-06-22 22:21:29,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:21:29,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:21:29,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:21:29,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:21:31,073.073 INFO    ] ================================================
[2026-06-22 22:21:31,089.089 INFO    ] Launching Daemon at Mon Jun 22 22:21:31 IST 2026
[2026-06-22 22:21:31,100.100 INFO    ] ================================================
[2026-06-22 22:21:31,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:21:31
[2026-06-22 22:21:32,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:21:32,662.662 INFO    ] Initializing speech engine...
[2026-06-22 22:21:32,670.670 INFO    ] 2026-06-22 22:21:32
[2026-06-22 22:21:32,923.923 INFO    ] 2026-06-22 22:21:32
[2026-06-22 22:21:32,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:21:33,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:21:33,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:21:33,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:21:33,359.359 INFO    ] time= 22/06/2026 22:21:33
[2026-06-22 22:21:33,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:21:33,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:21:33,545.545 INFO    ] No existing commands found in stream
[2026-06-22 22:21:38,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:21:38,560.560 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-22 22:21:41,373.373 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:21:41,376.376 INFO    ] Checking for system updates...
[2026-06-22 22:21:41,416.416 INFO    ] 200
[2026-06-22 22:21:41,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:21:41,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:21:41,474.474 INFO    ] No update needed
[2026-06-22 22:21:41,477.477 INFO    ] Checking for camera pi updates...
[2026-06-22 22:21:41,512.512 INFO    ] 200
[2026-06-22 22:21:41,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:21:41,559.559 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:21:41,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:21:41,643.643 INFO    ] No camera update needed
[2026-06-22 22:21:41,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:21:41,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:21:41,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:21:41,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:21:43,700.700 INFO    ] ================================================
[2026-06-22 22:21:43,717.717 INFO    ] Launching Daemon at Mon Jun 22 22:21:43 IST 2026
[2026-06-22 22:21:43,729.729 INFO    ] ================================================
[2026-06-22 22:21:44,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:21:44
[2026-06-22 22:21:44,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:21:45,325.325 INFO    ] Initializing speech engine...
[2026-06-22 22:21:45,337.337 INFO    ] 2026-06-22 22:21:45
[2026-06-22 22:21:45,666.666 INFO    ] 2026-06-22 22:21:45
[2026-06-22 22:21:45,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:21:45,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:21:45,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:21:46,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:21:46,126.126 INFO    ] time= 22/06/2026 22:21:46
[2026-06-22 22:21:46,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:21:46,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:21:46,265.265 INFO    ] No existing commands found in stream
[2026-06-22 22:21:51,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:21:51,279.279 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-22 22:21:52,652.652 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:21:52,655.655 INFO    ] Checking for system updates...
[2026-06-22 22:21:52,691.691 INFO    ] 200
[2026-06-22 22:21:52,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:21:52,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:21:52,782.782 INFO    ] No update needed
[2026-06-22 22:21:52,785.785 INFO    ] Checking for camera pi updates...
[2026-06-22 22:21:52,828.828 INFO    ] 200
[2026-06-22 22:21:52,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:21:52,879.879 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:21:53,052.052 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:21:53,054.054 INFO    ] No camera update needed
[2026-06-22 22:21:53,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:21:53,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:21:53,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:21:53,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:21:55,112.112 INFO    ] ================================================
[2026-06-22 22:21:55,128.128 INFO    ] Launching Daemon at Mon Jun 22 22:21:55 IST 2026
[2026-06-22 22:21:55,138.138 INFO    ] ================================================
[2026-06-22 22:21:55,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:21:55
[2026-06-22 22:21:56,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:21:56,459.459 INFO    ] Initializing speech engine...
[2026-06-22 22:21:56,482.482 INFO    ] 2026-06-22 22:21:56
[2026-06-22 22:21:56,737.737 INFO    ] 2026-06-22 22:21:56
[2026-06-22 22:21:56,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:21:56,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:21:56,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:21:57,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:21:57,210.210 INFO    ] time= 22/06/2026 22:21:57
[2026-06-22 22:21:57,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:21:57,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:21:57,396.396 INFO    ] No existing commands found in stream
[2026-06-22 22:22:02,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:22:02,432.432 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-22 22:22:06,794.794 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:22:06,796.796 INFO    ] Checking for system updates...
[2026-06-22 22:22:06,836.836 INFO    ] 200
[2026-06-22 22:22:06,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:22:06,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:22:06,893.893 INFO    ] No update needed
[2026-06-22 22:22:06,896.896 INFO    ] Checking for camera pi updates...
[2026-06-22 22:22:06,930.930 INFO    ] 200
[2026-06-22 22:22:06,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:22:06,977.977 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:22:07,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:22:07,057.057 INFO    ] No camera update needed
[2026-06-22 22:22:07,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:22:07,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:22:07,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:22:07,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:22:09,112.112 INFO    ] ================================================
[2026-06-22 22:22:09,128.128 INFO    ] Launching Daemon at Mon Jun 22 22:22:09 IST 2026
[2026-06-22 22:22:09,140.140 INFO    ] ================================================
[2026-06-22 22:22:09,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:22:09
[2026-06-22 22:22:10,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:22:10,790.790 INFO    ] Initializing speech engine...
[2026-06-22 22:22:10,799.799 INFO    ] 2026-06-22 22:22:10
[2026-06-22 22:22:11,089.089 INFO    ] 2026-06-22 22:22:11
[2026-06-22 22:22:11,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:22:11,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:22:11,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:22:12,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:22:12,186.186 INFO    ] time= 22/06/2026 22:22:12
[2026-06-22 22:22:12,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:22:12,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:22:12,298.298 INFO    ] No existing commands found in stream
[2026-06-22 22:22:17,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:22:17,313.313 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-22 22:22:21,265.265 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:22:21,268.268 INFO    ] Checking for system updates...
[2026-06-22 22:22:21,305.305 INFO    ] 200
[2026-06-22 22:22:21,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:22:21,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:22:21,366.366 INFO    ] No update needed
[2026-06-22 22:22:21,369.369 INFO    ] Checking for camera pi updates...
[2026-06-22 22:22:21,404.404 INFO    ] 200
[2026-06-22 22:22:21,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:22:21,448.448 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:22:21,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:22:21,532.532 INFO    ] No camera update needed
[2026-06-22 22:22:21,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:22:21,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:22:21,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:22:21,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:22:23,591.591 INFO    ] ================================================
[2026-06-22 22:22:23,607.607 INFO    ] Launching Daemon at Mon Jun 22 22:22:23 IST 2026
[2026-06-22 22:22:23,618.618 INFO    ] ================================================
[2026-06-22 22:22:24,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:22:24
[2026-06-22 22:22:24,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:22:24,991.991 INFO    ] Initializing speech engine...
[2026-06-22 22:22:25,006.006 INFO    ] 2026-06-22 22:22:24
[2026-06-22 22:22:25,293.293 INFO    ] 2026-06-22 22:22:25
[2026-06-22 22:22:25,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:22:25,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:22:25,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:22:25,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:22:25,857.857 INFO    ] time= 22/06/2026 22:22:25
[2026-06-22 22:22:25,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:22:25,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:22:26,009.009 INFO    ] No existing commands found in stream
[2026-06-22 22:22:31,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:22:31,027.027 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-22 22:22:34,905.905 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:22:34,908.908 INFO    ] Checking for system updates...
[2026-06-22 22:22:34,952.952 INFO    ] 200
[2026-06-22 22:22:34,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:22:35,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:22:35,010.010 INFO    ] No update needed
[2026-06-22 22:22:35,013.013 INFO    ] Checking for camera pi updates...
[2026-06-22 22:22:35,050.050 INFO    ] 200
[2026-06-22 22:22:35,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:22:35,099.099 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:22:35,182.182 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:22:35,185.185 INFO    ] No camera update needed
[2026-06-22 22:22:35,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:22:35,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:22:35,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:22:35,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:22:37,245.245 INFO    ] ================================================
[2026-06-22 22:22:37,259.259 INFO    ] Launching Daemon at Mon Jun 22 22:22:37 IST 2026
[2026-06-22 22:22:37,270.270 INFO    ] ================================================
[2026-06-22 22:22:37,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:22:37
[2026-06-22 22:22:38,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:22:38,731.731 INFO    ] Initializing speech engine...
[2026-06-22 22:22:38,736.736 INFO    ] 2026-06-22 22:22:38
[2026-06-22 22:22:38,985.985 INFO    ] 2026-06-22 22:22:38
[2026-06-22 22:22:39,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:22:41,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:22:41,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:22:42,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:22:42,537.537 INFO    ] time= 22/06/2026 22:22:42
[2026-06-22 22:22:42,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:22:42,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:22:42,617.617 INFO    ] No existing commands found in stream
[2026-06-22 22:22:47,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:22:47,629.629 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-22 22:22:50,347.347 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:22:50,350.350 INFO    ] Checking for system updates...
[2026-06-22 22:22:50,386.386 INFO    ] 200
[2026-06-22 22:22:50,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:22:50,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:22:50,452.452 INFO    ] No update needed
[2026-06-22 22:22:50,454.454 INFO    ] Checking for camera pi updates...
[2026-06-22 22:22:50,490.490 INFO    ] 200
[2026-06-22 22:22:50,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:22:50,537.537 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:22:50,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:22:50,620.620 INFO    ] No camera update needed
[2026-06-22 22:22:50,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:22:50,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:22:50,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:22:50,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:22:52,678.678 INFO    ] ================================================
[2026-06-22 22:22:52,694.694 INFO    ] Launching Daemon at Mon Jun 22 22:22:52 IST 2026
[2026-06-22 22:22:52,705.705 INFO    ] ================================================
[2026-06-22 22:22:53,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:22:53
[2026-06-22 22:22:53,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:22:54,143.143 INFO    ] Initializing speech engine...
[2026-06-22 22:22:54,152.152 INFO    ] 2026-06-22 22:22:54
[2026-06-22 22:22:54,415.415 INFO    ] 2026-06-22 22:22:54
[2026-06-22 22:22:54,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:22:54,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:22:54,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:22:54,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:22:54,863.863 INFO    ] time= 22/06/2026 22:22:54
[2026-06-22 22:22:54,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:22:54,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:22:55,077.077 INFO    ] No existing commands found in stream
[2026-06-22 22:23:00,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:23:00,101.101 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-22 22:23:01,337.337 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:23:01,340.340 INFO    ] Checking for system updates...
[2026-06-22 22:23:01,415.415 INFO    ] 200
[2026-06-22 22:23:01,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:23:01,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:23:01,532.532 INFO    ] No update needed
[2026-06-22 22:23:01,535.535 INFO    ] Checking for camera pi updates...
[2026-06-22 22:23:01,577.577 INFO    ] 200
[2026-06-22 22:23:01,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:23:01,627.627 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:23:01,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:23:01,698.698 INFO    ] No camera update needed
[2026-06-22 22:23:01,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:23:01,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:23:01,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:23:01,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:23:03,766.766 INFO    ] ================================================
[2026-06-22 22:23:03,781.781 INFO    ] Launching Daemon at Mon Jun 22 22:23:03 IST 2026
[2026-06-22 22:23:03,792.792 INFO    ] ================================================
[2026-06-22 22:23:04,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:23:04
[2026-06-22 22:23:04,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:23:05,213.213 INFO    ] Initializing speech engine...
[2026-06-22 22:23:05,224.224 INFO    ] 2026-06-22 22:23:05
[2026-06-22 22:23:05,467.467 INFO    ] 2026-06-22 22:23:05
[2026-06-22 22:23:05,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:23:05,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:23:05,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:23:05,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:23:05,971.971 INFO    ] time= 22/06/2026 22:23:05
[2026-06-22 22:23:05,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:23:06,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:23:06,171.171 INFO    ] No existing commands found in stream
[2026-06-22 22:23:11,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:23:11,201.201 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-22 22:23:14,395.395 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:23:14,398.398 INFO    ] Checking for system updates...
[2026-06-22 22:23:14,433.433 INFO    ] 200
[2026-06-22 22:23:14,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:23:14,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:23:14,500.500 INFO    ] No update needed
[2026-06-22 22:23:14,503.503 INFO    ] Checking for camera pi updates...
[2026-06-22 22:23:14,541.541 INFO    ] 200
[2026-06-22 22:23:14,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:23:14,586.586 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:23:14,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:23:14,665.665 INFO    ] No camera update needed
[2026-06-22 22:23:14,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:23:14,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:23:14,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:23:14,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:23:16,726.726 INFO    ] ================================================
[2026-06-22 22:23:16,741.741 INFO    ] Launching Daemon at Mon Jun 22 22:23:16 IST 2026
[2026-06-22 22:23:16,753.753 INFO    ] ================================================
[2026-06-22 22:23:17,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:23:17
[2026-06-22 22:23:17,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:23:18,178.178 INFO    ] Initializing speech engine...
[2026-06-22 22:23:18,187.187 INFO    ] 2026-06-22 22:23:18
[2026-06-22 22:23:18,433.433 INFO    ] 2026-06-22 22:23:18
[2026-06-22 22:23:18,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:23:18,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:23:18,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:23:18,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:23:18,936.936 INFO    ] time= 22/06/2026 22:23:18
[2026-06-22 22:23:18,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:23:19,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:23:19,150.150 INFO    ] No existing commands found in stream
[2026-06-22 22:23:24,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:23:24,166.166 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-22 22:23:28,514.514 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:23:28,516.516 INFO    ] Checking for system updates...
[2026-06-22 22:23:28,554.554 INFO    ] 200
[2026-06-22 22:23:28,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:23:28,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:23:28,612.612 INFO    ] No update needed
[2026-06-22 22:23:28,615.615 INFO    ] Checking for camera pi updates...
[2026-06-22 22:23:28,652.652 INFO    ] 200
[2026-06-22 22:23:28,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:23:28,696.696 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:23:28,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:23:28,799.799 INFO    ] No camera update needed
[2026-06-22 22:23:28,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:23:28,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:23:28,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:23:28,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:23:30,856.856 INFO    ] ================================================
[2026-06-22 22:23:30,878.878 INFO    ] Launching Daemon at Mon Jun 22 22:23:30 IST 2026
[2026-06-22 22:23:30,890.890 INFO    ] ================================================
[2026-06-22 22:23:31,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:23:31
[2026-06-22 22:23:32,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:23:32,410.410 INFO    ] Initializing speech engine...
[2026-06-22 22:23:32,422.422 INFO    ] 2026-06-22 22:23:32
[2026-06-22 22:23:32,702.702 INFO    ] 2026-06-22 22:23:32
[2026-06-22 22:23:32,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:23:32,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:23:32,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:23:33,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:23:33,165.165 INFO    ] time= 22/06/2026 22:23:33
[2026-06-22 22:23:33,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:23:33,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:23:33,353.353 INFO    ] No existing commands found in stream
[2026-06-22 22:23:38,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:23:38,380.380 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-22 22:23:43,684.684 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:23:43,687.687 INFO    ] Checking for system updates...
[2026-06-22 22:23:43,723.723 INFO    ] 200
[2026-06-22 22:23:43,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:23:43,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:23:43,782.782 INFO    ] No update needed
[2026-06-22 22:23:43,784.784 INFO    ] Checking for camera pi updates...
[2026-06-22 22:23:43,822.822 INFO    ] 200
[2026-06-22 22:23:43,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:23:43,871.871 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:23:43,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:23:43,957.957 INFO    ] No camera update needed
[2026-06-22 22:23:43,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:23:43,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:23:43,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:23:43,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:23:46,013.013 INFO    ] ================================================
[2026-06-22 22:23:46,028.028 INFO    ] Launching Daemon at Mon Jun 22 22:23:46 IST 2026
[2026-06-22 22:23:46,038.038 INFO    ] ================================================
[2026-06-22 22:23:46,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:23:46
[2026-06-22 22:23:47,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:23:47,488.488 INFO    ] Initializing speech engine...
[2026-06-22 22:23:47,507.507 INFO    ] 2026-06-22 22:23:47
[2026-06-22 22:23:47,758.758 INFO    ] 2026-06-22 22:23:47
[2026-06-22 22:23:47,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:23:47,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:23:48,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:23:48,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:23:48,240.240 INFO    ] time= 22/06/2026 22:23:48
[2026-06-22 22:23:48,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:23:48,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:23:48,446.446 INFO    ] No existing commands found in stream
[2026-06-22 22:23:53,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:23:53,481.481 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-22 22:23:56,620.620 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:23:56,622.622 INFO    ] Checking for system updates...
[2026-06-22 22:23:56,659.659 INFO    ] 200
[2026-06-22 22:23:56,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:23:56,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:23:56,724.724 INFO    ] No update needed
[2026-06-22 22:23:56,726.726 INFO    ] Checking for camera pi updates...
[2026-06-22 22:23:56,772.772 INFO    ] 200
[2026-06-22 22:23:56,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:23:56,815.815 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:23:57,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:23:57,015.015 INFO    ] No camera update needed
[2026-06-22 22:23:57,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:23:57,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:23:57,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:23:57,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:23:59,072.072 INFO    ] ================================================
[2026-06-22 22:23:59,087.087 INFO    ] Launching Daemon at Mon Jun 22 22:23:59 IST 2026
[2026-06-22 22:23:59,098.098 INFO    ] ================================================
[2026-06-22 22:23:59,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:23:59
[2026-06-22 22:24:00,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:24:00,612.612 INFO    ] Initializing speech engine...
[2026-06-22 22:24:00,618.618 INFO    ] 2026-06-22 22:24:00
[2026-06-22 22:24:00,867.867 INFO    ] 2026-06-22 22:24:00
[2026-06-22 22:24:00,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:24:01,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:24:01,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:24:01,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:24:01,243.243 INFO    ] time= 22/06/2026 22:24:01
[2026-06-22 22:24:01,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:24:01,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:24:01,432.432 INFO    ] No existing commands found in stream
[2026-06-22 22:24:06,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:24:06,457.457 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-22 22:24:09,503.503 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:24:09,506.506 INFO    ] Checking for system updates...
[2026-06-22 22:24:09,546.546 INFO    ] 200
[2026-06-22 22:24:09,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:24:09,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:24:09,612.612 INFO    ] No update needed
[2026-06-22 22:24:09,614.614 INFO    ] Checking for camera pi updates...
[2026-06-22 22:24:09,648.648 INFO    ] 200
[2026-06-22 22:24:09,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:24:09,691.691 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:24:09,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:24:09,769.769 INFO    ] No camera update needed
[2026-06-22 22:24:09,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:24:09,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:24:09,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:24:09,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:24:11,823.823 INFO    ] ================================================
[2026-06-22 22:24:11,838.838 INFO    ] Launching Daemon at Mon Jun 22 22:24:11 IST 2026
[2026-06-22 22:24:11,849.849 INFO    ] ================================================
[2026-06-22 22:24:12,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:24:12
[2026-06-22 22:24:13,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:24:13,269.269 INFO    ] Initializing speech engine...
[2026-06-22 22:24:13,276.276 INFO    ] 2026-06-22 22:24:13
[2026-06-22 22:24:13,582.582 INFO    ] 2026-06-22 22:24:13
[2026-06-22 22:24:13,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:24:13,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:24:13,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:24:14,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:24:14,087.087 INFO    ] time= 22/06/2026 22:24:14
[2026-06-22 22:24:14,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:24:14,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:24:14,282.282 INFO    ] No existing commands found in stream
[2026-06-22 22:24:19,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:24:19,307.307 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-22 22:24:21,048.048 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:24:21,049.049 INFO    ] Checking for system updates...
[2026-06-22 22:24:21,071.071 INFO    ] 200
[2026-06-22 22:24:21,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:24:21,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:24:21,137.137 INFO    ] No update needed
[2026-06-22 22:24:21,139.139 INFO    ] Checking for camera pi updates...
[2026-06-22 22:24:21,175.175 INFO    ] 200
[2026-06-22 22:24:21,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:24:21,225.225 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:24:21,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:24:21,310.310 INFO    ] No camera update needed
[2026-06-22 22:24:21,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:24:21,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:24:21,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:24:21,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:24:23,365.365 INFO    ] ================================================
[2026-06-22 22:24:23,380.380 INFO    ] Launching Daemon at Mon Jun 22 22:24:23 IST 2026
[2026-06-22 22:24:23,391.391 INFO    ] ================================================
[2026-06-22 22:24:23,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:24:23
[2026-06-22 22:24:24,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:24:24,829.829 INFO    ] Initializing speech engine...
[2026-06-22 22:24:24,844.844 INFO    ] 2026-06-22 22:24:24
[2026-06-22 22:24:25,100.100 INFO    ] 2026-06-22 22:24:25
[2026-06-22 22:24:25,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:24:25,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:24:25,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:24:25,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:24:25,615.615 INFO    ] time= 22/06/2026 22:24:25
[2026-06-22 22:24:25,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:24:25,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:24:25,826.826 INFO    ] No existing commands found in stream
[2026-06-22 22:24:30,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:24:30,842.842 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-22 22:24:32,175.175 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:24:32,178.178 INFO    ] Checking for system updates...
[2026-06-22 22:24:32,216.216 INFO    ] 200
[2026-06-22 22:24:32,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:24:32,278.278 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:24:32,280.280 INFO    ] No update needed
[2026-06-22 22:24:32,283.283 INFO    ] Checking for camera pi updates...
[2026-06-22 22:24:32,320.320 INFO    ] 200
[2026-06-22 22:24:32,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:24:32,366.366 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:24:32,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:24:32,429.429 INFO    ] No camera update needed
[2026-06-22 22:24:32,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:24:32,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:24:32,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:24:32,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:24:34,486.486 INFO    ] ================================================
[2026-06-22 22:24:34,502.502 INFO    ] Launching Daemon at Mon Jun 22 22:24:34 IST 2026
[2026-06-22 22:24:34,512.512 INFO    ] ================================================
[2026-06-22 22:24:35,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:24:35
[2026-06-22 22:24:35,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:24:36,069.069 INFO    ] Initializing speech engine...
[2026-06-22 22:24:36,083.083 INFO    ] 2026-06-22 22:24:36
[2026-06-22 22:24:36,348.348 INFO    ] 2026-06-22 22:24:36
[2026-06-22 22:24:36,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:24:36,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:24:36,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:24:37,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:24:37,387.387 INFO    ] time= 22/06/2026 22:24:37
[2026-06-22 22:24:37,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:24:37,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:24:37,511.511 INFO    ] No existing commands found in stream
[2026-06-22 22:24:42,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:24:42,539.539 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-22 22:24:45,370.370 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:24:45,372.372 INFO    ] Checking for system updates...
[2026-06-22 22:24:45,393.393 INFO    ] 200
[2026-06-22 22:24:45,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:24:45,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:24:45,457.457 INFO    ] No update needed
[2026-06-22 22:24:45,460.460 INFO    ] Checking for camera pi updates...
[2026-06-22 22:24:45,501.501 INFO    ] 200
[2026-06-22 22:24:45,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:24:45,550.550 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:24:45,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:24:45,638.638 INFO    ] No camera update needed
[2026-06-22 22:24:45,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:24:45,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:24:45,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:24:45,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:24:47,700.700 INFO    ] ================================================
[2026-06-22 22:24:47,715.715 INFO    ] Launching Daemon at Mon Jun 22 22:24:47 IST 2026
[2026-06-22 22:24:47,726.726 INFO    ] ================================================
[2026-06-22 22:24:48,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:24:48
[2026-06-22 22:24:48,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:24:49,199.199 INFO    ] Initializing speech engine...
[2026-06-22 22:24:49,208.208 INFO    ] 2026-06-22 22:24:49
[2026-06-22 22:24:49,497.497 INFO    ] 2026-06-22 22:24:49
[2026-06-22 22:24:49,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:24:49,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:24:49,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:24:49,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:24:50,034.034 INFO    ] time= 22/06/2026 22:24:49
[2026-06-22 22:24:50,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:24:50,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:24:50,192.192 INFO    ] No existing commands found in stream
[2026-06-22 22:24:55,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:24:55,213.213 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-22 22:24:55,696.696 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:24:55,699.699 INFO    ] Checking for system updates...
[2026-06-22 22:24:55,736.736 INFO    ] 200
[2026-06-22 22:24:55,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:24:55,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:24:55,796.796 INFO    ] No update needed
[2026-06-22 22:24:55,799.799 INFO    ] Checking for camera pi updates...
[2026-06-22 22:24:55,834.834 INFO    ] 200
[2026-06-22 22:24:55,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:24:55,879.879 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:24:55,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:24:55,964.964 INFO    ] No camera update needed
[2026-06-22 22:24:55,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:24:55,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:24:55,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:24:55,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:24:58,023.023 INFO    ] ================================================
[2026-06-22 22:24:58,039.039 INFO    ] Launching Daemon at Mon Jun 22 22:24:58 IST 2026
[2026-06-22 22:24:58,050.050 INFO    ] ================================================
[2026-06-22 22:24:58,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:24:58
[2026-06-22 22:24:59,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:24:59,456.456 INFO    ] Initializing speech engine...
[2026-06-22 22:24:59,464.464 INFO    ] 2026-06-22 22:24:59
[2026-06-22 22:24:59,712.712 INFO    ] 2026-06-22 22:24:59
[2026-06-22 22:24:59,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:24:59,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:24:59,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:25:00,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:25:00,081.081 INFO    ] time= 22/06/2026 22:25:00
[2026-06-22 22:25:00,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:25:00,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:25:00,260.260 INFO    ] No existing commands found in stream
[2026-06-22 22:25:05,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:25:05,290.290 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-22 22:25:06,104.104 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:25:06,107.107 INFO    ] Checking for system updates...
[2026-06-22 22:25:06,143.143 INFO    ] 200
[2026-06-22 22:25:06,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:25:06,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:25:06,201.201 INFO    ] No update needed
[2026-06-22 22:25:06,203.203 INFO    ] Checking for camera pi updates...
[2026-06-22 22:25:06,239.239 INFO    ] 200
[2026-06-22 22:25:06,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:25:06,284.284 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:25:06,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:25:06,385.385 INFO    ] No camera update needed
[2026-06-22 22:25:06,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:25:06,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:25:06,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:25:06,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:25:08,447.447 INFO    ] ================================================
[2026-06-22 22:25:08,462.462 INFO    ] Launching Daemon at Mon Jun 22 22:25:08 IST 2026
[2026-06-22 22:25:08,473.473 INFO    ] ================================================
[2026-06-22 22:25:09,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:25:09
[2026-06-22 22:25:09,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:25:10,020.020 INFO    ] Initializing speech engine...
[2026-06-22 22:25:10,030.030 INFO    ] 2026-06-22 22:25:10
[2026-06-22 22:25:10,350.350 INFO    ] 2026-06-22 22:25:10
[2026-06-22 22:25:10,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:25:10,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:25:10,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:25:10,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:25:10,861.861 INFO    ] time= 22/06/2026 22:25:10
[2026-06-22 22:25:10,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:25:10,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:25:11,019.019 INFO    ] No existing commands found in stream
[2026-06-22 22:25:16,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:25:16,045.045 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-22 22:25:18,087.087 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:25:18,088.088 INFO    ] Checking for system updates...
[2026-06-22 22:25:18,109.109 INFO    ] 200
[2026-06-22 22:25:18,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:25:18,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:25:18,145.145 INFO    ] No update needed
[2026-06-22 22:25:18,147.147 INFO    ] Checking for camera pi updates...
[2026-06-22 22:25:18,169.169 INFO    ] 200
[2026-06-22 22:25:18,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:25:18,197.197 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:25:18,282.282 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:25:18,285.285 INFO    ] No camera update needed
[2026-06-22 22:25:18,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:25:18,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:25:18,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:25:18,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:25:20,345.345 INFO    ] ================================================
[2026-06-22 22:25:20,359.359 INFO    ] Launching Daemon at Mon Jun 22 22:25:20 IST 2026
[2026-06-22 22:25:20,370.370 INFO    ] ================================================
[2026-06-22 22:25:21,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:25:21
[2026-06-22 22:25:21,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:25:21,928.928 INFO    ] Initializing speech engine...
[2026-06-22 22:25:21,940.940 INFO    ] 2026-06-22 22:25:21
[2026-06-22 22:25:22,250.250 INFO    ] 2026-06-22 22:25:22
[2026-06-22 22:25:22,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:25:22,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:25:22,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:25:22,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:25:22,759.759 INFO    ] time= 22/06/2026 22:25:22
[2026-06-22 22:25:22,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:25:22,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:25:22,914.914 INFO    ] No existing commands found in stream
[2026-06-22 22:25:27,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:25:27,942.942 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-22 22:25:31,095.095 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:25:31,098.098 INFO    ] Checking for system updates...
[2026-06-22 22:25:31,135.135 INFO    ] 200
[2026-06-22 22:25:31,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:25:31,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:25:31,210.210 INFO    ] No update needed
[2026-06-22 22:25:31,214.214 INFO    ] Checking for camera pi updates...
[2026-06-22 22:25:31,263.263 INFO    ] 200
[2026-06-22 22:25:31,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:25:31,313.313 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:25:31,408.408 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:25:31,411.411 INFO    ] No camera update needed
[2026-06-22 22:25:31,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:25:31,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:25:31,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:25:31,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:25:33,476.476 INFO    ] ================================================
[2026-06-22 22:25:33,491.491 INFO    ] Launching Daemon at Mon Jun 22 22:25:33 IST 2026
[2026-06-22 22:25:33,502.502 INFO    ] ================================================
[2026-06-22 22:25:34,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:25:34
[2026-06-22 22:25:34,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:25:34,972.972 INFO    ] Initializing speech engine...
[2026-06-22 22:25:34,979.979 INFO    ] 2026-06-22 22:25:34
[2026-06-22 22:25:35,223.223 INFO    ] 2026-06-22 22:25:35
[2026-06-22 22:25:35,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:25:35,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:25:35,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:25:35,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:25:35,607.607 INFO    ] time= 22/06/2026 22:25:35
[2026-06-22 22:25:35,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:25:35,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:25:35,843.843 INFO    ] No existing commands found in stream
[2026-06-22 22:25:40,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:25:40,861.861 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-22 22:25:42,224.224 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:25:42,227.227 INFO    ] Checking for system updates...
[2026-06-22 22:25:42,267.267 INFO    ] 200
[2026-06-22 22:25:42,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:25:42,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:25:42,326.326 INFO    ] No update needed
[2026-06-22 22:25:42,329.329 INFO    ] Checking for camera pi updates...
[2026-06-22 22:25:42,364.364 INFO    ] 200
[2026-06-22 22:25:42,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:25:42,414.414 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:25:42,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:25:42,496.496 INFO    ] No camera update needed
[2026-06-22 22:25:42,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:25:42,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:25:42,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:25:42,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:25:44,556.556 INFO    ] ================================================
[2026-06-22 22:25:44,571.571 INFO    ] Launching Daemon at Mon Jun 22 22:25:44 IST 2026
[2026-06-22 22:25:44,582.582 INFO    ] ================================================
[2026-06-22 22:25:45,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:25:45
[2026-06-22 22:25:45,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:25:45,902.902 INFO    ] Initializing speech engine...
[2026-06-22 22:25:45,923.923 INFO    ] 2026-06-22 22:25:45
[2026-06-22 22:25:46,184.184 INFO    ] 2026-06-22 22:25:46
[2026-06-22 22:25:46,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:25:46,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:25:46,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:25:46,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:25:46,668.668 INFO    ] time= 22/06/2026 22:25:46
[2026-06-22 22:25:46,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:25:46,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:25:46,863.863 INFO    ] No existing commands found in stream
[2026-06-22 22:25:51,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:25:51,878.878 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-22 22:25:53,426.426 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:25:53,430.430 INFO    ] Checking for system updates...
[2026-06-22 22:25:53,472.472 INFO    ] 200
[2026-06-22 22:25:53,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:25:53,537.537 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:25:53,540.540 INFO    ] No update needed
[2026-06-22 22:25:53,544.544 INFO    ] Checking for camera pi updates...
[2026-06-22 22:25:53,583.583 INFO    ] 200
[2026-06-22 22:25:53,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:25:53,627.627 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:25:53,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:25:53,716.716 INFO    ] No camera update needed
[2026-06-22 22:25:53,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:25:53,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:25:53,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:25:53,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:25:55,776.776 INFO    ] ================================================
[2026-06-22 22:25:55,791.791 INFO    ] Launching Daemon at Mon Jun 22 22:25:55 IST 2026
[2026-06-22 22:25:55,802.802 INFO    ] ================================================
[2026-06-22 22:25:56,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:25:56
[2026-06-22 22:25:56,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:25:57,116.116 INFO    ] Initializing speech engine...
[2026-06-22 22:25:57,122.122 INFO    ] 2026-06-22 22:25:57
[2026-06-22 22:25:57,396.396 INFO    ] 2026-06-22 22:25:57
[2026-06-22 22:25:57,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:25:57,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:25:57,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:25:57,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:25:57,878.878 INFO    ] time= 22/06/2026 22:25:57
[2026-06-22 22:25:57,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:25:57,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:25:58,084.084 INFO    ] No existing commands found in stream
[2026-06-22 22:26:03,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:26:03,117.117 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-22 22:26:04,433.433 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:26:04,436.436 INFO    ] Checking for system updates...
[2026-06-22 22:26:04,473.473 INFO    ] 200
[2026-06-22 22:26:04,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:26:04,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:26:04,533.533 INFO    ] No update needed
[2026-06-22 22:26:04,536.536 INFO    ] Checking for camera pi updates...
[2026-06-22 22:26:04,576.576 INFO    ] 200
[2026-06-22 22:26:04,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:26:04,625.625 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:26:04,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:26:04,750.750 INFO    ] No camera update needed
[2026-06-22 22:26:04,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:26:04,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:26:04,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:26:04,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:26:06,808.808 INFO    ] ================================================
[2026-06-22 22:26:06,823.823 INFO    ] Launching Daemon at Mon Jun 22 22:26:06 IST 2026
[2026-06-22 22:26:06,834.834 INFO    ] ================================================
[2026-06-22 22:26:07,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:26:07
[2026-06-22 22:26:08,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:26:08,458.458 INFO    ] Initializing speech engine...
[2026-06-22 22:26:08,470.470 INFO    ] 2026-06-22 22:26:08
[2026-06-22 22:26:08,783.783 INFO    ] 2026-06-22 22:26:08
[2026-06-22 22:26:08,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:26:09,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:26:09,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:26:09,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:26:09,297.297 INFO    ] time= 22/06/2026 22:26:09
[2026-06-22 22:26:09,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:26:09,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:26:09,458.458 INFO    ] No existing commands found in stream
[2026-06-22 22:26:14,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:26:14,493.493 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-22 22:26:16,560.560 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:26:16,562.562 INFO    ] Checking for system updates...
[2026-06-22 22:26:16,583.583 INFO    ] 200
[2026-06-22 22:26:16,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:26:16,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:26:16,631.631 INFO    ] No update needed
[2026-06-22 22:26:16,634.634 INFO    ] Checking for camera pi updates...
[2026-06-22 22:26:16,685.685 INFO    ] 200
[2026-06-22 22:26:16,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:26:16,730.730 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:26:16,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:26:16,817.817 INFO    ] No camera update needed
[2026-06-22 22:26:16,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:26:16,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:26:16,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:26:16,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:26:18,872.872 INFO    ] ================================================
[2026-06-22 22:26:18,888.888 INFO    ] Launching Daemon at Mon Jun 22 22:26:18 IST 2026
[2026-06-22 22:26:18,899.899 INFO    ] ================================================
[2026-06-22 22:26:19,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:26:19
[2026-06-22 22:26:20,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:26:20,429.429 INFO    ] Initializing speech engine...
[2026-06-22 22:26:20,436.436 INFO    ] 2026-06-22 22:26:20
[2026-06-22 22:26:20,743.743 INFO    ] 2026-06-22 22:26:20
[2026-06-22 22:26:20,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:26:21,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:26:21,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:26:21,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:26:21,254.254 INFO    ] time= 22/06/2026 22:26:21
[2026-06-22 22:26:21,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:26:21,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:26:21,411.411 INFO    ] No existing commands found in stream
[2026-06-22 22:26:26,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:26:26,449.449 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-22 22:26:30,838.838 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:26:30,839.839 INFO    ] Checking for system updates...
[2026-06-22 22:26:30,861.861 INFO    ] 200
[2026-06-22 22:26:30,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:26:30,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:26:30,897.897 INFO    ] No update needed
[2026-06-22 22:26:30,898.898 INFO    ] Checking for camera pi updates...
[2026-06-22 22:26:30,918.918 INFO    ] 200
[2026-06-22 22:26:30,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:26:30,951.951 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:26:31,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:26:31,051.051 INFO    ] No camera update needed
[2026-06-22 22:26:31,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:26:31,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:26:31,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:26:31,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:26:33,108.108 INFO    ] ================================================
[2026-06-22 22:26:33,124.124 INFO    ] Launching Daemon at Mon Jun 22 22:26:33 IST 2026
[2026-06-22 22:26:33,135.135 INFO    ] ================================================
[2026-06-22 22:26:33,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:26:33
[2026-06-22 22:26:34,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:26:34,537.537 INFO    ] Initializing speech engine...
[2026-06-22 22:26:34,549.549 INFO    ] 2026-06-22 22:26:34
[2026-06-22 22:26:34,813.813 INFO    ] 2026-06-22 22:26:34
[2026-06-22 22:26:34,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:26:35,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:26:35,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:26:35,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:26:35,337.337 INFO    ] time= 22/06/2026 22:26:35
[2026-06-22 22:26:35,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:26:35,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:26:35,567.567 INFO    ] No existing commands found in stream
[2026-06-22 22:26:40,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:26:40,588.588 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-22 22:26:46,669.669 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:26:46,671.671 INFO    ] Checking for system updates...
[2026-06-22 22:26:46,707.707 INFO    ] 200
[2026-06-22 22:26:46,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:26:46,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:26:46,766.766 INFO    ] No update needed
[2026-06-22 22:26:46,768.768 INFO    ] Checking for camera pi updates...
[2026-06-22 22:26:46,804.804 INFO    ] 200
[2026-06-22 22:26:46,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:26:46,866.866 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:26:46,944.944 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:26:46,946.946 INFO    ] No camera update needed
[2026-06-22 22:26:46,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:26:46,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:26:46,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:26:46,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:26:49,003.003 INFO    ] ================================================
[2026-06-22 22:26:49,019.019 INFO    ] Launching Daemon at Mon Jun 22 22:26:49 IST 2026
[2026-06-22 22:26:49,030.030 INFO    ] ================================================
[2026-06-22 22:26:49,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:26:49
[2026-06-22 22:26:50,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:26:50,363.363 INFO    ] Initializing speech engine...
[2026-06-22 22:26:50,375.375 INFO    ] 2026-06-22 22:26:50
[2026-06-22 22:26:50,622.622 INFO    ] 2026-06-22 22:26:50
[2026-06-22 22:26:50,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:26:50,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:26:50,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:26:51,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:26:51,089.089 INFO    ] time= 22/06/2026 22:26:51
[2026-06-22 22:26:51,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:26:51,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:26:51,307.307 INFO    ] No existing commands found in stream
[2026-06-22 22:26:56,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:26:56,336.336 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-22 22:26:58,477.477 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:26:58,478.478 INFO    ] Checking for system updates...
[2026-06-22 22:26:58,500.500 INFO    ] 200
[2026-06-22 22:26:58,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:26:58,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:26:58,532.532 INFO    ] No update needed
[2026-06-22 22:26:58,534.534 INFO    ] Checking for camera pi updates...
[2026-06-22 22:26:58,556.556 INFO    ] 200
[2026-06-22 22:26:58,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:26:58,583.583 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:26:58,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:26:58,665.665 INFO    ] No camera update needed
[2026-06-22 22:26:58,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:26:58,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:26:58,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:26:58,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:27:00,722.722 INFO    ] ================================================
[2026-06-22 22:27:00,737.737 INFO    ] Launching Daemon at Mon Jun 22 22:27:00 IST 2026
[2026-06-22 22:27:00,748.748 INFO    ] ================================================
[2026-06-22 22:27:01,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:27:01
[2026-06-22 22:27:02,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:27:02,521.521 INFO    ] Initializing speech engine...
[2026-06-22 22:27:02,536.536 INFO    ] 2026-06-22 22:27:02
[2026-06-22 22:27:02,830.830 INFO    ] 2026-06-22 22:27:02
[2026-06-22 22:27:02,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:27:03,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:27:03,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:27:03,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:27:03,247.247 INFO    ] time= 22/06/2026 22:27:03
[2026-06-22 22:27:03,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:27:03,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:27:03,342.342 INFO    ] No existing commands found in stream
[2026-06-22 22:27:08,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:27:08,354.354 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-22 22:27:11,751.751 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:27:11,753.753 INFO    ] Checking for system updates...
[2026-06-22 22:27:11,773.773 INFO    ] 200
[2026-06-22 22:27:11,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:27:11,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:27:11,817.817 INFO    ] No update needed
[2026-06-22 22:27:11,819.819 INFO    ] Checking for camera pi updates...
[2026-06-22 22:27:11,853.853 INFO    ] 200
[2026-06-22 22:27:11,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:27:11,896.896 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:27:11,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:27:11,978.978 INFO    ] No camera update needed
[2026-06-22 22:27:11,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:27:11,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:27:11,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:27:11,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:27:14,036.036 INFO    ] ================================================
[2026-06-22 22:27:14,050.050 INFO    ] Launching Daemon at Mon Jun 22 22:27:14 IST 2026
[2026-06-22 22:27:14,061.061 INFO    ] ================================================
[2026-06-22 22:27:14,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:27:14
[2026-06-22 22:27:15,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:27:15,409.409 INFO    ] Initializing speech engine...
[2026-06-22 22:27:15,418.418 INFO    ] 2026-06-22 22:27:15
[2026-06-22 22:27:15,671.671 INFO    ] 2026-06-22 22:27:15
[2026-06-22 22:27:15,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:27:17,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:27:17,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:27:18,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:27:18,440.440 INFO    ] time= 22/06/2026 22:27:18
[2026-06-22 22:27:18,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:27:18,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:27:18,512.512 INFO    ] No existing commands found in stream
[2026-06-22 22:27:23,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:27:23,525.525 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-22 22:27:25,443.443 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:27:25,447.447 INFO    ] Checking for system updates...
[2026-06-22 22:27:25,489.489 INFO    ] 200
[2026-06-22 22:27:25,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:27:25,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:27:25,548.548 INFO    ] No update needed
[2026-06-22 22:27:25,550.550 INFO    ] Checking for camera pi updates...
[2026-06-22 22:27:25,587.587 INFO    ] 200
[2026-06-22 22:27:25,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:27:25,631.631 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:27:25,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:27:25,738.738 INFO    ] No camera update needed
[2026-06-22 22:27:25,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:27:25,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:27:25,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:27:25,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:27:27,793.793 INFO    ] ================================================
[2026-06-22 22:27:27,808.808 INFO    ] Launching Daemon at Mon Jun 22 22:27:27 IST 2026
[2026-06-22 22:27:27,819.819 INFO    ] ================================================
[2026-06-22 22:27:28,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:27:28
[2026-06-22 22:27:29,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:27:29,367.367 INFO    ] Initializing speech engine...
[2026-06-22 22:27:29,373.373 INFO    ] 2026-06-22 22:27:29
[2026-06-22 22:27:29,663.663 INFO    ] 2026-06-22 22:27:29
[2026-06-22 22:27:29,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:27:30,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:27:30,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:27:30,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:27:30,380.380 INFO    ] time= 22/06/2026 22:27:30
[2026-06-22 22:27:30,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:27:30,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:27:30,599.599 INFO    ] No existing commands found in stream
[2026-06-22 22:27:35,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:27:35,618.618 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-22 22:27:37,045.045 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:27:37,048.048 INFO    ] Checking for system updates...
[2026-06-22 22:27:37,109.109 INFO    ] 200
[2026-06-22 22:27:37,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:27:37,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:27:37,174.174 INFO    ] No update needed
[2026-06-22 22:27:37,176.176 INFO    ] Checking for camera pi updates...
[2026-06-22 22:27:37,210.210 INFO    ] 200
[2026-06-22 22:27:37,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:27:37,258.258 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:27:37,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:27:37,329.329 INFO    ] No camera update needed
[2026-06-22 22:27:37,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:27:37,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:27:37,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:27:37,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:27:39,384.384 INFO    ] ================================================
[2026-06-22 22:27:39,399.399 INFO    ] Launching Daemon at Mon Jun 22 22:27:39 IST 2026
[2026-06-22 22:27:39,410.410 INFO    ] ================================================
[2026-06-22 22:27:39,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:27:39
[2026-06-22 22:27:40,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:27:40,826.826 INFO    ] Initializing speech engine...
[2026-06-22 22:27:40,840.840 INFO    ] 2026-06-22 22:27:40
[2026-06-22 22:27:41,106.106 INFO    ] 2026-06-22 22:27:41
[2026-06-22 22:27:41,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:27:41,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:27:41,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:27:41,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:27:41,580.580 INFO    ] time= 22/06/2026 22:27:41
[2026-06-22 22:27:41,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:27:41,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:27:41,754.754 INFO    ] No existing commands found in stream
[2026-06-22 22:27:46,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:27:46,787.787 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-22 22:27:52,164.164 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:27:52,175.175 INFO    ] Checking for system updates...
[2026-06-22 22:27:52,196.196 INFO    ] 200
[2026-06-22 22:27:52,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:27:52,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:27:52,230.230 INFO    ] No update needed
[2026-06-22 22:27:52,231.231 INFO    ] Checking for camera pi updates...
[2026-06-22 22:27:52,253.253 INFO    ] 200
[2026-06-22 22:27:52,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:27:52,304.304 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:27:52,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:27:52,404.404 INFO    ] No camera update needed
[2026-06-22 22:27:52,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:27:52,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:27:52,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:27:52,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:27:54,465.465 INFO    ] ================================================
[2026-06-22 22:27:54,480.480 INFO    ] Launching Daemon at Mon Jun 22 22:27:54 IST 2026
[2026-06-22 22:27:54,491.491 INFO    ] ================================================
[2026-06-22 22:27:55,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:27:55
[2026-06-22 22:27:55,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:27:55,856.856 INFO    ] Initializing speech engine...
[2026-06-22 22:27:55,869.869 INFO    ] 2026-06-22 22:27:55
[2026-06-22 22:27:56,153.153 INFO    ] 2026-06-22 22:27:56
[2026-06-22 22:27:56,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:27:56,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:27:56,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:27:56,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:27:56,682.682 INFO    ] time= 22/06/2026 22:27:56
[2026-06-22 22:27:56,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:27:56,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:27:56,834.834 INFO    ] No existing commands found in stream
[2026-06-22 22:28:01,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:28:01,851.851 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-22 22:28:06,014.014 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:28:06,017.017 INFO    ] Checking for system updates...
[2026-06-22 22:28:06,057.057 INFO    ] 200
[2026-06-22 22:28:06,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:28:06,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:28:06,123.123 INFO    ] No update needed
[2026-06-22 22:28:06,125.125 INFO    ] Checking for camera pi updates...
[2026-06-22 22:28:06,168.168 INFO    ] 200
[2026-06-22 22:28:06,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:28:06,213.213 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:28:06,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:28:06,321.321 INFO    ] No camera update needed
[2026-06-22 22:28:06,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:28:06,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:28:06,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:28:06,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:28:08,395.395 INFO    ] ================================================
[2026-06-22 22:28:08,410.410 INFO    ] Launching Daemon at Mon Jun 22 22:28:08 IST 2026
[2026-06-22 22:28:08,421.421 INFO    ] ================================================
[2026-06-22 22:28:09,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:28:09
[2026-06-22 22:28:09,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:28:09,943.943 INFO    ] Initializing speech engine...
[2026-06-22 22:28:09,953.953 INFO    ] 2026-06-22 22:28:09
[2026-06-22 22:28:10,203.203 INFO    ] 2026-06-22 22:28:10
[2026-06-22 22:28:10,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:28:10,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:28:10,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:28:10,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:28:10,748.748 INFO    ] time= 22/06/2026 22:28:10
[2026-06-22 22:28:10,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:28:10,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:28:10,903.903 INFO    ] No existing commands found in stream
[2026-06-22 22:28:15,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:28:15,922.922 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-22 22:28:19,856.856 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:28:19,859.859 INFO    ] Checking for system updates...
[2026-06-22 22:28:19,901.901 INFO    ] 200
[2026-06-22 22:28:19,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:28:19,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:28:19,963.963 INFO    ] No update needed
[2026-06-22 22:28:19,965.965 INFO    ] Checking for camera pi updates...
[2026-06-22 22:28:20,006.006 INFO    ] 200
[2026-06-22 22:28:20,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:28:20,059.059 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:28:20,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:28:20,259.259 INFO    ] No camera update needed
[2026-06-22 22:28:20,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:28:20,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:28:20,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:28:20,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:28:22,322.322 INFO    ] ================================================
[2026-06-22 22:28:22,339.339 INFO    ] Launching Daemon at Mon Jun 22 22:28:22 IST 2026
[2026-06-22 22:28:22,349.349 INFO    ] ================================================
[2026-06-22 22:28:22,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:28:22
[2026-06-22 22:28:23,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:28:23,764.764 INFO    ] Initializing speech engine...
[2026-06-22 22:28:23,778.778 INFO    ] 2026-06-22 22:28:23
[2026-06-22 22:28:24,040.040 INFO    ] 2026-06-22 22:28:24
[2026-06-22 22:28:24,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:28:24,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:28:24,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:28:24,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:28:24,606.606 INFO    ] time= 22/06/2026 22:28:24
[2026-06-22 22:28:24,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:28:24,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:28:24,748.748 INFO    ] No existing commands found in stream
[2026-06-22 22:28:29,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:28:29,774.774 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-22 22:28:33,674.674 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:28:33,677.677 INFO    ] Checking for system updates...
[2026-06-22 22:28:33,717.717 INFO    ] 200
[2026-06-22 22:28:33,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:28:33,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:28:33,783.783 INFO    ] No update needed
[2026-06-22 22:28:33,786.786 INFO    ] Checking for camera pi updates...
[2026-06-22 22:28:33,828.828 INFO    ] 200
[2026-06-22 22:28:33,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:28:33,879.879 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:28:33,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:28:33,964.964 INFO    ] No camera update needed
[2026-06-22 22:28:33,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:28:33,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:28:33,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:28:33,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:28:36,023.023 INFO    ] ================================================
[2026-06-22 22:28:36,039.039 INFO    ] Launching Daemon at Mon Jun 22 22:28:36 IST 2026
[2026-06-22 22:28:36,049.049 INFO    ] ================================================
[2026-06-22 22:28:36,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:28:36
[2026-06-22 22:28:37,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:28:37,461.461 INFO    ] Initializing speech engine...
[2026-06-22 22:28:37,470.470 INFO    ] 2026-06-22 22:28:37
[2026-06-22 22:28:37,762.762 INFO    ] 2026-06-22 22:28:37
[2026-06-22 22:28:37,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:28:37,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:28:38,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:28:38,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:28:38,179.179 INFO    ] time= 22/06/2026 22:28:38
[2026-06-22 22:28:38,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:28:38,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:28:38,277.277 INFO    ] No existing commands found in stream
[2026-06-22 22:28:43,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:28:43,315.315 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-22 22:28:46,258.258 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:28:46,261.261 INFO    ] Checking for system updates...
[2026-06-22 22:28:46,298.298 INFO    ] 200
[2026-06-22 22:28:46,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:28:46,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:28:46,361.361 INFO    ] No update needed
[2026-06-22 22:28:46,363.363 INFO    ] Checking for camera pi updates...
[2026-06-22 22:28:46,400.400 INFO    ] 200
[2026-06-22 22:28:46,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:28:46,447.447 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:28:46,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:28:46,530.530 INFO    ] No camera update needed
[2026-06-22 22:28:46,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:28:46,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:28:46,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:28:46,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:28:48,586.586 INFO    ] ================================================
[2026-06-22 22:28:48,601.601 INFO    ] Launching Daemon at Mon Jun 22 22:28:48 IST 2026
[2026-06-22 22:28:48,612.612 INFO    ] ================================================
[2026-06-22 22:28:49,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:28:49
[2026-06-22 22:28:49,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:28:49,946.946 INFO    ] Initializing speech engine...
[2026-06-22 22:28:49,955.955 INFO    ] 2026-06-22 22:28:49
[2026-06-22 22:28:50,204.204 INFO    ] 2026-06-22 22:28:50
[2026-06-22 22:28:50,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:28:50,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:28:50,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:28:50,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:28:51,020.020 INFO    ] time= 22/06/2026 22:28:50
[2026-06-22 22:28:51,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:28:51,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:28:51,222.222 INFO    ] No existing commands found in stream
[2026-06-22 22:28:56,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:28:56,235.235 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-22 22:29:00,256.256 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:29:00,259.259 INFO    ] Checking for system updates...
[2026-06-22 22:29:00,302.302 INFO    ] 200
[2026-06-22 22:29:00,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:29:00,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:29:00,361.361 INFO    ] No update needed
[2026-06-22 22:29:00,363.363 INFO    ] Checking for camera pi updates...
[2026-06-22 22:29:00,398.398 INFO    ] 200
[2026-06-22 22:29:00,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:29:00,443.443 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:29:00,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:29:00,542.542 INFO    ] No camera update needed
[2026-06-22 22:29:00,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:29:00,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:29:00,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:29:00,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:29:02,608.608 INFO    ] ================================================
[2026-06-22 22:29:02,629.629 INFO    ] Launching Daemon at Mon Jun 22 22:29:02 IST 2026
[2026-06-22 22:29:02,647.647 INFO    ] ================================================
[2026-06-22 22:29:03,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:29:03
[2026-06-22 22:29:03,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:29:04,125.125 INFO    ] Initializing speech engine...
[2026-06-22 22:29:04,131.131 INFO    ] 2026-06-22 22:29:04
[2026-06-22 22:29:04,419.419 INFO    ] 2026-06-22 22:29:04
[2026-06-22 22:29:04,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:29:04,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:29:04,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:29:05,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:29:05,353.353 INFO    ] time= 22/06/2026 22:29:05
[2026-06-22 22:29:05,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:29:05,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:29:05,514.514 INFO    ] No existing commands found in stream
[2026-06-22 22:29:10,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:29:10,527.527 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-22 22:29:11,859.859 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:29:11,862.862 INFO    ] Checking for system updates...
[2026-06-22 22:29:11,898.898 INFO    ] 200
[2026-06-22 22:29:11,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:29:11,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:29:11,960.960 INFO    ] No update needed
[2026-06-22 22:29:11,962.962 INFO    ] Checking for camera pi updates...
[2026-06-22 22:29:11,996.996 INFO    ] 200
[2026-06-22 22:29:11,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:29:12,039.039 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:29:12,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:29:12,118.118 INFO    ] No camera update needed
[2026-06-22 22:29:12,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:29:12,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:29:12,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:29:12,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:29:14,173.173 INFO    ] ================================================
[2026-06-22 22:29:14,188.188 INFO    ] Launching Daemon at Mon Jun 22 22:29:14 IST 2026
[2026-06-22 22:29:14,199.199 INFO    ] ================================================
[2026-06-22 22:29:14,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:29:14
[2026-06-22 22:29:15,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:29:15,649.649 INFO    ] Initializing speech engine...
[2026-06-22 22:29:15,659.659 INFO    ] 2026-06-22 22:29:15
[2026-06-22 22:29:15,933.933 INFO    ] 2026-06-22 22:29:15
[2026-06-22 22:29:15,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:29:16,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:29:16,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:29:16,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:29:16,498.498 INFO    ] time= 22/06/2026 22:29:16
[2026-06-22 22:29:16,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:29:16,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:29:16,653.653 INFO    ] No existing commands found in stream
[2026-06-22 22:29:21,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:29:21,687.687 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-22 22:29:23,719.719 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:29:23,722.722 INFO    ] Checking for system updates...
[2026-06-22 22:29:23,759.759 INFO    ] 200
[2026-06-22 22:29:23,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:29:23,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:29:23,822.822 INFO    ] No update needed
[2026-06-22 22:29:23,824.824 INFO    ] Checking for camera pi updates...
[2026-06-22 22:29:23,860.860 INFO    ] 200
[2026-06-22 22:29:23,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:29:23,906.906 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:29:23,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:29:24,001.001 INFO    ] No camera update needed
[2026-06-22 22:29:24,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:29:24,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:29:24,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:29:24,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:29:26,058.058 INFO    ] ================================================
[2026-06-22 22:29:26,073.073 INFO    ] Launching Daemon at Mon Jun 22 22:29:26 IST 2026
[2026-06-22 22:29:26,083.083 INFO    ] ================================================
[2026-06-22 22:29:26,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:29:26
[2026-06-22 22:29:27,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:29:27,397.397 INFO    ] Initializing speech engine...
[2026-06-22 22:29:27,420.420 INFO    ] 2026-06-22 22:29:27
[2026-06-22 22:29:27,675.675 INFO    ] 2026-06-22 22:29:27
[2026-06-22 22:29:27,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:29:27,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:29:27,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:29:28,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:29:28,049.049 INFO    ] time= 22/06/2026 22:29:28
[2026-06-22 22:29:28,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:29:28,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:29:28,127.127 INFO    ] No existing commands found in stream
[2026-06-22 22:29:33,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:29:33,160.160 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-22 22:29:36,913.913 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:29:36,914.914 INFO    ] Checking for system updates...
[2026-06-22 22:29:36,935.935 INFO    ] 200
[2026-06-22 22:29:36,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:29:36,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:29:36,967.967 INFO    ] No update needed
[2026-06-22 22:29:36,969.969 INFO    ] Checking for camera pi updates...
[2026-06-22 22:29:36,999.999 INFO    ] 200
[2026-06-22 22:29:37,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:29:37,043.043 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:29:37,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:29:37,108.108 INFO    ] No camera update needed
[2026-06-22 22:29:37,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:29:37,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:29:37,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:29:37,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:29:39,164.164 INFO    ] ================================================
[2026-06-22 22:29:39,179.179 INFO    ] Launching Daemon at Mon Jun 22 22:29:39 IST 2026
[2026-06-22 22:29:39,189.189 INFO    ] ================================================
[2026-06-22 22:29:39,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:29:39
[2026-06-22 22:29:40,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:29:40,563.563 INFO    ] Initializing speech engine...
[2026-06-22 22:29:40,573.573 INFO    ] 2026-06-22 22:29:40
[2026-06-22 22:29:40,832.832 INFO    ] 2026-06-22 22:29:40
[2026-06-22 22:29:40,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:29:41,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:29:41,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:29:41,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:29:41,238.238 INFO    ] time= 22/06/2026 22:29:41
[2026-06-22 22:29:41,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:29:41,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:29:41,322.322 INFO    ] No existing commands found in stream
[2026-06-22 22:29:46,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:29:46,355.355 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-22 22:29:52,303.303 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:29:52,306.306 INFO    ] Checking for system updates...
[2026-06-22 22:29:52,343.343 INFO    ] 200
[2026-06-22 22:29:52,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:29:52,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:29:52,403.403 INFO    ] No update needed
[2026-06-22 22:29:52,406.406 INFO    ] Checking for camera pi updates...
[2026-06-22 22:29:52,442.442 INFO    ] 200
[2026-06-22 22:29:52,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:29:52,487.487 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:29:52,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:29:52,574.574 INFO    ] No camera update needed
[2026-06-22 22:29:52,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:29:52,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:29:52,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:29:52,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:29:54,631.631 INFO    ] ================================================
[2026-06-22 22:29:54,646.646 INFO    ] Launching Daemon at Mon Jun 22 22:29:54 IST 2026
[2026-06-22 22:29:54,657.657 INFO    ] ================================================
[2026-06-22 22:29:55,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:29:55
[2026-06-22 22:29:55,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:29:55,979.979 INFO    ] Initializing speech engine...
[2026-06-22 22:29:56,002.002 INFO    ] 2026-06-22 22:29:55
[2026-06-22 22:29:56,269.269 INFO    ] 2026-06-22 22:29:56
[2026-06-22 22:29:56,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:29:56,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:29:56,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:29:56,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:29:56,874.874 INFO    ] time= 22/06/2026 22:29:56
[2026-06-22 22:29:56,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:29:56,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:29:57,039.039 INFO    ] No existing commands found in stream
[2026-06-22 22:30:02,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:30:02,058.058 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-22 22:30:07,213.213 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:30:07,216.216 INFO    ] Checking for system updates...
[2026-06-22 22:30:07,254.254 INFO    ] 200
[2026-06-22 22:30:07,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:30:07,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:30:07,314.314 INFO    ] No update needed
[2026-06-22 22:30:07,317.317 INFO    ] Checking for camera pi updates...
[2026-06-22 22:30:07,350.350 INFO    ] 200
[2026-06-22 22:30:07,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:30:07,393.393 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:30:07,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:30:07,499.499 INFO    ] No camera update needed
[2026-06-22 22:30:07,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:30:07,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:30:07,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:30:07,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:30:09,556.556 INFO    ] ================================================
[2026-06-22 22:30:09,571.571 INFO    ] Launching Daemon at Mon Jun 22 22:30:09 IST 2026
[2026-06-22 22:30:09,581.581 INFO    ] ================================================
[2026-06-22 22:30:10,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:30:10
[2026-06-22 22:30:10,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:30:10,920.920 INFO    ] Initializing speech engine...
[2026-06-22 22:30:10,930.930 INFO    ] 2026-06-22 22:30:10
[2026-06-22 22:30:11,183.183 INFO    ] 2026-06-22 22:30:11
[2026-06-22 22:30:11,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:30:11,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:30:11,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:30:11,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:30:11,667.667 INFO    ] time= 22/06/2026 22:30:11
[2026-06-22 22:30:11,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:30:11,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:30:11,871.871 INFO    ] No existing commands found in stream
[2026-06-22 22:30:16,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:30:16,898.898 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-22 22:30:22,528.528 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:30:22,530.530 INFO    ] Checking for system updates...
[2026-06-22 22:30:22,567.567 INFO    ] 200
[2026-06-22 22:30:22,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:30:22,628.628 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:30:22,630.630 INFO    ] No update needed
[2026-06-22 22:30:22,633.633 INFO    ] Checking for camera pi updates...
[2026-06-22 22:30:22,667.667 INFO    ] 200
[2026-06-22 22:30:22,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:30:22,711.711 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:30:22,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:30:22,891.891 INFO    ] No camera update needed
[2026-06-22 22:30:22,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:30:22,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:30:22,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:30:22,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:30:24,952.952 INFO    ] ================================================
[2026-06-22 22:30:24,968.968 INFO    ] Launching Daemon at Mon Jun 22 22:30:24 IST 2026
[2026-06-22 22:30:24,979.979 INFO    ] ================================================
[2026-06-22 22:30:25,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:30:25
[2026-06-22 22:30:26,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:30:26,309.309 INFO    ] Initializing speech engine...
[2026-06-22 22:30:26,318.318 INFO    ] 2026-06-22 22:30:26
[2026-06-22 22:30:26,565.565 INFO    ] 2026-06-22 22:30:26
[2026-06-22 22:30:26,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:30:26,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:30:26,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:30:26,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:30:27,064.064 INFO    ] time= 22/06/2026 22:30:27
[2026-06-22 22:30:27,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:30:27,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:30:27,273.273 INFO    ] No existing commands found in stream
[2026-06-22 22:30:32,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:30:32,289.289 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-22 22:30:36,078.078 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:30:36,081.081 INFO    ] Checking for system updates...
[2026-06-22 22:30:36,113.113 INFO    ] 200
[2026-06-22 22:30:36,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:30:36,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:30:36,146.146 INFO    ] No update needed
[2026-06-22 22:30:36,148.148 INFO    ] Checking for camera pi updates...
[2026-06-22 22:30:36,167.167 INFO    ] 200
[2026-06-22 22:30:36,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:30:36,191.191 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:30:36,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:30:36,250.250 INFO    ] No camera update needed
[2026-06-22 22:30:36,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:30:36,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:30:36,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:30:36,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:30:38,304.304 INFO    ] ================================================
[2026-06-22 22:30:38,320.320 INFO    ] Launching Daemon at Mon Jun 22 22:30:38 IST 2026
[2026-06-22 22:30:38,331.331 INFO    ] ================================================
[2026-06-22 22:30:38,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:30:38
[2026-06-22 22:30:39,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:30:39,740.740 INFO    ] Initializing speech engine...
[2026-06-22 22:30:39,746.746 INFO    ] 2026-06-22 22:30:39
[2026-06-22 22:30:40,037.037 INFO    ] 2026-06-22 22:30:40
[2026-06-22 22:30:40,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:30:40,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:30:40,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:30:40,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:30:40,442.442 INFO    ] time= 22/06/2026 22:30:40
[2026-06-22 22:30:40,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:30:40,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:30:40,529.529 INFO    ] No existing commands found in stream
[2026-06-22 22:30:45,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:30:45,543.543 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-22 22:30:46,202.202 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:30:46,205.205 INFO    ] Checking for system updates...
[2026-06-22 22:30:46,240.240 INFO    ] 200
[2026-06-22 22:30:46,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:30:46,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:30:46,297.297 INFO    ] No update needed
[2026-06-22 22:30:46,299.299 INFO    ] Checking for camera pi updates...
[2026-06-22 22:30:46,332.332 INFO    ] 200
[2026-06-22 22:30:46,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:30:46,377.377 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:30:46,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:30:46,458.458 INFO    ] No camera update needed
[2026-06-22 22:30:46,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:30:46,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:30:46,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:30:46,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:30:48,512.512 INFO    ] ================================================
[2026-06-22 22:30:48,527.527 INFO    ] Launching Daemon at Mon Jun 22 22:30:48 IST 2026
[2026-06-22 22:30:48,543.543 INFO    ] ================================================
[2026-06-22 22:30:49,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:30:49
[2026-06-22 22:30:49,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:30:49,967.967 INFO    ] Initializing speech engine...
[2026-06-22 22:30:49,981.981 INFO    ] 2026-06-22 22:30:49
[2026-06-22 22:30:50,261.261 INFO    ] 2026-06-22 22:30:50
[2026-06-22 22:30:50,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:30:53,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:30:53,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:30:54,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:30:54,060.060 INFO    ] time= 22/06/2026 22:30:54
[2026-06-22 22:30:54,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:30:54,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:30:54,126.126 INFO    ] No existing commands found in stream
[2026-06-22 22:30:59,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:30:59,138.138 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-22 22:31:01,533.533 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:31:01,536.536 INFO    ] Checking for system updates...
[2026-06-22 22:31:01,577.577 INFO    ] 200
[2026-06-22 22:31:01,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:31:01,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:31:01,637.637 INFO    ] No update needed
[2026-06-22 22:31:01,640.640 INFO    ] Checking for camera pi updates...
[2026-06-22 22:31:01,675.675 INFO    ] 200
[2026-06-22 22:31:01,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:31:01,719.719 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:31:01,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:31:01,783.783 INFO    ] No camera update needed
[2026-06-22 22:31:01,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:31:01,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:31:01,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:31:01,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:31:03,846.846 INFO    ] ================================================
[2026-06-22 22:31:03,861.861 INFO    ] Launching Daemon at Mon Jun 22 22:31:03 IST 2026
[2026-06-22 22:31:03,872.872 INFO    ] ================================================
[2026-06-22 22:31:04,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:31:04
[2026-06-22 22:31:05,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:31:05,288.288 INFO    ] Initializing speech engine...
[2026-06-22 22:31:05,297.297 INFO    ] 2026-06-22 22:31:05
[2026-06-22 22:31:05,593.593 INFO    ] 2026-06-22 22:31:05
[2026-06-22 22:31:05,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:31:05,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:31:05,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:31:05,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:31:05,991.991 INFO    ] time= 22/06/2026 22:31:05
[2026-06-22 22:31:06,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:31:06,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:31:06,100.100 INFO    ] No existing commands found in stream
[2026-06-22 22:31:11,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:31:11,139.139 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-22 22:31:12,503.503 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:31:12,505.505 INFO    ] Checking for system updates...
[2026-06-22 22:31:12,542.542 INFO    ] 200
[2026-06-22 22:31:12,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:31:12,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:31:12,601.601 INFO    ] No update needed
[2026-06-22 22:31:12,603.603 INFO    ] Checking for camera pi updates...
[2026-06-22 22:31:12,637.637 INFO    ] 200
[2026-06-22 22:31:12,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:31:12,680.680 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:31:12,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:31:12,732.732 INFO    ] No camera update needed
[2026-06-22 22:31:12,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:31:12,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:31:12,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:31:12,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:31:14,786.786 INFO    ] ================================================
[2026-06-22 22:31:14,802.802 INFO    ] Launching Daemon at Mon Jun 22 22:31:14 IST 2026
[2026-06-22 22:31:14,813.813 INFO    ] ================================================
[2026-06-22 22:31:15,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:31:15
[2026-06-22 22:31:16,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:31:16,423.423 INFO    ] Initializing speech engine...
[2026-06-22 22:31:16,431.431 INFO    ] 2026-06-22 22:31:16
[2026-06-22 22:31:16,705.705 INFO    ] 2026-06-22 22:31:16
[2026-06-22 22:31:16,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:31:16,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:31:16,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:31:17,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:31:17,254.254 INFO    ] time= 22/06/2026 22:31:17
[2026-06-22 22:31:17,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:31:17,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:31:17,407.407 INFO    ] No existing commands found in stream
[2026-06-22 22:31:22,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:31:22,426.426 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-22 22:31:23,993.993 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:31:23,997.997 INFO    ] Checking for system updates...
[2026-06-22 22:31:24,034.034 INFO    ] 200
[2026-06-22 22:31:24,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:31:24,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:31:24,092.092 INFO    ] No update needed
[2026-06-22 22:31:24,094.094 INFO    ] Checking for camera pi updates...
[2026-06-22 22:31:24,129.129 INFO    ] 200
[2026-06-22 22:31:24,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:31:24,173.173 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:31:24,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:31:24,225.225 INFO    ] No camera update needed
[2026-06-22 22:31:24,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:31:24,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:31:24,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:31:24,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:31:26,281.281 INFO    ] ================================================
[2026-06-22 22:31:26,296.296 INFO    ] Launching Daemon at Mon Jun 22 22:31:26 IST 2026
[2026-06-22 22:31:26,307.307 INFO    ] ================================================
[2026-06-22 22:31:26,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:31:26
[2026-06-22 22:31:27,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:31:27,771.771 INFO    ] Initializing speech engine...
[2026-06-22 22:31:27,781.781 INFO    ] 2026-06-22 22:31:27
[2026-06-22 22:31:28,032.032 INFO    ] 2026-06-22 22:31:28
[2026-06-22 22:31:28,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:31:28,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:31:28,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:31:28,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:31:28,512.512 INFO    ] time= 22/06/2026 22:31:28
[2026-06-22 22:31:28,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:31:28,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:31:28,745.745 INFO    ] No existing commands found in stream
[2026-06-22 22:31:33,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:31:33,761.761 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-22 22:31:36,613.613 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:31:36,615.615 INFO    ] Checking for system updates...
[2026-06-22 22:31:36,655.655 INFO    ] 200
[2026-06-22 22:31:36,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:31:36,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:31:36,715.715 INFO    ] No update needed
[2026-06-22 22:31:36,717.717 INFO    ] Checking for camera pi updates...
[2026-06-22 22:31:36,751.751 INFO    ] 200
[2026-06-22 22:31:36,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:31:36,796.796 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:31:36,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:31:36,907.907 INFO    ] No camera update needed
[2026-06-22 22:31:36,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:31:36,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:31:36,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:31:36,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:31:38,966.966 INFO    ] ================================================
[2026-06-22 22:31:38,982.982 INFO    ] Launching Daemon at Mon Jun 22 22:31:38 IST 2026
[2026-06-22 22:31:38,993.993 INFO    ] ================================================
[2026-06-22 22:31:39,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:31:39
[2026-06-22 22:31:40,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:31:40,425.425 INFO    ] Initializing speech engine...
[2026-06-22 22:31:40,432.432 INFO    ] 2026-06-22 22:31:40
[2026-06-22 22:31:40,680.680 INFO    ] 2026-06-22 22:31:40
[2026-06-22 22:31:40,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:31:40,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:31:40,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:31:41,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:31:41,250.250 INFO    ] time= 22/06/2026 22:31:41
[2026-06-22 22:31:41,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:31:41,275.275 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:31:41,412.412 INFO    ] No existing commands found in stream
[2026-06-22 22:31:46,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:31:46,443.443 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-22 22:31:49,293.293 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:31:49,296.296 INFO    ] Checking for system updates...
[2026-06-22 22:31:49,332.332 INFO    ] 200
[2026-06-22 22:31:49,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:31:49,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:31:49,391.391 INFO    ] No update needed
[2026-06-22 22:31:49,393.393 INFO    ] Checking for camera pi updates...
[2026-06-22 22:31:49,427.427 INFO    ] 200
[2026-06-22 22:31:49,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:31:49,471.471 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:31:49,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:31:49,560.560 INFO    ] No camera update needed
[2026-06-22 22:31:49,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:31:49,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:31:49,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:31:49,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:31:51,617.617 INFO    ] ================================================
[2026-06-22 22:31:51,632.632 INFO    ] Launching Daemon at Mon Jun 22 22:31:51 IST 2026
[2026-06-22 22:31:51,643.643 INFO    ] ================================================
[2026-06-22 22:31:52,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:31:52
[2026-06-22 22:31:52,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:31:53,161.161 INFO    ] Initializing speech engine...
[2026-06-22 22:31:53,168.168 INFO    ] 2026-06-22 22:31:53
[2026-06-22 22:31:53,452.452 INFO    ] 2026-06-22 22:31:53
[2026-06-22 22:31:53,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:31:54,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:31:54,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:31:54,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:31:54,351.351 INFO    ] time= 22/06/2026 22:31:54
[2026-06-22 22:31:54,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:31:54,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:31:54,535.535 INFO    ] No existing commands found in stream
[2026-06-22 22:31:59,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:31:59,548.548 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-22 22:32:03,637.637 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:32:03,640.640 INFO    ] Checking for system updates...
[2026-06-22 22:32:03,677.677 INFO    ] 200
[2026-06-22 22:32:03,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:32:03,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:32:03,739.739 INFO    ] No update needed
[2026-06-22 22:32:03,741.741 INFO    ] Checking for camera pi updates...
[2026-06-22 22:32:03,775.775 INFO    ] 200
[2026-06-22 22:32:03,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:32:03,818.818 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:32:03,914.914 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:32:03,916.916 INFO    ] No camera update needed
[2026-06-22 22:32:03,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:32:03,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:32:03,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:32:03,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:32:05,973.973 INFO    ] ================================================
[2026-06-22 22:32:05,988.988 INFO    ] Launching Daemon at Mon Jun 22 22:32:05 IST 2026
[2026-06-22 22:32:06,999.999 INFO    ] ================================================
[2026-06-22 22:32:06,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:32:06
[2026-06-22 22:32:07,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:32:07,515.515 INFO    ] Initializing speech engine...
[2026-06-22 22:32:07,529.529 INFO    ] 2026-06-22 22:32:07
[2026-06-22 22:32:07,810.810 INFO    ] 2026-06-22 22:32:07
[2026-06-22 22:32:07,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:32:08,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:32:08,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:32:08,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:32:08,359.359 INFO    ] time= 22/06/2026 22:32:08
[2026-06-22 22:32:08,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:32:08,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:32:08,500.500 INFO    ] No existing commands found in stream
[2026-06-22 22:32:13,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:32:13,523.523 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-22 22:32:14,980.980 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:32:14,983.983 INFO    ] Checking for system updates...
[2026-06-22 22:32:15,020.020 INFO    ] 200
[2026-06-22 22:32:15,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:32:15,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:32:15,081.081 INFO    ] No update needed
[2026-06-22 22:32:15,083.083 INFO    ] Checking for camera pi updates...
[2026-06-22 22:32:15,118.118 INFO    ] 200
[2026-06-22 22:32:15,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:32:15,170.170 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:32:15,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:32:15,260.260 INFO    ] No camera update needed
[2026-06-22 22:32:15,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:32:15,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:32:15,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:32:15,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:32:17,319.319 INFO    ] ================================================
[2026-06-22 22:32:17,334.334 INFO    ] Launching Daemon at Mon Jun 22 22:32:17 IST 2026
[2026-06-22 22:32:17,344.344 INFO    ] ================================================
[2026-06-22 22:32:17,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:32:17
[2026-06-22 22:32:18,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:32:18,834.834 INFO    ] Initializing speech engine...
[2026-06-22 22:32:18,843.843 INFO    ] 2026-06-22 22:32:18
[2026-06-22 22:32:19,101.101 INFO    ] 2026-06-22 22:32:19
[2026-06-22 22:32:19,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:32:19,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:32:19,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:32:19,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:32:19,588.588 INFO    ] time= 22/06/2026 22:32:19
[2026-06-22 22:32:19,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:32:19,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:32:19,748.748 INFO    ] No existing commands found in stream
[2026-06-22 22:32:24,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:32:24,781.781 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-22 22:32:27,208.208 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:32:27,210.210 INFO    ] Checking for system updates...
[2026-06-22 22:32:27,230.230 INFO    ] 200
[2026-06-22 22:32:27,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:32:27,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:32:27,264.264 INFO    ] No update needed
[2026-06-22 22:32:27,266.266 INFO    ] Checking for camera pi updates...
[2026-06-22 22:32:27,300.300 INFO    ] 200
[2026-06-22 22:32:27,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:32:27,348.348 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:32:27,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:32:27,552.552 INFO    ] No camera update needed
[2026-06-22 22:32:27,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:32:27,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:32:27,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:32:27,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:32:29,609.609 INFO    ] ================================================
[2026-06-22 22:32:29,624.624 INFO    ] Launching Daemon at Mon Jun 22 22:32:29 IST 2026
[2026-06-22 22:32:29,635.635 INFO    ] ================================================
[2026-06-22 22:32:30,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:32:30
[2026-06-22 22:32:30,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:32:31,154.154 INFO    ] Initializing speech engine...
[2026-06-22 22:32:31,166.166 INFO    ] 2026-06-22 22:32:31
[2026-06-22 22:32:31,476.476 INFO    ] 2026-06-22 22:32:31
[2026-06-22 22:32:31,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:32:31,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:32:31,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:32:31,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:32:31,938.938 INFO    ] time= 22/06/2026 22:32:31
[2026-06-22 22:32:31,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:32:32,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:32:32,180.180 INFO    ] No existing commands found in stream
[2026-06-22 22:32:37,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:32:37,211.211 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-22 22:32:39,309.309 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:32:39,312.312 INFO    ] Checking for system updates...
[2026-06-22 22:32:39,349.349 INFO    ] 200
[2026-06-22 22:32:39,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:32:39,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:32:39,408.408 INFO    ] No update needed
[2026-06-22 22:32:39,410.410 INFO    ] Checking for camera pi updates...
[2026-06-22 22:32:39,445.445 INFO    ] 200
[2026-06-22 22:32:39,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:32:39,488.488 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:32:39,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:32:39,577.577 INFO    ] No camera update needed
[2026-06-22 22:32:39,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:32:39,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:32:39,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:32:39,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:32:41,633.633 INFO    ] ================================================
[2026-06-22 22:32:41,648.648 INFO    ] Launching Daemon at Mon Jun 22 22:32:41 IST 2026
[2026-06-22 22:32:41,659.659 INFO    ] ================================================
[2026-06-22 22:32:42,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:32:42
[2026-06-22 22:32:42,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:32:42,977.977 INFO    ] Initializing speech engine...
[2026-06-22 22:32:42,985.985 INFO    ] 2026-06-22 22:32:42
[2026-06-22 22:32:43,261.261 INFO    ] 2026-06-22 22:32:43
[2026-06-22 22:32:43,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:32:43,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:32:43,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:32:43,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:32:43,744.744 INFO    ] time= 22/06/2026 22:32:43
[2026-06-22 22:32:43,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:32:43,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:32:43,935.935 INFO    ] No existing commands found in stream
[2026-06-22 22:32:48,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:32:48,968.968 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-22 22:32:53,687.687 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:32:53,689.689 INFO    ] Checking for system updates...
[2026-06-22 22:32:53,726.726 INFO    ] 200
[2026-06-22 22:32:53,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:32:53,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:32:53,790.790 INFO    ] No update needed
[2026-06-22 22:32:53,793.793 INFO    ] Checking for camera pi updates...
[2026-06-22 22:32:53,846.846 INFO    ] 200
[2026-06-22 22:32:53,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:32:53,922.922 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:32:54,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:32:54,009.009 INFO    ] No camera update needed
[2026-06-22 22:32:54,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:32:54,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:32:54,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:32:54,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:32:56,065.065 INFO    ] ================================================
[2026-06-22 22:32:56,081.081 INFO    ] Launching Daemon at Mon Jun 22 22:32:56 IST 2026
[2026-06-22 22:32:56,091.091 INFO    ] ================================================
[2026-06-22 22:32:56,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:32:56
[2026-06-22 22:32:57,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:32:57,710.710 INFO    ] Initializing speech engine...
[2026-06-22 22:32:57,719.719 INFO    ] 2026-06-22 22:32:57
[2026-06-22 22:32:57,991.991 INFO    ] 2026-06-22 22:32:57
[2026-06-22 22:32:58,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:32:58,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:32:58,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:32:58,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:32:58,544.544 INFO    ] time= 22/06/2026 22:32:58
[2026-06-22 22:32:58,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:32:58,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:32:58,713.713 INFO    ] No existing commands found in stream
[2026-06-22 22:33:03,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:33:03,743.743 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-22 22:33:05,913.913 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:33:05,916.916 INFO    ] Checking for system updates...
[2026-06-22 22:33:05,957.957 INFO    ] 200
[2026-06-22 22:33:05,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:33:06,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:33:06,020.020 INFO    ] No update needed
[2026-06-22 22:33:06,022.022 INFO    ] Checking for camera pi updates...
[2026-06-22 22:33:06,056.056 INFO    ] 200
[2026-06-22 22:33:06,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:33:06,104.104 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:33:06,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:33:06,189.189 INFO    ] No camera update needed
[2026-06-22 22:33:06,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:33:06,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:33:06,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:33:06,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:33:08,245.245 INFO    ] ================================================
[2026-06-22 22:33:08,260.260 INFO    ] Launching Daemon at Mon Jun 22 22:33:08 IST 2026
[2026-06-22 22:33:08,270.270 INFO    ] ================================================
[2026-06-22 22:33:08,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:33:08
[2026-06-22 22:33:09,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:33:09,889.889 INFO    ] Initializing speech engine...
[2026-06-22 22:33:09,903.903 INFO    ] 2026-06-22 22:33:09
[2026-06-22 22:33:10,197.197 INFO    ] 2026-06-22 22:33:10
[2026-06-22 22:33:10,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:33:10,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:33:10,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:33:10,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:33:10,730.730 INFO    ] time= 22/06/2026 22:33:10
[2026-06-22 22:33:10,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:33:10,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:33:10,878.878 INFO    ] No existing commands found in stream
[2026-06-22 22:33:15,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:33:15,903.903 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-22 22:33:17,565.565 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:33:17,568.568 INFO    ] Checking for system updates...
[2026-06-22 22:33:17,606.606 INFO    ] 200
[2026-06-22 22:33:17,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:33:17,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:33:17,666.666 INFO    ] No update needed
[2026-06-22 22:33:17,669.669 INFO    ] Checking for camera pi updates...
[2026-06-22 22:33:17,708.708 INFO    ] 200
[2026-06-22 22:33:17,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:33:17,753.753 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:33:17,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:33:17,825.825 INFO    ] No camera update needed
[2026-06-22 22:33:17,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:33:17,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:33:17,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:33:17,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:33:19,882.882 INFO    ] ================================================
[2026-06-22 22:33:19,898.898 INFO    ] Launching Daemon at Mon Jun 22 22:33:19 IST 2026
[2026-06-22 22:33:19,909.909 INFO    ] ================================================
[2026-06-22 22:33:20,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:33:20
[2026-06-22 22:33:20,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:33:21,234.234 INFO    ] Initializing speech engine...
[2026-06-22 22:33:21,243.243 INFO    ] 2026-06-22 22:33:21
[2026-06-22 22:33:21,537.537 INFO    ] 2026-06-22 22:33:21
[2026-06-22 22:33:21,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:33:21,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:33:21,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:33:21,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:33:21,948.948 INFO    ] time= 22/06/2026 22:33:21
[2026-06-22 22:33:21,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:33:21,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:33:22,031.031 INFO    ] No existing commands found in stream
[2026-06-22 22:33:27,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:33:27,052.052 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-22 22:33:27,968.968 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:33:27,971.971 INFO    ] Checking for system updates...
[2026-06-22 22:33:28,007.007 INFO    ] 200
[2026-06-22 22:33:28,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:33:28,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:33:28,064.064 INFO    ] No update needed
[2026-06-22 22:33:28,067.067 INFO    ] Checking for camera pi updates...
[2026-06-22 22:33:28,101.101 INFO    ] 200
[2026-06-22 22:33:28,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:33:28,146.146 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:33:28,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:33:28,234.234 INFO    ] No camera update needed
[2026-06-22 22:33:28,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:33:28,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:33:28,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:33:28,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:33:30,290.290 INFO    ] ================================================
[2026-06-22 22:33:30,305.305 INFO    ] Launching Daemon at Mon Jun 22 22:33:30 IST 2026
[2026-06-22 22:33:30,315.315 INFO    ] ================================================
[2026-06-22 22:33:30,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:33:30
[2026-06-22 22:33:31,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:33:31,626.626 INFO    ] Initializing speech engine...
[2026-06-22 22:33:31,649.649 INFO    ] 2026-06-22 22:33:31
[2026-06-22 22:33:31,919.919 INFO    ] 2026-06-22 22:33:31
[2026-06-22 22:33:31,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:33:32,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:33:32,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:33:32,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:33:32,551.551 INFO    ] time= 22/06/2026 22:33:32
[2026-06-22 22:33:32,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:33:32,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:33:32,686.686 INFO    ] No existing commands found in stream
[2026-06-22 22:33:37,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:33:37,719.719 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-22 22:33:41,423.423 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:33:41,426.426 INFO    ] Checking for system updates...
[2026-06-22 22:33:41,463.463 INFO    ] 200
[2026-06-22 22:33:41,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:33:41,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:33:41,521.521 INFO    ] No update needed
[2026-06-22 22:33:41,523.523 INFO    ] Checking for camera pi updates...
[2026-06-22 22:33:41,560.560 INFO    ] 200
[2026-06-22 22:33:41,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:33:41,603.603 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:33:41,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:33:41,699.699 INFO    ] No camera update needed
[2026-06-22 22:33:41,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:33:41,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:33:41,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:33:41,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:33:43,763.763 INFO    ] ================================================
[2026-06-22 22:33:43,783.783 INFO    ] Launching Daemon at Mon Jun 22 22:33:43 IST 2026
[2026-06-22 22:33:43,794.794 INFO    ] ================================================
[2026-06-22 22:33:44,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:33:44
[2026-06-22 22:33:45,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:33:45,442.442 INFO    ] Initializing speech engine...
[2026-06-22 22:33:45,457.457 INFO    ] 2026-06-22 22:33:45
[2026-06-22 22:33:45,768.768 INFO    ] 2026-06-22 22:33:45
[2026-06-22 22:33:45,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:33:46,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:33:46,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:33:46,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:33:46,282.282 INFO    ] time= 22/06/2026 22:33:46
[2026-06-22 22:33:46,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:33:46,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:33:46,438.438 INFO    ] No existing commands found in stream
[2026-06-22 22:33:51,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:33:51,455.455 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-22 22:33:52,128.128 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:33:52,130.130 INFO    ] Checking for system updates...
[2026-06-22 22:33:52,151.151 INFO    ] 200
[2026-06-22 22:33:52,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:33:52,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:33:52,186.186 INFO    ] No update needed
[2026-06-22 22:33:52,187.187 INFO    ] Checking for camera pi updates...
[2026-06-22 22:33:52,207.207 INFO    ] 200
[2026-06-22 22:33:52,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:33:52,239.239 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:33:52,319.319 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:33:52,321.321 INFO    ] No camera update needed
[2026-06-22 22:33:52,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:33:52,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:33:52,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:33:52,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:33:54,382.382 INFO    ] ================================================
[2026-06-22 22:33:54,398.398 INFO    ] Launching Daemon at Mon Jun 22 22:33:54 IST 2026
[2026-06-22 22:33:54,409.409 INFO    ] ================================================
[2026-06-22 22:33:55,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:33:54
[2026-06-22 22:33:55,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:33:55,760.760 INFO    ] Initializing speech engine...
[2026-06-22 22:33:55,769.769 INFO    ] 2026-06-22 22:33:55
[2026-06-22 22:33:56,069.069 INFO    ] 2026-06-22 22:33:56
[2026-06-22 22:33:56,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:33:56,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:33:56,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:33:56,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:33:56,626.626 INFO    ] time= 22/06/2026 22:33:56
[2026-06-22 22:33:56,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:33:56,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:33:56,788.788 INFO    ] No existing commands found in stream
[2026-06-22 22:34:01,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:34:01,802.802 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-22 22:34:05,482.482 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:34:05,484.484 INFO    ] Checking for system updates...
[2026-06-22 22:34:05,521.521 INFO    ] 200
[2026-06-22 22:34:05,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:34:05,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:34:05,578.578 INFO    ] No update needed
[2026-06-22 22:34:05,580.580 INFO    ] Checking for camera pi updates...
[2026-06-22 22:34:05,618.618 INFO    ] 200
[2026-06-22 22:34:05,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:34:05,660.660 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:34:05,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:34:05,748.748 INFO    ] No camera update needed
[2026-06-22 22:34:05,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:34:05,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:34:05,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:34:05,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:34:07,808.808 INFO    ] ================================================
[2026-06-22 22:34:07,824.824 INFO    ] Launching Daemon at Mon Jun 22 22:34:07 IST 2026
[2026-06-22 22:34:07,835.835 INFO    ] ================================================
[2026-06-22 22:34:08,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:34:08
[2026-06-22 22:34:08,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:34:09,284.284 INFO    ] Initializing speech engine...
[2026-06-22 22:34:09,296.296 INFO    ] 2026-06-22 22:34:09
[2026-06-22 22:34:09,561.561 INFO    ] 2026-06-22 22:34:09
[2026-06-22 22:34:09,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:34:09,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:34:09,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:34:09,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:34:10,017.017 INFO    ] time= 22/06/2026 22:34:09
[2026-06-22 22:34:10,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:34:10,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:34:10,209.209 INFO    ] No existing commands found in stream
[2026-06-22 22:34:15,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:34:15,222.222 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-22 22:34:16,313.313 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:34:16,315.315 INFO    ] Checking for system updates...
[2026-06-22 22:34:16,355.355 INFO    ] 200
[2026-06-22 22:34:16,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:34:16,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:34:16,412.412 INFO    ] No update needed
[2026-06-22 22:34:16,414.414 INFO    ] Checking for camera pi updates...
[2026-06-22 22:34:16,449.449 INFO    ] 200
[2026-06-22 22:34:16,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:34:16,492.492 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:34:16,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:34:16,562.562 INFO    ] No camera update needed
[2026-06-22 22:34:16,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:34:16,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:34:16,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:34:16,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:34:18,619.619 INFO    ] ================================================
[2026-06-22 22:34:18,636.636 INFO    ] Launching Daemon at Mon Jun 22 22:34:18 IST 2026
[2026-06-22 22:34:18,646.646 INFO    ] ================================================
[2026-06-22 22:34:19,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:34:19
[2026-06-22 22:34:19,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:34:19,973.973 INFO    ] Initializing speech engine...
[2026-06-22 22:34:19,980.980 INFO    ] 2026-06-22 22:34:19
[2026-06-22 22:34:20,273.273 INFO    ] 2026-06-22 22:34:20
[2026-06-22 22:34:20,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:34:20,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:34:20,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:34:20,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:34:20,788.788 INFO    ] time= 22/06/2026 22:34:20
[2026-06-22 22:34:20,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:34:20,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:34:21,044.044 INFO    ] No existing commands found in stream
[2026-06-22 22:34:26,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:34:26,064.064 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-22 22:34:28,981.981 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:34:28,982.982 INFO    ] Checking for system updates...
[2026-06-22 22:34:29,003.003 INFO    ] 200
[2026-06-22 22:34:29,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:34:29,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:34:29,038.038 INFO    ] No update needed
[2026-06-22 22:34:29,039.039 INFO    ] Checking for camera pi updates...
[2026-06-22 22:34:29,067.067 INFO    ] 200
[2026-06-22 22:34:29,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:34:29,124.124 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:34:29,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:34:29,305.305 INFO    ] No camera update needed
[2026-06-22 22:34:29,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:34:29,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:34:29,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:34:29,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:34:31,359.359 INFO    ] ================================================
[2026-06-22 22:34:31,374.374 INFO    ] Launching Daemon at Mon Jun 22 22:34:31 IST 2026
[2026-06-22 22:34:31,385.385 INFO    ] ================================================
[2026-06-22 22:34:31,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:34:31
[2026-06-22 22:34:32,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:34:32,862.862 INFO    ] Initializing speech engine...
[2026-06-22 22:34:32,882.882 INFO    ] 2026-06-22 22:34:32
[2026-06-22 22:34:33,162.162 INFO    ] 2026-06-22 22:34:33
[2026-06-22 22:34:33,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:34:33,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:34:33,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:34:33,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:34:33,732.732 INFO    ] time= 22/06/2026 22:34:33
[2026-06-22 22:34:33,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:34:33,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:34:33,889.889 INFO    ] No existing commands found in stream
[2026-06-22 22:34:38,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:34:38,915.915 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-22 22:34:41,572.572 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:34:41,575.575 INFO    ] Checking for system updates...
[2026-06-22 22:34:41,611.611 INFO    ] 200
[2026-06-22 22:34:41,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:34:41,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:34:41,672.672 INFO    ] No update needed
[2026-06-22 22:34:41,674.674 INFO    ] Checking for camera pi updates...
[2026-06-22 22:34:41,709.709 INFO    ] 200
[2026-06-22 22:34:41,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:34:41,760.760 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:34:41,860.860 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:34:41,863.863 INFO    ] No camera update needed
[2026-06-22 22:34:41,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:34:41,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:34:41,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:34:41,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:34:43,917.917 INFO    ] ================================================
[2026-06-22 22:34:43,935.935 INFO    ] Launching Daemon at Mon Jun 22 22:34:43 IST 2026
[2026-06-22 22:34:43,946.946 INFO    ] ================================================
[2026-06-22 22:34:44,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:34:44
[2026-06-22 22:34:45,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:34:45,547.547 INFO    ] Initializing speech engine...
[2026-06-22 22:34:45,556.556 INFO    ] 2026-06-22 22:34:45
[2026-06-22 22:34:45,806.806 INFO    ] 2026-06-22 22:34:45
[2026-06-22 22:34:45,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:34:46,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:34:46,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:34:46,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:34:46,182.182 INFO    ] time= 22/06/2026 22:34:46
[2026-06-22 22:34:46,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:34:46,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:34:46,366.366 INFO    ] No existing commands found in stream
[2026-06-22 22:34:51,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:34:51,394.394 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-22 22:34:53,999.999 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:34:54,001.001 INFO    ] Checking for system updates...
[2026-06-22 22:34:54,037.037 INFO    ] 200
[2026-06-22 22:34:54,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:34:54,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:34:54,096.096 INFO    ] No update needed
[2026-06-22 22:34:54,099.099 INFO    ] Checking for camera pi updates...
[2026-06-22 22:34:54,138.138 INFO    ] 200
[2026-06-22 22:34:54,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:34:54,182.182 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:34:54,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:34:54,271.271 INFO    ] No camera update needed
[2026-06-22 22:34:54,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:34:54,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:34:54,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:34:54,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:34:56,333.333 INFO    ] ================================================
[2026-06-22 22:34:56,348.348 INFO    ] Launching Daemon at Mon Jun 22 22:34:56 IST 2026
[2026-06-22 22:34:56,359.359 INFO    ] ================================================
[2026-06-22 22:34:56,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:34:56
[2026-06-22 22:34:57,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:34:57,780.780 INFO    ] Initializing speech engine...
[2026-06-22 22:34:57,789.789 INFO    ] 2026-06-22 22:34:57
[2026-06-22 22:34:58,040.040 INFO    ] 2026-06-22 22:34:58
[2026-06-22 22:34:58,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:34:58,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:34:58,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:34:58,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:34:58,501.501 INFO    ] time= 22/06/2026 22:34:58
[2026-06-22 22:34:58,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:34:58,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:34:58,749.749 INFO    ] No existing commands found in stream
[2026-06-22 22:35:03,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:35:03,782.782 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-22 22:35:05,525.525 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:35:05,528.528 INFO    ] Checking for system updates...
[2026-06-22 22:35:05,573.573 INFO    ] 200
[2026-06-22 22:35:05,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:35:05,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:35:05,633.633 INFO    ] No update needed
[2026-06-22 22:35:05,636.636 INFO    ] Checking for camera pi updates...
[2026-06-22 22:35:05,671.671 INFO    ] 200
[2026-06-22 22:35:05,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:35:05,722.722 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:35:05,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:35:05,808.808 INFO    ] No camera update needed
[2026-06-22 22:35:05,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:35:05,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:35:05,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:35:05,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:35:07,867.867 INFO    ] ================================================
[2026-06-22 22:35:07,883.883 INFO    ] Launching Daemon at Mon Jun 22 22:35:07 IST 2026
[2026-06-22 22:35:07,894.894 INFO    ] ================================================
[2026-06-22 22:35:08,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:35:08
[2026-06-22 22:35:09,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:35:09,398.398 INFO    ] Initializing speech engine...
[2026-06-22 22:35:09,406.406 INFO    ] 2026-06-22 22:35:09
[2026-06-22 22:35:09,666.666 INFO    ] 2026-06-22 22:35:09
[2026-06-22 22:35:09,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:35:09,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:35:09,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:35:10,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:35:10,124.124 INFO    ] time= 22/06/2026 22:35:10
[2026-06-22 22:35:10,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:35:10,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:35:10,355.355 INFO    ] No existing commands found in stream
[2026-06-22 22:35:15,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:35:15,380.380 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-22 22:35:17,958.958 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:35:17,960.960 INFO    ] Checking for system updates...
[2026-06-22 22:35:17,999.999 INFO    ] 200
[2026-06-22 22:35:18,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:35:18,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:35:18,056.056 INFO    ] No update needed
[2026-06-22 22:35:18,059.059 INFO    ] Checking for camera pi updates...
[2026-06-22 22:35:18,092.092 INFO    ] 200
[2026-06-22 22:35:18,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:35:18,141.141 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:35:18,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:35:18,202.202 INFO    ] No camera update needed
[2026-06-22 22:35:18,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:35:18,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:35:18,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:35:18,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:35:20,261.261 INFO    ] ================================================
[2026-06-22 22:35:20,276.276 INFO    ] Launching Daemon at Mon Jun 22 22:35:20 IST 2026
[2026-06-22 22:35:20,287.287 INFO    ] ================================================
[2026-06-22 22:35:20,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:35:20
[2026-06-22 22:35:21,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:35:21,731.731 INFO    ] Initializing speech engine...
[2026-06-22 22:35:21,740.740 INFO    ] 2026-06-22 22:35:21
[2026-06-22 22:35:22,038.038 INFO    ] 2026-06-22 22:35:22
[2026-06-22 22:35:22,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:35:22,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:35:22,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:35:22,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:35:22,461.461 INFO    ] time= 22/06/2026 22:35:22
[2026-06-22 22:35:22,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:35:22,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:35:22,569.569 INFO    ] No existing commands found in stream
[2026-06-22 22:35:27,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:35:27,602.602 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-22 22:35:32,033.033 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:35:32,036.036 INFO    ] Checking for system updates...
[2026-06-22 22:35:32,076.076 INFO    ] 200
[2026-06-22 22:35:32,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:35:32,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:35:32,144.144 INFO    ] No update needed
[2026-06-22 22:35:32,147.147 INFO    ] Checking for camera pi updates...
[2026-06-22 22:35:32,189.189 INFO    ] 200
[2026-06-22 22:35:32,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:35:32,235.235 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:35:32,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:35:32,320.320 INFO    ] No camera update needed
[2026-06-22 22:35:32,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:35:32,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:35:32,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:35:32,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:35:34,379.379 INFO    ] ================================================
[2026-06-22 22:35:34,395.395 INFO    ] Launching Daemon at Mon Jun 22 22:35:34 IST 2026
[2026-06-22 22:35:34,408.408 INFO    ] ================================================
[2026-06-22 22:35:34,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:35:34
[2026-06-22 22:35:35,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:35:35,820.820 INFO    ] Initializing speech engine...
[2026-06-22 22:35:35,830.830 INFO    ] 2026-06-22 22:35:35
[2026-06-22 22:35:36,128.128 INFO    ] 2026-06-22 22:35:36
[2026-06-22 22:35:36,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:35:36,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:35:36,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:35:36,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:35:36,769.769 INFO    ] time= 22/06/2026 22:35:36
[2026-06-22 22:35:36,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:35:36,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:35:36,917.917 INFO    ] No existing commands found in stream
[2026-06-22 22:35:41,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:35:41,956.956 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-22 22:35:44,150.150 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:35:44,152.152 INFO    ] Checking for system updates...
[2026-06-22 22:35:44,174.174 INFO    ] 200
[2026-06-22 22:35:44,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:35:44,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:35:44,211.211 INFO    ] No update needed
[2026-06-22 22:35:44,215.215 INFO    ] Checking for camera pi updates...
[2026-06-22 22:35:44,250.250 INFO    ] 200
[2026-06-22 22:35:44,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:35:44,295.295 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:35:44,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:35:44,380.380 INFO    ] No camera update needed
[2026-06-22 22:35:44,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:35:44,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:35:44,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:35:44,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:35:46,438.438 INFO    ] ================================================
[2026-06-22 22:35:46,454.454 INFO    ] Launching Daemon at Mon Jun 22 22:35:46 IST 2026
[2026-06-22 22:35:46,465.465 INFO    ] ================================================
[2026-06-22 22:35:47,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:35:47
[2026-06-22 22:35:47,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:35:47,925.925 INFO    ] Initializing speech engine...
[2026-06-22 22:35:47,934.934 INFO    ] 2026-06-22 22:35:47
[2026-06-22 22:35:48,193.193 INFO    ] 2026-06-22 22:35:48
[2026-06-22 22:35:48,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:35:48,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:35:48,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:35:48,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:35:48,671.671 INFO    ] time= 22/06/2026 22:35:48
[2026-06-22 22:35:48,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:35:48,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:35:48,872.872 INFO    ] No existing commands found in stream
[2026-06-22 22:35:53,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:35:53,899.899 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-22 22:35:54,747.747 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:35:54,750.750 INFO    ] Checking for system updates...
[2026-06-22 22:35:54,787.787 INFO    ] 200
[2026-06-22 22:35:54,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 22:35:54,792.792 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-22 22:35:54,794.794 INFO    ] Checking for camera pi updates...
[2026-06-22 22:35:54,831.831 INFO    ] 200
[2026-06-22 22:35:54,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 22:35:54,837.837 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-22 22:35:54,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:35:54,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:35:54,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:35:54,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:35:56,894.894 INFO    ] ================================================
[2026-06-22 22:35:56,909.909 INFO    ] Launching Daemon at Mon Jun 22 22:35:56 IST 2026
[2026-06-22 22:35:56,920.920 INFO    ] ================================================
[2026-06-22 22:35:57,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:35:57
[2026-06-22 22:35:58,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:35:58,269.269 INFO    ] Initializing speech engine...
[2026-06-22 22:35:58,275.275 INFO    ] 2026-06-22 22:35:58
[2026-06-22 22:35:58,580.580 INFO    ] 2026-06-22 22:35:58
[2026-06-22 22:35:58,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:35:59,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:35:59,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:35:59,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:35:59,671.671 INFO    ] time= 22/06/2026 22:35:59
[2026-06-22 22:35:59,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:35:59,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:35:59,856.856 INFO    ] No existing commands found in stream
[2026-06-22 22:36:04,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:36:04,884.884 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-22 22:36:06,893.893 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:36:06,897.897 INFO    ] Checking for system updates...
[2026-06-22 22:36:06,934.934 INFO    ] 200
[2026-06-22 22:36:06,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:36:06,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:36:06,998.998 INFO    ] No update needed
[2026-06-22 22:36:07,001.001 INFO    ] Checking for camera pi updates...
[2026-06-22 22:36:07,035.035 INFO    ] 200
[2026-06-22 22:36:07,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:36:07,081.081 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:36:07,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:36:07,182.182 INFO    ] No camera update needed
[2026-06-22 22:36:07,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:36:07,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:36:07,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:36:07,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:36:09,238.238 INFO    ] ================================================
[2026-06-22 22:36:09,253.253 INFO    ] Launching Daemon at Mon Jun 22 22:36:09 IST 2026
[2026-06-22 22:36:09,263.263 INFO    ] ================================================
[2026-06-22 22:36:09,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:36:09
[2026-06-22 22:36:10,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:36:10,725.725 INFO    ] Initializing speech engine...
[2026-06-22 22:36:10,735.735 INFO    ] 2026-06-22 22:36:10
[2026-06-22 22:36:10,983.983 INFO    ] 2026-06-22 22:36:10
[2026-06-22 22:36:11,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:36:11,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:36:11,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:36:11,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:36:11,455.455 INFO    ] time= 22/06/2026 22:36:11
[2026-06-22 22:36:11,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:36:11,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:36:11,680.680 INFO    ] No existing commands found in stream
[2026-06-22 22:36:16,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:36:16,710.710 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-22 22:36:20,569.569 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:36:20,572.572 INFO    ] Checking for system updates...
[2026-06-22 22:36:20,616.616 INFO    ] 200
[2026-06-22 22:36:20,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:36:20,677.677 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:36:20,679.679 INFO    ] No update needed
[2026-06-22 22:36:20,682.682 INFO    ] Checking for camera pi updates...
[2026-06-22 22:36:20,718.718 INFO    ] 200
[2026-06-22 22:36:20,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:36:20,769.769 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:36:20,850.850 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:36:20,852.852 INFO    ] No camera update needed
[2026-06-22 22:36:20,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:36:20,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:36:20,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:36:20,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:36:22,912.912 INFO    ] ================================================
[2026-06-22 22:36:22,928.928 INFO    ] Launching Daemon at Mon Jun 22 22:36:22 IST 2026
[2026-06-22 22:36:22,946.946 INFO    ] ================================================
[2026-06-22 22:36:23,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:36:23
[2026-06-22 22:36:24,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:36:24,363.363 INFO    ] Initializing speech engine...
[2026-06-22 22:36:24,371.371 INFO    ] 2026-06-22 22:36:24
[2026-06-22 22:36:24,700.700 INFO    ] 2026-06-22 22:36:24
[2026-06-22 22:36:24,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:36:24,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:36:24,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:36:25,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:36:25,083.083 INFO    ] time= 22/06/2026 22:36:25
[2026-06-22 22:36:25,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:36:25,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:36:25,208.208 INFO    ] No existing commands found in stream
[2026-06-22 22:36:30,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:36:30,223.223 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-22 22:36:32,973.973 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:36:32,976.976 INFO    ] Checking for system updates...
[2026-06-22 22:36:33,017.017 INFO    ] 200
[2026-06-22 22:36:33,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:36:33,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:36:33,080.080 INFO    ] No update needed
[2026-06-22 22:36:33,082.082 INFO    ] Checking for camera pi updates...
[2026-06-22 22:36:33,115.115 INFO    ] 200
[2026-06-22 22:36:33,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:36:33,164.164 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:36:33,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:36:33,245.245 INFO    ] No camera update needed
[2026-06-22 22:36:33,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:36:33,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:36:33,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:36:33,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:36:35,302.302 INFO    ] ================================================
[2026-06-22 22:36:35,317.317 INFO    ] Launching Daemon at Mon Jun 22 22:36:35 IST 2026
[2026-06-22 22:36:35,327.327 INFO    ] ================================================
[2026-06-22 22:36:35,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:36:35
[2026-06-22 22:36:36,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:36:36,800.800 INFO    ] Initializing speech engine...
[2026-06-22 22:36:36,808.808 INFO    ] 2026-06-22 22:36:36
[2026-06-22 22:36:37,081.081 INFO    ] 2026-06-22 22:36:37
[2026-06-22 22:36:37,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:36:37,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:36:37,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:36:37,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:36:37,538.538 INFO    ] time= 22/06/2026 22:36:37
[2026-06-22 22:36:37,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:36:37,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:36:37,678.678 INFO    ] No existing commands found in stream
[2026-06-22 22:36:42,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:36:42,693.693 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-22 22:36:43,534.534 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:36:43,537.537 INFO    ] Checking for system updates...
[2026-06-22 22:36:43,575.575 INFO    ] 200
[2026-06-22 22:36:43,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:36:43,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:36:43,635.635 INFO    ] No update needed
[2026-06-22 22:36:43,638.638 INFO    ] Checking for camera pi updates...
[2026-06-22 22:36:43,677.677 INFO    ] 200
[2026-06-22 22:36:43,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:36:43,726.726 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:36:43,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:36:43,830.830 INFO    ] No camera update needed
[2026-06-22 22:36:43,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:36:43,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:36:43,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:36:43,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:36:45,891.891 INFO    ] ================================================
[2026-06-22 22:36:45,906.906 INFO    ] Launching Daemon at Mon Jun 22 22:36:45 IST 2026
[2026-06-22 22:36:45,916.916 INFO    ] ================================================
[2026-06-22 22:36:46,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:36:46
[2026-06-22 22:36:47,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:36:47,361.361 INFO    ] Initializing speech engine...
[2026-06-22 22:36:47,379.379 INFO    ] 2026-06-22 22:36:47
[2026-06-22 22:36:47,632.632 INFO    ] 2026-06-22 22:36:47
[2026-06-22 22:36:47,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:36:47,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:36:47,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:36:48,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:36:48,074.074 INFO    ] time= 22/06/2026 22:36:48
[2026-06-22 22:36:48,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:36:48,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:36:48,353.353 INFO    ] No existing commands found in stream
[2026-06-22 22:36:53,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:36:53,386.386 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-22 22:36:56,742.742 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:36:56,744.744 INFO    ] Checking for system updates...
[2026-06-22 22:36:56,781.781 INFO    ] 200
[2026-06-22 22:36:56,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:36:56,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:36:56,841.841 INFO    ] No update needed
[2026-06-22 22:36:56,843.843 INFO    ] Checking for camera pi updates...
[2026-06-22 22:36:56,879.879 INFO    ] 200
[2026-06-22 22:36:56,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:36:56,923.923 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:36:56,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:36:56,999.999 INFO    ] No camera update needed
[2026-06-22 22:36:57,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:36:57,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:36:57,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:36:57,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:36:59,058.058 INFO    ] ================================================
[2026-06-22 22:36:59,073.073 INFO    ] Launching Daemon at Mon Jun 22 22:36:59 IST 2026
[2026-06-22 22:36:59,084.084 INFO    ] ================================================
[2026-06-22 22:36:59,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:36:59
[2026-06-22 22:37:00,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:37:00,507.507 INFO    ] Initializing speech engine...
[2026-06-22 22:37:00,520.520 INFO    ] 2026-06-22 22:37:00
[2026-06-22 22:37:00,804.804 INFO    ] 2026-06-22 22:37:00
[2026-06-22 22:37:00,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:37:01,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:37:01,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:37:01,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:37:01,574.574 INFO    ] time= 22/06/2026 22:37:01
[2026-06-22 22:37:01,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:37:01,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:37:01,809.809 INFO    ] No existing commands found in stream
[2026-06-22 22:37:06,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:37:06,824.824 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-22 22:37:09,042.042 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:37:09,045.045 INFO    ] Checking for system updates...
[2026-06-22 22:37:09,082.082 INFO    ] 200
[2026-06-22 22:37:09,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:37:09,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:37:09,141.141 INFO    ] No update needed
[2026-06-22 22:37:09,144.144 INFO    ] Checking for camera pi updates...
[2026-06-22 22:37:09,178.178 INFO    ] 200
[2026-06-22 22:37:09,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:37:09,222.222 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:37:09,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:37:09,310.310 INFO    ] No camera update needed
[2026-06-22 22:37:09,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:37:09,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:37:09,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:37:09,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:37:11,367.367 INFO    ] ================================================
[2026-06-22 22:37:11,382.382 INFO    ] Launching Daemon at Mon Jun 22 22:37:11 IST 2026
[2026-06-22 22:37:11,392.392 INFO    ] ================================================
[2026-06-22 22:37:11,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:37:11
[2026-06-22 22:37:12,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:37:12,825.825 INFO    ] Initializing speech engine...
[2026-06-22 22:37:12,836.836 INFO    ] 2026-06-22 22:37:12
[2026-06-22 22:37:13,081.081 INFO    ] 2026-06-22 22:37:13
[2026-06-22 22:37:13,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:37:13,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:37:13,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:37:13,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:37:13,636.636 INFO    ] time= 22/06/2026 22:37:13
[2026-06-22 22:37:13,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:37:13,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:37:13,788.788 INFO    ] No existing commands found in stream
[2026-06-22 22:37:18,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:37:18,806.806 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-22 22:37:21,862.862 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:37:21,865.865 INFO    ] Checking for system updates...
[2026-06-22 22:37:21,901.901 INFO    ] 200
[2026-06-22 22:37:21,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:37:21,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:37:21,959.959 INFO    ] No update needed
[2026-06-22 22:37:21,961.961 INFO    ] Checking for camera pi updates...
[2026-06-22 22:37:21,987.987 INFO    ] 200
[2026-06-22 22:37:21,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:37:22,014.014 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:37:22,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:37:22,111.111 INFO    ] No camera update needed
[2026-06-22 22:37:22,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:37:22,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:37:22,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:37:22,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:37:24,167.167 INFO    ] ================================================
[2026-06-22 22:37:24,183.183 INFO    ] Launching Daemon at Mon Jun 22 22:37:24 IST 2026
[2026-06-22 22:37:24,194.194 INFO    ] ================================================
[2026-06-22 22:37:24,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:37:24
[2026-06-22 22:37:25,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:37:25,664.664 INFO    ] Initializing speech engine...
[2026-06-22 22:37:25,671.671 INFO    ] 2026-06-22 22:37:25
[2026-06-22 22:37:25,947.947 INFO    ] 2026-06-22 22:37:25
[2026-06-22 22:37:26,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:37:26,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:37:26,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:37:26,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:37:26,464.464 INFO    ] time= 22/06/2026 22:37:26
[2026-06-22 22:37:26,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:37:26,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:37:26,653.653 INFO    ] No existing commands found in stream
[2026-06-22 22:37:31,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:37:31,679.679 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-22 22:37:34,682.682 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:37:34,685.685 INFO    ] Checking for system updates...
[2026-06-22 22:37:34,723.723 INFO    ] 200
[2026-06-22 22:37:34,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:37:34,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:37:34,782.782 INFO    ] No update needed
[2026-06-22 22:37:34,785.785 INFO    ] Checking for camera pi updates...
[2026-06-22 22:37:34,820.820 INFO    ] 200
[2026-06-22 22:37:34,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:37:34,867.867 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:37:34,970.970 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:37:34,972.972 INFO    ] No camera update needed
[2026-06-22 22:37:34,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:37:34,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:37:34,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:37:34,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:37:37,032.032 INFO    ] ================================================
[2026-06-22 22:37:37,048.048 INFO    ] Launching Daemon at Mon Jun 22 22:37:37 IST 2026
[2026-06-22 22:37:37,059.059 INFO    ] ================================================
[2026-06-22 22:37:37,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:37:37
[2026-06-22 22:37:38,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:37:38,445.445 INFO    ] Initializing speech engine...
[2026-06-22 22:37:38,453.453 INFO    ] 2026-06-22 22:37:38
[2026-06-22 22:37:38,708.708 INFO    ] 2026-06-22 22:37:38
[2026-06-22 22:37:38,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:37:38,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:37:38,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:37:39,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:37:39,192.192 INFO    ] time= 22/06/2026 22:37:39
[2026-06-22 22:37:39,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:37:39,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:37:39,386.386 INFO    ] No existing commands found in stream
[2026-06-22 22:37:44,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:37:44,416.416 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-22 22:37:48,081.081 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:37:48,083.083 INFO    ] Checking for system updates...
[2026-06-22 22:37:48,122.122 INFO    ] 200
[2026-06-22 22:37:48,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:37:48,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:37:48,181.181 INFO    ] No update needed
[2026-06-22 22:37:48,183.183 INFO    ] Checking for camera pi updates...
[2026-06-22 22:37:48,218.218 INFO    ] 200
[2026-06-22 22:37:48,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:37:48,261.261 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:37:48,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:37:48,350.350 INFO    ] No camera update needed
[2026-06-22 22:37:48,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:37:48,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:37:48,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:37:48,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:37:50,409.409 INFO    ] ================================================
[2026-06-22 22:37:50,425.425 INFO    ] Launching Daemon at Mon Jun 22 22:37:50 IST 2026
[2026-06-22 22:37:50,436.436 INFO    ] ================================================
[2026-06-22 22:37:51,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:37:51
[2026-06-22 22:37:51,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:37:51,880.880 INFO    ] Initializing speech engine...
[2026-06-22 22:37:51,889.889 INFO    ] 2026-06-22 22:37:51
[2026-06-22 22:37:52,146.146 INFO    ] 2026-06-22 22:37:52
[2026-06-22 22:37:52,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:37:52,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:37:52,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:37:52,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:37:52,597.597 INFO    ] time= 22/06/2026 22:37:52
[2026-06-22 22:37:52,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:37:52,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:37:52,730.730 INFO    ] No existing commands found in stream
[2026-06-22 22:37:57,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:37:57,761.761 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-22 22:37:58,222.222 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:37:58,225.225 INFO    ] Checking for system updates...
[2026-06-22 22:37:58,263.263 INFO    ] 200
[2026-06-22 22:37:58,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:37:58,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:37:58,321.321 INFO    ] No update needed
[2026-06-22 22:37:58,324.324 INFO    ] Checking for camera pi updates...
[2026-06-22 22:37:58,358.358 INFO    ] 200
[2026-06-22 22:37:58,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:37:58,401.401 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:37:58,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:37:58,481.481 INFO    ] No camera update needed
[2026-06-22 22:37:58,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:37:58,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:37:58,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:37:58,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:38:00,539.539 INFO    ] ================================================
[2026-06-22 22:38:00,555.555 INFO    ] Launching Daemon at Mon Jun 22 22:38:00 IST 2026
[2026-06-22 22:38:00,566.566 INFO    ] ================================================
[2026-06-22 22:38:01,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:38:01
[2026-06-22 22:38:01,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:38:02,204.204 INFO    ] Initializing speech engine...
[2026-06-22 22:38:02,231.231 INFO    ] 2026-06-22 22:38:02
[2026-06-22 22:38:02,552.552 INFO    ] 2026-06-22 22:38:02
[2026-06-22 22:38:02,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:38:02,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:38:02,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:38:03,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:38:03,207.207 INFO    ] time= 22/06/2026 22:38:03
[2026-06-22 22:38:03,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:38:03,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:38:03,372.372 INFO    ] No existing commands found in stream
[2026-06-22 22:38:08,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:38:08,402.402 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-22 22:38:12,521.521 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:38:12,522.522 INFO    ] Checking for system updates...
[2026-06-22 22:38:12,556.556 INFO    ] 200
[2026-06-22 22:38:12,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:38:12,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:38:12,620.620 INFO    ] No update needed
[2026-06-22 22:38:12,623.623 INFO    ] Checking for camera pi updates...
[2026-06-22 22:38:12,660.660 INFO    ] 200
[2026-06-22 22:38:12,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:38:12,703.703 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:38:12,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:38:12,791.791 INFO    ] No camera update needed
[2026-06-22 22:38:12,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:38:12,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:38:12,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:38:12,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:38:14,849.849 INFO    ] ================================================
[2026-06-22 22:38:14,865.865 INFO    ] Launching Daemon at Mon Jun 22 22:38:14 IST 2026
[2026-06-22 22:38:14,876.876 INFO    ] ================================================
[2026-06-22 22:38:15,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:38:15
[2026-06-22 22:38:16,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:38:16,381.381 INFO    ] Initializing speech engine...
[2026-06-22 22:38:16,395.395 INFO    ] 2026-06-22 22:38:16
[2026-06-22 22:38:16,702.702 INFO    ] 2026-06-22 22:38:16
[2026-06-22 22:38:16,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:38:16,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:38:16,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:38:17,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:38:17,141.141 INFO    ] time= 22/06/2026 22:38:17
[2026-06-22 22:38:17,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:38:17,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:38:17,348.348 INFO    ] No existing commands found in stream
[2026-06-22 22:38:22,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:38:22,379.379 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-22 22:38:26,473.473 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:38:26,476.476 INFO    ] Checking for system updates...
[2026-06-22 22:38:26,513.513 INFO    ] 200
[2026-06-22 22:38:26,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:38:26,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:38:26,572.572 INFO    ] No update needed
[2026-06-22 22:38:26,575.575 INFO    ] Checking for camera pi updates...
[2026-06-22 22:38:26,610.610 INFO    ] 200
[2026-06-22 22:38:26,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:38:26,655.655 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:38:26,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:38:26,745.745 INFO    ] No camera update needed
[2026-06-22 22:38:26,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:38:26,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:38:26,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:38:26,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:38:28,803.803 INFO    ] ================================================
[2026-06-22 22:38:28,818.818 INFO    ] Launching Daemon at Mon Jun 22 22:38:28 IST 2026
[2026-06-22 22:38:28,831.831 INFO    ] ================================================
[2026-06-22 22:38:29,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:38:29
[2026-06-22 22:38:30,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:38:30,351.351 INFO    ] Initializing speech engine...
[2026-06-22 22:38:30,360.360 INFO    ] 2026-06-22 22:38:30
[2026-06-22 22:38:30,643.643 INFO    ] 2026-06-22 22:38:30
[2026-06-22 22:38:30,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:38:33,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:38:33,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:38:34,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:38:34,028.028 INFO    ] time= 22/06/2026 22:38:34
[2026-06-22 22:38:34,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:38:34,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:38:34,085.085 INFO    ] No existing commands found in stream
[2026-06-22 22:38:39,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:38:39,098.098 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-22 22:38:42,574.574 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:38:42,577.577 INFO    ] Checking for system updates...
[2026-06-22 22:38:42,614.614 INFO    ] 200
[2026-06-22 22:38:42,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:38:42,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:38:42,674.674 INFO    ] No update needed
[2026-06-22 22:38:42,677.677 INFO    ] Checking for camera pi updates...
[2026-06-22 22:38:42,712.712 INFO    ] 200
[2026-06-22 22:38:42,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:38:42,756.756 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:38:42,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:38:42,948.948 INFO    ] No camera update needed
[2026-06-22 22:38:42,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:38:42,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:38:42,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:38:42,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:38:45,007.007 INFO    ] ================================================
[2026-06-22 22:38:45,022.022 INFO    ] Launching Daemon at Mon Jun 22 22:38:45 IST 2026
[2026-06-22 22:38:45,034.034 INFO    ] ================================================
[2026-06-22 22:38:45,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:38:45
[2026-06-22 22:38:46,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:38:46,365.365 INFO    ] Initializing speech engine...
[2026-06-22 22:38:46,373.373 INFO    ] 2026-06-22 22:38:46
[2026-06-22 22:38:46,623.623 INFO    ] 2026-06-22 22:38:46
[2026-06-22 22:38:46,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:38:46,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:38:46,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:38:47,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:38:47,103.103 INFO    ] time= 22/06/2026 22:38:47
[2026-06-22 22:38:47,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:38:47,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:38:47,333.333 INFO    ] No existing commands found in stream
[2026-06-22 22:38:52,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:38:52,362.362 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-22 22:38:52,990.990 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:38:52,992.992 INFO    ] Checking for system updates...
[2026-06-22 22:38:53,012.012 INFO    ] 200
[2026-06-22 22:38:53,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:38:53,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:38:53,048.048 INFO    ] No update needed
[2026-06-22 22:38:53,049.049 INFO    ] Checking for camera pi updates...
[2026-06-22 22:38:53,073.073 INFO    ] 200
[2026-06-22 22:38:53,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:38:53,112.112 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:38:53,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:38:53,207.207 INFO    ] No camera update needed
[2026-06-22 22:38:53,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:38:53,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:38:53,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:38:53,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:38:55,267.267 INFO    ] ================================================
[2026-06-22 22:38:55,282.282 INFO    ] Launching Daemon at Mon Jun 22 22:38:55 IST 2026
[2026-06-22 22:38:55,294.294 INFO    ] ================================================
[2026-06-22 22:38:55,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:38:55
[2026-06-22 22:38:56,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:38:56,882.882 INFO    ] Initializing speech engine...
[2026-06-22 22:38:56,896.896 INFO    ] 2026-06-22 22:38:56
[2026-06-22 22:38:57,174.174 INFO    ] 2026-06-22 22:38:57
[2026-06-22 22:38:57,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:38:57,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:38:57,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:38:57,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:38:57,707.707 INFO    ] time= 22/06/2026 22:38:57
[2026-06-22 22:38:57,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:38:57,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:38:57,860.860 INFO    ] No existing commands found in stream
[2026-06-22 22:39:02,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:39:02,879.879 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-22 22:39:05,630.630 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:39:05,633.633 INFO    ] Checking for system updates...
[2026-06-22 22:39:05,679.679 INFO    ] 200
[2026-06-22 22:39:05,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:39:05,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:39:05,739.739 INFO    ] No update needed
[2026-06-22 22:39:05,745.745 INFO    ] Checking for camera pi updates...
[2026-06-22 22:39:05,778.778 INFO    ] 200
[2026-06-22 22:39:05,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:39:05,826.826 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:39:05,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:39:05,940.940 INFO    ] No camera update needed
[2026-06-22 22:39:05,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:39:05,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:39:05,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:39:05,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:39:08,002.002 INFO    ] ================================================
[2026-06-22 22:39:08,018.018 INFO    ] Launching Daemon at Mon Jun 22 22:39:08 IST 2026
[2026-06-22 22:39:08,029.029 INFO    ] ================================================
[2026-06-22 22:39:08,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:39:08
[2026-06-22 22:39:09,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:39:09,450.450 INFO    ] Initializing speech engine...
[2026-06-22 22:39:09,469.469 INFO    ] 2026-06-22 22:39:09
[2026-06-22 22:39:09,715.715 INFO    ] 2026-06-22 22:39:09
[2026-06-22 22:39:09,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:39:09,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:39:09,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:39:10,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:39:10,081.081 INFO    ] time= 22/06/2026 22:39:10
[2026-06-22 22:39:10,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:39:10,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:39:10,263.263 INFO    ] No existing commands found in stream
[2026-06-22 22:39:15,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:39:15,289.289 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-22 22:39:18,409.409 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:39:18,412.412 INFO    ] Checking for system updates...
[2026-06-22 22:39:18,448.448 INFO    ] 200
[2026-06-22 22:39:18,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:39:18,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:39:18,505.505 INFO    ] No update needed
[2026-06-22 22:39:18,507.507 INFO    ] Checking for camera pi updates...
[2026-06-22 22:39:18,541.541 INFO    ] 200
[2026-06-22 22:39:18,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:39:18,588.588 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:39:18,678.678 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:39:18,681.681 INFO    ] No camera update needed
[2026-06-22 22:39:18,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:39:18,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:39:18,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:39:18,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:39:20,736.736 INFO    ] ================================================
[2026-06-22 22:39:20,751.751 INFO    ] Launching Daemon at Mon Jun 22 22:39:20 IST 2026
[2026-06-22 22:39:20,763.763 INFO    ] ================================================
[2026-06-22 22:39:21,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:39:21
[2026-06-22 22:39:21,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:39:22,080.080 INFO    ] Initializing speech engine...
[2026-06-22 22:39:22,088.088 INFO    ] 2026-06-22 22:39:22
[2026-06-22 22:39:22,365.365 INFO    ] 2026-06-22 22:39:22
[2026-06-22 22:39:22,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:39:22,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:39:22,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:39:22,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:39:22,743.743 INFO    ] time= 22/06/2026 22:39:22
[2026-06-22 22:39:22,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:39:22,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:39:22,936.936 INFO    ] No existing commands found in stream
[2026-06-22 22:39:27,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:39:27,957.957 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-22 22:39:32,302.302 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:39:32,306.306 INFO    ] Checking for system updates...
[2026-06-22 22:39:32,348.348 INFO    ] 200
[2026-06-22 22:39:32,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:39:32,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:39:32,417.417 INFO    ] No update needed
[2026-06-22 22:39:32,421.421 INFO    ] Checking for camera pi updates...
[2026-06-22 22:39:32,497.497 INFO    ] 200
[2026-06-22 22:39:32,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:39:32,548.548 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:39:32,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:39:32,609.609 INFO    ] No camera update needed
[2026-06-22 22:39:32,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:39:32,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:39:32,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:39:32,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:39:34,678.678 INFO    ] ================================================
[2026-06-22 22:39:34,694.694 INFO    ] Launching Daemon at Mon Jun 22 22:39:34 IST 2026
[2026-06-22 22:39:34,705.705 INFO    ] ================================================
[2026-06-22 22:39:35,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:39:35
[2026-06-22 22:39:35,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:39:36,181.181 INFO    ] Initializing speech engine...
[2026-06-22 22:39:36,208.208 INFO    ] 2026-06-22 22:39:36
[2026-06-22 22:39:36,463.463 INFO    ] 2026-06-22 22:39:36
[2026-06-22 22:39:36,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:39:36,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:39:36,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:39:36,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:39:36,953.953 INFO    ] time= 22/06/2026 22:39:36
[2026-06-22 22:39:37,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:39:37,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:39:37,158.158 INFO    ] No existing commands found in stream
[2026-06-22 22:39:42,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:39:42,191.191 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-22 22:39:46,184.184 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:39:46,188.188 INFO    ] Checking for system updates...
[2026-06-22 22:39:46,233.233 INFO    ] 200
[2026-06-22 22:39:46,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:39:46,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:39:46,293.293 INFO    ] No update needed
[2026-06-22 22:39:46,296.296 INFO    ] Checking for camera pi updates...
[2026-06-22 22:39:46,331.331 INFO    ] 200
[2026-06-22 22:39:46,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:39:46,376.376 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:39:46,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:39:46,465.465 INFO    ] No camera update needed
[2026-06-22 22:39:46,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:39:46,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:39:46,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:39:46,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:39:48,523.523 INFO    ] ================================================
[2026-06-22 22:39:48,538.538 INFO    ] Launching Daemon at Mon Jun 22 22:39:48 IST 2026
[2026-06-22 22:39:48,549.549 INFO    ] ================================================
[2026-06-22 22:39:49,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:39:49
[2026-06-22 22:39:49,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:39:50,034.034 INFO    ] Initializing speech engine...
[2026-06-22 22:39:50,045.045 INFO    ] 2026-06-22 22:39:50
[2026-06-22 22:39:50,289.289 INFO    ] 2026-06-22 22:39:50
[2026-06-22 22:39:50,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:39:50,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:39:50,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:39:50,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:39:50,773.773 INFO    ] time= 22/06/2026 22:39:50
[2026-06-22 22:39:50,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:39:50,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:39:50,923.923 INFO    ] No existing commands found in stream
[2026-06-22 22:39:55,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:39:55,957.957 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-22 22:39:59,397.397 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:39:59,399.399 INFO    ] Checking for system updates...
[2026-06-22 22:39:59,435.435 INFO    ] 200
[2026-06-22 22:39:59,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:39:59,496.496 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:39:59,499.499 INFO    ] No update needed
[2026-06-22 22:39:59,501.501 INFO    ] Checking for camera pi updates...
[2026-06-22 22:39:59,538.538 INFO    ] 200
[2026-06-22 22:39:59,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:39:59,586.586 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:39:59,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:39:59,692.692 INFO    ] No camera update needed
[2026-06-22 22:39:59,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:39:59,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:39:59,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:39:59,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:40:01,779.779 INFO    ] ================================================
[2026-06-22 22:40:01,858.858 INFO    ] Launching Daemon at Mon Jun 22 22:40:01 IST 2026
[2026-06-22 22:40:01,900.900 INFO    ] ================================================
[2026-06-22 22:40:02,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:40:02
[2026-06-22 22:40:03,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:40:03,528.528 INFO    ] Initializing speech engine...
[2026-06-22 22:40:03,546.546 INFO    ] 2026-06-22 22:40:03
[2026-06-22 22:40:03,803.803 INFO    ] 2026-06-22 22:40:03
[2026-06-22 22:40:03,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:40:05,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:40:05,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:40:06,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:40:06,135.135 INFO    ] time= 22/06/2026 22:40:06
[2026-06-22 22:40:06,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:40:06,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:40:06,286.286 INFO    ] No existing commands found in stream
[2026-06-22 22:40:11,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:40:11,300.300 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-22 22:40:14,582.582 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:40:14,585.585 INFO    ] Checking for system updates...
[2026-06-22 22:40:14,621.621 INFO    ] 200
[2026-06-22 22:40:14,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:40:14,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:40:14,684.684 INFO    ] No update needed
[2026-06-22 22:40:14,687.687 INFO    ] Checking for camera pi updates...
[2026-06-22 22:40:14,721.721 INFO    ] 200
[2026-06-22 22:40:14,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:40:14,764.764 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:40:14,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:40:14,852.852 INFO    ] No camera update needed
[2026-06-22 22:40:14,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:40:14,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:40:14,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:40:14,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:40:16,910.910 INFO    ] ================================================
[2026-06-22 22:40:16,926.926 INFO    ] Launching Daemon at Mon Jun 22 22:40:16 IST 2026
[2026-06-22 22:40:16,937.937 INFO    ] ================================================
[2026-06-22 22:40:17,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:40:17
[2026-06-22 22:40:18,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:40:18,382.382 INFO    ] Initializing speech engine...
[2026-06-22 22:40:18,404.404 INFO    ] 2026-06-22 22:40:18
[2026-06-22 22:40:18,673.673 INFO    ] 2026-06-22 22:40:18
[2026-06-22 22:40:18,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:40:19,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:40:19,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:40:19,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:40:19,230.230 INFO    ] time= 22/06/2026 22:40:19
[2026-06-22 22:40:19,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:40:19,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:40:19,364.364 INFO    ] No existing commands found in stream
[2026-06-22 22:40:24,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:40:24,387.387 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-22 22:40:24,978.978 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:40:24,980.980 INFO    ] Checking for system updates...
[2026-06-22 22:40:25,001.001 INFO    ] 200
[2026-06-22 22:40:25,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:40:25,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:40:25,057.057 INFO    ] No update needed
[2026-06-22 22:40:25,060.060 INFO    ] Checking for camera pi updates...
[2026-06-22 22:40:25,097.097 INFO    ] 200
[2026-06-22 22:40:25,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:40:25,141.141 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:40:25,274.274 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:40:25,277.277 INFO    ] No camera update needed
[2026-06-22 22:40:25,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:40:25,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:40:25,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:40:25,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:40:27,332.332 INFO    ] ================================================
[2026-06-22 22:40:27,348.348 INFO    ] Launching Daemon at Mon Jun 22 22:40:27 IST 2026
[2026-06-22 22:40:27,359.359 INFO    ] ================================================
[2026-06-22 22:40:27,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:40:27
[2026-06-22 22:40:28,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:40:28,710.710 INFO    ] Initializing speech engine...
[2026-06-22 22:40:28,719.719 INFO    ] 2026-06-22 22:40:28
[2026-06-22 22:40:29,017.017 INFO    ] 2026-06-22 22:40:28
[2026-06-22 22:40:29,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:40:29,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:40:29,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:40:29,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:40:29,441.441 INFO    ] time= 22/06/2026 22:40:29
[2026-06-22 22:40:29,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:40:29,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:40:29,631.631 INFO    ] No existing commands found in stream
[2026-06-22 22:40:34,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:40:34,665.665 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-22 22:40:36,132.132 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:40:36,134.134 INFO    ] Checking for system updates...
[2026-06-22 22:40:36,174.174 INFO    ] 200
[2026-06-22 22:40:36,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:40:36,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:40:36,231.231 INFO    ] No update needed
[2026-06-22 22:40:36,234.234 INFO    ] Checking for camera pi updates...
[2026-06-22 22:40:36,267.267 INFO    ] 200
[2026-06-22 22:40:36,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:40:36,314.314 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:40:36,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:40:36,406.406 INFO    ] No camera update needed
[2026-06-22 22:40:36,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:40:36,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:40:36,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:40:36,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:40:38,464.464 INFO    ] ================================================
[2026-06-22 22:40:38,479.479 INFO    ] Launching Daemon at Mon Jun 22 22:40:38 IST 2026
[2026-06-22 22:40:38,491.491 INFO    ] ================================================
[2026-06-22 22:40:39,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:40:39
[2026-06-22 22:40:39,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:40:40,025.025 INFO    ] Initializing speech engine...
[2026-06-22 22:40:40,035.035 INFO    ] 2026-06-22 22:40:40
[2026-06-22 22:40:40,321.321 INFO    ] 2026-06-22 22:40:40
[2026-06-22 22:40:40,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:40:40,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:40:40,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:40:40,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:40:40,850.850 INFO    ] time= 22/06/2026 22:40:40
[2026-06-22 22:40:40,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:40:40,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:40:41,007.007 INFO    ] No existing commands found in stream
[2026-06-22 22:40:46,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:40:46,044.044 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-22 22:40:51,012.012 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:40:51,015.015 INFO    ] Checking for system updates...
[2026-06-22 22:40:51,060.060 INFO    ] 200
[2026-06-22 22:40:51,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:40:51,122.122 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:40:51,125.125 INFO    ] No update needed
[2026-06-22 22:40:51,128.128 INFO    ] Checking for camera pi updates...
[2026-06-22 22:40:51,153.153 INFO    ] 200
[2026-06-22 22:40:51,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:40:51,179.179 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:40:51,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:40:51,382.382 INFO    ] No camera update needed
[2026-06-22 22:40:51,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:40:51,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:40:51,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:40:51,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:40:53,439.439 INFO    ] ================================================
[2026-06-22 22:40:53,454.454 INFO    ] Launching Daemon at Mon Jun 22 22:40:53 IST 2026
[2026-06-22 22:40:53,466.466 INFO    ] ================================================
[2026-06-22 22:40:54,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:40:54
[2026-06-22 22:40:54,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:40:55,113.113 INFO    ] Initializing speech engine...
[2026-06-22 22:40:55,127.127 INFO    ] 2026-06-22 22:40:55
[2026-06-22 22:40:55,418.418 INFO    ] 2026-06-22 22:40:55
[2026-06-22 22:40:55,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:40:55,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:40:55,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:40:55,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:40:55,951.951 INFO    ] time= 22/06/2026 22:40:55
[2026-06-22 22:40:55,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:40:56,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:40:56,139.139 INFO    ] No existing commands found in stream
[2026-06-22 22:41:01,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:41:01,174.174 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-22 22:41:07,356.356 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:41:07,359.359 INFO    ] Checking for system updates...
[2026-06-22 22:41:07,396.396 INFO    ] 200
[2026-06-22 22:41:07,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:41:07,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:41:07,473.473 INFO    ] No update needed
[2026-06-22 22:41:07,475.475 INFO    ] Checking for camera pi updates...
[2026-06-22 22:41:07,510.510 INFO    ] 200
[2026-06-22 22:41:07,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:41:07,558.558 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:41:07,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:41:07,640.640 INFO    ] No camera update needed
[2026-06-22 22:41:07,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:41:07,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:41:07,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:41:07,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:41:09,695.695 INFO    ] ================================================
[2026-06-22 22:41:09,713.713 INFO    ] Launching Daemon at Mon Jun 22 22:41:09 IST 2026
[2026-06-22 22:41:09,724.724 INFO    ] ================================================
[2026-06-22 22:41:10,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:41:10
[2026-06-22 22:41:11,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:41:11,334.334 INFO    ] Initializing speech engine...
[2026-06-22 22:41:11,341.341 INFO    ] 2026-06-22 22:41:11
[2026-06-22 22:41:11,663.663 INFO    ] 2026-06-22 22:41:11
[2026-06-22 22:41:11,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:41:11,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:41:11,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:41:12,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:41:12,049.049 INFO    ] time= 22/06/2026 22:41:12
[2026-06-22 22:41:12,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:41:12,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:41:12,196.196 INFO    ] No existing commands found in stream
[2026-06-22 22:41:17,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:41:17,227.227 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-22 22:41:20,271.271 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:41:20,274.274 INFO    ] Checking for system updates...
[2026-06-22 22:41:20,310.310 INFO    ] 200
[2026-06-22 22:41:20,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:41:20,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:41:20,372.372 INFO    ] No update needed
[2026-06-22 22:41:20,374.374 INFO    ] Checking for camera pi updates...
[2026-06-22 22:41:20,408.408 INFO    ] 200
[2026-06-22 22:41:20,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:41:20,451.451 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:41:20,545.545 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:41:20,547.547 INFO    ] No camera update needed
[2026-06-22 22:41:20,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:41:20,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:41:20,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:41:20,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:41:22,603.603 INFO    ] ================================================
[2026-06-22 22:41:22,619.619 INFO    ] Launching Daemon at Mon Jun 22 22:41:22 IST 2026
[2026-06-22 22:41:22,631.631 INFO    ] ================================================
[2026-06-22 22:41:23,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:41:23
[2026-06-22 22:41:23,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:41:23,955.955 INFO    ] Initializing speech engine...
[2026-06-22 22:41:23,961.961 INFO    ] 2026-06-22 22:41:23
[2026-06-22 22:41:24,259.259 INFO    ] 2026-06-22 22:41:24
[2026-06-22 22:41:24,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:41:24,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:41:24,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:41:24,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:41:24,956.956 INFO    ] time= 22/06/2026 22:41:24
[2026-06-22 22:41:24,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:41:24,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:41:25,087.087 INFO    ] No existing commands found in stream
[2026-06-22 22:41:30,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:41:30,116.116 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-22 22:41:33,871.871 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:41:33,874.874 INFO    ] Checking for system updates...
[2026-06-22 22:41:33,910.910 INFO    ] 200
[2026-06-22 22:41:33,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:41:33,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:41:33,968.968 INFO    ] No update needed
[2026-06-22 22:41:33,970.970 INFO    ] Checking for camera pi updates...
[2026-06-22 22:41:34,004.004 INFO    ] 200
[2026-06-22 22:41:34,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:41:34,047.047 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:41:34,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:41:34,129.129 INFO    ] No camera update needed
[2026-06-22 22:41:34,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:41:34,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:41:34,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:41:34,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:41:36,183.183 INFO    ] ================================================
[2026-06-22 22:41:36,199.199 INFO    ] Launching Daemon at Mon Jun 22 22:41:36 IST 2026
[2026-06-22 22:41:36,210.210 INFO    ] ================================================
[2026-06-22 22:41:36,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:41:36
[2026-06-22 22:41:37,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:41:37,620.620 INFO    ] Initializing speech engine...
[2026-06-22 22:41:37,639.639 INFO    ] 2026-06-22 22:41:37
[2026-06-22 22:41:37,892.892 INFO    ] 2026-06-22 22:41:37
[2026-06-22 22:41:37,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:41:38,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:41:38,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:41:38,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:41:38,355.355 INFO    ] time= 22/06/2026 22:41:38
[2026-06-22 22:41:38,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:41:38,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:41:38,508.508 INFO    ] No existing commands found in stream
[2026-06-22 22:41:43,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:41:43,532.532 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-22 22:41:44,896.896 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:41:44,897.897 INFO    ] Checking for system updates...
[2026-06-22 22:41:44,926.926 INFO    ] 200
[2026-06-22 22:41:44,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:41:44,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:41:44,991.991 INFO    ] No update needed
[2026-06-22 22:41:44,994.994 INFO    ] Checking for camera pi updates...
[2026-06-22 22:41:45,031.031 INFO    ] 200
[2026-06-22 22:41:45,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:41:45,076.076 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:41:45,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:41:45,183.183 INFO    ] No camera update needed
[2026-06-22 22:41:45,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:41:45,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:41:45,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:41:45,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:41:47,238.238 INFO    ] ================================================
[2026-06-22 22:41:47,254.254 INFO    ] Launching Daemon at Mon Jun 22 22:41:47 IST 2026
[2026-06-22 22:41:47,265.265 INFO    ] ================================================
[2026-06-22 22:41:47,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:41:47
[2026-06-22 22:41:48,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:41:48,813.813 INFO    ] Initializing speech engine...
[2026-06-22 22:41:48,826.826 INFO    ] 2026-06-22 22:41:48
[2026-06-22 22:41:49,117.117 INFO    ] 2026-06-22 22:41:49
[2026-06-22 22:41:49,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:41:49,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:41:49,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:41:49,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:41:49,663.663 INFO    ] time= 22/06/2026 22:41:49
[2026-06-22 22:41:49,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:41:49,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:41:49,822.822 INFO    ] No existing commands found in stream
[2026-06-22 22:41:54,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:41:54,846.846 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-22 22:41:57,310.310 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:41:57,312.312 INFO    ] Checking for system updates...
[2026-06-22 22:41:57,361.361 INFO    ] 200
[2026-06-22 22:41:57,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:41:57,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:41:57,418.418 INFO    ] No update needed
[2026-06-22 22:41:57,420.420 INFO    ] Checking for camera pi updates...
[2026-06-22 22:41:57,454.454 INFO    ] 200
[2026-06-22 22:41:57,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:41:57,503.503 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:41:57,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:41:57,585.585 INFO    ] No camera update needed
[2026-06-22 22:41:57,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:41:57,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:41:57,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:41:57,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:41:59,641.641 INFO    ] ================================================
[2026-06-22 22:41:59,658.658 INFO    ] Launching Daemon at Mon Jun 22 22:41:59 IST 2026
[2026-06-22 22:41:59,669.669 INFO    ] ================================================
[2026-06-22 22:42:00,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:42:00
[2026-06-22 22:42:00,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:42:01,092.092 INFO    ] Initializing speech engine...
[2026-06-22 22:42:01,100.100 INFO    ] 2026-06-22 22:42:01
[2026-06-22 22:42:01,348.348 INFO    ] 2026-06-22 22:42:01
[2026-06-22 22:42:01,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:42:01,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:42:01,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:42:01,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:42:02,036.036 INFO    ] time= 22/06/2026 22:42:01
[2026-06-22 22:42:02,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:42:02,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:42:02,156.156 INFO    ] No existing commands found in stream
[2026-06-22 22:42:07,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:42:07,175.175 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-22 22:42:09,867.867 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:42:09,868.868 INFO    ] Checking for system updates...
[2026-06-22 22:42:09,889.889 INFO    ] 200
[2026-06-22 22:42:09,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:42:09,920.920 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:42:09,922.922 INFO    ] No update needed
[2026-06-22 22:42:09,923.923 INFO    ] Checking for camera pi updates...
[2026-06-22 22:42:09,951.951 INFO    ] 200
[2026-06-22 22:42:09,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:42:09,998.998 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:42:10,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:42:10,062.062 INFO    ] No camera update needed
[2026-06-22 22:42:10,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:42:10,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:42:10,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:42:10,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:42:12,119.119 INFO    ] ================================================
[2026-06-22 22:42:12,136.136 INFO    ] Launching Daemon at Mon Jun 22 22:42:12 IST 2026
[2026-06-22 22:42:12,146.146 INFO    ] ================================================
[2026-06-22 22:42:12,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:42:12
[2026-06-22 22:42:13,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:42:13,651.651 INFO    ] Initializing speech engine...
[2026-06-22 22:42:13,671.671 INFO    ] 2026-06-22 22:42:13
[2026-06-22 22:42:13,957.957 INFO    ] 2026-06-22 22:42:13
[2026-06-22 22:42:14,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:42:14,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:42:14,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:42:14,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:42:14,553.553 INFO    ] time= 22/06/2026 22:42:14
[2026-06-22 22:42:14,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:42:14,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:42:14,698.698 INFO    ] No existing commands found in stream
[2026-06-22 22:42:19,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:42:19,722.722 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-22 22:42:22,381.381 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:42:22,384.384 INFO    ] Checking for system updates...
[2026-06-22 22:42:22,423.423 INFO    ] 200
[2026-06-22 22:42:22,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:42:22,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:42:22,481.481 INFO    ] No update needed
[2026-06-22 22:42:22,484.484 INFO    ] Checking for camera pi updates...
[2026-06-22 22:42:22,521.521 INFO    ] 200
[2026-06-22 22:42:22,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:42:22,569.569 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:42:22,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:42:22,639.639 INFO    ] No camera update needed
[2026-06-22 22:42:22,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:42:22,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:42:22,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:42:22,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:42:24,700.700 INFO    ] ================================================
[2026-06-22 22:42:24,716.716 INFO    ] Launching Daemon at Mon Jun 22 22:42:24 IST 2026
[2026-06-22 22:42:24,728.728 INFO    ] ================================================
[2026-06-22 22:42:25,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:42:25
[2026-06-22 22:42:25,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:42:26,163.163 INFO    ] Initializing speech engine...
[2026-06-22 22:42:26,172.172 INFO    ] 2026-06-22 22:42:26
[2026-06-22 22:42:26,424.424 INFO    ] 2026-06-22 22:42:26
[2026-06-22 22:42:26,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:42:26,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:42:26,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:42:26,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:42:26,944.944 INFO    ] time= 22/06/2026 22:42:26
[2026-06-22 22:42:26,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:42:27,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:42:27,125.125 INFO    ] No existing commands found in stream
[2026-06-22 22:42:32,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:42:32,159.159 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-22 22:42:34,446.446 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:42:34,449.449 INFO    ] Checking for system updates...
[2026-06-22 22:42:34,488.488 INFO    ] 200
[2026-06-22 22:42:34,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:42:34,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:42:34,553.553 INFO    ] No update needed
[2026-06-22 22:42:34,555.555 INFO    ] Checking for camera pi updates...
[2026-06-22 22:42:34,589.589 INFO    ] 200
[2026-06-22 22:42:34,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:42:34,632.632 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:42:34,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:42:34,720.720 INFO    ] No camera update needed
[2026-06-22 22:42:34,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:42:34,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:42:34,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:42:34,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:42:36,775.775 INFO    ] ================================================
[2026-06-22 22:42:36,791.791 INFO    ] Launching Daemon at Mon Jun 22 22:42:36 IST 2026
[2026-06-22 22:42:36,802.802 INFO    ] ================================================
[2026-06-22 22:42:37,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:42:37
[2026-06-22 22:42:37,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:42:38,145.145 INFO    ] Initializing speech engine...
[2026-06-22 22:42:38,153.153 INFO    ] 2026-06-22 22:42:38
[2026-06-22 22:42:38,403.403 INFO    ] 2026-06-22 22:42:38
[2026-06-22 22:42:38,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:42:39,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:42:39,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:42:39,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:42:39,752.752 INFO    ] time= 22/06/2026 22:42:39
[2026-06-22 22:42:39,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:42:39,764.764 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:42:39,821.821 INFO    ] No existing commands found in stream
[2026-06-22 22:42:44,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:42:44,835.835 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-22 22:42:47,413.413 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:42:47,417.417 INFO    ] Checking for system updates...
[2026-06-22 22:42:47,483.483 INFO    ] 200
[2026-06-22 22:42:47,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:42:47,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:42:47,551.551 INFO    ] No update needed
[2026-06-22 22:42:47,554.554 INFO    ] Checking for camera pi updates...
[2026-06-22 22:42:47,593.593 INFO    ] 200
[2026-06-22 22:42:47,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:42:47,640.640 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:42:47,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:42:47,729.729 INFO    ] No camera update needed
[2026-06-22 22:42:47,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:42:47,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:42:47,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:42:47,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:42:49,789.789 INFO    ] ================================================
[2026-06-22 22:42:49,804.804 INFO    ] Launching Daemon at Mon Jun 22 22:42:49 IST 2026
[2026-06-22 22:42:49,816.816 INFO    ] ================================================
[2026-06-22 22:42:50,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:42:50
[2026-06-22 22:42:50,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:42:51,221.221 INFO    ] Initializing speech engine...
[2026-06-22 22:42:51,246.246 INFO    ] 2026-06-22 22:42:51
[2026-06-22 22:42:51,509.509 INFO    ] 2026-06-22 22:42:51
[2026-06-22 22:42:51,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:42:51,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:42:51,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:42:52,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:42:52,073.073 INFO    ] time= 22/06/2026 22:42:52
[2026-06-22 22:42:52,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:42:52,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:42:52,229.229 INFO    ] No existing commands found in stream
[2026-06-22 22:42:57,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:42:57,262.262 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-22 22:43:00,830.830 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:43:00,833.833 INFO    ] Checking for system updates...
[2026-06-22 22:43:00,871.871 INFO    ] 200
[2026-06-22 22:43:00,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:43:00,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:43:00,938.938 INFO    ] No update needed
[2026-06-22 22:43:00,941.941 INFO    ] Checking for camera pi updates...
[2026-06-22 22:43:00,980.980 INFO    ] 200
[2026-06-22 22:43:00,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:43:01,025.025 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:43:01,211.211 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:43:01,214.214 INFO    ] No camera update needed
[2026-06-22 22:43:01,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:43:01,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:43:01,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:43:01,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:43:03,278.278 INFO    ] ================================================
[2026-06-22 22:43:03,293.293 INFO    ] Launching Daemon at Mon Jun 22 22:43:03 IST 2026
[2026-06-22 22:43:03,304.304 INFO    ] ================================================
[2026-06-22 22:43:03,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:43:03
[2026-06-22 22:43:04,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:43:04,809.809 INFO    ] Initializing speech engine...
[2026-06-22 22:43:04,834.834 INFO    ] 2026-06-22 22:43:04
[2026-06-22 22:43:05,103.103 INFO    ] 2026-06-22 22:43:05
[2026-06-22 22:43:05,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:43:05,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:43:05,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:43:05,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:43:05,958.958 INFO    ] time= 22/06/2026 22:43:05
[2026-06-22 22:43:06,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:43:06,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:43:06,182.182 INFO    ] No existing commands found in stream
[2026-06-22 22:43:11,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:43:11,219.219 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-22 22:43:15,500.500 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:43:15,502.502 INFO    ] Checking for system updates...
[2026-06-22 22:43:15,544.544 INFO    ] 200
[2026-06-22 22:43:15,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:43:15,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:43:15,602.602 INFO    ] No update needed
[2026-06-22 22:43:15,604.604 INFO    ] Checking for camera pi updates...
[2026-06-22 22:43:15,645.645 INFO    ] 200
[2026-06-22 22:43:15,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:43:15,692.692 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:43:15,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:43:15,763.763 INFO    ] No camera update needed
[2026-06-22 22:43:15,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:43:15,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:43:15,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:43:15,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:43:17,818.818 INFO    ] ================================================
[2026-06-22 22:43:17,834.834 INFO    ] Launching Daemon at Mon Jun 22 22:43:17 IST 2026
[2026-06-22 22:43:17,846.846 INFO    ] ================================================
[2026-06-22 22:43:18,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:43:18
[2026-06-22 22:43:18,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:43:19,225.225 INFO    ] Initializing speech engine...
[2026-06-22 22:43:19,234.234 INFO    ] 2026-06-22 22:43:19
[2026-06-22 22:43:19,500.500 INFO    ] 2026-06-22 22:43:19
[2026-06-22 22:43:19,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:43:19,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:43:19,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:43:19,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:43:19,888.888 INFO    ] time= 22/06/2026 22:43:19
[2026-06-22 22:43:19,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:43:19,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:43:19,999.999 INFO    ] No existing commands found in stream
[2026-06-22 22:43:25,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:43:25,038.038 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-22 22:43:27,620.620 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:43:27,621.621 INFO    ] Checking for system updates...
[2026-06-22 22:43:27,642.642 INFO    ] 200
[2026-06-22 22:43:27,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:43:27,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:43:27,678.678 INFO    ] No update needed
[2026-06-22 22:43:27,679.679 INFO    ] Checking for camera pi updates...
[2026-06-22 22:43:27,699.699 INFO    ] 200
[2026-06-22 22:43:27,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:43:27,737.737 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:43:27,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:43:27,837.837 INFO    ] No camera update needed
[2026-06-22 22:43:27,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:43:27,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:43:27,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:43:27,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:43:29,896.896 INFO    ] ================================================
[2026-06-22 22:43:29,911.911 INFO    ] Launching Daemon at Mon Jun 22 22:43:29 IST 2026
[2026-06-22 22:43:29,922.922 INFO    ] ================================================
[2026-06-22 22:43:30,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:43:30
[2026-06-22 22:43:31,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:43:31,271.271 INFO    ] Initializing speech engine...
[2026-06-22 22:43:31,294.294 INFO    ] 2026-06-22 22:43:31
[2026-06-22 22:43:31,551.551 INFO    ] 2026-06-22 22:43:31
[2026-06-22 22:43:31,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:43:31,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:43:31,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:43:32,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:43:32,165.165 INFO    ] time= 22/06/2026 22:43:32
[2026-06-22 22:43:32,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:43:32,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:43:32,341.341 INFO    ] No existing commands found in stream
[2026-06-22 22:43:37,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:43:37,365.365 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-22 22:43:41,761.761 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:43:41,763.763 INFO    ] Checking for system updates...
[2026-06-22 22:43:41,799.799 INFO    ] 200
[2026-06-22 22:43:41,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:43:41,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:43:41,875.875 INFO    ] No update needed
[2026-06-22 22:43:41,878.878 INFO    ] Checking for camera pi updates...
[2026-06-22 22:43:41,911.911 INFO    ] 200
[2026-06-22 22:43:41,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:43:41,961.961 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:43:42,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:43:42,050.050 INFO    ] No camera update needed
[2026-06-22 22:43:42,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:43:42,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:43:42,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:43:42,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:43:44,105.105 INFO    ] ================================================
[2026-06-22 22:43:44,121.121 INFO    ] Launching Daemon at Mon Jun 22 22:43:44 IST 2026
[2026-06-22 22:43:44,132.132 INFO    ] ================================================
[2026-06-22 22:43:44,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:43:44
[2026-06-22 22:43:45,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:43:45,450.450 INFO    ] Initializing speech engine...
[2026-06-22 22:43:45,473.473 INFO    ] 2026-06-22 22:43:45
[2026-06-22 22:43:45,730.730 INFO    ] 2026-06-22 22:43:45
[2026-06-22 22:43:45,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:43:45,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:43:46,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:43:46,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:43:46,298.298 INFO    ] time= 22/06/2026 22:43:46
[2026-06-22 22:43:46,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:43:46,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:43:46,442.442 INFO    ] No existing commands found in stream
[2026-06-22 22:43:51,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:43:51,468.468 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-22 22:43:54,521.521 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:43:54,522.522 INFO    ] Checking for system updates...
[2026-06-22 22:43:54,543.543 INFO    ] 200
[2026-06-22 22:43:54,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:43:54,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:43:54,598.598 INFO    ] No update needed
[2026-06-22 22:43:54,600.600 INFO    ] Checking for camera pi updates...
[2026-06-22 22:43:54,635.635 INFO    ] 200
[2026-06-22 22:43:54,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:43:54,679.679 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:43:54,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:43:54,762.762 INFO    ] No camera update needed
[2026-06-22 22:43:54,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:43:54,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:43:54,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:43:54,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:43:56,822.822 INFO    ] ================================================
[2026-06-22 22:43:56,838.838 INFO    ] Launching Daemon at Mon Jun 22 22:43:56 IST 2026
[2026-06-22 22:43:56,849.849 INFO    ] ================================================
[2026-06-22 22:43:57,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:43:57
[2026-06-22 22:43:58,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:43:58,356.356 INFO    ] Initializing speech engine...
[2026-06-22 22:43:58,370.370 INFO    ] 2026-06-22 22:43:58
[2026-06-22 22:43:58,646.646 INFO    ] 2026-06-22 22:43:58
[2026-06-22 22:43:58,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:43:58,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:43:58,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:43:59,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:43:59,112.112 INFO    ] time= 22/06/2026 22:43:59
[2026-06-22 22:43:59,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:43:59,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:43:59,311.311 INFO    ] No existing commands found in stream
[2026-06-22 22:44:04,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:44:04,345.345 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-22 22:44:07,526.526 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:44:07,529.529 INFO    ] Checking for system updates...
[2026-06-22 22:44:07,566.566 INFO    ] 200
[2026-06-22 22:44:07,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:44:07,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:44:07,626.626 INFO    ] No update needed
[2026-06-22 22:44:07,629.629 INFO    ] Checking for camera pi updates...
[2026-06-22 22:44:07,663.663 INFO    ] 200
[2026-06-22 22:44:07,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:44:07,708.708 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:44:07,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:44:07,795.795 INFO    ] No camera update needed
[2026-06-22 22:44:07,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:44:07,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:44:07,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:44:07,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:44:09,854.854 INFO    ] ================================================
[2026-06-22 22:44:09,870.870 INFO    ] Launching Daemon at Mon Jun 22 22:44:09 IST 2026
[2026-06-22 22:44:09,881.881 INFO    ] ================================================
[2026-06-22 22:44:10,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:44:10
[2026-06-22 22:44:11,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:44:11,344.344 INFO    ] Initializing speech engine...
[2026-06-22 22:44:11,357.357 INFO    ] 2026-06-22 22:44:11
[2026-06-22 22:44:11,620.620 INFO    ] 2026-06-22 22:44:11
[2026-06-22 22:44:11,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:44:11,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:44:11,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:44:12,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:44:12,101.101 INFO    ] time= 22/06/2026 22:44:12
[2026-06-22 22:44:12,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:44:12,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:44:12,257.257 INFO    ] No existing commands found in stream
[2026-06-22 22:44:17,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:44:17,282.282 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-22 22:44:18,370.370 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:44:18,371.371 INFO    ] Checking for system updates...
[2026-06-22 22:44:18,392.392 INFO    ] 200
[2026-06-22 22:44:18,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:44:18,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:44:18,426.426 INFO    ] No update needed
[2026-06-22 22:44:18,427.427 INFO    ] Checking for camera pi updates...
[2026-06-22 22:44:18,447.447 INFO    ] 200
[2026-06-22 22:44:18,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:44:18,483.483 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:44:18,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:44:18,569.569 INFO    ] No camera update needed
[2026-06-22 22:44:18,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:44:18,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:44:18,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:44:18,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:44:20,626.626 INFO    ] ================================================
[2026-06-22 22:44:20,641.641 INFO    ] Launching Daemon at Mon Jun 22 22:44:20 IST 2026
[2026-06-22 22:44:20,652.652 INFO    ] ================================================
[2026-06-22 22:44:21,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:44:21
[2026-06-22 22:44:21,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:44:21,992.992 INFO    ] Initializing speech engine...
[2026-06-22 22:44:22,002.002 INFO    ] 2026-06-22 22:44:21
[2026-06-22 22:44:22,268.268 INFO    ] 2026-06-22 22:44:22
[2026-06-22 22:44:22,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:44:22,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:44:22,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:44:22,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:44:22,725.725 INFO    ] time= 22/06/2026 22:44:22
[2026-06-22 22:44:22,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:44:22,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:44:22,875.875 INFO    ] No existing commands found in stream
[2026-06-22 22:44:27,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:44:27,897.897 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-22 22:44:31,229.229 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:44:31,232.232 INFO    ] Checking for system updates...
[2026-06-22 22:44:31,268.268 INFO    ] 200
[2026-06-22 22:44:31,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:44:31,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:44:31,331.331 INFO    ] No update needed
[2026-06-22 22:44:31,333.333 INFO    ] Checking for camera pi updates...
[2026-06-22 22:44:31,367.367 INFO    ] 200
[2026-06-22 22:44:31,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:44:31,414.414 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:44:31,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:44:31,520.520 INFO    ] No camera update needed
[2026-06-22 22:44:31,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:44:31,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:44:31,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:44:31,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:44:33,579.579 INFO    ] ================================================
[2026-06-22 22:44:33,594.594 INFO    ] Launching Daemon at Mon Jun 22 22:44:33 IST 2026
[2026-06-22 22:44:33,605.605 INFO    ] ================================================
[2026-06-22 22:44:34,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:44:34
[2026-06-22 22:44:34,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:44:35,187.187 INFO    ] Initializing speech engine...
[2026-06-22 22:44:35,201.201 INFO    ] 2026-06-22 22:44:35
[2026-06-22 22:44:35,477.477 INFO    ] 2026-06-22 22:44:35
[2026-06-22 22:44:35,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:44:35,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:44:35,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:44:35,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:44:35,929.929 INFO    ] time= 22/06/2026 22:44:35
[2026-06-22 22:44:35,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:44:35,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:44:36,084.084 INFO    ] No existing commands found in stream
[2026-06-22 22:44:41,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:44:41,112.112 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-22 22:44:42,648.648 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:44:42,650.650 INFO    ] Checking for system updates...
[2026-06-22 22:44:42,673.673 INFO    ] 200
[2026-06-22 22:44:42,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:44:42,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:44:42,728.728 INFO    ] No update needed
[2026-06-22 22:44:42,731.731 INFO    ] Checking for camera pi updates...
[2026-06-22 22:44:42,765.765 INFO    ] 200
[2026-06-22 22:44:42,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:44:42,807.807 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:44:42,910.910 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:44:42,912.912 INFO    ] No camera update needed
[2026-06-22 22:44:42,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:44:42,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:44:42,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:44:42,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:44:44,969.969 INFO    ] ================================================
[2026-06-22 22:44:44,985.985 INFO    ] Launching Daemon at Mon Jun 22 22:44:44 IST 2026
[2026-06-22 22:44:45,995.995 INFO    ] ================================================
[2026-06-22 22:44:45,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:44:45
[2026-06-22 22:44:46,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:44:46,446.446 INFO    ] Initializing speech engine...
[2026-06-22 22:44:46,456.456 INFO    ] 2026-06-22 22:44:46
[2026-06-22 22:44:46,706.706 INFO    ] 2026-06-22 22:44:46
[2026-06-22 22:44:46,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:44:46,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:44:46,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:44:47,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:44:47,076.076 INFO    ] time= 22/06/2026 22:44:47
[2026-06-22 22:44:47,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:44:47,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:44:47,235.235 INFO    ] No existing commands found in stream
[2026-06-22 22:44:52,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:44:52,268.268 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-22 22:44:56,234.234 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:44:56,236.236 INFO    ] Checking for system updates...
[2026-06-22 22:44:56,257.257 INFO    ] 200
[2026-06-22 22:44:56,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:44:56,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:44:56,290.290 INFO    ] No update needed
[2026-06-22 22:44:56,291.291 INFO    ] Checking for camera pi updates...
[2026-06-22 22:44:56,321.321 INFO    ] 200
[2026-06-22 22:44:56,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:44:56,365.365 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:44:56,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:44:56,451.451 INFO    ] No camera update needed
[2026-06-22 22:44:56,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:44:56,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:44:56,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:44:56,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:44:58,505.505 INFO    ] ================================================
[2026-06-22 22:44:58,520.520 INFO    ] Launching Daemon at Mon Jun 22 22:44:58 IST 2026
[2026-06-22 22:44:58,531.531 INFO    ] ================================================
[2026-06-22 22:44:59,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:44:59
[2026-06-22 22:44:59,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:45:00,014.014 INFO    ] Initializing speech engine...
[2026-06-22 22:45:00,022.022 INFO    ] 2026-06-22 22:45:00
[2026-06-22 22:45:00,291.291 INFO    ] 2026-06-22 22:45:00
[2026-06-22 22:45:00,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:45:00,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:45:00,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:45:00,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:45:00,775.775 INFO    ] time= 22/06/2026 22:45:00
[2026-06-22 22:45:00,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:45:00,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:45:00,996.996 INFO    ] No existing commands found in stream
[2026-06-22 22:45:06,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:45:06,013.013 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-22 22:45:11,249.249 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:45:11,253.253 INFO    ] Checking for system updates...
[2026-06-22 22:45:11,297.297 INFO    ] 200
[2026-06-22 22:45:11,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:45:11,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:45:11,364.364 INFO    ] No update needed
[2026-06-22 22:45:11,367.367 INFO    ] Checking for camera pi updates...
[2026-06-22 22:45:11,402.402 INFO    ] 200
[2026-06-22 22:45:11,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:45:11,446.446 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:45:11,514.514 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:45:11,516.516 INFO    ] No camera update needed
[2026-06-22 22:45:11,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:45:11,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:45:11,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:45:11,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:45:13,572.572 INFO    ] ================================================
[2026-06-22 22:45:13,587.587 INFO    ] Launching Daemon at Mon Jun 22 22:45:13 IST 2026
[2026-06-22 22:45:13,598.598 INFO    ] ================================================
[2026-06-22 22:45:14,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:45:14
[2026-06-22 22:45:14,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:45:15,126.126 INFO    ] Initializing speech engine...
[2026-06-22 22:45:15,140.140 INFO    ] 2026-06-22 22:45:15
[2026-06-22 22:45:15,455.455 INFO    ] 2026-06-22 22:45:15
[2026-06-22 22:45:15,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:45:15,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:45:15,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:45:15,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:45:15,981.981 INFO    ] time= 22/06/2026 22:45:15
[2026-06-22 22:45:16,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:45:16,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:45:16,143.143 INFO    ] No existing commands found in stream
[2026-06-22 22:45:21,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:45:21,170.170 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-22 22:45:23,366.366 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:45:23,369.369 INFO    ] Checking for system updates...
[2026-06-22 22:45:23,407.407 INFO    ] 200
[2026-06-22 22:45:23,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:45:23,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:45:23,466.466 INFO    ] No update needed
[2026-06-22 22:45:23,468.468 INFO    ] Checking for camera pi updates...
[2026-06-22 22:45:23,502.502 INFO    ] 200
[2026-06-22 22:45:23,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:45:23,551.551 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:45:23,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:45:23,661.661 INFO    ] No camera update needed
[2026-06-22 22:45:23,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:45:23,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:45:23,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:45:23,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:45:25,716.716 INFO    ] ================================================
[2026-06-22 22:45:25,731.731 INFO    ] Launching Daemon at Mon Jun 22 22:45:25 IST 2026
[2026-06-22 22:45:25,742.742 INFO    ] ================================================
[2026-06-22 22:45:26,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:45:26
[2026-06-22 22:45:26,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:45:27,096.096 INFO    ] Initializing speech engine...
[2026-06-22 22:45:27,103.103 INFO    ] 2026-06-22 22:45:27
[2026-06-22 22:45:27,404.404 INFO    ] 2026-06-22 22:45:27
[2026-06-22 22:45:27,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:45:27,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:45:27,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:45:27,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:45:27,783.783 INFO    ] time= 22/06/2026 22:45:27
[2026-06-22 22:45:27,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:45:27,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:45:27,909.909 INFO    ] No existing commands found in stream
[2026-06-22 22:45:32,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:45:32,926.926 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-22 22:45:37,150.150 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:45:37,152.152 INFO    ] Checking for system updates...
[2026-06-22 22:45:37,193.193 INFO    ] 200
[2026-06-22 22:45:37,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:45:37,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:45:37,258.258 INFO    ] No update needed
[2026-06-22 22:45:37,260.260 INFO    ] Checking for camera pi updates...
[2026-06-22 22:45:37,294.294 INFO    ] 200
[2026-06-22 22:45:37,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:45:37,337.337 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:45:37,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:45:37,414.414 INFO    ] No camera update needed
[2026-06-22 22:45:37,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:45:37,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:45:37,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:45:37,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:45:39,469.469 INFO    ] ================================================
[2026-06-22 22:45:39,488.488 INFO    ] Launching Daemon at Mon Jun 22 22:45:39 IST 2026
[2026-06-22 22:45:39,499.499 INFO    ] ================================================
[2026-06-22 22:45:40,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:45:40
[2026-06-22 22:45:40,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:45:41,012.012 INFO    ] Initializing speech engine...
[2026-06-22 22:45:41,025.025 INFO    ] 2026-06-22 22:45:41
[2026-06-22 22:45:41,293.293 INFO    ] 2026-06-22 22:45:41
[2026-06-22 22:45:41,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:45:42,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:45:42,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:45:42,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:45:42,989.989 INFO    ] time= 22/06/2026 22:45:42
[2026-06-22 22:45:43,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:45:43,042.042 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:45:43,105.105 INFO    ] No existing commands found in stream
[2026-06-22 22:45:48,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:45:48,120.120 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-22 22:45:52,329.329 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:45:52,331.331 INFO    ] Checking for system updates...
[2026-06-22 22:45:52,352.352 INFO    ] 200
[2026-06-22 22:45:52,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:45:52,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:45:52,386.386 INFO    ] No update needed
[2026-06-22 22:45:52,387.387 INFO    ] Checking for camera pi updates...
[2026-06-22 22:45:52,418.418 INFO    ] 200
[2026-06-22 22:45:52,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:45:52,479.479 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:45:52,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:45:52,582.582 INFO    ] No camera update needed
[2026-06-22 22:45:52,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:45:52,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:45:52,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:45:52,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:45:54,640.640 INFO    ] ================================================
[2026-06-22 22:45:54,655.655 INFO    ] Launching Daemon at Mon Jun 22 22:45:54 IST 2026
[2026-06-22 22:45:54,666.666 INFO    ] ================================================
[2026-06-22 22:45:55,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:45:55
[2026-06-22 22:45:55,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:45:56,100.100 INFO    ] Initializing speech engine...
[2026-06-22 22:45:56,109.109 INFO    ] 2026-06-22 22:45:56
[2026-06-22 22:45:56,357.357 INFO    ] 2026-06-22 22:45:56
[2026-06-22 22:45:56,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:45:56,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:45:56,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:45:56,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:45:56,831.831 INFO    ] time= 22/06/2026 22:45:56
[2026-06-22 22:45:56,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:45:56,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:45:57,053.053 INFO    ] No existing commands found in stream
[2026-06-22 22:46:02,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:46:02,081.081 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-22 22:46:04,340.340 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:46:04,342.342 INFO    ] Checking for system updates...
[2026-06-22 22:46:04,379.379 INFO    ] 200
[2026-06-22 22:46:04,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:46:04,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:46:04,442.442 INFO    ] No update needed
[2026-06-22 22:46:04,445.445 INFO    ] Checking for camera pi updates...
[2026-06-22 22:46:04,482.482 INFO    ] 200
[2026-06-22 22:46:04,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:46:04,525.525 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:46:04,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:46:04,629.629 INFO    ] No camera update needed
[2026-06-22 22:46:04,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:46:04,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:46:04,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:46:04,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:46:06,686.686 INFO    ] ================================================
[2026-06-22 22:46:06,705.705 INFO    ] Launching Daemon at Mon Jun 22 22:46:06 IST 2026
[2026-06-22 22:46:06,716.716 INFO    ] ================================================
[2026-06-22 22:46:07,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:46:07
[2026-06-22 22:46:08,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:46:08,338.338 INFO    ] Initializing speech engine...
[2026-06-22 22:46:08,351.351 INFO    ] 2026-06-22 22:46:08
[2026-06-22 22:46:08,631.631 INFO    ] 2026-06-22 22:46:08
[2026-06-22 22:46:08,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:46:08,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:46:08,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:46:09,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:46:09,183.183 INFO    ] time= 22/06/2026 22:46:09
[2026-06-22 22:46:09,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:46:09,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:46:09,315.315 INFO    ] No existing commands found in stream
[2026-06-22 22:46:14,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:46:14,350.350 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-22 22:46:18,749.749 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:46:18,751.751 INFO    ] Checking for system updates...
[2026-06-22 22:46:18,772.772 INFO    ] 200
[2026-06-22 22:46:18,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:46:18,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:46:18,810.810 INFO    ] No update needed
[2026-06-22 22:46:18,812.812 INFO    ] Checking for camera pi updates...
[2026-06-22 22:46:18,843.843 INFO    ] 200
[2026-06-22 22:46:18,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:46:18,888.888 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:46:18,944.944 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:46:18,947.947 INFO    ] No camera update needed
[2026-06-22 22:46:18,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:46:18,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:46:18,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:46:18,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:46:21,006.006 INFO    ] ================================================
[2026-06-22 22:46:21,022.022 INFO    ] Launching Daemon at Mon Jun 22 22:46:21 IST 2026
[2026-06-22 22:46:21,033.033 INFO    ] ================================================
[2026-06-22 22:46:21,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:46:21
[2026-06-22 22:46:22,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:46:22,633.633 INFO    ] Initializing speech engine...
[2026-06-22 22:46:22,643.643 INFO    ] 2026-06-22 22:46:22
[2026-06-22 22:46:22,914.914 INFO    ] 2026-06-22 22:46:22
[2026-06-22 22:46:22,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:46:23,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:46:23,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:46:23,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:46:23,401.401 INFO    ] time= 22/06/2026 22:46:23
[2026-06-22 22:46:23,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:46:23,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:46:23,612.612 INFO    ] No existing commands found in stream
[2026-06-22 22:46:28,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:46:28,647.647 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-22 22:46:29,949.949 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:46:29,950.950 INFO    ] Checking for system updates...
[2026-06-22 22:46:29,971.971 INFO    ] 200
[2026-06-22 22:46:29,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:46:30,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:46:30,009.009 INFO    ] No update needed
[2026-06-22 22:46:30,010.010 INFO    ] Checking for camera pi updates...
[2026-06-22 22:46:30,039.039 INFO    ] 200
[2026-06-22 22:46:30,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:46:30,083.083 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:46:30,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:46:30,172.172 INFO    ] No camera update needed
[2026-06-22 22:46:30,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:46:30,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:46:30,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:46:30,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:46:32,233.233 INFO    ] ================================================
[2026-06-22 22:46:32,252.252 INFO    ] Launching Daemon at Mon Jun 22 22:46:32 IST 2026
[2026-06-22 22:46:32,264.264 INFO    ] ================================================
[2026-06-22 22:46:32,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:46:32
[2026-06-22 22:46:33,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:46:33,855.855 INFO    ] Initializing speech engine...
[2026-06-22 22:46:33,866.866 INFO    ] 2026-06-22 22:46:33
[2026-06-22 22:46:34,114.114 INFO    ] 2026-06-22 22:46:34
[2026-06-22 22:46:34,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:46:34,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:46:34,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:46:34,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:46:34,568.568 INFO    ] time= 22/06/2026 22:46:34
[2026-06-22 22:46:34,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:46:34,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:46:34,812.812 INFO    ] No existing commands found in stream
[2026-06-22 22:46:39,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:46:39,843.843 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-22 22:46:43,893.893 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:46:43,896.896 INFO    ] Checking for system updates...
[2026-06-22 22:46:43,937.937 INFO    ] 200
[2026-06-22 22:46:43,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:46:44,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:46:44,002.002 INFO    ] No update needed
[2026-06-22 22:46:44,005.005 INFO    ] Checking for camera pi updates...
[2026-06-22 22:46:44,038.038 INFO    ] 200
[2026-06-22 22:46:44,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:46:44,087.087 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:46:44,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:46:44,175.175 INFO    ] No camera update needed
[2026-06-22 22:46:44,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:46:44,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:46:44,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:46:44,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:46:46,231.231 INFO    ] ================================================
[2026-06-22 22:46:46,247.247 INFO    ] Launching Daemon at Mon Jun 22 22:46:46 IST 2026
[2026-06-22 22:46:46,258.258 INFO    ] ================================================
[2026-06-22 22:46:46,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:46:46
[2026-06-22 22:46:47,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:46:47,773.773 INFO    ] Initializing speech engine...
[2026-06-22 22:46:47,781.781 INFO    ] 2026-06-22 22:46:47
[2026-06-22 22:46:48,044.044 INFO    ] 2026-06-22 22:46:48
[2026-06-22 22:46:48,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:46:48,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:46:48,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:46:48,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:46:48,462.462 INFO    ] time= 22/06/2026 22:46:48
[2026-06-22 22:46:48,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:46:48,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:46:48,654.654 INFO    ] No existing commands found in stream
[2026-06-22 22:46:53,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:46:53,688.688 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-22 22:46:56,540.540 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:46:56,543.543 INFO    ] Checking for system updates...
[2026-06-22 22:46:56,584.584 INFO    ] 200
[2026-06-22 22:46:56,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:46:56,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:46:56,650.650 INFO    ] No update needed
[2026-06-22 22:46:56,652.652 INFO    ] Checking for camera pi updates...
[2026-06-22 22:46:56,690.690 INFO    ] 200
[2026-06-22 22:46:56,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:46:56,733.733 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:46:56,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:46:56,833.833 INFO    ] No camera update needed
[2026-06-22 22:46:56,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:46:56,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:46:56,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:46:56,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:46:58,894.894 INFO    ] ================================================
[2026-06-22 22:46:58,910.910 INFO    ] Launching Daemon at Mon Jun 22 22:46:58 IST 2026
[2026-06-22 22:46:58,921.921 INFO    ] ================================================
[2026-06-22 22:46:59,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:46:59
[2026-06-22 22:47:00,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:47:00,347.347 INFO    ] Initializing speech engine...
[2026-06-22 22:47:00,354.354 INFO    ] 2026-06-22 22:47:00
[2026-06-22 22:47:00,612.612 INFO    ] 2026-06-22 22:47:00
[2026-06-22 22:47:00,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:47:00,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:47:00,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:47:01,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:47:01,036.036 INFO    ] time= 22/06/2026 22:47:01
[2026-06-22 22:47:01,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:47:01,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:47:01,223.223 INFO    ] No existing commands found in stream
[2026-06-22 22:47:06,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:47:06,251.251 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-22 22:47:09,959.959 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:47:09,962.962 INFO    ] Checking for system updates...
[2026-06-22 22:47:09,998.998 INFO    ] 200
[2026-06-22 22:47:10,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:47:10,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:47:10,057.057 INFO    ] No update needed
[2026-06-22 22:47:10,059.059 INFO    ] Checking for camera pi updates...
[2026-06-22 22:47:10,093.093 INFO    ] 200
[2026-06-22 22:47:10,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:47:10,138.138 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:47:10,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:47:10,319.319 INFO    ] No camera update needed
[2026-06-22 22:47:10,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:47:10,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:47:10,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:47:10,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:47:12,378.378 INFO    ] ================================================
[2026-06-22 22:47:12,394.394 INFO    ] Launching Daemon at Mon Jun 22 22:47:12 IST 2026
[2026-06-22 22:47:12,405.405 INFO    ] ================================================
[2026-06-22 22:47:13,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:47:13
[2026-06-22 22:47:13,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:47:14,016.016 INFO    ] Initializing speech engine...
[2026-06-22 22:47:14,024.024 INFO    ] 2026-06-22 22:47:14
[2026-06-22 22:47:14,294.294 INFO    ] 2026-06-22 22:47:14
[2026-06-22 22:47:14,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:47:14,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:47:14,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:47:14,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:47:14,887.887 INFO    ] time= 22/06/2026 22:47:14
[2026-06-22 22:47:14,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:47:14,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:47:15,015.015 INFO    ] No existing commands found in stream
[2026-06-22 22:47:20,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:47:20,049.049 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-22 22:47:23,969.969 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:47:23,970.970 INFO    ] Checking for system updates...
[2026-06-22 22:47:23,994.994 INFO    ] 200
[2026-06-22 22:47:23,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:47:24,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:47:24,031.031 INFO    ] No update needed
[2026-06-22 22:47:24,032.032 INFO    ] Checking for camera pi updates...
[2026-06-22 22:47:24,055.055 INFO    ] 200
[2026-06-22 22:47:24,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:47:24,082.082 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:47:24,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:47:24,188.188 INFO    ] No camera update needed
[2026-06-22 22:47:24,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:47:24,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:47:24,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:47:24,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:47:26,246.246 INFO    ] ================================================
[2026-06-22 22:47:26,262.262 INFO    ] Launching Daemon at Mon Jun 22 22:47:26 IST 2026
[2026-06-22 22:47:26,273.273 INFO    ] ================================================
[2026-06-22 22:47:26,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:47:26
[2026-06-22 22:47:27,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:47:27,606.606 INFO    ] Initializing speech engine...
[2026-06-22 22:47:27,624.624 INFO    ] 2026-06-22 22:47:27
[2026-06-22 22:47:27,877.877 INFO    ] 2026-06-22 22:47:27
[2026-06-22 22:47:27,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:47:28,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:47:28,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:47:28,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:47:28,257.257 INFO    ] time= 22/06/2026 22:47:28
[2026-06-22 22:47:28,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:47:28,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:47:28,382.382 INFO    ] No existing commands found in stream
[2026-06-22 22:47:33,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:47:33,415.415 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-22 22:47:37,534.534 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:47:37,537.537 INFO    ] Checking for system updates...
[2026-06-22 22:47:37,573.573 INFO    ] 200
[2026-06-22 22:47:37,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:47:37,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:47:37,632.632 INFO    ] No update needed
[2026-06-22 22:47:37,634.634 INFO    ] Checking for camera pi updates...
[2026-06-22 22:47:37,669.669 INFO    ] 200
[2026-06-22 22:47:37,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:47:37,712.712 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:47:37,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:47:37,819.819 INFO    ] No camera update needed
[2026-06-22 22:47:37,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:47:37,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:47:37,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:47:37,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:47:39,874.874 INFO    ] ================================================
[2026-06-22 22:47:39,890.890 INFO    ] Launching Daemon at Mon Jun 22 22:47:39 IST 2026
[2026-06-22 22:47:39,901.901 INFO    ] ================================================
[2026-06-22 22:47:40,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:47:40
[2026-06-22 22:47:41,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:47:41,372.372 INFO    ] Initializing speech engine...
[2026-06-22 22:47:41,381.381 INFO    ] 2026-06-22 22:47:41
[2026-06-22 22:47:41,629.629 INFO    ] 2026-06-22 22:47:41
[2026-06-22 22:47:41,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:47:44,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:47:44,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:47:45,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:47:45,565.565 INFO    ] time= 22/06/2026 22:47:45
[2026-06-22 22:47:45,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:47:45,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:47:45,620.620 INFO    ] No existing commands found in stream
[2026-06-22 22:47:50,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:47:50,632.632 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-22 22:47:54,087.087 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:47:54,090.090 INFO    ] Checking for system updates...
[2026-06-22 22:47:54,128.128 INFO    ] 200
[2026-06-22 22:47:54,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:47:54,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:47:54,194.194 INFO    ] No update needed
[2026-06-22 22:47:54,197.197 INFO    ] Checking for camera pi updates...
[2026-06-22 22:47:54,231.231 INFO    ] 200
[2026-06-22 22:47:54,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:47:54,275.275 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:47:54,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:47:54,380.380 INFO    ] No camera update needed
[2026-06-22 22:47:54,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:47:54,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:47:54,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:47:54,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:47:56,436.436 INFO    ] ================================================
[2026-06-22 22:47:56,451.451 INFO    ] Launching Daemon at Mon Jun 22 22:47:56 IST 2026
[2026-06-22 22:47:56,462.462 INFO    ] ================================================
[2026-06-22 22:47:57,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:47:57
[2026-06-22 22:47:57,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:47:57,885.885 INFO    ] Initializing speech engine...
[2026-06-22 22:47:57,893.893 INFO    ] 2026-06-22 22:47:57
[2026-06-22 22:47:58,159.159 INFO    ] 2026-06-22 22:47:58
[2026-06-22 22:47:58,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:47:58,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:47:58,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:47:58,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:47:58,624.624 INFO    ] time= 22/06/2026 22:47:58
[2026-06-22 22:47:58,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:47:58,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:47:58,849.849 INFO    ] No existing commands found in stream
[2026-06-22 22:48:03,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:48:03,871.871 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-22 22:48:07,673.673 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:48:07,674.674 INFO    ] Checking for system updates...
[2026-06-22 22:48:07,706.706 INFO    ] 200
[2026-06-22 22:48:07,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:48:07,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:48:07,765.765 INFO    ] No update needed
[2026-06-22 22:48:07,767.767 INFO    ] Checking for camera pi updates...
[2026-06-22 22:48:07,805.805 INFO    ] 200
[2026-06-22 22:48:07,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:48:07,856.856 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:48:07,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:48:07,935.935 INFO    ] No camera update needed
[2026-06-22 22:48:07,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:48:07,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:48:07,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:48:07,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:48:09,990.990 INFO    ] ================================================
[2026-06-22 22:48:10,006.006 INFO    ] Launching Daemon at Mon Jun 22 22:48:10 IST 2026
[2026-06-22 22:48:10,017.017 INFO    ] ================================================
[2026-06-22 22:48:10,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:48:10
[2026-06-22 22:48:11,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:48:11,430.430 INFO    ] Initializing speech engine...
[2026-06-22 22:48:11,437.437 INFO    ] 2026-06-22 22:48:11
[2026-06-22 22:48:11,737.737 INFO    ] 2026-06-22 22:48:11
[2026-06-22 22:48:11,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:48:11,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:48:11,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:48:12,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:48:12,119.119 INFO    ] time= 22/06/2026 22:48:12
[2026-06-22 22:48:12,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:48:12,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:48:12,248.248 INFO    ] No existing commands found in stream
[2026-06-22 22:48:17,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:48:17,287.287 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-22 22:48:18,441.441 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:48:18,443.443 INFO    ] Checking for system updates...
[2026-06-22 22:48:18,481.481 INFO    ] 200
[2026-06-22 22:48:18,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:48:18,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:48:18,548.548 INFO    ] No update needed
[2026-06-22 22:48:18,551.551 INFO    ] Checking for camera pi updates...
[2026-06-22 22:48:18,587.587 INFO    ] 200
[2026-06-22 22:48:18,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:48:18,637.637 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:48:18,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:48:18,725.725 INFO    ] No camera update needed
[2026-06-22 22:48:18,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:48:18,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:48:18,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:48:18,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:48:20,782.782 INFO    ] ================================================
[2026-06-22 22:48:20,797.797 INFO    ] Launching Daemon at Mon Jun 22 22:48:20 IST 2026
[2026-06-22 22:48:20,808.808 INFO    ] ================================================
[2026-06-22 22:48:21,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:48:21
[2026-06-22 22:48:21,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:48:22,236.236 INFO    ] Initializing speech engine...
[2026-06-22 22:48:22,245.245 INFO    ] 2026-06-22 22:48:22
[2026-06-22 22:48:22,500.500 INFO    ] 2026-06-22 22:48:22
[2026-06-22 22:48:22,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:48:22,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:48:22,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:48:23,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:48:23,052.052 INFO    ] time= 22/06/2026 22:48:23
[2026-06-22 22:48:23,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:48:23,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:48:23,221.221 INFO    ] No existing commands found in stream
[2026-06-22 22:48:28,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:48:28,254.254 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-22 22:48:29,946.946 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:48:29,948.948 INFO    ] Checking for system updates...
[2026-06-22 22:48:29,984.984 INFO    ] 200
[2026-06-22 22:48:29,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:48:30,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:48:30,049.049 INFO    ] No update needed
[2026-06-22 22:48:30,051.051 INFO    ] Checking for camera pi updates...
[2026-06-22 22:48:30,089.089 INFO    ] 200
[2026-06-22 22:48:30,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:48:30,133.133 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:48:30,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:48:30,227.227 INFO    ] No camera update needed
[2026-06-22 22:48:30,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:48:30,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:48:30,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:48:30,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:48:32,284.284 INFO    ] ================================================
[2026-06-22 22:48:32,301.301 INFO    ] Launching Daemon at Mon Jun 22 22:48:32 IST 2026
[2026-06-22 22:48:32,313.313 INFO    ] ================================================
[2026-06-22 22:48:32,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:48:32
[2026-06-22 22:48:33,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:48:33,777.777 INFO    ] Initializing speech engine...
[2026-06-22 22:48:33,790.790 INFO    ] 2026-06-22 22:48:33
[2026-06-22 22:48:34,054.054 INFO    ] 2026-06-22 22:48:34
[2026-06-22 22:48:34,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:48:34,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:48:34,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:48:34,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:48:34,496.496 INFO    ] time= 22/06/2026 22:48:34
[2026-06-22 22:48:34,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:48:34,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:48:34,681.681 INFO    ] No existing commands found in stream
[2026-06-22 22:48:39,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:48:39,696.696 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-22 22:48:41,815.815 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:48:41,817.817 INFO    ] Checking for system updates...
[2026-06-22 22:48:41,837.837 INFO    ] 200
[2026-06-22 22:48:41,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:48:41,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:48:41,873.873 INFO    ] No update needed
[2026-06-22 22:48:41,875.875 INFO    ] Checking for camera pi updates...
[2026-06-22 22:48:41,908.908 INFO    ] 200
[2026-06-22 22:48:41,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:48:41,954.954 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:48:42,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:48:42,038.038 INFO    ] No camera update needed
[2026-06-22 22:48:42,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:48:42,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:48:42,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:48:42,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:48:44,098.098 INFO    ] ================================================
[2026-06-22 22:48:44,113.113 INFO    ] Launching Daemon at Mon Jun 22 22:48:44 IST 2026
[2026-06-22 22:48:44,123.123 INFO    ] ================================================
[2026-06-22 22:48:44,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:48:44
[2026-06-22 22:48:45,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:48:45,488.488 INFO    ] Initializing speech engine...
[2026-06-22 22:48:45,497.497 INFO    ] 2026-06-22 22:48:45
[2026-06-22 22:48:45,791.791 INFO    ] 2026-06-22 22:48:45
[2026-06-22 22:48:45,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:48:46,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:48:46,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:48:46,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:48:47,042.042 INFO    ] time= 22/06/2026 22:48:47
[2026-06-22 22:48:47,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:48:47,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:48:47,172.172 INFO    ] No existing commands found in stream
[2026-06-22 22:48:52,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:48:52,185.185 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-22 22:48:56,293.293 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:48:56,295.295 INFO    ] Checking for system updates...
[2026-06-22 22:48:56,334.334 INFO    ] 200
[2026-06-22 22:48:56,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:48:56,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:48:56,393.393 INFO    ] No update needed
[2026-06-22 22:48:56,395.395 INFO    ] Checking for camera pi updates...
[2026-06-22 22:48:56,429.429 INFO    ] 200
[2026-06-22 22:48:56,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:48:56,473.473 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:48:56,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:48:56,580.580 INFO    ] No camera update needed
[2026-06-22 22:48:56,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:48:56,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:48:56,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:48:56,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:48:58,635.635 INFO    ] ================================================
[2026-06-22 22:48:58,651.651 INFO    ] Launching Daemon at Mon Jun 22 22:48:58 IST 2026
[2026-06-22 22:48:58,661.661 INFO    ] ================================================
[2026-06-22 22:48:59,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:48:59
[2026-06-22 22:48:59,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:49:00,096.096 INFO    ] Initializing speech engine...
[2026-06-22 22:49:00,105.105 INFO    ] 2026-06-22 22:49:00
[2026-06-22 22:49:00,355.355 INFO    ] 2026-06-22 22:49:00
[2026-06-22 22:49:00,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:49:00,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:49:00,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:49:00,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:49:00,730.730 INFO    ] time= 22/06/2026 22:49:00
[2026-06-22 22:49:00,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:49:00,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:49:00,856.856 INFO    ] No existing commands found in stream
[2026-06-22 22:49:05,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:49:05,869.869 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-22 22:49:10,141.141 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:49:10,142.142 INFO    ] Checking for system updates...
[2026-06-22 22:49:10,164.164 INFO    ] 200
[2026-06-22 22:49:10,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:49:10,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:49:10,199.199 INFO    ] No update needed
[2026-06-22 22:49:10,200.200 INFO    ] Checking for camera pi updates...
[2026-06-22 22:49:10,220.220 INFO    ] 200
[2026-06-22 22:49:10,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:49:10,250.250 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:49:10,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:49:10,329.329 INFO    ] No camera update needed
[2026-06-22 22:49:10,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:49:10,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:49:10,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:49:10,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:49:12,387.387 INFO    ] ================================================
[2026-06-22 22:49:12,403.403 INFO    ] Launching Daemon at Mon Jun 22 22:49:12 IST 2026
[2026-06-22 22:49:12,414.414 INFO    ] ================================================
[2026-06-22 22:49:12,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:49:12
[2026-06-22 22:49:13,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:49:13,868.868 INFO    ] Initializing speech engine...
[2026-06-22 22:49:13,893.893 INFO    ] 2026-06-22 22:49:13
[2026-06-22 22:49:14,168.168 INFO    ] 2026-06-22 22:49:14
[2026-06-22 22:49:14,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:49:16,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:49:16,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:49:16,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:49:16,391.391 INFO    ] time= 22/06/2026 22:49:16
[2026-06-22 22:49:16,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:49:16,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:49:16,467.467 INFO    ] No existing commands found in stream
[2026-06-22 22:49:21,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:49:21,481.481 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-22 22:49:22,821.821 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:49:22,824.824 INFO    ] Checking for system updates...
[2026-06-22 22:49:22,865.865 INFO    ] 200
[2026-06-22 22:49:22,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:49:22,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:49:22,925.925 INFO    ] No update needed
[2026-06-22 22:49:22,928.928 INFO    ] Checking for camera pi updates...
[2026-06-22 22:49:22,963.963 INFO    ] 200
[2026-06-22 22:49:22,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:49:23,007.007 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:49:23,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:49:23,194.194 INFO    ] No camera update needed
[2026-06-22 22:49:23,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:49:23,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:49:23,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:49:23,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:49:25,257.257 INFO    ] ================================================
[2026-06-22 22:49:25,273.273 INFO    ] Launching Daemon at Mon Jun 22 22:49:25 IST 2026
[2026-06-22 22:49:25,284.284 INFO    ] ================================================
[2026-06-22 22:49:25,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:49:25
[2026-06-22 22:49:26,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:49:26,698.698 INFO    ] Initializing speech engine...
[2026-06-22 22:49:26,704.704 INFO    ] 2026-06-22 22:49:26
[2026-06-22 22:49:26,995.995 INFO    ] 2026-06-22 22:49:26
[2026-06-22 22:49:27,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:49:27,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:49:27,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:49:27,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:49:27,395.395 INFO    ] time= 22/06/2026 22:49:27
[2026-06-22 22:49:27,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:49:27,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:49:27,587.587 INFO    ] No existing commands found in stream
[2026-06-22 22:49:32,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:49:32,603.603 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-22 22:49:36,195.195 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:49:36,197.197 INFO    ] Checking for system updates...
[2026-06-22 22:49:36,234.234 INFO    ] 200
[2026-06-22 22:49:36,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:49:36,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:49:36,292.292 INFO    ] No update needed
[2026-06-22 22:49:36,294.294 INFO    ] Checking for camera pi updates...
[2026-06-22 22:49:36,332.332 INFO    ] 200
[2026-06-22 22:49:36,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:49:36,380.380 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:49:36,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:49:36,433.433 INFO    ] No camera update needed
[2026-06-22 22:49:36,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:49:36,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:49:36,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:49:36,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:49:38,491.491 INFO    ] ================================================
[2026-06-22 22:49:38,507.507 INFO    ] Launching Daemon at Mon Jun 22 22:49:38 IST 2026
[2026-06-22 22:49:38,518.518 INFO    ] ================================================
[2026-06-22 22:49:39,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:49:39
[2026-06-22 22:49:39,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:49:40,013.013 INFO    ] Initializing speech engine...
[2026-06-22 22:49:40,021.021 INFO    ] 2026-06-22 22:49:40
[2026-06-22 22:49:40,290.290 INFO    ] 2026-06-22 22:49:40
[2026-06-22 22:49:40,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:49:40,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:49:40,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:49:40,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:49:40,669.669 INFO    ] time= 22/06/2026 22:49:40
[2026-06-22 22:49:40,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:49:40,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:49:40,869.869 INFO    ] No existing commands found in stream
[2026-06-22 22:49:45,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:49:45,895.895 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-22 22:49:49,807.807 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:49:49,810.810 INFO    ] Checking for system updates...
[2026-06-22 22:49:49,847.847 INFO    ] 200
[2026-06-22 22:49:49,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:49:49,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:49:49,913.913 INFO    ] No update needed
[2026-06-22 22:49:49,915.915 INFO    ] Checking for camera pi updates...
[2026-06-22 22:49:49,953.953 INFO    ] 200
[2026-06-22 22:49:49,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:49:49,999.999 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:49:50,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:49:50,100.100 INFO    ] No camera update needed
[2026-06-22 22:49:50,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:49:50,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:49:50,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:49:50,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:49:52,159.159 INFO    ] ================================================
[2026-06-22 22:49:52,175.175 INFO    ] Launching Daemon at Mon Jun 22 22:49:52 IST 2026
[2026-06-22 22:49:52,187.187 INFO    ] ================================================
[2026-06-22 22:49:52,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:49:52
[2026-06-22 22:49:53,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:49:53,794.794 INFO    ] Initializing speech engine...
[2026-06-22 22:49:53,801.801 INFO    ] 2026-06-22 22:49:53
[2026-06-22 22:49:54,086.086 INFO    ] 2026-06-22 22:49:54
[2026-06-22 22:49:54,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:49:54,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:49:54,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:49:54,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:49:54,549.549 INFO    ] time= 22/06/2026 22:49:54
[2026-06-22 22:49:54,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:49:54,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:49:54,765.765 INFO    ] No existing commands found in stream
[2026-06-22 22:49:59,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:49:59,791.791 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-22 22:50:00,527.527 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:50:00,530.530 INFO    ] Checking for system updates...
[2026-06-22 22:50:00,567.567 INFO    ] 200
[2026-06-22 22:50:00,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:50:00,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:50:00,631.631 INFO    ] No update needed
[2026-06-22 22:50:00,634.634 INFO    ] Checking for camera pi updates...
[2026-06-22 22:50:00,668.668 INFO    ] 200
[2026-06-22 22:50:00,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:50:00,713.713 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:50:00,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:50:00,802.802 INFO    ] No camera update needed
[2026-06-22 22:50:00,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:50:00,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:50:00,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:50:00,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:50:02,865.865 INFO    ] ================================================
[2026-06-22 22:50:02,890.890 INFO    ] Launching Daemon at Mon Jun 22 22:50:02 IST 2026
[2026-06-22 22:50:02,912.912 INFO    ] ================================================
[2026-06-22 22:50:03,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:50:03
[2026-06-22 22:50:04,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:50:04,515.515 INFO    ] Initializing speech engine...
[2026-06-22 22:50:04,524.524 INFO    ] 2026-06-22 22:50:04
[2026-06-22 22:50:04,775.775 INFO    ] 2026-06-22 22:50:04
[2026-06-22 22:50:04,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:50:05,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:50:05,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:50:05,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:50:05,286.286 INFO    ] time= 22/06/2026 22:50:05
[2026-06-22 22:50:05,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:50:05,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:50:05,484.484 INFO    ] No existing commands found in stream
[2026-06-22 22:50:10,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:50:10,515.515 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-22 22:50:13,061.061 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:50:13,063.063 INFO    ] Checking for system updates...
[2026-06-22 22:50:13,103.103 INFO    ] 200
[2026-06-22 22:50:13,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:50:13,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:50:13,160.160 INFO    ] No update needed
[2026-06-22 22:50:13,162.162 INFO    ] Checking for camera pi updates...
[2026-06-22 22:50:13,196.196 INFO    ] 200
[2026-06-22 22:50:13,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:50:13,240.240 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:50:13,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:50:13,316.316 INFO    ] No camera update needed
[2026-06-22 22:50:13,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:50:13,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:50:13,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:50:13,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:50:15,374.374 INFO    ] ================================================
[2026-06-22 22:50:15,391.391 INFO    ] Launching Daemon at Mon Jun 22 22:50:15 IST 2026
[2026-06-22 22:50:15,402.402 INFO    ] ================================================
[2026-06-22 22:50:15,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:50:15
[2026-06-22 22:50:16,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:50:16,829.829 INFO    ] Initializing speech engine...
[2026-06-22 22:50:16,843.843 INFO    ] 2026-06-22 22:50:16
[2026-06-22 22:50:17,123.123 INFO    ] 2026-06-22 22:50:17
[2026-06-22 22:50:17,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:50:17,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:50:17,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:50:18,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:50:18,218.218 INFO    ] time= 22/06/2026 22:50:18
[2026-06-22 22:50:18,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:50:18,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:50:18,367.367 INFO    ] No existing commands found in stream
[2026-06-22 22:50:23,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:50:23,387.387 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-22 22:50:25,367.367 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:50:25,369.369 INFO    ] Checking for system updates...
[2026-06-22 22:50:25,389.389 INFO    ] 200
[2026-06-22 22:50:25,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:50:25,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:50:25,434.434 INFO    ] No update needed
[2026-06-22 22:50:25,436.436 INFO    ] Checking for camera pi updates...
[2026-06-22 22:50:25,470.470 INFO    ] 200
[2026-06-22 22:50:25,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:50:25,517.517 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:50:25,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:50:25,606.606 INFO    ] No camera update needed
[2026-06-22 22:50:25,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:50:25,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:50:25,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:50:25,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:50:27,660.660 INFO    ] ================================================
[2026-06-22 22:50:27,676.676 INFO    ] Launching Daemon at Mon Jun 22 22:50:27 IST 2026
[2026-06-22 22:50:27,688.688 INFO    ] ================================================
[2026-06-22 22:50:28,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:50:28
[2026-06-22 22:50:28,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:50:29,111.111 INFO    ] Initializing speech engine...
[2026-06-22 22:50:29,124.124 INFO    ] 2026-06-22 22:50:29
[2026-06-22 22:50:29,403.403 INFO    ] 2026-06-22 22:50:29
[2026-06-22 22:50:29,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:50:29,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:50:29,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:50:29,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:50:29,990.990 INFO    ] time= 22/06/2026 22:50:29
[2026-06-22 22:50:29,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:50:30,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:50:30,192.192 INFO    ] No existing commands found in stream
[2026-06-22 22:50:35,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:50:35,219.219 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-22 22:50:36,163.163 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:50:36,165.165 INFO    ] Checking for system updates...
[2026-06-22 22:50:36,187.187 INFO    ] 200
[2026-06-22 22:50:36,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:50:36,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:50:36,230.230 INFO    ] No update needed
[2026-06-22 22:50:36,233.233 INFO    ] Checking for camera pi updates...
[2026-06-22 22:50:36,274.274 INFO    ] 200
[2026-06-22 22:50:36,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:50:36,318.318 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:50:36,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:50:36,393.393 INFO    ] No camera update needed
[2026-06-22 22:50:36,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:50:36,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:50:36,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:50:36,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:50:38,447.447 INFO    ] ================================================
[2026-06-22 22:50:38,463.463 INFO    ] Launching Daemon at Mon Jun 22 22:50:38 IST 2026
[2026-06-22 22:50:38,475.475 INFO    ] ================================================
[2026-06-22 22:50:39,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:50:39
[2026-06-22 22:50:39,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:50:40,018.018 INFO    ] Initializing speech engine...
[2026-06-22 22:50:40,032.032 INFO    ] 2026-06-22 22:50:40
[2026-06-22 22:50:40,309.309 INFO    ] 2026-06-22 22:50:40
[2026-06-22 22:50:40,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:50:40,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:50:40,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:50:40,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:50:40,801.801 INFO    ] time= 22/06/2026 22:50:40
[2026-06-22 22:50:40,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:50:40,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:50:40,997.997 INFO    ] No existing commands found in stream
[2026-06-22 22:50:46,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:50:46,017.017 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-22 22:50:48,253.253 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:50:48,256.256 INFO    ] Checking for system updates...
[2026-06-22 22:50:48,296.296 INFO    ] 200
[2026-06-22 22:50:48,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:50:48,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:50:48,354.354 INFO    ] No update needed
[2026-06-22 22:50:48,356.356 INFO    ] Checking for camera pi updates...
[2026-06-22 22:50:48,391.391 INFO    ] 200
[2026-06-22 22:50:48,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:50:48,438.438 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:50:48,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:50:48,531.531 INFO    ] No camera update needed
[2026-06-22 22:50:48,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:50:48,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:50:48,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:50:48,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:50:50,588.588 INFO    ] ================================================
[2026-06-22 22:50:50,603.603 INFO    ] Launching Daemon at Mon Jun 22 22:50:50 IST 2026
[2026-06-22 22:50:50,614.614 INFO    ] ================================================
[2026-06-22 22:50:51,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:50:51
[2026-06-22 22:50:51,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:50:51,987.987 INFO    ] Initializing speech engine...
[2026-06-22 22:50:51,998.998 INFO    ] 2026-06-22 22:50:51
[2026-06-22 22:50:52,259.259 INFO    ] 2026-06-22 22:50:52
[2026-06-22 22:50:52,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:50:52,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:50:52,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:50:52,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:50:52,804.804 INFO    ] time= 22/06/2026 22:50:52
[2026-06-22 22:50:52,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:50:52,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:50:52,957.957 INFO    ] No existing commands found in stream
[2026-06-22 22:50:57,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:50:57,976.976 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-22 22:50:58,921.921 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:50:58,924.924 INFO    ] Checking for system updates...
[2026-06-22 22:50:58,960.960 INFO    ] 200
[2026-06-22 22:50:58,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:50:59,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:50:59,025.025 INFO    ] No update needed
[2026-06-22 22:50:59,028.028 INFO    ] Checking for camera pi updates...
[2026-06-22 22:50:59,063.063 INFO    ] 200
[2026-06-22 22:50:59,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:50:59,107.107 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:50:59,199.199 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:50:59,202.202 INFO    ] No camera update needed
[2026-06-22 22:50:59,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:50:59,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:50:59,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:50:59,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:51:01,260.260 INFO    ] ================================================
[2026-06-22 22:51:01,278.278 INFO    ] Launching Daemon at Mon Jun 22 22:51:01 IST 2026
[2026-06-22 22:51:01,299.299 INFO    ] ================================================
[2026-06-22 22:51:02,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:51:02
[2026-06-22 22:51:02,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:51:03,023.023 INFO    ] Initializing speech engine...
[2026-06-22 22:51:03,035.035 INFO    ] 2026-06-22 22:51:03
[2026-06-22 22:51:03,296.296 INFO    ] 2026-06-22 22:51:03
[2026-06-22 22:51:03,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:51:03,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:51:03,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:51:03,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:51:03,649.649 INFO    ] time= 22/06/2026 22:51:03
[2026-06-22 22:51:03,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:51:03,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:51:03,768.768 INFO    ] No existing commands found in stream
[2026-06-22 22:51:08,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:51:08,807.807 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-22 22:51:12,629.629 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:51:12,632.632 INFO    ] Checking for system updates...
[2026-06-22 22:51:12,672.672 INFO    ] 200
[2026-06-22 22:51:12,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:51:12,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:51:12,737.737 INFO    ] No update needed
[2026-06-22 22:51:12,739.739 INFO    ] Checking for camera pi updates...
[2026-06-22 22:51:12,773.773 INFO    ] 200
[2026-06-22 22:51:12,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:51:12,820.820 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:51:12,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:51:12,904.904 INFO    ] No camera update needed
[2026-06-22 22:51:12,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:51:12,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:51:12,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:51:12,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:51:14,959.959 INFO    ] ================================================
[2026-06-22 22:51:14,975.975 INFO    ] Launching Daemon at Mon Jun 22 22:51:14 IST 2026
[2026-06-22 22:51:14,987.987 INFO    ] ================================================
[2026-06-22 22:51:15,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:51:15
[2026-06-22 22:51:16,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:51:16,419.419 INFO    ] Initializing speech engine...
[2026-06-22 22:51:16,428.428 INFO    ] 2026-06-22 22:51:16
[2026-06-22 22:51:16,674.674 INFO    ] 2026-06-22 22:51:16
[2026-06-22 22:51:16,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:51:18,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:51:18,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:51:18,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:51:18,454.454 INFO    ] time= 22/06/2026 22:51:18
[2026-06-22 22:51:18,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:51:18,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:51:18,601.601 INFO    ] No existing commands found in stream
[2026-06-22 22:51:23,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:51:23,615.615 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-22 22:51:24,825.825 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:51:24,828.828 INFO    ] Checking for system updates...
[2026-06-22 22:51:24,867.867 INFO    ] 200
[2026-06-22 22:51:24,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:51:24,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:51:24,925.925 INFO    ] No update needed
[2026-06-22 22:51:24,927.927 INFO    ] Checking for camera pi updates...
[2026-06-22 22:51:24,960.960 INFO    ] 200
[2026-06-22 22:51:24,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:51:25,005.005 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:51:25,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:51:25,094.094 INFO    ] No camera update needed
[2026-06-22 22:51:25,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:51:25,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:51:25,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:51:25,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:51:27,151.151 INFO    ] ================================================
[2026-06-22 22:51:27,167.167 INFO    ] Launching Daemon at Mon Jun 22 22:51:27 IST 2026
[2026-06-22 22:51:27,178.178 INFO    ] ================================================
[2026-06-22 22:51:27,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:51:27
[2026-06-22 22:51:28,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:51:28,591.591 INFO    ] Initializing speech engine...
[2026-06-22 22:51:28,611.611 INFO    ] 2026-06-22 22:51:28
[2026-06-22 22:51:28,861.861 INFO    ] 2026-06-22 22:51:28
[2026-06-22 22:51:28,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:51:29,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:51:29,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:51:29,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:51:29,238.238 INFO    ] time= 22/06/2026 22:51:29
[2026-06-22 22:51:29,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:51:29,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:51:29,435.435 INFO    ] No existing commands found in stream
[2026-06-22 22:51:34,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:51:34,453.453 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-22 22:51:36,076.076 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:51:36,079.079 INFO    ] Checking for system updates...
[2026-06-22 22:51:36,115.115 INFO    ] 200
[2026-06-22 22:51:36,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:51:36,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:51:36,178.178 INFO    ] No update needed
[2026-06-22 22:51:36,180.180 INFO    ] Checking for camera pi updates...
[2026-06-22 22:51:36,218.218 INFO    ] 200
[2026-06-22 22:51:36,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:51:36,264.264 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:51:36,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:51:36,366.366 INFO    ] No camera update needed
[2026-06-22 22:51:36,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:51:36,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:51:36,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:51:36,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:51:38,423.423 INFO    ] ================================================
[2026-06-22 22:51:38,438.438 INFO    ] Launching Daemon at Mon Jun 22 22:51:38 IST 2026
[2026-06-22 22:51:38,449.449 INFO    ] ================================================
[2026-06-22 22:51:39,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:51:39
[2026-06-22 22:51:39,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:51:39,923.923 INFO    ] Initializing speech engine...
[2026-06-22 22:51:39,928.928 INFO    ] 2026-06-22 22:51:39
[2026-06-22 22:51:40,175.175 INFO    ] 2026-06-22 22:51:40
[2026-06-22 22:51:40,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:51:40,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:51:40,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:51:40,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:51:40,688.688 INFO    ] time= 22/06/2026 22:51:40
[2026-06-22 22:51:40,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:51:40,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:51:40,891.891 INFO    ] No existing commands found in stream
[2026-06-22 22:51:45,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:51:45,917.917 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-22 22:51:49,930.930 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:51:49,931.931 INFO    ] Checking for system updates...
[2026-06-22 22:51:49,952.952 INFO    ] 200
[2026-06-22 22:51:49,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:51:50,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:51:50,019.019 INFO    ] No update needed
[2026-06-22 22:51:50,021.021 INFO    ] Checking for camera pi updates...
[2026-06-22 22:51:50,055.055 INFO    ] 200
[2026-06-22 22:51:50,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:51:50,098.098 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:51:50,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:51:50,182.182 INFO    ] No camera update needed
[2026-06-22 22:51:50,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:51:50,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:51:50,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:51:50,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:51:52,238.238 INFO    ] ================================================
[2026-06-22 22:51:52,253.253 INFO    ] Launching Daemon at Mon Jun 22 22:51:52 IST 2026
[2026-06-22 22:51:52,265.265 INFO    ] ================================================
[2026-06-22 22:51:52,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:51:52
[2026-06-22 22:51:53,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:51:53,617.617 INFO    ] Initializing speech engine...
[2026-06-22 22:51:53,627.627 INFO    ] 2026-06-22 22:51:53
[2026-06-22 22:51:53,872.872 INFO    ] 2026-06-22 22:51:53
[2026-06-22 22:51:53,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:51:54,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:51:54,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:51:54,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:51:54,333.333 INFO    ] time= 22/06/2026 22:51:54
[2026-06-22 22:51:54,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:51:54,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:51:54,495.495 INFO    ] No existing commands found in stream
[2026-06-22 22:51:59,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:51:59,517.517 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-22 22:52:01,728.728 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:52:01,731.731 INFO    ] Checking for system updates...
[2026-06-22 22:52:01,783.783 INFO    ] 200
[2026-06-22 22:52:01,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:52:01,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:52:01,858.858 INFO    ] No update needed
[2026-06-22 22:52:01,861.861 INFO    ] Checking for camera pi updates...
[2026-06-22 22:52:01,900.900 INFO    ] 200
[2026-06-22 22:52:01,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:52:01,959.959 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:52:02,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:52:02,032.032 INFO    ] No camera update needed
[2026-06-22 22:52:02,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:52:02,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:52:02,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:52:02,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:52:04,095.095 INFO    ] ================================================
[2026-06-22 22:52:04,116.116 INFO    ] Launching Daemon at Mon Jun 22 22:52:04 IST 2026
[2026-06-22 22:52:04,128.128 INFO    ] ================================================
[2026-06-22 22:52:04,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:52:04
[2026-06-22 22:52:05,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:52:05,539.539 INFO    ] Initializing speech engine...
[2026-06-22 22:52:05,555.555 INFO    ] 2026-06-22 22:52:05
[2026-06-22 22:52:05,826.826 INFO    ] 2026-06-22 22:52:05
[2026-06-22 22:52:05,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:52:06,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:52:06,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:52:06,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:52:06,206.206 INFO    ] time= 22/06/2026 22:52:06
[2026-06-22 22:52:06,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:52:06,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:52:06,417.417 INFO    ] No existing commands found in stream
[2026-06-22 22:52:11,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:52:11,431.431 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-22 22:52:12,501.501 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:52:12,504.504 INFO    ] Checking for system updates...
[2026-06-22 22:52:12,543.543 INFO    ] 200
[2026-06-22 22:52:12,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:52:12,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:52:12,601.601 INFO    ] No update needed
[2026-06-22 22:52:12,604.604 INFO    ] Checking for camera pi updates...
[2026-06-22 22:52:12,637.637 INFO    ] 200
[2026-06-22 22:52:12,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:52:12,685.685 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:52:12,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:52:12,771.771 INFO    ] No camera update needed
[2026-06-22 22:52:12,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:52:12,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:52:12,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:52:12,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:52:14,828.828 INFO    ] ================================================
[2026-06-22 22:52:14,844.844 INFO    ] Launching Daemon at Mon Jun 22 22:52:14 IST 2026
[2026-06-22 22:52:14,855.855 INFO    ] ================================================
[2026-06-22 22:52:15,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:52:15
[2026-06-22 22:52:15,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:52:16,233.233 INFO    ] Initializing speech engine...
[2026-06-22 22:52:16,242.242 INFO    ] 2026-06-22 22:52:16
[2026-06-22 22:52:16,491.491 INFO    ] 2026-06-22 22:52:16
[2026-06-22 22:52:16,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:52:17,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:52:17,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:52:20,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:52:20,146.146 INFO    ] time= 22/06/2026 22:52:20
[2026-06-22 22:52:20,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:52:20,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:52:20,213.213 INFO    ] No existing commands found in stream
[2026-06-22 22:52:25,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:52:25,227.227 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-22 22:52:27,722.722 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:52:27,724.724 INFO    ] Checking for system updates...
[2026-06-22 22:52:27,745.745 INFO    ] 200
[2026-06-22 22:52:27,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:52:27,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:52:27,781.781 INFO    ] No update needed
[2026-06-22 22:52:27,783.783 INFO    ] Checking for camera pi updates...
[2026-06-22 22:52:27,812.812 INFO    ] 200
[2026-06-22 22:52:27,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:52:27,857.857 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:52:27,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:52:27,943.943 INFO    ] No camera update needed
[2026-06-22 22:52:27,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:52:27,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:52:27,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:52:27,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:52:30,002.002 INFO    ] ================================================
[2026-06-22 22:52:30,018.018 INFO    ] Launching Daemon at Mon Jun 22 22:52:30 IST 2026
[2026-06-22 22:52:30,028.028 INFO    ] ================================================
[2026-06-22 22:52:30,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:52:30
[2026-06-22 22:52:31,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:52:31,412.412 INFO    ] Initializing speech engine...
[2026-06-22 22:52:31,418.418 INFO    ] 2026-06-22 22:52:31
[2026-06-22 22:52:31,700.700 INFO    ] 2026-06-22 22:52:31
[2026-06-22 22:52:31,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:52:31,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:52:31,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:52:32,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:52:32,226.226 INFO    ] time= 22/06/2026 22:52:32
[2026-06-22 22:52:32,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:52:32,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:52:32,433.433 INFO    ] No existing commands found in stream
[2026-06-22 22:52:37,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:52:37,457.457 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-22 22:52:39,687.687 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:52:39,690.690 INFO    ] Checking for system updates...
[2026-06-22 22:52:39,727.727 INFO    ] 200
[2026-06-22 22:52:39,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:52:39,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:52:39,784.784 INFO    ] No update needed
[2026-06-22 22:52:39,787.787 INFO    ] Checking for camera pi updates...
[2026-06-22 22:52:39,820.820 INFO    ] 200
[2026-06-22 22:52:39,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:52:39,863.863 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:52:39,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:52:39,940.940 INFO    ] No camera update needed
[2026-06-22 22:52:39,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:52:39,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:52:39,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:52:39,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:52:42,996.996 INFO    ] ================================================
[2026-06-22 22:52:42,011.011 INFO    ] Launching Daemon at Mon Jun 22 22:52:42 IST 2026
[2026-06-22 22:52:42,022.022 INFO    ] ================================================
[2026-06-22 22:52:42,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:52:42
[2026-06-22 22:52:43,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:52:43,468.468 INFO    ] Initializing speech engine...
[2026-06-22 22:52:43,485.485 INFO    ] 2026-06-22 22:52:43
[2026-06-22 22:52:43,740.740 INFO    ] 2026-06-22 22:52:43
[2026-06-22 22:52:43,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:52:44,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:52:44,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:52:44,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:52:44,228.228 INFO    ] time= 22/06/2026 22:52:44
[2026-06-22 22:52:44,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:52:44,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:52:44,413.413 INFO    ] No existing commands found in stream
[2026-06-22 22:52:49,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:52:49,448.448 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-22 22:52:53,012.012 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:52:53,014.014 INFO    ] Checking for system updates...
[2026-06-22 22:52:53,053.053 INFO    ] 200
[2026-06-22 22:52:53,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:52:53,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:52:53,119.119 INFO    ] No update needed
[2026-06-22 22:52:53,122.122 INFO    ] Checking for camera pi updates...
[2026-06-22 22:52:53,156.156 INFO    ] 200
[2026-06-22 22:52:53,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:52:53,200.200 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:52:53,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:52:53,280.280 INFO    ] No camera update needed
[2026-06-22 22:52:53,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:52:53,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:52:53,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:52:53,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:52:55,347.347 INFO    ] ================================================
[2026-06-22 22:52:55,363.363 INFO    ] Launching Daemon at Mon Jun 22 22:52:55 IST 2026
[2026-06-22 22:52:55,374.374 INFO    ] ================================================
[2026-06-22 22:52:56,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:52:56
[2026-06-22 22:52:56,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:52:56,843.843 INFO    ] Initializing speech engine...
[2026-06-22 22:52:56,849.849 INFO    ] 2026-06-22 22:52:56
[2026-06-22 22:52:57,095.095 INFO    ] 2026-06-22 22:52:57
[2026-06-22 22:52:57,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:52:57,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:52:57,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:52:57,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:52:57,546.546 INFO    ] time= 22/06/2026 22:52:57
[2026-06-22 22:52:57,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:52:57,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:52:57,799.799 INFO    ] No existing commands found in stream
[2026-06-22 22:53:02,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:53:02,821.821 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-22 22:53:06,578.578 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:53:06,580.580 INFO    ] Checking for system updates...
[2026-06-22 22:53:06,617.617 INFO    ] 200
[2026-06-22 22:53:06,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:53:06,674.674 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:53:06,676.676 INFO    ] No update needed
[2026-06-22 22:53:06,679.679 INFO    ] Checking for camera pi updates...
[2026-06-22 22:53:06,712.712 INFO    ] 200
[2026-06-22 22:53:06,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:53:06,761.761 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:53:06,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:53:06,820.820 INFO    ] No camera update needed
[2026-06-22 22:53:06,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:53:06,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:53:06,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:53:06,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:53:08,876.876 INFO    ] ================================================
[2026-06-22 22:53:08,891.891 INFO    ] Launching Daemon at Mon Jun 22 22:53:08 IST 2026
[2026-06-22 22:53:08,903.903 INFO    ] ================================================
[2026-06-22 22:53:09,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:53:09
[2026-06-22 22:53:09,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:53:10,270.270 INFO    ] Initializing speech engine...
[2026-06-22 22:53:10,276.276 INFO    ] 2026-06-22 22:53:10
[2026-06-22 22:53:10,522.522 INFO    ] 2026-06-22 22:53:10
[2026-06-22 22:53:10,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:53:10,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:53:10,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:53:10,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:53:10,991.991 INFO    ] time= 22/06/2026 22:53:10
[2026-06-22 22:53:11,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:53:11,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:53:11,228.228 INFO    ] No existing commands found in stream
[2026-06-22 22:53:16,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:53:16,251.251 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-22 22:53:20,598.598 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:53:20,600.600 INFO    ] Checking for system updates...
[2026-06-22 22:53:20,638.638 INFO    ] 200
[2026-06-22 22:53:20,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:53:20,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:53:20,703.703 INFO    ] No update needed
[2026-06-22 22:53:20,706.706 INFO    ] Checking for camera pi updates...
[2026-06-22 22:53:20,739.739 INFO    ] 200
[2026-06-22 22:53:20,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:53:20,782.782 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:53:20,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:53:20,865.865 INFO    ] No camera update needed
[2026-06-22 22:53:20,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:53:20,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:53:20,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:53:20,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:53:22,921.921 INFO    ] ================================================
[2026-06-22 22:53:22,937.937 INFO    ] Launching Daemon at Mon Jun 22 22:53:22 IST 2026
[2026-06-22 22:53:22,948.948 INFO    ] ================================================
[2026-06-22 22:53:23,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:53:23
[2026-06-22 22:53:24,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:53:24,371.371 INFO    ] Initializing speech engine...
[2026-06-22 22:53:24,381.381 INFO    ] 2026-06-22 22:53:24
[2026-06-22 22:53:24,629.629 INFO    ] 2026-06-22 22:53:24
[2026-06-22 22:53:24,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:53:24,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:53:24,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:53:25,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:53:25,087.087 INFO    ] time= 22/06/2026 22:53:25
[2026-06-22 22:53:25,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:53:25,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:53:25,310.310 INFO    ] No existing commands found in stream
[2026-06-22 22:53:30,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:53:30,340.340 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-22 22:53:33,089.089 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:53:33,091.091 INFO    ] Checking for system updates...
[2026-06-22 22:53:33,131.131 INFO    ] 200
[2026-06-22 22:53:33,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:53:33,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:53:33,190.190 INFO    ] No update needed
[2026-06-22 22:53:33,192.192 INFO    ] Checking for camera pi updates...
[2026-06-22 22:53:33,226.226 INFO    ] 200
[2026-06-22 22:53:33,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:53:33,275.275 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:53:33,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:53:33,363.363 INFO    ] No camera update needed
[2026-06-22 22:53:33,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:53:33,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:53:33,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:53:33,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:53:35,418.418 INFO    ] ================================================
[2026-06-22 22:53:35,435.435 INFO    ] Launching Daemon at Mon Jun 22 22:53:35 IST 2026
[2026-06-22 22:53:35,446.446 INFO    ] ================================================
[2026-06-22 22:53:36,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:53:36
[2026-06-22 22:53:36,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:53:36,948.948 INFO    ] Initializing speech engine...
[2026-06-22 22:53:36,957.957 INFO    ] 2026-06-22 22:53:36
[2026-06-22 22:53:37,254.254 INFO    ] 2026-06-22 22:53:37
[2026-06-22 22:53:37,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:53:37,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:53:37,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:53:37,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:53:37,821.821 INFO    ] time= 22/06/2026 22:53:37
[2026-06-22 22:53:37,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:53:37,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:53:37,977.977 INFO    ] No existing commands found in stream
[2026-06-22 22:53:42,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:53:42,994.994 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-22 22:53:47,361.361 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:53:47,364.364 INFO    ] Checking for system updates...
[2026-06-22 22:53:47,401.401 INFO    ] 200
[2026-06-22 22:53:47,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:53:47,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:53:47,461.461 INFO    ] No update needed
[2026-06-22 22:53:47,463.463 INFO    ] Checking for camera pi updates...
[2026-06-22 22:53:47,498.498 INFO    ] 200
[2026-06-22 22:53:47,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:53:47,548.548 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:53:47,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:53:47,731.731 INFO    ] No camera update needed
[2026-06-22 22:53:47,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:53:47,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:53:47,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:53:47,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:53:49,792.792 INFO    ] ================================================
[2026-06-22 22:53:49,808.808 INFO    ] Launching Daemon at Mon Jun 22 22:53:49 IST 2026
[2026-06-22 22:53:49,820.820 INFO    ] ================================================
[2026-06-22 22:53:50,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:53:50
[2026-06-22 22:53:51,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:53:51,442.442 INFO    ] Initializing speech engine...
[2026-06-22 22:53:51,456.456 INFO    ] 2026-06-22 22:53:51
[2026-06-22 22:53:51,770.770 INFO    ] 2026-06-22 22:53:51
[2026-06-22 22:53:51,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:53:52,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:53:52,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:53:52,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:53:52,199.199 INFO    ] time= 22/06/2026 22:53:52
[2026-06-22 22:53:52,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:53:52,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:53:52,271.271 INFO    ] No existing commands found in stream
[2026-06-22 22:53:57,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:53:57,283.283 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-22 22:53:59,956.956 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:53:59,959.959 INFO    ] Checking for system updates...
[2026-06-22 22:53:59,999.999 INFO    ] 200
[2026-06-22 22:54:00,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:54:00,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:54:00,057.057 INFO    ] No update needed
[2026-06-22 22:54:00,060.060 INFO    ] Checking for camera pi updates...
[2026-06-22 22:54:00,094.094 INFO    ] 200
[2026-06-22 22:54:00,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:54:00,142.142 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:54:00,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:54:00,227.227 INFO    ] No camera update needed
[2026-06-22 22:54:00,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:54:00,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:54:00,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:54:00,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:54:02,293.293 INFO    ] ================================================
[2026-06-22 22:54:02,317.317 INFO    ] Launching Daemon at Mon Jun 22 22:54:02 IST 2026
[2026-06-22 22:54:02,329.329 INFO    ] ================================================
[2026-06-22 22:54:02,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:54:02
[2026-06-22 22:54:03,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:54:03,815.815 INFO    ] Initializing speech engine...
[2026-06-22 22:54:03,836.836 INFO    ] 2026-06-22 22:54:03
[2026-06-22 22:54:04,095.095 INFO    ] 2026-06-22 22:54:04
[2026-06-22 22:54:04,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:54:04,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:54:04,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:54:04,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:54:04,470.470 INFO    ] time= 22/06/2026 22:54:04
[2026-06-22 22:54:04,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:54:04,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:54:04,657.657 INFO    ] No existing commands found in stream
[2026-06-22 22:54:09,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:54:09,685.685 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-22 22:54:11,748.748 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:54:11,751.751 INFO    ] Checking for system updates...
[2026-06-22 22:54:11,793.793 INFO    ] 200
[2026-06-22 22:54:11,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:54:11,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:54:11,853.853 INFO    ] No update needed
[2026-06-22 22:54:11,856.856 INFO    ] Checking for camera pi updates...
[2026-06-22 22:54:11,895.895 INFO    ] 200
[2026-06-22 22:54:11,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:54:11,951.951 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:54:12,053.053 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:54:12,056.056 INFO    ] No camera update needed
[2026-06-22 22:54:12,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:54:12,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:54:12,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:54:12,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:54:14,116.116 INFO    ] ================================================
[2026-06-22 22:54:14,131.131 INFO    ] Launching Daemon at Mon Jun 22 22:54:14 IST 2026
[2026-06-22 22:54:14,142.142 INFO    ] ================================================
[2026-06-22 22:54:14,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:54:14
[2026-06-22 22:54:15,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:54:15,462.462 INFO    ] Initializing speech engine...
[2026-06-22 22:54:15,469.469 INFO    ] 2026-06-22 22:54:15
[2026-06-22 22:54:15,757.757 INFO    ] 2026-06-22 22:54:15
[2026-06-22 22:54:15,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:54:15,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:54:15,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:54:16,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:54:16,117.117 INFO    ] time= 22/06/2026 22:54:16
[2026-06-22 22:54:16,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:54:16,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:54:16,242.242 INFO    ] No existing commands found in stream
[2026-06-22 22:54:21,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:54:21,257.257 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-22 22:54:22,411.411 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:54:22,414.414 INFO    ] Checking for system updates...
[2026-06-22 22:54:22,456.456 INFO    ] 200
[2026-06-22 22:54:22,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:54:22,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:54:22,523.523 INFO    ] No update needed
[2026-06-22 22:54:22,526.526 INFO    ] Checking for camera pi updates...
[2026-06-22 22:54:22,565.565 INFO    ] 200
[2026-06-22 22:54:22,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:54:22,611.611 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:54:22,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:54:22,702.702 INFO    ] No camera update needed
[2026-06-22 22:54:22,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:54:22,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:54:22,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:54:22,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:54:24,760.760 INFO    ] ================================================
[2026-06-22 22:54:24,776.776 INFO    ] Launching Daemon at Mon Jun 22 22:54:24 IST 2026
[2026-06-22 22:54:24,786.786 INFO    ] ================================================
[2026-06-22 22:54:25,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:54:25
[2026-06-22 22:54:25,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:54:26,249.249 INFO    ] Initializing speech engine...
[2026-06-22 22:54:26,260.260 INFO    ] 2026-06-22 22:54:26
[2026-06-22 22:54:26,509.509 INFO    ] 2026-06-22 22:54:26
[2026-06-22 22:54:26,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:54:26,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:54:26,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:54:26,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:54:26,989.989 INFO    ] time= 22/06/2026 22:54:26
[2026-06-22 22:54:27,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:54:27,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:54:27,206.206 INFO    ] No existing commands found in stream
[2026-06-22 22:54:32,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:54:32,239.239 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-22 22:54:35,337.337 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:54:35,340.340 INFO    ] Checking for system updates...
[2026-06-22 22:54:35,376.376 INFO    ] 200
[2026-06-22 22:54:35,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:54:35,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:54:35,434.434 INFO    ] No update needed
[2026-06-22 22:54:35,437.437 INFO    ] Checking for camera pi updates...
[2026-06-22 22:54:35,476.476 INFO    ] 200
[2026-06-22 22:54:35,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:54:35,526.526 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:54:35,644.644 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:54:35,647.647 INFO    ] No camera update needed
[2026-06-22 22:54:35,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:54:35,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:54:35,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:54:35,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:54:37,703.703 INFO    ] ================================================
[2026-06-22 22:54:37,721.721 INFO    ] Launching Daemon at Mon Jun 22 22:54:37 IST 2026
[2026-06-22 22:54:37,733.733 INFO    ] ================================================
[2026-06-22 22:54:38,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:54:38
[2026-06-22 22:54:39,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:54:39,313.313 INFO    ] Initializing speech engine...
[2026-06-22 22:54:39,322.322 INFO    ] 2026-06-22 22:54:39
[2026-06-22 22:54:39,587.587 INFO    ] 2026-06-22 22:54:39
[2026-06-22 22:54:39,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:54:39,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:54:39,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:54:40,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:54:40,088.088 INFO    ] time= 22/06/2026 22:54:40
[2026-06-22 22:54:40,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:54:40,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:54:40,330.330 INFO    ] No existing commands found in stream
[2026-06-22 22:54:45,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:54:45,352.352 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-22 22:54:47,511.511 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:54:47,514.514 INFO    ] Checking for system updates...
[2026-06-22 22:54:47,550.550 INFO    ] 200
[2026-06-22 22:54:47,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:54:47,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:54:47,608.608 INFO    ] No update needed
[2026-06-22 22:54:47,610.610 INFO    ] Checking for camera pi updates...
[2026-06-22 22:54:47,644.644 INFO    ] 200
[2026-06-22 22:54:47,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:54:47,694.694 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:54:47,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:54:47,782.782 INFO    ] No camera update needed
[2026-06-22 22:54:47,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:54:47,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:54:47,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:54:47,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:54:49,840.840 INFO    ] ================================================
[2026-06-22 22:54:49,856.856 INFO    ] Launching Daemon at Mon Jun 22 22:54:49 IST 2026
[2026-06-22 22:54:49,868.868 INFO    ] ================================================
[2026-06-22 22:54:50,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:54:50
[2026-06-22 22:54:51,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:54:51,326.326 INFO    ] Initializing speech engine...
[2026-06-22 22:54:51,336.336 INFO    ] 2026-06-22 22:54:51
[2026-06-22 22:54:51,597.597 INFO    ] 2026-06-22 22:54:51
[2026-06-22 22:54:51,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:54:52,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:54:52,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:54:53,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:54:53,286.286 INFO    ] time= 22/06/2026 22:54:53
[2026-06-22 22:54:53,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:54:53,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:54:53,380.380 INFO    ] No existing commands found in stream
[2026-06-22 22:54:58,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:54:58,394.394 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-22 22:54:59,314.314 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:54:59,317.317 INFO    ] Checking for system updates...
[2026-06-22 22:54:59,359.359 INFO    ] 200
[2026-06-22 22:54:59,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:54:59,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:54:59,418.418 INFO    ] No update needed
[2026-06-22 22:54:59,421.421 INFO    ] Checking for camera pi updates...
[2026-06-22 22:54:59,456.456 INFO    ] 200
[2026-06-22 22:54:59,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:54:59,506.506 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:54:59,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:54:59,594.594 INFO    ] No camera update needed
[2026-06-22 22:54:59,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:54:59,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:54:59,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:54:59,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:55:01,657.657 INFO    ] ================================================
[2026-06-22 22:55:01,720.720 INFO    ] Launching Daemon at Mon Jun 22 22:55:01 IST 2026
[2026-06-22 22:55:01,749.749 INFO    ] ================================================
[2026-06-22 22:55:02,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:55:02
[2026-06-22 22:55:03,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:55:03,346.346 INFO    ] Initializing speech engine...
[2026-06-22 22:55:03,366.366 INFO    ] 2026-06-22 22:55:03
[2026-06-22 22:55:03,621.621 INFO    ] 2026-06-22 22:55:03
[2026-06-22 22:55:03,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:55:03,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:55:03,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:55:03,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:55:03,987.987 INFO    ] time= 22/06/2026 22:55:03
[2026-06-22 22:55:04,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:55:04,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:55:04,184.184 INFO    ] No existing commands found in stream
[2026-06-22 22:55:09,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:55:09,200.200 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-22 22:55:10,522.522 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:55:10,524.524 INFO    ] Checking for system updates...
[2026-06-22 22:55:10,566.566 INFO    ] 200
[2026-06-22 22:55:10,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:55:10,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:55:10,623.623 INFO    ] No update needed
[2026-06-22 22:55:10,625.625 INFO    ] Checking for camera pi updates...
[2026-06-22 22:55:10,659.659 INFO    ] 200
[2026-06-22 22:55:10,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:55:10,702.702 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:55:10,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:55:10,798.798 INFO    ] No camera update needed
[2026-06-22 22:55:10,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:55:10,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:55:10,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:55:10,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:55:12,855.855 INFO    ] ================================================
[2026-06-22 22:55:12,871.871 INFO    ] Launching Daemon at Mon Jun 22 22:55:12 IST 2026
[2026-06-22 22:55:12,882.882 INFO    ] ================================================
[2026-06-22 22:55:13,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:55:13
[2026-06-22 22:55:14,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:55:14,289.289 INFO    ] Initializing speech engine...
[2026-06-22 22:55:14,301.301 INFO    ] 2026-06-22 22:55:14
[2026-06-22 22:55:14,570.570 INFO    ] 2026-06-22 22:55:14
[2026-06-22 22:55:14,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:55:14,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:55:14,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:55:15,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:55:15,049.049 INFO    ] time= 22/06/2026 22:55:15
[2026-06-22 22:55:15,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:55:15,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:55:15,209.209 INFO    ] No existing commands found in stream
[2026-06-22 22:55:20,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:55:20,223.223 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-22 22:55:23,374.374 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:55:23,376.376 INFO    ] Checking for system updates...
[2026-06-22 22:55:23,417.417 INFO    ] 200
[2026-06-22 22:55:23,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:55:23,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:55:23,484.484 INFO    ] No update needed
[2026-06-22 22:55:23,486.486 INFO    ] Checking for camera pi updates...
[2026-06-22 22:55:23,521.521 INFO    ] 200
[2026-06-22 22:55:23,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:55:23,566.566 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:55:23,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:55:23,656.656 INFO    ] No camera update needed
[2026-06-22 22:55:23,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:55:23,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:55:23,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:55:23,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:55:25,717.717 INFO    ] ================================================
[2026-06-22 22:55:25,732.732 INFO    ] Launching Daemon at Mon Jun 22 22:55:25 IST 2026
[2026-06-22 22:55:25,743.743 INFO    ] ================================================
[2026-06-22 22:55:26,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:55:26
[2026-06-22 22:55:26,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:55:27,205.205 INFO    ] Initializing speech engine...
[2026-06-22 22:55:27,214.214 INFO    ] 2026-06-22 22:55:27
[2026-06-22 22:55:27,462.462 INFO    ] 2026-06-22 22:55:27
[2026-06-22 22:55:27,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:55:27,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:55:27,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:55:27,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:55:27,954.954 INFO    ] time= 22/06/2026 22:55:27
[2026-06-22 22:55:28,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:55:28,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:55:28,159.159 INFO    ] No existing commands found in stream
[2026-06-22 22:55:33,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:55:33,188.188 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-22 22:55:34,484.484 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:55:34,487.487 INFO    ] Checking for system updates...
[2026-06-22 22:55:34,523.523 INFO    ] 200
[2026-06-22 22:55:34,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:55:34,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:55:34,583.583 INFO    ] No update needed
[2026-06-22 22:55:34,585.585 INFO    ] Checking for camera pi updates...
[2026-06-22 22:55:34,620.620 INFO    ] 200
[2026-06-22 22:55:34,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:55:34,663.663 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:55:34,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:55:34,729.729 INFO    ] No camera update needed
[2026-06-22 22:55:34,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:55:34,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:55:34,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:55:34,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:55:36,786.786 INFO    ] ================================================
[2026-06-22 22:55:36,801.801 INFO    ] Launching Daemon at Mon Jun 22 22:55:36 IST 2026
[2026-06-22 22:55:36,812.812 INFO    ] ================================================
[2026-06-22 22:55:37,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:55:37
[2026-06-22 22:55:38,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:55:38,453.453 INFO    ] Initializing speech engine...
[2026-06-22 22:55:38,461.461 INFO    ] 2026-06-22 22:55:38
[2026-06-22 22:55:38,778.778 INFO    ] 2026-06-22 22:55:38
[2026-06-22 22:55:38,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:55:39,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:55:39,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:55:39,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:55:39,297.297 INFO    ] time= 22/06/2026 22:55:39
[2026-06-22 22:55:39,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:55:39,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:55:39,447.447 INFO    ] No existing commands found in stream
[2026-06-22 22:55:44,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:55:44,469.469 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-22 22:55:45,165.165 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:55:45,168.168 INFO    ] Checking for system updates...
[2026-06-22 22:55:45,210.210 INFO    ] 200
[2026-06-22 22:55:45,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:55:45,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:55:45,296.296 INFO    ] No update needed
[2026-06-22 22:55:45,298.298 INFO    ] Checking for camera pi updates...
[2026-06-22 22:55:45,332.332 INFO    ] 200
[2026-06-22 22:55:45,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:55:45,376.376 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:55:45,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:55:45,461.461 INFO    ] No camera update needed
[2026-06-22 22:55:45,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:55:45,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:55:45,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:55:45,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:55:47,516.516 INFO    ] ================================================
[2026-06-22 22:55:47,531.531 INFO    ] Launching Daemon at Mon Jun 22 22:55:47 IST 2026
[2026-06-22 22:55:47,542.542 INFO    ] ================================================
[2026-06-22 22:55:48,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:55:48
[2026-06-22 22:55:48,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:55:49,209.209 INFO    ] Initializing speech engine...
[2026-06-22 22:55:49,224.224 INFO    ] 2026-06-22 22:55:49
[2026-06-22 22:55:49,496.496 INFO    ] 2026-06-22 22:55:49
[2026-06-22 22:55:49,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:55:49,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:55:49,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:55:49,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:55:50,016.016 INFO    ] time= 22/06/2026 22:55:49
[2026-06-22 22:55:50,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:55:50,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:55:50,225.225 INFO    ] No existing commands found in stream
[2026-06-22 22:55:55,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:55:55,269.269 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-22 22:55:56,152.152 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:55:56,155.155 INFO    ] Checking for system updates...
[2026-06-22 22:55:56,191.191 INFO    ] 200
[2026-06-22 22:55:56,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:55:56,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:55:56,262.262 INFO    ] No update needed
[2026-06-22 22:55:56,265.265 INFO    ] Checking for camera pi updates...
[2026-06-22 22:55:56,303.303 INFO    ] 200
[2026-06-22 22:55:56,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:55:56,348.348 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:55:56,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:55:56,435.435 INFO    ] No camera update needed
[2026-06-22 22:55:56,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:55:56,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:55:56,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:55:56,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:55:58,495.495 INFO    ] ================================================
[2026-06-22 22:55:58,510.510 INFO    ] Launching Daemon at Mon Jun 22 22:55:58 IST 2026
[2026-06-22 22:55:58,521.521 INFO    ] ================================================
[2026-06-22 22:55:59,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:55:59
[2026-06-22 22:55:59,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:55:59,965.965 INFO    ] Initializing speech engine...
[2026-06-22 22:55:59,971.971 INFO    ] 2026-06-22 22:55:59
[2026-06-22 22:56:00,276.276 INFO    ] 2026-06-22 22:56:00
[2026-06-22 22:56:00,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:56:00,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:56:00,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:56:00,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:56:00,650.650 INFO    ] time= 22/06/2026 22:56:00
[2026-06-22 22:56:00,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:56:00,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:56:00,742.742 INFO    ] No existing commands found in stream
[2026-06-22 22:56:05,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:56:05,780.780 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-22 22:56:07,873.873 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:56:07,876.876 INFO    ] Checking for system updates...
[2026-06-22 22:56:07,916.916 INFO    ] 200
[2026-06-22 22:56:07,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:56:07,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:56:07,974.974 INFO    ] No update needed
[2026-06-22 22:56:07,976.976 INFO    ] Checking for camera pi updates...
[2026-06-22 22:56:08,010.010 INFO    ] 200
[2026-06-22 22:56:08,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:56:08,053.053 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:56:08,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:56:08,164.164 INFO    ] No camera update needed
[2026-06-22 22:56:08,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:56:08,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:56:08,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:56:08,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:56:10,228.228 INFO    ] ================================================
[2026-06-22 22:56:10,245.245 INFO    ] Launching Daemon at Mon Jun 22 22:56:10 IST 2026
[2026-06-22 22:56:10,257.257 INFO    ] ================================================
[2026-06-22 22:56:10,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:56:10
[2026-06-22 22:56:11,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:56:11,852.852 INFO    ] Initializing speech engine...
[2026-06-22 22:56:11,860.860 INFO    ] 2026-06-22 22:56:11
[2026-06-22 22:56:12,123.123 INFO    ] 2026-06-22 22:56:12
[2026-06-22 22:56:12,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:56:12,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:56:12,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:56:12,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:56:12,613.613 INFO    ] time= 22/06/2026 22:56:12
[2026-06-22 22:56:12,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:56:12,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:56:12,821.821 INFO    ] No existing commands found in stream
[2026-06-22 22:56:17,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:56:17,838.838 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-22 22:56:24,265.265 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:56:24,267.267 INFO    ] Checking for system updates...
[2026-06-22 22:56:24,304.304 INFO    ] 200
[2026-06-22 22:56:24,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:56:24,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:56:24,369.369 INFO    ] No update needed
[2026-06-22 22:56:24,372.372 INFO    ] Checking for camera pi updates...
[2026-06-22 22:56:24,410.410 INFO    ] 200
[2026-06-22 22:56:24,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:56:24,453.453 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:56:24,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:56:24,542.542 INFO    ] No camera update needed
[2026-06-22 22:56:24,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:56:24,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:56:24,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:56:24,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:56:26,600.600 INFO    ] ================================================
[2026-06-22 22:56:26,615.615 INFO    ] Launching Daemon at Mon Jun 22 22:56:26 IST 2026
[2026-06-22 22:56:26,625.625 INFO    ] ================================================
[2026-06-22 22:56:27,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:56:27
[2026-06-22 22:56:27,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:56:28,162.162 INFO    ] Initializing speech engine...
[2026-06-22 22:56:28,169.169 INFO    ] 2026-06-22 22:56:28
[2026-06-22 22:56:28,465.465 INFO    ] 2026-06-22 22:56:28
[2026-06-22 22:56:28,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:56:28,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:56:28,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:56:28,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:56:29,011.011 INFO    ] time= 22/06/2026 22:56:28
[2026-06-22 22:56:29,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:56:29,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:56:29,155.155 INFO    ] No existing commands found in stream
[2026-06-22 22:56:34,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:56:34,203.203 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-22 22:56:38,216.216 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:56:38,219.219 INFO    ] Checking for system updates...
[2026-06-22 22:56:38,262.262 INFO    ] 200
[2026-06-22 22:56:38,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:56:38,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:56:38,324.324 INFO    ] No update needed
[2026-06-22 22:56:38,327.327 INFO    ] Checking for camera pi updates...
[2026-06-22 22:56:38,366.366 INFO    ] 200
[2026-06-22 22:56:38,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:56:38,411.411 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:56:38,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:56:38,497.497 INFO    ] No camera update needed
[2026-06-22 22:56:38,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:56:38,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:56:38,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:56:38,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:56:40,556.556 INFO    ] ================================================
[2026-06-22 22:56:40,571.571 INFO    ] Launching Daemon at Mon Jun 22 22:56:40 IST 2026
[2026-06-22 22:56:40,582.582 INFO    ] ================================================
[2026-06-22 22:56:41,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:56:41
[2026-06-22 22:56:41,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:56:41,966.966 INFO    ] Initializing speech engine...
[2026-06-22 22:56:41,977.977 INFO    ] 2026-06-22 22:56:41
[2026-06-22 22:56:42,246.246 INFO    ] 2026-06-22 22:56:42
[2026-06-22 22:56:42,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:56:42,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:56:42,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:56:42,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:56:42,665.665 INFO    ] time= 22/06/2026 22:56:42
[2026-06-22 22:56:42,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:56:42,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:56:42,758.758 INFO    ] No existing commands found in stream
[2026-06-22 22:56:47,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:56:47,797.797 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-22 22:56:54,373.373 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:56:54,376.376 INFO    ] Checking for system updates...
[2026-06-22 22:56:54,413.413 INFO    ] 200
[2026-06-22 22:56:54,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:56:54,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:56:54,477.477 INFO    ] No update needed
[2026-06-22 22:56:54,479.479 INFO    ] Checking for camera pi updates...
[2026-06-22 22:56:54,517.517 INFO    ] 200
[2026-06-22 22:56:54,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:56:54,565.565 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:56:54,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:56:54,641.641 INFO    ] No camera update needed
[2026-06-22 22:56:54,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:56:54,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:56:54,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:56:54,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:56:56,698.698 INFO    ] ================================================
[2026-06-22 22:56:56,713.713 INFO    ] Launching Daemon at Mon Jun 22 22:56:56 IST 2026
[2026-06-22 22:56:56,724.724 INFO    ] ================================================
[2026-06-22 22:56:57,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:56:57
[2026-06-22 22:56:57,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:56:58,191.191 INFO    ] Initializing speech engine...
[2026-06-22 22:56:58,197.197 INFO    ] 2026-06-22 22:56:58
[2026-06-22 22:56:58,458.458 INFO    ] 2026-06-22 22:56:58
[2026-06-22 22:56:58,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:56:58,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:56:58,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:56:58,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:56:58,947.947 INFO    ] time= 22/06/2026 22:56:58
[2026-06-22 22:56:58,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:56:59,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:56:59,145.145 INFO    ] No existing commands found in stream
[2026-06-22 22:57:04,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:57:04,169.169 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-22 22:57:07,335.335 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:57:07,337.337 INFO    ] Checking for system updates...
[2026-06-22 22:57:07,378.378 INFO    ] 200
[2026-06-22 22:57:07,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:57:07,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:57:07,443.443 INFO    ] No update needed
[2026-06-22 22:57:07,446.446 INFO    ] Checking for camera pi updates...
[2026-06-22 22:57:07,479.479 INFO    ] 200
[2026-06-22 22:57:07,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:57:07,522.522 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:57:07,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:57:07,611.611 INFO    ] No camera update needed
[2026-06-22 22:57:07,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:57:07,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:57:07,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:57:07,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:57:09,669.669 INFO    ] ================================================
[2026-06-22 22:57:09,684.684 INFO    ] Launching Daemon at Mon Jun 22 22:57:09 IST 2026
[2026-06-22 22:57:09,695.695 INFO    ] ================================================
[2026-06-22 22:57:10,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:57:10
[2026-06-22 22:57:10,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:57:11,135.135 INFO    ] Initializing speech engine...
[2026-06-22 22:57:11,149.149 INFO    ] 2026-06-22 22:57:11
[2026-06-22 22:57:11,413.413 INFO    ] 2026-06-22 22:57:11
[2026-06-22 22:57:11,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:57:11,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:57:11,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:57:11,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:57:11,915.915 INFO    ] time= 22/06/2026 22:57:11
[2026-06-22 22:57:11,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:57:11,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:57:12,117.117 INFO    ] No existing commands found in stream
[2026-06-22 22:57:17,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:57:17,136.136 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-22 22:57:19,475.475 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:57:19,477.477 INFO    ] Checking for system updates...
[2026-06-22 22:57:19,513.513 INFO    ] 200
[2026-06-22 22:57:19,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:57:19,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:57:19,571.571 INFO    ] No update needed
[2026-06-22 22:57:19,573.573 INFO    ] Checking for camera pi updates...
[2026-06-22 22:57:19,607.607 INFO    ] 200
[2026-06-22 22:57:19,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:57:19,651.651 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:57:19,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:57:19,771.771 INFO    ] No camera update needed
[2026-06-22 22:57:19,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:57:19,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:57:19,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:57:19,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:57:21,827.827 INFO    ] ================================================
[2026-06-22 22:57:21,843.843 INFO    ] Launching Daemon at Mon Jun 22 22:57:21 IST 2026
[2026-06-22 22:57:21,853.853 INFO    ] ================================================
[2026-06-22 22:57:22,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:57:22
[2026-06-22 22:57:22,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:57:23,267.267 INFO    ] Initializing speech engine...
[2026-06-22 22:57:23,276.276 INFO    ] 2026-06-22 22:57:23
[2026-06-22 22:57:23,522.522 INFO    ] 2026-06-22 22:57:23
[2026-06-22 22:57:23,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:57:25,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:57:25,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:57:25,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:57:25,613.613 INFO    ] time= 22/06/2026 22:57:25
[2026-06-22 22:57:25,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:57:25,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:57:25,736.736 INFO    ] No existing commands found in stream
[2026-06-22 22:57:30,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:57:30,750.750 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-22 22:57:34,747.747 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:57:34,749.749 INFO    ] Checking for system updates...
[2026-06-22 22:57:34,789.789 INFO    ] 200
[2026-06-22 22:57:34,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:57:34,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:57:34,853.853 INFO    ] No update needed
[2026-06-22 22:57:34,855.855 INFO    ] Checking for camera pi updates...
[2026-06-22 22:57:34,893.893 INFO    ] 200
[2026-06-22 22:57:34,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:57:34,936.936 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:57:35,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:57:35,028.028 INFO    ] No camera update needed
[2026-06-22 22:57:35,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:57:35,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:57:35,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:57:35,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:57:37,083.083 INFO    ] ================================================
[2026-06-22 22:57:37,098.098 INFO    ] Launching Daemon at Mon Jun 22 22:57:37 IST 2026
[2026-06-22 22:57:37,110.110 INFO    ] ================================================
[2026-06-22 22:57:37,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:57:37
[2026-06-22 22:57:38,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:57:38,512.512 INFO    ] Initializing speech engine...
[2026-06-22 22:57:38,521.521 INFO    ] 2026-06-22 22:57:38
[2026-06-22 22:57:38,780.780 INFO    ] 2026-06-22 22:57:38
[2026-06-22 22:57:38,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:57:39,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:57:39,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:57:39,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:57:39,242.242 INFO    ] time= 22/06/2026 22:57:39
[2026-06-22 22:57:39,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:57:39,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:57:39,476.476 INFO    ] No existing commands found in stream
[2026-06-22 22:57:44,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:57:44,501.501 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-22 22:57:46,618.618 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 22:57:46,621.621 INFO    ] Checking for system updates...
[2026-06-22 22:57:46,659.659 INFO    ] 200
[2026-06-22 22:57:46,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:57:46,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:57:46,726.726 INFO    ] No update needed
[2026-06-22 22:57:46,729.729 INFO    ] Checking for camera pi updates...
[2026-06-22 22:57:46,767.767 INFO    ] 200
[2026-06-22 22:57:46,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:57:46,810.810 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:57:46,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:57:46,868.868 INFO    ] No camera update needed
[2026-06-22 22:57:46,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:57:46,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:57:46,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:57:46,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:57:48,925.925 INFO    ] ================================================
[2026-06-22 22:57:48,941.941 INFO    ] Launching Daemon at Mon Jun 22 22:57:48 IST 2026
[2026-06-22 22:57:48,953.953 INFO    ] ================================================
[2026-06-22 22:57:49,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:57:49
[2026-06-22 22:57:50,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:57:50,293.293 INFO    ] Initializing speech engine...
[2026-06-22 22:57:50,299.299 INFO    ] 2026-06-22 22:57:50
[2026-06-22 22:57:50,558.558 INFO    ] 2026-06-22 22:57:50
[2026-06-22 22:57:50,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:57:50,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:57:50,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:57:50,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:57:51,015.015 INFO    ] time= 22/06/2026 22:57:50
[2026-06-22 22:57:51,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:57:51,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:57:51,239.239 INFO    ] No existing commands found in stream
[2026-06-22 22:57:56,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:57:56,266.266 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-22 22:57:58,951.951 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:57:58,953.953 INFO    ] Checking for system updates...
[2026-06-22 22:57:58,974.974 INFO    ] 200
[2026-06-22 22:57:58,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:57:59,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:57:59,010.010 INFO    ] No update needed
[2026-06-22 22:57:59,011.011 INFO    ] Checking for camera pi updates...
[2026-06-22 22:57:59,037.037 INFO    ] 200
[2026-06-22 22:57:59,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:57:59,085.085 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:57:59,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:57:59,175.175 INFO    ] No camera update needed
[2026-06-22 22:57:59,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:57:59,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:57:59,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:57:59,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:58:01,232.232 INFO    ] ================================================
[2026-06-22 22:58:01,248.248 INFO    ] Launching Daemon at Mon Jun 22 22:58:01 IST 2026
[2026-06-22 22:58:01,260.260 INFO    ] ================================================
[2026-06-22 22:58:01,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:58:01
[2026-06-22 22:58:02,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:58:02,952.952 INFO    ] Initializing speech engine...
[2026-06-22 22:58:02,957.957 INFO    ] 2026-06-22 22:58:02
[2026-06-22 22:58:03,264.264 INFO    ] 2026-06-22 22:58:03
[2026-06-22 22:58:03,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:58:03,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:58:03,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:58:03,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:58:03,634.634 INFO    ] time= 22/06/2026 22:58:03
[2026-06-22 22:58:03,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:58:03,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:58:03,826.826 INFO    ] No existing commands found in stream
[2026-06-22 22:58:08,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:58:08,859.859 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-22 22:58:09,425.425 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:58:09,428.428 INFO    ] Checking for system updates...
[2026-06-22 22:58:09,464.464 INFO    ] 200
[2026-06-22 22:58:09,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:58:09,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:58:09,526.526 INFO    ] No update needed
[2026-06-22 22:58:09,528.528 INFO    ] Checking for camera pi updates...
[2026-06-22 22:58:09,562.562 INFO    ] 200
[2026-06-22 22:58:09,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:58:09,606.606 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:58:09,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:58:09,700.700 INFO    ] No camera update needed
[2026-06-22 22:58:09,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:58:09,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:58:09,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:58:09,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:58:11,754.754 INFO    ] ================================================
[2026-06-22 22:58:11,769.769 INFO    ] Launching Daemon at Mon Jun 22 22:58:11 IST 2026
[2026-06-22 22:58:11,780.780 INFO    ] ================================================
[2026-06-22 22:58:12,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:58:12
[2026-06-22 22:58:12,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:58:13,188.188 INFO    ] Initializing speech engine...
[2026-06-22 22:58:13,195.195 INFO    ] 2026-06-22 22:58:13
[2026-06-22 22:58:13,443.443 INFO    ] 2026-06-22 22:58:13
[2026-06-22 22:58:13,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:58:13,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:58:13,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:58:13,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:58:13,908.908 INFO    ] time= 22/06/2026 22:58:13
[2026-06-22 22:58:13,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:58:14,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:58:14,138.138 INFO    ] No existing commands found in stream
[2026-06-22 22:58:19,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:58:19,166.166 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-22 22:58:20,291.291 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:58:20,294.294 INFO    ] Checking for system updates...
[2026-06-22 22:58:20,330.330 INFO    ] 200
[2026-06-22 22:58:20,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:58:20,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:58:20,387.387 INFO    ] No update needed
[2026-06-22 22:58:20,390.390 INFO    ] Checking for camera pi updates...
[2026-06-22 22:58:20,424.424 INFO    ] 200
[2026-06-22 22:58:20,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:58:20,472.472 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:58:20,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:58:20,558.558 INFO    ] No camera update needed
[2026-06-22 22:58:20,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:58:20,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:58:20,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:58:20,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:58:22,615.615 INFO    ] ================================================
[2026-06-22 22:58:22,630.630 INFO    ] Launching Daemon at Mon Jun 22 22:58:22 IST 2026
[2026-06-22 22:58:22,642.642 INFO    ] ================================================
[2026-06-22 22:58:23,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:58:23
[2026-06-22 22:58:23,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:58:24,005.005 INFO    ] Initializing speech engine...
[2026-06-22 22:58:24,014.014 INFO    ] 2026-06-22 22:58:24
[2026-06-22 22:58:24,264.264 INFO    ] 2026-06-22 22:58:24
[2026-06-22 22:58:24,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:58:25,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:58:25,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:58:25,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:58:25,925.925 INFO    ] time= 22/06/2026 22:58:25
[2026-06-22 22:58:25,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:58:25,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:58:26,055.055 INFO    ] No existing commands found in stream
[2026-06-22 22:58:31,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:58:31,069.069 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-22 22:58:32,677.677 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 22:58:32,679.679 INFO    ] Checking for system updates...
[2026-06-22 22:58:32,729.729 INFO    ] 200
[2026-06-22 22:58:32,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:58:32,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:58:32,792.792 INFO    ] No update needed
[2026-06-22 22:58:32,794.794 INFO    ] Checking for camera pi updates...
[2026-06-22 22:58:32,829.829 INFO    ] 200
[2026-06-22 22:58:32,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:58:32,878.878 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:58:32,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:58:32,931.931 INFO    ] No camera update needed
[2026-06-22 22:58:32,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:58:32,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:58:32,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:58:32,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:58:34,986.986 INFO    ] ================================================
[2026-06-22 22:58:35,002.002 INFO    ] Launching Daemon at Mon Jun 22 22:58:34 IST 2026
[2026-06-22 22:58:35,013.013 INFO    ] ================================================
[2026-06-22 22:58:35,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:58:35
[2026-06-22 22:58:36,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:58:36,383.383 INFO    ] Initializing speech engine...
[2026-06-22 22:58:36,397.397 INFO    ] 2026-06-22 22:58:36
[2026-06-22 22:58:36,709.709 INFO    ] 2026-06-22 22:58:36
[2026-06-22 22:58:36,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:58:36,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:58:36,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:58:37,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:58:37,211.211 INFO    ] time= 22/06/2026 22:58:37
[2026-06-22 22:58:37,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:58:37,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:58:37,354.354 INFO    ] No existing commands found in stream
[2026-06-22 22:58:42,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:58:42,384.384 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-22 22:58:44,926.926 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 22:58:44,927.927 INFO    ] Checking for system updates...
[2026-06-22 22:58:44,963.963 INFO    ] 200
[2026-06-22 22:58:44,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:58:45,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:58:45,035.035 INFO    ] No update needed
[2026-06-22 22:58:45,038.038 INFO    ] Checking for camera pi updates...
[2026-06-22 22:58:45,073.073 INFO    ] 200
[2026-06-22 22:58:45,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:58:45,116.116 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:58:45,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:58:45,200.200 INFO    ] No camera update needed
[2026-06-22 22:58:45,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:58:45,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:58:45,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:58:45,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:58:47,255.255 INFO    ] ================================================
[2026-06-22 22:58:47,271.271 INFO    ] Launching Daemon at Mon Jun 22 22:58:47 IST 2026
[2026-06-22 22:58:47,283.283 INFO    ] ================================================
[2026-06-22 22:58:47,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:58:47
[2026-06-22 22:58:48,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:58:48,611.611 INFO    ] Initializing speech engine...
[2026-06-22 22:58:48,631.631 INFO    ] 2026-06-22 22:58:48
[2026-06-22 22:58:48,881.881 INFO    ] 2026-06-22 22:58:48
[2026-06-22 22:58:48,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:58:49,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:58:49,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:58:49,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:58:49,450.450 INFO    ] time= 22/06/2026 22:58:49
[2026-06-22 22:58:49,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:58:49,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:58:49,622.622 INFO    ] No existing commands found in stream
[2026-06-22 22:58:54,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:58:54,656.656 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-22 22:58:56,930.930 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:58:56,931.931 INFO    ] Checking for system updates...
[2026-06-22 22:58:56,964.964 INFO    ] 200
[2026-06-22 22:58:56,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:58:57,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:58:57,021.021 INFO    ] No update needed
[2026-06-22 22:58:57,024.024 INFO    ] Checking for camera pi updates...
[2026-06-22 22:58:57,059.059 INFO    ] 200
[2026-06-22 22:58:57,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:58:57,103.103 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:58:57,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:58:57,192.192 INFO    ] No camera update needed
[2026-06-22 22:58:57,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:58:57,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:58:57,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:58:57,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:58:59,252.252 INFO    ] ================================================
[2026-06-22 22:58:59,268.268 INFO    ] Launching Daemon at Mon Jun 22 22:58:59 IST 2026
[2026-06-22 22:58:59,280.280 INFO    ] ================================================
[2026-06-22 22:58:59,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:58:59
[2026-06-22 22:59:00,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:59:00,673.673 INFO    ] Initializing speech engine...
[2026-06-22 22:59:00,680.680 INFO    ] 2026-06-22 22:59:00
[2026-06-22 22:59:00,941.941 INFO    ] 2026-06-22 22:59:00
[2026-06-22 22:59:00,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:59:01,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:59:01,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:59:01,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:59:01,416.416 INFO    ] time= 22/06/2026 22:59:01
[2026-06-22 22:59:01,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:59:01,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:59:01,625.625 INFO    ] No existing commands found in stream
[2026-06-22 22:59:06,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:59:06,661.661 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-22 22:59:10,103.103 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:59:10,104.104 INFO    ] Checking for system updates...
[2026-06-22 22:59:10,125.125 INFO    ] 200
[2026-06-22 22:59:10,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:59:10,159.159 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:59:10,162.162 INFO    ] No update needed
[2026-06-22 22:59:10,164.164 INFO    ] Checking for camera pi updates...
[2026-06-22 22:59:10,202.202 INFO    ] 200
[2026-06-22 22:59:10,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:59:10,250.250 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:59:10,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:59:10,335.335 INFO    ] No camera update needed
[2026-06-22 22:59:10,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:59:10,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:59:10,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:59:10,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:59:12,394.394 INFO    ] ================================================
[2026-06-22 22:59:12,410.410 INFO    ] Launching Daemon at Mon Jun 22 22:59:12 IST 2026
[2026-06-22 22:59:12,422.422 INFO    ] ================================================
[2026-06-22 22:59:12,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:59:12
[2026-06-22 22:59:13,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:59:13,757.757 INFO    ] Initializing speech engine...
[2026-06-22 22:59:13,767.767 INFO    ] 2026-06-22 22:59:13
[2026-06-22 22:59:14,012.012 INFO    ] 2026-06-22 22:59:14
[2026-06-22 22:59:14,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:59:14,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:59:14,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:59:14,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:59:14,481.481 INFO    ] time= 22/06/2026 22:59:14
[2026-06-22 22:59:14,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:59:14,573.573 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:59:14,710.710 INFO    ] No existing commands found in stream
[2026-06-22 22:59:19,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:59:19,734.734 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-22 22:59:23,523.523 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:59:23,526.526 INFO    ] Checking for system updates...
[2026-06-22 22:59:23,563.563 INFO    ] 200
[2026-06-22 22:59:23,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:59:23,625.625 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:59:23,628.628 INFO    ] No update needed
[2026-06-22 22:59:23,630.630 INFO    ] Checking for camera pi updates...
[2026-06-22 22:59:23,667.667 INFO    ] 200
[2026-06-22 22:59:23,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:59:23,711.711 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:59:23,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:59:23,798.798 INFO    ] No camera update needed
[2026-06-22 22:59:23,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:59:23,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:59:23,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:59:23,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:59:25,852.852 INFO    ] ================================================
[2026-06-22 22:59:25,868.868 INFO    ] Launching Daemon at Mon Jun 22 22:59:25 IST 2026
[2026-06-22 22:59:25,879.879 INFO    ] ================================================
[2026-06-22 22:59:26,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:59:26
[2026-06-22 22:59:27,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:59:27,319.319 INFO    ] Initializing speech engine...
[2026-06-22 22:59:27,327.327 INFO    ] 2026-06-22 22:59:27
[2026-06-22 22:59:27,591.591 INFO    ] 2026-06-22 22:59:27
[2026-06-22 22:59:27,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:59:27,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:59:27,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:59:28,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:59:28,061.061 INFO    ] time= 22/06/2026 22:59:28
[2026-06-22 22:59:28,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:59:28,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:59:28,290.290 INFO    ] No existing commands found in stream
[2026-06-22 22:59:33,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:59:33,321.321 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-22 22:59:36,271.271 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 22:59:36,273.273 INFO    ] Checking for system updates...
[2026-06-22 22:59:36,293.293 INFO    ] 200
[2026-06-22 22:59:36,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:59:36,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:59:36,351.351 INFO    ] No update needed
[2026-06-22 22:59:36,354.354 INFO    ] Checking for camera pi updates...
[2026-06-22 22:59:36,388.388 INFO    ] 200
[2026-06-22 22:59:36,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:59:36,436.436 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:59:36,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:59:36,512.512 INFO    ] No camera update needed
[2026-06-22 22:59:36,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:59:36,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:59:36,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:59:36,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:59:38,568.568 INFO    ] ================================================
[2026-06-22 22:59:38,584.584 INFO    ] Launching Daemon at Mon Jun 22 22:59:38 IST 2026
[2026-06-22 22:59:38,596.596 INFO    ] ================================================
[2026-06-22 22:59:39,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:59:39
[2026-06-22 22:59:39,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:59:40,077.077 INFO    ] Initializing speech engine...
[2026-06-22 22:59:40,087.087 INFO    ] 2026-06-22 22:59:40
[2026-06-22 22:59:40,341.341 INFO    ] 2026-06-22 22:59:40
[2026-06-22 22:59:40,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:59:40,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:59:40,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:59:40,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:59:40,800.800 INFO    ] time= 22/06/2026 22:59:40
[2026-06-22 22:59:40,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:59:40,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:59:41,009.009 INFO    ] No existing commands found in stream
[2026-06-22 22:59:46,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:59:46,039.039 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-22 22:59:48,133.133 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 22:59:48,136.136 INFO    ] Checking for system updates...
[2026-06-22 22:59:48,172.172 INFO    ] 200
[2026-06-22 22:59:48,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:59:48,235.235 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:59:48,237.237 INFO    ] No update needed
[2026-06-22 22:59:48,240.240 INFO    ] Checking for camera pi updates...
[2026-06-22 22:59:48,273.273 INFO    ] 200
[2026-06-22 22:59:48,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:59:48,321.321 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:59:48,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 22:59:48,406.406 INFO    ] No camera update needed
[2026-06-22 22:59:48,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:59:48,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:59:48,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:59:48,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 22:59:50,461.461 INFO    ] ================================================
[2026-06-22 22:59:50,478.478 INFO    ] Launching Daemon at Mon Jun 22 22:59:50 IST 2026
[2026-06-22 22:59:50,489.489 INFO    ] ================================================
[2026-06-22 22:59:51,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 22:59:51
[2026-06-22 22:59:51,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 22:59:51,862.862 INFO    ] Initializing speech engine...
[2026-06-22 22:59:51,869.869 INFO    ] 2026-06-22 22:59:51
[2026-06-22 22:59:52,122.122 INFO    ] 2026-06-22 22:59:52
[2026-06-22 22:59:52,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 22:59:52,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 22:59:52,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 22:59:52,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 22:59:52,587.587 INFO    ] time= 22/06/2026 22:59:52
[2026-06-22 22:59:52,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 22:59:52,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-22 22:59:52,810.810 INFO    ] No existing commands found in stream
[2026-06-22 22:59:57,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 22:59:57,838.838 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-22 22:59:58,289.289 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 22:59:58,291.291 INFO    ] Checking for system updates...
[2026-06-22 22:59:58,313.313 INFO    ] 200
[2026-06-22 22:59:58,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:59:58,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:59:58,347.347 INFO    ] No update needed
[2026-06-22 22:59:58,348.348 INFO    ] Checking for camera pi updates...
[2026-06-22 22:59:58,369.369 INFO    ] 200
[2026-06-22 22:59:58,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 22:59:58,412.412 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 22:59:58,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 22:59:58,488.488 INFO    ] No camera update needed
[2026-06-22 22:59:58,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-22 22:59:58,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 22:59:58,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 22:59:58,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:00:00,546.546 INFO    ] ================================================
[2026-06-22 23:00:00,562.562 INFO    ] Launching Daemon at Mon Jun 22 23:00:00 IST 2026
[2026-06-22 23:00:00,572.572 INFO    ] ================================================
[2026-06-22 23:00:01,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:00:01
[2026-06-22 23:00:01,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:00:03,706.706 INFO    ] Initializing speech engine...
[2026-06-22 23:00:03,716.716 INFO    ] 2026-06-22 23:00:03
[2026-06-22 23:00:04,992.992 INFO    ] 2026-06-22 23:00:04
[2026-06-22 23:00:05,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:00:05,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:00:05,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:00:05,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:00:05,692.692 INFO    ] time= 22/06/2026 23:00:05
[2026-06-22 23:00:05,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:00:05,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:00:05,850.850 INFO    ] No existing commands found in stream
[2026-06-22 23:00:10,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:00:10,863.863 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-22 23:00:16,953.953 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:00:16,956.956 INFO    ] Checking for system updates...
[2026-06-22 23:00:17,010.010 INFO    ] 200
[2026-06-22 23:00:17,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:00:17,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:00:17,084.084 INFO    ] No update needed
[2026-06-22 23:00:17,087.087 INFO    ] Checking for camera pi updates...
[2026-06-22 23:00:17,139.139 INFO    ] 200
[2026-06-22 23:00:17,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:00:17,190.190 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:00:17,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:00:17,281.281 INFO    ] No camera update needed
[2026-06-22 23:00:17,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:00:17,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:00:17,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:00:17,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:00:19,341.341 INFO    ] ================================================
[2026-06-22 23:00:19,356.356 INFO    ] Launching Daemon at Mon Jun 22 23:00:19 IST 2026
[2026-06-22 23:00:19,367.367 INFO    ] ================================================
[2026-06-22 23:00:19,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:00:19
[2026-06-22 23:00:20,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:00:20,787.787 INFO    ] Initializing speech engine...
[2026-06-22 23:00:20,798.798 INFO    ] 2026-06-22 23:00:20
[2026-06-22 23:00:21,041.041 INFO    ] 2026-06-22 23:00:21
[2026-06-22 23:00:21,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:00:21,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:00:21,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:00:21,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:00:21,410.410 INFO    ] time= 22/06/2026 23:00:21
[2026-06-22 23:00:21,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:00:21,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:00:21,591.591 INFO    ] No existing commands found in stream
[2026-06-22 23:00:26,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:00:26,619.619 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-22 23:00:29,443.443 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:00:29,446.446 INFO    ] Checking for system updates...
[2026-06-22 23:00:29,482.482 INFO    ] 200
[2026-06-22 23:00:29,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:00:29,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:00:29,541.541 INFO    ] No update needed
[2026-06-22 23:00:29,543.543 INFO    ] Checking for camera pi updates...
[2026-06-22 23:00:29,582.582 INFO    ] 200
[2026-06-22 23:00:29,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:00:29,626.626 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:00:29,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:00:29,710.710 INFO    ] No camera update needed
[2026-06-22 23:00:29,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:00:29,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:00:29,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:00:29,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:00:31,765.765 INFO    ] ================================================
[2026-06-22 23:00:31,780.780 INFO    ] Launching Daemon at Mon Jun 22 23:00:31 IST 2026
[2026-06-22 23:00:31,791.791 INFO    ] ================================================
[2026-06-22 23:00:32,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:00:32
[2026-06-22 23:00:33,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:00:33,347.347 INFO    ] Initializing speech engine...
[2026-06-22 23:00:33,356.356 INFO    ] 2026-06-22 23:00:33
[2026-06-22 23:00:33,669.669 INFO    ] 2026-06-22 23:00:33
[2026-06-22 23:00:33,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:00:33,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:00:33,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:00:34,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:00:34,041.041 INFO    ] time= 22/06/2026 23:00:34
[2026-06-22 23:00:34,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:00:34,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:00:34,144.144 INFO    ] No existing commands found in stream
[2026-06-22 23:00:39,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:00:39,182.182 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-22 23:00:41,712.712 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:00:41,714.714 INFO    ] Checking for system updates...
[2026-06-22 23:00:41,736.736 INFO    ] 200
[2026-06-22 23:00:41,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:00:41,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:00:41,783.783 INFO    ] No update needed
[2026-06-22 23:00:41,787.787 INFO    ] Checking for camera pi updates...
[2026-06-22 23:00:41,825.825 INFO    ] 200
[2026-06-22 23:00:41,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:00:41,870.870 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:00:41,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:00:41,954.954 INFO    ] No camera update needed
[2026-06-22 23:00:41,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:00:41,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:00:41,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:00:41,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:00:44,014.014 INFO    ] ================================================
[2026-06-22 23:00:44,029.029 INFO    ] Launching Daemon at Mon Jun 22 23:00:44 IST 2026
[2026-06-22 23:00:44,040.040 INFO    ] ================================================
[2026-06-22 23:00:44,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:00:44
[2026-06-22 23:00:45,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:00:45,413.413 INFO    ] Initializing speech engine...
[2026-06-22 23:00:45,421.421 INFO    ] 2026-06-22 23:00:45
[2026-06-22 23:00:45,679.679 INFO    ] 2026-06-22 23:00:45
[2026-06-22 23:00:45,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:00:45,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:00:45,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:00:46,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:00:46,170.170 INFO    ] time= 22/06/2026 23:00:46
[2026-06-22 23:00:46,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:00:46,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:00:46,378.378 INFO    ] No existing commands found in stream
[2026-06-22 23:00:51,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:00:51,393.393 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-22 23:00:53,809.809 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:00:53,812.812 INFO    ] Checking for system updates...
[2026-06-22 23:00:53,849.849 INFO    ] 200
[2026-06-22 23:00:53,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:00:53,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:00:53,919.919 INFO    ] No update needed
[2026-06-22 23:00:53,922.922 INFO    ] Checking for camera pi updates...
[2026-06-22 23:00:53,957.957 INFO    ] 200
[2026-06-22 23:00:53,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:00:54,009.009 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:00:54,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:00:54,118.118 INFO    ] No camera update needed
[2026-06-22 23:00:54,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:00:54,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:00:54,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:00:54,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:00:56,173.173 INFO    ] ================================================
[2026-06-22 23:00:56,189.189 INFO    ] Launching Daemon at Mon Jun 22 23:00:56 IST 2026
[2026-06-22 23:00:56,201.201 INFO    ] ================================================
[2026-06-22 23:00:56,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:00:56
[2026-06-22 23:00:57,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:00:57,666.666 INFO    ] Initializing speech engine...
[2026-06-22 23:00:57,673.673 INFO    ] 2026-06-22 23:00:57
[2026-06-22 23:00:57,920.920 INFO    ] 2026-06-22 23:00:57
[2026-06-22 23:00:57,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:00:58,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:00:58,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:00:58,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:00:58,506.506 INFO    ] time= 22/06/2026 23:00:58
[2026-06-22 23:00:58,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:00:58,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:00:58,650.650 INFO    ] No existing commands found in stream
[2026-06-22 23:01:03,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:01:03,677.677 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-22 23:01:05,781.781 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:01:05,783.783 INFO    ] Checking for system updates...
[2026-06-22 23:01:05,820.820 INFO    ] 200
[2026-06-22 23:01:05,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:01:05,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:01:05,879.879 INFO    ] No update needed
[2026-06-22 23:01:05,881.881 INFO    ] Checking for camera pi updates...
[2026-06-22 23:01:05,919.919 INFO    ] 200
[2026-06-22 23:01:05,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:01:05,967.967 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:01:06,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:01:06,057.057 INFO    ] No camera update needed
[2026-06-22 23:01:06,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:01:06,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:01:06,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:01:06,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:01:08,114.114 INFO    ] ================================================
[2026-06-22 23:01:08,129.129 INFO    ] Launching Daemon at Mon Jun 22 23:01:08 IST 2026
[2026-06-22 23:01:08,140.140 INFO    ] ================================================
[2026-06-22 23:01:08,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:01:08
[2026-06-22 23:01:09,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:01:09,596.596 INFO    ] Initializing speech engine...
[2026-06-22 23:01:09,604.604 INFO    ] 2026-06-22 23:01:09
[2026-06-22 23:01:09,859.859 INFO    ] 2026-06-22 23:01:09
[2026-06-22 23:01:09,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:01:10,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:01:10,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:01:10,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:01:10,331.331 INFO    ] time= 22/06/2026 23:01:10
[2026-06-22 23:01:10,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:01:10,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:01:10,548.548 INFO    ] No existing commands found in stream
[2026-06-22 23:01:15,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:01:15,582.582 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-22 23:01:15,995.995 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:01:15,998.998 INFO    ] Checking for system updates...
[2026-06-22 23:01:16,038.038 INFO    ] 200
[2026-06-22 23:01:16,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:01:16,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:01:16,097.097 INFO    ] No update needed
[2026-06-22 23:01:16,099.099 INFO    ] Checking for camera pi updates...
[2026-06-22 23:01:16,133.133 INFO    ] 200
[2026-06-22 23:01:16,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:01:16,176.176 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:01:16,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:01:16,282.282 INFO    ] No camera update needed
[2026-06-22 23:01:16,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:01:16,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:01:16,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:01:16,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:01:18,338.338 INFO    ] ================================================
[2026-06-22 23:01:18,354.354 INFO    ] Launching Daemon at Mon Jun 22 23:01:18 IST 2026
[2026-06-22 23:01:18,365.365 INFO    ] ================================================
[2026-06-22 23:01:18,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:01:18
[2026-06-22 23:01:19,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:01:19,817.817 INFO    ] Initializing speech engine...
[2026-06-22 23:01:19,826.826 INFO    ] 2026-06-22 23:01:19
[2026-06-22 23:01:20,078.078 INFO    ] 2026-06-22 23:01:20
[2026-06-22 23:01:20,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:01:20,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:01:20,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:01:20,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:01:20,630.630 INFO    ] time= 22/06/2026 23:01:20
[2026-06-22 23:01:20,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:01:20,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:01:20,783.783 INFO    ] No existing commands found in stream
[2026-06-22 23:01:25,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:01:25,808.808 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-22 23:01:28,381.381 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:01:28,384.384 INFO    ] Checking for system updates...
[2026-06-22 23:01:28,420.420 INFO    ] 200
[2026-06-22 23:01:28,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:01:28,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:01:28,485.485 INFO    ] No update needed
[2026-06-22 23:01:28,488.488 INFO    ] Checking for camera pi updates...
[2026-06-22 23:01:28,522.522 INFO    ] 200
[2026-06-22 23:01:28,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:01:28,572.572 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:01:28,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:01:28,656.656 INFO    ] No camera update needed
[2026-06-22 23:01:28,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:01:28,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:01:28,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:01:28,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:01:30,712.712 INFO    ] ================================================
[2026-06-22 23:01:30,728.728 INFO    ] Launching Daemon at Mon Jun 22 23:01:30 IST 2026
[2026-06-22 23:01:30,739.739 INFO    ] ================================================
[2026-06-22 23:01:31,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:01:31
[2026-06-22 23:01:31,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:01:32,261.261 INFO    ] Initializing speech engine...
[2026-06-22 23:01:32,272.272 INFO    ] 2026-06-22 23:01:32
[2026-06-22 23:01:32,538.538 INFO    ] 2026-06-22 23:01:32
[2026-06-22 23:01:32,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:01:32,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:01:32,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:01:32,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:01:33,016.016 INFO    ] time= 22/06/2026 23:01:32
[2026-06-22 23:01:33,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:01:33,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:01:33,245.245 INFO    ] No existing commands found in stream
[2026-06-22 23:01:38,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:01:38,281.281 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-22 23:01:40,836.836 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:01:40,839.839 INFO    ] Checking for system updates...
[2026-06-22 23:01:40,875.875 INFO    ] 200
[2026-06-22 23:01:40,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:01:40,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:01:40,938.938 INFO    ] No update needed
[2026-06-22 23:01:40,941.941 INFO    ] Checking for camera pi updates...
[2026-06-22 23:01:40,978.978 INFO    ] 200
[2026-06-22 23:01:40,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:01:41,023.023 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:01:41,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:01:41,109.109 INFO    ] No camera update needed
[2026-06-22 23:01:41,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:01:41,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:01:41,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:01:41,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:01:43,165.165 INFO    ] ================================================
[2026-06-22 23:01:43,180.180 INFO    ] Launching Daemon at Mon Jun 22 23:01:43 IST 2026
[2026-06-22 23:01:43,191.191 INFO    ] ================================================
[2026-06-22 23:01:43,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:01:43
[2026-06-22 23:01:44,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:01:44,790.790 INFO    ] Initializing speech engine...
[2026-06-22 23:01:44,800.800 INFO    ] 2026-06-22 23:01:44
[2026-06-22 23:01:45,114.114 INFO    ] 2026-06-22 23:01:45
[2026-06-22 23:01:45,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:01:45,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:01:45,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:01:45,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:01:45,621.621 INFO    ] time= 22/06/2026 23:01:45
[2026-06-22 23:01:45,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:01:45,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:01:45,777.777 INFO    ] No existing commands found in stream
[2026-06-22 23:01:50,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:01:50,800.800 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-22 23:01:54,985.985 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:01:54,987.987 INFO    ] Checking for system updates...
[2026-06-22 23:01:55,008.008 INFO    ] 200
[2026-06-22 23:01:55,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:01:55,052.052 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:01:55,055.055 INFO    ] No update needed
[2026-06-22 23:01:55,058.058 INFO    ] Checking for camera pi updates...
[2026-06-22 23:01:55,098.098 INFO    ] 200
[2026-06-22 23:01:55,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:01:55,148.148 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:01:55,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:01:55,235.235 INFO    ] No camera update needed
[2026-06-22 23:01:55,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:01:55,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:01:55,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:01:55,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:01:57,293.293 INFO    ] ================================================
[2026-06-22 23:01:57,309.309 INFO    ] Launching Daemon at Mon Jun 22 23:01:57 IST 2026
[2026-06-22 23:01:57,320.320 INFO    ] ================================================
[2026-06-22 23:01:57,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:01:57
[2026-06-22 23:01:58,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:01:58,758.758 INFO    ] Initializing speech engine...
[2026-06-22 23:01:58,775.775 INFO    ] 2026-06-22 23:01:58
[2026-06-22 23:01:59,046.046 INFO    ] 2026-06-22 23:01:59
[2026-06-22 23:01:59,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:01:59,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:01:59,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:01:59,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:01:59,518.518 INFO    ] time= 22/06/2026 23:01:59
[2026-06-22 23:01:59,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:01:59,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:01:59,685.685 INFO    ] No existing commands found in stream
[2026-06-22 23:02:04,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:02:04,701.701 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-22 23:02:08,732.732 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:02:08,736.736 INFO    ] Checking for system updates...
[2026-06-22 23:02:08,775.775 INFO    ] 200
[2026-06-22 23:02:08,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:02:08,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:02:08,835.835 INFO    ] No update needed
[2026-06-22 23:02:08,837.837 INFO    ] Checking for camera pi updates...
[2026-06-22 23:02:08,871.871 INFO    ] 200
[2026-06-22 23:02:08,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:02:08,918.918 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:02:09,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:02:09,091.091 INFO    ] No camera update needed
[2026-06-22 23:02:09,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:02:09,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:02:09,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:02:09,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:02:11,145.145 INFO    ] ================================================
[2026-06-22 23:02:11,160.160 INFO    ] Launching Daemon at Mon Jun 22 23:02:11 IST 2026
[2026-06-22 23:02:11,171.171 INFO    ] ================================================
[2026-06-22 23:02:11,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:02:11
[2026-06-22 23:02:12,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:02:12,598.598 INFO    ] Initializing speech engine...
[2026-06-22 23:02:12,617.617 INFO    ] 2026-06-22 23:02:12
[2026-06-22 23:02:12,868.868 INFO    ] 2026-06-22 23:02:12
[2026-06-22 23:02:12,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:02:13,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:02:13,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:02:13,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:02:13,319.319 INFO    ] time= 22/06/2026 23:02:13
[2026-06-22 23:02:13,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:02:13,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:02:13,610.610 INFO    ] No existing commands found in stream
[2026-06-22 23:02:18,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:02:18,642.642 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-22 23:02:21,606.606 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:02:21,609.609 INFO    ] Checking for system updates...
[2026-06-22 23:02:21,646.646 INFO    ] 200
[2026-06-22 23:02:21,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:02:21,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:02:21,705.705 INFO    ] No update needed
[2026-06-22 23:02:21,708.708 INFO    ] Checking for camera pi updates...
[2026-06-22 23:02:21,750.750 INFO    ] 200
[2026-06-22 23:02:21,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:02:21,793.793 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:02:21,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:02:21,888.888 INFO    ] No camera update needed
[2026-06-22 23:02:21,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:02:21,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:02:21,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:02:21,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:02:23,947.947 INFO    ] ================================================
[2026-06-22 23:02:23,966.966 INFO    ] Launching Daemon at Mon Jun 22 23:02:23 IST 2026
[2026-06-22 23:02:23,977.977 INFO    ] ================================================
[2026-06-22 23:02:24,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:02:24
[2026-06-22 23:02:25,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:02:25,412.412 INFO    ] Initializing speech engine...
[2026-06-22 23:02:25,421.421 INFO    ] 2026-06-22 23:02:25
[2026-06-22 23:02:25,670.670 INFO    ] 2026-06-22 23:02:25
[2026-06-22 23:02:25,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:02:25,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:02:25,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:02:26,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:02:26,162.162 INFO    ] time= 22/06/2026 23:02:26
[2026-06-22 23:02:26,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:02:26,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:02:26,373.373 INFO    ] No existing commands found in stream
[2026-06-22 23:02:31,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:02:31,397.397 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-22 23:02:33,582.582 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:02:33,584.584 INFO    ] Checking for system updates...
[2026-06-22 23:02:33,620.620 INFO    ] 200
[2026-06-22 23:02:33,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:02:33,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:02:33,684.684 INFO    ] No update needed
[2026-06-22 23:02:33,686.686 INFO    ] Checking for camera pi updates...
[2026-06-22 23:02:33,721.721 INFO    ] 200
[2026-06-22 23:02:33,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:02:33,764.764 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:02:33,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:02:33,849.849 INFO    ] No camera update needed
[2026-06-22 23:02:33,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:02:33,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:02:33,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:02:33,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:02:35,903.903 INFO    ] ================================================
[2026-06-22 23:02:35,918.918 INFO    ] Launching Daemon at Mon Jun 22 23:02:35 IST 2026
[2026-06-22 23:02:35,929.929 INFO    ] ================================================
[2026-06-22 23:02:36,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:02:36
[2026-06-22 23:02:37,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:02:37,361.361 INFO    ] Initializing speech engine...
[2026-06-22 23:02:37,367.367 INFO    ] 2026-06-22 23:02:37
[2026-06-22 23:02:37,626.626 INFO    ] 2026-06-22 23:02:37
[2026-06-22 23:02:37,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:02:37,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:02:37,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:02:38,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:02:38,084.084 INFO    ] time= 22/06/2026 23:02:38
[2026-06-22 23:02:38,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:02:38,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:02:38,303.303 INFO    ] No existing commands found in stream
[2026-06-22 23:02:43,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:02:43,333.333 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-22 23:02:44,954.954 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:02:44,956.956 INFO    ] Checking for system updates...
[2026-06-22 23:02:44,993.993 INFO    ] 200
[2026-06-22 23:02:44,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:02:45,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:02:45,053.053 INFO    ] No update needed
[2026-06-22 23:02:45,056.056 INFO    ] Checking for camera pi updates...
[2026-06-22 23:02:45,091.091 INFO    ] 200
[2026-06-22 23:02:45,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:02:45,140.140 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:02:45,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:02:45,214.214 INFO    ] No camera update needed
[2026-06-22 23:02:45,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:02:45,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:02:45,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:02:45,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:02:47,272.272 INFO    ] ================================================
[2026-06-22 23:02:47,288.288 INFO    ] Launching Daemon at Mon Jun 22 23:02:47 IST 2026
[2026-06-22 23:02:47,299.299 INFO    ] ================================================
[2026-06-22 23:02:47,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:02:47
[2026-06-22 23:02:48,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:02:48,718.718 INFO    ] Initializing speech engine...
[2026-06-22 23:02:48,726.726 INFO    ] 2026-06-22 23:02:48
[2026-06-22 23:02:48,976.976 INFO    ] 2026-06-22 23:02:48
[2026-06-22 23:02:49,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:02:49,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:02:49,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:02:49,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:02:49,347.347 INFO    ] time= 22/06/2026 23:02:49
[2026-06-22 23:02:49,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:02:49,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:02:49,429.429 INFO    ] No existing commands found in stream
[2026-06-22 23:02:54,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:02:54,468.468 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-22 23:02:55,051.051 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:02:55,052.052 INFO    ] Checking for system updates...
[2026-06-22 23:02:55,074.074 INFO    ] 200
[2026-06-22 23:02:55,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:02:55,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:02:55,107.107 INFO    ] No update needed
[2026-06-22 23:02:55,109.109 INFO    ] Checking for camera pi updates...
[2026-06-22 23:02:55,128.128 INFO    ] 200
[2026-06-22 23:02:55,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:02:55,160.160 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:02:55,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:02:55,261.261 INFO    ] No camera update needed
[2026-06-22 23:02:55,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:02:55,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:02:55,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:02:55,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:02:57,316.316 INFO    ] ================================================
[2026-06-22 23:02:57,332.332 INFO    ] Launching Daemon at Mon Jun 22 23:02:57 IST 2026
[2026-06-22 23:02:57,343.343 INFO    ] ================================================
[2026-06-22 23:02:57,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:02:57
[2026-06-22 23:02:58,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:02:58,768.768 INFO    ] Initializing speech engine...
[2026-06-22 23:02:58,777.777 INFO    ] 2026-06-22 23:02:58
[2026-06-22 23:02:59,027.027 INFO    ] 2026-06-22 23:02:59
[2026-06-22 23:02:59,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:02:59,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:02:59,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:02:59,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:02:59,972.972 INFO    ] time= 22/06/2026 23:02:59
[2026-06-22 23:03:00,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:03:00,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:03:00,137.137 INFO    ] No existing commands found in stream
[2026-06-22 23:03:05,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:03:05,166.166 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-22 23:03:08,996.996 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:03:08,998.998 INFO    ] Checking for system updates...
[2026-06-22 23:03:09,034.034 INFO    ] 200
[2026-06-22 23:03:09,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:03:09,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:03:09,097.097 INFO    ] No update needed
[2026-06-22 23:03:09,100.100 INFO    ] Checking for camera pi updates...
[2026-06-22 23:03:09,134.134 INFO    ] 200
[2026-06-22 23:03:09,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:03:09,182.182 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:03:09,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:03:09,269.269 INFO    ] No camera update needed
[2026-06-22 23:03:09,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:03:09,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:03:09,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:03:09,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:03:11,328.328 INFO    ] ================================================
[2026-06-22 23:03:11,346.346 INFO    ] Launching Daemon at Mon Jun 22 23:03:11 IST 2026
[2026-06-22 23:03:11,358.358 INFO    ] ================================================
[2026-06-22 23:03:12,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:03:12
[2026-06-22 23:03:12,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:03:12,855.855 INFO    ] Initializing speech engine...
[2026-06-22 23:03:12,864.864 INFO    ] 2026-06-22 23:03:12
[2026-06-22 23:03:13,136.136 INFO    ] 2026-06-22 23:03:13
[2026-06-22 23:03:13,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:03:13,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:03:13,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:03:13,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:03:13,512.512 INFO    ] time= 22/06/2026 23:03:13
[2026-06-22 23:03:13,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:03:13,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:03:13,590.590 INFO    ] No existing commands found in stream
[2026-06-22 23:03:18,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:03:18,628.628 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-22 23:03:19,626.626 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:03:19,628.628 INFO    ] Checking for system updates...
[2026-06-22 23:03:19,665.665 INFO    ] 200
[2026-06-22 23:03:19,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:03:19,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:03:19,731.731 INFO    ] No update needed
[2026-06-22 23:03:19,733.733 INFO    ] Checking for camera pi updates...
[2026-06-22 23:03:19,767.767 INFO    ] 200
[2026-06-22 23:03:19,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:03:19,816.816 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:03:19,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:03:19,903.903 INFO    ] No camera update needed
[2026-06-22 23:03:19,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:03:19,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:03:19,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:03:19,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:03:21,964.964 INFO    ] ================================================
[2026-06-22 23:03:21,979.979 INFO    ] Launching Daemon at Mon Jun 22 23:03:21 IST 2026
[2026-06-22 23:03:21,990.990 INFO    ] ================================================
[2026-06-22 23:03:22,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:03:22
[2026-06-22 23:03:23,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:03:23,436.436 INFO    ] Initializing speech engine...
[2026-06-22 23:03:23,445.445 INFO    ] 2026-06-22 23:03:23
[2026-06-22 23:03:23,741.741 INFO    ] 2026-06-22 23:03:23
[2026-06-22 23:03:23,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:03:23,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:03:23,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:03:24,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:03:24,124.124 INFO    ] time= 22/06/2026 23:03:24
[2026-06-22 23:03:24,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:03:24,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:03:24,252.252 INFO    ] No existing commands found in stream
[2026-06-22 23:03:29,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:03:29,269.269 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-22 23:03:31,790.790 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:03:31,794.794 INFO    ] Checking for system updates...
[2026-06-22 23:03:31,835.835 INFO    ] 200
[2026-06-22 23:03:31,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:03:31,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:03:31,900.900 INFO    ] No update needed
[2026-06-22 23:03:31,902.902 INFO    ] Checking for camera pi updates...
[2026-06-22 23:03:31,939.939 INFO    ] 200
[2026-06-22 23:03:31,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:03:31,993.993 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:03:32,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:03:32,073.073 INFO    ] No camera update needed
[2026-06-22 23:03:32,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:03:32,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:03:32,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:03:32,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:03:34,132.132 INFO    ] ================================================
[2026-06-22 23:03:34,147.147 INFO    ] Launching Daemon at Mon Jun 22 23:03:34 IST 2026
[2026-06-22 23:03:34,159.159 INFO    ] ================================================
[2026-06-22 23:03:34,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:03:34
[2026-06-22 23:03:35,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:03:35,755.755 INFO    ] Initializing speech engine...
[2026-06-22 23:03:35,769.769 INFO    ] 2026-06-22 23:03:35
[2026-06-22 23:03:36,074.074 INFO    ] 2026-06-22 23:03:36
[2026-06-22 23:03:36,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:03:36,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:03:36,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:03:36,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:03:36,581.581 INFO    ] time= 22/06/2026 23:03:36
[2026-06-22 23:03:36,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:03:36,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:03:36,739.739 INFO    ] No existing commands found in stream
[2026-06-22 23:03:41,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:03:41,759.759 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-22 23:03:42,367.367 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:03:42,369.369 INFO    ] Checking for system updates...
[2026-06-22 23:03:42,402.402 INFO    ] 200
[2026-06-22 23:03:42,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:03:42,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:03:42,470.470 INFO    ] No update needed
[2026-06-22 23:03:42,472.472 INFO    ] Checking for camera pi updates...
[2026-06-22 23:03:42,510.510 INFO    ] 200
[2026-06-22 23:03:42,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:03:42,559.559 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:03:42,636.636 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:03:42,639.639 INFO    ] No camera update needed
[2026-06-22 23:03:42,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:03:42,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:03:42,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:03:42,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:03:44,697.697 INFO    ] ================================================
[2026-06-22 23:03:44,712.712 INFO    ] Launching Daemon at Mon Jun 22 23:03:44 IST 2026
[2026-06-22 23:03:44,723.723 INFO    ] ================================================
[2026-06-22 23:03:45,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:03:45
[2026-06-22 23:03:45,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:03:46,227.227 INFO    ] Initializing speech engine...
[2026-06-22 23:03:46,237.237 INFO    ] 2026-06-22 23:03:46
[2026-06-22 23:03:46,524.524 INFO    ] 2026-06-22 23:03:46
[2026-06-22 23:03:46,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:03:46,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:03:46,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:03:46,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:03:46,999.999 INFO    ] time= 22/06/2026 23:03:46
[2026-06-22 23:03:47,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:03:47,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:03:47,219.219 INFO    ] No existing commands found in stream
[2026-06-22 23:03:52,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:03:52,240.240 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-22 23:03:52,988.988 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:03:52,992.992 INFO    ] Checking for system updates...
[2026-06-22 23:03:53,034.034 INFO    ] 200
[2026-06-22 23:03:53,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:03:53,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:03:53,107.107 INFO    ] No update needed
[2026-06-22 23:03:53,110.110 INFO    ] Checking for camera pi updates...
[2026-06-22 23:03:53,145.145 INFO    ] 200
[2026-06-22 23:03:53,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:03:53,190.190 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:03:53,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:03:53,303.303 INFO    ] No camera update needed
[2026-06-22 23:03:53,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:03:53,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:03:53,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:03:53,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:03:55,364.364 INFO    ] ================================================
[2026-06-22 23:03:55,380.380 INFO    ] Launching Daemon at Mon Jun 22 23:03:55 IST 2026
[2026-06-22 23:03:55,391.391 INFO    ] ================================================
[2026-06-22 23:03:56,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:03:56
[2026-06-22 23:03:56,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:03:56,922.922 INFO    ] Initializing speech engine...
[2026-06-22 23:03:56,935.935 INFO    ] 2026-06-22 23:03:56
[2026-06-22 23:03:57,186.186 INFO    ] 2026-06-22 23:03:57
[2026-06-22 23:03:57,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:03:59,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:03:59,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:04:00,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:04:00,117.117 INFO    ] time= 22/06/2026 23:04:00
[2026-06-22 23:04:00,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:04:00,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:04:00,196.196 INFO    ] No existing commands found in stream
[2026-06-22 23:04:05,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:04:05,210.210 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-22 23:04:07,477.477 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:04:07,480.480 INFO    ] Checking for system updates...
[2026-06-22 23:04:07,522.522 INFO    ] 200
[2026-06-22 23:04:07,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:04:07,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:04:07,582.582 INFO    ] No update needed
[2026-06-22 23:04:07,585.585 INFO    ] Checking for camera pi updates...
[2026-06-22 23:04:07,624.624 INFO    ] 200
[2026-06-22 23:04:07,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:04:07,671.671 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:04:07,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:04:07,753.753 INFO    ] No camera update needed
[2026-06-22 23:04:07,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:04:07,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:04:07,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:04:07,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:04:09,815.815 INFO    ] ================================================
[2026-06-22 23:04:09,830.830 INFO    ] Launching Daemon at Mon Jun 22 23:04:09 IST 2026
[2026-06-22 23:04:09,842.842 INFO    ] ================================================
[2026-06-22 23:04:10,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:04:10
[2026-06-22 23:04:10,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:04:11,166.166 INFO    ] Initializing speech engine...
[2026-06-22 23:04:11,172.172 INFO    ] 2026-06-22 23:04:11
[2026-06-22 23:04:11,471.471 INFO    ] 2026-06-22 23:04:11
[2026-06-22 23:04:11,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:04:11,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:04:11,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:04:11,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:04:11,857.857 INFO    ] time= 22/06/2026 23:04:11
[2026-06-22 23:04:11,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:04:11,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:04:11,983.983 INFO    ] No existing commands found in stream
[2026-06-22 23:04:16,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:04:16,998.998 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-22 23:04:18,307.307 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:04:18,310.310 INFO    ] Checking for system updates...
[2026-06-22 23:04:18,350.350 INFO    ] 200
[2026-06-22 23:04:18,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:04:18,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:04:18,416.416 INFO    ] No update needed
[2026-06-22 23:04:18,418.418 INFO    ] Checking for camera pi updates...
[2026-06-22 23:04:18,457.457 INFO    ] 200
[2026-06-22 23:04:18,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:04:18,501.501 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:04:18,593.593 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:04:18,596.596 INFO    ] No camera update needed
[2026-06-22 23:04:18,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:04:18,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:04:18,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:04:18,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:04:20,654.654 INFO    ] ================================================
[2026-06-22 23:04:20,670.670 INFO    ] Launching Daemon at Mon Jun 22 23:04:20 IST 2026
[2026-06-22 23:04:20,681.681 INFO    ] ================================================
[2026-06-22 23:04:21,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:04:21
[2026-06-22 23:04:21,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:04:22,055.055 INFO    ] Initializing speech engine...
[2026-06-22 23:04:22,064.064 INFO    ] 2026-06-22 23:04:22
[2026-06-22 23:04:22,326.326 INFO    ] 2026-06-22 23:04:22
[2026-06-22 23:04:22,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:04:22,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:04:22,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:04:22,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:04:22,808.808 INFO    ] time= 22/06/2026 23:04:22
[2026-06-22 23:04:22,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:04:22,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:04:23,010.010 INFO    ] No existing commands found in stream
[2026-06-22 23:04:28,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:04:28,041.041 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-22 23:04:31,078.078 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:04:31,081.081 INFO    ] Checking for system updates...
[2026-06-22 23:04:31,119.119 INFO    ] 200
[2026-06-22 23:04:31,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:04:31,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:04:31,180.180 INFO    ] No update needed
[2026-06-22 23:04:31,182.182 INFO    ] Checking for camera pi updates...
[2026-06-22 23:04:31,216.216 INFO    ] 200
[2026-06-22 23:04:31,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:04:31,260.260 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:04:31,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:04:31,365.365 INFO    ] No camera update needed
[2026-06-22 23:04:31,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:04:31,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:04:31,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:04:31,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:04:33,422.422 INFO    ] ================================================
[2026-06-22 23:04:33,438.438 INFO    ] Launching Daemon at Mon Jun 22 23:04:33 IST 2026
[2026-06-22 23:04:33,450.450 INFO    ] ================================================
[2026-06-22 23:04:34,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:04:34
[2026-06-22 23:04:34,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:04:35,046.046 INFO    ] Initializing speech engine...
[2026-06-22 23:04:35,061.061 INFO    ] 2026-06-22 23:04:35
[2026-06-22 23:04:35,337.337 INFO    ] 2026-06-22 23:04:35
[2026-06-22 23:04:35,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:04:35,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:04:35,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:04:35,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:04:35,797.797 INFO    ] time= 22/06/2026 23:04:35
[2026-06-22 23:04:35,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:04:35,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:04:35,953.953 INFO    ] No existing commands found in stream
[2026-06-22 23:04:40,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:04:40,991.991 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-22 23:04:42,883.883 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:04:42,885.885 INFO    ] Checking for system updates...
[2026-06-22 23:04:42,906.906 INFO    ] 200
[2026-06-22 23:04:42,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:04:42,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:04:42,956.956 INFO    ] No update needed
[2026-06-22 23:04:42,959.959 INFO    ] Checking for camera pi updates...
[2026-06-22 23:04:42,995.995 INFO    ] 200
[2026-06-22 23:04:42,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:04:43,039.039 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:04:43,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:04:43,096.096 INFO    ] No camera update needed
[2026-06-22 23:04:43,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:04:43,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:04:43,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:04:43,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:04:45,152.152 INFO    ] ================================================
[2026-06-22 23:04:45,167.167 INFO    ] Launching Daemon at Mon Jun 22 23:04:45 IST 2026
[2026-06-22 23:04:45,179.179 INFO    ] ================================================
[2026-06-22 23:04:45,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:04:45
[2026-06-22 23:04:46,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:04:46,520.520 INFO    ] Initializing speech engine...
[2026-06-22 23:04:46,525.525 INFO    ] 2026-06-22 23:04:46
[2026-06-22 23:04:46,788.788 INFO    ] 2026-06-22 23:04:46
[2026-06-22 23:04:46,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:04:47,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:04:47,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:04:47,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:04:47,250.250 INFO    ] time= 22/06/2026 23:04:47
[2026-06-22 23:04:47,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:04:47,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:04:47,464.464 INFO    ] No existing commands found in stream
[2026-06-22 23:04:52,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:04:52,494.494 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-22 23:04:56,115.115 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:04:56,118.118 INFO    ] Checking for system updates...
[2026-06-22 23:04:56,155.155 INFO    ] 200
[2026-06-22 23:04:56,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:04:56,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:04:56,216.216 INFO    ] No update needed
[2026-06-22 23:04:56,219.219 INFO    ] Checking for camera pi updates...
[2026-06-22 23:04:56,257.257 INFO    ] 200
[2026-06-22 23:04:56,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:04:56,309.309 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:04:56,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:04:56,395.395 INFO    ] No camera update needed
[2026-06-22 23:04:56,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:04:56,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:04:56,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:04:56,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:04:58,455.455 INFO    ] ================================================
[2026-06-22 23:04:58,470.470 INFO    ] Launching Daemon at Mon Jun 22 23:04:58 IST 2026
[2026-06-22 23:04:58,481.481 INFO    ] ================================================
[2026-06-22 23:04:59,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:04:59
[2026-06-22 23:04:59,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:04:59,942.942 INFO    ] Initializing speech engine...
[2026-06-22 23:04:59,966.966 INFO    ] 2026-06-22 23:04:59
[2026-06-22 23:05:00,235.235 INFO    ] 2026-06-22 23:05:00
[2026-06-22 23:05:00,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:05:00,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:05:00,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:05:00,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:05:00,884.884 INFO    ] time= 22/06/2026 23:05:00
[2026-06-22 23:05:00,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:05:00,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:05:01,014.014 INFO    ] No existing commands found in stream
[2026-06-22 23:05:06,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:05:06,042.042 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-22 23:05:08,832.832 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:05:08,835.835 INFO    ] Checking for system updates...
[2026-06-22 23:05:08,874.874 INFO    ] 200
[2026-06-22 23:05:08,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:05:08,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:05:08,938.938 INFO    ] No update needed
[2026-06-22 23:05:08,941.941 INFO    ] Checking for camera pi updates...
[2026-06-22 23:05:08,978.978 INFO    ] 200
[2026-06-22 23:05:08,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:05:09,023.023 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:05:09,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:05:09,110.110 INFO    ] No camera update needed
[2026-06-22 23:05:09,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:05:09,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:05:09,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:05:09,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:05:11,169.169 INFO    ] ================================================
[2026-06-22 23:05:11,185.185 INFO    ] Launching Daemon at Mon Jun 22 23:05:11 IST 2026
[2026-06-22 23:05:11,195.195 INFO    ] ================================================
[2026-06-22 23:05:11,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:05:11
[2026-06-22 23:05:12,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:05:12,631.631 INFO    ] Initializing speech engine...
[2026-06-22 23:05:12,639.639 INFO    ] 2026-06-22 23:05:12
[2026-06-22 23:05:12,859.859 INFO    ] 2026-06-22 23:05:12
[2026-06-22 23:05:12,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:05:13,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:05:13,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:05:13,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:05:13,240.240 INFO    ] time= 22/06/2026 23:05:13
[2026-06-22 23:05:13,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:05:13,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:05:13,354.354 INFO    ] No existing commands found in stream
[2026-06-22 23:05:18,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:05:18,370.370 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-22 23:05:20,110.110 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:05:20,112.112 INFO    ] Checking for system updates...
[2026-06-22 23:05:20,132.132 INFO    ] 200
[2026-06-22 23:05:20,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:05:20,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:05:20,179.179 INFO    ] No update needed
[2026-06-22 23:05:20,181.181 INFO    ] Checking for camera pi updates...
[2026-06-22 23:05:20,219.219 INFO    ] 200
[2026-06-22 23:05:20,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:05:20,267.267 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:05:20,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:05:20,353.353 INFO    ] No camera update needed
[2026-06-22 23:05:20,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:05:20,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:05:20,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:05:20,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:05:22,409.409 INFO    ] ================================================
[2026-06-22 23:05:22,425.425 INFO    ] Launching Daemon at Mon Jun 22 23:05:22 IST 2026
[2026-06-22 23:05:22,435.435 INFO    ] ================================================
[2026-06-22 23:05:23,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:05:23
[2026-06-22 23:05:23,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:05:23,917.917 INFO    ] Initializing speech engine...
[2026-06-22 23:05:23,926.926 INFO    ] 2026-06-22 23:05:23
[2026-06-22 23:05:24,172.172 INFO    ] 2026-06-22 23:05:24
[2026-06-22 23:05:24,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:05:24,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:05:24,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:05:24,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:05:24,648.648 INFO    ] time= 22/06/2026 23:05:24
[2026-06-22 23:05:24,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:05:24,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:05:24,876.876 INFO    ] No existing commands found in stream
[2026-06-22 23:05:29,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:05:29,896.896 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-22 23:05:32,509.509 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:05:32,513.513 INFO    ] Checking for system updates...
[2026-06-22 23:05:32,559.559 INFO    ] 200
[2026-06-22 23:05:32,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:05:32,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:05:32,623.623 INFO    ] No update needed
[2026-06-22 23:05:32,627.627 INFO    ] Checking for camera pi updates...
[2026-06-22 23:05:32,665.665 INFO    ] 200
[2026-06-22 23:05:32,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:05:32,719.719 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:05:32,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:05:32,822.822 INFO    ] No camera update needed
[2026-06-22 23:05:32,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:05:32,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:05:32,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:05:32,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:05:34,882.882 INFO    ] ================================================
[2026-06-22 23:05:34,898.898 INFO    ] Launching Daemon at Mon Jun 22 23:05:34 IST 2026
[2026-06-22 23:05:34,909.909 INFO    ] ================================================
[2026-06-22 23:05:35,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:05:35
[2026-06-22 23:05:36,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:05:36,337.337 INFO    ] Initializing speech engine...
[2026-06-22 23:05:36,347.347 INFO    ] 2026-06-22 23:05:36
[2026-06-22 23:05:36,608.608 INFO    ] 2026-06-22 23:05:36
[2026-06-22 23:05:36,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:05:36,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:05:36,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:05:37,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:05:37,079.079 INFO    ] time= 22/06/2026 23:05:37
[2026-06-22 23:05:37,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:05:37,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:05:37,251.251 INFO    ] No existing commands found in stream
[2026-06-22 23:05:42,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:05:42,290.290 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-22 23:05:44,781.781 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:05:44,784.784 INFO    ] Checking for system updates...
[2026-06-22 23:05:44,821.821 INFO    ] 200
[2026-06-22 23:05:44,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:05:44,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:05:44,883.883 INFO    ] No update needed
[2026-06-22 23:05:44,886.886 INFO    ] Checking for camera pi updates...
[2026-06-22 23:05:44,920.920 INFO    ] 200
[2026-06-22 23:05:44,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:05:44,963.963 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:05:45,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:05:45,061.061 INFO    ] No camera update needed
[2026-06-22 23:05:45,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:05:45,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:05:45,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:05:45,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:05:47,116.116 INFO    ] ================================================
[2026-06-22 23:05:47,132.132 INFO    ] Launching Daemon at Mon Jun 22 23:05:47 IST 2026
[2026-06-22 23:05:47,143.143 INFO    ] ================================================
[2026-06-22 23:05:47,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:05:47
[2026-06-22 23:05:48,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:05:48,546.546 INFO    ] Initializing speech engine...
[2026-06-22 23:05:48,567.567 INFO    ] 2026-06-22 23:05:48
[2026-06-22 23:05:48,858.858 INFO    ] 2026-06-22 23:05:48
[2026-06-22 23:05:48,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:05:49,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:05:49,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:05:49,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:05:49,359.359 INFO    ] time= 22/06/2026 23:05:49
[2026-06-22 23:05:49,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:05:49,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:05:49,563.563 INFO    ] No existing commands found in stream
[2026-06-22 23:05:54,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:05:54,599.599 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-22 23:05:55,371.371 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:05:55,374.374 INFO    ] Checking for system updates...
[2026-06-22 23:05:55,413.413 INFO    ] 200
[2026-06-22 23:05:55,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:05:55,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:05:55,475.475 INFO    ] No update needed
[2026-06-22 23:05:55,478.478 INFO    ] Checking for camera pi updates...
[2026-06-22 23:05:55,512.512 INFO    ] 200
[2026-06-22 23:05:55,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:05:55,562.562 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:05:55,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:05:55,621.621 INFO    ] No camera update needed
[2026-06-22 23:05:55,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:05:55,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:05:55,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:05:55,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:05:57,678.678 INFO    ] ================================================
[2026-06-22 23:05:57,695.695 INFO    ] Launching Daemon at Mon Jun 22 23:05:57 IST 2026
[2026-06-22 23:05:57,706.706 INFO    ] ================================================
[2026-06-22 23:05:58,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:05:58
[2026-06-22 23:05:58,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:05:59,093.093 INFO    ] Initializing speech engine...
[2026-06-22 23:05:59,098.098 INFO    ] 2026-06-22 23:05:59
[2026-06-22 23:05:59,361.361 INFO    ] 2026-06-22 23:05:59
[2026-06-22 23:05:59,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:06:01,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:06:01,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:06:01,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:06:01,229.229 INFO    ] time= 22/06/2026 23:06:01
[2026-06-22 23:06:01,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:06:01,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:06:01,340.340 INFO    ] No existing commands found in stream
[2026-06-22 23:06:06,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:06:06,353.353 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-22 23:06:09,835.835 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:06:09,837.837 INFO    ] Checking for system updates...
[2026-06-22 23:06:09,859.859 INFO    ] 200
[2026-06-22 23:06:09,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:06:09,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:06:09,892.892 INFO    ] No update needed
[2026-06-22 23:06:09,893.893 INFO    ] Checking for camera pi updates...
[2026-06-22 23:06:09,930.930 INFO    ] 200
[2026-06-22 23:06:09,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:06:09,978.978 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:06:10,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:06:10,083.083 INFO    ] No camera update needed
[2026-06-22 23:06:10,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:06:10,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:06:10,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:06:10,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:06:12,140.140 INFO    ] ================================================
[2026-06-22 23:06:12,156.156 INFO    ] Launching Daemon at Mon Jun 22 23:06:12 IST 2026
[2026-06-22 23:06:12,167.167 INFO    ] ================================================
[2026-06-22 23:06:12,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:06:12
[2026-06-22 23:06:13,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:06:13,728.728 INFO    ] Initializing speech engine...
[2026-06-22 23:06:13,746.746 INFO    ] 2026-06-22 23:06:13
[2026-06-22 23:06:13,992.992 INFO    ] 2026-06-22 23:06:13
[2026-06-22 23:06:14,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:06:14,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:06:14,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:06:14,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:06:14,405.405 INFO    ] time= 22/06/2026 23:06:14
[2026-06-22 23:06:14,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:06:14,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:06:14,494.494 INFO    ] No existing commands found in stream
[2026-06-22 23:06:19,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:06:19,512.512 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-22 23:06:20,472.472 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:06:20,475.475 INFO    ] Checking for system updates...
[2026-06-22 23:06:20,510.510 INFO    ] 200
[2026-06-22 23:06:20,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:06:20,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:06:20,567.567 INFO    ] No update needed
[2026-06-22 23:06:20,570.570 INFO    ] Checking for camera pi updates...
[2026-06-22 23:06:20,604.604 INFO    ] 200
[2026-06-22 23:06:20,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:06:20,647.647 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:06:20,733.733 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:06:20,735.735 INFO    ] No camera update needed
[2026-06-22 23:06:20,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:06:20,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:06:20,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:06:20,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:06:22,792.792 INFO    ] ================================================
[2026-06-22 23:06:22,808.808 INFO    ] Launching Daemon at Mon Jun 22 23:06:22 IST 2026
[2026-06-22 23:06:22,819.819 INFO    ] ================================================
[2026-06-22 23:06:23,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:06:23
[2026-06-22 23:06:23,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:06:24,237.237 INFO    ] Initializing speech engine...
[2026-06-22 23:06:24,252.252 INFO    ] 2026-06-22 23:06:24
[2026-06-22 23:06:24,520.520 INFO    ] 2026-06-22 23:06:24
[2026-06-22 23:06:24,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:06:24,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:06:24,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:06:24,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:06:25,003.003 INFO    ] time= 22/06/2026 23:06:24
[2026-06-22 23:06:25,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:06:25,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:06:25,166.166 INFO    ] No existing commands found in stream
[2026-06-22 23:06:30,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:06:30,205.205 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-22 23:06:34,149.149 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:06:34,152.152 INFO    ] Checking for system updates...
[2026-06-22 23:06:34,191.191 INFO    ] 200
[2026-06-22 23:06:34,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:06:34,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:06:34,255.255 INFO    ] No update needed
[2026-06-22 23:06:34,258.258 INFO    ] Checking for camera pi updates...
[2026-06-22 23:06:34,295.295 INFO    ] 200
[2026-06-22 23:06:34,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:06:34,338.338 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:06:34,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:06:34,427.427 INFO    ] No camera update needed
[2026-06-22 23:06:34,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:06:34,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:06:34,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:06:34,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:06:36,482.482 INFO    ] ================================================
[2026-06-22 23:06:36,497.497 INFO    ] Launching Daemon at Mon Jun 22 23:06:36 IST 2026
[2026-06-22 23:06:36,508.508 INFO    ] ================================================
[2026-06-22 23:06:37,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:06:37
[2026-06-22 23:06:37,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:06:37,985.985 INFO    ] Initializing speech engine...
[2026-06-22 23:06:37,993.993 INFO    ] 2026-06-22 23:06:37
[2026-06-22 23:06:38,241.241 INFO    ] 2026-06-22 23:06:38
[2026-06-22 23:06:38,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:06:38,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:06:38,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:06:38,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:06:38,605.605 INFO    ] time= 22/06/2026 23:06:38
[2026-06-22 23:06:38,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:06:38,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:06:38,802.802 INFO    ] No existing commands found in stream
[2026-06-22 23:06:43,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:06:43,816.816 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-22 23:06:47,287.287 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:06:47,290.290 INFO    ] Checking for system updates...
[2026-06-22 23:06:47,327.327 INFO    ] 200
[2026-06-22 23:06:47,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:06:47,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:06:47,399.399 INFO    ] No update needed
[2026-06-22 23:06:47,401.401 INFO    ] Checking for camera pi updates...
[2026-06-22 23:06:47,436.436 INFO    ] 200
[2026-06-22 23:06:47,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:06:47,487.487 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:06:47,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:06:47,574.574 INFO    ] No camera update needed
[2026-06-22 23:06:47,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:06:47,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:06:47,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:06:47,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:06:49,633.633 INFO    ] ================================================
[2026-06-22 23:06:49,648.648 INFO    ] Launching Daemon at Mon Jun 22 23:06:49 IST 2026
[2026-06-22 23:06:49,660.660 INFO    ] ================================================
[2026-06-22 23:06:50,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:06:50
[2026-06-22 23:06:50,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:06:51,112.112 INFO    ] Initializing speech engine...
[2026-06-22 23:06:51,122.122 INFO    ] 2026-06-22 23:06:51
[2026-06-22 23:06:51,376.376 INFO    ] 2026-06-22 23:06:51
[2026-06-22 23:06:51,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:06:51,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:06:51,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:06:51,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:06:51,839.839 INFO    ] time= 22/06/2026 23:06:51
[2026-06-22 23:06:51,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:06:51,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:06:52,063.063 INFO    ] No existing commands found in stream
[2026-06-22 23:06:57,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:06:57,090.090 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-22 23:07:02,024.024 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:07:02,027.027 INFO    ] Checking for system updates...
[2026-06-22 23:07:02,070.070 INFO    ] 200
[2026-06-22 23:07:02,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:07:02,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:07:02,140.140 INFO    ] No update needed
[2026-06-22 23:07:02,143.143 INFO    ] Checking for camera pi updates...
[2026-06-22 23:07:02,180.180 INFO    ] 200
[2026-06-22 23:07:02,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:07:02,231.231 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:07:02,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:07:02,294.294 INFO    ] No camera update needed
[2026-06-22 23:07:02,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:07:02,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:07:02,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:07:02,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:07:04,357.357 INFO    ] ================================================
[2026-06-22 23:07:04,373.373 INFO    ] Launching Daemon at Mon Jun 22 23:07:04 IST 2026
[2026-06-22 23:07:04,384.384 INFO    ] ================================================
[2026-06-22 23:07:04,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:07:04
[2026-06-22 23:07:05,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:07:05,848.848 INFO    ] Initializing speech engine...
[2026-06-22 23:07:05,857.857 INFO    ] 2026-06-22 23:07:05
[2026-06-22 23:07:06,106.106 INFO    ] 2026-06-22 23:07:06
[2026-06-22 23:07:06,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:07:06,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:07:06,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:07:06,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:07:06,618.618 INFO    ] time= 22/06/2026 23:07:06
[2026-06-22 23:07:06,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:07:06,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:07:06,821.821 INFO    ] No existing commands found in stream
[2026-06-22 23:07:11,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:07:11,844.844 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-22 23:07:16,183.183 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:07:16,186.186 INFO    ] Checking for system updates...
[2026-06-22 23:07:16,223.223 INFO    ] 200
[2026-06-22 23:07:16,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:07:16,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:07:16,286.286 INFO    ] No update needed
[2026-06-22 23:07:16,289.289 INFO    ] Checking for camera pi updates...
[2026-06-22 23:07:16,327.327 INFO    ] 200
[2026-06-22 23:07:16,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:07:16,376.376 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:07:16,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:07:16,463.463 INFO    ] No camera update needed
[2026-06-22 23:07:16,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:07:16,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:07:16,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:07:16,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:07:18,520.520 INFO    ] ================================================
[2026-06-22 23:07:18,536.536 INFO    ] Launching Daemon at Mon Jun 22 23:07:18 IST 2026
[2026-06-22 23:07:18,547.547 INFO    ] ================================================
[2026-06-22 23:07:19,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:07:19
[2026-06-22 23:07:19,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:07:20,195.195 INFO    ] Initializing speech engine...
[2026-06-22 23:07:20,209.209 INFO    ] 2026-06-22 23:07:20
[2026-06-22 23:07:20,487.487 INFO    ] 2026-06-22 23:07:20
[2026-06-22 23:07:20,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:07:20,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:07:20,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:07:20,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:07:20,975.975 INFO    ] time= 22/06/2026 23:07:20
[2026-06-22 23:07:21,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:07:21,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:07:21,187.187 INFO    ] No existing commands found in stream
[2026-06-22 23:07:26,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:07:26,214.214 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-22 23:07:30,117.117 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:07:30,120.120 INFO    ] Checking for system updates...
[2026-06-22 23:07:30,157.157 INFO    ] 200
[2026-06-22 23:07:30,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:07:30,214.214 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:07:30,217.217 INFO    ] No update needed
[2026-06-22 23:07:30,220.220 INFO    ] Checking for camera pi updates...
[2026-06-22 23:07:30,255.255 INFO    ] 200
[2026-06-22 23:07:30,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:07:30,305.305 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:07:30,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:07:30,400.400 INFO    ] No camera update needed
[2026-06-22 23:07:30,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:07:30,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:07:30,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:07:30,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:07:32,457.457 INFO    ] ================================================
[2026-06-22 23:07:32,473.473 INFO    ] Launching Daemon at Mon Jun 22 23:07:32 IST 2026
[2026-06-22 23:07:32,483.483 INFO    ] ================================================
[2026-06-22 23:07:33,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:07:33
[2026-06-22 23:07:33,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:07:33,934.934 INFO    ] Initializing speech engine...
[2026-06-22 23:07:33,948.948 INFO    ] 2026-06-22 23:07:33
[2026-06-22 23:07:34,215.215 INFO    ] 2026-06-22 23:07:34
[2026-06-22 23:07:34,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:07:35,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:07:35,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:07:35,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:07:35,788.788 INFO    ] time= 22/06/2026 23:07:35
[2026-06-22 23:07:35,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:07:35,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:07:35,869.869 INFO    ] No existing commands found in stream
[2026-06-22 23:07:40,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:07:40,882.882 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-22 23:07:43,969.969 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:07:43,971.971 INFO    ] Checking for system updates...
[2026-06-22 23:07:43,992.992 INFO    ] 200
[2026-06-22 23:07:43,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:07:44,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:07:44,028.028 INFO    ] No update needed
[2026-06-22 23:07:44,029.029 INFO    ] Checking for camera pi updates...
[2026-06-22 23:07:44,064.064 INFO    ] 200
[2026-06-22 23:07:44,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:07:44,127.127 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:07:44,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:07:44,228.228 INFO    ] No camera update needed
[2026-06-22 23:07:44,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:07:44,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:07:44,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:07:44,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:07:46,283.283 INFO    ] ================================================
[2026-06-22 23:07:46,298.298 INFO    ] Launching Daemon at Mon Jun 22 23:07:46 IST 2026
[2026-06-22 23:07:46,309.309 INFO    ] ================================================
[2026-06-22 23:07:46,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:07:46
[2026-06-22 23:07:47,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:07:47,651.651 INFO    ] Initializing speech engine...
[2026-06-22 23:07:47,660.660 INFO    ] 2026-06-22 23:07:47
[2026-06-22 23:07:47,962.962 INFO    ] 2026-06-22 23:07:47
[2026-06-22 23:07:47,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:07:48,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:07:48,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:07:48,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:07:48,355.355 INFO    ] time= 22/06/2026 23:07:48
[2026-06-22 23:07:48,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:07:48,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:07:48,482.482 INFO    ] No existing commands found in stream
[2026-06-22 23:07:53,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:07:53,498.498 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-22 23:07:57,413.413 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:07:57,416.416 INFO    ] Checking for system updates...
[2026-06-22 23:07:57,452.452 INFO    ] 200
[2026-06-22 23:07:57,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:07:57,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:07:57,518.518 INFO    ] No update needed
[2026-06-22 23:07:57,521.521 INFO    ] Checking for camera pi updates...
[2026-06-22 23:07:57,560.560 INFO    ] 200
[2026-06-22 23:07:57,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:07:57,604.604 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:07:57,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:07:57,692.692 INFO    ] No camera update needed
[2026-06-22 23:07:57,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:07:57,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:07:57,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:07:57,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:07:59,750.750 INFO    ] ================================================
[2026-06-22 23:07:59,766.766 INFO    ] Launching Daemon at Mon Jun 22 23:07:59 IST 2026
[2026-06-22 23:07:59,777.777 INFO    ] ================================================
[2026-06-22 23:08:00,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:08:00
[2026-06-22 23:08:00,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:08:01,225.225 INFO    ] Initializing speech engine...
[2026-06-22 23:08:01,233.233 INFO    ] 2026-06-22 23:08:01
[2026-06-22 23:08:01,531.531 INFO    ] 2026-06-22 23:08:01
[2026-06-22 23:08:01,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:08:01,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:08:01,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:08:01,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:08:01,968.968 INFO    ] time= 22/06/2026 23:08:01
[2026-06-22 23:08:01,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:08:01,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:08:02,052.052 INFO    ] No existing commands found in stream
[2026-06-22 23:08:07,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:08:07,065.065 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-22 23:08:08,142.142 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:08:08,144.144 INFO    ] Checking for system updates...
[2026-06-22 23:08:08,180.180 INFO    ] 200
[2026-06-22 23:08:08,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:08:08,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:08:08,237.237 INFO    ] No update needed
[2026-06-22 23:08:08,239.239 INFO    ] Checking for camera pi updates...
[2026-06-22 23:08:08,277.277 INFO    ] 200
[2026-06-22 23:08:08,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:08:08,319.319 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:08:08,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:08:08,372.372 INFO    ] No camera update needed
[2026-06-22 23:08:08,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:08:08,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:08:08,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:08:08,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:08:10,427.427 INFO    ] ================================================
[2026-06-22 23:08:10,443.443 INFO    ] Launching Daemon at Mon Jun 22 23:08:10 IST 2026
[2026-06-22 23:08:10,453.453 INFO    ] ================================================
[2026-06-22 23:08:11,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:08:11
[2026-06-22 23:08:11,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:08:11,918.918 INFO    ] Initializing speech engine...
[2026-06-22 23:08:11,928.928 INFO    ] 2026-06-22 23:08:11
[2026-06-22 23:08:12,177.177 INFO    ] 2026-06-22 23:08:12
[2026-06-22 23:08:12,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:08:12,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:08:12,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:08:12,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:08:12,647.647 INFO    ] time= 22/06/2026 23:08:12
[2026-06-22 23:08:12,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:08:12,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:08:12,866.866 INFO    ] No existing commands found in stream
[2026-06-22 23:08:17,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:08:17,896.896 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-22 23:08:20,053.053 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:08:20,056.056 INFO    ] Checking for system updates...
[2026-06-22 23:08:20,096.096 INFO    ] 200
[2026-06-22 23:08:20,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:08:20,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:08:20,161.161 INFO    ] No update needed
[2026-06-22 23:08:20,163.163 INFO    ] Checking for camera pi updates...
[2026-06-22 23:08:20,201.201 INFO    ] 200
[2026-06-22 23:08:20,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:08:20,244.244 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:08:20,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:08:20,343.343 INFO    ] No camera update needed
[2026-06-22 23:08:20,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:08:20,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:08:20,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:08:20,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:08:22,400.400 INFO    ] ================================================
[2026-06-22 23:08:22,419.419 INFO    ] Launching Daemon at Mon Jun 22 23:08:22 IST 2026
[2026-06-22 23:08:22,430.430 INFO    ] ================================================
[2026-06-22 23:08:23,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:08:23
[2026-06-22 23:08:23,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:08:23,968.968 INFO    ] Initializing speech engine...
[2026-06-22 23:08:23,982.982 INFO    ] 2026-06-22 23:08:23
[2026-06-22 23:08:24,263.263 INFO    ] 2026-06-22 23:08:24
[2026-06-22 23:08:24,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:08:24,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:08:24,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:08:24,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:08:24,742.742 INFO    ] time= 22/06/2026 23:08:24
[2026-06-22 23:08:24,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:08:24,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:08:24,959.959 INFO    ] No existing commands found in stream
[2026-06-22 23:08:29,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:08:29,989.989 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-22 23:08:33,361.361 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:08:33,363.363 INFO    ] Checking for system updates...
[2026-06-22 23:08:33,405.405 INFO    ] 200
[2026-06-22 23:08:33,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:08:33,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:08:33,473.473 INFO    ] No update needed
[2026-06-22 23:08:33,476.476 INFO    ] Checking for camera pi updates...
[2026-06-22 23:08:33,511.511 INFO    ] 200
[2026-06-22 23:08:33,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:08:33,555.555 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:08:33,738.738 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:08:33,740.740 INFO    ] No camera update needed
[2026-06-22 23:08:33,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:08:33,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:08:33,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:08:33,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:08:35,798.798 INFO    ] ================================================
[2026-06-22 23:08:35,813.813 INFO    ] Launching Daemon at Mon Jun 22 23:08:35 IST 2026
[2026-06-22 23:08:35,823.823 INFO    ] ================================================
[2026-06-22 23:08:36,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:08:36
[2026-06-22 23:08:36,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:08:37,175.175 INFO    ] Initializing speech engine...
[2026-06-22 23:08:37,195.195 INFO    ] 2026-06-22 23:08:37
[2026-06-22 23:08:37,462.462 INFO    ] 2026-06-22 23:08:37
[2026-06-22 23:08:37,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:08:37,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:08:37,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:08:37,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:08:37,875.875 INFO    ] time= 22/06/2026 23:08:37
[2026-06-22 23:08:37,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:08:37,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:08:37,963.963 INFO    ] No existing commands found in stream
[2026-06-22 23:08:42,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:08:42,991.991 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-22 23:08:46,849.849 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:08:46,852.852 INFO    ] Checking for system updates...
[2026-06-22 23:08:46,890.890 INFO    ] 200
[2026-06-22 23:08:46,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:08:46,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:08:46,948.948 INFO    ] No update needed
[2026-06-22 23:08:46,950.950 INFO    ] Checking for camera pi updates...
[2026-06-22 23:08:46,988.988 INFO    ] 200
[2026-06-22 23:08:46,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:08:47,035.035 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:08:47,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:08:47,128.128 INFO    ] No camera update needed
[2026-06-22 23:08:47,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:08:47,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:08:47,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:08:47,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:08:49,189.189 INFO    ] ================================================
[2026-06-22 23:08:49,204.204 INFO    ] Launching Daemon at Mon Jun 22 23:08:49 IST 2026
[2026-06-22 23:08:49,215.215 INFO    ] ================================================
[2026-06-22 23:08:49,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:08:49
[2026-06-22 23:08:50,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:08:50,689.689 INFO    ] Initializing speech engine...
[2026-06-22 23:08:50,702.702 INFO    ] 2026-06-22 23:08:50
[2026-06-22 23:08:50,960.960 INFO    ] 2026-06-22 23:08:50
[2026-06-22 23:08:50,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:08:51,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:08:51,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:08:51,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:08:51,444.444 INFO    ] time= 22/06/2026 23:08:51
[2026-06-22 23:08:51,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:08:51,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:08:51,630.630 INFO    ] No existing commands found in stream
[2026-06-22 23:08:56,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:08:56,665.665 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-22 23:08:59,531.531 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:08:59,534.534 INFO    ] Checking for system updates...
[2026-06-22 23:08:59,571.571 INFO    ] 200
[2026-06-22 23:08:59,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:08:59,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:08:59,630.630 INFO    ] No update needed
[2026-06-22 23:08:59,632.632 INFO    ] Checking for camera pi updates...
[2026-06-22 23:08:59,667.667 INFO    ] 200
[2026-06-22 23:08:59,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:08:59,718.718 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:08:59,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:08:59,815.815 INFO    ] No camera update needed
[2026-06-22 23:08:59,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:08:59,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:08:59,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:08:59,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:09:01,897.897 INFO    ] ================================================
[2026-06-22 23:09:01,955.955 INFO    ] Launching Daemon at Mon Jun 22 23:09:01 IST 2026
[2026-06-22 23:09:01,977.977 INFO    ] ================================================
[2026-06-22 23:09:02,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:09:02
[2026-06-22 23:09:03,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:09:03,751.751 INFO    ] Initializing speech engine...
[2026-06-22 23:09:03,774.774 INFO    ] 2026-06-22 23:09:03
[2026-06-22 23:09:04,031.031 INFO    ] 2026-06-22 23:09:04
[2026-06-22 23:09:04,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:09:07,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:09:07,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:09:07,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:09:07,858.858 INFO    ] time= 22/06/2026 23:09:07
[2026-06-22 23:09:07,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:09:07,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:09:07,917.917 INFO    ] No existing commands found in stream
[2026-06-22 23:09:12,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:09:12,929.929 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-22 23:09:16,781.781 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:09:16,783.783 INFO    ] Checking for system updates...
[2026-06-22 23:09:16,820.820 INFO    ] 200
[2026-06-22 23:09:16,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:09:16,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:09:16,879.879 INFO    ] No update needed
[2026-06-22 23:09:16,881.881 INFO    ] Checking for camera pi updates...
[2026-06-22 23:09:16,916.916 INFO    ] 200
[2026-06-22 23:09:16,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:09:16,966.966 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:09:17,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:09:17,057.057 INFO    ] No camera update needed
[2026-06-22 23:09:17,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:09:17,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:09:17,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:09:17,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:09:19,116.116 INFO    ] ================================================
[2026-06-22 23:09:19,131.131 INFO    ] Launching Daemon at Mon Jun 22 23:09:19 IST 2026
[2026-06-22 23:09:19,142.142 INFO    ] ================================================
[2026-06-22 23:09:19,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:09:19
[2026-06-22 23:09:20,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:09:20,757.757 INFO    ] Initializing speech engine...
[2026-06-22 23:09:20,769.769 INFO    ] 2026-06-22 23:09:20
[2026-06-22 23:09:21,076.076 INFO    ] 2026-06-22 23:09:21
[2026-06-22 23:09:21,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:09:21,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:09:21,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:09:21,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:09:21,576.576 INFO    ] time= 22/06/2026 23:09:21
[2026-06-22 23:09:21,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:09:21,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:09:21,738.738 INFO    ] No existing commands found in stream
[2026-06-22 23:09:26,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:09:26,767.767 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-22 23:09:28,355.355 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:09:28,357.357 INFO    ] Checking for system updates...
[2026-06-22 23:09:28,378.378 INFO    ] 200
[2026-06-22 23:09:28,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:09:28,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:09:28,413.413 INFO    ] No update needed
[2026-06-22 23:09:28,415.415 INFO    ] Checking for camera pi updates...
[2026-06-22 23:09:28,438.438 INFO    ] 200
[2026-06-22 23:09:28,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:09:28,473.473 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:09:28,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:09:28,547.547 INFO    ] No camera update needed
[2026-06-22 23:09:28,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:09:28,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:09:28,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:09:28,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:09:30,615.615 INFO    ] ================================================
[2026-06-22 23:09:30,630.630 INFO    ] Launching Daemon at Mon Jun 22 23:09:30 IST 2026
[2026-06-22 23:09:30,640.640 INFO    ] ================================================
[2026-06-22 23:09:31,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:09:31
[2026-06-22 23:09:31,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:09:32,163.163 INFO    ] Initializing speech engine...
[2026-06-22 23:09:32,185.185 INFO    ] 2026-06-22 23:09:32
[2026-06-22 23:09:32,467.467 INFO    ] 2026-06-22 23:09:32
[2026-06-22 23:09:32,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:09:32,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:09:32,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:09:32,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:09:32,867.867 INFO    ] time= 22/06/2026 23:09:32
[2026-06-22 23:09:32,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:09:32,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:09:33,079.079 INFO    ] No existing commands found in stream
[2026-06-22 23:09:38,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:09:38,112.112 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-22 23:09:42,452.452 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:09:42,454.454 INFO    ] Checking for system updates...
[2026-06-22 23:09:42,475.475 INFO    ] 200
[2026-06-22 23:09:42,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:09:42,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:09:42,529.529 INFO    ] No update needed
[2026-06-22 23:09:42,532.532 INFO    ] Checking for camera pi updates...
[2026-06-22 23:09:42,567.567 INFO    ] 200
[2026-06-22 23:09:42,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:09:42,612.612 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:09:42,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:09:42,698.698 INFO    ] No camera update needed
[2026-06-22 23:09:42,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:09:42,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:09:42,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:09:42,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:09:44,756.756 INFO    ] ================================================
[2026-06-22 23:09:44,772.772 INFO    ] Launching Daemon at Mon Jun 22 23:09:44 IST 2026
[2026-06-22 23:09:44,782.782 INFO    ] ================================================
[2026-06-22 23:09:45,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:09:45
[2026-06-22 23:09:45,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:09:46,126.126 INFO    ] Initializing speech engine...
[2026-06-22 23:09:46,135.135 INFO    ] 2026-06-22 23:09:46
[2026-06-22 23:09:46,393.393 INFO    ] 2026-06-22 23:09:46
[2026-06-22 23:09:46,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:09:46,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:09:46,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:09:46,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:09:46,754.754 INFO    ] time= 22/06/2026 23:09:46
[2026-06-22 23:09:46,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:09:46,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:09:46,953.953 INFO    ] No existing commands found in stream
[2026-06-22 23:09:51,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:09:51,966.966 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-22 23:09:52,966.966 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:09:52,969.969 INFO    ] Checking for system updates...
[2026-06-22 23:09:53,009.009 INFO    ] 200
[2026-06-22 23:09:53,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:09:53,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:09:53,068.068 INFO    ] No update needed
[2026-06-22 23:09:53,070.070 INFO    ] Checking for camera pi updates...
[2026-06-22 23:09:53,104.104 INFO    ] 200
[2026-06-22 23:09:53,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:09:53,146.146 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:09:53,228.228 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:09:53,231.231 INFO    ] No camera update needed
[2026-06-22 23:09:53,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:09:53,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:09:53,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:09:53,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:09:55,287.287 INFO    ] ================================================
[2026-06-22 23:09:55,302.302 INFO    ] Launching Daemon at Mon Jun 22 23:09:55 IST 2026
[2026-06-22 23:09:55,312.312 INFO    ] ================================================
[2026-06-22 23:09:55,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:09:55
[2026-06-22 23:09:56,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:09:56,692.692 INFO    ] Initializing speech engine...
[2026-06-22 23:09:56,701.701 INFO    ] 2026-06-22 23:09:56
[2026-06-22 23:09:56,964.964 INFO    ] 2026-06-22 23:09:56
[2026-06-22 23:09:56,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:09:57,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:09:57,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:09:57,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:09:57,321.321 INFO    ] time= 22/06/2026 23:09:57
[2026-06-22 23:09:57,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:09:57,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:09:57,506.506 INFO    ] No existing commands found in stream
[2026-06-22 23:10:02,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:10:02,531.531 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-22 23:10:09,015.015 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:10:09,018.018 INFO    ] Checking for system updates...
[2026-06-22 23:10:09,054.054 INFO    ] 200
[2026-06-22 23:10:09,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:10:09,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:10:09,112.112 INFO    ] No update needed
[2026-06-22 23:10:09,115.115 INFO    ] Checking for camera pi updates...
[2026-06-22 23:10:09,149.149 INFO    ] 200
[2026-06-22 23:10:09,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:10:09,196.196 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:10:09,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:10:09,278.278 INFO    ] No camera update needed
[2026-06-22 23:10:09,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:10:09,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:10:09,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:10:09,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:10:11,335.335 INFO    ] ================================================
[2026-06-22 23:10:11,350.350 INFO    ] Launching Daemon at Mon Jun 22 23:10:11 IST 2026
[2026-06-22 23:10:11,361.361 INFO    ] ================================================
[2026-06-22 23:10:11,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:10:11
[2026-06-22 23:10:12,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:10:12,814.814 INFO    ] Initializing speech engine...
[2026-06-22 23:10:12,821.821 INFO    ] 2026-06-22 23:10:12
[2026-06-22 23:10:13,079.079 INFO    ] 2026-06-22 23:10:13
[2026-06-22 23:10:13,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:10:13,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:10:13,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:10:13,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:10:13,632.632 INFO    ] time= 22/06/2026 23:10:13
[2026-06-22 23:10:13,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:10:13,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:10:13,777.777 INFO    ] No existing commands found in stream
[2026-06-22 23:10:18,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:10:18,801.801 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-22 23:10:20,094.094 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:10:20,097.097 INFO    ] Checking for system updates...
[2026-06-22 23:10:20,133.133 INFO    ] 200
[2026-06-22 23:10:20,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:10:20,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:10:20,195.195 INFO    ] No update needed
[2026-06-22 23:10:20,198.198 INFO    ] Checking for camera pi updates...
[2026-06-22 23:10:20,238.238 INFO    ] 200
[2026-06-22 23:10:20,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:10:20,290.290 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:10:20,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:10:20,401.401 INFO    ] No camera update needed
[2026-06-22 23:10:20,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:10:20,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:10:20,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:10:20,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:10:22,461.461 INFO    ] ================================================
[2026-06-22 23:10:22,476.476 INFO    ] Launching Daemon at Mon Jun 22 23:10:22 IST 2026
[2026-06-22 23:10:22,487.487 INFO    ] ================================================
[2026-06-22 23:10:23,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:10:23
[2026-06-22 23:10:23,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:10:23,850.850 INFO    ] Initializing speech engine...
[2026-06-22 23:10:23,859.859 INFO    ] 2026-06-22 23:10:23
[2026-06-22 23:10:24,165.165 INFO    ] 2026-06-22 23:10:24
[2026-06-22 23:10:24,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:10:24,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:10:24,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:10:24,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:10:24,561.561 INFO    ] time= 22/06/2026 23:10:24
[2026-06-22 23:10:24,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:10:24,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:10:24,691.691 INFO    ] No existing commands found in stream
[2026-06-22 23:10:29,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:10:29,706.706 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-22 23:10:30,370.370 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:10:30,372.372 INFO    ] Checking for system updates...
[2026-06-22 23:10:30,393.393 INFO    ] 200
[2026-06-22 23:10:30,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:10:30,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:10:30,442.442 INFO    ] No update needed
[2026-06-22 23:10:30,445.445 INFO    ] Checking for camera pi updates...
[2026-06-22 23:10:30,481.481 INFO    ] 200
[2026-06-22 23:10:30,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:10:30,526.526 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:10:30,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:10:30,614.614 INFO    ] No camera update needed
[2026-06-22 23:10:30,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:10:30,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:10:30,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:10:30,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:10:32,676.676 INFO    ] ================================================
[2026-06-22 23:10:32,692.692 INFO    ] Launching Daemon at Mon Jun 22 23:10:32 IST 2026
[2026-06-22 23:10:32,706.706 INFO    ] ================================================
[2026-06-22 23:10:33,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:10:33
[2026-06-22 23:10:33,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:10:34,166.166 INFO    ] Initializing speech engine...
[2026-06-22 23:10:34,172.172 INFO    ] 2026-06-22 23:10:34
[2026-06-22 23:10:34,475.475 INFO    ] 2026-06-22 23:10:34
[2026-06-22 23:10:34,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:10:34,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:10:34,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:10:34,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:10:34,912.912 INFO    ] time= 22/06/2026 23:10:34
[2026-06-22 23:10:34,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:10:34,947.947 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:10:35,081.081 INFO    ] No existing commands found in stream
[2026-06-22 23:10:40,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:10:40,109.109 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-22 23:10:42,344.344 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:10:42,346.346 INFO    ] Checking for system updates...
[2026-06-22 23:10:42,368.368 INFO    ] 200
[2026-06-22 23:10:42,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:10:42,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:10:42,405.405 INFO    ] No update needed
[2026-06-22 23:10:42,406.406 INFO    ] Checking for camera pi updates...
[2026-06-22 23:10:42,437.437 INFO    ] 200
[2026-06-22 23:10:42,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:10:42,483.483 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:10:42,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:10:42,672.672 INFO    ] No camera update needed
[2026-06-22 23:10:42,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:10:42,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:10:42,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:10:42,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:10:44,732.732 INFO    ] ================================================
[2026-06-22 23:10:44,748.748 INFO    ] Launching Daemon at Mon Jun 22 23:10:44 IST 2026
[2026-06-22 23:10:44,759.759 INFO    ] ================================================
[2026-06-22 23:10:45,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:10:45
[2026-06-22 23:10:45,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:10:46,175.175 INFO    ] Initializing speech engine...
[2026-06-22 23:10:46,184.184 INFO    ] 2026-06-22 23:10:46
[2026-06-22 23:10:46,457.457 INFO    ] 2026-06-22 23:10:46
[2026-06-22 23:10:46,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:10:46,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:10:46,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:10:46,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:10:46,935.935 INFO    ] time= 22/06/2026 23:10:46
[2026-06-22 23:10:46,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:10:47,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:10:47,173.173 INFO    ] No existing commands found in stream
[2026-06-22 23:10:52,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:10:52,201.201 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-22 23:10:54,655.655 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:10:54,658.658 INFO    ] Checking for system updates...
[2026-06-22 23:10:54,693.693 INFO    ] 200
[2026-06-22 23:10:54,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:10:54,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:10:54,751.751 INFO    ] No update needed
[2026-06-22 23:10:54,753.753 INFO    ] Checking for camera pi updates...
[2026-06-22 23:10:54,788.788 INFO    ] 200
[2026-06-22 23:10:54,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:10:54,831.831 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:10:54,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:10:54,912.912 INFO    ] No camera update needed
[2026-06-22 23:10:54,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:10:54,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:10:54,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:10:54,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:10:56,975.975 INFO    ] ================================================
[2026-06-22 23:10:56,990.990 INFO    ] Launching Daemon at Mon Jun 22 23:10:56 IST 2026
[2026-06-22 23:10:57,001.001 INFO    ] ================================================
[2026-06-22 23:10:57,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:10:57
[2026-06-22 23:10:58,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:10:58,402.402 INFO    ] Initializing speech engine...
[2026-06-22 23:10:58,411.411 INFO    ] 2026-06-22 23:10:58
[2026-06-22 23:10:58,684.684 INFO    ] 2026-06-22 23:10:58
[2026-06-22 23:10:58,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:10:58,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:10:58,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:10:59,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:10:59,062.062 INFO    ] time= 22/06/2026 23:10:59
[2026-06-22 23:10:59,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:10:59,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:10:59,257.257 INFO    ] No existing commands found in stream
[2026-06-22 23:11:04,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:11:04,276.276 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-22 23:11:04,788.788 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:11:04,792.792 INFO    ] Checking for system updates...
[2026-06-22 23:11:04,828.828 INFO    ] 200
[2026-06-22 23:11:04,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:11:04,883.883 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:11:04,886.886 INFO    ] No update needed
[2026-06-22 23:11:04,888.888 INFO    ] Checking for camera pi updates...
[2026-06-22 23:11:04,922.922 INFO    ] 200
[2026-06-22 23:11:04,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:11:04,971.971 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:11:05,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:11:05,076.076 INFO    ] No camera update needed
[2026-06-22 23:11:05,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:11:05,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:11:05,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:11:05,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:11:07,131.131 INFO    ] ================================================
[2026-06-22 23:11:07,146.146 INFO    ] Launching Daemon at Mon Jun 22 23:11:07 IST 2026
[2026-06-22 23:11:07,157.157 INFO    ] ================================================
[2026-06-22 23:11:07,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:11:07
[2026-06-22 23:11:08,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:11:08,577.577 INFO    ] Initializing speech engine...
[2026-06-22 23:11:08,582.582 INFO    ] 2026-06-22 23:11:08
[2026-06-22 23:11:08,856.856 INFO    ] 2026-06-22 23:11:08
[2026-06-22 23:11:08,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:11:09,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:11:09,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:11:10,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:11:10,115.115 INFO    ] time= 22/06/2026 23:11:10
[2026-06-22 23:11:10,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:11:10,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:11:10,189.189 INFO    ] No existing commands found in stream
[2026-06-22 23:11:15,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:11:15,202.202 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-22 23:11:18,554.554 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:11:18,557.557 INFO    ] Checking for system updates...
[2026-06-22 23:11:18,593.593 INFO    ] 200
[2026-06-22 23:11:18,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:11:18,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:11:18,650.650 INFO    ] No update needed
[2026-06-22 23:11:18,653.653 INFO    ] Checking for camera pi updates...
[2026-06-22 23:11:18,686.686 INFO    ] 200
[2026-06-22 23:11:18,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:11:18,729.729 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:11:18,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:11:18,818.818 INFO    ] No camera update needed
[2026-06-22 23:11:18,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:11:18,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:11:18,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:11:18,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:11:20,873.873 INFO    ] ================================================
[2026-06-22 23:11:20,889.889 INFO    ] Launching Daemon at Mon Jun 22 23:11:20 IST 2026
[2026-06-22 23:11:20,899.899 INFO    ] ================================================
[2026-06-22 23:11:21,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:11:21
[2026-06-22 23:11:21,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:11:22,216.216 INFO    ] Initializing speech engine...
[2026-06-22 23:11:22,224.224 INFO    ] 2026-06-22 23:11:22
[2026-06-22 23:11:22,494.494 INFO    ] 2026-06-22 23:11:22
[2026-06-22 23:11:22,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:11:22,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:11:22,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:11:22,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:11:23,043.043 INFO    ] time= 22/06/2026 23:11:22
[2026-06-22 23:11:23,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:11:23,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:11:23,198.198 INFO    ] No existing commands found in stream
[2026-06-22 23:11:28,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:11:28,217.217 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-22 23:11:29,495.495 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:11:29,497.497 INFO    ] Checking for system updates...
[2026-06-22 23:11:29,519.519 INFO    ] 200
[2026-06-22 23:11:29,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:11:29,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:11:29,578.578 INFO    ] No update needed
[2026-06-22 23:11:29,581.581 INFO    ] Checking for camera pi updates...
[2026-06-22 23:11:29,622.622 INFO    ] 200
[2026-06-22 23:11:29,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:11:29,672.672 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:11:29,745.745 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:11:29,748.748 INFO    ] No camera update needed
[2026-06-22 23:11:29,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:11:29,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:11:29,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:11:29,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:11:31,810.810 INFO    ] ================================================
[2026-06-22 23:11:31,827.827 INFO    ] Launching Daemon at Mon Jun 22 23:11:31 IST 2026
[2026-06-22 23:11:31,838.838 INFO    ] ================================================
[2026-06-22 23:11:32,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:11:32
[2026-06-22 23:11:33,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:11:33,561.561 INFO    ] Initializing speech engine...
[2026-06-22 23:11:33,575.575 INFO    ] 2026-06-22 23:11:33
[2026-06-22 23:11:33,892.892 INFO    ] 2026-06-22 23:11:33
[2026-06-22 23:11:33,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:11:34,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:11:34,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:11:34,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:11:34,400.400 INFO    ] time= 22/06/2026 23:11:34
[2026-06-22 23:11:34,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:11:34,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:11:34,564.564 INFO    ] No existing commands found in stream
[2026-06-22 23:11:39,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:11:39,605.605 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-22 23:11:41,041.041 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:11:41,044.044 INFO    ] Checking for system updates...
[2026-06-22 23:11:41,082.082 INFO    ] 200
[2026-06-22 23:11:41,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:11:41,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:11:41,142.142 INFO    ] No update needed
[2026-06-22 23:11:41,144.144 INFO    ] Checking for camera pi updates...
[2026-06-22 23:11:41,179.179 INFO    ] 200
[2026-06-22 23:11:41,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:11:41,224.224 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:11:41,333.333 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:11:41,335.335 INFO    ] No camera update needed
[2026-06-22 23:11:41,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:11:41,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:11:41,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:11:41,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:11:43,392.392 INFO    ] ================================================
[2026-06-22 23:11:43,408.408 INFO    ] Launching Daemon at Mon Jun 22 23:11:43 IST 2026
[2026-06-22 23:11:43,419.419 INFO    ] ================================================
[2026-06-22 23:11:44,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:11:44
[2026-06-22 23:11:44,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:11:44,794.794 INFO    ] Initializing speech engine...
[2026-06-22 23:11:44,813.813 INFO    ] 2026-06-22 23:11:44
[2026-06-22 23:11:45,066.066 INFO    ] 2026-06-22 23:11:45
[2026-06-22 23:11:45,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:11:45,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:11:45,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:11:45,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:11:45,625.625 INFO    ] time= 22/06/2026 23:11:45
[2026-06-22 23:11:45,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:11:45,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:11:45,765.765 INFO    ] No existing commands found in stream
[2026-06-22 23:11:50,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:11:50,794.794 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-22 23:11:52,117.117 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:11:52,120.120 INFO    ] Checking for system updates...
[2026-06-22 23:11:52,160.160 INFO    ] 200
[2026-06-22 23:11:52,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:11:52,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:11:52,219.219 INFO    ] No update needed
[2026-06-22 23:11:52,222.222 INFO    ] Checking for camera pi updates...
[2026-06-22 23:11:52,256.256 INFO    ] 200
[2026-06-22 23:11:52,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:11:52,305.305 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:11:52,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:11:52,395.395 INFO    ] No camera update needed
[2026-06-22 23:11:52,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:11:52,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:11:52,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:11:52,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:11:54,452.452 INFO    ] ================================================
[2026-06-22 23:11:54,468.468 INFO    ] Launching Daemon at Mon Jun 22 23:11:54 IST 2026
[2026-06-22 23:11:54,479.479 INFO    ] ================================================
[2026-06-22 23:11:55,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:11:55
[2026-06-22 23:11:55,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:11:55,848.848 INFO    ] Initializing speech engine...
[2026-06-22 23:11:55,859.859 INFO    ] 2026-06-22 23:11:55
[2026-06-22 23:11:56,109.109 INFO    ] 2026-06-22 23:11:56
[2026-06-22 23:11:56,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:11:56,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:11:56,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:11:56,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:11:56,601.601 INFO    ] time= 22/06/2026 23:11:56
[2026-06-22 23:11:56,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:11:56,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:11:56,826.826 INFO    ] No existing commands found in stream
[2026-06-22 23:12:01,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:12:01,849.849 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-22 23:12:04,934.934 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:12:04,937.937 INFO    ] Checking for system updates...
[2026-06-22 23:12:04,975.975 INFO    ] 200
[2026-06-22 23:12:04,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:12:05,030.030 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:12:05,033.033 INFO    ] No update needed
[2026-06-22 23:12:05,035.035 INFO    ] Checking for camera pi updates...
[2026-06-22 23:12:05,069.069 INFO    ] 200
[2026-06-22 23:12:05,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:12:05,112.112 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:12:05,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:12:05,205.205 INFO    ] No camera update needed
[2026-06-22 23:12:05,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:12:05,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:12:05,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:12:05,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:12:07,267.267 INFO    ] ================================================
[2026-06-22 23:12:07,282.282 INFO    ] Launching Daemon at Mon Jun 22 23:12:07 IST 2026
[2026-06-22 23:12:07,294.294 INFO    ] ================================================
[2026-06-22 23:12:07,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:12:07
[2026-06-22 23:12:08,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:12:08,731.731 INFO    ] Initializing speech engine...
[2026-06-22 23:12:08,740.740 INFO    ] 2026-06-22 23:12:08
[2026-06-22 23:12:08,998.998 INFO    ] 2026-06-22 23:12:08
[2026-06-22 23:12:09,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:12:10,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:12:10,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:12:10,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:12:10,200.200 INFO    ] time= 22/06/2026 23:12:10
[2026-06-22 23:12:10,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:12:10,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:12:10,329.329 INFO    ] No existing commands found in stream
[2026-06-22 23:12:15,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:12:15,347.347 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-22 23:12:17,407.407 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:12:17,410.410 INFO    ] Checking for system updates...
[2026-06-22 23:12:17,446.446 INFO    ] 200
[2026-06-22 23:12:17,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:12:17,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:12:17,503.503 INFO    ] No update needed
[2026-06-22 23:12:17,506.506 INFO    ] Checking for camera pi updates...
[2026-06-22 23:12:17,540.540 INFO    ] 200
[2026-06-22 23:12:17,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:12:17,587.587 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:12:17,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:12:17,678.678 INFO    ] No camera update needed
[2026-06-22 23:12:17,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:12:17,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:12:17,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:12:17,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:12:19,735.735 INFO    ] ================================================
[2026-06-22 23:12:19,751.751 INFO    ] Launching Daemon at Mon Jun 22 23:12:19 IST 2026
[2026-06-22 23:12:19,762.762 INFO    ] ================================================
[2026-06-22 23:12:20,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:12:20
[2026-06-22 23:12:21,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:12:21,368.368 INFO    ] Initializing speech engine...
[2026-06-22 23:12:21,382.382 INFO    ] 2026-06-22 23:12:21
[2026-06-22 23:12:21,657.657 INFO    ] 2026-06-22 23:12:21
[2026-06-22 23:12:21,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:12:21,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:12:21,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:12:22,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:12:22,093.093 INFO    ] time= 22/06/2026 23:12:22
[2026-06-22 23:12:22,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:12:22,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:12:22,242.242 INFO    ] No existing commands found in stream
[2026-06-22 23:12:27,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:12:27,265.265 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-22 23:12:31,050.050 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:12:31,052.052 INFO    ] Checking for system updates...
[2026-06-22 23:12:31,072.072 INFO    ] 200
[2026-06-22 23:12:31,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:12:31,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:12:31,127.127 INFO    ] No update needed
[2026-06-22 23:12:31,130.130 INFO    ] Checking for camera pi updates...
[2026-06-22 23:12:31,180.180 INFO    ] 200
[2026-06-22 23:12:31,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:12:31,240.240 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:12:31,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:12:31,366.366 INFO    ] No camera update needed
[2026-06-22 23:12:31,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:12:31,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:12:31,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:12:31,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:12:33,428.428 INFO    ] ================================================
[2026-06-22 23:12:33,444.444 INFO    ] Launching Daemon at Mon Jun 22 23:12:33 IST 2026
[2026-06-22 23:12:33,455.455 INFO    ] ================================================
[2026-06-22 23:12:34,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:12:34
[2026-06-22 23:12:34,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:12:34,892.892 INFO    ] Initializing speech engine...
[2026-06-22 23:12:34,901.901 INFO    ] 2026-06-22 23:12:34
[2026-06-22 23:12:35,194.194 INFO    ] 2026-06-22 23:12:35
[2026-06-22 23:12:35,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:12:35,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:12:35,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:12:35,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:12:35,611.611 INFO    ] time= 22/06/2026 23:12:35
[2026-06-22 23:12:35,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:12:35,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:12:35,780.780 INFO    ] No existing commands found in stream
[2026-06-22 23:12:40,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:12:40,808.808 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-22 23:12:44,597.597 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:12:44,600.600 INFO    ] Checking for system updates...
[2026-06-22 23:12:44,643.643 INFO    ] 200
[2026-06-22 23:12:44,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:12:44,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:12:44,708.708 INFO    ] No update needed
[2026-06-22 23:12:44,711.711 INFO    ] Checking for camera pi updates...
[2026-06-22 23:12:44,747.747 INFO    ] 200
[2026-06-22 23:12:44,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:12:44,791.791 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:12:44,993.993 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:12:44,996.996 INFO    ] No camera update needed
[2026-06-22 23:12:44,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:12:45,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:12:45,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:12:45,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:12:47,057.057 INFO    ] ================================================
[2026-06-22 23:12:47,074.074 INFO    ] Launching Daemon at Mon Jun 22 23:12:47 IST 2026
[2026-06-22 23:12:47,085.085 INFO    ] ================================================
[2026-06-22 23:12:47,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:12:47
[2026-06-22 23:12:48,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:12:48,459.459 INFO    ] Initializing speech engine...
[2026-06-22 23:12:48,466.466 INFO    ] 2026-06-22 23:12:48
[2026-06-22 23:12:48,768.768 INFO    ] 2026-06-22 23:12:48
[2026-06-22 23:12:48,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:12:49,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:12:49,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:12:49,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:12:49,198.198 INFO    ] time= 22/06/2026 23:12:49
[2026-06-22 23:12:49,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:12:49,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:12:49,370.370 INFO    ] No existing commands found in stream
[2026-06-22 23:12:54,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:12:54,408.408 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-22 23:12:58,027.027 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:12:58,030.030 INFO    ] Checking for system updates...
[2026-06-22 23:12:58,066.066 INFO    ] 200
[2026-06-22 23:12:58,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:12:58,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:12:58,123.123 INFO    ] No update needed
[2026-06-22 23:12:58,126.126 INFO    ] Checking for camera pi updates...
[2026-06-22 23:12:58,160.160 INFO    ] 200
[2026-06-22 23:12:58,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:12:58,203.203 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:12:58,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:12:58,289.289 INFO    ] No camera update needed
[2026-06-22 23:12:58,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:12:58,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:12:58,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:12:58,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:13:00,345.345 INFO    ] ================================================
[2026-06-22 23:13:00,362.362 INFO    ] Launching Daemon at Mon Jun 22 23:13:00 IST 2026
[2026-06-22 23:13:00,373.373 INFO    ] ================================================
[2026-06-22 23:13:00,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:13:00
[2026-06-22 23:13:01,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:13:02,151.151 INFO    ] Initializing speech engine...
[2026-06-22 23:13:02,170.170 INFO    ] 2026-06-22 23:13:02
[2026-06-22 23:13:02,463.463 INFO    ] 2026-06-22 23:13:02
[2026-06-22 23:13:02,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:13:02,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:13:02,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:13:02,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:13:02,889.889 INFO    ] time= 22/06/2026 23:13:02
[2026-06-22 23:13:02,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:13:02,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:13:03,017.017 INFO    ] No existing commands found in stream
[2026-06-22 23:13:08,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:13:08,051.051 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-22 23:13:12,271.271 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:13:12,274.274 INFO    ] Checking for system updates...
[2026-06-22 23:13:12,317.317 INFO    ] 200
[2026-06-22 23:13:12,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:13:12,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:13:12,381.381 INFO    ] No update needed
[2026-06-22 23:13:12,383.383 INFO    ] Checking for camera pi updates...
[2026-06-22 23:13:12,418.418 INFO    ] 200
[2026-06-22 23:13:12,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:13:12,467.467 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:13:12,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:13:12,549.549 INFO    ] No camera update needed
[2026-06-22 23:13:12,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:13:12,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:13:12,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:13:12,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:13:14,604.604 INFO    ] ================================================
[2026-06-22 23:13:14,620.620 INFO    ] Launching Daemon at Mon Jun 22 23:13:14 IST 2026
[2026-06-22 23:13:14,632.632 INFO    ] ================================================
[2026-06-22 23:13:15,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:13:15
[2026-06-22 23:13:15,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:13:16,249.249 INFO    ] Initializing speech engine...
[2026-06-22 23:13:16,258.258 INFO    ] 2026-06-22 23:13:16
[2026-06-22 23:13:16,549.549 INFO    ] 2026-06-22 23:13:16
[2026-06-22 23:13:16,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:13:16,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:13:16,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:13:17,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:13:17,020.020 INFO    ] time= 22/06/2026 23:13:17
[2026-06-22 23:13:17,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:13:17,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:13:17,167.167 INFO    ] No existing commands found in stream
[2026-06-22 23:13:22,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:13:22,183.183 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-22 23:13:25,541.541 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:13:25,542.542 INFO    ] Checking for system updates...
[2026-06-22 23:13:25,568.568 INFO    ] 200
[2026-06-22 23:13:25,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:13:25,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:13:25,641.641 INFO    ] No update needed
[2026-06-22 23:13:25,643.643 INFO    ] Checking for camera pi updates...
[2026-06-22 23:13:25,678.678 INFO    ] 200
[2026-06-22 23:13:25,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:13:25,722.722 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:13:25,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:13:25,811.811 INFO    ] No camera update needed
[2026-06-22 23:13:25,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:13:25,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:13:25,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:13:25,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:13:27,870.870 INFO    ] ================================================
[2026-06-22 23:13:27,885.885 INFO    ] Launching Daemon at Mon Jun 22 23:13:27 IST 2026
[2026-06-22 23:13:27,896.896 INFO    ] ================================================
[2026-06-22 23:13:28,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:13:28
[2026-06-22 23:13:29,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:13:29,406.406 INFO    ] Initializing speech engine...
[2026-06-22 23:13:29,413.413 INFO    ] 2026-06-22 23:13:29
[2026-06-22 23:13:29,686.686 INFO    ] 2026-06-22 23:13:29
[2026-06-22 23:13:29,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:13:29,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:13:29,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:13:30,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:13:30,190.190 INFO    ] time= 22/06/2026 23:13:30
[2026-06-22 23:13:30,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:13:30,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:13:30,398.398 INFO    ] No existing commands found in stream
[2026-06-22 23:13:35,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:13:35,425.425 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-22 23:13:40,779.779 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:13:40,782.782 INFO    ] Checking for system updates...
[2026-06-22 23:13:40,819.819 INFO    ] 200
[2026-06-22 23:13:40,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:13:40,874.874 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:13:40,877.877 INFO    ] No update needed
[2026-06-22 23:13:40,880.880 INFO    ] Checking for camera pi updates...
[2026-06-22 23:13:40,915.915 INFO    ] 200
[2026-06-22 23:13:40,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:13:40,963.963 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:13:41,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:13:41,050.050 INFO    ] No camera update needed
[2026-06-22 23:13:41,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:13:41,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:13:41,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:13:41,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:13:43,108.108 INFO    ] ================================================
[2026-06-22 23:13:43,123.123 INFO    ] Launching Daemon at Mon Jun 22 23:13:43 IST 2026
[2026-06-22 23:13:43,135.135 INFO    ] ================================================
[2026-06-22 23:13:43,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:13:43
[2026-06-22 23:13:44,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:13:44,574.574 INFO    ] Initializing speech engine...
[2026-06-22 23:13:44,600.600 INFO    ] 2026-06-22 23:13:44
[2026-06-22 23:13:44,872.872 INFO    ] 2026-06-22 23:13:44
[2026-06-22 23:13:44,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:13:45,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:13:45,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:13:45,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:13:45,415.415 INFO    ] time= 22/06/2026 23:13:45
[2026-06-22 23:13:45,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:13:45,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:13:45,640.640 INFO    ] No existing commands found in stream
[2026-06-22 23:13:50,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:13:50,663.663 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-22 23:13:54,455.455 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:13:54,458.458 INFO    ] Checking for system updates...
[2026-06-22 23:13:54,496.496 INFO    ] 200
[2026-06-22 23:13:54,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:13:54,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:13:54,561.561 INFO    ] No update needed
[2026-06-22 23:13:54,563.563 INFO    ] Checking for camera pi updates...
[2026-06-22 23:13:54,598.598 INFO    ] 200
[2026-06-22 23:13:54,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:13:54,642.642 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:13:54,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:13:54,727.727 INFO    ] No camera update needed
[2026-06-22 23:13:54,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:13:54,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:13:54,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:13:54,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:13:56,787.787 INFO    ] ================================================
[2026-06-22 23:13:56,803.803 INFO    ] Launching Daemon at Mon Jun 22 23:13:56 IST 2026
[2026-06-22 23:13:56,814.814 INFO    ] ================================================
[2026-06-22 23:13:57,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:13:57
[2026-06-22 23:13:58,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:13:58,258.258 INFO    ] Initializing speech engine...
[2026-06-22 23:13:58,281.281 INFO    ] 2026-06-22 23:13:58
[2026-06-22 23:13:58,551.551 INFO    ] 2026-06-22 23:13:58
[2026-06-22 23:13:58,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:13:58,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:13:58,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:13:58,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:13:59,004.004 INFO    ] time= 22/06/2026 23:13:58
[2026-06-22 23:13:59,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:13:59,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:13:59,257.257 INFO    ] No existing commands found in stream
[2026-06-22 23:14:04,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:14:04,287.287 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-22 23:14:07,565.565 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:14:07,568.568 INFO    ] Checking for system updates...
[2026-06-22 23:14:07,603.603 INFO    ] 200
[2026-06-22 23:14:07,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:14:07,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:14:07,662.662 INFO    ] No update needed
[2026-06-22 23:14:07,664.664 INFO    ] Checking for camera pi updates...
[2026-06-22 23:14:07,698.698 INFO    ] 200
[2026-06-22 23:14:07,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:14:07,743.743 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:14:07,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:14:07,847.847 INFO    ] No camera update needed
[2026-06-22 23:14:07,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:14:07,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:14:07,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:14:07,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:14:09,901.901 INFO    ] ================================================
[2026-06-22 23:14:09,917.917 INFO    ] Launching Daemon at Mon Jun 22 23:14:09 IST 2026
[2026-06-22 23:14:09,927.927 INFO    ] ================================================
[2026-06-22 23:14:10,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:14:10
[2026-06-22 23:14:11,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:14:11,430.430 INFO    ] Initializing speech engine...
[2026-06-22 23:14:11,438.438 INFO    ] 2026-06-22 23:14:11
[2026-06-22 23:14:11,726.726 INFO    ] 2026-06-22 23:14:11
[2026-06-22 23:14:11,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:14:12,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:14:12,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:14:12,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:14:12,267.267 INFO    ] time= 22/06/2026 23:14:12
[2026-06-22 23:14:12,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:14:12,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:14:12,442.442 INFO    ] No existing commands found in stream
[2026-06-22 23:14:17,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:14:17,471.471 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-22 23:14:18,569.569 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:14:18,572.572 INFO    ] Checking for system updates...
[2026-06-22 23:14:18,610.610 INFO    ] 200
[2026-06-22 23:14:18,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:14:18,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:14:18,668.668 INFO    ] No update needed
[2026-06-22 23:14:18,671.671 INFO    ] Checking for camera pi updates...
[2026-06-22 23:14:18,705.705 INFO    ] 200
[2026-06-22 23:14:18,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:14:18,748.748 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:14:18,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:14:18,802.802 INFO    ] No camera update needed
[2026-06-22 23:14:18,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:14:18,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:14:18,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:14:18,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:14:20,861.861 INFO    ] ================================================
[2026-06-22 23:14:20,877.877 INFO    ] Launching Daemon at Mon Jun 22 23:14:20 IST 2026
[2026-06-22 23:14:20,888.888 INFO    ] ================================================
[2026-06-22 23:14:21,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:14:21
[2026-06-22 23:14:22,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:14:22,285.285 INFO    ] Initializing speech engine...
[2026-06-22 23:14:22,309.309 INFO    ] 2026-06-22 23:14:22
[2026-06-22 23:14:22,560.560 INFO    ] 2026-06-22 23:14:22
[2026-06-22 23:14:22,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:14:22,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:14:22,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:14:22,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:14:22,995.995 INFO    ] time= 22/06/2026 23:14:22
[2026-06-22 23:14:23,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:14:23,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:14:23,293.293 INFO    ] No existing commands found in stream
[2026-06-22 23:14:28,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:14:28,327.327 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-22 23:14:28,961.961 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:14:28,964.964 INFO    ] Checking for system updates...
[2026-06-22 23:14:29,001.001 INFO    ] 200
[2026-06-22 23:14:29,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:14:29,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:14:29,059.059 INFO    ] No update needed
[2026-06-22 23:14:29,062.062 INFO    ] Checking for camera pi updates...
[2026-06-22 23:14:29,095.095 INFO    ] 200
[2026-06-22 23:14:29,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:14:29,144.144 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:14:29,214.214 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:14:29,217.217 INFO    ] No camera update needed
[2026-06-22 23:14:29,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:14:29,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:14:29,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:14:29,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:14:31,274.274 INFO    ] ================================================
[2026-06-22 23:14:31,289.289 INFO    ] Launching Daemon at Mon Jun 22 23:14:31 IST 2026
[2026-06-22 23:14:31,300.300 INFO    ] ================================================
[2026-06-22 23:14:31,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:14:31
[2026-06-22 23:14:32,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:14:32,886.886 INFO    ] Initializing speech engine...
[2026-06-22 23:14:32,895.895 INFO    ] 2026-06-22 23:14:32
[2026-06-22 23:14:33,189.189 INFO    ] 2026-06-22 23:14:33
[2026-06-22 23:14:33,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:14:33,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:14:33,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:14:33,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:14:33,600.600 INFO    ] time= 22/06/2026 23:14:33
[2026-06-22 23:14:33,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:14:33,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:14:33,763.763 INFO    ] No existing commands found in stream
[2026-06-22 23:14:38,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:14:38,797.797 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-22 23:14:41,353.353 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:14:41,356.356 INFO    ] Checking for system updates...
[2026-06-22 23:14:41,394.394 INFO    ] 200
[2026-06-22 23:14:41,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:14:41,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:14:41,455.455 INFO    ] No update needed
[2026-06-22 23:14:41,458.458 INFO    ] Checking for camera pi updates...
[2026-06-22 23:14:41,491.491 INFO    ] 200
[2026-06-22 23:14:41,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:14:41,540.540 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:14:41,622.622 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:14:41,624.624 INFO    ] No camera update needed
[2026-06-22 23:14:41,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:14:41,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:14:41,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:14:41,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:14:43,680.680 INFO    ] ================================================
[2026-06-22 23:14:43,695.695 INFO    ] Launching Daemon at Mon Jun 22 23:14:43 IST 2026
[2026-06-22 23:14:43,706.706 INFO    ] ================================================
[2026-06-22 23:14:44,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:14:44
[2026-06-22 23:14:44,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:14:45,257.257 INFO    ] Initializing speech engine...
[2026-06-22 23:14:45,269.269 INFO    ] 2026-06-22 23:14:45
[2026-06-22 23:14:45,517.517 INFO    ] 2026-06-22 23:14:45
[2026-06-22 23:14:45,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:14:45,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:14:45,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:14:46,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:14:46,073.073 INFO    ] time= 22/06/2026 23:14:46
[2026-06-22 23:14:46,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:14:46,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:14:46,228.228 INFO    ] No existing commands found in stream
[2026-06-22 23:14:51,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:14:51,244.244 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-22 23:14:54,202.202 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:14:54,204.204 INFO    ] Checking for system updates...
[2026-06-22 23:14:54,225.225 INFO    ] 200
[2026-06-22 23:14:54,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:14:54,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:14:54,273.273 INFO    ] No update needed
[2026-06-22 23:14:54,275.275 INFO    ] Checking for camera pi updates...
[2026-06-22 23:14:54,310.310 INFO    ] 200
[2026-06-22 23:14:54,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:14:54,353.353 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:14:54,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:14:54,537.537 INFO    ] No camera update needed
[2026-06-22 23:14:54,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:14:54,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:14:54,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:14:54,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:14:56,596.596 INFO    ] ================================================
[2026-06-22 23:14:56,611.611 INFO    ] Launching Daemon at Mon Jun 22 23:14:56 IST 2026
[2026-06-22 23:14:56,622.622 INFO    ] ================================================
[2026-06-22 23:14:57,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:14:57
[2026-06-22 23:14:57,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:14:58,199.199 INFO    ] Initializing speech engine...
[2026-06-22 23:14:58,207.207 INFO    ] 2026-06-22 23:14:58
[2026-06-22 23:14:58,457.457 INFO    ] 2026-06-22 23:14:58
[2026-06-22 23:14:58,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:14:58,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:14:58,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:14:58,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:14:58,894.894 INFO    ] time= 22/06/2026 23:14:58
[2026-06-22 23:14:58,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:14:59,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:14:59,161.161 INFO    ] No existing commands found in stream
[2026-06-22 23:15:04,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:15:04,186.186 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-22 23:15:05,606.606 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:15:05,608.608 INFO    ] Checking for system updates...
[2026-06-22 23:15:05,647.647 INFO    ] 200
[2026-06-22 23:15:05,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:15:05,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:15:05,706.706 INFO    ] No update needed
[2026-06-22 23:15:05,709.709 INFO    ] Checking for camera pi updates...
[2026-06-22 23:15:05,742.742 INFO    ] 200
[2026-06-22 23:15:05,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:15:05,792.792 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:15:05,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:15:05,878.878 INFO    ] No camera update needed
[2026-06-22 23:15:05,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:15:05,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:15:05,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:15:05,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:15:07,935.935 INFO    ] ================================================
[2026-06-22 23:15:07,950.950 INFO    ] Launching Daemon at Mon Jun 22 23:15:07 IST 2026
[2026-06-22 23:15:07,961.961 INFO    ] ================================================
[2026-06-22 23:15:08,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:15:08
[2026-06-22 23:15:09,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:15:09,391.391 INFO    ] Initializing speech engine...
[2026-06-22 23:15:09,415.415 INFO    ] 2026-06-22 23:15:09
[2026-06-22 23:15:09,687.687 INFO    ] 2026-06-22 23:15:09
[2026-06-22 23:15:09,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:15:11,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:15:11,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:15:11,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:15:11,243.243 INFO    ] time= 22/06/2026 23:15:11
[2026-06-22 23:15:11,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:15:11,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:15:11,320.320 INFO    ] No existing commands found in stream
[2026-06-22 23:15:16,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:15:16,330.330 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-22 23:15:20,147.147 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:15:20,150.150 INFO    ] Checking for system updates...
[2026-06-22 23:15:20,190.190 INFO    ] 200
[2026-06-22 23:15:20,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:15:20,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:15:20,253.253 INFO    ] No update needed
[2026-06-22 23:15:20,256.256 INFO    ] Checking for camera pi updates...
[2026-06-22 23:15:20,293.293 INFO    ] 200
[2026-06-22 23:15:20,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:15:20,339.339 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:15:20,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:15:20,429.429 INFO    ] No camera update needed
[2026-06-22 23:15:20,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:15:20,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:15:20,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:15:20,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:15:22,486.486 INFO    ] ================================================
[2026-06-22 23:15:22,501.501 INFO    ] Launching Daemon at Mon Jun 22 23:15:22 IST 2026
[2026-06-22 23:15:22,512.512 INFO    ] ================================================
[2026-06-22 23:15:23,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:15:23
[2026-06-22 23:15:23,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:15:24,100.100 INFO    ] Initializing speech engine...
[2026-06-22 23:15:24,114.114 INFO    ] 2026-06-22 23:15:24
[2026-06-22 23:15:24,382.382 INFO    ] 2026-06-22 23:15:24
[2026-06-22 23:15:24,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:15:24,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:15:24,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:15:24,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:15:24,880.880 INFO    ] time= 22/06/2026 23:15:24
[2026-06-22 23:15:24,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:15:24,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:15:25,104.104 INFO    ] No existing commands found in stream
[2026-06-22 23:15:30,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:15:30,137.137 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-22 23:15:33,617.617 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:15:33,619.619 INFO    ] Checking for system updates...
[2026-06-22 23:15:33,655.655 INFO    ] 200
[2026-06-22 23:15:33,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:15:33,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:15:33,713.713 INFO    ] No update needed
[2026-06-22 23:15:33,716.716 INFO    ] Checking for camera pi updates...
[2026-06-22 23:15:33,753.753 INFO    ] 200
[2026-06-22 23:15:33,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:15:33,798.798 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:15:33,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:15:33,905.905 INFO    ] No camera update needed
[2026-06-22 23:15:33,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:15:33,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:15:33,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:15:33,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:15:35,962.962 INFO    ] ================================================
[2026-06-22 23:15:35,978.978 INFO    ] Launching Daemon at Mon Jun 22 23:15:35 IST 2026
[2026-06-22 23:15:35,988.988 INFO    ] ================================================
[2026-06-22 23:15:36,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:15:36
[2026-06-22 23:15:37,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:15:37,449.449 INFO    ] Initializing speech engine...
[2026-06-22 23:15:37,472.472 INFO    ] 2026-06-22 23:15:37
[2026-06-22 23:15:37,728.728 INFO    ] 2026-06-22 23:15:37
[2026-06-22 23:15:37,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:15:38,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:15:38,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:15:38,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:15:38,234.234 INFO    ] time= 22/06/2026 23:15:38
[2026-06-22 23:15:38,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:15:38,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:15:38,418.418 INFO    ] No existing commands found in stream
[2026-06-22 23:15:43,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:15:43,448.448 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-22 23:15:47,240.240 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:15:47,242.242 INFO    ] Checking for system updates...
[2026-06-22 23:15:47,282.282 INFO    ] 200
[2026-06-22 23:15:47,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:15:47,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:15:47,346.346 INFO    ] No update needed
[2026-06-22 23:15:47,349.349 INFO    ] Checking for camera pi updates...
[2026-06-22 23:15:47,384.384 INFO    ] 200
[2026-06-22 23:15:47,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:15:47,428.428 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:15:47,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:15:47,520.520 INFO    ] No camera update needed
[2026-06-22 23:15:47,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:15:47,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:15:47,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:15:47,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:15:49,579.579 INFO    ] ================================================
[2026-06-22 23:15:49,594.594 INFO    ] Launching Daemon at Mon Jun 22 23:15:49 IST 2026
[2026-06-22 23:15:49,605.605 INFO    ] ================================================
[2026-06-22 23:15:50,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:15:50
[2026-06-22 23:15:50,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:15:51,005.005 INFO    ] Initializing speech engine...
[2026-06-22 23:15:51,019.019 INFO    ] 2026-06-22 23:15:51
[2026-06-22 23:15:51,287.287 INFO    ] 2026-06-22 23:15:51
[2026-06-22 23:15:51,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:15:51,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:15:51,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:15:51,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:15:51,852.852 INFO    ] time= 22/06/2026 23:15:51
[2026-06-22 23:15:51,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:15:51,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:15:51,983.983 INFO    ] No existing commands found in stream
[2026-06-22 23:15:57,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:15:57,016.016 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-22 23:16:00,899.899 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:16:00,902.902 INFO    ] Checking for system updates...
[2026-06-22 23:16:00,939.939 INFO    ] 200
[2026-06-22 23:16:00,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:16:00,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:16:00,998.998 INFO    ] No update needed
[2026-06-22 23:16:01,000.000 INFO    ] Checking for camera pi updates...
[2026-06-22 23:16:01,036.036 INFO    ] 200
[2026-06-22 23:16:01,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:16:01,079.079 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:16:01,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:16:01,168.168 INFO    ] No camera update needed
[2026-06-22 23:16:01,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:16:01,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:16:01,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:16:01,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:16:03,228.228 INFO    ] ================================================
[2026-06-22 23:16:03,243.243 INFO    ] Launching Daemon at Mon Jun 22 23:16:03 IST 2026
[2026-06-22 23:16:03,254.254 INFO    ] ================================================
[2026-06-22 23:16:03,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:16:03
[2026-06-22 23:16:04,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:16:04,840.840 INFO    ] Initializing speech engine...
[2026-06-22 23:16:04,848.848 INFO    ] 2026-06-22 23:16:04
[2026-06-22 23:16:05,120.120 INFO    ] 2026-06-22 23:16:05
[2026-06-22 23:16:05,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:16:05,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:16:05,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:16:05,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:16:05,682.682 INFO    ] time= 22/06/2026 23:16:05
[2026-06-22 23:16:05,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:16:05,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:16:05,821.821 INFO    ] No existing commands found in stream
[2026-06-22 23:16:10,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:16:10,853.853 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-22 23:16:13,852.852 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:16:13,853.853 INFO    ] Checking for system updates...
[2026-06-22 23:16:13,874.874 INFO    ] 200
[2026-06-22 23:16:13,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:16:13,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:16:13,908.908 INFO    ] No update needed
[2026-06-22 23:16:13,909.909 INFO    ] Checking for camera pi updates...
[2026-06-22 23:16:13,932.932 INFO    ] 200
[2026-06-22 23:16:13,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:16:13,960.960 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:16:14,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:16:14,048.048 INFO    ] No camera update needed
[2026-06-22 23:16:14,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:16:14,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:16:14,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:16:14,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:16:16,103.103 INFO    ] ================================================
[2026-06-22 23:16:16,118.118 INFO    ] Launching Daemon at Mon Jun 22 23:16:16 IST 2026
[2026-06-22 23:16:16,129.129 INFO    ] ================================================
[2026-06-22 23:16:16,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:16:16
[2026-06-22 23:16:17,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:16:17,586.586 INFO    ] Initializing speech engine...
[2026-06-22 23:16:17,595.595 INFO    ] 2026-06-22 23:16:17
[2026-06-22 23:16:17,852.852 INFO    ] 2026-06-22 23:16:17
[2026-06-22 23:16:17,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:16:18,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:16:18,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:16:18,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:16:18,394.394 INFO    ] time= 22/06/2026 23:16:18
[2026-06-22 23:16:18,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:16:18,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:16:18,539.539 INFO    ] No existing commands found in stream
[2026-06-22 23:16:23,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:16:23,563.563 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-22 23:16:26,744.744 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:16:26,748.748 INFO    ] Checking for system updates...
[2026-06-22 23:16:26,792.792 INFO    ] 200
[2026-06-22 23:16:26,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:16:26,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:16:26,852.852 INFO    ] No update needed
[2026-06-22 23:16:26,854.854 INFO    ] Checking for camera pi updates...
[2026-06-22 23:16:26,888.888 INFO    ] 200
[2026-06-22 23:16:26,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:16:26,931.931 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:16:27,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:16:27,013.013 INFO    ] No camera update needed
[2026-06-22 23:16:27,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:16:27,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:16:27,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:16:27,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:16:29,068.068 INFO    ] ================================================
[2026-06-22 23:16:29,084.084 INFO    ] Launching Daemon at Mon Jun 22 23:16:29 IST 2026
[2026-06-22 23:16:29,095.095 INFO    ] ================================================
[2026-06-22 23:16:29,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:16:29
[2026-06-22 23:16:30,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:16:30,584.584 INFO    ] Initializing speech engine...
[2026-06-22 23:16:30,608.608 INFO    ] 2026-06-22 23:16:30
[2026-06-22 23:16:30,878.878 INFO    ] 2026-06-22 23:16:30
[2026-06-22 23:16:30,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:16:31,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:16:31,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:16:31,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:16:31,400.400 INFO    ] time= 22/06/2026 23:16:31
[2026-06-22 23:16:31,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:16:31,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:16:31,624.624 INFO    ] No existing commands found in stream
[2026-06-22 23:16:36,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:16:36,659.659 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-22 23:16:38,184.184 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:16:38,188.188 INFO    ] Checking for system updates...
[2026-06-22 23:16:38,230.230 INFO    ] 200
[2026-06-22 23:16:38,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:16:38,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:16:38,289.289 INFO    ] No update needed
[2026-06-22 23:16:38,291.291 INFO    ] Checking for camera pi updates...
[2026-06-22 23:16:38,325.325 INFO    ] 200
[2026-06-22 23:16:38,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:16:38,369.369 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:16:38,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:16:38,454.454 INFO    ] No camera update needed
[2026-06-22 23:16:38,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:16:38,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:16:38,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:16:38,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:16:40,513.513 INFO    ] ================================================
[2026-06-22 23:16:40,528.528 INFO    ] Launching Daemon at Mon Jun 22 23:16:40 IST 2026
[2026-06-22 23:16:40,539.539 INFO    ] ================================================
[2026-06-22 23:16:41,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:16:41
[2026-06-22 23:16:41,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:16:42,003.003 INFO    ] Initializing speech engine...
[2026-06-22 23:16:42,012.012 INFO    ] 2026-06-22 23:16:42
[2026-06-22 23:16:42,271.271 INFO    ] 2026-06-22 23:16:42
[2026-06-22 23:16:42,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:16:42,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:16:42,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:16:42,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:16:42,817.817 INFO    ] time= 22/06/2026 23:16:42
[2026-06-22 23:16:42,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:16:42,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:16:42,950.950 INFO    ] No existing commands found in stream
[2026-06-22 23:16:47,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:16:47,981.981 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-22 23:16:49,021.021 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:16:49,024.024 INFO    ] Checking for system updates...
[2026-06-22 23:16:49,060.060 INFO    ] 200
[2026-06-22 23:16:49,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:16:49,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:16:49,119.119 INFO    ] No update needed
[2026-06-22 23:16:49,122.122 INFO    ] Checking for camera pi updates...
[2026-06-22 23:16:49,156.156 INFO    ] 200
[2026-06-22 23:16:49,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:16:49,199.199 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:16:49,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:16:49,326.326 INFO    ] No camera update needed
[2026-06-22 23:16:49,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:16:49,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:16:49,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:16:49,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:16:51,381.381 INFO    ] ================================================
[2026-06-22 23:16:51,396.396 INFO    ] Launching Daemon at Mon Jun 22 23:16:51 IST 2026
[2026-06-22 23:16:51,407.407 INFO    ] ================================================
[2026-06-22 23:16:51,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:16:51
[2026-06-22 23:16:52,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:16:52,834.834 INFO    ] Initializing speech engine...
[2026-06-22 23:16:52,842.842 INFO    ] 2026-06-22 23:16:52
[2026-06-22 23:16:53,092.092 INFO    ] 2026-06-22 23:16:53
[2026-06-22 23:16:53,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:16:53,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:16:53,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:16:53,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:16:53,468.468 INFO    ] time= 22/06/2026 23:16:53
[2026-06-22 23:16:53,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:16:53,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:16:53,649.649 INFO    ] No existing commands found in stream
[2026-06-22 23:16:58,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:16:58,682.682 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-22 23:17:01,307.307 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:17:01,311.311 INFO    ] Checking for system updates...
[2026-06-22 23:17:01,391.391 INFO    ] 200
[2026-06-22 23:17:01,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:17:01,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:17:01,498.498 INFO    ] No update needed
[2026-06-22 23:17:01,501.501 INFO    ] Checking for camera pi updates...
[2026-06-22 23:17:01,559.559 INFO    ] 200
[2026-06-22 23:17:01,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:17:01,657.657 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:17:01,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:17:01,874.874 INFO    ] No camera update needed
[2026-06-22 23:17:01,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:17:01,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:17:01,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:17:01,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:17:03,943.943 INFO    ] ================================================
[2026-06-22 23:17:03,959.959 INFO    ] Launching Daemon at Mon Jun 22 23:17:03 IST 2026
[2026-06-22 23:17:03,969.969 INFO    ] ================================================
[2026-06-22 23:17:04,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:17:04
[2026-06-22 23:17:05,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:17:05,622.622 INFO    ] Initializing speech engine...
[2026-06-22 23:17:05,631.631 INFO    ] 2026-06-22 23:17:05
[2026-06-22 23:17:05,935.935 INFO    ] 2026-06-22 23:17:05
[2026-06-22 23:17:05,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:17:06,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:17:06,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:17:06,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:17:06,348.348 INFO    ] time= 22/06/2026 23:17:06
[2026-06-22 23:17:06,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:17:06,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:17:06,506.506 INFO    ] No existing commands found in stream
[2026-06-22 23:17:11,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:17:11,520.520 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-22 23:17:15,406.406 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:17:15,409.409 INFO    ] Checking for system updates...
[2026-06-22 23:17:15,445.445 INFO    ] 200
[2026-06-22 23:17:15,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:17:15,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:17:15,510.510 INFO    ] No update needed
[2026-06-22 23:17:15,513.513 INFO    ] Checking for camera pi updates...
[2026-06-22 23:17:15,546.546 INFO    ] 200
[2026-06-22 23:17:15,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:17:15,590.590 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:17:15,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:17:15,679.679 INFO    ] No camera update needed
[2026-06-22 23:17:15,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:17:15,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:17:15,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:17:15,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:17:17,737.737 INFO    ] ================================================
[2026-06-22 23:17:17,753.753 INFO    ] Launching Daemon at Mon Jun 22 23:17:17 IST 2026
[2026-06-22 23:17:17,763.763 INFO    ] ================================================
[2026-06-22 23:17:18,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:17:18
[2026-06-22 23:17:18,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:17:19,169.169 INFO    ] Initializing speech engine...
[2026-06-22 23:17:19,191.191 INFO    ] 2026-06-22 23:17:19
[2026-06-22 23:17:19,446.446 INFO    ] 2026-06-22 23:17:19
[2026-06-22 23:17:19,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:17:19,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:17:19,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:17:19,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:17:19,911.911 INFO    ] time= 22/06/2026 23:17:19
[2026-06-22 23:17:19,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:17:19,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:17:20,063.063 INFO    ] No existing commands found in stream
[2026-06-22 23:17:25,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:17:25,081.081 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-22 23:17:26,472.472 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:17:26,475.475 INFO    ] Checking for system updates...
[2026-06-22 23:17:26,512.512 INFO    ] 200
[2026-06-22 23:17:26,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:17:26,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:17:26,572.572 INFO    ] No update needed
[2026-06-22 23:17:26,575.575 INFO    ] Checking for camera pi updates...
[2026-06-22 23:17:26,613.613 INFO    ] 200
[2026-06-22 23:17:26,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:17:26,656.656 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:17:26,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:17:26,742.742 INFO    ] No camera update needed
[2026-06-22 23:17:26,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:17:26,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:17:26,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:17:26,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:17:28,801.801 INFO    ] ================================================
[2026-06-22 23:17:28,816.816 INFO    ] Launching Daemon at Mon Jun 22 23:17:28 IST 2026
[2026-06-22 23:17:28,827.827 INFO    ] ================================================
[2026-06-22 23:17:29,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:17:29
[2026-06-22 23:17:30,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:17:30,463.463 INFO    ] Initializing speech engine...
[2026-06-22 23:17:30,476.476 INFO    ] 2026-06-22 23:17:30
[2026-06-22 23:17:30,758.758 INFO    ] 2026-06-22 23:17:30
[2026-06-22 23:17:30,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:17:31,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:17:31,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:17:31,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:17:31,468.468 INFO    ] time= 22/06/2026 23:17:31
[2026-06-22 23:17:31,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:17:31,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:17:31,681.681 INFO    ] No existing commands found in stream
[2026-06-22 23:17:36,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:17:36,695.695 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-22 23:17:42,724.724 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:17:42,726.726 INFO    ] Checking for system updates...
[2026-06-22 23:17:42,766.766 INFO    ] 200
[2026-06-22 23:17:42,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 23:17:42,771.771 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-22 23:17:42,774.774 INFO    ] Checking for camera pi updates...
[2026-06-22 23:17:42,828.828 INFO    ] 200
[2026-06-22 23:17:42,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-22 23:17:42,834.834 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-22 23:17:42,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:17:42,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:17:42,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:17:42,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:17:44,894.894 INFO    ] ================================================
[2026-06-22 23:17:44,909.909 INFO    ] Launching Daemon at Mon Jun 22 23:17:44 IST 2026
[2026-06-22 23:17:44,920.920 INFO    ] ================================================
[2026-06-22 23:17:45,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:17:45
[2026-06-22 23:17:46,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:17:46,360.360 INFO    ] Initializing speech engine...
[2026-06-22 23:17:46,373.373 INFO    ] 2026-06-22 23:17:46
[2026-06-22 23:17:46,628.628 INFO    ] 2026-06-22 23:17:46
[2026-06-22 23:17:46,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:17:46,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:17:46,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:17:47,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:17:47,106.106 INFO    ] time= 22/06/2026 23:17:47
[2026-06-22 23:17:47,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:17:47,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:17:47,331.331 INFO    ] No existing commands found in stream
[2026-06-22 23:17:52,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:17:52,354.354 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-22 23:17:54,377.377 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:17:54,380.380 INFO    ] Checking for system updates...
[2026-06-22 23:17:54,415.415 INFO    ] 200
[2026-06-22 23:17:54,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:17:54,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:17:54,473.473 INFO    ] No update needed
[2026-06-22 23:17:54,476.476 INFO    ] Checking for camera pi updates...
[2026-06-22 23:17:54,515.515 INFO    ] 200
[2026-06-22 23:17:54,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:17:54,557.557 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:17:54,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:17:54,662.662 INFO    ] No camera update needed
[2026-06-22 23:17:54,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:17:54,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:17:54,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:17:54,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:17:56,719.719 INFO    ] ================================================
[2026-06-22 23:17:56,735.735 INFO    ] Launching Daemon at Mon Jun 22 23:17:56 IST 2026
[2026-06-22 23:17:56,746.746 INFO    ] ================================================
[2026-06-22 23:17:57,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:17:57
[2026-06-22 23:17:57,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:17:58,171.171 INFO    ] Initializing speech engine...
[2026-06-22 23:17:58,180.180 INFO    ] 2026-06-22 23:17:58
[2026-06-22 23:17:58,480.480 INFO    ] 2026-06-22 23:17:58
[2026-06-22 23:17:58,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:17:58,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:17:58,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:17:58,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:17:58,913.913 INFO    ] time= 22/06/2026 23:17:58
[2026-06-22 23:17:58,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:17:58,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:17:59,005.005 INFO    ] No existing commands found in stream
[2026-06-22 23:18:04,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:18:04,020.020 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-22 23:18:06,522.522 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:18:06,525.525 INFO    ] Checking for system updates...
[2026-06-22 23:18:06,561.561 INFO    ] 200
[2026-06-22 23:18:06,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:18:06,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:18:06,618.618 INFO    ] No update needed
[2026-06-22 23:18:06,621.621 INFO    ] Checking for camera pi updates...
[2026-06-22 23:18:06,655.655 INFO    ] 200
[2026-06-22 23:18:06,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:18:06,705.705 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:18:06,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:18:06,795.795 INFO    ] No camera update needed
[2026-06-22 23:18:06,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:18:06,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:18:06,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:18:06,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:18:08,850.850 INFO    ] ================================================
[2026-06-22 23:18:08,865.865 INFO    ] Launching Daemon at Mon Jun 22 23:18:08 IST 2026
[2026-06-22 23:18:08,876.876 INFO    ] ================================================
[2026-06-22 23:18:09,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:18:09
[2026-06-22 23:18:09,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:18:10,216.216 INFO    ] Initializing speech engine...
[2026-06-22 23:18:10,224.224 INFO    ] 2026-06-22 23:18:10
[2026-06-22 23:18:10,479.479 INFO    ] 2026-06-22 23:18:10
[2026-06-22 23:18:10,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:18:12,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:18:12,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:18:12,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:18:12,773.773 INFO    ] time= 22/06/2026 23:18:12
[2026-06-22 23:18:12,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:18:12,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:18:12,878.878 INFO    ] No existing commands found in stream
[2026-06-22 23:18:17,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:18:17,907.907 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-22 23:18:21,541.541 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:18:21,544.544 INFO    ] Checking for system updates...
[2026-06-22 23:18:21,587.587 INFO    ] 200
[2026-06-22 23:18:21,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:18:21,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:18:21,652.652 INFO    ] No update needed
[2026-06-22 23:18:21,655.655 INFO    ] Checking for camera pi updates...
[2026-06-22 23:18:21,691.691 INFO    ] 200
[2026-06-22 23:18:21,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:18:21,737.737 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:18:21,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:18:21,836.836 INFO    ] No camera update needed
[2026-06-22 23:18:21,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:18:21,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:18:21,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:18:21,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:18:23,900.900 INFO    ] ================================================
[2026-06-22 23:18:23,916.916 INFO    ] Launching Daemon at Mon Jun 22 23:18:23 IST 2026
[2026-06-22 23:18:23,927.927 INFO    ] ================================================
[2026-06-22 23:18:24,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:18:24
[2026-06-22 23:18:25,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:18:25,391.391 INFO    ] Initializing speech engine...
[2026-06-22 23:18:25,400.400 INFO    ] 2026-06-22 23:18:25
[2026-06-22 23:18:25,648.648 INFO    ] 2026-06-22 23:18:25
[2026-06-22 23:18:25,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:18:25,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:18:25,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:18:26,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:18:26,018.018 INFO    ] time= 22/06/2026 23:18:26
[2026-06-22 23:18:26,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:18:26,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:18:26,205.205 INFO    ] No existing commands found in stream
[2026-06-22 23:18:31,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:18:31,223.223 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-22 23:18:33,372.372 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:18:33,375.375 INFO    ] Checking for system updates...
[2026-06-22 23:18:33,416.416 INFO    ] 200
[2026-06-22 23:18:33,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:18:33,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:18:33,486.486 INFO    ] No update needed
[2026-06-22 23:18:33,489.489 INFO    ] Checking for camera pi updates...
[2026-06-22 23:18:33,522.522 INFO    ] 200
[2026-06-22 23:18:33,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:18:33,565.565 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:18:33,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:18:33,649.649 INFO    ] No camera update needed
[2026-06-22 23:18:33,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:18:33,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:18:33,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:18:33,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:18:35,705.705 INFO    ] ================================================
[2026-06-22 23:18:35,720.720 INFO    ] Launching Daemon at Mon Jun 22 23:18:35 IST 2026
[2026-06-22 23:18:35,731.731 INFO    ] ================================================
[2026-06-22 23:18:36,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:18:36
[2026-06-22 23:18:36,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:18:37,190.190 INFO    ] Initializing speech engine...
[2026-06-22 23:18:37,197.197 INFO    ] 2026-06-22 23:18:37
[2026-06-22 23:18:37,470.470 INFO    ] 2026-06-22 23:18:37
[2026-06-22 23:18:37,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:18:37,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:18:37,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:18:37,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:18:37,907.907 INFO    ] time= 22/06/2026 23:18:37
[2026-06-22 23:18:37,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:18:37,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:18:38,002.002 INFO    ] No existing commands found in stream
[2026-06-22 23:18:43,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:18:43,030.030 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-22 23:18:46,863.863 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:18:46,866.866 INFO    ] Checking for system updates...
[2026-06-22 23:18:46,906.906 INFO    ] 200
[2026-06-22 23:18:46,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:18:46,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:18:46,963.963 INFO    ] No update needed
[2026-06-22 23:18:46,965.965 INFO    ] Checking for camera pi updates...
[2026-06-22 23:18:47,003.003 INFO    ] 200
[2026-06-22 23:18:47,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:18:47,046.046 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:18:47,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:18:47,117.117 INFO    ] No camera update needed
[2026-06-22 23:18:47,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:18:47,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:18:47,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:18:47,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:18:49,185.185 INFO    ] ================================================
[2026-06-22 23:18:49,200.200 INFO    ] Launching Daemon at Mon Jun 22 23:18:49 IST 2026
[2026-06-22 23:18:49,211.211 INFO    ] ================================================
[2026-06-22 23:18:49,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:18:49
[2026-06-22 23:18:50,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:18:50,880.880 INFO    ] Initializing speech engine...
[2026-06-22 23:18:50,892.892 INFO    ] 2026-06-22 23:18:50
[2026-06-22 23:18:51,204.204 INFO    ] 2026-06-22 23:18:51
[2026-06-22 23:18:51,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:18:51,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:18:51,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:18:51,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:18:51,952.952 INFO    ] time= 22/06/2026 23:18:51
[2026-06-22 23:18:51,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:18:52,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:18:52,156.156 INFO    ] No existing commands found in stream
[2026-06-22 23:18:57,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:18:57,177.177 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-22 23:18:58,386.386 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:18:58,389.389 INFO    ] Checking for system updates...
[2026-06-22 23:18:58,427.427 INFO    ] 200
[2026-06-22 23:18:58,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:18:58,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:18:58,494.494 INFO    ] No update needed
[2026-06-22 23:18:58,498.498 INFO    ] Checking for camera pi updates...
[2026-06-22 23:18:58,533.533 INFO    ] 200
[2026-06-22 23:18:58,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:18:58,583.583 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:18:58,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:18:58,676.676 INFO    ] No camera update needed
[2026-06-22 23:18:58,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:18:58,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:18:58,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:18:58,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:19:00,733.733 INFO    ] ================================================
[2026-06-22 23:19:00,749.749 INFO    ] Launching Daemon at Mon Jun 22 23:19:00 IST 2026
[2026-06-22 23:19:00,759.759 INFO    ] ================================================
[2026-06-22 23:19:01,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:19:01
[2026-06-22 23:19:02,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:19:02,407.407 INFO    ] Initializing speech engine...
[2026-06-22 23:19:02,412.412 INFO    ] 2026-06-22 23:19:02
[2026-06-22 23:19:02,720.720 INFO    ] 2026-06-22 23:19:02
[2026-06-22 23:19:02,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:19:03,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:19:03,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:19:03,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:19:03,224.224 INFO    ] time= 22/06/2026 23:19:03
[2026-06-22 23:19:03,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:19:03,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:19:03,427.427 INFO    ] No existing commands found in stream
[2026-06-22 23:19:08,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:19:08,460.460 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-22 23:19:13,226.226 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:19:13,228.228 INFO    ] Checking for system updates...
[2026-06-22 23:19:13,264.264 INFO    ] 200
[2026-06-22 23:19:13,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:19:13,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:19:13,326.326 INFO    ] No update needed
[2026-06-22 23:19:13,328.328 INFO    ] Checking for camera pi updates...
[2026-06-22 23:19:13,365.365 INFO    ] 200
[2026-06-22 23:19:13,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:19:13,411.411 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:19:13,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:19:13,591.591 INFO    ] No camera update needed
[2026-06-22 23:19:13,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:19:13,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:19:13,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:19:13,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:19:15,647.647 INFO    ] ================================================
[2026-06-22 23:19:15,663.663 INFO    ] Launching Daemon at Mon Jun 22 23:19:15 IST 2026
[2026-06-22 23:19:15,674.674 INFO    ] ================================================
[2026-06-22 23:19:16,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:19:16
[2026-06-22 23:19:16,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:19:17,101.101 INFO    ] Initializing speech engine...
[2026-06-22 23:19:17,110.110 INFO    ] 2026-06-22 23:19:17
[2026-06-22 23:19:17,354.354 INFO    ] 2026-06-22 23:19:17
[2026-06-22 23:19:17,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:19:17,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:19:17,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:19:17,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:19:17,909.909 INFO    ] time= 22/06/2026 23:19:17
[2026-06-22 23:19:17,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:19:17,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:19:18,065.065 INFO    ] No existing commands found in stream
[2026-06-22 23:19:23,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:19:23,086.086 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-22 23:19:26,508.508 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:19:26,510.510 INFO    ] Checking for system updates...
[2026-06-22 23:19:26,546.546 INFO    ] 200
[2026-06-22 23:19:26,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:19:26,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:19:26,609.609 INFO    ] No update needed
[2026-06-22 23:19:26,611.611 INFO    ] Checking for camera pi updates...
[2026-06-22 23:19:26,646.646 INFO    ] 200
[2026-06-22 23:19:26,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:19:26,689.689 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:19:26,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:19:26,791.791 INFO    ] No camera update needed
[2026-06-22 23:19:26,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:19:26,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:19:26,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:19:26,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:19:28,850.850 INFO    ] ================================================
[2026-06-22 23:19:28,866.866 INFO    ] Launching Daemon at Mon Jun 22 23:19:28 IST 2026
[2026-06-22 23:19:28,877.877 INFO    ] ================================================
[2026-06-22 23:19:29,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:19:29
[2026-06-22 23:19:29,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:19:30,218.218 INFO    ] Initializing speech engine...
[2026-06-22 23:19:30,227.227 INFO    ] 2026-06-22 23:19:30
[2026-06-22 23:19:30,474.474 INFO    ] 2026-06-22 23:19:30
[2026-06-22 23:19:30,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:19:30,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:19:30,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:19:30,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:19:30,924.924 INFO    ] time= 22/06/2026 23:19:30
[2026-06-22 23:19:30,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:19:31,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:19:31,175.175 INFO    ] No existing commands found in stream
[2026-06-22 23:19:36,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:19:36,197.197 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-22 23:19:37,368.368 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:19:37,370.370 INFO    ] Checking for system updates...
[2026-06-22 23:19:37,406.406 INFO    ] 200
[2026-06-22 23:19:37,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:19:37,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:19:37,463.463 INFO    ] No update needed
[2026-06-22 23:19:37,465.465 INFO    ] Checking for camera pi updates...
[2026-06-22 23:19:37,499.499 INFO    ] 200
[2026-06-22 23:19:37,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:19:37,545.545 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:19:37,647.647 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:19:37,650.650 INFO    ] No camera update needed
[2026-06-22 23:19:37,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:19:37,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:19:37,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:19:37,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:19:39,707.707 INFO    ] ================================================
[2026-06-22 23:19:39,722.722 INFO    ] Launching Daemon at Mon Jun 22 23:19:39 IST 2026
[2026-06-22 23:19:39,732.732 INFO    ] ================================================
[2026-06-22 23:19:40,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:19:40
[2026-06-22 23:19:40,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:19:41,189.189 INFO    ] Initializing speech engine...
[2026-06-22 23:19:41,198.198 INFO    ] 2026-06-22 23:19:41
[2026-06-22 23:19:41,449.449 INFO    ] 2026-06-22 23:19:41
[2026-06-22 23:19:41,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:19:41,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:19:41,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:19:41,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:19:42,009.009 INFO    ] time= 22/06/2026 23:19:41
[2026-06-22 23:19:42,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:19:42,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:19:42,147.147 INFO    ] No existing commands found in stream
[2026-06-22 23:19:47,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:19:47,174.174 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-22 23:19:50,513.513 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:19:50,516.516 INFO    ] Checking for system updates...
[2026-06-22 23:19:50,555.555 INFO    ] 200
[2026-06-22 23:19:50,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:19:50,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:19:50,617.617 INFO    ] No update needed
[2026-06-22 23:19:50,620.620 INFO    ] Checking for camera pi updates...
[2026-06-22 23:19:50,657.657 INFO    ] 200
[2026-06-22 23:19:50,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:19:50,705.705 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:19:50,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:19:50,798.798 INFO    ] No camera update needed
[2026-06-22 23:19:50,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:19:50,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:19:50,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:19:50,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:19:52,857.857 INFO    ] ================================================
[2026-06-22 23:19:52,872.872 INFO    ] Launching Daemon at Mon Jun 22 23:19:52 IST 2026
[2026-06-22 23:19:52,883.883 INFO    ] ================================================
[2026-06-22 23:19:53,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:19:53
[2026-06-22 23:19:54,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:19:54,284.284 INFO    ] Initializing speech engine...
[2026-06-22 23:19:54,292.292 INFO    ] 2026-06-22 23:19:54
[2026-06-22 23:19:54,566.566 INFO    ] 2026-06-22 23:19:54
[2026-06-22 23:19:54,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:19:54,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:19:54,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:19:55,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:19:55,065.065 INFO    ] time= 22/06/2026 23:19:55
[2026-06-22 23:19:55,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:19:55,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:19:55,233.233 INFO    ] No existing commands found in stream
[2026-06-22 23:20:00,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:20:00,266.266 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-22 23:20:08,357.357 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:20:08,359.359 INFO    ] Checking for system updates...
[2026-06-22 23:20:08,395.395 INFO    ] 200
[2026-06-22 23:20:08,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:20:08,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:20:08,454.454 INFO    ] No update needed
[2026-06-22 23:20:08,456.456 INFO    ] Checking for camera pi updates...
[2026-06-22 23:20:08,490.490 INFO    ] 200
[2026-06-22 23:20:08,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:20:08,537.537 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:20:08,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:20:08,621.621 INFO    ] No camera update needed
[2026-06-22 23:20:08,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:20:08,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:20:08,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:20:08,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:20:10,678.678 INFO    ] ================================================
[2026-06-22 23:20:10,693.693 INFO    ] Launching Daemon at Mon Jun 22 23:20:10 IST 2026
[2026-06-22 23:20:10,703.703 INFO    ] ================================================
[2026-06-22 23:20:11,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:20:11
[2026-06-22 23:20:11,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:20:12,082.082 INFO    ] Initializing speech engine...
[2026-06-22 23:20:12,089.089 INFO    ] 2026-06-22 23:20:12
[2026-06-22 23:20:12,338.338 INFO    ] 2026-06-22 23:20:12
[2026-06-22 23:20:12,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:20:14,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:20:14,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:20:15,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:20:15,178.178 INFO    ] time= 22/06/2026 23:20:15
[2026-06-22 23:20:15,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:20:15,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:20:15,239.239 INFO    ] No existing commands found in stream
[2026-06-22 23:20:20,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:20:20,251.251 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-22 23:20:20,928.928 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:20:20,931.931 INFO    ] Checking for system updates...
[2026-06-22 23:20:20,970.970 INFO    ] 200
[2026-06-22 23:20:20,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:20:21,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:20:21,028.028 INFO    ] No update needed
[2026-06-22 23:20:21,031.031 INFO    ] Checking for camera pi updates...
[2026-06-22 23:20:21,065.065 INFO    ] 200
[2026-06-22 23:20:21,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:20:21,112.112 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:20:21,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:20:21,166.166 INFO    ] No camera update needed
[2026-06-22 23:20:21,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:20:21,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:20:21,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:20:21,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:20:23,222.222 INFO    ] ================================================
[2026-06-22 23:20:23,237.237 INFO    ] Launching Daemon at Mon Jun 22 23:20:23 IST 2026
[2026-06-22 23:20:23,248.248 INFO    ] ================================================
[2026-06-22 23:20:23,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:20:23
[2026-06-22 23:20:24,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:20:24,807.807 INFO    ] Initializing speech engine...
[2026-06-22 23:20:24,815.815 INFO    ] 2026-06-22 23:20:24
[2026-06-22 23:20:25,093.093 INFO    ] 2026-06-22 23:20:25
[2026-06-22 23:20:25,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:20:25,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:20:25,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:20:25,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:20:25,628.628 INFO    ] time= 22/06/2026 23:20:25
[2026-06-22 23:20:25,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:20:25,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:20:25,774.774 INFO    ] No existing commands found in stream
[2026-06-22 23:20:30,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:20:30,797.797 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-22 23:20:34,089.089 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:20:34,092.092 INFO    ] Checking for system updates...
[2026-06-22 23:20:34,131.131 INFO    ] 200
[2026-06-22 23:20:34,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:20:34,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:20:34,200.200 INFO    ] No update needed
[2026-06-22 23:20:34,202.202 INFO    ] Checking for camera pi updates...
[2026-06-22 23:20:34,237.237 INFO    ] 200
[2026-06-22 23:20:34,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:20:34,281.281 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:20:34,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:20:34,367.367 INFO    ] No camera update needed
[2026-06-22 23:20:34,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:20:34,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:20:34,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:20:34,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:20:36,426.426 INFO    ] ================================================
[2026-06-22 23:20:36,441.441 INFO    ] Launching Daemon at Mon Jun 22 23:20:36 IST 2026
[2026-06-22 23:20:36,451.451 INFO    ] ================================================
[2026-06-22 23:20:37,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:20:36
[2026-06-22 23:20:37,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:20:37,856.856 INFO    ] Initializing speech engine...
[2026-06-22 23:20:37,870.870 INFO    ] 2026-06-22 23:20:37
[2026-06-22 23:20:38,147.147 INFO    ] 2026-06-22 23:20:38
[2026-06-22 23:20:38,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:20:38,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:20:38,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:20:38,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:20:38,505.505 INFO    ] time= 22/06/2026 23:20:38
[2026-06-22 23:20:38,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:20:38,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:20:38,587.587 INFO    ] No existing commands found in stream
[2026-06-22 23:20:43,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:20:43,599.599 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-22 23:20:45,558.558 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:20:45,560.560 INFO    ] Checking for system updates...
[2026-06-22 23:20:45,597.597 INFO    ] 200
[2026-06-22 23:20:45,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:20:45,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:20:45,654.654 INFO    ] No update needed
[2026-06-22 23:20:45,657.657 INFO    ] Checking for camera pi updates...
[2026-06-22 23:20:45,692.692 INFO    ] 200
[2026-06-22 23:20:45,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:20:45,736.736 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:20:45,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:20:45,803.803 INFO    ] No camera update needed
[2026-06-22 23:20:45,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:20:45,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:20:45,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:20:45,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:20:47,860.860 INFO    ] ================================================
[2026-06-22 23:20:47,875.875 INFO    ] Launching Daemon at Mon Jun 22 23:20:47 IST 2026
[2026-06-22 23:20:47,886.886 INFO    ] ================================================
[2026-06-22 23:20:48,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:20:48
[2026-06-22 23:20:49,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:20:49,287.287 INFO    ] Initializing speech engine...
[2026-06-22 23:20:49,311.311 INFO    ] 2026-06-22 23:20:49
[2026-06-22 23:20:49,568.568 INFO    ] 2026-06-22 23:20:49
[2026-06-22 23:20:49,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:20:49,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:20:49,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:20:50,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:20:50,044.044 INFO    ] time= 22/06/2026 23:20:50
[2026-06-22 23:20:50,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:20:50,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:20:50,258.258 INFO    ] No existing commands found in stream
[2026-06-22 23:20:55,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:20:55,293.293 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-22 23:20:55,838.838 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:20:55,841.841 INFO    ] Checking for system updates...
[2026-06-22 23:20:55,878.878 INFO    ] 200
[2026-06-22 23:20:55,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:20:55,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:20:55,942.942 INFO    ] No update needed
[2026-06-22 23:20:55,944.944 INFO    ] Checking for camera pi updates...
[2026-06-22 23:20:55,979.979 INFO    ] 200
[2026-06-22 23:20:55,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:20:56,023.023 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:20:56,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:20:56,091.091 INFO    ] No camera update needed
[2026-06-22 23:20:56,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:20:56,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:20:56,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:20:56,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:20:58,150.150 INFO    ] ================================================
[2026-06-22 23:20:58,166.166 INFO    ] Launching Daemon at Mon Jun 22 23:20:58 IST 2026
[2026-06-22 23:20:58,176.176 INFO    ] ================================================
[2026-06-22 23:20:58,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:20:58
[2026-06-22 23:20:59,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:20:59,516.516 INFO    ] Initializing speech engine...
[2026-06-22 23:20:59,522.522 INFO    ] 2026-06-22 23:20:59
[2026-06-22 23:20:59,767.767 INFO    ] 2026-06-22 23:20:59
[2026-06-22 23:20:59,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:21:00,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:21:00,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:21:00,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:21:00,320.320 INFO    ] time= 22/06/2026 23:21:00
[2026-06-22 23:21:00,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:21:00,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:21:00,448.448 INFO    ] No existing commands found in stream
[2026-06-22 23:21:05,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:21:05,482.482 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-22 23:21:17,126.126 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:21:17,129.129 INFO    ] Checking for system updates...
[2026-06-22 23:21:17,166.166 INFO    ] 200
[2026-06-22 23:21:17,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:21:17,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:21:17,223.223 INFO    ] No update needed
[2026-06-22 23:21:17,226.226 INFO    ] Checking for camera pi updates...
[2026-06-22 23:21:17,260.260 INFO    ] 200
[2026-06-22 23:21:17,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:21:17,303.303 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:21:17,483.483 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:21:17,485.485 INFO    ] No camera update needed
[2026-06-22 23:21:17,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:21:17,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:21:17,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:21:17,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:21:19,542.542 INFO    ] ================================================
[2026-06-22 23:21:19,557.557 INFO    ] Launching Daemon at Mon Jun 22 23:21:19 IST 2026
[2026-06-22 23:21:19,567.567 INFO    ] ================================================
[2026-06-22 23:21:20,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:21:20
[2026-06-22 23:21:20,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:21:20,976.976 INFO    ] Initializing speech engine...
[2026-06-22 23:21:20,989.989 INFO    ] 2026-06-22 23:21:20
[2026-06-22 23:21:21,272.272 INFO    ] 2026-06-22 23:21:21
[2026-06-22 23:21:21,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:21:21,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:21:21,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:21:21,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:21:21,681.681 INFO    ] time= 22/06/2026 23:21:21
[2026-06-22 23:21:21,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:21:21,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:21:21,772.772 INFO    ] No existing commands found in stream
[2026-06-22 23:21:26,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:21:26,806.806 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-22 23:21:27,413.413 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:21:27,416.416 INFO    ] Checking for system updates...
[2026-06-22 23:21:27,456.456 INFO    ] 200
[2026-06-22 23:21:27,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:21:27,517.517 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:21:27,520.520 INFO    ] No update needed
[2026-06-22 23:21:27,522.522 INFO    ] Checking for camera pi updates...
[2026-06-22 23:21:27,556.556 INFO    ] 200
[2026-06-22 23:21:27,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:21:27,600.600 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:21:27,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:21:27,689.689 INFO    ] No camera update needed
[2026-06-22 23:21:27,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:21:27,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:21:27,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:21:27,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:21:29,744.744 INFO    ] ================================================
[2026-06-22 23:21:29,759.759 INFO    ] Launching Daemon at Mon Jun 22 23:21:29 IST 2026
[2026-06-22 23:21:29,770.770 INFO    ] ================================================
[2026-06-22 23:21:30,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:21:30
[2026-06-22 23:21:30,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:21:31,140.140 INFO    ] Initializing speech engine...
[2026-06-22 23:21:31,153.153 INFO    ] 2026-06-22 23:21:31
[2026-06-22 23:21:31,433.433 INFO    ] 2026-06-22 23:21:31
[2026-06-22 23:21:31,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:21:31,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:21:31,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:21:31,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:21:31,839.839 INFO    ] time= 22/06/2026 23:21:31
[2026-06-22 23:21:31,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:21:31,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:21:32,031.031 INFO    ] No existing commands found in stream
[2026-06-22 23:21:37,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:21:37,056.056 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-22 23:21:40,024.024 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:21:40,027.027 INFO    ] Checking for system updates...
[2026-06-22 23:21:40,062.062 INFO    ] 200
[2026-06-22 23:21:40,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:21:40,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:21:40,121.121 INFO    ] No update needed
[2026-06-22 23:21:40,123.123 INFO    ] Checking for camera pi updates...
[2026-06-22 23:21:40,160.160 INFO    ] 200
[2026-06-22 23:21:40,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:21:40,205.205 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:21:40,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:21:40,308.308 INFO    ] No camera update needed
[2026-06-22 23:21:40,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:21:40,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:21:40,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:21:40,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:21:42,361.361 INFO    ] ================================================
[2026-06-22 23:21:42,376.376 INFO    ] Launching Daemon at Mon Jun 22 23:21:42 IST 2026
[2026-06-22 23:21:42,387.387 INFO    ] ================================================
[2026-06-22 23:21:42,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:21:42
[2026-06-22 23:21:43,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:21:43,892.892 INFO    ] Initializing speech engine...
[2026-06-22 23:21:43,908.908 INFO    ] 2026-06-22 23:21:43
[2026-06-22 23:21:44,207.207 INFO    ] 2026-06-22 23:21:44
[2026-06-22 23:21:44,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:21:45,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:21:45,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:21:46,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:21:46,070.070 INFO    ] time= 22/06/2026 23:21:46
[2026-06-22 23:21:46,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:21:46,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:21:46,239.239 INFO    ] No existing commands found in stream
[2026-06-22 23:21:51,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:21:51,278.278 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-22 23:21:52,962.962 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:21:52,965.965 INFO    ] Checking for system updates...
[2026-06-22 23:21:53,014.014 INFO    ] 200
[2026-06-22 23:21:53,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:21:53,080.080 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:21:53,082.082 INFO    ] No update needed
[2026-06-22 23:21:53,084.084 INFO    ] Checking for camera pi updates...
[2026-06-22 23:21:53,118.118 INFO    ] 200
[2026-06-22 23:21:53,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:21:53,162.162 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:21:53,245.245 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:21:53,248.248 INFO    ] No camera update needed
[2026-06-22 23:21:53,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:21:53,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:21:53,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:21:53,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:21:55,302.302 INFO    ] ================================================
[2026-06-22 23:21:55,317.317 INFO    ] Launching Daemon at Mon Jun 22 23:21:55 IST 2026
[2026-06-22 23:21:55,328.328 INFO    ] ================================================
[2026-06-22 23:21:55,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:21:55
[2026-06-22 23:21:56,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:21:56,747.747 INFO    ] Initializing speech engine...
[2026-06-22 23:21:56,757.757 INFO    ] 2026-06-22 23:21:56
[2026-06-22 23:21:57,003.003 INFO    ] 2026-06-22 23:21:56
[2026-06-22 23:21:57,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:21:57,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:21:57,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:21:57,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:21:57,480.480 INFO    ] time= 22/06/2026 23:21:57
[2026-06-22 23:21:57,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:21:57,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:21:57,699.699 INFO    ] No existing commands found in stream
[2026-06-22 23:22:02,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:22:02,727.727 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-22 23:22:06,198.198 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:22:06,200.200 INFO    ] Checking for system updates...
[2026-06-22 23:22:06,221.221 INFO    ] 200
[2026-06-22 23:22:06,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:22:06,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:22:06,254.254 INFO    ] No update needed
[2026-06-22 23:22:06,256.256 INFO    ] Checking for camera pi updates...
[2026-06-22 23:22:06,278.278 INFO    ] 200
[2026-06-22 23:22:06,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:22:06,328.328 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:22:06,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:22:06,463.463 INFO    ] No camera update needed
[2026-06-22 23:22:06,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:22:06,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:22:06,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:22:06,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:22:08,518.518 INFO    ] ================================================
[2026-06-22 23:22:08,533.533 INFO    ] Launching Daemon at Mon Jun 22 23:22:08 IST 2026
[2026-06-22 23:22:08,544.544 INFO    ] ================================================
[2026-06-22 23:22:09,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:22:09
[2026-06-22 23:22:09,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:22:09,886.886 INFO    ] Initializing speech engine...
[2026-06-22 23:22:09,905.905 INFO    ] 2026-06-22 23:22:09
[2026-06-22 23:22:10,157.157 INFO    ] 2026-06-22 23:22:10
[2026-06-22 23:22:10,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:22:10,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:22:10,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:22:10,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:22:10,533.533 INFO    ] time= 22/06/2026 23:22:10
[2026-06-22 23:22:10,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:22:10,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:22:10,720.720 INFO    ] No existing commands found in stream
[2026-06-22 23:22:15,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:22:15,749.749 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-22 23:22:18,876.876 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:22:18,879.879 INFO    ] Checking for system updates...
[2026-06-22 23:22:18,924.924 INFO    ] 200
[2026-06-22 23:22:18,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:22:19,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:22:19,010.010 INFO    ] No update needed
[2026-06-22 23:22:19,012.012 INFO    ] Checking for camera pi updates...
[2026-06-22 23:22:19,051.051 INFO    ] 200
[2026-06-22 23:22:19,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:22:19,103.103 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:22:19,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:22:19,159.159 INFO    ] No camera update needed
[2026-06-22 23:22:19,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:22:19,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:22:19,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:22:19,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:22:21,215.215 INFO    ] ================================================
[2026-06-22 23:22:21,230.230 INFO    ] Launching Daemon at Mon Jun 22 23:22:21 IST 2026
[2026-06-22 23:22:21,242.242 INFO    ] ================================================
[2026-06-22 23:22:21,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:22:21
[2026-06-22 23:22:22,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:22:22,660.660 INFO    ] Initializing speech engine...
[2026-06-22 23:22:22,667.667 INFO    ] 2026-06-22 23:22:22
[2026-06-22 23:22:22,928.928 INFO    ] 2026-06-22 23:22:22
[2026-06-22 23:22:22,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:22:23,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:22:23,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:22:23,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:22:23,423.423 INFO    ] time= 22/06/2026 23:22:23
[2026-06-22 23:22:23,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:22:23,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:22:23,625.625 INFO    ] No existing commands found in stream
[2026-06-22 23:22:28,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:22:28,643.643 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-22 23:22:29,883.883 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:22:29,886.886 INFO    ] Checking for system updates...
[2026-06-22 23:22:29,923.923 INFO    ] 200
[2026-06-22 23:22:29,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:22:29,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:22:29,985.985 INFO    ] No update needed
[2026-06-22 23:22:29,988.988 INFO    ] Checking for camera pi updates...
[2026-06-22 23:22:30,022.022 INFO    ] 200
[2026-06-22 23:22:30,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:22:30,068.068 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:22:30,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:22:30,170.170 INFO    ] No camera update needed
[2026-06-22 23:22:30,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:22:30,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:22:30,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:22:30,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:22:32,231.231 INFO    ] ================================================
[2026-06-22 23:22:32,249.249 INFO    ] Launching Daemon at Mon Jun 22 23:22:32 IST 2026
[2026-06-22 23:22:32,260.260 INFO    ] ================================================
[2026-06-22 23:22:32,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:22:32
[2026-06-22 23:22:33,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:22:33,745.745 INFO    ] Initializing speech engine...
[2026-06-22 23:22:33,770.770 INFO    ] 2026-06-22 23:22:33
[2026-06-22 23:22:34,042.042 INFO    ] 2026-06-22 23:22:34
[2026-06-22 23:22:34,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:22:34,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:22:34,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:22:34,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:22:34,448.448 INFO    ] time= 22/06/2026 23:22:34
[2026-06-22 23:22:34,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:22:34,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:22:34,628.628 INFO    ] No existing commands found in stream
[2026-06-22 23:22:39,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:22:39,656.656 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-22 23:22:43,391.391 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:22:43,394.394 INFO    ] Checking for system updates...
[2026-06-22 23:22:43,431.431 INFO    ] 200
[2026-06-22 23:22:43,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:22:43,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:22:43,491.491 INFO    ] No update needed
[2026-06-22 23:22:43,494.494 INFO    ] Checking for camera pi updates...
[2026-06-22 23:22:43,528.528 INFO    ] 200
[2026-06-22 23:22:43,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:22:43,577.577 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:22:43,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:22:43,665.665 INFO    ] No camera update needed
[2026-06-22 23:22:43,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:22:43,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:22:43,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:22:43,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:22:45,722.722 INFO    ] ================================================
[2026-06-22 23:22:45,737.737 INFO    ] Launching Daemon at Mon Jun 22 23:22:45 IST 2026
[2026-06-22 23:22:45,749.749 INFO    ] ================================================
[2026-06-22 23:22:46,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:22:46
[2026-06-22 23:22:46,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:22:47,137.137 INFO    ] Initializing speech engine...
[2026-06-22 23:22:47,148.148 INFO    ] 2026-06-22 23:22:47
[2026-06-22 23:22:47,409.409 INFO    ] 2026-06-22 23:22:47
[2026-06-22 23:22:47,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:22:47,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:22:47,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:22:47,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:22:47,858.858 INFO    ] time= 22/06/2026 23:22:47
[2026-06-22 23:22:47,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:22:47,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:22:48,084.084 INFO    ] No existing commands found in stream
[2026-06-22 23:22:53,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:22:53,117.117 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-22 23:22:53,698.698 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:22:53,701.701 INFO    ] Checking for system updates...
[2026-06-22 23:22:53,738.738 INFO    ] 200
[2026-06-22 23:22:53,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:22:53,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:22:53,795.795 INFO    ] No update needed
[2026-06-22 23:22:53,798.798 INFO    ] Checking for camera pi updates...
[2026-06-22 23:22:53,831.831 INFO    ] 200
[2026-06-22 23:22:53,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:22:53,874.874 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:22:53,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:22:53,963.963 INFO    ] No camera update needed
[2026-06-22 23:22:53,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:22:53,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:22:53,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:22:53,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:22:56,019.019 INFO    ] ================================================
[2026-06-22 23:22:56,034.034 INFO    ] Launching Daemon at Mon Jun 22 23:22:56 IST 2026
[2026-06-22 23:22:56,045.045 INFO    ] ================================================
[2026-06-22 23:22:56,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:22:56
[2026-06-22 23:22:57,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:22:57,418.418 INFO    ] Initializing speech engine...
[2026-06-22 23:22:57,427.427 INFO    ] 2026-06-22 23:22:57
[2026-06-22 23:22:57,687.687 INFO    ] 2026-06-22 23:22:57
[2026-06-22 23:22:57,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:22:57,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:22:57,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:22:58,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:22:58,193.193 INFO    ] time= 22/06/2026 23:22:58
[2026-06-22 23:22:58,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:22:58,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:22:58,375.375 INFO    ] No existing commands found in stream
[2026-06-22 23:23:03,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:23:03,400.400 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-22 23:23:06,729.729 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:23:06,732.732 INFO    ] Checking for system updates...
[2026-06-22 23:23:06,770.770 INFO    ] 200
[2026-06-22 23:23:06,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:23:06,826.826 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:23:06,828.828 INFO    ] No update needed
[2026-06-22 23:23:06,830.830 INFO    ] Checking for camera pi updates...
[2026-06-22 23:23:06,866.866 INFO    ] 200
[2026-06-22 23:23:06,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:23:06,912.912 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:23:06,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:23:06,993.993 INFO    ] No camera update needed
[2026-06-22 23:23:06,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:23:06,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:23:07,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:23:07,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:23:09,048.048 INFO    ] ================================================
[2026-06-22 23:23:09,063.063 INFO    ] Launching Daemon at Mon Jun 22 23:23:09 IST 2026
[2026-06-22 23:23:09,074.074 INFO    ] ================================================
[2026-06-22 23:23:09,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:23:09
[2026-06-22 23:23:10,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:23:10,438.438 INFO    ] Initializing speech engine...
[2026-06-22 23:23:10,446.446 INFO    ] 2026-06-22 23:23:10
[2026-06-22 23:23:10,747.747 INFO    ] 2026-06-22 23:23:10
[2026-06-22 23:23:10,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:23:11,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:23:11,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:23:11,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:23:11,248.248 INFO    ] time= 22/06/2026 23:23:11
[2026-06-22 23:23:11,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:23:11,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:23:11,402.402 INFO    ] No existing commands found in stream
[2026-06-22 23:23:16,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:23:16,429.429 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-22 23:23:18,108.108 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:23:18,111.111 INFO    ] Checking for system updates...
[2026-06-22 23:23:18,147.147 INFO    ] 200
[2026-06-22 23:23:18,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:23:18,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:23:18,205.205 INFO    ] No update needed
[2026-06-22 23:23:18,207.207 INFO    ] Checking for camera pi updates...
[2026-06-22 23:23:18,241.241 INFO    ] 200
[2026-06-22 23:23:18,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:23:18,288.288 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:23:18,383.383 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:23:18,386.386 INFO    ] No camera update needed
[2026-06-22 23:23:18,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:23:18,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:23:18,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:23:18,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:23:20,443.443 INFO    ] ================================================
[2026-06-22 23:23:20,458.458 INFO    ] Launching Daemon at Mon Jun 22 23:23:20 IST 2026
[2026-06-22 23:23:20,469.469 INFO    ] ================================================
[2026-06-22 23:23:20,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:23:20
[2026-06-22 23:23:21,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:23:21,839.839 INFO    ] Initializing speech engine...
[2026-06-22 23:23:21,846.846 INFO    ] 2026-06-22 23:23:21
[2026-06-22 23:23:22,106.106 INFO    ] 2026-06-22 23:23:22
[2026-06-22 23:23:22,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:23:22,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:23:22,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:23:22,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:23:22,635.635 INFO    ] time= 22/06/2026 23:23:22
[2026-06-22 23:23:22,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:23:22,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:23:22,804.804 INFO    ] No existing commands found in stream
[2026-06-22 23:23:27,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:23:27,826.826 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-22 23:23:29,326.326 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:23:29,328.328 INFO    ] Checking for system updates...
[2026-06-22 23:23:29,349.349 INFO    ] 200
[2026-06-22 23:23:29,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:23:29,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:23:29,384.384 INFO    ] No update needed
[2026-06-22 23:23:29,386.386 INFO    ] Checking for camera pi updates...
[2026-06-22 23:23:29,408.408 INFO    ] 200
[2026-06-22 23:23:29,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:23:29,458.458 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:23:29,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:23:29,650.650 INFO    ] No camera update needed
[2026-06-22 23:23:29,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:23:29,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:23:29,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:23:29,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:23:31,709.709 INFO    ] ================================================
[2026-06-22 23:23:31,724.724 INFO    ] Launching Daemon at Mon Jun 22 23:23:31 IST 2026
[2026-06-22 23:23:31,735.735 INFO    ] ================================================
[2026-06-22 23:23:32,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:23:32
[2026-06-22 23:23:32,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:23:33,254.254 INFO    ] Initializing speech engine...
[2026-06-22 23:23:33,263.263 INFO    ] 2026-06-22 23:23:33
[2026-06-22 23:23:33,521.521 INFO    ] 2026-06-22 23:23:33
[2026-06-22 23:23:33,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:23:33,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:23:33,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:23:33,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:23:33,998.998 INFO    ] time= 22/06/2026 23:23:33
[2026-06-22 23:23:34,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:23:34,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:23:34,207.207 INFO    ] No existing commands found in stream
[2026-06-22 23:23:39,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:23:39,219.219 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-22 23:23:43,588.588 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:23:43,591.591 INFO    ] Checking for system updates...
[2026-06-22 23:23:43,626.626 INFO    ] 200
[2026-06-22 23:23:43,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:23:43,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:23:43,684.684 INFO    ] No update needed
[2026-06-22 23:23:43,687.687 INFO    ] Checking for camera pi updates...
[2026-06-22 23:23:43,723.723 INFO    ] 200
[2026-06-22 23:23:43,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:23:43,766.766 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:23:43,854.854 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:23:43,857.857 INFO    ] No camera update needed
[2026-06-22 23:23:43,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:23:43,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:23:43,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:23:43,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:23:45,911.911 INFO    ] ================================================
[2026-06-22 23:23:45,926.926 INFO    ] Launching Daemon at Mon Jun 22 23:23:45 IST 2026
[2026-06-22 23:23:45,937.937 INFO    ] ================================================
[2026-06-22 23:23:46,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:23:46
[2026-06-22 23:23:46,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:23:47,247.247 INFO    ] Initializing speech engine...
[2026-06-22 23:23:47,270.270 INFO    ] 2026-06-22 23:23:47
[2026-06-22 23:23:47,525.525 INFO    ] 2026-06-22 23:23:47
[2026-06-22 23:23:47,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:23:47,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:23:47,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:23:47,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:23:47,902.902 INFO    ] time= 22/06/2026 23:23:47
[2026-06-22 23:23:47,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:23:47,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:23:48,103.103 INFO    ] No existing commands found in stream
[2026-06-22 23:23:53,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:23:53,117.117 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-22 23:23:55,583.583 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:23:55,585.585 INFO    ] Checking for system updates...
[2026-06-22 23:23:55,606.606 INFO    ] 200
[2026-06-22 23:23:55,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:23:55,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:23:55,639.639 INFO    ] No update needed
[2026-06-22 23:23:55,640.640 INFO    ] Checking for camera pi updates...
[2026-06-22 23:23:55,676.676 INFO    ] 200
[2026-06-22 23:23:55,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:23:55,719.719 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:23:55,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:23:55,821.821 INFO    ] No camera update needed
[2026-06-22 23:23:55,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:23:55,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:23:55,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:23:55,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:23:57,877.877 INFO    ] ================================================
[2026-06-22 23:23:57,893.893 INFO    ] Launching Daemon at Mon Jun 22 23:23:57 IST 2026
[2026-06-22 23:23:57,905.905 INFO    ] ================================================
[2026-06-22 23:23:58,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:23:58
[2026-06-22 23:23:59,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:23:59,488.488 INFO    ] Initializing speech engine...
[2026-06-22 23:23:59,496.496 INFO    ] 2026-06-22 23:23:59
[2026-06-22 23:23:59,780.780 INFO    ] 2026-06-22 23:23:59
[2026-06-22 23:23:59,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:24:00,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:24:00,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:24:00,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:24:00,330.330 INFO    ] time= 22/06/2026 23:24:00
[2026-06-22 23:24:00,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:24:00,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:24:00,498.498 INFO    ] No existing commands found in stream
[2026-06-22 23:24:05,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:24:05,532.532 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-22 23:24:06,778.778 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:24:06,781.781 INFO    ] Checking for system updates...
[2026-06-22 23:24:06,822.822 INFO    ] 200
[2026-06-22 23:24:06,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:24:06,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:24:06,882.882 INFO    ] No update needed
[2026-06-22 23:24:06,884.884 INFO    ] Checking for camera pi updates...
[2026-06-22 23:24:06,918.918 INFO    ] 200
[2026-06-22 23:24:06,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:24:06,967.967 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:24:07,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:24:07,053.053 INFO    ] No camera update needed
[2026-06-22 23:24:07,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:24:07,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:24:07,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:24:07,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:24:09,112.112 INFO    ] ================================================
[2026-06-22 23:24:09,128.128 INFO    ] Launching Daemon at Mon Jun 22 23:24:09 IST 2026
[2026-06-22 23:24:09,139.139 INFO    ] ================================================
[2026-06-22 23:24:09,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:24:09
[2026-06-22 23:24:10,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:24:10,495.495 INFO    ] Initializing speech engine...
[2026-06-22 23:24:10,517.517 INFO    ] 2026-06-22 23:24:10
[2026-06-22 23:24:10,774.774 INFO    ] 2026-06-22 23:24:10
[2026-06-22 23:24:10,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:24:11,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:24:11,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:24:11,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:24:11,256.256 INFO    ] time= 22/06/2026 23:24:11
[2026-06-22 23:24:11,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:24:11,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:24:11,472.472 INFO    ] No existing commands found in stream
[2026-06-22 23:24:16,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:24:16,499.499 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-22 23:24:20,931.931 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:24:20,933.933 INFO    ] Checking for system updates...
[2026-06-22 23:24:20,954.954 INFO    ] 200
[2026-06-22 23:24:20,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:24:21,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:24:21,013.013 INFO    ] No update needed
[2026-06-22 23:24:21,021.021 INFO    ] Checking for camera pi updates...
[2026-06-22 23:24:21,055.055 INFO    ] 200
[2026-06-22 23:24:21,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:24:21,102.102 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:24:21,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:24:21,180.180 INFO    ] No camera update needed
[2026-06-22 23:24:21,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:24:21,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:24:21,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:24:21,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:24:23,238.238 INFO    ] ================================================
[2026-06-22 23:24:23,253.253 INFO    ] Launching Daemon at Mon Jun 22 23:24:23 IST 2026
[2026-06-22 23:24:23,265.265 INFO    ] ================================================
[2026-06-22 23:24:23,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:24:23
[2026-06-22 23:24:24,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:24:24,869.869 INFO    ] Initializing speech engine...
[2026-06-22 23:24:24,882.882 INFO    ] 2026-06-22 23:24:24
[2026-06-22 23:24:25,192.192 INFO    ] 2026-06-22 23:24:25
[2026-06-22 23:24:25,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:24:25,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:24:25,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:24:25,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:24:25,698.698 INFO    ] time= 22/06/2026 23:24:25
[2026-06-22 23:24:25,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:24:25,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:24:25,849.849 INFO    ] No existing commands found in stream
[2026-06-22 23:24:30,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:24:30,867.867 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-22 23:24:33,719.719 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:24:33,722.722 INFO    ] Checking for system updates...
[2026-06-22 23:24:33,760.760 INFO    ] 200
[2026-06-22 23:24:33,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:24:33,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:24:33,827.827 INFO    ] No update needed
[2026-06-22 23:24:33,830.830 INFO    ] Checking for camera pi updates...
[2026-06-22 23:24:33,865.865 INFO    ] 200
[2026-06-22 23:24:33,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:24:33,914.914 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:24:34,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:24:34,017.017 INFO    ] No camera update needed
[2026-06-22 23:24:34,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:24:34,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:24:34,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:24:34,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:24:36,072.072 INFO    ] ================================================
[2026-06-22 23:24:36,088.088 INFO    ] Launching Daemon at Mon Jun 22 23:24:36 IST 2026
[2026-06-22 23:24:36,100.100 INFO    ] ================================================
[2026-06-22 23:24:36,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:24:36
[2026-06-22 23:24:37,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:24:37,521.521 INFO    ] Initializing speech engine...
[2026-06-22 23:24:37,528.528 INFO    ] 2026-06-22 23:24:37
[2026-06-22 23:24:37,789.789 INFO    ] 2026-06-22 23:24:37
[2026-06-22 23:24:37,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:24:38,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:24:38,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:24:38,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:24:38,243.243 INFO    ] time= 22/06/2026 23:24:38
[2026-06-22 23:24:38,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:24:38,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:24:38,409.409 INFO    ] No existing commands found in stream
[2026-06-22 23:24:43,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:24:43,449.449 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-22 23:24:46,638.638 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:24:46,639.639 INFO    ] Checking for system updates...
[2026-06-22 23:24:46,663.663 INFO    ] 200
[2026-06-22 23:24:46,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:24:46,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:24:46,701.701 INFO    ] No update needed
[2026-06-22 23:24:46,703.703 INFO    ] Checking for camera pi updates...
[2026-06-22 23:24:46,737.737 INFO    ] 200
[2026-06-22 23:24:46,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:24:46,782.782 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:24:46,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:24:46,854.854 INFO    ] No camera update needed
[2026-06-22 23:24:46,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:24:46,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:24:46,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:24:46,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:24:48,914.914 INFO    ] ================================================
[2026-06-22 23:24:48,930.930 INFO    ] Launching Daemon at Mon Jun 22 23:24:48 IST 2026
[2026-06-22 23:24:48,941.941 INFO    ] ================================================
[2026-06-22 23:24:49,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:24:49
[2026-06-22 23:24:50,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:24:50,456.456 INFO    ] Initializing speech engine...
[2026-06-22 23:24:50,464.464 INFO    ] 2026-06-22 23:24:50
[2026-06-22 23:24:50,770.770 INFO    ] 2026-06-22 23:24:50
[2026-06-22 23:24:50,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:24:51,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:24:51,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:24:51,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:24:51,276.276 INFO    ] time= 22/06/2026 23:24:51
[2026-06-22 23:24:51,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:24:51,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:24:51,432.432 INFO    ] No existing commands found in stream
[2026-06-22 23:24:56,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:24:56,459.459 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-22 23:25:00,563.563 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:25:00,566.566 INFO    ] Checking for system updates...
[2026-06-22 23:25:00,602.602 INFO    ] 200
[2026-06-22 23:25:00,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:25:00,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:25:00,660.660 INFO    ] No update needed
[2026-06-22 23:25:00,662.662 INFO    ] Checking for camera pi updates...
[2026-06-22 23:25:00,701.701 INFO    ] 200
[2026-06-22 23:25:00,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:25:00,743.743 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:25:00,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:25:00,829.829 INFO    ] No camera update needed
[2026-06-22 23:25:00,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:25:00,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:25:00,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:25:00,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:25:02,901.901 INFO    ] ================================================
[2026-06-22 23:25:02,921.921 INFO    ] Launching Daemon at Mon Jun 22 23:25:02 IST 2026
[2026-06-22 23:25:02,933.933 INFO    ] ================================================
[2026-06-22 23:25:03,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:25:03
[2026-06-22 23:25:04,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:25:04,460.460 INFO    ] Initializing speech engine...
[2026-06-22 23:25:04,469.469 INFO    ] 2026-06-22 23:25:04
[2026-06-22 23:25:04,739.739 INFO    ] 2026-06-22 23:25:04
[2026-06-22 23:25:04,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:25:05,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:25:05,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:25:05,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:25:05,416.416 INFO    ] time= 22/06/2026 23:25:05
[2026-06-22 23:25:05,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:25:05,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:25:05,689.689 INFO    ] No existing commands found in stream
[2026-06-22 23:25:10,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:25:10,718.718 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-22 23:25:13,883.883 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:25:13,886.886 INFO    ] Checking for system updates...
[2026-06-22 23:25:13,929.929 INFO    ] 200
[2026-06-22 23:25:13,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:25:13,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:25:13,988.988 INFO    ] No update needed
[2026-06-22 23:25:13,990.990 INFO    ] Checking for camera pi updates...
[2026-06-22 23:25:14,024.024 INFO    ] 200
[2026-06-22 23:25:14,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:25:14,069.069 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:25:14,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:25:14,158.158 INFO    ] No camera update needed
[2026-06-22 23:25:14,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:25:14,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:25:14,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:25:14,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:25:16,213.213 INFO    ] ================================================
[2026-06-22 23:25:16,229.229 INFO    ] Launching Daemon at Mon Jun 22 23:25:16 IST 2026
[2026-06-22 23:25:16,241.241 INFO    ] ================================================
[2026-06-22 23:25:16,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:25:16
[2026-06-22 23:25:17,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:25:17,618.618 INFO    ] Initializing speech engine...
[2026-06-22 23:25:17,627.627 INFO    ] 2026-06-22 23:25:17
[2026-06-22 23:25:17,887.887 INFO    ] 2026-06-22 23:25:17
[2026-06-22 23:25:17,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:25:18,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:25:18,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:25:18,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:25:18,440.440 INFO    ] time= 22/06/2026 23:25:18
[2026-06-22 23:25:18,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:25:18,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:25:18,614.614 INFO    ] No existing commands found in stream
[2026-06-22 23:25:23,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:25:23,648.648 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-22 23:25:25,005.005 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:25:25,008.008 INFO    ] Checking for system updates...
[2026-06-22 23:25:25,044.044 INFO    ] 200
[2026-06-22 23:25:25,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:25:25,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:25:25,102.102 INFO    ] No update needed
[2026-06-22 23:25:25,105.105 INFO    ] Checking for camera pi updates...
[2026-06-22 23:25:25,143.143 INFO    ] 200
[2026-06-22 23:25:25,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:25:25,186.186 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:25:25,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:25:25,279.279 INFO    ] No camera update needed
[2026-06-22 23:25:25,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:25:25,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:25:25,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:25:25,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:25:27,336.336 INFO    ] ================================================
[2026-06-22 23:25:27,352.352 INFO    ] Launching Daemon at Mon Jun 22 23:25:27 IST 2026
[2026-06-22 23:25:27,363.363 INFO    ] ================================================
[2026-06-22 23:25:27,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:25:27
[2026-06-22 23:25:28,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:25:28,769.769 INFO    ] Initializing speech engine...
[2026-06-22 23:25:28,778.778 INFO    ] 2026-06-22 23:25:28
[2026-06-22 23:25:29,030.030 INFO    ] 2026-06-22 23:25:29
[2026-06-22 23:25:29,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:25:29,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:25:29,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:25:29,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:25:29,506.506 INFO    ] time= 22/06/2026 23:25:29
[2026-06-22 23:25:29,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:25:29,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:25:29,729.729 INFO    ] No existing commands found in stream
[2026-06-22 23:25:34,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:25:34,753.753 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-22 23:25:37,051.051 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:25:37,054.054 INFO    ] Checking for system updates...
[2026-06-22 23:25:37,091.091 INFO    ] 200
[2026-06-22 23:25:37,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:25:37,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:25:37,158.158 INFO    ] No update needed
[2026-06-22 23:25:37,161.161 INFO    ] Checking for camera pi updates...
[2026-06-22 23:25:37,196.196 INFO    ] 200
[2026-06-22 23:25:37,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:25:37,240.240 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:25:37,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:25:37,318.318 INFO    ] No camera update needed
[2026-06-22 23:25:37,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:25:37,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:25:37,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:25:37,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:25:39,378.378 INFO    ] ================================================
[2026-06-22 23:25:39,393.393 INFO    ] Launching Daemon at Mon Jun 22 23:25:39 IST 2026
[2026-06-22 23:25:39,405.405 INFO    ] ================================================
[2026-06-22 23:25:39,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:25:39
[2026-06-22 23:25:40,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:25:40,736.736 INFO    ] Initializing speech engine...
[2026-06-22 23:25:40,746.746 INFO    ] 2026-06-22 23:25:40
[2026-06-22 23:25:40,995.995 INFO    ] 2026-06-22 23:25:40
[2026-06-22 23:25:41,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:25:41,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:25:41,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:25:41,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:25:41,364.364 INFO    ] time= 22/06/2026 23:25:41
[2026-06-22 23:25:41,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:25:41,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:25:41,549.549 INFO    ] No existing commands found in stream
[2026-06-22 23:25:46,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:25:46,576.576 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-22 23:25:50,110.110 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:25:50,113.113 INFO    ] Checking for system updates...
[2026-06-22 23:25:50,150.150 INFO    ] 200
[2026-06-22 23:25:50,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:25:50,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:25:50,209.209 INFO    ] No update needed
[2026-06-22 23:25:50,211.211 INFO    ] Checking for camera pi updates...
[2026-06-22 23:25:50,249.249 INFO    ] 200
[2026-06-22 23:25:50,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:25:50,293.293 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:25:50,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:25:50,387.387 INFO    ] No camera update needed
[2026-06-22 23:25:50,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:25:50,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:25:50,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:25:50,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:25:52,443.443 INFO    ] ================================================
[2026-06-22 23:25:52,459.459 INFO    ] Launching Daemon at Mon Jun 22 23:25:52 IST 2026
[2026-06-22 23:25:52,471.471 INFO    ] ================================================
[2026-06-22 23:25:53,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:25:53
[2026-06-22 23:25:53,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:25:53,844.844 INFO    ] Initializing speech engine...
[2026-06-22 23:25:53,851.851 INFO    ] 2026-06-22 23:25:53
[2026-06-22 23:25:54,113.113 INFO    ] 2026-06-22 23:25:54
[2026-06-22 23:25:54,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:25:54,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:25:54,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:25:54,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:25:54,579.579 INFO    ] time= 22/06/2026 23:25:54
[2026-06-22 23:25:54,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:25:54,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:25:54,721.721 INFO    ] No existing commands found in stream
[2026-06-22 23:25:59,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:25:59,737.737 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-22 23:26:01,871.871 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:26:01,875.875 INFO    ] Checking for system updates...
[2026-06-22 23:26:01,920.920 INFO    ] 200
[2026-06-22 23:26:01,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:26:01,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:26:01,998.998 INFO    ] No update needed
[2026-06-22 23:26:02,001.001 INFO    ] Checking for camera pi updates...
[2026-06-22 23:26:02,040.040 INFO    ] 200
[2026-06-22 23:26:02,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:26:02,098.098 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:26:02,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:26:02,157.157 INFO    ] No camera update needed
[2026-06-22 23:26:02,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:26:02,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:26:02,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:26:02,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:26:04,224.224 INFO    ] ================================================
[2026-06-22 23:26:04,240.240 INFO    ] Launching Daemon at Mon Jun 22 23:26:04 IST 2026
[2026-06-22 23:26:04,251.251 INFO    ] ================================================
[2026-06-22 23:26:04,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:26:04
[2026-06-22 23:26:05,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:26:05,679.679 INFO    ] Initializing speech engine...
[2026-06-22 23:26:05,688.688 INFO    ] 2026-06-22 23:26:05
[2026-06-22 23:26:05,941.941 INFO    ] 2026-06-22 23:26:05
[2026-06-22 23:26:05,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:26:06,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:26:06,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:26:06,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:26:06,318.318 INFO    ] time= 22/06/2026 23:26:06
[2026-06-22 23:26:06,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:26:06,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:26:06,403.403 INFO    ] No existing commands found in stream
[2026-06-22 23:26:11,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:26:11,441.441 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-22 23:26:16,871.871 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:26:16,873.873 INFO    ] Checking for system updates...
[2026-06-22 23:26:16,899.899 INFO    ] 200
[2026-06-22 23:26:16,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:26:16,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:26:16,957.957 INFO    ] No update needed
[2026-06-22 23:26:16,959.959 INFO    ] Checking for camera pi updates...
[2026-06-22 23:26:16,993.993 INFO    ] 200
[2026-06-22 23:26:16,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:26:17,037.037 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:26:17,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:26:17,121.121 INFO    ] No camera update needed
[2026-06-22 23:26:17,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:26:17,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:26:17,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:26:17,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:26:19,176.176 INFO    ] ================================================
[2026-06-22 23:26:19,192.192 INFO    ] Launching Daemon at Mon Jun 22 23:26:19 IST 2026
[2026-06-22 23:26:19,204.204 INFO    ] ================================================
[2026-06-22 23:26:19,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:26:19
[2026-06-22 23:26:20,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:26:20,572.572 INFO    ] Initializing speech engine...
[2026-06-22 23:26:20,581.581 INFO    ] 2026-06-22 23:26:20
[2026-06-22 23:26:20,832.832 INFO    ] 2026-06-22 23:26:20
[2026-06-22 23:26:20,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:26:21,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:26:21,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:26:21,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:26:21,307.307 INFO    ] time= 22/06/2026 23:26:21
[2026-06-22 23:26:21,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:26:21,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:26:21,559.559 INFO    ] No existing commands found in stream
[2026-06-22 23:26:26,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:26:26,577.577 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-22 23:26:28,635.635 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:26:28,637.637 INFO    ] Checking for system updates...
[2026-06-22 23:26:28,658.658 INFO    ] 200
[2026-06-22 23:26:28,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:26:28,694.694 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:26:28,697.697 INFO    ] No update needed
[2026-06-22 23:26:28,699.699 INFO    ] Checking for camera pi updates...
[2026-06-22 23:26:28,738.738 INFO    ] 200
[2026-06-22 23:26:28,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:26:28,783.783 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:26:28,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:26:28,863.863 INFO    ] No camera update needed
[2026-06-22 23:26:28,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:26:28,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:26:28,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:26:28,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:26:30,923.923 INFO    ] ================================================
[2026-06-22 23:26:30,939.939 INFO    ] Launching Daemon at Mon Jun 22 23:26:30 IST 2026
[2026-06-22 23:26:30,950.950 INFO    ] ================================================
[2026-06-22 23:26:31,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:26:31
[2026-06-22 23:26:32,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:26:32,542.542 INFO    ] Initializing speech engine...
[2026-06-22 23:26:32,553.553 INFO    ] 2026-06-22 23:26:32
[2026-06-22 23:26:32,841.841 INFO    ] 2026-06-22 23:26:32
[2026-06-22 23:26:32,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:26:33,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:26:33,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:26:33,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:26:33,257.257 INFO    ] time= 22/06/2026 23:26:33
[2026-06-22 23:26:33,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:26:33,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:26:33,341.341 INFO    ] No existing commands found in stream
[2026-06-22 23:26:38,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:26:38,356.356 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-22 23:26:39,097.097 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:26:39,099.099 INFO    ] Checking for system updates...
[2026-06-22 23:26:39,135.135 INFO    ] 200
[2026-06-22 23:26:39,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:26:39,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:26:39,193.193 INFO    ] No update needed
[2026-06-22 23:26:39,196.196 INFO    ] Checking for camera pi updates...
[2026-06-22 23:26:39,239.239 INFO    ] 200
[2026-06-22 23:26:39,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:26:39,282.282 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:26:39,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:26:39,366.366 INFO    ] No camera update needed
[2026-06-22 23:26:39,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:26:39,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:26:39,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:26:39,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:26:41,423.423 INFO    ] ================================================
[2026-06-22 23:26:41,438.438 INFO    ] Launching Daemon at Mon Jun 22 23:26:41 IST 2026
[2026-06-22 23:26:41,449.449 INFO    ] ================================================
[2026-06-22 23:26:42,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:26:42
[2026-06-22 23:26:42,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:26:42,881.881 INFO    ] Initializing speech engine...
[2026-06-22 23:26:42,889.889 INFO    ] 2026-06-22 23:26:42
[2026-06-22 23:26:43,175.175 INFO    ] 2026-06-22 23:26:43
[2026-06-22 23:26:43,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:26:43,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:26:43,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:26:43,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:26:43,716.716 INFO    ] time= 22/06/2026 23:26:43
[2026-06-22 23:26:43,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:26:43,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:26:43,862.862 INFO    ] No existing commands found in stream
[2026-06-22 23:26:48,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:26:48,888.888 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-22 23:26:52,386.386 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:26:52,387.387 INFO    ] Checking for system updates...
[2026-06-22 23:26:52,417.417 INFO    ] 200
[2026-06-22 23:26:52,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:26:52,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:26:52,478.478 INFO    ] No update needed
[2026-06-22 23:26:52,480.480 INFO    ] Checking for camera pi updates...
[2026-06-22 23:26:52,518.518 INFO    ] 200
[2026-06-22 23:26:52,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:26:52,563.563 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:26:52,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:26:52,653.653 INFO    ] No camera update needed
[2026-06-22 23:26:52,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:26:52,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:26:52,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:26:52,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:26:54,712.712 INFO    ] ================================================
[2026-06-22 23:26:54,728.728 INFO    ] Launching Daemon at Mon Jun 22 23:26:54 IST 2026
[2026-06-22 23:26:54,738.738 INFO    ] ================================================
[2026-06-22 23:26:55,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:26:55
[2026-06-22 23:26:55,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:26:56,204.204 INFO    ] Initializing speech engine...
[2026-06-22 23:26:56,209.209 INFO    ] 2026-06-22 23:26:56
[2026-06-22 23:26:56,471.471 INFO    ] 2026-06-22 23:26:56
[2026-06-22 23:26:56,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:26:56,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:26:56,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:26:56,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:26:56,935.935 INFO    ] time= 22/06/2026 23:26:56
[2026-06-22 23:26:56,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:26:57,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:26:57,156.156 INFO    ] No existing commands found in stream
[2026-06-22 23:27:02,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:27:02,182.182 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-22 23:27:06,238.238 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:27:06,242.242 INFO    ] Checking for system updates...
[2026-06-22 23:27:06,288.288 INFO    ] 200
[2026-06-22 23:27:06,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:27:06,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:27:06,348.348 INFO    ] No update needed
[2026-06-22 23:27:06,350.350 INFO    ] Checking for camera pi updates...
[2026-06-22 23:27:06,385.385 INFO    ] 200
[2026-06-22 23:27:06,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:27:06,433.433 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:27:06,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:27:06,541.541 INFO    ] No camera update needed
[2026-06-22 23:27:06,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:27:06,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:27:06,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:27:06,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:27:08,597.597 INFO    ] ================================================
[2026-06-22 23:27:08,612.612 INFO    ] Launching Daemon at Mon Jun 22 23:27:08 IST 2026
[2026-06-22 23:27:08,623.623 INFO    ] ================================================
[2026-06-22 23:27:09,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:27:09
[2026-06-22 23:27:09,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:27:10,085.085 INFO    ] Initializing speech engine...
[2026-06-22 23:27:10,092.092 INFO    ] 2026-06-22 23:27:10
[2026-06-22 23:27:10,353.353 INFO    ] 2026-06-22 23:27:10
[2026-06-22 23:27:10,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:27:10,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:27:10,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:27:10,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:27:10,823.823 INFO    ] time= 22/06/2026 23:27:10
[2026-06-22 23:27:10,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:27:10,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:27:11,037.037 INFO    ] No existing commands found in stream
[2026-06-22 23:27:16,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:27:16,065.065 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-22 23:27:20,508.508 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:27:20,510.510 INFO    ] Checking for system updates...
[2026-06-22 23:27:20,546.546 INFO    ] 200
[2026-06-22 23:27:20,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:27:20,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:27:20,604.604 INFO    ] No update needed
[2026-06-22 23:27:20,607.607 INFO    ] Checking for camera pi updates...
[2026-06-22 23:27:20,640.640 INFO    ] 200
[2026-06-22 23:27:20,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:27:20,689.689 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:27:20,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:27:20,772.772 INFO    ] No camera update needed
[2026-06-22 23:27:20,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:27:20,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:27:20,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:27:20,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:27:22,828.828 INFO    ] ================================================
[2026-06-22 23:27:22,843.843 INFO    ] Launching Daemon at Mon Jun 22 23:27:22 IST 2026
[2026-06-22 23:27:22,854.854 INFO    ] ================================================
[2026-06-22 23:27:23,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:27:23
[2026-06-22 23:27:24,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:27:24,340.340 INFO    ] Initializing speech engine...
[2026-06-22 23:27:24,347.347 INFO    ] 2026-06-22 23:27:24
[2026-06-22 23:27:24,601.601 INFO    ] 2026-06-22 23:27:24
[2026-06-22 23:27:24,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:27:24,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:27:24,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:27:25,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:27:25,084.084 INFO    ] time= 22/06/2026 23:27:25
[2026-06-22 23:27:25,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:27:25,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:27:25,305.305 INFO    ] No existing commands found in stream
[2026-06-22 23:27:30,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:27:30,338.338 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-22 23:27:34,812.812 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:27:34,815.815 INFO    ] Checking for system updates...
[2026-06-22 23:27:34,852.852 INFO    ] 200
[2026-06-22 23:27:34,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:27:34,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:27:34,911.911 INFO    ] No update needed
[2026-06-22 23:27:34,914.914 INFO    ] Checking for camera pi updates...
[2026-06-22 23:27:34,948.948 INFO    ] 200
[2026-06-22 23:27:34,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:27:34,991.991 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:27:35,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:27:35,172.172 INFO    ] No camera update needed
[2026-06-22 23:27:35,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:27:35,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:27:35,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:27:35,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:27:37,228.228 INFO    ] ================================================
[2026-06-22 23:27:37,243.243 INFO    ] Launching Daemon at Mon Jun 22 23:27:37 IST 2026
[2026-06-22 23:27:37,254.254 INFO    ] ================================================
[2026-06-22 23:27:37,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:27:37
[2026-06-22 23:27:38,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:27:38,721.721 INFO    ] Initializing speech engine...
[2026-06-22 23:27:38,728.728 INFO    ] 2026-06-22 23:27:38
[2026-06-22 23:27:39,030.030 INFO    ] 2026-06-22 23:27:38
[2026-06-22 23:27:39,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:27:39,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:27:39,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:27:39,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:27:39,590.590 INFO    ] time= 22/06/2026 23:27:39
[2026-06-22 23:27:39,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:27:39,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:27:39,795.795 INFO    ] No existing commands found in stream
[2026-06-22 23:27:44,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:27:44,823.823 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-22 23:27:47,590.590 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:27:47,593.593 INFO    ] Checking for system updates...
[2026-06-22 23:27:47,633.633 INFO    ] 200
[2026-06-22 23:27:47,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:27:47,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:27:47,698.698 INFO    ] No update needed
[2026-06-22 23:27:47,700.700 INFO    ] Checking for camera pi updates...
[2026-06-22 23:27:47,734.734 INFO    ] 200
[2026-06-22 23:27:47,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:27:47,782.782 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:27:47,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:27:47,869.869 INFO    ] No camera update needed
[2026-06-22 23:27:47,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:27:47,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:27:47,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:27:47,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:27:49,925.925 INFO    ] ================================================
[2026-06-22 23:27:49,940.940 INFO    ] Launching Daemon at Mon Jun 22 23:27:49 IST 2026
[2026-06-22 23:27:49,951.951 INFO    ] ================================================
[2026-06-22 23:27:50,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:27:50
[2026-06-22 23:27:51,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:27:51,362.362 INFO    ] Initializing speech engine...
[2026-06-22 23:27:51,371.371 INFO    ] 2026-06-22 23:27:51
[2026-06-22 23:27:51,670.670 INFO    ] 2026-06-22 23:27:51
[2026-06-22 23:27:51,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:27:51,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:27:52,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:27:52,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:27:52,211.211 INFO    ] time= 22/06/2026 23:27:52
[2026-06-22 23:27:52,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:27:52,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:27:52,426.426 INFO    ] No existing commands found in stream
[2026-06-22 23:27:57,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:27:57,444.444 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-22 23:28:01,225.225 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:28:01,227.227 INFO    ] Checking for system updates...
[2026-06-22 23:28:01,270.270 INFO    ] 200
[2026-06-22 23:28:01,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:28:01,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:28:01,402.402 INFO    ] No update needed
[2026-06-22 23:28:01,405.405 INFO    ] Checking for camera pi updates...
[2026-06-22 23:28:01,469.469 INFO    ] 200
[2026-06-22 23:28:01,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:28:01,556.556 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:28:01,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:28:01,650.650 INFO    ] No camera update needed
[2026-06-22 23:28:01,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:28:01,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:28:01,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:28:01,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:28:03,753.753 INFO    ] ================================================
[2026-06-22 23:28:03,768.768 INFO    ] Launching Daemon at Mon Jun 22 23:28:03 IST 2026
[2026-06-22 23:28:03,779.779 INFO    ] ================================================
[2026-06-22 23:28:04,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:28:04
[2026-06-22 23:28:04,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:28:05,232.232 INFO    ] Initializing speech engine...
[2026-06-22 23:28:05,239.239 INFO    ] 2026-06-22 23:28:05
[2026-06-22 23:28:05,534.534 INFO    ] 2026-06-22 23:28:05
[2026-06-22 23:28:05,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:28:05,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:28:05,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:28:05,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:28:06,038.038 INFO    ] time= 22/06/2026 23:28:05
[2026-06-22 23:28:06,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:28:06,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:28:06,246.246 INFO    ] No existing commands found in stream
[2026-06-22 23:28:11,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:28:11,288.288 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-22 23:28:13,192.192 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:28:13,195.195 INFO    ] Checking for system updates...
[2026-06-22 23:28:13,233.233 INFO    ] 200
[2026-06-22 23:28:13,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:28:13,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:28:13,297.297 INFO    ] No update needed
[2026-06-22 23:28:13,300.300 INFO    ] Checking for camera pi updates...
[2026-06-22 23:28:13,338.338 INFO    ] 200
[2026-06-22 23:28:13,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:28:13,387.387 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:28:13,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:28:13,469.469 INFO    ] No camera update needed
[2026-06-22 23:28:13,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:28:13,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:28:13,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:28:13,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:28:15,527.527 INFO    ] ================================================
[2026-06-22 23:28:15,543.543 INFO    ] Launching Daemon at Mon Jun 22 23:28:15 IST 2026
[2026-06-22 23:28:15,555.555 INFO    ] ================================================
[2026-06-22 23:28:16,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:28:16
[2026-06-22 23:28:16,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:28:16,908.908 INFO    ] Initializing speech engine...
[2026-06-22 23:28:16,918.918 INFO    ] 2026-06-22 23:28:16
[2026-06-22 23:28:17,165.165 INFO    ] 2026-06-22 23:28:17
[2026-06-22 23:28:17,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:28:17,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:28:17,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:28:17,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:28:17,641.641 INFO    ] time= 22/06/2026 23:28:17
[2026-06-22 23:28:17,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:28:17,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:28:17,877.877 INFO    ] No existing commands found in stream
[2026-06-22 23:28:22,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:28:22,909.909 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-22 23:28:26,207.207 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:28:26,210.210 INFO    ] Checking for system updates...
[2026-06-22 23:28:26,251.251 INFO    ] 200
[2026-06-22 23:28:26,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:28:26,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:28:26,312.312 INFO    ] No update needed
[2026-06-22 23:28:26,314.314 INFO    ] Checking for camera pi updates...
[2026-06-22 23:28:26,354.354 INFO    ] 200
[2026-06-22 23:28:26,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:28:26,404.404 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:28:26,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:28:26,489.489 INFO    ] No camera update needed
[2026-06-22 23:28:26,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:28:26,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:28:26,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:28:26,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:28:28,546.546 INFO    ] ================================================
[2026-06-22 23:28:28,561.561 INFO    ] Launching Daemon at Mon Jun 22 23:28:28 IST 2026
[2026-06-22 23:28:28,573.573 INFO    ] ================================================
[2026-06-22 23:28:29,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:28:29
[2026-06-22 23:28:29,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:28:30,037.037 INFO    ] Initializing speech engine...
[2026-06-22 23:28:30,049.049 INFO    ] 2026-06-22 23:28:30
[2026-06-22 23:28:30,364.364 INFO    ] 2026-06-22 23:28:30
[2026-06-22 23:28:30,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:28:30,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:28:30,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:28:30,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:28:30,873.873 INFO    ] time= 22/06/2026 23:28:30
[2026-06-22 23:28:30,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:28:30,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:28:31,025.025 INFO    ] No existing commands found in stream
[2026-06-22 23:28:36,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:28:36,045.045 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-22 23:28:36,934.934 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:28:36,936.936 INFO    ] Checking for system updates...
[2026-06-22 23:28:36,957.957 INFO    ] 200
[2026-06-22 23:28:36,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:28:36,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:28:36,990.990 INFO    ] No update needed
[2026-06-22 23:28:36,992.992 INFO    ] Checking for camera pi updates...
[2026-06-22 23:28:37,012.012 INFO    ] 200
[2026-06-22 23:28:37,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:28:37,054.054 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:28:37,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:28:37,125.125 INFO    ] No camera update needed
[2026-06-22 23:28:37,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:28:37,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:28:37,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:28:37,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:28:39,187.187 INFO    ] ================================================
[2026-06-22 23:28:39,202.202 INFO    ] Launching Daemon at Mon Jun 22 23:28:39 IST 2026
[2026-06-22 23:28:39,213.213 INFO    ] ================================================
[2026-06-22 23:28:39,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:28:39
[2026-06-22 23:28:40,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:28:40,703.703 INFO    ] Initializing speech engine...
[2026-06-22 23:28:40,718.718 INFO    ] 2026-06-22 23:28:40
[2026-06-22 23:28:40,975.975 INFO    ] 2026-06-22 23:28:40
[2026-06-22 23:28:41,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:28:41,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:28:41,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:28:41,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:28:41,457.457 INFO    ] time= 22/06/2026 23:28:41
[2026-06-22 23:28:41,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:28:41,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:28:41,665.665 INFO    ] No existing commands found in stream
[2026-06-22 23:28:46,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:28:46,700.700 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-22 23:28:48,286.286 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:28:48,288.288 INFO    ] Checking for system updates...
[2026-06-22 23:28:48,309.309 INFO    ] 200
[2026-06-22 23:28:48,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:28:48,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:28:48,363.363 INFO    ] No update needed
[2026-06-22 23:28:48,366.366 INFO    ] Checking for camera pi updates...
[2026-06-22 23:28:48,400.400 INFO    ] 200
[2026-06-22 23:28:48,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:28:48,448.448 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:28:48,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:28:48,537.537 INFO    ] No camera update needed
[2026-06-22 23:28:48,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:28:48,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:28:48,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:28:48,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:28:50,593.593 INFO    ] ================================================
[2026-06-22 23:28:50,607.607 INFO    ] Launching Daemon at Mon Jun 22 23:28:50 IST 2026
[2026-06-22 23:28:50,618.618 INFO    ] ================================================
[2026-06-22 23:28:51,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:28:51
[2026-06-22 23:28:51,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:28:51,984.984 INFO    ] Initializing speech engine...
[2026-06-22 23:28:51,991.991 INFO    ] 2026-06-22 23:28:51
[2026-06-22 23:28:52,255.255 INFO    ] 2026-06-22 23:28:52
[2026-06-22 23:28:52,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:28:52,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:28:52,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:28:52,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:28:52,736.736 INFO    ] time= 22/06/2026 23:28:52
[2026-06-22 23:28:52,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:28:52,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:28:52,945.945 INFO    ] No existing commands found in stream
[2026-06-22 23:28:57,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:28:57,965.965 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-22 23:29:01,532.532 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:29:01,536.536 INFO    ] Checking for system updates...
[2026-06-22 23:29:01,603.603 INFO    ] 200
[2026-06-22 23:29:01,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:29:01,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:29:01,691.691 INFO    ] No update needed
[2026-06-22 23:29:01,695.695 INFO    ] Checking for camera pi updates...
[2026-06-22 23:29:01,735.735 INFO    ] 200
[2026-06-22 23:29:01,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:29:01,786.786 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:29:01,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:29:01,868.868 INFO    ] No camera update needed
[2026-06-22 23:29:01,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:29:01,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:29:01,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:29:01,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:29:03,938.938 INFO    ] ================================================
[2026-06-22 23:29:03,953.953 INFO    ] Launching Daemon at Mon Jun 22 23:29:03 IST 2026
[2026-06-22 23:29:03,965.965 INFO    ] ================================================
[2026-06-22 23:29:04,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:29:04
[2026-06-22 23:29:05,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:29:05,398.398 INFO    ] Initializing speech engine...
[2026-06-22 23:29:05,407.407 INFO    ] 2026-06-22 23:29:05
[2026-06-22 23:29:05,658.658 INFO    ] 2026-06-22 23:29:05
[2026-06-22 23:29:05,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:29:05,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:29:05,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:29:06,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:29:06,035.035 INFO    ] time= 22/06/2026 23:29:06
[2026-06-22 23:29:06,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:29:06,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:29:06,216.216 INFO    ] No existing commands found in stream
[2026-06-22 23:29:11,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:29:11,255.255 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-22 23:29:13,770.770 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:29:13,773.773 INFO    ] Checking for system updates...
[2026-06-22 23:29:13,810.810 INFO    ] 200
[2026-06-22 23:29:13,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:29:13,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:29:13,879.879 INFO    ] No update needed
[2026-06-22 23:29:13,882.882 INFO    ] Checking for camera pi updates...
[2026-06-22 23:29:13,916.916 INFO    ] 200
[2026-06-22 23:29:13,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:29:13,962.962 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:29:14,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:29:14,080.080 INFO    ] No camera update needed
[2026-06-22 23:29:14,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:29:14,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:29:14,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:29:14,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:29:16,140.140 INFO    ] ================================================
[2026-06-22 23:29:16,155.155 INFO    ] Launching Daemon at Mon Jun 22 23:29:16 IST 2026
[2026-06-22 23:29:16,167.167 INFO    ] ================================================
[2026-06-22 23:29:16,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:29:16
[2026-06-22 23:29:17,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:29:17,484.484 INFO    ] Initializing speech engine...
[2026-06-22 23:29:17,503.503 INFO    ] 2026-06-22 23:29:17
[2026-06-22 23:29:17,764.764 INFO    ] 2026-06-22 23:29:17
[2026-06-22 23:29:17,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:29:18,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:29:18,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:29:18,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:29:18,727.727 INFO    ] time= 22/06/2026 23:29:18
[2026-06-22 23:29:18,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:29:18,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:29:18,916.916 INFO    ] No existing commands found in stream
[2026-06-22 23:29:23,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:29:23,931.931 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-22 23:29:27,746.746 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:29:27,748.748 INFO    ] Checking for system updates...
[2026-06-22 23:29:27,770.770 INFO    ] 200
[2026-06-22 23:29:27,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:29:27,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:29:27,837.837 INFO    ] No update needed
[2026-06-22 23:29:27,840.840 INFO    ] Checking for camera pi updates...
[2026-06-22 23:29:27,883.883 INFO    ] 200
[2026-06-22 23:29:27,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:29:27,925.925 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:29:28,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:29:28,012.012 INFO    ] No camera update needed
[2026-06-22 23:29:28,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:29:28,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:29:28,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:29:28,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:29:30,068.068 INFO    ] ================================================
[2026-06-22 23:29:30,083.083 INFO    ] Launching Daemon at Mon Jun 22 23:29:30 IST 2026
[2026-06-22 23:29:30,094.094 INFO    ] ================================================
[2026-06-22 23:29:30,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:29:30
[2026-06-22 23:29:31,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:29:31,505.505 INFO    ] Initializing speech engine...
[2026-06-22 23:29:31,517.517 INFO    ] 2026-06-22 23:29:31
[2026-06-22 23:29:31,821.821 INFO    ] 2026-06-22 23:29:31
[2026-06-22 23:29:31,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:29:32,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:29:32,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:29:32,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:29:32,316.316 INFO    ] time= 22/06/2026 23:29:32
[2026-06-22 23:29:32,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:29:32,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:29:32,548.548 INFO    ] No existing commands found in stream
[2026-06-22 23:29:37,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:29:37,569.569 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-22 23:29:39,856.856 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:29:39,857.857 INFO    ] Checking for system updates...
[2026-06-22 23:29:39,882.882 INFO    ] 200
[2026-06-22 23:29:39,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:29:39,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:29:39,944.944 INFO    ] No update needed
[2026-06-22 23:29:39,947.947 INFO    ] Checking for camera pi updates...
[2026-06-22 23:29:39,982.982 INFO    ] 200
[2026-06-22 23:29:39,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:29:40,030.030 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:29:40,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:29:40,219.219 INFO    ] No camera update needed
[2026-06-22 23:29:40,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:29:40,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:29:40,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:29:40,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:29:42,278.278 INFO    ] ================================================
[2026-06-22 23:29:42,293.293 INFO    ] Launching Daemon at Mon Jun 22 23:29:42 IST 2026
[2026-06-22 23:29:42,305.305 INFO    ] ================================================
[2026-06-22 23:29:42,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:29:42
[2026-06-22 23:29:43,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:29:43,963.963 INFO    ] Initializing speech engine...
[2026-06-22 23:29:43,977.977 INFO    ] 2026-06-22 23:29:43
[2026-06-22 23:29:44,265.265 INFO    ] 2026-06-22 23:29:44
[2026-06-22 23:29:44,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:29:44,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:29:44,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:29:44,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:29:44,822.822 INFO    ] time= 22/06/2026 23:29:44
[2026-06-22 23:29:44,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:29:44,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:29:44,981.981 INFO    ] No existing commands found in stream
[2026-06-22 23:29:50,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:29:50,007.007 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-22 23:29:52,086.086 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:29:52,089.089 INFO    ] Checking for system updates...
[2026-06-22 23:29:52,127.127 INFO    ] 200
[2026-06-22 23:29:52,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:29:52,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:29:52,185.185 INFO    ] No update needed
[2026-06-22 23:29:52,187.187 INFO    ] Checking for camera pi updates...
[2026-06-22 23:29:52,221.221 INFO    ] 200
[2026-06-22 23:29:52,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:29:52,264.264 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:29:52,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:29:52,350.350 INFO    ] No camera update needed
[2026-06-22 23:29:52,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:29:52,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:29:52,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:29:52,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:29:54,405.405 INFO    ] ================================================
[2026-06-22 23:29:54,420.420 INFO    ] Launching Daemon at Mon Jun 22 23:29:54 IST 2026
[2026-06-22 23:29:54,430.430 INFO    ] ================================================
[2026-06-22 23:29:55,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:29:55
[2026-06-22 23:29:55,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:29:55,889.889 INFO    ] Initializing speech engine...
[2026-06-22 23:29:55,898.898 INFO    ] 2026-06-22 23:29:55
[2026-06-22 23:29:56,149.149 INFO    ] 2026-06-22 23:29:56
[2026-06-22 23:29:56,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:29:56,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:29:56,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:29:56,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:29:56,621.621 INFO    ] time= 22/06/2026 23:29:56
[2026-06-22 23:29:56,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:29:56,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:29:56,809.809 INFO    ] No existing commands found in stream
[2026-06-22 23:30:01,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:30:01,841.841 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-22 23:30:07,575.575 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:30:07,576.576 INFO    ] Checking for system updates...
[2026-06-22 23:30:07,597.597 INFO    ] 200
[2026-06-22 23:30:07,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:30:07,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:30:07,635.635 INFO    ] No update needed
[2026-06-22 23:30:07,638.638 INFO    ] Checking for camera pi updates...
[2026-06-22 23:30:07,671.671 INFO    ] 200
[2026-06-22 23:30:07,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:30:07,715.715 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:30:07,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:30:07,794.794 INFO    ] No camera update needed
[2026-06-22 23:30:07,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:30:07,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:30:07,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:30:07,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:30:09,852.852 INFO    ] ================================================
[2026-06-22 23:30:09,868.868 INFO    ] Launching Daemon at Mon Jun 22 23:30:09 IST 2026
[2026-06-22 23:30:09,880.880 INFO    ] ================================================
[2026-06-22 23:30:10,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:30:10
[2026-06-22 23:30:11,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:30:11,322.322 INFO    ] Initializing speech engine...
[2026-06-22 23:30:11,332.332 INFO    ] 2026-06-22 23:30:11
[2026-06-22 23:30:11,586.586 INFO    ] 2026-06-22 23:30:11
[2026-06-22 23:30:11,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:30:11,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:30:11,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:30:12,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:30:12,017.017 INFO    ] time= 22/06/2026 23:30:12
[2026-06-22 23:30:12,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:30:12,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:30:12,293.293 INFO    ] No existing commands found in stream
[2026-06-22 23:30:17,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:30:17,311.311 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-22 23:30:19,941.941 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:30:19,942.942 INFO    ] Checking for system updates...
[2026-06-22 23:30:19,963.963 INFO    ] 200
[2026-06-22 23:30:19,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:30:19,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:30:20,000.000 INFO    ] No update needed
[2026-06-22 23:30:20,001.001 INFO    ] Checking for camera pi updates...
[2026-06-22 23:30:20,022.022 INFO    ] 200
[2026-06-22 23:30:20,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:30:20,058.058 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:30:20,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:30:20,143.143 INFO    ] No camera update needed
[2026-06-22 23:30:20,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:30:20,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:30:20,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:30:20,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:30:22,200.200 INFO    ] ================================================
[2026-06-22 23:30:22,216.216 INFO    ] Launching Daemon at Mon Jun 22 23:30:22 IST 2026
[2026-06-22 23:30:22,228.228 INFO    ] ================================================
[2026-06-22 23:30:22,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:30:22
[2026-06-22 23:30:23,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:30:23,770.770 INFO    ] Initializing speech engine...
[2026-06-22 23:30:23,782.782 INFO    ] 2026-06-22 23:30:23
[2026-06-22 23:30:24,062.062 INFO    ] 2026-06-22 23:30:24
[2026-06-22 23:30:24,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:30:24,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:30:24,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:30:24,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:30:24,533.533 INFO    ] time= 22/06/2026 23:30:24
[2026-06-22 23:30:24,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:30:24,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:30:24,761.761 INFO    ] No existing commands found in stream
[2026-06-22 23:30:29,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:30:29,789.789 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-22 23:30:33,111.111 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:30:33,114.114 INFO    ] Checking for system updates...
[2026-06-22 23:30:33,151.151 INFO    ] 200
[2026-06-22 23:30:33,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:30:33,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:30:33,219.219 INFO    ] No update needed
[2026-06-22 23:30:33,223.223 INFO    ] Checking for camera pi updates...
[2026-06-22 23:30:33,262.262 INFO    ] 200
[2026-06-22 23:30:33,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:30:33,308.308 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:30:33,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:30:33,407.407 INFO    ] No camera update needed
[2026-06-22 23:30:33,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:30:33,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:30:33,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:30:33,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:30:35,466.466 INFO    ] ================================================
[2026-06-22 23:30:35,482.482 INFO    ] Launching Daemon at Mon Jun 22 23:30:35 IST 2026
[2026-06-22 23:30:35,494.494 INFO    ] ================================================
[2026-06-22 23:30:36,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:30:36
[2026-06-22 23:30:36,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:30:37,049.049 INFO    ] Initializing speech engine...
[2026-06-22 23:30:37,060.060 INFO    ] 2026-06-22 23:30:37
[2026-06-22 23:30:37,347.347 INFO    ] 2026-06-22 23:30:37
[2026-06-22 23:30:37,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:30:37,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:30:37,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:30:37,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:30:37,877.877 INFO    ] time= 22/06/2026 23:30:37
[2026-06-22 23:30:37,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:30:37,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:30:38,029.029 INFO    ] No existing commands found in stream
[2026-06-22 23:30:43,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:30:43,051.051 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-22 23:30:44,744.744 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:30:44,747.747 INFO    ] Checking for system updates...
[2026-06-22 23:30:44,785.785 INFO    ] 200
[2026-06-22 23:30:44,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:30:44,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:30:44,845.845 INFO    ] No update needed
[2026-06-22 23:30:44,848.848 INFO    ] Checking for camera pi updates...
[2026-06-22 23:30:44,884.884 INFO    ] 200
[2026-06-22 23:30:44,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:30:44,929.929 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:30:45,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:30:45,011.011 INFO    ] No camera update needed
[2026-06-22 23:30:45,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:30:45,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:30:45,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:30:45,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:30:47,068.068 INFO    ] ================================================
[2026-06-22 23:30:47,084.084 INFO    ] Launching Daemon at Mon Jun 22 23:30:47 IST 2026
[2026-06-22 23:30:47,096.096 INFO    ] ================================================
[2026-06-22 23:30:47,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:30:47
[2026-06-22 23:30:48,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:30:48,769.769 INFO    ] Initializing speech engine...
[2026-06-22 23:30:48,782.782 INFO    ] 2026-06-22 23:30:48
[2026-06-22 23:30:49,096.096 INFO    ] 2026-06-22 23:30:49
[2026-06-22 23:30:49,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:30:49,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:30:49,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:30:49,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:30:49,642.642 INFO    ] time= 22/06/2026 23:30:49
[2026-06-22 23:30:49,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:30:49,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:30:49,779.779 INFO    ] No existing commands found in stream
[2026-06-22 23:30:54,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:30:54,819.819 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-22 23:30:56,579.579 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:30:56,582.582 INFO    ] Checking for system updates...
[2026-06-22 23:30:56,619.619 INFO    ] 200
[2026-06-22 23:30:56,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:30:56,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:30:56,677.677 INFO    ] No update needed
[2026-06-22 23:30:56,679.679 INFO    ] Checking for camera pi updates...
[2026-06-22 23:30:56,713.713 INFO    ] 200
[2026-06-22 23:30:56,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:30:56,758.758 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:30:56,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:30:56,847.847 INFO    ] No camera update needed
[2026-06-22 23:30:56,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:30:56,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:30:56,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:30:56,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:30:58,902.902 INFO    ] ================================================
[2026-06-22 23:30:58,918.918 INFO    ] Launching Daemon at Mon Jun 22 23:30:58 IST 2026
[2026-06-22 23:30:58,929.929 INFO    ] ================================================
[2026-06-22 23:30:59,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:30:59
[2026-06-22 23:31:00,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:31:00,499.499 INFO    ] Initializing speech engine...
[2026-06-22 23:31:00,512.512 INFO    ] 2026-06-22 23:31:00
[2026-06-22 23:31:00,794.794 INFO    ] 2026-06-22 23:31:00
[2026-06-22 23:31:00,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:31:01,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:31:01,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:31:01,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:31:01,333.333 INFO    ] time= 22/06/2026 23:31:01
[2026-06-22 23:31:01,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:31:01,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:31:01,556.556 INFO    ] No existing commands found in stream
[2026-06-22 23:31:06,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:31:06,590.590 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-22 23:31:07,151.151 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:31:07,153.153 INFO    ] Checking for system updates...
[2026-06-22 23:31:07,174.174 INFO    ] 200
[2026-06-22 23:31:07,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:31:07,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:31:07,207.207 INFO    ] No update needed
[2026-06-22 23:31:07,208.208 INFO    ] Checking for camera pi updates...
[2026-06-22 23:31:07,228.228 INFO    ] 200
[2026-06-22 23:31:07,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:31:07,253.253 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:31:07,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:31:07,359.359 INFO    ] No camera update needed
[2026-06-22 23:31:07,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:31:07,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:31:07,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:31:07,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:31:09,415.415 INFO    ] ================================================
[2026-06-22 23:31:09,431.431 INFO    ] Launching Daemon at Mon Jun 22 23:31:09 IST 2026
[2026-06-22 23:31:09,442.442 INFO    ] ================================================
[2026-06-22 23:31:10,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:31:10
[2026-06-22 23:31:10,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:31:10,878.878 INFO    ] Initializing speech engine...
[2026-06-22 23:31:10,892.892 INFO    ] 2026-06-22 23:31:10
[2026-06-22 23:31:11,174.174 INFO    ] 2026-06-22 23:31:11
[2026-06-22 23:31:11,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:31:11,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:31:11,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:31:11,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:31:11,669.669 INFO    ] time= 22/06/2026 23:31:11
[2026-06-22 23:31:11,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:31:11,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:31:11,883.883 INFO    ] No existing commands found in stream
[2026-06-22 23:31:16,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:31:16,920.920 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-22 23:31:21,297.297 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:31:21,300.300 INFO    ] Checking for system updates...
[2026-06-22 23:31:21,341.341 INFO    ] 200
[2026-06-22 23:31:21,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:31:21,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:31:21,398.398 INFO    ] No update needed
[2026-06-22 23:31:21,401.401 INFO    ] Checking for camera pi updates...
[2026-06-22 23:31:21,435.435 INFO    ] 200
[2026-06-22 23:31:21,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:31:21,479.479 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:31:21,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:31:21,567.567 INFO    ] No camera update needed
[2026-06-22 23:31:21,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:31:21,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:31:21,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:31:21,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:31:23,622.622 INFO    ] ================================================
[2026-06-22 23:31:23,638.638 INFO    ] Launching Daemon at Mon Jun 22 23:31:23 IST 2026
[2026-06-22 23:31:23,649.649 INFO    ] ================================================
[2026-06-22 23:31:24,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:31:24
[2026-06-22 23:31:24,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:31:25,058.058 INFO    ] Initializing speech engine...
[2026-06-22 23:31:25,066.066 INFO    ] 2026-06-22 23:31:25
[2026-06-22 23:31:25,363.363 INFO    ] 2026-06-22 23:31:25
[2026-06-22 23:31:25,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:31:25,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:31:25,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:31:25,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:31:25,914.914 INFO    ] time= 22/06/2026 23:31:25
[2026-06-22 23:31:25,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:31:26,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:31:26,133.133 INFO    ] No existing commands found in stream
[2026-06-22 23:31:31,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:31:31,163.163 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-22 23:31:35,126.126 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:31:35,129.129 INFO    ] Checking for system updates...
[2026-06-22 23:31:35,168.168 INFO    ] 200
[2026-06-22 23:31:35,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:31:35,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:31:35,230.230 INFO    ] No update needed
[2026-06-22 23:31:35,232.232 INFO    ] Checking for camera pi updates...
[2026-06-22 23:31:35,267.267 INFO    ] 200
[2026-06-22 23:31:35,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:31:35,307.307 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:31:35,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:31:35,362.362 INFO    ] No camera update needed
[2026-06-22 23:31:35,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:31:35,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:31:35,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:31:35,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:31:37,410.410 INFO    ] ================================================
[2026-06-22 23:31:37,425.425 INFO    ] Launching Daemon at Mon Jun 22 23:31:37 IST 2026
[2026-06-22 23:31:37,437.437 INFO    ] ================================================
[2026-06-22 23:31:38,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:31:38
[2026-06-22 23:31:38,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:31:38,801.801 INFO    ] Initializing speech engine...
[2026-06-22 23:31:38,812.812 INFO    ] 2026-06-22 23:31:38
[2026-06-22 23:31:39,064.064 INFO    ] 2026-06-22 23:31:39
[2026-06-22 23:31:39,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:31:39,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:31:39,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:31:39,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:31:39,505.505 INFO    ] time= 22/06/2026 23:31:39
[2026-06-22 23:31:39,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:31:39,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:31:39,698.698 INFO    ] No existing commands found in stream
[2026-06-22 23:31:44,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:31:44,738.738 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-22 23:31:46,766.766 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:31:46,769.769 INFO    ] Checking for system updates...
[2026-06-22 23:31:46,808.808 INFO    ] 200
[2026-06-22 23:31:46,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:31:46,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:31:46,867.867 INFO    ] No update needed
[2026-06-22 23:31:46,869.869 INFO    ] Checking for camera pi updates...
[2026-06-22 23:31:46,903.903 INFO    ] 200
[2026-06-22 23:31:46,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:31:46,947.947 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:31:47,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:31:47,127.127 INFO    ] No camera update needed
[2026-06-22 23:31:47,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:31:47,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:31:47,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:31:47,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:31:49,185.185 INFO    ] ================================================
[2026-06-22 23:31:49,200.200 INFO    ] Launching Daemon at Mon Jun 22 23:31:49 IST 2026
[2026-06-22 23:31:49,211.211 INFO    ] ================================================
[2026-06-22 23:31:49,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:31:49
[2026-06-22 23:31:50,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:31:50,750.750 INFO    ] Initializing speech engine...
[2026-06-22 23:31:50,760.760 INFO    ] 2026-06-22 23:31:50
[2026-06-22 23:31:51,041.041 INFO    ] 2026-06-22 23:31:51
[2026-06-22 23:31:51,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:31:51,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:31:51,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:31:51,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:31:51,573.573 INFO    ] time= 22/06/2026 23:31:51
[2026-06-22 23:31:51,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:31:51,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:31:51,832.832 INFO    ] No existing commands found in stream
[2026-06-22 23:31:56,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:31:56,872.872 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-22 23:32:00,888.888 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:32:00,891.891 INFO    ] Checking for system updates...
[2026-06-22 23:32:00,928.928 INFO    ] 200
[2026-06-22 23:32:00,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:32:00,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:32:00,996.996 INFO    ] No update needed
[2026-06-22 23:32:00,998.998 INFO    ] Checking for camera pi updates...
[2026-06-22 23:32:01,034.034 INFO    ] 200
[2026-06-22 23:32:01,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:32:01,080.080 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:32:01,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:32:01,167.167 INFO    ] No camera update needed
[2026-06-22 23:32:01,169.169 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:32:01,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:32:01,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:32:01,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:32:03,228.228 INFO    ] ================================================
[2026-06-22 23:32:03,243.243 INFO    ] Launching Daemon at Mon Jun 22 23:32:03 IST 2026
[2026-06-22 23:32:03,256.256 INFO    ] ================================================
[2026-06-22 23:32:03,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:32:03
[2026-06-22 23:32:04,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:32:04,743.743 INFO    ] Initializing speech engine...
[2026-06-22 23:32:04,751.751 INFO    ] 2026-06-22 23:32:04
[2026-06-22 23:32:05,012.012 INFO    ] 2026-06-22 23:32:05
[2026-06-22 23:32:05,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:32:05,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:32:05,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:32:05,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:32:05,558.558 INFO    ] time= 22/06/2026 23:32:05
[2026-06-22 23:32:05,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:32:05,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:32:05,702.702 INFO    ] No existing commands found in stream
[2026-06-22 23:32:10,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:32:10,728.728 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-22 23:32:14,621.621 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:32:14,623.623 INFO    ] Checking for system updates...
[2026-06-22 23:32:14,663.663 INFO    ] 200
[2026-06-22 23:32:14,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:32:14,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:32:14,722.722 INFO    ] No update needed
[2026-06-22 23:32:14,726.726 INFO    ] Checking for camera pi updates...
[2026-06-22 23:32:14,760.760 INFO    ] 200
[2026-06-22 23:32:14,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:32:14,810.810 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:32:14,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:32:14,899.899 INFO    ] No camera update needed
[2026-06-22 23:32:14,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:32:14,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:32:14,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:32:14,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:32:16,958.958 INFO    ] ================================================
[2026-06-22 23:32:16,974.974 INFO    ] Launching Daemon at Mon Jun 22 23:32:16 IST 2026
[2026-06-22 23:32:16,985.985 INFO    ] ================================================
[2026-06-22 23:32:17,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:32:17
[2026-06-22 23:32:18,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:32:18,483.483 INFO    ] Initializing speech engine...
[2026-06-22 23:32:18,493.493 INFO    ] 2026-06-22 23:32:18
[2026-06-22 23:32:18,762.762 INFO    ] 2026-06-22 23:32:18
[2026-06-22 23:32:18,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:32:19,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:32:19,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:32:19,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:32:19,898.898 INFO    ] time= 22/06/2026 23:32:19
[2026-06-22 23:32:19,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:32:19,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:32:20,014.014 INFO    ] No existing commands found in stream
[2026-06-22 23:32:25,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:32:25,029.029 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-22 23:32:27,283.283 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:32:27,286.286 INFO    ] Checking for system updates...
[2026-06-22 23:32:27,323.323 INFO    ] 200
[2026-06-22 23:32:27,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:32:27,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:32:27,382.382 INFO    ] No update needed
[2026-06-22 23:32:27,385.385 INFO    ] Checking for camera pi updates...
[2026-06-22 23:32:27,420.420 INFO    ] 200
[2026-06-22 23:32:27,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:32:27,464.464 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:32:27,550.550 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:32:27,553.553 INFO    ] No camera update needed
[2026-06-22 23:32:27,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:32:27,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:32:27,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:32:27,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:32:29,613.613 INFO    ] ================================================
[2026-06-22 23:32:29,628.628 INFO    ] Launching Daemon at Mon Jun 22 23:32:29 IST 2026
[2026-06-22 23:32:29,639.639 INFO    ] ================================================
[2026-06-22 23:32:30,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:32:30
[2026-06-22 23:32:30,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:32:31,072.072 INFO    ] Initializing speech engine...
[2026-06-22 23:32:31,090.090 INFO    ] 2026-06-22 23:32:31
[2026-06-22 23:32:31,351.351 INFO    ] 2026-06-22 23:32:31
[2026-06-22 23:32:31,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:32:31,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:32:31,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:32:31,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:32:31,832.832 INFO    ] time= 22/06/2026 23:32:31
[2026-06-22 23:32:31,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:32:31,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:32:32,076.076 INFO    ] No existing commands found in stream
[2026-06-22 23:32:37,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:32:37,104.104 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-22 23:32:39,582.582 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:32:39,584.584 INFO    ] Checking for system updates...
[2026-06-22 23:32:39,621.621 INFO    ] 200
[2026-06-22 23:32:39,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:32:39,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:32:39,679.679 INFO    ] No update needed
[2026-06-22 23:32:39,681.681 INFO    ] Checking for camera pi updates...
[2026-06-22 23:32:39,715.715 INFO    ] 200
[2026-06-22 23:32:39,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:32:39,762.762 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:32:39,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:32:39,818.818 INFO    ] No camera update needed
[2026-06-22 23:32:39,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:32:39,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:32:39,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:32:39,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:32:41,876.876 INFO    ] ================================================
[2026-06-22 23:32:41,891.891 INFO    ] Launching Daemon at Mon Jun 22 23:32:41 IST 2026
[2026-06-22 23:32:41,902.902 INFO    ] ================================================
[2026-06-22 23:32:42,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:32:42
[2026-06-22 23:32:43,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:32:43,321.321 INFO    ] Initializing speech engine...
[2026-06-22 23:32:43,340.340 INFO    ] 2026-06-22 23:32:43
[2026-06-22 23:32:43,592.592 INFO    ] 2026-06-22 23:32:43
[2026-06-22 23:32:43,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:32:43,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:32:43,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:32:43,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:32:43,969.969 INFO    ] time= 22/06/2026 23:32:43
[2026-06-22 23:32:43,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:32:43,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:32:44,093.093 INFO    ] No existing commands found in stream
[2026-06-22 23:32:49,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:32:49,131.131 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-22 23:32:52,270.270 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:32:52,273.273 INFO    ] Checking for system updates...
[2026-06-22 23:32:52,309.309 INFO    ] 200
[2026-06-22 23:32:52,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:32:52,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:32:52,374.374 INFO    ] No update needed
[2026-06-22 23:32:52,376.376 INFO    ] Checking for camera pi updates...
[2026-06-22 23:32:52,411.411 INFO    ] 200
[2026-06-22 23:32:52,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:32:52,459.459 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:32:52,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:32:52,566.566 INFO    ] No camera update needed
[2026-06-22 23:32:52,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:32:52,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:32:52,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:32:52,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:32:54,623.623 INFO    ] ================================================
[2026-06-22 23:32:54,638.638 INFO    ] Launching Daemon at Mon Jun 22 23:32:54 IST 2026
[2026-06-22 23:32:54,649.649 INFO    ] ================================================
[2026-06-22 23:32:55,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:32:55
[2026-06-22 23:32:55,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:32:56,121.121 INFO    ] Initializing speech engine...
[2026-06-22 23:32:56,129.129 INFO    ] 2026-06-22 23:32:56
[2026-06-22 23:32:56,413.413 INFO    ] 2026-06-22 23:32:56
[2026-06-22 23:32:56,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:32:56,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:32:56,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:32:57,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:32:57,068.068 INFO    ] time= 22/06/2026 23:32:57
[2026-06-22 23:32:57,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:32:57,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:32:57,222.222 INFO    ] No existing commands found in stream
[2026-06-22 23:33:02,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:33:02,240.240 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-22 23:33:04,532.532 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:33:04,535.535 INFO    ] Checking for system updates...
[2026-06-22 23:33:04,572.572 INFO    ] 200
[2026-06-22 23:33:04,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:33:04,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:33:04,632.632 INFO    ] No update needed
[2026-06-22 23:33:04,635.635 INFO    ] Checking for camera pi updates...
[2026-06-22 23:33:04,668.668 INFO    ] 200
[2026-06-22 23:33:04,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:33:04,716.716 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:33:04,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:33:04,797.797 INFO    ] No camera update needed
[2026-06-22 23:33:04,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:33:04,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:33:04,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:33:04,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:33:06,854.854 INFO    ] ================================================
[2026-06-22 23:33:06,870.870 INFO    ] Launching Daemon at Mon Jun 22 23:33:06 IST 2026
[2026-06-22 23:33:06,881.881 INFO    ] ================================================
[2026-06-22 23:33:07,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:33:07
[2026-06-22 23:33:08,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:33:08,326.326 INFO    ] Initializing speech engine...
[2026-06-22 23:33:08,332.332 INFO    ] 2026-06-22 23:33:08
[2026-06-22 23:33:08,625.625 INFO    ] 2026-06-22 23:33:08
[2026-06-22 23:33:08,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:33:08,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:33:08,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:33:09,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:33:09,033.033 INFO    ] time= 22/06/2026 23:33:09
[2026-06-22 23:33:09,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:33:09,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:33:09,213.213 INFO    ] No existing commands found in stream
[2026-06-22 23:33:14,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:33:14,251.251 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-22 23:33:20,067.067 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:33:20,070.070 INFO    ] Checking for system updates...
[2026-06-22 23:33:20,108.108 INFO    ] 200
[2026-06-22 23:33:20,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:33:20,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:33:20,168.168 INFO    ] No update needed
[2026-06-22 23:33:20,170.170 INFO    ] Checking for camera pi updates...
[2026-06-22 23:33:20,205.205 INFO    ] 200
[2026-06-22 23:33:20,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:33:20,250.250 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:33:20,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:33:20,334.334 INFO    ] No camera update needed
[2026-06-22 23:33:20,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:33:20,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:33:20,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:33:20,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:33:22,395.395 INFO    ] ================================================
[2026-06-22 23:33:22,411.411 INFO    ] Launching Daemon at Mon Jun 22 23:33:22 IST 2026
[2026-06-22 23:33:22,422.422 INFO    ] ================================================
[2026-06-22 23:33:23,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:33:23
[2026-06-22 23:33:23,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:33:24,029.029 INFO    ] Initializing speech engine...
[2026-06-22 23:33:24,039.039 INFO    ] 2026-06-22 23:33:24
[2026-06-22 23:33:24,330.330 INFO    ] 2026-06-22 23:33:24
[2026-06-22 23:33:24,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:33:24,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:33:24,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:33:24,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:33:24,824.824 INFO    ] time= 22/06/2026 23:33:24
[2026-06-22 23:33:24,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:33:24,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:33:25,039.039 INFO    ] No existing commands found in stream
[2026-06-22 23:33:30,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:33:30,062.062 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-22 23:33:31,285.285 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:33:31,288.288 INFO    ] Checking for system updates...
[2026-06-22 23:33:31,329.329 INFO    ] 200
[2026-06-22 23:33:31,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:33:31,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:33:31,390.390 INFO    ] No update needed
[2026-06-22 23:33:31,393.393 INFO    ] Checking for camera pi updates...
[2026-06-22 23:33:31,430.430 INFO    ] 200
[2026-06-22 23:33:31,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:33:31,478.478 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:33:31,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:33:31,573.573 INFO    ] No camera update needed
[2026-06-22 23:33:31,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:33:31,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:33:31,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:33:31,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:33:33,628.628 INFO    ] ================================================
[2026-06-22 23:33:33,643.643 INFO    ] Launching Daemon at Mon Jun 22 23:33:33 IST 2026
[2026-06-22 23:33:33,654.654 INFO    ] ================================================
[2026-06-22 23:33:34,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:33:34
[2026-06-22 23:33:34,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:33:35,071.071 INFO    ] Initializing speech engine...
[2026-06-22 23:33:35,078.078 INFO    ] 2026-06-22 23:33:35
[2026-06-22 23:33:35,370.370 INFO    ] 2026-06-22 23:33:35
[2026-06-22 23:33:35,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:33:35,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:33:35,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:33:35,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:33:35,763.763 INFO    ] time= 22/06/2026 23:33:35
[2026-06-22 23:33:35,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:33:35,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:33:35,869.869 INFO    ] No existing commands found in stream
[2026-06-22 23:33:40,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:33:40,884.884 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-22 23:33:42,235.235 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:33:42,238.238 INFO    ] Checking for system updates...
[2026-06-22 23:33:42,274.274 INFO    ] 200
[2026-06-22 23:33:42,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:33:42,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:33:42,332.332 INFO    ] No update needed
[2026-06-22 23:33:42,339.339 INFO    ] Checking for camera pi updates...
[2026-06-22 23:33:42,373.373 INFO    ] 200
[2026-06-22 23:33:42,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:33:42,417.417 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:33:42,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:33:42,522.522 INFO    ] No camera update needed
[2026-06-22 23:33:42,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:33:42,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:33:42,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:33:42,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:33:44,577.577 INFO    ] ================================================
[2026-06-22 23:33:44,592.592 INFO    ] Launching Daemon at Mon Jun 22 23:33:44 IST 2026
[2026-06-22 23:33:44,603.603 INFO    ] ================================================
[2026-06-22 23:33:45,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:33:45
[2026-06-22 23:33:45,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:33:45,946.946 INFO    ] Initializing speech engine...
[2026-06-22 23:33:45,955.955 INFO    ] 2026-06-22 23:33:45
[2026-06-22 23:33:46,205.205 INFO    ] 2026-06-22 23:33:46
[2026-06-22 23:33:46,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:33:46,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:33:46,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:33:46,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:33:46,654.654 INFO    ] time= 22/06/2026 23:33:46
[2026-06-22 23:33:46,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:33:46,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:33:46,838.838 INFO    ] No existing commands found in stream
[2026-06-22 23:33:51,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:33:51,852.852 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-22 23:33:55,783.783 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:33:55,786.786 INFO    ] Checking for system updates...
[2026-06-22 23:33:55,823.823 INFO    ] 200
[2026-06-22 23:33:55,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:33:55,878.878 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:33:55,881.881 INFO    ] No update needed
[2026-06-22 23:33:55,883.883 INFO    ] Checking for camera pi updates...
[2026-06-22 23:33:55,917.917 INFO    ] 200
[2026-06-22 23:33:55,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:33:55,963.963 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:33:56,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:33:56,145.145 INFO    ] No camera update needed
[2026-06-22 23:33:56,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:33:56,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:33:56,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:33:56,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:33:58,202.202 INFO    ] ================================================
[2026-06-22 23:33:58,217.217 INFO    ] Launching Daemon at Mon Jun 22 23:33:58 IST 2026
[2026-06-22 23:33:58,228.228 INFO    ] ================================================
[2026-06-22 23:33:58,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:33:58
[2026-06-22 23:33:59,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:33:59,584.584 INFO    ] Initializing speech engine...
[2026-06-22 23:33:59,597.597 INFO    ] 2026-06-22 23:33:59
[2026-06-22 23:33:59,887.887 INFO    ] 2026-06-22 23:33:59
[2026-06-22 23:33:59,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:34:00,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:34:00,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:34:00,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:34:00,281.281 INFO    ] time= 22/06/2026 23:34:00
[2026-06-22 23:34:00,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:34:00,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:34:00,394.394 INFO    ] No existing commands found in stream
[2026-06-22 23:34:05,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:34:05,410.410 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-22 23:34:08,173.173 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:34:08,176.176 INFO    ] Checking for system updates...
[2026-06-22 23:34:08,214.214 INFO    ] 200
[2026-06-22 23:34:08,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:34:08,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:34:08,286.286 INFO    ] No update needed
[2026-06-22 23:34:08,289.289 INFO    ] Checking for camera pi updates...
[2026-06-22 23:34:08,329.329 INFO    ] 200
[2026-06-22 23:34:08,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:34:08,382.382 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:34:08,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:34:08,462.462 INFO    ] No camera update needed
[2026-06-22 23:34:08,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:34:08,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:34:08,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:34:08,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:34:10,522.522 INFO    ] ================================================
[2026-06-22 23:34:10,539.539 INFO    ] Launching Daemon at Mon Jun 22 23:34:10 IST 2026
[2026-06-22 23:34:10,551.551 INFO    ] ================================================
[2026-06-22 23:34:11,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:34:11
[2026-06-22 23:34:11,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:34:12,257.257 INFO    ] Initializing speech engine...
[2026-06-22 23:34:12,269.269 INFO    ] 2026-06-22 23:34:12
[2026-06-22 23:34:12,578.578 INFO    ] 2026-06-22 23:34:12
[2026-06-22 23:34:12,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:34:12,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:34:12,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:34:13,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:34:13,095.095 INFO    ] time= 22/06/2026 23:34:13
[2026-06-22 23:34:13,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:34:13,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:34:13,262.262 INFO    ] No existing commands found in stream
[2026-06-22 23:34:18,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:34:18,274.274 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-22 23:34:20,786.786 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:34:20,789.789 INFO    ] Checking for system updates...
[2026-06-22 23:34:20,825.825 INFO    ] 200
[2026-06-22 23:34:20,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:34:20,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:34:20,884.884 INFO    ] No update needed
[2026-06-22 23:34:20,886.886 INFO    ] Checking for camera pi updates...
[2026-06-22 23:34:20,920.920 INFO    ] 200
[2026-06-22 23:34:20,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:34:20,964.964 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:34:21,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:34:21,046.046 INFO    ] No camera update needed
[2026-06-22 23:34:21,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:34:21,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:34:21,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:34:21,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:34:23,102.102 INFO    ] ================================================
[2026-06-22 23:34:23,117.117 INFO    ] Launching Daemon at Mon Jun 22 23:34:23 IST 2026
[2026-06-22 23:34:23,128.128 INFO    ] ================================================
[2026-06-22 23:34:23,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:34:23
[2026-06-22 23:34:24,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:34:24,632.632 INFO    ] Initializing speech engine...
[2026-06-22 23:34:24,641.641 INFO    ] 2026-06-22 23:34:24
[2026-06-22 23:34:24,930.930 INFO    ] 2026-06-22 23:34:24
[2026-06-22 23:34:24,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:34:25,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:34:25,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:34:25,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:34:25,477.477 INFO    ] time= 22/06/2026 23:34:25
[2026-06-22 23:34:25,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:34:25,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:34:25,645.645 INFO    ] No existing commands found in stream
[2026-06-22 23:34:30,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:34:30,662.662 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-22 23:34:33,022.022 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:34:33,025.025 INFO    ] Checking for system updates...
[2026-06-22 23:34:33,062.062 INFO    ] 200
[2026-06-22 23:34:33,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:34:33,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:34:33,121.121 INFO    ] No update needed
[2026-06-22 23:34:33,124.124 INFO    ] Checking for camera pi updates...
[2026-06-22 23:34:33,158.158 INFO    ] 200
[2026-06-22 23:34:33,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:34:33,207.207 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:34:33,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:34:33,298.298 INFO    ] No camera update needed
[2026-06-22 23:34:33,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:34:33,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:34:33,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:34:33,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:34:35,357.357 INFO    ] ================================================
[2026-06-22 23:34:35,372.372 INFO    ] Launching Daemon at Mon Jun 22 23:34:35 IST 2026
[2026-06-22 23:34:35,383.383 INFO    ] ================================================
[2026-06-22 23:34:35,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:34:35
[2026-06-22 23:34:36,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:34:36,806.806 INFO    ] Initializing speech engine...
[2026-06-22 23:34:36,814.814 INFO    ] 2026-06-22 23:34:36
[2026-06-22 23:34:37,089.089 INFO    ] 2026-06-22 23:34:37
[2026-06-22 23:34:37,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:34:37,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:34:37,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:34:37,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:34:37,469.469 INFO    ] time= 22/06/2026 23:34:37
[2026-06-22 23:34:37,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:34:37,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:34:37,640.640 INFO    ] No existing commands found in stream
[2026-06-22 23:34:42,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:34:42,668.668 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-22 23:34:45,693.693 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:34:45,696.696 INFO    ] Checking for system updates...
[2026-06-22 23:34:45,733.733 INFO    ] 200
[2026-06-22 23:34:45,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:34:45,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:34:45,796.796 INFO    ] No update needed
[2026-06-22 23:34:45,799.799 INFO    ] Checking for camera pi updates...
[2026-06-22 23:34:45,839.839 INFO    ] 200
[2026-06-22 23:34:45,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:34:45,887.887 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:34:45,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:34:45,983.983 INFO    ] No camera update needed
[2026-06-22 23:34:45,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:34:45,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:34:45,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:34:45,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:34:48,040.040 INFO    ] ================================================
[2026-06-22 23:34:48,056.056 INFO    ] Launching Daemon at Mon Jun 22 23:34:48 IST 2026
[2026-06-22 23:34:48,067.067 INFO    ] ================================================
[2026-06-22 23:34:48,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:34:48
[2026-06-22 23:34:49,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:34:49,593.593 INFO    ] Initializing speech engine...
[2026-06-22 23:34:49,614.614 INFO    ] 2026-06-22 23:34:49
[2026-06-22 23:34:49,877.877 INFO    ] 2026-06-22 23:34:49
[2026-06-22 23:34:49,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:34:50,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:34:50,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:34:50,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:34:50,246.246 INFO    ] time= 22/06/2026 23:34:50
[2026-06-22 23:34:50,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:34:50,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:34:50,368.368 INFO    ] No existing commands found in stream
[2026-06-22 23:34:55,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:34:55,383.383 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-22 23:34:58,686.686 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:34:58,689.689 INFO    ] Checking for system updates...
[2026-06-22 23:34:58,725.725 INFO    ] 200
[2026-06-22 23:34:58,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:34:58,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:34:58,784.784 INFO    ] No update needed
[2026-06-22 23:34:58,787.787 INFO    ] Checking for camera pi updates...
[2026-06-22 23:34:58,821.821 INFO    ] 200
[2026-06-22 23:34:58,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:34:58,865.865 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:34:58,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:34:58,970.970 INFO    ] No camera update needed
[2026-06-22 23:34:58,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:34:58,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:34:58,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:34:58,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:35:01,025.025 INFO    ] ================================================
[2026-06-22 23:35:01,041.041 INFO    ] Launching Daemon at Mon Jun 22 23:35:01 IST 2026
[2026-06-22 23:35:01,052.052 INFO    ] ================================================
[2026-06-22 23:35:01,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:35:01
[2026-06-22 23:35:02,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:35:03,015.015 INFO    ] Initializing speech engine...
[2026-06-22 23:35:03,027.027 INFO    ] 2026-06-22 23:35:03
[2026-06-22 23:35:03,352.352 INFO    ] 2026-06-22 23:35:03
[2026-06-22 23:35:03,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:35:03,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:35:03,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:35:03,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:35:03,750.750 INFO    ] time= 22/06/2026 23:35:03
[2026-06-22 23:35:03,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:35:03,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:35:03,943.943 INFO    ] No existing commands found in stream
[2026-06-22 23:35:08,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:35:08,961.961 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-22 23:35:09,780.780 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:35:09,783.783 INFO    ] Checking for system updates...
[2026-06-22 23:35:09,820.820 INFO    ] 200
[2026-06-22 23:35:09,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:35:09,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:35:09,884.884 INFO    ] No update needed
[2026-06-22 23:35:09,886.886 INFO    ] Checking for camera pi updates...
[2026-06-22 23:35:09,920.920 INFO    ] 200
[2026-06-22 23:35:09,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:35:09,966.966 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:35:10,067.067 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:35:10,068.068 INFO    ] No camera update needed
[2026-06-22 23:35:10,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:35:10,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:35:10,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:35:10,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:35:12,115.115 INFO    ] ================================================
[2026-06-22 23:35:12,131.131 INFO    ] Launching Daemon at Mon Jun 22 23:35:12 IST 2026
[2026-06-22 23:35:12,142.142 INFO    ] ================================================
[2026-06-22 23:35:12,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:35:12
[2026-06-22 23:35:13,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:35:13,468.468 INFO    ] Initializing speech engine...
[2026-06-22 23:35:13,487.487 INFO    ] 2026-06-22 23:35:13
[2026-06-22 23:35:13,739.739 INFO    ] 2026-06-22 23:35:13
[2026-06-22 23:35:13,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:35:13,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:35:13,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:35:14,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:35:14,118.118 INFO    ] time= 22/06/2026 23:35:14
[2026-06-22 23:35:14,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:35:14,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:35:14,316.316 INFO    ] No existing commands found in stream
[2026-06-22 23:35:19,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:35:19,329.329 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-22 23:35:21,159.159 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:35:21,162.162 INFO    ] Checking for system updates...
[2026-06-22 23:35:21,198.198 INFO    ] 200
[2026-06-22 23:35:21,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:35:21,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:35:21,255.255 INFO    ] No update needed
[2026-06-22 23:35:21,258.258 INFO    ] Checking for camera pi updates...
[2026-06-22 23:35:21,294.294 INFO    ] 200
[2026-06-22 23:35:21,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:35:21,337.337 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:35:21,450.450 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:35:21,452.452 INFO    ] No camera update needed
[2026-06-22 23:35:21,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:35:21,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:35:21,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:35:21,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:35:23,510.510 INFO    ] ================================================
[2026-06-22 23:35:23,526.526 INFO    ] Launching Daemon at Mon Jun 22 23:35:23 IST 2026
[2026-06-22 23:35:23,537.537 INFO    ] ================================================
[2026-06-22 23:35:24,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:35:24
[2026-06-22 23:35:24,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:35:24,907.907 INFO    ] Initializing speech engine...
[2026-06-22 23:35:24,916.916 INFO    ] 2026-06-22 23:35:24
[2026-06-22 23:35:25,169.169 INFO    ] 2026-06-22 23:35:25
[2026-06-22 23:35:25,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:35:25,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:35:25,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:35:25,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:35:25,638.638 INFO    ] time= 22/06/2026 23:35:25
[2026-06-22 23:35:25,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:35:25,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:35:25,902.902 INFO    ] No existing commands found in stream
[2026-06-22 23:35:30,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:35:30,918.918 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-22 23:35:35,366.366 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:35:35,367.367 INFO    ] Checking for system updates...
[2026-06-22 23:35:35,388.388 INFO    ] 200
[2026-06-22 23:35:35,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:35:35,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:35:35,421.421 INFO    ] No update needed
[2026-06-22 23:35:35,422.422 INFO    ] Checking for camera pi updates...
[2026-06-22 23:35:35,445.445 INFO    ] 200
[2026-06-22 23:35:35,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:35:35,488.488 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:35:35,575.575 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:35:35,578.578 INFO    ] No camera update needed
[2026-06-22 23:35:35,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:35:35,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:35:35,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:35:35,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:35:37,636.636 INFO    ] ================================================
[2026-06-22 23:35:37,652.652 INFO    ] Launching Daemon at Mon Jun 22 23:35:37 IST 2026
[2026-06-22 23:35:37,663.663 INFO    ] ================================================
[2026-06-22 23:35:38,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:35:38
[2026-06-22 23:35:38,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:35:38,995.995 INFO    ] Initializing speech engine...
[2026-06-22 23:35:39,020.020 INFO    ] 2026-06-22 23:35:39
[2026-06-22 23:35:39,288.288 INFO    ] 2026-06-22 23:35:39
[2026-06-22 23:35:39,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:35:39,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:35:39,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:35:39,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:35:39,694.694 INFO    ] time= 22/06/2026 23:35:39
[2026-06-22 23:35:39,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:35:39,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:35:39,783.783 INFO    ] No existing commands found in stream
[2026-06-22 23:35:44,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:35:44,816.816 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-22 23:35:50,405.405 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:35:50,408.408 INFO    ] Checking for system updates...
[2026-06-22 23:35:50,444.444 INFO    ] 200
[2026-06-22 23:35:50,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:35:50,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:35:50,502.502 INFO    ] No update needed
[2026-06-22 23:35:50,504.504 INFO    ] Checking for camera pi updates...
[2026-06-22 23:35:50,540.540 INFO    ] 200
[2026-06-22 23:35:50,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:35:50,583.583 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:35:50,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:35:50,669.669 INFO    ] No camera update needed
[2026-06-22 23:35:50,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:35:50,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:35:50,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:35:50,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:35:52,724.724 INFO    ] ================================================
[2026-06-22 23:35:52,740.740 INFO    ] Launching Daemon at Mon Jun 22 23:35:52 IST 2026
[2026-06-22 23:35:52,751.751 INFO    ] ================================================
[2026-06-22 23:35:53,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:35:53
[2026-06-22 23:35:53,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:35:54,237.237 INFO    ] Initializing speech engine...
[2026-06-22 23:35:54,246.246 INFO    ] 2026-06-22 23:35:54
[2026-06-22 23:35:54,521.521 INFO    ] 2026-06-22 23:35:54
[2026-06-22 23:35:54,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:35:54,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:35:54,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:35:55,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:35:55,071.071 INFO    ] time= 22/06/2026 23:35:55
[2026-06-22 23:35:55,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:35:55,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:35:55,177.177 INFO    ] No existing commands found in stream
[2026-06-22 23:36:00,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:36:00,195.195 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-22 23:36:02,747.747 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:36:02,750.750 INFO    ] Checking for system updates...
[2026-06-22 23:36:02,800.800 INFO    ] 200
[2026-06-22 23:36:02,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:36:02,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:36:02,874.874 INFO    ] No update needed
[2026-06-22 23:36:02,877.877 INFO    ] Checking for camera pi updates...
[2026-06-22 23:36:02,915.915 INFO    ] 200
[2026-06-22 23:36:02,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:36:02,968.968 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:36:03,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:36:03,079.079 INFO    ] No camera update needed
[2026-06-22 23:36:03,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:36:03,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:36:03,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:36:03,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:36:05,150.150 INFO    ] ================================================
[2026-06-22 23:36:05,166.166 INFO    ] Launching Daemon at Mon Jun 22 23:36:05 IST 2026
[2026-06-22 23:36:05,177.177 INFO    ] ================================================
[2026-06-22 23:36:05,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:36:05
[2026-06-22 23:36:06,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:36:06,657.657 INFO    ] Initializing speech engine...
[2026-06-22 23:36:06,671.671 INFO    ] 2026-06-22 23:36:06
[2026-06-22 23:36:06,959.959 INFO    ] 2026-06-22 23:36:06
[2026-06-22 23:36:07,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:36:07,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:36:07,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:36:07,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:36:07,487.487 INFO    ] time= 22/06/2026 23:36:07
[2026-06-22 23:36:07,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:36:07,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:36:07,714.714 INFO    ] No existing commands found in stream
[2026-06-22 23:36:12,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:36:12,749.749 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-22 23:36:17,053.053 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:36:17,070.070 INFO    ] Checking for system updates...
[2026-06-22 23:36:17,107.107 INFO    ] 200
[2026-06-22 23:36:17,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:36:17,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:36:17,166.166 INFO    ] No update needed
[2026-06-22 23:36:17,169.169 INFO    ] Checking for camera pi updates...
[2026-06-22 23:36:17,206.206 INFO    ] 200
[2026-06-22 23:36:17,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:36:17,250.250 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:36:17,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:36:17,330.330 INFO    ] No camera update needed
[2026-06-22 23:36:17,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:36:17,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:36:17,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:36:17,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:36:19,386.386 INFO    ] ================================================
[2026-06-22 23:36:19,402.402 INFO    ] Launching Daemon at Mon Jun 22 23:36:19 IST 2026
[2026-06-22 23:36:19,412.412 INFO    ] ================================================
[2026-06-22 23:36:19,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:36:19
[2026-06-22 23:36:20,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:36:20,784.784 INFO    ] Initializing speech engine...
[2026-06-22 23:36:20,794.794 INFO    ] 2026-06-22 23:36:20
[2026-06-22 23:36:21,055.055 INFO    ] 2026-06-22 23:36:21
[2026-06-22 23:36:21,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:36:21,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:36:21,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:36:21,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:36:21,517.517 INFO    ] time= 22/06/2026 23:36:21
[2026-06-22 23:36:21,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:36:21,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:36:21,743.743 INFO    ] No existing commands found in stream
[2026-06-22 23:36:26,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:36:26,769.769 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-22 23:36:27,752.752 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:36:27,754.754 INFO    ] Checking for system updates...
[2026-06-22 23:36:27,791.791 INFO    ] 200
[2026-06-22 23:36:27,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:36:27,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:36:27,852.852 INFO    ] No update needed
[2026-06-22 23:36:27,854.854 INFO    ] Checking for camera pi updates...
[2026-06-22 23:36:27,888.888 INFO    ] 200
[2026-06-22 23:36:27,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:36:27,935.935 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:36:28,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:36:28,017.017 INFO    ] No camera update needed
[2026-06-22 23:36:28,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:36:28,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:36:28,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:36:28,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:36:30,073.073 INFO    ] ================================================
[2026-06-22 23:36:30,088.088 INFO    ] Launching Daemon at Mon Jun 22 23:36:30 IST 2026
[2026-06-22 23:36:30,099.099 INFO    ] ================================================
[2026-06-22 23:36:30,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:36:30
[2026-06-22 23:36:31,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:36:31,433.433 INFO    ] Initializing speech engine...
[2026-06-22 23:36:31,442.442 INFO    ] 2026-06-22 23:36:31
[2026-06-22 23:36:31,689.689 INFO    ] 2026-06-22 23:36:31
[2026-06-22 23:36:31,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:36:31,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:36:32,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:36:32,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:36:32,288.288 INFO    ] time= 22/06/2026 23:36:32
[2026-06-22 23:36:32,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:36:32,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:36:32,458.458 INFO    ] No existing commands found in stream
[2026-06-22 23:36:37,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:36:37,480.480 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-22 23:36:41,413.413 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:36:41,416.416 INFO    ] Checking for system updates...
[2026-06-22 23:36:41,453.453 INFO    ] 200
[2026-06-22 23:36:41,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:36:41,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:36:41,512.512 INFO    ] No update needed
[2026-06-22 23:36:41,515.515 INFO    ] Checking for camera pi updates...
[2026-06-22 23:36:41,552.552 INFO    ] 200
[2026-06-22 23:36:41,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:36:41,596.596 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:36:41,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:36:41,688.688 INFO    ] No camera update needed
[2026-06-22 23:36:41,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:36:41,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:36:41,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:36:41,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:36:43,745.745 INFO    ] ================================================
[2026-06-22 23:36:43,760.760 INFO    ] Launching Daemon at Mon Jun 22 23:36:43 IST 2026
[2026-06-22 23:36:43,771.771 INFO    ] ================================================
[2026-06-22 23:36:44,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:36:44
[2026-06-22 23:36:44,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:36:45,098.098 INFO    ] Initializing speech engine...
[2026-06-22 23:36:45,113.113 INFO    ] 2026-06-22 23:36:45
[2026-06-22 23:36:45,397.397 INFO    ] 2026-06-22 23:36:45
[2026-06-22 23:36:45,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:36:45,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:36:45,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:36:45,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:36:45,812.812 INFO    ] time= 22/06/2026 23:36:45
[2026-06-22 23:36:45,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:36:45,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:36:46,013.013 INFO    ] No existing commands found in stream
[2026-06-22 23:36:51,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:36:51,041.041 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-22 23:36:52,539.539 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:36:52,542.542 INFO    ] Checking for system updates...
[2026-06-22 23:36:52,578.578 INFO    ] 200
[2026-06-22 23:36:52,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:36:52,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:36:52,642.642 INFO    ] No update needed
[2026-06-22 23:36:52,644.644 INFO    ] Checking for camera pi updates...
[2026-06-22 23:36:52,678.678 INFO    ] 200
[2026-06-22 23:36:52,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:36:52,726.726 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:36:52,811.811 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:36:52,813.813 INFO    ] No camera update needed
[2026-06-22 23:36:52,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:36:52,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:36:52,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:36:52,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:36:54,869.869 INFO    ] ================================================
[2026-06-22 23:36:54,884.884 INFO    ] Launching Daemon at Mon Jun 22 23:36:54 IST 2026
[2026-06-22 23:36:54,895.895 INFO    ] ================================================
[2026-06-22 23:36:55,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:36:55
[2026-06-22 23:36:56,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:36:56,318.318 INFO    ] Initializing speech engine...
[2026-06-22 23:36:56,324.324 INFO    ] 2026-06-22 23:36:56
[2026-06-22 23:36:56,620.620 INFO    ] 2026-06-22 23:36:56
[2026-06-22 23:36:56,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:36:56,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:36:56,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:36:57,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:36:57,032.032 INFO    ] time= 22/06/2026 23:36:57
[2026-06-22 23:36:57,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:36:57,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:36:57,123.123 INFO    ] No existing commands found in stream
[2026-06-22 23:37:02,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:37:02,160.160 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-22 23:37:05,661.661 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:37:05,663.663 INFO    ] Checking for system updates...
[2026-06-22 23:37:05,701.701 INFO    ] 200
[2026-06-22 23:37:05,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:37:05,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:37:05,771.771 INFO    ] No update needed
[2026-06-22 23:37:05,774.774 INFO    ] Checking for camera pi updates...
[2026-06-22 23:37:05,814.814 INFO    ] 200
[2026-06-22 23:37:05,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:37:05,861.861 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:37:05,915.915 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:37:05,918.918 INFO    ] No camera update needed
[2026-06-22 23:37:05,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:37:05,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:37:05,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:37:05,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:37:07,978.978 INFO    ] ================================================
[2026-06-22 23:37:07,993.993 INFO    ] Launching Daemon at Mon Jun 22 23:37:07 IST 2026
[2026-06-22 23:37:08,004.004 INFO    ] ================================================
[2026-06-22 23:37:08,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:37:08
[2026-06-22 23:37:09,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:37:09,475.475 INFO    ] Initializing speech engine...
[2026-06-22 23:37:09,484.484 INFO    ] 2026-06-22 23:37:09
[2026-06-22 23:37:09,735.735 INFO    ] 2026-06-22 23:37:09
[2026-06-22 23:37:09,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:37:10,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:37:10,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:37:10,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:37:10,245.245 INFO    ] time= 22/06/2026 23:37:10
[2026-06-22 23:37:10,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:37:10,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:37:10,453.453 INFO    ] No existing commands found in stream
[2026-06-22 23:37:15,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:37:15,472.472 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-22 23:37:16,926.926 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:37:16,929.929 INFO    ] Checking for system updates...
[2026-06-22 23:37:16,966.966 INFO    ] 200
[2026-06-22 23:37:16,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:37:17,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:37:17,023.023 INFO    ] No update needed
[2026-06-22 23:37:17,026.026 INFO    ] Checking for camera pi updates...
[2026-06-22 23:37:17,059.059 INFO    ] 200
[2026-06-22 23:37:17,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:37:17,108.108 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:37:17,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:37:17,217.217 INFO    ] No camera update needed
[2026-06-22 23:37:17,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:37:17,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:37:17,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:37:17,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:37:19,275.275 INFO    ] ================================================
[2026-06-22 23:37:19,290.290 INFO    ] Launching Daemon at Mon Jun 22 23:37:19 IST 2026
[2026-06-22 23:37:19,301.301 INFO    ] ================================================
[2026-06-22 23:37:19,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:37:19
[2026-06-22 23:37:20,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:37:20,725.725 INFO    ] Initializing speech engine...
[2026-06-22 23:37:20,741.741 INFO    ] 2026-06-22 23:37:20
[2026-06-22 23:37:21,013.013 INFO    ] 2026-06-22 23:37:20
[2026-06-22 23:37:21,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:37:21,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:37:21,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:37:21,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:37:21,432.432 INFO    ] time= 22/06/2026 23:37:21
[2026-06-22 23:37:21,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:37:21,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:37:21,522.522 INFO    ] No existing commands found in stream
[2026-06-22 23:37:26,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:37:26,560.560 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-22 23:37:28,206.206 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:37:28,208.208 INFO    ] Checking for system updates...
[2026-06-22 23:37:28,248.248 INFO    ] 200
[2026-06-22 23:37:28,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:37:28,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:37:28,305.305 INFO    ] No update needed
[2026-06-22 23:37:28,308.308 INFO    ] Checking for camera pi updates...
[2026-06-22 23:37:28,342.342 INFO    ] 200
[2026-06-22 23:37:28,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:37:28,384.384 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:37:28,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:37:28,475.475 INFO    ] No camera update needed
[2026-06-22 23:37:28,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:37:28,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:37:28,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:37:28,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:37:30,529.529 INFO    ] ================================================
[2026-06-22 23:37:30,545.545 INFO    ] Launching Daemon at Mon Jun 22 23:37:30 IST 2026
[2026-06-22 23:37:30,556.556 INFO    ] ================================================
[2026-06-22 23:37:31,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:37:31
[2026-06-22 23:37:31,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:37:32,084.084 INFO    ] Initializing speech engine...
[2026-06-22 23:37:32,105.105 INFO    ] 2026-06-22 23:37:32
[2026-06-22 23:37:32,367.367 INFO    ] 2026-06-22 23:37:32
[2026-06-22 23:37:32,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:37:32,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:37:32,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:37:32,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:37:32,854.854 INFO    ] time= 22/06/2026 23:37:32
[2026-06-22 23:37:32,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:37:32,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:37:33,118.118 INFO    ] No existing commands found in stream
[2026-06-22 23:37:38,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:37:38,152.152 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-22 23:37:38,960.960 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:37:38,961.961 INFO    ] Checking for system updates...
[2026-06-22 23:37:38,984.984 INFO    ] 200
[2026-06-22 23:37:38,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:37:39,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:37:39,020.020 INFO    ] No update needed
[2026-06-22 23:37:39,022.022 INFO    ] Checking for camera pi updates...
[2026-06-22 23:37:39,051.051 INFO    ] 200
[2026-06-22 23:37:39,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:37:39,095.095 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:37:39,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:37:39,177.177 INFO    ] No camera update needed
[2026-06-22 23:37:39,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:37:39,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:37:39,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:37:39,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:37:41,233.233 INFO    ] ================================================
[2026-06-22 23:37:41,248.248 INFO    ] Launching Daemon at Mon Jun 22 23:37:41 IST 2026
[2026-06-22 23:37:41,259.259 INFO    ] ================================================
[2026-06-22 23:37:41,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:37:41
[2026-06-22 23:37:42,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:37:42,795.795 INFO    ] Initializing speech engine...
[2026-06-22 23:37:42,808.808 INFO    ] 2026-06-22 23:37:42
[2026-06-22 23:37:43,096.096 INFO    ] 2026-06-22 23:37:43
[2026-06-22 23:37:43,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:37:43,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:37:43,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:37:43,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:37:43,636.636 INFO    ] time= 22/06/2026 23:37:43
[2026-06-22 23:37:43,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:37:43,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:37:43,793.793 INFO    ] No existing commands found in stream
[2026-06-22 23:37:48,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:37:48,818.818 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-22 23:37:51,362.362 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:37:51,366.366 INFO    ] Checking for system updates...
[2026-06-22 23:37:51,408.408 INFO    ] 200
[2026-06-22 23:37:51,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:37:51,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:37:51,468.468 INFO    ] No update needed
[2026-06-22 23:37:51,471.471 INFO    ] Checking for camera pi updates...
[2026-06-22 23:37:51,506.506 INFO    ] 200
[2026-06-22 23:37:51,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:37:51,549.549 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:37:51,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:37:51,644.644 INFO    ] No camera update needed
[2026-06-22 23:37:51,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:37:51,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:37:51,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:37:51,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:37:53,701.701 INFO    ] ================================================
[2026-06-22 23:37:53,716.716 INFO    ] Launching Daemon at Mon Jun 22 23:37:53 IST 2026
[2026-06-22 23:37:53,727.727 INFO    ] ================================================
[2026-06-22 23:37:54,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:37:54
[2026-06-22 23:37:54,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:37:55,106.106 INFO    ] Initializing speech engine...
[2026-06-22 23:37:55,115.115 INFO    ] 2026-06-22 23:37:55
[2026-06-22 23:37:55,363.363 INFO    ] 2026-06-22 23:37:55
[2026-06-22 23:37:55,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:37:55,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:37:55,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:37:55,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:37:55,734.734 INFO    ] time= 22/06/2026 23:37:55
[2026-06-22 23:37:55,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:37:55,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:37:55,928.928 INFO    ] No existing commands found in stream
[2026-06-22 23:38:00,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:38:00,947.947 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-22 23:38:05,002.002 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:38:05,004.004 INFO    ] Checking for system updates...
[2026-06-22 23:38:05,045.045 INFO    ] 200
[2026-06-22 23:38:05,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:38:05,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:38:05,105.105 INFO    ] No update needed
[2026-06-22 23:38:05,107.107 INFO    ] Checking for camera pi updates...
[2026-06-22 23:38:05,141.141 INFO    ] 200
[2026-06-22 23:38:05,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:38:05,185.185 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:38:05,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:38:05,366.366 INFO    ] No camera update needed
[2026-06-22 23:38:05,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:38:05,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:38:05,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:38:05,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:38:07,422.422 INFO    ] ================================================
[2026-06-22 23:38:07,437.437 INFO    ] Launching Daemon at Mon Jun 22 23:38:07 IST 2026
[2026-06-22 23:38:07,447.447 INFO    ] ================================================
[2026-06-22 23:38:08,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:38:08
[2026-06-22 23:38:08,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:38:09,124.124 INFO    ] Initializing speech engine...
[2026-06-22 23:38:09,132.132 INFO    ] 2026-06-22 23:38:09
[2026-06-22 23:38:09,426.426 INFO    ] 2026-06-22 23:38:09
[2026-06-22 23:38:09,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:38:09,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:38:09,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:38:09,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:38:09,977.977 INFO    ] time= 22/06/2026 23:38:09
[2026-06-22 23:38:09,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:38:10,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:38:10,123.123 INFO    ] No existing commands found in stream
[2026-06-22 23:38:15,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:38:15,154.154 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-22 23:38:17,361.361 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:38:17,362.362 INFO    ] Checking for system updates...
[2026-06-22 23:38:17,392.392 INFO    ] 200
[2026-06-22 23:38:17,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:38:17,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:38:17,453.453 INFO    ] No update needed
[2026-06-22 23:38:17,456.456 INFO    ] Checking for camera pi updates...
[2026-06-22 23:38:17,492.492 INFO    ] 200
[2026-06-22 23:38:17,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:38:17,543.543 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:38:17,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:38:17,628.628 INFO    ] No camera update needed
[2026-06-22 23:38:17,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:38:17,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:38:17,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:38:17,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:38:19,687.687 INFO    ] ================================================
[2026-06-22 23:38:19,702.702 INFO    ] Launching Daemon at Mon Jun 22 23:38:19 IST 2026
[2026-06-22 23:38:19,713.713 INFO    ] ================================================
[2026-06-22 23:38:20,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:38:20
[2026-06-22 23:38:20,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:38:21,077.077 INFO    ] Initializing speech engine...
[2026-06-22 23:38:21,086.086 INFO    ] 2026-06-22 23:38:21
[2026-06-22 23:38:21,349.349 INFO    ] 2026-06-22 23:38:21
[2026-06-22 23:38:21,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:38:21,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:38:21,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:38:21,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:38:21,839.839 INFO    ] time= 22/06/2026 23:38:21
[2026-06-22 23:38:21,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:38:21,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:38:22,050.050 INFO    ] No existing commands found in stream
[2026-06-22 23:38:27,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:38:27,077.077 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-22 23:38:29,522.522 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:38:29,526.526 INFO    ] Checking for system updates...
[2026-06-22 23:38:29,562.562 INFO    ] 200
[2026-06-22 23:38:29,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:38:29,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:38:29,620.620 INFO    ] No update needed
[2026-06-22 23:38:29,622.622 INFO    ] Checking for camera pi updates...
[2026-06-22 23:38:29,656.656 INFO    ] 200
[2026-06-22 23:38:29,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:38:29,705.705 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:38:29,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:38:29,801.801 INFO    ] No camera update needed
[2026-06-22 23:38:29,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:38:29,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:38:29,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:38:29,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:38:31,860.860 INFO    ] ================================================
[2026-06-22 23:38:31,878.878 INFO    ] Launching Daemon at Mon Jun 22 23:38:31 IST 2026
[2026-06-22 23:38:31,890.890 INFO    ] ================================================
[2026-06-22 23:38:32,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:38:32
[2026-06-22 23:38:33,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:38:33,446.446 INFO    ] Initializing speech engine...
[2026-06-22 23:38:33,461.461 INFO    ] 2026-06-22 23:38:33
[2026-06-22 23:38:33,727.727 INFO    ] 2026-06-22 23:38:33
[2026-06-22 23:38:33,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:38:34,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:38:34,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:38:34,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:38:34,183.183 INFO    ] time= 22/06/2026 23:38:34
[2026-06-22 23:38:34,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:38:34,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:38:34,424.424 INFO    ] No existing commands found in stream
[2026-06-22 23:38:39,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:38:39,450.450 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-22 23:38:43,856.856 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:38:43,859.859 INFO    ] Checking for system updates...
[2026-06-22 23:38:43,900.900 INFO    ] 200
[2026-06-22 23:38:43,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:38:43,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:38:43,965.965 INFO    ] No update needed
[2026-06-22 23:38:43,968.968 INFO    ] Checking for camera pi updates...
[2026-06-22 23:38:44,003.003 INFO    ] 200
[2026-06-22 23:38:44,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:38:44,046.046 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:38:44,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:38:44,131.131 INFO    ] No camera update needed
[2026-06-22 23:38:44,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:38:44,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:38:44,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:38:44,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:38:46,191.191 INFO    ] ================================================
[2026-06-22 23:38:46,209.209 INFO    ] Launching Daemon at Mon Jun 22 23:38:46 IST 2026
[2026-06-22 23:38:46,220.220 INFO    ] ================================================
[2026-06-22 23:38:46,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:38:46
[2026-06-22 23:38:47,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:38:47,682.682 INFO    ] Initializing speech engine...
[2026-06-22 23:38:47,697.697 INFO    ] 2026-06-22 23:38:47
[2026-06-22 23:38:47,958.958 INFO    ] 2026-06-22 23:38:47
[2026-06-22 23:38:47,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:38:48,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:38:48,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:38:50,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:38:50,296.296 INFO    ] time= 22/06/2026 23:38:50
[2026-06-22 23:38:50,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:38:50,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:38:50,376.376 INFO    ] No existing commands found in stream
[2026-06-22 23:38:55,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:38:55,407.407 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-22 23:38:59,426.426 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:38:59,428.428 INFO    ] Checking for system updates...
[2026-06-22 23:38:59,464.464 INFO    ] 200
[2026-06-22 23:38:59,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:38:59,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:38:59,522.522 INFO    ] No update needed
[2026-06-22 23:38:59,525.525 INFO    ] Checking for camera pi updates...
[2026-06-22 23:38:59,558.558 INFO    ] 200
[2026-06-22 23:38:59,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:38:59,601.601 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:38:59,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:38:59,695.695 INFO    ] No camera update needed
[2026-06-22 23:38:59,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:38:59,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:38:59,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:38:59,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:39:01,786.786 INFO    ] ================================================
[2026-06-22 23:39:01,822.822 INFO    ] Launching Daemon at Mon Jun 22 23:39:01 IST 2026
[2026-06-22 23:39:01,850.850 INFO    ] ================================================
[2026-06-22 23:39:02,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:39:02
[2026-06-22 23:39:03,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:39:03,704.704 INFO    ] Initializing speech engine...
[2026-06-22 23:39:03,713.713 INFO    ] 2026-06-22 23:39:03
[2026-06-22 23:39:04,022.022 INFO    ] 2026-06-22 23:39:03
[2026-06-22 23:39:04,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:39:04,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:39:04,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:39:04,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:39:04,542.542 INFO    ] time= 22/06/2026 23:39:04
[2026-06-22 23:39:04,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:39:04,573.573 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:39:04,705.705 INFO    ] No existing commands found in stream
[2026-06-22 23:39:09,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:39:09,724.724 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-22 23:39:12,868.868 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:39:12,872.872 INFO    ] Checking for system updates...
[2026-06-22 23:39:12,915.915 INFO    ] 200
[2026-06-22 23:39:12,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:39:12,981.981 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:39:12,984.984 INFO    ] No update needed
[2026-06-22 23:39:12,987.987 INFO    ] Checking for camera pi updates...
[2026-06-22 23:39:13,022.022 INFO    ] 200
[2026-06-22 23:39:13,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:39:13,067.067 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:39:13,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:39:13,154.154 INFO    ] No camera update needed
[2026-06-22 23:39:13,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:39:13,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:39:13,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:39:13,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:39:15,213.213 INFO    ] ================================================
[2026-06-22 23:39:15,229.229 INFO    ] Launching Daemon at Mon Jun 22 23:39:15 IST 2026
[2026-06-22 23:39:15,240.240 INFO    ] ================================================
[2026-06-22 23:39:15,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:39:15
[2026-06-22 23:39:16,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:39:16,689.689 INFO    ] Initializing speech engine...
[2026-06-22 23:39:16,698.698 INFO    ] 2026-06-22 23:39:16
[2026-06-22 23:39:16,947.947 INFO    ] 2026-06-22 23:39:16
[2026-06-22 23:39:17,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:39:17,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:39:17,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:39:17,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:39:17,424.424 INFO    ] time= 22/06/2026 23:39:17
[2026-06-22 23:39:17,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:39:17,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:39:17,637.637 INFO    ] No existing commands found in stream
[2026-06-22 23:39:22,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:39:22,668.668 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-22 23:39:25,012.012 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:39:25,015.015 INFO    ] Checking for system updates...
[2026-06-22 23:39:25,051.051 INFO    ] 200
[2026-06-22 23:39:25,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:39:25,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:39:25,109.109 INFO    ] No update needed
[2026-06-22 23:39:25,112.112 INFO    ] Checking for camera pi updates...
[2026-06-22 23:39:25,146.146 INFO    ] 200
[2026-06-22 23:39:25,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:39:25,190.190 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:39:25,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:39:25,276.276 INFO    ] No camera update needed
[2026-06-22 23:39:25,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:39:25,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:39:25,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:39:25,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:39:27,331.331 INFO    ] ================================================
[2026-06-22 23:39:27,347.347 INFO    ] Launching Daemon at Mon Jun 22 23:39:27 IST 2026
[2026-06-22 23:39:27,358.358 INFO    ] ================================================
[2026-06-22 23:39:27,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:39:27
[2026-06-22 23:39:28,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:39:28,676.676 INFO    ] Initializing speech engine...
[2026-06-22 23:39:28,684.684 INFO    ] 2026-06-22 23:39:28
[2026-06-22 23:39:28,958.958 INFO    ] 2026-06-22 23:39:28
[2026-06-22 23:39:28,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:39:29,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:39:29,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:39:29,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:39:29,453.453 INFO    ] time= 22/06/2026 23:39:29
[2026-06-22 23:39:29,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:39:29,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:39:29,682.682 INFO    ] No existing commands found in stream
[2026-06-22 23:39:34,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:39:34,718.718 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-22 23:39:36,950.950 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:39:36,953.953 INFO    ] Checking for system updates...
[2026-06-22 23:39:36,994.994 INFO    ] 200
[2026-06-22 23:39:36,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:39:37,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:39:37,051.051 INFO    ] No update needed
[2026-06-22 23:39:37,054.054 INFO    ] Checking for camera pi updates...
[2026-06-22 23:39:37,087.087 INFO    ] 200
[2026-06-22 23:39:37,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:39:37,130.130 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:39:37,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:39:37,214.214 INFO    ] No camera update needed
[2026-06-22 23:39:37,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:39:37,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:39:37,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:39:37,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:39:39,270.270 INFO    ] ================================================
[2026-06-22 23:39:39,285.285 INFO    ] Launching Daemon at Mon Jun 22 23:39:39 IST 2026
[2026-06-22 23:39:39,297.297 INFO    ] ================================================
[2026-06-22 23:39:39,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:39:39
[2026-06-22 23:39:40,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:39:40,630.630 INFO    ] Initializing speech engine...
[2026-06-22 23:39:40,639.639 INFO    ] 2026-06-22 23:39:40
[2026-06-22 23:39:40,887.887 INFO    ] 2026-06-22 23:39:40
[2026-06-22 23:39:40,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:39:41,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:39:41,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:39:41,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:39:41,312.312 INFO    ] time= 22/06/2026 23:39:41
[2026-06-22 23:39:41,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:39:41,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:39:41,450.450 INFO    ] No existing commands found in stream
[2026-06-22 23:39:46,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:39:46,470.470 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-22 23:39:48,642.642 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:39:48,645.645 INFO    ] Checking for system updates...
[2026-06-22 23:39:48,681.681 INFO    ] 200
[2026-06-22 23:39:48,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:39:48,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:39:48,738.738 INFO    ] No update needed
[2026-06-22 23:39:48,740.740 INFO    ] Checking for camera pi updates...
[2026-06-22 23:39:48,774.774 INFO    ] 200
[2026-06-22 23:39:48,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:39:48,818.818 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:39:48,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:39:48,900.900 INFO    ] No camera update needed
[2026-06-22 23:39:48,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:39:48,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:39:48,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:39:48,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:39:50,960.960 INFO    ] ================================================
[2026-06-22 23:39:50,976.976 INFO    ] Launching Daemon at Mon Jun 22 23:39:50 IST 2026
[2026-06-22 23:39:50,987.987 INFO    ] ================================================
[2026-06-22 23:39:51,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:39:51
[2026-06-22 23:39:52,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:39:52,520.520 INFO    ] Initializing speech engine...
[2026-06-22 23:39:52,539.539 INFO    ] 2026-06-22 23:39:52
[2026-06-22 23:39:52,791.791 INFO    ] 2026-06-22 23:39:52
[2026-06-22 23:39:52,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:39:53,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:39:53,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:39:53,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:39:53,356.356 INFO    ] time= 22/06/2026 23:39:53
[2026-06-22 23:39:53,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:39:53,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:39:53,492.492 INFO    ] No existing commands found in stream
[2026-06-22 23:39:58,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:39:58,526.526 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-22 23:40:02,538.538 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:40:02,541.541 INFO    ] Checking for system updates...
[2026-06-22 23:40:02,598.598 INFO    ] 200
[2026-06-22 23:40:02,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:40:02,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:40:02,689.689 INFO    ] No update needed
[2026-06-22 23:40:02,693.693 INFO    ] Checking for camera pi updates...
[2026-06-22 23:40:02,747.747 INFO    ] 200
[2026-06-22 23:40:02,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:40:02,818.818 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:40:02,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:40:02,896.896 INFO    ] No camera update needed
[2026-06-22 23:40:02,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:40:02,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:40:02,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:40:02,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:40:04,973.973 INFO    ] ================================================
[2026-06-22 23:40:04,989.989 INFO    ] Launching Daemon at Mon Jun 22 23:40:04 IST 2026
[2026-06-22 23:40:05,000.000 INFO    ] ================================================
[2026-06-22 23:40:05,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:40:05
[2026-06-22 23:40:06,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:40:06,401.401 INFO    ] Initializing speech engine...
[2026-06-22 23:40:06,425.425 INFO    ] 2026-06-22 23:40:06
[2026-06-22 23:40:06,683.683 INFO    ] 2026-06-22 23:40:06
[2026-06-22 23:40:06,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:40:06,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:40:06,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:40:07,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:40:07,034.034 INFO    ] time= 22/06/2026 23:40:07
[2026-06-22 23:40:07,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:40:07,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:40:07,183.183 INFO    ] No existing commands found in stream
[2026-06-22 23:40:12,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:40:12,196.196 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-22 23:40:12,871.871 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:40:12,873.873 INFO    ] Checking for system updates...
[2026-06-22 23:40:12,910.910 INFO    ] 200
[2026-06-22 23:40:12,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:40:12,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:40:12,976.976 INFO    ] No update needed
[2026-06-22 23:40:12,979.979 INFO    ] Checking for camera pi updates...
[2026-06-22 23:40:13,013.013 INFO    ] 200
[2026-06-22 23:40:13,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:40:13,056.056 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:40:13,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:40:13,262.262 INFO    ] No camera update needed
[2026-06-22 23:40:13,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:40:13,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:40:13,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:40:13,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:40:15,316.316 INFO    ] ================================================
[2026-06-22 23:40:15,331.331 INFO    ] Launching Daemon at Mon Jun 22 23:40:15 IST 2026
[2026-06-22 23:40:15,342.342 INFO    ] ================================================
[2026-06-22 23:40:15,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:40:15
[2026-06-22 23:40:16,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:40:16,657.657 INFO    ] Initializing speech engine...
[2026-06-22 23:40:16,677.677 INFO    ] 2026-06-22 23:40:16
[2026-06-22 23:40:16,937.937 INFO    ] 2026-06-22 23:40:16
[2026-06-22 23:40:16,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:40:17,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:40:17,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:40:17,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:40:17,314.314 INFO    ] time= 22/06/2026 23:40:17
[2026-06-22 23:40:17,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:40:17,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:40:17,501.501 INFO    ] No existing commands found in stream
[2026-06-22 23:40:22,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:40:22,530.530 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-22 23:40:26,562.562 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:40:26,565.565 INFO    ] Checking for system updates...
[2026-06-22 23:40:26,606.606 INFO    ] 200
[2026-06-22 23:40:26,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:40:26,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:40:26,663.663 INFO    ] No update needed
[2026-06-22 23:40:26,666.666 INFO    ] Checking for camera pi updates...
[2026-06-22 23:40:26,700.700 INFO    ] 200
[2026-06-22 23:40:26,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:40:26,743.743 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:40:26,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:40:26,825.825 INFO    ] No camera update needed
[2026-06-22 23:40:26,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:40:26,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:40:26,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:40:26,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:40:28,879.879 INFO    ] ================================================
[2026-06-22 23:40:28,894.894 INFO    ] Launching Daemon at Mon Jun 22 23:40:28 IST 2026
[2026-06-22 23:40:28,905.905 INFO    ] ================================================
[2026-06-22 23:40:29,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:40:29
[2026-06-22 23:40:30,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:40:30,282.282 INFO    ] Initializing speech engine...
[2026-06-22 23:40:30,291.291 INFO    ] 2026-06-22 23:40:30
[2026-06-22 23:40:30,537.537 INFO    ] 2026-06-22 23:40:30
[2026-06-22 23:40:30,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:40:30,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:40:30,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:40:31,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:40:31,092.092 INFO    ] time= 22/06/2026 23:40:31
[2026-06-22 23:40:31,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:40:31,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:40:31,248.248 INFO    ] No existing commands found in stream
[2026-06-22 23:40:36,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:40:36,270.270 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-22 23:40:39,095.095 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:40:39,098.098 INFO    ] Checking for system updates...
[2026-06-22 23:40:39,139.139 INFO    ] 200
[2026-06-22 23:40:39,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:40:39,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:40:39,205.205 INFO    ] No update needed
[2026-06-22 23:40:39,207.207 INFO    ] Checking for camera pi updates...
[2026-06-22 23:40:39,246.246 INFO    ] 200
[2026-06-22 23:40:39,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:40:39,296.296 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:40:39,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:40:39,376.376 INFO    ] No camera update needed
[2026-06-22 23:40:39,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:40:39,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:40:39,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:40:39,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:40:41,435.435 INFO    ] ================================================
[2026-06-22 23:40:41,452.452 INFO    ] Launching Daemon at Mon Jun 22 23:40:41 IST 2026
[2026-06-22 23:40:41,463.463 INFO    ] ================================================
[2026-06-22 23:40:42,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:40:42
[2026-06-22 23:40:42,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:40:42,890.890 INFO    ] Initializing speech engine...
[2026-06-22 23:40:42,899.899 INFO    ] 2026-06-22 23:40:42
[2026-06-22 23:40:43,146.146 INFO    ] 2026-06-22 23:40:43
[2026-06-22 23:40:43,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:40:43,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:40:43,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:40:43,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:40:43,619.619 INFO    ] time= 22/06/2026 23:40:43
[2026-06-22 23:40:43,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:40:43,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:40:43,827.827 INFO    ] No existing commands found in stream
[2026-06-22 23:40:48,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:40:48,857.857 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-22 23:40:51,820.820 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:40:51,822.822 INFO    ] Checking for system updates...
[2026-06-22 23:40:51,844.844 INFO    ] 200
[2026-06-22 23:40:51,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:40:51,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:40:51,915.915 INFO    ] No update needed
[2026-06-22 23:40:51,918.918 INFO    ] Checking for camera pi updates...
[2026-06-22 23:40:51,959.959 INFO    ] 200
[2026-06-22 23:40:51,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:40:52,007.007 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:40:52,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:40:52,095.095 INFO    ] No camera update needed
[2026-06-22 23:40:52,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:40:52,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:40:52,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:40:52,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:40:54,155.155 INFO    ] ================================================
[2026-06-22 23:40:54,170.170 INFO    ] Launching Daemon at Mon Jun 22 23:40:54 IST 2026
[2026-06-22 23:40:54,181.181 INFO    ] ================================================
[2026-06-22 23:40:54,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:40:54
[2026-06-22 23:40:55,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:40:55,603.603 INFO    ] Initializing speech engine...
[2026-06-22 23:40:55,612.612 INFO    ] 2026-06-22 23:40:55
[2026-06-22 23:40:55,858.858 INFO    ] 2026-06-22 23:40:55
[2026-06-22 23:40:55,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:40:56,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:40:56,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:40:56,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:40:56,305.305 INFO    ] time= 22/06/2026 23:40:56
[2026-06-22 23:40:56,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:40:56,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:40:56,551.551 INFO    ] No existing commands found in stream
[2026-06-22 23:41:01,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:41:01,580.580 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-22 23:41:05,032.032 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:41:05,035.035 INFO    ] Checking for system updates...
[2026-06-22 23:41:05,076.076 INFO    ] 200
[2026-06-22 23:41:05,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:41:05,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:41:05,134.134 INFO    ] No update needed
[2026-06-22 23:41:05,136.136 INFO    ] Checking for camera pi updates...
[2026-06-22 23:41:05,170.170 INFO    ] 200
[2026-06-22 23:41:05,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:41:05,213.213 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:41:05,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:41:05,281.281 INFO    ] No camera update needed
[2026-06-22 23:41:05,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:41:05,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:41:05,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:41:05,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:41:07,337.337 INFO    ] ================================================
[2026-06-22 23:41:07,353.353 INFO    ] Launching Daemon at Mon Jun 22 23:41:07 IST 2026
[2026-06-22 23:41:07,364.364 INFO    ] ================================================
[2026-06-22 23:41:08,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:41:08
[2026-06-22 23:41:08,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:41:09,028.028 INFO    ] Initializing speech engine...
[2026-06-22 23:41:09,042.042 INFO    ] 2026-06-22 23:41:09
[2026-06-22 23:41:09,331.331 INFO    ] 2026-06-22 23:41:09
[2026-06-22 23:41:09,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:41:09,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:41:09,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:41:09,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:41:09,814.814 INFO    ] time= 22/06/2026 23:41:09
[2026-06-22 23:41:09,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:41:09,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:41:10,036.036 INFO    ] No existing commands found in stream
[2026-06-22 23:41:15,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:41:15,058.058 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-22 23:41:19,346.346 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:41:19,349.349 INFO    ] Checking for system updates...
[2026-06-22 23:41:19,390.390 INFO    ] 200
[2026-06-22 23:41:19,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:41:19,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:41:19,447.447 INFO    ] No update needed
[2026-06-22 23:41:19,449.449 INFO    ] Checking for camera pi updates...
[2026-06-22 23:41:19,483.483 INFO    ] 200
[2026-06-22 23:41:19,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:41:19,526.526 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:41:19,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:41:19,608.608 INFO    ] No camera update needed
[2026-06-22 23:41:19,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:41:19,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:41:19,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:41:19,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:41:21,663.663 INFO    ] ================================================
[2026-06-22 23:41:21,678.678 INFO    ] Launching Daemon at Mon Jun 22 23:41:21 IST 2026
[2026-06-22 23:41:21,689.689 INFO    ] ================================================
[2026-06-22 23:41:22,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:41:22
[2026-06-22 23:41:22,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:41:23,178.178 INFO    ] Initializing speech engine...
[2026-06-22 23:41:23,188.188 INFO    ] 2026-06-22 23:41:23
[2026-06-22 23:41:23,471.471 INFO    ] 2026-06-22 23:41:23
[2026-06-22 23:41:23,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:41:23,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:41:23,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:41:24,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:41:24,058.058 INFO    ] time= 22/06/2026 23:41:24
[2026-06-22 23:41:24,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:41:24,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:41:24,266.266 INFO    ] No existing commands found in stream
[2026-06-22 23:41:29,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:41:29,295.295 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-22 23:41:30,899.899 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:41:30,902.902 INFO    ] Checking for system updates...
[2026-06-22 23:41:30,940.940 INFO    ] 200
[2026-06-22 23:41:30,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:41:30,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:41:31,002.002 INFO    ] No update needed
[2026-06-22 23:41:31,004.004 INFO    ] Checking for camera pi updates...
[2026-06-22 23:41:31,041.041 INFO    ] 200
[2026-06-22 23:41:31,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:41:31,087.087 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:41:31,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:41:31,175.175 INFO    ] No camera update needed
[2026-06-22 23:41:31,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:41:31,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:41:31,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:41:31,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:41:33,241.241 INFO    ] ================================================
[2026-06-22 23:41:33,256.256 INFO    ] Launching Daemon at Mon Jun 22 23:41:33 IST 2026
[2026-06-22 23:41:33,267.267 INFO    ] ================================================
[2026-06-22 23:41:33,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:41:33
[2026-06-22 23:41:34,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:41:34,599.599 INFO    ] Initializing speech engine...
[2026-06-22 23:41:34,612.612 INFO    ] 2026-06-22 23:41:34
[2026-06-22 23:41:34,880.880 INFO    ] 2026-06-22 23:41:34
[2026-06-22 23:41:34,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:41:35,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:41:35,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:41:35,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:41:35,452.452 INFO    ] time= 22/06/2026 23:41:35
[2026-06-22 23:41:35,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:41:35,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:41:35,610.610 INFO    ] No existing commands found in stream
[2026-06-22 23:41:40,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:41:40,642.642 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-22 23:41:44,237.237 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:41:44,239.239 INFO    ] Checking for system updates...
[2026-06-22 23:41:44,276.276 INFO    ] 200
[2026-06-22 23:41:44,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:41:44,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:41:44,339.339 INFO    ] No update needed
[2026-06-22 23:41:44,341.341 INFO    ] Checking for camera pi updates...
[2026-06-22 23:41:44,375.375 INFO    ] 200
[2026-06-22 23:41:44,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:41:44,426.426 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:41:44,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:41:44,527.527 INFO    ] No camera update needed
[2026-06-22 23:41:44,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:41:44,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:41:44,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:41:44,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:41:46,584.584 INFO    ] ================================================
[2026-06-22 23:41:46,600.600 INFO    ] Launching Daemon at Mon Jun 22 23:41:46 IST 2026
[2026-06-22 23:41:46,610.610 INFO    ] ================================================
[2026-06-22 23:41:47,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:41:47
[2026-06-22 23:41:47,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:41:48,177.177 INFO    ] Initializing speech engine...
[2026-06-22 23:41:48,188.188 INFO    ] 2026-06-22 23:41:48
[2026-06-22 23:41:48,500.500 INFO    ] 2026-06-22 23:41:48
[2026-06-22 23:41:48,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:41:48,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:41:48,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:41:48,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:41:49,010.010 INFO    ] time= 22/06/2026 23:41:48
[2026-06-22 23:41:49,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:41:49,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:41:49,167.167 INFO    ] No existing commands found in stream
[2026-06-22 23:41:54,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:41:54,205.205 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-22 23:41:55,431.431 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:41:55,433.433 INFO    ] Checking for system updates...
[2026-06-22 23:41:55,454.454 INFO    ] 200
[2026-06-22 23:41:55,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:41:55,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:41:55,489.489 INFO    ] No update needed
[2026-06-22 23:41:55,491.491 INFO    ] Checking for camera pi updates...
[2026-06-22 23:41:55,510.510 INFO    ] 200
[2026-06-22 23:41:55,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:41:55,552.552 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:41:55,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:41:55,646.646 INFO    ] No camera update needed
[2026-06-22 23:41:55,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:41:55,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:41:55,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:41:55,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:41:57,701.701 INFO    ] ================================================
[2026-06-22 23:41:57,717.717 INFO    ] Launching Daemon at Mon Jun 22 23:41:57 IST 2026
[2026-06-22 23:41:57,728.728 INFO    ] ================================================
[2026-06-22 23:41:58,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:41:58
[2026-06-22 23:41:58,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:41:59,088.088 INFO    ] Initializing speech engine...
[2026-06-22 23:41:59,097.097 INFO    ] 2026-06-22 23:41:59
[2026-06-22 23:41:59,400.400 INFO    ] 2026-06-22 23:41:59
[2026-06-22 23:41:59,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:41:59,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:41:59,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:41:59,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:41:59,794.794 INFO    ] time= 22/06/2026 23:41:59
[2026-06-22 23:41:59,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:41:59,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:41:59,922.922 INFO    ] No existing commands found in stream
[2026-06-22 23:42:04,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:42:04,944.944 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-22 23:42:07,590.590 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:42:07,593.593 INFO    ] Checking for system updates...
[2026-06-22 23:42:07,634.634 INFO    ] 200
[2026-06-22 23:42:07,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:42:07,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:42:07,692.692 INFO    ] No update needed
[2026-06-22 23:42:07,695.695 INFO    ] Checking for camera pi updates...
[2026-06-22 23:42:07,729.729 INFO    ] 200
[2026-06-22 23:42:07,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:42:07,779.779 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:42:07,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:42:07,871.871 INFO    ] No camera update needed
[2026-06-22 23:42:07,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:42:07,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:42:07,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:42:07,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:42:09,929.929 INFO    ] ================================================
[2026-06-22 23:42:09,944.944 INFO    ] Launching Daemon at Mon Jun 22 23:42:09 IST 2026
[2026-06-22 23:42:09,955.955 INFO    ] ================================================
[2026-06-22 23:42:10,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:42:10
[2026-06-22 23:42:11,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:42:11,306.306 INFO    ] Initializing speech engine...
[2026-06-22 23:42:11,315.315 INFO    ] 2026-06-22 23:42:11
[2026-06-22 23:42:11,567.567 INFO    ] 2026-06-22 23:42:11
[2026-06-22 23:42:11,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:42:11,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:42:11,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:42:12,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:42:12,074.074 INFO    ] time= 22/06/2026 23:42:12
[2026-06-22 23:42:12,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:42:12,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:42:12,266.266 INFO    ] No existing commands found in stream
[2026-06-22 23:42:17,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:42:17,299.299 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-22 23:42:17,796.796 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:42:17,799.799 INFO    ] Checking for system updates...
[2026-06-22 23:42:17,839.839 INFO    ] 200
[2026-06-22 23:42:17,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:42:17,903.903 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:42:17,905.905 INFO    ] No update needed
[2026-06-22 23:42:17,908.908 INFO    ] Checking for camera pi updates...
[2026-06-22 23:42:17,947.947 INFO    ] 200
[2026-06-22 23:42:17,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:42:17,989.989 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:42:18,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:42:18,163.163 INFO    ] No camera update needed
[2026-06-22 23:42:18,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:42:18,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:42:18,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:42:18,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:42:20,220.220 INFO    ] ================================================
[2026-06-22 23:42:20,236.236 INFO    ] Launching Daemon at Mon Jun 22 23:42:20 IST 2026
[2026-06-22 23:42:20,246.246 INFO    ] ================================================
[2026-06-22 23:42:20,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:42:20
[2026-06-22 23:42:21,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:42:21,581.581 INFO    ] Initializing speech engine...
[2026-06-22 23:42:21,601.601 INFO    ] 2026-06-22 23:42:21
[2026-06-22 23:42:21,851.851 INFO    ] 2026-06-22 23:42:21
[2026-06-22 23:42:21,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:42:22,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:42:22,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:42:22,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:42:22,228.228 INFO    ] time= 22/06/2026 23:42:22
[2026-06-22 23:42:22,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:42:22,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:42:22,424.424 INFO    ] No existing commands found in stream
[2026-06-22 23:42:27,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:42:27,442.442 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-22 23:42:30,520.520 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:42:30,523.523 INFO    ] Checking for system updates...
[2026-06-22 23:42:30,564.564 INFO    ] 200
[2026-06-22 23:42:30,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:42:30,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:42:30,621.621 INFO    ] No update needed
[2026-06-22 23:42:30,623.623 INFO    ] Checking for camera pi updates...
[2026-06-22 23:42:30,657.657 INFO    ] 200
[2026-06-22 23:42:30,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:42:30,706.706 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:42:30,789.789 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:42:30,791.791 INFO    ] No camera update needed
[2026-06-22 23:42:30,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:42:30,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:42:30,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:42:30,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:42:32,850.850 INFO    ] ================================================
[2026-06-22 23:42:32,866.866 INFO    ] Launching Daemon at Mon Jun 22 23:42:32 IST 2026
[2026-06-22 23:42:32,878.878 INFO    ] ================================================
[2026-06-22 23:42:33,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:42:33
[2026-06-22 23:42:34,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:42:34,351.351 INFO    ] Initializing speech engine...
[2026-06-22 23:42:34,362.362 INFO    ] 2026-06-22 23:42:34
[2026-06-22 23:42:34,627.627 INFO    ] 2026-06-22 23:42:34
[2026-06-22 23:42:34,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:42:34,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:42:34,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:42:35,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:42:35,010.010 INFO    ] time= 22/06/2026 23:42:35
[2026-06-22 23:42:35,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:42:35,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:42:35,138.138 INFO    ] No existing commands found in stream
[2026-06-22 23:42:40,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:42:40,154.154 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-22 23:42:40,721.721 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:42:40,724.724 INFO    ] Checking for system updates...
[2026-06-22 23:42:40,766.766 INFO    ] 200
[2026-06-22 23:42:40,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:42:40,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:42:40,832.832 INFO    ] No update needed
[2026-06-22 23:42:40,834.834 INFO    ] Checking for camera pi updates...
[2026-06-22 23:42:40,870.870 INFO    ] 200
[2026-06-22 23:42:40,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:42:40,915.915 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:42:40,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:42:40,989.989 INFO    ] No camera update needed
[2026-06-22 23:42:40,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:42:40,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:42:41,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:42:41,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:42:43,050.050 INFO    ] ================================================
[2026-06-22 23:42:43,066.066 INFO    ] Launching Daemon at Mon Jun 22 23:42:43 IST 2026
[2026-06-22 23:42:43,076.076 INFO    ] ================================================
[2026-06-22 23:42:43,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:42:43
[2026-06-22 23:42:44,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:42:44,441.441 INFO    ] Initializing speech engine...
[2026-06-22 23:42:44,451.451 INFO    ] 2026-06-22 23:42:44
[2026-06-22 23:42:44,701.701 INFO    ] 2026-06-22 23:42:44
[2026-06-22 23:42:44,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:42:44,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:42:44,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:42:45,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:42:45,178.178 INFO    ] time= 22/06/2026 23:42:45
[2026-06-22 23:42:45,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:42:45,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:42:45,401.401 INFO    ] No existing commands found in stream
[2026-06-22 23:42:50,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:42:50,434.434 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-22 23:42:54,791.791 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:42:54,794.794 INFO    ] Checking for system updates...
[2026-06-22 23:42:54,830.830 INFO    ] 200
[2026-06-22 23:42:54,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:42:54,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:42:54,896.896 INFO    ] No update needed
[2026-06-22 23:42:54,898.898 INFO    ] Checking for camera pi updates...
[2026-06-22 23:42:54,937.937 INFO    ] 200
[2026-06-22 23:42:54,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:42:54,987.987 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:42:55,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:42:55,092.092 INFO    ] No camera update needed
[2026-06-22 23:42:55,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:42:55,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:42:55,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:42:55,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:42:57,149.149 INFO    ] ================================================
[2026-06-22 23:42:57,164.164 INFO    ] Launching Daemon at Mon Jun 22 23:42:57 IST 2026
[2026-06-22 23:42:57,175.175 INFO    ] ================================================
[2026-06-22 23:42:57,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:42:57
[2026-06-22 23:42:58,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:42:58,618.618 INFO    ] Initializing speech engine...
[2026-06-22 23:42:58,628.628 INFO    ] 2026-06-22 23:42:58
[2026-06-22 23:42:58,879.879 INFO    ] 2026-06-22 23:42:58
[2026-06-22 23:42:58,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:42:59,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:42:59,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:42:59,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:42:59,361.361 INFO    ] time= 22/06/2026 23:42:59
[2026-06-22 23:42:59,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:42:59,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:42:59,587.587 INFO    ] No existing commands found in stream
[2026-06-22 23:43:04,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:43:04,618.618 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-22 23:43:07,647.647 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:43:07,650.650 INFO    ] Checking for system updates...
[2026-06-22 23:43:07,685.685 INFO    ] 200
[2026-06-22 23:43:07,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:43:07,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:43:07,744.744 INFO    ] No update needed
[2026-06-22 23:43:07,747.747 INFO    ] Checking for camera pi updates...
[2026-06-22 23:43:07,784.784 INFO    ] 200
[2026-06-22 23:43:07,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:43:07,828.828 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:43:07,910.910 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:43:07,912.912 INFO    ] No camera update needed
[2026-06-22 23:43:07,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:43:07,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:43:07,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:43:07,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:43:09,969.969 INFO    ] ================================================
[2026-06-22 23:43:09,984.984 INFO    ] Launching Daemon at Mon Jun 22 23:43:09 IST 2026
[2026-06-22 23:43:10,995.995 INFO    ] ================================================
[2026-06-22 23:43:10,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:43:10
[2026-06-22 23:43:11,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:43:11,417.417 INFO    ] Initializing speech engine...
[2026-06-22 23:43:11,425.425 INFO    ] 2026-06-22 23:43:11
[2026-06-22 23:43:11,721.721 INFO    ] 2026-06-22 23:43:11
[2026-06-22 23:43:11,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:43:11,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:43:11,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:43:12,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:43:12,145.145 INFO    ] time= 22/06/2026 23:43:12
[2026-06-22 23:43:12,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:43:12,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:43:12,232.232 INFO    ] No existing commands found in stream
[2026-06-22 23:43:17,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:43:17,270.270 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-22 23:43:20,865.865 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:43:20,867.867 INFO    ] Checking for system updates...
[2026-06-22 23:43:20,907.907 INFO    ] 200
[2026-06-22 23:43:20,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:43:20,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:43:20,965.965 INFO    ] No update needed
[2026-06-22 23:43:20,967.967 INFO    ] Checking for camera pi updates...
[2026-06-22 23:43:21,001.001 INFO    ] 200
[2026-06-22 23:43:21,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:43:21,048.048 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:43:21,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:43:21,134.134 INFO    ] No camera update needed
[2026-06-22 23:43:21,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:43:21,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:43:21,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:43:21,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:43:23,189.189 INFO    ] ================================================
[2026-06-22 23:43:23,205.205 INFO    ] Launching Daemon at Mon Jun 22 23:43:23 IST 2026
[2026-06-22 23:43:23,215.215 INFO    ] ================================================
[2026-06-22 23:43:23,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:43:23
[2026-06-22 23:43:24,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:43:24,604.604 INFO    ] Initializing speech engine...
[2026-06-22 23:43:24,613.613 INFO    ] 2026-06-22 23:43:24
[2026-06-22 23:43:24,873.873 INFO    ] 2026-06-22 23:43:24
[2026-06-22 23:43:24,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:43:25,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:43:25,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:43:25,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:43:25,335.335 INFO    ] time= 22/06/2026 23:43:25
[2026-06-22 23:43:25,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:43:25,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:43:25,580.580 INFO    ] No existing commands found in stream
[2026-06-22 23:43:30,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:43:30,605.605 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-22 23:43:31,052.052 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:43:31,054.054 INFO    ] Checking for system updates...
[2026-06-22 23:43:31,092.092 INFO    ] 200
[2026-06-22 23:43:31,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:43:31,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:43:31,160.160 INFO    ] No update needed
[2026-06-22 23:43:31,163.163 INFO    ] Checking for camera pi updates...
[2026-06-22 23:43:31,202.202 INFO    ] 200
[2026-06-22 23:43:31,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:43:31,261.261 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:43:31,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:43:31,350.350 INFO    ] No camera update needed
[2026-06-22 23:43:31,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:43:31,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:43:31,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:43:31,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:43:33,409.409 INFO    ] ================================================
[2026-06-22 23:43:33,424.424 INFO    ] Launching Daemon at Mon Jun 22 23:43:33 IST 2026
[2026-06-22 23:43:33,435.435 INFO    ] ================================================
[2026-06-22 23:43:34,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:43:34
[2026-06-22 23:43:34,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:43:34,944.944 INFO    ] Initializing speech engine...
[2026-06-22 23:43:34,952.952 INFO    ] 2026-06-22 23:43:34
[2026-06-22 23:43:35,247.247 INFO    ] 2026-06-22 23:43:35
[2026-06-22 23:43:35,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:43:35,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:43:35,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:43:35,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:43:35,617.617 INFO    ] time= 22/06/2026 23:43:35
[2026-06-22 23:43:35,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:43:35,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:43:35,751.751 INFO    ] No existing commands found in stream
[2026-06-22 23:43:40,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:43:40,765.765 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-22 23:43:41,812.812 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:43:41,814.814 INFO    ] Checking for system updates...
[2026-06-22 23:43:41,837.837 INFO    ] 200
[2026-06-22 23:43:41,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:43:41,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:43:41,883.883 INFO    ] No update needed
[2026-06-22 23:43:41,886.886 INFO    ] Checking for camera pi updates...
[2026-06-22 23:43:41,920.920 INFO    ] 200
[2026-06-22 23:43:41,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:43:41,968.968 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:43:42,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:43:42,057.057 INFO    ] No camera update needed
[2026-06-22 23:43:42,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:43:42,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:43:42,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:43:42,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:43:44,113.113 INFO    ] ================================================
[2026-06-22 23:43:44,128.128 INFO    ] Launching Daemon at Mon Jun 22 23:43:44 IST 2026
[2026-06-22 23:43:44,139.139 INFO    ] ================================================
[2026-06-22 23:43:44,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:43:44
[2026-06-22 23:43:45,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:43:45,462.462 INFO    ] Initializing speech engine...
[2026-06-22 23:43:45,481.481 INFO    ] 2026-06-22 23:43:45
[2026-06-22 23:43:45,770.770 INFO    ] 2026-06-22 23:43:45
[2026-06-22 23:43:45,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:43:46,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:43:46,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:43:46,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:43:46,147.147 INFO    ] time= 22/06/2026 23:43:46
[2026-06-22 23:43:46,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:43:46,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:43:46,274.274 INFO    ] No existing commands found in stream
[2026-06-22 23:43:51,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:43:51,289.289 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-22 23:43:52,436.436 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:43:52,438.438 INFO    ] Checking for system updates...
[2026-06-22 23:43:52,478.478 INFO    ] 200
[2026-06-22 23:43:52,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:43:52,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:43:52,542.542 INFO    ] No update needed
[2026-06-22 23:43:52,545.545 INFO    ] Checking for camera pi updates...
[2026-06-22 23:43:52,578.578 INFO    ] 200
[2026-06-22 23:43:52,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:43:52,621.621 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:43:52,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:43:52,706.706 INFO    ] No camera update needed
[2026-06-22 23:43:52,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:43:52,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:43:52,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:43:52,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:43:54,760.760 INFO    ] ================================================
[2026-06-22 23:43:54,775.775 INFO    ] Launching Daemon at Mon Jun 22 23:43:54 IST 2026
[2026-06-22 23:43:54,786.786 INFO    ] ================================================
[2026-06-22 23:43:55,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:43:55
[2026-06-22 23:43:55,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:43:56,133.133 INFO    ] Initializing speech engine...
[2026-06-22 23:43:56,141.141 INFO    ] 2026-06-22 23:43:56
[2026-06-22 23:43:56,401.401 INFO    ] 2026-06-22 23:43:56
[2026-06-22 23:43:56,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:43:56,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:43:56,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:43:56,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:43:56,876.876 INFO    ] time= 22/06/2026 23:43:56
[2026-06-22 23:43:56,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:43:56,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:43:57,102.102 INFO    ] No existing commands found in stream
[2026-06-22 23:44:02,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:44:02,128.128 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-22 23:44:04,824.824 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:44:04,827.827 INFO    ] Checking for system updates...
[2026-06-22 23:44:04,864.864 INFO    ] 200
[2026-06-22 23:44:04,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:44:04,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:44:04,921.921 INFO    ] No update needed
[2026-06-22 23:44:04,923.923 INFO    ] Checking for camera pi updates...
[2026-06-22 23:44:04,957.957 INFO    ] 200
[2026-06-22 23:44:04,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:44:05,006.006 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:44:05,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:44:05,089.089 INFO    ] No camera update needed
[2026-06-22 23:44:05,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:44:05,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:44:05,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:44:05,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:44:07,145.145 INFO    ] ================================================
[2026-06-22 23:44:07,160.160 INFO    ] Launching Daemon at Mon Jun 22 23:44:07 IST 2026
[2026-06-22 23:44:07,171.171 INFO    ] ================================================
[2026-06-22 23:44:07,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:44:07
[2026-06-22 23:44:08,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:44:08,761.761 INFO    ] Initializing speech engine...
[2026-06-22 23:44:08,770.770 INFO    ] 2026-06-22 23:44:08
[2026-06-22 23:44:09,046.046 INFO    ] 2026-06-22 23:44:09
[2026-06-22 23:44:09,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:44:09,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:44:09,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:44:09,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:44:09,546.546 INFO    ] time= 22/06/2026 23:44:09
[2026-06-22 23:44:09,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:44:09,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:44:09,740.740 INFO    ] No existing commands found in stream
[2026-06-22 23:44:14,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:44:14,782.782 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-22 23:44:16,771.771 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:44:16,772.772 INFO    ] Checking for system updates...
[2026-06-22 23:44:16,794.794 INFO    ] 200
[2026-06-22 23:44:16,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:44:16,826.826 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:44:16,828.828 INFO    ] No update needed
[2026-06-22 23:44:16,829.829 INFO    ] Checking for camera pi updates...
[2026-06-22 23:44:16,851.851 INFO    ] 200
[2026-06-22 23:44:16,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:44:16,889.889 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:44:16,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:44:16,978.978 INFO    ] No camera update needed
[2026-06-22 23:44:16,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:44:16,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:44:16,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:44:16,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:44:19,034.034 INFO    ] ================================================
[2026-06-22 23:44:19,049.049 INFO    ] Launching Daemon at Mon Jun 22 23:44:19 IST 2026
[2026-06-22 23:44:19,060.060 INFO    ] ================================================
[2026-06-22 23:44:19,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:44:19
[2026-06-22 23:44:20,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:44:20,391.391 INFO    ] Initializing speech engine...
[2026-06-22 23:44:20,409.409 INFO    ] 2026-06-22 23:44:20
[2026-06-22 23:44:20,660.660 INFO    ] 2026-06-22 23:44:20
[2026-06-22 23:44:20,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:44:22,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:44:22,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:44:22,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:44:22,662.662 INFO    ] time= 22/06/2026 23:44:22
[2026-06-22 23:44:22,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:44:22,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:44:22,796.796 INFO    ] No existing commands found in stream
[2026-06-22 23:44:27,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:44:27,810.810 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-22 23:44:30,616.616 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:44:30,618.618 INFO    ] Checking for system updates...
[2026-06-22 23:44:30,641.641 INFO    ] 200
[2026-06-22 23:44:30,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:44:30,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:44:30,680.680 INFO    ] No update needed
[2026-06-22 23:44:30,681.681 INFO    ] Checking for camera pi updates...
[2026-06-22 23:44:30,717.717 INFO    ] 200
[2026-06-22 23:44:30,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:44:30,769.769 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:44:30,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:44:30,959.959 INFO    ] No camera update needed
[2026-06-22 23:44:30,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:44:30,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:44:30,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:44:30,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:44:33,022.022 INFO    ] ================================================
[2026-06-22 23:44:33,037.037 INFO    ] Launching Daemon at Mon Jun 22 23:44:33 IST 2026
[2026-06-22 23:44:33,048.048 INFO    ] ================================================
[2026-06-22 23:44:33,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:44:33
[2026-06-22 23:44:34,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:44:34,482.482 INFO    ] Initializing speech engine...
[2026-06-22 23:44:34,492.492 INFO    ] 2026-06-22 23:44:34
[2026-06-22 23:44:34,783.783 INFO    ] 2026-06-22 23:44:34
[2026-06-22 23:44:34,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:44:35,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:44:35,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:44:35,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:44:35,287.287 INFO    ] time= 22/06/2026 23:44:35
[2026-06-22 23:44:35,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:44:35,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:44:35,541.541 INFO    ] No existing commands found in stream
[2026-06-22 23:44:40,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:44:40,581.581 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-22 23:44:44,862.862 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:44:44,864.864 INFO    ] Checking for system updates...
[2026-06-22 23:44:44,885.885 INFO    ] 200
[2026-06-22 23:44:44,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:44:44,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:44:44,927.927 INFO    ] No update needed
[2026-06-22 23:44:44,929.929 INFO    ] Checking for camera pi updates...
[2026-06-22 23:44:44,965.965 INFO    ] 200
[2026-06-22 23:44:44,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:44:45,010.010 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:44:45,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:44:45,103.103 INFO    ] No camera update needed
[2026-06-22 23:44:45,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:44:45,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:44:45,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:44:45,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:44:47,163.163 INFO    ] ================================================
[2026-06-22 23:44:47,178.178 INFO    ] Launching Daemon at Mon Jun 22 23:44:47 IST 2026
[2026-06-22 23:44:47,190.190 INFO    ] ================================================
[2026-06-22 23:44:47,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:44:47
[2026-06-22 23:44:48,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:44:48,909.909 INFO    ] Initializing speech engine...
[2026-06-22 23:44:48,918.918 INFO    ] 2026-06-22 23:44:48
[2026-06-22 23:44:49,207.207 INFO    ] 2026-06-22 23:44:49
[2026-06-22 23:44:49,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:44:49,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:44:49,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:44:49,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:44:49,667.667 INFO    ] time= 22/06/2026 23:44:49
[2026-06-22 23:44:49,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:44:49,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:44:49,739.739 INFO    ] No existing commands found in stream
[2026-06-22 23:44:54,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:44:54,752.752 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-22 23:44:55,885.885 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:44:55,887.887 INFO    ] Checking for system updates...
[2026-06-22 23:44:55,910.910 INFO    ] 200
[2026-06-22 23:44:55,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:44:55,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:44:55,980.980 INFO    ] No update needed
[2026-06-22 23:44:55,983.983 INFO    ] Checking for camera pi updates...
[2026-06-22 23:44:56,019.019 INFO    ] 200
[2026-06-22 23:44:56,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:44:56,071.071 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:44:56,154.154 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:44:56,157.157 INFO    ] No camera update needed
[2026-06-22 23:44:56,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:44:56,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:44:56,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:44:56,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:44:58,220.220 INFO    ] ================================================
[2026-06-22 23:44:58,236.236 INFO    ] Launching Daemon at Mon Jun 22 23:44:58 IST 2026
[2026-06-22 23:44:58,247.247 INFO    ] ================================================
[2026-06-22 23:44:58,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:44:58
[2026-06-22 23:44:59,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:44:59,825.825 INFO    ] Initializing speech engine...
[2026-06-22 23:44:59,843.843 INFO    ] 2026-06-22 23:44:59
[2026-06-22 23:45:00,130.130 INFO    ] 2026-06-22 23:45:00
[2026-06-22 23:45:00,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:45:00,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:45:00,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:45:00,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:45:00,596.596 INFO    ] time= 22/06/2026 23:45:00
[2026-06-22 23:45:00,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:45:00,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:45:00,823.823 INFO    ] No existing commands found in stream
[2026-06-22 23:45:05,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:45:05,853.853 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-22 23:45:10,067.067 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:45:10,069.069 INFO    ] Checking for system updates...
[2026-06-22 23:45:10,094.094 INFO    ] 200
[2026-06-22 23:45:10,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:45:10,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:45:10,127.127 INFO    ] No update needed
[2026-06-22 23:45:10,128.128 INFO    ] Checking for camera pi updates...
[2026-06-22 23:45:10,158.158 INFO    ] 200
[2026-06-22 23:45:10,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:45:10,201.201 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:45:10,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:45:10,315.315 INFO    ] No camera update needed
[2026-06-22 23:45:10,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:45:10,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:45:10,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:45:10,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:45:12,370.370 INFO    ] ================================================
[2026-06-22 23:45:12,386.386 INFO    ] Launching Daemon at Mon Jun 22 23:45:12 IST 2026
[2026-06-22 23:45:12,398.398 INFO    ] ================================================
[2026-06-22 23:45:12,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:45:12
[2026-06-22 23:45:13,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:45:13,812.812 INFO    ] Initializing speech engine...
[2026-06-22 23:45:13,832.832 INFO    ] 2026-06-22 23:45:13
[2026-06-22 23:45:14,082.082 INFO    ] 2026-06-22 23:45:14
[2026-06-22 23:45:14,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:45:14,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:45:14,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:45:14,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:45:14,564.564 INFO    ] time= 22/06/2026 23:45:14
[2026-06-22 23:45:14,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:45:14,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:45:14,692.692 INFO    ] No existing commands found in stream
[2026-06-22 23:45:19,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:45:19,709.709 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-22 23:45:22,861.861 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:45:22,862.862 INFO    ] Checking for system updates...
[2026-06-22 23:45:22,885.885 INFO    ] 200
[2026-06-22 23:45:22,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:45:22,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:45:22,923.923 INFO    ] No update needed
[2026-06-22 23:45:22,924.924 INFO    ] Checking for camera pi updates...
[2026-06-22 23:45:22,944.944 INFO    ] 200
[2026-06-22 23:45:22,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:45:22,988.988 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:45:23,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:45:23,076.076 INFO    ] No camera update needed
[2026-06-22 23:45:23,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:45:23,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:45:23,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:45:23,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:45:25,137.137 INFO    ] ================================================
[2026-06-22 23:45:25,153.153 INFO    ] Launching Daemon at Mon Jun 22 23:45:25 IST 2026
[2026-06-22 23:45:25,165.165 INFO    ] ================================================
[2026-06-22 23:45:25,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:45:25
[2026-06-22 23:45:26,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:45:26,592.592 INFO    ] Initializing speech engine...
[2026-06-22 23:45:26,602.602 INFO    ] 2026-06-22 23:45:26
[2026-06-22 23:45:26,850.850 INFO    ] 2026-06-22 23:45:26
[2026-06-22 23:45:26,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:45:27,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:45:27,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:45:27,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:45:27,221.221 INFO    ] time= 22/06/2026 23:45:27
[2026-06-22 23:45:27,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:45:27,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:45:27,408.408 INFO    ] No existing commands found in stream
[2026-06-22 23:45:32,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:45:32,432.432 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-22 23:45:34,377.377 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:45:34,379.379 INFO    ] Checking for system updates...
[2026-06-22 23:45:34,419.419 INFO    ] 200
[2026-06-22 23:45:34,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:45:34,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:45:34,484.484 INFO    ] No update needed
[2026-06-22 23:45:34,486.486 INFO    ] Checking for camera pi updates...
[2026-06-22 23:45:34,521.521 INFO    ] 200
[2026-06-22 23:45:34,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:45:34,570.570 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:45:34,647.647 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:45:34,650.650 INFO    ] No camera update needed
[2026-06-22 23:45:34,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:45:34,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:45:34,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:45:34,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:45:36,718.718 INFO    ] ================================================
[2026-06-22 23:45:36,734.734 INFO    ] Launching Daemon at Mon Jun 22 23:45:36 IST 2026
[2026-06-22 23:45:36,745.745 INFO    ] ================================================
[2026-06-22 23:45:37,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:45:37
[2026-06-22 23:45:38,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:45:38,393.393 INFO    ] Initializing speech engine...
[2026-06-22 23:45:38,403.403 INFO    ] 2026-06-22 23:45:38
[2026-06-22 23:45:38,711.711 INFO    ] 2026-06-22 23:45:38
[2026-06-22 23:45:38,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:45:38,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:45:38,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:45:39,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:45:39,218.218 INFO    ] time= 22/06/2026 23:45:39
[2026-06-22 23:45:39,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:45:39,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:45:39,376.376 INFO    ] No existing commands found in stream
[2026-06-22 23:45:44,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:45:44,395.395 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-22 23:45:47,422.422 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:45:47,425.425 INFO    ] Checking for system updates...
[2026-06-22 23:45:47,462.462 INFO    ] 200
[2026-06-22 23:45:47,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:45:47,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:45:47,523.523 INFO    ] No update needed
[2026-06-22 23:45:47,526.526 INFO    ] Checking for camera pi updates...
[2026-06-22 23:45:47,560.560 INFO    ] 200
[2026-06-22 23:45:47,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:45:47,606.606 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:45:47,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:45:47,698.698 INFO    ] No camera update needed
[2026-06-22 23:45:47,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:45:47,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:45:47,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:45:47,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:45:49,754.754 INFO    ] ================================================
[2026-06-22 23:45:49,775.775 INFO    ] Launching Daemon at Mon Jun 22 23:45:49 IST 2026
[2026-06-22 23:45:49,788.788 INFO    ] ================================================
[2026-06-22 23:45:50,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:45:50
[2026-06-22 23:45:50,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:45:51,195.195 INFO    ] Initializing speech engine...
[2026-06-22 23:45:51,200.200 INFO    ] 2026-06-22 23:45:51
[2026-06-22 23:45:51,482.482 INFO    ] 2026-06-22 23:45:51
[2026-06-22 23:45:51,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:45:52,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:45:52,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:45:52,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:45:52,994.994 INFO    ] time= 22/06/2026 23:45:52
[2026-06-22 23:45:52,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:45:53,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:45:53,064.064 INFO    ] No existing commands found in stream
[2026-06-22 23:45:58,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:45:58,077.077 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-22 23:46:01,341.341 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:46:01,343.343 INFO    ] Checking for system updates...
[2026-06-22 23:46:01,380.380 INFO    ] 200
[2026-06-22 23:46:01,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:46:01,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:46:01,450.450 INFO    ] No update needed
[2026-06-22 23:46:01,452.452 INFO    ] Checking for camera pi updates...
[2026-06-22 23:46:01,490.490 INFO    ] 200
[2026-06-22 23:46:01,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:46:01,534.534 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:46:01,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:46:01,610.610 INFO    ] No camera update needed
[2026-06-22 23:46:01,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:46:01,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:46:01,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:46:01,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:46:03,689.689 INFO    ] ================================================
[2026-06-22 23:46:03,705.705 INFO    ] Launching Daemon at Mon Jun 22 23:46:03 IST 2026
[2026-06-22 23:46:03,717.717 INFO    ] ================================================
[2026-06-22 23:46:04,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:46:04
[2026-06-22 23:46:05,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:46:05,263.263 INFO    ] Initializing speech engine...
[2026-06-22 23:46:05,270.270 INFO    ] 2026-06-22 23:46:05
[2026-06-22 23:46:05,542.542 INFO    ] 2026-06-22 23:46:05
[2026-06-22 23:46:05,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:46:05,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:46:05,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:46:05,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:46:06,032.032 INFO    ] time= 22/06/2026 23:46:05
[2026-06-22 23:46:06,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:46:06,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:46:06,229.229 INFO    ] No existing commands found in stream
[2026-06-22 23:46:11,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:46:11,267.267 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-22 23:46:14,105.105 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:46:14,108.108 INFO    ] Checking for system updates...
[2026-06-22 23:46:14,144.144 INFO    ] 200
[2026-06-22 23:46:14,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:46:14,205.205 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:46:14,207.207 INFO    ] No update needed
[2026-06-22 23:46:14,210.210 INFO    ] Checking for camera pi updates...
[2026-06-22 23:46:14,243.243 INFO    ] 200
[2026-06-22 23:46:14,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:46:14,291.291 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:46:14,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:46:14,372.372 INFO    ] No camera update needed
[2026-06-22 23:46:14,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:46:14,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:46:14,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:46:14,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:46:16,429.429 INFO    ] ================================================
[2026-06-22 23:46:16,446.446 INFO    ] Launching Daemon at Mon Jun 22 23:46:16 IST 2026
[2026-06-22 23:46:16,458.458 INFO    ] ================================================
[2026-06-22 23:46:17,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:46:17
[2026-06-22 23:46:17,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:46:18,067.067 INFO    ] Initializing speech engine...
[2026-06-22 23:46:18,078.078 INFO    ] 2026-06-22 23:46:18
[2026-06-22 23:46:18,350.350 INFO    ] 2026-06-22 23:46:18
[2026-06-22 23:46:18,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:46:18,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:46:18,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:46:18,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:46:18,929.929 INFO    ] time= 22/06/2026 23:46:18
[2026-06-22 23:46:18,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:46:18,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:46:19,092.092 INFO    ] No existing commands found in stream
[2026-06-22 23:46:24,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:46:24,126.126 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-22 23:46:27,298.298 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:46:27,301.301 INFO    ] Checking for system updates...
[2026-06-22 23:46:27,339.339 INFO    ] 200
[2026-06-22 23:46:27,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:46:27,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:46:27,405.405 INFO    ] No update needed
[2026-06-22 23:46:27,408.408 INFO    ] Checking for camera pi updates...
[2026-06-22 23:46:27,447.447 INFO    ] 200
[2026-06-22 23:46:27,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:46:27,492.492 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:46:27,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:46:27,577.577 INFO    ] No camera update needed
[2026-06-22 23:46:27,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:46:27,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:46:27,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:46:27,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:46:29,636.636 INFO    ] ================================================
[2026-06-22 23:46:29,652.652 INFO    ] Launching Daemon at Mon Jun 22 23:46:29 IST 2026
[2026-06-22 23:46:29,663.663 INFO    ] ================================================
[2026-06-22 23:46:30,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:46:30
[2026-06-22 23:46:30,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:46:31,012.012 INFO    ] Initializing speech engine...
[2026-06-22 23:46:31,021.021 INFO    ] 2026-06-22 23:46:31
[2026-06-22 23:46:31,313.313 INFO    ] 2026-06-22 23:46:31
[2026-06-22 23:46:31,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:46:31,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:46:31,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:46:31,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:46:31,732.732 INFO    ] time= 22/06/2026 23:46:31
[2026-06-22 23:46:31,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:46:31,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:46:31,833.833 INFO    ] No existing commands found in stream
[2026-06-22 23:46:36,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:46:36,852.852 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-22 23:46:40,967.967 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:46:40,970.970 INFO    ] Checking for system updates...
[2026-06-22 23:46:41,008.008 INFO    ] 200
[2026-06-22 23:46:41,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:46:41,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:46:41,068.068 INFO    ] No update needed
[2026-06-22 23:46:41,070.070 INFO    ] Checking for camera pi updates...
[2026-06-22 23:46:41,112.112 INFO    ] 200
[2026-06-22 23:46:41,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:46:41,157.157 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:46:41,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:46:41,236.236 INFO    ] No camera update needed
[2026-06-22 23:46:41,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:46:41,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:46:41,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:46:41,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:46:43,296.296 INFO    ] ================================================
[2026-06-22 23:46:43,312.312 INFO    ] Launching Daemon at Mon Jun 22 23:46:43 IST 2026
[2026-06-22 23:46:43,323.323 INFO    ] ================================================
[2026-06-22 23:46:43,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:46:43
[2026-06-22 23:46:44,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:46:44,965.965 INFO    ] Initializing speech engine...
[2026-06-22 23:46:44,971.971 INFO    ] 2026-06-22 23:46:44
[2026-06-22 23:46:45,251.251 INFO    ] 2026-06-22 23:46:45
[2026-06-22 23:46:45,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:46:45,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:46:45,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:46:45,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:46:45,773.773 INFO    ] time= 22/06/2026 23:46:45
[2026-06-22 23:46:45,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:46:45,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:46:45,913.913 INFO    ] No existing commands found in stream
[2026-06-22 23:46:50,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:46:50,941.941 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-22 23:46:52,935.935 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:46:52,938.938 INFO    ] Checking for system updates...
[2026-06-22 23:46:52,976.976 INFO    ] 200
[2026-06-22 23:46:52,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:46:53,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:46:53,045.045 INFO    ] No update needed
[2026-06-22 23:46:53,048.048 INFO    ] Checking for camera pi updates...
[2026-06-22 23:46:53,083.083 INFO    ] 200
[2026-06-22 23:46:53,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:46:53,128.128 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:46:53,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:46:53,235.235 INFO    ] No camera update needed
[2026-06-22 23:46:53,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:46:53,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:46:53,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:46:53,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:46:55,297.297 INFO    ] ================================================
[2026-06-22 23:46:55,313.313 INFO    ] Launching Daemon at Mon Jun 22 23:46:55 IST 2026
[2026-06-22 23:46:55,325.325 INFO    ] ================================================
[2026-06-22 23:46:55,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:46:55
[2026-06-22 23:46:56,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:46:56,925.925 INFO    ] Initializing speech engine...
[2026-06-22 23:46:56,939.939 INFO    ] 2026-06-22 23:46:56
[2026-06-22 23:46:57,252.252 INFO    ] 2026-06-22 23:46:57
[2026-06-22 23:46:57,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:46:57,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:46:57,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:46:57,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:46:57,766.766 INFO    ] time= 22/06/2026 23:46:57
[2026-06-22 23:46:57,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:46:57,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:46:57,923.923 INFO    ] No existing commands found in stream
[2026-06-22 23:47:02,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:47:02,958.958 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-22 23:47:05,731.731 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:47:05,734.734 INFO    ] Checking for system updates...
[2026-06-22 23:47:05,770.770 INFO    ] 200
[2026-06-22 23:47:05,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:47:05,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:47:05,828.828 INFO    ] No update needed
[2026-06-22 23:47:05,830.830 INFO    ] Checking for camera pi updates...
[2026-06-22 23:47:05,863.863 INFO    ] 200
[2026-06-22 23:47:05,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:47:05,907.907 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:47:06,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:47:06,033.033 INFO    ] No camera update needed
[2026-06-22 23:47:06,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:47:06,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:47:06,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:47:06,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:47:08,088.088 INFO    ] ================================================
[2026-06-22 23:47:08,105.105 INFO    ] Launching Daemon at Mon Jun 22 23:47:08 IST 2026
[2026-06-22 23:47:08,115.115 INFO    ] ================================================
[2026-06-22 23:47:08,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:47:08
[2026-06-22 23:47:09,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:47:09,527.527 INFO    ] Initializing speech engine...
[2026-06-22 23:47:09,550.550 INFO    ] 2026-06-22 23:47:09
[2026-06-22 23:47:09,800.800 INFO    ] 2026-06-22 23:47:09
[2026-06-22 23:47:09,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:47:10,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:47:10,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:47:10,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:47:10,171.171 INFO    ] time= 22/06/2026 23:47:10
[2026-06-22 23:47:10,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:47:10,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:47:10,367.367 INFO    ] No existing commands found in stream
[2026-06-22 23:47:15,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:47:15,380.380 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-22 23:47:16,595.595 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:47:16,597.597 INFO    ] Checking for system updates...
[2026-06-22 23:47:16,633.633 INFO    ] 200
[2026-06-22 23:47:16,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:47:16,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:47:16,690.690 INFO    ] No update needed
[2026-06-22 23:47:16,692.692 INFO    ] Checking for camera pi updates...
[2026-06-22 23:47:16,731.731 INFO    ] 200
[2026-06-22 23:47:16,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:47:16,774.774 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:47:16,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:47:16,844.844 INFO    ] No camera update needed
[2026-06-22 23:47:16,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:47:16,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:47:16,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:47:16,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:47:18,899.899 INFO    ] ================================================
[2026-06-22 23:47:18,915.915 INFO    ] Launching Daemon at Mon Jun 22 23:47:18 IST 2026
[2026-06-22 23:47:18,926.926 INFO    ] ================================================
[2026-06-22 23:47:19,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:47:19
[2026-06-22 23:47:20,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:47:20,375.375 INFO    ] Initializing speech engine...
[2026-06-22 23:47:20,381.381 INFO    ] 2026-06-22 23:47:20
[2026-06-22 23:47:20,654.654 INFO    ] 2026-06-22 23:47:20
[2026-06-22 23:47:20,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:47:22,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:47:22,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:47:22,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:47:22,730.730 INFO    ] time= 22/06/2026 23:47:22
[2026-06-22 23:47:22,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:47:22,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:47:22,852.852 INFO    ] No existing commands found in stream
[2026-06-22 23:47:27,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:47:27,870.870 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-22 23:47:30,887.887 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:47:30,890.890 INFO    ] Checking for system updates...
[2026-06-22 23:47:30,929.929 INFO    ] 200
[2026-06-22 23:47:30,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:47:30,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:47:30,987.987 INFO    ] No update needed
[2026-06-22 23:47:30,990.990 INFO    ] Checking for camera pi updates...
[2026-06-22 23:47:31,024.024 INFO    ] 200
[2026-06-22 23:47:31,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:47:31,068.068 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:47:31,182.182 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:47:31,184.184 INFO    ] No camera update needed
[2026-06-22 23:47:31,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:47:31,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:47:31,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:47:31,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:47:33,241.241 INFO    ] ================================================
[2026-06-22 23:47:33,256.256 INFO    ] Launching Daemon at Mon Jun 22 23:47:33 IST 2026
[2026-06-22 23:47:33,268.268 INFO    ] ================================================
[2026-06-22 23:47:33,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:47:33
[2026-06-22 23:47:34,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:47:34,694.694 INFO    ] Initializing speech engine...
[2026-06-22 23:47:34,703.703 INFO    ] 2026-06-22 23:47:34
[2026-06-22 23:47:34,950.950 INFO    ] 2026-06-22 23:47:34
[2026-06-22 23:47:34,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:47:35,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:47:35,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:47:35,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:47:35,321.321 INFO    ] time= 22/06/2026 23:47:35
[2026-06-22 23:47:35,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:47:35,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:47:35,511.511 INFO    ] No existing commands found in stream
[2026-06-22 23:47:40,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:47:40,526.526 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-22 23:47:41,631.631 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:47:41,634.634 INFO    ] Checking for system updates...
[2026-06-22 23:47:41,671.671 INFO    ] 200
[2026-06-22 23:47:41,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:47:41,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:47:41,730.730 INFO    ] No update needed
[2026-06-22 23:47:41,733.733 INFO    ] Checking for camera pi updates...
[2026-06-22 23:47:41,767.767 INFO    ] 200
[2026-06-22 23:47:41,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:47:41,816.816 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:47:41,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:47:41,899.899 INFO    ] No camera update needed
[2026-06-22 23:47:41,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:47:41,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:47:41,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:47:41,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:47:43,956.956 INFO    ] ================================================
[2026-06-22 23:47:43,972.972 INFO    ] Launching Daemon at Mon Jun 22 23:47:43 IST 2026
[2026-06-22 23:47:43,983.983 INFO    ] ================================================
[2026-06-22 23:47:44,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:47:44
[2026-06-22 23:47:45,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:47:45,428.428 INFO    ] Initializing speech engine...
[2026-06-22 23:47:45,440.440 INFO    ] 2026-06-22 23:47:45
[2026-06-22 23:47:45,692.692 INFO    ] 2026-06-22 23:47:45
[2026-06-22 23:47:45,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:47:45,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:47:45,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:47:46,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:47:46,169.169 INFO    ] time= 22/06/2026 23:47:46
[2026-06-22 23:47:46,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:47:46,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:47:46,339.339 INFO    ] No existing commands found in stream
[2026-06-22 23:47:51,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:47:51,379.379 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-22 23:47:54,048.048 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:47:54,051.051 INFO    ] Checking for system updates...
[2026-06-22 23:47:54,089.089 INFO    ] 200
[2026-06-22 23:47:54,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:47:54,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:47:54,151.151 INFO    ] No update needed
[2026-06-22 23:47:54,153.153 INFO    ] Checking for camera pi updates...
[2026-06-22 23:47:54,189.189 INFO    ] 200
[2026-06-22 23:47:54,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:47:54,240.240 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:47:54,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:47:54,323.323 INFO    ] No camera update needed
[2026-06-22 23:47:54,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:47:54,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:47:54,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:47:54,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:47:56,384.384 INFO    ] ================================================
[2026-06-22 23:47:56,400.400 INFO    ] Launching Daemon at Mon Jun 22 23:47:56 IST 2026
[2026-06-22 23:47:56,412.412 INFO    ] ================================================
[2026-06-22 23:47:56,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:47:56
[2026-06-22 23:47:57,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:47:57,865.865 INFO    ] Initializing speech engine...
[2026-06-22 23:47:57,872.872 INFO    ] 2026-06-22 23:47:57
[2026-06-22 23:47:58,151.151 INFO    ] 2026-06-22 23:47:58
[2026-06-22 23:47:58,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:47:58,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:47:58,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:47:58,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:47:58,624.624 INFO    ] time= 22/06/2026 23:47:58
[2026-06-22 23:47:58,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:47:58,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:47:58,866.866 INFO    ] No existing commands found in stream
[2026-06-22 23:48:03,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:48:03,900.900 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-22 23:48:05,693.693 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:48:05,696.696 INFO    ] Checking for system updates...
[2026-06-22 23:48:05,734.734 INFO    ] 200
[2026-06-22 23:48:05,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:48:05,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:48:05,795.795 INFO    ] No update needed
[2026-06-22 23:48:05,797.797 INFO    ] Checking for camera pi updates...
[2026-06-22 23:48:05,833.833 INFO    ] 200
[2026-06-22 23:48:05,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:48:05,881.881 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:48:05,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:48:05,959.959 INFO    ] No camera update needed
[2026-06-22 23:48:05,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:48:05,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:48:05,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:48:05,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:48:08,018.018 INFO    ] ================================================
[2026-06-22 23:48:08,033.033 INFO    ] Launching Daemon at Mon Jun 22 23:48:08 IST 2026
[2026-06-22 23:48:08,043.043 INFO    ] ================================================
[2026-06-22 23:48:08,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:48:08
[2026-06-22 23:48:09,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:48:09,475.475 INFO    ] Initializing speech engine...
[2026-06-22 23:48:09,482.482 INFO    ] 2026-06-22 23:48:09
[2026-06-22 23:48:09,741.741 INFO    ] 2026-06-22 23:48:09
[2026-06-22 23:48:09,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:48:09,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:48:10,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:48:10,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:48:10,207.207 INFO    ] time= 22/06/2026 23:48:10
[2026-06-22 23:48:10,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:48:10,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:48:10,413.413 INFO    ] No existing commands found in stream
[2026-06-22 23:48:15,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:48:15,439.439 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-22 23:48:17,961.961 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:48:17,964.964 INFO    ] Checking for system updates...
[2026-06-22 23:48:18,000.000 INFO    ] 200
[2026-06-22 23:48:18,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:48:18,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:48:18,059.059 INFO    ] No update needed
[2026-06-22 23:48:18,061.061 INFO    ] Checking for camera pi updates...
[2026-06-22 23:48:18,098.098 INFO    ] 200
[2026-06-22 23:48:18,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:48:18,145.145 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:48:18,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:48:18,238.238 INFO    ] No camera update needed
[2026-06-22 23:48:18,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:48:18,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:48:18,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:48:18,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:48:20,294.294 INFO    ] ================================================
[2026-06-22 23:48:20,309.309 INFO    ] Launching Daemon at Mon Jun 22 23:48:20 IST 2026
[2026-06-22 23:48:20,319.319 INFO    ] ================================================
[2026-06-22 23:48:20,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:48:20
[2026-06-22 23:48:21,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:48:21,782.782 INFO    ] Initializing speech engine...
[2026-06-22 23:48:21,793.793 INFO    ] 2026-06-22 23:48:21
[2026-06-22 23:48:22,040.040 INFO    ] 2026-06-22 23:48:22
[2026-06-22 23:48:22,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:48:22,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:48:22,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:48:22,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:48:22,521.521 INFO    ] time= 22/06/2026 23:48:22
[2026-06-22 23:48:22,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:48:22,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:48:22,732.732 INFO    ] No existing commands found in stream
[2026-06-22 23:48:27,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:48:27,760.760 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-22 23:48:30,392.392 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:48:30,394.394 INFO    ] Checking for system updates...
[2026-06-22 23:48:30,417.417 INFO    ] 200
[2026-06-22 23:48:30,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:48:30,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:48:30,459.459 INFO    ] No update needed
[2026-06-22 23:48:30,461.461 INFO    ] Checking for camera pi updates...
[2026-06-22 23:48:30,481.481 INFO    ] 200
[2026-06-22 23:48:30,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:48:30,512.512 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:48:30,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:48:30,600.600 INFO    ] No camera update needed
[2026-06-22 23:48:30,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:48:30,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:48:30,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:48:30,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:48:32,661.661 INFO    ] ================================================
[2026-06-22 23:48:32,679.679 INFO    ] Launching Daemon at Mon Jun 22 23:48:32 IST 2026
[2026-06-22 23:48:32,692.692 INFO    ] ================================================
[2026-06-22 23:48:33,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:48:33
[2026-06-22 23:48:33,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:48:34,121.121 INFO    ] Initializing speech engine...
[2026-06-22 23:48:34,140.140 INFO    ] 2026-06-22 23:48:34
[2026-06-22 23:48:34,391.391 INFO    ] 2026-06-22 23:48:34
[2026-06-22 23:48:34,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:48:34,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:48:34,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:48:34,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:48:34,767.767 INFO    ] time= 22/06/2026 23:48:34
[2026-06-22 23:48:34,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:48:34,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:48:34,948.948 INFO    ] No existing commands found in stream
[2026-06-22 23:48:39,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:48:39,981.981 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-22 23:48:44,227.227 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:48:44,228.228 INFO    ] Checking for system updates...
[2026-06-22 23:48:44,250.250 INFO    ] 200
[2026-06-22 23:48:44,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:48:44,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:48:44,283.283 INFO    ] No update needed
[2026-06-22 23:48:44,284.284 INFO    ] Checking for camera pi updates...
[2026-06-22 23:48:44,306.306 INFO    ] 200
[2026-06-22 23:48:44,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:48:44,341.341 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:48:44,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:48:44,524.524 INFO    ] No camera update needed
[2026-06-22 23:48:44,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:48:44,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:48:44,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:48:44,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:48:46,578.578 INFO    ] ================================================
[2026-06-22 23:48:46,593.593 INFO    ] Launching Daemon at Mon Jun 22 23:48:46 IST 2026
[2026-06-22 23:48:46,604.604 INFO    ] ================================================
[2026-06-22 23:48:47,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:48:47
[2026-06-22 23:48:47,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:48:47,966.966 INFO    ] Initializing speech engine...
[2026-06-22 23:48:47,975.975 INFO    ] 2026-06-22 23:48:47
[2026-06-22 23:48:48,268.268 INFO    ] 2026-06-22 23:48:48
[2026-06-22 23:48:48,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:48:48,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:48:48,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:48:48,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:48:48,682.682 INFO    ] time= 22/06/2026 23:48:48
[2026-06-22 23:48:48,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:48:48,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:48:48,765.765 INFO    ] No existing commands found in stream
[2026-06-22 23:48:53,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:48:53,780.780 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-22 23:48:56,202.202 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:48:56,205.205 INFO    ] Checking for system updates...
[2026-06-22 23:48:56,242.242 INFO    ] 200
[2026-06-22 23:48:56,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:48:56,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:48:56,309.309 INFO    ] No update needed
[2026-06-22 23:48:56,311.311 INFO    ] Checking for camera pi updates...
[2026-06-22 23:48:56,346.346 INFO    ] 200
[2026-06-22 23:48:56,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:48:56,390.390 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:48:56,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:48:56,479.479 INFO    ] No camera update needed
[2026-06-22 23:48:56,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:48:56,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:48:56,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:48:56,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:48:58,533.533 INFO    ] ================================================
[2026-06-22 23:48:58,549.549 INFO    ] Launching Daemon at Mon Jun 22 23:48:58 IST 2026
[2026-06-22 23:48:58,560.560 INFO    ] ================================================
[2026-06-22 23:48:59,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:48:59
[2026-06-22 23:48:59,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:48:59,926.926 INFO    ] Initializing speech engine...
[2026-06-22 23:48:59,935.935 INFO    ] 2026-06-22 23:48:59
[2026-06-22 23:49:00,181.181 INFO    ] 2026-06-22 23:49:00
[2026-06-22 23:49:00,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:49:00,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:49:00,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:49:00,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:49:00,647.647 INFO    ] time= 22/06/2026 23:49:00
[2026-06-22 23:49:00,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:49:00,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:49:00,830.830 INFO    ] No existing commands found in stream
[2026-06-22 23:49:05,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:49:05,870.870 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-22 23:49:06,438.438 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:49:06,440.440 INFO    ] Checking for system updates...
[2026-06-22 23:49:06,477.477 INFO    ] 200
[2026-06-22 23:49:06,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:49:06,537.537 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:49:06,538.538 INFO    ] No update needed
[2026-06-22 23:49:06,540.540 INFO    ] Checking for camera pi updates...
[2026-06-22 23:49:06,566.566 INFO    ] 200
[2026-06-22 23:49:06,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:49:06,590.590 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:49:06,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:49:06,664.664 INFO    ] No camera update needed
[2026-06-22 23:49:06,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:49:06,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:49:06,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:49:06,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:49:08,721.721 INFO    ] ================================================
[2026-06-22 23:49:08,738.738 INFO    ] Launching Daemon at Mon Jun 22 23:49:08 IST 2026
[2026-06-22 23:49:08,749.749 INFO    ] ================================================
[2026-06-22 23:49:09,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:49:09
[2026-06-22 23:49:09,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:49:10,126.126 INFO    ] Initializing speech engine...
[2026-06-22 23:49:10,132.132 INFO    ] 2026-06-22 23:49:10
[2026-06-22 23:49:10,395.395 INFO    ] 2026-06-22 23:49:10
[2026-06-22 23:49:10,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:49:10,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:49:10,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:49:10,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:49:10,863.863 INFO    ] time= 22/06/2026 23:49:10
[2026-06-22 23:49:10,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:49:10,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:49:11,065.065 INFO    ] No existing commands found in stream
[2026-06-22 23:49:16,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:49:16,095.095 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-22 23:49:17,165.165 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:49:17,166.166 INFO    ] Checking for system updates...
[2026-06-22 23:49:17,187.187 INFO    ] 200
[2026-06-22 23:49:17,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:49:17,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:49:17,233.233 INFO    ] No update needed
[2026-06-22 23:49:17,236.236 INFO    ] Checking for camera pi updates...
[2026-06-22 23:49:17,273.273 INFO    ] 200
[2026-06-22 23:49:17,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:49:17,321.321 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:49:17,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:49:17,408.408 INFO    ] No camera update needed
[2026-06-22 23:49:17,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:49:17,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:49:17,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:49:17,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:49:19,464.464 INFO    ] ================================================
[2026-06-22 23:49:19,479.479 INFO    ] Launching Daemon at Mon Jun 22 23:49:19 IST 2026
[2026-06-22 23:49:19,490.490 INFO    ] ================================================
[2026-06-22 23:49:20,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:49:20
[2026-06-22 23:49:20,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:49:20,945.945 INFO    ] Initializing speech engine...
[2026-06-22 23:49:20,950.950 INFO    ] 2026-06-22 23:49:20
[2026-06-22 23:49:21,209.209 INFO    ] 2026-06-22 23:49:21
[2026-06-22 23:49:21,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:49:21,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:49:21,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:49:21,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:49:21,673.673 INFO    ] time= 22/06/2026 23:49:21
[2026-06-22 23:49:21,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:49:21,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:49:21,879.879 INFO    ] No existing commands found in stream
[2026-06-22 23:49:26,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:49:26,911.911 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-22 23:49:27,921.921 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:49:27,924.924 INFO    ] Checking for system updates...
[2026-06-22 23:49:27,960.960 INFO    ] 200
[2026-06-22 23:49:27,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:49:28,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:49:28,018.018 INFO    ] No update needed
[2026-06-22 23:49:28,021.021 INFO    ] Checking for camera pi updates...
[2026-06-22 23:49:28,055.055 INFO    ] 200
[2026-06-22 23:49:28,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:49:28,097.097 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:49:28,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:49:28,198.198 INFO    ] No camera update needed
[2026-06-22 23:49:28,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:49:28,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:49:28,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:49:28,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:49:30,255.255 INFO    ] ================================================
[2026-06-22 23:49:30,270.270 INFO    ] Launching Daemon at Mon Jun 22 23:49:30 IST 2026
[2026-06-22 23:49:30,281.281 INFO    ] ================================================
[2026-06-22 23:49:30,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:49:30
[2026-06-22 23:49:31,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:49:31,730.730 INFO    ] Initializing speech engine...
[2026-06-22 23:49:31,740.740 INFO    ] 2026-06-22 23:49:31
[2026-06-22 23:49:32,008.008 INFO    ] 2026-06-22 23:49:31
[2026-06-22 23:49:32,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:49:32,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:49:32,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:49:32,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:49:32,405.405 INFO    ] time= 22/06/2026 23:49:32
[2026-06-22 23:49:32,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:49:32,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:49:32,577.577 INFO    ] No existing commands found in stream
[2026-06-22 23:49:37,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:49:37,611.611 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-22 23:49:40,658.658 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:49:40,661.661 INFO    ] Checking for system updates...
[2026-06-22 23:49:40,698.698 INFO    ] 200
[2026-06-22 23:49:40,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:49:40,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:49:40,765.765 INFO    ] No update needed
[2026-06-22 23:49:40,768.768 INFO    ] Checking for camera pi updates...
[2026-06-22 23:49:40,803.803 INFO    ] 200
[2026-06-22 23:49:40,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:49:40,870.870 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:49:40,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:49:40,965.965 INFO    ] No camera update needed
[2026-06-22 23:49:40,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:49:40,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:49:40,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:49:40,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:49:43,024.024 INFO    ] ================================================
[2026-06-22 23:49:43,040.040 INFO    ] Launching Daemon at Mon Jun 22 23:49:43 IST 2026
[2026-06-22 23:49:43,051.051 INFO    ] ================================================
[2026-06-22 23:49:43,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:49:43
[2026-06-22 23:49:44,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:49:44,658.658 INFO    ] Initializing speech engine...
[2026-06-22 23:49:44,666.666 INFO    ] 2026-06-22 23:49:44
[2026-06-22 23:49:44,937.937 INFO    ] 2026-06-22 23:49:44
[2026-06-22 23:49:44,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:49:45,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:49:45,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:49:45,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:49:45,438.438 INFO    ] time= 22/06/2026 23:49:45
[2026-06-22 23:49:45,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:49:45,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:49:45,688.688 INFO    ] No existing commands found in stream
[2026-06-22 23:49:50,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:49:50,722.722 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-22 23:49:55,527.527 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:49:55,528.528 INFO    ] Checking for system updates...
[2026-06-22 23:49:55,552.552 INFO    ] 200
[2026-06-22 23:49:55,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:49:55,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:49:55,613.613 INFO    ] No update needed
[2026-06-22 23:49:55,620.620 INFO    ] Checking for camera pi updates...
[2026-06-22 23:49:55,658.658 INFO    ] 200
[2026-06-22 23:49:55,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:49:55,703.703 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:49:55,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:49:55,791.791 INFO    ] No camera update needed
[2026-06-22 23:49:55,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:49:55,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:49:55,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:49:55,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:49:57,847.847 INFO    ] ================================================
[2026-06-22 23:49:57,862.862 INFO    ] Launching Daemon at Mon Jun 22 23:49:57 IST 2026
[2026-06-22 23:49:57,872.872 INFO    ] ================================================
[2026-06-22 23:49:58,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:49:58
[2026-06-22 23:49:58,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:49:59,225.225 INFO    ] Initializing speech engine...
[2026-06-22 23:49:59,234.234 INFO    ] 2026-06-22 23:49:59
[2026-06-22 23:49:59,478.478 INFO    ] 2026-06-22 23:49:59
[2026-06-22 23:49:59,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:49:59,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:49:59,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:49:59,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:49:59,943.943 INFO    ] time= 22/06/2026 23:49:59
[2026-06-22 23:50:00,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:50:00,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:50:00,167.167 INFO    ] No existing commands found in stream
[2026-06-22 23:50:05,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:50:05,197.197 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-22 23:50:08,553.553 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:50:08,556.556 INFO    ] Checking for system updates...
[2026-06-22 23:50:08,594.594 INFO    ] 200
[2026-06-22 23:50:08,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:50:08,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:50:08,657.657 INFO    ] No update needed
[2026-06-22 23:50:08,660.660 INFO    ] Checking for camera pi updates...
[2026-06-22 23:50:08,696.696 INFO    ] 200
[2026-06-22 23:50:08,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:50:08,750.750 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:50:08,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:50:08,841.841 INFO    ] No camera update needed
[2026-06-22 23:50:08,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:50:08,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:50:08,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:50:08,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:50:10,908.908 INFO    ] ================================================
[2026-06-22 23:50:10,936.936 INFO    ] Launching Daemon at Mon Jun 22 23:50:10 IST 2026
[2026-06-22 23:50:10,950.950 INFO    ] ================================================
[2026-06-22 23:50:11,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:50:11
[2026-06-22 23:50:12,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:50:12,426.426 INFO    ] Initializing speech engine...
[2026-06-22 23:50:12,450.450 INFO    ] 2026-06-22 23:50:12
[2026-06-22 23:50:12,726.726 INFO    ] 2026-06-22 23:50:12
[2026-06-22 23:50:12,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:50:12,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:50:12,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:50:13,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:50:13,164.164 INFO    ] time= 22/06/2026 23:50:13
[2026-06-22 23:50:13,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:50:13,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:50:13,425.425 INFO    ] No existing commands found in stream
[2026-06-22 23:50:18,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:50:18,456.456 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-22 23:50:19,853.853 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:50:19,856.856 INFO    ] Checking for system updates...
[2026-06-22 23:50:19,893.893 INFO    ] 200
[2026-06-22 23:50:19,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:50:19,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:50:19,952.952 INFO    ] No update needed
[2026-06-22 23:50:19,955.955 INFO    ] Checking for camera pi updates...
[2026-06-22 23:50:19,992.992 INFO    ] 200
[2026-06-22 23:50:19,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:50:20,040.040 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:50:20,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:50:20,135.135 INFO    ] No camera update needed
[2026-06-22 23:50:20,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:50:20,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:50:20,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:50:20,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:50:22,191.191 INFO    ] ================================================
[2026-06-22 23:50:22,207.207 INFO    ] Launching Daemon at Mon Jun 22 23:50:22 IST 2026
[2026-06-22 23:50:22,217.217 INFO    ] ================================================
[2026-06-22 23:50:22,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:50:22
[2026-06-22 23:50:23,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:50:23,659.659 INFO    ] Initializing speech engine...
[2026-06-22 23:50:23,667.667 INFO    ] 2026-06-22 23:50:23
[2026-06-22 23:50:23,914.914 INFO    ] 2026-06-22 23:50:23
[2026-06-22 23:50:23,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:50:25,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:50:25,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:50:25,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:50:25,254.254 INFO    ] time= 22/06/2026 23:50:25
[2026-06-22 23:50:25,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:50:25,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:50:25,346.346 INFO    ] No existing commands found in stream
[2026-06-22 23:50:30,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:50:30,361.361 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-22 23:50:32,273.273 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:50:32,276.276 INFO    ] Checking for system updates...
[2026-06-22 23:50:32,319.319 INFO    ] 200
[2026-06-22 23:50:32,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:50:32,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:50:32,381.381 INFO    ] No update needed
[2026-06-22 23:50:32,384.384 INFO    ] Checking for camera pi updates...
[2026-06-22 23:50:32,421.421 INFO    ] 200
[2026-06-22 23:50:32,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:50:32,472.472 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:50:32,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:50:32,536.536 INFO    ] No camera update needed
[2026-06-22 23:50:32,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:50:32,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:50:32,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:50:32,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:50:34,597.597 INFO    ] ================================================
[2026-06-22 23:50:34,612.612 INFO    ] Launching Daemon at Mon Jun 22 23:50:34 IST 2026
[2026-06-22 23:50:34,623.623 INFO    ] ================================================
[2026-06-22 23:50:35,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:50:35
[2026-06-22 23:50:35,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:50:36,276.276 INFO    ] Initializing speech engine...
[2026-06-22 23:50:36,284.284 INFO    ] 2026-06-22 23:50:36
[2026-06-22 23:50:36,579.579 INFO    ] 2026-06-22 23:50:36
[2026-06-22 23:50:36,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:50:36,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:50:36,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:50:36,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:50:37,021.021 INFO    ] time= 22/06/2026 23:50:37
[2026-06-22 23:50:37,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:50:37,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:50:37,165.165 INFO    ] No existing commands found in stream
[2026-06-22 23:50:42,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:50:42,191.191 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-22 23:50:43,100.100 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:50:43,103.103 INFO    ] Checking for system updates...
[2026-06-22 23:50:43,141.141 INFO    ] 200
[2026-06-22 23:50:43,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:50:43,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:50:43,201.201 INFO    ] No update needed
[2026-06-22 23:50:43,204.204 INFO    ] Checking for camera pi updates...
[2026-06-22 23:50:43,239.239 INFO    ] 200
[2026-06-22 23:50:43,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:50:43,284.284 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:50:43,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:50:43,339.339 INFO    ] No camera update needed
[2026-06-22 23:50:43,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:50:43,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:50:43,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:50:43,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:50:45,393.393 INFO    ] ================================================
[2026-06-22 23:50:45,409.409 INFO    ] Launching Daemon at Mon Jun 22 23:50:45 IST 2026
[2026-06-22 23:50:45,420.420 INFO    ] ================================================
[2026-06-22 23:50:45,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:50:45
[2026-06-22 23:50:46,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:50:46,751.751 INFO    ] Initializing speech engine...
[2026-06-22 23:50:46,759.759 INFO    ] 2026-06-22 23:50:46
[2026-06-22 23:50:47,064.064 INFO    ] 2026-06-22 23:50:47
[2026-06-22 23:50:47,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:50:47,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:50:47,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:50:47,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:50:47,494.494 INFO    ] time= 22/06/2026 23:50:47
[2026-06-22 23:50:47,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:50:47,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:50:47,588.588 INFO    ] No existing commands found in stream
[2026-06-22 23:50:52,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:50:52,607.607 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-22 23:50:55,307.307 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:50:55,310.310 INFO    ] Checking for system updates...
[2026-06-22 23:50:55,347.347 INFO    ] 200
[2026-06-22 23:50:55,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:50:55,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:50:55,405.405 INFO    ] No update needed
[2026-06-22 23:50:55,408.408 INFO    ] Checking for camera pi updates...
[2026-06-22 23:50:55,442.442 INFO    ] 200
[2026-06-22 23:50:55,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:50:55,491.491 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:50:55,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:50:55,696.696 INFO    ] No camera update needed
[2026-06-22 23:50:55,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:50:55,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:50:55,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:50:55,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:50:57,753.753 INFO    ] ================================================
[2026-06-22 23:50:57,769.769 INFO    ] Launching Daemon at Mon Jun 22 23:50:57 IST 2026
[2026-06-22 23:50:57,780.780 INFO    ] ================================================
[2026-06-22 23:50:58,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:50:58
[2026-06-22 23:50:58,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:50:59,192.192 INFO    ] Initializing speech engine...
[2026-06-22 23:50:59,197.197 INFO    ] 2026-06-22 23:50:59
[2026-06-22 23:50:59,498.498 INFO    ] 2026-06-22 23:50:59
[2026-06-22 23:50:59,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:50:59,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:50:59,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:50:59,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:50:59,933.933 INFO    ] time= 22/06/2026 23:50:59
[2026-06-22 23:50:59,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:50:59,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:51:00,021.021 INFO    ] No existing commands found in stream
[2026-06-22 23:51:05,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:51:05,036.036 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-22 23:51:07,066.066 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:51:07,068.068 INFO    ] Checking for system updates...
[2026-06-22 23:51:07,104.104 INFO    ] 200
[2026-06-22 23:51:07,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:51:07,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:51:07,163.163 INFO    ] No update needed
[2026-06-22 23:51:07,165.165 INFO    ] Checking for camera pi updates...
[2026-06-22 23:51:07,200.200 INFO    ] 200
[2026-06-22 23:51:07,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:51:07,243.243 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:51:07,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:51:07,329.329 INFO    ] No camera update needed
[2026-06-22 23:51:07,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:51:07,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:51:07,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:51:07,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:51:09,391.391 INFO    ] ================================================
[2026-06-22 23:51:09,407.407 INFO    ] Launching Daemon at Mon Jun 22 23:51:09 IST 2026
[2026-06-22 23:51:09,417.417 INFO    ] ================================================
[2026-06-22 23:51:09,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:51:09
[2026-06-22 23:51:10,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:51:10,727.727 INFO    ] Initializing speech engine...
[2026-06-22 23:51:10,742.742 INFO    ] 2026-06-22 23:51:10
[2026-06-22 23:51:11,005.005 INFO    ] 2026-06-22 23:51:10
[2026-06-22 23:51:11,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:51:11,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:51:11,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:51:11,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:51:11,376.376 INFO    ] time= 22/06/2026 23:51:11
[2026-06-22 23:51:11,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:51:11,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:51:11,566.566 INFO    ] No existing commands found in stream
[2026-06-22 23:51:16,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:51:16,588.588 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-22 23:51:20,377.377 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:51:20,379.379 INFO    ] Checking for system updates...
[2026-06-22 23:51:20,415.415 INFO    ] 200
[2026-06-22 23:51:20,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:51:20,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:51:20,481.481 INFO    ] No update needed
[2026-06-22 23:51:20,483.483 INFO    ] Checking for camera pi updates...
[2026-06-22 23:51:20,521.521 INFO    ] 200
[2026-06-22 23:51:20,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:51:20,570.570 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:51:20,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:51:20,675.675 INFO    ] No camera update needed
[2026-06-22 23:51:20,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:51:20,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:51:20,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:51:20,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:51:22,731.731 INFO    ] ================================================
[2026-06-22 23:51:22,747.747 INFO    ] Launching Daemon at Mon Jun 22 23:51:22 IST 2026
[2026-06-22 23:51:22,758.758 INFO    ] ================================================
[2026-06-22 23:51:23,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:51:23
[2026-06-22 23:51:23,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:51:24,096.096 INFO    ] Initializing speech engine...
[2026-06-22 23:51:24,103.103 INFO    ] 2026-06-22 23:51:24
[2026-06-22 23:51:24,346.346 INFO    ] 2026-06-22 23:51:24
[2026-06-22 23:51:24,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:51:24,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:51:24,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:51:25,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:51:25,093.093 INFO    ] time= 22/06/2026 23:51:25
[2026-06-22 23:51:25,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:51:25,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:51:25,342.342 INFO    ] No existing commands found in stream
[2026-06-22 23:51:30,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:51:30,360.360 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-22 23:51:34,250.250 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:51:34,253.253 INFO    ] Checking for system updates...
[2026-06-22 23:51:34,293.293 INFO    ] 200
[2026-06-22 23:51:34,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:51:34,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:51:34,351.351 INFO    ] No update needed
[2026-06-22 23:51:34,353.353 INFO    ] Checking for camera pi updates...
[2026-06-22 23:51:34,391.391 INFO    ] 200
[2026-06-22 23:51:34,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:51:34,440.440 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:51:34,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:51:34,538.538 INFO    ] No camera update needed
[2026-06-22 23:51:34,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:51:34,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:51:34,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:51:34,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:51:36,595.595 INFO    ] ================================================
[2026-06-22 23:51:36,611.611 INFO    ] Launching Daemon at Mon Jun 22 23:51:36 IST 2026
[2026-06-22 23:51:36,621.621 INFO    ] ================================================
[2026-06-22 23:51:37,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:51:37
[2026-06-22 23:51:37,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:51:38,040.040 INFO    ] Initializing speech engine...
[2026-06-22 23:51:38,049.049 INFO    ] 2026-06-22 23:51:38
[2026-06-22 23:51:38,314.314 INFO    ] 2026-06-22 23:51:38
[2026-06-22 23:51:38,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:51:38,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:51:38,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:51:38,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:51:38,725.725 INFO    ] time= 22/06/2026 23:51:38
[2026-06-22 23:51:38,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:51:38,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:51:38,816.816 INFO    ] No existing commands found in stream
[2026-06-22 23:51:43,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:51:43,854.854 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-22 23:51:45,912.912 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:51:45,915.915 INFO    ] Checking for system updates...
[2026-06-22 23:51:45,951.951 INFO    ] 200
[2026-06-22 23:51:45,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:51:46,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:51:46,014.014 INFO    ] No update needed
[2026-06-22 23:51:46,017.017 INFO    ] Checking for camera pi updates...
[2026-06-22 23:51:46,051.051 INFO    ] 200
[2026-06-22 23:51:46,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:51:46,096.096 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:51:46,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:51:46,153.153 INFO    ] No camera update needed
[2026-06-22 23:51:46,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:51:46,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:51:46,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:51:46,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:51:48,208.208 INFO    ] ================================================
[2026-06-22 23:51:48,223.223 INFO    ] Launching Daemon at Mon Jun 22 23:51:48 IST 2026
[2026-06-22 23:51:48,233.233 INFO    ] ================================================
[2026-06-22 23:51:48,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:51:48
[2026-06-22 23:51:49,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:51:49,748.748 INFO    ] Initializing speech engine...
[2026-06-22 23:51:49,762.762 INFO    ] 2026-06-22 23:51:49
[2026-06-22 23:51:50,065.065 INFO    ] 2026-06-22 23:51:50
[2026-06-22 23:51:50,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:51:50,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:51:50,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:51:50,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:51:50,517.517 INFO    ] time= 22/06/2026 23:51:50
[2026-06-22 23:51:50,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:51:50,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:51:50,717.717 INFO    ] No existing commands found in stream
[2026-06-22 23:51:55,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:51:55,741.741 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-22 23:51:59,402.402 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:51:59,405.405 INFO    ] Checking for system updates...
[2026-06-22 23:51:59,443.443 INFO    ] 200
[2026-06-22 23:51:59,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:51:59,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:51:59,501.501 INFO    ] No update needed
[2026-06-22 23:51:59,504.504 INFO    ] Checking for camera pi updates...
[2026-06-22 23:51:59,540.540 INFO    ] 200
[2026-06-22 23:51:59,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:51:59,587.587 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:51:59,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:51:59,670.670 INFO    ] No camera update needed
[2026-06-22 23:51:59,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:51:59,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:51:59,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:51:59,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:52:01,724.724 INFO    ] ================================================
[2026-06-22 23:52:01,739.739 INFO    ] Launching Daemon at Mon Jun 22 23:52:01 IST 2026
[2026-06-22 23:52:01,749.749 INFO    ] ================================================
[2026-06-22 23:52:02,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:52:02
[2026-06-22 23:52:03,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:52:03,512.512 INFO    ] Initializing speech engine...
[2026-06-22 23:52:03,529.529 INFO    ] 2026-06-22 23:52:03
[2026-06-22 23:52:03,822.822 INFO    ] 2026-06-22 23:52:03
[2026-06-22 23:52:03,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:52:04,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:52:04,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:52:04,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:52:04,204.204 INFO    ] time= 22/06/2026 23:52:04
[2026-06-22 23:52:04,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:52:04,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:52:04,332.332 INFO    ] No existing commands found in stream
[2026-06-22 23:52:09,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:52:09,347.347 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-22 23:52:11,326.326 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:52:11,328.328 INFO    ] Checking for system updates...
[2026-06-22 23:52:11,364.364 INFO    ] 200
[2026-06-22 23:52:11,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:52:11,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:52:11,429.429 INFO    ] No update needed
[2026-06-22 23:52:11,432.432 INFO    ] Checking for camera pi updates...
[2026-06-22 23:52:11,469.469 INFO    ] 200
[2026-06-22 23:52:11,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:52:11,517.517 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:52:11,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:52:11,591.591 INFO    ] No camera update needed
[2026-06-22 23:52:11,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:52:11,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:52:11,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:52:11,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:52:13,647.647 INFO    ] ================================================
[2026-06-22 23:52:13,662.662 INFO    ] Launching Daemon at Mon Jun 22 23:52:13 IST 2026
[2026-06-22 23:52:13,673.673 INFO    ] ================================================
[2026-06-22 23:52:14,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:52:14
[2026-06-22 23:52:14,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:52:15,153.153 INFO    ] Initializing speech engine...
[2026-06-22 23:52:15,162.162 INFO    ] 2026-06-22 23:52:15
[2026-06-22 23:52:15,464.464 INFO    ] 2026-06-22 23:52:15
[2026-06-22 23:52:15,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:52:15,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:52:15,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:52:15,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:52:15,878.878 INFO    ] time= 22/06/2026 23:52:15
[2026-06-22 23:52:15,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:52:15,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:52:15,993.993 INFO    ] No existing commands found in stream
[2026-06-22 23:52:21,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:52:21,019.019 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-22 23:52:22,225.225 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:52:22,226.226 INFO    ] Checking for system updates...
[2026-06-22 23:52:22,256.256 INFO    ] 200
[2026-06-22 23:52:22,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:52:22,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:52:22,316.316 INFO    ] No update needed
[2026-06-22 23:52:22,318.318 INFO    ] Checking for camera pi updates...
[2026-06-22 23:52:22,352.352 INFO    ] 200
[2026-06-22 23:52:22,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:52:22,397.397 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:52:22,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:52:22,480.480 INFO    ] No camera update needed
[2026-06-22 23:52:22,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:52:22,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:52:22,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:52:22,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:52:24,536.536 INFO    ] ================================================
[2026-06-22 23:52:24,551.551 INFO    ] Launching Daemon at Mon Jun 22 23:52:24 IST 2026
[2026-06-22 23:52:24,562.562 INFO    ] ================================================
[2026-06-22 23:52:25,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:52:25
[2026-06-22 23:52:25,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:52:26,068.068 INFO    ] Initializing speech engine...
[2026-06-22 23:52:26,084.084 INFO    ] 2026-06-22 23:52:26
[2026-06-22 23:52:26,371.371 INFO    ] 2026-06-22 23:52:26
[2026-06-22 23:52:26,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:52:26,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:52:26,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:52:26,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:52:26,776.776 INFO    ] time= 22/06/2026 23:52:26
[2026-06-22 23:52:26,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:52:26,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:52:27,028.028 INFO    ] No existing commands found in stream
[2026-06-22 23:52:32,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:52:32,041.041 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-22 23:52:34,266.266 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:52:34,269.269 INFO    ] Checking for system updates...
[2026-06-22 23:52:34,312.312 INFO    ] 200
[2026-06-22 23:52:34,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:52:34,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:52:34,378.378 INFO    ] No update needed
[2026-06-22 23:52:34,380.380 INFO    ] Checking for camera pi updates...
[2026-06-22 23:52:34,418.418 INFO    ] 200
[2026-06-22 23:52:34,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:52:34,467.467 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:52:34,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:52:34,519.519 INFO    ] No camera update needed
[2026-06-22 23:52:34,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:52:34,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:52:34,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:52:34,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:52:36,575.575 INFO    ] ================================================
[2026-06-22 23:52:36,591.591 INFO    ] Launching Daemon at Mon Jun 22 23:52:36 IST 2026
[2026-06-22 23:52:36,602.602 INFO    ] ================================================
[2026-06-22 23:52:37,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:52:37
[2026-06-22 23:52:37,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:52:37,930.930 INFO    ] Initializing speech engine...
[2026-06-22 23:52:37,937.937 INFO    ] 2026-06-22 23:52:37
[2026-06-22 23:52:38,233.233 INFO    ] 2026-06-22 23:52:38
[2026-06-22 23:52:38,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:52:38,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:52:38,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:52:38,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:52:38,749.749 INFO    ] time= 22/06/2026 23:52:38
[2026-06-22 23:52:38,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:52:38,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:52:38,946.946 INFO    ] No existing commands found in stream
[2026-06-22 23:52:43,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:52:43,960.960 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-22 23:52:44,650.650 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:52:44,653.653 INFO    ] Checking for system updates...
[2026-06-22 23:52:44,694.694 INFO    ] 200
[2026-06-22 23:52:44,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:52:44,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:52:44,752.752 INFO    ] No update needed
[2026-06-22 23:52:44,754.754 INFO    ] Checking for camera pi updates...
[2026-06-22 23:52:44,792.792 INFO    ] 200
[2026-06-22 23:52:44,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:52:44,852.852 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:52:44,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:52:44,957.957 INFO    ] No camera update needed
[2026-06-22 23:52:44,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:52:44,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:52:44,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:52:44,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:52:47,015.015 INFO    ] ================================================
[2026-06-22 23:52:47,030.030 INFO    ] Launching Daemon at Mon Jun 22 23:52:47 IST 2026
[2026-06-22 23:52:47,041.041 INFO    ] ================================================
[2026-06-22 23:52:47,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:52:47
[2026-06-22 23:52:48,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:52:48,501.501 INFO    ] Initializing speech engine...
[2026-06-22 23:52:48,507.507 INFO    ] 2026-06-22 23:52:48
[2026-06-22 23:52:48,806.806 INFO    ] 2026-06-22 23:52:48
[2026-06-22 23:52:48,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:52:49,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:52:49,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:52:49,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:52:49,193.193 INFO    ] time= 22/06/2026 23:52:49
[2026-06-22 23:52:49,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:52:49,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:52:49,320.320 INFO    ] No existing commands found in stream
[2026-06-22 23:52:54,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:52:54,336.336 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-22 23:52:55,522.522 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:52:55,524.524 INFO    ] Checking for system updates...
[2026-06-22 23:52:55,560.560 INFO    ] 200
[2026-06-22 23:52:55,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:52:55,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:52:55,628.628 INFO    ] No update needed
[2026-06-22 23:52:55,631.631 INFO    ] Checking for camera pi updates...
[2026-06-22 23:52:55,671.671 INFO    ] 200
[2026-06-22 23:52:55,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:52:55,744.744 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:52:55,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:52:55,832.832 INFO    ] No camera update needed
[2026-06-22 23:52:55,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:52:55,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:52:55,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:52:55,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:52:57,893.893 INFO    ] ================================================
[2026-06-22 23:52:57,909.909 INFO    ] Launching Daemon at Mon Jun 22 23:52:57 IST 2026
[2026-06-22 23:52:57,920.920 INFO    ] ================================================
[2026-06-22 23:52:58,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:52:58
[2026-06-22 23:52:58,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:52:59,251.251 INFO    ] Initializing speech engine...
[2026-06-22 23:52:59,267.267 INFO    ] 2026-06-22 23:52:59
[2026-06-22 23:52:59,553.553 INFO    ] 2026-06-22 23:52:59
[2026-06-22 23:52:59,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:52:59,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:52:59,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:52:59,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:52:59,956.956 INFO    ] time= 22/06/2026 23:52:59
[2026-06-22 23:52:59,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:52:59,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:53:00,067.067 INFO    ] No existing commands found in stream
[2026-06-22 23:53:05,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:53:05,082.082 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-22 23:53:08,452.452 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:53:08,454.454 INFO    ] Checking for system updates...
[2026-06-22 23:53:08,496.496 INFO    ] 200
[2026-06-22 23:53:08,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:53:08,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:53:08,562.562 INFO    ] No update needed
[2026-06-22 23:53:08,564.564 INFO    ] Checking for camera pi updates...
[2026-06-22 23:53:08,602.602 INFO    ] 200
[2026-06-22 23:53:08,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:53:08,646.646 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:53:08,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:53:08,729.729 INFO    ] No camera update needed
[2026-06-22 23:53:08,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:53:08,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:53:08,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:53:08,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:53:10,786.786 INFO    ] ================================================
[2026-06-22 23:53:10,802.802 INFO    ] Launching Daemon at Mon Jun 22 23:53:10 IST 2026
[2026-06-22 23:53:10,813.813 INFO    ] ================================================
[2026-06-22 23:53:11,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:53:11
[2026-06-22 23:53:11,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:53:12,254.254 INFO    ] Initializing speech engine...
[2026-06-22 23:53:12,260.260 INFO    ] 2026-06-22 23:53:12
[2026-06-22 23:53:12,556.556 INFO    ] 2026-06-22 23:53:12
[2026-06-22 23:53:12,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:53:12,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:53:12,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:53:12,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:53:12,939.939 INFO    ] time= 22/06/2026 23:53:12
[2026-06-22 23:53:12,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:53:12,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:53:13,068.068 INFO    ] No existing commands found in stream
[2026-06-22 23:53:18,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:53:18,083.083 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-22 23:53:22,457.457 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:53:22,459.459 INFO    ] Checking for system updates...
[2026-06-22 23:53:22,495.495 INFO    ] 200
[2026-06-22 23:53:22,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:53:22,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:53:22,561.561 INFO    ] No update needed
[2026-06-22 23:53:22,563.563 INFO    ] Checking for camera pi updates...
[2026-06-22 23:53:22,599.599 INFO    ] 200
[2026-06-22 23:53:22,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:53:22,641.641 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:53:22,739.739 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:53:22,741.741 INFO    ] No camera update needed
[2026-06-22 23:53:22,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:53:22,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:53:22,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:53:22,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:53:24,797.797 INFO    ] ================================================
[2026-06-22 23:53:24,814.814 INFO    ] Launching Daemon at Mon Jun 22 23:53:24 IST 2026
[2026-06-22 23:53:24,825.825 INFO    ] ================================================
[2026-06-22 23:53:25,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:53:25
[2026-06-22 23:53:25,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:53:26,196.196 INFO    ] Initializing speech engine...
[2026-06-22 23:53:26,205.205 INFO    ] 2026-06-22 23:53:26
[2026-06-22 23:53:26,465.465 INFO    ] 2026-06-22 23:53:26
[2026-06-22 23:53:26,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:53:26,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:53:26,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:53:26,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:53:27,008.008 INFO    ] time= 22/06/2026 23:53:26
[2026-06-22 23:53:27,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:53:27,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:53:27,150.150 INFO    ] No existing commands found in stream
[2026-06-22 23:53:32,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:53:32,173.173 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-22 23:53:36,271.271 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:53:36,274.274 INFO    ] Checking for system updates...
[2026-06-22 23:53:36,311.311 INFO    ] 200
[2026-06-22 23:53:36,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:53:36,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:53:36,375.375 INFO    ] No update needed
[2026-06-22 23:53:36,377.377 INFO    ] Checking for camera pi updates...
[2026-06-22 23:53:36,405.405 INFO    ] 200
[2026-06-22 23:53:36,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:53:36,431.431 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:53:36,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:53:36,513.513 INFO    ] No camera update needed
[2026-06-22 23:53:36,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:53:36,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:53:36,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:53:36,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:53:38,570.570 INFO    ] ================================================
[2026-06-22 23:53:38,586.586 INFO    ] Launching Daemon at Mon Jun 22 23:53:38 IST 2026
[2026-06-22 23:53:38,597.597 INFO    ] ================================================
[2026-06-22 23:53:39,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:53:39
[2026-06-22 23:53:39,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:53:40,019.019 INFO    ] Initializing speech engine...
[2026-06-22 23:53:40,036.036 INFO    ] 2026-06-22 23:53:40
[2026-06-22 23:53:40,337.337 INFO    ] 2026-06-22 23:53:40
[2026-06-22 23:53:40,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:53:40,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:53:40,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:53:40,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:53:40,738.738 INFO    ] time= 22/06/2026 23:53:40
[2026-06-22 23:53:40,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:53:40,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:53:40,872.872 INFO    ] No existing commands found in stream
[2026-06-22 23:53:45,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:53:45,889.889 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-22 23:53:49,228.228 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:53:49,231.231 INFO    ] Checking for system updates...
[2026-06-22 23:53:49,270.270 INFO    ] 200
[2026-06-22 23:53:49,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:53:49,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:53:49,334.334 INFO    ] No update needed
[2026-06-22 23:53:49,336.336 INFO    ] Checking for camera pi updates...
[2026-06-22 23:53:49,375.375 INFO    ] 200
[2026-06-22 23:53:49,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:53:49,422.422 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:53:49,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:53:49,504.504 INFO    ] No camera update needed
[2026-06-22 23:53:49,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:53:49,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:53:49,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:53:49,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:53:51,561.561 INFO    ] ================================================
[2026-06-22 23:53:51,576.576 INFO    ] Launching Daemon at Mon Jun 22 23:53:51 IST 2026
[2026-06-22 23:53:51,587.587 INFO    ] ================================================
[2026-06-22 23:53:52,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:53:52
[2026-06-22 23:53:52,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:53:53,038.038 INFO    ] Initializing speech engine...
[2026-06-22 23:53:53,046.046 INFO    ] 2026-06-22 23:53:53
[2026-06-22 23:53:53,303.303 INFO    ] 2026-06-22 23:53:53
[2026-06-22 23:53:53,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:53:55,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:53:55,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:53:56,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:53:56,065.065 INFO    ] time= 22/06/2026 23:53:56
[2026-06-22 23:53:56,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:53:56,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:53:56,122.122 INFO    ] No existing commands found in stream
[2026-06-22 23:54:01,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:54:01,137.137 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-22 23:54:02,386.386 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:54:02,389.389 INFO    ] Checking for system updates...
[2026-06-22 23:54:02,446.446 INFO    ] 200
[2026-06-22 23:54:02,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:54:02,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:54:02,518.518 INFO    ] No update needed
[2026-06-22 23:54:02,520.520 INFO    ] Checking for camera pi updates...
[2026-06-22 23:54:02,562.562 INFO    ] 200
[2026-06-22 23:54:02,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:54:02,619.619 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:54:02,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:54:02,687.687 INFO    ] No camera update needed
[2026-06-22 23:54:02,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:54:02,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:54:02,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:54:02,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:54:04,743.743 INFO    ] ================================================
[2026-06-22 23:54:04,758.758 INFO    ] Launching Daemon at Mon Jun 22 23:54:04 IST 2026
[2026-06-22 23:54:04,769.769 INFO    ] ================================================
[2026-06-22 23:54:05,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:54:05
[2026-06-22 23:54:05,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:54:06,207.207 INFO    ] Initializing speech engine...
[2026-06-22 23:54:06,216.216 INFO    ] 2026-06-22 23:54:06
[2026-06-22 23:54:06,515.515 INFO    ] 2026-06-22 23:54:06
[2026-06-22 23:54:06,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:54:06,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:54:06,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:54:06,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:54:06,901.901 INFO    ] time= 22/06/2026 23:54:06
[2026-06-22 23:54:06,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:54:06,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:54:07,083.083 INFO    ] No existing commands found in stream
[2026-06-22 23:54:12,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:54:12,111.111 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-22 23:54:14,181.181 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:54:14,183.183 INFO    ] Checking for system updates...
[2026-06-22 23:54:14,205.205 INFO    ] 200
[2026-06-22 23:54:14,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:54:14,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:54:14,250.250 INFO    ] No update needed
[2026-06-22 23:54:14,252.252 INFO    ] Checking for camera pi updates...
[2026-06-22 23:54:14,290.290 INFO    ] 200
[2026-06-22 23:54:14,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:54:14,336.336 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:54:14,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:54:14,422.422 INFO    ] No camera update needed
[2026-06-22 23:54:14,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:54:14,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:54:14,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:54:14,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:54:16,477.477 INFO    ] ================================================
[2026-06-22 23:54:16,492.492 INFO    ] Launching Daemon at Mon Jun 22 23:54:16 IST 2026
[2026-06-22 23:54:16,503.503 INFO    ] ================================================
[2026-06-22 23:54:17,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:54:17
[2026-06-22 23:54:17,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:54:18,038.038 INFO    ] Initializing speech engine...
[2026-06-22 23:54:18,046.046 INFO    ] 2026-06-22 23:54:18
[2026-06-22 23:54:18,316.316 INFO    ] 2026-06-22 23:54:18
[2026-06-22 23:54:18,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:54:18,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:54:18,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:54:18,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:54:18,806.806 INFO    ] time= 22/06/2026 23:54:18
[2026-06-22 23:54:18,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:54:18,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:54:19,015.015 INFO    ] No existing commands found in stream
[2026-06-22 23:54:24,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:54:24,040.040 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-22 23:54:27,922.922 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:54:27,924.924 INFO    ] Checking for system updates...
[2026-06-22 23:54:27,946.946 INFO    ] 200
[2026-06-22 23:54:27,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:54:28,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:54:28,007.007 INFO    ] No update needed
[2026-06-22 23:54:28,010.010 INFO    ] Checking for camera pi updates...
[2026-06-22 23:54:28,045.045 INFO    ] 200
[2026-06-22 23:54:28,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:54:28,089.089 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:54:28,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:54:28,142.142 INFO    ] No camera update needed
[2026-06-22 23:54:28,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:54:28,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:54:28,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:54:28,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:54:30,202.202 INFO    ] ================================================
[2026-06-22 23:54:30,217.217 INFO    ] Launching Daemon at Mon Jun 22 23:54:30 IST 2026
[2026-06-22 23:54:30,228.228 INFO    ] ================================================
[2026-06-22 23:54:30,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:54:30
[2026-06-22 23:54:31,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:54:31,593.593 INFO    ] Initializing speech engine...
[2026-06-22 23:54:31,599.599 INFO    ] 2026-06-22 23:54:31
[2026-06-22 23:54:31,891.891 INFO    ] 2026-06-22 23:54:31
[2026-06-22 23:54:31,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:54:32,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:54:32,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:54:32,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:54:32,237.237 INFO    ] time= 22/06/2026 23:54:32
[2026-06-22 23:54:32,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:54:32,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:54:32,390.390 INFO    ] No existing commands found in stream
[2026-06-22 23:54:37,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:54:37,420.420 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-22 23:54:40,612.612 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:54:40,614.614 INFO    ] Checking for system updates...
[2026-06-22 23:54:40,635.635 INFO    ] 200
[2026-06-22 23:54:40,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:54:40,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:54:40,673.673 INFO    ] No update needed
[2026-06-22 23:54:40,676.676 INFO    ] Checking for camera pi updates...
[2026-06-22 23:54:40,711.711 INFO    ] 200
[2026-06-22 23:54:40,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:54:40,756.756 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:54:40,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:54:40,839.839 INFO    ] No camera update needed
[2026-06-22 23:54:40,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:54:40,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:54:40,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:54:40,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:54:42,895.895 INFO    ] ================================================
[2026-06-22 23:54:42,911.911 INFO    ] Launching Daemon at Mon Jun 22 23:54:42 IST 2026
[2026-06-22 23:54:42,922.922 INFO    ] ================================================
[2026-06-22 23:54:43,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:54:43
[2026-06-22 23:54:44,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:54:44,441.441 INFO    ] Initializing speech engine...
[2026-06-22 23:54:44,449.449 INFO    ] 2026-06-22 23:54:44
[2026-06-22 23:54:44,725.725 INFO    ] 2026-06-22 23:54:44
[2026-06-22 23:54:44,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:54:45,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:54:45,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:54:45,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:54:45,203.203 INFO    ] time= 22/06/2026 23:54:45
[2026-06-22 23:54:45,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:54:45,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:54:45,426.426 INFO    ] No existing commands found in stream
[2026-06-22 23:54:50,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:54:50,444.444 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-22 23:54:56,343.343 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:54:56,350.350 INFO    ] Checking for system updates...
[2026-06-22 23:54:56,390.390 INFO    ] 200
[2026-06-22 23:54:56,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:54:56,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:54:56,461.461 INFO    ] No update needed
[2026-06-22 23:54:56,463.463 INFO    ] Checking for camera pi updates...
[2026-06-22 23:54:56,500.500 INFO    ] 200
[2026-06-22 23:54:56,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:54:56,547.547 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:54:56,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:54:56,633.633 INFO    ] No camera update needed
[2026-06-22 23:54:56,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:54:56,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:54:56,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:54:56,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:54:58,689.689 INFO    ] ================================================
[2026-06-22 23:54:58,706.706 INFO    ] Launching Daemon at Mon Jun 22 23:54:58 IST 2026
[2026-06-22 23:54:58,718.718 INFO    ] ================================================
[2026-06-22 23:54:59,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:54:59
[2026-06-22 23:55:00,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:55:00,322.322 INFO    ] Initializing speech engine...
[2026-06-22 23:55:00,327.327 INFO    ] 2026-06-22 23:55:00
[2026-06-22 23:55:00,633.633 INFO    ] 2026-06-22 23:55:00
[2026-06-22 23:55:00,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:55:00,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:55:00,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:55:01,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:55:01,099.099 INFO    ] time= 22/06/2026 23:55:01
[2026-06-22 23:55:01,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:55:01,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:55:01,263.263 INFO    ] No existing commands found in stream
[2026-06-22 23:55:06,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:55:06,304.304 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-22 23:55:07,402.402 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:55:07,404.404 INFO    ] Checking for system updates...
[2026-06-22 23:55:07,441.441 INFO    ] 200
[2026-06-22 23:55:07,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:55:07,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:55:07,502.502 INFO    ] No update needed
[2026-06-22 23:55:07,505.505 INFO    ] Checking for camera pi updates...
[2026-06-22 23:55:07,540.540 INFO    ] 200
[2026-06-22 23:55:07,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:55:07,596.596 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:55:07,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:55:07,772.772 INFO    ] No camera update needed
[2026-06-22 23:55:07,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:55:07,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:55:07,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:55:07,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:55:09,829.829 INFO    ] ================================================
[2026-06-22 23:55:09,844.844 INFO    ] Launching Daemon at Mon Jun 22 23:55:09 IST 2026
[2026-06-22 23:55:09,855.855 INFO    ] ================================================
[2026-06-22 23:55:10,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:55:10
[2026-06-22 23:55:11,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:55:11,350.350 INFO    ] Initializing speech engine...
[2026-06-22 23:55:11,359.359 INFO    ] 2026-06-22 23:55:11
[2026-06-22 23:55:11,653.653 INFO    ] 2026-06-22 23:55:11
[2026-06-22 23:55:11,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:55:11,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:55:11,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:55:12,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:55:12,159.159 INFO    ] time= 22/06/2026 23:55:12
[2026-06-22 23:55:12,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:55:12,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:55:12,318.318 INFO    ] No existing commands found in stream
[2026-06-22 23:55:17,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:55:17,351.351 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-22 23:55:18,052.052 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:55:18,053.053 INFO    ] Checking for system updates...
[2026-06-22 23:55:18,075.075 INFO    ] 200
[2026-06-22 23:55:18,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:55:18,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:55:18,124.124 INFO    ] No update needed
[2026-06-22 23:55:18,128.128 INFO    ] Checking for camera pi updates...
[2026-06-22 23:55:18,165.165 INFO    ] 200
[2026-06-22 23:55:18,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:55:18,217.217 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:55:18,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:55:18,319.319 INFO    ] No camera update needed
[2026-06-22 23:55:18,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:55:18,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:55:18,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:55:18,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:55:20,377.377 INFO    ] ================================================
[2026-06-22 23:55:20,393.393 INFO    ] Launching Daemon at Mon Jun 22 23:55:20 IST 2026
[2026-06-22 23:55:20,405.405 INFO    ] ================================================
[2026-06-22 23:55:21,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:55:21
[2026-06-22 23:55:21,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:55:21,778.778 INFO    ] Initializing speech engine...
[2026-06-22 23:55:21,793.793 INFO    ] 2026-06-22 23:55:21
[2026-06-22 23:55:22,047.047 INFO    ] 2026-06-22 23:55:22
[2026-06-22 23:55:22,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:55:22,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:55:22,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:55:22,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:55:22,413.413 INFO    ] time= 22/06/2026 23:55:22
[2026-06-22 23:55:22,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:55:22,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:55:22,562.562 INFO    ] No existing commands found in stream
[2026-06-22 23:55:27,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:55:27,576.576 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-22 23:55:31,207.207 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:55:31,210.210 INFO    ] Checking for system updates...
[2026-06-22 23:55:31,246.246 INFO    ] 200
[2026-06-22 23:55:31,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:55:31,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:55:31,306.306 INFO    ] No update needed
[2026-06-22 23:55:31,309.309 INFO    ] Checking for camera pi updates...
[2026-06-22 23:55:31,344.344 INFO    ] 200
[2026-06-22 23:55:31,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:55:31,388.388 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:55:31,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:55:31,466.466 INFO    ] No camera update needed
[2026-06-22 23:55:31,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:55:31,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:55:31,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:55:31,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:55:33,525.525 INFO    ] ================================================
[2026-06-22 23:55:33,540.540 INFO    ] Launching Daemon at Mon Jun 22 23:55:33 IST 2026
[2026-06-22 23:55:33,550.550 INFO    ] ================================================
[2026-06-22 23:55:34,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:55:34
[2026-06-22 23:55:34,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:55:35,006.006 INFO    ] Initializing speech engine...
[2026-06-22 23:55:35,015.015 INFO    ] 2026-06-22 23:55:35
[2026-06-22 23:55:35,262.262 INFO    ] 2026-06-22 23:55:35
[2026-06-22 23:55:35,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:55:35,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:55:35,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:55:35,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:55:35,718.718 INFO    ] time= 22/06/2026 23:55:35
[2026-06-22 23:55:35,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:55:35,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:55:35,876.876 INFO    ] No existing commands found in stream
[2026-06-22 23:55:40,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:55:40,892.892 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-22 23:55:42,017.017 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:55:42,020.020 INFO    ] Checking for system updates...
[2026-06-22 23:55:42,056.056 INFO    ] 200
[2026-06-22 23:55:42,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:55:42,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:55:42,113.113 INFO    ] No update needed
[2026-06-22 23:55:42,116.116 INFO    ] Checking for camera pi updates...
[2026-06-22 23:55:42,153.153 INFO    ] 200
[2026-06-22 23:55:42,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:55:42,200.200 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:55:42,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:55:42,282.282 INFO    ] No camera update needed
[2026-06-22 23:55:42,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:55:42,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:55:42,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:55:42,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:55:44,338.338 INFO    ] ================================================
[2026-06-22 23:55:44,354.354 INFO    ] Launching Daemon at Mon Jun 22 23:55:44 IST 2026
[2026-06-22 23:55:44,365.365 INFO    ] ================================================
[2026-06-22 23:55:44,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:55:44
[2026-06-22 23:55:45,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:55:45,875.875 INFO    ] Initializing speech engine...
[2026-06-22 23:55:45,883.883 INFO    ] 2026-06-22 23:55:45
[2026-06-22 23:55:46,178.178 INFO    ] 2026-06-22 23:55:46
[2026-06-22 23:55:46,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:55:46,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:55:46,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:55:46,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:55:46,720.720 INFO    ] time= 22/06/2026 23:55:46
[2026-06-22 23:55:46,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:55:46,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:55:46,870.870 INFO    ] No existing commands found in stream
[2026-06-22 23:55:51,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:55:51,895.895 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-22 23:55:56,474.474 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:55:56,477.477 INFO    ] Checking for system updates...
[2026-06-22 23:55:56,514.514 INFO    ] 200
[2026-06-22 23:55:56,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:55:56,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:55:56,581.581 INFO    ] No update needed
[2026-06-22 23:55:56,583.583 INFO    ] Checking for camera pi updates...
[2026-06-22 23:55:56,618.618 INFO    ] 200
[2026-06-22 23:55:56,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:55:56,667.667 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:55:56,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:55:56,754.754 INFO    ] No camera update needed
[2026-06-22 23:55:56,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:55:56,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:55:56,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:55:56,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:55:58,814.814 INFO    ] ================================================
[2026-06-22 23:55:58,829.829 INFO    ] Launching Daemon at Mon Jun 22 23:55:58 IST 2026
[2026-06-22 23:55:58,840.840 INFO    ] ================================================
[2026-06-22 23:55:59,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:55:59
[2026-06-22 23:56:00,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:56:00,468.468 INFO    ] Initializing speech engine...
[2026-06-22 23:56:00,496.496 INFO    ] 2026-06-22 23:56:00
[2026-06-22 23:56:00,749.749 INFO    ] 2026-06-22 23:56:00
[2026-06-22 23:56:00,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:56:00,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:56:00,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:56:01,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:56:01,126.126 INFO    ] time= 22/06/2026 23:56:01
[2026-06-22 23:56:01,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:56:01,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:56:01,213.213 INFO    ] No existing commands found in stream
[2026-06-22 23:56:06,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:56:06,230.230 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-22 23:56:09,457.457 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:56:09,460.460 INFO    ] Checking for system updates...
[2026-06-22 23:56:09,496.496 INFO    ] 200
[2026-06-22 23:56:09,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:56:09,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:56:09,557.557 INFO    ] No update needed
[2026-06-22 23:56:09,560.560 INFO    ] Checking for camera pi updates...
[2026-06-22 23:56:09,594.594 INFO    ] 200
[2026-06-22 23:56:09,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:56:09,641.641 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:56:09,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:56:09,693.693 INFO    ] No camera update needed
[2026-06-22 23:56:09,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:56:09,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:56:09,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:56:09,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:56:11,749.749 INFO    ] ================================================
[2026-06-22 23:56:11,765.765 INFO    ] Launching Daemon at Mon Jun 22 23:56:11 IST 2026
[2026-06-22 23:56:11,777.777 INFO    ] ================================================
[2026-06-22 23:56:12,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:56:12
[2026-06-22 23:56:12,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:56:13,230.230 INFO    ] Initializing speech engine...
[2026-06-22 23:56:13,241.241 INFO    ] 2026-06-22 23:56:13
[2026-06-22 23:56:13,512.512 INFO    ] 2026-06-22 23:56:13
[2026-06-22 23:56:13,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:56:13,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:56:13,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:56:13,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:56:13,994.994 INFO    ] time= 22/06/2026 23:56:13
[2026-06-22 23:56:14,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:56:14,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:56:14,189.189 INFO    ] No existing commands found in stream
[2026-06-22 23:56:19,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:56:19,213.213 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-22 23:56:22,882.882 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:56:22,885.885 INFO    ] Checking for system updates...
[2026-06-22 23:56:22,923.923 INFO    ] 200
[2026-06-22 23:56:22,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:56:22,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:56:22,995.995 INFO    ] No update needed
[2026-06-22 23:56:22,997.997 INFO    ] Checking for camera pi updates...
[2026-06-22 23:56:23,036.036 INFO    ] 200
[2026-06-22 23:56:23,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:56:23,079.079 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:56:23,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:56:23,165.165 INFO    ] No camera update needed
[2026-06-22 23:56:23,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:56:23,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:56:23,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:56:23,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:56:25,223.223 INFO    ] ================================================
[2026-06-22 23:56:25,239.239 INFO    ] Launching Daemon at Mon Jun 22 23:56:25 IST 2026
[2026-06-22 23:56:25,251.251 INFO    ] ================================================
[2026-06-22 23:56:25,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:56:25
[2026-06-22 23:56:26,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:56:26,623.623 INFO    ] Initializing speech engine...
[2026-06-22 23:56:26,632.632 INFO    ] 2026-06-22 23:56:26
[2026-06-22 23:56:26,890.890 INFO    ] 2026-06-22 23:56:26
[2026-06-22 23:56:26,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:56:27,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:56:27,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:56:27,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:56:27,248.248 INFO    ] time= 22/06/2026 23:56:27
[2026-06-22 23:56:27,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:56:27,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:56:27,325.325 INFO    ] No existing commands found in stream
[2026-06-22 23:56:32,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:56:32,345.345 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-22 23:56:33,766.766 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:56:33,769.769 INFO    ] Checking for system updates...
[2026-06-22 23:56:33,809.809 INFO    ] 200
[2026-06-22 23:56:33,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:56:33,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:56:33,868.868 INFO    ] No update needed
[2026-06-22 23:56:33,870.870 INFO    ] Checking for camera pi updates...
[2026-06-22 23:56:33,908.908 INFO    ] 200
[2026-06-22 23:56:33,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:56:33,951.951 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:56:34,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:56:34,033.033 INFO    ] No camera update needed
[2026-06-22 23:56:34,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:56:34,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:56:34,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:56:34,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:56:36,091.091 INFO    ] ================================================
[2026-06-22 23:56:36,106.106 INFO    ] Launching Daemon at Mon Jun 22 23:56:36 IST 2026
[2026-06-22 23:56:36,117.117 INFO    ] ================================================
[2026-06-22 23:56:36,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:56:36
[2026-06-22 23:56:37,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:56:37,759.759 INFO    ] Initializing speech engine...
[2026-06-22 23:56:37,772.772 INFO    ] 2026-06-22 23:56:37
[2026-06-22 23:56:38,054.054 INFO    ] 2026-06-22 23:56:38
[2026-06-22 23:56:38,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:56:38,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:56:38,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:56:38,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:56:38,594.594 INFO    ] time= 22/06/2026 23:56:38
[2026-06-22 23:56:38,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:56:38,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:56:38,741.741 INFO    ] No existing commands found in stream
[2026-06-22 23:56:43,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:56:43,766.766 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-22 23:56:45,815.815 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:56:45,818.818 INFO    ] Checking for system updates...
[2026-06-22 23:56:45,856.856 INFO    ] 200
[2026-06-22 23:56:45,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:56:45,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:56:45,922.922 INFO    ] No update needed
[2026-06-22 23:56:45,925.925 INFO    ] Checking for camera pi updates...
[2026-06-22 23:56:45,960.960 INFO    ] 200
[2026-06-22 23:56:45,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:56:46,009.009 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:56:46,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:56:46,111.111 INFO    ] No camera update needed
[2026-06-22 23:56:46,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:56:46,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:56:46,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:56:46,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:56:48,171.171 INFO    ] ================================================
[2026-06-22 23:56:48,186.186 INFO    ] Launching Daemon at Mon Jun 22 23:56:48 IST 2026
[2026-06-22 23:56:48,197.197 INFO    ] ================================================
[2026-06-22 23:56:48,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:56:48
[2026-06-22 23:56:49,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:56:49,632.632 INFO    ] Initializing speech engine...
[2026-06-22 23:56:49,641.641 INFO    ] 2026-06-22 23:56:49
[2026-06-22 23:56:49,889.889 INFO    ] 2026-06-22 23:56:49
[2026-06-22 23:56:49,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:56:50,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:56:50,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:56:50,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:56:50,364.364 INFO    ] time= 22/06/2026 23:56:50
[2026-06-22 23:56:50,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:56:50,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:56:50,578.578 INFO    ] No existing commands found in stream
[2026-06-22 23:56:55,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:56:55,608.608 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-22 23:56:57,923.923 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:56:57,924.924 INFO    ] Checking for system updates...
[2026-06-22 23:56:57,945.945 INFO    ] 200
[2026-06-22 23:56:57,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:56:57,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:56:57,978.978 INFO    ] No update needed
[2026-06-22 23:56:57,979.979 INFO    ] Checking for camera pi updates...
[2026-06-22 23:56:58,016.016 INFO    ] 200
[2026-06-22 23:56:58,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:56:58,064.064 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:56:58,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:56:58,165.165 INFO    ] No camera update needed
[2026-06-22 23:56:58,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:56:58,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:56:58,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:56:58,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:57:00,225.225 INFO    ] ================================================
[2026-06-22 23:57:00,242.242 INFO    ] Launching Daemon at Mon Jun 22 23:57:00 IST 2026
[2026-06-22 23:57:00,253.253 INFO    ] ================================================
[2026-06-22 23:57:00,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:57:00
[2026-06-22 23:57:01,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:57:01,712.712 INFO    ] Initializing speech engine...
[2026-06-22 23:57:01,719.719 INFO    ] 2026-06-22 23:57:01
[2026-06-22 23:57:02,032.032 INFO    ] 2026-06-22 23:57:02
[2026-06-22 23:57:02,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:57:02,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:57:02,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:57:02,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:57:02,595.595 INFO    ] time= 22/06/2026 23:57:02
[2026-06-22 23:57:02,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:57:02,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:57:02,877.877 INFO    ] No existing commands found in stream
[2026-06-22 23:57:07,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:57:07,912.912 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-22 23:57:09,238.238 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:57:09,239.239 INFO    ] Checking for system updates...
[2026-06-22 23:57:09,260.260 INFO    ] 200
[2026-06-22 23:57:09,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:57:09,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:57:09,311.311 INFO    ] No update needed
[2026-06-22 23:57:09,318.318 INFO    ] Checking for camera pi updates...
[2026-06-22 23:57:09,353.353 INFO    ] 200
[2026-06-22 23:57:09,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:57:09,398.398 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:57:09,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:57:09,575.575 INFO    ] No camera update needed
[2026-06-22 23:57:09,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:57:09,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:57:09,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:57:09,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:57:11,633.633 INFO    ] ================================================
[2026-06-22 23:57:11,649.649 INFO    ] Launching Daemon at Mon Jun 22 23:57:11 IST 2026
[2026-06-22 23:57:11,660.660 INFO    ] ================================================
[2026-06-22 23:57:12,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:57:12
[2026-06-22 23:57:12,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:57:13,036.036 INFO    ] Initializing speech engine...
[2026-06-22 23:57:13,041.041 INFO    ] 2026-06-22 23:57:13
[2026-06-22 23:57:13,315.315 INFO    ] 2026-06-22 23:57:13
[2026-06-22 23:57:13,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:57:13,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:57:13,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:57:13,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:57:13,802.802 INFO    ] time= 22/06/2026 23:57:13
[2026-06-22 23:57:13,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:57:13,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:57:14,025.025 INFO    ] No existing commands found in stream
[2026-06-22 23:57:19,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:57:19,057.057 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-22 23:57:21,814.814 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:57:21,816.816 INFO    ] Checking for system updates...
[2026-06-22 23:57:21,837.837 INFO    ] 200
[2026-06-22 23:57:21,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:57:21,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:57:21,871.871 INFO    ] No update needed
[2026-06-22 23:57:21,872.872 INFO    ] Checking for camera pi updates...
[2026-06-22 23:57:21,893.893 INFO    ] 200
[2026-06-22 23:57:21,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:57:21,937.937 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:57:22,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:57:22,044.044 INFO    ] No camera update needed
[2026-06-22 23:57:22,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:57:22,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:57:22,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:57:22,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:57:24,100.100 INFO    ] ================================================
[2026-06-22 23:57:24,115.115 INFO    ] Launching Daemon at Mon Jun 22 23:57:24 IST 2026
[2026-06-22 23:57:24,126.126 INFO    ] ================================================
[2026-06-22 23:57:24,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:57:24
[2026-06-22 23:57:25,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:57:25,525.525 INFO    ] Initializing speech engine...
[2026-06-22 23:57:25,532.532 INFO    ] 2026-06-22 23:57:25
[2026-06-22 23:57:25,832.832 INFO    ] 2026-06-22 23:57:25
[2026-06-22 23:57:25,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:57:26,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:57:26,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:57:26,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:57:26,656.656 INFO    ] time= 22/06/2026 23:57:26
[2026-06-22 23:57:26,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:57:26,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:57:26,850.850 INFO    ] No existing commands found in stream
[2026-06-22 23:57:31,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:57:31,870.870 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-22 23:57:32,735.735 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:57:32,738.738 INFO    ] Checking for system updates...
[2026-06-22 23:57:32,777.777 INFO    ] 200
[2026-06-22 23:57:32,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:57:32,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:57:32,848.848 INFO    ] No update needed
[2026-06-22 23:57:32,850.850 INFO    ] Checking for camera pi updates...
[2026-06-22 23:57:32,890.890 INFO    ] 200
[2026-06-22 23:57:32,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:57:32,936.936 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:57:32,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:57:32,991.991 INFO    ] No camera update needed
[2026-06-22 23:57:32,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:57:32,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:57:33,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:57:33,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:57:35,049.049 INFO    ] ================================================
[2026-06-22 23:57:35,064.064 INFO    ] Launching Daemon at Mon Jun 22 23:57:35 IST 2026
[2026-06-22 23:57:35,075.075 INFO    ] ================================================
[2026-06-22 23:57:35,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:57:35
[2026-06-22 23:57:36,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:57:36,669.669 INFO    ] Initializing speech engine...
[2026-06-22 23:57:36,675.675 INFO    ] 2026-06-22 23:57:36
[2026-06-22 23:57:36,921.921 INFO    ] 2026-06-22 23:57:36
[2026-06-22 23:57:36,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:57:37,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:57:37,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:57:37,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:57:37,367.367 INFO    ] time= 22/06/2026 23:57:37
[2026-06-22 23:57:37,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:57:37,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:57:37,553.553 INFO    ] No existing commands found in stream
[2026-06-22 23:57:42,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:57:42,567.567 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-22 23:57:43,389.389 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:57:43,391.391 INFO    ] Checking for system updates...
[2026-06-22 23:57:43,430.430 INFO    ] 200
[2026-06-22 23:57:43,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:57:43,485.485 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:57:43,488.488 INFO    ] No update needed
[2026-06-22 23:57:43,490.490 INFO    ] Checking for camera pi updates...
[2026-06-22 23:57:43,529.529 INFO    ] 200
[2026-06-22 23:57:43,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:57:43,571.571 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:57:43,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:57:43,658.658 INFO    ] No camera update needed
[2026-06-22 23:57:43,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:57:43,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:57:43,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:57:43,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:57:45,716.716 INFO    ] ================================================
[2026-06-22 23:57:45,733.733 INFO    ] Launching Daemon at Mon Jun 22 23:57:45 IST 2026
[2026-06-22 23:57:45,744.744 INFO    ] ================================================
[2026-06-22 23:57:46,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:57:46
[2026-06-22 23:57:46,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:57:47,252.252 INFO    ] Initializing speech engine...
[2026-06-22 23:57:47,257.257 INFO    ] 2026-06-22 23:57:47
[2026-06-22 23:57:47,505.505 INFO    ] 2026-06-22 23:57:47
[2026-06-22 23:57:47,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:57:47,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:57:47,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:57:47,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:57:47,990.990 INFO    ] time= 22/06/2026 23:57:47
[2026-06-22 23:57:48,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:57:48,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:57:48,182.182 INFO    ] No existing commands found in stream
[2026-06-22 23:57:53,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:57:53,210.210 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-22 23:57:55,074.074 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:57:55,075.075 INFO    ] Checking for system updates...
[2026-06-22 23:57:55,104.104 INFO    ] 200
[2026-06-22 23:57:55,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:57:55,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:57:55,169.169 INFO    ] No update needed
[2026-06-22 23:57:55,171.171 INFO    ] Checking for camera pi updates...
[2026-06-22 23:57:55,208.208 INFO    ] 200
[2026-06-22 23:57:55,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:57:55,251.251 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:57:55,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:57:55,303.303 INFO    ] No camera update needed
[2026-06-22 23:57:55,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:57:55,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:57:55,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:57:55,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:57:57,359.359 INFO    ] ================================================
[2026-06-22 23:57:57,374.374 INFO    ] Launching Daemon at Mon Jun 22 23:57:57 IST 2026
[2026-06-22 23:57:57,385.385 INFO    ] ================================================
[2026-06-22 23:57:57,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:57:57
[2026-06-22 23:57:58,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:57:58,805.805 INFO    ] Initializing speech engine...
[2026-06-22 23:57:58,819.819 INFO    ] 2026-06-22 23:57:58
[2026-06-22 23:57:59,096.096 INFO    ] 2026-06-22 23:57:59
[2026-06-22 23:57:59,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:58:00,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:58:00,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:58:00,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:58:00,236.236 INFO    ] time= 22/06/2026 23:58:00
[2026-06-22 23:58:00,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:58:00,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:58:00,416.416 INFO    ] No existing commands found in stream
[2026-06-22 23:58:05,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:58:05,449.449 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-22 23:58:06,801.801 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:58:06,804.804 INFO    ] Checking for system updates...
[2026-06-22 23:58:06,845.845 INFO    ] 200
[2026-06-22 23:58:06,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:58:06,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:58:06,905.905 INFO    ] No update needed
[2026-06-22 23:58:06,908.908 INFO    ] Checking for camera pi updates...
[2026-06-22 23:58:06,947.947 INFO    ] 200
[2026-06-22 23:58:06,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:58:06,996.996 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:58:07,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:58:07,092.092 INFO    ] No camera update needed
[2026-06-22 23:58:07,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:58:07,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:58:07,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:58:07,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:58:09,151.151 INFO    ] ================================================
[2026-06-22 23:58:09,166.166 INFO    ] Launching Daemon at Mon Jun 22 23:58:09 IST 2026
[2026-06-22 23:58:09,177.177 INFO    ] ================================================
[2026-06-22 23:58:09,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:58:09
[2026-06-22 23:58:10,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:58:10,524.524 INFO    ] Initializing speech engine...
[2026-06-22 23:58:10,530.530 INFO    ] 2026-06-22 23:58:10
[2026-06-22 23:58:10,827.827 INFO    ] 2026-06-22 23:58:10
[2026-06-22 23:58:10,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:58:11,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:58:11,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:58:11,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:58:11,207.207 INFO    ] time= 22/06/2026 23:58:11
[2026-06-22 23:58:11,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:58:11,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:58:11,331.331 INFO    ] No existing commands found in stream
[2026-06-22 23:58:16,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:58:16,346.346 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-22 23:58:20,301.301 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:58:20,304.304 INFO    ] Checking for system updates...
[2026-06-22 23:58:20,345.345 INFO    ] 200
[2026-06-22 23:58:20,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:58:20,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:58:20,405.405 INFO    ] No update needed
[2026-06-22 23:58:20,407.407 INFO    ] Checking for camera pi updates...
[2026-06-22 23:58:20,449.449 INFO    ] 200
[2026-06-22 23:58:20,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:58:20,493.493 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:58:20,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:58:20,581.581 INFO    ] No camera update needed
[2026-06-22 23:58:20,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:58:20,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:58:20,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:58:20,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:58:22,641.641 INFO    ] ================================================
[2026-06-22 23:58:22,657.657 INFO    ] Launching Daemon at Mon Jun 22 23:58:22 IST 2026
[2026-06-22 23:58:22,668.668 INFO    ] ================================================
[2026-06-22 23:58:23,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:58:23
[2026-06-22 23:58:23,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:58:24,089.089 INFO    ] Initializing speech engine...
[2026-06-22 23:58:24,104.104 INFO    ] 2026-06-22 23:58:24
[2026-06-22 23:58:24,372.372 INFO    ] 2026-06-22 23:58:24
[2026-06-22 23:58:24,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:58:24,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:58:24,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:58:24,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:58:24,829.829 INFO    ] time= 22/06/2026 23:58:24
[2026-06-22 23:58:24,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:58:24,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:58:24,967.967 INFO    ] No existing commands found in stream
[2026-06-22 23:58:29,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:58:29,991.991 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-22 23:58:32,131.131 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-22 23:58:32,134.134 INFO    ] Checking for system updates...
[2026-06-22 23:58:32,176.176 INFO    ] 200
[2026-06-22 23:58:32,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:58:32,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:58:32,248.248 INFO    ] No update needed
[2026-06-22 23:58:32,251.251 INFO    ] Checking for camera pi updates...
[2026-06-22 23:58:32,287.287 INFO    ] 200
[2026-06-22 23:58:32,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:58:32,339.339 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:58:32,417.417 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:58:32,420.420 INFO    ] No camera update needed
[2026-06-22 23:58:32,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:58:32,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:58:32,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:58:32,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:58:34,478.478 INFO    ] ================================================
[2026-06-22 23:58:34,494.494 INFO    ] Launching Daemon at Mon Jun 22 23:58:34 IST 2026
[2026-06-22 23:58:34,505.505 INFO    ] ================================================
[2026-06-22 23:58:35,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:58:35
[2026-06-22 23:58:35,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:58:36,109.109 INFO    ] Initializing speech engine...
[2026-06-22 23:58:36,121.121 INFO    ] 2026-06-22 23:58:36
[2026-06-22 23:58:36,397.397 INFO    ] 2026-06-22 23:58:36
[2026-06-22 23:58:36,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:58:36,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:58:36,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:58:36,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:58:36,957.957 INFO    ] time= 22/06/2026 23:58:36
[2026-06-22 23:58:36,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:58:36,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:58:37,119.119 INFO    ] No existing commands found in stream
[2026-06-22 23:58:42,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:58:42,137.137 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-22 23:58:42,993.993 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:58:42,995.995 INFO    ] Checking for system updates...
[2026-06-22 23:58:43,018.018 INFO    ] 200
[2026-06-22 23:58:43,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:58:43,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:58:43,075.075 INFO    ] No update needed
[2026-06-22 23:58:43,078.078 INFO    ] Checking for camera pi updates...
[2026-06-22 23:58:43,111.111 INFO    ] 200
[2026-06-22 23:58:43,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:58:43,154.154 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:58:43,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:58:43,259.259 INFO    ] No camera update needed
[2026-06-22 23:58:43,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:58:43,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:58:43,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:58:43,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:58:45,316.316 INFO    ] ================================================
[2026-06-22 23:58:45,331.331 INFO    ] Launching Daemon at Mon Jun 22 23:58:45 IST 2026
[2026-06-22 23:58:45,342.342 INFO    ] ================================================
[2026-06-22 23:58:45,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:58:45
[2026-06-22 23:58:46,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:58:46,753.753 INFO    ] Initializing speech engine...
[2026-06-22 23:58:46,760.760 INFO    ] 2026-06-22 23:58:46
[2026-06-22 23:58:47,055.055 INFO    ] 2026-06-22 23:58:47
[2026-06-22 23:58:47,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:58:47,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:58:47,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:58:47,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:58:47,468.468 INFO    ] time= 22/06/2026 23:58:47
[2026-06-22 23:58:47,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:58:47,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:58:47,662.662 INFO    ] No existing commands found in stream
[2026-06-22 23:58:52,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:58:52,695.695 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-22 23:58:55,394.394 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-22 23:58:55,396.396 INFO    ] Checking for system updates...
[2026-06-22 23:58:55,417.417 INFO    ] 200
[2026-06-22 23:58:55,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:58:55,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:58:55,471.471 INFO    ] No update needed
[2026-06-22 23:58:55,474.474 INFO    ] Checking for camera pi updates...
[2026-06-22 23:58:55,507.507 INFO    ] 200
[2026-06-22 23:58:55,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:58:55,549.549 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:58:55,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:58:55,624.624 INFO    ] No camera update needed
[2026-06-22 23:58:55,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:58:55,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:58:55,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:58:55,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:58:57,679.679 INFO    ] ================================================
[2026-06-22 23:58:57,694.694 INFO    ] Launching Daemon at Mon Jun 22 23:58:57 IST 2026
[2026-06-22 23:58:57,706.706 INFO    ] ================================================
[2026-06-22 23:58:58,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:58:58
[2026-06-22 23:58:58,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:58:59,220.220 INFO    ] Initializing speech engine...
[2026-06-22 23:58:59,234.234 INFO    ] 2026-06-22 23:58:59
[2026-06-22 23:58:59,516.516 INFO    ] 2026-06-22 23:58:59
[2026-06-22 23:58:59,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:58:59,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:58:59,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:59:00,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:59:00,060.060 INFO    ] time= 22/06/2026 23:59:00
[2026-06-22 23:59:00,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:59:00,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:59:00,232.232 INFO    ] No existing commands found in stream
[2026-06-22 23:59:05,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:59:05,271.271 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-22 23:59:07,645.645 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-22 23:59:07,648.648 INFO    ] Checking for system updates...
[2026-06-22 23:59:07,690.690 INFO    ] 200
[2026-06-22 23:59:07,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:59:07,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:59:07,749.749 INFO    ] No update needed
[2026-06-22 23:59:07,752.752 INFO    ] Checking for camera pi updates...
[2026-06-22 23:59:07,788.788 INFO    ] 200
[2026-06-22 23:59:07,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:59:07,837.837 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:59:07,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-22 23:59:07,933.933 INFO    ] No camera update needed
[2026-06-22 23:59:07,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:59:07,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:59:07,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:59:07,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:59:09,992.992 INFO    ] ================================================
[2026-06-22 23:59:10,008.008 INFO    ] Launching Daemon at Mon Jun 22 23:59:10 IST 2026
[2026-06-22 23:59:10,019.019 INFO    ] ================================================
[2026-06-22 23:59:10,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:59:10
[2026-06-22 23:59:11,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:59:11,645.645 INFO    ] Initializing speech engine...
[2026-06-22 23:59:11,659.659 INFO    ] 2026-06-22 23:59:11
[2026-06-22 23:59:11,945.945 INFO    ] 2026-06-22 23:59:11
[2026-06-22 23:59:12,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:59:12,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:59:12,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:59:12,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:59:12,475.475 INFO    ] time= 22/06/2026 23:59:12
[2026-06-22 23:59:12,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:59:12,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:59:12,630.630 INFO    ] No existing commands found in stream
[2026-06-22 23:59:17,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:59:17,673.673 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-22 23:59:20,616.616 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:59:20,617.617 INFO    ] Checking for system updates...
[2026-06-22 23:59:20,638.638 INFO    ] 200
[2026-06-22 23:59:20,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:59:20,691.691 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:59:20,693.693 INFO    ] No update needed
[2026-06-22 23:59:20,696.696 INFO    ] Checking for camera pi updates...
[2026-06-22 23:59:20,731.731 INFO    ] 200
[2026-06-22 23:59:20,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:59:20,775.775 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:59:20,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:59:20,970.970 INFO    ] No camera update needed
[2026-06-22 23:59:20,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:59:20,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:59:20,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:59:20,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:59:23,029.029 INFO    ] ================================================
[2026-06-22 23:59:23,045.045 INFO    ] Launching Daemon at Mon Jun 22 23:59:23 IST 2026
[2026-06-22 23:59:23,055.055 INFO    ] ================================================
[2026-06-22 23:59:23,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:59:23
[2026-06-22 23:59:24,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:59:24,408.408 INFO    ] Initializing speech engine...
[2026-06-22 23:59:24,417.417 INFO    ] 2026-06-22 23:59:24
[2026-06-22 23:59:24,662.662 INFO    ] 2026-06-22 23:59:24
[2026-06-22 23:59:24,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:59:24,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:59:24,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:59:25,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:59:25,148.148 INFO    ] time= 22/06/2026 23:59:25
[2026-06-22 23:59:25,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:59:25,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:59:25,351.351 INFO    ] No existing commands found in stream
[2026-06-22 23:59:30,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:59:30,381.381 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-22 23:59:32,280.280 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-22 23:59:32,283.283 INFO    ] Checking for system updates...
[2026-06-22 23:59:32,320.320 INFO    ] 200
[2026-06-22 23:59:32,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:59:32,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:59:32,381.381 INFO    ] No update needed
[2026-06-22 23:59:32,384.384 INFO    ] Checking for camera pi updates...
[2026-06-22 23:59:32,420.420 INFO    ] 200
[2026-06-22 23:59:32,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:59:32,468.468 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:59:32,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:59:32,530.530 INFO    ] No camera update needed
[2026-06-22 23:59:32,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:59:32,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:59:32,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:59:32,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:59:34,590.590 INFO    ] ================================================
[2026-06-22 23:59:34,605.605 INFO    ] Launching Daemon at Mon Jun 22 23:59:34 IST 2026
[2026-06-22 23:59:34,616.616 INFO    ] ================================================
[2026-06-22 23:59:35,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:59:35
[2026-06-22 23:59:35,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:59:36,036.036 INFO    ] Initializing speech engine...
[2026-06-22 23:59:36,045.045 INFO    ] 2026-06-22 23:59:36
[2026-06-22 23:59:36,290.290 INFO    ] 2026-06-22 23:59:36
[2026-06-22 23:59:36,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:59:36,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:59:36,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:59:36,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:59:36,659.659 INFO    ] time= 22/06/2026 23:59:36
[2026-06-22 23:59:36,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:59:36,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:59:36,847.847 INFO    ] No existing commands found in stream
[2026-06-22 23:59:41,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:59:41,868.868 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-22 23:59:42,576.576 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-22 23:59:42,578.578 INFO    ] Checking for system updates...
[2026-06-22 23:59:42,618.618 INFO    ] 200
[2026-06-22 23:59:42,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:59:42,675.675 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:59:42,678.678 INFO    ] No update needed
[2026-06-22 23:59:42,680.680 INFO    ] Checking for camera pi updates...
[2026-06-22 23:59:42,714.714 INFO    ] 200
[2026-06-22 23:59:42,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:59:42,757.757 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:59:42,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:59:42,847.847 INFO    ] No camera update needed
[2026-06-22 23:59:42,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:59:42,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:59:42,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:59:42,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:59:44,904.904 INFO    ] ================================================
[2026-06-22 23:59:44,919.919 INFO    ] Launching Daemon at Mon Jun 22 23:59:44 IST 2026
[2026-06-22 23:59:44,929.929 INFO    ] ================================================
[2026-06-22 23:59:45,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:59:45
[2026-06-22 23:59:46,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-22 23:59:46,399.399 INFO    ] Initializing speech engine...
[2026-06-22 23:59:46,408.408 INFO    ] 2026-06-22 23:59:46
[2026-06-22 23:59:46,656.656 INFO    ] 2026-06-22 23:59:46
[2026-06-22 23:59:46,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-22 23:59:46,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-22 23:59:46,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-22 23:59:47,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-22 23:59:47,134.134 INFO    ] time= 22/06/2026 23:59:47
[2026-06-22 23:59:47,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM06202507
[2026-06-22 23:59:47,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-22 23:59:47,358.358 INFO    ] No existing commands found in stream
[2026-06-22 23:59:52,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-22 23:59:52,382.382 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-22 23:59:56,820.820 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-22 23:59:56,822.822 INFO    ] Checking for system updates...
[2026-06-22 23:59:56,859.859 INFO    ] 200
[2026-06-22 23:59:56,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:59:56,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:59:56,919.919 INFO    ] No update needed
[2026-06-22 23:59:56,922.922 INFO    ] Checking for camera pi updates...
[2026-06-22 23:59:56,957.957 INFO    ] 200
[2026-06-22 23:59:56,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-22 23:59:57,001.001 INFO    ] Camera IP: TMCAM06202507.local
[2026-06-22 23:59:57,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-22 23:59:57,089.089 INFO    ] No camera update needed
[2026-06-22 23:59:57,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-22 23:59:57,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-22 23:59:57,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-22 23:59:57,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-22 23:59:59,147.147 INFO    ] ================================================
[2026-06-22 23:59:59,163.163 INFO    ] Launching Daemon at Mon Jun 22 23:59:59 IST 2026
[2026-06-22 23:59:59,173.173 INFO    ] ================================================
[2026-06-22 23:59:59,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-22 23:59:59
